@wavemaker-ai/app-ng-runtime 1.0.0-rc.324 → 1.0.0-rc.328

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.
Files changed (90) hide show
  1. package/build-task/bundles/index.umd.js +1 -1
  2. package/build-task/fesm2022/index.mjs +1 -1
  3. package/build-task/fesm2022/index.mjs.map +1 -1
  4. package/components/base/bundles/index.umd.js +42 -16
  5. package/components/base/fesm2022/index.mjs +42 -16
  6. package/components/base/fesm2022/index.mjs.map +1 -1
  7. package/components/base/index.d.ts +4 -1
  8. package/components/basic/anchor/bundles/index.umd.js +1 -1
  9. package/components/basic/anchor/fesm2022/index.mjs +1 -1
  10. package/components/basic/anchor/fesm2022/index.mjs.map +1 -1
  11. package/components/basic/icon/bundles/index.umd.js +1 -1
  12. package/components/basic/icon/fesm2022/index.mjs +1 -1
  13. package/components/basic/icon/fesm2022/index.mjs.map +1 -1
  14. package/components/basic/search/bundles/index.umd.js +1 -1
  15. package/components/basic/search/fesm2022/index.mjs +1 -1
  16. package/components/basic/search/fesm2022/index.mjs.map +1 -1
  17. package/components/basic/spinner/bundles/index.umd.js +1 -1
  18. package/components/basic/spinner/fesm2022/index.mjs +1 -1
  19. package/components/basic/spinner/fesm2022/index.mjs.map +1 -1
  20. package/components/chart/bundles/index.umd.js +1 -1
  21. package/components/chart/fesm2022/index.mjs +1 -1
  22. package/components/chart/fesm2022/index.mjs.map +1 -1
  23. package/components/containers/accordion/bundles/index.umd.js +6 -1
  24. package/components/containers/accordion/fesm2022/index.mjs +6 -1
  25. package/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  26. package/components/containers/accordion/index.d.ts +2 -0
  27. package/components/containers/panel/bundles/index.umd.js +1 -1
  28. package/components/containers/panel/fesm2022/index.mjs +1 -1
  29. package/components/containers/panel/fesm2022/index.mjs.map +1 -1
  30. package/components/containers/tabs/bundles/index.umd.js +1 -1
  31. package/components/containers/tabs/fesm2022/index.mjs +1 -1
  32. package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  33. package/components/containers/wizard/bundles/index.umd.js +1 -1
  34. package/components/containers/wizard/fesm2022/index.mjs +1 -1
  35. package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  36. package/components/data/card/bundles/index.umd.js +1 -1
  37. package/components/data/card/fesm2022/index.mjs +1 -1
  38. package/components/data/card/fesm2022/index.mjs.map +1 -1
  39. package/components/data/form/bundles/index.umd.js +5 -3
  40. package/components/data/form/fesm2022/index.mjs +5 -3
  41. package/components/data/form/fesm2022/index.mjs.map +1 -1
  42. package/components/data/list/bundles/index.umd.js +1 -1
  43. package/components/data/list/fesm2022/index.mjs +1 -1
  44. package/components/data/list/fesm2022/index.mjs.map +1 -1
  45. package/components/data/table/bundles/index.umd.js +9 -2
  46. package/components/data/table/fesm2022/index.mjs +9 -2
  47. package/components/data/table/fesm2022/index.mjs.map +1 -1
  48. package/components/dialogs/default/bundles/index.umd.js +1 -1
  49. package/components/dialogs/default/fesm2022/index.mjs +1 -1
  50. package/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  51. package/components/input/button/bundles/index.umd.js +1 -1
  52. package/components/input/button/fesm2022/index.mjs +1 -1
  53. package/components/input/button/fesm2022/index.mjs.map +1 -1
  54. package/components/input/checkbox/bundles/index.umd.js +1 -1
  55. package/components/input/checkbox/fesm2022/index.mjs +1 -1
  56. package/components/input/checkbox/fesm2022/index.mjs.map +1 -1
  57. package/components/input/epoch/base-date-time/bundles/index.umd.js +2 -1
  58. package/components/input/epoch/base-date-time/fesm2022/index.mjs +2 -1
  59. package/components/input/epoch/base-date-time/fesm2022/index.mjs.map +1 -1
  60. package/components/input/file-upload/bundles/index.umd.js +1 -1
  61. package/components/input/file-upload/fesm2022/index.mjs +1 -1
  62. package/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  63. package/components/input/rating/bundles/index.umd.js +1 -1
  64. package/components/input/rating/fesm2022/index.mjs +1 -1
  65. package/components/input/rating/fesm2022/index.mjs.map +1 -1
  66. package/components/input/slider/bundles/index.umd.js +1 -1
  67. package/components/input/slider/fesm2022/index.mjs +1 -1
  68. package/components/input/slider/fesm2022/index.mjs.map +1 -1
  69. package/components/input/switch/bundles/index.umd.js +1 -1
  70. package/components/input/switch/fesm2022/index.mjs +1 -1
  71. package/components/input/switch/fesm2022/index.mjs.map +1 -1
  72. package/components/input/text/bundles/index.umd.js +1 -1
  73. package/components/input/text/fesm2022/index.mjs +1 -1
  74. package/components/input/text/fesm2022/index.mjs.map +1 -1
  75. package/components/navigation/breadcrumb/bundles/index.umd.js +3 -3
  76. package/components/navigation/breadcrumb/fesm2022/index.mjs +4 -4
  77. package/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
  78. package/components/navigation/menu/bundles/index.umd.js +1 -1
  79. package/components/navigation/menu/fesm2022/index.mjs +1 -1
  80. package/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  81. package/components/navigation/navbar/bundles/index.umd.js +1 -1
  82. package/components/navigation/navbar/fesm2022/index.mjs +1 -1
  83. package/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
  84. package/components/page/default/bundles/index.umd.js +1 -0
  85. package/components/page/default/fesm2022/index.mjs +1 -0
  86. package/components/page/default/fesm2022/index.mjs.map +1 -1
  87. package/npm-shrinkwrap.json +2 -2
  88. package/package-lock.json +2 -2
  89. package/package.json +1 -1
  90. package/scripts/datatable/datatable.js +10 -3
@@ -340,7 +340,7 @@
340
340
  this.dialogRef.close();
341
341
  }
342
342
  static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0__namespace, type: DialogHeaderComponent, deps: [{ token: i0__namespace.ElementRef }, { token: base.DialogRef }, { token: i1$1__namespace.App }], target: i0__namespace.ɵɵFactoryTarget.Component }); }
343
- static { this.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: DialogHeaderComponent, isStandalone: true, selector: "div[wmDialogHeader]", inputs: { iconwidth: "iconwidth", iconheight: "iconheight", iconmargin: "iconmargin", iconclass: "iconclass", iconurl: "iconurl", closable: "closable", heading: "heading", headinglevel: "headinglevel", subheading: "subheading", titleid: "titleid", title: "title" }, ngImport: i0__namespace, template: "@if (isClosable) {\n <button (click)=\"closeDialog();\"\n [attr.aria-label]=\"'Close ' + (title ? title : '') + ' dialog'\" class=\"app-dialog-close close\" [ngClass]=\"{'btn-text': isPrism}\" [attr.title]=\"title ? 'Close ' + title + ' dialog' : dialogRef.appLocale.LABEL_CLOSE\" >\n <span class=\"app-icon wi wi-clear\" aria-hidden=\"true\"></span>\n </button>\n}\n\n@switch (headinglevel) {\n @case ('h1') {\n <h1 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h1>\n }\n @case ('h2') {\n <h2 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h2>\n }\n @case ('h3') {\n <h3 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h3>\n }\n @case ('h4') {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n @case ('h5') {\n <h5 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h5>\n }\n @case ('h6') {\n <h6 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h6>\n }\n @default {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n}\n\n<ng-template #headerTemplate>\n @if (iconclass || iconurl) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconurl]=\"iconurl\"\n [iconStyle]=\"{width: iconwidth, height: iconheight, margin: iconmargin, fontSize: iconwidth}\"></wm-app-icon>\n }\n <span class=\"dialog-heading\" [textContent]=\"heading\" [id]=\"titleid\"></span>\n @if (subheading) {\n <span class=\"dialog-sub-heading\" [title]=\"subheading\" [textContent]=\"subheading\"></span>\n }\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: i2.CommonModule }, { kind: "directive", type: i2__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: base.TextContentDirective, selector: "[textContent]", inputs: ["textContent"] }, { kind: "component", type: base.WmAppIconComponent, selector: "wm-app-icon", inputs: ["iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
343
+ static { this.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: DialogHeaderComponent, isStandalone: true, selector: "div[wmDialogHeader]", inputs: { iconwidth: "iconwidth", iconheight: "iconheight", iconmargin: "iconmargin", iconclass: "iconclass", iconurl: "iconurl", closable: "closable", heading: "heading", headinglevel: "headinglevel", subheading: "subheading", titleid: "titleid", title: "title" }, ngImport: i0__namespace, template: "@if (isClosable) {\n <button (click)=\"closeDialog();\"\n [attr.aria-label]=\"'Close ' + (title ? title : '') + ' dialog'\" class=\"app-dialog-close close\" [ngClass]=\"{'btn-text': isPrism}\" [attr.title]=\"title ? 'Close ' + title + ' dialog' : dialogRef.appLocale.LABEL_CLOSE\" >\n <span class=\"app-icon wi wi-clear\" aria-hidden=\"true\"></span>\n </button>\n}\n\n@switch (headinglevel) {\n @case ('h1') {\n <h1 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h1>\n }\n @case ('h2') {\n <h2 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h2>\n }\n @case ('h3') {\n <h3 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h3>\n }\n @case ('h4') {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n @case ('h5') {\n <h5 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h5>\n }\n @case ('h6') {\n <h6 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h6>\n }\n @default {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n}\n\n<ng-template #headerTemplate>\n @if (iconclass || iconurl) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconurl]=\"iconurl\"\n [iconStyle]=\"{width: iconwidth, height: iconheight, margin: iconmargin, fontSize: iconwidth}\"></wm-app-icon>\n }\n <span class=\"dialog-heading\" [textContent]=\"heading\" [id]=\"titleid\"></span>\n @if (subheading) {\n <span class=\"dialog-sub-heading\" [title]=\"subheading\" [textContent]=\"subheading\"></span>\n }\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: i2.CommonModule }, { kind: "directive", type: i2__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: base.TextContentDirective, selector: "[textContent]", inputs: ["textContent"] }, { kind: "component", type: base.WmAppIconComponent, selector: "wm-app-icon", inputs: ["icon", "iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
344
344
  }
345
345
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0__namespace, type: DialogHeaderComponent, decorators: [{
346
346
  type: i0.Component,
@@ -323,7 +323,7 @@ class DialogHeaderComponent {
323
323
  this.dialogRef.close();
324
324
  }
325
325
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: DialogHeaderComponent, deps: [{ token: i0.ElementRef }, { token: DialogRef }, { token: i1$1.App }], target: i0.ɵɵFactoryTarget.Component }); }
326
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: DialogHeaderComponent, isStandalone: true, selector: "div[wmDialogHeader]", inputs: { iconwidth: "iconwidth", iconheight: "iconheight", iconmargin: "iconmargin", iconclass: "iconclass", iconurl: "iconurl", closable: "closable", heading: "heading", headinglevel: "headinglevel", subheading: "subheading", titleid: "titleid", title: "title" }, ngImport: i0, template: "@if (isClosable) {\n <button (click)=\"closeDialog();\"\n [attr.aria-label]=\"'Close ' + (title ? title : '') + ' dialog'\" class=\"app-dialog-close close\" [ngClass]=\"{'btn-text': isPrism}\" [attr.title]=\"title ? 'Close ' + title + ' dialog' : dialogRef.appLocale.LABEL_CLOSE\" >\n <span class=\"app-icon wi wi-clear\" aria-hidden=\"true\"></span>\n </button>\n}\n\n@switch (headinglevel) {\n @case ('h1') {\n <h1 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h1>\n }\n @case ('h2') {\n <h2 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h2>\n }\n @case ('h3') {\n <h3 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h3>\n }\n @case ('h4') {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n @case ('h5') {\n <h5 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h5>\n }\n @case ('h6') {\n <h6 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h6>\n }\n @default {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n}\n\n<ng-template #headerTemplate>\n @if (iconclass || iconurl) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconurl]=\"iconurl\"\n [iconStyle]=\"{width: iconwidth, height: iconheight, margin: iconmargin, fontSize: iconwidth}\"></wm-app-icon>\n }\n <span class=\"dialog-heading\" [textContent]=\"heading\" [id]=\"titleid\"></span>\n @if (subheading) {\n <span class=\"dialog-sub-heading\" [title]=\"subheading\" [textContent]=\"subheading\"></span>\n }\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TextContentDirective, selector: "[textContent]", inputs: ["textContent"] }, { kind: "component", type: WmAppIconComponent, selector: "wm-app-icon", inputs: ["iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
326
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: DialogHeaderComponent, isStandalone: true, selector: "div[wmDialogHeader]", inputs: { iconwidth: "iconwidth", iconheight: "iconheight", iconmargin: "iconmargin", iconclass: "iconclass", iconurl: "iconurl", closable: "closable", heading: "heading", headinglevel: "headinglevel", subheading: "subheading", titleid: "titleid", title: "title" }, ngImport: i0, template: "@if (isClosable) {\n <button (click)=\"closeDialog();\"\n [attr.aria-label]=\"'Close ' + (title ? title : '') + ' dialog'\" class=\"app-dialog-close close\" [ngClass]=\"{'btn-text': isPrism}\" [attr.title]=\"title ? 'Close ' + title + ' dialog' : dialogRef.appLocale.LABEL_CLOSE\" >\n <span class=\"app-icon wi wi-clear\" aria-hidden=\"true\"></span>\n </button>\n}\n\n@switch (headinglevel) {\n @case ('h1') {\n <h1 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h1>\n }\n @case ('h2') {\n <h2 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h2>\n }\n @case ('h3') {\n <h3 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h3>\n }\n @case ('h4') {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n @case ('h5') {\n <h5 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h5>\n }\n @case ('h6') {\n <h6 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h6>\n }\n @default {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n}\n\n<ng-template #headerTemplate>\n @if (iconclass || iconurl) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconurl]=\"iconurl\"\n [iconStyle]=\"{width: iconwidth, height: iconheight, margin: iconmargin, fontSize: iconwidth}\"></wm-app-icon>\n }\n <span class=\"dialog-heading\" [textContent]=\"heading\" [id]=\"titleid\"></span>\n @if (subheading) {\n <span class=\"dialog-sub-heading\" [title]=\"subheading\" [textContent]=\"subheading\"></span>\n }\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TextContentDirective, selector: "[textContent]", inputs: ["textContent"] }, { kind: "component", type: WmAppIconComponent, selector: "wm-app-icon", inputs: ["icon", "iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
327
327
  }
328
328
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: DialogHeaderComponent, decorators: [{
329
329
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/dialogs/default/src/dialog-body/dialog-body.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.props.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/base-dialog.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-header/dialog-header.component.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-header/dialog-header.component.html","../../../../../projects/components/widgets/dialogs/default/src/index.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, Inject, OnDestroy, Renderer2 } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { BsModalService } from 'ngx-bootstrap/modal';\n\nimport { addClass, getSheetPositionClass, setAttr, setCSS } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\n\ndeclare const $;\n\nconst DEFAULT_CLS = 'app-dialog-body modal-body';\n\n@Directive({\n standalone: true,\n selector: 'div[wmDialogBody]',\n})\nexport class DialogBodyDirective implements OnDestroy {\n @HostBinding('style.height') height;\n private bsModalShownSubscription: Subscription;\n\n constructor(\n elRef: ElementRef,\n @Inject(DialogRef) private dialogRef,\n bsModal: BsModalService,\n private renderer: Renderer2\n ) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n\n this.bsModalShownSubscription = bsModal.onShown.subscribe(() => {\n const dialogRoot = $(elRef.nativeElement).closest('.app-dialog')[0];\n const dialogContent = $(elRef.nativeElement).closest('.modal-content')[0];\n let dialogRootContainer = $('body.wm-app')[0];\n // To identify the microfrontend, if body tag doesn't have wm-app class then app loading as micro-frontend\n if(!dialogRootContainer) {\n const dialogBackrop = $('body > .modal-backdrop')[0];\n const parentContainer = $('body > modal-container')[0];\n dialogRootContainer = $('.wm-app')[0];\n if(dialogRootContainer && parentContainer ){\n if(dialogBackrop){\n this.renderer.appendChild(dialogRootContainer, dialogBackrop);\n }\n this.renderer.appendChild(dialogRootContainer, parentContainer);\n\n }\n }\n const isSheet = this.dialogRef.sheet;\n const sheetPosition = this.dialogRef.sheetPosition;\n if(isSheet) {\n $(dialogRoot).addClass('modal-sheet');\n $(dialogRoot).addClass(getSheetPositionClass(sheetPosition));\n }\n const animation = this.dialogRef.animation;\n if(animation) {\n $(dialogContent).addClass('animated');\n $(dialogContent).addClass(animation);\n }\n const width = this.dialogRef.width;\n const height = this.dialogRef.height;\n if(height){\n setTimeout(e=>{\n setCSS($(elRef.nativeElement)[0], 'height', height);\n });\n }\n if (dialogRoot) {\n if (width) {\n setCSS(dialogRoot, 'width', width);\n }\n setAttr(dialogRoot, 'tabindex', this.dialogRef.tabindex);\n setAttr(dialogRoot, 'name', this.dialogRef.name);\n\n }\n // Clean up subscription after first use\n if (this.bsModalShownSubscription) {\n this.bsModalShownSubscription.unsubscribe();\n this.bsModalShownSubscription = null;\n }\n });\n }\n\n ngOnDestroy() {\n // MEMORY LEAK FIX: Unsubscribe from bsModal.onShown if not already unsubscribed\n if (this.bsModalShownSubscription) {\n this.bsModalShownSubscription.unsubscribe();\n this.bsModalShownSubscription = null;\n }\n\n // MEMORY LEAK FIX: Clear dialogRef reference\n this.dialogRef = null;\n }\n}\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-dialogfooter',\n new Map([\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ])\n );\n};\n","import {Directive, Inject, Injector, Optional} from '@angular/core';\n\nimport { BaseComponent, IWidgetConfig, provideAsWidgetRef } from '@wm/components/base';\nimport { registerProps } from './dialog-footer.props';\n\nconst WIDGET_INFO: IWidgetConfig = {\n widgetType: 'wm-dialogfooter',\n hostClass: 'app-dialog-footer modal-footer'\n};\n\n@Directive({\n standalone: true,\n selector: 'div[wmDialogFooter]',\n providers: [\n provideAsWidgetRef(DialogFooterDirective)\n ]\n})\nexport class DialogFooterDirective extends BaseComponent {\n static initializeProps = registerProps();\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_INFO, explicitContext);\n }\n}\n","import { Inject, Injectable, Injector, OnDestroy, Optional, TemplateRef } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { BsModalRef, BsModalService, ModalOptions } from 'ngx-bootstrap/modal';\n\nimport { Subscription } from 'rxjs';\n\nimport { AbstractDialogService, findRootContainer, generateGUId, isMobile } from '@wm/core';\n\nimport { BaseComponent, IDialog, IWidgetConfig, WidgetConfig } from '@wm/components/base';\n\n\nconst invokeOpenedCallback = (ref) => {\n if (ref) {\n setTimeout(() => {\n const root = findRootContainer(ref.$element);\n // if page styles have to be applied to dialog then dialog has to be child of page element.\n if (root) {\n $('body > modal-container > div').wrap('<' + root + '/>');\n }\n ref.invokeEventCallback('opened', { $event: { type: 'opened' } });\n // Focusing the first focusable element when the dialog is opened\n const container = $('[aria-labelledby= ' + ref.titleId + ']')[0];\n const keyboardFocusableElements = [container.querySelectorAll(\n 'a, button, input, textarea, select, details, iframe, embed, object, summary dialog, audio[controls], video[controls], [contenteditable], [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => {\n return (\n !el[0].hasAttribute('disabled') && !el[0].hasAttribute('hidden'));\n })[0];\n $(keyboardFocusableElements[0]).focus();\n\n const openedDialogs = ref.dialogService.getOpenedDialogs();\n if (openedDialogs.length > 1) {\n const zIndex = Number($(\"[aria-labelledby= \" + openedDialogs[openedDialogs.length - 2].titleId + \"]\").css('z-index'));\n $('[aria-labelledby= ' + ref.dialogService.getLastOpenedDialog().titleId + ']').css('z-index', zIndex + 2);\n $('bs-modal-backdrop').css('z-index', zIndex + 1);\n }\n });\n }\n};\n\nconst invokeClosedCallback = (ref) => {\n if (ref) {\n ref.invokeEventCallback('close');\n ref.dialogRef = undefined;\n const openedDialogs = ref.dialogService.getOpenedDialogs();\n if (openedDialogs.length >= 1) {\n const zIndex: any = Number($(\"[aria-labelledby= \" + openedDialogs[openedDialogs.length - 1].titleId + \"]\").css('z-index'));\n $('bs-modal-backdrop').css('z-index', zIndex - 1);\n }\n }\n};\n\n@Injectable()\nexport abstract class BaseDialog extends BaseComponent implements IDialog, OnDestroy {\n\n public name: string;\n\n private readonly dialogService: AbstractDialogService;\n private readonly bsModal: BsModalService;\n\n private dialogRef: BsModalRef;\n private dialogId: string;\n public titleId: string = 'wmdialog-' + generateGUId();\n public sheet: string | boolean;\n public sheetPosition: string;\n private dialogOriginFocusStack: HTMLElement[] = [];\n\n protected constructor(\n inj: Injector,\n @Inject(WidgetConfig) config: IWidgetConfig,\n protected modalOptions: ModalOptions,\n @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any\n ) {\n super(inj, config, explicitContext);\n this.dialogService = inj.get(AbstractDialogService);\n this.bsModal = inj.get(BsModalService);\n const router = inj.get(Router);\n\n const subscriptions: Subscription[] = [\n this.bsModal.onShown.subscribe(({ id }) => {\n const ref = this.dialogService.getLastOpenedDialog();\n if (ref === this && !this.dialogId) {\n // Always get the reference of last pushed dialog in the array for calling onOpen callback\n invokeOpenedCallback(ref);\n this.dialogId = id;\n }\n }),\n this.bsModal.onShow.subscribe(() => { }),\n this.bsModal.onHidden.subscribe((closeReason) => {\n let ref = this.dialogService.getDialogRefFromClosedDialogs();\n if (this.dialogId && closeReason?.id === this.dialogId) {\n ref = this;\n } else if (closeReason === 'esc' || closeReason === 'backdrop-click') {\n ref = this.dialogService.getLastOpenedDialog();\n }\n if (ref === this) {\n this.dialogId = null;\n // remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(ref);\n this.dialogService.removeFromClosedDialogs(ref);\n invokeClosedCallback(ref);\n if (ref.closeCallBackFn) {\n ref.closeCallBackFn();\n }\n }\n }),\n this.bsModal.onHide.subscribe(() => { }),\n router.events.subscribe(e => {\n if (e instanceof NavigationEnd) {\n this.close();\n }\n })\n ];\n this.registerDestroyListener(() => {// remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(this);\n this.dialogService.removeFromClosedDialogs(this);\n subscriptions.forEach(s => s.unsubscribe());\n });\n }\n\n /**\n * Opens the dialog\n * Subscribe to the onShown event emitter of bsModal and trigger on-opened event callback\n */\n public open(initState?: any) {\n\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n\n // do not open the dialog again if it is already opened\n const duplicateDialogCheck = (openedDialog) => {\n return openedDialog === this;\n };\n\n if (this.dialogService.getOpenedDialogs().some(duplicateDialogCheck)) {\n return;\n }\n\n this.dialogService.addToOpenedDialogs(this);\n // extend the context with the initState\n Object.assign(this.context, initState);\n this.modalOptions.ariaLabelledBy = this.titleId;\n this.dialogOriginFocusStack.push(document.activeElement as HTMLElement);\n this.dialogRef = this.bsModal.show(this.getTemplateRef(), this.modalOptions);\n // Fix for [WMS-23948]: Focus moving out of active Dialog widget\n if (this.dialogService.getOpenedDialogs().length === 1 && (isMobile())) {\n const parentSelector = $('body > app-root')[0];\n parentSelector.setAttribute('aria-hidden', 'true');\n }\n $('.cdk-focus-trap-anchor').removeAttr('aria-hidden');\n }\n\n /**\n * closes the dialog\n * invokes the on-close event callback\n */\n public close() {\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n if (this.dialogRef) {\n const lastDialogOrigin = this.dialogOriginFocusStack.pop();\n this.dialogService.addToClosedDialogs(this);\n this.dialogRef.hide();\n // Return focus to the originating element upon dialog closure\n lastDialogOrigin?.focus();\n }\n }\n\n /**\n * Register the dialog with the dialog service for programmatic access\n */\n protected register(scope) {\n // add scope along with name in the dialogRefsCollection Map while registering dialog\n // So that 2 dialogs having same name on different pages won't be overridden.\n this.dialogService.register(this.name, this, scope);\n }\n\n /**\n * De Register the dialog with the dialog service after dialog destruction\n */\n protected deRegister(scope) {\n this.dialogService.deRegister(this.name, scope);\n }\n\n /**\n * subclasses of BaseDialog must implement this method to return the proper template element ref\n * bsModal will use this refence to open the dialog\n * @returns {TemplateRef<any>}\n */\n protected abstract getTemplateRef(): TemplateRef<any>;\n\n protected onPropertyChange(key: string, nv: any, ov?: any) {\n // ignore the class attribute.\n // Prevent the framework from setting the class on the host element.\n if (key === 'class' || key === 'name' || key === 'tabindex') {\n return;\n } else if (key === 'animation') {\n this.modalOptions.class = this.modalOptions.class.replace(' animated ' + ov, '');\n if (nv) {\n this.modalOptions.class = this.modalOptions.class + ' animated ' + nv;\n }\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n public ngOnDestroy() {\n this.close();\n this.deRegister(this.viewParent);\n super.ngOnDestroy();\n }\n}","import {CommonModule} from '@angular/common';\nimport {DialogRef, TextContentDirective, WmAppIconComponent} from \"@wm/components/base\";\nimport {Component, ElementRef, Inject, Input} from '@angular/core';\n\nimport {addClass, App, toBoolean} from '@wm/core';\nimport {BaseDialog} from '../base-dialog';\n\nconst DEFAULT_CLS = 'app-dialog-header modal-header';\nconst DEFAULT_ICON_DIMENSIONS = '21px';\n\n@Component({\n standalone: true,\n imports: [CommonModule, TextContentDirective, WmAppIconComponent],\n selector: 'div[wmDialogHeader]',\n templateUrl: './dialog-header.component.html'\n})\nexport class DialogHeaderComponent {\n\n @Input() public iconwidth = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconheight = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconmargin: string;\n @Input() public iconclass: string;\n @Input() public iconurl: string;\n @Input() public closable = true;\n @Input() public heading: string;\n @Input() public headinglevel?: string = 'h4';\n @Input() public subheading: string;\n @Input() public titleid:string;\n @Input() public title: string;\n isPrism: boolean;\n\n public get isClosable() {\n return toBoolean(this.closable);\n }\n\n constructor(elRef: ElementRef, @Inject(DialogRef) public dialogRef: BaseDialog, public app: App ) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n this.isPrism = this.app.isPrism;\n }\n\n public closeDialog() {\n this.dialogRef.close();\n }\n}\n","@if (isClosable) {\n <button (click)=\"closeDialog();\"\n [attr.aria-label]=\"'Close ' + (title ? title : '') + ' dialog'\" class=\"app-dialog-close close\" [ngClass]=\"{'btn-text': isPrism}\" [attr.title]=\"title ? 'Close ' + title + ' dialog' : dialogRef.appLocale.LABEL_CLOSE\" >\n <span class=\"app-icon wi wi-clear\" aria-hidden=\"true\"></span>\n </button>\n}\n\n@switch (headinglevel) {\n @case ('h1') {\n <h1 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h1>\n }\n @case ('h2') {\n <h2 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h2>\n }\n @case ('h3') {\n <h3 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h3>\n }\n @case ('h4') {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n @case ('h5') {\n <h5 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h5>\n }\n @case ('h6') {\n <h6 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h6>\n }\n @default {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n}\n\n<ng-template #headerTemplate>\n @if (iconclass || iconurl) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconurl]=\"iconurl\"\n [iconStyle]=\"{width: iconwidth, height: iconheight, margin: iconmargin, fontSize: iconwidth}\"></wm-app-icon>\n }\n <span class=\"dialog-heading\" [textContent]=\"heading\" [id]=\"titleid\"></span>\n @if (subheading) {\n <span class=\"dialog-sub-heading\" [title]=\"subheading\" [textContent]=\"subheading\"></span>\n }\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["DEFAULT_CLS","i1"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/dialogs/default/src/dialog-body/dialog-body.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.props.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-footer/dialog-footer.directive.ts","../../../../../projects/components/widgets/dialogs/default/src/base-dialog.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-header/dialog-header.component.ts","../../../../../projects/components/widgets/dialogs/default/src/dialog-header/dialog-header.component.html","../../../../../projects/components/widgets/dialogs/default/src/index.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, Inject, OnDestroy, Renderer2 } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { BsModalService } from 'ngx-bootstrap/modal';\n\nimport { addClass, getSheetPositionClass, setAttr, setCSS } from '@wm/core';\n\nimport { DialogRef } from '@wm/components/base';\n\ndeclare const $;\n\nconst DEFAULT_CLS = 'app-dialog-body modal-body';\n\n@Directive({\n standalone: true,\n selector: 'div[wmDialogBody]',\n})\nexport class DialogBodyDirective implements OnDestroy {\n @HostBinding('style.height') height;\n private bsModalShownSubscription: Subscription;\n\n constructor(\n elRef: ElementRef,\n @Inject(DialogRef) private dialogRef,\n bsModal: BsModalService,\n private renderer: Renderer2\n ) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n\n this.bsModalShownSubscription = bsModal.onShown.subscribe(() => {\n const dialogRoot = $(elRef.nativeElement).closest('.app-dialog')[0];\n const dialogContent = $(elRef.nativeElement).closest('.modal-content')[0];\n let dialogRootContainer = $('body.wm-app')[0];\n // To identify the microfrontend, if body tag doesn't have wm-app class then app loading as micro-frontend\n if(!dialogRootContainer) {\n const dialogBackrop = $('body > .modal-backdrop')[0];\n const parentContainer = $('body > modal-container')[0];\n dialogRootContainer = $('.wm-app')[0];\n if(dialogRootContainer && parentContainer ){\n if(dialogBackrop){\n this.renderer.appendChild(dialogRootContainer, dialogBackrop);\n }\n this.renderer.appendChild(dialogRootContainer, parentContainer);\n\n }\n }\n const isSheet = this.dialogRef.sheet;\n const sheetPosition = this.dialogRef.sheetPosition;\n if(isSheet) {\n $(dialogRoot).addClass('modal-sheet');\n $(dialogRoot).addClass(getSheetPositionClass(sheetPosition));\n }\n const animation = this.dialogRef.animation;\n if(animation) {\n $(dialogContent).addClass('animated');\n $(dialogContent).addClass(animation);\n }\n const width = this.dialogRef.width;\n const height = this.dialogRef.height;\n if(height){\n setTimeout(e=>{\n setCSS($(elRef.nativeElement)[0], 'height', height);\n });\n }\n if (dialogRoot) {\n if (width) {\n setCSS(dialogRoot, 'width', width);\n }\n setAttr(dialogRoot, 'tabindex', this.dialogRef.tabindex);\n setAttr(dialogRoot, 'name', this.dialogRef.name);\n\n }\n // Clean up subscription after first use\n if (this.bsModalShownSubscription) {\n this.bsModalShownSubscription.unsubscribe();\n this.bsModalShownSubscription = null;\n }\n });\n }\n\n ngOnDestroy() {\n // MEMORY LEAK FIX: Unsubscribe from bsModal.onShown if not already unsubscribed\n if (this.bsModalShownSubscription) {\n this.bsModalShownSubscription.unsubscribe();\n this.bsModalShownSubscription = null;\n }\n\n // MEMORY LEAK FIX: Clear dialogRef reference\n this.dialogRef = null;\n }\n}\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-dialogfooter',\n new Map([\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ])\n );\n};\n","import {Directive, Inject, Injector, Optional} from '@angular/core';\n\nimport { BaseComponent, IWidgetConfig, provideAsWidgetRef } from '@wm/components/base';\nimport { registerProps } from './dialog-footer.props';\n\nconst WIDGET_INFO: IWidgetConfig = {\n widgetType: 'wm-dialogfooter',\n hostClass: 'app-dialog-footer modal-footer'\n};\n\n@Directive({\n standalone: true,\n selector: 'div[wmDialogFooter]',\n providers: [\n provideAsWidgetRef(DialogFooterDirective)\n ]\n})\nexport class DialogFooterDirective extends BaseComponent {\n static initializeProps = registerProps();\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_INFO, explicitContext);\n }\n}\n","import { Inject, Injectable, Injector, OnDestroy, Optional, TemplateRef } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { BsModalRef, BsModalService, ModalOptions } from 'ngx-bootstrap/modal';\n\nimport { Subscription } from 'rxjs';\n\nimport { AbstractDialogService, findRootContainer, generateGUId, isMobile } from '@wm/core';\n\nimport { BaseComponent, IDialog, IWidgetConfig, WidgetConfig } from '@wm/components/base';\n\n\nconst invokeOpenedCallback = (ref) => {\n if (ref) {\n setTimeout(() => {\n const root = findRootContainer(ref.$element);\n // if page styles have to be applied to dialog then dialog has to be child of page element.\n if (root) {\n $('body > modal-container > div').wrap('<' + root + '/>');\n }\n ref.invokeEventCallback('opened', { $event: { type: 'opened' } });\n // Focusing the first focusable element when the dialog is opened\n const container = $('[aria-labelledby= ' + ref.titleId + ']')[0];\n const keyboardFocusableElements = [container.querySelectorAll(\n 'a, button, input, textarea, select, details, iframe, embed, object, summary dialog, audio[controls], video[controls], [contenteditable], [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => {\n return (\n !el[0].hasAttribute('disabled') && !el[0].hasAttribute('hidden'));\n })[0];\n $(keyboardFocusableElements[0]).focus();\n\n const openedDialogs = ref.dialogService.getOpenedDialogs();\n if (openedDialogs.length > 1) {\n const zIndex = Number($(\"[aria-labelledby= \" + openedDialogs[openedDialogs.length - 2].titleId + \"]\").css('z-index'));\n $('[aria-labelledby= ' + ref.dialogService.getLastOpenedDialog().titleId + ']').css('z-index', zIndex + 2);\n $('bs-modal-backdrop').css('z-index', zIndex + 1);\n }\n });\n }\n};\n\nconst invokeClosedCallback = (ref) => {\n if (ref) {\n ref.invokeEventCallback('close');\n ref.dialogRef = undefined;\n const openedDialogs = ref.dialogService.getOpenedDialogs();\n if (openedDialogs.length >= 1) {\n const zIndex: any = Number($(\"[aria-labelledby= \" + openedDialogs[openedDialogs.length - 1].titleId + \"]\").css('z-index'));\n $('bs-modal-backdrop').css('z-index', zIndex - 1);\n }\n }\n};\n\n@Injectable()\nexport abstract class BaseDialog extends BaseComponent implements IDialog, OnDestroy {\n\n public name: string;\n\n private readonly dialogService: AbstractDialogService;\n private readonly bsModal: BsModalService;\n\n private dialogRef: BsModalRef;\n private dialogId: string;\n public titleId: string = 'wmdialog-' + generateGUId();\n public sheet: string | boolean;\n public sheetPosition: string;\n private dialogOriginFocusStack: HTMLElement[] = [];\n\n protected constructor(\n inj: Injector,\n @Inject(WidgetConfig) config: IWidgetConfig,\n protected modalOptions: ModalOptions,\n @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any\n ) {\n super(inj, config, explicitContext);\n this.dialogService = inj.get(AbstractDialogService);\n this.bsModal = inj.get(BsModalService);\n const router = inj.get(Router);\n\n const subscriptions: Subscription[] = [\n this.bsModal.onShown.subscribe(({ id }) => {\n const ref = this.dialogService.getLastOpenedDialog();\n if (ref === this && !this.dialogId) {\n // Always get the reference of last pushed dialog in the array for calling onOpen callback\n invokeOpenedCallback(ref);\n this.dialogId = id;\n }\n }),\n this.bsModal.onShow.subscribe(() => { }),\n this.bsModal.onHidden.subscribe((closeReason) => {\n let ref = this.dialogService.getDialogRefFromClosedDialogs();\n if (this.dialogId && closeReason?.id === this.dialogId) {\n ref = this;\n } else if (closeReason === 'esc' || closeReason === 'backdrop-click') {\n ref = this.dialogService.getLastOpenedDialog();\n }\n if (ref === this) {\n this.dialogId = null;\n // remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(ref);\n this.dialogService.removeFromClosedDialogs(ref);\n invokeClosedCallback(ref);\n if (ref.closeCallBackFn) {\n ref.closeCallBackFn();\n }\n }\n }),\n this.bsModal.onHide.subscribe(() => { }),\n router.events.subscribe(e => {\n if (e instanceof NavigationEnd) {\n this.close();\n }\n })\n ];\n this.registerDestroyListener(() => {// remove the dialog reference from opened dialogs and closed dialogs\n this.dialogService.removeFromOpenedDialogs(this);\n this.dialogService.removeFromClosedDialogs(this);\n subscriptions.forEach(s => s.unsubscribe());\n });\n }\n\n /**\n * Opens the dialog\n * Subscribe to the onShown event emitter of bsModal and trigger on-opened event callback\n */\n public open(initState?: any) {\n\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n\n // do not open the dialog again if it is already opened\n const duplicateDialogCheck = (openedDialog) => {\n return openedDialog === this;\n };\n\n if (this.dialogService.getOpenedDialogs().some(duplicateDialogCheck)) {\n return;\n }\n\n this.dialogService.addToOpenedDialogs(this);\n // extend the context with the initState\n Object.assign(this.context, initState);\n this.modalOptions.ariaLabelledBy = this.titleId;\n this.dialogOriginFocusStack.push(document.activeElement as HTMLElement);\n this.dialogRef = this.bsModal.show(this.getTemplateRef(), this.modalOptions);\n // Fix for [WMS-23948]: Focus moving out of active Dialog widget\n if (this.dialogService.getOpenedDialogs().length === 1 && (isMobile())) {\n const parentSelector = $('body > app-root')[0];\n parentSelector.setAttribute('aria-hidden', 'true');\n }\n $('.cdk-focus-trap-anchor').removeAttr('aria-hidden');\n }\n\n /**\n * closes the dialog\n * invokes the on-close event callback\n */\n public close() {\n // remove the popovers in the page to avoid the overlap with dialog\n // closePopover(this.$element); Commenting this line because it is causing regression(if we have dialog inside popover as partail content, then the dialog close is not working because on closing the popover the partial get destroyed.)\n if (this.dialogRef) {\n const lastDialogOrigin = this.dialogOriginFocusStack.pop();\n this.dialogService.addToClosedDialogs(this);\n this.dialogRef.hide();\n // Return focus to the originating element upon dialog closure\n lastDialogOrigin?.focus();\n }\n }\n\n /**\n * Register the dialog with the dialog service for programmatic access\n */\n protected register(scope) {\n // add scope along with name in the dialogRefsCollection Map while registering dialog\n // So that 2 dialogs having same name on different pages won't be overridden.\n this.dialogService.register(this.name, this, scope);\n }\n\n /**\n * De Register the dialog with the dialog service after dialog destruction\n */\n protected deRegister(scope) {\n this.dialogService.deRegister(this.name, scope);\n }\n\n /**\n * subclasses of BaseDialog must implement this method to return the proper template element ref\n * bsModal will use this refence to open the dialog\n * @returns {TemplateRef<any>}\n */\n protected abstract getTemplateRef(): TemplateRef<any>;\n\n protected onPropertyChange(key: string, nv: any, ov?: any) {\n // ignore the class attribute.\n // Prevent the framework from setting the class on the host element.\n if (key === 'class' || key === 'name' || key === 'tabindex') {\n return;\n } else if (key === 'animation') {\n this.modalOptions.class = this.modalOptions.class.replace(' animated ' + ov, '');\n if (nv) {\n this.modalOptions.class = this.modalOptions.class + ' animated ' + nv;\n }\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n public ngOnDestroy() {\n this.close();\n this.deRegister(this.viewParent);\n super.ngOnDestroy();\n }\n}","import {CommonModule} from '@angular/common';\nimport {DialogRef, TextContentDirective, WmAppIconComponent} from \"@wm/components/base\";\nimport {Component, ElementRef, Inject, Input} from '@angular/core';\n\nimport {addClass, App, toBoolean} from '@wm/core';\nimport {BaseDialog} from '../base-dialog';\n\nconst DEFAULT_CLS = 'app-dialog-header modal-header';\nconst DEFAULT_ICON_DIMENSIONS = '21px';\n\n@Component({\n standalone: true,\n imports: [CommonModule, TextContentDirective, WmAppIconComponent],\n selector: 'div[wmDialogHeader]',\n templateUrl: './dialog-header.component.html'\n})\nexport class DialogHeaderComponent {\n\n @Input() public iconwidth = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconheight = DEFAULT_ICON_DIMENSIONS;\n @Input() public iconmargin: string;\n @Input() public iconclass: string;\n @Input() public iconurl: string;\n @Input() public closable = true;\n @Input() public heading: string;\n @Input() public headinglevel?: string = 'h4';\n @Input() public subheading: string;\n @Input() public titleid:string;\n @Input() public title: string;\n isPrism: boolean;\n\n public get isClosable() {\n return toBoolean(this.closable);\n }\n\n constructor(elRef: ElementRef, @Inject(DialogRef) public dialogRef: BaseDialog, public app: App ) {\n addClass(elRef.nativeElement, DEFAULT_CLS);\n this.isPrism = this.app.isPrism;\n }\n\n public closeDialog() {\n this.dialogRef.close();\n }\n}\n","@if (isClosable) {\n <button (click)=\"closeDialog();\"\n [attr.aria-label]=\"'Close ' + (title ? title : '') + ' dialog'\" class=\"app-dialog-close close\" [ngClass]=\"{'btn-text': isPrism}\" [attr.title]=\"title ? 'Close ' + title + ' dialog' : dialogRef.appLocale.LABEL_CLOSE\" >\n <span class=\"app-icon wi wi-clear\" aria-hidden=\"true\"></span>\n </button>\n}\n\n@switch (headinglevel) {\n @case ('h1') {\n <h1 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h1>\n }\n @case ('h2') {\n <h2 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h2>\n }\n @case ('h3') {\n <h3 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h3>\n }\n @case ('h4') {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n @case ('h5') {\n <h5 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h5>\n }\n @case ('h6') {\n <h6 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h6>\n }\n @default {\n <h4 class=\"app-dialog-title modal-title\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </h4>\n }\n}\n\n<ng-template #headerTemplate>\n @if (iconclass || iconurl) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconurl]=\"iconurl\"\n [iconStyle]=\"{width: iconwidth, height: iconheight, margin: iconmargin, fontSize: iconwidth}\"></wm-app-icon>\n }\n <span class=\"dialog-heading\" [textContent]=\"heading\" [id]=\"titleid\"></span>\n @if (subheading) {\n <span class=\"dialog-sub-heading\" [title]=\"subheading\" [textContent]=\"subheading\"></span>\n }\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["DEFAULT_CLS","i1"],"mappings":"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"}
@@ -63,7 +63,7 @@
63
63
  static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0__namespace, type: ButtonComponent, deps: [{ token: i0__namespace.Injector }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0__namespace.ɵɵFactoryTarget.Component }); }
64
64
  static { this.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: ButtonComponent, isStandalone: true, selector: "button[wmButton]", host: { properties: { "type": "this.type", "tabIndex": "this.tabindex", "disabled": "this.disabled", "attr.accesskey": "this.shortcutkey", "attr.icon-position": "this.iconposition" } }, providers: [
65
65
  base.provideAsWidgetRef(ButtonComponent)
66
- ], exportAs: ["wmButton"], usesInheritance: true, ngImport: i0__namespace, template: "@if (iconclass) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n@if (iconurl) {\n <wm-app-icon [iconurl]=\"iconurl\" [defaultClasses]=\"'button-image-icon'\" [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n\n@if (iconclass || iconurl) {\n <span class=\"sr-only\">{{caption}} {{appLocale.LABEL_ICON}}</span>\n}\n<span class=\"btn-caption\" [innerHTML]=\"caption\"></span>\n<ng-content select=\".caret\"></ng-content>\n@if (badgevalue) {\n <span class=\"badge pull-right\" [textContent]=\"badgevalue\"></span>\n}", dependencies: [{ kind: "ngmodule", type: common.CommonModule }, { kind: "directive", type: base.TextContentDirective, selector: "[textContent]", inputs: ["textContent"] }, { kind: "component", type: base.WmAppIconComponent, selector: "wm-app-icon", inputs: ["iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
66
+ ], exportAs: ["wmButton"], usesInheritance: true, ngImport: i0__namespace, template: "@if (iconclass) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n@if (iconurl) {\n <wm-app-icon [iconurl]=\"iconurl\" [defaultClasses]=\"'button-image-icon'\" [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n\n@if (iconclass || iconurl) {\n <span class=\"sr-only\">{{caption}} {{appLocale.LABEL_ICON}}</span>\n}\n<span class=\"btn-caption\" [innerHTML]=\"caption\"></span>\n<ng-content select=\".caret\"></ng-content>\n@if (badgevalue) {\n <span class=\"badge pull-right\" [textContent]=\"badgevalue\"></span>\n}", dependencies: [{ kind: "ngmodule", type: common.CommonModule }, { kind: "directive", type: base.TextContentDirective, selector: "[textContent]", inputs: ["textContent"] }, { kind: "component", type: base.WmAppIconComponent, selector: "wm-app-icon", inputs: ["icon", "iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
67
67
  }
68
68
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0__namespace, type: ButtonComponent, decorators: [{
69
69
  type: i0.Component,
@@ -43,7 +43,7 @@ class ButtonComponent extends StylableComponent {
43
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ButtonComponent, deps: [{ token: i0.Injector }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
44
44
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: ButtonComponent, isStandalone: true, selector: "button[wmButton]", host: { properties: { "type": "this.type", "tabIndex": "this.tabindex", "disabled": "this.disabled", "attr.accesskey": "this.shortcutkey", "attr.icon-position": "this.iconposition" } }, providers: [
45
45
  provideAsWidgetRef(ButtonComponent)
46
- ], exportAs: ["wmButton"], usesInheritance: true, ngImport: i0, template: "@if (iconclass) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n@if (iconurl) {\n <wm-app-icon [iconurl]=\"iconurl\" [defaultClasses]=\"'button-image-icon'\" [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n\n@if (iconclass || iconurl) {\n <span class=\"sr-only\">{{caption}} {{appLocale.LABEL_ICON}}</span>\n}\n<span class=\"btn-caption\" [innerHTML]=\"caption\"></span>\n<ng-content select=\".caret\"></ng-content>\n@if (badgevalue) {\n <span class=\"badge pull-right\" [textContent]=\"badgevalue\"></span>\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: TextContentDirective, selector: "[textContent]", inputs: ["textContent"] }, { kind: "component", type: WmAppIconComponent, selector: "wm-app-icon", inputs: ["iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
46
+ ], exportAs: ["wmButton"], usesInheritance: true, ngImport: i0, template: "@if (iconclass) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n@if (iconurl) {\n <wm-app-icon [iconurl]=\"iconurl\" [defaultClasses]=\"'button-image-icon'\" [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n\n@if (iconclass || iconurl) {\n <span class=\"sr-only\">{{caption}} {{appLocale.LABEL_ICON}}</span>\n}\n<span class=\"btn-caption\" [innerHTML]=\"caption\"></span>\n<ng-content select=\".caret\"></ng-content>\n@if (badgevalue) {\n <span class=\"badge pull-right\" [textContent]=\"badgevalue\"></span>\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: TextContentDirective, selector: "[textContent]", inputs: ["textContent"] }, { kind: "component", type: WmAppIconComponent, selector: "wm-app-icon", inputs: ["icon", "iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
47
47
  }
48
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ButtonComponent, decorators: [{
49
49
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/button/src/button.props.ts","../../../../../projects/components/widgets/input/button/src/button.component.ts","../../../../../projects/components/widgets/input/button/src/button.component.html","../../../../../projects/components/widgets/input/button/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-button',\n new Map(\n [\n ['animation', PROP_STRING],\n ['badgevalue', PROP_STRING],\n ['caption', PROP_STRING],\n ['class', PROP_STRING],\n ['conditionalclass', PROP_ANY],\n ['conditionalstyle', PROP_ANY],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['iconclass', PROP_STRING],\n ['iconheight', PROP_STRING],\n ['iconmargin', PROP_STRING],\n ['iconposition', PROP_STRING],\n ['iconurl', PROP_STRING],\n ['iconwidth', PROP_STRING],\n ['name', PROP_STRING],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['type', PROP_STRING]\n ]\n )\n );\n};\n","import { CommonModule } from '@angular/common';\nimport {Component, HostBinding, Inject, Injector, Optional} from '@angular/core';\n\nimport {DISPLAY_TYPE, IWidgetConfig, provideAsWidgetRef, StylableComponent, styler, TextContentDirective, WmAppIconComponent} from '@wm/components/base';\n\nimport {registerProps} from './button.props';\n\nconst DEFAULT_CLS = 'btn app-button';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-button',\n hostClass: DEFAULT_CLS,\n displayType: DISPLAY_TYPE.INLINE_BLOCK\n};\n\n@Component({\n standalone: true,\n imports: [CommonModule, TextContentDirective, WmAppIconComponent],\n selector: 'button[wmButton]',\n templateUrl: './button.component.html',\n providers: [\n provideAsWidgetRef(ButtonComponent)\n ],\n exportAs: 'wmButton'\n})\nexport class ButtonComponent extends StylableComponent {\n static initializeProps = registerProps();\n\n public iconurl: string;\n public iconclass: string;\n public iconwidth: string;\n public iconheight: string;\n public iconmargin: string;\n public caption: string;\n public badgevalue: string;\n public arialabel: string;\n @HostBinding('type') type: string;\n @HostBinding('tabIndex') tabindex: number;\n @HostBinding('disabled') disabled: boolean;\n @HostBinding('attr.accesskey') shortcutkey: string;\n @HostBinding('attr.icon-position') iconposition: string;\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n }\n}\n","@if (iconclass) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n@if (iconurl) {\n <wm-app-icon [iconurl]=\"iconurl\" [defaultClasses]=\"'button-image-icon'\" [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n\n@if (iconclass || iconurl) {\n <span class=\"sr-only\">{{caption}} {{appLocale.LABEL_ICON}}</span>\n}\n<span class=\"btn-caption\" [innerHTML]=\"caption\"></span>\n<ng-content select=\".caret\"></ng-content>\n@if (badgevalue) {\n <span class=\"badge pull-right\" [textContent]=\"badgevalue\"></span>\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/button/src/button.props.ts","../../../../../projects/components/widgets/input/button/src/button.component.ts","../../../../../projects/components/widgets/input/button/src/button.component.html","../../../../../projects/components/widgets/input/button/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-button',\n new Map(\n [\n ['animation', PROP_STRING],\n ['badgevalue', PROP_STRING],\n ['caption', PROP_STRING],\n ['class', PROP_STRING],\n ['conditionalclass', PROP_ANY],\n ['conditionalstyle', PROP_ANY],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['iconclass', PROP_STRING],\n ['iconheight', PROP_STRING],\n ['iconmargin', PROP_STRING],\n ['iconposition', PROP_STRING],\n ['iconurl', PROP_STRING],\n ['iconwidth', PROP_STRING],\n ['name', PROP_STRING],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['type', PROP_STRING]\n ]\n )\n );\n};\n","import { CommonModule } from '@angular/common';\nimport {Component, HostBinding, Inject, Injector, Optional} from '@angular/core';\n\nimport {DISPLAY_TYPE, IWidgetConfig, provideAsWidgetRef, StylableComponent, styler, TextContentDirective, WmAppIconComponent} from '@wm/components/base';\n\nimport {registerProps} from './button.props';\n\nconst DEFAULT_CLS = 'btn app-button';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-button',\n hostClass: DEFAULT_CLS,\n displayType: DISPLAY_TYPE.INLINE_BLOCK\n};\n\n@Component({\n standalone: true,\n imports: [CommonModule, TextContentDirective, WmAppIconComponent],\n selector: 'button[wmButton]',\n templateUrl: './button.component.html',\n providers: [\n provideAsWidgetRef(ButtonComponent)\n ],\n exportAs: 'wmButton'\n})\nexport class ButtonComponent extends StylableComponent {\n static initializeProps = registerProps();\n\n public iconurl: string;\n public iconclass: string;\n public iconwidth: string;\n public iconheight: string;\n public iconmargin: string;\n public caption: string;\n public badgevalue: string;\n public arialabel: string;\n @HostBinding('type') type: string;\n @HostBinding('tabIndex') tabindex: number;\n @HostBinding('disabled') disabled: boolean;\n @HostBinding('attr.accesskey') shortcutkey: string;\n @HostBinding('attr.icon-position') iconposition: string;\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n }\n}\n","@if (iconclass) {\n <wm-app-icon [iconclass]=\"iconclass\"\n [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n@if (iconurl) {\n <wm-app-icon [iconurl]=\"iconurl\" [defaultClasses]=\"'button-image-icon'\" [iconStyle]=\"{width:iconwidth, height:iconheight, margin:iconmargin, fontSize:iconwidth}\"></wm-app-icon>\n}\n\n@if (iconclass || iconurl) {\n <span class=\"sr-only\">{{caption}} {{appLocale.LABEL_ICON}}</span>\n}\n<span class=\"btn-caption\" [innerHTML]=\"caption\"></span>\n<ng-content select=\".caret\"></ng-content>\n@if (badgevalue) {\n <span class=\"badge pull-right\" [textContent]=\"badgevalue\"></span>\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -168,7 +168,7 @@
168
168
  base.provideAs(CheckboxComponent, i2.NG_VALUE_ACCESSOR, true),
169
169
  base.provideAs(CheckboxComponent, i2.NG_VALIDATORS, true),
170
170
  base.provideAsWidgetRef(CheckboxComponent)
171
- ], viewQueries: [{ propertyName: "ngModel", first: true, predicate: i2.NgModel, descendants: true }, { propertyName: "checkboxEl", first: true, predicate: ["checkbox"], descendants: true, read: i0.ElementRef, static: true }], usesInheritance: true, ngImport: i0__namespace, template: "<label [ngClass]=\"{'unchecked': !proxyModel, 'disabled': (disabled || readonly), 'required': (required && _caption), 'icon-button-toggle': type === 'button'}\">\n <input type=\"checkbox\"\n #checkbox\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel\"\n focus-target\n [(ngModel)]=\"proxyModel\"\n [ngModelOptions]=\"{standalone: true}\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [disabled]=\"disabled || readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [tabindex]=\"tabindex\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\">\n <span class=\"caption\" [innerHtml]=\"_caption\" *ngIf=\"type != 'button' && type != 'toggle'\"></span>\n <!-- Icon toggle button -->\n <span class=\"caption fa-xs text-center\" *ngIf=\"type == 'toggle'\">\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaulticonclass]=\"'start-icon'\" *ngIf=\"!proxyModel\"></wm-app-icon> \n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaulticonclass]=\"'end-icon'\" *ngIf=\"proxyModel\"></wm-app-icon> \n </span>\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Unselected icon'\" *ngIf=\"type === 'button' && !proxyModel\"></wm-app-icon>\n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Selected icon'\" *ngIf=\"proxyModel && type === 'button'\"></wm-app-icon>\n <img alt=\"Checkbox Image\" aria-hidden=\"true\" src=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"switch\"/>\n</label>\n<input type=\"hidden\" class=\"ng-hide model-holder\" aria-hidden=\"true\" tabindex=\"-1\" [disabled]=\"disabled\" [value]=\"proxyModel\">\n", dependencies: [{ kind: "ngmodule", type: i1.CommonModule }, { kind: "directive", type: i1__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i2.FormsModule }, { kind: "directive", type: i2__namespace.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2__namespace.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i2__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: base.WmAppIconComponent, selector: "wm-app-icon", inputs: ["iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
171
+ ], viewQueries: [{ propertyName: "ngModel", first: true, predicate: i2.NgModel, descendants: true }, { propertyName: "checkboxEl", first: true, predicate: ["checkbox"], descendants: true, read: i0.ElementRef, static: true }], usesInheritance: true, ngImport: i0__namespace, template: "<label [ngClass]=\"{'unchecked': !proxyModel, 'disabled': (disabled || readonly), 'required': (required && _caption), 'icon-button-toggle': type === 'button'}\">\n <input type=\"checkbox\"\n #checkbox\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel\"\n focus-target\n [(ngModel)]=\"proxyModel\"\n [ngModelOptions]=\"{standalone: true}\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [disabled]=\"disabled || readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [tabindex]=\"tabindex\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\">\n <span class=\"caption\" [innerHtml]=\"_caption\" *ngIf=\"type != 'button' && type != 'toggle'\"></span>\n <!-- Icon toggle button -->\n <span class=\"caption fa-xs text-center\" *ngIf=\"type == 'toggle'\">\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaulticonclass]=\"'start-icon'\" *ngIf=\"!proxyModel\"></wm-app-icon> \n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaulticonclass]=\"'end-icon'\" *ngIf=\"proxyModel\"></wm-app-icon> \n </span>\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Unselected icon'\" *ngIf=\"type === 'button' && !proxyModel\"></wm-app-icon>\n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Selected icon'\" *ngIf=\"proxyModel && type === 'button'\"></wm-app-icon>\n <img alt=\"Checkbox Image\" aria-hidden=\"true\" src=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"switch\"/>\n</label>\n<input type=\"hidden\" class=\"ng-hide model-holder\" aria-hidden=\"true\" tabindex=\"-1\" [disabled]=\"disabled\" [value]=\"proxyModel\">\n", dependencies: [{ kind: "ngmodule", type: i1.CommonModule }, { kind: "directive", type: i1__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i2.FormsModule }, { kind: "directive", type: i2__namespace.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2__namespace.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i2__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: base.WmAppIconComponent, selector: "wm-app-icon", inputs: ["icon", "iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
172
172
  }
173
173
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0__namespace, type: CheckboxComponent, decorators: [{
174
174
  type: i0.Component,
@@ -151,7 +151,7 @@ class CheckboxComponent extends BaseFormCustomComponent {
151
151
  provideAs(CheckboxComponent, NG_VALUE_ACCESSOR, true),
152
152
  provideAs(CheckboxComponent, NG_VALIDATORS, true),
153
153
  provideAsWidgetRef(CheckboxComponent)
154
- ], viewQueries: [{ propertyName: "ngModel", first: true, predicate: NgModel, descendants: true }, { propertyName: "checkboxEl", first: true, predicate: ["checkbox"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<label [ngClass]=\"{'unchecked': !proxyModel, 'disabled': (disabled || readonly), 'required': (required && _caption), 'icon-button-toggle': type === 'button'}\">\n <input type=\"checkbox\"\n #checkbox\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel\"\n focus-target\n [(ngModel)]=\"proxyModel\"\n [ngModelOptions]=\"{standalone: true}\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [disabled]=\"disabled || readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [tabindex]=\"tabindex\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\">\n <span class=\"caption\" [innerHtml]=\"_caption\" *ngIf=\"type != 'button' && type != 'toggle'\"></span>\n <!-- Icon toggle button -->\n <span class=\"caption fa-xs text-center\" *ngIf=\"type == 'toggle'\">\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaulticonclass]=\"'start-icon'\" *ngIf=\"!proxyModel\"></wm-app-icon> \n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaulticonclass]=\"'end-icon'\" *ngIf=\"proxyModel\"></wm-app-icon> \n </span>\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Unselected icon'\" *ngIf=\"type === 'button' && !proxyModel\"></wm-app-icon>\n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Selected icon'\" *ngIf=\"proxyModel && type === 'button'\"></wm-app-icon>\n <img alt=\"Checkbox Image\" aria-hidden=\"true\" src=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"switch\"/>\n</label>\n<input type=\"hidden\" class=\"ng-hide model-holder\" aria-hidden=\"true\" tabindex=\"-1\" [disabled]=\"disabled\" [value]=\"proxyModel\">\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: WmAppIconComponent, selector: "wm-app-icon", inputs: ["iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
154
+ ], viewQueries: [{ propertyName: "ngModel", first: true, predicate: NgModel, descendants: true }, { propertyName: "checkboxEl", first: true, predicate: ["checkbox"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<label [ngClass]=\"{'unchecked': !proxyModel, 'disabled': (disabled || readonly), 'required': (required && _caption), 'icon-button-toggle': type === 'button'}\">\n <input type=\"checkbox\"\n #checkbox\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel\"\n focus-target\n [(ngModel)]=\"proxyModel\"\n [ngModelOptions]=\"{standalone: true}\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [disabled]=\"disabled || readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [tabindex]=\"tabindex\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\">\n <span class=\"caption\" [innerHtml]=\"_caption\" *ngIf=\"type != 'button' && type != 'toggle'\"></span>\n <!-- Icon toggle button -->\n <span class=\"caption fa-xs text-center\" *ngIf=\"type == 'toggle'\">\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaulticonclass]=\"'start-icon'\" *ngIf=\"!proxyModel\"></wm-app-icon> \n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaulticonclass]=\"'end-icon'\" *ngIf=\"proxyModel\"></wm-app-icon> \n </span>\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Unselected icon'\" *ngIf=\"type === 'button' && !proxyModel\"></wm-app-icon>\n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Selected icon'\" *ngIf=\"proxyModel && type === 'button'\"></wm-app-icon>\n <img alt=\"Checkbox Image\" aria-hidden=\"true\" src=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"switch\"/>\n</label>\n<input type=\"hidden\" class=\"ng-hide model-holder\" aria-hidden=\"true\" tabindex=\"-1\" [disabled]=\"disabled\" [value]=\"proxyModel\">\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: WmAppIconComponent, selector: "wm-app-icon", inputs: ["icon", "iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }] }); }
155
155
  }
156
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: CheckboxComponent, decorators: [{
157
157
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/checkbox/src/checkbox.props.ts","../../../../../projects/components/widgets/input/checkbox/src/checkbox.component.ts","../../../../../projects/components/widgets/input/checkbox/src/checkbox.component.html","../../../../../projects/components/widgets/input/checkbox/src/index.ts"],"sourcesContent":["import {FormWidgetType} from '@wm/core';\nimport {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\n\nexport const checkboxProps = new Map(\n [\n ['caption', PROP_STRING],\n ['class', PROP_STRING],\n ['conditionalclass', PROP_ANY],\n ['conditionalstyle', PROP_ANY],\n ['checkedvalue', {value: true, ...PROP_STRING}],\n ['datavaluesource', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['name', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['required', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['uncheckedvalue', {value: false, ...PROP_STRING}],\n ['unselectedicon', PROP_STRING],\n ['selectedicon', PROP_STRING],\n ['unselectediconurl', PROP_STRING],\n ['selectediconurl', PROP_STRING]\n\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-checkbox',\n checkboxProps\n );\n registerFormWidget(\n FormWidgetType.CHECKBOX,\n checkboxProps\n );\n registerFormWidget(\n FormWidgetType.TOGGLE,\n checkboxProps\n );\n registerFormWidget(\n FormWidgetType.ICONBUTTONTOGGLE,\n checkboxProps\n );\n};\n","import { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport {\n AfterViewInit,\n Attribute,\n Component,\n ElementRef,\n HostListener,\n Inject,\n Injector,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild\n} from '@angular/core';\nimport {NG_VALIDATORS, NG_VALUE_ACCESSOR, NgModel} from '@angular/forms';\n\nimport {isDefined, toggleClass} from '@wm/core';\nimport {IWidgetConfig, provideAs, provideAsWidgetRef, styler, WmAppIconComponent} from '@wm/components/base';\nimport {BaseFormCustomComponent} from '@wm/components/input/base-form-custom';\n\nimport {registerProps} from './checkbox.props';\n\nconst DEFAULT_CLS = 'app-checkbox checkbox';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-checkbox',\n hostClass: DEFAULT_CLS\n};\n\n/*\n * try to convert the chekedvalue and unchecked values to boolean/number\n */\nexport const unStringify = (val, defaultVal?) => {\n if (val === null) {\n return defaultVal;\n }\n\n if (val === true || val === 'true') {\n return true;\n }\n\n if (val === false || val === 'false') {\n return false;\n }\n\n const number = parseInt(val, 10);\n if (!isNaN(number)) {\n return number;\n }\n return val;\n};\n\n@Component({\n standalone: true,\n imports: [CommonModule, FormsModule, WmAppIconComponent],\n selector: '[wmCheckbox]',\n templateUrl: './checkbox.component.html',\n providers: [\n provideAs(CheckboxComponent, NG_VALUE_ACCESSOR, true),\n provideAs(CheckboxComponent, NG_VALIDATORS, true),\n provideAsWidgetRef(CheckboxComponent)\n ]\n})\nexport class CheckboxComponent extends BaseFormCustomComponent implements OnInit, AfterViewInit, OnDestroy {\n static initializeProps = registerProps();\n\n public proxyModel: boolean;\n public disabled: boolean;\n public readonly: boolean;\n public required: boolean;\n public name: string;\n public hint: string;\n public arialabel: string;\n public shortcutkey: string;\n public tabindex: any;\n public _caption = '&nbsp';\n private _checkedvalue;\n private _uncheckedvalue;\n public unselectedicon;\n public selectedicon;\n public unselectediconurl;\n public selectediconurl;\n\n\n @ViewChild(NgModel) ngModel: NgModel;\n @ViewChild('checkbox', { static: true, read: ElementRef }) checkboxEl: ElementRef;\n\n // if the checkbox is checked, return checkedvalue else return uncheckedvalue\n // @ts-ignore\n public get datavalue() {\n return isDefined(this.proxyModel) ? (this.proxyModel ? this._checkedvalue : this._uncheckedvalue) : undefined;\n }\n // when the datavalue is set, update the checked state\n // @ts-ignore\n public set datavalue(v) {\n this.proxyModel = (isDefined(v) && v !== '') ? v === this._checkedvalue : undefined;\n this.updatePrevDatavalue(this.datavalue);\n }\n\n constructor(\n inj: Injector,\n @Attribute('checkedvalue') checkedVal,\n @Attribute('uncheckedvalue') uncheckedVal,\n @Attribute('type') public type,\n @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any\n ) {\n if(type === 'button'){\n WIDGET_CONFIG.hostClass = 'app-iconbutton-toggle'\n }else{\n WIDGET_CONFIG.hostClass = DEFAULT_CLS\n }\n super(inj, WIDGET_CONFIG, explicitContext);\n\n this._checkedvalue = unStringify(checkedVal, true);\n this._uncheckedvalue = unStringify(uncheckedVal, false);\n\n // if the type of the checkbox is toggle update the related classes on the host node\n toggleClass(this.nativeElement, 'app-toggle', type === 'toggle');\n }\n\n onPropertyChange(key, nv, ov) {\n if (key === 'tabindex') {\n return;\n }\n if (key === 'required') {\n this._onChange(this.datavalue);\n return;\n }\n\n if (key === 'caption') {\n if (!isDefined(nv) || nv === '') {\n this._caption = '&nbsp;';\n } else {\n this._caption = nv;\n }\n } else if (key === 'checkedvalue') {\n this._checkedvalue = unStringify(nv, true);\n } else if (key === 'uncheckedvalue') {\n this._uncheckedvalue = unStringify(nv, false);\n } else if (key === 'datavalue') {\n this.datavalue = unStringify(nv);\n this._onChange(this.datavalue);\n }else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n // change and blur events are handled from template\n protected handleEvent(node: HTMLElement, eventName: string, callback: Function, locals: any) {\n if (eventName !== 'change' && eventName !== 'blur') {\n // applying tap (Hammer event) on the label as the event handler is not getting triggered on the input.\n const $el = eventName === 'tap' ? this.nativeElement.querySelector('label') : this.checkboxEl.nativeElement;\n super.handleEvent($el, eventName, callback, locals);\n }\n }\n\n handleChange(newVal: boolean) {\n this.invokeOnChange(this.datavalue, {type: 'change'}, this.ngModel.valid);\n }\n\n @HostListener('keydown.enter', ['$event', '\"ENTER\"'])\n onKeyDown($event) {\n $event.preventDefault();\n this.checkboxEl.nativeElement.click();\n }\n\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n styler(this.nativeElement.querySelector('label'), this);\n }\n\n ngOnDestroy() {\n // MEMORY LEAK FIX: Clear ViewChild references\n this.ngModel = null;\n this.checkboxEl = null;\n\n // Call parent ngOnDestroy\n super.ngOnDestroy();\n }\n}\n","<label [ngClass]=\"{'unchecked': !proxyModel, 'disabled': (disabled || readonly), 'required': (required && _caption), 'icon-button-toggle': type === 'button'}\">\n <input type=\"checkbox\"\n #checkbox\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel\"\n focus-target\n [(ngModel)]=\"proxyModel\"\n [ngModelOptions]=\"{standalone: true}\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [disabled]=\"disabled || readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [tabindex]=\"tabindex\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\">\n <span class=\"caption\" [innerHtml]=\"_caption\" *ngIf=\"type != 'button' && type != 'toggle'\"></span>\n <!-- Icon toggle button -->\n <span class=\"caption fa-xs text-center\" *ngIf=\"type == 'toggle'\">\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaulticonclass]=\"'start-icon'\" *ngIf=\"!proxyModel\"></wm-app-icon> \n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaulticonclass]=\"'end-icon'\" *ngIf=\"proxyModel\"></wm-app-icon> \n </span>\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Unselected icon'\" *ngIf=\"type === 'button' && !proxyModel\"></wm-app-icon>\n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Selected icon'\" *ngIf=\"proxyModel && type === 'button'\"></wm-app-icon>\n <img alt=\"Checkbox Image\" aria-hidden=\"true\" src=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"switch\"/>\n</label>\n<input type=\"hidden\" class=\"ng-hide model-holder\" aria-hidden=\"true\" tabindex=\"-1\" [disabled]=\"disabled\" [value]=\"proxyModel\">\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/checkbox/src/checkbox.props.ts","../../../../../projects/components/widgets/input/checkbox/src/checkbox.component.ts","../../../../../projects/components/widgets/input/checkbox/src/checkbox.component.html","../../../../../projects/components/widgets/input/checkbox/src/index.ts"],"sourcesContent":["import {FormWidgetType} from '@wm/core';\nimport {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\n\nexport const checkboxProps = new Map(\n [\n ['caption', PROP_STRING],\n ['class', PROP_STRING],\n ['conditionalclass', PROP_ANY],\n ['conditionalstyle', PROP_ANY],\n ['checkedvalue', {value: true, ...PROP_STRING}],\n ['datavaluesource', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['name', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['required', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['uncheckedvalue', {value: false, ...PROP_STRING}],\n ['unselectedicon', PROP_STRING],\n ['selectedicon', PROP_STRING],\n ['unselectediconurl', PROP_STRING],\n ['selectediconurl', PROP_STRING]\n\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-checkbox',\n checkboxProps\n );\n registerFormWidget(\n FormWidgetType.CHECKBOX,\n checkboxProps\n );\n registerFormWidget(\n FormWidgetType.TOGGLE,\n checkboxProps\n );\n registerFormWidget(\n FormWidgetType.ICONBUTTONTOGGLE,\n checkboxProps\n );\n};\n","import { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport {\n AfterViewInit,\n Attribute,\n Component,\n ElementRef,\n HostListener,\n Inject,\n Injector,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild\n} from '@angular/core';\nimport {NG_VALIDATORS, NG_VALUE_ACCESSOR, NgModel} from '@angular/forms';\n\nimport {isDefined, toggleClass} from '@wm/core';\nimport {IWidgetConfig, provideAs, provideAsWidgetRef, styler, WmAppIconComponent} from '@wm/components/base';\nimport {BaseFormCustomComponent} from '@wm/components/input/base-form-custom';\n\nimport {registerProps} from './checkbox.props';\n\nconst DEFAULT_CLS = 'app-checkbox checkbox';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-checkbox',\n hostClass: DEFAULT_CLS\n};\n\n/*\n * try to convert the chekedvalue and unchecked values to boolean/number\n */\nexport const unStringify = (val, defaultVal?) => {\n if (val === null) {\n return defaultVal;\n }\n\n if (val === true || val === 'true') {\n return true;\n }\n\n if (val === false || val === 'false') {\n return false;\n }\n\n const number = parseInt(val, 10);\n if (!isNaN(number)) {\n return number;\n }\n return val;\n};\n\n@Component({\n standalone: true,\n imports: [CommonModule, FormsModule, WmAppIconComponent],\n selector: '[wmCheckbox]',\n templateUrl: './checkbox.component.html',\n providers: [\n provideAs(CheckboxComponent, NG_VALUE_ACCESSOR, true),\n provideAs(CheckboxComponent, NG_VALIDATORS, true),\n provideAsWidgetRef(CheckboxComponent)\n ]\n})\nexport class CheckboxComponent extends BaseFormCustomComponent implements OnInit, AfterViewInit, OnDestroy {\n static initializeProps = registerProps();\n\n public proxyModel: boolean;\n public disabled: boolean;\n public readonly: boolean;\n public required: boolean;\n public name: string;\n public hint: string;\n public arialabel: string;\n public shortcutkey: string;\n public tabindex: any;\n public _caption = '&nbsp';\n private _checkedvalue;\n private _uncheckedvalue;\n public unselectedicon;\n public selectedicon;\n public unselectediconurl;\n public selectediconurl;\n\n\n @ViewChild(NgModel) ngModel: NgModel;\n @ViewChild('checkbox', { static: true, read: ElementRef }) checkboxEl: ElementRef;\n\n // if the checkbox is checked, return checkedvalue else return uncheckedvalue\n // @ts-ignore\n public get datavalue() {\n return isDefined(this.proxyModel) ? (this.proxyModel ? this._checkedvalue : this._uncheckedvalue) : undefined;\n }\n // when the datavalue is set, update the checked state\n // @ts-ignore\n public set datavalue(v) {\n this.proxyModel = (isDefined(v) && v !== '') ? v === this._checkedvalue : undefined;\n this.updatePrevDatavalue(this.datavalue);\n }\n\n constructor(\n inj: Injector,\n @Attribute('checkedvalue') checkedVal,\n @Attribute('uncheckedvalue') uncheckedVal,\n @Attribute('type') public type,\n @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any\n ) {\n if(type === 'button'){\n WIDGET_CONFIG.hostClass = 'app-iconbutton-toggle'\n }else{\n WIDGET_CONFIG.hostClass = DEFAULT_CLS\n }\n super(inj, WIDGET_CONFIG, explicitContext);\n\n this._checkedvalue = unStringify(checkedVal, true);\n this._uncheckedvalue = unStringify(uncheckedVal, false);\n\n // if the type of the checkbox is toggle update the related classes on the host node\n toggleClass(this.nativeElement, 'app-toggle', type === 'toggle');\n }\n\n onPropertyChange(key, nv, ov) {\n if (key === 'tabindex') {\n return;\n }\n if (key === 'required') {\n this._onChange(this.datavalue);\n return;\n }\n\n if (key === 'caption') {\n if (!isDefined(nv) || nv === '') {\n this._caption = '&nbsp;';\n } else {\n this._caption = nv;\n }\n } else if (key === 'checkedvalue') {\n this._checkedvalue = unStringify(nv, true);\n } else if (key === 'uncheckedvalue') {\n this._uncheckedvalue = unStringify(nv, false);\n } else if (key === 'datavalue') {\n this.datavalue = unStringify(nv);\n this._onChange(this.datavalue);\n }else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n // change and blur events are handled from template\n protected handleEvent(node: HTMLElement, eventName: string, callback: Function, locals: any) {\n if (eventName !== 'change' && eventName !== 'blur') {\n // applying tap (Hammer event) on the label as the event handler is not getting triggered on the input.\n const $el = eventName === 'tap' ? this.nativeElement.querySelector('label') : this.checkboxEl.nativeElement;\n super.handleEvent($el, eventName, callback, locals);\n }\n }\n\n handleChange(newVal: boolean) {\n this.invokeOnChange(this.datavalue, {type: 'change'}, this.ngModel.valid);\n }\n\n @HostListener('keydown.enter', ['$event', '\"ENTER\"'])\n onKeyDown($event) {\n $event.preventDefault();\n this.checkboxEl.nativeElement.click();\n }\n\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n styler(this.nativeElement.querySelector('label'), this);\n }\n\n ngOnDestroy() {\n // MEMORY LEAK FIX: Clear ViewChild references\n this.ngModel = null;\n this.checkboxEl = null;\n\n // Call parent ngOnDestroy\n super.ngOnDestroy();\n }\n}\n","<label [ngClass]=\"{'unchecked': !proxyModel, 'disabled': (disabled || readonly), 'required': (required && _caption), 'icon-button-toggle': type === 'button'}\">\n <input type=\"checkbox\"\n #checkbox\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel\"\n focus-target\n [(ngModel)]=\"proxyModel\"\n [ngModelOptions]=\"{standalone: true}\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [disabled]=\"disabled || readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [tabindex]=\"tabindex\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\">\n <span class=\"caption\" [innerHtml]=\"_caption\" *ngIf=\"type != 'button' && type != 'toggle'\"></span>\n <!-- Icon toggle button -->\n <span class=\"caption fa-xs text-center\" *ngIf=\"type == 'toggle'\">\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaulticonclass]=\"'start-icon'\" *ngIf=\"!proxyModel\"></wm-app-icon> \n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaulticonclass]=\"'end-icon'\" *ngIf=\"proxyModel\"></wm-app-icon> \n </span>\n <wm-app-icon [iconclass]=\"unselectedicon\" [iconurl]=\"unselectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Unselected icon'\" *ngIf=\"type === 'button' && !proxyModel\"></wm-app-icon>\n <wm-app-icon [iconclass]=\"selectedicon\" [iconurl]=\"selectediconurl\" [defaultIconClass]=\"'toggle-icon'\" [alt]=\"'Selected icon'\" *ngIf=\"proxyModel && type === 'button'\"></wm-app-icon>\n <img alt=\"Checkbox Image\" aria-hidden=\"true\" src=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"switch\"/>\n</label>\n<input type=\"hidden\" class=\"ng-hide model-holder\" aria-hidden=\"true\" tabindex=\"-1\" [disabled]=\"disabled\" [value]=\"proxyModel\">\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -648,7 +648,8 @@
648
648
  // setTimeout is used so that by then time input has the updated value. focus is setting back to the input field
649
649
  this.elementScope.ngZone.runOutsideAngular(() => {
650
650
  setTimeout(() => {
651
- $('timepicker .form-group').first().find('> input.form-control').focus();
651
+ const hoursInput = $('timepicker .form-group').first().find('> input.form-control')[0];
652
+ hoursInput?.focus({ preventScroll: true });
652
653
  }, 10);
653
654
  });
654
655
  }
@@ -637,7 +637,8 @@ class BaseDateTimeComponent extends BaseFormCustomComponent {
637
637
  // setTimeout is used so that by then time input has the updated value. focus is setting back to the input field
638
638
  this.elementScope.ngZone.runOutsideAngular(() => {
639
639
  setTimeout(() => {
640
- $('timepicker .form-group').first().find('> input.form-control').focus();
640
+ const hoursInput = $('timepicker .form-group').first().find('> input.form-control')[0];
641
+ hoursInput?.focus({ preventScroll: true });
641
642
  }, 10);
642
643
  });
643
644
  }