UNPKG

@aotearoan/neon

Version:

Neon is a lightweight design library of Vue 3 components with minimal dependencies.

567 lines (566 loc) 19.1 kB
import { NeonFunctionalColor } from '@/model/common/color/NeonFunctionalColor'; /** * A pagination component that displays a list of page numbers and allows the user to navigate between pages. Typically, * the component displays the first and last page numbers and 3 pages before and after the current page. */ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ /** * The current page number. */ page: { type: NumberConstructor; required: true; }; /** * The URL template for the pagination links. The template should contain a '{page}' placeholder that will be * substituted in links with the correct page number. */ urlTemplate: { type: StringConstructor; }; /** * The number of items per page. */ pageSize: { type: NumberConstructor; default: number; }; /** * The total number of items. */ total: { type: NumberConstructor; required: true; }; /** * Whether to display links to the first and last pages. */ displayFirstAndLast: { type: BooleanConstructor; default: boolean; }; /** * The accent color of the component. */ color: { type: () => NeonFunctionalColor; default: () => NeonFunctionalColor; }; }>, { pageCount: import("vue").ComputedRef<number>; hidePagination: import("vue").ComputedRef<boolean>; previousPage: import("vue").ComputedRef<number>; disabledPrevious: import("vue").ComputedRef<boolean>; nextPage: import("vue").ComputedRef<number>; disabledNext: import("vue").ComputedRef<boolean>; showFirstPageWithEllipsis: import("vue").ComputedRef<boolean>; showLastPageWithEllipsis: import("vue").ComputedRef<boolean>; pageRange: import("vue").ComputedRef<number[]>; url: (page: number) => string | undefined; emit: (event: "page-change", ...args: any[]) => void; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "page-change"[], "page-change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ /** * The current page number. */ page: { type: NumberConstructor; required: true; }; /** * The URL template for the pagination links. The template should contain a '{page}' placeholder that will be * substituted in links with the correct page number. */ urlTemplate: { type: StringConstructor; }; /** * The number of items per page. */ pageSize: { type: NumberConstructor; default: number; }; /** * The total number of items. */ total: { type: NumberConstructor; required: true; }; /** * Whether to display links to the first and last pages. */ displayFirstAndLast: { type: BooleanConstructor; default: boolean; }; /** * The accent color of the component. */ color: { type: () => NeonFunctionalColor; default: () => NeonFunctionalColor; }; }>> & Readonly<{ "onPage-change"?: ((...args: any[]) => any) | undefined; }>, { color: NeonFunctionalColor; pageSize: number; displayFirstAndLast: boolean; }, {}, { NeonButton: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ href: { type: StringConstructor; default: null; }; label: { type: StringConstructor; default: null; }; size: { type: () => import("../../../neon").NeonButtonSize; default: import("../../../neon").NeonButtonSize; }; color: { type: () => NeonFunctionalColor; default: NeonFunctionalColor; }; inverse: { type: BooleanConstructor; default: boolean; }; alternateColor: { type: () => NeonFunctionalColor; default: null; }; icon: { type: StringConstructor; default: null; }; iconAriaLabel: { type: StringConstructor; }; iconPosition: { type: () => import("../../../neon").NeonHorizontalPosition; default: import("../../../neon").NeonHorizontalPosition; }; buttonStyle: { type: () => import("../../../neon").NeonButtonStyle; default: import("../../../neon").NeonButtonStyle; }; buttonType: { type: () => import("../../../neon").NeonButtonType; default: import("../../../neon").NeonButtonType; }; state: { type: () => import("../../../neon").NeonState; default: import("../../../neon").NeonState; }; disabled: { type: BooleanConstructor; default: boolean; }; transparent: { type: BooleanConstructor; default: boolean; }; outline: { type: BooleanConstructor; default: boolean; }; circular: { type: BooleanConstructor; default: null; }; fullWidth: { type: BooleanConstructor; default: null; }; indicator: { type: BooleanConstructor; default: boolean; }; indicatorExpanded: { type: BooleanConstructor; default: null; }; }>, { iconName: import("vue").ComputedRef<string>; classes: import("vue").ComputedRef<(string | false | { [x: string]: boolean | "" | NeonFunctionalColor; 'neon-button--text-transparent': boolean; 'neon-button--disabled': boolean; 'neon-button--inverse': boolean; 'neon-button--circular': boolean; 'neon-button--no-outline': boolean; 'neon-button--full-width': boolean; 'neon-button--with-icon neon-button--icon-only': boolean | ""; 'neon-button--with-icon neon-button--icon-left': boolean | ""; 'neon-button--with-icon neon-button--icon-right': boolean | ""; })[]>; button: import("vue").Ref<HTMLElement | null, HTMLElement | null>; attrs: { [x: string]: unknown; }; sanitizedAttributes: import("vue").ComputedRef<{ [x: string]: unknown; }>; clickLink: () => void | undefined; clickButton: () => void; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ href: { type: StringConstructor; default: null; }; label: { type: StringConstructor; default: null; }; size: { type: () => import("../../../neon").NeonButtonSize; default: import("../../../neon").NeonButtonSize; }; color: { type: () => NeonFunctionalColor; default: NeonFunctionalColor; }; inverse: { type: BooleanConstructor; default: boolean; }; alternateColor: { type: () => NeonFunctionalColor; default: null; }; icon: { type: StringConstructor; default: null; }; iconAriaLabel: { type: StringConstructor; }; iconPosition: { type: () => import("../../../neon").NeonHorizontalPosition; default: import("../../../neon").NeonHorizontalPosition; }; buttonStyle: { type: () => import("../../../neon").NeonButtonStyle; default: import("../../../neon").NeonButtonStyle; }; buttonType: { type: () => import("../../../neon").NeonButtonType; default: import("../../../neon").NeonButtonType; }; state: { type: () => import("../../../neon").NeonState; default: import("../../../neon").NeonState; }; disabled: { type: BooleanConstructor; default: boolean; }; transparent: { type: BooleanConstructor; default: boolean; }; outline: { type: BooleanConstructor; default: boolean; }; circular: { type: BooleanConstructor; default: null; }; fullWidth: { type: BooleanConstructor; default: null; }; indicator: { type: BooleanConstructor; default: boolean; }; indicatorExpanded: { type: BooleanConstructor; default: null; }; }>> & Readonly<{ onClick?: ((...args: any[]) => any) | undefined; }>, { color: NeonFunctionalColor; icon: string; label: string; inverse: boolean; disabled: boolean; href: string; size: import("../../../neon").NeonButtonSize; alternateColor: NeonFunctionalColor; outline: boolean; iconPosition: import("../../../neon").NeonHorizontalPosition; buttonStyle: import("../../../neon").NeonButtonStyle; buttonType: import("../../../neon").NeonButtonType; state: import("../../../neon").NeonState; transparent: boolean; circular: boolean; fullWidth: boolean; indicator: boolean; indicatorExpanded: boolean; }, {}, { NeonExpansionIndicator: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ expanded: { type: BooleanConstructor; default: boolean; }; inverse: { type: BooleanConstructor; default: boolean; /** * The current page number. */ }; disabled: { type: BooleanConstructor; default: boolean; }; color: { type: () => NeonFunctionalColor; default: null; }; }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ expanded: { type: BooleanConstructor; default: boolean; }; inverse: { type: BooleanConstructor; default: boolean; /** * The current page number. */ }; disabled: { type: BooleanConstructor; default: boolean; }; color: { type: () => NeonFunctionalColor; default: null; }; }>> & Readonly<{}>, { color: NeonFunctionalColor; inverse: boolean; disabled: boolean; expanded: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; NeonIcon: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ name: { type: StringConstructor; required: true; }; id: { type: StringConstructor; default: null; }; color: { type: () => NeonFunctionalColor; default: null; }; inverse: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; }>, { sanitizedAttributes: import("vue").ComputedRef<{ [x: string]: unknown; }>; icon: import("vue").ComputedRef<string | undefined>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ name: { type: StringConstructor; required: true; }; id: { type: StringConstructor; default: null; }; color: { type: () => NeonFunctionalColor; default: null; }; inverse: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; }>> & Readonly<{}>, { color: NeonFunctionalColor; id: string; inverse: boolean; disabled: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; NeonLink: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ href: { type: StringConstructor; default: null; }; noStyle: { type: BooleanConstructor; default: boolean; }; outlineStyle: { type: () => import("../../../neon").NeonOutlineStyle; default: import("../../../neon").NeonOutlineStyle; }; externalIndicator: { type: BooleanConstructor; default: boolean; }; }>, { neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>; routerUrl: import("vue").ComputedRef<string | undefined>; sanitizedAttributes: import("vue").ComputedRef<{ [x: string]: unknown; }>; activeRoute: import("vue").ComputedRef<boolean | "" | undefined>; exactRoute: import("vue").ComputedRef<boolean | "" | undefined>; onClick: () => void; onSpace: () => Promise<void>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ href: { type: StringConstructor; default: null; }; noStyle: { type: BooleanConstructor; default: boolean; }; outlineStyle: { type: () => import("../../../neon").NeonOutlineStyle; default: import("../../../neon").NeonOutlineStyle; }; externalIndicator: { type: BooleanConstructor; default: boolean; }; }>> & Readonly<{ onClick?: ((...args: any[]) => any) | undefined; }>, { href: string; noStyle: boolean; outlineStyle: import("../../../neon").NeonOutlineStyle; externalIndicator: boolean; }, {}, { NeonIcon: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ name: { type: StringConstructor; required: true; }; id: { type: StringConstructor; default: null; }; color: { type: () => NeonFunctionalColor; default: null; }; inverse: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; }>, { sanitizedAttributes: import("vue").ComputedRef<{ [x: string]: unknown; }>; icon: import("vue").ComputedRef<string | undefined>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ name: { type: StringConstructor; required: true; }; id: { type: StringConstructor; default: null; }; color: { type: () => NeonFunctionalColor; default: null; }; inverse: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; }>> & Readonly<{}>, { color: NeonFunctionalColor; id: string; inverse: boolean; disabled: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; NeonIcon: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ name: { type: StringConstructor; required: true; }; id: { type: StringConstructor; default: null; }; color: { type: () => NeonFunctionalColor; default: null; }; inverse: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; }>, { sanitizedAttributes: import("vue").ComputedRef<{ [x: string]: unknown; }>; icon: import("vue").ComputedRef<string | undefined>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ name: { type: StringConstructor; required: true; }; id: { type: StringConstructor; default: null; }; color: { type: () => NeonFunctionalColor; default: null; }; inverse: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; }>> & Readonly<{}>, { color: NeonFunctionalColor; id: string; inverse: boolean; disabled: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default _default;