Migrate to lingui

Switch to "lingui" for better DX.
Tried to persist existing languages as much as possible.

Removed "vite-plugin-node-polyfills" because it's incompatible with "lingui"
This commit is contained in:
schroda
2026-01-10 19:45:02 +01:00
parent c1ac58f4d6
commit 65a9a905be
287 changed files with 120766 additions and 37748 deletions

View File

@@ -21,6 +21,7 @@
"gql:codegen-base": "graphql-codegen --config gql_codegen.ts",
"gql:codegen-formatter": "tsx tools/scripts/codegenFormatter.ts",
"gql:codegen": "yarn gql:codegen-base && yarn gql:codegen-formatter",
"i18n:extract": "lingui extract --locale en --clean",
"i18n:gen-resources": "tsx tools/scripts/weblate/generatei18nResources.ts",
"dayjs:gen-locales-array": "tsx tools/scripts/dayjs/generateDayJsLocales.ts",
"dayjs:gen-locales-import": "tsx tools/scripts/dayjs/generateDayJsLocalesImport.ts",
@@ -33,6 +34,9 @@
"lint-staged": {
"*.{ts,tsx,js,jsx}": "eslint --fix"
},
"resolutions": {
"@swc/core": "1.13.5"
},
"dependencies": {
"@apollo/client": "3.13.9",
"@dnd-kit/core": "6.3.1",
@@ -42,6 +46,8 @@
"@emotion/react": "11.14.0",
"@emotion/styled": "11.14.1",
"@juggle/resize-observer": "3.4.0",
"@lingui/core": "5.7.0",
"@lingui/react": "5.7.0",
"@loadable/component": "5.16.7",
"@mantine/hooks": "8.3.8",
"@mui/icons-material": "7.3.5",
@@ -61,9 +67,6 @@
"graphql-sock": "1.0.1",
"graphql-tag": "2.12.6",
"graphql-ws": "6.0.6",
"i18next": "25.6.2",
"i18next-browser-languagedetector": "8.2.0",
"i18next-http-backend": "3.0.2",
"immer": "10.2.0",
"jsonrepair": "3.13.1",
"koration": "1.0.0",
@@ -76,7 +79,6 @@
"react": "19.2.0",
"react-dom": "19.2.0",
"react-hotkeys-hook": "5.2.1",
"react-i18next": "16.3.3",
"react-lazily": "0.9.2",
"react-router-dom": "6.26.1",
"react-virtuoso": "4.14.1",
@@ -92,6 +94,10 @@
"@graphql-codegen/client-preset": "4.8.3",
"@graphql-codegen/typescript-apollo-client-helpers": "3.0.1",
"@graphql-codegen/typescript-operations": "4.6.1",
"@lingui/cli": "5.7.0",
"@lingui/format-po": "5.7.0",
"@lingui/swc-plugin": "5.7.0",
"@lingui/vite-plugin": "5.7.0",
"@types/apollo-upload-client": "18.0.0",
"@types/node": "24.10.1",
"@types/react": "19.2.5",
@@ -104,7 +110,7 @@
"@typescript-eslint/eslint-plugin": "7.16.1",
"@typescript-eslint/parser": "7.16.1",
"@vitejs/plugin-legacy": "7.2.1",
"@vitejs/plugin-react-swc": "4.2.2",
"@vitejs/plugin-react-swc": "4.2.1",
"dotenv": "17.2.3",
"eslint": "8.57.0",
"eslint-config-airbnb": "19.0.4",
@@ -113,6 +119,7 @@
"eslint-plugin-header": "3.1.1",
"eslint-plugin-import": "2.32.0",
"eslint-plugin-jsx-a11y": "6.10.2",
"eslint-plugin-lingui": "0.11.0",
"eslint-plugin-no-relative-import-paths": "1.6.1",
"eslint-plugin-prettier": "5.5.4",
"eslint-plugin-react": "7.37.5",