diff --git a/package.json b/package.json index 6f1c665bd..abf613f04 100644 --- a/package.json +++ b/package.json @@ -10,20 +10,9 @@ "publish": "lerna publish" }, "devDependencies": { - "@babel/core": "^7.24.7", - "@babel/preset-env": "^7.24.7", - "@babel/preset-react": "^7.24.7", - "@babel/preset-typescript": "^7.24.7", "@lerna-lite/cli": "^3.7.0", "@lerna-lite/publish": "^3.7.0", - "@rollup/plugin-babel": "^6.0.3", - "@rollup/plugin-commonjs": "^26.0.1", - "@rollup/plugin-node-resolve": "^15.2.1", - "@rollup/plugin-replace": "^5.0.7", - "@rollup/plugin-terser": "^0.4.3", "conventional-changelog-conventionalcommits": "^7.0.0", - "execa": "^9.2.0", - "rollup": "^4.18.0", "turbo": "^2.0.4" }, "packageManager": "pnpm@8.15.0" diff --git a/packages/next-intl/.size-limit.ts b/packages/next-intl/.size-limit.ts new file mode 100644 index 000000000..d59b0fa66 --- /dev/null +++ b/packages/next-intl/.size-limit.ts @@ -0,0 +1,83 @@ +import type {SizeLimitConfig} from 'size-limit'; + +const config: SizeLimitConfig = [ + { + name: './ (ESM)', + path: 'dist/esm/index.mjs', + limit: '13.31 kB' + }, + { + name: './ (no useTranslations, ESM)', + path: 'dist/esm/index.mjs', + import: + '{useLocale, IntlProvider, useNow, useTimeZone, useMessages, useFormatter}', + limit: '1.64 kB' + }, + { + name: './ (CJS)', + path: 'dist/cjs/index.js', + limit: '17.475 kB' + }, + { + name: './ (react-server)', + path: 'dist/esm/index.mjs', + limit: '13.255 kB' + }, + + { + name: './navigation (ESM)', + path: 'dist/esm/navigation.mjs', + limit: '2.415 kB' + }, + { + name: './navigation (CJS)', + path: 'dist/cjs/navigation.js', + limit: '19.256 kB' + }, + { + name: './navigation (react-server)', + path: 'dist/esm/navigation.react-server.mjs', + // React's `cache` could have a side effect, therefore `createTranslator` is bundled + limit: '14.765 kB' + }, + + { + name: './server (ESM)', + path: 'dist/esm/server.mjs', + limit: '1 kB' + }, + { + name: './server (CJS)', + path: 'dist/cjs/server.js', + limit: '1 kB' + }, + { + name: './server (react-server)', + path: 'dist/esm/server.react-server.mjs', + limit: '13.165 kB' + }, + + { + name: './middleware (ESM)', + path: 'dist/esm/middleware.mjs', + limit: '5.285 kB' + }, + { + name: './middleware (CJS)', + path: 'dist/cjs/middleware.js', + limit: '5.645 kB' + }, + + { + name: './routing (ESM)', + path: 'dist/esm/routing.mjs', + limit: '1 kB' + }, + { + name: './routing (CJS)', + path: 'dist/cjs/routing.js', + limit: '1 kB' + } +]; + +module.exports = config; diff --git a/packages/next-intl/config.d.ts b/packages/next-intl/config.d.ts index 86c346051..17ef4b965 100644 --- a/packages/next-intl/config.d.ts +++ b/packages/next-intl/config.d.ts @@ -1,3 +1,3 @@ -import config from './dist/types/src/config'; +import config from './dist/cjs/config'; export = config; diff --git a/packages/next-intl/middleware.d.ts b/packages/next-intl/middleware.d.ts index 41dddf9a1..31b105ab6 100644 --- a/packages/next-intl/middleware.d.ts +++ b/packages/next-intl/middleware.d.ts @@ -1,3 +1,3 @@ -import createMiddleware from './dist/types/src/middleware'; +import createMiddleware from './dist/cjs/middleware'; export = createMiddleware; diff --git a/packages/next-intl/navigation.d.ts b/packages/next-intl/navigation.d.ts index 81ded918e..6bfa68044 100644 --- a/packages/next-intl/navigation.d.ts +++ b/packages/next-intl/navigation.d.ts @@ -1 +1 @@ -export * from './dist/types/src/navigation.react-client'; +export * from './dist/cjs/navigation'; diff --git a/packages/next-intl/package.json b/packages/next-intl/package.json index 06a7a4bba..56193cb19 100644 --- a/packages/next-intl/package.json +++ b/packages/next-intl/package.json @@ -17,7 +17,7 @@ "url": "https://github.com/amannn/next-intl" }, "scripts": { - "build": "rm -rf dist && rollup -c", + "build": "bunchee && node scripts/patch-dist.mjs", "test": "TZ=Europe/Berlin vitest", "lint": "pnpm run lint:source && pnpm run lint:package", "lint:source": "eslint src test && tsc --noEmit", @@ -26,40 +26,114 @@ "postpublish": "git checkout . && rm ./README.md", "size": "size-limit" }, - "main": "./dist/index.react-client.js", - "module": "./dist/esm/index.react-client.js", - "typings": "./dist/types/src/index.react-client.d.ts", + "type": "commonjs", + "main": "./dist/cjs/index.js", + "module": "./dist/esm/index.mjs", + "typings": "./dist/cjs/index.d.ts", "exports": { ".": { - "types": "./dist/types/src/index.react-client.d.ts", - "react-server": "./dist/esm/index.react-server.js", - "default": "./dist/index.react-client.js" + "react-server": "./dist/esm/index.react-server.mjs", + "import": { + "types": "./dist/esm/index.d.mts", + "development": "./dist/esm/index.development.mjs", + "production": "./dist/esm/index.production.mjs", + "default": "./dist/esm/index.mjs" + }, + "require": { + "types": "./dist/cjs/index.d.ts", + "development": "./dist/cjs/index.development.js", + "production": "./dist/cjs/index.production.js", + "default": "./dist/cjs/index.js" + }, + "default": "./dist/cjs/index.js" }, "./server": { - "types": "./server.d.ts", - "react-server": "./dist/esm/server.react-server.js", - "default": "./dist/server.react-client.js" + "react-server": "./dist/esm/server.react-server.mjs", + "import": { + "types": "./dist/esm/server.d.mts", + "development": "./dist/esm/server.development.mjs", + "production": "./dist/esm/server.production.mjs", + "default": "./dist/esm/server.mjs" + }, + "require": { + "types": "./dist/cjs/server.d.ts", + "development": "./dist/cjs/server.development.js", + "production": "./dist/cjs/server.production.js", + "default": "./dist/cjs/server.js" + }, + "default": "./dist/cjs/server.js" }, "./config": { - "types": "./config.d.ts", - "default": "./dist/config.js" + "import": { + "types": "./dist/esm/config.d.mts", + "development": "./dist/esm/config.development.mjs", + "production": "./dist/esm/config.production.mjs", + "default": "./dist/esm/config.mjs" + }, + "require": { + "types": "./dist/cjs/config.d.ts", + "development": "./dist/cjs/config.development.js", + "production": "./dist/cjs/config.production.js", + "default": "./dist/cjs/config.js" + }, + "default": "./dist/cjs/config.js" }, "./middleware": { - "types": "./middleware.d.ts", - "default": "./dist/middleware.js" + "import": { + "types": "./dist/esm/middleware.d.mts", + "development": "./dist/esm/middleware.development.mjs", + "production": "./dist/esm/middleware.production.mjs", + "default": "./dist/esm/middleware.mjs" + }, + "require": { + "types": "./dist/cjs/middleware.d.ts", + "development": "./dist/cjs/middleware.development.js", + "production": "./dist/cjs/middleware.production.js", + "default": "./dist/cjs/middleware.js" + }, + "default": "./dist/cjs/middleware.js" }, "./navigation": { - "types": "./navigation.d.ts", - "react-server": "./dist/esm/navigation.react-server.js", - "default": "./dist/navigation.react-client.js" + "react-server": "./dist/esm/navigation.react-server.mjs", + "import": { + "types": "./dist/esm/navigation.d.mts", + "development": "./dist/esm/navigation.development.mjs", + "production": "./dist/esm/navigation.production.mjs", + "default": "./dist/esm/navigation.mjs" + }, + "require": { + "types": "./dist/cjs/navigation.d.ts", + "development": "./dist/cjs/navigation.development.js", + "production": "./dist/cjs/navigation.production.js", + "default": "./dist/cjs/navigation.js" + }, + "default": "./dist/cjs/navigation.js" }, "./routing": { - "types": "./routing.d.ts", - "default": "./dist/routing.js" + "import": { + "types": "./dist/esm/routing.d.mts", + "development": "./dist/esm/routing.development.mjs", + "production": "./dist/esm/routing.production.mjs", + "default": "./dist/esm/routing.mjs" + }, + "require": { + "types": "./dist/cjs/routing.d.ts", + "development": "./dist/cjs/routing.development.js", + "production": "./dist/cjs/routing.production.js", + "default": "./dist/cjs/routing.js" + }, + "default": "./dist/cjs/routing.js" }, "./plugin": { - "types": "./plugin.d.ts", - "default": "./dist/plugin.js" + "import": { + "types": "./dist/esm/plugin.d.mts", + "default": "./dist/esm/plugin.mjs" + }, + "require": { + "types": "./dist/cjs/plugin.d.ts", + "default": "./dist/cjs/plugin.js" + }, + "default": "./dist/cjs/plugin.js" } }, "files": [ @@ -96,59 +170,25 @@ "devDependencies": { "@arethetypeswrong/cli": "^0.15.3", "@edge-runtime/vm": "^3.2.0", - "@size-limit/preset-big-lib": "^8.2.6", + "@size-limit/preset-small-lib": "^11.1.4", "@testing-library/react": "^16.0.0", "@types/negotiator": "^0.6.3", "@types/node": "^20.14.5", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", + "bunchee": "^5.3.2", "eslint": "^8.56.0", "eslint-config-molindo": "^7.0.0", "eslint-plugin-deprecation": "^3.0.0", + "glob": "^10.4.2", "next": "^14.2.4", "path-to-regexp": "^6.2.2", "publint": "^0.2.8", "react": "^18.3.1", "react-dom": "^18.3.1", - "rollup": "^4.18.0", - "rollup-plugin-preserve-directives": "0.4.0", - "size-limit": "^8.2.6", + "size-limit": "^11.1.4", "typescript": "^5.5.3", "vitest": "^2.0.2" }, - "prettier": "../../.prettierrc.json", - "size-limit": [ - { - "path": "dist/production/index.react-client.js", - "limit": "16.055 KB" - }, - { - "path": "dist/production/index.react-server.js", - "limit": "16.875 KB" - }, - { - "path": "dist/production/navigation.react-client.js", - "limit": "3.55 KB" - }, - { - "path": "dist/production/navigation.react-server.js", - "limit": "18.355 KB" - }, - { - "path": "dist/production/server.react-client.js", - "limit": "1 KB" - }, - { - "path": "dist/production/server.react-server.js", - "limit": "16.025 KB" - }, - { - "path": "dist/production/middleware.js", - "limit": "11.515 KB" - }, - { - "path": "dist/production/routing.js", - "limit": "0 KB" - } - ] + "prettier": "../../.prettierrc.json" } diff --git a/packages/next-intl/plugin.d.ts b/packages/next-intl/plugin.d.ts index 476ab78b5..16d544d4a 100644 --- a/packages/next-intl/plugin.d.ts +++ b/packages/next-intl/plugin.d.ts @@ -1,8 +1 @@ -import {NextConfig} from 'next'; - -function createNextIntlPlugin( - i18nPath?: string -): (config?: NextConfig) => NextConfig; - -// Currently only available via CJS -export = createNextIntlPlugin; +export {default} from './dist/cjs/plugin' diff --git a/packages/next-intl/rollup.config.mjs b/packages/next-intl/rollup.config.mjs deleted file mode 100644 index bb8702657..000000000 --- a/packages/next-intl/rollup.config.mjs +++ /dev/null @@ -1,49 +0,0 @@ -/* eslint-env node */ -import preserveDirectives from 'rollup-plugin-preserve-directives'; -import getBuildConfig from '../../scripts/getBuildConfig.mjs'; - -const config = { - input: { - 'index.react-client': 'src/index.react-client.tsx', - 'index.react-server': 'src/index.react-server.tsx', - - 'navigation.react-client': 'src/navigation.react-client.tsx', - 'navigation.react-server': 'src/navigation.react-server.tsx', - - 'server.react-client': 'src/server.react-client.tsx', - 'server.react-server': 'src/server.react-server.tsx', - - middleware: 'src/middleware.tsx', - routing: 'src/routing.tsx', - plugin: 'src/plugin.tsx', - config: 'src/config.tsx' - }, - external: ['next-intl/config', /use-intl/], - output: { - preserveModules: true - }, - onwarn(warning, warn) { - if (warning.code === 'MODULE_LEVEL_DIRECTIVE') return; - warn(warning); - }, - plugins: [preserveDirectives()] -}; - -export default [ - getBuildConfig({ - ...config, - env: 'development' - }), - getBuildConfig({ - ...config, - output: { - ...config.output, - format: 'es' - }, - env: 'esm' - }), - getBuildConfig({ - ...config, - env: 'production' - }) -]; diff --git a/packages/next-intl/routing.d.ts b/packages/next-intl/routing.d.ts index 13ee0d973..cab1a2e35 100644 --- a/packages/next-intl/routing.d.ts +++ b/packages/next-intl/routing.d.ts @@ -1 +1 @@ -export * from './dist/types/src/routing'; +export * from './dist/cjs/routing'; diff --git a/packages/next-intl/scripts/patch-dist.mjs b/packages/next-intl/scripts/patch-dist.mjs new file mode 100644 index 000000000..e2a9a30b8 --- /dev/null +++ b/packages/next-intl/scripts/patch-dist.mjs @@ -0,0 +1,23 @@ +/* eslint-env node */ +import fs from 'fs'; + +function patchFile(filePath, oldString, newString) { + const data = fs.readFileSync(filePath, 'utf8'); + if (data.includes(newString)) return; + const updatedData = data.replace(oldString, newString); + fs.writeFileSync(filePath, updatedData, 'utf8'); +} + +/** + * Fix the CJS export of the plugin + */ +patchFile( + './dist/cjs/plugin.js', + 'exports.default = createNextIntlPlugin;', + 'module.exports = createNextIntlPlugin;module.exports.default = createNextIntlPlugin;' +); +patchFile( + './dist/cjs/plugin.d.ts', + 'export { createNextIntlPlugin as default };', + 'export = createNextIntlPlugin;' +); diff --git a/packages/next-intl/server.d.ts b/packages/next-intl/server.d.ts index e53f54959..6e4000374 100644 --- a/packages/next-intl/server.d.ts +++ b/packages/next-intl/server.d.ts @@ -1 +1 @@ -export * from './dist/types/src/server/react-server'; +export * from './dist/cjs/server'; diff --git a/packages/next-intl/src/index.react-client.tsx b/packages/next-intl/src/index.tsx similarity index 100% rename from packages/next-intl/src/index.react-client.tsx rename to packages/next-intl/src/index.tsx diff --git a/packages/next-intl/src/navigation.react-client.tsx b/packages/next-intl/src/navigation.tsx similarity index 100% rename from packages/next-intl/src/navigation.react-client.tsx rename to packages/next-intl/src/navigation.tsx diff --git a/packages/next-intl/src/navigation/createLocalizedPathnamesNavigation.test.tsx b/packages/next-intl/src/navigation/createLocalizedPathnamesNavigation.test.tsx index 858f8605f..45f289c18 100644 --- a/packages/next-intl/src/navigation/createLocalizedPathnamesNavigation.test.tsx +++ b/packages/next-intl/src/navigation/createLocalizedPathnamesNavigation.test.tsx @@ -10,7 +10,7 @@ import React from 'react'; import {renderToString} from 'react-dom/server'; import {it, describe, vi, expect, beforeEach} from 'vitest'; import {Pathnames} from '../routing'; -import {getRequestLocale} from '../server/react-server/RequestLocale'; +import {getRequestLocale} from '../runtimes/react-server.shared-runtime'; import {getLocalePrefix} from '../shared/utils'; import createLocalizedPathnamesNavigationClient from './react-client/createLocalizedPathnamesNavigation'; import createLocalizedPathnamesNavigationServer from './react-server/createLocalizedPathnamesNavigation'; @@ -48,7 +48,7 @@ vi.mock('../../src/navigation/react-server/ServerLink', () => ({ ); } })); -vi.mock('../../src/server/react-server/RequestLocale', () => ({ +vi.mock('../../src/runtimes/react-server/RequestLocale', () => ({ getRequestLocale: vi.fn(() => 'en') })); diff --git a/packages/next-intl/src/navigation/createSharedPathnamesNavigation.test.tsx b/packages/next-intl/src/navigation/createSharedPathnamesNavigation.test.tsx index a4c00e37d..39570e692 100644 --- a/packages/next-intl/src/navigation/createSharedPathnamesNavigation.test.tsx +++ b/packages/next-intl/src/navigation/createSharedPathnamesNavigation.test.tsx @@ -9,7 +9,7 @@ import { import React from 'react'; import {renderToString} from 'react-dom/server'; import {it, describe, vi, expect, beforeEach} from 'vitest'; -import {getRequestLocale} from '../server/react-server/RequestLocale'; +import {getRequestLocale} from '../runtimes/react-server.shared-runtime'; import {getLocalePrefix} from '../shared/utils'; import createSharedPathnamesNavigationClient from './react-client/createSharedPathnamesNavigation'; import createSharedPathnamesNavigationServer from './react-server/createSharedPathnamesNavigation'; @@ -47,7 +47,7 @@ vi.mock('../../src/navigation/react-server/ServerLink', () => ({ ); } })); -vi.mock('../../src/server/react-server/RequestLocale', () => ({ +vi.mock('../../src/runtimes/react-server/RequestLocale', () => ({ getRequestLocale: vi.fn(() => 'en') })); diff --git a/packages/next-intl/src/navigation/index.tsx b/packages/next-intl/src/navigation/index.tsx new file mode 100644 index 000000000..fe897989c --- /dev/null +++ b/packages/next-intl/src/navigation/index.tsx @@ -0,0 +1 @@ +export * from './react-client/index'; diff --git a/packages/next-intl/src/navigation/react-client/ClientLink.test.tsx b/packages/next-intl/src/navigation/react-client/ClientLink.test.tsx index bf4e3dbf7..7c48efdeb 100644 --- a/packages/next-intl/src/navigation/react-client/ClientLink.test.tsx +++ b/packages/next-intl/src/navigation/react-client/ClientLink.test.tsx @@ -2,7 +2,7 @@ import {fireEvent, render, screen} from '@testing-library/react'; import {usePathname, useParams} from 'next/navigation'; import React, {ComponentProps, LegacyRef, forwardRef} from 'react'; import {it, describe, vi, beforeEach, expect} from 'vitest'; -import {NextIntlClientProvider} from '../../index.react-client'; +import {NextIntlClientProvider} from '../../index'; import {LocalePrefixConfigVerbose} from '../../routing/types'; import ClientLink from './ClientLink'; diff --git a/packages/next-intl/src/navigation/react-client/useBasePathname.test.tsx b/packages/next-intl/src/navigation/react-client/useBasePathname.test.tsx index 2daa86d20..c341c5d13 100644 --- a/packages/next-intl/src/navigation/react-client/useBasePathname.test.tsx +++ b/packages/next-intl/src/navigation/react-client/useBasePathname.test.tsx @@ -2,7 +2,7 @@ import {render, screen} from '@testing-library/react'; import {usePathname as useNextPathname, useParams} from 'next/navigation'; import React from 'react'; import {it, describe, vi, beforeEach, expect} from 'vitest'; -import {NextIntlClientProvider} from '../../index.react-client'; +import {NextIntlClientProvider} from '../../index'; import useBasePathname from './useBasePathname'; vi.mock('next/navigation'); diff --git a/packages/next-intl/src/navigation/react-client/useBasePathname.tsx b/packages/next-intl/src/navigation/react-client/useBasePathname.tsx index 6d288e6ea..dc5f1e6f2 100644 --- a/packages/next-intl/src/navigation/react-client/useBasePathname.tsx +++ b/packages/next-intl/src/navigation/react-client/useBasePathname.tsx @@ -1,14 +1,9 @@ -'use client'; - import {usePathname as useNextPathname} from 'next/navigation'; import {useMemo} from 'react'; import useLocale from '../../react-client/useLocale'; import {Locales, LocalePrefixConfigVerbose} from '../../routing/types'; -import { - getLocalePrefix, - hasPathnamePrefixed, - unprefixPathname -} from '../../shared/utils'; +import {getLocalePrefix} from '../../shared/utils'; +import {hasPathnamePrefixed, unprefixPathname} from '../shared/utils'; /** * Returns the pathname without a potential locale prefix. diff --git a/packages/next-intl/src/navigation/react-client/useBaseRouter.tsx b/packages/next-intl/src/navigation/react-client/useBaseRouter.tsx index 9be7e2f49..f13199a7e 100644 --- a/packages/next-intl/src/navigation/react-client/useBaseRouter.tsx +++ b/packages/next-intl/src/navigation/react-client/useBaseRouter.tsx @@ -2,9 +2,9 @@ import {useRouter as useNextRouter, usePathname} from 'next/navigation'; import {useMemo} from 'react'; import useLocale from '../../react-client/useLocale'; import {Locales, LocalePrefixConfigVerbose} from '../../routing/types'; -import {getLocalePrefix, localizeHref} from '../../shared/utils'; +import {getLocalePrefix} from '../../shared/utils'; import syncLocaleCookie from '../shared/syncLocaleCookie'; -import {getBasePath} from '../shared/utils'; +import {getBasePath, localizeHref} from '../shared/utils'; type IntlNavigateOptions = { locale?: AppLocales[number]; diff --git a/packages/next-intl/src/navigation/react-server/ServerLink.tsx b/packages/next-intl/src/navigation/react-server/ServerLink.tsx index c254a6c39..b4ea73a0e 100644 --- a/packages/next-intl/src/navigation/react-server/ServerLink.tsx +++ b/packages/next-intl/src/navigation/react-server/ServerLink.tsx @@ -1,6 +1,6 @@ import React, {ComponentProps} from 'react'; import {Locales, LocalePrefixConfigVerbose} from '../../routing/types'; -import {getLocale} from '../../server.react-server'; +import {getLocale} from '../../runtimes/react-server.shared-runtime'; import {getLocalePrefix} from '../../shared/utils'; import BaseLink from '../shared/BaseLink'; diff --git a/packages/next-intl/src/navigation/react-server/createLocalizedPathnamesNavigation.tsx b/packages/next-intl/src/navigation/react-server/createLocalizedPathnamesNavigation.tsx index b34c72a34..229cebeab 100644 --- a/packages/next-intl/src/navigation/react-server/createLocalizedPathnamesNavigation.tsx +++ b/packages/next-intl/src/navigation/react-server/createLocalizedPathnamesNavigation.tsx @@ -1,6 +1,6 @@ import React, {ComponentProps} from 'react'; import {Locales, Pathnames} from '../../routing/types'; -import {getRequestLocale} from '../../server/react-server/RequestLocale'; +import {getRequestLocale} from '../../runtimes/react-server.shared-runtime'; import {ParametersExceptFirst} from '../../shared/types'; import { LocalizedNavigationRoutingConfigInput, diff --git a/packages/next-intl/src/navigation/react-server/redirects.tsx b/packages/next-intl/src/navigation/react-server/redirects.tsx index 435e5dfa9..3fc93a1e0 100644 --- a/packages/next-intl/src/navigation/react-server/redirects.tsx +++ b/packages/next-intl/src/navigation/react-server/redirects.tsx @@ -1,4 +1,4 @@ -import {getRequestLocale} from '../../server/react-server/RequestLocale'; +import {getRequestLocale} from '../../runtimes/react-server.shared-runtime'; import {ParametersExceptFirst} from '../../shared/types'; import {baseRedirect, basePermanentRedirect} from '../shared/redirects'; diff --git a/packages/next-intl/src/navigation/shared/BaseLink.tsx b/packages/next-intl/src/navigation/shared/BaseLink.tsx index 1d5fafb2f..c959016fc 100644 --- a/packages/next-intl/src/navigation/shared/BaseLink.tsx +++ b/packages/next-intl/src/navigation/shared/BaseLink.tsx @@ -11,8 +11,8 @@ import React, { } from 'react'; import useLocale from '../../react-client/useLocale'; import {LocalePrefixMode} from '../../routing/types'; -import {isLocalizableHref, localizeHref, prefixHref} from '../../shared/utils'; import syncLocaleCookie from './syncLocaleCookie'; +import {isLocalizableHref, localizeHref, prefixHref} from './utils'; type Props = Omit, 'locale'> & { locale: string; diff --git a/packages/next-intl/src/navigation/shared/redirects.tsx b/packages/next-intl/src/navigation/shared/redirects.tsx index 95a53a6f5..104e4e018 100644 --- a/packages/next-intl/src/navigation/shared/redirects.tsx +++ b/packages/next-intl/src/navigation/shared/redirects.tsx @@ -4,11 +4,8 @@ import { } from 'next/navigation'; import {Locales, LocalePrefixConfigVerbose} from '../../routing/types'; import {ParametersExceptFirst} from '../../shared/types'; -import { - getLocalePrefix, - isLocalizableHref, - prefixPathname -} from '../../shared/utils'; +import {getLocalePrefix, prefixPathname} from '../../shared/utils'; +import {isLocalizableHref} from './utils'; function createRedirectFn(redirectFn: typeof nextRedirect) { return function baseRedirect( diff --git a/packages/next-intl/src/navigation/shared/utils.test.tsx b/packages/next-intl/src/navigation/shared/utils.test.tsx index 39a294557..91910aebe 100644 --- a/packages/next-intl/src/navigation/shared/utils.test.tsx +++ b/packages/next-intl/src/navigation/shared/utils.test.tsx @@ -2,7 +2,9 @@ import {describe, expect, it} from 'vitest'; import { compileLocalizedPathname, getBasePath, - serializeSearchParams + serializeSearchParams, + hasPathnamePrefixed, + unprefixPathname } from './utils'; describe('serializeSearchParams', () => { @@ -145,3 +147,38 @@ describe('getBasePath', () => { expect(getBasePath('/about', '/base/about')).toBe('/base'); }); }); + +describe('hasPathnamePrefixed', () => { + it('detects prefixed pathnames', () => { + expect(hasPathnamePrefixed('/en', '/en')).toEqual(true); + expect(hasPathnamePrefixed('/en', '/en/')).toEqual(true); + expect(hasPathnamePrefixed('/en', '/en/client')).toEqual(true); + expect(hasPathnamePrefixed('/en', '/en/client/')).toEqual(true); + expect(hasPathnamePrefixed('/en', '/en/client/test')).toEqual(true); + }); + + it('detects non-prefixed pathnames', () => { + expect(hasPathnamePrefixed('/en', '/')).toEqual(false); + expect(hasPathnamePrefixed('/en', '/client')).toEqual(false); + expect(hasPathnamePrefixed('/en', '/client/')).toEqual(false); + expect(hasPathnamePrefixed('/en', '/client/test')).toEqual(false); + }); +}); + +describe('unlocalizePathname', () => { + it('works for the root', () => { + expect(unprefixPathname('/en', '/en')).toEqual('/'); + }); + + it('works for nested pages', () => { + expect(unprefixPathname('/en/nested', '/en')).toEqual('/nested'); + }); + + it('works with sub-tags', () => { + expect(unprefixPathname('/en-GB/nested', '/en-GB')).toEqual('/nested'); + }); + + it('works for custom prefixes', () => { + expect(unprefixPathname('/uk/nested', '/uk')).toEqual('/nested'); + }); +}); diff --git a/packages/next-intl/src/navigation/shared/utils.tsx b/packages/next-intl/src/navigation/shared/utils.tsx index b5cb714da..34bb2bd4d 100644 --- a/packages/next-intl/src/navigation/shared/utils.tsx +++ b/packages/next-intl/src/navigation/shared/utils.tsx @@ -1,10 +1,13 @@ import type {ParsedUrlQueryInput} from 'node:querystring'; import type {UrlObject} from 'url'; +import NextLink from 'next/link'; +import {ComponentProps} from 'react'; import {Locales, Pathnames} from '../../routing/types'; import { - matchesPathname, getSortedPathnames, - normalizeTrailingSlash + matchesPathname, + normalizeTrailingSlash, + prefixPathname } from '../../shared/utils'; import StrictParams from './StrictParams'; @@ -198,3 +201,86 @@ export function getBasePath( return windowPathname.replace(pathname, ''); } } + +type Href = ComponentProps['href']; + +function isRelativeHref(href: Href) { + const pathname = typeof href === 'object' ? href.pathname : href; + return pathname != null && !pathname.startsWith('/'); +} + +function isLocalHref(href: Href) { + if (typeof href === 'object') { + return href.host == null && href.hostname == null; + } else { + const hasProtocol = /^[a-z]+:/i.test(href); + return !hasProtocol; + } +} + +export function isLocalizableHref(href: Href) { + return isLocalHref(href) && !isRelativeHref(href); +} + +export function localizeHref( + href: string, + locale: string, + curLocale: string, + curPathname: string, + prefix: string +): string; +export function localizeHref( + href: UrlObject | string, + locale: string, + curLocale: string, + curPathname: string, + prefix: string +): UrlObject | string; +export function localizeHref( + href: UrlObject | string, + locale: string, + curLocale: string = locale, + curPathname: string, + prefix: string +) { + if (!isLocalizableHref(href)) { + return href; + } + + const isSwitchingLocale = locale !== curLocale; + const isPathnamePrefixed = hasPathnamePrefixed(prefix, curPathname); + const shouldPrefix = isSwitchingLocale || isPathnamePrefixed; + + if (shouldPrefix && prefix != null) { + return prefixHref(href, prefix); + } + + return href; +} + +export function prefixHref(href: string, prefix: string): string; +export function prefixHref( + href: UrlObject | string, + prefix: string +): UrlObject | string; +export function prefixHref(href: UrlObject | string, prefix: string) { + let prefixedHref; + if (typeof href === 'string') { + prefixedHref = prefixPathname(prefix, href); + } else { + prefixedHref = {...href}; + if (href.pathname) { + prefixedHref.pathname = prefixPathname(prefix, href.pathname); + } + } + + return prefixedHref; +} + +export function unprefixPathname(pathname: string, prefix: string) { + return pathname.replace(new RegExp(`^${prefix}`), '') || '/'; +} + +export function hasPathnamePrefixed(prefix: string, pathname: string) { + return pathname === prefix || pathname.startsWith(`${prefix}/`); +} diff --git a/packages/next-intl/src/plugin.tsx b/packages/next-intl/src/plugin.tsx index 594da1f8a..cc5e7011e 100644 --- a/packages/next-intl/src/plugin.tsx +++ b/packages/next-intl/src/plugin.tsx @@ -108,8 +108,8 @@ function initPlugin(i18nPath?: string, nextConfig?: NextConfig): NextConfig { return Object.assign({}, nextConfig, nextIntlConfig); } -module.exports = function createNextIntlPlugin(i18nPath?: string) { +export default function createNextIntlPlugin(i18nPath?: string) { return function withNextIntl(nextConfig?: NextConfig) { return initPlugin(i18nPath, nextConfig); }; -}; +} diff --git a/packages/next-intl/src/react-client/index.tsx b/packages/next-intl/src/react-client/index.tsx index a2f4f5ee8..02660e540 100644 --- a/packages/next-intl/src/react-client/index.tsx +++ b/packages/next-intl/src/react-client/index.tsx @@ -8,44 +8,8 @@ * supported in all Next.js versions that are supported. */ -import { - useTranslations as base_useTranslations, - useFormatter as base_useFormatter -} from 'use-intl'; - export * from 'use-intl'; -// eslint-disable-next-line @typescript-eslint/ban-types -function callHook(name: string, hook: Function) { - return (...args: Array) => { - try { - return hook(...args); - } catch (e) { - throw new Error( - process.env.NODE_ENV !== 'production' - ? `Failed to call \`${name}\` because the context from \`NextIntlClientProvider\` was not found. - -This can happen because: -1) You intended to render this component as a Server Component, the render - failed, and therefore React attempted to render the component on the client - instead. If this is the case, check the console for server errors. -2) You intended to render this component on the client side, but no context was found. - Learn more about this error here: https://next-intl-docs.vercel.app/docs/environments/server-client-components#missing-context` - : undefined - ); - } - }; -} - -export const useTranslations = callHook( - 'useTranslations', - base_useTranslations -) as typeof base_useTranslations; -export const useFormatter = callHook( - 'useFormatter', - base_useFormatter -) as typeof base_useFormatter; - // Replace `useLocale` export from `use-intl` export {default as useLocale} from './useLocale'; diff --git a/packages/next-intl/src/react-client/useFormatter.test.tsx b/packages/next-intl/src/react-client/useFormatter.test.tsx index 701ea9032..157a12f2b 100644 --- a/packages/next-intl/src/react-client/useFormatter.test.tsx +++ b/packages/next-intl/src/react-client/useFormatter.test.tsx @@ -9,9 +9,7 @@ function Component() { } it('provides a helpful error message when no provider is found', () => { - expect(() => render()).toThrow( - /Failed to call `useFormatter` because the context from `NextIntlClientProvider` was not found\./ - ); + expect(() => render()).toThrow(/No intl context found\./); }); it('works with a provider', () => { diff --git a/packages/next-intl/src/react-client/useLocale.tsx b/packages/next-intl/src/react-client/useLocale.tsx index 400dd6fec..01f799d35 100644 --- a/packages/next-intl/src/react-client/useLocale.tsx +++ b/packages/next-intl/src/react-client/useLocale.tsx @@ -1,6 +1,5 @@ import {useParams} from 'next/navigation'; -// Workaround for some bundle splitting until we have ESM -import {useLocale as useBaseLocale} from 'use-intl/_useLocale'; +import {useLocale as useBaseLocale} from 'use-intl'; import {LOCALE_SEGMENT_NAME} from '../shared/constants'; export default function useLocale(): string { diff --git a/packages/next-intl/src/react-client/useTranslations.test.tsx b/packages/next-intl/src/react-client/useTranslations.test.tsx index 8de7f965d..f6856df56 100644 --- a/packages/next-intl/src/react-client/useTranslations.test.tsx +++ b/packages/next-intl/src/react-client/useTranslations.test.tsx @@ -9,9 +9,7 @@ function Component() { } it('provides a helpful error message when no provider is found', () => { - expect(() => render()).toThrow( - /Failed to call `useTranslations` because the context from `NextIntlClientProvider` was not found\./ - ); + expect(() => render()).toThrow(/No intl context found\./); }); it('works with a provider', () => { diff --git a/packages/next-intl/src/react-server/NextIntlClientProviderServer.test.tsx b/packages/next-intl/src/react-server/NextIntlClientProviderServer.test.tsx index 6ce77d6b4..207863727 100644 --- a/packages/next-intl/src/react-server/NextIntlClientProviderServer.test.tsx +++ b/packages/next-intl/src/react-server/NextIntlClientProviderServer.test.tsx @@ -3,7 +3,7 @@ import {getLocale, getNow, getTimeZone} from '../server.react-server'; import NextIntlClientProvider from '../shared/NextIntlClientProvider'; import NextIntlClientProviderServer from './NextIntlClientProviderServer'; -vi.mock('../../src/server/react-server', async () => ({ +vi.mock('../../src/runtimes/react-server.shared-runtime', async () => ({ getLocale: vi.fn(async () => 'en-US'), getNow: vi.fn(async () => new Date('2020-01-01T00:00:00.000Z')), getTimeZone: vi.fn(async () => 'America/New_York') diff --git a/packages/next-intl/src/react-server/NextIntlClientProviderServer.tsx b/packages/next-intl/src/react-server/NextIntlClientProviderServer.tsx index 941187dcc..27bf5bbd8 100644 --- a/packages/next-intl/src/react-server/NextIntlClientProviderServer.tsx +++ b/packages/next-intl/src/react-server/NextIntlClientProviderServer.tsx @@ -1,5 +1,9 @@ import React, {ComponentProps} from 'react'; -import {getLocale, getNow, getTimeZone} from '../server.react-server'; +import { + getLocale, + getNow, + getTimeZone +} from '../runtimes/react-server.shared-runtime'; import BaseNextIntlClientProvider from '../shared/NextIntlClientProvider'; type Props = ComponentProps; diff --git a/packages/next-intl/src/react-server/index.test.tsx b/packages/next-intl/src/react-server/index.test.tsx index 702bbf227..90bc97343 100644 --- a/packages/next-intl/src/react-server/index.test.tsx +++ b/packages/next-intl/src/react-server/index.test.tsx @@ -13,7 +13,7 @@ import { vi.mock('react'); -vi.mock('../../src/server/react-server/createRequestConfig', () => ({ +vi.mock('../../src/runtimes/react-server/createRequestConfig', () => ({ default: async () => ({ messages: { Component: { @@ -26,7 +26,7 @@ vi.mock('../../src/server/react-server/createRequestConfig', () => ({ }) })); -vi.mock('../../src/server/react-server/RequestLocale', () => ({ +vi.mock('../../src/runtimes/react-server/RequestLocale', () => ({ getRequestLocale: vi.fn(() => 'en') })); diff --git a/packages/next-intl/src/react-server/useConfig.tsx b/packages/next-intl/src/react-server/useConfig.tsx index 2731c730d..c60fe4d5a 100644 --- a/packages/next-intl/src/react-server/useConfig.tsx +++ b/packages/next-intl/src/react-server/useConfig.tsx @@ -1,5 +1,5 @@ import {use} from 'react'; -import getConfig from '../server/react-server/getConfig'; +import {getConfig} from '../runtimes/react-server.shared-runtime'; function useHook(hookName: string, promise: Promise) { try { diff --git a/packages/next-intl/src/react-server/useMessages.tsx b/packages/next-intl/src/react-server/useMessages.tsx index 8dff17598..7b3e2a3cb 100644 --- a/packages/next-intl/src/react-server/useMessages.tsx +++ b/packages/next-intl/src/react-server/useMessages.tsx @@ -1,5 +1,5 @@ import type {useMessages as useMessagesType} from 'use-intl'; -import {getMessagesFromConfig} from '../server/react-server/getMessages'; +import {getMessagesFromConfig} from '../runtimes/react-server'; import useConfig from './useConfig'; export default function useMessages( diff --git a/packages/next-intl/src/react-server/useTranslations.test.tsx b/packages/next-intl/src/react-server/useTranslations.test.tsx index ea36ea8b2..77ba5dca2 100644 --- a/packages/next-intl/src/react-server/useTranslations.test.tsx +++ b/packages/next-intl/src/react-server/useTranslations.test.tsx @@ -3,7 +3,7 @@ import {describe, expect, it, vi, beforeEach} from 'vitest'; import {renderToStream} from './utils'; import {createTranslator, useTranslations} from '.'; -vi.mock('../../src/server/react-server/createRequestConfig', () => ({ +vi.mock('../../src/runtimes/react-server/createRequestConfig', () => ({ default: async () => ({ messages: { A: { @@ -19,7 +19,7 @@ vi.mock('../../src/server/react-server/createRequestConfig', () => ({ }) })); -vi.mock('../../src/server/react-server/RequestLocale', () => ({ +vi.mock('../../src/runtimes/react-server/RequestLocale', () => ({ getRequestLocale: vi.fn(() => 'en') })); diff --git a/packages/next-intl/src/react-server/useTranslations.tsx b/packages/next-intl/src/react-server/useTranslations.tsx index ebf7b613c..9e2b41e4a 100644 --- a/packages/next-intl/src/react-server/useTranslations.tsx +++ b/packages/next-intl/src/react-server/useTranslations.tsx @@ -1,10 +1,10 @@ import type {useTranslations as useTranslationsType} from 'use-intl'; -import getBaseTranslator from './getTranslator'; +import {getTranslator} from '../runtimes/react-server'; import useConfig from './useConfig'; export default function useTranslations( ...[namespace]: Parameters ): ReturnType { const config = useConfig('useTranslations'); - return getBaseTranslator(config, namespace); + return getTranslator(config, namespace); } diff --git a/packages/next-intl/src/runtimes/react-server.shared-runtime.tsx b/packages/next-intl/src/runtimes/react-server.shared-runtime.tsx new file mode 100644 index 000000000..eefe416c8 --- /dev/null +++ b/packages/next-intl/src/runtimes/react-server.shared-runtime.tsx @@ -0,0 +1,3 @@ +// This entry point needs to be shared to enable caching and code sharing +// across `next-intl/server` (react-server) and `next-intl` (react-server) +export * from './react-server'; diff --git a/packages/next-intl/src/server/react-server/RequestLocale.tsx b/packages/next-intl/src/runtimes/react-server/RequestLocale.tsx similarity index 96% rename from packages/next-intl/src/server/react-server/RequestLocale.tsx rename to packages/next-intl/src/runtimes/react-server/RequestLocale.tsx index 970bb4de5..7a6adffb8 100644 --- a/packages/next-intl/src/server/react-server/RequestLocale.tsx +++ b/packages/next-intl/src/runtimes/react-server/RequestLocale.tsx @@ -35,7 +35,7 @@ function getLocaleFromHeaderImpl() { } const getLocaleFromHeader = cache(getLocaleFromHeaderImpl); -// Workaround until `createServerContext` is available +// https://github.com/vercel/next.js/discussions/58862 function getCacheImpl() { const value: {locale?: string} = {locale: undefined}; return value; diff --git a/packages/next-intl/src/server/react-server/createRequestConfig.tsx b/packages/next-intl/src/runtimes/react-server/createRequestConfig.tsx similarity index 100% rename from packages/next-intl/src/server/react-server/createRequestConfig.tsx rename to packages/next-intl/src/runtimes/react-server/createRequestConfig.tsx diff --git a/packages/next-intl/src/server/react-server/getConfig.tsx b/packages/next-intl/src/runtimes/react-server/getConfig.tsx similarity index 100% rename from packages/next-intl/src/server/react-server/getConfig.tsx rename to packages/next-intl/src/runtimes/react-server/getConfig.tsx diff --git a/packages/next-intl/src/server/react-server/getFormatter.tsx b/packages/next-intl/src/runtimes/react-server/getFormatter.tsx similarity index 100% rename from packages/next-intl/src/server/react-server/getFormatter.tsx rename to packages/next-intl/src/runtimes/react-server/getFormatter.tsx diff --git a/packages/next-intl/src/server/react-server/getLocale.tsx b/packages/next-intl/src/runtimes/react-server/getLocale.tsx similarity index 100% rename from packages/next-intl/src/server/react-server/getLocale.tsx rename to packages/next-intl/src/runtimes/react-server/getLocale.tsx diff --git a/packages/next-intl/src/runtimes/react-server/getMessageFormatCache.tsx b/packages/next-intl/src/runtimes/react-server/getMessageFormatCache.tsx new file mode 100644 index 000000000..34955425a --- /dev/null +++ b/packages/next-intl/src/runtimes/react-server/getMessageFormatCache.tsx @@ -0,0 +1,8 @@ +import {cache} from 'react'; + +function getMessageFormatCacheImpl() { + return new Map(); +} +const getMessageFormatCache = cache(getMessageFormatCacheImpl); + +export default getMessageFormatCache; diff --git a/packages/next-intl/src/server/react-server/getMessages.tsx b/packages/next-intl/src/runtimes/react-server/getMessages.tsx similarity index 100% rename from packages/next-intl/src/server/react-server/getMessages.tsx rename to packages/next-intl/src/runtimes/react-server/getMessages.tsx diff --git a/packages/next-intl/src/server/react-server/getNow.tsx b/packages/next-intl/src/runtimes/react-server/getNow.tsx similarity index 100% rename from packages/next-intl/src/server/react-server/getNow.tsx rename to packages/next-intl/src/runtimes/react-server/getNow.tsx diff --git a/packages/next-intl/src/server/react-server/getRequestConfig.tsx b/packages/next-intl/src/runtimes/react-server/getRequestConfig.tsx similarity index 100% rename from packages/next-intl/src/server/react-server/getRequestConfig.tsx rename to packages/next-intl/src/runtimes/react-server/getRequestConfig.tsx diff --git a/packages/next-intl/src/server/react-server/getTimeZone.tsx b/packages/next-intl/src/runtimes/react-server/getTimeZone.tsx similarity index 100% rename from packages/next-intl/src/server/react-server/getTimeZone.tsx rename to packages/next-intl/src/runtimes/react-server/getTimeZone.tsx diff --git a/packages/next-intl/src/server/react-server/getTranslations.tsx b/packages/next-intl/src/runtimes/react-server/getTranslations.tsx similarity index 97% rename from packages/next-intl/src/server/react-server/getTranslations.tsx rename to packages/next-intl/src/runtimes/react-server/getTranslations.tsx index e65eb0ab6..1448addfe 100644 --- a/packages/next-intl/src/server/react-server/getTranslations.tsx +++ b/packages/next-intl/src/runtimes/react-server/getTranslations.tsx @@ -1,6 +1,5 @@ import {ReactElement, ReactNodeArray, cache} from 'react'; import { - createTranslator, Formats, TranslationValues, MessageKeys, @@ -11,6 +10,7 @@ import { MarkupTranslationValues } from 'use-intl/core'; import getConfig from './getConfig'; +import getTranslator from './getTranslator'; // Maintainer note: `getTranslations` has two different call signatures. // We need to define these with function overloads, otherwise TypeScript @@ -211,12 +211,7 @@ async function getTranslations< } const config = await getConfig(locale); - - return createTranslator({ - ...config, - namespace, - messages: config.messages - }); + return getTranslator(config, namespace); } export default cache(getTranslations); diff --git a/packages/next-intl/src/react-server/getTranslator.tsx b/packages/next-intl/src/runtimes/react-server/getTranslator.tsx similarity index 100% rename from packages/next-intl/src/react-server/getTranslator.tsx rename to packages/next-intl/src/runtimes/react-server/getTranslator.tsx diff --git a/packages/next-intl/src/runtimes/react-server/index.tsx b/packages/next-intl/src/runtimes/react-server/index.tsx new file mode 100644 index 000000000..dbee0142d --- /dev/null +++ b/packages/next-intl/src/runtimes/react-server/index.tsx @@ -0,0 +1,11 @@ +export {default as getConfig} from './getConfig'; +export {setRequestLocale, getRequestLocale} from './RequestLocale'; +export {default as getRequestConfig} from './getRequestConfig'; + +export {default as getFormatter} from './getFormatter'; +export {default as getNow} from './getNow'; +export {default as getTimeZone} from './getTimeZone'; +export {default as getTranslations} from './getTranslations'; +export {default as getTranslator} from './getTranslator'; +export {default as getMessages, getMessagesFromConfig} from './getMessages'; +export {default as getLocale} from './getLocale'; diff --git a/packages/next-intl/src/server.react-client.tsx b/packages/next-intl/src/server.tsx similarity index 100% rename from packages/next-intl/src/server.react-client.tsx rename to packages/next-intl/src/server.tsx diff --git a/packages/next-intl/src/server/index.tsx b/packages/next-intl/src/server/index.tsx new file mode 100644 index 000000000..fe897989c --- /dev/null +++ b/packages/next-intl/src/server/index.tsx @@ -0,0 +1 @@ +export * from './react-client/index'; diff --git a/packages/next-intl/src/server/react-client/index.test.tsx b/packages/next-intl/src/server/react-client/index.test.tsx index a97ad1c2a..f54945d3f 100644 --- a/packages/next-intl/src/server/react-client/index.test.tsx +++ b/packages/next-intl/src/server/react-client/index.test.tsx @@ -1,5 +1,5 @@ import {describe, expect, it} from 'vitest'; -import {getRequestConfig} from '../../server.react-client'; +import {getRequestConfig} from '.'; describe('getRequestConfig', () => { it('can be called in the outer module closure', () => { diff --git a/packages/next-intl/src/server/react-client/index.tsx b/packages/next-intl/src/server/react-client/index.tsx index 7d00b33e4..147b8a25f 100644 --- a/packages/next-intl/src/server/react-client/index.tsx +++ b/packages/next-intl/src/server/react-client/index.tsx @@ -5,6 +5,7 @@ import type { getTimeZone as getTimeZone_type, getMessages as getMessages_type, getLocale as getLocale_type, + getTranslations as getTranslations_type, unstable_setRequestLocale as unstable_setRequestLocale_type } from '../react-server'; @@ -39,11 +40,9 @@ export const getMessages = notSupported( 'getMessages' ) as typeof getMessages_type; export const getLocale = notSupported('getLocale') as typeof getLocale_type; - -// The type of `getTranslations` is not assigned here because it -// causes a type error. The types use the `react-server` entry -// anyway, therefore this is irrelevant. -export const getTranslations = notSupported('getTranslations'); +export const getTranslations = notSupported( + 'getTranslations' +) as typeof getTranslations_type; export const unstable_setRequestLocale = notSupported( 'unstable_setRequestLocale' diff --git a/packages/next-intl/src/server/react-server/index.tsx b/packages/next-intl/src/server/react-server/index.tsx index c3d85a3ea..23617a376 100644 --- a/packages/next-intl/src/server/react-server/index.tsx +++ b/packages/next-intl/src/server/react-server/index.tsx @@ -2,12 +2,13 @@ * Server-only APIs available via `next-intl/server`. */ -export {default as getRequestConfig} from './getRequestConfig'; -export {default as getFormatter} from './getFormatter'; -export {default as getNow} from './getNow'; -export {default as getTimeZone} from './getTimeZone'; -export {default as getTranslations} from './getTranslations'; -export {default as getMessages} from './getMessages'; -export {default as getLocale} from './getLocale'; - -export {setRequestLocale as unstable_setRequestLocale} from './RequestLocale'; +export { + setRequestLocale as unstable_setRequestLocale, + getRequestConfig, + getFormatter, + getNow, + getTimeZone, + getTranslations, + getMessages, + getLocale +} from '../../runtimes/react-server.shared-runtime'; diff --git a/packages/next-intl/src/shared/NextIntlClientProvider.test.tsx b/packages/next-intl/src/shared/NextIntlClientProvider.test.tsx index 62d0881ac..539470052 100644 --- a/packages/next-intl/src/shared/NextIntlClientProvider.test.tsx +++ b/packages/next-intl/src/shared/NextIntlClientProvider.test.tsx @@ -1,7 +1,7 @@ import {render, screen} from '@testing-library/react'; import React from 'react'; import {it} from 'vitest'; -import {useTranslations, NextIntlClientProvider} from '../index.react-client'; +import {useTranslations, NextIntlClientProvider} from '../index'; it('can use messages from the provider', () => { function Component() { diff --git a/packages/next-intl/src/shared/NextIntlClientProvider.tsx b/packages/next-intl/src/shared/NextIntlClientProvider.tsx index 2b0385ae4..fcc02837d 100644 --- a/packages/next-intl/src/shared/NextIntlClientProvider.tsx +++ b/packages/next-intl/src/shared/NextIntlClientProvider.tsx @@ -1,8 +1,7 @@ 'use client'; import React, {ComponentProps} from 'react'; -// Workaround for some bundle splitting until we have ESM -import {IntlProvider} from 'use-intl/_IntlProvider'; +import {IntlProvider} from 'use-intl'; type Props = Omit, 'locale'> & { /** This is automatically received when being rendered from a Server Component. In all other cases, e.g. when rendered from a Client Component, a unit test or with the Pages Router, you can pass this prop explicitly. */ diff --git a/packages/next-intl/src/shared/utils.test.tsx b/packages/next-intl/src/shared/utils.test.tsx index decc50fca..439f475a1 100644 --- a/packages/next-intl/src/shared/utils.test.tsx +++ b/packages/next-intl/src/shared/utils.test.tsx @@ -1,11 +1,5 @@ import {it, describe, expect} from 'vitest'; -import { - hasPathnamePrefixed, - unprefixPathname, - matchesPathname, - prefixPathname, - getSortedPathnames -} from './utils'; +import {matchesPathname, prefixPathname, getSortedPathnames} from './utils'; describe('prefixPathname', () => { it("doesn't add trailing slashes for the root", () => { @@ -21,41 +15,6 @@ describe('prefixPathname', () => { }); }); -describe('hasPathnamePrefixed', () => { - it('detects prefixed pathnames', () => { - expect(hasPathnamePrefixed('/en', '/en')).toEqual(true); - expect(hasPathnamePrefixed('/en', '/en/')).toEqual(true); - expect(hasPathnamePrefixed('/en', '/en/client')).toEqual(true); - expect(hasPathnamePrefixed('/en', '/en/client/')).toEqual(true); - expect(hasPathnamePrefixed('/en', '/en/client/test')).toEqual(true); - }); - - it('detects non-prefixed pathnames', () => { - expect(hasPathnamePrefixed('/en', '/')).toEqual(false); - expect(hasPathnamePrefixed('/en', '/client')).toEqual(false); - expect(hasPathnamePrefixed('/en', '/client/')).toEqual(false); - expect(hasPathnamePrefixed('/en', '/client/test')).toEqual(false); - }); -}); - -describe('unlocalizePathname', () => { - it('works for the root', () => { - expect(unprefixPathname('/en', '/en')).toEqual('/'); - }); - - it('works for nested pages', () => { - expect(unprefixPathname('/en/nested', '/en')).toEqual('/nested'); - }); - - it('works with sub-tags', () => { - expect(unprefixPathname('/en-GB/nested', '/en-GB')).toEqual('/nested'); - }); - - it('works for custom prefixes', () => { - expect(unprefixPathname('/uk/nested', '/uk')).toEqual('/nested'); - }); -}); - describe('matchesPathname', () => { it('returns true for matching paths', () => { expect( diff --git a/packages/next-intl/src/shared/utils.tsx b/packages/next-intl/src/shared/utils.tsx index 68adac5b0..88c4d3a0a 100644 --- a/packages/next-intl/src/shared/utils.tsx +++ b/packages/next-intl/src/shared/utils.tsx @@ -1,87 +1,5 @@ -import {UrlObject} from 'url'; -import NextLink from 'next/link'; -import {ComponentProps} from 'react'; import {Locales, LocalePrefixConfigVerbose} from '../routing/types'; -type Href = ComponentProps['href']; - -function isRelativeHref(href: Href) { - const pathname = typeof href === 'object' ? href.pathname : href; - return pathname != null && !pathname.startsWith('/'); -} - -function isLocalHref(href: Href) { - if (typeof href === 'object') { - return href.host == null && href.hostname == null; - } else { - const hasProtocol = /^[a-z]+:/i.test(href); - return !hasProtocol; - } -} - -export function isLocalizableHref(href: Href) { - return isLocalHref(href) && !isRelativeHref(href); -} - -export function localizeHref( - href: string, - locale: string, - curLocale: string, - curPathname: string, - prefix: string -): string; -export function localizeHref( - href: UrlObject | string, - locale: string, - curLocale: string, - curPathname: string, - prefix: string -): UrlObject | string; -export function localizeHref( - href: UrlObject | string, - locale: string, - curLocale: string = locale, - curPathname: string, - prefix: string -) { - if (!isLocalizableHref(href)) { - return href; - } - - const isSwitchingLocale = locale !== curLocale; - const isPathnamePrefixed = hasPathnamePrefixed(prefix, curPathname); - const shouldPrefix = isSwitchingLocale || isPathnamePrefixed; - - if (shouldPrefix && prefix != null) { - return prefixHref(href, prefix); - } - - return href; -} - -export function prefixHref(href: string, prefix: string): string; -export function prefixHref( - href: UrlObject | string, - prefix: string -): UrlObject | string; -export function prefixHref(href: UrlObject | string, prefix: string) { - let prefixedHref; - if (typeof href === 'string') { - prefixedHref = prefixPathname(prefix, href); - } else { - prefixedHref = {...href}; - if (href.pathname) { - prefixedHref.pathname = prefixPathname(prefix, href.pathname); - } - } - - return prefixedHref; -} - -export function unprefixPathname(pathname: string, prefix: string) { - return pathname.replace(new RegExp(`^${prefix}`), '') || '/'; -} - export function prefixPathname(prefix: string, pathname: string) { let localizedHref = prefix; @@ -95,10 +13,6 @@ export function prefixPathname(prefix: string, pathname: string) { return localizedHref; } -export function hasPathnamePrefixed(prefix: string, pathname: string) { - return pathname === prefix || pathname.startsWith(`${prefix}/`); -} - function hasTrailingSlash() { try { // Provided via `env` setting in `next.config.js` via the plugin diff --git a/packages/next-intl/vitest.config.mts b/packages/next-intl/vitest.config.mts index fa2763895..f46256486 100644 --- a/packages/next-intl/vitest.config.mts +++ b/packages/next-intl/vitest.config.mts @@ -1,4 +1,4 @@ -import {defineConfig} from 'vitest/config' +import {defineConfig} from 'vitest/config'; export default defineConfig({ test: { diff --git a/packages/use-intl/.size-limit.ts b/packages/use-intl/.size-limit.ts new file mode 100644 index 000000000..928f24e32 --- /dev/null +++ b/packages/use-intl/.size-limit.ts @@ -0,0 +1,23 @@ +import type {SizeLimitConfig} from 'size-limit'; + +const config: SizeLimitConfig = [ + { + name: './ (ESM)', + path: 'dist/esm/index.mjs', + limit: '13.405 kB' + }, + { + name: './ (no useTranslations, ESM)', + path: 'dist/esm/index.mjs', + import: + '{IntlProvider, useLocale, useNow, useTimeZone, useMessages, useFormatter}', + limit: '1.825 kB' + }, + { + name: './ (CJS)', + path: 'dist/cjs/index.js', + limit: '17.475 kB' + } +]; + +module.exports = config; diff --git a/packages/use-intl/_IntlProvider.d.ts b/packages/use-intl/_IntlProvider.d.ts deleted file mode 100644 index 638757cd7..000000000 --- a/packages/use-intl/_IntlProvider.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './dist/types/src/_IntlProvider'; diff --git a/packages/use-intl/_useLocale.d.ts b/packages/use-intl/_useLocale.d.ts deleted file mode 100644 index 6eefcd371..000000000 --- a/packages/use-intl/_useLocale.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './dist/types/src/_useLocale'; diff --git a/packages/use-intl/core.d.ts b/packages/use-intl/core.d.ts index 5df015235..22c7c3708 100644 --- a/packages/use-intl/core.d.ts +++ b/packages/use-intl/core.d.ts @@ -1 +1 @@ -export * from './dist/types/src/core'; +export * from './dist/cjs/core.d.ts'; diff --git a/packages/use-intl/package.json b/packages/use-intl/package.json index eb679035c..d886aff43 100644 --- a/packages/use-intl/package.json +++ b/packages/use-intl/package.json @@ -11,7 +11,7 @@ "url": "https://github.com/amannn/next-intl/tree/main/packages/use-intl" }, "scripts": { - "build": "rm -rf dist && rollup -c", + "build": "bunchee", "test": "TZ=Europe/Berlin vitest", "lint": "pnpm run lint:source && pnpm run lint:package", "lint:source": "eslint src test && tsc --noEmit", @@ -19,37 +19,61 @@ "prepublishOnly": "turbo build", "size": "size-limit" }, - "main": "./dist/index.js", - "module": "dist/esm/index.js", - "typings": "./dist/types/src/index.d.ts", + "type": "commonjs", + "main": "./dist/cjs/index.js", + "module": "dist/esm/index.mjs", + "typings": "./dist/cjs/index.d.ts", "exports": { ".": { - "types": "./dist/types/src/index.d.ts", - "default": "./dist/index.js" + "import": { + "types": "./dist/esm/index.d.mts", + "development": "./dist/esm/index.development.mjs", + "production": "./dist/esm/index.production.mjs", + "default": "./dist/esm/index.mjs" + }, + "require": { + "types": "./dist/cjs/index.d.ts", + "development": "./dist/cjs/index.development.js", + "production": "./dist/cjs/index.production.js", + "default": "./dist/cjs/index.js" + }, + "default": "./dist/cjs/index.js" }, "./core": { - "types": "./core.d.ts", - "default": "./dist/core.js" + "import": { + "types": "./dist/esm/core.d.mts", + "development": "./dist/esm/core.development.mjs", + "production": "./dist/esm/core.production.mjs", + "default": "./dist/esm/core.mjs" + }, + "require": { + "types": "./dist/cjs/core.d.ts", + "development": "./dist/cjs/core.development.js", + "production": "./dist/cjs/core.production.js", + "default": "./dist/cjs/core.js" + }, + "default": "./dist/cjs/core.js" }, "./react": { - "types": "./react.d.ts", - "default": "./dist/react.js" - }, - "./_useLocale": { - "types": "./_useLocale.d.ts", - "default": "./dist/_useLocale.js" - }, - "./_IntlProvider": { - "types": "./_IntlProvider.d.ts", - "default": "./dist/_IntlProvider.js" + "import": { + "types": "./dist/esm/react.d.mts", + "development": "./dist/esm/react.development.mjs", + "production": "./dist/esm/react.production.mjs", + "default": "./dist/esm/react.mjs" + }, + "require": { + "types": "./dist/cjs/react.d.ts", + "development": "./dist/cjs/react.development.js", + "production": "./dist/cjs/react.production.js", + "default": "./dist/cjs/react.js" + }, + "default": "./dist/cjs/react.js" } }, "files": [ "dist", "core.d.ts", - "react.d.ts", - "_useLocale.d.ts", - "_IntlProvider.d.ts" + "react.d.ts" ], "keywords": [ "react", @@ -71,28 +95,21 @@ }, "devDependencies": { "@arethetypeswrong/cli": "^0.15.3", - "@size-limit/preset-big-lib": "^8.2.6", + "@size-limit/preset-small-lib": "^11.1.4", "@testing-library/react": "^16.0.0", "@types/node": "^20.14.5", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", + "bunchee": "^5.3.2", "date-fns": "^3.6.0", "eslint": "^8.56.0", "eslint-config-molindo": "^7.0.0", "publint": "^0.2.8", "react": "^18.3.1", "react-dom": "^18.3.1", - "rollup": "^4.18.0", - "size-limit": "^8.2.6", - "tinyspy": "^3.0.0", + "size-limit": "^11.1.4", "typescript": "^5.5.3", "vitest": "^2.0.2" }, - "prettier": "../../.prettierrc.json", - "size-limit": [ - { - "path": "dist/production/index.js", - "limit": "15.545 kB" - } - ] + "prettier": "../../.prettierrc.json" } diff --git a/packages/use-intl/react.d.ts b/packages/use-intl/react.d.ts index db798174f..415b32a31 100644 --- a/packages/use-intl/react.d.ts +++ b/packages/use-intl/react.d.ts @@ -1 +1 @@ -export * from './dist/types/src/react'; +export * from './dist/cjs/react.d.ts'; \ No newline at end of file diff --git a/packages/use-intl/rollup.config.mjs b/packages/use-intl/rollup.config.mjs deleted file mode 100644 index 0413155db..000000000 --- a/packages/use-intl/rollup.config.mjs +++ /dev/null @@ -1,20 +0,0 @@ -/* eslint-env node */ -import getBuildConfig from '../../scripts/getBuildConfig.mjs'; - -const input = { - index: 'src/index.tsx', - core: 'src/core.tsx', - react: 'src/react.tsx', - _useLocale: 'src/_useLocale.tsx', - _IntlProvider: 'src/_IntlProvider.tsx' -}; - -export default [ - getBuildConfig({input, env: 'development'}), - getBuildConfig({ - input, - env: 'esm', - output: {format: 'es'} - }), - getBuildConfig({input, env: 'production'}) -]; diff --git a/packages/use-intl/src/_IntlProvider.tsx b/packages/use-intl/src/_IntlProvider.tsx deleted file mode 100644 index c02594cc2..000000000 --- a/packages/use-intl/src/_IntlProvider.tsx +++ /dev/null @@ -1 +0,0 @@ -export {default as IntlProvider} from './react/IntlProvider'; diff --git a/packages/use-intl/src/_useLocale.tsx b/packages/use-intl/src/_useLocale.tsx deleted file mode 100644 index 162f5d506..000000000 --- a/packages/use-intl/src/_useLocale.tsx +++ /dev/null @@ -1 +0,0 @@ -export {default as useLocale} from './react/useLocale'; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3f789ced7..afaa6365b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,48 +8,15 @@ importers: .: devDependencies: - '@babel/core': - specifier: ^7.24.7 - version: 7.24.7 - '@babel/preset-env': - specifier: ^7.24.7 - version: 7.24.7(@babel/core@7.24.7) - '@babel/preset-react': - specifier: ^7.24.7 - version: 7.24.7(@babel/core@7.24.7) - '@babel/preset-typescript': - specifier: ^7.24.7 - version: 7.24.7(@babel/core@7.24.7) '@lerna-lite/cli': specifier: ^3.7.0 version: 3.7.0(@lerna-lite/publish@3.7.0)(@lerna-lite/version@3.7.0) '@lerna-lite/publish': specifier: ^3.7.0 version: 3.7.0 - '@rollup/plugin-babel': - specifier: ^6.0.3 - version: 6.0.4(@babel/core@7.24.7)(rollup@4.18.0) - '@rollup/plugin-commonjs': - specifier: ^26.0.1 - version: 26.0.1(rollup@4.18.0) - '@rollup/plugin-node-resolve': - specifier: ^15.2.1 - version: 15.2.3(rollup@4.18.0) - '@rollup/plugin-replace': - specifier: ^5.0.7 - version: 5.0.7(rollup@4.18.0) - '@rollup/plugin-terser': - specifier: ^0.4.3 - version: 0.4.4(rollup@4.18.0) conventional-changelog-conventionalcommits: specifier: ^7.0.0 version: 7.0.2 - execa: - specifier: ^9.2.0 - version: 9.2.0 - rollup: - specifier: ^4.18.0 - version: 4.18.0 turbo: specifier: ^2.0.4 version: 2.0.4 @@ -79,7 +46,7 @@ importers: version: 2.3.0 next: specifier: ^14.2.4 - version: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + version: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) nextra: specifier: ^2.13.4 version: 2.13.4(next@14.2.4)(react-dom@18.3.1)(react@18.3.1) @@ -192,7 +159,7 @@ importers: dependencies: next: specifier: ^14.2.4 - version: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + version: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) next-intl: specifier: latest version: link:../../packages/next-intl @@ -229,7 +196,7 @@ importers: dependencies: next: specifier: ^14.2.4 - version: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + version: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) next-intl: specifier: latest version: link:../../packages/next-intl @@ -275,7 +242,7 @@ importers: dependencies: next: specifier: ^14.2.4 - version: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + version: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) next-auth: specifier: ^4.24.7 version: 4.24.7(next@14.2.4)(react-dom@18.3.1)(react@18.3.1) @@ -346,7 +313,7 @@ importers: version: 29.7.0 '@mdx-js/loader': specifier: ^3.0.1 - version: 3.0.1(webpack@5.88.1) + version: 3.0.1(webpack@5.93.0) '@next/mdx': specifier: ^14.2.5 version: 14.2.5(@mdx-js/loader@3.0.1)(@mdx-js/react@3.0.1) @@ -403,7 +370,7 @@ importers: dependencies: next: specifier: ^14.2.4 - version: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + version: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) next-intl: specifier: latest version: link:../../packages/next-intl @@ -455,7 +422,7 @@ importers: version: 4.17.21 next: specifier: ^14.2.4 - version: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + version: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) next-intl: specifier: latest version: link:../../packages/next-intl @@ -513,7 +480,7 @@ importers: version: 3.6.0 next: specifier: ^14.2.4 - version: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + version: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) next-intl: specifier: latest version: link:../../packages/next-intl @@ -736,9 +703,9 @@ importers: '@edge-runtime/vm': specifier: ^3.2.0 version: 3.2.0 - '@size-limit/preset-big-lib': - specifier: ^8.2.6 - version: 8.2.6(size-limit@8.2.6) + '@size-limit/preset-small-lib': + specifier: ^11.1.4 + version: 11.1.4(size-limit@11.1.4) '@testing-library/react': specifier: ^16.0.0 version: 16.0.0(@testing-library/dom@10.3.1)(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1)(react@18.3.1) @@ -754,6 +721,9 @@ importers: '@types/react-dom': specifier: ^18.3.0 version: 18.3.0 + bunchee: + specifier: ^5.3.2 + version: 5.3.2(typescript@5.5.3) eslint: specifier: ^8.56.0 version: 8.56.0 @@ -763,9 +733,12 @@ importers: eslint-plugin-deprecation: specifier: ^3.0.0 version: 3.0.0(eslint@8.56.0)(typescript@5.5.3) + glob: + specifier: ^10.4.2 + version: 10.4.5 next: specifier: ^14.2.4 - version: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + version: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) path-to-regexp: specifier: ^6.2.2 version: 6.2.2 @@ -778,15 +751,9 @@ importers: react-dom: specifier: ^18.3.1 version: 18.3.1(react@18.3.1) - rollup: - specifier: ^4.18.0 - version: 4.18.0 - rollup-plugin-preserve-directives: - specifier: 0.4.0 - version: 0.4.0(rollup@4.18.0) size-limit: - specifier: ^8.2.6 - version: 8.2.6 + specifier: ^11.1.4 + version: 11.1.4 typescript: specifier: ^5.5.3 version: 5.5.3 @@ -806,9 +773,9 @@ importers: '@arethetypeswrong/cli': specifier: ^0.15.3 version: 0.15.3 - '@size-limit/preset-big-lib': - specifier: ^8.2.6 - version: 8.2.6(size-limit@8.2.6) + '@size-limit/preset-small-lib': + specifier: ^11.1.4 + version: 11.1.4(size-limit@11.1.4) '@testing-library/react': specifier: ^16.0.0 version: 16.0.0(@testing-library/dom@10.3.1)(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1)(react@18.3.1) @@ -821,6 +788,9 @@ importers: '@types/react-dom': specifier: ^18.3.0 version: 18.3.0 + bunchee: + specifier: ^5.3.2 + version: 5.3.2(typescript@5.5.3) date-fns: specifier: ^3.6.0 version: 3.6.0 @@ -839,15 +809,9 @@ importers: react-dom: specifier: ^18.3.1 version: 18.3.1(react@18.3.1) - rollup: - specifier: ^4.18.0 - version: 4.18.0 size-limit: - specifier: ^8.2.6 - version: 8.2.6 - tinyspy: - specifier: ^3.0.0 - version: 3.0.0 + specifier: ^11.1.4 + version: 11.1.4 typescript: specifier: ^5.5.3 version: 5.5.3 @@ -1120,7 +1084,6 @@ packages: /@babel/compat-data@7.24.8: resolution: {integrity: sha512-c4IM7OTg6k1Q+AJ153e2mc2QVTezTwnb4VzquwcyiEzGnW0Kedv4do/TrkU98qPeC5LNiMt/QXwIjzYXLBpyZg==} engines: {node: '>=6.9.0'} - dev: false /@babel/core@7.24.7: resolution: {integrity: sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==} @@ -1159,13 +1122,12 @@ packages: '@babel/traverse': 7.24.8 '@babel/types': 7.24.8 convert-source-map: 2.0.0 - debug: 4.3.5(supports-color@6.1.0) + debug: 4.3.6 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - dev: false /@babel/core@7.9.0: resolution: {integrity: sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==} @@ -1185,7 +1147,7 @@ packages: json5: 2.2.3 lodash: 4.17.21 resolve: 1.22.8 - semver: 5.7.1 + semver: 5.7.2 source-map: 0.5.7 transitivePeerDependencies: - supports-color @@ -1218,7 +1180,6 @@ packages: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 - dev: false /@babel/helper-annotate-as-pure@7.22.5: resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} @@ -1248,6 +1209,7 @@ packages: '@babel/types': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/helper-compilation-targets@7.22.10: resolution: {integrity: sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==} @@ -1279,7 +1241,6 @@ packages: browserslist: 4.23.2 lru-cache: 5.1.1 semver: 6.3.1 - dev: false /@babel/helper-create-class-features-plugin@7.22.11(@babel/core@7.24.7): resolution: {integrity: sha512-y1grdYL4WzmUDBRGK0pDbIoFd7UZKoDurDzWEoNMYoj1EL+foGRQNyPWDcC+YyegN5y1DUsFFmzjGijB3nSVAQ==} @@ -1340,6 +1301,7 @@ packages: '@babel/helper-annotate-as-pure': 7.24.7 regexpu-core: 5.3.2 semver: 6.3.1 + dev: false /@babel/helper-define-polyfill-provider@0.3.3(@babel/core@7.24.7): resolution: {integrity: sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==} @@ -1370,6 +1332,7 @@ packages: resolve: 1.22.8 transitivePeerDependencies: - supports-color + dev: false /@babel/helper-environment-visitor@7.22.5: resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==} @@ -1431,6 +1394,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.22.11 + dev: false /@babel/helper-module-imports@7.24.7: resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} @@ -1516,7 +1480,6 @@ packages: '@babel/helper-validator-identifier': 7.24.7 transitivePeerDependencies: - supports-color - dev: false /@babel/helper-optimise-call-expression@7.22.5: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} @@ -1542,7 +1505,6 @@ packages: /@babel/helper-plugin-utils@7.24.8: resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} engines: {node: '>=6.9.0'} - dev: false /@babel/helper-remap-async-to-generator@7.22.9(@babel/core@7.24.7): resolution: {integrity: sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==} @@ -1568,6 +1530,7 @@ packages: '@babel/helper-wrap-function': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/helper-replace-supers@7.22.9(@babel/core@7.24.7): resolution: {integrity: sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==} @@ -1642,6 +1605,7 @@ packages: /@babel/helper-string-parser@7.22.5: resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} engines: {node: '>=6.9.0'} + dev: false /@babel/helper-string-parser@7.24.7: resolution: {integrity: sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==} @@ -1650,11 +1614,11 @@ packages: /@babel/helper-string-parser@7.24.8: resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} engines: {node: '>=6.9.0'} - dev: false /@babel/helper-validator-identifier@7.22.5: resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} engines: {node: '>=6.9.0'} + dev: false /@babel/helper-validator-identifier@7.24.7: resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} @@ -1672,7 +1636,6 @@ packages: /@babel/helper-validator-option@7.24.8: resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} engines: {node: '>=6.9.0'} - dev: false /@babel/helper-wrap-function@7.22.10: resolution: {integrity: sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==} @@ -1693,6 +1656,7 @@ packages: '@babel/types': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/helpers@7.24.7: resolution: {integrity: sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==} @@ -1707,7 +1671,6 @@ packages: dependencies: '@babel/template': 7.24.7 '@babel/types': 7.24.8 - dev: false /@babel/highlight@7.22.5: resolution: {integrity: sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==} @@ -1748,7 +1711,6 @@ packages: hasBin: true dependencies: '@babel/types': 7.24.8 - dev: false /@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-TiT1ss81W80eQsN+722OaeQMY/G4yTb4G9JrqeiDADs3N8lbPMGldWi9x8tyqCW5NLx1Jh2AvkE6r6QvEltMMQ==} @@ -1759,6 +1721,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-environment-visitor': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-unaQgZ/iRu/By6tsjMZzpeBZjChYfLYry6HrEXPoz3KmfF0sVBQ1l8zKMQ4xRGLWVsjuvB8nQfjNP/DcfEOCsg==} @@ -1768,6 +1731,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==} @@ -1781,6 +1745,7 @@ packages: '@babel/plugin-transform-optional-chaining': 7.24.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-utA4HuR6F4Vvcr+o4DnjL8fCOlgRFGbeeBEGNg3ZTrLFw6VWG5XmUrvcQ0FjIYMU2ST4XcR2Wsp7t9qOAPnxMg==} @@ -1791,6 +1756,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-environment-visitor': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.24.7): resolution: {integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==} @@ -1825,7 +1791,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.24.7) - '@babel/helper-plugin-utils': 7.24.7 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.7) '@babel/helper-split-export-declaration': 7.24.7 '@babel/plugin-syntax-decorators': 7.21.0(@babel/core@7.24.7) @@ -1899,6 +1865,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.7 + dev: false /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.7): resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} @@ -1914,7 +1881,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 + '@babel/helper-plugin-utils': 7.24.8 dev: true /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.7): @@ -1933,6 +1900,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-syntax-decorators@7.21.0(@babel/core@7.24.7): resolution: {integrity: sha512-tIoPpGBR8UuM4++ccWN3gifhVvQu7ZizuR1fklhRJrd5ewgbkUS+0KVFeWWxELtn18NTLoW32XV7zyOgIAiz+w==} @@ -1941,7 +1909,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 + '@babel/helper-plugin-utils': 7.24.8 dev: false /@babel/plugin-syntax-decorators@7.24.7(@babel/core@7.24.7): @@ -1961,6 +1929,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.22.5 + dev: false /@babel/plugin-syntax-export-default-from@7.18.6(@babel/core@7.24.7): resolution: {integrity: sha512-Kr//z3ujSVNx6E9z9ih5xXXMqK07VVTuqPmqGe6Mss/zW5XPeLZeSDZoP9ab/hT4wPKqAgjl2PnhPrcpk8Seew==} @@ -1979,6 +1948,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-syntax-flow@7.21.4(@babel/core@7.24.7): resolution: {integrity: sha512-l9xd3N+XG4fZRxEP3vXdK6RW7vN1Uf5dxzRC/09wV86wqZ/YYQooBIGNsiRdfNR3/q2/5pPzV4B54J/9ctX5jw==} @@ -1998,6 +1968,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-syntax-import-attributes@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A==} @@ -2007,6 +1978,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.7): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} @@ -2099,6 +2071,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.7): resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} @@ -2137,6 +2110,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-arrow-functions@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==} @@ -2156,6 +2130,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-async-generator-functions@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-o+iF77e3u7ZS4AoAuJvapz9Fm001PuD2V3Lp6OSE4FYQke+cSewYtnek+THqGRWyQloRCyvWL1OkyfNEl9vr/g==} @@ -2170,6 +2145,7 @@ packages: '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.7) transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-async-to-generator@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==} @@ -2195,6 +2171,7 @@ packages: '@babel/helper-remap-async-to-generator': 7.24.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-block-scoped-functions@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==} @@ -2214,6 +2191,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-block-scoping@7.22.10(@babel/core@7.24.7): resolution: {integrity: sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==} @@ -2233,6 +2211,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-class-properties@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w==} @@ -2245,6 +2224,7 @@ packages: '@babel/helper-plugin-utils': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==} @@ -2258,6 +2238,7 @@ packages: '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.7) transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-classes@7.22.6(@babel/core@7.24.7): resolution: {integrity: sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==} @@ -2277,24 +2258,6 @@ packages: globals: 11.12.0 dev: false - /@babel/plugin-transform-classes@7.24.7(@babel/core@7.24.7): - resolution: {integrity: sha512-CFbbBigp8ln4FU6Bpy6g7sE8B/WmCmzvivzUC6xDAdWVsjYTXijpuuGJmYkAaoWAzcItGKT3IOAbxRItZ5HTjw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-compilation-targets': 7.24.7 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-function-name': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.7) - '@babel/helper-split-export-declaration': 7.24.7 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - /@babel/plugin-transform-classes@7.24.8(@babel/core@7.24.7): resolution: {integrity: sha512-VXy91c47uujj758ud9wx+OMgheXm4qJfyhj1P18YvlrQkNOSrwsteHk+EFS3OMGfhMhpZa0A+81eE7G4QC+3CA==} engines: {node: '>=6.9.0'} @@ -2334,6 +2297,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/template': 7.24.7 + dev: false /@babel/plugin-transform-destructuring@7.22.10(@babel/core@7.24.7): resolution: {integrity: sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==} @@ -2345,15 +2309,6 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-destructuring@7.24.7(@babel/core@7.24.7): - resolution: {integrity: sha512-19eJO/8kdCQ9zISOf+SEUJM/bAUIsvY3YDnXZTupUCQ8LgrWnsG/gFB9dvXqdXnRXMAM8fvt7b0CBKQHNGy1mw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - /@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.24.7): resolution: {integrity: sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ==} engines: {node: '>=6.9.0'} @@ -2373,6 +2328,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==} @@ -2382,6 +2338,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==} @@ -2392,6 +2349,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.7) + dev: false /@babel/plugin-transform-exponentiation-operator@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==} @@ -2415,6 +2373,7 @@ packages: '@babel/helper-plugin-utils': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==} @@ -2425,6 +2384,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.7) + dev: false /@babel/plugin-transform-flow-strip-types@7.21.0(@babel/core@7.24.7): resolution: {integrity: sha512-FlFA2Mj87a6sDkW4gfGrQQqwY/dLlBAyJa2dJEZ+FHXUVHBflO2wyKvg+OOEzXfrKYIa4HWl0mgmbCzt0cMb7w==} @@ -2458,6 +2418,7 @@ packages: '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-function-name@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==} @@ -2481,6 +2442,7 @@ packages: '@babel/helper-compilation-targets': 7.24.7 '@babel/helper-function-name': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==} @@ -2491,6 +2453,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.7) + dev: false /@babel/plugin-transform-literals@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==} @@ -2510,6 +2473,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==} @@ -2520,6 +2484,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.7) + dev: false /@babel/plugin-transform-member-expression-literals@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==} @@ -2539,6 +2504,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==} @@ -2551,6 +2517,7 @@ packages: '@babel/helper-plugin-utils': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-modules-commonjs@7.22.11(@babel/core@7.24.7): resolution: {integrity: sha512-o2+bg7GDS60cJMgz9jWqRUsWkMzLCxp+jFDeDUT5sjRlAxcJWZ2ylNdI7QQ2+CH5hWu7OnN+Cv3htt7AkSf96g==} @@ -2604,6 +2571,7 @@ packages: '@babel/helper-validator-identifier': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==} @@ -2616,6 +2584,7 @@ packages: '@babel/helper-plugin-utils': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} @@ -2637,6 +2606,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-new-target@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==} @@ -2646,6 +2616,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==} @@ -2656,6 +2627,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.7) + dev: false /@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==} @@ -2666,6 +2638,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.7) + dev: false /@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==} @@ -2678,6 +2651,7 @@ packages: '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.7) '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.7) + dev: false /@babel/plugin-transform-object-super@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==} @@ -2701,6 +2675,7 @@ packages: '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.7) transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==} @@ -2711,6 +2686,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.7) + dev: false /@babel/plugin-transform-optional-chaining@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-tK+0N9yd4j+x/4hxF3F0e0fu/VdcxU18y5SevtyM/PCFlQvXbR0Zmlo2eBrKtVipGNFzpq56o8WsIIKcJFUCRQ==} @@ -2724,6 +2700,7 @@ packages: '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.7) transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.24.7): resolution: {integrity: sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw==} @@ -2757,6 +2734,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-private-methods@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ==} @@ -2769,6 +2747,7 @@ packages: '@babel/helper-plugin-utils': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==} @@ -2783,6 +2762,7 @@ packages: '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.7) transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-property-literals@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==} @@ -2802,6 +2782,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-react-display-name@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==} @@ -2813,28 +2794,6 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-react-display-name@7.24.7(@babel/core@7.24.7): - resolution: {integrity: sha512-H/Snz9PFxKsS1JLI4dJLtnJgCJRoo0AUm3chP6NYr+9En1JMKloheEiLIhlp5MDVznWo+H3AAC1Mc8lmUEpsgg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - dev: true - - /@babel/plugin-transform-react-jsx-development@7.24.7(@babel/core@7.24.7): - resolution: {integrity: sha512-QG9EnzoGn+Qar7rxuW+ZOsbWOt56FvvI93xInqsZDC5fsekx1AlIO4KIJ5M+D0p0SqSH156EpmZyXq630B8OlQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.7 - '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.24.7) - transitivePeerDependencies: - - supports-color - dev: true - /@babel/plugin-transform-react-jsx-self@7.21.0(@babel/core@7.24.7): resolution: {integrity: sha512-f/Eq+79JEu+KUANFks9UZCcvydOOGMgF7jBrcwjHa5jTZD8JivnhCJYvmlhR/WTXBWonDExPoW0eO/CR4QJirA==} engines: {node: '>=6.9.0'} @@ -2903,17 +2862,7 @@ packages: '@babel/types': 7.24.7 transitivePeerDependencies: - supports-color - - /@babel/plugin-transform-react-pure-annotations@7.24.7(@babel/core@7.24.7): - resolution: {integrity: sha512-PLgBVk3fzbmEjBJ/u8kFzOqS9tUeDjiaWud/rRym/yjCo/M9cASPlnrd2ZmmZpQT40fOOrvR8jh+n8jikrOhNA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - dev: true + dev: false /@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==} @@ -2924,6 +2873,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 regenerator-transform: 0.15.2 + dev: false /@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==} @@ -2933,6 +2883,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-runtime@7.21.4(@babel/core@7.24.7): resolution: {integrity: sha512-1J4dhrw1h1PqnNNpzwxQ2UBymJUF8KuPjAAnlLwZcGhHAIqUigFW7cdK6GHoB64ubY4qXQNYknoUeks4Wz7CUA==} @@ -2969,6 +2920,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-spread@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==} @@ -2992,6 +2944,7 @@ packages: '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-sticky-regex@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==} @@ -3011,6 +2964,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-template-literals@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==} @@ -3030,15 +2984,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - - /@babel/plugin-transform-typeof-symbol@7.24.7(@babel/core@7.24.7): - resolution: {integrity: sha512-VtR8hDy7YLB7+Pet9IarXjg/zgCMSF+1mNS/EQEiEaUPoFXCVsHG64SIxcaaI2zJgRiv+YmgaQESUfWAdbjzgg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.24.7): resolution: {integrity: sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw==} @@ -3085,6 +3031,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==} @@ -3095,6 +3042,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-unicode-regex@7.22.5(@babel/core@7.24.7): resolution: {integrity: sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==} @@ -3116,6 +3064,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 + dev: false /@babel/plugin-transform-unicode-sets-regex@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg==} @@ -3126,97 +3075,7 @@ packages: '@babel/core': 7.24.7 '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - - /@babel/preset-env@7.24.7(@babel/core@7.24.7): - resolution: {integrity: sha512-1YZNsc+y6cTvWlDHidMBsQZrZfEFjRIo/BZCT906PMdzOyXtSLTgqGdrpcuTDCXyd11Am5uQULtDIcCfnTc8fQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/compat-data': 7.24.7 - '@babel/core': 7.24.7 - '@babel/helper-compilation-targets': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/helper-validator-option': 7.24.7 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.7) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.7) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.7) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.7) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-syntax-import-attributes': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.7) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.7) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.7) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.7) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.7) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.7) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.7) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-async-generator-functions': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-block-scoping': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-classes': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-destructuring': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-function-name': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-literals': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-modules-commonjs': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-modules-systemjs': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-optional-chaining': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-typeof-symbol': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-unicode-sets-regex': 7.24.7(@babel/core@7.24.7) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.7) - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.24.7) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.7) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.24.7) - core-js-compat: 3.37.1 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color + dev: false /@babel/preset-env@7.24.8(@babel/core@7.24.7): resolution: {integrity: sha512-vObvMZB6hNWuDxhSaEPTKCwcqkAIuDtE+bQGn4XMXne1DSLzFVY8Vmj1bm+mUQXYNN8NmaQEO+r8MMbzPr1jBQ==} @@ -3331,23 +3190,7 @@ packages: '@babel/helper-plugin-utils': 7.24.7 '@babel/types': 7.24.7 esutils: 2.0.3 - - /@babel/preset-react@7.24.7(@babel/core@7.24.7): - resolution: {integrity: sha512-AAH4lEkpmzFWrGVlHaxJB7RLH21uPQ9+He+eFLWHmF9IuFQVugz8eAsamaW0DXRrTfco5zj1wWtpdcXJUOfsag==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - '@babel/helper-validator-option': 7.24.7 - '@babel/plugin-transform-react-display-name': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-react-jsx-development': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-react-pure-annotations': 7.24.7(@babel/core@7.24.7) - transitivePeerDependencies: - - supports-color - dev: true + dev: false /@babel/preset-typescript@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-SyXRe3OdWwIwalxDg5UtJnJQO+YPcTfwiIY2B0Xlddh9o7jpWLvv8X1RthIeDOxQ+O1ML5BLPCONToObyVQVuQ==} @@ -3380,6 +3223,7 @@ packages: /@babel/regjsgen@0.8.0: resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} + dev: false /@babel/runtime@7.21.5: resolution: {integrity: sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==} @@ -3399,7 +3243,6 @@ packages: engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.1 - dev: true /@babel/template@7.22.5: resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==} @@ -3465,11 +3308,10 @@ packages: '@babel/helper-split-export-declaration': 7.24.7 '@babel/parser': 7.24.8 '@babel/types': 7.24.8 - debug: 4.3.5(supports-color@6.1.0) + debug: 4.3.6 globals: 11.12.0 transitivePeerDependencies: - supports-color - dev: false /@babel/types@7.22.11: resolution: {integrity: sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==} @@ -3478,6 +3320,7 @@ packages: '@babel/helper-string-parser': 7.22.5 '@babel/helper-validator-identifier': 7.22.5 to-fast-properties: 2.0.0 + dev: false /@babel/types@7.24.7: resolution: {integrity: sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==} @@ -3494,7 +3337,6 @@ packages: '@babel/helper-string-parser': 7.24.8 '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 - dev: false /@bcoe/v8-coverage@0.2.3: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} @@ -4226,7 +4068,7 @@ packages: resolution: {integrity: sha512-L9Ci9RBh0aPFEDF1AjDYPk54OgeUJIKzxF3lRgITm+lQpI3IEKjAc9LaYeQeO1mlZMUQmPkHArF8iyz1eOeVoQ==} hasBin: true dependencies: - '@babel/runtime': 7.24.7 + '@babel/runtime': 7.24.8 '@expo/code-signing-certificates': 0.0.5 '@expo/config': 7.0.3 '@expo/config-plugins': 5.0.4 @@ -4577,6 +4419,10 @@ packages: js-yaml: 4.1.0 dev: false + /@fastify/deepmerge@1.3.0: + resolution: {integrity: sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==} + dev: true + /@floating-ui/core@1.6.2: resolution: {integrity: sha512-+2XpQV9LLZeanU4ZevzRnGFg2neDeKHgFLjP6YLW+tly0IvrhqT4u8enLGjLH3qeh85g19xY5rsAusfwTdn5lg==} dependencies: @@ -5226,6 +5072,10 @@ packages: /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + /@jridgewell/sourcemap-codec@1.5.0: + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + dev: true + /@jridgewell/trace-mapping@0.3.18: resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} dependencies: @@ -5441,14 +5291,14 @@ packages: - typescript dev: true - /@mdx-js/loader@3.0.1(webpack@5.88.1): + /@mdx-js/loader@3.0.1(webpack@5.93.0): resolution: {integrity: sha512-YbYUt7YyEOdFxhyuCWmLKf5vKhID/hJAojEUnheJk4D8iYVLFQw+BAoBWru/dHGch1omtmZOPstsmKPyBF68Tw==} peerDependencies: webpack: '>=5' dependencies: '@mdx-js/mdx': 3.0.1 source-map: 0.7.4 - webpack: 5.88.1 + webpack: 5.93.0 transitivePeerDependencies: - supports-color dev: true @@ -5666,7 +5516,7 @@ packages: '@mdx-js/react': optional: true dependencies: - '@mdx-js/loader': 3.0.1(webpack@5.88.1) + '@mdx-js/loader': 3.0.1(webpack@5.93.0) '@mdx-js/react': 3.0.1(@types/react@18.3.3)(react@18.3.1) source-map: 0.7.4 dev: true @@ -5923,7 +5773,7 @@ packages: engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dependencies: '@npmcli/git': 4.1.0 - glob: 10.4.2 + glob: 10.4.5 hosted-git-info: 6.1.1 json-parse-even-better-errors: 3.0.2 normalize-package-data: 5.0.0 @@ -6975,44 +6825,38 @@ packages: dependencies: web-streams-polyfill: 3.3.3 - /@rollup/plugin-babel@6.0.4(@babel/core@7.24.7)(rollup@4.18.0): - resolution: {integrity: sha512-YF7Y52kFdFT/xVSuVdjkV5ZdX/3YtmX0QulG+x0taQOtJdHYzVU61aSSkAgVJ7NOv6qPkIYiJSgSWWN/DM5sGw==} - engines: {node: '>=14.0.0'} + /@rollup/plugin-commonjs@26.0.1(rollup@4.21.0): + resolution: {integrity: sha512-UnsKoZK6/aGIH6AdkptXhNvhaqftcjq3zZdT+LY5Ftms6JR06nADcDsYp5hTU9E2lbJUEOhdlY5J4DNTneM+jQ==} + engines: {node: '>=16.0.0 || 14 >= 14.17'} peerDependencies: - '@babel/core': ^7.0.0 - '@types/babel__core': ^7.1.9 - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + rollup: ^2.68.0||^3.0.0||^4.0.0 peerDependenciesMeta: - '@types/babel__core': - optional: true rollup: optional: true dependencies: - '@babel/core': 7.24.7 - '@babel/helper-module-imports': 7.22.5 - '@rollup/pluginutils': 5.0.5(rollup@4.18.0) - rollup: 4.18.0 + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + commondir: 1.0.1 + estree-walker: 2.0.2 + glob: 10.4.5 + is-reference: 1.2.1 + magic-string: 0.30.11 + rollup: 4.21.0 dev: true - /@rollup/plugin-commonjs@26.0.1(rollup@4.18.0): - resolution: {integrity: sha512-UnsKoZK6/aGIH6AdkptXhNvhaqftcjq3zZdT+LY5Ftms6JR06nADcDsYp5hTU9E2lbJUEOhdlY5J4DNTneM+jQ==} - engines: {node: '>=16.0.0 || 14 >= 14.17'} + /@rollup/plugin-json@6.1.0(rollup@4.21.0): + resolution: {integrity: sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==} + engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^2.68.0||^3.0.0||^4.0.0 + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 peerDependenciesMeta: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.18.0) - commondir: 1.0.1 - estree-walker: 2.0.2 - glob: 10.4.1 - is-reference: 1.2.1 - magic-string: 0.30.10 - rollup: 4.18.0 + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + rollup: 4.21.0 dev: true - /@rollup/plugin-node-resolve@15.2.3(rollup@4.18.0): + /@rollup/plugin-node-resolve@15.2.3(rollup@4.21.0): resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -7021,16 +6865,16 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.5(rollup@4.18.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-builtin-module: 3.2.1 is-module: 1.0.0 - resolve: 1.22.2 - rollup: 4.18.0 + resolve: 1.22.8 + rollup: 4.21.0 dev: true - /@rollup/plugin-replace@5.0.7(rollup@4.18.0): + /@rollup/plugin-replace@5.0.7(rollup@4.21.0): resolution: {integrity: sha512-PqxSfuorkHz/SPpyngLyg5GCEkOcee9M1bkxiVDr41Pd61mqP1PLOoDPbpl44SB2mQGKwV/In74gqQmGITOhEQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -7039,28 +6883,13 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.18.0) - magic-string: 0.30.10 - rollup: 4.18.0 - dev: true - - /@rollup/plugin-terser@0.4.4(rollup@4.18.0): - resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - rollup: 4.18.0 - serialize-javascript: 6.0.1 - smob: 1.4.1 - terser: 5.18.2 + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + magic-string: 0.30.11 + rollup: 4.21.0 dev: true - /@rollup/pluginutils@5.0.5(rollup@4.18.0): - resolution: {integrity: sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q==} + /@rollup/plugin-wasm@6.2.2(rollup@4.21.0): + resolution: {integrity: sha512-gpC4R1G9Ni92ZIRTexqbhX7U+9estZrbhP+9SRb0DW9xpB9g7j34r+J2hqrcW/lRI7dJaU84MxZM0Rt82tqYPQ==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -7068,13 +6897,11 @@ packages: rollup: optional: true dependencies: - '@types/estree': 1.0.5 - estree-walker: 2.0.2 - picomatch: 2.3.1 - rollup: 4.18.0 + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + rollup: 4.21.0 dev: true - /@rollup/pluginutils@5.1.0(rollup@4.18.0): + /@rollup/pluginutils@5.1.0(rollup@4.21.0): resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} engines: {node: '>=14.0.0'} peerDependencies: @@ -7086,7 +6913,7 @@ packages: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 - rollup: 4.18.0 + rollup: 4.21.0 dev: true /@rollup/rollup-android-arm-eabi@4.18.0: @@ -7097,6 +6924,14 @@ packages: dev: true optional: true + /@rollup/rollup-android-arm-eabi@4.21.0: + resolution: {integrity: sha512-WTWD8PfoSAJ+qL87lE7votj3syLavxunWhzCnx3XFxFiI/BA/r3X7MUM8dVrH8rb2r4AiO8jJsr3ZjdaftmnfA==} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-android-arm64@4.18.0: resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==} cpu: [arm64] @@ -7105,6 +6940,14 @@ packages: dev: true optional: true + /@rollup/rollup-android-arm64@4.21.0: + resolution: {integrity: sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-darwin-arm64@4.18.0: resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==} cpu: [arm64] @@ -7113,6 +6956,14 @@ packages: dev: true optional: true + /@rollup/rollup-darwin-arm64@4.21.0: + resolution: {integrity: sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-darwin-x64@4.18.0: resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==} cpu: [x64] @@ -7121,6 +6972,14 @@ packages: dev: true optional: true + /@rollup/rollup-darwin-x64@4.21.0: + resolution: {integrity: sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-arm-gnueabihf@4.18.0: resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==} cpu: [arm] @@ -7129,6 +6988,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-arm-gnueabihf@4.21.0: + resolution: {integrity: sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-arm-musleabihf@4.18.0: resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==} cpu: [arm] @@ -7137,6 +7004,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-arm-musleabihf@4.21.0: + resolution: {integrity: sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-arm64-gnu@4.18.0: resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==} cpu: [arm64] @@ -7145,8 +7020,24 @@ packages: dev: true optional: true - /@rollup/rollup-linux-arm64-musl@4.18.0: - resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==} + /@rollup/rollup-linux-arm64-gnu@4.21.0: + resolution: {integrity: sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-musl@4.18.0: + resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-musl@4.21.0: + resolution: {integrity: sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==} cpu: [arm64] os: [linux] requiresBuild: true @@ -7161,6 +7052,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-powerpc64le-gnu@4.21.0: + resolution: {integrity: sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-riscv64-gnu@4.18.0: resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==} cpu: [riscv64] @@ -7169,6 +7068,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-riscv64-gnu@4.21.0: + resolution: {integrity: sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-s390x-gnu@4.18.0: resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==} cpu: [s390x] @@ -7177,6 +7084,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-s390x-gnu@4.21.0: + resolution: {integrity: sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-x64-gnu@4.18.0: resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==} cpu: [x64] @@ -7185,6 +7100,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-x64-gnu@4.21.0: + resolution: {integrity: sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-x64-musl@4.18.0: resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==} cpu: [x64] @@ -7193,6 +7116,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-x64-musl@4.21.0: + resolution: {integrity: sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-win32-arm64-msvc@4.18.0: resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==} cpu: [arm64] @@ -7201,6 +7132,14 @@ packages: dev: true optional: true + /@rollup/rollup-win32-arm64-msvc@4.21.0: + resolution: {integrity: sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-win32-ia32-msvc@4.18.0: resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==} cpu: [ia32] @@ -7209,6 +7148,14 @@ packages: dev: true optional: true + /@rollup/rollup-win32-ia32-msvc@4.21.0: + resolution: {integrity: sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-win32-x64-msvc@4.18.0: resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==} cpu: [x64] @@ -7217,6 +7164,14 @@ packages: dev: true optional: true + /@rollup/rollup-win32-x64-msvc@4.21.0: + resolution: {integrity: sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@rushstack/eslint-patch@1.10.3: resolution: {integrity: sha512-qC/xYId4NMebE6w/V33Fh9gWxLgURiNYgVNObbJl2LZv0GUUItCcCqC5axQSwRaAgaxl2mELq1rMzlswaQ0Zxg==} dev: true @@ -7309,11 +7264,6 @@ packages: engines: {node: '>=18'} dev: true - /@sindresorhus/merge-streams@4.0.0: - resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==} - engines: {node: '>=18'} - dev: true - /@sinonjs/commons@3.0.1: resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} dependencies: @@ -7326,86 +7276,173 @@ packages: '@sinonjs/commons': 3.0.1 dev: true - /@sitespeed.io/tracium@0.3.3: - resolution: {integrity: sha512-dNZafjM93Y+F+sfwTO5gTpsGXlnc/0Q+c2+62ViqP3gkMWvHEMSKkaEHgVJLcLg3i/g19GSIPziiKpgyne07Bw==} - engines: {node: '>=8'} + /@size-limit/esbuild@11.1.4(size-limit@11.1.4): + resolution: {integrity: sha512-Nxh+Fw4Z7sFjRLeT7GDZIy297VXyJrMvG20UDSWP31QgglriEBDkW9U77T7W6js5FaEr89bYVrGzpHfmE1CLFw==} + engines: {node: ^18.0.0 || >=20.0.0} + peerDependencies: + size-limit: 11.1.4 dependencies: - debug: 4.3.5(supports-color@6.1.0) - transitivePeerDependencies: - - supports-color + esbuild: 0.21.5 + nanoid: 5.0.7 + size-limit: 11.1.4 dev: true - /@size-limit/file@8.2.6(size-limit@8.2.6): - resolution: {integrity: sha512-B7ayjxiJsbtXdIIWazJkB5gezi5WBMecdHTFPMDhI3NwEML1RVvUjAkrb1mPAAkIpt2LVHPnhdCUHjqDdjugwg==} - engines: {node: ^14.0.0 || ^16.0.0 || >=18.0.0} + /@size-limit/file@11.1.4(size-limit@11.1.4): + resolution: {integrity: sha512-QxnGj9cxhCEuqMAV01gqonXIKcc+caZqFHZpV51oL2ZJNGSPP9Q/yyf+7HbVe00faOFd1dZZwMwzZmX7HQ9LbA==} + engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: - size-limit: 8.2.6 + size-limit: 11.1.4 dependencies: - semver: 7.5.3 - size-limit: 8.2.6 + size-limit: 11.1.4 dev: true - /@size-limit/preset-big-lib@8.2.6(size-limit@8.2.6): - resolution: {integrity: sha512-63a+yos0QNMVCfx1OWnxBrdQVTlBVGzW5fDXwpWq/hKfP3B89XXHYGeL2Z2f8IXSVeGkAHXnDcTZyIPRaXffVg==} + /@size-limit/preset-small-lib@11.1.4(size-limit@11.1.4): + resolution: {integrity: sha512-wELW374esv+2Nlzf7g+qW4Af9L69duLoO9F52f0sGk/nzb6et7u8gLRvweWrBfm3itUrqHCpGSSVabTsIU8kNw==} peerDependencies: - size-limit: 8.2.6 + size-limit: 11.1.4 dependencies: - '@size-limit/file': 8.2.6(size-limit@8.2.6) - '@size-limit/time': 8.2.6(size-limit@8.2.6) - '@size-limit/webpack': 8.2.6(size-limit@8.2.6) - size-limit: 8.2.6 - transitivePeerDependencies: - - '@swc/core' - - bufferutil - - encoding - - esbuild - - supports-color - - uglify-js - - utf-8-validate - - webpack-cli + '@size-limit/esbuild': 11.1.4(size-limit@11.1.4) + '@size-limit/file': 11.1.4(size-limit@11.1.4) + size-limit: 11.1.4 dev: true - /@size-limit/time@8.2.6(size-limit@8.2.6): - resolution: {integrity: sha512-fUEPvz7Uq6+oUQxSYbNlJt3tTgQBl1VY21USi/B7ebdnVKLnUx1JyPI9v7imN6XEkB2VpJtnYgjFeLgNrirzMA==} - engines: {node: ^14.0.0 || ^16.0.0 || >=18.0.0} - peerDependencies: - size-limit: 8.2.6 - dependencies: - estimo: 2.3.6 - react: 17.0.2 - size-limit: 8.2.6 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate + /@swc/core-darwin-arm64@1.7.14: + resolution: {integrity: sha512-V0OUXjOH+hdGxDYG8NkQzy25mKOpcNKFpqtZEzLe5V/CpLJPnpg1+pMz70m14s9ZFda9OxsjlvPbg1FLUwhgIQ==} + engines: {node: '>=10'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@swc/core-darwin-x64@1.7.14: + resolution: {integrity: sha512-9iFvUnxG6FC3An5ogp5jbBfQuUmTTwy8KMB+ZddUoPB3NR1eV+Y9vOh/tfWcenSJbgOKDLgYC5D/b1mHAprsrQ==} + engines: {node: '>=10'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@swc/core-linux-arm-gnueabihf@1.7.14: + resolution: {integrity: sha512-zGJsef9qPivKSH8Vv4F/HiBXBTHZ5Hs3ZjVGo/UIdWPJF8fTL9OVADiRrl34Q7zOZEtGXRwEKLUW1SCQcbDvZA==} + engines: {node: '>=10'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@swc/core-linux-arm64-gnu@1.7.14: + resolution: {integrity: sha512-AxV3MPsoI7i4B8FXOew3dx3N8y00YoJYvIPfxelw07RegeCEH3aHp2U2DtgbP/NV1ugZMx0TL2Z2DEvocmA51g==} + engines: {node: '>=10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@swc/core-linux-arm64-musl@1.7.14: + resolution: {integrity: sha512-JDLdNjUj3zPehd4+DrQD8Ltb3B5lD8D05IwePyDWw+uR/YPc7w/TX1FUVci5h3giJnlMCJRvi1IQYV7K1n7KtQ==} + engines: {node: '>=10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@swc/core-linux-x64-gnu@1.7.14: + resolution: {integrity: sha512-Siy5OvPCLLWmMdx4msnEs8HvEVUEigSn0+3pbLjv78iwzXd0qSBNHUPZyC1xeurVaUbpNDxZTpPRIwpqNE2+Og==} + engines: {node: '>=10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@swc/core-linux-x64-musl@1.7.14: + resolution: {integrity: sha512-FtEGm9mwtRYQNK43WMtUIadxHs/ja2rnDurB99os0ZoFTGG2IHuht2zD97W0wB8JbqEabT1XwSG9Y5wmN+ciEQ==} + engines: {node: '>=10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@swc/core-win32-arm64-msvc@1.7.14: + resolution: {integrity: sha512-Jp8KDlfq7Ntt2/BXr0y344cYgB1zf0DaLzDZ1ZJR6rYlAzWYSccLYcxHa97VGnsYhhPspMpmCvHid97oe2hl4A==} + engines: {node: '>=10'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@swc/core-win32-ia32-msvc@1.7.14: + resolution: {integrity: sha512-I+cFsXF0OU0J9J4zdWiQKKLURO5dvCujH9Jr8N0cErdy54l9d4gfIxdctfTF+7FyXtWKLTCkp+oby9BQhkFGWA==} + engines: {node: '>=10'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@swc/core-win32-x64-msvc@1.7.14: + resolution: {integrity: sha512-NNrprQCK6d28mG436jVo2TD+vACHseUECacEBGZ9Ef0qfOIWS1XIt2MisQKG0Oea2VvLFl6tF/V4Lnx/H0Sn3Q==} + engines: {node: '>=10'} + cpu: [x64] + os: [win32] + requiresBuild: true dev: true + optional: true - /@size-limit/webpack@8.2.6(size-limit@8.2.6): - resolution: {integrity: sha512-y2sB66m5sJxIjZ8SEAzpWbiw3/+bnQHDHfk9cSbV5ChKklq02AlYg8BS5KxGWmMpdyUo4TzpjSCP9oEudY+hxQ==} - engines: {node: ^14.0.0 || ^16.0.0 || >=18.0.0} + /@swc/core@1.7.14(@swc/helpers@0.5.12): + resolution: {integrity: sha512-9aeXeifnyuvc2pcuuhPQgVUwdpGEzZ+9nJu0W8/hNl/aESFsJGR5i9uQJRGu0atoNr01gK092fvmqMmQAPcKow==} + engines: {node: '>=10'} + requiresBuild: true peerDependencies: - size-limit: 8.2.6 + '@swc/helpers': '*' + peerDependenciesMeta: + '@swc/helpers': + optional: true dependencies: - nanoid: 3.3.6 - size-limit: 8.2.6 - webpack: 5.88.1 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - webpack-cli + '@swc/counter': 0.1.3 + '@swc/helpers': 0.5.12 + '@swc/types': 0.1.12 + optionalDependencies: + '@swc/core-darwin-arm64': 1.7.14 + '@swc/core-darwin-x64': 1.7.14 + '@swc/core-linux-arm-gnueabihf': 1.7.14 + '@swc/core-linux-arm64-gnu': 1.7.14 + '@swc/core-linux-arm64-musl': 1.7.14 + '@swc/core-linux-x64-gnu': 1.7.14 + '@swc/core-linux-x64-musl': 1.7.14 + '@swc/core-win32-arm64-msvc': 1.7.14 + '@swc/core-win32-ia32-msvc': 1.7.14 + '@swc/core-win32-x64-msvc': 1.7.14 dev: true /@swc/counter@0.1.3: resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} + /@swc/helpers@0.5.12: + resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==} + dependencies: + tslib: 2.6.3 + dev: true + /@swc/helpers@0.5.5: resolution: {integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==} dependencies: '@swc/counter': 0.1.3 tslib: 2.6.3 + /@swc/types@0.1.12: + resolution: {integrity: sha512-wBJA+SdtkbFhHjTMYH+dEH1y4VpfGdAc2Kw/LK09i9bXd/K6j6PkDcFCEzb6iVfZMkPRrl/q0e3toqTAJdkIVA==} + dependencies: + '@swc/counter': 0.1.3 + dev: true + /@tanstack/react-virtual@3.5.1(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-jIsuhfgy8GqA67PdWqg73ZB2LFE+HD9hjWL1L6ifEIZVyZVAKpYmgUG4WsKQ005aEyImJmbuimPiEvc57IY0Aw==} peerDependencies: @@ -7802,14 +7839,6 @@ packages: dependencies: '@types/yargs-parser': 21.0.3 - /@types/yauzl@2.10.3: - resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} - requiresBuild: true - dependencies: - '@types/node': 20.14.5 - dev: true - optional: true - /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.5.3): resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -7989,7 +8018,7 @@ packages: globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 - semver: 7.5.4 + semver: 7.6.2 ts-api-utils: 1.0.2(typescript@5.5.3) typescript: 5.5.3 transitivePeerDependencies: @@ -8010,7 +8039,7 @@ packages: debug: 4.3.5(supports-color@6.1.0) globby: 11.1.0 is-glob: 4.0.3 - minimatch: 9.0.4 + minimatch: 9.0.5 semver: 7.6.2 ts-api-utils: 1.3.0(typescript@5.5.3) typescript: 5.5.3 @@ -8054,7 +8083,7 @@ packages: '@typescript-eslint/typescript-estree': 5.59.2(typescript@5.5.3) eslint: 8.56.0 eslint-scope: 5.1.1 - semver: 7.5.4 + semver: 7.6.2 transitivePeerDependencies: - supports-color - typescript @@ -8216,7 +8245,7 @@ packages: react: optional: true dependencies: - next: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + next: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 server-only: 0.0.1 dev: false @@ -8245,7 +8274,7 @@ packages: vue-router: optional: true dependencies: - next: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + next: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 dev: false @@ -8313,8 +8342,8 @@ packages: /@web3-storage/multipart-parser@1.0.0: resolution: {integrity: sha512-BEO6al7BYqcnfX15W2cnGR+Q566ACXAT9UQykORCWW80lmkpWsnEob6zJS1ZVBKsSJC8+7vJkHwlp+lXG1UCdw==} - /@webassemblyjs/ast@1.11.6: - resolution: {integrity: sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==} + /@webassemblyjs/ast@1.12.1: + resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==} dependencies: '@webassemblyjs/helper-numbers': 1.11.6 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 @@ -8344,8 +8373,8 @@ packages: resolution: {integrity: sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==} dev: false - /@webassemblyjs/helper-buffer@1.11.6: - resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==} + /@webassemblyjs/helper-buffer@1.12.1: + resolution: {integrity: sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==} dev: true /@webassemblyjs/helper-buffer@1.9.0: @@ -8384,13 +8413,13 @@ packages: resolution: {integrity: sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==} dev: false - /@webassemblyjs/helper-wasm-section@1.11.6: - resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==} + /@webassemblyjs/helper-wasm-section@1.12.1: + resolution: {integrity: sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==} dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-buffer': 1.11.6 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/helper-buffer': 1.12.1 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/wasm-gen': 1.11.6 + '@webassemblyjs/wasm-gen': 1.12.1 dev: true /@webassemblyjs/helper-wasm-section@1.9.0: @@ -8434,17 +8463,17 @@ packages: resolution: {integrity: sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==} dev: false - /@webassemblyjs/wasm-edit@1.11.6: - resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==} + /@webassemblyjs/wasm-edit@1.12.1: + resolution: {integrity: sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==} dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-buffer': 1.11.6 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/helper-buffer': 1.12.1 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/helper-wasm-section': 1.11.6 - '@webassemblyjs/wasm-gen': 1.11.6 - '@webassemblyjs/wasm-opt': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 - '@webassemblyjs/wast-printer': 1.11.6 + '@webassemblyjs/helper-wasm-section': 1.12.1 + '@webassemblyjs/wasm-gen': 1.12.1 + '@webassemblyjs/wasm-opt': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 + '@webassemblyjs/wast-printer': 1.12.1 dev: true /@webassemblyjs/wasm-edit@1.9.0: @@ -8460,10 +8489,10 @@ packages: '@webassemblyjs/wast-printer': 1.9.0 dev: false - /@webassemblyjs/wasm-gen@1.11.6: - resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==} + /@webassemblyjs/wasm-gen@1.12.1: + resolution: {integrity: sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==} dependencies: - '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/ast': 1.12.1 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 '@webassemblyjs/ieee754': 1.11.6 '@webassemblyjs/leb128': 1.11.6 @@ -8480,13 +8509,13 @@ packages: '@webassemblyjs/utf8': 1.9.0 dev: false - /@webassemblyjs/wasm-opt@1.11.6: - resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==} + /@webassemblyjs/wasm-opt@1.12.1: + resolution: {integrity: sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==} dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-buffer': 1.11.6 - '@webassemblyjs/wasm-gen': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/helper-buffer': 1.12.1 + '@webassemblyjs/wasm-gen': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 dev: true /@webassemblyjs/wasm-opt@1.9.0: @@ -8498,10 +8527,10 @@ packages: '@webassemblyjs/wasm-parser': 1.9.0 dev: false - /@webassemblyjs/wasm-parser@1.11.6: - resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==} + /@webassemblyjs/wasm-parser@1.12.1: + resolution: {integrity: sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==} dependencies: - '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/ast': 1.12.1 '@webassemblyjs/helper-api-error': 1.11.6 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 '@webassemblyjs/ieee754': 1.11.6 @@ -8531,10 +8560,10 @@ packages: '@xtuc/long': 4.2.2 dev: false - /@webassemblyjs/wast-printer@1.11.6: - resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==} + /@webassemblyjs/wast-printer@1.12.1: + resolution: {integrity: sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==} dependencies: - '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/ast': 1.12.1 '@xtuc/long': 4.2.2 dev: true @@ -8608,8 +8637,8 @@ packages: acorn-walk: 8.3.3 dev: true - /acorn-import-assertions@1.9.0(acorn@8.12.0): - resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} + /acorn-import-attributes@1.9.5(acorn@8.12.0): + resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==} peerDependencies: acorn: ^8 dependencies: @@ -9293,6 +9322,7 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color + dev: false /babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.7): resolution: {integrity: sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==} @@ -9304,6 +9334,7 @@ packages: core-js-compat: 3.37.1 transitivePeerDependencies: - supports-color + dev: false /babel-plugin-polyfill-corejs3@0.6.0(@babel/core@7.24.7): resolution: {integrity: sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==} @@ -9337,6 +9368,7 @@ packages: '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.7) transitivePeerDependencies: - supports-color + dev: false /babel-plugin-react-native-web@0.18.12: resolution: {integrity: sha512-4djr9G6fMdwQoD6LQ7hOKAm39+y12flWgovAqS1k5O8f42YQ3A1FFMyV5kKfetZuGhZO5BmNmOdRRZQ1TixtDw==} @@ -9372,7 +9404,7 @@ packages: '@babel/plugin-proposal-decorators': 7.21.0(@babel/core@7.24.7) '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.24.7) '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.24.7) - '@babel/preset-env': 7.24.7(@babel/core@7.24.7) + '@babel/preset-env': 7.24.8(@babel/core@7.24.7) babel-plugin-module-resolver: 4.1.0 babel-plugin-react-native-web: 0.18.12 metro-react-native-babel-preset: 0.72.3(@babel/core@7.24.7) @@ -9762,10 +9794,6 @@ packages: buffer-fill: 1.0.0 dev: false - /buffer-crc32@0.2.13: - resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} - dev: true - /buffer-fill@1.0.0: resolution: {integrity: sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==} dev: false @@ -9808,6 +9836,39 @@ packages: resolution: {integrity: sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==} dev: false + /bunchee@5.3.2(typescript@5.5.3): + resolution: {integrity: sha512-LW0QnL3NX5+8osowBZ6xoHNSLRugD5GJxgA9n4AEnCfgx2YO6RtY7xmHVvPjLiiMJLApL06bD0xGMYHmTT0+rA==} + engines: {node: '>= 18.0.0'} + hasBin: true + peerDependencies: + typescript: ^4.1 || ^5.0 + peerDependenciesMeta: + '@swc/helpers': + optional: true + typescript: + optional: true + dependencies: + '@rollup/plugin-commonjs': 26.0.1(rollup@4.21.0) + '@rollup/plugin-json': 6.1.0(rollup@4.21.0) + '@rollup/plugin-node-resolve': 15.2.3(rollup@4.21.0) + '@rollup/plugin-replace': 5.0.7(rollup@4.21.0) + '@rollup/plugin-wasm': 6.2.2(rollup@4.21.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + '@swc/core': 1.7.14(@swc/helpers@0.5.12) + '@swc/helpers': 0.5.12 + arg: 5.0.2 + clean-css: 5.3.3 + magic-string: 0.30.11 + ora: 8.0.1 + pretty-bytes: 5.6.0 + rollup: 4.21.0 + rollup-plugin-dts: 6.1.1(rollup@4.21.0)(typescript@5.5.3) + rollup-plugin-swc3: 0.11.2(@swc/core@1.7.14)(rollup@4.21.0) + rollup-preserve-directives: 1.1.1(rollup@4.21.0) + tslib: 2.6.3 + typescript: 5.5.3 + dev: true + /bundle-name@3.0.0: resolution: {integrity: sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==} engines: {node: '>=12'} @@ -9896,7 +9957,7 @@ packages: dependencies: '@npmcli/fs': 3.1.1 fs-minipass: 3.0.3 - glob: 10.4.2 + glob: 10.4.5 lru-cache: 7.18.3 minipass: 7.1.2 minipass-collect: 1.0.2 @@ -10214,6 +10275,13 @@ packages: source-map: 0.6.1 dev: false + /clean-css@5.3.3: + resolution: {integrity: sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==} + engines: {node: '>= 10.0'} + dependencies: + source-map: 0.6.1 + dev: true + /clean-regexp@1.0.0: resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==} engines: {node: '>=4'} @@ -10249,10 +10317,22 @@ packages: dependencies: restore-cursor: 3.1.0 + /cli-cursor@4.0.0: + resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + restore-cursor: 4.0.0 + dev: true + /cli-spinners@2.9.0: resolution: {integrity: sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==} engines: {node: '>=6'} + /cli-spinners@2.9.2: + resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} + engines: {node: '>=6'} + dev: true + /cli-table3@0.6.5: resolution: {integrity: sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==} engines: {node: 10.* || >= 12.*} @@ -10460,6 +10540,7 @@ packages: /commander@9.5.0: resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} engines: {node: ^12.20.0 || >=14} + dev: false /common-ancestor-path@1.0.1: resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} @@ -10725,6 +10806,7 @@ packages: resolution: {integrity: sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==} dependencies: browserslist: 4.23.1 + dev: false /core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} @@ -10821,6 +10903,7 @@ packages: node-fetch: 2.6.7 transitivePeerDependencies: - encoding + dev: false /cross-spawn@5.1.0: resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} @@ -11455,8 +11538,8 @@ packages: ms: 2.1.3 supports-color: 6.1.0 - /debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + /debug@4.3.5(supports-color@6.1.0): + resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -11465,10 +11548,10 @@ packages: optional: true dependencies: ms: 2.1.2 - dev: true + supports-color: 6.1.0 - /debug@4.3.5(supports-color@6.1.0): - resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} + /debug@4.3.6: + resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -11477,7 +11560,6 @@ packages: optional: true dependencies: ms: 2.1.2 - supports-color: 6.1.0 /decamelize@1.2.0: resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} @@ -11740,10 +11822,6 @@ packages: dependencies: dequal: 2.0.3 - /devtools-protocol@0.0.981744: - resolution: {integrity: sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==} - dev: true - /didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} @@ -12844,23 +12922,6 @@ packages: dependencies: estraverse: 5.3.0 - /estimo@2.3.6: - resolution: {integrity: sha512-aPd3VTQAL1TyDyhFfn6fqBTJ9WvbRZVN4Z29Buk6+P6xsI0DuF5Mh3dGv6kYCUxWnZkB4Jt3aYglUxOtuwtxoA==} - engines: {node: '>=12'} - hasBin: true - dependencies: - '@sitespeed.io/tracium': 0.3.3 - commander: 9.5.0 - find-chrome-bin: 0.1.0 - nanoid: 3.3.7 - puppeteer-core: 13.7.0 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate - dev: true - /estraverse@4.3.0: resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} engines: {node: '>=4.0'} @@ -13068,24 +13129,6 @@ packages: strip-final-newline: 3.0.0 dev: true - /execa@9.2.0: - resolution: {integrity: sha512-vpOyYg7UAVKLAWWtRS2gAdgkT7oJbCn0me3gmUmxZih4kd3MF/oo8kNTBTIbkO3yuuF5uB4ZCZfn8BOolITYhg==} - engines: {node: ^18.19.0 || >=20.5.0} - dependencies: - '@sindresorhus/merge-streams': 4.0.0 - cross-spawn: 7.0.3 - figures: 6.1.0 - get-stream: 9.0.1 - human-signals: 7.0.0 - is-plain-obj: 4.1.0 - is-stream: 4.0.1 - npm-run-path: 5.3.0 - pretty-ms: 9.0.0 - signal-exit: 4.1.0 - strip-final-newline: 4.0.0 - yoctocolors: 2.0.2 - dev: true - /exit-hook@2.2.1: resolution: {integrity: sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==} engines: {node: '>=6'} @@ -13350,20 +13393,6 @@ packages: - supports-color dev: false - /extract-zip@2.0.1: - resolution: {integrity: sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==} - engines: {node: '>= 10.17.0'} - hasBin: true - dependencies: - debug: 4.3.5(supports-color@6.1.0) - get-stream: 5.2.0 - yauzl: 2.10.0 - optionalDependencies: - '@types/yauzl': 2.10.3 - transitivePeerDependencies: - - supports-color - dev: true - /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -13452,12 +13481,6 @@ packages: - encoding dev: false - /fd-slicer@1.1.0: - resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} - dependencies: - pend: 1.2.0 - dev: true - /fetch-blob@3.2.0: resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} engines: {node: ^12.20 || >= 14.13} @@ -13476,14 +13499,7 @@ packages: /figgy-pudding@3.5.2: resolution: {integrity: sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==} - dev: false - - /figures@6.1.0: - resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==} - engines: {node: '>=18'} - dependencies: - is-unicode-supported: 2.0.0 - dev: true + dev: false /file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} @@ -13592,11 +13608,6 @@ packages: pkg-dir: 4.2.0 dev: false - /find-chrome-bin@0.1.0: - resolution: {integrity: sha512-XoFZwaEn1R3pE6zNG8kH64l2e093hgB9+78eEKPmJK0o1EXEou+25cEWdtu2qq4DBQPDSe90VJAWVI2Sz9pX6Q==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - dev: true - /find-up@3.0.0: resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} engines: {node: '>=6'} @@ -13689,14 +13700,6 @@ packages: engines: {node: '>=0.10.0'} dev: false - /foreground-child@3.2.0: - resolution: {integrity: sha512-CrWQNaEl1/6WeZoarcM9LHupTo3RpZO2Pdk1vktwzPiQTsJnAKJmm3TACKeG5UZbWDfaH2AbvYxzP96y0MT7fA==} - engines: {node: '>=14'} - dependencies: - cross-spawn: 7.0.3 - signal-exit: 4.1.0 - dev: true - /foreground-child@3.2.1: resolution: {integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==} engines: {node: '>=14'} @@ -13857,7 +13860,7 @@ packages: at-least-node: 1.0.0 graceful-fs: 4.2.11 jsonfile: 6.1.0 - universalify: 2.0.0 + universalify: 2.0.1 dev: false /fs-minipass@2.1.0: @@ -14010,13 +14013,6 @@ packages: pump: 3.0.0 dev: false - /get-stream@5.2.0: - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} - engines: {node: '>=8'} - dependencies: - pump: 3.0.0 - dev: true - /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -14137,33 +14133,8 @@ packages: dependencies: foreground-child: 3.2.1 jackspeak: 2.3.6 - minimatch: 9.0.4 - minipass: 7.1.2 - path-scurry: 1.11.1 - dev: true - - /glob@10.4.1: - resolution: {integrity: sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==} - engines: {node: '>=16 || 14 >=14.18'} - hasBin: true - dependencies: - foreground-child: 3.2.0 - jackspeak: 3.4.0 - minimatch: 9.0.4 - minipass: 7.1.2 - path-scurry: 1.11.1 - dev: true - - /glob@10.4.2: - resolution: {integrity: sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==} - engines: {node: '>=16 || 14 >=14.18'} - hasBin: true - dependencies: - foreground-child: 3.2.1 - jackspeak: 3.4.0 - minimatch: 9.0.4 + minimatch: 9.0.5 minipass: 7.1.2 - package-json-from-dist: 1.0.0 path-scurry: 1.11.1 dev: true @@ -14205,6 +14176,7 @@ packages: /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -14216,6 +14188,7 @@ packages: /glob@8.1.0: resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} engines: {node: '>=12'} + deprecated: Glob versions prior to v9 are no longer supported dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -14975,11 +14948,6 @@ packages: engines: {node: '>=16.17.0'} dev: true - /human-signals@7.0.0: - resolution: {integrity: sha512-74kytxOUSvNbjrT9KisAbaTZ/eJwD/LrbM/kh5j0IhPuJzwuA19dWvniFGwBzN9rVjg+O/e+F310PjObDXS+9Q==} - engines: {node: '>=18.18.0'} - dev: true - /hyphenate-style-name@1.0.4: resolution: {integrity: sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==} dev: false @@ -15386,12 +15354,6 @@ packages: rgba-regex: 1.0.0 dev: false - /is-core-module@2.12.0: - resolution: {integrity: sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==} - dependencies: - has: 1.0.3 - dev: true - /is-core-module@2.13.1: resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: @@ -15550,6 +15512,11 @@ packages: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} + /is-interactive@2.0.0: + resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} + engines: {node: '>=12'} + dev: true + /is-invalid-path@0.1.0: resolution: {integrity: sha512-aZMG0T3F34mTg4eTdszcGXx54oiZ4NtHSft3hWNJMGJXUUqdIj3cOZuHcU0nCWWcY3jd7yRe/3AEm3vSNTpBGQ==} engines: {node: '>=0.10.0'} @@ -15753,6 +15720,11 @@ packages: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} engines: {node: '>=10'} + /is-unicode-supported@1.3.0: + resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} + engines: {node: '>=12'} + dev: true + /is-unicode-supported@2.0.0: resolution: {integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==} engines: {node: '>=18'} @@ -15905,15 +15877,6 @@ packages: '@pkgjs/parseargs': 0.11.0 dev: true - /jackspeak@3.4.0: - resolution: {integrity: sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==} - engines: {node: '>=14'} - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - dev: true - /jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} dependencies: @@ -16917,6 +16880,14 @@ packages: chalk: 4.1.2 is-unicode-supported: 0.1.0 + /log-symbols@6.0.0: + resolution: {integrity: sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==} + engines: {node: '>=18'} + dependencies: + chalk: 5.3.0 + is-unicode-supported: 1.3.0 + dev: true + /logkitty@0.7.1: resolution: {integrity: sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==} hasBin: true @@ -16952,13 +16923,8 @@ packages: tslib: 2.6.3 dev: false - /lru-cache@10.2.2: - resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} - engines: {node: 14 || >=16.14} - /lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - dev: true /lru-cache@4.1.5: resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} @@ -16977,6 +16943,7 @@ packages: engines: {node: '>=10'} dependencies: yallist: 4.0.0 + dev: false /lru-cache@7.18.3: resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} @@ -16994,6 +16961,12 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true + /magic-string@0.30.11: + resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + dev: true + /make-dir@2.1.0: resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} engines: {node: '>=6'} @@ -18749,17 +18722,17 @@ packages: dev: false optional: true - /nanoid@3.3.6: - resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - dev: true - /nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true + /nanoid@5.0.7: + resolution: {integrity: sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ==} + engines: {node: ^18 || >=20} + hasBin: true + dev: true + /nanomatch@1.2.13(supports-color@6.1.0): resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==} engines: {node: '>=0.10.0'} @@ -18782,7 +18755,7 @@ packages: /nanospinner@1.1.0: resolution: {integrity: sha512-yFvNYMig4AthKYfHFl1sLj7B2nkHL4lzdig4osvl9/LdGbXwrdFRoqBS98gsEsOakr0yH+r5NZ/1Y9gdVB8trA==} dependencies: - picocolors: 1.0.0 + picocolors: 1.0.1 dev: true /natural-compare-lite@1.4.0: @@ -18833,7 +18806,7 @@ packages: '@panva/hkdf': 1.2.0 cookie: 0.5.0 jose: 4.15.7 - next: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + next: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) oauth: 0.9.15 openid-client: 5.6.5 preact: 10.22.0 @@ -18867,7 +18840,7 @@ packages: react: '>=16.0.0' react-dom: '>=16.0.0' dependencies: - next: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + next: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -18883,7 +18856,7 @@ packages: '@next/env': 13.5.6 fast-glob: 3.3.2 minimist: 1.2.8 - next: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + next: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) dev: true /next-themes@0.2.1(next@14.2.4)(react-dom@18.3.1)(react@18.3.1): @@ -18893,12 +18866,12 @@ packages: react: '*' react-dom: '*' dependencies: - next: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + next: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false - /next@14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1): + /next@14.2.4(@babel/core@7.24.8)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==} engines: {node: '>=18.17.0'} hasBin: true @@ -18925,7 +18898,7 @@ packages: postcss: 8.4.31 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - styled-jsx: 5.1.1(@babel/core@7.24.7)(react@18.3.1) + styled-jsx: 5.1.1(@babel/core@7.24.8)(react@18.3.1) optionalDependencies: '@next/swc-darwin-arm64': 14.2.4 '@next/swc-darwin-x64': 14.2.4 @@ -18939,8 +18912,9 @@ packages: transitivePeerDependencies: - '@babel/core' - babel-plugin-macros + dev: false - /next@14.2.4(@babel/core@7.24.8)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1): + /next@14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==} engines: {node: '>=18.17.0'} hasBin: true @@ -18981,7 +18955,6 @@ packages: transitivePeerDependencies: - '@babel/core' - babel-plugin-macros - dev: false /nextra-theme-docs@2.13.4(next@14.2.4)(nextra@2.13.4)(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-2XOoMfwBCTYBt8ds4ZHftt9Wyf2XsykiNo02eir/XEYB+sGeUoE77kzqfidjEOKCSzOHYbK9BDMcg2+B/2vYRw==} @@ -19000,7 +18973,7 @@ packages: git-url-parse: 13.1.1 intersection-observer: 0.12.2 match-sorter: 6.3.4 - next: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + next: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) next-seo: 6.5.0(next@14.2.4)(react-dom@18.3.1)(react@18.3.1) next-themes: 0.2.1(next@14.2.4)(react-dom@18.3.1)(react@18.3.1) nextra: 2.13.4(next@14.2.4)(react-dom@18.3.1)(react@18.3.1) @@ -19030,7 +19003,7 @@ packages: gray-matter: 4.0.3 katex: 0.16.10 lodash.get: 4.4.2 - next: 14.2.4(@babel/core@7.24.7)(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) + next: 14.2.4(@playwright/test@1.44.1)(react-dom@18.3.1)(react@18.3.1) next-mdx-remote: 4.4.1(react-dom@18.3.1)(react@18.3.1) p-limit: 3.1.0 react: 18.3.1 @@ -19099,6 +19072,7 @@ packages: optional: true dependencies: whatwg-url: 5.0.0 + dev: false /node-fetch@2.6.9: resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} @@ -19717,6 +19691,21 @@ packages: strip-ansi: 6.0.1 wcwidth: 1.0.1 + /ora@8.0.1: + resolution: {integrity: sha512-ANIvzobt1rls2BDny5fWZ3ZVKyD6nscLvfFRpQgfWsythlcsVUC9kL0zq6j2Z5z9wwp1kd7wpsD/T9qNPVLCaQ==} + engines: {node: '>=18'} + dependencies: + chalk: 5.3.0 + cli-cursor: 4.0.0 + cli-spinners: 2.9.2 + is-interactive: 2.0.0 + is-unicode-supported: 2.0.0 + log-symbols: 6.0.0 + stdin-discarder: 0.2.2 + string-width: 7.2.0 + strip-ansi: 7.1.0 + dev: true + /os-browserify@0.3.0: resolution: {integrity: sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==} dev: false @@ -19981,11 +19970,6 @@ packages: engines: {node: '>=6'} dev: true - /parse-ms@4.0.0: - resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==} - engines: {node: '>=18'} - dev: true - /parse-numeric-range@1.3.0: resolution: {integrity: sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==} dev: false @@ -20093,7 +20077,7 @@ packages: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} dependencies: - lru-cache: 10.2.2 + lru-cache: 10.4.3 minipass: 7.1.2 /path-to-regexp@0.1.7: @@ -20140,10 +20124,6 @@ packages: through2: 2.0.5 dev: true - /pend@1.2.0: - resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} - dev: true - /periscopic@3.1.0: resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} dependencies: @@ -20155,10 +20135,6 @@ packages: resolution: {integrity: sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==} dev: false - /picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - dev: true - /picocolors@1.0.1: resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} @@ -20295,7 +20271,7 @@ packages: resolution: {integrity: sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==} dependencies: postcss: 7.0.39 - postcss-selector-parser: 6.1.0 + postcss-selector-parser: 6.1.1 postcss-value-parser: 4.2.0 dev: false @@ -20492,7 +20468,7 @@ packages: dependencies: icss-utils: 4.1.1 postcss: 7.0.39 - postcss-selector-parser: 6.1.0 + postcss-selector-parser: 6.1.1 postcss-value-parser: 4.2.0 dev: false @@ -20513,7 +20489,7 @@ packages: engines: {node: '>= 6'} dependencies: postcss: 7.0.39 - postcss-selector-parser: 6.1.0 + postcss-selector-parser: 6.1.1 dev: false /postcss-modules-scope@3.0.0(postcss@8.4.38): @@ -20700,6 +20676,7 @@ packages: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 + dev: true /postcss-selector-parser@6.1.1: resolution: {integrity: sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==} @@ -20806,7 +20783,6 @@ packages: /pretty-bytes@5.6.0: resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} engines: {node: '>=6'} - dev: false /pretty-error@2.1.2: resolution: {integrity: sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==} @@ -20854,13 +20830,6 @@ packages: parse-ms: 2.1.0 dev: true - /pretty-ms@9.0.0: - resolution: {integrity: sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng==} - engines: {node: '>=18'} - dependencies: - parse-ms: 4.0.0 - dev: true - /proc-log@3.0.0: resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -20887,6 +20856,7 @@ packages: /progress@2.0.3: resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} engines: {node: '>=0.4.0'} + dev: false /promise-all-reject-late@1.0.1: resolution: {integrity: sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==} @@ -20966,10 +20936,6 @@ packages: forwarded: 0.2.0 ipaddr.js: 1.9.1 - /proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - dev: true - /prr@1.0.1: resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} dev: false @@ -21039,29 +21005,6 @@ packages: engines: {node: '>=6'} dev: true - /puppeteer-core@13.7.0: - resolution: {integrity: sha512-rXja4vcnAzFAP1OVLq/5dWNfwBGuzcOARJ6qGV7oAZhnLmVRU8G5MsdeQEAOy332ZhkIOnn9jp15R89LKHyp2Q==} - engines: {node: '>=10.18.1'} - dependencies: - cross-fetch: 3.1.5 - debug: 4.3.4 - devtools-protocol: 0.0.981744 - extract-zip: 2.0.1 - https-proxy-agent: 5.0.1 - pkg-dir: 4.2.0 - progress: 2.0.3 - proxy-from-env: 1.1.0 - rimraf: 3.0.2 - tar-fs: 2.1.1 - unbzip2-stream: 1.4.3 - ws: 8.5.0 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate - dev: true - /pure-rand@6.1.0: resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==} dev: true @@ -21417,14 +21360,6 @@ packages: tslib: 2.6.3 dev: false - /react@17.0.2: - resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} - engines: {node: '>=0.10.0'} - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - dev: true - /react@18.1.0: resolution: {integrity: sha512-4oL8ivCz5ZEPyclFQXaNksK3adutVS8l2xzZU0cqEFrE9Sb7fC0EFK5uEk74wIreL1DERyjvsU915j1pcT2uEQ==} engines: {node: '>=0.10.0'} @@ -21590,9 +21525,11 @@ packages: engines: {node: '>=4'} dependencies: regenerate: 1.4.2 + dev: false /regenerate@1.4.2: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} + dev: false /regenerator-runtime@0.13.11: resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} @@ -21605,6 +21542,7 @@ packages: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: '@babel/runtime': 7.24.7 + dev: false /regex-not@1.0.2: resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==} @@ -21646,6 +21584,7 @@ packages: regjsparser: 0.9.1 unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.1.0 + dev: false /registry-auth-token@3.3.2: resolution: {integrity: sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==} @@ -21673,6 +21612,7 @@ packages: hasBin: true dependencies: jsesc: 0.5.0 + dev: false /rehype-katex@7.0.0: resolution: {integrity: sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q==} @@ -21920,15 +21860,6 @@ packages: engines: {node: '>=10'} dev: true - /resolve@1.22.2: - resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==} - hasBin: true - dependencies: - is-core-module: 2.12.0 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - dev: true - /resolve@1.22.8: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true @@ -21967,6 +21898,14 @@ packages: onetime: 5.1.2 signal-exit: 3.0.7 + /restore-cursor@4.0.0: + resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 + dev: true + /ret@0.1.15: resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==} engines: {node: '>=0.12'} @@ -22035,14 +21974,42 @@ packages: resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==} dev: false - /rollup-plugin-preserve-directives@0.4.0(rollup@4.18.0): - resolution: {integrity: sha512-gx4nBxYm5BysmEQS+e2tAMrtFxrGvk+Pe5ppafRibQi0zlW7VYAbEGk6IKDw9sJGPdFWgVTE0o4BU4cdG0Fylg==} + /rollup-plugin-dts@6.1.1(rollup@4.21.0)(typescript@5.5.3): + resolution: {integrity: sha512-aSHRcJ6KG2IHIioYlvAOcEq6U99sVtqDDKVhnwt70rW6tsz3tv5OSjEiWcgzfsHdLyGXZ/3b/7b/+Za3Y6r1XA==} + engines: {node: '>=16'} peerDependencies: - rollup: 2.x || 3.x || 4.x + rollup: ^3.29.4 || ^4 + typescript: ^4.5 || ^5.0 dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.18.0) - magic-string: 0.30.10 - rollup: 4.18.0 + magic-string: 0.30.11 + rollup: 4.21.0 + typescript: 5.5.3 + optionalDependencies: + '@babel/code-frame': 7.24.7 + dev: true + + /rollup-plugin-swc3@0.11.2(@swc/core@1.7.14)(rollup@4.21.0): + resolution: {integrity: sha512-o1ih9B806fV2wBSNk46T0cYfTF2eiiKmYXRpWw3K4j/Cp3tCAt10UCVsTqvUhGP58pcB3/GZcAVl5e7TCSKN6Q==} + engines: {node: '>=12'} + peerDependencies: + '@swc/core': '>=1.2.165' + rollup: ^2.0.0 || ^3.0.0 || ^4.0.0 + dependencies: + '@fastify/deepmerge': 1.3.0 + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + '@swc/core': 1.7.14(@swc/helpers@0.5.12) + get-tsconfig: 4.7.5 + rollup: 4.21.0 + rollup-preserve-directives: 1.1.1(rollup@4.21.0) + dev: true + + /rollup-preserve-directives@1.1.1(rollup@4.21.0): + resolution: {integrity: sha512-+eQafbuEfDPfxQ9hQPlwaROfin4yiVRxap8hnrvvvcSGoukv1tTiYpAW9mvm3uR8J+fe4xd8FdVd5rz9q7jZ+Q==} + peerDependencies: + rollup: ^2.0.0 || ^3.0.0 || ^4.0.0 + dependencies: + magic-string: 0.30.11 + rollup: 4.21.0 dev: true /rollup@3.29.4: @@ -22079,6 +22046,32 @@ packages: fsevents: 2.3.3 dev: true + /rollup@4.21.0: + resolution: {integrity: sha512-vo+S/lfA2lMS7rZ2Qoubi6I5hwZwzXeUIctILZLbHI+laNtvhhOIon2S1JksA5UEDQ7l3vberd0fxK44lTYjbQ==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.21.0 + '@rollup/rollup-android-arm64': 4.21.0 + '@rollup/rollup-darwin-arm64': 4.21.0 + '@rollup/rollup-darwin-x64': 4.21.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.21.0 + '@rollup/rollup-linux-arm-musleabihf': 4.21.0 + '@rollup/rollup-linux-arm64-gnu': 4.21.0 + '@rollup/rollup-linux-arm64-musl': 4.21.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.21.0 + '@rollup/rollup-linux-riscv64-gnu': 4.21.0 + '@rollup/rollup-linux-s390x-gnu': 4.21.0 + '@rollup/rollup-linux-x64-gnu': 4.21.0 + '@rollup/rollup-linux-x64-musl': 4.21.0 + '@rollup/rollup-win32-arm64-msvc': 4.21.0 + '@rollup/rollup-win32-ia32-msvc': 4.21.0 + '@rollup/rollup-win32-x64-msvc': 4.21.0 + fsevents: 2.3.3 + dev: true + /run-applescript@5.0.0: resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==} engines: {node: '>=12'} @@ -22258,11 +22251,6 @@ packages: node-forge: 0.10.0 dev: false - /semver@5.7.1: - resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} - hasBin: true - dev: false - /semver@5.7.2: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true @@ -22285,22 +22273,6 @@ packages: lru-cache: 6.0.0 dev: false - /semver@7.5.3: - resolution: {integrity: sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: true - - /semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: true - /semver@7.6.2: resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} engines: {node: '>=10'} @@ -22567,17 +22539,18 @@ packages: /sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} - /size-limit@8.2.6: - resolution: {integrity: sha512-zpznim/tX/NegjoQuRKgWTF4XiB0cn2qt90uJzxYNTFAqexk4b94DOAkBD3TwhC6c3kw2r0KcnA5upziVMZqDg==} - engines: {node: ^14.0.0 || ^16.0.0 || >=18.0.0} + /size-limit@11.1.4: + resolution: {integrity: sha512-V2JAI/Z7h8sEuxU3V+Ig3XKA5FcYbI4CZ7sh6s7wvuy+TUwDZYqw7sAqrHhQ4cgcNfPKIAHAaH8VaqOdbcwJDA==} + engines: {node: ^18.0.0 || >=20.0.0} hasBin: true dependencies: bytes-iec: 3.1.1 - chokidar: 3.5.3 - globby: 11.1.0 - lilconfig: 2.1.0 + chokidar: 3.6.0 + globby: 14.0.2 + jiti: 1.21.6 + lilconfig: 3.1.2 nanospinner: 1.1.0 - picocolors: 1.0.0 + picocolors: 1.0.1 dev: true /skin-tone@2.0.0: @@ -22615,10 +22588,6 @@ packages: engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} dev: true - /smob@1.4.1: - resolution: {integrity: sha512-9LK+E7Hv5R9u4g4C3p+jjLstaLe11MDsL21UpYaCNmapvMkYhqCV4A/f/3gyH8QjMyh6l68q9xC85vihY9ahMQ==} - dev: true - /snapdragon-node@2.1.1: resolution: {integrity: sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==} engines: {node: '>=0.10.0'} @@ -22891,6 +22860,11 @@ packages: resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} dev: true + /stdin-discarder@0.2.2: + resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==} + engines: {node: '>=18'} + dev: true + /stream-browserify@2.0.2: resolution: {integrity: sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==} dependencies: @@ -23117,11 +23091,6 @@ packages: engines: {node: '>=12'} dev: true - /strip-final-newline@4.0.0: - resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==} - engines: {node: '>=18'} - dev: true - /strip-indent@3.0.0: resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} engines: {node: '>=8'} @@ -23175,23 +23144,6 @@ packages: inline-style-parser: 0.2.3 dev: true - /styled-jsx@5.1.1(@babel/core@7.24.7)(react@18.3.1): - resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} - engines: {node: '>= 12.0.0'} - peerDependencies: - '@babel/core': '*' - babel-plugin-macros: '*' - react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' - peerDependenciesMeta: - '@babel/core': - optional: true - babel-plugin-macros: - optional: true - dependencies: - '@babel/core': 7.24.7 - client-only: 0.0.1 - react: 18.3.1 - /styled-jsx@5.1.1(@babel/core@7.24.8)(react@18.3.1): resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} engines: {node: '>= 12.0.0'} @@ -23208,7 +23160,6 @@ packages: '@babel/core': 7.24.8 client-only: 0.0.1 react: 18.3.1 - dev: false /stylehacks@4.0.3: resolution: {integrity: sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==} @@ -23516,8 +23467,8 @@ packages: - bluebird dev: false - /terser-webpack-plugin@5.3.9(webpack@5.88.1): - resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==} + /terser-webpack-plugin@5.3.10(webpack@5.93.0): + resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} engines: {node: '>= 10.13.0'} peerDependencies: '@swc/core': '*' @@ -23536,8 +23487,8 @@ packages: jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.1 - terser: 5.18.2 - webpack: 5.88.1 + terser: 5.31.6 + webpack: 5.93.0 dev: true /terser@4.8.1: @@ -23551,8 +23502,8 @@ packages: source-map-support: 0.5.21 dev: false - /terser@5.18.2: - resolution: {integrity: sha512-Ah19JS86ypbJzTzvUCX7KOsEIhDaRONungA4aYBjEP3JZRf4ocuDzTg4QWZnPn9DEMiMYGJPiSOy7aykoCc70w==} + /terser@5.31.6: + resolution: {integrity: sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==} engines: {node: '>=10'} hasBin: true dependencies: @@ -23725,6 +23676,7 @@ packages: /tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + dev: false /tr46@3.0.0: resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==} @@ -24110,13 +24062,6 @@ packages: has-symbols: 1.0.3 which-boxed-primitive: 1.0.2 - /unbzip2-stream@1.4.3: - resolution: {integrity: sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==} - dependencies: - buffer: 5.7.1 - through: 2.3.8 - dev: true - /undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} @@ -24127,6 +24072,7 @@ packages: /unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} + dev: false /unicode-emoji-modifier-base@1.0.0: resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} @@ -24139,14 +24085,17 @@ packages: dependencies: unicode-canonical-property-names-ecmascript: 2.0.0 unicode-property-aliases-ecmascript: 2.1.0 + dev: false /unicode-match-property-value-ecmascript@2.1.0: resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} engines: {node: '>=4'} + dev: false /unicode-property-aliases-ecmascript@2.1.0: resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} engines: {node: '>=4'} + dev: false /unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} @@ -24372,7 +24321,6 @@ packages: /universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} - dev: true /unpipe@1.0.0: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} @@ -24765,7 +24713,7 @@ packages: optional: true dependencies: esbuild: 0.18.20 - postcss: 8.4.38 + postcss: 8.4.39 rollup: 3.29.4 optionalDependencies: fsevents: 2.3.3 @@ -24952,8 +24900,8 @@ packages: - supports-color dev: false - /watchpack@2.4.0: - resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} + /watchpack@2.4.2: + resolution: {integrity: sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==} engines: {node: '>=10.13.0'} dependencies: glob-to-regexp: 0.4.1 @@ -24992,6 +24940,7 @@ packages: /webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + dev: false /webidl-conversions@7.0.0: resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} @@ -25135,8 +25084,8 @@ packages: - supports-color dev: false - /webpack@5.88.1: - resolution: {integrity: sha512-FROX3TxQnC/ox4N+3xQoWZzvGXSuscxR32rbzjpXgEzWudJFEJBpdlkkob2ylrv5yzzufD1zph1OoFsLtm6stQ==} + /webpack@5.93.0: + resolution: {integrity: sha512-Y0m5oEY1LRuwly578VqluorkXbvXKh7U3rLoQCEO04M97ScRr44afGVkI0FQFsXzysk5OgFAxjZAb9rsGQVihA==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -25147,11 +25096,11 @@ packages: dependencies: '@types/eslint-scope': 3.7.4 '@types/estree': 1.0.5 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.12.0 - acorn-import-assertions: 1.9.0(acorn@8.12.0) + acorn-import-attributes: 1.9.5(acorn@8.12.0) browserslist: 4.23.2 chrome-trace-event: 1.0.3 enhanced-resolve: 5.17.0 @@ -25166,8 +25115,8 @@ packages: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(webpack@5.88.1) - watchpack: 2.4.0 + terser-webpack-plugin: 5.3.10(webpack@5.93.0) + watchpack: 2.4.2 webpack-sources: 3.2.3 transitivePeerDependencies: - '@swc/core' @@ -25225,6 +25174,7 @@ packages: dependencies: tr46: 0.0.3 webidl-conversions: 3.0.1 + dev: false /which-boxed-primitive@1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} @@ -25478,19 +25428,6 @@ packages: optional: true dev: true - /ws@8.5.0: - resolution: {integrity: sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==} - 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 - dev: true - /xcode@3.0.1: resolution: {integrity: sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==} engines: {node: '>=10.0.0'} @@ -25621,13 +25558,6 @@ packages: yargs-parser: 21.1.1 dev: true - /yauzl@2.10.0: - resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==} - dependencies: - buffer-crc32: 0.2.13 - fd-slicer: 1.1.0 - dev: true - /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -25642,11 +25572,6 @@ packages: engines: {node: '>=18'} dev: true - /yoctocolors@2.0.2: - resolution: {integrity: sha512-Ct97huExsu7cWeEjmrXlofevF8CvzUglJ4iGUet5B8xn1oumtAZBpHU4GzYuoE6PVqcZ5hghtBrSlhwHuR1Jmw==} - engines: {node: '>=18'} - dev: true - /zod@3.23.8: resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} dev: false diff --git a/scripts/getBuildConfig.mjs b/scripts/getBuildConfig.mjs deleted file mode 100644 index be13c66f7..000000000 --- a/scripts/getBuildConfig.mjs +++ /dev/null @@ -1,112 +0,0 @@ -/* eslint-env node */ -import fs from 'fs'; -import {babel} from '@rollup/plugin-babel'; -import commonjs from '@rollup/plugin-commonjs'; -import resolve, { - DEFAULTS as resolveDefaults -} from '@rollup/plugin-node-resolve'; -import replace from '@rollup/plugin-replace'; -import terser from '@rollup/plugin-terser'; -import {execa} from 'execa'; - -const extensions = [...resolveDefaults.extensions, '.tsx']; - -const outDir = 'dist/'; - -function writeEnvIndex(input) { - Object.keys(input).forEach((key) => { - fs.writeFileSync( - `./${outDir}${key}.js`, - `'use strict'; - -if (process.env.NODE_ENV === 'production') { - module.exports = require('./production/${key}.js'); -} else { - module.exports = require('./development/${key}.js'); -} -` - ); - }); -} - -async function buildTypes() { - await execa( - 'tsc', - '--noEmit false --emitDeclarationOnly true --outDir dist/types'.split(' ') - ); - // eslint-disable-next-line no-console - console.log('\ncreated types'); -} - -export default function getConfig({ - env, - external = [], - input, - output, - plugins = [], - ...rest -}) { - /** @type import('rollup').RollupOptions */ - const config = { - input, - external: [/node_modules/, ...external], - output: { - dir: outDir + env, - format: 'cjs', - interop: 'auto', - freeze: false, - esModule: true, - exports: 'named', - ...output - }, - treeshake: { - moduleSideEffects: false, - preset: 'smallest', - propertyReadSideEffects: false - }, - plugins: [ - resolve({extensions}), - commonjs(), - babel({ - babelHelpers: 'bundled', - extensions, - presets: [ - '@babel/preset-typescript', - '@babel/preset-react', - [ - '@babel/preset-env', - { - targets: { - // Same as https://nextjs.org/docs/architecture/supported-browsers#browserslist - browsers: [ - 'chrome 64', - 'edge 79', - 'firefox 67', - 'opera 51', - 'safari 12' - ] - } - } - ] - ] - }), - replace({ - 'process.env.NODE_ENV': JSON.stringify(env), - preventAssignment: true - }), - env !== 'development' && terser(), - { - buildEnd() { - if (env === 'production') { - writeEnvIndex(input); - buildTypes(); - } - } - }, - ...plugins - ], - ...rest - }; - - return config; -}