@eurosat/buttons 10.0.0 → 14.0.1
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/esm2020/eurosat-buttons.mjs +5 -0
- package/esm2020/lib/components/dialog-confirm/dialog-confirm.component.mjs +56 -0
- package/esm2020/lib/components/dialog-form/dialog-form.component.mjs +36 -0
- package/esm2020/lib/components/dialog-result.mjs +2 -0
- package/esm2020/lib/es-buttons.component.mjs +200 -0
- package/esm2020/lib/es-buttons.module.mjs +59 -0
- package/esm2020/lib/model/es-button-action.mjs +13 -0
- package/esm2020/lib/model/es-button-server-response.mjs +2 -0
- package/esm2020/lib/model/es-button.interface.mjs +2 -0
- package/esm2020/public_api.mjs +9 -0
- package/fesm2015/eurosat-buttons.mjs +342 -0
- package/fesm2015/eurosat-buttons.mjs.map +1 -0
- package/fesm2020/eurosat-buttons.mjs +342 -0
- package/fesm2020/eurosat-buttons.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/dialog-confirm/dialog-confirm.component.d.ts +18 -15
- package/lib/components/dialog-form/dialog-form.component.d.ts +18 -15
- package/lib/components/dialog-result.d.ts +4 -4
- package/lib/es-buttons.component.d.ts +42 -39
- package/lib/es-buttons.module.d.ts +18 -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 +26 -14
- package/public_api.d.ts +5 -5
- package/bundles/eurosat-buttons.umd.js +0 -592
- package/bundles/eurosat-buttons.umd.js.map +0 -1
- package/bundles/eurosat-buttons.umd.min.js +0 -2
- package/bundles/eurosat-buttons.umd.min.js.map +0 -1
- package/esm2015/eurosat-buttons.js +0 -12
- package/esm2015/lib/components/dialog-confirm/dialog-confirm.component.js +0 -98
- package/esm2015/lib/components/dialog-form/dialog-form.component.js +0 -68
- package/esm2015/lib/components/dialog-result.js +0 -16
- package/esm2015/lib/es-buttons.component.js +0 -327
- package/esm2015/lib/es-buttons.module.js +0 -46
- package/esm2015/lib/model/es-button-action.js +0 -42
- package/esm2015/lib/model/es-button-server-response.js +0 -16
- package/esm2015/lib/model/es-button.interface.js +0 -34
- package/esm2015/public_api.js +0 -14
- package/eurosat-buttons.d.ts +0 -6
- package/eurosat-buttons.metadata.json +0 -1
- package/fesm2015/eurosat-buttons.js +0 -627
- package/fesm2015/eurosat-buttons.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"eurosat-buttons.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/lib/model/es-button.interface.ts","../../../projects/buttons/src/lib/model/es-button-server-response.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","import {EsButtonAction} from './es-button-action';\r\n\r\nexport interface EsButton {\r\n key?: any;\r\n title: string;\r\n icon: string;\r\n url?: string;\r\n action?: EsButtonAction;\r\n message?: string;\r\n tooltip?: string;\r\n submenu?: EsButton[];\r\n color?: string;\r\n themeColor?: 'primary' | 'accent' | 'warn' | 'disabled-icon' | '';\r\n disabled?: boolean;\r\n}\r\n","import { EsButton } from './es-button.interface';\r\n\r\nexport interface EsButtonServerResponse {\r\n button: EsButton;\r\n response: any;\r\n}\r\n"],"names":[],"mappings":"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"}
|