primeng 20.1.1 → 20.2.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/index.d.ts +2 -2
- package/animateonscroll/index.d.ts +2 -2
- package/api/index.d.ts +4 -3
- package/autocomplete/index.d.ts +59 -13
- package/avatargroup/index.d.ts +2 -2
- package/badge/index.d.ts +5 -5
- package/base/index.d.ts +6 -6
- package/basecomponent/index.d.ts +1 -1
- package/baseeditableholder/index.d.ts +4 -4
- package/baseinput/index.d.ts +12 -12
- package/breadcrumb/index.d.ts +1 -2
- package/button/index.d.ts +10 -10
- package/card/index.d.ts +1 -1
- package/carousel/index.d.ts +6 -6
- package/cascadeselect/index.d.ts +9 -9
- package/checkbox/index.d.ts +3 -3
- package/chip/index.d.ts +14 -4
- package/classnames/index.d.ts +38 -0
- package/config/index.d.ts +2 -2
- package/confirmdialog/index.d.ts +3 -3
- package/contextmenu/index.d.ts +4 -4
- package/dataview/index.d.ts +1 -1
- package/datepicker/index.d.ts +1 -1
- package/dialog/index.d.ts +4 -3
- package/divider/index.d.ts +2 -2
- package/dock/index.d.ts +2 -2
- package/dom/index.d.ts +4 -4
- package/dynamicdialog/index.d.ts +14 -14
- package/editor/index.d.ts +92 -13
- package/fesm2022/primeng-accordion.mjs +33 -21
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-animateonscroll.mjs +8 -8
- package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
- package/fesm2022/primeng-api.mjs +31 -31
- package/fesm2022/primeng-autocomplete.mjs +180 -50
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-autofocus.mjs +7 -7
- package/fesm2022/primeng-avatar.mjs +10 -10
- package/fesm2022/primeng-avatargroup.mjs +10 -10
- package/fesm2022/primeng-badge.mjs +15 -15
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-base.mjs +3 -3
- package/fesm2022/primeng-base.mjs.map +1 -1
- package/fesm2022/primeng-basecomponent.mjs +6 -6
- package/fesm2022/primeng-basecomponent.mjs.map +1 -1
- package/fesm2022/primeng-baseeditableholder.mjs +3 -3
- package/fesm2022/primeng-baseinput.mjs +3 -3
- package/fesm2022/primeng-baseinput.mjs.map +1 -1
- package/fesm2022/primeng-basemodelholder.mjs +3 -3
- package/fesm2022/primeng-blockui.mjs +10 -10
- package/fesm2022/primeng-breadcrumb.mjs +21 -21
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs +24 -23
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs +10 -10
- package/fesm2022/primeng-card.mjs +10 -10
- package/fesm2022/primeng-carousel.mjs +23 -23
- package/fesm2022/primeng-carousel.mjs.map +1 -1
- package/fesm2022/primeng-cascadeselect.mjs +31 -25
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-chart.mjs +10 -10
- package/fesm2022/primeng-checkbox.mjs +15 -14
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs +48 -17
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-classnames.mjs +73 -0
- package/fesm2022/primeng-classnames.mjs.map +1 -0
- package/fesm2022/primeng-colorpicker.mjs +11 -11
- package/fesm2022/primeng-colorpicker.mjs.map +1 -1
- package/fesm2022/primeng-config.mjs +8 -7
- package/fesm2022/primeng-config.mjs.map +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +16 -10
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs +24 -22
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +24 -22
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +11 -11
- package/fesm2022/primeng-dataview.mjs.map +1 -1
- package/fesm2022/primeng-datepicker.mjs +23 -23
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-dialog.mjs +35 -16
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +10 -10
- package/fesm2022/primeng-dock.mjs +27 -25
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs +13 -10
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dragdrop.mjs +10 -10
- package/fesm2022/primeng-drawer.mjs +28 -19
- package/fesm2022/primeng-drawer.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +48 -39
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +69 -11
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs +12 -11
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +15 -15
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs +10 -10
- package/fesm2022/primeng-fluid.mjs +10 -12
- package/fesm2022/primeng-fluid.mjs.map +1 -1
- package/fesm2022/primeng-focustrap.mjs +7 -7
- package/fesm2022/primeng-focustrap.mjs.map +1 -1
- package/fesm2022/primeng-galleria.mjs +42 -38
- package/fesm2022/primeng-galleria.mjs.map +1 -1
- package/fesm2022/primeng-iconfield.mjs +10 -10
- package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
- package/fesm2022/primeng-icons-angledown.mjs +3 -3
- package/fesm2022/primeng-icons-angleleft.mjs +3 -3
- package/fesm2022/primeng-icons-angleright.mjs +3 -3
- package/fesm2022/primeng-icons-angleup.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
- package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
- package/fesm2022/primeng-icons-arrowright.mjs +3 -3
- package/fesm2022/primeng-icons-arrowup.mjs +3 -3
- package/fesm2022/primeng-icons-ban.mjs +3 -3
- package/fesm2022/primeng-icons-bars.mjs +3 -3
- package/fesm2022/primeng-icons-baseicon.mjs +6 -6
- package/fesm2022/primeng-icons-blank.mjs +3 -3
- package/fesm2022/primeng-icons-calendar.mjs +3 -3
- package/fesm2022/primeng-icons-caretleft.mjs +3 -3
- package/fesm2022/primeng-icons-caretright.mjs +3 -3
- package/fesm2022/primeng-icons-check.mjs +3 -3
- package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
- package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
- package/fesm2022/primeng-icons-chevronright.mjs +3 -3
- package/fesm2022/primeng-icons-chevronup.mjs +3 -3
- package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
- package/fesm2022/primeng-icons-eye.mjs +3 -3
- package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
- package/fesm2022/primeng-icons-filter.mjs +3 -3
- package/fesm2022/primeng-icons-filterfill.mjs +3 -3
- package/fesm2022/primeng-icons-filterslash.mjs +3 -3
- package/fesm2022/primeng-icons-home.mjs +3 -3
- package/fesm2022/primeng-icons-infocircle.mjs +3 -3
- package/fesm2022/primeng-icons-minus.mjs +3 -3
- package/fesm2022/primeng-icons-pencil.mjs +3 -3
- package/fesm2022/primeng-icons-plus.mjs +3 -3
- package/fesm2022/primeng-icons-refresh.mjs +3 -3
- package/fesm2022/primeng-icons-search.mjs +3 -3
- package/fesm2022/primeng-icons-searchminus.mjs +3 -3
- package/fesm2022/primeng-icons-searchplus.mjs +3 -3
- package/fesm2022/primeng-icons-sortalt.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
- package/fesm2022/primeng-icons-spinner.mjs +3 -3
- package/fesm2022/primeng-icons-star.mjs +3 -3
- package/fesm2022/primeng-icons-starfill.mjs +3 -3
- package/fesm2022/primeng-icons-thlarge.mjs +3 -3
- package/fesm2022/primeng-icons-times.mjs +3 -3
- package/fesm2022/primeng-icons-timescircle.mjs +3 -3
- package/fesm2022/primeng-icons-trash.mjs +3 -3
- package/fesm2022/primeng-icons-undo.mjs +3 -3
- package/fesm2022/primeng-icons-upload.mjs +3 -3
- package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
- package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
- package/fesm2022/primeng-iftalabel.mjs +10 -10
- package/fesm2022/primeng-image.mjs +19 -16
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-imagecompare.mjs +10 -10
- package/fesm2022/primeng-inplace.mjs +16 -16
- package/fesm2022/primeng-inputgroup.mjs +10 -10
- package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
- package/fesm2022/primeng-inputicon.mjs +10 -10
- package/fesm2022/primeng-inputmask.mjs +22 -13
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +52 -31
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs +11 -11
- package/fesm2022/primeng-inputotp.mjs.map +1 -1
- package/fesm2022/primeng-inputtext.mjs +10 -10
- package/fesm2022/primeng-inputtext.mjs.map +1 -1
- package/fesm2022/primeng-keyfilter.mjs +19 -10
- package/fesm2022/primeng-keyfilter.mjs.map +1 -1
- package/fesm2022/primeng-knob.mjs +10 -10
- package/fesm2022/primeng-listbox.mjs +124 -43
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +22 -20
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +35 -44
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +28 -27
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs +33 -30
- package/fesm2022/primeng-message.mjs.map +1 -1
- package/fesm2022/primeng-metergroup.mjs +27 -18
- package/fesm2022/primeng-metergroup.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +58 -48
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +149 -43
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs +13 -13
- package/fesm2022/primeng-overlay.mjs +15 -11
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaybadge.mjs +10 -10
- package/fesm2022/primeng-paginator.mjs +11 -11
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +11 -11
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +27 -26
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-password.mjs +25 -21
- package/fesm2022/primeng-password.mjs.map +1 -1
- package/fesm2022/primeng-picklist.mjs +129 -48
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs +11 -11
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +10 -10
- package/fesm2022/primeng-progressspinner.mjs +10 -10
- package/fesm2022/primeng-radiobutton.mjs +15 -15
- package/fesm2022/primeng-radiobutton.mjs.map +1 -1
- package/fesm2022/primeng-rating.mjs +11 -11
- package/fesm2022/primeng-rating.mjs.map +1 -1
- package/fesm2022/primeng-ripple.mjs +10 -10
- package/fesm2022/primeng-scroller.mjs +48 -24
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +19 -19
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs +10 -10
- package/fesm2022/primeng-select.mjs +56 -38
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs +12 -12
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs +10 -10
- package/fesm2022/primeng-slider.mjs +14 -14
- package/fesm2022/primeng-slider.mjs.map +1 -1
- package/fesm2022/primeng-speeddial.mjs +32 -24
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +15 -15
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs +21 -21
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs +43 -43
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs +15 -15
- package/fesm2022/primeng-steps.mjs.map +1 -1
- package/fesm2022/primeng-styleclass.mjs +8 -8
- package/fesm2022/primeng-styleclass.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +178 -158
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabs.mjs +99 -55
- package/fesm2022/primeng-tabs.mjs.map +1 -1
- package/fesm2022/primeng-tag.mjs +10 -10
- package/fesm2022/primeng-tag.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +13 -13
- package/fesm2022/primeng-textarea.mjs +11 -11
- package/fesm2022/primeng-textarea.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +26 -25
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-timeline.mjs +10 -10
- package/fesm2022/primeng-toast.mjs +14 -13
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs +20 -13
- package/fesm2022/primeng-togglebutton.mjs.map +1 -1
- package/fesm2022/primeng-toggleswitch.mjs +10 -10
- package/fesm2022/primeng-toolbar.mjs +10 -10
- package/fesm2022/primeng-tooltip.mjs +16 -15
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +170 -221
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +17 -17
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +84 -77
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-usestyle.mjs +20 -18
- package/fesm2022/primeng-usestyle.mjs.map +1 -1
- package/fesm2022/primeng-utils.mjs.map +1 -1
- package/fieldset/index.d.ts +3 -2
- package/fileupload/index.d.ts +6 -6
- package/fluid/index.d.ts +0 -2
- package/galleria/index.d.ts +10 -10
- package/icons/baseicon/index.d.ts +1 -1
- package/image/index.d.ts +7 -7
- package/inputnumber/index.d.ts +7 -7
- package/inputotp/index.d.ts +3 -3
- package/inputtext/index.d.ts +6 -6
- package/keyfilter/index.d.ts +2 -2
- package/listbox/index.d.ts +31 -19
- package/megamenu/index.d.ts +1 -1
- package/menu/index.d.ts +1 -2
- package/message/index.d.ts +3 -2
- package/metergroup/index.d.ts +6 -6
- package/multiselect/index.d.ts +18 -17
- package/orderlist/index.d.ts +13 -7
- package/organizationchart/index.d.ts +2 -2
- package/overlay/index.d.ts +5 -5
- package/package.json +224 -220
- package/paginator/index.d.ts +1 -1
- package/panel/index.d.ts +2 -2
- package/panelmenu/index.d.ts +8 -8
- package/password/index.d.ts +6 -6
- package/picklist/index.d.ts +17 -12
- package/radiobutton/index.d.ts +3 -3
- package/rating/index.d.ts +1 -1
- package/scroller/index.d.ts +7 -3
- package/select/index.d.ts +11 -11
- package/selectbutton/index.d.ts +3 -3
- package/slider/index.d.ts +2 -2
- package/speeddial/index.d.ts +9 -9
- package/splitter/index.d.ts +3 -3
- package/stepper/index.d.ts +4 -4
- package/steps/index.d.ts +3 -3
- package/table/index.d.ts +39 -31
- package/tabs/index.d.ts +23 -8
- package/tag/index.d.ts +1 -1
- package/textarea/index.d.ts +6 -6
- package/tieredmenu/index.d.ts +1 -1
- package/toast/index.d.ts +5 -5
- package/togglebutton/index.d.ts +4 -3
- package/toggleswitch/index.d.ts +1 -1
- package/tooltip/index.d.ts +11 -11
- package/tree/index.d.ts +31 -46
- package/treeselect/index.d.ts +6 -6
- package/treetable/index.d.ts +10 -10
- package/usestyle/index.d.ts +2 -2
- package/utils/index.d.ts +2 -2
@@ -1,7 +1,7 @@
|
|
1
1
|
import * as i1 from '@angular/common';
|
2
|
-
import { isPlatformBrowser, CommonModule } from '@angular/common';
|
2
|
+
import { isPlatformBrowser, CommonModule, NgTemplateOutlet } from '@angular/common';
|
3
3
|
import * as i0 from '@angular/core';
|
4
|
-
import { Injectable, inject, forwardRef, signal, computed, effect, ViewChild, ContentChildren, ContentChild, ViewEncapsulation, ChangeDetectionStrategy, Component, model, input, booleanAttribute, ElementRef, HostListener, numberAttribute, NgModule } from '@angular/core';
|
4
|
+
import { Injectable, inject, forwardRef, signal, computed, effect, ViewChild, ContentChildren, ContentChild, ViewEncapsulation, ChangeDetectionStrategy, Component, model, input, booleanAttribute, ElementRef, HostListener, contentChild, numberAttribute, NgModule } from '@angular/core';
|
5
5
|
import { getWidth, isRTL, findSingle, getOuterWidth, getOffset, equals, getAttribute, focus, uuid } from '@primeuix/utils';
|
6
6
|
import { BaseComponent } from 'primeng/basecomponent';
|
7
7
|
import { style } from '@primeuix/styles/tabs';
|
@@ -23,10 +23,10 @@ class TabsStyle extends BaseStyle {
|
|
23
23
|
name = 'tabs';
|
24
24
|
theme = style;
|
25
25
|
classes = classes$4;
|
26
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
27
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.2
|
26
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabsStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
27
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabsStyle });
|
28
28
|
}
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabsStyle, decorators: [{
|
30
30
|
type: Injectable
|
31
31
|
}] });
|
32
32
|
/**
|
@@ -89,10 +89,10 @@ const classes$3 = {
|
|
89
89
|
class TabListStyle extends BaseStyle {
|
90
90
|
name = 'tablist';
|
91
91
|
classes = classes$3;
|
92
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
93
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.2
|
92
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabListStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
93
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabListStyle });
|
94
94
|
}
|
95
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
95
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabListStyle, decorators: [{
|
96
96
|
type: Injectable
|
97
97
|
}] });
|
98
98
|
/**
|
@@ -175,10 +175,10 @@ class TabList extends BaseComponent {
|
|
175
175
|
});
|
176
176
|
}
|
177
177
|
get prevButtonAriaLabel() {
|
178
|
-
return this.config
|
178
|
+
return this.config?.translation?.aria?.previous;
|
179
179
|
}
|
180
180
|
get nextButtonAriaLabel() {
|
181
|
-
return this.config
|
181
|
+
return this.config?.translation?.aria?.next;
|
182
182
|
}
|
183
183
|
ngAfterViewInit() {
|
184
184
|
super.ngAfterViewInit();
|
@@ -190,7 +190,7 @@ class TabList extends BaseComponent {
|
|
190
190
|
_prevIconTemplate;
|
191
191
|
_nextIconTemplate;
|
192
192
|
ngAfterContentInit() {
|
193
|
-
this.templates
|
193
|
+
this.templates?.forEach((t) => {
|
194
194
|
switch (t.getType()) {
|
195
195
|
case 'previcon':
|
196
196
|
this._prevIconTemplate = t.template;
|
@@ -231,7 +231,7 @@ class TabList extends BaseComponent {
|
|
231
231
|
const scrollLeft = Math.abs(_content.scrollLeft);
|
232
232
|
const width = getWidth(_content);
|
233
233
|
this.isPrevButtonEnabled.set(scrollLeft !== 0);
|
234
|
-
this.isNextButtonEnabled.set(_list.offsetWidth >= offsetWidth && scrollLeft
|
234
|
+
this.isNextButtonEnabled.set(_list.offsetWidth >= offsetWidth && Math.abs(scrollLeft - scrollWidth + width) > 1);
|
235
235
|
}
|
236
236
|
updateInkBar() {
|
237
237
|
const _content = this.content?.nativeElement;
|
@@ -258,8 +258,8 @@ class TabList extends BaseComponent {
|
|
258
258
|
this.resizeObserver = null;
|
259
259
|
}
|
260
260
|
}
|
261
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
262
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2
|
261
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabList, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
262
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.2", type: TabList, isStandalone: true, selector: "p-tablist", host: { properties: { "class": "cx(\"root\")", "attr.data-pc-name": "\"tablist\"" } }, providers: [TabListStyle], queries: [{ propertyName: "prevIconTemplate", first: true, predicate: ["previcon"] }, { propertyName: "nextIconTemplate", first: true, predicate: ["nexticon"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "prevButton", first: true, predicate: ["prevButton"], descendants: true }, { propertyName: "nextButton", first: true, predicate: ["nextButton"], descendants: true }, { propertyName: "inkbar", first: true, predicate: ["inkbar"], descendants: true }, { propertyName: "tabs", first: true, predicate: ["tabs"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
263
263
|
@if (showNavigators() && isPrevButtonEnabled()) {
|
264
264
|
<button type="button" #prevButton pRipple [class]="cx('prevButton')" [attr.aria-label]="prevButtonAriaLabel" [attr.tabindex]="tabindex()" [attr.data-pc-group-section]="'navigator'" (click)="onPrevButtonClick()">
|
265
265
|
@if (prevIconTemplate || _prevIconTemplate) {
|
@@ -286,7 +286,7 @@ class TabList extends BaseComponent {
|
|
286
286
|
}
|
287
287
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ChevronLeftIcon, selector: "[data-p-icon=\"chevron-left\"]" }, { kind: "component", type: ChevronRightIcon, selector: "[data-p-icon=\"chevron-right\"]" }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i2.Ripple, selector: "[pRipple]" }, { kind: "ngmodule", type: SharedModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
288
288
|
}
|
289
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
289
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabList, decorators: [{
|
290
290
|
type: Component,
|
291
291
|
args: [{
|
292
292
|
selector: 'p-tablist',
|
@@ -364,10 +364,10 @@ const classes$2 = {
|
|
364
364
|
class TabStyle extends BaseStyle {
|
365
365
|
name = 'tab';
|
366
366
|
classes = classes$2;
|
367
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
368
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.2
|
367
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
368
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabStyle });
|
369
369
|
}
|
370
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
370
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabStyle, decorators: [{
|
371
371
|
type: Injectable
|
372
372
|
}] });
|
373
373
|
/**
|
@@ -412,13 +412,17 @@ class Tab extends BaseComponent {
|
|
412
412
|
id = computed(() => `${this.pcTabs.id()}_tab_${this.value()}`, ...(ngDevMode ? [{ debugName: "id" }] : []));
|
413
413
|
ariaControls = computed(() => `${this.pcTabs.id()}_tabpanel_${this.value()}`, ...(ngDevMode ? [{ debugName: "ariaControls" }] : []));
|
414
414
|
active = computed(() => equals(this.pcTabs.value(), this.value()), ...(ngDevMode ? [{ debugName: "active" }] : []));
|
415
|
-
tabindex = computed(() => (this.active() ? this.pcTabs.tabindex() : -1), ...(ngDevMode ? [{ debugName: "tabindex" }] : []));
|
415
|
+
tabindex = computed(() => (this.disabled() ? -1 : this.active() ? this.pcTabs.tabindex() : -1), ...(ngDevMode ? [{ debugName: "tabindex" }] : []));
|
416
416
|
mutationObserver;
|
417
417
|
onFocus(event) {
|
418
|
-
this.
|
418
|
+
if (!this.disabled()) {
|
419
|
+
this.pcTabs.selectOnFocus() && this.changeActiveValue();
|
420
|
+
}
|
419
421
|
}
|
420
422
|
onClick(event) {
|
421
|
-
this.
|
423
|
+
if (!this.disabled()) {
|
424
|
+
this.changeActiveValue();
|
425
|
+
}
|
422
426
|
}
|
423
427
|
onKeyDown(event) {
|
424
428
|
switch (event.code) {
|
@@ -483,7 +487,9 @@ class Tab extends BaseComponent {
|
|
483
487
|
event.preventDefault();
|
484
488
|
}
|
485
489
|
onEnterKey(event) {
|
486
|
-
this.
|
490
|
+
if (!this.disabled()) {
|
491
|
+
this.changeActiveValue();
|
492
|
+
}
|
487
493
|
event.preventDefault();
|
488
494
|
}
|
489
495
|
findNextTab(tabElement, selfCheck = false) {
|
@@ -523,7 +529,7 @@ class Tab extends BaseComponent {
|
|
523
529
|
}
|
524
530
|
}
|
525
531
|
unbindMutationObserver() {
|
526
|
-
this.mutationObserver
|
532
|
+
this.mutationObserver?.disconnect();
|
527
533
|
}
|
528
534
|
ngOnDestroy() {
|
529
535
|
if (this.mutationObserver) {
|
@@ -531,10 +537,10 @@ class Tab extends BaseComponent {
|
|
531
537
|
}
|
532
538
|
super.ngOnDestroy();
|
533
539
|
}
|
534
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
535
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2
|
540
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Tab, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
541
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.2", type: Tab, isStandalone: true, selector: "p-tab", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { listeners: { "focus": "onFocus($event)", "click": "onClick($event)", "keydown": "onKeyDown($event)" }, properties: { "class": "cx(\"root\")", "attr.data-pc-name": "\"tab\"", "attr.id": "id()", "attr.aria-controls": "ariaControls()", "attr.role": "\"tab\"", "attr.aria-selected": "active()", "attr.aria-disabled": "disabled()", "attr.data-p-disabled": "disabled()", "attr.data-p-active": "active()", "attr.tabindex": "tabindex()" } }, providers: [TabStyle], usesInheritance: true, hostDirectives: [{ directive: i2.Ripple }], ngImport: i0, template: ` <ng-content></ng-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: SharedModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
536
542
|
}
|
537
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
543
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Tab, decorators: [{
|
538
544
|
type: Component,
|
539
545
|
args: [{
|
540
546
|
selector: 'p-tab',
|
@@ -550,6 +556,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImpor
|
|
550
556
|
'[attr.aria-controls]': 'ariaControls()',
|
551
557
|
'[attr.role]': '"tab"',
|
552
558
|
'[attr.aria-selected]': 'active()',
|
559
|
+
'[attr.aria-disabled]': 'disabled()',
|
553
560
|
'[attr.data-p-disabled]': 'disabled()',
|
554
561
|
'[attr.data-p-active]': 'active()',
|
555
562
|
'[attr.tabindex]': 'tabindex()'
|
@@ -579,10 +586,10 @@ const classes$1 = {
|
|
579
586
|
class TabPanelStyle extends BaseStyle {
|
580
587
|
name = 'tabpanel';
|
581
588
|
classes = classes$1;
|
582
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
583
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.2
|
589
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanelStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
590
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanelStyle });
|
584
591
|
}
|
585
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
592
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanelStyle, decorators: [{
|
586
593
|
type: Injectable
|
587
594
|
}] });
|
588
595
|
/**
|
@@ -608,41 +615,78 @@ var TabPanelClasses;
|
|
608
615
|
*/
|
609
616
|
class TabPanel extends BaseComponent {
|
610
617
|
pcTabs = inject(forwardRef(() => Tabs));
|
618
|
+
/**
|
619
|
+
* When enabled, tab is not rendered until activation.
|
620
|
+
* @type boolean
|
621
|
+
* @defaultValue false
|
622
|
+
* @group Props
|
623
|
+
*/
|
624
|
+
lazy = input(false, ...(ngDevMode ? [{ debugName: "lazy", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
611
625
|
/**
|
612
626
|
* Value of the active tab.
|
613
627
|
* @defaultValue undefined
|
614
628
|
* @group Props
|
615
629
|
*/
|
616
630
|
value = model(undefined, ...(ngDevMode ? [{ debugName: "value" }] : []));
|
631
|
+
/**
|
632
|
+
* Template for initializing complex content when lazy is enabled.
|
633
|
+
* @group Templates
|
634
|
+
*/
|
635
|
+
content = contentChild('content', ...(ngDevMode ? [{ debugName: "content" }] : []));
|
617
636
|
id = computed(() => `${this.pcTabs.id()}_tabpanel_${this.value()}`, ...(ngDevMode ? [{ debugName: "id" }] : []));
|
618
637
|
ariaLabelledby = computed(() => `${this.pcTabs.id()}_tab_${this.value()}`, ...(ngDevMode ? [{ debugName: "ariaLabelledby" }] : []));
|
619
638
|
active = computed(() => equals(this.pcTabs.value(), this.value()), ...(ngDevMode ? [{ debugName: "active" }] : []));
|
639
|
+
isLazyEnabled = computed(() => this.pcTabs.lazy() || this.lazy(), ...(ngDevMode ? [{ debugName: "isLazyEnabled" }] : []));
|
640
|
+
hasBeenRendered = false;
|
641
|
+
shouldRender = computed(() => {
|
642
|
+
if (!this.isLazyEnabled() || this.hasBeenRendered) {
|
643
|
+
return true;
|
644
|
+
}
|
645
|
+
if (this.active()) {
|
646
|
+
this.hasBeenRendered = true;
|
647
|
+
return true;
|
648
|
+
}
|
649
|
+
return false;
|
650
|
+
}, ...(ngDevMode ? [{ debugName: "shouldRender" }] : []));
|
620
651
|
_componentStyle = inject(TabPanelStyle);
|
621
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
622
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2
|
623
|
-
<ng-
|
624
|
-
|
652
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanel, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
653
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.2", type: TabPanel, isStandalone: true, selector: "p-tabpanel", inputs: { lazy: { classPropertyName: "lazy", publicName: "lazy", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { properties: { "class": "cx(\"root\")", "attr.data-pc-name": "\"tabpanel\"", "attr.id": "id()", "attr.role": "\"tabpanel\"", "attr.aria-labelledby": "ariaLabelledby()", "attr.data-p-active": "active()", "hidden": "!active()" } }, providers: [TabPanelStyle], queries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
|
654
|
+
<ng-template #defaultContent>
|
655
|
+
<ng-content />
|
656
|
+
</ng-template>
|
657
|
+
|
658
|
+
@if (shouldRender()) {
|
659
|
+
<ng-container *ngTemplateOutlet="content() ? content() : defaultContent" />
|
660
|
+
}
|
661
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
625
662
|
}
|
626
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
663
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanel, decorators: [{
|
627
664
|
type: Component,
|
628
665
|
args: [{
|
629
666
|
selector: 'p-tabpanel',
|
630
667
|
standalone: true,
|
631
|
-
imports: [
|
632
|
-
template:
|
633
|
-
<ng-
|
634
|
-
|
668
|
+
imports: [NgTemplateOutlet],
|
669
|
+
template: `
|
670
|
+
<ng-template #defaultContent>
|
671
|
+
<ng-content />
|
672
|
+
</ng-template>
|
673
|
+
|
674
|
+
@if (shouldRender()) {
|
675
|
+
<ng-container *ngTemplateOutlet="content() ? content() : defaultContent" />
|
676
|
+
}
|
677
|
+
`,
|
635
678
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
636
679
|
encapsulation: ViewEncapsulation.None,
|
680
|
+
providers: [TabPanelStyle],
|
637
681
|
host: {
|
638
682
|
'[class]': 'cx("root")',
|
639
683
|
'[attr.data-pc-name]': '"tabpanel"',
|
640
684
|
'[attr.id]': 'id()',
|
641
685
|
'[attr.role]': '"tabpanel"',
|
642
686
|
'[attr.aria-labelledby]': 'ariaLabelledby()',
|
643
|
-
'[attr.data-p-active]': 'active()'
|
644
|
-
|
645
|
-
|
687
|
+
'[attr.data-p-active]': 'active()',
|
688
|
+
'[hidden]': '!active()'
|
689
|
+
}
|
646
690
|
}]
|
647
691
|
}] });
|
648
692
|
|
@@ -652,10 +696,10 @@ const classes = {
|
|
652
696
|
class TabPanelsStyle extends BaseStyle {
|
653
697
|
name = 'tabpanels';
|
654
698
|
classes = classes;
|
655
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
656
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.2
|
699
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanelsStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
700
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanelsStyle });
|
657
701
|
}
|
658
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
702
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanelsStyle, decorators: [{
|
659
703
|
type: Injectable
|
660
704
|
}] });
|
661
705
|
/**
|
@@ -681,10 +725,10 @@ var TabPanelsClasses;
|
|
681
725
|
*/
|
682
726
|
class TabPanels extends BaseComponent {
|
683
727
|
_componentStyle = inject(TabPanelsStyle);
|
684
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
685
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2
|
728
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanels, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
729
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.2", type: TabPanels, isStandalone: true, selector: "p-tabpanels", host: { properties: { "class": "cx(\"root\")", "attr.data-pc-name": "\"tabpanels\"", "attr.role": "\"presentation\"" } }, providers: [TabPanelsStyle], usesInheritance: true, ngImport: i0, template: ` <ng-content></ng-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
686
730
|
}
|
687
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
731
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabPanels, decorators: [{
|
688
732
|
type: Component,
|
689
733
|
args: [{
|
690
734
|
selector: 'p-tabpanels',
|
@@ -721,7 +765,7 @@ class Tabs extends BaseComponent {
|
|
721
765
|
*/
|
722
766
|
scrollable = input(false, ...(ngDevMode ? [{ debugName: "scrollable", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
723
767
|
/**
|
724
|
-
* When enabled,
|
768
|
+
* When enabled, tabs are not rendered until activation.
|
725
769
|
* @type boolean
|
726
770
|
* @defaultValue false
|
727
771
|
* @group Props
|
@@ -753,10 +797,10 @@ class Tabs extends BaseComponent {
|
|
753
797
|
updateValue(newValue) {
|
754
798
|
this.value.update(() => newValue);
|
755
799
|
}
|
756
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
757
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2
|
800
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Tabs, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
801
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.2", type: Tabs, isStandalone: true, selector: "p-tabs", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, scrollable: { classPropertyName: "scrollable", publicName: "scrollable", isSignal: true, isRequired: false, transformFunction: null }, lazy: { classPropertyName: "lazy", publicName: "lazy", isSignal: true, isRequired: false, transformFunction: null }, selectOnFocus: { classPropertyName: "selectOnFocus", publicName: "selectOnFocus", isSignal: true, isRequired: false, transformFunction: null }, showNavigators: { classPropertyName: "showNavigators", publicName: "showNavigators", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { properties: { "class": "cx(\"root\")", "attr.data-pc-name": "\"tabs\"", "attr.id": "id()" } }, providers: [TabsStyle], usesInheritance: true, ngImport: i0, template: ` <ng-content></ng-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
758
802
|
}
|
759
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
803
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Tabs, decorators: [{
|
760
804
|
type: Component,
|
761
805
|
args: [{
|
762
806
|
selector: 'p-tabs',
|
@@ -774,11 +818,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImpor
|
|
774
818
|
}]
|
775
819
|
}] });
|
776
820
|
class TabsModule {
|
777
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2
|
778
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2
|
779
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2
|
821
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
822
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.2", ngImport: i0, type: TabsModule, imports: [Tabs, TabPanels, TabPanel, TabList, Tab], exports: [Tabs, TabPanels, TabPanel, TabList, Tab] });
|
823
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabsModule, imports: [Tabs, TabPanels, TabList, Tab] });
|
780
824
|
}
|
781
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2
|
825
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: TabsModule, decorators: [{
|
782
826
|
type: NgModule,
|
783
827
|
args: [{
|
784
828
|
imports: [Tabs, TabPanels, TabPanel, TabList, Tab],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-tabs.mjs","sources":["../../src/tabs/style/tabsstyle.ts","../../src/tabs/style/tabliststyle.ts","../../src/tabs/tablist.ts","../../src/tabs/style/tabstyle.ts","../../src/tabs/tab.ts","../../src/tabs/style/tabpanelstyle.ts","../../src/tabs/tabpanel.ts","../../src/tabs/style/tabpanelsstyle.ts","../../src/tabs/tabpanels.ts","../../src/tabs/tabs.ts","../../src/tabs/primeng-tabs.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/tabs';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => [\n 'p-tabs p-component',\n {\n 'p-tabs-scrollable': instance.scrollable()\n }\n ]\n};\n\n@Injectable()\nexport class TabsStyle extends BaseStyle {\n name = 'tabs';\n\n theme = style;\n\n classes = classes;\n}\n\n/**\n *\n * Tabs facilitates seamless switching between different views.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabsstyle\n *\n */\n\nexport enum TabsClasses {\n /**\n * Class name of the root element\n */\n root = 'p-tabs',\n /**\n * Class name of the wrapper element\n */\n list = 'p-tablist',\n /**\n * Class name of the content element\n */\n content = 'p-tablist-content',\n /**\n * Class name of the tab list element\n */\n tablist = 'p-tablist-tab-list',\n /**\n * Class name of the tab list element\n */\n tab = 'p-tab',\n /**\n * Class name of the inkbar element\n */\n inkbar = 'p-tablist-active-bar',\n /**\n * Class name of the navigation buttons\n */\n button = 'p-tablist-nav-button',\n /**\n * Class name of the tab panels wrapper\n */\n tabpanels = 'p-tabpanels',\n /**\n * Class name of the tab panel element\n */\n tabpanel = 'p-tabs-panel'\n}\n\nexport interface TabsStyle extends BaseStyle {}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: 'p-tablist',\n content: 'p-tablist-content p-tablist-viewport',\n tabList: 'p-tablist-tab-list',\n activeBar: 'p-tablist-active-bar',\n prevButton: 'p-tablist-prev-button p-tablist-nav-button',\n nextButton: 'p-tablist-next-button p-tablist-nav-button'\n};\n\n@Injectable()\nexport class TabListStyle extends BaseStyle {\n name = 'tablist';\n\n classes = classes;\n}\n\n/**\n *\n * Tabs facilitates seamless switching between different views.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabliststyle\n *\n */\n\nexport enum TabListClasses {\n /**\n * Class name of the root element\n */\n root = 'p-tablist',\n /**\n * Class name of the content element\n */\n content = 'p-tablist-content',\n /**\n * Class name of the tabs element\n */\n tabList = 'p-tablist-tab-list',\n /**\n * Class name of the activebar element\n */\n activeBar = 'p-tablist-active-bar',\n /**\n * Class name of the previous button element\n */\n prevButton = 'p-tablist-prev-button',\n /**\n * Class name of the next button element\n */\n nextButton = 'p-tablist-next-button'\n}\n\nexport interface TabListStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { AfterContentInit, AfterViewInit, ChangeDetectionStrategy, Component, computed, ContentChild, ContentChildren, effect, ElementRef, forwardRef, inject, QueryList, signal, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { findSingle, getOffset, getOuterWidth, getWidth, isRTL } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { ChevronLeftIcon, ChevronRightIcon } from 'primeng/icons';\nimport { RippleModule } from 'primeng/ripple';\nimport { TabListStyle } from './style/tabliststyle';\nimport { Tabs } from './tabs';\n\n/**\n * TabList is a helper component for Tabs component.\n * @group Components\n */\n@Component({\n selector: 'p-tablist',\n standalone: true,\n imports: [CommonModule, ChevronLeftIcon, ChevronRightIcon, RippleModule, SharedModule],\n template: `\n @if (showNavigators() && isPrevButtonEnabled()) {\n <button type=\"button\" #prevButton pRipple [class]=\"cx('prevButton')\" [attr.aria-label]=\"prevButtonAriaLabel\" [attr.tabindex]=\"tabindex()\" [attr.data-pc-group-section]=\"'navigator'\" (click)=\"onPrevButtonClick()\">\n @if (prevIconTemplate || _prevIconTemplate) {\n <ng-container *ngTemplateOutlet=\"prevIconTemplate || _prevIconTemplate\" />\n } @else {\n <svg data-p-icon=\"chevron-left\" />\n }\n </button>\n }\n <div #content [class]=\"cx('content')\" (scroll)=\"onScroll($event)\">\n <div #tabs [class]=\"cx('tabList')\" role=\"tablist\">\n <ng-content />\n <span #inkbar role=\"presentation\" [class]=\"cx('activeBar')\" [attr.data-pc-section]=\"'inkbar'\"></span>\n </div>\n </div>\n @if (showNavigators() && isNextButtonEnabled()) {\n <button type=\"button\" #nextButton pRipple [class]=\"cx('nextButton')\" [attr.aria-label]=\"nextButtonAriaLabel\" [attr.tabindex]=\"tabindex()\" [attr.data-pc-group-section]=\"'navigator'\" (click)=\"onNextButtonClick()\">\n @if (nextIconTemplate || _nextIconTemplate) {\n <ng-container *ngTemplateOutlet=\"nextIconTemplate || _nextIconTemplate\" />\n } @else {\n <svg data-p-icon=\"chevron-right\" />\n }\n </button>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tablist\"'\n },\n providers: [TabListStyle]\n})\nexport class TabList extends BaseComponent implements AfterViewInit, AfterContentInit {\n /**\n * A template reference variable that represents the previous icon in a UI component.\n * @type {TemplateRef<any> | undefined}\n * @group Templates\n */\n @ContentChild('previcon', { descendants: false }) prevIconTemplate: TemplateRef<any> | undefined;\n /**\n * A template reference variable that represents the next icon in a UI component.\n * @type {TemplateRef<any> | undefined}\n * @group Templates\n */\n @ContentChild('nexticon', { descendants: false }) nextIconTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n @ViewChild('content') content: ElementRef<HTMLDivElement>;\n\n @ViewChild('prevButton') prevButton: ElementRef<HTMLButtonElement>;\n\n @ViewChild('nextButton') nextButton: ElementRef<HTMLButtonElement>;\n\n @ViewChild('inkbar') inkbar: ElementRef<HTMLSpanElement>;\n\n @ViewChild('tabs') tabs: ElementRef<HTMLDivElement>;\n\n pcTabs = inject(forwardRef(() => Tabs));\n\n isPrevButtonEnabled = signal<boolean>(false);\n\n isNextButtonEnabled = signal<boolean>(false);\n\n resizeObserver!: ResizeObserver;\n\n showNavigators = computed(() => this.pcTabs.showNavigators());\n\n tabindex = computed(() => this.pcTabs.tabindex());\n\n scrollable = computed(() => this.pcTabs.scrollable());\n\n _componentStyle = inject(TabListStyle);\n\n constructor() {\n super();\n effect(() => {\n this.pcTabs.value();\n if (isPlatformBrowser(this.platformId)) {\n setTimeout(() => {\n this.updateInkBar();\n });\n }\n });\n }\n\n get prevButtonAriaLabel() {\n return this.config.translation.aria.previous;\n }\n\n get nextButtonAriaLabel() {\n return this.config.translation.aria.next;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (this.showNavigators() && isPlatformBrowser(this.platformId)) {\n this.updateButtonState();\n this.bindResizeObserver();\n }\n }\n\n _prevIconTemplate: TemplateRef<any> | undefined;\n\n _nextIconTemplate: TemplateRef<any> | undefined;\n\n ngAfterContentInit() {\n this.templates.forEach((t) => {\n switch (t.getType()) {\n case 'previcon':\n this._prevIconTemplate = t.template;\n break;\n case 'nexticon':\n this._nextIconTemplate = t.template;\n break;\n }\n });\n }\n\n ngOnDestroy() {\n this.unbindResizeObserver();\n super.ngOnDestroy();\n }\n\n onScroll(event: Event) {\n this.showNavigators() && this.updateButtonState();\n\n event.preventDefault();\n }\n\n onPrevButtonClick() {\n const _content = this.content.nativeElement;\n const width = getWidth(_content);\n const pos = Math.abs(_content.scrollLeft) - width;\n const scrollLeft = pos <= 0 ? 0 : pos;\n\n _content.scrollLeft = isRTL(_content) ? -1 * scrollLeft : scrollLeft;\n }\n\n onNextButtonClick() {\n const _content = this.content.nativeElement;\n const width = getWidth(_content) - this.getVisibleButtonWidths();\n const pos = _content.scrollLeft + width;\n const lastPos = _content.scrollWidth - width;\n const scrollLeft = pos >= lastPos ? lastPos : pos;\n\n _content.scrollLeft = isRTL(_content) ? -1 * scrollLeft : scrollLeft;\n }\n\n updateButtonState() {\n const _content = this.content?.nativeElement;\n const _list = this.el?.nativeElement;\n\n const { scrollWidth, offsetWidth } = _content;\n const scrollLeft = Math.abs(_content.scrollLeft);\n const width = getWidth(_content);\n\n this.isPrevButtonEnabled.set(scrollLeft !== 0);\n this.isNextButtonEnabled.set(_list.offsetWidth >= offsetWidth && scrollLeft !== scrollWidth - width);\n }\n\n updateInkBar() {\n const _content = this.content?.nativeElement;\n const _inkbar = this.inkbar?.nativeElement;\n const _tabs = this.tabs?.nativeElement;\n\n const activeTab = findSingle(_content, '[data-pc-name=\"tab\"][data-p-active=\"true\"]');\n if (_inkbar) {\n _inkbar.style.width = getOuterWidth(activeTab) + 'px';\n _inkbar.style.left = <any>getOffset(activeTab).left - <any>getOffset(_tabs).left + 'px';\n }\n }\n\n getVisibleButtonWidths() {\n const _prevBtn = this.prevButton?.nativeElement;\n const _nextBtn = this.nextButton?.nativeElement;\n\n return [_prevBtn, _nextBtn].reduce((acc, el) => (el ? acc + getWidth(el) : acc), 0);\n }\n\n bindResizeObserver() {\n this.resizeObserver = new ResizeObserver(() => this.updateButtonState());\n this.resizeObserver.observe(this.el.nativeElement);\n }\n\n unbindResizeObserver() {\n if (this.resizeObserver) {\n this.resizeObserver.unobserve(this.el.nativeElement);\n this.resizeObserver = null;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => [\n 'p-tab',\n {\n 'p-tab-active': instance.active(),\n 'p-disabled': instance.disabled()\n }\n ]\n};\n\n@Injectable()\nexport class TabStyle extends BaseStyle {\n name = 'tab';\n\n classes = classes;\n}\n\n/**\n *\n * Tabs facilitates seamless switching between different views.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabsstyle\n *\n */\n\nexport enum TabClasses {\n /**\n * Class name of the tab list element\n */\n tab = 'p-tab'\n}\n\nexport interface TabStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, booleanAttribute, ChangeDetectionStrategy, Component, computed, ElementRef, forwardRef, HostListener, inject, input, model, OnDestroy, ViewEncapsulation } from '@angular/core';\nimport { equals, focus, getAttribute } from '@primeuix/utils';\nimport { SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Ripple } from 'primeng/ripple';\nimport { TabList } from './tablist';\nimport { Tabs } from './tabs';\nimport { TabStyle } from './style/tabstyle';\n\n/**\n * Defines valid properties in Tab component.\n * @group Components\n */\n@Component({\n selector: 'p-tab',\n standalone: true,\n imports: [CommonModule, SharedModule],\n template: ` <ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tab\"',\n '[attr.id]': 'id()',\n '[attr.aria-controls]': 'ariaControls()',\n '[attr.role]': '\"tab\"',\n '[attr.aria-selected]': 'active()',\n '[attr.data-p-disabled]': 'disabled()',\n '[attr.data-p-active]': 'active()',\n '[attr.tabindex]': 'tabindex()'\n },\n hostDirectives: [Ripple],\n providers: [TabStyle]\n})\nexport class Tab extends BaseComponent implements AfterViewInit, OnDestroy {\n /**\n * Value of tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<number | string | undefined>();\n /**\n * Whether the tab is disabled.\n * @defaultValue false\n * @group Props\n */\n disabled = input(false, { transform: booleanAttribute });\n\n pcTabs = inject(forwardRef(() => Tabs));\n\n pcTabList = inject(forwardRef(() => TabList));\n\n el = inject(ElementRef);\n\n _componentStyle = inject(TabStyle);\n\n ripple = computed(() => this.config.ripple());\n\n id = computed(() => `${this.pcTabs.id()}_tab_${this.value()}`);\n\n ariaControls = computed(() => `${this.pcTabs.id()}_tabpanel_${this.value()}`);\n\n active = computed(() => equals(this.pcTabs.value(), this.value()));\n\n tabindex = computed(() => (this.active() ? this.pcTabs.tabindex() : -1));\n\n mutationObserver: MutationObserver | undefined;\n\n @HostListener('focus', ['$event']) onFocus(event: FocusEvent) {\n this.pcTabs.selectOnFocus() && this.changeActiveValue();\n }\n\n @HostListener('click', ['$event']) onClick(event: MouseEvent) {\n this.changeActiveValue();\n }\n\n @HostListener('keydown', ['$event']) onKeyDown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowRight':\n this.onArrowRightKey(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeftKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n case 'PageDown':\n this.onPageDownKey(event);\n break;\n\n case 'PageUp':\n this.onPageUpKey(event);\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Space':\n this.onEnterKey(event);\n break;\n\n default:\n break;\n }\n\n event.stopPropagation();\n }\n\n ngAfterViewInit(): void {\n super.ngAfterViewInit();\n this.bindMutationObserver();\n }\n\n onArrowRightKey(event) {\n const nextTab = this.findNextTab(event.currentTarget);\n nextTab ? this.changeFocusedTab(event, nextTab) : this.onHomeKey(event);\n event.preventDefault();\n }\n\n onArrowLeftKey(event) {\n const prevTab = this.findPrevTab(event.currentTarget);\n\n prevTab ? this.changeFocusedTab(event, prevTab) : this.onEndKey(event);\n event.preventDefault();\n }\n\n onHomeKey(event) {\n const firstTab = this.findFirstTab();\n\n this.changeFocusedTab(event, firstTab);\n event.preventDefault();\n }\n\n onEndKey(event) {\n const lastTab = this.findLastTab();\n\n this.changeFocusedTab(event, lastTab);\n event.preventDefault();\n }\n\n onPageDownKey(event) {\n this.scrollInView(this.findLastTab());\n event.preventDefault();\n }\n\n onPageUpKey(event) {\n this.scrollInView(this.findFirstTab());\n event.preventDefault();\n }\n\n onEnterKey(event) {\n this.changeActiveValue();\n event.preventDefault();\n }\n\n findNextTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'inkbar' ? this.findNextTab(element) : element) : null;\n }\n\n findPrevTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'inkbar' ? this.findPrevTab(element) : element) : null;\n }\n\n findFirstTab() {\n return this.findNextTab(this.pcTabList?.tabs?.nativeElement?.firstElementChild, true);\n }\n\n findLastTab() {\n return this.findPrevTab(this.pcTabList?.tabs?.nativeElement?.lastElementChild, true);\n }\n\n changeActiveValue() {\n this.pcTabs.updateValue(this.value());\n }\n\n changeFocusedTab(event, element) {\n focus(element);\n this.scrollInView(element);\n }\n\n scrollInView(element) {\n element?.scrollIntoView?.({ block: 'nearest' });\n }\n\n bindMutationObserver() {\n if (isPlatformBrowser(this.platformId)) {\n this.mutationObserver = new MutationObserver((mutations) => {\n mutations.forEach(() => {\n if (this.active()) {\n this.pcTabList?.updateInkBar();\n }\n });\n });\n this.mutationObserver.observe(this.el.nativeElement, { childList: true, characterData: true, subtree: true });\n }\n }\n\n unbindMutationObserver() {\n this.mutationObserver.disconnect();\n }\n\n ngOnDestroy() {\n if (this.mutationObserver) {\n this.unbindMutationObserver();\n }\n super.ngOnDestroy();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => [\n 'p-tabpanel',\n {\n 'p-tabpanel-active': instance.active()\n }\n ]\n};\n\n@Injectable()\nexport class TabPanelStyle extends BaseStyle {\n name = 'tabpanel';\n\n classes = classes;\n}\n\n/**\n *\n * Tab is a helper component for Tabs component.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabstyle\n *\n */\n\nexport enum TabPanelClasses {\n /**\n * Class name of the root element\n */\n root = 'p-tabpanel'\n}\n\nexport interface TabPanelStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, forwardRef, inject, model, ViewEncapsulation } from '@angular/core';\nimport { equals } from '@primeuix/utils';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Tabs } from './tabs';\nimport { TabPanelStyle } from './style/tabpanelstyle';\n\n/**\n * TabPanel is a helper component for Tabs component.\n * @group Components\n */\n@Component({\n selector: 'p-tabpanel',\n standalone: true,\n imports: [CommonModule],\n template: `@if (active()) {\n <ng-content></ng-content>\n }`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tabpanel\"',\n '[attr.id]': 'id()',\n '[attr.role]': '\"tabpanel\"',\n '[attr.aria-labelledby]': 'ariaLabelledby()',\n '[attr.data-p-active]': 'active()'\n },\n providers: [TabPanelStyle]\n})\nexport class TabPanel extends BaseComponent {\n pcTabs = inject(forwardRef(() => Tabs));\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<string | number | undefined>(undefined);\n\n id = computed(() => `${this.pcTabs.id()}_tabpanel_${this.value()}`);\n\n ariaLabelledby = computed(() => `${this.pcTabs.id()}_tab_${this.value()}`);\n\n active = computed(() => equals(this.pcTabs.value(), this.value()));\n\n _componentStyle = inject(TabPanelStyle);\n}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: 'p-tabpanels'\n};\n\n@Injectable()\nexport class TabPanelsStyle extends BaseStyle {\n name = 'tabpanels';\n\n classes = classes;\n}\n\n/**\n *\n * Tab is a helper component for Tabs component.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabpanelstyle\n *\n */\n\nexport enum TabPanelsClasses {\n /**\n * Class name of the root element\n */\n root = 'p-tabpanels'\n}\n\nexport interface TabPanelsStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { TabPanelsStyle } from './style/tabpanelsstyle';\n\n/**\n * TabPanels is a helper component for Tabs component.\n * @group Components\n */\n@Component({\n selector: 'p-tabpanels',\n standalone: true,\n imports: [CommonModule],\n template: ` <ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tabpanels\"',\n '[attr.role]': '\"presentation\"'\n },\n providers: [TabPanelsStyle]\n})\nexport class TabPanels extends BaseComponent {\n _componentStyle = inject(TabPanelsStyle);\n}\n","import { CommonModule } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, model, NgModule, numberAttribute, signal, ViewEncapsulation } from '@angular/core';\n\nimport { uuid } from '@primeuix/utils';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { TabsStyle } from './style/tabsstyle';\nimport { Tab } from './tab';\nimport { TabList } from './tablist';\nimport { TabPanel } from './tabpanel';\nimport { TabPanels } from './tabpanels';\n\n/**\n * Tabs facilitates seamless switching between different views.\n * @group Components\n */\n@Component({\n selector: 'p-tabs',\n standalone: true,\n imports: [CommonModule],\n template: ` <ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [TabsStyle],\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tabs\"',\n '[attr.id]': 'id()'\n }\n})\nexport class Tabs extends BaseComponent {\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<string | number | undefined>(undefined);\n /**\n * When specified, enables horizontal and/or vertical scrolling.\n * @type boolean\n * @defaultValue false\n * @group Props\n */\n scrollable = input(false, { transform: booleanAttribute });\n /**\n * When enabled, hidden tabs are not rendered at all. Defaults to false that hides tabs with css.\n * @type boolean\n * @defaultValue false\n * @group Props\n */\n lazy = input(false, { transform: booleanAttribute });\n /**\n * When enabled, the focused tab is activated.\n * @type boolean\n * @defaultValue false\n * @group Props\n */\n selectOnFocus = input(false, { transform: booleanAttribute });\n /**\n * Whether to display navigation buttons in container when scrollable is enabled.\n * @type boolean\n * @defaultValue true\n * @group Props\n */\n showNavigators = input(true, { transform: booleanAttribute });\n /**\n * Tabindex of the tab buttons.\n * @type number\n * @defaultValue 0\n * @group Props\n */\n tabindex = input(0, { transform: numberAttribute });\n\n id = signal<string>(uuid('pn_id_'));\n\n _componentStyle = inject(TabsStyle);\n\n updateValue(newValue) {\n this.value.update(() => newValue);\n }\n}\n\n@NgModule({\n imports: [Tabs, TabPanels, TabPanel, TabList, Tab],\n exports: [Tabs, TabPanels, TabPanel, TabList, Tab]\n})\nexport class TabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["classes"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-tabs.mjs","sources":["../../src/tabs/style/tabsstyle.ts","../../src/tabs/style/tabliststyle.ts","../../src/tabs/tablist.ts","../../src/tabs/style/tabstyle.ts","../../src/tabs/tab.ts","../../src/tabs/style/tabpanelstyle.ts","../../src/tabs/tabpanel.ts","../../src/tabs/style/tabpanelsstyle.ts","../../src/tabs/tabpanels.ts","../../src/tabs/tabs.ts","../../src/tabs/primeng-tabs.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/tabs';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => [\n 'p-tabs p-component',\n {\n 'p-tabs-scrollable': instance.scrollable()\n }\n ]\n};\n\n@Injectable()\nexport class TabsStyle extends BaseStyle {\n name = 'tabs';\n\n theme = style;\n\n classes = classes;\n}\n\n/**\n *\n * Tabs facilitates seamless switching between different views.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabsstyle\n *\n */\n\nexport enum TabsClasses {\n /**\n * Class name of the root element\n */\n root = 'p-tabs',\n /**\n * Class name of the wrapper element\n */\n list = 'p-tablist',\n /**\n * Class name of the content element\n */\n content = 'p-tablist-content',\n /**\n * Class name of the tab list element\n */\n tablist = 'p-tablist-tab-list',\n /**\n * Class name of the tab list element\n */\n tab = 'p-tab',\n /**\n * Class name of the inkbar element\n */\n inkbar = 'p-tablist-active-bar',\n /**\n * Class name of the navigation buttons\n */\n button = 'p-tablist-nav-button',\n /**\n * Class name of the tab panels wrapper\n */\n tabpanels = 'p-tabpanels',\n /**\n * Class name of the tab panel element\n */\n tabpanel = 'p-tabs-panel'\n}\n\nexport interface TabsStyle extends BaseStyle {}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: 'p-tablist',\n content: 'p-tablist-content p-tablist-viewport',\n tabList: 'p-tablist-tab-list',\n activeBar: 'p-tablist-active-bar',\n prevButton: 'p-tablist-prev-button p-tablist-nav-button',\n nextButton: 'p-tablist-next-button p-tablist-nav-button'\n};\n\n@Injectable()\nexport class TabListStyle extends BaseStyle {\n name = 'tablist';\n\n classes = classes;\n}\n\n/**\n *\n * Tabs facilitates seamless switching between different views.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabliststyle\n *\n */\n\nexport enum TabListClasses {\n /**\n * Class name of the root element\n */\n root = 'p-tablist',\n /**\n * Class name of the content element\n */\n content = 'p-tablist-content',\n /**\n * Class name of the tabs element\n */\n tabList = 'p-tablist-tab-list',\n /**\n * Class name of the activebar element\n */\n activeBar = 'p-tablist-active-bar',\n /**\n * Class name of the previous button element\n */\n prevButton = 'p-tablist-prev-button',\n /**\n * Class name of the next button element\n */\n nextButton = 'p-tablist-next-button'\n}\n\nexport interface TabListStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { AfterContentInit, AfterViewInit, ChangeDetectionStrategy, Component, computed, ContentChild, ContentChildren, effect, ElementRef, forwardRef, inject, QueryList, signal, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { findSingle, getOffset, getOuterWidth, getWidth, isRTL } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { ChevronLeftIcon, ChevronRightIcon } from 'primeng/icons';\nimport { RippleModule } from 'primeng/ripple';\nimport { TabListStyle } from './style/tabliststyle';\nimport { Tabs } from './tabs';\n\n/**\n * TabList is a helper component for Tabs component.\n * @group Components\n */\n@Component({\n selector: 'p-tablist',\n standalone: true,\n imports: [CommonModule, ChevronLeftIcon, ChevronRightIcon, RippleModule, SharedModule],\n template: `\n @if (showNavigators() && isPrevButtonEnabled()) {\n <button type=\"button\" #prevButton pRipple [class]=\"cx('prevButton')\" [attr.aria-label]=\"prevButtonAriaLabel\" [attr.tabindex]=\"tabindex()\" [attr.data-pc-group-section]=\"'navigator'\" (click)=\"onPrevButtonClick()\">\n @if (prevIconTemplate || _prevIconTemplate) {\n <ng-container *ngTemplateOutlet=\"prevIconTemplate || _prevIconTemplate\" />\n } @else {\n <svg data-p-icon=\"chevron-left\" />\n }\n </button>\n }\n <div #content [class]=\"cx('content')\" (scroll)=\"onScroll($event)\">\n <div #tabs [class]=\"cx('tabList')\" role=\"tablist\">\n <ng-content />\n <span #inkbar role=\"presentation\" [class]=\"cx('activeBar')\" [attr.data-pc-section]=\"'inkbar'\"></span>\n </div>\n </div>\n @if (showNavigators() && isNextButtonEnabled()) {\n <button type=\"button\" #nextButton pRipple [class]=\"cx('nextButton')\" [attr.aria-label]=\"nextButtonAriaLabel\" [attr.tabindex]=\"tabindex()\" [attr.data-pc-group-section]=\"'navigator'\" (click)=\"onNextButtonClick()\">\n @if (nextIconTemplate || _nextIconTemplate) {\n <ng-container *ngTemplateOutlet=\"nextIconTemplate || _nextIconTemplate\" />\n } @else {\n <svg data-p-icon=\"chevron-right\" />\n }\n </button>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tablist\"'\n },\n providers: [TabListStyle]\n})\nexport class TabList extends BaseComponent implements AfterViewInit, AfterContentInit {\n /**\n * A template reference variable that represents the previous icon in a UI component.\n * @type {TemplateRef<any> | undefined}\n * @group Templates\n */\n @ContentChild('previcon', { descendants: false }) prevIconTemplate: TemplateRef<any> | undefined;\n /**\n * A template reference variable that represents the next icon in a UI component.\n * @type {TemplateRef<any> | undefined}\n * @group Templates\n */\n @ContentChild('nexticon', { descendants: false }) nextIconTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n @ViewChild('content') content: ElementRef<HTMLDivElement>;\n\n @ViewChild('prevButton') prevButton: ElementRef<HTMLButtonElement>;\n\n @ViewChild('nextButton') nextButton: ElementRef<HTMLButtonElement>;\n\n @ViewChild('inkbar') inkbar: ElementRef<HTMLSpanElement>;\n\n @ViewChild('tabs') tabs: ElementRef<HTMLDivElement>;\n\n pcTabs = inject(forwardRef(() => Tabs));\n\n isPrevButtonEnabled = signal<boolean>(false);\n\n isNextButtonEnabled = signal<boolean>(false);\n\n resizeObserver!: ResizeObserver;\n\n showNavigators = computed(() => this.pcTabs.showNavigators());\n\n tabindex = computed(() => this.pcTabs.tabindex());\n\n scrollable = computed(() => this.pcTabs.scrollable());\n\n _componentStyle = inject(TabListStyle);\n\n constructor() {\n super();\n effect(() => {\n this.pcTabs.value();\n if (isPlatformBrowser(this.platformId)) {\n setTimeout(() => {\n this.updateInkBar();\n });\n }\n });\n }\n\n get prevButtonAriaLabel() {\n return this.config?.translation?.aria?.previous;\n }\n\n get nextButtonAriaLabel() {\n return this.config?.translation?.aria?.next;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (this.showNavigators() && isPlatformBrowser(this.platformId)) {\n this.updateButtonState();\n this.bindResizeObserver();\n }\n }\n\n _prevIconTemplate: TemplateRef<any> | undefined;\n\n _nextIconTemplate: TemplateRef<any> | undefined;\n\n ngAfterContentInit() {\n this.templates?.forEach((t) => {\n switch (t.getType()) {\n case 'previcon':\n this._prevIconTemplate = t.template;\n break;\n case 'nexticon':\n this._nextIconTemplate = t.template;\n break;\n }\n });\n }\n\n ngOnDestroy() {\n this.unbindResizeObserver();\n super.ngOnDestroy();\n }\n\n onScroll(event: Event) {\n this.showNavigators() && this.updateButtonState();\n\n event.preventDefault();\n }\n\n onPrevButtonClick() {\n const _content = this.content.nativeElement;\n const width = getWidth(_content);\n const pos = Math.abs(_content.scrollLeft) - width;\n const scrollLeft = pos <= 0 ? 0 : pos;\n\n _content.scrollLeft = isRTL(_content) ? -1 * scrollLeft : scrollLeft;\n }\n\n onNextButtonClick() {\n const _content = this.content.nativeElement;\n const width = getWidth(_content) - this.getVisibleButtonWidths();\n const pos = _content.scrollLeft + width;\n const lastPos = _content.scrollWidth - width;\n const scrollLeft = pos >= lastPos ? lastPos : pos;\n\n _content.scrollLeft = isRTL(_content) ? -1 * scrollLeft : scrollLeft;\n }\n\n updateButtonState() {\n const _content = this.content?.nativeElement;\n const _list = this.el?.nativeElement;\n\n const { scrollWidth, offsetWidth } = _content;\n const scrollLeft = Math.abs(_content.scrollLeft);\n const width = getWidth(_content);\n\n this.isPrevButtonEnabled.set(scrollLeft !== 0);\n this.isNextButtonEnabled.set(_list.offsetWidth >= offsetWidth && Math.abs(scrollLeft - scrollWidth + width) > 1);\n }\n\n updateInkBar() {\n const _content = this.content?.nativeElement;\n const _inkbar = this.inkbar?.nativeElement;\n const _tabs = this.tabs?.nativeElement;\n\n const activeTab = findSingle(_content, '[data-pc-name=\"tab\"][data-p-active=\"true\"]');\n if (_inkbar) {\n _inkbar.style.width = getOuterWidth(activeTab) + 'px';\n _inkbar.style.left = <any>getOffset(activeTab).left - <any>getOffset(_tabs).left + 'px';\n }\n }\n\n getVisibleButtonWidths() {\n const _prevBtn = this.prevButton?.nativeElement;\n const _nextBtn = this.nextButton?.nativeElement;\n\n return [_prevBtn, _nextBtn].reduce((acc, el) => (el ? acc + getWidth(el) : acc), 0);\n }\n\n bindResizeObserver() {\n this.resizeObserver = new ResizeObserver(() => this.updateButtonState());\n this.resizeObserver.observe(this.el.nativeElement);\n }\n\n unbindResizeObserver() {\n if (this.resizeObserver) {\n this.resizeObserver.unobserve(this.el.nativeElement);\n this.resizeObserver = null!;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => [\n 'p-tab',\n {\n 'p-tab-active': instance.active(),\n 'p-disabled': instance.disabled()\n }\n ]\n};\n\n@Injectable()\nexport class TabStyle extends BaseStyle {\n name = 'tab';\n\n classes = classes;\n}\n\n/**\n *\n * Tabs facilitates seamless switching between different views.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabsstyle\n *\n */\n\nexport enum TabClasses {\n /**\n * Class name of the tab list element\n */\n tab = 'p-tab'\n}\n\nexport interface TabStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, booleanAttribute, ChangeDetectionStrategy, Component, computed, ElementRef, forwardRef, HostListener, inject, input, model, OnDestroy, ViewEncapsulation } from '@angular/core';\nimport { equals, focus, getAttribute } from '@primeuix/utils';\nimport { SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Ripple } from 'primeng/ripple';\nimport { TabList } from './tablist';\nimport { Tabs } from './tabs';\nimport { TabStyle } from './style/tabstyle';\n\n/**\n * Defines valid properties in Tab component.\n * @group Components\n */\n@Component({\n selector: 'p-tab',\n standalone: true,\n imports: [CommonModule, SharedModule],\n template: ` <ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tab\"',\n '[attr.id]': 'id()',\n '[attr.aria-controls]': 'ariaControls()',\n '[attr.role]': '\"tab\"',\n '[attr.aria-selected]': 'active()',\n '[attr.aria-disabled]': 'disabled()',\n '[attr.data-p-disabled]': 'disabled()',\n '[attr.data-p-active]': 'active()',\n '[attr.tabindex]': 'tabindex()'\n },\n hostDirectives: [Ripple],\n providers: [TabStyle]\n})\nexport class Tab extends BaseComponent implements AfterViewInit, OnDestroy {\n /**\n * Value of tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<number | string | undefined>();\n /**\n * Whether the tab is disabled.\n * @defaultValue false\n * @group Props\n */\n disabled = input(false, { transform: booleanAttribute });\n\n pcTabs = inject(forwardRef(() => Tabs));\n\n pcTabList = inject(forwardRef(() => TabList));\n\n el = inject(ElementRef);\n\n _componentStyle = inject(TabStyle);\n\n ripple = computed(() => this.config.ripple());\n\n id = computed(() => `${this.pcTabs.id()}_tab_${this.value()}`);\n\n ariaControls = computed(() => `${this.pcTabs.id()}_tabpanel_${this.value()}`);\n\n active = computed(() => equals(this.pcTabs.value(), this.value()));\n\n tabindex = computed(() => (this.disabled() ? -1 : this.active() ? this.pcTabs.tabindex() : -1));\n\n mutationObserver: MutationObserver | undefined;\n\n @HostListener('focus', ['$event']) onFocus(event: FocusEvent) {\n if (!this.disabled()) {\n this.pcTabs.selectOnFocus() && this.changeActiveValue();\n }\n }\n\n @HostListener('click', ['$event']) onClick(event: MouseEvent) {\n if (!this.disabled()) {\n this.changeActiveValue();\n }\n }\n\n @HostListener('keydown', ['$event']) onKeyDown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowRight':\n this.onArrowRightKey(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeftKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n case 'PageDown':\n this.onPageDownKey(event);\n break;\n\n case 'PageUp':\n this.onPageUpKey(event);\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Space':\n this.onEnterKey(event);\n break;\n\n default:\n break;\n }\n\n event.stopPropagation();\n }\n\n ngAfterViewInit(): void {\n super.ngAfterViewInit();\n this.bindMutationObserver();\n }\n\n onArrowRightKey(event) {\n const nextTab = this.findNextTab(event.currentTarget);\n nextTab ? this.changeFocusedTab(event, nextTab) : this.onHomeKey(event);\n event.preventDefault();\n }\n\n onArrowLeftKey(event) {\n const prevTab = this.findPrevTab(event.currentTarget);\n\n prevTab ? this.changeFocusedTab(event, prevTab) : this.onEndKey(event);\n event.preventDefault();\n }\n\n onHomeKey(event) {\n const firstTab = this.findFirstTab();\n\n this.changeFocusedTab(event, firstTab);\n event.preventDefault();\n }\n\n onEndKey(event) {\n const lastTab = this.findLastTab();\n\n this.changeFocusedTab(event, lastTab);\n event.preventDefault();\n }\n\n onPageDownKey(event) {\n this.scrollInView(this.findLastTab());\n event.preventDefault();\n }\n\n onPageUpKey(event) {\n this.scrollInView(this.findFirstTab());\n event.preventDefault();\n }\n\n onEnterKey(event) {\n if (!this.disabled()) {\n this.changeActiveValue();\n }\n event.preventDefault();\n }\n\n findNextTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'inkbar' ? this.findNextTab(element) : element) : null;\n }\n\n findPrevTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'inkbar' ? this.findPrevTab(element) : element) : null;\n }\n\n findFirstTab() {\n return this.findNextTab(this.pcTabList?.tabs?.nativeElement?.firstElementChild, true);\n }\n\n findLastTab() {\n return this.findPrevTab(this.pcTabList?.tabs?.nativeElement?.lastElementChild, true);\n }\n\n changeActiveValue() {\n this.pcTabs.updateValue(this.value());\n }\n\n changeFocusedTab(event, element) {\n focus(element);\n this.scrollInView(element);\n }\n\n scrollInView(element) {\n element?.scrollIntoView?.({ block: 'nearest' });\n }\n\n bindMutationObserver() {\n if (isPlatformBrowser(this.platformId)) {\n this.mutationObserver = new MutationObserver((mutations) => {\n mutations.forEach(() => {\n if (this.active()) {\n this.pcTabList?.updateInkBar();\n }\n });\n });\n this.mutationObserver.observe(this.el.nativeElement, { childList: true, characterData: true, subtree: true });\n }\n }\n\n unbindMutationObserver() {\n this.mutationObserver?.disconnect();\n }\n\n ngOnDestroy() {\n if (this.mutationObserver) {\n this.unbindMutationObserver();\n }\n super.ngOnDestroy();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => [\n 'p-tabpanel',\n {\n 'p-tabpanel-active': instance.active()\n }\n ]\n};\n\n@Injectable()\nexport class TabPanelStyle extends BaseStyle {\n name = 'tabpanel';\n\n classes = classes;\n}\n\n/**\n *\n * Tab is a helper component for Tabs component.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabstyle\n *\n */\n\nexport enum TabPanelClasses {\n /**\n * Class name of the root element\n */\n root = 'p-tabpanel'\n}\n\nexport interface TabPanelStyle extends BaseStyle {}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, contentChild, forwardRef, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { equals } from '@primeuix/utils';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { TabPanelStyle } from './style/tabpanelstyle';\nimport { Tabs } from './tabs';\n\n/**\n * TabPanel is a helper component for Tabs component.\n * @group Components\n */\n@Component({\n selector: 'p-tabpanel',\n standalone: true,\n imports: [NgTemplateOutlet],\n template: `\n <ng-template #defaultContent>\n <ng-content />\n </ng-template>\n\n @if (shouldRender()) {\n <ng-container *ngTemplateOutlet=\"content() ? content() : defaultContent\" />\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [TabPanelStyle],\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tabpanel\"',\n '[attr.id]': 'id()',\n '[attr.role]': '\"tabpanel\"',\n '[attr.aria-labelledby]': 'ariaLabelledby()',\n '[attr.data-p-active]': 'active()',\n '[hidden]': '!active()'\n }\n})\nexport class TabPanel extends BaseComponent {\n pcTabs = inject<Tabs>(forwardRef(() => Tabs));\n\n /**\n * When enabled, tab is not rendered until activation.\n * @type boolean\n * @defaultValue false\n * @group Props\n */\n lazy = input(false, { transform: booleanAttribute });\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<string | number | undefined>(undefined);\n /**\n * Template for initializing complex content when lazy is enabled.\n * @group Templates\n */\n content = contentChild('content');\n\n id = computed(() => `${this.pcTabs.id()}_tabpanel_${this.value()}`);\n\n ariaLabelledby = computed(() => `${this.pcTabs.id()}_tab_${this.value()}`);\n\n active = computed(() => equals(this.pcTabs.value(), this.value()));\n\n isLazyEnabled = computed(() => this.pcTabs.lazy() || this.lazy());\n\n private hasBeenRendered = false;\n\n shouldRender = computed(() => {\n if (!this.isLazyEnabled() || this.hasBeenRendered) {\n return true;\n }\n\n if (this.active()) {\n this.hasBeenRendered = true;\n return true;\n }\n\n return false;\n });\n\n _componentStyle = inject(TabPanelStyle);\n}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: 'p-tabpanels'\n};\n\n@Injectable()\nexport class TabPanelsStyle extends BaseStyle {\n name = 'tabpanels';\n\n classes = classes;\n}\n\n/**\n *\n * Tab is a helper component for Tabs component.\n *\n * [Live Demo](https://www.primeng.org/tabs/)\n *\n * @module tabpanelstyle\n *\n */\n\nexport enum TabPanelsClasses {\n /**\n * Class name of the root element\n */\n root = 'p-tabpanels'\n}\n\nexport interface TabPanelsStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { TabPanelsStyle } from './style/tabpanelsstyle';\n\n/**\n * TabPanels is a helper component for Tabs component.\n * @group Components\n */\n@Component({\n selector: 'p-tabpanels',\n standalone: true,\n imports: [CommonModule],\n template: ` <ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tabpanels\"',\n '[attr.role]': '\"presentation\"'\n },\n providers: [TabPanelsStyle]\n})\nexport class TabPanels extends BaseComponent {\n _componentStyle = inject(TabPanelsStyle);\n}\n","import { CommonModule } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, model, NgModule, numberAttribute, signal, ViewEncapsulation } from '@angular/core';\n\nimport { uuid } from '@primeuix/utils';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { TabsStyle } from './style/tabsstyle';\nimport { Tab } from './tab';\nimport { TabList } from './tablist';\nimport { TabPanel } from './tabpanel';\nimport { TabPanels } from './tabpanels';\n\n/**\n * Tabs facilitates seamless switching between different views.\n * @group Components\n */\n@Component({\n selector: 'p-tabs',\n standalone: true,\n imports: [CommonModule],\n template: ` <ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [TabsStyle],\n host: {\n '[class]': 'cx(\"root\")',\n '[attr.data-pc-name]': '\"tabs\"',\n '[attr.id]': 'id()'\n }\n})\nexport class Tabs extends BaseComponent {\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<string | number | undefined>(undefined);\n /**\n * When specified, enables horizontal and/or vertical scrolling.\n * @type boolean\n * @defaultValue false\n * @group Props\n */\n scrollable = input(false, { transform: booleanAttribute });\n /**\n * When enabled, tabs are not rendered until activation.\n * @type boolean\n * @defaultValue false\n * @group Props\n */\n lazy = input(false, { transform: booleanAttribute });\n /**\n * When enabled, the focused tab is activated.\n * @type boolean\n * @defaultValue false\n * @group Props\n */\n selectOnFocus = input(false, { transform: booleanAttribute });\n /**\n * Whether to display navigation buttons in container when scrollable is enabled.\n * @type boolean\n * @defaultValue true\n * @group Props\n */\n showNavigators = input(true, { transform: booleanAttribute });\n /**\n * Tabindex of the tab buttons.\n * @type number\n * @defaultValue 0\n * @group Props\n */\n tabindex = input(0, { transform: numberAttribute });\n\n id = signal<string>(uuid('pn_id_'));\n\n _componentStyle = inject(TabsStyle);\n\n updateValue(newValue) {\n this.value.update(() => newValue);\n }\n}\n\n@NgModule({\n imports: [Tabs, TabPanels, TabPanel, TabList, Tab],\n exports: [Tabs, TabPanels, TabPanel, TabList, Tab]\n})\nexport class TabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["classes"],"mappings":"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"}
|