@eurosat/buttons 10.0.0 → 12.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/eurosat-buttons.umd.js +325 -566
- package/bundles/eurosat-buttons.umd.js.map +1 -1
- package/bundles/eurosat-buttons.umd.min.js +1 -1
- package/bundles/eurosat-buttons.umd.min.js.map +1 -1
- package/esm2015/eurosat-buttons.js +7 -12
- package/esm2015/lib/components/dialog-confirm/dialog-confirm.component.js +56 -98
- package/esm2015/lib/components/dialog-form/dialog-form.component.js +38 -68
- package/esm2015/lib/components/dialog-result.js +2 -16
- package/esm2015/lib/es-buttons.component.js +198 -327
- package/esm2015/lib/es-buttons.module.js +41 -46
- package/esm2015/lib/model/es-button-action.js +13 -42
- package/esm2015/lib/model/es-button-server-response.js +2 -16
- package/esm2015/lib/model/es-button.interface.js +2 -34
- package/esm2015/public_api.js +9 -14
- package/eurosat-buttons.d.ts +6 -6
- package/eurosat-buttons.metadata.json +1 -1
- package/fesm2015/eurosat-buttons.js +305 -594
- package/fesm2015/eurosat-buttons.js.map +1 -1
- package/lib/components/dialog-confirm/dialog-confirm.component.d.ts +15 -15
- package/lib/components/dialog-form/dialog-form.component.d.ts +15 -15
- package/lib/components/dialog-result.d.ts +4 -4
- package/lib/es-buttons.component.d.ts +39 -39
- package/lib/es-buttons.module.d.ts +2 -2
- package/lib/model/es-button-action.d.ts +12 -12
- package/lib/model/es-button-server-response.d.ts +5 -5
- package/lib/model/es-button.interface.d.ts +14 -14
- package/package.json +6 -6
- package/public_api.d.ts +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eurosat-buttons.umd.js","sources":["../../../projects/buttons/src/lib/model/es-button-action.ts","../../../projects/buttons/src/lib/components/dialog-confirm/dialog-confirm.component.ts","../../../projects/buttons/src/lib/components/dialog-form/dialog-form.component.ts","../../../projects/buttons/src/lib/es-buttons.component.ts","../../../projects/buttons/src/lib/es-buttons.module.ts"],"sourcesContent":["export class EsButtonAction {\r\n\r\n public static ACTION_DIALOG_CONFIRM = 'dialog-confirm';\r\n public static ACTION_DIALOG_DELETE = 'dialog-delete';\r\n public static ACTION_DIALOG_FORM = 'dialog-form';\r\n public static ACTION_CARD_CONTENT_FORM = 'card-content-form';\r\n public static ACTION_CARD_CONTENT_WIZARD = 'card-content-wizard'; // todo asi zrusit\r\n public static ACTION_CHANGE_CARD_CONTENT = 'change-card-content'; // mozna zrusit ? je kuli neemitu clicku na button\r\n public static ACTION_DOWNLOAD = 'download';\r\n public static ACTION_REQUEST = 'request';\r\n public static ACTION_ROUTER_NAVIGATE = 'router-navigate';\r\n public static ACTION_WINDOW_LOCATION = 'open-link';\r\n}\r\n","import {Component, EventEmitter, Output} from '@angular/core';\r\nimport {MatDialogRef} from '@angular/material/dialog';\r\nimport {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';\r\nimport {EsSnackBarPanelClass} from '@eurosat/snackbar';\r\nimport {EsDialogService} from '@eurosat/dialog';\r\nimport { DialogResult } from '../dialog-result';\r\nimport { EsFormResponseMessage, EsFormResponseMessageType } from '@eurosat/form';\r\n\r\n\r\n@Component({\r\n selector: 'dialog-confirm',\r\n templateUrl: './dialog-confirm.component.html',\r\n styleUrls: ['./dialog-confirm.component.scss']\r\n})\r\nexport class DialogConfirmComponent {\r\n\r\n @Output() submit: EventEmitter<any> = new EventEmitter<any>();\r\n public message: string;\r\n public url: string;\r\n activeRequest = false;\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef<DialogConfirmComponent>,\r\n private snackBar: MatSnackBar,\r\n private ds: EsDialogService\r\n ) {\r\n const data = this.ds.getData();\r\n this.message = data.message;\r\n this.url = data.url;\r\n }\r\n\r\n confirm() {\r\n this.activeRequest = true;\r\n this.ds.httpPost(this.url, null).subscribe((response: EsFormResponseMessage) => {\r\n this.activeRequest = false;\r\n const config = new MatSnackBarConfig();\r\n config.duration = 2000;\r\n if (response.type === EsFormResponseMessageType.TYPE_OK) {\r\n config.panelClass = EsSnackBarPanelClass.SUCCESS;\r\n this.submit.emit();\r\n } else {\r\n config.panelClass = EsSnackBarPanelClass.DANGER;\r\n }\r\n this.snackBar.open(response.message, null, config);\r\n\r\n const result: DialogResult = {\r\n clickedYes: true,\r\n serverResponse: response\r\n };\r\n this.dialogRef.close(result);\r\n });\r\n }\r\n\r\n}\r\n","import {Component} from '@angular/core';\r\nimport {MatDialogRef} from '@angular/material/dialog';\r\nimport {EsForm} from '@eurosat/form';\r\nimport {EsDialogService} from '@eurosat/dialog';\r\nimport { DialogResult } from '../dialog-result';\r\n\r\n@Component({\r\n selector: 'dialog-form',\r\n templateUrl: './dialog-form.component.html',\r\n styleUrls: ['./dialog-form.component.scss']\r\n})\r\nexport class DialogFormComponent {\r\n\r\n public formUrl: string;\r\n public cols = 1;\r\n public esForm: EsForm;\r\n public maxFormHeight: number = window.innerHeight - 60;\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef<DialogFormComponent>,\r\n ds: EsDialogService,\r\n ) {\r\n const data = ds.getData();\r\n this.formUrl = data.url;\r\n }\r\n\r\n submit(value: {[name: string]: any}) {\r\n\r\n // sem se to dostane jen pri success ulozeni formu\r\n const result: DialogResult = {\r\n clickedYes: true\r\n };\r\n this.dialogRef.close(result);\r\n\r\n\r\n\r\n // pokud bysme chteli form.value\r\n // this.dialogRef.close(value);\r\n // console.log('form value v parent', value);\r\n\r\n\r\n }\r\n\r\n getWindowHeight() {\r\n this.maxFormHeight = window.innerHeight - 60;\r\n }\r\n\r\n\r\n}\r\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\r\nimport {Router} from '@angular/router';\r\nimport {EsButton} from './model/es-button.interface';\r\nimport {EsButtonAction} from './model/es-button-action';\r\nimport {MatDialogRef} from '@angular/material/dialog';\r\nimport {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';\r\nimport {EsSnackBarPanelClass} from '@eurosat/snackbar';\r\nimport {HttpService} from '@eurosat/http';\r\nimport {EsIcon} from '@eurosat/icon';\r\nimport {DialogConfirmComponent} from './components/dialog-confirm/dialog-confirm.component';\r\nimport {take} from 'rxjs/internal/operators';\r\nimport {DialogFormComponent} from './components/dialog-form/dialog-form.component';\r\nimport {EsDialogService} from '@eurosat/dialog';\r\nimport {EsDialogConfig} from '@eurosat/dialog';\r\nimport { DialogResult } from './components/dialog-result';\r\nimport { EsButtonServerResponse } from './model/es-button-server-response';\r\nimport { EsFormResponseMessage, EsFormResponseMessageType } from '@eurosat/form';\r\n\r\n// todo translates\r\n\r\n@Component({\r\n selector: 'es-buttons',\r\n templateUrl: './es-buttons.component.html',\r\n styleUrls: ['./es-buttons.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class EsButtonsComponent implements OnChanges {\r\n\r\n @Input() parentWidth = 40; // default 40 = 1 button\r\n @Input() buttons: EsButton[] = []; // normal input\r\n @Input() forceMenu = false; // pokud chci zobrazit ... menu i pro jeden buttonek, na realtimu pouzito\r\n\r\n @Output() buttonClick = new EventEmitter<EsButton>();\r\n @Output() reload = new EventEmitter<boolean>();\r\n @Output() dialogCreated = new EventEmitter<MatDialogRef<any>>();\r\n @Output() serverResponse = new EventEmitter<EsButtonServerResponse>();\r\n\r\n menuVisible = false;\r\n buttonWidth = 40; // todo ViewChild, sirka buttonu ?\r\n visibleButtons: EsButton[] = [];\r\n hiddenButtons: EsButton[] = [];\r\n esIcon = EsIcon;\r\n _width = 0;\r\n\r\n constructor(\r\n private router: Router,\r\n private dialog: EsDialogService,\r\n private snackBar: MatSnackBar,\r\n private http: HttpService,\r\n ) { }\r\n\r\n showMenu() {\r\n return this.getHiddenButtons() && this.getHiddenButtons().length > 0 && this.getHiddenButtons().length !== 1;\r\n }\r\n\r\n countVisible() {\r\n return Math.floor((this._width) / this.buttonWidth) - 1;\r\n }\r\n\r\n getVisibleButtons() {\r\n if (this.buttons && this.buttons.length > 0) {\r\n return this.buttons.filter(button => {\r\n if (this.buttons.indexOf(button) < this.countVisible()\r\n || (this.getHiddenButtons().length === 1 && !this.forceMenu)) {\r\n return true;\r\n }\r\n });\r\n }\r\n }\r\n\r\n getHiddenButtons() {\r\n if (this.buttons && this.buttons.length > 0) {\r\n return this.buttons.filter(button => {\r\n if (this.buttons.indexOf(button) >= this.countVisible()) {\r\n return true;\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnChanges(simpleChange: SimpleChanges) {\r\n if (simpleChange['parentWidth']) {\r\n if (this.parentWidth > 0) {\r\n this._width = this.parentWidth;\r\n this.recalculateButtons();\r\n }\r\n }\r\n\r\n if (simpleChange['buttons']) {\r\n if (typeof this.buttons === 'string') {\r\n this.buttons = JSON.parse(this.buttons);\r\n }\r\n this.recalculateButtons();\r\n }\r\n }\r\n\r\n recalculateButtons() {\r\n this.menuVisible = this.showMenu();\r\n this.visibleButtons = this.getVisibleButtons();\r\n this.hiddenButtons = this.getHiddenButtons();\r\n }\r\n\r\n handleAction(button: EsButton) {\r\n if (button.action === EsButtonAction.ACTION_DIALOG_CONFIRM) {\r\n this.openConfirm(button);\r\n }\r\n if (button.action === EsButtonAction.ACTION_DIALOG_DELETE) {\r\n this.openDelete(button);\r\n }\r\n if (button.action === EsButtonAction.ACTION_DIALOG_FORM) {\r\n this.openForm(button);\r\n }\r\n if (button.action === EsButtonAction.ACTION_DOWNLOAD) {\r\n this.http.get(button.url, {responseType: 'blob', observe: 'response'}).subscribe(response => {\r\n const filename = response.headers.get('Content-Disposition').split('filename=')[1];\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveBlob(response.body, filename);\r\n } else {\r\n const link = document.createElement('a');\r\n link.setAttribute('href', window.URL.createObjectURL(response.body));\r\n link.setAttribute('download', filename);\r\n link.style.visibility = 'hidden';\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n });\r\n }\r\n if (button.action === EsButtonAction.ACTION_REQUEST) {\r\n this.http.get(button.url).subscribe((response: EsFormResponseMessage) => {\r\n const config = new MatSnackBarConfig();\r\n config.duration = 2000;\r\n if (response.type === EsFormResponseMessageType.TYPE_OK) {\r\n config.panelClass = EsSnackBarPanelClass.SUCCESS;\r\n } else {\r\n config.panelClass = EsSnackBarPanelClass.DANGER;\r\n }\r\n this.snackBar.open(response.message, null, config);\r\n this.reload.emit(true);\r\n this.serverResponse.emit({button: button, response: response});\r\n });\r\n }\r\n if (button.action === EsButtonAction.ACTION_ROUTER_NAVIGATE) {\r\n this.router.navigateByUrl(button.url);\r\n }\r\n if (button.action === EsButtonAction.ACTION_WINDOW_LOCATION) {\r\n window.location.href = button.url;\r\n }\r\n this.buttonClick.emit(button);\r\n }\r\n\r\n // handleSubMenuAction(button: EsButton) {\r\n // // todo asi predelat na md2 menu\r\n // // todo nevim jestli se zpropaguje click kdyz je to zanoreny pres es-card-header\r\n // this.buttonClick.emit(button);\r\n // }\r\n\r\n openForm(button: EsButton) {\r\n const config: EsDialogConfig = {\r\n title: button.title,\r\n data: {\r\n url: button.url\r\n }\r\n };\r\n const dialogRef: MatDialogRef<DialogFormComponent> = this.dialog.open(DialogFormComponent, config);\r\n this.dialogCreated.emit(dialogRef);\r\n dialogRef.afterClosed().pipe(take(1)).subscribe( (res: DialogResult) => {\r\n if (res && res.clickedYes) {\r\n this.reload.emit(true);\r\n\r\n if (res.serverResponse) {\r\n this.serverResponse.emit({button: button, response: res.serverResponse});\r\n }\r\n }\r\n });\r\n }\r\n\r\n openDelete(button: EsButton) {\r\n this.openConfirm(button);\r\n }\r\n\r\n openConfirm(button: EsButton) {\r\n const config: EsDialogConfig = {\r\n title: button.title,\r\n data: {\r\n message: button.message,\r\n url: button.url\r\n }\r\n };\r\n const dialogRef: MatDialogRef<DialogConfirmComponent> = this.dialog.open(DialogConfirmComponent, config);\r\n this.dialogCreated.emit(dialogRef);\r\n dialogRef.afterClosed().pipe(take(1)).subscribe( (res: DialogResult) => {\r\n if (res && res.clickedYes) {\r\n this.reload.emit(true);\r\n\r\n if (res.serverResponse) {\r\n this.serverResponse.emit({button: button, response: res.serverResponse});\r\n }\r\n }\r\n });\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {EsButtonsComponent} from './es-buttons.component';\r\nimport {MatButtonModule} from '@angular/material/button';\r\nimport {MatMenuModule} from '@angular/material/menu';\r\nimport {MatSnackBarModule} from '@angular/material/snack-bar';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {TranslateModule} from '@ngx-translate/core';\r\nimport {EsIconModule} from '@eurosat/icon';\r\nimport {EsDialogModule} from '@eurosat/dialog';\r\nimport {EsFormModule} from '@eurosat/form';\r\nimport {DialogConfirmComponent} from './components/dialog-confirm/dialog-confirm.component';\r\nimport {DialogFormComponent} from './components/dialog-form/dialog-form.component';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatButtonModule,\r\n MatTooltipModule,\r\n MatMenuModule,\r\n MatSnackBarModule,\r\n TranslateModule.forChild(),\r\n EsIconModule,\r\n EsDialogModule,\r\n EsFormModule,\r\n ],\r\n declarations: [\r\n EsButtonsComponent,\r\n DialogConfirmComponent,\r\n DialogFormComponent,\r\n ],\r\n exports: [EsButtonsComponent],\r\n entryComponents: [\r\n DialogConfirmComponent,\r\n DialogFormComponent,\r\n ],\r\n})\r\nexport class EsButtonsModule { }\r\n"],"names":["EventEmitter","MatSnackBarConfig","EsFormResponseMessageType","EsSnackBarPanelClass","Component","MatDialogRef","MatSnackBar","EsDialogService","Output","EsIcon","take","ChangeDetectionStrategy","Router","HttpService","Input","NgModule","CommonModule","MatButtonModule","MatTooltipModule","MatMenuModule","MatSnackBarModule","TranslateModule","EsIconModule","EsDialogModule","EsFormModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eurosat-buttons.umd.js","sources":["../../../projects/buttons/src/lib/model/es-button-action.ts","../../../projects/buttons/src/lib/components/dialog-confirm/dialog-confirm.component.ts","../../../projects/buttons/src/lib/components/dialog-form/dialog-form.component.ts","../../../projects/buttons/src/lib/es-buttons.component.ts","../../../projects/buttons/src/lib/es-buttons.module.ts","../../../projects/buttons/src/public_api.ts","../../../projects/buttons/src/eurosat-buttons.ts"],"sourcesContent":["export class EsButtonAction {\n\n public static ACTION_DIALOG_CONFIRM = 'dialog-confirm';\n public static ACTION_DIALOG_DELETE = 'dialog-delete';\n public static ACTION_DIALOG_FORM = 'dialog-form';\n public static ACTION_CARD_CONTENT_FORM = 'card-content-form';\n public static ACTION_CARD_CONTENT_WIZARD = 'card-content-wizard'; // todo asi zrusit\n public static ACTION_CHANGE_CARD_CONTENT = 'change-card-content'; // mozna zrusit ? je kuli neemitu clicku na button\n public static ACTION_DOWNLOAD = 'download';\n public static ACTION_REQUEST = 'request';\n public static ACTION_ROUTER_NAVIGATE = 'router-navigate';\n public static ACTION_WINDOW_LOCATION = 'open-link';\n}\n","import {Component, EventEmitter, Output} from '@angular/core';\nimport {MatDialogRef} from '@angular/material/dialog';\nimport {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';\nimport {EsSnackBarPanelClass} from '@eurosat/snackbar';\nimport {EsDialogService} from '@eurosat/dialog';\nimport { DialogResult } from '../dialog-result';\nimport { EsFormResponseMessage, EsFormResponseMessageType } from '@eurosat/form';\n\n\n@Component({\n selector: 'dialog-confirm',\n templateUrl: './dialog-confirm.component.html',\n styleUrls: ['./dialog-confirm.component.scss']\n})\nexport class DialogConfirmComponent {\n\n @Output() submit: EventEmitter<any> = new EventEmitter<any>();\n public message: string;\n public url: string;\n activeRequest = false;\n\n constructor(\n public dialogRef: MatDialogRef<DialogConfirmComponent>,\n private snackBar: MatSnackBar,\n private ds: EsDialogService\n ) {\n const data = this.ds.getData();\n this.message = data.message;\n this.url = data.url;\n }\n\n confirm() {\n this.activeRequest = true;\n this.ds.httpPost(this.url, null).subscribe((response: EsFormResponseMessage) => {\n this.activeRequest = false;\n const config = new MatSnackBarConfig();\n config.duration = 2000;\n if (response.type === EsFormResponseMessageType.TYPE_OK) {\n config.panelClass = EsSnackBarPanelClass.SUCCESS;\n this.submit.emit();\n } else {\n config.panelClass = EsSnackBarPanelClass.DANGER;\n }\n this.snackBar.open(response.message, null, config);\n\n const result: DialogResult = {\n clickedYes: true,\n serverResponse: response\n };\n this.dialogRef.close(result);\n });\n }\n\n}\n","import {Component} from '@angular/core';\nimport {MatDialogRef} from '@angular/material/dialog';\nimport {EsForm} from '@eurosat/form';\nimport {EsDialogService} from '@eurosat/dialog';\nimport { DialogResult } from '../dialog-result';\n\n@Component({\n selector: 'dialog-form',\n templateUrl: './dialog-form.component.html',\n styleUrls: ['./dialog-form.component.scss']\n})\nexport class DialogFormComponent {\n\n public formUrl: string;\n public cols = 1;\n public esForm: EsForm;\n public maxFormHeight: number = window.innerHeight - 60;\n\n constructor(\n public dialogRef: MatDialogRef<DialogFormComponent>,\n ds: EsDialogService,\n ) {\n const data = ds.getData();\n this.formUrl = data.url;\n }\n\n submit(value: {[name: string]: any}) {\n\n // sem se to dostane jen pri success ulozeni formu\n const result: DialogResult = {\n clickedYes: true\n };\n this.dialogRef.close(result);\n\n\n\n // pokud bysme chteli form.value\n // this.dialogRef.close(value);\n // console.log('form value v parent', value);\n\n\n }\n\n getWindowHeight() {\n this.maxFormHeight = window.innerHeight - 60;\n }\n\n\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport {Router} from '@angular/router';\nimport {EsButton} from './model/es-button.interface';\nimport {EsButtonAction} from './model/es-button-action';\nimport {MatDialogRef} from '@angular/material/dialog';\nimport {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';\nimport {EsSnackBarPanelClass} from '@eurosat/snackbar';\nimport {HttpService} from '@eurosat/http';\nimport {EsIcon} from '@eurosat/icon';\nimport {DialogConfirmComponent} from './components/dialog-confirm/dialog-confirm.component';\nimport {take} from 'rxjs/internal/operators';\nimport {DialogFormComponent} from './components/dialog-form/dialog-form.component';\nimport {EsDialogService} from '@eurosat/dialog';\nimport {EsDialogConfig} from '@eurosat/dialog';\nimport { DialogResult } from './components/dialog-result';\nimport { EsButtonServerResponse } from './model/es-button-server-response';\nimport { EsFormResponseMessage, EsFormResponseMessageType } from '@eurosat/form';\n\n// todo translates\n\n@Component({\n selector: 'es-buttons',\n templateUrl: './es-buttons.component.html',\n styleUrls: ['./es-buttons.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EsButtonsComponent implements OnChanges {\n\n @Input() parentWidth = 40; // default 40 = 1 button\n @Input() buttons: EsButton[] = []; // normal input\n @Input() forceMenu = false; // pokud chci zobrazit ... menu i pro jeden buttonek, na realtimu pouzito\n\n @Output() buttonClick = new EventEmitter<EsButton>();\n @Output() reload = new EventEmitter<boolean>();\n @Output() dialogCreated = new EventEmitter<MatDialogRef<any>>();\n @Output() serverResponse = new EventEmitter<EsButtonServerResponse>();\n\n menuVisible = false;\n buttonWidth = 40; // todo ViewChild, sirka buttonu ?\n visibleButtons: EsButton[] = [];\n hiddenButtons: EsButton[] = [];\n esIcon = EsIcon;\n _width = 0;\n\n constructor(\n private router: Router,\n private dialog: EsDialogService,\n private snackBar: MatSnackBar,\n private http: HttpService,\n ) { }\n\n showMenu() {\n return this.getHiddenButtons() && this.getHiddenButtons().length > 0 && this.getHiddenButtons().length !== 1;\n }\n\n countVisible() {\n return Math.floor((this._width) / this.buttonWidth) - 1;\n }\n\n getVisibleButtons() {\n if (this.buttons && this.buttons.length > 0) {\n return this.buttons.filter(button => {\n if (this.buttons.indexOf(button) < this.countVisible()\n || (this.getHiddenButtons().length === 1 && !this.forceMenu)) {\n return true;\n }\n });\n }\n }\n\n getHiddenButtons() {\n if (this.buttons && this.buttons.length > 0) {\n return this.buttons.filter(button => {\n if (this.buttons.indexOf(button) >= this.countVisible()) {\n return true;\n }\n });\n }\n }\n\n ngOnChanges(simpleChange: SimpleChanges) {\n if (simpleChange['parentWidth']) {\n if (this.parentWidth > 0) {\n this._width = this.parentWidth;\n this.recalculateButtons();\n }\n }\n\n if (simpleChange['buttons']) {\n if (typeof this.buttons === 'string') {\n this.buttons = JSON.parse(this.buttons);\n }\n this.recalculateButtons();\n }\n }\n\n recalculateButtons() {\n this.menuVisible = this.showMenu();\n this.visibleButtons = this.getVisibleButtons();\n this.hiddenButtons = this.getHiddenButtons();\n }\n\n handleAction(button: EsButton) {\n if (button.action === EsButtonAction.ACTION_DIALOG_CONFIRM) {\n this.openConfirm(button);\n }\n if (button.action === EsButtonAction.ACTION_DIALOG_DELETE) {\n this.openDelete(button);\n }\n if (button.action === EsButtonAction.ACTION_DIALOG_FORM) {\n this.openForm(button);\n }\n if (button.action === EsButtonAction.ACTION_DOWNLOAD) {\n this.http.get(button.url, {responseType: 'blob', observe: 'response'}).subscribe(response => {\n const filename = response.headers.get('Content-Disposition').split('filename=')[1];\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\n window.navigator.msSaveBlob(response.body, filename);\n } else {\n const link = document.createElement('a');\n link.setAttribute('href', window.URL.createObjectURL(response.body));\n link.setAttribute('download', filename);\n link.style.visibility = 'hidden';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n });\n }\n if (button.action === EsButtonAction.ACTION_REQUEST) {\n this.http.get(button.url).subscribe((response: EsFormResponseMessage) => {\n const config = new MatSnackBarConfig();\n config.duration = 2000;\n if (response.type === EsFormResponseMessageType.TYPE_OK) {\n config.panelClass = EsSnackBarPanelClass.SUCCESS;\n } else {\n config.panelClass = EsSnackBarPanelClass.DANGER;\n }\n this.snackBar.open(response.message, null, config);\n this.reload.emit(true);\n this.serverResponse.emit({button: button, response: response});\n });\n }\n if (button.action === EsButtonAction.ACTION_ROUTER_NAVIGATE) {\n this.router.navigateByUrl(button.url);\n }\n if (button.action === EsButtonAction.ACTION_WINDOW_LOCATION) {\n window.location.href = button.url;\n }\n this.buttonClick.emit(button);\n }\n\n // handleSubMenuAction(button: EsButton) {\n // // todo asi predelat na md2 menu\n // // todo nevim jestli se zpropaguje click kdyz je to zanoreny pres es-card-header\n // this.buttonClick.emit(button);\n // }\n\n openForm(button: EsButton) {\n const config: EsDialogConfig = {\n title: button.title,\n data: {\n url: button.url\n }\n };\n const dialogRef: MatDialogRef<DialogFormComponent> = this.dialog.open(DialogFormComponent, config);\n this.dialogCreated.emit(dialogRef);\n dialogRef.afterClosed().pipe(take(1)).subscribe( (res: DialogResult) => {\n if (res && res.clickedYes) {\n this.reload.emit(true);\n\n if (res.serverResponse) {\n this.serverResponse.emit({button: button, response: res.serverResponse});\n }\n }\n });\n }\n\n openDelete(button: EsButton) {\n this.openConfirm(button);\n }\n\n openConfirm(button: EsButton) {\n const config: EsDialogConfig = {\n title: button.title,\n data: {\n message: button.message,\n url: button.url\n }\n };\n const dialogRef: MatDialogRef<DialogConfirmComponent> = this.dialog.open(DialogConfirmComponent, config);\n this.dialogCreated.emit(dialogRef);\n dialogRef.afterClosed().pipe(take(1)).subscribe( (res: DialogResult) => {\n if (res && res.clickedYes) {\n this.reload.emit(true);\n\n if (res.serverResponse) {\n this.serverResponse.emit({button: button, response: res.serverResponse});\n }\n }\n });\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {EsButtonsComponent} from './es-buttons.component';\nimport {MatButtonModule} from '@angular/material/button';\nimport {MatMenuModule} from '@angular/material/menu';\nimport {MatSnackBarModule} from '@angular/material/snack-bar';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {EsIconModule} from '@eurosat/icon';\nimport {EsDialogModule} from '@eurosat/dialog';\nimport {EsFormModule} from '@eurosat/form';\nimport {DialogConfirmComponent} from './components/dialog-confirm/dialog-confirm.component';\nimport {DialogFormComponent} from './components/dialog-form/dialog-form.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n MatButtonModule,\n MatTooltipModule,\n MatMenuModule,\n MatSnackBarModule,\n TranslateModule.forChild(),\n EsIconModule,\n EsDialogModule,\n EsFormModule,\n ],\n declarations: [\n EsButtonsComponent,\n DialogConfirmComponent,\n DialogFormComponent,\n ],\n exports: [EsButtonsComponent],\n entryComponents: [\n DialogConfirmComponent,\n DialogFormComponent,\n ],\n})\nexport class EsButtonsModule { }\n","/*\n * Public API Surface of es-buttons\n */\n\nexport * from './lib/es-buttons.component';\nexport * from './lib/es-buttons.module';\nexport * from './lib/model/es-button.interface';\nexport * from './lib/model/es-button-action';\nexport * from './lib/model/es-button-server-response';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {DialogConfirmComponent as ɵa} from './lib/components/dialog-confirm/dialog-confirm.component';\nexport {DialogFormComponent as ɵb} from './lib/components/dialog-form/dialog-form.component';"],"names":["EventEmitter","MatSnackBarConfig","EsFormResponseMessageType","EsSnackBarPanelClass","Component","MatDialogRef","MatSnackBar","EsDialogService","Output","EsIcon","take","ChangeDetectionStrategy","Router","HttpService","Input","NgModule","CommonModule","MatButtonModule","MatTooltipModule","MatMenuModule","MatSnackBarModule","TranslateModule","EsIconModule","EsDialogModule","EsFormModule"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/core"),require("@angular/router"),require("@angular/material/snack-bar"),require("@eurosat/snackbar"),require("@eurosat/http"),require("@eurosat/icon"),require("@angular/material/dialog"),require("@eurosat/dialog"),require("@eurosat/form"),require("rxjs/internal/operators"),require("@angular/common"),require("@angular/material/button"),require("@angular/material/menu"),require("@angular/material/tooltip"),require("@ngx-translate/core")):"function"==typeof define&&define.amd?define("@eurosat/buttons",["exports","@angular/core","@angular/router","@angular/material/snack-bar","@eurosat/snackbar","@eurosat/http","@eurosat/icon","@angular/material/dialog","@eurosat/dialog","@eurosat/form","rxjs/internal/operators","@angular/common","@angular/material/button","@angular/material/menu","@angular/material/tooltip","@ngx-translate/core"],n):n(((t="undefined"!=typeof globalThis?globalThis:t||self).eurosat=t.eurosat||{},t.eurosat.buttons={}),t.ng.core,t.ng.router,t.ng.material.snackBar,t.snackbar,t.http,t.icon,t.ng.material.dialog,t.dialog$1,t.form,t.rxjs["internal/operators"],t.ng.common,t.ng.material.button,t.ng.material.menu,t.ng.material.tooltip,t.core$1)}(this,(function(t,n,e,o,i,s,r,l,u,a,c,d,h,b,m,p){"use strict";var B=function(){};B.ACTION_DIALOG_CONFIRM="dialog-confirm",B.ACTION_DIALOG_DELETE="dialog-delete",B.ACTION_DIALOG_FORM="dialog-form",B.ACTION_CARD_CONTENT_FORM="card-content-form",B.ACTION_CARD_CONTENT_WIZARD="card-content-wizard",B.ACTION_CHANGE_CARD_CONTENT="change-card-content",B.ACTION_DOWNLOAD="download",B.ACTION_REQUEST="request",B.ACTION_ROUTER_NAVIGATE="router-navigate",B.ACTION_WINDOW_LOCATION="open-link";var g=function(){function t(t,e,o){this.dialogRef=t,this.snackBar=e,this.ds=o,this.submit=new n.EventEmitter,this.activeRequest=!1;var i=this.ds.getData();this.message=i.message,this.url=i.url}return t.prototype.confirm=function(){var t=this;this.activeRequest=!0,this.ds.httpPost(this.url,null).subscribe((function(n){t.activeRequest=!1;var e=new o.MatSnackBarConfig;e.duration=2e3,n.type===a.EsFormResponseMessageType.TYPE_OK?(e.panelClass=i.EsSnackBarPanelClass.SUCCESS,t.submit.emit()):e.panelClass=i.EsSnackBarPanelClass.DANGER,t.snackBar.open(n.message,null,e);var s={clickedYes:!0,serverResponse:n};t.dialogRef.close(s)}))},t}();g.decorators=[{type:n.Component,args:[{selector:"dialog-confirm",template:'<p>{{message}}</p>\r\n<div class="button-container">\r\n <mat-spinner *ngIf="activeRequest" [diameter]="36"></mat-spinner>\r\n <ng-container *ngIf="!activeRequest">\r\n <button type="button"\r\n color="accent"\r\n mat-raised-button\r\n (click)="confirm()"> {{\'an.common.ano\' | translate}}\r\n </button>\r\n <button type="button"\r\n color="accent"\r\n mat-raised-button\r\n (click)="dialogRef.close({clickedYes: false})">{{\'an.common.ne\' | translate}}\r\n </button>\r\n </ng-container>\r\n</div>\r\n',styles:["button:not(:last-child){margin-right:20px}.button-container{min-height:36px;min-width:196px;position:relative;text-align:center}.button-container mat-spinner{left:calc(50% - 18px);position:absolute!important;top:calc(50% - 18px)}"]}]}],g.ctorParameters=function(){return[{type:l.MatDialogRef},{type:o.MatSnackBar},{type:u.EsDialogService}]},g.propDecorators={submit:[{type:n.Output}]};var v=function(){function t(t,n){this.dialogRef=t,this.cols=1,this.maxFormHeight=window.innerHeight-60;var e=n.getData();this.formUrl=e.url}return t.prototype.submit=function(t){this.dialogRef.close({clickedYes:!0})},t.prototype.getWindowHeight=function(){this.maxFormHeight=window.innerHeight-60},t}();v.decorators=[{type:n.Component,args:[{selector:"dialog-form",template:'<div class="es-form-container" [style.max-height]="(maxFormHeight - 106) + \'px\'">\r\n <es-form [formUrl]="formUrl"\r\n [dynamicForm]="esForm"\r\n [cols]="cols"\r\n (submit)="submit($event)">\r\n </es-form>\r\n</div>\r\n',styles:[".es-form-container{margin-top:24px;overflow:auto;position:relative}"]}]}],v.ctorParameters=function(){return[{type:l.MatDialogRef},{type:u.EsDialogService}]};var f=function(){function t(t,e,o,i){this.router=t,this.dialog=e,this.snackBar=o,this.http=i,this.parentWidth=40,this.buttons=[],this.forceMenu=!1,this.buttonClick=new n.EventEmitter,this.reload=new n.EventEmitter,this.dialogCreated=new n.EventEmitter,this.serverResponse=new n.EventEmitter,this.menuVisible=!1,this.buttonWidth=40,this.visibleButtons=[],this.hiddenButtons=[],this.esIcon=r.EsIcon,this._width=0}return t.prototype.showMenu=function(){return this.getHiddenButtons()&&this.getHiddenButtons().length>0&&1!==this.getHiddenButtons().length},t.prototype.countVisible=function(){return Math.floor(this._width/this.buttonWidth)-1},t.prototype.getVisibleButtons=function(){var t=this;if(this.buttons&&this.buttons.length>0)return this.buttons.filter((function(n){if(t.buttons.indexOf(n)<t.countVisible()||1===t.getHiddenButtons().length&&!t.forceMenu)return!0}))},t.prototype.getHiddenButtons=function(){var t=this;if(this.buttons&&this.buttons.length>0)return this.buttons.filter((function(n){if(t.buttons.indexOf(n)>=t.countVisible())return!0}))},t.prototype.ngOnChanges=function(t){t.parentWidth&&this.parentWidth>0&&(this._width=this.parentWidth,this.recalculateButtons()),t.buttons&&("string"==typeof this.buttons&&(this.buttons=JSON.parse(this.buttons)),this.recalculateButtons())},t.prototype.recalculateButtons=function(){this.menuVisible=this.showMenu(),this.visibleButtons=this.getVisibleButtons(),this.hiddenButtons=this.getHiddenButtons()},t.prototype.handleAction=function(t){var n=this;t.action===B.ACTION_DIALOG_CONFIRM&&this.openConfirm(t),t.action===B.ACTION_DIALOG_DELETE&&this.openDelete(t),t.action===B.ACTION_DIALOG_FORM&&this.openForm(t),t.action===B.ACTION_DOWNLOAD&&this.http.get(t.url,{responseType:"blob",observe:"response"}).subscribe((function(t){var n=t.headers.get("Content-Disposition").split("filename=")[1];if(window.navigator&&window.navigator.msSaveOrOpenBlob)window.navigator.msSaveBlob(t.body,n);else{var e=document.createElement("a");e.setAttribute("href",window.URL.createObjectURL(t.body)),e.setAttribute("download",n),e.style.visibility="hidden",document.body.appendChild(e),e.click(),document.body.removeChild(e)}})),t.action===B.ACTION_REQUEST&&this.http.get(t.url).subscribe((function(e){var s=new o.MatSnackBarConfig;s.duration=2e3,e.type===a.EsFormResponseMessageType.TYPE_OK?s.panelClass=i.EsSnackBarPanelClass.SUCCESS:s.panelClass=i.EsSnackBarPanelClass.DANGER,n.snackBar.open(e.message,null,s),n.reload.emit(!0),n.serverResponse.emit({button:t,response:e})})),t.action===B.ACTION_ROUTER_NAVIGATE&&this.router.navigateByUrl(t.url),t.action===B.ACTION_WINDOW_LOCATION&&(window.location.href=t.url),this.buttonClick.emit(t)},t.prototype.openForm=function(t){var n=this,e={title:t.title,data:{url:t.url}},o=this.dialog.open(v,e);this.dialogCreated.emit(o),o.afterClosed().pipe(c.take(1)).subscribe((function(e){e&&e.clickedYes&&(n.reload.emit(!0),e.serverResponse&&n.serverResponse.emit({button:t,response:e.serverResponse}))}))},t.prototype.openDelete=function(t){this.openConfirm(t)},t.prototype.openConfirm=function(t){var n=this,e={title:t.title,data:{message:t.message,url:t.url}},o=this.dialog.open(g,e);this.dialogCreated.emit(o),o.afterClosed().pipe(c.take(1)).subscribe((function(e){e&&e.clickedYes&&(n.reload.emit(!0),e.serverResponse&&n.serverResponse.emit({button:t,response:e.serverResponse}))}))},t}();f.decorators=[{type:n.Component,args:[{selector:"es-buttons",template:'<ng-container *ngIf="visibleButtons && visibleButtons.length > 0">\r\n <button *ngIf="visibleButtons.length > 0"\r\n mat-icon-button\r\n [disabled]="visibleButtons[0].disabled === true"\r\n [matTooltip]="visibleButtons[0].tooltip? visibleButtons[0].tooltip : visibleButtons[0].title"\r\n (click)="handleAction(visibleButtons[0])">\r\n <es-icon [color]="visibleButtons[0].color"\r\n [themeColor]="visibleButtons[0].themeColor"\r\n [icon]="visibleButtons[0].icon"></es-icon>\r\n </button>\r\n <button *ngIf="visibleButtons.length > 1"\r\n mat-icon-button\r\n [disabled]="visibleButtons[1].disabled === true"\r\n [matTooltip]="visibleButtons[1].tooltip? visibleButtons[1].tooltip : visibleButtons[1].title"\r\n (click)="handleAction(visibleButtons[1])">\r\n <es-icon [color]="visibleButtons[1].color"\r\n [themeColor]="visibleButtons[1].themeColor"\r\n [icon]="visibleButtons[1].icon"></es-icon>\r\n </button>\r\n <button *ngIf="visibleButtons.length > 2"\r\n mat-icon-button\r\n [disabled]="visibleButtons[2].disabled === true"\r\n [matTooltip]="visibleButtons[2].tooltip? visibleButtons[2].tooltip : visibleButtons[2].title"\r\n (click)="handleAction(visibleButtons[2])">\r\n <es-icon [color]="visibleButtons[2].color"\r\n [themeColor]="visibleButtons[2].themeColor"\r\n [icon]="visibleButtons[2].icon"></es-icon>\r\n </button>\r\n <button *ngIf="visibleButtons.length > 3"\r\n mat-icon-button\r\n [disabled]="visibleButtons[3].disabled === true"\r\n [matTooltip]="visibleButtons[3].tooltip? visibleButtons[3].tooltip : visibleButtons[3].title"\r\n (click)="handleAction(visibleButtons[3])">\r\n <es-icon [color]="visibleButtons[3].color"\r\n [themeColor]="visibleButtons[3].themeColor"\r\n [icon]="visibleButtons[3].icon"></es-icon>\r\n </button>\r\n <button *ngIf="visibleButtons.length > 4"\r\n mat-icon-button\r\n [disabled]="visibleButtons[4].disabled === true"\r\n [matTooltip]="visibleButtons[4].tooltip? visibleButtons[4].tooltip : visibleButtons[4].title"\r\n (click)="handleAction(visibleButtons[4])">\r\n <es-icon [color]="visibleButtons[4].color"\r\n [themeColor]="visibleButtons[4].themeColor"\r\n [icon]="visibleButtons[4].icon"></es-icon>\r\n </button>\r\n <button *ngIf="visibleButtons.length > 5"\r\n mat-icon-button\r\n [disabled]="visibleButtons[5].disabled === true"\r\n [matTooltip]="visibleButtons[5].tooltip? visibleButtons[5].tooltip : visibleButtons[5].title"\r\n (click)="handleAction(visibleButtons[5])">\r\n <es-icon [color]="visibleButtons[5].color"\r\n [themeColor]="visibleButtons[5].themeColor"\r\n [icon]="visibleButtons[5].icon"></es-icon>\r\n </button>\r\n <button *ngIf="visibleButtons.length > 6"\r\n mat-icon-button\r\n [disabled]="visibleButtons[6].disabled === true"\r\n [matTooltip]="visibleButtons[6].tooltip? visibleButtons[6].tooltip : visibleButtons[6].title"\r\n (click)="handleAction(visibleButtons[6])">\r\n <es-icon [color]="visibleButtons[6].color"\r\n [themeColor]="visibleButtons[6].themeColor"\r\n [icon]="visibleButtons[6].icon"></es-icon>\r\n </button>\r\n <button *ngIf="visibleButtons.length > 7"\r\n mat-icon-button\r\n [disabled]="visibleButtons[7].disabled === true"\r\n [matTooltip]="visibleButtons[7].tooltip? visibleButtons[7].tooltip : visibleButtons[7].title"\r\n (click)="handleAction(visibleButtons[7])">\r\n <es-icon [color]="visibleButtons[7].color"\r\n [themeColor]="visibleButtons[7].themeColor"\r\n [icon]="visibleButtons[7].icon"></es-icon>\r\n </button>\r\n <button *ngIf="visibleButtons.length > 8"\r\n mat-icon-button\r\n [disabled]="visibleButtons[8].disabled === true"\r\n [matTooltip]="visibleButtons[8].tooltip? visibleButtons[8].tooltip : visibleButtons[8].title"\r\n (click)="handleAction(visibleButtons[8])">\r\n <es-icon [color]="visibleButtons[8].color"\r\n [themeColor]="visibleButtons[8].themeColor"\r\n [icon]="visibleButtons[8].icon"></es-icon>\r\n </button>\r\n <button *ngIf="visibleButtons.length > 9"\r\n mat-icon-button\r\n [disabled]="visibleButtons[9].disabled === true"\r\n [matTooltip]="visibleButtons[9].tooltip? visibleButtons[9].tooltip : visibleButtons[9].title"\r\n (click)="handleAction(visibleButtons[9])">\r\n <es-icon [color]="visibleButtons[9].color"\r\n [themeColor]="visibleButtons[9].themeColor"\r\n [icon]="visibleButtons[9].icon"></es-icon>\r\n </button>\r\n</ng-container>\r\n\r\n\r\n<button *ngIf="menuVisible || forceMenu"\r\n mat-icon-button\r\n [matMenuTriggerFor]="menu"\r\n [matTooltip]="\'an.more\' | translate">\r\n <es-icon [icon]="esIcon.MORE_VERT"></es-icon>\r\n</button>\r\n\r\n\r\n<mat-menu #menu="matMenu"\r\n [overlapTrigger]="false"\r\n yPosition="below"\r\n xPosition="before">\r\n <ng-container *ngIf="hiddenButtons && hiddenButtons.length > 0">\r\n <button *ngIf="hiddenButtons.length > 0"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[0].disabled === true"\r\n (click)="handleAction(hiddenButtons[0])">\r\n <es-icon [color]="hiddenButtons[0].color"\r\n [themeColor]="hiddenButtons[0].themeColor"\r\n [icon]="hiddenButtons[0].icon"></es-icon>\r\n <span>{{hiddenButtons[0].title}}</span>\r\n </button>\r\n <button *ngIf="hiddenButtons.length > 1"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[1].disabled === true"\r\n (click)="handleAction(hiddenButtons[1])">\r\n <es-icon [color]="hiddenButtons[1].color"\r\n [themeColor]="hiddenButtons[1].themeColor"\r\n [icon]="hiddenButtons[1].icon"></es-icon>\r\n <span>{{hiddenButtons[1].title}}</span>\r\n </button>\r\n <button *ngIf="hiddenButtons.length > 2"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[2].disabled === true"\r\n (click)="handleAction(hiddenButtons[2])">\r\n <es-icon [color]="hiddenButtons[2].color"\r\n [themeColor]="hiddenButtons[2].themeColor"\r\n [icon]="hiddenButtons[2].icon"></es-icon>\r\n <span>{{hiddenButtons[2].title}}</span>\r\n </button>\r\n <button *ngIf="hiddenButtons.length > 3"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[3].disabled === true"\r\n (click)="handleAction(hiddenButtons[3])">\r\n <es-icon [color]="hiddenButtons[3].color"\r\n [themeColor]="hiddenButtons[3].themeColor"\r\n [icon]="hiddenButtons[3].icon"></es-icon>\r\n <span>{{hiddenButtons[3].title}}</span>\r\n </button>\r\n <button *ngIf="hiddenButtons.length > 4"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[4].disabled === true"\r\n (click)="handleAction(hiddenButtons[4])">\r\n <es-icon [color]="hiddenButtons[4].color"\r\n [themeColor]="hiddenButtons[4].themeColor"\r\n [icon]="hiddenButtons[4].icon"></es-icon>\r\n <span>{{hiddenButtons[4].title}}</span>\r\n </button>\r\n <button *ngIf="hiddenButtons.length > 5"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[5].disabled === true"\r\n (click)="handleAction(hiddenButtons[5])">\r\n <es-icon [color]="hiddenButtons[5].color"\r\n [themeColor]="hiddenButtons[5].themeColor"\r\n [icon]="hiddenButtons[5].icon"></es-icon>\r\n <span>{{hiddenButtons[5].title}}</span>\r\n </button>\r\n <button *ngIf="hiddenButtons.length > 6"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[6].disabled === true"\r\n (click)="handleAction(hiddenButtons[6])">\r\n <es-icon [color]="hiddenButtons[6].color"\r\n [themeColor]="hiddenButtons[6].themeColor"\r\n [icon]="hiddenButtons[6].icon"></es-icon>\r\n <span>{{hiddenButtons[6].title}}</span>\r\n </button>\r\n <button *ngIf="hiddenButtons.length > 7"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[7].disabled === true"\r\n (click)="handleAction(hiddenButtons[7])">\r\n <es-icon [color]="hiddenButtons[7].color"\r\n [themeColor]="hiddenButtons[7].themeColor"\r\n [icon]="hiddenButtons[7].icon"></es-icon>\r\n <span>{{hiddenButtons[7].title}}</span>\r\n </button>\r\n <button *ngIf="hiddenButtons.length > 8"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[8].disabled === true"\r\n (click)="handleAction(hiddenButtons[8])">\r\n <es-icon [color]="hiddenButtons[8].color"\r\n [themeColor]="hiddenButtons[8].themeColor"\r\n [icon]="hiddenButtons[8].icon"></es-icon>\r\n <span>{{hiddenButtons[8].title}}</span>\r\n </button>\r\n <button *ngIf="hiddenButtons.length > 9"\r\n mat-menu-item\r\n [disabled]="hiddenButtons[9].disabled === true"\r\n (click)="handleAction(hiddenButtons[9])">\r\n <es-icon [color]="hiddenButtons[9].color"\r\n [themeColor]="hiddenButtons[9].themeColor"\r\n [icon]="hiddenButtons[9].icon"></es-icon>\r\n <span>{{hiddenButtons[9].title}}</span>\r\n </button>\r\n </ng-container>\r\n</mat-menu>\r\n',changeDetection:n.ChangeDetectionStrategy.OnPush,styles:[":host{float:right}"]}]}],f.ctorParameters=function(){return[{type:e.Router},{type:u.EsDialogService},{type:o.MatSnackBar},{type:s.HttpService}]},f.propDecorators={parentWidth:[{type:n.Input}],buttons:[{type:n.Input}],forceMenu:[{type:n.Input}],buttonClick:[{type:n.Output}],reload:[{type:n.Output}],dialogCreated:[{type:n.Output}],serverResponse:[{type:n.Output}]};var C=function(){};C.decorators=[{type:n.NgModule,args:[{imports:[d.CommonModule,h.MatButtonModule,m.MatTooltipModule,b.MatMenuModule,o.MatSnackBarModule,p.TranslateModule.forChild(),r.EsIconModule,u.EsDialogModule,a.EsFormModule],declarations:[f,g,v],exports:[f],entryComponents:[g,v]}]}],t.EsButtonAction=B,t.EsButtonsComponent=f,t.EsButtonsModule=C,t.ɵa=g,t.ɵb=v,Object.defineProperty(t,"__esModule",{value:!0})}));
|
|
1
|
+
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/core"),require("@angular/router"),require("@angular/material/snack-bar"),require("@eurosat/snackbar"),require("@eurosat/http"),require("@eurosat/icon"),require("@angular/material/dialog"),require("@eurosat/dialog"),require("@eurosat/form"),require("rxjs/internal/operators"),require("@angular/common"),require("@angular/material/button"),require("@angular/material/menu"),require("@angular/material/tooltip"),require("@ngx-translate/core")):"function"==typeof define&&define.amd?define("@eurosat/buttons",["exports","@angular/core","@angular/router","@angular/material/snack-bar","@eurosat/snackbar","@eurosat/http","@eurosat/icon","@angular/material/dialog","@eurosat/dialog","@eurosat/form","rxjs/internal/operators","@angular/common","@angular/material/button","@angular/material/menu","@angular/material/tooltip","@ngx-translate/core"],n):n(((t="undefined"!=typeof globalThis?globalThis:t||self).eurosat=t.eurosat||{},t.eurosat.buttons={}),t.ng.core,t.ng.router,t.ng.material.snackBar,t.snackbar,t.http,t.icon,t.ng.material.dialog,t.dialog$1,t.form,t.rxjs["internal/operators"],t.ng.common,t.ng.material.button,t.ng.material.menu,t.ng.material.tooltip,t.core$1)}(this,(function(t,n,e,o,i,s,l,u,r,a,c,d,h,b,m,p){"use strict";var B=function(){};B.ACTION_DIALOG_CONFIRM="dialog-confirm",B.ACTION_DIALOG_DELETE="dialog-delete",B.ACTION_DIALOG_FORM="dialog-form",B.ACTION_CARD_CONTENT_FORM="card-content-form",B.ACTION_CARD_CONTENT_WIZARD="card-content-wizard",B.ACTION_CHANGE_CARD_CONTENT="change-card-content",B.ACTION_DOWNLOAD="download",B.ACTION_REQUEST="request",B.ACTION_ROUTER_NAVIGATE="router-navigate",B.ACTION_WINDOW_LOCATION="open-link";var g=function(){function t(t,e,o){this.dialogRef=t,this.snackBar=e,this.ds=o,this.submit=new n.EventEmitter,this.activeRequest=!1;var i=this.ds.getData();this.message=i.message,this.url=i.url}return t.prototype.confirm=function(){var t=this;this.activeRequest=!0,this.ds.httpPost(this.url,null).subscribe((function(n){t.activeRequest=!1;var e=new o.MatSnackBarConfig;e.duration=2e3,n.type===a.EsFormResponseMessageType.TYPE_OK?(e.panelClass=i.EsSnackBarPanelClass.SUCCESS,t.submit.emit()):e.panelClass=i.EsSnackBarPanelClass.DANGER,t.snackBar.open(n.message,null,e);var s={clickedYes:!0,serverResponse:n};t.dialogRef.close(s)}))},t}();g.decorators=[{type:n.Component,args:[{selector:"dialog-confirm",template:'<p>{{message}}</p>\n<div class="button-container">\n <mat-spinner *ngIf="activeRequest" [diameter]="36"></mat-spinner>\n <ng-container *ngIf="!activeRequest">\n <button type="button"\n color="accent"\n mat-raised-button\n (click)="confirm()"> {{\'an.common.ano\' | translate}}\n </button>\n <button type="button"\n color="accent"\n mat-raised-button\n (click)="dialogRef.close({clickedYes: false})">{{\'an.common.ne\' | translate}}\n </button>\n </ng-container>\n</div>\n',styles:["button:not(:last-child){margin-right:20px}.button-container{min-height:36px;min-width:196px;position:relative;text-align:center}.button-container mat-spinner{position:absolute!important;left:calc(50% - 18px);top:calc(50% - 18px)}"]}]}],g.ctorParameters=function(){return[{type:u.MatDialogRef},{type:o.MatSnackBar},{type:r.EsDialogService}]},g.propDecorators={submit:[{type:n.Output}]};var v=function(){function t(t,n){this.dialogRef=t,this.cols=1,this.maxFormHeight=window.innerHeight-60;var e=n.getData();this.formUrl=e.url}return t.prototype.submit=function(t){this.dialogRef.close({clickedYes:!0})},t.prototype.getWindowHeight=function(){this.maxFormHeight=window.innerHeight-60},t}();v.decorators=[{type:n.Component,args:[{selector:"dialog-form",template:'<div class="es-form-container" [style.max-height]="(maxFormHeight - 106) + \'px\'">\n <es-form [formUrl]="formUrl"\n [dynamicForm]="esForm"\n [cols]="cols"\n (submit)="submit($event)">\n </es-form>\n</div>\n',styles:[".es-form-container{overflow:auto;margin-top:24px;position:relative}"]}]}],v.ctorParameters=function(){return[{type:u.MatDialogRef},{type:r.EsDialogService}]};var f=function(){function t(t,e,o,i){this.router=t,this.dialog=e,this.snackBar=o,this.http=i,this.parentWidth=40,this.buttons=[],this.forceMenu=!1,this.buttonClick=new n.EventEmitter,this.reload=new n.EventEmitter,this.dialogCreated=new n.EventEmitter,this.serverResponse=new n.EventEmitter,this.menuVisible=!1,this.buttonWidth=40,this.visibleButtons=[],this.hiddenButtons=[],this.esIcon=l.EsIcon,this._width=0}return t.prototype.showMenu=function(){return this.getHiddenButtons()&&this.getHiddenButtons().length>0&&1!==this.getHiddenButtons().length},t.prototype.countVisible=function(){return Math.floor(this._width/this.buttonWidth)-1},t.prototype.getVisibleButtons=function(){var t=this;if(this.buttons&&this.buttons.length>0)return this.buttons.filter((function(n){if(t.buttons.indexOf(n)<t.countVisible()||1===t.getHiddenButtons().length&&!t.forceMenu)return!0}))},t.prototype.getHiddenButtons=function(){var t=this;if(this.buttons&&this.buttons.length>0)return this.buttons.filter((function(n){if(t.buttons.indexOf(n)>=t.countVisible())return!0}))},t.prototype.ngOnChanges=function(t){t.parentWidth&&this.parentWidth>0&&(this._width=this.parentWidth,this.recalculateButtons()),t.buttons&&("string"==typeof this.buttons&&(this.buttons=JSON.parse(this.buttons)),this.recalculateButtons())},t.prototype.recalculateButtons=function(){this.menuVisible=this.showMenu(),this.visibleButtons=this.getVisibleButtons(),this.hiddenButtons=this.getHiddenButtons()},t.prototype.handleAction=function(t){var n=this;t.action===B.ACTION_DIALOG_CONFIRM&&this.openConfirm(t),t.action===B.ACTION_DIALOG_DELETE&&this.openDelete(t),t.action===B.ACTION_DIALOG_FORM&&this.openForm(t),t.action===B.ACTION_DOWNLOAD&&this.http.get(t.url,{responseType:"blob",observe:"response"}).subscribe((function(t){var n=t.headers.get("Content-Disposition").split("filename=")[1];if(window.navigator&&window.navigator.msSaveOrOpenBlob)window.navigator.msSaveBlob(t.body,n);else{var e=document.createElement("a");e.setAttribute("href",window.URL.createObjectURL(t.body)),e.setAttribute("download",n),e.style.visibility="hidden",document.body.appendChild(e),e.click(),document.body.removeChild(e)}})),t.action===B.ACTION_REQUEST&&this.http.get(t.url).subscribe((function(e){var s=new o.MatSnackBarConfig;s.duration=2e3,e.type===a.EsFormResponseMessageType.TYPE_OK?s.panelClass=i.EsSnackBarPanelClass.SUCCESS:s.panelClass=i.EsSnackBarPanelClass.DANGER,n.snackBar.open(e.message,null,s),n.reload.emit(!0),n.serverResponse.emit({button:t,response:e})})),t.action===B.ACTION_ROUTER_NAVIGATE&&this.router.navigateByUrl(t.url),t.action===B.ACTION_WINDOW_LOCATION&&(window.location.href=t.url),this.buttonClick.emit(t)},t.prototype.openForm=function(t){var n=this,e={title:t.title,data:{url:t.url}},o=this.dialog.open(v,e);this.dialogCreated.emit(o),o.afterClosed().pipe(c.take(1)).subscribe((function(e){e&&e.clickedYes&&(n.reload.emit(!0),e.serverResponse&&n.serverResponse.emit({button:t,response:e.serverResponse}))}))},t.prototype.openDelete=function(t){this.openConfirm(t)},t.prototype.openConfirm=function(t){var n=this,e={title:t.title,data:{message:t.message,url:t.url}},o=this.dialog.open(g,e);this.dialogCreated.emit(o),o.afterClosed().pipe(c.take(1)).subscribe((function(e){e&&e.clickedYes&&(n.reload.emit(!0),e.serverResponse&&n.serverResponse.emit({button:t,response:e.serverResponse}))}))},t}();f.decorators=[{type:n.Component,args:[{selector:"es-buttons",template:'<ng-container *ngIf="visibleButtons && visibleButtons.length > 0">\n <button *ngIf="visibleButtons.length > 0"\n mat-icon-button\n [disabled]="visibleButtons[0].disabled === true"\n [matTooltip]="visibleButtons[0].tooltip? visibleButtons[0].tooltip : visibleButtons[0].title"\n (click)="handleAction(visibleButtons[0])">\n <es-icon [color]="visibleButtons[0].color"\n [themeColor]="visibleButtons[0].themeColor"\n [icon]="visibleButtons[0].icon"></es-icon>\n </button>\n <button *ngIf="visibleButtons.length > 1"\n mat-icon-button\n [disabled]="visibleButtons[1].disabled === true"\n [matTooltip]="visibleButtons[1].tooltip? visibleButtons[1].tooltip : visibleButtons[1].title"\n (click)="handleAction(visibleButtons[1])">\n <es-icon [color]="visibleButtons[1].color"\n [themeColor]="visibleButtons[1].themeColor"\n [icon]="visibleButtons[1].icon"></es-icon>\n </button>\n <button *ngIf="visibleButtons.length > 2"\n mat-icon-button\n [disabled]="visibleButtons[2].disabled === true"\n [matTooltip]="visibleButtons[2].tooltip? visibleButtons[2].tooltip : visibleButtons[2].title"\n (click)="handleAction(visibleButtons[2])">\n <es-icon [color]="visibleButtons[2].color"\n [themeColor]="visibleButtons[2].themeColor"\n [icon]="visibleButtons[2].icon"></es-icon>\n </button>\n <button *ngIf="visibleButtons.length > 3"\n mat-icon-button\n [disabled]="visibleButtons[3].disabled === true"\n [matTooltip]="visibleButtons[3].tooltip? visibleButtons[3].tooltip : visibleButtons[3].title"\n (click)="handleAction(visibleButtons[3])">\n <es-icon [color]="visibleButtons[3].color"\n [themeColor]="visibleButtons[3].themeColor"\n [icon]="visibleButtons[3].icon"></es-icon>\n </button>\n <button *ngIf="visibleButtons.length > 4"\n mat-icon-button\n [disabled]="visibleButtons[4].disabled === true"\n [matTooltip]="visibleButtons[4].tooltip? visibleButtons[4].tooltip : visibleButtons[4].title"\n (click)="handleAction(visibleButtons[4])">\n <es-icon [color]="visibleButtons[4].color"\n [themeColor]="visibleButtons[4].themeColor"\n [icon]="visibleButtons[4].icon"></es-icon>\n </button>\n <button *ngIf="visibleButtons.length > 5"\n mat-icon-button\n [disabled]="visibleButtons[5].disabled === true"\n [matTooltip]="visibleButtons[5].tooltip? visibleButtons[5].tooltip : visibleButtons[5].title"\n (click)="handleAction(visibleButtons[5])">\n <es-icon [color]="visibleButtons[5].color"\n [themeColor]="visibleButtons[5].themeColor"\n [icon]="visibleButtons[5].icon"></es-icon>\n </button>\n <button *ngIf="visibleButtons.length > 6"\n mat-icon-button\n [disabled]="visibleButtons[6].disabled === true"\n [matTooltip]="visibleButtons[6].tooltip? visibleButtons[6].tooltip : visibleButtons[6].title"\n (click)="handleAction(visibleButtons[6])">\n <es-icon [color]="visibleButtons[6].color"\n [themeColor]="visibleButtons[6].themeColor"\n [icon]="visibleButtons[6].icon"></es-icon>\n </button>\n <button *ngIf="visibleButtons.length > 7"\n mat-icon-button\n [disabled]="visibleButtons[7].disabled === true"\n [matTooltip]="visibleButtons[7].tooltip? visibleButtons[7].tooltip : visibleButtons[7].title"\n (click)="handleAction(visibleButtons[7])">\n <es-icon [color]="visibleButtons[7].color"\n [themeColor]="visibleButtons[7].themeColor"\n [icon]="visibleButtons[7].icon"></es-icon>\n </button>\n <button *ngIf="visibleButtons.length > 8"\n mat-icon-button\n [disabled]="visibleButtons[8].disabled === true"\n [matTooltip]="visibleButtons[8].tooltip? visibleButtons[8].tooltip : visibleButtons[8].title"\n (click)="handleAction(visibleButtons[8])">\n <es-icon [color]="visibleButtons[8].color"\n [themeColor]="visibleButtons[8].themeColor"\n [icon]="visibleButtons[8].icon"></es-icon>\n </button>\n <button *ngIf="visibleButtons.length > 9"\n mat-icon-button\n [disabled]="visibleButtons[9].disabled === true"\n [matTooltip]="visibleButtons[9].tooltip? visibleButtons[9].tooltip : visibleButtons[9].title"\n (click)="handleAction(visibleButtons[9])">\n <es-icon [color]="visibleButtons[9].color"\n [themeColor]="visibleButtons[9].themeColor"\n [icon]="visibleButtons[9].icon"></es-icon>\n </button>\n</ng-container>\n\n\n<button *ngIf="menuVisible || forceMenu"\n mat-icon-button\n [matMenuTriggerFor]="menu"\n [matTooltip]="\'an.more\' | translate">\n <es-icon [icon]="esIcon.MORE_VERT"></es-icon>\n</button>\n\n\n<mat-menu #menu="matMenu"\n [overlapTrigger]="false"\n yPosition="below"\n xPosition="before">\n <ng-container *ngIf="hiddenButtons && hiddenButtons.length > 0">\n <button *ngIf="hiddenButtons.length > 0"\n mat-menu-item\n [disabled]="hiddenButtons[0].disabled === true"\n (click)="handleAction(hiddenButtons[0])">\n <es-icon [color]="hiddenButtons[0].color"\n [themeColor]="hiddenButtons[0].themeColor"\n [icon]="hiddenButtons[0].icon"></es-icon>\n <span>{{hiddenButtons[0].title}}</span>\n </button>\n <button *ngIf="hiddenButtons.length > 1"\n mat-menu-item\n [disabled]="hiddenButtons[1].disabled === true"\n (click)="handleAction(hiddenButtons[1])">\n <es-icon [color]="hiddenButtons[1].color"\n [themeColor]="hiddenButtons[1].themeColor"\n [icon]="hiddenButtons[1].icon"></es-icon>\n <span>{{hiddenButtons[1].title}}</span>\n </button>\n <button *ngIf="hiddenButtons.length > 2"\n mat-menu-item\n [disabled]="hiddenButtons[2].disabled === true"\n (click)="handleAction(hiddenButtons[2])">\n <es-icon [color]="hiddenButtons[2].color"\n [themeColor]="hiddenButtons[2].themeColor"\n [icon]="hiddenButtons[2].icon"></es-icon>\n <span>{{hiddenButtons[2].title}}</span>\n </button>\n <button *ngIf="hiddenButtons.length > 3"\n mat-menu-item\n [disabled]="hiddenButtons[3].disabled === true"\n (click)="handleAction(hiddenButtons[3])">\n <es-icon [color]="hiddenButtons[3].color"\n [themeColor]="hiddenButtons[3].themeColor"\n [icon]="hiddenButtons[3].icon"></es-icon>\n <span>{{hiddenButtons[3].title}}</span>\n </button>\n <button *ngIf="hiddenButtons.length > 4"\n mat-menu-item\n [disabled]="hiddenButtons[4].disabled === true"\n (click)="handleAction(hiddenButtons[4])">\n <es-icon [color]="hiddenButtons[4].color"\n [themeColor]="hiddenButtons[4].themeColor"\n [icon]="hiddenButtons[4].icon"></es-icon>\n <span>{{hiddenButtons[4].title}}</span>\n </button>\n <button *ngIf="hiddenButtons.length > 5"\n mat-menu-item\n [disabled]="hiddenButtons[5].disabled === true"\n (click)="handleAction(hiddenButtons[5])">\n <es-icon [color]="hiddenButtons[5].color"\n [themeColor]="hiddenButtons[5].themeColor"\n [icon]="hiddenButtons[5].icon"></es-icon>\n <span>{{hiddenButtons[5].title}}</span>\n </button>\n <button *ngIf="hiddenButtons.length > 6"\n mat-menu-item\n [disabled]="hiddenButtons[6].disabled === true"\n (click)="handleAction(hiddenButtons[6])">\n <es-icon [color]="hiddenButtons[6].color"\n [themeColor]="hiddenButtons[6].themeColor"\n [icon]="hiddenButtons[6].icon"></es-icon>\n <span>{{hiddenButtons[6].title}}</span>\n </button>\n <button *ngIf="hiddenButtons.length > 7"\n mat-menu-item\n [disabled]="hiddenButtons[7].disabled === true"\n (click)="handleAction(hiddenButtons[7])">\n <es-icon [color]="hiddenButtons[7].color"\n [themeColor]="hiddenButtons[7].themeColor"\n [icon]="hiddenButtons[7].icon"></es-icon>\n <span>{{hiddenButtons[7].title}}</span>\n </button>\n <button *ngIf="hiddenButtons.length > 8"\n mat-menu-item\n [disabled]="hiddenButtons[8].disabled === true"\n (click)="handleAction(hiddenButtons[8])">\n <es-icon [color]="hiddenButtons[8].color"\n [themeColor]="hiddenButtons[8].themeColor"\n [icon]="hiddenButtons[8].icon"></es-icon>\n <span>{{hiddenButtons[8].title}}</span>\n </button>\n <button *ngIf="hiddenButtons.length > 9"\n mat-menu-item\n [disabled]="hiddenButtons[9].disabled === true"\n (click)="handleAction(hiddenButtons[9])">\n <es-icon [color]="hiddenButtons[9].color"\n [themeColor]="hiddenButtons[9].themeColor"\n [icon]="hiddenButtons[9].icon"></es-icon>\n <span>{{hiddenButtons[9].title}}</span>\n </button>\n </ng-container>\n</mat-menu>\n',changeDetection:n.ChangeDetectionStrategy.OnPush,styles:[":host{float:right}"]}]}],f.ctorParameters=function(){return[{type:e.Router},{type:r.EsDialogService},{type:o.MatSnackBar},{type:s.HttpService}]},f.propDecorators={parentWidth:[{type:n.Input}],buttons:[{type:n.Input}],forceMenu:[{type:n.Input}],buttonClick:[{type:n.Output}],reload:[{type:n.Output}],dialogCreated:[{type:n.Output}],serverResponse:[{type:n.Output}]};var C=function(){};C.decorators=[{type:n.NgModule,args:[{imports:[d.CommonModule,h.MatButtonModule,m.MatTooltipModule,b.MatMenuModule,o.MatSnackBarModule,p.TranslateModule.forChild(),l.EsIconModule,r.EsDialogModule,a.EsFormModule],declarations:[f,g,v],exports:[f],entryComponents:[g,v]}]}],t.EsButtonAction=B,t.EsButtonsComponent=f,t.EsButtonsModule=C,t.ɵa=g,t.ɵb=v,Object.defineProperty(t,"__esModule",{value:!0})}));
|
|
2
2
|
//# sourceMappingURL=eurosat-buttons.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../projects/buttons/src/lib/model/es-button-action.ts","../../../projects/buttons/src/lib/components/dialog-confirm/dialog-confirm.component.ts","../../../projects/buttons/src/lib/components/dialog-form/dialog-form.component.ts","../../../projects/buttons/src/lib/es-buttons.component.ts","../../../projects/buttons/src/lib/es-buttons.module.ts"],"names":["EsButtonAction","ACTION_DIALOG_CONFIRM","ACTION_DIALOG_DELETE","ACTION_DIALOG_FORM","ACTION_CARD_CONTENT_FORM","ACTION_CARD_CONTENT_WIZARD","ACTION_CHANGE_CARD_CONTENT","ACTION_DOWNLOAD","ACTION_REQUEST","ACTION_ROUTER_NAVIGATE","ACTION_WINDOW_LOCATION","DialogConfirmComponent","dialogRef","snackBar","ds","this","submit","EventEmitter","activeRequest","data","getData","message","url","prototype","confirm","_this","httpPost","subscribe","response","config","MatSnackBarConfig","duration","type","EsFormResponseMessageType","TYPE_OK","panelClass","EsSnackBarPanelClass","SUCCESS","emit","DANGER","open","result","clickedYes","serverResponse","close","Component","args","selector","template","MatDialogRef","MatSnackBar","EsDialogService","Output","DialogFormComponent","cols","maxFormHeight","window","innerHeight","formUrl","value","getWindowHeight","EsButtonsComponent","router","dialog","http","parentWidth","buttons","forceMenu","buttonClick","reload","dialogCreated","menuVisible","buttonWidth","visibleButtons","hiddenButtons","esIcon","EsIcon","_width","showMenu","getHiddenButtons","length","countVisible","Math","floor","getVisibleButtons","filter","button","indexOf","ngOnChanges","simpleChange","recalculateButtons","JSON","parse","handleAction","action","openConfirm","openDelete","openForm","get","responseType","observe","filename","headers","split","navigator","msSaveOrOpenBlob","msSaveBlob","body","link","document","createElement","setAttribute","URL","createObjectURL","style","visibility","appendChild","click","removeChild","navigateByUrl","location","href","title","afterClosed","pipe","take","res","changeDetection","ChangeDetectionStrategy","OnPush","Router","HttpService","Input","NgModule","imports","CommonModule","MatButtonModule","MatTooltipModule","MatMenuModule","MatSnackBarModule","TranslateModule","forChild","EsIconModule","EsDialogModule","EsFormModule","declarations","exports","entryComponents"],"mappings":"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","sourcesContent":["export class EsButtonAction {\r\n\r\n public static ACTION_DIALOG_CONFIRM = 'dialog-confirm';\r\n public static ACTION_DIALOG_DELETE = 'dialog-delete';\r\n public static ACTION_DIALOG_FORM = 'dialog-form';\r\n public static ACTION_CARD_CONTENT_FORM = 'card-content-form';\r\n public static ACTION_CARD_CONTENT_WIZARD = 'card-content-wizard'; // todo asi zrusit\r\n public static ACTION_CHANGE_CARD_CONTENT = 'change-card-content'; // mozna zrusit ? je kuli neemitu clicku na button\r\n public static ACTION_DOWNLOAD = 'download';\r\n public static ACTION_REQUEST = 'request';\r\n public static ACTION_ROUTER_NAVIGATE = 'router-navigate';\r\n public static ACTION_WINDOW_LOCATION = 'open-link';\r\n}\r\n","import {Component, EventEmitter, Output} from '@angular/core';\r\nimport {MatDialogRef} from '@angular/material/dialog';\r\nimport {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';\r\nimport {EsSnackBarPanelClass} from '@eurosat/snackbar';\r\nimport {EsDialogService} from '@eurosat/dialog';\r\nimport { DialogResult } from '../dialog-result';\r\nimport { EsFormResponseMessage, EsFormResponseMessageType } from '@eurosat/form';\r\n\r\n\r\n@Component({\r\n selector: 'dialog-confirm',\r\n templateUrl: './dialog-confirm.component.html',\r\n styleUrls: ['./dialog-confirm.component.scss']\r\n})\r\nexport class DialogConfirmComponent {\r\n\r\n @Output() submit: EventEmitter<any> = new EventEmitter<any>();\r\n public message: string;\r\n public url: string;\r\n activeRequest = false;\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef<DialogConfirmComponent>,\r\n private snackBar: MatSnackBar,\r\n private ds: EsDialogService\r\n ) {\r\n const data = this.ds.getData();\r\n this.message = data.message;\r\n this.url = data.url;\r\n }\r\n\r\n confirm() {\r\n this.activeRequest = true;\r\n this.ds.httpPost(this.url, null).subscribe((response: EsFormResponseMessage) => {\r\n this.activeRequest = false;\r\n const config = new MatSnackBarConfig();\r\n config.duration = 2000;\r\n if (response.type === EsFormResponseMessageType.TYPE_OK) {\r\n config.panelClass = EsSnackBarPanelClass.SUCCESS;\r\n this.submit.emit();\r\n } else {\r\n config.panelClass = EsSnackBarPanelClass.DANGER;\r\n }\r\n this.snackBar.open(response.message, null, config);\r\n\r\n const result: DialogResult = {\r\n clickedYes: true,\r\n serverResponse: response\r\n };\r\n this.dialogRef.close(result);\r\n });\r\n }\r\n\r\n}\r\n","import {Component} from '@angular/core';\r\nimport {MatDialogRef} from '@angular/material/dialog';\r\nimport {EsForm} from '@eurosat/form';\r\nimport {EsDialogService} from '@eurosat/dialog';\r\nimport { DialogResult } from '../dialog-result';\r\n\r\n@Component({\r\n selector: 'dialog-form',\r\n templateUrl: './dialog-form.component.html',\r\n styleUrls: ['./dialog-form.component.scss']\r\n})\r\nexport class DialogFormComponent {\r\n\r\n public formUrl: string;\r\n public cols = 1;\r\n public esForm: EsForm;\r\n public maxFormHeight: number = window.innerHeight - 60;\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef<DialogFormComponent>,\r\n ds: EsDialogService,\r\n ) {\r\n const data = ds.getData();\r\n this.formUrl = data.url;\r\n }\r\n\r\n submit(value: {[name: string]: any}) {\r\n\r\n // sem se to dostane jen pri success ulozeni formu\r\n const result: DialogResult = {\r\n clickedYes: true\r\n };\r\n this.dialogRef.close(result);\r\n\r\n\r\n\r\n // pokud bysme chteli form.value\r\n // this.dialogRef.close(value);\r\n // console.log('form value v parent', value);\r\n\r\n\r\n }\r\n\r\n getWindowHeight() {\r\n this.maxFormHeight = window.innerHeight - 60;\r\n }\r\n\r\n\r\n}\r\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\r\nimport {Router} from '@angular/router';\r\nimport {EsButton} from './model/es-button.interface';\r\nimport {EsButtonAction} from './model/es-button-action';\r\nimport {MatDialogRef} from '@angular/material/dialog';\r\nimport {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';\r\nimport {EsSnackBarPanelClass} from '@eurosat/snackbar';\r\nimport {HttpService} from '@eurosat/http';\r\nimport {EsIcon} from '@eurosat/icon';\r\nimport {DialogConfirmComponent} from './components/dialog-confirm/dialog-confirm.component';\r\nimport {take} from 'rxjs/internal/operators';\r\nimport {DialogFormComponent} from './components/dialog-form/dialog-form.component';\r\nimport {EsDialogService} from '@eurosat/dialog';\r\nimport {EsDialogConfig} from '@eurosat/dialog';\r\nimport { DialogResult } from './components/dialog-result';\r\nimport { EsButtonServerResponse } from './model/es-button-server-response';\r\nimport { EsFormResponseMessage, EsFormResponseMessageType } from '@eurosat/form';\r\n\r\n// todo translates\r\n\r\n@Component({\r\n selector: 'es-buttons',\r\n templateUrl: './es-buttons.component.html',\r\n styleUrls: ['./es-buttons.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class EsButtonsComponent implements OnChanges {\r\n\r\n @Input() parentWidth = 40; // default 40 = 1 button\r\n @Input() buttons: EsButton[] = []; // normal input\r\n @Input() forceMenu = false; // pokud chci zobrazit ... menu i pro jeden buttonek, na realtimu pouzito\r\n\r\n @Output() buttonClick = new EventEmitter<EsButton>();\r\n @Output() reload = new EventEmitter<boolean>();\r\n @Output() dialogCreated = new EventEmitter<MatDialogRef<any>>();\r\n @Output() serverResponse = new EventEmitter<EsButtonServerResponse>();\r\n\r\n menuVisible = false;\r\n buttonWidth = 40; // todo ViewChild, sirka buttonu ?\r\n visibleButtons: EsButton[] = [];\r\n hiddenButtons: EsButton[] = [];\r\n esIcon = EsIcon;\r\n _width = 0;\r\n\r\n constructor(\r\n private router: Router,\r\n private dialog: EsDialogService,\r\n private snackBar: MatSnackBar,\r\n private http: HttpService,\r\n ) { }\r\n\r\n showMenu() {\r\n return this.getHiddenButtons() && this.getHiddenButtons().length > 0 && this.getHiddenButtons().length !== 1;\r\n }\r\n\r\n countVisible() {\r\n return Math.floor((this._width) / this.buttonWidth) - 1;\r\n }\r\n\r\n getVisibleButtons() {\r\n if (this.buttons && this.buttons.length > 0) {\r\n return this.buttons.filter(button => {\r\n if (this.buttons.indexOf(button) < this.countVisible()\r\n || (this.getHiddenButtons().length === 1 && !this.forceMenu)) {\r\n return true;\r\n }\r\n });\r\n }\r\n }\r\n\r\n getHiddenButtons() {\r\n if (this.buttons && this.buttons.length > 0) {\r\n return this.buttons.filter(button => {\r\n if (this.buttons.indexOf(button) >= this.countVisible()) {\r\n return true;\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnChanges(simpleChange: SimpleChanges) {\r\n if (simpleChange['parentWidth']) {\r\n if (this.parentWidth > 0) {\r\n this._width = this.parentWidth;\r\n this.recalculateButtons();\r\n }\r\n }\r\n\r\n if (simpleChange['buttons']) {\r\n if (typeof this.buttons === 'string') {\r\n this.buttons = JSON.parse(this.buttons);\r\n }\r\n this.recalculateButtons();\r\n }\r\n }\r\n\r\n recalculateButtons() {\r\n this.menuVisible = this.showMenu();\r\n this.visibleButtons = this.getVisibleButtons();\r\n this.hiddenButtons = this.getHiddenButtons();\r\n }\r\n\r\n handleAction(button: EsButton) {\r\n if (button.action === EsButtonAction.ACTION_DIALOG_CONFIRM) {\r\n this.openConfirm(button);\r\n }\r\n if (button.action === EsButtonAction.ACTION_DIALOG_DELETE) {\r\n this.openDelete(button);\r\n }\r\n if (button.action === EsButtonAction.ACTION_DIALOG_FORM) {\r\n this.openForm(button);\r\n }\r\n if (button.action === EsButtonAction.ACTION_DOWNLOAD) {\r\n this.http.get(button.url, {responseType: 'blob', observe: 'response'}).subscribe(response => {\r\n const filename = response.headers.get('Content-Disposition').split('filename=')[1];\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveBlob(response.body, filename);\r\n } else {\r\n const link = document.createElement('a');\r\n link.setAttribute('href', window.URL.createObjectURL(response.body));\r\n link.setAttribute('download', filename);\r\n link.style.visibility = 'hidden';\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n });\r\n }\r\n if (button.action === EsButtonAction.ACTION_REQUEST) {\r\n this.http.get(button.url).subscribe((response: EsFormResponseMessage) => {\r\n const config = new MatSnackBarConfig();\r\n config.duration = 2000;\r\n if (response.type === EsFormResponseMessageType.TYPE_OK) {\r\n config.panelClass = EsSnackBarPanelClass.SUCCESS;\r\n } else {\r\n config.panelClass = EsSnackBarPanelClass.DANGER;\r\n }\r\n this.snackBar.open(response.message, null, config);\r\n this.reload.emit(true);\r\n this.serverResponse.emit({button: button, response: response});\r\n });\r\n }\r\n if (button.action === EsButtonAction.ACTION_ROUTER_NAVIGATE) {\r\n this.router.navigateByUrl(button.url);\r\n }\r\n if (button.action === EsButtonAction.ACTION_WINDOW_LOCATION) {\r\n window.location.href = button.url;\r\n }\r\n this.buttonClick.emit(button);\r\n }\r\n\r\n // handleSubMenuAction(button: EsButton) {\r\n // // todo asi predelat na md2 menu\r\n // // todo nevim jestli se zpropaguje click kdyz je to zanoreny pres es-card-header\r\n // this.buttonClick.emit(button);\r\n // }\r\n\r\n openForm(button: EsButton) {\r\n const config: EsDialogConfig = {\r\n title: button.title,\r\n data: {\r\n url: button.url\r\n }\r\n };\r\n const dialogRef: MatDialogRef<DialogFormComponent> = this.dialog.open(DialogFormComponent, config);\r\n this.dialogCreated.emit(dialogRef);\r\n dialogRef.afterClosed().pipe(take(1)).subscribe( (res: DialogResult) => {\r\n if (res && res.clickedYes) {\r\n this.reload.emit(true);\r\n\r\n if (res.serverResponse) {\r\n this.serverResponse.emit({button: button, response: res.serverResponse});\r\n }\r\n }\r\n });\r\n }\r\n\r\n openDelete(button: EsButton) {\r\n this.openConfirm(button);\r\n }\r\n\r\n openConfirm(button: EsButton) {\r\n const config: EsDialogConfig = {\r\n title: button.title,\r\n data: {\r\n message: button.message,\r\n url: button.url\r\n }\r\n };\r\n const dialogRef: MatDialogRef<DialogConfirmComponent> = this.dialog.open(DialogConfirmComponent, config);\r\n this.dialogCreated.emit(dialogRef);\r\n dialogRef.afterClosed().pipe(take(1)).subscribe( (res: DialogResult) => {\r\n if (res && res.clickedYes) {\r\n this.reload.emit(true);\r\n\r\n if (res.serverResponse) {\r\n this.serverResponse.emit({button: button, response: res.serverResponse});\r\n }\r\n }\r\n });\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {EsButtonsComponent} from './es-buttons.component';\r\nimport {MatButtonModule} from '@angular/material/button';\r\nimport {MatMenuModule} from '@angular/material/menu';\r\nimport {MatSnackBarModule} from '@angular/material/snack-bar';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {TranslateModule} from '@ngx-translate/core';\r\nimport {EsIconModule} from '@eurosat/icon';\r\nimport {EsDialogModule} from '@eurosat/dialog';\r\nimport {EsFormModule} from '@eurosat/form';\r\nimport {DialogConfirmComponent} from './components/dialog-confirm/dialog-confirm.component';\r\nimport {DialogFormComponent} from './components/dialog-form/dialog-form.component';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatButtonModule,\r\n MatTooltipModule,\r\n MatMenuModule,\r\n MatSnackBarModule,\r\n TranslateModule.forChild(),\r\n EsIconModule,\r\n EsDialogModule,\r\n EsFormModule,\r\n ],\r\n declarations: [\r\n EsButtonsComponent,\r\n DialogConfirmComponent,\r\n DialogFormComponent,\r\n ],\r\n exports: [EsButtonsComponent],\r\n entryComponents: [\r\n DialogConfirmComponent,\r\n DialogFormComponent,\r\n ],\r\n})\r\nexport class EsButtonsModule { }\r\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../projects/buttons/src/lib/model/es-button-action.ts","../../../projects/buttons/src/lib/components/dialog-confirm/dialog-confirm.component.ts","../../../projects/buttons/src/lib/components/dialog-form/dialog-form.component.ts","../../../projects/buttons/src/lib/es-buttons.component.ts","../../../projects/buttons/src/lib/es-buttons.module.ts"],"names":["EsButtonAction","ACTION_DIALOG_CONFIRM","ACTION_DIALOG_DELETE","ACTION_DIALOG_FORM","ACTION_CARD_CONTENT_FORM","ACTION_CARD_CONTENT_WIZARD","ACTION_CHANGE_CARD_CONTENT","ACTION_DOWNLOAD","ACTION_REQUEST","ACTION_ROUTER_NAVIGATE","ACTION_WINDOW_LOCATION","DialogConfirmComponent","dialogRef","snackBar","ds","this","submit","EventEmitter","activeRequest","data","getData","message","url","prototype","confirm","_this","httpPost","subscribe","response","config","MatSnackBarConfig","duration","type","EsFormResponseMessageType","TYPE_OK","panelClass","EsSnackBarPanelClass","SUCCESS","emit","DANGER","open","result","clickedYes","serverResponse","close","Component","args","selector","template","MatDialogRef","MatSnackBar","EsDialogService","Output","DialogFormComponent","cols","maxFormHeight","window","innerHeight","formUrl","value","getWindowHeight","EsButtonsComponent","router","dialog","http","parentWidth","buttons","forceMenu","buttonClick","reload","dialogCreated","menuVisible","buttonWidth","visibleButtons","hiddenButtons","esIcon","EsIcon","_width","showMenu","getHiddenButtons","length","countVisible","Math","floor","getVisibleButtons","filter","button","indexOf","ngOnChanges","simpleChange","recalculateButtons","JSON","parse","handleAction","action","openConfirm","openDelete","openForm","get","responseType","observe","filename","headers","split","navigator","msSaveOrOpenBlob","msSaveBlob","body","link","document","createElement","setAttribute","URL","createObjectURL","style","visibility","appendChild","click","removeChild","navigateByUrl","location","href","title","afterClosed","pipe","take","res","changeDetection","ChangeDetectionStrategy","OnPush","Router","HttpService","Input","NgModule","imports","CommonModule","MatButtonModule","MatTooltipModule","MatMenuModule","MatSnackBarModule","TranslateModule","forChild","EsIconModule","EsDialogModule","EsFormModule","declarations","exports","entryComponents"],"mappings":"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","sourcesContent":["export class EsButtonAction {\n\n public static ACTION_DIALOG_CONFIRM = 'dialog-confirm';\n public static ACTION_DIALOG_DELETE = 'dialog-delete';\n public static ACTION_DIALOG_FORM = 'dialog-form';\n public static ACTION_CARD_CONTENT_FORM = 'card-content-form';\n public static ACTION_CARD_CONTENT_WIZARD = 'card-content-wizard'; // todo asi zrusit\n public static ACTION_CHANGE_CARD_CONTENT = 'change-card-content'; // mozna zrusit ? je kuli neemitu clicku na button\n public static ACTION_DOWNLOAD = 'download';\n public static ACTION_REQUEST = 'request';\n public static ACTION_ROUTER_NAVIGATE = 'router-navigate';\n public static ACTION_WINDOW_LOCATION = 'open-link';\n}\n","import {Component, EventEmitter, Output} from '@angular/core';\nimport {MatDialogRef} from '@angular/material/dialog';\nimport {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';\nimport {EsSnackBarPanelClass} from '@eurosat/snackbar';\nimport {EsDialogService} from '@eurosat/dialog';\nimport { DialogResult } from '../dialog-result';\nimport { EsFormResponseMessage, EsFormResponseMessageType } from '@eurosat/form';\n\n\n@Component({\n selector: 'dialog-confirm',\n templateUrl: './dialog-confirm.component.html',\n styleUrls: ['./dialog-confirm.component.scss']\n})\nexport class DialogConfirmComponent {\n\n @Output() submit: EventEmitter<any> = new EventEmitter<any>();\n public message: string;\n public url: string;\n activeRequest = false;\n\n constructor(\n public dialogRef: MatDialogRef<DialogConfirmComponent>,\n private snackBar: MatSnackBar,\n private ds: EsDialogService\n ) {\n const data = this.ds.getData();\n this.message = data.message;\n this.url = data.url;\n }\n\n confirm() {\n this.activeRequest = true;\n this.ds.httpPost(this.url, null).subscribe((response: EsFormResponseMessage) => {\n this.activeRequest = false;\n const config = new MatSnackBarConfig();\n config.duration = 2000;\n if (response.type === EsFormResponseMessageType.TYPE_OK) {\n config.panelClass = EsSnackBarPanelClass.SUCCESS;\n this.submit.emit();\n } else {\n config.panelClass = EsSnackBarPanelClass.DANGER;\n }\n this.snackBar.open(response.message, null, config);\n\n const result: DialogResult = {\n clickedYes: true,\n serverResponse: response\n };\n this.dialogRef.close(result);\n });\n }\n\n}\n","import {Component} from '@angular/core';\nimport {MatDialogRef} from '@angular/material/dialog';\nimport {EsForm} from '@eurosat/form';\nimport {EsDialogService} from '@eurosat/dialog';\nimport { DialogResult } from '../dialog-result';\n\n@Component({\n selector: 'dialog-form',\n templateUrl: './dialog-form.component.html',\n styleUrls: ['./dialog-form.component.scss']\n})\nexport class DialogFormComponent {\n\n public formUrl: string;\n public cols = 1;\n public esForm: EsForm;\n public maxFormHeight: number = window.innerHeight - 60;\n\n constructor(\n public dialogRef: MatDialogRef<DialogFormComponent>,\n ds: EsDialogService,\n ) {\n const data = ds.getData();\n this.formUrl = data.url;\n }\n\n submit(value: {[name: string]: any}) {\n\n // sem se to dostane jen pri success ulozeni formu\n const result: DialogResult = {\n clickedYes: true\n };\n this.dialogRef.close(result);\n\n\n\n // pokud bysme chteli form.value\n // this.dialogRef.close(value);\n // console.log('form value v parent', value);\n\n\n }\n\n getWindowHeight() {\n this.maxFormHeight = window.innerHeight - 60;\n }\n\n\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport {Router} from '@angular/router';\nimport {EsButton} from './model/es-button.interface';\nimport {EsButtonAction} from './model/es-button-action';\nimport {MatDialogRef} from '@angular/material/dialog';\nimport {MatSnackBar, MatSnackBarConfig} from '@angular/material/snack-bar';\nimport {EsSnackBarPanelClass} from '@eurosat/snackbar';\nimport {HttpService} from '@eurosat/http';\nimport {EsIcon} from '@eurosat/icon';\nimport {DialogConfirmComponent} from './components/dialog-confirm/dialog-confirm.component';\nimport {take} from 'rxjs/internal/operators';\nimport {DialogFormComponent} from './components/dialog-form/dialog-form.component';\nimport {EsDialogService} from '@eurosat/dialog';\nimport {EsDialogConfig} from '@eurosat/dialog';\nimport { DialogResult } from './components/dialog-result';\nimport { EsButtonServerResponse } from './model/es-button-server-response';\nimport { EsFormResponseMessage, EsFormResponseMessageType } from '@eurosat/form';\n\n// todo translates\n\n@Component({\n selector: 'es-buttons',\n templateUrl: './es-buttons.component.html',\n styleUrls: ['./es-buttons.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EsButtonsComponent implements OnChanges {\n\n @Input() parentWidth = 40; // default 40 = 1 button\n @Input() buttons: EsButton[] = []; // normal input\n @Input() forceMenu = false; // pokud chci zobrazit ... menu i pro jeden buttonek, na realtimu pouzito\n\n @Output() buttonClick = new EventEmitter<EsButton>();\n @Output() reload = new EventEmitter<boolean>();\n @Output() dialogCreated = new EventEmitter<MatDialogRef<any>>();\n @Output() serverResponse = new EventEmitter<EsButtonServerResponse>();\n\n menuVisible = false;\n buttonWidth = 40; // todo ViewChild, sirka buttonu ?\n visibleButtons: EsButton[] = [];\n hiddenButtons: EsButton[] = [];\n esIcon = EsIcon;\n _width = 0;\n\n constructor(\n private router: Router,\n private dialog: EsDialogService,\n private snackBar: MatSnackBar,\n private http: HttpService,\n ) { }\n\n showMenu() {\n return this.getHiddenButtons() && this.getHiddenButtons().length > 0 && this.getHiddenButtons().length !== 1;\n }\n\n countVisible() {\n return Math.floor((this._width) / this.buttonWidth) - 1;\n }\n\n getVisibleButtons() {\n if (this.buttons && this.buttons.length > 0) {\n return this.buttons.filter(button => {\n if (this.buttons.indexOf(button) < this.countVisible()\n || (this.getHiddenButtons().length === 1 && !this.forceMenu)) {\n return true;\n }\n });\n }\n }\n\n getHiddenButtons() {\n if (this.buttons && this.buttons.length > 0) {\n return this.buttons.filter(button => {\n if (this.buttons.indexOf(button) >= this.countVisible()) {\n return true;\n }\n });\n }\n }\n\n ngOnChanges(simpleChange: SimpleChanges) {\n if (simpleChange['parentWidth']) {\n if (this.parentWidth > 0) {\n this._width = this.parentWidth;\n this.recalculateButtons();\n }\n }\n\n if (simpleChange['buttons']) {\n if (typeof this.buttons === 'string') {\n this.buttons = JSON.parse(this.buttons);\n }\n this.recalculateButtons();\n }\n }\n\n recalculateButtons() {\n this.menuVisible = this.showMenu();\n this.visibleButtons = this.getVisibleButtons();\n this.hiddenButtons = this.getHiddenButtons();\n }\n\n handleAction(button: EsButton) {\n if (button.action === EsButtonAction.ACTION_DIALOG_CONFIRM) {\n this.openConfirm(button);\n }\n if (button.action === EsButtonAction.ACTION_DIALOG_DELETE) {\n this.openDelete(button);\n }\n if (button.action === EsButtonAction.ACTION_DIALOG_FORM) {\n this.openForm(button);\n }\n if (button.action === EsButtonAction.ACTION_DOWNLOAD) {\n this.http.get(button.url, {responseType: 'blob', observe: 'response'}).subscribe(response => {\n const filename = response.headers.get('Content-Disposition').split('filename=')[1];\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\n window.navigator.msSaveBlob(response.body, filename);\n } else {\n const link = document.createElement('a');\n link.setAttribute('href', window.URL.createObjectURL(response.body));\n link.setAttribute('download', filename);\n link.style.visibility = 'hidden';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n });\n }\n if (button.action === EsButtonAction.ACTION_REQUEST) {\n this.http.get(button.url).subscribe((response: EsFormResponseMessage) => {\n const config = new MatSnackBarConfig();\n config.duration = 2000;\n if (response.type === EsFormResponseMessageType.TYPE_OK) {\n config.panelClass = EsSnackBarPanelClass.SUCCESS;\n } else {\n config.panelClass = EsSnackBarPanelClass.DANGER;\n }\n this.snackBar.open(response.message, null, config);\n this.reload.emit(true);\n this.serverResponse.emit({button: button, response: response});\n });\n }\n if (button.action === EsButtonAction.ACTION_ROUTER_NAVIGATE) {\n this.router.navigateByUrl(button.url);\n }\n if (button.action === EsButtonAction.ACTION_WINDOW_LOCATION) {\n window.location.href = button.url;\n }\n this.buttonClick.emit(button);\n }\n\n // handleSubMenuAction(button: EsButton) {\n // // todo asi predelat na md2 menu\n // // todo nevim jestli se zpropaguje click kdyz je to zanoreny pres es-card-header\n // this.buttonClick.emit(button);\n // }\n\n openForm(button: EsButton) {\n const config: EsDialogConfig = {\n title: button.title,\n data: {\n url: button.url\n }\n };\n const dialogRef: MatDialogRef<DialogFormComponent> = this.dialog.open(DialogFormComponent, config);\n this.dialogCreated.emit(dialogRef);\n dialogRef.afterClosed().pipe(take(1)).subscribe( (res: DialogResult) => {\n if (res && res.clickedYes) {\n this.reload.emit(true);\n\n if (res.serverResponse) {\n this.serverResponse.emit({button: button, response: res.serverResponse});\n }\n }\n });\n }\n\n openDelete(button: EsButton) {\n this.openConfirm(button);\n }\n\n openConfirm(button: EsButton) {\n const config: EsDialogConfig = {\n title: button.title,\n data: {\n message: button.message,\n url: button.url\n }\n };\n const dialogRef: MatDialogRef<DialogConfirmComponent> = this.dialog.open(DialogConfirmComponent, config);\n this.dialogCreated.emit(dialogRef);\n dialogRef.afterClosed().pipe(take(1)).subscribe( (res: DialogResult) => {\n if (res && res.clickedYes) {\n this.reload.emit(true);\n\n if (res.serverResponse) {\n this.serverResponse.emit({button: button, response: res.serverResponse});\n }\n }\n });\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {EsButtonsComponent} from './es-buttons.component';\nimport {MatButtonModule} from '@angular/material/button';\nimport {MatMenuModule} from '@angular/material/menu';\nimport {MatSnackBarModule} from '@angular/material/snack-bar';\nimport {MatTooltipModule} from '@angular/material/tooltip';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {EsIconModule} from '@eurosat/icon';\nimport {EsDialogModule} from '@eurosat/dialog';\nimport {EsFormModule} from '@eurosat/form';\nimport {DialogConfirmComponent} from './components/dialog-confirm/dialog-confirm.component';\nimport {DialogFormComponent} from './components/dialog-form/dialog-form.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n MatButtonModule,\n MatTooltipModule,\n MatMenuModule,\n MatSnackBarModule,\n TranslateModule.forChild(),\n EsIconModule,\n EsDialogModule,\n EsFormModule,\n ],\n declarations: [\n EsButtonsComponent,\n DialogConfirmComponent,\n DialogFormComponent,\n ],\n exports: [EsButtonsComponent],\n entryComponents: [\n DialogConfirmComponent,\n DialogFormComponent,\n ],\n})\nexport class EsButtonsModule { }\n"]}
|
|
@@ -1,12 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
*
|
|
3
|
-
|
|
4
|
-
*
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*/
|
|
9
|
-
export { EsButtonsComponent, EsButtonsModule, EsButtonAction } from './public_api';
|
|
10
|
-
export { DialogConfirmComponent as ɵa } from './lib/components/dialog-confirm/dialog-confirm.component';
|
|
11
|
-
export { DialogFormComponent as ɵb } from './lib/components/dialog-form/dialog-form.component';
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVyb3NhdC1idXR0b25zLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL01pY2hhbC9FdXJvc2F0L25pbC9wcm9qZWN0cy9idXR0b25zL3NyYy8iLCJzb3VyY2VzIjpbImV1cm9zYXQtYnV0dG9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUlBLG9FQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsc0JBQXNCLElBQUksRUFBRSxFQUFDLE1BQU0sMERBQTBELENBQUM7QUFDdEcsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0RpYWxvZ0NvbmZpcm1Db21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RpYWxvZy1jb25maXJtL2RpYWxvZy1jb25maXJtLmNvbXBvbmVudCc7XG5leHBvcnQge0RpYWxvZ0Zvcm1Db21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RpYWxvZy1mb3JtL2RpYWxvZy1mb3JtLmNvbXBvbmVudCc7Il19
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public_api';
|
|
5
|
+
export { DialogConfirmComponent as ɵa } from './lib/components/dialog-confirm/dialog-confirm.component';
|
|
6
|
+
export { DialogFormComponent as ɵb } from './lib/components/dialog-form/dialog-form.component';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVyb3NhdC1idXR0b25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvYnV0dG9ucy9zcmMvZXVyb3NhdC1idXR0b25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxvREFBb0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcblxuZXhwb3J0IHtEaWFsb2dDb25maXJtQ29tcG9uZW50IGFzIMm1YX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9kaWFsb2ctY29uZmlybS9kaWFsb2ctY29uZmlybS5jb21wb25lbnQnO1xuZXhwb3J0IHtEaWFsb2dGb3JtQ29tcG9uZW50IGFzIMm1Yn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9kaWFsb2ctZm9ybS9kaWFsb2ctZm9ybS5jb21wb25lbnQnOyJdfQ==
|
|
@@ -1,98 +1,56 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
this.
|
|
20
|
-
this.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}));
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
DialogConfirmComponent.decorators = [
|
|
61
|
-
{ type: Component, args: [{
|
|
62
|
-
selector: 'dialog-confirm',
|
|
63
|
-
template: "<p>{{message}}</p>\r\n<div class=\"button-container\">\r\n <mat-spinner *ngIf=\"activeRequest\" [diameter]=\"36\"></mat-spinner>\r\n <ng-container *ngIf=\"!activeRequest\">\r\n <button type=\"button\"\r\n color=\"accent\"\r\n mat-raised-button\r\n (click)=\"confirm()\"> {{'an.common.ano' | translate}}\r\n </button>\r\n <button type=\"button\"\r\n color=\"accent\"\r\n mat-raised-button\r\n (click)=\"dialogRef.close({clickedYes: false})\">{{'an.common.ne' | translate}}\r\n </button>\r\n </ng-container>\r\n</div>\r\n",
|
|
64
|
-
styles: ["button:not(:last-child){margin-right:20px}.button-container{min-height:36px;min-width:196px;position:relative;text-align:center}.button-container mat-spinner{left:calc(50% - 18px);position:absolute!important;top:calc(50% - 18px)}"]
|
|
65
|
-
}] }
|
|
66
|
-
];
|
|
67
|
-
/** @nocollapse */
|
|
68
|
-
DialogConfirmComponent.ctorParameters = () => [
|
|
69
|
-
{ type: MatDialogRef },
|
|
70
|
-
{ type: MatSnackBar },
|
|
71
|
-
{ type: EsDialogService }
|
|
72
|
-
];
|
|
73
|
-
DialogConfirmComponent.propDecorators = {
|
|
74
|
-
submit: [{ type: Output }]
|
|
75
|
-
};
|
|
76
|
-
if (false) {
|
|
77
|
-
/** @type {?} */
|
|
78
|
-
DialogConfirmComponent.prototype.submit;
|
|
79
|
-
/** @type {?} */
|
|
80
|
-
DialogConfirmComponent.prototype.message;
|
|
81
|
-
/** @type {?} */
|
|
82
|
-
DialogConfirmComponent.prototype.url;
|
|
83
|
-
/** @type {?} */
|
|
84
|
-
DialogConfirmComponent.prototype.activeRequest;
|
|
85
|
-
/** @type {?} */
|
|
86
|
-
DialogConfirmComponent.prototype.dialogRef;
|
|
87
|
-
/**
|
|
88
|
-
* @type {?}
|
|
89
|
-
* @private
|
|
90
|
-
*/
|
|
91
|
-
DialogConfirmComponent.prototype.snackBar;
|
|
92
|
-
/**
|
|
93
|
-
* @type {?}
|
|
94
|
-
* @private
|
|
95
|
-
*/
|
|
96
|
-
DialogConfirmComponent.prototype.ds;
|
|
97
|
-
}
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL01pY2hhbC9FdXJvc2F0L25pbC9wcm9qZWN0cy9idXR0b25zL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2RpYWxvZy1jb25maXJtL2RpYWxvZy1jb25maXJtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDdEQsT0FBTyxFQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzNFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQXlCLHlCQUF5QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUWpGLE1BQU0sT0FBTyxzQkFBc0I7Ozs7OztJQU8vQixZQUNXLFNBQStDLEVBQzlDLFFBQXFCLEVBQ3JCLEVBQW1CO1FBRnBCLGNBQVMsR0FBVCxTQUFTLENBQXNDO1FBQzlDLGFBQVEsR0FBUixRQUFRLENBQWE7UUFDckIsT0FBRSxHQUFGLEVBQUUsQ0FBaUI7UUFSckIsV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRzlELGtCQUFhLEdBQUcsS0FBSyxDQUFDOztjQU9aLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRTtRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDNUIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ3hCLENBQUM7Ozs7SUFFRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxTQUFTOzs7O1FBQUMsQ0FBQyxRQUErQixFQUFFLEVBQUU7WUFDM0UsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7O2tCQUNyQixNQUFNLEdBQUcsSUFBSSxpQkFBaUIsRUFBRTtZQUN0QyxNQUFNLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUN2QixJQUFJLFFBQVEsQ0FBQyxJQUFJLEtBQUsseUJBQXlCLENBQUMsT0FBTyxFQUFFO2dCQUNyRCxNQUFNLENBQUMsVUFBVSxHQUFHLG9CQUFvQixDQUFDLE9BQU8sQ0FBQztnQkFDakQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUN0QjtpQkFBTTtnQkFDSCxNQUFNLENBQUMsVUFBVSxHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQzthQUNuRDtZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDOztrQkFFN0MsTUFBTSxHQUFpQjtnQkFDekIsVUFBVSxFQUFFLElBQUk7Z0JBQ2hCLGNBQWMsRUFBRSxRQUFRO2FBQzNCO1lBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakMsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7WUExQ0osU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLGtwQkFBOEM7O2FBRWpEOzs7O1lBWk8sWUFBWTtZQUNaLFdBQVc7WUFFWCxlQUFlOzs7cUJBWWxCLE1BQU07Ozs7SUFBUCx3Q0FBOEQ7O0lBQzlELHlDQUF1Qjs7SUFDdkIscUNBQW1COztJQUNuQiwrQ0FBc0I7O0lBR2xCLDJDQUFzRDs7Ozs7SUFDdEQsMENBQTZCOzs7OztJQUM3QixvQ0FBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge01hdERpYWxvZ1JlZn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHtNYXRTbmFja0JhciwgTWF0U25hY2tCYXJDb25maWd9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XHJcbmltcG9ydCB7RXNTbmFja0JhclBhbmVsQ2xhc3N9IGZyb20gJ0BldXJvc2F0L3NuYWNrYmFyJztcclxuaW1wb3J0IHtFc0RpYWxvZ1NlcnZpY2V9IGZyb20gJ0BldXJvc2F0L2RpYWxvZyc7XHJcbmltcG9ydCB7IERpYWxvZ1Jlc3VsdCB9IGZyb20gJy4uL2RpYWxvZy1yZXN1bHQnO1xyXG5pbXBvcnQgeyBFc0Zvcm1SZXNwb25zZU1lc3NhZ2UsIEVzRm9ybVJlc3BvbnNlTWVzc2FnZVR5cGUgfSBmcm9tICdAZXVyb3NhdC9mb3JtJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnZGlhbG9nLWNvbmZpcm0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RpYWxvZy1jb25maXJtLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2RpYWxvZy1jb25maXJtLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIERpYWxvZ0NvbmZpcm1Db21wb25lbnQge1xyXG5cclxuICAgIEBPdXRwdXQoKSBzdWJtaXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgICBwdWJsaWMgbWVzc2FnZTogc3RyaW5nO1xyXG4gICAgcHVibGljIHVybDogc3RyaW5nO1xyXG4gICAgYWN0aXZlUmVxdWVzdCA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxEaWFsb2dDb25maXJtQ29tcG9uZW50PixcclxuICAgICAgICBwcml2YXRlIHNuYWNrQmFyOiBNYXRTbmFja0JhcixcclxuICAgICAgICBwcml2YXRlIGRzOiBFc0RpYWxvZ1NlcnZpY2VcclxuICAgICkge1xyXG4gICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmRzLmdldERhdGEoKTtcclxuICAgICAgICB0aGlzLm1lc3NhZ2UgPSBkYXRhLm1lc3NhZ2U7XHJcbiAgICAgICAgdGhpcy51cmwgPSBkYXRhLnVybDtcclxuICAgIH1cclxuXHJcbiAgICBjb25maXJtKCkge1xyXG4gICAgICAgIHRoaXMuYWN0aXZlUmVxdWVzdCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5kcy5odHRwUG9zdCh0aGlzLnVybCwgbnVsbCkuc3Vic2NyaWJlKChyZXNwb25zZTogRXNGb3JtUmVzcG9uc2VNZXNzYWdlKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlUmVxdWVzdCA9IGZhbHNlO1xyXG4gICAgICAgICAgICBjb25zdCBjb25maWcgPSBuZXcgTWF0U25hY2tCYXJDb25maWcoKTtcclxuICAgICAgICAgICAgY29uZmlnLmR1cmF0aW9uID0gMjAwMDtcclxuICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnR5cGUgPT09IEVzRm9ybVJlc3BvbnNlTWVzc2FnZVR5cGUuVFlQRV9PSykge1xyXG4gICAgICAgICAgICAgICAgY29uZmlnLnBhbmVsQ2xhc3MgPSBFc1NuYWNrQmFyUGFuZWxDbGFzcy5TVUNDRVNTO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJtaXQuZW1pdCgpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgY29uZmlnLnBhbmVsQ2xhc3MgPSBFc1NuYWNrQmFyUGFuZWxDbGFzcy5EQU5HRVI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKHJlc3BvbnNlLm1lc3NhZ2UsIG51bGwsIGNvbmZpZyk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCByZXN1bHQ6IERpYWxvZ1Jlc3VsdCA9IHtcclxuICAgICAgICAgICAgICAgIGNsaWNrZWRZZXM6IHRydWUsXHJcbiAgICAgICAgICAgICAgICBzZXJ2ZXJSZXNwb25zZTogcmVzcG9uc2VcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UocmVzdWx0KTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbn1cclxuIl19
|
|
1
|
+
import { Component, EventEmitter, Output } from '@angular/core';
|
|
2
|
+
import { MatDialogRef } from '@angular/material/dialog';
|
|
3
|
+
import { MatSnackBar, MatSnackBarConfig } from '@angular/material/snack-bar';
|
|
4
|
+
import { EsSnackBarPanelClass } from '@eurosat/snackbar';
|
|
5
|
+
import { EsDialogService } from '@eurosat/dialog';
|
|
6
|
+
import { EsFormResponseMessageType } from '@eurosat/form';
|
|
7
|
+
export class DialogConfirmComponent {
|
|
8
|
+
constructor(dialogRef, snackBar, ds) {
|
|
9
|
+
this.dialogRef = dialogRef;
|
|
10
|
+
this.snackBar = snackBar;
|
|
11
|
+
this.ds = ds;
|
|
12
|
+
this.submit = new EventEmitter();
|
|
13
|
+
this.activeRequest = false;
|
|
14
|
+
const data = this.ds.getData();
|
|
15
|
+
this.message = data.message;
|
|
16
|
+
this.url = data.url;
|
|
17
|
+
}
|
|
18
|
+
confirm() {
|
|
19
|
+
this.activeRequest = true;
|
|
20
|
+
this.ds.httpPost(this.url, null).subscribe((response) => {
|
|
21
|
+
this.activeRequest = false;
|
|
22
|
+
const config = new MatSnackBarConfig();
|
|
23
|
+
config.duration = 2000;
|
|
24
|
+
if (response.type === EsFormResponseMessageType.TYPE_OK) {
|
|
25
|
+
config.panelClass = EsSnackBarPanelClass.SUCCESS;
|
|
26
|
+
this.submit.emit();
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
config.panelClass = EsSnackBarPanelClass.DANGER;
|
|
30
|
+
}
|
|
31
|
+
this.snackBar.open(response.message, null, config);
|
|
32
|
+
const result = {
|
|
33
|
+
clickedYes: true,
|
|
34
|
+
serverResponse: response
|
|
35
|
+
};
|
|
36
|
+
this.dialogRef.close(result);
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
DialogConfirmComponent.decorators = [
|
|
41
|
+
{ type: Component, args: [{
|
|
42
|
+
selector: 'dialog-confirm',
|
|
43
|
+
template: "<p>{{message}}</p>\n<div class=\"button-container\">\n <mat-spinner *ngIf=\"activeRequest\" [diameter]=\"36\"></mat-spinner>\n <ng-container *ngIf=\"!activeRequest\">\n <button type=\"button\"\n color=\"accent\"\n mat-raised-button\n (click)=\"confirm()\"> {{'an.common.ano' | translate}}\n </button>\n <button type=\"button\"\n color=\"accent\"\n mat-raised-button\n (click)=\"dialogRef.close({clickedYes: false})\">{{'an.common.ne' | translate}}\n </button>\n </ng-container>\n</div>\n",
|
|
44
|
+
styles: ["button:not(:last-child){margin-right:20px}.button-container{min-height:36px;min-width:196px;position:relative;text-align:center}.button-container mat-spinner{position:absolute!important;left:calc(50% - 18px);top:calc(50% - 18px)}"]
|
|
45
|
+
},] }
|
|
46
|
+
];
|
|
47
|
+
/** @nocollapse */
|
|
48
|
+
DialogConfirmComponent.ctorParameters = () => [
|
|
49
|
+
{ type: MatDialogRef },
|
|
50
|
+
{ type: MatSnackBar },
|
|
51
|
+
{ type: EsDialogService }
|
|
52
|
+
];
|
|
53
|
+
DialogConfirmComponent.propDecorators = {
|
|
54
|
+
submit: [{ type: Output }]
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnV0dG9ucy9zcmMvbGliL2NvbXBvbmVudHMvZGlhbG9nLWNvbmZpcm0vZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDdEQsT0FBTyxFQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzNFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQXlCLHlCQUF5QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUWpGLE1BQU0sT0FBTyxzQkFBc0I7SUFPL0IsWUFDVyxTQUErQyxFQUM5QyxRQUFxQixFQUNyQixFQUFtQjtRQUZwQixjQUFTLEdBQVQsU0FBUyxDQUFzQztRQUM5QyxhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLE9BQUUsR0FBRixFQUFFLENBQWlCO1FBUnJCLFdBQU0sR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUc5RCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQU9sQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM1QixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDeEIsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQStCLEVBQUUsRUFBRTtZQUMzRSxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztZQUMzQixNQUFNLE1BQU0sR0FBRyxJQUFJLGlCQUFpQixFQUFFLENBQUM7WUFDdkMsTUFBTSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDdkIsSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLHlCQUF5QixDQUFDLE9BQU8sRUFBRTtnQkFDckQsTUFBTSxDQUFDLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQyxPQUFPLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDdEI7aUJBQU07Z0JBQ0gsTUFBTSxDQUFDLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7YUFDbkQ7WUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztZQUVuRCxNQUFNLE1BQU0sR0FBaUI7Z0JBQ3pCLFVBQVUsRUFBRSxJQUFJO2dCQUNoQixjQUFjLEVBQUUsUUFBUTthQUMzQixDQUFDO1lBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzs7WUExQ0osU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLGtuQkFBOEM7O2FBRWpEOzs7O1lBWk8sWUFBWTtZQUNaLFdBQVc7WUFFWCxlQUFlOzs7cUJBWWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXREaWFsb2dSZWZ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge01hdFNuYWNrQmFyLCBNYXRTbmFja0JhckNvbmZpZ30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7RXNTbmFja0JhclBhbmVsQ2xhc3N9IGZyb20gJ0BldXJvc2F0L3NuYWNrYmFyJztcbmltcG9ydCB7RXNEaWFsb2dTZXJ2aWNlfSBmcm9tICdAZXVyb3NhdC9kaWFsb2cnO1xuaW1wb3J0IHsgRGlhbG9nUmVzdWx0IH0gZnJvbSAnLi4vZGlhbG9nLXJlc3VsdCc7XG5pbXBvcnQgeyBFc0Zvcm1SZXNwb25zZU1lc3NhZ2UsIEVzRm9ybVJlc3BvbnNlTWVzc2FnZVR5cGUgfSBmcm9tICdAZXVyb3NhdC9mb3JtJztcblxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RpYWxvZy1jb25maXJtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RpYWxvZy1jb25maXJtLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRGlhbG9nQ29uZmlybUNvbXBvbmVudCB7XG5cbiAgICBAT3V0cHV0KCkgc3VibWl0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIHB1YmxpYyBtZXNzYWdlOiBzdHJpbmc7XG4gICAgcHVibGljIHVybDogc3RyaW5nO1xuICAgIGFjdGl2ZVJlcXVlc3QgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RGlhbG9nQ29uZmlybUNvbXBvbmVudD4sXG4gICAgICAgIHByaXZhdGUgc25hY2tCYXI6IE1hdFNuYWNrQmFyLFxuICAgICAgICBwcml2YXRlIGRzOiBFc0RpYWxvZ1NlcnZpY2VcbiAgICApIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZHMuZ2V0RGF0YSgpO1xuICAgICAgICB0aGlzLm1lc3NhZ2UgPSBkYXRhLm1lc3NhZ2U7XG4gICAgICAgIHRoaXMudXJsID0gZGF0YS51cmw7XG4gICAgfVxuXG4gICAgY29uZmlybSgpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVSZXF1ZXN0ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5kcy5odHRwUG9zdCh0aGlzLnVybCwgbnVsbCkuc3Vic2NyaWJlKChyZXNwb25zZTogRXNGb3JtUmVzcG9uc2VNZXNzYWdlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVJlcXVlc3QgPSBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IG5ldyBNYXRTbmFja0JhckNvbmZpZygpO1xuICAgICAgICAgICAgY29uZmlnLmR1cmF0aW9uID0gMjAwMDtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZS50eXBlID09PSBFc0Zvcm1SZXNwb25zZU1lc3NhZ2VUeXBlLlRZUEVfT0spIHtcbiAgICAgICAgICAgICAgICBjb25maWcucGFuZWxDbGFzcyA9IEVzU25hY2tCYXJQYW5lbENsYXNzLlNVQ0NFU1M7XG4gICAgICAgICAgICAgICAgdGhpcy5zdWJtaXQuZW1pdCgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25maWcucGFuZWxDbGFzcyA9IEVzU25hY2tCYXJQYW5lbENsYXNzLkRBTkdFUjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuc25hY2tCYXIub3BlbihyZXNwb25zZS5tZXNzYWdlLCBudWxsLCBjb25maWcpO1xuXG4gICAgICAgICAgICBjb25zdCByZXN1bHQ6IERpYWxvZ1Jlc3VsdCA9IHtcbiAgICAgICAgICAgICAgICBjbGlja2VkWWVzOiB0cnVlLFxuICAgICAgICAgICAgICAgIHNlcnZlclJlc3BvbnNlOiByZXNwb25zZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHJlc3VsdCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxufVxuIl19
|