compat: normalize OKLCH color syntax for older iOS Safari, closes #990 (#2150)

This commit is contained in:
Huang Xin
2025-10-01 13:59:45 +08:00
committed by GitHub
parent cdd274e5ca
commit d8943fc0c5
12 changed files with 113 additions and 79 deletions
+1
View File
@@ -120,6 +120,7 @@
"@types/uuid": "^10.0.0",
"@vitejs/plugin-react": "^4.7.0",
"autoprefixer": "^10.4.20",
"caniuse-lite": "^1.0.30001746",
"cpx2": "^8.0.0",
"daisyui": "^4.12.24",
"dotenv-cli": "^7.4.4",
+1 -2
View File
@@ -344,8 +344,7 @@ export default function AuthPage() {
return isTauriAppPlatform() ? (
<div
className={clsx(
'bg-base-100 inset-0 flex select-none flex-col items-center overflow-hidden',
'h-[100vh] supports-[height:100dvh]:h-[100dvh]',
'bg-base-100 inset-0 flex h-[100vh] select-none flex-col items-center overflow-hidden',
appService?.hasRoundedWindow && isRoundedWindow && 'window-border rounded-window',
)}
>
+1 -2
View File
@@ -630,8 +630,7 @@ const LibraryPageContent = ({ searchParams }: { searchParams: ReadonlyURLSearchP
ref={pageRef}
aria-label='Your Library'
className={clsx(
'library-page bg-base-200 text-base-content flex select-none flex-col overflow-hidden',
'h-[100vh] supports-[height:100dvh]:h-[100dvh]',
'library-page bg-base-200 text-base-content flex h-[100vh] select-none flex-col overflow-hidden',
appService?.hasRoundedWindow && isRoundedWindow && 'window-border rounded-window',
)}
>
@@ -141,8 +141,7 @@ const Reader: React.FC<{ ids?: string }> = ({ ids }) => {
return libraryLoaded && settings.globalReadSettings ? (
<div
className={clsx(
`reader-page bg-base-100 text-base-content select-none overflow-hidden`,
'h-[100vh] supports-[height:100dvh]:h-[100dvh]',
'reader-page bg-base-100 text-base-content h-[100vh] select-none overflow-hidden',
appService?.hasRoundedWindow && isRoundedWindow && 'window-border rounded-window',
)}
>
@@ -184,7 +184,7 @@ const ReaderContent: React.FC<{ ids?: string; settings: SystemSettings }> = ({ i
setTimeout(() => setLoading(true), 200);
return (
loading && (
<div className='hero hero-content h-[100vh] supports-[height:100dvh]:h-[100dvh]'>
<div className='hero hero-content h-[100vh]'>
<Spinner loading={true} />
</div>
)
@@ -192,7 +192,7 @@ const ReaderContent: React.FC<{ ids?: string; settings: SystemSettings }> = ({ i
}
return (
<div className='reader-content flex h-[100vh] supports-[height:100dvh]:h-[100dvh]'>
<div className='reader-content flex h-[100vh]'>
<SideBar onGoToLibrary={handleCloseBooksToLibrary} />
<BooksGrid bookKeys={bookKeys} onCloseBook={handleCloseBook} />
<Notebook />
+1 -2
View File
@@ -340,8 +340,7 @@ const ProfilePage = () => {
return (
<div
className={clsx(
'bg-base-100 inset-0 select-none overflow-hidden',
'h-[100vh] supports-[height:100dvh]:h-[100dvh]',
'bg-base-100 inset-0 h-[100vh] select-none overflow-hidden',
appService?.hasRoundedWindow && isRoundedWindow && 'window-border rounded-window',
)}
>
@@ -87,8 +87,8 @@ export const AboutWindow = () => {
boxClassName='sm:!w-[480px] sm:!max-w-screen-sm sm:h-auto'
>
{isOpen && (
<div className='about-content flex flex-col items-center justify-center'>
<div className='flex flex-col items-center gap-2 px-8 py-2'>
<div className='about-content flex h-full flex-col items-center justify-center gap-4'>
<div className='flex flex-1 flex-col items-center justify-end gap-2 px-8 py-2'>
<div className='mb-2 mt-6'>
<Image src='/icon.png' alt='App Logo' className='h-20 w-20' width={64} height={64} />
</div>
@@ -121,9 +121,12 @@ export const AboutWindow = () => {
</div>
</div>
<div className='divider py-12 sm:py-2'></div>
<hr className='border-base-300 my-12 w-full sm:my-4' />
<div className='flex flex-col items-center gap-2 px-4 text-center' dir='ltr'>
<div
className='flex flex-1 flex-col items-center justify-start gap-2 px-4 text-center'
dir='ltr'
>
<p className='text-neutral-content text-sm'>
© {new Date().getFullYear()} Bilingify LLC. All rights reserved.
</p>
@@ -148,8 +151,8 @@ export const AboutWindow = () => {
</p>
<LegalLinks />
<SupportLinks />
</div>
<SupportLinks />
</div>
)}
</Dialog>
@@ -40,7 +40,7 @@ const Providers = ({ children }: { children: React.ReactNode }) => {
applyUILanguage(settings.globalViewSettings?.uiLanguage);
});
}
}, [appService]);
}, [appService, applyUILanguage]);
// Make sure appService is available in all children components
if (!appService) return;
+8 -8
View File
@@ -179,14 +179,14 @@ const generateCustomThemeVariables = (palette: Palette, fallbackIncluded = false
--n: ${hexToOklch(palette.neutral)};
--nc: ${hexToOklch(palette['neutral-content'])};
--in: 69.37% 0.047 231;
--inc: 100% 0 0;
--su: 78.15% 0.12 160;
--suc: 100% 0 0;
--wa: 90.69% 0.123 84;
--wac: 0% 0 0;
--er: 70.9% 0.184 22;
--erc: 100% 0 0;
--in: 69.37% 0.047 231deg;
--inc: 100% 0 0deg;
--su: 78.15% 0.12 160deg;
--suc: 100% 0 0deg;
--wa: 90.69% 0.123 84deg;
--wac: 0% 0 0deg;
--er: 70.9% 0.184 22deg;
--erc: 100% 0 0deg;
`;
const fallbackColors = `
+10 -6
View File
@@ -29,16 +29,20 @@ export function hexToOklch(hexColor: string): string {
// 5) Format as l% c h, with a bit of rounding
const lPercent = (L * 100).toFixed(4);
const cValue = C.toFixed(6);
const hValue = h.toFixed(6);
const cValue = Number(C.toFixed(6));
const hValue = Number(h.toFixed(3));
return `${lPercent}% ${cValue} ${hValue}`;
if (cValue === 0) {
return `${lPercent}% 0 0deg`;
}
return `${lPercent}% ${cValue} ${hValue}deg`;
}
export const getContrastOklch = (hexColor: string): string => {
return tinycolor(hexColor).isDark() ? '100% 0 0' : '0% 0 0';
return tinycolor(hexColor).isDark() ? '100% 0 0deg' : '0% 0 0deg';
};
export const getContrastHex = (hex: string): string => {
return tinycolor(hex).isDark() ? '#FFFFFF' : '#000000';
export const getContrastHex = (hexColor: string): string => {
return tinycolor(hexColor).isDark() ? '#FFFFFF' : '#000000';
};
-1
View File
@@ -11,7 +11,6 @@
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.9.1",
"@sindresorhus/tsconfig": "^6.0.0",
"caniuse-lite": "^1.0.30001731",
"eslint": "^9.28.0",
"eslint-config-prettier": "^9.1.0",
"husky": "^9.1.6",
+79 -48
View File
@@ -17,9 +17,6 @@ importers:
'@sindresorhus/tsconfig':
specifier: ^6.0.0
version: 6.0.0
caniuse-lite:
specifier: ^1.0.30001731
version: 1.0.30001731
eslint:
specifier: ^9.28.0
version: 9.28.0(jiti@1.21.6)
@@ -263,10 +260,13 @@ importers:
version: 10.0.0
'@vitejs/plugin-react':
specifier: ^4.7.0
version: 4.7.0(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0))
version: 4.7.0(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0))
autoprefixer:
specifier: ^10.4.20
version: 10.4.20(postcss@8.4.49)
caniuse-lite:
specifier: ^1.0.30001746
version: 1.0.30001746
cpx2:
specifier: ^8.0.0
version: 8.0.0
@@ -317,10 +317,10 @@ importers:
version: 5.7.2
vite-tsconfig-paths:
specifier: ^5.1.4
version: 5.1.4(typescript@5.7.2)(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0))
version: 5.1.4(typescript@5.7.2)(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0))
vitest:
specifier: ^3.2.4
version: 3.2.4(@types/debug@4.1.12)(@types/node@22.15.31)(jiti@1.21.6)(jsdom@26.1.0)(terser@5.43.1)(yaml@2.7.0)
version: 3.2.4(@types/debug@4.1.12)(@types/node@22.15.31)(jiti@1.21.6)(jsdom@26.1.0)(terser@5.44.0)(yaml@2.7.0)
wrangler:
specifier: ^4.31.0
version: 4.31.0
@@ -1927,6 +1927,9 @@ packages:
'@jridgewell/gen-mapping@0.3.12':
resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==}
'@jridgewell/gen-mapping@0.3.13':
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
'@jridgewell/gen-mapping@0.3.5':
resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
engines: {node: '>=6.0.0'}
@@ -1942,18 +1945,27 @@ packages:
'@jridgewell/source-map@0.3.10':
resolution: {integrity: sha512-0pPkgz9dY+bijgistcTTJ5mR+ocqRXLuhXHYdzoMmmoJ2C9S46RCm2GMUbatPEUK9Yjy26IrAy8D/M00lLkv+Q==}
'@jridgewell/source-map@0.3.11':
resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==}
'@jridgewell/source-map@0.3.6':
resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==}
'@jridgewell/sourcemap-codec@1.5.4':
resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==}
'@jridgewell/sourcemap-codec@1.5.5':
resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
'@jridgewell/trace-mapping@0.3.25':
resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
'@jridgewell/trace-mapping@0.3.29':
resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==}
'@jridgewell/trace-mapping@0.3.31':
resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
'@jridgewell/trace-mapping@0.3.9':
resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
@@ -3126,6 +3138,9 @@ packages:
'@types/node@22.17.0':
resolution: {integrity: sha512-bbAKTCqX5aNVryi7qXVMi+OkB3w/OyblodicMbvE38blyAz7GxXf6XYhklokijuPwwVg9sDLKRxt0ZHXQwZVfQ==}
'@types/node@22.18.8':
resolution: {integrity: sha512-pAZSHMiagDR7cARo/cch1f3rXy0AEXwsVsVH09FcyeJVAzCnGgmYis7P3JidtTUjyadhTeSo8TgRPswstghDaw==}
'@types/phoenix@1.6.6':
resolution: {integrity: sha512-PIzZZlEppgrpoT2QgbnDU+MMzuR6BbCjllj0bM70lWoejMeNJAxCchxnv7J3XFkI8MpygtRpzXrIlmWUBclP5A==}
@@ -3649,11 +3664,8 @@ packages:
resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
engines: {node: '>=6'}
caniuse-lite@1.0.30001695:
resolution: {integrity: sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw==}
caniuse-lite@1.0.30001731:
resolution: {integrity: sha512-lDdp2/wrOmTRWuoB5DpfNkC0rJDU8DqRa6nYL6HK6sytw70QMopt/NIc/9SM7ylItlBWfACXk0tEn37UWM/+mg==}
caniuse-lite@1.0.30001746:
resolution: {integrity: sha512-eA7Ys/DGw+pnkWWSE/id29f2IcPHVoE8wxtvE5JdvD2V28VTDPy1yEeo11Guz0sJ4ZeGRcm3uaTcAqK1LXaphA==}
chai@5.2.1:
resolution: {integrity: sha512-5nFxhUrX0PqtyogoYOA8IPswy5sZFTOsBFl/9bNsmDLgsxYTzSZQJDPppDnZPTQbzSEm0hqGjWPzRemQCYbD6A==}
@@ -4054,8 +4066,8 @@ packages:
resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==}
engines: {node: '>=10.13.0'}
enhanced-resolve@5.18.2:
resolution: {integrity: sha512-6Jw4sE1maoRJo3q8MsSIn2onJFbLTOjY9hlx4DZXmOKvLRd1Ok2kXmAGXaafL2+ijsJZ1ClYbl/pmqr9+k4iUQ==}
enhanced-resolve@5.18.3:
resolution: {integrity: sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==}
engines: {node: '>=10.13.0'}
enquirer@2.4.1:
@@ -6230,8 +6242,8 @@ packages:
resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
engines: {node: '>=6'}
tapable@2.2.2:
resolution: {integrity: sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==}
tapable@2.2.3:
resolution: {integrity: sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg==}
engines: {node: '>=6'}
teex@1.0.1:
@@ -6271,8 +6283,8 @@ packages:
engines: {node: '>=10'}
hasBin: true
terser@5.43.1:
resolution: {integrity: sha512-+6erLbBm0+LROX2sPXlUYx/ux5PyE9K/a92Wrt6oA+WDAoFTdpHE5tCYCI5PNzq2y8df4rA+QgHLJuR4jNymsg==}
terser@5.44.0:
resolution: {integrity: sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w==}
engines: {node: '>=10'}
hasBin: true
@@ -9378,6 +9390,11 @@ snapshots:
'@jridgewell/sourcemap-codec': 1.5.4
'@jridgewell/trace-mapping': 0.3.29
'@jridgewell/gen-mapping@0.3.13':
dependencies:
'@jridgewell/sourcemap-codec': 1.5.5
'@jridgewell/trace-mapping': 0.3.31
'@jridgewell/gen-mapping@0.3.5':
dependencies:
'@jridgewell/set-array': 1.2.1
@@ -9393,6 +9410,11 @@ snapshots:
'@jridgewell/gen-mapping': 0.3.12
'@jridgewell/trace-mapping': 0.3.29
'@jridgewell/source-map@0.3.11':
dependencies:
'@jridgewell/gen-mapping': 0.3.13
'@jridgewell/trace-mapping': 0.3.31
'@jridgewell/source-map@0.3.6':
dependencies:
'@jridgewell/gen-mapping': 0.3.5
@@ -9400,6 +9422,8 @@ snapshots:
'@jridgewell/sourcemap-codec@1.5.4': {}
'@jridgewell/sourcemap-codec@1.5.5': {}
'@jridgewell/trace-mapping@0.3.25':
dependencies:
'@jridgewell/resolve-uri': 3.1.2
@@ -9410,6 +9434,11 @@ snapshots:
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.4
'@jridgewell/trace-mapping@0.3.31':
dependencies:
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.5
'@jridgewell/trace-mapping@0.3.9':
dependencies:
'@jridgewell/resolve-uri': 3.1.2
@@ -10800,6 +10829,10 @@ snapshots:
dependencies:
undici-types: 6.21.0
'@types/node@22.18.8':
dependencies:
undici-types: 6.21.0
'@types/phoenix@1.6.6': {}
'@types/prop-types@15.7.13': {}
@@ -10930,7 +10963,7 @@ snapshots:
'@typescript-eslint/types': 8.16.0
eslint-visitor-keys: 4.2.0
'@vitejs/plugin-react@4.7.0(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0))':
'@vitejs/plugin-react@4.7.0(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0))':
dependencies:
'@babel/core': 7.28.0
'@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.0)
@@ -10938,7 +10971,7 @@ snapshots:
'@rolldown/pluginutils': 1.0.0-beta.27
'@types/babel__core': 7.20.5
react-refresh: 0.17.0
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0)
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0)
transitivePeerDependencies:
- supports-color
@@ -10950,13 +10983,13 @@ snapshots:
chai: 5.2.1
tinyrainbow: 2.0.0
'@vitest/mocker@3.2.4(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0))':
'@vitest/mocker@3.2.4(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0))':
dependencies:
'@vitest/spy': 3.2.4
estree-walker: 3.0.3
magic-string: 0.30.17
optionalDependencies:
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0)
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0)
'@vitest/pretty-format@3.2.4':
dependencies:
@@ -11268,7 +11301,7 @@ snapshots:
autoprefixer@10.4.20(postcss@8.4.49):
dependencies:
browserslist: 4.24.2
caniuse-lite: 1.0.30001695
caniuse-lite: 1.0.30001746
fraction.js: 4.3.7
normalize-range: 0.1.2
picocolors: 1.1.1
@@ -11361,14 +11394,14 @@ snapshots:
browserslist@4.24.2:
dependencies:
caniuse-lite: 1.0.30001695
caniuse-lite: 1.0.30001746
electron-to-chromium: 1.5.67
node-releases: 2.0.18
update-browserslist-db: 1.1.1(browserslist@4.24.2)
browserslist@4.24.4:
dependencies:
caniuse-lite: 1.0.30001731
caniuse-lite: 1.0.30001746
electron-to-chromium: 1.5.84
node-releases: 2.0.19
update-browserslist-db: 1.1.1(browserslist@4.24.4)
@@ -11408,9 +11441,7 @@ snapshots:
camelcase@5.3.1: {}
caniuse-lite@1.0.30001695: {}
caniuse-lite@1.0.30001731: {}
caniuse-lite@1.0.30001746: {}
chai@5.2.1:
dependencies:
@@ -11771,10 +11802,10 @@ snapshots:
graceful-fs: 4.2.11
tapable: 2.2.1
enhanced-resolve@5.18.2:
enhanced-resolve@5.18.3:
dependencies:
graceful-fs: 4.2.11
tapable: 2.2.2
tapable: 2.2.3
enquirer@2.4.1:
dependencies:
@@ -12836,7 +12867,7 @@ snapshots:
jest-worker@27.5.1:
dependencies:
'@types/node': 22.17.0
'@types/node': 22.18.8
merge-stream: 2.0.0
supports-color: 8.1.1
@@ -13129,7 +13160,7 @@ snapshots:
dependencies:
'@next/env': 15.5.0
'@swc/helpers': 0.5.15
caniuse-lite: 1.0.30001731
caniuse-lite: 1.0.30001746
postcss: 8.4.31
react: 19.0.0
react-dom: 19.0.0(react@19.0.0)
@@ -14174,7 +14205,7 @@ snapshots:
tapable@2.2.1: {}
tapable@2.2.2: {}
tapable@2.2.3: {}
teex@1.0.1:
dependencies:
@@ -14191,11 +14222,11 @@ snapshots:
terser-webpack-plugin@5.3.14(webpack@5.97.1):
dependencies:
'@jridgewell/trace-mapping': 0.3.29
'@jridgewell/trace-mapping': 0.3.31
jest-worker: 27.5.1
schema-utils: 4.3.2
serialize-javascript: 6.0.2
terser: 5.43.1
terser: 5.44.0
webpack: 5.97.1
terser@5.16.9:
@@ -14212,9 +14243,9 @@ snapshots:
commander: 2.20.3
source-map-support: 0.5.21
terser@5.43.1:
terser@5.44.0:
dependencies:
'@jridgewell/source-map': 0.3.10
'@jridgewell/source-map': 0.3.11
acorn: 8.15.0
commander: 2.20.3
source-map-support: 0.5.21
@@ -14503,13 +14534,13 @@ snapshots:
replace-ext: 2.0.0
teex: 1.0.1
vite-node@3.2.4(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0):
vite-node@3.2.4(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0):
dependencies:
cac: 6.7.14
debug: 4.4.1
es-module-lexer: 1.7.0
pathe: 2.0.3
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0)
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0)
transitivePeerDependencies:
- '@types/node'
- jiti
@@ -14524,18 +14555,18 @@ snapshots:
- tsx
- yaml
vite-tsconfig-paths@5.1.4(typescript@5.7.2)(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0)):
vite-tsconfig-paths@5.1.4(typescript@5.7.2)(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0)):
dependencies:
debug: 4.4.0
globrex: 0.1.2
tsconfck: 3.1.6(typescript@5.7.2)
optionalDependencies:
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0)
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0)
transitivePeerDependencies:
- supports-color
- typescript
vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0):
vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0):
dependencies:
esbuild: 0.25.4
fdir: 6.4.6(picomatch@4.0.3)
@@ -14547,14 +14578,14 @@ snapshots:
'@types/node': 22.15.31
fsevents: 2.3.3
jiti: 1.21.6
terser: 5.43.1
terser: 5.44.0
yaml: 2.7.0
vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.15.31)(jiti@1.21.6)(jsdom@26.1.0)(terser@5.43.1)(yaml@2.7.0):
vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.15.31)(jiti@1.21.6)(jsdom@26.1.0)(terser@5.44.0)(yaml@2.7.0):
dependencies:
'@types/chai': 5.2.2
'@vitest/expect': 3.2.4
'@vitest/mocker': 3.2.4(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0))
'@vitest/mocker': 3.2.4(vite@7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0))
'@vitest/pretty-format': 3.2.4
'@vitest/runner': 3.2.4
'@vitest/snapshot': 3.2.4
@@ -14572,8 +14603,8 @@ snapshots:
tinyglobby: 0.2.14
tinypool: 1.1.1
tinyrainbow: 2.0.0
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0)
vite-node: 3.2.4(@types/node@22.15.31)(jiti@1.21.6)(terser@5.43.1)(yaml@2.7.0)
vite: 7.0.6(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0)
vite-node: 3.2.4(@types/node@22.15.31)(jiti@1.21.6)(terser@5.44.0)(yaml@2.7.0)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/debug': 4.1.12
@@ -14650,7 +14681,7 @@ snapshots:
acorn: 8.15.0
browserslist: 4.24.4
chrome-trace-event: 1.0.4
enhanced-resolve: 5.18.2
enhanced-resolve: 5.18.3
es-module-lexer: 1.7.0
eslint-scope: 5.1.1
events: 3.3.0
@@ -14661,7 +14692,7 @@ snapshots:
mime-types: 2.1.35
neo-async: 2.6.2
schema-utils: 3.3.0
tapable: 2.2.2
tapable: 2.2.3
terser-webpack-plugin: 5.3.14(webpack@5.97.1)
watchpack: 2.4.4
webpack-sources: 3.3.3