File

libs/rucken/ionic/src/lib/entities/groups/groups-list/groups-list-filters-modal/groups-list-filters-modal.ts

Methods

Static default
default()
Returns: void

Properties

id
id: any
Default value: undefined
sortField
sortField: SelectInput
Default value: undefined
Static sortFields
sortFields: SelectInput[]
sortType
sortType: SelectInput
Default value: undefined
Static sortTypes
sortTypes: SelectInput[]
Static strings
strings: { sortField: string; sortType: string; }
import { Group, serializeModel, translate } from '@rucken/core';
import { plainToClass, Transform, Type } from 'class-transformer';
import { IModel } from 'ngx-repository';
import { SelectInput } from '../../../../components/select-input/select-input';
import { keyToSelectInput, selectInputToKey } from '../../../../components/select-input/select-input.transformers';

export class GroupsListFiltersModal implements IModel {
    static strings = {
        sortField: translate('Sort field'),
        sortType: translate('Sort type')
    };
    static sortFields: SelectInput[] = [
        { id: 'id', title: translate('Id') },
        { id: 'name', title: translate('Name') },
        { id: 'title', title: translate('Title') }
    ];
    static sortTypes: SelectInput[] = [
        { id: 'asc', title: translate('Asc') },
        { id: 'desc', title: translate('Desc') }
    ];
    id = undefined;
    @Type(serializeModel(SelectInput))
    @Transform(
        keyToSelectInput({ items: GroupsListFiltersModal.sortFields }),
        { toClassOnly: true, groups: ['manual'] }
    )
    @Transform(
        selectInputToKey({ items: GroupsListFiltersModal.sortFields }),
        { toPlainOnly: true, groups: ['manual'] }
    )
    sortField: SelectInput = undefined;
    @Type(serializeModel(SelectInput))
    @Transform(
        keyToSelectInput({ items: GroupsListFiltersModal.sortTypes }),
        { toClassOnly: true, groups: ['manual'] }
    )
    @Transform(
        selectInputToKey({ items: GroupsListFiltersModal.sortTypes }),
        { toPlainOnly: true, groups: ['manual'] }
    )
    sortType: SelectInput = undefined;

    static default() {
        return plainToClass(
            GroupsListFiltersModal,
            {
                sortField: 'id',
                sortType: 'desc'
            },
            {
                groups: ['manual']
            }
        );
    }
}

results matching ""

    No results matching ""