Skip to content

Commit 99160df

Browse files
valeriocomoastagi
andauthored
fix: migrate ngx-translate to v17
Co-authored-by: Andrea Stagi <stagi.andrea@gmail.com>
1 parent 15752db commit 99160df

7 files changed

Lines changed: 41 additions & 41 deletions

File tree

package-lock.json

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@
7575
"@angular/platform-browser": "^21.0.4",
7676
"@angular/platform-browser-dynamic": "^21.0.4",
7777
"@angular/router": "^21.0.4",
78-
"@ngx-translate/core": "^16.0.4",
79-
"@ngx-translate/http-loader": "^16.0.1",
78+
"@ngx-translate/core": "^17.0.0",
79+
"@ngx-translate/http-loader": "^17.0.0",
8080
"@standard-schema/spec": "^1.0.0",
8181
"@types/video.js": "^7.3.58",
8282
"@types/youtube": "^0.1.0",

projects/design-angular-kit/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@
5757
"@angular/core": "^21.0.4",
5858
"@angular/platform-browser": "^21.0.4",
5959
"@angular/router": "^21.0.4",
60-
"@ngx-translate/core": "^16.0.4",
61-
"@ngx-translate/http-loader": "^16.0.1",
60+
"@ngx-translate/core": "^17.0.0",
61+
"@ngx-translate/http-loader": "^17.0.0",
6262
"bootstrap-italia": "^2.16.2"
6363
},
6464
"sideEffects": false,

projects/design-angular-kit/src/lib/components/utils/language-switcher/language-switcher.component.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { ChangeDetectionStrategy, Component, Input, OnInit, inject } from '@angular/core';
2-
import { map, Observable, startWith } from 'rxjs';
1+
import { AsyncPipe } from '@angular/common';
2+
import { ChangeDetectionStrategy, Component, inject, Input, OnInit } from '@angular/core';
33
import { TranslateModule, TranslateService } from '@ngx-translate/core';
4+
import { map, Observable, startWith } from 'rxjs';
45
import { AvailableLanguage } from '../../../interfaces/utils';
5-
import { AsyncPipe } from '@angular/common';
66
import { ItDropdownModule } from '../../core/dropdown/dropdown.module';
77

88
@Component({
@@ -31,7 +31,7 @@ export class ItLanguageSwitcherComponent implements OnInit {
3131
const translateService = this.translateService;
3232

3333
this.currentLang$ = this.translateService.onLangChange.pipe(
34-
startWith({ lang: translateService.currentLang }),
34+
startWith({ lang: translateService.getCurrentLang() }),
3535
map(event => this.availableLanguages?.find(l => l.code === event.lang))
3636
);
3737
}

projects/design-angular-kit/src/lib/pipes/date-ago.pipe.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export class ItDateAgoPipe extends TranslatePipe implements PipeTransform {
1818
* @example 2 hours ago
1919
* @param value the Date or date string
2020
*/
21-
override transform(value: string | Date): string {
21+
override transform(value: string | Date | null | undefined): string {
2222
if (!value) {
2323
return '';
2424
}

projects/design-angular-kit/src/lib/pipes/duration.pipe.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ export class ItDurationPipe extends TranslatePipe implements PipeTransform {
3434
* @param value the number
3535
* @param type the number expressed type
3636
*/
37-
override transform(value: string | number | undefined, type: ItDurationPipeType): string {
37+
override transform(value: string | number | undefined | null, type: ItDurationPipeType): string {
3838
let valueAdjust = Number(value);
39-
if (isNaN(valueAdjust)) {
39+
if (isNaN(valueAdjust) || value === null) {
4040
return '';
4141
}
4242

projects/design-angular-kit/src/lib/provide-design-angular-kit.ts

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,8 @@
1-
import { HttpClient, provideHttpClient } from '@angular/common/http';
2-
import {
3-
EnvironmentProviders,
4-
importProvidersFrom,
5-
makeEnvironmentProviders,
6-
Provider,
7-
provideAppInitializer,
8-
inject,
9-
} from '@angular/core';
1+
import { provideHttpClient } from '@angular/common/http';
2+
import { EnvironmentProviders, inject, makeEnvironmentProviders, provideAppInitializer, Provider } from '@angular/core';
103
import { provideAnimationsAsync } from '@angular/platform-browser/animations/async';
11-
import { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';
12-
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
4+
import { provideTranslateService, TranslateService } from '@ngx-translate/core';
5+
import { provideTranslateHttpLoader } from '@ngx-translate/http-loader';
136
import { loadFonts } from 'bootstrap-italia';
147
import { DesignAngularKitConfig, IT_ASSET_BASE_PATH } from './interfaces/design-angular-kit-config';
158

@@ -52,17 +45,24 @@ export function provideDesignAngularKit(config?: DesignAngularKitConfig): Enviro
5245
const langPrefix = `${assetBasePath}/i18n/`;
5346
const langSuffix = `.json`; // TODO: add ?v${version} to prevent cache loading on version change
5447
providers.push(
55-
importProvidersFrom(
56-
TranslateModule.forRoot({
57-
loader: config?.translateLoader?.(langPrefix, langSuffix) ?? {
58-
provide: TranslateLoader,
59-
useFactory: (http: HttpClient) => new TranslateHttpLoader(http, langPrefix, langSuffix),
60-
deps: [HttpClient],
61-
},
62-
defaultLanguage: 'it',
63-
useDefaultLang: true,
64-
})
65-
)
48+
// Design Angular Kit < 21
49+
// ngx-translate <= 16
50+
// importProvidersFrom(
51+
// TranslateModule.forRoot({
52+
// loader: config?.translateLoader?.(langPrefix, langSuffix) ?? {
53+
// provide: TranslateLoader,
54+
// useFactory: (http: HttpClient) => new TranslateHttpLoader(http, langPrefix, langSuffix),
55+
// deps: [HttpClient],
56+
// },
57+
// fallbackLang: 'it'
58+
// })
59+
// )
60+
// Design Angular Kit >= 21
61+
// ngx-translate >= 17
62+
provideTranslateService({
63+
loader: provideTranslateHttpLoader({ prefix: langPrefix, suffix: langSuffix }),
64+
fallbackLang: 'it',
65+
})
6666
);
6767

6868
// Add provider to initialize library default languages

0 commit comments

Comments
 (0)