Skip to content

Commit b3dd4f0

Browse files
authored
Merge pull request #288 from BIATeam/develop
v4.0.2 from develop
2 parents 6028f22 + d5b7086 commit b3dd4f0

File tree

157 files changed

+5134
-1060
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

157 files changed

+5134
-1060
lines changed

Angular/angular.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,14 @@
118118
}
119119
]
120120
},
121+
"rosa": {
122+
"fileReplacements": [
123+
{
124+
"replace": "src/environments/environment.ts",
125+
"with": "src/environments/environment.rosa.ts"
126+
}
127+
]
128+
},
121129
"docker": {
122130
"fileReplacements": [
123131
{

Angular/package-lock.json

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

Angular/package.json

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"build:prod": "ng build --configuration production --base-href /BIADemo/App/",
1818
"build:prod2": "ng build --configuration production --base-href /BIADemo2/App/ --output-path dist/BIADemo2",
1919
"build:ocp": "ng build --configuration production,ocp",
20+
"build:rosa": "ng build --configuration production,rosa",
2021
"build:docker": "ng build --configuration docker",
2122
"deploy": "ng deploy --base-href=/BIADemo/",
2223
"styles-theme-dark": "dart compile-sass.dart ./src/assets/bia/primeng/bia/theme-dark.scss ./src/assets/bia/primeng/layout/styles/theme/theme-dark/theme-dark.css",
@@ -51,35 +52,35 @@
5152
"file-saver": "~2.0.5",
5253
"jwt-decode": "~4.0.0",
5354
"keycloak-angular": "~15.3.0",
54-
"keycloak-js": "~21.1.2",
55+
"keycloak-js": "~25.0.6",
5556
"ngx-logger": "~5.0.12",
5657
"papaparse": "~5.4.1",
5758
"primeflex": "~3.3.1",
5859
"primeicons": "~7.0.0",
5960
"primeng": "~17.18.15",
60-
"rxjs": "~7.8.1",
61+
"rxjs": "~7.8.2",
6162
"zone.js": "~0.14.10"
6263
},
6364
"devDependencies": {
64-
"@angular-devkit/build-angular": "~17.3.11",
65+
"@angular-devkit/build-angular": "^17.3.12",
6566
"@angular-eslint/builder": "~17.5.3",
6667
"@angular-eslint/eslint-plugin": "~17.5.3",
6768
"@angular-eslint/eslint-plugin-template": "~17.5.3",
6869
"@angular-eslint/schematics": "~17.5.3",
6970
"@angular-eslint/template-parser": "~17.5.3",
70-
"@angular/cli": "~17.3.11",
71+
"@angular/cli": "~17.3.12",
7172
"@angular/compiler-cli": "~17.3.12",
7273
"@angular/language-service": "~17.3.12",
7374
"@ngrx/store-devtools": "~17.2.0",
74-
"@types/node": "~20.17.14",
75+
"@types/node": "~20.17.23",
7576
"@types/papaparse": "~5.3.15",
7677
"@typescript-eslint/eslint-plugin": "~5.62.0",
7778
"@typescript-eslint/parser": "~5.62.0",
7879
"eslint": "~8.57.1",
7980
"eslint-config-prettier": "~9.1.0",
8081
"eslint-plugin-deprecation": "~3.0.0",
8182
"eslint-plugin-prettier": "~5.2.3",
82-
"prettier": "~3.4.2",
83+
"prettier": "~3.5.3",
8384
"prettier-eslint": "~16.3.0",
8485
"prettier-plugin-organize-imports": "~4.1.0",
8586
"ts-node": "~10.9.2",

Angular/src/app/app.component.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Component, OnInit } from '@angular/core';
1+
import { Component, HostListener, OnInit } from '@angular/core';
22
import { TranslateService } from '@ngx-translate/core';
33
import { PrimeNGConfig } from 'primeng/api';
44
import { BiaInjectExternalService } from './core/bia-core/services/bia-inject-external.service';
@@ -37,5 +37,11 @@ export class AppComponent implements OnInit {
3737
this.translateService
3838
.get('primeng')
3939
.subscribe(res => this.primeNgConfig.setTranslation(res));
40+
this.checkSmallScreen();
41+
}
42+
43+
@HostListener('window:resize', ['$event'])
44+
checkSmallScreen() {
45+
this.layoutService.checkSmallScreen();
4046
}
4147
}

Angular/src/app/core/bia-core/services/abstract-das-with-list-and-item.service.ts

Lines changed: 0 additions & 61 deletions
This file was deleted.
Lines changed: 53 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,61 @@
11
import { Injector } from '@angular/core';
2-
import { AbstractDasWithListAndItem } from './abstract-das-with-list-and-item.service';
2+
import { TableLazyLoadEvent } from 'primeng/table';
3+
import { Observable } from 'rxjs';
4+
import { DataResult } from 'src/app/shared/bia-shared/model/data-result';
5+
import {
6+
DeleteParam,
7+
DeletesParam,
8+
GetListByPostParam,
9+
GetListParam,
10+
GetParam,
11+
PostParam,
12+
PutParam,
13+
SaveParam,
14+
} from '../models/http-params';
15+
import { GenericDas } from './generic-das.service';
316

417
export abstract class AbstractDas<
5-
TOut,
18+
TOutList,
19+
TOut = TOutList,
620
TIn = Pick<TOut, Exclude<keyof TOut, 'id'>>,
7-
> extends AbstractDasWithListAndItem<TOut, TOut, TIn> {
21+
> extends GenericDas {
822
constructor(injector: Injector, endpoint: string) {
923
super(injector, endpoint);
1024
}
25+
26+
getList(param?: GetListParam): Observable<TOutList[]> {
27+
return this.getListItems<TOutList>(param);
28+
}
29+
30+
getListByPost(param: GetListByPostParam): Observable<DataResult<TOutList[]>> {
31+
return this.getListItemsByPost<TOutList>(param);
32+
}
33+
34+
get(param?: GetParam): Observable<TOut> {
35+
return this.getItem<TOut>(param);
36+
}
37+
38+
save(param: SaveParam<TIn>) {
39+
return this.saveItem<TIn, TOut>(param);
40+
}
41+
42+
put(param: PutParam<TIn>) {
43+
return this.putItem<TIn, TOut>(param);
44+
}
45+
46+
post(param: PostParam<TIn>) {
47+
return this.postItem<TIn, TOut>(param);
48+
}
49+
50+
delete(param: DeleteParam) {
51+
return this.deleteItem(param);
52+
}
53+
54+
deletes(param: DeletesParam) {
55+
return this.deleteItems(param);
56+
}
57+
58+
getFile(event: TableLazyLoadEvent, endpoint = 'csv'): Observable<any> {
59+
return this.getItemFile(event, endpoint);
60+
}
1161
}

Angular/src/app/core/bia-core/services/bia-translation.service.ts

Lines changed: 8 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -90,13 +90,18 @@ export class BiaTranslationService {
9090
.pipe(distinctUntilChanged())
9191
.pipe(skip(1));
9292

93+
protected currentCulture = 'None';
94+
protected currentLanguage = 'None';
95+
9396
constructor(
9497
protected translate: TranslateService,
9598
@Inject(LOCALE_ID) localeId: string,
9699
protected store: Store<AppState>,
97100
protected primeNgConfig: PrimeNGConfig,
98101
protected authService: AuthService
99102
) {
103+
// force language initialization to avoid double authentication.
104+
this.loadAndChangeLanguage(getCurrentCulture(), false);
100105
this.currentCultureDateFormat$.subscribe(dateFormat => {
101106
Calendar.prototype.getDateFormat = () => dateFormat.primeDateFormat;
102107
});
@@ -110,12 +115,10 @@ export class BiaTranslationService {
110115
this.translate.setTranslation(data[TRANSLATION_LANG_KEY], data, true);
111116
}
112117

113-
protected currentCulture = 'None';
114-
protected currentLanguage = 'None';
115118
// Because we add some translations (registerLocaleData), ngx-translate doesn't modules translations
116119
// So we need to call getTranslation manually
117120
// NOTE: Check if it's still usefull
118-
loadAndChangeLanguage(culture: string, defaultLang?: string) {
121+
loadAndChangeLanguage(culture: string, reLoginIfRequiered = true) {
119122
if (this.currentCulture !== culture) {
120123
const lang = culture.split('-')[0];
121124
this.currentCulture = culture;
@@ -126,26 +129,12 @@ export class BiaTranslationService {
126129
translationLoaders$.push(translateService.getTranslation(lang));
127130
}
128131
}
129-
if (
130-
defaultLang &&
131-
defaultLang !== lang &&
132-
!this.translationsLoaded[defaultLang]
133-
) {
134-
for (const translateService2 of translateServices) {
135-
translationLoaders$.push(
136-
translateService2.getTranslation(defaultLang)
137-
);
138-
}
139-
}
140132
let lang$: Observable<any> = of(undefined);
141133
if (translationLoaders$.length) {
142-
lang$ = this.loadTranslations(translationLoaders$, lang, defaultLang);
134+
lang$ = this.loadTranslations(translationLoaders$, lang);
143135
}
144136
lang$.subscribe(() => {
145137
this.translate.use(lang);
146-
if (defaultLang) {
147-
this.translate.setDefaultLang(defaultLang);
148-
}
149138
try {
150139
localStorage.setItem(STORAGE_CULTURE_KEY, culture);
151140
} catch (err) {
@@ -158,7 +147,7 @@ export class BiaTranslationService {
158147
.subscribe(res => this.primeNgConfig.setTranslation(res));
159148
if (this.currentLanguage !== lang) {
160149
this.currentLanguage = lang;
161-
this.authService.reLogin();
150+
if (reLoginIfRequiered) this.authService.reLogin();
162151
}
163152
}
164153
}

Angular/src/app/features/aircraft-maintenance-companies/children/maintenance-teams/store/maintenance-teams-reducer.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,14 @@ export const INIT_STATE: State = maintenanceTeamsAdapter.getInitialState({
4141

4242
export const maintenanceTeamReducers = createReducer<State>(
4343
INIT_STATE,
44+
on(FeatureMaintenanceTeamsActions.clearAll, state => {
45+
const stateUpdated = maintenanceTeamsAdapter.removeAll(state);
46+
stateUpdated.totalCount = 0;
47+
return stateUpdated;
48+
}),
49+
on(FeatureMaintenanceTeamsActions.clearCurrent, state => {
50+
return { ...state, currentMaintenanceTeam: <MaintenanceTeam>{} };
51+
}),
4452
on(FeatureMaintenanceTeamsActions.loadAllByPost, state => {
4553
return { ...state, loadingGetAll: true };
4654
}),

Angular/src/app/features/aircraft-maintenance-companies/store/aircraft-maintenance-companies-reducer.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,17 @@ export const INIT_STATE: State =
4444

4545
export const aircraftMaintenanceCompanyReducers = createReducer<State>(
4646
INIT_STATE,
47+
on(FeatureAircraftMaintenanceCompaniesActions.clearAll, state => {
48+
const stateUpdated = aircraftMaintenanceCompaniesAdapter.removeAll(state);
49+
stateUpdated.totalCount = 0;
50+
return stateUpdated;
51+
}),
52+
on(FeatureAircraftMaintenanceCompaniesActions.clearCurrent, state => {
53+
return {
54+
...state,
55+
currentAircraftMaintenanceCompany: <AircraftMaintenanceCompany>{},
56+
};
57+
}),
4758
on(FeatureAircraftMaintenanceCompaniesActions.loadAllByPost, state => {
4859
return { ...state, loadingGetAll: true };
4960
}),

Angular/src/app/features/airports/store/airports-reducer.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,14 @@ export const INIT_STATE: State = airportsAdapter.getInitialState({
4141

4242
export const airportReducers = createReducer<State>(
4343
INIT_STATE,
44+
on(FeatureAirportsActions.clearAll, state => {
45+
const stateUpdated = airportsAdapter.removeAll(state);
46+
stateUpdated.totalCount = 0;
47+
return stateUpdated;
48+
}),
49+
on(FeatureAirportsActions.clearCurrent, state => {
50+
return { ...state, currentAirport: <Airport>{} };
51+
}),
4452
on(FeatureAirportsActions.loadAllByPost, state => {
4553
return { ...state, loadingGetAll: true };
4654
}),

0 commit comments

Comments
 (0)