| 123456789101112131415161718192021222324252627282930313233343536373839 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.addEventListener = addEventListener;
- exports.default = void 0;
- function onCompositionStart(e) {
- e.target.composing = true;
- }
- function onCompositionEnd(e) {
- // prevent triggering an input event for no reason
- if (!e.target.composing) return;
- e.target.composing = false;
- trigger(e.target, 'input');
- }
- function trigger(el, type) {
- var e = document.createEvent('HTMLEvents');
- e.initEvent(type, true, true);
- el.dispatchEvent(e);
- }
- function addEventListener(el, event, handler, options) {
- el.addEventListener(event, handler, options);
- }
- var antInput = {
- created: function created(el, binding) {
- if (!binding.modifiers || !binding.modifiers.lazy) {
- addEventListener(el, 'compositionstart', onCompositionStart);
- addEventListener(el, 'compositionend', onCompositionEnd);
- // Safari < 10.2 & UIWebView doesn't fire compositionend when
- // switching focus before confirming composition choice
- // this also fixes the issue where some browsers e.g. iOS Chrome
- // fires "change" instead of "input" on autocomplete.
- addEventListener(el, 'change', onCompositionEnd);
- }
- }
- };
- var _default = antInput;
- exports.default = _default;
|