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

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[]