vue-devui 1.0.0-alpha.6 → 1.0.0-beta.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +32 -35
- package/accordion/index.d.ts +7 -0
- package/accordion/index.es.js +508 -1
- package/accordion/index.umd.js +1 -1
- package/accordion/style.css +1 -1
- package/alert/index.d.ts +7 -0
- package/alert/index.es.js +178 -1
- package/alert/index.umd.js +1 -1
- package/alert/style.css +1 -1
- package/anchor/index.d.ts +7 -0
- package/anchor/index.es.js +263 -1
- package/anchor/index.umd.js +1 -1
- package/avatar/index.d.ts +7 -0
- package/avatar/index.es.js +301 -1
- package/avatar/index.umd.js +1 -1
- package/back-top/index.d.ts +7 -0
- package/back-top/index.es.js +128 -0
- package/back-top/index.umd.js +1 -0
- package/back-top/package.json +7 -0
- package/back-top/style.css +1 -0
- package/badge/index.d.ts +7 -0
- package/badge/index.es.js +95 -1
- package/badge/index.umd.js +1 -1
- package/breadcrumb/index.d.ts +7 -0
- package/breadcrumb/index.es.js +127 -1
- package/breadcrumb/index.umd.js +1 -1
- package/button/index.d.ts +7 -0
- package/button/index.es.js +392 -1
- package/button/index.umd.js +1 -1
- package/button/style.css +1 -1
- package/card/index.d.ts +7 -0
- package/card/index.es.js +61 -1
- package/card/index.umd.js +1 -1
- package/carousel/index.d.ts +7 -0
- package/carousel/index.es.js +329 -1
- package/carousel/index.umd.js +1 -1
- package/cascader/index.d.ts +7 -0
- package/cascader/index.es.js +1343 -1
- package/cascader/index.umd.js +1 -1
- package/cascader/style.css +1 -1
- package/checkbox/index.d.ts +7 -0
- package/checkbox/index.es.js +377 -1
- package/checkbox/index.umd.js +1 -1
- package/comment/index.d.ts +7 -0
- package/comment/index.es.js +85 -0
- package/comment/index.umd.js +1 -0
- package/comment/package.json +7 -0
- package/comment/style.css +1 -0
- package/countdown/index.d.ts +7 -0
- package/countdown/index.es.js +176 -0
- package/countdown/index.umd.js +1 -0
- package/countdown/package.json +7 -0
- package/countdown/style.css +1 -0
- package/date-picker/index.d.ts +7 -0
- package/date-picker/index.es.js +1172 -1
- package/date-picker/index.umd.js +1 -1
- package/date-picker/style.css +1 -1
- package/dragdrop/index.d.ts +7 -0
- package/dragdrop/index.es.js +32 -0
- package/dragdrop/index.umd.js +1 -0
- package/dragdrop/package.json +7 -0
- package/drawer/index.d.ts +7 -0
- package/drawer/index.es.js +287 -0
- package/drawer/index.umd.js +1 -0
- package/drawer/package.json +7 -0
- package/drawer/style.css +1 -0
- package/dropdown/index.d.ts +7 -0
- package/dropdown/index.es.js +535 -0
- package/dropdown/index.umd.js +1 -0
- package/dropdown/package.json +7 -0
- package/dropdown/style.css +1 -0
- package/editable-select/index.d.ts +7 -0
- package/editable-select/index.es.js +5857 -1
- package/editable-select/index.umd.js +27 -1
- package/editable-select/style.css +1 -1
- package/form/index.d.ts +7 -0
- package/form/index.es.js +2244 -0
- package/form/index.umd.js +1 -0
- package/form/package.json +7 -0
- package/form/style.css +1 -0
- package/fullscreen/index.d.ts +7 -0
- package/fullscreen/index.es.js +163 -1
- package/fullscreen/index.umd.js +1 -1
- package/gantt/index.d.ts +7 -0
- package/gantt/index.es.js +535 -0
- package/gantt/index.umd.js +1 -0
- package/gantt/package.json +7 -0
- package/gantt/style.css +1 -0
- package/grid/index.d.ts +7 -0
- package/grid/index.es.js +269 -0
- package/grid/index.umd.js +1 -0
- package/grid/package.json +7 -0
- package/grid/style.css +1 -0
- package/icon/index.d.ts +7 -0
- package/icon/index.es.js +75 -1
- package/icon/index.umd.js +1 -1
- package/image-preview/index.d.ts +7 -0
- package/image-preview/index.es.js +498 -1
- package/image-preview/index.umd.js +1 -1
- package/image-preview/style.css +1 -1
- package/index.d.ts +7 -0
- package/input/index.d.ts +7 -0
- package/input/index.es.js +190 -1
- package/input/index.umd.js +1 -1
- package/input-icon/index.d.ts +7 -0
- package/input-icon/index.es.js +332 -0
- package/input-icon/index.umd.js +1 -0
- package/input-icon/package.json +7 -0
- package/input-icon/style.css +1 -0
- package/input-number/index.d.ts +7 -0
- package/input-number/index.es.js +240 -1
- package/input-number/index.umd.js +1 -1
- package/layout/index.d.ts +7 -0
- package/layout/index.es.js +100 -0
- package/layout/index.umd.js +1 -0
- package/layout/package.json +7 -0
- package/layout/style.css +1 -0
- package/loading/index.d.ts +7 -0
- package/loading/index.es.js +256 -1
- package/loading/index.umd.js +1 -1
- package/modal/index.d.ts +7 -0
- package/modal/index.es.js +1225 -1
- package/modal/index.umd.js +1 -1
- package/modal/style.css +1 -1
- package/nav-sprite/index.d.ts +7 -0
- package/nav-sprite/index.es.js +742 -0
- package/nav-sprite/index.umd.js +1 -0
- package/nav-sprite/package.json +7 -0
- package/nuxt/components/Accordion.js +3 -0
- package/nuxt/components/Alert.js +3 -0
- package/nuxt/components/Anchor.js +3 -0
- package/nuxt/components/Aside.js +3 -0
- package/nuxt/components/Avatar.js +3 -0
- package/nuxt/components/BackTop.js +3 -0
- package/nuxt/components/Badge.js +3 -0
- package/nuxt/components/Breadcrumb.js +3 -0
- package/nuxt/components/Button.js +3 -0
- package/nuxt/components/Card.js +3 -0
- package/nuxt/components/Carousel.js +3 -0
- package/nuxt/components/Cascader.js +3 -0
- package/nuxt/components/Checkbox.js +3 -0
- package/nuxt/components/Col.js +3 -0
- package/nuxt/components/Column.js +3 -0
- package/nuxt/components/Comment.js +3 -0
- package/nuxt/components/Content.js +3 -0
- package/nuxt/components/Countdown.js +3 -0
- package/nuxt/components/DatePicker.js +3 -0
- package/nuxt/components/Drawer.js +3 -0
- package/nuxt/components/Dropdown.js +3 -0
- package/nuxt/components/EditableSelect.js +3 -0
- package/nuxt/components/FixedOverlay.js +3 -0
- package/nuxt/components/FlexibleOverlay.js +3 -0
- package/nuxt/components/Footer.js +3 -0
- package/nuxt/components/Form.js +3 -0
- package/nuxt/components/FormControl.js +3 -0
- package/nuxt/components/FormItem.js +3 -0
- package/nuxt/components/FormLabel.js +3 -0
- package/nuxt/components/FormOperation.js +3 -0
- package/nuxt/components/Fullscreen.js +3 -0
- package/nuxt/components/Gantt.js +3 -0
- package/nuxt/components/Header.js +3 -0
- package/nuxt/components/Icon.js +2 -0
- package/nuxt/components/ImagePreviewService.js +3 -0
- package/nuxt/components/Input.js +3 -0
- package/nuxt/components/InputIcon.js +3 -0
- package/nuxt/components/InputNumber.js +3 -0
- package/nuxt/components/Layout.js +3 -0
- package/nuxt/components/Loading.js +3 -0
- package/nuxt/components/LoadingService.js +3 -0
- package/nuxt/components/Modal.js +3 -0
- package/nuxt/components/NavSprite.js +2 -0
- package/nuxt/components/Pagination.js +3 -0
- package/nuxt/components/Panel.js +3 -0
- package/nuxt/components/Popover.js +3 -0
- package/nuxt/components/Progress.js +3 -0
- package/nuxt/components/QuadrantDiagram.js +3 -0
- package/nuxt/components/Radio.js +3 -0
- package/nuxt/components/RadioGroup.js +3 -0
- package/nuxt/components/Rate.js +3 -0
- package/nuxt/components/ReadTip.js +3 -0
- package/nuxt/components/Result.js +3 -0
- package/nuxt/components/Row.js +3 -0
- package/nuxt/components/Search.js +3 -0
- package/nuxt/components/Select.js +3 -0
- package/nuxt/components/Skeleton.js +3 -0
- package/nuxt/components/SkeletonItem.js +3 -0
- package/nuxt/components/Slider.js +3 -0
- package/nuxt/components/Splitter.js +3 -0
- package/nuxt/components/Statistic.js +3 -0
- package/nuxt/components/Status.js +3 -0
- package/nuxt/components/StepsGuide.js +3 -0
- package/nuxt/components/StickSlider.js +3 -0
- package/nuxt/components/Sticky.js +2 -0
- package/nuxt/components/Switch.js +3 -0
- package/nuxt/components/Table.js +3 -0
- package/nuxt/components/Tabs.js +3 -0
- package/nuxt/components/Tag.js +3 -0
- package/nuxt/components/TagInput.js +3 -0
- package/nuxt/components/Textarea.js +3 -0
- package/nuxt/components/TimeAxis.js +3 -0
- package/nuxt/components/TimeAxisItem.js +3 -0
- package/nuxt/components/TimePicker.js +3 -0
- package/nuxt/components/Toast.js +3 -0
- package/nuxt/components/ToastService.js +3 -0
- package/nuxt/components/Tooltip.js +3 -0
- package/nuxt/components/Transfer.js +3 -0
- package/nuxt/components/Tree.js +3 -0
- package/nuxt/components/TreeSelect.js +3 -0
- package/nuxt/components/Upload.js +3 -0
- package/nuxt/components/buttonProps.js +3 -0
- package/nuxt/index.js +13 -0
- package/overlay/index.d.ts +7 -0
- package/overlay/index.es.js +368 -1
- package/overlay/index.umd.js +1 -1
- package/overlay/style.css +1 -1
- package/package.json +6 -47
- package/pagination/index.d.ts +7 -0
- package/pagination/index.es.js +642 -1
- package/pagination/index.umd.js +1 -1
- package/panel/index.d.ts +7 -0
- package/panel/index.es.js +205 -1
- package/panel/index.umd.js +1 -1
- package/panel/style.css +1 -1
- package/popover/index.d.ts +7 -0
- package/popover/index.es.js +236 -1
- package/popover/index.umd.js +1 -1
- package/progress/index.d.ts +7 -0
- package/progress/index.es.js +153 -1
- package/progress/index.umd.js +3 -1
- package/quadrant-diagram/index.d.ts +7 -0
- package/quadrant-diagram/index.es.js +489 -1
- package/quadrant-diagram/index.umd.js +1 -1
- package/radio/index.d.ts +7 -0
- package/radio/index.es.js +225 -1
- package/radio/index.umd.js +1 -1
- package/rate/index.d.ts +7 -0
- package/rate/index.es.js +220 -1
- package/rate/index.umd.js +1 -1
- package/read-tip/index.d.ts +7 -0
- package/read-tip/index.es.js +258 -0
- package/read-tip/index.umd.js +1 -0
- package/read-tip/package.json +7 -0
- package/read-tip/style.css +1 -0
- package/result/index.d.ts +7 -0
- package/result/index.es.js +119 -0
- package/result/index.umd.js +1 -0
- package/result/package.json +7 -0
- package/result/style.css +1 -0
- package/ripple/index.d.ts +7 -0
- package/ripple/index.es.js +181 -1
- package/ripple/index.umd.js +1 -1
- package/search/index.d.ts +7 -0
- package/search/index.es.js +543 -1
- package/search/index.umd.js +1 -1
- package/select/index.d.ts +7 -0
- package/select/index.es.js +706 -1
- package/select/index.umd.js +1 -1
- package/skeleton/index.d.ts +7 -0
- package/skeleton/index.es.js +297 -1
- package/skeleton/index.umd.js +1 -1
- package/skeleton/style.css +1 -1
- package/slider/index.d.ts +7 -0
- package/slider/index.es.js +199 -1
- package/slider/index.umd.js +1 -1
- package/slider/style.css +1 -1
- package/splitter/index.d.ts +7 -0
- package/splitter/index.es.js +636 -1
- package/splitter/index.umd.js +1 -1
- package/statistic/index.d.ts +7 -0
- package/statistic/index.es.js +280 -0
- package/statistic/index.umd.js +1 -0
- package/statistic/package.json +7 -0
- package/statistic/style.css +1 -0
- package/status/index.d.ts +7 -0
- package/status/index.es.js +42 -1
- package/status/index.umd.js +1 -1
- package/steps-guide/index.d.ts +7 -0
- package/steps-guide/index.es.js +239 -1
- package/steps-guide/index.umd.js +1 -1
- package/steps-guide/style.css +1 -1
- package/sticky/index.d.ts +7 -0
- package/sticky/index.es.js +197 -1
- package/sticky/index.umd.js +1 -1
- package/style.css +1 -1
- package/switch/index.d.ts +7 -0
- package/switch/index.es.js +100 -1
- package/switch/index.umd.js +1 -1
- package/switch/style.css +1 -1
- package/table/index.d.ts +7 -0
- package/table/index.es.js +1836 -1
- package/table/index.umd.js +1 -1
- package/table/style.css +1 -1
- package/tabs/index.d.ts +7 -0
- package/tabs/index.es.js +195 -1
- package/tabs/index.umd.js +1 -1
- package/tabs/style.css +1 -1
- package/tag/index.d.ts +7 -0
- package/tag/index.es.js +131 -0
- package/tag/index.umd.js +1 -0
- package/tag/package.json +7 -0
- package/tag/style.css +1 -0
- package/tag-input/index.d.ts +7 -0
- package/tag-input/index.es.js +329 -1
- package/tag-input/index.umd.js +1 -1
- package/textarea/index.d.ts +7 -0
- package/textarea/index.es.js +132 -0
- package/textarea/index.umd.js +1 -0
- package/textarea/package.json +7 -0
- package/textarea/style.css +1 -0
- package/time-axis/index.d.ts +7 -0
- package/time-axis/index.es.js +299 -0
- package/time-axis/index.umd.js +1 -0
- package/time-axis/package.json +7 -0
- package/time-axis/style.css +1 -0
- package/time-picker/index.d.ts +7 -0
- package/time-picker/index.es.js +1260 -1
- package/time-picker/index.umd.js +1 -1
- package/time-picker/style.css +1 -1
- package/toast/index.d.ts +7 -0
- package/toast/index.es.js +2060 -1
- package/toast/index.umd.js +1 -1
- package/toast/style.css +1 -1
- package/tooltip/index.d.ts +7 -0
- package/tooltip/index.es.js +171 -1
- package/tooltip/index.umd.js +1 -1
- package/transfer/index.d.ts +7 -0
- package/transfer/index.es.js +1725 -1
- package/transfer/index.umd.js +1 -1
- package/transfer/style.css +1 -1
- package/tree/index.d.ts +7 -0
- package/tree/index.es.js +907 -1
- package/tree/index.umd.js +1 -1
- package/tree/style.css +1 -1
- package/tree-select/index.d.ts +7 -0
- package/tree-select/index.es.js +528 -0
- package/tree-select/index.umd.js +1 -0
- package/tree-select/package.json +7 -0
- package/tree-select/style.css +1 -0
- package/upload/index.d.ts +7 -0
- package/upload/index.es.js +2834 -1
- package/upload/index.umd.js +1 -1
- package/upload/style.css +1 -1
- package/vue-devui.es.js +27777 -1
- package/vue-devui.umd.js +29 -1
package/pagination/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(u,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(u=typeof globalThis!="undefined"?globalThis:u||self,e(u.index={},u.Vue))})(this,function(u,e){"use strict";const E={pageSize:{type:Number,default:10},total:{type:Number,default:0},pageSizeOptions:{type:Array,default:()=>[5,10,20,50]},pageSizeDirection:{type:Array,default:()=>["centerDown","centerUp"]},pageIndex:{type:Number,default:1},maxItems:{type:Number,default:10},preLink:{type:String,default:"<"},nextLink:{type:String,default:">"},size:{type:String,default:""},canJumpPage:{type:Boolean,default:!1},canChangePageSize:{type:Boolean,default:!1},canViewTotal:{type:Boolean,default:!1},totalItemText:{type:String,default:"\u6240\u6709\u6761\u76EE"},goToText:{type:String,default:"\u8DF3\u81F3"},showJumpButton:{type:Boolean,default:!1},showTruePageIndex:{type:Boolean,default:!1},lite:{type:Boolean,default:!1},showPageSelector:{type:Boolean,default:!0},haveConfigMenu:{type:Boolean,default:!1},autoFixPageIndex:{type:Boolean,default:!0},autoHide:{type:Boolean,default:!1},"onUpdate:pageIndex":{type:Function},"onUpdate:pageSize":{type:Function},onPageIndexChange:{type:Function},onPageSizeChange:{type:Function}},F=(t,n,a)=>{const r=t,s=n;if(s>=a)return[2,a];const o=s-2;let i=r-(o>>1),c=r+(o-1>>1);return i<2&&(i=2,c=s-2),c>a&&(i=a-s+3,c=a),[i,c]};function L(t){return new Array(t||1).fill(0).map((n,a)=>({name:`${a+1}/${t}`,value:a+1}))}function h(t,n,a){document.addEventListener?t&&n&&a&&t.addEventListener(n,a,!1):t&&n&&a&&t.attachEvent("on"+n,a)}function j(t,n,a){document.removeEventListener?t&&n&&a&&t.removeEventListener(n,a,!1):t&&n&&a&&t.detachEvent("on"+n,a)}const M=typeof window!="undefined",g=Symbol("@@clickoutside"),N=new Map;let y,V=0,z=!0;function b(t,n,a){return M&&z&&(z=!1,h(document,"mousedown",r=>{y=r}),h(document,"mouseup",r=>{for(const[s,o]of N)o[g].documentHandler(r,y)})),function(r,s){!a||!n.instance||!r.target||!s.target||t.contains(r.target)||t.contains(s.target)||t===r.target||t[g].bindingFn&&t[g].bindingFn()}}const D={beforeMount:function(t,n,a){V++,N.set(V,t),t[g]={nid:V,documentHandler:b(t,n,a),bindingFn:n.value}},updated:function(t,n,a){t[g].documentHandler=b(t,n,a),t[g].bindingFn=n.value},unmounted:function(t){N.delete(t[g].nid),delete t[g]}};var H=e.defineComponent({directives:{clickoutside:D},props:{currentPageSize:Number,pageSizeChange:Function,pageSizeOptions:Array},setup(){const t=e.ref(null),n=e.ref(!1);e.onMounted(()=>{h(t.value,"click",a)}),e.onUnmounted(()=>{j(t.value,"click",a)});const a=r=>{n.value=n.value?!1:!!r};return{paginationConfig:t,isShowConfig:n,closeConfigMenu:a}},render(){var i;const{closeConfigMenu:t,currentPageSize:n,pageSizeChange:a,pageSizeOptions:r,isShowConfig:s,$slots:o}=this;return e.withDirectives(e.createVNode("div",{class:"devui-pagination-config",ref:"paginationConfig"},[e.createVNode("div",{class:"devui-setup-icon"},[e.createVNode("i",{class:"icon-setting",style:"font-weight: bold;"},null)]),s&&e.createVNode("div",{class:"devui-config-container"},[(i=o.default)==null?void 0:i.call(o),e.createVNode("div",{class:"pagination-config-item"},[e.createVNode("div",{class:"config-item-title"},[e.createTextVNode("\u6BCF\u9875\u6761\u6570")]),e.createVNode("div",{class:"devui-page-number"},[r.map(c=>e.createVNode("div",{class:{choosed:c===n},key:c,onClick:a.bind(null,{value:c})},[c]))])])])]),[[e.resolveDirective("clickoutside"),t]])}});const O={goToText:String,size:{type:String,default:""},pageIndex:Number,showJumpButton:Boolean,totalPages:Number,cursor:Number,onChangeCursorEmit:Function};var J=e.defineComponent({props:O,emits:["changeCursorEmit"],setup(t,{emit:n}){const{pageIndex:a,totalPages:r,cursor:s}=e.toRefs(t),o=e.ref(a.value);e.watch(()=>a.value,l=>{o.value=l});let i=a.value;return{inputNum:o,jumpPageChange:l=>{i=+l,o.value=l,isNaN(l)&&setTimeout(()=>{o.value=a.value},300)},jump:l=>{i>r.value||(l==="btn"||l.key==="Enter")&&s.value!==i&&n("changeCursorEmit",i)}}},render(){const{goToText:t,size:n,inputNum:a,jumpPageChange:r,jump:s,showJumpButton:o}=this;return e.createVNode("div",{class:"devui-jump-container"},[t,e.createVNode(e.resolveComponent("d-input"),{class:["devui-pagination-input",n?"devui-pagination-input-"+n:""],size:n,modelValue:String(a),"onUpdate:modelValue":r,onKeydown:s},null),t==="\u8DF3\u81F3"&&"\u9875",o&&e.createVNode("div",{class:["devui-jump-button",n?"devui-jump-size-"+n:"devui-jump-size-default"],onClick:s.bind(null,"btn"),title:t},[e.createVNode("div",{class:"devui-pagination-go"},null)])])}});const A={size:{type:String,default:""},preLink:String,nextLink:String,lite:Boolean,cursor:Number,maxItems:Number,totalPages:Number,onChangeCursorEmit:Function,showTruePageIndex:Boolean};var U=e.defineComponent({props:A,emits:["changeCursorEmit"],setup(t,{emit:n}){return{showPageNum:e.computed(()=>F(t.cursor,t.maxItems,t.totalPages)),changeCursor:i=>{if(isNaN(i))return;const c=i<1?1:i>t.totalPages?t.totalPages:i|0;n("changeCursorEmit",c)},prevChange:i=>{if(t.cursor>1){const c=i===-1?t.cursor-1:i;n("changeCursorEmit",c)}},nextChange:i=>{if(t.cursor<t.totalPages){const c=i===-1?t.cursor+1:i;n("changeCursorEmit",c)}}}},render(){const{size:t,preLink:n,nextLink:a,lite:r,changeCursor:s,cursor:o,showPageNum:i,prevChange:c,totalPages:d,nextChange:l,showTruePageIndex:P}=this;return e.createVNode("ul",{class:["devui-pagination-list",t?"devui-pagination-"+t:""]},[e.createVNode("li",{onClick:c.bind(null,-1),class:{"devui-pagination-item":!0,disabled:o<=1}},[e.createVNode("a",{innerHTML:n,class:"devui-pagination-link"},null)]),!r&&e.createVNode(e.Fragment,null,[e.createVNode("li",{onClick:s.bind(null,1),class:{"devui-pagination-item":!0,active:o===1}},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("1")])]),i[0]>2&&e.createVNode("li",{onClick:c.bind(null,i[0]-1),class:"devui-pagination-item"},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("...")])]),(()=>{const C=[];for(let p=i[0];p<=i[1];p++)C.push(e.createVNode("li",{onClick:s.bind(null,p),key:p,class:{"devui-pagination-item":!0,active:o===p}},[e.createVNode("a",{class:"devui-pagination-link"},[p])]));return C})(),i[1]<d-1&&e.createVNode("li",{onClick:l.bind(null,i[1]+1),class:"devui-pagination-item"},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("...")])]),i[1]<d&&e.createVNode("li",{onClick:s.bind(null,d),class:{"devui-pagination-item":!0,active:o===d}},[e.createVNode("a",{class:"devui-pagination-link"},[d])]),P&&o>d&&d>0&&e.createVNode(e.Fragment,null,[o>d+1&&e.createVNode("li",{class:"devui-pagination-item disabled"},[e.createVNode("a",{class:"devui-pagination-link"},[e.createTextVNode("...")])]),e.createVNode("li",{class:"devui-pagination-item disabled active"},[e.createVNode("a",{class:"devui-pagination-link"},[o])])])]),e.createVNode("li",{onClick:l.bind(null,-1),class:{"devui-pagination-item":!0,disabled:o>=d}},[e.createVNode("a",{innerHTML:a,class:"devui-pagination-link"},null)])])}}),X="",m=e.defineComponent({name:"DPagination",components:{ConfigMenu:H,JumpPage:J,PageNumBtn:U},props:E,emits:["pageIndexChange","pageSizeChange","update:pageSize","update:pageIndex"],setup(t,{emit:n}){const a=e.computed(()=>L(o.value)),r=e.computed({get(){return!t.showTruePageIndex&&t.pageIndex>o.value?(n("update:pageIndex",o.value||1),o.value||1):t.pageIndex||1},set(l){n("update:pageIndex",l)}}),s=e.computed({get(){return t.pageSize},set(l){n("update:pageSize",l)}}),o=e.computed(()=>Math.ceil(t.total/t.pageSize)),i=l=>{r.value=l,n("pageIndexChange",l)};return{cursor:r,totalPages:o,changeCursorEmit:i,currentPageSize:s,pageSizeChange:l=>{s.value=l.value,t.autoFixPageIndex&&e.nextTick(()=>{r.value>o.value&&i(o.value)}),n("pageSizeChange",l.value)},litePageOptions:a,litePageIndexChange:l=>{i(l.value)}}},render(){const{total:t,pageIndex:n,pageSizeOptions:a,pageSizeDirection:r,preLink:s,nextLink:o,size:i,canJumpPage:c,canChangePageSize:d,canViewTotal:l,totalItemText:P,goToText:C,maxItems:p,showJumpButton:q,showTruePageIndex:K,lite:f,showPageSelector:k,haveConfigMenu:R,autoHide:G,$slots:x,cursor:S,totalPages:v,currentPageSize:T,pageSizeChange:I,changeCursorEmit:w,litePageOptions:Q,litePageIndexChange:W}=this;return G&&Math.min(...a)>t?null:e.createVNode("div",{class:"devui-pagination"},[d&&!f&&e.createVNode("div",{class:["devui-page-size",i?"devui-page-size-"+i:""]},[e.createVNode(e.resolveComponent("d-select"),{options:a,modelValue:T,onValueChange:I,pageSizeDirection:r},null)]),(!f||f&&k)&&l&&e.createVNode("div",{class:"devui-total-size"},[P,e.createTextVNode(": "),t]),f&&k&&e.createVNode("div",{class:"devui-page-size"},[e.createVNode(e.resolveComponent("d-select"),{options:Q,disabled:t===0,modelValue:S,onValueChange:W,pageSizeDirection:r},null)]),e.createVNode(e.resolveComponent("page-num-btn"),e.mergeProps({cursor:S,totalPages:v,size:i,lite:f,maxItems:p,preLink:s,nextLink:o,showTruePageIndex:K},{onChangeCursorEmit:w}),null),c&&!f&&e.createVNode(e.resolveComponent("jump-page"),e.mergeProps({goToText:C,size:i,pageIndex:n,totalPages:v,cursor:S,showJumpButton:q},{onChangeCursorEmit:w}),null),f&&R&&e.createVNode(e.resolveComponent("config-menu"),{currentPageSize:T,pageSizeChange:I,pageSizeOptions:a},{default:()=>{var B;return[(B=x.default)==null?void 0:B.call(x)]}})])}});m.install=t=>{t.component(m.name,m)};var _={title:"Pagination \u5206\u9875",category:"\u5BFC\u822A",status:"100%",install(t){t.use(m)}};u.Pagination=m,u.default=_,Object.defineProperty(u,"__esModule",{value:!0}),u[Symbol.toStringTag]="Module"});
|
package/panel/index.d.ts
ADDED
package/panel/index.es.js
CHANGED
|
@@ -1 +1,205 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { reactive, ref, defineComponent, provide, computed, createVNode, inject, onMounted, Transition } from "vue";
|
|
2
|
+
var panel = "";
|
|
3
|
+
const PanelProps = {
|
|
4
|
+
type: {
|
|
5
|
+
type: String,
|
|
6
|
+
default: "default"
|
|
7
|
+
},
|
|
8
|
+
cssClass: {
|
|
9
|
+
type: String,
|
|
10
|
+
default: ""
|
|
11
|
+
},
|
|
12
|
+
isCollapsed: {
|
|
13
|
+
type: Boolean,
|
|
14
|
+
default: false
|
|
15
|
+
},
|
|
16
|
+
beforeToggle: {
|
|
17
|
+
type: Function,
|
|
18
|
+
default: null
|
|
19
|
+
},
|
|
20
|
+
toggle: {
|
|
21
|
+
type: Function,
|
|
22
|
+
default: null
|
|
23
|
+
},
|
|
24
|
+
showAnimation: {
|
|
25
|
+
type: Boolean,
|
|
26
|
+
default: true
|
|
27
|
+
},
|
|
28
|
+
hasLeftPadding: {
|
|
29
|
+
type: Boolean,
|
|
30
|
+
default: true
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
const option = reactive({});
|
|
34
|
+
class Store {
|
|
35
|
+
static getByKey(timeStamp) {
|
|
36
|
+
return option[timeStamp];
|
|
37
|
+
}
|
|
38
|
+
static state() {
|
|
39
|
+
return option;
|
|
40
|
+
}
|
|
41
|
+
static setData(key, value) {
|
|
42
|
+
option[key] = ref(value);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
var Panel = defineComponent({
|
|
46
|
+
name: "DPanel",
|
|
47
|
+
props: PanelProps,
|
|
48
|
+
setup(props, ctx) {
|
|
49
|
+
provide("beforeToggle", props.beforeToggle);
|
|
50
|
+
provide("showAnimation", computed(() => props.showAnimation));
|
|
51
|
+
provide("hasLeftPadding", computed(() => props.hasLeftPadding));
|
|
52
|
+
const isCollapsed = ref(props.isCollapsed);
|
|
53
|
+
const type = computed(() => props.type);
|
|
54
|
+
const cssClass = computed(() => props.cssClass);
|
|
55
|
+
const onToggle = () => {
|
|
56
|
+
var _a;
|
|
57
|
+
(_a = props.toggle) == null ? void 0 : _a.call(props, Store.getByKey(`isCollapsed[${timeStamp}]`));
|
|
58
|
+
};
|
|
59
|
+
const timeStamp = new Date().getTime().toString();
|
|
60
|
+
Store.setData(`isCollapsed[${timeStamp}]`, isCollapsed.value);
|
|
61
|
+
return () => {
|
|
62
|
+
var _a, _b;
|
|
63
|
+
return createVNode("div", {
|
|
64
|
+
"onClick": onToggle,
|
|
65
|
+
"class": `devui-panel devui-panel-${type.value} ${cssClass.value}`
|
|
66
|
+
}, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)]);
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
var PanelHeader = defineComponent({
|
|
71
|
+
name: "DPanelHeader",
|
|
72
|
+
props: PanelProps,
|
|
73
|
+
setup(props, ctx) {
|
|
74
|
+
const beforeToggle = inject("beforeToggle");
|
|
75
|
+
const keys = Object.keys(Store.state());
|
|
76
|
+
const key = keys.pop();
|
|
77
|
+
const isCollapsed = ref(Store.state()[key]);
|
|
78
|
+
let changeFlag = ref();
|
|
79
|
+
let header = null;
|
|
80
|
+
const canToggle = () => {
|
|
81
|
+
let changeResult = Promise.resolve(true);
|
|
82
|
+
if (beforeToggle) {
|
|
83
|
+
const result = beforeToggle(isCollapsed);
|
|
84
|
+
if (typeof result !== void 0) {
|
|
85
|
+
if (result instanceof Promise) {
|
|
86
|
+
changeResult = result;
|
|
87
|
+
} else {
|
|
88
|
+
changeResult = Promise.resolve(result);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return changeResult;
|
|
93
|
+
};
|
|
94
|
+
canToggle().then((val) => changeFlag.value = val);
|
|
95
|
+
const toggleBody = () => {
|
|
96
|
+
canToggle().then((val) => {
|
|
97
|
+
var _a, _b;
|
|
98
|
+
changeFlag.value = val;
|
|
99
|
+
if (!val) {
|
|
100
|
+
if (!isCollapsed.value) {
|
|
101
|
+
Store.setData(`${key}`, !isCollapsed.value);
|
|
102
|
+
isCollapsed.value = !isCollapsed.value;
|
|
103
|
+
(_a = props.toggle) == null ? void 0 : _a.call(props, isCollapsed.value);
|
|
104
|
+
}
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
if (isCollapsed.value !== void 0) {
|
|
108
|
+
Store.setData(`${key}`, !isCollapsed.value);
|
|
109
|
+
isCollapsed.value = !isCollapsed.value;
|
|
110
|
+
(_b = props.toggle) == null ? void 0 : _b.call(props, isCollapsed.value);
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
return () => {
|
|
115
|
+
var _a, _b;
|
|
116
|
+
if (ctx.slots.default) {
|
|
117
|
+
header = createVNode("div", {
|
|
118
|
+
"class": "devui-panel-heading",
|
|
119
|
+
"onClick": toggleBody,
|
|
120
|
+
"style": {
|
|
121
|
+
"cursor": changeFlag.value ? "pointer" : "auto"
|
|
122
|
+
}
|
|
123
|
+
}, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)]);
|
|
124
|
+
}
|
|
125
|
+
return header;
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
var PanelBody = defineComponent({
|
|
130
|
+
name: "DPanelBody",
|
|
131
|
+
props: PanelProps,
|
|
132
|
+
setup(props, ctx) {
|
|
133
|
+
let animationName = inject("showAnimation");
|
|
134
|
+
let hasLeftPadding = inject("hasLeftPadding");
|
|
135
|
+
const keys = Object.keys(Store.state());
|
|
136
|
+
const key = keys.pop();
|
|
137
|
+
const isCollapsed = Store.state();
|
|
138
|
+
const bodyEl = ref();
|
|
139
|
+
onMounted(() => {
|
|
140
|
+
if (bodyEl.value) {
|
|
141
|
+
const dom = bodyEl.value;
|
|
142
|
+
if (isCollapsed[key])
|
|
143
|
+
dom.style.height = `${dom.offsetHeight}px`;
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
const enter = (element) => {
|
|
147
|
+
const el = element;
|
|
148
|
+
el.style.height = "";
|
|
149
|
+
const height = el.offsetHeight;
|
|
150
|
+
el.style.height = "0px";
|
|
151
|
+
el.offsetHeight;
|
|
152
|
+
el.style.height = `${height}px`;
|
|
153
|
+
};
|
|
154
|
+
const leave = (element) => {
|
|
155
|
+
const el = element;
|
|
156
|
+
el.style.height = "0px";
|
|
157
|
+
};
|
|
158
|
+
return () => {
|
|
159
|
+
return createVNode("div", {
|
|
160
|
+
"class": `devui-panel devui-panel-${props.type} ${props.cssClass}`
|
|
161
|
+
}, [createVNode(Transition, {
|
|
162
|
+
"name": animationName.value ? "devui-panel" : "",
|
|
163
|
+
"onEnter": enter,
|
|
164
|
+
"onLeave": leave
|
|
165
|
+
}, {
|
|
166
|
+
default: () => {
|
|
167
|
+
var _a, _b;
|
|
168
|
+
return [isCollapsed[key] === void 0 || isCollapsed[key] ? createVNode("div", {
|
|
169
|
+
"ref": bodyEl,
|
|
170
|
+
"class": `devui-panel-body ${isCollapsed[key] !== void 0 ? "devui-panel-body-collapse" : ""} ${!hasLeftPadding.value ? "no-left-padding" : ""}`
|
|
171
|
+
}, [createVNode("div", {
|
|
172
|
+
"class": "devui-panel-content"
|
|
173
|
+
}, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)])]) : null];
|
|
174
|
+
}
|
|
175
|
+
})]);
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
});
|
|
179
|
+
var PanelFooter = defineComponent({
|
|
180
|
+
name: "DPanelFooter",
|
|
181
|
+
setup(props, ctx) {
|
|
182
|
+
return () => {
|
|
183
|
+
var _a, _b;
|
|
184
|
+
const footerContent = ctx.slots.default ? createVNode("div", {
|
|
185
|
+
"class": "devui-panel-footer"
|
|
186
|
+
}, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a)]) : null;
|
|
187
|
+
return footerContent;
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
Panel.install = function(app) {
|
|
192
|
+
app.component(Panel.name, Panel);
|
|
193
|
+
app.component(PanelHeader.name, PanelHeader);
|
|
194
|
+
app.component(PanelBody.name, PanelBody);
|
|
195
|
+
app.component(PanelFooter.name, PanelFooter);
|
|
196
|
+
};
|
|
197
|
+
var index = {
|
|
198
|
+
title: "Panel \u9762\u677F",
|
|
199
|
+
category: "\u901A\u7528",
|
|
200
|
+
status: "100%",
|
|
201
|
+
install(app) {
|
|
202
|
+
app.use(Panel);
|
|
203
|
+
}
|
|
204
|
+
};
|
|
205
|
+
export { Panel, index as default };
|
package/panel/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(d,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(d=typeof globalThis!="undefined"?globalThis:d||self,e(d.index={},d.Vue))})(this,function(d,e){"use strict";var $="";const h={type:{type:String,default:"default"},cssClass:{type:String,default:""},isCollapsed:{type:Boolean,default:!1},beforeToggle:{type:Function,default:null},toggle:{type:Function,default:null},showAnimation:{type:Boolean,default:!0},hasLeftPadding:{type:Boolean,default:!0}},p=e.reactive({});class f{static getByKey(o){return p[o]}static state(){return p}static setData(o,u){p[o]=e.ref(u)}}var y=e.defineComponent({name:"DPanel",props:h,setup(t,o){e.provide("beforeToggle",t.beforeToggle),e.provide("showAnimation",e.computed(()=>t.showAnimation)),e.provide("hasLeftPadding",e.computed(()=>t.hasLeftPadding));const u=e.ref(t.isCollapsed),r=e.computed(()=>t.type),c=e.computed(()=>t.cssClass),l=()=>{var s;(s=t.toggle)==null||s.call(t,f.getByKey(`isCollapsed[${i}]`))},i=new Date().getTime().toString();return f.setData(`isCollapsed[${i}]`,u.value),()=>{var s,g;return e.createVNode("div",{onClick:l,class:`devui-panel devui-panel-${r.value} ${c.value}`},[(g=(s=o.slots).default)==null?void 0:g.call(s)])}}}),P=e.defineComponent({name:"DPanelHeader",props:h,setup(t,o){const u=e.inject("beforeToggle"),c=Object.keys(f.state()).pop(),l=e.ref(f.state()[c]);let i=e.ref(),s=null;const g=()=>{let n=Promise.resolve(!0);if(u){const a=u(l);typeof a!==void 0&&(a instanceof Promise?n=a:n=Promise.resolve(a))}return n};g().then(n=>i.value=n);const v=()=>{g().then(n=>{var a,m;if(i.value=n,!n){l.value||(f.setData(`${c}`,!l.value),l.value=!l.value,(a=t.toggle)==null||a.call(t,l.value));return}l.value!==void 0&&(f.setData(`${c}`,!l.value),l.value=!l.value,(m=t.toggle)==null||m.call(t,l.value))})};return()=>{var n,a;return o.slots.default&&(s=e.createVNode("div",{class:"devui-panel-heading",onClick:v,style:{cursor:i.value?"pointer":"auto"}},[(a=(n=o.slots).default)==null?void 0:a.call(n)])),s}}}),C=e.defineComponent({name:"DPanelBody",props:h,setup(t,o){let u=e.inject("showAnimation"),r=e.inject("hasLeftPadding");const l=Object.keys(f.state()).pop(),i=f.state(),s=e.ref();e.onMounted(()=>{if(s.value){const n=s.value;i[l]&&(n.style.height=`${n.offsetHeight}px`)}});const g=n=>{const a=n;a.style.height="";const m=a.offsetHeight;a.style.height="0px",a.offsetHeight,a.style.height=`${m}px`},v=n=>{const a=n;a.style.height="0px"};return()=>e.createVNode("div",{class:`devui-panel devui-panel-${t.type} ${t.cssClass}`},[e.createVNode(e.Transition,{name:u.value?"devui-panel":"",onEnter:g,onLeave:v},{default:()=>{var n,a;return[i[l]===void 0||i[l]?e.createVNode("div",{ref:s,class:`devui-panel-body ${i[l]!==void 0?"devui-panel-body-collapse":""} ${r.value?"":"no-left-padding"}`},[e.createVNode("div",{class:"devui-panel-content"},[(a=(n=o.slots).default)==null?void 0:a.call(n)])]):null]}})])}}),b=e.defineComponent({name:"DPanelFooter",setup(t,o){return()=>{var r,c;return o.slots.default?e.createVNode("div",{class:"devui-panel-footer"},[(c=(r=o.slots).default)==null?void 0:c.call(r)]):null}}});y.install=function(t){t.component(y.name,y),t.component(P.name,P),t.component(C.name,C),t.component(b.name,b)};var T={title:"Panel \u9762\u677F",category:"\u901A\u7528",status:"100%",install(t){t.use(y)}};d.Panel=y,d.default=T,Object.defineProperty(d,"__esModule",{value:!0}),d[Symbol.toStringTag]="Module"});
|
package/panel/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.devui-panel{line-height:1.5;background-color:var(--devui-base-bg, #ffffff)}.devui-panel .devui-panel-heading{padding:12px 20px;color:var(--devui-text, #252b3a)}.devui-panel .devui-panel-heading d-panel-header{line-height:1.5}.devui-panel .devui-panel-body{display:flex;position:relative;border-top:1px solid var(--devui-dividing-line, #dfe1e6)}.devui-panel .devui-panel-body .
|
|
1
|
+
.no-left-padding.devui-panel-body-collapse:before{content:none!important}.no-left-padding.devui-panel-body-collapse .devui-panel-content{border-left:none!important}.devui-panel{line-height:1.5;background-color:var(--devui-base-bg, #ffffff)}.devui-panel .devui-panel-heading{padding:12px 20px;color:var(--devui-text, #252b3a)}.devui-panel .devui-panel-heading d-panel-header{line-height:1.5}.devui-panel .devui-panel-body{display:flex;position:relative;border-top:1px solid var(--devui-dividing-line, #dfe1e6)}.devui-panel .devui-panel-body .devui-panel-content{line-height:1.5;padding:15px;background:var(--devui-base-bg, #ffffff);flex:1}.devui-panel .devui-panel-body.devui-panel-body-collapse:before{content:"";width:30px;height:100%}.devui-panel .devui-panel-body.devui-panel-body-collapse .devui-panel-content{border-left:2px solid var(--devui-dividing-line, #dfe1e6)}.devui-panel .devui-panel-footer{padding:10px 15px;color:var(--devui-text, #252b3a);background-color:var(--devui-area, #f8f8f8)}.devui-panel .devui-panel-footer d-panel-footer{line-height:1.5}.devui-panel.devui-panel-default .devui-panel-heading,.devui-panel.devui-panel-default .devui-panel-body{background-color:var(--devui-default-bg, #f3f6f8)}.devui-panel.devui-panel-primary .devui-panel-heading,.devui-panel.devui-panel-primary .devui-panel-body{background-color:var(--devui-primary-bg, #f2f5fc)}.devui-panel.devui-panel-primary .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-primary-line, #5e7ce0)}.devui-panel.devui-panel-info .devui-panel-heading,.devui-panel.devui-panel-info .devui-panel-body{background-color:var(--devui-info-bg, #f2f5fc)}.devui-panel.devui-panel-info .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-info-line, #5e7ce0)}.devui-panel.devui-panel-success .devui-panel-heading,.devui-panel.devui-panel-success .devui-panel-body{background-color:var(--devui-success-bg, #edfff9)}.devui-panel.devui-panel-success .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-success-line, #50d4ab)}.devui-panel.devui-panel-warning .devui-panel-heading,.devui-panel.devui-panel-warning .devui-panel-body{background-color:var(--devui-warning-bg, #fff3e8)}.devui-panel.devui-panel-warning .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-warning-line, #fa9841)}.devui-panel.devui-panel-danger .devui-panel-heading,.devui-panel.devui-panel-danger .devui-panel-body{background-color:var(--devui-danger-bg, #ffeeed)}.devui-panel.devui-panel-danger .devui-panel-body-collapse .devui-panel-content{border-color:var(--devui-danger-line, #f66f6a)}.devui-panel .devui-panel-leave-active{transition:all .3s ease-in-out;animation:panelUpOut .3s ease-in-out;animation-fill-mode:both}.devui-panel .devui-panel-enter-active{transition:all .3s ease-in-out;animation:panelUpIn .3s ease-in-out;animation-fill-mode:both}@keyframes panelUpOut{0%{transform:scaleY(1);transform-origin:0% 0%;opacity:1}to{transform:scaleY(0);transform-origin:0% 0%;opacity:0}}@keyframes panelUpIn{0%{transform:scaleY(0);transform-origin:0% 0%;opacity:0}to{transform:scaleY(1);transform-origin:0% 0%;opacity:1}}
|
package/popover/index.es.js
CHANGED
|
@@ -1 +1,236 @@
|
|
|
1
|
-
var
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __spreadValues = (a, b) => {
|
|
7
|
+
for (var prop in b || (b = {}))
|
|
8
|
+
if (__hasOwnProp.call(b, prop))
|
|
9
|
+
__defNormalProp(a, prop, b[prop]);
|
|
10
|
+
if (__getOwnPropSymbols)
|
|
11
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
+
if (__propIsEnum.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
}
|
|
15
|
+
return a;
|
|
16
|
+
};
|
|
17
|
+
import { defineComponent, ref, toRefs, reactive, watch, createVNode, withDirectives, resolveDirective, resolveComponent } from "vue";
|
|
18
|
+
var debounce = (callBack, wait) => {
|
|
19
|
+
let time = null;
|
|
20
|
+
return () => {
|
|
21
|
+
time && clearTimeout(time);
|
|
22
|
+
time = setTimeout(() => {
|
|
23
|
+
callBack == null ? void 0 : callBack();
|
|
24
|
+
}, wait);
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
const inBrowser = typeof window !== "undefined";
|
|
28
|
+
function on(element, eventName, handler) {
|
|
29
|
+
if (document.addEventListener) {
|
|
30
|
+
if (element && eventName && handler) {
|
|
31
|
+
element.addEventListener(eventName, handler, false);
|
|
32
|
+
}
|
|
33
|
+
} else {
|
|
34
|
+
if (element && eventName && handler) {
|
|
35
|
+
element.attachEvent("on" + eventName, handler);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
const ctx = Symbol("@@clickoutside");
|
|
40
|
+
const nodeList = new Map();
|
|
41
|
+
let startClick;
|
|
42
|
+
let nid = 0;
|
|
43
|
+
let isFirst = true;
|
|
44
|
+
function createDocumentHandler(el, binding, vnode) {
|
|
45
|
+
if (inBrowser && isFirst) {
|
|
46
|
+
isFirst = false;
|
|
47
|
+
on(document, "mousedown", (e) => {
|
|
48
|
+
startClick = e;
|
|
49
|
+
});
|
|
50
|
+
on(document, "mouseup", (e) => {
|
|
51
|
+
for (const [id, node] of nodeList) {
|
|
52
|
+
node[ctx].documentHandler(e, startClick);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
return function(mouseup, mousedown) {
|
|
57
|
+
if (!vnode || !binding.instance || !mouseup.target || !mousedown.target || el.contains(mouseup.target) || el.contains(mousedown.target) || el === mouseup.target) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
el[ctx].bindingFn && el[ctx].bindingFn();
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
const clickoutsideDirective = {
|
|
64
|
+
beforeMount: function(el, binding, vnode) {
|
|
65
|
+
nid++;
|
|
66
|
+
nodeList.set(nid, el);
|
|
67
|
+
el[ctx] = {
|
|
68
|
+
nid,
|
|
69
|
+
documentHandler: createDocumentHandler(el, binding, vnode),
|
|
70
|
+
bindingFn: binding.value
|
|
71
|
+
};
|
|
72
|
+
},
|
|
73
|
+
updated: function(el, binding, vnode) {
|
|
74
|
+
el[ctx].documentHandler = createDocumentHandler(el, binding, vnode);
|
|
75
|
+
el[ctx].bindingFn = binding.value;
|
|
76
|
+
},
|
|
77
|
+
unmounted: function(el) {
|
|
78
|
+
nodeList.delete(el[ctx].nid);
|
|
79
|
+
delete el[ctx];
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
var popover = "";
|
|
83
|
+
const popTypeClass = {
|
|
84
|
+
success: {
|
|
85
|
+
name: "right-o",
|
|
86
|
+
color: "rgb(61, 204, 166)"
|
|
87
|
+
},
|
|
88
|
+
error: {
|
|
89
|
+
name: "error-o",
|
|
90
|
+
color: "rgb(249, 95, 91)"
|
|
91
|
+
},
|
|
92
|
+
info: {
|
|
93
|
+
name: "info-o",
|
|
94
|
+
color: "rgb(81, 112, 255)"
|
|
95
|
+
},
|
|
96
|
+
warning: {
|
|
97
|
+
name: "warning-o",
|
|
98
|
+
color: "rgb(254, 204, 85)"
|
|
99
|
+
},
|
|
100
|
+
default: {}
|
|
101
|
+
};
|
|
102
|
+
var Popover = defineComponent({
|
|
103
|
+
name: "DPopover",
|
|
104
|
+
directives: {
|
|
105
|
+
clickoutside: clickoutsideDirective
|
|
106
|
+
},
|
|
107
|
+
props: {
|
|
108
|
+
visible: {
|
|
109
|
+
type: Boolean,
|
|
110
|
+
default: false
|
|
111
|
+
},
|
|
112
|
+
position: {
|
|
113
|
+
type: String,
|
|
114
|
+
default: "bottom"
|
|
115
|
+
},
|
|
116
|
+
content: {
|
|
117
|
+
type: String,
|
|
118
|
+
default: "default"
|
|
119
|
+
},
|
|
120
|
+
trigger: {
|
|
121
|
+
type: String,
|
|
122
|
+
default: "click"
|
|
123
|
+
},
|
|
124
|
+
zIndex: {
|
|
125
|
+
type: Number,
|
|
126
|
+
default: 1060
|
|
127
|
+
},
|
|
128
|
+
popType: {
|
|
129
|
+
type: String,
|
|
130
|
+
default: "default"
|
|
131
|
+
},
|
|
132
|
+
showAnimation: {
|
|
133
|
+
type: Boolean,
|
|
134
|
+
default: true
|
|
135
|
+
},
|
|
136
|
+
mouseEnterDelay: {
|
|
137
|
+
type: Number,
|
|
138
|
+
default: 150
|
|
139
|
+
},
|
|
140
|
+
mouseLeaveDelay: {
|
|
141
|
+
type: Number,
|
|
142
|
+
default: 100
|
|
143
|
+
},
|
|
144
|
+
popMaxWidth: {
|
|
145
|
+
type: Number,
|
|
146
|
+
default: void 0
|
|
147
|
+
},
|
|
148
|
+
popoverStyle: {
|
|
149
|
+
type: Object,
|
|
150
|
+
default: () => ({})
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
setup(props, ctx2) {
|
|
154
|
+
const {
|
|
155
|
+
slots
|
|
156
|
+
} = ctx2;
|
|
157
|
+
const visible = ref(props.visible);
|
|
158
|
+
const {
|
|
159
|
+
position,
|
|
160
|
+
content,
|
|
161
|
+
zIndex,
|
|
162
|
+
trigger,
|
|
163
|
+
popType,
|
|
164
|
+
popoverStyle,
|
|
165
|
+
mouseEnterDelay,
|
|
166
|
+
mouseLeaveDelay,
|
|
167
|
+
showAnimation,
|
|
168
|
+
popMaxWidth
|
|
169
|
+
} = toRefs(props);
|
|
170
|
+
const style = __spreadValues({
|
|
171
|
+
zIndex: zIndex.value
|
|
172
|
+
}, popoverStyle.value);
|
|
173
|
+
const isClick = trigger.value === "click";
|
|
174
|
+
const iconType = reactive(popTypeClass[popType.value]);
|
|
175
|
+
const event = function() {
|
|
176
|
+
if (visible.value) {
|
|
177
|
+
visible.value = false;
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
visible.value = true;
|
|
181
|
+
};
|
|
182
|
+
const onClick = isClick ? event : null;
|
|
183
|
+
const enter = debounce(() => {
|
|
184
|
+
visible.value = true;
|
|
185
|
+
}, mouseEnterDelay.value);
|
|
186
|
+
const leave = debounce(() => {
|
|
187
|
+
visible.value = false;
|
|
188
|
+
}, mouseLeaveDelay.value);
|
|
189
|
+
const onMouseenter = isClick ? null : enter;
|
|
190
|
+
const onMouseleave = isClick ? null : leave;
|
|
191
|
+
const hiddenContext = () => {
|
|
192
|
+
visible.value = false;
|
|
193
|
+
};
|
|
194
|
+
popMaxWidth.value && (style.maxWidth = `${popMaxWidth.value}px`);
|
|
195
|
+
watch(() => props.visible, (newVal) => {
|
|
196
|
+
visible.value = newVal;
|
|
197
|
+
});
|
|
198
|
+
return () => {
|
|
199
|
+
var _a, _b;
|
|
200
|
+
return createVNode("div", {
|
|
201
|
+
"class": ["devui-popover", position.value, {
|
|
202
|
+
"devui-popover-animation": showAnimation.value,
|
|
203
|
+
"devui-popover-isVisible": visible.value
|
|
204
|
+
}]
|
|
205
|
+
}, [withDirectives(createVNode("div", {
|
|
206
|
+
"class": "devui-popover-reference",
|
|
207
|
+
"onMouseenter": onMouseenter,
|
|
208
|
+
"onMouseleave": onMouseleave,
|
|
209
|
+
"onClick": onClick
|
|
210
|
+
}, [(_a = slots.reference) == null ? void 0 : _a.call(slots)]), [[resolveDirective("clickoutside"), hiddenContext]]), createVNode("div", {
|
|
211
|
+
"class": ["devui-popover-content", iconType.name ? "is-icon" : ""],
|
|
212
|
+
"style": style
|
|
213
|
+
}, [iconType.name && createVNode(resolveComponent("d-icon"), {
|
|
214
|
+
"name": iconType.name,
|
|
215
|
+
"color": iconType.color,
|
|
216
|
+
"class": "devui-popover-icon",
|
|
217
|
+
"size": "16px"
|
|
218
|
+
}, null), ((_b = slots.content) == null ? void 0 : _b.call(slots)) || createVNode("span", null, [content.value]), createVNode("span", {
|
|
219
|
+
"class": "after",
|
|
220
|
+
"style": style
|
|
221
|
+
}, null)])]);
|
|
222
|
+
};
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
Popover.install = function(app) {
|
|
226
|
+
app.component(Popover.name, Popover);
|
|
227
|
+
};
|
|
228
|
+
var index = {
|
|
229
|
+
title: "Popover \u60AC\u6D6E\u63D0\u793A",
|
|
230
|
+
category: "\u53CD\u9988",
|
|
231
|
+
status: "100%",
|
|
232
|
+
install(app) {
|
|
233
|
+
app.use(Popover);
|
|
234
|
+
}
|
|
235
|
+
};
|
|
236
|
+
export { Popover, index as default };
|
package/popover/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var R=Object.defineProperty;var C=Object.getOwnPropertySymbols;var $=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable;var M=(o,t,u)=>t in o?R(o,t,{enumerable:!0,configurable:!0,writable:!0,value:u}):o[t]=u,S=(o,t)=>{for(var u in t||(t={}))$.call(t,u)&&M(o,u,t[u]);if(C)for(var u of C(t))G.call(t,u)&&M(o,u,t[u]);return o};(function(o,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(o=typeof globalThis!="undefined"?globalThis:o||self,t(o.index={},o.Vue))})(this,function(o,t){"use strict";var u=(e,i)=>{let n=null;return()=>{n&&clearTimeout(n),n=setTimeout(()=>{e==null||e()},i)}};const T=typeof window!="undefined";function g(e,i,n){document.addEventListener?e&&i&&n&&e.addEventListener(i,n,!1):e&&i&&n&&e.attachEvent("on"+i,n)}const a=Symbol("@@clickoutside"),p=new Map;let b,f=0,x=!0;function D(e,i,n){return T&&x&&(x=!1,g(document,"mousedown",r=>{b=r}),g(document,"mouseup",r=>{for(const[s,v]of p)v[a].documentHandler(r,b)})),function(r,s){!n||!i.instance||!r.target||!s.target||e.contains(r.target)||e.contains(s.target)||e===r.target||e[a].bindingFn&&e[a].bindingFn()}}const V={beforeMount:function(e,i,n){f++,p.set(f,e),e[a]={nid:f,documentHandler:D(e,i,n),bindingFn:i.value}},updated:function(e,i,n){e[a].documentHandler=D(e,i,n),e[a].bindingFn=i.value},unmounted:function(e){p.delete(e[a].nid),delete e[a]}};var J="";const N={success:{name:"right-o",color:"rgb(61, 204, 166)"},error:{name:"error-o",color:"rgb(249, 95, 91)"},info:{name:"info-o",color:"rgb(81, 112, 255)"},warning:{name:"warning-o",color:"rgb(254, 204, 85)"},default:{}};var l=t.defineComponent({name:"DPopover",directives:{clickoutside:V},props:{visible:{type:Boolean,default:!1},position:{type:String,default:"bottom"},content:{type:String,default:"default"},trigger:{type:String,default:"click"},zIndex:{type:Number,default:1060},popType:{type:String,default:"default"},showAnimation:{type:Boolean,default:!0},mouseEnterDelay:{type:Number,default:150},mouseLeaveDelay:{type:Number,default:100},popMaxWidth:{type:Number,default:void 0},popoverStyle:{type:Object,default:()=>({})}},setup(e,i){const{slots:n}=i,r=t.ref(e.visible),{position:s,content:v,zIndex:E,trigger:F,popType:L,popoverStyle:P,mouseEnterDelay:z,mouseLeaveDelay:A,showAnimation:H,popMaxWidth:h}=t.toRefs(e),m=S({zIndex:E.value},P.value),y=F.value==="click",c=t.reactive(N[L.value]),j=y?function(){if(r.value){r.value=!1;return}r.value=!0}:null,I=u(()=>{r.value=!0},z.value),W=u(()=>{r.value=!1},A.value),O=y?null:I,_=y?null:W,q=()=>{r.value=!1};return h.value&&(m.maxWidth=`${h.value}px`),t.watch(()=>e.visible,d=>{r.value=d}),()=>{var d,w;return t.createVNode("div",{class:["devui-popover",s.value,{"devui-popover-animation":H.value,"devui-popover-isVisible":r.value}]},[t.withDirectives(t.createVNode("div",{class:"devui-popover-reference",onMouseenter:O,onMouseleave:_,onClick:j},[(d=n.reference)==null?void 0:d.call(n)]),[[t.resolveDirective("clickoutside"),q]]),t.createVNode("div",{class:["devui-popover-content",c.name?"is-icon":""],style:m},[c.name&&t.createVNode(t.resolveComponent("d-icon"),{name:c.name,color:c.color,class:"devui-popover-icon",size:"16px"},null),((w=n.content)==null?void 0:w.call(n))||t.createVNode("span",null,[v.value]),t.createVNode("span",{class:"after",style:m},null)])])}}});l.install=function(e){e.component(l.name,l)};var k={title:"Popover \u60AC\u6D6E\u63D0\u793A",category:"\u53CD\u9988",status:"100%",install(e){e.use(l)}};o.Popover=l,o.default=k,Object.defineProperty(o,"__esModule",{value:!0}),o[Symbol.toStringTag]="Module"});
|