All notable changes to this project will be documented in this file.
- Allow setting
escape
option per parameter replacing.
For more security this should be used instead of disabling paramter escaping, see pull request #756// Example t( 'my-app', '{a}{userInput}{a_end}', { a: { value: '<a>', escape: false, }, userInput: somePossiblyInsecureValue, // This will be escaped a_end: { value: '</a>', escape: false, } }, )
- Ensure that built type definitions are bundled with the release and located in the correct directory
Instead of also sanitizing the replacing variables, now only the result is sanitized, see pull request #648.
This will improve the performance if multiple placeholders are used and it allows this, while the string is still sanitized:
t(
'See {linkstart}documentation{linkend}',
{
linkstart: '<a ...>',
linkend: '</a>',
},
// No number
undefined,
{
// Do not escape the result as we want the HTML anchor element
escape: false,
}
)
- feat: export aliases
t
andn
fortranslate
andtranslatePlural
- fix!: Only sanitize the result string when replacing variables
- Update NPM to latest LTS v10
- Migrate to vite for transpiling and vitest for testing
- chore: Added more tests for special cases on plural forms
- chore(deps): Bump tough-cookie to 4.1.3
- chore(deps): Bump postcss to 8.4.31
- chore(deps): Bump @nextcloud/typings to 1.8.0
- chore(deps): Bump dompurify to 3.1.1
- chore(deps): Bump @nextcloud/router to 3.0.1
isRTL
was added to check whether a given, or the current, language is read right-to-left #639 (susnux)
- Add typings to the package exports to fix build for Typescript projects using
node16
ornodenext
module resolution #633 (susnux) - Update exported
NextcloudWindowWithRegistry
type for Nextcloud 27 #640 (susnux) - Harden
loadTranslations
by handling edge cases where invalid data is retrieved #644 (susnux)
- Update node engines to next LTS (Node 20 + NPM 9)
- Dependency updates
- Export the
Translations
type and add missing documentation #566 (susnux) - Fix singular translation in edge cases where plural strings are provided #570 (susnux)
- Make loading translations use async XMLHttpRequest #571 (susnux)
- Removed warning "no app translation was registered" #572 (ShGKme)
- Added tests and increased code coverage
- Dependency updates
- fix(config): fix npmignore config #563 (skjnldsv)
- fix(config): fix tsconfig out dir typings #562 (skjnldsv)
- Fix standalone registration #556 (ShGKme)
- Dependency updates
From 2.0.0, this package is standalone and do not rely on window OC variables to function.
- Provide all translation related functions #542 (susnux)
- Fix building and deploying documentation #546 (susnux)
- Dependency updates
- Remove dependency on OC for
getLocale
andgetLanguage
Superseeded by v1.6.0 as the release was empty.
- Dependency updates
- Language detection of languages that have a
_
in their code (#172)
- Nextcloud 20 support
- Dependency updates
- getCanonicalLocale
- Dependency updates
- Dependency updates
- Source locale of translations is now set to 'en', so fewer warnings are printed
- Update vulnerable packages
- Dependency updates
- Update vulnerable packages
- Optional debug mode with logging, no console.warn for production builds
- Dependency updates
- Dependency updates
- Update vulnerable packages
- Gettext-based translation helpers for Nextcloud-independent translations (mostly for libraries)
- Updated documentation
- Updated dependencies
- Translate
escape
option typo
- Updated documentation