@silver-formily/element-plus 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en-US.md +32 -0
- package/README.md +18 -21
- package/esm/__builtins__/index.mjs +15 -16
- package/esm/__builtins__/shared/index.mjs +11 -12
- package/esm/__builtins__/shared/transform-component.d.ts +2 -7
- package/esm/__builtins__/shared/transform-component.mjs +16 -33
- package/esm/__builtins__/shared/transform-component.mjs.map +1 -1
- package/esm/__builtins__/shared/utils.mjs +11 -11
- package/esm/__builtins__/shared/utils.mjs.map +1 -1
- package/esm/array-base/index.mjs +62 -62
- package/esm/array-base/index.mjs.map +1 -1
- package/esm/array-base/utils.mjs +2 -2
- package/esm/array-cards/array-cards.d.ts +1 -1
- package/esm/array-cards/index.d.ts +3 -3
- package/esm/array-cards/index.mjs +49 -49
- package/esm/array-cards/index.mjs.map +1 -1
- package/esm/array-collapse/array-collapse.d.ts +2 -2
- package/esm/array-collapse/index.d.ts +3 -3
- package/esm/array-collapse/index.mjs +85 -84
- package/esm/array-collapse/index.mjs.map +1 -1
- package/esm/array-collapse/utils.mjs +2 -2
- package/esm/array-items/index.mjs +43 -40
- package/esm/array-items/index.mjs.map +1 -1
- package/esm/array-list-tabs/array-list-tabs.d.ts +3 -3
- package/esm/array-list-tabs/index.d.ts +6 -6
- package/esm/array-list-tabs/index.mjs +93 -89
- package/esm/array-list-tabs/index.mjs.map +1 -1
- package/esm/array-list-tabs/utils.mjs +2 -2
- package/esm/array-table/array-table.d.ts +29 -1
- package/esm/array-table/index.d.ts +31 -3
- package/esm/array-table/index.mjs +126 -125
- package/esm/array-table/index.mjs.map +1 -1
- package/esm/array-table/types.d.ts +2 -1
- package/esm/array-table/utils.mjs +2 -2
- package/esm/array-tabs/index.mjs +17 -17
- package/esm/array-tabs/index.mjs.map +1 -1
- package/esm/cascader/cascader.d.ts +1 -6
- package/esm/cascader/index.d.ts +3 -16
- package/esm/cascader/index.mjs +29 -33
- package/esm/cascader/index.mjs.map +1 -1
- package/esm/checkbox/checkbox-group.d.ts +3 -19
- package/esm/checkbox/index.d.ts +445 -407
- package/esm/checkbox/index.mjs +27 -36
- package/esm/checkbox/index.mjs.map +1 -1
- package/esm/date-picker/index.d.ts +442 -1
- package/esm/date-picker/index.mjs +12 -19
- package/esm/date-picker/index.mjs.map +1 -1
- package/esm/editable/editable.d.ts +16 -12
- package/esm/editable/index.d.ts +8 -6
- package/esm/editable/index.mjs +108 -110
- package/esm/editable/index.mjs.map +1 -1
- package/esm/form/form.mjs +1 -1
- package/esm/form/form.mjs.map +1 -1
- package/esm/form-button-group/index.mjs +31 -30
- package/esm/form-button-group/index.mjs.map +1 -1
- package/esm/form-button-group/utils.mjs +2 -2
- package/esm/form-collapse/index.mjs +40 -40
- package/esm/form-collapse/index.mjs.map +1 -1
- package/esm/form-dialog/index.d.ts +1 -1
- package/esm/form-dialog/index.mjs +5 -5
- package/esm/form-dialog/index.mjs.map +1 -1
- package/esm/form-dialog/types.d.ts +6 -6
- package/esm/form-drawer/index.d.ts +1 -1
- package/esm/form-drawer/index.mjs +5 -5
- package/esm/form-drawer/index.mjs.map +1 -1
- package/esm/form-drawer/types.d.ts +6 -6
- package/esm/form-grid/index.d.ts +1 -183
- package/esm/form-grid/index.mjs +2 -2
- package/esm/form-grid/index.mjs.map +1 -1
- package/esm/form-item/form-item.d.ts +2 -1
- package/esm/form-item/index.d.ts +12 -6
- package/esm/form-item/index.mjs +156 -152
- package/esm/form-item/index.mjs.map +1 -1
- package/esm/form-item/types.d.ts +0 -1
- package/esm/form-layout/form-layout.d.ts +0 -1
- package/esm/form-layout/form-layout.mjs +55 -53
- package/esm/form-layout/form-layout.mjs.map +1 -1
- package/esm/form-layout/types.d.ts +0 -2
- package/esm/form-layout/utils.d.ts +3 -3
- package/esm/form-layout/utils.mjs +47 -42
- package/esm/form-layout/utils.mjs.map +1 -1
- package/esm/form-step/index.mjs +26 -24
- package/esm/form-step/index.mjs.map +1 -1
- package/esm/form-tab/form-tab.d.ts +2 -2
- package/esm/form-tab/hooks.mjs +1 -1
- package/esm/form-tab/hooks.mjs.map +1 -1
- package/esm/form-tab/index.d.ts +1 -26
- package/esm/form-tab/index.mjs +31 -31
- package/esm/form-tab/index.mjs.map +1 -1
- package/esm/form-tab/types.d.ts +1 -1
- package/esm/input/index.d.ts +6 -38
- package/esm/input/index.mjs +38 -47
- package/esm/input/index.mjs.map +1 -1
- package/esm/input/input.d.ts +1 -8
- package/esm/input-number/index.d.ts +326 -1
- package/esm/input-number/index.mjs +10 -17
- package/esm/input-number/index.mjs.map +1 -1
- package/esm/pagination/pagination.mjs +110 -111
- package/esm/pagination/pagination.mjs.map +1 -1
- package/esm/password/index.d.ts +6 -38
- package/esm/password/index.mjs +1 -1
- package/esm/password/index.mjs.map +1 -1
- package/esm/preview-text/cascader.d.ts +1 -1
- package/esm/preview-text/date-picker.d.ts +1 -1
- package/esm/preview-text/index.d.ts +13 -13
- package/esm/preview-text/index.mjs +121 -121
- package/esm/preview-text/index.mjs.map +1 -1
- package/esm/preview-text/input.d.ts +1 -1
- package/esm/preview-text/select.d.ts +1 -1
- package/esm/preview-text/time-picker.d.ts +1 -1
- package/esm/preview-text/tree.d.ts +1 -1
- package/esm/radio/index.d.ts +347 -219
- package/esm/radio/index.mjs +37 -44
- package/esm/radio/index.mjs.map +1 -1
- package/esm/radio/radio-group.d.ts +2 -13
- package/esm/reset/index.d.ts +1 -62
- package/esm/reset/index.mjs +2 -2
- package/esm/reset/index.mjs.map +1 -1
- package/esm/select/index.d.ts +3 -16
- package/esm/select/index.mjs +65 -70
- package/esm/select/index.mjs.map +1 -1
- package/esm/select/select.d.ts +1 -6
- package/esm/select-table/index.d.ts +33 -5
- package/esm/select-table/index.mjs +90 -89
- package/esm/select-table/index.mjs.map +1 -1
- package/esm/select-table/select-table.d.ts +58 -2
- package/esm/select-table/types.d.ts +1 -1
- package/esm/submit/index.d.ts +1 -47
- package/esm/submit/index.mjs +2 -2
- package/esm/submit/index.mjs.map +1 -1
- package/esm/switch/index.d.ts +296 -1
- package/esm/switch/index.mjs +5 -11
- package/esm/switch/index.mjs.map +1 -1
- package/esm/time-picker/index.d.ts +442 -1
- package/esm/time-picker/index.mjs +9 -14
- package/esm/time-picker/index.mjs.map +1 -1
- package/esm/time-select/index.d.ts +184 -1
- package/esm/time-select/index.mjs +8 -13
- package/esm/time-select/index.mjs.map +1 -1
- package/esm/transfer/index.d.ts +196 -115
- package/esm/transfer/index.mjs +5 -5
- package/esm/transfer/index.mjs.map +1 -1
- package/esm/tree/index.d.ts +5 -5
- package/esm/tree/index.mjs +34 -34
- package/esm/tree/index.mjs.map +1 -1
- package/esm/tree/tree.d.ts +2 -2
- package/esm/tree/types.d.ts +1 -1
- package/esm/tree-select/index.d.ts +3 -19
- package/esm/tree-select/index.mjs +23 -30
- package/esm/tree-select/index.mjs.map +1 -1
- package/esm/tree-select/tree-select.d.ts +1 -8
- package/esm/upload/index.d.ts +409 -404
- package/esm/upload/index.mjs +9 -9
- package/esm/upload/index.mjs.map +1 -1
- package/esm/upload/upload.d.ts +802 -792
- package/esm/vendor/icon.mjs.map +1 -1
- package/esm/vendor/lodash.mjs +12 -20
- package/esm/vendor/lodash.mjs.map +1 -1
- package/esm/vendor/runtime.mjs +29 -24
- package/esm/vendor/runtime.mjs.map +1 -1
- package/esm/vendor/shared.esm-bundler.mjs +2 -2
- package/esm/vendor/sizes.mjs.map +1 -1
- package/esm/vendor/types.mjs +5 -5
- package/esm/vendor/types.mjs.map +1 -1
- package/package.json +8 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.mjs","sources":["../../node_modules/.pnpm/element-plus@2.13.0_vue@3.5.22_typescript@5.9.3_/node_modules/element-plus/es/components/pagination/src/constants.mjs","../../node_modules/.pnpm/element-plus@2.13.0_vue@3.5.22_typescript@5.9.3_/node_modules/element-plus/es/components/pagination/src/usePagination.mjs","../../src/pagination/components/jumper.vue","../../src/pagination/components/next.vue","../../src/pagination/components/pager.vue","../../src/pagination/components/prev.vue","../../src/pagination/components/sizes.vue","../../src/pagination/components/total.vue","../../src/pagination/pagination.ts"],"sourcesContent":["const elPaginationKey = Symbol(\"elPaginationKey\");\n\nexport { elPaginationKey };\n//# sourceMappingURL=constants.mjs.map\n","import { inject } from 'vue';\nimport { elPaginationKey } from './constants.mjs';\n\nconst usePagination = () => inject(elPaginationKey, {});\n\nexport { usePagination };\n//# sourceMappingURL=usePagination.mjs.map\n","<script lang=\"ts\" setup>\nimport { ElInput, useLocale, useNamespace } from 'element-plus'\nimport { usePagination } from 'element-plus/es/components/pagination/src/usePagination'\nimport { computed, ref } from 'vue'\nimport { paginationJumperProps } from './jumper'\n\ndefineOptions({\n name: 'ElPaginationJumper',\n})\n\ndefineProps(paginationJumperProps)\nconst { t } = useLocale()\nconst ns = useNamespace('pagination')\nconst { pageCount, disabled, currentPage, changeEvent } = usePagination()\nconst userInput = ref<number | string>()\nconst innerValue = computed(() => userInput.value ?? currentPage?.value)\n\nfunction handleInput(val: number | string) {\n userInput.value = val ? +val : ''\n}\n\nfunction handleChange(val: number | string) {\n val = Math.trunc(+val)\n changeEvent?.(val)\n userInput.value = undefined\n}\n</script>\n\n<template>\n <span :class=\"ns.e('jump')\" :disabled=\"disabled\">\n <span :class=\"[ns.e('goto')]\">{{ t('el.pagination.goto') }}</span>\n <ElInput\n :size=\"size\"\n :class=\"[ns.e('editor'), ns.is('in-pagination')]\"\n :min=\"1\"\n :max=\"pageCount\"\n :disabled=\"disabled\"\n :model-value=\"innerValue\"\n :validate-event=\"false\"\n :aria-label=\"t('el.pagination.page')\"\n type=\"number\"\n @update:model-value=\"handleInput\"\n @change=\"handleChange\"\n />\n <span :class=\"[ns.e('classifier')]\">\n {{ t('el.pagination.pageClassifier') }}\n </span>\n </span>\n</template>\n","<script lang=\"ts\" setup>\nimport { ElIcon, useLocale } from 'element-plus'\nimport { computed } from 'vue'\nimport { paginationNextProps } from './next'\n\ndefineOptions({\n name: 'ElPaginationNext',\n})\n\nconst props = defineProps(paginationNextProps)\n\ndefineEmits(['click'])\n\nconst { t } = useLocale()\n\nconst internalDisabled = computed(\n () =>\n props.disabled\n || props.currentPage === props.pageCount\n || props.pageCount === 0,\n)\n</script>\n\n<template>\n <button\n type=\"button\"\n class=\"btn-next\"\n :disabled=\"internalDisabled\"\n :aria-label=\"nextText || t('el.pagination.next')\"\n :aria-disabled=\"internalDisabled\"\n @click=\"$emit('click', $event)\"\n >\n <span v-if=\"nextText\">{{ nextText }}</span>\n <ElIcon v-else>\n <component :is=\"nextIcon\" />\n </ElIcon>\n </button>\n</template>\n","<script lang=\"ts\" setup>\nimport type { ArrayField } from '@formily/core'\nimport { DArrowLeft, DArrowRight, MoreFilled } from '@element-plus/icons-vue'\nimport { observable } from '@formily/reactive'\nimport { useObserver } from '@formily/reactive-vue'\nimport { useField } from '@formily/vue'\nimport { CHANGE_EVENT, ElBadge, useLocale, useNamespace } from 'element-plus'\nimport { computed, ref, watchEffect } from 'vue'\nimport { paginationPagerProps } from './pager'\n\ndefineOptions({\n name: 'ElPaginationPager',\n})\nconst props = defineProps(paginationPagerProps)\nconst emit = defineEmits([CHANGE_EVENT])\nconst nsPager = useNamespace('pager')\nconst nsIcon = useNamespace('icon')\nconst { t } = useLocale()\n\nconst showPrevMore = ref(false)\nconst showNextMore = ref(false)\nconst quickPrevHover = ref(false)\nconst quickNextHover = ref(false)\nconst quickPrevFocus = ref(false)\nconst quickNextFocus = ref(false)\nconst pagers = computed(() => {\n const pagerCount = props.pagerCount\n const halfPagerCount = (pagerCount - 1) / 2\n const currentPage = Number(props.currentPage)\n const pageCount = Number(props.pageCount)\n let showPrevMore = false\n let showNextMore = false\n if (pageCount > pagerCount) {\n if (currentPage > pagerCount - halfPagerCount) {\n showPrevMore = true\n }\n if (currentPage < pageCount - halfPagerCount) {\n showNextMore = true\n }\n }\n const array: number[] = []\n if (showPrevMore && !showNextMore) {\n const startPage = pageCount - (pagerCount - 2)\n for (let i = startPage; i < pageCount; i++) {\n array.push(i)\n }\n }\n else if (!showPrevMore && showNextMore) {\n for (let i = 2; i < pagerCount; i++) {\n array.push(i)\n }\n }\n else if (showPrevMore && showNextMore) {\n const offset = Math.floor(pagerCount / 2) - 1\n for (let i = currentPage - offset; i <= currentPage + offset; i++) {\n array.push(i)\n }\n }\n else {\n for (let i = 2; i < pageCount; i++) {\n array.push(i)\n }\n }\n return array\n})\n\nconst prevMoreKls = computed(() => [\n 'more',\n 'btn-quickprev',\n nsIcon.b(),\n nsPager.is('disabled', props.disabled),\n])\nconst nextMoreKls = computed(() => [\n 'more',\n 'btn-quicknext',\n nsIcon.b(),\n nsPager.is('disabled', props.disabled),\n])\n\nconst tabindex = computed(() => (props.disabled ? -1 : 0))\nwatchEffect(() => {\n const halfPagerCount = (props.pagerCount - 1) / 2\n showPrevMore.value = false\n showNextMore.value = false\n if (props.pageCount! > props.pagerCount) {\n if (props.currentPage > props.pagerCount - halfPagerCount) {\n showPrevMore.value = true\n }\n if (props.currentPage < props.pageCount! - halfPagerCount) {\n showNextMore.value = true\n }\n }\n})\nfunction onMouseEnter(forward = false) {\n if (props.disabled)\n return\n if (forward) {\n quickPrevHover.value = true\n }\n else {\n quickNextHover.value = true\n }\n}\nfunction onFocus(forward = false) {\n if (forward) {\n quickPrevFocus.value = true\n }\n else {\n quickNextFocus.value = true\n }\n}\nfunction onEnter(e: UIEvent) {\n const target = e.target as HTMLElement\n if (\n target.tagName.toLowerCase() === 'li'\n && Array.from(target.classList).includes('number')\n ) {\n const newPage = Number(target.textContent)\n if (newPage !== props.currentPage) {\n emit(CHANGE_EVENT, newPage)\n }\n }\n else if (\n target.tagName.toLowerCase() === 'li'\n && Array.from(target.classList).includes('more')\n ) {\n onPagerClick(e)\n }\n}\nfunction onPagerClick(event: UIEvent) {\n const target = event.target as HTMLElement\n if (target.tagName.toLowerCase() === 'ul' || props.disabled) {\n return\n }\n let newPage = Number(target.textContent)\n const pageCount = props.pageCount!\n const currentPage = props.currentPage\n const pagerCountOffset = props.pagerCount - 2\n if (target.className.includes('more')) {\n if (target.className.includes('quickprev')) {\n newPage = currentPage - pagerCountOffset\n }\n else if (target.className.includes('quicknext')) {\n newPage = currentPage + pagerCountOffset\n }\n }\n if (!Number.isNaN(+newPage)) {\n if (newPage < 1) {\n newPage = 1\n }\n if (newPage > pageCount) {\n newPage = pageCount\n }\n }\n if (newPage !== currentPage) {\n emit(CHANGE_EVENT, newPage)\n }\n}\n/* formily error count */\nuseObserver()\nconst fieldRef = useField<ArrayField>()\nconst field = fieldRef.value\nconst path = field.address.entire\nconst errorPageIndexList = observable.computed(() => {\n const errorPageSet = field.form\n .queryFeedbacks({\n type: 'error',\n address: `${path}.**`,\n })\n .map(feedback => Number(feedback.path.split(`${path}.`)[1].split('.')[0]))\n .reduce((acc, cur) => {\n const pageIndex = Math.floor(cur / props.pageSize)\n acc.add(pageIndex)\n return acc\n }, new Set<number>())\n\n const errorPageList = Array.from(errorPageSet).sort((a, b) => a - b)\n return errorPageList\n})\n\nconst isPrevMoreError = observable.computed(() => {\n return errorPageIndexList.value.some(pageIdx => (pageIdx < pagers.value[0] - 1) && pageIdx !== 0)\n})\nconst isNextMoreError = observable.computed(() => {\n return errorPageIndexList.value.some(pageIdx => (pageIdx > pagers.value.at(-1) - 1) && pageIdx !== errorPageIndexList.value.length - 1)\n})\n</script>\n\n<template>\n <ul :class=\"nsPager.b()\" @click=\"onPagerClick\" @keyup.enter=\"onEnter\">\n <ElBadge v-if=\"pageCount > 1\" is-dot :value=\"1\" :hidden=\"errorPageIndexList.value[0] !== 0\">\n <li\n :class=\"[\n nsPager.is('active', currentPage === 1),\n nsPager.is('disabled', disabled),\n ]\" class=\"number\" :aria-current=\"currentPage === 1\" :aria-label=\"t('el.pagination.currentPage', { pager: 1 })\"\n :tabindex=\"tabindex\"\n >\n 1\n </li>\n </ElBadge>\n <ElBadge v-if=\"showPrevMore\" is-dot :value=\"1\" :hidden=\"!isPrevMoreError.value\">\n <li\n :class=\"prevMoreKls\" :tabindex=\"tabindex\"\n :aria-label=\"t('el.pagination.prevPages', { pager: pagerCount - 2 })\" @mouseenter=\"onMouseEnter(true)\"\n @mouseleave=\"quickPrevHover = false\" @focus=\"onFocus(true)\" @blur=\"quickPrevFocus = false\"\n >\n <DArrowLeft v-if=\"(quickPrevHover || quickPrevFocus) && !disabled\" />\n <MoreFilled v-else />\n </li>\n </ElBadge>\n <ElBadge\n v-for=\"pager in pagers\" :key=\"pager\" is-dot :value=\"1\"\n :hidden=\"!errorPageIndexList.value.includes(pager - 1)\"\n >\n <li\n :class=\"[\n nsPager.is('active', currentPage === pager),\n nsPager.is('disabled', disabled),\n ]\" class=\"number\" :aria-current=\"currentPage === pager\" :aria-label=\"t('el.pagination.currentPage', { pager })\"\n :tabindex=\"tabindex\"\n >\n {{ pager }}\n </li>\n </ElBadge>\n <ElBadge v-if=\"showNextMore\" is-dot :value=\"1\" :hidden=\"!isNextMoreError.value\">\n <li\n :class=\"nextMoreKls\" :tabindex=\"tabindex\"\n :aria-label=\"t('el.pagination.nextPages', { pager: pagerCount - 2 })\" @mouseenter=\"onMouseEnter()\"\n @mouseleave=\"quickNextHover = false\" @focus=\"onFocus()\" @blur=\"quickNextFocus = false\"\n >\n <DArrowRight v-if=\"(quickNextHover || quickNextFocus) && !disabled\" />\n <MoreFilled v-else />\n </li>\n </ElBadge>\n <ElBadge\n is-dot\n :value=\"1\"\n :hidden=\"errorPageIndexList.value[errorPageIndexList.value.length - 1] !== pageCount - 1\"\n >\n <li\n :class=\"[\n nsPager.is('active', currentPage === pageCount),\n nsPager.is('disabled', disabled),\n ]\" class=\"number\" :aria-current=\"currentPage === pageCount\"\n :aria-label=\"t('el.pagination.currentPage', { pager: pageCount })\" :tabindex=\"tabindex\"\n >\n {{ pageCount }}\n </li>\n </ElBadge>\n </ul>\n</template>\n","<script lang=\"ts\" setup>\nimport { ElIcon, useLocale } from 'element-plus'\nimport { computed } from 'vue'\nimport { paginationPrevEmits, paginationPrevProps } from './prev'\n\ndefineOptions({\n name: 'ElPaginationPrev',\n})\n\nconst props = defineProps(paginationPrevProps)\ndefineEmits(paginationPrevEmits)\n\nconst { t } = useLocale()\n\nconst internalDisabled = computed(\n () => props.disabled || props.currentPage <= 1,\n)\n</script>\n\n<template>\n <button\n type=\"button\"\n class=\"btn-prev\"\n :disabled=\"internalDisabled\"\n :aria-label=\"prevText || t('el.pagination.prev')\"\n :aria-disabled=\"internalDisabled\"\n @click=\"$emit('click', $event)\"\n >\n <span v-if=\"prevText\">{{ prevText }}</span>\n <ElIcon v-else>\n <component :is=\"prevIcon\" />\n </ElIcon>\n </button>\n</template>\n","<script lang=\"ts\" setup>\nimport { isArr, isEqual } from '@formily/shared'\nimport { ElOption, ElSelect, useLocale, useNamespace } from 'element-plus'\nimport { usePagination } from 'element-plus/es/components/pagination/src/usePagination'\nimport { computed, ref, watch } from 'vue'\nimport { paginationSizesProps } from './sizes'\n\ndefineOptions({\n name: 'ElPaginationSizes',\n})\n\nconst props = defineProps(paginationSizesProps)\nconst emit = defineEmits(['page-size-change'])\nconst { t } = useLocale()\nconst ns = useNamespace('pagination')\nconst pagination = usePagination()\nconst innerPageSize = ref<number>(props.pageSize!)\n\nwatch(\n () => props.pageSizes,\n (newVal, oldVal) => {\n if (isEqual(newVal, oldVal))\n return\n if (isArr(newVal)) {\n const pageSize = newVal.includes(props.pageSize!)\n ? props.pageSize\n : props.pageSizes[0]\n // eslint-disable-next-line vue/custom-event-name-casing\n emit('page-size-change', pageSize)\n }\n },\n)\n\nwatch(\n () => props.pageSize,\n (newVal) => {\n innerPageSize.value = newVal!\n },\n)\n\nconst innerPageSizes = computed(() => props.pageSizes)\nfunction handleChange(val: number) {\n if (val !== innerPageSize.value) {\n innerPageSize.value = val\n pagination.handleSizeChange?.(Number(val))\n }\n}\n</script>\n\n<template>\n <span :class=\"ns.e('sizes')\">\n <ElSelect\n :model-value=\"innerPageSize\"\n :disabled=\"disabled\"\n :popper-class=\"popperClass\"\n :size=\"size\"\n :teleported=\"teleported\"\n :validate-event=\"false\"\n :append-to=\"appendSizeTo\"\n @change=\"handleChange\"\n >\n <ElOption\n v-for=\"item in innerPageSizes\"\n :key=\"item\"\n :value=\"item\"\n :label=\"item + t('el.pagination.pagesize')\"\n />\n </ElSelect>\n </span>\n</template>\n","<script lang=\"ts\" setup>\nimport { useLocale, useNamespace } from 'element-plus'\nimport { usePagination } from 'element-plus/es/components/pagination/src/usePagination'\nimport { paginationTotalProps } from './total'\n\ndefineOptions({\n name: 'ElPaginationTotal',\n})\ndefineProps(paginationTotalProps)\nconst { t } = useLocale()\nconst ns = useNamespace('pagination')\nconst { disabled } = usePagination()\n</script>\n\n<template>\n <span :class=\"ns.e('total')\" :disabled=\"disabled\">\n {{\n t('el.pagination.total', {\n total,\n })\n }}\n </span>\n</template>\n","import type { ExtractPropTypes, VNode } from 'vue'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport {\n CHANGE_EVENT,\n elPaginationKey,\n useDeprecated,\n useGlobalSize,\n useLocale,\n useNamespace,\n useSizeProp,\n} from 'element-plus'\nimport {\n buildProps,\n debugWarn,\n definePropType,\n iconPropType,\n isNumber,\n mutable,\n} from 'element-plus/es/utils/index'\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n h,\n provide,\n ref,\n watch,\n} from 'vue'\n\nimport Jumper from './components/jumper.vue'\nimport Next from './components/next.vue'\nimport Pager from './components/pager.vue'\nimport Prev from './components/prev.vue'\nimport Sizes from './components/sizes.vue'\nimport Total from './components/total.vue'\n\n/**\n * It it user's responsibility to guarantee that the value of props.total... is number\n * (same as pageSize, defaultPageSize, currentPage, defaultCurrentPage, pageCount)\n * Otherwise we can reasonable infer that the corresponding field is absent\n */\nconst isAbsent = (v: unknown): v is undefined => typeof v !== 'number'\n\ntype LayoutKey\n = | 'prev'\n | 'pager'\n | 'next'\n | 'jumper'\n | '->'\n | 'total'\n | 'sizes'\n | 'slot'\n\nexport const paginationProps = buildProps({\n /**\n * @description options of item count per page\n */\n pageSize: Number,\n /**\n * @description default initial value of page size, not setting is the same as setting 10\n */\n defaultPageSize: Number,\n /**\n * @description total item count\n */\n total: Number,\n /**\n * @description total page count. Set either `total` or `page-count` and pages will be displayed; if you need `page-sizes`, `total` is required\n */\n pageCount: Number,\n /**\n * @description number of pagers. Pagination collapses when the total page count exceeds this value\n */\n pagerCount: {\n type: Number,\n validator: (value: unknown) => {\n return (\n isNumber(value)\n && Math.trunc(value) === value\n && value > 4\n && value < 22\n && value % 2 === 1\n )\n },\n default: 7,\n },\n /**\n * @description current page number\n */\n currentPage: Number,\n /**\n * @description default initial value of current-page, not setting is the same as setting 1\n */\n defaultCurrentPage: Number,\n /**\n * @description layout of Pagination, elements separated with a comma\n */\n layout: {\n type: String,\n default: (\n ['prev', 'pager', 'next', 'jumper', '->', 'total'] as LayoutKey[]\n ).join(', '),\n },\n /**\n * @description item count of each page\n */\n pageSizes: {\n type: definePropType<number[]>(Array),\n default: () => mutable([10, 20, 30, 40, 50, 100] as const),\n },\n /**\n * @description custom class name for the page size Select's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description text for the prev button\n */\n prevText: {\n type: String,\n default: '',\n },\n /**\n * @description icon for the prev button, higher priority of `prev-text`\n */\n prevIcon: {\n type: iconPropType,\n default: () => ArrowLeft,\n },\n /**\n * @description text for the next button\n */\n nextText: {\n type: String,\n default: '',\n },\n /**\n * @description icon for the next button, higher priority of `next-text`\n */\n nextIcon: {\n type: iconPropType,\n default: () => ArrowRight,\n },\n /**\n * @description whether Pagination size is teleported to body\n */\n teleported: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to use small pagination\n */\n small: Boolean,\n /**\n * @description set page size\n */\n size: useSizeProp,\n /**\n * @description whether the buttons have a background color\n */\n background: Boolean,\n /**\n * @description whether Pagination is disabled\n */\n disabled: Boolean,\n /**\n * @description whether to hide when there's only one page\n */\n hideOnSinglePage: Boolean,\n /**\n * @description which element the size dropdown appends to.\n */\n appendSizeTo: String,\n} as const)\nexport type PaginationProps = ExtractPropTypes<typeof paginationProps>\n\nexport const paginationEmits = {\n 'update:current-page': (val: number) => isNumber(val),\n 'update:page-size': (val: number) => isNumber(val),\n 'size-change': (val: number) => isNumber(val),\n 'change': (currentPage: number, pageSize: number) =>\n isNumber(currentPage) && isNumber(pageSize),\n 'current-change': (val: number) => isNumber(val),\n 'prev-click': (val: number) => isNumber(val),\n 'next-click': (val: number) => isNumber(val),\n}\nexport type PaginationEmits = typeof paginationEmits\n\nconst componentName = 'ElPagination'\nexport default defineComponent({\n name: componentName,\n\n props: paginationProps,\n emits: paginationEmits,\n\n setup(props, { emit, slots }) {\n const { t } = useLocale()\n const ns = useNamespace('pagination')\n const vnodeProps = getCurrentInstance()!.vnode.props || {}\n const _globalSize = useGlobalSize()\n const _size = computed(() =>\n props.small ? 'small' : props.size ?? _globalSize.value,\n )\n useDeprecated(\n {\n from: 'small',\n replacement: 'size',\n version: '3.0.0',\n scope: 'el-pagination',\n ref: 'https://element-plus.org/zh-CN/component/pagination.html',\n },\n computed(() => !!props.small),\n )\n // we can find @xxx=\"xxx\" props on `vnodeProps` to check if user bind corresponding events\n const hasCurrentPageListener\n = 'onUpdate:currentPage' in vnodeProps\n || 'onUpdate:current-page' in vnodeProps\n || 'onCurrentChange' in vnodeProps\n const hasPageSizeListener\n = 'onUpdate:pageSize' in vnodeProps\n || 'onUpdate:page-size' in vnodeProps\n || 'onSizeChange' in vnodeProps\n const assertValidUsage = computed(() => {\n // Users have to set either one, otherwise count of pages cannot be determined\n if (isAbsent(props.total) && isAbsent(props.pageCount))\n return false\n // <el-pagination ...otherProps :current-page=\"xxx\" /> without corresponding listener is forbidden now\n // Users have to use two way binding of `currentPage`\n // If users just want to provide a default value, `defaultCurrentPage` is here for you\n if (!isAbsent(props.currentPage) && !hasCurrentPageListener)\n return false\n // When you want to change sizes, things get more complex, detailed below\n // Basically the most important value we need is page count\n // either directly from props.pageCount\n // or calculated from props.total\n // we will take props.pageCount precedence over props.total\n if (props.layout.includes('sizes')) {\n if (!isAbsent(props.pageCount)) {\n // if props.pageCount is assign by user, then user have to watch pageSize change\n // and recalculate pageCount\n if (!hasPageSizeListener)\n return false\n }\n else if (!isAbsent(props.total)) {\n // Otherwise, we will see if user have props.pageSize defined\n // If so, meaning user want to have pageSize controlled himself/herself from component\n // Thus page size listener is required\n // users are account for page size change\n if (isAbsent(props.pageSize)) {\n // (else block just for explaination)\n // else page size is controlled by el-pagination internally\n }\n else {\n if (!hasPageSizeListener) {\n return false\n }\n }\n }\n }\n return true\n })\n\n const innerPageSize = ref(\n isAbsent(props.defaultPageSize) ? 10 : props.defaultPageSize,\n )\n const innerCurrentPage = ref(\n isAbsent(props.defaultCurrentPage) ? 1 : props.defaultCurrentPage,\n )\n\n const pageSizeBridge = computed({\n get() {\n return isAbsent(props.pageSize) ? innerPageSize.value : props.pageSize\n },\n set(v: number) {\n if (isAbsent(props.pageSize)) {\n innerPageSize.value = v\n }\n if (hasPageSizeListener) {\n emit('update:page-size', v)\n emit('size-change', v)\n }\n },\n })\n\n const pageCountBridge = computed<number>(() => {\n let pageCount = 0\n if (!isAbsent(props.pageCount)) {\n pageCount = props.pageCount\n }\n else if (!isAbsent(props.total)) {\n pageCount = Math.max(1, Math.ceil(props.total / pageSizeBridge.value))\n }\n return pageCount\n })\n\n const currentPageBridge = computed<number>({\n get() {\n return isAbsent(props.currentPage)\n ? innerCurrentPage.value\n : props.currentPage\n },\n set(v) {\n let newCurrentPage = v\n if (v < 1) {\n newCurrentPage = 1\n }\n else if (v > pageCountBridge.value) {\n newCurrentPage = pageCountBridge.value\n }\n if (isAbsent(props.currentPage)) {\n innerCurrentPage.value = newCurrentPage\n }\n if (hasCurrentPageListener) {\n emit('update:current-page', newCurrentPage)\n emit('current-change', newCurrentPage)\n }\n },\n })\n\n watch(pageCountBridge, (val) => {\n if (currentPageBridge.value > val)\n currentPageBridge.value = val\n })\n\n watch(\n [currentPageBridge, pageSizeBridge],\n (value) => {\n emit(CHANGE_EVENT, ...value)\n },\n { flush: 'post' },\n )\n\n function handleCurrentChange(val: number) {\n currentPageBridge.value = val\n }\n\n function handleSizeChange(val: number) {\n pageSizeBridge.value = val\n const newPageCount = pageCountBridge.value\n if (currentPageBridge.value > newPageCount) {\n currentPageBridge.value = newPageCount\n }\n }\n\n function prev() {\n if (props.disabled)\n return\n currentPageBridge.value -= 1\n emit('prev-click', currentPageBridge.value)\n }\n\n function next() {\n if (props.disabled)\n return\n currentPageBridge.value += 1\n emit('next-click', currentPageBridge.value)\n }\n\n // eslint-disable-next-line unicorn/consistent-function-scoping\n function addClass(element: any, cls: string) {\n if (element) {\n if (!element.props) {\n element.props = {}\n }\n element.props.class = [element.props.class, cls].join(' ')\n }\n }\n\n provide(elPaginationKey, {\n pageCount: pageCountBridge,\n disabled: computed(() => props.disabled),\n currentPage: currentPageBridge,\n changeEvent: handleCurrentChange,\n handleSizeChange,\n })\n\n return () => {\n if (!assertValidUsage.value) {\n debugWarn(componentName, t('el.pagination.deprecationWarning'))\n return null\n }\n if (!props.layout)\n return null\n if (props.hideOnSinglePage && pageCountBridge.value <= 1)\n return null\n const rootChildren: Array<VNode | VNode[] | null> = []\n const rightWrapperChildren: Array<VNode | VNode[] | null> = []\n const rightWrapperRoot = h(\n 'div',\n { class: ns.e('rightwrapper') },\n rightWrapperChildren,\n )\n const TEMPLATE_MAP: Record<\n Exclude<LayoutKey, '->'>,\n VNode | VNode[] | null\n > = {\n prev: h(Prev, {\n disabled: props.disabled,\n currentPage: currentPageBridge.value,\n prevText: props.prevText,\n prevIcon: props.prevIcon,\n onClick: prev,\n }),\n jumper: h(Jumper, {\n size: _size.value,\n }),\n pager: h(Pager, {\n currentPage: currentPageBridge.value,\n pageCount: pageCountBridge.value,\n pagerCount: props.pagerCount,\n onChange: handleCurrentChange,\n disabled: props.disabled,\n pageSize: props.pageSize,\n }),\n next: h(Next, {\n disabled: props.disabled,\n currentPage: currentPageBridge.value,\n pageCount: pageCountBridge.value,\n nextText: props.nextText,\n nextIcon: props.nextIcon,\n onClick: next,\n }),\n sizes: h(Sizes, {\n pageSize: pageSizeBridge.value,\n pageSizes: props.pageSizes,\n popperClass: props.popperClass,\n disabled: props.disabled,\n teleported: props.teleported,\n size: _size.value,\n appendSizeTo: props.appendSizeTo,\n }),\n slot: slots?.default?.() ?? null,\n total: h(Total, { total: isAbsent(props.total) ? 0 : props.total }),\n }\n\n const components = props.layout\n .split(',')\n .map((item: string) => item.trim()) as LayoutKey[]\n\n let haveRightWrapper = false\n\n for (const c of components) {\n if (c === '->') {\n haveRightWrapper = true\n continue\n }\n if (haveRightWrapper) {\n rightWrapperChildren.push(TEMPLATE_MAP[c])\n }\n else {\n rootChildren.push(TEMPLATE_MAP[c])\n }\n }\n\n addClass(rootChildren[0], ns.is('first'))\n addClass(rootChildren.at(-1), ns.is('last'))\n\n if (haveRightWrapper && rightWrapperChildren.length > 0) {\n addClass(rightWrapperChildren[0], ns.is('first'))\n addClass(\n rightWrapperChildren.at(-1),\n ns.is('last'),\n )\n rootChildren.push(rightWrapperRoot)\n }\n return h(\n 'div',\n {\n class: [\n ns.b(),\n ns.is('background', props.background),\n ns.m(_size.value),\n ],\n },\n rootChildren,\n )\n }\n },\n})\n"],"names":["elPaginationKey","usePagination","inject","t","useLocale","ns","useNamespace","pageCount","disabled","currentPage","changeEvent","userInput","ref","innerValue","computed","handleInput","val","handleChange","_createElementBlock","_normalizeClass","_unref","_createElementVNode","_createVNode","ElInput","size","props","__props","internalDisabled","nextText","_cache","$event","$emit","_openBlock","_createBlock","ElIcon","_resolveDynamicComponent","nextIcon","emit","__emit","nsPager","nsIcon","showPrevMore","showNextMore","quickPrevHover","quickNextHover","quickPrevFocus","quickNextFocus","pagers","pagerCount","halfPagerCount","array","startPage","i","offset","prevMoreKls","nextMoreKls","tabindex","watchEffect","onMouseEnter","forward","onFocus","onEnter","e","target","newPage","CHANGE_EVENT","onPagerClick","event","pagerCountOffset","useObserver","field","useField","path","errorPageIndexList","observable","errorPageSet","feedback","acc","cur","pageIndex","a","b","isPrevMoreError","pageIdx","isNextMoreError","ElBadge","_hoisted_1","DArrowLeft","MoreFilled","_Fragment","_renderList","pager","_hoisted_3","DArrowRight","_hoisted_5","prevText","prevIcon","pagination","innerPageSize","watch","newVal","oldVal","isEqual","isArr","pageSize","innerPageSizes","ElSelect","popperClass","teleported","appendSizeTo","item","ElOption","total","isAbsent","v","paginationProps","buildProps","value","isNumber","definePropType","mutable","iconPropType","ArrowLeft","ArrowRight","useSizeProp","paginationEmits","componentName","ElPagination","defineComponent","slots","vnodeProps","getCurrentInstance","_globalSize","useGlobalSize","_size","useDeprecated","hasCurrentPageListener","hasPageSizeListener","assertValidUsage","innerCurrentPage","pageSizeBridge","pageCountBridge","currentPageBridge","newCurrentPage","handleCurrentChange","handleSizeChange","newPageCount","prev","next","addClass","element","cls","provide","debugWarn","rootChildren","rightWrapperChildren","rightWrapperRoot","h","TEMPLATE_MAP","Prev","Jumper","Pager","Next","Sizes","Total","components","haveRightWrapper","c"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"pagination.mjs","sources":["../../node_modules/.pnpm/element-plus@2.13.2_vue@3.5.22_typescript@5.9.3_/node_modules/element-plus/es/components/pagination/src/constants.mjs","../../node_modules/.pnpm/element-plus@2.13.2_vue@3.5.22_typescript@5.9.3_/node_modules/element-plus/es/components/pagination/src/usePagination.mjs","../../src/pagination/components/jumper.vue","../../src/pagination/components/next.vue","../../src/pagination/components/pager.vue","../../src/pagination/components/prev.vue","../../src/pagination/components/sizes.vue","../../src/pagination/components/total.vue","../../src/pagination/pagination.ts"],"sourcesContent":["const elPaginationKey = /* @__PURE__ */ Symbol(\"elPaginationKey\");\n\nexport { elPaginationKey };\n//# sourceMappingURL=constants.mjs.map\n","import { inject } from 'vue';\nimport { elPaginationKey } from './constants.mjs';\n\nconst usePagination = () => inject(elPaginationKey, {});\n\nexport { usePagination };\n//# sourceMappingURL=usePagination.mjs.map\n","<script lang=\"ts\" setup>\nimport { ElInput, useLocale, useNamespace } from 'element-plus'\nimport { usePagination } from 'element-plus/es/components/pagination/src/usePagination'\nimport { computed, ref } from 'vue'\nimport { paginationJumperProps } from './jumper'\n\ndefineOptions({\n name: 'ElPaginationJumper',\n})\n\ndefineProps(paginationJumperProps)\nconst { t } = useLocale()\nconst ns = useNamespace('pagination')\nconst { pageCount, disabled, currentPage, changeEvent } = usePagination()\nconst userInput = ref<number | string>()\nconst innerValue = computed(() => userInput.value ?? currentPage?.value)\n\nfunction handleInput(val: number | string) {\n userInput.value = val ? +val : ''\n}\n\nfunction handleChange(val: number | string) {\n val = Math.trunc(+val)\n changeEvent?.(val)\n userInput.value = undefined\n}\n</script>\n\n<template>\n <span :class=\"ns.e('jump')\" :disabled=\"disabled\">\n <span :class=\"[ns.e('goto')]\">{{ t('el.pagination.goto') }}</span>\n <ElInput\n :size=\"size\"\n :class=\"[ns.e('editor'), ns.is('in-pagination')]\"\n :min=\"1\"\n :max=\"pageCount\"\n :disabled=\"disabled\"\n :model-value=\"innerValue\"\n :validate-event=\"false\"\n :aria-label=\"t('el.pagination.page')\"\n type=\"number\"\n @update:model-value=\"handleInput\"\n @change=\"handleChange\"\n />\n <span :class=\"[ns.e('classifier')]\">\n {{ t('el.pagination.pageClassifier') }}\n </span>\n </span>\n</template>\n","<script lang=\"ts\" setup>\nimport { ElIcon, useLocale } from 'element-plus'\nimport { computed } from 'vue'\nimport { paginationNextProps } from './next'\n\ndefineOptions({\n name: 'ElPaginationNext',\n})\n\nconst props = defineProps(paginationNextProps)\n\ndefineEmits(['click'])\n\nconst { t } = useLocale()\n\nconst internalDisabled = computed(\n () =>\n props.disabled\n || props.currentPage === props.pageCount\n || props.pageCount === 0,\n)\n</script>\n\n<template>\n <button\n type=\"button\"\n class=\"btn-next\"\n :disabled=\"internalDisabled\"\n :aria-label=\"nextText || t('el.pagination.next')\"\n :aria-disabled=\"internalDisabled\"\n @click=\"$emit('click', $event)\"\n >\n <span v-if=\"nextText\">{{ nextText }}</span>\n <ElIcon v-else>\n <component :is=\"nextIcon\" />\n </ElIcon>\n </button>\n</template>\n","<script lang=\"ts\" setup>\nimport type { ArrayField } from '@formily/core'\nimport { DArrowLeft, DArrowRight, MoreFilled } from '@element-plus/icons-vue'\nimport { formilyComputed, useObserver } from '@silver-formily/reactive-vue'\nimport { useField } from '@silver-formily/vue'\nimport { CHANGE_EVENT, ElBadge, useLocale, useNamespace } from 'element-plus'\nimport { computed, ref, watchEffect } from 'vue'\nimport { paginationPagerProps } from './pager'\n\ndefineOptions({\n name: 'ElPaginationPager',\n})\nconst props = defineProps(paginationPagerProps)\nconst emit = defineEmits([CHANGE_EVENT])\nconst nsPager = useNamespace('pager')\nconst nsIcon = useNamespace('icon')\nconst { t } = useLocale()\n\nconst showPrevMore = ref(false)\nconst showNextMore = ref(false)\nconst quickPrevHover = ref(false)\nconst quickNextHover = ref(false)\nconst quickPrevFocus = ref(false)\nconst quickNextFocus = ref(false)\nconst pagers = computed(() => {\n const pagerCount = props.pagerCount\n const halfPagerCount = (pagerCount - 1) / 2\n const currentPage = Number(props.currentPage)\n const pageCount = Number(props.pageCount)\n let showPrevMore = false\n let showNextMore = false\n if (pageCount > pagerCount) {\n if (currentPage > pagerCount - halfPagerCount) {\n showPrevMore = true\n }\n if (currentPage < pageCount - halfPagerCount) {\n showNextMore = true\n }\n }\n const array: number[] = []\n if (showPrevMore && !showNextMore) {\n const startPage = pageCount - (pagerCount - 2)\n for (let i = startPage; i < pageCount; i++) {\n array.push(i)\n }\n }\n else if (!showPrevMore && showNextMore) {\n for (let i = 2; i < pagerCount; i++) {\n array.push(i)\n }\n }\n else if (showPrevMore && showNextMore) {\n const offset = Math.floor(pagerCount / 2) - 1\n for (let i = currentPage - offset; i <= currentPage + offset; i++) {\n array.push(i)\n }\n }\n else {\n for (let i = 2; i < pageCount; i++) {\n array.push(i)\n }\n }\n return array\n})\n\nconst prevMoreKls = computed(() => [\n 'more',\n 'btn-quickprev',\n nsIcon.b(),\n nsPager.is('disabled', props.disabled),\n])\nconst nextMoreKls = computed(() => [\n 'more',\n 'btn-quicknext',\n nsIcon.b(),\n nsPager.is('disabled', props.disabled),\n])\n\nconst tabindex = computed(() => (props.disabled ? -1 : 0))\nwatchEffect(() => {\n const halfPagerCount = (props.pagerCount - 1) / 2\n showPrevMore.value = false\n showNextMore.value = false\n if (props.pageCount! > props.pagerCount) {\n if (props.currentPage > props.pagerCount - halfPagerCount) {\n showPrevMore.value = true\n }\n if (props.currentPage < props.pageCount! - halfPagerCount) {\n showNextMore.value = true\n }\n }\n})\nfunction onMouseEnter(forward = false) {\n if (props.disabled)\n return\n if (forward) {\n quickPrevHover.value = true\n }\n else {\n quickNextHover.value = true\n }\n}\nfunction onFocus(forward = false) {\n if (forward) {\n quickPrevFocus.value = true\n }\n else {\n quickNextFocus.value = true\n }\n}\nfunction onEnter(e: UIEvent) {\n const target = e.target as HTMLElement\n if (\n target.tagName.toLowerCase() === 'li'\n && Array.from(target.classList).includes('number')\n ) {\n const newPage = Number(target.textContent)\n if (newPage !== props.currentPage) {\n emit(CHANGE_EVENT, newPage)\n }\n }\n else if (\n target.tagName.toLowerCase() === 'li'\n && Array.from(target.classList).includes('more')\n ) {\n onPagerClick(e)\n }\n}\nfunction onPagerClick(event: UIEvent) {\n const target = event.target as HTMLElement\n if (target.tagName.toLowerCase() === 'ul' || props.disabled) {\n return\n }\n let newPage = Number(target.textContent)\n const pageCount = props.pageCount!\n const currentPage = props.currentPage\n const pagerCountOffset = props.pagerCount - 2\n if (target.className.includes('more')) {\n if (target.className.includes('quickprev')) {\n newPage = currentPage - pagerCountOffset\n }\n else if (target.className.includes('quicknext')) {\n newPage = currentPage + pagerCountOffset\n }\n }\n if (!Number.isNaN(+newPage)) {\n if (newPage < 1) {\n newPage = 1\n }\n if (newPage > pageCount) {\n newPage = pageCount\n }\n }\n if (newPage !== currentPage) {\n emit(CHANGE_EVENT, newPage)\n }\n}\n/* formily error count */\nuseObserver()\nconst fieldRef = useField<ArrayField>()\nconst field = fieldRef.value\nconst path = field.address.entire\nconst errorPageIndexList = formilyComputed(() => {\n const errorPageSet = field.form\n .queryFeedbacks({\n type: 'error',\n address: `${path}.**`,\n })\n .map(feedback => Number(feedback.path.split(`${path}.`)[1].split('.')[0]))\n .reduce((acc, cur) => {\n const pageIndex = Math.floor(cur / props.pageSize)\n acc.add(pageIndex)\n return acc\n }, new Set<number>())\n\n const errorPageList = Array.from(errorPageSet).sort((a, b) => a - b)\n return errorPageList\n})\n\nconst isPrevMoreError = formilyComputed(() => {\n return errorPageIndexList.value.some(pageIdx => (pageIdx < pagers.value[0] - 1) && pageIdx !== 0)\n})\nconst isNextMoreError = formilyComputed(() => {\n return errorPageIndexList.value.some(pageIdx => (pageIdx > pagers.value.at(-1) - 1) && pageIdx !== errorPageIndexList.value.length - 1)\n})\n</script>\n\n<template>\n <ul :class=\"nsPager.b()\" @click=\"onPagerClick\" @keyup.enter=\"onEnter\">\n <ElBadge v-if=\"pageCount > 1\" is-dot :value=\"1\" :hidden=\"errorPageIndexList[0] !== 0\">\n <li\n :class=\"[\n nsPager.is('active', currentPage === 1),\n nsPager.is('disabled', disabled),\n ]\" class=\"number\" :aria-current=\"currentPage === 1\" :aria-label=\"t('el.pagination.currentPage', { pager: 1 })\"\n :tabindex=\"tabindex\"\n >\n 1\n </li>\n </ElBadge>\n <ElBadge v-if=\"showPrevMore\" is-dot :value=\"1\" :hidden=\"!isPrevMoreError\">\n <li\n :class=\"prevMoreKls\" :tabindex=\"tabindex\"\n :aria-label=\"t('el.pagination.prevPages', { pager: pagerCount - 2 })\" @mouseenter=\"onMouseEnter(true)\"\n @mouseleave=\"quickPrevHover = false\" @focus=\"onFocus(true)\" @blur=\"quickPrevFocus = false\"\n >\n <DArrowLeft v-if=\"(quickPrevHover || quickPrevFocus) && !disabled\" />\n <MoreFilled v-else />\n </li>\n </ElBadge>\n <ElBadge\n v-for=\"pager in pagers\" :key=\"pager\" is-dot :value=\"1\"\n :hidden=\"!errorPageIndexList.includes(pager - 1)\"\n >\n <li\n :class=\"[\n nsPager.is('active', currentPage === pager),\n nsPager.is('disabled', disabled),\n ]\" class=\"number\" :aria-current=\"currentPage === pager\" :aria-label=\"t('el.pagination.currentPage', { pager })\"\n :tabindex=\"tabindex\"\n >\n {{ pager }}\n </li>\n </ElBadge>\n <ElBadge v-if=\"showNextMore\" is-dot :value=\"1\" :hidden=\"!isNextMoreError\">\n <li\n :class=\"nextMoreKls\" :tabindex=\"tabindex\"\n :aria-label=\"t('el.pagination.nextPages', { pager: pagerCount - 2 })\" @mouseenter=\"onMouseEnter()\"\n @mouseleave=\"quickNextHover = false\" @focus=\"onFocus()\" @blur=\"quickNextFocus = false\"\n >\n <DArrowRight v-if=\"(quickNextHover || quickNextFocus) && !disabled\" />\n <MoreFilled v-else />\n </li>\n </ElBadge>\n <ElBadge\n is-dot\n :value=\"1\"\n :hidden=\"errorPageIndexList[errorPageIndexList.length - 1] !== pageCount - 1\"\n >\n <li\n :class=\"[\n nsPager.is('active', currentPage === pageCount),\n nsPager.is('disabled', disabled),\n ]\" class=\"number\" :aria-current=\"currentPage === pageCount\"\n :aria-label=\"t('el.pagination.currentPage', { pager: pageCount })\" :tabindex=\"tabindex\"\n >\n {{ pageCount }}\n </li>\n </ElBadge>\n </ul>\n</template>\n","<script lang=\"ts\" setup>\nimport { ElIcon, useLocale } from 'element-plus'\nimport { computed } from 'vue'\nimport { paginationPrevEmits, paginationPrevProps } from './prev'\n\ndefineOptions({\n name: 'ElPaginationPrev',\n})\n\nconst props = defineProps(paginationPrevProps)\ndefineEmits(paginationPrevEmits)\n\nconst { t } = useLocale()\n\nconst internalDisabled = computed(\n () => props.disabled || props.currentPage <= 1,\n)\n</script>\n\n<template>\n <button\n type=\"button\"\n class=\"btn-prev\"\n :disabled=\"internalDisabled\"\n :aria-label=\"prevText || t('el.pagination.prev')\"\n :aria-disabled=\"internalDisabled\"\n @click=\"$emit('click', $event)\"\n >\n <span v-if=\"prevText\">{{ prevText }}</span>\n <ElIcon v-else>\n <component :is=\"prevIcon\" />\n </ElIcon>\n </button>\n</template>\n","<script lang=\"ts\" setup>\nimport { isArr, isEqual } from '@formily/shared'\nimport { ElOption, ElSelect, useLocale, useNamespace } from 'element-plus'\nimport { usePagination } from 'element-plus/es/components/pagination/src/usePagination'\nimport { computed, ref, watch } from 'vue'\nimport { paginationSizesProps } from './sizes'\n\ndefineOptions({\n name: 'ElPaginationSizes',\n})\n\nconst props = defineProps(paginationSizesProps)\nconst emit = defineEmits(['page-size-change'])\nconst { t } = useLocale()\nconst ns = useNamespace('pagination')\nconst pagination = usePagination()\nconst innerPageSize = ref<number>(props.pageSize!)\n\nwatch(\n () => props.pageSizes,\n (newVal, oldVal) => {\n if (isEqual(newVal, oldVal))\n return\n if (isArr(newVal)) {\n const pageSize = newVal.includes(props.pageSize!)\n ? props.pageSize\n : props.pageSizes[0]\n // eslint-disable-next-line vue/custom-event-name-casing\n emit('page-size-change', pageSize)\n }\n },\n)\n\nwatch(\n () => props.pageSize,\n (newVal) => {\n innerPageSize.value = newVal!\n },\n)\n\nconst innerPageSizes = computed(() => props.pageSizes)\nfunction handleChange(val: number) {\n if (val !== innerPageSize.value) {\n innerPageSize.value = val\n pagination.handleSizeChange?.(Number(val))\n }\n}\n</script>\n\n<template>\n <span :class=\"ns.e('sizes')\">\n <ElSelect\n :model-value=\"innerPageSize\"\n :disabled=\"disabled\"\n :popper-class=\"popperClass\"\n :size=\"size\"\n :teleported=\"teleported\"\n :validate-event=\"false\"\n :append-to=\"appendSizeTo\"\n @change=\"handleChange\"\n >\n <ElOption\n v-for=\"item in innerPageSizes\"\n :key=\"item\"\n :value=\"item\"\n :label=\"item + t('el.pagination.pagesize')\"\n />\n </ElSelect>\n </span>\n</template>\n","<script lang=\"ts\" setup>\nimport { useLocale, useNamespace } from 'element-plus'\nimport { usePagination } from 'element-plus/es/components/pagination/src/usePagination'\nimport { paginationTotalProps } from './total'\n\ndefineOptions({\n name: 'ElPaginationTotal',\n})\ndefineProps(paginationTotalProps)\nconst { t } = useLocale()\nconst ns = useNamespace('pagination')\nconst { disabled } = usePagination()\n</script>\n\n<template>\n <span :class=\"ns.e('total')\" :disabled=\"disabled\">\n {{\n t('el.pagination.total', {\n total,\n })\n }}\n </span>\n</template>\n","import type { ExtractPropTypes, VNode } from 'vue'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport {\n CHANGE_EVENT,\n elPaginationKey,\n useDeprecated,\n useGlobalSize,\n useLocale,\n useNamespace,\n useSizeProp,\n} from 'element-plus'\nimport {\n buildProps,\n debugWarn,\n definePropType,\n iconPropType,\n isNumber,\n mutable,\n} from 'element-plus/es/utils/index'\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n h,\n provide,\n ref,\n watch,\n} from 'vue'\n\nimport Jumper from './components/jumper.vue'\nimport Next from './components/next.vue'\nimport Pager from './components/pager.vue'\nimport Prev from './components/prev.vue'\nimport Sizes from './components/sizes.vue'\nimport Total from './components/total.vue'\n\n/**\n * It it user's responsibility to guarantee that the value of props.total... is number\n * (same as pageSize, defaultPageSize, currentPage, defaultCurrentPage, pageCount)\n * Otherwise we can reasonable infer that the corresponding field is absent\n */\nconst isAbsent = (v: unknown): v is undefined => typeof v !== 'number'\n\ntype LayoutKey\n = | 'prev'\n | 'pager'\n | 'next'\n | 'jumper'\n | '->'\n | 'total'\n | 'sizes'\n | 'slot'\n\nexport const paginationProps = buildProps({\n /**\n * @description options of item count per page\n */\n pageSize: Number,\n /**\n * @description default initial value of page size, not setting is the same as setting 10\n */\n defaultPageSize: Number,\n /**\n * @description total item count\n */\n total: Number,\n /**\n * @description total page count. Set either `total` or `page-count` and pages will be displayed; if you need `page-sizes`, `total` is required\n */\n pageCount: Number,\n /**\n * @description number of pagers. Pagination collapses when the total page count exceeds this value\n */\n pagerCount: {\n type: Number,\n validator: (value: unknown) => {\n return (\n isNumber(value)\n && Math.trunc(value) === value\n && value > 4\n && value < 22\n && value % 2 === 1\n )\n },\n default: 7,\n },\n /**\n * @description current page number\n */\n currentPage: Number,\n /**\n * @description default initial value of current-page, not setting is the same as setting 1\n */\n defaultCurrentPage: Number,\n /**\n * @description layout of Pagination, elements separated with a comma\n */\n layout: {\n type: String,\n default: (\n ['prev', 'pager', 'next', 'jumper', '->', 'total'] as LayoutKey[]\n ).join(', '),\n },\n /**\n * @description item count of each page\n */\n pageSizes: {\n type: definePropType<number[]>(Array),\n default: () => mutable([10, 20, 30, 40, 50, 100] as const),\n },\n /**\n * @description custom class name for the page size Select's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description text for the prev button\n */\n prevText: {\n type: String,\n default: '',\n },\n /**\n * @description icon for the prev button, higher priority of `prev-text`\n */\n prevIcon: {\n type: iconPropType,\n default: () => ArrowLeft,\n },\n /**\n * @description text for the next button\n */\n nextText: {\n type: String,\n default: '',\n },\n /**\n * @description icon for the next button, higher priority of `next-text`\n */\n nextIcon: {\n type: iconPropType,\n default: () => ArrowRight,\n },\n /**\n * @description whether Pagination size is teleported to body\n */\n teleported: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to use small pagination\n */\n small: Boolean,\n /**\n * @description set page size\n */\n size: useSizeProp,\n /**\n * @description whether the buttons have a background color\n */\n background: Boolean,\n /**\n * @description whether Pagination is disabled\n */\n disabled: Boolean,\n /**\n * @description whether to hide when there's only one page\n */\n hideOnSinglePage: Boolean,\n /**\n * @description which element the size dropdown appends to.\n */\n appendSizeTo: String,\n} as const)\nexport type PaginationProps = ExtractPropTypes<typeof paginationProps>\n\nexport const paginationEmits = {\n 'update:current-page': (val: number) => isNumber(val),\n 'update:page-size': (val: number) => isNumber(val),\n 'size-change': (val: number) => isNumber(val),\n 'change': (currentPage: number, pageSize: number) =>\n isNumber(currentPage) && isNumber(pageSize),\n 'current-change': (val: number) => isNumber(val),\n 'prev-click': (val: number) => isNumber(val),\n 'next-click': (val: number) => isNumber(val),\n}\nexport type PaginationEmits = typeof paginationEmits\n\nconst componentName = 'ElPagination'\nexport default defineComponent({\n name: componentName,\n\n props: paginationProps,\n emits: paginationEmits,\n\n setup(props, { emit, slots }) {\n const { t } = useLocale()\n const ns = useNamespace('pagination')\n const vnodeProps = getCurrentInstance()!.vnode.props || {}\n const _globalSize = useGlobalSize()\n const _size = computed(() =>\n props.small ? 'small' : props.size ?? _globalSize.value,\n )\n useDeprecated(\n {\n from: 'small',\n replacement: 'size',\n version: '3.0.0',\n scope: 'el-pagination',\n ref: 'https://element-plus.org/zh-CN/component/pagination.html',\n },\n computed(() => !!props.small),\n )\n // we can find @xxx=\"xxx\" props on `vnodeProps` to check if user bind corresponding events\n const hasCurrentPageListener\n = 'onUpdate:currentPage' in vnodeProps\n || 'onUpdate:current-page' in vnodeProps\n || 'onCurrentChange' in vnodeProps\n const hasPageSizeListener\n = 'onUpdate:pageSize' in vnodeProps\n || 'onUpdate:page-size' in vnodeProps\n || 'onSizeChange' in vnodeProps\n const assertValidUsage = computed(() => {\n // Users have to set either one, otherwise count of pages cannot be determined\n if (isAbsent(props.total) && isAbsent(props.pageCount))\n return false\n // <el-pagination ...otherProps :current-page=\"xxx\" /> without corresponding listener is forbidden now\n // Users have to use two way binding of `currentPage`\n // If users just want to provide a default value, `defaultCurrentPage` is here for you\n if (!isAbsent(props.currentPage) && !hasCurrentPageListener)\n return false\n // When you want to change sizes, things get more complex, detailed below\n // Basically the most important value we need is page count\n // either directly from props.pageCount\n // or calculated from props.total\n // we will take props.pageCount precedence over props.total\n if (props.layout.includes('sizes')) {\n if (!isAbsent(props.pageCount)) {\n // if props.pageCount is assign by user, then user have to watch pageSize change\n // and recalculate pageCount\n if (!hasPageSizeListener)\n return false\n }\n else if (!isAbsent(props.total)) {\n // Otherwise, we will see if user have props.pageSize defined\n // If so, meaning user want to have pageSize controlled himself/herself from component\n // Thus page size listener is required\n // users are account for page size change\n if (isAbsent(props.pageSize)) {\n // (else block just for explaination)\n // else page size is controlled by el-pagination internally\n }\n else {\n if (!hasPageSizeListener) {\n return false\n }\n }\n }\n }\n return true\n })\n\n const innerPageSize = ref(\n isAbsent(props.defaultPageSize) ? 10 : props.defaultPageSize,\n )\n const innerCurrentPage = ref(\n isAbsent(props.defaultCurrentPage) ? 1 : props.defaultCurrentPage,\n )\n\n const pageSizeBridge = computed({\n get() {\n return isAbsent(props.pageSize) ? innerPageSize.value : props.pageSize\n },\n set(v: number) {\n if (isAbsent(props.pageSize)) {\n innerPageSize.value = v\n }\n if (hasPageSizeListener) {\n emit('update:page-size', v)\n emit('size-change', v)\n }\n },\n })\n\n const pageCountBridge = computed<number>(() => {\n let pageCount = 0\n if (!isAbsent(props.pageCount)) {\n pageCount = props.pageCount\n }\n else if (!isAbsent(props.total)) {\n pageCount = Math.max(1, Math.ceil(props.total / pageSizeBridge.value))\n }\n return pageCount\n })\n\n const currentPageBridge = computed<number>({\n get() {\n return isAbsent(props.currentPage)\n ? innerCurrentPage.value\n : props.currentPage\n },\n set(v) {\n let newCurrentPage = v\n if (v < 1) {\n newCurrentPage = 1\n }\n else if (v > pageCountBridge.value) {\n newCurrentPage = pageCountBridge.value\n }\n if (isAbsent(props.currentPage)) {\n innerCurrentPage.value = newCurrentPage\n }\n if (hasCurrentPageListener) {\n emit('update:current-page', newCurrentPage)\n emit('current-change', newCurrentPage)\n }\n },\n })\n\n watch(pageCountBridge, (val) => {\n if (currentPageBridge.value > val)\n currentPageBridge.value = val\n })\n\n watch(\n [currentPageBridge, pageSizeBridge],\n (value) => {\n emit(CHANGE_EVENT, ...value)\n },\n { flush: 'post' },\n )\n\n function handleCurrentChange(val: number) {\n currentPageBridge.value = val\n }\n\n function handleSizeChange(val: number) {\n pageSizeBridge.value = val\n const newPageCount = pageCountBridge.value\n if (currentPageBridge.value > newPageCount) {\n currentPageBridge.value = newPageCount\n }\n }\n\n function prev() {\n if (props.disabled)\n return\n currentPageBridge.value -= 1\n emit('prev-click', currentPageBridge.value)\n }\n\n function next() {\n if (props.disabled)\n return\n currentPageBridge.value += 1\n emit('next-click', currentPageBridge.value)\n }\n\n // eslint-disable-next-line unicorn/consistent-function-scoping\n function addClass(element: any, cls: string) {\n if (element) {\n if (!element.props) {\n element.props = {}\n }\n element.props.class = [element.props.class, cls].join(' ')\n }\n }\n\n provide(elPaginationKey, {\n pageCount: pageCountBridge,\n disabled: computed(() => props.disabled),\n currentPage: currentPageBridge,\n changeEvent: handleCurrentChange,\n handleSizeChange,\n })\n\n return () => {\n if (!assertValidUsage.value) {\n debugWarn(componentName, t('el.pagination.deprecationWarning'))\n return null\n }\n if (!props.layout)\n return null\n if (props.hideOnSinglePage && pageCountBridge.value <= 1)\n return null\n const rootChildren: Array<VNode | VNode[] | null> = []\n const rightWrapperChildren: Array<VNode | VNode[] | null> = []\n const rightWrapperRoot = h(\n 'div',\n { class: ns.e('rightwrapper') },\n rightWrapperChildren,\n )\n const TEMPLATE_MAP: Record<\n Exclude<LayoutKey, '->'>,\n VNode | VNode[] | null\n > = {\n prev: h(Prev, {\n disabled: props.disabled,\n currentPage: currentPageBridge.value,\n prevText: props.prevText,\n prevIcon: props.prevIcon,\n onClick: prev,\n }),\n jumper: h(Jumper, {\n size: _size.value,\n }),\n pager: h(Pager, {\n currentPage: currentPageBridge.value,\n pageCount: pageCountBridge.value,\n pagerCount: props.pagerCount,\n onChange: handleCurrentChange,\n disabled: props.disabled,\n pageSize: props.pageSize,\n }),\n next: h(Next, {\n disabled: props.disabled,\n currentPage: currentPageBridge.value,\n pageCount: pageCountBridge.value,\n nextText: props.nextText,\n nextIcon: props.nextIcon,\n onClick: next,\n }),\n sizes: h(Sizes, {\n pageSize: pageSizeBridge.value,\n pageSizes: props.pageSizes,\n popperClass: props.popperClass,\n disabled: props.disabled,\n teleported: props.teleported,\n size: _size.value,\n appendSizeTo: props.appendSizeTo,\n }),\n slot: slots?.default?.() ?? null,\n total: h(Total, { total: isAbsent(props.total) ? 0 : props.total }),\n }\n\n const components = props.layout\n .split(',')\n .map((item: string) => item.trim()) as LayoutKey[]\n\n let haveRightWrapper = false\n\n for (const c of components) {\n if (c === '->') {\n haveRightWrapper = true\n continue\n }\n if (haveRightWrapper) {\n rightWrapperChildren.push(TEMPLATE_MAP[c])\n }\n else {\n rootChildren.push(TEMPLATE_MAP[c])\n }\n }\n\n addClass(rootChildren[0], ns.is('first'))\n addClass(rootChildren.at(-1), ns.is('last'))\n\n if (haveRightWrapper && rightWrapperChildren.length > 0) {\n addClass(rightWrapperChildren[0], ns.is('first'))\n addClass(\n rightWrapperChildren.at(-1),\n ns.is('last'),\n )\n rootChildren.push(rightWrapperRoot)\n }\n return h(\n 'div',\n {\n class: [\n ns.b(),\n ns.is('background', props.background),\n ns.m(_size.value),\n ],\n },\n rootChildren,\n )\n }\n },\n})\n"],"names":["elPaginationKey","usePagination","inject","t","useLocale","ns","useNamespace","pageCount","disabled","currentPage","changeEvent","userInput","ref","innerValue","computed","handleInput","val","handleChange","_createElementBlock","_normalizeClass","_unref","_createElementVNode","_createVNode","ElInput","size","props","__props","internalDisabled","nextText","_cache","$event","$emit","_openBlock","_createBlock","ElIcon","_resolveDynamicComponent","nextIcon","emit","__emit","nsPager","nsIcon","showPrevMore","showNextMore","quickPrevHover","quickNextHover","quickPrevFocus","quickNextFocus","pagers","pagerCount","halfPagerCount","array","startPage","i","offset","prevMoreKls","nextMoreKls","tabindex","watchEffect","onMouseEnter","forward","onFocus","onEnter","e","target","newPage","CHANGE_EVENT","onPagerClick","event","pagerCountOffset","useObserver","field","useField","path","errorPageIndexList","formilyComputed","errorPageSet","feedback","acc","cur","pageIndex","a","b","isPrevMoreError","pageIdx","isNextMoreError","ElBadge","_hoisted_1","DArrowLeft","MoreFilled","_Fragment","_renderList","pager","_hoisted_3","DArrowRight","_hoisted_5","prevText","prevIcon","pagination","innerPageSize","watch","newVal","oldVal","isEqual","isArr","pageSize","innerPageSizes","ElSelect","popperClass","teleported","appendSizeTo","item","ElOption","total","isAbsent","v","paginationProps","buildProps","value","isNumber","definePropType","mutable","iconPropType","ArrowLeft","ArrowRight","useSizeProp","paginationEmits","componentName","ElPagination","defineComponent","slots","vnodeProps","getCurrentInstance","_globalSize","useGlobalSize","_size","useDeprecated","hasCurrentPageListener","hasPageSizeListener","assertValidUsage","innerCurrentPage","pageSizeBridge","pageCountBridge","currentPageBridge","newCurrentPage","handleCurrentChange","handleSizeChange","newPageCount","prev","next","addClass","element","cls","provide","debugWarn","rootChildren","rightWrapperChildren","rightWrapperRoot","h","TEMPLATE_MAP","Prev","Jumper","Pager","Next","Sizes","Total","components","haveRightWrapper","c"],"mappings":"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","x_google_ignoreList":[0,1]}
|
package/esm/password/index.d.ts
CHANGED
|
@@ -1,34 +1,18 @@
|
|
|
1
1
|
import { ElInput } from 'element-plus';
|
|
2
2
|
export type PasswordProps = typeof ElInput;
|
|
3
3
|
export declare const Password: {
|
|
4
|
-
new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
|
|
5
|
-
value?: string | number;
|
|
6
|
-
}> & Readonly<{
|
|
7
|
-
onChange?: (value: string | number) => any;
|
|
8
|
-
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
9
|
-
change: (value: string | number) => any;
|
|
10
|
-
}, import('vue').PublicProps, {}, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
|
|
4
|
+
new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
|
|
11
5
|
P: {};
|
|
12
6
|
B: {};
|
|
13
7
|
D: {};
|
|
14
8
|
C: {};
|
|
15
9
|
M: {};
|
|
16
10
|
Defaults: {};
|
|
17
|
-
}, Readonly<{
|
|
18
|
-
value?: string | number;
|
|
19
|
-
}> & Readonly<{
|
|
20
|
-
onChange?: (value: string | number) => any;
|
|
21
|
-
}>, {}, {}, {}, {}, {}>;
|
|
11
|
+
}, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, {}>;
|
|
22
12
|
__isFragment?: never;
|
|
23
13
|
__isTeleport?: never;
|
|
24
14
|
__isSuspense?: never;
|
|
25
|
-
} & import('vue').ComponentOptionsBase<Readonly<{
|
|
26
|
-
value?: string | number;
|
|
27
|
-
}> & Readonly<{
|
|
28
|
-
onChange?: (value: string | number) => any;
|
|
29
|
-
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
30
|
-
change: (value: string | number) => any;
|
|
31
|
-
}, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
|
|
15
|
+
} & import('vue').ComponentOptionsBase<Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
|
|
32
16
|
$slots: Readonly<{
|
|
33
17
|
prefix?: () => any;
|
|
34
18
|
suffix?: () => any;
|
|
@@ -42,34 +26,18 @@ export declare const Password: {
|
|
|
42
26
|
};
|
|
43
27
|
}) & {
|
|
44
28
|
TextArea: {
|
|
45
|
-
new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
|
|
46
|
-
value?: string | number;
|
|
47
|
-
}> & Readonly<{
|
|
48
|
-
onChange?: (value: string | number) => any;
|
|
49
|
-
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
50
|
-
change: (value: string | number) => any;
|
|
51
|
-
}, import('vue').PublicProps, {}, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
|
|
29
|
+
new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
|
|
52
30
|
P: {};
|
|
53
31
|
B: {};
|
|
54
32
|
D: {};
|
|
55
33
|
C: {};
|
|
56
34
|
M: {};
|
|
57
35
|
Defaults: {};
|
|
58
|
-
}, Readonly<{
|
|
59
|
-
value?: string | number;
|
|
60
|
-
}> & Readonly<{
|
|
61
|
-
onChange?: (value: string | number) => any;
|
|
62
|
-
}>, {}, {}, {}, {}, {}>;
|
|
36
|
+
}, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, {}>;
|
|
63
37
|
__isFragment?: never;
|
|
64
38
|
__isTeleport?: never;
|
|
65
39
|
__isSuspense?: never;
|
|
66
|
-
} & import('vue').ComponentOptionsBase<Readonly<{
|
|
67
|
-
value?: string | number;
|
|
68
|
-
}> & Readonly<{
|
|
69
|
-
onChange?: (value: string | number) => any;
|
|
70
|
-
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
71
|
-
change: (value: string | number) => any;
|
|
72
|
-
}, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
|
|
40
|
+
} & import('vue').ComponentOptionsBase<Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
|
|
73
41
|
$slots: Readonly<{
|
|
74
42
|
prefix?: () => any;
|
|
75
43
|
suffix?: () => any;
|
package/esm/password/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/password/index.ts"],"sourcesContent":["import type { ElInput } from 'element-plus'\nimport { connect, mapProps } from '@formily/vue'\nimport { Input } from '../input'\n\nexport type PasswordProps = typeof ElInput\n\nexport const Password = connect(\n Input,\n mapProps(props => ({\n ...props,\n showPassword: true,\n })),\n)\n\nexport default Password\n"],"names":["Password","connect","Input","mapProps","props"],"mappings":";;AAMO,MAAMA,IAAWC;AAAA,EACtBC;AAAA,EACAC,EAAS,CAAAC,OAAU;AAAA,IACjB,GAAGA;AAAA,IACH,cAAc;AAAA,EAAA,EACd;AACJ;"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/password/index.ts"],"sourcesContent":["import type { ElInput } from 'element-plus'\nimport { connect, mapProps } from '@silver-formily/vue'\nimport { Input } from '../input'\n\nexport type PasswordProps = typeof ElInput\n\nexport const Password = connect<typeof Input>(\n Input,\n mapProps(props => ({\n ...props,\n showPassword: true,\n })),\n)\n\nexport default Password\n"],"names":["Password","connect","Input","mapProps","props"],"mappings":";;AAMO,MAAMA,IAAWC;AAAA,EACtBC;AAAA,EACAC,EAAS,CAAAC,OAAU;AAAA,IACjB,GAAGA;AAAA,IACH,cAAc;AAAA,EAAA,EACd;AACJ;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
type __VLS_Props = {
|
|
2
|
-
|
|
2
|
+
modelValue: any;
|
|
3
3
|
};
|
|
4
4
|
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
5
5
|
export default _default;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
type __VLS_Props = {
|
|
2
|
-
|
|
2
|
+
modelValue?: any;
|
|
3
3
|
};
|
|
4
4
|
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
5
5
|
export default _default;
|
|
@@ -17,7 +17,7 @@ export declare const PreviewText: {
|
|
|
17
17
|
}) & {
|
|
18
18
|
Input: {
|
|
19
19
|
new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
|
|
20
|
-
|
|
20
|
+
modelValue?: any;
|
|
21
21
|
}> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
|
|
22
22
|
P: {};
|
|
23
23
|
B: {};
|
|
@@ -26,13 +26,13 @@ export declare const PreviewText: {
|
|
|
26
26
|
M: {};
|
|
27
27
|
Defaults: {};
|
|
28
28
|
}, Readonly<{
|
|
29
|
-
|
|
29
|
+
modelValue?: any;
|
|
30
30
|
}> & Readonly<{}>, {}, {}, {}, {}, {}>;
|
|
31
31
|
__isFragment?: never;
|
|
32
32
|
__isTeleport?: never;
|
|
33
33
|
__isSuspense?: never;
|
|
34
34
|
} & import('vue').ComponentOptionsBase<Readonly<{
|
|
35
|
-
|
|
35
|
+
modelValue?: any;
|
|
36
36
|
}> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
|
|
37
37
|
$slots: Readonly<{
|
|
38
38
|
prepend?: () => any;
|
|
@@ -47,28 +47,28 @@ export declare const PreviewText: {
|
|
|
47
47
|
};
|
|
48
48
|
});
|
|
49
49
|
Select: import('vue').DefineComponent<{
|
|
50
|
-
|
|
50
|
+
modelValue?: any;
|
|
51
51
|
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
52
|
-
|
|
52
|
+
modelValue?: any;
|
|
53
53
|
}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
|
|
54
54
|
Cascader: import('vue').DefineComponent<{
|
|
55
|
-
|
|
55
|
+
modelValue: any;
|
|
56
56
|
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
57
|
-
|
|
57
|
+
modelValue: any;
|
|
58
58
|
}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
59
59
|
DatePicker: import('vue').DefineComponent<{
|
|
60
|
-
|
|
60
|
+
modelValue?: any;
|
|
61
61
|
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
62
|
-
|
|
62
|
+
modelValue?: any;
|
|
63
63
|
}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
64
64
|
TimePicker: import('vue').DefineComponent<{
|
|
65
|
-
|
|
65
|
+
modelValue?: any;
|
|
66
66
|
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
67
|
-
|
|
67
|
+
modelValue?: any;
|
|
68
68
|
}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
69
69
|
Tree: import('vue').DefineComponent<{
|
|
70
70
|
nodeKey: string;
|
|
71
|
-
|
|
71
|
+
modelValue?: any;
|
|
72
72
|
valueType?: string;
|
|
73
73
|
data?: any[];
|
|
74
74
|
props?: {
|
|
@@ -80,7 +80,7 @@ export declare const PreviewText: {
|
|
|
80
80
|
maxHeight?: number;
|
|
81
81
|
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
82
82
|
nodeKey: string;
|
|
83
|
-
|
|
83
|
+
modelValue?: any;
|
|
84
84
|
valueType?: string;
|
|
85
85
|
data?: any[];
|
|
86
86
|
props?: {
|