diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index f9a0d31c..5a2d7e6f 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -3,7 +3,7 @@ on: push: branches: - master - - next + - support-ngx-translate-17 pull_request: branches: - master diff --git a/package.json b/package.json index 28df92e6..ea7934a4 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "branches": [ "master", { - "name": "next", + "name": "support-ngx-translate-17", "prerelease": "next", "channel": "next" } diff --git a/projects/stream-chat-angular/package.json b/projects/stream-chat-angular/package.json index dc0fbc5c..b8efed08 100644 --- a/projects/stream-chat-angular/package.json +++ b/projects/stream-chat-angular/package.json @@ -1,6 +1,6 @@ { "name": "stream-chat-angular", - "version": "6.1.0", + "version": "6.2.0-next.1", "description": "Angular components to create chat conversations or livestream style chat", "author": "GetStream", "homepage": "https://getstream.io/chat/", @@ -20,7 +20,7 @@ "@angular/common": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0", "@angular/core": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0", "@breezystack/lamejs": "^1.2.7", - "@ngx-translate/core": "^14.0.0 || ^15.0.0 || ^16.0.0", + "@ngx-translate/core": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0", "rxjs": "^7.4.0", "stream-chat": "^9.0.0" }, @@ -36,7 +36,7 @@ "dayjs": "^1.11.10", "emoji-regex": "^10.3.0", "fix-webm-duration": "^1.0.6", - "ngx-float-ui": "^15.0.0|| ^16.0.0 || ^17.0.0 || ^18.0.0 || ^18.0.1-rc.0 || ^19.0.0", + "ngx-float-ui": "^15.0.0|| ^16.0.0 || ^17.0.0 || ^18.0.0 || ^18.0.1-rc.0 || ^19.0.0 || ^12.0.0", "pretty-bytes": "^6.1.1", "tslib": "^2.3.0", "uuid": "^9.0.1" diff --git a/projects/stream-chat-angular/src/assets/version.ts b/projects/stream-chat-angular/src/assets/version.ts index cb3cc64f..b9ecd14c 100644 --- a/projects/stream-chat-angular/src/assets/version.ts +++ b/projects/stream-chat-angular/src/assets/version.ts @@ -1 +1 @@ -export const version = '6.1.0'; +export const version = '6.2.0-next.1'; diff --git a/projects/stream-chat-angular/src/lib/stream-i18n.service.ts b/projects/stream-chat-angular/src/lib/stream-i18n.service.ts index 348cbc8b..b1186793 100644 --- a/projects/stream-chat-angular/src/lib/stream-i18n.service.ts +++ b/projects/stream-chat-angular/src/lib/stream-i18n.service.ts @@ -9,7 +9,7 @@ import { en } from '../assets/i18n/en'; providedIn: 'root', }) export class StreamI18nService { - constructor(private translteService: TranslateService) {} + constructor(private translateService: TranslateService) {} /** * Registers the translation to the [ngx-translate](https://github.com/ngx-translate/core) TranslateService. @@ -17,10 +17,23 @@ export class StreamI18nService { * @param overrides An object which keys are translation keys, and the values are custom translations */ setTranslation(lang = 'en', overrides?: { [key: string]: string }) { - if (!this.translteService.defaultLang) { - this.translteService.defaultLang = lang; + const translateService = this.translateService as TranslateService & { + getFallbackLang?: () => string; + setDefaultLang?: (lang: string) => void; + }; + + const defaultLang = + 'getFallbackLang' in translateService + ? translateService.getFallbackLang?.() + : translateService.defaultLang; + if (!defaultLang) { + if (typeof translateService.setDefaultLang !== 'undefined') { + translateService.setDefaultLang(lang); + } else { + translateService.defaultLang = lang; + } } - this.translteService.setTranslation( + this.translateService.setTranslation( lang, { streamChat: { ...en.streamChat, ...overrides } }, true