UNPKG

@agendize/design-system

Version:
185 lines 6.62 kB
import { CardProperties } from "../card/viewModel"; import { Ref } from "vue"; import { ButtonColor } from "../../action/button/viewModel"; export interface CardItemProperties extends CardProperties { picture?: { url: string; alt: string; }; disabled?: boolean; action?: string; data?: any; } export interface CardListCustomAction { title?: string; ariaLabel: string; icon?: string; action: Function; color?: ButtonColor; } export declare const BasicSearchModeValues: string[]; export type BasicSearchMode = typeof BasicSearchModeValues[number]; export interface CardListItemSearchOptions { basicSearch?: { filter?: CardListItemFilter; placeholder: string; ariaLabel: string; button?: { icon?: string; label?: string; ariaLabel: string; }; mode?: BasicSearchMode; }; quickFilters?: { exclusive?: boolean; defaultAllFilter?: boolean; allFilterLabel?: string; filters: { id: string; title: string; ariaLabel: string; default?: boolean; visible?: boolean; filter?: CardListItemFilter; }[]; }; advancedFilters?: { filter: CardListItemFilter; }; } export interface CardListItemSearchFilterData { basic?: string; quickFilters?: Map<string, boolean>; orderBy?: string; } export declare const BodyOverflowValues: string[]; export type BodyOverflow = typeof BodyOverflowValues[number]; export interface CardListProperties { id?: string; items?: CardItemProperties[]; fetchItems?: CardListItemFetch; searchOption?: CardListItemSearchOptions; bodyOverflow?: BodyOverflow; itemClickable?: boolean; customAction?: CardListCustomAction; persistence?: boolean; defaultPicture?: { url: string; alt: string; }; maxElementByLine?: number; loadingOptions?: CardListLoadingOptions; imgHeight?: string; emptyLabel?: string; } export interface CardListItemFetchResponse { items?: CardItemProperties[]; totalItems?: number; } export interface CardListLoadingOptions { picture: boolean; subtitle: boolean; action: boolean; cardNumber: number; } export declare type CardListItemFetch = (data?: CardListItemSearchFilterData, callback?: Function) => Promise<CardItemProperties[] | CardListItemFetchResponse>; export type CardListItemFilter = (item: CardItemProperties, data?: CardListItemSearchFilterData, callback?: Function) => boolean; export declare function StructuredCardListViewModel(props: CardListProperties, emits: any, searchInput: Ref, localList: Ref, overload?: { filterFunction?: (items: CardItemProperties[]) => CardItemProperties[]; }): { loading: Ref<boolean, boolean>; totalItems: Ref<number, number>; searchBarInput: Ref<string | undefined, string | undefined>; quickFilters: Ref<Map<string, boolean> & Omit<Map<string, boolean>, keyof Map<any, any>>, Map<string, boolean> | (Map<string, boolean> & Omit<Map<string, boolean>, keyof Map<any, any>>)>; allItems: Ref<{ picture?: { url: string; alt: string; } | undefined; disabled?: boolean | undefined; action?: string | undefined; data?: any; id: string; variant?: import("../card/viewModel").CardVariant | undefined; title: string; subTitle?: string | undefined; description?: string | undefined; imgHeight?: string | undefined; stopPropagation?: boolean | undefined; selectable?: boolean | undefined; ariaLabel: string; }[], CardItemProperties[] | { picture?: { url: string; alt: string; } | undefined; disabled?: boolean | undefined; action?: string | undefined; data?: any; id: string; variant?: import("../card/viewModel").CardVariant | undefined; title: string; subTitle?: string | undefined; description?: string | undefined; imgHeight?: string | undefined; stopPropagation?: boolean | undefined; selectable?: boolean | undefined; ariaLabel: string; }[]>; filteredItemsRow: Ref<{ picture?: { url: string; alt: string; } | undefined; disabled?: boolean | undefined; action?: string | undefined; data?: any; id: string; variant?: import("../card/viewModel").CardVariant | undefined; title: string; subTitle?: string | undefined; description?: string | undefined; imgHeight?: string | undefined; stopPropagation?: boolean | undefined; selectable?: boolean | undefined; ariaLabel: string; }[], CardItemProperties[] | { picture?: { url: string; alt: string; } | undefined; disabled?: boolean | undefined; action?: string | undefined; data?: any; id: string; variant?: import("../card/viewModel").CardVariant | undefined; title: string; subTitle?: string | undefined; description?: string | undefined; imgHeight?: string | undefined; stopPropagation?: boolean | undefined; selectable?: boolean | undefined; ariaLabel: string; }[]>; hasCustomAction: import("vue").ComputedRef<boolean>; searchContext: import("vue").ComputedRef<CardListItemSearchFilterData>; searched: import("vue").ComputedRef<boolean>; hasQuickFilter: import("vue").ComputedRef<boolean>; orderBy: Ref<string | undefined, string | undefined>; initDefaultQuickFilters: () => Map<string, boolean>; quickFilterAction: (filterId: string, disabledIfAlreadyActive?: boolean) => void; triggerFilter: () => void; onBasicSearch: () => void; onBasicSearchEnter: () => void; onBasicSearchButton: () => void; filter: () => void; applyBasicFilter: (items: CardItemProperties[]) => CardItemProperties[]; applyQuickFilters: (items: CardItemProperties[]) => CardItemProperties[]; applyFiltersFunction: (item: CardItemProperties, filters?: (CardListItemFilter | undefined)[]) => boolean; applyFilters: (items?: CardItemProperties[]) => CardItemProperties[]; convertItemsAndFilter: (items?: CardItemProperties[], initialisation?: boolean) => CardItemProperties[]; loadAndFetch: (pageParam?: number) => void; focus: () => void; }; //# sourceMappingURL=viewModel.d.ts.map