first commit
This commit is contained in:
127
node_modules/vant/es/pagination/Pagination.d.ts
generated
vendored
Normal file
127
node_modules/vant/es/pagination/Pagination.d.ts
generated
vendored
Normal file
@@ -0,0 +1,127 @@
|
||||
import { type ExtractPropTypes } from 'vue';
|
||||
export type PaginationMode = 'simple' | 'multi';
|
||||
export declare const paginationProps: {
|
||||
mode: {
|
||||
type: import("vue").PropType<PaginationMode>;
|
||||
default: PaginationMode;
|
||||
};
|
||||
prevText: StringConstructor;
|
||||
nextText: StringConstructor;
|
||||
pageCount: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
totalItems: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showPageSize: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
itemsPerPage: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
forceEllipses: BooleanConstructor;
|
||||
showPrevButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showNextButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
};
|
||||
export type PaginationProps = ExtractPropTypes<typeof paginationProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
mode: {
|
||||
type: import("vue").PropType<PaginationMode>;
|
||||
default: PaginationMode;
|
||||
};
|
||||
prevText: StringConstructor;
|
||||
nextText: StringConstructor;
|
||||
pageCount: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
totalItems: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showPageSize: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
itemsPerPage: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
forceEllipses: BooleanConstructor;
|
||||
showPrevButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showNextButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
mode: {
|
||||
type: import("vue").PropType<PaginationMode>;
|
||||
default: PaginationMode;
|
||||
};
|
||||
prevText: StringConstructor;
|
||||
nextText: StringConstructor;
|
||||
pageCount: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
totalItems: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showPageSize: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
itemsPerPage: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
forceEllipses: BooleanConstructor;
|
||||
showPrevButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showNextButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onChange?: ((...args: any[]) => any) | undefined;
|
||||
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
modelValue: number;
|
||||
mode: PaginationMode;
|
||||
pageCount: string | number;
|
||||
totalItems: string | number;
|
||||
showPageSize: string | number;
|
||||
itemsPerPage: string | number;
|
||||
forceEllipses: boolean;
|
||||
showPrevButton: boolean;
|
||||
showNextButton: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
154
node_modules/vant/es/pagination/Pagination.mjs
generated
vendored
Normal file
154
node_modules/vant/es/pagination/Pagination.mjs
generated
vendored
Normal file
@@ -0,0 +1,154 @@
|
||||
import { computed, watchEffect, defineComponent, createVNode as _createVNode } from "vue";
|
||||
import { clamp, truthProp, makeStringProp, makeNumberProp, makeNumericProp, createNamespace, BORDER_SURROUND } from "../utils/index.mjs";
|
||||
const [name, bem, t] = createNamespace("pagination");
|
||||
const makePage = (number, text, active) => ({
|
||||
number,
|
||||
text,
|
||||
active
|
||||
});
|
||||
const paginationProps = {
|
||||
mode: makeStringProp("multi"),
|
||||
prevText: String,
|
||||
nextText: String,
|
||||
pageCount: makeNumericProp(0),
|
||||
modelValue: makeNumberProp(0),
|
||||
totalItems: makeNumericProp(0),
|
||||
showPageSize: makeNumericProp(5),
|
||||
itemsPerPage: makeNumericProp(10),
|
||||
forceEllipses: Boolean,
|
||||
showPrevButton: truthProp,
|
||||
showNextButton: truthProp
|
||||
};
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: paginationProps,
|
||||
emits: ["change", "update:modelValue"],
|
||||
setup(props, {
|
||||
emit,
|
||||
slots
|
||||
}) {
|
||||
const count = computed(() => {
|
||||
const {
|
||||
pageCount,
|
||||
totalItems,
|
||||
itemsPerPage
|
||||
} = props;
|
||||
const count2 = +pageCount || Math.ceil(+totalItems / +itemsPerPage);
|
||||
return Math.max(1, count2);
|
||||
});
|
||||
const pages = computed(() => {
|
||||
const items = [];
|
||||
const pageCount = count.value;
|
||||
const showPageSize = +props.showPageSize;
|
||||
const {
|
||||
modelValue,
|
||||
forceEllipses
|
||||
} = props;
|
||||
let startPage = 1;
|
||||
let endPage = pageCount;
|
||||
const isMaxSized = showPageSize < pageCount;
|
||||
if (isMaxSized) {
|
||||
startPage = Math.max(modelValue - Math.floor(showPageSize / 2), 1);
|
||||
endPage = startPage + showPageSize - 1;
|
||||
if (endPage > pageCount) {
|
||||
endPage = pageCount;
|
||||
startPage = endPage - showPageSize + 1;
|
||||
}
|
||||
}
|
||||
for (let number = startPage; number <= endPage; number++) {
|
||||
const page = makePage(number, number, number === modelValue);
|
||||
items.push(page);
|
||||
}
|
||||
if (isMaxSized && showPageSize > 0 && forceEllipses) {
|
||||
if (startPage > 1) {
|
||||
const prevPages = makePage(startPage - 1, "...");
|
||||
items.unshift(prevPages);
|
||||
}
|
||||
if (endPage < pageCount) {
|
||||
const nextPages = makePage(endPage + 1, "...");
|
||||
items.push(nextPages);
|
||||
}
|
||||
}
|
||||
return items;
|
||||
});
|
||||
const updateModelValue = (value, emitChange) => {
|
||||
value = clamp(value, 1, count.value);
|
||||
if (props.modelValue !== value) {
|
||||
emit("update:modelValue", value);
|
||||
if (emitChange) {
|
||||
emit("change", value);
|
||||
}
|
||||
}
|
||||
};
|
||||
watchEffect(() => updateModelValue(props.modelValue));
|
||||
const renderDesc = () => _createVNode("li", {
|
||||
"class": bem("page-desc")
|
||||
}, [slots.pageDesc ? slots.pageDesc() : `${props.modelValue}/${count.value}`]);
|
||||
const renderPrevButton = () => {
|
||||
const {
|
||||
mode,
|
||||
modelValue,
|
||||
showPrevButton
|
||||
} = props;
|
||||
if (!showPrevButton) {
|
||||
return;
|
||||
}
|
||||
const slot = slots["prev-text"];
|
||||
const disabled = modelValue === 1;
|
||||
return _createVNode("li", {
|
||||
"class": [bem("item", {
|
||||
disabled,
|
||||
border: mode === "simple",
|
||||
prev: true
|
||||
}), BORDER_SURROUND]
|
||||
}, [_createVNode("button", {
|
||||
"type": "button",
|
||||
"disabled": disabled,
|
||||
"onClick": () => updateModelValue(modelValue - 1, true)
|
||||
}, [slot ? slot() : props.prevText || t("prev")])]);
|
||||
};
|
||||
const renderNextButton = () => {
|
||||
const {
|
||||
mode,
|
||||
modelValue,
|
||||
showNextButton
|
||||
} = props;
|
||||
if (!showNextButton) {
|
||||
return;
|
||||
}
|
||||
const slot = slots["next-text"];
|
||||
const disabled = modelValue === count.value;
|
||||
return _createVNode("li", {
|
||||
"class": [bem("item", {
|
||||
disabled,
|
||||
border: mode === "simple",
|
||||
next: true
|
||||
}), BORDER_SURROUND]
|
||||
}, [_createVNode("button", {
|
||||
"type": "button",
|
||||
"disabled": disabled,
|
||||
"onClick": () => updateModelValue(modelValue + 1, true)
|
||||
}, [slot ? slot() : props.nextText || t("next")])]);
|
||||
};
|
||||
const renderPages = () => pages.value.map((page) => _createVNode("li", {
|
||||
"class": [bem("item", {
|
||||
active: page.active,
|
||||
page: true
|
||||
}), BORDER_SURROUND]
|
||||
}, [_createVNode("button", {
|
||||
"type": "button",
|
||||
"aria-current": page.active || void 0,
|
||||
"onClick": () => updateModelValue(page.number, true)
|
||||
}, [slots.page ? slots.page(page) : page.text])]));
|
||||
return () => _createVNode("nav", {
|
||||
"role": "navigation",
|
||||
"class": bem()
|
||||
}, [_createVNode("ul", {
|
||||
"class": bem("items")
|
||||
}, [renderPrevButton(), props.mode === "simple" ? renderDesc() : renderPages(), renderNextButton()])]);
|
||||
}
|
||||
});
|
||||
export {
|
||||
stdin_default as default,
|
||||
paginationProps
|
||||
};
|
||||
1
node_modules/vant/es/pagination/index.css
generated
vendored
Normal file
1
node_modules/vant/es/pagination/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-pagination-height: 40px;--van-pagination-font-size: var(--van-font-size-md);--van-pagination-item-width: 36px;--van-pagination-item-default-color: var(--van-primary-color);--van-pagination-item-disabled-color: var(--van-gray-7);--van-pagination-item-disabled-background: var(--van-background);--van-pagination-background: var(--van-background-2);--van-pagination-desc-color: var(--van-gray-7);--van-pagination-disabled-opacity: var(--van-disabled-opacity)}.van-pagination{font-size:var(--van-pagination-font-size)}.van-pagination__items{display:flex}.van-pagination__item,.van-pagination__page-desc{display:flex;align-items:center;justify-content:center}.van-pagination__item{flex:1;box-sizing:border-box;min-width:var(--van-pagination-item-width);height:var(--van-pagination-height);color:var(--van-pagination-item-default-color);background:var(--van-pagination-background);cursor:pointer;-webkit-user-select:none;user-select:none}.van-pagination__item button{flex:1;height:100%;border:none;padding:0;background:transparent}.van-pagination__item button[disabled]{cursor:not-allowed}.van-pagination__item:active{color:var(--van-white);background-color:var(--van-pagination-item-default-color)}.van-pagination__item:not(:last-child):after{border-right-width:0}.van-pagination__item--active{color:var(--van-white);background-color:var(--van-pagination-item-default-color)}.van-pagination__item--page{flex-grow:0}.van-pagination__item--prev,.van-pagination__item--next{padding:0 var(--van-padding-base);cursor:pointer}.van-pagination__item--border:first-child:after{border-right-width:var(--van-border-width)}.van-pagination__item--disabled,.van-pagination__item--disabled:active{color:var(--van-pagination-item-disabled-color);background-color:var(--van-pagination-item-disabled-background);opacity:var(--van-pagination-disabled-opacity)}.van-pagination__page-desc{flex:1;height:var(--van-pagination-height);color:var(--van-pagination-desc-color)}
|
||||
95
node_modules/vant/es/pagination/index.d.ts
generated
vendored
Normal file
95
node_modules/vant/es/pagination/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,95 @@
|
||||
export declare const Pagination: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
mode: {
|
||||
type: import("vue").PropType<import("./Pagination").PaginationMode>;
|
||||
default: import("./Pagination").PaginationMode;
|
||||
};
|
||||
prevText: StringConstructor;
|
||||
nextText: StringConstructor;
|
||||
pageCount: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
totalItems: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showPageSize: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
itemsPerPage: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
forceEllipses: BooleanConstructor;
|
||||
showPrevButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showNextButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
mode: {
|
||||
type: import("vue").PropType<import("./Pagination").PaginationMode>;
|
||||
default: import("./Pagination").PaginationMode;
|
||||
};
|
||||
prevText: StringConstructor;
|
||||
nextText: StringConstructor;
|
||||
pageCount: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
totalItems: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showPageSize: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
itemsPerPage: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
forceEllipses: BooleanConstructor;
|
||||
showPrevButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showNextButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onChange?: ((...args: any[]) => any) | undefined;
|
||||
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
modelValue: number;
|
||||
mode: import("./Pagination").PaginationMode;
|
||||
pageCount: string | number;
|
||||
totalItems: string | number;
|
||||
showPageSize: string | number;
|
||||
itemsPerPage: string | number;
|
||||
forceEllipses: boolean;
|
||||
showPrevButton: boolean;
|
||||
showNextButton: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default Pagination;
|
||||
export { paginationProps } from './Pagination';
|
||||
export type { PaginationMode, PaginationProps } from './Pagination';
|
||||
export type { PaginationThemeVars } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanPagination: typeof Pagination;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/pagination/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/pagination/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _Pagination from "./Pagination.mjs";
|
||||
const Pagination = withInstall(_Pagination);
|
||||
var stdin_default = Pagination;
|
||||
import { paginationProps } from "./Pagination.mjs";
|
||||
export {
|
||||
Pagination,
|
||||
stdin_default as default,
|
||||
paginationProps
|
||||
};
|
||||
1
node_modules/vant/es/pagination/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/pagination/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
2
node_modules/vant/es/pagination/style/index.mjs
generated
vendored
Normal file
2
node_modules/vant/es/pagination/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
import "../../style/base.css";
|
||||
import "../index.css";
|
||||
11
node_modules/vant/es/pagination/types.d.ts
generated
vendored
Normal file
11
node_modules/vant/es/pagination/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
export type PaginationThemeVars = {
|
||||
paginationHeight?: string;
|
||||
paginationFontSize?: string;
|
||||
paginationItemWidth?: string;
|
||||
paginationItemDefaultColor?: string;
|
||||
paginationItemDisabledColor?: string;
|
||||
paginationItemDisabledBackground?: string;
|
||||
paginationBackground?: string;
|
||||
paginationDescColor?: string;
|
||||
paginationDisabledOpacity?: number | string;
|
||||
};
|
||||
0
node_modules/vant/es/pagination/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/pagination/types.mjs
generated
vendored
Normal file
Reference in New Issue
Block a user