mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-09-30 03:01:21 +02:00
The Ukrainian locale was authored before #2622 landed and merged dev in without picking up the five slice.designSettings* keys that came with it, so check:i18n failed at 5675 leaves against en's 5680. This is invisible on the PR because ci.yml only triggers for pull requests targeting main, and this one targets dev - the only checks that ran were the security workflow's. Adds the five missing keys, following the file's own convention of rendering "designer" as "автора" as it already does in slice.useEmbeddedHint. Two values were still English and the parity gate could not see them, because check 4 only fires on leaves byte-identical to en: profiles.localProfiles. pressureAdvance and inventory.paProfileTab both read "Pressure Advance (PA)" where en has "Pressure Advance" and "PA Profile". The added "(PA)" was enough to walk past the equality test. Both are now translated, the second as a tab label matching the Russian. Inline mentions of the term in profiles.subtitle and kProfilesDescription stay in English, which is what ru does too. failureDetection.mlUrl is translated rather than allow-listed, and the dead '{{weight}} г' entry is dropped from UK_COGNATES - that list matches against the English value, so an entry spelled in Ukrainian could never fire, and since the unit is now localized no entry is needed at all. Four straight apostrophes normalized to the typographic form used by the other 186 in the file. Locale count in the README and the two wiki pages corrected from 11 to 13; it had already been wrong, omitting Russian.
React + TypeScript + Vite
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
Currently, two official plugins are available:
- @vitejs/plugin-react uses Babel (or oxc when used in rolldown-vite) for Fast Refresh
- @vitejs/plugin-react-swc uses SWC for Fast Refresh
React Compiler
The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see this documentation.
Expanding the ESLint configuration
If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:
export default defineConfig([
globalIgnores(['dist']),
{
files: ['**/*.{ts,tsx}'],
extends: [
// Other configs...
// Remove tseslint.configs.recommended and replace with this
tseslint.configs.recommendedTypeChecked,
// Alternatively, use this for stricter rules
tseslint.configs.strictTypeChecked,
// Optionally, add this for stylistic rules
tseslint.configs.stylisticTypeChecked,
// Other configs...
],
languageOptions: {
parserOptions: {
project: ['./tsconfig.node.json', './tsconfig.app.json'],
tsconfigRootDir: import.meta.dirname,
},
// other options...
},
},
])
You can also install eslint-plugin-react-x and eslint-plugin-react-dom for React-specific lint rules:
// eslint.config.js
import reactX from 'eslint-plugin-react-x'
import reactDom from 'eslint-plugin-react-dom'
export default defineConfig([
globalIgnores(['dist']),
{
files: ['**/*.{ts,tsx}'],
extends: [
// Other configs...
// Enable lint rules for React
reactX.configs['recommended-typescript'],
// Enable lint rules for React DOM
reactDom.configs.recommended,
],
languageOptions: {
parserOptions: {
project: ['./tsconfig.node.json', './tsconfig.app.json'],
tsconfigRootDir: import.meta.dirname,
},
// other options...
},
},
])