mirror of
https://github.com/usememos/memos.git
synced 2024-09-21 06:55:55 +08:00
557278fac0
* feat: improve i18n support as a whole - Remove dayjs in favor of /helpers/datetime.ts, which uses Intl.DateTimeFormat and Date. Dayjs is not exactly i18n friendly and has several locale related opened issues. - Move/refactor date/time code from /helpers/utils.ts to /helpers/datetime.ts. - Fix Daily Review weekday not changing according to selected date. - Localize Daily review weekday and month. - Load i18n listed strings from /locales/{locale}.json in a dynamic way. This makes much easier to add new locales, by just adding a properly named json file and listing it only in /web/src/i18n.ts and /api/user_setting.go. - Fallback languages are now set in /web/src/i18n.ts. - Full language codes are now preffered, but they fallback to 2-letter codes when not available. - The locale dropdown is now populated dynamically from the available locales. Locale names are populated by the browser via Intl.DisplayNames(locale). - /web/src/i18n.ts now exports a type TLocale from availableLocales array. This is used only by findNearestLanguageMatch(). As I was unable to use this type in ".d.ts" files, I switched the Locale type from /web/src/types/i18n.d.ts to string. - Move pretty much all hardcoded text strings to i18n strings. - Add pt-BR translation. - Remove site.ts and move its content to a i18n string. - Rename zh.json to zh-Hans.json to get the correct language name on selector dropdown. - Remove pt_BR.json and replace with pt-BR.json. - Some minor layout spacing fixes to accommodate larger texts. - Improve some error messages. * Delete .yarnrc.yml * Delete package-lock.json * fix: 158:28 error Insert `⏎` prettier/prettier
61 lines
1.7 KiB
JSON
61 lines
1.7 KiB
JSON
{
|
|
"name": "memos",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "tsc && vite build",
|
|
"lint": "eslint --ext .js,.ts,.tsx, src",
|
|
"lint-fix": "eslint --ext .js,.ts,.tsx, src --fix"
|
|
},
|
|
"dependencies": {
|
|
"@emotion/react": "^11.10.5",
|
|
"@emotion/styled": "^11.10.5",
|
|
"@mui/joy": "^5.0.0-alpha.67",
|
|
"@radix-ui/react-tooltip": "^1.0.5",
|
|
"@reduxjs/toolkit": "^1.8.1",
|
|
"axios": "^0.27.2",
|
|
"copy-to-clipboard": "^3.3.2",
|
|
"highlight.js": "^11.6.0",
|
|
"i18next": "^21.9.2",
|
|
"i18next-browser-languagedetector": "^7.0.1",
|
|
"lodash-es": "^4.17.21",
|
|
"lucide-react": "^0.105.0",
|
|
"qrcode.react": "^3.1.0",
|
|
"qs": "^6.11.0",
|
|
"randomstring": "^1.2.3",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"react-hot-toast": "^2.4.0",
|
|
"react-i18next": "^11.18.6",
|
|
"react-redux": "^8.0.1",
|
|
"react-router-dom": "^6.8.2",
|
|
"react-use": "^17.4.0",
|
|
"semver": "^7.3.8",
|
|
"tailwindcss": "^3.2.4",
|
|
"zustand": "^4.3.6"
|
|
},
|
|
"devDependencies": {
|
|
"@playwright/test": "^1.32.2",
|
|
"@tailwindcss/line-clamp": "^0.4.2",
|
|
"@types/lodash-es": "^4.17.5",
|
|
"@types/node": "^18.0.3",
|
|
"@types/qs": "^6.9.7",
|
|
"@types/react": "^18.0.26",
|
|
"@types/react-dom": "^18.0.10",
|
|
"@types/semver": "^7.3.13",
|
|
"@typescript-eslint/eslint-plugin": "^5.6.0",
|
|
"@typescript-eslint/parser": "^5.6.0",
|
|
"@vitejs/plugin-react-swc": "^3.0.0",
|
|
"autoprefixer": "^10.4.2",
|
|
"eslint": "^8.4.1",
|
|
"eslint-config-prettier": "^8.6.0",
|
|
"eslint-plugin-prettier": "^4.2.1",
|
|
"eslint-plugin-react": "^7.27.1",
|
|
"less": "^4.1.1",
|
|
"postcss": "^8.4.5",
|
|
"prettier": "2.5.1",
|
|
"terser": "^5.16.1",
|
|
"typescript": "^4.3.2",
|
|
"vite": "^4.0.0"
|
|
}
|
|
}
|