igniteui-angular 21.0.0-alpha.8 → 21.0.0-alpha.9
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 +61 -61
- package/fesm2022/igniteui-angular-accordion.mjs.map +1 -1
- package/fesm2022/igniteui-angular-action-strip.mjs +37 -39
- package/fesm2022/igniteui-angular-action-strip.mjs.map +1 -1
- package/fesm2022/igniteui-angular-avatar.mjs +51 -51
- package/fesm2022/igniteui-angular-avatar.mjs.map +1 -1
- package/fesm2022/igniteui-angular-banner.mjs +58 -58
- package/fesm2022/igniteui-angular-banner.mjs.map +1 -1
- package/fesm2022/igniteui-angular-button-group.mjs +64 -64
- package/fesm2022/igniteui-angular-button-group.mjs.map +1 -1
- package/fesm2022/igniteui-angular-calendar.mjs +159 -177
- package/fesm2022/igniteui-angular-calendar.mjs.map +1 -1
- package/fesm2022/igniteui-angular-card.mjs +12 -17
- package/fesm2022/igniteui-angular-card.mjs.map +1 -1
- package/fesm2022/igniteui-angular-carousel.mjs +44 -54
- package/fesm2022/igniteui-angular-carousel.mjs.map +1 -1
- package/fesm2022/igniteui-angular-chips.mjs +148 -151
- package/fesm2022/igniteui-angular-chips.mjs.map +1 -1
- package/fesm2022/igniteui-angular-combo.mjs +396 -443
- package/fesm2022/igniteui-angular-combo.mjs.map +1 -1
- package/fesm2022/igniteui-angular-core.mjs +44 -57
- package/fesm2022/igniteui-angular-core.mjs.map +1 -1
- package/fesm2022/igniteui-angular-date-picker.mjs +25 -55
- package/fesm2022/igniteui-angular-date-picker.mjs.map +1 -1
- package/fesm2022/igniteui-angular-dialog.mjs +7 -10
- package/fesm2022/igniteui-angular-dialog.mjs.map +1 -1
- package/fesm2022/igniteui-angular-directives.mjs +464 -534
- package/fesm2022/igniteui-angular-directives.mjs.map +1 -1
- package/fesm2022/igniteui-angular-drop-down.mjs +368 -409
- package/fesm2022/igniteui-angular-drop-down.mjs.map +1 -1
- package/fesm2022/igniteui-angular-expansion-panel.mjs +89 -103
- package/fesm2022/igniteui-angular-expansion-panel.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-core.mjs +4252 -4353
- package/fesm2022/igniteui-angular-grids-core.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-grid.mjs +81 -141
- package/fesm2022/igniteui-angular-grids-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs +135 -183
- package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-pivot-grid.mjs +477 -531
- package/fesm2022/igniteui-angular-grids-pivot-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-tree-grid.mjs +111 -159
- package/fesm2022/igniteui-angular-grids-tree-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-icon.mjs +20 -42
- package/fesm2022/igniteui-angular-icon.mjs.map +1 -1
- package/fesm2022/igniteui-angular-input-group.mjs +21 -48
- package/fesm2022/igniteui-angular-input-group.mjs.map +1 -1
- package/fesm2022/igniteui-angular-list.mjs +84 -86
- package/fesm2022/igniteui-angular-list.mjs.map +1 -1
- package/fesm2022/igniteui-angular-navigation-drawer.mjs +178 -184
- package/fesm2022/igniteui-angular-navigation-drawer.mjs.map +1 -1
- package/fesm2022/igniteui-angular-paginator.mjs +77 -81
- package/fesm2022/igniteui-angular-paginator.mjs.map +1 -1
- package/fesm2022/igniteui-angular-progressbar.mjs +44 -44
- package/fesm2022/igniteui-angular-progressbar.mjs.map +1 -1
- package/fesm2022/igniteui-angular-query-builder.mjs +22 -26
- package/fesm2022/igniteui-angular-query-builder.mjs.map +1 -1
- package/fesm2022/igniteui-angular-radio.mjs +9 -15
- package/fesm2022/igniteui-angular-radio.mjs.map +1 -1
- package/fesm2022/igniteui-angular-select.mjs +66 -78
- package/fesm2022/igniteui-angular-select.mjs.map +1 -1
- package/fesm2022/igniteui-angular-simple-combo.mjs +13 -32
- package/fesm2022/igniteui-angular-simple-combo.mjs.map +1 -1
- package/fesm2022/igniteui-angular-slider.mjs +34 -35
- package/fesm2022/igniteui-angular-slider.mjs.map +1 -1
- package/fesm2022/igniteui-angular-splitter.mjs +76 -79
- package/fesm2022/igniteui-angular-splitter.mjs.map +1 -1
- package/fesm2022/igniteui-angular-stepper.mjs +98 -111
- package/fesm2022/igniteui-angular-stepper.mjs.map +1 -1
- package/fesm2022/igniteui-angular-tabs.mjs +90 -94
- package/fesm2022/igniteui-angular-tabs.mjs.map +1 -1
- package/fesm2022/igniteui-angular-time-picker.mjs +31 -51
- package/fesm2022/igniteui-angular-time-picker.mjs.map +1 -1
- package/fesm2022/igniteui-angular-toast.mjs +46 -52
- package/fesm2022/igniteui-angular-toast.mjs.map +1 -1
- package/fesm2022/igniteui-angular-tree.mjs +84 -103
- package/fesm2022/igniteui-angular-tree.mjs.map +1 -1
- package/migrations/common/tsUtils.d.ts +17 -2
- package/migrations/common/tsUtils.js +20 -9
- package/migrations/update-17_0_0/index.js +1 -1
- package/migrations/update-21_0_0_import-migration/index.js +10 -19
- package/package.json +1 -1
- package/types/igniteui-angular-accordion.d.ts +1 -2
- package/types/igniteui-angular-action-strip.d.ts +2 -7
- package/types/igniteui-angular-avatar.d.ts +1 -2
- package/types/igniteui-angular-banner.d.ts +0 -1
- package/types/igniteui-angular-button-group.d.ts +1 -2
- package/types/igniteui-angular-calendar.d.ts +8 -22
- package/types/igniteui-angular-card.d.ts +1 -2
- package/types/igniteui-angular-carousel.d.ts +3 -5
- package/types/igniteui-angular-chips.d.ts +4 -5
- package/types/igniteui-angular-combo.d.ts +7 -11
- package/types/igniteui-angular-core.d.ts +8 -13
- package/types/igniteui-angular-date-picker.d.ts +10 -10
- package/types/igniteui-angular-dialog.d.ts +4 -4
- package/types/igniteui-angular-directives.d.ts +58 -82
- package/types/igniteui-angular-drop-down.d.ts +7 -12
- package/types/igniteui-angular-expansion-panel.d.ts +6 -10
- package/types/igniteui-angular-grids-core.d.ts +235 -300
- package/types/igniteui-angular-grids-grid.d.ts +6 -21
- package/types/igniteui-angular-grids-hierarchical-grid.d.ts +5 -10
- package/types/igniteui-angular-grids-pivot-grid.d.ts +9 -21
- package/types/igniteui-angular-grids-tree-grid.d.ts +6 -9
- package/types/igniteui-angular-icon.d.ts +159 -160
- package/types/igniteui-angular-input-group.d.ts +4 -5
- package/types/igniteui-angular-list.d.ts +4 -11
- package/types/igniteui-angular-navigation-drawer.d.ts +3 -6
- package/types/igniteui-angular-paginator.d.ts +3 -7
- package/types/igniteui-angular-progressbar.d.ts +1 -4
- package/types/igniteui-angular-query-builder.d.ts +2 -3
- package/types/igniteui-angular-radio.d.ts +4 -4
- package/types/igniteui-angular-select.d.ts +3 -4
- package/types/igniteui-angular-simple-combo.d.ts +8 -9
- package/types/igniteui-angular-slider.d.ts +3 -4
- package/types/igniteui-angular-splitter.d.ts +2 -4
- package/types/igniteui-angular-stepper.d.ts +44 -46
- package/types/igniteui-angular-tabs.d.ts +12 -15
- package/types/igniteui-angular-time-picker.d.ts +5 -7
- package/types/igniteui-angular-toast.d.ts +3 -4
- package/types/igniteui-angular-tree.d.ts +66 -68
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, booleanAttribute, ContentChildren, Output, Input, HostBinding, Component, NgModule } from '@angular/core';
|
|
2
|
+
import { inject, ChangeDetectorRef, EventEmitter, booleanAttribute, ContentChildren, Output, Input, HostBinding, Component, NgModule } from '@angular/core';
|
|
3
3
|
import { Subject, fromEvent } from 'rxjs';
|
|
4
4
|
import { takeUntil } from 'rxjs/operators';
|
|
5
5
|
import { ACCORDION_NAVIGATION_KEYS } from 'igniteui-angular/core';
|
|
@@ -31,64 +31,8 @@ let NEXT_ID = 0;
|
|
|
31
31
|
* ```
|
|
32
32
|
*/
|
|
33
33
|
class IgxAccordionComponent {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
*
|
|
37
|
-
* ```html
|
|
38
|
-
* <igx-accordion [animationSettings]="customAnimationSettings"></igx-accordion>
|
|
39
|
-
* ```
|
|
40
|
-
*
|
|
41
|
-
* ```typescript
|
|
42
|
-
* const customAnimationSettings: ToggleAnimationSettings = {
|
|
43
|
-
* openAnimation: growVerIn,
|
|
44
|
-
* closeAnimation: growVerOut
|
|
45
|
-
* };
|
|
46
|
-
*
|
|
47
|
-
* this.accordion.animationSettings = customAnimationSettings;
|
|
48
|
-
* ```
|
|
49
|
-
*/
|
|
50
|
-
get animationSettings() {
|
|
51
|
-
return this._animationSettings;
|
|
52
|
-
}
|
|
53
|
-
set animationSettings(value) {
|
|
54
|
-
this._animationSettings = value;
|
|
55
|
-
this.updatePanelsAnimation();
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Get/Set how the accordion handles the expansion of the projected expansion panels.
|
|
59
|
-
* If set to `true`, only a single panel can be expanded at a time, collapsing all others
|
|
60
|
-
*
|
|
61
|
-
* ```html
|
|
62
|
-
* <igx-accordion [singleBranchExpand]="true">
|
|
63
|
-
* ...
|
|
64
|
-
* </igx-accordion>
|
|
65
|
-
* ```
|
|
66
|
-
*
|
|
67
|
-
* ```typescript
|
|
68
|
-
* this.accordion.singleBranchExpand = false;
|
|
69
|
-
* ```
|
|
70
|
-
*/
|
|
71
|
-
get singleBranchExpand() {
|
|
72
|
-
return this._singleBranchExpand;
|
|
73
|
-
}
|
|
74
|
-
set singleBranchExpand(val) {
|
|
75
|
-
this._singleBranchExpand = val;
|
|
76
|
-
if (val) {
|
|
77
|
-
this.collapseAllExceptLast();
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Get all panels.
|
|
82
|
-
*
|
|
83
|
-
* ```typescript
|
|
84
|
-
* const panels: IgxExpansionPanelComponent[] = this.accordion.panels;
|
|
85
|
-
* ```
|
|
86
|
-
*/
|
|
87
|
-
get panels() {
|
|
88
|
-
return this._panels?.toArray();
|
|
89
|
-
}
|
|
90
|
-
constructor(cdr) {
|
|
91
|
-
this.cdr = cdr;
|
|
34
|
+
constructor() {
|
|
35
|
+
this.cdr = inject(ChangeDetectorRef);
|
|
92
36
|
/**
|
|
93
37
|
* Get/Set the `id` of the accordion component.
|
|
94
38
|
* Default value is `"igx-accordion-0"`;
|
|
@@ -166,6 +110,62 @@ class IgxAccordionComponent {
|
|
|
166
110
|
this._unsubChildren$ = new Subject();
|
|
167
111
|
this._singleBranchExpand = false;
|
|
168
112
|
}
|
|
113
|
+
/**
|
|
114
|
+
* Get/Set the animation settings that panels should use when expanding/collpasing.
|
|
115
|
+
*
|
|
116
|
+
* ```html
|
|
117
|
+
* <igx-accordion [animationSettings]="customAnimationSettings"></igx-accordion>
|
|
118
|
+
* ```
|
|
119
|
+
*
|
|
120
|
+
* ```typescript
|
|
121
|
+
* const customAnimationSettings: ToggleAnimationSettings = {
|
|
122
|
+
* openAnimation: growVerIn,
|
|
123
|
+
* closeAnimation: growVerOut
|
|
124
|
+
* };
|
|
125
|
+
*
|
|
126
|
+
* this.accordion.animationSettings = customAnimationSettings;
|
|
127
|
+
* ```
|
|
128
|
+
*/
|
|
129
|
+
get animationSettings() {
|
|
130
|
+
return this._animationSettings;
|
|
131
|
+
}
|
|
132
|
+
set animationSettings(value) {
|
|
133
|
+
this._animationSettings = value;
|
|
134
|
+
this.updatePanelsAnimation();
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Get/Set how the accordion handles the expansion of the projected expansion panels.
|
|
138
|
+
* If set to `true`, only a single panel can be expanded at a time, collapsing all others
|
|
139
|
+
*
|
|
140
|
+
* ```html
|
|
141
|
+
* <igx-accordion [singleBranchExpand]="true">
|
|
142
|
+
* ...
|
|
143
|
+
* </igx-accordion>
|
|
144
|
+
* ```
|
|
145
|
+
*
|
|
146
|
+
* ```typescript
|
|
147
|
+
* this.accordion.singleBranchExpand = false;
|
|
148
|
+
* ```
|
|
149
|
+
*/
|
|
150
|
+
get singleBranchExpand() {
|
|
151
|
+
return this._singleBranchExpand;
|
|
152
|
+
}
|
|
153
|
+
set singleBranchExpand(val) {
|
|
154
|
+
this._singleBranchExpand = val;
|
|
155
|
+
if (val) {
|
|
156
|
+
this.collapseAllExceptLast();
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Get all panels.
|
|
161
|
+
*
|
|
162
|
+
* ```typescript
|
|
163
|
+
* const panels: IgxExpansionPanelComponent[] = this.accordion.panels;
|
|
164
|
+
* ```
|
|
165
|
+
*/
|
|
166
|
+
get panels() {
|
|
167
|
+
return this._panels?.toArray();
|
|
168
|
+
}
|
|
169
169
|
/** @hidden @internal **/
|
|
170
170
|
ngAfterContentInit() {
|
|
171
171
|
this.updatePanelsAnimation();
|
|
@@ -347,13 +347,13 @@ class IgxAccordionComponent {
|
|
|
347
347
|
this.panels?.forEach(panel => panel.animationSettings = this.animationSettings);
|
|
348
348
|
}
|
|
349
349
|
}
|
|
350
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IgxAccordionComponent, deps: [
|
|
350
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IgxAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
351
351
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "21.0.0", type: IgxAccordionComponent, isStandalone: true, selector: "igx-accordion", inputs: { id: "id", animationSettings: "animationSettings", singleBranchExpand: ["singleBranchExpand", "singleBranchExpand", booleanAttribute] }, outputs: { panelExpanding: "panelExpanding", panelExpanded: "panelExpanded", panelCollapsing: "panelCollapsing", panelCollapsed: "panelCollapsed" }, host: { properties: { "attr.id": "this.id", "class.igx-accordion": "this.cssClass", "style.display": "this.displayStyle" } }, queries: [{ propertyName: "_panels", predicate: IgxExpansionPanelComponent }], ngImport: i0, template: "<ng-content select=\"igx-expansion-panel\"></ng-content>\n" }); }
|
|
352
352
|
}
|
|
353
353
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IgxAccordionComponent, decorators: [{
|
|
354
354
|
type: Component,
|
|
355
355
|
args: [{ selector: 'igx-accordion', standalone: true, template: "<ng-content select=\"igx-expansion-panel\"></ng-content>\n" }]
|
|
356
|
-
}],
|
|
356
|
+
}], propDecorators: { id: [{
|
|
357
357
|
type: HostBinding,
|
|
358
358
|
args: ['attr.id']
|
|
359
359
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"igniteui-angular-accordion.mjs","sources":["../../../projects/igniteui-angular/accordion/src/accordion/accordion.component.ts","../../../projects/igniteui-angular/accordion/src/accordion/accordion.component.html","../../../projects/igniteui-angular/accordion/src/accordion/public_api.ts","../../../projects/igniteui-angular/accordion/src/accordion/accordion.module.ts","../../../projects/igniteui-angular/accordion/src/igniteui-angular-accordion.ts"],"sourcesContent":["import {\n AfterContentInit, AfterViewInit, ChangeDetectorRef, Component, ContentChildren, EventEmitter,\n HostBinding, Input, OnDestroy, Output, QueryList, booleanAttribute\n} from '@angular/core';\nimport { fromEvent, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { ACCORDION_NAVIGATION_KEYS } from 'igniteui-angular/core';\nimport {\n IExpansionPanelCancelableEventArgs,\n IExpansionPanelEventArgs, IgxExpansionPanelBase\n} from 'igniteui-angular/expansion-panel';\nimport { IgxExpansionPanelComponent } from 'igniteui-angular/expansion-panel';\nimport { ToggleAnimationSettings } from 'igniteui-angular/expansion-panel';\n\nexport interface IAccordionEventArgs extends IExpansionPanelEventArgs {\n owner: IgxAccordionComponent;\n /** Provides a reference to the `IgxExpansionPanelComponent` which was expanded/collapsed. */\n panel: IgxExpansionPanelBase;\n}\n\nexport interface IAccordionCancelableEventArgs extends IExpansionPanelCancelableEventArgs {\n owner: IgxAccordionComponent;\n /** Provides a reference to the `IgxExpansionPanelComponent` which is currently expanding/collapsing. */\n panel: IgxExpansionPanelBase;\n /** Enables canceling the expansion/collapse operation. */\n cancel: boolean;\n}\n\nlet NEXT_ID = 0;\n\n/**\n * IgxAccordion is a container-based component that contains that can house multiple expansion panels.\n *\n * @igxModule IgxAccordionModule\n *\n * @igxKeywords accordion\n *\n * @igxGroup Layouts\n *\n * @remarks\n * The Ignite UI for Angular Accordion component enables the user to navigate among multiple collapsing panels\n * displayed in a single container.\n * The accordion offers keyboard navigation and API to control the underlying panels' expansion state.\n *\n * @example\n * ```html\n * <igx-accordion>\n * <igx-expansion-panel *ngFor=\"let panel of panels\">\n * ...\n * </igx-expansion-panel>\n * </igx-accordion>\n * ```\n */\n@Component({\n selector: 'igx-accordion',\n templateUrl: 'accordion.component.html',\n standalone: true\n})\nexport class IgxAccordionComponent implements AfterContentInit, AfterViewInit, OnDestroy {\n /**\n * Get/Set the `id` of the accordion component.\n * Default value is `\"igx-accordion-0\"`;\n * ```html\n * <igx-accordion id=\"my-first-accordion\"></igx-accordion>\n * ```\n * ```typescript\n * const accordionId = this.accordion.id;\n * ```\n */\n @HostBinding('attr.id')\n @Input()\n public id = `igx-accordion-${NEXT_ID++}`;\n\n /** @hidden @internal **/\n @HostBinding('class.igx-accordion')\n public cssClass = 'igx-accordion';\n\n /** @hidden @internal **/\n @HostBinding('style.display')\n public displayStyle = 'block';\n\n /**\n * Get/Set the animation settings that panels should use when expanding/collpasing.\n *\n * ```html\n * <igx-accordion [animationSettings]=\"customAnimationSettings\"></igx-accordion>\n * ```\n *\n * ```typescript\n * const customAnimationSettings: ToggleAnimationSettings = {\n * openAnimation: growVerIn,\n * closeAnimation: growVerOut\n * };\n *\n * this.accordion.animationSettings = customAnimationSettings;\n * ```\n */\n @Input()\n public get animationSettings(): ToggleAnimationSettings {\n return this._animationSettings;\n }\n\n public set animationSettings(value: ToggleAnimationSettings) {\n this._animationSettings = value;\n this.updatePanelsAnimation();\n }\n\n /**\n * Get/Set how the accordion handles the expansion of the projected expansion panels.\n * If set to `true`, only a single panel can be expanded at a time, collapsing all others\n *\n * ```html\n * <igx-accordion [singleBranchExpand]=\"true\">\n * ...\n * </igx-accordion>\n * ```\n *\n * ```typescript\n * this.accordion.singleBranchExpand = false;\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get singleBranchExpand(): boolean {\n return this._singleBranchExpand;\n }\n\n public set singleBranchExpand(val: boolean) {\n this._singleBranchExpand = val;\n if (val) {\n this.collapseAllExceptLast();\n }\n }\n\n /**\n * Emitted before a panel is expanded.\n *\n * @remarks\n * This event is cancelable.\n *\n * ```html\n * <igx-accordion (panelExpanding)=\"handlePanelExpanding($event)\">\n * </igx-accordion>\n * ```\n *\n *```typescript\n * public handlePanelExpanding(event: IExpansionPanelCancelableEventArgs){\n * const expandedPanel: IgxExpansionPanelComponent = event.panel;\n * if (expandedPanel.disabled) {\n * event.cancel = true;\n * }\n * }\n *```\n */\n @Output()\n public panelExpanding = new EventEmitter<IAccordionCancelableEventArgs>();\n\n /**\n * Emitted after a panel has been expanded.\n *\n * ```html\n * <igx-accordion (panelExpanded)=\"handlePanelExpanded($event)\">\n * </igx-accordion>\n * ```\n *\n *```typescript\n * public handlePanelExpanded(event: IExpansionPanelCancelableEventArgs) {\n * const expandedPanel: IgxExpansionPanelComponent = event.panel;\n * console.log(\"Panel is expanded: \", expandedPanel.id);\n * }\n *```\n */\n @Output()\n public panelExpanded = new EventEmitter<IAccordionEventArgs>();\n\n /**\n * Emitted before a panel is collapsed.\n *\n * @remarks\n * This event is cancelable.\n *\n * ```html\n * <igx-accordion (panelCollapsing)=\"handlePanelCollapsing($event)\">\n * </igx-accordion>\n * ```\n */\n @Output()\n public panelCollapsing = new EventEmitter<IAccordionCancelableEventArgs>();\n\n /**\n * Emitted after a panel has been collapsed.\n *\n * ```html\n * <igx-accordion (panelCollapsed)=\"handlePanelCollapsed($event)\">\n * </igx-accordion>\n * ```\n */\n @Output()\n public panelCollapsed = new EventEmitter<IAccordionEventArgs>();\n\n /**\n * Get all panels.\n *\n * ```typescript\n * const panels: IgxExpansionPanelComponent[] = this.accordion.panels;\n * ```\n */\n public get panels(): IgxExpansionPanelComponent[] {\n return this._panels?.toArray();\n }\n\n @ContentChildren(IgxExpansionPanelComponent)\n private _panels!: QueryList<IgxExpansionPanelComponent>;\n private _animationSettings!: ToggleAnimationSettings;\n private _expandedPanels!: Set<IgxExpansionPanelComponent>;\n private _expandingPanels!: Set<IgxExpansionPanelComponent>;\n private _destroy$ = new Subject<void>();\n private _unsubChildren$ = new Subject<void>();\n private _enabledPanels!: IgxExpansionPanelComponent[];\n private _singleBranchExpand = false;\n\n constructor(private cdr: ChangeDetectorRef) { }\n\n /** @hidden @internal **/\n public ngAfterContentInit(): void {\n this.updatePanelsAnimation();\n if (this.singleBranchExpand) {\n this.collapseAllExceptLast();\n }\n }\n\n /** @hidden @internal **/\n public ngAfterViewInit(): void {\n this._expandedPanels = new Set<IgxExpansionPanelComponent>(this._panels.filter(panel => !panel.collapsed));\n this._expandingPanels = new Set<IgxExpansionPanelComponent>();\n this._panels.changes.pipe(takeUntil(this._destroy$)).subscribe(() => {\n this.subToChanges();\n });\n this.subToChanges();\n }\n\n /** @hidden @internal */\n public ngOnDestroy(): void {\n this._unsubChildren$.next();\n this._unsubChildren$.complete();\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n /**\n * Expands all collapsed expansion panels.\n *\n * ```typescript\n * accordion.expandAll();\n * ```\n */\n public expandAll(): void {\n if (this.singleBranchExpand) {\n for (let i = 0; i < this.panels.length - 1; i++) {\n this.panels[i].collapse();\n }\n this._panels.last.expand();\n return;\n }\n\n this.panels.forEach(panel => panel.expand());\n }\n\n /**\n * Collapses all expanded expansion panels.\n *\n * ```typescript\n * accordion.collapseAll();\n * ```\n */\n public collapseAll(): void {\n this.panels.forEach(panel => panel.collapse());\n }\n\n private collapseAllExceptLast(): void {\n const lastExpanded = this.panels?.filter(p => !p.collapsed && !p.header.disabled).pop();\n this.panels?.forEach((p: IgxExpansionPanelComponent) => {\n if (p !== lastExpanded && !p.header.disabled) {\n p.collapsed = true;\n }\n });\n this.cdr.markForCheck();\n }\n\n private handleKeydown(event: KeyboardEvent, panel: IgxExpansionPanelComponent): void {\n const key = event.key.toLowerCase();\n if (!(ACCORDION_NAVIGATION_KEYS.has(key))) {\n return;\n }\n // TO DO: if we ever want to improve the performance of the accordion,\n // enabledPanels could be cached (by making a disabledChange emitter on the panel header)\n this._enabledPanels = this._panels.filter(p => !p.header.disabled);\n event.preventDefault();\n this.handleNavigation(event, panel);\n }\n\n private handleNavigation(event: KeyboardEvent, panel: IgxExpansionPanelComponent): void {\n switch (event.key.toLowerCase()) {\n case 'home':\n this._enabledPanels[0].header.innerElement.focus();\n break;\n case 'end':\n this._enabledPanels[this._enabledPanels.length - 1].header.innerElement.focus();\n break;\n case 'arrowup':\n case 'up':\n this.handleUpDownArrow(true, event, panel);\n break;\n case 'arrowdown':\n case 'down':\n this.handleUpDownArrow(false, event, panel);\n break;\n }\n }\n\n private handleUpDownArrow(isUp: boolean, event: KeyboardEvent, panel: IgxExpansionPanelComponent): void {\n if (!event.altKey) {\n const focusedPanel = panel;\n const next = this.getNextPanel(focusedPanel, isUp ? -1 : 1);\n if (next === focusedPanel) {\n return;\n }\n next.header.innerElement.focus();\n }\n if (event.altKey && event.shiftKey) {\n if (isUp) {\n this._enabledPanels.forEach(p => p.collapse());\n } else {\n if (this.singleBranchExpand) {\n for (let i = 0; i < this._enabledPanels.length - 1; i++) {\n this._enabledPanels[i].collapse();\n }\n this._enabledPanels[this._enabledPanels.length - 1].expand();\n return;\n }\n this._enabledPanels.forEach(p => p.expand());\n }\n }\n }\n\n private getNextPanel(panel: IgxExpansionPanelComponent, dir: 1 | -1 = 1): IgxExpansionPanelComponent {\n const panelIndex = this._enabledPanels.indexOf(panel);\n return this._enabledPanels[panelIndex + dir] || panel;\n }\n\n private subToChanges(): void {\n this._unsubChildren$.next();\n this._panels.forEach(panel => {\n panel.contentExpanded.pipe(takeUntil(this._unsubChildren$)).subscribe((args: IExpansionPanelEventArgs) => {\n this._expandedPanels.add(args.owner);\n this._expandingPanels.delete(args.owner);\n const evArgs: IAccordionEventArgs = { ...args, owner: this, panel: args.owner };\n this.panelExpanded.emit(evArgs);\n });\n panel.contentExpanding.pipe(takeUntil(this._unsubChildren$)).subscribe((args: IExpansionPanelCancelableEventArgs) => {\n if (args.cancel) {\n return;\n }\n const evArgs: IAccordionCancelableEventArgs = { ...args, owner: this, panel: args.owner };\n this.panelExpanding.emit(evArgs);\n if (evArgs.cancel) {\n args.cancel = true;\n return;\n }\n if (this.singleBranchExpand) {\n this._expandedPanels.forEach(p => {\n if (!p.header.disabled) {\n p.collapse();\n }\n });\n this._expandingPanels.forEach(p => {\n if (!p.header.disabled) {\n if (!p.animationSettings.closeAnimation) {\n p.openAnimationPlayer?.reset();\n }\n if (!p.animationSettings.openAnimation) {\n p.closeAnimationPlayer?.reset();\n }\n p.collapse();\n }\n });\n this._expandingPanels.add(args.owner);\n }\n });\n panel.contentCollapsed.pipe(takeUntil(this._unsubChildren$)).subscribe((args: IExpansionPanelEventArgs) => {\n this._expandedPanels.delete(args.owner);\n this._expandingPanels.delete(args.owner);\n const evArgs: IAccordionEventArgs = { ...args, owner: this, panel: args.owner };\n this.panelCollapsed.emit(evArgs);\n });\n panel.contentCollapsing.pipe(takeUntil(this._unsubChildren$)).subscribe((args: IExpansionPanelCancelableEventArgs) => {\n const evArgs: IAccordionCancelableEventArgs = { ...args, owner: this, panel: args.owner };\n this.panelCollapsing.emit(evArgs);\n if (evArgs.cancel) {\n args.cancel = true;\n }\n });\n fromEvent(panel.header.innerElement, 'keydown')\n .pipe(takeUntil(this._unsubChildren$))\n .subscribe((e: KeyboardEvent) => {\n this.handleKeydown(e, panel);\n });\n });\n }\n\n private updatePanelsAnimation(): void {\n if (this.animationSettings !== undefined) {\n this.panels?.forEach(panel => panel.animationSettings = this.animationSettings);\n }\n }\n}\n","<ng-content select=\"igx-expansion-panel\"></ng-content>\n","import { IgxAccordionComponent } from './accordion.component';\n\nexport * from './accordion.component';\n\n/* Imports that cannot be resolved from IGX_EXPANSION_PANEL_DIRECTIVES spread\n NOTE: Do not remove! Issue: https://github.com/IgniteUI/igniteui-angular/issues/13310\n*/\nimport {\n IgxExpansionPanelComponent,\n IgxExpansionPanelHeaderComponent,\n IgxExpansionPanelBodyComponent,\n IgxExpansionPanelDescriptionDirective,\n IgxExpansionPanelTitleDirective,\n IgxExpansionPanelIconDirective\n} from 'igniteui-angular/expansion-panel';\n\n/* Accordion directives collection for ease-of-use import in standalone components scenario */\nexport const IGX_ACCORDION_DIRECTIVES = [\n IgxAccordionComponent,\n IgxExpansionPanelComponent,\n IgxExpansionPanelHeaderComponent,\n IgxExpansionPanelBodyComponent,\n IgxExpansionPanelDescriptionDirective,\n IgxExpansionPanelTitleDirective,\n IgxExpansionPanelIconDirective\n] as const;\n","import { NgModule } from '@angular/core';\nimport { IGX_ACCORDION_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_ACCORDION_DIRECTIVES\n ],\n exports: [\n ...IGX_ACCORDION_DIRECTIVES\n ]\n})\nexport class IgxAccordionModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.IgxAccordionComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"igniteui-angular-accordion.mjs","sources":["../../../projects/igniteui-angular/accordion/src/accordion/accordion.component.ts","../../../projects/igniteui-angular/accordion/src/accordion/accordion.component.html","../../../projects/igniteui-angular/accordion/src/accordion/public_api.ts","../../../projects/igniteui-angular/accordion/src/accordion/accordion.module.ts","../../../projects/igniteui-angular/accordion/src/igniteui-angular-accordion.ts"],"sourcesContent":["import { AfterContentInit, AfterViewInit, ChangeDetectorRef, Component, ContentChildren, EventEmitter, HostBinding, Input, OnDestroy, Output, QueryList, booleanAttribute, inject } from '@angular/core';\nimport { fromEvent, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { ACCORDION_NAVIGATION_KEYS } from 'igniteui-angular/core';\nimport {\n IExpansionPanelCancelableEventArgs,\n IExpansionPanelEventArgs, IgxExpansionPanelBase\n} from 'igniteui-angular/expansion-panel';\nimport { IgxExpansionPanelComponent } from 'igniteui-angular/expansion-panel';\nimport { ToggleAnimationSettings } from 'igniteui-angular/expansion-panel';\n\nexport interface IAccordionEventArgs extends IExpansionPanelEventArgs {\n owner: IgxAccordionComponent;\n /** Provides a reference to the `IgxExpansionPanelComponent` which was expanded/collapsed. */\n panel: IgxExpansionPanelBase;\n}\n\nexport interface IAccordionCancelableEventArgs extends IExpansionPanelCancelableEventArgs {\n owner: IgxAccordionComponent;\n /** Provides a reference to the `IgxExpansionPanelComponent` which is currently expanding/collapsing. */\n panel: IgxExpansionPanelBase;\n /** Enables canceling the expansion/collapse operation. */\n cancel: boolean;\n}\n\nlet NEXT_ID = 0;\n\n/**\n * IgxAccordion is a container-based component that contains that can house multiple expansion panels.\n *\n * @igxModule IgxAccordionModule\n *\n * @igxKeywords accordion\n *\n * @igxGroup Layouts\n *\n * @remarks\n * The Ignite UI for Angular Accordion component enables the user to navigate among multiple collapsing panels\n * displayed in a single container.\n * The accordion offers keyboard navigation and API to control the underlying panels' expansion state.\n *\n * @example\n * ```html\n * <igx-accordion>\n * <igx-expansion-panel *ngFor=\"let panel of panels\">\n * ...\n * </igx-expansion-panel>\n * </igx-accordion>\n * ```\n */\n@Component({\n selector: 'igx-accordion',\n templateUrl: 'accordion.component.html',\n standalone: true\n})\nexport class IgxAccordionComponent implements AfterContentInit, AfterViewInit, OnDestroy {\n private cdr = inject(ChangeDetectorRef);\n\n /**\n * Get/Set the `id` of the accordion component.\n * Default value is `\"igx-accordion-0\"`;\n * ```html\n * <igx-accordion id=\"my-first-accordion\"></igx-accordion>\n * ```\n * ```typescript\n * const accordionId = this.accordion.id;\n * ```\n */\n @HostBinding('attr.id')\n @Input()\n public id = `igx-accordion-${NEXT_ID++}`;\n\n /** @hidden @internal **/\n @HostBinding('class.igx-accordion')\n public cssClass = 'igx-accordion';\n\n /** @hidden @internal **/\n @HostBinding('style.display')\n public displayStyle = 'block';\n\n /**\n * Get/Set the animation settings that panels should use when expanding/collpasing.\n *\n * ```html\n * <igx-accordion [animationSettings]=\"customAnimationSettings\"></igx-accordion>\n * ```\n *\n * ```typescript\n * const customAnimationSettings: ToggleAnimationSettings = {\n * openAnimation: growVerIn,\n * closeAnimation: growVerOut\n * };\n *\n * this.accordion.animationSettings = customAnimationSettings;\n * ```\n */\n @Input()\n public get animationSettings(): ToggleAnimationSettings {\n return this._animationSettings;\n }\n\n public set animationSettings(value: ToggleAnimationSettings) {\n this._animationSettings = value;\n this.updatePanelsAnimation();\n }\n\n /**\n * Get/Set how the accordion handles the expansion of the projected expansion panels.\n * If set to `true`, only a single panel can be expanded at a time, collapsing all others\n *\n * ```html\n * <igx-accordion [singleBranchExpand]=\"true\">\n * ...\n * </igx-accordion>\n * ```\n *\n * ```typescript\n * this.accordion.singleBranchExpand = false;\n * ```\n */\n @Input({ transform: booleanAttribute })\n public get singleBranchExpand(): boolean {\n return this._singleBranchExpand;\n }\n\n public set singleBranchExpand(val: boolean) {\n this._singleBranchExpand = val;\n if (val) {\n this.collapseAllExceptLast();\n }\n }\n\n /**\n * Emitted before a panel is expanded.\n *\n * @remarks\n * This event is cancelable.\n *\n * ```html\n * <igx-accordion (panelExpanding)=\"handlePanelExpanding($event)\">\n * </igx-accordion>\n * ```\n *\n *```typescript\n * public handlePanelExpanding(event: IExpansionPanelCancelableEventArgs){\n * const expandedPanel: IgxExpansionPanelComponent = event.panel;\n * if (expandedPanel.disabled) {\n * event.cancel = true;\n * }\n * }\n *```\n */\n @Output()\n public panelExpanding = new EventEmitter<IAccordionCancelableEventArgs>();\n\n /**\n * Emitted after a panel has been expanded.\n *\n * ```html\n * <igx-accordion (panelExpanded)=\"handlePanelExpanded($event)\">\n * </igx-accordion>\n * ```\n *\n *```typescript\n * public handlePanelExpanded(event: IExpansionPanelCancelableEventArgs) {\n * const expandedPanel: IgxExpansionPanelComponent = event.panel;\n * console.log(\"Panel is expanded: \", expandedPanel.id);\n * }\n *```\n */\n @Output()\n public panelExpanded = new EventEmitter<IAccordionEventArgs>();\n\n /**\n * Emitted before a panel is collapsed.\n *\n * @remarks\n * This event is cancelable.\n *\n * ```html\n * <igx-accordion (panelCollapsing)=\"handlePanelCollapsing($event)\">\n * </igx-accordion>\n * ```\n */\n @Output()\n public panelCollapsing = new EventEmitter<IAccordionCancelableEventArgs>();\n\n /**\n * Emitted after a panel has been collapsed.\n *\n * ```html\n * <igx-accordion (panelCollapsed)=\"handlePanelCollapsed($event)\">\n * </igx-accordion>\n * ```\n */\n @Output()\n public panelCollapsed = new EventEmitter<IAccordionEventArgs>();\n\n /**\n * Get all panels.\n *\n * ```typescript\n * const panels: IgxExpansionPanelComponent[] = this.accordion.panels;\n * ```\n */\n public get panels(): IgxExpansionPanelComponent[] {\n return this._panels?.toArray();\n }\n\n @ContentChildren(IgxExpansionPanelComponent)\n private _panels!: QueryList<IgxExpansionPanelComponent>;\n private _animationSettings!: ToggleAnimationSettings;\n private _expandedPanels!: Set<IgxExpansionPanelComponent>;\n private _expandingPanels!: Set<IgxExpansionPanelComponent>;\n private _destroy$ = new Subject<void>();\n private _unsubChildren$ = new Subject<void>();\n private _enabledPanels!: IgxExpansionPanelComponent[];\n private _singleBranchExpand = false;\n\n /** @hidden @internal **/\n public ngAfterContentInit(): void {\n this.updatePanelsAnimation();\n if (this.singleBranchExpand) {\n this.collapseAllExceptLast();\n }\n }\n\n /** @hidden @internal **/\n public ngAfterViewInit(): void {\n this._expandedPanels = new Set<IgxExpansionPanelComponent>(this._panels.filter(panel => !panel.collapsed));\n this._expandingPanels = new Set<IgxExpansionPanelComponent>();\n this._panels.changes.pipe(takeUntil(this._destroy$)).subscribe(() => {\n this.subToChanges();\n });\n this.subToChanges();\n }\n\n /** @hidden @internal */\n public ngOnDestroy(): void {\n this._unsubChildren$.next();\n this._unsubChildren$.complete();\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n /**\n * Expands all collapsed expansion panels.\n *\n * ```typescript\n * accordion.expandAll();\n * ```\n */\n public expandAll(): void {\n if (this.singleBranchExpand) {\n for (let i = 0; i < this.panels.length - 1; i++) {\n this.panels[i].collapse();\n }\n this._panels.last.expand();\n return;\n }\n\n this.panels.forEach(panel => panel.expand());\n }\n\n /**\n * Collapses all expanded expansion panels.\n *\n * ```typescript\n * accordion.collapseAll();\n * ```\n */\n public collapseAll(): void {\n this.panels.forEach(panel => panel.collapse());\n }\n\n private collapseAllExceptLast(): void {\n const lastExpanded = this.panels?.filter(p => !p.collapsed && !p.header.disabled).pop();\n this.panels?.forEach((p: IgxExpansionPanelComponent) => {\n if (p !== lastExpanded && !p.header.disabled) {\n p.collapsed = true;\n }\n });\n this.cdr.markForCheck();\n }\n\n private handleKeydown(event: KeyboardEvent, panel: IgxExpansionPanelComponent): void {\n const key = event.key.toLowerCase();\n if (!(ACCORDION_NAVIGATION_KEYS.has(key))) {\n return;\n }\n // TO DO: if we ever want to improve the performance of the accordion,\n // enabledPanels could be cached (by making a disabledChange emitter on the panel header)\n this._enabledPanels = this._panels.filter(p => !p.header.disabled);\n event.preventDefault();\n this.handleNavigation(event, panel);\n }\n\n private handleNavigation(event: KeyboardEvent, panel: IgxExpansionPanelComponent): void {\n switch (event.key.toLowerCase()) {\n case 'home':\n this._enabledPanels[0].header.innerElement.focus();\n break;\n case 'end':\n this._enabledPanels[this._enabledPanels.length - 1].header.innerElement.focus();\n break;\n case 'arrowup':\n case 'up':\n this.handleUpDownArrow(true, event, panel);\n break;\n case 'arrowdown':\n case 'down':\n this.handleUpDownArrow(false, event, panel);\n break;\n }\n }\n\n private handleUpDownArrow(isUp: boolean, event: KeyboardEvent, panel: IgxExpansionPanelComponent): void {\n if (!event.altKey) {\n const focusedPanel = panel;\n const next = this.getNextPanel(focusedPanel, isUp ? -1 : 1);\n if (next === focusedPanel) {\n return;\n }\n next.header.innerElement.focus();\n }\n if (event.altKey && event.shiftKey) {\n if (isUp) {\n this._enabledPanels.forEach(p => p.collapse());\n } else {\n if (this.singleBranchExpand) {\n for (let i = 0; i < this._enabledPanels.length - 1; i++) {\n this._enabledPanels[i].collapse();\n }\n this._enabledPanels[this._enabledPanels.length - 1].expand();\n return;\n }\n this._enabledPanels.forEach(p => p.expand());\n }\n }\n }\n\n private getNextPanel(panel: IgxExpansionPanelComponent, dir: 1 | -1 = 1): IgxExpansionPanelComponent {\n const panelIndex = this._enabledPanels.indexOf(panel);\n return this._enabledPanels[panelIndex + dir] || panel;\n }\n\n private subToChanges(): void {\n this._unsubChildren$.next();\n this._panels.forEach(panel => {\n panel.contentExpanded.pipe(takeUntil(this._unsubChildren$)).subscribe((args: IExpansionPanelEventArgs) => {\n this._expandedPanels.add(args.owner);\n this._expandingPanels.delete(args.owner);\n const evArgs: IAccordionEventArgs = { ...args, owner: this, panel: args.owner };\n this.panelExpanded.emit(evArgs);\n });\n panel.contentExpanding.pipe(takeUntil(this._unsubChildren$)).subscribe((args: IExpansionPanelCancelableEventArgs) => {\n if (args.cancel) {\n return;\n }\n const evArgs: IAccordionCancelableEventArgs = { ...args, owner: this, panel: args.owner };\n this.panelExpanding.emit(evArgs);\n if (evArgs.cancel) {\n args.cancel = true;\n return;\n }\n if (this.singleBranchExpand) {\n this._expandedPanels.forEach(p => {\n if (!p.header.disabled) {\n p.collapse();\n }\n });\n this._expandingPanels.forEach(p => {\n if (!p.header.disabled) {\n if (!p.animationSettings.closeAnimation) {\n p.openAnimationPlayer?.reset();\n }\n if (!p.animationSettings.openAnimation) {\n p.closeAnimationPlayer?.reset();\n }\n p.collapse();\n }\n });\n this._expandingPanels.add(args.owner);\n }\n });\n panel.contentCollapsed.pipe(takeUntil(this._unsubChildren$)).subscribe((args: IExpansionPanelEventArgs) => {\n this._expandedPanels.delete(args.owner);\n this._expandingPanels.delete(args.owner);\n const evArgs: IAccordionEventArgs = { ...args, owner: this, panel: args.owner };\n this.panelCollapsed.emit(evArgs);\n });\n panel.contentCollapsing.pipe(takeUntil(this._unsubChildren$)).subscribe((args: IExpansionPanelCancelableEventArgs) => {\n const evArgs: IAccordionCancelableEventArgs = { ...args, owner: this, panel: args.owner };\n this.panelCollapsing.emit(evArgs);\n if (evArgs.cancel) {\n args.cancel = true;\n }\n });\n fromEvent(panel.header.innerElement, 'keydown')\n .pipe(takeUntil(this._unsubChildren$))\n .subscribe((e: KeyboardEvent) => {\n this.handleKeydown(e, panel);\n });\n });\n }\n\n private updatePanelsAnimation(): void {\n if (this.animationSettings !== undefined) {\n this.panels?.forEach(panel => panel.animationSettings = this.animationSettings);\n }\n }\n}\n","<ng-content select=\"igx-expansion-panel\"></ng-content>\n","import { IgxAccordionComponent } from './accordion.component';\n\nexport * from './accordion.component';\n\n/* Imports that cannot be resolved from IGX_EXPANSION_PANEL_DIRECTIVES spread\n NOTE: Do not remove! Issue: https://github.com/IgniteUI/igniteui-angular/issues/13310\n*/\nimport {\n IgxExpansionPanelComponent,\n IgxExpansionPanelHeaderComponent,\n IgxExpansionPanelBodyComponent,\n IgxExpansionPanelDescriptionDirective,\n IgxExpansionPanelTitleDirective,\n IgxExpansionPanelIconDirective\n} from 'igniteui-angular/expansion-panel';\n\n/* Accordion directives collection for ease-of-use import in standalone components scenario */\nexport const IGX_ACCORDION_DIRECTIVES = [\n IgxAccordionComponent,\n IgxExpansionPanelComponent,\n IgxExpansionPanelHeaderComponent,\n IgxExpansionPanelBodyComponent,\n IgxExpansionPanelDescriptionDirective,\n IgxExpansionPanelTitleDirective,\n IgxExpansionPanelIconDirective\n] as const;\n","import { NgModule } from '@angular/core';\nimport { IGX_ACCORDION_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_ACCORDION_DIRECTIVES\n ],\n exports: [\n ...IGX_ACCORDION_DIRECTIVES\n ]\n})\nexport class IgxAccordionModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.IgxAccordionComponent"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive, booleanAttribute, HostBinding, ViewChild, Input, ContentChildren, Component, NgModule } from '@angular/core';
|
|
2
|
+
import { inject, TemplateRef, Directive, ViewContainerRef, Renderer2, ElementRef, ChangeDetectorRef, booleanAttribute, HostBinding, ViewChild, Input, ContentChildren, Component, NgModule } from '@angular/core';
|
|
3
3
|
import { CloseScrollStrategy, getCurrentResourceStrings, ActionStripResourceStringsEN, trackByIdentity, IgxActionStripActionsToken, IgxActionStripToken } from 'igniteui-angular/core';
|
|
4
4
|
import { IgxIconComponent } from 'igniteui-angular/icon';
|
|
5
5
|
import { IgxIconButtonDirective, IgxRippleDirective, IgxToggleActionDirective } from 'igniteui-angular/directives';
|
|
@@ -7,10 +7,10 @@ import { NgTemplateOutlet } from '@angular/common';
|
|
|
7
7
|
import { IgxDropDownItemNavigationDirective, IgxDropDownComponent, IgxDropDownItemComponent } from 'igniteui-angular/drop-down';
|
|
8
8
|
|
|
9
9
|
class IgxActionStripMenuItemDirective {
|
|
10
|
-
constructor(
|
|
11
|
-
this.templateRef =
|
|
10
|
+
constructor() {
|
|
11
|
+
this.templateRef = inject(TemplateRef);
|
|
12
12
|
}
|
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IgxActionStripMenuItemDirective, deps: [
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IgxActionStripMenuItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
14
14
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0", type: IgxActionStripMenuItemDirective, isStandalone: true, selector: "[igxActionStripMenuItem]", ngImport: i0 }); }
|
|
15
15
|
}
|
|
16
16
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IgxActionStripMenuItemDirective, decorators: [{
|
|
@@ -19,7 +19,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImpor
|
|
|
19
19
|
selector: '[igxActionStripMenuItem]',
|
|
20
20
|
standalone: true
|
|
21
21
|
}]
|
|
22
|
-
}]
|
|
22
|
+
}] });
|
|
23
23
|
/* blazorElement */
|
|
24
24
|
/* jsonAPIManageItemInMarkup */
|
|
25
25
|
/* jsonAPIManageCollectionInMarkup */
|
|
@@ -53,6 +53,36 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImpor
|
|
|
53
53
|
* </igx-action-strip>
|
|
54
54
|
*/
|
|
55
55
|
class IgxActionStripComponent {
|
|
56
|
+
constructor() {
|
|
57
|
+
this._viewContainer = inject(ViewContainerRef);
|
|
58
|
+
this.renderer = inject(Renderer2);
|
|
59
|
+
this.el = inject(ElementRef);
|
|
60
|
+
this.cdr = inject(ChangeDetectorRef);
|
|
61
|
+
/**
|
|
62
|
+
* Gets/Sets the visibility of the Action Strip.
|
|
63
|
+
* Could be used to set if the Action Strip will be initially hidden.
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* ```html
|
|
67
|
+
* <igx-action-strip [hidden]="false">
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
this.hidden = true;
|
|
71
|
+
/**
|
|
72
|
+
* Getter for menu overlay settings
|
|
73
|
+
*
|
|
74
|
+
* @hidden
|
|
75
|
+
* @internal
|
|
76
|
+
*/
|
|
77
|
+
this.menuOverlaySettings = { scrollStrategy: new CloseScrollStrategy() };
|
|
78
|
+
this._resourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN);
|
|
79
|
+
/**
|
|
80
|
+
* Host `attr.class` binding.
|
|
81
|
+
*/
|
|
82
|
+
this.hostClass = 'igx-action-strip';
|
|
83
|
+
/** pin swapping w/ unpin resets the menuItems collection */
|
|
84
|
+
this.trackMenuItem = trackByIdentity;
|
|
85
|
+
}
|
|
56
86
|
/**
|
|
57
87
|
* Gets/Sets the resource strings.
|
|
58
88
|
*
|
|
@@ -84,38 +114,6 @@ class IgxActionStripComponent {
|
|
|
84
114
|
}
|
|
85
115
|
}
|
|
86
116
|
}
|
|
87
|
-
constructor(_viewContainer, renderer, el,
|
|
88
|
-
/** @hidden @internal **/
|
|
89
|
-
cdr) {
|
|
90
|
-
this._viewContainer = _viewContainer;
|
|
91
|
-
this.renderer = renderer;
|
|
92
|
-
this.el = el;
|
|
93
|
-
this.cdr = cdr;
|
|
94
|
-
/**
|
|
95
|
-
* Gets/Sets the visibility of the Action Strip.
|
|
96
|
-
* Could be used to set if the Action Strip will be initially hidden.
|
|
97
|
-
*
|
|
98
|
-
* @example
|
|
99
|
-
* ```html
|
|
100
|
-
* <igx-action-strip [hidden]="false">
|
|
101
|
-
* ```
|
|
102
|
-
*/
|
|
103
|
-
this.hidden = true;
|
|
104
|
-
/**
|
|
105
|
-
* Getter for menu overlay settings
|
|
106
|
-
*
|
|
107
|
-
* @hidden
|
|
108
|
-
* @internal
|
|
109
|
-
*/
|
|
110
|
-
this.menuOverlaySettings = { scrollStrategy: new CloseScrollStrategy() };
|
|
111
|
-
this._resourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN);
|
|
112
|
-
/**
|
|
113
|
-
* Host `attr.class` binding.
|
|
114
|
-
*/
|
|
115
|
-
this.hostClass = 'igx-action-strip';
|
|
116
|
-
/** pin swapping w/ unpin resets the menuItems collection */
|
|
117
|
-
this.trackMenuItem = trackByIdentity;
|
|
118
|
-
}
|
|
119
117
|
/**
|
|
120
118
|
* Menu Items list.
|
|
121
119
|
*
|
|
@@ -228,7 +226,7 @@ class IgxActionStripComponent {
|
|
|
228
226
|
this.menu.close();
|
|
229
227
|
}
|
|
230
228
|
}
|
|
231
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IgxActionStripComponent, deps: [
|
|
229
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IgxActionStripComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
232
230
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0", type: IgxActionStripComponent, isStandalone: true, selector: "igx-action-strip", inputs: { context: "context", hidden: ["hidden", "hidden", booleanAttribute], resourceStrings: "resourceStrings" }, host: { properties: { "style.display": "this.display", "class.igx-action-strip": "this.hostClass" } }, providers: [{ provide: IgxActionStripToken, useExisting: IgxActionStripComponent }], queries: [{ propertyName: "_menuItems", predicate: IgxActionStripMenuItemDirective }, { propertyName: "actionButtons", predicate: IgxActionStripActionsToken }], viewQueries: [{ propertyName: "menu", first: true, predicate: ["dropdown"], descendants: true }], ngImport: i0, template: "<div class=\"igx-action-strip__actions\">\n <ng-content #content></ng-content>\n @if (menuItems.length > 0) {\n <button\n type=\"button\"\n igxIconButton=\"flat\"\n igxRipple\n [igxToggleAction]=\"dropdown\"\n [overlaySettings]=\"menuOverlaySettings\"\n (click)=\"$event.stopPropagation()\"\n [title]=\"resourceStrings.igx_action_strip_button_more_title\"\n [igxDropDownItemNavigation]=\"dropdown\"\n >\n <igx-icon family=\"default\" name=\"more_vert\"></igx-icon>\n </button>\n }\n <igx-drop-down #dropdown>\n @for (item of menuItems; track trackMenuItem(item)) {\n <igx-drop-down-item\n class=\"igx-action-strip__menu-item\"\n >\n <div class=\"igx-drop-down__item-template\">\n <ng-container\n *ngTemplateOutlet=\"\n item.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </div>\n </igx-drop-down-item>\n }\n </igx-drop-down>\n</div>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: IgxIconButtonDirective, selector: "[igxIconButton]", inputs: ["igxIconButton"] }, { kind: "directive", type: IgxRippleDirective, selector: "[igxRipple]", inputs: ["igxRippleTarget", "igxRipple", "igxRippleDuration", "igxRippleCentered", "igxRippleDisabled"] }, { kind: "directive", type: IgxToggleActionDirective, selector: "[igxToggleAction]", inputs: ["overlaySettings", "igxToggleOutlet", "igxToggleAction"], exportAs: ["toggle-action"] }, { kind: "directive", type: IgxDropDownItemNavigationDirective, selector: "[igxDropDownItemNavigation]", inputs: ["igxDropDownItemNavigation"] }, { kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["ariaHidden", "family", "name", "active"] }, { kind: "component", type: IgxDropDownComponent, selector: "igx-drop-down", inputs: ["allowItemsFocus", "labelledBy", "role"], outputs: ["opening", "opened", "closing", "closed"] }, { kind: "component", type: IgxDropDownItemComponent, selector: "igx-drop-down-item" }] }); }
|
|
233
231
|
}
|
|
234
232
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IgxActionStripComponent, decorators: [{
|
|
@@ -243,7 +241,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImpor
|
|
|
243
241
|
IgxDropDownComponent,
|
|
244
242
|
IgxDropDownItemComponent
|
|
245
243
|
], providers: [{ provide: IgxActionStripToken, useExisting: IgxActionStripComponent }], template: "<div class=\"igx-action-strip__actions\">\n <ng-content #content></ng-content>\n @if (menuItems.length > 0) {\n <button\n type=\"button\"\n igxIconButton=\"flat\"\n igxRipple\n [igxToggleAction]=\"dropdown\"\n [overlaySettings]=\"menuOverlaySettings\"\n (click)=\"$event.stopPropagation()\"\n [title]=\"resourceStrings.igx_action_strip_button_more_title\"\n [igxDropDownItemNavigation]=\"dropdown\"\n >\n <igx-icon family=\"default\" name=\"more_vert\"></igx-icon>\n </button>\n }\n <igx-drop-down #dropdown>\n @for (item of menuItems; track trackMenuItem(item)) {\n <igx-drop-down-item\n class=\"igx-action-strip__menu-item\"\n >\n <div class=\"igx-drop-down__item-template\">\n <ng-container\n *ngTemplateOutlet=\"\n item.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </div>\n </igx-drop-down-item>\n }\n </igx-drop-down>\n</div>\n" }]
|
|
246
|
-
}],
|
|
244
|
+
}], propDecorators: { context: [{
|
|
247
245
|
type: Input
|
|
248
246
|
}], _menuItems: [{
|
|
249
247
|
type: ContentChildren,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"igniteui-angular-action-strip.mjs","sources":["../../../projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.ts","../../../projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.html","../../../projects/igniteui-angular/action-strip/src/action-strip/public_api.ts","../../../projects/igniteui-angular/action-strip/src/action-strip/action-strip.module.ts","../../../projects/igniteui-angular/action-strip/src/igniteui-angular-action-strip.ts"],"sourcesContent":["import {\n Component,\n Directive,\n HostBinding,\n Input,\n Renderer2,\n ViewContainerRef,\n ContentChildren,\n QueryList,\n ViewChild,\n TemplateRef,\n ChangeDetectorRef,\n AfterViewInit,\n ElementRef,\n booleanAttribute,\n AfterContentInit\n} from '@angular/core';\n\n\nimport { ActionStripResourceStringsEN, CloseScrollStrategy, getCurrentResourceStrings, IActionStripResourceStrings, IgxActionStripActionsToken, IgxActionStripToken, OverlaySettings } from 'igniteui-angular/core';\nimport { IgxIconComponent } from 'igniteui-angular/icon';\nimport { IgxToggleActionDirective } from 'igniteui-angular/directives';\nimport { IgxRippleDirective } from 'igniteui-angular/directives';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { IgxIconButtonDirective } from 'igniteui-angular/directives';\nimport { trackByIdentity } from 'igniteui-angular/core';\nimport { IgxDropDownComponent, IgxDropDownItemComponent, IgxDropDownItemNavigationDirective } from 'igniteui-angular/drop-down';\n\n@Directive({\n selector: '[igxActionStripMenuItem]',\n standalone: true\n})\nexport class IgxActionStripMenuItemDirective {\n constructor(public templateRef: TemplateRef<any>) {}\n}\n\n/* blazorElement */\n/* jsonAPIManageItemInMarkup */\n/* jsonAPIManageCollectionInMarkup */\n/* wcElementTag: igc-action-strip */\n/* blazorIndirectRender */\n/* singleInstanceIdentifier */\n/* contentParent: GridBaseDirective */\n/* contentParent: RowIsland */\n/* contentParent: HierarchicalGrid */\n/**\n * Action Strip provides templatable area for one or more actions.\n *\n * @igxModule IgxActionStripModule\n *\n * @igxTheme igx-action-strip-theme\n *\n * @igxKeywords action, strip, actionStrip, pinning, editing\n *\n * @igxGroup Data Entry & Display\n *\n * @igxParent IgxGridComponent, IgxTreeGridComponent, IgxHierarchicalGridComponent, IgxRowIslandComponent, *\n *\n * @remarks\n * The Ignite UI Action Strip is a container, overlaying its parent container,\n * and displaying action buttons with action applicable to the parent component the strip is instantiated or shown for.\n *\n * @example\n * ```html\n * <igx-action-strip #actionStrip>\n * <igx-icon (click)=\"doSomeAction()\"></igx-icon>\n * </igx-action-strip>\n */\n@Component({\n selector: 'igx-action-strip',\n templateUrl: 'action-strip.component.html',\n imports: [\n NgTemplateOutlet,\n IgxIconButtonDirective,\n IgxRippleDirective,\n IgxToggleActionDirective,\n IgxDropDownItemNavigationDirective,\n IgxIconComponent,\n IgxDropDownComponent,\n IgxDropDownItemComponent\n ],\n providers: [{ provide: IgxActionStripToken, useExisting: IgxActionStripComponent }]\n})\nexport class IgxActionStripComponent implements IgxActionStripToken, AfterViewInit, AfterContentInit {\n\n /* blazorSuppress */\n /**\n * Sets the context of an action strip.\n * The context should be an instance of a @Component, that has element property.\n * This element will be the placeholder of the action strip.\n *\n * @example\n * ```html\n * <igx-action-strip [context]=\"cell\"></igx-action-strip>\n * ```\n */\n @Input()\n public context: any;\n\n /**\n * Menu Items ContentChildren inside the Action Strip\n *\n * @hidden\n * @internal\n */\n @ContentChildren(IgxActionStripMenuItemDirective)\n public _menuItems: QueryList<IgxActionStripMenuItemDirective>;\n\n\n /* blazorInclude */\n /* contentChildren */\n /* blazorTreatAsCollection */\n /* blazorCollectionName: GridActionsBaseDirectiveCollection */\n /**\n * ActionButton as ContentChildren inside the Action Strip\n *\n * @hidden\n * @internal\n */\n @ContentChildren(IgxActionStripActionsToken as any)\n public actionButtons: QueryList<IgxActionStripActionsToken>;\n\n /**\n * Gets/Sets the visibility of the Action Strip.\n * Could be used to set if the Action Strip will be initially hidden.\n *\n * @example\n * ```html\n * <igx-action-strip [hidden]=\"false\">\n * ```\n */\n @Input({ transform: booleanAttribute })\n public hidden = true;\n\n\n /**\n * Gets/Sets the resource strings.\n *\n * @remarks\n * By default it uses EN resources.\n */\n @Input()\n public set resourceStrings(value: IActionStripResourceStrings) {\n this._resourceStrings = Object.assign({}, this._resourceStrings, value);\n }\n\n public get resourceStrings(): IActionStripResourceStrings {\n return this._resourceStrings;\n }\n\n /**\n * Hide or not the Action Strip based on if it is a menu.\n *\n * @hidden\n * @internal\n */\n public get hideOnRowLeave(): boolean {\n if (this.menu.items.length === 0) {\n return true;\n } else if (this.menu.items.length > 0) {\n if (this.menu.collapsed) {\n return true;\n } else {\n return false;\n }\n }\n }\n\n /**\n * Reference to the menu\n *\n * @hidden\n * @internal\n */\n @ViewChild('dropdown')\n public menu: IgxDropDownComponent;\n\n /**\n * Getter for menu overlay settings\n *\n * @hidden\n * @internal\n */\n public menuOverlaySettings: OverlaySettings = { scrollStrategy: new CloseScrollStrategy() };\n\n private _resourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN);\n private _originalParent!: HTMLElement;\n\n constructor(\n private _viewContainer: ViewContainerRef,\n private renderer: Renderer2,\n protected el: ElementRef,\n /** @hidden @internal **/\n public cdr: ChangeDetectorRef,\n ) { }\n\n /**\n * Menu Items list.\n *\n * @hidden\n * @internal\n */\n public get menuItems() {\n const actions = [];\n this.actionButtons.forEach(button => {\n if (button.asMenuItems) {\n const children = button.buttons;\n if (children) {\n children.toArray().forEach(x => actions.push(x));\n }\n }\n });\n return [... this._menuItems.toArray(), ...actions];\n }\n\n\n /**\n * Getter for the 'display' property of the current `IgxActionStrip`\n */\n @HostBinding('style.display')\n private get display(): string {\n return this.hidden ? 'none' : 'flex';\n }\n\n /**\n * Host `attr.class` binding.\n */\n @HostBinding('class.igx-action-strip')\n protected hostClass = 'igx-action-strip';\n\n /**\n * @hidden\n * @internal\n */\n public ngAfterContentInit() {\n this.actionButtons.forEach(button => {\n button.strip = this;\n });\n this.actionButtons.changes.subscribe(() => {\n this.actionButtons.forEach(button => {\n button.strip = this;\n });\n });\n }\n\n /**\n * @hidden\n * @internal\n */\n public ngAfterViewInit() {\n this.menu.selectionChanging.subscribe(($event) => {\n const newSelection = ($event.newSelection as any).elementRef.nativeElement;\n let allButtons = [];\n this.actionButtons.forEach(actionButtons => {\n if (actionButtons.asMenuItems) {\n allButtons = [...allButtons, ...actionButtons.buttons.toArray()];\n }\n });\n const button = allButtons.find(x => newSelection.contains(x.container.nativeElement));\n if (button) {\n button.actionClick.emit();\n }\n });\n this._originalParent = this._viewContainer.element.nativeElement?.parentElement;\n }\n\n /**\n * Showing the Action Strip and appending it the specified context element.\n *\n * @param context\n * @example\n * ```typescript\n * this.actionStrip.show(row);\n * ```\n */\n public show(context?: any): void {\n this.hidden = false;\n if (!context) {\n return;\n }\n // when shown for different context make sure the menu won't stay opened\n if (this.context !== context) {\n this.closeMenu();\n }\n this.context = context;\n if (this.context && this.context.element) {\n this.renderer.appendChild(context.element.nativeElement, this._viewContainer.element.nativeElement);\n }\n this.cdr.detectChanges();\n }\n\n /**\n * Hiding the Action Strip and removing it from its current context element.\n *\n * @example\n * ```typescript\n * this.actionStrip.hide();\n * ```\n */\n public hide(): void {\n this.hidden = true;\n this.closeMenu();\n if (this._originalParent) {\n // D.P. fix(elements) don't detach native DOM, instead move back. Might not matter for Angular, but Elements will destroy\n this.renderer.appendChild(this._originalParent, this._viewContainer.element.nativeElement);\n } else if (this.context && this.context.element) {\n this.renderer.removeChild(this.context.element.nativeElement, this._viewContainer.element.nativeElement);\n }\n }\n\n /** pin swapping w/ unpin resets the menuItems collection */\n protected trackMenuItem = trackByIdentity;\n\n /**\n * Close the menu if opened\n *\n * @hidden\n * @internal\n */\n private closeMenu(): void {\n if (this.menu && !this.menu.collapsed) {\n this.menu.close();\n }\n }\n}\n","<div class=\"igx-action-strip__actions\">\n <ng-content #content></ng-content>\n @if (menuItems.length > 0) {\n <button\n type=\"button\"\n igxIconButton=\"flat\"\n igxRipple\n [igxToggleAction]=\"dropdown\"\n [overlaySettings]=\"menuOverlaySettings\"\n (click)=\"$event.stopPropagation()\"\n [title]=\"resourceStrings.igx_action_strip_button_more_title\"\n [igxDropDownItemNavigation]=\"dropdown\"\n >\n <igx-icon family=\"default\" name=\"more_vert\"></igx-icon>\n </button>\n }\n <igx-drop-down #dropdown>\n @for (item of menuItems; track trackMenuItem(item)) {\n <igx-drop-down-item\n class=\"igx-action-strip__menu-item\"\n >\n <div class=\"igx-drop-down__item-template\">\n <ng-container\n *ngTemplateOutlet=\"\n item.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </div>\n </igx-drop-down-item>\n }\n </igx-drop-down>\n</div>\n","import { IgxActionStripComponent, IgxActionStripMenuItemDirective } from './action-strip.component';\n\nexport { IgxActionStripComponent, IgxActionStripMenuItemDirective } from './action-strip.component';\n\n/* Action-strip outside of grid directives collection for ease-of-use import in standalone components scenario */\nexport const IGX_ACTION_STRIP_DIRECTIVES = [\n IgxActionStripComponent,\n IgxActionStripMenuItemDirective\n] as const;\n","import { NgModule } from '@angular/core';\nimport { IGX_ACTION_STRIP_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_ACTION_STRIP_DIRECTIVES\n ],\n exports: [\n ...IGX_ACTION_STRIP_DIRECTIVES\n ],\n})\nexport class IgxActionStripModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.IgxActionStripComponent","i1.IgxActionStripMenuItemDirective"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"igniteui-angular-action-strip.mjs","sources":["../../../projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.ts","../../../projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.html","../../../projects/igniteui-angular/action-strip/src/action-strip/public_api.ts","../../../projects/igniteui-angular/action-strip/src/action-strip/action-strip.module.ts","../../../projects/igniteui-angular/action-strip/src/igniteui-angular-action-strip.ts"],"sourcesContent":["import {\n Component,\n Directive,\n HostBinding,\n Input,\n Renderer2,\n ViewContainerRef,\n ContentChildren,\n QueryList,\n ViewChild,\n TemplateRef,\n ChangeDetectorRef,\n AfterViewInit,\n ElementRef,\n booleanAttribute,\n AfterContentInit,\n inject\n} from '@angular/core';\n\n\nimport { ActionStripResourceStringsEN, CloseScrollStrategy, getCurrentResourceStrings, IActionStripResourceStrings, IgxActionStripActionsToken, IgxActionStripToken, OverlaySettings } from 'igniteui-angular/core';\nimport { IgxIconComponent } from 'igniteui-angular/icon';\nimport { IgxToggleActionDirective } from 'igniteui-angular/directives';\nimport { IgxRippleDirective } from 'igniteui-angular/directives';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { IgxIconButtonDirective } from 'igniteui-angular/directives';\nimport { trackByIdentity } from 'igniteui-angular/core';\nimport { IgxDropDownComponent, IgxDropDownItemComponent, IgxDropDownItemNavigationDirective } from 'igniteui-angular/drop-down';\n\n@Directive({\n selector: '[igxActionStripMenuItem]',\n standalone: true\n})\nexport class IgxActionStripMenuItemDirective {\n public templateRef = inject<TemplateRef<any>>(TemplateRef);\n}\n\n/* blazorElement */\n/* jsonAPIManageItemInMarkup */\n/* jsonAPIManageCollectionInMarkup */\n/* wcElementTag: igc-action-strip */\n/* blazorIndirectRender */\n/* singleInstanceIdentifier */\n/* contentParent: GridBaseDirective */\n/* contentParent: RowIsland */\n/* contentParent: HierarchicalGrid */\n/**\n * Action Strip provides templatable area for one or more actions.\n *\n * @igxModule IgxActionStripModule\n *\n * @igxTheme igx-action-strip-theme\n *\n * @igxKeywords action, strip, actionStrip, pinning, editing\n *\n * @igxGroup Data Entry & Display\n *\n * @igxParent IgxGridComponent, IgxTreeGridComponent, IgxHierarchicalGridComponent, IgxRowIslandComponent, *\n *\n * @remarks\n * The Ignite UI Action Strip is a container, overlaying its parent container,\n * and displaying action buttons with action applicable to the parent component the strip is instantiated or shown for.\n *\n * @example\n * ```html\n * <igx-action-strip #actionStrip>\n * <igx-icon (click)=\"doSomeAction()\"></igx-icon>\n * </igx-action-strip>\n */\n@Component({\n selector: 'igx-action-strip',\n templateUrl: 'action-strip.component.html',\n imports: [\n NgTemplateOutlet,\n IgxIconButtonDirective,\n IgxRippleDirective,\n IgxToggleActionDirective,\n IgxDropDownItemNavigationDirective,\n IgxIconComponent,\n IgxDropDownComponent,\n IgxDropDownItemComponent\n ],\n providers: [{ provide: IgxActionStripToken, useExisting: IgxActionStripComponent }]\n})\nexport class IgxActionStripComponent implements IgxActionStripToken, AfterViewInit, AfterContentInit {\n private _viewContainer = inject(ViewContainerRef);\n private renderer = inject(Renderer2);\n protected el = inject(ElementRef);\n public cdr = inject(ChangeDetectorRef);\n\n\n /* blazorSuppress */\n /**\n * Sets the context of an action strip.\n * The context should be an instance of a @Component, that has element property.\n * This element will be the placeholder of the action strip.\n *\n * @example\n * ```html\n * <igx-action-strip [context]=\"cell\"></igx-action-strip>\n * ```\n */\n @Input()\n public context: any;\n\n /**\n * Menu Items ContentChildren inside the Action Strip\n *\n * @hidden\n * @internal\n */\n @ContentChildren(IgxActionStripMenuItemDirective)\n public _menuItems: QueryList<IgxActionStripMenuItemDirective>;\n\n\n /* blazorInclude */\n /* contentChildren */\n /* blazorTreatAsCollection */\n /* blazorCollectionName: GridActionsBaseDirectiveCollection */\n /**\n * ActionButton as ContentChildren inside the Action Strip\n *\n * @hidden\n * @internal\n */\n @ContentChildren(IgxActionStripActionsToken as any)\n public actionButtons: QueryList<IgxActionStripActionsToken>;\n\n /**\n * Gets/Sets the visibility of the Action Strip.\n * Could be used to set if the Action Strip will be initially hidden.\n *\n * @example\n * ```html\n * <igx-action-strip [hidden]=\"false\">\n * ```\n */\n @Input({ transform: booleanAttribute })\n public hidden = true;\n\n\n /**\n * Gets/Sets the resource strings.\n *\n * @remarks\n * By default it uses EN resources.\n */\n @Input()\n public set resourceStrings(value: IActionStripResourceStrings) {\n this._resourceStrings = Object.assign({}, this._resourceStrings, value);\n }\n\n public get resourceStrings(): IActionStripResourceStrings {\n return this._resourceStrings;\n }\n\n /**\n * Hide or not the Action Strip based on if it is a menu.\n *\n * @hidden\n * @internal\n */\n public get hideOnRowLeave(): boolean {\n if (this.menu.items.length === 0) {\n return true;\n } else if (this.menu.items.length > 0) {\n if (this.menu.collapsed) {\n return true;\n } else {\n return false;\n }\n }\n }\n\n /**\n * Reference to the menu\n *\n * @hidden\n * @internal\n */\n @ViewChild('dropdown')\n public menu: IgxDropDownComponent;\n\n /**\n * Getter for menu overlay settings\n *\n * @hidden\n * @internal\n */\n public menuOverlaySettings: OverlaySettings = { scrollStrategy: new CloseScrollStrategy() };\n\n private _resourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN);\n private _originalParent!: HTMLElement;\n\n /**\n * Menu Items list.\n *\n * @hidden\n * @internal\n */\n public get menuItems() {\n const actions = [];\n this.actionButtons.forEach(button => {\n if (button.asMenuItems) {\n const children = button.buttons;\n if (children) {\n children.toArray().forEach(x => actions.push(x));\n }\n }\n });\n return [... this._menuItems.toArray(), ...actions];\n }\n\n\n /**\n * Getter for the 'display' property of the current `IgxActionStrip`\n */\n @HostBinding('style.display')\n private get display(): string {\n return this.hidden ? 'none' : 'flex';\n }\n\n /**\n * Host `attr.class` binding.\n */\n @HostBinding('class.igx-action-strip')\n protected hostClass = 'igx-action-strip';\n\n /**\n * @hidden\n * @internal\n */\n public ngAfterContentInit() {\n this.actionButtons.forEach(button => {\n button.strip = this;\n });\n this.actionButtons.changes.subscribe(() => {\n this.actionButtons.forEach(button => {\n button.strip = this;\n });\n });\n }\n\n /**\n * @hidden\n * @internal\n */\n public ngAfterViewInit() {\n this.menu.selectionChanging.subscribe(($event) => {\n const newSelection = ($event.newSelection as any).elementRef.nativeElement;\n let allButtons = [];\n this.actionButtons.forEach(actionButtons => {\n if (actionButtons.asMenuItems) {\n allButtons = [...allButtons, ...actionButtons.buttons.toArray()];\n }\n });\n const button = allButtons.find(x => newSelection.contains(x.container.nativeElement));\n if (button) {\n button.actionClick.emit();\n }\n });\n this._originalParent = this._viewContainer.element.nativeElement?.parentElement;\n }\n\n /**\n * Showing the Action Strip and appending it the specified context element.\n *\n * @param context\n * @example\n * ```typescript\n * this.actionStrip.show(row);\n * ```\n */\n public show(context?: any): void {\n this.hidden = false;\n if (!context) {\n return;\n }\n // when shown for different context make sure the menu won't stay opened\n if (this.context !== context) {\n this.closeMenu();\n }\n this.context = context;\n if (this.context && this.context.element) {\n this.renderer.appendChild(context.element.nativeElement, this._viewContainer.element.nativeElement);\n }\n this.cdr.detectChanges();\n }\n\n /**\n * Hiding the Action Strip and removing it from its current context element.\n *\n * @example\n * ```typescript\n * this.actionStrip.hide();\n * ```\n */\n public hide(): void {\n this.hidden = true;\n this.closeMenu();\n if (this._originalParent) {\n // D.P. fix(elements) don't detach native DOM, instead move back. Might not matter for Angular, but Elements will destroy\n this.renderer.appendChild(this._originalParent, this._viewContainer.element.nativeElement);\n } else if (this.context && this.context.element) {\n this.renderer.removeChild(this.context.element.nativeElement, this._viewContainer.element.nativeElement);\n }\n }\n\n /** pin swapping w/ unpin resets the menuItems collection */\n protected trackMenuItem = trackByIdentity;\n\n /**\n * Close the menu if opened\n *\n * @hidden\n * @internal\n */\n private closeMenu(): void {\n if (this.menu && !this.menu.collapsed) {\n this.menu.close();\n }\n }\n}\n","<div class=\"igx-action-strip__actions\">\n <ng-content #content></ng-content>\n @if (menuItems.length > 0) {\n <button\n type=\"button\"\n igxIconButton=\"flat\"\n igxRipple\n [igxToggleAction]=\"dropdown\"\n [overlaySettings]=\"menuOverlaySettings\"\n (click)=\"$event.stopPropagation()\"\n [title]=\"resourceStrings.igx_action_strip_button_more_title\"\n [igxDropDownItemNavigation]=\"dropdown\"\n >\n <igx-icon family=\"default\" name=\"more_vert\"></igx-icon>\n </button>\n }\n <igx-drop-down #dropdown>\n @for (item of menuItems; track trackMenuItem(item)) {\n <igx-drop-down-item\n class=\"igx-action-strip__menu-item\"\n >\n <div class=\"igx-drop-down__item-template\">\n <ng-container\n *ngTemplateOutlet=\"\n item.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </div>\n </igx-drop-down-item>\n }\n </igx-drop-down>\n</div>\n","import { IgxActionStripComponent, IgxActionStripMenuItemDirective } from './action-strip.component';\n\nexport { IgxActionStripComponent, IgxActionStripMenuItemDirective } from './action-strip.component';\n\n/* Action-strip outside of grid directives collection for ease-of-use import in standalone components scenario */\nexport const IGX_ACTION_STRIP_DIRECTIVES = [\n IgxActionStripComponent,\n IgxActionStripMenuItemDirective\n] as const;\n","import { NgModule } from '@angular/core';\nimport { IGX_ACTION_STRIP_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_ACTION_STRIP_DIRECTIVES\n ],\n exports: [\n ...IGX_ACTION_STRIP_DIRECTIVES\n ],\n})\nexport class IgxActionStripModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.IgxActionStripComponent","i1.IgxActionStripMenuItemDirective"],"mappings":"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"}
|