@silver-formily/element-plus 2.1.0 → 2.3.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.
Files changed (177) hide show
  1. package/LICENSE +21 -21
  2. package/README.en-US.md +32 -32
  3. package/README.md +32 -32
  4. package/esm/__builtins__/configs/index.mjs.map +1 -1
  5. package/esm/__builtins__/index.mjs +19 -23
  6. package/esm/__builtins__/index.mjs.map +1 -1
  7. package/esm/__builtins__/shared/index.d.ts +0 -1
  8. package/esm/__builtins__/shared/index.mjs +17 -21
  9. package/esm/__builtins__/shared/index.mjs.map +1 -1
  10. package/esm/__builtins__/shared/loading.mjs +5 -5
  11. package/esm/__builtins__/shared/loading.mjs.map +1 -1
  12. package/esm/__builtins__/shared/simple-version-compare.mjs.map +1 -1
  13. package/esm/__builtins__/shared/transform-component.mjs.map +1 -1
  14. package/esm/__builtins__/shared/use-enter-submit.d.ts +9 -0
  15. package/esm/__builtins__/shared/use-enter-submit.mjs +25 -0
  16. package/esm/__builtins__/shared/use-enter-submit.mjs.map +1 -0
  17. package/esm/__builtins__/shared/utils.mjs.map +1 -1
  18. package/esm/array-base/index.mjs +18 -21
  19. package/esm/array-base/index.mjs.map +1 -1
  20. package/esm/array-base/symbols.mjs.map +1 -1
  21. package/esm/array-base/utils.mjs +29 -33
  22. package/esm/array-base/utils.mjs.map +1 -1
  23. package/esm/array-cards/index.mjs +29 -31
  24. package/esm/array-cards/index.mjs.map +1 -1
  25. package/esm/array-collapse/index.mjs +35 -36
  26. package/esm/array-collapse/index.mjs.map +1 -1
  27. package/esm/array-collapse/utils.mjs +2 -8
  28. package/esm/array-collapse/utils.mjs.map +1 -1
  29. package/esm/array-items/index.mjs +30 -33
  30. package/esm/array-items/index.mjs.map +1 -1
  31. package/esm/array-list-tabs/index.mjs +27 -28
  32. package/esm/array-list-tabs/index.mjs.map +1 -1
  33. package/esm/array-list-tabs/utils.mjs +5 -11
  34. package/esm/array-list-tabs/utils.mjs.map +1 -1
  35. package/esm/array-table/index.mjs +52 -53
  36. package/esm/array-table/index.mjs.map +1 -1
  37. package/esm/array-table/utils.mjs +12 -18
  38. package/esm/array-table/utils.mjs.map +1 -1
  39. package/esm/array-tabs/index.mjs +17 -19
  40. package/esm/array-tabs/index.mjs.map +1 -1
  41. package/esm/autocomplete/autocomplete.d.ts +1222 -0
  42. package/esm/autocomplete/index.d.ts +639 -0
  43. package/esm/autocomplete/index.mjs +110 -0
  44. package/esm/autocomplete/index.mjs.map +1 -0
  45. package/esm/cascader/index.mjs +17 -20
  46. package/esm/cascader/index.mjs.map +1 -1
  47. package/esm/checkbox/index.d.ts +42 -42
  48. package/esm/checkbox/index.mjs +16 -19
  49. package/esm/checkbox/index.mjs.map +1 -1
  50. package/esm/color-picker/index.d.ts +210 -0
  51. package/esm/color-picker/index.mjs +14 -0
  52. package/esm/color-picker/index.mjs.map +1 -0
  53. package/esm/color-picker-panel/index.d.ts +129 -0
  54. package/esm/color-picker-panel/index.mjs +22 -0
  55. package/esm/color-picker-panel/index.mjs.map +1 -0
  56. package/esm/date-picker/index.mjs +11 -35
  57. package/esm/date-picker/index.mjs.map +1 -1
  58. package/esm/date-picker/utils.d.ts +4 -0
  59. package/esm/date-picker/utils.mjs +27 -0
  60. package/esm/date-picker/utils.mjs.map +1 -0
  61. package/esm/date-picker-panel/index.d.ts +143 -0
  62. package/esm/date-picker-panel/index.mjs +27 -0
  63. package/esm/date-picker-panel/index.mjs.map +1 -0
  64. package/esm/editable/index.mjs +48 -50
  65. package/esm/editable/index.mjs.map +1 -1
  66. package/esm/env.d.mjs +2 -0
  67. package/esm/env.d.mjs.map +1 -0
  68. package/esm/form/form.mjs +6 -6
  69. package/esm/form/form.mjs.map +1 -1
  70. package/esm/form-button-group/form-button-group.d.ts +1 -1
  71. package/esm/form-button-group/index.d.ts +3 -3
  72. package/esm/form-button-group/index.mjs +23 -26
  73. package/esm/form-button-group/index.mjs.map +1 -1
  74. package/esm/form-button-group/utils.mjs +2 -8
  75. package/esm/form-button-group/utils.mjs.map +1 -1
  76. package/esm/form-collapse/index.mjs +18 -20
  77. package/esm/form-collapse/index.mjs.map +1 -1
  78. package/esm/form-collapse/utils.mjs.map +1 -1
  79. package/esm/form-dialog/dialog-content.d.ts +789 -3
  80. package/esm/form-dialog/index.mjs +98 -87
  81. package/esm/form-dialog/index.mjs.map +1 -1
  82. package/esm/form-dialog/types.d.ts +1 -0
  83. package/esm/form-drawer/drawer-content.d.ts +919 -3
  84. package/esm/form-drawer/index.mjs +92 -82
  85. package/esm/form-drawer/index.mjs.map +1 -1
  86. package/esm/form-drawer/types.d.ts +1 -0
  87. package/esm/form-grid/hooks.mjs.map +1 -1
  88. package/esm/form-grid/index.mjs +20 -23
  89. package/esm/form-grid/index.mjs.map +1 -1
  90. package/esm/form-item/index.mjs +59 -57
  91. package/esm/form-item/index.mjs.map +1 -1
  92. package/esm/form-item/utils.mjs.map +1 -1
  93. package/esm/form-layout/form-layout.mjs +14 -18
  94. package/esm/form-layout/form-layout.mjs.map +1 -1
  95. package/esm/form-layout/utils.mjs +19 -24
  96. package/esm/form-layout/utils.mjs.map +1 -1
  97. package/esm/form-step/index.mjs +24 -26
  98. package/esm/form-step/index.mjs.map +1 -1
  99. package/esm/form-step/utils.mjs.map +1 -1
  100. package/esm/form-tab/hooks.mjs.map +1 -1
  101. package/esm/form-tab/index.mjs +19 -20
  102. package/esm/form-tab/index.mjs.map +1 -1
  103. package/esm/form-tab/utils.mjs.map +1 -1
  104. package/esm/index.d.ts +9 -0
  105. package/esm/index.mjs +90 -72
  106. package/esm/index.mjs.map +1 -1
  107. package/esm/input/index.mjs +20 -23
  108. package/esm/input/index.mjs.map +1 -1
  109. package/esm/input-number/index.d.ts +21 -21
  110. package/esm/input-number/index.mjs +7 -9
  111. package/esm/input-number/index.mjs.map +1 -1
  112. package/esm/input-tag/index.d.ts +32 -0
  113. package/esm/input-tag/index.mjs +46 -0
  114. package/esm/input-tag/index.mjs.map +1 -0
  115. package/esm/input-tag/input-tag.d.ts +32 -0
  116. package/esm/mention/index.d.ts +50 -0
  117. package/esm/mention/index.mjs +93 -0
  118. package/esm/mention/index.mjs.map +1 -0
  119. package/esm/mention/mention.d.ts +51 -0
  120. package/esm/pagination/components/jumper.mjs.map +1 -1
  121. package/esm/pagination/components/next.mjs.map +1 -1
  122. package/esm/pagination/components/pager.mjs.map +1 -1
  123. package/esm/pagination/components/prev.mjs.map +1 -1
  124. package/esm/pagination/components/total.mjs.map +1 -1
  125. package/esm/pagination/pagination.mjs.map +1 -1
  126. package/esm/password/index.mjs.map +1 -1
  127. package/esm/preview-text/color-picker.d.ts +5 -0
  128. package/esm/preview-text/index.d.ts +10 -0
  129. package/esm/preview-text/index.mjs +175 -119
  130. package/esm/preview-text/index.mjs.map +1 -1
  131. package/esm/preview-text/rate.d.ts +5 -0
  132. package/esm/preview-text/utils.d.ts +5 -5
  133. package/esm/preview-text/utils.mjs.map +1 -1
  134. package/esm/radio/index.d.ts +36 -36
  135. package/esm/radio/index.mjs +25 -28
  136. package/esm/radio/index.mjs.map +1 -1
  137. package/esm/rate/index.d.ts +187 -0
  138. package/esm/rate/index.mjs +14 -0
  139. package/esm/rate/index.mjs.map +1 -0
  140. package/esm/reset/index.mjs.map +1 -1
  141. package/esm/segmented/index.d.ts +26 -0
  142. package/esm/segmented/index.mjs +37 -0
  143. package/esm/segmented/index.mjs.map +1 -0
  144. package/esm/segmented/segmented.d.ts +25 -0
  145. package/esm/select/index.mjs +16 -19
  146. package/esm/select/index.mjs.map +1 -1
  147. package/esm/select-table/index.mjs +12 -15
  148. package/esm/select-table/index.mjs.map +1 -1
  149. package/esm/shared/overlay-elements.d.ts +6 -0
  150. package/esm/shared/overlay-elements.mjs +16 -0
  151. package/esm/shared/overlay-elements.mjs.map +1 -0
  152. package/esm/slider/index.d.ts +177 -0
  153. package/esm/slider/index.mjs +14 -0
  154. package/esm/slider/index.mjs.map +1 -0
  155. package/esm/styles/preview-text/index.css +1 -1
  156. package/esm/submit/index.mjs.map +1 -1
  157. package/esm/switch/index.d.ts +12 -12
  158. package/esm/switch/index.mjs.map +1 -1
  159. package/esm/time-picker/index.mjs +6 -8
  160. package/esm/time-picker/index.mjs.map +1 -1
  161. package/esm/time-select/index.mjs +6 -8
  162. package/esm/time-select/index.mjs.map +1 -1
  163. package/esm/transfer/index.mjs.map +1 -1
  164. package/esm/tree/index.mjs +28 -31
  165. package/esm/tree/index.mjs.map +1 -1
  166. package/esm/tree/utils.mjs.map +1 -1
  167. package/esm/tree-select/index.mjs +17 -20
  168. package/esm/tree-select/index.mjs.map +1 -1
  169. package/esm/upload/index.d.ts +1 -1
  170. package/esm/upload/index.mjs +7 -9
  171. package/esm/upload/index.mjs.map +1 -1
  172. package/esm/upload/upload.d.ts +2 -2
  173. package/esm/vendor/sizes.mjs.map +1 -1
  174. package/package.json +115 -113
  175. package/esm/__builtins__/shared/hooks.d.ts +0 -7
  176. package/esm/__builtins__/shared/hooks.mjs +0 -59
  177. package/esm/__builtins__/shared/hooks.mjs.map +0 -1
@@ -1 +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]}
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>\r\nimport { ElInput, useLocale, useNamespace } from 'element-plus'\r\nimport { usePagination } from 'element-plus/es/components/pagination/src/usePagination'\r\nimport { computed, ref } from 'vue'\r\nimport { paginationJumperProps } from './jumper'\r\n\r\ndefineOptions({\r\n name: 'ElPaginationJumper',\r\n})\r\n\r\ndefineProps(paginationJumperProps)\r\nconst { t } = useLocale()\r\nconst ns = useNamespace('pagination')\r\nconst { pageCount, disabled, currentPage, changeEvent } = usePagination()\r\nconst userInput = ref<number | string>()\r\nconst innerValue = computed(() => userInput.value ?? currentPage?.value)\r\n\r\nfunction handleInput(val: number | string) {\r\n userInput.value = val ? +val : ''\r\n}\r\n\r\nfunction handleChange(val: number | string) {\r\n val = Math.trunc(+val)\r\n changeEvent?.(val)\r\n userInput.value = undefined\r\n}\r\n</script>\r\n\r\n<template>\r\n <span :class=\"ns.e('jump')\" :disabled=\"disabled\">\r\n <span :class=\"[ns.e('goto')]\">{{ t('el.pagination.goto') }}</span>\r\n <ElInput\r\n :size=\"size\"\r\n :class=\"[ns.e('editor'), ns.is('in-pagination')]\"\r\n :min=\"1\"\r\n :max=\"pageCount\"\r\n :disabled=\"disabled\"\r\n :model-value=\"innerValue\"\r\n :validate-event=\"false\"\r\n :aria-label=\"t('el.pagination.page')\"\r\n type=\"number\"\r\n @update:model-value=\"handleInput\"\r\n @change=\"handleChange\"\r\n />\r\n <span :class=\"[ns.e('classifier')]\">\r\n {{ t('el.pagination.pageClassifier') }}\r\n </span>\r\n </span>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport { ElIcon, useLocale } from 'element-plus'\r\nimport { computed } from 'vue'\r\nimport { paginationNextProps } from './next'\r\n\r\ndefineOptions({\r\n name: 'ElPaginationNext',\r\n})\r\n\r\nconst props = defineProps(paginationNextProps)\r\n\r\ndefineEmits(['click'])\r\n\r\nconst { t } = useLocale()\r\n\r\nconst internalDisabled = computed(\r\n () =>\r\n props.disabled\r\n || props.currentPage === props.pageCount\r\n || props.pageCount === 0,\r\n)\r\n</script>\r\n\r\n<template>\r\n <button\r\n type=\"button\"\r\n class=\"btn-next\"\r\n :disabled=\"internalDisabled\"\r\n :aria-label=\"nextText || t('el.pagination.next')\"\r\n :aria-disabled=\"internalDisabled\"\r\n @click=\"$emit('click', $event)\"\r\n >\r\n <span v-if=\"nextText\">{{ nextText }}</span>\r\n <ElIcon v-else>\r\n <component :is=\"nextIcon\" />\r\n </ElIcon>\r\n </button>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\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\r\ndefineOptions({\r\n name: 'ElPaginationPager',\r\n})\r\nconst props = defineProps(paginationPagerProps)\r\nconst emit = defineEmits([CHANGE_EVENT])\r\nconst nsPager = useNamespace('pager')\r\nconst nsIcon = useNamespace('icon')\r\nconst { t } = useLocale()\r\n\r\nconst showPrevMore = ref(false)\r\nconst showNextMore = ref(false)\r\nconst quickPrevHover = ref(false)\r\nconst quickNextHover = ref(false)\r\nconst quickPrevFocus = ref(false)\r\nconst quickNextFocus = ref(false)\r\nconst pagers = computed(() => {\r\n const pagerCount = props.pagerCount\r\n const halfPagerCount = (pagerCount - 1) / 2\r\n const currentPage = Number(props.currentPage)\r\n const pageCount = Number(props.pageCount)\r\n let showPrevMore = false\r\n let showNextMore = false\r\n if (pageCount > pagerCount) {\r\n if (currentPage > pagerCount - halfPagerCount) {\r\n showPrevMore = true\r\n }\r\n if (currentPage < pageCount - halfPagerCount) {\r\n showNextMore = true\r\n }\r\n }\r\n const array: number[] = []\r\n if (showPrevMore && !showNextMore) {\r\n const startPage = pageCount - (pagerCount - 2)\r\n for (let i = startPage; i < pageCount; i++) {\r\n array.push(i)\r\n }\r\n }\r\n else if (!showPrevMore && showNextMore) {\r\n for (let i = 2; i < pagerCount; i++) {\r\n array.push(i)\r\n }\r\n }\r\n else if (showPrevMore && showNextMore) {\r\n const offset = Math.floor(pagerCount / 2) - 1\r\n for (let i = currentPage - offset; i <= currentPage + offset; i++) {\r\n array.push(i)\r\n }\r\n }\r\n else {\r\n for (let i = 2; i < pageCount; i++) {\r\n array.push(i)\r\n }\r\n }\r\n return array\r\n})\r\n\r\nconst prevMoreKls = computed(() => [\r\n 'more',\r\n 'btn-quickprev',\r\n nsIcon.b(),\r\n nsPager.is('disabled', props.disabled),\r\n])\r\nconst nextMoreKls = computed(() => [\r\n 'more',\r\n 'btn-quicknext',\r\n nsIcon.b(),\r\n nsPager.is('disabled', props.disabled),\r\n])\r\n\r\nconst tabindex = computed(() => (props.disabled ? -1 : 0))\r\nwatchEffect(() => {\r\n const halfPagerCount = (props.pagerCount - 1) / 2\r\n showPrevMore.value = false\r\n showNextMore.value = false\r\n if (props.pageCount! > props.pagerCount) {\r\n if (props.currentPage > props.pagerCount - halfPagerCount) {\r\n showPrevMore.value = true\r\n }\r\n if (props.currentPage < props.pageCount! - halfPagerCount) {\r\n showNextMore.value = true\r\n }\r\n }\r\n})\r\nfunction onMouseEnter(forward = false) {\r\n if (props.disabled)\r\n return\r\n if (forward) {\r\n quickPrevHover.value = true\r\n }\r\n else {\r\n quickNextHover.value = true\r\n }\r\n}\r\nfunction onFocus(forward = false) {\r\n if (forward) {\r\n quickPrevFocus.value = true\r\n }\r\n else {\r\n quickNextFocus.value = true\r\n }\r\n}\r\nfunction onEnter(e: UIEvent) {\r\n const target = e.target as HTMLElement\r\n if (\r\n target.tagName.toLowerCase() === 'li'\r\n && Array.from(target.classList).includes('number')\r\n ) {\r\n const newPage = Number(target.textContent)\r\n if (newPage !== props.currentPage) {\r\n emit(CHANGE_EVENT, newPage)\r\n }\r\n }\r\n else if (\r\n target.tagName.toLowerCase() === 'li'\r\n && Array.from(target.classList).includes('more')\r\n ) {\r\n onPagerClick(e)\r\n }\r\n}\r\nfunction onPagerClick(event: UIEvent) {\r\n const target = event.target as HTMLElement\r\n if (target.tagName.toLowerCase() === 'ul' || props.disabled) {\r\n return\r\n }\r\n let newPage = Number(target.textContent)\r\n const pageCount = props.pageCount!\r\n const currentPage = props.currentPage\r\n const pagerCountOffset = props.pagerCount - 2\r\n if (target.className.includes('more')) {\r\n if (target.className.includes('quickprev')) {\r\n newPage = currentPage - pagerCountOffset\r\n }\r\n else if (target.className.includes('quicknext')) {\r\n newPage = currentPage + pagerCountOffset\r\n }\r\n }\r\n if (!Number.isNaN(+newPage)) {\r\n if (newPage < 1) {\r\n newPage = 1\r\n }\r\n if (newPage > pageCount) {\r\n newPage = pageCount\r\n }\r\n }\r\n if (newPage !== currentPage) {\r\n emit(CHANGE_EVENT, newPage)\r\n }\r\n}\r\n/* formily error count */\r\nuseObserver()\r\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\r\nconst isPrevMoreError = formilyComputed(() => {\r\n return errorPageIndexList.value.some(pageIdx => (pageIdx < pagers.value[0] - 1) && pageIdx !== 0)\r\n})\r\nconst isNextMoreError = formilyComputed(() => {\r\n return errorPageIndexList.value.some(pageIdx => (pageIdx > pagers.value.at(-1) - 1) && pageIdx !== errorPageIndexList.value.length - 1)\r\n})\r\n</script>\r\n\r\n<template>\r\n <ul :class=\"nsPager.b()\" @click=\"onPagerClick\" @keyup.enter=\"onEnter\">\r\n <ElBadge v-if=\"pageCount > 1\" is-dot :value=\"1\" :hidden=\"errorPageIndexList[0] !== 0\">\r\n <li\r\n :class=\"[\r\n nsPager.is('active', currentPage === 1),\r\n nsPager.is('disabled', disabled),\r\n ]\" class=\"number\" :aria-current=\"currentPage === 1\" :aria-label=\"t('el.pagination.currentPage', { pager: 1 })\"\r\n :tabindex=\"tabindex\"\r\n >\r\n 1\r\n </li>\r\n </ElBadge>\r\n <ElBadge v-if=\"showPrevMore\" is-dot :value=\"1\" :hidden=\"!isPrevMoreError\">\r\n <li\r\n :class=\"prevMoreKls\" :tabindex=\"tabindex\"\r\n :aria-label=\"t('el.pagination.prevPages', { pager: pagerCount - 2 })\" @mouseenter=\"onMouseEnter(true)\"\r\n @mouseleave=\"quickPrevHover = false\" @focus=\"onFocus(true)\" @blur=\"quickPrevFocus = false\"\r\n >\r\n <DArrowLeft v-if=\"(quickPrevHover || quickPrevFocus) && !disabled\" />\r\n <MoreFilled v-else />\r\n </li>\r\n </ElBadge>\r\n <ElBadge\r\n v-for=\"pager in pagers\" :key=\"pager\" is-dot :value=\"1\"\r\n :hidden=\"!errorPageIndexList.includes(pager - 1)\"\r\n >\r\n <li\r\n :class=\"[\r\n nsPager.is('active', currentPage === pager),\r\n nsPager.is('disabled', disabled),\r\n ]\" class=\"number\" :aria-current=\"currentPage === pager\" :aria-label=\"t('el.pagination.currentPage', { pager })\"\r\n :tabindex=\"tabindex\"\r\n >\r\n {{ pager }}\r\n </li>\r\n </ElBadge>\r\n <ElBadge v-if=\"showNextMore\" is-dot :value=\"1\" :hidden=\"!isNextMoreError\">\r\n <li\r\n :class=\"nextMoreKls\" :tabindex=\"tabindex\"\r\n :aria-label=\"t('el.pagination.nextPages', { pager: pagerCount - 2 })\" @mouseenter=\"onMouseEnter()\"\r\n @mouseleave=\"quickNextHover = false\" @focus=\"onFocus()\" @blur=\"quickNextFocus = false\"\r\n >\r\n <DArrowRight v-if=\"(quickNextHover || quickNextFocus) && !disabled\" />\r\n <MoreFilled v-else />\r\n </li>\r\n </ElBadge>\r\n <ElBadge\r\n is-dot\r\n :value=\"1\"\r\n :hidden=\"errorPageIndexList[errorPageIndexList.length - 1] !== pageCount - 1\"\r\n >\r\n <li\r\n :class=\"[\r\n nsPager.is('active', currentPage === pageCount),\r\n nsPager.is('disabled', disabled),\r\n ]\" class=\"number\" :aria-current=\"currentPage === pageCount\"\r\n :aria-label=\"t('el.pagination.currentPage', { pager: pageCount })\" :tabindex=\"tabindex\"\r\n >\r\n {{ pageCount }}\r\n </li>\r\n </ElBadge>\r\n </ul>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport { ElIcon, useLocale } from 'element-plus'\r\nimport { computed } from 'vue'\r\nimport { paginationPrevEmits, paginationPrevProps } from './prev'\r\n\r\ndefineOptions({\r\n name: 'ElPaginationPrev',\r\n})\r\n\r\nconst props = defineProps(paginationPrevProps)\r\ndefineEmits(paginationPrevEmits)\r\n\r\nconst { t } = useLocale()\r\n\r\nconst internalDisabled = computed(\r\n () => props.disabled || props.currentPage <= 1,\r\n)\r\n</script>\r\n\r\n<template>\r\n <button\r\n type=\"button\"\r\n class=\"btn-prev\"\r\n :disabled=\"internalDisabled\"\r\n :aria-label=\"prevText || t('el.pagination.prev')\"\r\n :aria-disabled=\"internalDisabled\"\r\n @click=\"$emit('click', $event)\"\r\n >\r\n <span v-if=\"prevText\">{{ prevText }}</span>\r\n <ElIcon v-else>\r\n <component :is=\"prevIcon\" />\r\n </ElIcon>\r\n </button>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport { isArr, isEqual } from '@formily/shared'\r\nimport { ElOption, ElSelect, useLocale, useNamespace } from 'element-plus'\r\nimport { usePagination } from 'element-plus/es/components/pagination/src/usePagination'\r\nimport { computed, ref, watch } from 'vue'\r\nimport { paginationSizesProps } from './sizes'\r\n\r\ndefineOptions({\r\n name: 'ElPaginationSizes',\r\n})\r\n\r\nconst props = defineProps(paginationSizesProps)\r\nconst emit = defineEmits(['page-size-change'])\r\nconst { t } = useLocale()\r\nconst ns = useNamespace('pagination')\r\nconst pagination = usePagination()\r\nconst innerPageSize = ref<number>(props.pageSize!)\r\n\r\nwatch(\r\n () => props.pageSizes,\r\n (newVal, oldVal) => {\r\n if (isEqual(newVal, oldVal))\r\n return\r\n if (isArr(newVal)) {\r\n const pageSize = newVal.includes(props.pageSize!)\r\n ? props.pageSize\r\n : props.pageSizes[0]\r\n // eslint-disable-next-line vue/custom-event-name-casing\r\n emit('page-size-change', pageSize)\r\n }\r\n },\r\n)\r\n\r\nwatch(\r\n () => props.pageSize,\r\n (newVal) => {\r\n innerPageSize.value = newVal!\r\n },\r\n)\r\n\r\nconst innerPageSizes = computed(() => props.pageSizes)\r\nfunction handleChange(val: number) {\r\n if (val !== innerPageSize.value) {\r\n innerPageSize.value = val\r\n pagination.handleSizeChange?.(Number(val))\r\n }\r\n}\r\n</script>\r\n\r\n<template>\r\n <span :class=\"ns.e('sizes')\">\r\n <ElSelect\r\n :model-value=\"innerPageSize\"\r\n :disabled=\"disabled\"\r\n :popper-class=\"popperClass\"\r\n :size=\"size\"\r\n :teleported=\"teleported\"\r\n :validate-event=\"false\"\r\n :append-to=\"appendSizeTo\"\r\n @change=\"handleChange\"\r\n >\r\n <ElOption\r\n v-for=\"item in innerPageSizes\"\r\n :key=\"item\"\r\n :value=\"item\"\r\n :label=\"item + t('el.pagination.pagesize')\"\r\n />\r\n </ElSelect>\r\n </span>\r\n</template>\r\n","<script lang=\"ts\" setup>\r\nimport { useLocale, useNamespace } from 'element-plus'\r\nimport { usePagination } from 'element-plus/es/components/pagination/src/usePagination'\r\nimport { paginationTotalProps } from './total'\r\n\r\ndefineOptions({\r\n name: 'ElPaginationTotal',\r\n})\r\ndefineProps(paginationTotalProps)\r\nconst { t } = useLocale()\r\nconst ns = useNamespace('pagination')\r\nconst { disabled } = usePagination()\r\n</script>\r\n\r\n<template>\r\n <span :class=\"ns.e('total')\" :disabled=\"disabled\">\r\n {{\r\n t('el.pagination.total', {\r\n total,\r\n })\r\n }}\r\n </span>\r\n</template>\r\n","import type { ExtractPropTypes, VNode } from 'vue'\r\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\r\nimport {\r\n CHANGE_EVENT,\r\n elPaginationKey,\r\n useDeprecated,\r\n useGlobalSize,\r\n useLocale,\r\n useNamespace,\r\n useSizeProp,\r\n} from 'element-plus'\r\nimport {\r\n buildProps,\r\n debugWarn,\r\n definePropType,\r\n iconPropType,\r\n isNumber,\r\n mutable,\r\n} from 'element-plus/es/utils/index'\r\nimport {\r\n computed,\r\n defineComponent,\r\n getCurrentInstance,\r\n h,\r\n provide,\r\n ref,\r\n watch,\r\n} from 'vue'\r\n\r\nimport Jumper from './components/jumper.vue'\r\nimport Next from './components/next.vue'\r\nimport Pager from './components/pager.vue'\r\nimport Prev from './components/prev.vue'\r\nimport Sizes from './components/sizes.vue'\r\nimport Total from './components/total.vue'\r\n\r\n/**\r\n * It it user's responsibility to guarantee that the value of props.total... is number\r\n * (same as pageSize, defaultPageSize, currentPage, defaultCurrentPage, pageCount)\r\n * Otherwise we can reasonable infer that the corresponding field is absent\r\n */\r\nconst isAbsent = (v: unknown): v is undefined => typeof v !== 'number'\r\n\r\ntype LayoutKey\r\n = | 'prev'\r\n | 'pager'\r\n | 'next'\r\n | 'jumper'\r\n | '->'\r\n | 'total'\r\n | 'sizes'\r\n | 'slot'\r\n\r\nexport const paginationProps = buildProps({\r\n /**\r\n * @description options of item count per page\r\n */\r\n pageSize: Number,\r\n /**\r\n * @description default initial value of page size, not setting is the same as setting 10\r\n */\r\n defaultPageSize: Number,\r\n /**\r\n * @description total item count\r\n */\r\n total: Number,\r\n /**\r\n * @description total page count. Set either `total` or `page-count` and pages will be displayed; if you need `page-sizes`, `total` is required\r\n */\r\n pageCount: Number,\r\n /**\r\n * @description number of pagers. Pagination collapses when the total page count exceeds this value\r\n */\r\n pagerCount: {\r\n type: Number,\r\n validator: (value: unknown) => {\r\n return (\r\n isNumber(value)\r\n && Math.trunc(value) === value\r\n && value > 4\r\n && value < 22\r\n && value % 2 === 1\r\n )\r\n },\r\n default: 7,\r\n },\r\n /**\r\n * @description current page number\r\n */\r\n currentPage: Number,\r\n /**\r\n * @description default initial value of current-page, not setting is the same as setting 1\r\n */\r\n defaultCurrentPage: Number,\r\n /**\r\n * @description layout of Pagination, elements separated with a comma\r\n */\r\n layout: {\r\n type: String,\r\n default: (\r\n ['prev', 'pager', 'next', 'jumper', '->', 'total'] as LayoutKey[]\r\n ).join(', '),\r\n },\r\n /**\r\n * @description item count of each page\r\n */\r\n pageSizes: {\r\n type: definePropType<number[]>(Array),\r\n default: () => mutable([10, 20, 30, 40, 50, 100] as const),\r\n },\r\n /**\r\n * @description custom class name for the page size Select's dropdown\r\n */\r\n popperClass: {\r\n type: String,\r\n default: '',\r\n },\r\n /**\r\n * @description text for the prev button\r\n */\r\n prevText: {\r\n type: String,\r\n default: '',\r\n },\r\n /**\r\n * @description icon for the prev button, higher priority of `prev-text`\r\n */\r\n prevIcon: {\r\n type: iconPropType,\r\n default: () => ArrowLeft,\r\n },\r\n /**\r\n * @description text for the next button\r\n */\r\n nextText: {\r\n type: String,\r\n default: '',\r\n },\r\n /**\r\n * @description icon for the next button, higher priority of `next-text`\r\n */\r\n nextIcon: {\r\n type: iconPropType,\r\n default: () => ArrowRight,\r\n },\r\n /**\r\n * @description whether Pagination size is teleported to body\r\n */\r\n teleported: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n /**\r\n * @description whether to use small pagination\r\n */\r\n small: Boolean,\r\n /**\r\n * @description set page size\r\n */\r\n size: useSizeProp,\r\n /**\r\n * @description whether the buttons have a background color\r\n */\r\n background: Boolean,\r\n /**\r\n * @description whether Pagination is disabled\r\n */\r\n disabled: Boolean,\r\n /**\r\n * @description whether to hide when there's only one page\r\n */\r\n hideOnSinglePage: Boolean,\r\n /**\r\n * @description which element the size dropdown appends to.\r\n */\r\n appendSizeTo: String,\r\n} as const)\r\nexport type PaginationProps = ExtractPropTypes<typeof paginationProps>\r\n\r\nexport const paginationEmits = {\r\n 'update:current-page': (val: number) => isNumber(val),\r\n 'update:page-size': (val: number) => isNumber(val),\r\n 'size-change': (val: number) => isNumber(val),\r\n 'change': (currentPage: number, pageSize: number) =>\r\n isNumber(currentPage) && isNumber(pageSize),\r\n 'current-change': (val: number) => isNumber(val),\r\n 'prev-click': (val: number) => isNumber(val),\r\n 'next-click': (val: number) => isNumber(val),\r\n}\r\nexport type PaginationEmits = typeof paginationEmits\r\n\r\nconst componentName = 'ElPagination'\r\nexport default defineComponent({\r\n name: componentName,\r\n\r\n props: paginationProps,\r\n emits: paginationEmits,\r\n\r\n setup(props, { emit, slots }) {\r\n const { t } = useLocale()\r\n const ns = useNamespace('pagination')\r\n const vnodeProps = getCurrentInstance()!.vnode.props || {}\r\n const _globalSize = useGlobalSize()\r\n const _size = computed(() =>\r\n props.small ? 'small' : props.size ?? _globalSize.value,\r\n )\r\n useDeprecated(\r\n {\r\n from: 'small',\r\n replacement: 'size',\r\n version: '3.0.0',\r\n scope: 'el-pagination',\r\n ref: 'https://element-plus.org/zh-CN/component/pagination.html',\r\n },\r\n computed(() => !!props.small),\r\n )\r\n // we can find @xxx=\"xxx\" props on `vnodeProps` to check if user bind corresponding events\r\n const hasCurrentPageListener\r\n = 'onUpdate:currentPage' in vnodeProps\r\n || 'onUpdate:current-page' in vnodeProps\r\n || 'onCurrentChange' in vnodeProps\r\n const hasPageSizeListener\r\n = 'onUpdate:pageSize' in vnodeProps\r\n || 'onUpdate:page-size' in vnodeProps\r\n || 'onSizeChange' in vnodeProps\r\n const assertValidUsage = computed(() => {\r\n // Users have to set either one, otherwise count of pages cannot be determined\r\n if (isAbsent(props.total) && isAbsent(props.pageCount))\r\n return false\r\n // <el-pagination ...otherProps :current-page=\"xxx\" /> without corresponding listener is forbidden now\r\n // Users have to use two way binding of `currentPage`\r\n // If users just want to provide a default value, `defaultCurrentPage` is here for you\r\n if (!isAbsent(props.currentPage) && !hasCurrentPageListener)\r\n return false\r\n // When you want to change sizes, things get more complex, detailed below\r\n // Basically the most important value we need is page count\r\n // either directly from props.pageCount\r\n // or calculated from props.total\r\n // we will take props.pageCount precedence over props.total\r\n if (props.layout.includes('sizes')) {\r\n if (!isAbsent(props.pageCount)) {\r\n // if props.pageCount is assign by user, then user have to watch pageSize change\r\n // and recalculate pageCount\r\n if (!hasPageSizeListener)\r\n return false\r\n }\r\n else if (!isAbsent(props.total)) {\r\n // Otherwise, we will see if user have props.pageSize defined\r\n // If so, meaning user want to have pageSize controlled himself/herself from component\r\n // Thus page size listener is required\r\n // users are account for page size change\r\n if (isAbsent(props.pageSize)) {\r\n // (else block just for explaination)\r\n // else page size is controlled by el-pagination internally\r\n }\r\n else {\r\n if (!hasPageSizeListener) {\r\n return false\r\n }\r\n }\r\n }\r\n }\r\n return true\r\n })\r\n\r\n const innerPageSize = ref(\r\n isAbsent(props.defaultPageSize) ? 10 : props.defaultPageSize,\r\n )\r\n const innerCurrentPage = ref(\r\n isAbsent(props.defaultCurrentPage) ? 1 : props.defaultCurrentPage,\r\n )\r\n\r\n const pageSizeBridge = computed({\r\n get() {\r\n return isAbsent(props.pageSize) ? innerPageSize.value : props.pageSize\r\n },\r\n set(v: number) {\r\n if (isAbsent(props.pageSize)) {\r\n innerPageSize.value = v\r\n }\r\n if (hasPageSizeListener) {\r\n emit('update:page-size', v)\r\n emit('size-change', v)\r\n }\r\n },\r\n })\r\n\r\n const pageCountBridge = computed<number>(() => {\r\n let pageCount = 0\r\n if (!isAbsent(props.pageCount)) {\r\n pageCount = props.pageCount\r\n }\r\n else if (!isAbsent(props.total)) {\r\n pageCount = Math.max(1, Math.ceil(props.total / pageSizeBridge.value))\r\n }\r\n return pageCount\r\n })\r\n\r\n const currentPageBridge = computed<number>({\r\n get() {\r\n return isAbsent(props.currentPage)\r\n ? innerCurrentPage.value\r\n : props.currentPage\r\n },\r\n set(v) {\r\n let newCurrentPage = v\r\n if (v < 1) {\r\n newCurrentPage = 1\r\n }\r\n else if (v > pageCountBridge.value) {\r\n newCurrentPage = pageCountBridge.value\r\n }\r\n if (isAbsent(props.currentPage)) {\r\n innerCurrentPage.value = newCurrentPage\r\n }\r\n if (hasCurrentPageListener) {\r\n emit('update:current-page', newCurrentPage)\r\n emit('current-change', newCurrentPage)\r\n }\r\n },\r\n })\r\n\r\n watch(pageCountBridge, (val) => {\r\n if (currentPageBridge.value > val)\r\n currentPageBridge.value = val\r\n })\r\n\r\n watch(\r\n [currentPageBridge, pageSizeBridge],\r\n (value) => {\r\n emit(CHANGE_EVENT, ...value)\r\n },\r\n { flush: 'post' },\r\n )\r\n\r\n function handleCurrentChange(val: number) {\r\n currentPageBridge.value = val\r\n }\r\n\r\n function handleSizeChange(val: number) {\r\n pageSizeBridge.value = val\r\n const newPageCount = pageCountBridge.value\r\n if (currentPageBridge.value > newPageCount) {\r\n currentPageBridge.value = newPageCount\r\n }\r\n }\r\n\r\n function prev() {\r\n if (props.disabled)\r\n return\r\n currentPageBridge.value -= 1\r\n emit('prev-click', currentPageBridge.value)\r\n }\r\n\r\n function next() {\r\n if (props.disabled)\r\n return\r\n currentPageBridge.value += 1\r\n emit('next-click', currentPageBridge.value)\r\n }\r\n\r\n // eslint-disable-next-line unicorn/consistent-function-scoping\r\n function addClass(element: any, cls: string) {\r\n if (element) {\r\n if (!element.props) {\r\n element.props = {}\r\n }\r\n element.props.class = [element.props.class, cls].join(' ')\r\n }\r\n }\r\n\r\n provide(elPaginationKey, {\r\n pageCount: pageCountBridge,\r\n disabled: computed(() => props.disabled),\r\n currentPage: currentPageBridge,\r\n changeEvent: handleCurrentChange,\r\n handleSizeChange,\r\n })\r\n\r\n return () => {\r\n if (!assertValidUsage.value) {\r\n debugWarn(componentName, t('el.pagination.deprecationWarning'))\r\n return null\r\n }\r\n if (!props.layout)\r\n return null\r\n if (props.hideOnSinglePage && pageCountBridge.value <= 1)\r\n return null\r\n const rootChildren: Array<VNode | VNode[] | null> = []\r\n const rightWrapperChildren: Array<VNode | VNode[] | null> = []\r\n const rightWrapperRoot = h(\r\n 'div',\r\n { class: ns.e('rightwrapper') },\r\n rightWrapperChildren,\r\n )\r\n const TEMPLATE_MAP: Record<\r\n Exclude<LayoutKey, '->'>,\r\n VNode | VNode[] | null\r\n > = {\r\n prev: h(Prev, {\r\n disabled: props.disabled,\r\n currentPage: currentPageBridge.value,\r\n prevText: props.prevText,\r\n prevIcon: props.prevIcon,\r\n onClick: prev,\r\n }),\r\n jumper: h(Jumper, {\r\n size: _size.value,\r\n }),\r\n pager: h(Pager, {\r\n currentPage: currentPageBridge.value,\r\n pageCount: pageCountBridge.value,\r\n pagerCount: props.pagerCount,\r\n onChange: handleCurrentChange,\r\n disabled: props.disabled,\r\n pageSize: props.pageSize,\r\n }),\r\n next: h(Next, {\r\n disabled: props.disabled,\r\n currentPage: currentPageBridge.value,\r\n pageCount: pageCountBridge.value,\r\n nextText: props.nextText,\r\n nextIcon: props.nextIcon,\r\n onClick: next,\r\n }),\r\n sizes: h(Sizes, {\r\n pageSize: pageSizeBridge.value,\r\n pageSizes: props.pageSizes,\r\n popperClass: props.popperClass,\r\n disabled: props.disabled,\r\n teleported: props.teleported,\r\n size: _size.value,\r\n appendSizeTo: props.appendSizeTo,\r\n }),\r\n slot: slots?.default?.() ?? null,\r\n total: h(Total, { total: isAbsent(props.total) ? 0 : props.total }),\r\n }\r\n\r\n const components = props.layout\r\n .split(',')\r\n .map((item: string) => item.trim()) as LayoutKey[]\r\n\r\n let haveRightWrapper = false\r\n\r\n for (const c of components) {\r\n if (c === '->') {\r\n haveRightWrapper = true\r\n continue\r\n }\r\n if (haveRightWrapper) {\r\n rightWrapperChildren.push(TEMPLATE_MAP[c])\r\n }\r\n else {\r\n rootChildren.push(TEMPLATE_MAP[c])\r\n }\r\n }\r\n\r\n addClass(rootChildren[0], ns.is('first'))\r\n addClass(rootChildren.at(-1), ns.is('last'))\r\n\r\n if (haveRightWrapper && rightWrapperChildren.length > 0) {\r\n addClass(rightWrapperChildren[0], ns.is('first'))\r\n addClass(\r\n rightWrapperChildren.at(-1),\r\n ns.is('last'),\r\n )\r\n rootChildren.push(rightWrapperRoot)\r\n }\r\n return h(\r\n 'div',\r\n {\r\n class: [\r\n ns.b(),\r\n ns.is('background', props.background),\r\n ns.m(_size.value),\r\n ],\r\n },\r\n rootChildren,\r\n )\r\n }\r\n },\r\n})\r\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]}
@@ -1 +1 @@
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
+ {"version":3,"file":"index.mjs","sources":["../../src/password/index.ts"],"sourcesContent":["import type { ElInput } from 'element-plus'\r\nimport { connect, mapProps } from '@silver-formily/vue'\r\nimport { Input } from '../input'\r\n\r\nexport type PasswordProps = typeof ElInput\r\n\r\nexport const Password = connect<typeof Input>(\r\n Input,\r\n mapProps(props => ({\r\n ...props,\r\n showPassword: true,\r\n })),\r\n)\r\n\r\nexport default Password\r\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;"}
@@ -0,0 +1,5 @@
1
+ type __VLS_Props = {
2
+ modelValue?: any;
3
+ };
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
+ export default _default;
@@ -56,11 +56,21 @@ export declare const PreviewText: {
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
+ ColorPicker: import('vue').DefineComponent<{
60
+ modelValue?: any;
61
+ }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
62
+ modelValue?: any;
63
+ }> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
59
64
  DatePicker: import('vue').DefineComponent<{
60
65
  modelValue?: any;
61
66
  }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
62
67
  modelValue?: any;
63
68
  }> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
69
+ Rate: import('vue').DefineComponent<{
70
+ modelValue?: any;
71
+ }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
72
+ modelValue?: any;
73
+ }> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
64
74
  TimePicker: import('vue').DefineComponent<{
65
75
  modelValue?: any;
66
76
  }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{