primeng
Version:
PrimeNG is an open source UI library for Angular featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeB
1,109 lines (1,070 loc) • 119 kB
JavaScript
import * as i1 from '@angular/common';
import { CommonModule } from '@angular/common';
import * as i0 from '@angular/core';
import { Injectable, inject, forwardRef, booleanAttribute, numberAttribute, Component, ViewEncapsulation, Input, EventEmitter, ChangeDetectionStrategy, Optional, Output, ContentChild, ViewChild, ContentChildren, NgModule } from '@angular/core';
import * as i2 from '@angular/forms';
import { FormsModule } from '@angular/forms';
import { find, hasClass, findSingle, focus, removeAccents, resolveFieldData } from '@primeuix/utils';
import * as i3 from 'primeng/api';
import { SharedModule, TranslationKeys, PrimeTemplate } from 'primeng/api';
import { BaseComponent } from 'primeng/basecomponent';
import { Checkbox } from 'primeng/checkbox';
import { IconField } from 'primeng/iconfield';
import { ChevronRightIcon, ChevronDownIcon, SpinnerIcon, SearchIcon } from 'primeng/icons';
import { InputIcon } from 'primeng/inputicon';
import { InputText } from 'primeng/inputtext';
import { Ripple } from 'primeng/ripple';
import { Scroller } from 'primeng/scroller';
import { BaseStyle } from 'primeng/base';
const theme = ({ dt }) => `
.p-tree {
background: ${dt('tree.background')};
color: ${dt('tree.color')};
padding: ${dt('tree.padding')};
}
.p-tree-root-children,
.p-tree-node-children {
display: flex;
list-style-type: none;
flex-direction: column;
margin: 0;
gap: ${dt('tree.gap')};
}
.p-tree-root-children {
padding: 0;
padding-block-start: ${dt('tree.gap')};
}
.p-tree-node-children {
padding-block-start: ${dt('tree.gap')};
padding-inline-start: ${dt('tree.indent')};
}
.p-tree-node {
padding: 0;
outline: 0 none;
}
.p-tree-node-content {
border-radius: ${dt('tree.node.border.radius')};
padding: ${dt('tree.node.padding')};
display: flex;
align-items: center;
outline-color: transparent;
color: ${dt('tree.node.color')};
gap: ${dt('tree.node.gap')};
transition: background ${dt('tree.transition.duration')}, color ${dt('tree.transition.duration')}, outline-color ${dt('tree.transition.duration')}, box-shadow ${dt('tree.transition.duration')};
}
.p-tree-node:focus-visible > .p-tree-node-content {
box-shadow: ${dt('tree.node.focus.ring.shadow')};
outline: ${dt('tree.node.focus.ring.width')} ${dt('tree.node.focus.ring.style')} ${dt('tree.node.focus.ring.color')};
outline-offset: ${dt('tree.node.focus.ring.offset')};
}
.p-tree-node-content.p-tree-node-selectable:not(.p-tree-node-selected):hover {
background: ${dt('tree.node.hover.background')};
color: ${dt('tree.node.hover.color')};
}
.p-tree-node-content.p-tree-node-selectable:not(.p-tree-node-selected):hover .p-tree-node-icon {
color: ${dt('tree.node.icon.hover.color')};
}
.p-tree-node-content.p-tree-node-selected {
background: ${dt('tree.node.selected.background')};
color: ${dt('tree.node.selected.color')};
}
.p-tree-node-content.p-tree-node-selected .p-tree-node-toggle-button {
color: inherit;
}
.p-tree-node-toggle-button {
cursor: pointer;
user-select: none;
display: inline-flex;
align-items: center;
justify-content: center;
overflow: hidden;
position: relative;
flex-shrink: 0;
width: ${dt('tree.node.toggle.button.size')};
height: ${dt('tree.node.toggle.button.size')};
color: ${dt('tree.node.toggle.button.color')};
border: 0 none;
background: transparent;
border-radius: ${dt('tree.node.toggle.button.border.radius')};
transition: background ${dt('tree.transition.duration')}, color ${dt('tree.transition.duration')}, border-color ${dt('tree.transition.duration')}, outline-color ${dt('tree.transition.duration')}, box-shadow ${dt('tree.transition.duration')};
outline-color: transparent;
padding: 0;
}
.p-tree-node-toggle-button:enabled:hover {
background: ${dt('tree.node.toggle.button.hover.background')};
color: ${dt('tree.node.toggle.button.hover.color')};
}
.p-tree-node-content.p-tree-node-selected .p-tree-node-toggle-button:hover {
background: ${dt('tree.node.toggle.button.selected.hover.background')};
color: ${dt('tree.node.toggle.button.selected.hover.color')};
}
.p-tree-root {
overflow: auto;
}
.p-tree-node-selectable {
cursor: pointer;
user-select: none;
}
.p-tree-node-leaf > .p-tree-node-content .p-tree-node-toggle-button {
visibility: hidden;
}
.p-tree-node-icon {
color: ${dt('tree.node.icon.color')};
transition: color ${dt('tree.transition.duration')};
}
.p-tree-node-content.p-tree-node-selected .p-tree-node-icon {
color: ${dt('tree.node.icon.selected.color')};
}
.p-tree-filter-input {
width: 100%;
}
.p-tree-loading {
position: relative;
height: 100%;
}
.p-tree-loading-icon {
font-size: ${dt('tree.loading.icon.size')};
width: ${dt('tree.loading.icon.size')};
height: ${dt('tree.loading.icon.size')};
}
.p-tree .p-tree-mask {
position: absolute;
z-index: 1;
display: flex;
align-items: center;
justify-content: center;
}
.p-tree-flex-scrollable {
display: flex;
flex: 1;
height: 100%;
flex-direction: column;
}
.p-tree-flex-scrollable .p-tree-root {
flex: 1;
}
/* For PrimeNG */
.p-tree .p-tree-node-droppoint {
height: 4px;
list-style-type: none;
}
.p-tree .p-tree-node-droppoint-active {
border: 0 none;
background-color: ${dt('primary.color')};
}
.p-tree-node-content.p-tree-node-dragover {
background: ${dt('tree.node.hover.background')};
color: ${dt('tree.node.hover.color')};
}
.p-tree-node-content.p-tree-node-dragover .p-tree-node-icon {
color: ${dt('tree.node.icon.hover.color')};
}
.p-tree-horizontal {
width: auto;
padding-inline-start: 0;
padding-inline-end: 0;
overflow: auto;
}
.p-tree.p-tree-horizontal table,
.p-tree.p-tree-horizontal tr,
.p-tree.p-tree-horizontal td {
border-collapse: collapse;
margin: 0;
padding: 0;
vertical-align: middle;
}
.p-tree-horizontal .p-tree-node-content {
font-weight: normal;
padding: 0.4em 1em 0.4em 0.2em;
display: flex;
align-items: center;
}
.p-tree-horizontal .p-tree-node-parent .p-tree-node-content {
font-weight: normal;
white-space: nowrap;
}
.p-tree.p-tree-horizontal .p-tree-node.p-tree-node-leaf,
.p-tree.p-tree-horizontal .p-tree-node.p-tree-node-collapsed {
padding-inline-end: 0;
}
.p-tree.p-tree-horizontal .p-tree-node-children {
padding: 0;
margin: 0;
}
.p-tree.p-tree-horizontal .p-tree-node-connector {
width: 1px;
}
.p-tree.p-tree-horizontal .p-tree-node-connector-table {
height: 100%;
width: 1px;
}
.p-tree.p-tree-horizontal table {
height: 0;
}
`;
const classes = {
root: ({ instance }) => ({
'p-tree p-component': true,
'p-tree-selectable': instance.selectionMode != null,
'p-tree-loading': instance.loading,
'p-tree-flex-scrollable': instance.scrollHeight === 'flex',
'p-tree-node-dragover': instance.dragHover
}),
mask: 'p-tree-mask p-overlay-mask',
loadingIcon: 'p-tree-loading-icon',
pcFilterInput: 'p-tree-filter-input',
wrapper: 'p-tree-root', //TODO: discuss
rootChildren: 'p-tree-root-children',
node: ({ instance }) => ({ 'p-tree-node': true, 'p-tree-node-leaf': instance.isLeaf() }),
nodeContent: ({ instance }) => ({
'p-tree-node-content': true,
[instance.styleClass]: !!instance.styleClass,
'p-tree-node-selectable': instance.selectable,
'p-tree-node-dragover': instance.draghoverNode,
'p-tree-node-selected': instance.selectionMode === 'checkbox' && instance.tree.highlightOnSelect ? instance.checked : instance.selected
}),
nodeToggleButton: 'p-tree-node-toggle-button',
nodeToggleIcon: 'p-tree-node-toggle-icon',
nodeCheckbox: 'p-tree-node-checkbox',
nodeIcon: 'p-tree-node-icon',
nodeLabel: 'p-tree-node-label',
nodeChildren: 'p-tree-node-children'
};
class TreeStyle extends BaseStyle {
name = 'tree';
theme = theme;
classes = classes;
static ɵfac = /*@__PURE__*/ (() => { let ɵTreeStyle_BaseFactory; return function TreeStyle_Factory(__ngFactoryType__) { return (ɵTreeStyle_BaseFactory || (ɵTreeStyle_BaseFactory = i0.ɵɵgetInheritedFactory(TreeStyle)))(__ngFactoryType__ || TreeStyle); }; })();
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: TreeStyle, factory: TreeStyle.ɵfac });
}
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TreeStyle, [{
type: Injectable
}], null, null); })();
/**
*
* Tree is used to display hierarchical data.
*
* [Live Demo](https://www.primeng.org/tree/)
*
* @module treestyle
*
*/
var TreeClasses;
(function (TreeClasses) {
/**
* Class name of the root element
*/
TreeClasses["root"] = "p-tree";
/**
* Class name of the mask element
*/
TreeClasses["mask"] = "p-tree-mask";
/**
* Class name of the loading icon element
*/
TreeClasses["loadingIcon"] = "p-tree-loading-icon";
/**
* Class name of the filter input element
*/
TreeClasses["pcFilterInput"] = "p-tree-filter-input";
/**
* Class name of the wrapper element
*/
TreeClasses["wrapper"] = "p-tree-root";
/**
* Class name of the root children element
*/
TreeClasses["rootChildren"] = "p-tree-root-children";
/**
* Class name of the node element
*/
TreeClasses["node"] = "p-tree-node";
/**
* Class name of the node content element
*/
TreeClasses["nodeContent"] = "p-tree-node-content";
/**
* Class name of the node toggle button element
*/
TreeClasses["nodeToggleButton"] = "p-tree-node-toggle-button";
/**
* Class name of the node toggle icon element
*/
TreeClasses["nodeToggleIcon"] = "p-tree-node-toggle-icon";
/**
* Class name of the node checkbox element
*/
TreeClasses["nodeCheckbox"] = "p-tree-node-checkbox";
/**
* Class name of the node icon element
*/
TreeClasses["nodeIcon"] = "p-tree-node-icon";
/**
* Class name of the node label element
*/
TreeClasses["nodeLabel"] = "p-tree-node-label";
/**
* Class name of the node children element
*/
TreeClasses["nodeChildren"] = "p-tree-node-children";
})(TreeClasses || (TreeClasses = {}));
const _c0 = a0 => ({ height: a0 });
const _c1 = a0 => ({ "p-tree-node-droppoint-active": a0 });
const _c2 = a0 => ({ $implicit: a0 });
const _c3 = (a0, a1) => ({ $implicit: a0, partialSelected: a1, class: "p-tree-node-checkbox" });
function UITreeNode_Conditional_0_li_0_Template(rf, ctx) { if (rf & 1) {
const _r2 = i0.ɵɵgetCurrentView();
i0.ɵɵelementStart(0, "li", 11);
i0.ɵɵlistener("drop", function UITreeNode_Conditional_0_li_0_Template_li_drop_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPoint($event, -1)); })("dragover", function UITreeNode_Conditional_0_li_0_Template_li_dragover_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragOver($event)); })("dragenter", function UITreeNode_Conditional_0_li_0_Template_li_dragenter_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragEnter($event, -1)); })("dragleave", function UITreeNode_Conditional_0_li_0_Template_li_dragleave_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragLeave($event)); });
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c1, ctx_r2.draghoverPrev));
i0.ɵɵattribute("aria-hidden", true);
} }
function UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronRightIcon_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "ChevronRightIcon", 13);
} if (rf & 2) {
i0.ɵɵproperty("styleClass", "p-tree-node-toggle-icon");
} }
function UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronDownIcon_2_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "ChevronDownIcon", 13);
} if (rf & 2) {
i0.ɵɵproperty("styleClass", "p-tree-node-toggle-icon");
} }
function UITreeNode_Conditional_0_ng_container_4_ng_container_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵtemplate(1, UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronRightIcon_1_Template, 1, 1, "ChevronRightIcon", 12)(2, UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronDownIcon_2_Template, 1, 1, "ChevronDownIcon", 12);
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(3);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", !ctx_r2.node.expanded);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r2.node.expanded);
} }
function UITreeNode_Conditional_0_ng_container_4_ng_container_2_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelement(1, "SpinnerIcon", 13);
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
i0.ɵɵadvance();
i0.ɵɵproperty("styleClass", "pi-spin p-tree-node-toggle-icon");
} }
function UITreeNode_Conditional_0_ng_container_4_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵtemplate(1, UITreeNode_Conditional_0_ng_container_4_ng_container_1_Template, 3, 2, "ng-container", 5)(2, UITreeNode_Conditional_0_ng_container_4_ng_container_2_Template, 2, 1, "ng-container", 5);
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", !ctx_r2.node.loading);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r2.loadingMode === "icon" && ctx_r2.node.loading);
} }
function UITreeNode_Conditional_0_span_5_1_ng_template_0_Template(rf, ctx) { }
function UITreeNode_Conditional_0_span_5_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, UITreeNode_Conditional_0_span_5_1_ng_template_0_Template, 0, 0, "ng-template");
} }
function UITreeNode_Conditional_0_span_5_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "span", 14);
i0.ɵɵtemplate(1, UITreeNode_Conditional_0_span_5_1_Template, 1, 0, null, 15);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵadvance();
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tree.togglerIconTemplate || ctx_r2.tree._togglerIconTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c2, ctx_r2.node.expanded));
} }
function UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_0_ng_template_0_Template(rf, ctx) { }
function UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_0_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_0_ng_template_0_Template, 0, 0, "ng-template");
} }
function UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_0_Template, 1, 0, null, 15);
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(4);
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tree.checkboxIconTemplate || ctx_r2.tree._checkboxIconTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c3, ctx_r2.isSelected(), ctx_r2.node.partialSelected));
} }
function UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵtemplate(1, UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_Template, 1, 5, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
i0.ɵɵelementContainerEnd();
} }
function UITreeNode_Conditional_0_p_checkbox_6_Template(rf, ctx) { if (rf & 1) {
const _r4 = i0.ɵɵgetCurrentView();
i0.ɵɵelementStart(0, "p-checkbox", 16);
i0.ɵɵlistener("click", function UITreeNode_Conditional_0_p_checkbox_6_Template_p_checkbox_click_0_listener($event) { i0.ɵɵrestoreView(_r4); return i0.ɵɵresetView($event.preventDefault()); });
i0.ɵɵtemplate(1, UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_Template, 3, 0, "ng-container", 5);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵproperty("ngModel", ctx_r2.isSelected())("binary", true)("indeterminate", ctx_r2.node.partialSelected)("disabled", ctx_r2.node.selectable === false)("variant", (ctx_r2.tree == null ? null : ctx_r2.tree.config.inputStyle()) === "filled" ? "filled" : "outlined" || (ctx_r2.tree == null ? null : ctx_r2.tree.config.inputVariant()) === "filled" ? "filled" : "outlined")("tabindex", -1);
i0.ɵɵattribute("data-p-partialchecked", ctx_r2.node.partialSelected);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r2.tree.checkboxIconTemplate || ctx_r2.tree._checkboxIconTemplate);
} }
function UITreeNode_Conditional_0_span_7_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "span");
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵclassMap(ctx_r2.getIcon());
} }
function UITreeNode_Conditional_0_span_9_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "span");
i0.ɵɵtext(1);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵadvance();
i0.ɵɵtextInterpolate(ctx_r2.node.label);
} }
function UITreeNode_Conditional_0_span_10_ng_container_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainer(0);
} }
function UITreeNode_Conditional_0_span_10_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "span");
i0.ɵɵtemplate(1, UITreeNode_Conditional_0_span_10_ng_container_1_Template, 1, 0, "ng-container", 15);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵadvance();
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tree.getTemplateForNode(ctx_r2.node))("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c2, ctx_r2.node));
} }
function UITreeNode_Conditional_0_ul_11_p_treeNode_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "p-treeNode", 19);
} if (rf & 2) {
const childNode_r5 = ctx.$implicit;
const firstChild_r6 = ctx.first;
const lastChild_r7 = ctx.last;
const index_r8 = ctx.index;
const ctx_r2 = i0.ɵɵnextContext(3);
i0.ɵɵproperty("node", childNode_r5)("parentNode", ctx_r2.node)("firstChild", firstChild_r6)("lastChild", lastChild_r7)("index", index_r8)("itemSize", ctx_r2.itemSize)("level", ctx_r2.level + 1)("loadingMode", ctx_r2.loadingMode);
} }
function UITreeNode_Conditional_0_ul_11_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "ul", 17);
i0.ɵɵtemplate(1, UITreeNode_Conditional_0_ul_11_p_treeNode_1_Template, 1, 8, "p-treeNode", 18);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵstyleProp("display", ctx_r2.node.expanded ? "block" : "none");
i0.ɵɵadvance();
i0.ɵɵproperty("ngForOf", ctx_r2.node.children)("ngForTrackBy", ctx_r2.tree.trackBy.bind(ctx_r2));
} }
function UITreeNode_Conditional_0_li_12_Template(rf, ctx) { if (rf & 1) {
const _r9 = i0.ɵɵgetCurrentView();
i0.ɵɵelementStart(0, "li", 11);
i0.ɵɵlistener("drop", function UITreeNode_Conditional_0_li_12_Template_li_drop_0_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPoint($event, 1)); })("dragover", function UITreeNode_Conditional_0_li_12_Template_li_dragover_0_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragOver($event)); })("dragenter", function UITreeNode_Conditional_0_li_12_Template_li_dragenter_0_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragEnter($event, 1)); })("dragleave", function UITreeNode_Conditional_0_li_12_Template_li_dragleave_0_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragLeave($event)); });
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c1, ctx_r2.draghoverNext));
i0.ɵɵattribute("aria-hidden", true);
} }
function UITreeNode_Conditional_0_Template(rf, ctx) { if (rf & 1) {
const _r1 = i0.ɵɵgetCurrentView();
i0.ɵɵtemplate(0, UITreeNode_Conditional_0_li_0_Template, 1, 4, "li", 1);
i0.ɵɵelementStart(1, "li", 2);
i0.ɵɵlistener("keydown", function UITreeNode_Conditional_0_Template_li_keydown_1_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onKeyDown($event)); });
i0.ɵɵelementStart(2, "div", 3);
i0.ɵɵlistener("click", function UITreeNode_Conditional_0_Template_div_click_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onNodeClick($event)); })("contextmenu", function UITreeNode_Conditional_0_Template_div_contextmenu_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onNodeRightClick($event)); })("touchend", function UITreeNode_Conditional_0_Template_div_touchend_2_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onNodeTouchEnd()); })("drop", function UITreeNode_Conditional_0_Template_div_drop_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onDropNode($event)); })("dragover", function UITreeNode_Conditional_0_Template_div_dragover_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onDropNodeDragOver($event)); })("dragenter", function UITreeNode_Conditional_0_Template_div_dragenter_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onDropNodeDragEnter($event)); })("dragleave", function UITreeNode_Conditional_0_Template_div_dragleave_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onDropNodeDragLeave($event)); })("dragstart", function UITreeNode_Conditional_0_Template_div_dragstart_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onDragStart($event)); })("dragend", function UITreeNode_Conditional_0_Template_div_dragend_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onDragStop($event)); });
i0.ɵɵelementStart(3, "button", 4);
i0.ɵɵlistener("click", function UITreeNode_Conditional_0_Template_button_click_3_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.toggle($event)); });
i0.ɵɵtemplate(4, UITreeNode_Conditional_0_ng_container_4_Template, 3, 2, "ng-container", 5)(5, UITreeNode_Conditional_0_span_5_Template, 2, 4, "span", 6);
i0.ɵɵelementEnd();
i0.ɵɵtemplate(6, UITreeNode_Conditional_0_p_checkbox_6_Template, 2, 8, "p-checkbox", 7)(7, UITreeNode_Conditional_0_span_7_Template, 1, 2, "span", 8);
i0.ɵɵelementStart(8, "span", 9);
i0.ɵɵtemplate(9, UITreeNode_Conditional_0_span_9_Template, 2, 1, "span", 5)(10, UITreeNode_Conditional_0_span_10_Template, 2, 4, "span", 5);
i0.ɵɵelementEnd()();
i0.ɵɵtemplate(11, UITreeNode_Conditional_0_ul_11_Template, 2, 4, "ul", 10);
i0.ɵɵelementEnd();
i0.ɵɵtemplate(12, UITreeNode_Conditional_0_li_12_Template, 1, 4, "li", 1);
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext();
i0.ɵɵproperty("ngIf", ctx_r2.tree.droppableNodes);
i0.ɵɵadvance();
i0.ɵɵstyleMap(ctx_r2.node.style);
i0.ɵɵproperty("ngClass", ctx_r2.nodeClass)("ngStyle", i0.ɵɵpureFunction1(27, _c0, ctx_r2.itemSize + "px"));
i0.ɵɵattribute("aria-label", ctx_r2.node.label)("aria-checked", ctx_r2.checked)("aria-setsize", ctx_r2.node.children ? ctx_r2.node.children.length : 0)("aria-selected", ctx_r2.selected)("aria-expanded", ctx_r2.node.expanded)("aria-posinset", ctx_r2.index + 1)("aria-level", ctx_r2.level + 1)("tabindex", ctx_r2.index === 0 ? 0 : -1)("data-id", ctx_r2.node.key);
i0.ɵɵadvance();
i0.ɵɵstyleProp("padding-left", ctx_r2.level * ctx_r2.indentation + "rem");
i0.ɵɵproperty("ngClass", ctx_r2.nodeContentClass)("draggable", ctx_r2.tree.draggableNodes);
i0.ɵɵadvance();
i0.ɵɵattribute("data-pc-section", "toggler");
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", !ctx_r2.tree.togglerIconTemplate && !ctx_r2.tree._togglerIconTemplate);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r2.tree.togglerIconTemplate || ctx_r2.tree._togglerIconTemplate);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r2.tree.selectionMode == "checkbox");
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r2.node.icon || ctx_r2.node.expandedIcon || ctx_r2.node.collapsedIcon);
i0.ɵɵadvance(2);
i0.ɵɵproperty("ngIf", !ctx_r2.tree.getTemplateForNode(ctx_r2.node));
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r2.tree.getTemplateForNode(ctx_r2.node));
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", !ctx_r2.tree.virtualScroll && ctx_r2.node.children && ctx_r2.node.expanded);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r2.tree.droppableNodes && ctx_r2.lastChild);
} }
const _c4 = ["filter"];
const _c5 = ["node"];
const _c6 = ["header"];
const _c7 = ["footer"];
const _c8 = ["loader"];
const _c9 = ["empty"];
const _c10 = ["togglericon"];
const _c11 = ["checkboxicon"];
const _c12 = ["loadingicon"];
const _c13 = ["filtericon"];
const _c14 = ["scroller"];
const _c15 = ["wrapper"];
const _c16 = a0 => ({ options: a0 });
function Tree_div_1_i_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "i");
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext(2);
i0.ɵɵclassMap("p-tree-loading-icon pi-spin " + ctx_r0.loadingIcon);
} }
function Tree_div_1_ng_container_2_SpinnerIcon_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "SpinnerIcon", 16);
} if (rf & 2) {
i0.ɵɵproperty("spin", true)("styleClass", "p-tree-loading-icon");
} }
function Tree_div_1_ng_container_2_span_2_1_ng_template_0_Template(rf, ctx) { }
function Tree_div_1_ng_container_2_span_2_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, Tree_div_1_ng_container_2_span_2_1_ng_template_0_Template, 0, 0, "ng-template");
} }
function Tree_div_1_ng_container_2_span_2_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "span", 17);
i0.ɵɵtemplate(1, Tree_div_1_ng_container_2_span_2_1_Template, 1, 0, null, 9);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext(3);
i0.ɵɵadvance();
i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.loadingIconTemplate || ctx_r0._loadingIconTemplate);
} }
function Tree_div_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵtemplate(1, Tree_div_1_ng_container_2_SpinnerIcon_1_Template, 1, 2, "SpinnerIcon", 14)(2, Tree_div_1_ng_container_2_span_2_Template, 2, 1, "span", 15);
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext(2);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", !ctx_r0.loadingIconTemplate && !ctx_r0._loadingIconTemplate);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r0.loadingIconTemplate || ctx_r0._loadingIconTemplate);
} }
function Tree_div_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "div", 12);
i0.ɵɵtemplate(1, Tree_div_1_i_1_Template, 1, 2, "i", 13)(2, Tree_div_1_ng_container_2_Template, 3, 2, "ng-container", 10);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext();
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r0.loadingIcon);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", !ctx_r0.loadingIcon);
} }
function Tree_ng_container_2_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainer(0);
} }
function Tree_Conditional_3_ng_container_0_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainer(0);
} }
function Tree_Conditional_3_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, Tree_Conditional_3_ng_container_0_Template, 1, 0, "ng-container", 18);
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext();
i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.filterTemplate || ctx_r0._filterTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c2, ctx_r0.filterOptions));
} }
function Tree_Conditional_4_p_iconField_0_SearchIcon_4_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "SearchIcon", 21);
} }
function Tree_Conditional_4_p_iconField_0_span_5_1_ng_template_0_Template(rf, ctx) { }
function Tree_Conditional_4_p_iconField_0_span_5_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, Tree_Conditional_4_p_iconField_0_span_5_1_ng_template_0_Template, 0, 0, "ng-template");
} }
function Tree_Conditional_4_p_iconField_0_span_5_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "span");
i0.ɵɵtemplate(1, Tree_Conditional_4_p_iconField_0_span_5_1_Template, 1, 0, null, 9);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext(3);
i0.ɵɵadvance();
i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.filterIconTemplate || ctx_r0._filterIconTemplate);
} }
function Tree_Conditional_4_p_iconField_0_Template(rf, ctx) { if (rf & 1) {
const _r2 = i0.ɵɵgetCurrentView();
i0.ɵɵelementStart(0, "p-iconField")(1, "input", 19, 0);
i0.ɵɵlistener("keydown.enter", function Tree_Conditional_4_p_iconField_0_Template_input_keydown_enter_1_listener($event) { i0.ɵɵrestoreView(_r2); return i0.ɵɵresetView($event.preventDefault()); })("input", function Tree_Conditional_4_p_iconField_0_Template_input_input_1_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0._filter($event.target.value)); });
i0.ɵɵelementEnd();
i0.ɵɵelementStart(3, "p-inputIcon");
i0.ɵɵtemplate(4, Tree_Conditional_4_p_iconField_0_SearchIcon_4_Template, 1, 0, "SearchIcon", 20)(5, Tree_Conditional_4_p_iconField_0_span_5_Template, 2, 1, "span", 10);
i0.ɵɵelementEnd()();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext(2);
i0.ɵɵadvance();
i0.ɵɵattribute("placeholder", ctx_r0.filterPlaceholder);
i0.ɵɵadvance(3);
i0.ɵɵproperty("ngIf", !ctx_r0.filterIconTemplate && !ctx_r0._filterIconTemplate);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r0.filterIconTemplate || ctx_r0._filterIconTemplate);
} }
function Tree_Conditional_4_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, Tree_Conditional_4_p_iconField_0_Template, 6, 3, "p-iconField", 10);
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext();
i0.ɵɵproperty("ngIf", ctx_r0.filter);
} }
function Tree_ng_container_5_p_scroller_1_ng_template_2_ul_0_p_treeNode_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "p-treeNode", 27, 3);
} if (rf & 2) {
const rowNode_r4 = ctx.$implicit;
const firstChild_r5 = ctx.first;
const lastChild_r6 = ctx.last;
const index_r7 = ctx.index;
const scrollerOptions_r8 = i0.ɵɵnextContext(2).options;
const ctx_r0 = i0.ɵɵnextContext(3);
i0.ɵɵproperty("level", rowNode_r4.level)("rowNode", rowNode_r4)("node", rowNode_r4.node)("parentNode", rowNode_r4.parent)("firstChild", firstChild_r5)("lastChild", lastChild_r6)("index", ctx_r0.getIndex(scrollerOptions_r8, index_r7))("itemSize", scrollerOptions_r8.itemSize)("indentation", ctx_r0.indentation)("loadingMode", ctx_r0.loadingMode);
} }
function Tree_ng_container_5_p_scroller_1_ng_template_2_ul_0_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "ul", 25);
i0.ɵɵtemplate(1, Tree_ng_container_5_p_scroller_1_ng_template_2_ul_0_p_treeNode_1_Template, 2, 10, "p-treeNode", 26);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r8 = i0.ɵɵnextContext();
const items_r10 = ctx_r8.$implicit;
const scrollerOptions_r8 = ctx_r8.options;
const ctx_r0 = i0.ɵɵnextContext(3);
i0.ɵɵstyleMap(scrollerOptions_r8.contentStyle);
i0.ɵɵproperty("ngClass", scrollerOptions_r8.contentStyleClass);
i0.ɵɵattribute("aria-label", ctx_r0.ariaLabel)("aria-labelledby", ctx_r0.ariaLabelledBy);
i0.ɵɵadvance();
i0.ɵɵproperty("ngForOf", items_r10)("ngForTrackBy", ctx_r0.trackBy);
} }
function Tree_ng_container_5_p_scroller_1_ng_template_2_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, Tree_ng_container_5_p_scroller_1_ng_template_2_ul_0_Template, 2, 7, "ul", 24);
} if (rf & 2) {
const items_r10 = ctx.$implicit;
i0.ɵɵproperty("ngIf", items_r10);
} }
function Tree_ng_container_5_p_scroller_1_ng_container_4_ng_template_1_ng_container_0_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainer(0);
} }
function Tree_ng_container_5_p_scroller_1_ng_container_4_ng_template_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, Tree_ng_container_5_p_scroller_1_ng_container_4_ng_template_1_ng_container_0_Template, 1, 0, "ng-container", 18);
} if (rf & 2) {
const scrollerOptions_r11 = ctx.options;
const ctx_r0 = i0.ɵɵnextContext(4);
i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.loaderTemplate || ctx_r0._loaderTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c16, scrollerOptions_r11));
} }
function Tree_ng_container_5_p_scroller_1_ng_container_4_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵtemplate(1, Tree_ng_container_5_p_scroller_1_ng_container_4_ng_template_1_Template, 1, 4, "ng-template", null, 4, i0.ɵɵtemplateRefExtractor);
i0.ɵɵelementContainerEnd();
} }
function Tree_ng_container_5_p_scroller_1_Template(rf, ctx) { if (rf & 1) {
const _r3 = i0.ɵɵgetCurrentView();
i0.ɵɵelementStart(0, "p-scroller", 23, 1);
i0.ɵɵlistener("onScroll", function Tree_ng_container_5_p_scroller_1_Template_p_scroller_onScroll_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onScroll.emit($event)); })("onScrollIndexChange", function Tree_ng_container_5_p_scroller_1_Template_p_scroller_onScrollIndexChange_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onScrollIndexChange.emit($event)); })("onLazyLoad", function Tree_ng_container_5_p_scroller_1_Template_p_scroller_onLazyLoad_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onLazyLoad.emit($event)); });
i0.ɵɵtemplate(2, Tree_ng_container_5_p_scroller_1_ng_template_2_Template, 1, 1, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor)(4, Tree_ng_container_5_p_scroller_1_ng_container_4_Template, 3, 0, "ng-container", 10);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext(2);
i0.ɵɵstyleMap(i0.ɵɵpureFunction1(9, _c0, ctx_r0.scrollHeight !== "flex" ? ctx_r0.scrollHeight : undefined));
i0.ɵɵproperty("items", ctx_r0.serializedValue)("tabindex", -1)("scrollHeight", ctx_r0.scrollHeight !== "flex" ? undefined : "100%")("itemSize", ctx_r0.virtualScrollItemSize || ctx_r0._virtualNodeHeight)("lazy", ctx_r0.lazy)("options", ctx_r0.virtualScrollOptions);
i0.ɵɵadvance(4);
i0.ɵɵproperty("ngIf", ctx_r0.loaderTemplate || ctx_r0._loaderTemplate);
} }
function Tree_ng_container_5_ng_container_2_ul_3_p_treeNode_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "p-treeNode", 32);
} if (rf & 2) {
const node_r12 = ctx.$implicit;
const firstChild_r13 = ctx.first;
const lastChild_r14 = ctx.last;
const index_r15 = ctx.index;
const ctx_r0 = i0.ɵɵnextContext(4);
i0.ɵɵproperty("node", node_r12)("firstChild", firstChild_r13)("lastChild", lastChild_r14)("index", index_r15)("level", 0)("loadingMode", ctx_r0.loadingMode);
} }
function Tree_ng_container_5_ng_container_2_ul_3_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "ul", 30);
i0.ɵɵtemplate(1, Tree_ng_container_5_ng_container_2_ul_3_p_treeNode_1_Template, 1, 6, "p-treeNode", 31);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext(3);
i0.ɵɵattribute("aria-label", ctx_r0.ariaLabel)("aria-labelledby", ctx_r0.ariaLabelledBy);
i0.ɵɵadvance();
i0.ɵɵproperty("ngForOf", ctx_r0.getRootNode())("ngForTrackBy", ctx_r0.trackBy.bind(ctx_r0));
} }
function Tree_ng_container_5_ng_container_2_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "div", 28, 5);
i0.ɵɵtemplate(3, Tree_ng_container_5_ng_container_2_ul_3_Template, 2, 4, "ul", 29);
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext(2);
i0.ɵɵadvance();
i0.ɵɵstyleProp("max-height", ctx_r0.scrollHeight);
i0.ɵɵadvance(2);
i0.ɵɵproperty("ngIf", ctx_r0.getRootNode());
} }
function Tree_ng_container_5_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵtemplate(1, Tree_ng_container_5_p_scroller_1_Template, 5, 11, "p-scroller", 22)(2, Tree_ng_container_5_ng_container_2_Template, 4, 3, "ng-container", 10);
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext();
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", ctx_r0.virtualScroll);
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", !ctx_r0.virtualScroll);
} }
function Tree_div_6_ng_container_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵtext(1);
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext(2);
i0.ɵɵadvance();
i0.ɵɵtextInterpolate1(" ", ctx_r0.emptyMessageLabel, " ");
} }
function Tree_div_6_2_ng_template_0_Template(rf, ctx) { }
function Tree_div_6_2_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, Tree_div_6_2_ng_template_0_Template, 0, 0, "ng-template", null, 6, i0.ɵɵtemplateRefExtractor);
} }
function Tree_div_6_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "div", 33);
i0.ɵɵtemplate(1, Tree_div_6_ng_container_1_Template, 2, 1, "ng-container", 34)(2, Tree_div_6_2_Template, 2, 0, null, 9);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext();
i0.ɵɵadvance();
i0.ɵɵproperty("ngIf", !ctx_r0.emptyMessageTemplate && !ctx_r0._emptyMessageTemplate)("ngIfElse", ctx_r0.emptyFilter);
i0.ɵɵadvance();
i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.emptyMessageTemplate || ctx_r0._emptyMessageTemplate);
} }
function Tree_ng_container_7_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainer(0);
} }
class UITreeNode extends BaseComponent {
static ICON_CLASS = 'p-tree-node-icon ';
rowNode;
node;
parentNode;
root;
index;
firstChild;
lastChild;
level;
indentation;
itemSize;
loadingMode;
tree = inject(forwardRef(() => Tree));
timeout;
draghoverPrev;
draghoverNext;
draghoverNode;
get selected() {
return this.tree.selectionMode === 'single' || this.tree.selectionMode === 'multiple' ? this.isSelected() : undefined;
}
get checked() {
return this.tree.selectionMode === 'checkbox' ? this.isSelected() : undefined;
}
get nodeClass() {
return this.tree._componentStyle.classes.node({ instance: this });
}
get nodeContentClass() {
return this.tree._componentStyle.classes.nodeContent({ instance: this });
}
get selectable() {
return this.node.selectable === false ? false : this.tree.selectionMode != null;
}
ngOnInit() {
super.ngOnInit();
this.node.parent = this.parentNode;
const nativeElement = this.tree.el.nativeElement;
const pDialogWrapper = nativeElement.closest('p-dialog');
if (this.parentNode && !pDialogWrapper) {
this.setAllNodesTabIndexes();
this.tree.syncNodeOption(this.node, this.tree.value, 'parent', this.tree.getNodeWithKey(this.parentNode.key, this.tree.value));
}
}
getIcon() {
let icon;
if (this.node.icon)
icon = this.node.icon;
else
icon = this.node.expanded && this.node.children && this.node.children?.length ? this.node.expandedIcon : this.node.collapsedIcon;
return UITreeNode.ICON_CLASS + ' ' + icon + ' p-tree-node-icon';
}
isLeaf() {
return this.tree.isNodeLeaf(this.node);
}
toggle(event) {
if (this.node.expanded)
this.collapse(event);
else
this.expand(event);
event.stopPropagation();
}
expand(event) {
this.node.expanded = true;
if (this.tree.virtualScroll) {
this.tree.updateSerializedValue();
this.focusVirtualNode();
}
this.tree.onNodeExpand.emit({ originalEvent: event, node: this.node });
}
collapse(event) {
this.node.expanded = false;
if (this.tree.virtualScroll) {
this.tree.updateSerializedValue();
this.focusVirtualNode();
}
this.tree.onNodeCollapse.emit({ originalEvent: event, node: this.node });
}
onNodeClick(event) {
this.tree.onNodeClick(event, this.node);
}
onNodeKeydown(event) {
if (event.key === 'Enter') {
this.tree.onNodeClick(event, this.node);
}
}
onNodeTouchEnd() {
this.tree.onNodeTouchEnd();
}
onNodeRightClick(event) {
this.tree.onNodeRightClick(event, this.node);
}
isSelected() {
return this.tree.isSelected(this.node);
}
isSameNode(event) {
return event.currentTarget && (event.currentTarget.isSameNode(event.target) || event.currentTarget.isSameNode(event.target.closest('[role="treeitem"]')));
}
onDropPoint(event, position) {
event.preventDefault();
let dragNode = this.tree.dragNode;
let dragNodeIndex = this.tree.dragNodeIndex;
let dragNodeScope = this.tree.dragNodeScope;
let isValidDropPointIndex = this.tree.dragNodeTree === this.tree ? position === 1 || dragNodeIndex !== this.index - 1 : true;
if (this.tree.allowDrop(dragNode, this.node, dragNodeScope) && isValidDropPointIndex) {
let dropParams = { ...this.createDropPointEventMetadata(position) };
if (this.tree.validateDrop) {
this.tree.onNodeDrop.emit({
originalEvent: event,
dragNode: dragNode,
dropNode: this.node,
index: this.index,
accept: () => {
this.processPointDrop(dropParams);
}
});
}
else {
this.processPointDrop(dropParams);
this.tree.onNodeDrop.emit({
originalEvent: event,
dragNode: dragNode,
dropNode: this.node,
index: this.index
});
}
}
this.draghoverPrev = false;
this.draghoverNext = false;
}
processPointDrop(event) {
let newNodeList = event.dropNode.parent ? event.dropNode.parent.children : this.tree.value;
event.dragNodeSubNodes.splice(event.dragNodeIndex, 1);
let dropIndex = this.index;
if (event.position < 0) {
dropIndex = event.dragNodeSubNodes === newNodeList ? (event.dragNodeIndex > event.index ? event.index : event.index - 1) : event.index;
newNodeList.splice(dropIndex, 0, event.dragNode);
}
else {
dropIndex = newNodeList.length;
newNodeList.push(event.dragNode);
}
this.tree.dragDropService.stopDrag({
node: event.dragNode,
subNodes: event.dropNode.parent ? event.dropNode.parent.children : this.tree.value,
index: event.dragNodeIndex
});
}
createDropPointEventMetadata(position) {
return {
dragNode: this.tree.dragNode,
dragNodeIndex: this.tree.dragNodeIndex,
dragNodeSubNodes: this.tree.dragNodeSubNodes,
dropNode: this.node,
index: this.index,
position: position
};
}
onDropPointDragOver(event) {
event.dataTransfer.dropEffect = 'move';
event.preventDefault();
}
onDropPointDragEnter(event, position) {
if (this.tree.allowDrop(this.tree.dragNode, this.node, this.tree.dragNodeScope)) {
if (position < 0)
this.draghoverPrev = true;
else
this.draghoverNext = true;
}
}
onDropPointDragLeave(event) {
this.draghoverPrev = false;
this.draghoverNext = false;
}
onDragStart(event) {
if (this.tree.draggableNodes && this.node.draggable !== false) {
event.dataTransfer.setData('text', 'data');
this.tree.dragDropService.startDrag({
tree: this,
node: this.node,
subNodes: this.node?.parent ? this.node.parent.children : this.tree.value,
index: this.index,
scope: this.tree.draggableScope
});
}
else {
event.preventDefault();
}
}
onDragStop(event) {
this.tree.dragDropService.stopDrag({
node: this.node,
subNodes: this.node?.parent ? this.node.parent.children : this.tree.value,
index: this.index
});
}
onDropNodeDragOver(event) {
event.dataTransfer.dropEffect = 'move';
if (this.tree.droppableNodes) {
event.preventDefault();
event.stopPropagation();
}
}
onDropNode(event) {
if (this.tree.droppableNodes && this.node?.droppable !== false) {
let dragNode = this.tree.dragNode;
if (this.tree.allowDrop(dragNode, this.node, this.tree.dragNodeScope)) {
let dropParams = { ...this.createDropNodeEventMetadata() };
if (this.tree.validateDrop) {
this.tree.onNodeDrop.emit({
originalEvent: event,
dragNode: dragNode,
dropNode: this.node,
index: this.index,
accept: () => {
this.processNodeDrop(dropParams);
}
});
}
else {
this.processNodeDrop(dropParams);
this.tree.onNodeDrop.emit({
originalEvent: event,
dragNode: dragNode,
dropNode: this.node,
index: this.index
});
}
}
}
event.preventDefault();
event.stopPropagation();
this.draghoverNode = false;
}
createDropNodeEventMetadata() {
return {
dragNode: this.tree.dragNode,
dragNodeIndex: this.tree.dragNodeIndex,
dragNodeSubNodes: this.tree.dragNodeSubNodes,
dropNode: this.node
};
}
processNodeDrop(event) {
let dragNodeIndex = event.dragNodeIndex;
event.dragNodeSubNodes.splice(dragNodeIndex, 1);
if (event.dropNode.children)
event.dropNode.children.push(event.dragNode);
else
event.dropNode.children = [event.dragNode];
this.tree.dragDropService.stopDrag({
node: event.dragNode,
subNodes: event.dropNode.parent ? event.dropNode.parent.children : this.tree.value,
index: dragNodeIndex
});
}
onDropNodeDragEnter(event) {
if (this.tree.droppableNodes && this.node?.droppable !== false && this.tree.allowDrop(this.tree.dragNode, this.node, this.tree.dragNodeScope)) {
this.draghoverNode = true;
}
}
onDropNodeDragLeave(event) {
if (this.tree.droppableNodes) {
let rect = event.currentTarget.getBoundingClientRect();
if (event.x > rect.left + rect.width || event.x < rect.left || event.y >= Math.floor(rect.top + rect.height) || event.y < rect.top) {
this.draghoverNode = false;
}
}
}
onKeyDown(event) {
if (!this.isSameNode(event) || (this.tree.contextMenu && this.tree.contextMenu.containerViewChild?.nativeElement.style.display === 'block')) {
return;
}
switch (event.code) {
//down arrow
case 'ArrowDown':
this.onArrowDown(event);
break;
//up arrow
case 'ArrowUp':
this.onArrowUp(event);
break;
//right arrow
case 'ArrowRight':
this.onArrowRight(event);
break;
//left arrow
case 'ArrowLeft':
this.onArrowLeft(event);
break;
//enter
case 'Enter':
case 'Space':
case 'NumpadEnter':
this.onEnter(event);
break;
//tab
case 'Tab':
this.setAllNodesTabIndexes();
break;
default:
//no op
break;
}
}
onArrowUp(event) {
const nodeElement = event.target.getAttribute('data-pc-section') === 'toggler' ? event.target.closest('[role="treeitem"]') : event.target.parentElement;
if (nodeElement.previousElementSibling) {
this.focusRowChange(nodeElement, nodeElement.previousElementSibling, this.findLastVisibleDescendant(nodeElement.previousElementSibling));
}
else {
let parentNodeElement = this.getParentNodeElement(nodeElement);
if (parentNodeElement) {
this.focusRowChange(nodeElement, parentNodeElement);
}
}
event.preventDefault();
}
onArrowDown(event) {
const nodeElement = event.target.getAttribute('data-pc-section') === 'toggler' ? event.target.closest('[role="treeitem"]') : event.target;
const listElement = nodeElement.children[1];
if (listElement && list