@persagy2/meri-design
Version:
fork from meri-design and extend it.
7 lines • 8.06 kB
JavaScript
/*!
* @@persagy2/meri-design v1.4.9-extend.2
* (c) 2019-2020 xiongshuang
* Released under the MIT License.
* 2022-12-07 10:31:52
*/
var e,t;e=this,t=function(){return function(){"use strict";var e={1952:function(e,t,n){var r=n(5064);t.Z={name:"Checkbox",props:{checked:{type:String,default:"uncheck"},disabled:{type:Boolean,default:!1},stopPropagation:{type:Boolean,default:!1}},methods:{TextEllipsis:r.Z,handleChange:function(e){var t,n=this.disabled,r=this.checked;if(this.stopPropagation&&e.stopPropagation(),!n){var i=this.$el.dataset,c="";c="checked"===r?"uncheck":"checked",null!==(t=this._events)&&void 0!==t&&t.change?this.$emit("change",c,i):this.$emit("update:checked",c)}}}}},8349:function(e,t,n){n.d(t,{s:function(){return r},x:function(){return i}});var r=function(){var e=this,t=e._self._c;return t("div",{class:["p-checkbox",e.disabled&&"p-checkbox-disabled"],on:{click:e.handleChange}},[t("i",{class:["p-checkbox-box","p-checkbox-"+e.checked]}),e._v(" "),Object.keys(e.$slots).length?t("span",{staticClass:"p-checkbox-text",on:{mouseenter:e.TextEllipsis}},[e._t("default")],2):e._e()])},i=[]},6875:function(e,t,n){var r=n(3931);r.Z.install=function(e){return e.component(r.Z.name,r.Z)},t.default=r.Z},5064:function(e,t){t.Z=function(e){var t=e.target,n=t.clientWidth,r=t.scrollWidth;t.title=r>n?t.innerText:""}},7021:function(){},3931:function(e,t,n){var r=n(872),i=n(5242),c=(n(6921),(0,n(1900).Z)(i.Z,r.s,r.x,!1,null,null,null));t.Z=c.exports},5242:function(e,t,n){var r=n(1952);t.Z=r.Z},872:function(e,t,n){n.d(t,{s:function(){return r.s},x:function(){return r.x}});var r=n(8349)},6921:function(e,t,n){n(7021)},1900:function(e,t,n){function r(e,t,n,r,i,c,o,a){var s,l="function"==typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=n,l._compiled=!0),r&&(l.functional=!0),c&&(l._scopeId="data-v-"+c),o?(s=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(o)},l._ssrRegister=s):i&&(s=a?function(){i.call(this,(l.functional?this.parent:this).$root.$options.shadowRoot)}:i),s)if(l.functional){l._injectStyles=s;var d=l.render;l.render=function(e,t){return s.call(t),d(e,t)}}else{var h=l.beforeCreate;l.beforeCreate=h?[].concat(h,s):[s]}return{exports:e,options:l}}n.d(t,{Z:function(){return r}})}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var c=t[r]={exports:{}};return e[r](c,c.exports,n),c.exports}n.d=function(e,t){for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return function(){n.r(r),n.d(r,{default:function(){return s}});var e=n(1900),t={name:"TreeNode",components:{ArrowTriangle:(0,e.Z)({},(function(){var e=this._self._c;return e("svg",{attrs:{viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"}},[e("path",{staticClass:"svg-fill-grey-500",attrs:{d:"\r\n M7.36397105,6.47904167\r\n C7.71544566,6.05570759 8.29167643,6.06338938 8.63677321,6.47904167\r\n L10.9236602,9.23348584\r\n C11.2751348,9.65681992 11.1147123,10 10.555128,10\r\n L5.44561621,10 C4.89060692,10 4.7319873,9.64913813 5.07708407,9.23348584\r\n L7.36397105,6.47904167\r\n Z"}})])}),[],!1,null,null,null).exports,Checkbox:n(6875).default},props:{lastStage:{type:Boolean,default:!1},treeItem:{type:Object,default:{}},change:{type:Function,default:function(){return!1}},triangleShow:{type:Boolean,default:!1},index:{type:String,default:""}},computed:{paddingLeft:function(){return 24*(this.index.split("-").length-1)+8}},methods:{openChild:function(){this.treeItem.open=!this.treeItem.open},treeItemEnter:function(e){var t=e.target,n=t.clientWidth,r=t.scrollWidth;!t.title&&r>n&&(t.title=t.innerText)},handleCheck:function(e,t){if(!e.disabled){var n=this.treeItem,r="",i=n.checked,c=n.children;if(r="checked"===i?"uncheck":"checked",this.lastStage){if(c&&c.length)return;this.treeItem=n,n.checked=r,this.change(e,t)}else c&&c.length&&(n.children=this.setStatus(c,r)),n.checked=r,this.treeItem=n,this.change(e,t)}},setStatus:function(e,t){var n=this;return e.map((function(e){return n.$set(e,"disabled","checked"===t),e.checked=t,e.children&&e.children.length&&(e.children=n.setStatus(e.children,t)),e}))}}},i=(0,e.Z)(t,(function(){var e=this,t=e._self._c;return t("div",{staticClass:"p-tree-node"},[t("div",{staticClass:"p-tree-node-content",style:{paddingLeft:e.paddingLeft+"px"}},[t("section",{staticClass:"p-tree-svg",on:{click:e.openChild}},[e.triangleShow?t("ArrowTriangle",{class:["p-tree-icon-svg",e.treeItem.open&&"p-tree-icon-rotate"]}):e._e()],1),e._v(" "),t("div",{staticClass:"p-tree-node-check",on:{click:function(t){return e.handleCheck(e.treeItem,e.index)}}},[e.lastStage&&e.triangleShow?e._e():t("Checkbox",{attrs:{checked:e.treeItem.checked,disabled:e.treeItem.disabled}}),e._v(" "),t("section",{staticClass:"p-tree-node-title"},[t("article",{staticClass:"p-tree-node-name",domProps:{innerHTML:e._s(e.treeItem.name)},on:{mouseenter:e.treeItemEnter}})])],1)]),e._v(" "),e.triangleShow?t("div",{directives:[{name:"show",rawName:"v-show",value:e.treeItem.open,expression:"treeItem.open"}],staticClass:"p-tree-child"},e._l(e.treeItem.children,(function(n,r){return t("TreeNode",{key:n.id+"-"+r,attrs:{lastStage:e.lastStage,treeItem:n,triangleShow:!(!n.children||!n.children.length),index:"".concat(e.index,"-").concat(r),change:e.change}})})),1):e._e()])}),[],!1,null,null,null).exports,c=function(e){var t=e.filter((function(e){return!e.disabled}));return t.every((function(e){return"checked"===e.checked}))?"checked":t.every((function(e){return"uncheck"===e.checked}))?"uncheck":"notNull"},o={name:"TreeStage",components:{TreeNode:i},props:{lastStage:{type:Boolean,default:!1},data:{type:Array,default:function(){return[]}}},computed:{treeData:{get:function(){return this.data},set:function(e){return e}}},methods:{change:function(e,t){var n,r=this.treeData,i=e.id,c=[];if(!this.lastStage){var o=t.split("-");o.pop(),this.changeParentChecked(r,o)}n=(c=this.filterIds(r)).map((function(e){return e.id})),this.$emit("change",{id:i,checkedIds:n,obj:e,checkedObj:c})},getCheckedItem:function(e,t){var n=this;t.forEach((function(t){return"checked"===t.checked&&e.push(t),t.children&&t.children.length&&n.getCheckedItem(e,t.children),e}))},setChildStatus:function(e){var t=this;return e.map((function(e){return t.$set(e,"disabled",!0),e.children&&e.children.length&&(e.children=t.setChildStatus(e.children)),e}))},changeParentChecked:function(e,t){var n=this,r=[];this.currentData(e,t,r),r.forEach((function(e){var t=c(e.children);e.checked=t,"checked"===t&&n.setChildStatus(e.children)}))},currentData:function(e,t,n){var r=this,i=t.shift();e.forEach((function(e,c){i&&c===Number(i)&&(n.unshift(e),e.children&&e.children.length&&r.currentData(e.children,t,n))}))},filterIds:function(e){var t=[];return this.recursionIds(e,t),t},recursionIds:function(e,t){var n=this;e.forEach((function(e){"checked"===e.checked&&t.push(e),e.children&&e.children.length&&n.recursionIds(e.children,t)}))}}},a=(0,e.Z)(o,(function(){var e=this,t=e._self._c;return t("div",{staticClass:"p-tree"},e._l(e.treeData,(function(n,r){return t("TreeNode",{key:n.id+"-"+r,attrs:{lastStage:e.lastStage,treeItem:n,triangleShow:!(!n.children||!n.children.length),index:String(r),change:e.change}})})),1)}),[],!1,null,null,null).exports;a.install=function(e){return e.component(a.name,a)};var s=a}(),r}()},"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("TreeStage",[],t):"object"==typeof exports?exports.TreeStage=t():e.TreeStage=t();