vue-devui 1.0.0-rc.4 → 1.0.0-rc.7

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 (151) hide show
  1. package/README.md +21 -7
  2. package/auto-complete/index.es.js +26 -4
  3. package/auto-complete/index.umd.js +3 -3
  4. package/auto-complete/style.css +1 -1
  5. package/badge/index.es.js +2 -1
  6. package/badge/index.umd.js +1 -1
  7. package/button/index.es.js +4 -3
  8. package/button/index.umd.js +1 -1
  9. package/button/style.css +1 -1
  10. package/card/index.es.js +35 -29
  11. package/card/index.umd.js +1 -1
  12. package/card/style.css +1 -1
  13. package/checkbox/index.es.js +1 -1
  14. package/checkbox/index.umd.js +1 -1
  15. package/{comment → date-picker}/index.d.ts +0 -0
  16. package/date-picker/index.es.js +1145 -0
  17. package/date-picker/index.umd.js +1 -0
  18. package/date-picker/package.json +7 -0
  19. package/date-picker/style.css +1 -0
  20. package/{read-tip → drawer}/index.d.ts +0 -0
  21. package/drawer/index.es.js +236 -0
  22. package/drawer/index.umd.js +1 -0
  23. package/{comment → drawer}/package.json +1 -1
  24. package/drawer/style.css +1 -0
  25. package/{tag-input → dropdown}/index.d.ts +0 -0
  26. package/dropdown/index.es.js +718 -0
  27. package/dropdown/index.umd.js +1 -0
  28. package/{read-tip → dropdown}/package.json +1 -1
  29. package/dropdown/style.css +1 -0
  30. package/editable-select/index.es.js +14 -14
  31. package/editable-select/index.umd.js +1 -1
  32. package/editable-select/style.css +1 -1
  33. package/form/index.d.ts +7 -0
  34. package/form/index.es.js +7511 -0
  35. package/form/index.umd.js +27 -0
  36. package/{tag-input → form}/package.json +1 -1
  37. package/form/style.css +1 -0
  38. package/fullscreen/index.es.js +1 -1
  39. package/fullscreen/index.umd.js +1 -1
  40. package/image-preview/style.css +1 -1
  41. package/input/index.es.js +13 -19
  42. package/input/index.umd.js +1 -1
  43. package/input/style.css +1 -1
  44. package/input-number/index.d.ts +7 -0
  45. package/input-number/index.es.js +251 -0
  46. package/input-number/index.umd.js +1 -0
  47. package/input-number/package.json +7 -0
  48. package/input-number/style.css +1 -0
  49. package/loading/style.css +1 -1
  50. package/modal/index.es.js +15 -3
  51. package/modal/index.umd.js +1 -1
  52. package/modal/style.css +1 -1
  53. package/notification/style.css +1 -1
  54. package/nuxt/components/CheckboxGroup.js +3 -0
  55. package/nuxt/components/Column.js +3 -0
  56. package/nuxt/components/DatePicker.js +3 -0
  57. package/nuxt/components/Drawer.js +3 -0
  58. package/nuxt/components/DrawerService.js +3 -0
  59. package/nuxt/components/Dropdown.js +3 -0
  60. package/nuxt/components/DropdownMenu.js +3 -0
  61. package/nuxt/components/FORM_ITEM_TOKEN.js +3 -0
  62. package/nuxt/components/FORM_TOKEN.js +3 -0
  63. package/nuxt/components/Form.js +3 -0
  64. package/nuxt/components/FormControl.js +3 -0
  65. package/nuxt/components/FormItem.js +3 -0
  66. package/nuxt/components/FormLabel.js +3 -0
  67. package/nuxt/components/FormOperation.js +3 -0
  68. package/nuxt/components/InputNumber.js +3 -0
  69. package/nuxt/components/Select.js +3 -0
  70. package/nuxt/components/StickSlider.js +3 -0
  71. package/nuxt/components/Tab.js +3 -0
  72. package/nuxt/components/Table.js +3 -0
  73. package/nuxt/components/Tabs.js +3 -0
  74. package/nuxt/components/Tooltip.js +3 -0
  75. package/nuxt/components/Tree.js +3 -0
  76. package/nuxt/components/dropdownMenuProps.js +3 -0
  77. package/nuxt/components/formControlProps.js +3 -0
  78. package/nuxt/components/formItemProps.js +3 -0
  79. package/nuxt/components/formProps.js +3 -0
  80. package/nuxt/components/tabsProps.js +3 -0
  81. package/nuxt/components/tooltipProps.js +3 -0
  82. package/nuxt/components/treeProps.js +3 -0
  83. package/overlay/index.es.js +15 -3
  84. package/overlay/index.umd.js +1 -1
  85. package/overlay/style.css +1 -1
  86. package/package.json +2 -2
  87. package/pagination/index.es.js +80 -96
  88. package/pagination/index.umd.js +1 -1
  89. package/pagination/style.css +1 -1
  90. package/popover/index.es.js +15 -3
  91. package/popover/index.umd.js +9 -9
  92. package/popover/style.css +1 -1
  93. package/progress/index.es.js +48 -14
  94. package/progress/index.umd.js +3 -3
  95. package/progress/style.css +1 -1
  96. package/rate/index.es.js +29 -36
  97. package/rate/index.umd.js +1 -1
  98. package/rate/style.css +1 -1
  99. package/search/index.es.js +15 -19
  100. package/search/index.umd.js +12 -12
  101. package/search/style.css +1 -1
  102. package/select/index.d.ts +7 -0
  103. package/select/index.es.js +696 -0
  104. package/select/index.umd.js +1 -0
  105. package/select/package.json +7 -0
  106. package/select/style.css +1 -0
  107. package/slider/index.es.js +18 -6
  108. package/slider/index.umd.js +1 -1
  109. package/splitter/index.es.js +15 -3
  110. package/splitter/index.umd.js +11 -11
  111. package/splitter/style.css +1 -1
  112. package/style.css +1 -1
  113. package/table/index.d.ts +7 -0
  114. package/table/index.es.js +2662 -0
  115. package/table/index.umd.js +1 -0
  116. package/table/package.json +7 -0
  117. package/table/style.css +1 -0
  118. package/tabs/index.d.ts +7 -0
  119. package/tabs/index.es.js +194 -0
  120. package/tabs/index.umd.js +1 -0
  121. package/tabs/package.json +7 -0
  122. package/tabs/style.css +1 -0
  123. package/textarea/style.css +1 -1
  124. package/tooltip/index.d.ts +7 -0
  125. package/tooltip/index.es.js +5847 -0
  126. package/tooltip/index.umd.js +27 -0
  127. package/tooltip/package.json +7 -0
  128. package/tooltip/style.css +1 -0
  129. package/tree/index.d.ts +7 -0
  130. package/tree/index.es.js +1021 -0
  131. package/tree/index.umd.js +1 -0
  132. package/tree/package.json +7 -0
  133. package/tree/style.css +1 -0
  134. package/upload/style.css +1 -1
  135. package/vue-devui.es.js +11482 -6434
  136. package/vue-devui.umd.js +24 -24
  137. package/comment/index.es.js +0 -84
  138. package/comment/index.umd.js +0 -1
  139. package/comment/style.css +0 -1
  140. package/nuxt/components/Comment.js +0 -3
  141. package/nuxt/components/ReadTip.js +0 -3
  142. package/nuxt/components/TagInput.js +0 -3
  143. package/nuxt/components/commentProps.js +0 -3
  144. package/nuxt/components/readTipProps.js +0 -3
  145. package/nuxt/components/tagInputProps.js +0 -3
  146. package/read-tip/index.es.js +0 -261
  147. package/read-tip/index.umd.js +0 -1
  148. package/read-tip/style.css +0 -1
  149. package/tag-input/index.es.js +0 -328
  150. package/tag-input/index.umd.js +0 -1
  151. package/tag-input/style.css +0 -1
@@ -1 +1 @@
1
- var R=Object.defineProperty,T=Object.defineProperties;var $=Object.getOwnPropertyDescriptors;var O=Object.getOwnPropertySymbols;var z=Object.prototype.hasOwnProperty,D=Object.prototype.propertyIsEnumerable;var x=(l,e,a)=>e in l?R(l,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):l[e]=a,B=(l,e)=>{for(var a in e||(e={}))z.call(e,a)&&x(l,a,e[a]);if(O)for(var a of O(e))D.call(e,a)&&x(l,a,e[a]);return l},E=(l,e)=>T(l,$(e));(function(l,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue"),require("@floating-ui/dom")):typeof define=="function"&&define.amd?define(["exports","vue","@floating-ui/dom"],e):(l=typeof globalThis!="undefined"?globalThis:l||self,e(l.index={},l.Vue,l.dom))})(this,function(l,e,a){"use strict";var M="";function S(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!e.isVNode(t)}const V=e.defineComponent({setup(t,r){return()=>{let i;return e.createVNode(e.Teleport,{to:"#d-overlay-anchor"},{default:()=>[e.createVNode(e.Transition,{name:"devui-overlay-fade"},S(i=e.renderSlot(r.slots,"default"))?i:{default:()=>[i]})]})}}}),p={visible:{type:Boolean},backgroundBlock:{type:Boolean,default:!1},backgroundClass:{type:String,default:""},backgroundStyle:{type:[String,Object]},onBackdropClick:{type:Function},backdropClose:{type:Boolean,default:!0},hasBackdrop:{type:Boolean,default:!0}},h=E(B({},p),{overlayStyle:{type:[String,Object],default:void 0}}),k=["update:visible","backdropClick"];function A(t,r){const i=e.computed(()=>["devui-overlay-background",t.backgroundClass,t.hasBackdrop?"devui-overlay-background__color":"devui-overlay-background__disabled"]),d=e.computed(()=>"devui-overlay"),n=o=>{var c;o.preventDefault(),(c=t.onBackdropClick)==null||c.call(t),t.backdropClose&&r.emit("update:visible",!1)},s=o=>o.cancelBubble=!0;return e.onMounted(()=>{const o=document.body,c=o.style.overflow,u=o.style.position;e.watch([()=>t.visible,()=>t.backgroundBlock],([f,v])=>{if(v){const y=o.getBoundingClientRect().y;f?(o.style.overflowY="scroll",o.style.position=f?"fixed":"",o.style.top=`${y}px`):(o.style.overflowY=c,o.style.position=u,o.style.top="",window.scrollTo(0,-y))}}),e.onUnmounted(()=>{document.body.style.overflow=c})}),{backgroundClass:i,overlayClass:d,handleBackdropClick:n,handleOverlayBubbleCancel:s}}var q="";const m=e.defineComponent({name:"DFixedOverlay",props:h,emits:k,setup(t,r){const{backgroundClass:i,overlayClass:d,handleBackdropClick:n,handleOverlayBubbleCancel:s}=A(t,r);return()=>e.createVNode(V,null,{default:()=>[t.visible&&e.createVNode("div",{class:i.value,style:t.backgroundStyle,onClick:n},[e.createVNode("div",{class:d.value,style:t.overlayStyle,onClick:s},[e.renderSlot(r.slots,"default")])])]})}}),C={modelValue:{type:Boolean,default:!1},origin:{type:Object,require:!0},position:{type:Array,default:["bottom"]},offset:{type:[Number,Object],default:8},align:{type:String,default:null},showArrow:{type:Boolean,default:!1},isArrowCenter:{type:Boolean,default:!0}};function j(t){const r=/(auto|scroll|hidden)/;for(let i=t;i=i.parentElement;i.parentElement!==document.body){const d=window.getComputedStyle(i);if(r.test(d.overflow+d.overflowX+d.overflowY))return i}return window}function P(t,r,i,d){let{x:n,y:s}=r;if(!t){const{width:o,height:c}=d;n&&i.includes("start")&&(n=12),n&&i.includes("end")&&(n=Math.round(o-24)),s&&i.includes("start")&&(s=10),s&&i.includes("end")&&(s=c-14)}return{x:n,y:s}}function L(t,r){const i=e.ref(),d=e.ref();let n=null;const s=(c,u,f,v)=>{const{x:y,y:w}=P(t.isArrowCenter,f,u,v.getBoundingClientRect()),b={top:"bottom",right:"left",bottom:"top",left:"right"}[u.split("-")[0]];Object.assign(c.style,{left:y?`${y}px`:"",top:w?`${w}px`:"",right:"",bottom:"",[b]:"-4px"})},o=async()=>{const c=t.origin,u=e.unref(i.value),f=e.unref(d.value),v=[a.shift(),a.offset(t.offset),a.autoPlacement({alignment:t.align,allowedPlacements:t.position})];t.showArrow&&v.push(a.arrow({element:f}));const{x:y,y:w,placement:b,middlewareData:_}=await a.computePosition(c,u,{strategy:"fixed",middleware:v});r("positionChange",b),Object.assign(u.style,{top:`${w}px`,left:`${y}px`}),t.showArrow&&s(f,b,_.arrow,u)};return e.watch(()=>t.modelValue,()=>{t.modelValue&&t.origin?(n=j(t.origin),e.nextTick(o),n==null||n.addEventListener("scroll",o),n!==window&&window.addEventListener("scroll",o),window.addEventListener("resize",o)):(n==null||n.removeEventListener("scroll",o),n!==window&&window.removeEventListener("scroll",o),window.removeEventListener("resize",o))}),e.onUnmounted(()=>{n==null||n.removeEventListener("scroll",o),n!==window&&window.removeEventListener("scroll",o),window.removeEventListener("resize",o)}),{arrowRef:d,overlayRef:i,updatePosition:o}}var Y="";const g=e.defineComponent({name:"DFlexibleOverlay",inheritAttrs:!1,props:C,emits:["update:modelValue","positionChange"],setup(t,{slots:r,attrs:i,emit:d,expose:n}){const{arrowRef:s,overlayRef:o,updatePosition:c}=L(t,d);return n({updatePosition:c}),()=>{var u;return t.modelValue&&e.createVNode("div",e.mergeProps({ref:o,class:"devui-flexible-overlay"},i),[(u=r.default)==null?void 0:u.call(r),t.showArrow&&e.createVNode("div",{ref:s,class:"devui-flexible-overlay-arrow"},null)])}}}),N=typeof window!="undefined";var F={title:"Overlay \u906E\u7F69\u5C42",category:"\u901A\u7528",status:"100%",install(t){if(t.component(m.name,m),t.component(g.name,g),N&&!document.getElementById("d-overlay-anchor")){const r=document.createElement("div");r.setAttribute("id","d-overlay-anchor"),r.style.position="fixed",r.style.left="0",r.style.top="0",r.style.zIndex="1000",document.body.appendChild(r)}}};l.FixedOverlay=m,l.FlexibleOverlay=g,l.default=F,l.fixedOverlayProps=h,l.flexibleOverlayProps=C,l.overlayEmits=k,l.overlayProps=p,Object.defineProperty(l,"__esModule",{value:!0}),l[Symbol.toStringTag]="Module"});
1
+ var z=Object.defineProperty,D=Object.defineProperties;var M=Object.getOwnPropertyDescriptors;var V=Object.getOwnPropertySymbols;var q=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var A=(l,t,a)=>t in l?z(l,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):l[t]=a,j=(l,t)=>{for(var a in t||(t={}))q.call(t,a)&&A(l,a,t[a]);if(V)for(var a of V(t))X.call(t,a)&&A(l,a,t[a]);return l},P=(l,t)=>D(l,M(t));(function(l,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue"),require("@floating-ui/dom")):typeof define=="function"&&define.amd?define(["exports","vue","@floating-ui/dom"],t):(l=typeof globalThis!="undefined"?globalThis:l||self,t(l.index={},l.Vue,l.dom))})(this,function(l,t,a){"use strict";var I="";function L(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const N=t.defineComponent({setup(e,i){return()=>{let r;return t.createVNode(t.Teleport,{to:"#d-overlay-anchor"},{default:()=>[t.createVNode(t.Transition,{name:"devui-overlay-fade"},L(r=t.renderSlot(i.slots,"default"))?r:{default:()=>[r]})]})}}}),p={visible:{type:Boolean},backgroundBlock:{type:Boolean,default:!1},backgroundClass:{type:String,default:""},backgroundStyle:{type:[String,Object]},onBackdropClick:{type:Function},backdropClose:{type:Boolean,default:!0},hasBackdrop:{type:Boolean,default:!0}},k=P(j({},p),{overlayStyle:{type:[String,Object],default:void 0}}),C=["update:visible","backdropClick"];function F(e,i){const r=t.computed(()=>["devui-overlay-background",e.backgroundClass,e.hasBackdrop?"devui-overlay-background__color":"devui-overlay-background__disabled"]),d=t.computed(()=>"devui-overlay"),n=o=>{var c;o.preventDefault(),(c=e.onBackdropClick)==null||c.call(e),e.backdropClose&&i.emit("update:visible",!1)},s=o=>o.cancelBubble=!0;return t.onMounted(()=>{const o=document.body,c=o.style.overflow,f=o.style.position;t.watch([()=>e.visible,()=>e.backgroundBlock],([u,y])=>{if(y){const v=o.getBoundingClientRect().y;u?(o.style.overflowY="scroll",o.style.position=u?"fixed":"",o.style.top=`${v}px`):(o.style.overflowY=c,o.style.position=f,o.style.top="",window.scrollTo(0,-v))}}),t.onUnmounted(()=>{document.body.style.overflow=c})}),{backgroundClass:r,overlayClass:d,handleBackdropClick:n,handleOverlayBubbleCancel:s}}var U="";const m=t.defineComponent({name:"DFixedOverlay",props:k,emits:C,setup(e,i){const{backgroundClass:r,overlayClass:d,handleBackdropClick:n,handleOverlayBubbleCancel:s}=F(e,i);return()=>t.createVNode(N,null,{default:()=>[e.visible&&t.createVNode("div",{class:r.value,style:e.backgroundStyle,onClick:n},[t.createVNode("div",{class:d.value,style:e.overlayStyle,onClick:s},[t.renderSlot(i.slots,"default")])])]})}}),x={modelValue:{type:Boolean,default:!1},origin:{type:Object,require:!0},position:{type:Array,default:["bottom"]},offset:{type:[Number,Object],default:8},shiftOffset:{type:Number},align:{type:String,default:null},showArrow:{type:Boolean,default:!1},isArrowCenter:{type:Boolean,default:!0}};function _(e){const i=/(auto|scroll|hidden)/;for(let r=e;r=r.parentElement;r.parentElement!==document.body){const d=window.getComputedStyle(r);if(i.test(d.overflow+d.overflowX+d.overflowY))return r}return window}function R(e,i,r,d){let{x:n,y:s}=i;if(!e){const{width:o,height:c}=d;n&&r.includes("start")&&(n=12),n&&r.includes("end")&&(n=Math.round(o-24)),s&&r.includes("start")&&(s=10),s&&r.includes("end")&&(s=c-14)}return{x:n,y:s}}function T(e,i){const r=t.ref(),d=t.ref();let n=null;const s=(c,f,u,y)=>{const{x:v,y:w}=R(e.isArrowCenter,u,f,y.getBoundingClientRect()),b={top:"bottom",right:"left",bottom:"top",left:"right"}[f.split("-")[0]];Object.assign(c.style,{left:v?`${v}px`:"",top:w?`${w}px`:"",right:"",bottom:"",[b]:"-4px"})},o=async()=>{const c=e.origin,f=t.unref(r.value),u=t.unref(d.value),y=[a.offset(e.offset),a.autoPlacement({alignment:e.align,allowedPlacements:e.position})];e.showArrow&&y.push(a.arrow({element:u})),e.shiftOffset!==void 0&&y.push(a.shift());const{x:v,y:w,placement:b,middlewareData:B}=await a.computePosition(c,f,{strategy:"fixed",middleware:y});let g=v,O=w;if(e.shiftOffset!==void 0){const{x:E,y:S}=B.shift;E<0&&(g-=e.shiftOffset),E>0&&(g+=e.shiftOffset),S<0&&(O-=e.shiftOffset),S>0&&(O+=e.shiftOffset)}i("positionChange",b),Object.assign(f.style,{top:`${O}px`,left:`${g}px`}),e.showArrow&&s(u,b,B.arrow,f)};return t.watch(()=>e.modelValue,()=>{e.modelValue&&e.origin?(n=_(e.origin),t.nextTick(o),n==null||n.addEventListener("scroll",o),n!==window&&window.addEventListener("scroll",o),window.addEventListener("resize",o)):(n==null||n.removeEventListener("scroll",o),n!==window&&window.removeEventListener("scroll",o),window.removeEventListener("resize",o))}),t.onUnmounted(()=>{n==null||n.removeEventListener("scroll",o),n!==window&&window.removeEventListener("scroll",o),window.removeEventListener("resize",o)}),{arrowRef:d,overlayRef:r,updatePosition:o}}var G="";const h=t.defineComponent({name:"DFlexibleOverlay",inheritAttrs:!1,props:x,emits:["update:modelValue","positionChange"],setup(e,{slots:i,attrs:r,emit:d,expose:n}){const{arrowRef:s,overlayRef:o,updatePosition:c}=T(e,d);return n({updatePosition:c}),()=>{var f;return e.modelValue&&t.createVNode("div",t.mergeProps({ref:o,class:"devui-flexible-overlay"},r),[(f=i.default)==null?void 0:f.call(i),e.showArrow&&t.createVNode("div",{ref:s,class:"devui-flexible-overlay-arrow"},null)])}}}),Y=typeof window!="undefined";var $={title:"Overlay \u906E\u7F69\u5C42",category:"\u901A\u7528",status:"100%",install(e){if(e.component(m.name,m),e.component(h.name,h),Y&&!document.getElementById("d-overlay-anchor")){const i=document.createElement("div");i.setAttribute("id","d-overlay-anchor"),i.style.position="fixed",i.style.left="0",i.style.top="0",i.style.zIndex="1000",document.body.appendChild(i)}}};l.FixedOverlay=m,l.FlexibleOverlay=h,l.default=$,l.fixedOverlayProps=k,l.flexibleOverlayProps=x,l.overlayEmits=C,l.overlayProps=p,Object.defineProperty(l,"__esModule",{value:!0}),l[Symbol.toStringTag]="Module"});
package/overlay/style.css CHANGED
@@ -1 +1 @@
1
- @keyframes d-overlay-fade{0%{opacity:0}to{opacity:1}}.devui-overlay-fade-enter{opacity:0}.devui-overlay-fade-enter-active{animation-name:d-overlay-fade;animation-duration:.3s}.devui-overlay-fade-leave{opacity:1}.devui-overlay-fade-leave-active{animation-name:d-overlay-fade;animation-duration:.3s;animation-direction:reverse}.devui-overlay-background{position:fixed;top:0;left:0;height:100vh;width:100vw;display:flex}.devui-overlay-background__color{background:rgba(0,0,0,.4)}.devui-overlay-background .devui-overlay{position:relative;z-index:1000;pointer-events:auto}.devui-overlay-background__disabled{pointer-events:none}.devui-flexible-overlay{position:fixed;border-radius:var(--devui-border-radius, 2px);background-color:var(--devui-connected-overlay-bg, #ffffff);box-shadow:var(--devui-shadow-connected-overlay, 0 2px 8px 0) var(--devui-shadow, rgba(0, 0, 0, .2));z-index:1000}.devui-flexible-overlay-arrow{position:absolute;width:8px;height:8px;transform:rotate(45deg);background-color:inherit}
1
+ @keyframes d-overlay-fade{0%{opacity:0}to{opacity:1}}.devui-overlay-fade-enter{opacity:0}.devui-overlay-fade-enter-active{animation-name:d-overlay-fade;animation-duration:.3s}.devui-overlay-fade-leave{opacity:1}.devui-overlay-fade-leave-active{animation-name:d-overlay-fade;animation-duration:.3s;animation-direction:reverse}.devui-overlay-background{position:fixed;top:0;left:0;height:100vh;width:100vw;display:flex}.devui-overlay-background__color{background:rgba(0,0,0,.4)}.devui-overlay-background .devui-overlay{position:relative;z-index:1000;pointer-events:auto}.devui-overlay-background__disabled{pointer-events:none}.devui-flexible-overlay{position:fixed;border-radius:var(--devui-border-radius, 2px);background-color:var(--devui-connected-overlay-bg, #ffffff);box-shadow:var(--devui-shadow-connected-overlay, 0 2px 8px 0) var(--devui-shadow, rgba(37, 43, 58, .2));z-index:1000}.devui-flexible-overlay-arrow{position:absolute;width:8px;height:8px;transform:rotate(45deg);background-color:inherit}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vue-devui",
3
- "version": "1.0.0-rc.4",
3
+ "version": "1.0.0-rc.7",
4
4
  "license": "MIT",
5
5
  "description": "DevUI components based on Vite and Vue3",
6
6
  "keywords": [
@@ -25,7 +25,7 @@
25
25
  "style": "style.css",
26
26
  "dependencies": {
27
27
  "@devui-design/icons": "^1.3.0",
28
- "@floating-ui/dom": "^0.4.0",
28
+ "@floating-ui/dom": "^0.4.4",
29
29
  "@types/lodash-es": "^4.17.4",
30
30
  "@vueuse/core": "^7.7.1",
31
31
  "async-validator": "^4.0.2",
@@ -490,8 +490,30 @@ var Pagination = defineComponent({
490
490
  props: paginationProps,
491
491
  emits: ["pageIndexChange", "pageSizeChange", "update:pageSize", "update:pageIndex"],
492
492
  setup(props, {
493
- emit
493
+ emit,
494
+ slots
494
495
  }) {
496
+ const {
497
+ autoHide,
498
+ pageSizeOptions,
499
+ total,
500
+ canChangePageSize,
501
+ lite,
502
+ size,
503
+ pageSizeDirection,
504
+ showPageSelector,
505
+ canViewTotal,
506
+ totalItemText,
507
+ maxItems,
508
+ preLink,
509
+ nextLink,
510
+ showTruePageIndex,
511
+ canJumpPage,
512
+ goToText,
513
+ pageIndex,
514
+ showJumpButton,
515
+ haveConfigMenu
516
+ } = toRefs(props);
495
517
  const totalPages = computed(() => Math.ceil(props.total / props.pageSize));
496
518
  const litePageOptions = computed(() => liteSelectOptions(totalPages.value));
497
519
  const cursor = computed({
@@ -532,102 +554,64 @@ var Pagination = defineComponent({
532
554
  const litePageIndexChange = (page) => {
533
555
  changeCursorEmit(page.value);
534
556
  };
535
- return {
536
- cursor,
537
- totalPages,
538
- changeCursorEmit,
539
- currentPageSize,
540
- pageSizeChange,
541
- litePageOptions,
542
- litePageIndexChange
557
+ return () => {
558
+ return autoHide.value && Math.min(...pageSizeOptions.value) > total.value ? null : createVNode("div", {
559
+ "class": "devui-pagination"
560
+ }, [
561
+ canChangePageSize.value && !lite.value && createVNode("div", {
562
+ "class": ["devui-page-size", size.value ? "devui-page-size-" + size.value : ""]
563
+ }, [createVNode(resolveComponent("d-select"), {
564
+ "options": pageSizeOptions.value,
565
+ "modelValue": currentPageSize.value,
566
+ "onValueChange": pageSizeChange,
567
+ "pageSizeDirection": pageSizeDirection.value
568
+ }, null)]),
569
+ (!lite.value || lite.value && showPageSelector.value) && canViewTotal.value && createVNode("div", {
570
+ "class": "devui-total-size"
571
+ }, [totalItemText.value, createTextVNode(": "), total.value]),
572
+ lite.value && showPageSelector.value && createVNode("div", {
573
+ "class": "devui-page-size"
574
+ }, [createVNode(resolveComponent("d-select"), {
575
+ "options": litePageOptions.value,
576
+ "disabled": total.value === 0,
577
+ "modelValue": cursor.value,
578
+ "onValueChange": litePageIndexChange,
579
+ "pageSizeDirection": pageSizeDirection.value
580
+ }, null)]),
581
+ createVNode(resolveComponent("page-num-btn"), mergeProps({
582
+ cursor: cursor.value,
583
+ totalPages: totalPages.value,
584
+ size: size.value,
585
+ lite: lite.value,
586
+ maxItems: maxItems.value,
587
+ preLink: preLink.value,
588
+ nextLink: nextLink.value,
589
+ showTruePageIndex: showTruePageIndex.value
590
+ }, {
591
+ "onChangeCursorEmit": changeCursorEmit
592
+ }), null),
593
+ canJumpPage.value && !lite.value && createVNode(resolveComponent("jump-page"), mergeProps({
594
+ goToText: goToText.value,
595
+ size: size.value,
596
+ pageIndex: pageIndex.value,
597
+ totalPages: totalPages.value,
598
+ cursor: cursor.value,
599
+ showJumpButton: showJumpButton.value
600
+ }, {
601
+ "onChangeCursorEmit": changeCursorEmit
602
+ }), null),
603
+ lite.value && haveConfigMenu.value && createVNode(resolveComponent("config-menu"), {
604
+ currentPageSize: currentPageSize.value,
605
+ pageSizeChange,
606
+ pageSizeOptions: pageSizeOptions.value
607
+ }, {
608
+ default: () => {
609
+ var _a;
610
+ return [(_a = slots.default) == null ? void 0 : _a.call(slots)];
611
+ }
612
+ })
613
+ ]);
543
614
  };
544
- },
545
- render() {
546
- const {
547
- total,
548
- pageIndex,
549
- pageSizeOptions,
550
- pageSizeDirection,
551
- preLink,
552
- nextLink,
553
- size,
554
- canJumpPage,
555
- canChangePageSize,
556
- canViewTotal,
557
- totalItemText,
558
- goToText,
559
- maxItems,
560
- showJumpButton,
561
- showTruePageIndex,
562
- lite,
563
- showPageSelector,
564
- haveConfigMenu,
565
- autoHide,
566
- $slots,
567
- cursor,
568
- totalPages,
569
- currentPageSize,
570
- pageSizeChange,
571
- changeCursorEmit,
572
- litePageOptions,
573
- litePageIndexChange
574
- } = this;
575
- return autoHide && Math.min(...pageSizeOptions) > total ? null : createVNode("div", {
576
- "class": "devui-pagination"
577
- }, [
578
- canChangePageSize && !lite && createVNode("div", {
579
- "class": ["devui-page-size", size ? "devui-page-size-" + size : ""]
580
- }, [createVNode(resolveComponent("d-select"), {
581
- "options": pageSizeOptions,
582
- "modelValue": currentPageSize,
583
- "onValueChange": pageSizeChange,
584
- "pageSizeDirection": pageSizeDirection
585
- }, null)]),
586
- (!lite || lite && showPageSelector) && canViewTotal && createVNode("div", {
587
- "class": "devui-total-size"
588
- }, [totalItemText, createTextVNode(": "), total]),
589
- lite && showPageSelector && createVNode("div", {
590
- "class": "devui-page-size"
591
- }, [createVNode(resolveComponent("d-select"), {
592
- "options": litePageOptions,
593
- "disabled": total === 0,
594
- "modelValue": cursor,
595
- "onValueChange": litePageIndexChange,
596
- "pageSizeDirection": pageSizeDirection
597
- }, null)]),
598
- createVNode(resolveComponent("page-num-btn"), mergeProps({
599
- cursor,
600
- totalPages,
601
- size,
602
- lite,
603
- maxItems,
604
- preLink,
605
- nextLink,
606
- showTruePageIndex
607
- }, {
608
- "onChangeCursorEmit": changeCursorEmit
609
- }), null),
610
- canJumpPage && !lite && createVNode(resolveComponent("jump-page"), mergeProps({
611
- goToText,
612
- size,
613
- pageIndex,
614
- totalPages,
615
- cursor,
616
- showJumpButton
617
- }, {
618
- "onChangeCursorEmit": changeCursorEmit
619
- }), null),
620
- lite && haveConfigMenu && createVNode(resolveComponent("config-menu"), {
621
- currentPageSize,
622
- pageSizeChange,
623
- pageSizeOptions
624
- }, {
625
- default: () => {
626
- var _a;
627
- return [(_a = $slots.default) == null ? void 0 : _a.call($slots)];
628
- }
629
- })
630
- ]);
631
615
  }
632
616
  });
633
617
  var index = {
@@ -1 +1 @@
1
- (function(d,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(d=typeof globalThis!="undefined"?globalThis:d||self,e(d.index={},d.Vue))})(this,function(d,e){"use strict";const y={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:"\u6240\u6709\u6761\u76EE"},goToText:{type:String,default:"\u8DF3\u81F3"},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}},F=(t,a,n)=>{const r=t,s=a;if(s>=n)return[2,n];const o=s-2;let i=r-(o>>1),c=r+(o-1>>1);return i<2&&(i=2,c=s-2),c>n&&(i=n-s+3,c=n),[i,c]};function L(t){return new Array(t||1).fill(0).map((a,n)=>({name:`${n+1}/${t}`,value:n+1}))}function C(t,a,n){document.addEventListener?t&&a&&n&&t.addEventListener(a,n,!1):t&&a&&n&&t.attachEvent("on"+a,n)}function j(t,a,n){document.removeEventListener?t&&a&&n&&t.removeEventListener(a,n,!1):t&&a&&n&&t.detachEvent("on"+a,n)}const M=typeof window!="undefined",g=Symbol("@@clickoutside"),h=new Map;let z,N=0,b=!0;function k(t,a,n){return M&&b&&(b=!1,C(document,"mousedown",r=>{z=r}),C(document,"mouseup",r=>{for(const[s,o]of h)o[g].documentHandler(r,z)})),function(r,s){!n||!a.instance||!r.target||!s.target||t.contains(r.target)||t.contains(s.target)||t===r.target||t[g].bindingFn&&t[g].bindingFn()}}const D={beforeMount:function(t,a,n){N++,h.set(N,t),t[g]={nid:N,documentHandler:k(t,a,n),bindingFn:a.value}},updated:function(t,a,n){t[g].documentHandler=k(t,a,n),t[g].bindingFn=a.value},unmounted:function(t){h.delete(t[g].nid),delete t[g]}};var H=e.defineComponent({directives:{clickoutside:D},props:{currentPageSize:Number,pageSizeChange:Function,pageSizeOptions:Array},setup(){const t=e.ref(null),a=e.ref(!1),n=r=>{a.value=a.value?!1:!!r};return e.onMounted(()=>{C(t.value,"click",n)}),e.onUnmounted(()=>{j(t.value,"click",n)}),{paginationConfig:t,isShowConfig:a,closeConfigMenu:n}},render(){var i;const{closeConfigMenu:t,currentPageSize:a,pageSizeChange:n,pageSizeOptions:r,isShowConfig:s,$slots:o}=this;return e.withDirectives(e.createVNode("div",{class:"devui-pagination-config",ref:"paginationConfig"},[e.createVNode("div",{class:"devui-setup-icon"},[e.createVNode("i",{class:"icon-setting",style:"font-weight: bold;"},null)]),s&&e.createVNode("div",{class:"devui-config-container"},[(i=o.default)==null?void 0:i.call(o),e.createVNode("div",{class:"pagination-config-item"},[e.createVNode("div",{class:"config-item-title"},[e.createTextVNode("\u6BCF\u9875\u6761\u6570")]),e.createVNode("div",{class:"devui-page-number"},[r.map(c=>e.createVNode("div",{class:{choosed:c===a},key:c,onClick:n.bind(null,{value:c})},[c]))])])])]),[[e.resolveDirective("clickoutside"),t]])}});const O={goToText:String,size:{type:String,default:""},pageIndex:Number,showJumpButton:Boolean,totalPages:Number,cursor:Number,onChangeCursorEmit:Function};var J=e.defineComponent({props:O,emits:["changeCursorEmit"],setup(t,{emit:a}){const{pageIndex:n,totalPages:r,cursor:s}=e.toRefs(t),o=e.ref(n==null?void 0:n.value);e.watch(()=>n==null?void 0:n.value,l=>{o.value=l});let i=n==null?void 0:n.value;return{inputNum:o,jumpPageChange:l=>{i=+l,o.value=l,isNaN(l)&&setTimeout(()=>{o.value=n==null?void 0:n.value},300)},jump:l=>{i>(r==null?void 0:r.value)||(l==="btn"||l.key==="Enter")&&(s==null?void 0:s.value)!==i&&a("changeCursorEmit",i)}}},render(){const{goToText:t,size:a,inputNum:n,jumpPageChange:r,jump:s,showJumpButton:o}=this,i={class:["devui-pagination-input",a?"devui-pagination-input-"+a:""],size:a,modelValue:String(n),"onUpdate:modelValue":r,onKeydown:s};return e.createVNode("div",{class:"devui-jump-container"},[t,e.createVNode(e.resolveComponent("d-input"),i,null),t==="\u8DF3\u81F3"&&"\u9875",o&&e.createVNode("div",{class:["devui-jump-button",a?"devui-jump-size-"+a:"devui-jump-size-default"],onClick:s.bind(null,"btn"),title:t},[e.createVNode("div",{class:"devui-pagination-go"},null)])])}});const A={size:{type:String,default:""},preLink:String,nextLink:String,lite:Boolean,cursor:Number,maxItems:Number,totalPages:Number,onChangeCursorEmit:Function,showTruePageIndex:Boolean};var U=e.defineComponent({props:A,emits:["changeCursorEmit"],setup(t,{emit:a}){return{showPageNum:e.computed(()=>F(t.cursor,t.maxItems,t.totalPages)),changeCursor:i=>{if(isNaN(i))return;const c=i<1?1:i>t.totalPages?t.totalPages:i|0;a("changeCursorEmit",c)},prevChange:i=>{if(t.cursor>1){const c=i===-1?t.cursor-1:i;a("changeCursorEmit",c)}},nextChange:i=>{if(t.cursor<t.totalPages){const c=i===-1?t.cursor+1:i;a("changeCursorEmit",c)}}}},render(){const{size:t,preLink:a,nextLink:n,lite:r,changeCursor:s,cursor:o,showPageNum:i,prevChange:c,totalPages:u,nextChange:l,showTruePageIndex:P}=this;return e.createVNode("ul",{class:["devui-pagination-list",t?"devui-pagination-"+t:""]},[e.createVNode("li",{onClick:c.bind(null,-1),class:{"devui-pagination-item":!0,disabled:o<=1}},[e.createVNode("a",{innerHTML:a,class:"devui-pagination-link"},null)]),!r&&e.createVNode(e.Fragment,null,[e.createVNode("li",{onClick:s.bind(null,1),class:{"devui-pagination-item":!0,active:o===1}},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("1")])]),i[0]>2&&e.createVNode("li",{onClick:c.bind(null,i[0]-1),class:"devui-pagination-item"},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("...")])]),(()=>{const m=[];for(let p=i[0];p<=i[1];p++)m.push(e.createVNode("li",{onClick:s.bind(null,p),key:p,class:{"devui-pagination-item":!0,active:o===p}},[e.createVNode("a",{class:"devui-pagination-link"},[p])]));return m})(),i[1]<u-1&&e.createVNode("li",{onClick:l.bind(null,i[1]+1),class:"devui-pagination-item"},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("...")])]),i[1]<u&&e.createVNode("li",{onClick:s.bind(null,u),class:{"devui-pagination-item":!0,active:o===u}},[e.createVNode("a",{class:"devui-pagination-link"},[u])]),P&&o>u&&u>0&&e.createVNode(e.Fragment,null,[o>u+1&&e.createVNode("li",{class:"devui-pagination-item disabled"},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("...")])]),e.createVNode("li",{class:"devui-pagination-item disabled active"},[e.createVNode("a",{class:"devui-pagination-link"},[o])])])]),e.createVNode("li",{onClick:l.bind(null,-1),class:{"devui-pagination-item":!0,disabled:o>=u}},[e.createVNode("a",{innerHTML:n,class:"devui-pagination-link"},null)])])}}),X="",V=e.defineComponent({name:"DPagination",components:{ConfigMenu:H,JumpPage:J,PageNumBtn:U},props:y,emits:["pageIndexChange","pageSizeChange","update:pageSize","update:pageIndex"],setup(t,{emit:a}){const n=e.computed(()=>Math.ceil(t.total/t.pageSize)),r=e.computed(()=>L(n.value)),s=e.computed({get(){return!t.showTruePageIndex&&t.pageIndex>n.value?(a("update:pageIndex",n.value||1),n.value||1):t.pageIndex||1},set(l){a("update:pageIndex",l)}}),o=e.computed({get(){return t.pageSize},set(l){a("update:pageSize",l)}}),i=l=>{s.value=l,a("pageIndexChange",l)};return{cursor:s,totalPages:n,changeCursorEmit:i,currentPageSize:o,pageSizeChange:l=>{o.value=l.value,t.autoFixPageIndex&&e.nextTick(()=>{s.value>n.value&&i(n.value)}),a("pageSizeChange",l.value)},litePageOptions:r,litePageIndexChange:l=>{i(l.value)}}},render(){const{total:t,pageIndex:a,pageSizeOptions:n,pageSizeDirection:r,preLink:s,nextLink:o,size:i,canJumpPage:c,canChangePageSize:u,canViewTotal:l,totalItemText:P,goToText:m,maxItems:p,showJumpButton:q,showTruePageIndex:K,lite:f,showPageSelector:v,haveConfigMenu:R,autoHide:G,$slots:S,cursor:x,totalPages:T,currentPageSize:w,pageSizeChange:B,changeCursorEmit:E,litePageOptions:Q,litePageIndexChange:W}=this;return G&&Math.min(...n)>t?null:e.createVNode("div",{class:"devui-pagination"},[u&&!f&&e.createVNode("div",{class:["devui-page-size",i?"devui-page-size-"+i:""]},[e.createVNode(e.resolveComponent("d-select"),{options:n,modelValue:w,onValueChange:B,pageSizeDirection:r},null)]),(!f||f&&v)&&l&&e.createVNode("div",{class:"devui-total-size"},[P,e.createTextVNode(": "),t]),f&&v&&e.createVNode("div",{class:"devui-page-size"},[e.createVNode(e.resolveComponent("d-select"),{options:Q,disabled:t===0,modelValue:x,onValueChange:W,pageSizeDirection:r},null)]),e.createVNode(e.resolveComponent("page-num-btn"),e.mergeProps({cursor:x,totalPages:T,size:i,lite:f,maxItems:p,preLink:s,nextLink:o,showTruePageIndex:K},{onChangeCursorEmit:E}),null),c&&!f&&e.createVNode(e.resolveComponent("jump-page"),e.mergeProps({goToText:m,size:i,pageIndex:a,totalPages:T,cursor:x,showJumpButton:q},{onChangeCursorEmit:E}),null),f&&R&&e.createVNode(e.resolveComponent("config-menu"),{currentPageSize:w,pageSizeChange:B,pageSizeOptions:n},{default:()=>{var I;return[(I=S.default)==null?void 0:I.call(S)]}})])}}),_={title:"Pagination \u5206\u9875",category:"\u5BFC\u822A",status:"100%",install(t){t.component(V.name,V)}};d.Pagination=V,d.default=_,d.paginationProps=y,Object.defineProperty(d,"__esModule",{value:!0}),d[Symbol.toStringTag]="Module"});
1
+ (function(g,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(g=typeof globalThis!="undefined"?globalThis:g||self,e(g.index={},g.Vue))})(this,function(g,e){"use strict";const k={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:"\u6240\u6709\u6761\u76EE"},goToText:{type:String,default:"\u8DF3\u81F3"},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}},B=(t,a,n)=>{const r=t,u=a;if(u>=n)return[2,n];const o=u-2;let i=r-(o>>1),l=r+(o-1>>1);return i<2&&(i=2,l=u-2),l>n&&(i=n-u+3,l=n),[i,l]};function I(t){return new Array(t||1).fill(0).map((a,n)=>({name:`${n+1}/${t}`,value:n+1}))}function V(t,a,n){document.addEventListener?t&&a&&n&&t.addEventListener(a,n,!1):t&&a&&n&&t.attachEvent("on"+a,n)}function E(t,a,n){document.removeEventListener?t&&a&&n&&t.removeEventListener(a,n,!1):t&&a&&n&&t.detachEvent("on"+a,n)}const F=typeof window!="undefined",p=Symbol("@@clickoutside"),P=new Map;let z,x=0,b=!0;function T(t,a,n){return F&&b&&(b=!1,V(document,"mousedown",r=>{z=r}),V(document,"mouseup",r=>{for(const[u,o]of P)o[p].documentHandler(r,z)})),function(r,u){!n||!a.instance||!r.target||!u.target||t.contains(r.target)||t.contains(u.target)||t===r.target||t[p].bindingFn&&t[p].bindingFn()}}const L={beforeMount:function(t,a,n){x++,P.set(x,t),t[p]={nid:x,documentHandler:T(t,a,n),bindingFn:a.value}},updated:function(t,a,n){t[p].documentHandler=T(t,a,n),t[p].bindingFn=a.value},unmounted:function(t){P.delete(t[p].nid),delete t[p]}};var j=e.defineComponent({directives:{clickoutside:L},props:{currentPageSize:Number,pageSizeChange:Function,pageSizeOptions:Array},setup(){const t=e.ref(null),a=e.ref(!1),n=r=>{a.value=a.value?!1:!!r};return e.onMounted(()=>{V(t.value,"click",n)}),e.onUnmounted(()=>{E(t.value,"click",n)}),{paginationConfig:t,isShowConfig:a,closeConfigMenu:n}},render(){var i;const{closeConfigMenu:t,currentPageSize:a,pageSizeChange:n,pageSizeOptions:r,isShowConfig:u,$slots:o}=this;return e.withDirectives(e.createVNode("div",{class:"devui-pagination-config",ref:"paginationConfig"},[e.createVNode("div",{class:"devui-setup-icon"},[e.createVNode("i",{class:"icon-setting",style:"font-weight: bold;"},null)]),u&&e.createVNode("div",{class:"devui-config-container"},[(i=o.default)==null?void 0:i.call(o),e.createVNode("div",{class:"pagination-config-item"},[e.createVNode("div",{class:"config-item-title"},[e.createTextVNode("\u6BCF\u9875\u6761\u6570")]),e.createVNode("div",{class:"devui-page-number"},[r.map(l=>e.createVNode("div",{class:{choosed:l===a},key:l,onClick:n.bind(null,{value:l})},[l]))])])])]),[[e.resolveDirective("clickoutside"),t]])}});const M={goToText:String,size:{type:String,default:""},pageIndex:Number,showJumpButton:Boolean,totalPages:Number,cursor:Number,onChangeCursorEmit:Function};var D=e.defineComponent({props:M,emits:["changeCursorEmit"],setup(t,{emit:a}){const{pageIndex:n,totalPages:r,cursor:u}=e.toRefs(t),o=e.ref(n==null?void 0:n.value);e.watch(()=>n==null?void 0:n.value,c=>{o.value=c});let i=n==null?void 0:n.value;return{inputNum:o,jumpPageChange:c=>{i=+c,o.value=c,isNaN(c)&&setTimeout(()=>{o.value=n==null?void 0:n.value},300)},jump:c=>{i>(r==null?void 0:r.value)||(c==="btn"||c.key==="Enter")&&(u==null?void 0:u.value)!==i&&a("changeCursorEmit",i)}}},render(){const{goToText:t,size:a,inputNum:n,jumpPageChange:r,jump:u,showJumpButton:o}=this,i={class:["devui-pagination-input",a?"devui-pagination-input-"+a:""],size:a,modelValue:String(n),"onUpdate:modelValue":r,onKeydown:u};return e.createVNode("div",{class:"devui-jump-container"},[t,e.createVNode(e.resolveComponent("d-input"),i,null),t==="\u8DF3\u81F3"&&"\u9875",o&&e.createVNode("div",{class:["devui-jump-button",a?"devui-jump-size-"+a:"devui-jump-size-default"],onClick:u.bind(null,"btn"),title:t},[e.createVNode("div",{class:"devui-pagination-go"},null)])])}});const H={size:{type:String,default:""},preLink:String,nextLink:String,lite:Boolean,cursor:Number,maxItems:Number,totalPages:Number,onChangeCursorEmit:Function,showTruePageIndex:Boolean};var J=e.defineComponent({props:H,emits:["changeCursorEmit"],setup(t,{emit:a}){return{showPageNum:e.computed(()=>B(t.cursor,t.maxItems,t.totalPages)),changeCursor:i=>{if(isNaN(i))return;const l=i<1?1:i>t.totalPages?t.totalPages:i|0;a("changeCursorEmit",l)},prevChange:i=>{if(t.cursor>1){const l=i===-1?t.cursor-1:i;a("changeCursorEmit",l)}},nextChange:i=>{if(t.cursor<t.totalPages){const l=i===-1?t.cursor+1:i;a("changeCursorEmit",l)}}}},render(){const{size:t,preLink:a,nextLink:n,lite:r,changeCursor:u,cursor:o,showPageNum:i,prevChange:l,totalPages:s,nextChange:c,showTruePageIndex:v}=this;return e.createVNode("ul",{class:["devui-pagination-list",t?"devui-pagination-"+t:""]},[e.createVNode("li",{onClick:l.bind(null,-1),class:{"devui-pagination-item":!0,disabled:o<=1}},[e.createVNode("a",{innerHTML:a,class:"devui-pagination-link"},null)]),!r&&e.createVNode(e.Fragment,null,[e.createVNode("li",{onClick:u.bind(null,1),class:{"devui-pagination-item":!0,active:o===1}},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("1")])]),i[0]>2&&e.createVNode("li",{onClick:l.bind(null,i[0]-1),class:"devui-pagination-item"},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("...")])]),(()=>{const h=[];for(let f=i[0];f<=i[1];f++)h.push(e.createVNode("li",{onClick:u.bind(null,f),key:f,class:{"devui-pagination-item":!0,active:o===f}},[e.createVNode("a",{class:"devui-pagination-link"},[f])]));return h})(),i[1]<s-1&&e.createVNode("li",{onClick:c.bind(null,i[1]+1),class:"devui-pagination-item"},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("...")])]),i[1]<s&&e.createVNode("li",{onClick:u.bind(null,s),class:{"devui-pagination-item":!0,active:o===s}},[e.createVNode("a",{class:"devui-pagination-link"},[s])]),v&&o>s&&s>0&&e.createVNode(e.Fragment,null,[o>s+1&&e.createVNode("li",{class:"devui-pagination-item disabled"},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("...")])]),e.createVNode("li",{class:"devui-pagination-item disabled active"},[e.createVNode("a",{class:"devui-pagination-link"},[o])])])]),e.createVNode("li",{onClick:c.bind(null,-1),class:{"devui-pagination-item":!0,disabled:o>=s}},[e.createVNode("a",{innerHTML:n,class:"devui-pagination-link"},null)])])}}),Y="",S=e.defineComponent({name:"DPagination",components:{ConfigMenu:j,JumpPage:D,PageNumBtn:J},props:k,emits:["pageIndexChange","pageSizeChange","update:pageSize","update:pageIndex"],setup(t,{emit:a,slots:n}){const{autoHide:r,pageSizeOptions:u,total:o,canChangePageSize:i,lite:l,size:s,pageSizeDirection:c,showPageSelector:v,canViewTotal:h,totalItemText:f,maxItems:A,preLink:U,nextLink:R,showTruePageIndex:_,canJumpPage:q,goToText:K,pageIndex:$,showJumpButton:G,haveConfigMenu:Q}=e.toRefs(t),m=e.computed(()=>Math.ceil(t.total/t.pageSize)),W=e.computed(()=>I(m.value)),C=e.computed({get(){return!t.showTruePageIndex&&t.pageIndex>m.value?(a("update:pageIndex",m.value||1),m.value||1):t.pageIndex||1},set(d){a("update:pageIndex",d)}}),y=e.computed({get(){return t.pageSize},set(d){a("update:pageSize",d)}}),N=d=>{C.value=d,a("pageIndexChange",d)},w=d=>{y.value=d.value,t.autoFixPageIndex&&e.nextTick(()=>{C.value>m.value&&N(m.value)}),a("pageSizeChange",d.value)},X=d=>{N(d.value)};return()=>r.value&&Math.min(...u.value)>o.value?null:e.createVNode("div",{class:"devui-pagination"},[i.value&&!l.value&&e.createVNode("div",{class:["devui-page-size",s.value?"devui-page-size-"+s.value:""]},[e.createVNode(e.resolveComponent("d-select"),{options:u.value,modelValue:y.value,onValueChange:w,pageSizeDirection:c.value},null)]),(!l.value||l.value&&v.value)&&h.value&&e.createVNode("div",{class:"devui-total-size"},[f.value,e.createTextVNode(": "),o.value]),l.value&&v.value&&e.createVNode("div",{class:"devui-page-size"},[e.createVNode(e.resolveComponent("d-select"),{options:W.value,disabled:o.value===0,modelValue:C.value,onValueChange:X,pageSizeDirection:c.value},null)]),e.createVNode(e.resolveComponent("page-num-btn"),e.mergeProps({cursor:C.value,totalPages:m.value,size:s.value,lite:l.value,maxItems:A.value,preLink:U.value,nextLink:R.value,showTruePageIndex:_.value},{onChangeCursorEmit:N}),null),q.value&&!l.value&&e.createVNode(e.resolveComponent("jump-page"),e.mergeProps({goToText:K.value,size:s.value,pageIndex:$.value,totalPages:m.value,cursor:C.value,showJumpButton:G.value},{onChangeCursorEmit:N}),null),l.value&&Q.value&&e.createVNode(e.resolveComponent("config-menu"),{currentPageSize:y.value,pageSizeChange:w,pageSizeOptions:u.value},{default:()=>{var d;return[(d=n.default)==null?void 0:d.call(n)]}})])}}),O={title:"Pagination \u5206\u9875",category:"\u5BFC\u822A",status:"100%",install(t){t.component(S.name,S)}};g.Pagination=S,g.default=O,g.paginationProps=k,Object.defineProperty(g,"__esModule",{value:!0}),g[Symbol.toStringTag]="Module"});
@@ -1 +1 @@
1
- @charset "UTF-8";.devui-pagination{font-size:var(--devui-font-size, 12px)}.devui-pagination .devui-page-size{display:inline-block;max-width:100px;line-height:24px;margin:0 12px 0 0;position:relative;vertical-align:middle}.devui-pagination .devui-page-size.devui-page-size-sm{max-width:80px}.devui-pagination .devui-page-size.devui-page-size-sm .devui-select-input{height:24px}.devui-pagination .devui-page-size.devui-page-size-lg{max-width:100px}.devui-pagination .devui-page-size.devui-page-size-lg .devui-select-input,.devui-pagination .devui-page-size.devui-page-size-lg .devui-select-item{height:46px}.devui-pagination .devui-select-input{height:26px}.devui-pagination .devui-total-size{display:inline-block;position:relative;vertical-align:middle;margin:0 12px 0 0;color:var(--devui-text-weak, #575d6c)}.devui-pagination .devui-pagination-list,.devui-pagination .devui-pagination-item{padding:0;margin:0;list-style:none}.devui-pagination a{text-decoration:none;color:#3eaf7c}.devui-pagination .devui-pagination-list{vertical-align:middle;display:inline-flex;align-items:center}.devui-pagination .devui-pagination-list li.devui-pagination-item{cursor:pointer}.devui-pagination .devui-pagination-list li.devui-pagination-item.active a.devui-pagination-link{text-decoration:none;background-color:var(--devui-list-item-active-bg, #5e7ce0);color:var(--devui-list-item-active-text, #ffffff)}.devui-pagination .devui-pagination-list li.devui-pagination-item.disabled a.devui-pagination-link{cursor:not-allowed;opacity:.5;background-color:#fff;color:var(--devui-text-weak, #575d6c)}.devui-pagination .devui-pagination-list li.devui-pagination-item .devui-pagination-link{margin-left:5px;padding:3px 7px;line-height:1.5;border-radius:var(--devui-border-radius, 2px);color:var(--devui-text-weak, #575d6c);display:flex;align-items:center;transition:background-color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-pagination .devui-pagination-list li.devui-pagination-item .devui-pagination-link:hover{text-decoration:none;background-color:var(--devui-list-item-hover-bg, #f2f5fc);color:var(--devui-list-item-hover-text, #526ecc)}.devui-pagination .devui-pagination-sm>li.devui-pagination-item>a.devui-pagination-link{padding:0 5px;min-width:18px;height:22px;line-height:1.5;font-size:var(--devui-font-size-sm, 12px)}.devui-pagination .devui-pagination-lg>li.devui-pagination-item>a.devui-pagination-link{padding:0 12px;height:38px;font-size:var(--devui-font-size-lg, 14px);line-height:1.5}.devui-pagination .devui-jump-container{display:inline-flex;position:relative;margin:0 12px;vertical-align:middle;align-items:center}.devui-pagination .devui-jump-container .devui-pagination-input{display:inline-block;width:42px;vertical-align:middle;margin:0 3px}.devui-pagination .devui-jump-container .devui-pagination-input-lg{width:56px}.devui-pagination .devui-jump-button{display:inline-flex;vertical-align:middle;width:24px;height:24px;border-radius:var(--devui-border-radius, 2px);border:1px solid var(--devui-line, #adb0b8);cursor:pointer;margin-left:4px;align-items:center;justify-content:center}.devui-pagination .devui-jump-button .devui-pagination-go{width:0;height:0;border-top:6px solid transparent;border-left:6px solid var(--devui-icon-text, #252b3a);border-bottom:6px solid transparent}.devui-pagination .devui-jump-button:hover{border-color:var(--devui-brand-active, #526ecc)}.devui-pagination .devui-jump-button:hover .devui-pagination-go{border-left-color:var(--devui-brand-active, #526ecc)}.devui-pagination .devui-jump-size-default{width:28px;height:28px}.devui-pagination .devui-jump-size-default .devui-pagination-go{width:0;height:0;border-top:8px solid transparent;border-left:10px solid var(--devui-icon-text, #252b3a);border-bottom:8px solid transparent}.devui-pagination .devui-jump-size-sm{width:24px;height:24px}.devui-pagination .devui-jump-size-sm .devui-pagination-go{width:0;height:0;border-top:6px solid transparent;border-left:6px solid var(--devui-icon-text, #252b3a);border-bottom:6px solid transparent}.devui-pagination .devui-jump-size-sm .devui-pagination-link{height:30px;line-height:32px}.devui-pagination .devui-jump-size-lg{width:46px;height:46px}.devui-pagination .devui-jump-size-lg .devui-pagination-go{width:0;height:0;border-top:14px solid transparent;border-left:14px solid var(--devui-icon-text, #252b3a);border-bottom:14px solid transparent}.devui-pagination .devui-pagination-config{color:var(--devui-text, #252b3a);position:relative;display:inline-block;vertical-align:middle;margin:0 4px}.devui-pagination .devui-setup-icon{line-height:30px;cursor:pointer;display:flex}.devui-pagination .devui-config-container{padding:4px 0;box-shadow:var(--devui-shadow-connected-overlay, 0 2px 8px 0) var(--devui-shadow, rgba(0, 0, 0, .2));border-radius:var(--devui-border-radius, 2px);width:150px;background-color:var(--devui-connected-overlay-bg, #ffffff);line-height:26px;position:absolute;left:-136px;top:28px;cursor:auto;z-index:var(--devui-z-index-dropdown, 1052);user-select:none}.devui-pagination .pagination-config-item{padding-bottom:8px;padding-top:4px;border-bottom:1px solid var(--devui-line, #adb0b8)}.devui-pagination .pagination-config-item:last-child{border-bottom:none}.devui-pagination .config-item-title{color:var(--devui-line, #adb0b8);padding-left:8px;font-size:var(--devui-font-size, 12px);line-height:1.5}.devui-pagination .devui-page-number{padding-left:8px;margin-top:4px;display:flex}.devui-pagination .devui-page-number div{color:var(--devui-text, #252b3a);cursor:pointer;border-top:1px solid var(--devui-line, #adb0b8);border-bottom:1px solid var(--devui-line, #adb0b8);border-right:1px solid var(--devui-line, #adb0b8);text-align:center;height:26px;width:26px}.devui-pagination .devui-page-number div:first-child{border-left:1px solid var(--devui-line, #adb0b8)}.devui-pagination .devui-page-number div:hover{background-color:var(--devui-list-item-hover-bg, #f2f5fc);color:var(--devui-list-item-hover-text, #526ecc)}.devui-pagination .devui-page-number div.choosed{color:var(--devui-list-item-active-text, #ffffff);background-color:var(--devui-list-item-active-bg, #5e7ce0)!important;cursor:auto!important}.devui-pagination .config-item-words{color:var(--devui-text, #252b3a);padding-left:8px;font-size:var(--devui-font-size, 12px);margin-top:4px}.devui-pagination .config-item-words:hover{background-color:var(--devui-area, #f8f8f8);cursor:pointer}
1
+ @charset "UTF-8";.devui-pagination{font-size:var(--devui-font-size, 12px)}.devui-pagination .devui-page-size{display:inline-block;max-width:100px;line-height:24px;margin:0 12px 0 0;position:relative;vertical-align:middle}.devui-pagination .devui-page-size.devui-page-size-sm{max-width:80px}.devui-pagination .devui-page-size.devui-page-size-sm .devui-select-input{height:24px}.devui-pagination .devui-page-size.devui-page-size-lg{max-width:100px}.devui-pagination .devui-page-size.devui-page-size-lg .devui-select-input,.devui-pagination .devui-page-size.devui-page-size-lg .devui-select-item{height:46px}.devui-pagination .devui-select-input{height:26px}.devui-pagination .devui-total-size{display:inline-block;position:relative;vertical-align:middle;margin:0 12px 0 0;color:var(--devui-text-weak, #575d6c)}.devui-pagination .devui-pagination-list,.devui-pagination .devui-pagination-item{padding:0;margin:0;list-style:none}.devui-pagination a{text-decoration:none;color:#3eaf7c}.devui-pagination .devui-pagination-list{vertical-align:middle;display:inline-flex;align-items:center}.devui-pagination .devui-pagination-list li.devui-pagination-item{cursor:pointer}.devui-pagination .devui-pagination-list li.devui-pagination-item.active a.devui-pagination-link{text-decoration:none;background-color:var(--devui-list-item-active-bg, #5e7ce0);color:var(--devui-list-item-active-text, #ffffff)}.devui-pagination .devui-pagination-list li.devui-pagination-item.disabled a.devui-pagination-link{cursor:not-allowed;opacity:.5;background-color:#fff;color:var(--devui-text-weak, #575d6c)}.devui-pagination .devui-pagination-list li.devui-pagination-item .devui-pagination-link{margin-left:5px;padding:3px 7px;line-height:1.5;border-radius:var(--devui-border-radius, 2px);color:var(--devui-text-weak, #575d6c);display:flex;align-items:center;transition:background-color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-pagination .devui-pagination-list li.devui-pagination-item .devui-pagination-link:hover{text-decoration:none;background-color:var(--devui-list-item-hover-bg, #f2f5fc);color:var(--devui-list-item-hover-text, #526ecc)}.devui-pagination .devui-pagination-sm>li.devui-pagination-item>a.devui-pagination-link{padding:0 5px;min-width:18px;height:22px;line-height:1.5;font-size:var(--devui-font-size-sm, 12px)}.devui-pagination .devui-pagination-lg>li.devui-pagination-item>a.devui-pagination-link{padding:0 12px;height:38px;font-size:var(--devui-font-size-lg, 14px);line-height:1.5}.devui-pagination .devui-jump-container{display:inline-flex;position:relative;margin:0 12px;vertical-align:middle;align-items:center}.devui-pagination .devui-jump-container .devui-pagination-input{display:inline-block;width:42px;vertical-align:middle;margin:0 3px}.devui-pagination .devui-jump-container .devui-pagination-input-lg{width:56px}.devui-pagination .devui-jump-button{display:inline-flex;vertical-align:middle;width:24px;height:24px;border-radius:var(--devui-border-radius, 2px);border:1px solid var(--devui-line, #adb0b8);cursor:pointer;margin-left:4px;align-items:center;justify-content:center}.devui-pagination .devui-jump-button .devui-pagination-go{width:0;height:0;border-top:6px solid transparent;border-left:6px solid var(--devui-icon-text, #252b3a);border-bottom:6px solid transparent}.devui-pagination .devui-jump-button:hover{border-color:var(--devui-brand-active, #526ecc)}.devui-pagination .devui-jump-button:hover .devui-pagination-go{border-left-color:var(--devui-brand-active, #526ecc)}.devui-pagination .devui-jump-size-default{width:28px;height:28px}.devui-pagination .devui-jump-size-default .devui-pagination-go{width:0;height:0;border-top:8px solid transparent;border-left:10px solid var(--devui-icon-text, #252b3a);border-bottom:8px solid transparent}.devui-pagination .devui-jump-size-sm{width:24px;height:24px}.devui-pagination .devui-jump-size-sm .devui-pagination-go{width:0;height:0;border-top:6px solid transparent;border-left:6px solid var(--devui-icon-text, #252b3a);border-bottom:6px solid transparent}.devui-pagination .devui-jump-size-sm .devui-pagination-link{height:30px;line-height:32px}.devui-pagination .devui-jump-size-lg{width:46px;height:46px}.devui-pagination .devui-jump-size-lg .devui-pagination-go{width:0;height:0;border-top:14px solid transparent;border-left:14px solid var(--devui-icon-text, #252b3a);border-bottom:14px solid transparent}.devui-pagination .devui-pagination-config{color:var(--devui-text, #252b3a);position:relative;display:inline-block;vertical-align:middle;margin:0 4px}.devui-pagination .devui-setup-icon{line-height:30px;cursor:pointer;display:flex}.devui-pagination .devui-config-container{padding:4px 0;box-shadow:var(--devui-shadow-connected-overlay, 0 2px 8px 0) var(--devui-shadow, rgba(37, 43, 58, .2));border-radius:var(--devui-border-radius, 2px);width:150px;background-color:var(--devui-connected-overlay-bg, #ffffff);line-height:26px;position:absolute;left:-136px;top:28px;cursor:auto;z-index:var(--devui-z-index-dropdown, 1052);user-select:none}.devui-pagination .pagination-config-item{padding-bottom:8px;padding-top:4px;border-bottom:1px solid var(--devui-line, #adb0b8)}.devui-pagination .pagination-config-item:last-child{border-bottom:none}.devui-pagination .config-item-title{color:var(--devui-line, #adb0b8);padding-left:8px;font-size:var(--devui-font-size, 12px);line-height:1.5}.devui-pagination .devui-page-number{padding-left:8px;margin-top:4px;display:flex}.devui-pagination .devui-page-number div{color:var(--devui-text, #252b3a);cursor:pointer;border-top:1px solid var(--devui-line, #adb0b8);border-bottom:1px solid var(--devui-line, #adb0b8);border-right:1px solid var(--devui-line, #adb0b8);text-align:center;height:26px;width:26px}.devui-pagination .devui-page-number div:first-child{border-left:1px solid var(--devui-line, #adb0b8)}.devui-pagination .devui-page-number div:hover{background-color:var(--devui-list-item-hover-bg, #f2f5fc);color:var(--devui-list-item-hover-text, #526ecc)}.devui-pagination .devui-page-number div.choosed{color:var(--devui-list-item-active-text, #ffffff);background-color:var(--devui-list-item-active-bg, #5e7ce0)!important;cursor:auto!important}.devui-pagination .config-item-words{color:var(--devui-text, #252b3a);padding-left:8px;font-size:var(--devui-font-size, 12px);margin-top:4px}.devui-pagination .config-item-words:hover{background-color:var(--devui-area, #f8f8f8);cursor:pointer}
@@ -18,7 +18,7 @@ var __spreadValues = (a, b) => {
18
18
  };
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
20
  import { defineComponent, createVNode, Teleport, Transition, renderSlot, isVNode, computed, onMounted, watch, onUnmounted, ref, unref, nextTick, mergeProps, toRefs, Fragment } from "vue";
21
- import { shift, offset, autoPlacement, arrow, computePosition } from "@floating-ui/dom";
21
+ import { offset, autoPlacement, arrow, shift, computePosition } from "@floating-ui/dom";
22
22
  var baseOverlay = "";
23
23
  function _isSlot(s) {
24
24
  return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
@@ -165,6 +165,9 @@ const flexibleOverlayProps = {
165
165
  type: [Number, Object],
166
166
  default: 8
167
167
  },
168
+ shiftOffset: {
169
+ type: Number
170
+ },
168
171
  align: {
169
172
  type: String,
170
173
  default: null
@@ -232,7 +235,6 @@ function useOverlay(props, emit) {
232
235
  const overlayEl = unref(overlayRef.value);
233
236
  const arrowEl = unref(arrowRef.value);
234
237
  const middleware = [
235
- shift(),
236
238
  offset(props.offset),
237
239
  autoPlacement({
238
240
  alignment: props.align,
@@ -240,12 +242,22 @@ function useOverlay(props, emit) {
240
242
  })
241
243
  ];
242
244
  props.showArrow && middleware.push(arrow({ element: arrowEl }));
245
+ props.shiftOffset !== void 0 && middleware.push(shift());
243
246
  const { x, y, placement, middlewareData } = await computePosition(hostEl, overlayEl, {
244
247
  strategy: "fixed",
245
248
  middleware
246
249
  });
250
+ let applyX = x;
251
+ let applyY = y;
252
+ if (props.shiftOffset !== void 0) {
253
+ const { x: shiftX, y: shiftY } = middlewareData.shift;
254
+ shiftX < 0 && (applyX -= props.shiftOffset);
255
+ shiftX > 0 && (applyX += props.shiftOffset);
256
+ shiftY < 0 && (applyY -= props.shiftOffset);
257
+ shiftY > 0 && (applyY += props.shiftOffset);
258
+ }
247
259
  emit("positionChange", placement);
248
- Object.assign(overlayEl.style, { top: `${y}px`, left: `${x}px` });
260
+ Object.assign(overlayEl.style, { top: `${applyY}px`, left: `${applyX}px` });
249
261
  props.showArrow && updateArrowPosition(arrowEl, placement, middlewareData.arrow, overlayEl);
250
262
  };
251
263
  watch(() => props.modelValue, () => {