From 51808edcc3e6657b527a0e610fc5e27e4c43aff3 Mon Sep 17 00:00:00 2001 From: Kalle <38327916+Sendouc@users.noreply.github.com> Date: Fri, 12 Jun 2026 21:18:09 +0300 Subject: [PATCH] Get rid of dotenv & tsx deps --- app/utils/team-name-data.ts | 2 +- docs/dev/scripts.md | 18 +- docs/load-testing.md | 4 +- e2e/helpers/playwright.ts | 7 +- ley.config.cjs | 7 +- package.json | 6 +- pnpm-lock.yaml | 359 ++---------------- scripts/add-badge-winners.ts | 1 - scripts/add-badge.ts | 1 - .../add-leaderboard-teams-to-tournament.ts | 1 - scripts/add-tos.ts | 1 - .../backfill-tournament-result-divisions.ts | 1 - scripts/backfill-tournament-tiers.ts | 2 +- scripts/calc-seeding-skills.ts | 1 - .../calc-tournament-summary-result-arrays.ts | 1 - scripts/check-season-status.ts | 1 - scripts/create-league-divisions.ts | 3 +- scripts/delete-badge.ts | 1 - scripts/delete-skill.ts | 1 - scripts/delete-skills-without-results.ts | 1 - scripts/delete-tournament-team-maps.ts | 1 - scripts/delete-user.ts | 1 - scripts/disband-team.ts | 1 - scripts/fc-lookup.ts | 1 - scripts/map-popularity-q.ts | 1 - scripts/map-popularity.ts | 1 - scripts/mass-add-tournaments-to-org.ts | 1 - scripts/migrate-tournament-logos-to-s3.ts | 1 - scripts/nuke-reported-weapons.ts | 1 - scripts/nuke-season-data.ts | 1 - scripts/org-monthly-active-players.ts | 1 - scripts/placements/index.ts | 2 - scripts/recent-fcs.ts | 1 - scripts/rename-badge.ts | 1 - scripts/season-initial-powers.ts | 1 - scripts/seed-images.ts | 1 - scripts/setup.ts | 1 - scripts/skip-plus.ts | 1 - scripts/swap-users.ts | 1 - scripts/sync-homemade-badges.ts | 2 - scripts/sync-splatoon-rotations.ts | 1 - scripts/sync-tournament-vods.ts | 3 +- scripts/sync-xp-badges.ts | 1 - scripts/tournament-tiers-experiment.ts | 2 +- scripts/transfer-weapon-pools.ts | 1 - scripts/unlock-league-matches.ts | 3 +- scripts/unskip-plus.ts | 1 - scripts/update-event-name.ts | 1 - 48 files changed, 63 insertions(+), 391 deletions(-) diff --git a/app/utils/team-name-data.ts b/app/utils/team-name-data.ts index 41825eb80..6ef2d0408 100644 --- a/app/utils/team-name-data.ts +++ b/app/utils/team-name-data.ts @@ -1,5 +1,5 @@ // Auto-generated team name data from adj.json and sub.json -// Regenerate with: pnpm exec tsx scripts/generate-team-names.ts +// Regenerate with: pnpm exec vite-node scripts/generate-team-names.ts export const ADJECTIVES = [ "Inkless", diff --git a/docs/dev/scripts.md b/docs/dev/scripts.md index 88e34c91f..8e62097e9 100644 --- a/docs/dev/scripts.md +++ b/docs/dev/scripts.md @@ -7,19 +7,19 @@ Note: These are mostly useful if you are running the site in production as an ad ## Add new badge to the database ```bash -pnpm exec tsx scripts/add-badge.ts fire_green "Octofin Eliteboard" +pnpm exec vite-node scripts/add-badge.ts fire_green "Octofin Eliteboard" ``` ## Rename display name of a badge ```bash -pnpm exec tsx scripts/rename-badge.ts 10 "New 4v4 Sundaes" +pnpm exec vite-node scripts/rename-badge.ts 10 "New 4v4 Sundaes" ``` ## Add many badge owners ```bash -pnpm exec tsx scripts/add-badge-winners.ts 10 "750705955909664791,79237403620945920" +pnpm exec vite-node scripts/add-badge-winners.ts 10 "750705955909664791,79237403620945920" ``` ## Converting gifs (badges) to thumbnail (.png) @@ -48,19 +48,19 @@ Note: it only works with Node 16. 1. Update `CURRENT_PATCH` constants 1. Update `PATCHES` constant with the late patch + remove the oldest 1. Update the stage list in `stage-ids.ts` and `create-misc-json.ts`. Add images from Lean's repository and avify them. -1. `pnpm exec tsx scripts/create-misc-json.ts` -1. `pnpm exec tsx scripts/create-gear-json.ts` -1. `pnpm exec tsx scripts/create-analyzer-json.ts` +1. `pnpm exec vite-node scripts/create-misc-json.ts` +1. `pnpm exec vite-node scripts/create-gear-json.ts` +1. `pnpm exec vite-node scripts/create-analyzer-json.ts` 8a. Double check that no hard-coded special damages changed -1. `pnpm exec tsx scripts/create-object-dmg-json.ts` +1. `pnpm exec vite-node scripts/create-object-dmg-json.ts` 1. Fill new weapon IDs by category to `weapon-ids.ts` (easy to take from the diff of English weapons.json) 1. Get gear IDs for each slot from /output folder and update `gear-ids.ts`. 1. Replace `object-dmg.json` with the `object-dmg.json` in /output folder 1. Replace `weapon-params.ts` with the `params.json` in /output folder 1. Delete all images inside `main-weapons`, `main-weapons-outlined`, `main-weapons-outlined-2` and `gear` folders. 1. Replace with images from Lean's repository. -1. Run the `pnpm exec tsx scripts/replace-img-names.ts` command -1. Run the `pnpm exec tsx scripts/replace-weapon-names.ts` command +1. Run the `pnpm exec vite-node scripts/replace-img-names.ts` command +1. Run the `pnpm exec vite-node scripts/replace-weapon-names.ts` command 1. Run the .avif generating command in each image folder. 2. Update manually any languages that use English `gear.json` and `weapons.json` files diff --git a/docs/load-testing.md b/docs/load-testing.md index 684d54c26..fc3580c1d 100644 --- a/docs/load-testing.md +++ b/docs/load-testing.md @@ -100,7 +100,7 @@ db.close(); Run with: ```bash -pnpm exec tsx profile-query.ts +pnpm exec vite-node profile-query.ts ``` ## Step 3: Analyze Query Plans @@ -246,7 +246,7 @@ console.log(`Rows: ${result.length}`); db.close(); EOF -pnpm exec tsx profile.ts +pnpm exec vite-node profile.ts # 3. Clean up rm profile.ts diff --git a/e2e/helpers/playwright.ts b/e2e/helpers/playwright.ts index d5c813608..a452368a8 100644 --- a/e2e/helpers/playwright.ts +++ b/e2e/helpers/playwright.ts @@ -4,12 +4,15 @@ import { type Locator, type Page, } from "@playwright/test"; -import dotenv from "dotenv"; import { ADMIN_ID } from "~/features/admin/admin-constants"; import type { SeedVariation } from "~/features/api-private/routes/seed"; import { tournamentBracketsPage } from "~/utils/urls"; -dotenv.config(); +try { + process.loadEnvFile(); +} catch { + // .env is optional; in CI env vars come from the host (e2e-tests.yml creates none) +} export const E2E_BASE_PORT = Number(process.env.PORT || 5173) + 500; type WorkerFixtures = { diff --git a/ley.config.cjs b/ley.config.cjs index b843fd5fe..36752528d 100644 --- a/ley.config.cjs +++ b/ley.config.cjs @@ -1,5 +1,10 @@ const path = require("node:path"); -require("dotenv").config(); + +try { + process.loadEnvFile(); +} catch { + // .env is optional; in production DB_PATH comes from the host environment +} module.exports = { database: process.env.DB_PATH, diff --git a/package.json b/package.json index 58b354f4d..7081b4de2 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "check-translation-jsons": "node --experimental-strip-types scripts/check-translation-jsons.ts", "check-translation-jsons:no-write": "node --experimental-strip-types scripts/check-translation-jsons.ts --no-write", "check-homemade-badges": "node --experimental-strip-types scripts/check-homemade-badges.ts", - "check-articles": "tsx scripts/check-articles.ts", + "check-articles": "vite-node scripts/check-articles.ts", "refresh-prod-db": "node --experimental-strip-types scripts/refresh-prod-db.ts && pnpm run migrate:prod", "biome:check": "biome check --error-on-warnings .", "biome:fix": "biome check --error-on-warnings --write .", @@ -35,7 +35,7 @@ "setup": "cross-env DB_PATH=db.sqlite3 vite-node ./scripts/setup.ts", "i18n:sync": "i18next-locales-sync -e true -p en -s da de es-ES es-US fr-CA fr-EU he it ja ko nl pl pt-BR ru zh -l locales && pnpm run biome:fix", "knip": "knip", - "sync-weapon-params": "tsx scripts/sync-weapon-params.ts" + "sync-weapon-params": "vite-node scripts/sync-weapon-params.ts" }, "dependencies": { "@aws-sdk/client-s3": "3.1061.0", @@ -116,12 +116,10 @@ "@vitest/ui": "4.1.8", "babel-plugin-react-compiler": "19.1.0-rc.3", "cross-env": "10.1.0", - "dotenv": "17.4.2", "i18next-locales-sync": "2.1.1", "knip": "6.15.0", "ley": "0.8.1", "sql-formatter": "15.8.0", - "tsx": "4.22.4", "typescript": "6.0.3", "vite": "8.0.16", "vite-node": "6.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1e683a86e..4b94e95d2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -207,7 +207,7 @@ importers: version: 1.60.0 '@react-router/dev': specifier: 7.16.0 - version: 7.16.0(@react-router/serve@7.15.0(patch_hash=38a61caab4f8dc67c82ecfb17507d5a650ea7b632b4e58a369c0aa4583611c87)(react-router@7.16.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(typescript@6.0.3))(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(react-router@7.16.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(tsx@4.22.4)(typescript@6.0.3)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0))(yaml@2.9.0) + version: 7.16.0(@react-router/serve@7.15.0(patch_hash=38a61caab4f8dc67c82ecfb17507d5a650ea7b632b4e58a369c0aa4583611c87)(react-router@7.16.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(typescript@6.0.3))(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(react-router@7.16.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(typescript@6.0.3)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0))(yaml@2.9.0) '@types/better-sqlite3': specifier: 7.6.13 version: 7.6.13 @@ -231,7 +231,7 @@ importers: version: 3.6.4 '@vitest/browser-playwright': specifier: 4.1.8 - version: 4.1.8(playwright@1.60.0)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0))(vitest@4.1.8) + version: 4.1.8(playwright@1.60.0)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0))(vitest@4.1.8) '@vitest/ui': specifier: 4.1.8 version: 4.1.8(vitest@4.1.8) @@ -241,9 +241,6 @@ importers: cross-env: specifier: 10.1.0 version: 10.1.0 - dotenv: - specifier: 17.4.2 - version: 17.4.2 i18next-locales-sync: specifier: 2.1.1 version: 2.1.1 @@ -256,24 +253,21 @@ importers: sql-formatter: specifier: 15.8.0 version: 15.8.0 - tsx: - specifier: 4.22.4 - version: 4.22.4 typescript: specifier: 6.0.3 version: 6.0.3 vite: specifier: 8.0.16 - version: 8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0) + version: 8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0) vite-node: specifier: 6.0.0 - version: 6.0.0(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0) + version: 6.0.0(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0) vite-plugin-babel: specifier: 1.7.3 - version: 1.7.3(@babel/core@7.29.7)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)) + version: 1.7.3(@babel/core@7.29.7)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)) vitest: specifier: 4.1.8 - version: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)) + version: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)) vitest-browser-react: specifier: 2.2.0 version: 2.2.0(@types/react-dom@19.2.3(@types/react@19.2.16))(@types/react@19.2.16)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.8) @@ -666,312 +660,156 @@ packages: cpu: [ppc64] os: [aix] - '@esbuild/aix-ppc64@0.28.0': - resolution: {integrity: sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - '@esbuild/android-arm64@0.27.7': resolution: {integrity: sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==} engines: {node: '>=18'} cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.28.0': - resolution: {integrity: sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - '@esbuild/android-arm@0.27.7': resolution: {integrity: sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==} engines: {node: '>=18'} cpu: [arm] os: [android] - '@esbuild/android-arm@0.28.0': - resolution: {integrity: sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - '@esbuild/android-x64@0.27.7': resolution: {integrity: sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==} engines: {node: '>=18'} cpu: [x64] os: [android] - '@esbuild/android-x64@0.28.0': - resolution: {integrity: sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - '@esbuild/darwin-arm64@0.27.7': resolution: {integrity: sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.28.0': - resolution: {integrity: sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - '@esbuild/darwin-x64@0.27.7': resolution: {integrity: sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==} engines: {node: '>=18'} cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.28.0': - resolution: {integrity: sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - '@esbuild/freebsd-arm64@0.27.7': resolution: {integrity: sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.28.0': - resolution: {integrity: sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - '@esbuild/freebsd-x64@0.27.7': resolution: {integrity: sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.28.0': - resolution: {integrity: sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - '@esbuild/linux-arm64@0.27.7': resolution: {integrity: sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==} engines: {node: '>=18'} cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.28.0': - resolution: {integrity: sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - '@esbuild/linux-arm@0.27.7': resolution: {integrity: sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==} engines: {node: '>=18'} cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.28.0': - resolution: {integrity: sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - '@esbuild/linux-ia32@0.27.7': resolution: {integrity: sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==} engines: {node: '>=18'} cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.28.0': - resolution: {integrity: sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - '@esbuild/linux-loong64@0.27.7': resolution: {integrity: sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==} engines: {node: '>=18'} cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.28.0': - resolution: {integrity: sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - '@esbuild/linux-mips64el@0.27.7': resolution: {integrity: sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.28.0': - resolution: {integrity: sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - '@esbuild/linux-ppc64@0.27.7': resolution: {integrity: sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.28.0': - resolution: {integrity: sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - '@esbuild/linux-riscv64@0.27.7': resolution: {integrity: sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.28.0': - resolution: {integrity: sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - '@esbuild/linux-s390x@0.27.7': resolution: {integrity: sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==} engines: {node: '>=18'} cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.28.0': - resolution: {integrity: sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - '@esbuild/linux-x64@0.27.7': resolution: {integrity: sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==} engines: {node: '>=18'} cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.28.0': - resolution: {integrity: sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - '@esbuild/netbsd-arm64@0.27.7': resolution: {integrity: sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-arm64@0.28.0': - resolution: {integrity: sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [netbsd] - '@esbuild/netbsd-x64@0.27.7': resolution: {integrity: sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.28.0': - resolution: {integrity: sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - '@esbuild/openbsd-arm64@0.27.7': resolution: {integrity: sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-arm64@0.28.0': - resolution: {integrity: sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - '@esbuild/openbsd-x64@0.27.7': resolution: {integrity: sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.28.0': - resolution: {integrity: sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - '@esbuild/openharmony-arm64@0.27.7': resolution: {integrity: sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==} engines: {node: '>=18'} cpu: [arm64] os: [openharmony] - '@esbuild/openharmony-arm64@0.28.0': - resolution: {integrity: sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openharmony] - '@esbuild/sunos-x64@0.27.7': resolution: {integrity: sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==} engines: {node: '>=18'} cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.28.0': - resolution: {integrity: sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - '@esbuild/win32-arm64@0.27.7': resolution: {integrity: sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==} engines: {node: '>=18'} cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.28.0': - resolution: {integrity: sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - '@esbuild/win32-ia32@0.27.7': resolution: {integrity: sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==} engines: {node: '>=18'} cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.28.0': - resolution: {integrity: sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - '@esbuild/win32-x64@0.27.7': resolution: {integrity: sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==} engines: {node: '>=18'} cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.28.0': - resolution: {integrity: sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - '@faker-js/faker@10.4.0': resolution: {integrity: sha512-sDBWI3yLy8EcDzgobvJTWq1MJYzAkQdpjXuPukga9wXonhpMRvd1Izuo2Qgwey2OiEoRIBr35RMU9HJRoOHzpw==} engines: {node: ^20.19.0 || ^22.13.0 || ^23.5.0 || >=24.0.0, npm: '>=10'} @@ -2931,10 +2769,6 @@ packages: resolution: {integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==} engines: {node: '>=12'} - dotenv@17.4.2: - resolution: {integrity: sha512-nI4U3TottKAcAD9LLud4Cb7b2QztQMUEfHbvhTH09bqXTxnSie8WnjPALV/WMCrJZ6UV/qHJ6L03OqO3LcdYZw==} - engines: {node: '>=12'} - dunder-proto@1.0.1: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} @@ -2994,11 +2828,6 @@ packages: engines: {node: '>=18'} hasBin: true - esbuild@0.28.0: - resolution: {integrity: sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==} - engines: {node: '>=18'} - hasBin: true - escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -4422,11 +4251,6 @@ packages: tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - tsx@4.22.4: - resolution: {integrity: sha512-X8EX+XV4QR5xCsrgxaED954zTDfY8KqlDtskKEL0cHhyS/P8b4IFOvGDQpsC9Q1XnLq915wEfwwY/zzskCtmhg==} - engines: {node: '>=18.0.0'} - hasBin: true - tunnel-agent@0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} @@ -5356,159 +5180,81 @@ snapshots: '@esbuild/aix-ppc64@0.27.7': optional: true - '@esbuild/aix-ppc64@0.28.0': - optional: true - '@esbuild/android-arm64@0.27.7': optional: true - '@esbuild/android-arm64@0.28.0': - optional: true - '@esbuild/android-arm@0.27.7': optional: true - '@esbuild/android-arm@0.28.0': - optional: true - '@esbuild/android-x64@0.27.7': optional: true - '@esbuild/android-x64@0.28.0': - optional: true - '@esbuild/darwin-arm64@0.27.7': optional: true - '@esbuild/darwin-arm64@0.28.0': - optional: true - '@esbuild/darwin-x64@0.27.7': optional: true - '@esbuild/darwin-x64@0.28.0': - optional: true - '@esbuild/freebsd-arm64@0.27.7': optional: true - '@esbuild/freebsd-arm64@0.28.0': - optional: true - '@esbuild/freebsd-x64@0.27.7': optional: true - '@esbuild/freebsd-x64@0.28.0': - optional: true - '@esbuild/linux-arm64@0.27.7': optional: true - '@esbuild/linux-arm64@0.28.0': - optional: true - '@esbuild/linux-arm@0.27.7': optional: true - '@esbuild/linux-arm@0.28.0': - optional: true - '@esbuild/linux-ia32@0.27.7': optional: true - '@esbuild/linux-ia32@0.28.0': - optional: true - '@esbuild/linux-loong64@0.27.7': optional: true - '@esbuild/linux-loong64@0.28.0': - optional: true - '@esbuild/linux-mips64el@0.27.7': optional: true - '@esbuild/linux-mips64el@0.28.0': - optional: true - '@esbuild/linux-ppc64@0.27.7': optional: true - '@esbuild/linux-ppc64@0.28.0': - optional: true - '@esbuild/linux-riscv64@0.27.7': optional: true - '@esbuild/linux-riscv64@0.28.0': - optional: true - '@esbuild/linux-s390x@0.27.7': optional: true - '@esbuild/linux-s390x@0.28.0': - optional: true - '@esbuild/linux-x64@0.27.7': optional: true - '@esbuild/linux-x64@0.28.0': - optional: true - '@esbuild/netbsd-arm64@0.27.7': optional: true - '@esbuild/netbsd-arm64@0.28.0': - optional: true - '@esbuild/netbsd-x64@0.27.7': optional: true - '@esbuild/netbsd-x64@0.28.0': - optional: true - '@esbuild/openbsd-arm64@0.27.7': optional: true - '@esbuild/openbsd-arm64@0.28.0': - optional: true - '@esbuild/openbsd-x64@0.27.7': optional: true - '@esbuild/openbsd-x64@0.28.0': - optional: true - '@esbuild/openharmony-arm64@0.27.7': optional: true - '@esbuild/openharmony-arm64@0.28.0': - optional: true - '@esbuild/sunos-x64@0.27.7': optional: true - '@esbuild/sunos-x64@0.28.0': - optional: true - '@esbuild/win32-arm64@0.27.7': optional: true - '@esbuild/win32-arm64@0.28.0': - optional: true - '@esbuild/win32-ia32@0.27.7': optional: true - '@esbuild/win32-ia32@0.28.0': - optional: true - '@esbuild/win32-x64@0.27.7': optional: true - '@esbuild/win32-x64@0.28.0': - optional: true - '@faker-js/faker@10.4.0': {} '@floating-ui/core@1.7.5': @@ -6143,7 +5889,7 @@ snapshots: '@radix-ui/rect@1.1.1': {} - '@react-router/dev@7.16.0(@react-router/serve@7.15.0(patch_hash=38a61caab4f8dc67c82ecfb17507d5a650ea7b632b4e58a369c0aa4583611c87)(react-router@7.16.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(typescript@6.0.3))(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(react-router@7.16.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(tsx@4.22.4)(typescript@6.0.3)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0))(yaml@2.9.0)': + '@react-router/dev@7.16.0(@react-router/serve@7.15.0(patch_hash=38a61caab4f8dc67c82ecfb17507d5a650ea7b632b4e58a369c0aa4583611c87)(react-router@7.16.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(typescript@6.0.3))(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(react-router@7.16.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(typescript@6.0.3)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0))(yaml@2.9.0)': dependencies: '@babel/core': 7.29.7 '@babel/generator': 7.29.7 @@ -6173,8 +5919,8 @@ snapshots: semver: 7.8.4 tinyglobby: 0.2.17 valibot: 1.4.1(typescript@6.0.3) - vite: 8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0) - vite-node: 3.2.4(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(tsx@4.22.4)(yaml@2.9.0) + vite: 8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0) + vite-node: 3.2.4(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(yaml@2.9.0) optionalDependencies: '@react-router/serve': 7.15.0(patch_hash=38a61caab4f8dc67c82ecfb17507d5a650ea7b632b4e58a369c0aa4583611c87)(react-router@7.16.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(typescript@6.0.3) typescript: 6.0.3 @@ -6933,29 +6679,29 @@ snapshots: '@use-gesture/core': 10.3.1 react: 19.2.7 - '@vitest/browser-playwright@4.1.8(playwright@1.60.0)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0))(vitest@4.1.8)': + '@vitest/browser-playwright@4.1.8(playwright@1.60.0)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0))(vitest@4.1.8)': dependencies: - '@vitest/browser': 4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0))(vitest@4.1.8) - '@vitest/mocker': 4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)) + '@vitest/browser': 4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0))(vitest@4.1.8) + '@vitest/mocker': 4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)) playwright: 1.60.0 tinyrainbow: 3.1.0 - vitest: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)) + vitest: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)) transitivePeerDependencies: - bufferutil - msw - utf-8-validate - vite - '@vitest/browser@4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0))(vitest@4.1.8)': + '@vitest/browser@4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0))(vitest@4.1.8)': dependencies: '@blazediff/core': 1.9.1 - '@vitest/mocker': 4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)) + '@vitest/mocker': 4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)) '@vitest/utils': 4.1.8 magic-string: 0.30.21 pngjs: 7.0.0 sirv: 3.0.2 tinyrainbow: 3.1.0 - vitest: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)) + vitest: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)) ws: 8.21.0 transitivePeerDependencies: - bufferutil @@ -6972,13 +6718,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0))': + '@vitest/mocker@4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0))': dependencies: '@vitest/spy': 4.1.8 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0) + vite: 8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0) '@vitest/pretty-format@4.1.8': dependencies: @@ -7007,7 +6753,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.17 tinyrainbow: 3.1.0 - vitest: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)) + vitest: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)) '@vitest/utils@4.1.8': dependencies: @@ -7394,8 +7140,6 @@ snapshots: dotenv@16.6.1: {} - dotenv@17.4.2: {} - dunder-proto@1.0.1: dependencies: call-bind-apply-helpers: 1.0.2 @@ -7469,35 +7213,6 @@ snapshots: '@esbuild/win32-ia32': 0.27.7 '@esbuild/win32-x64': 0.27.7 - esbuild@0.28.0: - optionalDependencies: - '@esbuild/aix-ppc64': 0.28.0 - '@esbuild/android-arm': 0.28.0 - '@esbuild/android-arm64': 0.28.0 - '@esbuild/android-x64': 0.28.0 - '@esbuild/darwin-arm64': 0.28.0 - '@esbuild/darwin-x64': 0.28.0 - '@esbuild/freebsd-arm64': 0.28.0 - '@esbuild/freebsd-x64': 0.28.0 - '@esbuild/linux-arm': 0.28.0 - '@esbuild/linux-arm64': 0.28.0 - '@esbuild/linux-ia32': 0.28.0 - '@esbuild/linux-loong64': 0.28.0 - '@esbuild/linux-mips64el': 0.28.0 - '@esbuild/linux-ppc64': 0.28.0 - '@esbuild/linux-riscv64': 0.28.0 - '@esbuild/linux-s390x': 0.28.0 - '@esbuild/linux-x64': 0.28.0 - '@esbuild/netbsd-arm64': 0.28.0 - '@esbuild/netbsd-x64': 0.28.0 - '@esbuild/openbsd-arm64': 0.28.0 - '@esbuild/openbsd-x64': 0.28.0 - '@esbuild/openharmony-arm64': 0.28.0 - '@esbuild/sunos-x64': 0.28.0 - '@esbuild/win32-arm64': 0.28.0 - '@esbuild/win32-ia32': 0.28.0 - '@esbuild/win32-x64': 0.28.0 - escalade@3.2.0: {} escape-html@1.0.3: {} @@ -8995,12 +8710,6 @@ snapshots: tslib@2.8.1: {} - tsx@4.22.4: - dependencies: - esbuild: 0.28.0 - optionalDependencies: - fsevents: 2.3.3 - tunnel-agent@0.6.0: dependencies: safe-buffer: 5.2.1 @@ -9078,13 +8787,13 @@ snapshots: vary@1.1.2: {} - vite-node@3.2.4(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(tsx@4.22.4)(yaml@2.9.0): + vite-node@3.2.4(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(yaml@2.9.0): dependencies: cac: 6.7.14 debug: 4.4.3 es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.3.5(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(tsx@4.22.4)(yaml@2.9.0) + vite: 7.3.5(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(yaml@2.9.0) transitivePeerDependencies: - '@types/node' - jiti @@ -9099,13 +8808,13 @@ snapshots: - tsx - yaml - vite-node@6.0.0(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0): + vite-node@6.0.0(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0): dependencies: cac: 7.0.0 es-module-lexer: 2.0.0 obug: 2.1.1 pathe: 2.0.3 - vite: 8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0) + vite: 8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0) transitivePeerDependencies: - '@types/node' - '@vitejs/devtools' @@ -9120,12 +8829,12 @@ snapshots: - tsx - yaml - vite-plugin-babel@1.7.3(@babel/core@7.29.7)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)): + vite-plugin-babel@1.7.3(@babel/core@7.29.7)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)): dependencies: '@babel/core': 7.29.7 - vite: 8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0) + vite: 8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0) - vite@7.3.5(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(tsx@4.22.4)(yaml@2.9.0): + vite@7.3.5(@types/node@25.9.1)(jiti@2.7.0)(lightningcss@1.32.0)(yaml@2.9.0): dependencies: esbuild: 0.27.7 fdir: 6.5.0(picomatch@4.0.4) @@ -9138,10 +8847,9 @@ snapshots: fsevents: 2.3.3 jiti: 2.7.0 lightningcss: 1.32.0 - tsx: 4.22.4 yaml: 2.9.0 - vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0): + vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0): dependencies: lightningcss: 1.32.0 picomatch: 4.0.4 @@ -9150,25 +8858,24 @@ snapshots: tinyglobby: 0.2.17 optionalDependencies: '@types/node': 25.9.1 - esbuild: 0.28.0 + esbuild: 0.27.7 fsevents: 2.3.3 jiti: 2.7.0 - tsx: 4.22.4 yaml: 2.9.0 vitest-browser-react@2.2.0(@types/react-dom@19.2.3(@types/react@19.2.16))(@types/react@19.2.16)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.8): dependencies: react: 19.2.7 react-dom: 19.2.7(react@19.2.7) - vitest: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)) + vitest: 4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)) optionalDependencies: '@types/react': 19.2.16 '@types/react-dom': 19.2.3(@types/react@19.2.16) - vitest@4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)): + vitest@4.1.8(@opentelemetry/api@1.9.1)(@types/node@25.9.1)(@vitest/browser-playwright@4.1.8)(@vitest/ui@4.1.8)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.8 - '@vitest/mocker': 4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0)) + '@vitest/mocker': 4.1.8(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0)) '@vitest/pretty-format': 4.1.8 '@vitest/runner': 4.1.8 '@vitest/snapshot': 4.1.8 @@ -9185,12 +8892,12 @@ snapshots: tinyexec: 1.2.4 tinyglobby: 0.2.17 tinyrainbow: 3.1.0 - vite: 8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0) + vite: 8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0) why-is-node-running: 2.3.0 optionalDependencies: '@opentelemetry/api': 1.9.1 '@types/node': 25.9.1 - '@vitest/browser-playwright': 4.1.8(playwright@1.60.0)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0))(vitest@4.1.8) + '@vitest/browser-playwright': 4.1.8(playwright@1.60.0)(vite@8.0.16(@types/node@25.9.1)(esbuild@0.27.7)(jiti@2.7.0)(yaml@2.9.0))(vitest@4.1.8) '@vitest/ui': 4.1.8(vitest@4.1.8) transitivePeerDependencies: - msw diff --git a/scripts/add-badge-winners.ts b/scripts/add-badge-winners.ts index 26fcd0f99..4fcaa7aad 100644 --- a/scripts/add-badge-winners.ts +++ b/scripts/add-badge-winners.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/add-badge.ts b/scripts/add-badge.ts index 31239e59f..2b8435727 100644 --- a/scripts/add-badge.ts +++ b/scripts/add-badge.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/add-leaderboard-teams-to-tournament.ts b/scripts/add-leaderboard-teams-to-tournament.ts index 195bb7cde..77c7e0e67 100644 --- a/scripts/add-leaderboard-teams-to-tournament.ts +++ b/scripts/add-leaderboard-teams-to-tournament.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { ADMIN_ID } from "~/features/admin/admin-constants"; import { userAsyncLocalStorage } from "~/features/auth/core/user-context.server"; import * as LeaderboardRepository from "~/features/leaderboards/LeaderboardRepository.server"; diff --git a/scripts/add-tos.ts b/scripts/add-tos.ts index 523c5b2e5..8fac49ee0 100644 --- a/scripts/add-tos.ts +++ b/scripts/add-tos.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import * as AdminRepository from "~/features/admin/AdminRepository.server"; import { logger } from "~/utils/logger"; diff --git a/scripts/backfill-tournament-result-divisions.ts b/scripts/backfill-tournament-result-divisions.ts index e2d7c72ce..7f9175e56 100644 --- a/scripts/backfill-tournament-result-divisions.ts +++ b/scripts/backfill-tournament-result-divisions.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "../app/db/sql"; import * as Seasons from "../app/features/mmr/core/Seasons"; import { diff --git a/scripts/backfill-tournament-tiers.ts b/scripts/backfill-tournament-tiers.ts index c7e01737f..9e01dce6e 100644 --- a/scripts/backfill-tournament-tiers.ts +++ b/scripts/backfill-tournament-tiers.ts @@ -2,7 +2,7 @@ /** * Backfill Tournament Tiers Script * - * Run with: pnpm exec tsx scripts/backfill-tournament-tiers.ts + * Run with: pnpm exec vite-node scripts/backfill-tournament-tiers.ts * * Retroactively calculates and sets tiers for all finalized tournaments, * then populates series tier history based on those tiers. diff --git a/scripts/calc-seeding-skills.ts b/scripts/calc-seeding-skills.ts index e12180830..7c6acd152 100644 --- a/scripts/calc-seeding-skills.ts +++ b/scripts/calc-seeding-skills.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { ordinal, type Rating, rating } from "openskill"; import { db } from "../app/db/sql"; import type { Tables } from "../app/db/tables"; diff --git a/scripts/calc-tournament-summary-result-arrays.ts b/scripts/calc-tournament-summary-result-arrays.ts index beb1fd631..0aadd4b80 100644 --- a/scripts/calc-tournament-summary-result-arrays.ts +++ b/scripts/calc-tournament-summary-result-arrays.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "kysely"; import { db } from "../app/db/sql"; import { diff --git a/scripts/check-season-status.ts b/scripts/check-season-status.ts index 153bef73d..c453323fd 100644 --- a/scripts/check-season-status.ts +++ b/scripts/check-season-status.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import * as Seasons from "~/features/mmr/core/Seasons"; import invariant from "~/utils/invariant"; diff --git a/scripts/create-league-divisions.ts b/scripts/create-league-divisions.ts index e81bce39d..d1869f308 100644 --- a/scripts/create-league-divisions.ts +++ b/scripts/create-league-divisions.ts @@ -1,6 +1,5 @@ -// for testing use the command `pnpm exec tsx ./scripts/create-league-divisions.ts 6 'https://gist.githubusercontent.com/sendou-ink/38aa4d5d8426035ce178c09598ae627f/raw/17be9bb53a9f017c2097d0624f365d1c5a029f01/league.csv'` +// for testing use the command `pnpm exec vite-node ./scripts/create-league-divisions.ts 6 'https://gist.githubusercontent.com/sendou-ink/38aa4d5d8426035ce178c09598ae627f/raw/17be9bb53a9f017c2097d0624f365d1c5a029f01/league.csv'` -import "dotenv/config"; import { z } from "zod"; import { db } from "~/db/sql"; import { ADMIN_ID } from "~/features/admin/admin-constants"; diff --git a/scripts/delete-badge.ts b/scripts/delete-badge.ts index eff1e3d4d..c01a53bba 100644 --- a/scripts/delete-badge.ts +++ b/scripts/delete-badge.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/delete-skill.ts b/scripts/delete-skill.ts index 6df8713b5..62d9d533c 100644 --- a/scripts/delete-skill.ts +++ b/scripts/delete-skill.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/delete-skills-without-results.ts b/scripts/delete-skills-without-results.ts index e03210f9b..d87cff188 100644 --- a/scripts/delete-skills-without-results.ts +++ b/scripts/delete-skills-without-results.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import { logger } from "~/utils/logger"; diff --git a/scripts/delete-tournament-team-maps.ts b/scripts/delete-tournament-team-maps.ts index ffaf9b255..a420f8e5a 100644 --- a/scripts/delete-tournament-team-maps.ts +++ b/scripts/delete-tournament-team-maps.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/delete-user.ts b/scripts/delete-user.ts index e24cf641e..0dcae7444 100644 --- a/scripts/delete-user.ts +++ b/scripts/delete-user.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/disband-team.ts b/scripts/disband-team.ts index e0705a27e..42199e1fb 100644 --- a/scripts/disband-team.ts +++ b/scripts/disband-team.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import { dateToDatabaseTimestamp } from "~/utils/dates"; import invariant from "~/utils/invariant"; diff --git a/scripts/fc-lookup.ts b/scripts/fc-lookup.ts index 064867db0..0ff554055 100644 --- a/scripts/fc-lookup.ts +++ b/scripts/fc-lookup.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/map-popularity-q.ts b/scripts/map-popularity-q.ts index 52e7153d7..ea4702c18 100644 --- a/scripts/map-popularity-q.ts +++ b/scripts/map-popularity-q.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import { BANNED_MAPS } from "~/features/match-profile/banned-maps"; import { modesShort } from "~/modules/in-game-lists/modes"; diff --git a/scripts/map-popularity.ts b/scripts/map-popularity.ts index dfcea8757..321b44457 100644 --- a/scripts/map-popularity.ts +++ b/scripts/map-popularity.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import { BANNED_MAPS } from "~/features/match-profile/banned-maps"; import { modesShort } from "~/modules/in-game-lists/modes"; diff --git a/scripts/mass-add-tournaments-to-org.ts b/scripts/mass-add-tournaments-to-org.ts index 8d1906065..a6d5f653b 100644 --- a/scripts/mass-add-tournaments-to-org.ts +++ b/scripts/mass-add-tournaments-to-org.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/migrate-tournament-logos-to-s3.ts b/scripts/migrate-tournament-logos-to-s3.ts index 61197a1a9..9070990f0 100644 --- a/scripts/migrate-tournament-logos-to-s3.ts +++ b/scripts/migrate-tournament-logos-to-s3.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import fs from "node:fs"; import path from "node:path"; import { Readable } from "node:stream"; diff --git a/scripts/nuke-reported-weapons.ts b/scripts/nuke-reported-weapons.ts index 7d43b356b..e6afe427b 100644 --- a/scripts/nuke-reported-weapons.ts +++ b/scripts/nuke-reported-weapons.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import * as Seasons from "~/features/mmr/core/Seasons"; import { dateToDatabaseTimestamp } from "~/utils/dates"; diff --git a/scripts/nuke-season-data.ts b/scripts/nuke-season-data.ts index a5324e2bd..8a6656345 100644 --- a/scripts/nuke-season-data.ts +++ b/scripts/nuke-season-data.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import * as Seasons from "~/features/mmr/core/Seasons"; import * as SQMatchRepository from "~/features/sendouq-match/SQMatchRepository.server"; diff --git a/scripts/org-monthly-active-players.ts b/scripts/org-monthly-active-players.ts index f243698e7..c7589e51f 100644 --- a/scripts/org-monthly-active-players.ts +++ b/scripts/org-monthly-active-players.ts @@ -3,7 +3,6 @@ // you need at least 150 average monthly active players to be considered established // if you drop below 100 you lose it -import "dotenv/config"; import { db } from "~/db/sql"; import { logger } from "~/utils/logger"; diff --git a/scripts/placements/index.ts b/scripts/placements/index.ts index d2bd00c06..69760969b 100644 --- a/scripts/placements/index.ts +++ b/scripts/placements/index.ts @@ -1,5 +1,3 @@ -import "dotenv/config"; - import { sql } from "~/db/sql"; import type { Tables } from "~/db/tables"; import * as BadgeRepository from "~/features/badges/BadgeRepository.server"; diff --git a/scripts/recent-fcs.ts b/scripts/recent-fcs.ts index 3dd1d3d80..1d280aecc 100644 --- a/scripts/recent-fcs.ts +++ b/scripts/recent-fcs.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import { databaseTimestampToDate } from "~/utils/dates"; import { logger } from "~/utils/logger"; diff --git a/scripts/rename-badge.ts b/scripts/rename-badge.ts index e7f38733d..5144a5a49 100644 --- a/scripts/rename-badge.ts +++ b/scripts/rename-badge.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/season-initial-powers.ts b/scripts/season-initial-powers.ts index 41a1bf781..c19553dfb 100644 --- a/scripts/season-initial-powers.ts +++ b/scripts/season-initial-powers.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { ordinal } from "openskill"; import { db, sql } from "~/db/sql"; import type { Tables } from "~/db/tables"; diff --git a/scripts/seed-images.ts b/scripts/seed-images.ts index dc98cb80a..735673134 100644 --- a/scripts/seed-images.ts +++ b/scripts/seed-images.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { readFile } from "node:fs/promises"; import { join } from "node:path"; import { Readable } from "node:stream"; diff --git a/scripts/setup.ts b/scripts/setup.ts index e93700a31..1fd4a0379 100644 --- a/scripts/setup.ts +++ b/scripts/setup.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import fs from "node:fs"; import { seed } from "~/db/seed"; import { db } from "~/db/sql"; diff --git a/scripts/skip-plus.ts b/scripts/skip-plus.ts index fae7db344..ef50c2296 100644 --- a/scripts/skip-plus.ts +++ b/scripts/skip-plus.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "~/db/sql"; import * as Seasons from "~/features/mmr/core/Seasons"; import invariant from "~/utils/invariant"; diff --git a/scripts/swap-users.ts b/scripts/swap-users.ts index eeb6f5f39..d426f7db2 100644 --- a/scripts/swap-users.ts +++ b/scripts/swap-users.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "~/db/sql"; import invariant from "~/utils/invariant"; diff --git a/scripts/sync-homemade-badges.ts b/scripts/sync-homemade-badges.ts index fc3093ac3..95acede21 100644 --- a/scripts/sync-homemade-badges.ts +++ b/scripts/sync-homemade-badges.ts @@ -1,5 +1,3 @@ -import "dotenv/config"; - import { db } from "~/db/sql"; import homemadeBadges from "~/features/badges/homemade.json"; import { logger } from "~/utils/logger"; diff --git a/scripts/sync-splatoon-rotations.ts b/scripts/sync-splatoon-rotations.ts index d85128a8f..fd184efa9 100644 --- a/scripts/sync-splatoon-rotations.ts +++ b/scripts/sync-splatoon-rotations.ts @@ -1,5 +1,4 @@ /** biome-ignore-all lint/suspicious/noConsole: CLI script */ -import "dotenv/config"; import * as SplatoonRotationRepository from "~/features/splatoon-rotations/SplatoonRotationRepository.server"; import { fetchRotations } from "~/features/splatoon-rotations/splatoon-rotations.server"; diff --git a/scripts/sync-tournament-vods.ts b/scripts/sync-tournament-vods.ts index 53a0e70d4..0ef97c2c9 100644 --- a/scripts/sync-tournament-vods.ts +++ b/scripts/sync-tournament-vods.ts @@ -1,5 +1,4 @@ -// usage: npx tsx ./scripts/sync-tournament-vods.ts -import "dotenv/config"; +// usage: npx vite-node ./scripts/sync-tournament-vods.ts import { processOneTournament } from "~/routines/syncTournamentVods"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/sync-xp-badges.ts b/scripts/sync-xp-badges.ts index 88d12a3f5..085ee7828 100644 --- a/scripts/sync-xp-badges.ts +++ b/scripts/sync-xp-badges.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import * as BadgeRepository from "~/features/badges/BadgeRepository.server"; import { logger } from "~/utils/logger"; diff --git a/scripts/tournament-tiers-experiment.ts b/scripts/tournament-tiers-experiment.ts index 25754b0bc..9f2cccdd0 100644 --- a/scripts/tournament-tiers-experiment.ts +++ b/scripts/tournament-tiers-experiment.ts @@ -2,7 +2,7 @@ /** * Tournament Tiering Experiment Script * - * Run with: pnpm exec tsx scripts/tournament-tiers-experiment.ts + * Run with: pnpm exec vite-node scripts/tournament-tiers-experiment.ts * * Calculates tournament tiers based on top teams' average SeedingSkill. * Tweak the THRESHOLDS object to experiment with different tier distributions. diff --git a/scripts/transfer-weapon-pools.ts b/scripts/transfer-weapon-pools.ts index 79eaf0c2f..4df64b9ab 100644 --- a/scripts/transfer-weapon-pools.ts +++ b/scripts/transfer-weapon-pools.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import { logger } from "~/utils/logger"; diff --git a/scripts/unlock-league-matches.ts b/scripts/unlock-league-matches.ts index 2317e72dd..e572f504a 100644 --- a/scripts/unlock-league-matches.ts +++ b/scripts/unlock-league-matches.ts @@ -1,5 +1,4 @@ -// usage: pnpm exec tsx ./scripts/unlock-league-matches.ts -import "dotenv/config"; +// usage: pnpm exec vite-node ./scripts/unlock-league-matches.ts import { sql } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/unskip-plus.ts b/scripts/unskip-plus.ts index d709971ea..64c28ca23 100644 --- a/scripts/unskip-plus.ts +++ b/scripts/unskip-plus.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { sql } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger"; diff --git a/scripts/update-event-name.ts b/scripts/update-event-name.ts index 0dcea7484..d3207acd4 100644 --- a/scripts/update-event-name.ts +++ b/scripts/update-event-name.ts @@ -1,4 +1,3 @@ -import "dotenv/config"; import { db } from "~/db/sql"; import invariant from "~/utils/invariant"; import { logger } from "~/utils/logger";