Skip to content

Commit b7db5b3

Browse files
author
undefined
committed
chore: rever util to js
1 parent 609de24 commit b7db5b3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+489
-540
lines changed

components/_util/BaseMixin.ts renamed to components/_util/BaseMixin.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { getOptionProps } from './props-util';
22

33
export default {
44
methods: {
5-
setState(state = {}, callback: () => void) {
5+
setState(state = {}, callback) {
66
let newState = typeof state === 'function' ? state(this.$data, this.$props) : state;
77
if (this.getDerivedStateFromProps) {
88
const s = this.getDerivedStateFromProps(getOptionProps(this), {
@@ -25,7 +25,6 @@ export default {
2525
},
2626
__emit() {
2727
// 直接调用事件,底层组件不需要vueTool记录events
28-
// eslint-disable-next-line prefer-rest-params
2928
const args = [].slice.call(arguments, 0);
3029
let eventName = args[0];
3130
eventName = `on${eventName[0].toUpperCase()}${eventName.substring(1)}`;

components/_util/BaseMixin2.ts renamed to components/_util/BaseMixin2.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { getOptionProps } from './props-util';
22

33
export default {
44
methods: {
5-
setState(state = {}, callback: () => any) {
5+
setState(state = {}, callback) {
66
let newState = typeof state === 'function' ? state(this, this.$props) : state;
77
if (this.getDerivedStateFromProps) {
88
const s = this.getDerivedStateFromProps(getOptionProps(this), {
@@ -25,7 +25,6 @@ export default {
2525
},
2626
__emit() {
2727
// 直接调用事件,底层组件不需要vueTool记录events
28-
// eslint-disable-next-line prefer-rest-params
2928
const args = [].slice.call(arguments, 0);
3029
let eventName = args[0];
3130
eventName = `on${eventName[0].toUpperCase()}${eventName.substring(1)}`;

components/_util/ContainerRender.jsx

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
import PropTypes from './vue-types';
2+
3+
export default {
4+
props: {
5+
autoMount: PropTypes.bool.def(true),
6+
autoDestroy: PropTypes.bool.def(true),
7+
visible: PropTypes.bool,
8+
forceRender: PropTypes.bool.def(false),
9+
parent: PropTypes.any,
10+
getComponent: PropTypes.func.isRequired,
11+
getContainer: PropTypes.func.isRequired,
12+
children: PropTypes.func.isRequired,
13+
},
14+
15+
mounted() {
16+
if (this.autoMount) {
17+
this.renderComponent();
18+
}
19+
},
20+
21+
updated() {
22+
if (this.autoMount) {
23+
this.renderComponent();
24+
}
25+
},
26+
27+
beforeUnmount() {
28+
if (this.autoDestroy) {
29+
this.removeContainer();
30+
}
31+
},
32+
methods: {
33+
removeContainer() {
34+
if (this.container) {
35+
this._component && this._component.$destroy();
36+
this.container.parentNode.removeChild(this.container);
37+
this.container = null;
38+
this._component = null;
39+
}
40+
},
41+
42+
renderComponent(props = {}, ready) {
43+
const { visible, forceRender, getContainer, parent } = this;
44+
const self = this;
45+
if (visible || parent._component || parent.$refs._component || forceRender) {
46+
let el = this.componentEl;
47+
if (!this.container) {
48+
this.container = getContainer();
49+
el = document.createElement('div');
50+
this.componentEl = el;
51+
this.container.appendChild(el);
52+
}
53+
// self.getComponent 不要放在 render 中,会因为响应式数据问题导致,多次触发 render
54+
const com = { component: self.getComponent(props) };
55+
if (!this._component) {
56+
this._component = new this.$root.constructor({
57+
el,
58+
parent: self,
59+
data: {
60+
_com: com,
61+
},
62+
mounted() {
63+
this.$nextTick(() => {
64+
if (ready) {
65+
ready.call(self);
66+
}
67+
});
68+
},
69+
updated() {
70+
this.$nextTick(() => {
71+
if (ready) {
72+
ready.call(self);
73+
}
74+
});
75+
},
76+
methods: {
77+
setComponent(_com) {
78+
this.$data._com = _com;
79+
},
80+
},
81+
render() {
82+
return this.$data._com.component;
83+
},
84+
});
85+
} else {
86+
this._component.setComponent(com);
87+
}
88+
}
89+
},
90+
},
91+
92+
render() {
93+
return this.children({
94+
renderComponent: this.renderComponent,
95+
removeContainer: this.removeContainer,
96+
});
97+
},
98+
};

components/_util/FormDecoratorDirective.ts

Lines changed: 0 additions & 10 deletions
This file was deleted.

components/_util/KeyCode.ts renamed to components/_util/KeyCode.js

Lines changed: 83 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -425,98 +425,97 @@ const KeyCode = {
425425
* WIN_IME
426426
*/
427427
WIN_IME: 229,
428+
};
429+
430+
/*
431+
whether text and modified key is entered at the same time.
432+
*/
433+
KeyCode.isTextModifyingKeyEvent = function isTextModifyingKeyEvent(e) {
434+
const keyCode = e.keyCode;
435+
if (
436+
(e.altKey && !e.ctrlKey) ||
437+
e.metaKey ||
438+
// Function keys don't generate text
439+
(keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12)
440+
) {
441+
return false;
442+
}
428443

429-
// ======================== Function ========================
430-
/**
431-
* whether text and modified key is entered at the same time.
432-
*/
433-
isTextModifyingKeyEvent: function isTextModifyingKeyEvent(e: KeyboardEvent) {
434-
const { keyCode } = e;
435-
if (
436-
(e.altKey && !e.ctrlKey) ||
437-
e.metaKey ||
438-
// Function keys don't generate text
439-
(keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12)
440-
) {
444+
// The following keys are quite harmless, even in combination with
445+
// CTRL, ALT or SHIFT.
446+
switch (keyCode) {
447+
case KeyCode.ALT:
448+
case KeyCode.CAPS_LOCK:
449+
case KeyCode.CONTEXT_MENU:
450+
case KeyCode.CTRL:
451+
case KeyCode.DOWN:
452+
case KeyCode.END:
453+
case KeyCode.ESC:
454+
case KeyCode.HOME:
455+
case KeyCode.INSERT:
456+
case KeyCode.LEFT:
457+
case KeyCode.MAC_FF_META:
458+
case KeyCode.META:
459+
case KeyCode.NUMLOCK:
460+
case KeyCode.NUM_CENTER:
461+
case KeyCode.PAGE_DOWN:
462+
case KeyCode.PAGE_UP:
463+
case KeyCode.PAUSE:
464+
case KeyCode.PRINT_SCREEN:
465+
case KeyCode.RIGHT:
466+
case KeyCode.SHIFT:
467+
case KeyCode.UP:
468+
case KeyCode.WIN_KEY:
469+
case KeyCode.WIN_KEY_RIGHT:
441470
return false;
442-
}
471+
default:
472+
return true;
473+
}
474+
};
443475

444-
// The following keys are quite harmless, even in combination with
445-
// CTRL, ALT or SHIFT.
446-
switch (keyCode) {
447-
case KeyCode.ALT:
448-
case KeyCode.CAPS_LOCK:
449-
case KeyCode.CONTEXT_MENU:
450-
case KeyCode.CTRL:
451-
case KeyCode.DOWN:
452-
case KeyCode.END:
453-
case KeyCode.ESC:
454-
case KeyCode.HOME:
455-
case KeyCode.INSERT:
456-
case KeyCode.LEFT:
457-
case KeyCode.MAC_FF_META:
458-
case KeyCode.META:
459-
case KeyCode.NUMLOCK:
460-
case KeyCode.NUM_CENTER:
461-
case KeyCode.PAGE_DOWN:
462-
case KeyCode.PAGE_UP:
463-
case KeyCode.PAUSE:
464-
case KeyCode.PRINT_SCREEN:
465-
case KeyCode.RIGHT:
466-
case KeyCode.SHIFT:
467-
case KeyCode.UP:
468-
case KeyCode.WIN_KEY:
469-
case KeyCode.WIN_KEY_RIGHT:
470-
return false;
471-
default:
472-
return true;
473-
}
474-
},
476+
/*
477+
whether character is entered.
478+
*/
479+
KeyCode.isCharacterKey = function isCharacterKey(keyCode) {
480+
if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {
481+
return true;
482+
}
475483

476-
/**
477-
* whether character is entered.
478-
*/
479-
isCharacterKey: function isCharacterKey(keyCode: number) {
480-
if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {
481-
return true;
482-
}
484+
if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {
485+
return true;
486+
}
483487

484-
if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {
485-
return true;
486-
}
488+
if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {
489+
return true;
490+
}
487491

488-
if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {
489-
return true;
490-
}
492+
// Safari sends zero key code for non-latin characters.
493+
if (window.navigation.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {
494+
return true;
495+
}
491496

492-
// Safari sends zero key code for non-latin characters.
493-
if (window.navigator.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {
497+
switch (keyCode) {
498+
case KeyCode.SPACE:
499+
case KeyCode.QUESTION_MARK:
500+
case KeyCode.NUM_PLUS:
501+
case KeyCode.NUM_MINUS:
502+
case KeyCode.NUM_PERIOD:
503+
case KeyCode.NUM_DIVISION:
504+
case KeyCode.SEMICOLON:
505+
case KeyCode.DASH:
506+
case KeyCode.EQUALS:
507+
case KeyCode.COMMA:
508+
case KeyCode.PERIOD:
509+
case KeyCode.SLASH:
510+
case KeyCode.APOSTROPHE:
511+
case KeyCode.SINGLE_QUOTE:
512+
case KeyCode.OPEN_SQUARE_BRACKET:
513+
case KeyCode.BACKSLASH:
514+
case KeyCode.CLOSE_SQUARE_BRACKET:
494515
return true;
495-
}
496-
497-
switch (keyCode) {
498-
case KeyCode.SPACE:
499-
case KeyCode.QUESTION_MARK:
500-
case KeyCode.NUM_PLUS:
501-
case KeyCode.NUM_MINUS:
502-
case KeyCode.NUM_PERIOD:
503-
case KeyCode.NUM_DIVISION:
504-
case KeyCode.SEMICOLON:
505-
case KeyCode.DASH:
506-
case KeyCode.EQUALS:
507-
case KeyCode.COMMA:
508-
case KeyCode.PERIOD:
509-
case KeyCode.SLASH:
510-
case KeyCode.APOSTROPHE:
511-
case KeyCode.SINGLE_QUOTE:
512-
case KeyCode.OPEN_SQUARE_BRACKET:
513-
case KeyCode.BACKSLASH:
514-
case KeyCode.CLOSE_SQUARE_BRACKET:
515-
return true;
516-
default:
517-
return false;
518-
}
519-
},
516+
default:
517+
return false;
518+
}
520519
};
521520

522521
export default KeyCode;

components/_util/Portal.tsx renamed to components/_util/Portal.js

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,16 @@
11
import PropTypes from './vue-types';
2-
import { Teleport, defineComponent, PropType } from 'vue';
2+
import { Teleport } from 'vue';
33

4-
export default defineComponent({
4+
export default {
55
name: 'Portal',
66
props: {
7-
getContainer: {
8-
type: Function as PropType<(triggerNode: HTMLElement) => HTMLElement>,
9-
required: true,
10-
},
7+
getContainer: PropTypes.func.isRequired,
118
children: PropTypes.any.isRequired,
129
didUpdate: PropTypes.func,
1310
},
14-
beforeCreate() {
11+
data() {
1512
this._container = null;
13+
return {};
1614
},
1715
mounted() {
1816
this.createContainer();
@@ -47,4 +45,4 @@ export default defineComponent({
4745
}
4846
return null;
4947
},
50-
});
48+
};
File renamed without changes.

components/_util/antInputDirective.ts renamed to components/_util/antInputDirective.js

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,25 @@
1-
function onCompositionStart(e: Event) {
2-
(e.target as any).composing = true;
1+
function onCompositionStart(e) {
2+
e.target.composing = true;
33
}
44

5-
function onCompositionEnd(e: Event) {
6-
const target = e.target as any;
7-
if (target.composing) {
8-
target.composing = false;
9-
trigger(target, 'input');
10-
}
5+
function onCompositionEnd(e) {
6+
// prevent triggering an input event for no reason
7+
if (!e.target.composing) return;
8+
e.target.composing = false;
9+
trigger(e.target, 'input');
1110
}
1211

13-
function trigger(el: HTMLElement, type: string) {
12+
function trigger(el, type) {
1413
const e = document.createEvent('HTMLEvents');
1514
e.initEvent(type, true, true);
1615
el.dispatchEvent(e);
1716
}
1817

19-
export function addEventListener(
20-
el: Element,
21-
event: string,
22-
handler: EventListener,
23-
options?: EventListenerOptions,
24-
) {
18+
export function addEventListener(el, event, handler, options) {
2519
el.addEventListener(event, handler, options);
2620
}
2721
const antInput = {
28-
created(el: Element, binding: { modifiers: { lazy: any } }) {
22+
created(el, binding) {
2923
if (!binding.modifiers || !binding.modifiers.lazy) {
3024
addEventListener(el, 'compositionstart', onCompositionStart);
3125
addEventListener(el, 'compositionend', onCompositionEnd);

0 commit comments

Comments
 (0)