TypedBaseListComponent
TypedBaseListComponent
A version of the BaseListComponent which is designed to be used with a TypedDocumentNode.
Signature
class TypedBaseListComponent<T extends TypedDocumentNode<any, Vars>, Field extends keyof ResultOf<T>, Vars extends { options: { filter: any; sort: any } } = VariablesOf<T>> extends BaseListComponent<ResultOf<T>, ItemOf<ResultOf<T>, Field>, VariablesOf<T>> implements OnInit {
availableLanguages$: Observable<LanguageCode[]>;
contentLanguage$: Observable<LanguageCode>;
protected protected dataService = inject(DataService);
protected protected router = inject(Router);
protected protected serverConfigService = inject(ServerConfigService);
constructor()
protected configure(config: {
document: T;
getItems: (data: ResultOf<T>) => { items: Array<ItemOf<ResultOf<T>, Field>>; totalItems: number };
setVariables?: (skip: number, take: number) => VariablesOf<T>;
refreshListOnChanges?: Array<Observable<any>>;
}) => ;
ngOnInit() => ;
createFilterCollection() => DataTableFilterCollection<NonNullable<NonNullable<Vars['options']>['filter']>>;
createSortCollection() => DataTableSortCollection<NonNullable<NonNullable<Vars['options']>['sort']>>;
setLanguage(code: LanguageCode) => ;
getCustomFieldConfig(key: Exclude<keyof CustomFields, '__typename'>) => CustomFieldConfig[];
}
Extends
- BaseListComponent<ResultOf<T>, ItemOf<ResultOf<T>, Field>, VariablesOf<T>>
Implements
- OnInit
Members
availableLanguages$
property
type:
Observable<LanguageCode[]>
contentLanguage$
property
type:
Observable<LanguageCode>
dataService
property
type:
router
property
type:
serverConfigService
property
type:
constructor
method
type:
() => TypedBaseListComponent
configure
method
type:
(config: { document: T; getItems: (data: ResultOf<T>) => { items: Array<ItemOf<ResultOf<T>, Field>>; totalItems: number }; setVariables?: (skip: number, take: number) => VariablesOf<T>; refreshListOnChanges?: Array<Observable<any>>; }) =>
ngOnInit
method
type:
() =>
createFilterCollection
method
type:
() => DataTableFilterCollection<NonNullable<NonNullable<Vars['options']>['filter']>>
createSortCollection
method
type:
() => DataTableSortCollection<NonNullable<NonNullable<Vars['options']>['sort']>>
setLanguage
method
type:
(code: LanguageCode) =>
getCustomFieldConfig
method
type:
(key: Exclude<keyof CustomFields, '__typename'>) => CustomFieldConfig[]