igniteui-angular 22.1.0-beta.7 → 22.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/README.md +1 -0
  2. package/fesm2022/igniteui-angular-accordion.mjs +4 -4
  3. package/fesm2022/igniteui-angular-accordion.mjs.map +1 -1
  4. package/fesm2022/igniteui-angular-action-strip.mjs +48 -12
  5. package/fesm2022/igniteui-angular-action-strip.mjs.map +1 -1
  6. package/fesm2022/igniteui-angular-avatar.mjs.map +1 -1
  7. package/fesm2022/igniteui-angular-badge.mjs +1 -0
  8. package/fesm2022/igniteui-angular-badge.mjs.map +1 -1
  9. package/fesm2022/igniteui-angular-banner.mjs +2 -2
  10. package/fesm2022/igniteui-angular-banner.mjs.map +1 -1
  11. package/fesm2022/igniteui-angular-button-group.mjs.map +1 -1
  12. package/fesm2022/igniteui-angular-calendar.mjs +5 -4
  13. package/fesm2022/igniteui-angular-calendar.mjs.map +1 -1
  14. package/fesm2022/igniteui-angular-card.mjs.map +1 -1
  15. package/fesm2022/igniteui-angular-carousel.mjs.map +1 -1
  16. package/fesm2022/igniteui-angular-chips.mjs +18 -2
  17. package/fesm2022/igniteui-angular-chips.mjs.map +1 -1
  18. package/fesm2022/igniteui-angular-combo.mjs +6 -17
  19. package/fesm2022/igniteui-angular-combo.mjs.map +1 -1
  20. package/fesm2022/igniteui-angular-core.mjs +337 -16
  21. package/fesm2022/igniteui-angular-core.mjs.map +1 -1
  22. package/fesm2022/igniteui-angular-date-picker.mjs +15 -13
  23. package/fesm2022/igniteui-angular-date-picker.mjs.map +1 -1
  24. package/fesm2022/igniteui-angular-dialog.mjs +1 -1
  25. package/fesm2022/igniteui-angular-dialog.mjs.map +1 -1
  26. package/fesm2022/igniteui-angular-directives.mjs +47 -45
  27. package/fesm2022/igniteui-angular-directives.mjs.map +1 -1
  28. package/fesm2022/igniteui-angular-drop-down.mjs +2 -3
  29. package/fesm2022/igniteui-angular-drop-down.mjs.map +1 -1
  30. package/fesm2022/igniteui-angular-expansion-panel.mjs +12 -23
  31. package/fesm2022/igniteui-angular-expansion-panel.mjs.map +1 -1
  32. package/fesm2022/igniteui-angular-grids-core.mjs +220 -484
  33. package/fesm2022/igniteui-angular-grids-core.mjs.map +1 -1
  34. package/fesm2022/igniteui-angular-grids-grid.mjs +96 -117
  35. package/fesm2022/igniteui-angular-grids-grid.mjs.map +1 -1
  36. package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs +19 -15
  37. package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs.map +1 -1
  38. package/fesm2022/igniteui-angular-grids-lite.mjs +2 -8
  39. package/fesm2022/igniteui-angular-grids-lite.mjs.map +1 -1
  40. package/fesm2022/igniteui-angular-grids-pivot-grid.mjs +153 -75
  41. package/fesm2022/igniteui-angular-grids-pivot-grid.mjs.map +1 -1
  42. package/fesm2022/igniteui-angular-grids-tree-grid.mjs +36 -29
  43. package/fesm2022/igniteui-angular-grids-tree-grid.mjs.map +1 -1
  44. package/fesm2022/igniteui-angular-icon.mjs.map +1 -1
  45. package/fesm2022/igniteui-angular-input-group.mjs +1 -1
  46. package/fesm2022/igniteui-angular-input-group.mjs.map +1 -1
  47. package/fesm2022/igniteui-angular-list.mjs.map +1 -1
  48. package/fesm2022/igniteui-angular-navbar.mjs.map +1 -1
  49. package/fesm2022/igniteui-angular-navigation-drawer.mjs +3 -2
  50. package/fesm2022/igniteui-angular-navigation-drawer.mjs.map +1 -1
  51. package/fesm2022/igniteui-angular-paginator.mjs.map +1 -1
  52. package/fesm2022/igniteui-angular-progressbar.mjs +2 -5
  53. package/fesm2022/igniteui-angular-progressbar.mjs.map +1 -1
  54. package/fesm2022/igniteui-angular-query-builder.mjs +19 -18
  55. package/fesm2022/igniteui-angular-query-builder.mjs.map +1 -1
  56. package/fesm2022/igniteui-angular-radio.mjs +1 -1
  57. package/fesm2022/igniteui-angular-radio.mjs.map +1 -1
  58. package/fesm2022/igniteui-angular-select.mjs.map +1 -1
  59. package/fesm2022/igniteui-angular-simple-combo.mjs +7 -10
  60. package/fesm2022/igniteui-angular-simple-combo.mjs.map +1 -1
  61. package/fesm2022/igniteui-angular-slider.mjs +3 -3
  62. package/fesm2022/igniteui-angular-slider.mjs.map +1 -1
  63. package/fesm2022/igniteui-angular-splitter.mjs +1 -1
  64. package/fesm2022/igniteui-angular-splitter.mjs.map +1 -1
  65. package/fesm2022/igniteui-angular-stepper.mjs +1 -1
  66. package/fesm2022/igniteui-angular-stepper.mjs.map +1 -1
  67. package/fesm2022/igniteui-angular-tabs.mjs.map +1 -1
  68. package/fesm2022/igniteui-angular-time-picker.mjs +6 -3
  69. package/fesm2022/igniteui-angular-time-picker.mjs.map +1 -1
  70. package/fesm2022/igniteui-angular-tree.mjs +10 -8
  71. package/fesm2022/igniteui-angular-tree.mjs.map +1 -1
  72. package/migrations/migration-collection.json +10 -0
  73. package/migrations/update-21_0_0_import-migration/index.js +11 -5
  74. package/migrations/update-21_0_0_import-migration/index.spec.d.ts +1 -0
  75. package/migrations/update-21_0_0_import-migration/index.spec.js +175 -0
  76. package/migrations/update-21_1_0_import-migration/index.js +14 -5
  77. package/migrations/update-21_1_0_import-migration/index.spec.d.ts +1 -0
  78. package/migrations/update-21_1_0_import-migration/index.spec.js +146 -0
  79. package/migrations/update-22_1_0_chip-outline/changes/theme-changes.json +17 -0
  80. package/migrations/update-22_1_0_chip-outline/index.d.ts +3 -0
  81. package/migrations/update-22_1_0_chip-outline/index.js +18 -0
  82. package/migrations/update-22_1_0_chip-outline/index.spec.d.ts +1 -0
  83. package/migrations/update-22_1_0_chip-outline/index.spec.js +68 -0
  84. package/migrations/update-22_1_0_import-migration/index.d.ts +2 -0
  85. package/migrations/update-22_1_0_import-migration/index.js +228 -0
  86. package/migrations/update-22_1_0_import-migration/index.spec.d.ts +1 -0
  87. package/migrations/update-22_1_0_import-migration/index.spec.js +188 -0
  88. package/package.json +4 -4
  89. package/skills/igniteui-angular-components/SKILL.md +1 -0
  90. package/skills/igniteui-angular-figma-to-app/SKILL.md +1 -0
  91. package/skills/igniteui-angular-generate-from-image-design/SKILL.md +1 -0
  92. package/skills/igniteui-angular-grids/SKILL.md +1 -0
  93. package/skills/igniteui-angular-theming/SKILL.md +1 -0
  94. package/styles/igniteui-angular-dark.css +1 -1
  95. package/styles/igniteui-angular.css +1 -1
  96. package/styles/igniteui-bootstrap-dark.css +1 -1
  97. package/styles/igniteui-bootstrap-light.css +1 -1
  98. package/styles/igniteui-dark-green.css +1 -1
  99. package/styles/igniteui-fluent-dark-excel.css +1 -1
  100. package/styles/igniteui-fluent-dark-word.css +1 -1
  101. package/styles/igniteui-fluent-dark.css +1 -1
  102. package/styles/igniteui-fluent-light-excel.css +1 -1
  103. package/styles/igniteui-fluent-light-word.css +1 -1
  104. package/styles/igniteui-fluent-light.css +1 -1
  105. package/styles/igniteui-indigo-dark.css +1 -1
  106. package/styles/igniteui-indigo-light.css +1 -1
  107. package/styles/maps/igniteui-angular-dark.css.map +1 -1
  108. package/styles/maps/igniteui-angular.css.map +1 -1
  109. package/styles/maps/igniteui-bootstrap-dark.css.map +1 -1
  110. package/styles/maps/igniteui-bootstrap-light.css.map +1 -1
  111. package/styles/maps/igniteui-dark-green.css.map +1 -1
  112. package/styles/maps/igniteui-fluent-dark-excel.css.map +1 -1
  113. package/styles/maps/igniteui-fluent-dark-word.css.map +1 -1
  114. package/styles/maps/igniteui-fluent-dark.css.map +1 -1
  115. package/styles/maps/igniteui-fluent-light-excel.css.map +1 -1
  116. package/styles/maps/igniteui-fluent-light-word.css.map +1 -1
  117. package/styles/maps/igniteui-fluent-light.css.map +1 -1
  118. package/styles/maps/igniteui-indigo-dark.css.map +1 -1
  119. package/styles/maps/igniteui-indigo-light.css.map +1 -1
  120. package/types/igniteui-angular-action-strip.d.ts +15 -2
  121. package/types/igniteui-angular-avatar.d.ts +1 -1
  122. package/types/igniteui-angular-banner.d.ts +3 -3
  123. package/types/igniteui-angular-calendar.d.ts +9 -9
  124. package/types/igniteui-angular-card.d.ts +1 -1
  125. package/types/igniteui-angular-carousel.d.ts +9 -9
  126. package/types/igniteui-angular-chat.d.ts +1 -1
  127. package/types/igniteui-angular-chips.d.ts +17 -6
  128. package/types/igniteui-angular-combo.d.ts +13 -17
  129. package/types/igniteui-angular-core.d.ts +504 -202
  130. package/types/igniteui-angular-date-picker.d.ts +3 -3
  131. package/types/igniteui-angular-dialog.d.ts +4 -4
  132. package/types/igniteui-angular-directives.d.ts +59 -60
  133. package/types/igniteui-angular-drop-down.d.ts +16 -16
  134. package/types/igniteui-angular-expansion-panel.d.ts +6 -6
  135. package/types/igniteui-angular-grids-core.d.ts +796 -1053
  136. package/types/igniteui-angular-grids-grid.d.ts +267 -104
  137. package/types/igniteui-angular-grids-hierarchical-grid.d.ts +547 -68
  138. package/types/igniteui-angular-grids-lite.d.ts +18 -9
  139. package/types/igniteui-angular-grids-pivot-grid.d.ts +129 -94
  140. package/types/igniteui-angular-grids-tree-grid.d.ts +51 -5
  141. package/types/igniteui-angular-icon.d.ts +2 -2
  142. package/types/igniteui-angular-input-group.d.ts +4 -4
  143. package/types/igniteui-angular-list.d.ts +4 -4
  144. package/types/igniteui-angular-navigation-drawer.d.ts +3 -3
  145. package/types/igniteui-angular-progressbar.d.ts +0 -1
  146. package/types/igniteui-angular-query-builder.d.ts +9 -9
  147. package/types/igniteui-angular-radio.d.ts +1 -1
  148. package/types/igniteui-angular-select.d.ts +5 -5
  149. package/types/igniteui-angular-simple-combo.d.ts +2 -2
  150. package/types/igniteui-angular-slider.d.ts +4 -4
  151. package/types/igniteui-angular-splitter.d.ts +3 -3
  152. package/types/igniteui-angular-time-picker.d.ts +8 -8
  153. package/types/igniteui-angular-tree.d.ts +8 -8
@@ -430,7 +430,7 @@ class IgxDialogComponent {
430
430
  event.stopPropagation();
431
431
  if (this.isOpen &&
432
432
  this.closeOnOutsideSelect &&
433
- event.target.classList.contains(IgxDialogComponent.DIALOG_CLASS)) {
433
+ event.target?.classList.contains(IgxDialogComponent.DIALOG_CLASS)) {
434
434
  this.close();
435
435
  }
436
436
  }
@@ -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';\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":"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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, ToggleViewCancelableEventArgs, ToggleViewEventArgs } 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: PointerEvent) {\n event.stopPropagation();\n if (\n this.isOpen &&\n this.closeOnOutsideSelect &&\n (event.target as HTMLElement)?.classList.contains(IgxDialogComponent.DIALOG_CLASS)\n ) {\n this.close();\n }\n }\n\n /**\n * @hidden\n */\n public onInternalLeftButtonSelect(event: PointerEvent) {\n this.leftButtonSelect.emit({ dialog: this, event });\n }\n\n /**\n * @hidden\n */\n public onInternalRightButtonSelect(event: PointerEvent) {\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: ToggleViewCancelableEventArgs) {\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: ToggleViewEventArgs) {\n this.closed.emit({ dialog: this, event: eventArgs.event });\n }\n\n private emitOpenedFromDialog(eventArgs: ToggleViewEventArgs) {\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":"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"}
@@ -503,7 +503,7 @@ class CheckboxBaseDirective {
503
503
  .subscribe(this.updateValidityState.bind(this));
504
504
  if (this.ngControl.control.validator ||
505
505
  this.ngControl.control.asyncValidator) {
506
- this._required = this.ngControl?.control?.hasValidator(Validators.required);
506
+ this._required = this.ngControl.control.hasValidator(Validators.required);
507
507
  this.cdr.detectChanges();
508
508
  }
509
509
  }
@@ -1030,6 +1030,7 @@ class IgxDragDirective {
1030
1030
  if (this.ghostElement) {
1031
1031
  return parseInt(this.ghostElement.style.left, 10) + this._ghostHostX;
1032
1032
  }
1033
+ return undefined;
1033
1034
  }
1034
1035
  set ghostTop(pageY) {
1035
1036
  if (this.ghostElement) {
@@ -1043,6 +1044,7 @@ class IgxDragDirective {
1043
1044
  if (this.ghostElement) {
1044
1045
  return parseInt(this.ghostElement.style.top, 10) + this._ghostHostY;
1045
1046
  }
1047
+ return undefined;
1046
1048
  }
1047
1049
  get windowScrollTop() {
1048
1050
  return this.document.documentElement.scrollTop || window.scrollY;
@@ -1551,6 +1553,11 @@ class IgxDragDirective {
1551
1553
  this._startX = event.touches[0].pageX;
1552
1554
  this._startY = event.touches[0].pageY;
1553
1555
  }
1556
+ else {
1557
+ // Fallback for MouseEvent
1558
+ this._startX = event.pageX;
1559
+ this._startY = event.pageY;
1560
+ }
1554
1561
  this._defaultOffsetX = this.baseLeft - this._startX + this.windowScrollLeft;
1555
1562
  this._defaultOffsetY = this.baseTop - this._startY + this.windowScrollTop;
1556
1563
  this._ghostStartX = this._startX + this.ghostOffsetX;
@@ -1567,8 +1574,8 @@ class IgxDragDirective {
1567
1574
  */
1568
1575
  onPointerMove(event) {
1569
1576
  if (this._clicked) {
1570
- let pageX;
1571
- let pageY;
1577
+ let pageX = 0;
1578
+ let pageY = 0;
1572
1579
  if (this.pointerEventsEnabled || !this.touchEventsEnabled) {
1573
1580
  // Check first for pointer events or non touch, because we can have pointer events and touch events at once.
1574
1581
  pageX = event.pageX;
@@ -1580,6 +1587,11 @@ class IgxDragDirective {
1580
1587
  // Prevent scrolling on touch while dragging
1581
1588
  event.preventDefault();
1582
1589
  }
1590
+ else {
1591
+ // Fallback for MouseEvent
1592
+ pageX = event.pageX;
1593
+ pageY = event.pageY;
1594
+ }
1583
1595
  const totalMovedX = pageX - this._startX;
1584
1596
  const totalMovedY = pageY - this._startY;
1585
1597
  if (!this._dragStarted &&
@@ -1680,6 +1692,11 @@ class IgxDragDirective {
1680
1692
  // Prevent scrolling on touch while dragging
1681
1693
  event.preventDefault();
1682
1694
  }
1695
+ else {
1696
+ // Fallback for MouseEvent
1697
+ pageX = event.pageX;
1698
+ pageY = event.pageY;
1699
+ }
1683
1700
  const eventArgs = {
1684
1701
  originalEvent: event,
1685
1702
  owner: this,
@@ -1692,7 +1709,7 @@ class IgxDragDirective {
1692
1709
  this._clicked = false;
1693
1710
  if (this._dragStarted) {
1694
1711
  if (this._lastDropArea && this._lastDropArea !== this.element.nativeElement) {
1695
- this.dispatchDropEvent(event.pageX, event.pageY, event);
1712
+ this.dispatchDropEvent(pageX, pageY, event);
1696
1713
  }
1697
1714
  this.zone.run(() => {
1698
1715
  this.dragEnd.emit(eventArgs);
@@ -1756,7 +1773,7 @@ class IgxDragDirective {
1756
1773
  this.dragEnd.emit(eventArgs);
1757
1774
  });
1758
1775
  if (!this.animInProgress) {
1759
- this.onTransitionEnd(null);
1776
+ this.onTransitionEnd(event);
1760
1777
  }
1761
1778
  }
1762
1779
  }
@@ -1954,7 +1971,7 @@ class IgxDragDirective {
1954
1971
  */
1955
1972
  getFromShadowRoot(elem, pageX, pageY, parentDomElems) {
1956
1973
  const elementsFromPoint = elem.shadowRoot.elementsFromPoint(pageX, pageY);
1957
- const shadowElements = elementsFromPoint.filter(cur => parentDomElems.indexOf(cur) === -1);
1974
+ const shadowElements = elementsFromPoint.filter((cur) => parentDomElems.indexOf(cur) === -1);
1958
1975
  let res = [];
1959
1976
  for (const elFromPoint of shadowElements) {
1960
1977
  if (!!elFromPoint?.shadowRoot && elFromPoint.shadowRoot !== elem.shadowRoot) {
@@ -2017,7 +2034,7 @@ class IgxDragDirective {
2017
2034
  let posX = 0;
2018
2035
  if (elem.style.transform) {
2019
2036
  const matrix = elem.style.transform;
2020
- const values = matrix ? matrix.match(/-?[\d\.]+/g) : undefined;
2037
+ const values = matrix ? matrix.match(/-?[\d.]+/g) : undefined;
2021
2038
  posX = values ? Number(values[1]) : 0;
2022
2039
  }
2023
2040
  return posX;
@@ -2026,7 +2043,7 @@ class IgxDragDirective {
2026
2043
  let posY = 0;
2027
2044
  if (elem.style.transform) {
2028
2045
  const matrix = elem.style.transform;
2029
- const values = matrix ? matrix.match(/-?[\d\.]+/g) : undefined;
2046
+ const values = matrix ? matrix.match(/-?[\d.]+/g) : undefined;
2030
2047
  posY = values ? Number(values[2]) : 0;
2031
2048
  }
2032
2049
  return posY;
@@ -2548,14 +2565,17 @@ class IgxDropDirective {
2548
2565
  return insertIndex;
2549
2566
  }
2550
2567
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDropDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2551
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.1", type: IgxDropDirective, isStandalone: true, selector: "[igxDrop]", inputs: { data: ["igxDrop", "data"], dropChannel: "dropChannel", dropStrategy: "dropStrategy" }, outputs: { enter: "enter", over: "over", leave: "leave", dropped: "dropped" }, host: { listeners: { "igxDrop": "onDragDrop($event)" }, properties: { "attr.droppable": "this.droppable", "class.dragOver": "this.dragover" } }, exportAs: ["drop"], ngImport: i0 }); }
2568
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.1", type: IgxDropDirective, isStandalone: true, selector: "[igxDrop]", inputs: { data: ["igxDrop", "data"], dropChannel: "dropChannel", dropStrategy: "dropStrategy" }, outputs: { enter: "enter", over: "over", leave: "leave", dropped: "dropped" }, host: { listeners: { "igxDrop": "onDragDrop($any($event))" }, properties: { "attr.droppable": "this.droppable", "class.dragOver": "this.dragover" } }, exportAs: ["drop"], ngImport: i0 }); }
2552
2569
  }
2553
2570
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxDropDirective, decorators: [{
2554
2571
  type: Directive,
2555
2572
  args: [{
2556
2573
  exportAs: 'drop',
2557
2574
  selector: '[igxDrop]',
2558
- standalone: true
2575
+ standalone: true,
2576
+ host: {
2577
+ '(igxDrop)': 'onDragDrop($any($event))'
2578
+ }
2559
2579
  }]
2560
2580
  }], ctorParameters: () => [], propDecorators: { data: [{
2561
2581
  type: Input,
@@ -2578,9 +2598,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImpor
2578
2598
  }], dragover: [{
2579
2599
  type: HostBinding,
2580
2600
  args: ['class.dragOver']
2581
- }], onDragDrop: [{
2582
- type: HostListener,
2583
- args: ['igxDrop', ['$event']]
2584
2601
  }] } });
2585
2602
 
2586
2603
  /* NOTE: Drag and drop directives collection for ease-of-use import in standalone components scenario */
@@ -2746,6 +2763,7 @@ class IgxFocusDirective {
2746
2763
  constructor() {
2747
2764
  this.element = inject(ElementRef);
2748
2765
  this.comp = inject(NG_VALUE_ACCESSOR, { self: true, optional: true });
2766
+ // EDITOR_PROVIDER is registered as a multi provider, so the injected value is an array.
2749
2767
  this.control = inject(EDITOR_PROVIDER, { self: true, optional: true });
2750
2768
  this.focusState = true;
2751
2769
  }
@@ -2790,7 +2808,7 @@ class IgxFocusDirective {
2790
2808
  if (this.comp && this.comp[0] && this.comp[0].getEditElement) {
2791
2809
  return this.comp[0].getEditElement();
2792
2810
  }
2793
- if (this.control && this.control[0] && this.control[0].getEditElement) {
2811
+ if (this.control && this.control[0] && this.control[0].getEditElement !== undefined) {
2794
2812
  return this.control[0].getEditElement();
2795
2813
  }
2796
2814
  return this.element.nativeElement;
@@ -3038,7 +3056,7 @@ class IgxScrollInertiaDirective {
3038
3056
  const deltaScaledY = evt.deltaY * (evt.deltaMode === 0 ? FIREFOX_DELTA_MULTIPLIER : 1);
3039
3057
  scrollDeltaY = this.calcAxisCoords(deltaScaledY, -1, 1);
3040
3058
  }
3041
- if (evt.composedPath && this.didChildScroll(evt, scrollDeltaX, scrollDeltaY)) {
3059
+ if (evt.composedPath !== undefined && this.didChildScroll(evt, scrollDeltaX, scrollDeltaY)) {
3042
3060
  return;
3043
3061
  }
3044
3062
  if (scrollDeltaX && this.IgxScrollInertiaDirection === 'horizontal') {
@@ -6152,7 +6170,7 @@ class IgxMaskDirective {
6152
6170
  }
6153
6171
  /** @hidden */
6154
6172
  onBlur(event) {
6155
- const value = event.target['value'];
6173
+ const value = event.target.value;
6156
6174
  this._focused = false;
6157
6175
  this.showDisplayValue(value);
6158
6176
  this._onTouchedCallback();
@@ -6484,28 +6502,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImpor
6484
6502
  args: ['mousedown', ['$event']]
6485
6503
  }] } });
6486
6504
 
6487
- class IgSizeDirective {
6488
- get igSize() {
6489
- return this._size;
6490
- }
6491
- set igSize(value) {
6492
- this._size = `var(--ig-size-${value})`;
6493
- }
6494
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgSizeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6495
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.1", type: IgSizeDirective, isStandalone: true, selector: "[igSize]", inputs: { igSize: "igSize" }, host: { properties: { "style.--ig-size": "this.igSize" } }, ngImport: i0 }); }
6496
- }
6497
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgSizeDirective, decorators: [{
6498
- type: Directive,
6499
- args: [{
6500
- selector: '[igSize]',
6501
- }]
6502
- }], propDecorators: { igSize: [{
6503
- type: Input
6504
- }, {
6505
- type: HostBinding,
6506
- args: ['style.--ig-size']
6507
- }] } });
6508
-
6509
6505
  class IgxTextHighlightService {
6510
6506
  constructor() {
6511
6507
  this.highlightGroupsMap = new Map();
@@ -7126,6 +7122,7 @@ class IgxTemplateOutletDirective {
7126
7122
  // has context, update context
7127
7123
  return { actionType: TemplateOutletAction.UpdateViewContext, cachedView };
7128
7124
  }
7125
+ return undefined;
7129
7126
  }
7130
7127
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxTemplateOutletDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
7131
7128
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.1", type: IgxTemplateOutletDirective, isStandalone: true, selector: "[igxTemplateOutlet]", inputs: { igxTemplateOutletContext: "igxTemplateOutletContext", igxTemplateOutlet: "igxTemplateOutlet" }, outputs: { viewCreated: "viewCreated", viewMoved: "viewMoved", cachedViewLoaded: "cachedViewLoaded", beforeViewDetach: "beforeViewDetach" }, usesOnChanges: true, ngImport: i0 }); }
@@ -7249,6 +7246,7 @@ class IgxToggleDirective {
7249
7246
  * ```
7250
7247
  */
7251
7248
  this.appended = new EventEmitter();
7249
+ this._overlayId = '';
7252
7250
  this._collapsed = true;
7253
7251
  this.destroy$ = new Subject();
7254
7252
  this._overlaySubFilter = [
@@ -7261,7 +7259,7 @@ class IgxToggleDirective {
7261
7259
  this.unsubscribe();
7262
7260
  this.overlayService.detach(this.overlayId);
7263
7261
  const args = { owner: this, id: this._overlayId, event: e.event };
7264
- delete this._overlayId;
7262
+ this._overlayId = '';
7265
7263
  this.closed.emit(args);
7266
7264
  this.cdr.markForCheck();
7267
7265
  };
@@ -7335,7 +7333,7 @@ class IgxToggleDirective {
7335
7333
  this.unsubscribe();
7336
7334
  this.overlayService.detach(this._overlayId);
7337
7335
  this._collapsed = true;
7338
- delete this._overlayId;
7336
+ this._overlayId = '';
7339
7337
  this.cdr.detectChanges();
7340
7338
  return;
7341
7339
  }
@@ -7745,6 +7743,9 @@ class IgxTooltipDirective extends IgxToggleDirective {
7745
7743
  overlaySettings.positionStrategy.settings.closeAnimation = animation;
7746
7744
  }
7747
7745
  }
7746
+ markForCheck() {
7747
+ this.cdr.markForCheck();
7748
+ }
7748
7749
  _createArrow() {
7749
7750
  this._arrowEl = this._renderer.createElement('span');
7750
7751
  this._renderer.setStyle(this._arrowEl, 'position', 'absolute');
@@ -8381,6 +8382,7 @@ class IgxTooltipTargetDirective extends IgxToggleActionDirective {
8381
8382
  * @hidden
8382
8383
  */
8383
8384
  set target(target) {
8385
+ // Guard against a sibling igxToggleAction on the same host assigning a non-tooltip target. See #14196.
8384
8386
  if (target instanceof IgxTooltipDirective) {
8385
8387
  this._target = target;
8386
8388
  }
@@ -8579,7 +8581,7 @@ class IgxTooltipTargetDirective extends IgxToggleActionDirective {
8579
8581
  this._evaluateStickyState();
8580
8582
  this._pendingShowTrigger = triggerEvent?.type ?? null;
8581
8583
  this.target.timeoutId = setTimeout(() => {
8582
- const isHoverTrigger = HOVER_SHOW_TRIGGERS.has(this._pendingShowTrigger);
8584
+ const isHoverTrigger = this._pendingShowTrigger && HOVER_SHOW_TRIGGERS.has(this._pendingShowTrigger);
8583
8585
  this._pendingShowTrigger = null;
8584
8586
  this.target.timeoutId = null;
8585
8587
  if (isHoverTrigger && !this.nativeElement.matches(':hover')) {
@@ -8695,7 +8697,7 @@ class IgxTooltipTargetDirective extends IgxToggleActionDirective {
8695
8697
  this.target.role = "status";
8696
8698
  // Mark the tooltip directive as Dirty to ensure that
8697
8699
  // the CD refreshes the bindings
8698
- this.target.cdr?.markForCheck();
8700
+ this.target.markForCheck();
8699
8701
  }
8700
8702
  }
8701
8703
  /**
@@ -8708,7 +8710,7 @@ class IgxTooltipTargetDirective extends IgxToggleActionDirective {
8708
8710
  this.target.role = "tooltip";
8709
8711
  // Mark the tooltip directive as Dirty to ensure that
8710
8712
  // the CD refreshes the bindings
8711
- this.target.cdr?.markForCheck();
8713
+ this.target.markForCheck();
8712
8714
  }
8713
8715
  }
8714
8716
  _destroyCloseButton() {
@@ -9103,7 +9105,7 @@ class IgxDateTimeEditorDirective extends IgxMaskDirective {
9103
9105
  }
9104
9106
  else {
9105
9107
  const oldValue = this.value && new Date(this.dateValue.getTime());
9106
- const args = { oldValue, newValue: parsedDate, userInput: this.inputValue };
9108
+ const args = { oldValue: oldValue, newValue: parsedDate, userInput: this.inputValue };
9107
9109
  this.validationFailed.emit(args);
9108
9110
  if (DateTimeUtil.isValidDate(args.newValue)) {
9109
9111
  this.updateValue(args.newValue);
@@ -9925,5 +9927,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImpor
9925
9927
  * Generated bundle index. Do not edit.
9926
9928
  */
9927
9929
 
9928
- export { CheckboxBaseDirective, DragDirection, IGX_DRAG_DROP_DIRECTIVES, IGX_TOOLTIP_DIRECTIVES, IgSizeDirective, IgcFormControlDirective, IgcFormsModule, IgxAppendDropStrategy, IgxButtonDirective, IgxButtonModule, IgxDateTimeEditorDirective, IgxDateTimeEditorModule, IgxDefaultDropStrategy, IgxDividerComponent, IgxDividerModule, IgxDividerType, IgxDragDirective, IgxDragDropModule, IgxDragHandleDirective, IgxDragIgnoreDirective, IgxDragLocation, IgxDropDirective, IgxFilterDirective, IgxFilterModule, IgxFilterOptions, IgxFilterPipe, IgxFlexDirective, IgxFocusDirective, IgxFocusModule, IgxFocusTrapDirective, IgxFocusTrapModule, IgxForOfContext, IgxForOfDirective, IgxForOfModule, IgxForOfScrollSyncService, IgxForOfSyncService, IgxForOfToken, IgxGridForOfContext, IgxGridForOfDirective, IgxIconButtonDirective, IgxInsertDropStrategy, IgxLayoutDirective, IgxLayoutModule, IgxMaskDirective, IgxMaskModule, IgxNoTypographyDirective, IgxNotificationsDirective, IgxPrependDropStrategy, IgxRippleDirective, IgxRippleModule, IgxScrollInertiaDirective, IgxScrollInertiaModule, IgxTemplateOutletDirective, IgxTextHighlightDirective, IgxTextHighlightModule, IgxTextHighlightService, IgxTextSelectionDirective, IgxTextSelectionModule, IgxToggleActionDirective, IgxToggleDirective, IgxToggleModule, IgxTooltipDirective, IgxTooltipModule, IgxTooltipTargetDirective, LabelPosition, TooltipPositionStrategy };
9930
+ export { CheckboxBaseDirective, DragDirection, IGX_DRAG_DROP_DIRECTIVES, IGX_TOOLTIP_DIRECTIVES, IgcFormControlDirective, IgcFormsModule, IgxAppendDropStrategy, IgxButtonDirective, IgxButtonModule, IgxDateTimeEditorDirective, IgxDateTimeEditorModule, IgxDefaultDropStrategy, IgxDividerComponent, IgxDividerModule, IgxDividerType, IgxDragDirective, IgxDragDropModule, IgxDragHandleDirective, IgxDragIgnoreDirective, IgxDragLocation, IgxDropDirective, IgxFilterDirective, IgxFilterModule, IgxFilterOptions, IgxFilterPipe, IgxFlexDirective, IgxFocusDirective, IgxFocusModule, IgxFocusTrapDirective, IgxFocusTrapModule, IgxForOfContext, IgxForOfDirective, IgxForOfModule, IgxForOfScrollSyncService, IgxForOfSyncService, IgxForOfToken, IgxGridForOfContext, IgxGridForOfDirective, IgxIconButtonDirective, IgxInsertDropStrategy, IgxLayoutDirective, IgxLayoutModule, IgxMaskDirective, IgxMaskModule, IgxNoTypographyDirective, IgxNotificationsDirective, IgxPrependDropStrategy, IgxRippleDirective, IgxRippleModule, IgxScrollInertiaDirective, IgxScrollInertiaModule, IgxTemplateOutletDirective, IgxTextHighlightDirective, IgxTextHighlightModule, IgxTextHighlightService, IgxTextSelectionDirective, IgxTextSelectionModule, IgxToggleActionDirective, IgxToggleDirective, IgxToggleModule, IgxTooltipDirective, IgxTooltipModule, IgxTooltipTargetDirective, LabelPosition, TooltipPositionStrategy };
9929
9931
  //# sourceMappingURL=igniteui-angular-directives.mjs.map