123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177 |
- "use strict";
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.paginationProps = exports.paginationConfig = exports.default = void 0;
- var _vue = require("vue");
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
- var _LeftOutlined = _interopRequireDefault(require("@ant-design/icons-vue/lib/icons/LeftOutlined"));
- var _RightOutlined = _interopRequireDefault(require("@ant-design/icons-vue/lib/icons/RightOutlined"));
- var _DoubleLeftOutlined = _interopRequireDefault(require("@ant-design/icons-vue/lib/icons/DoubleLeftOutlined"));
- var _DoubleRightOutlined = _interopRequireDefault(require("@ant-design/icons-vue/lib/icons/DoubleRightOutlined"));
- var _select = _interopRequireDefault(require("../select"));
- var _MiniSelect = _interopRequireDefault(require("./MiniSelect"));
- var _LocaleReceiver = require("../locale-provider/LocaleReceiver");
- var _vcPagination = _interopRequireDefault(require("../vc-pagination"));
- var _en_US = _interopRequireDefault(require("../vc-pagination/locale/en_US"));
- var _classNames2 = _interopRequireDefault(require("../_util/classNames"));
- var _useConfigInject2 = _interopRequireDefault(require("../_util/hooks/useConfigInject"));
- var _useBreakpoint = _interopRequireDefault(require("../_util/hooks/useBreakpoint"));
- var _excluded = ["size", "itemRender", "buildOptionText", "selectComponentClass", "responsive"];
- var paginationProps = function paginationProps() {
- return {
- total: Number,
- defaultCurrent: Number,
- disabled: {
- type: Boolean,
- default: undefined
- },
- current: Number,
- defaultPageSize: Number,
- pageSize: Number,
- hideOnSinglePage: {
- type: Boolean,
- default: undefined
- },
- showSizeChanger: {
- type: Boolean,
- default: undefined
- },
- pageSizeOptions: Array,
- buildOptionText: Function,
- showQuickJumper: {
- type: [Boolean, Object],
- default: undefined
- },
- showTotal: Function,
- size: String,
- simple: {
- type: Boolean,
- default: undefined
- },
- locale: Object,
- prefixCls: String,
- selectPrefixCls: String,
- totalBoundaryShowSizeChanger: Number,
- selectComponentClass: String,
- itemRender: Function,
- role: String,
- responsive: Boolean,
- showLessItems: {
- type: Boolean,
- default: undefined
- },
- onChange: Function,
- onShowSizeChange: Function,
- 'onUpdate:current': Function,
- 'onUpdate:pageSize': Function
- };
- };
- exports.paginationProps = paginationProps;
- var paginationConfig = function paginationConfig() {
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, paginationProps()), {}, {
- position: String
- });
- };
- exports.paginationConfig = paginationConfig;
- var _default = (0, _vue.defineComponent)({
- compatConfig: {
- MODE: 3
- },
- name: 'APagination',
- inheritAttrs: false,
- props: paginationProps(),
- // emits: ['change', 'showSizeChange', 'update:current', 'update:pageSize'],
- setup: function setup(props, _ref) {
- var slots = _ref.slots,
- attrs = _ref.attrs;
- var _useConfigInject = (0, _useConfigInject2.default)('pagination', props),
- prefixCls = _useConfigInject.prefixCls,
- configProvider = _useConfigInject.configProvider,
- direction = _useConfigInject.direction;
- var selectPrefixCls = (0, _vue.computed)(function () {
- return configProvider.getPrefixCls('select', props.selectPrefixCls);
- });
- var breakpoint = (0, _useBreakpoint.default)();
- var _useLocaleReceiver = (0, _LocaleReceiver.useLocaleReceiver)('Pagination', _en_US.default, (0, _vue.toRef)(props, 'locale')),
- _useLocaleReceiver2 = (0, _slicedToArray2.default)(_useLocaleReceiver, 1),
- locale = _useLocaleReceiver2[0];
- var getIconsProps = function getIconsProps(pre) {
- var ellipsis = (0, _vue.createVNode)("span", {
- "class": "".concat(pre, "-item-ellipsis")
- }, [(0, _vue.createTextVNode)("\u2022\u2022\u2022")]);
- var prevIcon = (0, _vue.createVNode)("button", {
- "class": "".concat(pre, "-item-link"),
- "type": "button",
- "tabindex": -1
- }, [(0, _vue.createVNode)(_LeftOutlined.default, null, null)]);
- var nextIcon = (0, _vue.createVNode)("button", {
- "class": "".concat(pre, "-item-link"),
- "type": "button",
- "tabindex": -1
- }, [(0, _vue.createVNode)(_RightOutlined.default, null, null)]);
- var jumpPrevIcon = (0, _vue.createVNode)("a", {
- "rel": "nofollow",
- "class": "".concat(pre, "-item-link")
- }, [(0, _vue.createVNode)("div", {
- "class": "".concat(pre, "-item-container")
- }, [(0, _vue.createVNode)(_DoubleLeftOutlined.default, {
- "class": "".concat(pre, "-item-link-icon")
- }, null), ellipsis])]);
- var jumpNextIcon = (0, _vue.createVNode)("a", {
- "rel": "nofollow",
- "class": "".concat(pre, "-item-link")
- }, [(0, _vue.createVNode)("div", {
- "class": "".concat(pre, "-item-container")
- }, [(0, _vue.createVNode)(_DoubleRightOutlined.default, {
- "class": "".concat(pre, "-item-link-icon")
- }, null), ellipsis])]);
- // change arrows direction in right-to-left direction
- if (direction.value === 'rtl') {
- var _ref2 = [nextIcon, prevIcon];
- prevIcon = _ref2[0];
- nextIcon = _ref2[1];
- var _ref3 = [jumpNextIcon, jumpPrevIcon];
- jumpPrevIcon = _ref3[0];
- jumpNextIcon = _ref3[1];
- }
- return {
- prevIcon: prevIcon,
- nextIcon: nextIcon,
- jumpPrevIcon: jumpPrevIcon,
- jumpNextIcon: jumpNextIcon
- };
- };
- return function () {
- var _breakpoint$value;
- var size = props.size,
- _props$itemRender = props.itemRender,
- itemRender = _props$itemRender === void 0 ? slots.itemRender : _props$itemRender,
- _props$buildOptionTex = props.buildOptionText,
- buildOptionText = _props$buildOptionTex === void 0 ? slots.buildOptionText : _props$buildOptionTex,
- selectComponentClass = props.selectComponentClass,
- responsive = props.responsive,
- restProps = (0, _objectWithoutProperties2.default)(props, _excluded);
- var isSmall = size === 'small' || !!((_breakpoint$value = breakpoint.value) !== null && _breakpoint$value !== void 0 && _breakpoint$value.xs && !size && responsive);
- var paginationProps = (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, restProps), getIconsProps(prefixCls.value)), {}, {
- prefixCls: prefixCls.value,
- selectPrefixCls: selectPrefixCls.value,
- selectComponentClass: selectComponentClass || (isSmall ? _MiniSelect.default : _select.default),
- locale: locale.value,
- buildOptionText: buildOptionText
- }, attrs), {}, {
- class: (0, _classNames2.default)((0, _defineProperty2.default)({
- mini: isSmall
- }, "".concat(prefixCls.value, "-rtl"), direction.value === 'rtl'), attrs.class),
- itemRender: itemRender
- });
- return (0, _vue.createVNode)(_vcPagination.default, paginationProps, null);
- };
- }
- });
- exports.default = _default;
|