primeng 16.0.2 → 16.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/accordion.d.ts +35 -11
- package/api/translation.d.ts +23 -0
- package/api/treenode.d.ts +1 -1
- package/avatar/avatar.d.ts +11 -1
- package/breadcrumb/breadcrumb.d.ts +5 -1
- package/button/button.d.ts +3 -0
- package/chip/chip.d.ts +1 -0
- package/contextmenu/contextmenu.d.ts +157 -67
- package/dock/dock.d.ts +47 -2
- package/dom/domhandler.d.ts +1 -0
- package/esm2022/accordion/accordion.mjs +177 -43
- package/esm2022/api/primengconfig.mjs +75 -2
- package/esm2022/api/translation.mjs +1 -1
- package/esm2022/api/treenode.mjs +1 -1
- package/esm2022/autocomplete/autocomplete.mjs +3 -3
- package/esm2022/avatar/avatar.mjs +18 -4
- package/esm2022/blockui/blockui.mjs +19 -3
- package/esm2022/breadcrumb/breadcrumb.mjs +50 -33
- package/esm2022/button/button.mjs +4 -1
- package/esm2022/card/card.mjs +3 -3
- package/esm2022/chip/chip.mjs +18 -13
- package/esm2022/contextmenu/contextmenu.mjs +993 -547
- package/esm2022/divider/divider.mjs +3 -3
- package/esm2022/dock/dock.mjs +284 -86
- package/esm2022/dom/domhandler.mjs +19 -7
- package/esm2022/dynamicdialog/dynamicdialog-ref.mjs +4 -1
- package/esm2022/fieldset/fieldset.mjs +59 -32
- package/esm2022/image/image.mjs +11 -3
- package/esm2022/inplace/inplace.mjs +18 -11
- package/esm2022/megamenu/megamenu.mjs +997 -348
- package/esm2022/menu/menu.mjs +397 -166
- package/esm2022/menubar/menubar.mjs +895 -282
- package/esm2022/orderlist/orderlist.mjs +9 -15
- package/esm2022/panel/panel.mjs +44 -33
- package/esm2022/panelmenu/panelmenu.mjs +982 -344
- package/esm2022/progressbar/progressbar.mjs +19 -15
- package/esm2022/progressspinner/progressspinner.mjs +5 -5
- package/esm2022/ripple/ripple.mjs +3 -1
- package/esm2022/scrollpanel/scrollpanel.mjs +195 -23
- package/esm2022/scrolltop/scrolltop.mjs +11 -2
- package/esm2022/skeleton/skeleton.mjs +3 -3
- package/esm2022/slidemenu/slidemenu.mjs +1059 -372
- package/esm2022/splitbutton/splitbutton.mjs +2 -2
- package/esm2022/splitter/splitter.mjs +160 -29
- package/esm2022/steps/steps.mjs +112 -22
- package/esm2022/table/table.mjs +13 -7
- package/esm2022/tabmenu/tabmenu.mjs +191 -63
- package/esm2022/tabview/tabview.mjs +173 -39
- package/esm2022/terminal/terminal.mjs +3 -3
- package/esm2022/tieredmenu/tieredmenu.mjs +868 -392
- package/esm2022/toolbar/toolbar.mjs +17 -10
- package/esm2022/tooltip/tooltip.mjs +1 -1
- package/esm2022/tree/tree.mjs +3 -3
- package/esm2022/treetable/treetable.mjs +17 -17
- package/esm2022/utils/objectutils.mjs +31 -1
- package/esm2022/utils/uniquecomponentid.mjs +2 -3
- package/fesm2022/primeng-accordion.mjs +176 -42
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-api.mjs +74 -1
- package/fesm2022/primeng-api.mjs.map +1 -1
- package/fesm2022/primeng-autocomplete.mjs +2 -2
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-avatar.mjs +17 -3
- package/fesm2022/primeng-avatar.mjs.map +1 -1
- package/fesm2022/primeng-blockui.mjs +18 -2
- package/fesm2022/primeng-blockui.mjs.map +1 -1
- package/fesm2022/primeng-breadcrumb.mjs +49 -32
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs +3 -0
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs +2 -2
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs +17 -12
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +992 -546
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +2 -2
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dock.mjs +283 -85
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs +18 -6
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +3 -0
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs +57 -30
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-image.mjs +10 -2
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-inplace.mjs +17 -10
- package/fesm2022/primeng-inplace.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +996 -348
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +396 -165
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +894 -281
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +8 -14
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +44 -33
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +981 -344
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +18 -14
- package/fesm2022/primeng-progressbar.mjs.map +1 -1
- package/fesm2022/primeng-progressspinner.mjs +4 -4
- package/fesm2022/primeng-progressspinner.mjs.map +1 -1
- package/fesm2022/primeng-ripple.mjs +2 -0
- package/fesm2022/primeng-ripple.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +194 -22
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs +10 -1
- package/fesm2022/primeng-scrolltop.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs +2 -2
- package/fesm2022/primeng-skeleton.mjs.map +1 -1
- package/fesm2022/primeng-slidemenu.mjs +1058 -371
- package/fesm2022/primeng-slidemenu.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +1 -1
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs +160 -29
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs +111 -21
- package/fesm2022/primeng-steps.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +12 -6
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabmenu.mjs +190 -62
- package/fesm2022/primeng-tabmenu.mjs.map +1 -1
- package/fesm2022/primeng-tabview.mjs +172 -38
- package/fesm2022/primeng-tabview.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +2 -2
- package/fesm2022/primeng-terminal.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +867 -391
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-toolbar.mjs +16 -9
- package/fesm2022/primeng-toolbar.mjs.map +1 -1
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +2 -2
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +16 -16
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-utils.mjs +31 -2
- package/fesm2022/primeng-utils.mjs.map +1 -1
- package/fieldset/fieldset.d.ts +6 -5
- package/image/image.d.ts +1 -0
- package/inplace/inplace.d.ts +6 -1
- package/megamenu/megamenu.d.ts +137 -15
- package/menu/menu.d.ts +64 -7
- package/menubar/menubar.d.ts +116 -22
- package/orderlist/orderlist.d.ts +2 -1
- package/package.json +124 -124
- package/panel/panel.d.ts +6 -5
- package/panelmenu/panelmenu.d.ts +134 -22
- package/resources/components/autocomplete/autocomplete.css +9 -8
- package/resources/components/breadcrumb/breadcrumb.css +9 -3
- package/resources/components/common/common.css +1 -1
- package/resources/components/contextmenu/contextmenu.css +1 -7
- package/resources/components/dock/dock.css +1 -1
- package/resources/components/megamenu/megamenu.css +9 -10
- package/resources/components/panelmenu/panelmenu.css +4 -2
- package/resources/components/slidemenu/slidemenu.css +40 -41
- package/resources/primeng.css +1 -1
- package/resources/primeng.min.css +1 -1
- package/resources/themes/arya-blue/theme.css +342 -390
- package/resources/themes/arya-green/theme.css +342 -390
- package/resources/themes/arya-orange/theme.css +342 -390
- package/resources/themes/arya-purple/theme.css +342 -390
- package/resources/themes/bootstrap4-dark-blue/theme.css +357 -416
- package/resources/themes/bootstrap4-dark-purple/theme.css +357 -416
- package/resources/themes/bootstrap4-light-blue/theme.css +369 -428
- package/resources/themes/bootstrap4-light-purple/theme.css +369 -428
- package/resources/themes/fluent-light/theme.css +352 -400
- package/resources/themes/lara-dark-blue/theme.css +344 -392
- package/resources/themes/lara-dark-indigo/theme.css +344 -392
- package/resources/themes/lara-dark-purple/theme.css +344 -392
- package/resources/themes/lara-dark-teal/theme.css +344 -392
- package/resources/themes/lara-light-blue/theme.css +370 -418
- package/resources/themes/lara-light-indigo/theme.css +370 -418
- package/resources/themes/lara-light-purple/theme.css +370 -418
- package/resources/themes/lara-light-teal/theme.css +370 -418
- package/resources/themes/luna-amber/theme.css +360 -408
- package/resources/themes/luna-blue/theme.css +360 -408
- package/resources/themes/luna-green/theme.css +360 -408
- package/resources/themes/luna-pink/theme.css +360 -408
- package/resources/themes/md-dark-deeppurple/theme.css +373 -403
- package/resources/themes/md-dark-indigo/theme.css +373 -403
- package/resources/themes/md-light-deeppurple/theme.css +373 -403
- package/resources/themes/md-light-indigo/theme.css +373 -403
- package/resources/themes/mdc-dark-deeppurple/theme.css +373 -403
- package/resources/themes/mdc-dark-indigo/theme.css +373 -403
- package/resources/themes/mdc-light-deeppurple/theme.css +373 -403
- package/resources/themes/mdc-light-indigo/theme.css +373 -403
- package/resources/themes/mira/theme.css +347 -395
- package/resources/themes/nano/theme.css +348 -396
- package/resources/themes/nova/theme.css +336 -384
- package/resources/themes/nova-accent/theme.css +336 -384
- package/resources/themes/nova-alt/theme.css +336 -384
- package/resources/themes/rhea/theme.css +336 -384
- package/resources/themes/saga-blue/theme.css +348 -396
- package/resources/themes/saga-green/theme.css +348 -396
- package/resources/themes/saga-orange/theme.css +348 -396
- package/resources/themes/saga-purple/theme.css +348 -396
- package/resources/themes/soho-dark/theme.css +362 -410
- package/resources/themes/soho-light/theme.css +370 -418
- package/resources/themes/tailwind-light/theme.css +361 -409
- package/resources/themes/vela-blue/theme.css +348 -396
- package/resources/themes/vela-green/theme.css +348 -396
- package/resources/themes/vela-orange/theme.css +348 -396
- package/resources/themes/vela-purple/theme.css +348 -396
- package/resources/themes/viva-dark/theme.css +342 -390
- package/resources/themes/viva-light/theme.css +348 -396
- package/scrollpanel/scrollpanel.d.ts +22 -4
- package/scrolltop/scrolltop.d.ts +6 -1
- package/slidemenu/slidemenu.d.ts +192 -88
- package/splitter/splitter.d.ts +18 -5
- package/steps/steps.d.ts +20 -3
- package/table/table.d.ts +3 -1
- package/tabmenu/tabmenu.d.ts +24 -1
- package/tabview/tabview.d.ts +26 -3
- package/tieredmenu/tieredmenu.d.ts +134 -50
- package/toolbar/toolbar.d.ts +6 -1
- package/tooltip/tooltip.d.ts +1 -1
- package/utils/objectutils.d.ts +4 -0
- package/utils/uniquecomponentid.d.ts +1 -1
@@ -1,9 +1,10 @@
|
|
1
1
|
import * as i2 from '@angular/common';
|
2
2
|
import { CommonModule } from '@angular/common';
|
3
3
|
import * as i0 from '@angular/core';
|
4
|
-
import { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, NgModule } from '@angular/core';
|
4
|
+
import { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ViewChild, NgModule } from '@angular/core';
|
5
5
|
import * as i1 from '@angular/router';
|
6
6
|
import { RouterModule } from '@angular/router';
|
7
|
+
import { DomHandler } from 'primeng/dom';
|
7
8
|
import * as i3 from 'primeng/tooltip';
|
8
9
|
import { TooltipModule } from 'primeng/tooltip';
|
9
10
|
|
@@ -40,12 +41,18 @@ class Steps {
|
|
40
41
|
* @group Props
|
41
42
|
*/
|
42
43
|
styleClass;
|
44
|
+
/**
|
45
|
+
* Whether to apply 'router-link-active-exact' class if route exactly matches the item path.
|
46
|
+
* @group Props
|
47
|
+
*/
|
48
|
+
exact = true;
|
43
49
|
/**
|
44
50
|
* Callback to invoke when the new step is selected.
|
45
51
|
* @param {number} number - current index.
|
46
52
|
* @group Emits
|
47
53
|
*/
|
48
54
|
activeIndexChange = new EventEmitter();
|
55
|
+
listViewChild;
|
49
56
|
constructor(router, route, cd) {
|
50
57
|
this.router = router;
|
51
58
|
this.route = route;
|
@@ -55,7 +62,7 @@ class Steps {
|
|
55
62
|
ngOnInit() {
|
56
63
|
this.subscription = this.router.events.subscribe(() => this.cd.markForCheck());
|
57
64
|
}
|
58
|
-
|
65
|
+
onItemClick(event, item, i) {
|
59
66
|
if (this.readonly || item.disabled) {
|
60
67
|
event.preventDefault();
|
61
68
|
return;
|
@@ -72,6 +79,78 @@ class Steps {
|
|
72
79
|
});
|
73
80
|
}
|
74
81
|
}
|
82
|
+
onItemKeydown(event, item, i) {
|
83
|
+
switch (event.code) {
|
84
|
+
case 'ArrowRight': {
|
85
|
+
this.navigateToNextItem(event.target);
|
86
|
+
event.preventDefault();
|
87
|
+
break;
|
88
|
+
}
|
89
|
+
case 'ArrowLeft': {
|
90
|
+
this.navigateToPrevItem(event.target);
|
91
|
+
event.preventDefault();
|
92
|
+
break;
|
93
|
+
}
|
94
|
+
case 'Home': {
|
95
|
+
this.navigateToFirstItem(event.target);
|
96
|
+
event.preventDefault();
|
97
|
+
break;
|
98
|
+
}
|
99
|
+
case 'End': {
|
100
|
+
this.navigateToLastItem(event.target);
|
101
|
+
event.preventDefault();
|
102
|
+
break;
|
103
|
+
}
|
104
|
+
case 'Tab':
|
105
|
+
//no op
|
106
|
+
break;
|
107
|
+
case 'Enter':
|
108
|
+
case 'Space': {
|
109
|
+
this.onItemClick(event, item, i);
|
110
|
+
event.preventDefault();
|
111
|
+
break;
|
112
|
+
}
|
113
|
+
default:
|
114
|
+
break;
|
115
|
+
}
|
116
|
+
}
|
117
|
+
navigateToNextItem(target) {
|
118
|
+
const nextItem = this.findNextItem(target);
|
119
|
+
nextItem && this.setFocusToMenuitem(target, nextItem);
|
120
|
+
}
|
121
|
+
navigateToPrevItem(target) {
|
122
|
+
const prevItem = this.findPrevItem(target);
|
123
|
+
prevItem && this.setFocusToMenuitem(target, prevItem);
|
124
|
+
}
|
125
|
+
navigateToFirstItem(target) {
|
126
|
+
const firstItem = this.findFirstItem();
|
127
|
+
firstItem && this.setFocusToMenuitem(target, firstItem);
|
128
|
+
}
|
129
|
+
navigateToLastItem(target) {
|
130
|
+
const lastItem = this.findLastItem();
|
131
|
+
lastItem && this.setFocusToMenuitem(target, lastItem);
|
132
|
+
}
|
133
|
+
findNextItem(item) {
|
134
|
+
const nextItem = item.parentElement.nextElementSibling;
|
135
|
+
return nextItem ? nextItem.children[0] : null;
|
136
|
+
}
|
137
|
+
findPrevItem(item) {
|
138
|
+
const prevItem = item.parentElement.previousElementSibling;
|
139
|
+
return prevItem ? prevItem.children[0] : null;
|
140
|
+
}
|
141
|
+
findFirstItem() {
|
142
|
+
const firstSibling = DomHandler.findSingle(this.listViewChild.nativeElement, '[data-pc-section="menuitem"]');
|
143
|
+
return firstSibling ? firstSibling.children[0] : null;
|
144
|
+
}
|
145
|
+
findLastItem() {
|
146
|
+
const siblings = DomHandler.find(this.listViewChild.nativeElement, '[data-pc-section="menuitem"]');
|
147
|
+
return siblings ? siblings[siblings.length - 1].children[0] : null;
|
148
|
+
}
|
149
|
+
setFocusToMenuitem(target, focusableItem) {
|
150
|
+
target.tabIndex = '-1';
|
151
|
+
focusableItem.tabIndex = '0';
|
152
|
+
focusableItem.focus();
|
153
|
+
}
|
75
154
|
isClickableRouterLink(item) {
|
76
155
|
return item.routerLink && !this.readonly && !item.disabled;
|
77
156
|
}
|
@@ -88,9 +167,9 @@ class Steps {
|
|
88
167
|
}
|
89
168
|
}
|
90
169
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Steps, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
91
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: Steps, selector: "p-steps", inputs: { activeIndex: "activeIndex", model: "model", readonly: "readonly", style: "style", styleClass: "styleClass" }, outputs: { activeIndexChange: "activeIndexChange" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
|
92
|
-
<
|
93
|
-
<ul role="tablist">
|
170
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: Steps, selector: "p-steps", inputs: { activeIndex: "activeIndex", model: "model", readonly: "readonly", style: "style", styleClass: "styleClass", exact: "exact" }, outputs: { activeIndexChange: "activeIndexChange" }, host: { classAttribute: "p-element" }, viewQueries: [{ propertyName: "listViewChild", first: true, predicate: ["list"], descendants: true }], ngImport: i0, template: `
|
171
|
+
<nav [ngClass]="{ 'p-steps p-component': true, 'p-readonly': readonly }" [ngStyle]="style" [class]="styleClass" [attr.data-pc-name]="'steps'">
|
172
|
+
<ul #list role="tablist" [attr.data-pc-section]="'menu'">
|
94
173
|
<li
|
95
174
|
*ngFor="let item of model; let i = index"
|
96
175
|
class="p-steps-item"
|
@@ -103,6 +182,7 @@ class Steps {
|
|
103
182
|
pTooltip
|
104
183
|
[tooltipOptions]="item.tooltipOptions"
|
105
184
|
[ngClass]="{ 'p-highlight p-steps-current': isActive(item, i), 'p-disabled': item.disabled || (readonly && !isActive(item, i)) }"
|
185
|
+
[attr.data-pc-section]="'menuitem'"
|
106
186
|
>
|
107
187
|
<a
|
108
188
|
*ngIf="isClickableRouterLink(item); else elseBlock"
|
@@ -112,17 +192,18 @@ class Steps {
|
|
112
192
|
[routerLinkActive]="'p-menuitem-link-active'"
|
113
193
|
[routerLinkActiveOptions]="item.routerLinkActiveOptions || { exact: false }"
|
114
194
|
class="p-menuitem-link"
|
115
|
-
(click)="
|
116
|
-
(keydown
|
195
|
+
(click)="onItemClick($event, item, i)"
|
196
|
+
(keydown)="onItemKeydown($event, item, i)"
|
117
197
|
[target]="item.target"
|
118
198
|
[attr.id]="item.id"
|
119
|
-
[attr.tabindex]="item.disabled || readonly ? null : item.tabindex ? item.tabindex : '
|
199
|
+
[attr.tabindex]="item.disabled || readonly ? null : item.tabindex ? item.tabindex : '-1'"
|
120
200
|
[fragment]="item.fragment"
|
121
201
|
[queryParamsHandling]="item.queryParamsHandling"
|
122
202
|
[preserveFragment]="item.preserveFragment"
|
123
203
|
[skipLocationChange]="item.skipLocationChange"
|
124
204
|
[replaceUrl]="item.replaceUrl"
|
125
205
|
[state]="item.state"
|
206
|
+
[ariaCurrentWhenActive]="exact ? 'step' : undefined"
|
126
207
|
>
|
127
208
|
<span class="p-steps-number">{{ i + 1 }}</span>
|
128
209
|
<span class="p-steps-title" *ngIf="item.escape !== false; else htmlLabel">{{ item.label }}</span>
|
@@ -133,11 +214,12 @@ class Steps {
|
|
133
214
|
[attr.href]="item.url"
|
134
215
|
class="p-menuitem-link"
|
135
216
|
role="presentation"
|
136
|
-
(click)="
|
137
|
-
(keydown
|
217
|
+
(click)="onItemClick($event, item, i)"
|
218
|
+
(keydown)="onItemKeydown($event, item, i)"
|
138
219
|
[target]="item.target"
|
139
220
|
[attr.id]="item.id"
|
140
|
-
[attr.tabindex]="item.disabled || (i !== activeIndex && readonly) ? null : item.tabindex ? item.tabindex : '
|
221
|
+
[attr.tabindex]="item.disabled || (i !== activeIndex && readonly) ? null : item.tabindex ? item.tabindex : '-1'"
|
222
|
+
[ariaCurrentWhenActive]="exact ? 'step' : undefined"
|
141
223
|
>
|
142
224
|
<span class="p-steps-number">{{ i + 1 }}</span>
|
143
225
|
<span class="p-steps-title" *ngIf="item.escape !== false; else htmlRouteLabel">{{ item.label }}</span>
|
@@ -146,14 +228,14 @@ class Steps {
|
|
146
228
|
</ng-template>
|
147
229
|
</li>
|
148
230
|
</ul>
|
149
|
-
</
|
231
|
+
</nav>
|
150
232
|
`, isInline: true, styles: [".p-steps{position:relative}.p-steps ul{padding:0;margin:0;list-style-type:none;display:flex}.p-steps-item{position:relative;display:flex;justify-content:center;flex:1 1 auto}.p-steps-item .p-menuitem-link{display:inline-flex;flex-direction:column;align-items:center;overflow:hidden;text-decoration:none}.p-steps.p-steps-readonly .p-steps-item{cursor:auto}.p-steps-item.p-steps-current .p-menuitem-link{cursor:default}.p-steps-title{white-space:nowrap}.p-steps-number{display:flex;align-items:center;justify-content:center}.p-steps-title{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i3.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
151
233
|
}
|
152
234
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Steps, decorators: [{
|
153
235
|
type: Component,
|
154
236
|
args: [{ selector: 'p-steps', template: `
|
155
|
-
<
|
156
|
-
<ul role="tablist">
|
237
|
+
<nav [ngClass]="{ 'p-steps p-component': true, 'p-readonly': readonly }" [ngStyle]="style" [class]="styleClass" [attr.data-pc-name]="'steps'">
|
238
|
+
<ul #list role="tablist" [attr.data-pc-section]="'menu'">
|
157
239
|
<li
|
158
240
|
*ngFor="let item of model; let i = index"
|
159
241
|
class="p-steps-item"
|
@@ -166,6 +248,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
166
248
|
pTooltip
|
167
249
|
[tooltipOptions]="item.tooltipOptions"
|
168
250
|
[ngClass]="{ 'p-highlight p-steps-current': isActive(item, i), 'p-disabled': item.disabled || (readonly && !isActive(item, i)) }"
|
251
|
+
[attr.data-pc-section]="'menuitem'"
|
169
252
|
>
|
170
253
|
<a
|
171
254
|
*ngIf="isClickableRouterLink(item); else elseBlock"
|
@@ -175,17 +258,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
175
258
|
[routerLinkActive]="'p-menuitem-link-active'"
|
176
259
|
[routerLinkActiveOptions]="item.routerLinkActiveOptions || { exact: false }"
|
177
260
|
class="p-menuitem-link"
|
178
|
-
(click)="
|
179
|
-
(keydown
|
261
|
+
(click)="onItemClick($event, item, i)"
|
262
|
+
(keydown)="onItemKeydown($event, item, i)"
|
180
263
|
[target]="item.target"
|
181
264
|
[attr.id]="item.id"
|
182
|
-
[attr.tabindex]="item.disabled || readonly ? null : item.tabindex ? item.tabindex : '
|
265
|
+
[attr.tabindex]="item.disabled || readonly ? null : item.tabindex ? item.tabindex : '-1'"
|
183
266
|
[fragment]="item.fragment"
|
184
267
|
[queryParamsHandling]="item.queryParamsHandling"
|
185
268
|
[preserveFragment]="item.preserveFragment"
|
186
269
|
[skipLocationChange]="item.skipLocationChange"
|
187
270
|
[replaceUrl]="item.replaceUrl"
|
188
271
|
[state]="item.state"
|
272
|
+
[ariaCurrentWhenActive]="exact ? 'step' : undefined"
|
189
273
|
>
|
190
274
|
<span class="p-steps-number">{{ i + 1 }}</span>
|
191
275
|
<span class="p-steps-title" *ngIf="item.escape !== false; else htmlLabel">{{ item.label }}</span>
|
@@ -196,11 +280,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
196
280
|
[attr.href]="item.url"
|
197
281
|
class="p-menuitem-link"
|
198
282
|
role="presentation"
|
199
|
-
(click)="
|
200
|
-
(keydown
|
283
|
+
(click)="onItemClick($event, item, i)"
|
284
|
+
(keydown)="onItemKeydown($event, item, i)"
|
201
285
|
[target]="item.target"
|
202
286
|
[attr.id]="item.id"
|
203
|
-
[attr.tabindex]="item.disabled || (i !== activeIndex && readonly) ? null : item.tabindex ? item.tabindex : '
|
287
|
+
[attr.tabindex]="item.disabled || (i !== activeIndex && readonly) ? null : item.tabindex ? item.tabindex : '-1'"
|
288
|
+
[ariaCurrentWhenActive]="exact ? 'step' : undefined"
|
204
289
|
>
|
205
290
|
<span class="p-steps-number">{{ i + 1 }}</span>
|
206
291
|
<span class="p-steps-title" *ngIf="item.escape !== false; else htmlRouteLabel">{{ item.label }}</span>
|
@@ -209,7 +294,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
209
294
|
</ng-template>
|
210
295
|
</li>
|
211
296
|
</ul>
|
212
|
-
</
|
297
|
+
</nav>
|
213
298
|
`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
214
299
|
class: 'p-element'
|
215
300
|
}, styles: [".p-steps{position:relative}.p-steps ul{padding:0;margin:0;list-style-type:none;display:flex}.p-steps-item{position:relative;display:flex;justify-content:center;flex:1 1 auto}.p-steps-item .p-menuitem-link{display:inline-flex;flex-direction:column;align-items:center;overflow:hidden;text-decoration:none}.p-steps.p-steps-readonly .p-steps-item{cursor:auto}.p-steps-item.p-steps-current .p-menuitem-link{cursor:default}.p-steps-title{white-space:nowrap}.p-steps-number{display:flex;align-items:center;justify-content:center}.p-steps-title{display:block}\n"] }]
|
@@ -223,8 +308,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
223
308
|
type: Input
|
224
309
|
}], styleClass: [{
|
225
310
|
type: Input
|
311
|
+
}], exact: [{
|
312
|
+
type: Input
|
226
313
|
}], activeIndexChange: [{
|
227
314
|
type: Output
|
315
|
+
}], listViewChild: [{
|
316
|
+
type: ViewChild,
|
317
|
+
args: ['list', { static: false }]
|
228
318
|
}] } });
|
229
319
|
class StepsModule {
|
230
320
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: StepsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-steps.mjs","sources":["../../src/app/components/steps/steps.ts","../../src/app/components/steps/primeng-steps.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, NgModule, OnDestroy, OnInit, Output, ViewEncapsulation } from '@angular/core';\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\nimport { MenuItem } from 'primeng/api';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { Subscription } from 'rxjs';\n/**\n * Steps components is an indicator for the steps in a wizard workflow.\n * @group Components\n */\n@Component({\n selector: 'p-steps',\n template: `\n <div [ngClass]=\"{ 'p-steps p-component': true, 'p-readonly': readonly }\" [ngStyle]=\"style\" [class]=\"styleClass\">\n <ul role=\"tablist\">\n <li\n *ngFor=\"let item of model; let i = index\"\n class=\"p-steps-item\"\n #menuitem\n [ngStyle]=\"item.style\"\n [class]=\"item.styleClass\"\n role=\"tab\"\n [attr.aria-selected]=\"i === activeIndex\"\n [attr.aria-expanded]=\"i === activeIndex\"\n pTooltip\n [tooltipOptions]=\"item.tooltipOptions\"\n [ngClass]=\"{ 'p-highlight p-steps-current': isActive(item, i), 'p-disabled': item.disabled || (readonly && !isActive(item, i)) }\"\n >\n <a\n *ngIf=\"isClickableRouterLink(item); else elseBlock\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.queryParams\"\n role=\"presentation\"\n [routerLinkActive]=\"'p-menuitem-link-active'\"\n [routerLinkActiveOptions]=\"item.routerLinkActiveOptions || { exact: false }\"\n class=\"p-menuitem-link\"\n (click)=\"itemClick($event, item, i)\"\n (keydown.enter)=\"itemClick($event, item, i)\"\n [target]=\"item.target\"\n [attr.id]=\"item.id\"\n [attr.tabindex]=\"item.disabled || readonly ? null : item.tabindex ? item.tabindex : '0'\"\n [fragment]=\"item.fragment\"\n [queryParamsHandling]=\"item.queryParamsHandling\"\n [preserveFragment]=\"item.preserveFragment\"\n [skipLocationChange]=\"item.skipLocationChange\"\n [replaceUrl]=\"item.replaceUrl\"\n [state]=\"item.state\"\n >\n <span class=\"p-steps-number\">{{ i + 1 }}</span>\n <span class=\"p-steps-title\" *ngIf=\"item.escape !== false; else htmlLabel\">{{ item.label }}</span>\n <ng-template #htmlLabel><span class=\"p-steps-title\" [innerHTML]=\"item.label\"></span></ng-template>\n </a>\n <ng-template #elseBlock>\n <a\n [attr.href]=\"item.url\"\n class=\"p-menuitem-link\"\n role=\"presentation\"\n (click)=\"itemClick($event, item, i)\"\n (keydown.enter)=\"itemClick($event, item, i)\"\n [target]=\"item.target\"\n [attr.id]=\"item.id\"\n [attr.tabindex]=\"item.disabled || (i !== activeIndex && readonly) ? null : item.tabindex ? item.tabindex : '0'\"\n >\n <span class=\"p-steps-number\">{{ i + 1 }}</span>\n <span class=\"p-steps-title\" *ngIf=\"item.escape !== false; else htmlRouteLabel\">{{ item.label }}</span>\n <ng-template #htmlRouteLabel><span class=\"p-steps-title\" [innerHTML]=\"item.label\"></span></ng-template>\n </a>\n </ng-template>\n </li>\n </ul>\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./steps.css'],\n host: {\n class: 'p-element'\n }\n})\nexport class Steps implements OnInit, OnDestroy {\n /**\n * Index of the active item.\n * @group Props\n */\n @Input() activeIndex: number = 0;\n /**\n * An array of menu items.\n * @group Props\n */\n @Input() model: MenuItem[] | undefined;\n /**\n * Whether the items are clickable or not.\n * @group Props\n */\n @Input() readonly: boolean = true;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Callback to invoke when the new step is selected.\n * @param {number} number - current index.\n * @group Emits\n */\n @Output() activeIndexChange: EventEmitter<number> = new EventEmitter<number>();\n\n constructor(private router: Router, private route: ActivatedRoute, private cd: ChangeDetectorRef) {}\n\n subscription: Subscription | undefined;\n\n ngOnInit() {\n this.subscription = this.router.events.subscribe(() => this.cd.markForCheck());\n }\n\n itemClick(event: Event, item: MenuItem, i: number) {\n if (this.readonly || item.disabled) {\n event.preventDefault();\n return;\n }\n\n this.activeIndexChange.emit(i);\n\n if (!item.url && !item.routerLink) {\n event.preventDefault();\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item,\n index: i\n });\n }\n }\n\n isClickableRouterLink(item: MenuItem) {\n return item.routerLink && !this.readonly && !item.disabled;\n }\n\n isActive(item: MenuItem, index: number) {\n if (item.routerLink) {\n let routerLink = Array.isArray(item.routerLink) ? item.routerLink : [item.routerLink];\n\n return this.router.isActive(this.router.createUrlTree(routerLink, { relativeTo: this.route }).toString(), false);\n }\n\n return index === this.activeIndex;\n }\n\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\n\n@NgModule({\n imports: [CommonModule, RouterModule, TooltipModule],\n exports: [Steps, RouterModule, TooltipModule],\n declarations: [Steps]\n})\nexport class StepsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-steps.mjs","sources":["../../src/app/components/steps/steps.ts","../../src/app/components/steps/primeng-steps.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, NgModule, OnDestroy, OnInit, Output, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\nimport { DomHandler } from 'primeng/dom';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { MenuItem } from 'primeng/api';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { Subscription } from 'rxjs';\n/**\n * Steps components is an indicator for the steps in a wizard workflow.\n * @group Components\n */\n@Component({\n selector: 'p-steps',\n template: `\n <nav [ngClass]=\"{ 'p-steps p-component': true, 'p-readonly': readonly }\" [ngStyle]=\"style\" [class]=\"styleClass\" [attr.data-pc-name]=\"'steps'\">\n <ul #list role=\"tablist\" [attr.data-pc-section]=\"'menu'\">\n <li\n *ngFor=\"let item of model; let i = index\"\n class=\"p-steps-item\"\n #menuitem\n [ngStyle]=\"item.style\"\n [class]=\"item.styleClass\"\n role=\"tab\"\n [attr.aria-selected]=\"i === activeIndex\"\n [attr.aria-expanded]=\"i === activeIndex\"\n pTooltip\n [tooltipOptions]=\"item.tooltipOptions\"\n [ngClass]=\"{ 'p-highlight p-steps-current': isActive(item, i), 'p-disabled': item.disabled || (readonly && !isActive(item, i)) }\"\n [attr.data-pc-section]=\"'menuitem'\"\n >\n <a\n *ngIf=\"isClickableRouterLink(item); else elseBlock\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.queryParams\"\n role=\"presentation\"\n [routerLinkActive]=\"'p-menuitem-link-active'\"\n [routerLinkActiveOptions]=\"item.routerLinkActiveOptions || { exact: false }\"\n class=\"p-menuitem-link\"\n (click)=\"onItemClick($event, item, i)\"\n (keydown)=\"onItemKeydown($event, item, i)\"\n [target]=\"item.target\"\n [attr.id]=\"item.id\"\n [attr.tabindex]=\"item.disabled || readonly ? null : item.tabindex ? item.tabindex : '-1'\"\n [fragment]=\"item.fragment\"\n [queryParamsHandling]=\"item.queryParamsHandling\"\n [preserveFragment]=\"item.preserveFragment\"\n [skipLocationChange]=\"item.skipLocationChange\"\n [replaceUrl]=\"item.replaceUrl\"\n [state]=\"item.state\"\n [ariaCurrentWhenActive]=\"exact ? 'step' : undefined\"\n >\n <span class=\"p-steps-number\">{{ i + 1 }}</span>\n <span class=\"p-steps-title\" *ngIf=\"item.escape !== false; else htmlLabel\">{{ item.label }}</span>\n <ng-template #htmlLabel><span class=\"p-steps-title\" [innerHTML]=\"item.label\"></span></ng-template>\n </a>\n <ng-template #elseBlock>\n <a\n [attr.href]=\"item.url\"\n class=\"p-menuitem-link\"\n role=\"presentation\"\n (click)=\"onItemClick($event, item, i)\"\n (keydown)=\"onItemKeydown($event, item, i)\"\n [target]=\"item.target\"\n [attr.id]=\"item.id\"\n [attr.tabindex]=\"item.disabled || (i !== activeIndex && readonly) ? null : item.tabindex ? item.tabindex : '-1'\"\n [ariaCurrentWhenActive]=\"exact ? 'step' : undefined\"\n >\n <span class=\"p-steps-number\">{{ i + 1 }}</span>\n <span class=\"p-steps-title\" *ngIf=\"item.escape !== false; else htmlRouteLabel\">{{ item.label }}</span>\n <ng-template #htmlRouteLabel><span class=\"p-steps-title\" [innerHTML]=\"item.label\"></span></ng-template>\n </a>\n </ng-template>\n </li>\n </ul>\n </nav>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./steps.css'],\n host: {\n class: 'p-element'\n }\n})\nexport class Steps implements OnInit, OnDestroy {\n /**\n * Index of the active item.\n * @group Props\n */\n @Input() activeIndex: number = 0;\n /**\n * An array of menu items.\n * @group Props\n */\n @Input() model: MenuItem[] | undefined;\n /**\n * Whether the items are clickable or not.\n * @group Props\n */\n @Input() readonly: boolean = true;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Whether to apply 'router-link-active-exact' class if route exactly matches the item path.\n * @group Props\n */\n @Input() exact: boolean = true;\n /**\n * Callback to invoke when the new step is selected.\n * @param {number} number - current index.\n * @group Emits\n */\n @Output() activeIndexChange: EventEmitter<number> = new EventEmitter<number>();\n\n @ViewChild('list', { static: false }) listViewChild: Nullable<ElementRef>;\n\n constructor(private router: Router, private route: ActivatedRoute, private cd: ChangeDetectorRef) {}\n\n subscription: Subscription | undefined;\n\n ngOnInit() {\n this.subscription = this.router.events.subscribe(() => this.cd.markForCheck());\n }\n\n onItemClick(event: Event, item: MenuItem, i: number) {\n if (this.readonly || item.disabled) {\n event.preventDefault();\n return;\n }\n\n this.activeIndexChange.emit(i);\n\n if (!item.url && !item.routerLink) {\n event.preventDefault();\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item,\n index: i\n });\n }\n }\n\n onItemKeydown(event: KeyboardEvent, item: MenuItem, i: number) {\n switch (event.code) {\n case 'ArrowRight': {\n this.navigateToNextItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.navigateToPrevItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.navigateToFirstItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.navigateToLastItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Tab':\n //no op\n break;\n\n case 'Enter':\n\n case 'Space': {\n this.onItemClick(event, item, i);\n event.preventDefault();\n break;\n }\n\n default:\n break;\n }\n }\n\n navigateToNextItem(target) {\n const nextItem = this.findNextItem(target);\n\n nextItem && this.setFocusToMenuitem(target, nextItem);\n }\n navigateToPrevItem(target) {\n const prevItem = this.findPrevItem(target);\n\n prevItem && this.setFocusToMenuitem(target, prevItem);\n }\n navigateToFirstItem(target) {\n const firstItem = this.findFirstItem();\n\n firstItem && this.setFocusToMenuitem(target, firstItem);\n }\n navigateToLastItem(target) {\n const lastItem = this.findLastItem();\n\n lastItem && this.setFocusToMenuitem(target, lastItem);\n }\n findNextItem(item) {\n const nextItem = item.parentElement.nextElementSibling;\n\n return nextItem ? nextItem.children[0] : null;\n }\n findPrevItem(item) {\n const prevItem = item.parentElement.previousElementSibling;\n\n return prevItem ? prevItem.children[0] : null;\n }\n findFirstItem() {\n const firstSibling = DomHandler.findSingle(this.listViewChild.nativeElement, '[data-pc-section=\"menuitem\"]');\n\n return firstSibling ? firstSibling.children[0] : null;\n }\n findLastItem() {\n const siblings = DomHandler.find(this.listViewChild.nativeElement, '[data-pc-section=\"menuitem\"]');\n\n return siblings ? siblings[siblings.length - 1].children[0] : null;\n }\n setFocusToMenuitem(target, focusableItem) {\n target.tabIndex = '-1';\n focusableItem.tabIndex = '0';\n focusableItem.focus();\n }\n\n isClickableRouterLink(item: MenuItem) {\n return item.routerLink && !this.readonly && !item.disabled;\n }\n\n isActive(item: MenuItem, index: number) {\n if (item.routerLink) {\n let routerLink = Array.isArray(item.routerLink) ? item.routerLink : [item.routerLink];\n\n return this.router.isActive(this.router.createUrlTree(routerLink, { relativeTo: this.route }).toString(), false);\n }\n\n return index === this.activeIndex;\n }\n\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\n\n@NgModule({\n imports: [CommonModule, RouterModule, TooltipModule],\n exports: [Steps, RouterModule, TooltipModule],\n declarations: [Steps]\n})\nexport class StepsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
@@ -360,7 +360,7 @@ class Table {
|
|
360
360
|
}
|
361
361
|
set responsive(val) {
|
362
362
|
this._responsive = val;
|
363
|
-
console.warn('responsive
|
363
|
+
console.warn('responsive property is deprecated as table is always responsive with scrollable behavior.');
|
364
364
|
}
|
365
365
|
_responsive;
|
366
366
|
/**
|
@@ -444,7 +444,7 @@ class Table {
|
|
444
444
|
*/
|
445
445
|
editMode = 'cell';
|
446
446
|
/**
|
447
|
-
*
|
447
|
+
* Field name to use in row grouping.
|
448
448
|
* @group Props
|
449
449
|
*/
|
450
450
|
groupRowsBy;
|
@@ -1020,6 +1020,7 @@ class Table {
|
|
1020
1020
|
get processedData() {
|
1021
1021
|
return this.filteredValue || this.value || [];
|
1022
1022
|
}
|
1023
|
+
_initialColWidths;
|
1023
1024
|
dataToRender(data) {
|
1024
1025
|
const _data = data || this.processedData;
|
1025
1026
|
if (_data && this.paginator) {
|
@@ -2002,6 +2003,7 @@ class Table {
|
|
2002
2003
|
}
|
2003
2004
|
}
|
2004
2005
|
else if (this.columnResizeMode === 'expand') {
|
2006
|
+
this._initialColWidths = this._totalTableWidth();
|
2005
2007
|
let tableWidth = this.tableViewChild?.nativeElement.offsetWidth + delta;
|
2006
2008
|
this.setResizeTableWidth(tableWidth + 'px');
|
2007
2009
|
this.resizeTableCells(newColumnWidth, null);
|
@@ -2017,16 +2019,20 @@ class Table {
|
|
2017
2019
|
this.resizeHelperViewChild.nativeElement.style.display = 'none';
|
2018
2020
|
DomHandler.removeClass(this.containerViewChild?.nativeElement, 'p-unselectable-text');
|
2019
2021
|
}
|
2020
|
-
|
2021
|
-
let colIndex = DomHandler.index(this.resizeColumnElement);
|
2022
|
+
_totalTableWidth() {
|
2022
2023
|
let widths = [];
|
2023
|
-
const tableHead = DomHandler.findSingle(this.containerViewChild
|
2024
|
+
const tableHead = DomHandler.findSingle(this.containerViewChild.nativeElement, '.p-datatable-thead');
|
2024
2025
|
let headers = DomHandler.find(tableHead, 'tr > th');
|
2025
2026
|
headers.forEach((header) => widths.push(DomHandler.getOuterWidth(header)));
|
2027
|
+
return widths;
|
2028
|
+
}
|
2029
|
+
resizeTableCells(newColumnWidth, nextColumnWidth) {
|
2030
|
+
let colIndex = DomHandler.index(this.resizeColumnElement);
|
2031
|
+
let width = this.columnResizeMode === 'expand' ? this._initialColWidths : this._totalTableWidth();
|
2026
2032
|
this.destroyStyleElement();
|
2027
2033
|
this.createStyleElement();
|
2028
2034
|
let innerHTML = '';
|
2029
|
-
|
2035
|
+
width.forEach((width, index) => {
|
2030
2036
|
let colWidth = index === colIndex ? newColumnWidth : nextColumnWidth && index === colIndex + 1 ? nextColumnWidth : width;
|
2031
2037
|
let style = `width: ${colWidth}px !important; max-width: ${colWidth}px !important;`;
|
2032
2038
|
innerHTML += `
|