@quadrel-enterprise-ui/framework 20.8.0 → 20.9.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.
@@ -0,0 +1,42 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import * as i0 from '@angular/core';
3
+ import { inject, Component, NgModule } from '@angular/core';
4
+ import * as i3 from '@ngx-translate/core';
5
+ import { TranslateModule } from '@ngx-translate/core';
6
+ import { QdButtonComponent, QdButtonGhostDirective, QdTextSectionComponent, QdTextSectionParagraphComponent, QdDialogActionComponent, QdDialogComponent, QdButtonModule, QdTextSectionModule, QdDialogModule } from './quadrel-enterprise-ui-framework.mjs';
7
+ import { DialogRef, DIALOG_DATA } from '@angular/cdk/dialog';
8
+
9
+ class QdDialogConfirmComponent {
10
+ dialogRef = inject(DialogRef);
11
+ data = inject(DIALOG_DATA);
12
+ config = this.data;
13
+ testId = this.data?.testId ?? 'dialog-confirm';
14
+ close() {
15
+ this.dialogRef.close(false);
16
+ }
17
+ confirm() {
18
+ this.dialogRef.close(true);
19
+ }
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdDialogConfirmComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: QdDialogConfirmComponent, isStandalone: false, selector: "qd-dialog-confirm", ngImport: i0, template: "<qd-dialog>\n <qd-text-section>\n <qd-text-section-paragraph>\n {{ config.message.i18n | translate }}\n </qd-text-section-paragraph>\n </qd-text-section>\n\n <qd-dialog-action>\n <button qdButton qdButtonGhost color=\"secondary\" (click)=\"close()\" [data-test-id]=\"testId + '-close'\">\n {{ config.cancel.i18n | translate }}\n </button>\n\n <button qdButton color=\"error\" (click)=\"confirm()\" [data-test-id]=\"testId + '-proceed'\">\n {{ config.confirm.i18n | translate }}\n </button>\n </qd-dialog-action>\n</qd-dialog>\n", dependencies: [{ kind: "component", type: QdButtonComponent, selector: "button[qdButton], a[qdButton], button[qd-button]", inputs: ["disabled", "color", "icon", "data-test-id", "additionalInfo"] }, { kind: "directive", type: QdButtonGhostDirective, selector: "button[qdButtonGhost], a[qdButtonGhost]" }, { kind: "component", type: QdTextSectionComponent, selector: "qd-text-section" }, { kind: "component", type: QdTextSectionParagraphComponent, selector: "qd-text-section-paragraph" }, { kind: "component", type: QdDialogActionComponent, selector: "qd-dialog-action" }, { kind: "component", type: QdDialogComponent, selector: "qd-dialog" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
22
+ }
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdDialogConfirmComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'qd-dialog-confirm', standalone: false, template: "<qd-dialog>\n <qd-text-section>\n <qd-text-section-paragraph>\n {{ config.message.i18n | translate }}\n </qd-text-section-paragraph>\n </qd-text-section>\n\n <qd-dialog-action>\n <button qdButton qdButtonGhost color=\"secondary\" (click)=\"close()\" [data-test-id]=\"testId + '-close'\">\n {{ config.cancel.i18n | translate }}\n </button>\n\n <button qdButton color=\"error\" (click)=\"confirm()\" [data-test-id]=\"testId + '-proceed'\">\n {{ config.confirm.i18n | translate }}\n </button>\n </qd-dialog-action>\n</qd-dialog>\n" }]
26
+ }] });
27
+
28
+ class QdDialogConfirmModule {
29
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdDialogConfirmModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
30
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: QdDialogConfirmModule, declarations: [QdDialogConfirmComponent], imports: [CommonModule, TranslateModule, QdButtonModule, QdTextSectionModule, QdDialogModule] });
31
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdDialogConfirmModule, imports: [CommonModule, TranslateModule, QdButtonModule, QdTextSectionModule, QdDialogModule] });
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdDialogConfirmModule, decorators: [{
34
+ type: NgModule,
35
+ args: [{
36
+ imports: [CommonModule, TranslateModule, QdButtonModule, QdTextSectionModule, QdDialogModule],
37
+ declarations: [QdDialogConfirmComponent]
38
+ }]
39
+ }] });
40
+
41
+ export { QdDialogConfirmComponent, QdDialogConfirmModule };
42
+ //# sourceMappingURL=quadrel-enterprise-ui-framework-dialog-confirm.module-BQLiEzSo.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quadrel-enterprise-ui-framework-dialog-confirm.module-BQLiEzSo.mjs","sources":["../../../libs/qd-ui/src/lib/dialog/confirm/dialog-confirm.component.ts","../../../libs/qd-ui/src/lib/dialog/confirm/dialog-confirm.component.html","../../../libs/qd-ui/src/lib/dialog/confirm/dialog-confirm.module.ts"],"sourcesContent":["import { Component, inject } from '@angular/core';\nimport { DIALOG_DATA, DialogRef } from '@angular/cdk/dialog';\n\nimport { QdDialogConfirmConfig } from '../models/dialog-confirm.model';\n\n@Component({\n selector: 'qd-dialog-confirm',\n templateUrl: './dialog-confirm.component.html',\n standalone: false\n})\nexport class QdDialogConfirmComponent {\n private dialogRef = inject<DialogRef<boolean>>(DialogRef);\n private data = inject(DIALOG_DATA);\n\n config: QdDialogConfirmConfig = this.data;\n testId: string = this.data?.testId ?? 'dialog-confirm';\n\n close(): void {\n this.dialogRef.close(false);\n }\n\n confirm(): void {\n this.dialogRef.close(true);\n }\n}\n","<qd-dialog>\n <qd-text-section>\n <qd-text-section-paragraph>\n {{ config.message.i18n | translate }}\n </qd-text-section-paragraph>\n </qd-text-section>\n\n <qd-dialog-action>\n <button qdButton qdButtonGhost color=\"secondary\" (click)=\"close()\" [data-test-id]=\"testId + '-close'\">\n {{ config.cancel.i18n | translate }}\n </button>\n\n <button qdButton color=\"error\" (click)=\"confirm()\" [data-test-id]=\"testId + '-proceed'\">\n {{ config.confirm.i18n | translate }}\n </button>\n </qd-dialog-action>\n</qd-dialog>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TranslateModule } from '@ngx-translate/core';\n\nimport { QdButtonModule } from '../../button/button.module';\nimport { QdTextSectionModule } from '../../text-section/text-section.module';\nimport { QdDialogModule } from '../dialog.module';\nimport { QdDialogConfirmComponent } from './dialog-confirm.component';\n\nexport { QdDialogConfirmComponent } from './dialog-confirm.component';\n\n@NgModule({\n imports: [CommonModule, TranslateModule, QdButtonModule, QdTextSectionModule, QdDialogModule],\n declarations: [QdDialogConfirmComponent]\n})\nexport class QdDialogConfirmModule {}\n"],"names":["i1.QdButtonComponent","i2.QdButtonGhostDirective","i3.QdTextSectionComponent","i4.QdTextSectionParagraphComponent","i5.QdDialogActionComponent","i6.QdDialogComponent","i7"],"mappings":";;;;;;;;MAUa,wBAAwB,CAAA;AAC3B,IAAA,SAAS,GAAG,MAAM,CAAqB,SAAS,CAAC;AACjD,IAAA,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC;AAElC,IAAA,MAAM,GAA0B,IAAI,CAAC,IAAI;IACzC,MAAM,GAAW,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,gBAAgB;IAEtD,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;IAC7B;IAEA,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;IAC5B;wGAbW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,8ECVrC,sjBAiBA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,iBAAA,EAAA,QAAA,EAAA,kDAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,cAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,QAAA,EAAA,yCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,+BAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,CAAA;;4FDPa,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBALpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,cAEjB,KAAK,EAAA,QAAA,EAAA,sjBAAA,EAAA;;;MEON,qBAAqB,CAAA;wGAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;yGAArB,qBAAqB,EAAA,YAAA,EAAA,CAFjB,wBAAwB,CAAA,EAAA,OAAA,EAAA,CAD7B,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,mBAAmB,EAAE,cAAc,CAAA,EAAA,CAAA;yGAGjF,qBAAqB,EAAA,OAAA,EAAA,CAHtB,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,mBAAmB,EAAE,cAAc,CAAA,EAAA,CAAA;;4FAGjF,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,mBAAmB,EAAE,cAAc,CAAC;oBAC7F,YAAY,EAAE,CAAC,wBAAwB;AACxC,iBAAA;;;;;"}
@@ -1146,18 +1146,43 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
1146
1146
  }]
1147
1147
  }] });
1148
1148
 
1149
+ const GENERIC_DEFAULTS = {
1150
+ title: { i18n: 'i18n.qd.dialog.confirm.title' },
1151
+ confirm: { i18n: 'i18n.qd.dialog.confirm.proceed' },
1152
+ cancel: { i18n: 'i18n.qd.dialog.action.cancel' }
1153
+ };
1154
+ const CANCEL_DEFAULTS = {
1155
+ title: { i18n: 'i18n.qd.page.cancel.confirmation.dialog.title' },
1156
+ message: { i18n: 'i18n.qd.page.cancel.confirmation.dialog.message' },
1157
+ confirm: { i18n: 'i18n.qd.page.cancel.confirmation.dialog.proceed' },
1158
+ cancel: { i18n: 'i18n.qd.page.cancel.confirmation.dialog.close' }
1159
+ };
1149
1160
  class QdConfirmationDialogOpenerService {
1150
1161
  dialog = inject(Dialog);
1151
- showCancelConfirmation(config) {
1152
- return from(Promise.resolve().then(function () { return cancelDialog_component; }).then(m => m.QdCancelDialogComponent)).pipe(switchMap(component => {
1162
+ showConfirmDialog(config, testId = 'dialog-confirm') {
1163
+ const resolved = {
1164
+ title: config.title ?? GENERIC_DEFAULTS.title,
1165
+ message: config.message,
1166
+ confirm: config.confirm ?? GENERIC_DEFAULTS.confirm,
1167
+ cancel: config.cancel ?? GENERIC_DEFAULTS.cancel
1168
+ };
1169
+ return from(import('./quadrel-enterprise-ui-framework-dialog-confirm.module-BQLiEzSo.mjs').then(m => m.QdDialogConfirmComponent)).pipe(switchMap(component => {
1153
1170
  const dialogRef = this.open(component, {
1154
- title: { i18n: 'i18n.qd.page.cancel.confirmation.dialog.title' },
1171
+ title: resolved.title,
1155
1172
  dialogSize: QdDialogSize.Small,
1156
- data: config
1173
+ data: { ...resolved, testId }
1157
1174
  });
1158
1175
  return dialogRef.closed.pipe(map$1(result => !!result));
1159
1176
  }));
1160
1177
  }
1178
+ showDiscardConfirmDialog(message, testId = 'cancel-confirmation') {
1179
+ return this.showConfirmDialog({
1180
+ title: CANCEL_DEFAULTS.title,
1181
+ message: message ?? CANCEL_DEFAULTS.message,
1182
+ confirm: CANCEL_DEFAULTS.confirm,
1183
+ cancel: CANCEL_DEFAULTS.cancel
1184
+ }, testId);
1185
+ }
1161
1186
  open(component, config) {
1162
1187
  config.panelClass = 'qd-custom-panel';
1163
1188
  config.width = config.dialogSize || QdDialogSize.Default;
@@ -1470,7 +1495,7 @@ class QdDialogComponent {
1470
1495
  }
1471
1496
  confirmAndClose() {
1472
1497
  this.dialog
1473
- .showCancelConfirmation(this.config)
1498
+ .showDiscardConfirmDialog(this.config.cancel?.confirmationMessage, 'dialog-cancel-confirmation')
1474
1499
  .pipe(take(1))
1475
1500
  .subscribe(confirmed => {
1476
1501
  if (!confirmed)
@@ -18161,37 +18186,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
18161
18186
  }]
18162
18187
  }], ctorParameters: () => [] });
18163
18188
 
18164
- class QdCancelDialogComponent {
18165
- dialogRef = inject(DialogRef);
18166
- i18n;
18167
- handler;
18168
- ngOnInit() {
18169
- this.i18n =
18170
- this.dialogRef.config.data?.cancel?.confirmationMessage?.i18n ??
18171
- 'i18n.qd.page.cancel.confirmation.dialog.message';
18172
- this.handler = this.dialogRef.config.data?.cancel?.handler;
18173
- }
18174
- close() {
18175
- this.dialogRef.close(false);
18176
- }
18177
- confirm() {
18178
- if (this.handler)
18179
- this.handler();
18180
- this.dialogRef.close(true);
18181
- }
18182
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdCancelDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18183
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: QdCancelDialogComponent, isStandalone: false, selector: "qd-cancel-dialog", ngImport: i0, template: "<qd-dialog>\n <qd-text-section>\n <qd-text-section-paragraph>\n {{ i18n | translate }}\n </qd-text-section-paragraph>\n </qd-text-section>\n\n <qd-dialog-action>\n <button\n qdButton\n qdButtonGhost\n color=\"secondary\"\n (click)=\"close()\"\n data-test-id=\"dialog-cancel-confirmation-dialog-close\"\n >\n {{ \"i18n.qd.page.cancel.confirmation.dialog.close\" | translate }}\n </button>\n\n <button qdButton color=\"error\" (click)=\"confirm()\" data-test-id=\"dialog-cancel-confirmation-dialog-proceed\">\n {{ \"i18n.qd.page.cancel.confirmation.dialog.proceed\" | translate }}\n </button>\n </qd-dialog-action>\n</qd-dialog>\n", dependencies: [{ kind: "component", type: QdButtonComponent, selector: "button[qdButton], a[qdButton], button[qd-button]", inputs: ["disabled", "color", "icon", "data-test-id", "additionalInfo"] }, { kind: "directive", type: QdButtonGhostDirective, selector: "button[qdButtonGhost], a[qdButtonGhost]" }, { kind: "component", type: QdTextSectionComponent, selector: "qd-text-section" }, { kind: "component", type: QdTextSectionParagraphComponent, selector: "qd-text-section-paragraph" }, { kind: "component", type: QdDialogActionComponent, selector: "qd-dialog-action" }, { kind: "component", type: QdDialogComponent, selector: "qd-dialog" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
18184
- }
18185
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdCancelDialogComponent, decorators: [{
18186
- type: Component,
18187
- args: [{ selector: 'qd-cancel-dialog', standalone: false, template: "<qd-dialog>\n <qd-text-section>\n <qd-text-section-paragraph>\n {{ i18n | translate }}\n </qd-text-section-paragraph>\n </qd-text-section>\n\n <qd-dialog-action>\n <button\n qdButton\n qdButtonGhost\n color=\"secondary\"\n (click)=\"close()\"\n data-test-id=\"dialog-cancel-confirmation-dialog-close\"\n >\n {{ \"i18n.qd.page.cancel.confirmation.dialog.close\" | translate }}\n </button>\n\n <button qdButton color=\"error\" (click)=\"confirm()\" data-test-id=\"dialog-cancel-confirmation-dialog-proceed\">\n {{ \"i18n.qd.page.cancel.confirmation.dialog.proceed\" | translate }}\n </button>\n </qd-dialog-action>\n</qd-dialog>\n" }]
18188
- }] });
18189
-
18190
- var cancelDialog_component = /*#__PURE__*/Object.freeze({
18191
- __proto__: null,
18192
- QdCancelDialogComponent: QdCancelDialogComponent
18193
- });
18194
-
18195
18189
  class QdDialogModule {
18196
18190
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
18197
18191
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: QdDialogModule, declarations: [QdDialogActionComponent,
@@ -18203,8 +18197,7 @@ class QdDialogModule {
18203
18197
  QdDialogConfirmationSuccessDirective,
18204
18198
  QdDialogRecordStepperComponent,
18205
18199
  QdPageDialogWithBreadcrumbsComponent,
18206
- QdPendingChangesGuardDirective,
18207
- QdCancelDialogComponent], imports: [CommonModule,
18200
+ QdPendingChangesGuardDirective], imports: [CommonModule,
18208
18201
  TranslateModule,
18209
18202
  RouterModule,
18210
18203
  DialogModule,
@@ -18268,8 +18261,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
18268
18261
  QdDialogConfirmationSuccessDirective,
18269
18262
  QdDialogRecordStepperComponent,
18270
18263
  QdPageDialogWithBreadcrumbsComponent,
18271
- QdPendingChangesGuardDirective,
18272
- QdCancelDialogComponent
18264
+ QdPendingChangesGuardDirective
18273
18265
  ],
18274
18266
  exports: [
18275
18267
  QdDialogActionComponent,
@@ -24270,6 +24262,7 @@ class QdTableComponent {
24270
24262
  fillingWidthService = inject(QdTableFillingWidthService);
24271
24263
  breakpointService = inject(QdBreakpointService);
24272
24264
  resolverService = inject(QdTableResolverService);
24265
+ confirmationDialogService = inject(QdConfirmationDialogOpenerService);
24273
24266
  /**
24274
24267
  * Configuration of the table. The generic type specifies the column definition. <br />
24275
24268
  *
@@ -24472,6 +24465,17 @@ class QdTableComponent {
24472
24465
  if (action.highlightOnRevisit) {
24473
24466
  this.tableStoreService.setLastVisitedRow(resolveRowIdentifier(recentAction.rowData, recentAction.index, this.config.trackRowBy));
24474
24467
  }
24468
+ if (action.confirmationMessage) {
24469
+ this.confirmationDialogService
24470
+ .showConfirmDialog({ message: action.confirmationMessage }, this.testId + '-confirmation')
24471
+ .pipe(filter(confirmed => confirmed))
24472
+ .subscribe(() => {
24473
+ const result = action.handler(recentAction);
24474
+ if (action.refresh?.isEnabled)
24475
+ this.processSecondaryActionRefresh(result, action.refresh);
24476
+ });
24477
+ return;
24478
+ }
24475
24479
  const result = action.handler(recentAction);
24476
24480
  if (action.refresh?.isEnabled)
24477
24481
  this.processSecondaryActionRefresh(result, action.refresh);
@@ -26465,30 +26469,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
26465
26469
  }]
26466
26470
  }] });
26467
26471
 
26468
- class QdPageCancelConfirmationDialogComponent {
26469
- dialogRef = inject(DialogRef);
26470
- i18n;
26471
- handler;
26472
- ngOnInit() {
26473
- this.i18n =
26474
- this.dialogRef.config.data.cancel.confirmationMessage?.i18n ?? 'i18n.qd.page.cancel.confirmation.dialog.message';
26475
- this.handler = this.dialogRef.config.data.cancel.handler;
26476
- }
26477
- close() {
26478
- this.dialogRef.close(false);
26479
- }
26480
- confirm() {
26481
- this.dialogRef.close(true);
26482
- this.handler();
26483
- }
26484
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdPageCancelConfirmationDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
26485
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: QdPageCancelConfirmationDialogComponent, isStandalone: false, selector: "qd-page-cancel-confirmation-dialog", ngImport: i0, template: "<qd-dialog>\n <qd-text-section>\n <qd-text-section-paragraph>\n {{ i18n | translate }}\n </qd-text-section-paragraph>\n </qd-text-section>\n\n <qd-dialog-action>\n <button\n qdButton\n qdButtonGhost\n color=\"secondary\"\n (click)=\"close()\"\n data-test-id=\"page-cancel-confirmation-dialog-close\"\n >\n {{ \"i18n.qd.page.cancel.confirmation.dialog.close\" | translate }}\n </button>\n\n <button qdButton color=\"error\" (click)=\"confirm()\" data-test-id=\"page-cancel-confirmation-dialog-proceed\">\n {{ \"i18n.qd.page.cancel.confirmation.dialog.proceed\" | translate }}\n </button>\n </qd-dialog-action>\n</qd-dialog>\n", styles: [""], dependencies: [{ kind: "component", type: QdButtonComponent, selector: "button[qdButton], a[qdButton], button[qd-button]", inputs: ["disabled", "color", "icon", "data-test-id", "additionalInfo"] }, { kind: "directive", type: QdButtonGhostDirective, selector: "button[qdButtonGhost], a[qdButtonGhost]" }, { kind: "component", type: QdDialogActionComponent, selector: "qd-dialog-action" }, { kind: "component", type: QdDialogComponent, selector: "qd-dialog" }, { kind: "component", type: QdTextSectionComponent, selector: "qd-text-section" }, { kind: "component", type: QdTextSectionParagraphComponent, selector: "qd-text-section-paragraph" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
26486
- }
26487
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: QdPageCancelConfirmationDialogComponent, decorators: [{
26488
- type: Component,
26489
- args: [{ selector: 'qd-page-cancel-confirmation-dialog', standalone: false, template: "<qd-dialog>\n <qd-text-section>\n <qd-text-section-paragraph>\n {{ i18n | translate }}\n </qd-text-section-paragraph>\n </qd-text-section>\n\n <qd-dialog-action>\n <button\n qdButton\n qdButtonGhost\n color=\"secondary\"\n (click)=\"close()\"\n data-test-id=\"page-cancel-confirmation-dialog-close\"\n >\n {{ \"i18n.qd.page.cancel.confirmation.dialog.close\" | translate }}\n </button>\n\n <button qdButton color=\"error\" (click)=\"confirm()\" data-test-id=\"page-cancel-confirmation-dialog-proceed\">\n {{ \"i18n.qd.page.cancel.confirmation.dialog.proceed\" | translate }}\n </button>\n </qd-dialog-action>\n</qd-dialog>\n" }]
26490
- }] });
26491
-
26492
26472
  /**
26493
26473
  * The **QdPageControlPanel** is used to display information and functions relevant to a specific business case, which is related to a specific Object Model.
26494
26474
  *
@@ -27360,6 +27340,7 @@ class QdPageObjectHeaderComponent {
27360
27340
  formGroupManagerService = inject(QdFormGroupManagerService, { optional: true });
27361
27341
  dialogComponent = inject(QdDialogComponent, { optional: true });
27362
27342
  dialog = inject(QdDialogService);
27343
+ confirmationDialogService = inject(QdConfirmationDialogOpenerService);
27363
27344
  contextService = inject(QdContextService);
27364
27345
  resolverTriggerService = inject(QdResolverTriggerService);
27365
27346
  pageStoreService = inject(QdPageStoreService);
@@ -27608,15 +27589,13 @@ class QdPageObjectHeaderComponent {
27608
27589
  return { actions };
27609
27590
  }
27610
27591
  openCancelDialog() {
27611
- this.dialog
27612
- .open(QdPageCancelConfirmationDialogComponent, {
27613
- title: { i18n: 'i18n.qd.page.cancel.confirmation.dialog.title' },
27614
- dialogSize: QdDialogSize.Small,
27615
- data: this.config.pageTypeConfig
27616
- })
27617
- .closed.pipe(takeUntil(this._destroyed$))
27618
- .subscribe(confirm => {
27619
- if (confirm) {
27592
+ const cancelConfig = this.config.pageTypeConfig?.cancel;
27593
+ this.confirmationDialogService
27594
+ .showDiscardConfirmDialog(cancelConfig?.confirmationMessage, this.testId + '-cancel-confirmation')
27595
+ .pipe(takeUntil(this._destroyed$))
27596
+ .subscribe(confirmed => {
27597
+ if (confirmed) {
27598
+ cancelConfig?.handler?.();
27620
27599
  this.formGroupManagerService.restoreFormGroupsFromSnapshot();
27621
27600
  this.pageStoreService.toggleViewonly(true);
27622
27601
  }
@@ -28687,7 +28666,7 @@ class QdPageNavigationInterceptorService {
28687
28666
  this._bypassInterception = true;
28688
28667
  void this.router.navigateByUrl(this.router.url, { skipLocationChange: true });
28689
28668
  return this.confirmationDialog
28690
- .showCancelConfirmation({ cancel: { confirmationMessage: this._confirmationMessage } })
28669
+ .showDiscardConfirmDialog(this._confirmationMessage, 'page-navigation-confirmation')
28691
28670
  .pipe(map$1(confirmed => ({ confirmed, targetUrl: event.url })), finalize(() => (this._bypassInterception = false)));
28692
28671
  }
28693
28672
  navigateToConfirmedTarget(targetUrl) {
@@ -29164,6 +29143,7 @@ class QdPageComponent {
29164
29143
  bottomOffset$ = inject(QD_SAFE_BOTTOM_OFFSET, { optional: true });
29165
29144
  dialogRef = inject(DialogRef, { optional: true });
29166
29145
  navigationInterceptor = inject(QdPageNavigationInterceptorService);
29146
+ confirmationDialogService = inject(QdConfirmationDialogOpenerService);
29167
29147
  /**
29168
29148
  * This property defines the configuration for the QdPage component, including the page type,
29169
29149
  * title, and specific configurations for each type of page.
@@ -29339,14 +29319,14 @@ class QdPageComponent {
29339
29319
  };
29340
29320
  }
29341
29321
  setupCancelConfirmation() {
29342
- this.dialog
29343
- .open(QdPageCancelConfirmationDialogComponent, {
29344
- title: { i18n: 'i18n.qd.page.cancel.confirmation.dialog.title' },
29345
- dialogSize: QdDialogSize.Small,
29346
- data: this.config.pageTypeConfig
29347
- })
29348
- .closed.pipe(filter$1(result => !!result), takeUntil(this._destroyed$))
29349
- .subscribe(() => this.navigationInterceptor.allowNextNavigation());
29322
+ const cancelConfig = this.config.pageTypeConfig?.cancel;
29323
+ this.confirmationDialogService
29324
+ .showDiscardConfirmDialog(cancelConfig?.confirmationMessage, this.testId + '-cancel-confirmation')
29325
+ .pipe(filter$1(result => result), takeUntil(this._destroyed$))
29326
+ .subscribe(() => {
29327
+ cancelConfig?.handler?.();
29328
+ this.navigationInterceptor.allowNextNavigation();
29329
+ });
29350
29330
  }
29351
29331
  initSubmitValidation() {
29352
29332
  this._cancelSubmitValidation$.next();
@@ -29545,7 +29525,6 @@ class QdPageModule {
29545
29525
  QdConnectFormStateToPageDirective,
29546
29526
  QdPageFooterCustomContentDirective,
29547
29527
  QdContextSelectDialogComponent,
29548
- QdPageCancelConfirmationDialogComponent,
29549
29528
  QdPageInfoBannerComponent], imports: [CommonModule,
29550
29529
  TranslateModule,
29551
29530
  QdButtonModule,
@@ -29630,7 +29609,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
29630
29609
  QdConnectFormStateToPageDirective,
29631
29610
  QdPageFooterCustomContentDirective,
29632
29611
  QdContextSelectDialogComponent,
29633
- QdPageCancelConfirmationDialogComponent,
29634
29612
  QdPageInfoBannerComponent
29635
29613
  ],
29636
29614
  exports: [
@@ -32486,6 +32464,7 @@ class QdQuickEditComponent {
32486
32464
  eventBrokerService = inject(QdEventBrokerService, { optional: true });
32487
32465
  changeDetectorRef = inject(ChangeDetectorRef);
32488
32466
  controlContainer = inject(ControlContainer, { optional: true, self: true });
32467
+ confirmationDialogService = inject(QdConfirmationDialogOpenerService);
32489
32468
  /**
32490
32469
  * Configuration of the QuickEdit. The generic type specifies the column definition. <br />
32491
32470
  *
@@ -32634,6 +32613,16 @@ class QdQuickEditComponent {
32634
32613
  window.setTimeout(() => this.focusFirstControl());
32635
32614
  }
32636
32615
  removeRow(index) {
32616
+ if (this.config.removeConfirmationMessage) {
32617
+ this.confirmationDialogService
32618
+ .showConfirmDialog({ message: this.config.removeConfirmationMessage }, (this.testId ?? 'quick-edit') + '-remove-confirmation')
32619
+ .pipe(filter$1(confirmed => confirmed))
32620
+ .subscribe(() => this.executeRemoveRow(index));
32621
+ return;
32622
+ }
32623
+ this.executeRemoveRow(index);
32624
+ }
32625
+ executeRemoveRow(index) {
32637
32626
  this.redrawOnNextChange();
32638
32627
  if (this.controlContainer) {
32639
32628
  this.controlContainer.control.removeAt(index);