vxe-pc-ui 3.17.30 → 3.18.0
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/es/button/src/button.js +12 -10
- package/es/cascader/src/cascader.js +10 -19
- package/es/color-picker/src/color-picker.js +10 -19
- package/es/date-picker/src/date-picker.js +10 -19
- package/es/date-range-picker/src/date-range-picker.js +11 -20
- package/es/icon/style.css +1 -1
- package/es/icon-picker/src/icon-picker.js +20 -19
- package/es/pulldown/src/pulldown.js +10 -25
- package/es/select/src/select.js +10 -19
- package/es/slider/src/slider.js +6 -1
- package/es/slider/style.css +52 -6
- package/es/slider/style.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table-select/src/table-select.js +10 -19
- package/es/tree-select/src/tree-select.js +10 -19
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/vxe-slider/style.css +52 -6
- package/es/vxe-slider/style.min.css +1 -1
- package/lib/button/src/button.js +12 -10
- package/lib/button/src/button.min.js +1 -1
- package/lib/cascader/src/cascader.js +10 -18
- package/lib/cascader/src/cascader.min.js +1 -1
- package/lib/color-picker/src/color-picker.js +10 -18
- package/lib/color-picker/src/color-picker.min.js +1 -1
- package/lib/date-picker/src/date-picker.js +10 -18
- package/lib/date-picker/src/date-picker.min.js +1 -1
- package/lib/date-range-picker/src/date-range-picker.js +11 -19
- package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/icon-picker/src/icon-picker.js +20 -18
- package/lib/icon-picker/src/icon-picker.min.js +1 -1
- package/lib/index.umd.js +124 -184
- package/lib/index.umd.min.js +1 -1
- package/lib/pulldown/src/pulldown.js +10 -25
- package/lib/pulldown/src/pulldown.min.js +1 -1
- package/lib/select/src/select.js +10 -18
- package/lib/select/src/select.min.js +1 -1
- package/lib/slider/src/slider.js +9 -2
- package/lib/slider/src/slider.min.js +1 -1
- package/lib/slider/style/style.css +52 -6
- package/lib/slider/style/style.min.css +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table-select/src/table-select.js +10 -18
- package/lib/table-select/src/table-select.min.js +1 -1
- package/lib/tree-select/src/tree-select.js +10 -18
- package/lib/tree-select/src/tree-select.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-slider/style/style.css +52 -6
- package/lib/vxe-slider/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/button/src/button.ts +15 -11
- package/packages/cascader/src/cascader.ts +11 -19
- package/packages/color-picker/src/color-picker.ts +11 -19
- package/packages/date-picker/src/date-picker.ts +11 -19
- package/packages/date-range-picker/src/date-range-picker.ts +12 -20
- package/packages/icon-picker/src/icon-picker.ts +22 -19
- package/packages/pulldown/src/pulldown.ts +11 -25
- package/packages/select/src/select.ts +11 -19
- package/packages/slider/src/slider.ts +6 -1
- package/packages/table-select/src/table-select.ts +11 -19
- package/packages/tree-select/src/tree-select.ts +11 -19
- package/styles/components/slider.scss +14 -1
- /package/es/icon/{iconfont.1788500769558.ttf → iconfont.1788505321817.ttf} +0 -0
- /package/es/icon/{iconfont.1788500769558.woff → iconfont.1788505321817.woff} +0 -0
- /package/es/icon/{iconfont.1788500769558.woff2 → iconfont.1788505321817.woff2} +0 -0
- /package/es/{iconfont.1788500769558.ttf → iconfont.1788505321817.ttf} +0 -0
- /package/es/{iconfont.1788500769558.woff → iconfont.1788505321817.woff} +0 -0
- /package/es/{iconfont.1788500769558.woff2 → iconfont.1788505321817.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1788500769558.ttf → iconfont.1788505321817.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1788500769558.woff → iconfont.1788505321817.woff} +0 -0
- /package/lib/icon/style/{iconfont.1788500769558.woff2 → iconfont.1788505321817.woff2} +0 -0
- /package/lib/{iconfont.1788500769558.ttf → iconfont.1788505321817.ttf} +0 -0
- /package/lib/{iconfont.1788500769558.woff → iconfont.1788505321817.woff} +0 -0
- /package/lib/{iconfont.1788500769558.woff2 → iconfont.1788505321817.woff2} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_util=require("./util"),_xeUtils=_interopRequireDefault(require("xe-utils")),_list=_interopRequireDefault(require("../../list")),_input=_interopRequireDefault(require("../../input")),_button=_interopRequireDefault(require("../../button"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,n){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0===n)return("string"===t?String:Number)(e);n=n.call(e,t||"default");if("object"!=_typeof(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}function _createForOfIteratorHelper(e,t){var n,a,r,i,o="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(o)return r=!(a=!0),{s:function(){o=o.call(e)},n:function(){var e=o.next();return a=e.done,e},e:function(e){r=!0,n=e},f:function(){try{a||null==o.return||o.return()}finally{if(r)throw n}}};if(Array.isArray(e)||(o=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length)return o&&(e=o),i=0,{s:t=function(){},n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:t};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var n;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(n="Object"===(n={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:n)||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}function getNodeUniqueId(){return _xeUtils.default.uniqueId("node_")}function handleVisibleOrCheckMode(e,t,n){if(e){if("first"===e)return!n;if("last"===e)return!t}return!0}function createReactData(){return{initialized:!1,searchValue:"",searchLoading:!1,currentCunkList:[],currentItems:[],currentNode:null,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1,selectRadioKey:null,treeList:[],updateExpandedFlag:1,updateCheckboxFlag:1,fullOptFlag:1,lazyOptFlag:1}}function createInternalData(){return{listVirtualYOpts:{enabled:!0,gt:20},afterTreeList:[],treeFullData:[],afterVisibleList:[],nodeMaps:{},fullNodeMaps:{},lazyNodeMaps:{},indeterminateRowMaps:{},selectCheckboxMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{}}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeCascader",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:[String,Number,Array],clearable:Boolean,placeholder:{type:String,default:function(){return _xeUtils.default.eqNull((0,_ui.getConfig)().cascader.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().cascader.placeholder}},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},filterable:Boolean,filterConfig:Object,showFullLabel:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showFullLabel}},separator:{type:String,default:function(){return(0,_ui.getConfig)().cascader.separator}},multiple:Boolean,className:[String,Function],prefixIcon:String,lazyOptions:Array,options:Array,optionProps:Object,size:{type:String,default:function(){return(0,_ui.getConfig)().cascader.size||(0,_ui.getConfig)().size}},treeConfig:Object,showRadio:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showRadio}},radioConfig:Object,showCheckbox:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showCheckbox}},checkboxConfig:Object,remote:Boolean,remoteConfig:Function,popupConfig:Object,checkedClosable:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.checkedClosable}},clearClosable:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.clearClosable}},showCloseButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showCloseButton}},showTotalButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showTotalButton}},showCheckedButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showCheckedButton}},showClearButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showClearButton}}},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeCascader:this}},data:function(){var e=_xeUtils.default.uniqueId(),t=createReactData();return Object.assign(Object.assign({},{}),{xID:e,reactData:t})},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,n=e.$xeModal,a=e.$xeDrawer,r=e.$xeForm,e=e.computePopupOpts.transfer;return _xeUtils.default.isBoolean(e)?e:!!(t||n||a||r)},computeTreeOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.treeConfig,this.treeConfig)},computeRadioOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.radioConfig,this.radioConfig)},computeCheckboxOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.checkboxConfig,this.checkboxConfig)},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.popupConfig,this.popupConfig)},computePropsOpts:function(){return this.optionProps||{}},computeLabelField:function(){return this.computePropsOpts.label||"label"},computeValueField:function(){return this.computePropsOpts.value||"value"},computeKeyField:function(){return this.computeTreeOpts.keyField||"id"},computeParentField:function(){return this.computeTreeOpts.parentField||"parentId"},computeChildrenField:function(){return this.computeTreeOpts.childrenField||"children"},computeMapChildrenField:function(){return this.computeTreeOpts.mapChildrenField||"mapChildren"},computeHasChildField:function(){return this.computeTreeOpts.hasChildField||"hasChild"},computeRemoteOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.remoteConfig,this.remoteConfig)},computeSelectVals:function(){var e=this.value;return _xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]},computeSelectLabel:function(){var e=this,t=e.reactData,n=e.internalData,a=e.showFullLabel,r=t.fullOptFlag,i=t.lazyOptFlag,o=n.fullNodeMaps,l=n.lazyNodeMaps,c=e.computeLabelField;return e.computeSelectVals.map(function(e){var t=o[e];if(r&&t)return a?t.fullLabel:t.item[c];if(i){t=l[e];if(t)return a?t.fullLabel:t.item[c]}return e}).join(", ")},computePopupWrapperStyle:function(){var e=this.reactData,t=e.currentCunkList,n=this.computePopupOpts,a=n.height,r=n.nodeWidth,n=n.nodeHeight,e=Object.assign(Object.assign({},e.panelStyle),{"--vxe-ui-cascader-chunk-size":t.length});return a&&(e["--vxe-ui-cascader-chunk-height"]=(0,_dom.toCssUnit)(a)),r&&(e["--vxe-ui-cascader-node-width"]=(0,_dom.toCssUnit)(r)),n&&(e["--vxe-ui-cascader-node-height"]=(0,_dom.toCssUnit)(n)),e},computeFilterOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.filterConfig,this.filterConfig)}}),methods:{dispatchEvent:function(e,t,n){this.$emit(e,(0,_ui.createEvent)(n,{$cascader:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},getNodeId:function(e){return e?(e=e[this.computeValueField],(0,_util.enNodeValue)(e)):""},isPathInTree:function(e,t){var n=this;if(!t||!t.length)return!1;var a,r=e,i=_createForOfIteratorHelper(t);try{var o;for(i.s();!(a=i.n()).done;)if(o=(()=>{var t=a.value,e=r.find(function(e){return n.getNodeId(e)===t});if(!e)return{v:!1};r=e.children||[]})())return o.v}catch(e){i.e(e)}finally{i.f()}return!0},isCheckedByCheckboxNodeId:function(e){var t=this.reactData,n=this.internalData,t=t.updateCheckboxFlag,n=n.selectCheckboxMaps;return!(!t||!n[e])},handleCheckedCheckboxNode:function(e,n){function t(e){var t=a.getNodeId(e);n?i[t]||(i[t]=e):i[t]&&delete i[t]}var a=this,r=a.reactData,i=a.internalData.selectCheckboxMaps,o=a.computeMapChildrenField,l=a.computeChildrenField,c=a.computeCheckboxOpts.checkStrictly,d=a.computeTreeOpts.transform;c?e.forEach(t):_xeUtils.default.eachTree(e,t,{children:d?o:l}),r.updateCheckboxFlag++,a.updateCheckboxStatus()},createNode:function(e){var n=this,a=n.computeValueField;return Promise.resolve(e.map(function(e){var t,e=Object.assign({},e);return n.getNodeId(e)||(t=getNodeUniqueId(),_xeUtils.default.set(e,a,t)),e}))},handleSetCheckboxByNodeId:function(e,t){var n,a=this.internalData.nodeMaps;return e&&(_xeUtils.default.isArray(e)||(e=[e]),n=[],e.forEach(function(e){e=(0,_util.enNodeValue)(e),e=a[e];e&&n.push(e.item)}),this.handleCheckedCheckboxNode(n,t)),this.$nextTick()},updateCheckboxChecked:function(e){this.internalData.selectCheckboxMaps={},this.handleSetCheckboxByNodeId(e,!0)},updateModelChecked:function(){var t=this,e=t.reactData,n=t.internalData,a=t.value,r=n.nodeMaps,i={};t.multiple?a&&a.length&&t.updateCheckboxChecked(a):a&&(a=r[r=(0,_util.enNodeValue)(_xeUtils.default.isArray(a)?a[0]:a)])&&(a.nodes.forEach(function(e){i[t.getNodeId(e)]=!0}),e.selectRadioKey=r),n.treeExpandedMaps=i},cacheNodeMap:function(){var c=this,e=c.reactData,t=c.internalData,d=c.separator,n=t.treeFullData,u=c.computeValueField,s=c.computeLabelField,p={},h={};_xeUtils.default.eachTree(n,function(e,t,n,a,r,i){var o=c.getNodeId(e),l=(o||(o=getNodeUniqueId(),e[u]=o),e[u]),e={item:e,index:t,$index:-1,_index:-1,items:n,parent:r,nodes:i,level:i.length-1,treeIndex:t,lineCount:0,treeLoaded:!1,fullLabel:i.map(function(e){return e[s]}).join(d||" / ")};h[l]=p[o]=e},{children:c.computeChildrenField}),t.nodeMaps=p,t.fullNodeMaps=h,e.fullOptFlag++},updateAfterDataIndex:function(){var c=this,e=c.internalData,d=c.separator,t=e.afterTreeList,u=e.nodeMaps,s=c.computeLabelField,e=c.computeTreeOpts.transform,p=0;_xeUtils.default.eachTree(t,function(e,t,n,a,r,i){var o=c.getNodeId(e),l=u[o];l?(l.items=n,l.treeIndex=t,l._index=p):(l={item:e,index:t,$index:-1,_index:p,items:n,parent:r,nodes:i,level:i.length-1,treeIndex:t,lineCount:0,treeLoaded:!1,fullLabel:i.map(function(e){return e[s]}).join(d||" / ")},u[o]=l),p++},{children:e?c.computeMapChildrenField:c.computeChildrenField})},updateAfterFullData:function(){var e,t,n=this,a=n.reactData,r=n.internalData,a=a.searchValue,i=r.treeFullData,o=r.lastFilterValue,l=n.computeLabelField,c=n.computeChildrenField,d=n.computeMapChildrenField,u=n.computeTreeOpts.transform,s=n.computeFilterOpts,p=s.beforeFilterMethod,h=s.filterMethod,f=s.afterFilterMethod,s=i,m=s,v="";a?(v="".concat(a),a=h?function(e){return h({$cascader:n,node:e,filterValue:v})}:function(e){return-1<String(e[l]).toLowerCase().indexOf(v.toLowerCase())},e={$cascader:n,filterValue:v},p&&p(e),s=u?m=_xeUtils.default.searchTree(i,a,{original:!0,isEvery:!1,children:c,mapChildren:d}):i.filter(a),r.lastFilterValue=v,n.$nextTick(function(){f&&f(e)})):(u&&(s=m=_xeUtils.default.searchTree(i,function(){return!0},{original:!0,isEvery:!1,children:c,mapChildren:d}),o)&&(t={$cascader:n,filterValue:v},p&&p(t),n.$nextTick(function(){f&&f(t)})),r.lastFilterValue=""),r.afterVisibleList=s,r.afterTreeList=m,n.updateAfterDataIndex()},handleTreeToList:function(){var l,c=this,e=c.internalData,t=e.afterTreeList,d=e.treeExpandedMaps,n=c.computeTreeOpts.transform,u={};return n?(l=[],_xeUtils.default.eachTree(t,function(e,t,n,a,r){var i=c.getNodeId(e),o=c.getNodeId(r);(!r||u[o]&&d[o])&&(u[i]=1,l.push(e))},{children:c.computeMapChildrenField}),e.afterVisibleList=l):e.afterVisibleList},handleData:function(e){var t=this.reactData,n=this.internalData.afterVisibleList,e=(e&&(this.updateAfterFullData(),n=this.handleTreeToList()),n.slice(0));t.treeList=e},handleHasChildNodeIds:function(e,t){for(var n=this,a=n.computeChildrenField,r=n.computeTreeOpts.transform?n.computeMapChildrenField:a,i=[],o=e;o.length;){var l,c=null,d=_createForOfIteratorHelper(o);try{for(d.s();!(l=d.n()).done;){var u=l.value,s=u[r];if(_xeUtils.default.isArray(s)&&0<s.length){c=u;break}}}catch(e){d.e(e)}finally{d.f()}if(!c){var p=_xeUtils.default[t](o);i.push(n.getNodeId(p));break}i.push(n.getNodeId(c)),o=c[r]}return i},triggerSearchEvent:_xeUtils.default.debounce(function(){var t,e=this,n=e.reactData,a=e.internalData,r=(e.handleData(!0),e.updateCheckboxStatus(),n.currentItems),i=a.afterTreeList,o=e.computeFilterOpts.autoExpandMode;e.isPathInTree(i,r)||("first"===o||"last"===o?(r=e.handleHasChildNodeIds(i,o),t={},r.forEach(function(e){t[e]=!0}),a.treeExpandedMaps=t,n.currentItems=r):e.handleCurrentItems()),e.updateCurrentChunk()},350,{trailing:!0}),loadData:function(e){var t=this,n=t.internalData,a=t.computeTreeOpts,r=a.rootParentValue,r=a.transform?_xeUtils.default.toArrayTree(e,{key:t.computeKeyField,parentKey:t.computeParentField,mapChildren:t.computeChildrenField,rootParentValue:r,rootValues:a.rootValues}):e?e.slice(0):[];return n.treeFullData=r,t.cacheNodeMap(),t.handleData(!0),t.updateModelChecked(),t.handleCurrentItems(),t.updateCurrentChunk(),t.$nextTick()},updateCurrentChunk:function(){var t=this,e=t.reactData,n=e.currentItems,a=t.internalData.afterTreeList,r=t.computeChildrenField,i=t.computeMapChildrenField,o=t.computeTreeOpts.transform,l=[a];if(n.length)for(var c=0,d=n[c],u=a;d&&u&&u.length;){var d=n[c++],s=u.find(function(e){return d===t.getNodeId(e)});if(!(u=s?s[o?i:r]:[])||!u.length)break;l.push(u)}e.currentCunkList=l},handleCurrentItems:function(){var t=this,e=t.reactData,n=t.internalData,a=e.currentNode,r=n.afterTreeList,i=t.computeSelectVals,o=t.computeChildrenField,l=t.computeMapChildrenField,c=t.computeTreeOpts.transform,d=[],u={},s=a?t.getNodeId(a):(0,_util.enNodeValue)(_xeUtils.default.last(i));s&&(a=_xeUtils.default.findTree(r,function(e){return s===t.getNodeId(e)},{children:c?l:o}))&&a.nodes.forEach(function(e){e=t.getNodeId(e);u[e]=!0,d.push(e)}),e.currentItems=d,n.treeExpandedMaps=u},updateZindex:function(){var e=this.reactData,t=this.computePopupOpts.zIndex;t?e.panelIndex=t:e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(r,i,{placement:l.placement,defaultPlacement:l.defaultPlacement,teleportTo:o,isMinWidth:!1}),t=Object.assign(e.style,{zIndex:a});n.panelStyle=t,n.panelPlacement=e.placement}var t=this,n=t.reactData,a=n.panelIndex,r=t.$refs.refElem,i=t.$refs.refOptionPanel,o=t.computeBtnTransfer,l=t.computePopupOpts;return e(),t.$nextTick().then(e)},showOptionPanel:function(e){var t=this,n=t.reactData,a=t.internalData,r=t.loading,i=t.remote,o=t.filterable,l=a.treeFullData,c=t.computeRemoteOpts;r||t.computeIsDisabled||(clearTimeout(a.hpTimeout),n.initialized||(n.initialized=!0,r=t.computeBtnTransfer,a=t.$refs.refOptionPanel,r&&a&&document.body.appendChild(a)),n.isActivated=!0,n.isAniVisible=!0,o&&i&&c.enabled&&c.autoLoad&&!l.length&&t.handleSearchEvent(),setTimeout(function(){n.visiblePanel=!0,t.handleFocusSearch()},10),t.updateZindex(),t.updatePlacement(),t.dispatchEvent("visible-change",{visible:!0},e||null))},hideOptionPanel:function(e){var t=this.reactData,n=this.internalData;t.visiblePanel=!1,n.hpTimeout=setTimeout(function(){t.isAniVisible=!1},350),this.dispatchEvent("visible-change",{visible:!1},e||null)},setCurrentNode:function(e){return this.reactData.currentNode=e,this.$nextTick()},setAllCheckboxNode:function(e){var n=this,t=n.reactData,a=n.internalData,r={},i=n.computeTreeOpts.transform,o=[],l=[];return e&&_xeUtils.default.eachTree(a.afterTreeList,function(e){var t=n.getNodeId(e);o.push(t),l.push(e),r[t]=!0},{children:i?n.computeMapChildrenField:n.computeChildrenField}),a.indeterminateRowMaps={},a.selectCheckboxMaps=r,t.updateCheckboxFlag++,n.updateCheckboxStatus(),n.$nextTick().then(function(){return{checkNodeKeys:o,checkNodes:l}})},clearSelectedNode:function(){var e=this.reactData,t=this.internalData;return t.indeterminateRowMaps={},t.selectCheckboxMaps={},e.updateCheckboxFlag++,e.selectRadioKey=null,this.updateCheckboxStatus(),this.$nextTick().then(function(){return{checkNodeKeys:[],checkNodes:[]}})},changeEvent:function(e,t,n){var a=this,r=a,i=a.internalData,o=a.$xeForm,l=a.formItemInfo,t=_xeUtils.default.isArray(t)?t.map(_util.deNodeValue):(0,_util.deNodeValue)(t);i.isUpdateMode=!0,a.emitModel(t),t!==r.value&&(a.dispatchEvent("change",{value:t,node:n,option:n},e),o)&&l&&o.triggerItemEvent(e,l.itemConfig.field,t)},clearValueEvent:function(e,t){this.changeEvent(e,t,null),this.dispatchEvent("clear",{value:t},e)},clearEvent:function(e,t){this.clearValueEvent(t,null),this.hideOptionPanel(t)},allCheckedPanelEvent:function(e){var n=this,a=e.$event,e=n.multiple,r=n.checkedClosable;e&&n.setAllCheckboxNode(!0).then(function(e){var t=e.checkNodeKeys;n.changeEvent(a,t,e.checkNodes[0]),n.dispatchEvent("all-change",{value:t},a),r&&n.hideOptionPanel(a)})},clearCheckedPanelEvent:function(e){var t=this,n=e.$event,e=t.multiple,a=t.checkedClosable,e=e?[]:null;t.clearSelectedNode().then(function(){a&&t.hideOptionPanel(n)}),t.changeEvent(n,e,null),t.dispatchEvent("clear",{value:e},n)},closePanelEvent:function(e){e=e.$event;this.hideOptionPanel(e)},handleGlobalMousewheelEvent:function(e){var t=this,n=t.reactData.visiblePanel;t.computeIsDisabled||n&&(n=t.$refs.refOptionPanel,(0,_dom.getEventTargetNode)(e,n).flag?t.updatePlacement():t.hideOptionPanel(e))},handleGlobalMousedownEvent:function(e){var t,n,a=this,r=a.reactData,i=r.visiblePanel;a.computeIsDisabled||(t=a.$refs.refElem,n=a.$refs.refOptionPanel,r.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,n).flag,i&&!r.isActivated&&a.hideOptionPanel(e))},handleGlobalBlurEvent:function(e){var t=this.reactData,n=t.visiblePanel,a=t.isActivated;n&&this.hideOptionPanel(e),a&&(t.isActivated=!1),(n||a)&&(e=this.$refs.refInput)&&e.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},handleFocusSearch:function(){var t=this;t.filterable&&t.$nextTick(function(){var e=t.$refs.refInpSearch;e&&e.focus()})},changeCurrentEvent:function(e,t){var n=this.reactData;e.preventDefault();n.currentNode=t,this.dispatchEvent("current-change",{node:t,checked:!0},e)},changeRadioEvent:function(e,t,n,a){var r=this,i=r.reactData,o=r.internalData,l=(e.preventDefault(),e.stopPropagation(),i.currentItems),o=o.nodeMaps,c=r.computeRadioOpts,d=r.computeChildrenField,u=r.computeMapChildrenField,s=r.computeTreeOpts.transform,p=c.checkMode,c=c.checkMethod,h=r.getNodeId(t),s=t[s?u:d],u=s&&0<s.length,d=(o[h]||{}).level;(c?c({$cascader:r,node:t}):handleVisibleOrCheckMode(p,u,d))&&(i.selectRadioKey=s=h,r.changeEvent(e,s,t),l.includes(h)||(r.changeCurrentEvent(e,t),r.toggleExpandEvent(e,t,n,a)),r.hideOptionPanel(e))},handleAsyncTreeExpandChilds:function(i){var o=this,l=o.reactData,c=o.internalData,n=o.computeTreeOpts.loadMethod,d=o.computeCheckboxOpts.checkStrictly;return new Promise(function(e){var t,a,r;n?(t=c.nodeMaps,a=o.getNodeId(i),r=t[a],c.treeExpandLazyLoadedMaps[a]=!0,Promise.resolve(n({$cascader:o,node:i})).then(function(n){var e=c.treeExpandLazyLoadedMaps;if(r.treeLoaded=!0,e[a]&&(e[a]=!1),n=_xeUtils.default.isArray(n)?n:[])return o.loadChildrenNode(i,n).then(function(e){var t=c.treeExpandedMaps;return e.length&&!t[a]&&(t[a]=!0),l.updateExpandedFlag++,!d&&o.isCheckedByCheckboxNodeId(a)&&o.handleCheckedCheckboxNode(e,!0),o.dispatchEvent("load-success",{node:i,data:n},new Event("load-success")),o.$nextTick()});o.dispatchEvent("load-success",{node:i,data:n},new Event("load-success"))}).catch(function(e){var t=c.treeExpandLazyLoadedMaps;r.treeLoaded=!1,t[a]&&(t[a]=!1),o.dispatchEvent("load-error",{node:i,data:e},new Event("load-error"))}).finally(function(){o.handleTreeToList(),o.handleData()})):e()})},handleBaseTreeExpand:function(e,t){var a=this,n=a.reactData,r=a.internalData,i=r.treeExpandLazyLoadedMaps,o=r.treeExpandedMaps,l=r.nodeMaps,c=a.computeChildrenField,d=a.computeHasChildField,r=a.computeTreeOpts,u=r.lazy,s=r.toggleMethod,p=[],r=(r=s?e.filter(function(e){return s({$cascader:a,expanded:t,node:e})}):e).length?[r[r.length-1]]:[],e=a.getNodeId(r[0]),e=l[e],h=(e&&e.items.forEach(function(e){e=a.getNodeId(e);o[e]&&delete o[e]}),[]);return t?r.forEach(function(e){var t,n=a.getNodeId(e);o[n]||(t=l[n],u&&e[d]&&!t.treeLoaded&&!i[n]?p.push(a.handleAsyncTreeExpandChilds(e)):e[c]&&e[c].length&&(o[n]=!0,h.push(e)))}):r.forEach(function(e){var t=a.getNodeId(e);o[t]&&(delete o[t],h.push(e))}),n.updateExpandedFlag++,a.handleTreeToList(),a.handleData(),Promise.all(p)},toggleExpandEvent:function(e,t,n,a){var r=this,i=r.reactData,o=i.currentItems,l=r.internalData.treeExpandLazyLoadedMaps,c=r.computeTreeOpts.lazy,o=o.slice(0,a),a=r.getNodeId(t);e.stopPropagation(),o.push(a),i.currentItems=o,c&&l[a]||r.handleBaseTreeExpand([t],!0),r.setCurrentNode(t),r.updateCurrentChunk(),r.dispatchEvent("node-expand",{node:t,expanded:!0},e)},updateCheckboxStatus:function(){var a,r,l=this,e=l.reactData,t=l.internalData,c=t.selectCheckboxMaps,d=t.indeterminateRowMaps,i=l.computeChildrenField,o=l.computeMapChildrenField,n=l.computeCheckboxOpts,u=n.checkStrictly,s=n.checkMethod,p=l.computeTreeOpts.transform;u||(a={},r=[],_xeUtils.default.eachTree(t.afterTreeList,function(e){var t=l.getNodeId(e),n=e[p?o:i];n&&n.length&&!a[t]&&(a[t]=1,r.unshift([e,t,n]))},{children:p?o:i}),r.forEach(function(e){var t=e[0],n=e[1],e=e[2],a=0,r=0,i=0,o=e.length,e=(e.forEach(s?function(e){var t=l.getNodeId(e),n=c[t];s({$cascader:l,node:e})?(n?a++:d[t]&&r++,i++):n?a++:d[t]&&r++}:function(e){e=l.getNodeId(e);c[e]?a++:d[e]&&r++,i++}),!1),o=!(e=0<o?0<i?(0<a||0<r)&&i<=a:0<a&&i<=a||!!c[n]:c[n])&&(0<a||0<r);e?(c[n]=t,d[n]&&delete d[n]):(c[n]&&delete c[n],o?d[n]=t:d[n]&&delete d[n])}),e.updateCheckboxFlag++)},changeCheckboxEvent:function(e,t,n,a){var r,i=this,o=i.reactData,l=i.internalData,c=(e.preventDefault(),e.stopPropagation(),o.currentItems),d=l.selectCheckboxMaps,l=l.nodeMaps,u=i.computeChildrenField,s=i.computeMapChildrenField,p=i.computeCheckboxOpts,h=p.checkStrictly,f=p.checkMode,p=p.checkMethod,m=i.computeTreeOpts.transform,v=i.getNodeId(t),g=t[m?s:u],C=g&&0<g.length,l=(l[v]||{}).level;(p?p({$cascader:i,node:t}):handleVisibleOrCheckMode(f,C,l))&&(r=!1,d[v]?delete d[v]:(r=!0,d[v]=t),h||_xeUtils.default.eachTree(g,function(e){e=i.getNodeId(e);r?d[e]||(d[e]=!0):d[e]&&delete d[e]},{children:m?s:u}),o.updateCheckboxFlag++,i.updateCheckboxStatus(),p=_xeUtils.default.keys(d),i.changeEvent(e,p,t),!c.includes(v))&&(i.changeCurrentEvent(e,t),i.toggleExpandEvent(e,t,n,a))},handleNodeClickEvent:function(e,t,n,a){var r=this,i=r.multiple,o=r.showCheckbox,l=r.showRadio,c=r.computeTreeOpts,d=r.computeRadioOpts,u=r.computeCheckboxOpts,s=c.transform,c=c.trigger,s=t[s?r.computeMapChildrenField:r.computeChildrenField],p=!1,h=!1,f=!1;r.changeCurrentEvent(e,t),"icon"!==c&&(f=!0,r.toggleExpandEvent(e,t,n,a)),i?"node"!==u.trigger&&(o||s&&s.length)||(h=!0,r.changeCheckboxEvent(e,t,n,a)):"node"!==d.trigger&&(l||s&&s.length)||(p=!0,r.changeRadioEvent(e,t,n,a)),r.dispatchEvent("node-click",{node:t,triggerCurrent:!0,triggerRadio:p,triggerCheckbox:h,triggerExpand:f},e)},focusEvent:function(e){var t=this.reactData;this.computeIsDisabled||t.visiblePanel||(t.triggerFocusPanel=!0,this.showOptionPanel(e),setTimeout(function(){t.triggerFocusPanel=!1},150)),this.dispatchEvent("focus",{},e)},clickEvent:function(e){var t=this.reactData;e.preventDefault(),t.triggerFocusPanel?t.triggerFocusPanel=!1:t.visiblePanel||this.showOptionPanel(e),this.dispatchEvent("click",{},e)},blurEvent:function(e){this.reactData.isActivated=!1,this.dispatchEvent("blur",{},e)},modelSearchEvent:function(e){this.reactData.searchValue=e,this.triggerSearchEvent(new Event("filter"))},handleSearchEvent:function(){var e=this,t=e.reactData,n=e.value,a=t.searchValue,r=e.computeRemoteOpts,i=r.queryMethod;e.remote&&i&&r.enabled&&(t.searchLoading=!0,Promise.resolve(i({$cascader:e,searchValue:a,value:n})).then(function(){return e.$nextTick()}).catch(function(){return e.$nextTick()}).finally(function(){t.searchLoading=!1}))},togglePanelEvent:function(e){var t=this.reactData,e=e.$event;e.preventDefault(),t.triggerFocusPanel?t.triggerFocusPanel=!1:t.visiblePanel?this.hideOptionPanel(e):this.showOptionPanel(e)},loadChildrenNode:function(t,e){var n,a,l,c,d,u=this,r=u.internalData,s=u.separator,p=r.nodeMaps,r=u.computeTreeOpts,h=u.computeLabelField,i=r.lazy,o=r.transform;return i?(n=u.computeChildrenField,a=u.computeMapChildrenField,l=p[u.getNodeId(t)],c=l?l.level:0,d=l?l.nodes:[],u.createNode(e).then(function(e){return _xeUtils.default.eachTree(e,function(e,t,n,a,r,i){var o=u.getNodeId(e);p[o]={item:e,index:-1,$index:-1,_index:-1,items:n,parent:r||l.item,nodes:d.concat(i),level:c+i.length,treeIndex:-1,lineCount:0,treeLoaded:!1,fullLabel:i.map(function(e){return e[h]}).join(s||" / ")}},{children:n}),t[n]=e,o&&(t[a]=e),u.updateAfterDataIndex(),e})):Promise.resolve([])},renderRadio:function(e,t,n,a,r,i,o){var l,c=this,d=c.showRadio,u=c.computeRadioOpts,s=u.checkMode,p=u.checkMethod,h=u.visibleMode,u=u.visibleMethod,u=u?u({$cascader:c,node:t}):handleVisibleOrCheckMode(h,n,a);return d&&u?e("div",{class:["vxe-tree--radio-option",{"is--checked":r,"is--disabled":l=p?!p({$cascader:c,node:t}):!handleVisibleOrCheckMode(s,n,a)}],on:{click:function(e){l||c.changeRadioEvent(e,t,i,o)}}},[e("span",{class:["vxe-radio--icon",r?(0,_ui.getIcon)().RADIO_CHECKED:l?(0,_ui.getIcon)().RADIO_DISABLED_UNCHECKED:(0,_ui.getIcon)().RADIO_UNCHECKED]})]):(0,_ui.renderEmptyElement)(c)},renderCheckbox:function(e,t,n,a,r,i,o,l){var c,d=this,u=d.showCheckbox,s=d.computeCheckboxOpts,p=s.checkMode,h=s.checkMethod,f=s.visibleMode,s=s.visibleMethod,s=s?s({$cascader:d,node:t}):handleVisibleOrCheckMode(f,n,a);return u&&s?e("div",{class:["vxe-cascader--checkbox-option",{"is--checked":r,"is--indeterminate":i,"is--disabled":c=h?!h({$cascader:d,node:t}):!handleVisibleOrCheckMode(p,n,a)}],on:{click:function(e){c||d.changeCheckboxEvent(e,t,o,l)}}},[e("span",{class:["vxe-checkbox--icon",i?(0,_ui.getIcon)().CHECKBOX_INDETERMINATE:r?(0,_ui.getIcon)().CHECKBOX_CHECKED:c?(0,_ui.getIcon)().CHECKBOX_DISABLED_UNCHECKED:(0,_ui.getIcon)().CHECKBOX_UNCHECKED]})]):(0,_ui.renderEmptyElement)(d)},renderNode:function(e,t,n,a,r,i){var o=this,l=o.reactData,c=o.internalData,d=o.$scopedSlots,u=o.multiple,s=l.currentNode,p=l.updateCheckboxFlag,h=c.nodeMaps,f=o.computeTreeOpts,m=f.lazy,v=f.iconLoaded,g=f.iconOpen,C=f.iconClose,x=t[f.transform?o.computeMapChildrenField:o.computeChildrenField],x=x&&0<x.length,b=d.icon,d=d.title,E=l.updateExpandedFlag&&c.treeExpandedMaps[n],h=h[n]||{},_=t[o.computeLabelField],k=h.level,y=!1,l=(u||(y=n===l.selectRadioKey),!1),D=!1,p=(u&&(l=!(!p||!c.selectCheckboxMaps[n]),D=!(!p||!c.indeterminateRowMaps[n])),!1),I=!1,O=!1,c=(m&&(I=!!c.treeExpandLazyLoadedMaps[n],p=t[o.computeHasChildField],O=!!h.treeLoaded),{node:t});return e("div",{key:"".concat(i,"_").concat(a),class:["vxe-cascader-chunk--node-item",{"is--current":s&&(s===t||o.getNodeId(s)===n),"is-radio--checked":y,"is-checkbox--checked":l,"is-checkbox--indeterminate":D,"is--expand":E}],attrs:{title:_},on:{mousedown:function(e){0===e.button&&e.stopPropagation()},click:function(e){o.handleNodeClickEvent(e,t,r,i)}}},[u?o.renderCheckbox(e,t,x,k,l,D,r,i):o.renderRadio(e,t,x,k,y,r,i),e("div",{class:"vxe-cascader-chunk--node-item-inner"},[e("div",{class:"vxe-cascader-chunk--node-item-title"},d?(0,_ui.getSlotVNs)(d(c)):_)]),f.showIcon&&(!m||O?x:p)?e("div",{class:"vxe-cascader-chunk--node-item-switcher"},[[e("div",{class:"vxe-cascader--node-item-icon",on:{click:function(e){"icon"===f.trigger&&o.toggleExpandEvent(e,t,r,i)}}},b?(0,_ui.getSlotVNs)(b(c)):[e("i",{class:I?v||(0,_ui.getIcon)().CASCADER_NODE_LOADED:E?g||(0,_ui.getIcon)().CASCADER_NODE_OPEN:C||(0,_ui.getIcon)().CASCADER_NODE_CLOSE})])]]):(0,_ui.renderEmptyElement)(o)])},renderVN:function(i){var o=this,e=o,t=o.reactData,n=o.$scopedSlots,a=e.className,r=e.value,l=e.multiple,c=e.loading,d=e.filterable,u=e.showTotalButton,s=e.showCheckedButton,p=e.showClearButton,h=e.showCloseButton,f=t.initialized,m=t.isActivated,v=t.isAniVisible,g=t.visiblePanel,C=t.searchValue,x=t.currentCunkList,b=o.internalData.listVirtualYOpts,E=o.computeSize,_=o.computeIsDisabled,k=o.computeSelectLabel,y=o.computeBtnTransfer,D=o.computePopupWrapperStyle,I=n.header,O=n.footer,F=n.prefix,n=o.computePopupOpts.className;return o.computeFormReadonly?i("div",{ref:"refElem",class:["vxe-cascader--readonly",a]},[i("span",{class:"vxe-cascader-label"},k)]):(r=_xeUtils.default.eqNull(r)?[]:_xeUtils.default.isArray(r)?r:[r],i("div",{ref:"refElem",class:["vxe-cascader",a?_xeUtils.default.isFunction(a)?a({$cascader:o}):a:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(E),E),"is--filterable",d),"is--visible",g),"is--disabled",_),"is--loading",c),"is--active",m)]},[i(_input.default,{ref:"refInput",props:{clearable:e.clearable,placeholder:c?(0,_ui.getI18n)("vxe.select.loadingText"):e.placeholder,editable:!1,disabled:_,type:"text",prefixIcon:e.prefixIcon,suffixIcon:c?(0,_ui.getIcon)().TREE_SELECT_LOADED:g?(0,_ui.getIcon)().TREE_SELECT_OPEN:(0,_ui.getIcon)().TREE_SELECT_CLOSE,value:c?"":k,title:k},on:{clear:o.clearEvent,click:o.clickEvent,focus:o.focusEvent,blur:o.blurEvent,"suffix-click":o.togglePanelEvent},scopedSlots:F?{prefix:function(){return F({})}}:void 0}),i("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-cascader--panel",n?_xeUtils.default.isFunction(n)?n({$cascader:o}):n:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(E),E),"is--transfer",y),"ani--leave",!c&&v),"ani--enter",!c&&g)],attrs:{placement:t.panelPlacement},style:D},f?[i("div",{class:"vxe-cascader--panel-wrapper"},[d?i("div",{class:"vxe-cascader--panel-search"},[i(_input.default,{ref:"refInpSearch",class:"vxe-cascader-search--input",props:{value:C,clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.cascader.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH},on:{"model-value":o.modelSearchEvent}})]):(0,_ui.renderEmptyElement)(o),s&&l||p||I?i("div",{class:"vxe-cascader--panel-header"},I?I({}):[i("div",{class:"vxe-cascader--header-button"},[s&&l||p?i("div",{class:"vxe-cascader--selected-btns"},[s&&l?i(_button.default,{props:{content:(0,_ui.getI18n)("vxe.treeSelect.allChecked"),mode:"text"},on:{click:o.allCheckedPanelEvent}}):(0,_ui.renderEmptyElement)(o),p?i(_button.default,{props:{content:(0,_ui.getI18n)("vxe.treeSelect.clearChecked"),mode:"text"},on:{click:o.clearCheckedPanelEvent}}):(0,_ui.renderEmptyElement)(o)]):(0,_ui.renderEmptyElement)(o)])]):(0,_ui.renderEmptyElement)(o),i("div",{class:"vxe-cascader--panel-body"},[i("div",{ref:"refChunkWrapper",class:"vxe-cascader-chunk--wrapper"},[x.map(function(a,r){return i("div",{key:r,class:"vxe-cascader-chunk--item-wrapper"},[i(_list.default,{props:{data:a,virtualYConfig:b},scopedSlots:{default:function(e){return e.items.map(function(e,t){var n=o.getNodeId(e);return o.renderNode(i,e,n,t,a,r)})}}})])})])]),O||u||h?i("div",{class:"vxe-cascader--panel-footer"},O?O({}):[i("div",{class:"vxe-cascader--footer-button"},[u?i("div",{class:"vxe-cascader--total-btns"},(0,_ui.getI18n)("vxe.treeSelect.total",[r.length])):(0,_ui.renderEmptyElement)(o),h?i("div",{class:"vxe-cascader--oper-btns"},[i(_button.default,{props:{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text"},on:{click:o.closePanelEvent}})]):(0,_ui.renderEmptyElement)(o)])]):(0,_ui.renderEmptyElement)(o)])]:[])]))}},watch:{value:function(){var e=this.internalData;e.isUpdateMode||(this.updateModelChecked(),this.handleCurrentItems(),this.updateCurrentChunk()),e.isUpdateMode=!1},options:function(){this.loadData(this.options||[])}},created:function(){var e=this.reactData;this.internalData=createInternalData(),this.multiple||(e.selectRadioKey=(0,_util.enNodeValue)(this.value)),this.loadData(this.options||[])},mounted:function(){var e=this;_ui.globalEvents.on(e,"mousewheel",e.handleGlobalMousewheelEvent),_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent),_ui.globalEvents.on(e,"resize",e.handleGlobalResizeEvent)},beforeDestroy:function(){var e=this,t=e.reactData,n=e.internalData,a=e.$refs.refOptionPanel;a&&a.parentNode&&a.parentNode.removeChild(a),_ui.globalEvents.off(e,"mousewheel"),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize"),_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(n,createInternalData())},render:function(e){return this.renderVN(e)}});
|
|
1
|
+
function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_util=require("./util"),_xeUtils=_interopRequireDefault(require("xe-utils")),_list=_interopRequireDefault(require("../../list")),_input=_interopRequireDefault(require("../../input")),_button=_interopRequireDefault(require("../../button"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,n){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0===n)return("string"===t?String:Number)(e);n=n.call(e,t||"default");if("object"!=_typeof(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}function _createForOfIteratorHelper(e,t){var n,a,r,i,o="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(o)return r=!(a=!0),{s:function(){o=o.call(e)},n:function(){var e=o.next();return a=e.done,e},e:function(e){r=!0,n=e},f:function(){try{a||null==o.return||o.return()}finally{if(r)throw n}}};if(Array.isArray(e)||(o=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length)return o&&(e=o),i=0,{s:t=function(){},n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:t};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var n;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(n="Object"===(n={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:n)||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}function getNodeUniqueId(){return _xeUtils.default.uniqueId("node_")}function handleVisibleOrCheckMode(e,t,n){if(e){if("first"===e)return!n;if("last"===e)return!t}return!0}function createReactData(){return{initialized:!1,searchValue:"",searchLoading:!1,currentCunkList:[],currentItems:[],currentNode:null,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1,selectRadioKey:null,treeList:[],updateExpandedFlag:1,updateCheckboxFlag:1,fullOptFlag:1,lazyOptFlag:1}}function createInternalData(){return{listVirtualYOpts:{enabled:!0,gt:20},afterTreeList:[],treeFullData:[],afterVisibleList:[],nodeMaps:{},fullNodeMaps:{},lazyNodeMaps:{},indeterminateRowMaps:{},selectCheckboxMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{}}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeCascader",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:[String,Number,Array],clearable:Boolean,placeholder:{type:String,default:function(){return _xeUtils.default.eqNull((0,_ui.getConfig)().cascader.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().cascader.placeholder}},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},filterable:Boolean,filterConfig:Object,showFullLabel:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showFullLabel}},separator:{type:String,default:function(){return(0,_ui.getConfig)().cascader.separator}},multiple:Boolean,className:[String,Function],prefixIcon:String,lazyOptions:Array,options:Array,optionProps:Object,size:{type:String,default:function(){return(0,_ui.getConfig)().cascader.size||(0,_ui.getConfig)().size}},treeConfig:Object,showRadio:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showRadio}},radioConfig:Object,showCheckbox:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showCheckbox}},checkboxConfig:Object,remote:Boolean,remoteConfig:Function,popupConfig:Object,checkedClosable:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.checkedClosable}},clearClosable:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.clearClosable}},showCloseButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showCloseButton}},showTotalButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showTotalButton}},showCheckedButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showCheckedButton}},showClearButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().cascader.showClearButton}}},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeCascader:this}},data:function(){var e=_xeUtils.default.uniqueId(),t=createReactData();return Object.assign(Object.assign({},{}),{xID:e,reactData:t})},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,n=e.$xeModal,a=e.$xeDrawer,r=e.$xeForm,e=e.computePopupOpts.transfer;return _xeUtils.default.isBoolean(e)?e:!!(t||n||a||r)},computeTreeOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.treeConfig,this.treeConfig)},computeRadioOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.radioConfig,this.radioConfig)},computeCheckboxOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.checkboxConfig,this.checkboxConfig)},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.popupConfig,this.popupConfig)},computePropsOpts:function(){return this.optionProps||{}},computeLabelField:function(){return this.computePropsOpts.label||"label"},computeValueField:function(){return this.computePropsOpts.value||"value"},computeKeyField:function(){return this.computeTreeOpts.keyField||"id"},computeParentField:function(){return this.computeTreeOpts.parentField||"parentId"},computeChildrenField:function(){return this.computeTreeOpts.childrenField||"children"},computeMapChildrenField:function(){return this.computeTreeOpts.mapChildrenField||"mapChildren"},computeHasChildField:function(){return this.computeTreeOpts.hasChildField||"hasChild"},computeRemoteOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.remoteConfig,this.remoteConfig)},computeSelectVals:function(){var e=this.value;return _xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]},computeSelectLabel:function(){var e=this,t=e.reactData,n=e.internalData,a=e.showFullLabel,r=t.fullOptFlag,i=t.lazyOptFlag,o=n.fullNodeMaps,l=n.lazyNodeMaps,c=e.computeLabelField;return e.computeSelectVals.map(function(e){var t=o[e];if(r&&t)return a?t.fullLabel:t.item[c];if(i){t=l[e];if(t)return a?t.fullLabel:t.item[c]}return e}).join(", ")},computePopupWrapperStyle:function(){var e=this.reactData,t=e.currentCunkList,n=this.computePopupOpts,a=n.height,r=n.nodeWidth,n=n.nodeHeight,e=Object.assign(Object.assign({},e.panelStyle),{"--vxe-ui-cascader-chunk-size":t.length});return a&&(e["--vxe-ui-cascader-chunk-height"]=(0,_dom.toCssUnit)(a)),r&&(e["--vxe-ui-cascader-node-width"]=(0,_dom.toCssUnit)(r)),n&&(e["--vxe-ui-cascader-node-height"]=(0,_dom.toCssUnit)(n)),e},computeFilterOpts:function(){return Object.assign({},(0,_ui.getConfig)().cascader.filterConfig,this.filterConfig)}}),methods:{dispatchEvent:function(e,t,n){this.$emit(e,(0,_ui.createEvent)(n,{$cascader:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},getNodeId:function(e){return e?(e=e[this.computeValueField],(0,_util.enNodeValue)(e)):""},isPathInTree:function(e,t){var n=this;if(!t||!t.length)return!1;var a,r=e,i=_createForOfIteratorHelper(t);try{var o;for(i.s();!(a=i.n()).done;)if(o=(()=>{var t=a.value,e=r.find(function(e){return n.getNodeId(e)===t});if(!e)return{v:!1};r=e.children||[]})())return o.v}catch(e){i.e(e)}finally{i.f()}return!0},isCheckedByCheckboxNodeId:function(e){var t=this.reactData,n=this.internalData,t=t.updateCheckboxFlag,n=n.selectCheckboxMaps;return!(!t||!n[e])},handleCheckedCheckboxNode:function(e,n){function t(e){var t=a.getNodeId(e);n?i[t]||(i[t]=e):i[t]&&delete i[t]}var a=this,r=a.reactData,i=a.internalData.selectCheckboxMaps,o=a.computeMapChildrenField,l=a.computeChildrenField,c=a.computeCheckboxOpts.checkStrictly,d=a.computeTreeOpts.transform;c?e.forEach(t):_xeUtils.default.eachTree(e,t,{children:d?o:l}),r.updateCheckboxFlag++,a.updateCheckboxStatus()},createNode:function(e){var n=this,a=n.computeValueField;return Promise.resolve(e.map(function(e){var t,e=Object.assign({},e);return n.getNodeId(e)||(t=getNodeUniqueId(),_xeUtils.default.set(e,a,t)),e}))},handleSetCheckboxByNodeId:function(e,t){var n,a=this.internalData.nodeMaps;return e&&(_xeUtils.default.isArray(e)||(e=[e]),n=[],e.forEach(function(e){e=(0,_util.enNodeValue)(e),e=a[e];e&&n.push(e.item)}),this.handleCheckedCheckboxNode(n,t)),this.$nextTick()},updateCheckboxChecked:function(e){this.internalData.selectCheckboxMaps={},this.handleSetCheckboxByNodeId(e,!0)},updateModelChecked:function(){var t=this,e=t.reactData,n=t.internalData,a=t.value,r=n.nodeMaps,i={};t.multiple?a&&a.length&&t.updateCheckboxChecked(a):a&&(a=r[r=(0,_util.enNodeValue)(_xeUtils.default.isArray(a)?a[0]:a)])&&(a.nodes.forEach(function(e){i[t.getNodeId(e)]=!0}),e.selectRadioKey=r),n.treeExpandedMaps=i},cacheNodeMap:function(){var c=this,e=c.reactData,t=c.internalData,d=c.separator,n=t.treeFullData,u=c.computeValueField,s=c.computeLabelField,p={},h={};_xeUtils.default.eachTree(n,function(e,t,n,a,r,i){var o=c.getNodeId(e),l=(o||(o=getNodeUniqueId(),e[u]=o),e[u]),e={item:e,index:t,$index:-1,_index:-1,items:n,parent:r,nodes:i,level:i.length-1,treeIndex:t,lineCount:0,treeLoaded:!1,fullLabel:i.map(function(e){return e[s]}).join(d||" / ")};h[l]=p[o]=e},{children:c.computeChildrenField}),t.nodeMaps=p,t.fullNodeMaps=h,e.fullOptFlag++},updateAfterDataIndex:function(){var c=this,e=c.internalData,d=c.separator,t=e.afterTreeList,u=e.nodeMaps,s=c.computeLabelField,e=c.computeTreeOpts.transform,p=0;_xeUtils.default.eachTree(t,function(e,t,n,a,r,i){var o=c.getNodeId(e),l=u[o];l?(l.items=n,l.treeIndex=t,l._index=p):(l={item:e,index:t,$index:-1,_index:p,items:n,parent:r,nodes:i,level:i.length-1,treeIndex:t,lineCount:0,treeLoaded:!1,fullLabel:i.map(function(e){return e[s]}).join(d||" / ")},u[o]=l),p++},{children:e?c.computeMapChildrenField:c.computeChildrenField})},updateAfterFullData:function(){var e,t,n=this,a=n.reactData,r=n.internalData,a=a.searchValue,i=r.treeFullData,o=r.lastFilterValue,l=n.computeLabelField,c=n.computeChildrenField,d=n.computeMapChildrenField,u=n.computeTreeOpts.transform,s=n.computeFilterOpts,p=s.beforeFilterMethod,h=s.filterMethod,f=s.afterFilterMethod,s=i,m=s,v="";a?(v="".concat(a),a=h?function(e){return h({$cascader:n,node:e,filterValue:v})}:function(e){return-1<String(e[l]).toLowerCase().indexOf(v.toLowerCase())},e={$cascader:n,filterValue:v},p&&p(e),s=u?m=_xeUtils.default.searchTree(i,a,{original:!0,isEvery:!1,children:c,mapChildren:d}):i.filter(a),r.lastFilterValue=v,n.$nextTick(function(){f&&f(e)})):(u&&(s=m=_xeUtils.default.searchTree(i,function(){return!0},{original:!0,isEvery:!1,children:c,mapChildren:d}),o)&&(t={$cascader:n,filterValue:v},p&&p(t),n.$nextTick(function(){f&&f(t)})),r.lastFilterValue=""),r.afterVisibleList=s,r.afterTreeList=m,n.updateAfterDataIndex()},handleTreeToList:function(){var l,c=this,e=c.internalData,t=e.afterTreeList,d=e.treeExpandedMaps,n=c.computeTreeOpts.transform,u={};return n?(l=[],_xeUtils.default.eachTree(t,function(e,t,n,a,r){var i=c.getNodeId(e),o=c.getNodeId(r);(!r||u[o]&&d[o])&&(u[i]=1,l.push(e))},{children:c.computeMapChildrenField}),e.afterVisibleList=l):e.afterVisibleList},handleData:function(e){var t=this.reactData,n=this.internalData.afterVisibleList,e=(e&&(this.updateAfterFullData(),n=this.handleTreeToList()),n.slice(0));t.treeList=e},handleHasChildNodeIds:function(e,t){for(var n=this,a=n.computeChildrenField,r=n.computeTreeOpts.transform?n.computeMapChildrenField:a,i=[],o=e;o.length;){var l,c=null,d=_createForOfIteratorHelper(o);try{for(d.s();!(l=d.n()).done;){var u=l.value,s=u[r];if(_xeUtils.default.isArray(s)&&0<s.length){c=u;break}}}catch(e){d.e(e)}finally{d.f()}if(!c){var p=_xeUtils.default[t](o);i.push(n.getNodeId(p));break}i.push(n.getNodeId(c)),o=c[r]}return i},triggerSearchEvent:_xeUtils.default.debounce(function(){var t,e=this,n=e.reactData,a=e.internalData,r=(e.handleData(!0),e.updateCheckboxStatus(),n.currentItems),i=a.afterTreeList,o=e.computeFilterOpts.autoExpandMode;e.isPathInTree(i,r)||("first"===o||"last"===o?(r=e.handleHasChildNodeIds(i,o),t={},r.forEach(function(e){t[e]=!0}),a.treeExpandedMaps=t,n.currentItems=r):e.handleCurrentItems()),e.updateCurrentChunk()},350,{trailing:!0}),loadData:function(e){var t=this,n=t.internalData,a=t.computeTreeOpts,r=a.rootParentValue,r=a.transform?_xeUtils.default.toArrayTree(e,{key:t.computeKeyField,parentKey:t.computeParentField,mapChildren:t.computeChildrenField,rootParentValue:r,rootValues:a.rootValues}):e?e.slice(0):[];return n.treeFullData=r,t.cacheNodeMap(),t.handleData(!0),t.updateModelChecked(),t.handleCurrentItems(),t.updateCurrentChunk(),t.$nextTick()},updateCurrentChunk:function(){var t=this,e=t.reactData,n=e.currentItems,a=t.internalData.afterTreeList,r=t.computeChildrenField,i=t.computeMapChildrenField,o=t.computeTreeOpts.transform,l=[a];if(n.length)for(var c=0,d=n[c],u=a;d&&u&&u.length;){var d=n[c++],s=u.find(function(e){return d===t.getNodeId(e)});if(!(u=s?s[o?i:r]:[])||!u.length)break;l.push(u)}e.currentCunkList=l},handleCurrentItems:function(){var t=this,e=t.reactData,n=t.internalData,a=e.currentNode,r=n.afterTreeList,i=t.computeSelectVals,o=t.computeChildrenField,l=t.computeMapChildrenField,c=t.computeTreeOpts.transform,d=[],u={},s=a?t.getNodeId(a):(0,_util.enNodeValue)(_xeUtils.default.last(i));s&&(a=_xeUtils.default.findTree(r,function(e){return s===t.getNodeId(e)},{children:c?l:o}))&&a.nodes.forEach(function(e){e=t.getNodeId(e);u[e]=!0,d.push(e)}),e.currentItems=d,n.treeExpandedMaps=u},updateZindex:function(){var e=this.reactData,t=this.computePopupOpts.zIndex;t?e.panelIndex=t:e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(r,i,{placement:l.placement,defaultPlacement:l.defaultPlacement,teleportTo:o,isMinWidth:!1}),t=Object.assign(e.style,{zIndex:a});n.panelStyle=t,n.panelPlacement=e.placement}var t=this,n=t.reactData,a=n.panelIndex,r=t.$refs.refElem,i=t.$refs.refOptionPanel,o=t.computeBtnTransfer,l=t.computePopupOpts;return e(),t.$nextTick().then(e)},showOptionPanel:function(e){var t=this,n=t.reactData,a=t.internalData,r=t.loading,i=t.remote,o=t.filterable,l=a.treeFullData,c=t.computeRemoteOpts;r||t.computeIsDisabled||(clearTimeout(a.hpTimeout),n.initialized||(n.initialized=!0,r=t.computeBtnTransfer,a=t.$refs.refOptionPanel,r&&a&&document.body.appendChild(a)),n.isActivated=!0,n.isAniVisible=!0,o&&i&&c.enabled&&c.autoLoad&&!l.length&&t.handleSearchEvent(),setTimeout(function(){n.visiblePanel=!0,t.handleFocusSearch()},10),t.updateZindex(),t.updatePlacement(),t.dispatchEvent("visible-change",{visible:!0},e||null))},hideOptionPanel:function(e){var t=this.reactData,n=this.internalData;t.visiblePanel=!1,n.hpTimeout=setTimeout(function(){t.isAniVisible=!1},350),this.dispatchEvent("visible-change",{visible:!1},e||null)},setCurrentNode:function(e){return this.reactData.currentNode=e,this.$nextTick()},setAllCheckboxNode:function(e){var n=this,t=n.reactData,a=n.internalData,r={},i=n.computeTreeOpts.transform,o=[],l=[];return e&&_xeUtils.default.eachTree(a.afterTreeList,function(e){var t=n.getNodeId(e);o.push(t),l.push(e),r[t]=!0},{children:i?n.computeMapChildrenField:n.computeChildrenField}),a.indeterminateRowMaps={},a.selectCheckboxMaps=r,t.updateCheckboxFlag++,n.updateCheckboxStatus(),n.$nextTick().then(function(){return{checkNodeKeys:o,checkNodes:l}})},clearSelectedNode:function(){var e=this.reactData,t=this.internalData;return t.indeterminateRowMaps={},t.selectCheckboxMaps={},e.updateCheckboxFlag++,e.selectRadioKey=null,this.updateCheckboxStatus(),this.$nextTick().then(function(){return{checkNodeKeys:[],checkNodes:[]}})},changeEvent:function(e,t,n){var a=this,r=a,i=a.internalData,o=a.$xeForm,l=a.formItemInfo,t=_xeUtils.default.isArray(t)?t.map(_util.deNodeValue):(0,_util.deNodeValue)(t);i.isUpdateMode=!0,a.emitModel(t),t!==r.value&&(a.dispatchEvent("change",{value:t,node:n,option:n},e),o)&&l&&o.triggerItemEvent(e,l.itemConfig.field,t)},clearValueEvent:function(e,t){this.changeEvent(e,t,null),this.dispatchEvent("clear",{value:t},e)},clearEvent:function(e,t){this.clearValueEvent(t,null),this.hideOptionPanel(t)},allCheckedPanelEvent:function(e){var n=this,a=e.$event,e=n.multiple,r=n.checkedClosable;e&&n.setAllCheckboxNode(!0).then(function(e){var t=e.checkNodeKeys;n.changeEvent(a,t,e.checkNodes[0]),n.dispatchEvent("all-change",{value:t},a),r&&n.hideOptionPanel(a)})},clearCheckedPanelEvent:function(e){var t=this,n=e.$event,e=t.multiple,a=t.checkedClosable,e=e?[]:null;t.clearSelectedNode().then(function(){a&&t.hideOptionPanel(n)}),t.changeEvent(n,e,null),t.dispatchEvent("clear",{value:e},n)},closePanelEvent:function(e){e=e.$event;this.hideOptionPanel(e)},handleGlobalMousedownEvent:function(e){var t,n,a=this,r=a.reactData,i=r.visiblePanel;a.computeIsDisabled||(t=a.$refs.refElem,n=a.$refs.refOptionPanel,r.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,n).flag,i&&!r.isActivated&&a.hideOptionPanel(e))},handleGlobalBlurEvent:function(e){var t=this.reactData,n=t.visiblePanel,a=t.isActivated;n&&this.hideOptionPanel(e),a&&(t.isActivated=!1),(n||a)&&(e=this.$refs.refInput)&&e.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},handleGlobalScrollEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},handleFocusSearch:function(){var t=this;t.filterable&&t.$nextTick(function(){var e=t.$refs.refInpSearch;e&&e.focus()})},changeCurrentEvent:function(e,t){var n=this.reactData;e.preventDefault();n.currentNode=t,this.dispatchEvent("current-change",{node:t,checked:!0},e)},changeRadioEvent:function(e,t,n,a){var r=this,i=r.reactData,o=r.internalData,l=(e.preventDefault(),e.stopPropagation(),i.currentItems),o=o.nodeMaps,c=r.computeRadioOpts,d=r.computeChildrenField,u=r.computeMapChildrenField,s=r.computeTreeOpts.transform,p=c.checkMode,c=c.checkMethod,h=r.getNodeId(t),s=t[s?u:d],u=s&&0<s.length,d=(o[h]||{}).level;(c?c({$cascader:r,node:t}):handleVisibleOrCheckMode(p,u,d))&&(i.selectRadioKey=s=h,r.changeEvent(e,s,t),l.includes(h)||(r.changeCurrentEvent(e,t),r.toggleExpandEvent(e,t,n,a)),r.hideOptionPanel(e))},handleAsyncTreeExpandChilds:function(i){var o=this,l=o.reactData,c=o.internalData,n=o.computeTreeOpts.loadMethod,d=o.computeCheckboxOpts.checkStrictly;return new Promise(function(e){var t,a,r;n?(t=c.nodeMaps,a=o.getNodeId(i),r=t[a],c.treeExpandLazyLoadedMaps[a]=!0,Promise.resolve(n({$cascader:o,node:i})).then(function(n){var e=c.treeExpandLazyLoadedMaps;if(r.treeLoaded=!0,e[a]&&(e[a]=!1),n=_xeUtils.default.isArray(n)?n:[])return o.loadChildrenNode(i,n).then(function(e){var t=c.treeExpandedMaps;return e.length&&!t[a]&&(t[a]=!0),l.updateExpandedFlag++,!d&&o.isCheckedByCheckboxNodeId(a)&&o.handleCheckedCheckboxNode(e,!0),o.dispatchEvent("load-success",{node:i,data:n},new Event("load-success")),o.$nextTick()});o.dispatchEvent("load-success",{node:i,data:n},new Event("load-success"))}).catch(function(e){var t=c.treeExpandLazyLoadedMaps;r.treeLoaded=!1,t[a]&&(t[a]=!1),o.dispatchEvent("load-error",{node:i,data:e},new Event("load-error"))}).finally(function(){o.handleTreeToList(),o.handleData()})):e()})},handleBaseTreeExpand:function(e,t){var a=this,n=a.reactData,r=a.internalData,i=r.treeExpandLazyLoadedMaps,o=r.treeExpandedMaps,l=r.nodeMaps,c=a.computeChildrenField,d=a.computeHasChildField,r=a.computeTreeOpts,u=r.lazy,s=r.toggleMethod,p=[],r=(r=s?e.filter(function(e){return s({$cascader:a,expanded:t,node:e})}):e).length?[r[r.length-1]]:[],e=a.getNodeId(r[0]),e=l[e],h=(e&&e.items.forEach(function(e){e=a.getNodeId(e);o[e]&&delete o[e]}),[]);return t?r.forEach(function(e){var t,n=a.getNodeId(e);o[n]||(t=l[n],u&&e[d]&&!t.treeLoaded&&!i[n]?p.push(a.handleAsyncTreeExpandChilds(e)):e[c]&&e[c].length&&(o[n]=!0,h.push(e)))}):r.forEach(function(e){var t=a.getNodeId(e);o[t]&&(delete o[t],h.push(e))}),n.updateExpandedFlag++,a.handleTreeToList(),a.handleData(),Promise.all(p)},toggleExpandEvent:function(e,t,n,a){var r=this,i=r.reactData,o=i.currentItems,l=r.internalData.treeExpandLazyLoadedMaps,c=r.computeTreeOpts.lazy,o=o.slice(0,a),a=r.getNodeId(t);e.stopPropagation(),o.push(a),i.currentItems=o,c&&l[a]||r.handleBaseTreeExpand([t],!0),r.setCurrentNode(t),r.updateCurrentChunk(),r.dispatchEvent("node-expand",{node:t,expanded:!0},e)},updateCheckboxStatus:function(){var a,r,l=this,e=l.reactData,t=l.internalData,c=t.selectCheckboxMaps,d=t.indeterminateRowMaps,i=l.computeChildrenField,o=l.computeMapChildrenField,n=l.computeCheckboxOpts,u=n.checkStrictly,s=n.checkMethod,p=l.computeTreeOpts.transform;u||(a={},r=[],_xeUtils.default.eachTree(t.afterTreeList,function(e){var t=l.getNodeId(e),n=e[p?o:i];n&&n.length&&!a[t]&&(a[t]=1,r.unshift([e,t,n]))},{children:p?o:i}),r.forEach(function(e){var t=e[0],n=e[1],e=e[2],a=0,r=0,i=0,o=e.length,e=(e.forEach(s?function(e){var t=l.getNodeId(e),n=c[t];s({$cascader:l,node:e})?(n?a++:d[t]&&r++,i++):n?a++:d[t]&&r++}:function(e){e=l.getNodeId(e);c[e]?a++:d[e]&&r++,i++}),!1),o=!(e=0<o?0<i?(0<a||0<r)&&i<=a:0<a&&i<=a||!!c[n]:c[n])&&(0<a||0<r);e?(c[n]=t,d[n]&&delete d[n]):(c[n]&&delete c[n],o?d[n]=t:d[n]&&delete d[n])}),e.updateCheckboxFlag++)},changeCheckboxEvent:function(e,t,n,a){var r,i=this,o=i.reactData,l=i.internalData,c=(e.preventDefault(),e.stopPropagation(),o.currentItems),d=l.selectCheckboxMaps,l=l.nodeMaps,u=i.computeChildrenField,s=i.computeMapChildrenField,p=i.computeCheckboxOpts,h=p.checkStrictly,f=p.checkMode,p=p.checkMethod,m=i.computeTreeOpts.transform,v=i.getNodeId(t),g=t[m?s:u],C=g&&0<g.length,l=(l[v]||{}).level;(p?p({$cascader:i,node:t}):handleVisibleOrCheckMode(f,C,l))&&(r=!1,d[v]?delete d[v]:(r=!0,d[v]=t),h||_xeUtils.default.eachTree(g,function(e){e=i.getNodeId(e);r?d[e]||(d[e]=!0):d[e]&&delete d[e]},{children:m?s:u}),o.updateCheckboxFlag++,i.updateCheckboxStatus(),p=_xeUtils.default.keys(d),i.changeEvent(e,p,t),!c.includes(v))&&(i.changeCurrentEvent(e,t),i.toggleExpandEvent(e,t,n,a))},handleNodeClickEvent:function(e,t,n,a){var r=this,i=r.multiple,o=r.showCheckbox,l=r.showRadio,c=r.computeTreeOpts,d=r.computeRadioOpts,u=r.computeCheckboxOpts,s=c.transform,c=c.trigger,s=t[s?r.computeMapChildrenField:r.computeChildrenField],p=!1,h=!1,f=!1;r.changeCurrentEvent(e,t),"icon"!==c&&(f=!0,r.toggleExpandEvent(e,t,n,a)),i?"node"!==u.trigger&&(o||s&&s.length)||(h=!0,r.changeCheckboxEvent(e,t,n,a)):"node"!==d.trigger&&(l||s&&s.length)||(p=!0,r.changeRadioEvent(e,t,n,a)),r.dispatchEvent("node-click",{node:t,triggerCurrent:!0,triggerRadio:p,triggerCheckbox:h,triggerExpand:f},e)},focusEvent:function(e){var t=this.reactData;this.computeIsDisabled||t.visiblePanel||(t.triggerFocusPanel=!0,this.showOptionPanel(e),setTimeout(function(){t.triggerFocusPanel=!1},150)),this.dispatchEvent("focus",{},e)},clickEvent:function(e){var t=this.reactData;e.preventDefault(),t.triggerFocusPanel?t.triggerFocusPanel=!1:t.visiblePanel||this.showOptionPanel(e),this.dispatchEvent("click",{},e)},blurEvent:function(e){this.reactData.isActivated=!1,this.dispatchEvent("blur",{},e)},modelSearchEvent:function(e){this.reactData.searchValue=e,this.triggerSearchEvent(new Event("filter"))},handleSearchEvent:function(){var e=this,t=e.reactData,n=e.value,a=t.searchValue,r=e.computeRemoteOpts,i=r.queryMethod;e.remote&&i&&r.enabled&&(t.searchLoading=!0,Promise.resolve(i({$cascader:e,searchValue:a,value:n})).then(function(){return e.$nextTick()}).catch(function(){return e.$nextTick()}).finally(function(){t.searchLoading=!1}))},togglePanelEvent:function(e){var t=this.reactData,e=e.$event;e.preventDefault(),t.triggerFocusPanel?t.triggerFocusPanel=!1:t.visiblePanel?this.hideOptionPanel(e):this.showOptionPanel(e)},loadChildrenNode:function(t,e){var n,a,l,c,d,u=this,r=u.internalData,s=u.separator,p=r.nodeMaps,r=u.computeTreeOpts,h=u.computeLabelField,i=r.lazy,o=r.transform;return i?(n=u.computeChildrenField,a=u.computeMapChildrenField,l=p[u.getNodeId(t)],c=l?l.level:0,d=l?l.nodes:[],u.createNode(e).then(function(e){return _xeUtils.default.eachTree(e,function(e,t,n,a,r,i){var o=u.getNodeId(e);p[o]={item:e,index:-1,$index:-1,_index:-1,items:n,parent:r||l.item,nodes:d.concat(i),level:c+i.length,treeIndex:-1,lineCount:0,treeLoaded:!1,fullLabel:i.map(function(e){return e[h]}).join(s||" / ")}},{children:n}),t[n]=e,o&&(t[a]=e),u.updateAfterDataIndex(),e})):Promise.resolve([])},renderRadio:function(e,t,n,a,r,i,o){var l,c=this,d=c.showRadio,u=c.computeRadioOpts,s=u.checkMode,p=u.checkMethod,h=u.visibleMode,u=u.visibleMethod,u=u?u({$cascader:c,node:t}):handleVisibleOrCheckMode(h,n,a);return d&&u?e("div",{class:["vxe-tree--radio-option",{"is--checked":r,"is--disabled":l=p?!p({$cascader:c,node:t}):!handleVisibleOrCheckMode(s,n,a)}],on:{click:function(e){l||c.changeRadioEvent(e,t,i,o)}}},[e("span",{class:["vxe-radio--icon",r?(0,_ui.getIcon)().RADIO_CHECKED:l?(0,_ui.getIcon)().RADIO_DISABLED_UNCHECKED:(0,_ui.getIcon)().RADIO_UNCHECKED]})]):(0,_ui.renderEmptyElement)(c)},renderCheckbox:function(e,t,n,a,r,i,o,l){var c,d=this,u=d.showCheckbox,s=d.computeCheckboxOpts,p=s.checkMode,h=s.checkMethod,f=s.visibleMode,s=s.visibleMethod,s=s?s({$cascader:d,node:t}):handleVisibleOrCheckMode(f,n,a);return u&&s?e("div",{class:["vxe-cascader--checkbox-option",{"is--checked":r,"is--indeterminate":i,"is--disabled":c=h?!h({$cascader:d,node:t}):!handleVisibleOrCheckMode(p,n,a)}],on:{click:function(e){c||d.changeCheckboxEvent(e,t,o,l)}}},[e("span",{class:["vxe-checkbox--icon",i?(0,_ui.getIcon)().CHECKBOX_INDETERMINATE:r?(0,_ui.getIcon)().CHECKBOX_CHECKED:c?(0,_ui.getIcon)().CHECKBOX_DISABLED_UNCHECKED:(0,_ui.getIcon)().CHECKBOX_UNCHECKED]})]):(0,_ui.renderEmptyElement)(d)},renderNode:function(e,t,n,a,r,i){var o=this,l=o.reactData,c=o.internalData,d=o.$scopedSlots,u=o.multiple,s=l.currentNode,p=l.updateCheckboxFlag,h=c.nodeMaps,f=o.computeTreeOpts,m=f.lazy,v=f.iconLoaded,g=f.iconOpen,C=f.iconClose,x=t[f.transform?o.computeMapChildrenField:o.computeChildrenField],x=x&&0<x.length,b=d.icon,d=d.title,E=l.updateExpandedFlag&&c.treeExpandedMaps[n],h=h[n]||{},_=t[o.computeLabelField],k=h.level,y=!1,l=(u||(y=n===l.selectRadioKey),!1),D=!1,p=(u&&(l=!(!p||!c.selectCheckboxMaps[n]),D=!(!p||!c.indeterminateRowMaps[n])),!1),I=!1,O=!1,c=(m&&(I=!!c.treeExpandLazyLoadedMaps[n],p=t[o.computeHasChildField],O=!!h.treeLoaded),{node:t});return e("div",{key:"".concat(i,"_").concat(a),class:["vxe-cascader-chunk--node-item",{"is--current":s&&(s===t||o.getNodeId(s)===n),"is-radio--checked":y,"is-checkbox--checked":l,"is-checkbox--indeterminate":D,"is--expand":E}],attrs:{title:_},on:{mousedown:function(e){0===e.button&&e.stopPropagation()},click:function(e){o.handleNodeClickEvent(e,t,r,i)}}},[u?o.renderCheckbox(e,t,x,k,l,D,r,i):o.renderRadio(e,t,x,k,y,r,i),e("div",{class:"vxe-cascader-chunk--node-item-inner"},[e("div",{class:"vxe-cascader-chunk--node-item-title"},d?(0,_ui.getSlotVNs)(d(c)):_)]),f.showIcon&&(!m||O?x:p)?e("div",{class:"vxe-cascader-chunk--node-item-switcher"},[[e("div",{class:"vxe-cascader--node-item-icon",on:{click:function(e){"icon"===f.trigger&&o.toggleExpandEvent(e,t,r,i)}}},b?(0,_ui.getSlotVNs)(b(c)):[e("i",{class:I?v||(0,_ui.getIcon)().CASCADER_NODE_LOADED:E?g||(0,_ui.getIcon)().CASCADER_NODE_OPEN:C||(0,_ui.getIcon)().CASCADER_NODE_CLOSE})])]]):(0,_ui.renderEmptyElement)(o)])},renderVN:function(i){var o=this,e=o,t=o.reactData,n=o.$scopedSlots,a=e.className,r=e.value,l=e.multiple,c=e.loading,d=e.filterable,u=e.showTotalButton,s=e.showCheckedButton,p=e.showClearButton,h=e.showCloseButton,f=t.initialized,m=t.isActivated,v=t.isAniVisible,g=t.visiblePanel,C=t.searchValue,x=t.currentCunkList,b=o.internalData.listVirtualYOpts,E=o.computeSize,_=o.computeIsDisabled,k=o.computeSelectLabel,y=o.computeBtnTransfer,D=o.computePopupWrapperStyle,I=n.header,O=n.footer,F=n.prefix,n=o.computePopupOpts.className;return o.computeFormReadonly?i("div",{ref:"refElem",class:["vxe-cascader--readonly",a]},[i("span",{class:"vxe-cascader-label"},k)]):(r=_xeUtils.default.eqNull(r)?[]:_xeUtils.default.isArray(r)?r:[r],i("div",{ref:"refElem",class:["vxe-cascader",a?_xeUtils.default.isFunction(a)?a({$cascader:o}):a:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(E),E),"is--filterable",d),"is--visible",g),"is--disabled",_),"is--loading",c),"is--active",m)]},[i(_input.default,{ref:"refInput",props:{clearable:e.clearable,placeholder:c?(0,_ui.getI18n)("vxe.select.loadingText"):e.placeholder,editable:!1,disabled:_,type:"text",prefixIcon:e.prefixIcon,suffixIcon:c?(0,_ui.getIcon)().TREE_SELECT_LOADED:g?(0,_ui.getIcon)().TREE_SELECT_OPEN:(0,_ui.getIcon)().TREE_SELECT_CLOSE,value:c?"":k,title:k},on:{clear:o.clearEvent,click:o.clickEvent,focus:o.focusEvent,blur:o.blurEvent,"suffix-click":o.togglePanelEvent},scopedSlots:F?{prefix:function(){return F({})}}:void 0}),i("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-cascader--panel",n?_xeUtils.default.isFunction(n)?n({$cascader:o}):n:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(E),E),"is--transfer",y),"ani--leave",!c&&v),"ani--enter",!c&&g)],attrs:{placement:t.panelPlacement},style:D},f?[i("div",{class:"vxe-cascader--panel-wrapper"},[d?i("div",{class:"vxe-cascader--panel-search"},[i(_input.default,{ref:"refInpSearch",class:"vxe-cascader-search--input",props:{value:C,clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.cascader.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH},on:{"model-value":o.modelSearchEvent}})]):(0,_ui.renderEmptyElement)(o),s&&l||p||I?i("div",{class:"vxe-cascader--panel-header"},I?I({}):[i("div",{class:"vxe-cascader--header-button"},[s&&l||p?i("div",{class:"vxe-cascader--selected-btns"},[s&&l?i(_button.default,{props:{content:(0,_ui.getI18n)("vxe.treeSelect.allChecked"),mode:"text"},on:{click:o.allCheckedPanelEvent}}):(0,_ui.renderEmptyElement)(o),p?i(_button.default,{props:{content:(0,_ui.getI18n)("vxe.treeSelect.clearChecked"),mode:"text"},on:{click:o.clearCheckedPanelEvent}}):(0,_ui.renderEmptyElement)(o)]):(0,_ui.renderEmptyElement)(o)])]):(0,_ui.renderEmptyElement)(o),i("div",{class:"vxe-cascader--panel-body"},[i("div",{ref:"refChunkWrapper",class:"vxe-cascader-chunk--wrapper"},[x.map(function(a,r){return i("div",{key:r,class:"vxe-cascader-chunk--item-wrapper"},[i(_list.default,{props:{data:a,virtualYConfig:b},scopedSlots:{default:function(e){return e.items.map(function(e,t){var n=o.getNodeId(e);return o.renderNode(i,e,n,t,a,r)})}}})])})])]),O||u||h?i("div",{class:"vxe-cascader--panel-footer"},O?O({}):[i("div",{class:"vxe-cascader--footer-button"},[u?i("div",{class:"vxe-cascader--total-btns"},(0,_ui.getI18n)("vxe.treeSelect.total",[r.length])):(0,_ui.renderEmptyElement)(o),h?i("div",{class:"vxe-cascader--oper-btns"},[i(_button.default,{props:{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text"},on:{click:o.closePanelEvent}})]):(0,_ui.renderEmptyElement)(o)])]):(0,_ui.renderEmptyElement)(o)])]:[])]))}},watch:{value:function(){var e=this.internalData;e.isUpdateMode||(this.updateModelChecked(),this.handleCurrentItems(),this.updateCurrentChunk()),e.isUpdateMode=!1},options:function(){this.loadData(this.options||[])}},created:function(){var e=this.reactData;this.internalData=createInternalData(),this.multiple||(e.selectRadioKey=(0,_util.enNodeValue)(this.value)),this.loadData(this.options||[])},mounted:function(){var e=this;_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent),_ui.globalEvents.on(e,"resize",e.handleGlobalResizeEvent),_ui.globalEvents.on(e,"scroll",e.handleGlobalScrollEvent)},beforeDestroy:function(){var e=this,t=e.reactData,n=e.internalData,a=e.$refs.refOptionPanel;a&&a.parentNode&&a.parentNode.removeChild(a),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize"),_ui.globalEvents.off(e,"scroll"),_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(n,createInternalData())},render:function(e){return this.renderVN(e)}});
|
|
@@ -743,22 +743,6 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
743
743
|
}
|
|
744
744
|
}
|
|
745
745
|
},
|
|
746
|
-
handleGlobalMousewheelEvent: function handleGlobalMousewheelEvent(evnt) {
|
|
747
|
-
var $xeColorPicker = this;
|
|
748
|
-
var reactData = $xeColorPicker.reactData;
|
|
749
|
-
var visiblePanel = reactData.visiblePanel;
|
|
750
|
-
var isDisabled = $xeColorPicker.computeIsDisabled;
|
|
751
|
-
if (!isDisabled) {
|
|
752
|
-
if (visiblePanel) {
|
|
753
|
-
var panelElem = $xeColorPicker.$refs.refOptionPanel;
|
|
754
|
-
if ((0, _dom.getEventTargetNode)(evnt, panelElem).flag) {
|
|
755
|
-
$xeColorPicker.updatePlacement();
|
|
756
|
-
} else {
|
|
757
|
-
$xeColorPicker.hideOptionPanel();
|
|
758
|
-
}
|
|
759
|
-
}
|
|
760
|
-
}
|
|
761
|
-
},
|
|
762
746
|
handleGlobalMousedownEvent: function handleGlobalMousedownEvent(evnt) {
|
|
763
747
|
var $xeColorPicker = this;
|
|
764
748
|
var reactData = $xeColorPicker.reactData;
|
|
@@ -799,6 +783,14 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
799
783
|
$xeColorPicker.updatePlacement();
|
|
800
784
|
}
|
|
801
785
|
},
|
|
786
|
+
handleGlobalScrollEvent: function handleGlobalScrollEvent() {
|
|
787
|
+
var $xeColorPicker = this;
|
|
788
|
+
var reactData = $xeColorPicker.reactData;
|
|
789
|
+
var visiblePanel = reactData.visiblePanel;
|
|
790
|
+
if (visiblePanel) {
|
|
791
|
+
$xeColorPicker.updatePlacement();
|
|
792
|
+
}
|
|
793
|
+
},
|
|
802
794
|
//
|
|
803
795
|
// Render
|
|
804
796
|
//
|
|
@@ -1183,10 +1175,10 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1183
1175
|
var reactData = $xeColorPicker.reactData;
|
|
1184
1176
|
reactData.selectColor = "".concat(props.value || '');
|
|
1185
1177
|
$xeColorPicker.updateType();
|
|
1186
|
-
_ui.globalEvents.on($xeColorPicker, 'mousewheel', $xeColorPicker.handleGlobalMousewheelEvent);
|
|
1187
1178
|
_ui.globalEvents.on($xeColorPicker, 'mousedown', $xeColorPicker.handleGlobalMousedownEvent);
|
|
1188
1179
|
_ui.globalEvents.on($xeColorPicker, 'blur', $xeColorPicker.handleGlobalBlurEvent);
|
|
1189
1180
|
_ui.globalEvents.on($xeColorPicker, 'resize', $xeColorPicker.handleGlobalResizeEvent);
|
|
1181
|
+
_ui.globalEvents.on($xeColorPicker, 'scroll', $xeColorPicker.handleGlobalScrollEvent);
|
|
1190
1182
|
},
|
|
1191
1183
|
beforeDestroy: function beforeDestroy() {
|
|
1192
1184
|
var $xeColorPicker = this;
|
|
@@ -1194,10 +1186,10 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1194
1186
|
if (panelElem && panelElem.parentNode) {
|
|
1195
1187
|
panelElem.parentNode.removeChild(panelElem);
|
|
1196
1188
|
}
|
|
1197
|
-
_ui.globalEvents.off($xeColorPicker, 'mousewheel');
|
|
1198
1189
|
_ui.globalEvents.off($xeColorPicker, 'mousedown');
|
|
1199
1190
|
_ui.globalEvents.off($xeColorPicker, 'blur');
|
|
1200
1191
|
_ui.globalEvents.off($xeColorPicker, 'resize');
|
|
1192
|
+
_ui.globalEvents.off($xeColorPicker, 'scroll');
|
|
1201
1193
|
},
|
|
1202
1194
|
render: function render(h) {
|
|
1203
1195
|
return this.renderVN(h);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_util=require("./util"),_button=_interopRequireDefault(require("../../button")),_input=_interopRequireDefault(require("../../input")),_numberInput=_interopRequireDefault(require("../../number-input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperty(e,t,l){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var l=e[Symbol.toPrimitive];if(void 0===l)return("string"===t?String:Number)(e);l=l.call(e,t||"default");if("object"!=_typeof(l))return l;throw new TypeError("@@toPrimitive must return a primitive value.")}var WinEyeDropper="undefined"!=typeof window?window.EyeDropper:null,typeList=[{label:"HEX",value:"hex"},{label:"RGB",value:"rgb"}],_default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeColorPicker",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:String,placeholder:String,clearable:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.clearable}},type:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.type}},size:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.size||(0,_ui.getConfig)().size}},className:[String,Function],popupClassName:[String,Function],colors:{type:Array,default:function(){return _xeUtils.default.clone((0,_ui.getConfig)().colorPicker.colors,!0)||[]}},showAlpha:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showAlpha}},showEyeDropper:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showEyeDropper}},showColorExtractor:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showColorExtractor}},showQuick:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showQuick}},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},clickToCopy:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.clickToCopy}},defaultColor:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.defaultColor}},placement:String,transfer:{type:Boolean,default:null},popupConfig:Object},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeColorPicker:this}},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{initialized:!1,selectTyle:"hex",selectColor:"",showTypePopup:!1,panelColor:"",hexValue:"",rValue:0,gValue:0,bValue:0,aValue:0,panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1},internalData:{hpTimeout:void 0}}},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,l=e.$xeModal,o=e.$xeDrawer,n=e.$xeCard,i=e.$xeForm,e=e.transfer;if(null===e){var r=(0,_ui.getConfig)().colorPicker.transfer;if(_xeUtils.default.isBoolean(r))return r;if(t||l||o||n||i)return!0}return e},computeColorList:function(){var e=this.colors;return e?e.map(function(e){return _xeUtils.default.isString(e)?{label:e,value:e}:{label:_xeUtils.default.eqNull(e.label)?e.value:e.label,value:e.value}}):[]},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().colorPicker.popupConfig,this.popupConfig)},computeIsRgb:function(){return"rgb"===this.reactData.selectTyle},computeSelectTypeItem:function(){var t=this.reactData.selectTyle;return typeList.find(function(e){return e.value===t})}}),methods:{dispatchEvent:function(e,t,l){this.$emit(e,(0,_ui.createEvent)(l,{$colorPicker:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},updateMode:function(){var e=this.reactData,t=this.value;e.selectColor=_xeUtils.default.toValueString(t),this.updateModelColor()},updateType:function(){var e=this.reactData,t=this.type,t="rgb"!==t&&"rgba"!==t?"hex":"rgb";e.selectTyle=t,this.updateMode()},updateModelColor:function(){var e=this,t=e.reactData,l=e.defaultColor,o=t.selectColor,n=t.isAniVisible,i=e.computeIsRgb,r=e.$refs.refHueSliderElem,a=e.$refs.refAlphaSliderElem,o=(0,_util.parseValColor)(o||l);t.hexValue="",t.rValue=0,t.gValue=0,t.bValue=0,t.aValue=1,o&&("hex"===o.type?t.hexValue=o.hex:(t.rValue=o.r,t.gValue=o.g,t.bValue=o.b,t.aValue=o.a),o.value)&&(i?"hex"===o.type&&(l=(0,_util.hexToRgb)(o.hex))&&(t.rValue=l.r,t.gValue=l.g,t.bValue=l.b,t.aValue=l.a):"hex"!==o.type&&(t.hexValue=(0,_util.rgbToHexVal)(o.r,o.g,o.b,o.a))),n&&(i=o?"hex"===o.type?(0,_util.hexToHsv)(o.hex):(0,_util.rgbToHsv)(o):null,l=e.$refs.refColorPanelElem,i&&(l&&(n=l.clientHeight*(1-i.v),o=l.clientWidth*i.s,e.handlePanelColor(o,n)),r)&&e.handleHueColor(_xeUtils.default.ceil((1-i.h/360)*r.clientWidth)-1),a)&&e.handleAlphaColor(a.clientWidth*t.aValue)},updateZindex:function(){var e=this.reactData;e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(i,r,{placement:u.placement||o,defaultPlacement:u.defaultPlacement,teleportTo:a}),t=Object.assign(e.style,{zIndex:n});l.panelStyle=t,l.panelPlacement=e.placement}var t=this,l=t.reactData,o=t.placement,n=l.panelIndex,i=t.$refs.refElem,r=t.$refs.refOptionPanel,a=t.computeBtnTransfer,u=t.computePopupOpts;return e(),t.$nextTick().then(e)},showOptionPanel:function(){var e,t=this,l=t.reactData,o=t.internalData,n=o.hpTimeout;t.computeIsDisabled||(n&&(clearTimeout(n),o.hpTimeout=void 0),n=t.computeBtnTransfer,o=t.computePopupOpts,e=t.$refs.refOptionPanel,l.initialized||(l.initialized=!0,n&&e&&(n=o.appendTo,(0,_dom.getPopupAppendElement)(n).appendChild(e))),l.isActivated=!0,l.isAniVisible=!0,setTimeout(function(){t.updateModelColor(),l.visiblePanel=!0},10),t.updateZindex(),t.updatePlacement())},hideOptionPanel:function(){var e=this.reactData,t=this.internalData;e.visiblePanel=!1,t.hpTimeout=setTimeout(function(){e.isAniVisible=!1},350)},changeEvent:function(e,t){var l=this,o=l,n=l.reactData,i=l.$xeForm,r=l.formItemInfo;(n.selectColor=t)!==o.value&&(l.emitModel(t),l.dispatchEvent("change",{value:t},e),i)&&r&&i.triggerItemEvent(e,r.itemConfig.field,t)},clearValueEvent:function(e,t){this.changeEvent(e,t),this.dispatchEvent("clear",{value:t},e)},focusEvent:function(){var e=this.reactData;this.computeIsDisabled||e.visiblePanel||this.showOptionPanel()},blurEvent:function(){this.reactData.isActivated=!1},clearEvent:function(e){this.clearValueEvent(e,null),this.hideOptionPanel()},confirmEvent:function(e){var t=this.reactData,l=t.selectTyle;this.changeEvent(e,"hex"===l?t.hexValue:t.selectColor),this.hideOptionPanel()},togglePanelEvent:function(e){var t=this.reactData;e.preventDefault(),t.visiblePanel?this.hideOptionPanel():this.showOptionPanel()},clickEvent:function(e){this.togglePanelEvent(e),this.dispatchEvent("click",{},e)},handlePanelClickEvent:function(){this.reactData.showTypePopup=!1},toggleTypeVisibleEvent:function(e){var t=this.reactData;e.stopPropagation(),t.showTypePopup=!t.showTypePopup},handleChangeType:function(e){var t=this.reactData;e!==t.selectTyle&&(t.selectTyle=e,this.updateModelColor()),t.showTypePopup=!1},handleHueColor:function(e){var t=this.reactData,l=this.$refs.refHueSliderElem,o=this.$refs.refHueSliderBtnElem;if(l&&o){e<0&&(e=0);var l=_xeUtils.default.toInteger(l.clientWidth),n=255,l=_xeUtils.default.ceil(1530/l*e),i=l%n,r=0,a=0,u=0;switch(Math.ceil(l/n)){case 1:r=n,u=i;break;case 2:r=n-i,u=n;break;case 3:a=i,u=n;break;case 4:u=(a=n)-i;break;case 5:r=i,a=n;break;case 6:a=(r=n)-i}t.panelColor=(0,_util.toValRgb)(r,a,u),o.style.left=(0,_dom.toCssUnit)(e)}},handleHueBarEvent:function(e){var t=this.$refs.refHueSliderElem,l=this.$refs.refHueSliderBtnElem;t&&l&&(l=t.getBoundingClientRect(),t=_xeUtils.default.toInteger(t.clientWidth),t=_xeUtils.default.ceil(Math.min(t-1,Math.max(1,e.clientX-l.x))),this.handleHueColor(t))},handleHueSliderMousedownEvent:function(e){var t=this;e.preventDefault(),document.onmousemove=function(e){e.preventDefault(),t.handleHueBarEvent(e)},document.onmouseup=function(e){document.onmousemove=null,document.onmouseup=null,t.handleHueBarEvent(e)}},handleAlphaColor:function(e){var t=this.reactData,l=t.selectColor,o=this.$refs.refAlphaSliderElem,n=this.$refs.refAlphaSliderBtnElem;o&&n&&(o=o.getBoundingClientRect().width,o=_xeUtils.default.ceil(100/o*(e=o<(e=e<0?0:e)?o:e)/100,2),t.aValue=o,n.style.left=(0,_dom.toCssUnit)(e),t.selectColor=l?(0,_util.updateColorAlpha)(l,o):"")},handleAlphaBarEvent:function(e){var t=this.$refs.refAlphaSliderElem,l=this.$refs.refAlphaSliderBtnElem;t&&l&&(t=(l=t.getBoundingClientRect()).width,t=Math.min(t,Math.max(0,e.clientX-l.x)),this.handleAlphaColor(t),this.updateModelColor())},handleAlphaSliderMousedownEvent:function(e){var t=this;e.preventDefault(),document.onmousemove=function(e){e.preventDefault(),t.handleAlphaBarEvent(e)},document.onmouseup=function(e){document.onmousemove=null,document.onmouseup=null,t.handleAlphaBarEvent(e)}},handleInputRgbEvent:function(){var e=this.reactData,t=e.rValue;e.selectColor=(0,_util.toValRgb)(t,e.gValue,e.bValue,e.aValue),this.updateModelColor()},handleInputAlphaEvent:function(){var e=this.reactData.aValue,t=this.$refs.refAlphaSliderElem,l=this.$refs.refAlphaSliderBtnElem;t&&l&&(l=t.getBoundingClientRect().width,this.handleAlphaColor(l*e))},handleQuickEvent:function(e,t){var l=this.reactData,t=t.value;l.selectColor=t,this.updateModelColor()},handlePanelColor:function(e,t){var l=this.$refs.refColorActiveElem;l&&(l.style.top=(0,_dom.toCssUnit)(t),l.style.left=(0,_dom.toCssUnit)(e))},handleEyeDropperEvent:function(){var t=this,l=t.reactData;if(WinEyeDropper)try{(new WinEyeDropper).open().then(function(e){e&&e.sRGBHex&&(l.selectColor=e.sRGBHex,t.updateModelColor())}).catch(function(){})}catch(e){}},handleSelectColorByXY:function(e,t){var l,o=this,n=o.reactData,i=o.showAlpha,r=n.panelColor,a=n.aValue,u=o.$refs.refColorPanelElem,c=o.$refs.refColorActiveElem;u&&c&&(c=u.clientWidth,l=u.clientHeight,u=u.getBoundingClientRect(),t=Math.min(l,Math.max(0,t-u.y)),e=Math.min(c,Math.max(0,e-u.x)),(u=(0,_util.parseValColor)(r))&&(r="hex"===u.type?(0,_util.hexToHsv)(u.hex):(0,_util.rgbToHsv)(u))&&(u=(0,_util.hsvToRgb)(r.h,e/c,1-t/l),n.selectColor=(0,_util.toValRgb)(u.r,u.g,u.b,i?a:null),o.handlePanelColor(e,t)),o.updateModelColor())},handleSelectColorMousedownEvent:function(e){var t=this;e.stopPropagation(),e.preventDefault(),t.handleSelectColorByXY(e.clientX,e.clientY),document.onmousemove=function(e){t.handleSelectColorByXY(e.clientX,e.clientY)},document.onmouseup=function(){document.onmousemove=null,document.onmouseup=null}},handleCopyColorEvent:function(){var e=this.reactData.selectColor;e&&_ui.VxeUI.clipboard.copy(e)&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.colorPicker.copySuccess",[e]),status:"success"})},handleGlobalMousewheelEvent:function(e){var t=this,l=t.reactData.visiblePanel;t.computeIsDisabled||l&&(l=t.$refs.refOptionPanel,(0,_dom.getEventTargetNode)(e,l).flag?t.updatePlacement():t.hideOptionPanel())},handleGlobalMousedownEvent:function(e){var t,l,o=this,n=o.reactData,i=n.visiblePanel;o.computeIsDisabled||(t=o.$refs.refElem,l=o.$refs.refOptionPanel,n.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,l).flag,i&&!n.isActivated&&o.hideOptionPanel())},handleGlobalBlurEvent:function(){var e=this.reactData,t=e.visiblePanel,l=e.isActivated;t&&this.hideOptionPanel(),l&&(e.isActivated=!1),(t||l)&&(e=this.$refs.refInputTarget)&&e.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},renderColorWrapper:function(e){var t=this.reactData,l=this.showColorExtractor,t=t.panelColor;return l?e("div",{ref:"refColorPanelElem",class:"vxe-color-picker--color-wrapper",on:{mousedown:this.handleSelectColorMousedownEvent}},[e("div",{class:"vxe-color-picker--color-bg",style:{backgroundColor:t}}),e("div",{class:"vxe-color-picker--white-bg"}),e("div",{class:"vxe-color-picker--black-bg"}),e("div",{ref:"refColorActiveElem",class:"vxe-color-picker--color-active"})]):(0,_ui.renderEmptyElement)(this)},renderColorBar:function(e){var l=this,t=l.reactData,o=l.showAlpha,n=l.clickToCopy,i=t.selectTyle,r=t.showTypePopup,a=t.hexValue,u=t.rValue,c=t.gValue,s=t.bValue,p=t.aValue,d=t.selectColor,f=t.panelColor,h=l.computeIsRgb,v=l.computeSelectTypeItem;return e("div",{class:"vxe-color-picker--bar-wrapper"},[e("div",{class:"vxe-color-picker--slider-wrapper"},[l.showEyeDropper&&WinEyeDropper?e("div",{class:"vxe-color-picker--color-dropper"},[e("span",{class:"vxe-color-picker--color-dropper-btn",on:{click:l.handleEyeDropperEvent}},[e("i",{class:(0,_ui.getIcon)().COLOR_PICKER_EYE_DROPPER})])]):(0,_ui.renderEmptyElement)(l),e("div",{class:"vxe-color-picker--slider-preview"},[e("div",{class:"vxe-color-picker--preview-btn"},[e("div",{class:"vxe-color-picker--preview-color",style:{backgroundColor:d}},n?[e("span",{class:"vxe-color-picker--preview-copy-btn",on:{click:l.handleCopyColorEvent}},[e("i",{class:(0,_ui.getIcon)().COLOR_PICKER_COLOR_COPY})])]:[])])]),e("div",{class:"vxe-color-picker--slider-handle"},[e("div",{ref:"refHueSliderElem",class:"vxe-color-picker--bar-hue-slider",on:{click:l.handleHueBarEvent}},[e("div",{ref:"refHueSliderBtnElem",class:"vxe-color-picker--bar-hue-btn",on:{mousedown:l.handleHueSliderMousedownEvent}})]),o?e("div",{ref:"refAlphaSliderElem",class:"vxe-color-picker--bar-alpha-slider",on:{click:l.handleAlphaBarEvent}},[e("div",{class:"vxe-color-picker--bar-alpha-bg",style:{background:"linear-gradient(to right, rgba(0, 0, 0, 0), ".concat(f,")")}}),e("div",{ref:"refAlphaSliderBtnElem",class:"vxe-color-picker--bar-alpha-btn",on:{mousedown:l.handleAlphaSliderMousedownEvent}})]):(0,_ui.renderEmptyElement)(l)])]),e("div",{class:"vxe-color-picker--custom-wrapper"},[e("div",{class:"vxe-color-picker--type-switch"},[e("div",{class:"vxe-color-picker--type-label",on:{click:l.toggleTypeVisibleEvent}},[e("span","".concat(v?v.label:i)),e("span",{class:"vxe-color-picker--type-icon"},[e("i",{class:r?(0,_ui.getIcon)().COLOR_PICKER_TPTY_OPEN:(0,_ui.getIcon)().COLOR_PICKER_TPTY_CLOSE})])]),e("div",{class:["vxe-color-picker--type-popup",{"is--visible":r}]},typeList.map(function(t){return e("div",{class:"vxe-color-picker--type-item",on:{click:function(e){e.stopPropagation(),l.handleChangeType(t.value)}}},t.label)}))]),e("div",{class:"vxe-color-picker--".concat(i,"-wrapper")},h?[e("div",{class:"vxe-color-picker--input-wrapper"},[e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:u,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.rValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:c,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.gValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:s,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.bValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"number",size:"mini",align:"center",min:0,max:1,step:.01,maxLength:4,placeholder:"",value:p,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.aValue=e},change:l.handleInputAlphaEvent}})]),e("div",{class:"vxe-color-picker--input-title"},[e("span","R"),e("span","G"),e("span","B"),e("span","A")])]:[e("div",{class:"vxe-color-picker--input-wrapper"},[e(_input.default,{props:{type:"text",size:"mini",align:"center",maxLength:9,placeholder:"",value:a},on:{modelValue:function(e){t.hexValue=e},change:function(){var e=(0,_util.parseValColor)(t.hexValue);e&&e.value&&(t.selectColor=e.value,l.updateModelColor())}}})]),e("div",{class:"vxe-color-picker--input-title"},(0,_ui.getI18n)("vxe.colorPicker.hex"))])])])},renderQuickWrapper:function(l){var o=this,e=o.showQuick,t=o.computeColorList;return e&&t.length?l("div",{class:"vxe-color-picker--quick-wrapper"},t.map(function(t,e){return l("div",{key:e,class:"vxe-color-picker--quick-item",attrs:{title:t.label||""},style:{backgroundColor:t.value},on:{click:function(e){o.handleQuickEvent(e,t)}}})})):(0,_ui.renderEmptyElement)(o)},renderVN:function(e){var t=this,l=t.reactData,o=t.className,n=t.popupClassName,i=t.clearable,r=t.value,a=l.initialized,u=l.isActivated,c=l.isAniVisible,s=l.visiblePanel,p=t.computeSize,d=t.computeIsDisabled,f=t.computeBtnTransfer;return t.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-color-picker--readonly",o,_defineProperty({},"size--".concat(p),p)]},[e("div",{class:["vxe-color-picker--readonly-color",{"is--empty":!r}],style:r?{backgroundColor:r}:void 0})]):e("div",{ref:"refElem",class:["vxe-color-picker",o?_xeUtils.default.isFunction(o)?o({$colorPicker:t}):o:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"is--selected",!!r),"is--visible",s),"is--disabled",d),"is--active",u)]},[e("input",{ref:"refInputTarget",class:"vxe-color-picker--input",on:{focus:t.focusEvent,blur:t.blurEvent}}),e("div",{class:"vxe-color-picker--inner",on:{click:t.clickEvent}},[e("div",{class:"vxe-color-picker--inner-color",style:{backgroundColor:r}})]),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-color-picker--panel",n?_xeUtils.default.isFunction(n)?n({$colorPicker:t}):n:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"is--transfer",f),"ani--leave",c),"ani--enter",s)],attrs:{placement:l.panelPlacement},style:l.panelStyle},[a&&(s||c)?e("div",{class:"vxe-color-picker--panel-wrapper",on:{click:t.handlePanelClickEvent}},[t.renderColorWrapper(e),t.renderColorBar(e),t.renderQuickWrapper(e),e("div",{class:"vxe-color-picker--footer-wrapper"},[i?e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.colorPicker.clear"),size:"mini"},on:{click:t.clearEvent}}):(0,_ui.renderEmptyElement)(t),e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.colorPicker.confirm"),size:"mini",status:"primary"},on:{click:t.confirmEvent}})])]):(0,_ui.renderEmptyElement)(t)])])}},watch:{value:function(){this.updateMode()},type:function(){this.updateType()}},created:function(){var e=this;e.reactData.selectColor="".concat(e.value||""),e.updateType(),_ui.globalEvents.on(e,"mousewheel",e.handleGlobalMousewheelEvent),_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent),_ui.globalEvents.on(e,"resize",e.handleGlobalResizeEvent)},beforeDestroy:function(){var e=this,t=e.$refs.refOptionPanel;t&&t.parentNode&&t.parentNode.removeChild(t),_ui.globalEvents.off(e,"mousewheel"),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize")},render:function(e){return this.renderVN(e)}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_util=require("./util"),_button=_interopRequireDefault(require("../../button")),_input=_interopRequireDefault(require("../../input")),_numberInput=_interopRequireDefault(require("../../number-input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperty(e,t,l){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var l=e[Symbol.toPrimitive];if(void 0===l)return("string"===t?String:Number)(e);l=l.call(e,t||"default");if("object"!=_typeof(l))return l;throw new TypeError("@@toPrimitive must return a primitive value.")}var WinEyeDropper="undefined"!=typeof window?window.EyeDropper:null,typeList=[{label:"HEX",value:"hex"},{label:"RGB",value:"rgb"}],_default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeColorPicker",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:String,placeholder:String,clearable:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.clearable}},type:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.type}},size:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.size||(0,_ui.getConfig)().size}},className:[String,Function],popupClassName:[String,Function],colors:{type:Array,default:function(){return _xeUtils.default.clone((0,_ui.getConfig)().colorPicker.colors,!0)||[]}},showAlpha:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showAlpha}},showEyeDropper:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showEyeDropper}},showColorExtractor:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showColorExtractor}},showQuick:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showQuick}},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},clickToCopy:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.clickToCopy}},defaultColor:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.defaultColor}},placement:String,transfer:{type:Boolean,default:null},popupConfig:Object},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeColorPicker:this}},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{initialized:!1,selectTyle:"hex",selectColor:"",showTypePopup:!1,panelColor:"",hexValue:"",rValue:0,gValue:0,bValue:0,aValue:0,panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1},internalData:{hpTimeout:void 0}}},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,l=e.$xeModal,o=e.$xeDrawer,n=e.$xeCard,r=e.$xeForm,e=e.transfer;if(null===e){var i=(0,_ui.getConfig)().colorPicker.transfer;if(_xeUtils.default.isBoolean(i))return i;if(t||l||o||n||r)return!0}return e},computeColorList:function(){var e=this.colors;return e?e.map(function(e){return _xeUtils.default.isString(e)?{label:e,value:e}:{label:_xeUtils.default.eqNull(e.label)?e.value:e.label,value:e.value}}):[]},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().colorPicker.popupConfig,this.popupConfig)},computeIsRgb:function(){return"rgb"===this.reactData.selectTyle},computeSelectTypeItem:function(){var t=this.reactData.selectTyle;return typeList.find(function(e){return e.value===t})}}),methods:{dispatchEvent:function(e,t,l){this.$emit(e,(0,_ui.createEvent)(l,{$colorPicker:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},updateMode:function(){var e=this.reactData,t=this.value;e.selectColor=_xeUtils.default.toValueString(t),this.updateModelColor()},updateType:function(){var e=this.reactData,t=this.type,t="rgb"!==t&&"rgba"!==t?"hex":"rgb";e.selectTyle=t,this.updateMode()},updateModelColor:function(){var e=this,t=e.reactData,l=e.defaultColor,o=t.selectColor,n=t.isAniVisible,r=e.computeIsRgb,i=e.$refs.refHueSliderElem,a=e.$refs.refAlphaSliderElem,o=(0,_util.parseValColor)(o||l);t.hexValue="",t.rValue=0,t.gValue=0,t.bValue=0,t.aValue=1,o&&("hex"===o.type?t.hexValue=o.hex:(t.rValue=o.r,t.gValue=o.g,t.bValue=o.b,t.aValue=o.a),o.value)&&(r?"hex"===o.type&&(l=(0,_util.hexToRgb)(o.hex))&&(t.rValue=l.r,t.gValue=l.g,t.bValue=l.b,t.aValue=l.a):"hex"!==o.type&&(t.hexValue=(0,_util.rgbToHexVal)(o.r,o.g,o.b,o.a))),n&&(r=o?"hex"===o.type?(0,_util.hexToHsv)(o.hex):(0,_util.rgbToHsv)(o):null,l=e.$refs.refColorPanelElem,r&&(l&&(n=l.clientHeight*(1-r.v),o=l.clientWidth*r.s,e.handlePanelColor(o,n)),i)&&e.handleHueColor(_xeUtils.default.ceil((1-r.h/360)*i.clientWidth)-1),a)&&e.handleAlphaColor(a.clientWidth*t.aValue)},updateZindex:function(){var e=this.reactData;e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(r,i,{placement:c.placement||o,defaultPlacement:c.defaultPlacement,teleportTo:a}),t=Object.assign(e.style,{zIndex:n});l.panelStyle=t,l.panelPlacement=e.placement}var t=this,l=t.reactData,o=t.placement,n=l.panelIndex,r=t.$refs.refElem,i=t.$refs.refOptionPanel,a=t.computeBtnTransfer,c=t.computePopupOpts;return e(),t.$nextTick().then(e)},showOptionPanel:function(){var e,t=this,l=t.reactData,o=t.internalData,n=o.hpTimeout;t.computeIsDisabled||(n&&(clearTimeout(n),o.hpTimeout=void 0),n=t.computeBtnTransfer,o=t.computePopupOpts,e=t.$refs.refOptionPanel,l.initialized||(l.initialized=!0,n&&e&&(n=o.appendTo,(0,_dom.getPopupAppendElement)(n).appendChild(e))),l.isActivated=!0,l.isAniVisible=!0,setTimeout(function(){t.updateModelColor(),l.visiblePanel=!0},10),t.updateZindex(),t.updatePlacement())},hideOptionPanel:function(){var e=this.reactData,t=this.internalData;e.visiblePanel=!1,t.hpTimeout=setTimeout(function(){e.isAniVisible=!1},350)},changeEvent:function(e,t){var l=this,o=l,n=l.reactData,r=l.$xeForm,i=l.formItemInfo;(n.selectColor=t)!==o.value&&(l.emitModel(t),l.dispatchEvent("change",{value:t},e),r)&&i&&r.triggerItemEvent(e,i.itemConfig.field,t)},clearValueEvent:function(e,t){this.changeEvent(e,t),this.dispatchEvent("clear",{value:t},e)},focusEvent:function(){var e=this.reactData;this.computeIsDisabled||e.visiblePanel||this.showOptionPanel()},blurEvent:function(){this.reactData.isActivated=!1},clearEvent:function(e){this.clearValueEvent(e,null),this.hideOptionPanel()},confirmEvent:function(e){var t=this.reactData,l=t.selectTyle;this.changeEvent(e,"hex"===l?t.hexValue:t.selectColor),this.hideOptionPanel()},togglePanelEvent:function(e){var t=this.reactData;e.preventDefault(),t.visiblePanel?this.hideOptionPanel():this.showOptionPanel()},clickEvent:function(e){this.togglePanelEvent(e),this.dispatchEvent("click",{},e)},handlePanelClickEvent:function(){this.reactData.showTypePopup=!1},toggleTypeVisibleEvent:function(e){var t=this.reactData;e.stopPropagation(),t.showTypePopup=!t.showTypePopup},handleChangeType:function(e){var t=this.reactData;e!==t.selectTyle&&(t.selectTyle=e,this.updateModelColor()),t.showTypePopup=!1},handleHueColor:function(e){var t=this.reactData,l=this.$refs.refHueSliderElem,o=this.$refs.refHueSliderBtnElem;if(l&&o){e<0&&(e=0);var l=_xeUtils.default.toInteger(l.clientWidth),n=255,l=_xeUtils.default.ceil(1530/l*e),r=l%n,i=0,a=0,c=0;switch(Math.ceil(l/n)){case 1:i=n,c=r;break;case 2:i=n-r,c=n;break;case 3:a=r,c=n;break;case 4:c=(a=n)-r;break;case 5:i=r,a=n;break;case 6:a=(i=n)-r}t.panelColor=(0,_util.toValRgb)(i,a,c),o.style.left=(0,_dom.toCssUnit)(e)}},handleHueBarEvent:function(e){var t=this.$refs.refHueSliderElem,l=this.$refs.refHueSliderBtnElem;t&&l&&(l=t.getBoundingClientRect(),t=_xeUtils.default.toInteger(t.clientWidth),t=_xeUtils.default.ceil(Math.min(t-1,Math.max(1,e.clientX-l.x))),this.handleHueColor(t))},handleHueSliderMousedownEvent:function(e){var t=this;e.preventDefault(),document.onmousemove=function(e){e.preventDefault(),t.handleHueBarEvent(e)},document.onmouseup=function(e){document.onmousemove=null,document.onmouseup=null,t.handleHueBarEvent(e)}},handleAlphaColor:function(e){var t=this.reactData,l=t.selectColor,o=this.$refs.refAlphaSliderElem,n=this.$refs.refAlphaSliderBtnElem;o&&n&&(o=o.getBoundingClientRect().width,o=_xeUtils.default.ceil(100/o*(e=o<(e=e<0?0:e)?o:e)/100,2),t.aValue=o,n.style.left=(0,_dom.toCssUnit)(e),t.selectColor=l?(0,_util.updateColorAlpha)(l,o):"")},handleAlphaBarEvent:function(e){var t=this.$refs.refAlphaSliderElem,l=this.$refs.refAlphaSliderBtnElem;t&&l&&(t=(l=t.getBoundingClientRect()).width,t=Math.min(t,Math.max(0,e.clientX-l.x)),this.handleAlphaColor(t),this.updateModelColor())},handleAlphaSliderMousedownEvent:function(e){var t=this;e.preventDefault(),document.onmousemove=function(e){e.preventDefault(),t.handleAlphaBarEvent(e)},document.onmouseup=function(e){document.onmousemove=null,document.onmouseup=null,t.handleAlphaBarEvent(e)}},handleInputRgbEvent:function(){var e=this.reactData,t=e.rValue;e.selectColor=(0,_util.toValRgb)(t,e.gValue,e.bValue,e.aValue),this.updateModelColor()},handleInputAlphaEvent:function(){var e=this.reactData.aValue,t=this.$refs.refAlphaSliderElem,l=this.$refs.refAlphaSliderBtnElem;t&&l&&(l=t.getBoundingClientRect().width,this.handleAlphaColor(l*e))},handleQuickEvent:function(e,t){var l=this.reactData,t=t.value;l.selectColor=t,this.updateModelColor()},handlePanelColor:function(e,t){var l=this.$refs.refColorActiveElem;l&&(l.style.top=(0,_dom.toCssUnit)(t),l.style.left=(0,_dom.toCssUnit)(e))},handleEyeDropperEvent:function(){var t=this,l=t.reactData;if(WinEyeDropper)try{(new WinEyeDropper).open().then(function(e){e&&e.sRGBHex&&(l.selectColor=e.sRGBHex,t.updateModelColor())}).catch(function(){})}catch(e){}},handleSelectColorByXY:function(e,t){var l,o=this,n=o.reactData,r=o.showAlpha,i=n.panelColor,a=n.aValue,c=o.$refs.refColorPanelElem,u=o.$refs.refColorActiveElem;c&&u&&(u=c.clientWidth,l=c.clientHeight,c=c.getBoundingClientRect(),t=Math.min(l,Math.max(0,t-c.y)),e=Math.min(u,Math.max(0,e-c.x)),(c=(0,_util.parseValColor)(i))&&(i="hex"===c.type?(0,_util.hexToHsv)(c.hex):(0,_util.rgbToHsv)(c))&&(c=(0,_util.hsvToRgb)(i.h,e/u,1-t/l),n.selectColor=(0,_util.toValRgb)(c.r,c.g,c.b,r?a:null),o.handlePanelColor(e,t)),o.updateModelColor())},handleSelectColorMousedownEvent:function(e){var t=this;e.stopPropagation(),e.preventDefault(),t.handleSelectColorByXY(e.clientX,e.clientY),document.onmousemove=function(e){t.handleSelectColorByXY(e.clientX,e.clientY)},document.onmouseup=function(){document.onmousemove=null,document.onmouseup=null}},handleCopyColorEvent:function(){var e=this.reactData.selectColor;e&&_ui.VxeUI.clipboard.copy(e)&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.colorPicker.copySuccess",[e]),status:"success"})},handleGlobalMousedownEvent:function(e){var t,l,o=this,n=o.reactData,r=n.visiblePanel;o.computeIsDisabled||(t=o.$refs.refElem,l=o.$refs.refOptionPanel,n.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,l).flag,r&&!n.isActivated&&o.hideOptionPanel())},handleGlobalBlurEvent:function(){var e=this.reactData,t=e.visiblePanel,l=e.isActivated;t&&this.hideOptionPanel(),l&&(e.isActivated=!1),(t||l)&&(e=this.$refs.refInputTarget)&&e.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},handleGlobalScrollEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},renderColorWrapper:function(e){var t=this.reactData,l=this.showColorExtractor,t=t.panelColor;return l?e("div",{ref:"refColorPanelElem",class:"vxe-color-picker--color-wrapper",on:{mousedown:this.handleSelectColorMousedownEvent}},[e("div",{class:"vxe-color-picker--color-bg",style:{backgroundColor:t}}),e("div",{class:"vxe-color-picker--white-bg"}),e("div",{class:"vxe-color-picker--black-bg"}),e("div",{ref:"refColorActiveElem",class:"vxe-color-picker--color-active"})]):(0,_ui.renderEmptyElement)(this)},renderColorBar:function(e){var l=this,t=l.reactData,o=l.showAlpha,n=l.clickToCopy,r=t.selectTyle,i=t.showTypePopup,a=t.hexValue,c=t.rValue,u=t.gValue,s=t.bValue,p=t.aValue,d=t.selectColor,f=t.panelColor,h=l.computeIsRgb,v=l.computeSelectTypeItem;return e("div",{class:"vxe-color-picker--bar-wrapper"},[e("div",{class:"vxe-color-picker--slider-wrapper"},[l.showEyeDropper&&WinEyeDropper?e("div",{class:"vxe-color-picker--color-dropper"},[e("span",{class:"vxe-color-picker--color-dropper-btn",on:{click:l.handleEyeDropperEvent}},[e("i",{class:(0,_ui.getIcon)().COLOR_PICKER_EYE_DROPPER})])]):(0,_ui.renderEmptyElement)(l),e("div",{class:"vxe-color-picker--slider-preview"},[e("div",{class:"vxe-color-picker--preview-btn"},[e("div",{class:"vxe-color-picker--preview-color",style:{backgroundColor:d}},n?[e("span",{class:"vxe-color-picker--preview-copy-btn",on:{click:l.handleCopyColorEvent}},[e("i",{class:(0,_ui.getIcon)().COLOR_PICKER_COLOR_COPY})])]:[])])]),e("div",{class:"vxe-color-picker--slider-handle"},[e("div",{ref:"refHueSliderElem",class:"vxe-color-picker--bar-hue-slider",on:{click:l.handleHueBarEvent}},[e("div",{ref:"refHueSliderBtnElem",class:"vxe-color-picker--bar-hue-btn",on:{mousedown:l.handleHueSliderMousedownEvent}})]),o?e("div",{ref:"refAlphaSliderElem",class:"vxe-color-picker--bar-alpha-slider",on:{click:l.handleAlphaBarEvent}},[e("div",{class:"vxe-color-picker--bar-alpha-bg",style:{background:"linear-gradient(to right, rgba(0, 0, 0, 0), ".concat(f,")")}}),e("div",{ref:"refAlphaSliderBtnElem",class:"vxe-color-picker--bar-alpha-btn",on:{mousedown:l.handleAlphaSliderMousedownEvent}})]):(0,_ui.renderEmptyElement)(l)])]),e("div",{class:"vxe-color-picker--custom-wrapper"},[e("div",{class:"vxe-color-picker--type-switch"},[e("div",{class:"vxe-color-picker--type-label",on:{click:l.toggleTypeVisibleEvent}},[e("span","".concat(v?v.label:r)),e("span",{class:"vxe-color-picker--type-icon"},[e("i",{class:i?(0,_ui.getIcon)().COLOR_PICKER_TPTY_OPEN:(0,_ui.getIcon)().COLOR_PICKER_TPTY_CLOSE})])]),e("div",{class:["vxe-color-picker--type-popup",{"is--visible":i}]},typeList.map(function(t){return e("div",{class:"vxe-color-picker--type-item",on:{click:function(e){e.stopPropagation(),l.handleChangeType(t.value)}}},t.label)}))]),e("div",{class:"vxe-color-picker--".concat(r,"-wrapper")},h?[e("div",{class:"vxe-color-picker--input-wrapper"},[e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:c,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.rValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:u,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.gValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:s,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.bValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"number",size:"mini",align:"center",min:0,max:1,step:.01,maxLength:4,placeholder:"",value:p,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.aValue=e},change:l.handleInputAlphaEvent}})]),e("div",{class:"vxe-color-picker--input-title"},[e("span","R"),e("span","G"),e("span","B"),e("span","A")])]:[e("div",{class:"vxe-color-picker--input-wrapper"},[e(_input.default,{props:{type:"text",size:"mini",align:"center",maxLength:9,placeholder:"",value:a},on:{modelValue:function(e){t.hexValue=e},change:function(){var e=(0,_util.parseValColor)(t.hexValue);e&&e.value&&(t.selectColor=e.value,l.updateModelColor())}}})]),e("div",{class:"vxe-color-picker--input-title"},(0,_ui.getI18n)("vxe.colorPicker.hex"))])])])},renderQuickWrapper:function(l){var o=this,e=o.showQuick,t=o.computeColorList;return e&&t.length?l("div",{class:"vxe-color-picker--quick-wrapper"},t.map(function(t,e){return l("div",{key:e,class:"vxe-color-picker--quick-item",attrs:{title:t.label||""},style:{backgroundColor:t.value},on:{click:function(e){o.handleQuickEvent(e,t)}}})})):(0,_ui.renderEmptyElement)(o)},renderVN:function(e){var t=this,l=t.reactData,o=t.className,n=t.popupClassName,r=t.clearable,i=t.value,a=l.initialized,c=l.isActivated,u=l.isAniVisible,s=l.visiblePanel,p=t.computeSize,d=t.computeIsDisabled,f=t.computeBtnTransfer;return t.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-color-picker--readonly",o,_defineProperty({},"size--".concat(p),p)]},[e("div",{class:["vxe-color-picker--readonly-color",{"is--empty":!i}],style:i?{backgroundColor:i}:void 0})]):e("div",{ref:"refElem",class:["vxe-color-picker",o?_xeUtils.default.isFunction(o)?o({$colorPicker:t}):o:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"is--selected",!!i),"is--visible",s),"is--disabled",d),"is--active",c)]},[e("input",{ref:"refInputTarget",class:"vxe-color-picker--input",on:{focus:t.focusEvent,blur:t.blurEvent}}),e("div",{class:"vxe-color-picker--inner",on:{click:t.clickEvent}},[e("div",{class:"vxe-color-picker--inner-color",style:{backgroundColor:i}})]),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-color-picker--panel",n?_xeUtils.default.isFunction(n)?n({$colorPicker:t}):n:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"is--transfer",f),"ani--leave",u),"ani--enter",s)],attrs:{placement:l.panelPlacement},style:l.panelStyle},[a&&(s||u)?e("div",{class:"vxe-color-picker--panel-wrapper",on:{click:t.handlePanelClickEvent}},[t.renderColorWrapper(e),t.renderColorBar(e),t.renderQuickWrapper(e),e("div",{class:"vxe-color-picker--footer-wrapper"},[r?e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.colorPicker.clear"),size:"mini"},on:{click:t.clearEvent}}):(0,_ui.renderEmptyElement)(t),e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.colorPicker.confirm"),size:"mini",status:"primary"},on:{click:t.confirmEvent}})])]):(0,_ui.renderEmptyElement)(t)])])}},watch:{value:function(){this.updateMode()},type:function(){this.updateType()}},created:function(){var e=this;e.reactData.selectColor="".concat(e.value||""),e.updateType(),_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent),_ui.globalEvents.on(e,"resize",e.handleGlobalResizeEvent),_ui.globalEvents.on(e,"scroll",e.handleGlobalScrollEvent)},beforeDestroy:function(){var e=this,t=e.$refs.refOptionPanel;t&&t.parentNode&&t.parentNode.removeChild(t),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize"),_ui.globalEvents.off(e,"scroll")},render:function(e){return this.renderVN(e)}});
|
|
@@ -1329,22 +1329,6 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1329
1329
|
}
|
|
1330
1330
|
}
|
|
1331
1331
|
},
|
|
1332
|
-
handleGlobalMousewheelEvent: function handleGlobalMousewheelEvent(evnt) {
|
|
1333
|
-
var $xeDatePicker = this;
|
|
1334
|
-
var reactData = $xeDatePicker.reactData;
|
|
1335
|
-
var visiblePanel = reactData.visiblePanel;
|
|
1336
|
-
var isDisabled = $xeDatePicker.computeIsDisabled;
|
|
1337
|
-
if (!isDisabled) {
|
|
1338
|
-
if (visiblePanel) {
|
|
1339
|
-
var panelWrapperElem = $xeDatePicker.$refs.refPanelWrapper;
|
|
1340
|
-
if ((0, _dom.getEventTargetNode)(evnt, panelWrapperElem).flag) {
|
|
1341
|
-
$xeDatePicker.updatePlacement();
|
|
1342
|
-
} else {
|
|
1343
|
-
$xeDatePicker.hidePanel();
|
|
1344
|
-
}
|
|
1345
|
-
}
|
|
1346
|
-
}
|
|
1347
|
-
},
|
|
1348
1332
|
handleGlobalBlurEvent: function handleGlobalBlurEvent() {
|
|
1349
1333
|
var $xeDatePicker = this;
|
|
1350
1334
|
var reactData = $xeDatePicker.reactData;
|
|
@@ -1373,6 +1357,14 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1373
1357
|
$xeDatePicker.updatePlacement();
|
|
1374
1358
|
}
|
|
1375
1359
|
},
|
|
1360
|
+
handleGlobalScrollEvent: function handleGlobalScrollEvent() {
|
|
1361
|
+
var $xeDatePicker = this;
|
|
1362
|
+
var reactData = $xeDatePicker.reactData;
|
|
1363
|
+
var visiblePanel = reactData.visiblePanel;
|
|
1364
|
+
if (visiblePanel) {
|
|
1365
|
+
$xeDatePicker.updatePlacement();
|
|
1366
|
+
}
|
|
1367
|
+
},
|
|
1376
1368
|
// 弹出面板
|
|
1377
1369
|
updateZindex: function updateZindex() {
|
|
1378
1370
|
var $xeDatePicker = this;
|
|
@@ -1859,11 +1851,11 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1859
1851
|
}
|
|
1860
1852
|
}
|
|
1861
1853
|
$xeDatePicker.updateModelValue();
|
|
1862
|
-
_ui.globalEvents.on($xeDatePicker, 'mousewheel', $xeDatePicker.handleGlobalMousewheelEvent);
|
|
1863
1854
|
_ui.globalEvents.on($xeDatePicker, 'mousedown', $xeDatePicker.handleGlobalMousedownEvent);
|
|
1864
1855
|
_ui.globalEvents.on($xeDatePicker, 'keydown', $xeDatePicker.handleGlobalKeydownEvent);
|
|
1865
1856
|
_ui.globalEvents.on($xeDatePicker, 'blur', $xeDatePicker.handleGlobalBlurEvent);
|
|
1866
1857
|
_ui.globalEvents.on($xeDatePicker, 'resize', $xeDatePicker.handleGlobalResizeEvent);
|
|
1858
|
+
_ui.globalEvents.on($xeDatePicker, 'scroll', $xeDatePicker.handleGlobalScrollEvent);
|
|
1867
1859
|
},
|
|
1868
1860
|
beforeDestroy: function beforeDestroy() {
|
|
1869
1861
|
var $xeDatePicker = this;
|
|
@@ -1873,11 +1865,11 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1873
1865
|
if (panelElem && panelElem.parentNode) {
|
|
1874
1866
|
panelElem.parentNode.removeChild(panelElem);
|
|
1875
1867
|
}
|
|
1876
|
-
_ui.globalEvents.off($xeDatePicker, 'mousewheel');
|
|
1877
1868
|
_ui.globalEvents.off($xeDatePicker, 'mousedown');
|
|
1878
1869
|
_ui.globalEvents.off($xeDatePicker, 'keydown');
|
|
1879
1870
|
_ui.globalEvents.off($xeDatePicker, 'blur');
|
|
1880
1871
|
_ui.globalEvents.off($xeDatePicker, 'resize');
|
|
1872
|
+
_ui.globalEvents.off($xeDatePicker, 'scroll');
|
|
1881
1873
|
_xeUtils.default.assign(reactData, createReactData());
|
|
1882
1874
|
_xeUtils.default.assign(internalData, createInternalData());
|
|
1883
1875
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("../../date-panel/src/util"),_log=require("../../ui/src/log"),_datePanel=_interopRequireDefault(require("../../date-panel")),_button=_interopRequireDefault(require("../../button")),_buttonGroup=_interopRequireDefault(require("../../button-group"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,a){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var a=e[Symbol.toPrimitive];if(void 0===a)return("string"===t?String:Number)(e);a=a.call(e,t||"default");if("object"!=_typeof(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var a;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(a="Object"===(a={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:a)||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}var _createComponentLog=(0,_log.createComponentLog)("date-picker"),warnLog=_createComponentLog.warnLog,errLog=_createComponentLog.errLog,defaultMaskPlaceholder="_",maskedTypes=["year","month","date","datetime","time"],inputMaskedKeys=["y","M","d","H","m","n","s"],parseInputKayMaps={};function createReactData(){return{initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,inputValue:"",labelFlag:0}}function createInternalData(){return{inputLabel:"",laseFocusMasked:0}}inputMaskedKeys.forEach(function(e){parseInputKayMaps[e]=!0});var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeDatePicker",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:[String,Number,Date,Array],immediate:{type:Boolean,default:!0},name:String,type:{type:String,default:"date"},clearable:{type:Boolean,default:function(){return(0,_ui.getConfig)().datePicker.clearable}},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},placeholder:String,autoComplete:{type:String,default:"off"},form:String,className:String,inputClassName:{type:String,default:function(){return(0,_ui.getConfig)().datePicker.inputClassName}},zIndex:Number,size:{type:String,default:function(){return(0,_ui.getConfig)().datePicker.size||(0,_ui.getConfig)().size}},multiple:Boolean,limitCount:{type:[String,Number],default:function(){return(0,_ui.getConfig)().datePicker.limitCount}},startDate:{type:[String,Number,Date],default:function(){return(0,_ui.getConfig)().datePicker.startDate}},endDate:{type:[String,Number,Date],default:function(){return(0,_ui.getConfig)().datePicker.endDate}},defaultDate:[String,Number,Date],defaultTime:[String,Number,Date],minDate:[String,Number,Date],maxDate:[String,Number,Date],startDay:{type:[String,Number],default:function(){return(0,_ui.getConfig)().datePicker.startDay}},labelFormat:String,valueFormat:String,timeFormat:String,editable:{type:Boolean,default:!0},festivalMethod:{type:Function,default:function(){return(0,_ui.getConfig)().datePicker.festivalMethod}},disabledMethod:{type:Function,default:function(){return(0,_ui.getConfig)().datePicker.disabledMethod}},selectDay:{type:[String,Number],default:function(){return(0,_ui.getConfig)().datePicker.selectDay}},showClearButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().datePicker.showClearButton}},showConfirmButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().datePicker.showConfirmButton}},autoClose:{type:Boolean,default:function(){return(0,_ui.getConfig)().datePicker.autoClose}},maskedConfig:Object,prefixIcon:String,suffixIcon:String,placement:String,transfer:{type:Boolean,default:null},timeConfig:Object,popupConfig:Object,shortcutConfig:Object,startWeek:Number},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeDatePicker:this}},data:function(){var e=_xeUtils.default.uniqueId(),t=createReactData();return Object.assign(Object.assign({},{}),{xID:e,reactData:t})},computed:Object.assign(Object.assign({},{}),{computeBtnTransfer:function(){var e=this,t=e.$xeTable,a=e.$xeModal,n=e.$xeDrawer,i=e.$xeCard,r=e.$xeForm,l=e.transfer,e=e.computePopupOpts;if(_xeUtils.default.isBoolean(e.transfer))return e.transfer;if(null===l){e=(0,_ui.getConfig)().datePicker.transfer;if(_xeUtils.default.isBoolean(e))return e;if(t||a||n||i||r)return!0}return l},computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeIsTimeType:function(){return"time"===this.type},computeIsTimeOrDateTimeType:function(){var e=this.type;return this.computeIsTimeType||"datetime"===e},computeIsDatePickerType:function(){return this.computeIsTimeOrDateTimeType||-1<["date","week","month","quarter","year"].indexOf(this.type)},computeIsClearable:function(){return this.clearable},computeIsDatePanelType:function(){return this.computeIsTimeOrDateTimeType||-1<["date","week","month","quarter","year"].indexOf(this.type)},computeDateListValue:function(){var e=this.value,t=this.type,a=this.multiple,n=this.computeIsDatePanelType,i=this.computeDateValueFormat;return a&&e&&n?_xeUtils.default.toValueString(e).split(",").map(function(e){e=(0,_util.parseDateValue)(e,t,{valueFormat:i});return _xeUtils.default.isValidDate(e),e}):[]},computeDateStartDate:function(){return this.startDate?_xeUtils.default.toStringDate(this.startDate):null},computeDateEndDate:function(){return this.endDate?_xeUtils.default.toStringDate(this.endDate):null},computeLimitMaxCount:function(){return this.multiple?_xeUtils.default.toNumber(this.limitCount):0},computeDateMultipleValue:function(){var e=this.computeDateListValue,t=this.computeDateValueFormat;return e.map(function(e){return _xeUtils.default.toDateString(e,t)})},computeOverCount:function(){var e=this.multiple,t=this.computeLimitMaxCount,a=this.computeDateMultipleValue;return!(!e||!t)&&a.length>=t},computeInputReadonly:function(){var e=this.type,t=this.editable,a=this.multiple;return this.computeFormReadonly||a||!t||"week"===e||"quarter"===e},computeInpPlaceholder:function(){var e=this.placeholder;return(e=e||(0,_ui.getConfig)().datePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")},computeInpImmediate:function(){return this.immediate},computeTimeOpts:function(){return Object.assign({},(0,_ui.getConfig)().datePicker.timeConfig,this.timeConfig)},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().datePicker.popupConfig,this.popupConfig)},computeShortcutOpts:function(){return Object.assign({},(0,_ui.getConfig)().datePicker.shortcutConfig,this.shortcutConfig)},computeShortcutList:function(){var e=this.computeShortcutOpts.options;return e?e.map(function(e,t){return Object.assign({name:"".concat(e.name||e.code||t)},e)}):[]},computeDateLabelFormat:function(){return this.labelFormat||(0,_ui.getI18n)("vxe.input.date.labelFormat.".concat(this.type))},computeDateValueFormat:function(){var e=this.type,t=this.valueFormat;return(0,_util.handleValueFormat)(e,t)},computeDateMaskedFormat:function(){return this.computeDateLabelFormat},computeFirstDayOfWeek:function(){var e=this.startDay;return _xeUtils.default.toNumber(e)},computePanelLabel:function(){var e=this,t=e.reactData,a=e.type,t=t.inputValue,n=e.computeDateLabelFormat,i=e.computeDateValueFormat,r=e.computeFirstDayOfWeek;return(t?e.multiple?t.split(","):[t]:[]).map(function(e){return(0,_util.parseDateObj)(e,a,{valueFormat:i,labelFormat:n,firstDay:r}).label}).join(", ")},computeMaskedOpts:function(){return Object.assign({},(0,_ui.getConfig)().datePicker.maskedConfig,this.maskedConfig)},computeMaskChar:function(){var e=this.computeMaskedOpts.maskPlaceholder;return(e?(""+e)[0]:"")||defaultMaskPlaceholder}}),methods:{dispatchEvent:function(e,t,a){this.$emit(e,(0,_ui.createEvent)(a,{$datePicker:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},updateModelValue:function(){var e=this.reactData,t=this.value,a="";t&&(a=_xeUtils.default.isNumber(t)&&/^[0-9]{11,15}$/.test("".concat(t))?new Date(t):t),e.inputValue=a},handleInputLabel:function(e,t){var a=this.reactData;this.internalData.inputLabel=e,t&&a.labelFlag++},triggerEvent:function(e){var t=this.reactData.inputValue;this.dispatchEvent(e.type,{value:t},e)},handleChange:function(e,t){var a=this,n=a.reactData,i=a.$xeForm,r=a.formItemInfo,l=a.type,u=a.value,o=a.valueFormat,s=a.computeDateValueFormat;n.inputValue=e,(0,_util.hasTimestampValueType)(o)?(n=(n=(0,_util.parseDateValue)(e,l,{valueFormat:s}))?n.getTime():null,a.emitModel(n),u!==n&&(a.dispatchEvent("change",{value:n},t),i)&&r&&i.triggerItemEvent(t,r.itemConfig.field,n)):(0,_util.hasDateValueType)(o)?(n=(0,_util.parseDateValue)(e,l,{valueFormat:s}),a.emitModel(n),(u&&n?_xeUtils.default.toStringDate(u).getTime()!==n.getTime():u!==n)&&(a.dispatchEvent("change",{value:n},t),i)&&r&&i.triggerItemEvent(t,r.itemConfig.field,n)):(a.emitModel(e),_xeUtils.default.toValueString(u)!==e&&(a.dispatchEvent("change",{value:e},t),i)&&r&&i.triggerItemEvent(t,r.itemConfig.field,e))},inputEvent:function(e){var t=e.target.value;this.handleInputLabel(t,!0),this.dispatchEvent("input",{value:t},e)},changeEvent:function(e){this.computeInpImmediate||this.triggerEvent(e)},clickPrefixEvent:function(e){var t=this.reactData;this.computeIsDisabled||(t=t.inputValue,this.dispatchEvent("prefix-click",{value:t},e))},hidePanel:function(){var t=this.reactData,a=this.internalData;return new Promise(function(e){t.visiblePanel=!1,a.hpTimeout=setTimeout(function(){t.isAniVisible=!1,e()},350)})},dateChange:function(t,e){var a=this,n=a.value,i=a.multiple,r=a.computeIsTimeOrDateTimeType,l=a.computeDateValueFormat,u=a.computeFirstDayOfWeek,o=("week"===a.type&&(s=_xeUtils.default.toNumber(a.selectDay),t=_xeUtils.default.getWhatWeek(t,0,s,u)),_xeUtils.default.toDateString(t,l,{firstDay:u}));if(i){var s=a.computeOverCount;if(r){var u=e?[]:_toConsumableArray(a.computeDateListValue),c=[],i=_xeUtils.default.findIndexOf(u,function(e){return _xeUtils.default.isDateSame(t,e,"yyyyMMdd")});if(-1===i){if(s)return;u.push(t)}else u.splice(i,1);u.forEach(function(e){e&&c.push(e)}),a.handleChange(c.map(function(e){return _xeUtils.default.toDateString(e,l)}).join(","),{type:"update"})}else{r=e?[]:a.computeDateMultipleValue;r.some(function(e){return _xeUtils.default.isEqual(e,o)})?a.handleChange(r.filter(function(e){return!_xeUtils.default.isEqual(e,o)}).join(","),{type:"update"}):s||a.handleChange(r.concat([o]).join(","),{type:"update"})}}else _xeUtils.default.isEqual(n,o)||a.handleChange(o,{type:"update"})},dateRevert:function(){var e=this.computePanelLabel;this.handleInputLabel(e,!0)},afterCheckValue:function(n){var e=this,t=e.reactData,a=e.type,i=e.editable,r=e.multiple,l=e.maskedConfig,u=e.internalData.inputLabel,o=e.computeDateLabelFormat,s=e.computeMaskedOpts,c=e.computeDateStartDate,p=e.computeDateEndDate;if(n){i&&!r&&((0,_utils.isEnableConf)(l)||s.enabled)&&(i=o.match(new RegExp("(".concat(inputMaskedKeys.join("|"),")+"),"g")))&&i.forEach(function(e){var t,a=o.indexOf(e);-1<a&&(t=n.slice(a,a+e.length).replace(/\D/g,""))&&(!(t=_xeUtils.default.toNumber(t))&&["MM","dd"].includes(e)&&(t=1),n=n.slice(0,a)+_xeUtils.default.padStart((0,_util.checkDateInputFormat)(t,e),e.length,"0")+n.slice(a+e.length))});r=e.$refs.refDatePanel;if(r)return r.checkValue(n);l=(0,_util.parseDateValue)(n,a,{valueFormat:o});_xeUtils.default.isValidDate(l)?"time"===a?(u!==(l=_xeUtils.default.toDateString(l,o))&&e.handleChange(l,{type:"check"}),e.handleInputLabel(l,!0)):(p&&p<l&&(l=p),c&&l<c&&(l=c),s=!1,i=e.computeFirstDayOfWeek,"datetime"===a&&(r=t.inputValue,n===_xeUtils.default.toDateString(r,o))&&n===_xeUtils.default.toDateString(l,o)||(s=!0),u=_xeUtils.default.toDateString(l,o,{firstDay:i}),e.handleInputLabel(u,!0),s&&e.dateChange(l)):e.dateRevert()}else e.handleChange("",{type:"check"})},clearValueEvent:function(e,t){this.computeIsDatePickerType&&this.hidePanel(),this.handleChange("",e),this.dispatchEvent("clear",{value:t},e)},clickSuffixEvent:function(e){var t=this.reactData;this.computeIsDisabled||(t=t.inputValue,this.dispatchEvent("suffix-click",{value:t},e))},checkMaskedInputValue:function(e,t,a){var n=this.computeMaskedOpts.align,i=this.computeMaskChar,r=_xeUtils.default.toNumber(e),r=(0,_util.checkDateInputFormat)(r,t),l=""+(r=a&&!r&&["MM","dd"].includes(t)?1:r);return e.length>l.length&&(l=l.padStart(e.length,"0")),a?_xeUtils.default.padStart(l,t.length,"0"):_xeUtils.default["right"===n?"padStart":"padEnd"](r,t.length,i)},handleArrowInputDate:function(e,t,a,n,i){var r,l,u,o,s,c,p,d,f,m,h=this,v=h.internalData,g=h.type;h.multiple||(r=h.$refs.refInputTarget)&&(c=r.value)&&(f=h.computeDateLabelFormat,m=h.computeFirstDayOfWeek,p=h.computeMaskChar,u=(l=h.computeDateMaskedFormat)[o=r.selectionStart||0],parseInputKayMaps[u]||(u=l[o-1]),o=l.match(new RegExp(u+"+")))&&(t||a?(a=o[0]||"",s=(o=o.index||0)+a.length,d=c.slice(o,s),parseInputKayMaps[u]&&(d=((0,_util.isAllSameChar)(d,p)?(0,_util.getChunkDefaultNum)(u):_xeUtils.default.toNumber(d))+(t?1:-1),t=c.slice(0,o)+h.checkMaskedInputValue(""+d,a,!0)+c.slice(s),e.preventDefault(),-1===t.indexOf(p)?(d=(0,_util.parseDateValue)(t,g,{valueFormat:f}),_xeUtils.default.isValidDate(d)&&(a=_xeUtils.default.toDateString(d,f,{firstDay:m}),r.value=a,h.handleInputLabel(a,!1))):(r.value=t,h.handleInputLabel(t,!1))),r.setSelectionRange(o,s)):(n||i)&&-1<inputMaskedKeys.indexOf(u)&&(c=_xeUtils.default.map(l.match(new RegExp("(".concat(inputMaskedKeys.join("|"),")+"),"g"))||[],function(e){return e[0]}),p=_xeUtils.default.findIndexOf(c,function(e){return u===e[0]}),d=(g=n?c[p-1]||c[0]:c[p+1]||c[c.length-1])?g[0]:"",f=l.match(new RegExp(d+"+")))&&(e.preventDefault(),a=(m=f.index||0)+f[0].length,r.setSelectionRange(m,a)),v.isTriggerMasked=!0)},handleMaskedInputDate:function(e){var t=this,a=t.internalData,n=t.multiple;if(!n){var i=t.$refs.refInputTarget;if(i){n=(0,_dom.hasControlKey)(e);if(!n){e.preventDefault();var n=e.key,r=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.DELETE),l=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.BACKSPACE),n="0"<=n&&n<="9",e=n?e.key:"";if(r||l||n){var u=a.isTriggerMasked,o=t.computeMaskedOpts.align,s=t.computeDateMaskedFormat,c=t.computeMaskChar,p=i.value||s,d=i.selectionStart||0,f=i.selectionEnd||0,m=s[d],h=(parseInputKayMaps[m]||(m=s[d-1]),s.match(new RegExp(m+"+")));if(h){var v=_xeUtils.default.map(s.match(new RegExp("(".concat(inputMaskedKeys.join("|"),")+"),"g"))||[],function(e){return e[0]}),g=h[0]||"",y=h.index||0,_=y+g.length,m=v.indexOf(m),d=!d&&f===p.length&&1<v.length,f=p&&p.length!==s.length,f=((d||f)&&(p=s),r?"":p.slice(y,_)),b=f.match(/\d/g)||[],u=u&&!l?[]:b.slice(0);if(n?(u.push(e),f=t.checkMaskedInputValue(u.join(""),g,!1)):l&&(u.pop(),f=_xeUtils.default["right"===o?"padStart":"padEnd"](u.join(""),g.length,c)),C=(C=p.slice(0,y)+f+p.slice(_)).replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),c),i.value=C,t.handleInputLabel(C,!1),d){if(l||r){n=v[0],e=s.match(new RegExp("".concat(n,"+")));if(e)return g=e[0],i.setSelectionRange(0,g.length),void(a.isTriggerMasked=!0)}}else if(l&&!b.length){for(var D=m-1;0<=D;D--){var E=v[D],E=s.match(new RegExp("".concat(E,"+")));if(E){var x=E[0],E=E.index||0,k=E+x.length,P=C.slice(E,k),I=P.match(/\d/g)||[];if(I.length)return I.pop(),P=_xeUtils.default["right"===o?"padStart":"padEnd"](I.join(""),x.length,c),C=C.slice(0,E)+P+C.slice(k),i.value=C,t.handleInputLabel(C,!1),void i.setSelectionRange(E,k)}}var C,y=v[0],p=s.match(new RegExp("".concat(y,"+")));return p?(_=p[0],C=s.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),c),i.value=C,t.handleInputLabel(C,!1),i.setSelectionRange(0,_.length),void(a.isTriggerMasked=!0)):void 0}d=h.index||0,r=d+h[0].length;u.length>=f.length?(n=v.slice(m+1),-1<m&&((e=n.length?s.match(new RegExp("(".concat(n.join("|"),")+"))):null)&&(r=(d=e.index||0)+e[0].length),i.setSelectionRange(d,r)),a.isTriggerMasked=!0):(i.setSelectionRange(d,r),a.isTriggerMasked=!1)}}}}}},handleMaskedSelectedDate:function(e,t){var a=this,n=a.internalData,i=a.type,r=a.multiple,l=a.value;if(n.fsTimeout=void 0,!r&&maskedTypes.includes(i)){r=a.$refs.refInputTarget;if(r){i=n.laseFocusMasked;if(!(i&&Date.now()-i<100)){var i=a.computeDateMaskedFormat,u=a.computeMaskChar,o=r.selectionStart||0,s=r.selectionEnd||0,c=r.value,p=_xeUtils.default.map(i.match(new RegExp("(".concat(inputMaskedKeys.join("|"),")+"),"g"))||[],function(e){return e[0]});if(!c){var d,f,m=i.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),u),t=(t&&l&&(d=(""+_xeUtils.default.toNumber(l)).match(/\d/g)||[],f=0,m=i.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),function(e){return d[f++]||e})),p[0]),l=i.match(new RegExp("".concat(t,"+")));if(l)return e.preventDefault(),t=l[0],r.value=m,a.handleInputLabel(m,!1),r.setSelectionRange(0,t.length),void(n.laseFocusMasked=Date.now())}l=!o&&s===c.length&&1<p.length,m=c&&c.length!==i.length;if(l||m){var h,v,t="",s=(m&&c?(h=c.match(/\d/g)||[],v=0,t=i.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),function(){return h[v++]||u})):i.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),u),p[0]),l=i.match(new RegExp("".concat(s,"+")));if(l)return e.preventDefault(),m=l[0],r.value=t,a.handleInputLabel(t,!1),r.setSelectionRange(0,m.length),void(n.laseFocusMasked=Date.now())}c=i[o];(c=parseInputKayMaps[c]?c:i[o-1])&&(e.preventDefault(),p=i.match(new RegExp(c+"+")))&&(s=p[0]||"",a=(l=p.index||0)+s.length,r.setSelectionRange(l,a),n.isTriggerMasked=!0,n.laseFocusMasked=Date.now())}}}},blurEvent:function(e){var t=this,a=t.reactData,n=t.internalData,i=t.$xeForm,r=t.formItemInfo,l=a.inputValue;t.computeInpImmediate||t.handleChange(l,e),a.visiblePanel||(n=n.inputLabel,a.isActivated=!1,t.afterCheckValue(n)),t.dispatchEvent("blur",{value:l},e),i&&r&&i.triggerItemEvent(e,r.itemConfig.field,l)},focusEvent:function(e){var t=this,a=t.reactData,n=t.internalData,i=n.fsTimeout,r=t.multiple,l=t.editable,u=t.maskedConfig,o=t.computeMaskedOpts,s=t.computePopupOpts.trigger;a.isActivated=!0,i&&clearTimeout(i),s&&"default"!==s?"icon"===s&&t.hidePanel():t.datePickerOpenEvent(e),l&&!r&&((0,_utils.isEnableConf)(u)||o.enabled)&&(n.fsTimeout=setTimeout(function(){t.handleMaskedSelectedDate(e,!0)},20)),t.triggerEvent(e)},clickEvent:function(e){var t=this,a=t.internalData,n=t.multiple,i=t.editable,r=t.maskedConfig,l=a.fsTimeout,u=t.computeMaskedOpts;l&&clearTimeout(l),i&&!n&&((0,_utils.isEnableConf)(r)||u.enabled)&&(a.fsTimeout=setTimeout(function(){t.handleMaskedSelectedDate(e)},10)),t.triggerEvent(e)},keydownEvent:function(e){var t=this,a=t.reactData,n=t.internalData,i=t.type,r=t.editable,l=t.maskedConfig,a=a.visiblePanel,u=t.computeMaskedOpts,o=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),s=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),c=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_LEFT),p=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_RIGHT),d=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ENTER);r&&(d?(r=n.inputLabel,a&&t.hidePanel(),t.afterCheckValue(r)):maskedTypes.includes(i)&&((0,_utils.isEnableConf)(l)||u.enabled)&&(u.isArrow&&(o||s||c||p)?t.handleArrowInputDate(e,o,s,c,p):u.isMasked&&t.handleMaskedInputDate(e))),t.triggerEvent(e)},keyupEvent:function(e){this.triggerEvent(e)},confirmEvent:function(e){var t=this.$refs.refDatePanel;t&&t.confirmByEvent(e),this.hidePanel()},panelChangeEvent:function(e){var t=this.multiple,a=this.autoClose,n=e.value,i=this.computeIsTimeOrDateTimeType;this.handleChange(n,e.$event),t||i||a&&this.hidePanel()},panelConfirmEvent:function(e){this.dispatchEvent("confirm",e,e.$event)},panelRevertEvent:function(e){this.handleInputLabel(e.label,!0)},handleGlobalMousedownEvent:function(e){var t=this,a=t.reactData,n=t.internalData,i=a.visiblePanel,r=a.isActivated,l=t.$refs.refElem,u=t.$refs.refPanelWrapper;!t.computeIsDisabled&&r&&((l=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,u).flag)!==r&&(a.isActivated=l),l||i&&(t.hidePanel(),e=n.inputLabel,t.afterCheckValue(e)))},handleGlobalKeydownEvent:function(e){var t,a=this.reactData,n=a.visiblePanel;this.computeIsDisabled||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),e=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),t&&(a.isActivated=!1),n&&(e||t)&&this.hidePanel())},handleGlobalMousewheelEvent:function(e){var t=this,a=t.reactData.visiblePanel;t.computeIsDisabled||a&&(a=t.$refs.refPanelWrapper,(0,_dom.getEventTargetNode)(e,a).flag?t.updatePlacement():t.hidePanel())},handleGlobalBlurEvent:function(){var e=this,t=e.reactData,a=e.internalData,n=t.isActivated,i=t.visiblePanel;i&&e.hidePanel(),n&&(t.isActivated=!1),(i||n)&&(e.afterCheckValue(a.inputLabel),t=e.$refs.refInputTarget)&&t.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},updateZindex:function(){var e=this.reactData,t=this.computePopupOpts.zIndex||this.zIndex;t?e.panelIndex=_xeUtils.default.toNumber(t):e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){var a,n,e,t=this,i=t.reactData,r=t.placement,l=i.panelIndex,u=t.$refs.refInputTarget,o=t.$refs.refInputPanel;return o?(a=t.computeBtnTransfer,n=t.computePopupOpts,(e=function(){var e=(0,_dom.updatePanelPlacement)(u,o,{placement:n.placement||r,defaultPlacement:n.defaultPlacement,teleportTo:a}),t=Object.assign(e.style,{zIndex:l});i.panelStyle=t,i.panelPlacement=e.placement})(),t.$nextTick().then(e)):t.$nextTick()},showPanel:function(){var e=this,t=e.reactData,a=e.internalData,n=t.visiblePanel,i=e.computeBtnTransfer,r=e.computePopupOpts,l=e.$refs.refInputPanel;return e.computeIsDisabled||n?e.$nextTick():(t.initialized||(t.initialized=!0,i&&l&&(n=r.appendTo,(0,_dom.getPopupAppendElement)(n).appendChild(l))),a.hpTimeout&&(clearTimeout(a.hpTimeout),a.hpTimeout=void 0),t.isActivated=!0,t.isAniVisible=!0,setTimeout(function(){t.visiblePanel=!0,e.updatePlacement()},10),e.updateZindex(),e.updatePlacement())},datePickerOpenEvent:function(e){this.computeFormReadonly||(e.preventDefault(),this.showPanel())},clickIconEvent:function(e){var t=this.reactData.visiblePanel,a=this.computePopupOpts.trigger;a&&"default"!==a&&"icon"!==a||(t?this.hidePanel():this.datePickerOpenEvent(e))},handleShortcutEvent:function(e){var t=e.option,a=e.$event,n=this,e=n.reactData,i=n.type,e=e.inputValue,r=n.computeShortcutOpts,l=r.autoClose,u=t.code,o=t.clickMethod,s={$datePicker:n,option:t,value:d=e,code:u};if(!o&&u){t=_ui.commands.get(u),e=t?t.datePickerCommandMethod:null;if(e)e(s);else{var c=n.computeDateValueFormat,p=n.computeFirstDayOfWeek;switch(u){case"now":case"prev":case"next":case"minus":case"plus":var d=(0,_util.getDateByCode)(u,d,i,{valueFormat:c,firstDay:p}).value;s.value=d,n.handleChange(d,a);break;default:errLog("vxe.error.notCommands",[u])}}}else{t=o||r.clickMethod;t&&t(s)}l&&n.hidePanel(),n.dispatchEvent("shortcut-click",s,a)},setModelValue:function(e){this.reactData.inputValue=e,this.emitModel(e)},setModelValueByEvent:function(e,t){this.handleChange(t||"",e)},focus:function(){var e=this.reactData,t=this.$refs.refInputTarget;return e.isActivated=!0,t.focus(),this.$nextTick()},blur:function(){var e=this.reactData;return this.$refs.refInputTarget.blur(),e.isActivated=!1,this.$nextTick()},select:function(){var e=this.reactData;return this.$refs.refInputTarget.select(),e.isActivated=!1,this.$nextTick()},renderShortcutBtn:function(e,t,a){var n=this.computeShortcutOpts,i=n.position,r=n.align,l=n.mode,u=this.computeShortcutList;return(0,_utils.isEnableConf)(n)&&u.length&&(i||"left")===t?e("div",{class:"vxe-date-picker--layout-".concat(t,"-wrapper")},[e(_buttonGroup.default,{props:{options:u,mode:l,align:r,vertical:a},on:{click:this.handleShortcutEvent}})]):(0,_ui.renderEmptyElement)(this)},renderPanel:function(e){var t,a,n,i,r,l,u,o,s,c,p,d,f,m,h,v,g,y,_,b,D,E=this,x=E,k=E.$scopedSlots,P=E.reactData,I=E.computePopupOpts;return!1===I.enabled?(0,_ui.renderEmptyElement)(E):(t=x.type,a=P.initialized,n=P.isAniVisible,i=P.visiblePanel,r=P.panelPlacement,l=P.panelStyle,u=P.inputValue,o=E.computeSize,s=E.computeBtnTransfer,c=E.computeTimeOpts,p=E.computeDateStartDate,d=E.computeDateEndDate,f=E.computeShortcutOpts.position,m=k.header,h=k.footer,v=k.top,g=k.bottom,y=k.left,k=k.right,I=I.className,_=0<E.computeShortcutList.length,b=null===(b=x.showConfirmButton)?E.computeIsTimeOrDateTimeType||x.multiple:b,D=null===(D=x.showClearButton)?E.computeIsClearable&&b&&"time"!==t:D,e("div",{ref:"refInputPanel",class:["vxe-table--ignore-clear vxe-date-picker--panel","type--".concat(t),_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(o),o),"is--transfer",s),"ani--leave",n),"ani--enter",i),"show--top",!!(v||m||_&&("top"===f||"header"===f))),"show--bottom",!!(g||h||_&&("bottom"===f||"footer"===f))),"show--left",!!(y||_&&"left"===f)),"show--right",!!(k||_&&"right"===f))],attrs:{placement:r},style:l},a&&(i||n)?[e("div",{ref:"refPanelWrapper",class:["vxe-date-picker--layout-all-wrapper","type--".concat(t),I?_xeUtils.default.isFunction(I)?I({$datePicker:E}):I:"",_defineProperty({},"size--".concat(o),o)]},[v?e("div",{class:"vxe-date-picker--layout-top-wrapper"},v({})):E.renderShortcutBtn(e,"top"),e("div",{class:"vxe-date-picker--layout-body-layout-wrapper"},[y?e("div",{class:"vxe-date-picker--layout-left-wrapper"},y({})):E.renderShortcutBtn(e,"left",!0),e("div",{class:"vxe-date-picker--layout-body-content-wrapper"},[m?e("div",{class:"vxe-date-picker--layout-header-wrapper"},m({})):E.renderShortcutBtn(e,"header"),e("div",{class:"vxe-date-picker--layout-body-wrapper"},[e(_datePanel.default,{ref:"refDatePanel",props:{value:P.inputValue,type:x.type,className:x.className,multiple:x.multiple,limitCount:x.limitCount,startDate:p,endDate:d,defaultDate:x.defaultDate,defaultTime:x.defaultTime,minDate:x.minDate,maxDate:x.maxDate,startDay:x.startDay,labelFormat:x.labelFormat,valueFormat:x.valueFormat,timeFormat:x.timeFormat,timeConfig:c,festivalMethod:x.festivalMethod,disabledMethod:x.disabledMethod,selectDay:x.selectDay},on:{change:E.panelChangeEvent,confirm:E.panelConfirmEvent,revert:E.panelRevertEvent}})]),e("div",{class:"vxe-date-picker--layout-footer-wrapper"},[e("div",{class:"vxe-date-picker--layout-footer-custom"},h?h({}):[E.renderShortcutBtn(e,"footer")]),D||b?e("div",{class:"vxe-date-picker--layout-footer-btns"},[D?e(_button.default,{props:{size:"mini",disabled:""===u||_xeUtils.default.eqNull(u),content:(0,_ui.getI18n)("vxe.button.clear")},on:{click:E.clearValueEvent}}):(0,_ui.renderEmptyElement)(E),b?e(_button.default,{props:{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm")},on:{click:E.confirmEvent}}):(0,_ui.renderEmptyElement)(E)]):(0,_ui.renderEmptyElement)(E)])]),k?e("div",{class:"vxe-date-picker--layout-right-wrapper"},k({})):E.renderShortcutBtn(e,"right",!0)]),g?e("div",{class:"vxe-date-picker--layout-bottom-wrapper"},g({})):E.renderShortcutBtn(e,"bottom")])]:[]))},renderPrefixIcon:function(e){var t=this.$scopedSlots,a=this.prefixIcon,t=t.prefix;return t||a?e("div",{class:"vxe-date-picker--prefix",on:{click:this.clickPrefixEvent}},[e("div",{class:"vxe-date-picker--prefix-icon"},t?(0,_vn.getSlotVNs)(t({})):[e("i",{class:a})])]):null},renderSuffixIcon:function(e){var t=this,a=t.$scopedSlots,n=t.suffixIcon,i=t.reactData.inputValue,a=a.suffix,r=t.computeIsClearable;return e("div",{class:["vxe-date-picker--suffix",{"is--clear":r&&!t.computeIsDisabled&&!(""===i||_xeUtils.default.eqNull(i))}]},[r?e("div",{class:"vxe-date-picker--clear-icon",on:{click:t.clearValueEvent}},[e("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(t),t.renderExtraSuffixIcon(e),a||n?e("div",{class:"vxe-date-picker--suffix-icon",on:{click:t.clickSuffixEvent}},a?(0,_vn.getSlotVNs)(a({})):[e("i",{class:n})]):(0,_ui.renderEmptyElement)(t)])},renderExtraSuffixIcon:function(e){return e("div",{class:"vxe-date-picker--control-icon",on:{click:this.clickIconEvent}},[e("i",{class:["vxe-date-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})])},renderVN:function(e){var t,a,n,i,r=this,l=r.reactData,u=r.className,o=r.inputClassName,s=r.type,c=r.name,p=r.autoComplete,d=l.inputValue,f=l.visiblePanel,m=l.isActivated,l=l.labelFlag,h=r.internalData.inputLabel,v=r.computeSize,g=r.computeIsDisabled,y=r.computePanelLabel;return r.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-date-picker--readonly","type--".concat(s),u]},y):(y=r.computeInputReadonly,t=r.computeInpPlaceholder,a=r.computeIsClearable,n=r.renderPrefixIcon(e),i=r.renderSuffixIcon(e),e("div",{ref:"refElem",class:["vxe-date-picker","type--".concat(s),u,_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(v),v),"is--prefix",!!n),"is--suffix",!!i),"is--visible",f),"is--disabled",g),"is--active",m),"show--clear",a&&!g&&!(""===d||_xeUtils.default.eqNull(d)))],attrs:{spellcheck:!1}},[n||(0,_ui.renderEmptyElement)(r),e("div",{class:"vxe-date-picker--wrapper"},[e("input",{ref:"refInputTarget",class:"vxe-date-picker--inner"+(o?" "+o:""),domProps:{value:l?h:""},attrs:{name:c,type:"text",placeholder:t,readonly:y,disabled:g,autocomplete:p},on:{keydown:r.keydownEvent,keyup:r.keyupEvent,click:r.clickEvent,input:r.inputEvent,change:r.changeEvent,focus:r.focusEvent,blur:r.blurEvent}})]),i||(0,_ui.renderEmptyElement)(r),r.renderPanel(e)]))}},watch:{computePanelLabel:function(e){this.handleInputLabel(e,!0)},value:function(){this.updateModelValue()}},created:function(){var e=this,t=e,a=(e.internalData=createInternalData(),t.type),n=t.multiple,t=t.maskedConfig;(0,_utils.isEnableConf)(t)&&(n&&errLog("vxe.error.notSupportProp",["multiple","control-config.enabled=true","control-config.enabled=false"]),maskedTypes.includes(a)||warnLog("vxe.error.notSupportProp",["control-config.enabled=true","type=".concat(a),"type=".concat(maskedTypes.join("|"))])),e.updateModelValue(),_ui.globalEvents.on(e,"mousewheel",e.handleGlobalMousewheelEvent),_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"keydown",e.handleGlobalKeydownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent),_ui.globalEvents.on(e,"resize",e.handleGlobalResizeEvent)},beforeDestroy:function(){var e=this,t=e.reactData,a=e.internalData,n=e.$refs.refInputPanel;n&&n.parentNode&&n.parentNode.removeChild(n),_ui.globalEvents.off(e,"mousewheel"),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"keydown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize"),_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(a,createInternalData())},render:function(e){return this.renderVN(e)}});
|
|
1
|
+
function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("../../date-panel/src/util"),_log=require("../../ui/src/log"),_datePanel=_interopRequireDefault(require("../../date-panel")),_button=_interopRequireDefault(require("../../button")),_buttonGroup=_interopRequireDefault(require("../../button-group"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,a){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var a=e[Symbol.toPrimitive];if(void 0===a)return("string"===t?String:Number)(e);a=a.call(e,t||"default");if("object"!=_typeof(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var a;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(a="Object"===(a={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:a)||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}var _createComponentLog=(0,_log.createComponentLog)("date-picker"),warnLog=_createComponentLog.warnLog,errLog=_createComponentLog.errLog,defaultMaskPlaceholder="_",maskedTypes=["year","month","date","datetime","time"],inputMaskedKeys=["y","M","d","H","m","n","s"],parseInputKayMaps={};function createReactData(){return{initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,inputValue:"",labelFlag:0}}function createInternalData(){return{inputLabel:"",laseFocusMasked:0}}inputMaskedKeys.forEach(function(e){parseInputKayMaps[e]=!0});var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeDatePicker",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:[String,Number,Date,Array],immediate:{type:Boolean,default:!0},name:String,type:{type:String,default:"date"},clearable:{type:Boolean,default:function(){return(0,_ui.getConfig)().datePicker.clearable}},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},placeholder:String,autoComplete:{type:String,default:"off"},form:String,className:String,inputClassName:{type:String,default:function(){return(0,_ui.getConfig)().datePicker.inputClassName}},zIndex:Number,size:{type:String,default:function(){return(0,_ui.getConfig)().datePicker.size||(0,_ui.getConfig)().size}},multiple:Boolean,limitCount:{type:[String,Number],default:function(){return(0,_ui.getConfig)().datePicker.limitCount}},startDate:{type:[String,Number,Date],default:function(){return(0,_ui.getConfig)().datePicker.startDate}},endDate:{type:[String,Number,Date],default:function(){return(0,_ui.getConfig)().datePicker.endDate}},defaultDate:[String,Number,Date],defaultTime:[String,Number,Date],minDate:[String,Number,Date],maxDate:[String,Number,Date],startDay:{type:[String,Number],default:function(){return(0,_ui.getConfig)().datePicker.startDay}},labelFormat:String,valueFormat:String,timeFormat:String,editable:{type:Boolean,default:!0},festivalMethod:{type:Function,default:function(){return(0,_ui.getConfig)().datePicker.festivalMethod}},disabledMethod:{type:Function,default:function(){return(0,_ui.getConfig)().datePicker.disabledMethod}},selectDay:{type:[String,Number],default:function(){return(0,_ui.getConfig)().datePicker.selectDay}},showClearButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().datePicker.showClearButton}},showConfirmButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().datePicker.showConfirmButton}},autoClose:{type:Boolean,default:function(){return(0,_ui.getConfig)().datePicker.autoClose}},maskedConfig:Object,prefixIcon:String,suffixIcon:String,placement:String,transfer:{type:Boolean,default:null},timeConfig:Object,popupConfig:Object,shortcutConfig:Object,startWeek:Number},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeDatePicker:this}},data:function(){var e=_xeUtils.default.uniqueId(),t=createReactData();return Object.assign(Object.assign({},{}),{xID:e,reactData:t})},computed:Object.assign(Object.assign({},{}),{computeBtnTransfer:function(){var e=this,t=e.$xeTable,a=e.$xeModal,n=e.$xeDrawer,i=e.$xeCard,r=e.$xeForm,l=e.transfer,e=e.computePopupOpts;if(_xeUtils.default.isBoolean(e.transfer))return e.transfer;if(null===l){e=(0,_ui.getConfig)().datePicker.transfer;if(_xeUtils.default.isBoolean(e))return e;if(t||a||n||i||r)return!0}return l},computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeIsTimeType:function(){return"time"===this.type},computeIsTimeOrDateTimeType:function(){var e=this.type;return this.computeIsTimeType||"datetime"===e},computeIsDatePickerType:function(){return this.computeIsTimeOrDateTimeType||-1<["date","week","month","quarter","year"].indexOf(this.type)},computeIsClearable:function(){return this.clearable},computeIsDatePanelType:function(){return this.computeIsTimeOrDateTimeType||-1<["date","week","month","quarter","year"].indexOf(this.type)},computeDateListValue:function(){var e=this.value,t=this.type,a=this.multiple,n=this.computeIsDatePanelType,i=this.computeDateValueFormat;return a&&e&&n?_xeUtils.default.toValueString(e).split(",").map(function(e){e=(0,_util.parseDateValue)(e,t,{valueFormat:i});return _xeUtils.default.isValidDate(e),e}):[]},computeDateStartDate:function(){return this.startDate?_xeUtils.default.toStringDate(this.startDate):null},computeDateEndDate:function(){return this.endDate?_xeUtils.default.toStringDate(this.endDate):null},computeLimitMaxCount:function(){return this.multiple?_xeUtils.default.toNumber(this.limitCount):0},computeDateMultipleValue:function(){var e=this.computeDateListValue,t=this.computeDateValueFormat;return e.map(function(e){return _xeUtils.default.toDateString(e,t)})},computeOverCount:function(){var e=this.multiple,t=this.computeLimitMaxCount,a=this.computeDateMultipleValue;return!(!e||!t)&&a.length>=t},computeInputReadonly:function(){var e=this.type,t=this.editable,a=this.multiple;return this.computeFormReadonly||a||!t||"week"===e||"quarter"===e},computeInpPlaceholder:function(){var e=this.placeholder;return(e=e||(0,_ui.getConfig)().datePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")},computeInpImmediate:function(){return this.immediate},computeTimeOpts:function(){return Object.assign({},(0,_ui.getConfig)().datePicker.timeConfig,this.timeConfig)},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().datePicker.popupConfig,this.popupConfig)},computeShortcutOpts:function(){return Object.assign({},(0,_ui.getConfig)().datePicker.shortcutConfig,this.shortcutConfig)},computeShortcutList:function(){var e=this.computeShortcutOpts.options;return e?e.map(function(e,t){return Object.assign({name:"".concat(e.name||e.code||t)},e)}):[]},computeDateLabelFormat:function(){return this.labelFormat||(0,_ui.getI18n)("vxe.input.date.labelFormat.".concat(this.type))},computeDateValueFormat:function(){var e=this.type,t=this.valueFormat;return(0,_util.handleValueFormat)(e,t)},computeDateMaskedFormat:function(){return this.computeDateLabelFormat},computeFirstDayOfWeek:function(){var e=this.startDay;return _xeUtils.default.toNumber(e)},computePanelLabel:function(){var e=this,t=e.reactData,a=e.type,t=t.inputValue,n=e.computeDateLabelFormat,i=e.computeDateValueFormat,r=e.computeFirstDayOfWeek;return(t?e.multiple?t.split(","):[t]:[]).map(function(e){return(0,_util.parseDateObj)(e,a,{valueFormat:i,labelFormat:n,firstDay:r}).label}).join(", ")},computeMaskedOpts:function(){return Object.assign({},(0,_ui.getConfig)().datePicker.maskedConfig,this.maskedConfig)},computeMaskChar:function(){var e=this.computeMaskedOpts.maskPlaceholder;return(e?(""+e)[0]:"")||defaultMaskPlaceholder}}),methods:{dispatchEvent:function(e,t,a){this.$emit(e,(0,_ui.createEvent)(a,{$datePicker:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},updateModelValue:function(){var e=this.reactData,t=this.value,a="";t&&(a=_xeUtils.default.isNumber(t)&&/^[0-9]{11,15}$/.test("".concat(t))?new Date(t):t),e.inputValue=a},handleInputLabel:function(e,t){var a=this.reactData;this.internalData.inputLabel=e,t&&a.labelFlag++},triggerEvent:function(e){var t=this.reactData.inputValue;this.dispatchEvent(e.type,{value:t},e)},handleChange:function(e,t){var a=this,n=a.reactData,i=a.$xeForm,r=a.formItemInfo,l=a.type,u=a.value,o=a.valueFormat,s=a.computeDateValueFormat;n.inputValue=e,(0,_util.hasTimestampValueType)(o)?(n=(n=(0,_util.parseDateValue)(e,l,{valueFormat:s}))?n.getTime():null,a.emitModel(n),u!==n&&(a.dispatchEvent("change",{value:n},t),i)&&r&&i.triggerItemEvent(t,r.itemConfig.field,n)):(0,_util.hasDateValueType)(o)?(n=(0,_util.parseDateValue)(e,l,{valueFormat:s}),a.emitModel(n),(u&&n?_xeUtils.default.toStringDate(u).getTime()!==n.getTime():u!==n)&&(a.dispatchEvent("change",{value:n},t),i)&&r&&i.triggerItemEvent(t,r.itemConfig.field,n)):(a.emitModel(e),_xeUtils.default.toValueString(u)!==e&&(a.dispatchEvent("change",{value:e},t),i)&&r&&i.triggerItemEvent(t,r.itemConfig.field,e))},inputEvent:function(e){var t=e.target.value;this.handleInputLabel(t,!0),this.dispatchEvent("input",{value:t},e)},changeEvent:function(e){this.computeInpImmediate||this.triggerEvent(e)},clickPrefixEvent:function(e){var t=this.reactData;this.computeIsDisabled||(t=t.inputValue,this.dispatchEvent("prefix-click",{value:t},e))},hidePanel:function(){var t=this.reactData,a=this.internalData;return new Promise(function(e){t.visiblePanel=!1,a.hpTimeout=setTimeout(function(){t.isAniVisible=!1,e()},350)})},dateChange:function(t,e){var a=this,n=a.value,i=a.multiple,r=a.computeIsTimeOrDateTimeType,l=a.computeDateValueFormat,u=a.computeFirstDayOfWeek,o=("week"===a.type&&(s=_xeUtils.default.toNumber(a.selectDay),t=_xeUtils.default.getWhatWeek(t,0,s,u)),_xeUtils.default.toDateString(t,l,{firstDay:u}));if(i){var s=a.computeOverCount;if(r){var u=e?[]:_toConsumableArray(a.computeDateListValue),c=[],i=_xeUtils.default.findIndexOf(u,function(e){return _xeUtils.default.isDateSame(t,e,"yyyyMMdd")});if(-1===i){if(s)return;u.push(t)}else u.splice(i,1);u.forEach(function(e){e&&c.push(e)}),a.handleChange(c.map(function(e){return _xeUtils.default.toDateString(e,l)}).join(","),{type:"update"})}else{r=e?[]:a.computeDateMultipleValue;r.some(function(e){return _xeUtils.default.isEqual(e,o)})?a.handleChange(r.filter(function(e){return!_xeUtils.default.isEqual(e,o)}).join(","),{type:"update"}):s||a.handleChange(r.concat([o]).join(","),{type:"update"})}}else _xeUtils.default.isEqual(n,o)||a.handleChange(o,{type:"update"})},dateRevert:function(){var e=this.computePanelLabel;this.handleInputLabel(e,!0)},afterCheckValue:function(n){var e=this,t=e.reactData,a=e.type,i=e.editable,r=e.multiple,l=e.maskedConfig,u=e.internalData.inputLabel,o=e.computeDateLabelFormat,s=e.computeMaskedOpts,c=e.computeDateStartDate,p=e.computeDateEndDate;if(n){i&&!r&&((0,_utils.isEnableConf)(l)||s.enabled)&&(i=o.match(new RegExp("(".concat(inputMaskedKeys.join("|"),")+"),"g")))&&i.forEach(function(e){var t,a=o.indexOf(e);-1<a&&(t=n.slice(a,a+e.length).replace(/\D/g,""))&&(!(t=_xeUtils.default.toNumber(t))&&["MM","dd"].includes(e)&&(t=1),n=n.slice(0,a)+_xeUtils.default.padStart((0,_util.checkDateInputFormat)(t,e),e.length,"0")+n.slice(a+e.length))});r=e.$refs.refDatePanel;if(r)return r.checkValue(n);l=(0,_util.parseDateValue)(n,a,{valueFormat:o});_xeUtils.default.isValidDate(l)?"time"===a?(u!==(l=_xeUtils.default.toDateString(l,o))&&e.handleChange(l,{type:"check"}),e.handleInputLabel(l,!0)):(p&&p<l&&(l=p),c&&l<c&&(l=c),s=!1,i=e.computeFirstDayOfWeek,"datetime"===a&&(r=t.inputValue,n===_xeUtils.default.toDateString(r,o))&&n===_xeUtils.default.toDateString(l,o)||(s=!0),u=_xeUtils.default.toDateString(l,o,{firstDay:i}),e.handleInputLabel(u,!0),s&&e.dateChange(l)):e.dateRevert()}else e.handleChange("",{type:"check"})},clearValueEvent:function(e,t){this.computeIsDatePickerType&&this.hidePanel(),this.handleChange("",e),this.dispatchEvent("clear",{value:t},e)},clickSuffixEvent:function(e){var t=this.reactData;this.computeIsDisabled||(t=t.inputValue,this.dispatchEvent("suffix-click",{value:t},e))},checkMaskedInputValue:function(e,t,a){var n=this.computeMaskedOpts.align,i=this.computeMaskChar,r=_xeUtils.default.toNumber(e),r=(0,_util.checkDateInputFormat)(r,t),l=""+(r=a&&!r&&["MM","dd"].includes(t)?1:r);return e.length>l.length&&(l=l.padStart(e.length,"0")),a?_xeUtils.default.padStart(l,t.length,"0"):_xeUtils.default["right"===n?"padStart":"padEnd"](r,t.length,i)},handleArrowInputDate:function(e,t,a,n,i){var r,l,u,o,s,c,p,d,f,m,h=this,v=h.internalData,g=h.type;h.multiple||(r=h.$refs.refInputTarget)&&(c=r.value)&&(f=h.computeDateLabelFormat,m=h.computeFirstDayOfWeek,p=h.computeMaskChar,u=(l=h.computeDateMaskedFormat)[o=r.selectionStart||0],parseInputKayMaps[u]||(u=l[o-1]),o=l.match(new RegExp(u+"+")))&&(t||a?(a=o[0]||"",s=(o=o.index||0)+a.length,d=c.slice(o,s),parseInputKayMaps[u]&&(d=((0,_util.isAllSameChar)(d,p)?(0,_util.getChunkDefaultNum)(u):_xeUtils.default.toNumber(d))+(t?1:-1),t=c.slice(0,o)+h.checkMaskedInputValue(""+d,a,!0)+c.slice(s),e.preventDefault(),-1===t.indexOf(p)?(d=(0,_util.parseDateValue)(t,g,{valueFormat:f}),_xeUtils.default.isValidDate(d)&&(a=_xeUtils.default.toDateString(d,f,{firstDay:m}),r.value=a,h.handleInputLabel(a,!1))):(r.value=t,h.handleInputLabel(t,!1))),r.setSelectionRange(o,s)):(n||i)&&-1<inputMaskedKeys.indexOf(u)&&(c=_xeUtils.default.map(l.match(new RegExp("(".concat(inputMaskedKeys.join("|"),")+"),"g"))||[],function(e){return e[0]}),p=_xeUtils.default.findIndexOf(c,function(e){return u===e[0]}),d=(g=n?c[p-1]||c[0]:c[p+1]||c[c.length-1])?g[0]:"",f=l.match(new RegExp(d+"+")))&&(e.preventDefault(),a=(m=f.index||0)+f[0].length,r.setSelectionRange(m,a)),v.isTriggerMasked=!0)},handleMaskedInputDate:function(e){var t=this,a=t.internalData,n=t.multiple;if(!n){var i=t.$refs.refInputTarget;if(i){n=(0,_dom.hasControlKey)(e);if(!n){e.preventDefault();var n=e.key,r=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.DELETE),l=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.BACKSPACE),n="0"<=n&&n<="9",e=n?e.key:"";if(r||l||n){var u=a.isTriggerMasked,o=t.computeMaskedOpts.align,s=t.computeDateMaskedFormat,c=t.computeMaskChar,p=i.value||s,d=i.selectionStart||0,f=i.selectionEnd||0,m=s[d],h=(parseInputKayMaps[m]||(m=s[d-1]),s.match(new RegExp(m+"+")));if(h){var v=_xeUtils.default.map(s.match(new RegExp("(".concat(inputMaskedKeys.join("|"),")+"),"g"))||[],function(e){return e[0]}),g=h[0]||"",y=h.index||0,_=y+g.length,m=v.indexOf(m),d=!d&&f===p.length&&1<v.length,f=p&&p.length!==s.length,f=((d||f)&&(p=s),r?"":p.slice(y,_)),b=f.match(/\d/g)||[],u=u&&!l?[]:b.slice(0);if(n?(u.push(e),f=t.checkMaskedInputValue(u.join(""),g,!1)):l&&(u.pop(),f=_xeUtils.default["right"===o?"padStart":"padEnd"](u.join(""),g.length,c)),S=(S=p.slice(0,y)+f+p.slice(_)).replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),c),i.value=S,t.handleInputLabel(S,!1),d){if(l||r){n=v[0],e=s.match(new RegExp("".concat(n,"+")));if(e)return g=e[0],i.setSelectionRange(0,g.length),void(a.isTriggerMasked=!0)}}else if(l&&!b.length){for(var D=m-1;0<=D;D--){var E=v[D],E=s.match(new RegExp("".concat(E,"+")));if(E){var x=E[0],E=E.index||0,k=E+x.length,P=S.slice(E,k),I=P.match(/\d/g)||[];if(I.length)return I.pop(),P=_xeUtils.default["right"===o?"padStart":"padEnd"](I.join(""),x.length,c),S=S.slice(0,E)+P+S.slice(k),i.value=S,t.handleInputLabel(S,!1),void i.setSelectionRange(E,k)}}var S,y=v[0],p=s.match(new RegExp("".concat(y,"+")));return p?(_=p[0],S=s.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),c),i.value=S,t.handleInputLabel(S,!1),i.setSelectionRange(0,_.length),void(a.isTriggerMasked=!0)):void 0}d=h.index||0,r=d+h[0].length;u.length>=f.length?(n=v.slice(m+1),-1<m&&((e=n.length?s.match(new RegExp("(".concat(n.join("|"),")+"))):null)&&(r=(d=e.index||0)+e[0].length),i.setSelectionRange(d,r)),a.isTriggerMasked=!0):(i.setSelectionRange(d,r),a.isTriggerMasked=!1)}}}}}},handleMaskedSelectedDate:function(e,t){var a=this,n=a.internalData,i=a.type,r=a.multiple,l=a.value;if(n.fsTimeout=void 0,!r&&maskedTypes.includes(i)){r=a.$refs.refInputTarget;if(r){i=n.laseFocusMasked;if(!(i&&Date.now()-i<100)){var i=a.computeDateMaskedFormat,u=a.computeMaskChar,o=r.selectionStart||0,s=r.selectionEnd||0,c=r.value,p=_xeUtils.default.map(i.match(new RegExp("(".concat(inputMaskedKeys.join("|"),")+"),"g"))||[],function(e){return e[0]});if(!c){var d,f,m=i.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),u),t=(t&&l&&(d=(""+_xeUtils.default.toNumber(l)).match(/\d/g)||[],f=0,m=i.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),function(e){return d[f++]||e})),p[0]),l=i.match(new RegExp("".concat(t,"+")));if(l)return e.preventDefault(),t=l[0],r.value=m,a.handleInputLabel(m,!1),r.setSelectionRange(0,t.length),void(n.laseFocusMasked=Date.now())}l=!o&&s===c.length&&1<p.length,m=c&&c.length!==i.length;if(l||m){var h,v,t="",s=(m&&c?(h=c.match(/\d/g)||[],v=0,t=i.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),function(){return h[v++]||u})):i.replace(new RegExp("(".concat(inputMaskedKeys.join("|"),")"),"g"),u),p[0]),l=i.match(new RegExp("".concat(s,"+")));if(l)return e.preventDefault(),m=l[0],r.value=t,a.handleInputLabel(t,!1),r.setSelectionRange(0,m.length),void(n.laseFocusMasked=Date.now())}c=i[o];(c=parseInputKayMaps[c]?c:i[o-1])&&(e.preventDefault(),p=i.match(new RegExp(c+"+")))&&(s=p[0]||"",a=(l=p.index||0)+s.length,r.setSelectionRange(l,a),n.isTriggerMasked=!0,n.laseFocusMasked=Date.now())}}}},blurEvent:function(e){var t=this,a=t.reactData,n=t.internalData,i=t.$xeForm,r=t.formItemInfo,l=a.inputValue;t.computeInpImmediate||t.handleChange(l,e),a.visiblePanel||(n=n.inputLabel,a.isActivated=!1,t.afterCheckValue(n)),t.dispatchEvent("blur",{value:l},e),i&&r&&i.triggerItemEvent(e,r.itemConfig.field,l)},focusEvent:function(e){var t=this,a=t.reactData,n=t.internalData,i=n.fsTimeout,r=t.multiple,l=t.editable,u=t.maskedConfig,o=t.computeMaskedOpts,s=t.computePopupOpts.trigger;a.isActivated=!0,i&&clearTimeout(i),s&&"default"!==s?"icon"===s&&t.hidePanel():t.datePickerOpenEvent(e),l&&!r&&((0,_utils.isEnableConf)(u)||o.enabled)&&(n.fsTimeout=setTimeout(function(){t.handleMaskedSelectedDate(e,!0)},20)),t.triggerEvent(e)},clickEvent:function(e){var t=this,a=t.internalData,n=t.multiple,i=t.editable,r=t.maskedConfig,l=a.fsTimeout,u=t.computeMaskedOpts;l&&clearTimeout(l),i&&!n&&((0,_utils.isEnableConf)(r)||u.enabled)&&(a.fsTimeout=setTimeout(function(){t.handleMaskedSelectedDate(e)},10)),t.triggerEvent(e)},keydownEvent:function(e){var t=this,a=t.reactData,n=t.internalData,i=t.type,r=t.editable,l=t.maskedConfig,a=a.visiblePanel,u=t.computeMaskedOpts,o=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),s=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),c=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_LEFT),p=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_RIGHT),d=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ENTER);r&&(d?(r=n.inputLabel,a&&t.hidePanel(),t.afterCheckValue(r)):maskedTypes.includes(i)&&((0,_utils.isEnableConf)(l)||u.enabled)&&(u.isArrow&&(o||s||c||p)?t.handleArrowInputDate(e,o,s,c,p):u.isMasked&&t.handleMaskedInputDate(e))),t.triggerEvent(e)},keyupEvent:function(e){this.triggerEvent(e)},confirmEvent:function(e){var t=this.$refs.refDatePanel;t&&t.confirmByEvent(e),this.hidePanel()},panelChangeEvent:function(e){var t=this.multiple,a=this.autoClose,n=e.value,i=this.computeIsTimeOrDateTimeType;this.handleChange(n,e.$event),t||i||a&&this.hidePanel()},panelConfirmEvent:function(e){this.dispatchEvent("confirm",e,e.$event)},panelRevertEvent:function(e){this.handleInputLabel(e.label,!0)},handleGlobalMousedownEvent:function(e){var t=this,a=t.reactData,n=t.internalData,i=a.visiblePanel,r=a.isActivated,l=t.$refs.refElem,u=t.$refs.refPanelWrapper;!t.computeIsDisabled&&r&&((l=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,u).flag)!==r&&(a.isActivated=l),l||i&&(t.hidePanel(),e=n.inputLabel,t.afterCheckValue(e)))},handleGlobalKeydownEvent:function(e){var t,a=this.reactData,n=a.visiblePanel;this.computeIsDisabled||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),e=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),t&&(a.isActivated=!1),n&&(e||t)&&this.hidePanel())},handleGlobalBlurEvent:function(){var e=this,t=e.reactData,a=e.internalData,n=t.isActivated,i=t.visiblePanel;i&&e.hidePanel(),n&&(t.isActivated=!1),(i||n)&&(e.afterCheckValue(a.inputLabel),t=e.$refs.refInputTarget)&&t.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},handleGlobalScrollEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},updateZindex:function(){var e=this.reactData,t=this.computePopupOpts.zIndex||this.zIndex;t?e.panelIndex=_xeUtils.default.toNumber(t):e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){var a,n,e,t=this,i=t.reactData,r=t.placement,l=i.panelIndex,u=t.$refs.refInputTarget,o=t.$refs.refInputPanel;return o?(a=t.computeBtnTransfer,n=t.computePopupOpts,(e=function(){var e=(0,_dom.updatePanelPlacement)(u,o,{placement:n.placement||r,defaultPlacement:n.defaultPlacement,teleportTo:a}),t=Object.assign(e.style,{zIndex:l});i.panelStyle=t,i.panelPlacement=e.placement})(),t.$nextTick().then(e)):t.$nextTick()},showPanel:function(){var e=this,t=e.reactData,a=e.internalData,n=t.visiblePanel,i=e.computeBtnTransfer,r=e.computePopupOpts,l=e.$refs.refInputPanel;return e.computeIsDisabled||n?e.$nextTick():(t.initialized||(t.initialized=!0,i&&l&&(n=r.appendTo,(0,_dom.getPopupAppendElement)(n).appendChild(l))),a.hpTimeout&&(clearTimeout(a.hpTimeout),a.hpTimeout=void 0),t.isActivated=!0,t.isAniVisible=!0,setTimeout(function(){t.visiblePanel=!0,e.updatePlacement()},10),e.updateZindex(),e.updatePlacement())},datePickerOpenEvent:function(e){this.computeFormReadonly||(e.preventDefault(),this.showPanel())},clickIconEvent:function(e){var t=this.reactData.visiblePanel,a=this.computePopupOpts.trigger;a&&"default"!==a&&"icon"!==a||(t?this.hidePanel():this.datePickerOpenEvent(e))},handleShortcutEvent:function(e){var t=e.option,a=e.$event,n=this,e=n.reactData,i=n.type,e=e.inputValue,r=n.computeShortcutOpts,l=r.autoClose,u=t.code,o=t.clickMethod,s={$datePicker:n,option:t,value:d=e,code:u};if(!o&&u){t=_ui.commands.get(u),e=t?t.datePickerCommandMethod:null;if(e)e(s);else{var c=n.computeDateValueFormat,p=n.computeFirstDayOfWeek;switch(u){case"now":case"prev":case"next":case"minus":case"plus":var d=(0,_util.getDateByCode)(u,d,i,{valueFormat:c,firstDay:p}).value;s.value=d,n.handleChange(d,a);break;default:errLog("vxe.error.notCommands",[u])}}}else{t=o||r.clickMethod;t&&t(s)}l&&n.hidePanel(),n.dispatchEvent("shortcut-click",s,a)},setModelValue:function(e){this.reactData.inputValue=e,this.emitModel(e)},setModelValueByEvent:function(e,t){this.handleChange(t||"",e)},focus:function(){var e=this.reactData,t=this.$refs.refInputTarget;return e.isActivated=!0,t.focus(),this.$nextTick()},blur:function(){var e=this.reactData;return this.$refs.refInputTarget.blur(),e.isActivated=!1,this.$nextTick()},select:function(){var e=this.reactData;return this.$refs.refInputTarget.select(),e.isActivated=!1,this.$nextTick()},renderShortcutBtn:function(e,t,a){var n=this.computeShortcutOpts,i=n.position,r=n.align,l=n.mode,u=this.computeShortcutList;return(0,_utils.isEnableConf)(n)&&u.length&&(i||"left")===t?e("div",{class:"vxe-date-picker--layout-".concat(t,"-wrapper")},[e(_buttonGroup.default,{props:{options:u,mode:l,align:r,vertical:a},on:{click:this.handleShortcutEvent}})]):(0,_ui.renderEmptyElement)(this)},renderPanel:function(e){var t,a,n,i,r,l,u,o,s,c,p,d,f,m,h,v,g,y,_,b,D,E=this,x=E,k=E.$scopedSlots,P=E.reactData,I=E.computePopupOpts;return!1===I.enabled?(0,_ui.renderEmptyElement)(E):(t=x.type,a=P.initialized,n=P.isAniVisible,i=P.visiblePanel,r=P.panelPlacement,l=P.panelStyle,u=P.inputValue,o=E.computeSize,s=E.computeBtnTransfer,c=E.computeTimeOpts,p=E.computeDateStartDate,d=E.computeDateEndDate,f=E.computeShortcutOpts.position,m=k.header,h=k.footer,v=k.top,g=k.bottom,y=k.left,k=k.right,I=I.className,_=0<E.computeShortcutList.length,b=null===(b=x.showConfirmButton)?E.computeIsTimeOrDateTimeType||x.multiple:b,D=null===(D=x.showClearButton)?E.computeIsClearable&&b&&"time"!==t:D,e("div",{ref:"refInputPanel",class:["vxe-table--ignore-clear vxe-date-picker--panel","type--".concat(t),_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(o),o),"is--transfer",s),"ani--leave",n),"ani--enter",i),"show--top",!!(v||m||_&&("top"===f||"header"===f))),"show--bottom",!!(g||h||_&&("bottom"===f||"footer"===f))),"show--left",!!(y||_&&"left"===f)),"show--right",!!(k||_&&"right"===f))],attrs:{placement:r},style:l},a&&(i||n)?[e("div",{ref:"refPanelWrapper",class:["vxe-date-picker--layout-all-wrapper","type--".concat(t),I?_xeUtils.default.isFunction(I)?I({$datePicker:E}):I:"",_defineProperty({},"size--".concat(o),o)]},[v?e("div",{class:"vxe-date-picker--layout-top-wrapper"},v({})):E.renderShortcutBtn(e,"top"),e("div",{class:"vxe-date-picker--layout-body-layout-wrapper"},[y?e("div",{class:"vxe-date-picker--layout-left-wrapper"},y({})):E.renderShortcutBtn(e,"left",!0),e("div",{class:"vxe-date-picker--layout-body-content-wrapper"},[m?e("div",{class:"vxe-date-picker--layout-header-wrapper"},m({})):E.renderShortcutBtn(e,"header"),e("div",{class:"vxe-date-picker--layout-body-wrapper"},[e(_datePanel.default,{ref:"refDatePanel",props:{value:P.inputValue,type:x.type,className:x.className,multiple:x.multiple,limitCount:x.limitCount,startDate:p,endDate:d,defaultDate:x.defaultDate,defaultTime:x.defaultTime,minDate:x.minDate,maxDate:x.maxDate,startDay:x.startDay,labelFormat:x.labelFormat,valueFormat:x.valueFormat,timeFormat:x.timeFormat,timeConfig:c,festivalMethod:x.festivalMethod,disabledMethod:x.disabledMethod,selectDay:x.selectDay},on:{change:E.panelChangeEvent,confirm:E.panelConfirmEvent,revert:E.panelRevertEvent}})]),e("div",{class:"vxe-date-picker--layout-footer-wrapper"},[e("div",{class:"vxe-date-picker--layout-footer-custom"},h?h({}):[E.renderShortcutBtn(e,"footer")]),D||b?e("div",{class:"vxe-date-picker--layout-footer-btns"},[D?e(_button.default,{props:{size:"mini",disabled:""===u||_xeUtils.default.eqNull(u),content:(0,_ui.getI18n)("vxe.button.clear")},on:{click:E.clearValueEvent}}):(0,_ui.renderEmptyElement)(E),b?e(_button.default,{props:{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm")},on:{click:E.confirmEvent}}):(0,_ui.renderEmptyElement)(E)]):(0,_ui.renderEmptyElement)(E)])]),k?e("div",{class:"vxe-date-picker--layout-right-wrapper"},k({})):E.renderShortcutBtn(e,"right",!0)]),g?e("div",{class:"vxe-date-picker--layout-bottom-wrapper"},g({})):E.renderShortcutBtn(e,"bottom")])]:[]))},renderPrefixIcon:function(e){var t=this.$scopedSlots,a=this.prefixIcon,t=t.prefix;return t||a?e("div",{class:"vxe-date-picker--prefix",on:{click:this.clickPrefixEvent}},[e("div",{class:"vxe-date-picker--prefix-icon"},t?(0,_vn.getSlotVNs)(t({})):[e("i",{class:a})])]):null},renderSuffixIcon:function(e){var t=this,a=t.$scopedSlots,n=t.suffixIcon,i=t.reactData.inputValue,a=a.suffix,r=t.computeIsClearable;return e("div",{class:["vxe-date-picker--suffix",{"is--clear":r&&!t.computeIsDisabled&&!(""===i||_xeUtils.default.eqNull(i))}]},[r?e("div",{class:"vxe-date-picker--clear-icon",on:{click:t.clearValueEvent}},[e("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(t),t.renderExtraSuffixIcon(e),a||n?e("div",{class:"vxe-date-picker--suffix-icon",on:{click:t.clickSuffixEvent}},a?(0,_vn.getSlotVNs)(a({})):[e("i",{class:n})]):(0,_ui.renderEmptyElement)(t)])},renderExtraSuffixIcon:function(e){return e("div",{class:"vxe-date-picker--control-icon",on:{click:this.clickIconEvent}},[e("i",{class:["vxe-date-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})])},renderVN:function(e){var t,a,n,i,r=this,l=r.reactData,u=r.className,o=r.inputClassName,s=r.type,c=r.name,p=r.autoComplete,d=l.inputValue,f=l.visiblePanel,m=l.isActivated,l=l.labelFlag,h=r.internalData.inputLabel,v=r.computeSize,g=r.computeIsDisabled,y=r.computePanelLabel;return r.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-date-picker--readonly","type--".concat(s),u]},y):(y=r.computeInputReadonly,t=r.computeInpPlaceholder,a=r.computeIsClearable,n=r.renderPrefixIcon(e),i=r.renderSuffixIcon(e),e("div",{ref:"refElem",class:["vxe-date-picker","type--".concat(s),u,_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(v),v),"is--prefix",!!n),"is--suffix",!!i),"is--visible",f),"is--disabled",g),"is--active",m),"show--clear",a&&!g&&!(""===d||_xeUtils.default.eqNull(d)))],attrs:{spellcheck:!1}},[n||(0,_ui.renderEmptyElement)(r),e("div",{class:"vxe-date-picker--wrapper"},[e("input",{ref:"refInputTarget",class:"vxe-date-picker--inner"+(o?" "+o:""),domProps:{value:l?h:""},attrs:{name:c,type:"text",placeholder:t,readonly:y,disabled:g,autocomplete:p},on:{keydown:r.keydownEvent,keyup:r.keyupEvent,click:r.clickEvent,input:r.inputEvent,change:r.changeEvent,focus:r.focusEvent,blur:r.blurEvent}})]),i||(0,_ui.renderEmptyElement)(r),r.renderPanel(e)]))}},watch:{computePanelLabel:function(e){this.handleInputLabel(e,!0)},value:function(){this.updateModelValue()}},created:function(){var e=this,t=e,a=(e.internalData=createInternalData(),t.type),n=t.multiple,t=t.maskedConfig;(0,_utils.isEnableConf)(t)&&(n&&errLog("vxe.error.notSupportProp",["multiple","control-config.enabled=true","control-config.enabled=false"]),maskedTypes.includes(a)||warnLog("vxe.error.notSupportProp",["control-config.enabled=true","type=".concat(a),"type=".concat(maskedTypes.join("|"))])),e.updateModelValue(),_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"keydown",e.handleGlobalKeydownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent),_ui.globalEvents.on(e,"resize",e.handleGlobalResizeEvent),_ui.globalEvents.on(e,"scroll",e.handleGlobalScrollEvent)},beforeDestroy:function(){var e=this,t=e.reactData,a=e.internalData,n=e.$refs.refInputPanel;n&&n.parentNode&&n.parentNode.removeChild(n),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"keydown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize"),_ui.globalEvents.off(e,"scroll"),_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(a,createInternalData())},render:function(e){return this.renderVN(e)}});
|