UNPKG

@linid-dm/directory-manager-client-core

Version:

Core package by providing a set of angular components for the Directory Manager app.

57 lines (56 loc) 3.84 kB
/** * Copyright (C) 2020-2024 Linagora * * This program is free software: you can redistribute it and/or modify it under * the terms of the GNU Affero General Public License as published by the Free * Software Foundation, either version 3 of the License, or (at your option) any * later version, provided you comply with the Additional Terms applicable for * LinID Directory Manager software by LINAGORA pursuant to Section 7 of the GNU * Affero General Public License, subsections (b), (c), and (e), pursuant to * which these Appropriate Legal Notices must notably (i) retain the display of * the "LinID™" trademark/logo at the top of the interface window, the display * of the “You are using the Open Source and free version of LinID™, powered by * Linagora © 2009–2013. Contribute to LinID R&D by subscribing to an Enterprise * offer!” infobox and in the e-mails sent with the Program, notice appended to * any type of outbound messages (e.g. e-mail and meeting requests) as well as * in the LinID Directory Manager user interface, (ii) retain all hypertext * links between LinID Directory Manager and https://linid.org/, as well as * between LINAGORA and LINAGORA.com, and (iii) refrain from infringing LINAGORA * intellectual property rights over its trademarks and commercial brands. Other * Additional Terms apply, see <http://www.linagora.com/licenses/> for more * details. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more * details. * * You should have received a copy of the GNU Affero General Public License and * its applicable Additional Terms for LinID Directory Manager along with this * program. If not, see <http://www.gnu.org/licenses/> for the GNU Affero * General Public License version 3 and <http://www.linagora.com/licenses/> for * the Additional Terms applicable to the LinID Directory Manager software. */ import { IConfig, IDataNode, IDataNodeIdsFields, IResourceType, IRouteDetail, JsTable } from '../../../../shared'; import { ITreeConfig } from '../interfaces/data.interface'; export declare class DataTreeViewProperties { private dataSource; constructor(object?: DataTreeViewProperties); getDataSource(): IDataNode[]; setDataSource(dataSource: IDataNode[]): void; } export declare function getBuildTreeConfig(selectedResourceTypeId: string, configs: JsTable<IConfig>, resourcesTypes: JsTable<IResourceType>): ITreeConfig[]; export declare function buildNodeTree(data: any, endpointsByType: { [id: string]: string; }, parentNode: IDataNode, nameModelRef: { [id: string]: string; }): IDataNode; export declare function getRemovedNodesSubTree(removedNodesIds: string[], triggerNode: IDataNode, triggerNodeParent: IDataNode, rootNodes: IDataNode[]): IDataNode[]; export declare function deleteTreeNodes(deletedNodesSubtree: IDataNode[], deletedNodesIds: string[]): void; export declare function getNodeByLink(link: string, tree: IDataNode[]): IDataNode; export declare function sortTree(dataTree: IDataNode[]): any; export declare function getFlattenDisplayedTree(dataTree: IDataNode[], expandedNodesIds: Set<string>): IDataNode[]; export declare function getNodesIdsNamesParentIds(dataTree: IDataNode[], parentId?: string): IDataNodeIdsFields[]; export declare function updateLevelForPadding(parentLevelForPadding: number, node: IDataNode): IDataNode; export declare function getParentNode(childNode: IDataNode, dataTree: IDataNode[]): IDataNode; export declare function updateRoutingHistory(routingHistory: IRouteDetail[], selectedNodeId: string, dataTree: IDataNode[], previousUrl: string, updatedUrl: string, newNodeExternalId?: string): IRouteDetail[];