@igo2/common
Version:
1 lines • 13.7 kB
Source Map (JSON)
{"version":3,"file":"igo2-common-select-value-dialog.mjs","sources":["../../../packages/common/select-value-dialog/src/select-value-dialog.enums.ts","../../../packages/common/select-value-dialog/src/select-value-check-radio-dialog.component.ts","../../../packages/common/select-value-dialog/src/select-value-check-radio-dialog.component.html","../../../packages/common/select-value-dialog/src/select-value-dialog.service.ts","../../../packages/common/select-value-dialog/src/select-value-dialog.module.ts","../../../packages/common/select-value-dialog/src/igo2-common-select-value-dialog.ts"],"sourcesContent":["export enum SelectValueDialogType {\n Radio = 'radio',\n Checkbox = 'checkbox'\n}\n","import { AsyncPipe, NgFor, NgIf } from '@angular/common';\nimport { Component, Inject, OnInit, Optional } from '@angular/core';\nimport {\n FormsModule,\n ReactiveFormsModule,\n UntypedFormBuilder,\n UntypedFormGroup\n} from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport {\n MAT_DIALOG_DATA,\n MatDialogActions,\n MatDialogRef,\n MatDialogTitle\n} from '@angular/material/dialog';\nimport { MatRadioChange, MatRadioModule } from '@angular/material/radio';\n\nimport { LanguageService } from '@igo2/core/language';\nimport { IgoLanguageModule } from '@igo2/core/language';\n\nimport { BehaviorSubject } from 'rxjs';\n\nimport { SelectValueDialogType } from './select-value-dialog.enums';\nimport { SelectValueData } from './select-value-dialog.interface';\n\n@Component({\n selector: 'igo-select-value-check-radio-dialog',\n templateUrl: './select-value-check-radio-dialog.component.html',\n styleUrls: ['./select-value-check-radio-dialog.component.scss'],\n imports: [\n MatDialogTitle,\n FormsModule,\n ReactiveFormsModule,\n NgIf,\n NgFor,\n MatCheckboxModule,\n MatRadioModule,\n MatDialogActions,\n MatButtonModule,\n AsyncPipe,\n IgoLanguageModule\n ]\n})\nexport class SelectValueCheckRadioDialogComponent implements OnInit {\n public formGroup: UntypedFormGroup;\n public isDisabled$ = new BehaviorSubject<boolean>(true);\n\n constructor(\n private formBuilder: UntypedFormBuilder,\n public languageService: LanguageService,\n public dialogRef: MatDialogRef<SelectValueCheckRadioDialogComponent>,\n @Optional()\n @Inject(MAT_DIALOG_DATA)\n public data: SelectValueData\n ) {\n this.formGroup = this.formBuilder.group(this.getFg());\n this.data.selectFieldText =\n this.data.selectFieldText ??\n 'igo.common.selectValueDialog.selectFieldText';\n this.data.processButtonText =\n this.data.processButtonText ??\n 'igo.common.selectValueDialog.processButtonText';\n this.data.cancelButtonText =\n this.data.cancelButtonText ??\n 'igo.common.selectValueDialog.cancelButtonText';\n this.data.title =\n this.data.title ?? 'igo.common.selectValueDialog.multipleTitle';\n if (this.data.type === SelectValueDialogType.Radio) {\n this.data.title = 'igo.common.selectValueDialog.title';\n }\n }\n\n ngOnInit() {\n this.formGroup.valueChanges.subscribe(() => this.canProcess());\n }\n\n getFg() {\n const a = {};\n this.data.choices.map((l) => (a[l.value] = false));\n return a;\n }\n\n canProcess() {\n const choices = this.data.choices.map((l) => l.value);\n const selectedIds = [];\n choices.map((l) =>\n this.formGroup.value[l] ? selectedIds.push(l) : undefined\n );\n selectedIds.length\n ? this.isDisabled$.next(false)\n : this.isDisabled$.next(true);\n }\n\n save() {\n const choices = this.data.choices.map((l) => l.value);\n\n const selectedChoices = [];\n choices.map((l) =>\n this.formGroup.value[l] ? selectedChoices.push(l) : undefined\n );\n this.dialogRef.close({ choices: selectedChoices });\n }\n\n cancel() {\n this.dialogRef.close();\n }\n\n onChange(e: MatRadioChange) {\n const choices = {};\n this.data.choices.map((l) => (choices[l.value] = false));\n choices[e.value] = true;\n this.formGroup.setValue(choices);\n }\n}\n","<h1 mat-dialog-title>{{ data.title | translate }}</h1>\n\n<form class=\"igo-form\" [formGroup]=\"formGroup\">\n <section class=\"choices-section\">\n <ng-template\n *ngIf=\"data.type === 'checkbox'\"\n ngFor\n let-choice\n let-i=\"index\"\n [ngForOf]=\"data.choices\"\n >\n <mat-checkbox formControlName=\"{{ choice.value }}\">{{\n choice.title || choice.value\n }}</mat-checkbox>\n </ng-template>\n\n <mat-radio-group *ngIf=\"data.type === 'radio'\" (change)=\"onChange($event)\">\n <mat-radio-button\n *ngFor=\"let choice of data.choices\"\n [value]=\"choice.value\"\n >\n {{ choice.title || choice.value }}\n </mat-radio-button>\n </mat-radio-group>\n </section>\n <div mat-dialog-actions>\n <div class=\"button-group\">\n <button mat-raised-button type=\"button\" (click)=\"cancel()\">\n {{ data.cancelButtonText | translate }}\n </button>\n <button\n [disabled]=\"isDisabled$ | async\"\n id=\"processBtnDialog\"\n mat-raised-button\n type=\"button\"\n color=\"primary\"\n (click)=\"save()\"\n >\n {{ data.processButtonText | translate }}\n </button>\n </div>\n </div>\n</form>\n","import { Injectable } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\n\nimport { Observable } from 'rxjs';\n\nimport { SelectValueCheckRadioDialogComponent } from './select-value-check-radio-dialog.component';\nimport {\n Choice,\n SelectValueData,\n SelectValueDialogOptions\n} from './select-value-dialog.interface';\n\n@Injectable()\nexport class SelectValueDialogService {\n constructor(private dialog: MatDialog) {}\n\n public open(\n choices: Choice[],\n options?: SelectValueDialogOptions\n ): Observable<any> {\n const data: SelectValueData = {\n choices,\n ...options\n };\n\n const dialogRef = this.dialog.open(SelectValueCheckRadioDialogComponent, {\n disableClose: false,\n data,\n ...options\n });\n return dialogRef.afterClosed();\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { SelectValueCheckRadioDialogComponent } from './select-value-check-radio-dialog.component';\nimport { SelectValueDialogService } from './select-value-dialog.service';\n\n@NgModule({\n imports: [SelectValueCheckRadioDialogComponent],\n exports: [SelectValueCheckRadioDialogComponent],\n providers: [SelectValueDialogService]\n})\nexport class IgoSelectValueDialogModule {\n /**\n * @deprecated it has no effect\n */\n static forRoot(): ModuleWithProviders<IgoSelectValueDialogModule> {\n return {\n ngModule: IgoSelectValueDialogModule,\n providers: []\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1"],"mappings":"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"}