The detection didn't work properly in case the selected manga was in a different language than English or the current active translation. In that case it didn't work because the translation for that locale wasn't loaded. So to ensure that the translation exists for each language, we have to hardcode it.
144 lines
5.2 KiB
JSON
144 lines
5.2 KiB
JSON
{
|
|
"name": "project",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"ci": "yarn install --frozen-lockfile",
|
|
"setup-env-files": "tsx tools/scripts/setupEnvFiles.ts",
|
|
"setup": "yarn ci && yarn setup-env-files",
|
|
"dev": "yarn setup && vite",
|
|
"preview": "yarn setup && vite preview",
|
|
"build": "yarn setup && vite build",
|
|
"test": "node -e \"console.log('imagine')\"",
|
|
"build-md5": "find build -type f | sort | xargs md5sum | awk '{ print $1 }' | tr -d '\n' | md5sum| awk '{ print $1 }' > buildZip/md5sum ",
|
|
"build-zip": "cd build && rev=$(git rev-list HEAD --count) && echo r$rev > revision && zip -9 -r ../buildZip/Suwayomi-WebUI-r$rev *",
|
|
"lint": "eslint src --ext .ts,.tsx,.js,.jsx --max-warnings=0 --cache",
|
|
"createCommitChangelog": "tsx tools/scripts/release/createCommitChangelog.ts",
|
|
"createTranslationChangelog": "tsx tools/scripts/release/createTranslationChangelog.ts",
|
|
"createReleaseChangelog": "tsx tools/scripts/release/createReleaseChangelog.ts",
|
|
"updateDeps": "tsx tools/scripts/updateDependencies.ts",
|
|
"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",
|
|
"dayjs:gen-locales": "yarn dayjs:gen-locales-array && yarn dayjs:gen-locales-import",
|
|
"manga:gen-type-tags": "tsx tools/scripts/manga/generateMangaTypeTags.ts",
|
|
"prepare": "husky"
|
|
},
|
|
"engines": {
|
|
"node": "22.12.0"
|
|
},
|
|
"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",
|
|
"@dnd-kit/sortable": "10.0.0",
|
|
"@dnd-kit/utilities": "3.2.2",
|
|
"@emotion/cache": "11.14.0",
|
|
"@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",
|
|
"@mui/material": "7.3.5",
|
|
"@mui/system": "7.3.5",
|
|
"@mui/utils": "7.3.5",
|
|
"@mui/x-date-pickers": "8.18.0",
|
|
"@redux-devtools/extension": "3.3.0",
|
|
"@vibrant/color": "4.0.0",
|
|
"apollo-upload-client": "18.0.1",
|
|
"awaitable-component": "1.0.0",
|
|
"csstype": "3.2.2",
|
|
"dayjs": "1.11.19",
|
|
"fast-average-color": "9.5.0",
|
|
"file-selector": "2.1.2",
|
|
"graphql": "16.12.0",
|
|
"graphql-sock": "1.0.1",
|
|
"graphql-tag": "2.12.6",
|
|
"graphql-ws": "6.0.6",
|
|
"immer": "10.2.0",
|
|
"jsonrepair": "3.13.1",
|
|
"koration": "1.0.0",
|
|
"material-ui-popup-state": "5.3.6",
|
|
"mui-nested-menu": "4.0.1",
|
|
"node-vibrant": "4.0.3",
|
|
"notistack": "3.0.2",
|
|
"p-limit": "7.2.0",
|
|
"polished": "4.3.1",
|
|
"react": "19.2.0",
|
|
"react-dom": "19.2.0",
|
|
"react-hotkeys-hook": "5.2.1",
|
|
"react-lazily": "0.9.2",
|
|
"react-router-dom": "6.26.1",
|
|
"react-virtuoso": "4.14.1",
|
|
"stylis": "4.3.6",
|
|
"stylis-plugin-rtl": "2.1.1",
|
|
"use-long-press": "3.3.0",
|
|
"use-query-params": "2.2.1",
|
|
"webfontloader": "1.6.28",
|
|
"zustand": "5.0.8"
|
|
},
|
|
"devDependencies": {
|
|
"@graphql-codegen/cli": "5.0.7",
|
|
"@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",
|
|
"@types/react-beautiful-dnd": "13.1.8",
|
|
"@types/react-dom": "19.2.3",
|
|
"@types/sanitize-html": "2.16.0",
|
|
"@types/stylis": "4.2.7",
|
|
"@types/webfontloader": "1.6.38",
|
|
"@types/yargs": "17.0.35",
|
|
"@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.1",
|
|
"dotenv": "17.2.3",
|
|
"eslint": "8.57.0",
|
|
"eslint-config-airbnb": "19.0.4",
|
|
"eslint-config-airbnb-typescript": "18.0.0",
|
|
"eslint-config-prettier": "9.1.0",
|
|
"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",
|
|
"eslint-plugin-react-hooks": "4.6.2",
|
|
"eslint-plugin-unused-imports": "3.2.0",
|
|
"husky": "9.1.7",
|
|
"lint-staged": "16.2.6",
|
|
"prettier": "3.6.2",
|
|
"syncyarnlock": "1.0.19",
|
|
"terser": "5.44.1",
|
|
"tsx": "4.20.6",
|
|
"typescript": "5.9.3",
|
|
"vite": "7.2.2",
|
|
"vite-plugin-node-polyfills": "0.24.0",
|
|
"vite-plugin-pwa": "1.1.0",
|
|
"vite-tsconfig-paths": "5.1.4",
|
|
"workbox-window": "7.4.0",
|
|
"yargs": "18.0.0"
|
|
}
|
|
}
|