From f253ed5c2094d65cfcc089ee5af49291cbe0e626 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Thu, 4 Jul 2024 16:54:13 +0200 Subject: [PATCH 01/24] save need to switch to xcore first --- @mf-types/index.d.ts | 23 + @mf-types/shell/App.d.ts | 2 + @mf-types/shell/alerts/AlertProvider.d.ts | 2 + @mf-types/shell/alerts/alertHooks.d.ts | 2 + @mf-types/shell/apis.d.ts | 3 + @mf-types/shell/auth/AuthProvider.d.ts | 2 + .../compiled-types/src/FederatedApp.d.ts | 65 + .../src/NotificationCenterProvider.d.ts | 35 + .../src/alerts/AlertProvider.d.ts | 12 + .../src/alerts/alertContext.d.ts | 1 + .../compiled-types/src/alerts/alertHooks.d.ts | 26 + .../compiled-types/src/alerts/index.d.ts | 2 + .../src/alerts/services/alertManager.d.ts | 26 + .../src/alerts/services/alertUtils.d.ts | 34 + .../src/alerts/services/loki.d.ts | 8 + .../src/auth/AuthConfigProvider.d.ts | 9 + .../compiled-types/src/auth/AuthProvider.d.ts | 18 + .../src/auth/FirstTimeLoginProvider.d.ts | 7 + .../ConfigurationProviders.d.ts | 108 + .../initFederation/ShellConfigProvider.d.ts | 56 + .../initFederation/ShellHistoryProvider.d.ts | 5 + .../ShellThemeSelectorProvider.d.ts | 17 + .../src/initFederation/UIListProvider.d.ts | 16 + .../src/navbar/InstanceName.d.ts | 18 + .../compiled-types/src/navbar/NavBar.d.ts | 20 + .../src/navbar/NavbarConfigProvider.d.ts | 5 + .../src/navbar/NavbarUpdaterComponents.d.ts | 2 + .../src/navbar/NotificationCenter.d.ts | 3 + .../src/navbar/SleepingNotificationBell.d.ts | 2 + .../src/navbar/auth/permissionUtils.d.ts | 7 + .../compiled-types/src/navbar/events.d.ts | 3 + .../compiled-types/src/navbar/favicon.d.ts | 1 + .../compiled-types/src/navbar/index.d.ts | 6 + .../shell/compiled-types/src/navbar/lang.d.ts | 14 + .../compiled-types/src/navbar/library.d.ts | 1 + .../src/navbar/navbarContext.d.ts | 2 + .../src/navbar/navbarHooks.d.ts | 23 + .../src/useNotificationCenter.d.ts | 7 + @mf-types/shell/lang.d.ts | 2 + .../ConfigurationProvider.d.ts | 2 + .../ShellConfigurationProvider.d.ts | 2 + .../moduleFederation/UIListProvider.d.ts | 2 + @mf-types/shell/navbar/navbarHooks.d.ts | 2 + @mf-types/shell/useNotificationCenter.d.ts | 2 + package-lock.json | 8084 +++++++++-------- package.json | 11 +- rspack.config.ts | 233 + src/index-template.html | 10 - src/react/FederableApp.tsx | 55 +- .../next-architecture/ui/AlertProvider.tsx | 88 +- .../next-architecture/ui/AuthProvider.tsx | 45 +- .../next-architecture/ui/ConfigProvider.tsx | 90 +- .../ui/XCoreLibraryProvider.tsx | 1 + src/react/ui-elements/Breadcrumb.tsx | 20 +- .../ui-elements/SelectAccountIAMRole.tsx | 9 +- .../ui-elements/Veeam/VeeamWelcomeModal.tsx | 16 +- 56 files changed, 5104 insertions(+), 4163 deletions(-) create mode 100644 @mf-types/index.d.ts create mode 100644 @mf-types/shell/App.d.ts create mode 100644 @mf-types/shell/alerts/AlertProvider.d.ts create mode 100644 @mf-types/shell/alerts/alertHooks.d.ts create mode 100644 @mf-types/shell/apis.d.ts create mode 100644 @mf-types/shell/auth/AuthProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/FederatedApp.d.ts create mode 100644 @mf-types/shell/compiled-types/src/NotificationCenterProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/alerts/AlertProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/alerts/alertContext.d.ts create mode 100644 @mf-types/shell/compiled-types/src/alerts/alertHooks.d.ts create mode 100644 @mf-types/shell/compiled-types/src/alerts/index.d.ts create mode 100644 @mf-types/shell/compiled-types/src/alerts/services/alertManager.d.ts create mode 100644 @mf-types/shell/compiled-types/src/alerts/services/alertUtils.d.ts create mode 100644 @mf-types/shell/compiled-types/src/alerts/services/loki.d.ts create mode 100644 @mf-types/shell/compiled-types/src/auth/AuthConfigProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/auth/AuthProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/auth/FirstTimeLoginProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/initFederation/ConfigurationProviders.d.ts create mode 100644 @mf-types/shell/compiled-types/src/initFederation/ShellConfigProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/initFederation/ShellHistoryProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/initFederation/ShellThemeSelectorProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/initFederation/UIListProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/InstanceName.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/NavBar.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/NavbarConfigProvider.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/NavbarUpdaterComponents.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/NotificationCenter.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/SleepingNotificationBell.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/auth/permissionUtils.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/events.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/favicon.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/index.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/lang.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/library.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/navbarContext.d.ts create mode 100644 @mf-types/shell/compiled-types/src/navbar/navbarHooks.d.ts create mode 100644 @mf-types/shell/compiled-types/src/useNotificationCenter.d.ts create mode 100644 @mf-types/shell/lang.d.ts create mode 100644 @mf-types/shell/moduleFederation/ConfigurationProvider.d.ts create mode 100644 @mf-types/shell/moduleFederation/ShellConfigurationProvider.d.ts create mode 100644 @mf-types/shell/moduleFederation/UIListProvider.d.ts create mode 100644 @mf-types/shell/navbar/navbarHooks.d.ts create mode 100644 @mf-types/shell/useNotificationCenter.d.ts create mode 100644 rspack.config.ts delete mode 100644 src/index-template.html diff --git a/@mf-types/index.d.ts b/@mf-types/index.d.ts new file mode 100644 index 000000000..5c4b92759 --- /dev/null +++ b/@mf-types/index.d.ts @@ -0,0 +1,23 @@ +import type { PackageType as PackageType_0,RemoteKeys as RemoteKeys_0 } from './shell/apis.d.ts'; + declare module "@module-federation/runtime" { + type RemoteKeys = RemoteKeys_0; + type PackageType = T extends RemoteKeys_0 ? PackageType_0 : +Y ; + export function loadRemote(packageName: T): Promise>; + export function loadRemote(packageName: T): Promise>; + } +declare module "@module-federation/enhanced/runtime" { + type RemoteKeys = RemoteKeys_0; + type PackageType = T extends RemoteKeys_0 ? PackageType_0 : +Y ; + export function loadRemote(packageName: T): Promise>; + export function loadRemote(packageName: T): Promise>; + } +declare module "@module-federation/runtime-tools" { + type RemoteKeys = RemoteKeys_0; + type PackageType = T extends RemoteKeys_0 ? PackageType_0 : +Y ; + export function loadRemote(packageName: T): Promise>; + export function loadRemote(packageName: T): Promise>; + } + \ No newline at end of file diff --git a/@mf-types/shell/App.d.ts b/@mf-types/shell/App.d.ts new file mode 100644 index 000000000..3c9cbdff1 --- /dev/null +++ b/@mf-types/shell/App.d.ts @@ -0,0 +1,2 @@ +export * from './compiled-types/src/FederatedApp'; +export { default } from './compiled-types/src/FederatedApp'; \ No newline at end of file diff --git a/@mf-types/shell/alerts/AlertProvider.d.ts b/@mf-types/shell/alerts/AlertProvider.d.ts new file mode 100644 index 000000000..329812b27 --- /dev/null +++ b/@mf-types/shell/alerts/AlertProvider.d.ts @@ -0,0 +1,2 @@ +export * from './../compiled-types/src/alerts/AlertProvider'; +export { default } from './../compiled-types/src/alerts/AlertProvider'; \ No newline at end of file diff --git a/@mf-types/shell/alerts/alertHooks.d.ts b/@mf-types/shell/alerts/alertHooks.d.ts new file mode 100644 index 000000000..3ca4f8495 --- /dev/null +++ b/@mf-types/shell/alerts/alertHooks.d.ts @@ -0,0 +1,2 @@ +export * from './../compiled-types/src/alerts/alertHooks'; +export { default } from './../compiled-types/src/alerts/alertHooks'; \ No newline at end of file diff --git a/@mf-types/shell/apis.d.ts b/@mf-types/shell/apis.d.ts new file mode 100644 index 000000000..37676cee7 --- /dev/null +++ b/@mf-types/shell/apis.d.ts @@ -0,0 +1,3 @@ + + export type RemoteKeys = 'shell/App' | 'shell/lang' | 'shell/auth/AuthProvider' | 'shell/alerts/AlertProvider' | 'shell/alerts/alertHooks' | 'shell/navbar/navbarHooks' | 'shell/moduleFederation/ConfigurationProvider' | 'shell/moduleFederation/ShellConfigurationProvider' | 'shell/moduleFederation/UIListProvider' | 'shell/useNotificationCenter'; + type PackageType = T extends 'shell/useNotificationCenter' ? typeof import('shell/useNotificationCenter') :T extends 'shell/moduleFederation/UIListProvider' ? typeof import('shell/moduleFederation/UIListProvider') :T extends 'shell/moduleFederation/ShellConfigurationProvider' ? typeof import('shell/moduleFederation/ShellConfigurationProvider') :T extends 'shell/moduleFederation/ConfigurationProvider' ? typeof import('shell/moduleFederation/ConfigurationProvider') :T extends 'shell/navbar/navbarHooks' ? typeof import('shell/navbar/navbarHooks') :T extends 'shell/alerts/alertHooks' ? typeof import('shell/alerts/alertHooks') :T extends 'shell/alerts/AlertProvider' ? typeof import('shell/alerts/AlertProvider') :T extends 'shell/auth/AuthProvider' ? typeof import('shell/auth/AuthProvider') :T extends 'shell/lang' ? typeof import('shell/lang') :T extends 'shell/App' ? typeof import('shell/App') :any; \ No newline at end of file diff --git a/@mf-types/shell/auth/AuthProvider.d.ts b/@mf-types/shell/auth/AuthProvider.d.ts new file mode 100644 index 000000000..fc84ac6b3 --- /dev/null +++ b/@mf-types/shell/auth/AuthProvider.d.ts @@ -0,0 +1,2 @@ +export * from './../compiled-types/src/auth/AuthProvider'; +export { default } from './../compiled-types/src/auth/AuthProvider'; \ No newline at end of file diff --git a/@mf-types/shell/compiled-types/src/FederatedApp.d.ts b/@mf-types/shell/compiled-types/src/FederatedApp.d.ts new file mode 100644 index 000000000..5ff738c4b --- /dev/null +++ b/@mf-types/shell/compiled-types/src/FederatedApp.d.ts @@ -0,0 +1,65 @@ +import React from 'react'; +import { QueryClient } from 'react-query'; +import { NotificationCenterContextType } from './NotificationCenterProvider'; +import { useAuthConfig } from './auth/AuthConfigProvider'; +import { useAuth } from './auth/AuthProvider'; +import './index.css'; +import { useConfigRetriever, useConfig, useDiscoveredViews, useLinkOpener, BuildtimeWebFinger, RuntimeWebFinger } from './initFederation/ConfigurationProviders'; +import { useShellConfig } from './initFederation/ShellConfigProvider'; +import { useDeployedApps } from './initFederation/UIListProvider'; +import { useLanguage } from './navbar/lang'; +import AlertProvider from './alerts/AlertProvider'; +import { getAlertingAlertSelectors, getAuthenticationAlertSelectors, getBootstrapAlertSelectors, getDashboardingAlertSelectors, getIngressControllerAlertSelectors, getK8SMasterAlertSelectors, getLoggingAlertSelectors, getMonitoringAlertSelectors, getNetworksAlertSelectors, getNodesAlertSelectors, getPlatformAlertSelectors, getServicesAlertSelectors, getVolumesAlertSelectors, useAlerts, useHighestSeverityAlerts } from './alerts'; +import { useHistory } from 'react-router'; +import { UseQueryResult } from 'react-query/types/react'; +export declare const queryClient: QueryClient; +export type ShellTypes = { + shellHooks: { + useAuthConfig: typeof useAuthConfig; + useAuth: typeof useAuth; + useConfigRetriever: typeof useConfigRetriever; + useDiscoveredViews: typeof useDiscoveredViews; + useShellConfig: typeof useShellConfig; + useLanguage: typeof useLanguage; + useConfig: typeof useConfig; + useLinkOpener: typeof useLinkOpener; + useDeployedApps: typeof useDeployedApps; + }; + shellAlerts: { + AlertsProvider: typeof AlertProvider; + hooks: { + useAlerts: typeof useAlerts; + useHighestSeverityAlerts: typeof useHighestSeverityAlerts; + }; + alertSelectors: { + getPlatformAlertSelectors: typeof getPlatformAlertSelectors; + getNodesAlertSelectors: typeof getNodesAlertSelectors; + getVolumesAlertSelectors: typeof getVolumesAlertSelectors; + getNetworksAlertSelectors: typeof getNetworksAlertSelectors; + getServicesAlertSelectors: typeof getServicesAlertSelectors; + getK8SMasterAlertSelectors: typeof getK8SMasterAlertSelectors; + getBootstrapAlertSelectors: typeof getBootstrapAlertSelectors; + getMonitoringAlertSelectors: typeof getMonitoringAlertSelectors; + getAlertingAlertSelectors: typeof getAlertingAlertSelectors; + getLoggingAlertSelectors: typeof getLoggingAlertSelectors; + getDashboardingAlertSelectors: typeof getDashboardingAlertSelectors; + getIngressControllerAlertSelectors: typeof getIngressControllerAlertSelectors; + getAuthenticationAlertSelectors: typeof getAuthenticationAlertSelectors; + }; + }; +}; +declare global { + interface Window { + shellContexts: { + ShellHistoryContext: React.Context | null>; + NotificationContext: React.Context; + WebFingersContext: React.Context>, unknown>[]>; + }; + shellHooks: ShellTypes['shellHooks']; + shellAlerts: ShellTypes['shellAlerts']; + } +} +export declare function WithInitFederationProviders({ children, }: { + children: React.ReactNode; +}): JSX.Element; +export default function App(): JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/NotificationCenterProvider.d.ts b/@mf-types/shell/compiled-types/src/NotificationCenterProvider.d.ts new file mode 100644 index 000000000..1ffbc0d8d --- /dev/null +++ b/@mf-types/shell/compiled-types/src/NotificationCenterProvider.d.ts @@ -0,0 +1,35 @@ +import React, { Dispatch } from 'react'; +export type Notification = { + id: string; + title: string; + description: string; + severity: 'critical' | 'warning' | 'info'; + redirectUrl: string; + createdOn: Date; +}; +export type InternalNotification = Notification & { + readOn?: Date; +}; +export type NotificationCenterContextType = { + notifications: InternalNotification[]; + dispatch: Dispatch; +}; +export declare const NotificationCenterContext: React.Context; +export declare enum NotificationActionType { + PUBLISH = 0, + UNPUBLISH = 1, + READ_ALL = 2 +} +export type NotificationCenterActions = { + type: NotificationActionType.PUBLISH; + notification: Notification; +} | { + type: NotificationActionType.UNPUBLISH; + id: string; +} | { + type: NotificationActionType.READ_ALL; +}; +declare const NotificationCenterProvider: ({ children }: { + children: any; +}) => JSX.Element; +export default NotificationCenterProvider; diff --git a/@mf-types/shell/compiled-types/src/alerts/AlertProvider.d.ts b/@mf-types/shell/compiled-types/src/alerts/AlertProvider.d.ts new file mode 100644 index 000000000..dd4bb2ac2 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/alerts/AlertProvider.d.ts @@ -0,0 +1,12 @@ +import React from 'react'; +/** + * A wrapper fetching alerts and ensuring their accuracy via a polling refresh strategy. + * + * @param string alert manager url + * @param React.ReactNode children react node + * @returns + */ +export default function AlertProvider({ alertManagerUrl, children, }: { + alertManagerUrl: string; + children: React.ReactNode; +}): JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/alerts/alertContext.d.ts b/@mf-types/shell/compiled-types/src/alerts/alertContext.d.ts new file mode 100644 index 000000000..acbffad94 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/alerts/alertContext.d.ts @@ -0,0 +1 @@ +export declare const AlertContext: any; diff --git a/@mf-types/shell/compiled-types/src/alerts/alertHooks.d.ts b/@mf-types/shell/compiled-types/src/alerts/alertHooks.d.ts new file mode 100644 index 000000000..64f13b1b0 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/alerts/alertHooks.d.ts @@ -0,0 +1,26 @@ +import type { FilterLabels, Alert } from './services/alertUtils'; +export declare const getPlatformAlertSelectors: () => FilterLabels; +export declare const getNodesAlertSelectors: () => FilterLabels; +export declare const getVolumesAlertSelectors: () => FilterLabels; +export declare const getNetworksAlertSelectors: () => FilterLabels; +export declare const getServicesAlertSelectors: () => FilterLabels; +export declare const getK8SMasterAlertSelectors: () => FilterLabels; +export declare const getBootstrapAlertSelectors: () => FilterLabels; +export declare const getMonitoringAlertSelectors: () => FilterLabels; +export declare const getAlertingAlertSelectors: () => FilterLabels; +export declare const getLoggingAlertSelectors: () => FilterLabels; +export declare const getDashboardingAlertSelectors: () => FilterLabels; +export declare const getIngressControllerAlertSelectors: () => FilterLabels; +export declare const getAuthenticationAlertSelectors: () => FilterLabels; +/** + * + * @param {FilterLabels} filters + * @returns An array of alerts with the highest severity + */ +export declare const useHighestSeverityAlerts: (filters: FilterLabels) => Alert[]; +/** + * Hook that enables retrieval of alerts fetched by + * + * @returns react query result + */ +export declare function useAlerts(filters: FilterLabels): any; diff --git a/@mf-types/shell/compiled-types/src/alerts/index.d.ts b/@mf-types/shell/compiled-types/src/alerts/index.d.ts new file mode 100644 index 000000000..f802f457e --- /dev/null +++ b/@mf-types/shell/compiled-types/src/alerts/index.d.ts @@ -0,0 +1,2 @@ +export * from './AlertProvider'; +export * from './alertHooks'; diff --git a/@mf-types/shell/compiled-types/src/alerts/services/alertManager.d.ts b/@mf-types/shell/compiled-types/src/alerts/services/alertManager.d.ts new file mode 100644 index 000000000..98d9566b9 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/alerts/services/alertManager.d.ts @@ -0,0 +1,26 @@ +export type PrometheusAlert = { + annotations: Record; + receivers: { + name: string; + }[]; + fingerprint: string; + startsAt: string; + updatedAt: string; + endsAt: string; + status: { + state: 'unprocessed' | 'active' | 'suppressed'; + silencedBy: string[]; + inhibitedBy: string[]; + }; + labels: Record; + generatorURL: string; +}; +export type AlertLabels = { + parents?: string[]; + selectors?: string[]; + [labelName: string]: string; +}; +export declare function getAlerts(alertManagerUrl: string): Promise; +export declare const checkActiveAlertProvider: () => Promise<{ + status: 'healthy' | 'critical'; +}>; diff --git a/@mf-types/shell/compiled-types/src/alerts/services/alertUtils.d.ts b/@mf-types/shell/compiled-types/src/alerts/services/alertUtils.d.ts new file mode 100644 index 000000000..e6a38e1bb --- /dev/null +++ b/@mf-types/shell/compiled-types/src/alerts/services/alertUtils.d.ts @@ -0,0 +1,34 @@ +import type { PrometheusAlert, AlertLabels } from './alertManager'; +import type { StreamValue } from './loki'; +export declare const STATUS_WARNING = "warning"; +export declare const STATUS_CRITICAL = "critical"; +export declare const STATUS_SUCCESS = "success"; +export declare const STATUS_NONE = "none"; +export declare const STATUS_HEALTH = "healthy"; +export declare const STATUS_INFO = "info"; +export type Health = 'healthy' | 'warning' | 'critical' | 'none' | 'info'; +export type FilterLabels = { + selectors?: string[]; + [labelName: string]: string | string[]; +}; +export type Alert = { + id: string; + description: string; + startsAt: string; + endsAt: string; + severity: string; + labels: AlertLabels; + originalAlert: PrometheusAlert; + status: string; + summary?: string; + documentationUrl?: string; +}; +export declare const compareHealth: (status1: any, status2: any) => number; +export declare const removeWarningAlerts: (alerts: Alert[]) => Alert[]; +export declare const sortAlerts: (alerts: Alert[]) => Alert[]; +export declare const formatActiveAlerts: (alerts: Array) => Alert[]; +export declare const isAlertSelected: (labels: AlertLabels, filters: FilterLabels) => boolean; +export declare const filterAlerts: (alerts: Alert[], filters?: FilterLabels) => Alert[]; +export declare const dateIsBetween: (start: string, end: string, date: string) => boolean; +export declare const getHealthStatus: (alerts: Alert[], activeOn?: string) => Health; +export declare const formatHistoryAlerts: (streamValues: StreamValue) => Alert[]; diff --git a/@mf-types/shell/compiled-types/src/alerts/services/loki.d.ts b/@mf-types/shell/compiled-types/src/alerts/services/loki.d.ts new file mode 100644 index 000000000..925ae8be2 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/alerts/services/loki.d.ts @@ -0,0 +1,8 @@ +import type { Alert } from './alertUtils'; +export type StreamValue = { + stream: Record; + values: [string, string][]; +}[]; +export declare function getLast7DaysAlerts(lokiUrl: string): Promise; +export declare function getAlertsLoki(lokiUrl: string, start: string, end: string): Promise; +export declare function isLokiReady(lokiUrl: string): Promise; diff --git a/@mf-types/shell/compiled-types/src/auth/AuthConfigProvider.d.ts b/@mf-types/shell/compiled-types/src/auth/AuthConfigProvider.d.ts new file mode 100644 index 000000000..f25260610 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/auth/AuthConfigProvider.d.ts @@ -0,0 +1,9 @@ +import React from 'react'; +import type { OIDCConfig, OAuth2ProxyConfig } from '../initFederation/ConfigurationProviders'; +export declare const useAuthConfig: () => { + authConfig: OAuth2ProxyConfig | OIDCConfig | undefined; + setAuthConfig: (authConfig: OAuth2ProxyConfig | OIDCConfig) => void; +}; +export declare function AuthConfigProvider({ children, }: { + children: React.ReactNode; +}): JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/auth/AuthProvider.d.ts b/@mf-types/shell/compiled-types/src/auth/AuthProvider.d.ts new file mode 100644 index 000000000..0ec016a55 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/auth/AuthProvider.d.ts @@ -0,0 +1,18 @@ +import React from 'react'; +export declare function AuthProvider({ children }: { + children: React.ReactNode; +}): JSX.Element; +export type UserData = { + token: string; + username: string; + groups: string[]; + email: string; + id: string; +}; +export declare function useAuth(): { + userData?: UserData; + getToken: () => Promise; +}; +export declare function useLogOut(): { + logOut: () => void; +}; diff --git a/@mf-types/shell/compiled-types/src/auth/FirstTimeLoginProvider.d.ts b/@mf-types/shell/compiled-types/src/auth/FirstTimeLoginProvider.d.ts new file mode 100644 index 000000000..d2926004d --- /dev/null +++ b/@mf-types/shell/compiled-types/src/auth/FirstTimeLoginProvider.d.ts @@ -0,0 +1,7 @@ +import React from 'react'; +export declare const useFirstTimeLogin: () => { + firstTimeLogin: boolean | null; +}; +export declare function FirstTimeLoginProvider({ children, }: { + children: React.ReactNode; +}): JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/initFederation/ConfigurationProviders.d.ts b/@mf-types/shell/compiled-types/src/initFederation/ConfigurationProviders.d.ts new file mode 100644 index 000000000..8f739fd6a --- /dev/null +++ b/@mf-types/shell/compiled-types/src/initFederation/ConfigurationProviders.d.ts @@ -0,0 +1,108 @@ +import { IconName } from '@scality/core-ui/dist/components/icon/Icon.component'; +import type { SolutionUI } from '@scality/module-federation'; +import React from 'react'; +export type OAuth2ProxyConfig = { + kind: 'OAuth2Proxy'; +}; +export type OIDCConfig = { + kind: 'OIDC'; + providerUrl: string; + redirectUrl: string; + clientId: string; + responseType: string; + scopes: string; + providerLogout?: boolean; + defaultDexConnector?: string; +}; +export type RuntimeWebFinger = { + kind: 'MicroAppRuntimeConfiguration'; + apiVersion: 'ui.scality.com/v1alpha1'; + metadata: { + kind: string; + name: string; + }; + spec: { + title: string; + selfConfiguration: C; + auth: OIDCConfig | OAuth2ProxyConfig; + }; +}; +export type FederatedModuleInfo = { + module: string; + scope: string; +}; +export type View = { + path: string; + activeIfMatches?: string; + exact?: boolean; + strict?: boolean; + sensitive?: boolean; + label: { + en: string; + fr: string; + }; +} & FederatedModuleInfo; +export type BuildtimeWebFinger = { + kind: 'MicroAppConfiguration'; + apiVersion: 'ui.scality.com/v1alpha1'; + metadata: { + kind: string; + }; + spec: { + remoteEntryPath: string; + views: Record; + hooks: Record; + components: Record; + navbarUpdaterComponents?: FederatedModuleInfo[]; + instanceNameAdapter?: FederatedModuleInfo; + }; +}; +export declare function useConfigRetriever(): { + retrieveConfiguration: >(arg0: { + configType: T extends 'build' ? 'build' : 'run'; + name: string; + }) => (T extends 'build' ? BuildtimeWebFinger : RuntimeWebFinger) | null; +}; +export declare function useConfig>({ configType, name, }: { + configType: T extends 'build' ? 'build' : 'run'; + name: string; +}): null | T extends 'build' ? BuildtimeWebFinger : RuntimeWebFinger; +export type FederatedView = { + isFederated: true; + app: SolutionUI; + view: View; + groups?: string[]; + icon?: IconName; + navbarGroup: 'main' | 'subLogin'; +}; +export type NonFederatedView = { + isFederated: false; + url: string; + view: { + label: { + en: string; + fr: string; + }; + }; + isExternal: boolean; + groups?: string[]; + navbarGroup: 'main' | 'subLogin'; + icon?: IconName; +}; +export type ViewDefinition = FederatedView | NonFederatedView; +export declare function useDiscoveredViews(): ViewDefinition[]; +export declare const useLinkOpener: () => { + openLink: (to: { + isExternal?: boolean; + app: SolutionUI; + view: View; + isFederated: true; + } | { + isFederated: false; + isExternal?: boolean; + url: string; + }) => void; +}; +export declare const ConfigurationProvider: ({ children, }: { + children: React.ReactNode; +}) => JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/initFederation/ShellConfigProvider.d.ts b/@mf-types/shell/compiled-types/src/initFederation/ShellConfigProvider.d.ts new file mode 100644 index 000000000..eae327458 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/initFederation/ShellConfigProvider.d.ts @@ -0,0 +1,56 @@ +/// +import { CoreUITheme, CoreUIThemeName } from '@scality/core-ui/dist/style/theme'; +export type NavbarEntry = { + groups?: string[]; + label?: { + en: string; + fr: string; + }; + kind?: string; + view?: string; + url?: string; + icon?: string; + isExternal: boolean; +}; +export type UserGroupsMapping = Record; +type CoreUIShellThemeDescription = { + type: 'core-ui'; + name: CoreUIThemeName; + logoPath: string; +}; +type CustomShellThemeDescription = { + type: 'custom'; + logoPath: string; + colors: CoreUITheme; +}; +type ThemeDescription = CoreUIShellThemeDescription | CustomShellThemeDescription; +type Themes = { + dark: ThemeDescription; + light: ThemeDescription; +}; +export type ShellJSONFileConfig = { + discoveryUrl: string; + navbar: { + main: NavbarEntry[]; + subLogin: NavbarEntry[]; + }; + productName: string; + themes: Themes; + favicon?: string; + userGroupsMapping?: UserGroupsMapping; + canChangeTheme?: boolean; + canChangeInstanceName?: boolean; + canChangeLanguage?: boolean; +}; +export type ShellConfig = { + config: ShellJSONFileConfig; + favicon: Pick; + themes: Themes; + status: 'idle' | 'loading' | 'success' | 'error'; +}; +export declare const useShellConfig: () => ShellConfig; +export declare const ShellConfigProvider: ({ shellConfigUrl, children }: { + shellConfigUrl: any; + children: any; +}) => JSX.Element; +export {}; diff --git a/@mf-types/shell/compiled-types/src/initFederation/ShellHistoryProvider.d.ts b/@mf-types/shell/compiled-types/src/initFederation/ShellHistoryProvider.d.ts new file mode 100644 index 000000000..aa3227b90 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/initFederation/ShellHistoryProvider.d.ts @@ -0,0 +1,5 @@ +/// +export declare const useShellHistory: () => import("history").History; +export declare const ShellHistoryProvider: ({ children }: { + children: any; +}) => JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/initFederation/ShellThemeSelectorProvider.d.ts b/@mf-types/shell/compiled-types/src/initFederation/ShellThemeSelectorProvider.d.ts new file mode 100644 index 000000000..b7310e806 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/initFederation/ShellThemeSelectorProvider.d.ts @@ -0,0 +1,17 @@ +import { CoreUITheme } from '@scality/core-ui/dist/style/theme'; +import React from 'react'; +type ThemeMode = 'dark' | 'light'; +type ThemeContextValues = { + themeMode: ThemeMode; + theme: CoreUITheme; + setThemeMode: (themeMode: ThemeMode) => void; + assets: { + logoPath: string; + }; +}; +export declare function useShellThemeSelector(): ThemeContextValues; +export declare function ShellThemeSelectorProvider({ children, }: { + children: (theme: CoreUITheme, themeName: ThemeMode) => React.ReactNode; + onThemeChanged?: (evt: CustomEvent) => void; +}): JSX.Element; +export {}; diff --git a/@mf-types/shell/compiled-types/src/initFederation/UIListProvider.d.ts b/@mf-types/shell/compiled-types/src/initFederation/UIListProvider.d.ts new file mode 100644 index 000000000..34e350cc2 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/initFederation/UIListProvider.d.ts @@ -0,0 +1,16 @@ +import React from 'react'; +import type { SolutionUI } from '@scality/module-federation'; +export declare function useDeployedAppsRetriever(): { + retrieveDeployedApps: (selectors?: { + kind?: string; + name?: string; + }) => SolutionUI[]; +}; +export declare const useDeployedApps: (selectors?: { + kind?: string; + name?: string; +}) => SolutionUI[]; +export declare const UIListProvider: ({ children, discoveryURL, }: { + children: React.ReactNode; + discoveryURL: string; +}) => JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/navbar/InstanceName.d.ts b/@mf-types/shell/compiled-types/src/navbar/InstanceName.d.ts new file mode 100644 index 000000000..4755ebda5 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/InstanceName.d.ts @@ -0,0 +1,18 @@ +import { PropsWithChildren } from 'react'; +import { UserData } from '../auth/AuthProvider'; +export declare const InstanceNameProvider: ({ children }: PropsWithChildren<{}>) => JSX.Element; +export declare const useInstanceName: () => string; +export declare const useInstanceNameAdapter: () => { + remoteEntryUrl: string; + module: string; + scope: string; +}; +export declare const _InternalInstanceName: ({ moduleExports, }: { + moduleExports: { + [moduleName: string]: { + getInstanceName: (userData: UserData | undefined) => Promise; + setInstanceName: (userData: UserData | undefined, name: string) => Promise; + }; + }; +}) => JSX.Element; +export declare const InstanceName: () => JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/navbar/NavBar.d.ts b/@mf-types/shell/compiled-types/src/navbar/NavBar.d.ts new file mode 100644 index 000000000..467aac4b7 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/NavBar.d.ts @@ -0,0 +1,20 @@ +import React from 'react'; +import { ViewDefinition } from '../initFederation/ConfigurationProviders'; +import type { Link as TypeLink } from './navbarHooks'; +export declare const LoadingNavbar: ({ logo }: { + logo: string; +}) => JSX.Element; +export declare const useNavbarLinksToActions: (links: TypeLink[]) => { + link: TypeLink; + selected: boolean; +}[]; +export declare const useFederatedNavbarEntries: () => { + accessibleViews: ViewDefinition[]; +}; +export declare const Navbar: ({ logo, canChangeLanguage, canChangeTheme, children, }: { + logo: string; + canChangeLanguage?: boolean; + canChangeTheme?: boolean; + providerLogout?: boolean; + children?: React.ReactNode; +}) => JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/navbar/NavbarConfigProvider.d.ts b/@mf-types/shell/compiled-types/src/navbar/NavbarConfigProvider.d.ts new file mode 100644 index 000000000..2dc244c47 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/NavbarConfigProvider.d.ts @@ -0,0 +1,5 @@ +import { ReactElement } from 'react'; +import './navbarHooks'; +export declare const NavbarConfigProvider: ({ children, }: { + children: ReactElement; +}) => ReactElement; diff --git a/@mf-types/shell/compiled-types/src/navbar/NavbarUpdaterComponents.d.ts b/@mf-types/shell/compiled-types/src/navbar/NavbarUpdaterComponents.d.ts new file mode 100644 index 000000000..834a01795 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/NavbarUpdaterComponents.d.ts @@ -0,0 +1,2 @@ +/// +export declare const NavbarUpdaterComponents: () => JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/navbar/NotificationCenter.d.ts b/@mf-types/shell/compiled-types/src/navbar/NotificationCenter.d.ts new file mode 100644 index 000000000..380c8be45 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/NotificationCenter.d.ts @@ -0,0 +1,3 @@ +/// +declare const NotificationCenter: () => JSX.Element; +export default NotificationCenter; diff --git a/@mf-types/shell/compiled-types/src/navbar/SleepingNotificationBell.d.ts b/@mf-types/shell/compiled-types/src/navbar/SleepingNotificationBell.d.ts new file mode 100644 index 000000000..660e6ce95 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/SleepingNotificationBell.d.ts @@ -0,0 +1,2 @@ +/// +export declare const SleepingNotificationBell: () => JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/navbar/auth/permissionUtils.d.ts b/@mf-types/shell/compiled-types/src/navbar/auth/permissionUtils.d.ts new file mode 100644 index 000000000..18f23aefd --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/auth/permissionUtils.d.ts @@ -0,0 +1,7 @@ +import type { User } from 'oidc-react'; +import type { PathDescription } from '../index'; +import { UserGroupsMapping } from '../../initFederation/ShellConfigProvider'; +export declare const isEntryAccessibleByTheUser: ([path, pathDescription]: [string, PathDescription], userGroups: string[]) => boolean; +export declare const normalizePath: (path: string) => string; +export declare const isPathAccessible: (path: string, accessiblePaths: string[]) => boolean; +export declare const getUserGroups: (user?: User, userGroupsMapping?: UserGroupsMapping) => string[]; diff --git a/@mf-types/shell/compiled-types/src/navbar/events.d.ts b/@mf-types/shell/compiled-types/src/navbar/events.d.ts new file mode 100644 index 000000000..89178c61e --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/events.d.ts @@ -0,0 +1,3 @@ +export declare const AUTHENTICATED_EVENT: string; +export declare const LANGUAGE_CHANGED_EVENT: string; +export declare const THEME_CHANGED_EVENT: string; diff --git a/@mf-types/shell/compiled-types/src/navbar/favicon.d.ts b/@mf-types/shell/compiled-types/src/navbar/favicon.d.ts new file mode 100644 index 000000000..8b3128d1b --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/favicon.d.ts @@ -0,0 +1 @@ +export declare const useFavicon: (favicon: string) => void; diff --git a/@mf-types/shell/compiled-types/src/navbar/index.d.ts b/@mf-types/shell/compiled-types/src/navbar/index.d.ts new file mode 100644 index 000000000..018f0a83e --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/index.d.ts @@ -0,0 +1,6 @@ +import React from 'react'; +import './library'; +export type SolutionsNavbarProps = { + children?: React.ReactNode; +}; +export declare const SolutionsNavbar: ({ children }: SolutionsNavbarProps) => JSX.Element; diff --git a/@mf-types/shell/compiled-types/src/navbar/lang.d.ts b/@mf-types/shell/compiled-types/src/navbar/lang.d.ts new file mode 100644 index 000000000..06bf0b7d6 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/lang.d.ts @@ -0,0 +1,14 @@ +import React from 'react'; +type Language = 'en' | 'fr'; +export declare const languages: Language[]; +export declare function useLanguage(): { + language: Language; + setLanguage: (language: Language) => void; + unSelectedLanguages: Language[]; +}; +export declare function LanguageProvider({ children, canChangeLanguage, onLanguageChanged, }: { + children: React.ReactNode; + canChangeLanguage?: boolean; + onLanguageChanged?: (evt: CustomEvent) => void; +}): JSX.Element; +export {}; diff --git a/@mf-types/shell/compiled-types/src/navbar/library.d.ts b/@mf-types/shell/compiled-types/src/navbar/library.d.ts new file mode 100644 index 000000000..cb0ff5c3b --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/library.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/@mf-types/shell/compiled-types/src/navbar/navbarContext.d.ts b/@mf-types/shell/compiled-types/src/navbar/navbarContext.d.ts new file mode 100644 index 000000000..edf40338e --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/navbarContext.d.ts @@ -0,0 +1,2 @@ +import './navbarHooks'; +export declare const NavbarContext: any; diff --git a/@mf-types/shell/compiled-types/src/navbar/navbarHooks.d.ts b/@mf-types/shell/compiled-types/src/navbar/navbarHooks.d.ts new file mode 100644 index 000000000..076c78733 --- /dev/null +++ b/@mf-types/shell/compiled-types/src/navbar/navbarHooks.d.ts @@ -0,0 +1,23 @@ +/// +import type { ViewDefinition } from '../initFederation/ConfigurationProviders'; +import '../initFederation/ConfigurationProviders'; +export type Link = { + render?: (props: { + selected?: boolean; + }) => JSX.Element; + view: ViewDefinition; +}; +export type NavbarLinks = { + main: Link[]; + secondary: Link[]; + userDropdown: Link[]; + logoHref: string; +}; +export type Navbar = { + setLogoLink(href: string): void; + setMainLinks(links: Link[]): void; + setSecondaryLinks(links: Link[]): void; + setUserDropdownLinks(links: Link[]): void; + getLinks(): NavbarLinks; +}; +export declare const useNavbar: () => Navbar; diff --git a/@mf-types/shell/compiled-types/src/useNotificationCenter.d.ts b/@mf-types/shell/compiled-types/src/useNotificationCenter.d.ts new file mode 100644 index 000000000..0da01983e --- /dev/null +++ b/@mf-types/shell/compiled-types/src/useNotificationCenter.d.ts @@ -0,0 +1,7 @@ +import { Notification } from './NotificationCenterProvider'; +export declare const useNotificationCenter: () => { + notifications: import("./NotificationCenterProvider").InternalNotification[]; + readAllNotifications: () => void; + publish: (notification: Notification) => void; + unPublish: (id: string) => void; +}; diff --git a/@mf-types/shell/lang.d.ts b/@mf-types/shell/lang.d.ts new file mode 100644 index 000000000..c9a734ee8 --- /dev/null +++ b/@mf-types/shell/lang.d.ts @@ -0,0 +1,2 @@ +export * from './compiled-types/src/navbar/lang'; +export { default } from './compiled-types/src/navbar/lang'; \ No newline at end of file diff --git a/@mf-types/shell/moduleFederation/ConfigurationProvider.d.ts b/@mf-types/shell/moduleFederation/ConfigurationProvider.d.ts new file mode 100644 index 000000000..7867fcfff --- /dev/null +++ b/@mf-types/shell/moduleFederation/ConfigurationProvider.d.ts @@ -0,0 +1,2 @@ +export * from './../compiled-types/src/initFederation/ConfigurationProviders'; +export { default } from './../compiled-types/src/initFederation/ConfigurationProviders'; \ No newline at end of file diff --git a/@mf-types/shell/moduleFederation/ShellConfigurationProvider.d.ts b/@mf-types/shell/moduleFederation/ShellConfigurationProvider.d.ts new file mode 100644 index 000000000..aef04c0d5 --- /dev/null +++ b/@mf-types/shell/moduleFederation/ShellConfigurationProvider.d.ts @@ -0,0 +1,2 @@ +export * from './../compiled-types/src/initFederation/ShellConfigProvider'; +export { default } from './../compiled-types/src/initFederation/ShellConfigProvider'; \ No newline at end of file diff --git a/@mf-types/shell/moduleFederation/UIListProvider.d.ts b/@mf-types/shell/moduleFederation/UIListProvider.d.ts new file mode 100644 index 000000000..122f8bf84 --- /dev/null +++ b/@mf-types/shell/moduleFederation/UIListProvider.d.ts @@ -0,0 +1,2 @@ +export * from './../compiled-types/src/initFederation/UIListProvider'; +export { default } from './../compiled-types/src/initFederation/UIListProvider'; \ No newline at end of file diff --git a/@mf-types/shell/navbar/navbarHooks.d.ts b/@mf-types/shell/navbar/navbarHooks.d.ts new file mode 100644 index 000000000..7f65b48c8 --- /dev/null +++ b/@mf-types/shell/navbar/navbarHooks.d.ts @@ -0,0 +1,2 @@ +export * from './../compiled-types/src/navbar/navbarHooks'; +export { default } from './../compiled-types/src/navbar/navbarHooks'; \ No newline at end of file diff --git a/@mf-types/shell/useNotificationCenter.d.ts b/@mf-types/shell/useNotificationCenter.d.ts new file mode 100644 index 000000000..20beb06ac --- /dev/null +++ b/@mf-types/shell/useNotificationCenter.d.ts @@ -0,0 +1,2 @@ +export * from './compiled-types/src/useNotificationCenter'; +export { default } from './compiled-types/src/useNotificationCenter'; \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 57f519173..bde46d55b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ "@hookform/resolvers": "^2.8.8", "@monaco-editor/react": "^4.4.5", "@scality/core-ui": "^0.132.0", - "@scality/module-federation": "github:scality/module-federation#1.1.0", + "@scality/module-federation": "github:scality/module-federation#1.3.1", "@types/react-table": "^7.7.10", "@types/react-virtualized": "^9.21.20", "@types/react-window": "^1.8.5", @@ -60,6 +60,10 @@ "@babel/preset-env": "^7.8.4", "@babel/preset-react": "^7.8.3", "@babel/preset-typescript": "^7.16.7", + "@module-federation/enhanced": "^0.2.3", + "@rsdoctor/rspack-plugin": "^0.3.6", + "@rspack/cli": "^0.7.5", + "@rspack/core": "^0.7.5", "@testing-library/jest-dom": "^5.16.2", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^7.0.2", @@ -98,6 +102,7 @@ "redux-logger": "^3.0.6", "redux-mock-store": "^1.5.4", "style-loader": "^1.1.3", + "ts-node": "^10.9.2", "typescript": "^5.3.2", "webpack": "^5.88.1", "webpack-cli": "^5.1.4", @@ -134,17 +139,22 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" + }, "node_modules/@babel/compat-data": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", @@ -464,9 +474,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "engines": { "node": ">=6.9.0" } @@ -509,18 +519,61 @@ } }, "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.7", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/highlight/node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" + }, "node_modules/@babel/parser": { "version": "7.23.9", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.9.tgz", @@ -1956,6 +2009,28 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, "node_modules/@discoveryjs/json-ext": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", @@ -2519,76 +2594,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@jest/console/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/console/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/console/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/console/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/core": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", @@ -2636,76 +2641,6 @@ } } }, - "node_modules/@jest/core/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/core/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/core/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/environment": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", @@ -2796,76 +2731,6 @@ } } }, - "node_modules/@jest/reporters/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/reporters/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/reporters/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/reporters/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/reporters/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/reporters/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/source-map": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", @@ -2936,82 +2801,12 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@jest/transform/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/transform/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/@jest/transform/node_modules/convert-source-map": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true }, - "node_modules/@jest/transform/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/transform/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", @@ -3028,76 +2823,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@jest/types/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/types/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/types/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/types/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", @@ -3169,6 +2894,277 @@ "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", "dev": true }, + "node_modules/@module-federation/bridge-react-webpack-plugin": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/bridge-react-webpack-plugin/-/bridge-react-webpack-plugin-0.2.3.tgz", + "integrity": "sha512-RpFoo25kMaGkQpbwOhcYuF9cDNdo7FTFm6LceBbje8CkVaX8ekR9foXvKYoykbmCi/SbLw0WcXnq7/5y0UZ4nQ==", + "dev": true, + "dependencies": { + "@module-federation/sdk": "0.2.3" + } + }, + "node_modules/@module-federation/dts-plugin": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/dts-plugin/-/dts-plugin-0.2.3.tgz", + "integrity": "sha512-8QWWdspNNmGuCqiyGf1UiFxIt99TDFoajnK52IiJXnC6DsTjb2lHvHcw01NTJUwmfvxWUbwUjcGPSGeta3861Q==", + "dev": true, + "dependencies": { + "@module-federation/managers": "0.2.3", + "@module-federation/sdk": "0.2.3", + "@module-federation/third-party-dts-extractor": "0.2.3", + "adm-zip": "^0.5.10", + "ansi-colors": "^4.1.3", + "axios": "^1.6.7", + "chalk": "3.0.0", + "fs-extra": "9.1.0", + "isomorphic-ws": "5.0.0", + "koa": "2.11.0", + "lodash.clonedeepwith": "4.5.0", + "log4js": "6.9.1", + "node-schedule": "2.1.1", + "rambda": "^9.1.0", + "ws": "8.17.1" + }, + "peerDependencies": { + "typescript": "^4.9.0 || ^5.0.0", + "vue-tsc": "^1.0.24" + }, + "peerDependenciesMeta": { + "vue-tsc": { + "optional": true + } + } + }, + "node_modules/@module-federation/dts-plugin/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@module-federation/dts-plugin/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@module-federation/dts-plugin/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@module-federation/dts-plugin/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@module-federation/enhanced": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/enhanced/-/enhanced-0.2.3.tgz", + "integrity": "sha512-OHHR0BtNidz82K38MrNxZsKgFP6DNFfVZQmdJhMIrfIjURAbWw3zG1FOywdTZ3+Nic9FS3f65ttha6x9Cv4SpA==", + "dev": true, + "dependencies": { + "@module-federation/bridge-react-webpack-plugin": "0.2.3", + "@module-federation/dts-plugin": "0.2.3", + "@module-federation/managers": "0.2.3", + "@module-federation/manifest": "0.2.3", + "@module-federation/rspack": "0.2.3", + "@module-federation/runtime-tools": "0.2.3", + "@module-federation/sdk": "0.2.3", + "btoa": "^1.2.1", + "upath": "2.0.1" + }, + "peerDependencies": { + "typescript": "^4.9.0 || ^5.0.0", + "vue-tsc": "^1.0.24", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + }, + "vue-tsc": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/@module-federation/managers": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/managers/-/managers-0.2.3.tgz", + "integrity": "sha512-GqNMkUiK4GbAu3emrwVPtP8BzG4lCX+O9kMUUw6LQ8ZDhjOCr+McvDOSgvWLZ89aB+rLPRtnz3fOT6pdUAa+oA==", + "dev": true, + "dependencies": { + "@module-federation/sdk": "0.2.3", + "find-pkg": "2.0.0", + "fs-extra": "9.1.0" + } + }, + "node_modules/@module-federation/managers/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@module-federation/manifest": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/manifest/-/manifest-0.2.3.tgz", + "integrity": "sha512-TFrjNhsMkSOE4TADJt6kOaKfQ4uugQg4kFlocjAnxN5JHj5rTo/r9lSxtWeoeS2GMli9ifTFgECndmShpz3QcQ==", + "dev": true, + "dependencies": { + "@module-federation/dts-plugin": "0.2.3", + "@module-federation/managers": "0.2.3", + "@module-federation/sdk": "0.2.3", + "chalk": "3.0.0", + "find-pkg": "2.0.0" + } + }, + "node_modules/@module-federation/manifest/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@module-federation/manifest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@module-federation/manifest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@module-federation/rspack": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/rspack/-/rspack-0.2.3.tgz", + "integrity": "sha512-9n9SHiJvFOV/GHuLEF2xWwyg6SGsLu5g/onulpJ2dpkY57ZLPDRprEKoBsOZfz+dp/PWBUOt0YxHcl934hcF8Q==", + "dev": true, + "dependencies": { + "@module-federation/bridge-react-webpack-plugin": "0.2.3", + "@module-federation/dts-plugin": "0.2.3", + "@module-federation/managers": "0.2.3", + "@module-federation/manifest": "0.2.3", + "@module-federation/runtime-tools": "0.2.3", + "@module-federation/sdk": "0.2.3" + } + }, + "node_modules/@module-federation/runtime": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/runtime/-/runtime-0.2.3.tgz", + "integrity": "sha512-N+ZxBUb1mkmfO9XT1BwgYQgShtUTlijHbukqQ4afFka5lRAT+ayC7RKfHJLz0HbuexKPCmPBDfdmCnErR5WyTQ==", + "dev": true, + "dependencies": { + "@module-federation/sdk": "0.2.3" + } + }, + "node_modules/@module-federation/runtime-tools": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-tools/-/runtime-tools-0.2.3.tgz", + "integrity": "sha512-capN8CVTCEqNAjnl102girrkevczoQfnQYyiYC4WuyKsg7+LUqfirIe1Eiyv6VSE2UgvOTZDnqvervA6rBOlmg==", + "dev": true, + "dependencies": { + "@module-federation/runtime": "0.2.3", + "@module-federation/webpack-bundler-runtime": "0.2.3" + } + }, + "node_modules/@module-federation/sdk": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/sdk/-/sdk-0.2.3.tgz", + "integrity": "sha512-W9zrPchLocyCBc/B8CW21akcfJXLl++9xBe1L1EtgxZGfj/xwHt0GcBWE/y+QGvYTL2a1iZjwscbftbUhxgxXg==", + "dev": true + }, + "node_modules/@module-federation/third-party-dts-extractor": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/third-party-dts-extractor/-/third-party-dts-extractor-0.2.3.tgz", + "integrity": "sha512-/J1KIOYT071MBHE78JaZR+rngpOFOv/16MLIc5Qg4ckl1HdojLa4nZ+o2N6atRGDE2nX6hJFFTCeGXkBC7TQhg==", + "dev": true, + "dependencies": { + "find-pkg": "2.0.0", + "fs-extra": "9.1.0", + "resolve": "1.22.8" + } + }, + "node_modules/@module-federation/third-party-dts-extractor/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@module-federation/webpack-bundler-runtime": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.2.3.tgz", + "integrity": "sha512-L/jt2uJ+8dwYiyn9GxryzDR6tr/Wk8rpgvelM2EBeLIhu7YxCHSmSjQYhw3BTux9zZIr47d1K9fGjBFsVRd/SQ==", + "dev": true, + "dependencies": { + "@module-federation/runtime": "0.2.3", + "@module-federation/sdk": "0.2.3" + } + }, "node_modules/@monaco-editor/loader": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.4.0.tgz", @@ -3321,6 +3317,949 @@ "integrity": "sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==", "dev": true }, + "node_modules/@rsdoctor/client": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/client/-/client-0.3.6.tgz", + "integrity": "sha512-5uNdoyrwYvZDlxG3ihdh+3Q0eL4W+T3OOHfPylZwYuF4PaEaay2c97KR6FomfyJGlh+nqL1735aFyoKe3yPz4g==", + "dev": true + }, + "node_modules/@rsdoctor/core": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/core/-/core-0.3.6.tgz", + "integrity": "sha512-e9BhwC5oBE2BikZ9saYi5KTlvuXefBd3jJMHSS4LeXAeezHyiQ148qVuU2k2B5PqVurmm51AMx9Z+ekQtH4DSA==", + "dev": true, + "dependencies": { + "@rsdoctor/graph": "0.3.6", + "@rsdoctor/sdk": "0.3.6", + "@rsdoctor/types": "0.3.6", + "@rsdoctor/utils": "0.3.6", + "axios": "^1.7.2", + "enhanced-resolve": "5.12.0", + "filesize": "^10.1.2", + "fs-extra": "^11.1.1", + "loader-utils": "^2.0.4", + "lodash": "^4.17.21", + "path-browserify": "1.0.1", + "semver": "^7.5.4", + "source-map": "^0.7.4", + "webpack-bundle-analyzer": "^4.9.1", + "webpack-sources": "^3.2.3" + } + }, + "node_modules/@rsdoctor/core/node_modules/enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@rsdoctor/core/node_modules/semver": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@rsdoctor/core/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rsdoctor/core/node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@rsdoctor/core/node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@rsdoctor/graph": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/graph/-/graph-0.3.6.tgz", + "integrity": "sha512-h9wDjbZpw+ywHTetrCl3qz5Qz1DtE5c4zFNg9MwlzbujhhrxBEFkQqGWNRS6afFfecmDl/PcF6v9yfjlpLzqww==", + "dev": true, + "dependencies": { + "@rsdoctor/types": "0.3.6", + "@rsdoctor/utils": "0.3.6", + "lodash": "^4.17.21", + "socket.io": "4.7.2", + "source-map": "^0.7.4" + } + }, + "node_modules/@rsdoctor/graph/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rsdoctor/rspack-plugin": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/rspack-plugin/-/rspack-plugin-0.3.6.tgz", + "integrity": "sha512-ubXMFFiwnmCDiopOsE9Enk8n30WcRUDle+ZagnkpQz6MCvEnVKQSZZO91Q7E+E0g1FABEc4ramCmyeI9KA0BGw==", + "dev": true, + "dependencies": { + "@rsdoctor/core": "0.3.6", + "@rsdoctor/graph": "0.3.6", + "@rsdoctor/sdk": "0.3.6", + "@rsdoctor/types": "0.3.6", + "@rsdoctor/utils": "0.3.6", + "loader-utils": "^2.0.4", + "lodash": "^4.17.21" + }, + "peerDependencies": { + "@rspack/core": "0.x" + } + }, + "node_modules/@rsdoctor/sdk": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/sdk/-/sdk-0.3.6.tgz", + "integrity": "sha512-42Ztxhy4vhNYFOx8mbz7RkKhXINaTptLcBTxrGn1/mNYToPozZ/K6Ea2o71LcF/Uj9pewrHMYBK01isH4mDeXg==", + "dev": true, + "dependencies": { + "@rsdoctor/client": "0.3.6", + "@rsdoctor/graph": "0.3.6", + "@rsdoctor/types": "0.3.6", + "@rsdoctor/utils": "0.3.6", + "body-parser": "1.20.1", + "cors": "2.8.5", + "dayjs": "1.11.6", + "ip": "1.1.9", + "lodash": "^4.17.21", + "open": "^8.4.0", + "serve-static": "1.15.0", + "socket.io": "4.7.2", + "source-map": "^0.7.4", + "tapable": "2.2.1" + } + }, + "node_modules/@rsdoctor/sdk/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rsdoctor/sdk/node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@rsdoctor/types": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/types/-/types-0.3.6.tgz", + "integrity": "sha512-7VxCVlKeyPvZ446gtbci878U2vAghhLRmETM9OTaDH5kXwnrjWFH6pbJzyr9a27EeCmUlzMu8Usb7N48koMpqg==", + "dev": true, + "dependencies": { + "@types/connect": "3.4.35", + "@types/estree": "1.0.0", + "@types/tapable": "2.2.2", + "@types/webpack": "5.28.0", + "source-map": "^0.7.4" + }, + "peerDependencies": { + "@rspack/core": "0.x" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + } + } + }, + "node_modules/@rsdoctor/types/node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@rsdoctor/types/node_modules/@types/estree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", + "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", + "dev": true + }, + "node_modules/@rsdoctor/types/node_modules/@types/tapable": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-2.2.2.tgz", + "integrity": "sha512-ujqOVJEeLcwpDVJPnp/k3u1UXmTKq5urJq9fO8aUKg8Vlel5RNOFbVKEfqfh6wGfF/M+HiTJlBJMLC1aDfyf0Q==", + "dev": true, + "dependencies": { + "tapable": "^2.2.0" + } + }, + "node_modules/@rsdoctor/types/node_modules/@types/webpack": { + "version": "5.28.0", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-5.28.0.tgz", + "integrity": "sha512-8cP0CzcxUiFuA9xGJkfeVpqmWTk9nx6CWwamRGCj95ph1SmlRRk9KlCZ6avhCbZd4L68LvYT6l1kpdEnQXrF8w==", + "dev": true, + "dependencies": { + "@types/node": "*", + "tapable": "^2.2.0", + "webpack": "^5" + } + }, + "node_modules/@rsdoctor/types/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rsdoctor/types/node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@rsdoctor/utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/utils/-/utils-0.3.6.tgz", + "integrity": "sha512-8JfRHJFTvWPiUd90B3fwmYnRHrhcdat1U/MK+42JcDn7oYeLXHPZLyZxspNhbfGevLGVxe6pbpJkMFpARq/JNA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.24.2", + "@rsdoctor/types": "0.3.6", + "@types/estree": "1.0.0", + "acorn": "^8.10.0", + "acorn-import-assertions": "1.9.0", + "acorn-walk": "8.3.2", + "chalk": "^4.1.2", + "connect": "3.7.0", + "deep-eql": "4.1.0", + "envinfo": "7.13.0", + "filesize": "^10.1.2", + "fs-extra": "^11.1.1", + "get-port": "5.1.1", + "json-stream-stringify": "3.0.1", + "lines-and-columns": "2.0.4", + "lodash": "^4.17.21", + "rslog": "^1.2.0", + "strip-ansi": "^6.0.1" + } + }, + "node_modules/@rsdoctor/utils/node_modules/@types/estree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", + "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", + "dev": true + }, + "node_modules/@rsdoctor/utils/node_modules/acorn-walk": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@rsdoctor/utils/node_modules/lines-and-columns": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz", + "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/@rspack/binding": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding/-/binding-0.7.5.tgz", + "integrity": "sha512-XcdOvaCz1mWWwr5vmEY9zncdInrjINEh60EWkYdqtCA67v7X7rB1fe6n4BeAI1+YLS2Eacj+lytlr+n7I+DYVg==", + "dev": true, + "optionalDependencies": { + "@rspack/binding-darwin-arm64": "0.7.5", + "@rspack/binding-darwin-x64": "0.7.5", + "@rspack/binding-linux-arm64-gnu": "0.7.5", + "@rspack/binding-linux-arm64-musl": "0.7.5", + "@rspack/binding-linux-x64-gnu": "0.7.5", + "@rspack/binding-linux-x64-musl": "0.7.5", + "@rspack/binding-win32-arm64-msvc": "0.7.5", + "@rspack/binding-win32-ia32-msvc": "0.7.5", + "@rspack/binding-win32-x64-msvc": "0.7.5" + } + }, + "node_modules/@rspack/binding-darwin-arm64": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-arm64/-/binding-darwin-arm64-0.7.5.tgz", + "integrity": "sha512-mNBIm36s1BA7v4SL/r4f3IXIsjyH5CZX4eXMRPE52lBc3ClVuUB7d/8zk8dkyjJCMAj8PsZSnAJ3cfXnn7TN4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rspack/binding-darwin-x64": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-x64/-/binding-darwin-x64-0.7.5.tgz", + "integrity": "sha512-teLK0TB1x0CsvaaiCopsFx4EvJe+/Hljwii6R7C9qOZs5zSOfbT/LQ202eA0sAGodCncARCGaXVrsekbrRYqeA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rspack/binding-linux-arm64-gnu": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.7.5.tgz", + "integrity": "sha512-/24UytJXrK+7CsucDb30GCKYIJ8nG6ceqbJyOtsJv9zeArNLHkxrYGSyjHJIpQfwVN17BPP4RNOi+yIZ3ZgDyA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-arm64-musl": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.7.5.tgz", + "integrity": "sha512-6RcxG42mLM01Pa6UYycACu/Nu9qusghAPUJumb8b8x5TRIDEtklYC5Ck6Rmagm+8E0ucMude2E/D4rMdIFcS3A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-x64-gnu": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.7.5.tgz", + "integrity": "sha512-R0Lu4CJN2nWMW7WzPBuCIju80cQPpcaqwKJDj/quwQySpJJZ6c5qGwB8mntqjxIzZDrNH6u0OkpiUTbvWZj8ww==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-x64-musl": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-musl/-/binding-linux-x64-musl-0.7.5.tgz", + "integrity": "sha512-dDgi/ThikMy1m4llxPeEXDCA2I8F8ezFS/eCPLZGU2/J1b4ALwDjuRsMmo+VXSlFCKgIt98V6h1woeg7nu96yg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-win32-arm64-msvc": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.7.5.tgz", + "integrity": "sha512-nEF4cUdLfgEK6FrgJSJhUlr2/7LY1tmqBNQCFsCjtDtUkQbJIEo1b8edT94G9tJcQoFE4cD+Re30yBYbQO2Thg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/binding-win32-ia32-msvc": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.7.5.tgz", + "integrity": "sha512-hEcHRwJIzpZsePr+5x6V/7TGhrPXhSZYG4sIhsrem1za9W+qqCYYLZ7KzzbRODU07QaAH2RxjcA1bf8F2QDYAQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/binding-win32-x64-msvc": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.7.5.tgz", + "integrity": "sha512-PpVpP6J5/2b4T10hzSUwjLvmdpAOj3ozARl1Nrf/lsbYwhiXivoB8Gvoy/xe/Xpgr732Dk9VCeeW8rreWOOUVQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/cli": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/cli/-/cli-0.7.5.tgz", + "integrity": "sha512-3Lp1RSyTRzBUi232hjRmF6wLHaMJXXMJIlX5dR662HwfCRwgm+q/Nz3829/UbjHXI2aGN4fFBgNI+LJU1TOZVQ==", + "dev": true, + "dependencies": { + "@discoveryjs/json-ext": "^0.5.7", + "@rspack/dev-server": "0.7.5", + "colorette": "2.0.19", + "exit-hook": "^3.2.0", + "interpret": "^3.1.1", + "rechoir": "^0.8.0", + "semver": "6.3.1", + "webpack-bundle-analyzer": "4.6.1", + "yargs": "17.6.2" + }, + "bin": { + "rspack": "bin/rspack" + }, + "peerDependencies": { + "@rspack/core": ">=0.4.0" + } + }, + "node_modules/@rspack/cli/node_modules/acorn-walk": { + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", + "dev": true, + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@rspack/cli/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@rspack/cli/node_modules/colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "dev": true + }, + "node_modules/@rspack/cli/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@rspack/cli/node_modules/mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@rspack/cli/node_modules/sirv": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", + "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", + "dev": true, + "dependencies": { + "@polka/url": "^1.0.0-next.20", + "mrmime": "^1.0.0", + "totalist": "^1.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@rspack/cli/node_modules/totalist": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", + "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@rspack/cli/node_modules/webpack-bundle-analyzer": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.6.1.tgz", + "integrity": "sha512-oKz9Oz9j3rUciLNfpGFjOb49/jEpXNmWdVH8Ls//zNcnLlQdTGXQQMsBbb/gR7Zl8WNLxVCq+0Hqbx3zv6twBw==", + "dev": true, + "dependencies": { + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "chalk": "^4.1.0", + "commander": "^7.2.0", + "gzip-size": "^6.0.0", + "lodash": "^4.17.20", + "opener": "^1.5.2", + "sirv": "^1.0.7", + "ws": "^7.3.1" + }, + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/@rspack/cli/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@rspack/cli/node_modules/ws": { + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@rspack/cli/node_modules/yargs": { + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@rspack/cli/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@rspack/core": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/core/-/core-0.7.5.tgz", + "integrity": "sha512-zVTe4WCyc3qsLPattosiDYZFeOzaJ32/BYukPP2I1VJtCVFa+PxGVRPVZhSoN6fXw5oy48yHg9W9v1T8CaEFhw==", + "dev": true, + "dependencies": { + "@module-federation/runtime-tools": "0.1.6", + "@rspack/binding": "0.7.5", + "caniuse-lite": "^1.0.30001616", + "tapable": "2.2.1", + "webpack-sources": "3.2.3" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@swc/helpers": ">=0.5.1" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@rspack/core/node_modules/@module-federation/runtime": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@module-federation/runtime/-/runtime-0.1.6.tgz", + "integrity": "sha512-nj6a+yJ+QxmcE89qmrTl4lphBIoAds0PFPVGnqLRWflwAP88jrCcrrTqRhARegkFDL+wE9AE04+h6jzlbIfMKg==", + "dev": true, + "dependencies": { + "@module-federation/sdk": "0.1.6" + } + }, + "node_modules/@rspack/core/node_modules/@module-federation/runtime-tools": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-tools/-/runtime-tools-0.1.6.tgz", + "integrity": "sha512-7ILVnzMIa0Dlc0Blck5tVZG1tnk1MmLnuZpLOMpbdW+zl+N6wdMjjHMjEZFCUAJh2E5XJ3BREwfX8Ets0nIkLg==", + "dev": true, + "dependencies": { + "@module-federation/runtime": "0.1.6", + "@module-federation/webpack-bundler-runtime": "0.1.6" + } + }, + "node_modules/@rspack/core/node_modules/@module-federation/sdk": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@module-federation/sdk/-/sdk-0.1.6.tgz", + "integrity": "sha512-qifXpyYLM7abUeEOIfv0oTkguZgRZuwh89YOAYIZJlkP6QbRG7DJMQvtM8X2yHXm9PTk0IYNnOJH0vNQCo6auQ==", + "dev": true + }, + "node_modules/@rspack/core/node_modules/@module-federation/webpack-bundler-runtime": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.1.6.tgz", + "integrity": "sha512-K5WhKZ4RVNaMEtfHsd/9CNCgGKB0ipbm/tgweNNeC11mEuBTNxJ09Y630vg3WPkKv9vfMCuXg2p2Dk+Q/KWTSA==", + "dev": true, + "dependencies": { + "@module-federation/runtime": "0.1.6", + "@module-federation/sdk": "0.1.6" + } + }, + "node_modules/@rspack/core/node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@rspack/core/node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@rspack/dev-server": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/dev-server/-/dev-server-0.7.5.tgz", + "integrity": "sha512-jDXfccjlHMXOxOK++uxWhLUKb0L3NuA6Ujc/J75NhWYq1YxmVhNOtUWCdunuJQ1BNeLlgG/S5X5iBCbZ09S0Jg==", + "dev": true, + "dependencies": { + "chokidar": "3.5.3", + "connect-history-api-fallback": "2.0.0", + "express": "4.19.2", + "http-proxy-middleware": "2.0.6", + "mime-types": "2.1.35", + "webpack-dev-middleware": "6.1.2", + "webpack-dev-server": "4.13.1", + "ws": "8.8.1" + }, + "peerDependencies": { + "@rspack/core": "*" + } + }, + "node_modules/@rspack/dev-server/node_modules/ajv": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", + "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.4.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@rspack/dev-server/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/@rspack/dev-server/node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/@rspack/dev-server/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@rspack/dev-server/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/@rspack/dev-server/node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/@rspack/dev-server/node_modules/webpack-dev-middleware": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-6.1.2.tgz", + "integrity": "sha512-Wu+EHmX326YPYUpQLKmKbTyZZJIB8/n6R09pTmB03kJmnMsVPTo9COzHZFr01txwaCAuZvfBJE4ZCHRcKs5JaQ==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.12", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + } + } + }, + "node_modules/@rspack/dev-server/node_modules/webpack-dev-server": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.13.1.tgz", + "integrity": "sha512-5tWg00bnWbYgkN+pd5yISQKDejRBYGEw15RaEEslH+zdbNDxxaZvEAO2WulaSaFKb5n3YG8JXsGaDsut1D0xdA==", + "dev": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.13.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/@rspack/dev-server/node_modules/webpack-dev-server/node_modules/webpack-dev-middleware": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/@rspack/dev-server/node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@rspack/dev-server/node_modules/ws": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", + "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/@scality/core-ui": { "version": "0.132.0", "resolved": "https://registry.npmjs.org/@scality/core-ui/-/core-ui-0.132.0.tgz", @@ -3587,6 +4526,12 @@ "@sinonjs/commons": "^1.7.0" } }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "dev": true + }, "node_modules/@storybook/channels": { "version": "7.6.17", "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-7.6.17.tgz", @@ -4039,21 +4984,6 @@ "node": ">=12" } }, - "node_modules/@testing-library/dom/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/@testing-library/dom/node_modules/aria-query": { "version": "5.1.3", "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", @@ -4063,61 +4993,6 @@ "deep-equal": "^2.0.5" } }, - "node_modules/@testing-library/dom/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@testing-library/dom/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@testing-library/dom/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@testing-library/dom/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@testing-library/dom/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@testing-library/jest-dom": { "version": "5.17.0", "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.17.0.tgz", @@ -4140,21 +5015,6 @@ "yarn": ">=1" } }, - "node_modules/@testing-library/jest-dom/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/@testing-library/jest-dom/node_modules/chalk": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", @@ -4168,24 +5028,6 @@ "node": ">=8" } }, - "node_modules/@testing-library/jest-dom/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@testing-library/jest-dom/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/@testing-library/jest-dom/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -4276,6 +5118,30 @@ "node": ">= 6" } }, + "node_modules/@tsconfig/node10": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true + }, "node_modules/@types/aria-query": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", @@ -4375,6 +5241,15 @@ "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", "dev": true }, + "node_modules/@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/enzyme": { "version": "3.10.18", "resolved": "https://registry.npmjs.org/@types/enzyme/-/enzyme-3.10.18.tgz", @@ -5548,6 +6423,15 @@ "object-assign": "4.x" } }, + "node_modules/adm-zip": { + "version": "0.5.14", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.14.tgz", + "integrity": "sha512-DnyqqifT4Jrcvb8USYjp6FHtBpEIz1mnXu6pTRHZ0RL69LbQYiO+0lDFg5+OKA7U29oWSs3a/i8fhn8ZcceIWg==", + "dev": true, + "engines": { + "node": ">=12.0" + } + }, "node_modules/agent-base": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", @@ -5644,6 +6528,15 @@ "string-width": "^4.1.0" } }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -5692,16 +6585,25 @@ } }, "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dependencies": { - "color-convert": "^1.9.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -5715,6 +6617,12 @@ "node": ">= 8" } }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -5858,6 +6766,15 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "dev": true }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/attr-accept": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.2.tgz", @@ -5900,6 +6817,31 @@ "node": ">= 10.0.0" } }, + "node_modules/axios": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.2.tgz", + "integrity": "sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/axios/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/babel-eslint": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", @@ -5952,76 +6894,6 @@ "@babel/core": "^7.8.0" } }, - "node_modules/babel-jest/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/babel-jest/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/babel-jest/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/babel-jest/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/babel-jest/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-jest/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/babel-loader": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", @@ -6224,6 +7096,15 @@ } ] }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true, + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, "node_modules/batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", @@ -6403,21 +7284,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/boxen/node_modules/camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", @@ -6430,61 +7296,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/boxen/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/boxen/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/boxen/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/boxen/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -6597,6 +7408,18 @@ "node-int64": "^0.4.0" } }, + "node_modules/btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "dev": true, + "bin": { + "btoa": "bin/btoa.js" + }, + "engines": { + "node": ">= 0.4.0" + } + }, "node_modules/buffer": { "version": "4.9.2", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", @@ -6669,6 +7492,19 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, + "node_modules/cache-content-type": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz", + "integrity": "sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==", + "dev": true, + "dependencies": { + "mime-types": "^2.1.18", + "ylru": "^1.2.0" + }, + "engines": { + "node": ">= 6.0.0" + } + }, "node_modules/cacheable-request": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", @@ -6765,9 +7601,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001588", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001588.tgz", - "integrity": "sha512-+hVY9jE44uKLkH0SrUTqxjxqNTOWHsbnQDIKjwkZ3lNTzUUVdBLBGXtj/q5Mp5u98r3droaZAewQuEDzjQdZlQ==", + "version": "1.0.30001640", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001640.tgz", + "integrity": "sha512-lA4VMpW0PSUrFnkmVuEKBUovSWKhj7puyCg8StBChgu298N1AtuF1sKWEvfDuimSEDbhlb/KqPKC3fs1HbuQUA==", "dev": true, "funding": [ { @@ -6785,16 +7621,40 @@ ] }, "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/char-regex": { @@ -6997,36 +7857,6 @@ "wrap-ansi": "^7.0.0" } }, - "node_modules/cliui/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/cliui/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/cliui/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "node_modules/cliui/node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", @@ -7102,17 +7932,20 @@ "dev": true }, "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { - "color-name": "1.1.3" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/colorette": { "version": "2.0.20", @@ -7360,6 +8193,19 @@ "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", "dev": true }, + "node_modules/cookies": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz", + "integrity": "sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==", + "dev": true, + "dependencies": { + "depd": "~2.0.0", + "keygrip": "~1.1.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/core-js": { "version": "3.36.0", "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.36.0.tgz", @@ -7389,6 +8235,19 @@ "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", "dev": true }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/cosmiconfig": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", @@ -7404,6 +8263,33 @@ "node": ">=10" } }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cron-parser": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/cron-parser/-/cron-parser-4.9.0.tgz", + "integrity": "sha512-p0SaNjrHOnQeR8/VnfGbmg9te2kfyYSQ7Sc/j/6DtPL3JQvKxmjO9TSjNFpujqV3vEYYBvNNvXSxzyksBWAx1Q==", + "dev": true, + "dependencies": { + "luxon": "^3.2.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/cron-parser/node_modules/luxon": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.4.4.tgz", + "integrity": "sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -7837,6 +8723,27 @@ "node": ">=10" } }, + "node_modules/date-format": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", + "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/dayjs": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.6.tgz", + "integrity": "sha512-zZbY5giJAinCG+7AGaw0wIhNZ6J8AhWuSXKvuc1KAyMiRsvGQWqh4L+MomvhdAYjN+lqvVCMq1I41e3YHvXkyQ==", + "dev": true + }, + "node_modules/debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", + "dev": true + }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -7883,6 +8790,18 @@ "integrity": "sha512-yVn6RZmHiGnxRKR9sJb3iVV2XTF1Ghh2DiWRZ3dMnGc43yUdWWF/kX6lQyk3+P84iprfWKU/8zFTrlkvtFm1ug==", "dev": true }, + "node_modules/deep-eql": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.0.tgz", + "integrity": "sha512-4YM7QHOMBoVWqGPnp3OPPK7+WCIhUR2OTpahlNQFiyTH3QEeiu9MtBiTAJBkfny4PNhpFbV/jm3lv0iCfb40MA==", + "dev": true, + "dependencies": { + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/deep-equal": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", @@ -8043,6 +8962,12 @@ "node": ">=0.4.0" } }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -8093,6 +9018,15 @@ "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, "node_modules/diff-sequences": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", @@ -8287,6 +9221,12 @@ "react": ">=16.12.0" } }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true + }, "node_modules/duplexer3": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", @@ -8367,6 +9307,36 @@ "once": "^1.4.0" } }, + "node_modules/engine.io": { + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.5.tgz", + "integrity": "sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==", + "dev": true, + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.17.1" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.2.tgz", + "integrity": "sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/enhanced-resolve": { "version": "5.15.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", @@ -8402,9 +9372,9 @@ } }, "node_modules/envinfo": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.11.1.tgz", - "integrity": "sha512-8PiZgZNIB4q/Lw4AhOvAfB/ityHAd2bli3lESSWmWSzSsl5dKpy5N1d1Rfkd2teq/g9xN90lc6o98DOjMeYHpg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", + "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", "dev": true, "bin": { "envinfo": "dist/cli.js" @@ -8467,6 +9437,12 @@ "is-arrayish": "^0.2.1" } }, + "node_modules/error-inject": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/error-inject/-/error-inject-1.0.0.tgz", + "integrity": "sha512-JM8N6PytDbmIYm1IhPWlo8vr3NtfjhDY/1MhD/a5b/aad/USE8a0+NsqE9d5n+GVGmuNkPQWm4bFQWv18d8tMg==", + "dev": true + }, "node_modules/es-abstract": { "version": "1.22.4", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.4.tgz", @@ -8760,55 +9736,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/eslint/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -8861,27 +9788,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -9051,6 +9957,18 @@ "node": ">= 0.8.0" } }, + "node_modules/exit-hook": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-3.2.0.tgz", + "integrity": "sha512-aIQN7Q04HGAV/I5BszisuHTZHXNoC23WtLkxdCLuYZMdWviRD0TMIt2bnUBi9MrHaF/hH8b3gwG9iaAUHKnJGA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", @@ -9079,17 +9997,17 @@ } }, "node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "dev": true, "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.1", + "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -9120,10 +10038,43 @@ "node": ">= 0.10.0" } }, + "node_modules/express/node_modules/body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "dev": true, + "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" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/express/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/express/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", "dev": true, "engines": { "node": ">= 0.6" @@ -9195,6 +10146,21 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/express/node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/express/node_modules/statuses": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", @@ -9409,6 +10375,15 @@ "node": ">=14.14" } }, + "node_modules/filesize": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-10.1.2.tgz", + "integrity": "sha512-Dx770ai81ohflojxhU+oG+Z2QGvKdYxgEr9OSA8UVrqhwNHjfH9A8f5NKfg83fEH8ZFA5N5llJo5T3PIoZ4CRA==", + "dev": true, + "engines": { + "node": ">= 10.4.0" + } + }, "node_modules/fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -9471,6 +10446,18 @@ "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, + "node_modules/find-file-up": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/find-file-up/-/find-file-up-2.0.1.tgz", + "integrity": "sha512-qVdaUhYO39zmh28/JLQM5CoYN9byEOKEH4qfa8K1eNV17W0UUMJ9WgbR/hHFH+t5rcl+6RTb5UC7ck/I+uRkpQ==", + "dev": true, + "dependencies": { + "resolve-dir": "^1.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/find-node-modules": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/find-node-modules/-/find-node-modules-2.1.3.tgz", @@ -9481,6 +10468,18 @@ "merge": "^2.1.1" } }, + "node_modules/find-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-pkg/-/find-pkg-2.0.0.tgz", + "integrity": "sha512-WgZ+nKbELDa6N3i/9nrHeNznm+lY3z4YfhDDWgW+5P0pdmMj26bxaxU11ookgY3NyP9GC7HvZ9etp0jRFqGEeQ==", + "dev": true, + "dependencies": { + "find-file-up": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/find-root": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", @@ -9547,9 +10546,9 @@ "dev": true }, "node_modules/follow-redirects": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", - "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "dev": true, "funding": [ { @@ -9763,6 +10762,18 @@ "node": ">=8.0.0" } }, + "node_modules/get-port": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", + "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/get-stream": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", @@ -10006,6 +11017,21 @@ "node": ">= 10.x" } }, + "node_modules/gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "dev": true, + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", @@ -10481,6 +11507,50 @@ "entities": "^4.4.0" } }, + "node_modules/http-assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/http-assert/-/http-assert-1.5.0.tgz", + "integrity": "sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==", + "dev": true, + "dependencies": { + "deep-equal": "~1.0.1", + "http-errors": "~1.8.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-assert/node_modules/deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==", + "dev": true + }, + "node_modules/http-assert/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-assert/node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/http-cache-semantics": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", @@ -10766,76 +11836,6 @@ "node": ">=12.0.0" } }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/internal-slot": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", @@ -10867,6 +11867,12 @@ "node": ">=10.13.0" } }, + "node_modules/ip": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.9.tgz", + "integrity": "sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ==", + "dev": true + }, "node_modules/ipaddr.js": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz", @@ -11405,6 +12411,15 @@ "node": ">=0.10.0" } }, + "node_modules/isomorphic-ws": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz", + "integrity": "sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw==", + "dev": true, + "peerDependencies": { + "ws": "*" + } + }, "node_modules/istanbul-lib-coverage": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", @@ -11558,125 +12573,55 @@ }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/jest-changed-files": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-circus/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-circus/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/jest-circus/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-circus/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-circus/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, "node_modules/jest-cli": { @@ -11713,76 +12658,6 @@ } } }, - "node_modules/jest-cli/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-cli/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-cli/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-cli/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-cli/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-cli/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-config": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", @@ -11826,37 +12701,6 @@ } } }, - "node_modules/jest-config/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-config/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, "node_modules/jest-config/node_modules/ci-info": { "version": "3.9.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", @@ -11872,45 +12716,6 @@ "node": ">=8" } }, - "node_modules/jest-config/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-config/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-config/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-diff": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", @@ -11926,76 +12731,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-diff/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-diff/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-diff/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-diff/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-diff/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-diff/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-docblock": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", @@ -12024,76 +12759,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-each/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-each/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-each/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-each/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-each/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-each/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-environment-jsdom": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", @@ -12192,76 +12857,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-jasmine2/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-jasmine2/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-jasmine2/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-jasmine2/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-jasmine2/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-leak-detector": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", @@ -12290,76 +12885,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-matcher-utils/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-matcher-utils/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-matcher-utils/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-matcher-utils/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-matcher-utils/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-matcher-utils/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-message-util": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", @@ -12380,76 +12905,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-message-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-message-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-message-util/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-message-util/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-message-util/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-mock": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", @@ -12498,32 +12953,17 @@ "postcss-import": "^14.1.0", "postcss-load-config": "^4.0.1", "sirv": "^2.0.2", - "slash": "^3.0.0", - "string-hash": "^1.1.3", - "update-notifier": "^5.1.0", - "ws": "^8.5.0" - }, - "bin": { - "jest-preview": "cli/index.js" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/jest-preview" - } - }, - "node_modules/jest-preview/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" + "slash": "^3.0.0", + "string-hash": "^1.1.3", + "update-notifier": "^5.1.0", + "ws": "^8.5.0" }, - "engines": { - "node": ">=8" + "bin": { + "jest-preview": "cli/index.js" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/jest-preview" } }, "node_modules/jest-preview/node_modules/camelcase": { @@ -12538,40 +12978,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-preview/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-preview/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-preview/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/jest-preview/node_modules/commander": { "version": "9.5.0", "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", @@ -12581,27 +12987,6 @@ "node": "^12.20.0 || >=14" } }, - "node_modules/jest-preview/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-preview/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-regex-util": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", @@ -12646,76 +13031,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-resolve/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-resolve/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-resolve/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-resolve/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-resolve/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-resolve/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-runner": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", @@ -12748,76 +13063,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-runner/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-runner/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-runner/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-runner/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-runner/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runner/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-runtime": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", @@ -12851,76 +13096,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-runtime/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-runtime/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-runtime/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-runtime/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-runtime/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runtime/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-serializer": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", @@ -12967,64 +13142,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-snapshot/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-snapshot/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-snapshot/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-snapshot/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-snapshot/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -13052,18 +13169,6 @@ "node": ">=10" } }, - "node_modules/jest-snapshot/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-snapshot/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -13087,37 +13192,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, "node_modules/jest-util/node_modules/ci-info": { "version": "3.9.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", @@ -13133,45 +13207,6 @@ "node": ">=8" } }, - "node_modules/jest-util/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-util/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-util/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-validate": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", @@ -13189,21 +13224,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-validate/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/jest-validate/node_modules/camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", @@ -13216,61 +13236,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-validate/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-validate/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-validate/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-validate/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-validate/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-watcher": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", @@ -13289,76 +13254,6 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-watcher/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-watcher/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-watcher/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-watcher/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-watcher/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-watcher/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-worker": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", @@ -13547,6 +13442,12 @@ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, + "node_modules/json-stream-stringify": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.0.1.tgz", + "integrity": "sha512-vuxs3G1ocFDiAQ/SX0okcZbtqXwgj1g71qE9+vrjJ2EkjKQlEFDAcUNRxRU8O+GekV4v5cM2qXP0Wyt/EMDBiQ==", + "dev": true + }, "node_modules/json-stringify-pretty-compact": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-2.0.0.tgz", @@ -13575,6 +13476,18 @@ "graceful-fs": "^4.1.6" } }, + "node_modules/keygrip": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz", + "integrity": "sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==", + "dev": true, + "dependencies": { + "tsscmp": "1.0.6" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -13602,6 +13515,109 @@ "node": ">=6" } }, + "node_modules/koa": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/koa/-/koa-2.11.0.tgz", + "integrity": "sha512-EpR9dElBTDlaDgyhDMiLkXrPwp6ZqgAIBvhhmxQ9XN4TFgW+gEz6tkcsNI6BnUbUftrKDjVFj4lW2/J2aNBMMA==", + "dev": true, + "dependencies": { + "accepts": "^1.3.5", + "cache-content-type": "^1.0.0", + "content-disposition": "~0.5.2", + "content-type": "^1.0.4", + "cookies": "~0.8.0", + "debug": "~3.1.0", + "delegates": "^1.0.0", + "depd": "^1.1.2", + "destroy": "^1.0.4", + "encodeurl": "^1.0.2", + "error-inject": "^1.0.0", + "escape-html": "^1.0.3", + "fresh": "~0.5.2", + "http-assert": "^1.3.0", + "http-errors": "^1.6.3", + "is-generator-function": "^1.0.7", + "koa-compose": "^4.1.0", + "koa-convert": "^1.2.0", + "on-finished": "^2.3.0", + "only": "~0.0.2", + "parseurl": "^1.3.2", + "statuses": "^1.5.0", + "type-is": "^1.6.16", + "vary": "^1.1.2" + }, + "engines": { + "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" + } + }, + "node_modules/koa-compose": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz", + "integrity": "sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==", + "dev": true + }, + "node_modules/koa-convert": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/koa-convert/-/koa-convert-1.2.0.tgz", + "integrity": "sha512-K9XqjmEDStGX09v3oxR7t5uPRy0jqJdvodHa6wxWTHrTfDq0WUNnYTOOUZN6g8OM8oZQXprQASbiIXG2Ez8ehA==", + "dev": true, + "dependencies": { + "co": "^4.6.0", + "koa-compose": "^3.0.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/koa-convert/node_modules/koa-compose": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-3.2.1.tgz", + "integrity": "sha512-8gen2cvKHIZ35eDEik5WOo8zbVp9t4cP8p4hW4uE55waxolLRexKKrqfCpwhGVppnB40jWeF8bZeTVg99eZgPw==", + "dev": true, + "dependencies": { + "any-promise": "^1.1.0" + } + }, + "node_modules/koa/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/koa/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/koa/node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/koa/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/latest-version": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", @@ -13712,6 +13728,12 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "node_modules/lodash.clonedeepwith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", + "integrity": "sha512-QRBRSxhbtsX1nc0baxSkkK5WlVTTm/s48DSukcGcWZwIyI8Zz+lB+kFiELJXtzfH4Aj6kMWQ1VWW4U5uUDgZMA==", + "dev": true + }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -13768,76 +13790,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/log4js": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz", + "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.5" }, "engines": { - "node": ">=7.0.0" + "node": ">=8.0" } }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/long-timeout": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/long-timeout/-/long-timeout-0.1.1.tgz", + "integrity": "sha512-BFRuQUqc7x2NWxfJBCyUrN8iYUYznzL9JROmRz1gZ6KlOIgmoD+njPVbb+VNn2nGMKggMsK79iUNErillsrx7w==", "dev": true }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -13908,6 +13882,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, "node_modules/makeerror": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", @@ -14285,21 +14265,6 @@ "url": "https://opencollective.com/mswjs" } }, - "node_modules/msw/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/msw/node_modules/chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -14330,24 +14295,6 @@ "node": ">=12" } }, - "node_modules/msw/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/msw/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/msw/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -14585,6 +14532,20 @@ "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, + "node_modules/node-schedule": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/node-schedule/-/node-schedule-2.1.1.tgz", + "integrity": "sha512-OXdegQq03OmXEjt2hZP33W2YPs/E5BcFQks46+G2gAxs4gHOIVD1u7EqlYLYSKsaIpyKCK9Gbk0ta1/gjRSMRQ==", + "dev": true, + "dependencies": { + "cron-parser": "^4.2.0", + "long-timeout": "0.1.1", + "sorted-array-functions": "^1.3.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -14845,6 +14806,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/only": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz", + "integrity": "sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==", + "dev": true + }, "node_modules/open": { "version": "8.4.2", "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", @@ -14862,6 +14829,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "dev": true, + "bin": { + "opener": "bin/opener-bin.js" + } + }, "node_modules/optionator": { "version": "0.9.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", @@ -14902,76 +14878,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ora/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/ora/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/ora/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/ora/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/ora/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ora/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -15169,6 +15075,12 @@ "tslib": "^2.0.3" } }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -15644,6 +15556,12 @@ "node": ">= 0.10" } }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, "node_modules/psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", @@ -15743,6 +15661,12 @@ "integrity": "sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==", "dev": true }, + "node_modules/rambda": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/rambda/-/rambda-9.2.1.tgz", + "integrity": "sha512-6Dp+QQVQuAuhwBlbIvL2FjJVHCKF29W+n9ca/BMTVDqpj+Q7KKqUh7UAINEna8aaB2/oRvPuL5hViCTQARa70Q==", + "dev": true + }, "node_modules/ramda": { "version": "0.29.0", "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.29.0.tgz", @@ -16735,6 +16659,12 @@ "node": ">=0.10.0" } }, + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "dev": true + }, "node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -16754,6 +16684,15 @@ "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, + "node_modules/rslog": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/rslog/-/rslog-1.2.2.tgz", + "integrity": "sha512-tZP8KjrI1nz6qOYCrFxAV7cfmfS2GV94jotU2zOmF/6ByO1zNvGR6/+0inylpjqyBjAdnnutTUW0m4th06bSTw==", + "dev": true, + "engines": { + "node": ">=14.17.6" + } + }, "node_modules/rst-selector-parser": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz", @@ -17270,6 +17209,47 @@ "node": ">=8" } }, + "node_modules/socket.io": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.2.tgz", + "integrity": "sha512-bvKVS29/I5fl2FGLNHuXlQaUH/BlzX1IN6S+NKLNZpBsPZIDH+90eQmCs2Railn4YUiww4SzUedJ6+uzwFnKLw==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.5.2", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", + "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", + "dev": true, + "dependencies": { + "debug": "~4.3.4", + "ws": "~8.17.1" + } + }, + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "dev": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/sockjs": { "version": "0.3.24", "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", @@ -17290,6 +17270,12 @@ "uuid": "dist/bin/uuid" } }, + "node_modules/sorted-array-functions": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sorted-array-functions/-/sorted-array-functions-1.3.0.tgz", + "integrity": "sha512-2sqgzeFlid6N4Z2fUQ1cvFmTOLRi/sEDzSQ0OKYchqgoPmQBVyM3959qYx3fpS6Esef80KjmpgPeEr028dP3OA==", + "dev": true + }, "node_modules/source-list-map": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", @@ -17410,6 +17396,52 @@ "node": ">= 0.4" } }, + "node_modules/streamroller": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", + "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==", + "dev": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/streamroller/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/streamroller/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/streamroller/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/strict-event-emitter": { "version": "0.2.8", "resolved": "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.2.8.tgz", @@ -18089,11 +18121,75 @@ "node": ">=6.10" } }, + "node_modules/ts-node": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", + "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/ts-node/node_modules/acorn-walk": { + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", + "dev": true, + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/tslib": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, + "node_modules/tsscmp": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", + "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==", + "dev": true, + "engines": { + "node": ">=0.6.x" + } + }, "node_modules/tsutils": { "version": "3.21.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", @@ -18371,6 +18467,16 @@ "node": ">= 0.8" } }, + "node_modules/upath": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", + "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==", + "dev": true, + "engines": { + "node": ">=4", + "yarn": "*" + } + }, "node_modules/update-browserslist-db": { "version": "1.0.13", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", @@ -18435,64 +18541,6 @@ "url": "https://github.com/yeoman/update-notifier?sponsor=1" } }, - "node_modules/update-notifier/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/update-notifier/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/update-notifier/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/update-notifier/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/update-notifier/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/update-notifier/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -18520,18 +18568,6 @@ "node": ">=10" } }, - "node_modules/update-notifier/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/update-notifier/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -18682,6 +18718,12 @@ "uuid": "dist/bin/uuid" } }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, "node_modules/v8-to-istanbul": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", @@ -19301,6 +19343,92 @@ } } }, + "node_modules/webpack-bundle-analyzer": { + "version": "4.10.2", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz", + "integrity": "sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==", + "dev": true, + "dependencies": { + "@discoveryjs/json-ext": "0.5.7", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "commander": "^7.2.0", + "debounce": "^1.2.1", + "escape-string-regexp": "^4.0.0", + "gzip-size": "^6.0.0", + "html-escaper": "^2.0.2", + "opener": "^1.5.2", + "picocolors": "^1.0.0", + "sirv": "^2.0.3", + "ws": "^7.3.1" + }, + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/acorn-walk": { + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", + "dev": true, + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "dev": true + }, + "node_modules/webpack-bundle-analyzer/node_modules/ws": { + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/webpack-cli": { "version": "5.1.4", "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", @@ -19765,39 +19893,6 @@ "node": ">=8" } }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -19816,9 +19911,9 @@ } }, "node_modules/ws": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", - "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "dev": true, "engines": { "node": ">=10.0.0" @@ -19924,6 +20019,24 @@ "node": ">=10" } }, + "node_modules/ylru": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ylru/-/ylru-1.4.0.tgz", + "integrity": "sha512-2OQsPNEmBCvXuFlIni/a+Rn+R2pHW9INm0BxXJ4hVDA8TirqMj+J/Rp9ItLatT/5pZqWwefVrTQcHpixsxnVlA==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", @@ -19972,12 +20085,19 @@ } }, "@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "requires": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + }, + "dependencies": { + "picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" + } } }, "@babel/compat-data": { @@ -20211,9 +20331,9 @@ "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==" }, "@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==" + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==" }, "@babel/helper-validator-option": { "version": "7.23.5", @@ -20244,13 +20364,52 @@ } }, "@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "requires": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.7", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" + } } }, "@babel/parser": { @@ -21213,6 +21372,27 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, + "@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "dependencies": { + "@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + } + } + }, "@discoveryjs/json-ext": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", @@ -21661,57 +21841,6 @@ "jest-message-util": "^27.5.1", "jest-util": "^27.5.1", "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "@jest/core": { @@ -21748,57 +21877,6 @@ "rimraf": "^3.0.0", "slash": "^3.0.0", "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "@jest/environment": { @@ -21869,57 +21947,6 @@ "string-length": "^4.0.1", "terminal-link": "^2.0.0", "v8-to-istanbul": "^8.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "@jest/source-map": { @@ -21980,60 +22007,11 @@ "write-file-atomic": "^3.0.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "convert-source-map": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } } } }, @@ -22048,57 +22026,6 @@ "@types/node": "*", "@types/yargs": "^16.0.0", "chalk": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "@jridgewell/gen-mapping": { @@ -22160,6 +22087,233 @@ "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", "dev": true }, + "@module-federation/bridge-react-webpack-plugin": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/bridge-react-webpack-plugin/-/bridge-react-webpack-plugin-0.2.3.tgz", + "integrity": "sha512-RpFoo25kMaGkQpbwOhcYuF9cDNdo7FTFm6LceBbje8CkVaX8ekR9foXvKYoykbmCi/SbLw0WcXnq7/5y0UZ4nQ==", + "dev": true, + "requires": { + "@module-federation/sdk": "0.2.3" + } + }, + "@module-federation/dts-plugin": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/dts-plugin/-/dts-plugin-0.2.3.tgz", + "integrity": "sha512-8QWWdspNNmGuCqiyGf1UiFxIt99TDFoajnK52IiJXnC6DsTjb2lHvHcw01NTJUwmfvxWUbwUjcGPSGeta3861Q==", + "dev": true, + "requires": { + "@module-federation/managers": "0.2.3", + "@module-federation/sdk": "0.2.3", + "@module-federation/third-party-dts-extractor": "0.2.3", + "adm-zip": "^0.5.10", + "ansi-colors": "^4.1.3", + "axios": "^1.6.7", + "chalk": "3.0.0", + "fs-extra": "9.1.0", + "isomorphic-ws": "5.0.0", + "koa": "2.11.0", + "lodash.clonedeepwith": "4.5.0", + "log4js": "6.9.1", + "node-schedule": "2.1.1", + "rambda": "^9.1.0", + "ws": "8.17.1" + }, + "dependencies": { + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@module-federation/enhanced": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/enhanced/-/enhanced-0.2.3.tgz", + "integrity": "sha512-OHHR0BtNidz82K38MrNxZsKgFP6DNFfVZQmdJhMIrfIjURAbWw3zG1FOywdTZ3+Nic9FS3f65ttha6x9Cv4SpA==", + "dev": true, + "requires": { + "@module-federation/bridge-react-webpack-plugin": "0.2.3", + "@module-federation/dts-plugin": "0.2.3", + "@module-federation/managers": "0.2.3", + "@module-federation/manifest": "0.2.3", + "@module-federation/rspack": "0.2.3", + "@module-federation/runtime-tools": "0.2.3", + "@module-federation/sdk": "0.2.3", + "btoa": "^1.2.1", + "upath": "2.0.1" + } + }, + "@module-federation/managers": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/managers/-/managers-0.2.3.tgz", + "integrity": "sha512-GqNMkUiK4GbAu3emrwVPtP8BzG4lCX+O9kMUUw6LQ8ZDhjOCr+McvDOSgvWLZ89aB+rLPRtnz3fOT6pdUAa+oA==", + "dev": true, + "requires": { + "@module-federation/sdk": "0.2.3", + "find-pkg": "2.0.0", + "fs-extra": "9.1.0" + }, + "dependencies": { + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@module-federation/manifest": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/manifest/-/manifest-0.2.3.tgz", + "integrity": "sha512-TFrjNhsMkSOE4TADJt6kOaKfQ4uugQg4kFlocjAnxN5JHj5rTo/r9lSxtWeoeS2GMli9ifTFgECndmShpz3QcQ==", + "dev": true, + "requires": { + "@module-federation/dts-plugin": "0.2.3", + "@module-federation/managers": "0.2.3", + "@module-federation/sdk": "0.2.3", + "chalk": "3.0.0", + "find-pkg": "2.0.0" + }, + "dependencies": { + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@module-federation/rspack": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/rspack/-/rspack-0.2.3.tgz", + "integrity": "sha512-9n9SHiJvFOV/GHuLEF2xWwyg6SGsLu5g/onulpJ2dpkY57ZLPDRprEKoBsOZfz+dp/PWBUOt0YxHcl934hcF8Q==", + "dev": true, + "requires": { + "@module-federation/bridge-react-webpack-plugin": "0.2.3", + "@module-federation/dts-plugin": "0.2.3", + "@module-federation/managers": "0.2.3", + "@module-federation/manifest": "0.2.3", + "@module-federation/runtime-tools": "0.2.3", + "@module-federation/sdk": "0.2.3" + } + }, + "@module-federation/runtime": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/runtime/-/runtime-0.2.3.tgz", + "integrity": "sha512-N+ZxBUb1mkmfO9XT1BwgYQgShtUTlijHbukqQ4afFka5lRAT+ayC7RKfHJLz0HbuexKPCmPBDfdmCnErR5WyTQ==", + "dev": true, + "requires": { + "@module-federation/sdk": "0.2.3" + } + }, + "@module-federation/runtime-tools": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-tools/-/runtime-tools-0.2.3.tgz", + "integrity": "sha512-capN8CVTCEqNAjnl102girrkevczoQfnQYyiYC4WuyKsg7+LUqfirIe1Eiyv6VSE2UgvOTZDnqvervA6rBOlmg==", + "dev": true, + "requires": { + "@module-federation/runtime": "0.2.3", + "@module-federation/webpack-bundler-runtime": "0.2.3" + } + }, + "@module-federation/sdk": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/sdk/-/sdk-0.2.3.tgz", + "integrity": "sha512-W9zrPchLocyCBc/B8CW21akcfJXLl++9xBe1L1EtgxZGfj/xwHt0GcBWE/y+QGvYTL2a1iZjwscbftbUhxgxXg==", + "dev": true + }, + "@module-federation/third-party-dts-extractor": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/third-party-dts-extractor/-/third-party-dts-extractor-0.2.3.tgz", + "integrity": "sha512-/J1KIOYT071MBHE78JaZR+rngpOFOv/16MLIc5Qg4ckl1HdojLa4nZ+o2N6atRGDE2nX6hJFFTCeGXkBC7TQhg==", + "dev": true, + "requires": { + "find-pkg": "2.0.0", + "fs-extra": "9.1.0", + "resolve": "1.22.8" + }, + "dependencies": { + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@module-federation/webpack-bundler-runtime": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.2.3.tgz", + "integrity": "sha512-L/jt2uJ+8dwYiyn9GxryzDR6tr/Wk8rpgvelM2EBeLIhu7YxCHSmSjQYhw3BTux9zZIr47d1K9fGjBFsVRd/SQ==", + "dev": true, + "requires": { + "@module-federation/runtime": "0.2.3", + "@module-federation/sdk": "0.2.3" + } + }, "@monaco-editor/loader": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.4.0.tgz", @@ -22284,6 +22438,682 @@ "integrity": "sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==", "dev": true }, + "@rsdoctor/client": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/client/-/client-0.3.6.tgz", + "integrity": "sha512-5uNdoyrwYvZDlxG3ihdh+3Q0eL4W+T3OOHfPylZwYuF4PaEaay2c97KR6FomfyJGlh+nqL1735aFyoKe3yPz4g==", + "dev": true + }, + "@rsdoctor/core": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/core/-/core-0.3.6.tgz", + "integrity": "sha512-e9BhwC5oBE2BikZ9saYi5KTlvuXefBd3jJMHSS4LeXAeezHyiQ148qVuU2k2B5PqVurmm51AMx9Z+ekQtH4DSA==", + "dev": true, + "requires": { + "@rsdoctor/graph": "0.3.6", + "@rsdoctor/sdk": "0.3.6", + "@rsdoctor/types": "0.3.6", + "@rsdoctor/utils": "0.3.6", + "axios": "^1.7.2", + "enhanced-resolve": "5.12.0", + "filesize": "^10.1.2", + "fs-extra": "^11.1.1", + "loader-utils": "^2.0.4", + "lodash": "^4.17.21", + "path-browserify": "1.0.1", + "semver": "^7.5.4", + "source-map": "^0.7.4", + "webpack-bundle-analyzer": "^4.9.1", + "webpack-sources": "^3.2.3" + }, + "dependencies": { + "enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + } + }, + "semver": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "dev": true + }, + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true + }, + "webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true + } + } + }, + "@rsdoctor/graph": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/graph/-/graph-0.3.6.tgz", + "integrity": "sha512-h9wDjbZpw+ywHTetrCl3qz5Qz1DtE5c4zFNg9MwlzbujhhrxBEFkQqGWNRS6afFfecmDl/PcF6v9yfjlpLzqww==", + "dev": true, + "requires": { + "@rsdoctor/types": "0.3.6", + "@rsdoctor/utils": "0.3.6", + "lodash": "^4.17.21", + "socket.io": "4.7.2", + "source-map": "^0.7.4" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + } + } + }, + "@rsdoctor/rspack-plugin": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/rspack-plugin/-/rspack-plugin-0.3.6.tgz", + "integrity": "sha512-ubXMFFiwnmCDiopOsE9Enk8n30WcRUDle+ZagnkpQz6MCvEnVKQSZZO91Q7E+E0g1FABEc4ramCmyeI9KA0BGw==", + "dev": true, + "requires": { + "@rsdoctor/core": "0.3.6", + "@rsdoctor/graph": "0.3.6", + "@rsdoctor/sdk": "0.3.6", + "@rsdoctor/types": "0.3.6", + "@rsdoctor/utils": "0.3.6", + "loader-utils": "^2.0.4", + "lodash": "^4.17.21" + } + }, + "@rsdoctor/sdk": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/sdk/-/sdk-0.3.6.tgz", + "integrity": "sha512-42Ztxhy4vhNYFOx8mbz7RkKhXINaTptLcBTxrGn1/mNYToPozZ/K6Ea2o71LcF/Uj9pewrHMYBK01isH4mDeXg==", + "dev": true, + "requires": { + "@rsdoctor/client": "0.3.6", + "@rsdoctor/graph": "0.3.6", + "@rsdoctor/types": "0.3.6", + "@rsdoctor/utils": "0.3.6", + "body-parser": "1.20.1", + "cors": "2.8.5", + "dayjs": "1.11.6", + "ip": "1.1.9", + "lodash": "^4.17.21", + "open": "^8.4.0", + "serve-static": "1.15.0", + "socket.io": "4.7.2", + "source-map": "^0.7.4", + "tapable": "2.2.1" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true + } + } + }, + "@rsdoctor/types": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/types/-/types-0.3.6.tgz", + "integrity": "sha512-7VxCVlKeyPvZ446gtbci878U2vAghhLRmETM9OTaDH5kXwnrjWFH6pbJzyr9a27EeCmUlzMu8Usb7N48koMpqg==", + "dev": true, + "requires": { + "@types/connect": "3.4.35", + "@types/estree": "1.0.0", + "@types/tapable": "2.2.2", + "@types/webpack": "5.28.0", + "source-map": "^0.7.4" + }, + "dependencies": { + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/estree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", + "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", + "dev": true + }, + "@types/tapable": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-2.2.2.tgz", + "integrity": "sha512-ujqOVJEeLcwpDVJPnp/k3u1UXmTKq5urJq9fO8aUKg8Vlel5RNOFbVKEfqfh6wGfF/M+HiTJlBJMLC1aDfyf0Q==", + "dev": true, + "requires": { + "tapable": "^2.2.0" + } + }, + "@types/webpack": { + "version": "5.28.0", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-5.28.0.tgz", + "integrity": "sha512-8cP0CzcxUiFuA9xGJkfeVpqmWTk9nx6CWwamRGCj95ph1SmlRRk9KlCZ6avhCbZd4L68LvYT6l1kpdEnQXrF8w==", + "dev": true, + "requires": { + "@types/node": "*", + "tapable": "^2.2.0", + "webpack": "^5" + } + }, + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true + } + } + }, + "@rsdoctor/utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@rsdoctor/utils/-/utils-0.3.6.tgz", + "integrity": "sha512-8JfRHJFTvWPiUd90B3fwmYnRHrhcdat1U/MK+42JcDn7oYeLXHPZLyZxspNhbfGevLGVxe6pbpJkMFpARq/JNA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.24.2", + "@rsdoctor/types": "0.3.6", + "@types/estree": "1.0.0", + "acorn": "^8.10.0", + "acorn-import-assertions": "1.9.0", + "acorn-walk": "8.3.2", + "chalk": "^4.1.2", + "connect": "3.7.0", + "deep-eql": "4.1.0", + "envinfo": "7.13.0", + "filesize": "^10.1.2", + "fs-extra": "^11.1.1", + "get-port": "5.1.1", + "json-stream-stringify": "3.0.1", + "lines-and-columns": "2.0.4", + "lodash": "^4.17.21", + "rslog": "^1.2.0", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "@types/estree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", + "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", + "dev": true + }, + "acorn-walk": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "dev": true + }, + "lines-and-columns": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz", + "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", + "dev": true + } + } + }, + "@rspack/binding": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding/-/binding-0.7.5.tgz", + "integrity": "sha512-XcdOvaCz1mWWwr5vmEY9zncdInrjINEh60EWkYdqtCA67v7X7rB1fe6n4BeAI1+YLS2Eacj+lytlr+n7I+DYVg==", + "dev": true, + "requires": { + "@rspack/binding-darwin-arm64": "0.7.5", + "@rspack/binding-darwin-x64": "0.7.5", + "@rspack/binding-linux-arm64-gnu": "0.7.5", + "@rspack/binding-linux-arm64-musl": "0.7.5", + "@rspack/binding-linux-x64-gnu": "0.7.5", + "@rspack/binding-linux-x64-musl": "0.7.5", + "@rspack/binding-win32-arm64-msvc": "0.7.5", + "@rspack/binding-win32-ia32-msvc": "0.7.5", + "@rspack/binding-win32-x64-msvc": "0.7.5" + } + }, + "@rspack/binding-darwin-arm64": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-arm64/-/binding-darwin-arm64-0.7.5.tgz", + "integrity": "sha512-mNBIm36s1BA7v4SL/r4f3IXIsjyH5CZX4eXMRPE52lBc3ClVuUB7d/8zk8dkyjJCMAj8PsZSnAJ3cfXnn7TN4g==", + "dev": true, + "optional": true + }, + "@rspack/binding-darwin-x64": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-x64/-/binding-darwin-x64-0.7.5.tgz", + "integrity": "sha512-teLK0TB1x0CsvaaiCopsFx4EvJe+/Hljwii6R7C9qOZs5zSOfbT/LQ202eA0sAGodCncARCGaXVrsekbrRYqeA==", + "dev": true, + "optional": true + }, + "@rspack/binding-linux-arm64-gnu": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.7.5.tgz", + "integrity": "sha512-/24UytJXrK+7CsucDb30GCKYIJ8nG6ceqbJyOtsJv9zeArNLHkxrYGSyjHJIpQfwVN17BPP4RNOi+yIZ3ZgDyA==", + "dev": true, + "optional": true + }, + "@rspack/binding-linux-arm64-musl": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.7.5.tgz", + "integrity": "sha512-6RcxG42mLM01Pa6UYycACu/Nu9qusghAPUJumb8b8x5TRIDEtklYC5Ck6Rmagm+8E0ucMude2E/D4rMdIFcS3A==", + "dev": true, + "optional": true + }, + "@rspack/binding-linux-x64-gnu": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.7.5.tgz", + "integrity": "sha512-R0Lu4CJN2nWMW7WzPBuCIju80cQPpcaqwKJDj/quwQySpJJZ6c5qGwB8mntqjxIzZDrNH6u0OkpiUTbvWZj8ww==", + "dev": true, + "optional": true + }, + "@rspack/binding-linux-x64-musl": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-musl/-/binding-linux-x64-musl-0.7.5.tgz", + "integrity": "sha512-dDgi/ThikMy1m4llxPeEXDCA2I8F8ezFS/eCPLZGU2/J1b4ALwDjuRsMmo+VXSlFCKgIt98V6h1woeg7nu96yg==", + "dev": true, + "optional": true + }, + "@rspack/binding-win32-arm64-msvc": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.7.5.tgz", + "integrity": "sha512-nEF4cUdLfgEK6FrgJSJhUlr2/7LY1tmqBNQCFsCjtDtUkQbJIEo1b8edT94G9tJcQoFE4cD+Re30yBYbQO2Thg==", + "dev": true, + "optional": true + }, + "@rspack/binding-win32-ia32-msvc": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.7.5.tgz", + "integrity": "sha512-hEcHRwJIzpZsePr+5x6V/7TGhrPXhSZYG4sIhsrem1za9W+qqCYYLZ7KzzbRODU07QaAH2RxjcA1bf8F2QDYAQ==", + "dev": true, + "optional": true + }, + "@rspack/binding-win32-x64-msvc": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.7.5.tgz", + "integrity": "sha512-PpVpP6J5/2b4T10hzSUwjLvmdpAOj3ozARl1Nrf/lsbYwhiXivoB8Gvoy/xe/Xpgr732Dk9VCeeW8rreWOOUVQ==", + "dev": true, + "optional": true + }, + "@rspack/cli": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/cli/-/cli-0.7.5.tgz", + "integrity": "sha512-3Lp1RSyTRzBUi232hjRmF6wLHaMJXXMJIlX5dR662HwfCRwgm+q/Nz3829/UbjHXI2aGN4fFBgNI+LJU1TOZVQ==", + "dev": true, + "requires": { + "@discoveryjs/json-ext": "^0.5.7", + "@rspack/dev-server": "0.7.5", + "colorette": "2.0.19", + "exit-hook": "^3.2.0", + "interpret": "^3.1.1", + "rechoir": "^0.8.0", + "semver": "6.3.1", + "webpack-bundle-analyzer": "4.6.1", + "yargs": "17.6.2" + }, + "dependencies": { + "acorn-walk": { + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", + "dev": true, + "requires": { + "acorn": "^8.11.0" + } + }, + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "dev": true + }, + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true + }, + "mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "dev": true + }, + "sirv": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", + "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", + "dev": true, + "requires": { + "@polka/url": "^1.0.0-next.20", + "mrmime": "^1.0.0", + "totalist": "^1.0.0" + } + }, + "totalist": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", + "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", + "dev": true + }, + "webpack-bundle-analyzer": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.6.1.tgz", + "integrity": "sha512-oKz9Oz9j3rUciLNfpGFjOb49/jEpXNmWdVH8Ls//zNcnLlQdTGXQQMsBbb/gR7Zl8WNLxVCq+0Hqbx3zv6twBw==", + "dev": true, + "requires": { + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "chalk": "^4.1.0", + "commander": "^7.2.0", + "gzip-size": "^6.0.0", + "lodash": "^4.17.20", + "opener": "^1.5.2", + "sirv": "^1.0.7", + "ws": "^7.3.1" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "ws": { + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "dev": true + }, + "yargs": { + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "dev": true, + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true + } + } + }, + "@rspack/core": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/core/-/core-0.7.5.tgz", + "integrity": "sha512-zVTe4WCyc3qsLPattosiDYZFeOzaJ32/BYukPP2I1VJtCVFa+PxGVRPVZhSoN6fXw5oy48yHg9W9v1T8CaEFhw==", + "dev": true, + "requires": { + "@module-federation/runtime-tools": "0.1.6", + "@rspack/binding": "0.7.5", + "caniuse-lite": "^1.0.30001616", + "tapable": "2.2.1", + "webpack-sources": "3.2.3" + }, + "dependencies": { + "@module-federation/runtime": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@module-federation/runtime/-/runtime-0.1.6.tgz", + "integrity": "sha512-nj6a+yJ+QxmcE89qmrTl4lphBIoAds0PFPVGnqLRWflwAP88jrCcrrTqRhARegkFDL+wE9AE04+h6jzlbIfMKg==", + "dev": true, + "requires": { + "@module-federation/sdk": "0.1.6" + } + }, + "@module-federation/runtime-tools": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-tools/-/runtime-tools-0.1.6.tgz", + "integrity": "sha512-7ILVnzMIa0Dlc0Blck5tVZG1tnk1MmLnuZpLOMpbdW+zl+N6wdMjjHMjEZFCUAJh2E5XJ3BREwfX8Ets0nIkLg==", + "dev": true, + "requires": { + "@module-federation/runtime": "0.1.6", + "@module-federation/webpack-bundler-runtime": "0.1.6" + } + }, + "@module-federation/sdk": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@module-federation/sdk/-/sdk-0.1.6.tgz", + "integrity": "sha512-qifXpyYLM7abUeEOIfv0oTkguZgRZuwh89YOAYIZJlkP6QbRG7DJMQvtM8X2yHXm9PTk0IYNnOJH0vNQCo6auQ==", + "dev": true + }, + "@module-federation/webpack-bundler-runtime": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.1.6.tgz", + "integrity": "sha512-K5WhKZ4RVNaMEtfHsd/9CNCgGKB0ipbm/tgweNNeC11mEuBTNxJ09Y630vg3WPkKv9vfMCuXg2p2Dk+Q/KWTSA==", + "dev": true, + "requires": { + "@module-federation/runtime": "0.1.6", + "@module-federation/sdk": "0.1.6" + } + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true + }, + "webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true + } + } + }, + "@rspack/dev-server": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@rspack/dev-server/-/dev-server-0.7.5.tgz", + "integrity": "sha512-jDXfccjlHMXOxOK++uxWhLUKb0L3NuA6Ujc/J75NhWYq1YxmVhNOtUWCdunuJQ1BNeLlgG/S5X5iBCbZ09S0Jg==", + "dev": true, + "requires": { + "chokidar": "3.5.3", + "connect-history-api-fallback": "2.0.0", + "express": "4.19.2", + "http-proxy-middleware": "2.0.6", + "mime-types": "2.1.35", + "webpack-dev-middleware": "6.1.2", + "webpack-dev-server": "4.13.1", + "ws": "8.8.1" + }, + "dependencies": { + "ajv": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", + "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.4.1" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + } + }, + "webpack-dev-middleware": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-6.1.2.tgz", + "integrity": "sha512-Wu+EHmX326YPYUpQLKmKbTyZZJIB8/n6R09pTmB03kJmnMsVPTo9COzHZFr01txwaCAuZvfBJE4ZCHRcKs5JaQ==", + "dev": true, + "requires": { + "colorette": "^2.0.10", + "memfs": "^3.4.12", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + } + }, + "webpack-dev-server": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.13.1.tgz", + "integrity": "sha512-5tWg00bnWbYgkN+pd5yISQKDejRBYGEw15RaEEslH+zdbNDxxaZvEAO2WulaSaFKb5n3YG8JXsGaDsut1D0xdA==", + "dev": true, + "requires": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.13.0" + }, + "dependencies": { + "webpack-dev-middleware": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", + "dev": true, + "requires": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + } + }, + "ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "dev": true + } + } + }, + "ws": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", + "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", + "dev": true + } + } + }, "@scality/core-ui": { "version": "0.132.0", "resolved": "https://registry.npmjs.org/@scality/core-ui/-/core-ui-0.132.0.tgz", @@ -22428,7 +23258,7 @@ }, "@scality/module-federation": { "version": "git+ssh://git@github.com/scality/module-federation.git#fcced6f064ecd8f152daf5137113d8fd38648ef6", - "from": "@scality/module-federation@github:scality/module-federation#1.1.0", + "from": "@scality/module-federation@github:scality/module-federation#1.3.1", "requires": { "@scality/core-ui": "github:scality/core-ui.git#v0.39.3", "polished": "^4.1.3", @@ -22489,6 +23319,12 @@ "@sinonjs/commons": "^1.7.0" } }, + "@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "dev": true + }, "@storybook/channels": { "version": "7.6.17", "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-7.6.17.tgz", @@ -22797,15 +23633,6 @@ "pretty-format": "^27.0.2" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, "aria-query": { "version": "5.1.3", "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", @@ -22814,46 +23641,6 @@ "requires": { "deep-equal": "^2.0.5" } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } } } }, @@ -22874,15 +23661,6 @@ "redent": "^3.0.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, "chalk": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", @@ -22893,21 +23671,6 @@ "supports-color": "^7.1.0" } }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -22961,6 +23724,30 @@ "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true }, + "@tsconfig/node10": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "dev": true + }, + "@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true + }, "@types/aria-query": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", @@ -23060,6 +23847,15 @@ "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", "dev": true }, + "@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/enzyme": { "version": "3.10.18", "resolved": "https://registry.npmjs.org/@types/enzyme/-/enzyme-3.10.18.tgz", @@ -24054,6 +24850,12 @@ "object-assign": "4.x" } }, + "adm-zip": { + "version": "0.5.14", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.14.tgz", + "integrity": "sha512-DnyqqifT4Jrcvb8USYjp6FHtBpEIz1mnXu6pTRHZ0RL69LbQYiO+0lDFg5+OKA7U29oWSs3a/i8fhn8ZcceIWg==", + "dev": true + }, "agent-base": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", @@ -24127,6 +24929,12 @@ "string-width": "^4.1.0" } }, + "ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true + }, "ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -24156,13 +24964,19 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "requires": { - "color-convert": "^1.9.0" + "color-convert": "^2.0.1" } }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, "anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -24173,6 +24987,12 @@ "picomatch": "^2.0.4" } }, + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, "argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -24280,6 +25100,12 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "dev": true }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true + }, "attr-accept": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.2.tgz", @@ -24310,6 +25136,30 @@ "xml2js": "0.6.2" } }, + "axios": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.2.tgz", + "integrity": "sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==", + "dev": true, + "requires": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + }, + "dependencies": { + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + } + } + }, "babel-eslint": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", @@ -24346,57 +25196,6 @@ "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "babel-loader": { @@ -24549,6 +25348,12 @@ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" }, + "base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true + }, "batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", @@ -24687,61 +25492,12 @@ "wrap-ansi": "^7.0.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, "camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -24821,6 +25577,12 @@ "node-int64": "^0.4.0" } }, + "btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "dev": true + }, "buffer": { "version": "4.9.2", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", @@ -24886,6 +25648,16 @@ } } }, + "cache-content-type": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz", + "integrity": "sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==", + "dev": true, + "requires": { + "mime-types": "^2.1.18", + "ylru": "^1.2.0" + } + }, "cacheable-request": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", @@ -24963,19 +25735,36 @@ "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==" }, "caniuse-lite": { - "version": "1.0.30001588", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001588.tgz", - "integrity": "sha512-+hVY9jE44uKLkH0SrUTqxjxqNTOWHsbnQDIKjwkZ3lNTzUUVdBLBGXtj/q5Mp5u98r3droaZAewQuEDzjQdZlQ==", + "version": "1.0.30001640", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001640.tgz", + "integrity": "sha512-lA4VMpW0PSUrFnkmVuEKBUovSWKhj7puyCg8StBChgu298N1AtuF1sKWEvfDuimSEDbhlb/KqPKC3fs1HbuQUA==", "dev": true }, "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } } }, "char-regex": { @@ -25127,27 +25916,6 @@ "wrap-ansi": "^7.0.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", @@ -25203,17 +25971,17 @@ "dev": true }, "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "requires": { - "color-name": "1.1.3" + "color-name": "~1.1.4" } }, "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "colorette": { "version": "2.0.20", @@ -25420,6 +26188,16 @@ "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", "dev": true }, + "cookies": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz", + "integrity": "sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==", + "dev": true, + "requires": { + "depd": "~2.0.0", + "keygrip": "~1.1.0" + } + }, "core-js": { "version": "3.36.0", "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.36.0.tgz", @@ -25440,6 +26218,16 @@ "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", "dev": true }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, "cosmiconfig": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", @@ -25452,6 +26240,29 @@ "yaml": "^1.10.0" } }, + "create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "cron-parser": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/cron-parser/-/cron-parser-4.9.0.tgz", + "integrity": "sha512-p0SaNjrHOnQeR8/VnfGbmg9te2kfyYSQ7Sc/j/6DtPL3JQvKxmjO9TSjNFpujqV3vEYYBvNNvXSxzyksBWAx1Q==", + "dev": true, + "requires": { + "luxon": "^3.2.1" + }, + "dependencies": { + "luxon": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.4.4.tgz", + "integrity": "sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==", + "dev": true + } + } + }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -25766,6 +26577,24 @@ "whatwg-url": "^8.0.0" } }, + "date-format": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", + "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", + "dev": true + }, + "dayjs": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.6.tgz", + "integrity": "sha512-zZbY5giJAinCG+7AGaw0wIhNZ6J8AhWuSXKvuc1KAyMiRsvGQWqh4L+MomvhdAYjN+lqvVCMq1I41e3YHvXkyQ==", + "dev": true + }, + "debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", + "dev": true + }, "debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -25801,6 +26630,15 @@ "integrity": "sha512-yVn6RZmHiGnxRKR9sJb3iVV2XTF1Ghh2DiWRZ3dMnGc43yUdWWF/kX6lQyk3+P84iprfWKU/8zFTrlkvtFm1ug==", "dev": true }, + "deep-eql": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.0.tgz", + "integrity": "sha512-4YM7QHOMBoVWqGPnp3OPPK7+WCIhUR2OTpahlNQFiyTH3QEeiu9MtBiTAJBkfny4PNhpFbV/jm3lv0iCfb40MA==", + "dev": true, + "requires": { + "type-detect": "^4.0.0" + } + }, "deep-equal": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", @@ -25926,6 +26764,12 @@ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "dev": true }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, "depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -25960,6 +26804,12 @@ "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true + }, "diff-sequences": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", @@ -26113,6 +26963,12 @@ "tslib": "^2.3.0" } }, + "duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true + }, "duplexer3": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", @@ -26180,6 +27036,30 @@ "once": "^1.4.0" } }, + "engine.io": { + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.5.tgz", + "integrity": "sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==", + "dev": true, + "requires": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.17.1" + } + }, + "engine.io-parser": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.2.tgz", + "integrity": "sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==", + "dev": true + }, "enhanced-resolve": { "version": "5.15.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", @@ -26205,9 +27085,9 @@ "dev": true }, "envinfo": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.11.1.tgz", - "integrity": "sha512-8PiZgZNIB4q/Lw4AhOvAfB/ityHAd2bli3lESSWmWSzSsl5dKpy5N1d1Rfkd2teq/g9xN90lc6o98DOjMeYHpg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", + "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", "dev": true }, "enzyme": { @@ -26258,6 +27138,12 @@ "is-arrayish": "^0.2.1" } }, + "error-inject": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/error-inject/-/error-inject-1.0.0.tgz", + "integrity": "sha512-JM8N6PytDbmIYm1IhPWlo8vr3NtfjhDY/1MhD/a5b/aad/USE8a0+NsqE9d5n+GVGmuNkPQWm4bFQWv18d8tMg==", + "dev": true + }, "es-abstract": { "version": "1.22.4", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.4.tgz", @@ -26476,40 +27362,6 @@ "text-table": "^0.2.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -26541,21 +27393,6 @@ "type-fest": "^0.20.2" } }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -26691,6 +27528,12 @@ "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true }, + "exit-hook": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-3.2.0.tgz", + "integrity": "sha512-aIQN7Q04HGAV/I5BszisuHTZHXNoC23WtLkxdCLuYZMdWviRD0TMIt2bnUBi9MrHaF/hH8b3gwG9iaAUHKnJGA==", + "dev": true + }, "expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", @@ -26713,17 +27556,17 @@ } }, "express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "dev": true, "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.1", + "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -26751,10 +27594,36 @@ "vary": "~1.1.2" }, "dependencies": { + "body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "dev": true, + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + } + }, + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true + }, "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", "dev": true }, "debug": { @@ -26811,6 +27680,18 @@ "side-channel": "^1.0.4" } }, + "raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, "statuses": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", @@ -26984,6 +27865,12 @@ } } }, + "filesize": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-10.1.2.tgz", + "integrity": "sha512-Dx770ai81ohflojxhU+oG+Z2QGvKdYxgEr9OSA8UVrqhwNHjfH9A8f5NKfg83fEH8ZFA5N5llJo5T3PIoZ4CRA==", + "dev": true + }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -27036,6 +27923,15 @@ "pkg-dir": "^4.1.0" } }, + "find-file-up": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/find-file-up/-/find-file-up-2.0.1.tgz", + "integrity": "sha512-qVdaUhYO39zmh28/JLQM5CoYN9byEOKEH4qfa8K1eNV17W0UUMJ9WgbR/hHFH+t5rcl+6RTb5UC7ck/I+uRkpQ==", + "dev": true, + "requires": { + "resolve-dir": "^1.0.1" + } + }, "find-node-modules": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/find-node-modules/-/find-node-modules-2.1.3.tgz", @@ -27046,6 +27942,15 @@ "merge": "^2.1.1" } }, + "find-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-pkg/-/find-pkg-2.0.0.tgz", + "integrity": "sha512-WgZ+nKbELDa6N3i/9nrHeNznm+lY3z4YfhDDWgW+5P0pdmMj26bxaxU11ookgY3NyP9GC7HvZ9etp0jRFqGEeQ==", + "dev": true, + "requires": { + "find-file-up": "^2.0.1" + } + }, "find-root": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", @@ -27097,9 +28002,9 @@ "dev": true }, "follow-redirects": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", - "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "dev": true }, "for-each": { @@ -27244,6 +28149,12 @@ "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true }, + "get-port": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", + "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", + "dev": true + }, "get-stream": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", @@ -27427,6 +28338,15 @@ "integrity": "sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw==", "dev": true }, + "gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "dev": true, + "requires": { + "duplexer": "^0.1.2" + } + }, "handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", @@ -27787,6 +28707,43 @@ "entities": "^4.4.0" } }, + "http-assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/http-assert/-/http-assert-1.5.0.tgz", + "integrity": "sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==", + "dev": true, + "requires": { + "deep-equal": "~1.0.1", + "http-errors": "~1.8.0" + }, + "dependencies": { + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + }, + "http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + } + } + } + }, "http-cache-semantics": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", @@ -28004,57 +28961,6 @@ "strip-ansi": "^6.0.0", "through": "^2.3.6", "wrap-ansi": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "internal-slot": { @@ -28079,6 +28985,12 @@ "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", "dev": true }, + "ip": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.9.tgz", + "integrity": "sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ==", + "dev": true + }, "ipaddr.js": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz", @@ -28434,6 +29346,12 @@ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true }, + "isomorphic-ws": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz", + "integrity": "sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw==", + "dev": true + }, "istanbul-lib-coverage": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", @@ -28582,57 +29500,6 @@ "slash": "^3.0.0", "stack-utils": "^2.0.3", "throat": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-cli": { @@ -28653,57 +29520,6 @@ "jest-validate": "^27.5.1", "prompts": "^2.0.1", "yargs": "^16.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-config": { @@ -28738,199 +29554,48 @@ "strip-json-comments": "^3.1.1" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, "ci-info": { "version": "3.9.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", - "dev": true, - "requires": { - "detect-newline": "^3.0.0" - } - }, - "jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } + "dev": true } } }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "requires": { + "detect-newline": "^3.0.0" + } + }, + "jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, "jest-environment-jsdom": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", @@ -29010,57 +29675,6 @@ "jest-util": "^27.5.1", "pretty-format": "^27.5.1", "throat": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-leak-detector": { @@ -29083,57 +29697,6 @@ "jest-diff": "^27.5.1", "jest-get-type": "^27.5.1", "pretty-format": "^27.5.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-message-util": { @@ -29151,57 +29714,6 @@ "pretty-format": "^27.5.1", "slash": "^3.0.0", "stack-utils": "^2.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-mock": { @@ -29243,66 +29755,17 @@ "ws": "^8.5.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, "camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "commander": { "version": "9.5.0", "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } } } }, @@ -29328,57 +29791,6 @@ "resolve": "^1.20.0", "resolve.exports": "^1.1.0", "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-resolve-dependencies": { @@ -29419,57 +29831,6 @@ "jest-worker": "^27.5.1", "source-map-support": "^0.5.6", "throat": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-runtime": { @@ -29500,57 +29861,6 @@ "jest-util": "^27.5.1", "slash": "^3.0.0", "strip-bom": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-serializer": { @@ -29593,46 +29903,6 @@ "semver": "^7.3.2" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -29651,15 +29921,6 @@ "lru-cache": "^6.0.0" } }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -29682,60 +29943,11 @@ "picomatch": "^2.2.3" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, "ci-info": { "version": "3.9.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "dev": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } } } }, @@ -29753,60 +29965,11 @@ "pretty-format": "^27.5.1" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, "camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } } } }, @@ -29823,57 +29986,6 @@ "chalk": "^4.0.0", "jest-util": "^27.5.1", "string-length": "^4.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-worker": { @@ -30015,6 +30127,12 @@ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, + "json-stream-stringify": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.0.1.tgz", + "integrity": "sha512-vuxs3G1ocFDiAQ/SX0okcZbtqXwgj1g71qE9+vrjJ2EkjKQlEFDAcUNRxRU8O+GekV4v5cM2qXP0Wyt/EMDBiQ==", + "dev": true + }, "json-stringify-pretty-compact": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-2.0.0.tgz", @@ -30035,6 +30153,15 @@ "universalify": "^2.0.0" } }, + "keygrip": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz", + "integrity": "sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==", + "dev": true, + "requires": { + "tsscmp": "1.0.6" + } + }, "keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -30056,6 +30183,101 @@ "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true }, + "koa": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/koa/-/koa-2.11.0.tgz", + "integrity": "sha512-EpR9dElBTDlaDgyhDMiLkXrPwp6ZqgAIBvhhmxQ9XN4TFgW+gEz6tkcsNI6BnUbUftrKDjVFj4lW2/J2aNBMMA==", + "dev": true, + "requires": { + "accepts": "^1.3.5", + "cache-content-type": "^1.0.0", + "content-disposition": "~0.5.2", + "content-type": "^1.0.4", + "cookies": "~0.8.0", + "debug": "~3.1.0", + "delegates": "^1.0.0", + "depd": "^1.1.2", + "destroy": "^1.0.4", + "encodeurl": "^1.0.2", + "error-inject": "^1.0.0", + "escape-html": "^1.0.3", + "fresh": "~0.5.2", + "http-assert": "^1.3.0", + "http-errors": "^1.6.3", + "is-generator-function": "^1.0.7", + "koa-compose": "^4.1.0", + "koa-convert": "^1.2.0", + "on-finished": "^2.3.0", + "only": "~0.0.2", + "parseurl": "^1.3.2", + "statuses": "^1.5.0", + "type-is": "^1.6.16", + "vary": "^1.1.2" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + }, + "http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "koa-compose": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz", + "integrity": "sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==", + "dev": true + }, + "koa-convert": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/koa-convert/-/koa-convert-1.2.0.tgz", + "integrity": "sha512-K9XqjmEDStGX09v3oxR7t5uPRy0jqJdvodHa6wxWTHrTfDq0WUNnYTOOUZN6g8OM8oZQXprQASbiIXG2Ez8ehA==", + "dev": true, + "requires": { + "co": "^4.6.0", + "koa-compose": "^3.0.0" + }, + "dependencies": { + "koa-compose": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-3.2.1.tgz", + "integrity": "sha512-8gen2cvKHIZ35eDEik5WOo8zbVp9t4cP8p4hW4uE55waxolLRexKKrqfCpwhGVppnB40jWeF8bZeTVg99eZgPw==", + "dev": true, + "requires": { + "any-promise": "^1.1.0" + } + } + } + }, "latest-version": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", @@ -30141,6 +30363,12 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "lodash.clonedeepwith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", + "integrity": "sha512-QRBRSxhbtsX1nc0baxSkkK5WlVTTm/s48DSukcGcWZwIyI8Zz+lB+kFiELJXtzfH4Aj6kMWQ1VWW4U5uUDgZMA==", + "dev": true + }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -30189,59 +30417,27 @@ "requires": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, + "log4js": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz", + "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==", + "dev": true, + "requires": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.5" + } + }, + "long-timeout": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/long-timeout/-/long-timeout-0.1.1.tgz", + "integrity": "sha512-BFRuQUqc7x2NWxfJBCyUrN8iYUYznzL9JROmRz1gZ6KlOIgmoD+njPVbb+VNn2nGMKggMsK79iUNErillsrx7w==", + "dev": true + }, "loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -30294,6 +30490,12 @@ "semver": "^6.0.0" } }, + "make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, "makeerror": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", @@ -30589,15 +30791,6 @@ "yargs": "^17.3.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, "chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -30619,21 +30812,6 @@ "wrap-ansi": "^7.0.0" } }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -30820,6 +30998,17 @@ "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, + "node-schedule": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/node-schedule/-/node-schedule-2.1.1.tgz", + "integrity": "sha512-OXdegQq03OmXEjt2hZP33W2YPs/E5BcFQks46+G2gAxs4gHOIVD1u7EqlYLYSKsaIpyKCK9Gbk0ta1/gjRSMRQ==", + "dev": true, + "requires": { + "cron-parser": "^4.2.0", + "long-timeout": "0.1.1", + "sorted-array-functions": "^1.3.0" + } + }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -31010,6 +31199,12 @@ "mimic-fn": "^2.1.0" } }, + "only": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz", + "integrity": "sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==", + "dev": true + }, "open": { "version": "8.4.2", "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", @@ -31021,6 +31216,12 @@ "is-wsl": "^2.2.0" } }, + "opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "dev": true + }, "optionator": { "version": "0.9.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", @@ -31050,57 +31251,6 @@ "log-symbols": "^4.1.0", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "os-tmpdir": { @@ -31246,6 +31396,12 @@ "tslib": "^2.0.3" } }, + "path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -31602,6 +31758,12 @@ } } }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, "psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", @@ -31671,6 +31833,12 @@ "integrity": "sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==", "dev": true }, + "rambda": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/rambda/-/rambda-9.2.1.tgz", + "integrity": "sha512-6Dp+QQVQuAuhwBlbIvL2FjJVHCKF29W+n9ca/BMTVDqpj+Q7KKqUh7UAINEna8aaB2/oRvPuL5hViCTQARa70Q==", + "dev": true + }, "ramda": { "version": "0.29.0", "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.29.0.tgz", @@ -32429,6 +32597,12 @@ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", "dev": true }, + "rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "dev": true + }, "rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -32442,6 +32616,12 @@ "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, + "rslog": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/rslog/-/rslog-1.2.2.tgz", + "integrity": "sha512-tZP8KjrI1nz6qOYCrFxAV7cfmfS2GV94jotU2zOmF/6ByO1zNvGR6/+0inylpjqyBjAdnnutTUW0m4th06bSTw==", + "dev": true + }, "rst-selector-parser": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz", @@ -32847,6 +33027,41 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, + "socket.io": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.2.tgz", + "integrity": "sha512-bvKVS29/I5fl2FGLNHuXlQaUH/BlzX1IN6S+NKLNZpBsPZIDH+90eQmCs2Railn4YUiww4SzUedJ6+uzwFnKLw==", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.5.2", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + } + }, + "socket.io-adapter": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", + "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", + "dev": true, + "requires": { + "debug": "~4.3.4", + "ws": "~8.17.1" + } + }, + "socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "dev": true, + "requires": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + } + }, "sockjs": { "version": "0.3.24", "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", @@ -32866,6 +33081,12 @@ } } }, + "sorted-array-functions": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sorted-array-functions/-/sorted-array-functions-1.3.0.tgz", + "integrity": "sha512-2sqgzeFlid6N4Z2fUQ1cvFmTOLRi/sEDzSQ0OKYchqgoPmQBVyM3959qYx3fpS6Esef80KjmpgPeEr028dP3OA==", + "dev": true + }, "source-list-map": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", @@ -32967,6 +33188,45 @@ "internal-slot": "^1.0.4" } }, + "streamroller": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", + "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==", + "dev": true, + "requires": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, + "dependencies": { + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + } + } + }, "strict-event-emitter": { "version": "0.2.8", "resolved": "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.2.8.tgz", @@ -33490,11 +33750,49 @@ "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==" }, + "ts-node": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", + "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", + "dev": true, + "requires": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "dependencies": { + "acorn-walk": { + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", + "dev": true, + "requires": { + "acorn": "^8.11.0" + } + } + } + }, "tslib": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, + "tsscmp": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", + "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==", + "dev": true + }, "tsutils": { "version": "3.21.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", @@ -33701,6 +33999,12 @@ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true }, + "upath": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", + "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==", + "dev": true + }, "update-browserslist-db": { "version": "1.0.13", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", @@ -33741,46 +34045,6 @@ "xdg-basedir": "^4.0.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -33799,15 +34063,6 @@ "lru-cache": "^6.0.0" } }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -33933,6 +34188,12 @@ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz", "integrity": "sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==" }, + "v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, "v8-to-istanbul": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", @@ -34535,6 +34796,61 @@ } } }, + "webpack-bundle-analyzer": { + "version": "4.10.2", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz", + "integrity": "sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==", + "dev": true, + "requires": { + "@discoveryjs/json-ext": "0.5.7", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "commander": "^7.2.0", + "debounce": "^1.2.1", + "escape-string-regexp": "^4.0.0", + "gzip-size": "^6.0.0", + "html-escaper": "^2.0.2", + "opener": "^1.5.2", + "picocolors": "^1.0.0", + "sirv": "^2.0.3", + "ws": "^7.3.1" + }, + "dependencies": { + "acorn-walk": { + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", + "dev": true, + "requires": { + "acorn": "^8.11.0" + } + }, + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "dev": true + }, + "ws": { + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "dev": true + } + } + }, "webpack-cli": { "version": "5.1.4", "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", @@ -34836,32 +35152,6 @@ "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } } }, "wrappy": { @@ -34882,9 +35172,9 @@ } }, "ws": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", - "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "dev": true }, "xdg-basedir": { @@ -34954,6 +35244,18 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" }, + "ylru": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ylru/-/ylru-1.4.0.tgz", + "integrity": "sha512-2OQsPNEmBCvXuFlIni/a+Rn+R2pHW9INm0BxXJ4hVDA8TirqMj+J/Rp9ItLatT/5pZqWwefVrTQcHpixsxnVlA==", + "dev": true + }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true + }, "yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index 7133405bb..7f0b84c28 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,9 @@ "test:lint": "eslint src", "start:dev": "webpack serve --config webpack.dev.js", "build": "npm run check-types && webpack --config webpack.prod.js", - "jest-preview": "jest-preview" + "jest-preview": "jest-preview", + "rsstart": "rspack serve -c rspack.config.ts", + "rsbuild": "rspack build -c rspack.config.ts" }, "keywords": [], "author": "", @@ -22,6 +24,10 @@ "@babel/preset-env": "^7.8.4", "@babel/preset-react": "^7.8.3", "@babel/preset-typescript": "^7.16.7", + "@module-federation/enhanced": "^0.2.3", + "@rsdoctor/rspack-plugin": "^0.3.6", + "@rspack/cli": "^0.7.5", + "@rspack/core": "^0.7.5", "@testing-library/jest-dom": "^5.16.2", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^7.0.2", @@ -60,6 +66,7 @@ "redux-logger": "^3.0.6", "redux-mock-store": "^1.5.4", "style-loader": "^1.1.3", + "ts-node": "^10.9.2", "typescript": "^5.3.2", "webpack": "^5.88.1", "webpack-cli": "^5.1.4", @@ -72,7 +79,7 @@ "@hookform/resolvers": "^2.8.8", "@monaco-editor/react": "^4.4.5", "@scality/core-ui": "^0.132.0", - "@scality/module-federation": "github:scality/module-federation#1.1.0", + "@scality/module-federation": "github:scality/module-federation#1.3.1", "@types/react-table": "^7.7.10", "@types/react-virtualized": "^9.21.20", "@types/react-window": "^1.8.5", diff --git a/rspack.config.ts b/rspack.config.ts new file mode 100644 index 000000000..2777b3351 --- /dev/null +++ b/rspack.config.ts @@ -0,0 +1,233 @@ +import path from 'path'; +import packageJson from './package.json'; +import { Configuration } from '@rspack/cli'; +import rspack from '@rspack/core'; +import { ModuleFederationPlugin } from '@module-federation/enhanced/rspack'; +import { RsdoctorRspackPlugin } from '@rsdoctor/rspack-plugin'; +import { execSync } from 'node:child_process'; + +const deps = packageJson.dependencies; + +const revision = execSync('git rev-parse HEAD').toString().trim(); + +const zenkoDNS = 'zenko.local'; + +const accessControlAllowHeaders = [ + 'X-Requested-With', + 'content-type', + 'Authorization', + 'x-amz-content-sha256', + 'x-amz-user-agent', + 'x-amz-security-token', + 'x-amz-date', + 'if-none-match', + 'x-amz-bucket-object-lock-enabled', + 'x-authentication-token', + 'content-md5', + 'x-amz-bypass-governance-retention', +]; + +const isProduction = process.env.NODE_ENV === 'production'; + +const config: Configuration = { + entry: { + zenko_ui: './src/react/App', + }, + mode: isProduction ? 'production' : 'development', + devtool: isProduction ? false : 'source-map', + output: { + filename: `js/[name].[contenthash].${revision}.js`, + assetModuleFilename: 'assets/[name].[hash][ext][query]', + cssFilename: 'css/[name].[contenthash].css', + path: path.resolve(__dirname, 'build'), + publicPath: isProduction ? '/data/' : '/zenko/', + }, + module: { + rules: [ + { + test: /\.jsx$/, + use: { + loader: 'builtin:swc-loader', + options: { + jsc: { + parser: { + syntax: 'ecmascript', + jsx: true, + }, + transform: { + react: { + runtime: 'automatic', + }, + }, + }, + }, + }, + type: 'javascript/auto', + }, + { + test: /\.ts$/, + exclude: [/node_modules/], + loader: 'builtin:swc-loader', + options: { + jsc: { + parser: { + syntax: 'typescript', + }, + }, + }, + type: 'javascript/auto', + }, + { + test: /\.tsx$/, + use: { + loader: 'builtin:swc-loader', + options: { + jsc: { + parser: { + syntax: 'typescript', + tsx: true, + }, + transform: { + react: { + runtime: 'automatic', + }, + }, + }, + }, + }, + type: 'javascript/auto', + }, + { + test: /\.(jpe?g|gif|png|ttf|eot|svg)$/, + type: 'asset', + }, + { + test: /\.woff(2)?$/, + type: 'asset/resource', + }, + { + test: /\.css$/, + type: 'css', + }, + ], + }, + resolve: { + modules: ['node_modules'], + extensions: ['.js', '.jsx', '.css', '.json', '.ts', '.tsx'], + }, + plugins: [ + new ModuleFederationPlugin({ + name: 'zenko', + filename: 'js/remoteEntry.js', + exposes: { + './FederableApp': './src/react/FederableApp.tsx', + './VeeamWelcomeModal': + './src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx', + './SelectAccountIAMRole': + './src/react/ui-elements/SelectAccountIAMRole.tsx', + }, + remotes: !isProduction + ? { + shell: 'shell@http://localhost:8084/shell/mf-manifest.json', + } + : undefined, + shared: { + ...Object.fromEntries( + Object.entries(deps).map(([key, version]) => [key, {}]), + ), + '@scality/core-ui': { + singleton: true, + }, + '@scality/module-federation': { + singleton: true, + }, + 'styled-components': { + singleton: true, + requiredVersion: deps['styled-components'], + }, + react: { + singleton: true, + requiredVersion: deps.react, + }, + 'react-dom': { + singleton: true, + requiredVersion: deps['react-dom'], + }, + }, + }), + new rspack.CopyRspackPlugin({ + patterns: [{ from: 'public/assets/zenko' }], + }), + process.env.RSDOCTOR && new RsdoctorRspackPlugin({}), + ].filter(Boolean), + devServer: { + host: '127.0.0.1', + port: 8383, + hot: !isProduction, + client: { + overlay: { + warnings: false, + errors: true, + }, + }, + static: path.join(__dirname, 'public'), + headers: { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Methods': + 'GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD', + 'Access-Control-Allow-Headers': accessControlAllowHeaders.join(', '), + 'Access-Control-Expose-Headers': 'ETag', + }, + proxy: { + '/s3': { + target: `https://s3.${zenkoDNS}`, + pathRewrite: { '^/s3': '' }, + secure: false, + changeOrigin: true, + logLevel: 'debug', + logProvider: () => console, + onProxyRes: function (proxyRes, req, res) { + if (req.method === 'OPTIONS') { + proxyRes.statusCode = 200; + } + }, + }, + '/iam': { + target: `https://iam.${zenkoDNS}`, + pathRewrite: { '^/iam': '' }, + secure: false, + changeOrigin: true, + logLevel: 'debug', + logProvider: () => console, + onProxyRes: function (proxyRes, req, res) { + if (req.method === 'OPTIONS') { + proxyRes.statusCode = 200; + } + }, + }, + '/sts': { + target: `https://sts.${zenkoDNS}`, + pathRewrite: { '^/sts': '' }, + secure: false, + changeOrigin: true, + logLevel: 'debug', + logProvider: () => console, + onProxyRes: function (proxyRes, req, res) { + if (req.method === 'OPTIONS') { + proxyRes.statusCode = 200; + } + }, + }, + '/management': { + target: `https://management.${zenkoDNS}`, + pathRewrite: { '^/management': '' }, + secure: false, + changeOrigin: true, + logLevel: 'debug', + logProvider: () => console, + }, + }, + }, +}; + +export = config; diff --git a/src/index-template.html b/src/index-template.html deleted file mode 100644 index 5191623b1..000000000 --- a/src/index-template.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - Data management - - -
- - diff --git a/src/react/FederableApp.tsx b/src/react/FederableApp.tsx index ac596d9e4..ec79a819f 100644 --- a/src/react/FederableApp.tsx +++ b/src/react/FederableApp.tsx @@ -1,23 +1,18 @@ -import { Provider } from 'react-redux'; import { ReactQueryDevtools } from 'react-query/devtools'; +import { Provider } from 'react-redux'; +import { BrowserRouter, useHistory } from 'react-router-dom'; import { applyMiddleware, compose, createStore } from 'redux'; import thunk from 'redux-thunk'; -import { BrowserRouter, useHistory } from 'react-router-dom'; import ZenkoUI from './ZenkoUI'; -import { - ConfigProvider, - useConfig, -} from './next-architecture/ui/ConfigProvider'; -import { AuthProvider } from './next-architecture/ui/AuthProvider'; -import { AccountsLocationsEndpointsAdapterProvider } from './next-architecture/ui/AccountsLocationsEndpointsAdapterProvider'; import { AccessibleAccountsAdapterProvider } from './next-architecture/ui/AccessibleAccountsAdapterProvider'; -import MetricsAdapterProvider from './next-architecture/ui/MetricsAdapterProvider'; +import { AccountsLocationsEndpointsAdapterProvider } from './next-architecture/ui/AccountsLocationsEndpointsAdapterProvider'; +import { useConfig } from './next-architecture/ui/ConfigProvider'; import { LocationAdapterProvider } from './next-architecture/ui/LocationAdapterProvider'; +import MetricsAdapterProvider from './next-architecture/ui/MetricsAdapterProvider'; -import zenkoUIReducer from './reducers'; import { useEffect, useMemo } from 'react'; import { XCoreLibraryProvider } from './next-architecture/ui/XCoreLibraryProvider'; -import { ToastProvider } from '@scality/core-ui'; +import zenkoUIReducer from './reducers'; //@ts-expect-error fix this when you are working on it const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose; @@ -56,29 +51,21 @@ const HistoryPushEventListener = () => { const FederableApp = () => { return ( - - - - - - <> - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + ); }; diff --git a/src/react/next-architecture/ui/AlertProvider.tsx b/src/react/next-architecture/ui/AlertProvider.tsx index 5b9696afb..337d49de6 100644 --- a/src/react/next-architecture/ui/AlertProvider.tsx +++ b/src/react/next-architecture/ui/AlertProvider.tsx @@ -1,12 +1,3 @@ -import React from 'react'; -import { ErrorBoundary } from 'react-error-boundary'; -import { ErrorPage500 } from '@scality/core-ui'; -import { - ComponentWithFederatedImports, - FederatedComponent, - useCurrentApp, -} from '@scality/module-federation'; -import { useConfigRetriever, useDeployedApps } from './ConfigProvider'; import { QueryObserverResult } from 'react-query'; type PrometheusAlert = { @@ -52,84 +43,7 @@ export type FilterLabels = { type useAlertsType = ( filters: FilterLabels, ) => Omit, 'data'> & { alerts?: Alert[] }; -const alertGlobal: { hooks?: { useAlerts: useAlertsType } } = {}; export const useAlerts = (filters: FilterLabels) => { - return alertGlobal.hooks.useAlerts(filters); + return window.shellAlerts.hooks.useAlerts(filters); }; - -const InternalAlertProvider = ({ - moduleExports, - alertManagerUrl, - children, -}: { - moduleExports: { - './alerts/alertHooks': { useAlerts: useAlertsType }; - }; - alertManagerUrl: string; - children; -}) => { - alertGlobal.hooks = moduleExports['./alerts/alertHooks']; - const app = useCurrentApp(); - - return ( - - ); -}; - -function ErrorFallback() { - return ; -} - -const AlertProvider = ({ children }: { children: React.ReactNode }) => { - const deployedApps = useDeployedApps(); - const { retrieveConfiguration } = useConfigRetriever(); - const metalk8sUI = deployedApps.find( - (app: { kind: string }) => app.kind === 'metalk8s-ui', - ); - - const metalk8sUIConfig = metalk8sUI - ? retrieveConfiguration({ - configType: 'run', - name: metalk8sUI.name, - }) - : { - spec: { - selfConfiguration: { - url_alertmanager: '', - }, - }, - }; - - return ( - - } - componentProps={{ - children, - alertManagerUrl: - metalk8sUIConfig.spec.selfConfiguration.url_alertmanager, - }} - federatedImports={[ - { - scope: 'shell', - module: './alerts/alertHooks', - remoteEntryUrl: window.shellUIRemoteEntryUrl, - }, - ]} - /> - - ); -}; - -export default AlertProvider; diff --git a/src/react/next-architecture/ui/AuthProvider.tsx b/src/react/next-architecture/ui/AuthProvider.tsx index 1c8811cb0..9b6f97f50 100644 --- a/src/react/next-architecture/ui/AuthProvider.tsx +++ b/src/react/next-architecture/ui/AuthProvider.tsx @@ -1,8 +1,5 @@ import { createContext } from 'react'; import { AuthUser } from '../../../types/auth'; -import { ErrorBoundary } from 'react-error-boundary'; -import { ErrorPage500 } from '@scality/core-ui/dist/components/error-pages/ErrorPage500.component'; -import { ComponentWithFederatedImports } from '@scality/module-federation'; //exported for testing purposes only // TO BE DELETED @@ -43,45 +40,7 @@ export type UserData = { id: string; original?: UserDataOriginal; }; -type ContextType = { - userData?: UserData; -}; - -const authGlobal = { - hooks: {}, -}; - -export function useAuth(): ContextType { - //@ts-expect-error fix this when you are working on it - return authGlobal.hooks.useAuth(); -} - -const InternalAuthProvider = ({ moduleExports, children }) => { - authGlobal.hooks = moduleExports['./auth/AuthProvider']; - return <>{children}; -}; - -function ErrorFallback() { - return ; -} -export function AuthProvider({ children }: { children: JSX.Element }) { - return ( - - } - componentProps={{ - children, - }} - federatedImports={[ - { - scope: 'shell', - module: './auth/AuthProvider', - remoteEntryUrl: window.shellUIRemoteEntryUrl, - }, - ]} - /> - - ); +export function useAuth() { + return window.shellHooks.useAuth(); } diff --git a/src/react/next-architecture/ui/ConfigProvider.tsx b/src/react/next-architecture/ui/ConfigProvider.tsx index 2d2779909..28eeb4114 100644 --- a/src/react/next-architecture/ui/ConfigProvider.tsx +++ b/src/react/next-architecture/ui/ConfigProvider.tsx @@ -1,57 +1,43 @@ -import { ErrorPage500 } from '@scality/core-ui/dist/components/error-pages/ErrorPage500.component'; +import { useCurrentApp } from '@scality/module-federation'; import { createContext } from 'react'; -import { - ComponentWithFederatedImports, - useCurrentApp, -} from '@scality/module-federation'; import { AppConfig } from '../../../types/entities'; -import { ErrorBoundary } from 'react-error-boundary'; export const _ConfigContext = createContext(null); -const configGlobal = {}; -const deployedInstancesGlobal = {}; export function useConfig(): AppConfig { const { name } = useCurrentApp(); - //@ts-expect-error fix this when you are working on it - return configGlobal.hooks.useConfig({ + return window.shellHooks.useConfig({ configType: 'run', name, }).spec.selfConfiguration; } export function useLinkOpener() { - //@ts-expect-error fix this when you are working on it - return configGlobal.hooks.useLinkOpener(); + return window.shellHooks.useLinkOpener(); } export function useDiscoveredViews() { - //@ts-expect-error fix this when you are working on it - return configGlobal.hooks.useDiscoveredViews(); + return window.shellHooks.useDiscoveredViews(); } export function useDeployedApps() { - //@ts-expect-error fix this when you are working on it - return deployedInstancesGlobal.hooks.useDeployedApps(); + return window.shellHooks.useDeployedApps(); } export function useDeployedMetalk8sInstances() { - //@ts-expect-error fix this when you are working on it - return deployedInstancesGlobal.hooks.useDeployedApps({ + return window.shellHooks.useDeployedApps({ kind: 'metalk8s-ui', }); } export function useDeployedXcoreInstances() { - //@ts-expect-error fix this when you are working on it - return deployedInstancesGlobal.hooks.useDeployedApps({ + return window.shellHooks.useDeployedApps({ kind: 'xcore-ui', }); } export function useXcoreConfig(configType: 'run' | 'build' = 'build') { - //@ts-expect-error fix this when you are working on it - const { retrieveConfiguration } = configGlobal.hooks.useConfigRetriever(); + const { retrieveConfiguration } = window.shellHooks.useConfigRetriever(); const instances = useDeployedXcoreInstances(); if (instances.length) { @@ -65,18 +51,20 @@ export function useXcoreConfig(configType: 'run' | 'build' = 'build') { } export function useConfigRetriever() { - //@ts-expect-error fix this when you are working on it - return configGlobal.hooks.useConfigRetriever(); + return window.shellHooks.useConfigRetriever(); } +// FIXME this is a temporary (hopefully) solution to get the Grafana URL +type Config = { + url_grafana: string; +}; export function useGrafanaURL() { - //@ts-expect-error fix this when you are working on it - const { retrieveConfiguration } = configGlobal.hooks.useConfigRetriever(); + const { retrieveConfiguration } = window.shellHooks.useConfigRetriever(); const instances = useDeployedMetalk8sInstances(); if (instances.length) { const baseUrl = new URL(instances[0].url).origin; - const runTimeConfig = retrieveConfiguration({ + const runTimeConfig = retrieveConfiguration({ configType: 'run', name: instances[0].name, }); @@ -86,51 +74,3 @@ export function useGrafanaURL() { return ''; } } - -const InternalConfigProvider = ({ - moduleExports, - children, -}: { - moduleExports: Record; - children: React.ReactNode; -}): React.ReactNode => { - //@ts-expect-error fix this when you are working on it - configGlobal.hooks = - moduleExports['./moduleFederation/ConfigurationProvider']; - //@ts-expect-error fix this when you are working on it - deployedInstancesGlobal.hooks = - moduleExports['./moduleFederation/UIListProvider']; - return <>{children}; -}; - -function ErrorFallback() { - // const intl = useIntl(); - // const language = intl.locale; - return ; -} - -export function ConfigProvider({ children }: { children: React.ReactNode }) { - return ( - - } - componentProps={{ - children, - }} - federatedImports={[ - { - scope: 'shell', - module: './moduleFederation/ConfigurationProvider', - remoteEntryUrl: window.shellUIRemoteEntryUrl, - }, - { - scope: 'shell', - module: './moduleFederation/UIListProvider', - remoteEntryUrl: window.shellUIRemoteEntryUrl, - }, - ]} - /> - - ); -} diff --git a/src/react/next-architecture/ui/XCoreLibraryProvider.tsx b/src/react/next-architecture/ui/XCoreLibraryProvider.tsx index 731c01a48..aa8b865e3 100644 --- a/src/react/next-architecture/ui/XCoreLibraryProvider.tsx +++ b/src/react/next-architecture/ui/XCoreLibraryProvider.tsx @@ -41,6 +41,7 @@ export function XCoreLibraryProvider({ }: { children: React.ReactNode; }) { + return <>{children}; const xcoreWebfinger = useXcoreConfig(); const instances = useDeployedXcoreInstances(); const federatedImports = instances.map((instance) => { diff --git a/src/react/ui-elements/Breadcrumb.tsx b/src/react/ui-elements/Breadcrumb.tsx index f95b1fec0..7d274c145 100644 --- a/src/react/ui-elements/Breadcrumb.tsx +++ b/src/react/ui-elements/Breadcrumb.tsx @@ -4,10 +4,28 @@ import { ConstrainedText, } from '@scality/core-ui'; import styled from 'styled-components'; -import { ellipsis } from 'polished'; import AccountRoleSelectButtonAndModal from '../account/AccountRoleSelectButtonAndModal'; import { fontSize } from '@scality/core-ui/dist/style/theme'; +// vendor from `polished` package +type Styles = { + [ruleOrSelector: string]: string | number | Styles; +}; +function ellipsis(width: string | number): Styles { + if (width === void 0) { + width = '100%'; + } + + return { + display: 'inline-block', + maxWidth: width, + overflow: 'hidden', + textOverflow: 'ellipsis', + whiteSpace: 'nowrap', + wordWrap: 'normal', + }; +} + export const CustomBreadCrumb = styled(CoreUIBreadcrumb)` align-items: center; .sc-breadcrumb_item { diff --git a/src/react/ui-elements/SelectAccountIAMRole.tsx b/src/react/ui-elements/SelectAccountIAMRole.tsx index 7bd335070..493d19ccf 100644 --- a/src/react/ui-elements/SelectAccountIAMRole.tsx +++ b/src/react/ui-elements/SelectAccountIAMRole.tsx @@ -22,7 +22,6 @@ import { AccountsLocationsEndpointsAdapterProvider } from '../next-architecture/ import { getListRolesQuery } from '../queries'; import { regexArn } from '../utils/hooks'; import { AuthProvider } from '../next-architecture/ui/AuthProvider'; -import { ConfigProvider } from '../next-architecture/ui/ConfigProvider'; class NoOpMetricsAdapter implements IMetricsAdapter { async listBucketsLatestUsedCapacity( @@ -302,11 +301,5 @@ export const SelectAccountIAMRoleInternal = ( }; export default function SelectAccountIAMRole(props: SelectAccountIAMRoleProps) { - return ( - - - - - - ); + return ; } diff --git a/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx b/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx index f0ffb7b04..a7f0e8f57 100644 --- a/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx +++ b/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx @@ -4,9 +4,8 @@ import { useState } from 'react'; import styled from 'styled-components'; import { VEEAM_FEATURE } from '../../../js/config'; import { InternalRouter } from '../../FederableApp'; -import { AuthProvider, useAuth } from '../../next-architecture/ui/AuthProvider'; +import { useAuth } from '../../next-architecture/ui/AuthProvider'; import { - ConfigProvider, useConfig, useDeployedApps, useLinkOpener, @@ -16,7 +15,6 @@ import { setSessionState } from '../../utils/localStorage'; import { ArtescaLogo } from './ArtescaLogo'; import { VeeamLogo } from './VeeamLogo'; import { useNextLogin } from './useNextLogin'; -import AlertProvider from '../../next-architecture/ui/AlertProvider'; import { useAlerts } from '../../next-architecture/ui/AlertProvider'; const CustomModal = styled(Modal)` @@ -152,14 +150,8 @@ const VeeamModalComponent = () => { export default function VeeamWelcomeModal(props: NavbarUpdaterComponentProps) { return ( - - - - - - - - - + + + ); } From d6d43f89064e8677653d5f64722762030f4bbb06 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Fri, 5 Jul 2024 18:20:34 +0200 Subject: [PATCH 02/24] add tsconfig --- tsconfig.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tsconfig.json b/tsconfig.json index 7ce0c2326..830f5d80e 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -50,7 +50,7 @@ // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ "baseUrl": "./" /* Base directory to resolve non-absolute module names. */, "paths": { - "*": ["types/*.d.ts"] + "*": ["types/*.d.ts", "@mf-types"] } /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */, // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ // "typeRoots": [], /* List of folders to include type definitions from. */ From 1a62c2424c56f0a7b5c60d0f1921ec02ca2025b3 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Tue, 9 Jul 2024 10:01:53 +0200 Subject: [PATCH 03/24] fix types --- @mf-types/shell/compiled-types/src/FederatedApp.d.ts | 2 +- .../src/initFederation/ConfigurationProviders.d.ts | 2 +- tsconfig.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/@mf-types/shell/compiled-types/src/FederatedApp.d.ts b/@mf-types/shell/compiled-types/src/FederatedApp.d.ts index 5ff738c4b..a48fda098 100644 --- a/@mf-types/shell/compiled-types/src/FederatedApp.d.ts +++ b/@mf-types/shell/compiled-types/src/FederatedApp.d.ts @@ -11,7 +11,7 @@ import { useLanguage } from './navbar/lang'; import AlertProvider from './alerts/AlertProvider'; import { getAlertingAlertSelectors, getAuthenticationAlertSelectors, getBootstrapAlertSelectors, getDashboardingAlertSelectors, getIngressControllerAlertSelectors, getK8SMasterAlertSelectors, getLoggingAlertSelectors, getMonitoringAlertSelectors, getNetworksAlertSelectors, getNodesAlertSelectors, getPlatformAlertSelectors, getServicesAlertSelectors, getVolumesAlertSelectors, useAlerts, useHighestSeverityAlerts } from './alerts'; import { useHistory } from 'react-router'; -import { UseQueryResult } from 'react-query/types/react'; +import { UseQueryResult } from 'react-query'; export declare const queryClient: QueryClient; export type ShellTypes = { shellHooks: { diff --git a/@mf-types/shell/compiled-types/src/initFederation/ConfigurationProviders.d.ts b/@mf-types/shell/compiled-types/src/initFederation/ConfigurationProviders.d.ts index 8f739fd6a..0489af918 100644 --- a/@mf-types/shell/compiled-types/src/initFederation/ConfigurationProviders.d.ts +++ b/@mf-types/shell/compiled-types/src/initFederation/ConfigurationProviders.d.ts @@ -1,5 +1,5 @@ import { IconName } from '@scality/core-ui/dist/components/icon/Icon.component'; -import type { SolutionUI } from '@scality/module-federation'; +import { SolutionUI } from '@scality/module-federation'; import React from 'react'; export type OAuth2ProxyConfig = { kind: 'OAuth2Proxy'; diff --git a/tsconfig.json b/tsconfig.json index 830f5d80e..38de1f0b3 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -50,7 +50,7 @@ // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ "baseUrl": "./" /* Base directory to resolve non-absolute module names. */, "paths": { - "*": ["types/*.d.ts", "@mf-types"] + "*": ["types/*.d.ts", "./@mf-types/*"] } /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */, // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ // "typeRoots": [], /* List of folders to include type definitions from. */ From cc5ea2034fc9e86532529cad385b45fef3f16324 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Tue, 9 Jul 2024 10:02:09 +0200 Subject: [PATCH 04/24] fix unit tests --- jestSetupAfterEnv.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/jestSetupAfterEnv.tsx b/jestSetupAfterEnv.tsx index ecdce8e51..e350d6a66 100644 --- a/jestSetupAfterEnv.tsx +++ b/jestSetupAfterEnv.tsx @@ -229,3 +229,5 @@ jest.mock('./src/react/next-architecture/ui/XCoreLibraryProvider', () => { // }; // }), // })); + +jest.mock('@module-federation/enhanced/runtime', () => {}, { virtual: true }); From a62a412332ef678e54731c9dac2ed773ba9bb53b Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Tue, 9 Jul 2024 11:54:36 +0200 Subject: [PATCH 05/24] fix providers --- src/react/FederableApp.tsx | 2 +- src/react/Routes.tsx | 2 +- .../next-architecture/ui/AlertProvider.tsx | 25 ++++++++++++------- .../next-architecture/ui/AuthProvider.tsx | 14 ----------- .../ui/XCoreLibraryProvider.tsx | 1 - src/react/ui-elements/Editor.tsx | 14 +++++++---- .../ui-elements/Veeam/VeeamWelcomeModal.tsx | 8 ++++-- 7 files changed, 33 insertions(+), 33 deletions(-) diff --git a/src/react/FederableApp.tsx b/src/react/FederableApp.tsx index ec79a819f..856d32649 100644 --- a/src/react/FederableApp.tsx +++ b/src/react/FederableApp.tsx @@ -10,7 +10,7 @@ import { useConfig } from './next-architecture/ui/ConfigProvider'; import { LocationAdapterProvider } from './next-architecture/ui/LocationAdapterProvider'; import MetricsAdapterProvider from './next-architecture/ui/MetricsAdapterProvider'; -import { useEffect, useMemo } from 'react'; +import React, { useEffect, useMemo } from 'react'; import { XCoreLibraryProvider } from './next-architecture/ui/XCoreLibraryProvider'; import zenkoUIReducer from './reducers'; diff --git a/src/react/Routes.tsx b/src/react/Routes.tsx index 14e5a1174..f3f49731a 100644 --- a/src/react/Routes.tsx +++ b/src/react/Routes.tsx @@ -279,7 +279,7 @@ function Routes() { }, { label: 'Workflows', - icon: , + icon: , onClick: () => { history.push('/workflows'); }, diff --git a/src/react/next-architecture/ui/AlertProvider.tsx b/src/react/next-architecture/ui/AlertProvider.tsx index 337d49de6..c1a6a1ec5 100644 --- a/src/react/next-architecture/ui/AlertProvider.tsx +++ b/src/react/next-architecture/ui/AlertProvider.tsx @@ -1,4 +1,6 @@ -import { QueryObserverResult } from 'react-query'; +import React from 'react'; +import { FilterLabels } from 'shell/compiled-types/src/alerts/services/alertUtils'; +import { useXcoreConfig } from './ConfigProvider'; type PrometheusAlert = { annotations: Record; @@ -35,15 +37,20 @@ export type Alert = { export const highestAlertToStatus = (alerts?: Alert[]): string => { return (alerts?.[0] && alerts[0].severity) || 'healthy'; }; -export type FilterLabels = { - parents?: string[]; - selectors?: string[]; -} & { [labelName: string]: string }; - -type useAlertsType = ( - filters: FilterLabels, -) => Omit, 'data'> & { alerts?: Alert[] }; export const useAlerts = (filters: FilterLabels) => { return window.shellAlerts.hooks.useAlerts(filters); }; + +const AlertProvider = ({ children }: { children: React.ReactNode }) => { + const xcoreConfig = useXcoreConfig('run'); + return ( + + {children} + + ); +}; + +export default AlertProvider; diff --git a/src/react/next-architecture/ui/AuthProvider.tsx b/src/react/next-architecture/ui/AuthProvider.tsx index 9b6f97f50..5a3ea4b45 100644 --- a/src/react/next-architecture/ui/AuthProvider.tsx +++ b/src/react/next-architecture/ui/AuthProvider.tsx @@ -27,20 +27,6 @@ export function useInstanceId() { return instanceIds[0]; } -type UserDataOriginal = { - session_state?: string; -}; -export type UserData = { - token: string; - username: string; - groups: string[]; - //@ts-expect-error fix this when you are working on it - roles: RoleNames[]; - email: string; - id: string; - original?: UserDataOriginal; -}; - export function useAuth() { return window.shellHooks.useAuth(); } diff --git a/src/react/next-architecture/ui/XCoreLibraryProvider.tsx b/src/react/next-architecture/ui/XCoreLibraryProvider.tsx index aa8b865e3..731c01a48 100644 --- a/src/react/next-architecture/ui/XCoreLibraryProvider.tsx +++ b/src/react/next-architecture/ui/XCoreLibraryProvider.tsx @@ -41,7 +41,6 @@ export function XCoreLibraryProvider({ }: { children: React.ReactNode; }) { - return <>{children}; const xcoreWebfinger = useXcoreConfig(); const instances = useDeployedXcoreInstances(); const federatedImports = instances.map((instance) => { diff --git a/src/react/ui-elements/Editor.tsx b/src/react/ui-elements/Editor.tsx index 4818c0008..b62e4754c 100644 --- a/src/react/ui-elements/Editor.tsx +++ b/src/react/ui-elements/Editor.tsx @@ -1,5 +1,6 @@ -import React, { useContext, useEffect, useMemo, useState } from 'react'; import MonacoEditor, { EditorProps, loader } from '@monaco-editor/react'; +import React, { useMemo, useState } from 'react'; + import { useConfig } from '../next-architecture/ui/ConfigProvider'; type Props = { @@ -23,12 +24,15 @@ const Editor = ({ const config = useConfig(); const { basePath } = config; const [theme, setTheme] = useState(''); - useEffect(() => { - setTheme(localStorage.getItem('theme') === 'dark' ? 'vs-dark' : 'light'); - }, [localStorage.getItem('theme')]); + const { themeMode } = window.shellHooks.useShellThemeSelector(); + + useMemo(() => { + setTheme(themeMode === 'dark' ? 'vs-dark' : 'light'); + }, [themeMode]); useMemo(() => { - loader.config({ paths: { vs: basePath + '/vs' } }); + const path = process.env.NODE_ENV === 'development' ? '/zenko' : basePath; + loader.config({ paths: { vs: path + '/vs' } }); }, []); return ( diff --git a/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx b/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx index a7f0e8f57..36c63139f 100644 --- a/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx +++ b/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx @@ -15,7 +15,9 @@ import { setSessionState } from '../../utils/localStorage'; import { ArtescaLogo } from './ArtescaLogo'; import { VeeamLogo } from './VeeamLogo'; import { useNextLogin } from './useNextLogin'; -import { useAlerts } from '../../next-architecture/ui/AlertProvider'; +import AlertProvider, { + useAlerts, +} from '../../next-architecture/ui/AlertProvider'; const CustomModal = styled(Modal)` background-color: ${(props) => props.theme.backgroundLevel1}; @@ -151,7 +153,9 @@ const VeeamModalComponent = () => { export default function VeeamWelcomeModal(props: NavbarUpdaterComponentProps) { return ( - + + + ); } From 0eecc9a281e74a88a6e4f9a8a4a4ce4a96b7bb57 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Thu, 11 Jul 2024 14:17:44 +0200 Subject: [PATCH 06/24] update @mf-types --- @mf-types/shell/compiled-types/src/FederatedApp.d.ts | 2 ++ @mf-types/shell/compiled-types/src/auth/AuthProvider.d.ts | 2 ++ 2 files changed, 4 insertions(+) diff --git a/@mf-types/shell/compiled-types/src/FederatedApp.d.ts b/@mf-types/shell/compiled-types/src/FederatedApp.d.ts index a48fda098..ddcf5462a 100644 --- a/@mf-types/shell/compiled-types/src/FederatedApp.d.ts +++ b/@mf-types/shell/compiled-types/src/FederatedApp.d.ts @@ -6,6 +6,7 @@ import { useAuth } from './auth/AuthProvider'; import './index.css'; import { useConfigRetriever, useConfig, useDiscoveredViews, useLinkOpener, BuildtimeWebFinger, RuntimeWebFinger } from './initFederation/ConfigurationProviders'; import { useShellConfig } from './initFederation/ShellConfigProvider'; +import { useShellThemeSelector } from './initFederation/ShellThemeSelectorProvider'; import { useDeployedApps } from './initFederation/UIListProvider'; import { useLanguage } from './navbar/lang'; import AlertProvider from './alerts/AlertProvider'; @@ -24,6 +25,7 @@ export type ShellTypes = { useConfig: typeof useConfig; useLinkOpener: typeof useLinkOpener; useDeployedApps: typeof useDeployedApps; + useShellThemeSelector: typeof useShellThemeSelector; }; shellAlerts: { AlertsProvider: typeof AlertProvider; diff --git a/@mf-types/shell/compiled-types/src/auth/AuthProvider.d.ts b/@mf-types/shell/compiled-types/src/auth/AuthProvider.d.ts index 0ec016a55..bc766bd8a 100644 --- a/@mf-types/shell/compiled-types/src/auth/AuthProvider.d.ts +++ b/@mf-types/shell/compiled-types/src/auth/AuthProvider.d.ts @@ -1,3 +1,4 @@ +import { User } from 'oidc-client'; import React from 'react'; export declare function AuthProvider({ children }: { children: React.ReactNode; @@ -8,6 +9,7 @@ export type UserData = { groups: string[]; email: string; id: string; + original: User; }; export declare function useAuth(): { userData?: UserData; From 9be1d3a18e31645d06ea818e846e9b9f3aa2d5e3 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Thu, 11 Jul 2024 14:20:57 +0200 Subject: [PATCH 07/24] remove webpack --- package-lock.json | 3345 +-------------------------------------------- package.json | 26 +- webpack.common.js | 119 -- webpack.dev.js | 97 -- webpack.prod.js | 27 - 5 files changed, 64 insertions(+), 3550 deletions(-) delete mode 100644 webpack.common.js delete mode 100644 webpack.dev.js delete mode 100644 webpack.prod.js diff --git a/package-lock.json b/package-lock.json index bde46d55b..013c154ab 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ "@hookform/resolvers": "^2.8.8", "@monaco-editor/react": "^4.4.5", "@scality/core-ui": "^0.132.0", - "@scality/module-federation": "github:scality/module-federation#1.3.1", + "@scality/module-federation": "^1.3.2", "@types/react-table": "^7.7.10", "@types/react-virtualized": "^9.21.20", "@types/react-window": "^1.8.5", @@ -22,17 +22,13 @@ "aws-sdk": "^2.616.0", "core-js": "^3.6.5", "downshift": "^6.1.7", - "file-loader": "^5.0.2", - "history": "^4.10.1", "immutable": "^4.0.0-rc.12", "lodash.set": "^4.3.2", "luxon": "^2.3.0", "memoize-one": "^5.1.1", "oidc-client": "^1.10.1", - "polished": "3.4.1", "portable-fetch": "^3.0.0", "pretty-bytes": "^6.1.0", - "rc-tooltip": "^3.7.3", "react": "^17.0.2", "react-dom": "^17.0.2", "react-dropzone": "12.0.4", @@ -40,6 +36,7 @@ "react-hook-form": "^7.28.1", "react-query": "3.34.0", "react-redux": "^7.1.3", + "react-router": "5.2.0", "react-router-dom": "5.2.0", "react-table": "^7.3.0", "react-virtualized": "9.21.0", @@ -49,9 +46,7 @@ "redux-oidc": "^4.0.0-beta1", "redux-thunk": "^2.3.0", "styled-components": "^5.2.0", - "url-loader": "^3.0.0", "util": "^0.12.5", - "vega-lite": "^4.0.0-beta.10", "zenkoclient": "github:scality/zenkoclient#1.3.0" }, "devDependencies": { @@ -85,29 +80,19 @@ "@wojtekmaj/enzyme-adapter-react-17": "^0.8.0", "babel-eslint": "^10.0.3", "babel-loader": "^8.0.6", - "compression-webpack-plugin": "^6.0.3", - "css-loader": "^3.4.2", "enzyme": "^3.11.0", "eslint": "^8.10.0", "fs-extra": "^11.1.1", - "html-loader": "^1.0.0", - "html-webpack-plugin": "^4.0.3", "identity-obj-proxy": "^3.0.0", "jest": "^27.5.1", "jest-preview": "^0.3.1", "monaco-editor": "^0.34.1", - "monaco-editor-webpack-plugin": "^7.0.1", "msw": "0.36.8", "node-fetch": "^2.6.1", - "redux-logger": "^3.0.6", "redux-mock-store": "^1.5.4", - "style-loader": "^1.1.3", "ts-node": "^10.9.2", "typescript": "^5.3.2", - "webpack": "^5.88.1", - "webpack-cli": "^5.1.4", - "webpack-dev-server": "^4.15.1", - "webpack-merge": "^5.9.0" + "vega-lite": "^4.0.0-beta.10" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -2368,12 +2353,6 @@ "react": ">=16.x" } }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, "node_modules/@hapi/address": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/@hapi/address/-/address-4.1.0.tgz", @@ -3248,63 +3227,6 @@ "node": ">= 8" } }, - "node_modules/@npmcli/fs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", - "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", - "dev": true, - "dependencies": { - "@gar/promisify": "^1.0.1", - "semver": "^7.3.5" - } - }, - "node_modules/@npmcli/fs/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@npmcli/fs/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@npmcli/fs/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@npmcli/move-file": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", - "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", - "deprecated": "This functionality has been moved to @npmcli/fs", - "dev": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@open-draft/until": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@open-draft/until/-/until-1.0.3.tgz", @@ -4430,75 +4352,14 @@ "integrity": "sha512-FdgD72fmZMPJE99FxvFXth0IL4BbLA93WmBg/lvcJmfkK4Uf90WIlvGwaIUdSePIsdpkZjBPyQcHMQ8OcS8Smg==" }, "node_modules/@scality/module-federation": { - "version": "1.1.0", - "resolved": "git+ssh://git@github.com/scality/module-federation.git#fcced6f064ecd8f152daf5137113d8fd38648ef6", - "dependencies": { - "@scality/core-ui": "github:scality/core-ui.git#v0.39.3", - "polished": "^4.1.3", - "styled-components": "^5.3.0" - }, + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@scality/module-federation/-/module-federation-1.3.2.tgz", + "integrity": "sha512-Ay0dy0+dhC5aU2PAiEzfErRFV/gaE2ZVavEydB60FEBxDqdHTEiPUjDkBxHACPa4t/LBtvNbbBw/5c/A5BEdDw==", "peerDependencies": { "react": "^17.0.2", "react-dom": "^17.0.2" } }, - "node_modules/@scality/module-federation/node_modules/@floating-ui/core": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-0.3.1.tgz", - "integrity": "sha512-ensKY7Ub59u16qsVIFEo2hwTCqZ/r9oZZFh51ivcLGHfUwTn8l1Xzng8RJUe91H/UP8PeqeBronAGx0qmzwk2g==" - }, - "node_modules/@scality/module-federation/node_modules/@floating-ui/dom": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-0.1.10.tgz", - "integrity": "sha512-4kAVoogvQm2N0XE0G6APQJuCNuErjOfPW8Ux7DFxh8+AfugWflwVJ5LDlHOwrwut7z/30NUvdtHzQ3zSip4EzQ==", - "dependencies": { - "@floating-ui/core": "^0.3.0" - } - }, - "node_modules/@scality/module-federation/node_modules/@scality/core-ui": { - "version": "0.39.3", - "resolved": "git+ssh://git@github.com/scality/core-ui.git#1ea730fb7dc570382608b663a0706bc7dc394fef", - "license": "SEE LICENSE IN LICENSE", - "dependencies": { - "@floating-ui/dom": "^0.1.10" - }, - "peerDependencies": { - "@fortawesome/fontawesome-free": "^5.10.2", - "@fortawesome/fontawesome-svg-core": "^1.2.35", - "@fortawesome/free-regular-svg-icons": "^5.15.3", - "@fortawesome/free-solid-svg-icons": "^5.15.3", - "@fortawesome/react-fontawesome": "^0.1.14", - "polished": "3.4.1", - "pretty-bytes": "^5.6.0", - "react": "^17.0.2", - "react-debounce-input": "3.2.2", - "react-dom": "^17.0.2", - "react-router": "^5.2.0", - "react-router-dom": "^5.2.0", - "react-select": "4.3.1", - "react-table": "^7.7.0", - "react-virtualized": "9.22.3", - "react-virtualized-auto-sizer": "^1.0.5", - "react-window": "^1.8.6", - "styled-components": "^4.1.2", - "styled-system": "^5.1.5", - "vega": "^5.17.3", - "vega-embed": "^6.0.0", - "vega-lite": "^5.0.0", - "vega-tooltip": "^0.27.0" - } - }, - "node_modules/@scality/module-federation/node_modules/polished": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/polished/-/polished-4.3.1.tgz", - "integrity": "sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==", - "dependencies": { - "@babel/runtime": "^7.17.8" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@sindresorhus/is": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", @@ -5362,12 +5223,6 @@ "hoist-non-react-statics": "^3.3.0" } }, - "node_modules/@types/html-minifier-terser": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", - "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", - "dev": true - }, "node_modules/@types/http-errors": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", @@ -5435,7 +5290,8 @@ "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true }, "node_modules/@types/lodash": { "version": "4.14.202", @@ -5664,12 +5520,6 @@ "@types/node": "*" } }, - "node_modules/@types/source-list-map": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.6.tgz", - "integrity": "sha512-5JcVt1u5HDmlXkwOD2nslZVllBBc7HDuOICfiZah2Z0is8M8g+ddAEawbmd3VjedfDHBzxCaXLs07QEmb7y54g==", - "dev": true - }, "node_modules/@types/stack-utils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", @@ -5687,12 +5537,6 @@ "csstype": "^3.0.2" } }, - "node_modules/@types/tapable": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.12.tgz", - "integrity": "sha512-bTHG8fcxEqv1M9+TD14P8ok8hjxoOCkfKc8XXLaaD05kI7ohpeI956jtDOD3XHKBQrlyPughUtzm1jtVhHpA5Q==", - "dev": true - }, "node_modules/@types/testing-library__jest-dom": { "version": "5.14.9", "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.9.tgz", @@ -5711,49 +5555,6 @@ "@types/node": "*" } }, - "node_modules/@types/uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-Hm/T0kV3ywpJyMGNbsItdivRhYNCQQf1IIsYsXnoVPES4t+FMLyDe0/K+Ea7ahWtMtSNb22ZdY7MIyoD9rqARg==", - "dev": true, - "dependencies": { - "source-map": "^0.6.1" - } - }, - "node_modules/@types/webpack": { - "version": "4.41.38", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.38.tgz", - "integrity": "sha512-oOW7E931XJU1mVfCnxCVgv8GLFL768pDO5u2Gzk82i8yTIgX6i7cntyZOkZYb/JtYM8252SN9bQp9tgkVDSsRw==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/tapable": "^1", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "anymatch": "^3.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/@types/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-4nZOdMwSPHZ4pTEZzSp0AsTM4K7Qmu40UKW4tJDiOVs20UzYF9l+qUe4s0ftfN0pin06n+5cWWDJXH+sbhAiDw==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.7.3" - } - }, - "node_modules/@types/webpack-sources/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, "node_modules/@types/ws": { "version": "8.5.10", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", @@ -6217,50 +6018,6 @@ "@xtuc/long": "4.2.2" } }, - "node_modules/@webpack-cli/configtest": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", - "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", - "dev": true, - "engines": { - "node": ">=14.15.0" - }, - "peerDependencies": { - "webpack": "5.x.x", - "webpack-cli": "5.x.x" - } - }, - "node_modules/@webpack-cli/info": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", - "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", - "dev": true, - "engines": { - "node": ">=14.15.0" - }, - "peerDependencies": { - "webpack": "5.x.x", - "webpack-cli": "5.x.x" - } - }, - "node_modules/@webpack-cli/serve": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", - "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", - "dev": true, - "engines": { - "node": ">=14.15.0" - }, - "peerDependencies": { - "webpack": "5.x.x", - "webpack-cli": "5.x.x" - }, - "peerDependenciesMeta": { - "webpack-dev-server": { - "optional": true - } - } - }, "node_modules/@welldone-software/why-did-you-render": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/@welldone-software/why-did-you-render/-/why-did-you-render-4.3.2.tgz", @@ -6415,14 +6172,6 @@ "node": ">=0.4.0" } }, - "node_modules/add-dom-event-listener": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/add-dom-event-listener/-/add-dom-event-listener-1.1.0.tgz", - "integrity": "sha512-WCxx1ixHT0GQU9hb0KI/mhgRQhnU+U3GvwY6ZvVjYq8rsihIGoaIOUbY0yMPBxLH5MDtr0kz3fisWGNcbWW7Jw==", - "dependencies": { - "object-assign": "4.x" - } - }, "node_modules/adm-zip": { "version": "0.5.14", "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.14.tgz", @@ -6444,23 +6193,11 @@ "node": ">= 6.0.0" } }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -6515,6 +6252,7 @@ "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, "peerDependencies": { "ajv": "^6.9.1" } @@ -6714,25 +6452,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.reduce": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.6.tgz", - "integrity": "sha512-UW+Mz8LG/sPSU8jRDCjVr6J/ZKAGpHfwrZ6kWTG5qCxIEiXdVshqGnu5vEZA8S1y6X4aCSbQZ0/EEsfvEvBiSg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/arraybuffer.prototype.slice": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", @@ -7123,6 +6842,7 @@ "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, "engines": { "node": "*" } @@ -7445,53 +7165,6 @@ "node": ">= 0.8" } }, - "node_modules/cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/cacache/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/cache-content-type": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz", @@ -7573,16 +7246,6 @@ "node": ">=6" } }, - "node_modules/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dev": true, - "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, "node_modules/camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -7746,15 +7409,6 @@ "node": ">= 6" } }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/chrome-trace-event": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", @@ -7781,27 +7435,6 @@ "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==" }, - "node_modules/clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", - "dev": true, - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 4.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/cli-boxes": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", @@ -7881,20 +7514,6 @@ "node": ">=0.8" } }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/clone-response": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", @@ -7965,34 +7584,12 @@ "node": ">= 0.8" } }, - "node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, "node_modules/commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, - "node_modules/component-classes": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/component-classes/-/component-classes-1.2.6.tgz", - "integrity": "sha512-hPFGULxdwugu1QWW3SvVOCUHLzO34+a2J6Wqy0c5ASQkfi9/8nZcBB0ZohaEbXOQlCflMAEMmEWk7u7BVs4koA==", - "dependencies": { - "component-indexof": "0.0.3" - } - }, - "node_modules/component-indexof": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-indexof/-/component-indexof-0.0.3.tgz", - "integrity": "sha512-puDQKvx/64HZXb4hBwIcvQLaLgux8o1CbWl39s41hrIIZDl1lJiD5jc22gj3RBeGK0ovxALDYpIbyjqDUUl0rw==" - }, "node_modules/compressible": { "version": "2.0.18", "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", @@ -8023,47 +7620,6 @@ "node": ">= 0.8.0" } }, - "node_modules/compression-webpack-plugin": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/compression-webpack-plugin/-/compression-webpack-plugin-6.1.2.tgz", - "integrity": "sha512-z6xtgKP3Uds2lyrkx2PGwrE9FZT8raHTC3ImFrY3e0faAfSfVIV63JmR+sfk5pf4OhUj3E4XdjZBCKpjYWIw6Q==", - "dev": true, - "dependencies": { - "cacache": "^15.0.5", - "find-cache-dir": "^3.3.1", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1", - "webpack-sources": "^1.4.3" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/compression-webpack-plugin/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/compression/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -8318,15 +7874,6 @@ "node": ">=8" } }, - "node_modules/css-animation": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/css-animation/-/css-animation-1.6.1.tgz", - "integrity": "sha512-/48+/BaEaHRY6kNQ2OIPzKf9A6g8WjZYjhiNDNuIVbsm5tXCGIAsHDjB4Xu1C4vXJtUWZo26O68OQkDpNBaPog==", - "dependencies": { - "babel-runtime": "6.x", - "component-classes": "^1.2.5" - } - }, "node_modules/css-color-keywords": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", @@ -8335,63 +7882,6 @@ "node": ">=4" } }, - "node_modules/css-loader": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", - "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/css-loader/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/css-loader/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -8436,18 +7926,6 @@ "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", "dev": true }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/cssom": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", @@ -8784,12 +8262,6 @@ "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", "dev": true }, - "node_modules/deep-diff": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/deep-diff/-/deep-diff-0.3.8.tgz", - "integrity": "sha512-yVn6RZmHiGnxRKR9sJb3iVV2XTF1Ghh2DiWRZ3dMnGc43yUdWWF/kX6lQyk3+P84iprfWKU/8zFTrlkvtFm1ug==", - "dev": true - }, "node_modules/deep-eql": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.0.tgz", @@ -9084,20 +8556,6 @@ "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", "dev": true }, - "node_modules/dom-align": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.12.4.tgz", - "integrity": "sha512-R8LUSEay/68zE5c8/3BDxiTEvgb4xZTF0RKmAHfiEVN3klfIpXfi2/QCoiWPccVQ0J/ZGdz9OjzL4uJEP/MRAw==" - }, - "node_modules/dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "dev": true, - "dependencies": { - "utila": "~0.4" - } - }, "node_modules/dom-helpers": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", @@ -9184,16 +8642,6 @@ "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "node_modules/dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "dev": true, - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/dot-prop": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", @@ -9266,6 +8714,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, "engines": { "node": ">= 4" } @@ -10233,15 +9682,6 @@ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "node_modules/fastest-levenshtein": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", - "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", - "dev": true, - "engines": { - "node": ">= 4.9.1" - } - }, "node_modules/fastq": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", @@ -10299,49 +9739,6 @@ "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/file-loader": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-5.1.0.tgz", - "integrity": "sha512-u/VkLGskw3Ue59nyOwUwXI/6nuBCo7KBkniB/l7ICwr/7cPNGsL1WCXUp3GB0qgOOKU1TiP49bv4DZF/LJqprg==", - "dependencies": { - "loader-utils": "^1.4.0", - "schema-utils": "^2.5.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/file-loader/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/file-loader/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/file-selector": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-0.4.0.tgz", @@ -10516,15 +9913,6 @@ "node": ">= 8" } }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true, - "bin": { - "flat": "cli.js" - } - }, "node_modules/flat-cache": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", @@ -10646,18 +10034,6 @@ "node": ">=14.14" } }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/fs-monkey": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", @@ -11137,15 +10513,6 @@ "node": ">= 0.4" } }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "bin": { - "he": "bin/he" - } - }, "node_modules/headers-utils": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/headers-utils/-/headers-utils-3.0.2.tgz", @@ -11284,210 +10651,6 @@ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, - "node_modules/html-loader": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/html-loader/-/html-loader-1.3.2.tgz", - "integrity": "sha512-DEkUwSd0sijK5PF3kRWspYi56XP7bTNkyg5YWSzBdjaSDmvCufep5c4Vpb3PBf6lUL0YPtLwBfy9fL0t5hBAGA==", - "dev": true, - "dependencies": { - "html-minifier-terser": "^5.1.1", - "htmlparser2": "^4.1.0", - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/html-loader/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/html-loader/node_modules/dom-serializer/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/html-loader/node_modules/domhandler": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz", - "integrity": "sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/html-loader/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/html-loader/node_modules/domutils/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/html-loader/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/html-loader/node_modules/htmlparser2": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz", - "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^3.0.0", - "domutils": "^2.0.0", - "entities": "^2.0.0" - } - }, - "node_modules/html-loader/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", - "dev": true, - "dependencies": { - "camel-case": "^4.1.1", - "clean-css": "^4.2.3", - "commander": "^4.1.1", - "he": "^1.2.0", - "param-case": "^3.0.3", - "relateurl": "^0.2.7", - "terser": "^4.6.3" - }, - "bin": { - "html-minifier-terser": "cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/html-webpack-plugin": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", - "dev": true, - "dependencies": { - "@types/html-minifier-terser": "^5.0.0", - "@types/tapable": "^1.0.5", - "@types/webpack": "^4.41.8", - "html-minifier-terser": "^5.0.1", - "loader-utils": "^1.2.3", - "lodash": "^4.17.20", - "pretty-error": "^2.1.1", - "tapable": "^1.1.3", - "util.promisify": "1.0.0" - }, - "engines": { - "node": ">=6.9" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/html-webpack-plugin/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/html-webpack-plugin/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/htmlparser2": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", @@ -11680,18 +10843,6 @@ "node": ">=0.10.0" } }, - "node_modules/icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "dependencies": { - "postcss": "^7.0.14" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/identity-obj-proxy": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz", @@ -11784,12 +10935,6 @@ "node": ">=8" } }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -12192,18 +11337,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-potential-custom-element-name": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", @@ -12402,15 +11535,6 @@ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/isomorphic-ws": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz", @@ -13434,7 +12558,8 @@ "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", @@ -13497,15 +12622,6 @@ "json-buffer": "3.0.1" } }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -13823,15 +12939,6 @@ "loose-envify": "cli.js" } }, - "node_modules/lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dev": true, - "dependencies": { - "tslib": "^2.0.3" - } - }, "node_modules/lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", @@ -13999,17 +13106,6 @@ "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" }, - "node_modules/mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", @@ -14093,95 +13189,11 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/moment": { "version": "2.30.1", "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", @@ -14196,19 +13208,6 @@ "integrity": "sha512-FKc80TyiMaruhJKKPz5SpJPIjL+dflGvz4CpuThaPMc94AyN7SeC9HQ8hrvaxX7EyHdJcUY5i4D0gNyJj1vSZQ==", "dev": true }, - "node_modules/monaco-editor-webpack-plugin": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/monaco-editor-webpack-plugin/-/monaco-editor-webpack-plugin-7.1.0.tgz", - "integrity": "sha512-ZjnGINHN963JQkFqjjcBtn1XBtUATDZBMgNQhDQwd78w2ukRhFXAPNgWuacaQiDZsUr4h1rWv5Mv6eriKuOSzA==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.2" - }, - "peerDependencies": { - "monaco-editor": ">= 0.31.0", - "webpack": "^4.5.0 || 5.x" - } - }, "node_modules/moo": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz", @@ -14463,16 +13462,6 @@ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, - "node_modules/no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dev": true, - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, "node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", @@ -14684,25 +13673,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/object.getownpropertydescriptors": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.7.tgz", - "integrity": "sha512-PrJz0C2xJ58FNn11XV2lr4Jt5Gzl94qpy9Lu0JlfEj14z88sqbSBJCBEzdlNUCzY2gburhbrwOZ5BHCmuNUy0g==", - "dev": true, - "dependencies": { - "array.prototype.reduce": "^1.0.6", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "safe-array-concat": "^1.0.0" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/object.values": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", @@ -14932,21 +13902,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/p-retry": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", @@ -14984,16 +13939,6 @@ "node": ">=8" } }, - "node_modules/param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "dev": true, - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -15065,16 +14010,6 @@ "node": ">= 0.8" } }, - "node_modules/pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dev": true, - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -15129,12 +14064,7 @@ "node_modules/performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" - }, - "node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", "dev": true }, "node_modules/picomatch": { @@ -15283,23 +14213,6 @@ "node": ">= 0.4" } }, - "node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, "node_modules/postcss-import": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", @@ -15361,69 +14274,6 @@ "node": ">= 14" } }, - "node_modules/postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "dependencies": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "dependencies": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.15", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz", - "integrity": "sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/postcss-value-parser": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", @@ -15458,16 +14308,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pretty-error": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", - "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", - "dev": true, - "dependencies": { - "lodash": "^4.17.20", - "renderkid": "^2.0.4" - } - }, "node_modules/pretty-format": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", @@ -15500,12 +14340,6 @@ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "dev": true }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, "node_modules/prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -15582,6 +14416,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, "engines": { "node": ">=6" } @@ -15651,6 +14486,7 @@ "version": "3.4.1", "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "dev": true, "dependencies": { "performance-now": "^2.1.0" } @@ -15745,72 +14581,6 @@ "rc": "cli.js" } }, - "node_modules/rc-align": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-2.4.5.tgz", - "integrity": "sha512-nv9wYUYdfyfK+qskThf4BQUSIadeI/dCsfaMZfNEoxm9HwOIioQ+LyqmMK6jWHAZQgOzMLaqawhuBXlF63vgjw==", - "dependencies": { - "babel-runtime": "^6.26.0", - "dom-align": "^1.7.0", - "prop-types": "^15.5.8", - "rc-util": "^4.0.4" - } - }, - "node_modules/rc-animate": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-2.11.1.tgz", - "integrity": "sha512-1NyuCGFJG/0Y+9RKh5y/i/AalUCA51opyyS/jO2seELpgymZm2u9QV3xwODwEuzkmeQ1BDPxMLmYLcTJedPlkQ==", - "dependencies": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "css-animation": "^1.3.2", - "prop-types": "15.x", - "raf": "^3.4.0", - "rc-util": "^4.15.3", - "react-lifecycles-compat": "^3.0.4" - } - }, - "node_modules/rc-tooltip": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-3.7.3.tgz", - "integrity": "sha512-dE2ibukxxkrde7wH9W8ozHKUO4aQnPZ6qBHtrTH9LoO836PjDdiaWO73fgPB05VfJs9FbZdmGPVEbXCeOP99Ww==", - "dependencies": { - "babel-runtime": "6.x", - "prop-types": "^15.5.8", - "rc-trigger": "^2.2.2" - } - }, - "node_modules/rc-trigger": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-2.6.5.tgz", - "integrity": "sha512-m6Cts9hLeZWsTvWnuMm7oElhf+03GOjOLfTuU0QmdB9ZrW7jR2IpI5rpNM7i9MvAAlMAmTx5Zr7g3uu/aMvZAw==", - "dependencies": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "prop-types": "15.x", - "rc-align": "^2.4.0", - "rc-animate": "2.x", - "rc-util": "^4.4.0", - "react-lifecycles-compat": "^3.0.4" - } - }, - "node_modules/rc-util": { - "version": "4.21.1", - "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", - "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", - "dependencies": { - "add-dom-event-listener": "^1.1.0", - "prop-types": "^15.5.10", - "react-is": "^16.12.0", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.1.0" - } - }, - "node_modules/rc-util/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, "node_modules/rc/node_modules/strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -16231,15 +15001,6 @@ "@babel/runtime": "^7.9.2" } }, - "node_modules/redux-logger": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/redux-logger/-/redux-logger-3.0.6.tgz", - "integrity": "sha512-JoCIok7bg/XpqA1JqCqXFypuqBbQzGQySrhFzewB7ThcnysTO30l4VCst86AuB9T9tuT03MAA56Jw2PNhRSNCg==", - "dev": true, - "dependencies": { - "deep-diff": "^0.3.5" - } - }, "node_modules/redux-mock-store": { "version": "1.5.4", "resolved": "https://registry.npmjs.org/redux-mock-store/-/redux-mock-store-1.5.4.tgz", @@ -16379,141 +15140,11 @@ "jsesc": "bin/jsesc" } }, - "node_modules/relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/remove-accents": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==" }, - "node_modules/renderkid": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", - "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", - "dev": true, - "dependencies": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^3.0.1" - } - }, - "node_modules/renderkid/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/renderkid/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/renderkid/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "node_modules/renderkid/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -16844,6 +15475,7 @@ "version": "2.7.1", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, "dependencies": { "@types/json-schema": "^7.0.5", "ajv": "^6.12.4", @@ -16974,15 +15606,6 @@ "node": ">= 0.8" } }, - "node_modules/serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, "node_modules/serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", @@ -17110,18 +15733,6 @@ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/shallowequal": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", @@ -17276,12 +15887,6 @@ "integrity": "sha512-2sqgzeFlid6N4Z2fUQ1cvFmTOLRi/sEDzSQ0OKYchqgoPmQBVyM3959qYx3fpS6Esef80KjmpgPeEr028dP3OA==", "dev": true }, - "node_modules/source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -17337,18 +15942,6 @@ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, - "node_modules/ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/stack-utils": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", @@ -17599,26 +16192,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/style-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", - "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, "node_modules/style-value-types": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/style-value-types/-/style-value-types-4.1.4.tgz", @@ -17773,47 +16346,6 @@ "resolved": "https://registry.npmjs.org/synchronous-promise/-/synchronous-promise-2.0.17.tgz", "integrity": "sha512-AsS729u2RHUfEra9xJrE39peJcc2stq2+poBXX8bcM08Y6g9j/i/PUzwNQqkaJde7Ntg1TO7bSREbR5sdosQ+g==" }, - "node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", - "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", - "dev": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/tar/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/tar/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/telejson": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/telejson/-/telejson-7.2.0.tgz", @@ -17838,23 +16370,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/terser": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", - "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", - "dev": true, - "dependencies": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/terser-webpack-plugin": { "version": "5.3.10", "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", @@ -17940,12 +16455,6 @@ "node": ">=10" } }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", @@ -18411,24 +16920,6 @@ "node": ">=4" } }, - "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "dependencies": { - "unique-slug": "^2.0.0" - } - }, - "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4" - } - }, "node_modules/unique-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", @@ -18578,6 +17069,7 @@ "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, "dependencies": { "punycode": "^2.1.0" } @@ -18591,56 +17083,6 @@ "querystring": "0.2.0" } }, - "node_modules/url-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-3.0.0.tgz", - "integrity": "sha512-a84JJbIA5xTFTWyjjcPdnsu+41o/SNE8SpXMdUvXs6Q+LuhCD9E2+0VCiuDWqgo3GGXVlFHzArDmBpj9PgWn4A==", - "dependencies": { - "loader-utils": "^1.2.3", - "mime": "^2.4.4", - "schema-utils": "^2.5.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "file-loader": "*", - "webpack": "^4.0.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "file-loader": { - "optional": true - } - } - }, - "node_modules/url-loader/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/url-loader/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/url-parse": { "version": "1.5.10", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", @@ -18685,22 +17127,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, - "node_modules/util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "node_modules/utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==", - "dev": true - }, "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -18957,6 +17383,7 @@ "version": "4.17.0", "resolved": "https://registry.npmjs.org/vega-lite/-/vega-lite-4.17.0.tgz", "integrity": "sha512-MO2XsaVZqx6iWWmVA5vwYFamvhRUsKfVp7n0pNlkZ2/21cuxelSl92EePZ2YGmzL6z4/3K7r/45zaG8p+qNHeg==", + "dev": true, "dependencies": { "@types/clone": "~2.1.0", "@types/fast-json-stable-stringify": "^2.0.0", @@ -18984,17 +17411,20 @@ "node_modules/vega-lite/node_modules/tslib": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz", - "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ==" + "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ==", + "dev": true }, "node_modules/vega-lite/node_modules/vega-event-selector": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/vega-event-selector/-/vega-event-selector-2.0.6.tgz", - "integrity": "sha512-UwCu50Sqd8kNZ1X/XgiAY+QAyQUmGFAwyDu7y0T5fs6/TPQnDo/Bo346NgSgINBEhEKOAMY1Nd/rPOk4UEm/ew==" + "integrity": "sha512-UwCu50Sqd8kNZ1X/XgiAY+QAyQUmGFAwyDu7y0T5fs6/TPQnDo/Bo346NgSgINBEhEKOAMY1Nd/rPOk4UEm/ew==", + "dev": true }, "node_modules/vega-lite/node_modules/vega-expression": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/vega-expression/-/vega-expression-3.0.1.tgz", "integrity": "sha512-+UwOFEkBnAWo8Zud6i8O4Pd2W6QqmPUOaAhjNtj0OxRL+d+Duoy7M4edUDZ+YuoUcMnjjBFfDQu7oRAA1fIMEQ==", + "dev": true, "dependencies": { "vega-util": "^1.15.2" } @@ -19002,12 +17432,14 @@ "node_modules/vega-lite/node_modules/vega-util": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/vega-util/-/vega-util-1.16.1.tgz", - "integrity": "sha512-FdgD72fmZMPJE99FxvFXth0IL4BbLA93WmBg/lvcJmfkK4Uf90WIlvGwaIUdSePIsdpkZjBPyQcHMQ8OcS8Smg==" + "integrity": "sha512-FdgD72fmZMPJE99FxvFXth0IL4BbLA93WmBg/lvcJmfkK4Uf90WIlvGwaIUdSePIsdpkZjBPyQcHMQ8OcS8Smg==", + "dev": true }, "node_modules/vega-lite/node_modules/yargs": { "version": "16.0.3", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.0.3.tgz", "integrity": "sha512-6+nLw8xa9uK1BOEOykaiYAJVh6/CjxWXK/q9b5FpRgNslt8s22F2xMBqVIKgCRjNgGvGPBy8Vog7WN7yh4amtA==", + "dev": true, "dependencies": { "cliui": "^7.0.0", "escalade": "^3.0.2", @@ -19429,272 +17861,6 @@ } } }, - "node_modules/webpack-cli": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", - "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", - "dev": true, - "dependencies": { - "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^2.1.1", - "@webpack-cli/info": "^2.0.2", - "@webpack-cli/serve": "^2.0.5", - "colorette": "^2.0.14", - "commander": "^10.0.1", - "cross-spawn": "^7.0.3", - "envinfo": "^7.7.3", - "fastest-levenshtein": "^1.0.12", - "import-local": "^3.0.2", - "interpret": "^3.1.1", - "rechoir": "^0.8.0", - "webpack-merge": "^5.7.3" - }, - "bin": { - "webpack-cli": "bin/cli.js" - }, - "engines": { - "node": ">=14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "5.x.x" - }, - "peerDependenciesMeta": { - "@webpack-cli/generators": { - "optional": true - }, - "webpack-bundle-analyzer": { - "optional": true - }, - "webpack-dev-server": { - "optional": true - } - } - }, - "node_modules/webpack-cli/node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "dev": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.15.1", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz", - "integrity": "sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==", - "dev": true, - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.5", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "launch-editor": "^2.6.0", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.13.0" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack": { - "optional": true - }, - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack-dev-server/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-merge": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", - "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", - "dev": true, - "dependencies": { - "clone-deep": "^4.0.1", - "flat": "^5.0.2", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "dependencies": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - }, "node_modules/webpack/node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", @@ -19873,12 +18039,6 @@ "node": ">=8" } }, - "node_modules/wildcard": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", - "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", - "dev": true - }, "node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -21661,12 +19821,6 @@ "prop-types": "^15.8.1" } }, - "@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, "@hapi/address": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/@hapi/address/-/address-4.1.0.tgz", @@ -22380,52 +20534,6 @@ "fastq": "^1.6.0" } }, - "@npmcli/fs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", - "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", - "dev": true, - "requires": { - "@gar/promisify": "^1.0.1", - "semver": "^7.3.5" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "@npmcli/move-file": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", - "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", - "dev": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - } - }, "@open-draft/until": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@open-draft/until/-/until-1.0.3.tgz", @@ -23257,43 +21365,9 @@ } }, "@scality/module-federation": { - "version": "git+ssh://git@github.com/scality/module-federation.git#fcced6f064ecd8f152daf5137113d8fd38648ef6", - "from": "@scality/module-federation@github:scality/module-federation#1.3.1", - "requires": { - "@scality/core-ui": "github:scality/core-ui.git#v0.39.3", - "polished": "^4.1.3", - "styled-components": "^5.3.0" - }, - "dependencies": { - "@floating-ui/core": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-0.3.1.tgz", - "integrity": "sha512-ensKY7Ub59u16qsVIFEo2hwTCqZ/r9oZZFh51ivcLGHfUwTn8l1Xzng8RJUe91H/UP8PeqeBronAGx0qmzwk2g==" - }, - "@floating-ui/dom": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-0.1.10.tgz", - "integrity": "sha512-4kAVoogvQm2N0XE0G6APQJuCNuErjOfPW8Ux7DFxh8+AfugWflwVJ5LDlHOwrwut7z/30NUvdtHzQ3zSip4EzQ==", - "requires": { - "@floating-ui/core": "^0.3.0" - } - }, - "@scality/core-ui": { - "version": "git+ssh://git@github.com/scality/core-ui.git#1ea730fb7dc570382608b663a0706bc7dc394fef", - "from": "@scality/core-ui@github:scality/core-ui.git#v0.39.3", - "requires": { - "@floating-ui/dom": "^0.1.10" - } - }, - "polished": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/polished/-/polished-4.3.1.tgz", - "integrity": "sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==", - "requires": { - "@babel/runtime": "^7.17.8" - } - } - } + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@scality/module-federation/-/module-federation-1.3.2.tgz", + "integrity": "sha512-Ay0dy0+dhC5aU2PAiEzfErRFV/gaE2ZVavEydB60FEBxDqdHTEiPUjDkBxHACPa4t/LBtvNbbBw/5c/A5BEdDw==" }, "@sindresorhus/is": { "version": "0.14.0", @@ -23969,12 +22043,6 @@ "hoist-non-react-statics": "^3.3.0" } }, - "@types/html-minifier-terser": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", - "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", - "dev": true - }, "@types/http-errors": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", @@ -24042,7 +22110,8 @@ "@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true }, "@types/lodash": { "version": "4.14.202", @@ -24271,12 +22340,6 @@ "@types/node": "*" } }, - "@types/source-list-map": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.6.tgz", - "integrity": "sha512-5JcVt1u5HDmlXkwOD2nslZVllBBc7HDuOICfiZah2Z0is8M8g+ddAEawbmd3VjedfDHBzxCaXLs07QEmb7y54g==", - "dev": true - }, "@types/stack-utils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", @@ -24294,12 +22357,6 @@ "csstype": "^3.0.2" } }, - "@types/tapable": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.12.tgz", - "integrity": "sha512-bTHG8fcxEqv1M9+TD14P8ok8hjxoOCkfKc8XXLaaD05kI7ohpeI956jtDOD3XHKBQrlyPughUtzm1jtVhHpA5Q==", - "dev": true - }, "@types/testing-library__jest-dom": { "version": "5.14.9", "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.9.tgz", @@ -24318,48 +22375,6 @@ "@types/node": "*" } }, - "@types/uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-Hm/T0kV3ywpJyMGNbsItdivRhYNCQQf1IIsYsXnoVPES4t+FMLyDe0/K+Ea7ahWtMtSNb22ZdY7MIyoD9rqARg==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - } - }, - "@types/webpack": { - "version": "4.41.38", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.38.tgz", - "integrity": "sha512-oOW7E931XJU1mVfCnxCVgv8GLFL768pDO5u2Gzk82i8yTIgX6i7cntyZOkZYb/JtYM8252SN9bQp9tgkVDSsRw==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/tapable": "^1", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "anymatch": "^3.0.0", - "source-map": "^0.6.0" - } - }, - "@types/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-4nZOdMwSPHZ4pTEZzSp0AsTM4K7Qmu40UKW4tJDiOVs20UzYF9l+qUe4s0ftfN0pin06n+5cWWDJXH+sbhAiDw==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.7.3" - }, - "dependencies": { - "source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true - } - } - }, "@types/ws": { "version": "8.5.10", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", @@ -24713,24 +22728,6 @@ "@xtuc/long": "4.2.2" } }, - "@webpack-cli/configtest": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", - "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", - "dev": true - }, - "@webpack-cli/info": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", - "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", - "dev": true - }, - "@webpack-cli/serve": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", - "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", - "dev": true - }, "@welldone-software/why-did-you-render": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/@welldone-software/why-did-you-render/-/why-did-you-render-4.3.2.tgz", @@ -24842,14 +22839,6 @@ "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", "dev": true }, - "add-dom-event-listener": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/add-dom-event-listener/-/add-dom-event-listener-1.1.0.tgz", - "integrity": "sha512-WCxx1ixHT0GQU9hb0KI/mhgRQhnU+U3GvwY6ZvVjYq8rsihIGoaIOUbY0yMPBxLH5MDtr0kz3fisWGNcbWW7Jw==", - "requires": { - "object-assign": "4.x" - } - }, "adm-zip": { "version": "0.5.14", "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.14.tgz", @@ -24865,20 +22854,11 @@ "debug": "4" } }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, "ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -24918,7 +22898,8 @@ "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==" + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true }, "ansi-align": { "version": "3.0.1", @@ -25060,19 +23041,6 @@ "es-shim-unscopables": "^1.0.0" } }, - "array.prototype.reduce": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.6.tgz", - "integrity": "sha512-UW+Mz8LG/sPSU8jRDCjVr6J/ZKAGpHfwrZ6kWTG5qCxIEiXdVshqGnu5vEZA8S1y6X4aCSbQZ0/EEsfvEvBiSg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - } - }, "arraybuffer.prototype.slice": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", @@ -25368,7 +23336,8 @@ "big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true }, "binary-extensions": { "version": "2.2.0", @@ -25605,49 +23574,6 @@ "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", "dev": true }, - "cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "dev": true, - "requires": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, "cache-content-type": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz", @@ -25713,16 +23639,6 @@ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" }, - "camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dev": true, - "requires": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -25835,12 +23751,6 @@ } } }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, "chrome-trace-event": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", @@ -25864,21 +23774,6 @@ "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==" }, - "clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, "cli-boxes": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", @@ -25933,17 +23828,6 @@ "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==" }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, "clone-response": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", @@ -25998,31 +23882,12 @@ "delayed-stream": "~1.0.0" } }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true - }, "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, - "component-classes": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/component-classes/-/component-classes-1.2.6.tgz", - "integrity": "sha512-hPFGULxdwugu1QWW3SvVOCUHLzO34+a2J6Wqy0c5ASQkfi9/8nZcBB0ZohaEbXOQlCflMAEMmEWk7u7BVs4koA==", - "requires": { - "component-indexof": "0.0.3" - } - }, - "component-indexof": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-indexof/-/component-indexof-0.0.3.tgz", - "integrity": "sha512-puDQKvx/64HZXb4hBwIcvQLaLgux8o1CbWl39s41hrIIZDl1lJiD5jc22gj3RBeGK0ovxALDYpIbyjqDUUl0rw==" - }, "compressible": { "version": "2.0.18", "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", @@ -26070,32 +23935,6 @@ } } }, - "compression-webpack-plugin": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/compression-webpack-plugin/-/compression-webpack-plugin-6.1.2.tgz", - "integrity": "sha512-z6xtgKP3Uds2lyrkx2PGwrE9FZT8raHTC3ImFrY3e0faAfSfVIV63JmR+sfk5pf4OhUj3E4XdjZBCKpjYWIw6Q==", - "dev": true, - "requires": { - "cacache": "^15.0.5", - "find-cache-dir": "^3.3.1", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1", - "webpack-sources": "^1.4.3" - }, - "dependencies": { - "schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, "compute-scroll-into-view": { "version": "1.0.20", "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz", @@ -26285,63 +24124,11 @@ "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", "dev": true }, - "css-animation": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/css-animation/-/css-animation-1.6.1.tgz", - "integrity": "sha512-/48+/BaEaHRY6kNQ2OIPzKf9A6g8WjZYjhiNDNuIVbsm5tXCGIAsHDjB4Xu1C4vXJtUWZo26O68OQkDpNBaPog==", - "requires": { - "babel-runtime": "6.x", - "component-classes": "^1.2.5" - } - }, "css-color-keywords": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==" }, - "css-loader": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", - "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^6.3.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, "css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -26377,12 +24164,6 @@ "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", "dev": true }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, "cssom": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", @@ -26624,12 +24405,6 @@ "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", "dev": true }, - "deep-diff": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/deep-diff/-/deep-diff-0.3.8.tgz", - "integrity": "sha512-yVn6RZmHiGnxRKR9sJb3iVV2XTF1Ghh2DiWRZ3dMnGc43yUdWWF/kX6lQyk3+P84iprfWKU/8zFTrlkvtFm1ug==", - "dev": true - }, "deep-eql": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.0.tgz", @@ -26855,20 +24630,6 @@ "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", "dev": true }, - "dom-align": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.12.4.tgz", - "integrity": "sha512-R8LUSEay/68zE5c8/3BDxiTEvgb4xZTF0RKmAHfiEVN3klfIpXfi2/QCoiWPccVQ0J/ZGdz9OjzL4uJEP/MRAw==" - }, - "dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "dev": true, - "requires": { - "utila": "~0.4" - } - }, "dom-helpers": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", @@ -26932,16 +24693,6 @@ "domhandler": "^5.0.3" } }, - "dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "dev": true, - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "dot-prop": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", @@ -27001,7 +24752,8 @@ "emojis-list": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true }, "encodeurl": { "version": "1.0.2", @@ -27756,12 +25508,6 @@ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "fastest-levenshtein": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", - "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", - "dev": true - }, "fastq": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", @@ -27807,35 +25553,6 @@ "flat-cache": "^3.0.4" } }, - "file-loader": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-5.1.0.tgz", - "integrity": "sha512-u/VkLGskw3Ue59nyOwUwXI/6nuBCo7KBkniB/l7ICwr/7cPNGsL1WCXUp3GB0qgOOKU1TiP49bv4DZF/LJqprg==", - "requires": { - "loader-utils": "^1.4.0", - "schema-utils": "^2.5.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, "file-selector": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-0.4.0.tgz", @@ -27978,12 +25695,6 @@ "resolve-dir": "^1.0.1" } }, - "flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true - }, "flat-cache": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", @@ -28070,15 +25781,6 @@ "universalify": "^2.0.0" } }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, "fs-monkey": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", @@ -28416,12 +26118,6 @@ "function-bind": "^1.1.2" } }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true - }, "headers-utils": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/headers-utils/-/headers-utils-3.0.2.tgz", @@ -28545,156 +26241,6 @@ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, - "html-loader": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/html-loader/-/html-loader-1.3.2.tgz", - "integrity": "sha512-DEkUwSd0sijK5PF3kRWspYi56XP7bTNkyg5YWSzBdjaSDmvCufep5c4Vpb3PBf6lUL0YPtLwBfy9fL0t5hBAGA==", - "dev": true, - "requires": { - "html-minifier-terser": "^5.1.1", - "htmlparser2": "^4.1.0", - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "dependencies": { - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - } - } - }, - "domhandler": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz", - "integrity": "sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "dependencies": { - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - } - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "htmlparser2": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz", - "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^3.0.0", - "domutils": "^2.0.0", - "entities": "^2.0.0" - } - }, - "schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", - "dev": true, - "requires": { - "camel-case": "^4.1.1", - "clean-css": "^4.2.3", - "commander": "^4.1.1", - "he": "^1.2.0", - "param-case": "^3.0.3", - "relateurl": "^0.2.7", - "terser": "^4.6.3" - } - }, - "html-webpack-plugin": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", - "dev": true, - "requires": { - "@types/html-minifier-terser": "^5.0.0", - "@types/tapable": "^1.0.5", - "@types/webpack": "^4.41.8", - "html-minifier-terser": "^5.0.1", - "loader-utils": "^1.2.3", - "lodash": "^4.17.20", - "pretty-error": "^2.1.1", - "tapable": "^1.1.3", - "util.promisify": "1.0.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, "htmlparser2": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", @@ -28843,15 +26389,6 @@ "safer-buffer": ">= 2.1.2 < 3" } }, - "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "requires": { - "postcss": "^7.0.14" - } - }, "identity-obj-proxy": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz", @@ -28914,12 +26451,6 @@ "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -29193,15 +26724,6 @@ "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", "dev": true }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, "is-potential-custom-element-name": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", @@ -29340,12 +26862,6 @@ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true - }, "isomorphic-ws": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz", @@ -30119,7 +27635,8 @@ "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", @@ -30171,12 +27688,6 @@ "json-buffer": "3.0.1" } }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, "kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -30446,15 +27957,6 @@ "js-tokens": "^3.0.0 || ^4.0.0" } }, - "lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dev": true, - "requires": { - "tslib": "^2.0.3" - } - }, "lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", @@ -30592,11 +28094,6 @@ "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" }, - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==" - }, "mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", @@ -30656,74 +28153,7 @@ "minimist": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" - }, - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true }, "moment": { @@ -30737,15 +28167,6 @@ "integrity": "sha512-FKc80TyiMaruhJKKPz5SpJPIjL+dflGvz4CpuThaPMc94AyN7SeC9HQ8hrvaxX7EyHdJcUY5i4D0gNyJj1vSZQ==", "dev": true }, - "monaco-editor-webpack-plugin": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/monaco-editor-webpack-plugin/-/monaco-editor-webpack-plugin-7.1.0.tgz", - "integrity": "sha512-ZjnGINHN963JQkFqjjcBtn1XBtUATDZBMgNQhDQwd78w2ukRhFXAPNgWuacaQiDZsUr4h1rWv5Mv6eriKuOSzA==", - "dev": true, - "requires": { - "loader-utils": "^2.0.2" - } - }, "moo": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz", @@ -30941,16 +28362,6 @@ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, - "no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dev": true, - "requires": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, "node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", @@ -31105,19 +28516,6 @@ "es-abstract": "^1.22.1" } }, - "object.getownpropertydescriptors": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.7.tgz", - "integrity": "sha512-PrJz0C2xJ58FNn11XV2lr4Jt5Gzl94qpy9Lu0JlfEj14z88sqbSBJCBEzdlNUCzY2gburhbrwOZ5BHCmuNUy0g==", - "dev": true, - "requires": { - "array.prototype.reduce": "^1.0.6", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "safe-array-concat": "^1.0.0" - } - }, "object.values": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", @@ -31289,15 +28687,6 @@ "p-limit": "^3.0.2" } }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, "p-retry": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", @@ -31326,16 +28715,6 @@ "semver": "^6.2.0" } }, - "param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "dev": true, - "requires": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -31386,16 +28765,6 @@ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "dev": true }, - "pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dev": true, - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -31438,12 +28807,7 @@ "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" - }, - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", "dev": true }, "picomatch": { @@ -31560,16 +28924,6 @@ "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==" }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - }, "postcss-import": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", @@ -31599,57 +28953,6 @@ } } }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "requires": { - "postcss": "^7.0.5" - } - }, - "postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - } - }, - "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - } - }, - "postcss-selector-parser": { - "version": "6.0.15", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz", - "integrity": "sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, "postcss-value-parser": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", @@ -31672,16 +28975,6 @@ "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-6.1.1.tgz", "integrity": "sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==" }, - "pretty-error": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", - "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", - "dev": true, - "requires": { - "lodash": "^4.17.20", - "renderkid": "^2.0.4" - } - }, "pretty-format": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", @@ -31707,12 +29000,6 @@ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "dev": true }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, "prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -31783,7 +29070,8 @@ "punycode": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==" + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true }, "pupa": { "version": "2.1.1", @@ -31823,6 +29111,7 @@ "version": "3.4.1", "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "dev": true, "requires": { "performance-now": "^2.1.0" } @@ -31908,74 +29197,6 @@ } } }, - "rc-align": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-2.4.5.tgz", - "integrity": "sha512-nv9wYUYdfyfK+qskThf4BQUSIadeI/dCsfaMZfNEoxm9HwOIioQ+LyqmMK6jWHAZQgOzMLaqawhuBXlF63vgjw==", - "requires": { - "babel-runtime": "^6.26.0", - "dom-align": "^1.7.0", - "prop-types": "^15.5.8", - "rc-util": "^4.0.4" - } - }, - "rc-animate": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-2.11.1.tgz", - "integrity": "sha512-1NyuCGFJG/0Y+9RKh5y/i/AalUCA51opyyS/jO2seELpgymZm2u9QV3xwODwEuzkmeQ1BDPxMLmYLcTJedPlkQ==", - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "css-animation": "^1.3.2", - "prop-types": "15.x", - "raf": "^3.4.0", - "rc-util": "^4.15.3", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-tooltip": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-3.7.3.tgz", - "integrity": "sha512-dE2ibukxxkrde7wH9W8ozHKUO4aQnPZ6qBHtrTH9LoO836PjDdiaWO73fgPB05VfJs9FbZdmGPVEbXCeOP99Ww==", - "requires": { - "babel-runtime": "6.x", - "prop-types": "^15.5.8", - "rc-trigger": "^2.2.2" - } - }, - "rc-trigger": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-2.6.5.tgz", - "integrity": "sha512-m6Cts9hLeZWsTvWnuMm7oElhf+03GOjOLfTuU0QmdB9ZrW7jR2IpI5rpNM7i9MvAAlMAmTx5Zr7g3uu/aMvZAw==", - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "prop-types": "15.x", - "rc-align": "^2.4.0", - "rc-animate": "2.x", - "rc-util": "^4.4.0", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-util": { - "version": "4.21.1", - "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.21.1.tgz", - "integrity": "sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==", - "requires": { - "add-dom-event-listener": "^1.1.0", - "prop-types": "^15.5.10", - "react-is": "^16.12.0", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.1.0" - }, - "dependencies": { - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - } - } - }, "react": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", @@ -32269,15 +29490,6 @@ "@babel/runtime": "^7.9.2" } }, - "redux-logger": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/redux-logger/-/redux-logger-3.0.6.tgz", - "integrity": "sha512-JoCIok7bg/XpqA1JqCqXFypuqBbQzGQySrhFzewB7ThcnysTO30l4VCst86AuB9T9tuT03MAA56Jw2PNhRSNCg==", - "dev": true, - "requires": { - "deep-diff": "^0.3.5" - } - }, "redux-mock-store": { "version": "1.5.4", "resolved": "https://registry.npmjs.org/redux-mock-store/-/redux-mock-store-1.5.4.tgz", @@ -32387,109 +29599,11 @@ } } }, - "relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", - "dev": true - }, "remove-accents": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==" }, - "renderkid": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", - "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", - "dev": true, - "requires": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -32729,6 +29843,7 @@ "version": "2.7.1", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, "requires": { "@types/json-schema": "^7.0.5", "ajv": "^6.12.4", @@ -32832,15 +29947,6 @@ } } }, - "serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, "serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", @@ -32952,15 +30058,6 @@ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, "shallowequal": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", @@ -33087,12 +30184,6 @@ "integrity": "sha512-2sqgzeFlid6N4Z2fUQ1cvFmTOLRi/sEDzSQ0OKYchqgoPmQBVyM3959qYx3fpS6Esef80KjmpgPeEr028dP3OA==", "dev": true }, - "source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -33142,15 +30233,6 @@ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, "stack-utils": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", @@ -33347,16 +30429,6 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, - "style-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", - "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0" - } - }, "style-value-types": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/style-value-types/-/style-value-types-4.1.4.tgz", @@ -33485,40 +30557,6 @@ "resolved": "https://registry.npmjs.org/synchronous-promise/-/synchronous-promise-2.0.17.tgz", "integrity": "sha512-AsS729u2RHUfEra9xJrE39peJcc2stq2+poBXX8bcM08Y6g9j/i/PUzwNQqkaJde7Ntg1TO7bSREbR5sdosQ+g==" }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true - }, - "tar": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", - "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", - "dev": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "dependencies": { - "minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, "telejson": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/telejson/-/telejson-7.2.0.tgz", @@ -33537,25 +30575,6 @@ "supports-hyperlinks": "^2.0.0" } }, - "terser": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", - "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", - "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - } - } - }, "terser-webpack-plugin": { "version": "5.3.10", "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", @@ -33952,24 +30971,6 @@ "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", "dev": true }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, "unique-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", @@ -34075,6 +31076,7 @@ "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, "requires": { "punycode": "^2.1.0" } @@ -34095,36 +31097,6 @@ } } }, - "url-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-3.0.0.tgz", - "integrity": "sha512-a84JJbIA5xTFTWyjjcPdnsu+41o/SNE8SpXMdUvXs6Q+LuhCD9E2+0VCiuDWqgo3GGXVlFHzArDmBpj9PgWn4A==", - "requires": { - "loader-utils": "^1.2.3", - "mime": "^2.4.4", - "schema-utils": "^2.5.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, "url-parse": { "version": "1.5.10", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", @@ -34161,22 +31133,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, - "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==", - "dev": true - }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -34418,6 +31374,7 @@ "version": "4.17.0", "resolved": "https://registry.npmjs.org/vega-lite/-/vega-lite-4.17.0.tgz", "integrity": "sha512-MO2XsaVZqx6iWWmVA5vwYFamvhRUsKfVp7n0pNlkZ2/21cuxelSl92EePZ2YGmzL6z4/3K7r/45zaG8p+qNHeg==", + "dev": true, "requires": { "@types/clone": "~2.1.0", "@types/fast-json-stable-stringify": "^2.0.0", @@ -34436,17 +31393,20 @@ "tslib": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz", - "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ==" + "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ==", + "dev": true }, "vega-event-selector": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/vega-event-selector/-/vega-event-selector-2.0.6.tgz", - "integrity": "sha512-UwCu50Sqd8kNZ1X/XgiAY+QAyQUmGFAwyDu7y0T5fs6/TPQnDo/Bo346NgSgINBEhEKOAMY1Nd/rPOk4UEm/ew==" + "integrity": "sha512-UwCu50Sqd8kNZ1X/XgiAY+QAyQUmGFAwyDu7y0T5fs6/TPQnDo/Bo346NgSgINBEhEKOAMY1Nd/rPOk4UEm/ew==", + "dev": true }, "vega-expression": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/vega-expression/-/vega-expression-3.0.1.tgz", "integrity": "sha512-+UwOFEkBnAWo8Zud6i8O4Pd2W6QqmPUOaAhjNtj0OxRL+d+Duoy7M4edUDZ+YuoUcMnjjBFfDQu7oRAA1fIMEQ==", + "dev": true, "requires": { "vega-util": "^1.15.2" } @@ -34454,12 +31414,14 @@ "vega-util": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/vega-util/-/vega-util-1.16.1.tgz", - "integrity": "sha512-FdgD72fmZMPJE99FxvFXth0IL4BbLA93WmBg/lvcJmfkK4Uf90WIlvGwaIUdSePIsdpkZjBPyQcHMQ8OcS8Smg==" + "integrity": "sha512-FdgD72fmZMPJE99FxvFXth0IL4BbLA93WmBg/lvcJmfkK4Uf90WIlvGwaIUdSePIsdpkZjBPyQcHMQ8OcS8Smg==", + "dev": true }, "yargs": { "version": "16.0.3", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.0.3.tgz", "integrity": "sha512-6+nLw8xa9uK1BOEOykaiYAJVh6/CjxWXK/q9b5FpRgNslt8s22F2xMBqVIKgCRjNgGvGPBy8Vog7WN7yh4amtA==", + "dev": true, "requires": { "cliui": "^7.0.0", "escalade": "^3.0.2", @@ -34851,189 +31813,6 @@ } } }, - "webpack-cli": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", - "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", - "dev": true, - "requires": { - "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^2.1.1", - "@webpack-cli/info": "^2.0.2", - "@webpack-cli/serve": "^2.0.5", - "colorette": "^2.0.14", - "commander": "^10.0.1", - "cross-spawn": "^7.0.3", - "envinfo": "^7.7.3", - "fastest-levenshtein": "^1.0.12", - "import-local": "^3.0.2", - "interpret": "^3.1.1", - "rechoir": "^0.8.0", - "webpack-merge": "^5.7.3" - }, - "dependencies": { - "commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "dev": true - } - } - }, - "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "requires": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - } - } - }, - "webpack-dev-server": { - "version": "4.15.1", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz", - "integrity": "sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==", - "dev": true, - "requires": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.5", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "launch-editor": "^2.6.0", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.13.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - } - } - }, - "webpack-merge": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", - "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "flat": "^5.0.2", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - }, "websocket-driver": { "version": "0.7.4", "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", @@ -35137,12 +31916,6 @@ "string-width": "^4.0.0" } }, - "wildcard": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", - "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", - "dev": true - }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", diff --git a/package.json b/package.json index 7f0b84c28..424328673 100644 --- a/package.json +++ b/package.json @@ -9,10 +9,9 @@ "watch": "jest --watch", "test:coverage": "jest --coverage --ci", "test:lint": "eslint src", - "start:dev": "webpack serve --config webpack.dev.js", - "build": "npm run check-types && webpack --config webpack.prod.js", + "start": "rspack serve -c rspack.config.ts", + "build": "npm run check-types && npm run rsbuild", "jest-preview": "jest-preview", - "rsstart": "rspack serve -c rspack.config.ts", "rsbuild": "rspack build -c rspack.config.ts" }, "keywords": [], @@ -49,29 +48,19 @@ "@wojtekmaj/enzyme-adapter-react-17": "^0.8.0", "babel-eslint": "^10.0.3", "babel-loader": "^8.0.6", - "compression-webpack-plugin": "^6.0.3", - "css-loader": "^3.4.2", "enzyme": "^3.11.0", "eslint": "^8.10.0", "fs-extra": "^11.1.1", - "html-loader": "^1.0.0", - "html-webpack-plugin": "^4.0.3", "identity-obj-proxy": "^3.0.0", "jest": "^27.5.1", "jest-preview": "^0.3.1", "monaco-editor": "^0.34.1", - "monaco-editor-webpack-plugin": "^7.0.1", "msw": "0.36.8", "node-fetch": "^2.6.1", - "redux-logger": "^3.0.6", "redux-mock-store": "^1.5.4", - "style-loader": "^1.1.3", "ts-node": "^10.9.2", "typescript": "^5.3.2", - "webpack": "^5.88.1", - "webpack-cli": "^5.1.4", - "webpack-dev-server": "^4.15.1", - "webpack-merge": "^5.9.0" + "vega-lite": "^4.0.0-beta.10" }, "dependencies": { "@hapi/joi": "^17.1.1", @@ -79,7 +68,7 @@ "@hookform/resolvers": "^2.8.8", "@monaco-editor/react": "^4.4.5", "@scality/core-ui": "^0.132.0", - "@scality/module-federation": "github:scality/module-federation#1.3.1", + "@scality/module-federation": "^1.3.2", "@types/react-table": "^7.7.10", "@types/react-virtualized": "^9.21.20", "@types/react-window": "^1.8.5", @@ -87,17 +76,13 @@ "aws-sdk": "^2.616.0", "core-js": "^3.6.5", "downshift": "^6.1.7", - "file-loader": "^5.0.2", - "history": "^4.10.1", "immutable": "^4.0.0-rc.12", "lodash.set": "^4.3.2", "luxon": "^2.3.0", "memoize-one": "^5.1.1", "oidc-client": "^1.10.1", - "polished": "3.4.1", "portable-fetch": "^3.0.0", "pretty-bytes": "^6.1.0", - "rc-tooltip": "^3.7.3", "react": "^17.0.2", "react-dom": "^17.0.2", "react-dropzone": "12.0.4", @@ -106,6 +91,7 @@ "react-query": "3.34.0", "react-redux": "^7.1.3", "react-router-dom": "5.2.0", + "react-router": "5.2.0", "react-table": "^7.3.0", "react-virtualized": "9.21.0", "react-window": "^1.8.5", @@ -114,9 +100,7 @@ "redux-oidc": "^4.0.0-beta1", "redux-thunk": "^2.3.0", "styled-components": "^5.2.0", - "url-loader": "^3.0.0", "util": "^0.12.5", - "vega-lite": "^4.0.0-beta.10", "zenkoclient": "github:scality/zenkoclient#1.3.0" }, "msw": { diff --git a/webpack.common.js b/webpack.common.js deleted file mode 100644 index dc1e2995b..000000000 --- a/webpack.common.js +++ /dev/null @@ -1,119 +0,0 @@ -const path = require('path'); -const HtmlWebPackPlugin = require('html-webpack-plugin'); -const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin'); -const ModuleFederationPlugin = require('webpack/lib/container/ModuleFederationPlugin'); -const deps = require('./package.json').dependencies; - -const revision = require('child_process') - .execSync('git rev-parse HEAD') - .toString() - .trim(); - -module.exports = { - entry: { - zenko_ui: './src/react/App', - }, - output: { - filename: `js/[name].${revision}.js`, - publicPath: '/data/', - path: path.resolve(__dirname, 'build'), - }, - resolve: { - modules: ['node_modules'], - extensions: ['.js', '.jsx', '.ts', '.tsx'], - // This is needed because node_modules/aws-sdk/lib/event_listeners.js use require('util') - // and webpack doesn't know how to resolve it. - fallback: { util: require.resolve('util/') }, - }, - module: { - rules: [ - { - test: /\.(js|jsx|ts|tsx)$/, - exclude: /node_modules(?!\/monaco-editor)/, - use: { - loader: 'babel-loader', - }, - }, - { - test: /\.html$/, - use: [ - { - loader: 'html-loader', - }, - ], - }, - { - test: /\.jpe?g$|\.gif$|\.png$|\.ttf$|\.eot$|\.svg$/, - use: [ - { - loader: 'file-loader', - options: { - name: '[name].[ext]?[hash]', - outputPath: 'fonts/', - }, - }, - ], - }, - { - test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/, - use: [ - { - loader: 'url-loader', - options: { - limit: 10000, - mimetype: 'application/fontwoff', - outputPath: 'fonts/', - }, - }, - ], - }, - { - test: /\.css$/, - use: ['style-loader', 'css-loader'], - }, - ], - }, - plugins: [ - new ModuleFederationPlugin({ - name: 'zenko', - filename: 'js/remoteEntry.js', - exposes: { - './FederableApp': './src/react/FederableApp.tsx', - './VeeamWelcomeModal': - './src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx', - './SelectAccountIAMRole': - './src/react/ui-elements/SelectAccountIAMRole.tsx', - }, - shared: { - ...Object.fromEntries( - Object.entries(deps).map(([key, version]) => [key, {}]), - ), - '@scality/core-ui': { - singleton: true, - }, - '@scality/module-federation': { - singleton: true, - }, - 'styled-components': { - singleton: true, - requiredVersion: deps['styled-components'], - }, - react: { - singleton: true, - requiredVersion: deps.react, - }, - 'react-dom': { - singleton: true, - requiredVersion: deps['react-dom'], - }, - }, - }), - new MonacoWebpackPlugin({ - languages: ['json'], - }), - new HtmlWebPackPlugin({ - template: './src/index-template.html', - filename: './index.html', - }), - ], -}; diff --git a/webpack.dev.js b/webpack.dev.js deleted file mode 100644 index 4453ede8e..000000000 --- a/webpack.dev.js +++ /dev/null @@ -1,97 +0,0 @@ -const { merge } = require('webpack-merge'); -const common = require('./webpack.common.js'); -const path = require('path'); - -const zenkoDNS = 'zenko.local'; - -const accessControlAllowHeaders = [ - 'X-Requested-With', - 'content-type', - 'Authorization', - 'x-amz-content-sha256', - 'x-amz-user-agent', - 'x-amz-security-token', - 'x-amz-date', - 'if-none-match', - 'x-amz-bucket-object-lock-enabled', - 'x-authentication-token', - 'content-md5', - 'x-amz-bypass-governance-retention', -]; - -module.exports = merge(common, { - mode: 'development', - devtool: 'inline-source-map', - output: { - publicPath: '/zenko/', - }, - devServer: { - static: path.join(__dirname, 'public/assets'), - host: '127.0.0.1', - port: 8383, - historyApiFallback: true, - hot: false, - headers: { - 'Access-Control-Allow-Origin': '*', - 'Access-Control-Allow-Methods': - 'GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD', - 'Access-Control-Allow-Headers': accessControlAllowHeaders.join(', '), - 'Access-Control-Expose-Headers': 'ETag', - }, - proxy: { - '/s3': { - target: `https://s3.${zenkoDNS}`, - pathRewrite: { '^/s3': '' }, - secure: false, - changeOrigin: true, - logLevel: 'debug', - logProvider: () => console, - onProxyRes: function (proxyRes, req, res) { - if (req.method === 'OPTIONS') { - proxyRes.statusCode = 200; - } - }, - }, - '/iam': { - target: `https://iam.${zenkoDNS}`, - pathRewrite: { '^/iam': '' }, - secure: false, - changeOrigin: true, - logLevel: 'debug', - logProvider: () => console, - onProxyRes: function (proxyRes, req, res) { - if (req.method === 'OPTIONS') { - proxyRes.statusCode = 200; - } - }, - }, - '/sts': { - target: `https://sts.${zenkoDNS}`, - pathRewrite: { '^/sts': '' }, - secure: false, - changeOrigin: true, - logLevel: 'debug', - logProvider: () => console, - onProxyRes: function (proxyRes, req, res) { - if (req.method === 'OPTIONS') { - proxyRes.statusCode = 200; - } - }, - }, - '/management': { - target: `https://management.${zenkoDNS}`, - pathRewrite: { '^/management': '' }, - secure: false, - changeOrigin: true, - logLevel: 'debug', - logProvider: () => console, - }, - }, - client: { - overlay: { - warnings: false, - errors: true, - }, - }, - }, -}); diff --git a/webpack.prod.js b/webpack.prod.js deleted file mode 100644 index 07f9b28d5..000000000 --- a/webpack.prod.js +++ /dev/null @@ -1,27 +0,0 @@ -const webpack = require('webpack'); -const { merge } = require('webpack-merge'); -const common = require('./webpack.common'); -const CompressionPlugin = require('compression-webpack-plugin'); -const path = require('path'); -const fs = require('fs-extra'); - -module.exports = merge(common, { - mode: 'production', - devtool: 'hidden-source-map', - plugins: [ - new CompressionPlugin(), - { - apply: (compiler) => { - compiler.hooks.afterEmit.tap('AfterEmitPlugin', (compilation) => { - fs.copySync( - path.resolve(__dirname, path.join('public', 'assets', 'zenko')), - path.resolve(__dirname, 'build'), - { - dereference: true, - }, - ); - }); - }, - }, - ], -}); From a98cdf732ce0ace4a15c2a0acb785df18d69ae18 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Thu, 11 Jul 2024 14:22:38 +0200 Subject: [PATCH 08/24] add right public asset in dev mode --- rspack.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rspack.config.ts b/rspack.config.ts index 2777b3351..c39daf733 100644 --- a/rspack.config.ts +++ b/rspack.config.ts @@ -170,7 +170,7 @@ const config: Configuration = { errors: true, }, }, - static: path.join(__dirname, 'public'), + static: path.join(__dirname, 'public/assets'), headers: { 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Methods': From afa1e4cd98bf83a18d6333c32c017f1dc0f6f26f Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Thu, 11 Jul 2024 14:29:22 +0200 Subject: [PATCH 09/24] Use shellv2 providers --- .../account/__tests__/AccountDetails.test.tsx | 2 +- src/react/account/__tests__/Accounts.test.tsx | 19 +-- .../details/properties/AccountInfo.tsx | 13 +- .../domain/business/accounts.test.tsx | 1 - .../domain/business/buckets.test.tsx | 1 - .../next-architecture/ui/AlertProvider.tsx | 41 +---- .../next-architecture/ui/AuthProvider.tsx | 1 - .../ui/CertificateDownloadButton.tsx | 4 +- .../next-architecture/ui/ConfigProvider.tsx | 33 +++- .../ui/XCoreLibraryProvider.tsx | 7 +- .../ui-elements/SelectAccountIAMRole.tsx | 1 - .../Veeam/VeeamCapacityFormSection.tsx | 4 +- .../ui-elements/Veeam/VeeamSummary.test.tsx | 39 ++--- src/react/utils/testUtil.tsx | 149 ++++++++++-------- 14 files changed, 156 insertions(+), 159 deletions(-) diff --git a/src/react/account/__tests__/AccountDetails.test.tsx b/src/react/account/__tests__/AccountDetails.test.tsx index e99d702f6..12c7cba63 100644 --- a/src/react/account/__tests__/AccountDetails.test.tsx +++ b/src/react/account/__tests__/AccountDetails.test.tsx @@ -1,6 +1,6 @@ import AccountDetails from '../AccountDetails'; import { renderWithRouterMatch } from '../../utils/testUtil'; -import { _AuthContext, useAuth } from '../../next-architecture/ui/AuthProvider'; +import { useAuth } from '../../next-architecture/ui/AuthProvider'; const account1 = { arn: 'arn1', diff --git a/src/react/account/__tests__/Accounts.test.tsx b/src/react/account/__tests__/Accounts.test.tsx index 7fa0a781a..b366b1a29 100644 --- a/src/react/account/__tests__/Accounts.test.tsx +++ b/src/react/account/__tests__/Accounts.test.tsx @@ -12,10 +12,11 @@ import { INSTANCE_ID } from '../../actions/__tests__/utils/testUtil'; import { useAuth } from '../../next-architecture/ui/AuthProvider'; import { useConfig } from '../../next-architecture/ui/ConfigProvider'; import { initialErrorsUIState } from '../../reducers/initialConstants'; -import { formatSimpleDate } from '../../utils'; import { + FAKE_TOKEN, TEST_API_BASE_URL, WrapperAsStorageManager, + defaultUserData, mockOffsetSize, reduxRender, renderWithRouterMatch, @@ -252,14 +253,8 @@ describe('Accounts', () => { it('should hide Create Account Button for Storage Account Owner', async () => { mockUseAuth.mockImplementation(() => { return { - userData: { - id: 'xxx-yyy-zzzz-id', - token: 'xxx-yyy-zzz-token', - username: 'Renard ADMIN', - email: 'renard.admin@scality.com', - roles: ['PlatformAdmin'], - groups: ['user', 'PlatformAdmin'], - }, + userData: defaultUserData, + getToken: async () => FAKE_TOKEN, }; }); server.use( @@ -322,13 +317,11 @@ describe('Accounts', () => { mockUseAuth.mockImplementation(() => { return { userData: { - id: 'xxx-yyy-zzzz-id', - token: 'xxx-yyy-zzz-token', - username: 'Renard ADMIN', - email: 'renard.admin@scality.com', + ...defaultUserData, roles: ['StorageManager'], groups: ['user', 'StorageManager'], }, + getToken: async () => FAKE_TOKEN, }; }); diff --git a/src/react/account/details/properties/AccountInfo.tsx b/src/react/account/details/properties/AccountInfo.tsx index e21c2266e..7f2589331 100644 --- a/src/react/account/details/properties/AccountInfo.tsx +++ b/src/react/account/details/properties/AccountInfo.tsx @@ -15,24 +15,17 @@ import { useState } from 'react'; import type { Account } from '../../../../types/account'; import { notFalsyTypeGuard } from '../../../../types/typeGuards'; import { useManagementClient } from '../../../ManagementProvider'; -import { - useAccountsLocationsAndEndpoints, - useListAccounts, -} from '../../../next-architecture/domain/business/accounts'; +import { useAccountsLocationsAndEndpoints } from '../../../next-architecture/domain/business/accounts'; import { useAccountsLocationsEndpointsAdapter } from '../../../next-architecture/ui/AccountsLocationsEndpointsAdapterProvider'; import { useInstanceId } from '../../../next-architecture/ui/AuthProvider'; +import { CopyButton } from '@scality/core-ui/dist/next'; import { ButtonContainer } from '../../../ui-elements/Container'; import DeleteConfirmation from '../../../ui-elements/DeleteConfirmation'; -import * as T from '../../../ui-elements/TableKeyValue'; -import Table from '../../../ui-elements/TableKeyValue'; +import Table, * as T from '../../../ui-elements/TableKeyValue'; import { useAuthGroups, useRolePathName } from '../../../utils/hooks'; import { removeRoleArnStored } from '../../../utils/localStorage'; import SecretKeyModal from './SecretKeyModal'; -import { useSetAssumedRole } from '../../../DataServiceRoleProvider'; -import { useAccessibleAccountsAdapter } from '../../../next-architecture/ui/AccessibleAccountsAdapterProvider'; -import { useMetricsAdapter } from '../../../next-architecture/ui/MetricsAdapterProvider'; -import { CopyButton } from '@scality/core-ui/dist/next'; const TableContainer = styled.div` display: flex; diff --git a/src/react/next-architecture/domain/business/accounts.test.tsx b/src/react/next-architecture/domain/business/accounts.test.tsx index dcd0ea23f..33a7add59 100644 --- a/src/react/next-architecture/domain/business/accounts.test.tsx +++ b/src/react/next-architecture/domain/business/accounts.test.tsx @@ -18,7 +18,6 @@ import { MockedMetricsAdapter } from '../../adapters/metrics/MockedMetricsAdapte import { AccountInfo } from '../entities/account'; import { LatestUsedCapacity } from '../entities/metrics'; import { useAccountLatestUsedCapacity, useListAccounts } from './accounts'; -import { _AuthContext } from '../../ui/AuthProvider'; import { PromiseResult } from '../entities/promise'; import { STORAGE_ACCOUNT_OWNER_ROLE } from '../../../utils/hooks'; import { NewWrapper } from '../../../utils/testUtil'; diff --git a/src/react/next-architecture/domain/business/buckets.test.tsx b/src/react/next-architecture/domain/business/buckets.test.tsx index bead00211..5f9e6973a 100644 --- a/src/react/next-architecture/domain/business/buckets.test.tsx +++ b/src/react/next-architecture/domain/business/buckets.test.tsx @@ -26,7 +26,6 @@ import { prepareRenderMultipleHooks, RenderAdditionalHook, } from '../../../utils/testMultipleHooks'; -import { _AuthContext } from '../../ui/AuthProvider'; import { NewWrapper, Wrapper, diff --git a/src/react/next-architecture/ui/AlertProvider.tsx b/src/react/next-architecture/ui/AlertProvider.tsx index c1a6a1ec5..1f39ba2e7 100644 --- a/src/react/next-architecture/ui/AlertProvider.tsx +++ b/src/react/next-architecture/ui/AlertProvider.tsx @@ -1,39 +1,10 @@ import React from 'react'; -import { FilterLabels } from 'shell/compiled-types/src/alerts/services/alertUtils'; -import { useXcoreConfig } from './ConfigProvider'; +import { + Alert, + FilterLabels, +} from 'shell/compiled-types/src/alerts/services/alertUtils'; +import { useXcoreRuntimeConfig } from './ConfigProvider'; -type PrometheusAlert = { - annotations: Record; - receivers: { - name: string; - }[]; - fingerprint: string; - startsAt: string; - updatedAt: string; - endsAt: string; - status: { - state: 'unprocessed' | 'active' | 'suppressed'; - silencedBy: string[]; - inhibitedBy: string[]; - }; - labels: Record; - generatorURL: string; -}; -type AlertLabels = { - parents: string[]; - selectors?: string[]; -} & { [labelName: string]: string }; -export type Alert = { - id: string; - description: string; - startsAt: string; - endsAt: string; - severity: string; - labels: AlertLabels; - originalAlert: PrometheusAlert; - summary?: string; - documentationUrl?: string; -}; export const highestAlertToStatus = (alerts?: Alert[]): string => { return (alerts?.[0] && alerts[0].severity) || 'healthy'; }; @@ -43,7 +14,7 @@ export const useAlerts = (filters: FilterLabels) => { }; const AlertProvider = ({ children }: { children: React.ReactNode }) => { - const xcoreConfig = useXcoreConfig('run'); + const xcoreConfig = useXcoreRuntimeConfig(); return ( { if (artescaUI) { const url = artescaUI.url + - retrieveConfiguration({ + retrieveConfiguration<'build'>({ configType: 'build', name: artescaUI.name, }).spec.remoteEntryPath; @@ -26,7 +26,7 @@ export const CertificateDownloadButton = () => { filename: 'artesca-ca.pem', variant: 'outline', }} - > + /> ); } diff --git a/src/react/next-architecture/ui/ConfigProvider.tsx b/src/react/next-architecture/ui/ConfigProvider.tsx index 28eeb4114..3d45b0c3c 100644 --- a/src/react/next-architecture/ui/ConfigProvider.tsx +++ b/src/react/next-architecture/ui/ConfigProvider.tsx @@ -1,5 +1,9 @@ import { useCurrentApp } from '@scality/module-federation'; import { createContext } from 'react'; +import { + BuildtimeWebFinger, + RuntimeWebFinger, +} from 'shell/moduleFederation/ConfigurationProvider'; import { AppConfig } from '../../../types/entities'; export const _ConfigContext = createContext(null); @@ -35,18 +39,41 @@ export function useDeployedXcoreInstances() { kind: 'xcore-ui', }); } +type XCoreRuntimeConfig = { + url: string; + url_prometheus: string; + url_grafana: string; + url_alertmanager: string; + ui_base_path: string; +}; + +export function useXcoreRuntimeConfig(): RuntimeWebFinger | null { + const { retrieveConfiguration } = window.shellHooks.useConfigRetriever(); + const instances = useDeployedXcoreInstances(); + + if (instances.length) { + return retrieveConfiguration({ + configType: 'run', + name: instances[0].name, + }); + } else { + console.log('There is no Xcore instance deployed yet.'); + return null; + } +} -export function useXcoreConfig(configType: 'run' | 'build' = 'build') { +export function useXcoreBuildtimeConfig(): BuildtimeWebFinger | null { const { retrieveConfiguration } = window.shellHooks.useConfigRetriever(); const instances = useDeployedXcoreInstances(); if (instances.length) { - return retrieveConfiguration({ - configType, + return retrieveConfiguration<'build'>({ + configType: 'build', name: instances[0].name, }); } else { console.log('There is no Xcore instance deployed yet.'); + return null; } } diff --git a/src/react/next-architecture/ui/XCoreLibraryProvider.tsx b/src/react/next-architecture/ui/XCoreLibraryProvider.tsx index 731c01a48..651e019ab 100644 --- a/src/react/next-architecture/ui/XCoreLibraryProvider.tsx +++ b/src/react/next-architecture/ui/XCoreLibraryProvider.tsx @@ -1,7 +1,10 @@ import { ErrorPage500 } from '@scality/core-ui/dist/components/error-pages/ErrorPage500.component'; -import { useDeployedXcoreInstances, useXcoreConfig } from './ConfigProvider'; import { ComponentWithFederatedImports } from '@scality/module-federation'; import { ErrorBoundary } from 'react-error-boundary'; +import { + useDeployedXcoreInstances, + useXcoreBuildtimeConfig, +} from './ConfigProvider'; export const XCORE_NOT_AVAILABLE = 'XCore library is not available'; export class XCoreLibraryNotAvailable extends Error { @@ -41,7 +44,7 @@ export function XCoreLibraryProvider({ }: { children: React.ReactNode; }) { - const xcoreWebfinger = useXcoreConfig(); + const xcoreWebfinger = useXcoreBuildtimeConfig(); const instances = useDeployedXcoreInstances(); const federatedImports = instances.map((instance) => { return { diff --git a/src/react/ui-elements/SelectAccountIAMRole.tsx b/src/react/ui-elements/SelectAccountIAMRole.tsx index 493d19ccf..d813b750c 100644 --- a/src/react/ui-elements/SelectAccountIAMRole.tsx +++ b/src/react/ui-elements/SelectAccountIAMRole.tsx @@ -21,7 +21,6 @@ import { import { AccountsLocationsEndpointsAdapterProvider } from '../next-architecture/ui/AccountsLocationsEndpointsAdapterProvider'; import { getListRolesQuery } from '../queries'; import { regexArn } from '../utils/hooks'; -import { AuthProvider } from '../next-architecture/ui/AuthProvider'; class NoOpMetricsAdapter implements IMetricsAdapter { async listBucketsLatestUsedCapacity( diff --git a/src/react/ui-elements/Veeam/VeeamCapacityFormSection.tsx b/src/react/ui-elements/Veeam/VeeamCapacityFormSection.tsx index 7f1c4903f..5df8815bd 100644 --- a/src/react/ui-elements/Veeam/VeeamCapacityFormSection.tsx +++ b/src/react/ui-elements/Veeam/VeeamCapacityFormSection.tsx @@ -5,7 +5,7 @@ import { unitChoices } from './VeeamConstants'; import { ListItem } from './VeeamTable'; import { useCapacityUnit } from './useCapacityUnit'; import { useEffect } from 'react'; -import { useXcoreConfig } from '../../next-architecture/ui/ConfigProvider'; +import { useXcoreRuntimeConfig } from '../../next-architecture/ui/ConfigProvider'; import { useAccessToken } from '../../next-architecture/ui/AuthProvider'; type XCoreConfig = { @@ -50,7 +50,7 @@ export const VeeamCapacityFormWithXcore = ({ useClusterCapacity: UseClusterCapacityHooks; }) => { const token = useAccessToken(); - const xCoreConfig = useXcoreConfig('run'); + const xCoreConfig = useXcoreRuntimeConfig(); const { clusterCapacity, clusterCapacityStatus } = useClusterCapacity( xCoreConfig, token, diff --git a/src/react/ui-elements/Veeam/VeeamSummary.test.tsx b/src/react/ui-elements/Veeam/VeeamSummary.test.tsx index f601921ea..aba491c20 100644 --- a/src/react/ui-elements/Veeam/VeeamSummary.test.tsx +++ b/src/react/ui-elements/Veeam/VeeamSummary.test.tsx @@ -1,7 +1,7 @@ import { Stepper } from '@scality/core-ui'; import { render, screen } from '@testing-library/react'; import { useAuth } from '../../next-architecture/ui/AuthProvider'; -import { Wrapper } from '../../utils/testUtil'; +import { FAKE_TOKEN, Wrapper, defaultUserData } from '../../utils/testUtil'; import { ACCOUNT_SECTION_TITLE, BUCKET_SECTION_TITLE, @@ -26,16 +26,6 @@ jest.mock('./useGetS3ServicePoint', () => ({ })); const mockUseAuth = useAuth as jest.MockedFunction; -const mockAuthUserData = { - userData: { - id: 'xxx-yyy-zzzz-id', - token: 'xxx-yyy-zzz-token', - username: 'Renard ADMIN', - email: 'renard.admin@scality.com', - roles: ['StorageManager'], - groups: ['user', 'StorageManager'], - }, -}; const SERVICE_POINT = 's3.test.local'; const ACCESS_KEY = 'access-key'; @@ -83,7 +73,16 @@ describe('VeeamSummary', () => { it('should render VeeamSummary', async () => { //S - mockUseAuth.mockImplementation(() => mockAuthUserData); + mockUseAuth.mockImplementation(() => { + return { + userData: { + ...defaultUserData, + roles: ['StorageManager'], + groups: ['user', 'StorageManager'], + }, + getToken: async () => FAKE_TOKEN, + }; + }); render( { }); it('should render the VeeamSumamry with certificate download button', async () => { - mockUseAuth.mockImplementation(() => ({ - userData: { - id: 'xxx-yyy-zzzz-id', - token: 'xxx-yyy-zzz-token', - username: 'Renard ADMIN', - email: 'renard.admin@scality.com', - roles: ['PlatformAdmin'], - groups: ['user', 'PlatformAdmin'], - }, - })); + mockUseAuth.mockImplementation(() => { + return { + userData: defaultUserData, + getToken: async () => FAKE_TOKEN, + }; + }); render( { return store; }; +export const FAKE_TOKEN = 'xxx-yyy-zzz-token'; +export const defaultUserData = { + id: 'xxx-yyy-zzzz-id', + token: FAKE_TOKEN, + username: 'Renard ADMIN', + email: 'renard.admin@scality.com', + roles: ['PlatformAdmin'], + groups: ['user', 'PlatformAdmin'], + original: { + id_token: 'idtoken', + access_token: 'token', + token_type: 'bearer', + scope: 'openid profile email', + expires_at: 1592597205, + state: 'path', + toStorageString: () => 'token', + expires_in: 3600, + expired: false, + scopes: ['openid', 'profile', 'email'], + profile: { + aud: 'myclient', + exp: 1592597205, + iat: 1592593605, + iss: 'https://zenko.io', + sub: 'test', + groups: ['StorageManager'], + }, + }, +}; + export const TEST_ROLE_PATH_NAME = 'scality-internal/storage-manager-role'; export const TEST_ROLE_ARN = `arn:aws:iam::000000000000:role/${TEST_ROLE_PATH_NAME}`; const params = { @@ -168,48 +197,38 @@ export const Wrapper = ({ children }: { children: ReactNode }) => { //@ts-expect-error fix this when you are working on it value={zenkoUITestConfig} > - <_AuthContext.Provider - value={{ - //@ts-expect-error fix this when you are working on it - user: { - access_token: 'token', - profile: { sub: 'test', instanceIds: [INSTANCE_ID] }, - }, - }} + <_DataServiceRoleContext.Provider + //@ts-expect-error fix this when you are working on it + value={{ role, setRole: jest.fn() }} > - <_DataServiceRoleContext.Provider - //@ts-expect-error fix this when you are working on it - value={{ role, setRole: jest.fn() }} + <_ManagementContext.Provider + value={{ + managementClient: TEST_MANAGEMENT_CLIENT, + }} > - <_ManagementContext.Provider - value={{ - managementClient: TEST_MANAGEMENT_CLIENT, - }} - > - - - - - - {children} - - - - - - - - + + + + + + {children} + + + + + + + From 06dbe6d27750c24b0d101541e7691f51fe98c245 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Thu, 11 Jul 2024 14:30:18 +0200 Subject: [PATCH 10/24] chore: cleaning --- src/react/NoMatch.tsx | 5 ++--- src/react/ui-elements/Table.tsx | 3 +-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/react/NoMatch.tsx b/src/react/NoMatch.tsx index 5931488fb..d3c8a8605 100644 --- a/src/react/NoMatch.tsx +++ b/src/react/NoMatch.tsx @@ -1,7 +1,6 @@ -import React from 'react'; -import { Warning } from './ui-elements/Warning'; +import { Icon } from '@scality/core-ui/dist/components/icon/Icon.component'; import { useLocation } from 'react-router-dom'; -import { Icon } from '@scality/core-ui'; +import { Warning } from './ui-elements/Warning'; function NoMatch() { const { pathname } = useLocation(); diff --git a/src/react/ui-elements/Table.tsx b/src/react/ui-elements/Table.tsx index eec3cf906..df8bf5ba7 100644 --- a/src/react/ui-elements/Table.tsx +++ b/src/react/ui-elements/Table.tsx @@ -1,7 +1,6 @@ -// @noflow import { fontSize } from '@scality/core-ui/dist/style/theme'; -import { spacing, SecondaryText, Wrap, SearchInput } from '@scality/core-ui'; +import { spacing, SecondaryText, Wrap } from '@scality/core-ui'; import { Box, Button, Input } from '@scality/core-ui/dist/next'; import { Link } from 'react-router-dom'; From 12ee7377ac0c8988026877b863d650044b937b17 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Thu, 11 Jul 2024 14:30:41 +0200 Subject: [PATCH 11/24] fix tests mock --- jestSetupAfterEnv.tsx | 137 +++++++++++------------------------------- 1 file changed, 34 insertions(+), 103 deletions(-) diff --git a/jestSetupAfterEnv.tsx b/jestSetupAfterEnv.tsx index e350d6a66..c41955e07 100644 --- a/jestSetupAfterEnv.tsx +++ b/jestSetupAfterEnv.tsx @@ -10,6 +10,40 @@ beforeEach(() => { queryClient.clear(); }); +const shellHooks = { + useShellThemeSelector: jest.fn(() => { + return { + theme: 'dark', + setTheme: jest.fn(), + }; + }), + useConfigRetriever: jest.fn(() => { + return { + retrieveConfiguration: jest.fn(() => { + return { + spec: { + remoteEntryPath: '/remoteEntry.js', + }, + }; + }), + }; + }), + useDeployedApps: jest.fn(() => { + return [ + { + kind: 'zenko-ui', + name: 'zenko-ui.eu-west-1', + version: 'local-dev', + url: 'http://127.0.0.1:8383/zenko', + appHistoryBasePath: '/data', + }, + ]; + }), +}; + +// @ts-expect-error The type is wrong because we only mock what we need for the test +window.shellHooks = shellHooks; + // When testing that the upload api is effectively called // we are getting this error from MSW // error: TypeError [NetworkingError]: The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array or an Array-like Object. Received an instance of Blob @@ -127,107 +161,4 @@ jest.mock('./src/react/next-architecture/ui/XCoreLibraryProvider', () => { }; }); -// useConfig -// jest.mock('./containers/ConfigProvider', () => ({ -// __esModule: true, -// default: ({ children }: { children: React.ReactNode }) => <>{children}, -// })); - -// jest.mock('./containers/AlertProvider', () => ({ -// __esModule: true, -// default: ({ children }: { children: React.ReactNode }) => <>{children}, -// useHighestSeverityAlerts: jest.fn(), -// useAlerts: jest.fn(), -// useAlertLibrary: jest.fn(() => { -// return { -// getNodesAlertSelectors: jest.fn(), -// getVolumesAlertSelectors: jest.fn(), -// getNetworksAlertSelectors: jest.fn(), -// getServicesAlertSelectors: jest.fn(), -// getK8SMasterAlertSelectors: jest.fn(), -// getBootstrapAlertSelectors: jest.fn(), -// getMonitoringAlertSelectors: jest.fn(), -// getAlertingAlertSelectors: jest.fn(), -// getLoggingAlertSelectors: jest.fn(), -// getDashboardingAlertSelectors: jest.fn(), -// getIngressControllerAlertSelectors: jest.fn(), -// getAuthenticationAlertSelectors: jest.fn(), - -// useHighestSeverityAlerts: jest.fn(), -// useAlerts: jest.fn(), -// }; -// }), -// highestAlertToStatus: (alerts?: Alert[]): string => { -// return (alerts?.[0] && (alerts[0].severity as any as string)) || 'healthy'; -// }, -// })); - -// jest.mock('./containers/PrivateRoute', () => ({ -// __esModule: true, -// default: ({ children }: { children: React.ReactNode }) => <>{children}, -// useAuth: jest.fn(() => { -// return { -// userData: { -// id: 'xxx-yyy-zzzz-id', -// token: 'xxx-yyy-zzz-token', -// username: 'Renard ADMIN', -// email: 'renard.admin@scality.com', -// groups: ['StorageManager', 'user', 'PlatformAdmin'], -// }, -// }; -// }), -// useShellConfig: jest.fn(() => { -// return { -// config: { -// navbar: { -// main: [ -// { -// kind: 'artesca-base-ui', -// view: 'overview', -// }, -// { -// kind: 'artesca-base-ui', -// view: 'identity', -// }, -// { -// kind: 'metalk8s-ui', -// view: 'platform', -// }, -// { -// kind: 'xcore-ui', -// view: 'storageservices', -// }, -// { -// kind: 'metalk8s-ui', -// view: 'alerts', -// }, -// ], -// subLogin: [ -// { -// kind: 'artesca-base-ui', -// view: 'certificates', -// }, -// { -// kind: 'artesca-base-ui', -// view: 'about', -// }, -// { -// kind: 'artesca-base-ui', -// view: 'license', -// icon: 'fas fa-file-invoice', -// }, -// ], -// }, -// discoveryUrl: '/shell/deployed-ui-apps.json', -// productName: 'MetalK8s', -// }, -// favicon: '/navbar/artesca-favicon.svg', -// themes: { -// darkRebrand: { logoPath: '/logo.svg' }, -// }, -// status: 'success', -// }; -// }), -// })); - jest.mock('@module-federation/enhanced/runtime', () => {}, { virtual: true }); From 7f5267395136b5b5e0552b27b95ad1d9c1b5485e Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Fri, 12 Jul 2024 11:19:30 +0200 Subject: [PATCH 12/24] update remoteEntryPath --- public/assets/zenko/.well-known/micro-app-configuration | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/zenko/.well-known/micro-app-configuration b/public/assets/zenko/.well-known/micro-app-configuration index 93ac01aa1..5eb3aae5f 100644 --- a/public/assets/zenko/.well-known/micro-app-configuration +++ b/public/assets/zenko/.well-known/micro-app-configuration @@ -5,7 +5,7 @@ "kind": "zenko-ui" }, "spec": { - "remoteEntryPath": "/js/remoteEntry.js", + "remoteEntryPath": "/mf-manifest.json", "views": { "dataManagement": { "path": "/", From e366d9edb6eccb094abc2973cba2192f516fa3df Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Mon, 15 Jul 2024 16:23:39 +0200 Subject: [PATCH 13/24] update core-ui to 0.133.0 --- package-lock.json | 14 +++++++------- package.json | 2 +- src/react/FederableApp.tsx | 6 +++++- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 013c154ab..8423dfe23 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "@hapi/joi-date": "^2.0.1", "@hookform/resolvers": "^2.8.8", "@monaco-editor/react": "^4.4.5", - "@scality/core-ui": "^0.132.0", + "@scality/core-ui": "^0.133.0", "@scality/module-federation": "^1.3.2", "@types/react-table": "^7.7.10", "@types/react-virtualized": "^9.21.20", @@ -4183,9 +4183,9 @@ } }, "node_modules/@scality/core-ui": { - "version": "0.132.0", - "resolved": "https://registry.npmjs.org/@scality/core-ui/-/core-ui-0.132.0.tgz", - "integrity": "sha512-jIwdxPXVF/NViK91FnL3x2dhFfpiW6q/blEivaLZrWRMXJQhBmj3Y9TFFCyzPht1nHXNBufHhZBArxhDXLafjA==", + "version": "0.133.0", + "resolved": "https://registry.npmjs.org/@scality/core-ui/-/core-ui-0.133.0.tgz", + "integrity": "sha512-eSRWKeNuYQiSFkWtdAxYpekAQbDFZ84oJVJg79TjxPIeUKbabBdH6IesTHjsmohFulrroXk0BcBorPl+TYM+5A==", "dependencies": { "@floating-ui/dom": "^1.6.3", "@fortawesome/fontawesome-free": "^5.10.2", @@ -21223,9 +21223,9 @@ } }, "@scality/core-ui": { - "version": "0.132.0", - "resolved": "https://registry.npmjs.org/@scality/core-ui/-/core-ui-0.132.0.tgz", - "integrity": "sha512-jIwdxPXVF/NViK91FnL3x2dhFfpiW6q/blEivaLZrWRMXJQhBmj3Y9TFFCyzPht1nHXNBufHhZBArxhDXLafjA==", + "version": "0.133.0", + "resolved": "https://registry.npmjs.org/@scality/core-ui/-/core-ui-0.133.0.tgz", + "integrity": "sha512-eSRWKeNuYQiSFkWtdAxYpekAQbDFZ84oJVJg79TjxPIeUKbabBdH6IesTHjsmohFulrroXk0BcBorPl+TYM+5A==", "requires": { "@floating-ui/dom": "^1.6.3", "@fortawesome/fontawesome-free": "^5.10.2", diff --git a/package.json b/package.json index 424328673..6d9d53b39 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,7 @@ "@hapi/joi-date": "^2.0.1", "@hookform/resolvers": "^2.8.8", "@monaco-editor/react": "^4.4.5", - "@scality/core-ui": "^0.132.0", + "@scality/core-ui": "^0.133.0", "@scality/module-federation": "^1.3.2", "@types/react-table": "^7.7.10", "@types/react-virtualized": "^9.21.20", diff --git a/src/react/FederableApp.tsx b/src/react/FederableApp.tsx index 856d32649..963a8f1bb 100644 --- a/src/react/FederableApp.tsx +++ b/src/react/FederableApp.tsx @@ -1,7 +1,9 @@ +import { ToastProvider } from '@scality/core-ui'; import { ReactQueryDevtools } from 'react-query/devtools'; import { Provider } from 'react-redux'; import { BrowserRouter, useHistory } from 'react-router-dom'; import { applyMiddleware, compose, createStore } from 'redux'; + import thunk from 'redux-thunk'; import ZenkoUI from './ZenkoUI'; import { AccessibleAccountsAdapterProvider } from './next-architecture/ui/AccessibleAccountsAdapterProvider'; @@ -58,7 +60,9 @@ const FederableApp = () => { - + + + From 1eb96d310024d473fafb77ef04173a042756aa35 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Mon, 15 Jul 2024 18:32:49 +0200 Subject: [PATCH 14/24] rename zenko folder to data --- .../.well-known/micro-app-configuration | 0 .../.well-known/runtime-app-configuration | 4 ++-- .../vs/base/browser/ui/codicons/codicon/codicon.ttf | Bin .../vs/base/common/worker/simpleWorker.nls.de.js | 0 .../vs/base/common/worker/simpleWorker.nls.es.js | 0 .../vs/base/common/worker/simpleWorker.nls.fr.js | 0 .../vs/base/common/worker/simpleWorker.nls.it.js | 0 .../vs/base/common/worker/simpleWorker.nls.ja.js | 0 .../vs/base/common/worker/simpleWorker.nls.js | 0 .../vs/base/common/worker/simpleWorker.nls.ko.js | 0 .../vs/base/common/worker/simpleWorker.nls.ru.js | 0 .../vs/base/common/worker/simpleWorker.nls.zh-cn.js | 0 .../vs/base/common/worker/simpleWorker.nls.zh-tw.js | 0 .../{zenko => data}/vs/base/worker/workerMain.js | 0 .../{zenko => data}/vs/basic-languages/abap/abap.js | 0 .../{zenko => data}/vs/basic-languages/apex/apex.js | 0 .../vs/basic-languages/azcli/azcli.js | 0 .../{zenko => data}/vs/basic-languages/bat/bat.js | 0 .../vs/basic-languages/bicep/bicep.js | 0 .../vs/basic-languages/cameligo/cameligo.js | 0 .../vs/basic-languages/clojure/clojure.js | 0 .../vs/basic-languages/coffee/coffee.js | 0 .../{zenko => data}/vs/basic-languages/cpp/cpp.js | 0 .../vs/basic-languages/csharp/csharp.js | 0 .../{zenko => data}/vs/basic-languages/csp/csp.js | 0 .../{zenko => data}/vs/basic-languages/css/css.js | 0 .../vs/basic-languages/cypher/cypher.js | 0 .../{zenko => data}/vs/basic-languages/dart/dart.js | 0 .../vs/basic-languages/dockerfile/dockerfile.js | 0 .../{zenko => data}/vs/basic-languages/ecl/ecl.js | 0 .../vs/basic-languages/elixir/elixir.js | 0 .../vs/basic-languages/flow9/flow9.js | 0 .../vs/basic-languages/freemarker2/freemarker2.js | 0 .../vs/basic-languages/fsharp/fsharp.js | 0 .../{zenko => data}/vs/basic-languages/go/go.js | 0 .../vs/basic-languages/graphql/graphql.js | 0 .../vs/basic-languages/handlebars/handlebars.js | 0 .../{zenko => data}/vs/basic-languages/hcl/hcl.js | 0 .../{zenko => data}/vs/basic-languages/html/html.js | 0 .../{zenko => data}/vs/basic-languages/ini/ini.js | 0 .../{zenko => data}/vs/basic-languages/java/java.js | 0 .../vs/basic-languages/javascript/javascript.js | 0 .../vs/basic-languages/julia/julia.js | 0 .../vs/basic-languages/kotlin/kotlin.js | 0 .../{zenko => data}/vs/basic-languages/less/less.js | 0 .../vs/basic-languages/lexon/lexon.js | 0 .../vs/basic-languages/liquid/liquid.js | 0 .../{zenko => data}/vs/basic-languages/lua/lua.js | 0 .../{zenko => data}/vs/basic-languages/m3/m3.js | 0 .../vs/basic-languages/markdown/markdown.js | 0 .../{zenko => data}/vs/basic-languages/mips/mips.js | 0 .../vs/basic-languages/msdax/msdax.js | 0 .../vs/basic-languages/mysql/mysql.js | 0 .../vs/basic-languages/objective-c/objective-c.js | 0 .../vs/basic-languages/pascal/pascal.js | 0 .../vs/basic-languages/pascaligo/pascaligo.js | 0 .../{zenko => data}/vs/basic-languages/perl/perl.js | 0 .../vs/basic-languages/pgsql/pgsql.js | 0 .../{zenko => data}/vs/basic-languages/php/php.js | 0 .../{zenko => data}/vs/basic-languages/pla/pla.js | 0 .../vs/basic-languages/postiats/postiats.js | 0 .../vs/basic-languages/powerquery/powerquery.js | 0 .../vs/basic-languages/powershell/powershell.js | 0 .../vs/basic-languages/protobuf/protobuf.js | 0 .../{zenko => data}/vs/basic-languages/pug/pug.js | 0 .../vs/basic-languages/python/python.js | 0 .../vs/basic-languages/qsharp/qsharp.js | 0 .../{zenko => data}/vs/basic-languages/r/r.js | 0 .../vs/basic-languages/razor/razor.js | 0 .../vs/basic-languages/redis/redis.js | 0 .../vs/basic-languages/redshift/redshift.js | 0 .../restructuredtext/restructuredtext.js | 0 .../{zenko => data}/vs/basic-languages/ruby/ruby.js | 0 .../{zenko => data}/vs/basic-languages/rust/rust.js | 0 .../{zenko => data}/vs/basic-languages/sb/sb.js | 0 .../vs/basic-languages/scala/scala.js | 0 .../vs/basic-languages/scheme/scheme.js | 0 .../{zenko => data}/vs/basic-languages/scss/scss.js | 0 .../vs/basic-languages/shell/shell.js | 0 .../vs/basic-languages/solidity/solidity.js | 0 .../vs/basic-languages/sophia/sophia.js | 0 .../vs/basic-languages/sparql/sparql.js | 0 .../{zenko => data}/vs/basic-languages/sql/sql.js | 0 .../{zenko => data}/vs/basic-languages/st/st.js | 0 .../vs/basic-languages/swift/swift.js | 0 .../basic-languages/systemverilog/systemverilog.js | 0 .../{zenko => data}/vs/basic-languages/tcl/tcl.js | 0 .../{zenko => data}/vs/basic-languages/twig/twig.js | 0 .../vs/basic-languages/typescript/typescript.js | 0 .../{zenko => data}/vs/basic-languages/vb/vb.js | 0 .../{zenko => data}/vs/basic-languages/xml/xml.js | 0 .../{zenko => data}/vs/basic-languages/yaml/yaml.js | 0 .../{zenko => data}/vs/editor/editor.main.css | 0 .../assets/{zenko => data}/vs/editor/editor.main.js | 0 .../{zenko => data}/vs/editor/editor.main.nls.de.js | 0 .../{zenko => data}/vs/editor/editor.main.nls.es.js | 0 .../{zenko => data}/vs/editor/editor.main.nls.fr.js | 0 .../{zenko => data}/vs/editor/editor.main.nls.it.js | 0 .../{zenko => data}/vs/editor/editor.main.nls.ja.js | 0 .../{zenko => data}/vs/editor/editor.main.nls.js | 0 .../{zenko => data}/vs/editor/editor.main.nls.ko.js | 0 .../{zenko => data}/vs/editor/editor.main.nls.ru.js | 0 .../vs/editor/editor.main.nls.zh-cn.js | 0 .../vs/editor/editor.main.nls.zh-tw.js | 0 .../{zenko => data}/vs/language/css/cssMode.js | 0 .../{zenko => data}/vs/language/css/cssWorker.js | 0 .../{zenko => data}/vs/language/html/htmlMode.js | 0 .../{zenko => data}/vs/language/html/htmlWorker.js | 0 .../{zenko => data}/vs/language/json/jsonMode.js | 0 .../{zenko => data}/vs/language/json/jsonWorker.js | 0 .../vs/language/typescript/tsMode.js | 0 .../vs/language/typescript/tsWorker.js | 0 public/assets/{zenko => data}/vs/loader.js | 0 rspack.config.ts | 2 +- 114 files changed, 3 insertions(+), 3 deletions(-) rename public/assets/{zenko => data}/.well-known/micro-app-configuration (100%) rename public/assets/{zenko => data}/.well-known/runtime-app-configuration (92%) rename public/assets/{zenko => data}/vs/base/browser/ui/codicons/codicon/codicon.ttf (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.de.js (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.es.js (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.fr.js (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.it.js (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.ja.js (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.js (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.ko.js (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.ru.js (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.zh-cn.js (100%) rename public/assets/{zenko => data}/vs/base/common/worker/simpleWorker.nls.zh-tw.js (100%) rename public/assets/{zenko => data}/vs/base/worker/workerMain.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/abap/abap.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/apex/apex.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/azcli/azcli.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/bat/bat.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/bicep/bicep.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/cameligo/cameligo.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/clojure/clojure.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/coffee/coffee.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/cpp/cpp.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/csharp/csharp.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/csp/csp.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/css/css.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/cypher/cypher.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/dart/dart.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/dockerfile/dockerfile.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/ecl/ecl.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/elixir/elixir.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/flow9/flow9.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/freemarker2/freemarker2.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/fsharp/fsharp.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/go/go.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/graphql/graphql.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/handlebars/handlebars.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/hcl/hcl.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/html/html.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/ini/ini.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/java/java.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/javascript/javascript.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/julia/julia.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/kotlin/kotlin.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/less/less.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/lexon/lexon.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/liquid/liquid.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/lua/lua.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/m3/m3.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/markdown/markdown.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/mips/mips.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/msdax/msdax.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/mysql/mysql.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/objective-c/objective-c.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/pascal/pascal.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/pascaligo/pascaligo.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/perl/perl.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/pgsql/pgsql.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/php/php.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/pla/pla.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/postiats/postiats.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/powerquery/powerquery.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/powershell/powershell.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/protobuf/protobuf.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/pug/pug.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/python/python.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/qsharp/qsharp.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/r/r.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/razor/razor.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/redis/redis.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/redshift/redshift.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/restructuredtext/restructuredtext.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/ruby/ruby.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/rust/rust.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/sb/sb.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/scala/scala.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/scheme/scheme.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/scss/scss.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/shell/shell.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/solidity/solidity.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/sophia/sophia.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/sparql/sparql.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/sql/sql.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/st/st.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/swift/swift.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/systemverilog/systemverilog.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/tcl/tcl.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/twig/twig.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/typescript/typescript.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/vb/vb.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/xml/xml.js (100%) rename public/assets/{zenko => data}/vs/basic-languages/yaml/yaml.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.css (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.de.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.es.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.fr.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.it.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.ja.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.ko.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.ru.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.zh-cn.js (100%) rename public/assets/{zenko => data}/vs/editor/editor.main.nls.zh-tw.js (100%) rename public/assets/{zenko => data}/vs/language/css/cssMode.js (100%) rename public/assets/{zenko => data}/vs/language/css/cssWorker.js (100%) rename public/assets/{zenko => data}/vs/language/html/htmlMode.js (100%) rename public/assets/{zenko => data}/vs/language/html/htmlWorker.js (100%) rename public/assets/{zenko => data}/vs/language/json/jsonMode.js (100%) rename public/assets/{zenko => data}/vs/language/json/jsonWorker.js (100%) rename public/assets/{zenko => data}/vs/language/typescript/tsMode.js (100%) rename public/assets/{zenko => data}/vs/language/typescript/tsWorker.js (100%) rename public/assets/{zenko => data}/vs/loader.js (100%) diff --git a/public/assets/zenko/.well-known/micro-app-configuration b/public/assets/data/.well-known/micro-app-configuration similarity index 100% rename from public/assets/zenko/.well-known/micro-app-configuration rename to public/assets/data/.well-known/micro-app-configuration diff --git a/public/assets/zenko/.well-known/runtime-app-configuration b/public/assets/data/.well-known/runtime-app-configuration similarity index 92% rename from public/assets/zenko/.well-known/runtime-app-configuration rename to public/assets/data/.well-known/runtime-app-configuration index 0fbf9ef4a..8a7132918 100644 --- a/public/assets/zenko/.well-known/runtime-app-configuration +++ b/public/assets/data/.well-known/runtime-app-configuration @@ -3,7 +3,7 @@ "apiVersion": "ui.scality.com/v1alpha1", "metadata": { "kind": "zenko-ui", - "name": "zenko-ui.eu-west-1" + "name": "zenko.eu-west-1" }, "spec": { "title": "Data Management", @@ -12,7 +12,7 @@ "stsEndpoint": "http://127.0.0.1:8383/sts", "zenkoEndpoint": "http://127.0.0.1:8383/s3", "iamEndpoint": "http://127.0.0.1:8383/iam", - "features": ["XDM"], + "features": [], "basePath": "" }, "auth": { diff --git a/public/assets/zenko/vs/base/browser/ui/codicons/codicon/codicon.ttf b/public/assets/data/vs/base/browser/ui/codicons/codicon/codicon.ttf similarity index 100% rename from public/assets/zenko/vs/base/browser/ui/codicons/codicon/codicon.ttf rename to public/assets/data/vs/base/browser/ui/codicons/codicon/codicon.ttf diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.de.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.de.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.de.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.de.js diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.es.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.es.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.es.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.es.js diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.fr.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.fr.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.fr.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.fr.js diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.it.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.it.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.it.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.it.js diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.ja.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.ja.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.ja.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.ja.js diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.js diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.ko.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.ko.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.ko.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.ko.js diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.ru.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.ru.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.ru.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.ru.js diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.zh-cn.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.zh-cn.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.zh-cn.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.zh-cn.js diff --git a/public/assets/zenko/vs/base/common/worker/simpleWorker.nls.zh-tw.js b/public/assets/data/vs/base/common/worker/simpleWorker.nls.zh-tw.js similarity index 100% rename from public/assets/zenko/vs/base/common/worker/simpleWorker.nls.zh-tw.js rename to public/assets/data/vs/base/common/worker/simpleWorker.nls.zh-tw.js diff --git a/public/assets/zenko/vs/base/worker/workerMain.js b/public/assets/data/vs/base/worker/workerMain.js similarity index 100% rename from public/assets/zenko/vs/base/worker/workerMain.js rename to public/assets/data/vs/base/worker/workerMain.js diff --git a/public/assets/zenko/vs/basic-languages/abap/abap.js b/public/assets/data/vs/basic-languages/abap/abap.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/abap/abap.js rename to public/assets/data/vs/basic-languages/abap/abap.js diff --git a/public/assets/zenko/vs/basic-languages/apex/apex.js b/public/assets/data/vs/basic-languages/apex/apex.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/apex/apex.js rename to public/assets/data/vs/basic-languages/apex/apex.js diff --git a/public/assets/zenko/vs/basic-languages/azcli/azcli.js b/public/assets/data/vs/basic-languages/azcli/azcli.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/azcli/azcli.js rename to public/assets/data/vs/basic-languages/azcli/azcli.js diff --git a/public/assets/zenko/vs/basic-languages/bat/bat.js b/public/assets/data/vs/basic-languages/bat/bat.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/bat/bat.js rename to public/assets/data/vs/basic-languages/bat/bat.js diff --git a/public/assets/zenko/vs/basic-languages/bicep/bicep.js b/public/assets/data/vs/basic-languages/bicep/bicep.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/bicep/bicep.js rename to public/assets/data/vs/basic-languages/bicep/bicep.js diff --git a/public/assets/zenko/vs/basic-languages/cameligo/cameligo.js b/public/assets/data/vs/basic-languages/cameligo/cameligo.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/cameligo/cameligo.js rename to public/assets/data/vs/basic-languages/cameligo/cameligo.js diff --git a/public/assets/zenko/vs/basic-languages/clojure/clojure.js b/public/assets/data/vs/basic-languages/clojure/clojure.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/clojure/clojure.js rename to public/assets/data/vs/basic-languages/clojure/clojure.js diff --git a/public/assets/zenko/vs/basic-languages/coffee/coffee.js b/public/assets/data/vs/basic-languages/coffee/coffee.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/coffee/coffee.js rename to public/assets/data/vs/basic-languages/coffee/coffee.js diff --git a/public/assets/zenko/vs/basic-languages/cpp/cpp.js b/public/assets/data/vs/basic-languages/cpp/cpp.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/cpp/cpp.js rename to public/assets/data/vs/basic-languages/cpp/cpp.js diff --git a/public/assets/zenko/vs/basic-languages/csharp/csharp.js b/public/assets/data/vs/basic-languages/csharp/csharp.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/csharp/csharp.js rename to public/assets/data/vs/basic-languages/csharp/csharp.js diff --git a/public/assets/zenko/vs/basic-languages/csp/csp.js b/public/assets/data/vs/basic-languages/csp/csp.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/csp/csp.js rename to public/assets/data/vs/basic-languages/csp/csp.js diff --git a/public/assets/zenko/vs/basic-languages/css/css.js b/public/assets/data/vs/basic-languages/css/css.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/css/css.js rename to public/assets/data/vs/basic-languages/css/css.js diff --git a/public/assets/zenko/vs/basic-languages/cypher/cypher.js b/public/assets/data/vs/basic-languages/cypher/cypher.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/cypher/cypher.js rename to public/assets/data/vs/basic-languages/cypher/cypher.js diff --git a/public/assets/zenko/vs/basic-languages/dart/dart.js b/public/assets/data/vs/basic-languages/dart/dart.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/dart/dart.js rename to public/assets/data/vs/basic-languages/dart/dart.js diff --git a/public/assets/zenko/vs/basic-languages/dockerfile/dockerfile.js b/public/assets/data/vs/basic-languages/dockerfile/dockerfile.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/dockerfile/dockerfile.js rename to public/assets/data/vs/basic-languages/dockerfile/dockerfile.js diff --git a/public/assets/zenko/vs/basic-languages/ecl/ecl.js b/public/assets/data/vs/basic-languages/ecl/ecl.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/ecl/ecl.js rename to public/assets/data/vs/basic-languages/ecl/ecl.js diff --git a/public/assets/zenko/vs/basic-languages/elixir/elixir.js b/public/assets/data/vs/basic-languages/elixir/elixir.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/elixir/elixir.js rename to public/assets/data/vs/basic-languages/elixir/elixir.js diff --git a/public/assets/zenko/vs/basic-languages/flow9/flow9.js b/public/assets/data/vs/basic-languages/flow9/flow9.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/flow9/flow9.js rename to public/assets/data/vs/basic-languages/flow9/flow9.js diff --git a/public/assets/zenko/vs/basic-languages/freemarker2/freemarker2.js b/public/assets/data/vs/basic-languages/freemarker2/freemarker2.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/freemarker2/freemarker2.js rename to public/assets/data/vs/basic-languages/freemarker2/freemarker2.js diff --git a/public/assets/zenko/vs/basic-languages/fsharp/fsharp.js b/public/assets/data/vs/basic-languages/fsharp/fsharp.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/fsharp/fsharp.js rename to public/assets/data/vs/basic-languages/fsharp/fsharp.js diff --git a/public/assets/zenko/vs/basic-languages/go/go.js b/public/assets/data/vs/basic-languages/go/go.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/go/go.js rename to public/assets/data/vs/basic-languages/go/go.js diff --git a/public/assets/zenko/vs/basic-languages/graphql/graphql.js b/public/assets/data/vs/basic-languages/graphql/graphql.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/graphql/graphql.js rename to public/assets/data/vs/basic-languages/graphql/graphql.js diff --git a/public/assets/zenko/vs/basic-languages/handlebars/handlebars.js b/public/assets/data/vs/basic-languages/handlebars/handlebars.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/handlebars/handlebars.js rename to public/assets/data/vs/basic-languages/handlebars/handlebars.js diff --git a/public/assets/zenko/vs/basic-languages/hcl/hcl.js b/public/assets/data/vs/basic-languages/hcl/hcl.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/hcl/hcl.js rename to public/assets/data/vs/basic-languages/hcl/hcl.js diff --git a/public/assets/zenko/vs/basic-languages/html/html.js b/public/assets/data/vs/basic-languages/html/html.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/html/html.js rename to public/assets/data/vs/basic-languages/html/html.js diff --git a/public/assets/zenko/vs/basic-languages/ini/ini.js b/public/assets/data/vs/basic-languages/ini/ini.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/ini/ini.js rename to public/assets/data/vs/basic-languages/ini/ini.js diff --git a/public/assets/zenko/vs/basic-languages/java/java.js b/public/assets/data/vs/basic-languages/java/java.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/java/java.js rename to public/assets/data/vs/basic-languages/java/java.js diff --git a/public/assets/zenko/vs/basic-languages/javascript/javascript.js b/public/assets/data/vs/basic-languages/javascript/javascript.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/javascript/javascript.js rename to public/assets/data/vs/basic-languages/javascript/javascript.js diff --git a/public/assets/zenko/vs/basic-languages/julia/julia.js b/public/assets/data/vs/basic-languages/julia/julia.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/julia/julia.js rename to public/assets/data/vs/basic-languages/julia/julia.js diff --git a/public/assets/zenko/vs/basic-languages/kotlin/kotlin.js b/public/assets/data/vs/basic-languages/kotlin/kotlin.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/kotlin/kotlin.js rename to public/assets/data/vs/basic-languages/kotlin/kotlin.js diff --git a/public/assets/zenko/vs/basic-languages/less/less.js b/public/assets/data/vs/basic-languages/less/less.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/less/less.js rename to public/assets/data/vs/basic-languages/less/less.js diff --git a/public/assets/zenko/vs/basic-languages/lexon/lexon.js b/public/assets/data/vs/basic-languages/lexon/lexon.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/lexon/lexon.js rename to public/assets/data/vs/basic-languages/lexon/lexon.js diff --git a/public/assets/zenko/vs/basic-languages/liquid/liquid.js b/public/assets/data/vs/basic-languages/liquid/liquid.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/liquid/liquid.js rename to public/assets/data/vs/basic-languages/liquid/liquid.js diff --git a/public/assets/zenko/vs/basic-languages/lua/lua.js b/public/assets/data/vs/basic-languages/lua/lua.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/lua/lua.js rename to public/assets/data/vs/basic-languages/lua/lua.js diff --git a/public/assets/zenko/vs/basic-languages/m3/m3.js b/public/assets/data/vs/basic-languages/m3/m3.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/m3/m3.js rename to public/assets/data/vs/basic-languages/m3/m3.js diff --git a/public/assets/zenko/vs/basic-languages/markdown/markdown.js b/public/assets/data/vs/basic-languages/markdown/markdown.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/markdown/markdown.js rename to public/assets/data/vs/basic-languages/markdown/markdown.js diff --git a/public/assets/zenko/vs/basic-languages/mips/mips.js b/public/assets/data/vs/basic-languages/mips/mips.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/mips/mips.js rename to public/assets/data/vs/basic-languages/mips/mips.js diff --git a/public/assets/zenko/vs/basic-languages/msdax/msdax.js b/public/assets/data/vs/basic-languages/msdax/msdax.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/msdax/msdax.js rename to public/assets/data/vs/basic-languages/msdax/msdax.js diff --git a/public/assets/zenko/vs/basic-languages/mysql/mysql.js b/public/assets/data/vs/basic-languages/mysql/mysql.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/mysql/mysql.js rename to public/assets/data/vs/basic-languages/mysql/mysql.js diff --git a/public/assets/zenko/vs/basic-languages/objective-c/objective-c.js b/public/assets/data/vs/basic-languages/objective-c/objective-c.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/objective-c/objective-c.js rename to public/assets/data/vs/basic-languages/objective-c/objective-c.js diff --git a/public/assets/zenko/vs/basic-languages/pascal/pascal.js b/public/assets/data/vs/basic-languages/pascal/pascal.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/pascal/pascal.js rename to public/assets/data/vs/basic-languages/pascal/pascal.js diff --git a/public/assets/zenko/vs/basic-languages/pascaligo/pascaligo.js b/public/assets/data/vs/basic-languages/pascaligo/pascaligo.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/pascaligo/pascaligo.js rename to public/assets/data/vs/basic-languages/pascaligo/pascaligo.js diff --git a/public/assets/zenko/vs/basic-languages/perl/perl.js b/public/assets/data/vs/basic-languages/perl/perl.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/perl/perl.js rename to public/assets/data/vs/basic-languages/perl/perl.js diff --git a/public/assets/zenko/vs/basic-languages/pgsql/pgsql.js b/public/assets/data/vs/basic-languages/pgsql/pgsql.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/pgsql/pgsql.js rename to public/assets/data/vs/basic-languages/pgsql/pgsql.js diff --git a/public/assets/zenko/vs/basic-languages/php/php.js b/public/assets/data/vs/basic-languages/php/php.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/php/php.js rename to public/assets/data/vs/basic-languages/php/php.js diff --git a/public/assets/zenko/vs/basic-languages/pla/pla.js b/public/assets/data/vs/basic-languages/pla/pla.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/pla/pla.js rename to public/assets/data/vs/basic-languages/pla/pla.js diff --git a/public/assets/zenko/vs/basic-languages/postiats/postiats.js b/public/assets/data/vs/basic-languages/postiats/postiats.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/postiats/postiats.js rename to public/assets/data/vs/basic-languages/postiats/postiats.js diff --git a/public/assets/zenko/vs/basic-languages/powerquery/powerquery.js b/public/assets/data/vs/basic-languages/powerquery/powerquery.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/powerquery/powerquery.js rename to public/assets/data/vs/basic-languages/powerquery/powerquery.js diff --git a/public/assets/zenko/vs/basic-languages/powershell/powershell.js b/public/assets/data/vs/basic-languages/powershell/powershell.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/powershell/powershell.js rename to public/assets/data/vs/basic-languages/powershell/powershell.js diff --git a/public/assets/zenko/vs/basic-languages/protobuf/protobuf.js b/public/assets/data/vs/basic-languages/protobuf/protobuf.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/protobuf/protobuf.js rename to public/assets/data/vs/basic-languages/protobuf/protobuf.js diff --git a/public/assets/zenko/vs/basic-languages/pug/pug.js b/public/assets/data/vs/basic-languages/pug/pug.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/pug/pug.js rename to public/assets/data/vs/basic-languages/pug/pug.js diff --git a/public/assets/zenko/vs/basic-languages/python/python.js b/public/assets/data/vs/basic-languages/python/python.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/python/python.js rename to public/assets/data/vs/basic-languages/python/python.js diff --git a/public/assets/zenko/vs/basic-languages/qsharp/qsharp.js b/public/assets/data/vs/basic-languages/qsharp/qsharp.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/qsharp/qsharp.js rename to public/assets/data/vs/basic-languages/qsharp/qsharp.js diff --git a/public/assets/zenko/vs/basic-languages/r/r.js b/public/assets/data/vs/basic-languages/r/r.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/r/r.js rename to public/assets/data/vs/basic-languages/r/r.js diff --git a/public/assets/zenko/vs/basic-languages/razor/razor.js b/public/assets/data/vs/basic-languages/razor/razor.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/razor/razor.js rename to public/assets/data/vs/basic-languages/razor/razor.js diff --git a/public/assets/zenko/vs/basic-languages/redis/redis.js b/public/assets/data/vs/basic-languages/redis/redis.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/redis/redis.js rename to public/assets/data/vs/basic-languages/redis/redis.js diff --git a/public/assets/zenko/vs/basic-languages/redshift/redshift.js b/public/assets/data/vs/basic-languages/redshift/redshift.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/redshift/redshift.js rename to public/assets/data/vs/basic-languages/redshift/redshift.js diff --git a/public/assets/zenko/vs/basic-languages/restructuredtext/restructuredtext.js b/public/assets/data/vs/basic-languages/restructuredtext/restructuredtext.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/restructuredtext/restructuredtext.js rename to public/assets/data/vs/basic-languages/restructuredtext/restructuredtext.js diff --git a/public/assets/zenko/vs/basic-languages/ruby/ruby.js b/public/assets/data/vs/basic-languages/ruby/ruby.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/ruby/ruby.js rename to public/assets/data/vs/basic-languages/ruby/ruby.js diff --git a/public/assets/zenko/vs/basic-languages/rust/rust.js b/public/assets/data/vs/basic-languages/rust/rust.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/rust/rust.js rename to public/assets/data/vs/basic-languages/rust/rust.js diff --git a/public/assets/zenko/vs/basic-languages/sb/sb.js b/public/assets/data/vs/basic-languages/sb/sb.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/sb/sb.js rename to public/assets/data/vs/basic-languages/sb/sb.js diff --git a/public/assets/zenko/vs/basic-languages/scala/scala.js b/public/assets/data/vs/basic-languages/scala/scala.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/scala/scala.js rename to public/assets/data/vs/basic-languages/scala/scala.js diff --git a/public/assets/zenko/vs/basic-languages/scheme/scheme.js b/public/assets/data/vs/basic-languages/scheme/scheme.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/scheme/scheme.js rename to public/assets/data/vs/basic-languages/scheme/scheme.js diff --git a/public/assets/zenko/vs/basic-languages/scss/scss.js b/public/assets/data/vs/basic-languages/scss/scss.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/scss/scss.js rename to public/assets/data/vs/basic-languages/scss/scss.js diff --git a/public/assets/zenko/vs/basic-languages/shell/shell.js b/public/assets/data/vs/basic-languages/shell/shell.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/shell/shell.js rename to public/assets/data/vs/basic-languages/shell/shell.js diff --git a/public/assets/zenko/vs/basic-languages/solidity/solidity.js b/public/assets/data/vs/basic-languages/solidity/solidity.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/solidity/solidity.js rename to public/assets/data/vs/basic-languages/solidity/solidity.js diff --git a/public/assets/zenko/vs/basic-languages/sophia/sophia.js b/public/assets/data/vs/basic-languages/sophia/sophia.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/sophia/sophia.js rename to public/assets/data/vs/basic-languages/sophia/sophia.js diff --git a/public/assets/zenko/vs/basic-languages/sparql/sparql.js b/public/assets/data/vs/basic-languages/sparql/sparql.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/sparql/sparql.js rename to public/assets/data/vs/basic-languages/sparql/sparql.js diff --git a/public/assets/zenko/vs/basic-languages/sql/sql.js b/public/assets/data/vs/basic-languages/sql/sql.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/sql/sql.js rename to public/assets/data/vs/basic-languages/sql/sql.js diff --git a/public/assets/zenko/vs/basic-languages/st/st.js b/public/assets/data/vs/basic-languages/st/st.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/st/st.js rename to public/assets/data/vs/basic-languages/st/st.js diff --git a/public/assets/zenko/vs/basic-languages/swift/swift.js b/public/assets/data/vs/basic-languages/swift/swift.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/swift/swift.js rename to public/assets/data/vs/basic-languages/swift/swift.js diff --git a/public/assets/zenko/vs/basic-languages/systemverilog/systemverilog.js b/public/assets/data/vs/basic-languages/systemverilog/systemverilog.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/systemverilog/systemverilog.js rename to public/assets/data/vs/basic-languages/systemverilog/systemverilog.js diff --git a/public/assets/zenko/vs/basic-languages/tcl/tcl.js b/public/assets/data/vs/basic-languages/tcl/tcl.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/tcl/tcl.js rename to public/assets/data/vs/basic-languages/tcl/tcl.js diff --git a/public/assets/zenko/vs/basic-languages/twig/twig.js b/public/assets/data/vs/basic-languages/twig/twig.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/twig/twig.js rename to public/assets/data/vs/basic-languages/twig/twig.js diff --git a/public/assets/zenko/vs/basic-languages/typescript/typescript.js b/public/assets/data/vs/basic-languages/typescript/typescript.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/typescript/typescript.js rename to public/assets/data/vs/basic-languages/typescript/typescript.js diff --git a/public/assets/zenko/vs/basic-languages/vb/vb.js b/public/assets/data/vs/basic-languages/vb/vb.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/vb/vb.js rename to public/assets/data/vs/basic-languages/vb/vb.js diff --git a/public/assets/zenko/vs/basic-languages/xml/xml.js b/public/assets/data/vs/basic-languages/xml/xml.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/xml/xml.js rename to public/assets/data/vs/basic-languages/xml/xml.js diff --git a/public/assets/zenko/vs/basic-languages/yaml/yaml.js b/public/assets/data/vs/basic-languages/yaml/yaml.js similarity index 100% rename from public/assets/zenko/vs/basic-languages/yaml/yaml.js rename to public/assets/data/vs/basic-languages/yaml/yaml.js diff --git a/public/assets/zenko/vs/editor/editor.main.css b/public/assets/data/vs/editor/editor.main.css similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.css rename to public/assets/data/vs/editor/editor.main.css diff --git a/public/assets/zenko/vs/editor/editor.main.js b/public/assets/data/vs/editor/editor.main.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.js rename to public/assets/data/vs/editor/editor.main.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.de.js b/public/assets/data/vs/editor/editor.main.nls.de.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.de.js rename to public/assets/data/vs/editor/editor.main.nls.de.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.es.js b/public/assets/data/vs/editor/editor.main.nls.es.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.es.js rename to public/assets/data/vs/editor/editor.main.nls.es.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.fr.js b/public/assets/data/vs/editor/editor.main.nls.fr.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.fr.js rename to public/assets/data/vs/editor/editor.main.nls.fr.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.it.js b/public/assets/data/vs/editor/editor.main.nls.it.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.it.js rename to public/assets/data/vs/editor/editor.main.nls.it.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.ja.js b/public/assets/data/vs/editor/editor.main.nls.ja.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.ja.js rename to public/assets/data/vs/editor/editor.main.nls.ja.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.js b/public/assets/data/vs/editor/editor.main.nls.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.js rename to public/assets/data/vs/editor/editor.main.nls.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.ko.js b/public/assets/data/vs/editor/editor.main.nls.ko.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.ko.js rename to public/assets/data/vs/editor/editor.main.nls.ko.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.ru.js b/public/assets/data/vs/editor/editor.main.nls.ru.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.ru.js rename to public/assets/data/vs/editor/editor.main.nls.ru.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.zh-cn.js b/public/assets/data/vs/editor/editor.main.nls.zh-cn.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.zh-cn.js rename to public/assets/data/vs/editor/editor.main.nls.zh-cn.js diff --git a/public/assets/zenko/vs/editor/editor.main.nls.zh-tw.js b/public/assets/data/vs/editor/editor.main.nls.zh-tw.js similarity index 100% rename from public/assets/zenko/vs/editor/editor.main.nls.zh-tw.js rename to public/assets/data/vs/editor/editor.main.nls.zh-tw.js diff --git a/public/assets/zenko/vs/language/css/cssMode.js b/public/assets/data/vs/language/css/cssMode.js similarity index 100% rename from public/assets/zenko/vs/language/css/cssMode.js rename to public/assets/data/vs/language/css/cssMode.js diff --git a/public/assets/zenko/vs/language/css/cssWorker.js b/public/assets/data/vs/language/css/cssWorker.js similarity index 100% rename from public/assets/zenko/vs/language/css/cssWorker.js rename to public/assets/data/vs/language/css/cssWorker.js diff --git a/public/assets/zenko/vs/language/html/htmlMode.js b/public/assets/data/vs/language/html/htmlMode.js similarity index 100% rename from public/assets/zenko/vs/language/html/htmlMode.js rename to public/assets/data/vs/language/html/htmlMode.js diff --git a/public/assets/zenko/vs/language/html/htmlWorker.js b/public/assets/data/vs/language/html/htmlWorker.js similarity index 100% rename from public/assets/zenko/vs/language/html/htmlWorker.js rename to public/assets/data/vs/language/html/htmlWorker.js diff --git a/public/assets/zenko/vs/language/json/jsonMode.js b/public/assets/data/vs/language/json/jsonMode.js similarity index 100% rename from public/assets/zenko/vs/language/json/jsonMode.js rename to public/assets/data/vs/language/json/jsonMode.js diff --git a/public/assets/zenko/vs/language/json/jsonWorker.js b/public/assets/data/vs/language/json/jsonWorker.js similarity index 100% rename from public/assets/zenko/vs/language/json/jsonWorker.js rename to public/assets/data/vs/language/json/jsonWorker.js diff --git a/public/assets/zenko/vs/language/typescript/tsMode.js b/public/assets/data/vs/language/typescript/tsMode.js similarity index 100% rename from public/assets/zenko/vs/language/typescript/tsMode.js rename to public/assets/data/vs/language/typescript/tsMode.js diff --git a/public/assets/zenko/vs/language/typescript/tsWorker.js b/public/assets/data/vs/language/typescript/tsWorker.js similarity index 100% rename from public/assets/zenko/vs/language/typescript/tsWorker.js rename to public/assets/data/vs/language/typescript/tsWorker.js diff --git a/public/assets/zenko/vs/loader.js b/public/assets/data/vs/loader.js similarity index 100% rename from public/assets/zenko/vs/loader.js rename to public/assets/data/vs/loader.js diff --git a/rspack.config.ts b/rspack.config.ts index c39daf733..f98da2008 100644 --- a/rspack.config.ts +++ b/rspack.config.ts @@ -156,7 +156,7 @@ const config: Configuration = { }, }), new rspack.CopyRspackPlugin({ - patterns: [{ from: 'public/assets/zenko' }], + patterns: [{ from: 'public/assets/data' }], }), process.env.RSDOCTOR && new RsdoctorRspackPlugin({}), ].filter(Boolean), From cdc4b2cf0a1245876d9352631a6a2ff0ef64794a Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Mon, 15 Jul 2024 19:01:20 +0200 Subject: [PATCH 15/24] update rspack --- rspack.config.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/rspack.config.ts b/rspack.config.ts index f98da2008..8a502a675 100644 --- a/rspack.config.ts +++ b/rspack.config.ts @@ -36,9 +36,9 @@ const config: Configuration = { mode: isProduction ? 'production' : 'development', devtool: isProduction ? false : 'source-map', output: { - filename: `js/[name].[contenthash].${revision}.js`, - assetModuleFilename: 'assets/[name].[hash][ext][query]', - cssFilename: 'css/[name].[contenthash].css', + filename: `static/js/[name].[contenthash].${revision}.js`, + assetModuleFilename: 'static/assets/[name].[hash][ext][query]', + cssFilename: 'static/css/[name].[contenthash].css', path: path.resolve(__dirname, 'build'), publicPath: isProduction ? '/data/' : '/zenko/', }, @@ -118,7 +118,7 @@ const config: Configuration = { plugins: [ new ModuleFederationPlugin({ name: 'zenko', - filename: 'js/remoteEntry.js', + filename: 'static/js/remoteEntry.js', exposes: { './FederableApp': './src/react/FederableApp.tsx', './VeeamWelcomeModal': From a62677e6fba90ac52534082a32da45ea7f6c9e85 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Mon, 15 Jul 2024 19:08:36 +0200 Subject: [PATCH 16/24] test --- rspack.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rspack.config.ts b/rspack.config.ts index 8a502a675..6a86effa3 100644 --- a/rspack.config.ts +++ b/rspack.config.ts @@ -170,7 +170,7 @@ const config: Configuration = { errors: true, }, }, - static: path.join(__dirname, 'public/assets'), + static: path.join(__dirname, 'public/assets/data'), headers: { 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Methods': From 62406f579dc514a586cd54b81d74541bd6dda68b Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Mon, 15 Jul 2024 19:13:22 +0200 Subject: [PATCH 17/24] test --- rspack.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rspack.config.ts b/rspack.config.ts index 6a86effa3..2662e0d5d 100644 --- a/rspack.config.ts +++ b/rspack.config.ts @@ -40,7 +40,7 @@ const config: Configuration = { assetModuleFilename: 'static/assets/[name].[hash][ext][query]', cssFilename: 'static/css/[name].[contenthash].css', path: path.resolve(__dirname, 'build'), - publicPath: isProduction ? '/data/' : '/zenko/', + publicPath: '/data/', }, module: { rules: [ From 8057f58672fb30f57f68eb0aa539994d66835734 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Tue, 16 Jul 2024 11:40:19 +0200 Subject: [PATCH 18/24] test --- rspack.config.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rspack.config.ts b/rspack.config.ts index 2662e0d5d..f9b43ab55 100644 --- a/rspack.config.ts +++ b/rspack.config.ts @@ -179,9 +179,9 @@ const config: Configuration = { 'Access-Control-Expose-Headers': 'ETag', }, proxy: { - '/s3': { + '/data/s3': { target: `https://s3.${zenkoDNS}`, - pathRewrite: { '^/s3': '' }, + pathRewrite: { '^/data/s3': '' }, secure: false, changeOrigin: true, logLevel: 'debug', From 8b1f31d06c9ed59a0d103d9f6a2ae9f981d7df51 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Tue, 16 Jul 2024 11:45:05 +0200 Subject: [PATCH 19/24] test --- public/assets/data/.well-known/runtime-app-configuration | 4 ++-- rspack.config.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/public/assets/data/.well-known/runtime-app-configuration b/public/assets/data/.well-known/runtime-app-configuration index 8a7132918..dfaf48fc8 100644 --- a/public/assets/data/.well-known/runtime-app-configuration +++ b/public/assets/data/.well-known/runtime-app-configuration @@ -10,8 +10,8 @@ "selfConfiguration": { "managementEndpoint": "http://127.0.0.1:8383/management", "stsEndpoint": "http://127.0.0.1:8383/sts", - "zenkoEndpoint": "http://127.0.0.1:8383/s3", - "iamEndpoint": "http://127.0.0.1:8383/iam", + "zenkoEndpoint": "http://127.0.0.1:8383/data/s3", + "iamEndpoint": "http://127.0.0.1:8383/data/iam", "features": [], "basePath": "" }, diff --git a/rspack.config.ts b/rspack.config.ts index f9b43ab55..b2b5d4259 100644 --- a/rspack.config.ts +++ b/rspack.config.ts @@ -192,9 +192,9 @@ const config: Configuration = { } }, }, - '/iam': { + '/data/iam': { target: `https://iam.${zenkoDNS}`, - pathRewrite: { '^/iam': '' }, + pathRewrite: { '^/data/iam': '' }, secure: false, changeOrigin: true, logLevel: 'debug', From e5c067d55762aafdf81f5b481d4eafb0b9b40c65 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Tue, 16 Jul 2024 14:10:34 +0200 Subject: [PATCH 20/24] adapt zenko client to new path --- src/react/actions/auth.ts | 2 +- src/react/next-architecture/ui/S3ClientProvider.tsx | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/react/actions/auth.ts b/src/react/actions/auth.ts index c03b1eb63..41783fdf9 100644 --- a/src/react/actions/auth.ts +++ b/src/react/actions/auth.ts @@ -90,7 +90,7 @@ export function loadAppConfig(config: AppConfig, user): ThunkNonStateAction { config.zenkoEndpoint, config.iamInternalFQDN, config.s3InternalFQDN, - process.env.NODE_ENV === 'development' ? '' : config.basePath, + config.basePath, ), ), ); diff --git a/src/react/next-architecture/ui/S3ClientProvider.tsx b/src/react/next-architecture/ui/S3ClientProvider.tsx index 83e92bc47..b1ae19134 100644 --- a/src/react/next-architecture/ui/S3ClientProvider.tsx +++ b/src/react/next-architecture/ui/S3ClientProvider.tsx @@ -51,7 +51,7 @@ export const S3ClientProvider = ({ s3Config.endpoint, iamInternalFQDN, s3InternalFQDN, - process.env.NODE_ENV === 'development' ? '' : basePath, + basePath, ); const iamClient = new IAMClient(iamEndpoint); @@ -110,7 +110,7 @@ export const S3ClientWithoutReduxProvider = ({ s3Config.endpoint, iamInternalFQDN, s3InternalFQDN, - process.env.NODE_ENV === 'development' ? '' : basePath, + basePath, ); const iamClient = new IAMClient(iamEndpoint); From 73143befdafe06280285d2c18bd29da3947226db Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Tue, 16 Jul 2024 15:01:25 +0200 Subject: [PATCH 21/24] cleaning --- src/js/IAMClient.ts | 6 +- src/js/ZenkoClient.ts | 2 +- src/js/mock/IAMClient.ts | 6 +- src/js/mock/S3Client.ts | 4 +- src/js/mock/STSClient.ts | 4 +- src/js/mock/ZenkoClient.ts | 2 +- src/js/mock/error.ts | 4 +- src/js/mock/managementClient.ts | 10 +- src/react/Routes.tsx | 2 +- src/react/ZenkoUI.tsx | 2 +- src/react/account/AccountCreateUser.tsx | 2 +- src/react/account/AccountDetails.tsx | 2 +- src/react/account/AccountRow.tsx | 89 ----------------- src/react/account/AccountUpdateUser.tsx | 2 +- .../account/AccountUserSecretKeyModal.tsx | 2 +- src/react/account/details/Properties.tsx | 2 +- .../details/properties/AccountInfo.tsx | 2 +- .../details/properties/AccountKeys.tsx | 4 +- .../details/properties/SecretKeyModal.tsx | 4 +- .../__tests__/utils/dispatchActionsList.ts | 8 +- src/react/actions/__tests__/utils/testUtil.ts | 6 +- src/react/actions/account.ts | 6 +- src/react/actions/auth.ts | 10 +- src/react/actions/error.ts | 6 +- src/react/actions/network.ts | 4 +- src/react/actions/oidc.ts | 4 +- src/react/actions/s3bucket.ts | 4 +- src/react/actions/s3object.ts | 6 +- src/react/actions/stats.ts | 2 +- src/react/actions/sts.ts | 2 +- src/react/actions/zenko.ts | 4 +- src/react/databrowser/DataBrowser.tsx | 2 +- .../databrowser/buckets/BucketCreate.tsx | 2 +- .../databrowser/buckets/BucketDetails.tsx | 2 +- src/react/databrowser/buckets/BucketList.tsx | 4 +- src/react/databrowser/buckets/BucketRow.tsx | 99 ------------------- src/react/databrowser/buckets/Buckets.tsx | 2 +- .../databrowser/buckets/ObjectLockSetting.tsx | 2 +- .../databrowser/buckets/details/Overview.tsx | 6 +- .../databrowser/objects/FolderCreate.tsx | 6 +- .../databrowser/objects/ObjectDelete.tsx | 43 ++++---- .../databrowser/objects/ObjectDetails.tsx | 4 +- src/react/databrowser/objects/ObjectList.tsx | 4 +- .../databrowser/objects/ObjectListTable.tsx | 4 +- .../databrowser/objects/ObjectLockSetting.tsx | 2 +- src/react/databrowser/objects/ObjectRow.tsx | 6 +- .../databrowser/objects/ObjectUpload.tsx | 22 ++--- src/react/databrowser/objects/Objects.tsx | 2 +- .../databrowser/objects/details/Metadata.tsx | 2 +- .../objects/details/Properties.tsx | 2 +- .../databrowser/objects/details/Tags.tsx | 2 +- src/react/databrowser/objects/utils.ts | 4 +- src/react/endpoint/EndpointList.tsx | 2 +- src/react/endpoint/EndpointRow.tsx | 2 +- .../LocationDetails/LocationDetails.tsx | 4 +- .../LocationDetails/LocationDetailsNFS.tsx | 2 +- .../LocationDetailsSproxyd.tsx | 2 +- .../LocationDetails/LocationDetailsWasabi.tsx | 2 +- src/react/locations/LocationEditor.tsx | 2 +- src/react/locations/LocationOptions.tsx | 4 +- src/react/locations/LocationsList.tsx | 2 +- src/react/locations/queries.ts | 2 +- src/react/locations/utils.tsx | 6 +- src/react/reducers/account.ts | 6 +- src/react/reducers/auth.ts | 6 +- src/react/reducers/configuration.ts | 4 +- src/react/reducers/initialConstants.ts | 2 +- src/react/reducers/instanceStatus.ts | 6 +- src/react/reducers/instances.ts | 4 +- src/react/reducers/networkActivity.ts | 6 +- src/react/reducers/oidc.ts | 4 +- src/react/reducers/s3.ts | 11 +-- src/react/reducers/secrets.ts | 4 +- src/react/reducers/stats.ts | 6 +- src/react/reducers/uiAccounts.ts | 6 +- src/react/reducers/uiBuckets.ts | 4 +- src/react/reducers/uiErrors.ts | 6 +- src/react/reducers/uiObjects.ts | 6 +- src/react/reducers/uiWorkflows.ts | 4 +- src/react/reducers/zenko.ts | 4 +- src/react/ui-elements/Activity.tsx | 2 +- src/react/ui-elements/ErrorHandlerModal.tsx | 9 +- src/react/ui-elements/ReauthDialog.tsx | 2 +- src/react/utils/IAMhooks.ts | 2 +- src/react/utils/actions.ts | 2 +- src/react/utils/s3.ts | 4 +- src/react/utils/storageOptions.ts | 4 +- src/react/workflow/ConfigurationTab.tsx | 4 +- src/react/workflow/CreateWorkflow.tsx | 2 +- src/react/workflow/ReplicationForm.tsx | 2 +- src/react/workflow/TagsFilter.tsx | 2 +- src/react/workflow/WorkflowContent.tsx | 2 +- src/react/workflow/WorkflowList.tsx | 2 +- src/react/workflow/WorkflowRow.tsx | 82 --------------- src/react/workflow/__tests__/utils.test.ts | 2 +- src/react/workflow/utils.tsx | 8 +- src/types/actions.ts | 24 +++-- src/types/config.ts | 2 +- src/types/iam.ts | 2 +- src/types/location.ts | 2 +- src/types/managementClient.ts | 28 +++--- src/types/state.ts | 24 ++--- src/types/stats.ts | 2 +- src/types/workflow.ts | 2 +- src/types/zenko.ts | 2 +- 105 files changed, 245 insertions(+), 528 deletions(-) delete mode 100644 src/react/account/AccountRow.tsx delete mode 100644 src/react/databrowser/buckets/BucketRow.tsx delete mode 100644 src/react/workflow/WorkflowRow.tsx diff --git a/src/js/IAMClient.ts b/src/js/IAMClient.ts index 46abb9318..5037c08b7 100644 --- a/src/js/IAMClient.ts +++ b/src/js/IAMClient.ts @@ -1,7 +1,7 @@ -import type { AppState } from '../types/state'; -import type { Credentials } from '../types/zenko'; +import { AppState } from '../types/state'; +import { Credentials } from '../types/zenko'; import IAM from 'aws-sdk/clients/iam'; -import type { +import { IAMClient as IAMClientInterface, WebIdentityRoles, } from '../types/iam'; diff --git a/src/js/ZenkoClient.ts b/src/js/ZenkoClient.ts index ee1575369..4bdf8f786 100644 --- a/src/js/ZenkoClient.ts +++ b/src/js/ZenkoClient.ts @@ -1,5 +1,5 @@ import { genClientEndpoint } from '../react/utils'; -import type { +import { Credentials, SearchBucketResp, SearchBucketVersionsResp, diff --git a/src/js/mock/IAMClient.ts b/src/js/mock/IAMClient.ts index 32e8ca2e6..ffebafbdf 100644 --- a/src/js/mock/IAMClient.ts +++ b/src/js/mock/IAMClient.ts @@ -1,5 +1,5 @@ -import type { IamAccessKey, ListAccessKeysResponse } from '../../types/user'; -import type { AWSError } from '../../types/aws'; +import { IamAccessKey, ListAccessKeysResponse } from '../../types/user'; +import { AWSError } from '../../types/aws'; export const accountAccessKeys: Array = [ { AccessKeyId: 'LEAST_RECENT_KEY_BBB', @@ -37,4 +37,4 @@ export class ErrorMockIAMClient { deleteAccessKey(): Promise { return Promise.reject(this._error); } -} \ No newline at end of file +} diff --git a/src/js/mock/S3Client.ts b/src/js/mock/S3Client.ts index f02fe5551..28d81e9b9 100644 --- a/src/js/mock/S3Client.ts +++ b/src/js/mock/S3Client.ts @@ -1,4 +1,4 @@ -import type { +import { BucketInfo, CreateBucketResponse, GetObjectTaggingResponse, @@ -8,7 +8,7 @@ import type { PutObjectTaggingResponse, S3Client as S3ClientInterface, } from '../../types/s3'; -import type { AWSError } from '../../types/aws'; +import { AWSError } from '../../types/aws'; import { addTrailingSlash } from '../../react/utils'; import { azureblobstorage } from './managementClientMSWHandlers'; export const ownerName = 'bart'; diff --git a/src/js/mock/STSClient.ts b/src/js/mock/STSClient.ts index 29c775e43..981d26b22 100644 --- a/src/js/mock/STSClient.ts +++ b/src/js/mock/STSClient.ts @@ -1,4 +1,4 @@ -import type { STSClient as STSClientInterface } from '../../types/sts'; +import { STSClient as STSClientInterface } from '../../types/sts'; export class MockSTSClient implements STSClientInterface { assumeRoleWithWebIdentity() { return Promise.resolve({ @@ -9,4 +9,4 @@ export class MockSTSClient implements STSClientInterface { }, }); } -} \ No newline at end of file +} diff --git a/src/js/mock/ZenkoClient.ts b/src/js/mock/ZenkoClient.ts index 0377fc633..427082d76 100644 --- a/src/js/mock/ZenkoClient.ts +++ b/src/js/mock/ZenkoClient.ts @@ -1,6 +1,6 @@ /* eslint-disable @typescript-eslint/no-empty-function */ import { ErrorMockS3Client, MockS3Client } from './S3Client'; -import type { +import { SearchBucketResp, ZenkoMapResp, ZenkoClient as ZenkoClientInterface, diff --git a/src/js/mock/error.ts b/src/js/mock/error.ts index 58f519ea5..48b9468a2 100644 --- a/src/js/mock/error.ts +++ b/src/js/mock/error.ts @@ -1,4 +1,4 @@ -import type { AWSError } from '../../types/aws'; +import { AWSError } from '../../types/aws'; export class ApiErrorObject extends Error { code: number | string; status: number | string; @@ -20,4 +20,4 @@ export function awsErrorObject(message: string, code: string): AWSError { code, message, }; -} \ No newline at end of file +} diff --git a/src/js/mock/managementClient.ts b/src/js/mock/managementClient.ts index 0e64d595a..82232fa33 100644 --- a/src/js/mock/managementClient.ts +++ b/src/js/mock/managementClient.ts @@ -1,19 +1,19 @@ -import type { AccessKey, Account, SecretKey } from '../../types/account'; -import type { +import { AccessKey, Account, SecretKey } from '../../types/account'; +import { ApiAccountKeyResponse, ApiAccountResponse, ApiConfigurationResponse, ManagementClient as ManagementClientInterface, } from '../../types/managementClient'; -import type { +import { ConfigurationOverlay, Endpoint, Location, Replication, } from '../../types/config'; -import type { APIWorkflows } from '../../types/workflow'; +import { APIWorkflows } from '../../types/workflow'; import { ApiErrorObject } from './error'; -import type { InstanceStatus } from '../../types/stats'; +import { InstanceStatus } from '../../types/stats'; export const location: Location = { name: 'location1', locationType: 'location-file-v1', diff --git a/src/react/Routes.tsx b/src/react/Routes.tsx index f3f49731a..95d773fcd 100644 --- a/src/react/Routes.tsx +++ b/src/react/Routes.tsx @@ -19,7 +19,7 @@ import { } from 'react-router-dom'; import { useTheme } from 'styled-components'; import makeMgtClient from '../js/managementClient'; -import type { AppState } from '../types/state'; +import { AppState } from '../types/state'; import DataServiceRoleProvider, { useCurrentAccount, } from './DataServiceRoleProvider'; diff --git a/src/react/ZenkoUI.tsx b/src/react/ZenkoUI.tsx index ea5799eb0..3d48e0207 100644 --- a/src/react/ZenkoUI.tsx +++ b/src/react/ZenkoUI.tsx @@ -2,7 +2,7 @@ import { Container } from './ui-elements/Container'; import { useEffect } from 'react'; import { useDispatch, useSelector } from 'react-redux'; import Activity from './ui-elements/Activity'; -import type { AppState } from '../types/state'; +import { AppState } from '../types/state'; import { Banner, Icon, ScrollbarWrapper } from '@scality/core-ui'; import ErrorHandlerModal from './ui-elements/ErrorHandlerModal'; import Loader from './ui-elements/Loader'; diff --git a/src/react/account/AccountCreateUser.tsx b/src/react/account/AccountCreateUser.tsx index 344ae4854..e56e7a87c 100644 --- a/src/react/account/AccountCreateUser.tsx +++ b/src/react/account/AccountCreateUser.tsx @@ -6,7 +6,7 @@ import { networkStart, } from '../actions'; import { useDispatch, useSelector } from 'react-redux'; -import type { AppState } from '../../types/state'; +import { AppState } from '../../types/state'; import { Banner, Form, diff --git a/src/react/account/AccountDetails.tsx b/src/react/account/AccountDetails.tsx index 576e0b40f..3bc15fbd7 100644 --- a/src/react/account/AccountDetails.tsx +++ b/src/react/account/AccountDetails.tsx @@ -1,5 +1,5 @@ import { useTheme } from 'styled-components'; -import type { Account } from '../../types/account'; +import { Account } from '../../types/account'; import { Tabs } from '@scality/core-ui/dist/next'; import Properties from './details/Properties'; import { Warning } from '../ui-elements/Warning'; diff --git a/src/react/account/AccountRow.tsx b/src/react/account/AccountRow.tsx deleted file mode 100644 index 5d23f65bd..000000000 --- a/src/react/account/AccountRow.tsx +++ /dev/null @@ -1,89 +0,0 @@ -import { memo } from 'react'; -import type { Dispatch } from 'redux'; -import { areEqual } from 'react-window'; -import isDeepEqual from 'lodash.isequal'; -import memoize from 'memoize-one'; -import { useHistory } from 'react-router-dom'; - -import type { Account } from '../../types/account'; -import type { Action } from '../../types/actions'; -import * as T from '../ui-elements/Table'; - -type PrepareRow = (arg0: RowType) => void; -type RowType = { - id: number; - original: Account; - cells: any; - getRowProps: (arg0: any) => void; -}; -type RowsType = Array; -type Data = { - rows: RowsType; - prepareRow: PrepareRow; - accountNameParam: string | null | undefined; - dispatch: Dispatch; -}; -type RowProps = { - data: Data; - index: number; - style: Record; -}; -// createItemData: This helper function memoizes incoming props, -// To avoid causing unnecessary re-renders pure MemoRow components. -// This is only needed since we are passing multiple props with a wrapper object. -export const createItemData = memoize( - ( - rows: RowsType, - prepareRow: PrepareRow, - accountNameParam: string | null | undefined, - dispatch: Dispatch, - ): Data => ({ - rows, - prepareRow, - accountNameParam, - dispatch, - }), - isDeepEqual, -); - -// https://react-window.now.sh/#/examples/list/memoized-list-items -const Row = ({ - data: { rows, prepareRow, accountNameParam }, - index, - style, -}: RowProps) => { - const history = useHistory(); - const row = rows[index]; - prepareRow(row); - const accountName = row.original.Name; - const isSelected = accountName === accountNameParam; - return ( - { - if (!isSelected) { - history.push(`/accounts/${accountName}`); - } - }} - //@ts-expect-error fix this when you are working on it - {...row.getRowProps({ - style, - })} - > - {row.cells.map((cell) => { - const cellProps = cell.getCellProps(); - return ( - - {cell.render('Cell')} - - ); - })} - - ); -}; - -export default memo(Row, areEqual); diff --git a/src/react/account/AccountUpdateUser.tsx b/src/react/account/AccountUpdateUser.tsx index d92eca59a..5afc37a7d 100644 --- a/src/react/account/AccountUpdateUser.tsx +++ b/src/react/account/AccountUpdateUser.tsx @@ -1,7 +1,7 @@ import { MouseEvent, useRef } from 'react'; import { clearError, handleErrorMessage, networkEnd } from '../actions'; import { useDispatch, useSelector } from 'react-redux'; -import type { AppState } from '../../types/state'; +import { AppState } from '../../types/state'; import { Banner, Form, diff --git a/src/react/account/AccountUserSecretKeyModal.tsx b/src/react/account/AccountUserSecretKeyModal.tsx index 9f03b7629..f37c3a5fd 100644 --- a/src/react/account/AccountUserSecretKeyModal.tsx +++ b/src/react/account/AccountUserSecretKeyModal.tsx @@ -1,4 +1,4 @@ -import type { AccountKey } from '../../types/account'; +import { AccountKey } from '../../types/account'; import { CustomModal as Modal, ModalBody } from '../ui-elements/Modal'; import Table, * as T from '../ui-elements/TableKeyValue'; import { Banner, Icon, Stack, Wrap } from '@scality/core-ui'; diff --git a/src/react/account/details/Properties.tsx b/src/react/account/details/Properties.tsx index 4681e473e..f7a45a91f 100644 --- a/src/react/account/details/Properties.tsx +++ b/src/react/account/details/Properties.tsx @@ -1,4 +1,4 @@ -import type { Account } from '../../../types/account'; +import { Account } from '../../../types/account'; import { useAuthGroups } from '../../utils/hooks'; import AccountInfo from './properties/AccountInfo'; import AccountKeys from './properties/AccountKeys'; diff --git a/src/react/account/details/properties/AccountInfo.tsx b/src/react/account/details/properties/AccountInfo.tsx index 7f2589331..e49fb63eb 100644 --- a/src/react/account/details/properties/AccountInfo.tsx +++ b/src/react/account/details/properties/AccountInfo.tsx @@ -12,7 +12,7 @@ import { useHistory } from 'react-router-dom'; import styled from 'styled-components'; import { useState } from 'react'; -import type { Account } from '../../../../types/account'; +import { Account } from '../../../../types/account'; import { notFalsyTypeGuard } from '../../../../types/typeGuards'; import { useManagementClient } from '../../../ManagementProvider'; import { useAccountsLocationsAndEndpoints } from '../../../next-architecture/domain/business/accounts'; diff --git a/src/react/account/details/properties/AccountKeys.tsx b/src/react/account/details/properties/AccountKeys.tsx index ff1f4a6cc..de2aa685b 100644 --- a/src/react/account/details/properties/AccountKeys.tsx +++ b/src/react/account/details/properties/AccountKeys.tsx @@ -10,8 +10,8 @@ import { useEffect, useMemo, useState } from 'react'; import { useDispatch, useSelector } from 'react-redux'; import { Row } from 'react-table'; import styled from 'styled-components'; -import type { Account } from '../../../../types/account'; -import type { AppState } from '../../../../types/state'; +import { Account } from '../../../../types/account'; +import { AppState } from '../../../../types/state'; import { useDataServiceRole } from '../../../DataServiceRoleProvider'; import { deleteAccountAccessKey, diff --git a/src/react/account/details/properties/SecretKeyModal.tsx b/src/react/account/details/properties/SecretKeyModal.tsx index e01c1db43..6d88e3cc1 100644 --- a/src/react/account/details/properties/SecretKeyModal.tsx +++ b/src/react/account/details/properties/SecretKeyModal.tsx @@ -1,4 +1,4 @@ -import type { Account, AccountKey } from '../../../../types/account'; +import { Account, AccountKey } from '../../../../types/account'; import { CustomModal as Modal, ModalBody } from '../../../ui-elements/Modal'; import Table, * as T from '../../../ui-elements/TableKeyValue'; import { @@ -7,7 +7,7 @@ import { deleteAccountSecret, } from '../../../actions'; import { useDispatch, useSelector } from 'react-redux'; -import type { AppState } from '../../../../types/state'; +import { AppState } from '../../../../types/state'; import { Banner, Icon, Stack, Wrap, spacing } from '@scality/core-ui'; import { Button, CopyButton, Box } from '@scality/core-ui/dist/next'; diff --git a/src/react/actions/__tests__/utils/dispatchActionsList.ts b/src/react/actions/__tests__/utils/dispatchActionsList.ts index a514abb57..944a383f5 100644 --- a/src/react/actions/__tests__/utils/dispatchActionsList.ts +++ b/src/react/actions/__tests__/utils/dispatchActionsList.ts @@ -1,6 +1,6 @@ import { MockSTSClient } from '../../../../js/mock/STSClient'; import { MockManagementClient } from '../../../../js/mock/managementClient'; -import type { +import { CloseAccountDeleteDialogAction, CloseBucketDeleteDialogAction, CloseEndpointDeleteDialogAction, @@ -43,15 +43,15 @@ import type { ZenkoErrorAction, ZenkoWriteSearchListAction, } from '../../../../types/actions'; -import type { Hostname } from '../../../../types/config'; -import type { +import { Hostname } from '../../../../types/config'; +import { CommonPrefix, HeadObjectResponse, RetentionMode, S3Object, TagSet, } from '../../../../types/s3'; -import type { +import { Marker, SearchResultList, ZenkoClientError, diff --git a/src/react/actions/__tests__/utils/testUtil.ts b/src/react/actions/__tests__/utils/testUtil.ts index 4c9feae55..24d9c318a 100644 --- a/src/react/actions/__tests__/utils/testUtil.ts +++ b/src/react/actions/__tests__/utils/testUtil.ts @@ -38,9 +38,9 @@ import { userName, workflows, } from '../../../../js/mock/managementClient'; -import type { ManagementClient } from '../../../../types/managementClient'; -import type { AppState } from '../../../../types/state'; -import type { EnabledState } from '../../../../types/stats'; +import { ManagementClient } from '../../../../types/managementClient'; +import { AppState } from '../../../../types/state'; +import { EnabledState } from '../../../../types/stats'; import zenkoUIReducer from '../../../reducers'; import { initialFullState } from '../../../reducers/initialConstants'; import { configuration } from '../../../utils/testUtil'; diff --git a/src/react/actions/account.ts b/src/react/actions/account.ts index 812dfd2cd..16271f1e1 100644 --- a/src/react/actions/account.ts +++ b/src/react/actions/account.ts @@ -1,6 +1,6 @@ import { getAssumeRoleWithWebIdentityIAM } from '../../js/IAMClient'; -import type { AccessKey, Account, SecretKey } from '../../types/account'; -import type { +import { AccessKey, Account, SecretKey } from '../../types/account'; +import { AddAccountSecretAction, CloseAccountDeleteDialogAction, CloseAccountKeyCreateModalAction, @@ -13,7 +13,7 @@ import type { SelectAccountAction, ThunkStatePromisedAction, } from '../../types/actions'; -import type { IamAccessKey } from '../../types/user'; +import { IamAccessKey } from '../../types/user'; import { getClients } from '../utils/actions'; import { handleAWSClientError, diff --git a/src/react/actions/auth.ts b/src/react/actions/auth.ts index 41783fdf9..9b6be4ae9 100644 --- a/src/react/actions/auth.ts +++ b/src/react/actions/auth.ts @@ -1,7 +1,7 @@ import STSClient from '../../js/STSClient'; import ZenkoClient from '../../js/ZenkoClient'; import makeMgtClient from '../../js/managementClient'; -import type { +import { ConfigAuthFailureAction, LoadClientsSuccessAction, LoadConfigSuccessAction, @@ -12,10 +12,10 @@ import type { ThunkNonStateAction, ThunkStatePromisedAction, } from '../../types/actions'; -import type { OidcLogoutFunction } from '../../types/auth'; -import type { AppConfig, InstanceId } from '../../types/entities'; -import type { ManagementClient as ManagementClientInterface } from '../../types/managementClient'; -import type { STSClient as STSClientInterface } from '../../types/sts'; +import { OidcLogoutFunction } from '../../types/auth'; +import { AppConfig, InstanceId } from '../../types/entities'; +import { ManagementClient as ManagementClientInterface } from '../../types/managementClient'; +import { STSClient as STSClientInterface } from '../../types/sts'; import { addOIDCUser, handleErrorMessage, diff --git a/src/react/actions/error.ts b/src/react/actions/error.ts index 68e1126b4..04cbd8c6a 100644 --- a/src/react/actions/error.ts +++ b/src/react/actions/error.ts @@ -1,12 +1,12 @@ -import type { +import { ApiError, ClearErrorAction, DispatchFunction, HandleErrorAction, ThunkNonStateAction, } from '../../types/actions'; -import type { AWSError } from '../../types/aws'; -import type { ErrorViewType } from '../../types/ui'; +import { AWSError } from '../../types/aws'; +import { ErrorViewType } from '../../types/ui'; import { errorParser } from '../utils'; import { networkAuthFailure } from './network'; export function handleApiError( diff --git a/src/react/actions/network.ts b/src/react/actions/network.ts index 8f055b516..52507e710 100644 --- a/src/react/actions/network.ts +++ b/src/react/actions/network.ts @@ -1,4 +1,4 @@ -import type { +import { NetworkActivityAuthFailureAction, NetworkActivityAuthResetAction, NetworkActivityEndAction, @@ -24,4 +24,4 @@ export function networkEnd(): NetworkActivityEndAction { return { type: 'NETWORK_END', }; -} \ No newline at end of file +} diff --git a/src/react/actions/oidc.ts b/src/react/actions/oidc.ts index 29da76a35..196abbe1d 100644 --- a/src/react/actions/oidc.ts +++ b/src/react/actions/oidc.ts @@ -1,5 +1,5 @@ -import type { AuthUser } from '../../types/auth'; -import type { OIDCAction } from '../../types/actions'; +import { AuthUser } from '../../types/auth'; +import { OIDCAction } from '../../types/actions'; export function addOIDCUser(user: AuthUser): OIDCAction { return { type: 'ADD_OIDC_USER', diff --git a/src/react/actions/s3bucket.ts b/src/react/actions/s3bucket.ts index f105131e6..55a59e7e1 100644 --- a/src/react/actions/s3bucket.ts +++ b/src/react/actions/s3bucket.ts @@ -1,5 +1,5 @@ -import type { BucketInfo, ObjectLockRetentionSettings } from '../../types/s3'; -import type { +import { BucketInfo, ObjectLockRetentionSettings } from '../../types/s3'; +import { CloseBucketDeleteDialogAction, GetBucketInfoSuccessAction, OpenBucketDeleteDialogAction, diff --git a/src/react/actions/s3object.ts b/src/react/actions/s3object.ts index a227a1564..edf5ff1aa 100644 --- a/src/react/actions/s3object.ts +++ b/src/react/actions/s3object.ts @@ -1,5 +1,5 @@ import { History } from 'history'; -import type { +import { CloseFolderCreateModalAction, CloseObjectDeleteModalAction, CloseObjectUploadModalAction, @@ -17,7 +17,7 @@ import type { ToggleAllObjectsAction, ToggleObjectAction, } from '../../types/actions'; -import type { +import { CommonPrefix, DeleteFolder, HeadObjectResponse, @@ -37,7 +37,7 @@ import { } from './error'; import { networkEnd, networkStart } from './network'; import { LIST_OBJECT_VERSIONS_S3_TYPE } from '../utils/s3'; -import type { Marker, ZenkoClient } from '../../types/zenko'; +import { Marker, ZenkoClient } from '../../types/zenko'; import { getClients } from '../utils/actions'; import { newSearchListing } from '.'; diff --git a/src/react/actions/stats.ts b/src/react/actions/stats.ts index 279994783..281689fa9 100644 --- a/src/react/actions/stats.ts +++ b/src/react/actions/stats.ts @@ -1,5 +1,5 @@ // @noflow -import type { InstanceStatus } from '../../types/stats'; +import { InstanceStatus } from '../../types/stats'; import { getClients } from '../utils/actions'; import { handleClientError } from './error'; export function instanceStatus(status: InstanceStatus) { diff --git a/src/react/actions/sts.ts b/src/react/actions/sts.ts index 847400b3a..829d9cbbb 100644 --- a/src/react/actions/sts.ts +++ b/src/react/actions/sts.ts @@ -1,5 +1,5 @@ import { handleErrorMessage, networkAuthFailure } from './index'; -import type { ThunkStatePromisedAction } from '../../types/actions'; +import { ThunkStatePromisedAction } from '../../types/actions'; import { getClients } from '../utils/actions'; // TODO: To be removed eventually diff --git a/src/react/actions/zenko.ts b/src/react/actions/zenko.ts index c3b8db153..1249152f9 100644 --- a/src/react/actions/zenko.ts +++ b/src/react/actions/zenko.ts @@ -1,4 +1,4 @@ -import type { +import { DispatchFunction, GetStateFunction, SetZenkoClientAction, @@ -9,7 +9,7 @@ import type { ZenkoErrorAction, ZenkoWriteSearchListAction, } from '../../types/actions'; -import type { +import { Marker, SearchBucketResp, SearchResultList, diff --git a/src/react/databrowser/DataBrowser.tsx b/src/react/databrowser/DataBrowser.tsx index 08055567f..bfd8294bd 100644 --- a/src/react/databrowser/DataBrowser.tsx +++ b/src/react/databrowser/DataBrowser.tsx @@ -8,7 +8,7 @@ import { } from 'react-router-dom'; import { useDispatch, useSelector } from 'react-redux'; -import type { AppState } from '../../types/state'; +import { AppState } from '../../types/state'; import { Breadcrumb, breadcrumbPathsBuckets } from '../ui-elements/Breadcrumb'; import Buckets from './buckets/Buckets'; import { EmptyStateContainer } from '../ui-elements/Container'; diff --git a/src/react/databrowser/buckets/BucketCreate.tsx b/src/react/databrowser/buckets/BucketCreate.tsx index 76558d4ff..fae2ddc91 100644 --- a/src/react/databrowser/buckets/BucketCreate.tsx +++ b/src/react/databrowser/buckets/BucketCreate.tsx @@ -11,7 +11,7 @@ import { Controller, FormProvider, useForm } from 'react-hook-form'; import { ChangeEvent, useMemo, useRef } from 'react'; import { clearError } from '../../actions'; import { useDispatch, useSelector } from 'react-redux'; -import type { AppState } from '../../../types/state'; +import { AppState } from '../../../types/state'; import { Button, Input, Select } from '@scality/core-ui/dist/next'; import Joi from '@hapi/joi'; import { joiResolver } from '@hookform/resolvers/joi'; diff --git a/src/react/databrowser/buckets/BucketDetails.tsx b/src/react/databrowser/buckets/BucketDetails.tsx index 60f660845..56532178a 100644 --- a/src/react/databrowser/buckets/BucketDetails.tsx +++ b/src/react/databrowser/buckets/BucketDetails.tsx @@ -4,7 +4,7 @@ import Overview from './details/Overview'; import Workflow from './details/Workflow'; import { Warning } from '../../ui-elements/Warning'; import { useLocation } from 'react-router-dom'; -import type { WorkflowScheduleUnitState } from '../../../types/stats'; +import { WorkflowScheduleUnitState } from '../../../types/stats'; import { useQueryParams } from '../../utils/hooks'; import { Icon } from '@scality/core-ui'; import { Tabs } from '@scality/core-ui/dist/next'; diff --git a/src/react/databrowser/buckets/BucketList.tsx b/src/react/databrowser/buckets/BucketList.tsx index 2074fd092..1ddd3995d 100644 --- a/src/react/databrowser/buckets/BucketList.tsx +++ b/src/react/databrowser/buckets/BucketList.tsx @@ -11,8 +11,8 @@ import { useMemo } from 'react'; import { useHistory, useParams } from 'react-router-dom'; import { CoreUIColumn } from 'react-table'; import { XDM_FEATURE } from '../../../js/config'; -import type { LocationName } from '../../../types/config'; -import type { WorkflowScheduleUnitState } from '../../../types/stats'; +import { LocationName } from '../../../types/config'; +import { WorkflowScheduleUnitState } from '../../../types/stats'; import { useCurrentAccount } from '../../DataServiceRoleProvider'; import { useBucketLatestUsedCapacity } from '../../next-architecture/domain/business/buckets'; import { Bucket } from '../../next-architecture/domain/entities/bucket'; diff --git a/src/react/databrowser/buckets/BucketRow.tsx b/src/react/databrowser/buckets/BucketRow.tsx deleted file mode 100644 index 2a7b7333e..000000000 --- a/src/react/databrowser/buckets/BucketRow.tsx +++ /dev/null @@ -1,99 +0,0 @@ -import { memo } from 'react'; -import { useHistory } from 'react-router-dom'; -import { areEqual } from 'react-window'; -import memoize from 'memoize-one'; -import type { Dispatch } from 'redux'; - -import type { Action } from '../../../types/actions'; -import type { S3Bucket } from '../../../types/s3'; -import isDeepEqual from 'lodash.isequal'; - -import { useQueryParams } from '../../utils/hooks'; -import { useCurrentAccount } from '../../DataServiceRoleProvider'; -import * as T from '../../ui-elements/Table'; - -type PrepareRow = (arg0: RowType) => void; -type RowType = { - id: number; - original: S3Bucket; - cells: any; - getRowProps: (arg0: any) => void; -}; -type RowsType = Array; -type Data = { - rows: RowsType; - prepareRow: PrepareRow; - selectedBucketName: string | null | undefined; - dispatch: Dispatch; -}; -type RowProps = { - data: Data; - index: number; - style: Record; -}; -// createItemData: This helper function memoizes incoming props, -// To avoid causing unnecessary re-renders pure MemoRow components. -// This is only needed since we are passing multiple props with a wrapper object. -export const createItemData = memoize( - ( - rows: RowsType, - prepareRow: PrepareRow, - selectedBucketName: string | null | undefined, - dispatch: Dispatch, - ): Data => ({ - rows, - prepareRow, - selectedBucketName, - dispatch, - }), - isDeepEqual, -); - -// https://react-window.now.sh/#/examples/list/memoized-list-items -const Row = ({ - data: { rows, prepareRow, selectedBucketName }, - index, - style, -}: RowProps) => { - const history = useHistory(); - const row = rows[index]; - prepareRow(row); - const bucketName = row.original.Name; - const isSelected = selectedBucketName === bucketName; - const query = useQueryParams(); - const { account } = useCurrentAccount(); - const tabName = query.get('tab'); - return ( - { - if (!isSelected) { - history.push( - tabName - ? `/accounts/${account.Name}/buckets/${bucketName}?tab=${tabName}` - : `/accounts/${account.Name}/buckets/${bucketName}`, - ); - } - }} - //@ts-expect-error fix this when you are working on it - {...row.getRowProps({ - style, - })} - > - {row.cells.map((cell) => { - const cellProps = cell.getCellProps(); - return ( - - {cell.render('Cell')} - - ); - })} - - ); -}; - -export default memo(Row, areEqual); diff --git a/src/react/databrowser/buckets/Buckets.tsx b/src/react/databrowser/buckets/Buckets.tsx index 049cc3509..3dd777790 100644 --- a/src/react/databrowser/buckets/Buckets.tsx +++ b/src/react/databrowser/buckets/Buckets.tsx @@ -1,7 +1,7 @@ import { useMemo } from 'react'; import { useLocation, Redirect, useParams } from 'react-router-dom'; import { useSelector } from 'react-redux'; -import type { AppState } from '../../../types/state'; +import { AppState } from '../../../types/state'; import BucketDetails from './BucketDetails'; import BucketList from './BucketList'; import { EmptyStateContainer } from '../../ui-elements/Container'; diff --git a/src/react/databrowser/buckets/ObjectLockSetting.tsx b/src/react/databrowser/buckets/ObjectLockSetting.tsx index eb7977aed..851651fe3 100644 --- a/src/react/databrowser/buckets/ObjectLockSetting.tsx +++ b/src/react/databrowser/buckets/ObjectLockSetting.tsx @@ -7,7 +7,7 @@ import Joi from '@hapi/joi'; import { joiResolver } from '@hookform/resolvers/joi'; import { Banner, Icon, Form, Stack } from '@scality/core-ui'; -import type { AppState } from '../../../types/state'; +import { AppState } from '../../../types/state'; import ObjectLockRetentionSettings, { objectLockRetentionSettingsValidationRules, } from './ObjectLockRetentionSettings'; diff --git a/src/react/databrowser/buckets/details/Overview.tsx b/src/react/databrowser/buckets/details/Overview.tsx index 96e960ec6..b4d9686e7 100644 --- a/src/react/databrowser/buckets/details/Overview.tsx +++ b/src/react/databrowser/buckets/details/Overview.tsx @@ -14,9 +14,9 @@ import { Button } from '@scality/core-ui/dist/components/buttonv2/Buttonv2.compo import { useEffect, useState } from 'react'; import { VEEAM_FEATURE, XDM_FEATURE } from '../../../../js/config'; import { LocationV1 } from '../../../../js/managementClient/api'; -import type { BucketInfo } from '../../../../types/s3'; -import type { AppState } from '../../../../types/state'; -import type { WorkflowScheduleUnitState } from '../../../../types/stats'; +import { BucketInfo } from '../../../../types/s3'; +import { AppState } from '../../../../types/state'; +import { WorkflowScheduleUnitState } from '../../../../types/stats'; import { useCurrentAccount } from '../../../DataServiceRoleProvider'; import { getBucketInfo, toggleBucketVersioning } from '../../../actions'; import { useAccountsLocationsAndEndpoints } from '../../../next-architecture/domain/business/accounts'; diff --git a/src/react/databrowser/objects/FolderCreate.tsx b/src/react/databrowser/objects/FolderCreate.tsx index cb743c1da..6700f3878 100644 --- a/src/react/databrowser/objects/FolderCreate.tsx +++ b/src/react/databrowser/objects/FolderCreate.tsx @@ -3,10 +3,10 @@ import { Button, Input } from '@scality/core-ui/dist/next'; import { spacing } from '@scality/core-ui/dist/style/theme'; import { ChangeEvent, useState } from 'react'; import { useDispatch, useSelector } from 'react-redux'; -import type { Dispatch } from 'redux'; +import { Dispatch } from 'redux'; import styled from 'styled-components'; -import type { Action } from '../../../types/actions'; -import type { AppState } from '../../../types/state'; +import { Action } from '../../../types/actions'; +import { AppState } from '../../../types/state'; import { closeFolderCreateModal, createFolder } from '../../actions'; import { CustomModal as Modal } from '../../ui-elements/Modal'; import { addTrailingSlash } from '../../utils'; diff --git a/src/react/databrowser/objects/ObjectDelete.tsx b/src/react/databrowser/objects/ObjectDelete.tsx index 86767123a..938c01c3f 100644 --- a/src/react/databrowser/objects/ObjectDelete.tsx +++ b/src/react/databrowser/objects/ObjectDelete.tsx @@ -1,3 +1,14 @@ +import { + Banner, + Icon, + PrettyBytes, + spacing, + Stack, + Wrap, +} from '@scality/core-ui'; +import { Box, Button } from '@scality/core-ui/dist/next'; +import { fontSize } from '@scality/core-ui/dist/style/theme'; +import { List } from 'immutable'; import React, { createContext, Fragment, @@ -6,35 +17,21 @@ import React, { useMemo, useState, } from 'react'; -import Table, * as T from '../../ui-elements/Table'; +import { useDispatch, useSelector } from 'react-redux'; +import styled, { useTheme } from 'styled-components'; +import { ObjectEntity } from '../../../types/s3'; +import { AppState } from '../../../types/state'; import { closeObjectDeleteModal, deleteFiles, toggleAllObjects, } from '../../actions'; -import { fontSize } from '@scality/core-ui/dist/style/theme'; -import { - Banner, - Stack, - Wrap, - PrettyBytes, - Icon, - spacing, -} from '@scality/core-ui'; -import { useDispatch, useSelector } from 'react-redux'; -import type { Action } from '../../../types/actions'; -import type { AppState } from '../../../types/state'; -import type { ObjectEntity } from '../../../types/s3'; -import { Box, Button } from '@scality/core-ui/dist/next'; -import type { Dispatch } from 'redux'; -import { List } from 'immutable'; +import { useBucketVersionning } from '../../next-architecture/domain/business/buckets'; +import { Checkbox, CheckboxContainer } from '../../ui-elements/FormLayout'; +import Input from '../../ui-elements/Input'; import { CustomModal as Modal } from '../../ui-elements/Modal'; +import Table, * as T from '../../ui-elements/Table'; import { maybePluralize } from '../../utils'; -import { useTheme } from 'styled-components'; -import styled from 'styled-components'; -import Input from '../../ui-elements/Input'; -import { Checkbox, CheckboxContainer } from '../../ui-elements/FormLayout'; -import { useBucketVersionning } from '../../next-architecture/domain/business/buckets'; const Files = styled.div` height: 15.63rem; @@ -304,7 +301,7 @@ const ObjectDelete = ({ bucketName, toggled, prefixWithSlash }: Props) => { const show = useSelector( (state: AppState) => state.uiObjects.showObjectDelete, ); - const dispatch: Dispatch = useDispatch(); + const dispatch = useDispatch(); const [toggledFiles, setToggledFiles] = useState([...toggled]); diff --git a/src/react/databrowser/objects/ObjectDetails.tsx b/src/react/databrowser/objects/ObjectDetails.tsx index d601e20e5..a0a6408d0 100644 --- a/src/react/databrowser/objects/ObjectDetails.tsx +++ b/src/react/databrowser/objects/ObjectDetails.tsx @@ -1,7 +1,7 @@ -import type { AppState } from '../../../types/state'; +import { AppState } from '../../../types/state'; import { List } from 'immutable'; -import type { ListObjectsType } from '../../../types/s3'; +import { ListObjectsType } from '../../../types/s3'; import Metadata from './details/Metadata'; import Properties from './details/Properties'; import Tags from './details/Tags'; diff --git a/src/react/databrowser/objects/ObjectList.tsx b/src/react/databrowser/objects/ObjectList.tsx index 86b63b9a3..6b5d872f9 100644 --- a/src/react/databrowser/objects/ObjectList.tsx +++ b/src/react/databrowser/objects/ObjectList.tsx @@ -1,5 +1,5 @@ import * as T from '../../ui-elements/Table'; -import type { ListObjectsType, ObjectEntity } from '../../../types/s3'; +import { ListObjectsType, ObjectEntity } from '../../../types/s3'; import { LIST_OBJECT_VERSIONS_S3_TYPE } from '../../utils/s3'; import { maybePluralize } from '../../utils'; import { @@ -8,7 +8,7 @@ import { openObjectUploadModal, } from '../../actions'; import { useDispatch, useSelector } from 'react-redux'; -import type { AppState } from '../../../types/state'; +import { AppState } from '../../../types/state'; import { List } from 'immutable'; import MetadataSearch from './MetadataSearch'; import ObjectListTable from './ObjectListTable'; diff --git a/src/react/databrowser/objects/ObjectListTable.tsx b/src/react/databrowser/objects/ObjectListTable.tsx index e9bef5be0..47936ff49 100644 --- a/src/react/databrowser/objects/ObjectListTable.tsx +++ b/src/react/databrowser/objects/ObjectListTable.tsx @@ -12,11 +12,11 @@ import styled from 'styled-components'; import { useHistory, useParams } from 'react-router-dom'; import { useQuery } from 'react-query'; -import type { AppState } from '../../../types/state'; +import { AppState } from '../../../types/state'; import { Checkbox } from '../../ui-elements/FormLayout'; import { ColdStorageIcon } from '../../ui-elements/ColdStorageIcon'; import MiddleEllipsis from '../../ui-elements/MiddleEllipsis'; -import type { ObjectEntity } from '../../../types/s3'; +import { ObjectEntity } from '../../../types/s3'; import { TextAligner } from '../../ui-elements/Utility'; import { useQueryParams } from '../../utils/hooks'; import Table, * as T from '../../ui-elements/Table'; diff --git a/src/react/databrowser/objects/ObjectLockSetting.tsx b/src/react/databrowser/objects/ObjectLockSetting.tsx index 61301573b..ed98264b8 100644 --- a/src/react/databrowser/objects/ObjectLockSetting.tsx +++ b/src/react/databrowser/objects/ObjectLockSetting.tsx @@ -28,7 +28,7 @@ import { getDefaultRetention, getRetainUntilDateHint, } from './utils'; -import type { AppState } from '../../../types/state'; +import { AppState } from '../../../types/state'; import { useCurrentAccount } from '../../DataServiceRoleProvider'; const Joi = JoiImport.extend(DateExtension); diff --git a/src/react/databrowser/objects/ObjectRow.tsx b/src/react/databrowser/objects/ObjectRow.tsx index 9d29e1f89..71d47f2b2 100644 --- a/src/react/databrowser/objects/ObjectRow.tsx +++ b/src/react/databrowser/objects/ObjectRow.tsx @@ -1,5 +1,5 @@ import { memo } from 'react'; -import type { Dispatch } from 'redux'; +import { Dispatch } from 'redux'; import { areEqual } from 'react-window'; import isDeepEqual from 'lodash.isequal'; import memoize from 'memoize-one'; @@ -7,10 +7,10 @@ import { useHistory, useLocation } from 'react-router-dom'; import * as T from '../../ui-elements/Table'; import { toggleAllObjects } from '../../actions'; -import type { Action } from '../../../types/actions'; +import { Action } from '../../../types/actions'; import { useQueryParams } from '../../utils/hooks'; import { removeTrailingSlash } from '../../../js/utils'; -import type { ObjectEntity } from '../../../types/s3'; +import { ObjectEntity } from '../../../types/s3'; type PrepareRow = (arg0: RowType) => void; type RowType = { diff --git a/src/react/databrowser/objects/ObjectUpload.tsx b/src/react/databrowser/objects/ObjectUpload.tsx index 3a54064e1..c10d9022f 100644 --- a/src/react/databrowser/objects/ObjectUpload.tsx +++ b/src/react/databrowser/objects/ObjectUpload.tsx @@ -1,18 +1,16 @@ +import { Icon, PrettyBytes, Stack, Wrap } from '@scality/core-ui'; +import { Button } from '@scality/core-ui/dist/components/buttonv2/Buttonv2.component'; +import { spacing } from '@scality/core-ui/dist/style/theme'; import { useState } from 'react'; -import Table, * as T from '../../ui-elements/Table'; -import { closeObjectUploadModal, uploadFiles } from '../../actions'; +import { useDropzone } from 'react-dropzone'; import { useDispatch, useSelector } from 'react-redux'; -import type { Action } from '../../../types/actions'; -import type { AppState } from '../../../types/state'; -import { Button } from '@scality/core-ui/dist/components/buttonv2/Buttonv2.component'; -import type { Dispatch } from 'redux'; -import type { File } from '../../../types/s3'; +import styled from 'styled-components'; +import { File } from '../../../types/s3'; +import { AppState } from '../../../types/state'; +import { closeObjectUploadModal, uploadFiles } from '../../actions'; import { CustomModal as Modal } from '../../ui-elements/Modal'; -import { Icon, PrettyBytes, Stack, Wrap } from '@scality/core-ui'; +import Table, * as T from '../../ui-elements/Table'; import { maybePluralize } from '../../utils'; -import { spacing } from '@scality/core-ui/dist/style/theme'; -import styled from 'styled-components'; -import { useDropzone } from 'react-dropzone'; import { usePrefixWithSlash } from '../../utils/hooks'; const DropZone = styled.div` flex: 1; @@ -116,7 +114,7 @@ const ObjectUpload = ({ bucketName }: Props) => { const show = useSelector( (state: AppState) => state.uiObjects.showObjectUpload, ); - const dispatch: Dispatch = useDispatch(); + const dispatch = useDispatch(); const prefixWithSlash = usePrefixWithSlash(); const onDrop = (accepted, rejections) => { diff --git a/src/react/databrowser/objects/Objects.tsx b/src/react/databrowser/objects/Objects.tsx index df33d2d98..4872a2214 100644 --- a/src/react/databrowser/objects/Objects.tsx +++ b/src/react/databrowser/objects/Objects.tsx @@ -8,7 +8,7 @@ import { } from '../../actions'; import { UPLOADING_OBJECT } from '../../actions/s3object'; import { useDispatch, useSelector } from 'react-redux'; -import type { AppState } from '../../../types/state'; +import { AppState } from '../../../types/state'; import FolderCreate from './FolderCreate'; import { LIST_OBJECTS_S3_TYPE, diff --git a/src/react/databrowser/objects/details/Metadata.tsx b/src/react/databrowser/objects/details/Metadata.tsx index 8ef4e7d5a..f79420b7b 100644 --- a/src/react/databrowser/objects/details/Metadata.tsx +++ b/src/react/databrowser/objects/details/Metadata.tsx @@ -20,7 +20,7 @@ import { SubButton, } from '../../../ui-elements/EditableKeyValue'; import { Button, Select } from '@scality/core-ui/dist/next'; -import type { +import { ListObjectsType, MetadataItem, MetadataItems, diff --git a/src/react/databrowser/objects/details/Properties.tsx b/src/react/databrowser/objects/details/Properties.tsx index 269856c12..70eeb96bf 100644 --- a/src/react/databrowser/objects/details/Properties.tsx +++ b/src/react/databrowser/objects/details/Properties.tsx @@ -2,7 +2,7 @@ import Table, * as T from '../../../ui-elements/TableKeyValue2'; import { Clipboard } from '../../../ui-elements/Clipboard'; import MiddleEllipsis from '../../../ui-elements/MiddleEllipsis'; -import type { ObjectMetadata } from '../../../../types/s3'; +import { ObjectMetadata } from '../../../../types/s3'; import { FormattedDateTime, Icon, diff --git a/src/react/databrowser/objects/details/Tags.tsx b/src/react/databrowser/objects/details/Tags.tsx index b53df0d98..2683961a7 100644 --- a/src/react/databrowser/objects/details/Tags.tsx +++ b/src/react/databrowser/objects/details/Tags.tsx @@ -11,7 +11,7 @@ import { SubButton, } from '../../../ui-elements/EditableKeyValue'; import { Button } from '@scality/core-ui/dist/components/buttonv2/Buttonv2.component'; -import type { Tag } from '../../../../types/s3'; +import { Tag } from '../../../../types/s3'; import { putObjectTagging } from '../../../actions'; import { useDispatch } from 'react-redux'; import { useFieldArray, useForm } from 'react-hook-form'; diff --git a/src/react/databrowser/objects/utils.ts b/src/react/databrowser/objects/utils.ts index 3f1d78a59..5f2d77d0d 100644 --- a/src/react/databrowser/objects/utils.ts +++ b/src/react/databrowser/objects/utils.ts @@ -1,5 +1,5 @@ import { DateTime, Duration } from 'luxon'; -import type { ObjectMetadata } from '../../../types/s3'; +import { ObjectMetadata } from '../../../types/s3'; function getDefaultRetention(objectMetadata: ObjectMetadata | null) { const isDefaultRetentionEnabled = @@ -71,4 +71,4 @@ export { getDefaultRetention, getDefaultMinRetainUntilDate, getRetainUntilDateHint, -}; \ No newline at end of file +}; diff --git a/src/react/endpoint/EndpointList.tsx b/src/react/endpoint/EndpointList.tsx index a073cdd0b..1fb264604 100644 --- a/src/react/endpoint/EndpointList.tsx +++ b/src/react/endpoint/EndpointList.tsx @@ -4,7 +4,7 @@ import { Box, Button, CopyButton, Table } from '@scality/core-ui/dist/next'; import { useMemo } from 'react'; import { useHistory } from 'react-router-dom'; -import type { Endpoint, Hostname, LocationName } from '../../types/config'; +import { Endpoint, Hostname, LocationName } from '../../types/config'; import { renderLocation } from '../locations/utils'; import { LocationInfo } from '../next-architecture/adapters/accounts-locations/ILocationsAdapter'; import { diff --git a/src/react/endpoint/EndpointRow.tsx b/src/react/endpoint/EndpointRow.tsx index 73d527e5e..f112abaca 100644 --- a/src/react/endpoint/EndpointRow.tsx +++ b/src/react/endpoint/EndpointRow.tsx @@ -1,6 +1,6 @@ import * as T from '../ui-elements/Table'; import React, { memo } from 'react'; -import type { Endpoint } from '../../types/config'; +import { Endpoint } from '../../types/config'; import { areEqual } from 'react-window'; import isDeepEqual from 'lodash.isequal'; import memoize from 'memoize-one'; diff --git a/src/react/locations/LocationDetails/LocationDetails.tsx b/src/react/locations/LocationDetails/LocationDetails.tsx index 6a025fff0..b67a58478 100644 --- a/src/react/locations/LocationDetails/LocationDetails.tsx +++ b/src/react/locations/LocationDetails/LocationDetails.tsx @@ -1,5 +1,5 @@ -import type { EnabledState, InstanceStateSnapshot } from '../../../types/stats'; -import type { +import { EnabledState, InstanceStateSnapshot } from '../../../types/stats'; +import { LocationDetails as LocationFormDetails, LocationTypeKey, } from '../../../types/config'; diff --git a/src/react/locations/LocationDetails/LocationDetailsNFS.tsx b/src/react/locations/LocationDetails/LocationDetailsNFS.tsx index 476a34922..0b48fd3e6 100644 --- a/src/react/locations/LocationDetails/LocationDetailsNFS.tsx +++ b/src/react/locations/LocationDetails/LocationDetailsNFS.tsx @@ -1,4 +1,4 @@ -import type { LocationDetails } from '../../../types/config'; +import { LocationDetails } from '../../../types/config'; import React from 'react'; import { LocationDetailsFormProps } from '.'; import { FormGroup, FormSection } from '@scality/core-ui'; diff --git a/src/react/locations/LocationDetails/LocationDetailsSproxyd.tsx b/src/react/locations/LocationDetails/LocationDetailsSproxyd.tsx index a0ecbceef..8b6338ca2 100644 --- a/src/react/locations/LocationDetails/LocationDetailsSproxyd.tsx +++ b/src/react/locations/LocationDetails/LocationDetailsSproxyd.tsx @@ -1,5 +1,5 @@ import { InputList } from '../../ui-elements/FormLayout'; -import type { LocationDetails } from '../../../types/config'; +import { LocationDetails } from '../../../types/config'; import React from 'react'; import { FormGroup, FormSection } from '@scality/core-ui'; import { Input } from '@scality/core-ui/dist/components/inputv2/inputv2'; diff --git a/src/react/locations/LocationDetails/LocationDetailsWasabi.tsx b/src/react/locations/LocationDetails/LocationDetailsWasabi.tsx index 1c22b812f..9f26110c4 100644 --- a/src/react/locations/LocationDetails/LocationDetailsWasabi.tsx +++ b/src/react/locations/LocationDetails/LocationDetailsWasabi.tsx @@ -1,4 +1,4 @@ -import type { LocationDetails } from '../../../types/config'; +import { LocationDetails } from '../../../types/config'; import React from 'react'; import { FormGroup, diff --git a/src/react/locations/LocationEditor.tsx b/src/react/locations/LocationEditor.tsx index 791acd682..9d9696a0a 100644 --- a/src/react/locations/LocationEditor.tsx +++ b/src/react/locations/LocationEditor.tsx @@ -16,7 +16,7 @@ import styled from 'styled-components'; import { LocationV1 } from '../../js/managementClient/api'; import { useWaitForRunningConfigurationVersionToBeUpdated } from '../../js/mutations'; import { LocationTypeKey } from '../../types/config'; -import type { AppState } from '../../types/state'; +import { AppState } from '../../types/state'; import { notFalsyTypeGuard } from '../../types/typeGuards'; import { useManagementClient } from '../ManagementProvider'; import { useAccountsLocationsAndEndpoints } from '../next-architecture/domain/business/accounts'; diff --git a/src/react/locations/LocationOptions.tsx b/src/react/locations/LocationOptions.tsx index 484b1ae09..f03dc4856 100644 --- a/src/react/locations/LocationOptions.tsx +++ b/src/react/locations/LocationOptions.tsx @@ -1,6 +1,6 @@ import { default as BasicInput } from '../ui-elements/Input'; -import type { LocationFormOptions } from '../../types/location'; -import type { LocationName } from '../../types/config'; +import { LocationFormOptions } from '../../types/location'; +import { LocationName } from '../../types/config'; import { ChangeEvent } from 'react'; import { spacing } from '@scality/core-ui/dist/style/theme'; import styled from 'styled-components'; diff --git a/src/react/locations/LocationsList.tsx b/src/react/locations/LocationsList.tsx index 7255accf0..b7c42b891 100644 --- a/src/react/locations/LocationsList.tsx +++ b/src/react/locations/LocationsList.tsx @@ -17,7 +17,7 @@ import { Box, Button, Table } from '@scality/core-ui/dist/next'; import { BucketWorkflowTransitionV2 } from '../../js/managementClient/api'; import { useWaitForRunningConfigurationVersionToBeUpdated } from '../../js/mutations'; import { Replication } from '../../types/config'; -import type { AppState } from '../../types/state'; +import { AppState } from '../../types/state'; import { notFalsyTypeGuard } from '../../types/typeGuards'; import { useManagementClient } from '../ManagementProvider'; import { diff --git a/src/react/locations/queries.ts b/src/react/locations/queries.ts index 0e37cb92a..387bed903 100644 --- a/src/react/locations/queries.ts +++ b/src/react/locations/queries.ts @@ -1,7 +1,7 @@ import { Dispatch } from 'redux'; import { UiFacingApi } from '../../js/managementClient/api'; import { ApiError } from '../../types/actions'; -import type { InstanceStatus } from '../../types/stats'; +import { InstanceStatus } from '../../types/stats'; import { handleClientError } from '../actions'; export const getInstanceStatusQuery = ( diff --git a/src/react/locations/utils.tsx b/src/react/locations/utils.tsx index 60278e6db..b91575cfb 100644 --- a/src/react/locations/utils.tsx +++ b/src/react/locations/utils.tsx @@ -8,12 +8,12 @@ import { OUTSCALE_SNC_S3_LOCATION_KEY, Replication, } from '../../types/config'; -import type { BucketList } from '../../types/stats'; -import type { LocationForm } from '../../types/location'; +import { BucketList } from '../../types/stats'; +import { LocationForm } from '../../types/location'; import { storageOptions } from './LocationDetails'; import { getLocationType } from '../utils/storageOptions'; -import type { BucketInfo } from '../../types/s3'; +import { BucketInfo } from '../../types/s3'; import { BucketWorkflowTransitionV2 } from '../../js/managementClient/api'; import { Location as NextLocation } from '../next-architecture/domain/entities/location'; import { LocationInfo } from '../next-architecture/adapters/accounts-locations/ILocationsAdapter'; diff --git a/src/react/reducers/account.ts b/src/react/reducers/account.ts index a609af32d..70aa26123 100644 --- a/src/react/reducers/account.ts +++ b/src/react/reducers/account.ts @@ -1,5 +1,5 @@ -import type { AccountAction } from '../../types/actions'; -import type { AccountState } from '../../types/state'; +import { AccountAction } from '../../types/actions'; +import { AccountState } from '../../types/state'; import { initialAccountState } from './initialConstants'; export default function account( state: AccountState = initialAccountState, @@ -13,4 +13,4 @@ export default function account( default: return state; } -} \ No newline at end of file +} diff --git a/src/react/reducers/auth.ts b/src/react/reducers/auth.ts index 01de719af..efc9a7846 100644 --- a/src/react/reducers/auth.ts +++ b/src/react/reducers/auth.ts @@ -1,5 +1,5 @@ -import type { AuthAction } from '../../types/actions'; -import type { AuthState } from '../../types/state'; +import { AuthAction } from '../../types/actions'; +import { AuthState } from '../../types/state'; import { initialAuthState } from './initialConstants'; export default function auth( state: AuthState = initialAuthState, @@ -33,4 +33,4 @@ export default function auth( default: return state; } -} \ No newline at end of file +} diff --git a/src/react/reducers/configuration.ts b/src/react/reducers/configuration.ts index c20d714b5..15d59d871 100644 --- a/src/react/reducers/configuration.ts +++ b/src/react/reducers/configuration.ts @@ -1,5 +1,5 @@ -import type { ConfigurationAction } from '../../types/actions'; -import type { ConfigurationState } from '../../types/state'; +import { ConfigurationAction } from '../../types/actions'; +import { ConfigurationState } from '../../types/state'; import { initialConfiguration } from './initialConstants'; export default function configuration( state: ConfigurationState = initialConfiguration, diff --git a/src/react/reducers/initialConstants.ts b/src/react/reducers/initialConstants.ts index 30524f0c9..0f479f217 100644 --- a/src/react/reducers/initialConstants.ts +++ b/src/react/reducers/initialConstants.ts @@ -1,5 +1,5 @@ // @noflow -import type { +import { AccountState, AccountsUIState, AuthState, diff --git a/src/react/reducers/instanceStatus.ts b/src/react/reducers/instanceStatus.ts index 6cc46aee9..79fded7b8 100644 --- a/src/react/reducers/instanceStatus.ts +++ b/src/react/reducers/instanceStatus.ts @@ -1,5 +1,5 @@ -import type { InstanceStatusAction } from '../../types/actions'; -import type { InstanceStatusState } from '../../types/state'; +import { InstanceStatusAction } from '../../types/actions'; +import { InstanceStatusState } from '../../types/state'; import { initialInstanceStatus } from './initialConstants'; export default function ( state: InstanceStatusState = initialInstanceStatus, @@ -15,4 +15,4 @@ export default function ( default: return state; } -} \ No newline at end of file +} diff --git a/src/react/reducers/instances.ts b/src/react/reducers/instances.ts index db40e0133..c5a0951d6 100644 --- a/src/react/reducers/instances.ts +++ b/src/react/reducers/instances.ts @@ -1,5 +1,5 @@ -import type { InstancesState } from '../../types/state'; -import type { SelectInstanceAction } from '../../types/actions'; +import { InstancesState } from '../../types/state'; +import { SelectInstanceAction } from '../../types/actions'; import { initialInstancesState } from './initialConstants'; export default function instances( //@ts-expect-error fix this when you are working on it diff --git a/src/react/reducers/networkActivity.ts b/src/react/reducers/networkActivity.ts index 254752d3c..efa78f8df 100644 --- a/src/react/reducers/networkActivity.ts +++ b/src/react/reducers/networkActivity.ts @@ -1,5 +1,5 @@ -import type { NetworkActivityAction } from '../../types/actions'; -import type { NetworkActivityState } from '../../types/state'; +import { NetworkActivityAction } from '../../types/actions'; +import { NetworkActivityState } from '../../types/state'; import { initialNetworkActivityState } from './initialConstants'; export default function networkActivity( state: NetworkActivityState = initialNetworkActivityState, @@ -31,4 +31,4 @@ export default function networkActivity( default: return state; } -} \ No newline at end of file +} diff --git a/src/react/reducers/oidc.ts b/src/react/reducers/oidc.ts index 08a7d7ee2..c6c278eec 100644 --- a/src/react/reducers/oidc.ts +++ b/src/react/reducers/oidc.ts @@ -1,5 +1,5 @@ -import type { OIDCAction } from '../../types/actions'; -import type { OIDCState } from '../../types/state'; +import { OIDCAction } from '../../types/actions'; +import { OIDCState } from '../../types/state'; import { initialNetworkActivityState } from './initialConstants'; export default function oidc( //@ts-expect-error fix this when you are working on it diff --git a/src/react/reducers/s3.ts b/src/react/reducers/s3.ts index 3cd4e6d0b..b771ec496 100644 --- a/src/react/reducers/s3.ts +++ b/src/react/reducers/s3.ts @@ -10,7 +10,7 @@ import { stripQuotes, systemMetadataKeys, } from '../utils'; -import type { +import { MetadataPairs, ObjectEntity, S3DeleteMarker, @@ -19,13 +19,10 @@ import type { TagSet, Tags, } from '../../types/s3'; -import type { - GetObjectMetadataSuccessAction, - S3Action, -} from '../../types/actions'; -import type { SearchResult } from '../../types/zenko'; +import { GetObjectMetadataSuccessAction, S3Action } from '../../types/actions'; +import { SearchResult } from '../../types/zenko'; import { List } from 'immutable'; -import type { S3State } from '../../types/state'; +import { S3State } from '../../types/state'; import { initialS3State } from './initialConstants'; const sortByDate = (objs) => diff --git a/src/react/reducers/secrets.ts b/src/react/reducers/secrets.ts index f948d4891..8cbce64ea 100644 --- a/src/react/reducers/secrets.ts +++ b/src/react/reducers/secrets.ts @@ -1,5 +1,5 @@ -import type { SecretsAction } from '../../types/actions'; -import type { SecretsState } from '../../types/state'; +import { SecretsAction } from '../../types/actions'; +import { SecretsState } from '../../types/state'; import { initialSecretsState } from './initialConstants'; export default function secrets( state: SecretsState = initialSecretsState, diff --git a/src/react/reducers/stats.ts b/src/react/reducers/stats.ts index b6eb9350d..19cb35624 100644 --- a/src/react/reducers/stats.ts +++ b/src/react/reducers/stats.ts @@ -1,5 +1,5 @@ -import type { StatsAction } from '../../types/actions'; -import type { StatsState } from '../../types/state'; +import { StatsAction } from '../../types/actions'; +import { StatsState } from '../../types/state'; import { initialStatsState } from './initialConstants'; export default function stats( state: StatsState = initialStatsState, @@ -15,4 +15,4 @@ export default function stats( default: return state; } -} \ No newline at end of file +} diff --git a/src/react/reducers/uiAccounts.ts b/src/react/reducers/uiAccounts.ts index 6391d5afe..14093bde2 100644 --- a/src/react/reducers/uiAccounts.ts +++ b/src/react/reducers/uiAccounts.ts @@ -1,5 +1,5 @@ -import type { AccountUIAction } from '../../types/actions'; -import type { AccountsUIState } from '../../types/state'; +import { AccountUIAction } from '../../types/actions'; +import { AccountsUIState } from '../../types/state'; import { initialAccountsUIState } from './initialConstants'; export default function uiAccounts( state: AccountsUIState = initialAccountsUIState, @@ -21,4 +21,4 @@ export default function uiAccounts( default: return state; } -} \ No newline at end of file +} diff --git a/src/react/reducers/uiBuckets.ts b/src/react/reducers/uiBuckets.ts index e45a5f8a8..e1c2d479f 100644 --- a/src/react/reducers/uiBuckets.ts +++ b/src/react/reducers/uiBuckets.ts @@ -1,5 +1,5 @@ -import type { BucketsUIAction } from '../../types/actions'; -import type { BucketsUIState } from '../../types/state'; +import { BucketsUIAction } from '../../types/actions'; +import { BucketsUIState } from '../../types/state'; import { initialBucketUIState } from './initialConstants'; export default function uiBuckets( state: BucketsUIState = initialBucketUIState, diff --git a/src/react/reducers/uiErrors.ts b/src/react/reducers/uiErrors.ts index 51a54ddd0..a9537c5af 100644 --- a/src/react/reducers/uiErrors.ts +++ b/src/react/reducers/uiErrors.ts @@ -1,5 +1,5 @@ -import type { ErrorsUIAction } from '../../types/actions'; -import type { ErrorsUIState } from '../../types/state'; +import { ErrorsUIAction } from '../../types/actions'; +import { ErrorsUIState } from '../../types/state'; import { initialErrorsUIState } from './initialConstants'; export default function uiErrors( state: ErrorsUIState = initialErrorsUIState, @@ -20,4 +20,4 @@ export default function uiErrors( default: return state; } -} \ No newline at end of file +} diff --git a/src/react/reducers/uiObjects.ts b/src/react/reducers/uiObjects.ts index c469baca0..55686817b 100644 --- a/src/react/reducers/uiObjects.ts +++ b/src/react/reducers/uiObjects.ts @@ -1,5 +1,5 @@ -import type { ObjectsUIAction } from '../../types/actions'; -import type { ObjectsUIState } from '../../types/state'; +import { ObjectsUIAction } from '../../types/actions'; +import { ObjectsUIState } from '../../types/state'; import { initialObjectUIState } from './initialConstants'; export default function uiObjects( state: ObjectsUIState = initialObjectUIState, @@ -27,4 +27,4 @@ export default function uiObjects( default: return state; } -} \ No newline at end of file +} diff --git a/src/react/reducers/uiWorkflows.ts b/src/react/reducers/uiWorkflows.ts index a729590ed..133efd551 100644 --- a/src/react/reducers/uiWorkflows.ts +++ b/src/react/reducers/uiWorkflows.ts @@ -1,5 +1,5 @@ -import type { WorkflowUIAction } from '../../types/actions'; -import type { WorkflowsUIState } from '../../types/state'; +import { WorkflowUIAction } from '../../types/actions'; +import { WorkflowsUIState } from '../../types/state'; import { initialWorkflowsUIState } from './initialConstants'; export default function uiWorkflows( state: WorkflowsUIState = initialWorkflowsUIState, diff --git a/src/react/reducers/zenko.ts b/src/react/reducers/zenko.ts index fd6c38806..7f9d02acc 100644 --- a/src/react/reducers/zenko.ts +++ b/src/react/reducers/zenko.ts @@ -1,5 +1,5 @@ -import type { ZenkoAction } from '../../types/actions'; -import type { ZenkoState } from '../../types/state'; +import { ZenkoAction } from '../../types/actions'; +import { ZenkoState } from '../../types/state'; import { initialZenkoState } from './initialConstants'; export default function ( //@ts-expect-error fix this when you are working on it diff --git a/src/react/ui-elements/Activity.tsx b/src/react/ui-elements/Activity.tsx index 0b487ed96..6bcf3c389 100644 --- a/src/react/ui-elements/Activity.tsx +++ b/src/react/ui-elements/Activity.tsx @@ -2,7 +2,7 @@ import { Loader } from '@scality/core-ui/dist/components/loader/Loader.component import { spacing } from '@scality/core-ui/dist/style/theme'; import { useSelector } from 'react-redux'; import styled from 'styled-components'; -import type { AppState } from '../../types/state'; +import { AppState } from '../../types/state'; export const DEFAULT_MESSAGE = 'Working...'; const ActivityContainer = styled.div` position: fixed; diff --git a/src/react/ui-elements/ErrorHandlerModal.tsx b/src/react/ui-elements/ErrorHandlerModal.tsx index cfc67cced..b32531fea 100644 --- a/src/react/ui-elements/ErrorHandlerModal.tsx +++ b/src/react/ui-elements/ErrorHandlerModal.tsx @@ -1,10 +1,7 @@ -// @noflow -import { Wrap } from '@scality/core-ui/dist/spacing'; import { Button } from '@scality/core-ui/dist/components/buttonv2/Buttonv2.component'; +import { Wrap } from '@scality/core-ui/dist/spacing'; import { useDispatch, useSelector } from 'react-redux'; -import type { Dispatch } from 'redux'; -import type { Action } from '../../types/actions'; -import type { AppState } from '../../types/state'; +import { AppState } from '../../types/state'; import { clearError } from '../actions'; import { CustomModal as Modal } from './Modal'; @@ -16,7 +13,7 @@ const ErrorHandlerModal = () => { const errorMessage = useSelector( (state: AppState) => state.uiErrors.errorMsg, ); - const dispatch: Dispatch = useDispatch(); + const dispatch = useDispatch(); const close = () => dispatch(clearError()); diff --git a/src/react/ui-elements/ReauthDialog.tsx b/src/react/ui-elements/ReauthDialog.tsx index 7115a5346..228e0527a 100644 --- a/src/react/ui-elements/ReauthDialog.tsx +++ b/src/react/ui-elements/ReauthDialog.tsx @@ -1,5 +1,5 @@ import { useSelector } from 'react-redux'; -import type { AppState } from '../../types/state'; +import { AppState } from '../../types/state'; import { Button } from '@scality/core-ui/dist/components/buttonv2/Buttonv2.component'; import { CustomModal as Modal } from './Modal'; import { useLocation } from 'react-router-dom'; diff --git a/src/react/utils/IAMhooks.ts b/src/react/utils/IAMhooks.ts index 7058df960..1fe4fabbd 100644 --- a/src/react/utils/IAMhooks.ts +++ b/src/react/utils/IAMhooks.ts @@ -1,6 +1,6 @@ import { DateTime } from 'luxon'; import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; -import type { +import { QueryFunctionContext, QueryObserverIdleResult, QueryObserverLoadingErrorResult, diff --git a/src/react/utils/actions.ts b/src/react/utils/actions.ts index fd0db22d1..cfffe7cc7 100644 --- a/src/react/utils/actions.ts +++ b/src/react/utils/actions.ts @@ -1,4 +1,4 @@ -import type { AppState } from '../../types/state'; +import { AppState } from '../../types/state'; export function getClients(state: AppState) { return { instanceId: state.instances.selectedId, diff --git a/src/react/utils/s3.ts b/src/react/utils/s3.ts index fd9859db8..bb401368c 100644 --- a/src/react/utils/s3.ts +++ b/src/react/utils/s3.ts @@ -1,4 +1,4 @@ -import type { S3DeleteMarker, S3Version } from '../../types/s3'; +import { S3DeleteMarker, S3Version } from '../../types/s3'; export const LIST_OBJECTS_S3_TYPE = 's3'; export const LIST_OBJECTS_METADATA_TYPE = 'md'; export const LIST_OBJECT_VERSIONS_S3_TYPE = 'ver'; @@ -67,4 +67,4 @@ export const mergeSortedVersionsAndDeleteMarkers = ( } return sortedList; -}; \ No newline at end of file +}; diff --git a/src/react/utils/storageOptions.ts b/src/react/utils/storageOptions.ts index 81457db5c..ee9324736 100644 --- a/src/react/utils/storageOptions.ts +++ b/src/react/utils/storageOptions.ts @@ -1,5 +1,5 @@ -import type { Capabilities, InstanceStateSnapshot } from '../../types/stats'; -import type { +import { Capabilities, InstanceStateSnapshot } from '../../types/stats'; +import { LabelFunction, StorageOptionSelect, } from '../../types/storageOptionsHelper'; diff --git a/src/react/workflow/ConfigurationTab.tsx b/src/react/workflow/ConfigurationTab.tsx index fd6e29dc6..f793fea92 100644 --- a/src/react/workflow/ConfigurationTab.tsx +++ b/src/react/workflow/ConfigurationTab.tsx @@ -11,7 +11,7 @@ import { useEffect, useMemo } from 'react'; import { FormProvider, useForm } from 'react-hook-form'; import { useDispatch } from 'react-redux'; import { useHistory } from 'react-router-dom'; -import type { Expiration, Replication } from '../../types/config'; +import { Expiration, Replication } from '../../types/config'; import { handleApiError, handleClientError, @@ -35,7 +35,7 @@ import { ReplicationForm as TypeReplicationForm, } from '../../types/replication'; import { notFalsyTypeGuard } from '../../types/typeGuards'; -import type { Workflow } from '../../types/workflow'; +import { Workflow } from '../../types/workflow'; import { useCurrentAccount } from '../DataServiceRoleProvider'; import { useManagementClient } from '../ManagementProvider'; import { useInstanceId } from '../next-architecture/ui/AuthProvider'; diff --git a/src/react/workflow/CreateWorkflow.tsx b/src/react/workflow/CreateWorkflow.tsx index 1f49230de..4d521c118 100644 --- a/src/react/workflow/CreateWorkflow.tsx +++ b/src/react/workflow/CreateWorkflow.tsx @@ -23,7 +23,7 @@ import { ReplicationStreamInternalV1, } from '../../js/managementClient/api'; import { ApiError } from '../../types/actions'; -import type { Replication } from '../../types/config'; +import { Replication } from '../../types/config'; import { AppState } from '../../types/state'; import { notFalsyTypeGuard } from '../../types/typeGuards'; import { useCurrentAccount } from '../DataServiceRoleProvider'; diff --git a/src/react/workflow/ReplicationForm.tsx b/src/react/workflow/ReplicationForm.tsx index 44fff0c19..22121585b 100644 --- a/src/react/workflow/ReplicationForm.tsx +++ b/src/react/workflow/ReplicationForm.tsx @@ -27,7 +27,7 @@ import { } from 'react-hook-form'; import { useQuery } from 'react-query'; import { Link } from 'react-router-dom'; -import type { Replication } from '../../types/config'; +import { Replication } from '../../types/config'; import { Account } from '../../types/iam'; import { notFalsyTypeGuard } from '../../types/typeGuards'; import { SelectOption } from '../../types/ui'; diff --git a/src/react/workflow/TagsFilter.tsx b/src/react/workflow/TagsFilter.tsx index 0d0e30713..4a789dae2 100644 --- a/src/react/workflow/TagsFilter.tsx +++ b/src/react/workflow/TagsFilter.tsx @@ -1,5 +1,5 @@ import { AddButton, SubButton } from '../ui-elements/EditableKeyValue'; -import type { Tag } from '../../types/s3'; +import { Tag } from '../../types/s3'; import { FieldValues, Control, diff --git a/src/react/workflow/WorkflowContent.tsx b/src/react/workflow/WorkflowContent.tsx index 48092bb3d..f800b2015 100644 --- a/src/react/workflow/WorkflowContent.tsx +++ b/src/react/workflow/WorkflowContent.tsx @@ -1,6 +1,6 @@ import { Icon } from '@scality/core-ui'; import { useRouteMatch } from 'react-router-dom'; -import type { Workflow } from '../../types/workflow'; +import { Workflow } from '../../types/workflow'; import { Tabs } from '@scality/core-ui/dist/next'; import { Warning } from '../ui-elements/Warning'; import { useQueryParams } from '../utils/hooks'; diff --git a/src/react/workflow/WorkflowList.tsx b/src/react/workflow/WorkflowList.tsx index 012d7a1d6..7ba66316c 100644 --- a/src/react/workflow/WorkflowList.tsx +++ b/src/react/workflow/WorkflowList.tsx @@ -4,7 +4,7 @@ import { useCallback } from 'react'; import { useHistory } from 'react-router-dom'; import { CoreUIColumn, Row } from 'react-table'; import { useTheme } from 'styled-components'; -import type { Workflows } from '../../types/workflow'; +import { Workflows } from '../../types/workflow'; import { Workflow } from '../../types/workflow'; import { TableHeaderWrapper } from '../ui-elements/Table'; import { TextTransformer } from '../ui-elements/Utility'; diff --git a/src/react/workflow/WorkflowRow.tsx b/src/react/workflow/WorkflowRow.tsx deleted file mode 100644 index 0d4a6dfeb..000000000 --- a/src/react/workflow/WorkflowRow.tsx +++ /dev/null @@ -1,82 +0,0 @@ -import { memo } from 'react'; -import { areEqual } from 'react-window'; -import isDeepEqual from 'lodash.isequal'; -import memoize from 'memoize-one'; -import { useHistory } from 'react-router-dom'; -import type { Dispatch } from 'redux'; - -import * as T from '../ui-elements/Table'; -import type { Action } from '../../types/actions'; -import type { Workflow } from '../../types/workflow'; - -type PrepareRow = (arg0: RowType) => void; -type RowType = { - id: number; - original: Workflow; - cells: any; - getRowProps: (arg0: any) => void; -}; -type RowsType = Array; -type Data = { - rows: RowsType; - prepareRow: PrepareRow; - selectedWorkflowId: string | null | undefined; - dispatch: Dispatch; -}; -type RowProps = { - data: Data; - index: number; - style: Record; -}; -// createItemData: This helper function memoizes incoming props, -// To avoid causing unnecessary re-renders pure MemoRow components. -// This is only needed since we are passing multiple props with a wrapper object. -export const createItemData = memoize( - ( - rows: RowsType, - prepareRow: PrepareRow, - selectedWorkflowId: string | null | undefined, - dispatch: Dispatch, - ): Data => ({ - rows, - prepareRow, - selectedWorkflowId, - dispatch, - }), - isDeepEqual, -); - -// https://react-window.now.sh/#/examples/list/memoized-list-items -const Row = ({ - data: { rows, prepareRow, selectedWorkflowId }, - index, - style, -}: RowProps) => { - const history = useHistory(); - const row = rows[index]; - prepareRow(row); - const workflowId = row.original.id; - const isSelected = selectedWorkflowId === workflowId; - return ( - { - if (!isSelected) { - history.push(`./${workflowId}`); - } - }} - //@ts-expect-error fix this when you are working on it - {...row.getRowProps({ - style, - })} - > - {row.cells.map((cell) => ( - - {cell.render('Cell')} - - ))} - - ); -}; - -export default memo(Row, areEqual); diff --git a/src/react/workflow/__tests__/utils.test.ts b/src/react/workflow/__tests__/utils.test.ts index 697a46bc0..c3b5c3f12 100644 --- a/src/react/workflow/__tests__/utils.test.ts +++ b/src/react/workflow/__tests__/utils.test.ts @@ -1,4 +1,4 @@ -import type { Expiration } from '../../../types/config'; +import { Expiration } from '../../../types/config'; import { BucketWorkflowV1 } from '../../../js/managementClient/api'; import { flattenFormErrors, prepareExpirationQuery } from '../utils'; describe('prepareExpirationQuery', () => { diff --git a/src/react/workflow/utils.tsx b/src/react/workflow/utils.tsx index b8a815e60..ddd620006 100644 --- a/src/react/workflow/utils.tsx +++ b/src/react/workflow/utils.tsx @@ -5,10 +5,10 @@ import { BucketWorkflowTransitionV2, BucketWorkflowV1, } from '../../js/managementClient/api'; -import type { Replication as ReplicationStream } from '../../types/config'; -import type { ReplicationForm } from '../../types/replication'; -import type { Tag } from '../../types/s3'; -import type { SelectOption } from '../../types/ui'; +import { Replication as ReplicationStream } from '../../types/config'; +import { ReplicationForm } from '../../types/replication'; +import { Tag } from '../../types/s3'; +import { SelectOption } from '../../types/ui'; import { storageOptions } from '../locations/LocationDetails'; import { LocationInfo } from '../next-architecture/adapters/accounts-locations/ILocationsAdapter'; import { getLocationTypeShort } from '../utils/storageOptions'; diff --git a/src/types/actions.ts b/src/types/actions.ts index abcc44a6d..147527bc3 100644 --- a/src/types/actions.ts +++ b/src/types/actions.ts @@ -1,9 +1,9 @@ -import type { AccessKey, Account, SecretKey } from './account'; -import type { AuthUser, OidcLogoutFunction } from './auth'; -import type { ConfigurationOverlay, Hostname } from './config'; -import type { AppConfig, InstanceId } from './entities'; -import type { ManagementClient } from './managementClient'; -import type { +import { AccessKey, Account, SecretKey } from './account'; +import { AuthUser, OidcLogoutFunction } from './auth'; +import { ConfigurationOverlay, Hostname } from './config'; +import { AppConfig, InstanceId } from './entities'; +import { ManagementClient } from './managementClient'; +import { BucketInfo, CommonPrefix, HeadObjectResponse, @@ -14,11 +14,11 @@ import type { S3Version, TagSet, } from './s3'; -import type { AppState } from './state'; -import type { InstanceStatus } from './stats'; -import type { STSClient } from './sts'; -import type { IamAccessKey } from './user'; -import type { Marker, SearchResultList, ZenkoClient } from './zenko'; +import { AppState } from './state'; +import { InstanceStatus } from './stats'; +import { STSClient } from './sts'; +import { IamAccessKey } from './user'; +import { Marker, SearchResultList, ZenkoClient } from './zenko'; export type DispatchFunction = (arg0: Action) => any; export type GetStateFunction = () => AppState; export interface ApiError extends Error { @@ -341,8 +341,6 @@ export type Action = | AccountAction | AuthAction | BucketsUIAction - //@ts-expect-error fix this when you are working on it - | LocationUIAction | ObjectsUIAction | OIDCAction | S3Action diff --git a/src/types/config.ts b/src/types/config.ts index 3424ed3f8..4b6c4b2b0 100644 --- a/src/types/config.ts +++ b/src/types/config.ts @@ -1,6 +1,6 @@ /* eslint-disable */ import { BucketWorkflowV1 } from '../js/managementClient/api'; -import type { Account } from './account'; +import { Account } from './account'; import { Tag } from './s3'; // locations export const JAGUAR_S3_ENDPOINT = 'https://s3.fr-lyo.jaguar-network.com'; diff --git a/src/types/iam.ts b/src/types/iam.ts index c60b89164..a1c0afbb6 100644 --- a/src/types/iam.ts +++ b/src/types/iam.ts @@ -1,5 +1,5 @@ /* eslint-disable */ -import type { Credentials } from './zenko'; +import { Credentials } from './zenko'; export type IAMResp = {}; export type WebIdentityRoles = { IsTruncated: boolean; diff --git a/src/types/location.ts b/src/types/location.ts index d619f26e9..7830a88c0 100644 --- a/src/types/location.ts +++ b/src/types/location.ts @@ -1,4 +1,4 @@ -import type { Location } from './config'; +import { Location } from './config'; export type LocationFormOptions = { readonly isTransient: boolean; diff --git a/src/types/managementClient.ts b/src/types/managementClient.ts index ab87c6131..d89aa78c2 100644 --- a/src/types/managementClient.ts +++ b/src/types/managementClient.ts @@ -1,21 +1,21 @@ import { UiFacingApi } from '../js/managementClient/api'; -import type { AccessKey, SecretKey } from './account'; -import type { ConfigurationOverlay } from './config'; +import { AccessKey, SecretKey } from './account'; +import { ConfigurationOverlay } from './config'; export type ApiAccountResponse = { - readonly arn: string; - readonly canonicalId: string; - readonly createDate: number; - readonly email: string; - readonly id: string; - readonly quotaMax?: number; - readonly userName: string; + readonly arn: string; + readonly canonicalId: string; + readonly createDate: number; + readonly email: string; + readonly id: string; + readonly quotaMax?: number; + readonly userName: string; }; export type ApiConfigurationResponse = ConfigurationOverlay; export type ManagementClient = UiFacingApi; export type ApiAccountKeyResponse = { - readonly accessKey: AccessKey; - readonly createDate: string; - readonly id: string; - readonly secretKey: SecretKey; - readonly userName: string; + readonly accessKey: AccessKey; + readonly createDate: string; + readonly id: string; + readonly secretKey: SecretKey; + readonly userName: string; }; diff --git a/src/types/state.ts b/src/types/state.ts index 3f956cbb6..84c1aae03 100644 --- a/src/types/state.ts +++ b/src/types/state.ts @@ -1,27 +1,27 @@ -import type { Account, AccountKey } from './account'; -import type { AppConfig, InstanceId } from './entities'; -import type { AuthUser, OidcLogoutFunction } from './auth'; -import type { +import { Account, AccountKey } from './account'; +import { AppConfig, InstanceId } from './entities'; +import { AuthUser, OidcLogoutFunction } from './auth'; +import { BucketInfo, ListObjectsType, ObjectEntity, ObjectMetadata, S3BucketList, } from './s3'; -import type { BucketList, InstanceStatus } from './stats'; -import type { +import { BucketList, InstanceStatus } from './stats'; +import { ConfigurationOverlay, Hostname, LocationName, ReplicationStreams, } from './config'; -import type { Marker, ZenkoClient as ZenkoClientInterface } from './zenko'; -import type { ErrorViewType } from './ui'; -import type { IamAccessKey } from './user'; +import { Marker, ZenkoClient as ZenkoClientInterface } from './zenko'; +import { ErrorViewType } from './ui'; +import { IamAccessKey } from './user'; import { List } from 'immutable'; -import type { ManagementClient as ManagementClientInterface } from './managementClient'; -import type { STSClient } from './sts'; -import type { Workflows } from './workflow'; +import { ManagementClient as ManagementClientInterface } from './managementClient'; +import { STSClient } from './sts'; +import { Workflows } from './workflow'; export type AuthState = { readonly isConfigLoaded: boolean; readonly isClientsLoaded: boolean; diff --git a/src/types/stats.ts b/src/types/stats.ts index 8e9f59c33..634ba812b 100644 --- a/src/types/stats.ts +++ b/src/types/stats.ts @@ -1,4 +1,4 @@ -import type { ConfigurationOverlay, PerLocationMap } from './config'; +import { ConfigurationOverlay, PerLocationMap } from './config'; export type CrrCounter = { readonly count: number; readonly size?: number; diff --git a/src/types/workflow.ts b/src/types/workflow.ts index ad2a986e7..adbc58856 100644 --- a/src/types/workflow.ts +++ b/src/types/workflow.ts @@ -1,5 +1,5 @@ import { BucketWorkflowTransitionV2 } from '../js/managementClient/api'; -import type { Expiration, Replication } from './config'; +import { Expiration, Replication } from './config'; export type APIReplicationWorkflow = { replication: Replication; diff --git a/src/types/zenko.ts b/src/types/zenko.ts index 0027bf76e..5d9392768 100644 --- a/src/types/zenko.ts +++ b/src/types/zenko.ts @@ -1,7 +1,7 @@ /* eslint-disable */ import { S3 } from 'aws-sdk'; import S3Client from '../js/S3Client'; -import type { RetentionMode } from './s3'; +import { RetentionMode } from './s3'; export type Site = string; export type Marker = null | string; From a01b9089b3207ea8fc804a59151f23ab268fd6a2 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Tue, 16 Jul 2024 15:17:21 +0200 Subject: [PATCH 22/24] Launching in dev mode without xcore won't crash anymore --- src/react/next-architecture/ui/AlertProvider.tsx | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/react/next-architecture/ui/AlertProvider.tsx b/src/react/next-architecture/ui/AlertProvider.tsx index 1f39ba2e7..a91643b74 100644 --- a/src/react/next-architecture/ui/AlertProvider.tsx +++ b/src/react/next-architecture/ui/AlertProvider.tsx @@ -15,10 +15,16 @@ export const useAlerts = (filters: FilterLabels) => { const AlertProvider = ({ children }: { children: React.ReactNode }) => { const xcoreConfig = useXcoreRuntimeConfig(); + + let alertManagerUrl = ''; + if (xcoreConfig) { + alertManagerUrl = xcoreConfig.spec.selfConfiguration.url_alertmanager; + } else { + console.log('The alert manager is not available.'); + } + return ( - + {children} ); From d055f2cdffd48a7d0efb3c9d10bbf86818304e89 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Tue, 16 Jul 2024 15:59:01 +0200 Subject: [PATCH 23/24] fix types --- src/react/actions/auth.ts | 1 + .../databrowser/objects/FolderCreate.tsx | 4 +--- src/react/databrowser/objects/ObjectRow.tsx | 21 +++++++------------ .../ui-elements/Veeam/VeeamWelcomeModal.tsx | 2 +- 4 files changed, 11 insertions(+), 17 deletions(-) diff --git a/src/react/actions/auth.ts b/src/react/actions/auth.ts index 9b6be4ae9..b53c277c8 100644 --- a/src/react/actions/auth.ts +++ b/src/react/actions/auth.ts @@ -120,6 +120,7 @@ export function loadClients(): ThunkStatePromisedAction { } // TODO: Give the user the ability to select an instance. + // @ts-expect-error should be remove when we remove redux dispatch(selectInstance(instanceIds[0])); const managementClient = makeMgtClient( config.managementEndpoint, diff --git a/src/react/databrowser/objects/FolderCreate.tsx b/src/react/databrowser/objects/FolderCreate.tsx index 6700f3878..f67511412 100644 --- a/src/react/databrowser/objects/FolderCreate.tsx +++ b/src/react/databrowser/objects/FolderCreate.tsx @@ -3,9 +3,7 @@ import { Button, Input } from '@scality/core-ui/dist/next'; import { spacing } from '@scality/core-ui/dist/style/theme'; import { ChangeEvent, useState } from 'react'; import { useDispatch, useSelector } from 'react-redux'; -import { Dispatch } from 'redux'; import styled from 'styled-components'; -import { Action } from '../../../types/actions'; import { AppState } from '../../../types/state'; import { closeFolderCreateModal, createFolder } from '../../actions'; import { CustomModal as Modal } from '../../ui-elements/Modal'; @@ -28,7 +26,7 @@ const FolderCreate = ({ bucketName, prefixWithSlash }: Props) => { const show = useSelector( (state: AppState) => state.uiObjects.showFolderCreate, ); - const dispatch: Dispatch = useDispatch(); + const dispatch = useDispatch(); if (!show) { return null; diff --git a/src/react/databrowser/objects/ObjectRow.tsx b/src/react/databrowser/objects/ObjectRow.tsx index 71d47f2b2..527d635ce 100644 --- a/src/react/databrowser/objects/ObjectRow.tsx +++ b/src/react/databrowser/objects/ObjectRow.tsx @@ -1,16 +1,15 @@ -import { memo } from 'react'; -import { Dispatch } from 'redux'; -import { areEqual } from 'react-window'; import isDeepEqual from 'lodash.isequal'; import memoize from 'memoize-one'; +import { memo } from 'react'; import { useHistory, useLocation } from 'react-router-dom'; +import { areEqual } from 'react-window'; +import { Dispatch } from 'redux'; -import * as T from '../../ui-elements/Table'; -import { toggleAllObjects } from '../../actions'; -import { Action } from '../../../types/actions'; -import { useQueryParams } from '../../utils/hooks'; import { removeTrailingSlash } from '../../../js/utils'; import { ObjectEntity } from '../../../types/s3'; +import { toggleAllObjects } from '../../actions'; +import * as T from '../../ui-elements/Table'; +import { useQueryParams } from '../../utils/hooks'; type PrepareRow = (arg0: RowType) => void; type RowType = { @@ -23,7 +22,7 @@ type RowsType = Array; type Data = { rows: RowsType; prepareRow: PrepareRow; - dispatch: Dispatch; + dispatch: Dispatch; }; type RowProps = { data: Data; @@ -34,11 +33,7 @@ type RowProps = { // To avoid causing unnecessary re-renders pure MemoRow components. // This is only needed since we are passing multiple props with a wrapper object. export const createItemData = memoize( - ( - rows: RowsType, - prepareRow: PrepareRow, - dispatch: Dispatch, - ): Data => ({ + (rows: RowsType, prepareRow: PrepareRow, dispatch: Dispatch): Data => ({ rows, prepareRow, dispatch, diff --git a/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx b/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx index 36c63139f..4876e460e 100644 --- a/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx +++ b/src/react/ui-elements/Veeam/VeeamWelcomeModal.tsx @@ -92,7 +92,7 @@ const VeeamModalComponent = () => { const veeamConfigurationView = { view: zenkoUIVeeamConfigurationView, app: zenkoUI, - isFederated: true, + isFederated: true as const, }; const user = useAuth(); From 2b6d573d8087c0db78efdec4c64f0546192dceb0 Mon Sep 17 00:00:00 2001 From: Patrick Ear Date: Thu, 18 Jul 2024 19:00:48 +0200 Subject: [PATCH 24/24] Temporary change npm run build -> rsbuild to avoid false positive typescript errors --- .github/workflows/build-push-tests.yml | 2 +- .github/workflows/security.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-push-tests.yml b/.github/workflows/build-push-tests.yml index ce9159d3e..573b02d0d 100644 --- a/.github/workflows/build-push-tests.yml +++ b/.github/workflows/build-push-tests.yml @@ -66,7 +66,7 @@ jobs: run: npm config set unsafe-perm true && npm ci - name: build assets - run: npm run build + run: npm run rsbuild - name: Build and push zenko ui uses: docker/build-push-action@v2.7.0 diff --git a/.github/workflows/security.yaml b/.github/workflows/security.yaml index 3f234aaa8..0ec7804fb 100644 --- a/.github/workflows/security.yaml +++ b/.github/workflows/security.yaml @@ -28,7 +28,7 @@ jobs: - name: install dependencies run: npm config set unsafe-perm true && npm ci - name: build assets - run: npm run build + run: npm run rsbuild - name: Login to GitHub Registry uses: docker/login-action@v2 with: