diff --git a/packages/synapse-react-client/.storybook/main.mts b/packages/synapse-react-client/.storybook/main.mts index a3aafa856f..47ad4a21c6 100644 --- a/packages/synapse-react-client/.storybook/main.mts +++ b/packages/synapse-react-client/.storybook/main.mts @@ -25,27 +25,27 @@ const config: StorybookConfig = { }, }, - typescript: { - // These options are from https://storybook.js.org/blog/material-ui-in-storybook/ - check: false, - checkOptions: {}, - reactDocgen: 'react-docgen-typescript', - reactDocgenTypescriptOptions: { - // @ts-ignore - speeds up storybook build time - allowSyntheticDefaultImports: false, - // speeds up storybook build time - esModuleInterop: false, - // makes union prop types like variant and size appear as select controls - shouldExtractLiteralValuesFromEnum: true, - // makes string and boolean types that can be undefined appear as inputs and switches - shouldRemoveUndefinedFromOptional: true, - // Filter out third-party props from node_modules except @mui packages - propFilter: prop => - prop.parent - ? !/node_modules\/(?!@mui)/.test(prop.parent.fileName) - : true, - }, - }, + // typescript: { + // // These options are from https://storybook.js.org/blog/material-ui-in-storybook/ + // check: false, + // checkOptions: {}, + // reactDocgen: 'react-docgen-typescript', + // reactDocgenTypescriptOptions: { + // // @ts-ignore - speeds up storybook build time + // allowSyntheticDefaultImports: false, + // // speeds up storybook build time + // esModuleInterop: false, + // // makes union prop types like variant and size appear as select controls + // shouldExtractLiteralValuesFromEnum: true, + // // makes string and boolean types that can be undefined appear as inputs and switches + // shouldRemoveUndefinedFromOptional: true, + // // Filter out third-party props from node_modules except @mui packages + // propFilter: prop => + // prop.parent + // ? !/node_modules\/(?!@mui)/.test(prop.parent.fileName) + // : true, + // }, + // }, staticDirs: ['../public'], diff --git a/packages/synapse-react-client/.storybook/preview.tsx b/packages/synapse-react-client/.storybook/preview.tsx index a11015fdfa..2dfee7203d 100644 --- a/packages/synapse-react-client/.storybook/preview.tsx +++ b/packages/synapse-react-client/.storybook/preview.tsx @@ -46,9 +46,9 @@ if (process.env.NODE_ENV === 'development') { // whyDidYouRender is a dev/debugging tool that logs to the console with information about why a component rendered // It won't track most components by default. Follow these instructions to track a component // https://github.com/welldone-software/why-did-you-render#tracking-components - whyDidYouRender(React, { - trackAllPureComponents: true, - }) + // whyDidYouRender(React, { + // trackAllPureComponents: true, + // }) } export const parameters = { diff --git a/packages/synapse-react-client/package.json b/packages/synapse-react-client/package.json index e08fa906cd..84791599a7 100644 --- a/packages/synapse-react-client/package.json +++ b/packages/synapse-react-client/package.json @@ -60,6 +60,7 @@ "@tanstack/react-query": "5.22.2", "@tanstack/react-query-devtools": "5.24.0", "@tanstack/react-table": "^8.20.5", + "@tanstack/react-virtual": "^3.11.1", "@upsetjs/react": "^1.11.0", "animate.css": "^4.1.1", "bootstrap": "^4.6.2", @@ -147,18 +148,18 @@ "@jest/reporters": "^29.7.0", "@juggle/resize-observer": "^3.4.0", "@open-draft/deferred-promise": "^2.2.0", - "@storybook/addon-actions": "^8.2.4", - "@storybook/addon-designs": "^8.0.3", - "@storybook/addon-essentials": "^8.2.4", - "@storybook/addon-interactions": "^8.2.4", - "@storybook/addon-links": "^8.2.4", - "@storybook/addon-themes": "^8.2.4", - "@storybook/manager-api": "^8.2.4", - "@storybook/react": "^8.2.4", - "@storybook/react-vite": "^8.2.4", - "@storybook/test": "^8.2.4", + "@storybook/addon-actions": "^8.4.7", + "@storybook/addon-designs": "^8.0.4", + "@storybook/addon-essentials": "^8.4.7", + "@storybook/addon-interactions": "^8.4.7", + "@storybook/addon-links": "^8.4.7", + "@storybook/addon-themes": "^8.4.7", + "@storybook/manager-api": "^8.4.7", + "@storybook/react": "^8.4.7", + "@storybook/react-vite": "^8.4.7", + "@storybook/test": "^8.4.7", "@storybook/testing-library": "^0.2.2", - "@storybook/theming": "^8.2.4", + "@storybook/theming": "^8.4.7", "@svgr/plugin-jsx": "^8.1.0", "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.6.3", @@ -225,7 +226,7 @@ "react-dom": "^18.2.0", "react-select-event": "^5.5.1", "react-test-renderer": "^18.2.0", - "storybook": "^8.2.4", + "storybook": "^8.4.7", "stream-browserify": "^3.0.0", "stream-http": "^3.2.0", "timers-browserify": "^2.0.12", diff --git a/packages/synapse-react-client/src/components/ChallengeDataDownload/Renderers.tsx b/packages/synapse-react-client/src/components/ChallengeDataDownload/Renderers.tsx index b091d358f6..05cb219758 100644 --- a/packages/synapse-react-client/src/components/ChallengeDataDownload/Renderers.tsx +++ b/packages/synapse-react-client/src/components/ChallengeDataDownload/Renderers.tsx @@ -1,22 +1,23 @@ -import React from 'react' -import { CellRendererProps } from './types' -import { calculateFriendlyFileSize } from '../../utils/functions/calculateFriendlyFileSize' -import { EntityIdAndVersionNumber } from '../EntityFinder/details/view/DetailsViewTableRenderers' import { Skeleton } from '@mui/material' -import { useGetEntityBundle } from '../../synapse-queries' import { FileHandle } from '@sage-bionetworks/synapse-types' +import { CellContext } from '@tanstack/react-table' +import React from 'react' +import { useGetEntityBundle } from '../../synapse-queries' +import { calculateFriendlyFileSize } from '../../utils/functions/calculateFriendlyFileSize' import FileEntityDirectDownload from '../DirectDownload/FileEntityDirectDownload' +import { EntityFinderTableViewRowData } from '../EntityFinder/details/view/DetailsView' export type FileHandleWithPreview = FileHandle & { isPreview?: boolean } -export function SizeRenderer( - props: CellRendererProps, +export function SizeRenderer( + props: CellContext, ) { + const { row } = props const { data: bundle, isLoading } = useGetEntityBundle( - props.rowData.entityId, - props.rowData.versionNumber, + row.original.entityId, + row.original.versionNumber, ) if (isLoading) { @@ -31,13 +32,14 @@ export function SizeRenderer( return {friendlySize} } -export function DownloadRenderer( - props: CellRendererProps, +export function DownloadRenderer( + props: CellContext, ) { + const { row } = props return ( ) diff --git a/packages/synapse-react-client/src/components/EntityFinder/details/view/DetailsView.tsx b/packages/synapse-react-client/src/components/EntityFinder/details/view/DetailsView.tsx index 3b83a88c38..1b4d4889e5 100644 --- a/packages/synapse-react-client/src/components/EntityFinder/details/view/DetailsView.tsx +++ b/packages/synapse-react-client/src/components/EntityFinder/details/view/DetailsView.tsx @@ -1,50 +1,50 @@ -import BaseTable, { - AutoResizer, - Column, - SortOrder, -} from '@sage-bionetworks/react-base-table' -import React, { useCallback, useEffect, useMemo, useState } from 'react' -import { useQueryClient } from '@tanstack/react-query' -import { - getEntityTypeFromHeader, - isContainerType, - isVersionableEntityType, -} from '../../../../utils/functions/EntityTypeUtils' -import { getEntityVersions } from '../../../../synapse-client/SynapseClient' -import { useSynapseContext } from '../../../../utils/context/SynapseContext' +import { Checkbox, Tooltip } from '@mui/material' +import { SortOrder } from '@sage-bionetworks/react-base-table' import { Direction, EntityChildrenRequest, EntityHeader, EntityType, + Reference, SortBy, } from '@sage-bionetworks/synapse-types' +import { useQueryClient } from '@tanstack/react-query' +import { + CellContext, + createColumnHelper, + getCoreRowModel, + Table, + useReactTable, +} from '@tanstack/react-table' +import { useVirtualizer } from '@tanstack/react-virtual' +import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react' +import { getEntityVersions } from '../../../../synapse-client/SynapseClient' +import { useSynapseContext } from '../../../../utils/context/SynapseContext' +import { + getEntityTypeFromHeader, + isContainerType, + isVersionableEntityType, +} from '../../../../utils/functions/EntityTypeUtils' +import { SizeRenderer } from '../../../ChallengeDataDownload/Renderers' import { BlockingLoader } from '../../../LoadingScreen/LoadingScreen' +import ColumnHeader from '../../../TanStackTable/ColumnHeader' +import StyledVirtualTanStackTable from '../../../TanStackTable/StyledVirtualTanStackTable' import { EntityFinderHeader } from '../../EntityFinderHeader' +import { EntitySelectionMapType } from '../../useEntitySelection' import { VersionSelectionType } from '../../VersionSelectionType' import { EntityDetailsListSharedProps } from '../EntityDetailsList' import { AddFileToDownloadListRenderer, BadgeIconsRenderer, - CellRendererProps, CreatedOnRenderer, - CustomSortIndicator, DetailsViewCheckboxRenderer, DetailsViewVersionRenderer, - EmptyRenderer, - EntityIdAndVersionNumber, - LoadingRenderer, MD5Renderer, ModifiedByRenderer, ModifiedOnRenderer, TypeIconRenderer, } from './DetailsViewTableRenderers' import { VersionColumnHeader } from './VersionColumnHeader' -import { Checkbox, Tooltip } from '@mui/material' -import { SizeRenderer } from '../../../ChallengeDataDownload/Renderers' - -const MIN_TABLE_WIDTH = 1200 -const ROW_HEIGHT = 46 export type DetailsViewProps = EntityDetailsListSharedProps & { entities: EntityFinderHeader[] @@ -78,6 +78,232 @@ export type EntityFinderTableViewRowData = EntityFinderHeader & { currentSelectedVersion?: number } +const columnHelper = createColumnHelper() + +function NameRenderer(props: { + context: CellContext + setCurrentContainer?: (containerId: string) => void +}) { + const { context, setCurrentContainer } = props + const { row, getValue } = context + const rowName = getValue() + if (setCurrentContainer && isContainerType(row.original.entityType)) { + return ( + { + e.stopPropagation() + setCurrentContainer(row.original.id) + }} + > + + {rowName} + + + ) + } else { + return ( + + {rowName} + + ) + } +} +// +// const DetailsViewTr: TableBodySlots['Tr'] = +// props => { +// const { row } = props +// return ( +// +// ) +// } + +function SelectAllCheckboxRenderer(props: { + isVisible: boolean + disabled: boolean + checked: boolean + onSelectAll: () => void +}) { + const { isVisible, disabled, checked, onSelectAll } = props + if (!isVisible) { + return null + } + + return ( + { + if (!disabled) { + onSelectAll() + } + }} + /> + ) +} + +function getColumns(opts: { + setCurrentContainer?: (containerId: string) => void + isSelectAllVisible: boolean + isSelectAllDisabled: boolean + isSelectAllChecked: boolean + onSelectAll: () => void + versionSelection: VersionSelectionType + toggleSelection: (entity: Reference | Reference[]) => void +}) { + const { + setCurrentContainer, + isSelectAllVisible, + isSelectAllDisabled, + isSelectAllChecked, + onSelectAll, + versionSelection, + toggleSelection, + } = opts + return [ + columnHelper.display({ + id: 'selected', + minSize: 50, + maxSize: 50, + size: 50, + header: () => ( + + ), + cell: DetailsViewCheckboxRenderer, + }), + + columnHelper.accessor('entityType', { + minSize: 45, + maxSize: 45, + size: 45, + header: () => null, + enableResizing: false, + cell: TypeIconRenderer, + meta: { + textAlign: 'center', + }, + }), + columnHelper.accessor('name', { + size: 800, + // sortable: sort != null, + // resizable: true, + header: props => , + cell: context => ( + + ), + enableColumnFilter: false, + }), + columnHelper.display({ + id: 'badge', + minSize: 75, + maxSize: 75, + size: 75, + header: () => null, + cell: BadgeIconsRenderer, + }), + columnHelper.accessor('id', { + size: 130, + header: props => , + minSize: 130, + enableColumnFilter: false, + }), + columnHelper.display({ + id: 'version', + minSize: 150, + size: 500, + header: () => , + cell: context => ( + + ), + }), + columnHelper.accessor('createdOn', { + header: props => , + size: 220, + minSize: 170, + cell: CreatedOnRenderer, + enableColumnFilter: false, + }), + columnHelper.accessor('modifiedOn', { + header: props => , + size: 220, + minSize: 170, + enableColumnFilter: false, + cell: ModifiedOnRenderer, + }), + columnHelper.accessor('modifiedBy', { + header: props => , + size: 500, + enableResizing: true, + cell: ModifiedByRenderer, + enableColumnFilter: false, + }), + columnHelper.display({ + id: 'SIZE', + header: props => , + size: 200, + minSize: 85, + enableSorting: false, + enableResizing: true, + cell: SizeRenderer, + }), + columnHelper.display({ + id: 'MD5', + header: props => , + size: 200, + enableSorting: false, + enableResizing: true, + cell: MD5Renderer, + }), + columnHelper.display({ + id: 'addToDownloadCart', + header: () => null, + size: 40, + minSize: 40, + enableSorting: false, + enableResizing: true, + cell: AddFileToDownloadListRenderer, + }), + ] +} + +type DetailsViewRowAppearance = 'hidden' | 'disabled' | 'selected' | 'default' + +const determineRowAppearance = (args: { + visibleTypes: EntityType[] + selectableTypes: EntityType[] + selected: EntitySelectionMapType + entity: EntityFinderHeader +}): DetailsViewRowAppearance => { + const { visibleTypes, selectableTypes, selected, entity } = args + if (!visibleTypes.includes(getEntityTypeFromHeader(entity))) { + return 'hidden' + } else if (!selectableTypes.includes(getEntityTypeFromHeader(entity))) { + return 'disabled' + } else if (selected.has(entity.id)) { + return 'selected' + } else { + return 'default' + } +} + /** * Displays a list of entities in a table. * @@ -114,7 +340,6 @@ export const DetailsView: React.FunctionComponent = ({ const showSelectColumn = selectColumnType !== 'none' - const [shouldSelectAll, setShouldSelectAll] = useState(false) const [showLoadingScreen, setShowLoadingScreen] = useState(false) const cancelQuery = () => { @@ -127,238 +352,170 @@ export const DetailsView: React.FunctionComponent = ({ ), }) setShowLoadingScreen(false) - setShouldSelectAll(false) } - type DetailsViewRowAppearance = 'hidden' | 'disabled' | 'selected' | 'default' - - const determineRowAppearance = ( - entity: EntityFinderHeader, - ): DetailsViewRowAppearance => { - if (!visibleTypes.includes(getEntityTypeFromHeader(entity))) { - return 'hidden' - } else if (!selectableTypes.includes(getEntityTypeFromHeader(entity))) { - return 'disabled' - } else if (selected.has(entity.id)) { - return 'selected' - } else { - return 'default' + + const fetchAllPages = useCallback(async () => { + while (hasNextPage && fetchNextPage) { + setShowLoadingScreen(true) + if (!isFetchingNextPage) { + await fetchNextPage() + } else { + // If we're already fetching, wait for it to finish + await new Promise(resolve => setTimeout(resolve, 100)) + } } - } + }, [fetchNextPage, hasNextPage, isFetchingNextPage]) - useEffect(() => { - async function handleSelectAll() { - if (shouldSelectAll) { - if (hasNextPage && fetchNextPage) { - // Show the loading screen since we must fetch data (potentially a lot) to finish the task - setShowLoadingScreen(true) - if (!isFetchingNextPage) { - fetchNextPage() - } - } else { - if (selectAllIsChecked) { - // All of the items are selected, so we will deselect all - toggleSelection( - entities - .filter(e => { - // Collect just entities that are selected - // An entity may be in the list and unselected because it isn't of a selectable type - return selected.has(e.id) - }) - .map(e => selected.get(e.id)!), - ) - } else { - // Not all of the items are selected, so we will select all - toggleSelection( - await Promise.all( - entities - .filter(e => { - // must filter just selectable types or else any entities of unselectable types will get selected - const type = getEntityTypeFromHeader(e) - // also exclude already-selected entities, since we don't want to toggle those - return ( - !selected.has(e.id) && - selectableTypes.includes(type) && - visibleTypes.includes(type) - ) + const handleSelectAll = useCallback(async () => { + try { + await fetchAllPages() + + if (selectAllIsChecked) { + // All the items are selected, so we will deselect all + const entitiesToToggle = entities + .filter(e => { + // Collect just entities that are selected + // An entity may be in the list and unselected because it isn't of a selectable type + return selected.has(e.id) + }) + .map(e => selected.get(e.id)!) + + toggleSelection(entitiesToToggle) + } else { + // Not all the items are selected, so we will select all + const entitiesToToggle = await Promise.all( + entities + .filter(e => { + // must filter just selectable types or else any entities of unselectable types will get selected + const type = getEntityTypeFromHeader(e) + // also exclude already-selected entities, since we don't want to toggle those + return ( + !selected.has(e.id) && + selectableTypes.includes(type) && + visibleTypes.includes(type) + ) + }) + .map(async e => { + let latestVersion: number | undefined + if ( + versionSelection === VersionSelectionType.REQUIRED && + isVersionableEntityType(getEntityTypeFromHeader(e)) + ) { + // If VersionSelectionType.REQUIRED, then we need to supply a version with the entity. + // We may already have the version from the header: + if (Object.prototype.hasOwnProperty.call(e, 'versionNumber')) { + latestVersion = (e as EntityHeader).versionNumber + } + if (!latestVersion) { + // Failsafe if we didn't get the version in the header. This is rare/unlikely, since the only cases we're sure we don't get versions are: + // - ProjectHeaders (which are versionless) + // - Search Results (for which we don't support Select All) + // For large lists, there's a good chance for this to trigger throttling. + + // Show the loading screen since we must fetch data (potentially a lot) to finish the task + setShowLoadingScreen(true) + + const versionsQueryOffset = 0 + const versionsQueryLimit = 1 + const versions = await queryClient.fetchQuery({ + queryKey: + queryClientKeyFactory.getPaginatedEntityVersionsQueryKey( + e.id, + versionsQueryLimit, + versionsQueryOffset, + ), + queryFn: () => + getEntityVersions( + e.id, + accessToken, + versionsQueryOffset, + versionsQueryLimit, + ), }) - .map(async e => { - let latestVersion: number | undefined - if ( - versionSelection === VersionSelectionType.REQUIRED && - isVersionableEntityType(getEntityTypeFromHeader(e)) - ) { - // If VersionSelectionType.REQUIRED, then we need to supply a version with the entity. - // We may already have the version from the header: - if ( - Object.prototype.hasOwnProperty.call(e, 'versionNumber') - ) { - latestVersion = (e as EntityHeader).versionNumber - } - if (!latestVersion) { - // Failsafe if we didn't get the version in the header. This is rare/unlikely, since the only cases we're sure we don't get versions are: - // - ProjectHeaders (which are versionless) - // - Search Results (for which we don't support Select All) - // For large lists, there's a good chance for this to trigger throttling. - - // Show the loading screen since we must fetch data (potentially a lot) to finish the task - setShowLoadingScreen(true) - - const versionsQueryOffset = 0 - const versionsQueryLimit = 1 - const versions = await queryClient.fetchQuery({ - queryKey: - queryClientKeyFactory.getPaginatedEntityVersionsQueryKey( - e.id, - versionsQueryLimit, - versionsQueryOffset, - ), - queryFn: () => - getEntityVersions( - e.id, - accessToken, - versionsQueryOffset, - versionsQueryLimit, - ), - }) - // we pick the first version in the list because it is the most recent - latestVersion = versions.results[0]?.versionNumber - } - } - return { - targetId: e.id, - targetVersionNumber: latestVersion, - } - }), - ), - ) - } - setShouldSelectAll(false) - setShowLoadingScreen(false) - } + // we pick the first version in the list because it is the most recent + latestVersion = versions.results[0]?.versionNumber + } + } + return { + targetId: e.id, + targetVersionNumber: latestVersion, + } + }), + ) + toggleSelection(entitiesToToggle) } + } finally { + setShowLoadingScreen(false) } - handleSelectAll() }, [ accessToken, entities, - fetchNextPage, - hasNextPage, - versionSelection, + fetchAllPages, queryClient, - isFetchingNextPage, + queryClientKeyFactory, selectAllIsChecked, selectableTypes, selected, - shouldSelectAll, toggleSelection, + versionSelection, visibleTypes, ]) - const tableData = entities.reduce( - (entities: EntityFinderTableViewRowData[], entity) => { - const appearance = determineRowAppearance(entity) - if (appearance !== 'hidden') { - // only include entities that should not be hidden - const entityType = getEntityTypeFromHeader(entity) - - const currentSelectedVersion = selected.get( - entity.id, - )?.targetVersionNumber - let versionNumber: number | undefined = undefined - if ('versionNumber' in entity) { - if (currentSelectedVersion != null) { - // if a version is selected, the row should show that version's data - versionNumber = currentSelectedVersion - } else if (versionSelection === VersionSelectionType.REQUIRED) { - // if a version is not selected, but version selection is required, the row should show the latest version's data - versionNumber = entity.versionNumber + const tableData = useMemo( + () => + entities.reduce((entities: EntityFinderTableViewRowData[], entity) => { + const appearance = determineRowAppearance({ + visibleTypes, + selectableTypes, + selected, + entity, + }) + if (appearance !== 'hidden') { + // only include entities that should not be hidden + const entityType = getEntityTypeFromHeader(entity) + + const currentSelectedVersion = selected.get( + entity.id, + )?.targetVersionNumber + let versionNumber: number | undefined = undefined + if ('versionNumber' in entity) { + if (currentSelectedVersion != null) { + // if a version is selected, the row should show that version's data + versionNumber = currentSelectedVersion + } else if (versionSelection === VersionSelectionType.REQUIRED) { + // if a version is not selected, but version selection is required, the row should show the latest version's data + versionNumber = entity.versionNumber + } + // otherwise, show the current version's data (versionNumber is undefined) } - // otherwise, show the current version's data (versionNumber is undefined) - } - entities.push({ - ...entity, - entityId: entity.id, - versionNumber: versionNumber, - entityType: entityType, - isSelected: appearance === 'selected', - isDisabled: appearance === 'disabled', - isVersionableEntity: isVersionableEntityType(entityType), - currentSelectedVersion: currentSelectedVersion, - }) - } - return entities - }, - [], + entities.push({ + ...entity, + entityId: entity.id, + versionNumber: versionNumber, + entityType: entityType, + isSelected: appearance === 'selected', + isDisabled: appearance === 'disabled', + isVersionableEntity: isVersionableEntityType(entityType), + currentSelectedVersion: currentSelectedVersion, + }) + } + return entities + }, []), + [entities, selectableTypes, selected, versionSelection, visibleTypes], ) - const SelectAllCheckboxRenderer = useMemo(() => { - // Enabled if there's at least one visible & selectable entity, OR there's a page we haven't fetched - const isEnabled = - hasNextPage || - entities.filter( - e => - selectableTypes.includes(getEntityTypeFromHeader(e)) && - visibleTypes.includes(getEntityTypeFromHeader(e)), - ).length > 0 - return ( - enableSelectAll && ( -
{ - if (isEnabled) { - setShouldSelectAll(true) - } - }} - > - { - // no-op - }} - /> -
- ) - ) - }, [ - enableSelectAll, - entities, - hasNextPage, - selectAllIsChecked, - selectableTypes, - visibleTypes, - ]) + const isSelectAllVisible = enableSelectAll - const NameRenderer = useCallback( - (props: CellRendererProps) => { - const rowName = props.rowData.name - if (setCurrentContainer && isContainerType(props.rowData.entityType)) { - return ( - { - e.stopPropagation() - setCurrentContainer(props.rowData.id) - }} - > - - {rowName} - - - ) - } else { - return ( - - {rowName} - - ) - } - }, - [setCurrentContainer], + // Enabled if there's at least one visible & selectable entity, OR there's a page we haven't fetched + // TODO: can I move this into table state? + const isSelectAllDisabled = !( + hasNextPage || + entities.filter( + e => + selectableTypes.includes(getEntityTypeFromHeader(e)) && + visibleTypes.includes(getEntityTypeFromHeader(e)), + ).length > 0 ) const sortState: Record = {} @@ -366,8 +523,119 @@ export const DetailsView: React.FunctionComponent = ({ sortState[sort.sortBy] = sort.sortDirection.toLowerCase() as SortOrder } + const columns = useMemo( + () => + getColumns({ + setCurrentContainer, + isSelectAllVisible: isSelectAllVisible, + isSelectAllDisabled: isSelectAllDisabled, + isSelectAllChecked: selectAllIsChecked, + onSelectAll: () => { + void handleSelectAll() + }, + versionSelection, + toggleSelection, + }), + [ + handleSelectAll, + isSelectAllDisabled, + isSelectAllVisible, + selectAllIsChecked, + setCurrentContainer, + toggleSelection, + versionSelection, + ], + ) + + const table: Table = + useReactTable({ + data: tableData, + columns, + // state: { + // sorting: tableSortState, + // }, + // onSortingChange: setTableSortState, + // getRowId: row => row.id, + getCoreRowModel: getCoreRowModel(), + // columnResizeMode: 'onChange', + // manualSorting: true, + // enableMultiSort: false, + // enableFilters: false, + state: { + columnVisibility: { + selected: showSelectColumn, + version: versionSelection !== VersionSelectionType.DISALLOWED, + SIZE: visibleTypes.includes(EntityType.FILE), + MD5: visibleTypes.includes(EntityType.FILE), + addToDownloadCart: visibleTypes.includes(EntityType.FILE), + }, + }, + }) + + const { rows } = table.getRowModel() + const tableContainerRef = useRef(null) + + const rowVirtualizer = useVirtualizer({ + count: rows.length, + estimateSize: () => 40, //estimate row height for accurate scrollbar dragging + getScrollElement: () => tableContainerRef.current, + //measure dynamic row height, except in firefox because it measures table border height incorrectly + measureElement: + typeof window !== 'undefined' && + navigator.userAgent.indexOf('Firefox') === -1 + ? element => element?.getBoundingClientRect().height + : undefined, + overscan: 5, + }) + + function onRowClick(rowData: EntityFinderTableViewRowData) { + const { id, isDisabled, isVersionableEntity } = rowData + let { currentSelectedVersion } = rowData + if (!isDisabled) { + if ( + isVersionableEntity && + versionSelection === VersionSelectionType.REQUIRED && + currentSelectedVersion == null && + Object.prototype.hasOwnProperty.call(rowData, 'versionNumber') + ) { + currentSelectedVersion = rowData.versionNumber + // Note that here we aren't handling the case where the header doesn't have a version, e.g. a search result + // That case is actually handled by the VersionRenderer, which has an effect that will toggle the selection after data is fetched. + } + + toggleSelection({ + targetId: id, + targetVersionNumber: currentSelectedVersion, + }) + } + } + + //called on scroll and possibly on mount to fetch more data as the user scrolls and reaches bottom of table + const fetchMoreOnBottomReached = useCallback( + (containerRefElement?: HTMLDivElement | null) => { + if (containerRefElement) { + const { scrollHeight, scrollTop, clientHeight } = containerRefElement + //once the user has scrolled within 500px of the bottom of the table, fetch more data if we can + if ( + scrollHeight - scrollTop - clientHeight < 500 && + !isFetchingNextPage && + hasNextPage && + fetchNextPage + ) { + void fetchNextPage() + } + } + }, + [fetchNextPage, isFetchingNextPage, hasNextPage], + ) + + //a check on mount and after a fetch to see if the table is already scrolled to the bottom and immediately needs to fetch more data + React.useEffect(() => { + fetchMoreOnBottomReached(tableContainerRef.current) + }, [entities, fetchMoreOnBottomReached]) + return ( -
+
= ({ headlineText={'Fetching selected items'} onCancel={cancelQuery} /> - - {({ height, width }: { height: number; width: number }) => ( - - classPrefix="DetailsViewTable" - data={tableData} - height={height} - width={width > MIN_TABLE_WIDTH ? width : MIN_TABLE_WIDTH} - rowHeight={ROW_HEIGHT} - overscanRowCount={5} - // Apply classes to the rows for styling - rowClassName={({ rowIndex }: { rowIndex: number }) => { - let className = 'EntityFinderDetailsViewRow' - if (rowIndex % 2 === 0) { - // Apply a class based on index so we can get alternating colors - // We don't use CSSs nth-child because the rows are virtualized, so an even child might change to odd on-the-fly - className += ' isEven' - } - return className - }} - // Apply aria roles to the rows for a11y/styling - rowProps={({ rowData }) => { - return { - 'aria-selected': rowData.isSelected, - 'aria-disabled': rowData.isDisabled, - } - }} - headerCellProps={{ - role: 'columnheader', - }} - // Sorting: - sortState={sortState} - components={{ SortIndicator: CustomSortIndicator }} - onColumnSort={({ key, order }) => { - if (sort && setSort) { - setSort( - key as SortBy, - order === 'asc' ? Direction.ASC : Direction.DESC, - ) - } - }} - rowEventHandlers={{ - onClick: ({ rowData }) => { - const { id, isDisabled, isVersionableEntity } = rowData - let { currentSelectedVersion } = rowData - if (!isDisabled) { - if ( - isVersionableEntity && - versionSelection === VersionSelectionType.REQUIRED && - currentSelectedVersion == null && - Object.prototype.hasOwnProperty.call( - rowData, - 'versionNumber', - ) - ) { - currentSelectedVersion = (rowData as EntityHeader) - .versionNumber - // Note that here we aren't handling the case where the header doesn't have a version, e.g. a search result - // That case is actually handled by the VersionRenderer, which has an effect that will toggle the selection after data is fetched. - } - - toggleSelection({ - targetId: id, - targetVersionNumber: currentSelectedVersion, - }) - } + + styledTableContainerProps={{ + className: 'DetailsViewTable', + ref: tableContainerRef, + height: '100%', + striped: false, + onScroll: e => fetchMoreOnBottomReached(e.target as HTMLDivElement), + }} + table={table} + rowVirtualizer={rowVirtualizer} + slotProps={{ + Tr: ownerState => { + const { tableRow } = ownerState + + return { + className: `EntityFinderDetailsViewRow`, + ['aria-selected']: tableRow.original.isSelected, + ['aria-disabled']: tableRow.original.isDisabled, + onClick: () => { + onRowClick(tableRow.original) }, - }} - onEndReached={() => { - if (hasNextPage && fetchNextPage && !isFetchingNextPage) { - fetchNextPage() - } - }} - emptyRenderer={ - isLoading - ? LoadingRenderer - : () => ( - - ) } - > - {showSelectColumn && ( - - key="isSelected" - title="" - minWidth={50} - maxWidth={50} - width={50} - dataKey="isSelected" - headerRenderer={SelectAllCheckboxRenderer} - cellRenderer={DetailsViewCheckboxRenderer} - /> - )} - - key="type" - title="" - minWidth={45} - maxWidth={45} - width={45} - dataKey="entityType" - align="center" - cellRenderer={TypeIconRenderer} - /> - - key={SortBy.NAME} - title="Name" - width={800} - sortable={sort != null} - resizable={true} - cellRenderer={NameRenderer} - /> - - key="badge" - title="" - width={75} - maxWidth={75} - minWidth={75} - cellRenderer={BadgeIconsRenderer} - /> - - key="id" - width={130} - dataKey="id" - title="ID" - minWidth={130} - /> - {versionSelection !== VersionSelectionType.DISALLOWED && ( - - key="version" - minWidth={150} - width={500} - title="Version" - cellRenderer={props => ( - - )} - headerRenderer={ - - } - /> - )} - - key={SortBy.CREATED_ON} - sortable={sort != null} - title="Created On" - width={220} - minWidth={170} - cellRenderer={CreatedOnRenderer} - /> - - key={SortBy.MODIFIED_ON} - title="Modified On" - width={220} - minWidth={170} - sortable={sort != null} - cellRenderer={ModifiedOnRenderer} - /> - - key="modifiedBy" - title="Modified By" - width={500} - resizable - cellRenderer={ModifiedByRenderer} - /> - {visibleTypes.includes(EntityType.FILE) && ( - - key={'SIZE'} - title="Size" - width={200} - minWidth={85} - sortable={false} - resizable={true} - cellRenderer={SizeRenderer} - /> - )} - {visibleTypes.includes(EntityType.FILE) && ( - - key={'MD5'} - title="MD5" - width={200} - sortable={false} - resizable={true} - cellRenderer={MD5Renderer} - /> - )} - {visibleTypes.includes(EntityType.FILE) && ( - - key={'addToDownloadCart'} - title="" - width={40} - minWidth={40} - sortable={false} - resizable={true} - cellRenderer={AddFileToDownloadListRenderer} - /> - )} - - )} - + }, + }} + /> + + {/* // Sorting:*/} + {/* sortState={sortState}*/} + {/* components={{ SortIndicator: CustomSortIndicator }}*/} + {/* onColumnSort={({ key, order }) => {*/} + {/* if (sort && setSort) {*/} + {/* setSort(*/} + {/* key as SortBy,*/} + {/* order === 'asc' ? Direction.ASC : Direction.DESC,*/} + {/* )*/} + {/* }*/} + {/* }}*/} + {/* onEndReached={() => {*/} + {/* if (hasNextPage && fetchNextPage && !isFetchingNextPage) {*/} + {/* void fetchNextPage()*/} + {/* }*/} + {/* }}*/} + {/* emptyRenderer={*/} + {/* isLoading*/} + {/* ? LoadingRenderer*/} + {/* : () => (*/} + {/* */} + {/* )*/} + {/* }*/} + {/* >*/} + + {/* */}
) } diff --git a/packages/synapse-react-client/src/components/EntityFinder/details/view/DetailsViewTableRenderers.tsx b/packages/synapse-react-client/src/components/EntityFinder/details/view/DetailsViewTableRenderers.tsx index 0d5f347c91..fc1a8f344c 100644 --- a/packages/synapse-react-client/src/components/EntityFinder/details/view/DetailsViewTableRenderers.tsx +++ b/packages/synapse-react-client/src/components/EntityFinder/details/view/DetailsViewTableRenderers.tsx @@ -4,37 +4,38 @@ import BaseTable, { ColumnShape, SortOrder, } from '@sage-bionetworks/react-base-table' +import { + EntityRef, + EntityType, + Reference, +} from '@sage-bionetworks/synapse-types' +import { useMutation } from '@tanstack/react-query' +import { CellContext } from '@tanstack/react-table' import dayjs from 'dayjs' import React, { SyntheticEvent, useEffect } from 'react' import { Form } from 'react-bootstrap' import SortIcon from '../../../../assets/icons/Sort' -import { formatDate } from '../../../../utils/functions/DateFormatter' -import { isTableType } from '../../../../utils/functions/EntityTypeUtils' +import { useAddFileToDownloadList } from '../../../../synapse-queries' import { useGetEntity, useGetVersionsInfinite, } from '../../../../synapse-queries/entity/useEntity' import useGetEntityBundle from '../../../../synapse-queries/entity/useEntityBundle' -import { - EntityRef, - EntityType, - Reference, -} from '@sage-bionetworks/synapse-types' +import { useSynapseContext } from '../../../../utils' +import { formatDate } from '../../../../utils/functions/DateFormatter' +import { isTableType } from '../../../../utils/functions/EntityTypeUtils' +import { FileHandleWithPreview } from '../../../ChallengeDataDownload/Renderers' +import { displayFilesWereAddedToDownloadListSuccess } from '../../../download_list/DownloadConfirmationUtils' import { EntityBadgeIcons } from '../../../EntityBadgeIcons/EntityBadgeIcons' import { EntityTypeIcon } from '../../../EntityIcon' import { EntityLink } from '../../../EntityLink' import IconSvg from '../../../IconSvg/IconSvg' import { SynapseSpinner } from '../../../LoadingScreen/LoadingScreen' import { DatasetItemsEditorTableData } from '../../../SynapseTable/datasets/DatasetItemsEditor' +import { displayToast } from '../../../ToastMessage' +import { UserBadge } from '../../../UserCard/UserBadge' import { VersionSelectionType } from '../../VersionSelectionType' import { EntityFinderTableViewRowData } from './DetailsView' -import { UserBadge } from '../../../UserCard/UserBadge' -import { displayFilesWereAddedToDownloadListSuccess } from '../../../download_list/DownloadConfirmationUtils' -import { displayToast } from '../../../ToastMessage' -import { useAddFileToDownloadList } from '../../../../synapse-queries' -import { useSynapseContext } from '../../../../utils' -import { FileHandleWithPreview } from '../../../ChallengeDataDownload/Renderers' -import { useMutation } from '@tanstack/react-query' // TODO: Consider sharing logic with SynapseTableCell.tsx @@ -85,13 +86,15 @@ export const CustomSortIndicator = ({ * @param props * @returns */ -export function BadgeIconsRenderer( - props: CellRendererProps, +export function BadgeIconsRenderer( + props: CellContext, ) { + const { row } = props + return ( ( - props: CellRendererProps, +export function ModifiedOnRenderer( + props: CellContext, ) { + const { row } = props const { data: bundle, isLoading } = useGetEntityBundle( - props.rowData.entityId, - props.rowData.versionNumber, + row.original.entityId, + row.original.versionNumber, ) if (isLoading) { @@ -132,12 +136,13 @@ export function ModifiedOnRenderer( * @param props * @returns */ -export function CreatedOnRenderer( - props: CellRendererProps, +export function CreatedOnRenderer( + props: CellContext, ) { + const { row } = props const { data: bundle, isLoading } = useGetEntityBundle( - props.rowData.entityId, - props.rowData.versionNumber, + row.original.entityId, + row.original.versionNumber, ) if (isLoading) { @@ -202,12 +207,13 @@ export function UserBadgeRenderer({ cellData }: { cellData?: string }) { * @param props * @returns */ -export function ModifiedByRenderer( - props: CellRendererProps, +export function ModifiedByRenderer( + props: CellContext, ) { + const { row } = props const { data: bundle, isLoading } = useGetEntityBundle( - props.rowData.entityId, - props.rowData.versionNumber, + row.original.entityId, + row.original.versionNumber, ) if (isLoading) { @@ -225,34 +231,39 @@ export function LoadingRenderer() { ) } -export const DetailsViewCheckboxRenderer: ColumnShape['cellRenderer'] = - props => { - const { rowData } = props - const { isSelected, isDisabled } = rowData - return ( - !isDisabled && ( - { - // no-op - }} - /> - ) - ) - } +export function DetailsViewCheckboxRenderer( + props: CellContext, +) { + const { row } = props + const { entityId, isSelected, isDisabled } = row.original -export const TypeIconRenderer: ColumnShape['cellRenderer'] = - props => { - const { cellData } = props - return ( - - ) + if (isDisabled) { + return null } + return ( + { + // no-op + }} + /> + ) +} + +export function TypeIconRenderer( + props: CellContext, +) { + const { getValue } = props + return ( + + ) +} + export function EmptyRenderer({ noResultsPlaceholder, }: { @@ -265,12 +276,13 @@ export function EmptyRenderer({ ) } -export function MD5Renderer( - props: CellRendererProps, +export function MD5Renderer( + props: CellContext, ) { + const { row } = props const { data: bundle, isLoading: isLoadingEntityBundle } = useGetEntityBundle( - props.rowData.entityId, - props.rowData.versionNumber, + row.original.entityId, + row.original.versionNumber, ) const { mutate: copyMd5ToClipboard } = useMutation({ mutationFn: (md5: string) => navigator.clipboard.writeText(md5), @@ -301,14 +313,12 @@ export function MD5Renderer( ) } -export function AddFileToDownloadListRenderer< - T extends EntityIdAndVersionNumber, ->(props: CellRendererProps) { - const { entityId, versionNumber } = props.rowData - const { data: bundle } = useGetEntityBundle( - props.rowData.entityId, - props.rowData.versionNumber, - ) +export function AddFileToDownloadListRenderer( + props: CellContext, +) { + const { row } = props + const { entityId, versionNumber } = row.original + const { data: bundle } = useGetEntityBundle(entityId, versionNumber) const { downloadCartPageUrl } = useSynapseContext() @@ -456,21 +466,21 @@ function getLatestVersionText( return `${versionDisplay} Version` } -export const DetailsViewVersionRenderer = ({ - rowData, - versionSelection, - toggleSelection, -}: CellRendererProps & { +export const DetailsViewVersionRenderer = (props: { + context: CellContext versionSelection: VersionSelectionType toggleSelection: (entity: Reference | Reference[]) => void }) => { + const { context, toggleSelection, versionSelection } = props + const { row } = context + const { id, entityType, isVersionableEntity, isSelected, currentSelectedVersion, - } = rowData + } = row.original const NO_VERSION_NUMBER_OPTION_VALUE = -1 diff --git a/packages/synapse-react-client/src/components/TanStackTable/StyledTanStackTable.tsx b/packages/synapse-react-client/src/components/TanStackTable/StyledTanStackTable.tsx index 1a86b6f0ea..cea15386c1 100644 --- a/packages/synapse-react-client/src/components/TanStackTable/StyledTanStackTable.tsx +++ b/packages/synapse-react-client/src/components/TanStackTable/StyledTanStackTable.tsx @@ -1,25 +1,99 @@ +import { flexRender, Row, Table } from '@tanstack/react-table' import React, { useMemo } from 'react' -import { flexRender, Table } from '@tanstack/react-table' +import { RequireAllOrNone } from 'type-fest' import { StyledTableContainer, StyledTableContainerProps, } from '../styled/StyledTableContainer' -import { MemoizedTableBody, TableBody } from './TableBody' +import { MemoizedTableBody, TableBody, TableBodyProps } from './TableBody' import { getColumnSizeCssVariable, getHeaderSizeCssVariable, } from './TanStackTableUtils' -type StyledTanStackTableProps = { - table: Table +type StyledTanStackTableSlots< + TData = unknown, + TRowData = Row, +> = TableBodyProps['slots'] & { + Table?: React.ElementType< + React.DetailedHTMLProps< + React.HTMLAttributes, + HTMLTableElement + > + > + Thead?: React.ElementType< + React.DetailedHTMLProps< + React.HTMLAttributes, + HTMLTableSectionElement + > + > + Th?: React.ElementType< + React.DetailedHTMLProps< + React.HTMLAttributes, + HTMLTableCellElement + > + > +} + +type SlotProps> = TableBodyProps< + TData, + TRowData +>['slotProps'] & { + Table?: React.DetailedHTMLProps< + React.HTMLAttributes, + HTMLTableElement + > + Thead?: React.DetailedHTMLProps< + React.HTMLAttributes, + HTMLTableSectionElement + > + Th?: React.DetailedHTMLProps< + React.HTMLAttributes, + HTMLTableCellElement + > +} + +export type StyledTanStackTableProps> = { + table: Table styledTableContainerProps?: StyledTableContainerProps fullWidth?: boolean -} + slots?: StyledTanStackTableSlots + slotProps?: SlotProps +} & RequireAllOrNone< + Pick, 'rows' | 'rowTransform'> +> + +export default function StyledTanStackTable< + TData = unknown, + TRowType = Row, +>(props: StyledTanStackTableProps) { + const { + table, + styledTableContainerProps, + fullWidth = true, + slots = {}, + slotProps = {}, + } = props + const { + Thead = 'thead', + Th = 'th', + Table = 'table', + ...tableBodySlots + } = slots + const { + Table: tableSlotProps = {}, + Thead: theadSlotProps = {}, + Th: thSlotProps = {}, + ...tableBodySlotProps + } = slotProps -export default function StyledTanStackTable( - props: StyledTanStackTableProps, -) { - const { table, styledTableContainerProps, fullWidth = true } = props + const tableBodyProps: TableBodyProps = { + table, + slots: tableBodySlots, + slotProps: tableBodySlotProps, + rows: props.rows, + rowTransform: props.rowTransform, + } /** * Instead of calling `column.getSize()` on every render for every header @@ -51,19 +125,28 @@ export default function StyledTanStackTable( return ( - - +
+ {table.getHeaderGroups().map(headerGroup => { return ( {headerGroup.headers.map(header => ( - + ))} ) })} - - -
{header.isPlaceholder @@ -81,14 +164,14 @@ export default function StyledTanStackTable( onTouchStart={header.getResizeHandler()} /> )} -
+ + {...tableBodyProps} /> +
) } diff --git a/packages/synapse-react-client/src/components/TanStackTable/StyledVirtualTanStackTable.tsx b/packages/synapse-react-client/src/components/TanStackTable/StyledVirtualTanStackTable.tsx new file mode 100644 index 0000000000..202abdc06c --- /dev/null +++ b/packages/synapse-react-client/src/components/TanStackTable/StyledVirtualTanStackTable.tsx @@ -0,0 +1,114 @@ +import { VirtualItem, Virtualizer } from '@tanstack/react-virtual' +import { noop } from 'lodash-es' +import React, { useContext } from 'react' +import { mergeSlotProps } from '../../utils/slots/SlotUtils' +import StyledTanStackTable, { + StyledTanStackTableProps, +} from './StyledTanStackTable' +import { TrProps } from './TableBody' + +type StyledVirtualTanStackTableProps = Omit< + StyledTanStackTableProps, + 'slots' | 'rows' | 'rowTransform' +> & { + rowVirtualizer: Virtualizer + onTableContainerScroll?: (target: EventTarget) => void +} + +// Context to pass the row virtualizer to the Tr component +const RowVirtualizerContext = React.createContext< + Virtualizer | undefined +>(undefined) + +export function VirtualizedTr( + props: TrProps, +) { + const { row: virtualItem, tableRow: _tableRow, ...rest } = props + const rowVirtualizer = useContext(RowVirtualizerContext) + return ( + rowVirtualizer?.measureElement(node)} //measure dynamic row height + {...rest} + style={{ + ...rest.style, + display: 'flex', + position: 'absolute', + transform: `translateY(${virtualItem.start}px)`, //this should always be a `style` as it changes on scroll + width: '100%', + }} + /> + ) +} + +export default function StyledVirtualTanStackTable( + props: StyledVirtualTanStackTableProps, +) { + const { + table, + styledTableContainerProps, + fullWidth = true, + rowVirtualizer, + slotProps = {}, + onTableContainerScroll = noop, + } = props + + const virtualRows = rowVirtualizer.getVirtualItems() + + return ( + + + table={table} + rows={virtualRows} + rowTransform={row => table.getRowModel().rows[row.index]} + fullWidth={fullWidth} + styledTableContainerProps={{ + ...styledTableContainerProps, + style: { + overflow: 'auto', //our scrollable table container + position: 'relative', //needed for sticky header + ...styledTableContainerProps?.style, + }, + sx: { + 'thead > tr': { + display: 'flex', + width: '100%', + }, + }, + onScroll: e => onTableContainerScroll(e.target), + }} + {...styledTableContainerProps} + slots={{ + Tr: VirtualizedTr, + }} + slotProps={mergeSlotProps(slotProps, { + Table: { + style: { + display: 'grid', + }, + }, + Thead: { + style: { + display: 'grid', + position: 'sticky', + top: 0, + zIndex: 1, + }, + }, + Th: { + style: { + display: 'flex', + }, + }, + Tbody: { + style: { + display: 'grid', + height: `${rowVirtualizer.getTotalSize()}px`, //tells scrollbar how big the table is + position: 'relative', //needed for absolute positioning of rows + }, + }, + })} + /> + + ) +} diff --git a/packages/synapse-react-client/src/components/TanStackTable/TableBody.tsx b/packages/synapse-react-client/src/components/TanStackTable/TableBody.tsx index e9ca307ee2..6455938c92 100644 --- a/packages/synapse-react-client/src/components/TanStackTable/TableBody.tsx +++ b/packages/synapse-react-client/src/components/TanStackTable/TableBody.tsx @@ -1,52 +1,113 @@ +import { Cell, Row, Table } from '@tanstack/react-table' +import { identity } from 'lodash-es' import React from 'react' -import { Cell, flexRender, Table } from '@tanstack/react-table' -import { getColumnSizeCssVariable } from './TanStackTableUtils' -import ExpandableTableDataCell from '../SynapseTable/ExpandableTableDataCell' -import { Skeleton } from '@mui/material' - -function CellRenderer(cell: Cell) { - const getWrapInExpandableTd = - cell.getContext().table.options.meta?.getWrapInExpandableTd - const wrapInExpandableTd = - getWrapInExpandableTd && getWrapInExpandableTd(cell) - const TableDataCellElement = wrapInExpandableTd - ? ExpandableTableDataCell - : 'td' - - const renderPlaceholderData = - cell.getContext().table.options.meta?.renderPlaceholderData +import { RequireAllOrNone } from 'type-fest' +import { getSlotProps } from '../../utils/slots/SlotUtils' +import { TableCellRenderer as DefaultTableCellRenderer } from './TableCellRenderer' - return ( - , + HTMLTableRowElement +> + +type TrOwnerState> = { + // The row data + row: TRowType + + // Data corresponding to the table row. This may be different from row. E.g., the row may be a pointer to virtualized data. + // If TRowType is not a Tanstack Table Row, then the rowTransform prop passed to TableBody must convert a row to a tableRow. + tableRow: Row +} + +export type TrProps> = TrHtmlProps & + TrOwnerState + +export type TableBodySlots> = { + Tbody?: React.ElementType< + React.DetailedHTMLProps< + React.HTMLAttributes, + HTMLTableSectionElement > - {renderPlaceholderData ? ( -

- -

- ) : ( - flexRender(cell.column.columnDef.cell, cell.getContext()) - )} -
- ) + > + Tr?: React.ElementType> + TableCellRenderer?: React.ElementType> } -type TableBodyProps = { - table: Table +type TableBodySlotProps> = { + Tbody?: React.DetailedHTMLProps< + React.HTMLAttributes, + HTMLTableSectionElement + > + Tr?: + | Partial> + | (( + ownerState: TrOwnerState, + ) => Partial>) } -export function TableBody(props: TableBodyProps) { - const { table } = props +type TableBodyPropsRowOverride< + TData = unknown, + TRowType = Row, +> = RequireAllOrNone<{ + /** + * The rows that should be rendered. By default,this is the TanStack table rows, but this can be an array of any type. + * One scenario where this is useful is that this can be a virtualized list of row objects. + * + * If TRowType is not a Tanstack Table Row, then the rowTransform prop passed to TableBody must convert a row to a tableRow. + * */ + rows: TRowType[] + + /** + * A function that transforms an arbitrary row object to a table row. Required when row data is not the set of TanStack Table Rows. + * @param row the row object to transform + * @returns a TanStack Table Row + */ + rowTransform: (row: TRowType) => Row +}> + +export type TableBodyProps> = { + /** The table instance */ + table: Table + slots?: TableBodySlots + slotProps?: TableBodySlotProps +} & TableBodyPropsRowOverride + +export function TableBody>( + props: TableBodyProps, +) { + const { table, slots = {}, slotProps = {} } = props + + // By default, use TanStack Table Rows and the identity function as a transform. + // This can be overridden e.g. to accomplish row virtualization. + const { + rows = table.getRowModel().rows as TRowType[], + rowTransform = identity, + } = props + + const { + Tbody = 'tbody', + Tr = 'tr', + TableCellRenderer = DefaultTableCellRenderer, + } = slots + const { Tbody: tbodySlotProps = {}, Tr: _trSlotProps = {} } = slotProps + return ( - - {table.getRowModel().rows.map(row => ( - {row.getVisibleCells().map(CellRenderer)} - ))} - + + {rows.map(row => { + const tableRow: Row = rowTransform(row)! + + const trOwnerState: TrOwnerState = { row, tableRow } + const trSlotProps = getSlotProps(_trSlotProps, trOwnerState) + + return ( + + {tableRow.getVisibleCells().map(props => ( + + ))} + + ) + })} + ) } diff --git a/packages/synapse-react-client/src/components/TanStackTable/TableCellRenderer.tsx b/packages/synapse-react-client/src/components/TanStackTable/TableCellRenderer.tsx new file mode 100644 index 0000000000..0e196a2d5b --- /dev/null +++ b/packages/synapse-react-client/src/components/TanStackTable/TableCellRenderer.tsx @@ -0,0 +1,36 @@ +import { Skeleton } from '@mui/material' +import { Cell, flexRender } from '@tanstack/react-table' +import React from 'react' +import ExpandableTableDataCell from '../SynapseTable/ExpandableTableDataCell' +import { getColumnSizeCssVariable } from './TanStackTableUtils' + +export function TableCellRenderer(cell: Cell) { + const getWrapInExpandableTd = + cell.getContext().table.options.meta?.getWrapInExpandableTd + const wrapInExpandableTd = + getWrapInExpandableTd && getWrapInExpandableTd(cell) + const TableDataCellElement = wrapInExpandableTd + ? ExpandableTableDataCell + : 'td' + + const renderPlaceholderData = + cell.getContext().table.options.meta?.renderPlaceholderData + + return ( + + {renderPlaceholderData ? ( +

+ +

+ ) : ( + flexRender(cell.column.columnDef.cell, cell.getContext()) + )} +
+ ) +} diff --git a/packages/synapse-react-client/src/components/styled/StyledTableContainer.tsx b/packages/synapse-react-client/src/components/styled/StyledTableContainer.tsx index 9a3de05d6a..67904dfac9 100644 --- a/packages/synapse-react-client/src/components/styled/StyledTableContainer.tsx +++ b/packages/synapse-react-client/src/components/styled/StyledTableContainer.tsx @@ -3,62 +3,67 @@ import { StyledComponent } from '@emotion/styled' export type StyledTableContainerProps = BoxProps & { density?: 'default' | 'compact' + striped?: boolean ['data-testid']?: string } export const StyledTableContainer: StyledComponent = - styled(Box)(({ theme, density = 'default' }) => ({ - overflow: 'auto', - paddingLeft: '2px', - th: { - height: '38px', - backgroundColor: theme.palette.grey[200], - borderRight: '1px solid', - borderColor: theme.palette.grey[400], - }, - ['th:first-of-type']: { - paddingLeft: '10px', - }, - ['td:first-of-type']: { - paddingLeft: '10px', - }, - ['tr:nth-of-type(2n)']: { - backgroundColor: theme.palette.grey[100], - }, - ['th,td']: { - position: 'relative', - paddingLeft: theme.spacing(density === 'compact' ? 0 : 1), - paddingRight: theme.spacing(density === 'compact' ? 0 : 1), - }, - td: { - paddingTop: theme.spacing(density === 'compact' ? 0 : 1), - paddingBottom: theme.spacing(density === 'compact' ? 0 : 1), - }, - '.resizer': { - position: 'absolute', - right: 0, - top: 0, - height: '100%', - width: '3px', - padding: 0, - background: 'rgba(0,0,0,0.25)', - cursor: 'col-resize', - userSelect: 'none', - touchAction: 'none', - }, - '.resizer.isResizing': { - background: theme.palette.primary.main, - opacity: 1, - }, - '@media (hover: hover)': { + styled(Box)( + ({ theme, density = 'default', striped = true }) => ({ + overflow: 'auto', + paddingLeft: '2px', + th: { + height: '38px', + backgroundColor: theme.palette.grey[200], + borderRight: '1px solid', + borderColor: theme.palette.grey[400], + }, + ['th:first-of-type']: { + paddingLeft: '10px', + }, + ['td:first-of-type']: { + paddingLeft: '10px', + }, + ['tr:nth-of-type(2n)']: striped + ? { + backgroundColor: theme.palette.grey[100], + } + : undefined, + ['th,td']: { + position: 'relative', + paddingLeft: theme.spacing(density === 'compact' ? 0 : 1), + paddingRight: theme.spacing(density === 'compact' ? 0 : 1), + }, + td: { + paddingTop: theme.spacing(density === 'compact' ? 0 : 1), + paddingBottom: theme.spacing(density === 'compact' ? 0 : 1), + }, '.resizer': { - opacity: 0, + position: 'absolute', + right: 0, + top: 0, + height: '100%', + width: '3px', + padding: 0, + background: 'rgba(0,0,0,0.25)', + cursor: 'col-resize', + userSelect: 'none', + touchAction: 'none', + }, + '.resizer.isResizing': { + background: theme.palette.primary.main, + opacity: 1, + }, + '@media (hover: hover)': { + '.resizer': { + opacity: 0, + }, + '*:hover > .resizer': { + opacity: 0.75, + }, }, - '*:hover > .resizer': { - opacity: 0.75, + '.MuiButton-root': { + whiteSpace: 'nowrap', }, - }, - '.MuiButton-root': { - whiteSpace: 'nowrap', - }, - })) + }), + ) diff --git a/packages/synapse-react-client/src/style/components/entity_finder/_details-view.scss b/packages/synapse-react-client/src/style/components/entity_finder/_details-view.scss index d451406f87..628fc53d11 100644 --- a/packages/synapse-react-client/src/style/components/entity_finder/_details-view.scss +++ b/packages/synapse-react-client/src/style/components/entity_finder/_details-view.scss @@ -43,8 +43,13 @@ $row-hovered-background-color: unset; height: 45px; transition: background-color 200ms ease-in; - &.isEven { - // Don't use nth child because the virtual rows can switch + // Select odd rows (data-index ends in an odd number) + // Don't use nth child because the virtual rows can switch indicies, causing style to flip for the same cell + &[data-index$='1'], + &[data-index$='3'], + &[data-index$='5'], + &[data-index$='7'], + &[data-index$='9'] { background: SRC.$background-color-gray; } diff --git a/packages/synapse-react-client/src/utils/slots/SlotUtils.ts b/packages/synapse-react-client/src/utils/slots/SlotUtils.ts new file mode 100644 index 0000000000..c2528a53c1 --- /dev/null +++ b/packages/synapse-react-client/src/utils/slots/SlotUtils.ts @@ -0,0 +1,34 @@ +import { merge, mergeWith } from 'lodash-es' + +export function getSlotProps( + propsOrFn: TProps | ((ownerState: TOwnerState) => TProps), + ownerState: TOwnerState, +): TProps { + return typeof propsOrFn === 'function' ? propsOrFn(ownerState) : propsOrFn +} + +type ObjectOrFunction = + | Record + | ((...args: unknown[]) => Record) + +function slotPropsMergeWithCustomizer( + objValue: ObjectOrFunction, + srcValue: ObjectOrFunction, +): ObjectOrFunction { + if (typeof objValue === 'function' || typeof srcValue === 'function') { + const objValueFn = + typeof objValue === 'function' ? objValue : () => objValue + const srcValueFn = + typeof srcValue === 'function' ? srcValue : () => srcValue + + return function (...args) { + return merge(objValueFn(...args), srcValueFn(...args)) + } + } else { + return merge(objValue, srcValue) + } +} + +export function mergeSlotProps(object: any, other: any) { + return mergeWith(object, other, slotPropsMergeWithCustomizer) +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b984b53ea4..6f56f8e36c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1397,6 +1397,9 @@ importers: '@tanstack/react-table': specifier: ^8.20.5 version: 8.20.5(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tanstack/react-virtual': + specifier: ^3.11.1 + version: 3.11.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@upsetjs/react': specifier: ^1.11.0 version: 1.11.0(react@18.2.0) @@ -1642,41 +1645,41 @@ importers: specifier: ^2.2.0 version: 2.2.0 '@storybook/addon-actions': - specifier: ^8.2.4 - version: 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) + specifier: ^8.4.7 + version: 8.4.7(storybook@8.4.7(prettier@2.8.8)) '@storybook/addon-designs': - specifier: ^8.0.3 - version: 8.0.3(@storybook/blocks@8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))))(@storybook/components@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))))(@storybook/theming@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + specifier: ^8.0.4 + version: 8.0.4(@storybook/blocks@8.4.7(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8)))(@storybook/components@8.4.7(storybook@8.4.7(prettier@2.8.8)))(@storybook/theming@8.4.7(storybook@8.4.7(prettier@2.8.8)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@storybook/addon-essentials': - specifier: ^8.2.4 - version: 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) + specifier: ^8.4.7 + version: 8.4.7(@types/react@18.3.12)(storybook@8.4.7(prettier@2.8.8)) '@storybook/addon-interactions': - specifier: ^8.2.4 - version: 8.2.4(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.10)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@types/node@20.14.10)(typescript@5.5.3)))(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(vitest@1.6.0(@types/node@20.14.10)(jsdom@21.1.2)(sass@1.77.6)(terser@5.31.2)) + specifier: ^8.4.7 + version: 8.4.7(storybook@8.4.7(prettier@2.8.8)) '@storybook/addon-links': - specifier: ^8.2.4 - version: 8.2.4(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) + specifier: ^8.4.7 + version: 8.4.7(react@18.2.0)(storybook@8.4.7(prettier@2.8.8)) '@storybook/addon-themes': - specifier: ^8.2.4 - version: 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) + specifier: ^8.4.7 + version: 8.4.7(storybook@8.4.7(prettier@2.8.8)) '@storybook/manager-api': - specifier: ^8.2.4 - version: 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) + specifier: ^8.4.7 + version: 8.4.7(storybook@8.4.7(prettier@2.8.8)) '@storybook/react': - specifier: ^8.2.4 - version: 8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(typescript@5.5.3) + specifier: ^8.4.7 + version: 8.4.7(@storybook/test@8.4.7(storybook@8.4.7(prettier@2.8.8)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8))(typescript@5.5.3) '@storybook/react-vite': - specifier: ^8.2.4 - version: 8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(rollup@4.27.2)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2)) + specifier: ^8.4.7 + version: 8.4.7(@storybook/test@8.4.7(storybook@8.4.7(prettier@2.8.8)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(rollup@4.27.2)(storybook@8.4.7(prettier@2.8.8))(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2)) '@storybook/test': - specifier: ^8.2.4 - version: 8.2.4(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.10)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@types/node@20.14.10)(typescript@5.5.3)))(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(vitest@1.6.0(@types/node@20.14.10)(jsdom@21.1.2)(sass@1.77.6)(terser@5.31.2)) + specifier: ^8.4.7 + version: 8.4.7(storybook@8.4.7(prettier@2.8.8)) '@storybook/testing-library': specifier: ^0.2.2 version: 0.2.2 '@storybook/theming': - specifier: ^8.2.4 - version: 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) + specifier: ^8.4.7 + version: 8.4.7(storybook@8.4.7(prettier@2.8.8)) '@svgr/plugin-jsx': specifier: ^8.1.0 version: 8.1.0(@svgr/core@8.1.0(typescript@5.5.3)) @@ -1796,7 +1799,7 @@ importers: version: 29.7.0(@babel/core@7.24.7) babel-loader: specifier: ^9.1.3 - version: 9.1.3(@babel/core@7.24.7)(webpack@5.93.0(esbuild@0.21.5)) + version: 9.1.3(@babel/core@7.24.7)(webpack@5.93.0(esbuild@0.23.1)) buffer: specifier: ^6.0.3 version: 6.0.3 @@ -1856,7 +1859,7 @@ importers: version: 1.0.1 postcss-normalize: specifier: ^10.0.1 - version: 10.0.1(browserslist@4.23.2)(postcss@8.4.39) + version: 10.0.1(browserslist@4.23.3)(postcss@8.4.39) prettier: specifier: ^2.8.8 version: 2.8.8 @@ -1876,8 +1879,8 @@ importers: specifier: ^18.2.0 version: 18.2.0(react@18.2.0) storybook: - specifier: ^8.2.4 - version: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + specifier: ^8.4.7 + version: 8.4.7(prettier@2.8.8) stream-browserify: specifier: ^3.0.0 version: 3.0.0 @@ -2194,18 +2197,10 @@ packages: resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} - '@babel/helper-annotate-as-pure@7.24.7': - resolution: {integrity: sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==} - engines: {node: '>=6.9.0'} - '@babel/helper-builder-binary-assignment-operator-visitor@7.22.15': resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} engines: {node: '>=6.9.0'} - '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': - resolution: {integrity: sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==} - engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.24.7': resolution: {integrity: sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==} engines: {node: '>=6.9.0'} @@ -2220,24 +2215,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-create-class-features-plugin@7.24.8': - resolution: {integrity: sha512-4f6Oqnmyp2PP3olgUMmOwC3akxSm5aBYraQ6YDdKy7NcAMkDECHWG0DEnV6M2UAkERgIBhYt8S27rURPg7SxWA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/helper-create-regexp-features-plugin@7.22.15': resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-create-regexp-features-plugin@7.24.7': - resolution: {integrity: sha512-03TCmXy2FtXJEZfbXDTSqq1fRJArk7lX9DOFC/47VthYcxyIOx+eXQmdo6DOQvrbpIix+KfXwvuXdFDZHxt+rA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/helper-define-polyfill-provider@0.5.0': resolution: {integrity: sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==} peerDependencies: @@ -2269,10 +2252,6 @@ packages: resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} engines: {node: '>=6.9.0'} - '@babel/helper-member-expression-to-functions@7.24.8': - resolution: {integrity: sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==} - engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.24.7': resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} engines: {node: '>=6.9.0'} @@ -2293,10 +2272,6 @@ packages: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} - '@babel/helper-optimise-call-expression@7.24.7': - resolution: {integrity: sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==} - engines: {node: '>=6.9.0'} - '@babel/helper-plugin-utils@7.24.7': resolution: {integrity: sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==} engines: {node: '>=6.9.0'} @@ -2311,24 +2286,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-remap-async-to-generator@7.24.7': - resolution: {integrity: sha512-9pKLcTlZ92hNZMQfGCHImUpDOlAgkkpqalWEeftW5FBya75k8Li2ilerxkM/uBEj01iBZXcCIB/bwvDYgWyibA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/helper-replace-supers@7.22.20': resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-replace-supers@7.24.7': - resolution: {integrity: sha512-qTAxxBM81VEyoAY0TtLrx1oAEJc09ZK67Q9ljQToqCnA+55eNwCORaxlKyu+rNfX86o8OXRUSNUnrtsAZXM9sg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.24.7': resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} engines: {node: '>=6.9.0'} @@ -2337,10 +2300,6 @@ packages: resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} engines: {node: '>=6.9.0'} - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': - resolution: {integrity: sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==} - engines: {node: '>=6.9.0'} - '@babel/helper-split-export-declaration@7.24.7': resolution: {integrity: sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==} engines: {node: '>=6.9.0'} @@ -2369,10 +2328,6 @@ packages: resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} engines: {node: '>=6.9.0'} - '@babel/helper-wrap-function@7.24.7': - resolution: {integrity: sha512-N9JIYk3TD+1vq/wn77YnJOqMtfWhNewNE+DJV4puD2X7Ew9J4JvrzrFDfTfyv5EgEXVy9/Wt8QiOErzEmv5Ifw==} - engines: {node: '>=6.9.0'} - '@babel/helpers@7.24.7': resolution: {integrity: sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==} engines: {node: '>=6.9.0'} @@ -2395,48 +2350,24 @@ packages: engines: {node: '>=6.0.0'} hasBin: true - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.7': - resolution: {integrity: sha512-TiT1ss81W80eQsN+722OaeQMY/G4yTb4G9JrqeiDADs3N8lbPMGldWi9x8tyqCW5NLx1Jh2AvkE6r6QvEltMMQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3': resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.7': - resolution: {integrity: sha512-unaQgZ/iRu/By6tsjMZzpeBZjChYfLYry6HrEXPoz3KmfF0sVBQ1l8zKMQ4xRGLWVsjuvB8nQfjNP/DcfEOCsg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3': resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7': - resolution: {integrity: sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.13.0 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7': resolution: {integrity: sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.7': - resolution: {integrity: sha512-utA4HuR6F4Vvcr+o4DnjL8fCOlgRFGbeeBEGNg3ZTrLFw6VWG5XmUrvcQ0FjIYMU2ST4XcR2Wsp7t9qOAPnxMg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/plugin-proposal-class-properties@7.18.6': resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} engines: {node: '>=6.9.0'} @@ -2488,36 +2419,18 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-flow@7.23.3': - resolution: {integrity: sha512-YZiAIpkJAwQXBJLIQbRFayR5c+gJ35Vcz3bg954k7cd73zqjvhacJuL9RbrzPz8qPmZdgqP6EUKwy0PCNhaaPA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-assertions@7.23.3': resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-assertions@7.24.7': - resolution: {integrity: sha512-Ec3NRUMoi8gskrkBe3fNmEQfxDvY8bgfQpz6jlk/41kX9eUjvpyqWU7PBP/pLAvMaSQjbMNKJmvX57jP+M6bPg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-attributes@7.23.3': resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-attributes@7.24.7': - resolution: {integrity: sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-meta@7.10.4': resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: @@ -2594,450 +2507,222 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-arrow-functions@7.24.7': - resolution: {integrity: sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-generator-functions@7.23.9': resolution: {integrity: sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-generator-functions@7.24.7': - resolution: {integrity: sha512-o+iF77e3u7ZS4AoAuJvapz9Fm001PuD2V3Lp6OSE4FYQke+cSewYtnek+THqGRWyQloRCyvWL1OkyfNEl9vr/g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-to-generator@7.23.3': resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-to-generator@7.24.7': - resolution: {integrity: sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoped-functions@7.23.3': resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoped-functions@7.24.7': - resolution: {integrity: sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoping@7.23.4': resolution: {integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoping@7.24.7': - resolution: {integrity: sha512-Nd5CvgMbWc+oWzBsuaMcbwjJWAcp5qzrbg69SZdHSP7AMY0AbWFqFO0WTFCA1jxhMCwodRwvRec8k0QUbZk7RQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-properties@7.23.3': resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-properties@7.24.7': - resolution: {integrity: sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-static-block@7.23.4': resolution: {integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 - '@babel/plugin-transform-class-static-block@7.24.7': - resolution: {integrity: sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.12.0 - '@babel/plugin-transform-classes@7.23.8': resolution: {integrity: sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-classes@7.24.8': - resolution: {integrity: sha512-VXy91c47uujj758ud9wx+OMgheXm4qJfyhj1P18YvlrQkNOSrwsteHk+EFS3OMGfhMhpZa0A+81eE7G4QC+3CA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-computed-properties@7.23.3': resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-computed-properties@7.24.7': - resolution: {integrity: sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-destructuring@7.23.3': resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-destructuring@7.24.8': - resolution: {integrity: sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dotall-regex@7.23.3': resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dotall-regex@7.24.7': - resolution: {integrity: sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-duplicate-keys@7.23.3': resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-duplicate-keys@7.24.7': - resolution: {integrity: sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dynamic-import@7.23.4': resolution: {integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dynamic-import@7.24.7': - resolution: {integrity: sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-exponentiation-operator@7.23.3': resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-exponentiation-operator@7.24.7': - resolution: {integrity: sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-export-namespace-from@7.23.4': resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-export-namespace-from@7.24.7': - resolution: {integrity: sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-flow-strip-types@7.23.3': - resolution: {integrity: sha512-26/pQTf9nQSNVJCrLB1IkHUKyPxR+lMrH2QDPG89+Znu9rAMbtrybdbWeE9bb7gzjmE5iXHEY+e0HUwM6Co93Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-for-of@7.23.6': resolution: {integrity: sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-for-of@7.24.7': - resolution: {integrity: sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-function-name@7.23.3': resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-function-name@7.24.7': - resolution: {integrity: sha512-U9FcnA821YoILngSmYkW6FjyQe2TyZD5pHt4EVIhmcTkrJw/3KqcrRSxuOo5tFZJi7TE19iDyI1u+weTI7bn2w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-json-strings@7.23.4': resolution: {integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-json-strings@7.24.7': - resolution: {integrity: sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-literals@7.23.3': resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-literals@7.24.7': - resolution: {integrity: sha512-vcwCbb4HDH+hWi8Pqenwnjy+UiklO4Kt1vfspcQYFhJdpthSnW8XvWGyDZWKNVrVbVViI/S7K9PDJZiUmP2fYQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-logical-assignment-operators@7.23.4': resolution: {integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-logical-assignment-operators@7.24.7': - resolution: {integrity: sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-member-expression-literals@7.23.3': resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-member-expression-literals@7.24.7': - resolution: {integrity: sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-amd@7.23.3': resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-amd@7.24.7': - resolution: {integrity: sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-commonjs@7.23.3': resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-commonjs@7.24.8': - resolution: {integrity: sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-systemjs@7.23.9': resolution: {integrity: sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-systemjs@7.24.7': - resolution: {integrity: sha512-GYQE0tW7YoaN13qFh3O1NCY4MPkUiAH3fiF7UcV/I3ajmDKEdG3l+UOcbAm4zUE3gnvUU+Eni7XrVKo9eO9auw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-umd@7.23.3': resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-umd@7.24.7': - resolution: {integrity: sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-named-capturing-groups-regex@7.22.5': resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7': - resolution: {integrity: sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/plugin-transform-new-target@7.23.3': resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-new-target@7.24.7': - resolution: {integrity: sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-nullish-coalescing-operator@7.23.4': resolution: {integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7': - resolution: {integrity: sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-numeric-separator@7.23.4': resolution: {integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-numeric-separator@7.24.7': - resolution: {integrity: sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-rest-spread@7.24.0': resolution: {integrity: sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-rest-spread@7.24.7': - resolution: {integrity: sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-super@7.23.3': resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-super@7.24.7': - resolution: {integrity: sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-catch-binding@7.23.4': resolution: {integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-catch-binding@7.24.7': - resolution: {integrity: sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-chaining@7.23.4': resolution: {integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-chaining@7.24.8': - resolution: {integrity: sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-parameters@7.23.3': resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-parameters@7.24.7': - resolution: {integrity: sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-methods@7.23.3': resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-methods@7.24.7': - resolution: {integrity: sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-property-in-object@7.23.4': resolution: {integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-property-in-object@7.24.7': - resolution: {integrity: sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-property-literals@7.23.3': resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-property-literals@7.24.7': - resolution: {integrity: sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-display-name@7.23.3': resolution: {integrity: sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw==} engines: {node: '>=6.9.0'} @@ -3080,24 +2765,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-regenerator@7.24.7': - resolution: {integrity: sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-reserved-words@7.23.3': resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-reserved-words@7.24.7': - resolution: {integrity: sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-runtime@7.25.4': resolution: {integrity: sha512-8hsyG+KUYGY0coX6KUCDancA0Vw225KJ2HJO0yCNr1vq5r+lJTleDaJf0K7iOhjw4SWhu03TMBzYTJ9krmzULQ==} engines: {node: '>=6.9.0'} @@ -3110,60 +2783,30 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-shorthand-properties@7.24.7': - resolution: {integrity: sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-spread@7.23.3': resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-spread@7.24.7': - resolution: {integrity: sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-sticky-regex@7.23.3': resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-sticky-regex@7.24.7': - resolution: {integrity: sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-template-literals@7.23.3': resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-template-literals@7.24.7': - resolution: {integrity: sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typeof-symbol@7.23.3': resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typeof-symbol@7.24.8': - resolution: {integrity: sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typescript@7.23.6': resolution: {integrity: sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA==} engines: {node: '>=6.9.0'} @@ -3176,66 +2819,30 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-escapes@7.24.7': - resolution: {integrity: sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-property-regex@7.23.3': resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-property-regex@7.24.7': - resolution: {integrity: sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-regex@7.23.3': resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-regex@7.24.7': - resolution: {integrity: sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-sets-regex@7.23.3': resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-unicode-sets-regex@7.24.7': - resolution: {integrity: sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/preset-env@7.24.0': resolution: {integrity: sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/preset-env@7.24.8': - resolution: {integrity: sha512-vObvMZB6hNWuDxhSaEPTKCwcqkAIuDtE+bQGn4XMXne1DSLzFVY8Vmj1bm+mUQXYNN8NmaQEO+r8MMbzPr1jBQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-flow@7.24.0': - resolution: {integrity: sha512-cum/nSi82cDaSJ21I4PgLTVlj0OXovFk6GRguJYe/IKg6y6JHLTbJhybtX4k35WT9wdeJfEVjycTixMhBHd0Dg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/preset-modules@0.1.6-no-external-plugins': resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} peerDependencies: @@ -3253,12 +2860,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/register@7.23.7': - resolution: {integrity: sha512-EjJeB6+kvpk+Y5DAkEAmbOBEFkh9OASx0huoEkqYTFxAZHzOAX2Oh5uwAUuL2rUddqfM0SA+KPXV2TbzoZ2kvQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/regjsgen@0.8.0': resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} @@ -3290,9 +2891,6 @@ packages: resolution: {integrity: sha512-SkSBEHwwJRU52QEVZBmMBnE5Ux2/6WU1grdYyOhpbCNxbmJrDuDCphBzKZSO3taf0zztp+qkWlymE5tVL5l0TA==} engines: {node: '>=6.9.0'} - '@base2/pretty-print-object@1.0.1': - resolution: {integrity: sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==} - '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} @@ -4018,11 +3616,11 @@ packages: resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@joshwooding/vite-plugin-react-docgen-typescript@0.3.1': - resolution: {integrity: sha512-pdoMZ9QaPnVlSM+SdU/wgg0nyD/8wQ7y90ttO2CMCyrrm7RxveYIJ5eNfjPaoMFqW41LZra7QO9j+xV4Y18Glw==} + '@joshwooding/vite-plugin-react-docgen-typescript@0.4.2': + resolution: {integrity: sha512-feQ+ntr+8hbVudnsTUapiMN9q8T90XA1d5jn9QzY09sNoj4iD9wi0PY1vsBFTda4ZjEaxRK9S81oarR2nj7TFQ==} peerDependencies: typescript: '>= 4.3.x' - vite: ^3.0.0 || ^4.0.0 || ^5.0.0 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 peerDependenciesMeta: typescript: optional: true @@ -5068,10 +4666,6 @@ packages: '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} - '@sindresorhus/merge-streams@2.3.0': - resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} - engines: {node: '>=18'} - '@sinonjs/commons@3.0.1': resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} @@ -5281,27 +4875,27 @@ packages: resolution: {integrity: sha512-/aMXPANhMOlMPjfPtSrDfPeVP8l56SJlz93xeiLmhLe5xvlXA5T3abZ2ilEsDEPeY9T/wnN/vNGn9wa1SbufWA==} engines: {node: '>=16.0.0'} - '@storybook/addon-actions@8.2.4': - resolution: {integrity: sha512-l1dlzWBBkR/5aullsX8N1ZbYr2bkeHPAaMCRy1jG5BBA8IHbi55JFwmJ8XF2gXkT2GyAZnePzb43RuLXz4KxFQ==} + '@storybook/addon-actions@8.4.7': + resolution: {integrity: sha512-mjtD5JxcPuW74T6h7nqMxWTvDneFtokg88p6kQ5OnC1M259iAXb//yiSZgu/quunMHPCXSiqn4FNOSgASTSbsA==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-backgrounds@8.2.4': - resolution: {integrity: sha512-4oU25rFyr4OgMxHe4RpLJ7lxVwUDfdTi1j/YVyHfYv8koTqjagso8bv0uj0ujP5C3dSsVO0sp3/JOfPDkEUtrA==} + '@storybook/addon-backgrounds@8.4.7': + resolution: {integrity: sha512-I4/aErqtFiazcoWyKafOAm3bLpxTj6eQuH/woSbk1Yx+EzN+Dbrgx1Updy8//bsNtKkcrXETITreqHC+a57DHQ==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-controls@8.2.4': - resolution: {integrity: sha512-e56aUYhxyR8zJJstRAUP3WILhWTcvgRf5bysTtiyjFAL7U47cuCr043+IYEsxLkXhuZTKX2pcYSrjBtT5bYkVA==} + '@storybook/addon-controls@8.4.7': + resolution: {integrity: sha512-377uo5IsJgXLnQLJixa47+11V+7Wn9KcDEw+96aGCBCfLbWNH8S08tJHHnSu+jXg9zoqCAC23MetntVp6LetHA==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-designs@8.0.3': - resolution: {integrity: sha512-uArLGYDwiRDjgJHgMotOLGGYK4hq1hBb0PfTJrlBnPy6evky9khrqf4KmXrIh4ViOyZ5t01THe1DnBj52DwrEQ==} + '@storybook/addon-designs@8.0.4': + resolution: {integrity: sha512-BrEWks1BRnZis2e8OoE1LhFS+x2d094Tzpbb3jQBve2IfDv/X006RSuy1WyplNxskdYdBESCH45MlRn4lhP5ew==} peerDependencies: - '@storybook/blocks': ^8.0.0 - '@storybook/components': ^8.0.0 - '@storybook/theming': ^8.0.0 + '@storybook/blocks': ^8.0.0 || ^8.1.0-0 || ^8.2.0-0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 + '@storybook/components': ^8.0.0 || ^8.1.0-0 || ^8.2.0-0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 + '@storybook/theming': ^8.0.0 || ^8.1.0-0 || ^8.2.0-0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: @@ -5316,103 +4910,95 @@ packages: react-dom: optional: true - '@storybook/addon-docs@8.2.4': - resolution: {integrity: sha512-oyrDw4nGfntu5Hkhr2Qt1wUOyLaVVERQekYyejyir92QhM10UeA7ZarPXNLfCTj7rbTrWmM1Waka9Tsf8TGMrw==} + '@storybook/addon-docs@8.4.7': + resolution: {integrity: sha512-NwWaiTDT5puCBSUOVuf6ME7Zsbwz7Y79WF5tMZBx/sLQ60vpmJVQsap6NSjvK1Ravhc21EsIXqemAcBjAWu80w==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-essentials@8.2.4': - resolution: {integrity: sha512-4upNauDJAJxauxnoUpUvzDnLo18C2yTVxgg+Id9wrKpt9C+CYH2oXyXzxoYGucYWZEe7zgCO6rWrGrKEisiLPQ==} + '@storybook/addon-essentials@8.4.7': + resolution: {integrity: sha512-+BtZHCBrYtQKILtejKxh0CDRGIgTl9PumfBOKRaihYb4FX1IjSAxoV/oo/IfEjlkF5f87vouShWsRa8EUauFDw==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-highlight@8.2.4': - resolution: {integrity: sha512-Ll/2y0m/q9ko9jFt40qsiee4fds6vpcwwxi3mPAVwRV/J7PpMzPkoLxM54bKpeHiWdTeGCXRguXNvyeQMQf3pg==} + '@storybook/addon-highlight@8.4.7': + resolution: {integrity: sha512-whQIDBd3PfVwcUCrRXvCUHWClXe9mQ7XkTPCdPo4B/tZ6Z9c6zD8JUHT76ddyHivixFLowMnA8PxMU6kCMAiNw==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-interactions@8.2.4': - resolution: {integrity: sha512-jGGTCKfqZzq3DSZF+cimD8FBcO8X9yu/cNTcxHtx6TN9McV69sTiSzOpGgbWkLjLjP0XU12NQGqFw38tIn7n9Q==} + '@storybook/addon-interactions@8.4.7': + resolution: {integrity: sha512-fnufT3ym8ht3HHUIRVXAH47iOJW/QOb0VSM+j269gDuvyDcY03D1civCu1v+eZLGaXPKJ8vtjr0L8zKQ/4P0JQ==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-links@8.2.4': - resolution: {integrity: sha512-1FgD6YXdXXSEDrp2aO4LxYt/X7LnBYx7cLlFla+xbn1CZLGqWLLeOT+BFd29wxpzs3u1Tap9r1iz1vRYL5ziyg==} + '@storybook/addon-links@8.4.7': + resolution: {integrity: sha512-L/1h4dMeMKF+MM0DanN24v5p3faNYbbtOApMgg7SlcBT/tgo3+cAjkgmNpYA8XtKnDezm+T2mTDhB8mmIRZpIQ==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.4 + storybook: ^8.4.7 peerDependenciesMeta: react: optional: true - '@storybook/addon-measure@8.2.4': - resolution: {integrity: sha512-bSyE3mGDaaIKoe6Kt/f20YXKsn8WSoJUHrfKA68gbb+H3tegVQaqeS2KY5YzLqvjHe1qSmrO132NJt8RixLOPQ==} + '@storybook/addon-measure@8.4.7': + resolution: {integrity: sha512-QfvqYWDSI5F68mKvafEmZic3SMiK7zZM8VA0kTXx55hF/+vx61Mm0HccApUT96xCXIgmwQwDvn9gS4TkX81Dmw==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-outline@8.2.4': - resolution: {integrity: sha512-1C6NrvSDREgCZ7o/1n7Ca81uDDzrSrzWiOkh4OeA7PPQ/445cAOX2OMvxzNkKDIT9GLCLNi9M5XIVyGxJVS4dQ==} + '@storybook/addon-outline@8.4.7': + resolution: {integrity: sha512-6LYRqUZxSodmAIl8icr585Oi8pmzbZ90aloZJIpve+dBAzo7ydYrSQxxoQEVltXbKf3VeVcrs64ouAYqjisMYA==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-themes@8.2.4': - resolution: {integrity: sha512-IPOu3dOnJdQbebCNSgXSa8KW5dalHPJU6wdqsAtwaWH4xtJ+nGdNzRWroVkbC6Q1pyjaELgAywS1aMqqukJLDQ==} + '@storybook/addon-themes@8.4.7': + resolution: {integrity: sha512-MZa3eWTz0b3BQvF71WqLqvEYzDtbMhQx1IIluWBMMGzJ4sWBzLX85LoNMUlHsNd4EhEmAZ1xQQFIJpDWTBx0nQ==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-toolbars@8.2.4': - resolution: {integrity: sha512-iPnSr+hdz40Uoqg2cimyWf01/Y8GdgdMKB+b47TGIxtn9SEFBXck00ZG8ttwBvEsecu9K9CDt20fIOnr6oK5tQ==} + '@storybook/addon-toolbars@8.4.7': + resolution: {integrity: sha512-OSfdv5UZs+NdGB+nZmbafGUWimiweJ/56gShlw8Neo/4jOJl1R3rnRqqY7MYx8E4GwoX+i3GF5C3iWFNQqlDcw==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/addon-viewport@8.2.4': - resolution: {integrity: sha512-58DcoX0xGpWlJfc0iLDjggkVPYzT4JdCZA2ioK9SQXQMsUzGFwR5PAAJv1tivYp7467tNkXvcM3QTb3Q3g8p4g==} + '@storybook/addon-viewport@8.4.7': + resolution: {integrity: sha512-hvczh/jjuXXcOogih09a663sRDDSATXwbE866al1DXgbDFraYD/LxX/QDb38W9hdjU9+Qhx8VFIcNWoMQns5HQ==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/blocks@8.2.4': - resolution: {integrity: sha512-Hl2Dpg41YiJLSVXxjEJPjgPShrDJM3RY6HEEOjqTcAADsheX1IHAWXMJSJGMmne3Sew6VdJXPuHBIOFV4suZxg==} + '@storybook/blocks@8.4.7': + resolution: {integrity: sha512-+QH7+JwXXXIyP3fRCxz/7E2VZepAanXJM7G8nbR3wWsqWgrRp4Wra6MvybxAYCxU7aNfJX5c+RW84SNikFpcIA==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.4 + storybook: ^8.4.7 peerDependenciesMeta: react: optional: true react-dom: optional: true - '@storybook/builder-vite@8.2.4': - resolution: {integrity: sha512-hDx0ZLcnFrIJaVoFMu41d9w1uWmwy/DDUuIbSd0T7xHwWyVqgI8lmaQlBIp81/QmSKaUB964UduHcdIjkoWoYA==} + '@storybook/builder-vite@8.4.7': + resolution: {integrity: sha512-LovyXG5VM0w7CovI/k56ZZyWCveQFVDl0m7WwetpmMh2mmFJ+uPQ35BBsgTvTfc8RHi+9Q3F58qP1MQSByXi9g==} peerDependencies: - '@preact/preset-vite': '*' - storybook: ^8.2.4 - typescript: '>= 4.3.x' - vite: ^4.0.0 || ^5.0.0 - vite-plugin-glimmerx: '*' - peerDependenciesMeta: - '@preact/preset-vite': - optional: true - typescript: - optional: true - vite-plugin-glimmerx: - optional: true - - '@storybook/codemod@8.2.4': - resolution: {integrity: sha512-QcZdqjX4NvkVcWR3yI9it3PfqmBOCR+3iY6j4PmG7p5IE0j9kXMKBbeFrBRprSijHKlwcjbc3bRx2SnKF6AFEg==} + storybook: ^8.4.7 + vite: ^4.0.0 || ^5.0.0 || ^6.0.0 - '@storybook/components@8.2.4': - resolution: {integrity: sha512-JLT1RoR/RXX+ZTeFoY85CRHb9Zz3l0PRRUSetEjoIJdnBGeL5C38bs0s9QnYjpCDLUlhdYhTln+GzmbyH8ocpA==} + '@storybook/components@8.4.7': + resolution: {integrity: sha512-uyJIcoyeMWKAvjrG9tJBUCKxr2WZk+PomgrgrUwejkIfXMO76i6jw9BwLa0NZjYdlthDv30r9FfbYZyeNPmF0g==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - '@storybook/core@8.2.4': - resolution: {integrity: sha512-jePmsGZT2hhUNQs8ED6+hFVt2m4hrMseO8kkN7Mcsve1MIujzHUS7Gjo4uguBwHJJOtiXB2fw4OSiQCmsXscZA==} + '@storybook/core@8.4.7': + resolution: {integrity: sha512-7Z8Z0A+1YnhrrSXoKKwFFI4gnsLbWzr8fnDCU6+6HlDukFYh8GHRcZ9zKfqmy6U3hw2h8H5DrHsxWfyaYUUOoA==} + peerDependencies: + prettier: ^2 || ^3 + peerDependenciesMeta: + prettier: + optional: true - '@storybook/csf-plugin@8.2.4': - resolution: {integrity: sha512-7V2tmeyAwv4/AQiBpB+7fCpphnY1yhcz+Zv9esUOHKqFn5+7u9FKpEXFFcf6fcbqXr2KoNw2F1EnTv3K/SxXrg==} + '@storybook/csf-plugin@8.4.7': + resolution: {integrity: sha512-Fgogplu4HImgC+AYDcdGm1rmL6OR1rVdNX1Be9C/NEXwOCpbbBwi0BxTf/2ZxHRk9fCeaPEcOdP5S8QHfltc1g==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 '@storybook/csf@0.1.11': resolution: {integrity: sha512-dHYFQH3mA+EtnCkHXzicbLgsvzYjcDJ1JWsogbItZogkPHgSJM/Wr71uMkcvw8v9mmCyP4NpXJuu6bPoVsOnzg==} @@ -5420,69 +5006,72 @@ packages: '@storybook/global@5.0.0': resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==} - '@storybook/icons@1.2.9': - resolution: {integrity: sha512-cOmylsz25SYXaJL/gvTk/dl3pyk7yBFRfeXTsHvTA3dfhoU/LWSq0NKL9nM7WBasJyn6XPSGnLS4RtKXLw5EUg==} + '@storybook/icons@1.3.0': + resolution: {integrity: sha512-Nz/UzeYQdUZUhacrPyfkiiysSjydyjgg/p0P9HxB4p/WaJUUjMAcaoaLgy3EXx61zZJ3iD36WPuDkZs5QYrA0A==} engines: {node: '>=14.0.0'} peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - '@storybook/instrumenter@8.2.4': - resolution: {integrity: sha512-szcRjg7XhtobDW4omexWqBRlmRyrKW9p8uF9k6hanJqhHl4iG9D8xbi3SdaRhcn5KN1Wqv6RDAB+kXzHlFfdKA==} + '@storybook/instrumenter@8.4.7': + resolution: {integrity: sha512-k6NSD3jaRCCHAFtqXZ7tw8jAzD/yTEWXGya+REgZqq5RCkmJ+9S4Ytp/6OhQMPtPFX23gAuJJzTQVLcCr+gjRg==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/manager-api@8.2.4': - resolution: {integrity: sha512-ayiOtcGupSeLCi2doEsRpALNPo4MBWYruc+e3jjkeVJQIg9A1ipSogNQh8unuOmq9rezO4/vcNBd6MxLs3xLWg==} + '@storybook/manager-api@8.4.7': + resolution: {integrity: sha512-ELqemTviCxAsZ5tqUz39sDmQkvhVAvAgiplYy9Uf15kO0SP2+HKsCMzlrm2ue2FfkUNyqbDayCPPCB0Cdn/mpQ==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - '@storybook/preview-api@8.2.4': - resolution: {integrity: sha512-IxOiUYYzNnk1OOz3zQBhsa3P1fsgqeMBZcH7TjiQWs9osuWG20oqsFR6+Z3dxoW8IuQHvpnREGKvAbRsDsThcA==} + '@storybook/preview-api@8.4.7': + resolution: {integrity: sha512-0QVQwHw+OyZGHAJEXo6Knx+6/4er7n2rTDE5RYJ9F2E2Lg42E19pfdLlq2Jhoods2Xrclo3wj6GWR//Ahi39Eg==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - '@storybook/react-dom-shim@8.2.4': - resolution: {integrity: sha512-p2ypPWuKKFY/ij7yYjvdnrOcfdpxnAJd9D4/2Hm2eVioE4y8HQSND54t9OfkW+498Ez7ph4zW9ez005XqzH/+w==} + '@storybook/react-dom-shim@8.4.7': + resolution: {integrity: sha512-6bkG2jvKTmWrmVzCgwpTxwIugd7Lu+2btsLAqhQSzDyIj2/uhMNp8xIMr/NBDtLgq3nomt9gefNa9xxLwk/OMg==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.4 + storybook: ^8.4.7 - '@storybook/react-vite@8.2.4': - resolution: {integrity: sha512-4nDZC4uJKV6YCVzT/es0abQnd28CuU3cN4nyzxaBbI/XtCvYzkT7KLEo8csaS+1o1uEb8lY3ZLZ2a3jYlVPNJA==} + '@storybook/react-vite@8.4.7': + resolution: {integrity: sha512-iiY9iLdMXhDnilCEVxU6vQsN72pW3miaf0WSenOZRyZv3HdbpgOxI0qapOS0KCyRUnX9vTlmrSPTMchY4cAeOg==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.4 - vite: ^4.0.0 || ^5.0.0 + storybook: ^8.4.7 + vite: ^4.0.0 || ^5.0.0 || ^6.0.0 - '@storybook/react@8.2.4': - resolution: {integrity: sha512-tRkEeFhwq2GeRsPwFc8dINI5L4mXanXaa7/JreB6ZcUeOZD8d81TWXCH9QyGvxfe0LW+DeNujA91mx5Yja35Zw==} + '@storybook/react@8.4.7': + resolution: {integrity: sha512-nQ0/7i2DkaCb7dy0NaT95llRVNYWQiPIVuhNfjr1mVhEP7XD090p0g7eqUmsx8vfdHh2BzWEo6CoBFRd3+EXxw==} engines: {node: '>=18.0.0'} peerDependencies: + '@storybook/test': 8.4.7 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.2.4 + storybook: ^8.4.7 typescript: '>= 4.2.x' peerDependenciesMeta: + '@storybook/test': + optional: true typescript: optional: true - '@storybook/test@8.2.4': - resolution: {integrity: sha512-boFjNFja4BNSbQhvmMlTVdQmZh36iM9+8w0sb7IK2e9Xnoi4+utupPNwBLvSsw4bRayK8+mP4Vk46O8h3TaiMw==} + '@storybook/test@8.4.7': + resolution: {integrity: sha512-AhvJsu5zl3uG40itSQVuSy5WByp3UVhS6xAnme4FWRwgSxhvZjATJ3AZkkHWOYjnnk+P2/sbz/XuPli1FVCWoQ==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.4.7 '@storybook/testing-library@0.2.2': resolution: {integrity: sha512-L8sXFJUHmrlyU2BsWWZGuAjv39Jl1uAqUHdxmN42JY15M4+XCMjGlArdCCjDe1wpTSW6USYISA9axjZojgtvnw==} deprecated: In Storybook 8, this package functionality has been integrated to a new package called @storybook/test, which uses Vitest APIs for an improved experience. When upgrading to Storybook 8 with 'npx storybook@latest upgrade', you will get prompted and will get an automigration for the new package. Please migrate when you can. - '@storybook/theming@8.2.4': - resolution: {integrity: sha512-B4HQMzTeg1TgV9uPDIoDkMSnP839Y05I9+Tw60cilAD+jTqrCvMlccHfehsTzJk+gioAflunATcbU05TMZoeIQ==} + '@storybook/theming@8.4.7': + resolution: {integrity: sha512-99rgLEjf7iwfSEmdqlHkSG3AyLcK0sfExcr0jnc6rLiAkBhzuIsvcHjjUwkR210SOCgXqBPW0ZA6uhnuyppHLw==} peerDependencies: - storybook: ^8.2.4 + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 '@svgr/babel-plugin-add-jsx-attribute@8.0.0': resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==} @@ -5576,13 +5165,18 @@ packages: react: '>=16.8' react-dom: '>=16.8' + '@tanstack/react-virtual@3.11.1': + resolution: {integrity: sha512-orn2QNe5tF6SqjucHJ6cKTKcRDe3GG7bcYqPNn72Yejj7noECdzgAyRfGt2pGDPemhYim3d1HIR/dgruCnLfUA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + '@tanstack/table-core@8.20.5': resolution: {integrity: sha512-P9dF7XbibHph2PFRz8gfBKEXEY/HJPOhym8CHmjF8y3q5mWpKx9xtZapXQUWCgkqvsK0R46Azuz+VaxD4Xl+Tg==} engines: {node: '>=12'} - '@testing-library/dom@10.1.0': - resolution: {integrity: sha512-wdsYKy5zupPyLCW2Je5DLHSxSfbIp6h80WoHOQc+RPtmPGA52O9x5MJEkv92Sjonpq+poOAtUKhh1kBGAXBrNA==} - engines: {node: '>=18'} + '@tanstack/virtual-core@3.10.9': + resolution: {integrity: sha512-kBknKOKzmeR7lN+vSadaKWXaLS0SZZG+oqpQ/k80Q6g9REn6zRHS/ZYdrIzHnpHgy/eWs00SujveUN/GJT2qTw==} '@testing-library/dom@10.4.0': resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==} @@ -5592,26 +5186,9 @@ packages: resolution: {integrity: sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==} engines: {node: '>=14'} - '@testing-library/jest-dom@6.4.5': - resolution: {integrity: sha512-AguB9yvTXmCnySBP1lWjfNNUwpbElsaQ567lt2VdGqAdHtpieLgjmcVyv1q7PMIvLbgpDdkWV5Ydv3FEejyp2A==} + '@testing-library/jest-dom@6.5.0': + resolution: {integrity: sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==} engines: {node: '>=14', npm: '>=6', yarn: '>=1'} - peerDependencies: - '@jest/globals': '>= 28' - '@types/bun': latest - '@types/jest': '>= 28' - jest: '>= 28' - vitest: '>= 0.32' - peerDependenciesMeta: - '@jest/globals': - optional: true - '@types/bun': - optional: true - '@types/jest': - optional: true - jest: - optional: true - vitest: - optional: true '@testing-library/jest-dom@6.6.3': resolution: {integrity: sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA==} @@ -5697,15 +5274,9 @@ packages: '@types/base16@1.0.5': resolution: {integrity: sha512-OzOWrTluG9cwqidEzC/Q6FAmIPcnZfm8BFRlIx0+UIUqnuAmi5OS88O0RpT3Yz6qdmqObvUhasrbNsCofE4W9A==} - '@types/body-parser@1.19.5': - resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} - '@types/brainhubeu__react-carousel@1.15.0': resolution: {integrity: sha512-dUwOz4LkUhbqiGH8+ud8L1ygfNZ01Z6lmU0tJkikF51TH/9g14dg6cJE5tLnDCxkpnJm1/0xv0+aRYSsg1xvLg==} - '@types/connect@3.4.38': - resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} - '@types/cookie@0.3.3': resolution: {integrity: sha512-LKVP3cgXBT9RYj+t+9FDKwS5tdI+rPBXaNSkma7hvqy35lc7mAokC2zsqWJH0LaqIt3B962nuYI77hsJoT1gow==} @@ -5715,9 +5286,6 @@ packages: '@types/cookie@0.6.0': resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} - '@types/cross-spawn@6.0.6': - resolution: {integrity: sha512-fXRhhUkG4H3TQk5dBhQ7m/JDdSNHKwR2BBia62lhwEIq9xGiQKLxd6LymNhn47SjXhsUEPmxi+PKw2OkW4LLjA==} - '@types/d3-array@3.2.1': resolution: {integrity: sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg==} @@ -5820,42 +5388,21 @@ packages: '@types/doctrine@0.0.9': resolution: {integrity: sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==} - '@types/emscripten@1.39.10': - resolution: {integrity: sha512-TB/6hBkYQJxsZHSqyeuO1Jt0AB/bW6G7rHt9g7lML7SOF6lbgcHvw/Lr+69iqN0qxgXLhWKScAon73JNnptuDw==} - - '@types/escodegen@0.0.6': - resolution: {integrity: sha512-AjwI4MvWx3HAOaZqYsjKWyEObT9lcVV0Y0V8nXo6cXzN8ZiMxVhf6F3d/UNvXVGKrEzL/Dluc5p+y9GkzlTWig==} - '@types/eslint-scope@3.7.7': resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==} '@types/eslint@8.56.10': resolution: {integrity: sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==} - '@types/estree@0.0.51': - resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==} - '@types/estree@1.0.5': resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} - '@types/express-serve-static-core@4.17.43': - resolution: {integrity: sha512-oaYtiBirUOPQGSWNGPWnzyAFJ0BP3cwvN4oWZQY+zUBwpVIGsKUkpBpSztp74drYcjavs7SKFZ4DX1V2QeN8rg==} - - '@types/express@4.17.21': - resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} - - '@types/find-cache-dir@3.2.1': - resolution: {integrity: sha512-frsJrz2t/CeGifcu/6uRo4b+SzAwT4NYCVPu1GN8IB9XTzrpPkGuV0tmh9mN+/L0PklAlsC3u5Fxt0ju00LXIw==} - '@types/geojson@7946.0.14': resolution: {integrity: sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg==} - '@types/glob@7.2.0': - resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} - '@types/google.maps@3.55.2': resolution: {integrity: sha512-JcTwzkxskR8DN/nnX96Pie3gGN3WHiPpuxzuQ9z3516o1bB243d8w8DHUJ8BohuzoT1o3HUFta2ns/mkZC8KRw==} @@ -5865,18 +5412,12 @@ packages: '@types/graceful-fs@4.1.9': resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==} - '@types/hast@3.0.4': - resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} - '@types/history@4.7.11': resolution: {integrity: sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==} '@types/hoist-non-react-statics@3.3.5': resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} - '@types/http-errors@2.0.4': - resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} - '@types/invariant@2.2.37': resolution: {integrity: sha512-IwpIMieE55oGWiXkQPSBY1nw1nFs6bsKXTFskNY8sdS17K24vyEBRQZEwlRS7ZmXCWnJcQtbxWzly+cODWGs2A==} @@ -5941,15 +5482,6 @@ packages: '@types/mdx@2.0.11': resolution: {integrity: sha512-HM5bwOaIQJIQbAYfax35HCKxx7a3KrK3nBtIqJgSOitivTD1y3oW9P3rxY9RkXYPUk7y/AjAohfHKmFpGE79zw==} - '@types/mime@1.3.5': - resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} - - '@types/mime@3.0.4': - resolution: {integrity: sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw==} - - '@types/minimatch@5.1.2': - resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} - '@types/minimist@1.2.5': resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} @@ -5959,9 +5491,6 @@ packages: '@types/mute-stream@0.0.4': resolution: {integrity: sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==} - '@types/node@18.19.39': - resolution: {integrity: sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ==} - '@types/node@20.14.10': resolution: {integrity: sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==} @@ -5986,12 +5515,6 @@ packages: '@types/qrcode@1.5.5': resolution: {integrity: sha512-CdfBi/e3Qk+3Z/fXYShipBT13OJ2fDO2Q2w5CIP5anLTLIndQG9z6P1cnm+8zCWSpm5dnxMFd/uREtb0EXuQzg==} - '@types/qs@6.9.12': - resolution: {integrity: sha512-bZcOkJ6uWrL0Qb2NAWKa7TBU+mJHPzhx9jjLL1KHF+XpzEcR7EXHvjbHlGtR/IsP1vyPrehuS6XqkmaePy//mg==} - - '@types/range-parser@1.2.7': - resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} - '@types/react-addons-css-transition-group@15.0.10': resolution: {integrity: sha512-AYYMb4+jsgHPsxst7e8WuWVp8qAwp9YV16FJdEXILAsp7SFKIRln1hlrw9fRKUJYte3SKqiNZ8riRXvP2WtLlA==} @@ -6036,15 +5559,6 @@ packages: '@types/resolve@1.20.6': resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==} - '@types/semver@7.5.8': - resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} - - '@types/send@0.17.4': - resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} - - '@types/serve-static@1.15.5': - resolution: {integrity: sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==} - '@types/set-cookie-parser@2.4.7': resolution: {integrity: sha512-+ge/loa0oTozxip6zmhRIk8Z/boU51wl9Q6QdLZcokIGMzY5lFXYy/x7Htj2HTC6/KZP1hUbZ1ekx8DYXICvWg==} @@ -6075,9 +5589,6 @@ packages: '@types/ua-parser-js@0.7.39': resolution: {integrity: sha512-P/oDfpofrdtF5xw433SPALpdSchtJmY7nsJItf8h3KXqOslkbySh8zq4dSWXH2oTjRvJ5PczVEoCZPow6GicLg==} - '@types/unist@3.0.2': - resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==} - '@types/uuid@9.0.8': resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} @@ -6185,9 +5696,6 @@ packages: resolution: {integrity: sha512-pq19gbaMOmFE3CbL0ZB8J8BFCo2ckfHBfaIsaOZgBIF4EoISJIdLX5xRhd0FGB0LlHReNRuzoJoMGpTjq8F2CQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@ungap/structured-clone@1.2.0': - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - '@upsetjs/model@1.11.0': resolution: {integrity: sha512-pQEdunei2WC9mdhFR6umzE45j8VJfei/cG0TyVaaC0YE5zh1WI/TJRJJQC5jCiGhylISy99ANJs6XmQI33lqCw==} @@ -6210,6 +5718,15 @@ packages: '@vitest/expect@1.6.0': resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==} + '@vitest/expect@2.0.5': + resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==} + + '@vitest/pretty-format@2.0.5': + resolution: {integrity: sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==} + + '@vitest/pretty-format@2.1.8': + resolution: {integrity: sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==} + '@vitest/runner@1.6.0': resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==} @@ -6219,6 +5736,9 @@ packages: '@vitest/spy@1.6.0': resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==} + '@vitest/spy@2.0.5': + resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} + '@vitest/ui@1.6.0': resolution: {integrity: sha512-k3Lyo+ONLOgylctiGovRKy7V4+dIN2yxstX3eY5cWFXH6WP+ooVX79YSyi0GagdTQzLmT43BF27T0s6dOIPBXA==} peerDependencies: @@ -6227,6 +5747,12 @@ packages: '@vitest/utils@1.6.0': resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} + '@vitest/utils@2.0.5': + resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} + + '@vitest/utils@2.1.8': + resolution: {integrity: sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==} + '@volar/language-core@2.4.5': resolution: {integrity: sha512-F4tA0DCO5Q1F5mScHmca0umsi2ufKULAnMOVBfMsZdT4myhVl4WdKRwCaKcfOkIEuyrAVvtq1ESBdZ+rSyLVww==} @@ -6316,14 +5842,6 @@ packages: '@xtuc/long@4.2.2': resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - '@yarnpkg/fslib@2.10.3': - resolution: {integrity: sha512-41H+Ga78xT9sHvWLlFOZLIhtU6mTGZ20pZ29EiZa97vnxdohJD2AF42rCoAoWfqUz486xY6fhjMH+DYEM9r14A==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - - '@yarnpkg/libzip@2.3.0': - resolution: {integrity: sha512-6xm38yGVIa6mKm/DUCF2zFFJhERh/QWp1ufm4cNUvxsONBmfPg8uZ9pZBdOmF6qFGr/HlT6ABBkCSx/dlEtvWg==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - '@yarnpkg/lockfile@1.1.0': resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==} @@ -6345,10 +5863,6 @@ packages: abs-svg-path@0.1.1: resolution: {integrity: sha512-d8XPSGjfyzlXC3Xx891DJRyZfqk5JU0BJrDQcsWomFIV1/BIzPW5HDH5iDdWpqWaav0YVIEzT1RHTwWr0FFshA==} - accepts@1.3.8: - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} - engines: {node: '>= 0.6'} - acorn-globals@7.0.1: resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==} @@ -6362,10 +5876,6 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn-walk@7.2.0: - resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} - engines: {node: '>=0.4.0'} - acorn-walk@8.3.3: resolution: {integrity: sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==} engines: {node: '>=0.4.0'} @@ -6528,9 +6038,6 @@ packages: resolution: {integrity: sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==} engines: {node: '>=0.10.0'} - array-flatten@1.1.1: - resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} - array-includes@3.1.8: resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} engines: {node: '>= 0.4'} @@ -6587,6 +6094,10 @@ packages: assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + assertion-error@2.0.1: + resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} + engines: {node: '>=12'} + ast-types@0.16.1: resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==} engines: {node: '>=4'} @@ -6607,11 +6118,6 @@ packages: axios@1.7.7: resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==} - babel-core@7.0.0-bridge.0: - resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - babel-jest@29.7.0: resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -6642,11 +6148,6 @@ packages: peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - babel-plugin-polyfill-corejs3@0.10.4: - resolution: {integrity: sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - babel-plugin-polyfill-corejs3@0.10.6: resolution: {integrity: sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==} peerDependencies: @@ -6694,6 +6195,10 @@ packages: batch-processor@1.0.0: resolution: {integrity: sha512-xoLQD8gmmR32MeuBHgH0Tzd5PuSZx71ZsbhVxOCRbgktZEPe4SQy7s9Z50uPp0F/f7iw2XmkHN2xkgbMfckMDA==} + better-opn@3.0.2: + resolution: {integrity: sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==} + engines: {node: '>=12.0.0'} + binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} @@ -6719,10 +6224,6 @@ packages: bn.js@5.2.1: resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} - body-parser@1.20.2: - resolution: {integrity: sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -6834,10 +6335,6 @@ packages: peerDependencies: esbuild: '>=0.17' - bytes@3.1.2: - resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} - engines: {node: '>= 0.8'} - c8@8.0.1: resolution: {integrity: sha512-EINpopxZNH1mETuI0DzRA4MZpAUH+IFiRhnmFD3vFr3vdrgxqi3VfE3KL0AIL+zDq8rC9bZqwM/VDmmoe04y7w==} engines: {node: '>=12'} @@ -6889,6 +6386,10 @@ packages: resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} engines: {node: '>=4'} + chai@5.1.2: + resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==} + engines: {node: '>=12'} + chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -6915,6 +6416,10 @@ packages: check-error@1.0.3: resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + check-error@2.1.1: + resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} + engines: {node: '>= 16'} + chokidar@3.5.3: resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} engines: {node: '>= 8.10.0'} @@ -6923,10 +6428,6 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} - chownr@2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} - chromatic@11.0.8: resolution: {integrity: sha512-+zJ5h0/Eu5z26KCNLIw2tknbK69gUO8q3Jsew4oU0Q/i/NPhIwcXhvPP7u75aLJgX1EI61+ndiGJA/yeQZQcgw==} hasBin: true @@ -6950,9 +6451,6 @@ packages: cipher-base@1.0.4: resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==} - citty@0.1.6: - resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==} - cjs-module-lexer@1.2.3: resolution: {integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==} @@ -7104,10 +6602,6 @@ packages: resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} engines: {node: '>= 6'} - commander@6.2.1: - resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} - engines: {node: '>= 6'} - commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} @@ -7119,9 +6613,6 @@ packages: common-path-prefix@3.0.0: resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==} - commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - compare-versions@4.1.4: resolution: {integrity: sha512-FemMreK9xNyL8gQevsdRMrvO4lFCkQP7qbuktn1q8ndcNk1+0mz7lgE7b/sNvbhVgY4w6tMN1FDp6aADjqw2rw==} @@ -7162,10 +6653,6 @@ packages: consola@2.15.3: resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==} - consola@3.2.3: - resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} - engines: {node: ^14.18.0 || >=16.10.0} - console-browserify@1.2.0: resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==} @@ -7176,23 +6663,12 @@ packages: constants-browserify@1.0.0: resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==} - content-disposition@0.5.4: - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} - engines: {node: '>= 0.6'} - - content-type@1.0.5: - resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} - engines: {node: '>= 0.6'} - convert-source-map@1.9.0: resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - cookie-signature@1.0.6: - resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - cookie@0.4.2: resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} engines: {node: '>= 0.6'} @@ -7201,10 +6677,6 @@ packages: resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} engines: {node: '>= 0.6'} - cookie@0.6.0: - resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} - engines: {node: '>= 0.6'} - copyfiles@2.4.1: resolution: {integrity: sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg==} hasBin: true @@ -7212,9 +6684,6 @@ packages: core-js-compat@3.36.0: resolution: {integrity: sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==} - core-js-compat@3.37.1: - resolution: {integrity: sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==} - core-js-compat@3.38.1: resolution: {integrity: sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==} @@ -7268,10 +6737,6 @@ packages: crypto-browserify@3.12.0: resolution: {integrity: sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==} - crypto-random-string@4.0.0: - resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} - engines: {node: '>=12'} - css-font-size-keywords@1.0.0: resolution: {integrity: sha512-Q+svMDbMlelgCfH/RVDKtTDaf5021O486ZThQPIpahnIjUkMUslC+WuOQSWTgGSrNCH08Y7tYNEmmy0hkfMI8Q==} @@ -7540,6 +7005,10 @@ packages: resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} engines: {node: '>=6'} + deep-eql@5.0.2: + resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} + engines: {node: '>=6'} + deep-equal@2.2.3: resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==} engines: {node: '>= 0.4'} @@ -7569,17 +7038,10 @@ packages: defined@1.0.1: resolution: {integrity: sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==} - defu@6.1.4: - resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} - delayed-stream@1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} - depd@2.0.0: - resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} - engines: {node: '>= 0.8'} - dequal@2.0.3: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} @@ -7587,14 +7049,6 @@ packages: des.js@1.1.0: resolution: {integrity: sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==} - destroy@1.2.0: - resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - - detect-indent@6.1.0: - resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} - engines: {node: '>=8'} - detect-kerning@2.1.2: resolution: {integrity: sha512-I3JIbrnKPAntNLl1I6TpSQQdQ4AutYzv/sKMFKbepawV/hlH0GmYKhUoOEMd4xqaUHT+Bm0f4127lh5qs1m1tw==} @@ -7735,9 +7189,6 @@ packages: easy-table@1.1.0: resolution: {integrity: sha512-oq33hWOSSnl2Hoh00tZWaIPi1ievrD9aFG82/IgjlycAnW9hHx5PkJiXpxPsgEE+H7BsbVQXFVFST8TEXS6/pA==} - ee-first@1.1.1: - resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - ejs@3.1.10: resolution: {integrity: sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==} engines: {node: '>=0.10.0'} @@ -7780,10 +7231,6 @@ packages: encode-utf8@1.0.3: resolution: {integrity: sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==} - encodeurl@1.0.2: - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} - engines: {node: '>= 0.8'} - encoding@0.1.13: resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} @@ -7809,11 +7256,6 @@ packages: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} - envinfo@7.11.1: - resolution: {integrity: sha512-8PiZgZNIB4q/Lw4AhOvAfB/ityHAd2bli3lESSWmWSzSsl5dKpy5N1d1Rfkd2teq/g9xN90lc6o98DOjMeYHpg==} - engines: {node: '>=4'} - hasBin: true - environment@1.1.0: resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} engines: {node: '>=18'} @@ -8124,10 +7566,6 @@ packages: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} - etag@1.8.1: - resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} - engines: {node: '>= 0.6'} - event-emitter@0.3.5: resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} @@ -8161,10 +7599,6 @@ packages: resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - express@4.19.2: - resolution: {integrity: sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==} - engines: {node: '>= 0.10.0'} - ext@1.7.0: resolution: {integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==} @@ -8208,9 +7642,6 @@ packages: fb-watchman@2.0.2: resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} - fd-package-json@1.2.0: - resolution: {integrity: sha512-45LSPmWf+gC5tdCQMNH4s9Sr00bIkiD9aN7dc5hqkrEw1geRYyDQS1v1oMHAW3ysfxfndqGsrDREHHjNNbKUfA==} - fflate@0.8.2: resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} @@ -8233,18 +7664,6 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} - finalhandler@1.2.0: - resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} - engines: {node: '>= 0.8'} - - find-cache-dir@2.1.0: - resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} - engines: {node: '>=6'} - - find-cache-dir@3.3.2: - resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} - engines: {node: '>=8'} - find-cache-dir@4.0.0: resolution: {integrity: sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==} engines: {node: '>=14.16'} @@ -8252,10 +7671,6 @@ packages: find-root@1.1.0: resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} - find-up@3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} - find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -8282,10 +7697,6 @@ packages: flatten-vertex-data@1.0.2: resolution: {integrity: sha512-BvCBFK2NZqerFTdMDgqfHBwxYWnxeCkwONsw6PvBMcUXqo8U/KDWwmXhqx1x2kLIg7DqIsJfOaJFOmlua3Lxuw==} - flow-parser@0.230.0: - resolution: {integrity: sha512-ZAfKaarESYYcP/RoLdM91vX0u/1RR7jI5TJaFLnxwRlC2mp0o+Rw7ipIY7J6qpIpQYtAobWb/J6S0XPeu0gO8g==} - engines: {node: '>=0.4.0'} - follow-redirects@1.15.9: resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} engines: {node: '>=4.0'} @@ -8316,14 +7727,6 @@ packages: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} - forwarded@0.2.0: - resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} - engines: {node: '>= 0.6'} - - fresh@0.5.2: - resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} - engines: {node: '>= 0.6'} - from2@2.3.0: resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==} @@ -8345,10 +7748,6 @@ packages: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} - fs-minipass@2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} - fs-monkey@1.0.5: resolution: {integrity: sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==} @@ -8435,13 +7834,6 @@ packages: get-uv-event-loop-napi-h@1.0.6: resolution: {integrity: sha512-t5c9VNR84nRoF+eLiz6wFrEp1SE2Acg0wS+Ysa2zF0eROes+LzOfuTaVHxGy8AbS8rq7FHEJzjnCZo1BupwdJg==} - giget@1.2.1: - resolution: {integrity: sha512-4VG22mopWtIeHwogGSy1FViXVo0YT+m6BrqZfz0JJFwbSsePsCdOzdLIIli5BtMp7Xe8f/o2OmBpQX2NBOC24g==} - hasBin: true - - github-slugger@2.0.0: - resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} - gl-mat4@1.2.0: resolution: {integrity: sha512-sT5C0pwB1/e9G9AvAoLsoaJtbMGjfd/jfxo8jMCKqYYEnjZuFvqV5rehqar0538EmssjdDeiEWnKyBSTw7quoA==} @@ -8462,12 +7854,6 @@ packages: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} - glob-promise@4.2.2: - resolution: {integrity: sha512-xcUzJ8NWN5bktoTIX7eOclO1Npxd/dyVqUJxlLIDasT4C7KZyqlPIwkdJ0Ypiy3p2ZKahTjK4M9uC3sNSfNMzw==} - engines: {node: '>=12'} - peerDependencies: - glob: ^7.1.6 - glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} @@ -8505,10 +7891,6 @@ packages: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} - globby@14.0.2: - resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==} - engines: {node: '>=18'} - globrex@0.1.2: resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} @@ -8639,15 +8021,6 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} - hast-util-heading-rank@3.0.0: - resolution: {integrity: sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==} - - hast-util-is-element@3.0.0: - resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} - - hast-util-to-string@3.0.0: - resolution: {integrity: sha512-OGkAxX1Ua3cbcW6EJ5pT/tslVb90uViVkcJ4ZZIMW/R33DX/AkcJcRrPebPwJkHYwlDHXz4aIwvAAaAdtrACFA==} - he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true @@ -8679,14 +8052,6 @@ packages: engines: {node: '>=12'} hasBin: true - html-tags@3.3.1: - resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} - engines: {node: '>=8'} - - http-errors@2.0.0: - resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} - engines: {node: '>= 0.8'} - http-proxy-agent@5.0.0: resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==} engines: {node: '>= 6'} @@ -8783,14 +8148,6 @@ packages: invariant@2.2.4: resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} - ipaddr.js@1.9.1: - resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} - engines: {node: '>= 0.10'} - - is-absolute-url@4.0.1: - resolution: {integrity: sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - is-arguments@1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} engines: {node: '>= 0.4'} @@ -8939,10 +8296,6 @@ packages: resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} engines: {node: '>=0.10.0'} - is-plain-object@5.0.0: - resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} - engines: {node: '>=0.10.0'} - is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} @@ -9281,14 +8634,9 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true - jscodeshift@0.15.2: - resolution: {integrity: sha512-FquR7Okgmc4Sd0aEDwqho3rEiKR3BdvuG9jfdHjLJ6JQoWSMpavug3AoIfnfWhxFlf+5pzQh8qjqz0DWFrNQzA==} - hasBin: true - peerDependencies: - '@babel/preset-env': ^7.1.6 - peerDependenciesMeta: - '@babel/preset-env': - optional: true + jsdoc-type-pratt-parser@4.1.0: + resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==} + engines: {node: '>=12.0.0'} jsdom@20.0.3: resolution: {integrity: sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==} @@ -9474,10 +8822,6 @@ packages: resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} engines: {node: '>=14'} - locate-path@3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} - locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -9533,6 +8877,9 @@ packages: loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + loupe@3.1.2: + resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==} + lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} @@ -9564,10 +8911,6 @@ packages: resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} engines: {node: '>=6'} - make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - make-dir@4.0.0: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} engines: {node: '>=10'} @@ -9651,10 +8994,6 @@ packages: mdurl@2.0.0: resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} - media-typer@0.3.0: - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} - engines: {node: '>= 0.6'} - memfs@3.5.3: resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==} engines: {node: '>= 4.0.0'} @@ -9668,9 +9007,6 @@ packages: memoizerific@1.11.3: resolution: {integrity: sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog==} - merge-descriptors@1.0.1: - resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} - merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} @@ -9678,10 +9014,6 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - methods@1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} - micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} @@ -9706,11 +9038,6 @@ packages: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} - mime@1.6.0: - resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} - engines: {node: '>=4'} - hasBin: true - mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -9758,22 +9085,10 @@ packages: minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - minipass@3.3.6: - resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} - engines: {node: '>=8'} - - minipass@5.0.0: - resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} - engines: {node: '>=8'} - minipass@7.0.4: resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} engines: {node: '>=16 || 14 >=14.17'} - minizlib@2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} - mkdirp@0.5.6: resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} hasBin: true @@ -9906,10 +9221,6 @@ packages: engines: {node: '>= 4.4.x'} hasBin: true - negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} - neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} @@ -9922,13 +9233,6 @@ packages: node-addon-api@3.2.1: resolution: {integrity: sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==} - node-dir@0.1.17: - resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} - engines: {node: '>= 0.10.5'} - - node-fetch-native@1.6.2: - resolution: {integrity: sha512-69mtXOFZ6hSkYiXAVB5SqaRvrbITC/NPyqv7yuu/qw0nmgPyYbIMYYNIDhNtwPrzk0ptrimrLz/hhjvm4w5Z+w==} - node-fetch@2.7.0: resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} @@ -10007,11 +9311,6 @@ packages: '@swc/core': optional: true - nypm@0.3.8: - resolution: {integrity: sha512-IGWlC6So2xv6V4cIDmoV0SwwWx7zLG086gyqkyumteH2fIgCAM4nDVFB2iDRszDvmdSVW9xb1N+2KjQ6C7d4og==} - engines: {node: ^14.16.0 || >=16.10.0} - hasBin: true - object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} @@ -10043,13 +9342,6 @@ packages: resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} engines: {node: '>= 0.4'} - ohash@1.1.3: - resolution: {integrity: sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==} - - on-finished@2.4.1: - resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} - engines: {node: '>= 0.8'} - once@1.3.3: resolution: {integrity: sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==} @@ -10124,10 +9416,6 @@ packages: resolution: {integrity: sha512-H0jc0q1vOzlEk0TqAKXKZxdl7kX3OFUzCnNVUnq5Pc3DGo0kpeaMuPqxQn235HibwBEb0/pm9dgKTjXy66fBkg==} engines: {node: '>=18'} - p-locate@3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} - p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -10180,20 +9468,12 @@ packages: parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} - parseurl@1.3.3: - resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} - engines: {node: '>= 0.8'} - pascal-case@3.1.2: resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} - path-exists@3.0.0: - resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} - engines: {node: '>=4'} - path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -10221,9 +9501,6 @@ packages: resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} engines: {node: '>=16 || 14 >=14.17'} - path-to-regexp@0.1.7: - resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} - path-to-regexp@3.3.0: resolution: {integrity: sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==} @@ -10237,10 +9514,6 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} - path-type@5.0.0: - resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==} - engines: {node: '>=12'} - pathe@0.2.0: resolution: {integrity: sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==} @@ -10250,6 +9523,10 @@ packages: pathval@1.1.1: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + pathval@2.0.0: + resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} + engines: {node: '>= 14.16'} + pbf@3.2.1: resolution: {integrity: sha512-ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ==} hasBin: true @@ -10288,10 +9565,6 @@ packages: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} - pkg-dir@3.0.0: - resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} - engines: {node: '>=6'} - pkg-dir@4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} @@ -10394,11 +9667,6 @@ packages: engines: {node: '>=10.13.0'} hasBin: true - prettier@3.2.5: - resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} - engines: {node: '>=14'} - hasBin: true - pretty-format@27.5.1: resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} @@ -10440,10 +9708,6 @@ packages: protocol-buffers-schema@3.6.0: resolution: {integrity: sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==} - proxy-addr@2.0.7: - resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} - engines: {node: '>= 0.10'} - proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} @@ -10472,10 +9736,6 @@ packages: engines: {node: '>=10.13.0'} hasBin: true - qs@6.11.0: - resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} - engines: {node: '>=0.6'} - qs@6.12.0: resolution: {integrity: sha512-trVZiI6RMOkO476zLGaBIzszOdFPnCCXHPG9kn0yuS1uz6xdVxPfZdB3vUig9pxPFDM9BRAgz/YUIVQ1/vuiUg==} engines: {node: '>=0.6'} @@ -10502,14 +9762,6 @@ packages: randomfill@1.0.4: resolution: {integrity: sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==} - range-parser@1.2.1: - resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} - engines: {node: '>= 0.6'} - - raw-body@2.5.2: - resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} - engines: {node: '>= 0.8'} - react-app-polyfill@3.0.0: resolution: {integrity: sha512-sZ41cxiU5llIB003yxxQBYrARBqe0repqPTTYBTmMqTz9szeBbE37BehCE891NZsmdZqqP+xWKdT3eo3vOzN8w==} engines: {node: '>=14'} @@ -10523,12 +9775,6 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' - react-colorful@5.6.1: - resolution: {integrity: sha512-1exovf0uGTGyq5mXQT0zgQ80uvj2PCwvF8zY1RN9/vbJVSjSo3fsB/4L3ObbF7u70NduSiK4xu4Y6q1MHoUGEw==} - peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' - react-cookie@4.0.0: resolution: {integrity: sha512-om/HB4MBHt4k+moR8Mb5h1kmKxcmOxK2U6aaQZ8Y+f+igICcE5bpng7yCiAo3kKN0btFpzvQ70XnpONOC0xkdA==} peerDependencies: @@ -10560,12 +9806,6 @@ packages: react: '>=16.4.0' react-dom: '>=16.4.0' - react-element-to-jsx-string@15.0.0: - resolution: {integrity: sha512-UDg4lXB6BzlobN60P8fHWVPX3Kyw8ORrTeBtClmIlGdkOOE+GYQSFvmEU5iLLpwp/6v42DINwNcwOhOLfQ//FQ==} - peerDependencies: - react: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 - react-dom: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 - react-error-boundary@3.1.4: resolution: {integrity: sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA==} engines: {node: '>=10', npm: '>=6'} @@ -10607,9 +9847,6 @@ packages: react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - react-is@18.1.0: - resolution: {integrity: sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg==} - react-is@18.2.0: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} @@ -10878,12 +10115,6 @@ packages: regl@2.1.0: resolution: {integrity: sha512-oWUce/aVoEvW5l2V0LK7O5KJMzUSKeiOwFuJehzpSFd43dO5spP9r+sSUfhKtsky4u6MCqWJaRL+abzExynfTg==} - rehype-external-links@3.0.0: - resolution: {integrity: sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==} - - rehype-slug@6.0.0: - resolution: {integrity: sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==} - relateurl@0.2.7: resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} engines: {node: '>= 0.10'} @@ -11082,20 +10313,12 @@ packages: engines: {node: '>=10'} hasBin: true - send@0.18.0: - resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} - engines: {node: '>= 0.8.0'} - serialize-javascript@6.0.0: resolution: {integrity: sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==} serialize-javascript@6.0.2: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} - serve-static@1.15.0: - resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} - engines: {node: '>= 0.8.0'} - set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} @@ -11116,9 +10339,6 @@ packages: setimmediate@1.0.5: resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} - setprototypeof@1.2.0: - resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} - sha.js@2.4.11: resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==} hasBin: true @@ -11180,10 +10400,6 @@ packages: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} - slash@5.1.0: - resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} - engines: {node: '>=14.16'} - slice-ansi@5.0.0: resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} engines: {node: '>=12'} @@ -11229,9 +10445,6 @@ packages: resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} engines: {node: '>= 8'} - space-separated-tokens@2.0.2: - resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} - spark-md5@3.0.2: resolution: {integrity: sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==} @@ -11265,9 +10478,14 @@ packages: resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} engines: {node: '>= 0.4'} - storybook@8.2.4: - resolution: {integrity: sha512-ASavW8vIHiWpFY+4M6ngeqK5oL4OkxqdpmQYxvRqH0gA1G1hfq/vmDw4YC4GnqKwyWPQh2kaV5JFurKZVaeaDQ==} + storybook@8.4.7: + resolution: {integrity: sha512-RP/nMJxiWyFc8EVMH5gp20ID032Wvk+Yr3lmKidoegto5Iy+2dVQnUoElZb2zpbVXNHWakGuAkfI0dY1Hfp/vw==} hasBin: true + peerDependencies: + prettier: ^2 || ^3 + peerDependenciesMeta: + prettier: + optional: true stream-browserify@3.0.0: resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} @@ -11454,29 +10672,10 @@ packages: resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} engines: {node: '>=6'} - tar@6.2.0: - resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} - engines: {node: '>=10'} - - telejson@7.2.0: - resolution: {integrity: sha512-1QTEcJkJEhc8OnStBx/ILRu5J2p0GjvWsBx56bmZRqnrkdBMUe+nX92jxV+p3dB4CP6PZCdJMQJwCggkNBMzkQ==} - - temp-dir@3.0.0: - resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==} - engines: {node: '>=14.16'} - - temp@0.8.4: - resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} - engines: {node: '>=6.0.0'} - temp@0.9.4: resolution: {integrity: sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==} engines: {node: '>=6.0.0'} - tempy@3.1.0: - resolution: {integrity: sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==} - engines: {node: '>=14.16'} - terser-webpack-plugin@5.3.10: resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} engines: {node: '>= 10.13.0'} @@ -11547,10 +10746,18 @@ packages: tinyqueue@2.0.3: resolution: {integrity: sha512-ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA==} - tinyspy@2.2.1: + tinyrainbow@1.2.0: + resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} + engines: {node: '>=14.0.0'} + + tinyspy@2.2.1: resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} engines: {node: '>=14.0.0'} + tinyspy@3.0.2: + resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==} + engines: {node: '>=14.0.0'} + tmp@0.0.33: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} @@ -11579,10 +10786,6 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} - toidentifier@1.0.1: - resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} - engines: {node: '>=0.6'} - topojson-client@3.1.0: resolution: {integrity: sha512-605uxS6bcYxGXw9qi62XyrV6Q3xwbndjachmNxu8HWTtVPxZfEJN9fd/SZS1Q54Sn2y0TMyMxFj/cJINqGHrKw==} hasBin: true @@ -11724,10 +10927,6 @@ packages: resolution: {integrity: sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==} engines: {node: '>=16'} - type-is@1.6.18: - resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} - engines: {node: '>= 0.6'} - type@2.7.2: resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==} @@ -11825,23 +11024,6 @@ packages: resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} engines: {node: '>=4'} - unicorn-magic@0.1.0: - resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} - engines: {node: '>=18'} - - unique-string@3.0.0: - resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} - engines: {node: '>=12'} - - unist-util-is@6.0.0: - resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} - - unist-util-visit-parents@6.0.1: - resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} - - unist-util-visit@5.0.0: - resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} - universal-cookie@4.0.4: resolution: {integrity: sha512-lbRVHoOMtItjWbM7TwDLdl8wug7izB0tq3/YVKhT/ahB4VDvWMyvnADfnJI8y6fSvsjh51Ix7lTGC6Tn4rMPhw==} @@ -11857,10 +11039,6 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} - unpipe@1.0.0: - resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} - engines: {node: '>= 0.8'} - unplugin@1.10.0: resolution: {integrity: sha512-CuZtvvO8ua2Wl+9q2jEaqH6m3DoQ38N7pvBYQbbaeNlWGvK2l6GHiKi29aIHDPoSxdUzQ7Unevf1/ugil5X6Pg==} engines: {node: '>=14.0.0'} @@ -11956,10 +11134,6 @@ packages: util@0.12.5: resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} - utils-merge@1.0.1: - resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} - engines: {node: '>= 0.4.0'} - uuid@9.0.1: resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} hasBin: true @@ -11986,10 +11160,6 @@ packages: validate.io-number@1.0.3: resolution: {integrity: sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==} - vary@1.1.2: - resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} - engines: {node: '>= 0.8'} - vite-node@1.6.0: resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==} engines: {node: ^18.0.0 || >=20.0.0} @@ -12102,9 +11272,6 @@ packages: resolution: {integrity: sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==} engines: {node: '>=14'} - walk-up-path@3.0.1: - resolution: {integrity: sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==} - walker@1.0.8: resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} @@ -12235,9 +11402,6 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - write-file-atomic@2.4.3: - resolution: {integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==} - write-file-atomic@4.0.2: resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -12296,9 +11460,6 @@ packages: yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - yaml@1.10.2: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} @@ -13000,21 +12161,10 @@ snapshots: dependencies: '@babel/types': 7.24.7 - '@babel/helper-annotate-as-pure@7.24.7': - dependencies: - '@babel/types': 7.24.8 - '@babel/helper-builder-binary-assignment-operator-visitor@7.22.15': dependencies: '@babel/types': 7.24.7 - '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': - dependencies: - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/helper-compilation-targets@7.24.7': dependencies: '@babel/compat-data': 7.24.7 @@ -13044,34 +12194,6 @@ snapshots: '@babel/helper-split-export-declaration': 7.24.7 semver: 7.6.2 - '@babel/helper-create-class-features-plugin@7.24.0(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-function-name': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.8) - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/helper-split-export-declaration': 7.24.7 - semver: 7.6.2 - - '@babel/helper-create-class-features-plugin@7.24.8(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-function-name': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.8) - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/helper-split-export-declaration': 7.24.7 - semver: 7.6.2 - transitivePeerDependencies: - - supports-color - '@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13079,20 +12201,6 @@ snapshots: regexpu-core: 5.3.2 semver: 7.6.2 - '@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-annotate-as-pure': 7.22.5 - regexpu-core: 5.3.2 - semver: 7.6.2 - - '@babel/helper-create-regexp-features-plugin@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-annotate-as-pure': 7.24.7 - regexpu-core: 5.3.2 - semver: 7.6.2 - '@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13115,17 +12223,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-define-polyfill-provider@0.6.1(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-compilation-targets': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - debug: 4.3.7 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13137,17 +12234,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-compilation-targets': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - debug: 4.3.7 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - '@babel/helper-environment-visitor@7.24.7': dependencies: '@babel/types': 7.24.7 @@ -13165,13 +12251,6 @@ snapshots: dependencies: '@babel/types': 7.24.7 - '@babel/helper-member-expression-to-functions@7.24.8': - dependencies: - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/helper-module-imports@7.24.7': dependencies: '@babel/traverse': 7.24.7 @@ -13190,17 +12269,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-split-export-declaration': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/helper-module-transforms@7.24.8(@babel/core@7.24.8)': dependencies: '@babel/core': 7.24.8 @@ -13216,10 +12284,6 @@ snapshots: dependencies: '@babel/types': 7.24.7 - '@babel/helper-optimise-call-expression@7.24.7': - dependencies: - '@babel/types': 7.24.8 - '@babel/helper-plugin-utils@7.24.7': {} '@babel/helper-plugin-utils@7.24.8': {} @@ -13231,15 +12295,6 @@ snapshots: '@babel/helper-environment-visitor': 7.24.7 '@babel/helper-wrap-function': 7.22.20 - '@babel/helper-remap-async-to-generator@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-wrap-function': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/helper-replace-supers@7.22.20(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13247,22 +12302,6 @@ snapshots: '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers@7.22.20(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - - '@babel/helper-replace-supers@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/helper-simple-access@7.24.7': dependencies: '@babel/traverse': 7.24.7 @@ -13274,13 +12313,6 @@ snapshots: dependencies: '@babel/types': 7.24.7 - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': - dependencies: - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/helper-split-export-declaration@7.24.7': dependencies: '@babel/types': 7.24.7 @@ -13301,15 +12333,6 @@ snapshots: '@babel/template': 7.24.7 '@babel/types': 7.24.7 - '@babel/helper-wrap-function@7.24.7': - dependencies: - '@babel/helper-function-name': 7.24.7 - '@babel/template': 7.24.7 - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/helpers@7.24.7': dependencies: '@babel/template': 7.24.7 @@ -13335,22 +12358,11 @@ snapshots: dependencies: '@babel/types': 7.24.8 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13358,27 +12370,12 @@ snapshots: '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.7) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-environment-visitor': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13398,20 +12395,11 @@ snapshots: dependencies: '@babel/core': 7.24.7 - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13422,208 +12410,102 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - - '@babel/plugin-syntax-flow@7.23.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-import-assertions@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-import-attributes@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-async-generator-functions@7.23.9(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13632,16 +12514,6 @@ snapshots: '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.7) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.7) - '@babel/plugin-transform-async-generator-functions@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13651,55 +12523,22 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.24.7(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-block-scoping@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.7 - - '@babel/plugin-transform-class-properties@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-class-features-plugin': 7.24.8(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13707,15 +12546,6 @@ snapshots: '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.7) - '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-class-features-plugin': 7.24.8(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-classes@7.23.8(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13728,122 +12558,52 @@ snapshots: '@babel/helper-split-export-declaration': 7.24.7 globals: 11.12.0 - '@babel/plugin-transform-classes@7.24.8(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-compilation-targets': 7.24.8 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-function-name': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.8) - '@babel/helper-split-export-declaration': 7.24.7 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/template': 7.24.7 - '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/template': 7.24.7 - '@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.8) - - '@babel/plugin-transform-flow-strip-types@7.23.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-flow': 7.23.3(@babel/core@7.24.8) - '@babel/plugin-transform-for-of@7.23.6(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-function-name@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13851,57 +12611,28 @@ snapshots: '@babel/helper-function-name': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-function-name@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-compilation-targets': 7.24.8 - '@babel/helper-function-name': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-transform-literals@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-literals@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.7) - '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.8) - '@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13910,14 +12641,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-module-transforms': 7.24.8(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13927,24 +12650,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-module-transforms': 7.24.7(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-module-transforms': 7.24.8(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-simple-access': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-modules-systemjs@7.23.9(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13955,16 +12660,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-systemjs@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-hoist-variables': 7.24.7 - '@babel/helper-module-transforms': 7.24.8(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -13973,66 +12668,29 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-module-transforms': 7.24.8(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-new-target@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.8) - - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.7) - '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.8) - '@babel/plugin-transform-object-rest-spread@7.24.0(@babel/core@7.24.7)': dependencies: '@babel/compat-data': 7.24.7 @@ -14042,40 +12700,18 @@ snapshots: '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.7) '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.7) - '@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-compilation-targets': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-object-super@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.7) - '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -14083,52 +12719,17 @@ snapshots: '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.8) - - '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-parameters@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.7 - - '@babel/plugin-transform-private-methods@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-class-features-plugin': 7.24.8(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -14137,26 +12738,11 @@ snapshots: '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.7) - '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.24.8(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-react-display-name@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -14202,22 +12788,11 @@ snapshots: '@babel/helper-plugin-utils': 7.24.7 regenerator-transform: 0.15.2 - '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - regenerator-transform: 0.15.2 - '@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-runtime@7.25.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -14235,55 +12810,27 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-spread@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-spread@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.24.7)': - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - - '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.24.8)': + '@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.24.7)': dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/core': 7.24.7 + '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-typescript@7.23.6(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -14292,60 +12839,29 @@ snapshots: '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.24.7) - '@babel/plugin-transform-typescript@7.23.6(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.24.8) - '@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - '@babel/plugin-transform-unicode-sets-regex@7.24.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/preset-env@7.24.0(@babel/core@7.24.7)': dependencies: '@babel/compat-data': 7.24.7 @@ -14432,100 +12948,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/preset-env@7.24.8(@babel/core@7.24.8)': - dependencies: - '@babel/compat-data': 7.24.8 - '@babel/core': 7.24.8 - '@babel/helper-compilation-targets': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.8) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.8) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.8) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.8) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-syntax-import-attributes': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.8) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.8) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.8) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.8) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.8) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.8) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.8) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-async-generator-functions': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-block-scoping': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-classes': 7.24.8(@babel/core@7.24.8) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.24.8) - '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-function-name': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-literals': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.8) - '@babel/plugin-transform-modules-systemjs': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.8) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.24.8) - '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.24.8) - '@babel/plugin-transform-unicode-sets-regex': 7.24.7(@babel/core@7.24.8) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.8) - babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.8) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.8) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.24.8) - core-js-compat: 3.37.1 - semver: 7.6.2 - transitivePeerDependencies: - - supports-color - - '@babel/preset-flow@7.24.0(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-transform-flow-strip-types': 7.23.3(@babel/core@7.24.8) - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -14533,13 +12955,6 @@ snapshots: '@babel/types': 7.24.7 esutils: 2.0.3 - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/types': 7.24.7 - esutils: 2.0.3 - '@babel/preset-react@7.23.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -14563,26 +12978,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/preset-typescript@7.23.3(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/helper-validator-option': 7.24.7 - '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.24.8) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.8) - '@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color - - '@babel/register@7.23.7(@babel/core@7.24.8)': - dependencies: - '@babel/core': 7.24.8 - clone-deep: 4.0.1 - find-cache-dir: 2.1.0 - make-dir: 2.1.0 - pirates: 4.0.6 - source-map-support: 0.5.21 - '@babel/regjsgen@0.8.0': {} '@babel/runtime@7.24.7': @@ -14641,8 +13036,6 @@ snapshots: '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 - '@base2/pretty-print-object@1.0.1': {} - '@bcoe/v8-coverage@0.2.3': {} '@brainhubeu/react-carousel@1.19.26(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': @@ -15336,10 +13729,8 @@ snapshots: '@types/yargs': 17.0.32 chalk: 4.1.2 - '@joshwooding/vite-plugin-react-docgen-typescript@0.3.1(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2))': + '@joshwooding/vite-plugin-react-docgen-typescript@0.4.2(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2))': dependencies: - glob: 7.2.3 - glob-promise: 4.2.2(glob@7.2.3) magic-string: 0.27.0 react-docgen-typescript: 2.2.2(typescript@5.5.3) vite: 5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2) @@ -16161,7 +14552,7 @@ snapshots: dependencies: '@rollup/pluginutils': 5.1.0(rollup@4.27.2) estree-walker: 2.0.2 - magic-string: 0.30.10 + magic-string: 0.30.11 optionalDependencies: rollup: 4.27.2 @@ -16402,8 +14793,6 @@ snapshots: '@sinclair/typebox@0.27.8': {} - '@sindresorhus/merge-streams@2.3.0': {} - '@sinonjs/commons@3.0.1': dependencies: type-detect: 4.0.8 @@ -16743,213 +15132,162 @@ snapshots: '@smithy/types': 3.7.1 tslib: 2.7.0 - '@storybook/addon-actions@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-actions@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 '@types/uuid': 9.0.8 dequal: 2.0.3 polished: 4.3.1 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) uuid: 9.0.1 - '@storybook/addon-backgrounds@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-backgrounds@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 memoizerific: 1.11.3 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 - '@storybook/addon-controls@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-controls@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: + '@storybook/global': 5.0.0 dequal: 2.0.3 - lodash: 4.17.21 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 - '@storybook/addon-designs@8.0.3(@storybook/blocks@8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))))(@storybook/components@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))))(@storybook/theming@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@storybook/addon-designs@8.0.4(@storybook/blocks@8.4.7(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8)))(@storybook/components@8.4.7(storybook@8.4.7(prettier@2.8.8)))(@storybook/theming@8.4.7(storybook@8.4.7(prettier@2.8.8)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: '@figspec/react': 1.0.3(react@18.2.0) optionalDependencies: - '@storybook/blocks': 8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/components': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/theming': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) + '@storybook/blocks': 8.4.7(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8)) + '@storybook/components': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/theming': 8.4.7(storybook@8.4.7(prettier@2.8.8)) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - '@storybook/addon-docs@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-docs@8.4.7(@types/react@18.3.12)(storybook@8.4.7(prettier@2.8.8))': dependencies: - '@babel/core': 7.24.8 '@mdx-js/react': 3.0.1(@types/react@18.3.12)(react@18.2.0) - '@storybook/blocks': 8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/csf-plugin': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/global': 5.0.0 - '@storybook/react-dom-shim': 8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@types/react': 18.3.12 - fs-extra: 11.2.0 + '@storybook/blocks': 8.4.7(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8)) + '@storybook/csf-plugin': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/react-dom-shim': 8.4.7(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8)) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - rehype-external-links: 3.0.0 - rehype-slug: 6.0.0 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 transitivePeerDependencies: - - supports-color + - '@types/react' - '@storybook/addon-essentials@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': - dependencies: - '@storybook/addon-actions': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/addon-backgrounds': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/addon-controls': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/addon-docs': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/addon-highlight': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/addon-measure': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/addon-outline': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/addon-toolbars': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/addon-viewport': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + '@storybook/addon-essentials@8.4.7(@types/react@18.3.12)(storybook@8.4.7(prettier@2.8.8))': + dependencies: + '@storybook/addon-actions': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/addon-backgrounds': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/addon-controls': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/addon-docs': 8.4.7(@types/react@18.3.12)(storybook@8.4.7(prettier@2.8.8)) + '@storybook/addon-highlight': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/addon-measure': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/addon-outline': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/addon-toolbars': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/addon-viewport': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 transitivePeerDependencies: - - supports-color + - '@types/react' - '@storybook/addon-highlight@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-highlight@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) - '@storybook/addon-interactions@8.2.4(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.10)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@types/node@20.14.10)(typescript@5.5.3)))(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(vitest@1.6.0(@types/node@20.14.10)(jsdom@21.1.2)(sass@1.77.6)(terser@5.31.2))': + '@storybook/addon-interactions@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 - '@storybook/instrumenter': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/test': 8.2.4(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.10)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@types/node@20.14.10)(typescript@5.5.3)))(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(vitest@1.6.0(@types/node@20.14.10)(jsdom@21.1.2)(sass@1.77.6)(terser@5.31.2)) + '@storybook/instrumenter': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/test': 8.4.7(storybook@8.4.7(prettier@2.8.8)) polished: 4.3.1 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 - transitivePeerDependencies: - - '@jest/globals' - - '@types/bun' - - '@types/jest' - - jest - - vitest - '@storybook/addon-links@8.2.4(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-links@8.4.7(react@18.2.0)(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/csf': 0.1.11 '@storybook/global': 5.0.0 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 optionalDependencies: react: 18.2.0 - '@storybook/addon-measure@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-measure@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) tiny-invariant: 1.3.3 - '@storybook/addon-outline@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-outline@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 - '@storybook/addon-themes@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-themes@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 - '@storybook/addon-toolbars@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-toolbars@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) - '@storybook/addon-viewport@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/addon-viewport@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: memoizerific: 1.11.3 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) - '@storybook/blocks@8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/blocks@8.4.7(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/csf': 0.1.11 - '@storybook/global': 5.0.0 - '@storybook/icons': 1.2.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@types/lodash': 4.17.7 - color-convert: 2.0.1 - dequal: 2.0.3 - lodash: 4.17.21 - markdown-to-jsx: 7.4.7(react@18.2.0) - memoizerific: 1.11.3 - polished: 4.3.1 - react-colorful: 5.6.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) - telejson: 7.2.0 + '@storybook/icons': 1.3.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 - util-deprecate: 1.0.2 optionalDependencies: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - '@storybook/builder-vite@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2))': + '@storybook/builder-vite@8.4.7(storybook@8.4.7(prettier@2.8.8))(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2))': dependencies: - '@storybook/csf-plugin': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@types/find-cache-dir': 3.2.1 + '@storybook/csf-plugin': 8.4.7(storybook@8.4.7(prettier@2.8.8)) browser-assert: 1.2.1 - es-module-lexer: 1.5.4 - express: 4.19.2 - find-cache-dir: 3.3.2 - fs-extra: 11.2.0 - magic-string: 0.30.10 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) ts-dedent: 2.2.0 vite: 5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2) - optionalDependencies: - typescript: 5.5.3 - transitivePeerDependencies: - - supports-color - '@storybook/codemod@8.2.4': + '@storybook/components@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: - '@babel/core': 7.24.8 - '@babel/preset-env': 7.24.8(@babel/core@7.24.8) - '@babel/types': 7.24.8 - '@storybook/core': 8.2.4 - '@storybook/csf': 0.1.11 - '@types/cross-spawn': 6.0.6 - cross-spawn: 7.0.3 - globby: 14.0.2 - jscodeshift: 0.15.2(@babel/preset-env@7.24.8(@babel/core@7.24.8)) - lodash: 4.17.21 - prettier: 3.2.5 - recast: 0.23.6 - tiny-invariant: 1.3.3 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - '@storybook/components@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': - dependencies: - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) - '@storybook/core@8.2.4': + '@storybook/core@8.4.7(prettier@2.8.8)': dependencies: '@storybook/csf': 0.1.11 - '@types/express': 4.17.21 - '@types/node': 18.19.39 + better-opn: 3.0.2 browser-assert: 1.2.1 - esbuild: 0.21.5 - esbuild-register: 3.5.0(esbuild@0.21.5) - express: 4.19.2 + esbuild: 0.23.1 + esbuild-register: 3.5.0(esbuild@0.23.1) + jsdoc-type-pratt-parser: 4.1.0 process: 0.11.10 recast: 0.23.6 + semver: 7.6.2 util: 0.12.5 ws: 8.16.0 + optionalDependencies: + prettier: 2.8.8 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - '@storybook/csf-plugin@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/csf-plugin@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) unplugin: 1.10.0 '@storybook/csf@0.1.11': @@ -16958,100 +15296,78 @@ snapshots: '@storybook/global@5.0.0': {} - '@storybook/icons@1.2.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@storybook/icons@1.3.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - '@storybook/instrumenter@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/instrumenter@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 - '@vitest/utils': 1.6.0 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) - util: 0.12.5 + '@vitest/utils': 2.1.8 + storybook: 8.4.7(prettier@2.8.8) - '@storybook/manager-api@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/manager-api@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) - '@storybook/preview-api@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/preview-api@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) - '@storybook/react-dom-shim@8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/react-dom-shim@8.4.7(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8))': dependencies: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) - '@storybook/react-vite@8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(rollup@4.27.2)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2))': + '@storybook/react-vite@8.4.7(@storybook/test@8.4.7(storybook@8.4.7(prettier@2.8.8)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(rollup@4.27.2)(storybook@8.4.7(prettier@2.8.8))(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2))': dependencies: - '@joshwooding/vite-plugin-react-docgen-typescript': 0.3.1(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2)) + '@joshwooding/vite-plugin-react-docgen-typescript': 0.4.2(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2)) '@rollup/pluginutils': 5.1.0(rollup@4.27.2) - '@storybook/builder-vite': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(typescript@5.5.3)(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2)) - '@storybook/react': 8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(typescript@5.5.3) + '@storybook/builder-vite': 8.4.7(storybook@8.4.7(prettier@2.8.8))(vite@5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2)) + '@storybook/react': 8.4.7(@storybook/test@8.4.7(storybook@8.4.7(prettier@2.8.8)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8))(typescript@5.5.3) find-up: 5.0.0 - magic-string: 0.30.10 + magic-string: 0.30.11 react: 18.2.0 react-docgen: 7.0.3 react-dom: 18.2.0(react@18.2.0) resolve: 1.22.8 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) tsconfig-paths: 4.2.0 vite: 5.4.3(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2) transitivePeerDependencies: - - '@preact/preset-vite' + - '@storybook/test' - rollup - supports-color - typescript - - vite-plugin-glimmerx - '@storybook/react@8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(typescript@5.5.3)': + '@storybook/react@8.4.7(@storybook/test@8.4.7(storybook@8.4.7(prettier@2.8.8)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8))(typescript@5.5.3)': dependencies: - '@storybook/components': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) + '@storybook/components': 8.4.7(storybook@8.4.7(prettier@2.8.8)) '@storybook/global': 5.0.0 - '@storybook/manager-api': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/preview-api': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/react-dom-shim': 8.2.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@storybook/theming': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@types/escodegen': 0.0.6 - '@types/estree': 0.0.51 - '@types/node': 18.19.39 - acorn: 7.4.1 - acorn-jsx: 5.3.2(acorn@7.4.1) - acorn-walk: 7.2.0 - escodegen: 2.1.0 - html-tags: 3.3.1 - lodash: 4.17.21 - prop-types: 15.8.1 + '@storybook/manager-api': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/preview-api': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@storybook/react-dom-shim': 8.4.7(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(storybook@8.4.7(prettier@2.8.8)) + '@storybook/theming': 8.4.7(storybook@8.4.7(prettier@2.8.8)) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-element-to-jsx-string: 15.0.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - semver: 7.6.2 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) - ts-dedent: 2.2.0 - type-fest: 2.19.0 - util-deprecate: 1.0.2 + storybook: 8.4.7(prettier@2.8.8) optionalDependencies: + '@storybook/test': 8.4.7(storybook@8.4.7(prettier@2.8.8)) typescript: 5.5.3 - '@storybook/test@8.2.4(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.10)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@types/node@20.14.10)(typescript@5.5.3)))(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))(vitest@1.6.0(@types/node@20.14.10)(jsdom@21.1.2)(sass@1.77.6)(terser@5.31.2))': + '@storybook/test@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: '@storybook/csf': 0.1.11 - '@storybook/instrumenter': 8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7))) - '@testing-library/dom': 10.1.0 - '@testing-library/jest-dom': 6.4.5(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.10)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@types/node@20.14.10)(typescript@5.5.3)))(vitest@1.6.0(@types/node@20.14.10)(jsdom@21.1.2)(sass@1.77.6)(terser@5.31.2)) - '@testing-library/user-event': 14.5.2(@testing-library/dom@10.1.0) - '@vitest/expect': 1.6.0 - '@vitest/spy': 1.6.0 - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) - util: 0.12.5 - transitivePeerDependencies: - - '@jest/globals' - - '@types/bun' - - '@types/jest' - - jest - - vitest + '@storybook/global': 5.0.0 + '@storybook/instrumenter': 8.4.7(storybook@8.4.7(prettier@2.8.8)) + '@testing-library/dom': 10.4.0 + '@testing-library/jest-dom': 6.5.0 + '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) + '@vitest/expect': 2.0.5 + '@vitest/spy': 2.0.5 + storybook: 8.4.7(prettier@2.8.8) '@storybook/testing-library@0.2.2': dependencies: @@ -17059,9 +15375,9 @@ snapshots: '@testing-library/user-event': 14.5.2(@testing-library/dom@9.3.4) ts-dedent: 2.2.0 - '@storybook/theming@8.2.4(storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)))': + '@storybook/theming@8.4.7(storybook@8.4.7(prettier@2.8.8))': dependencies: - storybook: 8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)) + storybook: 8.4.7(prettier@2.8.8) '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.24.7)': dependencies: @@ -17175,18 +15491,15 @@ snapshots: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) + '@tanstack/react-virtual@3.11.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + dependencies: + '@tanstack/virtual-core': 3.10.9 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + '@tanstack/table-core@8.20.5': {} - '@testing-library/dom@10.1.0': - dependencies: - '@babel/code-frame': 7.24.7 - '@babel/runtime': 7.24.8 - '@types/aria-query': 5.0.4 - aria-query: 5.3.0 - chalk: 4.1.2 - dom-accessibility-api: 0.5.16 - lz-string: 1.5.0 - pretty-format: 27.5.1 + '@tanstack/virtual-core@3.10.9': {} '@testing-library/dom@10.4.0': dependencies: @@ -17210,21 +15523,15 @@ snapshots: lz-string: 1.5.0 pretty-format: 27.5.1 - '@testing-library/jest-dom@6.4.5(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.10)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@types/node@20.14.10)(typescript@5.5.3)))(vitest@1.6.0(@types/node@20.14.10)(jsdom@21.1.2)(sass@1.77.6)(terser@5.31.2))': + '@testing-library/jest-dom@6.5.0': dependencies: '@adobe/css-tools': 4.4.0 - '@babel/runtime': 7.24.8 aria-query: 5.3.0 chalk: 3.0.0 css.escape: 1.5.1 dom-accessibility-api: 0.6.3 lodash: 4.17.21 redent: 3.0.0 - optionalDependencies: - '@jest/globals': 29.7.0 - '@types/jest': 29.5.12 - jest: 29.7.0(@types/node@20.14.10)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@types/node@20.14.10)(typescript@5.5.3)) - vitest: 1.6.0(@types/node@20.14.10)(@vitest/ui@1.6.0)(jsdom@21.1.2)(sass@1.77.6)(terser@5.31.2) '@testing-library/jest-dom@6.6.3': dependencies: @@ -17246,10 +15553,6 @@ snapshots: '@types/react': 18.3.12 '@types/react-dom': 18.3.1 - '@testing-library/user-event@14.5.2(@testing-library/dom@10.1.0)': - dependencies: - '@testing-library/dom': 10.1.0 - '@testing-library/user-event@14.5.2(@testing-library/dom@10.4.0)': dependencies: '@testing-library/dom': 10.4.0 @@ -17326,29 +15629,16 @@ snapshots: '@types/base16@1.0.5': {} - '@types/body-parser@1.19.5': - dependencies: - '@types/connect': 3.4.38 - '@types/node': 20.14.10 - '@types/brainhubeu__react-carousel@1.15.0': dependencies: '@types/react': 18.3.12 - '@types/connect@3.4.38': - dependencies: - '@types/node': 20.14.10 - '@types/cookie@0.3.3': {} '@types/cookie@0.4.1': {} '@types/cookie@0.6.0': {} - '@types/cross-spawn@6.0.6': - dependencies: - '@types/node': 20.14.10 - '@types/d3-array@3.2.1': {} '@types/d3-axis@3.0.6': @@ -17474,10 +15764,6 @@ snapshots: '@types/doctrine@0.0.9': {} - '@types/emscripten@1.39.10': {} - - '@types/escodegen@0.0.6': {} - '@types/eslint-scope@3.7.7': dependencies: '@types/eslint': 8.56.10 @@ -17488,35 +15774,12 @@ snapshots: '@types/estree': 1.0.6 '@types/json-schema': 7.0.15 - '@types/estree@0.0.51': {} - '@types/estree@1.0.5': {} '@types/estree@1.0.6': {} - '@types/express-serve-static-core@4.17.43': - dependencies: - '@types/node': 20.14.10 - '@types/qs': 6.9.12 - '@types/range-parser': 1.2.7 - '@types/send': 0.17.4 - - '@types/express@4.17.21': - dependencies: - '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 4.17.43 - '@types/qs': 6.9.12 - '@types/serve-static': 1.15.5 - - '@types/find-cache-dir@3.2.1': {} - '@types/geojson@7946.0.14': {} - '@types/glob@7.2.0': - dependencies: - '@types/minimatch': 5.1.2 - '@types/node': 20.14.10 - '@types/google.maps@3.55.2': {} '@types/google.maps@3.55.4': {} @@ -17525,10 +15788,6 @@ snapshots: dependencies: '@types/node': 20.14.10 - '@types/hast@3.0.4': - dependencies: - '@types/unist': 3.0.2 - '@types/history@4.7.11': {} '@types/hoist-non-react-statics@3.3.5': @@ -17536,8 +15795,6 @@ snapshots: '@types/react': 18.3.12 hoist-non-react-statics: 3.3.2 - '@types/http-errors@2.0.4': {} - '@types/invariant@2.2.37': {} '@types/isomorphic-fetch@0.0.36': {} @@ -17602,12 +15859,6 @@ snapshots: '@types/mdx@2.0.11': {} - '@types/mime@1.3.5': {} - - '@types/mime@3.0.4': {} - - '@types/minimatch@5.1.2': {} - '@types/minimist@1.2.5': {} '@types/ms@0.7.34': {} @@ -17616,10 +15867,6 @@ snapshots: dependencies: '@types/node': 20.14.10 - '@types/node@18.19.39': - dependencies: - undici-types: 5.26.5 - '@types/node@20.14.10': dependencies: undici-types: 5.26.5 @@ -17644,10 +15891,6 @@ snapshots: dependencies: '@types/node': 20.14.10 - '@types/qs@6.9.12': {} - - '@types/range-parser@1.2.7': {} - '@types/react-addons-css-transition-group@15.0.10': dependencies: '@types/react': 18.3.12 @@ -17709,19 +15952,6 @@ snapshots: '@types/resolve@1.20.6': {} - '@types/semver@7.5.8': {} - - '@types/send@0.17.4': - dependencies: - '@types/mime': 1.3.5 - '@types/node': 20.14.10 - - '@types/serve-static@1.15.5': - dependencies: - '@types/http-errors': 2.0.4 - '@types/mime': 3.0.4 - '@types/node': 20.14.10 - '@types/set-cookie-parser@2.4.7': dependencies: '@types/node': 20.14.10 @@ -17744,8 +15974,6 @@ snapshots: '@types/ua-parser-js@0.7.39': {} - '@types/unist@3.0.2': {} - '@types/uuid@9.0.8': {} '@types/warning@3.0.3': {} @@ -17882,8 +16110,6 @@ snapshots: '@typescript-eslint/types': 8.16.0 eslint-visitor-keys: 4.2.0 - '@ungap/structured-clone@1.2.0': {} - '@upsetjs/model@1.11.0': {} '@upsetjs/react@1.11.0(react@18.2.0)': @@ -17930,6 +16156,21 @@ snapshots: '@vitest/utils': 1.6.0 chai: 4.4.1 + '@vitest/expect@2.0.5': + dependencies: + '@vitest/spy': 2.0.5 + '@vitest/utils': 2.0.5 + chai: 5.1.2 + tinyrainbow: 1.2.0 + + '@vitest/pretty-format@2.0.5': + dependencies: + tinyrainbow: 1.2.0 + + '@vitest/pretty-format@2.1.8': + dependencies: + tinyrainbow: 1.2.0 + '@vitest/runner@1.6.0': dependencies: '@vitest/utils': 1.6.0 @@ -17946,6 +16187,10 @@ snapshots: dependencies: tinyspy: 2.2.1 + '@vitest/spy@2.0.5': + dependencies: + tinyspy: 3.0.2 + '@vitest/ui@1.6.0(vitest@1.6.0)': dependencies: '@vitest/utils': 1.6.0 @@ -17964,6 +16209,19 @@ snapshots: loupe: 2.3.7 pretty-format: 29.7.0 + '@vitest/utils@2.0.5': + dependencies: + '@vitest/pretty-format': 2.0.5 + estree-walker: 3.0.3 + loupe: 3.1.2 + tinyrainbow: 1.2.0 + + '@vitest/utils@2.1.8': + dependencies: + '@vitest/pretty-format': 2.1.8 + loupe: 3.1.2 + tinyrainbow: 1.2.0 + '@volar/language-core@2.4.5': dependencies: '@volar/source-map': 2.4.5 @@ -18096,16 +16354,6 @@ snapshots: '@xtuc/long@4.2.2': {} - '@yarnpkg/fslib@2.10.3': - dependencies: - '@yarnpkg/libzip': 2.3.0 - tslib: 1.14.1 - - '@yarnpkg/libzip@2.3.0': - dependencies: - '@types/emscripten': 1.39.10 - tslib: 1.14.1 - '@yarnpkg/lockfile@1.1.0': {} '@yarnpkg/parsers@3.0.0-rc.46': @@ -18124,11 +16372,6 @@ snapshots: abs-svg-path@0.1.1: {} - accepts@1.3.8: - dependencies: - mime-types: 2.1.35 - negotiator: 0.6.3 - acorn-globals@7.0.1: dependencies: acorn: 8.12.0 @@ -18138,10 +16381,6 @@ snapshots: dependencies: acorn: 8.14.0 - acorn-jsx@5.3.2(acorn@7.4.1): - dependencies: - acorn: 7.4.1 - acorn-jsx@5.3.2(acorn@8.12.1): dependencies: acorn: 8.12.1 @@ -18150,8 +16389,6 @@ snapshots: dependencies: acorn: 8.14.0 - acorn-walk@7.2.0: {} - acorn-walk@8.3.3: dependencies: acorn: 8.12.0 @@ -18291,8 +16528,6 @@ snapshots: array-find-index@1.0.2: {} - array-flatten@1.1.1: {} - array-includes@3.1.8: dependencies: call-bind: 1.0.7 @@ -18379,9 +16614,11 @@ snapshots: assertion-error@1.1.0: {} + assertion-error@2.0.1: {} + ast-types@0.16.1: dependencies: - tslib: 2.6.3 + tslib: 2.7.0 async@3.2.5: {} @@ -18407,10 +16644,6 @@ snapshots: transitivePeerDependencies: - debug - babel-core@7.0.0-bridge.0(@babel/core@7.24.8): - dependencies: - '@babel/core': 7.24.8 - babel-jest@29.7.0(@babel/core@7.24.7): dependencies: '@babel/core': 7.24.7 @@ -18424,12 +16657,12 @@ snapshots: transitivePeerDependencies: - supports-color - babel-loader@9.1.3(@babel/core@7.24.7)(webpack@5.93.0(esbuild@0.21.5)): + babel-loader@9.1.3(@babel/core@7.24.7)(webpack@5.93.0(esbuild@0.23.1)): dependencies: '@babel/core': 7.24.7 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(esbuild@0.23.1) babel-plugin-istanbul@6.1.1: dependencies: @@ -18463,23 +16696,6 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-polyfill-corejs2@0.4.10(@babel/core@7.24.8): - dependencies: - '@babel/compat-data': 7.24.7 - '@babel/core': 7.24.8 - '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.8) - semver: 7.6.2 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.8): - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.8) - core-js-compat: 3.37.1 - transitivePeerDependencies: - - supports-color - babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.24.7): dependencies: '@babel/core': 7.24.7 @@ -18510,13 +16726,6 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.24.8): - dependencies: - '@babel/core': 7.24.8 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color - babel-preset-current-node-syntax@1.0.1(@babel/core@7.24.7): dependencies: '@babel/core': 7.24.7 @@ -18549,6 +16758,10 @@ snapshots: batch-processor@1.0.0: {} + better-opn@3.0.2: + dependencies: + open: 8.4.2 + binary-extensions@2.2.0: {} binary-search-bounds@2.0.5: {} @@ -18572,23 +16785,6 @@ snapshots: bn.js@5.2.1: {} - body-parser@1.20.2: - dependencies: - 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 - transitivePeerDependencies: - - supports-color - boolbase@1.0.0: {} bootstrap@4.6.2(jquery@3.7.1)(popper.js@1.16.1): @@ -18726,8 +16922,6 @@ snapshots: esbuild: 0.19.12 load-tsconfig: 0.2.5 - bytes@3.1.2: {} - c8@8.0.1: dependencies: '@bcoe/v8-coverage': 0.2.3 @@ -18791,6 +16985,14 @@ snapshots: pathval: 1.1.1 type-detect: 4.0.8 + chai@5.1.2: + dependencies: + assertion-error: 2.0.1 + check-error: 2.1.1 + deep-eql: 5.0.2 + loupe: 3.1.2 + pathval: 2.0.0 + chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -18817,6 +17019,8 @@ snapshots: dependencies: get-func-name: 2.0.2 + check-error@2.1.1: {} + chokidar@3.5.3: dependencies: anymatch: 3.1.3 @@ -18841,8 +17045,6 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - chownr@2.0.0: {} - chromatic@11.0.8: {} chrome-trace-event@1.0.4: {} @@ -18854,10 +17056,6 @@ snapshots: inherits: 2.0.4 safe-buffer: 5.2.1 - citty@0.1.6: - dependencies: - consola: 3.2.3 - cjs-module-lexer@1.2.3: {} clamp@1.0.1: {} @@ -19007,16 +17205,12 @@ snapshots: commander@4.1.1: {} - commander@6.2.1: {} - commander@7.2.0: {} commander@8.3.0: {} common-path-prefix@3.0.0: {} - commondir@1.0.1: {} - compare-versions@4.1.4: {} compare-versions@6.1.1: {} @@ -19064,8 +17258,6 @@ snapshots: consola@2.15.3: {} - consola@3.2.3: {} - console-browserify@1.2.0: {} console.table@0.10.0: @@ -19074,24 +17266,14 @@ snapshots: constants-browserify@1.0.0: {} - content-disposition@0.5.4: - dependencies: - safe-buffer: 5.2.1 - - content-type@1.0.5: {} - convert-source-map@1.9.0: {} convert-source-map@2.0.0: {} - cookie-signature@1.0.6: {} - cookie@0.4.2: {} cookie@0.5.0: {} - cookie@0.6.0: {} - copyfiles@2.4.1: dependencies: glob: 7.2.3 @@ -19106,10 +17288,6 @@ snapshots: dependencies: browserslist: 4.23.1 - core-js-compat@3.37.1: - dependencies: - browserslist: 4.23.2 - core-js-compat@3.38.1: dependencies: browserslist: 4.23.3 @@ -19227,10 +17405,6 @@ snapshots: randombytes: 2.1.0 randomfill: 1.0.4 - crypto-random-string@4.0.0: - dependencies: - type-fest: 1.4.0 - css-font-size-keywords@1.0.0: {} css-font-stretch-keywords@1.0.1: {} @@ -19485,6 +17659,8 @@ snapshots: dependencies: type-detect: 4.0.8 + deep-eql@5.0.2: {} + deep-equal@2.2.3: dependencies: array-buffer-byte-length: 1.0.1 @@ -19530,12 +17706,8 @@ snapshots: defined@1.0.1: {} - defu@6.1.4: {} - delayed-stream@1.0.0: {} - depd@2.0.0: {} - dequal@2.0.3: {} des.js@1.1.0: @@ -19543,10 +17715,6 @@ snapshots: inherits: 2.0.4 minimalistic-assert: 1.0.1 - destroy@1.2.0: {} - - detect-indent@6.1.0: {} - detect-kerning@2.1.2: {} detect-newline@3.1.0: {} @@ -19690,8 +17858,6 @@ snapshots: optionalDependencies: wcwidth: 1.0.1 - ee-first@1.1.1: {} - ejs@3.1.10: dependencies: jake: 10.8.7 @@ -19732,8 +17898,6 @@ snapshots: encode-utf8@1.0.3: {} - encodeurl@1.0.2: {} - encoding@0.1.13: dependencies: iconv-lite: 0.6.3 @@ -19758,8 +17922,6 @@ snapshots: entities@4.5.0: {} - envinfo@7.11.1: {} - environment@1.1.0: {} error-ex@1.3.2: @@ -19898,10 +18060,10 @@ snapshots: es6-iterator: 2.0.3 es6-symbol: 3.1.4 - esbuild-register@3.5.0(esbuild@0.21.5): + esbuild-register@3.5.0(esbuild@0.23.1): dependencies: debug: 4.3.7 - esbuild: 0.21.5 + esbuild: 0.23.1 transitivePeerDependencies: - supports-color @@ -20224,8 +18386,6 @@ snapshots: esutils@2.0.3: {} - etag@1.8.1: {} - event-emitter@0.3.5: dependencies: d: 1.0.2 @@ -20286,42 +18446,6 @@ snapshots: jest-message-util: 29.7.0 jest-util: 29.7.0 - express@4.19.2: - dependencies: - accepts: 1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.2 - content-disposition: 0.5.4 - content-type: 1.0.5 - 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 - transitivePeerDependencies: - - supports-color - ext@1.7.0: dependencies: type: 2.7.2 @@ -20371,10 +18495,6 @@ snapshots: dependencies: bser: 2.1.1 - fd-package-json@1.2.0: - dependencies: - walk-up-path: 3.0.1 - fflate@0.8.2: {} figures@3.2.0: @@ -20397,30 +18517,6 @@ snapshots: dependencies: to-regex-range: 5.0.1 - finalhandler@1.2.0: - dependencies: - 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 - transitivePeerDependencies: - - supports-color - - find-cache-dir@2.1.0: - dependencies: - commondir: 1.0.1 - make-dir: 2.1.0 - pkg-dir: 3.0.0 - - find-cache-dir@3.3.2: - dependencies: - commondir: 1.0.1 - make-dir: 3.1.0 - pkg-dir: 4.2.0 - find-cache-dir@4.0.0: dependencies: common-path-prefix: 3.0.0 @@ -20428,10 +18524,6 @@ snapshots: find-root@1.1.0: {} - find-up@3.0.0: - dependencies: - locate-path: 3.0.0 - find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -20460,8 +18552,6 @@ snapshots: dependencies: dtype: 2.0.0 - flow-parser@0.230.0: {} - follow-redirects@1.15.9: {} font-atlas@2.1.0: @@ -20492,10 +18582,6 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 - forwarded@0.2.0: {} - - fresh@0.5.2: {} - from2@2.3.0: dependencies: inherits: 2.0.4 @@ -20525,10 +18611,6 @@ snapshots: jsonfile: 4.0.0 universalify: 0.1.2 - fs-minipass@2.1.0: - dependencies: - minipass: 3.3.6 - fs-monkey@1.0.5: {} fs-readdir-recursive@1.1.0: {} @@ -20598,19 +18680,6 @@ snapshots: dependencies: get-symbol-from-current-process-h: 1.0.2 - giget@1.2.1: - dependencies: - citty: 0.1.6 - consola: 3.2.3 - defu: 6.1.4 - node-fetch-native: 1.6.2 - nypm: 0.3.8 - ohash: 1.1.3 - pathe: 1.1.2 - tar: 6.2.0 - - github-slugger@2.0.0: {} - gl-mat4@1.2.0: {} gl-matrix@3.4.3: {} @@ -20653,11 +18722,6 @@ snapshots: dependencies: is-glob: 4.0.3 - glob-promise@4.2.2(glob@7.2.3): - dependencies: - '@types/glob': 7.2.0 - glob: 7.2.3 - glob-to-regexp@0.4.1: {} glob@10.3.10: @@ -20707,15 +18771,6 @@ snapshots: merge2: 1.4.1 slash: 3.0.0 - globby@14.0.2: - dependencies: - '@sindresorhus/merge-streams': 2.3.0 - fast-glob: 3.3.2 - ignore: 5.3.1 - path-type: 5.0.0 - slash: 5.1.0 - unicorn-magic: 0.1.0 - globrex@0.1.2: {} glsl-inject-defines@1.0.3: @@ -20876,18 +18931,6 @@ snapshots: dependencies: function-bind: 1.1.2 - hast-util-heading-rank@3.0.0: - dependencies: - '@types/hast': 3.0.4 - - hast-util-is-element@3.0.0: - dependencies: - '@types/hast': 3.0.4 - - hast-util-to-string@3.0.0: - dependencies: - '@types/hast': 3.0.4 - he@1.2.0: {} headers-polyfill@3.2.5: {} @@ -20922,16 +18965,6 @@ snapshots: relateurl: 0.2.7 terser: 5.31.1 - html-tags@3.3.1: {} - - http-errors@2.0.0: - dependencies: - depd: 2.0.0 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 2.0.1 - toidentifier: 1.0.1 - http-proxy-agent@5.0.0: dependencies: '@tootallnate/once': 2.0.0 @@ -21035,10 +19068,6 @@ snapshots: dependencies: loose-envify: 1.4.0 - ipaddr.js@1.9.1: {} - - is-absolute-url@4.0.1: {} - is-arguments@1.1.1: dependencies: call-bind: 1.0.7 @@ -21155,8 +19184,6 @@ snapshots: dependencies: isobject: 3.0.1 - is-plain-object@5.0.0: {} - is-potential-custom-element-name@1.0.1: {} is-regex@1.1.4: @@ -21757,59 +19784,7 @@ snapshots: dependencies: argparse: 2.0.1 - jscodeshift@0.15.2(@babel/preset-env@7.24.0(@babel/core@7.24.7)): - dependencies: - '@babel/core': 7.24.8 - '@babel/parser': 7.24.8 - '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.24.8) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.8) - '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.24.8) - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.8) - '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.24.8) - '@babel/preset-flow': 7.24.0(@babel/core@7.24.8) - '@babel/preset-typescript': 7.23.3(@babel/core@7.24.8) - '@babel/register': 7.23.7(@babel/core@7.24.8) - babel-core: 7.0.0-bridge.0(@babel/core@7.24.8) - chalk: 4.1.2 - flow-parser: 0.230.0 - graceful-fs: 4.2.11 - micromatch: 4.0.7 - neo-async: 2.6.2 - node-dir: 0.1.17 - recast: 0.23.6 - temp: 0.8.4 - write-file-atomic: 2.4.3 - optionalDependencies: - '@babel/preset-env': 7.24.0(@babel/core@7.24.7) - transitivePeerDependencies: - - supports-color - - jscodeshift@0.15.2(@babel/preset-env@7.24.8(@babel/core@7.24.8)): - dependencies: - '@babel/core': 7.24.8 - '@babel/parser': 7.24.8 - '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.24.8) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.8) - '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.24.8) - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.8) - '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.24.8) - '@babel/preset-flow': 7.24.0(@babel/core@7.24.8) - '@babel/preset-typescript': 7.23.3(@babel/core@7.24.8) - '@babel/register': 7.23.7(@babel/core@7.24.8) - babel-core: 7.0.0-bridge.0(@babel/core@7.24.8) - chalk: 4.1.2 - flow-parser: 0.230.0 - graceful-fs: 4.2.11 - micromatch: 4.0.7 - neo-async: 2.6.2 - node-dir: 0.1.17 - recast: 0.23.6 - temp: 0.8.4 - write-file-atomic: 2.4.3 - optionalDependencies: - '@babel/preset-env': 7.24.8(@babel/core@7.24.8) - transitivePeerDependencies: - - supports-color + jsdoc-type-pratt-parser@4.1.0: {} jsdom@20.0.3: dependencies: @@ -22064,11 +20039,6 @@ snapshots: mlly: 1.7.1 pkg-types: 1.1.1 - locate-path@3.0.0: - dependencies: - p-locate: 3.0.0 - path-exists: 3.0.0 - locate-path@5.0.0: dependencies: p-locate: 4.1.0 @@ -22126,6 +20096,8 @@ snapshots: dependencies: get-func-name: 2.0.2 + loupe@3.1.2: {} + lower-case@2.0.2: dependencies: tslib: 2.6.3 @@ -22140,7 +20112,7 @@ snapshots: magic-string@0.27.0: dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/sourcemap-codec': 1.5.0 magic-string@0.30.10: dependencies: @@ -22161,10 +20133,6 @@ snapshots: pify: 4.0.1 semver: 7.6.2 - make-dir@3.1.0: - dependencies: - semver: 7.6.2 - make-dir@4.0.0: dependencies: semver: 7.6.2 @@ -22272,8 +20240,6 @@ snapshots: mdurl@2.0.0: {} - media-typer@0.3.0: {} - memfs@3.5.3: dependencies: fs-monkey: 1.0.5 @@ -22286,14 +20252,10 @@ snapshots: dependencies: map-or-similar: 1.5.0 - merge-descriptors@1.0.1: {} - merge-stream@2.0.0: {} merge2@1.4.1: {} - methods@1.1.2: {} - micromatch@4.0.5: dependencies: braces: 3.0.2 @@ -22320,8 +20282,6 @@ snapshots: dependencies: mime-db: 1.52.0 - mime@1.6.0: {} - mimic-fn@2.1.0: {} mimic-fn@4.0.0: {} @@ -22360,19 +20320,8 @@ snapshots: minimist@1.2.8: {} - minipass@3.3.6: - dependencies: - yallist: 4.0.0 - - minipass@5.0.0: {} - minipass@7.0.4: {} - minizlib@2.1.2: - dependencies: - minipass: 3.3.6 - yallist: 4.0.0 - mkdirp@0.5.6: dependencies: minimist: 1.2.8 @@ -22580,8 +20529,6 @@ snapshots: transitivePeerDependencies: - supports-color - negotiator@0.6.3: {} - neo-async@2.6.2: {} next-tick@1.1.0: {} @@ -22593,12 +20540,6 @@ snapshots: node-addon-api@3.2.1: {} - node-dir@0.1.17: - dependencies: - minimatch: 3.1.2 - - node-fetch-native@1.6.2: {} - node-fetch@2.7.0(encoding@0.1.13): dependencies: whatwg-url: 5.0.0 @@ -22734,14 +20675,6 @@ snapshots: transitivePeerDependencies: - debug - nypm@0.3.8: - dependencies: - citty: 0.1.6 - consola: 3.2.3 - execa: 8.0.1 - pathe: 1.1.2 - ufo: 1.5.3 - object-assign@4.1.1: {} object-inspect@1.13.1: {} @@ -22779,12 +20712,6 @@ snapshots: define-properties: 1.2.1 es-object-atoms: 1.0.0 - ohash@1.1.3: {} - - on-finished@2.4.1: - dependencies: - ee-first: 1.1.1 - once@1.3.3: dependencies: wrappy: 1.0.2 @@ -22890,10 +20817,6 @@ snapshots: dependencies: yocto-queue: 1.1.1 - p-locate@3.0.0: - dependencies: - p-limit: 2.3.0 - p-locate@4.1.0: dependencies: p-limit: 2.3.0 @@ -22951,8 +20874,6 @@ snapshots: dependencies: entities: 4.5.0 - parseurl@1.3.3: {} - pascal-case@3.1.2: dependencies: no-case: 3.0.4 @@ -22960,8 +20881,6 @@ snapshots: path-browserify@1.0.1: {} - path-exists@3.0.0: {} - path-exists@4.0.0: {} path-exists@5.0.0: {} @@ -22979,8 +20898,6 @@ snapshots: lru-cache: 10.2.0 minipass: 7.0.4 - path-to-regexp@0.1.7: {} - path-to-regexp@3.3.0: {} path-to-regexp@6.2.1: {} @@ -22989,14 +20906,14 @@ snapshots: path-type@4.0.0: {} - path-type@5.0.0: {} - pathe@0.2.0: {} pathe@1.1.2: {} pathval@1.1.1: {} + pathval@2.0.0: {} + pbf@3.2.1: dependencies: ieee754: 1.2.1 @@ -23029,10 +20946,6 @@ snapshots: pirates@4.0.6: {} - pkg-dir@3.0.0: - dependencies: - find-up: 3.0.0 - pkg-dir@4.2.0: dependencies: find-up: 4.1.0 @@ -23188,11 +21101,6 @@ snapshots: possible-typed-array-names@1.0.0: {} - postcss-browser-comments@4.0.0(browserslist@4.23.2)(postcss@8.4.39): - dependencies: - browserslist: 4.23.2 - postcss: 8.4.39 - postcss-browser-comments@4.0.0(browserslist@4.23.3)(postcss@8.4.39): dependencies: browserslist: 4.23.3 @@ -23206,14 +21114,6 @@ snapshots: postcss: 8.4.39 ts-node: 10.9.2(@types/node@20.14.10)(typescript@5.5.2) - postcss-normalize@10.0.1(browserslist@4.23.2)(postcss@8.4.39): - dependencies: - '@csstools/normalize.css': 12.1.1 - browserslist: 4.23.2 - postcss: 8.4.39 - postcss-browser-comments: 4.0.0(browserslist@4.23.2)(postcss@8.4.39) - sanitize.css: 13.0.0 - postcss-normalize@10.0.1(browserslist@4.23.3)(postcss@8.4.39): dependencies: '@csstools/normalize.css': 12.1.1 @@ -23234,8 +21134,6 @@ snapshots: prettier@2.8.8: {} - prettier@3.2.5: {} - pretty-format@27.5.1: dependencies: ansi-regex: 5.0.1 @@ -23287,11 +21185,6 @@ snapshots: protocol-buffers-schema@3.6.0: {} - proxy-addr@2.0.7: - dependencies: - forwarded: 0.2.0 - ipaddr.js: 1.9.1 - proxy-from-env@1.1.0: {} psl@1.9.0: {} @@ -23320,10 +21213,6 @@ snapshots: pngjs: 5.0.0 yargs: 15.4.1 - qs@6.11.0: - dependencies: - side-channel: 1.0.6 - qs@6.12.0: dependencies: side-channel: 1.0.6 @@ -23349,15 +21238,6 @@ snapshots: randombytes: 2.1.0 safe-buffer: 5.2.1 - range-parser@1.2.1: {} - - raw-body@2.5.2: - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - react-app-polyfill@3.0.0: dependencies: core-js: 3.36.0 @@ -23399,11 +21279,6 @@ snapshots: uncontrollable: 7.2.1(react@18.2.0) warning: 4.0.3 - react-colorful@5.6.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-cookie@4.0.0(react@18.2.0): dependencies: '@types/hoist-non-react-statics': 3.3.5 @@ -23449,14 +21324,6 @@ snapshots: react-dom: 18.2.0(react@18.2.0) tslib: 2.6.3 - react-element-to-jsx-string@15.0.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - '@base2/pretty-print-object': 1.0.1 - is-plain-object: 5.0.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-is: 18.1.0 - react-error-boundary@3.1.4(react@18.2.0): dependencies: '@babel/runtime': 7.24.7 @@ -23491,8 +21358,6 @@ snapshots: react-is@17.0.2: {} - react-is@18.1.0: {} - react-is@18.2.0: {} react-json-tree@0.18.0(@types/react@18.3.12)(react@18.2.0): @@ -23769,7 +21634,7 @@ snapshots: esprima: 4.0.1 source-map: 0.6.1 tiny-invariant: 1.3.3 - tslib: 2.6.3 + tslib: 2.7.0 redent@3.0.0: dependencies: @@ -23879,23 +21744,6 @@ snapshots: regl@2.1.0: {} - rehype-external-links@3.0.0: - dependencies: - '@types/hast': 3.0.4 - '@ungap/structured-clone': 1.2.0 - hast-util-is-element: 3.0.0 - is-absolute-url: 4.0.1 - space-separated-tokens: 2.0.2 - unist-util-visit: 5.0.0 - - rehype-slug@6.0.0: - dependencies: - '@types/hast': 3.0.4 - github-slugger: 2.0.0 - hast-util-heading-rank: 3.0.0 - hast-util-to-string: 3.0.0 - unist-util-visit: 5.0.0 - relateurl@0.2.7: {} require-directory@2.1.1: {} @@ -24139,24 +21987,6 @@ snapshots: semver@7.6.2: {} - send@0.18.0: - dependencies: - 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 - transitivePeerDependencies: - - supports-color - serialize-javascript@6.0.0: dependencies: randombytes: 2.1.0 @@ -24165,15 +21995,6 @@ snapshots: dependencies: randombytes: 2.1.0 - serve-static@1.15.0: - dependencies: - encodeurl: 1.0.2 - escape-html: 1.0.3 - parseurl: 1.3.3 - send: 0.18.0 - transitivePeerDependencies: - - supports-color - set-blocking@2.0.0: {} set-cookie-parser@2.6.0: {} @@ -24201,8 +22022,6 @@ snapshots: setimmediate@1.0.5: {} - setprototypeof@1.2.0: {} - sha.js@2.4.11: dependencies: inherits: 2.0.4 @@ -24257,8 +22076,6 @@ snapshots: slash@3.0.0: {} - slash@5.1.0: {} - slice-ansi@5.0.0: dependencies: ansi-styles: 6.2.1 @@ -24313,8 +22130,6 @@ snapshots: dependencies: whatwg-url: 7.1.0 - space-separated-tokens@2.0.2: {} - spark-md5@3.0.2: {} spawn-command@0.0.2: {} @@ -24341,38 +22156,12 @@ snapshots: dependencies: internal-slot: 1.0.7 - storybook@8.2.4(@babel/preset-env@7.24.0(@babel/core@7.24.7)): + storybook@8.4.7(prettier@2.8.8): dependencies: - '@babel/core': 7.24.8 - '@babel/types': 7.24.8 - '@storybook/codemod': 8.2.4 - '@storybook/core': 8.2.4 - '@types/semver': 7.5.8 - '@yarnpkg/fslib': 2.10.3 - '@yarnpkg/libzip': 2.3.0 - chalk: 4.1.2 - commander: 6.2.1 - cross-spawn: 7.0.3 - detect-indent: 6.1.0 - envinfo: 7.11.1 - execa: 5.1.1 - fd-package-json: 1.2.0 - find-up: 5.0.0 - fs-extra: 11.2.0 - giget: 1.2.1 - globby: 14.0.2 - jscodeshift: 0.15.2(@babel/preset-env@7.24.0(@babel/core@7.24.7)) - leven: 3.1.0 - ora: 5.4.1 - prettier: 3.2.5 - prompts: 2.4.2 - semver: 7.6.2 - strip-json-comments: 3.1.1 - tempy: 3.1.0 - tiny-invariant: 1.3.3 - ts-dedent: 2.2.0 + '@storybook/core': 8.4.7(prettier@2.8.8) + optionalDependencies: + prettier: 2.8.8 transitivePeerDependencies: - - '@babel/preset-env' - bufferutil - supports-color - utf-8-validate @@ -24602,47 +22391,21 @@ snapshots: inherits: 2.0.4 readable-stream: 3.6.2 - tar@6.2.0: - dependencies: - chownr: 2.0.0 - fs-minipass: 2.1.0 - minipass: 5.0.0 - minizlib: 2.1.2 - mkdirp: 1.0.4 - yallist: 4.0.0 - - telejson@7.2.0: - dependencies: - memoizerific: 1.11.3 - - temp-dir@3.0.0: {} - - temp@0.8.4: - dependencies: - rimraf: 2.6.3 - temp@0.9.4: dependencies: mkdirp: 0.5.6 rimraf: 2.6.3 - tempy@3.1.0: - dependencies: - is-stream: 3.0.0 - temp-dir: 3.0.0 - type-fest: 2.19.0 - unique-string: 3.0.0 - - terser-webpack-plugin@5.3.10(esbuild@0.21.5)(webpack@5.93.0(esbuild@0.21.5)): + terser-webpack-plugin@5.3.10(esbuild@0.23.1)(webpack@5.93.0(esbuild@0.23.1)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.2 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(esbuild@0.23.1) optionalDependencies: - esbuild: 0.21.5 + esbuild: 0.23.1 terser@5.31.1: dependencies: @@ -24700,8 +22463,12 @@ snapshots: tinyqueue@2.0.3: {} + tinyrainbow@1.2.0: {} + tinyspy@2.2.1: {} + tinyspy@3.0.2: {} + tmp@0.0.33: dependencies: os-tmpdir: 1.0.2 @@ -24724,8 +22491,6 @@ snapshots: dependencies: is-number: 7.0.0 - toidentifier@1.0.1: {} - topojson-client@3.1.0: dependencies: commander: 2.20.3 @@ -24875,11 +22640,6 @@ snapshots: type-fest@4.21.0: {} - type-is@1.6.18: - dependencies: - media-typer: 0.3.0 - mime-types: 2.1.35 - type@2.7.2: {} typed-array-buffer@1.0.2: @@ -24980,27 +22740,6 @@ snapshots: unicode-property-aliases-ecmascript@2.1.0: {} - unicorn-magic@0.1.0: {} - - unique-string@3.0.0: - dependencies: - crypto-random-string: 4.0.0 - - unist-util-is@6.0.0: - dependencies: - '@types/unist': 3.0.2 - - unist-util-visit-parents@6.0.1: - dependencies: - '@types/unist': 3.0.2 - unist-util-is: 6.0.0 - - unist-util-visit@5.0.0: - dependencies: - '@types/unist': 3.0.2 - unist-util-is: 6.0.0 - unist-util-visit-parents: 6.0.1 - universal-cookie@4.0.4: dependencies: '@types/cookie': 0.3.3 @@ -25012,11 +22751,9 @@ snapshots: universalify@2.0.1: {} - unpipe@1.0.0: {} - unplugin@1.10.0: dependencies: - acorn: 8.12.1 + acorn: 8.14.0 chokidar: 3.6.0 webpack-sources: 3.2.3 webpack-virtual-modules: 0.6.1 @@ -25111,8 +22848,6 @@ snapshots: is-typed-array: 1.1.13 which-typed-array: 1.1.15 - utils-merge@1.0.1: {} - uuid@9.0.1: {} v8-compile-cache-lib@3.0.1: @@ -25139,8 +22874,6 @@ snapshots: validate.io-number@1.0.3: {} - vary@1.1.2: {} - vite-node@1.6.0(@types/node@20.14.10)(sass@1.77.6)(terser@5.31.2): dependencies: cac: 6.7.14 @@ -25291,8 +23024,6 @@ snapshots: dependencies: xml-name-validator: 4.0.0 - walk-up-path@3.0.1: {} - walker@1.0.8: dependencies: makeerror: 1.0.12 @@ -25338,7 +23069,7 @@ snapshots: webpack-virtual-modules@0.6.1: {} - webpack@5.93.0(esbuild@0.21.5): + webpack@5.93.0(esbuild@0.23.1): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.6 @@ -25361,7 +23092,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(esbuild@0.21.5)(webpack@5.93.0(esbuild@0.21.5)) + terser-webpack-plugin: 5.3.10(esbuild@0.23.1)(webpack@5.93.0(esbuild@0.23.1)) watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -25479,12 +23210,6 @@ snapshots: wrappy@1.0.2: {} - write-file-atomic@2.4.3: - dependencies: - graceful-fs: 4.2.11 - imurmurhash: 0.1.4 - signal-exit: 3.0.7 - write-file-atomic@4.0.2: dependencies: imurmurhash: 0.1.4 @@ -25520,8 +23245,6 @@ snapshots: yallist@3.1.1: {} - yallist@4.0.0: {} - yaml@1.10.2: {} yaml@2.3.1: {}