import { HttpClient } from '@angular/common/http'; import { EventEmitter, OnInit } from '@angular/core'; import { VhQueryAutoWeb, VhEventMediator, VhAlgorithm } from 'vhautowebdb'; import { FunctionService } from 'vhobjects-service/src/services'; import { MatDialog } from '@angular/material/dialog'; import * as i0 from "@angular/core"; export declare class AtwSearchConfig implements OnInit { vhQueryAutoWeb: VhQueryAutoWeb; vhEventMediator: VhEventMediator; private vhAlgorithm; private http; private platformId; functionService: FunctionService; private matDialog; objectChoosing: any; class: any; config: any; type: any; staticdata: any; visible_config_tool: boolean; device: any; save: EventEmitter; closeConfigEvent: EventEmitter; closeConfigTool: EventEmitter; main_sectors: any; isCollapsed: boolean; isViewAll: boolean; currentViewAll: any; stylefields: ({ title: string; index: number; isDrop: boolean; } | { title: string; index: number; isDrop?: undefined; })[]; arr_link_page: any; id_subproject: any; backgroundColor: any; fontsListItem: { name: string; value: string; }[]; positionOptions: { label: string; value: string; }[]; hidePriceMainSector: string[]; mainSectorTranslate: any; colorSelectedIndex: number; constructor(vhQueryAutoWeb: VhQueryAutoWeb, vhEventMediator: VhEventMediator, vhAlgorithm: VhAlgorithm, http: HttpClient, platformId: Object, functionService: FunctionService, matDialog: MatDialog); ngOnInit(): void; ngOnChanges(): void; /** * Xử lý lấy link các page về. */ getLinkAllPages(): void; openViewAll(field: any): void; openMap: { [name: string]: boolean; }; openHandler(value: string): void; /** * @param index : vị trí phần tử muốn xóa * @param object : Loại vật thể để gán màu gradient (button, input, ...) * Hàm này cho phép xóa phần tử màu gradient trong array bằng index của phần tử đó. */ deleteGradient(index: any, object: any): void; /** * Hàm này thực hiện thêm màu gradient vào array. * @param value : Màu gradient mới * @param object : Loại vật thể để gán màu gradient (button, input, ...) */ addGradient(value: any, object: any): void; /** * Chuyển đổi mã màu hexadecimal thành mã màu rgba. * @param hex : tham số trả về mã màu hex * @returns string : trả về chuỗi rgb */ hexToRGB(hex: string): string; /** * hàm cập nhật background linear-gradient * @param type : Loại vật thể để gán màu gradient (button, input, ...) */ updateBackgroundRgb(object: any): void; /** Hàm này cho phép chọn options direction của màu gradient * @param direction : trả về hướng phối màu được chọn * @param event : trả về element được active * @param object : Loại vật thể để gán màu gradient (button, input, ...) */ chooseOption(direction: any, event: any, object: any): void; /** * Hàm này dùng để click chọn màu nền của danh sách màu. * @param bgColor : trả về màu được chọn * @param event : trả về element được active * @param object : Loại vật thể để gán màu gradient (button, input, ...) */ chooseBg(bgColor: any, event: any, object: any): void; updateObject(): void; updateClass(): void; updateConfig(): void; /** Xử lí lưu vị trí ảnh * -> xử lí dữ liệu bóng -> css: object-position: `x y` */ handleSetPositionImage(): void; /** * hàm này nhận sk thay đổi width height từ component app-width-height-config truyền về * @param event width hieght của element sau khi thay đổi */ changeWidthHeight(event: any): void; /** * Cập nhật staticdata vào database. */ updateStaticData(): void; showResult(): void; hideResult(): void; /** * Mở popup so sánh màu nền và màu chữ có tương phản hay không * (Để tối ưu Accessibility trong SEO) */ openColorContrast(): void; /** * Xử lý sự kiện kéo thả để thay đổi thứ tự các phần tử trong mảng. * @param {Object} item - Đối tượng chứa mảng dữ liệu. * @param {CdkDragDrop} event - Sự kiện kéo thả từ Angular CDK. */ handleListColorPositionDrop(event: any): void; /** * Hàm theo dõi (trackBy) cho vòng lặp ngFor trong Angular. * Giúp Angular định danh các phần tử trong danh sách dựa trên chỉ số (index) * thay vì giá trị của phần tử. Điều này ngăn chặn việc render lại toàn bộ DOM * khi giá trị chuỗi thay đổi, từ đó khắc phục lỗi mất focus khi người dùng nhập liệu. * @param {number} index - Chỉ số của phần tử hiện tại trong mảng. * @param {any} item - Giá trị của phần tử tại vị trí index đó. * @returns {number} Trả về index để Angular dùng làm khóa định danh. */ trackColorListByIndex(index: number, item: any): number; /** * Hàm xử lý thêm một item color mới vào danh sách màu */ handleAddColor(): void; /** * Hàm xử lý xoá một item màu trong danh sách color */ handleRemoveColor(index: number): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }