igniteui-angular 22.1.0-beta.2 → 22.1.0-beta.4

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 (124) hide show
  1. package/fesm2022/igniteui-angular-accordion.mjs +7 -7
  2. package/fesm2022/igniteui-angular-action-strip.mjs +10 -10
  3. package/fesm2022/igniteui-angular-avatar.mjs +7 -7
  4. package/fesm2022/igniteui-angular-badge.mjs +7 -7
  5. package/fesm2022/igniteui-angular-banner.mjs +11 -11
  6. package/fesm2022/igniteui-angular-banner.mjs.map +1 -1
  7. package/fesm2022/igniteui-angular-bottom-nav.mjs +27 -24
  8. package/fesm2022/igniteui-angular-bottom-nav.mjs.map +1 -1
  9. package/fesm2022/igniteui-angular-button-group.mjs +7 -7
  10. package/fesm2022/igniteui-angular-calendar.mjs +65 -65
  11. package/fesm2022/igniteui-angular-calendar.mjs.map +1 -1
  12. package/fesm2022/igniteui-angular-card.mjs +39 -34
  13. package/fesm2022/igniteui-angular-card.mjs.map +1 -1
  14. package/fesm2022/igniteui-angular-carousel.mjs +22 -22
  15. package/fesm2022/igniteui-angular-chat-extras.mjs +6 -6
  16. package/fesm2022/igniteui-angular-chat.mjs +12 -12
  17. package/fesm2022/igniteui-angular-checkbox.mjs +7 -7
  18. package/fesm2022/igniteui-angular-chips.mjs +11 -11
  19. package/fesm2022/igniteui-angular-chips.mjs.map +1 -1
  20. package/fesm2022/igniteui-angular-combo.mjs +55 -55
  21. package/fesm2022/igniteui-angular-combo.mjs.map +1 -1
  22. package/fesm2022/igniteui-angular-core.mjs +54 -54
  23. package/fesm2022/igniteui-angular-date-picker.mjs +38 -38
  24. package/fesm2022/igniteui-angular-dialog.mjs +17 -15
  25. package/fesm2022/igniteui-angular-dialog.mjs.map +1 -1
  26. package/fesm2022/igniteui-angular-directives.mjs +219 -193
  27. package/fesm2022/igniteui-angular-directives.mjs.map +1 -1
  28. package/fesm2022/igniteui-angular-drop-down.mjs +30 -30
  29. package/fesm2022/igniteui-angular-drop-down.mjs.map +1 -1
  30. package/fesm2022/igniteui-angular-expansion-panel.mjs +34 -30
  31. package/fesm2022/igniteui-angular-expansion-panel.mjs.map +1 -1
  32. package/fesm2022/igniteui-angular-grids-core.mjs +433 -431
  33. package/fesm2022/igniteui-angular-grids-core.mjs.map +1 -1
  34. package/fesm2022/igniteui-angular-grids-grid.mjs +58 -53
  35. package/fesm2022/igniteui-angular-grids-grid.mjs.map +1 -1
  36. package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs +39 -39
  37. package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs.map +1 -1
  38. package/fesm2022/igniteui-angular-grids-lite.mjs +12 -12
  39. package/fesm2022/igniteui-angular-grids-pivot-grid.mjs +82 -82
  40. package/fesm2022/igniteui-angular-grids-pivot-grid.mjs.map +1 -1
  41. package/fesm2022/igniteui-angular-grids-tree-grid.mjs +57 -57
  42. package/fesm2022/igniteui-angular-grids-tree-grid.mjs.map +1 -1
  43. package/fesm2022/igniteui-angular-icon.mjs +11 -11
  44. package/fesm2022/igniteui-angular-icon.mjs.map +1 -1
  45. package/fesm2022/igniteui-angular-input-group.mjs +26 -26
  46. package/fesm2022/igniteui-angular-input-group.mjs.map +1 -1
  47. package/fesm2022/igniteui-angular-list.mjs +46 -42
  48. package/fesm2022/igniteui-angular-list.mjs.map +1 -1
  49. package/fesm2022/igniteui-angular-navbar.mjs +18 -15
  50. package/fesm2022/igniteui-angular-navbar.mjs.map +1 -1
  51. package/fesm2022/igniteui-angular-navigation-drawer.mjs +21 -18
  52. package/fesm2022/igniteui-angular-navigation-drawer.mjs.map +1 -1
  53. package/fesm2022/igniteui-angular-paginator.mjs +19 -19
  54. package/fesm2022/igniteui-angular-progressbar.mjs +19 -19
  55. package/fesm2022/igniteui-angular-query-builder.mjs +23 -23
  56. package/fesm2022/igniteui-angular-query-builder.mjs.map +1 -1
  57. package/fesm2022/igniteui-angular-radio.mjs +10 -10
  58. package/fesm2022/igniteui-angular-select.mjs +27 -27
  59. package/fesm2022/igniteui-angular-select.mjs.map +1 -1
  60. package/fesm2022/igniteui-angular-simple-combo.mjs +9 -9
  61. package/fesm2022/igniteui-angular-simple-combo.mjs.map +1 -1
  62. package/fesm2022/igniteui-angular-slider.mjs +28 -28
  63. package/fesm2022/igniteui-angular-snackbar.mjs +8 -8
  64. package/fesm2022/igniteui-angular-snackbar.mjs.map +1 -1
  65. package/fesm2022/igniteui-angular-splitter.mjs +13 -13
  66. package/fesm2022/igniteui-angular-stepper.mjs +42 -39
  67. package/fesm2022/igniteui-angular-stepper.mjs.map +1 -1
  68. package/fesm2022/igniteui-angular-switch.mjs +7 -7
  69. package/fesm2022/igniteui-angular-tabs.mjs +39 -37
  70. package/fesm2022/igniteui-angular-tabs.mjs.map +1 -1
  71. package/fesm2022/igniteui-angular-time-picker.mjs +21 -21
  72. package/fesm2022/igniteui-angular-time-picker.mjs.map +1 -1
  73. package/fesm2022/igniteui-angular-toast.mjs +10 -9
  74. package/fesm2022/igniteui-angular-toast.mjs.map +1 -1
  75. package/fesm2022/igniteui-angular-tree.mjs +30 -30
  76. package/fesm2022/igniteui-angular-tree.mjs.map +1 -1
  77. package/lib/core/styles/components/button/_button-theme.scss +13 -12
  78. package/lib/core/styles/components/highlight/highlight-theme.scss +1 -6
  79. package/lib/core/styles/components/icon-button/_icon-button-theme.scss +5 -7
  80. package/lib/core/styles/components/label/_label-theme.scss +1 -6
  81. package/lib/core/styles/components/rating/_rating-theme.scss +1 -6
  82. package/lib/core/styles/components/ripple/_ripple-theme.scss +1 -6
  83. package/lib/core/styles/components/tooltip/_tooltip-theme.scss +1 -6
  84. package/lib/core/styles/themes/generators/_base.scss +6 -2
  85. package/lib/core/styles/typography/_typography.scss +3 -5
  86. package/package.json +2 -2
  87. package/styles/igniteui-angular-dark.css +1 -1
  88. package/styles/igniteui-angular.css +1 -1
  89. package/styles/igniteui-bootstrap-dark.css +1 -1
  90. package/styles/igniteui-bootstrap-light.css +1 -1
  91. package/styles/igniteui-dark-green.css +1 -1
  92. package/styles/igniteui-fluent-dark-excel.css +1 -1
  93. package/styles/igniteui-fluent-dark-word.css +1 -1
  94. package/styles/igniteui-fluent-dark.css +1 -1
  95. package/styles/igniteui-fluent-light-excel.css +1 -1
  96. package/styles/igniteui-fluent-light-word.css +1 -1
  97. package/styles/igniteui-fluent-light.css +1 -1
  98. package/styles/igniteui-indigo-dark.css +1 -1
  99. package/styles/igniteui-indigo-light.css +1 -1
  100. package/styles/maps/igniteui-angular-dark.css.map +1 -1
  101. package/styles/maps/igniteui-angular.css.map +1 -1
  102. package/styles/maps/igniteui-bootstrap-dark.css.map +1 -1
  103. package/styles/maps/igniteui-bootstrap-light.css.map +1 -1
  104. package/styles/maps/igniteui-dark-green.css.map +1 -1
  105. package/styles/maps/igniteui-fluent-dark-excel.css.map +1 -1
  106. package/styles/maps/igniteui-fluent-dark-word.css.map +1 -1
  107. package/styles/maps/igniteui-fluent-dark.css.map +1 -1
  108. package/styles/maps/igniteui-fluent-light-excel.css.map +1 -1
  109. package/styles/maps/igniteui-fluent-light-word.css.map +1 -1
  110. package/styles/maps/igniteui-fluent-light.css.map +1 -1
  111. package/styles/maps/igniteui-indigo-dark.css.map +1 -1
  112. package/styles/maps/igniteui-indigo-light.css.map +1 -1
  113. package/types/igniteui-angular-bottom-nav.d.ts +2 -1
  114. package/types/igniteui-angular-card.d.ts +4 -3
  115. package/types/igniteui-angular-dialog.d.ts +2 -1
  116. package/types/igniteui-angular-directives.d.ts +17 -1
  117. package/types/igniteui-angular-expansion-panel.d.ts +3 -2
  118. package/types/igniteui-angular-grids-core.d.ts +2 -1
  119. package/types/igniteui-angular-list.d.ts +3 -2
  120. package/types/igniteui-angular-navbar.d.ts +2 -1
  121. package/types/igniteui-angular-navigation-drawer.d.ts +2 -1
  122. package/types/igniteui-angular-stepper.d.ts +3 -2
  123. package/types/igniteui-angular-tabs.d.ts +2 -1
  124. package/types/igniteui-angular-toast.d.ts +2 -1
@@ -3,7 +3,8 @@ import { inject, ChangeDetectorRef, ElementRef, EventEmitter, booleanAttribute,
3
3
  import { Subject } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
5
  import { GlobalPositionStrategy, IgxNavigationService, NoOpScrollStrategy } from 'igniteui-angular/core';
6
- import { IgxToggleDirective, IgxFocusTrapDirective, IgxFocusDirective, IgxButtonDirective, IgxRippleDirective } from 'igniteui-angular/directives';
6
+ import * as i1 from 'igniteui-angular/directives';
7
+ import { IgxToggleDirective, IgxFocusTrapDirective, IgxFocusDirective, IgxButtonDirective, IgxRippleDirective, IgxNoTypographyDirective } from 'igniteui-angular/directives';
7
8
  import { fadeOut, fadeIn } from 'igniteui-angular/animations';
8
9
 
9
10
  let DIALOG_ID = 0;
@@ -475,10 +476,10 @@ class IgxDialogComponent {
475
476
  emitOpenedFromDialog(eventArgs) {
476
477
  this.opened.emit({ dialog: this, event: eventArgs.event });
477
478
  }
478
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
479
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.0", type: IgxDialogComponent, isStandalone: true, selector: "igx-dialog", inputs: { id: "id", isModal: ["isModal", "isModal", booleanAttribute], closeOnEscape: ["closeOnEscape", "closeOnEscape", booleanAttribute], focusTrap: ["focusTrap", "focusTrap", booleanAttribute], title: "title", message: "message", leftButtonLabel: "leftButtonLabel", leftButtonType: "leftButtonType", leftButtonRipple: "leftButtonRipple", rightButtonLabel: "rightButtonLabel", rightButtonType: "rightButtonType", rightButtonRipple: "rightButtonRipple", closeOnOutsideSelect: ["closeOnOutsideSelect", "closeOnOutsideSelect", booleanAttribute], positionSettings: "positionSettings", isOpen: ["isOpen", "isOpen", booleanAttribute], role: "role", titleId: "titleId" }, outputs: { opening: "opening", opened: "opened", closing: "closing", closed: "closed", leftButtonSelect: "leftButtonSelect", rightButtonSelect: "rightButtonSelect", isOpenChange: "isOpenChange" }, host: { properties: { "attr.id": "this.id", "attr.tabindex": "this.tabindex", "class.igx-dialog--hidden": "this.isCollapsed" } }, viewQueries: [{ propertyName: "toggleRef", first: true, predicate: IgxToggleDirective, descendants: true, static: true }], ngImport: i0, template: "<div\n tabindex=\"0\"\n #dialog\n class=\"igx-dialog\"\n igxToggle\n [igxFocusTrap]=\"focusTrap\"\n (click)=\"onDialogSelected($event)\"\n>\n <div\n #dialogWindow\n class=\"igx-dialog__window\"\n [attr.role]=\"role\"\n [attr.aria-labelledby]=\"titleId\"\n >\n @if (title) {\n <div [attr.id]=\"titleId\" class=\"igx-dialog__window-title\">\n {{ title }}\n </div>\n }\n @if (!title) {\n <ng-content select=\"igx-dialog-title,[igxDialogTitle]\"></ng-content>\n }\n\n <div class=\"igx-dialog__window-content\">\n @if (message) {\n <span class=\"igx-dialog__window-message\">\n {{ message }}\n </span>\n }\n @if (!message) {\n <ng-content></ng-content>\n }\n </div>\n\n @if (leftButtonLabel || rightButtonLabel) {\n <div class=\"igx-dialog__window-actions\">\n @if (leftButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"leftButtonType\"\n igxRipple=\"{{ leftButtonRipple }}\"\n (click)=\"onInternalLeftButtonSelect($event)\"\n >\n {{ leftButtonLabel }}\n </button>\n }\n @if (rightButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"rightButtonType\"\n igxRipple=\"{{ rightButtonRipple }}\"\n (click)=\"onInternalRightButtonSelect($event)\"\n >\n {{ rightButtonLabel }}\n </button>\n }\n </div>\n }\n @if (!leftButtonLabel && !rightButtonLabel) {\n <ng-content select=\"igx-dialog-actions,[igxDialogActions]\"></ng-content>\n }\n </div>\n</div>\n", styles: ["@layer ig.base{.igx-dialog{outline-style:none}.igx-dialog__window{position:relative;min-width:var(--min-width);border:.0625rem solid var(--border-color);border-radius:var(--border-radius);background:var(--background);box-shadow:var(--elevation);overflow:hidden}.igx-dialog__window .igx-calendar{min-width:20rem}.igx-dialog__window .igx-calendar--vertical{min-width:31rem}.igx-dialog__window-title{font-family:var(--ig-h6-font-family, var(--ig-font-family));font-size:var(--ig-h6-font-size);font-weight:var(--ig-h6-font-weight);font-style:var(--ig-h6-font-style);line-height:var(--ig-h6-line-height);letter-spacing:var(--ig-h6-letter-spacing);text-transform:var(--ig-h6-text-transform);margin-top:var(--ig-h6-margin-top);margin-bottom:var(--ig-h6-margin-bottom);margin:0;display:flex;color:var(--title-color);padding:var(--title-padding)}.igx-dialog__window-content{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom);margin:0;color:var(--message-color);padding:var(--message-padding);position:relative;z-index:0}.igx-dialog__window-message{display:inline-block;max-width:40ch}.igx-dialog__window-actions{display:flex;flex-flow:row nowrap;justify-content:flex-end;padding:var(--actions-padding);gap:.5rem}.igx-dialog--hidden{display:none}}@layer ig.material{@container style(--ig-theme: material){.igx-dialog{--min-width: 17.5rem;--title-padding: 1rem 1.5rem 0rem 1.5rem;--message-padding: .875rem 1.5rem;--actions-padding: 0 .5rem .5rem}}}@layer ig.bootstrap{@container style(--ig-theme: bootstrap){.igx-dialog{--min-width: 18rem;--title-padding: 1rem;--message-padding: 1rem;--actions-padding: 1rem}.igx-dialog__window-title{font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom);margin:0;border-bottom:.0625rem solid var(--border-color)}.igx-dialog__window-actions{border-top:.0625rem solid var(--border-color)}}}@layer ig.fluent{@container style(--ig-theme: fluent){.igx-dialog{--min-width: 18rem;--title-padding: 1rem 1.5rem 1.5rem 1.5rem;--message-padding: 0 1.5rem 1.25rem 1.5rem;--actions-padding: 0 1.5rem 1.5rem 1.5rem}.igx-dialog__window-content{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}}}@layer ig.indigo{@container style(--ig-theme: indigo){.igx-dialog{--title-padding: 1.5rem 1.5rem 0 1.5rem;--message-padding: 1rem 1.5rem;--actions-padding: 1rem 1.5rem 1.5rem 1.5rem}.igx-dialog__window-title{font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom)}.igx-dialog__window-actions{gap:1rem}}}\n"], dependencies: [{ kind: "directive", type: IgxToggleDirective, selector: "[igxToggle]", inputs: ["id"], outputs: ["opened", "opening", "closed", "closing", "appended"], exportAs: ["toggle"] }, { kind: "directive", type: IgxFocusTrapDirective, selector: "[igxFocusTrap]", inputs: ["igxFocusTrap"] }, { kind: "directive", type: IgxFocusDirective, selector: "[igxFocus]", inputs: ["igxFocus"], exportAs: ["igxFocus"] }, { kind: "directive", type: IgxButtonDirective, selector: "[igxButton]", inputs: ["selected", "igxButton", "igxLabel"], outputs: ["buttonSelected"] }, { kind: "directive", type: IgxRippleDirective, selector: "[igxRipple]", inputs: ["igxRippleTarget", "igxRipple", "igxRippleDuration", "igxRippleCentered", "igxRippleDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None }); }
479
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
480
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.1", type: IgxDialogComponent, isStandalone: true, selector: "igx-dialog", inputs: { id: "id", isModal: ["isModal", "isModal", booleanAttribute], closeOnEscape: ["closeOnEscape", "closeOnEscape", booleanAttribute], focusTrap: ["focusTrap", "focusTrap", booleanAttribute], title: "title", message: "message", leftButtonLabel: "leftButtonLabel", leftButtonType: "leftButtonType", leftButtonRipple: "leftButtonRipple", rightButtonLabel: "rightButtonLabel", rightButtonType: "rightButtonType", rightButtonRipple: "rightButtonRipple", closeOnOutsideSelect: ["closeOnOutsideSelect", "closeOnOutsideSelect", booleanAttribute], positionSettings: "positionSettings", isOpen: ["isOpen", "isOpen", booleanAttribute], role: "role", titleId: "titleId" }, outputs: { opening: "opening", opened: "opened", closing: "closing", closed: "closed", leftButtonSelect: "leftButtonSelect", rightButtonSelect: "rightButtonSelect", isOpenChange: "isOpenChange" }, host: { properties: { "attr.id": "this.id", "attr.tabindex": "this.tabindex", "class.igx-dialog--hidden": "this.isCollapsed" } }, viewQueries: [{ propertyName: "toggleRef", first: true, predicate: IgxToggleDirective, descendants: true, static: true }], ngImport: i0, template: "<div\n tabindex=\"0\"\n #dialog\n class=\"igx-dialog\"\n igxToggle\n [igxFocusTrap]=\"focusTrap\"\n (click)=\"onDialogSelected($event)\"\n>\n <div\n #dialogWindow\n class=\"igx-dialog__window\"\n [attr.role]=\"role\"\n [attr.aria-labelledby]=\"titleId\"\n >\n @if (title) {\n <div [attr.id]=\"titleId\" class=\"igx-dialog__window-title\">\n {{ title }}\n </div>\n }\n @if (!title) {\n <ng-content select=\"igx-dialog-title,[igxDialogTitle]\"></ng-content>\n }\n\n <div class=\"igx-dialog__window-content\">\n @if (message) {\n <span class=\"igx-dialog__window-message\">\n {{ message }}\n </span>\n }\n @if (!message) {\n <ng-content></ng-content>\n }\n </div>\n\n @if (leftButtonLabel || rightButtonLabel) {\n <div class=\"igx-dialog__window-actions\">\n @if (leftButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"leftButtonType\"\n igxRipple=\"{{ leftButtonRipple }}\"\n (click)=\"onInternalLeftButtonSelect($event)\"\n >\n {{ leftButtonLabel }}\n </button>\n }\n @if (rightButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"rightButtonType\"\n igxRipple=\"{{ rightButtonRipple }}\"\n (click)=\"onInternalRightButtonSelect($event)\"\n >\n {{ rightButtonLabel }}\n </button>\n }\n </div>\n }\n @if (!leftButtonLabel && !rightButtonLabel) {\n <ng-content select=\"igx-dialog-actions,[igxDialogActions]\"></ng-content>\n }\n </div>\n</div>\n", styles: ["@layer ig.base{.igx-dialog{outline-style:none}.igx-dialog__window{position:relative;min-width:var(--min-width);border:.0625rem solid var(--border-color);border-radius:var(--border-radius);background:var(--background);box-shadow:var(--elevation);overflow:hidden}.igx-dialog__window .igx-calendar{min-width:20rem}.igx-dialog__window .igx-calendar--vertical{min-width:31rem}.igx-dialog__window-title{font-family:var(--ig-h6-font-family, var(--ig-font-family));font-size:var(--ig-h6-font-size);font-weight:var(--ig-h6-font-weight);font-style:var(--ig-h6-font-style);line-height:var(--ig-h6-line-height);letter-spacing:var(--ig-h6-letter-spacing);text-transform:var(--ig-h6-text-transform);margin-top:var(--ig-h6-margin-top);margin-bottom:var(--ig-h6-margin-bottom);margin:0;display:flex;color:var(--title-color);padding:var(--title-padding)}.igx-dialog__window-content{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom);margin:0;color:var(--message-color);padding:var(--message-padding);position:relative;z-index:0}.igx-dialog__window-message{display:inline-block;max-width:40ch}.igx-dialog__window-actions{display:flex;flex-flow:row nowrap;justify-content:flex-end;padding:var(--actions-padding);gap:.5rem}.igx-dialog--hidden{display:none}}@layer ig.material{@container style(--ig-theme: material){.igx-dialog{--min-width: 17.5rem;--title-padding: 1rem 1.5rem 0rem 1.5rem;--message-padding: .875rem 1.5rem;--actions-padding: 0 .5rem .5rem}}}@layer ig.bootstrap{@container style(--ig-theme: bootstrap){.igx-dialog{--min-width: 18rem;--title-padding: 1rem;--message-padding: 1rem;--actions-padding: 1rem}.igx-dialog__window-title{font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom);margin:0;border-bottom:.0625rem solid var(--border-color)}.igx-dialog__window-actions{border-top:.0625rem solid var(--border-color)}}}@layer ig.fluent{@container style(--ig-theme: fluent){.igx-dialog{--min-width: 18rem;--title-padding: 1rem 1.5rem 1.5rem 1.5rem;--message-padding: 0 1.5rem 1.25rem 1.5rem;--actions-padding: 0 1.5rem 1.5rem 1.5rem}.igx-dialog__window-content{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}}}@layer ig.indigo{@container style(--ig-theme: indigo){.igx-dialog{--title-padding: 1.5rem 1.5rem 0 1.5rem;--message-padding: 1rem 1.5rem;--actions-padding: 1rem 1.5rem 1.5rem 1.5rem}.igx-dialog__window-title{font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom)}.igx-dialog__window-actions{gap:1rem}}}\n"], dependencies: [{ kind: "directive", type: IgxToggleDirective, selector: "[igxToggle]", inputs: ["id"], outputs: ["opened", "opening", "closed", "closing", "appended"], exportAs: ["toggle"] }, { kind: "directive", type: IgxFocusTrapDirective, selector: "[igxFocusTrap]", inputs: ["igxFocusTrap"] }, { kind: "directive", type: IgxFocusDirective, selector: "[igxFocus]", inputs: ["igxFocus"], exportAs: ["igxFocus"] }, { kind: "directive", type: IgxButtonDirective, selector: "[igxButton]", inputs: ["selected", "igxButton", "igxLabel"], outputs: ["buttonSelected"] }, { kind: "directive", type: IgxRippleDirective, selector: "[igxRipple]", inputs: ["igxRippleTarget", "igxRipple", "igxRippleDuration", "igxRippleCentered", "igxRippleDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None }); }
480
481
  }
481
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogComponent, decorators: [{
482
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogComponent, decorators: [{
482
483
  type: Component,
483
484
  args: [{ selector: 'igx-dialog', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxToggleDirective, IgxFocusTrapDirective, IgxFocusDirective, IgxButtonDirective, IgxRippleDirective], template: "<div\n tabindex=\"0\"\n #dialog\n class=\"igx-dialog\"\n igxToggle\n [igxFocusTrap]=\"focusTrap\"\n (click)=\"onDialogSelected($event)\"\n>\n <div\n #dialogWindow\n class=\"igx-dialog__window\"\n [attr.role]=\"role\"\n [attr.aria-labelledby]=\"titleId\"\n >\n @if (title) {\n <div [attr.id]=\"titleId\" class=\"igx-dialog__window-title\">\n {{ title }}\n </div>\n }\n @if (!title) {\n <ng-content select=\"igx-dialog-title,[igxDialogTitle]\"></ng-content>\n }\n\n <div class=\"igx-dialog__window-content\">\n @if (message) {\n <span class=\"igx-dialog__window-message\">\n {{ message }}\n </span>\n }\n @if (!message) {\n <ng-content></ng-content>\n }\n </div>\n\n @if (leftButtonLabel || rightButtonLabel) {\n <div class=\"igx-dialog__window-actions\">\n @if (leftButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"leftButtonType\"\n igxRipple=\"{{ leftButtonRipple }}\"\n (click)=\"onInternalLeftButtonSelect($event)\"\n >\n {{ leftButtonLabel }}\n </button>\n }\n @if (rightButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"rightButtonType\"\n igxRipple=\"{{ rightButtonRipple }}\"\n (click)=\"onInternalRightButtonSelect($event)\"\n >\n {{ rightButtonLabel }}\n </button>\n }\n </div>\n }\n @if (!leftButtonLabel && !rightButtonLabel) {\n <ng-content select=\"igx-dialog-actions,[igxDialogActions]\"></ng-content>\n }\n </div>\n</div>\n", styles: ["@layer ig.base{.igx-dialog{outline-style:none}.igx-dialog__window{position:relative;min-width:var(--min-width);border:.0625rem solid var(--border-color);border-radius:var(--border-radius);background:var(--background);box-shadow:var(--elevation);overflow:hidden}.igx-dialog__window .igx-calendar{min-width:20rem}.igx-dialog__window .igx-calendar--vertical{min-width:31rem}.igx-dialog__window-title{font-family:var(--ig-h6-font-family, var(--ig-font-family));font-size:var(--ig-h6-font-size);font-weight:var(--ig-h6-font-weight);font-style:var(--ig-h6-font-style);line-height:var(--ig-h6-line-height);letter-spacing:var(--ig-h6-letter-spacing);text-transform:var(--ig-h6-text-transform);margin-top:var(--ig-h6-margin-top);margin-bottom:var(--ig-h6-margin-bottom);margin:0;display:flex;color:var(--title-color);padding:var(--title-padding)}.igx-dialog__window-content{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom);margin:0;color:var(--message-color);padding:var(--message-padding);position:relative;z-index:0}.igx-dialog__window-message{display:inline-block;max-width:40ch}.igx-dialog__window-actions{display:flex;flex-flow:row nowrap;justify-content:flex-end;padding:var(--actions-padding);gap:.5rem}.igx-dialog--hidden{display:none}}@layer ig.material{@container style(--ig-theme: material){.igx-dialog{--min-width: 17.5rem;--title-padding: 1rem 1.5rem 0rem 1.5rem;--message-padding: .875rem 1.5rem;--actions-padding: 0 .5rem .5rem}}}@layer ig.bootstrap{@container style(--ig-theme: bootstrap){.igx-dialog{--min-width: 18rem;--title-padding: 1rem;--message-padding: 1rem;--actions-padding: 1rem}.igx-dialog__window-title{font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom);margin:0;border-bottom:.0625rem solid var(--border-color)}.igx-dialog__window-actions{border-top:.0625rem solid var(--border-color)}}}@layer ig.fluent{@container style(--ig-theme: fluent){.igx-dialog{--min-width: 18rem;--title-padding: 1rem 1.5rem 1.5rem 1.5rem;--message-padding: 0 1.5rem 1.25rem 1.5rem;--actions-padding: 0 1.5rem 1.5rem 1.5rem}.igx-dialog__window-content{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}}}@layer ig.indigo{@container style(--ig-theme: indigo){.igx-dialog{--title-padding: 1.5rem 1.5rem 0 1.5rem;--message-padding: 1rem 1.5rem;--actions-padding: 1rem 1.5rem 1.5rem 1.5rem}.igx-dialog__window-title{font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom)}.igx-dialog__window-actions{gap:1rem}}}\n"] }]
484
485
  }], ctorParameters: () => [], propDecorators: { toggleRef: [{
@@ -555,14 +556,15 @@ class IgxDialogTitleDirective {
555
556
  constructor() {
556
557
  this.defaultStyle = true;
557
558
  }
558
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
559
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.0", type: IgxDialogTitleDirective, isStandalone: true, selector: "[igxDialogTitle],igx-dialog-title", host: { properties: { "class.igx-dialog__window-title": "this.defaultStyle" } }, ngImport: i0 }); }
559
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
560
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.1", type: IgxDialogTitleDirective, isStandalone: true, selector: "[igxDialogTitle],igx-dialog-title", host: { properties: { "class.igx-dialog__window-title": "this.defaultStyle" } }, hostDirectives: [{ directive: i1.IgxNoTypographyDirective }], ngImport: i0 }); }
560
561
  }
561
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogTitleDirective, decorators: [{
562
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogTitleDirective, decorators: [{
562
563
  type: Directive,
563
564
  args: [{
564
565
  selector: '[igxDialogTitle],igx-dialog-title',
565
- standalone: true
566
+ standalone: true,
567
+ hostDirectives: [IgxNoTypographyDirective]
566
568
  }]
567
569
  }], propDecorators: { defaultStyle: [{
568
570
  type: HostBinding,
@@ -575,10 +577,10 @@ class IgxDialogActionsDirective {
575
577
  constructor() {
576
578
  this.defaultClass = true;
577
579
  }
578
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogActionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
579
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.0", type: IgxDialogActionsDirective, isStandalone: true, selector: "[igxDialogActions],igx-dialog-actions", host: { properties: { "class.igx-dialog__window-actions": "this.defaultClass" } }, ngImport: i0 }); }
580
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogActionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
581
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.1", type: IgxDialogActionsDirective, isStandalone: true, selector: "[igxDialogActions],igx-dialog-actions", host: { properties: { "class.igx-dialog__window-actions": "this.defaultClass" } }, ngImport: i0 }); }
580
582
  }
581
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogActionsDirective, decorators: [{
583
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogActionsDirective, decorators: [{
582
584
  type: Directive,
583
585
  args: [{
584
586
  selector: '[igxDialogActions],igx-dialog-actions',
@@ -601,11 +603,11 @@ const IGX_DIALOG_DIRECTIVES = [
601
603
  * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components
602
604
  */
603
605
  class IgxDialogModule {
604
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
605
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogModule, imports: [IgxDialogComponent, IgxDialogTitleDirective, IgxDialogActionsDirective], exports: [IgxDialogComponent, IgxDialogTitleDirective, IgxDialogActionsDirective] }); }
606
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogModule }); }
606
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
607
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogModule, imports: [IgxDialogComponent, IgxDialogTitleDirective, IgxDialogActionsDirective], exports: [IgxDialogComponent, IgxDialogTitleDirective, IgxDialogActionsDirective] }); }
608
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogModule }); }
607
609
  }
608
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: IgxDialogModule, decorators: [{
610
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDialogModule, decorators: [{
609
611
  type: NgModule,
610
612
  args: [{
611
613
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"igniteui-angular-dialog.mjs","sources":["../../../projects/igniteui-angular/dialog/src/dialog/dialog.component.ts","../../../projects/igniteui-angular/dialog/src/dialog/dialog-content.component.html","../../../projects/igniteui-angular/dialog/src/dialog/dialog.directives.ts","../../../projects/igniteui-angular/dialog/src/dialog/public_api.ts","../../../projects/igniteui-angular/dialog/src/dialog/dialog.module.ts","../../../projects/igniteui-angular/dialog/src/igniteui-angular-dialog.ts"],"sourcesContent":["import {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n AfterContentInit,\n booleanAttribute,\n inject,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n ChangeDetectorRef\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { IgxNavigationService, IToggleView } from 'igniteui-angular/core';\nimport { IgxButtonType, IgxButtonDirective } from 'igniteui-angular/directives';\nimport { IgxRippleDirective } from 'igniteui-angular/directives';\nimport { IgxToggleDirective } from 'igniteui-angular/directives';\nimport { OverlaySettings, GlobalPositionStrategy, NoOpScrollStrategy, PositionSettings } from 'igniteui-angular/core';\nimport { IgxFocusDirective } from 'igniteui-angular/directives';\nimport { IgxFocusTrapDirective } from 'igniteui-angular/directives';\nimport { CancelableEventArgs, IBaseEventArgs } from 'igniteui-angular/core';\nimport { fadeIn, fadeOut } from 'igniteui-angular/animations';\n\nlet DIALOG_ID = 0;\n/**\n * **Ignite UI for Angular Dialog Window** -\n * [Documentation](https://www.infragistics.com/products/ignite-ui-angular/angular/components/dialog.html)\n *\n * The Ignite UI Dialog Window presents a dialog window to the user which can simply display messages or display\n * more complicated visuals such as a user sign-in form. It also provides a right and left button\n * which can be used for custom actions.\n *\n * Example:\n * ```html\n * <button type=\"button\" igxButton (click)=\"form.open()\">Show Dialog</button>\n * <igx-dialog #form title=\"Sign In\" rightButtonLabel=\"OK\">\n * <div>\n * <igx-input-group>\n * <input type=\"text\" igxInput/>\n * <label igxLabel>Username</label>\n * </igx-input-group>\n * </div>\n * <div>\n * <igx-input-group>\n * <input type=\"password\" igxInput/>\n * <label igxLabel>Password</label>\n * </igx-input-group>\n * </div>\n * </igx-dialog>\n * ```\n */\n@Component({\n selector: 'igx-dialog',\n templateUrl: 'dialog-content.component.html',\n styleUrl: 'dialog.component.css',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [IgxToggleDirective, IgxFocusTrapDirective, IgxFocusDirective, IgxButtonDirective, IgxRippleDirective]\n})\nexport class IgxDialogComponent implements IToggleView, OnInit, OnDestroy, AfterContentInit {\n private cdr = inject(ChangeDetectorRef);\n private elementRef = inject(ElementRef);\n private navService = inject(IgxNavigationService, { optional: true });\n\n private static NEXT_ID = 1;\n private static readonly DIALOG_CLASS = 'igx-dialog';\n\n\n\n @ViewChild(IgxToggleDirective, { static: true })\n public toggleRef: IgxToggleDirective;\n\n /**\n * Sets the value of the `id` attribute. If not provided it will be automatically generated.\n * ```html\n * <igx-dialog [id]=\"'igx-dialog-56'\" #alert title=\"Notification\"\n * leftButtonLabel=\"OK\" (leftButtonSelect)=\"alert.close()\">\n * </igx-dialog>\n * ```\n */\n @HostBinding('attr.id')\n @Input()\n public id = `igx-dialog-${DIALOG_ID++}`;\n\n /**\n * Controls whether the dialog should be shown as modal. Defaults to `true`\n * ```html\n * <igx-dialog [isModal]=\"false\" ></igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get isModal() {\n return this._isModal;\n }\n\n public set isModal(val: boolean) {\n this._overlayDefaultSettings.modal = val;\n this._isModal = val;\n }\n\n /**\n * Controls whether the dialog should close when `Esc` key is pressed. Defaults to `true`\n * ```html\n * <igx-dialog [closeOnEscape]=\"false\" ></igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get closeOnEscape() {\n return this._closeOnEscape;\n }\n\n public set closeOnEscape(val: boolean) {\n this._overlayDefaultSettings.closeOnEscape = val;\n this._closeOnEscape = val;\n }\n\n /**\n * Set whether the Tab key focus is trapped within the dialog when opened.\n * Defaults to `true`.\n * ```html\n * <igx-dialog focusTrap=\"false\"\"></igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public focusTrap = true;\n\n /**\n * Sets the title of the dialog.\n * ```html\n * <igx-dialog title=\"Notification\" #alert leftButtonLabel=\"OK\" (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public title = '';\n\n /**\n * Sets the message text of the dialog.\n * ```html\n * <igx-dialog message=\"Your email was sent!\" #alert leftButtonLabel=\"OK\" (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public message = '';\n\n /**\n * Sets the `label` of the left button of the dialog.\n * ```html\n * <igx-dialog leftButtonLabel=\"OKAY\" #alert title=\"Notification\" (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public leftButtonLabel = '';\n\n /**\n * Sets the left button `type`. The types are `flat`, `contained` and `fab`.\n * The `flat` type button is a rectangle and doesn't have a shadow. <br>\n * The `contained` type button is also a rectangle but has a shadow. <br>\n * The `fab` type button is a circle with a shadow. <br>\n * The default value is `flat`.\n * ```html\n * <igx-dialog leftButtonType=\"contained\" leftButtonLabel=\"OKAY\" #alert (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public leftButtonType: IgxButtonType = 'flat';\n\n /**\n * Sets the left button `ripple`. The `ripple` animates a click/tap to a component as a series of fading waves.\n * The property accepts all valid CSS color property values.\n * ```html\n * <igx-dialog leftButtonRipple=\"green\" leftButtonLabel=\"OKAY\" #alert (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public leftButtonRipple = '';\n\n /**\n * Sets the `label` of the right button of the dialog.\n * ```html\n * <igx-dialog rightButtonLabel=\"OKAY\" #alert title=\"Notification\" (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public rightButtonLabel = '';\n\n /**\n * Sets the right button `type`. The types are `flat`, `contained` and `fab`.\n * The `flat` type button is a rectangle and doesn't have a shadow. <br>\n * The `contained` type button is also a rectangle but has a shadow. <br>\n * The `fab` type button is a circle with a shadow. <br>\n * The default value is `flat`.\n * ```html\n * <igx-dialog rightButtonType=\"fab\" rightButtonLabel=\"OKAY\" #alert (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public rightButtonType: IgxButtonType = 'flat';\n\n /**\n * Sets the right button `ripple`.\n * ```html\n * <igx-dialog rightButtonRipple=\"green\" rightButtonLabel=\"OKAY\" #alert (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public rightButtonRipple = '';\n\n /**\n * Gets/Sets whether the dialog should close on click outside the component. By default it's false.\n * ```html\n * <igx-dialog closeOnOutsideSelect=\"true\" leftButtonLabel=\"Cancel\" (leftButtonSelect)=\"dialog.close()\"\n * rightButtonLabel=\"OK\" rightButtonRipple=\"#4CAF50\" (rightButtonSelect)=\"onDialogOKSelected($event)\">\n * </igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get closeOnOutsideSelect() {\n return this._closeOnOutsideSelect;\n }\n\n public set closeOnOutsideSelect(val: boolean) {\n this._overlayDefaultSettings.closeOnOutsideClick = val;\n this._closeOnOutsideSelect = val;\n }\n\n /**\n * Get the position and animation settings used by the dialog.\n * ```typescript\n * @ViewChild('alert', { static: true }) public alert: IgxDialogComponent;\n * let currentPosition: PositionSettings = this.alert.positionSettings\n * ```\n */\n @Input()\n public get positionSettings(): PositionSettings {\n return this._positionSettings;\n }\n\n /**\n * Set the position and animation settings used by the dialog.\n * ```typescript\n * import { slideInLeft, slideOutRight } from 'igniteui-angular';\n * ...\n * @ViewChild('alert', { static: true }) public alert: IgxDialogComponent;\n * public newPositionSettings: PositionSettings = {\n * openAnimation: useAnimation(slideInTop, { params: { duration: '2000ms' } }),\n * closeAnimation: useAnimation(slideOutBottom, { params: { duration: '2000ms'} }),\n * horizontalDirection: HorizontalAlignment.Left,\n * verticalDirection: VerticalAlignment.Middle,\n * horizontalStartPoint: HorizontalAlignment.Left,\n * verticalStartPoint: VerticalAlignment.Middle,\n * minSize: { height: 100, width: 100 }\n * };\n * this.alert.positionSettings = this.newPositionSettings;\n * ```\n */\n public set positionSettings(settings: PositionSettings) {\n this._positionSettings = settings;\n this._overlayDefaultSettings.positionStrategy = new GlobalPositionStrategy(this._positionSettings);\n }\n\n /**\n * The default `tabindex` attribute for the component\n *\n * @hidden\n */\n @HostBinding('attr.tabindex')\n public tabindex = -1;\n\n /**\n * An event that is emitted before the dialog is opened.\n * ```html\n * <igx-dialog (opening)=\"onDialogOpenHandler($event)\" (leftButtonSelect)=\"dialog.close()\" rightButtonLabel=\"OK\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public opening = new EventEmitter<IDialogCancellableEventArgs>();\n\n /**\n * An event that is emitted after the dialog is opened.\n * ```html\n * <igx-dialog (opened)=\"onDialogOpenedHandler($event)\" (leftButtonSelect)=\"dialog.close()\" rightButtonLabel=\"OK\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public opened = new EventEmitter<IDialogEventArgs>();\n\n /**\n * An event that is emitted before the dialog is closed.\n * ```html\n * <igx-dialog (closing)=\"onDialogCloseHandler($event)\" title=\"Confirmation\" leftButtonLabel=\"Cancel\" rightButtonLabel=\"OK\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public closing = new EventEmitter<IDialogCancellableEventArgs>();\n\n /**\n * An event that is emitted after the dialog is closed.\n * ```html\n * <igx-dialog (closed)=\"onDialogClosedHandler($event)\" title=\"Confirmation\" leftButtonLabel=\"Cancel\" rightButtonLabel=\"OK\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public closed = new EventEmitter<IDialogEventArgs>();\n\n /**\n * An event that is emitted when the left button is clicked.\n * ```html\n * <igx-dialog (leftButtonSelect)=\"onDialogOKSelected($event)\" #dialog leftButtonLabel=\"OK\" rightButtonLabel=\"Cancel\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public leftButtonSelect = new EventEmitter<IDialogEventArgs>();\n\n /**\n * An event that is emitted when the right button is clicked.\n * ```html\n * <igx-dialog (rightButtonSelect)=\"onDialogOKSelected($event)\"\n * #dialog title=\"Confirmation\" (leftButtonSelect)=\"dialog.close()\" rightButtonLabel=\"OK\"\n * rightButtonRipple=\"#4CAF50\" closeOnOutsideSelect=\"true\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public rightButtonSelect = new EventEmitter<IDialogEventArgs>();\n\n /**\n * @hidden\n */\n @Output() public isOpenChange = new EventEmitter<boolean>();\n\n /**\n * @hidden\n */\n public get element() {\n return this.elementRef.nativeElement;\n }\n\n /**\n * Returns the value of state. Possible state values are \"open\" or \"close\".\n * ```typescript\n * @ViewChild(\"MyDialog\")\n * public dialog: IgxDialogComponent;\n * ngAfterViewInit() {\n * let dialogState = this.dialog.state;\n * }\n * ```\n */\n public get state(): string {\n return this.isOpen ? 'open' : 'close';\n }\n\n /**\n * State of the dialog.\n *\n * ```typescript\n * // get\n * let dialogIsOpen = this.dialog.isOpen;\n * ```\n *\n * ```html\n * <!--set-->\n * <igx-dialog [isOpen]='false'></igx-dialog>\n * ```\n *\n * Two-way data binding.\n * ```html\n * <!--set-->\n * <igx-dialog [(isOpen)]='model.isOpen'></igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get isOpen() {\n return this.toggleRef ? !this.toggleRef.collapsed : false;\n }\n public set isOpen(value: boolean) {\n if (value !== this.isOpen) {\n this.isOpenChange.emit(value);\n if (value) {\n requestAnimationFrame(() => {\n this.open();\n this.cdr.markForCheck();\n });\n } else {\n this.close();\n }\n }\n }\n\n @HostBinding('class.igx-dialog--hidden')\n public get isCollapsed() {\n return this.toggleRef.collapsed;\n }\n\n /**\n * Returns the value of the role of the dialog. The valid values are `dialog`, `alertdialog`, `alert`.\n * ```typescript\n * @ViewChild(\"MyDialog\")\n * public dialog: IgxDialogComponent;\n * ngAfterViewInit() {\n * let dialogRole = this.dialog.role;\n * }\n * ```\n */\n @Input()\n public get role() {\n if (this.leftButtonLabel !== '' && this.rightButtonLabel !== '') {\n return 'dialog';\n } else if (\n this.leftButtonLabel !== '' ||\n this.rightButtonLabel !== ''\n ) {\n return 'alertdialog';\n } else {\n return 'alert';\n }\n }\n\n /**\n * Returns the value of the title id.\n * ```typescript\n * @ViewChild(\"MyDialog\")\n * public dialog: IgxDialogComponent;\n * ngAfterViewInit() {\n * let dialogTitle = this.dialog.titleId;\n * }\n * ```\n */\n @Input()\n public get titleId() {\n return this._titleId;\n }\n\n protected destroy$ = new Subject<boolean>();\n\n private _positionSettings: PositionSettings = {\n openAnimation: fadeIn,\n closeAnimation: fadeOut\n };\n\n private _overlayDefaultSettings: OverlaySettings;\n private _closeOnOutsideSelect = false;\n private _closeOnEscape = true;\n private _isModal = true;\n private _titleId: string;\n\n constructor() {\n this._titleId = IgxDialogComponent.NEXT_ID++ + '_title';\n\n this._overlayDefaultSettings = {\n positionStrategy: new GlobalPositionStrategy(this._positionSettings),\n scrollStrategy: new NoOpScrollStrategy(),\n modal: this.isModal,\n closeOnEscape: this._closeOnEscape,\n closeOnOutsideClick: this.closeOnOutsideSelect\n };\n }\n\n public ngAfterContentInit() {\n this.toggleRef.closing.pipe(takeUntil(this.destroy$)).subscribe((eventArgs) => this.emitCloseFromDialog(eventArgs));\n this.toggleRef.closed.pipe(takeUntil(this.destroy$)).subscribe((eventArgs) => this.emitClosedFromDialog(eventArgs));\n this.toggleRef.opened.pipe(takeUntil(this.destroy$)).subscribe((eventArgs) => this.emitOpenedFromDialog(eventArgs));\n }\n\n /**\n * A method that opens the dialog.\n *\n * @memberOf {@link IgxDialogComponent}\n * ```html\n * <button type=\"button\" (click)=\"dialog.open() igxButton=\"contained\">Trigger Dialog</button>\n * <igx-dialog #dialog></igx-dialog>\n * ```\n */\n public open(overlaySettings: OverlaySettings = this._overlayDefaultSettings) {\n const eventArgs: IDialogCancellableEventArgs = { dialog: this, event: null, cancel: false };\n this.opening.emit(eventArgs);\n if (!eventArgs.cancel) {\n overlaySettings = { ...{}, ... this._overlayDefaultSettings, ...overlaySettings };\n this.toggleRef.open(overlaySettings);\n this.isOpenChange.emit(true);\n if (!this.leftButtonLabel && !this.rightButtonLabel) {\n this.toggleRef.element.focus();\n }\n }\n\n }\n\n /**\n * A method that that closes the dialog.\n *\n * @memberOf {@link IgxDialogComponent}\n * ```html\n * <button type=\"button\" (click)=\"dialog.close() igxButton=\"contained\">Trigger Dialog</button>\n * <igx-dialog #dialog></igx-dialog>\n * ```\n */\n public close() {\n // `closing` will emit from `toggleRef.closing` subscription\n this.toggleRef?.close();\n }\n\n\n /**\n * A method that opens/closes the dialog.\n *\n * @memberOf {@link IgxDialogComponent}\n * ```html\n * <button type=\"button\" (click)=\"dialog.toggle() igxButton=\"contained\">Trigger Dialog</button>\n * <igx-dialog #dialog></igx-dialog>\n * ```\n */\n public toggle() {\n if (this.isOpen) {\n this.close();\n } else {\n this.open();\n }\n }\n\n /**\n * @hidden\n */\n public onDialogSelected(event) {\n event.stopPropagation();\n if (\n this.isOpen &&\n this.closeOnOutsideSelect &&\n event.target.classList.contains(IgxDialogComponent.DIALOG_CLASS)\n ) {\n this.close();\n }\n }\n\n /**\n * @hidden\n */\n public onInternalLeftButtonSelect(event) {\n this.leftButtonSelect.emit({ dialog: this, event });\n }\n\n /**\n * @hidden\n */\n public onInternalRightButtonSelect(event) {\n this.rightButtonSelect.emit({ dialog: this, event });\n }\n\n /**\n * @hidden\n */\n public ngOnInit() {\n if (this.navService && this.id) {\n this.navService.add(this.id, this);\n }\n }\n /**\n * @hidden\n */\n public ngOnDestroy() {\n if (this.navService && this.id) {\n this.navService.remove(this.id);\n }\n }\n\n private emitCloseFromDialog(eventArgs) {\n const dialogEventsArgs = { dialog: this, event: eventArgs.event, cancel: eventArgs.cancel };\n this.closing.emit(dialogEventsArgs);\n eventArgs.cancel = dialogEventsArgs.cancel;\n if (!eventArgs.cancel) {\n this.isOpenChange.emit(false);\n }\n }\n\n private emitClosedFromDialog(eventArgs) {\n this.closed.emit({ dialog: this, event: eventArgs.event });\n }\n\n private emitOpenedFromDialog(eventArgs) {\n this.opened.emit({ dialog: this, event: eventArgs.event });\n }\n}\n\nexport interface IDialogEventArgs extends IBaseEventArgs {\n dialog: IgxDialogComponent;\n event: Event;\n}\n\nexport interface IDialogCancellableEventArgs extends IDialogEventArgs, CancelableEventArgs { }\n","<div\n tabindex=\"0\"\n #dialog\n class=\"igx-dialog\"\n igxToggle\n [igxFocusTrap]=\"focusTrap\"\n (click)=\"onDialogSelected($event)\"\n>\n <div\n #dialogWindow\n class=\"igx-dialog__window\"\n [attr.role]=\"role\"\n [attr.aria-labelledby]=\"titleId\"\n >\n @if (title) {\n <div [attr.id]=\"titleId\" class=\"igx-dialog__window-title\">\n {{ title }}\n </div>\n }\n @if (!title) {\n <ng-content select=\"igx-dialog-title,[igxDialogTitle]\"></ng-content>\n }\n\n <div class=\"igx-dialog__window-content\">\n @if (message) {\n <span class=\"igx-dialog__window-message\">\n {{ message }}\n </span>\n }\n @if (!message) {\n <ng-content></ng-content>\n }\n </div>\n\n @if (leftButtonLabel || rightButtonLabel) {\n <div class=\"igx-dialog__window-actions\">\n @if (leftButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"leftButtonType\"\n igxRipple=\"{{ leftButtonRipple }}\"\n (click)=\"onInternalLeftButtonSelect($event)\"\n >\n {{ leftButtonLabel }}\n </button>\n }\n @if (rightButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"rightButtonType\"\n igxRipple=\"{{ rightButtonRipple }}\"\n (click)=\"onInternalRightButtonSelect($event)\"\n >\n {{ rightButtonLabel }}\n </button>\n }\n </div>\n }\n @if (!leftButtonLabel && !rightButtonLabel) {\n <ng-content select=\"igx-dialog-actions,[igxDialogActions]\"></ng-content>\n }\n </div>\n</div>\n","import { Directive, HostBinding } from '@angular/core';\n\n/**\n * @hidden\n */\n@Directive({\n selector: '[igxDialogTitle],igx-dialog-title',\n standalone: true\n})\nexport class IgxDialogTitleDirective {\n\n @HostBinding('class.igx-dialog__window-title')\n public defaultStyle = true;\n }\n\n/**\n * @hidden\n */\n@Directive({\n selector: '[igxDialogActions],igx-dialog-actions',\n standalone: true\n})\nexport class IgxDialogActionsDirective {\n\n @HostBinding('class.igx-dialog__window-actions')\n public defaultClass = true;\n }\n","import { IgxDialogComponent } from './dialog.component';\nimport { IgxDialogActionsDirective, IgxDialogTitleDirective } from './dialog.directives';\n\nexport * from './dialog.component';\nexport * from './dialog.directives';\n\n/* NOTE: Dialog directives collection for ease-of-use import in standalone components scenario */\nexport const IGX_DIALOG_DIRECTIVES = [\n IgxDialogComponent,\n IgxDialogTitleDirective,\n IgxDialogActionsDirective\n] as const;\n","import { NgModule } from '@angular/core';\nimport { IGX_DIALOG_DIRECTIVES } from './public_api';\n\n/**\n * @hidden\n * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components\n */\n@NgModule({\n imports: [\n ...IGX_DIALOG_DIRECTIVES\n ],\n exports: [\n ...IGX_DIALOG_DIRECTIVES\n ]\n})\nexport class IgxDialogModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.IgxDialogComponent","i2.IgxDialogTitleDirective","i2.IgxDialogActionsDirective"],"mappings":"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"}
1
+ {"version":3,"file":"igniteui-angular-dialog.mjs","sources":["../../../projects/igniteui-angular/dialog/src/dialog/dialog.component.ts","../../../projects/igniteui-angular/dialog/src/dialog/dialog-content.component.html","../../../projects/igniteui-angular/dialog/src/dialog/dialog.directives.ts","../../../projects/igniteui-angular/dialog/src/dialog/public_api.ts","../../../projects/igniteui-angular/dialog/src/dialog/dialog.module.ts","../../../projects/igniteui-angular/dialog/src/igniteui-angular-dialog.ts"],"sourcesContent":["import {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n AfterContentInit,\n booleanAttribute,\n inject,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n ChangeDetectorRef\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { IgxNavigationService, IToggleView } from 'igniteui-angular/core';\nimport { IgxButtonType, IgxButtonDirective } from 'igniteui-angular/directives';\nimport { IgxRippleDirective } from 'igniteui-angular/directives';\nimport { IgxToggleDirective } from 'igniteui-angular/directives';\nimport { OverlaySettings, GlobalPositionStrategy, NoOpScrollStrategy, PositionSettings } from 'igniteui-angular/core';\nimport { IgxFocusDirective } from 'igniteui-angular/directives';\nimport { IgxFocusTrapDirective } from 'igniteui-angular/directives';\nimport { CancelableEventArgs, IBaseEventArgs } from 'igniteui-angular/core';\nimport { fadeIn, fadeOut } from 'igniteui-angular/animations';\n\nlet DIALOG_ID = 0;\n/**\n * **Ignite UI for Angular Dialog Window** -\n * [Documentation](https://www.infragistics.com/products/ignite-ui-angular/angular/components/dialog.html)\n *\n * The Ignite UI Dialog Window presents a dialog window to the user which can simply display messages or display\n * more complicated visuals such as a user sign-in form. It also provides a right and left button\n * which can be used for custom actions.\n *\n * Example:\n * ```html\n * <button type=\"button\" igxButton (click)=\"form.open()\">Show Dialog</button>\n * <igx-dialog #form title=\"Sign In\" rightButtonLabel=\"OK\">\n * <div>\n * <igx-input-group>\n * <input type=\"text\" igxInput/>\n * <label igxLabel>Username</label>\n * </igx-input-group>\n * </div>\n * <div>\n * <igx-input-group>\n * <input type=\"password\" igxInput/>\n * <label igxLabel>Password</label>\n * </igx-input-group>\n * </div>\n * </igx-dialog>\n * ```\n */\n@Component({\n selector: 'igx-dialog',\n templateUrl: 'dialog-content.component.html',\n styleUrl: 'dialog.component.css',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [IgxToggleDirective, IgxFocusTrapDirective, IgxFocusDirective, IgxButtonDirective, IgxRippleDirective]\n})\nexport class IgxDialogComponent implements IToggleView, OnInit, OnDestroy, AfterContentInit {\n private cdr = inject(ChangeDetectorRef);\n private elementRef = inject(ElementRef);\n private navService = inject(IgxNavigationService, { optional: true });\n\n private static NEXT_ID = 1;\n private static readonly DIALOG_CLASS = 'igx-dialog';\n\n\n\n @ViewChild(IgxToggleDirective, { static: true })\n public toggleRef: IgxToggleDirective;\n\n /**\n * Sets the value of the `id` attribute. If not provided it will be automatically generated.\n * ```html\n * <igx-dialog [id]=\"'igx-dialog-56'\" #alert title=\"Notification\"\n * leftButtonLabel=\"OK\" (leftButtonSelect)=\"alert.close()\">\n * </igx-dialog>\n * ```\n */\n @HostBinding('attr.id')\n @Input()\n public id = `igx-dialog-${DIALOG_ID++}`;\n\n /**\n * Controls whether the dialog should be shown as modal. Defaults to `true`\n * ```html\n * <igx-dialog [isModal]=\"false\" ></igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get isModal() {\n return this._isModal;\n }\n\n public set isModal(val: boolean) {\n this._overlayDefaultSettings.modal = val;\n this._isModal = val;\n }\n\n /**\n * Controls whether the dialog should close when `Esc` key is pressed. Defaults to `true`\n * ```html\n * <igx-dialog [closeOnEscape]=\"false\" ></igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get closeOnEscape() {\n return this._closeOnEscape;\n }\n\n public set closeOnEscape(val: boolean) {\n this._overlayDefaultSettings.closeOnEscape = val;\n this._closeOnEscape = val;\n }\n\n /**\n * Set whether the Tab key focus is trapped within the dialog when opened.\n * Defaults to `true`.\n * ```html\n * <igx-dialog focusTrap=\"false\"\"></igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public focusTrap = true;\n\n /**\n * Sets the title of the dialog.\n * ```html\n * <igx-dialog title=\"Notification\" #alert leftButtonLabel=\"OK\" (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public title = '';\n\n /**\n * Sets the message text of the dialog.\n * ```html\n * <igx-dialog message=\"Your email was sent!\" #alert leftButtonLabel=\"OK\" (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public message = '';\n\n /**\n * Sets the `label` of the left button of the dialog.\n * ```html\n * <igx-dialog leftButtonLabel=\"OKAY\" #alert title=\"Notification\" (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public leftButtonLabel = '';\n\n /**\n * Sets the left button `type`. The types are `flat`, `contained` and `fab`.\n * The `flat` type button is a rectangle and doesn't have a shadow. <br>\n * The `contained` type button is also a rectangle but has a shadow. <br>\n * The `fab` type button is a circle with a shadow. <br>\n * The default value is `flat`.\n * ```html\n * <igx-dialog leftButtonType=\"contained\" leftButtonLabel=\"OKAY\" #alert (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public leftButtonType: IgxButtonType = 'flat';\n\n /**\n * Sets the left button `ripple`. The `ripple` animates a click/tap to a component as a series of fading waves.\n * The property accepts all valid CSS color property values.\n * ```html\n * <igx-dialog leftButtonRipple=\"green\" leftButtonLabel=\"OKAY\" #alert (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public leftButtonRipple = '';\n\n /**\n * Sets the `label` of the right button of the dialog.\n * ```html\n * <igx-dialog rightButtonLabel=\"OKAY\" #alert title=\"Notification\" (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public rightButtonLabel = '';\n\n /**\n * Sets the right button `type`. The types are `flat`, `contained` and `fab`.\n * The `flat` type button is a rectangle and doesn't have a shadow. <br>\n * The `contained` type button is also a rectangle but has a shadow. <br>\n * The `fab` type button is a circle with a shadow. <br>\n * The default value is `flat`.\n * ```html\n * <igx-dialog rightButtonType=\"fab\" rightButtonLabel=\"OKAY\" #alert (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public rightButtonType: IgxButtonType = 'flat';\n\n /**\n * Sets the right button `ripple`.\n * ```html\n * <igx-dialog rightButtonRipple=\"green\" rightButtonLabel=\"OKAY\" #alert (leftButtonSelect)=\"alert.close()\"></igx-dialog>\n * ```\n */\n @Input()\n public rightButtonRipple = '';\n\n /**\n * Gets/Sets whether the dialog should close on click outside the component. By default it's false.\n * ```html\n * <igx-dialog closeOnOutsideSelect=\"true\" leftButtonLabel=\"Cancel\" (leftButtonSelect)=\"dialog.close()\"\n * rightButtonLabel=\"OK\" rightButtonRipple=\"#4CAF50\" (rightButtonSelect)=\"onDialogOKSelected($event)\">\n * </igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get closeOnOutsideSelect() {\n return this._closeOnOutsideSelect;\n }\n\n public set closeOnOutsideSelect(val: boolean) {\n this._overlayDefaultSettings.closeOnOutsideClick = val;\n this._closeOnOutsideSelect = val;\n }\n\n /**\n * Get the position and animation settings used by the dialog.\n * ```typescript\n * @ViewChild('alert', { static: true }) public alert: IgxDialogComponent;\n * let currentPosition: PositionSettings = this.alert.positionSettings\n * ```\n */\n @Input()\n public get positionSettings(): PositionSettings {\n return this._positionSettings;\n }\n\n /**\n * Set the position and animation settings used by the dialog.\n * ```typescript\n * import { slideInLeft, slideOutRight } from 'igniteui-angular';\n * ...\n * @ViewChild('alert', { static: true }) public alert: IgxDialogComponent;\n * public newPositionSettings: PositionSettings = {\n * openAnimation: useAnimation(slideInTop, { params: { duration: '2000ms' } }),\n * closeAnimation: useAnimation(slideOutBottom, { params: { duration: '2000ms'} }),\n * horizontalDirection: HorizontalAlignment.Left,\n * verticalDirection: VerticalAlignment.Middle,\n * horizontalStartPoint: HorizontalAlignment.Left,\n * verticalStartPoint: VerticalAlignment.Middle,\n * minSize: { height: 100, width: 100 }\n * };\n * this.alert.positionSettings = this.newPositionSettings;\n * ```\n */\n public set positionSettings(settings: PositionSettings) {\n this._positionSettings = settings;\n this._overlayDefaultSettings.positionStrategy = new GlobalPositionStrategy(this._positionSettings);\n }\n\n /**\n * The default `tabindex` attribute for the component\n *\n * @hidden\n */\n @HostBinding('attr.tabindex')\n public tabindex = -1;\n\n /**\n * An event that is emitted before the dialog is opened.\n * ```html\n * <igx-dialog (opening)=\"onDialogOpenHandler($event)\" (leftButtonSelect)=\"dialog.close()\" rightButtonLabel=\"OK\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public opening = new EventEmitter<IDialogCancellableEventArgs>();\n\n /**\n * An event that is emitted after the dialog is opened.\n * ```html\n * <igx-dialog (opened)=\"onDialogOpenedHandler($event)\" (leftButtonSelect)=\"dialog.close()\" rightButtonLabel=\"OK\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public opened = new EventEmitter<IDialogEventArgs>();\n\n /**\n * An event that is emitted before the dialog is closed.\n * ```html\n * <igx-dialog (closing)=\"onDialogCloseHandler($event)\" title=\"Confirmation\" leftButtonLabel=\"Cancel\" rightButtonLabel=\"OK\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public closing = new EventEmitter<IDialogCancellableEventArgs>();\n\n /**\n * An event that is emitted after the dialog is closed.\n * ```html\n * <igx-dialog (closed)=\"onDialogClosedHandler($event)\" title=\"Confirmation\" leftButtonLabel=\"Cancel\" rightButtonLabel=\"OK\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public closed = new EventEmitter<IDialogEventArgs>();\n\n /**\n * An event that is emitted when the left button is clicked.\n * ```html\n * <igx-dialog (leftButtonSelect)=\"onDialogOKSelected($event)\" #dialog leftButtonLabel=\"OK\" rightButtonLabel=\"Cancel\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public leftButtonSelect = new EventEmitter<IDialogEventArgs>();\n\n /**\n * An event that is emitted when the right button is clicked.\n * ```html\n * <igx-dialog (rightButtonSelect)=\"onDialogOKSelected($event)\"\n * #dialog title=\"Confirmation\" (leftButtonSelect)=\"dialog.close()\" rightButtonLabel=\"OK\"\n * rightButtonRipple=\"#4CAF50\" closeOnOutsideSelect=\"true\">\n * </igx-dialog>\n * ```\n */\n @Output()\n public rightButtonSelect = new EventEmitter<IDialogEventArgs>();\n\n /**\n * @hidden\n */\n @Output() public isOpenChange = new EventEmitter<boolean>();\n\n /**\n * @hidden\n */\n public get element() {\n return this.elementRef.nativeElement;\n }\n\n /**\n * Returns the value of state. Possible state values are \"open\" or \"close\".\n * ```typescript\n * @ViewChild(\"MyDialog\")\n * public dialog: IgxDialogComponent;\n * ngAfterViewInit() {\n * let dialogState = this.dialog.state;\n * }\n * ```\n */\n public get state(): string {\n return this.isOpen ? 'open' : 'close';\n }\n\n /**\n * State of the dialog.\n *\n * ```typescript\n * // get\n * let dialogIsOpen = this.dialog.isOpen;\n * ```\n *\n * ```html\n * <!--set-->\n * <igx-dialog [isOpen]='false'></igx-dialog>\n * ```\n *\n * Two-way data binding.\n * ```html\n * <!--set-->\n * <igx-dialog [(isOpen)]='model.isOpen'></igx-dialog>\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get isOpen() {\n return this.toggleRef ? !this.toggleRef.collapsed : false;\n }\n public set isOpen(value: boolean) {\n if (value !== this.isOpen) {\n this.isOpenChange.emit(value);\n if (value) {\n requestAnimationFrame(() => {\n this.open();\n this.cdr.markForCheck();\n });\n } else {\n this.close();\n }\n }\n }\n\n @HostBinding('class.igx-dialog--hidden')\n public get isCollapsed() {\n return this.toggleRef.collapsed;\n }\n\n /**\n * Returns the value of the role of the dialog. The valid values are `dialog`, `alertdialog`, `alert`.\n * ```typescript\n * @ViewChild(\"MyDialog\")\n * public dialog: IgxDialogComponent;\n * ngAfterViewInit() {\n * let dialogRole = this.dialog.role;\n * }\n * ```\n */\n @Input()\n public get role() {\n if (this.leftButtonLabel !== '' && this.rightButtonLabel !== '') {\n return 'dialog';\n } else if (\n this.leftButtonLabel !== '' ||\n this.rightButtonLabel !== ''\n ) {\n return 'alertdialog';\n } else {\n return 'alert';\n }\n }\n\n /**\n * Returns the value of the title id.\n * ```typescript\n * @ViewChild(\"MyDialog\")\n * public dialog: IgxDialogComponent;\n * ngAfterViewInit() {\n * let dialogTitle = this.dialog.titleId;\n * }\n * ```\n */\n @Input()\n public get titleId() {\n return this._titleId;\n }\n\n protected destroy$ = new Subject<boolean>();\n\n private _positionSettings: PositionSettings = {\n openAnimation: fadeIn,\n closeAnimation: fadeOut\n };\n\n private _overlayDefaultSettings: OverlaySettings;\n private _closeOnOutsideSelect = false;\n private _closeOnEscape = true;\n private _isModal = true;\n private _titleId: string;\n\n constructor() {\n this._titleId = IgxDialogComponent.NEXT_ID++ + '_title';\n\n this._overlayDefaultSettings = {\n positionStrategy: new GlobalPositionStrategy(this._positionSettings),\n scrollStrategy: new NoOpScrollStrategy(),\n modal: this.isModal,\n closeOnEscape: this._closeOnEscape,\n closeOnOutsideClick: this.closeOnOutsideSelect\n };\n }\n\n public ngAfterContentInit() {\n this.toggleRef.closing.pipe(takeUntil(this.destroy$)).subscribe((eventArgs) => this.emitCloseFromDialog(eventArgs));\n this.toggleRef.closed.pipe(takeUntil(this.destroy$)).subscribe((eventArgs) => this.emitClosedFromDialog(eventArgs));\n this.toggleRef.opened.pipe(takeUntil(this.destroy$)).subscribe((eventArgs) => this.emitOpenedFromDialog(eventArgs));\n }\n\n /**\n * A method that opens the dialog.\n *\n * @memberOf {@link IgxDialogComponent}\n * ```html\n * <button type=\"button\" (click)=\"dialog.open() igxButton=\"contained\">Trigger Dialog</button>\n * <igx-dialog #dialog></igx-dialog>\n * ```\n */\n public open(overlaySettings: OverlaySettings = this._overlayDefaultSettings) {\n const eventArgs: IDialogCancellableEventArgs = { dialog: this, event: null, cancel: false };\n this.opening.emit(eventArgs);\n if (!eventArgs.cancel) {\n overlaySettings = { ...{}, ... this._overlayDefaultSettings, ...overlaySettings };\n this.toggleRef.open(overlaySettings);\n this.isOpenChange.emit(true);\n if (!this.leftButtonLabel && !this.rightButtonLabel) {\n this.toggleRef.element.focus();\n }\n }\n\n }\n\n /**\n * A method that that closes the dialog.\n *\n * @memberOf {@link IgxDialogComponent}\n * ```html\n * <button type=\"button\" (click)=\"dialog.close() igxButton=\"contained\">Trigger Dialog</button>\n * <igx-dialog #dialog></igx-dialog>\n * ```\n */\n public close() {\n // `closing` will emit from `toggleRef.closing` subscription\n this.toggleRef?.close();\n }\n\n\n /**\n * A method that opens/closes the dialog.\n *\n * @memberOf {@link IgxDialogComponent}\n * ```html\n * <button type=\"button\" (click)=\"dialog.toggle() igxButton=\"contained\">Trigger Dialog</button>\n * <igx-dialog #dialog></igx-dialog>\n * ```\n */\n public toggle() {\n if (this.isOpen) {\n this.close();\n } else {\n this.open();\n }\n }\n\n /**\n * @hidden\n */\n public onDialogSelected(event) {\n event.stopPropagation();\n if (\n this.isOpen &&\n this.closeOnOutsideSelect &&\n event.target.classList.contains(IgxDialogComponent.DIALOG_CLASS)\n ) {\n this.close();\n }\n }\n\n /**\n * @hidden\n */\n public onInternalLeftButtonSelect(event) {\n this.leftButtonSelect.emit({ dialog: this, event });\n }\n\n /**\n * @hidden\n */\n public onInternalRightButtonSelect(event) {\n this.rightButtonSelect.emit({ dialog: this, event });\n }\n\n /**\n * @hidden\n */\n public ngOnInit() {\n if (this.navService && this.id) {\n this.navService.add(this.id, this);\n }\n }\n /**\n * @hidden\n */\n public ngOnDestroy() {\n if (this.navService && this.id) {\n this.navService.remove(this.id);\n }\n }\n\n private emitCloseFromDialog(eventArgs) {\n const dialogEventsArgs = { dialog: this, event: eventArgs.event, cancel: eventArgs.cancel };\n this.closing.emit(dialogEventsArgs);\n eventArgs.cancel = dialogEventsArgs.cancel;\n if (!eventArgs.cancel) {\n this.isOpenChange.emit(false);\n }\n }\n\n private emitClosedFromDialog(eventArgs) {\n this.closed.emit({ dialog: this, event: eventArgs.event });\n }\n\n private emitOpenedFromDialog(eventArgs) {\n this.opened.emit({ dialog: this, event: eventArgs.event });\n }\n}\n\nexport interface IDialogEventArgs extends IBaseEventArgs {\n dialog: IgxDialogComponent;\n event: Event;\n}\n\nexport interface IDialogCancellableEventArgs extends IDialogEventArgs, CancelableEventArgs { }\n","<div\n tabindex=\"0\"\n #dialog\n class=\"igx-dialog\"\n igxToggle\n [igxFocusTrap]=\"focusTrap\"\n (click)=\"onDialogSelected($event)\"\n>\n <div\n #dialogWindow\n class=\"igx-dialog__window\"\n [attr.role]=\"role\"\n [attr.aria-labelledby]=\"titleId\"\n >\n @if (title) {\n <div [attr.id]=\"titleId\" class=\"igx-dialog__window-title\">\n {{ title }}\n </div>\n }\n @if (!title) {\n <ng-content select=\"igx-dialog-title,[igxDialogTitle]\"></ng-content>\n }\n\n <div class=\"igx-dialog__window-content\">\n @if (message) {\n <span class=\"igx-dialog__window-message\">\n {{ message }}\n </span>\n }\n @if (!message) {\n <ng-content></ng-content>\n }\n </div>\n\n @if (leftButtonLabel || rightButtonLabel) {\n <div class=\"igx-dialog__window-actions\">\n @if (leftButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"leftButtonType\"\n igxRipple=\"{{ leftButtonRipple }}\"\n (click)=\"onInternalLeftButtonSelect($event)\"\n >\n {{ leftButtonLabel }}\n </button>\n }\n @if (rightButtonLabel) {\n <button\n type=\"button\"\n [igxFocus]=\"isOpen\"\n [igxButton]=\"rightButtonType\"\n igxRipple=\"{{ rightButtonRipple }}\"\n (click)=\"onInternalRightButtonSelect($event)\"\n >\n {{ rightButtonLabel }}\n </button>\n }\n </div>\n }\n @if (!leftButtonLabel && !rightButtonLabel) {\n <ng-content select=\"igx-dialog-actions,[igxDialogActions]\"></ng-content>\n }\n </div>\n</div>\n","import { Directive, HostBinding } from '@angular/core';\nimport { IgxNoTypographyDirective } from 'igniteui-angular/directives';\n\n/**\n * @hidden\n */\n@Directive({\n selector: '[igxDialogTitle],igx-dialog-title',\n standalone: true,\n hostDirectives: [IgxNoTypographyDirective]\n})\nexport class IgxDialogTitleDirective {\n\n @HostBinding('class.igx-dialog__window-title')\n public defaultStyle = true;\n }\n\n/**\n * @hidden\n */\n@Directive({\n selector: '[igxDialogActions],igx-dialog-actions',\n standalone: true\n})\nexport class IgxDialogActionsDirective {\n\n @HostBinding('class.igx-dialog__window-actions')\n public defaultClass = true;\n }\n","import { IgxDialogComponent } from './dialog.component';\nimport { IgxDialogActionsDirective, IgxDialogTitleDirective } from './dialog.directives';\n\nexport * from './dialog.component';\nexport * from './dialog.directives';\n\n/* NOTE: Dialog directives collection for ease-of-use import in standalone components scenario */\nexport const IGX_DIALOG_DIRECTIVES = [\n IgxDialogComponent,\n IgxDialogTitleDirective,\n IgxDialogActionsDirective\n] as const;\n","import { NgModule } from '@angular/core';\nimport { IGX_DIALOG_DIRECTIVES } from './public_api';\n\n/**\n * @hidden\n * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components\n */\n@NgModule({\n imports: [\n ...IGX_DIALOG_DIRECTIVES\n ],\n exports: [\n ...IGX_DIALOG_DIRECTIVES\n ]\n})\nexport class IgxDialogModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.IgxDialogComponent","i2.IgxDialogTitleDirective","i2.IgxDialogActionsDirective"],"mappings":";;;;;;;;;AA6BA,IAAI,SAAS,GAAG,CAAC;AACjB;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BG;MASU,kBAAkB,CAAA;aAKZ,IAAA,CAAA,OAAO,GAAG,CAAH,CAAK;aACH,IAAA,CAAA,YAAY,GAAG,YAAH,CAAgB;AAmBpD;;;;;AAKG;AACH,IAAA,IACW,OAAO,GAAA;QACd,OAAO,IAAI,CAAC,QAAQ;IACxB;IAEA,IAAW,OAAO,CAAC,GAAY,EAAA;AAC3B,QAAA,IAAI,CAAC,uBAAuB,CAAC,KAAK,GAAG,GAAG;AACxC,QAAA,IAAI,CAAC,QAAQ,GAAG,GAAG;IACvB;AAEA;;;;;AAKG;AACH,IAAA,IACW,aAAa,GAAA;QACpB,OAAO,IAAI,CAAC,cAAc;IAC9B;IAEA,IAAW,aAAa,CAAC,GAAY,EAAA;AACjC,QAAA,IAAI,CAAC,uBAAuB,CAAC,aAAa,GAAG,GAAG;AAChD,QAAA,IAAI,CAAC,cAAc,GAAG,GAAG;IAC7B;AA6FA;;;;;;;AAOG;AACH,IAAA,IACW,oBAAoB,GAAA;QAC3B,OAAO,IAAI,CAAC,qBAAqB;IACrC;IAEA,IAAW,oBAAoB,CAAC,GAAY,EAAA;AACxC,QAAA,IAAI,CAAC,uBAAuB,CAAC,mBAAmB,GAAG,GAAG;AACtD,QAAA,IAAI,CAAC,qBAAqB,GAAG,GAAG;IACpC;AAEA;;;;;;AAMG;AACH,IAAA,IACW,gBAAgB,GAAA;QACvB,OAAO,IAAI,CAAC,iBAAiB;IACjC;AAEA;;;;;;;;;;;;;;;;;AAiBG;IACH,IAAW,gBAAgB,CAAC,QAA0B,EAAA;AAClD,QAAA,IAAI,CAAC,iBAAiB,GAAG,QAAQ;AACjC,QAAA,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACtG;AA6EA;;AAEG;AACH,IAAA,IAAW,OAAO,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa;IACxC;AAEA;;;;;;;;;AASG;AACH,IAAA,IAAW,KAAK,GAAA;QACZ,OAAO,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO;IACzC;AAEA;;;;;;;;;;;;;;;;;;AAkBG;AACH,IAAA,IACW,MAAM,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,KAAK;IAC7D;IACA,IAAW,MAAM,CAAC,KAAc,EAAA;AAC5B,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE;AACvB,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;YAC7B,IAAI,KAAK,EAAE;gBACP,qBAAqB,CAAC,MAAK;oBACvB,IAAI,CAAC,IAAI,EAAE;AACX,oBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AAC3B,gBAAA,CAAC,CAAC;YACN;iBAAO;gBACH,IAAI,CAAC,KAAK,EAAE;YAChB;QACJ;IACJ;AAEA,IAAA,IACW,WAAW,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS;IACnC;AAEA;;;;;;;;;AASG;AACH,IAAA,IACW,IAAI,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,eAAe,KAAK,EAAE,IAAI,IAAI,CAAC,gBAAgB,KAAK,EAAE,EAAE;AAC7D,YAAA,OAAO,QAAQ;QACnB;AAAO,aAAA,IACH,IAAI,CAAC,eAAe,KAAK,EAAE;AAC3B,YAAA,IAAI,CAAC,gBAAgB,KAAK,EAAE,EAC9B;AACE,YAAA,OAAO,aAAa;QACxB;aAAO;AACH,YAAA,OAAO,OAAO;QAClB;IACJ;AAEA;;;;;;;;;AASG;AACH,IAAA,IACW,OAAO,GAAA;QACd,OAAO,IAAI,CAAC,QAAQ;IACxB;AAeA,IAAA,WAAA,GAAA;AAtYQ,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC/B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAC/B,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAUrE;;;;;;;AAOG;AAGI,QAAA,IAAA,CAAA,EAAE,GAAG,CAAA,WAAA,EAAc,SAAS,EAAE,EAAE;AAkCvC;;;;;;AAMG;QAEI,IAAA,CAAA,SAAS,GAAG,IAAI;AAEvB;;;;;AAKG;QAEI,IAAA,CAAA,KAAK,GAAG,EAAE;AAEjB;;;;;AAKG;QAEI,IAAA,CAAA,OAAO,GAAG,EAAE;AAEnB;;;;;AAKG;QAEI,IAAA,CAAA,eAAe,GAAG,EAAE;AAE3B;;;;;;;;;AASG;QAEI,IAAA,CAAA,cAAc,GAAkB,MAAM;AAE7C;;;;;;AAMG;QAEI,IAAA,CAAA,gBAAgB,GAAG,EAAE;AAE5B;;;;;AAKG;QAEI,IAAA,CAAA,gBAAgB,GAAG,EAAE;AAE5B;;;;;;;;;AASG;QAEI,IAAA,CAAA,eAAe,GAAkB,MAAM;AAE9C;;;;;AAKG;QAEI,IAAA,CAAA,iBAAiB,GAAG,EAAE;AAuD7B;;;;AAIG;QAEI,IAAA,CAAA,QAAQ,GAAG,CAAC,CAAC;AAEpB;;;;;;AAMG;AAEI,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAA+B;AAEhE;;;;;;AAMG;AAEI,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,YAAY,EAAoB;AAEpD;;;;;;AAMG;AAEI,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAA+B;AAEhE;;;;;;AAMG;AAEI,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,YAAY,EAAoB;AAEpD;;;;;;AAMG;AAEI,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,YAAY,EAAoB;AAE9D;;;;;;;;AAQG;AAEI,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAoB;AAE/D;;AAEG;AACc,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAW;AAwGjD,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,OAAO,EAAW;AAEnC,QAAA,IAAA,CAAA,iBAAiB,GAAqB;AAC1C,YAAA,aAAa,EAAE,MAAM;AACrB,YAAA,cAAc,EAAE;SACnB;QAGO,IAAA,CAAA,qBAAqB,GAAG,KAAK;QAC7B,IAAA,CAAA,cAAc,GAAG,IAAI;QACrB,IAAA,CAAA,QAAQ,GAAG,IAAI;QAInB,IAAI,CAAC,QAAQ,GAAG,kBAAkB,CAAC,OAAO,EAAE,GAAG,QAAQ;QAEvD,IAAI,CAAC,uBAAuB,GAAG;AAC3B,YAAA,gBAAgB,EAAE,IAAI,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC;YACpE,cAAc,EAAE,IAAI,kBAAkB,EAAE;YACxC,KAAK,EAAE,IAAI,CAAC,OAAO;YACnB,aAAa,EAAE,IAAI,CAAC,cAAc;YAClC,mBAAmB,EAAE,IAAI,CAAC;SAC7B;IACL;IAEO,kBAAkB,GAAA;AACrB,QAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;AACnH,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;AACnH,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACvH;AAEA;;;;;;;;AAQG;AACI,IAAA,IAAI,CAAC,eAAA,GAAmC,IAAI,CAAC,uBAAuB,EAAA;AACvE,QAAA,MAAM,SAAS,GAAgC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;AAC3F,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;AAC5B,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;AACnB,YAAA,eAAe,GAAG,EAAE,GAAG,EAAE,EAAE,GAAI,IAAI,CAAC,uBAAuB,EAAE,GAAG,eAAe,EAAE;AACjF,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC;AACpC,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;AACjD,gBAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE;YAClC;QACJ;IAEJ;AAEA;;;;;;;;AAQG;IACI,KAAK,GAAA;;AAER,QAAA,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE;IAC3B;AAGA;;;;;;;;AAQG;IACI,MAAM,GAAA;AACT,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,IAAI,CAAC,KAAK,EAAE;QAChB;aAAO;YACH,IAAI,CAAC,IAAI,EAAE;QACf;IACJ;AAEA;;AAEG;AACI,IAAA,gBAAgB,CAAC,KAAK,EAAA;QACzB,KAAK,CAAC,eAAe,EAAE;QACvB,IACI,IAAI,CAAC,MAAM;AACX,YAAA,IAAI,CAAC,oBAAoB;AACzB,YAAA,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAClE;YACE,IAAI,CAAC,KAAK,EAAE;QAChB;IACJ;AAEA;;AAEG;AACI,IAAA,0BAA0B,CAAC,KAAK,EAAA;AACnC,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACvD;AAEA;;AAEG;AACI,IAAA,2BAA2B,CAAC,KAAK,EAAA;AACpC,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACxD;AAEA;;AAEG;IACI,QAAQ,GAAA;QACX,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,EAAE,EAAE;YAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;QACtC;IACJ;AACA;;AAEG;IACI,WAAW,GAAA;QACd,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,EAAE,EAAE;YAC5B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC;IACJ;AAEQ,IAAA,mBAAmB,CAAC,SAAS,EAAA;AACjC,QAAA,MAAM,gBAAgB,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE;AAC3F,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC;AACnC,QAAA,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC,MAAM;AAC1C,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;AACnB,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QACjC;IACJ;AAEQ,IAAA,oBAAoB,CAAC,SAAS,EAAA;AAClC,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;IAC9D;AAEQ,IAAA,oBAAoB,CAAC,SAAS,EAAA;AAClC,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;IAC9D;8GA5gBS,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EA+BP,gBAAgB,CAAA,EAAA,aAAA,EAAA,CAAA,eAAA,EAAA,eAAA,EAgBhB,gBAAgB,yCAiBhB,gBAAgB,CAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,CAAA,sBAAA,EAAA,sBAAA,EA4FhB,gBAAgB,CAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAgKhB,gBAAgB,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,eAAA,EAAA,eAAA,EAAA,0BAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAlTzB,kBAAkB,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3EjC,+nEAiEA,EAAA,MAAA,EAAA,CAAA,kpHAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDFc,kBAAkB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,QAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,qBAAqB,qFAAE,iBAAiB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kBAAkB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,WAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kBAAkB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAErG,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,iBAGP,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,KAAK,EAAA,OAAA,EACrC,CAAC,kBAAkB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,EAAA,QAAA,EAAA,+nEAAA,EAAA,MAAA,EAAA,CAAA,kpHAAA,CAAA,EAAA;;sBAY9G,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,kBAAkB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;sBAW9C,WAAW;uBAAC,SAAS;;sBACrB;;sBASA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAgBrC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAiBrC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBASrC;;sBASA;;sBASA;;sBAaA;;sBAUA;;sBASA;;sBAaA;;sBASA;;sBAWA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAiBrC;;sBAiCA,WAAW;uBAAC,eAAe;;sBAU3B;;sBAUA;;sBAUA;;sBAUA;;sBAUA;;sBAYA;;sBAMA;;sBA0CA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAkBrC,WAAW;uBAAC,0BAA0B;;sBAetC;;sBAwBA;;;AEnbL;;AAEG;MAMU,uBAAuB,CAAA;AALpC,IAAA,WAAA,GAAA;QAQW,IAAA,CAAA,YAAY,GAAG,IAAI;AAC5B,IAAA;8GAJW,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gCAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mCAAmC;AAC7C,oBAAA,UAAU,EAAE,IAAI;oBAChB,cAAc,EAAE,CAAC,wBAAwB;AAC5C,iBAAA;;sBAGI,WAAW;uBAAC,gCAAgC;;AAIjD;;AAEG;MAKU,yBAAyB,CAAA;AAJtC,IAAA,WAAA,GAAA;QAOW,IAAA,CAAA,YAAY,GAAG,IAAI;AAC5B,IAAA;8GAJW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uCAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kCAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAJrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,uCAAuC;AACjD,oBAAA,UAAU,EAAE;AACf,iBAAA;;sBAGI,WAAW;uBAAC,kCAAkC;;;ACpBnD;AACO,MAAM,qBAAqB,GAAG;IACjC,kBAAkB;IAClB,uBAAuB;IACvB;;;ACPJ;;;AAGG;MASU,eAAe,CAAA;8GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAf,eAAe,EAAA,OAAA,EAAA,CAAAA,kBAAA,EAAAC,uBAAA,EAAAC,yBAAA,CAAA,EAAA,OAAA,EAAA,CAAAF,kBAAA,EAAAC,uBAAA,EAAAC,yBAAA,CAAA,EAAA,CAAA,CAAA;+GAAf,eAAe,EAAA,CAAA,CAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAR3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;AACL,wBAAA,GAAG;AACN,qBAAA;AACD,oBAAA,OAAO,EAAE;AACL,wBAAA,GAAG;AACN;AACJ,iBAAA;;;ACdD;;AAEG;;;;"}