import { CdkDragDrop } from '@angular/cdk/drag-drop'; import { FlatTreeControl } from '@angular/cdk/tree'; import { ChangeDetectorRef, OnInit, SimpleChanges } from '@angular/core'; import { MatTreeFlatDataSource, MatTreeFlattener } from '@angular/material/tree'; import { VhEventMediator, VhQueryAutoWeb } from 'vhautowebdb'; import { FunctionService } from 'vhobjects-service'; import { NzModalService } from 'ng-zorro-antd/modal'; import { LanguageService } from 'vhobjects-service'; import * as i0 from "@angular/core"; /** * Phần mở rộng của menu */ interface FlatNode { expandable: boolean; name: string; level: number; _id: string; link_page?: string; link_website?: string; subData?: any; icon?: string; group?: string; item?: any; groupParent?: string; id_page_category?: string; id_freeblock?: string; type?: string; click_action?: string; scroll_block_id?: string; scroll_distance?: number; } /** * Dạng data của 1 menu khi truyền đi và nhận được khi return */ interface MenuNode { name: string; children?: MenuNode[]; group?: string; _id: string; subData?: any; item?: any; link_page?: string; link_website?: string; icon?: string; click_action?: string; scroll_block_id?: string; scroll_distance?: number; groupParent?: string; id_page_category?: string; id_freeblock?: string; type?: string; } export declare class AtwMenuHorizontalAdmin implements OnInit { vhQueryAutoWeb: VhQueryAutoWeb; private ref; functionService: FunctionService; private vhEventMediator; private platformId; private nzModalService; private languageService; data: any; type: any; dataReturned: any; visibleSub: {}; dataAddMenu: {}; dataEditMenu: {}; dataAddSubMenu: {}; dataEditSubMenu: {}; isOpenAddMenu: boolean; isOpenEditMenu: boolean; isOpenAddFormSubMenu: boolean; isOpenEditFormSubMenu: boolean; isCallingCate: boolean; checkExistIdCategory: boolean; dataLoaded: boolean; blocks_of_page: any; /** Biến lưu cấu hình tự động dịch có đang bật không? Tránh gọi hàm getSetups_byFields quá nhiều lần */ isAutoTranslate: boolean; constructor(vhQueryAutoWeb: VhQueryAutoWeb, ref: ChangeDetectorRef, functionService: FunctionService, vhEventMediator: VhEventMediator, platformId: Object, nzModalService: NzModalService, languageService: LanguageService); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngAfterViewChecked(): void; getAllBlockBlank(): void; /** * Lấy dữ liệu từ */ getData(): void; closeModal(): void; /** * Mở form thêm menu */ openAddMenuItem(): void; /** * Đóng form thêm menu */ isCancelFormAddMenu(event: any): void; /** * Lấy từ liệu khi Lưu từ form thêm menu */ getDataFormAdd(event: any): void; /** * Kiểm tra là menu hay submenu và mở form sửa menu */ openEdit(item: any): void; /** * Mở form sửa menu */ openEditMenuItem(item: any): void; /** * Đóng form sửa menu */ isCancleFormEditMenu(event: any): void; /** * Lấy dữ liệu khi Lưu từ form chỉnh sửa menu */ getValueFormEditMenu(event: any): void; /** * Mở form thêm submenu */ openAddSubMenuItem(item: any): void; /** * Đóng form thêm submenu */ isCancelFormAddSub(event: any): void; /** * Lấy từ liệu khi Lưu từ form thêm submenu */ getValueFormAddSub(event: any): void; /** * Mở form sửa submenu */ openEditSubMenuItem(item: any): void; /** * Đóng form sửa submenu */ isCancleFormEditSub(event: any): void; /** * Lấy từ liệu khi Lưu từ form sửa submenu */ getValueFormEditSub(event: any): void; /** * Hàm duyệt cây */ loopTree(array: any, click_action: any, scroll_block_id: any): any; /** * Hàm tìm kiếm node tree */ deepSearch(array: any, targetId: any, type?: string): any; /** * Lấy giá trị true để gọi lại hàm getCate khi thêm sub category */ getDataCategoryAgain(event: any): void; /** * Lấy cây danh mục hiển thị */ getDataCate(): void; sortByOrder(arr: any[], order: number[]): any[]; /** * Xử lí data get về từ mat-tree */ private flatNodeCache; private _transformer; treeControl: FlatTreeControl; treeFlattener: MatTreeFlattener; dataSource: MatTreeFlatDataSource; hasChild: (_: number, node: FlatNode) => boolean; /** * Tìm node cha của mat-tree (Sử dụng hàm riêng) */ findParrentNode(menu: any): { currentLevel: number; id: string; }; /** * Xóa menu-item */ removeMenuItem(menu: any): void; /** * Hàm thêm icon */ addIconToParent(menu: any): void; /** * Hàm xóa icon */ deleteIcon(menu: any): void; /** * Hàm cập nhật lên database */ updateValueMenu(value: any): void; findRootNode(id: string, nodes: any): any; flattenIds(nodes: any[]): string[]; /** * Hàm thực hiện xử lý khi thay đổi vị trí của menu__item * * @param event */ cdkDropListDropped(event: CdkDragDrop): void; trackById: (_: number, node: FlatNode) => string; clamp(value: number, max: number): number; findParentNodeById(id: string, nodes: MenuNode[]): MenuNode | null; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};