chunk-00901222.5ba58b64.js 7.7 KB

1
  1. (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-00901222"],{1462:function(e,t,l){"use strict";l.r(t);var i=function(){var e=this,t=e._self._c;return t("div",{staticClass:"d2p-tree-selector"},[t("div",{staticClass:"el-cascader el-cascader--default",class:{"is-disabled":e.disabled},on:{click:e.openDialog}},[t("div",{staticClass:"el-input el-input--default el-input--suffix",class:{"is-disabled":e.disabled}},[t("el-input",{ref:"reference",attrs:{disabled:e.disabled}}),t("span",{staticClass:"el-input__suffix"},[t("span",{staticClass:"el-input__suffix-inner"},[t("i",{staticClass:"el-input__icon el-icon-arrow-down",on:{click:e.openDialog}})])])],1),t("div",{ref:"tags",staticClass:"el-cascader__tags"},[t("transition-group",{on:{"after-leave":e.resetInputHeight}},e._l(e.selected,(function(l){return t("el-tag",{key:e.getValueKey(l),attrs:{closable:e.clearable,size:e.collapseTagSize,hit:!1,type:"info","disable-transitions":""},on:{close:function(t){return e.itemClosed(l)}}},[t("span",{staticClass:"el-select__tags-text"},[e._v(e._s(e.getValueLabel(l)))])])})),1)],1)]),t("el-dialog",{attrs:{"custom-class":"d2p-tree-selector-dialog",title:e.dialogTitle,visible:e.dialogVisible,width:"30%","append-to-body":""},on:{"update:visible":function(t){e.dialogVisible=t}}},[t("div",{staticClass:"tree-wrapper"},[e.treeFilter?t("div",{staticClass:"filter-bar",staticStyle:{"padding-bottom":"20px"}},[t("el-input",{attrs:{"prefix-icon":"el-icon-search",placeholder:e.filterPlaceholder,size:"small"},model:{value:e.filterText,callback:function(t){e.filterText=t},expression:"filterText"}})],1):e._e(),t("div",{staticClass:"tree-body"},[t("el-tree",e._b({ref:"elTree",attrs:{data:e._options,filterNodeMethod:e.filterNode},on:{"check-change":e.handleCheckChange,"current-change":e.handleCurrentChange}},"el-tree",e._elProps,!1))],1)]),t("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[t("el-button",{on:{click:function(t){e.dialogVisible=!1}}},[e._v(e._s(e.cancelText))]),t("el-button",{attrs:{type:"primary"},on:{click:e.selectSubmit}},[e._v(e._s(e.confirmText))])],1)])],1)},a=[],s=l("b85c"),n=(l("4de4"),l("d81d"),l("14d9"),l("e9f5"),l("910d"),l("7d54"),l("ab43"),l("a9e3"),l("d3b7"),l("6062"),l("1e70"),l("79a4"),l("c1a1"),l("8b00"),l("a4e7"),l("1e5a"),l("72c3"),l("3ca3"),l("159b"),l("ddb0"),l("60bb")),r=l.n(n),o=l("0e00"),c=l("1d2a"),u={name:"d2p-tree-selector",mixins:[o["a"].input,o["a"].inputDict],props:{value:{type:[Number,String,Boolean,Array,Object]},filter:{type:Function,require:!1},filterPlaceholder:{type:String,default:"输入关键字进行过滤"},dialogTitle:{type:String,default:"选择"},cancelText:{type:String,default:"取消"},confirmText:{type:String,default:"确定"},treeFilter:{type:Boolean,require:!1,default:!0},multiple:{type:Boolean,default:!0},ignoreFullCheckedChildren:{type:Boolean,default:!0},leafOnly:{type:Boolean,default:!1},includeHalfChecked:{type:Boolean,default:!1},elProps:{type:Object},clearable:{type:Boolean,default:!0},dict:{type:Object,require:!1}},data:function(){return{currentValue:void 0,collapseTags:!1,selected:[],dialogVisible:!1,filterText:void 0}},created:function(){},computed:{_elProps:function(){var e={showCheckbox:this.multiple,highlightCurrent:!this.multiple,props:{}};return null!=this.dict&&(null!=this.dict.label&&(e.props.label=this.dict.label),null!=this.dict.value&&(e.props.value=this.dict.value),null!=this.dict.children&&(e.props.children=this.dict.children)),e.nodeKey=e.props.value,r.a.merge(e,this.elProps),e},collapseTagSize:function(){return["small","mini"].indexOf(this.selectSize)>-1?"mini":"small"}},watch:{filterText:function(e){this.$refs.elTree.filter(e)}},methods:{onDictLoaded:function(){c["a"].debug("onDictLoaded",this.dict,this.value),this.setValue(this.value)},setValue:function(e){var t=this;if(c["a"].debug("setValue:",this.currentValue,this.value,this._options),this.currentValue!==this.value){var l=e;if(null==e&&(this.selected=[]),l instanceof Array||(l=[l]),this.dict&&this.dict.getNodes)c["a"].debug("getNodes:",l),this.dict.getNodes(l).then((function(l){t.selectedNodes(l,e)}));else{var i=[];if(null==this._options||0===this._options.length)return;var a,n=Object(s["a"])(l);try{for(n.s();!(a=n.n()).done;){var r=a.value,u=this._options,d=o["a"].util.dict.getByValue(r,u,this.dict);null!=d&&i.push(d)}}catch(h){n.e(h)}finally{n.f()}this.selectedNodes(i,e)}}},selectedNodes:function(e,t){var l,i=[],a=Object(s["a"])(e);try{for(a.s();!(l=a.n()).done;){var n=l.value;n.id=n[this.dict.value],i.push(n)}}catch(r){a.e(r)}finally{a.f()}c["a"].debug("selected:",i),this.$set(this,"selected",i),this.resetInputHeight()},handleCheckChange:function(e){this.$emit("check-change",e)},handleCurrentChange:function(e){this.$emit("current-change",e)},openDialog:function(){var e=this;this.disabled||(this.dialogVisible=!0,setTimeout((function(){if(null!=e.selected){var t=e.selected.map((function(t){return t[e._elProps.props.value]}));t.forEach((function(t){var l=e.$refs.elTree.store.nodesMap[t];null!=l&&e.doExpandParent(l)})),e.$nextTick((function(){e.multiple?e.$refs.elTree.setCheckedKeys(t,e.leafOnly):t.length>0&&e.$refs.elTree.setCurrentKey(t[0])}))}}),1))},doExpandParent:function(e){null!=e.parent&&this.doExpandParent(e.parent),e.expanded=!0},getValueKey:function(e){return null!=this._elProps.props.value?e[this._elProps.props.value]:e.value},getValueLabel:function(e){return null!=this._elProps.props.label?e[this._elProps.props.label]:e.label},getValueChildren:function(e){var t="children";return null!=this._elProps.props.children&&(t=this._elProps.props.children),e[t]},selectSubmit:function(){var e=this.refreshSelected();this.dialogVisible=!1,this.doValueInputChanged(e)},doValueInputChanged:function(e){var t=this.formatValue(e);this.resetInputHeight(),this.multiple||(t=t&&t.length>0?t[0]:void 0),this.currentValue=t,this.dispatch&&this.dispatch("ElFormItem","el.form.blur"),this.$emit("input",t)},itemClosed:function(e){var t=r.a.without(this.selected,e);console.log("new value",e,t),this.$set(this,"selected",t),this.doValueInputChanged(t)},refreshSelected:function(){var e=null;if(this.multiple)e=this.$refs.elTree.getCheckedNodes(this.leafOnly,this.includeHalfChecked);else{var t=this.$refs.elTree.getCurrentNode();e=null==t?[]:[t]}return this.ignoreFullCheckedChildren&&(e=this.filterFullCheckedChildren(e)),null!=this.filter&&(e=this.filter(e)),c["a"].debug("selected",this.selected),this.$set(this,"selected",e),e},resetInputHeight:function(){var e=this;this.collapseTags&&!this.filterable||this.$nextTick((function(){if(e.$refs.reference){var t=e.$refs.reference.$el.childNodes,l=[].filter.call(t,(function(e){return"INPUT"===e.tagName}))[0],i=e.$refs.tags,a=e.initialInputHeight||40,s=0===e.selected.length?a+"px":Math.max(i?i.clientHeight+(i.clientHeight>a?6:0):0,a)+"px";l.style.height=s,e.visible&&!1!==e.emptyText&&e.broadcast("ElSelectDropdown","updatePopper")}}))},filterFullCheckedChildren:function(e){var t,l=new Set,i=Object(s["a"])(e);try{for(i.s();!(t=i.n()).done;){var a=t.value,n=this.getValueChildren(a);if(null!=n){var r,o=Object(s["a"])(n);try{for(o.s();!(r=o.n()).done;){var c=r.value;l.add(this.getValueKey(c))}}catch(g){o.e(g)}finally{o.f()}}}}catch(g){i.e(g)}finally{i.f()}var u,d=[],h=Object(s["a"])(e);try{for(h.s();!(u=h.n()).done;){var f=u.value,p=this.getValueKey(f);l.has(p)||d.push(f)}}catch(g){h.e(g)}finally{h.f()}return d},formatValue:function(e){var t,l=[],i=Object(s["a"])(e);try{for(i.s();!(t=i.n()).done;){var a=t.value;l.push(this.getValueKey(a))}}catch(n){i.e(n)}finally{i.f()}return l},filterNode:function(e,t){return!e||-1!==this.getValueLabel(t).indexOf(e)},onChange:function(e){this.$emit("change",e),this.dispatch&&this.dispatch("ElFormItem","el.form.blur")}}},d=u,h=(l("728a"),l("2877")),f=Object(h["a"])(d,i,a,!1,null,null,null);t["default"]=f.exports},"1a5a":function(e,t,l){},"728a":function(e,t,l){"use strict";l("1a5a")}}]);