diff --git a/.eslintrc.json b/.eslintrc.json index fe31ef2d2b48b4c4c66703048418a687d0db83f9..627aaa08af31db88310a53cf538f2d196d49f402 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -29,7 +29,10 @@ "prefix": "app", "style": "kebab-case" } - ] + ], + "spaced-comment": ["error", "always", { "block": { "exceptions": ["*"] } }], + + "@typescript-eslint/prefer-optional-chain": "warn" } }, { diff --git a/.vscode/settings.json b/.vscode/settings.json index 6f79238d7b0b16988bdca86977c9610fc986a24a..3658ccdb74bbf35c8c728c73cdf39aa95acda6bc 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -42,6 +42,7 @@ "metropole", "Metropole", "monday", + "NOSONAR", "onespace", "orientator", "Orientator", diff --git a/src/app/admin/components/manage-users/manage-users.component.ts b/src/app/admin/components/manage-users/manage-users.component.ts index ad7d513991c543ae74d5b906c195f9bfbffe0ef7..12bbd8a51b1d025db2c4bc5619a2badc9bd53900 100644 --- a/src/app/admin/components/manage-users/manage-users.component.ts +++ b/src/app/admin/components/manage-users/manage-users.component.ts @@ -229,7 +229,7 @@ export class ManageUsersComponent { }); } } else { - if (context.oldValue && context.oldValue.name) { + if (context.oldValue?.name) { context.node.data[context.colDef.field] = context.oldValue; context.api.refreshCells({ rowNodes: [context.node], columns: [context.column.colId] }); } @@ -253,7 +253,7 @@ export class ManageUsersComponent { }); } } else { - if (context.oldValue && context.oldValue.name) { + if (context.oldValue?.name) { context.node.data[context.colDef.field] = context.oldValue; context.api.refreshCells({ rowNodes: [context.node], columns: [context.column.colId] }); } diff --git a/src/app/app.component.spec.ts b/src/app/app.component.spec.ts index 1a1d0edd2fdb7f09584a8439906e513aa042fe47..fa8a3e7879e43d1a231c9d4cd99e75547da0faec 100644 --- a/src/app/app.component.spec.ts +++ b/src/app/app.component.spec.ts @@ -23,7 +23,7 @@ describe('AppComponent', () => { expect(app.title).toEqual('pamn'); }); - /*it('should render title', () => { + /* it('should render title', () => { const fixture = TestBed.createComponent(AppComponent); fixture.detectChanges(); const compiled = fixture.nativeElement; diff --git a/src/app/form/form-view/form-view.component.ts b/src/app/form/form-view/form-view.component.ts index 076e176981fc05c67711da24a4e00e14528d1fcc..4f16a52de1952f0001c1ee90a2001bc701602b4e 100644 --- a/src/app/form/form-view/form-view.component.ts +++ b/src/app/form/form-view/form-view.component.ts @@ -194,10 +194,7 @@ export class FormViewComponent implements OnInit, AfterViewInit { private createAccountForm(email?: string): void { this.accountForm = new UntypedFormGroup( { - email: new UntypedFormControl(email ? email : '', [ - Validators.required, - Validators.pattern(CustomRegExp.EMAIL), - ]), + email: new UntypedFormControl(email ?? '', [Validators.required, Validators.pattern(CustomRegExp.EMAIL)]), name: new UntypedFormControl('', [Validators.required, Validators.pattern(CustomRegExp.TEXT_WITHOUT_NUMBER)]), surname: new UntypedFormControl('', [ Validators.required, @@ -206,7 +203,7 @@ export class FormViewComponent implements OnInit, AfterViewInit { phone: new UntypedFormControl('', [Validators.required, Validators.pattern(CustomRegExp.PHONE)]), password: new UntypedFormControl('', [ Validators.required, - Validators.pattern(CustomRegExp.PASSWORD), //NOSONAR + Validators.pattern(CustomRegExp.PASSWORD), // NOSONAR ]), confirmPassword: new UntypedFormControl(''), }, @@ -347,7 +344,7 @@ export class FormViewComponent implements OnInit, AfterViewInit { }).subscribe(async () => { // if register a new user as a new member structure, no structure to choose if (this.isRegisterNewMember) { - if (this.profile.job && this.profile.job.hasPersonalOffer) { + if (this.profile.job?.hasPersonalOffer) { this.structureService.getStructure(this.profile.structuresLink[0]).subscribe((structure) => { this.structure = new Structure(structure); this.router.navigateByUrl('form/personaloffer'); diff --git a/src/app/form/form-view/structure-form/structure-form.component.ts b/src/app/form/form-view/structure-form/structure-form.component.ts index e6a3e1b6f79c1dde6463d83d173353647576217d..3a12a285a3fd7ebeeb91f415707e5d39e3c409f4 100644 --- a/src/app/form/form-view/structure-form/structure-form.component.ts +++ b/src/app/form/form-view/structure-form/structure-form.component.ts @@ -63,7 +63,7 @@ export class StructureFormComponent implements OnChanges, OnInit { ngOnChanges(changes: SimpleChanges): void { if (changes.currentStep) { - //facultative steps + // facultative steps if ( this.currentStep === structureFormStep.structureCreationFinishedInfo || this.currentStep === structureFormStep.structureHours || diff --git a/src/app/form/orientation-form-view/online-demarch/appointment/make-appointment/make-appointment.component.ts b/src/app/form/orientation-form-view/online-demarch/appointment/make-appointment/make-appointment.component.ts index 577a07b0dcbbeef31cb45fc1bd5cabaeeeaf0b8b..af7010b67869570b16872457f63b56eeb2292716 100644 --- a/src/app/form/orientation-form-view/online-demarch/appointment/make-appointment/make-appointment.component.ts +++ b/src/app/form/orientation-form-view/online-demarch/appointment/make-appointment/make-appointment.component.ts @@ -108,7 +108,7 @@ export class MakeAppointmentComponent implements OnInit { this.structures.forEach((structure) => { // check each of its personnalOffers structure.personalOffers?.forEach((po) => { - //if the needs the user selected are all part of the personalOffer, keep the structure for display + // if the needs the user selected are all part of the personalOffer, keep the structure for display if ( this.filtersOnOffers.onlineProcedures.every((offer) => po.categories.onlineProcedures.includes(offer)) && this.filtersOnOffers.baseSkills.every((offer) => po.categories.baseSkills.includes(offer)) diff --git a/src/app/form/orientation-form-view/online-demarch/online-demarch-common/online-demarch.component.ts b/src/app/form/orientation-form-view/online-demarch/online-demarch-common/online-demarch.component.ts index 1ef6029885e5e6fb7ca8d5dba82be8f6336280d1..a2521e608f9d13d0b54dab1322ab5bf4cf5c1248 100644 --- a/src/app/form/orientation-form-view/online-demarch/online-demarch-common/online-demarch.component.ts +++ b/src/app/form/orientation-form-view/online-demarch/online-demarch-common/online-demarch.component.ts @@ -21,7 +21,7 @@ export class OnlineDemarchComponent implements OnInit { ngOnInit(): void { this.selectedModules = this.form.get('onlineDemarcheType').value; - //TODO move this in form init categories + // TODO move this in form init categories this.searchService.getCategories().subscribe((categories: Category[]) => { this.accompanimentType = categories.find((el) => el.id === CategoryEnum.onlineProcedures).modules; }); @@ -43,7 +43,7 @@ export class OnlineDemarchComponent implements OnInit { } public isSelectedModule(moduleId: string): boolean { - if (this.selectedModules && this.selectedModules.map((module) => module.id).includes(moduleId)) return true; + if (this.selectedModules?.map((module) => module.id).includes(moduleId)) return true; return false; } public handleClose(): void { diff --git a/src/app/form/orientation-form-view/orientation-form-view.component.ts b/src/app/form/orientation-form-view/orientation-form-view.component.ts index f36b002df3abe27502a1dea4b686120fb299267e..d8e4e26dfddb60a48b85c2ffac08856a9279bc51 100644 --- a/src/app/form/orientation-form-view/orientation-form-view.component.ts +++ b/src/app/form/orientation-form-view/orientation-form-view.component.ts @@ -638,7 +638,7 @@ export class OrientationFormViewComponent implements OnInit, AfterContentChecked private targetStructures(structureChoice: AbstractControl): OrientationIndicatorStructure[] { const targetStructures: OrientationIndicatorStructure[] = []; - if (structureChoice && structureChoice.value) { + if (structureChoice?.value) { structureChoice.value.forEach((structure: Structure) => { targetStructures.push({ nom: structure.structureName, diff --git a/src/app/map/models/geojson.model.ts b/src/app/map/models/geojson.model.ts index 8ca263895f084b62e528a5dc49280ded859bdab9..e6821e97a1a6938b8b67dc6e722749a123a67aef 100644 --- a/src/app/map/models/geojson.model.ts +++ b/src/app/map/models/geojson.model.ts @@ -8,7 +8,7 @@ export class GeoJson { constructor(obj?: any) { Object.assign(this, obj, { - geometry: obj && obj.geometry ? new AddressGeometry(obj.geometry) : null, + geometry: obj?.geometry ? new AddressGeometry(obj.geometry) : null, }); } } diff --git a/src/app/models/day.model.ts b/src/app/models/day.model.ts index 005ccfa242ebb935a533cd0d2f151dded3377e1f..a73a3ba7db2f0548295b4eca05daedea82215d5e 100644 --- a/src/app/models/day.model.ts +++ b/src/app/models/day.model.ts @@ -6,7 +6,7 @@ export class Day { constructor(obj?: any) { Object.assign(this, obj, { - time: obj && obj.time ? obj.time.map((time) => new Time(time)) : [], + time: obj?.time ? obj.time.map((time) => new Time(time)) : [], }); } } diff --git a/src/app/models/structure.model.ts b/src/app/models/structure.model.ts index 1e4cd5c613a648487c0b1ca6338e07c1bc219fd8..2143e144b6cbc35d03d22cb32ccc1efe584d4306 100644 --- a/src/app/models/structure.model.ts +++ b/src/app/models/structure.model.ts @@ -65,7 +65,7 @@ export class Structure { constructor(obj?: any) { Object.assign(this, obj, { - hours: obj && obj.hours ? new Week(obj.hours) : new Week(), + hours: obj?.hours ? new Week(obj.hours) : new Week(), categories: { accessModality: obj?.categories?.accessModality || [], advancedSkills: obj?.categories?.advancedSkills || [], diff --git a/src/app/models/week.model.ts b/src/app/models/week.model.ts index d76404c96bf0409bc21b1aafd49260d94f39bf12..77c35b5c44a2cc4fb550620ae1331121ef550d71 100644 --- a/src/app/models/week.model.ts +++ b/src/app/models/week.model.ts @@ -13,13 +13,13 @@ export class Week { constructor(obj?: any) { Object.assign(this, obj, { - monday: obj && obj.monday ? new Day(obj.monday) : new Day(), - tuesday: obj && obj.tuesday ? new Day(obj.tuesday) : new Day(), - wednesday: obj && obj.wednesday ? new Day(obj.wednesday) : new Day(), - thursday: obj && obj.thursday ? new Day(obj.thursday) : new Day(), - friday: obj && obj.friday ? new Day(obj.friday) : new Day(), - saturday: obj && obj.saturday ? new Day(obj.saturday) : new Day(), - sunday: obj && obj.sunday ? new Day(obj.sunday) : new Day(), + monday: obj?.monday ? new Day(obj.monday) : new Day(), + tuesday: obj?.tuesday ? new Day(obj.tuesday) : new Day(), + wednesday: obj?.wednesday ? new Day(obj.wednesday) : new Day(), + thursday: obj?.thursday ? new Day(obj.thursday) : new Day(), + friday: obj?.friday ? new Day(obj.friday) : new Day(), + saturday: obj?.saturday ? new Day(obj.saturday) : new Day(), + sunday: obj?.sunday ? new Day(obj.sunday) : new Day(), }); } diff --git a/src/app/profile/structure-edition-summary/structure-edition-summary.component.ts b/src/app/profile/structure-edition-summary/structure-edition-summary.component.ts index d0ab70c027fb40e59bd615e0419b80384e85aadd..1e7fc52459353019c58aa4bbac518ef931df431e 100644 --- a/src/app/profile/structure-edition-summary/structure-edition-summary.component.ts +++ b/src/app/profile/structure-edition-summary/structure-edition-summary.component.ts @@ -39,7 +39,7 @@ export class StructureEditionSummaryComponent implements OnInit { public buttonTypeEnum = ButtonType; public equipmentEnum = Equipment; - //Digital learning + // Digital learning public categories: Category[] = []; public showBaseSkills = false; public showAdvancedSkills = false; diff --git a/src/app/shared/components/accompaniment-picker/accompaniment-picker.component.ts b/src/app/shared/components/accompaniment-picker/accompaniment-picker.component.ts index cbd8c77f3667dbcc7ec35e09bdf4195e8f678e70..0f2e2fbac4b7fdcff60c73692ace2ebb9d6755f7 100644 --- a/src/app/shared/components/accompaniment-picker/accompaniment-picker.component.ts +++ b/src/app/shared/components/accompaniment-picker/accompaniment-picker.component.ts @@ -46,7 +46,7 @@ export class AccompanimentPickerComponent implements OnInit, OnChanges { } public isSelectedModule(module: Module): boolean { - if (this.selectedModules && this.selectedModules.includes(module)) return true; + if (this.selectedModules?.includes(module)) return true; return false; } } diff --git a/src/app/shared/enum/structureType.enum.ts b/src/app/shared/enum/structureType.enum.ts index a43e115ae7083dc9536c21e87cddf27b87b51a4f..7016d6b298dd6faf3d242886a6bf73cd88e81b48 100644 --- a/src/app/shared/enum/structureType.enum.ts +++ b/src/app/shared/enum/structureType.enum.ts @@ -2,7 +2,7 @@ export enum StructureTypeEnum { fablab = 'Fablab', // A supprimer ? - //A remplacer par Association ? + // A remplacer par Association ? associationQuartier = 'Structure associative de quartier', associationCaritative = 'Association caritative', diff --git a/src/app/shared/pipes/phone.pipe.ts b/src/app/shared/pipes/phone.pipe.ts index af1e964f77bab9faf286c0171103acb5573fa631..4e5d2693e260d1b52fe11abd55c38b90a3dee111 100644 --- a/src/app/shared/pipes/phone.pipe.ts +++ b/src/app/shared/pipes/phone.pipe.ts @@ -3,7 +3,7 @@ import { Pipe, PipeTransform } from '@angular/core'; @Pipe({ name: 'phone' }) export class PhonePipe implements PipeTransform { transform(value: string): string { - //Remove dot and space from the phone string and add space in each 2 numbers + // Remove dot and space from the phone string and add space in each 2 numbers const regexArray = value.replace(/\s|\./g, '').match(/.{1,2}/g); return regexArray.join(' '); } diff --git a/src/app/structure-list/components/more-filters/more-filters.component.ts b/src/app/structure-list/components/more-filters/more-filters.component.ts index 5022bf2ca88ef73b4c821e72027eebaa9fc6990e..b20f6786097e519f78a9b328c8d0d26acb3da822 100644 --- a/src/app/structure-list/components/more-filters/more-filters.component.ts +++ b/src/app/structure-list/components/more-filters/more-filters.component.ts @@ -16,7 +16,7 @@ export class MoreFiltersComponent implements OnInit, OnChanges { @Input() public modalType: TypeModal; @Input() public categories: Category[]; - //checked modules filter list + // checked modules filter list @Input() public modules: Module[] = []; @Output() searchEvent = new EventEmitter(); @Output() closeEvent = new EventEmitter(); diff --git a/src/app/structure-list/components/structure-list-search/structure-list-search.component.ts b/src/app/structure-list/components/structure-list-search/structure-list-search.component.ts index a57d693ee155b082003d4da47113546a852b11e7..740599d6f66adf7e1766c07e0fe45618e9d5035e 100644 --- a/src/app/structure-list/components/structure-list-search/structure-list-search.component.ts +++ b/src/app/structure-list/components/structure-list-search/structure-list-search.component.ts @@ -107,7 +107,7 @@ export class StructureListSearchComponent implements OnInit { this.searchEvent.emit(filters); } - //Update url with new params added or removed + // Update url with new params added or removed public updateUrlParams(filters: Filter[]): void { // No url update if the page is displaying structure details, because it must keep the url with the structure id, neither for orientation if ( diff --git a/src/app/structure-list/models/category.model.ts b/src/app/structure-list/models/category.model.ts index 1bef26f7746ac0c0a1fced7dfcd9828d2baf74c9..2987cf0c4e65a346cac87bb80284626724a34342 100644 --- a/src/app/structure-list/models/category.model.ts +++ b/src/app/structure-list/models/category.model.ts @@ -8,10 +8,9 @@ export class Category { constructor(obj?: any) { Object.assign(this, obj, { - modules: - obj && obj.modules - ? obj.modules.map((module: Module) => new Module(module.id, module.name, module.displayText)) - : null, + modules: obj?.modules + ? obj.modules.map((module: Module) => new Module(module.id, module.name, module.displayText)) + : null, }); } } diff --git a/src/app/utils/CustomRegExp.ts b/src/app/utils/CustomRegExp.ts index 7582ce5fa6901e809df38a864cee2705528f3e87..3aec8f1cadaf692e1531977efec39cc6fcdb5f5f 100644 --- a/src/app/utils/CustomRegExp.ts +++ b/src/app/utils/CustomRegExp.ts @@ -2,28 +2,28 @@ export class CustomRegExp { /** * Validate a password (at least 8 characters, 1 uppercase letter, 1 lowercase letter, 1 number, and 1 special character) */ - public static readonly DIGIT: RegExp = /^(?=.*[0-9])/; //NOSONAR - public static readonly SPECHAR: RegExp = /^(?=.*[*.! @#$%^&(){}\[\]:;<>,?\/\\~_+\-=|])/; //NOSONAR - public static readonly UPPERCASE: RegExp = /^(?=.*[A-Z])/; //NOSONAR - public static readonly LOWERCASE: RegExp = /^(?=.*[a-z])/; //NOSONAR - public static readonly MINLENGTH: RegExp = /^(?=.{8,})/; //NOSONAR + public static readonly DIGIT: RegExp = /^(?=.*[0-9])/; // NOSONAR + public static readonly SPECHAR: RegExp = /^(?=.*[*.! @#$%^&(){}\[\]:;<>,?\/\\~_+\-=|])/; // NOSONAR + public static readonly UPPERCASE: RegExp = /^(?=.*[A-Z])/; // NOSONAR + public static readonly LOWERCASE: RegExp = /^(?=.*[a-z])/; // NOSONAR + public static readonly MINLENGTH: RegExp = /^(?=.{8,})/; // NOSONAR public static readonly PASSWORD: RegExp = new RegExp( CustomRegExp.LOWERCASE.source + CustomRegExp.UPPERCASE.source + CustomRegExp.DIGIT.source + CustomRegExp.SPECHAR.source + CustomRegExp.MINLENGTH.source - ); //NOSONAR + ); // NOSONAR /** * Validate an email */ - public static readonly EMAIL: RegExp = /^[A-Za-z0-9.\-_]+@[A-Za-z0-9.-]+[.][a-z]{2,3}$/; //NOSONAR - public static readonly TEXT_WITHOUT_NUMBER: RegExp = /^[A-Za-zÀ-ÖØ-öø-ÿ-\' ]{1,}$/; //NOSONAR + public static readonly EMAIL: RegExp = /^[A-Za-z0-9.\-_]+@[A-Za-z0-9.-]+[.][a-z]{2,3}$/; // NOSONAR + public static readonly TEXT_WITHOUT_NUMBER: RegExp = /^[A-Za-zÀ-ÖØ-öø-ÿ-\' ]{1,}$/; // NOSONAR /** * Validate a phone number (4 or 10 digits, allowing spaces, dashes and dots as spacers) */ - public static readonly PHONE: RegExp = /^(?:(?:\+|00)|0)\s*[1-9](?:[\s.-]*\d{2}){4}$|^(?:[\s.-]*\d{2}){2}$/; //NOSONAR - public static readonly WEBSITE: RegExp = /^(https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9]+\.[^\s]{2,}|www\.[a-zA-Z0-9]+\.[^\s]{2,}|[a-zA-Z0-9]+\.[^\s]{2,})/; //NOSONAR + public static readonly PHONE: RegExp = /^(?:(?:\+|00)|0)\s*[1-9](?:[\s.-]*\d{2}){4}$|^(?:[\s.-]*\d{2}){2}$/; // NOSONAR + public static readonly WEBSITE: RegExp = /^(https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9]+\.[^\s]{2,}|www\.[a-zA-Z0-9]+\.[^\s]{2,}|[a-zA-Z0-9]+\.[^\s]{2,})/; // NOSONAR public static readonly LINKEDIN: string = '(linkedin.com/.{1,})'; public static readonly FACEBOOK: string = '(facebook.com/.{1,})'; public static readonly TWITTER: string = '(twitter.com/.{1,})'; @@ -33,5 +33,5 @@ export class CustomRegExp { /** * Validate a location request in search bar */ - public static readonly LOCATION: RegExp = /^\d+\s[A-z]+\s[A-z]+/g; //NOSONAR + public static readonly LOCATION: RegExp = /^\d+\s[A-z]+\s[A-z]+/g; // NOSONAR } diff --git a/src/app/utils/formUtils.ts b/src/app/utils/formUtils.ts index ed9bef3193b80787f7cc3772285794a67633ca2f..0d8760ea02414acc513d291c735a49faadd7a5ef 100644 --- a/src/app/utils/formUtils.ts +++ b/src/app/utils/formUtils.ts @@ -122,7 +122,7 @@ export class formUtils { advancedSkills: new UntypedFormControl(structure.categories?.advancedSkills), solidarityMaterial: this.loadArrayForCheckbox(structure.categories?.solidarityMaterial, false), }), - //TODO: remettre ou migrer les données de accompagnements à distance + // TODO: remettre ou migrer les données de accompagnements à distance remoteAccompaniment: new UntypedFormControl(false), otherDescription: new UntypedFormControl(structure.otherDescription), nbComputers: new UntypedFormControl( diff --git a/src/app/utils/utils.ts b/src/app/utils/utils.ts index 373828f1de02d633b5c81562321481f2d8fd97f1..a2c893b11d2c87b653b19659f21b941da850312f 100644 --- a/src/app/utils/utils.ts +++ b/src/app/utils/utils.ts @@ -23,7 +23,7 @@ export class Utils { // Check to refresh every 2 number. if (phoneNoSpace.length % 2 === 0) { // Add space every 2 number - form.get(controlName).setValue(phoneNoSpace.replace(/(?!^)(?=(?:\d{2})+$)/g, ' ')); //NOSONAR + form.get(controlName).setValue(phoneNoSpace.replace(/(?!^)(?=(?:\d{2})+$)/g, ' ')); // NOSONAR } } @@ -33,7 +33,7 @@ export class Utils { // Check to refresh every 2 number. if (phoneNoSpace.length % 2 === 0) { // Add space every 2 number - return phoneNoSpace.replace(/(?!^)(?=(?:\d{2})+$)/g, ' '); //NOSONAR + return phoneNoSpace.replace(/(?!^)(?=(?:\d{2})+$)/g, ' '); // NOSONAR } return phoneNumber; } diff --git a/src/stories/button.component.ts b/src/stories/button.component.ts index 28dcc97e5526202b273ba0c521dbae4d63d14031..955870cdf85461e3ffa16b9e7a5a2cd45867704d 100644 --- a/src/stories/button.component.ts +++ b/src/stories/button.component.ts @@ -6,9 +6,9 @@ import { Component, Input, Output, EventEmitter } from '@angular/core'; imports: [CommonModule], template: ` <button type="button" - (click)="onClick.emit($event)" - [ngClass]="classes" + [ngClass]="classes" [ngStyle]="{ 'background-color': backgroundColor }" + (click)="onClick.emit($event)"" > {{ label }} </button>`, diff --git a/src/stories/header.component.ts b/src/stories/header.component.ts index 2980d3b3202e6cf0a32d4a9663ccc3f217cc643c..1e63bf2165679b4cca8a0c48b220eabc16714c36 100644 --- a/src/stories/header.component.ts +++ b/src/stories/header.component.ts @@ -33,8 +33,8 @@ import type { User } from './User'; <storybook-button *ngIf="user" size="small" - (onClick)="onLogout.emit($event)" - label="Log out" + label="Log out" + (onClick)="onLogout.emit($event)"" ></storybook-button> </div> <div *ngIf="!user"> @@ -42,8 +42,8 @@ import type { User } from './User'; *ngIf="!user" size="small" class="margin-left" - (onClick)="onLogin.emit($event)" - label="Log in" + label="Log in" + (onClick)="onLogin.emit($event)"" ></storybook-button> <storybook-button *ngIf="!user" @@ -51,8 +51,8 @@ import type { User } from './User'; size="small" primary="true" class="margin-left" - (onClick)="onCreateAccount.emit($event)" - label="Sign up" + label="Sign up" + (onClick)="onCreateAccount.emit($event)"" ></storybook-button> </div> </div> diff --git a/src/test.ts b/src/test.ts index 408798c0739a6e58a4b89550aa62b05a60f021dd..0dcc45fbef118ee9c408debbf6c950f2868a2387 100644 --- a/src/test.ts +++ b/src/test.ts @@ -7,4 +7,4 @@ import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@ang // First, initialize the Angular testing environment. getTestBed().initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting(), { teardown: { destroyAfterEach: false } -}); //NOSONAR +}); // NOSONAR