igniteui-angular 22.1.3 → 22.2.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/combo/README.md +19 -0
- package/drop-down/README.md +40 -4
- package/fesm2022/igniteui-angular-accordion.mjs +7 -7
- package/fesm2022/igniteui-angular-action-strip.mjs +15 -12
- package/fesm2022/igniteui-angular-action-strip.mjs.map +1 -1
- package/fesm2022/igniteui-angular-avatar.mjs +7 -7
- package/fesm2022/igniteui-angular-badge.mjs +7 -7
- package/fesm2022/igniteui-angular-banner.mjs +15 -12
- package/fesm2022/igniteui-angular-banner.mjs.map +1 -1
- package/fesm2022/igniteui-angular-bottom-nav.mjs +22 -22
- package/fesm2022/igniteui-angular-button-group.mjs +12 -13
- package/fesm2022/igniteui-angular-button-group.mjs.map +1 -1
- package/fesm2022/igniteui-angular-calendar.mjs +73 -66
- package/fesm2022/igniteui-angular-calendar.mjs.map +1 -1
- package/fesm2022/igniteui-angular-card.mjs +31 -31
- package/fesm2022/igniteui-angular-carousel.mjs +27 -24
- package/fesm2022/igniteui-angular-carousel.mjs.map +1 -1
- package/fesm2022/igniteui-angular-chat-extras.mjs +6 -6
- package/fesm2022/igniteui-angular-chat.mjs +12 -12
- package/fesm2022/igniteui-angular-checkbox.mjs +7 -7
- package/fesm2022/igniteui-angular-chips.mjs +15 -12
- package/fesm2022/igniteui-angular-chips.mjs.map +1 -1
- package/fesm2022/igniteui-angular-combo.mjs +273 -122
- package/fesm2022/igniteui-angular-combo.mjs.map +1 -1
- package/fesm2022/igniteui-angular-core.mjs +188 -59
- package/fesm2022/igniteui-angular-core.mjs.map +1 -1
- package/fesm2022/igniteui-angular-date-picker.mjs +76 -82
- package/fesm2022/igniteui-angular-date-picker.mjs.map +1 -1
- package/fesm2022/igniteui-angular-dialog.mjs +13 -13
- package/fesm2022/igniteui-angular-directives.mjs +321 -457
- package/fesm2022/igniteui-angular-directives.mjs.map +1 -1
- package/fesm2022/igniteui-angular-drop-down.mjs +331 -104
- package/fesm2022/igniteui-angular-drop-down.mjs.map +1 -1
- package/fesm2022/igniteui-angular-expansion-panel.mjs +28 -28
- package/fesm2022/igniteui-angular-grids-core.mjs +556 -518
- package/fesm2022/igniteui-angular-grids-core.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-grid.mjs +91 -85
- package/fesm2022/igniteui-angular-grids-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs +59 -46
- package/fesm2022/igniteui-angular-grids-hierarchical-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-lite.mjs +12 -12
- package/fesm2022/igniteui-angular-grids-pivot-grid.mjs +113 -86
- package/fesm2022/igniteui-angular-grids-pivot-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-tree-grid.mjs +57 -57
- package/fesm2022/igniteui-angular-grids-tree-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-icon.mjs +10 -10
- package/fesm2022/igniteui-angular-input-group.mjs +52 -63
- package/fesm2022/igniteui-angular-input-group.mjs.map +1 -1
- package/fesm2022/igniteui-angular-list.mjs +45 -42
- package/fesm2022/igniteui-angular-list.mjs.map +1 -1
- package/fesm2022/igniteui-angular-navbar.mjs +13 -13
- package/fesm2022/igniteui-angular-navigation-drawer.mjs +16 -16
- package/fesm2022/igniteui-angular-paginator.mjs +24 -21
- package/fesm2022/igniteui-angular-paginator.mjs.map +1 -1
- package/fesm2022/igniteui-angular-progressbar.mjs +19 -19
- package/fesm2022/igniteui-angular-query-builder.mjs +44 -31
- package/fesm2022/igniteui-angular-query-builder.mjs.map +1 -1
- package/fesm2022/igniteui-angular-radio.mjs +59 -35
- package/fesm2022/igniteui-angular-radio.mjs.map +1 -1
- package/fesm2022/igniteui-angular-select.mjs +35 -43
- package/fesm2022/igniteui-angular-select.mjs.map +1 -1
- package/fesm2022/igniteui-angular-simple-combo.mjs +44 -33
- package/fesm2022/igniteui-angular-simple-combo.mjs.map +1 -1
- package/fesm2022/igniteui-angular-slider.mjs +28 -28
- package/fesm2022/igniteui-angular-snackbar.mjs +7 -7
- package/fesm2022/igniteui-angular-splitter.mjs +37 -27
- package/fesm2022/igniteui-angular-splitter.mjs.map +1 -1
- package/fesm2022/igniteui-angular-stepper.mjs +34 -34
- package/fesm2022/igniteui-angular-switch.mjs +7 -7
- package/fesm2022/igniteui-angular-tabs.mjs +34 -34
- package/fesm2022/igniteui-angular-time-picker.mjs +34 -40
- package/fesm2022/igniteui-angular-time-picker.mjs.map +1 -1
- package/fesm2022/igniteui-angular-toast.mjs +7 -7
- package/fesm2022/igniteui-angular-tree.mjs +33 -30
- package/fesm2022/igniteui-angular-tree.mjs.map +1 -1
- package/fesm2022/igniteui-angular-virtual-scroll.mjs +1257 -0
- package/fesm2022/igniteui-angular-virtual-scroll.mjs.map +1 -0
- package/fesm2022/igniteui-angular.mjs +1 -0
- package/fesm2022/igniteui-angular.mjs.map +1 -1
- package/input-group/README.md +2 -0
- package/lib/core/styles/components/scrollbar/scrollbar-component.scss +0 -2
- package/lib/core/styles/components/scrollbar/scrollbar-theme.scss +23 -51
- package/lib/grids/core/src/column-actions/themes/_derived.scss +3 -3
- package/lib/grids/core/src/filtering/excel-style/themes/_derived.scss +3 -3
- package/lib/grids/themes/_derived.scss +3 -3
- package/lib/query-builder/src/query-builder/themes/_derived.scss +3 -3
- package/migrations/migration-collection.json +10 -0
- package/migrations/update-22_2_0/changes/theme-changes.json +77 -0
- package/migrations/update-22_2_0/index.d.ts +3 -0
- package/migrations/update-22_2_0/index.js +18 -0
- package/migrations/update-22_2_0/index.spec.d.ts +1 -0
- package/migrations/update-22_2_0/index.spec.js +88 -0
- package/migrations/update-22_2_0_grid-summary-borders/changes/theme-changes.json +17 -0
- package/migrations/update-22_2_0_grid-summary-borders/index.d.ts +3 -0
- package/migrations/update-22_2_0_grid-summary-borders/index.js +64 -0
- package/migrations/update-22_2_0_grid-summary-borders/index.spec.d.ts +1 -0
- package/migrations/update-22_2_0_grid-summary-borders/index.spec.js +100 -0
- package/package.json +6 -2
- package/schematics/tsconfig.tsbuildinfo +1 -1
- package/simple-combo/README.md +3 -0
- package/skills/igniteui-angular-components/references/form-controls.md +58 -0
- 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-action-strip.d.ts +1 -0
- package/types/igniteui-angular-banner.d.ts +1 -0
- package/types/igniteui-angular-calendar.d.ts +3 -1
- package/types/igniteui-angular-carousel.d.ts +1 -0
- package/types/igniteui-angular-chips.d.ts +1 -0
- package/types/igniteui-angular-combo.d.ts +56 -12
- package/types/igniteui-angular-core.d.ts +64 -11
- package/types/igniteui-angular-date-picker.d.ts +4 -4
- package/types/igniteui-angular-directives.d.ts +50 -164
- package/types/igniteui-angular-drop-down.d.ts +76 -4
- package/types/igniteui-angular-grids-core.d.ts +64 -28
- package/types/igniteui-angular-grids-grid.d.ts +4 -7
- package/types/igniteui-angular-grids-hierarchical-grid.d.ts +5 -4
- package/types/igniteui-angular-grids-pivot-grid.d.ts +11 -5
- package/types/igniteui-angular-grids-tree-grid.d.ts +1 -1
- package/types/igniteui-angular-icon.d.ts +1 -1
- package/types/igniteui-angular-input-group.d.ts +2 -2
- package/types/igniteui-angular-list.d.ts +1 -0
- package/types/igniteui-angular-paginator.d.ts +1 -0
- package/types/igniteui-angular-query-builder.d.ts +5 -1
- package/types/igniteui-angular-radio.d.ts +16 -1
- package/types/igniteui-angular-select.d.ts +1 -2
- package/types/igniteui-angular-simple-combo.d.ts +7 -0
- package/types/igniteui-angular-splitter.d.ts +6 -1
- package/types/igniteui-angular-stepper.d.ts +1 -1
- package/types/igniteui-angular-time-picker.d.ts +2 -2
- package/types/igniteui-angular-tree.d.ts +4 -3
- package/types/igniteui-angular-virtual-scroll.d.ts +408 -0
- package/types/igniteui-angular.d.ts +1 -0
- package/virtual-scroll/README.md +332 -0
package/README.md
CHANGED
|
@@ -20,7 +20,7 @@ Or visit [Ignite UI for Angular Discord](https://discord.com/channels/8366344874
|
|
|
20
20
|
### Contributing
|
|
21
21
|
There are many ways in which you can [participate](https://github.com/IgniteUI/igniteui-angular/blob/master/.github/CONTRIBUTING.md#overview) in this project, for example:
|
|
22
22
|
|
|
23
|
-
- [Submit bugs and feature requests](https://github.com/IgniteUI/igniteui-angular/wiki/How-to-log-an-Issue-on-Github), and help us verify as they are checked in.
|
|
23
|
+
- [Submit bugs and feature requests](https://github.com/IgniteUI/igniteui-angular/wiki/How-to-log-an-Issue-on-Github), and help us verify them as they are checked in.
|
|
24
24
|
- Review [source code changes](https://github.com/IgniteUI/igniteui-angular/pulls)
|
|
25
25
|
- Review [the documentation](https://github.com/IgniteUI/igniteui-docfx) and make pull requests for anything from typos to additional and new content
|
|
26
26
|
- If you are interested in fixing issues and contributing directly to the code base, please see the document [How to Contribute](https://github.com/IgniteUI/igniteui-angular/blob/master/.github/CONTRIBUTING.md#fixing-a-bug), which covers the following:
|
|
@@ -95,7 +95,7 @@ Ignite UI for Angular arrives with an extensive library of data visualizations t
|
|
|
95
95
|
|
|
96
96
|
Some of the Angular chart types included are: [Polar chart](https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/polar-chart), [Pie chart](https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/pie-chart), [Donut chart](https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/donut-chart), [Bubble chart](https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/bubble-chart), [Area chart](https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/area-chart), [Treemap chart](https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/treemap-chart), and many others. And if you look for [Angular financial charts](https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/stock-chart), with Ignite UI you can get the same features as the ones you come across with Google Finance and Yahoo Finance Charts.
|
|
97
97
|
|
|
98
|
-
### Current List of Components
|
|
98
|
+
### Current List of Components Includes:
|
|
99
99
|
|
|
100
100
|
|Components|Status|||Added in|License|Directives|Status|||Added in|License|
|
|
101
101
|
|:--|:--:|:--|:--|:--|:--|:--:|:--|:--|:--|:--|:--|
|
package/combo/README.md
CHANGED
|
@@ -50,6 +50,15 @@ public dataLoading(evt): void {
|
|
|
50
50
|
What the combo exposes is a `virtualizationState` property that gives state of the combo - first index and the number of items that needs to be loaded.
|
|
51
51
|
The service, should inform the combo for the total items that are on the server - using the `totalItemCount` property.
|
|
52
52
|
|
|
53
|
+
The first rendered range does not emit `dataPreLoad` when the initial page already covers it.
|
|
54
|
+
Later range changes still emit the event, so the consumer can cancel a superseded request.
|
|
55
|
+
Capture the requested range when starting a fetch and cancel its subscription before replacing
|
|
56
|
+
it; assigning `data` does not identify which request produced the page.
|
|
57
|
+
|
|
58
|
+
Changing a positive `totalItemCount` refreshes the list without rebinding `data`. If the total
|
|
59
|
+
shrinks, loaded records beyond it are excluded while the valid prefix keeps its position.
|
|
60
|
+
This limit is applied before filtering and grouping; group headers are not remote records.
|
|
61
|
+
|
|
53
62
|
|
|
54
63
|
## Features
|
|
55
64
|
|
|
@@ -86,6 +95,16 @@ export class MyCombo {
|
|
|
86
95
|
}
|
|
87
96
|
```
|
|
88
97
|
|
|
98
|
+
With primitive value keys, resolving the selection reuses previously found records
|
|
99
|
+
after verifying their index, identity and key. Missing or invalid matches share one
|
|
100
|
+
fallback scan. Changing the data array, its length or `valueKey` clears the lookup;
|
|
101
|
+
object keys retain deep-equality matching. A selected key whose record is not loaded
|
|
102
|
+
is represented by `{ [valueKey]: key }` and is checked again on the next resolution.
|
|
103
|
+
|
|
104
|
+
The hit validation does not detect a different record becoming an earlier duplicate
|
|
105
|
+
of an already cached key without rebinding the data. This remains a known limitation
|
|
106
|
+
of the lookup, not a guarantee of compatibility with every in-place mutation.
|
|
107
|
+
|
|
89
108
|
### Selection Events
|
|
90
109
|
|
|
91
110
|
The `igx-combo` exposes both `selectionChanging` and `selectionChanged`.
|
package/drop-down/README.md
CHANGED
|
@@ -71,7 +71,41 @@ The ***igx-drop-down-item-group*** component can be used inside of the ***igx-dr
|
|
|
71
71
|
***NOTE:*** The ***igx-drop-down-item-group*** tag can be used for grouping of ***igx-drop-down-item*** only an will forfeit any other content passed to it.
|
|
72
72
|
|
|
73
73
|
## Virtualized item list
|
|
74
|
-
The `igx-drop-down`
|
|
74
|
+
The `igx-drop-down` can display very large lists of data with either `IgxVirtualScrollComponent` or the `IgxForOf` directive. Both are supported; pick one for a given drop-down.
|
|
75
|
+
|
|
76
|
+
### Using IgxVirtualScrollComponent
|
|
77
|
+
Project an `igx-virtual-scroll` and template its items with `igxVirtualItem`. The template context gives the item and its index in the whole collection, which are what `igx-drop-down-item` binds to:
|
|
78
|
+
|
|
79
|
+
```typescript
|
|
80
|
+
import { IgxDropDownComponent, IgxDropDownItemComponent } from 'igniteui-angular/drop-down';
|
|
81
|
+
import { IgxVirtualItemDirective, IgxVirtualScrollComponent } from 'igniteui-angular/virtual-scroll';
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
```html
|
|
85
|
+
<igx-drop-down>
|
|
86
|
+
<igx-virtual-scroll role="presentation" [data]="localItems" [estimatedItemSize]="28" [initialViewportSize]="200"
|
|
87
|
+
style="display: block; height: 200px">
|
|
88
|
+
<ng-template igxVirtualItem let-item let-index="index">
|
|
89
|
+
<igx-drop-down-item [value]="item" [index]="index">
|
|
90
|
+
{{ item.data }}
|
|
91
|
+
</igx-drop-down-item>
|
|
92
|
+
</ng-template>
|
|
93
|
+
</igx-virtual-scroll>
|
|
94
|
+
</igx-drop-down>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
The scrolling host needs a real height — it is the element that scrolls, so no wrapping container is required. A drop-down is closed until the change detection pass that opens it, so the list has no size to measure in that pass, yet the drop-down focuses an item in it. `initialViewportSize` is an internal input that renders the first window against the given size until the height is measured. It goes away once the drop-down opens a list that renders on reveal.
|
|
98
|
+
|
|
99
|
+
`index` is the item's index in the whole collection, so it stays correct as rows are recycled.
|
|
100
|
+
|
|
101
|
+
Use `role="presentation"` on this scrolling container so the options belong to the drop-down's listbox without an intervening list role.
|
|
102
|
+
|
|
103
|
+
For paged `dataWindow` bindings, navigation and item lookup use the same normalization as the virtual scroll: `startIndex` and `totalCount` are truncated to integers and clamped to zero or above; non-finite values become zero. The effective count is at least the normalized start index plus the page length, even when the declared total is smaller.
|
|
104
|
+
|
|
105
|
+
See the [virtual scroll README](../virtual-scroll/README.md) for the rest of its API.
|
|
106
|
+
|
|
107
|
+
### Using the IgxForOf directive
|
|
108
|
+
To use `*igxFor` instead, follow the steps below:
|
|
75
109
|
|
|
76
110
|
### Import IgxForOfModule
|
|
77
111
|
```typescript
|
|
@@ -100,7 +134,9 @@ Configure the drop-down to use `*igxFor` instead of `ngFor`. Some additional con
|
|
|
100
134
|
```
|
|
101
135
|
Furthermore, when using `*igxFor` in the drop-down template, items must have `value` and `index` bound. The `value` property should be unique for each item.
|
|
102
136
|
|
|
103
|
-
### Styling the container
|
|
137
|
+
### Styling the container for the IgxForOf directive
|
|
138
|
+
This applies to the `*igxFor` variant above. An `igx-virtual-scroll` is itself the scrolling element and needs no wrapper.
|
|
139
|
+
|
|
104
140
|
In order for the drop-down list to properly display, the drop-down items must be wrapped in a container element (e.g. `<div>`).
|
|
105
141
|
The container element must have the following styles:
|
|
106
142
|
- `overflow: hidden;`
|
|
@@ -133,7 +169,7 @@ The following outputs are available in the **igx-drop-down** component:
|
|
|
133
169
|
| `closing` | true | Emitted before the dropdown is closed. | `IBaseCancelableBrowserEventArgs` |
|
|
134
170
|
| `closed` | false | Emitted when a dropdown is being closed. | `IBaseEventArgs` |
|
|
135
171
|
|
|
136
|
-
***NOTE:***
|
|
172
|
+
***NOTE:*** When the `igx-drop-down-item`s are virtualized, with either `igx-virtual-scroll` or `*igxFor`, `selectionChanging` will emit `newSelection` and `oldSelection` as type `{ value: any, index: number }`.
|
|
137
173
|
|
|
138
174
|
## Methods
|
|
139
175
|
The following methods are available in the **igx-drop-down** component:
|
|
@@ -158,7 +194,7 @@ The following getters are available on the **igx-drop-down** component:
|
|
|
158
194
|
| `element`| `ElementRef` | Get dropdown html element. |
|
|
159
195
|
| `scrollContainer`| `ElementRef` | Get drop down's html element of its scroll container. |
|
|
160
196
|
|
|
161
|
-
***NOTE:***
|
|
197
|
+
***NOTE:*** When the `igx-drop-down-item`s are virtualized, with either `igx-virtual-scroll` or `*igxFor`, `selectedItem` will return type `{ value: any, index: number }`, where `value` is the item's bound `value` property and `index` is the item's index property in the data set.
|
|
162
198
|
|
|
163
199
|
The following table summarizes some of the useful **igx-drop-down-item** component inputs, outputs and methods.
|
|
164
200
|
|
|
@@ -348,10 +348,10 @@ class IgxAccordionComponent {
|
|
|
348
348
|
this.panels?.forEach(panel => panel.animationSettings = this.animationSettings);
|
|
349
349
|
}
|
|
350
350
|
}
|
|
351
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.
|
|
352
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.1.
|
|
351
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
352
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.1.7", 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", changeDetection: i0.ChangeDetectionStrategy.Eager }); }
|
|
353
353
|
}
|
|
354
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.
|
|
354
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAccordionComponent, decorators: [{
|
|
355
355
|
type: Component,
|
|
356
356
|
args: [{ selector: 'igx-accordion', changeDetection: ChangeDetectionStrategy.Eager, standalone: true, template: "<ng-content select=\"igx-expansion-panel\"></ng-content>\n" }]
|
|
357
357
|
}], propDecorators: { id: [{
|
|
@@ -399,11 +399,11 @@ const IGX_ACCORDION_DIRECTIVES = [
|
|
|
399
399
|
* IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components
|
|
400
400
|
*/
|
|
401
401
|
class IgxAccordionModule {
|
|
402
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.
|
|
403
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.
|
|
404
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.
|
|
402
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
403
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.7", ngImport: i0, type: IgxAccordionModule, imports: [IgxAccordionComponent, i2.IgxExpansionPanelComponent, i2.IgxExpansionPanelHeaderComponent, i2.IgxExpansionPanelBodyComponent, i2.IgxExpansionPanelDescriptionDirective, i2.IgxExpansionPanelTitleDirective, i2.IgxExpansionPanelIconDirective], exports: [IgxAccordionComponent, i2.IgxExpansionPanelComponent, i2.IgxExpansionPanelHeaderComponent, i2.IgxExpansionPanelBodyComponent, i2.IgxExpansionPanelDescriptionDirective, i2.IgxExpansionPanelTitleDirective, i2.IgxExpansionPanelIconDirective] }); }
|
|
404
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAccordionModule, imports: [i2.IgxExpansionPanelComponent, i2.IgxExpansionPanelHeaderComponent, i2.IgxExpansionPanelBodyComponent] }); }
|
|
405
405
|
}
|
|
406
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.
|
|
406
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAccordionModule, decorators: [{
|
|
407
407
|
type: NgModule,
|
|
408
408
|
args: [{
|
|
409
409
|
imports: [
|
|
@@ -10,10 +10,10 @@ class IgxActionStripMenuItemDirective {
|
|
|
10
10
|
constructor() {
|
|
11
11
|
this.templateRef = inject(TemplateRef);
|
|
12
12
|
}
|
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.
|
|
14
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxActionStripMenuItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
14
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: IgxActionStripMenuItemDirective, isStandalone: true, selector: "[igxActionStripMenuItem]", ngImport: i0 }); }
|
|
15
15
|
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxActionStripMenuItemDirective, decorators: [{
|
|
17
17
|
type: Directive,
|
|
18
18
|
args: [{
|
|
19
19
|
selector: '[igxActionStripMenuItem]',
|
|
@@ -93,10 +93,11 @@ class IgxActionStripComponent {
|
|
|
93
93
|
* By default it uses EN resources.
|
|
94
94
|
*/
|
|
95
95
|
set resourceStrings(value) {
|
|
96
|
-
this._resourceStrings =
|
|
96
|
+
this._resourceStrings = value;
|
|
97
|
+
this._customResourceStrings = Object.assign({}, this._defaultResourceStrings, this._resourceStrings);
|
|
97
98
|
}
|
|
98
99
|
get resourceStrings() {
|
|
99
|
-
return this._resourceStrings
|
|
100
|
+
return this._resourceStrings ? this._customResourceStrings : this._defaultResourceStrings;
|
|
100
101
|
}
|
|
101
102
|
/**
|
|
102
103
|
* Hide or not the Action Strip based on if it is a menu.
|
|
@@ -146,6 +147,7 @@ class IgxActionStripComponent {
|
|
|
146
147
|
this._context = signal(undefined, /* @ts-ignore */
|
|
147
148
|
...(ngDevMode ? [{ debugName: "_context" }] : /* istanbul ignore next */ []));
|
|
148
149
|
this._resourceStrings = null;
|
|
150
|
+
this._customResourceStrings = null;
|
|
149
151
|
this._defaultResourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN);
|
|
150
152
|
/**
|
|
151
153
|
* Host `attr.class` binding.
|
|
@@ -155,6 +157,7 @@ class IgxActionStripComponent {
|
|
|
155
157
|
this.trackMenuItem = trackByIdentity;
|
|
156
158
|
onResourceChangeHandle(this._destroyRef, () => {
|
|
157
159
|
this._defaultResourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN, false);
|
|
160
|
+
this._customResourceStrings = this._resourceStrings ? Object.assign({}, this._defaultResourceStrings, this._resourceStrings) : null;
|
|
158
161
|
}, this);
|
|
159
162
|
}
|
|
160
163
|
/**
|
|
@@ -269,10 +272,10 @@ class IgxActionStripComponent {
|
|
|
269
272
|
this.menu.close();
|
|
270
273
|
}
|
|
271
274
|
}
|
|
272
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.
|
|
273
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.
|
|
275
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxActionStripComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
276
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", 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", styles: ["@layer ig.base{.igx-action-strip__pinning-actions,.igx-action-strip__editing-actions{display:flex;align-items:center;justify-content:center}.igx-action-strip__menu-item--danger [igxLabel],.igx-action-strip__menu-item [igxLabel]{cursor:pointer}.igx-drop-down__item.igx-action-strip__menu-item--danger igx-icon+[igxLabel],.igx-drop-down__item.igx-action-strip__menu-item igx-icon+[igxLabel]{margin-inline-start:max(var(--is-large, 1)*max(.75rem,-1 * .75rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(.625rem,-1 * .625rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(.5rem,-1 * .5rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))))}.igx-action-strip{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);--action-strip-size: var(--component-size);--button-size: max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.75rem, -1 * 1.75rem), var(--is-small, 1) * max(1.75rem, -1 * 1.75rem));display:flex;align-items:center;justify-content:flex-end;position:absolute;width:100%;height:100%;pointer-events:none;top:0;inset-inline-start:0;background:var(--background);color:inherit;padding-inline:max(var(--is-large, 1)*max(1.5rem,-1 * 1.5rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(1rem,-1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(.75rem,-1 * .75rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));padding-block:0;z-index:9999}.igx-action-strip [igxIconButton]{--component-size: var(--action-strip-size);width:var(--button-size);height:var(--button-size)}.igx-action-strip [igxIconButton] igx-icon{--component-size: var(--action-strip-size);--ig-icon-size: max(var(--is-large, 1) * max(1.125rem, -1 * 1.125rem), var(--is-medium, 1) * max(.875rem, -1 * .875rem), var(--is-small, 1) * max(.875rem, -1 * .875rem))}.igx-action-strip__actions{display:inline-flex;align-items:center;justify-content:center;pointer-events:all;position:relative;color:var(--icon-color);border-radius:var(--actions-border-radius);background:var(--actions-background)}.igx-action-strip__actions:last-child{margin-inline-end:0}.igx-action-strip__actions igx-icon:not(igx-drop-down *){color:var(--icon-color)}.igx-action-strip__actions [igxIconButton]:not(igx-drop-down *){border-radius:var(--actions-border-radius)}.igx-action-strip__actions [igxIconButton]:not(igx-drop-down *) igx-icon{color:var(--icon-color)}.igx-action-strip__delete igx-icon{color:var(--delete-action)}.igx-action-strip__delete [igxIconButton] igx-icon{color:var(--delete-action)}.igx-action-strip__editing-actions>[igxButton]{margin-inline-start:.25rem}.igx-action-strip__editing-actions>[igxButton]:first-of-type{margin-inline-start:0}.igx-action-strip__menu-item--danger,.igx-action-strip__menu-item--danger:hover{color:var(--ig-error-500)}.igx-action-strip__menu-button{display:flex;align-items:center}}@layer ig.fluent{@container style(--ig-theme: fluent){.igx-action-strip [igxIconButton]{--button-size: max(var(--is-large, 1) * max(2rem, -1 * 2rem), var(--is-medium, 1) * max(1.75rem, -1 * 1.75rem), var(--is-small, 1) * max(1.75rem, -1 * 1.75rem))}}}\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" }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None }); }
|
|
274
277
|
}
|
|
275
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.
|
|
278
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxActionStripComponent, decorators: [{
|
|
276
279
|
type: Component,
|
|
277
280
|
args: [{ selector: 'igx-action-strip', encapsulation: ViewEncapsulation.None, imports: [
|
|
278
281
|
NgTemplateOutlet,
|
|
@@ -319,11 +322,11 @@ const IGX_ACTION_STRIP_DIRECTIVES = [
|
|
|
319
322
|
* IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components
|
|
320
323
|
*/
|
|
321
324
|
class IgxActionStripModule {
|
|
322
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.
|
|
323
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.
|
|
324
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.
|
|
325
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxActionStripModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
326
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.7", ngImport: i0, type: IgxActionStripModule, imports: [IgxActionStripComponent, IgxActionStripMenuItemDirective], exports: [IgxActionStripComponent, IgxActionStripMenuItemDirective] }); }
|
|
327
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxActionStripModule, imports: [IgxActionStripComponent] }); }
|
|
325
328
|
}
|
|
326
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.
|
|
329
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxActionStripModule, decorators: [{
|
|
327
330
|
type: NgModule,
|
|
328
331
|
args: [{
|
|
329
332
|
imports: [
|
|
@@ -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 inject,\n DestroyRef,\n AfterContentInit,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n signal\n} from '@angular/core';\n\n\nimport {\n ActionStripResourceStringsEN,\n CloseScrollStrategy,\n getCurrentResourceStrings,\n onResourceChangeHandle,\n IActionStripResourceStrings,\n IgxActionStripActionsToken,\n IgxActionStripToken,\n OverlaySettings\n} 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: Grid */\n/* contentParent: TreeGrid */\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, IgxHierarchicalGridComponent, IgxTreeGridComponent, 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 styleUrl: 'action-strip.component.css',\n encapsulation: ViewEncapsulation.None,\n imports: [\n NgTemplateOutlet,\n IgxIconButtonDirective,\n IgxRippleDirective,\n IgxToggleActionDirective,\n IgxDropDownItemNavigationDirective,\n IgxIconComponent,\n IgxDropDownComponent,\n IgxDropDownItemComponent\n ],\n changeDetection: ChangeDetectionStrategy.Eager,\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 /* blazorSuppress */\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 set context(value: any) {\n this._context.set(value);\n }\n\n public get context(): any {\n return this._context();\n }\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)\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 set hidden(value: boolean) {\n this._hidden.set(value);\n }\n\n public get hidden(): boolean {\n return this._hidden();\n }\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 || this._defaultResourceStrings;\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 return undefined!;\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 _destroyRef = inject(DestroyRef);\n /**\n * `hidden` and `context` are held in signals so that the reads in the `display` host binding\n * and in the action components' templates are tracked. Both are changed imperatively - from\n * `show`/`hide`, and from the grid while it is rendering (e.g. `viewDetachHandler` hiding the\n * strip as its row is detached) - and a plain field would leave those bindings stale, which\n * surfaces as `NG0100` in dev mode and as an out-of-date strip in a zoneless app: a component's\n * host binding is only re-evaluated when its parent view is refreshed, so marking this\n * component for check is not enough.\n */\n private _hidden = signal(true);\n private _context = signal<any>(undefined);\n private _resourceStrings: IActionStripResourceStrings = null!;\n private _defaultResourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN);\n private _originalParent!: HTMLElement;\n\n constructor() {\n onResourceChangeHandle(this._destroyRef, () => {\n this._defaultResourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN, false);\n }, this);\n }\n\n /**\n * Menu Items list.\n *\n * @hidden\n * @internal\n */\n public get menuItems() {\n const actions: any[] = [];\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 action strip\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: any[] = [];\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":";;;;;;;;MA8Ca,+BAA+B,CAAA;AAJ5C,IAAA,WAAA,GAAA;AAKW,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAmB,WAAW,CAAC;AAC7D,IAAA;8GAFY,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA/B,+BAA+B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAA/B,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAJ3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,UAAU,EAAE;AACf,iBAAA;;AAKD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;AAsBG;MAmBU,uBAAuB,CAAA;;AAShC;;;;;;;;;AASG;IACH,IACW,OAAO,CAAC,KAAU,EAAA;AACzB,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;IAC5B;AAEA,IAAA,IAAW,OAAO,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,QAAQ,EAAE;IAC1B;AAyBA;;;;;;;;AAQG;IACH,IACW,MAAM,CAAC,KAAc,EAAA;AAC5B,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;IAC3B;AAEA,IAAA,IAAW,MAAM,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,OAAO,EAAE;IACzB;AAGA;;;;;AAKG;IACH,IACW,eAAe,CAAC,KAAkC,EAAA;AACzD,QAAA,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC;IAC3E;AAEA,IAAA,IAAW,eAAe,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,uBAAuB;IAChE;AAEA;;;;;AAKG;AACH,IAAA,IAAW,cAAc,GAAA;QACrB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9B,YAAA,OAAO,IAAI;QACf;aAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;AACnC,YAAA,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACrB,gBAAA,OAAO,IAAI;YACf;iBAAO;AACH,gBAAA,OAAO,KAAK;YAChB;QACJ;AACA,QAAA,OAAO,SAAU;IACrB;AAmCA,IAAA,WAAA,GAAA;AAxIQ,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;AAC1B,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;;AAE1B,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;AA4GtC;;;;;AAKG;QACI,IAAA,CAAA,mBAAmB,GAAoB,EAAE,cAAc,EAAE,IAAI,mBAAmB,EAAE,EAAE;AAEnF,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACxC;;;;;;;;AAQG;QACK,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,IAAI;oFAAC;QACtB,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAM,SAAS;qFAAC;QACjC,IAAA,CAAA,gBAAgB,GAAgC,IAAK;AACrD,QAAA,IAAA,CAAA,uBAAuB,GAAG,yBAAyB,CAAC,4BAA4B,CAAC;AAqCzF;;AAEG;QAEO,IAAA,CAAA,SAAS,GAAG,kBAAkB;;QAmF9B,IAAA,CAAA,aAAa,GAAG,eAAe;AAxHrC,QAAA,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,MAAK;YAC1C,IAAI,CAAC,uBAAuB,GAAG,yBAAyB,CAAC,4BAA4B,EAAE,KAAK,CAAC;QACjG,CAAC,EAAE,IAAI,CAAC;IACZ;AAEA;;;;;AAKG;AACH,IAAA,IAAW,SAAS,GAAA;QAChB,MAAM,OAAO,GAAU,EAAE;AACzB,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,IAAG;AAChC,YAAA,IAAI,MAAM,CAAC,WAAW,EAAE;AACpB,gBAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO;gBAC/B,IAAI,QAAQ,EAAE;AACV,oBAAA,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpD;YACJ;AACJ,QAAA,CAAC,CAAC;AACF,QAAA,OAAO,CAAC,GAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC;IACtD;AAGA;;AAEG;AACH,IAAA,IACY,OAAO,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,MAAM;IAC3C;AAQA;;;AAGG;IACI,kBAAkB,GAAA;AACrB,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,IAAG;AAChC,YAAA,MAAM,CAAC,KAAK,GAAG,IAAI;AACvB,QAAA,CAAC,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,MAAK;AACtC,YAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,IAAG;AAChC,gBAAA,MAAM,CAAC,KAAK,GAAG,IAAI;AACvB,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;IACN;AAEA;;;AAGG;IACI,eAAe,GAAA;QAClB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,MAAM,KAAI;YAC7C,MAAM,YAAY,GAAI,MAAM,CAAC,YAAoB,CAAC,UAAU,CAAC,aAAa;YAC1E,IAAI,UAAU,GAAU,EAAE;AAC1B,YAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,IAAG;AACvC,gBAAA,IAAI,aAAa,CAAC,WAAW,EAAE;AAC3B,oBAAA,UAAU,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpE;AACJ,YAAA,CAAC,CAAC;YACF,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YACrF,IAAI,MAAM,EAAE;AACR,gBAAA,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE;YAC7B;AACJ,QAAA,CAAC,CAAC;AACF,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa;IACnF;AAEA;;;;;;;;AAQG;AACI,IAAA,IAAI,CAAC,OAAa,EAAA;AACrB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;QACnB,IAAI,CAAC,OAAO,EAAE;YACV;QACJ;;AAEA,QAAA,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE;YAC1B,IAAI,CAAC,SAAS,EAAE;QACpB;AACA,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;QACtB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;AACtC,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;QACvG;AACA,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;IAC5B;AAEA;;;;;;;AAOG;IACI,IAAI,GAAA;AACP,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI;QAClB,IAAI,CAAC,SAAS,EAAE;AAChB,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;;AAEtB,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;QAC9F;aAAO,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YAC7C,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;QAC5G;IACJ;AAKA;;;;;AAKG;IACK,SAAS,GAAA;QACb,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACnC,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;QACrB;IACJ;8GA9QS,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EA4DZ,gBAAgB,CAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,cAAA,EAAA,wBAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,SAAA,EA9DzB,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC,qDAoClE,+BAA+B,EAAA,EAAA,EAAA,YAAA,EAAA,eAAA,EAAA,SAAA,EAc/B,0BAA0B,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrJ/C,wsCAiCA,EAAA,MAAA,EAAA,CAAA,ggHAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDwDQ,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,sBAAsB,uFACtB,kBAAkB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAClB,wBAAwB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,iBAAA,EAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACxB,kCAAkC,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAClC,gBAAgB,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,oBAAoB,kKACpB,wBAAwB,EAAA,QAAA,EAAA,oBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAKnB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAlBnC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EAAA,aAAA,EAGb,iBAAiB,CAAC,IAAI,EAAA,OAAA,EAC5B;wBACL,gBAAgB;wBAChB,sBAAsB;wBACtB,kBAAkB;wBAClB,wBAAwB;wBACxB,kCAAkC;wBAClC,gBAAgB;wBAChB,oBAAoB;wBACpB;AACH,qBAAA,EAAA,eAAA,EACgB,uBAAuB,CAAC,KAAK,EAAA,SAAA,EACnC,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAA,uBAAyB,EAAE,CAAC,EAAA,QAAA,EAAA,wsCAAA,EAAA,MAAA,EAAA,CAAA,ggHAAA,CAAA,EAAA;;sBAqBlF;;sBAeA,eAAe;uBAAC,+BAA+B;;sBAc/C,eAAe;uBAAC,0BAA0B;;sBAY1C,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAgBrC;;sBAkCA,SAAS;uBAAC,UAAU;;sBAwDpB,WAAW;uBAAC,eAAe;;sBAQ3B,WAAW;uBAAC,wBAAwB;;;AE/QzC;AACO,MAAM,2BAA2B,GAAG;IACvC,uBAAuB;IACvB;;;ACJJ;;;AAGG;MASU,oBAAoB,CAAA;8GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAApB,oBAAoB,EAAA,OAAA,EAAA,CAAAA,uBAAA,EAAAC,+BAAA,CAAA,EAAA,OAAA,EAAA,CAAAD,uBAAA,EAAAC,+BAAA,CAAA,EAAA,CAAA,CAAA;+GAApB,oBAAoB,EAAA,OAAA,EAAA,CAAAD,uBAAA,CAAA,EAAA,CAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBARhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;AACL,wBAAA,GAAG;AACN,qBAAA;AACD,oBAAA,OAAO,EAAE;AACL,wBAAA,GAAG;AACN,qBAAA;AACJ,iBAAA;;;ACdD;;AAEG;;;;"}
|
|
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 inject,\n DestroyRef,\n AfterContentInit,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n signal\n} from '@angular/core';\n\n\nimport {\n ActionStripResourceStringsEN,\n CloseScrollStrategy,\n getCurrentResourceStrings,\n onResourceChangeHandle,\n IActionStripResourceStrings,\n IgxActionStripActionsToken,\n IgxActionStripToken,\n OverlaySettings\n} 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: Grid */\n/* contentParent: TreeGrid */\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, IgxHierarchicalGridComponent, IgxTreeGridComponent, 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 styleUrl: 'action-strip.component.css',\n encapsulation: ViewEncapsulation.None,\n imports: [\n NgTemplateOutlet,\n IgxIconButtonDirective,\n IgxRippleDirective,\n IgxToggleActionDirective,\n IgxDropDownItemNavigationDirective,\n IgxIconComponent,\n IgxDropDownComponent,\n IgxDropDownItemComponent\n ],\n changeDetection: ChangeDetectionStrategy.Eager,\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 /* blazorSuppress */\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 set context(value: any) {\n this._context.set(value);\n }\n\n public get context(): any {\n return this._context();\n }\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)\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 set hidden(value: boolean) {\n this._hidden.set(value);\n }\n\n public get hidden(): boolean {\n return this._hidden();\n }\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 = value;\n this._customResourceStrings = Object.assign({}, this._defaultResourceStrings, this._resourceStrings);\n }\n\n public get resourceStrings(): IActionStripResourceStrings {\n return this._resourceStrings ? this._customResourceStrings : this._defaultResourceStrings;\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 return undefined!;\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 _destroyRef = inject(DestroyRef);\n /**\n * `hidden` and `context` are held in signals so that the reads in the `display` host binding\n * and in the action components' templates are tracked. Both are changed imperatively - from\n * `show`/`hide`, and from the grid while it is rendering (e.g. `viewDetachHandler` hiding the\n * strip as its row is detached) - and a plain field would leave those bindings stale, which\n * surfaces as `NG0100` in dev mode and as an out-of-date strip in a zoneless app: a component's\n * host binding is only re-evaluated when its parent view is refreshed, so marking this\n * component for check is not enough.\n */\n private _hidden = signal(true);\n private _context = signal<any>(undefined);\n private _resourceStrings: IActionStripResourceStrings = null!;\n private _customResourceStrings: IActionStripResourceStrings = null!;\n private _defaultResourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN);\n private _originalParent!: HTMLElement;\n\n constructor() {\n onResourceChangeHandle(this._destroyRef, () => {\n this._defaultResourceStrings = getCurrentResourceStrings(ActionStripResourceStringsEN, false);\n this._customResourceStrings = this._resourceStrings ? Object.assign({}, this._defaultResourceStrings, this._resourceStrings) : null!;\n }, this);\n }\n\n /**\n * Menu Items list.\n *\n * @hidden\n * @internal\n */\n public get menuItems() {\n const actions: any[] = [];\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 action strip\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: any[] = [];\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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"}
|
|
@@ -222,10 +222,10 @@ class IgxAvatarComponent {
|
|
|
222
222
|
return 'custom avatar';
|
|
223
223
|
}
|
|
224
224
|
}
|
|
225
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.
|
|
226
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.
|
|
225
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
226
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.7", type: IgxAvatarComponent, isStandalone: true, selector: "igx-avatar", inputs: { id: "id", shape: "shape", color: "color", bgColor: "bgColor", initials: "initials", icon: "icon", src: "src", size: "size" }, host: { properties: { "attr.aria-label": "this.ariaLabel", "attr.role": "this.role", "class.igx-avatar": "this.cssClass", "attr.aria-roledescription": "this.roleDescription", "attr.id": "this.id", "class.igx-avatar--rounded": "this.isRounded", "class.igx-avatar--circle": "this.isCircle", "style.color": "this.color", "style.background": "this.bgColor", "class.igx-avatar--image": "this._isImageType", "class.igx-avatar--icon": "this._isIconType", "class.igx-avatar--initials": "this._isInitialsType", "style.--component-size": "this.componentSize" } }, viewQueries: [{ propertyName: "defaultTemplate", first: true, predicate: ["defaultTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "imageTemplate", first: true, predicate: ["imageTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "initialsTemplate", first: true, predicate: ["initialsTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "iconTemplate", first: true, predicate: ["iconTemplate"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-template #defaultTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #imageTemplate>\n <div #image class=\"igx-avatar__image\" [style.backgroundImage]=\"getSrcUrl()\"></div>\n</ng-template>\n\n<ng-template #initialsTemplate>\n <span>{{initials.substring(0, 2)}}</span>\n</ng-template>\n\n<ng-template #iconTemplate>\n <igx-icon>{{icon}}</igx-icon>\n</ng-template>\n\n<ng-container *ngTemplateOutlet=\"template\"></ng-container>\n", styles: ["@layer ig.base{.igx-avatar{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);--component-size: var(--ig-size, var(--default-size));position:relative;display:inline-flex;justify-content:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--color);background:var(--background);vertical-align:middle;outline-style:none;flex-shrink:0;width:var(--size);height:var(--size)}.igx-avatar igx-icon{--ig-size: 3;color:var(--icon-color)}.igx-avatar:after{box-shadow:none;transition:box-shadow .15s cubic-bezier(.455,.03,.515,.955)}.igx-avatar__image{width:100%;height:100%;border-radius:inherit;background-size:cover;background-repeat:no-repeat;background-position:center}.igx-avatar--circle{border-radius:calc(var(--size)/2)}.igx-avatar--rounded{border-radius:var(--border-radius)}.igx-avatar--initials{text-transform:uppercase;font-size:calc(var(--size)/2);line-height:calc(var(--size)/2)}}@layer ig.indigo{@container style(--ig-theme: indigo){.igx-avatar igx-icon{--ig-size: 1}}}\n"], dependencies: [{ kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["ariaHidden", "family", "name", "active"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None }); }
|
|
227
227
|
}
|
|
228
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.
|
|
228
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAvatarComponent, decorators: [{
|
|
229
229
|
type: Component,
|
|
230
230
|
args: [{ selector: 'igx-avatar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent, NgTemplateOutlet], template: "<ng-template #defaultTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #imageTemplate>\n <div #image class=\"igx-avatar__image\" [style.backgroundImage]=\"getSrcUrl()\"></div>\n</ng-template>\n\n<ng-template #initialsTemplate>\n <span>{{initials.substring(0, 2)}}</span>\n</ng-template>\n\n<ng-template #iconTemplate>\n <igx-icon>{{icon}}</igx-icon>\n</ng-template>\n\n<ng-container *ngTemplateOutlet=\"template\"></ng-container>\n", styles: ["@layer ig.base{.igx-avatar{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);--component-size: var(--ig-size, var(--default-size));position:relative;display:inline-flex;justify-content:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--color);background:var(--background);vertical-align:middle;outline-style:none;flex-shrink:0;width:var(--size);height:var(--size)}.igx-avatar igx-icon{--ig-size: 3;color:var(--icon-color)}.igx-avatar:after{box-shadow:none;transition:box-shadow .15s cubic-bezier(.455,.03,.515,.955)}.igx-avatar__image{width:100%;height:100%;border-radius:inherit;background-size:cover;background-repeat:no-repeat;background-position:center}.igx-avatar--circle{border-radius:calc(var(--size)/2)}.igx-avatar--rounded{border-radius:var(--border-radius)}.igx-avatar--initials{text-transform:uppercase;font-size:calc(var(--size)/2);line-height:calc(var(--size)/2)}}@layer ig.indigo{@container style(--ig-theme: indigo){.igx-avatar igx-icon{--ig-size: 1}}}\n"] }]
|
|
231
231
|
}], propDecorators: { ariaLabel: [{
|
|
@@ -302,11 +302,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImpor
|
|
|
302
302
|
* IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components
|
|
303
303
|
*/
|
|
304
304
|
class IgxAvatarModule {
|
|
305
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.
|
|
306
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.
|
|
307
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.
|
|
305
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
306
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.7", ngImport: i0, type: IgxAvatarModule, imports: [IgxAvatarComponent], exports: [IgxAvatarComponent] }); }
|
|
307
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAvatarModule, imports: [IgxAvatarComponent] }); }
|
|
308
308
|
}
|
|
309
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.
|
|
309
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxAvatarModule, decorators: [{
|
|
310
310
|
type: NgModule,
|
|
311
311
|
args: [{
|
|
312
312
|
imports: [IgxAvatarComponent],
|
|
@@ -179,10 +179,10 @@ class IgxBadgeComponent {
|
|
|
179
179
|
get errorClass() {
|
|
180
180
|
return this.type === IgxBadgeType.ERROR;
|
|
181
181
|
}
|
|
182
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.
|
|
183
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.
|
|
182
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
183
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.7", type: IgxBadgeComponent, isStandalone: true, selector: "igx-badge", inputs: { id: "id", type: "type", value: "value", icon: "icon", iconSet: "iconSet", shape: "shape", outlined: ["outlined", "outlined", booleanAttribute], dot: ["dot", "dot", booleanAttribute] }, host: { properties: { "attr.id": "this.id", "attr.role": "this.role", "class.igx-badge": "this.cssClass", "class.igx-badge--square": "this._squareShape", "attr.aria-label": "this.label", "class.igx-badge--outlined": "this.outlined", "class.igx-badge--dot": "this.dot", "attr.aria-roledescription": "this.roleDescription", "class.igx-badge--info": "this.infoClass", "class.igx-badge--success": "this.successClass", "class.igx-badge--warning": "this.warningClass", "class.igx-badge--error": "this.errorClass" } }, ngImport: i0, template: "@if (value || value === 0 && !icon) {\n <span class=\"igx-badge__value\">{{value}}</span>\n}\n@if (icon && !iconSet) {\n <igx-icon>{{icon}}</igx-icon>\n}\n@if (icon && iconSet) {\n <igx-icon [family]=\"iconSet\" [name]=\"icon\">{{icon}}</igx-icon>\n}\n<ng-content></ng-content>\n", styles: ["@layer ig.base{.igx-badge{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);--component-size: var(--ig-size, var(--default-size));--badge-size: var(--component-size);--_badge-size: var(--size);--ig-icon-size: max(var(--is-large, 1) * max(1rem, -1 * 1rem), var(--is-medium, 1) * max(.875rem, -1 * .875rem), var(--is-small, 1) * max(.75rem, -1 * .75rem));--ig-icon-color: var(--icon-color);display:inline-flex;justify-content:center;align-items:center;min-width:var(--_badge-size);min-height:var(--_badge-size);color:var(--text-color);background:var(--background-color);border-radius:calc(var(--size)/2);box-shadow:var(--elevation);overflow:hidden;font-size:max(var(--is-large, 1)*max(var(--ig-body-2-font-size),-1 * var(--ig-body-2-font-size)),var(--is-medium, 1)*max(var(--ig-body-2-font-size),-1 * var(--ig-body-2-font-size)),var(--is-small, 1)*max(var(--ig-caption-font-size),-1 * var(--ig-caption-font-size)));font-weight:max(var(--is-large, 1)*max(var(--ig-body-2-font-weight),-1 * var(--ig-body-2-font-weight)),var(--is-medium, 1)*max(var(--ig-body-2-font-weight),-1 * var(--ig-body-2-font-weight)),var(--is-small, 1)*max(var(--ig-caption-font-weight),-1 * var(--ig-caption-font-weight)));line-height:max(var(--is-large, 1)*max(var(--ig-body-2-line-height),-1 * var(--ig-body-2-line-height)),var(--is-medium, 1)*max(var(--ig-body-2-line-height),-1 * var(--ig-body-2-line-height)),var(--is-small, 1)*max(var(--ig-caption-line-height),-1 * var(--ig-caption-line-height)));letter-spacing:max(var(--is-large, 1)*max(var(--ig-body-2-letter-spacing),-1 * var(--ig-body-2-letter-spacing)),var(--is-medium, 1)*max(var(--ig-body-2-letter-spacing),-1 * var(--ig-body-2-letter-spacing)),var(--is-small, 1)*max(var(--ig-caption-letter-spacing),-1 * var(--ig-caption-letter-spacing)));text-transform:max(var(--is-large, 1)*max(var(--ig-body-2-text-transform),-1 * var(--ig-body-2-text-transform)),var(--is-medium, 1)*max(var(--ig-body-2-text-transform),-1 * var(--ig-body-2-text-transform)),var(--is-small, 1)*max(var(--ig-caption-text-transform),-1 * var(--ig-caption-text-transform)));padding-inline:max(var(--is-large, 1)*max(.5rem,-1 * .5rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(.375rem,-1 * .375rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(.25rem,-1 * .25rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));gap:.125rem}.igx-badge:has(igx-icon:only-child){padding-inline:0}.igx-badge__value{white-space:nowrap;text-box:trim-both cap alphabetic}.igx-badge--info{background:var(--ig-info-800)}.igx-badge--success{background:var(--ig-success-900)}.igx-badge--warning{background:var(--ig-warn-500);color:var(--ig-warn-500-contrast)}.igx-badge--warning igx-icon{color:var(--ig-warn-500-contrast)}.igx-badge--error{background:var(--ig-error-700);color:var(--ig-error-900-contrast)}.igx-badge--outlined{box-shadow:0 0 0 .125rem var(--border-color)}.igx-badge--square{border-radius:var(--border-radius)}.igx-badge--dot{--_dot-size: var(--dot-size);min-width:var(--_dot-size);min-height:var(--_dot-size);padding:0}.igx-badge--dot igx-icon,.igx-badge--dot>*{display:none}.igx-badge--hidden{visibility:hidden}}@layer ig.bootstrap{@container style(--ig-theme: bootstrap){.igx-badge--success{background:var(--ig-success-500)}.igx-badge--info{background:var(--ig-info-500)}.igx-badge--error{background:var(--ig-error-500);color:var(--ig-error-100-contrast)}}}@layer ig.indigo{@container style(--ig-theme: indigo){.igx-badge{--ig-icon-size: max(var(--is-large, 1) * max(.75rem, -1 * .75rem), var(--is-medium, 1) * max(.625rem, -1 * .625rem), var(--is-small, 1) * max(.5rem, -1 * .5rem));padding-inline:max(var(--is-large, 1)*max(.375rem,-1 * .375rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(.375rem,-1 * .375rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(.25rem,-1 * .25rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))))}.igx-badge:has(igx-icon:only-child){padding-inline:0}.igx-badge--dot{padding-inline:0}.igx-badge{font-family:var(--ig-button-font-family, var(--ig-font-family));font-size:var(--ig-button-font-size);font-weight:var(--ig-button-font-weight);font-style:var(--ig-button-font-style);line-height:var(--ig-button-line-height);letter-spacing:var(--ig-button-letter-spacing);text-transform:var(--ig-button-text-transform);margin-top:var(--ig-button-margin-top);margin-bottom:var(--ig-button-margin-bottom);font-size:max(var(--is-large, 1)*max(var(--ig-button-font-size),-1 * var(--ig-button-font-size)),var(--is-medium, 1)*max(.625rem,-1 * .625rem),var(--is-small, 1)*max(.5625rem,-1 * .5625rem));line-height:max(var(--is-large, 1)*max(var(--ig-button-line-height),-1 * var(--ig-button-line-height)),var(--is-medium, 1)*max(.875rem,-1 * .875rem),var(--is-small, 1)*max(.75rem,-1 * .75rem))}.igx-badge--success{background:var(--ig-success-700)}.igx-badge--info{background:var(--ig-info-500)}.igx-badge--error{background:var(--ig-error-500)}.igx-badge--warning{color:var(--ig-gray-900)}.igx-badge--warning igx-icon{color:var(--ig-gray-900)}}}@layer ig.fluent{@container style(--ig-theme: fluent){.igx-badge--success{background:var(--ig-success-500)}.igx-badge--info{background:var(--ig-info-700)}.igx-badge--error{background:var(--ig-error-500)}}}@layer ig.indigo{@container style(--ig-theme: indigo) and style(--ig-theme-variant: dark){.igx-badge--warning{color:var(--ig-gray-50)}.igx-badge--warning igx-icon{color:var(--ig-gray-50)}}}\n"], dependencies: [{ kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["ariaHidden", "family", "name", "active"] }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None }); }
|
|
184
184
|
}
|
|
185
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.
|
|
185
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxBadgeComponent, decorators: [{
|
|
186
186
|
type: Component,
|
|
187
187
|
args: [{ selector: 'igx-badge', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent], template: "@if (value || value === 0 && !icon) {\n <span class=\"igx-badge__value\">{{value}}</span>\n}\n@if (icon && !iconSet) {\n <igx-icon>{{icon}}</igx-icon>\n}\n@if (icon && iconSet) {\n <igx-icon [family]=\"iconSet\" [name]=\"icon\">{{icon}}</igx-icon>\n}\n<ng-content></ng-content>\n", styles: ["@layer ig.base{.igx-badge{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);--component-size: var(--ig-size, var(--default-size));--badge-size: var(--component-size);--_badge-size: var(--size);--ig-icon-size: max(var(--is-large, 1) * max(1rem, -1 * 1rem), var(--is-medium, 1) * max(.875rem, -1 * .875rem), var(--is-small, 1) * max(.75rem, -1 * .75rem));--ig-icon-color: var(--icon-color);display:inline-flex;justify-content:center;align-items:center;min-width:var(--_badge-size);min-height:var(--_badge-size);color:var(--text-color);background:var(--background-color);border-radius:calc(var(--size)/2);box-shadow:var(--elevation);overflow:hidden;font-size:max(var(--is-large, 1)*max(var(--ig-body-2-font-size),-1 * var(--ig-body-2-font-size)),var(--is-medium, 1)*max(var(--ig-body-2-font-size),-1 * var(--ig-body-2-font-size)),var(--is-small, 1)*max(var(--ig-caption-font-size),-1 * var(--ig-caption-font-size)));font-weight:max(var(--is-large, 1)*max(var(--ig-body-2-font-weight),-1 * var(--ig-body-2-font-weight)),var(--is-medium, 1)*max(var(--ig-body-2-font-weight),-1 * var(--ig-body-2-font-weight)),var(--is-small, 1)*max(var(--ig-caption-font-weight),-1 * var(--ig-caption-font-weight)));line-height:max(var(--is-large, 1)*max(var(--ig-body-2-line-height),-1 * var(--ig-body-2-line-height)),var(--is-medium, 1)*max(var(--ig-body-2-line-height),-1 * var(--ig-body-2-line-height)),var(--is-small, 1)*max(var(--ig-caption-line-height),-1 * var(--ig-caption-line-height)));letter-spacing:max(var(--is-large, 1)*max(var(--ig-body-2-letter-spacing),-1 * var(--ig-body-2-letter-spacing)),var(--is-medium, 1)*max(var(--ig-body-2-letter-spacing),-1 * var(--ig-body-2-letter-spacing)),var(--is-small, 1)*max(var(--ig-caption-letter-spacing),-1 * var(--ig-caption-letter-spacing)));text-transform:max(var(--is-large, 1)*max(var(--ig-body-2-text-transform),-1 * var(--ig-body-2-text-transform)),var(--is-medium, 1)*max(var(--ig-body-2-text-transform),-1 * var(--ig-body-2-text-transform)),var(--is-small, 1)*max(var(--ig-caption-text-transform),-1 * var(--ig-caption-text-transform)));padding-inline:max(var(--is-large, 1)*max(.5rem,-1 * .5rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(.375rem,-1 * .375rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(.25rem,-1 * .25rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));gap:.125rem}.igx-badge:has(igx-icon:only-child){padding-inline:0}.igx-badge__value{white-space:nowrap;text-box:trim-both cap alphabetic}.igx-badge--info{background:var(--ig-info-800)}.igx-badge--success{background:var(--ig-success-900)}.igx-badge--warning{background:var(--ig-warn-500);color:var(--ig-warn-500-contrast)}.igx-badge--warning igx-icon{color:var(--ig-warn-500-contrast)}.igx-badge--error{background:var(--ig-error-700);color:var(--ig-error-900-contrast)}.igx-badge--outlined{box-shadow:0 0 0 .125rem var(--border-color)}.igx-badge--square{border-radius:var(--border-radius)}.igx-badge--dot{--_dot-size: var(--dot-size);min-width:var(--_dot-size);min-height:var(--_dot-size);padding:0}.igx-badge--dot igx-icon,.igx-badge--dot>*{display:none}.igx-badge--hidden{visibility:hidden}}@layer ig.bootstrap{@container style(--ig-theme: bootstrap){.igx-badge--success{background:var(--ig-success-500)}.igx-badge--info{background:var(--ig-info-500)}.igx-badge--error{background:var(--ig-error-500);color:var(--ig-error-100-contrast)}}}@layer ig.indigo{@container style(--ig-theme: indigo){.igx-badge{--ig-icon-size: max(var(--is-large, 1) * max(.75rem, -1 * .75rem), var(--is-medium, 1) * max(.625rem, -1 * .625rem), var(--is-small, 1) * max(.5rem, -1 * .5rem));padding-inline:max(var(--is-large, 1)*max(.375rem,-1 * .375rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(.375rem,-1 * .375rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(.25rem,-1 * .25rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))))}.igx-badge:has(igx-icon:only-child){padding-inline:0}.igx-badge--dot{padding-inline:0}.igx-badge{font-family:var(--ig-button-font-family, var(--ig-font-family));font-size:var(--ig-button-font-size);font-weight:var(--ig-button-font-weight);font-style:var(--ig-button-font-style);line-height:var(--ig-button-line-height);letter-spacing:var(--ig-button-letter-spacing);text-transform:var(--ig-button-text-transform);margin-top:var(--ig-button-margin-top);margin-bottom:var(--ig-button-margin-bottom);font-size:max(var(--is-large, 1)*max(var(--ig-button-font-size),-1 * var(--ig-button-font-size)),var(--is-medium, 1)*max(.625rem,-1 * .625rem),var(--is-small, 1)*max(.5625rem,-1 * .5625rem));line-height:max(var(--is-large, 1)*max(var(--ig-button-line-height),-1 * var(--ig-button-line-height)),var(--is-medium, 1)*max(.875rem,-1 * .875rem),var(--is-small, 1)*max(.75rem,-1 * .75rem))}.igx-badge--success{background:var(--ig-success-700)}.igx-badge--info{background:var(--ig-info-500)}.igx-badge--error{background:var(--ig-error-500)}.igx-badge--warning{color:var(--ig-gray-900)}.igx-badge--warning igx-icon{color:var(--ig-gray-900)}}}@layer ig.fluent{@container style(--ig-theme: fluent){.igx-badge--success{background:var(--ig-success-500)}.igx-badge--info{background:var(--ig-info-700)}.igx-badge--error{background:var(--ig-error-500)}}}@layer ig.indigo{@container style(--ig-theme: indigo) and style(--ig-theme-variant: dark){.igx-badge--warning{color:var(--ig-gray-50)}.igx-badge--warning igx-icon{color:var(--ig-gray-50)}}}\n"] }]
|
|
188
188
|
}], propDecorators: { id: [{
|
|
@@ -246,11 +246,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.1", ngImpor
|
|
|
246
246
|
* IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components
|
|
247
247
|
*/
|
|
248
248
|
class IgxBadgeModule {
|
|
249
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.
|
|
250
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.
|
|
251
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.
|
|
249
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxBadgeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
250
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.7", ngImport: i0, type: IgxBadgeModule, imports: [IgxBadgeComponent], exports: [IgxBadgeComponent] }); }
|
|
251
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxBadgeModule, imports: [IgxBadgeComponent] }); }
|
|
252
252
|
}
|
|
253
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.
|
|
253
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: IgxBadgeModule, decorators: [{
|
|
254
254
|
type: NgModule,
|
|
255
255
|
args: [{
|
|
256
256
|
exports: [IgxBadgeComponent],
|