vue-devui 1.0.0-alpha.6 → 1.0.0-beta.12

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 (344) hide show
  1. package/README.md +32 -35
  2. package/accordion/index.d.ts +7 -0
  3. package/accordion/index.es.js +508 -1
  4. package/accordion/index.umd.js +1 -1
  5. package/accordion/style.css +1 -1
  6. package/alert/index.d.ts +7 -0
  7. package/alert/index.es.js +178 -1
  8. package/alert/index.umd.js +1 -1
  9. package/alert/style.css +1 -1
  10. package/anchor/index.d.ts +7 -0
  11. package/anchor/index.es.js +263 -1
  12. package/anchor/index.umd.js +1 -1
  13. package/avatar/index.d.ts +7 -0
  14. package/avatar/index.es.js +301 -1
  15. package/avatar/index.umd.js +1 -1
  16. package/back-top/index.d.ts +7 -0
  17. package/back-top/index.es.js +128 -0
  18. package/back-top/index.umd.js +1 -0
  19. package/back-top/package.json +7 -0
  20. package/back-top/style.css +1 -0
  21. package/badge/index.d.ts +7 -0
  22. package/badge/index.es.js +95 -1
  23. package/badge/index.umd.js +1 -1
  24. package/breadcrumb/index.d.ts +7 -0
  25. package/breadcrumb/index.es.js +127 -1
  26. package/breadcrumb/index.umd.js +1 -1
  27. package/button/index.d.ts +7 -0
  28. package/button/index.es.js +392 -1
  29. package/button/index.umd.js +1 -1
  30. package/button/style.css +1 -1
  31. package/card/index.d.ts +7 -0
  32. package/card/index.es.js +61 -1
  33. package/card/index.umd.js +1 -1
  34. package/carousel/index.d.ts +7 -0
  35. package/carousel/index.es.js +329 -1
  36. package/carousel/index.umd.js +1 -1
  37. package/cascader/index.d.ts +7 -0
  38. package/cascader/index.es.js +1343 -1
  39. package/cascader/index.umd.js +1 -1
  40. package/cascader/style.css +1 -1
  41. package/checkbox/index.d.ts +7 -0
  42. package/checkbox/index.es.js +377 -1
  43. package/checkbox/index.umd.js +1 -1
  44. package/comment/index.d.ts +7 -0
  45. package/comment/index.es.js +85 -0
  46. package/comment/index.umd.js +1 -0
  47. package/comment/package.json +7 -0
  48. package/comment/style.css +1 -0
  49. package/countdown/index.d.ts +7 -0
  50. package/countdown/index.es.js +176 -0
  51. package/countdown/index.umd.js +1 -0
  52. package/countdown/package.json +7 -0
  53. package/countdown/style.css +1 -0
  54. package/date-picker/index.d.ts +7 -0
  55. package/date-picker/index.es.js +1172 -1
  56. package/date-picker/index.umd.js +1 -1
  57. package/date-picker/style.css +1 -1
  58. package/dragdrop/index.d.ts +7 -0
  59. package/dragdrop/index.es.js +32 -0
  60. package/dragdrop/index.umd.js +1 -0
  61. package/dragdrop/package.json +7 -0
  62. package/drawer/index.d.ts +7 -0
  63. package/drawer/index.es.js +287 -0
  64. package/drawer/index.umd.js +1 -0
  65. package/drawer/package.json +7 -0
  66. package/drawer/style.css +1 -0
  67. package/dropdown/index.d.ts +7 -0
  68. package/dropdown/index.es.js +535 -0
  69. package/dropdown/index.umd.js +1 -0
  70. package/dropdown/package.json +7 -0
  71. package/dropdown/style.css +1 -0
  72. package/editable-select/index.d.ts +7 -0
  73. package/editable-select/index.es.js +5857 -1
  74. package/editable-select/index.umd.js +27 -1
  75. package/editable-select/style.css +1 -1
  76. package/form/index.d.ts +7 -0
  77. package/form/index.es.js +2244 -0
  78. package/form/index.umd.js +1 -0
  79. package/form/package.json +7 -0
  80. package/form/style.css +1 -0
  81. package/fullscreen/index.d.ts +7 -0
  82. package/fullscreen/index.es.js +163 -1
  83. package/fullscreen/index.umd.js +1 -1
  84. package/gantt/index.d.ts +7 -0
  85. package/gantt/index.es.js +535 -0
  86. package/gantt/index.umd.js +1 -0
  87. package/gantt/package.json +7 -0
  88. package/gantt/style.css +1 -0
  89. package/grid/index.d.ts +7 -0
  90. package/grid/index.es.js +269 -0
  91. package/grid/index.umd.js +1 -0
  92. package/grid/package.json +7 -0
  93. package/grid/style.css +1 -0
  94. package/icon/index.d.ts +7 -0
  95. package/icon/index.es.js +75 -1
  96. package/icon/index.umd.js +1 -1
  97. package/image-preview/index.d.ts +7 -0
  98. package/image-preview/index.es.js +498 -1
  99. package/image-preview/index.umd.js +1 -1
  100. package/image-preview/style.css +1 -1
  101. package/index.d.ts +7 -0
  102. package/input/index.d.ts +7 -0
  103. package/input/index.es.js +190 -1
  104. package/input/index.umd.js +1 -1
  105. package/input-icon/index.d.ts +7 -0
  106. package/input-icon/index.es.js +332 -0
  107. package/input-icon/index.umd.js +1 -0
  108. package/input-icon/package.json +7 -0
  109. package/input-icon/style.css +1 -0
  110. package/input-number/index.d.ts +7 -0
  111. package/input-number/index.es.js +240 -1
  112. package/input-number/index.umd.js +1 -1
  113. package/layout/index.d.ts +7 -0
  114. package/layout/index.es.js +100 -0
  115. package/layout/index.umd.js +1 -0
  116. package/layout/package.json +7 -0
  117. package/layout/style.css +1 -0
  118. package/loading/index.d.ts +7 -0
  119. package/loading/index.es.js +256 -1
  120. package/loading/index.umd.js +1 -1
  121. package/modal/index.d.ts +7 -0
  122. package/modal/index.es.js +1225 -1
  123. package/modal/index.umd.js +1 -1
  124. package/modal/style.css +1 -1
  125. package/nav-sprite/index.d.ts +7 -0
  126. package/nav-sprite/index.es.js +742 -0
  127. package/nav-sprite/index.umd.js +1 -0
  128. package/nav-sprite/package.json +7 -0
  129. package/nuxt/components/Accordion.js +3 -0
  130. package/nuxt/components/Alert.js +3 -0
  131. package/nuxt/components/Anchor.js +3 -0
  132. package/nuxt/components/Aside.js +3 -0
  133. package/nuxt/components/Avatar.js +3 -0
  134. package/nuxt/components/BackTop.js +3 -0
  135. package/nuxt/components/Badge.js +3 -0
  136. package/nuxt/components/Breadcrumb.js +3 -0
  137. package/nuxt/components/Button.js +3 -0
  138. package/nuxt/components/Card.js +3 -0
  139. package/nuxt/components/Carousel.js +3 -0
  140. package/nuxt/components/Cascader.js +3 -0
  141. package/nuxt/components/Checkbox.js +3 -0
  142. package/nuxt/components/Col.js +3 -0
  143. package/nuxt/components/Column.js +3 -0
  144. package/nuxt/components/Comment.js +3 -0
  145. package/nuxt/components/Content.js +3 -0
  146. package/nuxt/components/Countdown.js +3 -0
  147. package/nuxt/components/DatePicker.js +3 -0
  148. package/nuxt/components/Drawer.js +3 -0
  149. package/nuxt/components/Dropdown.js +3 -0
  150. package/nuxt/components/EditableSelect.js +3 -0
  151. package/nuxt/components/FixedOverlay.js +3 -0
  152. package/nuxt/components/FlexibleOverlay.js +3 -0
  153. package/nuxt/components/Footer.js +3 -0
  154. package/nuxt/components/Form.js +3 -0
  155. package/nuxt/components/FormControl.js +3 -0
  156. package/nuxt/components/FormItem.js +3 -0
  157. package/nuxt/components/FormLabel.js +3 -0
  158. package/nuxt/components/FormOperation.js +3 -0
  159. package/nuxt/components/Fullscreen.js +3 -0
  160. package/nuxt/components/Gantt.js +3 -0
  161. package/nuxt/components/Header.js +3 -0
  162. package/nuxt/components/Icon.js +2 -0
  163. package/nuxt/components/ImagePreviewService.js +3 -0
  164. package/nuxt/components/Input.js +3 -0
  165. package/nuxt/components/InputIcon.js +3 -0
  166. package/nuxt/components/InputNumber.js +3 -0
  167. package/nuxt/components/Layout.js +3 -0
  168. package/nuxt/components/Loading.js +3 -0
  169. package/nuxt/components/LoadingService.js +3 -0
  170. package/nuxt/components/Modal.js +3 -0
  171. package/nuxt/components/NavSprite.js +2 -0
  172. package/nuxt/components/Pagination.js +3 -0
  173. package/nuxt/components/Panel.js +3 -0
  174. package/nuxt/components/Popover.js +3 -0
  175. package/nuxt/components/Progress.js +3 -0
  176. package/nuxt/components/QuadrantDiagram.js +3 -0
  177. package/nuxt/components/Radio.js +3 -0
  178. package/nuxt/components/RadioGroup.js +3 -0
  179. package/nuxt/components/Rate.js +3 -0
  180. package/nuxt/components/ReadTip.js +3 -0
  181. package/nuxt/components/Result.js +3 -0
  182. package/nuxt/components/Row.js +3 -0
  183. package/nuxt/components/Search.js +3 -0
  184. package/nuxt/components/Select.js +3 -0
  185. package/nuxt/components/Skeleton.js +3 -0
  186. package/nuxt/components/SkeletonItem.js +3 -0
  187. package/nuxt/components/Slider.js +3 -0
  188. package/nuxt/components/Splitter.js +3 -0
  189. package/nuxt/components/Statistic.js +3 -0
  190. package/nuxt/components/Status.js +3 -0
  191. package/nuxt/components/StepsGuide.js +3 -0
  192. package/nuxt/components/StickSlider.js +3 -0
  193. package/nuxt/components/Sticky.js +2 -0
  194. package/nuxt/components/Switch.js +3 -0
  195. package/nuxt/components/Table.js +3 -0
  196. package/nuxt/components/Tabs.js +3 -0
  197. package/nuxt/components/Tag.js +3 -0
  198. package/nuxt/components/TagInput.js +3 -0
  199. package/nuxt/components/Textarea.js +3 -0
  200. package/nuxt/components/TimeAxis.js +3 -0
  201. package/nuxt/components/TimeAxisItem.js +3 -0
  202. package/nuxt/components/TimePicker.js +3 -0
  203. package/nuxt/components/Toast.js +3 -0
  204. package/nuxt/components/ToastService.js +3 -0
  205. package/nuxt/components/Tooltip.js +3 -0
  206. package/nuxt/components/Transfer.js +3 -0
  207. package/nuxt/components/Tree.js +3 -0
  208. package/nuxt/components/TreeSelect.js +3 -0
  209. package/nuxt/components/Upload.js +3 -0
  210. package/nuxt/components/buttonProps.js +3 -0
  211. package/nuxt/index.js +13 -0
  212. package/overlay/index.d.ts +7 -0
  213. package/overlay/index.es.js +368 -1
  214. package/overlay/index.umd.js +1 -1
  215. package/overlay/style.css +1 -1
  216. package/package.json +6 -47
  217. package/pagination/index.d.ts +7 -0
  218. package/pagination/index.es.js +642 -1
  219. package/pagination/index.umd.js +1 -1
  220. package/panel/index.d.ts +7 -0
  221. package/panel/index.es.js +205 -1
  222. package/panel/index.umd.js +1 -1
  223. package/panel/style.css +1 -1
  224. package/popover/index.d.ts +7 -0
  225. package/popover/index.es.js +236 -1
  226. package/popover/index.umd.js +1 -1
  227. package/progress/index.d.ts +7 -0
  228. package/progress/index.es.js +153 -1
  229. package/progress/index.umd.js +3 -1
  230. package/quadrant-diagram/index.d.ts +7 -0
  231. package/quadrant-diagram/index.es.js +489 -1
  232. package/quadrant-diagram/index.umd.js +1 -1
  233. package/radio/index.d.ts +7 -0
  234. package/radio/index.es.js +225 -1
  235. package/radio/index.umd.js +1 -1
  236. package/rate/index.d.ts +7 -0
  237. package/rate/index.es.js +220 -1
  238. package/rate/index.umd.js +1 -1
  239. package/read-tip/index.d.ts +7 -0
  240. package/read-tip/index.es.js +258 -0
  241. package/read-tip/index.umd.js +1 -0
  242. package/read-tip/package.json +7 -0
  243. package/read-tip/style.css +1 -0
  244. package/result/index.d.ts +7 -0
  245. package/result/index.es.js +119 -0
  246. package/result/index.umd.js +1 -0
  247. package/result/package.json +7 -0
  248. package/result/style.css +1 -0
  249. package/ripple/index.d.ts +7 -0
  250. package/ripple/index.es.js +181 -1
  251. package/ripple/index.umd.js +1 -1
  252. package/search/index.d.ts +7 -0
  253. package/search/index.es.js +543 -1
  254. package/search/index.umd.js +1 -1
  255. package/select/index.d.ts +7 -0
  256. package/select/index.es.js +706 -1
  257. package/select/index.umd.js +1 -1
  258. package/skeleton/index.d.ts +7 -0
  259. package/skeleton/index.es.js +297 -1
  260. package/skeleton/index.umd.js +1 -1
  261. package/skeleton/style.css +1 -1
  262. package/slider/index.d.ts +7 -0
  263. package/slider/index.es.js +199 -1
  264. package/slider/index.umd.js +1 -1
  265. package/slider/style.css +1 -1
  266. package/splitter/index.d.ts +7 -0
  267. package/splitter/index.es.js +636 -1
  268. package/splitter/index.umd.js +1 -1
  269. package/statistic/index.d.ts +7 -0
  270. package/statistic/index.es.js +280 -0
  271. package/statistic/index.umd.js +1 -0
  272. package/statistic/package.json +7 -0
  273. package/statistic/style.css +1 -0
  274. package/status/index.d.ts +7 -0
  275. package/status/index.es.js +42 -1
  276. package/status/index.umd.js +1 -1
  277. package/steps-guide/index.d.ts +7 -0
  278. package/steps-guide/index.es.js +239 -1
  279. package/steps-guide/index.umd.js +1 -1
  280. package/steps-guide/style.css +1 -1
  281. package/sticky/index.d.ts +7 -0
  282. package/sticky/index.es.js +197 -1
  283. package/sticky/index.umd.js +1 -1
  284. package/style.css +1 -1
  285. package/switch/index.d.ts +7 -0
  286. package/switch/index.es.js +100 -1
  287. package/switch/index.umd.js +1 -1
  288. package/switch/style.css +1 -1
  289. package/table/index.d.ts +7 -0
  290. package/table/index.es.js +1836 -1
  291. package/table/index.umd.js +1 -1
  292. package/table/style.css +1 -1
  293. package/tabs/index.d.ts +7 -0
  294. package/tabs/index.es.js +195 -1
  295. package/tabs/index.umd.js +1 -1
  296. package/tabs/style.css +1 -1
  297. package/tag/index.d.ts +7 -0
  298. package/tag/index.es.js +131 -0
  299. package/tag/index.umd.js +1 -0
  300. package/tag/package.json +7 -0
  301. package/tag/style.css +1 -0
  302. package/tag-input/index.d.ts +7 -0
  303. package/tag-input/index.es.js +329 -1
  304. package/tag-input/index.umd.js +1 -1
  305. package/textarea/index.d.ts +7 -0
  306. package/textarea/index.es.js +132 -0
  307. package/textarea/index.umd.js +1 -0
  308. package/textarea/package.json +7 -0
  309. package/textarea/style.css +1 -0
  310. package/time-axis/index.d.ts +7 -0
  311. package/time-axis/index.es.js +299 -0
  312. package/time-axis/index.umd.js +1 -0
  313. package/time-axis/package.json +7 -0
  314. package/time-axis/style.css +1 -0
  315. package/time-picker/index.d.ts +7 -0
  316. package/time-picker/index.es.js +1260 -1
  317. package/time-picker/index.umd.js +1 -1
  318. package/time-picker/style.css +1 -1
  319. package/toast/index.d.ts +7 -0
  320. package/toast/index.es.js +2060 -1
  321. package/toast/index.umd.js +1 -1
  322. package/toast/style.css +1 -1
  323. package/tooltip/index.d.ts +7 -0
  324. package/tooltip/index.es.js +171 -1
  325. package/tooltip/index.umd.js +1 -1
  326. package/transfer/index.d.ts +7 -0
  327. package/transfer/index.es.js +1725 -1
  328. package/transfer/index.umd.js +1 -1
  329. package/transfer/style.css +1 -1
  330. package/tree/index.d.ts +7 -0
  331. package/tree/index.es.js +907 -1
  332. package/tree/index.umd.js +1 -1
  333. package/tree/style.css +1 -1
  334. package/tree-select/index.d.ts +7 -0
  335. package/tree-select/index.es.js +528 -0
  336. package/tree-select/index.umd.js +1 -0
  337. package/tree-select/package.json +7 -0
  338. package/tree-select/style.css +1 -0
  339. package/upload/index.d.ts +7 -0
  340. package/upload/index.es.js +2834 -1
  341. package/upload/index.umd.js +1 -1
  342. package/upload/style.css +1 -1
  343. package/vue-devui.es.js +27777 -1
  344. package/vue-devui.umd.js +29 -1
@@ -1 +1,642 @@
1
- import{defineComponent as e,ref as n,onMounted as a,onUnmounted as t,withDirectives as i,createVNode as o,createTextVNode as u,resolveDirective as l,toRefs as s,watch as g,resolveComponent as r,computed as d,Fragment as p,mergeProps as c,nextTick as v}from"vue";const m={pageSize:{type:Number,default:10},total:{type:Number,default:0},pageSizeOptions:{type:Array,default:()=>[5,10,20,50]},pageSizeDirection:{type:Array,default:()=>["centerDown","centerUp"]},pageIndex:{type:Number,default:1},maxItems:{type:Number,default:10},preLink:{type:String,default:"&lt;"},nextLink:{type:String,default:"&gt;"},size:{type:String,default:""},canJumpPage:{type:Boolean,default:!1},canChangePageSize:{type:Boolean,default:!1},canViewTotal:{type:Boolean,default:!1},totalItemText:{type:String,default:"所有条目"},goToText:{type:String,default:"跳至"},showJumpButton:{type:Boolean,default:!1},showTruePageIndex:{type:Boolean,default:!1},lite:{type:Boolean,default:!1},showPageSelector:{type:Boolean,default:!0},haveConfigMenu:{type:Boolean,default:!1},autoFixPageIndex:{type:Boolean,default:!0},autoHide:{type:Boolean,default:!1},"onUpdate:pageIndex":{type:Function},"onUpdate:pageSize":{type:Function},onPageIndexChange:{type:Function},onPageSizeChange:{type:Function}};function h(e,n,a){document.addEventListener?e&&n&&a&&e.addEventListener(n,a,!1):e&&n&&a&&e.attachEvent("on"+n,a)}const f="undefined"!=typeof window,C=Symbol("@@clickoutside"),x=new Map;let S,z=0,P=!0;function y(e,n,a){return f&&P&&(P=!1,h(document,"mousedown",(e=>{S=e})),h(document,"mouseup",(e=>{for(const[n,a]of x)a[C].documentHandler(e,S)}))),function(t,i){a&&n.instance&&t.target&&i.target&&!e.contains(t.target)&&!e.contains(i.target)&&e!==t.target&&e[C].bindingFn&&e[C].bindingFn()}}var b=e({directives:{clickoutside:{beforeMount:function(e,n,a){z++,x.set(z,e),e[C]={nid:z,documentHandler:y(e,n,a),bindingFn:n.value}},updated:function(e,n,a){e[C].documentHandler=y(e,n,a),e[C].bindingFn=n.value},unmounted:function(e){x.delete(e[C].nid),delete e[C]}}},props:{currentPageSize:Number,pageSizeChange:Function,pageSizeOptions:Array},setup(){const e=n(null),i=n(!1);a((()=>{h(e.value,"click",o)})),t((()=>{var n,a,t;n=e.value,a="click",t=o,document.removeEventListener?n&&a&&t&&n.removeEventListener(a,t,!1):n&&a&&t&&n.detachEvent("on"+a,t)}));const o=e=>{i.value=!i.value&&!!e};return{paginationConfig:e,isShowConfig:i,closeConfigMenu:o}},render(){var e;const{closeConfigMenu:n,currentPageSize:a,pageSizeChange:t,pageSizeOptions:s,isShowConfig:g,$slots:r}=this;return i(o("div",{class:"devui-pagination-config",ref:"paginationConfig"},[o("div",{class:"devui-setup-icon"},[o("i",{class:"icon-setting",style:"font-weight: bold;"},null)]),g&&o("div",{class:"devui-config-container"},[null==(e=r.default)?void 0:e.call(r),o("div",{class:"pagination-config-item"},[o("div",{class:"config-item-title"},[u("每页条数")]),o("div",{class:"devui-page-number"},[s.map((e=>o("div",{class:{choosed:e===a},key:e,onClick:t.bind(null,{value:e})},[e])))])])])]),[[l("clickoutside"),n]])}});var k=e({props:{goToText:String,size:{type:String,default:""},pageIndex:Number,showJumpButton:Boolean,totalPages:Number,cursor:Number,onChangeCursorEmit:Function},emits:["changeCursorEmit"],setup(e,{emit:a}){const{pageIndex:t,totalPages:i,cursor:o}=s(e),u=n(t.value);g((()=>t.value),(e=>{u.value=e}));let l=t.value;return{inputNum:u,jumpPageChange:e=>{l=+e,u.value=e,isNaN(e)&&setTimeout((()=>{u.value=t.value}),300)},jump:e=>{l>i.value||"btn"!==e&&"Enter"!==e.key||o.value===l||a("changeCursorEmit",l)}}},render(){const{goToText:e,size:n,inputNum:a,jumpPageChange:t,jump:i,showJumpButton:u}=this;return o("div",{class:"devui-jump-container"},[e,o(r("d-input"),{class:["devui-pagination-input",n?"devui-pagination-input-"+n:""],size:n,value:String(a),"onUpdate:value":t,onKeydown:i},null),"跳至"===e&&"页",u&&o("div",{class:["devui-jump-button",n?"devui-jump-size-"+n:"devui-jump-size-default"],onClick:i.bind(null,"btn"),title:e},[o("div",{class:"devui-pagination-go"},null)])])}});var I=e({props:{size:{type:String,default:""},preLink:String,nextLink:String,lite:Boolean,cursor:Number,maxItems:Number,totalPages:Number,onChangeCursorEmit:Function,showTruePageIndex:Boolean},emits:["changeCursorEmit"],setup:(e,{emit:n})=>({showPageNum:d((()=>((e,n,a)=>{if(n>=a)return[2,a];const t=n-2;let i=e-(t>>1),o=e+(t-1>>1);return i<2&&(i=2,o=n-2),o>a&&(i=a-n+3,o=a),[i,o]})(e.cursor,e.maxItems,e.totalPages))),changeCursor:a=>{if(isNaN(a))return;const t=a<1?1:a>e.totalPages?e.totalPages:0|a;n("changeCursorEmit",t)},prevChange:a=>{if(e.cursor>1){const t=-1===a?e.cursor-1:a;n("changeCursorEmit",t)}},nextChange:a=>{if(e.cursor<e.totalPages){const t=-1===a?e.cursor+1:a;n("changeCursorEmit",t)}}}),render(){const{size:e,preLink:n,nextLink:a,lite:t,changeCursor:i,cursor:l,showPageNum:s,prevChange:g,totalPages:r,nextChange:d,showTruePageIndex:c}=this;return o("ul",{class:["devui-pagination-list",e?"devui-pagination-"+e:""]},[o("li",{onClick:g.bind(null,-1),class:{"devui-pagination-item":!0,disabled:l<=1}},[o("a",{innerHTML:n,class:"devui-pagination-link"},null)]),!t&&o(p,null,[o("li",{onClick:i.bind(null,1),class:{"devui-pagination-item":!0,active:1===l}},[o("a",{class:"devui-pagination-link"},[u("1")])]),s[0]>2&&o("li",{onClick:g.bind(null,s[0]-1),class:"devui-pagination-item"},[o("a",{class:"devui-pagination-link"},[u("...")])]),(()=>{const e=[];for(let n=s[0];n<=s[1];n++)e.push(o("li",{onClick:i.bind(null,n),key:n,class:{"devui-pagination-item":!0,active:l===n}},[o("a",{class:"devui-pagination-link"},[n])]));return e})(),s[1]<r-1&&o("li",{onClick:d.bind(null,s[1]+1),class:"devui-pagination-item"},[o("a",{class:"devui-pagination-link"},[u("...")])]),s[1]<r&&o("li",{onClick:i.bind(null,r),class:{"devui-pagination-item":!0,active:l===r}},[o("a",{class:"devui-pagination-link"},[r])]),c&&l>r&&r>0&&o(p,null,[l>r+1&&o("li",{class:"devui-pagination-item disabled"},[o("a",{class:"devui-pagination-link"},[u("...")])]),o("li",{class:"devui-pagination-item disabled active"},[o("a",{class:"devui-pagination-link"},[l])])])]),o("li",{onClick:d.bind(null,-1),class:{"devui-pagination-item":!0,disabled:l>=r}},[o("a",{innerHTML:a,class:"devui-pagination-link"},null)])])}}),w=e({name:"DPagination",components:{ConfigMenu:b,JumpPage:k,PageNumBtn:I},props:m,emits:["pageIndexChange","pageSizeChange","update:pageSize","update:pageIndex"],setup(e,{emit:n}){const a=d((()=>{return e=o.value,new Array(e||1).fill(0).map(((n,a)=>({name:`${a+1}/${e}`,value:a+1})));var e})),t=d({get:()=>!e.showTruePageIndex&&e.pageIndex>o.value?(n("update:pageIndex",o.value||1),o.value||1):e.pageIndex||1,set(e){n("update:pageIndex",e)}}),i=d({get:()=>e.pageSize,set(e){n("update:pageSize",e)}}),o=d((()=>Math.ceil(e.total/e.pageSize))),u=e=>{t.value=e,n("pageIndexChange",e)};return{cursor:t,totalPages:o,changeCursorEmit:u,currentPageSize:i,pageSizeChange:a=>{i.value=a.value,e.autoFixPageIndex&&v((()=>{t.value>o.value&&u(o.value)})),n("pageSizeChange",a.value)},litePageOptions:a,litePageIndexChange:e=>{u(e.value)}}},render(){const{total:e,pageIndex:n,pageSizeOptions:a,pageSizeDirection:t,preLink:i,nextLink:l,size:s,canJumpPage:g,canChangePageSize:d,canViewTotal:p,totalItemText:v,goToText:m,maxItems:h,showJumpButton:f,showTruePageIndex:C,lite:x,showPageSelector:S,haveConfigMenu:z,autoHide:P,$slots:y,cursor:b,totalPages:k,currentPageSize:I,pageSizeChange:w,changeCursorEmit:T,litePageOptions:N,litePageIndexChange:B}=this;return P&&Math.min(...a)>e?null:o("div",{class:"devui-pagination"},[d&&!x&&o("div",{class:["devui-page-size",s?"devui-page-size-"+s:""]},[o(r("d-select"),{options:a,modelValue:I,onValueChange:w,pageSizeDirection:t},null)]),(!x||x&&S)&&p&&o("div",{class:"devui-total-size"},[v,u(": "),e]),x&&S&&o("div",{class:"devui-page-size"},[o(r("d-select"),{options:N,disabled:0===e,modelValue:b,onValueChange:B,pageSizeDirection:t},null)]),o(r("page-num-btn"),c({cursor:b,totalPages:k,size:s,lite:x,maxItems:h,preLink:i,nextLink:l,showTruePageIndex:C},{onChangeCursorEmit:T}),null),g&&!x&&o(r("jump-page"),c({goToText:m,size:s,pageIndex:n,totalPages:k,cursor:b,showJumpButton:f},{onChangeCursorEmit:T}),null),x&&z&&o(r("config-menu"),{currentPageSize:I,pageSizeChange:w,pageSizeOptions:a},{default:()=>{var e;return[null==(e=y.default)?void 0:e.call(y)]}})])}});w.install=e=>{e.component(w.name,w)};var T={title:"Pagination 分页",category:"导航",status:"已完成",install(e){e.use(w)}};export{w as Pagination,T as default};
1
+ import { defineComponent, ref, onMounted, onUnmounted, withDirectives, createVNode, createTextVNode, resolveDirective, toRefs, watch, resolveComponent, computed, Fragment, mergeProps, nextTick } from "vue";
2
+ const componentProps = {
3
+ pageSize: {
4
+ type: Number,
5
+ default: 10
6
+ },
7
+ total: {
8
+ type: Number,
9
+ default: 0
10
+ },
11
+ pageSizeOptions: {
12
+ type: Array,
13
+ default: () => [5, 10, 20, 50]
14
+ },
15
+ pageSizeDirection: {
16
+ type: Array,
17
+ default: () => ["centerDown", "centerUp"]
18
+ },
19
+ pageIndex: {
20
+ type: Number,
21
+ default: 1
22
+ },
23
+ maxItems: {
24
+ type: Number,
25
+ default: 10
26
+ },
27
+ preLink: {
28
+ type: String,
29
+ default: "&lt;"
30
+ },
31
+ nextLink: {
32
+ type: String,
33
+ default: "&gt;"
34
+ },
35
+ size: {
36
+ type: String,
37
+ default: ""
38
+ },
39
+ canJumpPage: {
40
+ type: Boolean,
41
+ default: false
42
+ },
43
+ canChangePageSize: {
44
+ type: Boolean,
45
+ default: false
46
+ },
47
+ canViewTotal: {
48
+ type: Boolean,
49
+ default: false
50
+ },
51
+ totalItemText: {
52
+ type: String,
53
+ default: "\u6240\u6709\u6761\u76EE"
54
+ },
55
+ goToText: {
56
+ type: String,
57
+ default: "\u8DF3\u81F3"
58
+ },
59
+ showJumpButton: {
60
+ type: Boolean,
61
+ default: false
62
+ },
63
+ showTruePageIndex: {
64
+ type: Boolean,
65
+ default: false
66
+ },
67
+ lite: {
68
+ type: Boolean,
69
+ default: false
70
+ },
71
+ showPageSelector: {
72
+ type: Boolean,
73
+ default: true
74
+ },
75
+ haveConfigMenu: {
76
+ type: Boolean,
77
+ default: false
78
+ },
79
+ autoFixPageIndex: {
80
+ type: Boolean,
81
+ default: true
82
+ },
83
+ autoHide: {
84
+ type: Boolean,
85
+ default: false
86
+ },
87
+ "onUpdate:pageIndex": {
88
+ type: Function
89
+ },
90
+ "onUpdate:pageSize": {
91
+ type: Function
92
+ },
93
+ "onPageIndexChange": {
94
+ type: Function
95
+ },
96
+ "onPageSizeChange": {
97
+ type: Function
98
+ }
99
+ };
100
+ const handlePages = (cursor, maxItems, totalPages) => {
101
+ const currentPage = cursor;
102
+ const maxPages = maxItems;
103
+ if (maxPages >= totalPages) {
104
+ return [2, totalPages];
105
+ }
106
+ const midPages = maxPages - 2;
107
+ let midStart = currentPage - (midPages >> 1);
108
+ let midEnd = currentPage + (midPages - 1 >> 1);
109
+ if (midStart < 2) {
110
+ midStart = 2;
111
+ midEnd = maxPages - 2;
112
+ }
113
+ if (midEnd > totalPages) {
114
+ midStart = totalPages - maxPages + 3;
115
+ midEnd = totalPages;
116
+ }
117
+ return [midStart, midEnd];
118
+ };
119
+ function liteSelectOptions(total) {
120
+ return new Array(total || 1).fill(0).map((v, index2) => {
121
+ return {
122
+ name: `${index2 + 1}/${total}`,
123
+ value: index2 + 1
124
+ };
125
+ });
126
+ }
127
+ function on(element, eventName, handler) {
128
+ if (document.addEventListener) {
129
+ if (element && eventName && handler) {
130
+ element.addEventListener(eventName, handler, false);
131
+ }
132
+ } else {
133
+ if (element && eventName && handler) {
134
+ element.attachEvent("on" + eventName, handler);
135
+ }
136
+ }
137
+ }
138
+ function off(element, eventName, handler) {
139
+ if (document.removeEventListener) {
140
+ if (element && eventName && handler) {
141
+ element.removeEventListener(eventName, handler, false);
142
+ }
143
+ } else {
144
+ if (element && eventName && handler) {
145
+ element.detachEvent("on" + eventName, handler);
146
+ }
147
+ }
148
+ }
149
+ const inBrowser = typeof window !== "undefined";
150
+ const ctx = Symbol("@@clickoutside");
151
+ const nodeList = new Map();
152
+ let startClick;
153
+ let nid = 0;
154
+ let isFirst = true;
155
+ function createDocumentHandler(el, binding, vnode) {
156
+ if (inBrowser && isFirst) {
157
+ isFirst = false;
158
+ on(document, "mousedown", (e) => {
159
+ startClick = e;
160
+ });
161
+ on(document, "mouseup", (e) => {
162
+ for (const [id, node] of nodeList) {
163
+ node[ctx].documentHandler(e, startClick);
164
+ }
165
+ });
166
+ }
167
+ return function(mouseup, mousedown) {
168
+ if (!vnode || !binding.instance || !mouseup.target || !mousedown.target || el.contains(mouseup.target) || el.contains(mousedown.target) || el === mouseup.target) {
169
+ return;
170
+ }
171
+ el[ctx].bindingFn && el[ctx].bindingFn();
172
+ };
173
+ }
174
+ const clickoutsideDirective = {
175
+ beforeMount: function(el, binding, vnode) {
176
+ nid++;
177
+ nodeList.set(nid, el);
178
+ el[ctx] = {
179
+ nid,
180
+ documentHandler: createDocumentHandler(el, binding, vnode),
181
+ bindingFn: binding.value
182
+ };
183
+ },
184
+ updated: function(el, binding, vnode) {
185
+ el[ctx].documentHandler = createDocumentHandler(el, binding, vnode);
186
+ el[ctx].bindingFn = binding.value;
187
+ },
188
+ unmounted: function(el) {
189
+ nodeList.delete(el[ctx].nid);
190
+ delete el[ctx];
191
+ }
192
+ };
193
+ var ConfigMenu = defineComponent({
194
+ directives: {
195
+ clickoutside: clickoutsideDirective
196
+ },
197
+ props: {
198
+ currentPageSize: Number,
199
+ pageSizeChange: Function,
200
+ pageSizeOptions: Array
201
+ },
202
+ setup() {
203
+ const paginationConfig = ref(null);
204
+ const isShowConfig = ref(false);
205
+ onMounted(() => {
206
+ on(paginationConfig.value, "click", closeConfigMenu);
207
+ });
208
+ onUnmounted(() => {
209
+ off(paginationConfig.value, "click", closeConfigMenu);
210
+ });
211
+ const closeConfigMenu = (e) => {
212
+ isShowConfig.value = isShowConfig.value ? false : !!e;
213
+ };
214
+ return {
215
+ paginationConfig,
216
+ isShowConfig,
217
+ closeConfigMenu
218
+ };
219
+ },
220
+ render() {
221
+ var _a;
222
+ const {
223
+ closeConfigMenu,
224
+ currentPageSize,
225
+ pageSizeChange,
226
+ pageSizeOptions,
227
+ isShowConfig,
228
+ $slots
229
+ } = this;
230
+ return withDirectives(createVNode("div", {
231
+ "class": "devui-pagination-config",
232
+ "ref": "paginationConfig"
233
+ }, [createVNode("div", {
234
+ "class": "devui-setup-icon"
235
+ }, [createVNode("i", {
236
+ "class": "icon-setting",
237
+ "style": "font-weight: bold;"
238
+ }, null)]), isShowConfig && createVNode("div", {
239
+ "class": "devui-config-container"
240
+ }, [(_a = $slots.default) == null ? void 0 : _a.call($slots), createVNode("div", {
241
+ "class": "pagination-config-item"
242
+ }, [createVNode("div", {
243
+ "class": "config-item-title"
244
+ }, [createTextVNode("\u6BCF\u9875\u6761\u6570")]), createVNode("div", {
245
+ "class": "devui-page-number"
246
+ }, [pageSizeOptions.map((v) => {
247
+ return createVNode("div", {
248
+ "class": {
249
+ choosed: v === currentPageSize
250
+ },
251
+ "key": v,
252
+ "onClick": pageSizeChange.bind(null, {
253
+ value: v
254
+ })
255
+ }, [v]);
256
+ })])])])]), [[resolveDirective("clickoutside"), closeConfigMenu]]);
257
+ }
258
+ });
259
+ const jumpPageProps = {
260
+ goToText: String,
261
+ size: {
262
+ type: String,
263
+ default: ""
264
+ },
265
+ pageIndex: Number,
266
+ showJumpButton: Boolean,
267
+ totalPages: Number,
268
+ cursor: Number,
269
+ onChangeCursorEmit: Function
270
+ };
271
+ var JumpPage = defineComponent({
272
+ props: jumpPageProps,
273
+ emits: ["changeCursorEmit"],
274
+ setup(props, {
275
+ emit
276
+ }) {
277
+ const {
278
+ pageIndex,
279
+ totalPages,
280
+ cursor
281
+ } = toRefs(props);
282
+ const inputNum = ref(pageIndex.value);
283
+ watch(() => pageIndex.value, (val) => {
284
+ inputNum.value = val;
285
+ });
286
+ let curPage = pageIndex.value;
287
+ const jumpPageChange = (currentPage) => {
288
+ curPage = +currentPage;
289
+ inputNum.value = currentPage;
290
+ if (isNaN(currentPage)) {
291
+ setTimeout(() => {
292
+ inputNum.value = pageIndex.value;
293
+ }, 300);
294
+ }
295
+ };
296
+ const jump = (e) => {
297
+ if (curPage > totalPages.value) {
298
+ return;
299
+ }
300
+ if ((e === "btn" || e.key === "Enter") && cursor.value !== curPage) {
301
+ emit("changeCursorEmit", curPage);
302
+ }
303
+ };
304
+ return {
305
+ inputNum,
306
+ jumpPageChange,
307
+ jump
308
+ };
309
+ },
310
+ render() {
311
+ const {
312
+ goToText,
313
+ size,
314
+ inputNum,
315
+ jumpPageChange,
316
+ jump,
317
+ showJumpButton
318
+ } = this;
319
+ return createVNode("div", {
320
+ "class": "devui-jump-container"
321
+ }, [
322
+ goToText,
323
+ createVNode(resolveComponent("d-input"), {
324
+ "class": ["devui-pagination-input", size ? "devui-pagination-input-" + size : ""],
325
+ "size": size,
326
+ "modelValue": String(inputNum),
327
+ "onUpdate:modelValue": jumpPageChange,
328
+ "onKeydown": jump
329
+ }, null),
330
+ goToText === "\u8DF3\u81F3" && "\u9875",
331
+ showJumpButton && createVNode("div", {
332
+ "class": ["devui-jump-button", size ? "devui-jump-size-" + size : "devui-jump-size-default"],
333
+ "onClick": jump.bind(null, "btn"),
334
+ "title": goToText
335
+ }, [createVNode("div", {
336
+ "class": "devui-pagination-go"
337
+ }, null)])
338
+ ]);
339
+ }
340
+ });
341
+ const pageNumBtnProps = {
342
+ size: {
343
+ type: String,
344
+ default: ""
345
+ },
346
+ preLink: String,
347
+ nextLink: String,
348
+ lite: Boolean,
349
+ cursor: Number,
350
+ maxItems: Number,
351
+ totalPages: Number,
352
+ onChangeCursorEmit: Function,
353
+ showTruePageIndex: Boolean
354
+ };
355
+ var PageNumBtn = defineComponent({
356
+ props: pageNumBtnProps,
357
+ emits: ["changeCursorEmit"],
358
+ setup(props, {
359
+ emit
360
+ }) {
361
+ const showPageNum = computed(() => handlePages(props.cursor, props.maxItems, props.totalPages));
362
+ const changeCursor = (pageSize) => {
363
+ if (isNaN(pageSize))
364
+ return;
365
+ const page = pageSize < 1 ? 1 : pageSize > props.totalPages ? props.totalPages : pageSize | 0;
366
+ emit("changeCursorEmit", page);
367
+ };
368
+ const prevChange = (page) => {
369
+ if (props.cursor > 1) {
370
+ const toPage = page === -1 ? props.cursor - 1 : page;
371
+ emit("changeCursorEmit", toPage);
372
+ }
373
+ };
374
+ const nextChange = (page) => {
375
+ if (props.cursor < props.totalPages) {
376
+ const toPage = page === -1 ? props.cursor + 1 : page;
377
+ emit("changeCursorEmit", toPage);
378
+ }
379
+ };
380
+ return {
381
+ showPageNum,
382
+ changeCursor,
383
+ prevChange,
384
+ nextChange
385
+ };
386
+ },
387
+ render() {
388
+ const {
389
+ size,
390
+ preLink,
391
+ nextLink,
392
+ lite,
393
+ changeCursor,
394
+ cursor,
395
+ showPageNum,
396
+ prevChange,
397
+ totalPages,
398
+ nextChange,
399
+ showTruePageIndex
400
+ } = this;
401
+ return createVNode("ul", {
402
+ "class": ["devui-pagination-list", size ? "devui-pagination-" + size : ""]
403
+ }, [createVNode("li", {
404
+ "onClick": prevChange.bind(null, -1),
405
+ "class": {
406
+ "devui-pagination-item": true,
407
+ disabled: cursor <= 1
408
+ }
409
+ }, [createVNode("a", {
410
+ "innerHTML": preLink,
411
+ "class": "devui-pagination-link"
412
+ }, null)]), !lite && createVNode(Fragment, null, [
413
+ createVNode("li", {
414
+ "onClick": changeCursor.bind(null, 1),
415
+ "class": {
416
+ "devui-pagination-item": true,
417
+ active: cursor === 1
418
+ }
419
+ }, [createVNode("a", {
420
+ "class": "devui-pagination-link"
421
+ }, [createTextVNode("1")])]),
422
+ showPageNum[0] > 2 && createVNode("li", {
423
+ "onClick": prevChange.bind(null, showPageNum[0] - 1),
424
+ "class": "devui-pagination-item"
425
+ }, [createVNode("a", {
426
+ "class": "devui-pagination-link"
427
+ }, [createTextVNode("...")])]),
428
+ (() => {
429
+ const list = [];
430
+ for (let i = showPageNum[0]; i <= showPageNum[1]; i++) {
431
+ list.push(createVNode("li", {
432
+ "onClick": changeCursor.bind(null, i),
433
+ "key": i,
434
+ "class": {
435
+ "devui-pagination-item": true,
436
+ active: cursor === i
437
+ }
438
+ }, [createVNode("a", {
439
+ "class": "devui-pagination-link"
440
+ }, [i])]));
441
+ }
442
+ return list;
443
+ })(),
444
+ showPageNum[1] < totalPages - 1 && createVNode("li", {
445
+ "onClick": nextChange.bind(null, showPageNum[1] + 1),
446
+ "class": "devui-pagination-item"
447
+ }, [createVNode("a", {
448
+ "class": "devui-pagination-link"
449
+ }, [createTextVNode("...")])]),
450
+ showPageNum[1] < totalPages && createVNode("li", {
451
+ "onClick": changeCursor.bind(null, totalPages),
452
+ "class": {
453
+ "devui-pagination-item": true,
454
+ active: cursor === totalPages
455
+ }
456
+ }, [createVNode("a", {
457
+ "class": "devui-pagination-link"
458
+ }, [totalPages])]),
459
+ showTruePageIndex && cursor > totalPages && totalPages > 0 && createVNode(Fragment, null, [cursor > totalPages + 1 && createVNode("li", {
460
+ "class": "devui-pagination-item disabled"
461
+ }, [createVNode("a", {
462
+ "class": "devui-pagination-link"
463
+ }, [createTextVNode("...")])]), createVNode("li", {
464
+ "class": "devui-pagination-item disabled active"
465
+ }, [createVNode("a", {
466
+ "class": "devui-pagination-link"
467
+ }, [cursor])])])
468
+ ]), createVNode("li", {
469
+ "onClick": nextChange.bind(null, -1),
470
+ "class": {
471
+ "devui-pagination-item": true,
472
+ disabled: cursor >= totalPages
473
+ }
474
+ }, [createVNode("a", {
475
+ "innerHTML": nextLink,
476
+ "class": "devui-pagination-link"
477
+ }, null)])]);
478
+ }
479
+ });
480
+ var pagination = "";
481
+ var Pagination = defineComponent({
482
+ name: "DPagination",
483
+ components: {
484
+ ConfigMenu,
485
+ JumpPage,
486
+ PageNumBtn
487
+ },
488
+ props: componentProps,
489
+ emits: ["pageIndexChange", "pageSizeChange", "update:pageSize", "update:pageIndex"],
490
+ setup(props, {
491
+ emit
492
+ }) {
493
+ const litePageOptions = computed(() => liteSelectOptions(totalPages.value));
494
+ const cursor = computed({
495
+ get() {
496
+ if (!props.showTruePageIndex && props.pageIndex > totalPages.value) {
497
+ emit("update:pageIndex", totalPages.value || 1);
498
+ return totalPages.value || 1;
499
+ }
500
+ return props.pageIndex || 1;
501
+ },
502
+ set(val) {
503
+ emit("update:pageIndex", val);
504
+ }
505
+ });
506
+ const currentPageSize = computed({
507
+ get() {
508
+ return props.pageSize;
509
+ },
510
+ set(val) {
511
+ emit("update:pageSize", val);
512
+ }
513
+ });
514
+ const totalPages = computed(() => Math.ceil(props.total / props.pageSize));
515
+ const changeCursorEmit = (val) => {
516
+ cursor.value = val;
517
+ emit("pageIndexChange", val);
518
+ };
519
+ const pageSizeChange = (val) => {
520
+ currentPageSize.value = val.value;
521
+ if (props.autoFixPageIndex) {
522
+ nextTick(() => {
523
+ if (cursor.value > totalPages.value) {
524
+ changeCursorEmit(totalPages.value);
525
+ }
526
+ });
527
+ }
528
+ emit("pageSizeChange", val.value);
529
+ };
530
+ const litePageIndexChange = (page) => {
531
+ changeCursorEmit(page.value);
532
+ };
533
+ return {
534
+ cursor,
535
+ totalPages,
536
+ changeCursorEmit,
537
+ currentPageSize,
538
+ pageSizeChange,
539
+ litePageOptions,
540
+ litePageIndexChange
541
+ };
542
+ },
543
+ render() {
544
+ const {
545
+ total,
546
+ pageIndex,
547
+ pageSizeOptions,
548
+ pageSizeDirection,
549
+ preLink,
550
+ nextLink,
551
+ size,
552
+ canJumpPage,
553
+ canChangePageSize,
554
+ canViewTotal,
555
+ totalItemText,
556
+ goToText,
557
+ maxItems,
558
+ showJumpButton,
559
+ showTruePageIndex,
560
+ lite,
561
+ showPageSelector,
562
+ haveConfigMenu,
563
+ autoHide,
564
+ $slots,
565
+ cursor,
566
+ totalPages,
567
+ currentPageSize,
568
+ pageSizeChange,
569
+ changeCursorEmit,
570
+ litePageOptions,
571
+ litePageIndexChange
572
+ } = this;
573
+ return autoHide && Math.min(...pageSizeOptions) > total ? null : createVNode("div", {
574
+ "class": "devui-pagination"
575
+ }, [
576
+ canChangePageSize && !lite && createVNode("div", {
577
+ "class": ["devui-page-size", size ? "devui-page-size-" + size : ""]
578
+ }, [createVNode(resolveComponent("d-select"), {
579
+ "options": pageSizeOptions,
580
+ "modelValue": currentPageSize,
581
+ "onValueChange": pageSizeChange,
582
+ "pageSizeDirection": pageSizeDirection
583
+ }, null)]),
584
+ (!lite || lite && showPageSelector) && canViewTotal && createVNode("div", {
585
+ "class": "devui-total-size"
586
+ }, [totalItemText, createTextVNode(": "), total]),
587
+ lite && showPageSelector && createVNode("div", {
588
+ "class": "devui-page-size"
589
+ }, [createVNode(resolveComponent("d-select"), {
590
+ "options": litePageOptions,
591
+ "disabled": total === 0,
592
+ "modelValue": cursor,
593
+ "onValueChange": litePageIndexChange,
594
+ "pageSizeDirection": pageSizeDirection
595
+ }, null)]),
596
+ createVNode(resolveComponent("page-num-btn"), mergeProps({
597
+ cursor,
598
+ totalPages,
599
+ size,
600
+ lite,
601
+ maxItems,
602
+ preLink,
603
+ nextLink,
604
+ showTruePageIndex
605
+ }, {
606
+ "onChangeCursorEmit": changeCursorEmit
607
+ }), null),
608
+ canJumpPage && !lite && createVNode(resolveComponent("jump-page"), mergeProps({
609
+ goToText,
610
+ size,
611
+ pageIndex,
612
+ totalPages,
613
+ cursor,
614
+ showJumpButton
615
+ }, {
616
+ "onChangeCursorEmit": changeCursorEmit
617
+ }), null),
618
+ lite && haveConfigMenu && createVNode(resolveComponent("config-menu"), {
619
+ currentPageSize,
620
+ pageSizeChange,
621
+ pageSizeOptions
622
+ }, {
623
+ default: () => {
624
+ var _a;
625
+ return [(_a = $slots.default) == null ? void 0 : _a.call($slots)];
626
+ }
627
+ })
628
+ ]);
629
+ }
630
+ });
631
+ Pagination.install = (app) => {
632
+ app.component(Pagination.name, Pagination);
633
+ };
634
+ var index = {
635
+ title: "Pagination \u5206\u9875",
636
+ category: "\u5BFC\u822A",
637
+ status: "100%",
638
+ install(app) {
639
+ app.use(Pagination);
640
+ }
641
+ };
642
+ export { Pagination, index as default };