@minix-iot/ui
Version:
基于Vue的移动端轻量级UI组件库
7 lines • 15.6 kB
JavaScript
/*!
* @minix-iot/ui v0.2.4 - dialog.js, 2709badeb34a699cd765, Wed Nov 24 2021 14:21:12 GMT+0800 (中国标准时间)
* (c) 2017-2020 JDC
* Released under the MIT License.
*/
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("vue")):"function"==typeof define&&define.amd?define("dialog",["vue"],e):"object"==typeof exports?exports.dialog=e(require("vue")):t.dialog=e(t.Vue)}("undefined"!=typeof self?self:this,(function(t){return function(t){var e={};function n(o){if(e[o])return e[o].exports;var r=e[o]={i:o,l:!1,exports:{}};return t[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=t,n.c=e,n.d=function(t,e,o){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)n.d(o,r,function(e){return t[e]}.bind(null,r));return o},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="./",n(n.s=102)}({0:function(t,e){t.exports=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},1:function(t,e){t.exports=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t},t.exports.default=t.exports,t.exports.__esModule=!0},10:function(t,e,n){var o=n(7);t.exports=function(t,e){if(t){if("string"==typeof t)return o(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(t,e):void 0}},t.exports.default=t.exports,t.exports.__esModule=!0},102:function(t,e,n){"use strict";n.r(e);var o=n(5),r=n(1),i=n.n(r),u=n(4),a=n.n(u),l=n(25),s=n(3).a.Create("dialog"),c={name:s.name,components:{Popup:l.a},props:{show:{type:Boolean,default:!1},overlay:{type:Boolean,default:!0},zIndex:{type:Number,default:1030},lockScroll:{type:Boolean,default:!1},duration:{type:Number,default:.36},overlayStyle:{type:Object,default:function(){}},closeOnClickOveraly:{type:Boolean,default:!0},title:{type:String,default:""},content:{type:String,default:""},type:{type:String,default:"confirm"},buttons:{type:Array,default:function(){return[]}},primary:{type:String,default:""}},computed:{cls:function(){return s.derive()},headerCls:function(){return s.derive("header")},titleCls:function(){return s.derive("header-title")},bodyCls:function(){return s.derive("body")},contentCls:function(){return s.derive("body-content")},footerCls:function(){return s.derive("footer",[this.type])},buttonTexts:function(){var t=[];if(0===this.buttons.length)switch(this.type){case"confirm":t.push("确定");break;case"alter":t.push.apply(t,["取消","确定"]);break;case"more":t.push.apply(t,["确定","更多","取消"])}else t.push.apply(t,a()(this.buttons));return t}},methods:{emitButtonClick:function(t,e){this.$emit("button-click",{text:t,index:e},this)},resolvePrimary:function(t,e){if(this.primary&&t===this.primary)return!0;if(!this.primary)switch(this.type){case"confirm":case"more":if(0===e)return!0;break;case"alter":if(1===e)return!0}return!1},btnCls:function(t,e){return s.derive("footer-btn",i()({primary:this.resolvePrimary(t,e)},this.type,this.type))},onClose:function(){this.$emit("close")}},render:function(){var t=this,e=arguments[0],n=function(){return e("div",{class:t.headerCls},[t.$slots.header||e("div",{class:t.titleCls},[t.title])])},o=function(){var n=[t.content&&e("div",{class:t.contentCls},[t.content]),t.$slots.default];if(t.content||t.$slots.default||t.$slots.body)return e("div",{class:t.bodyCls},[t.$slots.body||n])},r=function(){var n=t.buttonTexts.map((function(n,o){return e("div",{key:o,class:t.btnCls(n,o),on:{click:function(e){return e.stopPropagation(),t.emitButtonClick(n,o)}}},[n])}));return e("div",{class:t.footerCls},[t.$slots.footer||n])};return e(l.a,{attrs:{show:this.show,overlay:this.overlay,zIndex:this.zIndex,lockScroll:this.lockScroll,duration:this.duration,"overlay-style":this.overlayStyle,"close-on-click-overlay":this.closeOnClickOveraly,position:"center"},on:{close:this.onClose}},[e("div",{class:this.cls},[n(),o(),r()])])}};function f(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function p(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?f(Object(n),!0).forEach((function(e){i()(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):f(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var d=o.a.InvokeComponent((function(t){return{data:function(){return{options:{show:!1,overlay:!0,zIndex:1030,lockScroll:!1,duration:.36,closeOnClickOveraly:!0,title:"",content:"",type:"confirm",buttons:[],primary:"",onButtonClick:null}}},methods:{open:function(t){this.options=p(p(p({},this.options),t),{},{show:!0})},onButtonClick:function(e){this.options.onButtonClick(e),t()}},render:function(){var e=arguments[0];return e(c,{props:p({},this.options),on:{close:t,"button-click":this.onButtonClick}})}}}));n(62);o.a.WithInstall(c,d);e.default=c},12:function(t,e,n){var o=n(7);t.exports=function(t){if(Array.isArray(t))return o(t)},t.exports.default=t.exports,t.exports.__esModule=!0},13:function(t,e){t.exports=function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)},t.exports.default=t.exports,t.exports.__esModule=!0},14:function(t,e){t.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},18:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var o=n(0),r=n.n(o),i=n(2),u=n.n(i),a=function(){function t(){r()(this,t)}return u()(t,null,[{key:"IsWindow",value:function(t){return t===window}},{key:"IsElement",value:function(t){return(null==t?void 0:t.nodeType)===Node.ELEMENT_NODE}},{key:"IsHidden",value:function(t){if(t)return!1;var e=widnow.getComputedStyle(t),n="none"===e.getPropertyValue("display"),o=null===t.offsetParent&&"fixed"!==e.getPropertyValue("position");return n||o}},{key:"GetScrollTop",value:function(t){return Math.max("scrollTop"in t?t.scrollTop:t.scrollY,0)}},{key:"GetBoundingClientRect",value:function(t){return null!=t&&t.getBoundingClientRect?t.getBoundingClientRect():this.IsWindow(t)?new DOMRect(0,0,t.innerWidth,t.innerHeight):new DOMRect(0,0,0,0)}},{key:"GetScrollParent",value:function(t){for(var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window,n=t;n&&n!==e&&this.IsElement(n);){var o=window.getComputedStyle(n).getPropertyValue("overflow-y");if(/scroll|auto/i.test(o)&&n.scrollHeight>n.offsetHeight)return n;n=n.parentNode}return e}},{key:"stopPropagation",value:function(t){null==t||t.stopPropagation()}},{key:"PreventDefault",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];("boolean"!=typeof(null==t?void 0:t.cancelable)||null!=t&&t.cancelable)&&t.preventDefault(),e&&t.stopPropagation()}},{key:"AddEventListener",value:function(t,e,n,o){t&&t instanceof EventTarget&&t.addEventListener(e,n,o)}},{key:"RemoveEventListener",value:function(t,e,n){t&&t instanceof EventTarget&&t.removeEventListener(e,n)}}]),t}()},2:function(t,e){function n(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}t.exports=function(t,e,o){return e&&n(t.prototype,e),o&&n(t,o),t},t.exports.default=t.exports,t.exports.__esModule=!0},23:function(t,e,n){"use strict";var o=n(1),r=n.n(o),i=n(18);function u(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}var a=n(3).a.Create("overlay");e.a={name:a.name,props:{show:{type:Boolean,default:!1},zIndex:{type:Number,default:1030},lockScroll:{type:Boolean,default:!0},duration:{type:Number,default:.36},customStyle:{type:Object,default:function(){}}},computed:{cls:function(){return a.derive()},style:function(){return function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?u(Object(n),!0).forEach((function(e){r()(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):u(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}({zIndex:this.zIndex,animationDuration:"".concat(this.duration,"s")},this.customStyle)}},methods:{onTouchMove:function(t){this.lockScroll&&i.a.PreventDefault(t,!1)},onClick:function(t){this.$emit("click",t)}},render:function(){var t=this,e=arguments[0];return e("transition",{attrs:{name:"mx-fade"}},[this.show&&e("div",{class:this.cls,style:this.style,on:{touchMove:function(e){return e.stopPropagation(),t.onTouchMove(e)},click:function(e){return e.stopPropagation(),t.onClick(e)}}},[this.$slots.default])])}}},25:function(t,e,n){"use strict";var o=n(1),r=n.n(o),i=n(23),u=n(3).a.Create("popup");e.a={name:u.name,components:{Overlay:i.a},props:{show:{type:Boolean,default:!1},overlay:{type:Boolean,default:!0},zIndex:{type:Number,default:1030},lockScroll:{type:Boolean,default:!0},duration:{type:Number,default:.36},overlayStyle:{type:Object,default:function(){}},background:{type:String},round:{type:Boolean,default:!1},position:{type:String,default:"bottom"},closeOnClickOveraly:{type:Boolean,default:!0},safeAreaInsetBottom:{type:Boolean,default:!1}},computed:{cls:function(){var t;return u.derive((t={round:this.round},r()(t,this.position,this.position),r()(t,"safe-area-inset-bottom",this.safeAreaInsetBottom),t))},style:function(){var t={zIndex:this.zIndex};(this.background&&(t.background=this.background),this.duration)&&(t["center"===this.position?"animationDuration":"transitionDuration"]="".concat(this.duration,"s"));return t},transitionName:function(){return u.derive("slide-".concat(this.position))}},methods:{onClickOverlay:function(t){this.closeOnClickOveraly&&this.close(t)},close:function(t){this.$emit("close",t)}},render:function(){var t=this,e=arguments[0],n=function(){if(t.overlay)return e(i.a,{attrs:{show:t.show,"z-index":t.zIndex,"lock-scroll":t.lockScroll,duration:t.duration,"overlay-style":t.overlayStyle},on:{click:t.onClickOverlay}})},o=function(){return e("transition",{attrs:{name:t.transitionName}},[t.show&&e("div",{class:t.cls,style:t.style},[t.$slots.default])])};return e("div",[n(),o()])}}},3:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var o=n(0),r=n.n(o),i=n(2),u=n.n(i),a=n(1),l=n.n(a),s=function(){function t(e){r()(this,t),this._name=e}return u()(t,[{key:"name",get:function(){return"".concat(t.ROOT,"-").concat(this._name)}},{key:"derive",value:function(t,e){return t&&"string"!=typeof t&&(e=t,t=""),t=t?this.sub(t):this.name,"".concat(t).concat(this.mod(t,e))}},{key:"sub",value:function(t){var e=Array.isArray(t)?t:[t];return e.reduce((function(t,e){return"".concat(t,"-").concat(e)}),e.length?this.name:"")}},{key:"mod",value:function(t,e){var n=this;return e?"string"==typeof e?" ".concat(t,"--").concat(e):Array.isArray(e)?e.reduce((function(e,o){return e+n.mod(t,o)}),""):Object.keys(e).reduce((function(o,r){return o+(e[r]?n.mod(t,r):"")}),""):""}}],[{key:"Create",value:function(e){return new t(e)}}]),t}();l()(s,"ROOT","mx")},4:function(t,e,n){var o=n(12),r=n(13),i=n(10),u=n(14);t.exports=function(t){return o(t)||r(t)||i(t)||u()},t.exports.default=t.exports,t.exports.__esModule=!0},5:function(t,e,n){"use strict";n.d(e,"a",(function(){return v}));var o=n(4),r=n.n(o),i=n(6),u=n.n(i),a=n(0),l=n.n(a),s=n(2),c=n.n(s),f=n(8),p=n.n(f);function d(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(!t)return;if("string"==typeof t)return y(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return y(t,e)}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var o=0,r=function(){};return{s:r,n:function(){return o>=t.length?{done:!0}:{done:!1,value:t[o++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,a=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return u=t.done,t},e:function(t){a=!0,i=t},f:function(){try{u||null==n.return||n.return()}finally{if(a)throw i}}}}function y(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var v=function(){function t(){l()(this,t)}return c()(t,null,[{key:"WithInstall",value:function(t,e){if("object"!==u()(t)&&!t.name)throw new Error("could not install,because it is not a vue component!");t.install=function(n){n.component(t.name,t),e&&(n.prototype["$".concat(t.name.replace("mx-",""))]=e)}}},{key:"SortChildren",value:function(t,e){var n=e.$vnode.componentOptions;if(n&&n.children&&n.children.length){var o=this.FlattenVNode(n.children);return t.sort((function(t,e){return o.indexOf(t.$vnode)-o.indexOf(e.$vnode)})),t}}},{key:"FlattenVNode",value:function(t){return this.TraverseVNode(t)}},{key:"TraverseVNode",value:function(t){var e,n=[],o=d(t);try{for(o.s();!(e=o.n()).done;){var i=e.value;n.push(i),i.componentInstance&&n.push.apply(n,r()(this.TraverseVNode(i.componentInstance.$children.map((function(t){return t.$vnode}))))),i.children&&n.push.apply(n,r()(this.TraverseVNode(i.children)))}}catch(t){o.e(t)}finally{o.f()}return n}},{key:"InvokeComponent",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=[],o=function(){var e=t((function(){o.$destroy(),document.body.removeChild(o.$el),n=n.filter((function(t){return t!==o}))})),o=new p.a(e),r=document.createElement("div");return document.body.appendChild(r),o.$mount(r),o},r=function(){return n.length&&!e||n.push(o()),n[n.length-1]};return function(t){r().open(t)}}}]),t}()},6:function(t,e){function n(e){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(t.exports=n=function(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=n=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),n(e)}t.exports=n,t.exports.default=t.exports,t.exports.__esModule=!0},62:function(t,e,n){},7:function(t,e){t.exports=function(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o},t.exports.default=t.exports,t.exports.__esModule=!0},8:function(e,n){e.exports=t}})}));
//# sourceMappingURL=dialog.js.map