mirror of
https://github.com/carbon-design-system/carbon-components-svelte.git
synced 2025-09-15 10:21:05 +00:00
* refactor(search): resolve svelte file paths * docs(Search): add reactive example * refactor(tag): use class name directive for tag types, resolve svelte icon path * chore(button-skeleton): deprecate small prop * fix(breadcrumb-item): type default slot * refactor(breadcrumb-skeleton): omit unused index * refactor(aspect-ratio): use class name directive * refactor(accordion): use the class name directive, resolve svelte icon paths * refactor(code-snippet): use class name directive, resolve svelte icon paths * fix(code-snippet-skeleton): CodeSnippetSkeleton can only be single or multi * refactor(content-switcher): use class name directive * docs(content-switcher): add reactive example * docs(content-switcher): remove unused import * docs(toggle): add reactive example * refactor(tooltip-definition): use class name directive * refactor(tooltip-icon): use class name directive * refactor(tooltip): resolve svelte icon import * fix(select): type dispatched change event * refactor(select): resolve svelte icon import * feat(select-item): spread rest props, avoid $ variable name * fix(pagination-nav): type dispatched events * refactor(pagination): resolve svelte imports * fix(pagination): type dispatched update event * fix(overflow-menu): type dispatched close event * fix(number-input): type dispatched change event * refactor(modal): use class name directive, resolve svelte imports * refactor(inline-loading): use class name directive, resolve svelte imports * refactor(composed-modal): resolve svelte icon imports * refactor(combo-box): resolve svelte imports * fix(fluid-form): rest props should not override Form class * refactor(progress-step): resolve svelte icon imports
107 lines
2.2 KiB
TypeScript
107 lines
2.2 KiB
TypeScript
/// <reference types="svelte" />
|
||
|
||
export interface PaginationProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["div"]> {
|
||
/**
|
||
* Specify the current page index
|
||
* @default 1
|
||
*/
|
||
page?: number;
|
||
|
||
/**
|
||
* Specify the total number of items
|
||
* @default 0
|
||
*/
|
||
totalItems?: number;
|
||
|
||
/**
|
||
* Set to `true` to disable the pagination
|
||
* @default false
|
||
*/
|
||
disabled?: boolean;
|
||
|
||
/**
|
||
* Specify the forward button text
|
||
* @default "Next page"
|
||
*/
|
||
forwardText?: string;
|
||
|
||
/**
|
||
* Specify the backward button text
|
||
* @default "Previous page"
|
||
*/
|
||
backwardText?: string;
|
||
|
||
/**
|
||
* Specify the items per page text
|
||
* @default "Items per page:"
|
||
*/
|
||
itemsPerPageText?: string;
|
||
|
||
/**
|
||
* Override the item text
|
||
* @default (min, max) => `${min}–${max} items`
|
||
*/
|
||
itemText?: (min: number, max: number) => string;
|
||
|
||
/**
|
||
* Override the item range text
|
||
* @default (min, max, total) => `${min}–${max} of ${total} items`
|
||
*/
|
||
itemRangeText?: (min: number, max: number, total: number) => string;
|
||
|
||
/**
|
||
* Set to `true` to disable the page input
|
||
* @default false
|
||
*/
|
||
pageInputDisabled?: boolean;
|
||
|
||
/**
|
||
* Set to `true` to disable the page size input
|
||
* @default false
|
||
*/
|
||
pageSizeInputDisabled?: boolean;
|
||
|
||
/**
|
||
* Specify the number of items to display in a page
|
||
* @default 10
|
||
*/
|
||
pageSize?: number;
|
||
|
||
/**
|
||
* Specify the available page sizes
|
||
* @default [10]
|
||
*/
|
||
pageSizes?: number[];
|
||
|
||
/**
|
||
* Set to `true` if the number of pages is unknown
|
||
* @default false
|
||
*/
|
||
pagesUnknown?: boolean;
|
||
|
||
/**
|
||
* Override the page text
|
||
* @default (page) => `page ${page}`
|
||
*/
|
||
pageText?: (page: number) => string;
|
||
|
||
/**
|
||
* Override the page range text
|
||
* @default (current, total) => `of ${total} page${total === 1 ? "" : "s"}`
|
||
*/
|
||
pageRangeText?: (current: number, total: number) => string;
|
||
|
||
/**
|
||
* Set an id for the top-level element
|
||
* @default "ccs-" + Math.random().toString(36)
|
||
*/
|
||
id?: string;
|
||
}
|
||
|
||
export default class Pagination {
|
||
$$prop_def: PaginationProps;
|
||
$$slot_def: {};
|
||
|
||
$on(eventname: "update", cb: (event: CustomEvent<{ pageSize: number; page: number }>) => void): () => void;
|
||
$on(eventname: string, cb: (event: Event) => void): () => void;
|
||
}
|