Fixed #1836 - For OrganizationChart

pull/1846/head
mertsincan 2021-12-01 16:58:03 +03:00
parent 5deb7b18c0
commit 1d6377119d
1 changed files with 137 additions and 15 deletions

View File

@ -1,24 +1,146 @@
import { VNode } from 'vue'; import { VNode } from 'vue';
import { ClassComponent, GlobalComponentConstructor } from '../ts-helpers';
interface OrganizationChartProps { type OrganizationChartSelectionModeType = 'single' | 'multiple' | undefined;
value?: any;
selectionKeys?: any; export interface OrganizationChartNode {
selectionMode?: string; /**
collapsedKeys?: any; * Unique identifier of the node. (required)
*/
key: any;
/**
* Type of the node to match a template.
*/
type?: string;
/**
* Style class of the node content.
*/
styleClass?: string;
/**
* Data represented by the node.
*/
data?: any;
/**
* Whether node is selectable when selection is enabled.
* Default value is true.
*/
selectable?: boolean;
/**
* Whether node is collapsible when node expansion is enabled.
* Default value is true.
*/
collapsible?: boolean;
/**
* Children nodes array.
*/
children?: OrganizationChartNode[];
/**
* Optional keys
*/
[key: string]: any;
}
export interface OrganizationChartSelectionKeys {
/**
* Optional keys
*/
[key: string]: any;
}
export interface OrganizationChartCollapsedKeys {
/**
* Optional keys
*/
[key: string]: any;
}
export interface OrganizationChartProps {
/**
* Value of the component.
*/
value?: OrganizationChartNode[];
/**
* A map instance of key-value pairs to represented the selected nodes.
*/
selectionKeys?: OrganizationChartSelectionKeys;
/**
* Type of the selection.
* @see OrganizationChartSelectionModeType
*/
selectionMode?: OrganizationChartSelectionModeType;
/**
* A map instance of key-value pairs to represented the collapsed nodes.
*/
collapsedKeys?: OrganizationChartCollapsedKeys;
/**
* Whether the nodes can be expanded or toggled.
*/
collapsible?: boolean; collapsible?: boolean;
} }
declare class OrganizationChart { export interface OrganizationChartSlots {
$props: OrganizationChartProps; /**
$emit(eventName: 'update:selectionKeys', value: any): this; * Custom content template.
$emit(eventName: 'update:collapsedKeys', value: boolean): this; */
$emit(eventName: 'node-select', node: any): this; default: (node: any) => VNode[];
$emit(eventName: 'node-unselect', node: any): this; /**
$emit(eventName: 'node-expand', node: any): this; * Dynamic content template.
$emit(eventName: 'node-collapsed', node: any): this; */
$slots: { [key: string]: (node: any) => VNode[];
[key: string]: VNode[]; }
type OrganizationChartEmits = {
/**
* Emitted when the value changes.
* @param {*} value - New value.
*/
'update:selectionKeys': (value: any) => void;
/**
* Emitted when the value changes.
* @param {boolean} value - New value.
*/
'update:collapsedKeys': (value: boolean) => void;
/**
* Callback to invoke when a suggestion is selected.
* @param {OrganizationChartNode} node - Node instance.
*/
'node-select': (node: OrganizationChartNode) => void;
/**
* Callback to invoke when a node is unselected.
* @param {OrganizationChartNode} node - Node instance.
*/
'node-unselect': (node: OrganizationChartNode) => void;
/**
* Callback to invoke when a node is expanded.
* @param {OrganizationChartNode} node - Node instance.
*/
'node-expand': (node: OrganizationChartNode) => void;
/**
* Callback to invoke when a node is collapsed.
* @param {OrganizationChartNode} node - Node instance.
*/
'node-collapsed': (node: OrganizationChartNode) => void;
}
declare class OrganizationChart extends ClassComponent<OrganizationChartProps, OrganizationChartSlots, OrganizationChartEmits> { }
declare module '@vue/runtime-core' {
interface GlobalComponents {
OrganizationChart: GlobalComponentConstructor<OrganizationChart>
} }
} }
/**
*
* OrganizationChart visualizes hierarchical organization data.
*
* Helper API:
*
* - OrganizationChartNode
*
* Demos:
*
* - [OrganizationChart](https://www.primefaces.org/primevue/showcase/#/organizationchart)
*
*/
export default OrganizationChart; export default OrganizationChart;