@tarojs/components-react 4.0.1 → 4.0.2

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.
Files changed (67) hide show
  1. package/LICENSE +8 -8
  2. package/dist/components/button/index.js +78 -103
  3. package/dist/components/button/index.js.map +1 -1
  4. package/dist/components/icon/index.js +26 -17
  5. package/dist/components/icon/index.js.map +1 -1
  6. package/dist/components/image/index.js +76 -101
  7. package/dist/components/image/index.js.map +1 -1
  8. package/dist/components/input/index.js +183 -206
  9. package/dist/components/input/index.js.map +1 -1
  10. package/dist/components/pull-down-refresh/index.js +195 -211
  11. package/dist/components/pull-down-refresh/index.js.map +1 -1
  12. package/dist/components/scroll-view/index.js +137 -167
  13. package/dist/components/scroll-view/index.js.map +1 -1
  14. package/dist/components/swiper/index.js +248 -268
  15. package/dist/components/swiper/index.js.map +1 -1
  16. package/dist/components/text/index.js +22 -31
  17. package/dist/components/text/index.js.map +1 -1
  18. package/dist/components/view/index.js +72 -97
  19. package/dist/components/view/index.js.map +1 -1
  20. package/dist/index.css +1 -1
  21. package/dist/solid/components/button/index.js +95 -0
  22. package/dist/solid/components/button/index.js.map +1 -0
  23. package/dist/solid/components/button/style/index.scss.js +4 -0
  24. package/dist/solid/components/button/style/index.scss.js.map +1 -0
  25. package/dist/solid/components/icon/index.js +39 -0
  26. package/dist/solid/components/icon/index.js.map +1 -0
  27. package/dist/solid/components/icon/style/index.scss.js +4 -0
  28. package/dist/solid/components/icon/style/index.scss.js.map +1 -0
  29. package/dist/solid/components/image/index.js +94 -0
  30. package/dist/solid/components/image/index.js.map +1 -0
  31. package/dist/solid/components/input/index.js +256 -0
  32. package/dist/solid/components/input/index.js.map +1 -0
  33. package/dist/solid/components/input/style/index.scss.js +4 -0
  34. package/dist/solid/components/input/style/index.scss.js.map +1 -0
  35. package/dist/solid/components/pull-down-refresh/index.js +334 -0
  36. package/dist/solid/components/pull-down-refresh/index.js.map +1 -0
  37. package/dist/solid/components/pull-down-refresh/style/index.css.js +4 -0
  38. package/dist/solid/components/pull-down-refresh/style/index.css.js.map +1 -0
  39. package/dist/solid/components/scroll-view/index.js +188 -0
  40. package/dist/solid/components/scroll-view/index.js.map +1 -0
  41. package/dist/solid/components/scroll-view/style/index.css.js +4 -0
  42. package/dist/solid/components/scroll-view/style/index.css.js.map +1 -0
  43. package/dist/solid/components/swiper/index.js +307 -0
  44. package/dist/solid/components/swiper/index.js.map +1 -0
  45. package/dist/solid/components/swiper/style/index.css.js +4 -0
  46. package/dist/solid/components/swiper/style/index.css.js.map +1 -0
  47. package/dist/solid/components/text/index.js +32 -0
  48. package/dist/solid/components/text/index.js.map +1 -0
  49. package/dist/solid/components/text/style/index.css.js +4 -0
  50. package/dist/solid/components/text/style/index.css.js.map +1 -0
  51. package/dist/solid/components/view/index.js +88 -0
  52. package/dist/solid/components/view/index.js.map +1 -0
  53. package/dist/solid/index.css +1 -0
  54. package/dist/solid/index.js +13 -0
  55. package/dist/solid/index.js.map +1 -0
  56. package/dist/solid/utils/hooks.solid.js +54 -0
  57. package/dist/solid/utils/hooks.solid.js.map +1 -0
  58. package/dist/solid/utils/index.js +58 -0
  59. package/dist/solid/utils/index.js.map +1 -0
  60. package/dist/utils/hooks.react.js +15 -0
  61. package/dist/utils/hooks.react.js.map +1 -0
  62. package/dist/utils/index.js +26 -15
  63. package/dist/utils/index.js.map +1 -1
  64. package/package.json +19 -18
  65. package/types/index.d.ts +17 -0
  66. /package/dist/{components/view → solid/components/image}/style/index.css.js +0 -0
  67. /package/dist/{components/view → solid/components/image}/style/index.css.js.map +0 -0
@@ -0,0 +1,39 @@
1
+ import { template, use, spread, mergeProps } from 'solid-js/web';
2
+ import './style/index.scss.js';
3
+ import classNames from 'classnames';
4
+ import { omit, createForwardRefComponent } from '../../utils/index.js';
5
+
6
+ var _tmpl$ = /*#__PURE__*/template(`<i>`);
7
+ const Icon = props => {
8
+ let {
9
+ type,
10
+ className = '',
11
+ size = '23',
12
+ color,
13
+ forwardedRef
14
+ } = props;
15
+ if (type) type = type.replace(/_/g, '-');
16
+ const cls = classNames({
17
+ [`weui-icon-${type}`]: true
18
+ }, className);
19
+ const style = {
20
+ 'font-size': size + 'px',
21
+ color: color
22
+ };
23
+ return (// eslint-disable-next-line react/react-in-jsx-scope
24
+ (() => {
25
+ var _el$ = _tmpl$();
26
+ var _ref$ = forwardedRef;
27
+ typeof _ref$ === "function" ? use(_ref$, _el$) : forwardedRef = _el$;
28
+ spread(_el$, mergeProps(() => omit(props, ['type', 'className', 'forwardedRef']), {
29
+ "className": cls,
30
+ "style": style
31
+ }), false, false);
32
+ return _el$;
33
+ })()
34
+ );
35
+ };
36
+ var index = createForwardRefComponent(Icon);
37
+
38
+ export { index as default };
39
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/icon/index.tsx"],"sourcesContent":["import './style/index.scss'\n\nimport classNames from 'classnames'\n\nimport { createForwardRefComponent, omit } from '../../utils'\n\ninterface IProps {\n type: string\n color: string\n size?: number | string\n className?: string\n forwardedRef?: React.MutableRefObject<HTMLLIElement>\n}\n\nconst Icon = (props: IProps) => {\n let { type, className = '', size = '23', color, forwardedRef } = props\n if (type) type = type.replace(/_/g, '-')\n const cls = classNames(\n {\n [`weui-icon-${type}`]: true\n },\n className\n )\n const style = { 'font-size': size + 'px', color: color }\n\n return (\n // eslint-disable-next-line react/react-in-jsx-scope\n <i ref={forwardedRef} {...omit(props, ['type', 'className', 'forwardedRef'])} className={cls} style={style} />\n )\n}\nexport default createForwardRefComponent(Icon)\n"],"names":["Icon","props","type","className","size","color","forwardedRef","replace","cls","classNames","style","_el$","_tmpl$","_ref$","_$use","_$spread","_$mergeProps","omit","createForwardRefComponent"],"mappings":";;;;;;AAcA,MAAMA,IAAI,GAAIC,KAAa,IAAI;EAC7B,IAAI;IAAEC,IAAI;AAAEC,IAAAA,SAAS,GAAG,EAAE;AAAEC,IAAAA,IAAI,GAAG,IAAI;IAAEC,KAAK;AAAEC,IAAAA,YAAAA;AAAc,GAAA,GAAGL,KAAK,CAAA;EACtE,IAAIC,IAAI,EAAEA,IAAI,GAAGA,IAAI,CAACK,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;EACxC,MAAMC,GAAG,GAAGC,UAAU,CACpB;IACE,CAAC,CAAA,UAAA,EAAaP,IAAI,CAAA,CAAE,GAAG,IAAA;GACxB,EACDC,SAAS,CACV,CAAA;AACD,EAAA,MAAMO,KAAK,GAAG;IAAE,WAAW,EAAEN,IAAI,GAAG,IAAI;AAAEC,IAAAA,KAAK,EAAEA,KAAAA;GAAO,CAAA;EAExD;AACE,IAAA,CAAA,MAAA;MAAA,IAAAM,IAAA,GAAAC,MAAA,EAAA,CAAA;MAAA,IAAAC,KAAA,GACQP,YAAY,CAAA;MAAA,OAAAO,KAAA,KAAAC,UAAAA,GAAAA,GAAA,CAAAD,KAAA,EAAAF,IAAA,CAAA,GAAZL,YAAY,GAAAK,IAAA,CAAA;AAAAI,MAAAA,MAAA,CAAAJ,IAAA,EAAAK,UAAA,CAAA,MAAMC,IAAI,CAAChB,KAAK,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,EAAA;AAAA,QAAA,WAAA,EAAaO,GAAG;QAAA,OAASE,EAAAA,KAAAA;AAAK,OAAA,CAAA,EAAA,KAAA,EAAA,KAAA,CAAA,CAAA;AAAA,MAAA,OAAAC,IAAA,CAAA;AAAA,KAAA,GAAA;AAAA,IAAA;AAE9G,CAAC,CAAA;AACD,YAAeO,yBAAyB,CAAClB,IAAI,CAAC;;;;"}
@@ -0,0 +1,4 @@
1
+ var undefined$1 = undefined;
2
+
3
+ export { undefined$1 as default };
4
+ //# sourceMappingURL=index.scss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,94 @@
1
+ import { template, use, spread, insert, addEventListener, setAttribute, effect, style } from 'solid-js/web';
2
+ import { __rest } from 'tslib';
3
+ import './style/index.css.js';
4
+ import classNames from 'classnames';
5
+ import { createForwardRefComponent } from '../../utils/index.js';
6
+ import { useRef, useState, useCallback, useEffect } from '../../utils/hooks.solid.js';
7
+
8
+ var _tmpl$ = /*#__PURE__*/template(`<div>`),
9
+ _tmpl$2 = /*#__PURE__*/template(`<img>`);
10
+ function Image(props) {
11
+ const imgRef = useRef(null);
12
+ const observer = useRef({});
13
+ const [, setIsLoaded] = useState(false);
14
+ const {
15
+ className,
16
+ style: style$1 = {},
17
+ src,
18
+ mode,
19
+ onError,
20
+ lazyLoad,
21
+ imgProps,
22
+ forwardedRef
23
+ } = props,
24
+ reset = __rest(props, ["className", "style", "src", "mode", "onError", "lazyLoad", "imgProps", "forwardedRef"]);
25
+ const cls = classNames('taro-img', {
26
+ 'taro-img__widthfix': mode === 'widthFix'
27
+ }, className);
28
+ const imgCls = classNames('taro-img__mode-' + (mode || 'scaleToFill').toLowerCase().replace(/\s/g, ''));
29
+ const imageOnLoad = useCallback(e => {
30
+ const {
31
+ onLoad
32
+ } = props;
33
+ Object.defineProperty(e, 'detail', {
34
+ enumerable: true,
35
+ writable: true,
36
+ value: {
37
+ width: e.target.width,
38
+ height: e.target.height
39
+ }
40
+ });
41
+ onLoad && onLoad(e);
42
+ }, [props]);
43
+ useEffect(() => {
44
+ var _a, _b;
45
+ if (lazyLoad) {
46
+ observer.current = new IntersectionObserver(entries => {
47
+ // 异步 api 关系
48
+ if (entries[entries.length - 1].isIntersecting) {
49
+ setIsLoaded(true);
50
+ // findDOMNode(this).children[0].src = src
51
+ imgRef.current.src = src;
52
+ }
53
+ }, {
54
+ rootMargin: '300px 0px'
55
+ });
56
+ (_b = (_a = observer.current).observe) === null || _b === void 0 ? void 0 : _b.call(_a, imgRef.current);
57
+ }
58
+ return () => {
59
+ var _a, _b;
60
+ (_b = (_a = observer.current) === null || _a === void 0 ? void 0 : _a.disconnect) === null || _b === void 0 ? void 0 : _b.call(_a);
61
+ };
62
+ }, [lazyLoad, src]);
63
+ return (() => {
64
+ var _el$ = _tmpl$();
65
+ use(forwardedRef, _el$);
66
+ _el$.className = cls;
67
+ spread(_el$, reset, false, true);
68
+ insert(_el$, lazyLoad ? (() => {
69
+ var _el$2 = _tmpl$2();
70
+ addEventListener(_el$2, "error", onError);
71
+ addEventListener(_el$2, "load", imageOnLoad);
72
+ use(img => imgRef.current = img, _el$2);
73
+ _el$2.className = imgCls;
74
+ setAttribute(_el$2, "data-src", src);
75
+ spread(_el$2, imgProps, false, false);
76
+ return _el$2;
77
+ })() : (() => {
78
+ var _el$3 = _tmpl$2();
79
+ addEventListener(_el$3, "error", onError);
80
+ addEventListener(_el$3, "load", imageOnLoad);
81
+ use(img => imgRef.current = img, _el$3);
82
+ _el$3.className = imgCls;
83
+ setAttribute(_el$3, "src", src);
84
+ spread(_el$3, imgProps, false, false);
85
+ return _el$3;
86
+ })());
87
+ effect(_$p => style(_el$, style$1, _$p));
88
+ return _el$;
89
+ })();
90
+ }
91
+ var index = createForwardRefComponent(Image);
92
+
93
+ export { index as default };
94
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/image/index.tsx"],"sourcesContent":["import './style/index.css'\n\nimport classNames from 'classnames'\n\nimport { createForwardRefComponent } from '../../utils'\nimport { useCallback, useEffect, useRef, useState } from '../../utils/hooks'\n\nimport type React from 'react'\n\ninterface IProps extends React.HTMLAttributes<HTMLDivElement> {\n src: string\n mode: string\n onError: () => void\n onLoad: (e) => void\n lazyLoad?: boolean\n imgProps?: Record<string, any>\n forwardedRef?: React.MutableRefObject<HTMLDivElement>\n}\n\nfunction Image (props: IProps) {\n const imgRef = useRef<HTMLImageElement | null>(null)\n const observer = useRef<Partial<IntersectionObserver>>({})\n const [, setIsLoaded] = useState(false)\n const {\n className,\n style = {},\n src,\n mode,\n onError,\n lazyLoad,\n imgProps,\n forwardedRef,\n ...reset\n } = props\n const cls = classNames(\n 'taro-img',\n {\n 'taro-img__widthfix': mode === 'widthFix'\n },\n className\n )\n const imgCls = classNames(\n 'taro-img__mode-' +\n (mode || 'scaleToFill').toLowerCase().replace(/\\s/g, '')\n )\n\n const imageOnLoad = useCallback((e) => {\n const { onLoad } = props\n Object.defineProperty(e, 'detail', {\n enumerable: true,\n writable: true,\n value: {\n width: e.target.width,\n height: e.target.height\n }\n })\n\n onLoad && onLoad(e)\n }, [props])\n\n useEffect(() => {\n if (lazyLoad) {\n observer.current = new IntersectionObserver(\n entries => {\n // 异步 api 关系\n if (entries[entries.length - 1].isIntersecting) {\n setIsLoaded(true)\n // findDOMNode(this).children[0].src = src\n imgRef.current!.src = src\n }\n },\n {\n rootMargin: '300px 0px'\n }\n )\n observer.current.observe?.(imgRef.current!)\n }\n\n return () => {\n observer.current?.disconnect?.()\n }\n }, [lazyLoad, src])\n\n return (\n <div className={cls} style={style} ref={forwardedRef} {...reset}>\n {lazyLoad ? (\n <img\n ref={img => (imgRef.current = img)}\n className={imgCls}\n data-src={src}\n onLoad={imageOnLoad}\n onError={onError}\n {...imgProps}\n />\n ) : (\n <img\n ref={img => (imgRef.current = img)}\n className={imgCls}\n src={src}\n onLoad={imageOnLoad}\n onError={onError}\n {...imgProps}\n />\n )}\n </div>\n )\n}\n\nexport default createForwardRefComponent(Image)\n"],"names":["Image","props","imgRef","useRef","observer","setIsLoaded","useState","className","style","src","mode","onError","lazyLoad","imgProps","forwardedRef","reset","__rest","cls","classNames","imgCls","toLowerCase","replace","imageOnLoad","useCallback","e","onLoad","Object","defineProperty","enumerable","writable","value","width","target","height","useEffect","current","IntersectionObserver","entries","length","isIntersecting","rootMargin","_b","_a","observe","call","disconnect","_el$","_tmpl$","_$use","_$spread","_$insert","_el$2","_tmpl$2","_$addEventListener","img","_$setAttribute","_el$3","_$effect","_$p","_$style","createForwardRefComponent"],"mappings":"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"}
@@ -0,0 +1,256 @@
1
+ import { template, use, spread, mergeProps } from 'solid-js/web';
2
+ import './style/index.scss.js';
3
+ import classNames from 'classnames';
4
+ import React from 'react';
5
+ import { omit, createForwardRefComponent } from '../../utils/index.js';
6
+
7
+ var _tmpl$ = /*#__PURE__*/template(`<input>`);
8
+ function getTrueType(type, confirmType, password) {
9
+ if (confirmType === 'search') type = 'search';
10
+ if (password) type = 'password';
11
+ if (typeof type === 'undefined') {
12
+ return 'text';
13
+ }
14
+ if (!type) {
15
+ throw new Error('unexpected type');
16
+ }
17
+ if (type === 'digit') type = 'number';
18
+ return type;
19
+ }
20
+ function fixControlledValue(value) {
21
+ return value !== null && value !== void 0 ? value : '';
22
+ }
23
+ class Input extends React.Component {
24
+ constructor(props) {
25
+ super(props);
26
+ this.handleBeforeInput = e => {
27
+ if (!e.data) return;
28
+ const isNumber = e.data && /[0-9]/.test(e.data);
29
+ if (this.props.type === 'number' && !isNumber) {
30
+ e.preventDefault();
31
+ }
32
+ if (this.props.type === 'digit' && !isNumber) {
33
+ if (e.data !== '.' || e.data === '.' && e.target.value.indexOf('.') > -1) {
34
+ e.preventDefault();
35
+ }
36
+ }
37
+ };
38
+ this.handleInput = this.handleInput.bind(this);
39
+ this.handlePaste = this.handlePaste.bind(this);
40
+ this.handleFocus = this.handleFocus.bind(this);
41
+ this.handleBlur = this.handleBlur.bind(this);
42
+ this.handleKeyDown = this.handleKeyDown.bind(this);
43
+ this.handleComposition = this.handleComposition.bind(this);
44
+ this.handleBeforeInput = this.handleBeforeInput.bind(this);
45
+ this.isOnComposition = false;
46
+ this.onInputExcuted = false;
47
+ }
48
+ componentDidMount() {
49
+ var _a, _b;
50
+ // 修复无法选择文件
51
+ if (this.props.type === 'file') {
52
+ (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.addEventListener('change', this.handleInput);
53
+ } else {
54
+ (_b = this.inputRef) === null || _b === void 0 ? void 0 : _b.addEventListener('textInput', this.handleBeforeInput);
55
+ }
56
+ // 处理初始化是否 focus
57
+ if (this.props.focus && this.inputRef) this.inputRef.focus();
58
+ }
59
+ componentWillUnmount() {
60
+ var _a;
61
+ // 修复无法选择文件
62
+ if (this.props.type === 'file') {
63
+ this.inputRef.removeEventListener('change', this.handleInput);
64
+ } else {
65
+ (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.removeEventListener('textInput', this.handleBeforeInput);
66
+ }
67
+ }
68
+ UNSAFE_componentWillReceiveProps(nextProps) {
69
+ if (!this.props.focus && nextProps.focus && this.inputRef) this.inputRef.focus();
70
+ }
71
+ handleInput(e) {
72
+ e.stopPropagation();
73
+ const {
74
+ type,
75
+ maxlength = 140,
76
+ confirmType = 'done',
77
+ password = false,
78
+ onInput
79
+ } = this.props;
80
+ if (!this.isOnComposition && !this.onInputExcuted) {
81
+ let {
82
+ value
83
+ } = e.target;
84
+ const inputType = getTrueType(type, confirmType, password);
85
+ this.onInputExcuted = true;
86
+ /* 修复 number 类型 maxLength 无效 */
87
+ if (inputType === 'number' && value && maxlength <= value.length) {
88
+ value = value.substring(0, maxlength);
89
+ e.target.value = value;
90
+ }
91
+ Object.defineProperty(e, 'detail', {
92
+ value: {
93
+ value,
94
+ cursor: value.length
95
+ }
96
+ });
97
+ // // 修复 IOS 光标跳转问题
98
+ // if (!(['number', 'file'].indexOf(inputType) >= 0)) {
99
+ // const pos = e.target.selectionEnd
100
+ // setTimeout(
101
+ // () => {
102
+ // e.target.selectionStart = pos
103
+ // e.target.selectionEnd = pos
104
+ // }
105
+ // )
106
+ // }
107
+ typeof onInput === 'function' && onInput(e);
108
+ this.onInputExcuted = false;
109
+ }
110
+ }
111
+ handlePaste(e) {
112
+ e.stopPropagation();
113
+ const {
114
+ onPaste
115
+ } = this.props;
116
+ this.onInputExcuted = false;
117
+ Object.defineProperty(e, 'detail', {
118
+ value: {
119
+ value: e.target.value
120
+ }
121
+ });
122
+ typeof onPaste === 'function' && onPaste(e);
123
+ }
124
+ handleFocus(e) {
125
+ e.stopPropagation();
126
+ const {
127
+ onFocus
128
+ } = this.props;
129
+ this.onInputExcuted = false;
130
+ Object.defineProperty(e, 'detail', {
131
+ value: {
132
+ value: e.target.value
133
+ }
134
+ });
135
+ onFocus && onFocus(e);
136
+ }
137
+ handleBlur(e) {
138
+ e.stopPropagation();
139
+ const {
140
+ onBlur
141
+ } = this.props;
142
+ Object.defineProperty(e, 'detail', {
143
+ value: {
144
+ value: e.target.value
145
+ }
146
+ });
147
+ onBlur && onBlur(e);
148
+ }
149
+ handleKeyDown(e) {
150
+ e.stopPropagation();
151
+ const {
152
+ onConfirm,
153
+ onKeyDown
154
+ } = this.props;
155
+ const {
156
+ value
157
+ } = e.target;
158
+ const keyCode = e.keyCode || e.code;
159
+ this.onInputExcuted = false;
160
+ if (typeof onKeyDown === 'function') {
161
+ Object.defineProperty(e, 'detail', {
162
+ value: {
163
+ value,
164
+ cursor: value.length,
165
+ keyCode
166
+ }
167
+ });
168
+ onKeyDown(e);
169
+ }
170
+ if (e.keyCode === 13 && typeof onConfirm === 'function') {
171
+ Object.defineProperty(e, 'detail', {
172
+ value: {
173
+ value
174
+ }
175
+ });
176
+ onConfirm(e);
177
+ }
178
+ }
179
+ handleComposition(e) {
180
+ e.stopPropagation();
181
+ if (!(e.target instanceof HTMLInputElement)) return;
182
+ if (e.type === 'compositionend') {
183
+ this.isOnComposition = false;
184
+ this.handleInput(e);
185
+ } else {
186
+ this.isOnComposition = true;
187
+ }
188
+ }
189
+ render() {
190
+ const {
191
+ className = '',
192
+ placeholder,
193
+ type,
194
+ password = false,
195
+ disabled = false,
196
+ maxlength = 140,
197
+ confirmType = 'done',
198
+ name,
199
+ value
200
+ } = this.props;
201
+ const cls = classNames('taro-input-core', 'weui-input', className);
202
+ const otherProps = omit(this.props, ['forwardedRef', 'className', 'placeholder', 'disabled', 'password', 'type', 'maxlength', 'confirmType', 'focus', 'name']);
203
+ if ('value' in this.props) {
204
+ otherProps.value = fixControlledValue(value);
205
+ }
206
+ const _self$ = this;
207
+ return (() => {
208
+ var _el$ = _tmpl$();
209
+ use(input => {
210
+ if (_self$.props.forwardedRef) {
211
+ _self$.props.forwardedRef.current = input;
212
+ }
213
+ _self$.inputRef = input;
214
+ }, _el$);
215
+ spread(_el$, mergeProps(otherProps, {
216
+ "className": cls,
217
+ get type() {
218
+ return getTrueType(type, confirmType, password);
219
+ },
220
+ "placeholder": placeholder,
221
+ "disabled": disabled,
222
+ "maxLength": maxlength,
223
+ "name": name,
224
+ get onInput() {
225
+ return _self$.handleInput;
226
+ },
227
+ get onPaste() {
228
+ return _self$.handlePaste;
229
+ },
230
+ get onFocus() {
231
+ return _self$.handleFocus;
232
+ },
233
+ get onBlur() {
234
+ return _self$.handleBlur;
235
+ },
236
+ get onKeyDown() {
237
+ return _self$.handleKeyDown;
238
+ },
239
+ get onCompositionStart() {
240
+ return _self$.handleComposition;
241
+ },
242
+ get onCompositionEnd() {
243
+ return _self$.handleComposition;
244
+ },
245
+ get onBeforeInput() {
246
+ return _self$.handleBeforeInput;
247
+ }
248
+ }), false, false);
249
+ return _el$;
250
+ })();
251
+ }
252
+ }
253
+ var index = createForwardRefComponent(Input);
254
+
255
+ export { index as default };
256
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/input/index.tsx"],"sourcesContent":["import './style/index.scss'\n\nimport classNames from 'classnames'\nimport React from 'react'\n\nimport { createForwardRefComponent, omit } from '../../utils'\n\nfunction getTrueType (type: string | undefined, confirmType: string, password: boolean) {\n if (confirmType === 'search') type = 'search'\n if (password) type = 'password'\n if (typeof type === 'undefined') {\n return 'text'\n }\n if (!type) {\n throw new Error('unexpected type')\n }\n if (type === 'digit') type = 'number'\n\n return type\n}\n\nfunction fixControlledValue (value) {\n return value ?? ''\n}\n\ninterface IProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'type'> {\n password?: boolean\n disabled?: boolean\n maxlength?: number\n placeholder?: string\n value?: string\n focus?: boolean\n confirmType?: string\n name?: string\n type?: string\n onConfirm?: (e) => void\n forwardedRef?: React.MutableRefObject<HTMLInputElement>\n}\n\nclass Input extends React.Component<IProps, null> {\n constructor (props) {\n super(props)\n this.handleInput = this.handleInput.bind(this)\n this.handlePaste = this.handlePaste.bind(this)\n this.handleFocus = this.handleFocus.bind(this)\n this.handleBlur = this.handleBlur.bind(this)\n this.handleKeyDown = this.handleKeyDown.bind(this)\n this.handleComposition = this.handleComposition.bind(this)\n this.handleBeforeInput = this.handleBeforeInput.bind(this)\n this.isOnComposition = false\n this.onInputExcuted = false\n }\n\n inputRef: HTMLInputElement\n isOnComposition: boolean\n onInputExcuted: boolean\n\n componentDidMount () {\n // 修复无法选择文件\n if (this.props.type === 'file') {\n this.inputRef?.addEventListener('change', this.handleInput)\n } else {\n this.inputRef?.addEventListener('textInput', this.handleBeforeInput)\n }\n\n // 处理初始化是否 focus\n if (this.props.focus && this.inputRef) this.inputRef.focus()\n }\n\n componentWillUnmount () {\n // 修复无法选择文件\n if (this.props.type === 'file') {\n this.inputRef.removeEventListener('change', this.handleInput)\n } else {\n this.inputRef?.removeEventListener('textInput', this.handleBeforeInput)\n }\n }\n\n UNSAFE_componentWillReceiveProps (nextProps: Readonly<IProps>) {\n if (!this.props.focus && nextProps.focus && this.inputRef) this.inputRef.focus()\n }\n\n handleInput (e) {\n e.stopPropagation()\n const {\n type,\n maxlength = 140,\n confirmType = 'done',\n password = false,\n onInput\n } = this.props\n\n if (!this.isOnComposition && !this.onInputExcuted) {\n let { value } = e.target\n const inputType = getTrueType(type, confirmType, password)\n this.onInputExcuted = true\n /* 修复 number 类型 maxLength 无效 */\n if (inputType === 'number' && value && maxlength <= value.length) {\n value = value.substring(0, maxlength)\n e.target.value = value\n }\n\n Object.defineProperty(e, 'detail', {\n value: { value, cursor: value.length }\n })\n // // 修复 IOS 光标跳转问题\n // if (!(['number', 'file'].indexOf(inputType) >= 0)) {\n // const pos = e.target.selectionEnd\n // setTimeout(\n // () => {\n // e.target.selectionStart = pos\n // e.target.selectionEnd = pos\n // }\n // )\n // }\n\n typeof onInput === 'function' && onInput(e)\n this.onInputExcuted = false\n }\n }\n\n handlePaste (e) {\n e.stopPropagation()\n const { onPaste } = this.props\n this.onInputExcuted = false\n Object.defineProperty(e, 'detail', {\n value: {\n value: e.target.value\n }\n })\n typeof onPaste === 'function' && onPaste(e)\n }\n\n handleFocus (e) {\n e.stopPropagation()\n const { onFocus } = this.props\n this.onInputExcuted = false\n Object.defineProperty(e, 'detail', {\n value: {\n value: e.target.value\n }\n })\n onFocus && onFocus(e)\n }\n\n handleBlur (e) {\n e.stopPropagation()\n const { onBlur } = this.props\n Object.defineProperty(e, 'detail', {\n value: {\n value: e.target.value\n }\n })\n onBlur && onBlur(e)\n }\n\n handleKeyDown (e) {\n e.stopPropagation()\n const { onConfirm, onKeyDown } = this.props\n const { value } = e.target\n const keyCode = e.keyCode || e.code\n this.onInputExcuted = false\n\n if (typeof onKeyDown === 'function') {\n Object.defineProperty(e, 'detail', {\n value: {\n value,\n cursor: value.length,\n keyCode\n }\n })\n onKeyDown(e)\n }\n\n if (e.keyCode === 13 && typeof onConfirm === 'function') {\n Object.defineProperty(e, 'detail', {\n value: {\n value\n }\n })\n onConfirm(e)\n }\n }\n\n handleComposition (e) {\n e.stopPropagation()\n if (!(e.target instanceof HTMLInputElement)) return\n\n if (e.type === 'compositionend') {\n this.isOnComposition = false\n this.handleInput(e)\n } else {\n this.isOnComposition = true\n }\n }\n\n handleBeforeInput = (e) => {\n if (!e.data) return\n const isNumber = e.data && /[0-9]/.test(e.data)\n if (this.props.type === 'number' && !isNumber) {\n e.preventDefault()\n }\n if (this.props.type === 'digit' && !isNumber) {\n if (e.data !== '.' || (e.data === '.' && e.target.value.indexOf('.') > -1)) {\n e.preventDefault()\n }\n }\n }\n\n render () {\n const {\n className = '',\n placeholder,\n type,\n password = false,\n disabled = false,\n maxlength = 140,\n confirmType = 'done',\n name,\n value\n } = this.props\n const cls = classNames('taro-input-core', 'weui-input', className)\n\n const otherProps = omit(this.props, [\n 'forwardedRef',\n 'className',\n 'placeholder',\n 'disabled',\n 'password',\n 'type',\n 'maxlength',\n 'confirmType',\n 'focus',\n 'name'\n ])\n\n if ('value' in this.props) {\n otherProps.value = fixControlledValue(value)\n }\n\n return (\n <input\n ref={(input: HTMLInputElement) => {\n if (this.props.forwardedRef) {\n this.props.forwardedRef.current = input\n }\n this.inputRef = input\n }}\n {...otherProps}\n className={cls}\n type={getTrueType(type, confirmType, password)}\n placeholder={placeholder}\n disabled={disabled}\n maxLength={maxlength}\n name={name}\n onInput={this.handleInput}\n onPaste={this.handlePaste}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onKeyDown={this.handleKeyDown}\n onCompositionStart={this.handleComposition}\n onCompositionEnd={this.handleComposition}\n onBeforeInput={this.handleBeforeInput}\n />\n )\n }\n}\n\nexport default createForwardRefComponent(Input)\n"],"names":["getTrueType","type","confirmType","password","Error","fixControlledValue","value","Input","React","Component","constructor","props","handleBeforeInput","e","data","isNumber","test","preventDefault","target","indexOf","handleInput","bind","handlePaste","handleFocus","handleBlur","handleKeyDown","handleComposition","isOnComposition","onInputExcuted","componentDidMount","_a","inputRef","addEventListener","_b","focus","componentWillUnmount","removeEventListener","UNSAFE_componentWillReceiveProps","nextProps","stopPropagation","maxlength","onInput","inputType","length","substring","Object","defineProperty","cursor","onPaste","onFocus","onBlur","onConfirm","onKeyDown","keyCode","code","HTMLInputElement","render","className","placeholder","disabled","name","cls","classNames","otherProps","omit","_self$","_el$","_tmpl$","_$use","input","forwardedRef","current","_$spread","_$mergeProps","onCompositionStart","onCompositionEnd","onBeforeInput","createForwardRefComponent"],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ var undefined$1 = undefined;
2
+
3
+ export { undefined$1 as default };
4
+ //# sourceMappingURL=index.scss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}