vue-devui 1.0.0-pre.0 → 1.0.0-rc.2

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 (264) hide show
  1. package/README.md +126 -187
  2. package/alert/index.es.js +28 -30
  3. package/alert/index.umd.js +1 -1
  4. package/auto-complete/index.es.js +67 -82
  5. package/auto-complete/index.umd.js +3 -1
  6. package/auto-complete/style.css +1 -1
  7. package/badge/index.es.js +1 -1
  8. package/badge/index.umd.js +1 -1
  9. package/badge/style.css +1 -1
  10. package/button/index.es.js +39 -40
  11. package/button/index.umd.js +1 -1
  12. package/countdown/index.es.js +2 -1
  13. package/editable-select/index.es.js +122 -163
  14. package/editable-select/index.umd.js +1 -1
  15. package/fullscreen/index.es.js +13 -16
  16. package/fullscreen/index.umd.js +1 -1
  17. package/icon/index.es.js +39 -57
  18. package/icon/index.umd.js +1 -1
  19. package/image-preview/index.es.js +2 -1
  20. package/modal/index.es.js +81 -76
  21. package/modal/index.umd.js +1 -1
  22. package/modal/style.css +1 -1
  23. package/notification/index.es.js +38 -40
  24. package/notification/index.umd.js +1 -1
  25. package/nuxt/components/PanelBody.js +3 -0
  26. package/nuxt/components/PanelFooter.js +3 -0
  27. package/nuxt/components/PanelHeader.js +3 -0
  28. package/nuxt/components/Timeline.js +3 -0
  29. package/nuxt/components/TimelineItem.js +3 -0
  30. package/nuxt/components/alertProps.js +3 -0
  31. package/nuxt/components/fullscreenProps.js +3 -0
  32. package/nuxt/components/iconProps.js +2 -0
  33. package/nuxt/components/paginationProps.js +3 -0
  34. package/nuxt/components/panelProps.js +3 -0
  35. package/nuxt/components/searchProps.js +3 -0
  36. package/nuxt/components/tagProps.js +3 -0
  37. package/overlay/index.es.js +44 -37
  38. package/overlay/index.umd.js +1 -1
  39. package/overlay/style.css +1 -1
  40. package/package.json +8 -43
  41. package/pagination/index.es.js +10 -12
  42. package/pagination/index.umd.js +1 -1
  43. package/panel/index.es.js +45 -32
  44. package/panel/index.umd.js +1 -1
  45. package/popover/index.es.js +46 -39
  46. package/popover/index.umd.js +6 -6
  47. package/popover/style.css +1 -1
  48. package/progress/index.es.js +1 -1
  49. package/progress/index.umd.js +1 -1
  50. package/progress/style.css +1 -1
  51. package/radio/index.es.js +11 -11
  52. package/radio/index.umd.js +1 -1
  53. package/radio/style.css +1 -1
  54. package/read-tip/index.es.js +6 -3
  55. package/result/index.es.js +38 -53
  56. package/result/index.umd.js +1 -1
  57. package/ripple/index.es.js +47 -42
  58. package/ripple/index.umd.js +1 -1
  59. package/search/index.es.js +2 -5
  60. package/search/index.umd.js +4 -4
  61. package/skeleton/index.es.js +17 -17
  62. package/skeleton/index.umd.js +1 -1
  63. package/slider/index.es.js +60 -59
  64. package/slider/index.umd.js +1 -1
  65. package/splitter/index.es.js +215 -160
  66. package/splitter/index.umd.js +11 -11
  67. package/splitter/style.css +1 -1
  68. package/status/index.es.js +1 -4
  69. package/status/index.umd.js +1 -1
  70. package/status/style.css +1 -1
  71. package/style.css +1 -1
  72. package/tag/index.es.js +15 -18
  73. package/tag/index.umd.js +1 -1
  74. package/tag/style.css +1 -1
  75. package/tag-input/index.es.js +4 -2
  76. package/{accordion → timeline}/index.d.ts +0 -0
  77. package/{time-axis → timeline}/index.es.js +65 -78
  78. package/timeline/index.umd.js +1 -0
  79. package/{anchor → timeline}/package.json +1 -1
  80. package/timeline/style.css +1 -0
  81. package/upload/index.es.js +38 -40
  82. package/upload/index.umd.js +1 -1
  83. package/vue-devui.es.js +1478 -1196
  84. package/vue-devui.umd.js +19 -17
  85. package/accordion/index.es.js +0 -720
  86. package/accordion/index.umd.js +0 -1
  87. package/accordion/package.json +0 -7
  88. package/accordion/style.css +0 -1
  89. package/anchor/index.d.ts +0 -7
  90. package/anchor/index.es.js +0 -263
  91. package/anchor/index.umd.js +0 -1
  92. package/anchor/style.css +0 -1
  93. package/back-top/index.d.ts +0 -7
  94. package/back-top/index.es.js +0 -128
  95. package/back-top/index.umd.js +0 -1
  96. package/back-top/package.json +0 -7
  97. package/back-top/style.css +0 -1
  98. package/breadcrumb/index.d.ts +0 -7
  99. package/breadcrumb/index.es.js +0 -127
  100. package/breadcrumb/index.umd.js +0 -1
  101. package/breadcrumb/package.json +0 -7
  102. package/breadcrumb/style.css +0 -1
  103. package/carousel/index.d.ts +0 -7
  104. package/carousel/index.es.js +0 -329
  105. package/carousel/index.umd.js +0 -1
  106. package/carousel/package.json +0 -7
  107. package/carousel/style.css +0 -1
  108. package/cascader/index.d.ts +0 -7
  109. package/cascader/index.es.js +0 -5963
  110. package/cascader/index.umd.js +0 -27
  111. package/cascader/package.json +0 -7
  112. package/cascader/style.css +0 -1
  113. package/color-picker/index.d.ts +0 -7
  114. package/color-picker/index.es.js +0 -8187
  115. package/color-picker/index.umd.js +0 -27
  116. package/color-picker/package.json +0 -7
  117. package/color-picker/style.css +0 -1
  118. package/date-picker/index.d.ts +0 -7
  119. package/date-picker/index.es.js +0 -1171
  120. package/date-picker/index.umd.js +0 -1
  121. package/date-picker/package.json +0 -7
  122. package/date-picker/style.css +0 -1
  123. package/dragdrop/index.d.ts +0 -7
  124. package/dragdrop/index.es.js +0 -157
  125. package/dragdrop/index.umd.js +0 -1
  126. package/dragdrop/package.json +0 -7
  127. package/drawer/index.d.ts +0 -7
  128. package/drawer/index.es.js +0 -234
  129. package/drawer/index.umd.js +0 -1
  130. package/drawer/package.json +0 -7
  131. package/drawer/style.css +0 -1
  132. package/dropdown/index.d.ts +0 -7
  133. package/dropdown/index.es.js +0 -638
  134. package/dropdown/index.umd.js +0 -1
  135. package/dropdown/package.json +0 -7
  136. package/dropdown/style.css +0 -1
  137. package/form/index.d.ts +0 -7
  138. package/form/index.es.js +0 -7865
  139. package/form/index.umd.js +0 -27
  140. package/form/package.json +0 -7
  141. package/form/style.css +0 -1
  142. package/gantt/index.d.ts +0 -7
  143. package/gantt/index.es.js +0 -523
  144. package/gantt/index.umd.js +0 -1
  145. package/gantt/package.json +0 -7
  146. package/gantt/style.css +0 -1
  147. package/input-icon/index.d.ts +0 -7
  148. package/input-icon/index.es.js +0 -331
  149. package/input-icon/index.umd.js +0 -1
  150. package/input-icon/package.json +0 -7
  151. package/input-icon/style.css +0 -1
  152. package/input-number/index.d.ts +0 -7
  153. package/input-number/index.es.js +0 -240
  154. package/input-number/index.umd.js +0 -1
  155. package/input-number/package.json +0 -7
  156. package/input-number/style.css +0 -1
  157. package/list/index.d.ts +0 -7
  158. package/list/index.es.js +0 -39
  159. package/list/index.umd.js +0 -1
  160. package/list/package.json +0 -7
  161. package/list/style.css +0 -1
  162. package/nav-sprite/index.d.ts +0 -7
  163. package/nav-sprite/index.es.js +0 -68
  164. package/nav-sprite/index.umd.js +0 -1
  165. package/nav-sprite/package.json +0 -7
  166. package/nuxt/components/Accordion.js +0 -3
  167. package/nuxt/components/Anchor.js +0 -3
  168. package/nuxt/components/BackTop.js +0 -3
  169. package/nuxt/components/Breadcrumb.js +0 -3
  170. package/nuxt/components/Carousel.js +0 -3
  171. package/nuxt/components/CarouselItem.js +0 -3
  172. package/nuxt/components/Cascader.js +0 -3
  173. package/nuxt/components/ColorPicker.js +0 -3
  174. package/nuxt/components/Column.js +0 -3
  175. package/nuxt/components/DatePicker.js +0 -3
  176. package/nuxt/components/Drawer.js +0 -3
  177. package/nuxt/components/DrawerService.js +0 -3
  178. package/nuxt/components/Dropdown.js +0 -3
  179. package/nuxt/components/DropdownMenu.js +0 -3
  180. package/nuxt/components/Form.js +0 -3
  181. package/nuxt/components/FormControl.js +0 -3
  182. package/nuxt/components/FormItem.js +0 -3
  183. package/nuxt/components/FormLabel.js +0 -3
  184. package/nuxt/components/FormOperation.js +0 -3
  185. package/nuxt/components/Gantt.js +0 -3
  186. package/nuxt/components/InputIcon.js +0 -3
  187. package/nuxt/components/InputNumber.js +0 -3
  188. package/nuxt/components/List.js +0 -3
  189. package/nuxt/components/ListItem.js +0 -3
  190. package/nuxt/components/NavSprite.js +0 -2
  191. package/nuxt/components/QuadrantDiagram.js +0 -3
  192. package/nuxt/components/Select.js +0 -3
  193. package/nuxt/components/StepsGuide.js +0 -3
  194. package/nuxt/components/StickSlider.js +0 -3
  195. package/nuxt/components/Sticky.js +0 -2
  196. package/nuxt/components/Table.js +0 -3
  197. package/nuxt/components/Tabs.js +0 -3
  198. package/nuxt/components/TimeAxis.js +0 -3
  199. package/nuxt/components/TimeAxisItem.js +0 -3
  200. package/nuxt/components/TimePicker.js +0 -3
  201. package/nuxt/components/Tooltip.js +0 -3
  202. package/nuxt/components/Transfer.js +0 -3
  203. package/nuxt/components/Tree.js +0 -3
  204. package/nuxt/components/TreeSelect.js +0 -3
  205. package/nuxt/components/dropdownMenuProps.js +0 -3
  206. package/nuxt/components/tooltipProps.js +0 -3
  207. package/quadrant-diagram/index.d.ts +0 -7
  208. package/quadrant-diagram/index.es.js +0 -5728
  209. package/quadrant-diagram/index.umd.js +0 -27
  210. package/quadrant-diagram/package.json +0 -7
  211. package/quadrant-diagram/style.css +0 -1
  212. package/select/index.d.ts +0 -7
  213. package/select/index.es.js +0 -706
  214. package/select/index.umd.js +0 -1
  215. package/select/package.json +0 -7
  216. package/select/style.css +0 -1
  217. package/steps-guide/index.d.ts +0 -7
  218. package/steps-guide/index.es.js +0 -239
  219. package/steps-guide/index.umd.js +0 -1
  220. package/steps-guide/package.json +0 -7
  221. package/steps-guide/style.css +0 -1
  222. package/sticky/index.d.ts +0 -7
  223. package/sticky/index.es.js +0 -197
  224. package/sticky/index.umd.js +0 -1
  225. package/sticky/package.json +0 -7
  226. package/table/index.d.ts +0 -7
  227. package/table/index.es.js +0 -1969
  228. package/table/index.umd.js +0 -1
  229. package/table/package.json +0 -7
  230. package/table/style.css +0 -1
  231. package/tabs/index.d.ts +0 -7
  232. package/tabs/index.es.js +0 -194
  233. package/tabs/index.umd.js +0 -1
  234. package/tabs/package.json +0 -7
  235. package/tabs/style.css +0 -1
  236. package/time-axis/index.d.ts +0 -7
  237. package/time-axis/index.umd.js +0 -1
  238. package/time-axis/package.json +0 -7
  239. package/time-axis/style.css +0 -1
  240. package/time-picker/index.d.ts +0 -7
  241. package/time-picker/index.es.js +0 -1237
  242. package/time-picker/index.umd.js +0 -1
  243. package/time-picker/package.json +0 -7
  244. package/time-picker/style.css +0 -1
  245. package/tooltip/index.d.ts +0 -7
  246. package/tooltip/index.es.js +0 -5828
  247. package/tooltip/index.umd.js +0 -27
  248. package/tooltip/package.json +0 -7
  249. package/tooltip/style.css +0 -1
  250. package/transfer/index.d.ts +0 -7
  251. package/transfer/index.es.js +0 -7608
  252. package/transfer/index.umd.js +0 -27
  253. package/transfer/package.json +0 -7
  254. package/transfer/style.css +0 -1
  255. package/tree/index.d.ts +0 -7
  256. package/tree/index.es.js +0 -6490
  257. package/tree/index.umd.js +0 -27
  258. package/tree/package.json +0 -7
  259. package/tree/style.css +0 -1
  260. package/tree-select/index.d.ts +0 -7
  261. package/tree-select/index.es.js +0 -623
  262. package/tree-select/index.umd.js +0 -1
  263. package/tree-select/package.json +0 -7
  264. package/tree-select/style.css +0 -1
@@ -1 +0,0 @@
1
- var q=Object.defineProperty,L=Object.defineProperties;var H=Object.getOwnPropertyDescriptors;var R=Object.getOwnPropertySymbols;var J=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable;var F=(f,e,v)=>e in f?q(f,e,{enumerable:!0,configurable:!0,writable:!0,value:v}):f[e]=v,w=(f,e)=>{for(var v in e||(e={}))J.call(e,v)&&F(f,v,e[v]);if(R)for(var v of R(e))Q.call(e,v)&&F(f,v,e[v]);return f},P=(f,e)=>L(f,H(e));(function(f,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(f=typeof globalThis!="undefined"?globalThis:f||self,e(f.index={},f.Vue))})(this,function(f,e){"use strict";const v={modelValue:{type:[String,Number,Array],default:""},"onUpdate:modelValue":{type:Function,default:void 0},options:{type:Array,default:()=>[]},size:{type:String,default:"md"},overview:{type:String,default:"border"},placeholder:{type:String,default:"\u8BF7\u9009\u62E9"},multiple:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},allowClear:{type:Boolean,default:!1},optionDisabledKey:{type:String,default:""},onToggleChange:{type:Function,default:void 0},onValueChange:{type:Function,default:void 0}};var C=e.defineComponent({name:"DIcon",props:{name:{type:String,required:!0},size:{type:String,default:"inherit"},color:{type:String,default:"inherit"},classPrefix:{type:String,default:"icon"}},setup(t){return w({},t)},render(){const{name:t,size:n,color:l,classPrefix:a}=this;return/^((https?):)?\/\//.test(t)?e.createVNode("img",{src:t,alt:t.split("/")[t.split("/").length-1],style:{width:n,verticalAlign:"text-bottom"}},null):e.createVNode("i",{class:`${a} ${a}-${t}`,style:{fontSize:n,color:l}},null)}});C.install=function(t){t.component(C.name,C)};var X="";const B={name:{type:String,default:void 0},halfchecked:{type:Boolean,default:!1},isShowTitle:{type:Boolean,default:!0},title:{type:String},color:{type:String,default:void 0},showAnimation:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},beforeChange:{type:Function,default:void 0}},_=P(w({},B),{halfchecked:{type:Boolean,default:!1},checked:{type:Boolean,default:!1},value:{type:String},label:{type:String,default:void 0},title:{type:String,default:void 0},"onUpdate:checked":{type:Function,default:void 0},onChange:{type:Function,default:void 0},modelValue:{type:Boolean},"onUpdate:modelValue":{type:Function}}),K=P(w({},B),{modelValue:{type:Array,required:!0},direction:{type:String,default:"column"},itemWidth:{type:Number,default:void 0},options:{type:Array,default:()=>[]},onChange:{type:Function,default:void 0},"onUpdate:modelValue":{type:Function,default:void 0}}),D=Symbol("d-checkbox-group");var S=e.defineComponent({name:"DCheckbox",props:_,emits:["change","update:checked","update:modelValue"],setup(t,n){const l=e.inject(D,null),a=e.computed(()=>t.checked||t.modelValue),c=e.computed(()=>(l==null?void 0:l.disabled.value)||t.disabled),s=e.computed(()=>{var i,r;return(r=(i=l==null?void 0:l.isItemChecked)==null?void 0:i.call(l,t.value))!=null?r:a.value}),o=e.computed(()=>{var i;return(i=l==null?void 0:l.isShowTitle.value)!=null?i:t.isShowTitle}),u=e.computed(()=>{var i;return(i=l==null?void 0:l.showAnimation.value)!=null?i:t.showAnimation}),m=e.computed(()=>{var i;return(i=l==null?void 0:l.color.value)!=null?i:t.color}),y=l==null?void 0:l.itemWidth.value,V=l==null?void 0:l.direction.value,k=(i,r)=>{var h;if(c.value)return Promise.resolve(!1);const g=(h=t.beforeChange)!=null?h:l==null?void 0:l.beforeChange;if(g){const b=g(i,r);return typeof b=="boolean"?Promise.resolve(b):b}return Promise.resolve(!0)},p=()=>{const i=!a.value;l==null||l.toggleGroupVal(t.value),n.emit("update:checked",i),n.emit("update:modelValue",i),n.emit("change",i)};return{itemWidth:y,direction:V,mergedColor:m,mergedDisabled:c,mergedIsShowTitle:o,mergedChecked:s,mergedShowAnimation:u,handleClick:()=>{k(!a.value,t.label).then(i=>i&&p())}}},render(){var I;const{itemWidth:t,direction:n,mergedChecked:l,mergedDisabled:a,mergedIsShowTitle:c,mergedShowAnimation:s,halfchecked:o,title:u,label:m,handleClick:y,name:V,value:k,mergedColor:p,$slots:d}=this,i={"devui-checkbox-column-margin":n==="column","devui-checkbox-wrap":typeof t!="undefined"},r=t?[`width: ${t}px`]:[],g={"devui-checkbox":!0,active:l,halfchecked:o,disabled:a,unchecked:!l},h=c?u||m:"",b=p&&o||p?`linear-gradient(${p}, ${p})`:"",O=[`border-color:${(l||o)&&p?p:""}`,`background-image:${b}`,`background-color:${p&&o?p:""}`],W={"devui-checkbox-material":!0,"custom-color":p,"devui-checkbox-no-label":!m&&!d.default,"devui-no-animation":!s,"devui-checkbox-default-background":!o},M={"devui-tick":!0,"devui-no-animation":!s},T=x=>x.stopPropagation(),U={indeterminate:o};return e.createVNode("div",{class:i,style:r},[e.createVNode("div",{class:g},[e.createVNode("label",{title:h,onClick:y},[e.createVNode("input",e.mergeProps({name:V||k,class:"devui-checkbox-input",type:"checkbox"},U,{checked:l,disabled:a,onClick:T,onChange:T}),null),e.createVNode("span",{style:O,class:W},[e.createVNode("span",{class:"devui-checkbox-halfchecked-bg"},null),e.createVNode("svg",{viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg",class:"devui-checkbox-tick"},[e.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e.createVNode("polygon",{"fill-rule":"nonzero",points:"5.17391304 6.56521739 7.7173913 9.10869565 11.826087 5 13 6.17391304 7.7173913 11.4565217 4 7.73913043",class:M},null)])])]),m||((I=d.default)==null?void 0:I.call(d))])])])}}),Y="",j=e.defineComponent({name:"DCheckboxGroup",props:K,emits:["change","update:modelValue"],setup(t,n){const l=e.toRef(t,"modelValue"),a={checked:!1,isShowTitle:!0,halfchecked:!1,showAnimation:!0,disabled:!1},c=o=>{let u=-1;if(typeof l.value[0]=="string"?u=l.value.findIndex(m=>m===o):typeof l.value[0]=="object"&&(u=l.value.findIndex(m=>m.value===o)),u===-1){if(typeof t.options[0]=="object"){const y=t.options.find(k=>k.value===o),V=[...l.value,y];n.emit("update:modelValue",V),n.emit("change",V);return}const m=[...l.value,o];n.emit("update:modelValue",m),n.emit("change",m);return}l.value.splice(u,1),n.emit("update:modelValue",l.value),n.emit("change",l.value)},s=o=>{if(typeof l.value[0]=="string")return l.value.includes(o);if(typeof l.value[0]=="object")return l.value.some(u=>u.value===o)};return e.provide(D,{disabled:e.toRef(t,"disabled"),isShowTitle:e.toRef(t,"isShowTitle"),color:e.toRef(t,"color"),showAnimation:e.toRef(t,"showAnimation"),beforeChange:t.beforeChange,isItemChecked:s,toggleGroupVal:c,itemWidth:e.toRef(t,"itemWidth"),direction:e.toRef(t,"direction")}),{defaultOpt:a}},render(){var s;const{direction:t,$slots:n,defaultOpt:l,options:a}=this;let c=(s=n.default)==null?void 0:s.call(n);return(a==null?void 0:a.length)>0&&(c=a.map(o=>{let u=null;return typeof o=="string"?u=Object.assign({},l,{label:o,value:o}):typeof o=="object"&&(u=Object.assign({},l,P(w({},o),{label:o.name}))),e.createVNode(S,u,null)})),e.createVNode("div",{class:"devui-checkbox-group"},[e.createVNode("div",{class:{"devui-checkbox-list-inline":t==="row"}},[c])])}});S.install=function(t){t.component(S.name,S)},j.install=function(t){t.component(j.name,j)};function A(t,n){let l=t;return typeof n=="object"&&Object.keys(n).forEach(a=>{n[a]&&(l+=` ${a}`)}),l}function $(t){const n=e.computed(()=>{const a=new Map;return t.value.forEach(c=>{a.set(c.value,c)}),a});return a=>a.map(c=>n.value.get(c))}function E(t,n,l){function a(c){var u,m;let s=c.target;s.shadowRoot&&c.composed&&(s=c.composedPath()[0]||s);const o=[(u=t[0])==null?void 0:u.value,(m=t[1])==null?void 0:m.value];n.value&&o.every(y=>y&&!y.contains(s)&&y!==s)&&l(!1)}e.onMounted(()=>{document.body.addEventListener("mousedown",a,!1)}),e.onBeforeUnmount(()=>{document.body.addEventListener("mousedown",a,!1)})}var Z="",N=e.defineComponent({name:"DSelect",props:v,emits:["toggleChange","valueChange","update:modelValue"],setup(t,n){const l=e.ref(null),a=e.ref(null),c=e.ref(!1);function s(d){t.disabled||(c.value=d,n.emit("toggleChange",d))}E([l,a],c,s);const o=e.computed(()=>{const{multiple:d,modelValue:i}=t;return t.options.map(r=>{let g;return typeof r=="object"?g=w({name:r.name?r.name:r.value+"",value:r.value,_checked:!1},r):g={name:r+"",value:r,_checked:!1},d&&(Array.isArray(i)?g._checked=i.includes(g.value):g._checked=!1),g})}),u=$(o),m=e.computed(()=>{var d;return t.multiple&&Array.isArray(t.modelValue)?u(t.modelValue).map(r=>r.name).join(","):Array.isArray(t.modelValue)?"":((d=u([t.modelValue])[0])==null?void 0:d.name)||""}),y=e.computed(()=>!t.disabled&&t.allowClear&&m.value.length>0);function V(d,i){const{multiple:r,optionDisabledKey:g}=t;let{modelValue:h}=t;g&&!!d[g]||(r?(d._checked=!d._checked,h=o.value.filter(b=>b._checked).map(b=>b.value),n.emit("update:modelValue",h)):(n.emit("update:modelValue",d.value),s(!1)),n.emit("valueChange",d,i))}function k(d){const{optionDisabledKey:i}=t;return A("devui-select-item",{active:d.value===t.modelValue,disabled:i?!!d[i]:!1})}function p(d){d.preventDefault(),d.stopPropagation(),t.multiple?n.emit("update:modelValue",[]):n.emit("update:modelValue","")}return{isOpen:c,containerRef:l,dropdownRef:a,inputValue:m,mergeOptions:o,mergeClearable:y,valueChange:V,toggleChange:s,getItemClassName:k,handleClear:p}},render(){const{mergeOptions:t,isOpen:n,inputValue:l,size:a,multiple:c,disabled:s,optionDisabledKey:o,placeholder:u,overview:m,valueChange:y,toggleChange:V,getItemClassName:k,mergeClearable:p,handleClear:d}=this,i=A("devui-select",{"devui-select-open":n,"devui-dropdown-menu-multiple":c,"devui-select-lg":a==="lg","devui-select-sm":a==="sm","devui-select-underlined":m==="underlined","devui-select-disabled":s}),r=A("devui-select-input",{"devui-select-input-lg":a==="lg","devui-select-input-sm":a==="sm"}),g=A("devui-select-selection",{"devui-select-clearable":p});return e.createVNode("div",{class:i,ref:"containerRef"},[e.createVNode("div",{class:g,onClick:()=>V(!n)},[e.createVNode("input",{value:l,type:"text",class:r,placeholder:u,readonly:!0,disabled:s},null),e.createVNode("span",{onClick:d,class:"devui-select-clear"},[e.createVNode(C,{name:"close"},null)]),e.createVNode("span",{class:"devui-select-arrow"},[e.createVNode(C,{name:"select-arrow"},null)])]),e.createVNode(e.Transition,{name:"fade",ref:"dropdownRef"},{default:()=>[e.withDirectives(e.createVNode("div",{class:"devui-select-dropdown"},[e.createVNode("ul",{class:"devui-select-dropdown-list devui-scrollbar"},[t.map((h,b)=>e.createVNode("li",{onClick:O=>{O.preventDefault(),O.stopPropagation(),y(h,b)},class:k(h),key:b},[c?e.createVNode(S,{modelValue:h._checked,label:h.name,disabled:o?!!h[o]:!1},null):h.name]))])]),[[e.vShow,n]])]})])}});N.install=function(t){t.component(N.name,N)};var z={title:"Select \u4E0B\u62C9\u6846",category:"\u6570\u636E\u5F55\u5165",status:"10%",install(t){t.use(N)}};f.Select=N,f.default=z,Object.defineProperty(f,"__esModule",{value:!0}),f[Symbol.toStringTag]="Module"});
@@ -1,7 +0,0 @@
1
- {
2
- "name": "select",
3
- "version": "0.0.0",
4
- "main": "index.umd.js",
5
- "module": "index.es.js",
6
- "style": "style.css"
7
- }
package/select/style.css DELETED
@@ -1 +0,0 @@
1
- .devui-checkbox{position:relative;display:flex;display:-ms-flexbox;align-items:center;-ms-flex-align:center;height:100%;margin:0}.devui-checkbox .devui-checkbox-tick{position:absolute}.devui-checkbox .devui-checkbox-tick .devui-tick{fill:var(--devui-light-text, #ffffff);stroke-dashoffset:50;opacity:0;transform:scale(0);transform-origin:50% 50%;transition:stroke-dashoffset .2s ease-in-out,opacity .2s ease-in-out,transform .2s ease-in-out}.devui-checkbox.active:not(.halfchecked) .devui-tick{opacity:1;stroke-dashoffset:0;transform:scale(1);transition:stroke-dashoffset .3s cubic-bezier(.755,.05,.855,.06),opacity .2s cubic-bezier(.755,.05,.855,.06)}.devui-checkbox.active:not(.disabled) .devui-checkbox-material:not(.custom-color),.devui-checkbox.halfchecked:not(.disabled) .devui-checkbox-material:not(.custom-color){border-color:var(--devui-brand, #5e7ce0)}.devui-checkbox.active:not(.disabled) .devui-checkbox-material{background-size:100% 100%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox-material:not(.custom-color){background-size:0% 0%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox-material:not(.custom-color):hover{border-color:var(--devui-icon-fill-active, #5e7ce0)}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox-material.custom-color{background-size:0% 0%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.halfchecked .devui-checkbox-material:not(.custom-color){background-color:var(--devui-brand, #5e7ce0)}.devui-checkbox.halfchecked .devui-checkbox-material:not(.custom-color)>.devui-checkbox-halfchecked-bg{opacity:1;transform:scale(.4288);transition:transform .2s cubic-bezier(.755,.05,.855,.06);background-color:var(--devui-light-text, #ffffff)}.devui-checkbox.halfchecked .devui-checkbox-material.custom-color>.devui-checkbox-halfchecked-bg{opacity:1;transform:scale(.4288);transition:transform .2s cubic-bezier(.755,.05,.855,.06);background-color:var(--devui-light-text, #ffffff)}.devui-checkbox .devui-checkbox-material{text-align:initial;height:14px;width:14px;position:relative;user-select:none;border:1px solid var(--devui-line, #adb0b8);border-radius:var(--devui-border-radius, 2px);background:linear-gradient(var(--devui-brand, #5e7ce0),var(--devui-brand, #5e7ce0)) no-repeat center/0%;margin-right:8px;vertical-align:text-bottom}.devui-checkbox .devui-checkbox-material.devui-checkbox-default-background{background-color:var(--devui-base-bg, #ffffff)}.devui-checkbox .devui-checkbox-material.devui-checkbox-no-label{margin-right:0}.devui-checkbox .devui-checkbox-material>.devui-checkbox-halfchecked-bg{display:inline-block;position:absolute;content:"";background-color:var(--devui-light-text, #ffffff);top:0;left:0;height:100%;width:100%;transform:scale(1);opacity:0}.devui-checkbox .devui-checkbox-material>svg{width:14px;height:14px}.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):focus,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):active,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):hover{background-color:var(--devui-icon-fill-active, #5e7ce0)}.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):active,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):focus,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):hover:active,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):hover:focus{background-color:var(--devui-brand-active-focus, #344899)}.devui-checkbox-input{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.devui-checkbox label{position:relative;font-weight:400;height:16px;line-height:16px;cursor:pointer;color:var(--devui-text, #252b3a);margin:0;display:block}.devui-checkbox label>span{display:inline-block;box-sizing:content-box;vertical-align:top}.devui-checkbox.disabled label{cursor:not-allowed;color:var(--devui-disabled-text, #adb0b8)}.devui-checkbox.disabled .devui-checkbox-material{border-color:var(--devui-icon-fill-active-disabled, #beccfa);background-color:var(--devui-icon-fill-active-disabled, #beccfa)}.devui-checkbox.disabled.unchecked .devui-checkbox-material{border-color:var(--devui-disabled-line, #dfe1e6);background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-checkbox.disabled.halfchecked .devui-checkbox-material{background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-checkbox.disabled.halfchecked .devui-checkbox-material .devui-checkbox-halfchecked-bg{transform:scale(.4288);background-color:var(--devui-disabled-text, #adb0b8);opacity:1}.devui-checkbox.disabled.active svg polygon{fill:var(--devui-light-text, #ffffff)}.devui-no-animation{transition:none!important}.devui-checkbox-column-margin{height:28px;line-height:28px}.devui-checkbox-wrap .devui-checkbox label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host{display:block}.devui-checkbox-list-inline{min-height:28px;line-height:28px;display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;margin:-8px 0 0}.devui-checkbox-list-inline div:not(:last-child){margin-right:20px}.devui-checkbox-list-inline>*{margin-top:8px}.devui-select{position:relative;width:100%}.devui-select-underlined{border-bottom:1px solid var(--devui-form-control-line, #adb0b8);transition:border-color .3s cubic-bezier(.645,.045,.355,1)}.devui-select-underlined:not([disabled]):not(.disabled):hover{border-color:var(--devui-form-control-line-hover, #575d6c)}.devui-select-underlined:not([disabled]):not(.disabled).devui-select-open{border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-select-underlined .devui-select-input{border:none}.devui-select-disabled,.devui-select-disabled .devui-select-input{cursor:not-allowed;background-color:var(--devui-disabled-bg, #f5f5f6);border-color:var(--devui-disabled-line, #dfe1e6);color:var(--devui-disabled-text, #adb0b8)}.devui-select-disabled .devui-select-arrow{cursor:not-allowed;color:var(--devui-disabled-text, #adb0b8)}.devui-select-open .devui-select-arrow{transform:rotate(180deg)}.devui-dropdown-menu-multiple .devui-select-item.active{color:var(--devui-list-item-active-text, #ffffff);background-color:transparent}.devui-select-selection{position:relative;cursor:pointer}.devui-select-input{cursor:pointer;width:100%;height:28px;padding:4px 28px 4px 10px;color:var(--devui-text, #252b3a);vertical-align:middle;border:1px solid var(--devui-form-control-line, #adb0b8);border-radius:var(--devui-border-radius, 2px);outline:none;background-color:var(--devui-base-bg, #ffffff);box-sizing:border-box;transition:border-color .3s cubic-bezier(.645,.045,.355,1)}.devui-select-input:not([disabled]):not(.disabled):hover{border-color:var(--devui-form-control-line-hover, #575d6c)}.devui-select-input:not([disabled]):not(.disabled):focus{border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-select-input[disabled]:hover,.devui-select-input.disabled:hover{cursor:not-allowed;background-color:var(--devui-disabled-bg, #f5f5f6);border-color:var(--devui-disabled-line, #dfe1e6);color:var(--devui-disabled-text, #adb0b8)}.devui-select-input.devui-select-input-lg{height:44px}.devui-select-input.devui-select-input-sm{height:24px}.devui-select-clearable:hover .devui-select-clear{display:inline-flex}.devui-select-clearable:hover .devui-select-arrow{display:none}.devui-select-clear,.devui-select-arrow{position:absolute;right:0;height:100%;width:28px;display:inline-flex;justify-content:center;align-items:center}.devui-select-clear{display:none}.devui-select-clear:hover{color:var(--devui-icon-fill-active, #5e7ce0)}.devui-select-arrow{transform:rotate(0);transition:transform .25s ease-out}.devui-select-dropdown{position:absolute;width:calc(100% - 2px);overflow:auto;top:100%;left:0;margin:5px 0;border-radius:var(--devui-border-radius, 2px);background:var(--devui-base-bg, #ffffff);box-shadow:0 2px 5px 0 var(--devui-shadow, rgba(0, 0, 0, .2));z-index:999}.devui-select-dropdown-list{max-height:300px;width:100%;overflow-y:auto;padding:0;margin:0}.devui-select-item{font-size:var(--devui-font-size, 12px);display:block;min-height:36px;line-height:1.5;width:100%;padding:10px;clear:both;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border:0;color:var(--devui-text, #252b3a);box-sizing:border-box;cursor:pointer}.devui-select-item:hover:not(.active):not(.disabled){color:var(--devui-list-item-hover-text, #526ecc);background-color:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-select-item.active{color:var(--devui-list-item-active-text, #ffffff);background-color:var(--devui-list-item-active-bg, #5e7ce0)}.devui-select-item.disabled{cursor:not-allowed;background-color:var(--devui-disabled-bg, #f5f5f6);color:var(--devui-disabled-text, #adb0b8)}.devui-scrollbar::-webkit-scrollbar{width:8px;height:8px}.devui-scrollbar::-webkit-scrollbar-corner{background-color:transparent}.devui-scrollbar::-webkit-scrollbar-thumb{border-radius:8px;background-color:var(--devui-line, #adb0b8)}.devui-scrollbar::-webkit-scrollbar-track{background-color:transparent}.fade-enter-active,.fade-leave-active{transform:scale3d(0,1,0,.9999) translate3d(0,1,0,0);transform-origin:0 0%;opacity:1;transition:transform,opacity .25s ease-out}.fade-enter-from,.fade-leave-to{transform:scale3d(0,1,0,0) translate3d(0,1,0,-4px);opacity:0;transition:transform,opacity .25s ease-in}
@@ -1,7 +0,0 @@
1
- import { App } from 'vue';
2
- declare function install(app: App): void
3
- declare const _default: {
4
- install: typeof install;
5
- version: string;
6
- };
7
- export default _default;
@@ -1,239 +0,0 @@
1
- import { reactive, ref, nextTick, computed, defineComponent, onMounted, createVNode, Teleport } from "vue";
2
- var stepsGuide = "";
3
- const stepsGuideProps = {
4
- steps: Array,
5
- stepIndex: {
6
- type: Number,
7
- default: void 0
8
- },
9
- showClose: {
10
- type: Boolean,
11
- default: true
12
- },
13
- showDots: {
14
- type: Boolean,
15
- default: true
16
- },
17
- scrollToTargetSwitch: {
18
- type: Boolean,
19
- default: true
20
- },
21
- zIndex: {
22
- type: Number,
23
- default: 1100
24
- },
25
- stepChange: {
26
- type: Function,
27
- default() {
28
- return true;
29
- }
30
- }
31
- };
32
- function useStepsGuidePosition(props, currentStep) {
33
- const guideClassList = reactive(["devui-steps-guide"]);
34
- const stepsRef = ref(null);
35
- const guidePosition = reactive({
36
- left: "",
37
- top: "",
38
- zIndex: props.zIndex
39
- });
40
- const updateGuidePosition = () => {
41
- if (!currentStep.value || !stepsRef.value)
42
- return;
43
- const baseTop = window.pageYOffset - document.documentElement.clientTop;
44
- const baseLeft = window.pageXOffset - document.documentElement.clientLeft;
45
- const currentStepPosition = currentStep.value.position;
46
- const stepGuideElement = stepsRef.value;
47
- let _left, _top;
48
- if (typeof currentStepPosition !== "string") {
49
- const { top = 0, left = 0, type = "top" } = currentStepPosition;
50
- guideClassList.splice(1, 1, type);
51
- _left = left;
52
- _top = top;
53
- } else {
54
- guideClassList.splice(1, 1, currentStepPosition);
55
- const triggerSelector = currentStep.value.target || currentStep.value.trigger;
56
- const triggerElement = document.querySelector(triggerSelector);
57
- if (!triggerElement) {
58
- console.warn(`${triggerSelector} \u4E0D\u5B58\u5728!`);
59
- return false;
60
- }
61
- const targetRect = triggerElement.getBoundingClientRect();
62
- _left = targetRect.left + triggerElement.clientWidth / 2 - stepGuideElement.clientWidth / 2 + baseLeft;
63
- _top = targetRect.top + triggerElement.clientHeight / 2 - stepGuideElement.clientHeight / 2 + baseTop;
64
- const positionTypes = currentStepPosition.split("-");
65
- switch (positionTypes[0]) {
66
- case "top":
67
- _top += -stepGuideElement.clientHeight / 2 - triggerElement.clientHeight;
68
- break;
69
- case "bottom":
70
- _top += stepGuideElement.clientHeight / 2 + triggerElement.clientHeight;
71
- break;
72
- case "left":
73
- _top += stepGuideElement.clientHeight / 2 - triggerElement.clientHeight;
74
- _left += -stepGuideElement.clientWidth / 2 - triggerElement.clientWidth / 2;
75
- break;
76
- case "right":
77
- _top += stepGuideElement.clientHeight / 2 - triggerElement.clientHeight;
78
- _left += stepGuideElement.clientWidth / 2 + triggerElement.clientWidth / 2;
79
- break;
80
- }
81
- switch (positionTypes[1]) {
82
- case "left":
83
- _left += stepGuideElement.clientWidth / 2 - triggerElement.clientWidth / 2;
84
- break;
85
- case "right":
86
- _left += -stepGuideElement.clientWidth / 2 + triggerElement.clientWidth / 2;
87
- break;
88
- }
89
- }
90
- guidePosition.left = _left + "px";
91
- guidePosition.top = _top + "px";
92
- if (props.scrollToTargetSwitch && typeof stepGuideElement.scrollIntoView === "function") {
93
- nextTick(() => {
94
- stepGuideElement.scrollIntoView({ behavior: "smooth", block: "nearest", inline: "nearest" });
95
- });
96
- }
97
- };
98
- return {
99
- stepsRef,
100
- guidePosition,
101
- guideClassList,
102
- updateGuidePosition
103
- };
104
- }
105
- function useStepsGuideCtrl(props, ctx, updateGuidePosition, stepIndex) {
106
- const stepsCount = computed(() => props.steps.length);
107
- const closeGuide = () => {
108
- const _index = stepIndex.value;
109
- stepIndex.value = -1;
110
- nextTick(() => {
111
- ctx.emit("guide-close", _index);
112
- });
113
- };
114
- const setCurrentIndex = (index2) => {
115
- if (index2 !== -1 && props.stepChange()) {
116
- if (index2 > -1 && index2 < stepsCount.value) {
117
- stepIndex.value = index2;
118
- nextTick(() => {
119
- updateGuidePosition();
120
- });
121
- } else {
122
- console.error(`stepIndex is not within the value range`);
123
- }
124
- }
125
- if (index2 === -1)
126
- closeGuide();
127
- };
128
- return {
129
- stepsCount,
130
- closeGuide,
131
- setCurrentIndex
132
- };
133
- }
134
- var StepsGuide = defineComponent({
135
- name: "DStepsGuide",
136
- props: stepsGuideProps,
137
- emits: ["guide-close", "update:stepIndex"],
138
- setup(props, ctx) {
139
- var _a;
140
- const stepIndexData = ref((_a = props.stepIndex) != null ? _a : 0);
141
- const stepIndex = computed({
142
- set: (val) => {
143
- if (props.stepIndex != null) {
144
- ctx.emit("update:stepIndex", val);
145
- }
146
- stepIndexData.value = val;
147
- },
148
- get: () => stepIndexData.value
149
- });
150
- const currentStep = computed(() => {
151
- const _step = props.steps[stepIndex.value];
152
- if (_step)
153
- _step.position = _step.position || "top";
154
- return _step;
155
- });
156
- const {
157
- stepsRef,
158
- guidePosition,
159
- guideClassList,
160
- updateGuidePosition
161
- } = useStepsGuidePosition(props, currentStep);
162
- const {
163
- stepsCount,
164
- closeGuide,
165
- setCurrentIndex
166
- } = useStepsGuideCtrl(props, ctx, updateGuidePosition, stepIndex);
167
- onMounted(() => {
168
- updateGuidePosition();
169
- });
170
- ctx.expose({
171
- closeGuide,
172
- setCurrentIndex
173
- });
174
- return () => stepIndex.value > -1 && stepsCount.value > 0 ? createVNode(Teleport, {
175
- "to": "body"
176
- }, {
177
- default: () => [createVNode("div", {
178
- "style": guidePosition,
179
- "class": guideClassList,
180
- "ref": stepsRef
181
- }, [createVNode("div", {
182
- "class": "devui-shining-dot"
183
- }, null), createVNode("div", {
184
- "class": "devui-shining-plus"
185
- }, null), createVNode("div", {
186
- "class": "devui-arrow"
187
- }, null), createVNode("div", {
188
- "class": "devui-guide-container"
189
- }, [createVNode("p", {
190
- "class": "devui-title"
191
- }, [currentStep.value.title]), props.showClose ? createVNode("div", {
192
- "class": "icon icon-close",
193
- "onClick": closeGuide
194
- }, null) : null, createVNode("div", {
195
- "class": "devui-content"
196
- }, [currentStep.value.content]), createVNode("div", {
197
- "class": "devui-ctrl"
198
- }, [props.showDots ? createVNode("div", {
199
- "class": "devui-dots"
200
- }, [props.steps.map((step, index2) => {
201
- return createVNode("em", {
202
- "class": ["icon icon-dot-status", currentStep.value === step ? "devui-active" : ""],
203
- "key": index2
204
- }, null);
205
- })]) : null, createVNode("div", {
206
- "class": "devui-guide-btn"
207
- }, [stepIndex.value > 0 ? createVNode("div", {
208
- "class": "devui-prev-step",
209
- "onClick": () => setCurrentIndex(stepIndex.value - 1)
210
- }, ["\u4E0A\u4E00\u6B65"]) : null, stepIndex.value === stepsCount.value - 1 ? createVNode("div", {
211
- "onClick": closeGuide
212
- }, ["\u6211\u77E5\u9053\u5566"]) : createVNode("div", {
213
- "class": "devui-next-step",
214
- "onClick": () => {
215
- setCurrentIndex(stepIndex.value + 1);
216
- }
217
- }, ["\u6211\u77E5\u9053\u5566,\u7EE7\u7EED"])])])])])]
218
- }) : null;
219
- }
220
- });
221
- var StepsGuideDirective = {
222
- mounted(el, binding, vNode) {
223
- },
224
- updated(el, binding) {
225
- }
226
- };
227
- StepsGuide.install = function(app) {
228
- app.component(StepsGuide.name, StepsGuide);
229
- };
230
- var index = {
231
- title: "StepsGuide \u64CD\u4F5C\u6307\u5F15",
232
- category: "\u5BFC\u822A",
233
- status: "80%",
234
- install(app) {
235
- app.use(StepsGuide);
236
- app.directive("StepsGuide", StepsGuideDirective);
237
- }
238
- };
239
- export { StepsGuide, index as default };
@@ -1 +0,0 @@
1
- (function(a,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(a=typeof globalThis!="undefined"?globalThis:a||self,e(a.index={},a.Vue))})(this,function(a,e){"use strict";var x="";const y={steps:Array,stepIndex:{type:Number,default:void 0},showClose:{type:Boolean,default:!0},showDots:{type:Boolean,default:!0},scrollToTargetSwitch:{type:Boolean,default:!0},zIndex:{type:Number,default:1100},stepChange:{type:Function,default(){return!0}}};function b(i,o){const r=e.reactive(["devui-steps-guide"]),n=e.ref(null),l=e.reactive({left:"",top:"",zIndex:i.zIndex});return{stepsRef:n,guidePosition:l,guideClassList:r,updateGuidePosition:()=>{if(!o.value||!n.value)return;const m=window.pageYOffset-document.documentElement.clientTop,c=window.pageXOffset-document.documentElement.clientLeft,p=o.value.position,s=n.value;let d,u;if(typeof p!="string"){const{top:f=0,left:t=0,type:g="top"}=p;r.splice(1,1,g),d=t,u=f}else{r.splice(1,1,p);const f=o.value.target||o.value.trigger,t=document.querySelector(f);if(!t)return console.warn(`${f} \u4E0D\u5B58\u5728!`),!1;const g=t.getBoundingClientRect();d=g.left+t.clientWidth/2-s.clientWidth/2+c,u=g.top+t.clientHeight/2-s.clientHeight/2+m;const C=p.split("-");switch(C[0]){case"top":u+=-s.clientHeight/2-t.clientHeight;break;case"bottom":u+=s.clientHeight/2+t.clientHeight;break;case"left":u+=s.clientHeight/2-t.clientHeight,d+=-s.clientWidth/2-t.clientWidth/2;break;case"right":u+=s.clientHeight/2-t.clientHeight,d+=s.clientWidth/2+t.clientWidth/2;break}switch(C[1]){case"left":d+=s.clientWidth/2-t.clientWidth/2;break;case"right":d+=-s.clientWidth/2+t.clientWidth/2;break}}l.left=d+"px",l.top=u+"px",i.scrollToTargetSwitch&&typeof s.scrollIntoView=="function"&&e.nextTick(()=>{s.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})})}}}function N(i,o,r,n){const l=e.computed(()=>i.steps.length),v=()=>{const c=n.value;n.value=-1,e.nextTick(()=>{o.emit("guide-close",c)})};return{stepsCount:l,closeGuide:v,setCurrentIndex:c=>{c!==-1&&i.stepChange()&&(c>-1&&c<l.value?(n.value=c,e.nextTick(()=>{r()})):console.error("stepIndex is not within the value range")),c===-1&&v()}}}var h=e.defineComponent({name:"DStepsGuide",props:y,emits:["guide-close","update:stepIndex"],setup(i,o){var f;const r=e.ref((f=i.stepIndex)!=null?f:0),n=e.computed({set:t=>{i.stepIndex!=null&&o.emit("update:stepIndex",t),r.value=t},get:()=>r.value}),l=e.computed(()=>{const t=i.steps[n.value];return t&&(t.position=t.position||"top"),t}),{stepsRef:v,guidePosition:m,guideClassList:c,updateGuidePosition:p}=b(i,l),{stepsCount:s,closeGuide:d,setCurrentIndex:u}=N(i,o,p,n);return e.onMounted(()=>{p()}),o.expose({closeGuide:d,setCurrentIndex:u}),()=>n.value>-1&&s.value>0?e.createVNode(e.Teleport,{to:"body"},{default:()=>[e.createVNode("div",{style:m,class:c,ref:v},[e.createVNode("div",{class:"devui-shining-dot"},null),e.createVNode("div",{class:"devui-shining-plus"},null),e.createVNode("div",{class:"devui-arrow"},null),e.createVNode("div",{class:"devui-guide-container"},[e.createVNode("p",{class:"devui-title"},[l.value.title]),i.showClose?e.createVNode("div",{class:"icon icon-close",onClick:d},null):null,e.createVNode("div",{class:"devui-content"},[l.value.content]),e.createVNode("div",{class:"devui-ctrl"},[i.showDots?e.createVNode("div",{class:"devui-dots"},[i.steps.map((t,g)=>e.createVNode("em",{class:["icon icon-dot-status",l.value===t?"devui-active":""],key:g},null))]):null,e.createVNode("div",{class:"devui-guide-btn"},[n.value>0?e.createVNode("div",{class:"devui-prev-step",onClick:()=>u(n.value-1)},["\u4E0A\u4E00\u6B65"]):null,n.value===s.value-1?e.createVNode("div",{onClick:d},["\u6211\u77E5\u9053\u5566"]):e.createVNode("div",{class:"devui-next-step",onClick:()=>{u(n.value+1)}},["\u6211\u77E5\u9053\u5566,\u7EE7\u7EED"])])])])])]}):null}}),V={mounted(i,o,r){},updated(i,o){}};h.install=function(i){i.component(h.name,h)};var w={title:"StepsGuide \u64CD\u4F5C\u6307\u5F15",category:"\u5BFC\u822A",status:"80%",install(i){i.use(h),i.directive("StepsGuide",V)}};a.StepsGuide=h,a.default=w,Object.defineProperty(a,"__esModule",{value:!0}),a[Symbol.toStringTag]="Module"});
@@ -1,7 +0,0 @@
1
- {
2
- "name": "steps-guide",
3
- "version": "0.0.0",
4
- "main": "index.umd.js",
5
- "module": "index.es.js",
6
- "style": "style.css"
7
- }
@@ -1 +0,0 @@
1
- @charset "UTF-8";.devui-steps-guide{width:400px;min-height:160px;background:#5e7ce0;box-shadow:var(--devui-shadow-length-feedback-overlay, 0 4px 16px 0) #5170ff4d;border-radius:var(--devui-border-radius-feedback, 4px);font-size:12px;color:#fff;padding:20px;position:absolute}.devui-steps-guide .devui-title{font-size:12px;opacity:1;margin:0 0 20px;padding:0}.devui-steps-guide>.devui-arrow,.devui-steps-guide>.devui-arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.devui-steps-guide>.devui-arrow{border-width:8px}.devui-steps-guide.left>.devui-arrow{top:23px;right:-6px;margin-top:-3px;border-right-width:0;transform:rotate(-135deg);border-left-color:#5e7ce0}.devui-steps-guide.top>.devui-arrow,.devui-steps-guide.top-left>.devui-arrow,.devui-steps-guide.top-right>.devui-arrow{bottom:-6px;border-bottom-width:0;border-top-color:#5e7ce0;transform:rotate(135deg)}.devui-steps-guide.top>.devui-arrow{left:calc(50% - 4px)}.devui-steps-guide.top-left>.devui-arrow{left:23px}.devui-steps-guide.top-right>.devui-arrow{right:23px;transform:rotate(-135deg)}.devui-steps-guide.right>.devui-arrow{top:23px;left:-6px;margin-top:-3px;border-left-width:0;transform:rotate(135deg);border-right-color:#5e7ce0}.devui-steps-guide.bottom>.devui-arrow,.devui-steps-guide.bottom-left>.devui-arrow,.devui-steps-guide.bottom-right>.devui-arrow{top:-6px;margin-left:3px;border-top-width:0;border-bottom-color:#5e7ce0}.devui-steps-guide.bottom>.devui-arrow{left:calc(50% - 4px);transform:rotate(-135deg)}.devui-steps-guide.bottom-right>.devui-arrow{right:23px;transform:rotate(135deg)}.devui-steps-guide.bottom-left>.devui-arrow{left:23px;transform:rotate(-135deg)}.devui-steps-guide>.devui-shining-dot,.devui-steps-guide .devui-shining-plus{position:absolute;background:#5e7ce0;width:6px;height:6px;border-radius:var(--devui-border-radius-feedback, 4px)}.devui-steps-guide.left>.devui-shining-dot,.devui-steps-guide.left>.devui-shining-plus{top:21px;right:-30px}.devui-steps-guide.right>.devui-shining-dot,.devui-steps-guide.right>.devui-shining-plus{top:21px;left:-30px}.devui-steps-guide.top>.devui-shining-dot,.devui-steps-guide.top>.devui-shining-plus{left:calc(50% - 3px);bottom:-30px}.devui-steps-guide.top-left>.devui-shining-dot,.devui-steps-guide.top-left>.devui-shining-plus{left:21px;bottom:-30px}.devui-steps-guide.top-right>.devui-shining-dot,.devui-steps-guide.top-right>.devui-shining-plus{right:21px;bottom:-30px}.devui-steps-guide.bottom>.devui-shining-dot,.devui-steps-guide.bottom>.devui-shining-plus{left:calc(50% - 3px);top:-30px}.devui-steps-guide.bottom-right>.devui-shining-dot,.devui-steps-guide.bottom-right>.devui-shining-plus{top:-30px;right:21px}.devui-steps-guide.bottom-left>.devui-shining-dot,.devui-steps-guide.bottom-left>.devui-shining-plus{top:-30px;left:21px}.devui-steps-guide .devui-shining-plus{animation:devui-glow 2s 0s infinite}.devui-steps-guide .devui-guide-container{position:relative}.devui-steps-guide .devui-guide-container>.icon-close{position:absolute;top:0;right:0;cursor:pointer}.devui-steps-guide .devui-guide-container .devui-ctrl{display:flex;flex-wrap:wrap}.devui-steps-guide .devui-guide-container .devui-ctrl .devui-dots{color:#fff;position:relative;top:25px;font-size:12px;height:30px}.devui-steps-guide .devui-guide-container .devui-ctrl .devui-dots>em{opacity:.2;margin:0 5px 0 2px}.devui-steps-guide .devui-guide-container .devui-ctrl .devui-dots>em.devui-active{opacity:1}.devui-steps-guide .devui-guide-container .devui-ctrl .devui-guide-btn{display:flex;flex-flow:row nowrap;flex-grow:1;justify-content:flex-end;padding:20px 0 0;white-space:nowrap}.devui-steps-guide .devui-guide-container .devui-ctrl .devui-guide-btn>div{color:#fff;background:rgba(255,255,255,.1);border-radius:4px;padding:5px 15px;cursor:pointer;margin-left:10px}.devui-steps-guide .devui-guide-container .devui-ctrl .devui-guide-btn>div.devui-prev-step{background:none;border:solid 1px rgba(255,255,255,.1)}@keyframes devui-glow{0%{transform:scale(1);opacity:.5}25%{transform:scale(2);opacity:.3}50%{transform:scale(3);opacity:.1}75%{transform:scale(2);opacity:.3}to{transform:scale(1);opacity:.5}}
package/sticky/index.d.ts DELETED
@@ -1,7 +0,0 @@
1
- import { App } from 'vue';
2
- declare function install(app: App): void
3
- declare const _default: {
4
- install: typeof install;
5
- version: string;
6
- };
7
- export default _default;
@@ -1,197 +0,0 @@
1
- import { defineComponent, reactive, watch, onMounted, ref, createVNode } from "vue";
2
- var Sticky = defineComponent({
3
- name: "DSticky",
4
- props: {
5
- zIndex: {
6
- type: Number
7
- },
8
- container: {
9
- type: Object
10
- },
11
- view: {
12
- type: Object,
13
- default: () => {
14
- return {
15
- top: 0,
16
- bottom: 0
17
- };
18
- }
19
- },
20
- scrollTarget: {
21
- type: Object
22
- }
23
- },
24
- emits: ["statusChange"],
25
- setup(props, ctx) {
26
- const {
27
- slots
28
- } = ctx;
29
- let container;
30
- let scrollTarget;
31
- let scrollTimer;
32
- let scrollPreStart;
33
- const THROTTLE_DELAY = 16;
34
- const THROTTLE_TRIGGER = 100;
35
- let parentNode;
36
- let containerLeft = 0;
37
- const state = reactive({
38
- status: "normal"
39
- });
40
- watch(() => props.zIndex, () => {
41
- init();
42
- });
43
- watch(() => props.container, () => {
44
- init();
45
- });
46
- watch(() => props.scrollTarget, () => {
47
- init();
48
- });
49
- watch(() => state.status, () => {
50
- ctx.emit("statusChange", state.status);
51
- }, {
52
- immediate: true
53
- });
54
- const init = () => {
55
- parentNode = stickyRef.value.parentElement;
56
- if (!props.container) {
57
- container = parentNode;
58
- } else {
59
- container = props.container;
60
- }
61
- stickyRef.value.style.zIndex = props.zIndex;
62
- scrollTarget = props.scrollTarget || window;
63
- scrollTarget.addEventListener("scroll", throttle);
64
- initScrollStatus(scrollTarget);
65
- };
66
- const initScrollStatus = (target) => {
67
- const scrollTargets = target === window ? [document.documentElement, document.body] : [target];
68
- let flag = false;
69
- scrollTargets.forEach((scrollTarget2) => {
70
- if (scrollTarget2.scrollTop && scrollTarget2.scrollTop > 0) {
71
- flag = true;
72
- }
73
- });
74
- if (flag) {
75
- setTimeout(scrollHandler);
76
- }
77
- };
78
- const statusProcess = (status) => {
79
- const wrapper = stickyRef.value || document.createElement("div");
80
- switch (status) {
81
- case "normal":
82
- wrapper.style.top = "auto";
83
- wrapper.style.left = "auto";
84
- wrapper.style.position = "static";
85
- break;
86
- case "follow":
87
- const scrollTargetElement = scrollTarget;
88
- const viewOffset = scrollTarget && scrollTarget !== window ? scrollTargetElement.getBoundingClientRect().top : 0;
89
- wrapper.style.top = +viewOffset + (props.view && props.view.top || 0) + "px";
90
- wrapper.style.left = wrapper.getBoundingClientRect().left + "px";
91
- wrapper.style.position = "fixed";
92
- break;
93
- case "stay":
94
- wrapper.style.top = calculateRelativePosition(wrapper, parentNode, "top") + "px";
95
- wrapper.style.left = "auto";
96
- wrapper.style.position = "relative";
97
- break;
98
- case "remain":
99
- if (wrapper.style.position !== "fixed" && wrapper.style.position !== "absolute") {
100
- wrapper.style.top = calculateRelativePosition(wrapper, parentNode, "top") + "px";
101
- wrapper.style.left = "auto";
102
- wrapper.style.position = "absolute";
103
- }
104
- wrapper.style.top = calculateRemainPosition(wrapper, parentNode, container) + "px";
105
- wrapper.style.left = calculateRelativePosition(wrapper, parentNode, "left") + "px";
106
- wrapper.style.position = "relative";
107
- break;
108
- }
109
- };
110
- const throttle = () => {
111
- const fn = scrollAndResizeHock;
112
- const time = Date.now();
113
- if (scrollTimer) {
114
- clearTimeout(scrollTimer);
115
- }
116
- if (!scrollPreStart) {
117
- scrollPreStart = time;
118
- }
119
- if (time - scrollPreStart > THROTTLE_TRIGGER) {
120
- fn();
121
- scrollPreStart = null;
122
- scrollTimer = null;
123
- } else {
124
- scrollTimer = setTimeout(() => {
125
- fn();
126
- scrollPreStart = null;
127
- scrollTimer = null;
128
- }, THROTTLE_DELAY);
129
- }
130
- };
131
- const scrollAndResizeHock = () => {
132
- if (container.getBoundingClientRect().left - (containerLeft || 0) !== 0) {
133
- state.status = "stay";
134
- containerLeft = container.getBoundingClientRect().left;
135
- } else {
136
- scrollHandler();
137
- }
138
- };
139
- const scrollHandler = () => {
140
- const scrollTargetElement = scrollTarget;
141
- const wrapper = stickyRef.value || document.createElement("div");
142
- const viewOffsetTop = scrollTarget && scrollTarget !== window ? scrollTargetElement.getBoundingClientRect().top : 0;
143
- const computedStyle = window.getComputedStyle(container);
144
- if (parentNode.getBoundingClientRect().top - viewOffsetTop > (props.view && props.view.top || 0)) {
145
- state.status = "normal";
146
- statusProcess(state.status);
147
- } else if (container.getBoundingClientRect().top + parseInt(computedStyle.paddingTop, 10) + parseInt(computedStyle.borderTopWidth, 10) - viewOffsetTop >= (props.view && props.view.top || 0)) {
148
- state.status = "normal";
149
- statusProcess(state.status);
150
- } else if (container.getBoundingClientRect().bottom - parseInt(computedStyle.paddingBottom, 10) - parseInt(computedStyle.borderBottomWidth, 10) < viewOffsetTop + (props.view && props.view.top || 0) + wrapper.getBoundingClientRect().height + (props.view && props.view.bottom || 0)) {
151
- state.status = "remain";
152
- statusProcess(state.status);
153
- } else if (container.getBoundingClientRect().top + parseInt(computedStyle.paddingTop, 10) - viewOffsetTop < (props.view && props.view.top || 0)) {
154
- state.status = "follow";
155
- statusProcess(state.status);
156
- }
157
- };
158
- const calculateRelativePosition = (element, relativeElement, direction) => {
159
- const key = {
160
- left: ["left", "Left"],
161
- top: ["top", "Top"]
162
- };
163
- if (window && window.getComputedStyle) {
164
- const computedStyle = window.getComputedStyle(relativeElement);
165
- return element.getBoundingClientRect()[key[direction][0]] - relativeElement.getBoundingClientRect()[key[direction][0]] - parseInt(computedStyle[direction === "left" ? "paddingLeft" : "paddingTop"], 10) - parseInt(computedStyle[direction === "left" ? "borderLeftWidth" : "borderTopWidth"], 10);
166
- }
167
- };
168
- const calculateRemainPosition = (element, relativeElement, container2) => {
169
- if (window && window.getComputedStyle) {
170
- const computedStyle = window.getComputedStyle(container2);
171
- const result = container2.getBoundingClientRect().height - element.getBoundingClientRect().height + container2.getBoundingClientRect().top - relativeElement.getBoundingClientRect().top - parseInt(computedStyle["paddingTop"], 10) - parseInt(computedStyle["borderTopWidth"], 10) - parseInt(computedStyle["paddingBottom"], 10) - parseInt(computedStyle["borderBottomWidth"], 10);
172
- return result < 0 ? 0 : result;
173
- }
174
- };
175
- onMounted(() => {
176
- init();
177
- });
178
- const stickyRef = ref();
179
- return () => {
180
- return createVNode("div", {
181
- "ref": stickyRef
182
- }, [slots.default ? slots.default() : ""]);
183
- };
184
- }
185
- });
186
- Sticky.install = function(app) {
187
- app.component(Sticky.name, Sticky);
188
- };
189
- var index = {
190
- title: "Sticky \u4FBF\u8D34",
191
- category: "\u901A\u7528",
192
- status: "50%",
193
- install(app) {
194
- app.use(Sticky);
195
- }
196
- };
197
- export { Sticky, index as default };
@@ -1 +0,0 @@
1
- (function(a,i){typeof exports=="object"&&typeof module!="undefined"?i(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],i):(a=typeof globalThis!="undefined"?globalThis:a||self,i(a.index={},a.Vue))})(this,function(a,i){"use strict";var r=i.defineComponent({name:"DSticky",props:{zIndex:{type:Number},container:{type:Object},view:{type:Object,default:()=>({top:0,bottom:0})},scrollTarget:{type:Object}},emits:["statusChange"],setup(e,h){const{slots:C}=h;let c,d,f,g;const B=16,S=100;let u,R=0;const s=i.reactive({status:"normal"});i.watch(()=>e.zIndex,()=>{w()}),i.watch(()=>e.container,()=>{w()}),i.watch(()=>e.scrollTarget,()=>{w()}),i.watch(()=>s.status,()=>{h.emit("statusChange",s.status)},{immediate:!0});const w=()=>{u=p.value.parentElement,e.container?c=e.container:c=u,p.value.style.zIndex=e.zIndex,d=e.scrollTarget||window,d.addEventListener("scroll",x),I(d)},I=l=>{const t=l===window?[document.documentElement,document.body]:[l];let o=!1;t.forEach(n=>{n.scrollTop&&n.scrollTop>0&&(o=!0)}),o&&setTimeout(v)},y=l=>{const t=p.value||document.createElement("div");switch(l){case"normal":t.style.top="auto",t.style.left="auto",t.style.position="static";break;case"follow":const n=d&&d!==window?d.getBoundingClientRect().top:0;t.style.top=+n+(e.view&&e.view.top||0)+"px",t.style.left=t.getBoundingClientRect().left+"px",t.style.position="fixed";break;case"stay":t.style.top=T(t,u,"top")+"px",t.style.left="auto",t.style.position="relative";break;case"remain":t.style.position!=="fixed"&&t.style.position!=="absolute"&&(t.style.top=T(t,u,"top")+"px",t.style.left="auto",t.style.position="absolute"),t.style.top=k(t,u,c)+"px",t.style.left=T(t,u,"left")+"px",t.style.position="relative";break}},x=()=>{const l=E,t=Date.now();f&&clearTimeout(f),g||(g=t),t-g>S?(l(),g=null,f=null):f=setTimeout(()=>{l(),g=null,f=null},B)},E=()=>{c.getBoundingClientRect().left-(R||0)!==0?(s.status="stay",R=c.getBoundingClientRect().left):v()},v=()=>{const l=d,t=p.value||document.createElement("div"),o=d&&d!==window?l.getBoundingClientRect().top:0,n=window.getComputedStyle(c);u.getBoundingClientRect().top-o>(e.view&&e.view.top||0)||c.getBoundingClientRect().top+parseInt(n.paddingTop,10)+parseInt(n.borderTopWidth,10)-o>=(e.view&&e.view.top||0)?(s.status="normal",y(s.status)):c.getBoundingClientRect().bottom-parseInt(n.paddingBottom,10)-parseInt(n.borderBottomWidth,10)<o+(e.view&&e.view.top||0)+t.getBoundingClientRect().height+(e.view&&e.view.bottom||0)?(s.status="remain",y(s.status)):c.getBoundingClientRect().top+parseInt(n.paddingTop,10)-o<(e.view&&e.view.top||0)&&(s.status="follow",y(s.status))},T=(l,t,o)=>{const n={left:["left","Left"],top:["top","Top"]};if(window&&window.getComputedStyle){const m=window.getComputedStyle(t);return l.getBoundingClientRect()[n[o][0]]-t.getBoundingClientRect()[n[o][0]]-parseInt(m[o==="left"?"paddingLeft":"paddingTop"],10)-parseInt(m[o==="left"?"borderLeftWidth":"borderTopWidth"],10)}},k=(l,t,o)=>{if(window&&window.getComputedStyle){const n=window.getComputedStyle(o),m=o.getBoundingClientRect().height-l.getBoundingClientRect().height+o.getBoundingClientRect().top-t.getBoundingClientRect().top-parseInt(n.paddingTop,10)-parseInt(n.borderTopWidth,10)-parseInt(n.paddingBottom,10)-parseInt(n.borderBottomWidth,10);return m<0?0:m}};i.onMounted(()=>{w()});const p=i.ref();return()=>i.createVNode("div",{ref:p},[C.default?C.default():""])}});r.install=function(e){e.component(r.name,r)};var b={title:"Sticky \u4FBF\u8D34",category:"\u901A\u7528",status:"50%",install(e){e.use(r)}};a.Sticky=r,a.default=b,Object.defineProperty(a,"__esModule",{value:!0}),a[Symbol.toStringTag]="Module"});
@@ -1,7 +0,0 @@
1
- {
2
- "name": "sticky",
3
- "version": "0.0.0",
4
- "main": "index.umd.js",
5
- "module": "index.es.js",
6
- "style": "style.css"
7
- }
package/table/index.d.ts DELETED
@@ -1,7 +0,0 @@
1
- import { App } from 'vue';
2
- declare function install(app: App): void
3
- declare const _default: {
4
- install: typeof install;
5
- version: string;
6
- };
7
- export default _default;