diff --git a/package.json b/package.json index 201c00ad24..6c847b2f42 100644 --- a/package.json +++ b/package.json @@ -117,6 +117,7 @@ "pg-boss": "^9.0.3", "prettier": "^3.0.3", "prism-react-renderer": "^2.1.0", + "qs": "^6.11.2", "react": "^18.2.0", "react-data-grid": "7.0.0-beta.13", "react-datepicker": "^4.11.0", diff --git a/packages/twenty-front/src/modules/object-metadata/hooks/useObjectMetadataItem.ts b/packages/twenty-front/src/modules/object-metadata/hooks/useObjectMetadataItem.ts index 6baed042ba..e59f7f8c00 100644 --- a/packages/twenty-front/src/modules/object-metadata/hooks/useObjectMetadataItem.ts +++ b/packages/twenty-front/src/modules/object-metadata/hooks/useObjectMetadataItem.ts @@ -83,12 +83,14 @@ export const useObjectMetadataItem = ( objectMetadataItem, }); - const findManyRecordsQuery = useGenerateFindManyRecordsQuery({ + const generateFindManyRecordsQuery = useGenerateFindManyRecordsQuery(); + const findManyRecordsQuery = generateFindManyRecordsQuery({ objectMetadataItem, depth, }); - const findOneRecordQuery = useGenerateFindOneRecordQuery({ + const generateFindOneRecordQuery = useGenerateFindOneRecordQuery(); + const findOneRecordQuery = generateFindOneRecordQuery({ objectMetadataItem, depth, }); diff --git a/packages/twenty-front/src/modules/object-metadata/utils/formatFieldMetadataItemsAsFilterDefinitions.ts b/packages/twenty-front/src/modules/object-metadata/utils/formatFieldMetadataItemsAsFilterDefinitions.ts index 2cd55da359..59e622f86c 100644 --- a/packages/twenty-front/src/modules/object-metadata/utils/formatFieldMetadataItemsAsFilterDefinitions.ts +++ b/packages/twenty-front/src/modules/object-metadata/utils/formatFieldMetadataItemsAsFilterDefinitions.ts @@ -38,7 +38,7 @@ export const formatFieldMetadataItemsAsFilterDefinitions = ({ return [...acc, formatFieldMetadataItemAsFilterDefinition({ field })]; }, [] as FilterDefinition[]); -const formatFieldMetadataItemAsFilterDefinition = ({ +export const formatFieldMetadataItemAsFilterDefinition = ({ field, }: { field: ObjectMetadataItem['fields'][0]; diff --git a/packages/twenty-front/src/modules/object-record/hooks/useGenerateFindManyRecordsQuery.ts b/packages/twenty-front/src/modules/object-record/hooks/useGenerateFindManyRecordsQuery.ts index d726f45e21..bf9043023d 100644 --- a/packages/twenty-front/src/modules/object-record/hooks/useGenerateFindManyRecordsQuery.ts +++ b/packages/twenty-front/src/modules/object-record/hooks/useGenerateFindManyRecordsQuery.ts @@ -4,16 +4,16 @@ import { useMapFieldMetadataToGraphQLQuery } from '@/object-metadata/hooks/useMa import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem'; import { capitalize } from '~/utils/string/capitalize'; -export const useGenerateFindManyRecordsQuery = ({ - objectMetadataItem, - depth, -}: { - objectMetadataItem: ObjectMetadataItem; - depth?: number; -}) => { +export const useGenerateFindManyRecordsQuery = () => { const mapFieldMetadataToGraphQLQuery = useMapFieldMetadataToGraphQLQuery(); - return gql` + return ({ + objectMetadataItem, + depth, + }: { + objectMetadataItem: ObjectMetadataItem; + depth?: number; + }) => gql` query FindMany${capitalize( objectMetadataItem.namePlural, )}($filter: ${capitalize( diff --git a/packages/twenty-front/src/modules/object-record/hooks/useGenerateFindOneRecordQuery.ts b/packages/twenty-front/src/modules/object-record/hooks/useGenerateFindOneRecordQuery.ts index c40f6aa7b7..46259719df 100644 --- a/packages/twenty-front/src/modules/object-record/hooks/useGenerateFindOneRecordQuery.ts +++ b/packages/twenty-front/src/modules/object-record/hooks/useGenerateFindOneRecordQuery.ts @@ -1,34 +1,30 @@ import { gql } from '@apollo/client'; import { useMapFieldMetadataToGraphQLQuery } from '@/object-metadata/hooks/useMapFieldMetadataToGraphQLQuery'; -import { EMPTY_QUERY } from '@/object-metadata/hooks/useObjectMetadataItem'; import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem'; -export const useGenerateFindOneRecordQuery = ({ - objectMetadataItem, - depth, -}: { - objectMetadataItem: ObjectMetadataItem; - depth?: number; -}) => { +export const useGenerateFindOneRecordQuery = () => { const mapFieldMetadataToGraphQLQuery = useMapFieldMetadataToGraphQLQuery(); - if (!objectMetadataItem) { - return EMPTY_QUERY; - } - - return gql` - query FindOne${objectMetadataItem.nameSingular}($objectRecordId: UUID!) { - ${objectMetadataItem.nameSingular}(filter: { - id: { - eq: $objectRecordId + return ({ + objectMetadataItem, + depth, + }: { + objectMetadataItem: Pick; + depth?: number; + }) => + gql` + query FindOne${objectMetadataItem.nameSingular}($objectRecordId: UUID!) { + ${objectMetadataItem.nameSingular}(filter: { + id: { + eq: $objectRecordId + } + }){ + id + ${objectMetadataItem.fields + .map((field) => mapFieldMetadataToGraphQLQuery(field, depth)) + .join('\n')} } - }){ - id - ${objectMetadataItem.fields - .map((field) => mapFieldMetadataToGraphQLQuery(field, depth)) - .join('\n')} } - } - `; + `; }; diff --git a/packages/twenty-front/src/modules/object-record/record-relation-card/components/RecordRelationFieldCardSection.tsx b/packages/twenty-front/src/modules/object-record/record-relation-card/components/RecordRelationFieldCardSection.tsx index 56e324bec0..742418304d 100644 --- a/packages/twenty-front/src/modules/object-record/record-relation-card/components/RecordRelationFieldCardSection.tsx +++ b/packages/twenty-front/src/modules/object-record/record-relation-card/components/RecordRelationFieldCardSection.tsx @@ -1,9 +1,12 @@ import { useCallback, useContext, useEffect, useMemo } from 'react'; +import { Link } from 'react-router-dom'; import { css } from '@emotion/react'; import styled from '@emotion/styled'; +import qs from 'qs'; import { useRecoilValue } from 'recoil'; import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem'; +import { parseFieldRelationType } from '@/object-metadata/utils/parseFieldRelationType'; import { FieldContext } from '@/object-record/field/contexts/FieldContext'; import { usePersistField } from '@/object-record/field/hooks/usePersistField'; import { entityFieldsFamilyState } from '@/object-record/field/states/entityFieldsFamilyState'; @@ -23,7 +26,10 @@ import { LightIconButton } from '@/ui/input/button/components/LightIconButton'; import { Card } from '@/ui/layout/card/components/Card'; import { Dropdown } from '@/ui/layout/dropdown/components/Dropdown'; import { useDropdown } from '@/ui/layout/dropdown/hooks/useDropdown'; +import { DropdownScope } from '@/ui/layout/dropdown/scopes/DropdownScope'; import { Section } from '@/ui/layout/section/components/Section'; +import { FilterQueryParams } from '@/views/hooks/internal/useFiltersFromQueryParams'; +import { ViewFilterOperand } from '@/views/types/ViewFilterOperand'; const StyledAddDropdown = styled(Dropdown)` margin-left: auto; @@ -54,8 +60,23 @@ const StyledHeader = styled.header<{ isDropdownOpen?: boolean }>` `; const StyledTitle = styled.div` + align-items: flex-end; + display: flex; + gap: ${({ theme }) => theme.spacing(1)}; +`; + +const StyledTitleLabel = styled.div` font-weight: ${({ theme }) => theme.font.weight.medium}; - padding: ${({ theme }) => theme.spacing(0, 1)}; +`; + +const StyledLink = styled(Link)` + color: ${({ theme }) => theme.font.color.light}; + text-decoration: none; + font-size: ${({ theme }) => theme.font.size.sm}; + + :hover { + color: ${({ theme }) => theme.font.color.secondary}; + } `; export const RecordRelationFieldCardSection = () => { @@ -191,33 +212,54 @@ export const RecordRelationFieldCardSection = () => { if (!relationLabelIdentifierFieldMetadata) return null; + const filterQueryParams: FilterQueryParams = { + filter: { + [relationFieldMetadataItem?.name || '']: { + [ViewFilterOperand.Is]: [entityId], + }, + }, + }; + const filterLinkHref = `/objects/${ + relationObjectMetadataItem.namePlural + }?${qs.stringify(filterQueryParams)}`; + return (
- {fieldDefinition.label} - - } - dropdownComponents={ - - } - dropdownHotkeyScope={{ - scope: dropdownId, - }} - /> + + {fieldDefinition.label} + {parseFieldRelationType(relationFieldMetadataItem) === + 'TO_ONE_OBJECT' && ( + + All ({relationRecords.length}) + + )} + + + + } + dropdownComponents={ + + } + dropdownHotkeyScope={{ + scope: dropdownId, + }} + /> + {!!relationRecords.length && ( diff --git a/packages/twenty-front/src/modules/views/components/FilterQueryParamsEffect.tsx b/packages/twenty-front/src/modules/views/components/FilterQueryParamsEffect.tsx new file mode 100644 index 0000000000..fe72b24bc0 --- /dev/null +++ b/packages/twenty-front/src/modules/views/components/FilterQueryParamsEffect.tsx @@ -0,0 +1,39 @@ +import { useEffect } from 'react'; +import { useRecoilValue, useSetRecoilState } from 'recoil'; + +import { useFiltersFromQueryParams } from '@/views/hooks/internal/useFiltersFromQueryParams'; +import { useViewScopedStates } from '@/views/hooks/internal/useViewScopedStates'; +import { useViewBar } from '@/views/hooks/useViewBar'; + +export const FilterQueryParamsEffect = () => { + const { hasFiltersQueryParams, getFiltersFromQueryParams } = + useFiltersFromQueryParams(); + const { currentViewFiltersState, onViewFiltersChangeState } = + useViewScopedStates(); + const setCurrentViewFilters = useSetRecoilState(currentViewFiltersState); + const onViewFiltersChange = useRecoilValue(onViewFiltersChangeState); + const { resetViewBar } = useViewBar(); + + useEffect(() => { + if (!hasFiltersQueryParams) return; + + getFiltersFromQueryParams().then((filtersFromParams) => { + if (Array.isArray(filtersFromParams)) { + setCurrentViewFilters(filtersFromParams); + onViewFiltersChange?.(filtersFromParams); + } + }); + + return () => { + resetViewBar(); + }; + }, [ + getFiltersFromQueryParams, + hasFiltersQueryParams, + onViewFiltersChange, + resetViewBar, + setCurrentViewFilters, + ]); + + return null; +}; diff --git a/packages/twenty-front/src/modules/views/components/ViewBar.tsx b/packages/twenty-front/src/modules/views/components/ViewBar.tsx index aec645b4e5..f1797d0d6e 100644 --- a/packages/twenty-front/src/modules/views/components/ViewBar.tsx +++ b/packages/twenty-front/src/modules/views/components/ViewBar.tsx @@ -1,10 +1,12 @@ import { ReactNode } from 'react'; +import { useParams } from 'react-router-dom'; import { ObjectFilterDropdownButton } from '@/object-record/object-filter-dropdown/components/ObjectFilterDropdownButton'; import { FiltersHotkeyScope } from '@/object-record/object-filter-dropdown/types/FiltersHotkeyScope'; import { ObjectSortDropdownButton } from '@/object-record/object-sort-dropdown/components/ObjectSortDropdownButton'; import { useDropdown } from '@/ui/layout/dropdown/hooks/useDropdown'; import { TopBar } from '@/ui/layout/top-bar/TopBar'; +import { FilterQueryParamsEffect } from '@/views/components/FilterQueryParamsEffect'; import { ViewBarFilterEffect } from '@/views/components/ViewBarFilterEffect'; import { ViewBarSortEffect } from '@/views/components/ViewBarSortEffect'; import { useViewBar } from '@/views/hooks/useViewBar'; @@ -45,6 +47,7 @@ export const ViewBar = ({ const { upsertViewSort, upsertViewFilter } = useViewBar({ viewBarId: viewBarId, }); + const { objectNamePlural } = useParams(); const filterDropdownId = 'view-filter'; const sortDropdownId = 'view-sort'; @@ -65,6 +68,7 @@ export const ViewBar = ({ sortDropdownId={sortDropdownId} onSortSelect={upsertViewSort} /> + {!!objectNamePlural && } - {currentViewSorts?.map((sort) => { - return ; - })} + {currentViewSorts?.map((sort) => ( + + ))} {!!currentViewSorts?.length && !!currentViewFilters?.length && ( )} - {currentViewFilters?.map((viewFilter) => { - return ( - + {currentViewFilters?.map((viewFilter) => ( + + - - ); - })} + + + ))} {hasFilterButton && ( diff --git a/packages/twenty-front/src/modules/views/components/ViewBarFilterEffect.tsx b/packages/twenty-front/src/modules/views/components/ViewBarFilterEffect.tsx index 1686762c3f..991ed56c0d 100644 --- a/packages/twenty-front/src/modules/views/components/ViewBarFilterEffect.tsx +++ b/packages/twenty-front/src/modules/views/components/ViewBarFilterEffect.tsx @@ -27,7 +27,7 @@ export const ViewBarFilterEffect = ({ filterDefinitionUsedInDropdown, setObjectFilterDropdownSelectedRecordIds, isObjectFilterDropdownUnfolded, - } = useFilterDropdown({ filterDropdownId: filterDropdownId }); + } = useFilterDropdown({ filterDropdownId }); useEffect(() => { if (availableFilterDefinitions) { diff --git a/packages/twenty-front/src/modules/views/hooks/internal/useFiltersFromQueryParams.ts b/packages/twenty-front/src/modules/views/hooks/internal/useFiltersFromQueryParams.ts new file mode 100644 index 0000000000..68636f5979 --- /dev/null +++ b/packages/twenty-front/src/modules/views/hooks/internal/useFiltersFromQueryParams.ts @@ -0,0 +1,160 @@ +import { useMemo } from 'react'; +import { useParams, useSearchParams } from 'react-router-dom'; +import { useApolloClient } from '@apollo/client'; +import qs from 'qs'; +import { useRecoilCallback } from 'recoil'; +import z from 'zod'; + +import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem'; +import { useObjectNameSingularFromPlural } from '@/object-metadata/hooks/useObjectNameSingularFromPlural'; +import { objectMetadataItemFamilySelector } from '@/object-metadata/states/objectMetadataItemFamilySelector'; +import { formatFieldMetadataItemAsFilterDefinition } from '@/object-metadata/utils/formatFieldMetadataItemsAsFilterDefinitions'; +import { getObjectRecordIdentifier } from '@/object-metadata/utils/getObjectRecordIdentifier'; +import { useGenerateFindManyRecordsQuery } from '@/object-record/hooks/useGenerateFindManyRecordsQuery'; +import { ObjectRecord } from '@/object-record/types/ObjectRecord'; +import { ViewFilter } from '@/views/types/ViewFilter'; +import { ViewFilterOperand } from '@/views/types/ViewFilterOperand'; +import { assertNotNull } from '~/utils/assert'; + +const filterQueryParamsSchema = z.object({ + filter: z.record( + z.record( + z.nativeEnum(ViewFilterOperand), + z.string().or(z.array(z.string())), + ), + ), +}); + +export type FilterQueryParams = z.infer; + +export const useFiltersFromQueryParams = () => { + const apolloClient = useApolloClient(); + const [searchParams] = useSearchParams(); + const { objectNamePlural = '' } = useParams(); + const { objectNameSingular } = useObjectNameSingularFromPlural({ + objectNamePlural, + }); + const { objectMetadataItem } = useObjectMetadataItem({ objectNameSingular }); + const generateFindManyRecordsQuery = useGenerateFindManyRecordsQuery(); + + const filterParamsValidation = filterQueryParamsSchema.safeParse( + qs.parse(searchParams.toString()), + ); + const filterQueryParams = useMemo( + () => + filterParamsValidation.success ? filterParamsValidation.data.filter : {}, + [filterParamsValidation], + ); + const hasFiltersQueryParams = filterParamsValidation.success; + + const getFiltersFromQueryParams = useRecoilCallback( + ({ snapshot }) => + async () => { + if (!hasFiltersQueryParams) return []; + + return ( + await Promise.all( + Object.entries(filterQueryParams).map>( + async ([fieldName, filterFromURL]) => { + const [filterOperandFromURL, filterValueFromURL] = + Object.entries(filterFromURL)[0]; + const fieldMetadataItem = objectMetadataItem.fields.find( + (field) => field.name === fieldName, + ); + + if (!fieldMetadataItem) return null; + + const filterDefinition = + formatFieldMetadataItemAsFilterDefinition({ + field: fieldMetadataItem, + }); + + if (!filterDefinition) return null; + + const relationObjectMetadataNameSingular = + fieldMetadataItem.toRelationMetadata?.fromObjectMetadata + .nameSingular; + + const relationObjectMetadataNamePlural = + fieldMetadataItem.toRelationMetadata?.fromObjectMetadata + .namePlural; + + const relationObjectMetadataItem = + relationObjectMetadataNameSingular + ? snapshot + .getLoadable( + objectMetadataItemFamilySelector({ + objectName: relationObjectMetadataNameSingular, + objectNameType: 'singular', + }), + ) + .getValue() + : null; + + const relationRecordNames = []; + + if ( + relationObjectMetadataNamePlural && + relationObjectMetadataItem && + Array.isArray(filterValueFromURL) + ) { + const queryResult = await apolloClient.query< + Record + >({ + query: generateFindManyRecordsQuery({ + objectMetadataItem: relationObjectMetadataItem, + }), + variables: { + filter: { id: { in: filterValueFromURL } }, + }, + }); + + const relationRecordNamesFromQuery = queryResult.data?.[ + relationObjectMetadataNamePlural + ]?.edges.map( + ({ node: record }) => + getObjectRecordIdentifier({ + objectMetadataItem: relationObjectMetadataItem, + record, + }).name, + ); + + relationRecordNames.push(...relationRecordNamesFromQuery); + } + + const filterValueAsString = Array.isArray(filterValueFromURL) + ? JSON.stringify(filterValueFromURL) + : filterValueFromURL; + + return { + id: `tmp-${[ + fieldName, + filterOperandFromURL, + filterValueFromURL, + ].join('-')}`, + fieldMetadataId: fieldMetadataItem.id, + operand: filterOperandFromURL as ViewFilterOperand, + value: filterValueAsString, + displayValue: + relationRecordNames?.join(', ') ?? filterValueAsString, + definition: filterDefinition, + }; + }, + ), + ) + ).filter(assertNotNull); + }, + [ + apolloClient, + filterQueryParams, + generateFindManyRecordsQuery, + hasFiltersQueryParams, + objectMetadataItem.fields, + ], + ); + + return { + hasFiltersQueryParams, + getFiltersFromQueryParams, + }; +}; diff --git a/packages/twenty-front/src/modules/views/hooks/internal/useViewFilters.ts b/packages/twenty-front/src/modules/views/hooks/internal/useViewFilters.ts index 8a9a078e0b..6d651dc782 100644 --- a/packages/twenty-front/src/modules/views/hooks/internal/useViewFilters.ts +++ b/packages/twenty-front/src/modules/views/hooks/internal/useViewFilters.ts @@ -43,13 +43,7 @@ export const useViewFilters = (viewScopeId: string) => { viewScopeId, }); - if (!currentViewId) { - return; - } - if (!currentViewFilters) { - return; - } - if (!savedViewFiltersByKey) { + if (!currentViewId || !currentViewFilters || !savedViewFiltersByKey) { return; } diff --git a/packages/twenty-front/src/modules/views/hooks/useViewBar.ts b/packages/twenty-front/src/modules/views/hooks/useViewBar.ts index ea2bd6d1d0..73cc7cf929 100644 --- a/packages/twenty-front/src/modules/views/hooks/useViewBar.ts +++ b/packages/twenty-front/src/modules/views/hooks/useViewBar.ts @@ -85,7 +85,10 @@ export const useViewBar = (props?: UseViewProps) => { const changeViewInUrl = useCallback( (viewId: string) => { - setSearchParams({ view: viewId }); + setSearchParams((previousSearchParams) => { + previousSearchParams.set('view', viewId); + return previousSearchParams; + }); }, [setSearchParams], ); diff --git a/yarn.lock b/yarn.lock index ceb4e26668..1d815f5069 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1466,26 +1466,49 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.16, @babel/core@npm:^7.14.0, @babel/core@npm:^7.18.9, @babel/core@npm:^7.19.6, @babel/core@npm:^7.20.12, @babel/core@npm:^7.21.3, @babel/core@npm:^7.22.5, @babel/core@npm:^7.22.9, @babel/core@npm:^7.23.0, @babel/core@npm:^7.23.2, @babel/core@npm:^7.23.3, @babel/core@npm:^7.7.5": - version: 7.23.7 - resolution: "@babel/core@npm:7.23.7" +"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.14.0, @babel/core@npm:^7.18.9, @babel/core@npm:^7.19.6, @babel/core@npm:^7.20.12, @babel/core@npm:^7.21.3, @babel/core@npm:^7.22.5, @babel/core@npm:^7.23.0, @babel/core@npm:^7.23.2, @babel/core@npm:^7.23.3, @babel/core@npm:^7.7.5": + version: 7.23.5 + resolution: "@babel/core@npm:7.23.5" + dependencies: + "@ampproject/remapping": "npm:^2.2.0" + "@babel/code-frame": "npm:^7.23.5" + "@babel/generator": "npm:^7.23.5" + "@babel/helper-compilation-targets": "npm:^7.22.15" + "@babel/helper-module-transforms": "npm:^7.23.3" + "@babel/helpers": "npm:^7.23.5" + "@babel/parser": "npm:^7.23.5" + "@babel/template": "npm:^7.22.15" + "@babel/traverse": "npm:^7.23.5" + "@babel/types": "npm:^7.23.5" + convert-source-map: "npm:^2.0.0" + debug: "npm:^4.1.0" + gensync: "npm:^1.0.0-beta.2" + json5: "npm:^2.2.3" + semver: "npm:^6.3.1" + checksum: 311a512a870ee330a3f9a7ea89e5df790b2b5af0b1bd98b10b4edc0de2ac440f0df4d69ea2c0ee38a4b89041b9a495802741d93603be7d4fd834ec8bb6970bd2 + languageName: node + linkType: hard + +"@babel/core@npm:^7.13.16, @babel/core@npm:^7.22.9": + version: 7.23.6 + resolution: "@babel/core@npm:7.23.6" dependencies: "@ampproject/remapping": "npm:^2.2.0" "@babel/code-frame": "npm:^7.23.5" "@babel/generator": "npm:^7.23.6" "@babel/helper-compilation-targets": "npm:^7.23.6" "@babel/helper-module-transforms": "npm:^7.23.3" - "@babel/helpers": "npm:^7.23.7" + "@babel/helpers": "npm:^7.23.6" "@babel/parser": "npm:^7.23.6" "@babel/template": "npm:^7.22.15" - "@babel/traverse": "npm:^7.23.7" + "@babel/traverse": "npm:^7.23.6" "@babel/types": "npm:^7.23.6" convert-source-map: "npm:^2.0.0" debug: "npm:^4.1.0" gensync: "npm:^1.0.0-beta.2" json5: "npm:^2.2.3" semver: "npm:^6.3.1" - checksum: 38c9934973d384ed83369712978453eac91dc3f22167404dbdb272b64f602e74728a6f37012c53ee57e521b8ae2da60097f050497d9b6a212d28b59cdfb2cd1d + checksum: a02bae7d916029b70706dc301535e1b31e5d216f55d4ee6f64a15825c6b69ee2c14c52a213d1497ec414e925ed4e9d897d41fb0d75df9fea28ed2c0008790e31 languageName: node linkType: hard @@ -1501,6 +1524,18 @@ __metadata: languageName: node linkType: hard +"@babel/generator@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/generator@npm:7.23.5" + dependencies: + "@babel/types": "npm:^7.23.5" + "@jridgewell/gen-mapping": "npm:^0.3.2" + "@jridgewell/trace-mapping": "npm:^0.3.17" + jsesc: "npm:^2.5.1" + checksum: 14c6e874f796c4368e919bed6003bb0adc3ce837760b08f9e646d20aeb5ae7d309723ce6e4f06bcb4a2b5753145446c8e4425851380f695e40e71e1760f49e7b + languageName: node + linkType: hard + "@babel/helper-annotate-as-pure@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-annotate-as-pure@npm:7.22.5" @@ -1532,7 +1567,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-create-class-features-plugin@npm:^7.18.6, @babel/helper-create-class-features-plugin@npm:^7.22.15, @babel/helper-create-class-features-plugin@npm:^7.23.6, @babel/helper-create-class-features-plugin@npm:^7.23.7": +"@babel/helper-create-class-features-plugin@npm:^7.18.6, @babel/helper-create-class-features-plugin@npm:^7.22.15, @babel/helper-create-class-features-plugin@npm:^7.23.7": version: 7.23.7 resolution: "@babel/helper-create-class-features-plugin@npm:7.23.7" dependencies: @@ -1551,6 +1586,25 @@ __metadata: languageName: node linkType: hard +"@babel/helper-create-class-features-plugin@npm:^7.23.6": + version: 7.23.6 + resolution: "@babel/helper-create-class-features-plugin@npm:7.23.6" + dependencies: + "@babel/helper-annotate-as-pure": "npm:^7.22.5" + "@babel/helper-environment-visitor": "npm:^7.22.20" + "@babel/helper-function-name": "npm:^7.23.0" + "@babel/helper-member-expression-to-functions": "npm:^7.23.0" + "@babel/helper-optimise-call-expression": "npm:^7.22.5" + "@babel/helper-replace-supers": "npm:^7.22.20" + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.22.5" + "@babel/helper-split-export-declaration": "npm:^7.22.6" + semver: "npm:^6.3.1" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 4b923a63b757bf030839263b9609d4fc1f9858a701c173a6a15d0fc135a71847c842faddfd8af8eb324d2379725ba0d9a3d004d48ea7aac2c973cea36627707e + languageName: node + linkType: hard + "@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.22.15, @babel/helper-create-regexp-features-plugin@npm:^7.22.5": version: 7.22.15 resolution: "@babel/helper-create-regexp-features-plugin@npm:7.22.15" @@ -1739,14 +1793,25 @@ __metadata: languageName: node linkType: hard -"@babel/helpers@npm:^7.23.7": - version: 7.23.7 - resolution: "@babel/helpers@npm:7.23.7" +"@babel/helpers@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/helpers@npm:7.23.5" dependencies: "@babel/template": "npm:^7.22.15" - "@babel/traverse": "npm:^7.23.7" + "@babel/traverse": "npm:^7.23.5" + "@babel/types": "npm:^7.23.5" + checksum: a37e2728eb4378a4888e5d614e28de7dd79b55ac8acbecd0e5c761273e2a02a8f33b34b1932d9069db55417ace2937cbf8ec37c42f1030ce6d228857d7ccaa4f + languageName: node + linkType: hard + +"@babel/helpers@npm:^7.23.6": + version: 7.23.6 + resolution: "@babel/helpers@npm:7.23.6" + dependencies: + "@babel/template": "npm:^7.22.15" + "@babel/traverse": "npm:^7.23.6" "@babel/types": "npm:^7.23.6" - checksum: f74a61ad28a1bc1fdd9133ad571c07787b66d6db017c707b87c203b0cd06879cea8b33e9c6a8585765a4949efa5df3cc9e19b710fe867f11be38ee29fd4a0488 + checksum: df1cf6607676ad36f52f652ec03536f2732d70aef5e76dba5c964e34d49f3c2d3dcf9fb3740db359f53071d74b64606a833d5ba156f79f437f71bfe06e2e7e19 languageName: node linkType: hard @@ -1761,7 +1826,16 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.13.16, @babel/parser@npm:^7.14.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.16.8, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.22.15, @babel/parser@npm:^7.22.7, @babel/parser@npm:^7.23.0, @babel/parser@npm:^7.23.6": +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.16.8, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.22.15, @babel/parser@npm:^7.22.7, @babel/parser@npm:^7.23.0, @babel/parser@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/parser@npm:7.23.5" + bin: + parser: ./bin/babel-parser.js + checksum: 3356aa90d7bafb4e2c7310e7c2c3d443c4be4db74913f088d3d577a1eb914ea4188e05fd50a47ce907a27b755c4400c4e3cbeee73dbeb37761f6ca85954f5a20 + languageName: node + linkType: hard + +"@babel/parser@npm:^7.13.16, @babel/parser@npm:^7.23.6": version: 7.23.6 resolution: "@babel/parser@npm:7.23.6" bin: @@ -3018,12 +3092,21 @@ __metadata: languageName: node linkType: hard -"@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.10.3, @babel/runtime@npm:^7.12.1, @babel/runtime@npm:^7.12.13, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.13.10, @babel/runtime@npm:^7.17.8, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.20.13, @babel/runtime@npm:^7.21.0, @babel/runtime@npm:^7.22.6, @babel/runtime@npm:^7.23.2, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.6.2, @babel/runtime@npm:^7.7.2, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.9.2": - version: 7.23.7 - resolution: "@babel/runtime@npm:7.23.7" +"@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.10.3, @babel/runtime@npm:^7.12.1, @babel/runtime@npm:^7.12.13, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.13.10, @babel/runtime@npm:^7.17.8, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.20.13, @babel/runtime@npm:^7.21.0, @babel/runtime@npm:^7.22.6, @babel/runtime@npm:^7.23.2, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.9.2": + version: 7.23.5 + resolution: "@babel/runtime@npm:7.23.5" dependencies: regenerator-runtime: "npm:^0.14.0" - checksum: 3e304133ee55b0750e03e53cb4efb47fb2bdcdb5795f85bbffa10595196c34b9be60eb65bd6d833c87f49fc827f0365f86f95f51d85b188004d3128bb5129c93 + checksum: ca679cc91bb7e424bc2db87bb58cc3b06ade916b9adb21fbbdc43e54cdaacb3eea201ceba2a0464b11d2eb65b9fe6a6ffcf4d7521fa52994f19be96f1af14788 + languageName: node + linkType: hard + +"@babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.6.2, @babel/runtime@npm:^7.7.2": + version: 7.23.6 + resolution: "@babel/runtime@npm:7.23.6" + dependencies: + regenerator-runtime: "npm:^0.14.0" + checksum: d886954e985ef8e421222f7a2848884d96a752e0020d3078b920dd104e672fdf23bcc6f51a44313a048796319f1ac9d09c2c88ec8cbb4e1f09174bcd3335b9ff languageName: node linkType: hard @@ -3038,9 +3121,27 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.14.0, @babel/traverse@npm:^7.16.0, @babel/traverse@npm:^7.16.8, @babel/traverse@npm:^7.18.9, @babel/traverse@npm:^7.22.8, @babel/traverse@npm:^7.23.2, @babel/traverse@npm:^7.23.7": - version: 7.23.7 - resolution: "@babel/traverse@npm:7.23.7" +"@babel/traverse@npm:^7.14.0, @babel/traverse@npm:^7.16.8, @babel/traverse@npm:^7.18.9, @babel/traverse@npm:^7.22.8, @babel/traverse@npm:^7.23.2, @babel/traverse@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/traverse@npm:7.23.5" + dependencies: + "@babel/code-frame": "npm:^7.23.5" + "@babel/generator": "npm:^7.23.5" + "@babel/helper-environment-visitor": "npm:^7.22.20" + "@babel/helper-function-name": "npm:^7.23.0" + "@babel/helper-hoist-variables": "npm:^7.22.5" + "@babel/helper-split-export-declaration": "npm:^7.22.6" + "@babel/parser": "npm:^7.23.5" + "@babel/types": "npm:^7.23.5" + debug: "npm:^4.1.0" + globals: "npm:^11.1.0" + checksum: c5ea793080ca6719b0a1612198fd25e361cee1f3c14142d7a518d2a1eeb5c1d21f7eec1b26c20ea6e1ddd8ed12ab50b960ff95ffd25be353b6b46e1b54d6f825 + languageName: node + linkType: hard + +"@babel/traverse@npm:^7.16.0, @babel/traverse@npm:^7.23.6": + version: 7.23.6 + resolution: "@babel/traverse@npm:7.23.6" dependencies: "@babel/code-frame": "npm:^7.23.5" "@babel/generator": "npm:^7.23.6" @@ -3052,7 +3153,7 @@ __metadata: "@babel/types": "npm:^7.23.6" debug: "npm:^4.3.1" globals: "npm:^11.1.0" - checksum: e32fceb4249beec2bde83968ddffe17444221c1ee5cd18c543a2feaf94e3ca83f2a4dfbc2dcca87cf226e0105973e0fe3717063a21e982a9de9945615ab3f3f5 + checksum: 5b4ebb94a00a7e1daf111e4b0b45a7998d5b7598637a14e75e855e88cc1b702789e09a958726b5d599a003be1e9032dbdfde4b88ea6061332228738950d5582d languageName: node linkType: hard @@ -3067,6 +3168,17 @@ __metadata: languageName: node linkType: hard +"@babel/types@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/types@npm:7.23.5" + dependencies: + "@babel/helper-string-parser": "npm:^7.23.4" + "@babel/helper-validator-identifier": "npm:^7.22.20" + to-fast-properties: "npm:^2.0.0" + checksum: 7dd5e2f59828ed046ad0b06b039df2524a8b728d204affb4fc08da2502b9dd3140b1356b5166515d229dc811539a8b70dcd4bc507e06d62a89f4091a38d0b0fb + languageName: node + linkType: hard + "@base2/pretty-print-object@npm:1.0.1": version: 1.0.1 resolution: "@base2/pretty-print-object@npm:1.0.1" @@ -3516,7 +3628,25 @@ __metadata: languageName: node linkType: hard -"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.23.0, @codemirror/view@npm:^6.7.1": +"@codemirror/state@npm:^6.1.4": + version: 6.3.3 + resolution: "@codemirror/state@npm:6.3.3" + checksum: 97f0174dd6aa43d6293630b0024918ce1bb1f7833de8fa75006de8b7dbd963e2bb8b5e7a805f5a98492a0379d8b60faaee319d42583562b8ea6347ab8b63bf5f + languageName: node + linkType: hard + +"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.7.1": + version: 6.22.2 + resolution: "@codemirror/view@npm:6.22.2" + dependencies: + "@codemirror/state": "npm:^6.1.4" + style-mod: "npm:^4.1.0" + w3c-keyname: "npm:^2.2.4" + checksum: 7535a884fc35dc7f0cda22492d3fc1db19abd75a3b4ec3cbeb54fcfba1cbcc2a14a112a6c0ffd03ff3a5a25e9f3906324fc9740af82185edb2c7a38b2a68c835 + languageName: node + linkType: hard + +"@codemirror/view@npm:^6.23.0": version: 6.23.0 resolution: "@codemirror/view@npm:6.23.0" dependencies: @@ -10315,6 +10445,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.8.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + "@rollup/rollup-android-arm-eabi@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-android-arm-eabi@npm:4.9.2" @@ -10322,6 +10459,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm64@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-android-arm64@npm:4.8.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-android-arm64@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-android-arm64@npm:4.9.2" @@ -10329,6 +10473,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-darwin-arm64@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-darwin-arm64@npm:4.8.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-darwin-arm64@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-darwin-arm64@npm:4.9.2" @@ -10336,6 +10487,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-darwin-x64@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-darwin-x64@npm:4.8.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@rollup/rollup-darwin-x64@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-darwin-x64@npm:4.9.2" @@ -10343,6 +10501,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm-gnueabihf@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.8.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@rollup/rollup-linux-arm-gnueabihf@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.9.2" @@ -10350,6 +10515,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm64-gnu@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.8.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-arm64-gnu@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.9.2" @@ -10357,6 +10529,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm64-musl@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.8.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + "@rollup/rollup-linux-arm64-musl@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-linux-arm64-musl@npm:4.9.2" @@ -10364,6 +10543,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-riscv64-gnu@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.8.0" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-riscv64-gnu@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.9.2" @@ -10371,6 +10557,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-x64-gnu@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.8.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-x64-gnu@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-linux-x64-gnu@npm:4.9.2" @@ -10378,6 +10571,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-x64-musl@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.8.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + "@rollup/rollup-linux-x64-musl@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-linux-x64-musl@npm:4.9.2" @@ -10385,6 +10585,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-win32-arm64-msvc@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.8.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-win32-arm64-msvc@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.9.2" @@ -10392,6 +10599,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-win32-ia32-msvc@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.8.0" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@rollup/rollup-win32-ia32-msvc@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.9.2" @@ -10399,6 +10613,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-win32-x64-msvc@npm:4.8.0": + version: 4.8.0 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.8.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@rollup/rollup-win32-x64-msvc@npm:4.9.2": version: 4.9.2 resolution: "@rollup/rollup-win32-x64-msvc@npm:4.9.2" @@ -10434,6 +10655,17 @@ __metadata: languageName: node linkType: hard +"@sentry-internal/tracing@npm:7.86.0": + version: 7.86.0 + resolution: "@sentry-internal/tracing@npm:7.86.0" + dependencies: + "@sentry/core": "npm:7.86.0" + "@sentry/types": "npm:7.86.0" + "@sentry/utils": "npm:7.86.0" + checksum: 7c55473e0f457b71c33e7e8392050aa43cea5678d519b5c494a876be1ba61cdcabff205eacc70227d6163db93af8e54da010ef32eeed5118521554f13d04ccd6 + languageName: node + linkType: hard + "@sentry-internal/tracing@npm:7.91.0": version: 7.91.0 resolution: "@sentry-internal/tracing@npm:7.91.0" @@ -10484,6 +10716,16 @@ __metadata: languageName: node linkType: hard +"@sentry/core@npm:7.86.0": + version: 7.86.0 + resolution: "@sentry/core@npm:7.86.0" + dependencies: + "@sentry/types": "npm:7.86.0" + "@sentry/utils": "npm:7.86.0" + checksum: f95e19925b0c6a70bd6b65510d66953ebb66de9b40f8b0f0dd70759648fa2fc0332e068b31f18aeebff2200bead0215d0becbcf9364ff06bc42bfc4a07747c83 + languageName: node + linkType: hard + "@sentry/core@npm:7.91.0": version: 7.91.0 resolution: "@sentry/core@npm:7.91.0" @@ -10517,15 +10759,15 @@ __metadata: linkType: hard "@sentry/node@npm:^7.66.0": - version: 7.91.0 - resolution: "@sentry/node@npm:7.91.0" + version: 7.86.0 + resolution: "@sentry/node@npm:7.86.0" dependencies: - "@sentry-internal/tracing": "npm:7.91.0" - "@sentry/core": "npm:7.91.0" - "@sentry/types": "npm:7.91.0" - "@sentry/utils": "npm:7.91.0" + "@sentry-internal/tracing": "npm:7.86.0" + "@sentry/core": "npm:7.86.0" + "@sentry/types": "npm:7.86.0" + "@sentry/utils": "npm:7.86.0" https-proxy-agent: "npm:^5.0.0" - checksum: e360994c4d893ccb2f0f79a1290c928c8c7845cae2ce7374d183c13a1c0b4e71023f231cc658fb2b910faef89944a4a95cffa97b076d28c14c7a5bdcff2023de + checksum: 749ca11de2b21e171be4713768fc28f43c23e14e7b28ab8a25d1066f8283dd992d907f800b577465a7e073baf80755941c0bf57a43922b0239f257128a175275 languageName: node linkType: hard @@ -10602,6 +10844,13 @@ __metadata: languageName: node linkType: hard +"@sentry/types@npm:7.86.0": + version: 7.86.0 + resolution: "@sentry/types@npm:7.86.0" + checksum: b04e6650509ddea1e0815bb4acb4ea16ad388e43e23f1f5dc94083db790343c8d8e675ebd2203a9c14f8a7c30ea5777cf499cd5500498b3bc25bfa444bd0b14c + languageName: node + linkType: hard + "@sentry/types@npm:7.91.0": version: 7.91.0 resolution: "@sentry/types@npm:7.91.0" @@ -10619,6 +10868,15 @@ __metadata: languageName: node linkType: hard +"@sentry/utils@npm:7.86.0": + version: 7.86.0 + resolution: "@sentry/utils@npm:7.86.0" + dependencies: + "@sentry/types": "npm:7.86.0" + checksum: 00fea70f9e58648803aaece4e45d14ea9d53a2014beb57047b6d9d2e3ff4626ebc1bfcf5d1dca7b7544da95a877ef798eeddc5b2e12d4b723c1b000964667fdb + languageName: node + linkType: hard + "@sentry/utils@npm:7.91.0": version: 7.91.0 resolution: "@sentry/utils@npm:7.91.0" @@ -13005,6 +13263,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-darwin-arm64@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-darwin-arm64@npm:1.3.101" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@swc/core-darwin-arm64@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-darwin-arm64@npm:1.3.102" @@ -13012,6 +13277,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-darwin-x64@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-darwin-x64@npm:1.3.101" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@swc/core-darwin-x64@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-darwin-x64@npm:1.3.102" @@ -13019,6 +13291,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-linux-arm-gnueabihf@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.101" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@swc/core-linux-arm-gnueabihf@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.102" @@ -13026,6 +13305,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-linux-arm64-gnu@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-linux-arm64-gnu@npm:1.3.101" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + "@swc/core-linux-arm64-gnu@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-linux-arm64-gnu@npm:1.3.102" @@ -13033,6 +13319,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-linux-arm64-musl@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-linux-arm64-musl@npm:1.3.101" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + "@swc/core-linux-arm64-musl@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-linux-arm64-musl@npm:1.3.102" @@ -13040,6 +13333,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-linux-x64-gnu@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-linux-x64-gnu@npm:1.3.101" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + "@swc/core-linux-x64-gnu@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-linux-x64-gnu@npm:1.3.102" @@ -13047,6 +13347,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-linux-x64-musl@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-linux-x64-musl@npm:1.3.101" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + "@swc/core-linux-x64-musl@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-linux-x64-musl@npm:1.3.102" @@ -13054,6 +13361,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-win32-arm64-msvc@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-win32-arm64-msvc@npm:1.3.101" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@swc/core-win32-arm64-msvc@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-win32-arm64-msvc@npm:1.3.102" @@ -13061,6 +13375,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-win32-ia32-msvc@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-win32-ia32-msvc@npm:1.3.101" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@swc/core-win32-ia32-msvc@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-win32-ia32-msvc@npm:1.3.102" @@ -13068,6 +13389,13 @@ __metadata: languageName: node linkType: hard +"@swc/core-win32-x64-msvc@npm:1.3.101": + version: 1.3.101 + resolution: "@swc/core-win32-x64-msvc@npm:1.3.101" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@swc/core-win32-x64-msvc@npm:1.3.102": version: 1.3.102 resolution: "@swc/core-win32-x64-msvc@npm:1.3.102" @@ -13075,7 +13403,7 @@ __metadata: languageName: node linkType: hard -"@swc/core@npm:^1.3.18, @swc/core@npm:^1.3.96, @swc/core@npm:~1.3.100": +"@swc/core@npm:^1.3.18, @swc/core@npm:^1.3.96": version: 1.3.102 resolution: "@swc/core@npm:1.3.102" dependencies: @@ -13121,6 +13449,52 @@ __metadata: languageName: node linkType: hard +"@swc/core@npm:~1.3.100": + version: 1.3.101 + resolution: "@swc/core@npm:1.3.101" + dependencies: + "@swc/core-darwin-arm64": "npm:1.3.101" + "@swc/core-darwin-x64": "npm:1.3.101" + "@swc/core-linux-arm-gnueabihf": "npm:1.3.101" + "@swc/core-linux-arm64-gnu": "npm:1.3.101" + "@swc/core-linux-arm64-musl": "npm:1.3.101" + "@swc/core-linux-x64-gnu": "npm:1.3.101" + "@swc/core-linux-x64-musl": "npm:1.3.101" + "@swc/core-win32-arm64-msvc": "npm:1.3.101" + "@swc/core-win32-ia32-msvc": "npm:1.3.101" + "@swc/core-win32-x64-msvc": "npm:1.3.101" + "@swc/counter": "npm:^0.1.1" + "@swc/types": "npm:^0.1.5" + peerDependencies: + "@swc/helpers": ^0.5.0 + dependenciesMeta: + "@swc/core-darwin-arm64": + optional: true + "@swc/core-darwin-x64": + optional: true + "@swc/core-linux-arm-gnueabihf": + optional: true + "@swc/core-linux-arm64-gnu": + optional: true + "@swc/core-linux-arm64-musl": + optional: true + "@swc/core-linux-x64-gnu": + optional: true + "@swc/core-linux-x64-musl": + optional: true + "@swc/core-win32-arm64-msvc": + optional: true + "@swc/core-win32-ia32-msvc": + optional: true + "@swc/core-win32-x64-msvc": + optional: true + peerDependenciesMeta: + "@swc/helpers": + optional: true + checksum: 167e9decb494fbd66b57115eab8fa1ae23c7dae009597812db04df2c8434283ae028adfd4bfe5a6ac15ffbba8f2651c0460da8025d532efc1212ef94d70e271f + languageName: node + linkType: hard + "@swc/counter@npm:^0.1.1": version: 0.1.2 resolution: "@swc/counter@npm:0.1.2" @@ -14589,12 +14963,12 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:*, @types/node@npm:^20.10.6, @types/node@npm:^20.3.1": - version: 20.10.6 - resolution: "@types/node@npm:20.10.6" +"@types/node@npm:*, @types/node@npm:^20.3.1": + version: 20.10.4 + resolution: "@types/node@npm:20.10.4" dependencies: undici-types: "npm:~5.26.4" - checksum: 6692ccfa8552ef60c4069fda3c8de726c23e8d403cdf788e3c7efa769987e80fbda5f02723dd857f9de7df24a5fa40b3ed4580ec3c5cbac04eba44cf7b2ab1dc + checksum: 2c8b70cba731eb2ae3ae046daa74903bfcbb0e7b9196da767e5895054f6d252296ae7a04fb1dbbcb53bb004c4c658c05eaea2731bc9e2dd9e08f7e88d672f563 languageName: node linkType: hard @@ -14628,6 +15002,15 @@ __metadata: languageName: node linkType: hard +"@types/node@npm:^20.10.6": + version: 20.10.6 + resolution: "@types/node@npm:20.10.6" + dependencies: + undici-types: "npm:~5.26.4" + checksum: 6692ccfa8552ef60c4069fda3c8de726c23e8d403cdf788e3c7efa769987e80fbda5f02723dd857f9de7df24a5fa40b3ed4580ec3c5cbac04eba44cf7b2ab1dc + languageName: node + linkType: hard + "@types/nodemailer@npm:^6.4.14": version: 6.4.14 resolution: "@types/nodemailer@npm:6.4.14" @@ -15139,7 +15522,7 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/parser@npm:^5.4.2 || ^6.0.0, @typescript-eslint/parser@npm:^6.10.0": +"@typescript-eslint/parser@npm:^5.4.2 || ^6.0.0": version: 6.17.0 resolution: "@typescript-eslint/parser@npm:6.17.0" dependencies: @@ -15157,6 +15540,24 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/parser@npm:^6.10.0": + version: 6.13.2 + resolution: "@typescript-eslint/parser@npm:6.13.2" + dependencies: + "@typescript-eslint/scope-manager": "npm:6.13.2" + "@typescript-eslint/types": "npm:6.13.2" + "@typescript-eslint/typescript-estree": "npm:6.13.2" + "@typescript-eslint/visitor-keys": "npm:6.13.2" + debug: "npm:^4.3.4" + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 2c62b8cd8a37eb2ea59cd00e559f51a9f57af746e2040e872af3c58ddd3f4071ad7b7009789bdeb0e0d4ee0343bfe96ee77288020f3ae22d08e1674203f5e156 + languageName: node + linkType: hard + "@typescript-eslint/scope-manager@npm:5.62.0": version: 5.62.0 resolution: "@typescript-eslint/scope-manager@npm:5.62.0" @@ -15167,6 +15568,26 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/scope-manager@npm:6.13.2": + version: 6.13.2 + resolution: "@typescript-eslint/scope-manager@npm:6.13.2" + dependencies: + "@typescript-eslint/types": "npm:6.13.2" + "@typescript-eslint/visitor-keys": "npm:6.13.2" + checksum: 9b159e5bb10dfb5953e71488200b4126378fc7e987ce7d90946aea9ec40cd66c7ada92399657c5d9794189b764ca6f4eb38a8dcb9e4c5aa50ab6000a39636b9c + languageName: node + linkType: hard + +"@typescript-eslint/scope-manager@npm:6.15.0": + version: 6.15.0 + resolution: "@typescript-eslint/scope-manager@npm:6.15.0" + dependencies: + "@typescript-eslint/types": "npm:6.15.0" + "@typescript-eslint/visitor-keys": "npm:6.15.0" + checksum: 3428d99de440f227cbc2afb44cdcb25e44c4b49c5f490392f83e21d2048210a6ec2f2f68133376c842034f5b5ba4ec9721da7caa18e631e23b57e20927b5b6f0 + languageName: node + linkType: hard + "@typescript-eslint/scope-manager@npm:6.17.0": version: 6.17.0 resolution: "@typescript-eslint/scope-manager@npm:6.17.0" @@ -15177,7 +15598,7 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:6.17.0, @typescript-eslint/type-utils@npm:^6.9.1": +"@typescript-eslint/type-utils@npm:6.17.0": version: 6.17.0 resolution: "@typescript-eslint/type-utils@npm:6.17.0" dependencies: @@ -15194,6 +15615,23 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/type-utils@npm:^6.9.1": + version: 6.15.0 + resolution: "@typescript-eslint/type-utils@npm:6.15.0" + dependencies: + "@typescript-eslint/typescript-estree": "npm:6.15.0" + "@typescript-eslint/utils": "npm:6.15.0" + debug: "npm:^4.3.4" + ts-api-utils: "npm:^1.0.1" + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 32cb531a4b5e0ccd431cba553ec73b87d4453b48af288a33e359ba4f5278126390d82799b61d3f0fbf135cfde1ac6c2275c2cf37a676e8a2a2811e774e660f16 + languageName: node + linkType: hard + "@typescript-eslint/types@npm:5.62.0": version: 5.62.0 resolution: "@typescript-eslint/types@npm:5.62.0" @@ -15201,6 +15639,20 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/types@npm:6.13.2": + version: 6.13.2 + resolution: "@typescript-eslint/types@npm:6.13.2" + checksum: 029918ca5b1442bb4bc435773504ce32191e2c3e2fde8d4176bb6513f03e3dfa2aa9724b2d22b1640656d666b97f7a7ebfeaf67b881d5e07250828fa83e3ebe8 + languageName: node + linkType: hard + +"@typescript-eslint/types@npm:6.15.0": + version: 6.15.0 + resolution: "@typescript-eslint/types@npm:6.15.0" + checksum: 6e33529ea301c8c4b8c1f589dadd5d2a66c1b24ec87a577524fbc996d4c7b65d4f4fdfa4a3937b691efee6a10a6b16f7bfcabe98a15e0fc0c0c57aa0d80dcc25 + languageName: node + linkType: hard + "@typescript-eslint/types@npm:6.17.0": version: 6.17.0 resolution: "@typescript-eslint/types@npm:6.17.0" @@ -15226,6 +15678,42 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/typescript-estree@npm:6.13.2": + version: 6.13.2 + resolution: "@typescript-eslint/typescript-estree@npm:6.13.2" + dependencies: + "@typescript-eslint/types": "npm:6.13.2" + "@typescript-eslint/visitor-keys": "npm:6.13.2" + debug: "npm:^4.3.4" + globby: "npm:^11.1.0" + is-glob: "npm:^4.0.3" + semver: "npm:^7.5.4" + ts-api-utils: "npm:^1.0.1" + peerDependenciesMeta: + typescript: + optional: true + checksum: 1c4c59dce0c51fdfee34d9f418e64fe28e3ec1a97661efc8a3d2780bdff36aff38de9090d356a968f394fa6d4e9c058936ce9cd260d4c44a52761ecd74915bce + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:6.15.0": + version: 6.15.0 + resolution: "@typescript-eslint/typescript-estree@npm:6.15.0" + dependencies: + "@typescript-eslint/types": "npm:6.15.0" + "@typescript-eslint/visitor-keys": "npm:6.15.0" + debug: "npm:^4.3.4" + globby: "npm:^11.1.0" + is-glob: "npm:^4.0.3" + semver: "npm:^7.5.4" + ts-api-utils: "npm:^1.0.1" + peerDependenciesMeta: + typescript: + optional: true + checksum: 08955f6e84b8edb855a6769671e85889e52b15b82e00a64f595da867b21ad060e5342787c436d77702b2a1f39d411ac79b81a8d2e2006e9b1886eadb08b626df + languageName: node + linkType: hard + "@typescript-eslint/typescript-estree@npm:6.17.0": version: 6.17.0 resolution: "@typescript-eslint/typescript-estree@npm:6.17.0" @@ -15245,6 +15733,23 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/utils@npm:6.15.0": + version: 6.15.0 + resolution: "@typescript-eslint/utils@npm:6.15.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.4.0" + "@types/json-schema": "npm:^7.0.12" + "@types/semver": "npm:^7.5.0" + "@typescript-eslint/scope-manager": "npm:6.15.0" + "@typescript-eslint/types": "npm:6.15.0" + "@typescript-eslint/typescript-estree": "npm:6.15.0" + semver: "npm:^7.5.4" + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + checksum: 53519a2027681bdc8f028f9421c65f193f91b5bb1659465fedb8043376c693c2391211f1c01d8ba25bfaa7f7b3a102263d7123f9dfade12032159f4b4490f0fb + languageName: node + linkType: hard + "@typescript-eslint/utils@npm:6.17.0, @typescript-eslint/utils@npm:^6.17.0, @typescript-eslint/utils@npm:^6.9.1": version: 6.17.0 resolution: "@typescript-eslint/utils@npm:6.17.0" @@ -15290,6 +15795,26 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/visitor-keys@npm:6.13.2": + version: 6.13.2 + resolution: "@typescript-eslint/visitor-keys@npm:6.13.2" + dependencies: + "@typescript-eslint/types": "npm:6.13.2" + eslint-visitor-keys: "npm:^3.4.1" + checksum: c173bc1fcc42c3075a5ee094e7f3bf0279d98315c25ff49e20d02d79022b1d0402accfa113b070afb4d52a6f6d180594b67baa8b6a784eabdf82b54dd1ff454c + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:6.15.0": + version: 6.15.0 + resolution: "@typescript-eslint/visitor-keys@npm:6.15.0" + dependencies: + "@typescript-eslint/types": "npm:6.15.0" + eslint-visitor-keys: "npm:^3.4.1" + checksum: bf9f71af60bd63d1073900e75c5a0aa6eddd672f6c3ac6092c765d67deb7a0c32d2a5f6f3aee9e95f93a93d58563a76da209bd8487aadafd4d013100ffe38520 + languageName: node + linkType: hard + "@typescript-eslint/visitor-keys@npm:6.17.0": version: 6.17.0 resolution: "@typescript-eslint/visitor-keys@npm:6.17.0" @@ -15827,7 +16352,16 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.0.0, acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.11.2, acorn@npm:^8.11.3, acorn@npm:^8.4.1, acorn@npm:^8.5.0, acorn@npm:^8.7.1, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": +"acorn@npm:^8.0.0, acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.11.2, acorn@npm:^8.4.1, acorn@npm:^8.5.0, acorn@npm:^8.7.1, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": + version: 8.11.2 + resolution: "acorn@npm:8.11.2" + bin: + acorn: bin/acorn + checksum: a3ed76c761b75ec54b1ec3068fb7f113a182e95aea7f322f65098c2958d232e3d211cb6dac35ff9c647024b63714bc528a26d54a925d1fef2c25585b4c8e4017 + languageName: node + linkType: hard + +"acorn@npm:^8.11.3": version: 8.11.3 resolution: "acorn@npm:8.11.3" bin: @@ -18927,10 +19461,17 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30001406, caniuse-lite@npm:^1.0.30001538, caniuse-lite@npm:^1.0.30001565": - version: 1.0.30001574 - resolution: "caniuse-lite@npm:1.0.30001574" - checksum: 27a01d086f5a7300862ea054a9f8b8e155f2cfb83c8223723be0d707e55c653ca5eb1adc196cb28c9aa2ed91d6f87b5372f342c554f1de6769c57a284835b8ed +"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30001538, caniuse-lite@npm:^1.0.30001565": + version: 1.0.30001568 + resolution: "caniuse-lite@npm:1.0.30001568" + checksum: 13f01e5a2481134bd61cf565ce9fecbd8e107902927a0dcf534230a92191a81f1715792170f5f39719c767c3a96aa6df9917a8d5601f15bbd5e4041a8cfecc99 + languageName: node + linkType: hard + +"caniuse-lite@npm:^1.0.30001406": + version: 1.0.30001571 + resolution: "caniuse-lite@npm:1.0.30001571" + checksum: 632f476e39febbfb5dc91c236981f3d518dc0cf55c42cc2bba431a6b6f4cceae3f9cd74d26312f30e9de65a3cc92ccf80d964ba8de061e25f37b7f0518303dad languageName: node linkType: hard @@ -38760,7 +39301,7 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^4.0.2, rollup@npm:^4.2.0": +"rollup@npm:^4.0.2": version: 4.9.2 resolution: "rollup@npm:4.9.2" dependencies: @@ -38813,6 +39354,59 @@ __metadata: languageName: node linkType: hard +"rollup@npm:^4.2.0": + version: 4.8.0 + resolution: "rollup@npm:4.8.0" + dependencies: + "@rollup/rollup-android-arm-eabi": "npm:4.8.0" + "@rollup/rollup-android-arm64": "npm:4.8.0" + "@rollup/rollup-darwin-arm64": "npm:4.8.0" + "@rollup/rollup-darwin-x64": "npm:4.8.0" + "@rollup/rollup-linux-arm-gnueabihf": "npm:4.8.0" + "@rollup/rollup-linux-arm64-gnu": "npm:4.8.0" + "@rollup/rollup-linux-arm64-musl": "npm:4.8.0" + "@rollup/rollup-linux-riscv64-gnu": "npm:4.8.0" + "@rollup/rollup-linux-x64-gnu": "npm:4.8.0" + "@rollup/rollup-linux-x64-musl": "npm:4.8.0" + "@rollup/rollup-win32-arm64-msvc": "npm:4.8.0" + "@rollup/rollup-win32-ia32-msvc": "npm:4.8.0" + "@rollup/rollup-win32-x64-msvc": "npm:4.8.0" + fsevents: "npm:~2.3.2" + dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: 271628f7078199797b175fab8951e698740fb94a5a851b4f8828a353af8d1b4cf3b0bacb443468f38c9d4ce68ca16de1853b0246a7feaae2db3efb2fb746f8db + languageName: node + linkType: hard + "rope-sequence@npm:^1.3.0": version: 1.3.4 resolution: "rope-sequence@npm:1.3.4" @@ -41963,6 +42557,7 @@ __metadata: playwright: "npm:^1.40.1" prettier: "npm:^3.1.1" prism-react-renderer: "npm:^2.1.0" + qs: "npm:^6.11.2" raw-loader: "npm:^4.0.2" react: "npm:^18.2.0" react-data-grid: "npm:7.0.0-beta.13"