import { DataHandlingService, ISelectItem, SelectService } from '@n3/ng-base'; import { Observable } from 'rxjs/Observable'; import { InstitutionService } from '@n3/ng-api-institution'; import { ClassifierListService } from '@n3/ng-api-classifier-list'; import { CmsService } from '@n3/ng-api-cms'; export declare class CmsSelectService extends SelectService { private institutionService; private cmsService; private classifierListService; private dhs; constructor(institutionService: InstitutionService, cmsService: CmsService, classifierListService: ClassifierListService, dhs: DataHandlingService); /** * Возвращает Observable, получающий опции для селекта * * @param filter - фильтр для метода получения опций * @param type - Тип справочника (/models/enums/types) * @return Observable */ getOptions(filter: any, type: string): Observable; /** * Преобразует ответ сервера в массив значений формата ISelectItem * * @param response - Ответ сервера * @param type - Тип справочника (/models/enums/types) * @return ISelectItem[] */ importData(response: any, type: string): ISelectItem[]; /** * Преобразует массив значений в используемый в n3-select формат * * @param values - Массив сущностей из справочника * @param type - Тип справочника (/models/enums/types) * @return ISelectItem[] */ importValue(values: any[], type: string): ISelectItem[]; /** * Преобразует значения, выбранные в селекте, к нужному формату для отправки на сервер * * @param values - Массив выбранных значений * @param type - Тип справочника (/models/enums/types) * @return any[] */ exportValue(values: ISelectItem[], type: string): any[]; /** * Создаёт дерево из плоского массива сущностей, имеющих родителя * * @param arr - Массив сущностей * @param parentPath - Путь к идентификатору родителя * @return any[] - Иерархическое дерево */ private getItemsTree(arr, parentPath); /** * Возвращает объект с путями, по которым в сущностях справочника находятся id и name * * @param type - тип справочника (/models/enums/types) * @return Объект с путями к id, name и parent */ private preparePaths(type); /** * Get institutions list * @param filter * @return Observable */ private getInstitution(filter); /** * Get departments list * @param filter * @return Observable */ private getDepartment(filter); /** * Get regions list * @param filter * @return Observable */ private getRegion(filter); /** * Get districts list * @param filter * @return Observable */ private getDistrict(filter); /** * Get education directions list * @param filter * @return Observable */ private getEducationDirection(filter); /** * Get education levels list * @param filter * @return Observable */ private getEducationLevel(filter); /** * Get event levels list * @param filter * @return Observable */ private getEventLevel(filter); /** * Get art kinds list * @param filter * @return Observable */ private getArtKind(filter); /** * Get sport kinds list * @param filter * @return Observable */ private getSportKind(filter); /** * Get categories list * @param filter * @return Observable */ private getCategory(filter); [key: string]: any; }