vxe-pc-ui 3.17.7 → 3.17.8
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 +2 -2
- package/es/button-group/style.css +1 -1
- package/es/button-group/style.min.css +1 -1
- package/es/color-picker/src/color-picker.js +2 -2
- package/es/date-picker/src/date-picker.js +2 -2
- package/es/date-range-picker/src/date-range-picker.js +2 -2
- package/es/drawer/src/drawer.js +2 -2
- package/es/icon/style.css +1 -1
- package/es/icon-picker/src/icon-picker.js +2 -2
- package/es/menu/src/menu.js +2 -2
- package/es/modal/src/modal.js +2 -2
- package/es/select/src/select.js +2 -2
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table-select/src/table-select.js +2 -2
- package/es/tooltip/src/tooltip.js +72 -127
- package/es/tree/src/tree.js +2 -2
- package/es/tree-select/src/tree-select.js +2 -2
- package/es/ui/index.js +4 -4
- package/es/ui/src/dom.js +114 -81
- package/es/ui/src/log.js +1 -1
- package/es/vxe-button-group/style.css +1 -1
- package/es/vxe-button-group/style.min.css +1 -1
- package/lib/button/src/button.js +1 -1
- package/lib/button/src/button.min.js +1 -1
- package/lib/button-group/style/style.css +1 -1
- package/lib/button-group/style/style.min.css +1 -1
- package/lib/color-picker/src/color-picker.js +1 -1
- package/lib/color-picker/src/color-picker.min.js +1 -1
- package/lib/date-picker/src/date-picker.js +1 -1
- package/lib/date-picker/src/date-picker.min.js +1 -1
- package/lib/date-range-picker/src/date-range-picker.js +1 -1
- package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
- package/lib/drawer/src/drawer.js +1 -1
- package/lib/drawer/src/drawer.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 +1 -1
- package/lib/icon-picker/src/icon-picker.min.js +1 -1
- package/lib/index.umd.js +204 -222
- package/lib/index.umd.min.js +1 -1
- package/lib/menu/src/menu.js +1 -1
- package/lib/menu/src/menu.min.js +1 -1
- package/lib/modal/src/modal.js +1 -1
- package/lib/modal/src/modal.min.js +1 -1
- package/lib/select/src/select.js +1 -1
- package/lib/select/src/select.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table-select/src/table-select.js +1 -1
- package/lib/table-select/src/table-select.min.js +1 -1
- package/lib/tooltip/src/tooltip.js +78 -126
- package/lib/tooltip/src/tooltip.min.js +1 -1
- package/lib/tree/src/tree.js +3 -2
- package/lib/tree/src/tree.min.js +1 -1
- package/lib/tree-select/src/tree-select.js +1 -1
- package/lib/tree-select/src/tree-select.min.js +1 -1
- package/lib/ui/index.js +4 -4
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +109 -79
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-button-group/style/style.css +1 -1
- package/lib/vxe-button-group/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/button/src/button.ts +2 -2
- package/packages/color-picker/src/color-picker.ts +2 -2
- package/packages/date-picker/src/date-picker.ts +2 -2
- package/packages/date-range-picker/src/date-range-picker.ts +2 -2
- package/packages/drawer/src/drawer.ts +2 -2
- package/packages/icon-picker/src/icon-picker.ts +2 -2
- package/packages/menu/src/menu.ts +2 -2
- package/packages/modal/src/modal.ts +2 -2
- package/packages/select/src/select.ts +2 -2
- package/packages/table-select/src/table-select.ts +2 -2
- package/packages/tooltip/src/tooltip.ts +74 -126
- package/packages/tree/src/tree.ts +2 -2
- package/packages/tree-select/src/tree-select.ts +2 -2
- package/packages/ui/index.ts +3 -3
- package/packages/ui/src/dom.ts +125 -84
- package/styles/components/button-group.scss +4 -2
- package/types/components/table.d.ts +6 -0
- package/types/components/tooltip.d.ts +4 -0
- /package/es/icon/{iconfont.1787197085834.ttf → iconfont.1787216119203.ttf} +0 -0
- /package/es/icon/{iconfont.1787197085834.woff → iconfont.1787216119203.woff} +0 -0
- /package/es/icon/{iconfont.1787197085834.woff2 → iconfont.1787216119203.woff2} +0 -0
- /package/es/{iconfont.1787197085834.ttf → iconfont.1787216119203.ttf} +0 -0
- /package/es/{iconfont.1787197085834.woff → iconfont.1787216119203.woff} +0 -0
- /package/es/{iconfont.1787197085834.woff2 → iconfont.1787216119203.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1787197085834.ttf → iconfont.1787216119203.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1787197085834.woff → iconfont.1787216119203.woff} +0 -0
- /package/lib/icon/style/{iconfont.1787197085834.woff2 → iconfont.1787216119203.woff2} +0 -0
- /package/lib/{iconfont.1787197085834.ttf → iconfont.1787216119203.ttf} +0 -0
- /package/lib/{iconfont.1787197085834.woff → iconfont.1787216119203.woff} +0 -0
- /package/lib/{iconfont.1787197085834.woff2 → iconfont.1787216119203.woff2} +0 -0
|
@@ -507,7 +507,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
507
507
|
if (btnTransfer) {
|
|
508
508
|
if (panelElem) {
|
|
509
509
|
var appendTo = popupOpts.appendTo;
|
|
510
|
-
(0, _dom.
|
|
510
|
+
(0, _dom.getPopupAppendElement)(appendTo).appendChild(panelElem);
|
|
511
511
|
}
|
|
512
512
|
}
|
|
513
513
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.getRowUniqueId=getRowUniqueId;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_input=_interopRequireDefault(require("../../input/src/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,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.")}var _createComponentLog=(0,_log.createComponentLog)("table-select"),errLog=_createComponentLog.errLog;function getRowUniqueId(){return _xeUtils.default.uniqueId("row_")}function createReactData(){return{initialized:!1,tableColumns:[],fullOptionList:[],panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1}}function createInternalData(){return{fullRowMaps:{}}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableSelect",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:[String,Number,Array],clearable:{type:Boolean,default:function(){return(0,_ui.getConfig)().tableSelect.clearable}},placeholder:{type:String,default:function(){return _xeUtils.default.eqNull((0,_ui.getConfig)().tableSelect.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().tableSelect.placeholder}},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},multiple:Boolean,className:[String,Function],prefixIcon:String,placement:String,columns:Array,options:Array,optionProps:Object,lazyOptions:Array,zIndex:Number,size:{type:String,default:function(){return(0,_ui.getConfig)().tableSelect.size||(0,_ui.getConfig)().size}},popupConfig:Object,gridConfig:Object,transfer:{type:Boolean,default:null}},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeTableSelect:this}},data:function(){var e=_xeUtils.default.uniqueId(),t=createReactData();return Object.assign(Object.assign({},{}),{xID:e,reactData:t,gridEvents:{}})},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.$xeForm,n=e.$xeTable,i=e.$xeModal,a=e.$xeDrawer,l=e.transfer,e=e.computePopupOpts;if(_xeUtils.default.isBoolean(e.transfer))return e.transfer;if(null===l){e=(0,_ui.getConfig)().tableSelect.transfer;if(_xeUtils.default.isBoolean(e))return e;if(n||i||a||t)return!0}return l},computePropsOpts:function(){return this.optionProps||{}},computeRowOpts:function(){var e=this.computeGridOpts;return Object.assign({},e.rowConfig,{isCurrent:!0})},computeRowKeyField:function(){return this.computeRowOpts.keyField||"_X_ROW_KEY"},computeLabelField:function(){return this.computePropsOpts.label||"label"},computeValueField:function(){return this.computePropsOpts.value||"value"},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().tableSelect.popupConfig,this.popupConfig)},computeGridOpts:function(){return Object.assign({},(0,_ui.getConfig)().tableSelect.gridConfig,this.gridConfig,{data:void 0})},computeSelectGridOpts:function(){var a=this,e=a.computeGridOpts,l=e.pagerConfig,t=e.proxyConfig;if(t){var n,o,r,i=t.ajax;if(i&&i.query)return n=_xeUtils.default.clone(t,!0),(o=i.query)&&(r=t.response||t.props||{},Object.assign(n.ajax,{query:function(e){for(var t=arguments.length,n=new Array(1<t?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return Promise.resolve(o.apply(void 0,[e].concat(n))).then(function(e){var t,n=[];return n=l?(t=r.result,(_xeUtils.default.isFunction(t)?t({data:e,$table:null,$grid:null,$gantt:null}):_xeUtils.default.get(e,t||"result"))||[]):((t=r.list)?_xeUtils.default.isFunction(t)?t({data:e,$table:null,$grid:null,$gantt:null}):_xeUtils.default.get(e,t):e)||[],a.cacheDataMap(n||[]),e})}})),Object.assign({},e,{proxyConfig:n})}return e},computeSelectLabel:function(){var e=this,t=e.reactData,n=e.value,i=e.lazyOptions,t=t.fullOptionList,a=e.internalData.fullRowMaps,l=e.computeValueField,o=e.computeLabelField;return t?(_xeUtils.default.isArray(n)?n:[n]).map(function(t){var e=a[t];if(e)return e.item[o];if(i){e=i.find(function(e){return e[l]===t});if(e)return e[o]}return t}).join(", "):""},computePopupWrapperStyle:function(){var e=this.computePopupOpts,t=e.height,e=e.width,n={};return e&&(n.width=(0,_dom.toCssUnit)(e)),t&&(n.height=(0,_dom.toCssUnit)(t)),n}}),methods:{dispatchEvent:function(e,t,n){this.$emit(e,(0,_ui.createEvent)(n,{$tableSelect:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},getRowid:function(e){e=e[this.computeRowKeyField];return e?encodeURIComponent(e):""},getRowsByValue:function(e){var t=this.internalData.fullRowMaps,n=[];return(_xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]).forEach(function(e){e=t[e];e&&n.push(e.item)}),n},updateModel:function(n){var i=this,a=i.multiple;i.$nextTick(function(){var e,t=i.$refs.refGrid;t&&(e=i.getRowsByValue(n)).length&&(a?t.setCheckboxRow(e,!0):t.setRadioRow(e[0]))})},loadTableColumn:function(e){var t,n,i,a,l=this.reactData;e&&e.length&&(t=this.multiple,a=i=!(n=[]),e.forEach(function(e){i||"radio"!==e.type?a||"checkbox"!==e.type||(a=!0):i=!0,n.push(e)}),t?a||n.unshift({type:"checkbox",width:70}):i||n.unshift({type:"radio",width:70}),l.tableColumns=n)},cacheDataMap:function(e){var a=this,t=a,n=a.reactData,i=a.internalData,l=t.options,o=a.computeRowKeyField,r=a.computeValueField,u=a.computeGridOpts,s=u.treeConfig,u=u.pagerConfig,c={},p={};s||_xeUtils.default.arrayEach(e||l||[],function(e,t,n){var i=(i=a.getRowid(e))||getRowUniqueId(),i=(p[i]&&errLog("vxe.error.repeatKey",[o,i]),p[i]=!0,e[r]);c[i]&&errLog("vxe.error.repeatKey",[r,i]),c[i]={item:e,index:t,items:n,parent:null,nodes:[]}}),n.fullOptionList=e||l||[],i.fullRowMaps=u?Object.assign({},i.fullRowMaps,c):c,a.updateModel(t.value)},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(){function e(){var e=(0,_dom.updatePanelPlacement)(l,o,{placement:u.placement||i,defaultPlacement:u.defaultPlacement,teleportTo:r}),t=Object.assign(e.style,{zIndex:a});n.panelStyle=t,n.panelPlacement=e.placement}var t=this,n=t.reactData,i=t.placement,a=n.panelIndex,l=t.$refs.refElem,o=t.$refs.refOptionPanel,r=t.computeBtnTransfer,u=t.computePopupOpts;return e(),t.$nextTick().then(e)},showOptionPanel:function(){var e,t=this,n=t,i=t.reactData,a=t.internalData,l=n.loading,o=t.computePopupOpts;l||t.computeIsDisabled||(a.vpTimeout&&clearTimeout(a.vpTimeout),a.hpTimeout&&clearTimeout(a.hpTimeout),i.initialized||(i.initialized=!0,l=t.computeBtnTransfer,e=t.$refs.refOptionPanel,l&&e&&(l=o.appendTo,(0,_dom.getPopupContainer)(l).appendChild(e))),i.isActivated=!0,i.isAniVisible=!0,a.vpTimeout=setTimeout(function(){i.visiblePanel=!0,t.updateModel(n.value),a.vpTimeout=void 0,t.updatePlacement()},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,n){var i=this,a=i,l=i.$xeForm,o=i.formItemInfo;i.emitModel(t),t!==a.value&&(i.dispatchEvent("change",{value:t,row:n,option:n},e),l)&&o&&l.triggerItemEvent(e,o.itemConfig.field,t)},clearValueEvent:function(e,t){this.changeEvent(e,t,null),this.dispatchEvent("clear",{value:t},e)},clearEvent:function(e,t){var n=this.$refs.refGrid;n&&(n.clearRadioRow(),n.clearCheckboxRow()),this.clearValueEvent(t,null),this.hideOptionPanel()},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())},handleGlobalMousedownEvent:function(e){var t,n,i=this,a=i.reactData,l=a.visiblePanel;i.computeIsDisabled||(t=i.$refs.refElem,n=i.$refs.refOptionPanel,a.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,n).flag,l&&!a.isActivated&&i.hideOptionPanel())},handleGlobalBlurEvent:function(){var e=this.reactData,t=e.visiblePanel,n=e.isActivated;t&&this.hideOptionPanel(),n&&(e.isActivated=!1),(t||n)&&(e=this.$refs.refInput)&&e.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},focusEvent:function(e){var t=this.reactData;this.computeIsDisabled||t.visiblePanel||(t.triggerFocusPanel=!0,this.showOptionPanel(),setTimeout(function(){t.triggerFocusPanel=!1},150)),this.dispatchEvent("focus",{},e)},clickEvent:function(e){this.togglePanelEvent(e),this.dispatchEvent("click",{},e)},blurEvent:function(e){this.reactData.isActivated=!1,this.dispatchEvent("blur",{},e)},togglePanelEvent:function(e){var t=this.reactData;e.$event.preventDefault(),t.triggerFocusPanel?t.triggerFocusPanel=!1:t.visiblePanel?this.hideOptionPanel():this.showOptionPanel()},radioChangeEvent:function(e){var t=e.$event,e=e.row,n=e[this.computeValueField];this.changeEvent(t,n,e),this.hideOptionPanel()},checkboxChangeEvent:function(e){var t=e.$grid,n=e.$event,e=e.row,i=this.computeValueField;t&&(t=t.getCheckboxRecords().map(function(e){return e[i]}),this.changeEvent(n,t,e))},checkboxAllEvent:function(e){this.checkboxChangeEvent(e)},renderVN:function(e){var t=_ui.VxeUI.getComponent("vxe-grid"),n=this,i=n,a=n.$scopedSlots,l=n.reactData,o=i.className,r=i.options,u=i.loading,s=l.initialized,c=l.isActivated,p=l.isAniVisible,d=l.visiblePanel,f=l.tableColumns,m=n.computeSize,v=n.computeIsDisabled,g=n.computeSelectLabel,h=n.computeBtnTransfer,b=n.computeSelectGridOpts,x=n.computeRowOpts,_=n.computePopupWrapperStyle,y=a.header,E=a.footer,P=a.prefix,O=n.computePopupOpts.className;return n.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-table-select--readonly",o]},[e("span",{class:"vxe-table-select-label"},g)]):e("div",{ref:"refElem",class:["vxe-table-select",o?_xeUtils.default.isFunction(o)?o({$tableSelect:n}):o:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(m),m),"is--visible",d),"is--disabled",v),"is--loading",u),"is--active",c)]},[e(_input.default,{ref:"refInput",props:{clearable:i.clearable,placeholder:i.placeholder,editable:!1,disabled:v,type:"text",prefixIcon:i.prefixIcon,suffixIcon:u?(0,_ui.getIcon)().TABLE_SELECT_LOADED:d?(0,_ui.getIcon)().TABLE_SELECT_OPEN:(0,_ui.getIcon)().TABLE_SELECT_CLOSE,value:u?(0,_ui.getI18n)("vxe.select.loadingText"):g},on:{clear:n.clearEvent,click:n.clickEvent,focus:n.focusEvent,blur:n.blurEvent,"suffix-click":n.togglePanelEvent},scopedSlots:P?{prefix:function(){return P({})}}:{}}),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-table-select--panel",O?_xeUtils.default.isFunction(O)?O({$tableSelect:n}):O:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(m),m),"is--transfer",h),"ani--leave",!u&&p),"ani--enter",!u&&d)],attrs:{placement:l.panelPlacement},style:l.panelStyle},s?[e("div",{class:"vxe-table-select--panel-wrapper"},[y?e("div",{class:"vxe-table-select--panel-header"},y({})):(0,_ui.renderEmptyElement)(n),e("div",{class:"vxe-table-select--panel-body"},[e("div",{ref:"refGridWrapper",class:"vxe-table-select-grid--wrapper",style:_},[t?e(t,{ref:"refGrid",class:"vxe-table-select--grid",props:Object.assign(Object.assign({},b),{rowConfig:x,data:r,columns:f.length?f:b.columns,height:"100%",autoResize:!0}),on:Object.assign(Object.assign({},n.gridEvents),{"radio-change":n.radioChangeEvent,"checkbox-change":n.checkboxChangeEvent,"checkbox-all":n.checkboxAllEvent}),scopedSlots:Object.assign({},a,{header:void 0,footer:void 0,prefixSlot:void 0})}):(0,_ui.renderEmptyElement)(n)])]),E?e("div",{class:"vxe-table-select--panel-footer"},E({})):(0,_ui.renderEmptyElement)(n)])]:[])])}},watch:{options:function(){this.cacheDataMap()},columns:function(e){this.loadTableColumn(e)},value:function(e){this.updateModel(e)}},created:function(){var n=this,e=n,i=(n.internalData=createInternalData(),n.gridEvents);["form-submit","form-reset","form-collapse","page-change"].forEach(function(t){i[(0,_vn.getOnName)(t)]=function(e){n.dispatchEvent(t,e,e.$event)}}),n.loadTableColumn(e.columns),n.cacheDataMap()},mounted:function(){var e=this,t=e,n=e.reactData,i=_ui.VxeUI.getComponent("vxe-grid"),t=(e.$nextTick(function(){i||errLog("vxe.error.reqComp",["vxe-grid"])}),t.gridConfig);t&&t.proxyConfig&&!1!==t.proxyConfig.autoLoad&&(n.initialized=!0),_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,i=e.$refs.refOptionPanel;i&&i.parentNode&&i.parentNode.removeChild(i),_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
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.getRowUniqueId=getRowUniqueId;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_input=_interopRequireDefault(require("../../input/src/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,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.")}var _createComponentLog=(0,_log.createComponentLog)("table-select"),errLog=_createComponentLog.errLog;function getRowUniqueId(){return _xeUtils.default.uniqueId("row_")}function createReactData(){return{initialized:!1,tableColumns:[],fullOptionList:[],panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1}}function createInternalData(){return{fullRowMaps:{}}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableSelect",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:[String,Number,Array],clearable:{type:Boolean,default:function(){return(0,_ui.getConfig)().tableSelect.clearable}},placeholder:{type:String,default:function(){return _xeUtils.default.eqNull((0,_ui.getConfig)().tableSelect.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().tableSelect.placeholder}},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},multiple:Boolean,className:[String,Function],prefixIcon:String,placement:String,columns:Array,options:Array,optionProps:Object,lazyOptions:Array,zIndex:Number,size:{type:String,default:function(){return(0,_ui.getConfig)().tableSelect.size||(0,_ui.getConfig)().size}},popupConfig:Object,gridConfig:Object,transfer:{type:Boolean,default:null}},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeTableSelect:this}},data:function(){var e=_xeUtils.default.uniqueId(),t=createReactData();return Object.assign(Object.assign({},{}),{xID:e,reactData:t,gridEvents:{}})},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.$xeForm,n=e.$xeTable,i=e.$xeModal,a=e.$xeDrawer,l=e.transfer,e=e.computePopupOpts;if(_xeUtils.default.isBoolean(e.transfer))return e.transfer;if(null===l){e=(0,_ui.getConfig)().tableSelect.transfer;if(_xeUtils.default.isBoolean(e))return e;if(n||i||a||t)return!0}return l},computePropsOpts:function(){return this.optionProps||{}},computeRowOpts:function(){var e=this.computeGridOpts;return Object.assign({},e.rowConfig,{isCurrent:!0})},computeRowKeyField:function(){return this.computeRowOpts.keyField||"_X_ROW_KEY"},computeLabelField:function(){return this.computePropsOpts.label||"label"},computeValueField:function(){return this.computePropsOpts.value||"value"},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().tableSelect.popupConfig,this.popupConfig)},computeGridOpts:function(){return Object.assign({},(0,_ui.getConfig)().tableSelect.gridConfig,this.gridConfig,{data:void 0})},computeSelectGridOpts:function(){var a=this,e=a.computeGridOpts,l=e.pagerConfig,t=e.proxyConfig;if(t){var n,o,r,i=t.ajax;if(i&&i.query)return n=_xeUtils.default.clone(t,!0),(o=i.query)&&(r=t.response||t.props||{},Object.assign(n.ajax,{query:function(e){for(var t=arguments.length,n=new Array(1<t?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return Promise.resolve(o.apply(void 0,[e].concat(n))).then(function(e){var t,n=[];return n=l?(t=r.result,(_xeUtils.default.isFunction(t)?t({data:e,$table:null,$grid:null,$gantt:null}):_xeUtils.default.get(e,t||"result"))||[]):((t=r.list)?_xeUtils.default.isFunction(t)?t({data:e,$table:null,$grid:null,$gantt:null}):_xeUtils.default.get(e,t):e)||[],a.cacheDataMap(n||[]),e})}})),Object.assign({},e,{proxyConfig:n})}return e},computeSelectLabel:function(){var e=this,t=e.reactData,n=e.value,i=e.lazyOptions,t=t.fullOptionList,a=e.internalData.fullRowMaps,l=e.computeValueField,o=e.computeLabelField;return t?(_xeUtils.default.isArray(n)?n:[n]).map(function(t){var e=a[t];if(e)return e.item[o];if(i){e=i.find(function(e){return e[l]===t});if(e)return e[o]}return t}).join(", "):""},computePopupWrapperStyle:function(){var e=this.computePopupOpts,t=e.height,e=e.width,n={};return e&&(n.width=(0,_dom.toCssUnit)(e)),t&&(n.height=(0,_dom.toCssUnit)(t)),n}}),methods:{dispatchEvent:function(e,t,n){this.$emit(e,(0,_ui.createEvent)(n,{$tableSelect:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},getRowid:function(e){e=e[this.computeRowKeyField];return e?encodeURIComponent(e):""},getRowsByValue:function(e){var t=this.internalData.fullRowMaps,n=[];return(_xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]).forEach(function(e){e=t[e];e&&n.push(e.item)}),n},updateModel:function(n){var i=this,a=i.multiple;i.$nextTick(function(){var e,t=i.$refs.refGrid;t&&(e=i.getRowsByValue(n)).length&&(a?t.setCheckboxRow(e,!0):t.setRadioRow(e[0]))})},loadTableColumn:function(e){var t,n,i,a,l=this.reactData;e&&e.length&&(t=this.multiple,a=i=!(n=[]),e.forEach(function(e){i||"radio"!==e.type?a||"checkbox"!==e.type||(a=!0):i=!0,n.push(e)}),t?a||n.unshift({type:"checkbox",width:70}):i||n.unshift({type:"radio",width:70}),l.tableColumns=n)},cacheDataMap:function(e){var a=this,t=a,n=a.reactData,i=a.internalData,l=t.options,o=a.computeRowKeyField,r=a.computeValueField,u=a.computeGridOpts,s=u.treeConfig,u=u.pagerConfig,c={},p={};s||_xeUtils.default.arrayEach(e||l||[],function(e,t,n){var i=(i=a.getRowid(e))||getRowUniqueId(),i=(p[i]&&errLog("vxe.error.repeatKey",[o,i]),p[i]=!0,e[r]);c[i]&&errLog("vxe.error.repeatKey",[r,i]),c[i]={item:e,index:t,items:n,parent:null,nodes:[]}}),n.fullOptionList=e||l||[],i.fullRowMaps=u?Object.assign({},i.fullRowMaps,c):c,a.updateModel(t.value)},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(){function e(){var e=(0,_dom.updatePanelPlacement)(l,o,{placement:u.placement||i,defaultPlacement:u.defaultPlacement,teleportTo:r}),t=Object.assign(e.style,{zIndex:a});n.panelStyle=t,n.panelPlacement=e.placement}var t=this,n=t.reactData,i=t.placement,a=n.panelIndex,l=t.$refs.refElem,o=t.$refs.refOptionPanel,r=t.computeBtnTransfer,u=t.computePopupOpts;return e(),t.$nextTick().then(e)},showOptionPanel:function(){var e,t=this,n=t,i=t.reactData,a=t.internalData,l=n.loading,o=t.computePopupOpts;l||t.computeIsDisabled||(a.vpTimeout&&clearTimeout(a.vpTimeout),a.hpTimeout&&clearTimeout(a.hpTimeout),i.initialized||(i.initialized=!0,l=t.computeBtnTransfer,e=t.$refs.refOptionPanel,l&&e&&(l=o.appendTo,(0,_dom.getPopupAppendElement)(l).appendChild(e))),i.isActivated=!0,i.isAniVisible=!0,a.vpTimeout=setTimeout(function(){i.visiblePanel=!0,t.updateModel(n.value),a.vpTimeout=void 0,t.updatePlacement()},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,n){var i=this,a=i,l=i.$xeForm,o=i.formItemInfo;i.emitModel(t),t!==a.value&&(i.dispatchEvent("change",{value:t,row:n,option:n},e),l)&&o&&l.triggerItemEvent(e,o.itemConfig.field,t)},clearValueEvent:function(e,t){this.changeEvent(e,t,null),this.dispatchEvent("clear",{value:t},e)},clearEvent:function(e,t){var n=this.$refs.refGrid;n&&(n.clearRadioRow(),n.clearCheckboxRow()),this.clearValueEvent(t,null),this.hideOptionPanel()},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())},handleGlobalMousedownEvent:function(e){var t,n,i=this,a=i.reactData,l=a.visiblePanel;i.computeIsDisabled||(t=i.$refs.refElem,n=i.$refs.refOptionPanel,a.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,n).flag,l&&!a.isActivated&&i.hideOptionPanel())},handleGlobalBlurEvent:function(){var e=this.reactData,t=e.visiblePanel,n=e.isActivated;t&&this.hideOptionPanel(),n&&(e.isActivated=!1),(t||n)&&(e=this.$refs.refInput)&&e.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},focusEvent:function(e){var t=this.reactData;this.computeIsDisabled||t.visiblePanel||(t.triggerFocusPanel=!0,this.showOptionPanel(),setTimeout(function(){t.triggerFocusPanel=!1},150)),this.dispatchEvent("focus",{},e)},clickEvent:function(e){this.togglePanelEvent(e),this.dispatchEvent("click",{},e)},blurEvent:function(e){this.reactData.isActivated=!1,this.dispatchEvent("blur",{},e)},togglePanelEvent:function(e){var t=this.reactData;e.$event.preventDefault(),t.triggerFocusPanel?t.triggerFocusPanel=!1:t.visiblePanel?this.hideOptionPanel():this.showOptionPanel()},radioChangeEvent:function(e){var t=e.$event,e=e.row,n=e[this.computeValueField];this.changeEvent(t,n,e),this.hideOptionPanel()},checkboxChangeEvent:function(e){var t=e.$grid,n=e.$event,e=e.row,i=this.computeValueField;t&&(t=t.getCheckboxRecords().map(function(e){return e[i]}),this.changeEvent(n,t,e))},checkboxAllEvent:function(e){this.checkboxChangeEvent(e)},renderVN:function(e){var t=_ui.VxeUI.getComponent("vxe-grid"),n=this,i=n,a=n.$scopedSlots,l=n.reactData,o=i.className,r=i.options,u=i.loading,s=l.initialized,c=l.isActivated,p=l.isAniVisible,d=l.visiblePanel,f=l.tableColumns,m=n.computeSize,v=n.computeIsDisabled,g=n.computeSelectLabel,h=n.computeBtnTransfer,b=n.computeSelectGridOpts,x=n.computeRowOpts,_=n.computePopupWrapperStyle,y=a.header,E=a.footer,P=a.prefix,O=n.computePopupOpts.className;return n.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-table-select--readonly",o]},[e("span",{class:"vxe-table-select-label"},g)]):e("div",{ref:"refElem",class:["vxe-table-select",o?_xeUtils.default.isFunction(o)?o({$tableSelect:n}):o:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(m),m),"is--visible",d),"is--disabled",v),"is--loading",u),"is--active",c)]},[e(_input.default,{ref:"refInput",props:{clearable:i.clearable,placeholder:i.placeholder,editable:!1,disabled:v,type:"text",prefixIcon:i.prefixIcon,suffixIcon:u?(0,_ui.getIcon)().TABLE_SELECT_LOADED:d?(0,_ui.getIcon)().TABLE_SELECT_OPEN:(0,_ui.getIcon)().TABLE_SELECT_CLOSE,value:u?(0,_ui.getI18n)("vxe.select.loadingText"):g},on:{clear:n.clearEvent,click:n.clickEvent,focus:n.focusEvent,blur:n.blurEvent,"suffix-click":n.togglePanelEvent},scopedSlots:P?{prefix:function(){return P({})}}:{}}),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-table-select--panel",O?_xeUtils.default.isFunction(O)?O({$tableSelect:n}):O:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(m),m),"is--transfer",h),"ani--leave",!u&&p),"ani--enter",!u&&d)],attrs:{placement:l.panelPlacement},style:l.panelStyle},s?[e("div",{class:"vxe-table-select--panel-wrapper"},[y?e("div",{class:"vxe-table-select--panel-header"},y({})):(0,_ui.renderEmptyElement)(n),e("div",{class:"vxe-table-select--panel-body"},[e("div",{ref:"refGridWrapper",class:"vxe-table-select-grid--wrapper",style:_},[t?e(t,{ref:"refGrid",class:"vxe-table-select--grid",props:Object.assign(Object.assign({},b),{rowConfig:x,data:r,columns:f.length?f:b.columns,height:"100%",autoResize:!0}),on:Object.assign(Object.assign({},n.gridEvents),{"radio-change":n.radioChangeEvent,"checkbox-change":n.checkboxChangeEvent,"checkbox-all":n.checkboxAllEvent}),scopedSlots:Object.assign({},a,{header:void 0,footer:void 0,prefixSlot:void 0})}):(0,_ui.renderEmptyElement)(n)])]),E?e("div",{class:"vxe-table-select--panel-footer"},E({})):(0,_ui.renderEmptyElement)(n)])]:[])])}},watch:{options:function(){this.cacheDataMap()},columns:function(e){this.loadTableColumn(e)},value:function(e){this.updateModel(e)}},created:function(){var n=this,e=n,i=(n.internalData=createInternalData(),n.gridEvents);["form-submit","form-reset","form-collapse","page-change"].forEach(function(t){i[(0,_vn.getOnName)(t)]=function(e){n.dispatchEvent(t,e,e.$event)}}),n.loadTableColumn(e.columns),n.cacheDataMap()},mounted:function(){var e=this,t=e,n=e.reactData,i=_ui.VxeUI.getComponent("vxe-grid"),t=(e.$nextTick(function(){i||errLog("vxe.error.reqComp",["vxe-grid"])}),t.gridConfig);t&&t.proxyConfig&&!1!==t.proxyConfig.autoLoad&&(n.initialized=!0),_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,i=e.$refs.refOptionPanel;i&&i.parentNode&&i.parentNode.removeChild(i),_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)}});
|
|
@@ -157,6 +157,12 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
157
157
|
default: function _default() {
|
|
158
158
|
return (0, _ui.getConfig)().tooltip.leaveDelay;
|
|
159
159
|
}
|
|
160
|
+
},
|
|
161
|
+
appendTo: {
|
|
162
|
+
type: [String, Function],
|
|
163
|
+
default: function _default() {
|
|
164
|
+
return (0, _ui.getConfig)().tooltip.appendTo;
|
|
165
|
+
}
|
|
160
166
|
}
|
|
161
167
|
},
|
|
162
168
|
data: function data() {
|
|
@@ -261,24 +267,59 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
261
267
|
var $xeTooltip = this;
|
|
262
268
|
return $xeTooltip.handleVisible(target, content);
|
|
263
269
|
},
|
|
264
|
-
|
|
270
|
+
updateTipStyle: function updateTipStyle() {
|
|
265
271
|
var $xeTooltip = this;
|
|
272
|
+
var props = $xeTooltip;
|
|
266
273
|
var reactData = $xeTooltip.reactData;
|
|
267
|
-
var
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
274
|
+
var placement = props.placement,
|
|
275
|
+
defaultPlacement = props.defaultPlacement,
|
|
276
|
+
isArrow = props.isArrow;
|
|
277
|
+
var targetElem = reactData.tipTarget,
|
|
278
|
+
tipStore = reactData.tipStore,
|
|
279
|
+
tipPos = reactData.tipPos,
|
|
280
|
+
tipZindex = reactData.tipZindex;
|
|
281
|
+
var panelElem = $xeTooltip.$refs.refElem;
|
|
282
|
+
if (!targetElem || !panelElem) {
|
|
283
|
+
return;
|
|
284
|
+
}
|
|
285
|
+
var targetRect = targetElem.getBoundingClientRect();
|
|
286
|
+
var targetWidth = targetElem.offsetWidth;
|
|
287
|
+
var targetHeight = targetElem.offsetHeight;
|
|
288
|
+
var panelWidth = panelElem.offsetWidth;
|
|
289
|
+
var targetLeft = targetRect.left;
|
|
290
|
+
var targetTop = targetRect.top;
|
|
291
|
+
// 支持特殊定位逻辑
|
|
292
|
+
var left = targetLeft;
|
|
293
|
+
var top = targetTop + targetHeight;
|
|
294
|
+
if (tipPos && (tipPos.oLeft || tipPos.oTop)) {
|
|
295
|
+
if (isArrow) {
|
|
296
|
+
left = left + Math.max(8, Math.min(targetWidth - 8, tipPos.oLeft)) - panelWidth / 2;
|
|
297
|
+
} else {
|
|
298
|
+
left = tipPos.x + 1;
|
|
299
|
+
top = tipPos.y + 1;
|
|
281
300
|
}
|
|
301
|
+
} else {
|
|
302
|
+
left = targetLeft + (targetWidth - panelWidth) / 2;
|
|
303
|
+
}
|
|
304
|
+
var ppObj = (0, _dom.updatePanelPlacement)(targetElem, panelElem, {
|
|
305
|
+
defaultTop: top,
|
|
306
|
+
defaultLeft: left,
|
|
307
|
+
placement: placement,
|
|
308
|
+
defaultPlacement: defaultPlacement,
|
|
309
|
+
teleportTo: true
|
|
310
|
+
});
|
|
311
|
+
var panelStyle = Object.assign(ppObj.style, {
|
|
312
|
+
zIndex: tipZindex
|
|
313
|
+
});
|
|
314
|
+
tipStore.placement = ppObj.placement;
|
|
315
|
+
tipStore.style = panelStyle;
|
|
316
|
+
tipStore.arrowStyle.left = "".concat(ppObj.arrowLeft, "px");
|
|
317
|
+
},
|
|
318
|
+
updatePlacement: function updatePlacement() {
|
|
319
|
+
var $xeTooltip = this;
|
|
320
|
+
$xeTooltip.updateTipStyle();
|
|
321
|
+
return $xeTooltip.$nextTick().then(function () {
|
|
322
|
+
return $xeTooltip.updateTipStyle();
|
|
282
323
|
});
|
|
283
324
|
},
|
|
284
325
|
isActived: function isActived() {
|
|
@@ -291,100 +332,6 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
291
332
|
var reactData = $xeTooltip.reactData;
|
|
292
333
|
reactData.tipActive = !!active;
|
|
293
334
|
},
|
|
294
|
-
updateTipStyle: function updateTipStyle() {
|
|
295
|
-
var $xeTooltip = this;
|
|
296
|
-
var props = $xeTooltip;
|
|
297
|
-
var reactData = $xeTooltip.reactData;
|
|
298
|
-
var isArrow = props.isArrow,
|
|
299
|
-
placement = props.placement,
|
|
300
|
-
defaultPlacement = props.defaultPlacement;
|
|
301
|
-
var targetElem = reactData.tipTarget,
|
|
302
|
-
tipStore = reactData.tipStore,
|
|
303
|
-
tipPos = reactData.tipPos;
|
|
304
|
-
var top = '';
|
|
305
|
-
var left = '';
|
|
306
|
-
var panelPlacement = 'bottom';
|
|
307
|
-
var arrowLeft = '';
|
|
308
|
-
var panelElem = $xeTooltip.$refs.refElem;
|
|
309
|
-
if (panelElem && targetElem) {
|
|
310
|
-
var documentElement = document.documentElement;
|
|
311
|
-
var bodyElem = document.body;
|
|
312
|
-
var targetWidth = targetElem.offsetWidth;
|
|
313
|
-
var targetHeight = targetElem.offsetHeight;
|
|
314
|
-
var panelHeight = panelElem.offsetHeight;
|
|
315
|
-
var panelWidth = panelElem.offsetWidth;
|
|
316
|
-
var targetRect = targetElem.getBoundingClientRect();
|
|
317
|
-
var visibleHeight = documentElement.clientHeight || bodyElem.clientHeight;
|
|
318
|
-
var visibleWidth = documentElement.clientWidth || bodyElem.clientWidth;
|
|
319
|
-
var marginSize = 6;
|
|
320
|
-
left = targetRect.left;
|
|
321
|
-
top = targetRect.top + targetHeight;
|
|
322
|
-
if (tipPos && (tipPos.oLeft || tipPos.oTop)) {
|
|
323
|
-
if (isArrow) {
|
|
324
|
-
left = left + Math.max(8, Math.min(targetWidth - 8, tipPos.oLeft)) - panelWidth / 2;
|
|
325
|
-
} else {
|
|
326
|
-
left = tipPos.x + 1;
|
|
327
|
-
top = tipPos.y + 1;
|
|
328
|
-
}
|
|
329
|
-
} else {
|
|
330
|
-
left = targetRect.left + (targetWidth - panelWidth) / 2;
|
|
331
|
-
}
|
|
332
|
-
if (placement === 'top') {
|
|
333
|
-
panelPlacement = 'top';
|
|
334
|
-
top = targetRect.top - panelHeight;
|
|
335
|
-
} else if (!placement) {
|
|
336
|
-
if (defaultPlacement === 'top') {
|
|
337
|
-
panelPlacement = 'top';
|
|
338
|
-
top = targetRect.top - panelHeight;
|
|
339
|
-
// 如果上面不够放,则向下
|
|
340
|
-
if (top < marginSize) {
|
|
341
|
-
panelPlacement = 'bottom';
|
|
342
|
-
top = targetRect.top + targetHeight;
|
|
343
|
-
}
|
|
344
|
-
// 如果下面不够放,则向上(优先)
|
|
345
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
346
|
-
panelPlacement = 'top';
|
|
347
|
-
top = targetRect.top - panelHeight;
|
|
348
|
-
}
|
|
349
|
-
} else {
|
|
350
|
-
// 如果下面不够放,则向上
|
|
351
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
352
|
-
panelPlacement = 'top';
|
|
353
|
-
top = targetRect.top - panelHeight;
|
|
354
|
-
}
|
|
355
|
-
// 如果上面不够放,则向下(优先)
|
|
356
|
-
if (top < marginSize) {
|
|
357
|
-
panelPlacement = 'bottom';
|
|
358
|
-
top = targetRect.top + targetHeight;
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
}
|
|
362
|
-
// 如果溢出右边
|
|
363
|
-
if (left + panelWidth + marginSize > visibleWidth) {
|
|
364
|
-
left -= left + panelWidth + marginSize - visibleWidth;
|
|
365
|
-
}
|
|
366
|
-
// 如果溢出左边
|
|
367
|
-
if (left < marginSize) {
|
|
368
|
-
left = marginSize;
|
|
369
|
-
}
|
|
370
|
-
// 箭头
|
|
371
|
-
if (left === targetRect.left) {
|
|
372
|
-
if (targetWidth <= panelWidth) {
|
|
373
|
-
arrowLeft = targetWidth / 2;
|
|
374
|
-
}
|
|
375
|
-
} else if (left < targetRect.left) {
|
|
376
|
-
if (left + panelWidth > targetRect.left + targetWidth) {
|
|
377
|
-
arrowLeft = targetRect.left - left + targetWidth / 2;
|
|
378
|
-
} else {
|
|
379
|
-
arrowLeft = targetRect.left - left + (panelWidth - (targetRect.left - left)) / 2;
|
|
380
|
-
}
|
|
381
|
-
}
|
|
382
|
-
tipStore.placement = panelPlacement;
|
|
383
|
-
tipStore.style.top = "".concat(top, "px");
|
|
384
|
-
tipStore.style.left = "".concat(left, "px");
|
|
385
|
-
tipStore.arrowStyle.left = "".concat(arrowLeft, "px");
|
|
386
|
-
}
|
|
387
|
-
},
|
|
388
335
|
updateValue: function updateValue(value) {
|
|
389
336
|
var $xeTooltip = this;
|
|
390
337
|
var reactData = $xeTooltip.reactData;
|
|
@@ -394,10 +341,14 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
394
341
|
$xeTooltip.emitModel(value);
|
|
395
342
|
}
|
|
396
343
|
},
|
|
397
|
-
|
|
344
|
+
updateZIndex: function updateZIndex() {
|
|
398
345
|
var $xeTooltip = this;
|
|
346
|
+
var props = $xeTooltip;
|
|
399
347
|
var reactData = $xeTooltip.reactData;
|
|
400
|
-
|
|
348
|
+
var zIndex = props.zIndex;
|
|
349
|
+
if (zIndex) {
|
|
350
|
+
reactData.tipZindex = _xeUtils.default.toNumber(zIndex);
|
|
351
|
+
} else if (reactData.tipZindex < (0, _utils.getLastZIndex)()) {
|
|
401
352
|
reactData.tipZindex = (0, _utils.nextZIndex)();
|
|
402
353
|
}
|
|
403
354
|
},
|
|
@@ -460,16 +411,17 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
460
411
|
var $xeTooltip = this;
|
|
461
412
|
var props = $xeTooltip;
|
|
462
413
|
var reactData = $xeTooltip.reactData;
|
|
414
|
+
var appendTo = props.appendTo;
|
|
463
415
|
var tipStore = reactData.tipStore;
|
|
464
|
-
var
|
|
465
|
-
if (
|
|
466
|
-
var parentNode =
|
|
416
|
+
var panelElem = $xeTooltip.$refs.refElem;
|
|
417
|
+
if (panelElem) {
|
|
418
|
+
var parentNode = panelElem.parentNode;
|
|
467
419
|
if (!parentNode) {
|
|
468
|
-
|
|
420
|
+
(0, _dom.getPopupAppendElement)(appendTo).appendChild(panelElem);
|
|
469
421
|
}
|
|
470
422
|
}
|
|
471
423
|
$xeTooltip.updateValue(true);
|
|
472
|
-
$xeTooltip.
|
|
424
|
+
$xeTooltip.updateZIndex();
|
|
473
425
|
tipStore.placement = 'top';
|
|
474
426
|
tipStore.style = {
|
|
475
427
|
width: 'auto',
|
|
@@ -655,21 +607,21 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
655
607
|
$xeTooltip.$nextTick(function () {
|
|
656
608
|
var trigger = props.trigger,
|
|
657
609
|
content = props.content;
|
|
658
|
-
var
|
|
659
|
-
if (
|
|
660
|
-
var parentNode =
|
|
610
|
+
var panelElem = $xeTooltip.$refs.refElem;
|
|
611
|
+
if (panelElem) {
|
|
612
|
+
var parentNode = panelElem.parentNode;
|
|
661
613
|
if (parentNode) {
|
|
662
614
|
reactData.tipContent = content;
|
|
663
615
|
reactData.tipZindex = (0, _utils.nextZIndex)();
|
|
664
|
-
_xeUtils.default.arrayEach(
|
|
616
|
+
_xeUtils.default.arrayEach(panelElem.children, function (elem, index) {
|
|
665
617
|
if (index) {
|
|
666
|
-
parentNode.insertBefore(elem,
|
|
618
|
+
parentNode.insertBefore(elem, panelElem);
|
|
667
619
|
if (!reactData.target) {
|
|
668
620
|
reactData.target = elem;
|
|
669
621
|
}
|
|
670
622
|
}
|
|
671
623
|
});
|
|
672
|
-
parentNode.removeChild(
|
|
624
|
+
parentNode.removeChild(panelElem);
|
|
673
625
|
var target = reactData.target;
|
|
674
626
|
if (target) {
|
|
675
627
|
if (trigger === 'hover') {
|
|
@@ -690,7 +642,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
690
642
|
var $xeTooltip = this;
|
|
691
643
|
var reactData = $xeTooltip.reactData;
|
|
692
644
|
var target = reactData.target;
|
|
693
|
-
var
|
|
645
|
+
var panelElem = $xeTooltip.$refs.refElem;
|
|
694
646
|
if (target) {
|
|
695
647
|
target.onmouseenter = null;
|
|
696
648
|
target.onmouseleave = null;
|
|
@@ -700,10 +652,10 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
700
652
|
if (contentWrapperfEl) {
|
|
701
653
|
contentWrapperfEl.removeEventListener('wheel', $xeTooltip.wheelEvent);
|
|
702
654
|
}
|
|
703
|
-
if (
|
|
704
|
-
var parentNode =
|
|
655
|
+
if (panelElem) {
|
|
656
|
+
var parentNode = panelElem.parentNode;
|
|
705
657
|
if (parentNode) {
|
|
706
|
-
parentNode.removeChild(
|
|
658
|
+
parentNode.removeChild(panelElem);
|
|
707
659
|
}
|
|
708
660
|
}
|
|
709
661
|
},
|
|
@@ -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"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function _toConsumableArray(t){return _arrayWithoutHoles(t)||_iterableToArray(t)||_unsupportedIterableToArray(t)||_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(t,e){var i;if(t)return"string"==typeof t?_arrayLikeToArray(t,e):"Map"===(i="Object"===(i={}.toString.call(t).slice(8,-1))&&t.constructor?t.constructor.name:i)||"Set"===i?Array.from(t):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?_arrayLikeToArray(t,e):void 0}function _iterableToArray(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}function _arrayWithoutHoles(t){if(Array.isArray(t))return _arrayLikeToArray(t)}function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=Array(e);i<e;i++)n[i]=t[i];return n}function _defineProperty(t,e,i){return(e=_toPropertyKey(e))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function _toPropertyKey(t){t=_toPrimitive(t,"string");return"symbol"==_typeof(t)?t:t+""}function _toPrimitive(t,e){if("object"!=_typeof(t)||!t)return t;var i=t[Symbol.toPrimitive];if(void 0===i)return("string"===e?String:Number)(t);i=i.call(t,e||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}function createReactData(){return{target:null,isUpdate:!1,visible:!1,tipPos:null,tipContent:"",tipActive:!1,tipTarget:null,tipZindex:0,tipStore:{style:{},placement:"",arrowStyle:{}}}}function createInternalData(){return{}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTooltip",mixins:[_ui.globalMixins.sizeMixin],props:{value:Boolean,size:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.size||(0,_ui.getConfig)().size}},selector:String,trigger:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.trigger||"hover"}},theme:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.theme||"dark"}},content:{type:[String,Number],default:null},useHtml:{type:Boolean,default:function(){return _xeUtils.default.isBoolean((0,_ui.getConfig)().tooltip.useHtml)?(0,_ui.getConfig)().tooltip.useHtml:null}},useHTML:{type:Boolean,default:function(){return(0,_ui.getConfig)().tooltip.useHTML}},zIndex:[String,Number],popupClassName:[String,Function],width:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.Width}},height:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.height}},minWidth:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.minWidth}},minHeight:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.minHeight}},maxWidth:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.maxWidth}},maxHeight:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.maxHeight}},placement:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.placement}},defaultPlacement:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.defaultPlacement}},isArrow:{type:Boolean,default:function(){return(0,_ui.getConfig)().tooltip.isArrow}},enterable:{type:Boolean,default:function(){return(0,_ui.getConfig)().tooltip.enterable}},enterDelay:{type:Number,default:function(){return(0,_ui.getConfig)().tooltip.enterDelay}},leaveDelay:{type:Number,default:function(){return(0,_ui.getConfig)().tooltip.leaveDelay}}},data:function(){var t=_xeUtils.default.uniqueId(),e=createReactData();return Object.assign(Object.assign({},{}),{xID:t,reactData:e})},computed:Object.assign(Object.assign({},{}),{computeWrapperStyle:function(){var t=this,e=t.width,i=t.height,n=t.minHeight,r=t.minWidth,o=t.maxHeight,t=t.maxWidth,a={};return e&&(a.width=(0,_dom.toCssUnit)(e)),i&&(a.height=(0,_dom.toCssUnit)(i)),r&&(a.minWidth=(0,_dom.toCssUnit)(r)),n&&(a.minHeight=(0,_dom.toCssUnit)(n)),t&&(a.maxWidth=(0,_dom.toCssUnit)(t)),o&&(a.maxHeight=(0,_dom.toCssUnit)(o)),a}}),methods:{dispatchEvent:function(t,e,i){this.$emit(t,(0,_ui.createEvent)(i,{$tooltip:this},e))},emitModel:function(t){var e=this._events;this.$emit("input",t),e&&e.modelValue?this.$emit("modelValue",t):this.$emit("model-value",t)},getSelectorEl:function(){var t=this.selector;if(t){if(_xeUtils.default.isElement(t))return t;if(_xeUtils.default.isString(t))return document.querySelector(t)}return null},openByEvent:function(t,e,i){var n=this.reactData;return this.handleVisible(e||n.target||this.getSelectorEl(),i,t)},open:function(t,e){var i=this.reactData;return this.handleVisible(t||i.target||this.getSelectorEl(),e)},close:function(){var t=this.reactData;return t.tipPos=null,t.tipTarget=null,t.tipActive=!1,Object.assign(t.tipStore,{style:{},placement:"",arrowStyle:null}),this.updateValue(!1),this.$nextTick()},toVisible:function(t,e){return this.handleVisible(t,e)},updatePlacement:function(){var e=this,i=e.reactData,t=i.visible,n=e.$refs.refElem;return t&&i.tipTarget&&n&&e.updateTipStyle(),e.$nextTick().then(function(){var t=i.tipTarget;if(n=e.$refs.refElem,t&&n)return e.updateTipStyle(),e.$nextTick().then(function(){e.updateTipStyle()})})},isActived:function(){return this.reactData.tipActive},setActived:function(t){this.reactData.tipActive=!!t},updateTipStyle:function(){var t,e,i,n,r,o,a=this.reactData,l=this.isArrow,u=this.placement,s=this.defaultPlacement,c=a.tipTarget,p=a.tipStore,a=a.tipPos,f="",d="",h="bottom",m="",g=this.$refs.refElem;g&&c&&(o=document.documentElement,t=document.body,e=c.offsetWidth,i=c.offsetHeight,n=g.offsetHeight,g=g.offsetWidth,c=c.getBoundingClientRect(),r=o.clientHeight||t.clientHeight,o=o.clientWidth||t.clientWidth,d=c.left,f=c.top+i,a&&(a.oLeft||a.oTop)?l?d=d+Math.max(8,Math.min(e-8,a.oLeft))-g/2:(d=a.x+1,f=a.y+1):d=c.left+(e-g)/2,"top"===u?(h="top",f=c.top-n):u||("top"===s?(h="top",(f=c.top-n)<6&&(h="bottom",f=c.top+i),r<f+n+6&&(h="top",f=c.top-n)):(r<f+n+6&&(h="top",f=c.top-n),f<6&&(h="bottom",f=c.top+i))),o<d+g+6&&(d-=d+g+6-o),(d=d<6?6:d)===c.left?e<=g&&(m=e/2):d<c.left&&(m=d+g>c.left+e?c.left-d+e/2:c.left-d+(g-(c.left-d))/2),p.placement=h,p.style.top="".concat(f,"px"),p.style.left="".concat(d,"px"),p.arrowStyle.left="".concat(m,"px"))},updateValue:function(t){var e=this.reactData;t!==e.visible&&(e.visible=t,e.isUpdate=!0,this.emitModel(t))},updateZindex:function(){var t=this.reactData;t.tipZindex<(0,_utils.getLastZIndex)()&&(t.tipZindex=(0,_utils.nextZIndex)())},clickEvent:function(){var t=this,e=t,i=t.reactData;i.visible?t.close():t.handleVisible(i.target||t.getSelectorEl(),e.content)},targetMouseenterEvent:function(){var t=this.reactData;this.handleVisible(t.target||this.getSelectorEl(),this.content)},targetMouseleaveEvent:function(){var t=this,e=t.reactData,i=t.trigger,n=t.enterable,r=t.leaveDelay;e.tipActive=!1,n&&"hover"===i?setTimeout(function(){e.tipActive||t.close()},r):t.close()},wrapperMouseenterEvent:function(){this.reactData.tipActive=!0},wrapperMouseleaveEvent:function(){var t=this,e=t.reactData,i=t.trigger,n=t.enterable,r=t.leaveDelay;e.tipActive=!1,n&&"hover"===i&&setTimeout(function(){e.tipActive||t.close()},r)},showTip:function(){var t=this,e=t,i=t.reactData,n=i.tipStore,r=t.$refs.refElem;return r&&!r.parentNode&&document.body.appendChild(r),t.updateValue(!0),t.updateZindex(),n.placement="top",n.style={width:"auto",left:0,top:0,zIndex:e.zIndex||i.tipZindex},n.arrowStyle={left:"50%"},t.updatePlacement()},handleDelayFn:function(){var t=this,e=t.reactData;t.internalData.showDelayTip=_xeUtils.default.debounce(function(){e.tipActive&&t.showTip()},t.enterDelay,{leading:!1,trailing:!0})},handleVisible:function(t,e,i){var n=this,r=n,o=n.$scopedSlots,a=n.reactData,l=n.internalData,o=o.content;if((o||""!==e&&!_xeUtils.default.eqNull(e))&&t){o=l.showDelayTip,l=r.trigger,r=r.enterDelay;if(a.tipPos=i?{x:i.clientX,y:i.clientY,oLeft:i.offsetX,oTop:i.offsetY}:null,a.tipActive=!0,a.tipTarget=t,a.tipContent=e,a.visible)return n.updatePlacement();if(!r||"hover"!==l)return n.showTip();o&&o()}return n.$nextTick()},wheelEvent:function(t){t.stopPropagation()},renderContent:function(t){var e=this.$scopedSlots,i=this.reactData,n=this.useHtml,r=this.useHTML,i=i.tipContent,o=this.computeWrapperStyle,e=e.content,a=[];return e?a.push(t("div",{key:"ct"},(0,_vn.getSlotVNs)(e({})))):(_xeUtils.default.isBoolean(n)?n:r)?a.push(t("div",{key:"ch",domProps:{innerHTML:i}})):a.push(t("span",{key:"cd"},"".concat(i))),t("div",{key:3,ref:"contentWrapperfElem",class:"vxe-tooltip--content",style:o},a)},renderVN:function(t){var e,i=this,n=i.$scopedSlots,r=i.reactData,o=i.popupClassName,a=i.isArrow,l=i.enterable,u=r.tipActive,s=r.visible,r=r.tipStore,n=n.default,c=i.computeSize;return l&&(e={mouseenter:i.wrapperMouseenterEvent,mouseleave:i.wrapperMouseleaveEvent}),t("div",{ref:"refElem",class:["vxe-tooltip--wrapper","theme--".concat(i.theme),o?_xeUtils.default.isFunction(o)?o({$tooltip:i}):o:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(c),c),"placement--".concat(r.placement),r.placement),"is--enterable",l),"is--visible",s),"is--arrow",a),"is--active",u)],style:r.style,on:e},[t("div",{key:"tby",class:"vxe-tooltip--body"},[i.renderContent(t),t("div",{class:"vxe-tooltip--arrow",style:r.arrowStyle})])].concat(_toConsumableArray(n?(0,_vn.getSlotVNs)(n({})):[])))}},watch:{content:function(t){this.reactData.tipContent=t},value:function(t){var e=this,i=e,n=e.reactData;n.isUpdate||(t?e.handleVisible(n.target||e.getSelectorEl(),i.content):e.close()),n.isUpdate=!1},enterDelay:function(){this.handleDelayFn()}},created:function(){this.internalData=createInternalData(),this.handleDelayFn()},mounted:function(){var o=this,a=o,l=o.reactData,t=o.$refs.contentWrapperfElem;t&&t.addEventListener("wheel",o.wheelEvent,{passive:!1}),o.$nextTick(function(){var i,t,e=a.trigger,n=a.content,r=o.$refs.refElem;r&&(i=r.parentNode)&&(l.tipContent=n,l.tipZindex=(0,_utils.nextZIndex)(),_xeUtils.default.arrayEach(r.children,function(t,e){e&&(i.insertBefore(t,r),l.target||(l.target=t))}),i.removeChild(r),(t=l.target)&&("hover"===e?(t.onmouseenter=o.targetMouseenterEvent,t.onmouseleave=o.targetMouseleaveEvent):"click"===e&&(t.onclick=o.clickEvent)),a.value)&&o.handleVisible(t||o.getSelectorEl(),n)})},beforeDestroy:function(){var t=this.reactData.target,e=this.$refs.refElem,t=(t&&(t.onmouseenter=null,t.onmouseleave=null,t.onclick=null),this.$refs.contentWrapperfElem);t&&t.removeEventListener("wheel",this.wheelEvent),e&&(t=e.parentNode)&&t.removeChild(e)},destroyed:function(){var t=this.reactData,e=this.internalData;_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(e,createInternalData())},render:function(t){return this.renderVN(t)}});
|
|
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"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function _toConsumableArray(t){return _arrayWithoutHoles(t)||_iterableToArray(t)||_unsupportedIterableToArray(t)||_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(t,e){var i;if(t)return"string"==typeof t?_arrayLikeToArray(t,e):"Map"===(i="Object"===(i={}.toString.call(t).slice(8,-1))&&t.constructor?t.constructor.name:i)||"Set"===i?Array.from(t):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?_arrayLikeToArray(t,e):void 0}function _iterableToArray(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}function _arrayWithoutHoles(t){if(Array.isArray(t))return _arrayLikeToArray(t)}function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=Array(e);i<e;i++)n[i]=t[i];return n}function _defineProperty(t,e,i){return(e=_toPropertyKey(e))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function _toPropertyKey(t){t=_toPrimitive(t,"string");return"symbol"==_typeof(t)?t:t+""}function _toPrimitive(t,e){if("object"!=_typeof(t)||!t)return t;var i=t[Symbol.toPrimitive];if(void 0===i)return("string"===e?String:Number)(t);i=i.call(t,e||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}function createReactData(){return{target:null,isUpdate:!1,visible:!1,tipPos:null,tipContent:"",tipActive:!1,tipTarget:null,tipZindex:0,tipStore:{style:{},placement:"",arrowStyle:{}}}}function createInternalData(){return{}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTooltip",mixins:[_ui.globalMixins.sizeMixin],props:{value:Boolean,size:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.size||(0,_ui.getConfig)().size}},selector:String,trigger:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.trigger||"hover"}},theme:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.theme||"dark"}},content:{type:[String,Number],default:null},useHtml:{type:Boolean,default:function(){return _xeUtils.default.isBoolean((0,_ui.getConfig)().tooltip.useHtml)?(0,_ui.getConfig)().tooltip.useHtml:null}},useHTML:{type:Boolean,default:function(){return(0,_ui.getConfig)().tooltip.useHTML}},zIndex:[String,Number],popupClassName:[String,Function],width:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.Width}},height:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.height}},minWidth:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.minWidth}},minHeight:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.minHeight}},maxWidth:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.maxWidth}},maxHeight:{type:[String,Number],default:function(){return(0,_ui.getConfig)().tooltip.maxHeight}},placement:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.placement}},defaultPlacement:{type:String,default:function(){return(0,_ui.getConfig)().tooltip.defaultPlacement}},isArrow:{type:Boolean,default:function(){return(0,_ui.getConfig)().tooltip.isArrow}},enterable:{type:Boolean,default:function(){return(0,_ui.getConfig)().tooltip.enterable}},enterDelay:{type:Number,default:function(){return(0,_ui.getConfig)().tooltip.enterDelay}},leaveDelay:{type:Number,default:function(){return(0,_ui.getConfig)().tooltip.leaveDelay}},appendTo:{type:[String,Function],default:function(){return(0,_ui.getConfig)().tooltip.appendTo}}},data:function(){var t=_xeUtils.default.uniqueId(),e=createReactData();return Object.assign(Object.assign({},{}),{xID:t,reactData:e})},computed:Object.assign(Object.assign({},{}),{computeWrapperStyle:function(){var t=this,e=t.width,i=t.height,n=t.minHeight,r=t.minWidth,o=t.maxHeight,t=t.maxWidth,a={};return e&&(a.width=(0,_dom.toCssUnit)(e)),i&&(a.height=(0,_dom.toCssUnit)(i)),r&&(a.minWidth=(0,_dom.toCssUnit)(r)),n&&(a.minHeight=(0,_dom.toCssUnit)(n)),t&&(a.maxWidth=(0,_dom.toCssUnit)(t)),o&&(a.maxHeight=(0,_dom.toCssUnit)(o)),a}}),methods:{dispatchEvent:function(t,e,i){this.$emit(t,(0,_ui.createEvent)(i,{$tooltip:this},e))},emitModel:function(t){var e=this._events;this.$emit("input",t),e&&e.modelValue?this.$emit("modelValue",t):this.$emit("model-value",t)},getSelectorEl:function(){var t=this.selector;if(t){if(_xeUtils.default.isElement(t))return t;if(_xeUtils.default.isString(t))return document.querySelector(t)}return null},openByEvent:function(t,e,i){var n=this.reactData;return this.handleVisible(e||n.target||this.getSelectorEl(),i,t)},open:function(t,e){var i=this.reactData;return this.handleVisible(t||i.target||this.getSelectorEl(),e)},close:function(){var t=this.reactData;return t.tipPos=null,t.tipTarget=null,t.tipActive=!1,Object.assign(t.tipStore,{style:{},placement:"",arrowStyle:null}),this.updateValue(!1),this.$nextTick()},toVisible:function(t,e){return this.handleVisible(t,e)},updateTipStyle:function(){var t,e,i,n,r,o,a=this.reactData,l=this.placement,u=this.defaultPlacement,s=this.isArrow,c=a.tipTarget,p=a.tipStore,f=a.tipPos,a=a.tipZindex,d=this.$refs.refElem;c&&d&&(r=c.getBoundingClientRect(),t=c.offsetWidth,o=c.offsetHeight,e=d.offsetWidth,n=i=r.left,r=r.top+o,f&&(f.oLeft||f.oTop)?s?n=i+Math.max(8,Math.min(t-8,f.oLeft))-e/2:(n=f.x+1,r=f.y+1):n=i+(t-e)/2,o=(0,_dom.updatePanelPlacement)(c,d,{defaultTop:r,defaultLeft:n,placement:l,defaultPlacement:u,teleportTo:!0}),s=Object.assign(o.style,{zIndex:a}),p.placement=o.placement,p.style=s,p.arrowStyle.left="".concat(o.arrowLeft,"px"))},updatePlacement:function(){var t=this;return t.updateTipStyle(),t.$nextTick().then(function(){return t.updateTipStyle()})},isActived:function(){return this.reactData.tipActive},setActived:function(t){this.reactData.tipActive=!!t},updateValue:function(t){var e=this.reactData;t!==e.visible&&(e.visible=t,e.isUpdate=!0,this.emitModel(t))},updateZIndex:function(){var t=this.reactData,e=this.zIndex;e?t.tipZindex=_xeUtils.default.toNumber(e):t.tipZindex<(0,_utils.getLastZIndex)()&&(t.tipZindex=(0,_utils.nextZIndex)())},clickEvent:function(){var t=this,e=t,i=t.reactData;i.visible?t.close():t.handleVisible(i.target||t.getSelectorEl(),e.content)},targetMouseenterEvent:function(){var t=this.reactData;this.handleVisible(t.target||this.getSelectorEl(),this.content)},targetMouseleaveEvent:function(){var t=this,e=t.reactData,i=t.trigger,n=t.enterable,r=t.leaveDelay;e.tipActive=!1,n&&"hover"===i?setTimeout(function(){e.tipActive||t.close()},r):t.close()},wrapperMouseenterEvent:function(){this.reactData.tipActive=!0},wrapperMouseleaveEvent:function(){var t=this,e=t.reactData,i=t.trigger,n=t.enterable,r=t.leaveDelay;e.tipActive=!1,n&&"hover"===i&&setTimeout(function(){e.tipActive||t.close()},r)},showTip:function(){var t=this,e=t,i=t.reactData,n=e.appendTo,r=i.tipStore,o=t.$refs.refElem;return o&&!o.parentNode&&(0,_dom.getPopupAppendElement)(n).appendChild(o),t.updateValue(!0),t.updateZIndex(),r.placement="top",r.style={width:"auto",left:0,top:0,zIndex:e.zIndex||i.tipZindex},r.arrowStyle={left:"50%"},t.updatePlacement()},handleDelayFn:function(){var t=this,e=t.reactData;t.internalData.showDelayTip=_xeUtils.default.debounce(function(){e.tipActive&&t.showTip()},t.enterDelay,{leading:!1,trailing:!0})},handleVisible:function(t,e,i){var n=this,r=n,o=n.$scopedSlots,a=n.reactData,l=n.internalData,o=o.content;if((o||""!==e&&!_xeUtils.default.eqNull(e))&&t){o=l.showDelayTip,l=r.trigger,r=r.enterDelay;if(a.tipPos=i?{x:i.clientX,y:i.clientY,oLeft:i.offsetX,oTop:i.offsetY}:null,a.tipActive=!0,a.tipTarget=t,a.tipContent=e,a.visible)return n.updatePlacement();if(!r||"hover"!==l)return n.showTip();o&&o()}return n.$nextTick()},wheelEvent:function(t){t.stopPropagation()},renderContent:function(t){var e=this.$scopedSlots,i=this.reactData,n=this.useHtml,r=this.useHTML,i=i.tipContent,o=this.computeWrapperStyle,e=e.content,a=[];return e?a.push(t("div",{key:"ct"},(0,_vn.getSlotVNs)(e({})))):(_xeUtils.default.isBoolean(n)?n:r)?a.push(t("div",{key:"ch",domProps:{innerHTML:i}})):a.push(t("span",{key:"cd"},"".concat(i))),t("div",{key:3,ref:"contentWrapperfElem",class:"vxe-tooltip--content",style:o},a)},renderVN:function(t){var e,i=this,n=i.$scopedSlots,r=i.reactData,o=i.popupClassName,a=i.isArrow,l=i.enterable,u=r.tipActive,s=r.visible,r=r.tipStore,n=n.default,c=i.computeSize;return l&&(e={mouseenter:i.wrapperMouseenterEvent,mouseleave:i.wrapperMouseleaveEvent}),t("div",{ref:"refElem",class:["vxe-tooltip--wrapper","theme--".concat(i.theme),o?_xeUtils.default.isFunction(o)?o({$tooltip:i}):o:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(c),c),"placement--".concat(r.placement),r.placement),"is--enterable",l),"is--visible",s),"is--arrow",a),"is--active",u)],style:r.style,on:e},[t("div",{key:"tby",class:"vxe-tooltip--body"},[i.renderContent(t),t("div",{class:"vxe-tooltip--arrow",style:r.arrowStyle})])].concat(_toConsumableArray(n?(0,_vn.getSlotVNs)(n({})):[])))}},watch:{content:function(t){this.reactData.tipContent=t},value:function(t){var e=this,i=e,n=e.reactData;n.isUpdate||(t?e.handleVisible(n.target||e.getSelectorEl(),i.content):e.close()),n.isUpdate=!1},enterDelay:function(){this.handleDelayFn()}},created:function(){this.internalData=createInternalData(),this.handleDelayFn()},mounted:function(){var o=this,a=o,l=o.reactData,t=o.$refs.contentWrapperfElem;t&&t.addEventListener("wheel",o.wheelEvent,{passive:!1}),o.$nextTick(function(){var i,t,e=a.trigger,n=a.content,r=o.$refs.refElem;r&&(i=r.parentNode)&&(l.tipContent=n,l.tipZindex=(0,_utils.nextZIndex)(),_xeUtils.default.arrayEach(r.children,function(t,e){e&&(i.insertBefore(t,r),l.target||(l.target=t))}),i.removeChild(r),(t=l.target)&&("hover"===e?(t.onmouseenter=o.targetMouseenterEvent,t.onmouseleave=o.targetMouseleaveEvent):"click"===e&&(t.onclick=o.clickEvent)),a.value)&&o.handleVisible(t||o.getSelectorEl(),n)})},beforeDestroy:function(){var t=this.reactData.target,e=this.$refs.refElem,t=(t&&(t.onmouseenter=null,t.onmouseleave=null,t.onclick=null),this.$refs.contentWrapperfElem);t&&t.removeEventListener("wheel",this.wheelEvent),e&&(t=e.parentNode)&&t.removeChild(e)},destroyed:function(){var t=this.reactData,e=this.internalData;_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(e,createInternalData())},render:function(t){return this.renderVN(t)}});
|
package/lib/tree/src/tree.js
CHANGED
|
@@ -3687,12 +3687,13 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
3687
3687
|
var props = $xeTree;
|
|
3688
3688
|
var slots = $xeTree.$scopedSlots;
|
|
3689
3689
|
var internalData = $xeTree.internalData;
|
|
3690
|
-
var
|
|
3690
|
+
var loading = props.loading,
|
|
3691
|
+
transform = props.transform,
|
|
3691
3692
|
emptyText = props.emptyText;
|
|
3692
3693
|
var treeExpandedMaps = internalData.treeExpandedMaps;
|
|
3693
3694
|
var childrenField = $xeTree.computeChildrenField;
|
|
3694
3695
|
var emptySlot = slots.empty;
|
|
3695
|
-
if (!treeList.length) {
|
|
3696
|
+
if (!loading && !treeList.length) {
|
|
3696
3697
|
return [h('div', {
|
|
3697
3698
|
class: 'vxe-tree--empty-placeholder'
|
|
3698
3699
|
}, emptySlot ? emptySlot({}) : [h('div', {
|