vue-devui 1.0.0-rc.7 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/README.md +163 -146
  2. package/alert/index.es.js +46 -15
  3. package/alert/index.umd.js +1 -1
  4. package/alert/style.css +1 -1
  5. package/auto-complete/index.es.js +8230 -231
  6. package/auto-complete/index.umd.js +29 -5
  7. package/auto-complete/style.css +1 -1
  8. package/avatar/index.es.js +81 -70
  9. package/avatar/index.umd.js +1 -1
  10. package/avatar/style.css +1 -1
  11. package/badge/index.es.js +34 -4
  12. package/badge/index.umd.js +1 -1
  13. package/badge/style.css +1 -1
  14. package/button/index.es.js +5706 -98
  15. package/button/index.umd.js +27 -1
  16. package/button/style.css +1 -1
  17. package/card/index.es.js +38 -13
  18. package/card/index.umd.js +1 -1
  19. package/card/style.css +1 -1
  20. package/checkbox/index.es.js +8066 -245
  21. package/checkbox/index.umd.js +27 -1
  22. package/checkbox/style.css +1 -1
  23. package/{date-picker → collapse}/index.d.ts +0 -0
  24. package/collapse/index.es.js +213 -0
  25. package/collapse/index.umd.js +1 -0
  26. package/{date-picker → collapse}/package.json +1 -1
  27. package/collapse/style.css +1 -0
  28. package/countdown/index.es.js +56 -13
  29. package/countdown/index.umd.js +1 -1
  30. package/date-picker-pro/index.d.ts +7 -0
  31. package/date-picker-pro/index.es.js +12020 -0
  32. package/date-picker-pro/index.umd.js +27 -0
  33. package/date-picker-pro/package.json +7 -0
  34. package/date-picker-pro/style.css +1 -0
  35. package/drawer/index.es.js +29 -4
  36. package/drawer/index.umd.js +1 -1
  37. package/drawer/style.css +1 -1
  38. package/dropdown/index.es.js +178 -142
  39. package/dropdown/index.umd.js +1 -1
  40. package/dropdown/style.css +1 -1
  41. package/editable-select/index.es.js +742 -107
  42. package/editable-select/index.umd.js +1 -1
  43. package/editable-select/style.css +1 -1
  44. package/form/index.es.js +544 -316
  45. package/form/index.umd.js +17 -17
  46. package/form/style.css +1 -1
  47. package/fullscreen/index.es.js +28 -4
  48. package/fullscreen/index.umd.js +1 -1
  49. package/fullscreen/style.css +1 -1
  50. package/grid/index.es.js +71 -50
  51. package/grid/index.umd.js +1 -1
  52. package/grid/style.css +1 -1
  53. package/icon/index.es.js +184 -23
  54. package/icon/index.umd.js +1 -1
  55. package/icon/style.css +1 -0
  56. package/image-preview/index.es.js +34 -11
  57. package/image-preview/index.umd.js +1 -1
  58. package/image-preview/style.css +1 -1
  59. package/input/index.es.js +8250 -131
  60. package/input/index.umd.js +27 -1
  61. package/input/style.css +1 -1
  62. package/input-number/index.es.js +275 -203
  63. package/input-number/index.umd.js +1 -1
  64. package/input-number/style.css +1 -1
  65. package/layout/index.es.js +34 -6
  66. package/layout/index.umd.js +1 -1
  67. package/layout/style.css +1 -1
  68. package/loading/index.es.js +34 -10
  69. package/loading/index.umd.js +1 -1
  70. package/loading/style.css +1 -1
  71. package/mention/index.d.ts +7 -0
  72. package/mention/index.es.js +8310 -0
  73. package/mention/index.umd.js +36 -0
  74. package/mention/package.json +7 -0
  75. package/mention/style.css +1 -0
  76. package/menu/index.d.ts +7 -0
  77. package/menu/index.es.js +934 -0
  78. package/menu/index.umd.js +1 -0
  79. package/menu/package.json +7 -0
  80. package/menu/style.css +1 -0
  81. package/message/index.d.ts +7 -0
  82. package/message/index.es.js +538 -0
  83. package/message/index.umd.js +1 -0
  84. package/message/package.json +7 -0
  85. package/message/style.css +1 -0
  86. package/modal/index.es.js +359 -170
  87. package/modal/index.umd.js +1 -1
  88. package/modal/style.css +1 -1
  89. package/notification/index.es.js +236 -65
  90. package/notification/index.umd.js +1 -1
  91. package/notification/style.css +1 -1
  92. package/nuxt/components/ButtonGroup.js +3 -0
  93. package/nuxt/components/CheckboxButton.js +3 -0
  94. package/nuxt/components/Collapse.js +3 -0
  95. package/nuxt/components/CollapseItem.js +3 -0
  96. package/nuxt/components/DRangeDatePickerPro.js +3 -0
  97. package/nuxt/components/DatePickerPro.js +3 -0
  98. package/nuxt/components/Icon.js +1 -0
  99. package/nuxt/components/IconGroup.js +3 -0
  100. package/nuxt/components/LABEL_DATA.js +3 -0
  101. package/nuxt/components/Mention.js +3 -0
  102. package/nuxt/components/Menu.js +3 -0
  103. package/nuxt/components/MenuItem.js +3 -0
  104. package/nuxt/components/Message.js +3 -0
  105. package/nuxt/components/Option.js +3 -0
  106. package/nuxt/components/OptionGroup.js +3 -0
  107. package/nuxt/components/RadioButton.js +3 -0
  108. package/nuxt/components/Step.js +3 -0
  109. package/nuxt/components/Steps.js +3 -0
  110. package/nuxt/components/SubMenu.js +3 -0
  111. package/nuxt/components/TABLE_TOKEN.js +3 -0
  112. package/nuxt/components/TimePicker.js +3 -0
  113. package/nuxt/components/TimeSelect.js +3 -0
  114. package/nuxt/components/animationInjectionKey.js +3 -0
  115. package/nuxt/components/buttonGroupInjectionKey.js +3 -0
  116. package/nuxt/components/buttonGroupProps.js +3 -0
  117. package/nuxt/components/collapseItemProps.js +3 -0
  118. package/nuxt/components/collapseProps.js +3 -0
  119. package/nuxt/components/datePickerProCommonProps.js +3 -0
  120. package/nuxt/components/datePickerProPanelProps.js +3 -0
  121. package/nuxt/components/datePickerProProps.js +3 -0
  122. package/nuxt/components/iconProps.js +1 -0
  123. package/nuxt/components/mentionProps.js +3 -0
  124. package/nuxt/components/messageProps.js +3 -0
  125. package/nuxt/components/roundInjectionKey.js +3 -0
  126. package/nuxt/components/skeletonItemProps.js +3 -0
  127. package/nuxt/components/stepProps.js +3 -0
  128. package/nuxt/components/stepsProps.js +3 -0
  129. package/nuxt/components/svgIconProps.js +3 -0
  130. package/nuxt/components/tableProps.js +3 -0
  131. package/nuxt/components/timerPickerPanelProps.js +3 -0
  132. package/nuxt/components/treeNodeProps.js +3 -0
  133. package/overlay/index.es.js +84 -125
  134. package/overlay/index.umd.js +1 -1
  135. package/overlay/style.css +1 -1
  136. package/package.json +7 -3
  137. package/pagination/index.es.js +234 -39
  138. package/pagination/index.umd.js +1 -1
  139. package/pagination/style.css +1 -1
  140. package/panel/style.css +1 -1
  141. package/popover/index.es.js +274 -220
  142. package/popover/index.umd.js +13 -13
  143. package/popover/style.css +1 -1
  144. package/progress/index.es.js +31 -9
  145. package/progress/index.umd.js +3 -3
  146. package/progress/style.css +1 -1
  147. package/radio/index.es.js +7969 -152
  148. package/radio/index.umd.js +27 -1
  149. package/radio/style.css +1 -1
  150. package/rate/index.es.js +46 -14
  151. package/rate/index.umd.js +1 -1
  152. package/rate/style.css +1 -1
  153. package/result/index.es.js +169 -22
  154. package/result/index.umd.js +1 -1
  155. package/result/style.css +1 -1
  156. package/search/index.es.js +3823 -1090
  157. package/search/index.umd.js +18 -18
  158. package/search/style.css +1 -1
  159. package/select/index.es.js +9186 -478
  160. package/select/index.umd.js +27 -1
  161. package/select/style.css +1 -1
  162. package/skeleton/index.es.js +110 -259
  163. package/skeleton/index.umd.js +1 -1
  164. package/skeleton/style.css +1 -1
  165. package/slider/index.es.js +143 -146
  166. package/slider/index.umd.js +1 -1
  167. package/slider/style.css +1 -1
  168. package/splitter/index.es.js +433 -207
  169. package/splitter/index.umd.js +17 -17
  170. package/splitter/style.css +1 -1
  171. package/statistic/index.es.js +34 -16
  172. package/statistic/index.umd.js +1 -1
  173. package/statistic/style.css +1 -1
  174. package/status/index.es.js +26 -2
  175. package/status/index.umd.js +1 -1
  176. package/status/style.css +1 -1
  177. package/steps/index.d.ts +7 -0
  178. package/steps/index.es.js +386 -0
  179. package/steps/index.umd.js +1 -0
  180. package/steps/package.json +7 -0
  181. package/steps/style.css +1 -0
  182. package/style.css +1 -1
  183. package/switch/index.es.js +7802 -59
  184. package/switch/index.umd.js +27 -1
  185. package/switch/style.css +1 -1
  186. package/table/index.es.js +9769 -919
  187. package/table/index.umd.js +27 -1
  188. package/table/style.css +1 -1
  189. package/tabs/index.es.js +309 -96
  190. package/tabs/index.umd.js +1 -1
  191. package/tabs/style.css +1 -1
  192. package/tag/index.es.js +35 -7
  193. package/tag/index.umd.js +1 -1
  194. package/tag/style.css +1 -1
  195. package/textarea/index.es.js +7922 -78
  196. package/textarea/index.umd.js +35 -1
  197. package/textarea/style.css +1 -1
  198. package/time-picker/index.d.ts +7 -0
  199. package/time-picker/index.es.js +9549 -0
  200. package/time-picker/index.umd.js +27 -0
  201. package/time-picker/package.json +7 -0
  202. package/time-picker/style.css +1 -0
  203. package/time-select/index.d.ts +7 -0
  204. package/time-select/index.es.js +9585 -0
  205. package/time-select/index.umd.js +27 -0
  206. package/time-select/package.json +7 -0
  207. package/time-select/style.css +1 -0
  208. package/timeline/index.es.js +169 -22
  209. package/timeline/index.umd.js +1 -1
  210. package/timeline/style.css +1 -1
  211. package/tooltip/index.es.js +265 -212
  212. package/tooltip/index.umd.js +15 -15
  213. package/tooltip/style.css +1 -1
  214. package/tree/index.es.js +11343 -795
  215. package/tree/index.umd.js +27 -1
  216. package/tree/style.css +1 -1
  217. package/upload/index.es.js +494 -106
  218. package/upload/index.umd.js +1 -1
  219. package/upload/style.css +1 -1
  220. package/vue-devui.es.js +22849 -13614
  221. package/vue-devui.umd.js +30 -23
  222. package/date-picker/index.es.js +0 -1145
  223. package/date-picker/index.umd.js +0 -1
  224. package/date-picker/style.css +0 -1
  225. package/nuxt/components/DatePicker.js +0 -3
  226. package/nuxt/components/FormControl.js +0 -3
  227. package/nuxt/components/FormLabel.js +0 -3
  228. package/nuxt/components/StickSlider.js +0 -3
  229. package/nuxt/components/formControlProps.js +0 -3
  230. package/nuxt/components/overlayEmits.js +0 -3
  231. package/nuxt/components/overlayProps.js +0 -3
@@ -1 +1 @@
1
- var te=Object.defineProperty,oe=Object.defineProperties;var ne=Object.getOwnPropertyDescriptors;var L=Object.getOwnPropertySymbols;var le=Object.prototype.hasOwnProperty,ae=Object.prototype.propertyIsEnumerable;var R=(f,e,m)=>e in f?te(f,e,{enumerable:!0,configurable:!0,writable:!0,value:m}):f[e]=m,D=(f,e)=>{for(var m in e||(e={}))le.call(e,m)&&R(f,m,e[m]);if(L)for(var m of L(e))ae.call(e,m)&&R(f,m,e[m]);return f},M=(f,e)=>oe(f,ne(e));(function(f,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue"),require("@floating-ui/dom"),require("@vueuse/core")):typeof define=="function"&&define.amd?define(["exports","vue","@floating-ui/dom","@vueuse/core"],e):(f=typeof globalThis!="undefined"?globalThis:f||self,e(f.index={},f.Vue,f.dom,f.core))})(this,function(f,e,m,$){"use strict";const _={visible:{type:Boolean,default:!1},trigger:{type:String,default:"click"},closeScope:{type:String,default:"all"},position:{type:Array,default:["bottom"]},align:{type:String,default:null},offset:{type:[Number,Object],default:4},shiftOffset:{type:Number},closeOnMouseLeaveMenu:{type:Boolean,default:!1},showAnimation:{type:Boolean,default:!0},overlayClass:{type:String,default:""},destroyOnHide:{type:Boolean,default:!0}};function F(t){return t instanceof Element?t:t&&typeof t=="object"&&t.$el instanceof Element?t.$el:null}const O=new Map;function E(t,n,l){return t==null||t.addEventListener(n,l),()=>{t==null||t.removeEventListener(n,l)}}const H=({id:t,isOpen:n,origin:l,dropdownRef:i,props:a,emit:r})=>{let o=!1,u=!1;const{trigger:d,closeScope:s,closeOnMouseLeaveMenu:y}=e.toRefs(a),c=g=>{n.value=g,r("toggle",n.value)},w=async(g,k)=>{await new Promise(v=>setTimeout(v,50)),!(g==="origin"&&o||g==="dropdown"&&u)&&(k&&[...O.values()].reverse().forEach(v=>{setTimeout(()=>{var p;(p=v.toggle)==null||p.call(v)},0)}),c(!1))};e.watch([d,l,i],([g,k,v],p,V)=>{const h=F(k),P=[];setTimeout(()=>{P.push(E(document,"click",b=>{const B=[...O.values()];!n.value||s.value==="none"||(v==null?void 0:v.contains(b.target))&&s.value==="blank"||B.some(S=>{var C;return(C=S.toggleEl)==null?void 0:C.contains(b.target)})&&B.some(S=>{var C;return(C=S.menuEl)==null?void 0:C.contains(b.target)})||([...O.values()].reverse().forEach(S=>{setTimeout(()=>{var C,x;((C=S.toggleEl)==null?void 0:C.contains(b.target))||(x=S.toggle)==null||x.call(S)},0)}),o=!1)}))},0),g==="click"?P.push(E(h,"click",()=>c(!n.value)),E(v,"mouseleave",b=>{var B;y.value&&!((B=O.get(t).child)==null?void 0:B.contains(b.relatedTarget))&&w("dropdown",!0)})):g==="hover"&&P.push(E(h,"mouseenter",()=>{u=!0,c(!0)}),E(h,"mouseleave",()=>{u=!1,w("origin")}),E(v,"mouseenter",()=>{o=!0,n.value=!0}),E(v,"mouseleave",b=>{var B;o=!1,!(b.relatedTarget&&((h==null?void 0:h.contains(b.relatedTarget))||((B=O.get(t).child)==null?void 0:B.contains(b.relatedTarget))))&&w("dropdown",!0)})),V(()=>P.forEach(b=>b()))})};function q(t,n,l,i,a,r,o){const u=d=>{const s=d.offsetHeight;window.innerHeight-i.value.getBoundingClientRect().bottom>=s?r.value="bottom":r.value="top"};e.watch(n,(d,s)=>{s!==void 0&&(l.value=d,o("toggle",l.value))},{immediate:!0}),e.watch([l,a],([d,s])=>{var y;if(d){O.set(t,M(D({},O.get(t)),{menuEl:s,toggle:()=>{l.value=!1,o("toggle",l.value)}}));for(const c of O.values())((y=c.menuEl)==null?void 0:y.contains(i.value))&&(c.child=s)}s&&u(s)}),e.onMounted(()=>{O.set(t,{toggleEl:i.value})}),e.onUnmounted(()=>{O.delete(t)})}function U(t,n,l){const{showAnimation:i,overlayClass:a,destroyOnHide:r}=e.toRefs(t),o=e.ref(!1),u=e.ref(!1),d=e.computed(()=>({transformOrigin:n.value==="top"?"0% 100%":"0% 0%"})),s=e.computed(()=>({"fade-in-bottom":i.value&&l.value&&n.value==="bottom","fade-in-top":i.value&&l.value&&n.value==="top",[`${a.value}`]:!0})),y=c=>{n.value=c.includes("top")||c.includes("end")?"top":"bottom"};return e.watch(l,c=>{o.value=r.value?c:!0,u.value=c}),{overlayModelValue:o,overlayShowValue:u,styles:d,classes:s,handlePositionChange:y}}var re="";function Y(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!e.isVNode(t)}const z=e.defineComponent({setup(t,n){return()=>{let l;return e.createVNode(e.Teleport,{to:"#d-overlay-anchor"},{default:()=>[e.createVNode(e.Transition,{name:"devui-overlay-fade"},Y(l=e.renderSlot(n.slots,"default"))?l:{default:()=>[l]})]})}}}),X=M(D({},{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}}),{overlayStyle:{type:[String,Object],default:void 0}}),I=["update:visible","backdropClick"];function G(t,n){const l=e.computed(()=>["devui-overlay-background",t.backgroundClass,t.hasBackdrop?"devui-overlay-background__color":"devui-overlay-background__disabled"]),i=e.computed(()=>"devui-overlay"),a=o=>{var u;o.preventDefault(),(u=t.onBackdropClick)==null||u.call(t),t.backdropClose&&n.emit("update:visible",!1)},r=o=>o.cancelBubble=!0;return e.onMounted(()=>{const o=document.body,u=o.style.overflow,d=o.style.position;e.watch([()=>t.visible,()=>t.backgroundBlock],([s,y])=>{if(y){const c=o.getBoundingClientRect().y;s?(o.style.overflowY="scroll",o.style.position=s?"fixed":"",o.style.top=`${c}px`):(o.style.overflowY=u,o.style.position=d,o.style.top="",window.scrollTo(0,-c))}}),e.onUnmounted(()=>{document.body.style.overflow=u})}),{backgroundClass:l,overlayClass:i,handleBackdropClick:a,handleOverlayBubbleCancel:r}}var se="";e.defineComponent({name:"DFixedOverlay",props:X,emits:I,setup(t,n){const{backgroundClass:l,overlayClass:i,handleBackdropClick:a,handleOverlayBubbleCancel:r}=G(t,n);return()=>e.createVNode(z,null,{default:()=>[t.visible&&e.createVNode("div",{class:l.value,style:t.backgroundStyle,onClick:a},[e.createVNode("div",{class:i.value,style:t.overlayStyle,onClick:r},[e.renderSlot(n.slots,"default")])])]})}});const J={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 K(t){const n=/(auto|scroll|hidden)/;for(let l=t;l=l.parentElement;l.parentElement!==document.body){const i=window.getComputedStyle(l);if(n.test(i.overflow+i.overflowX+i.overflowY))return l}return window}function Q(t,n,l,i){let{x:a,y:r}=n;if(!t){const{width:o,height:u}=i;a&&l.includes("start")&&(a=12),a&&l.includes("end")&&(a=Math.round(o-24)),r&&l.includes("start")&&(r=10),r&&l.includes("end")&&(r=u-14)}return{x:a,y:r}}function W(t,n){const l=e.ref(),i=e.ref();let a=null;const r=(u,d,s,y)=>{const{x:c,y:w}=Q(t.isArrowCenter,s,d,y.getBoundingClientRect()),g={top:"bottom",right:"left",bottom:"top",left:"right"}[d.split("-")[0]];Object.assign(u.style,{left:c?`${c}px`:"",top:w?`${w}px`:"",right:"",bottom:"",[g]:"-4px"})},o=async()=>{const u=t.origin,d=e.unref(l.value),s=e.unref(i.value),y=[m.offset(t.offset),m.autoPlacement({alignment:t.align,allowedPlacements:t.position})];t.showArrow&&y.push(m.arrow({element:s})),t.shiftOffset!==void 0&&y.push(m.shift());const{x:c,y:w,placement:g,middlewareData:k}=await m.computePosition(u,d,{strategy:"fixed",middleware:y});let v=c,p=w;if(t.shiftOffset!==void 0){const{x:V,y:h}=k.shift;V<0&&(v-=t.shiftOffset),V>0&&(v+=t.shiftOffset),h<0&&(p-=t.shiftOffset),h>0&&(p+=t.shiftOffset)}n("positionChange",g),Object.assign(d.style,{top:`${p}px`,left:`${v}px`}),t.showArrow&&r(s,g,k.arrow,d)};return e.watch(()=>t.modelValue,()=>{t.modelValue&&t.origin?(a=K(t.origin),e.nextTick(o),a==null||a.addEventListener("scroll",o),a!==window&&window.addEventListener("scroll",o),window.addEventListener("resize",o)):(a==null||a.removeEventListener("scroll",o),a!==window&&window.removeEventListener("scroll",o),window.removeEventListener("resize",o))}),e.onUnmounted(()=>{a==null||a.removeEventListener("scroll",o),a!==window&&window.removeEventListener("scroll",o),window.removeEventListener("resize",o)}),{arrowRef:i,overlayRef:l,updatePosition:o}}var ue="";const T=e.defineComponent({name:"DFlexibleOverlay",inheritAttrs:!1,props:J,emits:["update:modelValue","positionChange"],setup(t,{slots:n,attrs:l,emit:i,expose:a}){const{arrowRef:r,overlayRef:o,updatePosition:u}=W(t,i);return a({updatePosition:u}),()=>{var d;return t.modelValue&&e.createVNode("div",e.mergeProps({ref:o,class:"devui-flexible-overlay"},l),[(d=n.default)==null?void 0:d.call(n),t.showArrow&&e.createVNode("div",{ref:r,class:"devui-flexible-overlay-arrow"},null)])}}});var de="";let Z=1;var N=e.defineComponent({name:"DDropdown",inheritAttrs:!1,props:_,emits:["toggle"],setup(t,{slots:n,attrs:l,emit:i,expose:a}){const{visible:r,position:o,align:u,offset:d,destroyOnHide:s,shiftOffset:y,showAnimation:c}=e.toRefs(t),w=e.ref(),g=e.ref(),k=e.ref(),v=`dropdown_${Z++}`,p=e.ref(!1),V=e.ref("bottom");H({id:v,isOpen:p,origin:w,dropdownRef:g,props:t,emit:i}),q(v,r,p,w,g,V,i);const{overlayModelValue:h,overlayShowValue:P,styles:b,classes:B,handlePositionChange:S}=U(t,V,p);return e.watch(P,C=>{e.nextTick(()=>{!s.value&&C&&k.value.updatePosition()})}),a({updatePosition:()=>k.value.updatePosition()}),()=>{var C;return e.createVNode(e.Fragment,null,[e.createVNode("div",{ref:w,class:"devui-dropdown-toggle"},[(C=n.default)==null?void 0:C.call(n)]),e.createVNode(e.Teleport,{to:"body"},{default:()=>[e.createVNode(e.Transition,{name:c.value?`devui-dropdown-fade-${V.value}`:""},{default:()=>[e.withDirectives(e.createVNode(T,{modelValue:h.value,"onUpdate:modelValue":x=>h.value=x,ref:k,origin:w.value,position:o.value,align:u.value,offset:d.value,shiftOffset:y==null?void 0:y.value,onPositionChange:S,class:B.value,style:b.value},{default:()=>{var x;return[e.createVNode("div",e.mergeProps({ref:g,class:"devui-dropdown-menu-wrap"},l),[(x=n.menu)==null?void 0:x.call(n)])]}}),[[e.vShow,P.value]])]})]})])}}});const j={modelValue:{type:Boolean,default:!1},origin:{type:Object,require:!0},position:{type:Array,default:["bottom"]},align:{type:String,default:null},offset:{type:[Number,Object],default:4},clickOutside:{type:Function,default:()=>!0},showAnimation:{type:Boolean,default:!0},overlayClass:{type:String,default:""}};var A=e.defineComponent({name:"DDropdownMenu",inheritAttrs:!1,props:j,emits:["update:modelValue"],setup(t,{slots:n,attrs:l,emit:i}){const{modelValue:a,origin:r,position:o,align:u,offset:d,clickOutside:s,showAnimation:y,overlayClass:c}=e.toRefs(t),w=e.ref(null);$.onClickOutside(w,p=>{var V,h;((V=s.value)==null?void 0:V.call(s))&&!((h=r==null?void 0:r.value)==null?void 0:h.contains(p.target))&&i("update:modelValue",!1)});const g=e.ref("bottom"),k=p=>{g.value=p.split("-")[0]==="top"?"top":"bottom"},v=e.computed(()=>({transformOrigin:g.value==="top"?"0% 100%":"0% 0%"}));return()=>e.createVNode(e.Teleport,{to:"body"},{default:()=>[e.createVNode(e.Transition,{name:y.value?`devui-dropdown-fade-${g.value}`:""},{default:()=>[e.createVNode(T,{modelValue:a.value,"onUpdate:modelValue":p=>a.value=p,origin:r==null?void 0:r.value,position:o.value,align:u.value,offset:d.value,onPositionChange:k,class:c.value,style:v.value},{default:()=>{var p;return[e.createVNode("div",e.mergeProps({ref:w,class:"devui-dropdown-menu-wrap"},l),[(p=n.default)==null?void 0:p.call(n)])]}})]})]})}}),ee={title:"Dropdown \u4E0B\u62C9\u83DC\u5355",category:"\u5BFC\u822A",status:"10%",install(t){t.component(N.name,N),t.component(A.name,A)}};f.Dropdown=N,f.DropdownMenu=A,f.default=ee,f.dropdownMenuProps=j,Object.defineProperty(f,"__esModule",{value:!0}),f[Symbol.toStringTag]="Module"});
1
+ var se=Object.defineProperty,ie=Object.defineProperties;var ue=Object.getOwnPropertyDescriptors;var F=Object.getOwnPropertySymbols;var ce=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable;var H=(d,e,w)=>e in d?se(d,e,{enumerable:!0,configurable:!0,writable:!0,value:w}):d[e]=w,_=(d,e)=>{for(var w in e||(e={}))ce.call(e,w)&&H(d,w,e[w]);if(F)for(var w of F(e))de.call(e,w)&&H(d,w,e[w]);return d},q=(d,e)=>ie(d,ue(e));(function(d,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue"),require("@floating-ui/dom"),require("@vueuse/core")):typeof define=="function"&&define.amd?define(["exports","vue","@floating-ui/dom","@vueuse/core"],e):(d=typeof globalThis!="undefined"?globalThis:d||self,e(d.index={},d.Vue,d.dom,d.core))})(this,function(d,e,w,U){"use strict";const Y={visible:{type:Boolean,default:!1},trigger:{type:String,default:"click"},closeScope:{type:String,default:"all"},position:{type:Array,default:["bottom"]},align:{type:String,default:null},offset:{type:[Number,Object],default:4},shiftOffset:{type:Number},closeOnMouseLeaveMenu:{type:Boolean,default:!1},showAnimation:{type:Boolean,default:!0},overlayClass:{type:String,default:""},destroyOnHide:{type:Boolean,default:!0}},M=Symbol("popper-trigger");function z(t){return t instanceof Element?t:t&&typeof t=="object"&&t.$el instanceof Element?t.$el:null}const O=new Map;function N(t,o,n){return t==null||t.addEventListener(o,n),()=>{t==null||t.removeEventListener(o,n)}}const X=({id:t,isOpen:o,origin:n,dropdownRef:r,props:l,emit:a})=>{let s=!1,i=!1;const{trigger:u,closeScope:c,closeOnMouseLeaveMenu:p}=e.toRefs(l),f=g=>{o.value=g,a("toggle",o.value)},v=async(g,E)=>{await new Promise(m=>setTimeout(m,50)),!(g==="origin"&&s||g==="dropdown"&&i)&&(E&&[...O.values()].reverse().forEach(m=>{setTimeout(()=>{var V;(V=m.toggle)==null||V.call(m)},0)}),f(!1))};e.watch([u,n,r],([g,E,m],V,y)=>{const h=z(E),P=[];setTimeout(()=>{P.push(N(document,"click",b=>{const A=[...O.values()];!o.value||c.value==="none"||(m==null?void 0:m.contains(b.target))&&c.value==="blank"||A.some(T=>{var x;return(x=T.toggleEl)==null?void 0:x.contains(b.target)})&&A.some(T=>{var x;return(x=T.menuEl)==null?void 0:x.contains(b.target)})||([...O.values()].reverse().forEach(T=>{setTimeout(()=>{var x,C;((x=T.toggleEl)==null?void 0:x.contains(b.target))||(C=T.toggle)==null||C.call(T)},0)}),s=!1)}))},0),g==="click"?P.push(N(h,"click",()=>f(!o.value)),N(m,"mouseleave",b=>{var A;p.value&&!((A=O.get(t).child)==null?void 0:A.contains(b.relatedTarget))&&v("dropdown",!0)})):g==="hover"&&P.push(N(h,"mouseenter",()=>{i=!0,f(!0)}),N(h,"mouseleave",()=>{i=!1,v("origin")}),N(m,"mouseenter",()=>{s=!0,o.value=!0}),N(m,"mouseleave",b=>{var A;s=!1,!(b.relatedTarget&&((h==null?void 0:h.contains(b.relatedTarget))||((A=O.get(t).child)==null?void 0:A.contains(b.relatedTarget))))&&v("dropdown",!0)})),y(()=>P.forEach(b=>b()))})};function G(t,o,n,r,l,a,s){const i=u=>{const c=u.offsetHeight;window.innerHeight-r.value.getBoundingClientRect().bottom>=c?a.value="bottom":a.value="top"};e.watch(o,(u,c)=>{c!==void 0&&(n.value=u,s("toggle",n.value))},{immediate:!0}),e.watch([n,l],([u,c])=>{var p;if(u){O.set(t,q(_({},O.get(t)),{menuEl:c,toggle:()=>{n.value=!1,s("toggle",n.value)}}));for(const f of O.values())((p=f.menuEl)==null?void 0:p.contains(r.value))&&(f.child=c)}c&&i(c)}),e.onMounted(()=>{O.set(t,{toggleEl:r.value})}),e.onUnmounted(()=>{O.delete(t)})}function I(t,o,n){const{showAnimation:r,overlayClass:l,destroyOnHide:a}=e.toRefs(t),s=e.ref(!1),i=e.ref(!1),u=e.computed(()=>({transformOrigin:o.value==="top"?"0% 100%":"0% 0%"})),c=e.computed(()=>({"fade-in-bottom":r.value&&n.value&&o.value==="bottom","fade-in-top":r.value&&n.value&&o.value==="top",[`${l.value}`]:!0})),p=f=>{o.value=f.includes("top")||f.includes("right-end")||f.includes("left-end")?"top":"bottom"};return e.watch(n,f=>{s.value=a.value?f:!0,i.value=f}),{overlayModelValue:s,overlayShowValue:i,styles:u,classes:c,handlePositionChange:p}}const K={modelValue:{type:Boolean,default:!1},lockScroll:{type:Boolean,default:!0},closeOnClickOverlay:{type:Boolean,default:!0}};function J(){if(document.documentElement.scrollHeight>document.documentElement.clientHeight){const t=document.documentElement.scrollTop,o=document.documentElement.getAttribute("style");return document.documentElement.style.position="fixed",document.documentElement.style.top=`-${t}px`,document.documentElement.style.width=document.documentElement.style.width||"100%",document.documentElement.style.overflowY="scroll",()=>{o?document.documentElement.setAttribute("style",o):document.documentElement.removeAttribute("style"),document.documentElement.scrollTop=t}}}function Q(t,o){let n;const r=a=>{a.preventDefault(),o.emit("click",a),t.closeOnClickOverlay&&o.emit("update:modelValue",!1)},l=()=>{n==null||n()};return e.watch(()=>t.modelValue,a=>{a?t.lockScroll&&(n=J()):l()}),e.onUnmounted(l),{onClick:r}}function S(t,o,n){let r=t;return o&&(r+=`__${o}`),n&&(r+=`--${n}`),r}function D(t,o=!1){const n=o?`.devui-${t}`:`devui-${t}`;return{b:()=>S(n),e:i=>i?S(n,i):"",m:i=>i?S(n,"",i):"",em:(i,u)=>i&&u?S(n,i,u):""}}var fe="";e.defineComponent({name:"DFixedOverlay",inheritAttrs:!1,props:K,emits:["update:modelValue","click"],setup(t,o){const{modelValue:n}=e.toRefs(t),r=D("fixed-overlay"),{onClick:l}=Q(t,o);return()=>e.createVNode(e.Transition,{name:r.m("fade")},{default:()=>{var a,s;return[n.value&&e.createVNode("div",e.mergeProps({class:r.b()},o.attrs,{onClick:l}),[(s=(a=o.slots).default)==null?void 0:s.call(a)])]}})}});const W={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 Z(t){const o=/(auto|scroll|hidden)/;for(let n=t;n=n.parentElement;n.parentElement!==document.body){const r=window.getComputedStyle(n);if(o.test(r.overflow+r.overflowX+r.overflowY))return n}return window}function ee(t,o,n,r){let{x:l,y:a}=o;if(!t){const{width:s,height:i}=r;l&&n.includes("start")&&(l=12),l&&n.includes("end")&&(l=Math.round(s-24)),a&&n.includes("start")&&(a=10),a&&n.includes("end")&&(a=i-14)}return{x:l,y:a}}function te(t,o){const n=e.ref(),r=e.ref();let l=null;const a=(i,u,c,p)=>{const{x:f,y:v}=ee(t.isArrowCenter,c,u,p.getBoundingClientRect()),g={top:"bottom",right:"left",bottom:"top",left:"right"}[u.split("-")[0]];Object.assign(i.style,{left:f?`${f}px`:"",top:v?`${v}px`:"",right:"",bottom:"",[g]:"-4px"})},s=async()=>{const i=t.origin,u=e.unref(n.value),c=e.unref(r.value),p=[w.offset(t.offset),w.autoPlacement({alignment:t.align,allowedPlacements:t.position})];t.showArrow&&p.push(w.arrow({element:c})),t.shiftOffset!==void 0&&p.push(w.shift());const{x:f,y:v,placement:g,middlewareData:E}=await w.computePosition(i,u,{strategy:"fixed",middleware:p});let m=f,V=v;if(t.shiftOffset!==void 0){const{x:y,y:h}=E.shift;y<0&&(m-=t.shiftOffset),y>0&&(m+=t.shiftOffset),h<0&&(V-=t.shiftOffset),h>0&&(V+=t.shiftOffset)}o("positionChange",g),Object.assign(u.style,{top:`${V}px`,left:`${m}px`}),t.showArrow&&a(c,g,E.arrow,u)};return e.watch(()=>t.modelValue,()=>{t.modelValue&&t.origin?(l=Z(t.origin),e.nextTick(s),l==null||l.addEventListener("scroll",s),l!==window&&window.addEventListener("scroll",s),window.addEventListener("resize",s)):(l==null||l.removeEventListener("scroll",s),l!==window&&window.removeEventListener("scroll",s),window.removeEventListener("resize",s))}),e.onUnmounted(()=>{l==null||l.removeEventListener("scroll",s),l!==window&&window.removeEventListener("scroll",s),window.removeEventListener("resize",s)}),{arrowRef:r,overlayRef:n,updatePosition:s}}var me="";const k=e.defineComponent({name:"DFlexibleOverlay",inheritAttrs:!1,props:W,emits:["update:modelValue","positionChange"],setup(t,{slots:o,attrs:n,emit:r,expose:l}){const a=D("flexible-overlay"),{arrowRef:s,overlayRef:i,updatePosition:u}=te(t,r);return l({updatePosition:u}),()=>{var c;return t.modelValue&&e.createVNode("div",e.mergeProps({ref:i,class:a.b()},n),[(c=o.default)==null?void 0:c.call(o),t.showArrow&&e.createVNode("div",{ref:s,class:a.e("arrow")},null)])}}}),oe=t=>t!==null&&typeof t=="object",ne=D("popper-trigger");function $(t){return e.h("span",{class:ne.b()},t)}function j(t){for(const o of t){if(oe(o)){if(o.type===e.Comment)continue;return o.type==="svg"||o.type===e.Text?$(o):o.type===e.Fragment?j(o.children):o}return $(o)}return null}var le=e.defineComponent({name:"DPopperTrigger",setup(t,o){const{slots:n,attrs:r}=o;return()=>{var i;const l=(i=n.default)==null?void 0:i.call(n,r),a=e.inject(M);if(!l)return null;const s=j(l);return s?e.withDirectives(e.cloneVNode(s,r),[[{mounted(u){a.value=u},updated(u){a.value=u},unmounted(){a.value=null}}]]):null}}}),pe="";let ae=1;var B=e.defineComponent({name:"DDropdown",inheritAttrs:!1,props:Y,emits:["toggle"],setup(t,{slots:o,attrs:n,emit:r,expose:l}){const{visible:a,position:s,align:i,offset:u,destroyOnHide:c,shiftOffset:p,showAnimation:f}=e.toRefs(t),v=e.ref(),g=e.ref(),E=e.ref(),m=`dropdown_${ae++}`,V=e.ref(!1),y=e.ref("bottom"),h=D("dropdown");e.provide(M,v),X({id:m,isOpen:V,origin:v,dropdownRef:g,props:t,emit:r}),G(m,a,V,v,g,y,r);const{overlayModelValue:P,overlayShowValue:b,styles:A,classes:T,handlePositionChange:x}=I(t,y,V);return e.watch(b,C=>{e.nextTick(()=>{!c.value&&C&&E.value.updatePosition()})}),l({updatePosition:()=>E.value.updatePosition()}),()=>e.createVNode(e.Fragment,null,[e.createVNode(le,null,{default:()=>{var C;return[(C=o.default)==null?void 0:C.call(o)]}}),e.createVNode(e.Teleport,{to:"body"},{default:()=>[e.createVNode(e.Transition,{name:f.value?h.m(`fade-${y.value}`):""},{default:()=>[e.withDirectives(e.createVNode(k,{modelValue:P.value,"onUpdate:modelValue":C=>P.value=C,ref:E,origin:v.value,position:s.value,align:i.value,offset:u.value,shiftOffset:p==null?void 0:p.value,onPositionChange:x,class:T.value,style:A.value},{default:()=>{var C;return[e.createVNode("div",e.mergeProps({ref:g,class:h.e("menu-wrap")},n),[(C=o.menu)==null?void 0:C.call(o)])]}}),[[e.vShow,b.value]])]})]})])}});const L={modelValue:{type:Boolean,default:!1},origin:{type:Object,require:!0},position:{type:Array,default:["bottom"]},align:{type:String,default:null},offset:{type:[Number,Object],default:4},clickOutside:{type:Function,default:()=>!0},showAnimation:{type:Boolean,default:!0},overlayClass:{type:String,default:""}};var R=e.defineComponent({name:"DDropdownMenu",inheritAttrs:!1,props:L,emits:["update:modelValue"],setup(t,{slots:o,attrs:n,emit:r}){const{modelValue:l,origin:a,position:s,align:i,offset:u,clickOutside:c,showAnimation:p,overlayClass:f}=e.toRefs(t),v=e.ref(null),g=D("dropdown");U.onClickOutside(v,y=>{var h,P;((h=c.value)==null?void 0:h.call(c))&&!((P=a==null?void 0:a.value)==null?void 0:P.contains(y.target))&&r("update:modelValue",!1)});const E=e.ref("bottom"),m=y=>{E.value=y.split("-")[0]==="top"?"top":"bottom"},V=e.computed(()=>({transformOrigin:E.value==="top"?"0% 100%":"0% 0%"}));return()=>e.createVNode(e.Teleport,{to:"body"},{default:()=>[e.createVNode(e.Transition,{name:p.value?g.m(`fade-${E.value}`):""},{default:()=>[e.createVNode(k,{modelValue:l.value,"onUpdate:modelValue":y=>l.value=y,origin:a==null?void 0:a.value,position:s.value,align:i.value,offset:u.value,onPositionChange:m,class:f.value,style:V.value},{default:()=>{var y;return[e.createVNode("div",e.mergeProps({ref:v,class:g.e("menu-wrap")},n),[(y=o.default)==null?void 0:y.call(o)])]}})]})]})}}),re={title:"Dropdown \u4E0B\u62C9\u83DC\u5355",category:"\u5BFC\u822A",status:"50%",install(t){t.component(B.name,B),t.component(R.name,R)}};d.Dropdown=B,d.DropdownMenu=R,d.default=re,d.dropdownMenuProps=L,Object.defineProperty(d,"__esModule",{value:!0}),d[Symbol.toStringTag]="Module"});
@@ -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(37, 43, 58, .2));z-index:1000}.devui-flexible-overlay-arrow{position:absolute;width:8px;height:8px;transform:rotate(45deg);background-color:inherit}.devui-dropdown-toggle{display:inline-block}.devui-dropdown span.icon-chevron-down,.devui-dropdown span.icon-select-arrow{display:inline-block;vertical-align:text-top}.devui-dropdown-menu-wrap .devui-dropdown-menu{width:100%}.devui-dropdown-animation span.icon-chevron-down,.devui-dropdown-animation span.icon-select-arrow{transition:transform var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-dropdown.open span.icon-chevron-down,.devui-dropdown.open span.icon-select-arrow{transform:rotate(180deg)}.fade-in-top{animation:fadeInTop .2s cubic-bezier(.16,.75,.5,1)}.fade-in-bottom{animation:fadeInBottom .2s cubic-bezier(.16,.75,.5,1)}@keyframes fadeInTop{0%{opacity:.8;transform:scaleY(.8) translateY(4px)}to{opacity:1;transform:scaleY(.9999) translateY(0)}}@keyframes fadeInBottom{0%{opacity:.8;transform:scaleY(.8) translateY(-4px)}to{opacity:1;transform:scaleY(.9999) translateY(0)}}.devui-dropdown-fade-bottom-enter-from,.devui-dropdown-fade-bottom-leave-to{opacity:.8;transform:scaleY(.8) translateY(-4px)}.devui-dropdown-fade-bottom-enter-to,.devui-dropdown-fade-bottom-leave-from{opacity:1;transform:scaleY(.9999) translateY(0)}.devui-dropdown-fade-bottom-enter-active{transition:transform .2s cubic-bezier(.16,.75,.5,1),opacity .2s cubic-bezier(.16,.75,.5,1)}.devui-dropdown-fade-bottom-leave-active{transition:transform .2s cubic-bezier(.5,0,.84,.25),opacity .2s cubic-bezier(.5,0,.84,.25)}.devui-dropdown-fade-top-enter-from,.devui-dropdown-fade-top-leave-to{opacity:.8;transform:scaleY(.8) translateY(4px)}.devui-dropdown-fade-top-enter-to,.devui-dropdown-fade-top-leave-from{opacity:1;transform:scaleY(.9999) translateY(0)}.devui-dropdown-fade-top-enter-active{transition:transform .2s cubic-bezier(.16,.75,.5,1),opacity .2s cubic-bezier(.16,.75,.5,1)}.devui-dropdown-fade-top-leave-active{transition:transform .2s cubic-bezier(.5,0,.84,.25),opacity .2s cubic-bezier(.5,0,.84,.25)}
1
+ .devui-fixed-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--devui-shadow, rgba(37, 43, 58, .2));z-index:1050}.devui-fixed-overlay--fade-enter-active,.devui-fixed-overlay--fade-leave-active{transition:opacity .1s cubic-bezier(0,0,1,1)}.devui-fixed-overlay--fade-enter-from,.devui-fixed-overlay--fade-leave-to{opacity:0}.devui-flexible-overlay{position:fixed;border-radius:var(--devui-border-radius, 4px);background-color:var(--devui-connected-overlay-bg, #ffffff);box-shadow:var(--devui-shadow-length-connected-overlay, 0 4px 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}.devui-dropdown span.icon-chevron-down,.devui-dropdown span.icon-select-arrow{display:inline-block;vertical-align:text-top}.devui-dropdown__menu-wrap .devui-dropdown-menu{width:100%}.devui-dropdown-animation span.icon-chevron-down,.devui-dropdown-animation span.icon-select-arrow{transition:transform var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-dropdown.open span.icon-chevron-down,.devui-dropdown.open span.icon-select-arrow{transform:rotate(180deg)}.fade-in-top{animation:fadeInTop .2s cubic-bezier(.16,.75,.5,1)}.fade-in-bottom{animation:fadeInBottom .2s cubic-bezier(.16,.75,.5,1)}@keyframes fadeInTop{0%{opacity:.8;transform:scaleY(.8) translateY(4px)}to{opacity:1;transform:scaleY(.9999) translateY(0)}}@keyframes fadeInBottom{0%{opacity:.8;transform:scaleY(.8) translateY(-4px)}to{opacity:1;transform:scaleY(.9999) translateY(0)}}.devui-dropdown--fade-bottom-enter-from,.devui-dropdown--fade-bottom-leave-to{opacity:.8;transform:scaleY(.8) translateY(-4px)}.devui-dropdown--fade-bottom-enter-to,.devui-dropdown--fade-bottom-leave-from{opacity:1;transform:scaleY(.9999) translateY(0)}.devui-dropdown--fade-bottom-enter-active{transition:transform .2s cubic-bezier(.16,.75,.5,1),opacity .2s cubic-bezier(.16,.75,.5,1)}.devui-dropdown--fade-bottom-leave-active{transition:transform .2s cubic-bezier(.5,0,.84,.25),opacity .2s cubic-bezier(.5,0,.84,.25)}.devui-dropdown--fade-top-enter-from,.devui-dropdown--fade-top-leave-to{opacity:.8;transform:scaleY(.8) translateY(4px)}.devui-dropdown--fade-top-enter-to,.devui-dropdown--fade-top-leave-from{opacity:1;transform:scaleY(.9999) translateY(0)}.devui-dropdown--fade-top-enter-active{transition:transform .2s cubic-bezier(.16,.75,.5,1),opacity .2s cubic-bezier(.16,.75,.5,1)}.devui-dropdown--fade-top-leave-active{transition:transform .2s cubic-bezier(.5,0,.84,.25),opacity .2s cubic-bezier(.5,0,.84,.25)}