primeng
Version:
PrimeNG is a premium UI library for Angular featuring a rich set of 90+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeBlock,
581 lines (576 loc) • 31.2 kB
JavaScript
export * from 'primeng/types/dock';
import { isPlatformBrowser, NgTemplateOutlet } from '@angular/common';
import * as i0 from '@angular/core';
import { Injectable, InjectionToken, input, output, contentChild, viewChild, computed, signal, inject, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
import * as i2 from '@angular/router';
import { RouterModule, RouterLink, RouterLinkActive } from '@angular/router';
import { uuid, find, findSingle } from '@primeuix/utils';
import { SharedModule } from 'primeng/api';
import { Badge } from 'primeng/badge';
import { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';
import * as i1 from 'primeng/bind';
import { Bind } from 'primeng/bind';
import { Ripple } from 'primeng/ripple';
import * as i3 from 'primeng/tooltip';
import { TooltipModule } from 'primeng/tooltip';
import { style } from '@primeuix/styles/dock';
import { BaseStyle } from 'primeng/base';
const classes = {
root: ({ instance }) => [
'p-dock p-component',
`p-dock-${instance.position()}`,
{
'p-dock-mobile': instance.queryMatches()
}
],
listContainer: 'p-dock-list-container',
list: 'p-dock-list',
item: ({ instance, item, id }) => [
'p-dock-item',
{
'p-focus': instance.isItemActive(id),
'p-disabled': instance.disabled(item)
}
],
itemContent: 'p-dock-item-content',
itemLink: 'p-dock-item-link',
itemIcon: 'p-dock-item-icon'
};
class DockStyle extends BaseStyle {
name = 'dock';
style = style;
classes = classes;
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: DockStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: DockStyle });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: DockStyle, decorators: [{
type: Injectable
}] });
/**
*
* Dock is a navigation component consisting of menuitems.
*
* [Live Demo](https://www.primeng.org/dock/)
*
* @module dockstyle
*
*/
var DockClasses;
(function (DockClasses) {
/**
* Class name of the root element
*/
DockClasses["root"] = "p-dock";
/**
* Class name of the list container element
*/
DockClasses["listContainer"] = "p-dock-list-container";
/**
* Class name of the list element
*/
DockClasses["list"] = "p-dock-list";
/**
* Class name of the item element
*/
DockClasses["item"] = "p-dock-item";
/**
* Class name of the item content element
*/
DockClasses["itemContent"] = "p-dock-item-content";
/**
* Class name of the item link element
*/
DockClasses["itemLink"] = "p-dock-item-link";
/**
* Class name of the item icon element
*/
DockClasses["itemIcon"] = "p-dock-item-icon";
})(DockClasses || (DockClasses = {}));
const DOCK_INSTANCE = new InjectionToken('DOCK_INSTANCE');
/**
* Dock is a navigation component consisting of menuitems.
* @group Components
*/
class Dock extends BaseComponent {
componentName = 'Dock';
/**
* Current id state as a string.
* @group Props
*/
id = input(/* @ts-ignore */
...(ngDevMode ? [undefined, { debugName: "id" }] : /* istanbul ignore next */ []));
/**
* MenuModel instance to define the action items.
* @group Props
*/
model = input(null, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "model" }] : /* istanbul ignore next */ []));
/**
* Position of element.
* @group Props
*/
position = input('bottom', /* @ts-ignore */
...(ngDevMode ? [{ debugName: "position" }] : /* istanbul ignore next */ []));
/**
* Defines a string that labels the input for accessibility.
* @group Props
*/
ariaLabel = input(/* @ts-ignore */
...(ngDevMode ? [undefined, { debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
/**
* The breakpoint to define the maximum width boundary.
* @defaultValue 960px
* @group Props
*/
breakpoint = input('960px', /* @ts-ignore */
...(ngDevMode ? [{ debugName: "breakpoint" }] : /* istanbul ignore next */ []));
/**
* Defines a string that labels the dropdown button for accessibility.
* @group Props
*/
ariaLabelledBy = input(/* @ts-ignore */
...(ngDevMode ? [undefined, { debugName: "ariaLabelledBy" }] : /* istanbul ignore next */ []));
/**
* Callback to execute when button is focused.
* @param {FocusEvent} event - Focus event.
* @group Emits
*/
onFocus = output();
/**
* Callback to invoke when the component loses focus.
* @param {FocusEvent} event - Focus event.
* @group Emits
*/
onBlur = output();
/**
* Custom item template.
* @param {DockItemTemplateContext} context - item template context.
* @group Templates
*/
itemTemplate = contentChild('item', { ...(ngDevMode ? { debugName: "itemTemplate" } : /* istanbul ignore next */ {}), descendants: false });
listViewChild = viewChild('list', /* @ts-ignore */
...(ngDevMode ? [{ debugName: "listViewChild" }] : /* istanbul ignore next */ []));
_internalId = uuid('pn_id_');
$id = computed(() => this.id() || this._internalId, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "$id" }] : /* istanbul ignore next */ []));
ariaOrientation = computed(() => {
const pos = this.position();
return pos === 'bottom' || pos === 'top' ? 'horizontal' : 'vertical';
}, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "ariaOrientation" }] : /* istanbul ignore next */ []));
currentIndex = signal(-3, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "currentIndex" }] : /* istanbul ignore next */ []));
tabindex = 0;
focused = signal(false, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "focused" }] : /* istanbul ignore next */ []));
focusedOptionIndex = signal(-1, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "focusedOptionIndex" }] : /* istanbul ignore next */ []));
_componentStyle = inject(DockStyle);
bindDirectiveInstance = inject(Bind, { self: true });
$pcDock = inject(DOCK_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
matchMediaListener;
query;
queryMatches = signal(false, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "queryMatches" }] : /* istanbul ignore next */ []));
mobileActive = signal(false, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "mobileActive" }] : /* istanbul ignore next */ []));
focusedOptionId = computed(() => {
const index = this.focusedOptionIndex();
return index !== -1 && index !== '-1' ? String(index) : null;
}, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "focusedOptionId" }] : /* istanbul ignore next */ []));
activeDescendant = computed(() => {
return this.focused() ? this.focusedOptionId() : undefined;
}, /* @ts-ignore */
...(ngDevMode ? [{ debugName: "activeDescendant" }] : /* istanbul ignore next */ []));
getItemTabIndex(item) {
if (item.disabled)
return null;
return item.tabindex ?? '-1';
}
getRouterLinkActiveOptions(item) {
return item.routerLinkActiveOptions || { exact: false };
}
getItemUrl(item) {
return item.url || null;
}
onInit() {
this.bindMatchMediaListener();
}
onDestroy() {
this.unbindMatchMediaListener();
}
getItemId(item, index) {
return item && item?.id ? item.id : `${index}`;
}
disabled(item) {
return typeof item.disabled === 'function' ? item.disabled() : item.disabled || false;
}
isItemActive(id) {
return String(id) === String(this.focusedOptionIndex());
}
onListMouseLeave() {
this.currentIndex.set(-3);
}
onItemMouseEnter(index) {
this.currentIndex.set(index);
}
onItemClick(e, item) {
if (item.command) {
item.command({ originalEvent: e, item });
}
}
onListFocus(event) {
this.focused.set(true);
this.changeFocusedOptionIndex(0);
this.onFocus.emit(event);
}
onListBlur(event) {
this.focused.set(false);
this.focusedOptionIndex.set(-1);
this.onBlur.emit(event);
}
onListKeyDown(event) {
const pos = this.position();
switch (event.code) {
case 'ArrowDown': {
if (pos === 'left' || pos === 'right')
this.onArrowDownKey();
event.preventDefault();
break;
}
case 'ArrowUp': {
if (pos === 'left' || pos === 'right')
this.onArrowUpKey();
event.preventDefault();
break;
}
case 'ArrowRight': {
if (pos === 'top' || pos === 'bottom')
this.onArrowDownKey();
event.preventDefault();
break;
}
case 'ArrowLeft': {
if (pos === 'top' || pos === 'bottom')
this.onArrowUpKey();
event.preventDefault();
break;
}
case 'Home': {
this.onHomeKey();
event.preventDefault();
break;
}
case 'End': {
this.onEndKey();
event.preventDefault();
break;
}
case 'Enter':
case 'Space': {
this.onSpaceKey();
event.preventDefault();
break;
}
default:
break;
}
}
onArrowDownKey() {
const optionIndex = this.findNextOptionIndex(this.focusedOptionIndex());
this.changeFocusedOptionIndex(optionIndex);
}
onArrowUpKey() {
const optionIndex = this.findPrevOptionIndex(this.focusedOptionIndex());
this.changeFocusedOptionIndex(optionIndex);
}
onHomeKey() {
this.changeFocusedOptionIndex(0);
}
onEndKey() {
this.changeFocusedOptionIndex(find(this.listViewChild()?.nativeElement, 'li[data-pc-section="item"][data-p-disabled="false"]').length - 1);
}
onSpaceKey() {
const element = findSingle(this.listViewChild()?.nativeElement, `li[id="${`${this.focusedOptionIndex()}`}"]`);
const anchorElement = element && findSingle(element, 'a,button');
anchorElement ? anchorElement.click() : element && element.click();
}
findNextOptionIndex(index) {
const menuitems = find(this.listViewChild()?.nativeElement, 'li[data-pc-section="item"][data-p-disabled="false"]');
const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);
return matchedOptionIndex > -1 ? matchedOptionIndex + 1 : 0;
}
changeFocusedOptionIndex(index) {
const menuitems = find(this.listViewChild()?.nativeElement, 'li[data-pc-section="item"][data-p-disabled="false"]');
let order = index >= menuitems.length ? menuitems.length - 1 : index < 0 ? 0 : index;
this.focusedOptionIndex.set(menuitems[order]?.getAttribute('id') ?? -1);
}
findPrevOptionIndex(index) {
const menuitems = find(this.listViewChild()?.nativeElement, 'li[data-pc-section="item"][data-p-disabled="false"]');
const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);
return matchedOptionIndex > -1 ? matchedOptionIndex - 1 : 0;
}
isClickableRouterLink(item) {
return !!item.routerLink && !this.disabled(item);
}
onAfterViewChecked() {
this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
}
getPTOptions(item, index, key) {
return this.ptm(key, {
context: {
item,
index
}
});
}
bindMatchMediaListener() {
if (isPlatformBrowser(this.platformId) && !this.matchMediaListener) {
const query = window.matchMedia(`(max-width: ${this.breakpoint()})`);
this.query = query;
this.queryMatches.set(query.matches);
this.matchMediaListener = () => {
this.queryMatches.set(query.matches);
this.mobileActive.set(false);
};
this.renderer.listen(this.query, 'change', this.matchMediaListener.bind(this));
}
}
unbindMatchMediaListener() {
if (this.matchMediaListener) {
this.matchMediaListener();
this.matchMediaListener = null;
this.query = null;
}
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: Dock, deps: null, target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.6", type: Dock, isStandalone: true, selector: "p-dock", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, breakpoint: { classPropertyName: "breakpoint", publicName: "breakpoint", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onFocus: "onFocus", onBlur: "onBlur" }, host: { properties: { "class": "cx(\"root\")" } }, providers: [DockStyle, { provide: DOCK_INSTANCE, useExisting: Dock }, { provide: PARENT_INSTANCE, useExisting: Dock }], queries: [{ propertyName: "itemTemplate", first: true, predicate: ["item"], isSignal: true }], viewQueries: [{ propertyName: "listViewChild", first: true, predicate: ["list"], descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
<div [class]="cx('listContainer')" [pBind]="ptm('listContainer')">
<ul
#list
[attr.id]="$id()"
[class]="cx('list')"
role="menu"
[attr.aria-orientation]="ariaOrientation()"
[attr.aria-activedescendant]="activeDescendant()"
[tabindex]="tabindex"
[attr.aria-label]="ariaLabel()"
[attr.aria-labelledby]="ariaLabelledBy()"
(focus)="onListFocus($event)"
(blur)="onListBlur($event)"
(keydown)="onListKeyDown($event)"
(mouseleave)="onListMouseLeave()"
[pBind]="ptm('list')"
>
(item of model(); track item.label; let i = $index) {
(item.visible !== false) {
<li
[attr.id]="getItemId(item, i)"
[class]="cn(cx('item', { item, id: getItemId(item, i) }), item?.styleClass)"
[style]="item.style"
role="menuitem"
[attr.aria-label]="item.label"
[attr.aria-disabled]="disabled(item) || false"
(click)="onItemClick($event, item)"
(mouseenter)="onItemMouseEnter(i)"
[pBind]="getPTOptions(item, i, 'item')"
[attr.data-p-focused]="isItemActive(getItemId(item, i))"
[attr.data-p-disabled]="disabled(item) || false"
>
<div [class]="cx('itemContent')" [pBind]="getPTOptions(item, i, 'itemContent')">
(isClickableRouterLink(item)) {
<a
pRipple
[routerLink]="item.routerLink"
[queryParams]="item.queryParams"
[class]="cn(cx('itemLink'), item?.linkClass)"
[style]="item?.linkStyle"
routerLinkActive="router-link-active"
[routerLinkActiveOptions]="getRouterLinkActiveOptions(item)"
[target]="item.target"
[attr.title]="item.title"
[attr.data-automationid]="item.automationId"
[attr.tabindex]="getItemTabIndex(item)"
pTooltip
[tooltipOptions]="item.tooltipOptions"
[pTooltipUnstyled]="unstyled()"
[fragment]="item.fragment"
[queryParamsHandling]="item.queryParamsHandling"
[preserveFragment]="item.preserveFragment"
[skipLocationChange]="item.skipLocationChange"
[replaceUrl]="item.replaceUrl"
[state]="item.state"
[pBind]="getPTOptions(item, i, 'itemLink')"
>
(item.icon && !itemTemplate()) {
<span [class]="cn(cx('itemIcon'), item.icon, item.iconClass)" [style]="item.iconStyle" [pBind]="getPTOptions(item, i, 'itemIcon')"></span>
}
<ng-container *ngTemplateOutlet="itemTemplate(); context: { $implicit: item }"></ng-container>
(item.badge) {
<p-badge [class]="item.badgeStyleClass" [value]="item.badge" [pt]="getPTOptions(item, i, 'pcBadge')" [unstyled]="unstyled()" />
}
</a>
} {
<a
[tooltipPosition]="item.tooltipPosition"
[attr.href]="getItemUrl(item)"
[class]="cn(cx('itemLink'), item?.linkClass)"
[style]="item?.linkStyle"
pRipple
pTooltip
[tooltipOptions]="item.tooltipOptions"
[pTooltipUnstyled]="unstyled()"
[target]="item.target"
[attr.title]="item.title"
[attr.data-automationid]="item.automationId"
[attr.tabindex]="getItemTabIndex(item)"
[pBind]="getPTOptions(item, i, 'itemLink')"
>
(item.icon && !itemTemplate()) {
<span [class]="cn(cx('itemIcon'), item.icon, item.iconClass)" [style]="item.iconStyle" [pBind]="getPTOptions(item, i, 'itemIcon')"></span>
}
<ng-container *ngTemplateOutlet="itemTemplate(); context: { $implicit: item }"></ng-container>
(item.badge) {
<p-badge [class]="item.badgeStyleClass" [value]="item.badge" [pt]="getPTOptions(item, i, 'pcBadge')" [unstyled]="unstyled()" />
}
</a>
}
</div>
</li>
}
}
</ul>
</div>
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "browserUrl", "routerLink"] }, { kind: "directive", type: i2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "showOnEllipsis", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "pTooltipPT", "pTooltipUnstyled"] }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "ngmodule", type: SharedModule }, { kind: "component", type: Badge, selector: "p-badge", inputs: ["badgeSize", "size", "severity", "value", "badgeDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: Dock, decorators: [{
type: Component,
args: [{
selector: 'p-dock',
standalone: true,
imports: [NgTemplateOutlet, RouterModule, RouterLink, RouterLinkActive, Ripple, TooltipModule, SharedModule, Bind, Badge],
template: `
<div [class]="cx('listContainer')" [pBind]="ptm('listContainer')">
<ul
#list
[attr.id]="$id()"
[class]="cx('list')"
role="menu"
[attr.aria-orientation]="ariaOrientation()"
[attr.aria-activedescendant]="activeDescendant()"
[tabindex]="tabindex"
[attr.aria-label]="ariaLabel()"
[attr.aria-labelledby]="ariaLabelledBy()"
(focus)="onListFocus($event)"
(blur)="onListBlur($event)"
(keydown)="onListKeyDown($event)"
(mouseleave)="onListMouseLeave()"
[pBind]="ptm('list')"
>
(item of model(); track item.label; let i = $index) {
(item.visible !== false) {
<li
[attr.id]="getItemId(item, i)"
[class]="cn(cx('item', { item, id: getItemId(item, i) }), item?.styleClass)"
[style]="item.style"
role="menuitem"
[attr.aria-label]="item.label"
[attr.aria-disabled]="disabled(item) || false"
(click)="onItemClick($event, item)"
(mouseenter)="onItemMouseEnter(i)"
[pBind]="getPTOptions(item, i, 'item')"
[attr.data-p-focused]="isItemActive(getItemId(item, i))"
[attr.data-p-disabled]="disabled(item) || false"
>
<div [class]="cx('itemContent')" [pBind]="getPTOptions(item, i, 'itemContent')">
(isClickableRouterLink(item)) {
<a
pRipple
[routerLink]="item.routerLink"
[queryParams]="item.queryParams"
[class]="cn(cx('itemLink'), item?.linkClass)"
[style]="item?.linkStyle"
routerLinkActive="router-link-active"
[routerLinkActiveOptions]="getRouterLinkActiveOptions(item)"
[target]="item.target"
[attr.title]="item.title"
[attr.data-automationid]="item.automationId"
[attr.tabindex]="getItemTabIndex(item)"
pTooltip
[tooltipOptions]="item.tooltipOptions"
[pTooltipUnstyled]="unstyled()"
[fragment]="item.fragment"
[queryParamsHandling]="item.queryParamsHandling"
[preserveFragment]="item.preserveFragment"
[skipLocationChange]="item.skipLocationChange"
[replaceUrl]="item.replaceUrl"
[state]="item.state"
[pBind]="getPTOptions(item, i, 'itemLink')"
>
(item.icon && !itemTemplate()) {
<span [class]="cn(cx('itemIcon'), item.icon, item.iconClass)" [style]="item.iconStyle" [pBind]="getPTOptions(item, i, 'itemIcon')"></span>
}
<ng-container *ngTemplateOutlet="itemTemplate(); context: { $implicit: item }"></ng-container>
(item.badge) {
<p-badge [class]="item.badgeStyleClass" [value]="item.badge" [pt]="getPTOptions(item, i, 'pcBadge')" [unstyled]="unstyled()" />
}
</a>
} {
<a
[tooltipPosition]="item.tooltipPosition"
[attr.href]="getItemUrl(item)"
[class]="cn(cx('itemLink'), item?.linkClass)"
[style]="item?.linkStyle"
pRipple
pTooltip
[tooltipOptions]="item.tooltipOptions"
[pTooltipUnstyled]="unstyled()"
[target]="item.target"
[attr.title]="item.title"
[attr.data-automationid]="item.automationId"
[attr.tabindex]="getItemTabIndex(item)"
[pBind]="getPTOptions(item, i, 'itemLink')"
>
(item.icon && !itemTemplate()) {
<span [class]="cn(cx('itemIcon'), item.icon, item.iconClass)" [style]="item.iconStyle" [pBind]="getPTOptions(item, i, 'itemIcon')"></span>
}
<ng-container *ngTemplateOutlet="itemTemplate(); context: { $implicit: item }"></ng-container>
(item.badge) {
<p-badge [class]="item.badgeStyleClass" [value]="item.badge" [pt]="getPTOptions(item, i, 'pcBadge')" [unstyled]="unstyled()" />
}
</a>
}
</div>
</li>
}
}
</ul>
</div>
`,
changeDetection: ChangeDetectionStrategy.OnPush,
encapsulation: ViewEncapsulation.None,
providers: [DockStyle, { provide: DOCK_INSTANCE, useExisting: Dock }, { provide: PARENT_INSTANCE, useExisting: Dock }],
host: {
'[class]': 'cx("root")'
},
hostDirectives: [Bind]
}]
}], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], model: [{ type: i0.Input, args: [{ isSignal: true, alias: "model", required: false }] }], position: [{ type: i0.Input, args: [{ isSignal: true, alias: "position", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], breakpoint: [{ type: i0.Input, args: [{ isSignal: true, alias: "breakpoint", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], onFocus: [{ type: i0.Output, args: ["onFocus"] }], onBlur: [{ type: i0.Output, args: ["onBlur"] }], itemTemplate: [{ type: i0.ContentChild, args: ['item', { ...{ descendants: false }, isSignal: true }] }], listViewChild: [{ type: i0.ViewChild, args: ['list', { isSignal: true }] }] } });
class DockModule {
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: DockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.6", ngImport: i0, type: DockModule, imports: [Dock, SharedModule], exports: [Dock, SharedModule] });
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: DockModule, imports: [Dock, SharedModule, SharedModule] });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: DockModule, decorators: [{
type: NgModule,
args: [{
imports: [Dock, SharedModule],
exports: [Dock, SharedModule]
}]
}] });
/**
* Generated bundle index. Do not edit.
*/
export { Dock, DockClasses, DockModule, DockStyle };
//# sourceMappingURL=primeng-dock.mjs.map