mirror of
https://github.com/n8n-io/n8n.git
synced 2024-12-25 12:44:07 -08:00
263 lines
10 KiB
Diff
263 lines
10 KiB
Diff
|
diff --git a/lib/element-ui.common.js b/lib/element-ui.common.js
|
||
|
index 6209b8b7f21c6eea447dd4671b7c4cfc1ef5e9c2..a26772af8dcdcbc0e3a6058bda30c7f9f143cd5d 100644
|
||
|
--- a/lib/element-ui.common.js
|
||
|
+++ b/lib/element-ui.common.js
|
||
|
@@ -21471,14 +21471,8 @@ mainvue_type_template_id_52060272_render._withStripped = true
|
||
|
popper.setAttribute('tabindex', 0);
|
||
|
|
||
|
if (this.trigger !== 'click') {
|
||
|
- Object(dom_["on"])(reference, 'focusin', function () {
|
||
|
- _this.handleFocus();
|
||
|
- var instance = reference.__vue__;
|
||
|
- if (instance && typeof instance.focus === 'function') {
|
||
|
- instance.focus();
|
||
|
- }
|
||
|
- });
|
||
|
- Object(dom_["on"])(popper, 'focusin', this.handleFocus);
|
||
|
+ Object(dom_["on"])(reference, 'focusin', this.handleRefrenceFocus);
|
||
|
+ Object(dom_["on"])(popper, 'focusin', this.handlePopperFocus);
|
||
|
Object(dom_["on"])(reference, 'focusout', this.handleBlur);
|
||
|
Object(dom_["on"])(popper, 'focusout', this.handleBlur);
|
||
|
}
|
||
|
@@ -21524,7 +21518,17 @@ mainvue_type_template_id_52060272_render._withStripped = true
|
||
|
doClose: function doClose() {
|
||
|
this.showPopper = false;
|
||
|
},
|
||
|
- handleFocus: function handleFocus() {
|
||
|
+ handleRefrenceFocus: function handleRefrenceFocus() {
|
||
|
+ this.handlePopperFocus();
|
||
|
+ if (!this.referenceElm) {
|
||
|
+ return;
|
||
|
+ }
|
||
|
+ const instance = this.referenceElm.__vue__;
|
||
|
+ if (instance && typeof instance.focus === 'function') {
|
||
|
+ instance.focus();
|
||
|
+ }
|
||
|
+ },
|
||
|
+ handlePopperFocus: function handlePopperFocus() {
|
||
|
Object(dom_["addClass"])(this.referenceElm, 'focusing');
|
||
|
if (this.trigger === 'click' || this.trigger === 'focus') this.showPopper = true;
|
||
|
},
|
||
|
@@ -21570,7 +21574,7 @@ mainvue_type_template_id_52060272_render._withStripped = true
|
||
|
var popper = this.popper || this.$refs.popper;
|
||
|
|
||
|
if (!reference && this.$refs.wrapper.children) {
|
||
|
- reference = this.referenceElm = this.$refs.wrapper.children[0];
|
||
|
+ reference = this.$refs.wrapper.children[0];
|
||
|
}
|
||
|
if (!this.$el || !reference || this.$el.contains(e.target) || reference.contains(e.target) || !popper || popper.contains(e.target)) return;
|
||
|
this.showPopper = false;
|
||
|
@@ -21590,18 +21594,28 @@ mainvue_type_template_id_52060272_render._withStripped = true
|
||
|
},
|
||
|
|
||
|
destroyed: function destroyed() {
|
||
|
- var reference = this.reference;
|
||
|
+ var reference = this.referenceElm;
|
||
|
+ var popper = this.popper || this.$refs.popper;
|
||
|
|
||
|
+ Object(dom_["off"])(reference, 'focusin', this.handleRefrenceFocus);
|
||
|
+ Object(dom_["off"])(popper, 'focusin', this.handlePopperFocus);
|
||
|
+ Object(dom_["off"])(reference, 'focusout', this.handleBlur);
|
||
|
+ Object(dom_["off"])(popper, 'focusout', this.handleBlur);
|
||
|
+ Object(dom_["off"])(reference, 'keydown', this.handleKeydown);
|
||
|
+ Object(dom_["off"])(reference, 'click', this.handleClick);
|
||
|
Object(dom_["off"])(reference, 'click', this.doToggle);
|
||
|
+ Object(dom_["off"])(document, 'click', this.handleDocumentClick);
|
||
|
+ Object(dom_["off"])(reference, 'mouseenter', this.handleMouseEnter);
|
||
|
+ Object(dom_["off"])(popper, 'mouseenter', this.handleMouseEnter);
|
||
|
+ Object(dom_["off"])(reference, 'mouseleave', this.handleMouseLeave);
|
||
|
+ Object(dom_["off"])(popper, 'mouseleave', this.handleMouseLeave);
|
||
|
Object(dom_["off"])(reference, 'mouseup', this.doClose);
|
||
|
Object(dom_["off"])(reference, 'mousedown', this.doShow);
|
||
|
Object(dom_["off"])(reference, 'focusin', this.doShow);
|
||
|
Object(dom_["off"])(reference, 'focusout', this.doClose);
|
||
|
Object(dom_["off"])(reference, 'mousedown', this.doShow);
|
||
|
Object(dom_["off"])(reference, 'mouseup', this.doClose);
|
||
|
- Object(dom_["off"])(reference, 'mouseleave', this.handleMouseLeave);
|
||
|
- Object(dom_["off"])(reference, 'mouseenter', this.handleMouseEnter);
|
||
|
- Object(dom_["off"])(document, 'click', this.handleDocumentClick);
|
||
|
+ this.referenceElm = undefined;
|
||
|
}
|
||
|
});
|
||
|
// CONCATENATED MODULE: ./packages/popover/src/main.vue?vue&type=script&lang=js&
|
||
|
@@ -21805,18 +21819,7 @@ main.directive = directive;
|
||
|
this.$el.setAttribute('tabindex', this.tabindex);
|
||
|
Object(dom_["on"])(this.referenceElm, 'mouseenter', this.show);
|
||
|
Object(dom_["on"])(this.referenceElm, 'mouseleave', this.hide);
|
||
|
- Object(dom_["on"])(this.referenceElm, 'focus', function () {
|
||
|
- if (!_this3.$slots.default || !_this3.$slots.default.length) {
|
||
|
- _this3.handleFocus();
|
||
|
- return;
|
||
|
- }
|
||
|
- var instance = _this3.$slots.default[0].componentInstance;
|
||
|
- if (instance && instance.focus) {
|
||
|
- instance.focus();
|
||
|
- } else {
|
||
|
- _this3.handleFocus();
|
||
|
- }
|
||
|
- });
|
||
|
+ Object(dom_["on"])(this.referenceElm, 'focus', this.handleFocus);
|
||
|
Object(dom_["on"])(this.referenceElm, 'blur', this.handleBlur);
|
||
|
Object(dom_["on"])(this.referenceElm, 'click', this.removeFocusing);
|
||
|
}
|
||
|
@@ -21849,8 +21852,18 @@ main.directive = directive;
|
||
|
this.debounceClose();
|
||
|
},
|
||
|
handleFocus: function handleFocus() {
|
||
|
- this.focusing = true;
|
||
|
- this.show();
|
||
|
+ if (!this.$slots.default || !this.$slots.default.length) {
|
||
|
+ this.focusing = true;
|
||
|
+ this.show();
|
||
|
+ return;
|
||
|
+ }
|
||
|
+ var instance = this.$slots.default[0].componentInstance;
|
||
|
+ if (instance && instance.focus) {
|
||
|
+ instance.focus();
|
||
|
+ } else {
|
||
|
+ this.focusing = true;
|
||
|
+ this.show();
|
||
|
+ }
|
||
|
},
|
||
|
handleBlur: function handleBlur() {
|
||
|
this.focusing = false;
|
||
|
@@ -21918,6 +21931,7 @@ main.directive = directive;
|
||
|
this.popperVM && this.popperVM.$destroy();
|
||
|
},
|
||
|
destroyed: function destroyed() {
|
||
|
+ this.popperVM && this.popperVM.$destroy();
|
||
|
var reference = this.referenceElm;
|
||
|
if (reference.nodeType === 1) {
|
||
|
Object(dom_["off"])(reference, 'mouseenter', this.show);
|
||
|
diff --git a/packages/popover/src/main.vue b/packages/popover/src/main.vue
|
||
|
index ab5d060182c2e671989f1aba190c85a074d2c754..d87f1b592d7d408d185229b9f9e29070ec2c6fe8 100644
|
||
|
--- a/packages/popover/src/main.vue
|
||
|
+++ b/packages/popover/src/main.vue
|
||
|
@@ -98,16 +98,9 @@ export default {
|
||
|
reference.setAttribute('aria-describedby', this.tooltipId);
|
||
|
reference.setAttribute('tabindex', this.tabindex); // tab序列
|
||
|
popper.setAttribute('tabindex', 0);
|
||
|
-
|
||
|
if (this.trigger !== 'click') {
|
||
|
- on(reference, 'focusin', () => {
|
||
|
- this.handleFocus();
|
||
|
- const instance = reference.__vue__;
|
||
|
- if (instance && typeof instance.focus === 'function') {
|
||
|
- instance.focus();
|
||
|
- }
|
||
|
- });
|
||
|
- on(popper, 'focusin', this.handleFocus);
|
||
|
+ on(reference, 'focusin', this.handleRefrenceFocus);
|
||
|
+ on(popper, 'focusin', this.handlePopperFocus);
|
||
|
on(reference, 'focusout', this.handleBlur);
|
||
|
on(popper, 'focusout', this.handleBlur);
|
||
|
}
|
||
|
@@ -154,7 +147,17 @@ export default {
|
||
|
doClose() {
|
||
|
this.showPopper = false;
|
||
|
},
|
||
|
- handleFocus() {
|
||
|
+ handleRefrenceFocus() {
|
||
|
+ this.handlePopperFocus();
|
||
|
+ if (!this.referenceElm) {
|
||
|
+ return;
|
||
|
+ }
|
||
|
+ const instance = this.referenceElm.__vue__;
|
||
|
+ if (instance && typeof instance.focus === 'function') {
|
||
|
+ instance.focus();
|
||
|
+ }
|
||
|
+ },
|
||
|
+ handlePopperFocus() {
|
||
|
addClass(this.referenceElm, 'focusing');
|
||
|
if (this.trigger === 'click' || this.trigger === 'focus') this.showPopper = true;
|
||
|
},
|
||
|
@@ -193,9 +196,8 @@ export default {
|
||
|
handleDocumentClick(e) {
|
||
|
let reference = this.reference || this.$refs.reference;
|
||
|
const popper = this.popper || this.$refs.popper;
|
||
|
-
|
||
|
if (!reference && this.$refs.wrapper.children) {
|
||
|
- reference = this.referenceElm = this.$refs.wrapper.children[0];
|
||
|
+ reference = this.$refs.wrapper.children[0];
|
||
|
}
|
||
|
if (!this.$el ||
|
||
|
!reference ||
|
||
|
@@ -218,20 +220,26 @@ export default {
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
-
|
||
|
destroyed() {
|
||
|
- const reference = this.reference;
|
||
|
-
|
||
|
+ const reference = this.referenceElm;
|
||
|
+ const popper = this.popper || this.$refs.popper;
|
||
|
+ off(reference, 'focusin', this.handleRefrenceFocus);
|
||
|
+ off(popper, 'focusin', this.handlePopperFocus);
|
||
|
+ off(reference, 'focusout', this.handleBlur);
|
||
|
+ off(popper, 'focusout', this.handleBlur);
|
||
|
+ off(reference, 'keydown', this.handleKeydown);
|
||
|
+ off(reference, 'click', this.handleClick);
|
||
|
off(reference, 'click', this.doToggle);
|
||
|
- off(reference, 'mouseup', this.doClose);
|
||
|
- off(reference, 'mousedown', this.doShow);
|
||
|
+ off(document, 'click', this.handleDocumentClick);
|
||
|
+ off(reference, 'mouseenter', this.handleMouseEnter);
|
||
|
+ off(popper, 'mouseenter', this.handleMouseEnter);
|
||
|
+ off(reference, 'mouseleave', this.handleMouseLeave);
|
||
|
+ off(popper, 'mouseleave', this.handleMouseLeave);
|
||
|
off(reference, 'focusin', this.doShow);
|
||
|
off(reference, 'focusout', this.doClose);
|
||
|
off(reference, 'mousedown', this.doShow);
|
||
|
off(reference, 'mouseup', this.doClose);
|
||
|
- off(reference, 'mouseleave', this.handleMouseLeave);
|
||
|
- off(reference, 'mouseenter', this.handleMouseEnter);
|
||
|
- off(document, 'click', this.handleDocumentClick);
|
||
|
+ this.referenceElm = undefined;
|
||
|
}
|
||
|
};
|
||
|
</script>
|
||
|
\ No newline at end of file
|
||
|
diff --git a/packages/tooltip/src/main.js b/packages/tooltip/src/main.js
|
||
|
index dc930ec58d42328a4d62cddb22fd513db31793cf..d9a6afc80d27ea89b838a47f395e249131c1370c 100644
|
||
|
--- a/packages/tooltip/src/main.js
|
||
|
+++ b/packages/tooltip/src/main.js
|
||
|
@@ -113,18 +113,7 @@ export default {
|
||
|
this.$el.setAttribute('tabindex', this.tabindex);
|
||
|
on(this.referenceElm, 'mouseenter', this.show);
|
||
|
on(this.referenceElm, 'mouseleave', this.hide);
|
||
|
- on(this.referenceElm, 'focus', () => {
|
||
|
- if (!this.$slots.default || !this.$slots.default.length) {
|
||
|
- this.handleFocus();
|
||
|
- return;
|
||
|
- }
|
||
|
- const instance = this.$slots.default[0].componentInstance;
|
||
|
- if (instance && instance.focus) {
|
||
|
- instance.focus();
|
||
|
- } else {
|
||
|
- this.handleFocus();
|
||
|
- }
|
||
|
- });
|
||
|
+ on(this.referenceElm, 'focus', this.handleFocus);
|
||
|
on(this.referenceElm, 'blur', this.handleBlur);
|
||
|
on(this.referenceElm, 'click', this.removeFocusing);
|
||
|
}
|
||
|
@@ -157,6 +146,18 @@ export default {
|
||
|
this.debounceClose();
|
||
|
},
|
||
|
handleFocus() {
|
||
|
+ if (!this.$slots.default || !this.$slots.default.length) {
|
||
|
+ this.doFocus();
|
||
|
+ return;
|
||
|
+ }
|
||
|
+ const instance = this.$slots.default[0].componentInstance;
|
||
|
+ if (instance && instance.focus) {
|
||
|
+ instance.focus();
|
||
|
+ } else {
|
||
|
+ this.doFocus();
|
||
|
+ }
|
||
|
+ },
|
||
|
+ doFocus() {
|
||
|
this.focusing = true;
|
||
|
this.show();
|
||
|
},
|