{"version":3,"file":"primeng-organizationchart.mjs","sources":["../../src/organizationchart/style/organizationchartstyle.ts","../../src/organizationchart/organizationchart.ts","../../src/organizationchart/primeng-organizationchart.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-organizationchart-table {\n    border-spacing: 0;\n    border-collapse: separate;\n    margin: 0 auto;\n}\n\n.p-organizationchart-table > tbody > tr > td {\n    text-align: center;\n    vertical-align: top;\n    padding: 0 ${dt('organizationchart.gutter')};\n}\n\n.p-organizationchart-node {\n    display: inline-block;\n    position: relative;\n    border: 1px solid ${dt('organizationchart.node.border.color')};\n    background: ${dt('organizationchart.node.background')};\n    color: ${dt('organizationchart.node.color')};\n    padding: ${dt('organizationchart.node.padding')};\n    border-radius: ${dt('organizationchart.node.border.radius')};\n    transition: background ${dt('organizationchart.transition.duration')}, border-color ${dt('organizationchart.transition.duration')}, color ${dt('organizationchart.transition.duration')}, box-shadow ${dt('organizationchart.transition.duration')};\n}\n\n.p-organizationchart-node:has(.p-organizationchart-node-toggle-button) {\n    padding: ${dt('organizationchart.node.toggleable.padding')};\n}\n\n.p-organizationchart-node.p-organizationchart-node-selectable:not(.p-organizationchart-node-selected):hover {\n    background: ${dt('organizationchart.node.hover.background')};\n    color: ${dt('organizationchart.node.hover.color')};\n}\n\n.p-organizationchart-node-selected {\n    background: ${dt('organizationchart.node.selected.background')};\n    color: ${dt('organizationchart.node.selected.color')};\n}\n\n.p-organizationchart-node-toggle-button {\n    position: absolute;\n    inset-block-end: calc(-1 * calc(${dt('organizationchart.node.toggle.button.size')} / 2));\n    margin-inline-start: calc(-1 * calc(${dt('organizationchart.node.toggle.button.size')} / 2));\n    z-index: 2;\n    inset-inline-start: 50%;\n    user-select: none;\n    cursor: pointer;\n    width: ${dt('organizationchart.node.toggle.button.size')};\n    height: ${dt('organizationchart.node.toggle.button.size')};\n    text-decoration: none;\n    background: ${dt('organizationchart.node.toggle.button.background')};\n    color: ${dt('organizationchart.node.toggle.button.color')};\n    border-radius: ${dt('organizationchart.node.toggle.button.border.radius')};\n    border: 1px solid ${dt('organizationchart.node.toggle.button.border.color')};\n    display: inline-flex;\n    justify-content: center;\n    align-items: center;\n    outline-color: transparent;\n    transition: background ${dt('organizationchart.transition.duration')}, color ${dt('organizationchart.transition.duration')}, border-color ${dt('organizationchart.transition.duration')}, outline-color ${dt(\n        'organizationchart.transition.duration'\n    )}, box-shadow ${dt('organizationchart.transition.duration')};\n}\n\n.p-organizationchart-node-toggle-button:hover {\n    background: ${dt('organizationchart.node.toggle.button.hover.background')};\n    color: ${dt('organizationchart.node.toggle.button.hover.color')};\n}\n\n.p-organizationchart-node-toggle-button:focus-visible {\n    box-shadow: ${dt('breadcrumb.item.focus.ring.shadow')};\n    outline: ${dt('breadcrumb.item.focus.ring.width')} ${dt('breadcrumb.item.focus.ring.style')} ${dt('breadcrumb.item.focus.ring.color')};\n    outline-offset: ${dt('breadcrumb.item.focus.ring.offset')};\n}\n\n.p-organizationchart-node-toggle-button-icon {\n    position: relative;\n    inset-block-start: 1px;\n}\n\n.p-organizationchart-connector-down {\n    margin: 0 auto;\n    height: ${dt('organizationchart.connector.height')};\n    width: 1px;\n    background: ${dt('organizationchart.connector.color')};\n}\n\n.p-organizationchart-connector-right {\n    border-radius: 0;\n}\n\n.p-organizationchart-connector-left {\n    border-radius: 0;\n    border-inline-end: 1px solid ${dt('organizationchart.connector.color')};\n}\n\n.p-organizationchart-connector-top {\n    border-block-start: 1px solid ${dt('organizationchart.connector.color')};\n}\n\n.p-organizationchart-node-selectable {\n    cursor: pointer;\n}\n\n.p-organizationchart-connectors :nth-child(1 of .p-organizationchart-connector-left) {\n    border-inline-end: 0 none;\n}\n\n.p-organizationchart-connectors :nth-last-child(1 of .p-organizationchart-connector-left) {\n    border-start-end-radius: ${dt('organizationchart.connector.border.radius')};\n}\n\n.p-organizationchart-connectors :nth-child(1 of .p-organizationchart-connector-right) {\n    border-inline-start: 1px solid ${dt('organizationchart.connector.color')};\n    border-start-start-radius: ${dt('organizationchart.connector.border.radius')};\n}\n`;\n\nconst classes = {\n    root: 'p-organizationchart p-component',\n    table: 'p-organizationchart-table',\n    node: ({ instance }) => ['p-organizationchart-node', { 'p-organizationchart-node-selectable': instance.selectable, 'p-organizationchart-node-selected': instance.selected }],\n    nodeToggleButton: 'p-organizationchart-node-toggle-button',\n    nodeToggleButtonIcon: 'p-organizationchart-node-toggle-button-icon',\n    connectors: 'p-organizationchart-connectors',\n    connectorDown: 'p-organizationchart-connector-down',\n    connectorLeft: ({ index }) => ['p-organizationchart-connector-left', { 'p-organizationchart-connector-top': !(index === 0) }],\n    connectorRight: ({ props, index }) => ['p-organizationchart-connector-right', { 'p-organizationchart-connector-top': !(index === props.node.children.length - 1) }],\n    nodeChildren: 'p-organizationchart-node-children'\n};\n\n@Injectable()\nexport class OrganizationChartStyle extends BaseStyle {\n    name = 'organizationchart';\n\n    theme = theme;\n\n    classes = classes;\n}\n\n/**\n *\n * OrganizationChart visualizes hierarchical organization data.\n *\n * [Live Demo](https://www.primeng.org/organizationchart)\n *\n * @module organizationchartstyle\n *\n */\nexport enum OrganizationChartClasses {\n    /**\n     * Class name of the root element\n     */\n    root = 'p-organizationchart',\n    /**\n     * Class name of the table element\n     */\n    table = 'p-organizationchart-table',\n    /**\n     * Class name of the node element\n     */\n    node = 'p-organizationchart-node',\n    /**\n     * Class name of the node toggle button element\n     */\n    nodeToggleButton = 'p-organizationchart-node-toggle-button',\n    /**\n     * Class name of the node toggle button icon element\n     */\n    nodeToggleButtonIcon = 'p-organizationchart-node-toggle-button-icon',\n    /**\n     * Class name of the connectors element\n     */\n    connectors = 'p-organizationchart-connectors',\n    /**\n     * Class name of the connector down element\n     */\n    connectorDown = 'p-organizationchart-connector-down',\n    /**\n     * Class name of the connector left element\n     */\n    connectorLeft = 'p-organizationchart-connector-left',\n    /**\n     * Class name of the connector right element\n     */\n    connectorRight = 'p-organizationchart-connector-right',\n    /**\n     * Class name of the node children element\n     */\n    nodeChildren = 'p-organizationchart-node-children'\n}\n\nexport interface OrganizationChartStyle extends BaseStyle {}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n    AfterContentInit,\n    booleanAttribute,\n    ChangeDetectionStrategy,\n    ChangeDetectorRef,\n    Component,\n    ContentChild,\n    ContentChildren,\n    ElementRef,\n    EventEmitter,\n    forwardRef,\n    Inject,\n    inject,\n    Input,\n    NgModule,\n    OnDestroy,\n    Output,\n    QueryList,\n    TemplateRef,\n    ViewEncapsulation\n} from '@angular/core';\nimport { hasClass } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule, TreeNode } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { ChevronDownIcon, ChevronUpIcon } from 'primeng/icons';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { Subject, Subscription } from 'rxjs';\nimport { OrganizationChartNodeCollapseEvent, OrganizationChartNodeExpandEvent, OrganizationChartNodeSelectEvent, OrganizationChartNodeUnSelectEvent } from './organizationchart.interface';\nimport { OrganizationChartStyle } from './style/organizationchartstyle';\n\n@Component({\n    selector: '[pOrganizationChartNode]',\n    standalone: true,\n    imports: [CommonModule, ChevronDownIcon, ChevronUpIcon, SharedModule],\n    template: `\n        <tbody *ngIf=\"node\" [attr.data-pc-section]=\"'body'\">\n            <tr [attr.data-pc-section]=\"'row'\">\n                <td [attr.colspan]=\"colspan\" [attr.data-pc-section]=\"'cell'\">\n                    <div\n                        [class]=\"node.styleClass\"\n                        [ngClass]=\"{\n                            'p-organizationchart-node': true,\n                            'p-organizationchart-node-selectable': chart.selectionMode && node.selectable !== false,\n                            'p-organizationchart-node-selected': isSelected()\n                        }\"\n                        (click)=\"onNodeClick($event, node)\"\n                        [attr.data-pc-section]=\"'node'\"\n                    >\n                        <div *ngIf=\"!chart.getTemplateForNode(node)\">{{ node.label }}</div>\n                        <div *ngIf=\"chart.getTemplateForNode(node)\">\n                            <ng-container *ngTemplateOutlet=\"chart.getTemplateForNode(node); context: { $implicit: node }\"></ng-container>\n                        </div>\n                        <ng-container *ngIf=\"collapsible\">\n                            <a\n                                *ngIf=\"!leaf\"\n                                tabindex=\"0\"\n                                class=\"p-organizationchart-node-toggle-button\"\n                                (click)=\"toggleNode($event, node)\"\n                                (keydown.enter)=\"toggleNode($event, node)\"\n                                (keydown.space)=\"toggleNode($event, node)\"\n                                [attr.data-pc-section]=\"'nodeToggler'\"\n                            >\n                                <ng-container *ngIf=\"!chart.togglerIconTemplate && !chart._togglerIconTemplate\">\n                                    <ChevronDownIcon *ngIf=\"node.expanded\" [styleClass]=\"'p-organizationchart-node-toggle-button-icon'\" [attr.data-pc-section]=\"'nodeTogglerIcon'\" />\n                                    <ChevronUpIcon *ngIf=\"!node.expanded\" [styleClass]=\"'p-organizationchart-node-toggle-button-icon'\" [attr.data-pc-section]=\"'nodeTogglerIcon'\" />\n                                </ng-container>\n                                <span class=\"p-organizationchart-node-toggle-button-icon\" *ngIf=\"chart.togglerIconTemplate || chart._togglerIconTemplate\" [attr.data-pc-section]=\"'nodeTogglerIcon'\">\n                                    <ng-template *ngTemplateOutlet=\"chart.togglerIconTemplate || chart._togglerIconTemplate; context: { $implicit: node.expanded }\"></ng-template>\n                                </span>\n                            </a>\n                        </ng-container>\n                    </div>\n                </td>\n            </tr>\n            <tr [ngStyle]=\"getChildStyle(node)\" class=\"p-organizationchart-connectors\" [@childState]=\"'in'\" [attr.data-pc-section]=\"'lines'\">\n                <td [attr.data-pc-section]=\"'lineCell'\" [attr.colspan]=\"colspan\">\n                    <div [attr.data-pc-section]=\"'lineDown'\" class=\"p-organizationchart-connector-down\"></div>\n                </td>\n            </tr>\n            <tr [ngStyle]=\"getChildStyle(node)\" class=\"p-organizationchart-connectors\" [@childState]=\"'in'\" [attr.data-pc-section]=\"'lines'\">\n                <ng-container *ngIf=\"node.children && node.children.length === 1\">\n                    <td [attr.data-pc-section]=\"'lineCell'\" [attr.colspan]=\"colspan\">\n                        <div [attr.data-pc-section]=\"'lineDown'\" class=\"p-organizationchart-connector-down\"></div>\n                    </td>\n                </ng-container>\n                <ng-container *ngIf=\"node.children && node.children.length > 1\">\n                    <ng-template ngFor let-child [ngForOf]=\"node.children\" let-first=\"first\" let-last=\"last\">\n                        <td [attr.data-pc-section]=\"'lineLeft'\" class=\"p-organizationchart-connector-left\" [ngClass]=\"{ 'p-organizationchart-connector-top': !first }\">&nbsp;</td>\n                        <td [attr.data-pc-section]=\"'lineRight'\" class=\"p-organizationchart-connector-right\" [ngClass]=\"{ 'p-organizationchart-connector-top': !last }\">&nbsp;</td>\n                    </ng-template>\n                </ng-container>\n            </tr>\n            <tr [ngStyle]=\"getChildStyle(node)\" class=\"p-organizationchart-node-children\" [@childState]=\"'in'\" [attr.data-pc-section]=\"'nodes'\">\n                <td *ngFor=\"let child of node.children\" colspan=\"2\" [attr.data-pc-section]=\"'nodeCell'\">\n                    <table class=\"p-organizationchart-table\" pOrganizationChartNode [node]=\"child\" [collapsible]=\"node.children && node.children.length > 0 && collapsible\"></table>\n                </td>\n            </tr>\n        </tbody>\n    `,\n    animations: [trigger('childState', [state('in', style({ opacity: 1 })), transition('void => *', [style({ opacity: 0 }), animate(150)]), transition('* => void', [animate(150, style({ opacity: 0 }))])])],\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.Default\n})\nexport class OrganizationChartNode implements OnDestroy {\n    @Input() node: TreeNode<any> | undefined;\n\n    @Input({ transform: booleanAttribute }) root: boolean | undefined;\n\n    @Input({ transform: booleanAttribute }) first: boolean | undefined;\n\n    @Input({ transform: booleanAttribute }) last: boolean | undefined;\n\n    @Input({ transform: booleanAttribute }) collapsible: boolean | undefined;\n\n    chart: OrganizationChart;\n\n    subscription: Subscription;\n\n    constructor(\n        @Inject(forwardRef(() => OrganizationChart)) chart: OrganizationChart,\n        public cd: ChangeDetectorRef\n    ) {\n        this.chart = chart as OrganizationChart;\n        this.subscription = this.chart.selectionSource$.subscribe(() => {\n            this.cd.markForCheck();\n        });\n    }\n\n    get leaf(): boolean | undefined {\n        if (this.node) {\n            return this.node.leaf == false ? false : !(this.node.children && this.node.children.length);\n        }\n    }\n\n    get colspan() {\n        if (this.node) {\n            return this.node.children && this.node.children.length ? this.node.children.length * 2 : null;\n        }\n    }\n\n    getChildStyle(node: TreeNode<any>) {\n        return {\n            visibility: !this.leaf && node.expanded ? 'inherit' : 'hidden'\n        };\n    }\n\n    onNodeClick(event: Event, node: TreeNode) {\n        this.chart.onNodeClick(event, node);\n    }\n\n    toggleNode(event: Event, node: TreeNode) {\n        node.expanded = !node.expanded;\n        if (node.expanded) this.chart.onNodeExpand.emit({ originalEvent: event, node: <TreeNode>this.node });\n        else this.chart.onNodeCollapse.emit({ originalEvent: event, node: <TreeNode>this.node });\n\n        event.preventDefault();\n    }\n\n    isSelected() {\n        return this.chart.isSelected(this.node as TreeNode);\n    }\n\n    ngOnDestroy() {\n        this.subscription.unsubscribe();\n    }\n}\n/**\n * OrganizationChart visualizes hierarchical organization data.\n * @group Components\n */\n@Component({\n    selector: 'p-organizationChart, p-organization-chart, p-organizationchart',\n    standalone: true,\n    imports: [CommonModule, OrganizationChartNode, SharedModule],\n    template: `\n        <div [ngStyle]=\"style\" [class]=\"styleClass\" [ngClass]=\"{ 'p-organizationchart p-component': true, 'p-organizationchart-preservespace': preserveSpace }\" [attr.data-pc-section]=\"'root'\">\n            <table class=\"p-organizationchart-table\" [collapsible]=\"collapsible\" pOrganizationChartNode [node]=\"root\" *ngIf=\"root\"></table>\n        </div>\n    `,\n    changeDetection: ChangeDetectionStrategy.Default,\n    providers: [OrganizationChartStyle]\n})\nexport class OrganizationChart extends BaseComponent implements AfterContentInit {\n    /**\n     * An array of nested TreeNodes.\n     * @group Props\n     */\n    @Input() value: TreeNode[] | undefined;\n    /**\n     * Inline style of the component.\n     * @group Props\n     */\n    @Input() style: { [klass: string]: any } | null | undefined;\n    /**\n     * Style class of the component.\n     * @group Props\n     */\n    @Input() styleClass: string | undefined;\n    /**\n     * Defines the selection mode.\n     * @group Props\n     */\n    @Input() selectionMode: 'single' | 'multiple' | null | undefined;\n    /**\n     * Whether the nodes can be expanded or toggled.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) collapsible: boolean | undefined;\n    /**\n     * Whether the space allocated by a node is preserved when hidden.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) preserveSpace: boolean = true;\n    /**\n     * A single treenode instance or an array to refer to the selections.\n     * @group Props\n     */\n    @Input() get selection(): any {\n        return this._selection;\n    }\n    set selection(val: any) {\n        this._selection = val;\n\n        if (this.initialized) this.selectionSource.next(null);\n    }\n    /**\n     * Callback to invoke on selection change.\n     * @param {*} any - selected value.\n     * @group Emits\n     */\n    @Output() selectionChange: EventEmitter<any> = new EventEmitter();\n    /**\n     * Callback to invoke when a node is selected.\n     * @param {OrganizationChartNodeSelectEvent} event - custom node select event.\n     * @group Emits\n     */\n    @Output() onNodeSelect: EventEmitter<OrganizationChartNodeSelectEvent> = new EventEmitter<OrganizationChartNodeSelectEvent>();\n    /**\n     * Callback to invoke when a node is unselected.\n     * @param {OrganizationChartNodeUnSelectEvent} event - custom node unselect event.\n     * @group Emits\n     */\n    @Output() onNodeUnselect: EventEmitter<OrganizationChartNodeUnSelectEvent> = new EventEmitter<OrganizationChartNodeUnSelectEvent>();\n    /**\n     * Callback to invoke when a node is expanded.\n     * @param {OrganizationChartNodeExpandEvent} event - custom node expand event.\n     * @group Emits\n     */\n    @Output() onNodeExpand: EventEmitter<OrganizationChartNodeExpandEvent> = new EventEmitter<OrganizationChartNodeExpandEvent>();\n    /**\n     * Callback to invoke when a node is collapsed.\n     * @param {OrganizationChartNodeCollapseEvent} event - custom node collapse event.\n     * @group Emits\n     */\n    @Output() onNodeCollapse: EventEmitter<OrganizationChartNodeCollapseEvent> = new EventEmitter<OrganizationChartNodeCollapseEvent>();\n\n    @ContentChildren(PrimeTemplate) templates: Nullable<QueryList<PrimeTemplate>>;\n\n    @ContentChild('togglericon', { descendants: false }) togglerIconTemplate: TemplateRef<any> | undefined;\n\n    public templateMap: any;\n\n    _togglerIconTemplate: Nullable<TemplateRef<any>>;\n\n    private selectionSource = new Subject<any>();\n\n    _selection: any;\n\n    initialized: Nullable<boolean>;\n\n    selectionSource$ = this.selectionSource.asObservable();\n\n    _componentStyle = inject(OrganizationChartStyle);\n\n    constructor(\n        public el: ElementRef,\n        public cd: ChangeDetectorRef\n    ) {\n        super();\n    }\n\n    get root(): TreeNode<any> | null {\n        return this.value && this.value.length ? this.value[0] : null;\n    }\n\n    ngAfterContentInit() {\n        if ((this.templates as QueryList<PrimeTemplate>).length) {\n            this.templateMap = {};\n        }\n\n        (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n            if (item.getType() === 'togglericon') {\n                this._togglerIconTemplate = item.template;\n            } else {\n                this.templateMap[item.getType()] = item.template;\n            }\n        });\n\n        this.initialized = true;\n    }\n\n    getTemplateForNode(node: TreeNode): TemplateRef<any> | null {\n        if (this.templateMap) return node.type ? this.templateMap[node.type] : this.templateMap['default'];\n        else return null;\n    }\n\n    onNodeClick(event: Event, node: TreeNode) {\n        let eventTarget = <Element>event.target;\n\n        if (eventTarget.className && (hasClass(eventTarget, 'p-organizationchart-node-toggle-button') || hasClass(eventTarget, 'p-organizationchart-node-toggle-button-icon'))) {\n            return;\n        } else if (this.selectionMode) {\n            if (node.selectable === false) {\n                return;\n            }\n\n            let index = this.findIndexInSelection(node);\n            let selected = index >= 0;\n\n            if (this.selectionMode === 'single') {\n                if (selected) {\n                    this.selection = null;\n                    this.onNodeUnselect.emit({ originalEvent: event, node: node });\n                } else {\n                    this.selection = node;\n                    this.onNodeSelect.emit({ originalEvent: event, node: node });\n                }\n            } else if (this.selectionMode === 'multiple') {\n                if (selected) {\n                    this.selection = this.selection.filter((val: any, i: number) => i != index);\n                    this.onNodeUnselect.emit({ originalEvent: event, node: node });\n                } else {\n                    this.selection = [...(this.selection || []), node];\n                    this.onNodeSelect.emit({ originalEvent: event, node: node });\n                }\n            }\n\n            this.selectionChange.emit(this.selection);\n            this.selectionSource.next(null);\n        }\n    }\n\n    findIndexInSelection(node: TreeNode) {\n        let index: number = -1;\n\n        if (this.selectionMode && this.selection) {\n            if (this.selectionMode === 'single') {\n                index = this.selection == node ? 0 : -1;\n            } else if (this.selectionMode === 'multiple') {\n                for (let i = 0; i < this.selection.length; i++) {\n                    if (this.selection[i] == node) {\n                        index = i;\n                        break;\n                    }\n                }\n            }\n        }\n\n        return index;\n    }\n\n    isSelected(node: TreeNode) {\n        return this.findIndexInSelection(node) != -1;\n    }\n}\n\n@NgModule({\n    imports: [OrganizationChart, OrganizationChartNode, SharedModule],\n    exports: [OrganizationChart, OrganizationChartNode, SharedModule]\n})\nexport class OrganizationChartModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}