* 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
* feat: refator the file dashboard
* feat: support select resouce file
* feat: suppor delete select files
* feat: support share menu, implement rename and delete
* chore: change the color of hover
* chore: refator file dashboard to page
* feat: add i18n for button
* feat: beautify the button
* fix: the error position of button
* feat: only select when click circle instead of whole card
* feat: beautify file dashboard
* chore: factor the filecard code
* feat: using dropdown component intead of component
* feat: add i18n for delete selected resource button
* feat: delete the unused style of title
* chore: refactor file cover
* feat: support more type file cover
* feat: use memo to reduce unused computing in filecover
* feat: when no file be selected, click the delete will error
* feat: store the select resource id instead of source to save memory
* chore: delete unused code
* feat: refactor the file card
* chore: delete unused style file
* chore: change file to resource
* chore: delete unused import
* chore: fix the typo
* fix: the error of handle check click
* fix: the error of handle of uncheck
* chore: change the name of selectList to selectedList
* chore: change the name of selectList to selectedList
* chore: change the name of selectList to selectedList
* chore: delete unused import
* feat: support Responsive Design
* feat: min display two card in a line
* feat: adjust the num of a line in responsive design
* feat: adjust the num of a line to 6 when using md
* feat: add the color of hover source card when dark
* chore: refactor resource cover css to reduce code
* chore: delete unnessnary change
* chore: change the type of callback function
* chore: delete unused css code
* feat: add zh-hant i18n
* feat: change the position of buttons
* feat: add title for the icon button
* feat: add opacity for icon
* feat: refactor searchbar
* feat:move Debounce to search
* feat: new resource search bar
* feat: reduce the size of cover
* support file search
* Update web/src/pages/ResourcesDashboard.tsx
Co-authored-by: boojack <stevenlgtm@gmail.com>
* Update web/src/components/ResourceCard.tsx
Co-authored-by: boojack <stevenlgtm@gmail.com>
* chore: reduce css code
* feat: support lowcase and uppercase search
* chore: reserve the searchbar
* feat: refator resource Search bar
* chore: change the param name
* feat: resource bar support dark mode
* feat: beautify the UI of dashboard
* chore: extract positionClassName from actionsClassName
* feat: reduce the length of search bar
---------
Co-authored-by: boojack <stevenlgtm@gmail.com>