diff --git a/PULL_REQUEST_TEMPLATE.md b/.github/pull_request_template.md similarity index 85% rename from PULL_REQUEST_TEMPLATE.md rename to .github/pull_request_template.md index 725f7d4459..50da0f1368 100644 --- a/PULL_REQUEST_TEMPLATE.md +++ b/.github/pull_request_template.md @@ -1,4 +1,4 @@ -# Submit a pull request + ### 🎯 Goal diff --git a/package.json b/package.json index 1e0a4bb41d..32d5e96dfe 100644 --- a/package.json +++ b/package.json @@ -2,64 +2,43 @@ "name": "stream-chat-react", "version": "0.0.0-development", "description": "React components to create chat conversations or livestream style chat", - "author": "GetStream", - "homepage": "https://getstream.io/chat/", "license": "SEE LICENSE IN LICENSE", "repository": { "type": "git", "url": "https://github.com/GetStream/stream-chat-react.git" }, - "types": "dist/index.d.ts", - "main": "dist/index.node.cjs", - "module": "dist/index.js", + "homepage": "https://getstream.io/chat/", + "author": { + "name": "GetStream.io, Inc.", + "url": "https://getstream.io/team/" + }, + "types": "./dist/types/index.d.ts", + "main": "./dist/cjs/index.js", + "module": "./dist/es/index.mjs", "exports": { ".": { - "types": "./dist/index.d.ts", - "node": { - "require": "./dist/index.node.cjs", - "import": "./dist/index.js" - }, - "browser": { - "require": "./dist/index.browser.cjs", - "import": "./dist/index.js" - }, - "default": "./dist/index.js" + "types": "./dist/types/index.d.ts", + "import": "./dist/es/index.mjs", + "require": "./dist/cjs/index.js", + "default": "./dist/cjs/index.js" }, "./emojis": { - "types": "./dist/plugins/Emojis/index.d.ts", - "node": { - "require": "./dist/plugins/Emojis/index.node.cjs", - "import": "./dist/plugins/Emojis/index.js" - }, - "browser": { - "require": "./dist/plugins/Emojis/index.browser.cjs", - "import": "./dist/plugins/Emojis/index.js" - }, - "default": "./dist/plugins/Emojis/index.js" + "types": "./dist/types/plugins/Emojis/index.d.ts", + "import": "./dist/es/emojis.mjs", + "require": "./dist/cjs/emojis.js", + "default": "./dist/cjs/emojis.js" }, "./mp3-encoder": { - "types": "./dist/plugins/encoders/mp3.d.ts", - "node": { - "require": "./dist/plugins/encoders/mp3.node.cjs", - "import": "./dist/plugins/encoders/mp3.js" - }, - "browser": { - "require": "./dist/plugins/encoders/mp3.browser.cjs", - "import": "./dist/plugins/encoders/mp3.js" - }, - "default": "./dist/plugins/encoders/mp3.js" + "types": "./dist/types/plugins/encoders/mp3.d.ts", + "import": "./dist/es/mp3-encoder.mjs", + "require": "./dist/cjs/mp3-encoder.js", + "default": "./dist/cjs/mp3-encoder.js" }, "./experimental": { - "types": "./dist/experimental/index.d.ts", - "node": { - "require": "./dist/experimental/index.node.cjs", - "import": "./dist/experimental/index.js" - }, - "browser": { - "require": "./dist/experimental/index.browser.cjs", - "import": "./dist/experimental/index.js" - }, - "default": "./dist/experimental/index.js" + "types": "./dist/types/experimental/index.d.ts", + "import": "./dist/es/experimental.mjs", + "require": "./dist/cjs/experimental.js", + "default": "./dist/cjs/experimental.js" }, "./dist/css/*": { "default": "./dist/css/*" @@ -77,13 +56,13 @@ "typesVersions": { "*": { "emojis": [ - "./dist/plugins/Emojis/index.d.ts" + "./dist/types/plugins/Emojis/index.d.ts" ], "mp3-encoder": [ - "./dist/plugins/encoders/mp3.d.ts" + "./dist/types/plugins/encoders/mp3.d.ts" ], "experimental": [ - "./dist/experimental/index.d.ts" + "./dist/types/experimental/index.d.ts" ] } }, @@ -162,6 +141,7 @@ "README.md" ], "devDependencies": { + "vite": "^7.3.0", "@axe-core/react": "^4.3.2", "@babel/cli": "^7.12.8", "@babel/core": "^7.12.9", @@ -213,7 +193,6 @@ "core-js": "^3.6.5", "dotenv": "^8.6.0", "emoji-mart": "^5.5.2", - "esbuild": "^0.23.1", "eslint": "^9.16.0", "eslint-plugin-import": "^2.31.0", "eslint-plugin-jest": "^28.11.0", @@ -240,8 +219,8 @@ "typescript-eslint": "^8.17.0" }, "scripts": { - "build": "rm -rf dist && yarn build-translations && yarn bundle", - "bundle": "concurrently ./scripts/bundle-esm.mjs ./scripts/copy-css.sh scripts/bundle-cjs.mjs", + "clean": "rm -rf dist", + "build": "yarn clean && concurrently './scripts/copy-css.sh' 'yarn build-translations' 'vite build' 'tsc'", "build-translations": "i18next-cli extract", "coverage": "jest --collectCoverage && codecov", "lint": "yarn prettier --list-different && yarn eslint && yarn validate-translations", @@ -255,7 +234,7 @@ "prepare": "husky install", "preversion": "yarn install", "test": "jest", - "types": "tsc --noEmit", + "types": "tsc --emitDeclarationOnly false --noEmit", "validate-translations": "node scripts/validate-translations.js", "validate-cjs": "concurrently 'node scripts/validate-cjs-node-bundle.cjs' 'node scripts/validate-cjs-browser-bundle.cjs'", "semantic-release": "semantic-release", diff --git a/scripts/bundle-cjs.mjs b/scripts/bundle-cjs.mjs deleted file mode 100755 index 2cbbfadd8d..0000000000 --- a/scripts/bundle-cjs.mjs +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/env node - -import { dirname, resolve } from 'node:path'; -import { fileURLToPath } from 'node:url'; -import * as esbuild from 'esbuild'; -import getPackageVersion from './get-package-version.mjs'; -import packageJson from '../package.json' with { type: 'json' }; - -// import.meta.dirname is not available before Node 20 -const __dirname = dirname(fileURLToPath(import.meta.url)); - -const sdkEntrypoint = resolve(__dirname, '../src/index.ts'); -const emojiEntrypoint = resolve(__dirname, '../src/plugins/Emojis/index.ts'); -const mp3EncoderEntrypoint = resolve(__dirname, '../src/plugins/encoders/mp3.ts'); -const experimentalEntrypoint = resolve(__dirname, '../src/experimental/index.ts'); -const outDir = resolve(__dirname, '../dist'); - -// Those dependencies are distributed as ES modules, and cannot be externalized -// in our CJS bundle. We convert them to CJS and bundle them instead. -const bundledDeps = [ - 'hast-util-find-and-replace', - 'unist-builder', - 'unist-util-visit', - 'react-markdown', - 'remark-gfm', -]; - -const deps = Object.keys({ - ...packageJson.dependencies, - ...packageJson.peerDependencies, -}); -const external = deps.filter((dep) => !bundledDeps.includes(dep)); - -/** @type esbuild.BuildOptions */ -const cjsBundleConfig = { - entryPoints: [ - sdkEntrypoint, - emojiEntrypoint, - mp3EncoderEntrypoint, - experimentalEntrypoint, - ], - bundle: true, - format: 'cjs', - target: 'es2020', - external, - outdir: outDir, - outExtension: { '.js': '.cjs' }, - sourcemap: 'linked', -}; - -// We build two CJS bundles: for browser and for node. The latter one can be -// used e.g. during SSR (although it makes little sence to SSR chat, but still -// nice for import not to break on server). -const bundles = ['browser', 'node'].map((platform) => - esbuild.build({ - ...cjsBundleConfig, - entryNames: `[dir]/[name].${platform}`, - platform, - define: { - 'process.env.STREAM_CHAT_REACT_VERSION': JSON.stringify(getPackageVersion()), - }, - }), -); -await Promise.all(bundles); diff --git a/scripts/bundle-esm.mjs b/scripts/bundle-esm.mjs deleted file mode 100755 index bf5a24b6f6..0000000000 --- a/scripts/bundle-esm.mjs +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env node - -import { exec } from 'node:child_process'; -import { readFile, writeFile } from 'node:fs/promises'; -import glob from 'glob'; -import { promisify } from 'node:util'; -import getPackageVersion from './get-package-version.mjs'; - -const execAsync = promisify(exec); - -const version = getPackageVersion(); - -const bundleEsm = async () => { - // Run TypeScript compiler - console.log('Running TypeScript compiler...'); - await execAsync('tsc'); - - // Replace version string in generated files - console.log('Replacing version strings...'); - const files = glob.glob.sync('dist/**/*.js'); - await Promise.all( - files.map(async (file) => { - const content = await readFile(file, 'utf8'); - const newContent = content.replace( - /process.env.STREAM_CHAT_REACT_VERSION/g, - JSON.stringify(version), - ); - await writeFile(file, newContent); - }), - ); - - console.log('ESM build complete'); -}; - -bundleEsm().catch(console.error); diff --git a/scripts/check-sidebar.mjs b/scripts/check-sidebar.mjs deleted file mode 100755 index 1075e27257..0000000000 --- a/scripts/check-sidebar.mjs +++ /dev/null @@ -1,125 +0,0 @@ -#!/usr/bin/env node - -import fsPromises from 'fs/promises'; -import fs from 'fs'; -import path, { resolve } from 'path'; -import readline from 'readline'; - -const ACCEPTED_FILE_EXTENSIONS = ['md', 'mdx']; // TODO: maybe regex later - -const walkJson = async (jsonPath) => { - const json = await fsPromises.readFile(resolve(jsonPath)); - - const docs = JSON.parse(json)['docs']; - - const paths = []; - - while (docs.length) { - const stringOrObject = docs.pop(); - - if (typeof stringOrObject === 'string') { - paths.push(stringOrObject); - continue; - } - - // TODO: cover case of complex config objects (https://docusaurus.io/docs/next/sidebar/items#sidebar-item-category) - if (Object.keys(stringOrObject).length > 1) continue; - - const [vals] = Object.values(stringOrObject); - - docs.push(...vals); - } - - return paths; -}; - -const walkFiles = async (docsPath) => { - const resolvedPath = resolve(docsPath); - const files = await fsPromises.readdir(resolvedPath, { withFileTypes: true }); - - const extractIdPromises = []; - - while (files.length) { - const fileOrDirectory = files.pop(); - - const completePath = resolve(fileOrDirectory.parentPath, fileOrDirectory.name); - - if (fileOrDirectory.isDirectory()) { - const d = await fsPromises.readdir(completePath, { withFileTypes: true }); - files.push(...d); - continue; - } - - if ( - fileOrDirectory.isFile() && - ACCEPTED_FILE_EXTENSIONS.some((extension) => - fileOrDirectory.name.endsWith(extension), - ) - ) { - extractIdPromises.push(extractIdFromFile(completePath)); - } - } - - const finalPaths = (await Promise.allSettled(extractIdPromises)) - .filter((v) => v.status === 'fulfilled') - .map((v) => v.value.replace(resolvedPath + path.sep, '')); - - return finalPaths; -}; - -const extractIdFromFile = async (resolvedPath) => { - const rs = fs.createReadStream(resolvedPath); - const rli = readline.createInterface({ input: rs }); - - let limit = 8; - const id = await new Promise((resolve, reject) => { - rli.on('line', (line) => { - if (!limit) return rli.pause(); - - if (!line.startsWith('id:')) return; - - const id = line.replace(/^(id:)\s*/, '').trim(); - - resolve(id); - }); - - rli.on('pause', () => { - // extractIdFromFile executed "sync" unless this is here - setTimeout(() => { - reject('EOF'); - }, 50); - }); - }); - - rli.close(); - rs.close(); - - const d = resolvedPath.split(path.sep); - d.pop(); - d.push(id); - return d.join(path.sep); -}; - -(async () => { - const args = process.argv; - - if (!args.includes('--folder-path')) throw new Error('Missing --folder-path'); - if (!args.includes('--json-path')) throw new Error('Missing --json-path'); - - const folderPath = args.at(args.indexOf('--folder-path') + 1); - const jsonPath = args.at(args.indexOf('--json-path') + 1); - - const [definedPaths, availablePaths] = await Promise.all([ - walkJson(jsonPath), - walkFiles(folderPath), - ]); - - const unusedPaths = availablePaths.filter((p) => !definedPaths.includes(p)); - const nonExistentPaths = definedPaths.filter((p) => !availablePaths.includes(p)); - - console.log('Paths missing from sidebars_[platform].json:', unusedPaths); - console.log( - 'Paths defined in sidebars_[platform].json but missing from docs:', - nonExistentPaths, - ); -})(); diff --git a/scripts/get-package-version.mjs b/scripts/get-package-version.mjs index 0e6d224655..0db75e34ad 100644 --- a/scripts/get-package-version.mjs +++ b/scripts/get-package-version.mjs @@ -1,10 +1,9 @@ import { execSync } from 'node:child_process'; -import packageJson from '../package.json' with { type: 'json' }; -// get the latest version so that "process.env.STREAM_CHAT_REACT_VERSION" can be replaced with it in the source code (used for reporting purposes), see bundle-cjs.mjs/bundle-esm.mjs for source +// get the latest version so that "process.env.STREAM_CHAT_REACT_VERSION" can be replaced with it in the source code (used for reporting purposes), see vite.config.ts export default function getPackageVersion() { // "build" script ("prepack" hook) gets invoked when semantic-release runs "npm publish", at that point package.json#version already contains updated next version which we can use - let version = packageJson.version; + let version = process.env.npm_package_version; // if it fails (loads a default), try pulling version from git if (version === '0.0.0-development') { @@ -15,7 +14,6 @@ export default function getPackageVersion() { console.warn( 'Could not get latest version from git tags, falling back to package.json', ); - version = packageJson.version; } } diff --git a/src/components/ChannelList/ChannelList.tsx b/src/components/ChannelList/ChannelList.tsx index 5b73f52aa6..ef57aa0df8 100644 --- a/src/components/ChannelList/ChannelList.tsx +++ b/src/components/ChannelList/ChannelList.tsx @@ -358,13 +358,12 @@ const UnMemoizedChannelList = (props: ChannelListProps) => { // forces the update of preview component on channel update channelUpdateCount, getLatestMessagePreview, - key: item.cid, Preview, setActiveChannel, watchers, }; - return ; + return ; }; const baseClass = 'str-chat__channel-list'; diff --git a/tsconfig.json b/tsconfig.json index 92508b9c94..aa5b491a96 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,35 +1,32 @@ { "compilerOptions": { - "lib": ["ES2020", "DOM"], - "target": "ES2020", - "jsx": "react", - "module": "ES2020", - "esModuleInterop": true, - "moduleResolution": "Node", - "moduleDetection": "force", + "lib": ["es2022", "dom"], + "jsx": "react-jsx", + "moduleResolution": "node", + "module": "es2020", + "target": "es2020", "allowSyntheticDefaultImports": true, "isolatedModules": true, "allowJs": true, "resolveJsonModule": true, + "verbatimModuleSyntax": true, "strict": true, "allowUnreachableCode": false, "forceConsistentCasingInFileNames": true, - "noFallthroughCasesInSwitch": true, - "noImplicitAny": true, "noImplicitReturns": true, - "noImplicitUseStrict": false, "noStrictGenericChecks": false, "noUnusedLocals": false, "noUnusedParameters": false, - "strictNullChecks": true, - "importHelpers": true, "skipLibCheck": true, "noEmitOnError": true, "declaration": true, - "outDir": "./dist" + "emitDeclarationOnly": true, + "declarationMap": true, + "outDir": "./dist/types", + "rootDir": "./src" }, - "include": ["./src/**/*"], + "include": ["./src"], "exclude": ["./src/stories", "./src/mock-builders", "./src/**/__tests__/*"] } diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 0000000000..1c9ebcaaca --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,40 @@ +import { resolve } from 'path'; +import { defineConfig } from 'vite'; +import { name, dependencies, peerDependencies } from './package.json'; +import { compilerOptions } from './tsconfig.json'; +import getPackageVersion from './scripts/get-package-version.mjs'; + +const external = [ + ...Object.keys(dependencies), + ...Object.keys(peerDependencies), + // regex patterns to match subpaths of external dependencies + // e.g. @stream-io/abc and @stream-io/abc/xyz (without this, Vite bundles subpaths) +].map((dependency) => new RegExp(`^${dependency}(\\/[\\w-]+)?$`)); + +export default defineConfig({ + build: { + lib: { + entry: { + index: resolve(__dirname, './src/index.ts'), + emojis: resolve(__dirname, './src/plugins/Emojis/index.ts'), + 'mp3-encoder': resolve(__dirname, './src/plugins/encoders/mp3.ts'), + experimental: resolve(__dirname, './src/experimental/index.ts'), + }, + fileName(format, entryName) { + return `${format}/${entryName}.${format === 'cjs' ? 'js' : 'mjs'}`; + }, + name, + }, + emptyOutDir: false, + outDir: 'dist', + minify: false, + sourcemap: true, + target: compilerOptions.target, + rollupOptions: { + external, + }, + }, + define: { + 'process.env.STREAM_CHAT_REACT_VERSION': JSON.stringify(getPackageVersion()), + }, +}); diff --git a/yarn.lock b/yarn.lock index 80da09e059..864367ff64 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1353,125 +1353,135 @@ resolved "https://registry.yarnpkg.com/@emoji-mart/react/-/react-1.1.1.tgz#ddad52f93a25baf31c5383c3e7e4c6e05554312a" integrity sha512-NMlFNeWgv1//uPsvLxvGQoIerPuVdXwK/EUek8OOkJ6wVOWPUizRBJU0hDqWZCOROVpfBgCemaC3m6jDOXi03g== -"@esbuild/aix-ppc64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz#51299374de171dbd80bb7d838e1cfce9af36f353" - integrity sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ== - -"@esbuild/android-arm64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz#58565291a1fe548638adb9c584237449e5e14018" - integrity sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw== - -"@esbuild/android-arm@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.23.1.tgz#5eb8c652d4c82a2421e3395b808e6d9c42c862ee" - integrity sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ== - -"@esbuild/android-x64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.23.1.tgz#ae19d665d2f06f0f48a6ac9a224b3f672e65d517" - integrity sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg== - -"@esbuild/darwin-arm64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz#05b17f91a87e557b468a9c75e9d85ab10c121b16" - integrity sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q== - -"@esbuild/darwin-x64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz#c58353b982f4e04f0d022284b8ba2733f5ff0931" - integrity sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw== - -"@esbuild/freebsd-arm64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz#f9220dc65f80f03635e1ef96cfad5da1f446f3bc" - integrity sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA== - -"@esbuild/freebsd-x64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz#69bd8511fa013b59f0226d1609ac43f7ce489730" - integrity sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g== - -"@esbuild/linux-arm64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz#8050af6d51ddb388c75653ef9871f5ccd8f12383" - integrity sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g== - -"@esbuild/linux-arm@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz#ecaabd1c23b701070484990db9a82f382f99e771" - integrity sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ== - -"@esbuild/linux-ia32@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz#3ed2273214178109741c09bd0687098a0243b333" - integrity sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ== - -"@esbuild/linux-loong64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz#a0fdf440b5485c81b0fbb316b08933d217f5d3ac" - integrity sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw== - -"@esbuild/linux-mips64el@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz#e11a2806346db8375b18f5e104c5a9d4e81807f6" - integrity sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q== - -"@esbuild/linux-ppc64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz#06a2744c5eaf562b1a90937855b4d6cf7c75ec96" - integrity sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw== - -"@esbuild/linux-riscv64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz#65b46a2892fc0d1af4ba342af3fe0fa4a8fe08e7" - integrity sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA== - -"@esbuild/linux-s390x@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz#e71ea18c70c3f604e241d16e4e5ab193a9785d6f" - integrity sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw== - -"@esbuild/linux-x64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz#d47f97391e80690d4dfe811a2e7d6927ad9eed24" - integrity sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ== - -"@esbuild/netbsd-x64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz#44e743c9778d57a8ace4b72f3c6b839a3b74a653" - integrity sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA== - -"@esbuild/openbsd-arm64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz#05c5a1faf67b9881834758c69f3e51b7dee015d7" - integrity sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q== - -"@esbuild/openbsd-x64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz#2e58ae511bacf67d19f9f2dcd9e8c5a93f00c273" - integrity sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA== - -"@esbuild/sunos-x64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz#adb022b959d18d3389ac70769cef5a03d3abd403" - integrity sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA== - -"@esbuild/win32-arm64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz#84906f50c212b72ec360f48461d43202f4c8b9a2" - integrity sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A== - -"@esbuild/win32-ia32@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz#5e3eacc515820ff729e90d0cb463183128e82fac" - integrity sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ== - -"@esbuild/win32-x64@0.23.1": - version "0.23.1" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz#81fd50d11e2c32b2d6241470e3185b70c7b30699" - integrity sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg== +"@esbuild/aix-ppc64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz#521cbd968dcf362094034947f76fa1b18d2d403c" + integrity sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw== + +"@esbuild/android-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz#61ea550962d8aa12a9b33194394e007657a6df57" + integrity sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA== + +"@esbuild/android-arm@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.27.2.tgz#554887821e009dd6d853f972fde6c5143f1de142" + integrity sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA== + +"@esbuild/android-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.27.2.tgz#a7ce9d0721825fc578f9292a76d9e53334480ba2" + integrity sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A== + +"@esbuild/darwin-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz#2cb7659bd5d109803c593cfc414450d5430c8256" + integrity sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg== + +"@esbuild/darwin-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz#e741fa6b1abb0cd0364126ba34ca17fd5e7bf509" + integrity sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA== + +"@esbuild/freebsd-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz#2b64e7116865ca172d4ce034114c21f3c93e397c" + integrity sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g== + +"@esbuild/freebsd-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz#e5252551e66f499e4934efb611812f3820e990bb" + integrity sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA== + +"@esbuild/linux-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz#dc4acf235531cd6984f5d6c3b13dbfb7ddb303cb" + integrity sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw== + +"@esbuild/linux-arm@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz#56a900e39240d7d5d1d273bc053daa295c92e322" + integrity sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw== + +"@esbuild/linux-ia32@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz#d4a36d473360f6870efcd19d52bbfff59a2ed1cc" + integrity sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w== + +"@esbuild/linux-loong64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz#fcf0ab8c3eaaf45891d0195d4961cb18b579716a" + integrity sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg== + +"@esbuild/linux-mips64el@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz#598b67d34048bb7ee1901cb12e2a0a434c381c10" + integrity sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw== + +"@esbuild/linux-ppc64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz#3846c5df6b2016dab9bc95dde26c40f11e43b4c0" + integrity sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ== + +"@esbuild/linux-riscv64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz#173d4475b37c8d2c3e1707e068c174bb3f53d07d" + integrity sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA== + +"@esbuild/linux-s390x@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz#f7a4790105edcab8a5a31df26fbfac1aa3dacfab" + integrity sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w== + +"@esbuild/linux-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz#2ecc1284b1904aeb41e54c9ddc7fcd349b18f650" + integrity sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA== + +"@esbuild/netbsd-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz#e2863c2cd1501845995cb11adf26f7fe4be527b0" + integrity sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw== + +"@esbuild/netbsd-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz#93f7609e2885d1c0b5a1417885fba8d1fcc41272" + integrity sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA== + +"@esbuild/openbsd-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz#a1985604a203cdc325fd47542e106fafd698f02e" + integrity sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA== + +"@esbuild/openbsd-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz#8209e46c42f1ffbe6e4ef77a32e1f47d404ad42a" + integrity sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg== + +"@esbuild/openharmony-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz#8fade4441893d9cc44cbd7dcf3776f508ab6fb2f" + integrity sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag== + +"@esbuild/sunos-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz#980d4b9703a16f0f07016632424fc6d9a789dfc2" + integrity sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg== + +"@esbuild/win32-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz#1c09a3633c949ead3d808ba37276883e71f6111a" + integrity sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg== + +"@esbuild/win32-ia32@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz#1b1e3a63ad4bef82200fef4e369e0fff7009eee5" + integrity sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ== + +"@esbuild/win32-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz#9e585ab6086bef994c6e8a5b3a0481219ada862b" + integrity sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ== "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": version "4.4.1" @@ -2483,6 +2493,116 @@ estree-walker "^2.0.1" picomatch "^2.2.2" +"@rollup/rollup-android-arm-eabi@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.53.5.tgz#3d12635170ef3d32aa9222b4fb92b5d5400f08e9" + integrity sha512-iDGS/h7D8t7tvZ1t6+WPK04KD0MwzLZrG0se1hzBjSi5fyxlsiggoJHwh18PCFNn7tG43OWb6pdZ6Y+rMlmyNQ== + +"@rollup/rollup-android-arm64@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.53.5.tgz#cd2a448be8fb337f6e5ca12a3053a407ac80766d" + integrity sha512-wrSAViWvZHBMMlWk6EJhvg8/rjxzyEhEdgfMMjREHEq11EtJ6IP6yfcCH57YAEca2Oe3FNCE9DSTgU70EIGmVw== + +"@rollup/rollup-darwin-arm64@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.53.5.tgz#651263a5eb362a3730f8d5df2a55d1dab8a6a720" + integrity sha512-S87zZPBmRO6u1YXQLwpveZm4JfPpAa6oHBX7/ghSiGH3rz/KDgAu1rKdGutV+WUI6tKDMbaBJomhnT30Y2t4VQ== + +"@rollup/rollup-darwin-x64@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.53.5.tgz#76956ce183eb461a58735770b7bf3030a549ceea" + integrity sha512-YTbnsAaHo6VrAczISxgpTva8EkfQus0VPEVJCEaboHtZRIb6h6j0BNxRBOwnDciFTZLDPW5r+ZBmhL/+YpTZgA== + +"@rollup/rollup-freebsd-arm64@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.53.5.tgz#287448b57d619007b14d34ed35bf1bc4f41c023b" + integrity sha512-1T8eY2J8rKJWzaznV7zedfdhD1BqVs1iqILhmHDq/bqCUZsrMt+j8VCTHhP0vdfbHK3e1IQ7VYx3jlKqwlf+vw== + +"@rollup/rollup-freebsd-x64@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.53.5.tgz#e6dca813e189aa189dab821ea8807f48873b80f2" + integrity sha512-sHTiuXyBJApxRn+VFMaw1U+Qsz4kcNlxQ742snICYPrY+DDL8/ZbaC4DVIB7vgZmp3jiDaKA0WpBdP0aqPJoBQ== + +"@rollup/rollup-linux-arm-gnueabihf@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.53.5.tgz#74045a96fa6c5b1b1269440a68d1496d34b1730a" + integrity sha512-dV3T9MyAf0w8zPVLVBptVlzaXxka6xg1f16VAQmjg+4KMSTWDvhimI/Y6mp8oHwNrmnmVl9XxJ/w/mO4uIQONA== + +"@rollup/rollup-linux-arm-musleabihf@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.53.5.tgz#7d175bddc9acffc40431ee3fb9417136ccc499e1" + integrity sha512-wIGYC1x/hyjP+KAu9+ewDI+fi5XSNiUi9Bvg6KGAh2TsNMA3tSEs+Sh6jJ/r4BV/bx/CyWu2ue9kDnIdRyafcQ== + +"@rollup/rollup-linux-arm64-gnu@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.53.5.tgz#228b0aec95b24f4080175b51396cd14cb275e38f" + integrity sha512-Y+qVA0D9d0y2FRNiG9oM3Hut/DgODZbU9I8pLLPwAsU0tUKZ49cyV1tzmB/qRbSzGvY8lpgGkJuMyuhH7Ma+Vg== + +"@rollup/rollup-linux-arm64-musl@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.53.5.tgz#079050e023fad9bbb95d1d36fcfad23eeb0e1caa" + integrity sha512-juaC4bEgJsyFVfqhtGLz8mbopaWD+WeSOYr5E16y+1of6KQjc0BpwZLuxkClqY1i8sco+MdyoXPNiCkQou09+g== + +"@rollup/rollup-linux-loong64-gnu@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.53.5.tgz#3849451858c4d5c8838b5e16ec339b8e49aaf68a" + integrity sha512-rIEC0hZ17A42iXtHX+EPJVL/CakHo+tT7W0pbzdAGuWOt2jxDFh7A/lRhsNHBcqL4T36+UiAgwO8pbmn3dE8wA== + +"@rollup/rollup-linux-ppc64-gnu@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.53.5.tgz#10bdab69c660f6f7b48e23f17c42637aa1f9b29a" + integrity sha512-T7l409NhUE552RcAOcmJHj3xyZ2h7vMWzcwQI0hvn5tqHh3oSoclf9WgTl+0QqffWFG8MEVZZP1/OBglKZx52Q== + +"@rollup/rollup-linux-riscv64-gnu@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.53.5.tgz#c0e776c6193369ee16f8e9ebf6a6ec09828d603d" + integrity sha512-7OK5/GhxbnrMcxIFoYfhV/TkknarkYC1hqUw1wU2xUN3TVRLNT5FmBv4KkheSG2xZ6IEbRAhTooTV2+R5Tk0lQ== + +"@rollup/rollup-linux-riscv64-musl@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.53.5.tgz#6fcfb9084822036b9e4ff66e5c8b472d77226fae" + integrity sha512-GwuDBE/PsXaTa76lO5eLJTyr2k8QkPipAyOrs4V/KJufHCZBJ495VCGJol35grx9xryk4V+2zd3Ri+3v7NPh+w== + +"@rollup/rollup-linux-s390x-gnu@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.53.5.tgz#204bf1f758b65263adad3183d1ea7c9fc333e453" + integrity sha512-IAE1Ziyr1qNfnmiQLHBURAD+eh/zH1pIeJjeShleII7Vj8kyEm2PF77o+lf3WTHDpNJcu4IXJxNO0Zluro8bOw== + +"@rollup/rollup-linux-x64-gnu@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.53.5.tgz#704a927285c370b4481a77e5a6468ebc841f72ca" + integrity sha512-Pg6E+oP7GvZ4XwgRJBuSXZjcqpIW3yCBhK4BcsANvb47qMvAbCjR6E+1a/U2WXz1JJxp9/4Dno3/iSJLcm5auw== + +"@rollup/rollup-linux-x64-musl@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.53.5.tgz#3a7ccf6239f7efc6745b95075cf855b137cd0b52" + integrity sha512-txGtluxDKTxaMDzUduGP0wdfng24y1rygUMnmlUJ88fzCCULCLn7oE5kb2+tRB+MWq1QDZT6ObT5RrR8HFRKqg== + +"@rollup/rollup-openharmony-arm64@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.53.5.tgz#cb29644e4330b8d9aec0c594bf092222545db218" + integrity sha512-3DFiLPnTxiOQV993fMc+KO8zXHTcIjgaInrqlG8zDp1TlhYl6WgrOHuJkJQ6M8zHEcntSJsUp1XFZSY8C1DYbg== + +"@rollup/rollup-win32-arm64-msvc@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.53.5.tgz#bae9daf924900b600f6a53c0659b12cb2f6c33e4" + integrity sha512-nggc/wPpNTgjGg75hu+Q/3i32R00Lq1B6N1DO7MCU340MRKL3WZJMjA9U4K4gzy3dkZPXm9E1Nc81FItBVGRlA== + +"@rollup/rollup-win32-ia32-msvc@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.53.5.tgz#48002d2b9e4ab93049acd0d399c7aa7f7c5f363c" + integrity sha512-U/54pTbdQpPLBdEzCT6NBCFAfSZMvmjr0twhnD9f4EIvlm9wy3jjQ38yQj1AGznrNO65EWQMgm/QUjuIVrYF9w== + +"@rollup/rollup-win32-x64-gnu@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.53.5.tgz#aa0344b25dc31f2d822caf886786e377b45e660b" + integrity sha512-2NqKgZSuLH9SXBBV2dWNRCZmocgSOx8OJSdpRaEcRlIfX8YrKxUT6z0F1NpvDVhOsl190UFTRh2F2WDWWCYp3A== + +"@rollup/rollup-win32-x64-msvc@4.53.5": + version "4.53.5" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.53.5.tgz#e0d19dffcf25f0fd86f50402a3413004003939e9" + integrity sha512-JRpZUhCfhZ4keB5v0fe02gQJy05GqboPOaxvjugW04RLSYYoB/9t2lx2u/tMs/Na/1NXfY8QYjgRljRpN+MjTQ== + "@rtsao/scc@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" @@ -2913,6 +3033,11 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== +"@types/estree@1.0.8": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" + integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== + "@types/graceful-fs@^4.1.3": version "4.1.9" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" @@ -5560,35 +5685,37 @@ esbuild@^0.14.27: esbuild-windows-64 "0.14.27" esbuild-windows-arm64 "0.14.27" -esbuild@^0.23.1: - version "0.23.1" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.23.1.tgz#40fdc3f9265ec0beae6f59824ade1bd3d3d2dab8" - integrity sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg== +esbuild@^0.27.0: + version "0.27.2" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.27.2.tgz#d83ed2154d5813a5367376bb2292a9296fc83717" + integrity sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw== optionalDependencies: - "@esbuild/aix-ppc64" "0.23.1" - "@esbuild/android-arm" "0.23.1" - "@esbuild/android-arm64" "0.23.1" - "@esbuild/android-x64" "0.23.1" - "@esbuild/darwin-arm64" "0.23.1" - "@esbuild/darwin-x64" "0.23.1" - "@esbuild/freebsd-arm64" "0.23.1" - "@esbuild/freebsd-x64" "0.23.1" - "@esbuild/linux-arm" "0.23.1" - "@esbuild/linux-arm64" "0.23.1" - "@esbuild/linux-ia32" "0.23.1" - "@esbuild/linux-loong64" "0.23.1" - "@esbuild/linux-mips64el" "0.23.1" - "@esbuild/linux-ppc64" "0.23.1" - "@esbuild/linux-riscv64" "0.23.1" - "@esbuild/linux-s390x" "0.23.1" - "@esbuild/linux-x64" "0.23.1" - "@esbuild/netbsd-x64" "0.23.1" - "@esbuild/openbsd-arm64" "0.23.1" - "@esbuild/openbsd-x64" "0.23.1" - "@esbuild/sunos-x64" "0.23.1" - "@esbuild/win32-arm64" "0.23.1" - "@esbuild/win32-ia32" "0.23.1" - "@esbuild/win32-x64" "0.23.1" + "@esbuild/aix-ppc64" "0.27.2" + "@esbuild/android-arm" "0.27.2" + "@esbuild/android-arm64" "0.27.2" + "@esbuild/android-x64" "0.27.2" + "@esbuild/darwin-arm64" "0.27.2" + "@esbuild/darwin-x64" "0.27.2" + "@esbuild/freebsd-arm64" "0.27.2" + "@esbuild/freebsd-x64" "0.27.2" + "@esbuild/linux-arm" "0.27.2" + "@esbuild/linux-arm64" "0.27.2" + "@esbuild/linux-ia32" "0.27.2" + "@esbuild/linux-loong64" "0.27.2" + "@esbuild/linux-mips64el" "0.27.2" + "@esbuild/linux-ppc64" "0.27.2" + "@esbuild/linux-riscv64" "0.27.2" + "@esbuild/linux-s390x" "0.27.2" + "@esbuild/linux-x64" "0.27.2" + "@esbuild/netbsd-arm64" "0.27.2" + "@esbuild/netbsd-x64" "0.27.2" + "@esbuild/openbsd-arm64" "0.27.2" + "@esbuild/openbsd-x64" "0.27.2" + "@esbuild/openharmony-arm64" "0.27.2" + "@esbuild/sunos-x64" "0.27.2" + "@esbuild/win32-arm64" "0.27.2" + "@esbuild/win32-ia32" "0.27.2" + "@esbuild/win32-x64" "0.27.2" escalade@^3.1.1, escalade@^3.1.2: version "3.1.2" @@ -6329,7 +6456,7 @@ fsevents@2.3.2: resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== -fsevents@^2.3.2, fsevents@~2.3.2: +fsevents@^2.3.2, fsevents@~2.3.2, fsevents@~2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== @@ -9654,6 +9781,11 @@ mz@^2.4.0: object-assign "^4.0.1" thenify-all "^1.0.0" +nanoid@^3.3.11: + version "3.3.11" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" + integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== + nanoid@^3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" @@ -10601,6 +10733,15 @@ postcss@^8.4.13: picocolors "^1.0.0" source-map-js "^1.0.2" +postcss@^8.5.6: + version "8.5.6" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.6.tgz#2825006615a619b4f62a9e7426cc120b349a8f3c" + integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg== + dependencies: + nanoid "^3.3.11" + picocolors "^1.1.1" + source-map-js "^1.2.1" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -11337,6 +11478,37 @@ rollup@^2.59.0: optionalDependencies: fsevents "~2.3.2" +rollup@^4.43.0: + version "4.53.5" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.53.5.tgz#820f46d435c207fd640256f34a0deadf8e95b118" + integrity sha512-iTNAbFSlRpcHeeWu73ywU/8KuU/LZmNCSxp6fjQkJBD3ivUb8tpDrXhIxEzA05HlYMEwmtaUnb3RP+YNv162OQ== + dependencies: + "@types/estree" "1.0.8" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.53.5" + "@rollup/rollup-android-arm64" "4.53.5" + "@rollup/rollup-darwin-arm64" "4.53.5" + "@rollup/rollup-darwin-x64" "4.53.5" + "@rollup/rollup-freebsd-arm64" "4.53.5" + "@rollup/rollup-freebsd-x64" "4.53.5" + "@rollup/rollup-linux-arm-gnueabihf" "4.53.5" + "@rollup/rollup-linux-arm-musleabihf" "4.53.5" + "@rollup/rollup-linux-arm64-gnu" "4.53.5" + "@rollup/rollup-linux-arm64-musl" "4.53.5" + "@rollup/rollup-linux-loong64-gnu" "4.53.5" + "@rollup/rollup-linux-ppc64-gnu" "4.53.5" + "@rollup/rollup-linux-riscv64-gnu" "4.53.5" + "@rollup/rollup-linux-riscv64-musl" "4.53.5" + "@rollup/rollup-linux-s390x-gnu" "4.53.5" + "@rollup/rollup-linux-x64-gnu" "4.53.5" + "@rollup/rollup-linux-x64-musl" "4.53.5" + "@rollup/rollup-openharmony-arm64" "4.53.5" + "@rollup/rollup-win32-arm64-msvc" "4.53.5" + "@rollup/rollup-win32-ia32-msvc" "4.53.5" + "@rollup/rollup-win32-x64-gnu" "4.53.5" + "@rollup/rollup-win32-x64-msvc" "4.53.5" + fsevents "~2.3.2" + rrweb-cssom@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz#ed298055b97cbddcdeb278f904857629dec5e0e1" @@ -11777,6 +11949,11 @@ source-map-js@^1.0.2: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== +source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== + source-map-resolve@^0.5.0: version "0.5.3" resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" @@ -12400,7 +12577,7 @@ tiny-relative-date@^2.0.2: resolved "https://registry.yarnpkg.com/tiny-relative-date/-/tiny-relative-date-2.0.2.tgz#0c35c2a3ef87b80f311314918505aa86c2d44bc9" integrity sha512-rGxAbeL9z3J4pI2GtBEoFaavHdO4RKAU54hEuOef5kfx5aPqiQtbhYktMOTL5OA33db8BjsDcLXuNp+/v19PHw== -tinyglobby@^0.2.12, tinyglobby@^0.2.14: +tinyglobby@^0.2.12, tinyglobby@^0.2.14, tinyglobby@^0.2.15: version "0.2.15" resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.15.tgz#e228dd1e638cea993d2fdb4fcd2d4602a79951c2" integrity sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ== @@ -13060,6 +13237,20 @@ vite@^2.9.6: optionalDependencies: fsevents "~2.3.2" +vite@^7.3.0: + version "7.3.0" + resolved "https://registry.yarnpkg.com/vite/-/vite-7.3.0.tgz#066c7a835993a66e82004eac3e185d0d157fd658" + integrity sha512-dZwN5L1VlUBewiP6H9s2+B3e3Jg96D0vzN+Ry73sOefebhYr9f94wwkMNN/9ouoU8pV1BqA1d1zGk8928cx0rg== + dependencies: + esbuild "^0.27.0" + fdir "^6.5.0" + picomatch "^4.0.3" + postcss "^8.5.6" + rollup "^4.43.0" + tinyglobby "^0.2.15" + optionalDependencies: + fsevents "~2.3.3" + vlq@^0.2.1: version "0.2.3" resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26"