UNPKG

svelte-common

Version:

common components and utils used in svelte apps

81 lines (80 loc) 2.43 kB
export function pageNavigation(elem: any, pg: any): void; /** * Generate actual sequence of page numbers to navigate to. * @param {number} numberOfPages * @param {number} currentPage * @param {Object|number} optionsOrNumberOfItems * @param {number} optionsOrNumberOfItems.numberOfItems * @param {number[][]} optionsOrNumberOfItems.spreads * @return {Iterable<number>} */ export function navigationItems(numberOfPages: number, currentPage: number, optionsOrNumberOfItems: any | number): Iterable<number>; /** * Pagination support store. * Pages go from 1 ... numberOfPages * @param {Map|Set|Array|readable} data * @param {Object} options * @param {number} [options.itemsPerPage] * @param {number} [options.page] current page * @param {Function} [options.sorter] * @param {Function} [options.filter] */ export class Pagination { constructor(data: any[], options: any); set data(data: any); fireSubscriptions(): void; set filter(filter: any); get filter(): any; set sorter(sorter: any); get sorter(): any; /** * Enshure that current page lies inside 1 ... numberOfPages */ recalibrateCurrentPage(): void; /** * Set current page. * First page has number 1. * @param {number} n */ set page(n: number); /** * @return {number} current page */ get page(): number; set itemsPerPage(n: number); get itemsPerPage(): number; subscribe(s: any): () => boolean; /** * Total number of items (filtered). * @return {number} */ get numberOfItems(): number; /** * Calculate item index range for a given page number. * @param {number} page 1... * @returns {[number,number]} */ itemRangeOnPage(page: number): [number, number]; /** * @return {number} */ get numberOfPages(): number; /** * Deliver items per page. * @see {itemsPerPage} * @return {number} */ get length(): number; get filteredItems(): any[]; /** * @see https://getbootstrap.com/docs/4.0/components/pagination * @see https://a11y-style-guide.com/style-guide/section-navigation.html#kssref-navigation-pagination */ pageNavigationElement(options: any): HTMLElement; [Symbol.iterator](): Generator<any, void, unknown>; #private; } export namespace defaultNavigationItemOptions { let numberOfItems: number; let spreads: number[][]; }