igniteui-angular 22.1.0-beta.4 → 22.1.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/igniteui-angular-accordion.mjs +4 -4
- package/fesm2022/igniteui-angular-accordion.mjs.map +1 -1
- package/fesm2022/igniteui-angular-action-strip.mjs +3 -1
- package/fesm2022/igniteui-angular-action-strip.mjs.map +1 -1
- package/fesm2022/igniteui-angular-avatar.mjs.map +1 -1
- package/fesm2022/igniteui-angular-badge.mjs +3 -2
- package/fesm2022/igniteui-angular-badge.mjs.map +1 -1
- package/fesm2022/igniteui-angular-banner.mjs +2 -2
- package/fesm2022/igniteui-angular-banner.mjs.map +1 -1
- package/fesm2022/igniteui-angular-button-group.mjs +2 -2
- package/fesm2022/igniteui-angular-button-group.mjs.map +1 -1
- package/fesm2022/igniteui-angular-calendar.mjs +9 -8
- package/fesm2022/igniteui-angular-calendar.mjs.map +1 -1
- package/fesm2022/igniteui-angular-card.mjs +2 -2
- package/fesm2022/igniteui-angular-card.mjs.map +1 -1
- package/fesm2022/igniteui-angular-carousel.mjs.map +1 -1
- package/fesm2022/igniteui-angular-chips.mjs.map +1 -1
- package/fesm2022/igniteui-angular-combo.mjs +6 -17
- package/fesm2022/igniteui-angular-combo.mjs.map +1 -1
- package/fesm2022/igniteui-angular-core.mjs +337 -16
- package/fesm2022/igniteui-angular-core.mjs.map +1 -1
- package/fesm2022/igniteui-angular-date-picker.mjs +14 -12
- package/fesm2022/igniteui-angular-date-picker.mjs.map +1 -1
- package/fesm2022/igniteui-angular-dialog.mjs +1 -1
- package/fesm2022/igniteui-angular-dialog.mjs.map +1 -1
- package/fesm2022/igniteui-angular-directives.mjs +67 -48
- package/fesm2022/igniteui-angular-directives.mjs.map +1 -1
- package/fesm2022/igniteui-angular-drop-down.mjs +2 -3
- package/fesm2022/igniteui-angular-drop-down.mjs.map +1 -1
- package/fesm2022/igniteui-angular-expansion-panel.mjs +12 -23
- package/fesm2022/igniteui-angular-expansion-panel.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-core.mjs +223 -491
- package/fesm2022/igniteui-angular-grids-core.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-grid.mjs +98 -116
- package/fesm2022/igniteui-angular-grids-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs +21 -16
- package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-lite.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-pivot-grid.mjs +153 -75
- package/fesm2022/igniteui-angular-grids-pivot-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-tree-grid.mjs +35 -28
- package/fesm2022/igniteui-angular-grids-tree-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-icon.mjs.map +1 -1
- package/fesm2022/igniteui-angular-input-group.mjs +19 -4
- package/fesm2022/igniteui-angular-input-group.mjs.map +1 -1
- package/fesm2022/igniteui-angular-list.mjs.map +1 -1
- package/fesm2022/igniteui-angular-navbar.mjs.map +1 -1
- package/fesm2022/igniteui-angular-navigation-drawer.mjs +3 -2
- package/fesm2022/igniteui-angular-navigation-drawer.mjs.map +1 -1
- package/fesm2022/igniteui-angular-paginator.mjs +2 -1
- package/fesm2022/igniteui-angular-paginator.mjs.map +1 -1
- package/fesm2022/igniteui-angular-progressbar.mjs +2 -5
- package/fesm2022/igniteui-angular-progressbar.mjs.map +1 -1
- package/fesm2022/igniteui-angular-query-builder.mjs +21 -20
- package/fesm2022/igniteui-angular-query-builder.mjs.map +1 -1
- package/fesm2022/igniteui-angular-radio.mjs +1 -1
- package/fesm2022/igniteui-angular-radio.mjs.map +1 -1
- package/fesm2022/igniteui-angular-select.mjs.map +1 -1
- package/fesm2022/igniteui-angular-simple-combo.mjs +7 -10
- package/fesm2022/igniteui-angular-simple-combo.mjs.map +1 -1
- package/fesm2022/igniteui-angular-slider.mjs +3 -3
- package/fesm2022/igniteui-angular-slider.mjs.map +1 -1
- package/fesm2022/igniteui-angular-splitter.mjs +1 -1
- package/fesm2022/igniteui-angular-splitter.mjs.map +1 -1
- package/fesm2022/igniteui-angular-stepper.mjs +1 -1
- package/fesm2022/igniteui-angular-stepper.mjs.map +1 -1
- package/fesm2022/igniteui-angular-tabs.mjs.map +1 -1
- package/fesm2022/igniteui-angular-time-picker.mjs +6 -3
- package/fesm2022/igniteui-angular-time-picker.mjs.map +1 -1
- package/fesm2022/igniteui-angular-tree.mjs +10 -8
- package/fesm2022/igniteui-angular-tree.mjs.map +1 -1
- package/lib/core/styles/components/button/_button-theme.scss +24 -31
- package/lib/core/styles/components/icon-button/_icon-button-theme.scss +21 -0
- package/lib/core/styles/spec/_mixins.spec.scss +21 -1
- package/lib/core/styles/themes/_scoping.scss +12 -0
- package/lib/core/styles/themes/generators/_base.scss +0 -1
- package/lib/grids/core/src/filtering/excel-style/themes/_derived.scss +3 -2
- package/migrations/migration-collection.json +7 -0
- package/migrations/update-22_1_0_import-migration/index.d.ts +2 -0
- package/migrations/update-22_1_0_import-migration/index.js +228 -0
- package/migrations/update-22_1_0_import-migration/index.spec.d.ts +1 -0
- package/migrations/update-22_1_0_import-migration/index.spec.js +188 -0
- package/package.json +1 -1
- package/styles/igniteui-angular-dark.css +1 -1
- package/styles/igniteui-angular.css +1 -1
- package/styles/igniteui-bootstrap-dark.css +1 -1
- package/styles/igniteui-bootstrap-light.css +1 -1
- package/styles/igniteui-dark-green.css +1 -1
- package/styles/igniteui-fluent-dark-excel.css +1 -1
- package/styles/igniteui-fluent-dark-word.css +1 -1
- package/styles/igniteui-fluent-dark.css +1 -1
- package/styles/igniteui-fluent-light-excel.css +1 -1
- package/styles/igniteui-fluent-light-word.css +1 -1
- package/styles/igniteui-fluent-light.css +1 -1
- package/styles/igniteui-indigo-dark.css +1 -1
- package/styles/igniteui-indigo-light.css +1 -1
- package/styles/maps/igniteui-angular-dark.css.map +1 -1
- package/styles/maps/igniteui-angular.css.map +1 -1
- package/styles/maps/igniteui-bootstrap-dark.css.map +1 -1
- package/styles/maps/igniteui-bootstrap-light.css.map +1 -1
- package/styles/maps/igniteui-dark-green.css.map +1 -1
- package/styles/maps/igniteui-fluent-dark-excel.css.map +1 -1
- package/styles/maps/igniteui-fluent-dark-word.css.map +1 -1
- package/styles/maps/igniteui-fluent-dark.css.map +1 -1
- package/styles/maps/igniteui-fluent-light-excel.css.map +1 -1
- package/styles/maps/igniteui-fluent-light-word.css.map +1 -1
- package/styles/maps/igniteui-fluent-light.css.map +1 -1
- package/styles/maps/igniteui-indigo-dark.css.map +1 -1
- package/styles/maps/igniteui-indigo-light.css.map +1 -1
- package/types/igniteui-angular-avatar.d.ts +1 -1
- package/types/igniteui-angular-banner.d.ts +3 -3
- package/types/igniteui-angular-calendar.d.ts +9 -9
- package/types/igniteui-angular-card.d.ts +2 -2
- package/types/igniteui-angular-carousel.d.ts +9 -9
- package/types/igniteui-angular-chat.d.ts +1 -1
- package/types/igniteui-angular-chips.d.ts +5 -5
- package/types/igniteui-angular-combo.d.ts +13 -17
- package/types/igniteui-angular-core.d.ts +495 -200
- package/types/igniteui-angular-date-picker.d.ts +3 -3
- package/types/igniteui-angular-dialog.d.ts +4 -4
- package/types/igniteui-angular-directives.d.ts +59 -59
- package/types/igniteui-angular-drop-down.d.ts +16 -16
- package/types/igniteui-angular-expansion-panel.d.ts +6 -6
- package/types/igniteui-angular-grids-core.d.ts +782 -1044
- package/types/igniteui-angular-grids-grid.d.ts +267 -104
- package/types/igniteui-angular-grids-hierarchical-grid.d.ts +547 -68
- package/types/igniteui-angular-grids-lite.d.ts +7 -7
- package/types/igniteui-angular-grids-pivot-grid.d.ts +129 -94
- package/types/igniteui-angular-grids-tree-grid.d.ts +51 -5
- package/types/igniteui-angular-icon.d.ts +2 -2
- package/types/igniteui-angular-input-group.d.ts +19 -6
- package/types/igniteui-angular-list.d.ts +4 -4
- package/types/igniteui-angular-navigation-drawer.d.ts +3 -3
- package/types/igniteui-angular-progressbar.d.ts +0 -1
- package/types/igniteui-angular-query-builder.d.ts +9 -9
- package/types/igniteui-angular-radio.d.ts +1 -1
- package/types/igniteui-angular-select.d.ts +5 -5
- package/types/igniteui-angular-simple-combo.d.ts +2 -2
- package/types/igniteui-angular-slider.d.ts +4 -4
- package/types/igniteui-angular-splitter.d.ts +3 -3
- package/types/igniteui-angular-time-picker.d.ts +8 -8
- 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
|
|
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
|
|
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(
|
|
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(
|
|
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
|
|
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
|
|
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') {
|
|
@@ -4359,8 +4377,8 @@ class IgxForOfDirective extends IgxForOfToken {
|
|
|
4359
4377
|
const dimension = this.igxForScrollOrientation === 'horizontal' ?
|
|
4360
4378
|
this.igxForSizePropName : 'height';
|
|
4361
4379
|
const nodeSize = dimension === 'height' ?
|
|
4362
|
-
rNode.clientHeight + this.getMargin(rNode, dimension) :
|
|
4363
|
-
rNode.clientWidth + this.getMargin(rNode, dimension);
|
|
4380
|
+
rNode.clientHeight + this.getBorder(rNode, dimension) + this.getMargin(rNode, dimension) :
|
|
4381
|
+
rNode.clientWidth + this.getBorder(rNode, dimension) + this.getMargin(rNode, dimension);
|
|
4364
4382
|
return nodeSize;
|
|
4365
4383
|
}
|
|
4366
4384
|
/**
|
|
@@ -5026,6 +5044,15 @@ class IgxForOfDirective extends IgxForOfToken {
|
|
|
5026
5044
|
return parseFloat(styles['marginLeft']) +
|
|
5027
5045
|
parseFloat(styles['marginRight']) || 0;
|
|
5028
5046
|
}
|
|
5047
|
+
getBorder(node, dimension) {
|
|
5048
|
+
const styles = window.getComputedStyle(node);
|
|
5049
|
+
if (dimension === 'height') {
|
|
5050
|
+
return (parseFloat(styles['borderTopWidth']) || 0) +
|
|
5051
|
+
(parseFloat(styles['borderBottomWidth']) || 0);
|
|
5052
|
+
}
|
|
5053
|
+
return (parseFloat(styles['borderLeftWidth']) || 0) +
|
|
5054
|
+
(parseFloat(styles['borderRightWidth']) || 0);
|
|
5055
|
+
}
|
|
5029
5056
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxForOfDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5030
5057
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.1", type: IgxForOfDirective, isStandalone: true, selector: "[igxFor][igxForOf]", inputs: { igxForOf: "igxForOf", igxForSizePropName: "igxForSizePropName", igxForScrollOrientation: "igxForScrollOrientation", igxForScrollContainer: "igxForScrollContainer", igxForContainerSize: "igxForContainerSize", igxForInitialChunkSize: "igxForInitialChunkSize", igxForItemSize: "igxForItemSize", igxForTotalItemCount: "igxForTotalItemCount", igxForTrackBy: "igxForTrackBy" }, outputs: { chunkLoad: "chunkLoad", scrollbarVisibilityChanged: "scrollbarVisibilityChanged", chunkSizeChange: "chunkSizeChange", contentSizeChange: "contentSizeChange", dataChanged: "dataChanged", beforeViewDestroyed: "beforeViewDestroyed", chunkPreload: "chunkPreload" }, providers: [
|
|
5031
5058
|
IgxForOfScrollSyncService,
|
|
@@ -5148,7 +5175,10 @@ class IgxGridForOfDirective extends IgxForOfDirective {
|
|
|
5148
5175
|
super.ngOnInit();
|
|
5149
5176
|
this.removeScrollEventListeners();
|
|
5150
5177
|
const destructor = takeUntil(this.destroy$);
|
|
5151
|
-
|
|
5178
|
+
const resizeObserver = getResizeObserver();
|
|
5179
|
+
if (resizeObserver) {
|
|
5180
|
+
this.viewObserver = new resizeObserver((entries) => this.viewResizeNotify.next(entries));
|
|
5181
|
+
}
|
|
5152
5182
|
this.viewResizeNotify.pipe(filter(() => this.igxForContainerSize && this.igxForOf && this.igxForOf.length > 0), destructor).subscribe((entries) => this._zone.runTask(() => this.updateViewSizes(entries)));
|
|
5153
5183
|
}
|
|
5154
5184
|
ngOnChanges(changes) {
|
|
@@ -6140,7 +6170,7 @@ class IgxMaskDirective {
|
|
|
6140
6170
|
}
|
|
6141
6171
|
/** @hidden */
|
|
6142
6172
|
onBlur(event) {
|
|
6143
|
-
const value = event.target
|
|
6173
|
+
const value = event.target.value;
|
|
6144
6174
|
this._focused = false;
|
|
6145
6175
|
this.showDisplayValue(value);
|
|
6146
6176
|
this._onTouchedCallback();
|
|
@@ -6472,28 +6502,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImpor
|
|
|
6472
6502
|
args: ['mousedown', ['$event']]
|
|
6473
6503
|
}] } });
|
|
6474
6504
|
|
|
6475
|
-
class IgSizeDirective {
|
|
6476
|
-
get igSize() {
|
|
6477
|
-
return this._size;
|
|
6478
|
-
}
|
|
6479
|
-
set igSize(value) {
|
|
6480
|
-
this._size = `var(--ig-size-${value})`;
|
|
6481
|
-
}
|
|
6482
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgSizeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
6483
|
-
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 }); }
|
|
6484
|
-
}
|
|
6485
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgSizeDirective, decorators: [{
|
|
6486
|
-
type: Directive,
|
|
6487
|
-
args: [{
|
|
6488
|
-
selector: '[igSize]',
|
|
6489
|
-
}]
|
|
6490
|
-
}], propDecorators: { igSize: [{
|
|
6491
|
-
type: Input
|
|
6492
|
-
}, {
|
|
6493
|
-
type: HostBinding,
|
|
6494
|
-
args: ['style.--ig-size']
|
|
6495
|
-
}] } });
|
|
6496
|
-
|
|
6497
6505
|
class IgxTextHighlightService {
|
|
6498
6506
|
constructor() {
|
|
6499
6507
|
this.highlightGroupsMap = new Map();
|
|
@@ -7114,6 +7122,7 @@ class IgxTemplateOutletDirective {
|
|
|
7114
7122
|
// has context, update context
|
|
7115
7123
|
return { actionType: TemplateOutletAction.UpdateViewContext, cachedView };
|
|
7116
7124
|
}
|
|
7125
|
+
return undefined;
|
|
7117
7126
|
}
|
|
7118
7127
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: IgxTemplateOutletDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
7119
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 }); }
|
|
@@ -7237,6 +7246,7 @@ class IgxToggleDirective {
|
|
|
7237
7246
|
* ```
|
|
7238
7247
|
*/
|
|
7239
7248
|
this.appended = new EventEmitter();
|
|
7249
|
+
this._overlayId = '';
|
|
7240
7250
|
this._collapsed = true;
|
|
7241
7251
|
this.destroy$ = new Subject();
|
|
7242
7252
|
this._overlaySubFilter = [
|
|
@@ -7249,7 +7259,7 @@ class IgxToggleDirective {
|
|
|
7249
7259
|
this.unsubscribe();
|
|
7250
7260
|
this.overlayService.detach(this.overlayId);
|
|
7251
7261
|
const args = { owner: this, id: this._overlayId, event: e.event };
|
|
7252
|
-
|
|
7262
|
+
this._overlayId = '';
|
|
7253
7263
|
this.closed.emit(args);
|
|
7254
7264
|
this.cdr.markForCheck();
|
|
7255
7265
|
};
|
|
@@ -7323,7 +7333,7 @@ class IgxToggleDirective {
|
|
|
7323
7333
|
this.unsubscribe();
|
|
7324
7334
|
this.overlayService.detach(this._overlayId);
|
|
7325
7335
|
this._collapsed = true;
|
|
7326
|
-
|
|
7336
|
+
this._overlayId = '';
|
|
7327
7337
|
this.cdr.detectChanges();
|
|
7328
7338
|
return;
|
|
7329
7339
|
}
|
|
@@ -7733,6 +7743,9 @@ class IgxTooltipDirective extends IgxToggleDirective {
|
|
|
7733
7743
|
overlaySettings.positionStrategy.settings.closeAnimation = animation;
|
|
7734
7744
|
}
|
|
7735
7745
|
}
|
|
7746
|
+
markForCheck() {
|
|
7747
|
+
this.cdr.markForCheck();
|
|
7748
|
+
}
|
|
7736
7749
|
_createArrow() {
|
|
7737
7750
|
this._arrowEl = this._renderer.createElement('span');
|
|
7738
7751
|
this._renderer.setStyle(this._arrowEl, 'position', 'absolute');
|
|
@@ -8100,6 +8113,7 @@ function parseTriggers(triggers) {
|
|
|
8100
8113
|
return new Set((triggers ?? '').split(TooltipRegexes.triggers).filter((s) => s.trim()));
|
|
8101
8114
|
}
|
|
8102
8115
|
|
|
8116
|
+
const HOVER_SHOW_TRIGGERS = new Set(['mouseenter', 'mouseover', 'pointerenter', 'pointerover']);
|
|
8103
8117
|
/**
|
|
8104
8118
|
* **Ignite UI for Angular Tooltip Target** -
|
|
8105
8119
|
* [Documentation](https://www.infragistics.com/products/ignite-ui-angular/angular/components/tooltip)
|
|
@@ -8368,6 +8382,7 @@ class IgxTooltipTargetDirective extends IgxToggleActionDirective {
|
|
|
8368
8382
|
* @hidden
|
|
8369
8383
|
*/
|
|
8370
8384
|
set target(target) {
|
|
8385
|
+
// Guard against a sibling igxToggleAction on the same host assigning a non-tooltip target. See #14196.
|
|
8371
8386
|
if (target instanceof IgxTooltipDirective) {
|
|
8372
8387
|
this._target = target;
|
|
8373
8388
|
}
|
|
@@ -8566,8 +8581,12 @@ class IgxTooltipTargetDirective extends IgxToggleActionDirective {
|
|
|
8566
8581
|
this._evaluateStickyState();
|
|
8567
8582
|
this._pendingShowTrigger = triggerEvent?.type ?? null;
|
|
8568
8583
|
this.target.timeoutId = setTimeout(() => {
|
|
8569
|
-
|
|
8584
|
+
const isHoverTrigger = this._pendingShowTrigger && HOVER_SHOW_TRIGGERS.has(this._pendingShowTrigger);
|
|
8570
8585
|
this._pendingShowTrigger = null;
|
|
8586
|
+
this.target.timeoutId = null;
|
|
8587
|
+
if (isHoverTrigger && !this.nativeElement.matches(':hover')) {
|
|
8588
|
+
return;
|
|
8589
|
+
}
|
|
8571
8590
|
this.target.open(this._mergedOverlaySettings);
|
|
8572
8591
|
}, withDelay ? this.showDelay : 0);
|
|
8573
8592
|
}
|
|
@@ -8678,7 +8697,7 @@ class IgxTooltipTargetDirective extends IgxToggleActionDirective {
|
|
|
8678
8697
|
this.target.role = "status";
|
|
8679
8698
|
// Mark the tooltip directive as Dirty to ensure that
|
|
8680
8699
|
// the CD refreshes the bindings
|
|
8681
|
-
this.target.
|
|
8700
|
+
this.target.markForCheck();
|
|
8682
8701
|
}
|
|
8683
8702
|
}
|
|
8684
8703
|
/**
|
|
@@ -8691,7 +8710,7 @@ class IgxTooltipTargetDirective extends IgxToggleActionDirective {
|
|
|
8691
8710
|
this.target.role = "tooltip";
|
|
8692
8711
|
// Mark the tooltip directive as Dirty to ensure that
|
|
8693
8712
|
// the CD refreshes the bindings
|
|
8694
|
-
this.target.
|
|
8713
|
+
this.target.markForCheck();
|
|
8695
8714
|
}
|
|
8696
8715
|
}
|
|
8697
8716
|
_destroyCloseButton() {
|
|
@@ -9086,7 +9105,7 @@ class IgxDateTimeEditorDirective extends IgxMaskDirective {
|
|
|
9086
9105
|
}
|
|
9087
9106
|
else {
|
|
9088
9107
|
const oldValue = this.value && new Date(this.dateValue.getTime());
|
|
9089
|
-
const args = { oldValue, newValue: parsedDate, userInput: this.inputValue };
|
|
9108
|
+
const args = { oldValue: oldValue, newValue: parsedDate, userInput: this.inputValue };
|
|
9090
9109
|
this.validationFailed.emit(args);
|
|
9091
9110
|
if (DateTimeUtil.isValidDate(args.newValue)) {
|
|
9092
9111
|
this.updateValue(args.newValue);
|
|
@@ -9908,5 +9927,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImpor
|
|
|
9908
9927
|
* Generated bundle index. Do not edit.
|
|
9909
9928
|
*/
|
|
9910
9929
|
|
|
9911
|
-
export { CheckboxBaseDirective, DragDirection, IGX_DRAG_DROP_DIRECTIVES, IGX_TOOLTIP_DIRECTIVES,
|
|
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 };
|
|
9912
9931
|
//# sourceMappingURL=igniteui-angular-directives.mjs.map
|