@htyf-mp/taro-components-rn 0.0.1
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/README.md +2 -0
- package/dist/assets/icons/back.png +0 -0
- package/dist/assets/icons/cancel.png +0 -0
- package/dist/assets/icons/circle.png +0 -0
- package/dist/assets/icons/clear.png +0 -0
- package/dist/assets/icons/delete.png +0 -0
- package/dist/assets/icons/download.png +0 -0
- package/dist/assets/icons/info.png +0 -0
- package/dist/assets/icons/info_circle.png +0 -0
- package/dist/assets/icons/safe_success.png +0 -0
- package/dist/assets/icons/safe_warn.png +0 -0
- package/dist/assets/icons/search.png +0 -0
- package/dist/assets/icons/success.png +0 -0
- package/dist/assets/icons/success_circle.png +0 -0
- package/dist/assets/icons/success_no_circle.png +0 -0
- package/dist/assets/icons/waiting.png +0 -0
- package/dist/assets/icons/waiting_circle.png +0 -0
- package/dist/assets/icons/warn.png +0 -0
- package/dist/assets/loading-warn.png +0 -0
- package/dist/assets/loading.png +0 -0
- package/dist/assets/thumb.png +0 -0
- package/dist/assets/video/full.png +0 -0
- package/dist/assets/video/mute.png +0 -0
- package/dist/assets/video/pause.png +0 -0
- package/dist/assets/video/play.png +0 -0
- package/dist/assets/video/shrink.png +0 -0
- package/dist/assets/video/unmute.png +0 -0
- package/dist/assets/video/volume.png +0 -0
- package/dist/assets/weui.js +92 -0
- package/dist/assets/weui.js.map +1 -0
- package/dist/components/Block/index.js +8 -0
- package/dist/components/Block/index.js.map +1 -0
- package/dist/components/Button/PropsType.js +2 -0
- package/dist/components/Button/PropsType.js.map +1 -0
- package/dist/components/Button/index.js +159 -0
- package/dist/components/Button/index.js.map +1 -0
- package/dist/components/Button/styles.js +30 -0
- package/dist/components/Button/styles.js.map +1 -0
- package/dist/components/Camera/PropsType.js +2 -0
- package/dist/components/Camera/PropsType.js.map +1 -0
- package/dist/components/Camera/index.js +69 -0
- package/dist/components/Camera/index.js.map +1 -0
- package/dist/components/Camera/styles.js +8 -0
- package/dist/components/Camera/styles.js.map +1 -0
- package/dist/components/Checkbox/PropsType.js +2 -0
- package/dist/components/Checkbox/PropsType.js.map +1 -0
- package/dist/components/Checkbox/index.js +60 -0
- package/dist/components/Checkbox/index.js.map +1 -0
- package/dist/components/Checkbox/styles.js +28 -0
- package/dist/components/Checkbox/styles.js.map +1 -0
- package/dist/components/CheckboxGroup/PropsType.js +2 -0
- package/dist/components/CheckboxGroup/PropsType.js.map +1 -0
- package/dist/components/CheckboxGroup/index.js +64 -0
- package/dist/components/CheckboxGroup/index.js.map +1 -0
- package/dist/components/ClickableSimplified/PropsType.js +2 -0
- package/dist/components/ClickableSimplified/PropsType.js.map +1 -0
- package/dist/components/ClickableSimplified/index.js +187 -0
- package/dist/components/ClickableSimplified/index.js.map +1 -0
- package/dist/components/CoverImage/index.js +2 -0
- package/dist/components/CoverImage/index.js.map +1 -0
- package/dist/components/CoverView/index.js +2 -0
- package/dist/components/CoverView/index.js.map +1 -0
- package/dist/components/CustomWrapper/index.js +2 -0
- package/dist/components/CustomWrapper/index.js.map +1 -0
- package/dist/components/Form/PropsType.js +2 -0
- package/dist/components/Form/PropsType.js.map +1 -0
- package/dist/components/Form/index.js +104 -0
- package/dist/components/Form/index.js.map +1 -0
- package/dist/components/Icon/PropsType.js +2 -0
- package/dist/components/Icon/PropsType.js.map +1 -0
- package/dist/components/Icon/index.js +38 -0
- package/dist/components/Icon/index.js.map +1 -0
- package/dist/components/Image/PropsType.js +2 -0
- package/dist/components/Image/PropsType.js.map +1 -0
- package/dist/components/Image/index.js +162 -0
- package/dist/components/Image/index.js.map +1 -0
- package/dist/components/Input/PropsType.js +2 -0
- package/dist/components/Input/PropsType.js.map +1 -0
- package/dist/components/Input/index.js +215 -0
- package/dist/components/Input/index.js.map +1 -0
- package/dist/components/Label/PropsType.js +2 -0
- package/dist/components/Label/PropsType.js.map +1 -0
- package/dist/components/Label/index.js +45 -0
- package/dist/components/Label/index.js.map +1 -0
- package/dist/components/Map/index.js +146 -0
- package/dist/components/Map/index.js.map +1 -0
- package/dist/components/MovableArea/PropsType.js +2 -0
- package/dist/components/MovableArea/PropsType.js.map +1 -0
- package/dist/components/MovableArea/index.js +26 -0
- package/dist/components/MovableArea/index.js.map +1 -0
- package/dist/components/MovableView/PropsType.js +2 -0
- package/dist/components/MovableView/PropsType.js.map +1 -0
- package/dist/components/MovableView/index.js +107 -0
- package/dist/components/MovableView/index.js.map +1 -0
- package/dist/components/Navigator/index.js +39 -0
- package/dist/components/Navigator/index.js.map +1 -0
- package/dist/components/PageContainer/PropsType.js +2 -0
- package/dist/components/PageContainer/PropsType.js.map +1 -0
- package/dist/components/PageContainer/container.js +104 -0
- package/dist/components/PageContainer/container.js.map +1 -0
- package/dist/components/PageContainer/index.js +34 -0
- package/dist/components/PageContainer/index.js.map +1 -0
- package/dist/components/Picker/PropsType.js +2 -0
- package/dist/components/Picker/PropsType.js.map +1 -0
- package/dist/components/Picker/date.js +96 -0
- package/dist/components/Picker/date.js.map +1 -0
- package/dist/components/Picker/index.js +64 -0
- package/dist/components/Picker/index.js.map +1 -0
- package/dist/components/Picker/multiSelector.js +136 -0
- package/dist/components/Picker/multiSelector.js.map +1 -0
- package/dist/components/Picker/region.js +116 -0
- package/dist/components/Picker/region.js.map +1 -0
- package/dist/components/Picker/regionData.js +6100 -0
- package/dist/components/Picker/regionData.js.map +1 -0
- package/dist/components/Picker/selector.js +103 -0
- package/dist/components/Picker/selector.js.map +1 -0
- package/dist/components/Picker/time.js +81 -0
- package/dist/components/Picker/time.js.map +1 -0
- package/dist/components/PickerView/PropsType.js +2 -0
- package/dist/components/PickerView/PropsType.js.map +1 -0
- package/dist/components/PickerView/index.js +55 -0
- package/dist/components/PickerView/index.js.map +1 -0
- package/dist/components/PickerViewColumn/index.js +12 -0
- package/dist/components/PickerViewColumn/index.js.map +1 -0
- package/dist/components/Progress/PropsType.js +2 -0
- package/dist/components/Progress/PropsType.js.map +1 -0
- package/dist/components/Progress/index.js +119 -0
- package/dist/components/Progress/index.js.map +1 -0
- package/dist/components/Progress/styles.js +15 -0
- package/dist/components/Progress/styles.js.map +1 -0
- package/dist/components/Provider/index.js +3 -0
- package/dist/components/Provider/index.js.map +1 -0
- package/dist/components/Radio/PropsType.js +2 -0
- package/dist/components/Radio/PropsType.js.map +1 -0
- package/dist/components/Radio/index.js +59 -0
- package/dist/components/Radio/index.js.map +1 -0
- package/dist/components/Radio/styles.js +28 -0
- package/dist/components/Radio/styles.js.map +1 -0
- package/dist/components/RadioGroup/PropsType.js +2 -0
- package/dist/components/RadioGroup/PropsType.js.map +1 -0
- package/dist/components/RadioGroup/index.js +57 -0
- package/dist/components/RadioGroup/index.js.map +1 -0
- package/dist/components/RichText/PropsType.js +2 -0
- package/dist/components/RichText/PropsType.js.map +1 -0
- package/dist/components/RichText/index.js +65 -0
- package/dist/components/RichText/index.js.map +1 -0
- package/dist/components/ScrollView/PropsType.js +2 -0
- package/dist/components/ScrollView/PropsType.js.map +1 -0
- package/dist/components/ScrollView/index.js +238 -0
- package/dist/components/ScrollView/index.js.map +1 -0
- package/dist/components/Slider/PropsType.js +2 -0
- package/dist/components/Slider/PropsType.js.map +1 -0
- package/dist/components/Slider/index.js +84 -0
- package/dist/components/Slider/index.js.map +1 -0
- package/dist/components/Slider/styles.js +14 -0
- package/dist/components/Slider/styles.js.map +1 -0
- package/dist/components/Swiper/PropsType.js +2 -0
- package/dist/components/Swiper/PropsType.js.map +1 -0
- package/dist/components/Swiper/carousel.js +226 -0
- package/dist/components/Swiper/carousel.js.map +1 -0
- package/dist/components/Swiper/index.js +74 -0
- package/dist/components/Swiper/index.js.map +1 -0
- package/dist/components/Swiper/pagination.js +50 -0
- package/dist/components/Swiper/pagination.js.map +1 -0
- package/dist/components/SwiperItem/PropsType.js +2 -0
- package/dist/components/SwiperItem/PropsType.js.map +1 -0
- package/dist/components/SwiperItem/index.js +14 -0
- package/dist/components/SwiperItem/index.js.map +1 -0
- package/dist/components/SwiperItem/styles.js +9 -0
- package/dist/components/SwiperItem/styles.js.map +1 -0
- package/dist/components/Switch/PropsType.js +2 -0
- package/dist/components/Switch/PropsType.js.map +1 -0
- package/dist/components/Switch/index.js +93 -0
- package/dist/components/Switch/index.js.map +1 -0
- package/dist/components/Text/PropsType.js +2 -0
- package/dist/components/Text/PropsType.js.map +1 -0
- package/dist/components/Text/index.js +25 -0
- package/dist/components/Text/index.js.map +1 -0
- package/dist/components/Textarea/PropsType.js +2 -0
- package/dist/components/Textarea/PropsType.js.map +1 -0
- package/dist/components/Textarea/index.js +31 -0
- package/dist/components/Textarea/index.js.map +1 -0
- package/dist/components/Video/PropsType.js +2 -0
- package/dist/components/Video/PropsType.js.map +1 -0
- package/dist/components/Video/controls.js +166 -0
- package/dist/components/Video/controls.js.map +1 -0
- package/dist/components/Video/danmu.js +101 -0
- package/dist/components/Video/danmu.js.map +1 -0
- package/dist/components/Video/index.js +380 -0
- package/dist/components/Video/index.js.map +1 -0
- package/dist/components/Video/style.js +235 -0
- package/dist/components/Video/style.js.map +1 -0
- package/dist/components/Video/utils.js +14 -0
- package/dist/components/Video/utils.js.map +1 -0
- package/dist/components/View/PropsType.js +2 -0
- package/dist/components/View/PropsType.js.map +1 -0
- package/dist/components/View/index.js +46 -0
- package/dist/components/View/index.js.map +1 -0
- package/dist/components/VirtualList/PropsType.js +2 -0
- package/dist/components/VirtualList/PropsType.js.map +1 -0
- package/dist/components/VirtualList/index.js +82 -0
- package/dist/components/VirtualList/index.js.map +1 -0
- package/dist/components/WebView/PropsType.js +2 -0
- package/dist/components/WebView/PropsType.js.map +1 -0
- package/dist/components/WebView/index.js +31 -0
- package/dist/components/WebView/index.js.map +1 -0
- package/dist/components/hooks/PropsType.js +2 -0
- package/dist/components/hooks/PropsType.js.map +1 -0
- package/dist/components/hooks/useClickable.js +168 -0
- package/dist/components/hooks/useClickable.js.map +1 -0
- package/dist/index.js +38 -0
- package/dist/index.js.map +1 -0
- package/dist/setup.js +12 -0
- package/dist/setup.js.map +1 -0
- package/dist/utils/index.js +87 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +73 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ✔ onChange(bindchange)
|
|
3
|
+
*
|
|
4
|
+
* @warn No support of props FOR, you must put checkbox below label straightly.
|
|
5
|
+
*/
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
import { View, } from 'react-native';
|
|
8
|
+
import { noop } from '../../utils';
|
|
9
|
+
class _CheckboxGroup extends React.Component {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.values = [];
|
|
13
|
+
this.tmpIndex = 0;
|
|
14
|
+
this.getDataFromValues = () => {
|
|
15
|
+
return this.values
|
|
16
|
+
.filter((item) => item.checked)
|
|
17
|
+
.map((item) => item.value);
|
|
18
|
+
};
|
|
19
|
+
this.toggleChange = (e, index) => {
|
|
20
|
+
const { onChange = noop } = this.props;
|
|
21
|
+
this.values[index] = {
|
|
22
|
+
value: e.value,
|
|
23
|
+
checked: e.checked
|
|
24
|
+
};
|
|
25
|
+
onChange({
|
|
26
|
+
detail: {
|
|
27
|
+
value: this.getDataFromValues()
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
};
|
|
31
|
+
this.findAndAttachCb = (children) => {
|
|
32
|
+
return React.Children.toArray(children).map((child) => {
|
|
33
|
+
if (!child.type)
|
|
34
|
+
return child;
|
|
35
|
+
const childTypeName = child.type.displayName;
|
|
36
|
+
if (childTypeName === '_Checkbox') {
|
|
37
|
+
const { value, disabled, checked, color } = child.props;
|
|
38
|
+
const index = this.tmpIndex++;
|
|
39
|
+
this.values[index] = { value, checked };
|
|
40
|
+
return React.cloneElement(child, {
|
|
41
|
+
onChange: (e) => this.toggleChange(e, index),
|
|
42
|
+
value,
|
|
43
|
+
disabled,
|
|
44
|
+
checked,
|
|
45
|
+
color
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
return React.cloneElement(child, Object.assign({}, child.props), this.findAndAttachCb(child.props.children));
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
render() {
|
|
55
|
+
const { children, style, _onGroupDataInitial = noop } = this.props;
|
|
56
|
+
this.tmpIndex = 0;
|
|
57
|
+
const mapChildren = this.findAndAttachCb(children);
|
|
58
|
+
_onGroupDataInitial(this.getDataFromValues());
|
|
59
|
+
return (React.createElement(View, { style: style }, mapChildren));
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
_CheckboxGroup.displayName = '_CheckboxGroup';
|
|
63
|
+
export default _CheckboxGroup;
|
|
64
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/CheckboxGroup/index.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EACL,IAAI,GACL,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAGlC,MAAM,cAAe,SAAQ,KAAK,CAAC,SAA6B;IAAhE;;QAGE,WAAM,GAAiB,EAAE,CAAA;QACzB,aAAQ,GAAG,CAAC,CAAA;QAEZ,sBAAiB,GAAG,GAAiB,EAAE;YACrC,OAAO,IAAI,CAAC,MAAM;iBACf,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;iBAC9B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9B,CAAC,CAAA;QAED,iBAAY,GAAG,CAAC,CAAgB,EAAE,KAAa,EAAQ,EAAE;YACvD,MAAM,EAAE,QAAQ,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;YACtC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG;gBACnB,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,OAAO,EAAE,CAAC,CAAC,OAAO;aACnB,CAAA;YACD,QAAQ,CAAC;gBACP,MAAM,EAAE;oBACN,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE;iBAChC;aACF,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,oBAAe,GAAG,CAAC,QAAyB,EAAmB,EAAE;YAC/D,OAAO,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;gBACzD,IAAI,CAAC,KAAK,CAAC,IAAI;oBAAE,OAAO,KAAK,CAAA;gBAE7B,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAA;gBAC5C,IAAI,aAAa,KAAK,WAAW,EAAE,CAAC;oBAClC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,CAAA;oBACvD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;oBAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA;oBACvC,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;wBAC/B,QAAQ,EAAE,CAAC,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC;wBAC3D,KAAK;wBACL,QAAQ;wBACR,OAAO;wBACP,KAAK;qBACN,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,oBAAO,KAAK,CAAC,KAAK,GAAI,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;gBAClG,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;IAmBH,CAAC;IAjBC,MAAM;QACJ,MAAM,EACJ,QAAQ,EACR,KAAK,EACL,mBAAmB,GAAG,IAAI,EAC3B,GAAG,IAAI,CAAC,KAAK,CAAA;QAEd,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;QACjB,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;QAClD,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAA;QAE7C,OAAO,CACL,oBAAC,IAAI,IAAC,KAAK,EAAE,KAAK,IACf,WAAW,CACP,CACR,CAAA;IACH,CAAC;;AA9DM,0BAAW,GAAG,gBAAgB,AAAnB,CAAmB;AAiEvC,eAAe,cAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PropsType.js","sourceRoot":"","sources":["../../../src/components/ClickableSimplified/PropsType.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ✔ hoverStyle: Convert hoverClass to hoverStyle.
|
|
3
|
+
* ✔ hoverStartTime
|
|
4
|
+
* ✔ hoverStayTime
|
|
5
|
+
* ✘ hoverStopPropagation: Fixed value TRUE
|
|
6
|
+
* ✔ onClick(tap)
|
|
7
|
+
* ✔ onLongPress(longpress)
|
|
8
|
+
* ✔ onTouchStart
|
|
9
|
+
* ✘ onTouchMove
|
|
10
|
+
* ✘ onTouchCancel
|
|
11
|
+
* ✔ onTouchEnd
|
|
12
|
+
*/
|
|
13
|
+
import * as React from 'react';
|
|
14
|
+
import { PanResponder } from 'react-native';
|
|
15
|
+
import { omit } from '../../utils';
|
|
16
|
+
export const clickableHandlers = [
|
|
17
|
+
'onStartShouldSetResponder',
|
|
18
|
+
'onMoveShouldSetResponder',
|
|
19
|
+
'onResponderEnd',
|
|
20
|
+
'onResponderGrant',
|
|
21
|
+
'onResponderReject',
|
|
22
|
+
'onResponderMove',
|
|
23
|
+
'onResponderRelease',
|
|
24
|
+
'onResponderStart',
|
|
25
|
+
'onResponderStart',
|
|
26
|
+
'onResponderTerminationRequest',
|
|
27
|
+
'onResponderTerminate',
|
|
28
|
+
'onMoveShouldSetResponderCapture',
|
|
29
|
+
];
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
31
|
+
export default function (WrappedComponent) {
|
|
32
|
+
var _a;
|
|
33
|
+
return _a = class _Clickable extends React.Component {
|
|
34
|
+
constructor() {
|
|
35
|
+
super(...arguments);
|
|
36
|
+
this.state = {
|
|
37
|
+
isHover: false
|
|
38
|
+
};
|
|
39
|
+
this.$ref = React.createRef();
|
|
40
|
+
this.startTimestamp = 0;
|
|
41
|
+
this.panResponder = PanResponder.create({
|
|
42
|
+
onStartShouldSetPanResponder: () => {
|
|
43
|
+
const { hoverStyle, onClick, onLongPress, onTouchStart,
|
|
44
|
+
// onTouchMove,
|
|
45
|
+
// onTouchCancel,
|
|
46
|
+
onTouchEnd } = this.props;
|
|
47
|
+
return !!(hoverStyle || onClick || onLongPress || onTouchStart || onTouchEnd);
|
|
48
|
+
},
|
|
49
|
+
onShouldBlockNativeResponder: () => false,
|
|
50
|
+
// onMoveShouldSetPanResponder: (evt: GestureResponderEvent, gestureState) => {
|
|
51
|
+
// const { onTouchMove, onTouchCancel, onTouchEnd } = this.props
|
|
52
|
+
// return !!(onTouchMove || onTouchCancel || onTouchEnd)
|
|
53
|
+
// },
|
|
54
|
+
onPanResponderGrant: (evt) => {
|
|
55
|
+
const { onTouchStart } = this.props;
|
|
56
|
+
onTouchStart && onTouchStart(this.getWxAppEvent(evt));
|
|
57
|
+
this.startTimestamp = evt.nativeEvent.timestamp;
|
|
58
|
+
this.setStartTimer();
|
|
59
|
+
},
|
|
60
|
+
// onPanResponderMove: (evt: GestureResponderEvent, gestureState) => {
|
|
61
|
+
// const { onTouchMove } = this.props
|
|
62
|
+
// onTouchMove && onTouchMove(this.getWxAppEvent(evt))
|
|
63
|
+
// },
|
|
64
|
+
onPanResponderTerminationRequest: () => true,
|
|
65
|
+
onPanResponderRelease: (evt, gestureState) => {
|
|
66
|
+
const { onClick, onLongPress, onTouchEnd } = this.props;
|
|
67
|
+
onTouchEnd && onTouchEnd(this.getWxAppEvent(evt));
|
|
68
|
+
const endTimestamp = evt.nativeEvent.timestamp;
|
|
69
|
+
const gapTime = endTimestamp - this.startTimestamp;
|
|
70
|
+
// 1 =>3, 修复部分android机型(三星折叠屏尤为明显),单击时dx,dy为>1,而被误判为move的情况。
|
|
71
|
+
const hasMove = Math.abs(gestureState.dx) >= 3 || Math.abs(gestureState.dy) >= 3;
|
|
72
|
+
if (!hasMove) {
|
|
73
|
+
if (gapTime <= 350) {
|
|
74
|
+
onClick && onClick(this.getWxAppEvent(evt));
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
onLongPress && onLongPress(this.getWxAppEvent(evt));
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
this.setStayTimer();
|
|
81
|
+
},
|
|
82
|
+
onPanResponderTerminate: () => {
|
|
83
|
+
// const { onTouchCancel } = this.props
|
|
84
|
+
// onTouchCancel && onTouchCancel(this.getWxAppEvent(evt))
|
|
85
|
+
this.setStayTimer();
|
|
86
|
+
},
|
|
87
|
+
});
|
|
88
|
+
this.setStartTimer = () => {
|
|
89
|
+
const { hoverStyle, hoverStartTime } = this.props;
|
|
90
|
+
if (hoverStyle) {
|
|
91
|
+
this.startTimer && clearTimeout(this.startTimer);
|
|
92
|
+
this.startTimer = setTimeout(() => {
|
|
93
|
+
this.setState({ isHover: true });
|
|
94
|
+
}, hoverStartTime);
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
this.setStayTimer = () => {
|
|
98
|
+
const { hoverStyle, hoverStayTime } = this.props;
|
|
99
|
+
if (hoverStyle) {
|
|
100
|
+
this.stayTimer && clearTimeout(this.stayTimer);
|
|
101
|
+
this.stayTimer = setTimeout(() => {
|
|
102
|
+
this.state.isHover && this.setState({ isHover: false });
|
|
103
|
+
}, hoverStayTime);
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
this.getWxAppEvent = (event) => {
|
|
107
|
+
const nativeEvent = event.nativeEvent;
|
|
108
|
+
const { timestamp, target, pageX, pageY, touches = [], changedTouches = [] } = nativeEvent;
|
|
109
|
+
return {
|
|
110
|
+
type: 'tap',
|
|
111
|
+
timeStamp: timestamp,
|
|
112
|
+
target: {
|
|
113
|
+
id: target,
|
|
114
|
+
dataset: {}
|
|
115
|
+
},
|
|
116
|
+
currentTarget: {
|
|
117
|
+
id: target,
|
|
118
|
+
dataset: {}
|
|
119
|
+
},
|
|
120
|
+
detail: {
|
|
121
|
+
x: pageX,
|
|
122
|
+
y: pageY
|
|
123
|
+
},
|
|
124
|
+
touches: touches.map((item) => {
|
|
125
|
+
return {
|
|
126
|
+
identifier: item.identifier,
|
|
127
|
+
pageX: item.pageX,
|
|
128
|
+
pageY: item.pageY,
|
|
129
|
+
clientX: item.locationX,
|
|
130
|
+
clientY: item.locationY
|
|
131
|
+
};
|
|
132
|
+
}),
|
|
133
|
+
changedTouches: changedTouches.map((item) => {
|
|
134
|
+
return {
|
|
135
|
+
identifier: item.identifier,
|
|
136
|
+
pageX: item.pageX,
|
|
137
|
+
pageY: item.pageY,
|
|
138
|
+
clientX: item.locationX,
|
|
139
|
+
clientY: item.locationY
|
|
140
|
+
};
|
|
141
|
+
})
|
|
142
|
+
};
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
componentWillUnmount() {
|
|
146
|
+
this.startTimer && clearTimeout(this.startTimer);
|
|
147
|
+
this.stayTimer && clearTimeout(this.stayTimer);
|
|
148
|
+
}
|
|
149
|
+
render() {
|
|
150
|
+
const { style, hoverStyle,
|
|
151
|
+
// hoverStopPropagation,
|
|
152
|
+
onClick, onLongPress, onTouchStart,
|
|
153
|
+
// onTouchMove,
|
|
154
|
+
// onTouchCancel,
|
|
155
|
+
onTouchEnd, } = this.props;
|
|
156
|
+
const { isHover } = this.state;
|
|
157
|
+
if (!hoverStyle &&
|
|
158
|
+
// !hoverStopPropagation &&
|
|
159
|
+
!onClick &&
|
|
160
|
+
!onLongPress &&
|
|
161
|
+
!onTouchStart &&
|
|
162
|
+
// !onTouchMove &&
|
|
163
|
+
// !onTouchCancel &&
|
|
164
|
+
!onTouchEnd) {
|
|
165
|
+
return (React.createElement(WrappedComponent, Object.assign({ ref: this.$ref }, this.props)));
|
|
166
|
+
}
|
|
167
|
+
return (React.createElement(WrappedComponent, Object.assign({ ref: this.$ref }, omit(this.props, [
|
|
168
|
+
'style',
|
|
169
|
+
'hoverStyle',
|
|
170
|
+
'hoverStartTime',
|
|
171
|
+
'hoverStayTime',
|
|
172
|
+
'onClick',
|
|
173
|
+
'onLongPress',
|
|
174
|
+
'onTouchStart',
|
|
175
|
+
// 'onTouchMove',
|
|
176
|
+
// 'onTouchCancel',
|
|
177
|
+
'onTouchEnd'
|
|
178
|
+
]), this.panResponder.panHandlers, { style: [{ backgroundColor: 'transparent' }, style, isHover && hoverStyle] })));
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
_a.defaultProps = {
|
|
182
|
+
hoverStartTime: 20,
|
|
183
|
+
hoverStayTime: 70
|
|
184
|
+
},
|
|
185
|
+
_a;
|
|
186
|
+
}
|
|
187
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ClickableSimplified/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/CoverImage/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/CoverView/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/CustomWrapper/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PropsType.js","sourceRoot":"","sources":["../../../src/components/Form/PropsType.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ✘ report-submit
|
|
3
|
+
* ✔ onSubmit(bindsubmit): no FormId info.
|
|
4
|
+
* ✘ onReset(bindreset)
|
|
5
|
+
*/
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
import { View } from 'react-native';
|
|
8
|
+
import { noop } from '../../utils';
|
|
9
|
+
function isFormTypeElement(typeName) {
|
|
10
|
+
return [
|
|
11
|
+
'_Input',
|
|
12
|
+
'_Textarea',
|
|
13
|
+
'_CheckboxGroup',
|
|
14
|
+
'_RadioGroup',
|
|
15
|
+
'_Switch',
|
|
16
|
+
'_Slider',
|
|
17
|
+
'_Picker'
|
|
18
|
+
].indexOf(typeName) >= 0;
|
|
19
|
+
}
|
|
20
|
+
class _Form extends React.Component {
|
|
21
|
+
constructor() {
|
|
22
|
+
super(...arguments);
|
|
23
|
+
this.formValues = {};
|
|
24
|
+
this.bindValueChangeEvent = (child) => {
|
|
25
|
+
// onChange: _CheckboxGroup _RadioGroup _Switch _Slider _Picker
|
|
26
|
+
// onBlur: _Input _Textarea
|
|
27
|
+
// @ts-ignore
|
|
28
|
+
const childTypeName = child.type && child.type.displayName;
|
|
29
|
+
// @ts-ignore
|
|
30
|
+
const childPropsName = child.props.name;
|
|
31
|
+
const valueChangeCbName = childTypeName === '_Input' || childTypeName === '_Textarea' ? 'onBlur' : 'onChange';
|
|
32
|
+
// @ts-ignore
|
|
33
|
+
const tmpProps = Object.assign({}, child.props);
|
|
34
|
+
// Initial value
|
|
35
|
+
if (['_Input', '_Textarea', '_Slider', '_Picker'].indexOf(childTypeName) >= 0) {
|
|
36
|
+
// @ts-ignore
|
|
37
|
+
if (child.props.value !== undefined) {
|
|
38
|
+
// @ts-ignore
|
|
39
|
+
this.formValues[childPropsName] = child.props.value;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else if (childTypeName === '_Switch') {
|
|
43
|
+
// @ts-ignore
|
|
44
|
+
if (child.props.checked !== undefined) {
|
|
45
|
+
// @ts-ignore
|
|
46
|
+
this.formValues[childPropsName] = !!child.props.checked;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
tmpProps._onGroupDataInitial = (value) => {
|
|
51
|
+
this.formValues[childPropsName] = value;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
55
|
+
const self = this;
|
|
56
|
+
tmpProps[valueChangeCbName] = function (event) {
|
|
57
|
+
// @ts-ignore
|
|
58
|
+
const valueChangeCb = child.props[valueChangeCbName] || noop;
|
|
59
|
+
self.formValues[childPropsName] = event.detail.value;
|
|
60
|
+
// eslint-disable-next-line prefer-rest-params
|
|
61
|
+
valueChangeCb(...arguments);
|
|
62
|
+
};
|
|
63
|
+
// @ts-ignore
|
|
64
|
+
return React.cloneElement(child, tmpProps, child.props.children);
|
|
65
|
+
};
|
|
66
|
+
this.deppDiveIntoChildren = (children) => {
|
|
67
|
+
const result = React.Children.toArray(children).map((child) => {
|
|
68
|
+
const childTypeName = child.type && child.type.displayName;
|
|
69
|
+
if (!child.type)
|
|
70
|
+
return child;
|
|
71
|
+
if (childTypeName === '_Button' && ['submit', 'reset'].indexOf(child.props.formType) >= 0) {
|
|
72
|
+
const onClick = child.props.onClick || noop;
|
|
73
|
+
return React.cloneElement(child, Object.assign(Object.assign({}, child.props), { onClick: () => {
|
|
74
|
+
const formType = child.props.formType;
|
|
75
|
+
this[formType]();
|
|
76
|
+
onClick();
|
|
77
|
+
} }));
|
|
78
|
+
}
|
|
79
|
+
return isFormTypeElement(childTypeName) && child.props.name
|
|
80
|
+
? this.bindValueChangeEvent(child)
|
|
81
|
+
: React.cloneElement(child, Object.assign({}, child.props), this.deppDiveIntoChildren(child.props.children));
|
|
82
|
+
});
|
|
83
|
+
return result.length ? result : null;
|
|
84
|
+
};
|
|
85
|
+
this.submit = () => {
|
|
86
|
+
const { onSubmit = noop } = this.props;
|
|
87
|
+
onSubmit({
|
|
88
|
+
detail: {
|
|
89
|
+
value: this.formValues
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
this.reset = () => {
|
|
94
|
+
const { onReset = noop } = this.props;
|
|
95
|
+
onReset();
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
render() {
|
|
99
|
+
const { children, style, } = this.props;
|
|
100
|
+
return (React.createElement(View, { style: style }, this.deppDiveIntoChildren(children)));
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
export default _Form;
|
|
104
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Form/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PropsType.js","sourceRoot":"","sources":["../../../src/components/Icon/PropsType.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ✔ type
|
|
3
|
+
* ✔ size
|
|
4
|
+
* ✔ color
|
|
5
|
+
*/
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
import { Image, View } from 'react-native';
|
|
8
|
+
import * as WEUI from '../../assets/weui';
|
|
9
|
+
const iconTypeMap = {
|
|
10
|
+
success: 'SUCCESS',
|
|
11
|
+
success_no_circle: 'SUCCESS_NO_CIRCLE',
|
|
12
|
+
info: 'INFO',
|
|
13
|
+
warn: 'WARN',
|
|
14
|
+
waiting: 'WAITING',
|
|
15
|
+
cancel: 'CANCEL',
|
|
16
|
+
download: 'DOWNLOAD',
|
|
17
|
+
search: 'SEARCH',
|
|
18
|
+
clear: 'CLEAR',
|
|
19
|
+
};
|
|
20
|
+
const _Icon = ({ style, type, size = 23, color }) => {
|
|
21
|
+
size = ~~size;
|
|
22
|
+
const iconObj = WEUI[iconTypeMap[type]];
|
|
23
|
+
if (!iconObj) {
|
|
24
|
+
return (React.createElement(View, { style: [style, { width: size, height: size }] }));
|
|
25
|
+
}
|
|
26
|
+
const imageAsset = iconObj.image;
|
|
27
|
+
// @todo Back & Delete do not have default color. '#B2B2B2'
|
|
28
|
+
const iconColor = color || iconObj.defaultColor;
|
|
29
|
+
return (React.createElement(View, { testID: 'icon', style: [style, { width: size, height: size }] },
|
|
30
|
+
React.createElement(Image, { testID: 'image', source: imageAsset, style: {
|
|
31
|
+
width: size,
|
|
32
|
+
height: size,
|
|
33
|
+
tintColor: iconColor
|
|
34
|
+
} })));
|
|
35
|
+
};
|
|
36
|
+
_Icon.displayName = '_Icon';
|
|
37
|
+
export default _Icon;
|
|
38
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Icon/index.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EACL,KAAK,EACL,IAAI,EACL,MAAM,cAAc,CAAA;AAErB,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAA;AAOzC,MAAM,WAAW,GAA8B;IAC7C,OAAO,EAAE,SAAS;IAClB,iBAAiB,EAAE,mBAAmB;IACtC,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACf,CAAA;AAED,MAAM,KAAK,GAAwB,CAAC,EAClC,KAAK,EACL,IAAI,EACJ,IAAI,GAAG,EAAE,EACT,KAAK,EACK,EAAE,EAAE;IACd,IAAI,GAAG,CAAC,CAAC,IAAI,CAAA;IAEb,MAAM,OAAO,GAAS,IAAe,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;IAExD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CACL,oBAAC,IAAI,IAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAI,CACxD,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAQ,OAAO,CAAC,KAAK,CAAA;IACrC,2DAA2D;IAC3D,MAAM,SAAS,GAAW,KAAK,IAAI,OAAO,CAAC,YAAY,CAAA;IAEvD,OAAO,CACL,oBAAC,IAAI,IAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC/D,oBAAC,KAAK,IACJ,MAAM,EAAC,OAAO,EACd,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE;gBACL,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE,SAAS;aACrB,GACD,CACG,CACR,CAAA;AACH,CAAC,CAAA;AAED,KAAK,CAAC,WAAW,GAAG,OAAO,CAAA;AAE3B,eAAe,KAAK,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PropsType.js","sourceRoot":"","sources":["../../../src/components/Image/PropsType.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ✔ src
|
|
3
|
+
* ✔ mode: Partial support
|
|
4
|
+
* ✘ lazy-load
|
|
5
|
+
* ✔ onError(binderror)
|
|
6
|
+
* ✔ onLoad(bindload)
|
|
7
|
+
* ✘ onClick
|
|
8
|
+
* ✔ DEFAULT_SIZE
|
|
9
|
+
*
|
|
10
|
+
* @warn Pass require(LOCAL IMAGE) to SRC, otherwise a string-type parameter.
|
|
11
|
+
* @warn The width/height would be undefined in onLoad.
|
|
12
|
+
* @warn Avoid using HTTP source image.
|
|
13
|
+
* @warn Image.resolveAssetSource 会造成重复请求
|
|
14
|
+
* @warn 宽高为 0 的时候,不触发 onLoad,跟小程序不同
|
|
15
|
+
*/
|
|
16
|
+
import * as React from 'react';
|
|
17
|
+
import { useCallback, useEffect, useRef, useState } from 'react';
|
|
18
|
+
import { Image, StyleSheet } from 'react-native';
|
|
19
|
+
import { omit } from '../../utils';
|
|
20
|
+
import useClickable from '../hooks/useClickable';
|
|
21
|
+
// fix: https://github.com/facebook/metro/issues/836
|
|
22
|
+
// 保证 react-native-svg 是最后一个依赖
|
|
23
|
+
const omitProp = (props) => {
|
|
24
|
+
return omit(props, ['source', 'src', 'resizeMode', 'onLoad', 'onError', 'onLayout', 'style']);
|
|
25
|
+
};
|
|
26
|
+
const resizeModeMap = {
|
|
27
|
+
scaleToFill: 'stretch',
|
|
28
|
+
aspectFit: 'contain',
|
|
29
|
+
aspectFill: 'cover',
|
|
30
|
+
center: 'center',
|
|
31
|
+
// And widthFix
|
|
32
|
+
// Not supported value...
|
|
33
|
+
};
|
|
34
|
+
let SvgCssUri, WithLocalSvg;
|
|
35
|
+
// react-native-svg is optional
|
|
36
|
+
try {
|
|
37
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
38
|
+
const svg = require('react-native-svg');
|
|
39
|
+
SvgCssUri = svg.SvgCssUri;
|
|
40
|
+
WithLocalSvg = svg.WithLocalSvg;
|
|
41
|
+
}
|
|
42
|
+
catch (e) { }
|
|
43
|
+
const _Image = (props = {
|
|
44
|
+
src: '',
|
|
45
|
+
mode: 'scaleToFill'
|
|
46
|
+
}) => {
|
|
47
|
+
const ref = useRef({
|
|
48
|
+
hasLayout: false
|
|
49
|
+
});
|
|
50
|
+
const [ratio, setRatio] = useState(0);
|
|
51
|
+
const [layoutWidth, setLayoutWidth] = useState(0);
|
|
52
|
+
const newProps = useClickable(props);
|
|
53
|
+
const { style, src, mode = 'scaleToFill', svg = false, onLoad, onError } = newProps;
|
|
54
|
+
const _onError = useCallback(() => {
|
|
55
|
+
if (!onError)
|
|
56
|
+
return;
|
|
57
|
+
onError({
|
|
58
|
+
detail: { errMsg: 'something wrong' }
|
|
59
|
+
});
|
|
60
|
+
}, [onError]);
|
|
61
|
+
const _onLoad = useCallback(() => {
|
|
62
|
+
if (!onLoad)
|
|
63
|
+
return;
|
|
64
|
+
if (typeof src === 'string') {
|
|
65
|
+
Image.getSize(src, (width, height) => {
|
|
66
|
+
onLoad({
|
|
67
|
+
detail: { width, height }
|
|
68
|
+
});
|
|
69
|
+
}, () => {
|
|
70
|
+
onLoad({
|
|
71
|
+
detail: { width: 0, height: 0 }
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
const iras = Image.resolveAssetSource(typeof src === 'string' ? { uri: src } : src);
|
|
77
|
+
const { width, height } = iras || { width: 0, height: 0 };
|
|
78
|
+
onLoad({
|
|
79
|
+
detail: { width, height }
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}, [onLoad]);
|
|
83
|
+
const onLayout = (event) => {
|
|
84
|
+
const { width: layoutWidth } = event.nativeEvent.layout;
|
|
85
|
+
const flattenStyle = StyleSheet.flatten(style) || {};
|
|
86
|
+
if (mode === 'widthFix' && typeof flattenStyle.width === 'string') {
|
|
87
|
+
if (ref.current.hasLayout)
|
|
88
|
+
return;
|
|
89
|
+
setLayoutWidth(layoutWidth);
|
|
90
|
+
}
|
|
91
|
+
if (ratio) {
|
|
92
|
+
ref.current.hasLayout = true;
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
const loadImg = useCallback((props) => {
|
|
96
|
+
if (mode !== 'widthFix')
|
|
97
|
+
return;
|
|
98
|
+
if (typeof src === 'string') {
|
|
99
|
+
Image.getSize(props.src, (width, height) => {
|
|
100
|
+
if (ref.current.hasLayout)
|
|
101
|
+
return;
|
|
102
|
+
setRatio(height / width);
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
const source = typeof props.src === 'string' ? { uri: props.src } : props.src;
|
|
107
|
+
const { width, height } = Image.resolveAssetSource(source) || {};
|
|
108
|
+
if (ref.current.hasLayout && !!ratio)
|
|
109
|
+
return;
|
|
110
|
+
setRatio(height / width);
|
|
111
|
+
}
|
|
112
|
+
}, [mode, src, ref]);
|
|
113
|
+
useEffect(() => {
|
|
114
|
+
ref.current.hasLayout = false;
|
|
115
|
+
loadImg(props);
|
|
116
|
+
}, [props.src, ref]);
|
|
117
|
+
const flattenStyle = StyleSheet.flatten(style) || {};
|
|
118
|
+
const defaultWidth = flattenStyle.width || 300;
|
|
119
|
+
const defaultHeight = flattenStyle.height || 225;
|
|
120
|
+
// remote svg image support, svg 图片暂不支持 mode
|
|
121
|
+
const remoteSvgReg = /(https?:\/\/.*\.(?:svg|svgx))/i;
|
|
122
|
+
if (SvgCssUri && typeof src === 'string' && remoteSvgReg.test(src)) {
|
|
123
|
+
return (React.createElement(SvgCssUri, { uri: src, width: defaultWidth, height: defaultHeight }));
|
|
124
|
+
}
|
|
125
|
+
// The parameter passed to require mpxTransformust be a string literal
|
|
126
|
+
const source = typeof src === 'string' ? { uri: src } : src;
|
|
127
|
+
// local svg image support, svg 图片暂不支持 mode
|
|
128
|
+
if (WithLocalSvg && svg) {
|
|
129
|
+
return (React.createElement(WithLocalSvg, { asset: source, width: defaultWidth, height: defaultHeight }));
|
|
130
|
+
}
|
|
131
|
+
const isWidthFix = mode === 'widthFix';
|
|
132
|
+
const rMode = (resizeModeMap[mode] || (isWidthFix ? undefined : 'stretch'));
|
|
133
|
+
const imageHeight = (() => {
|
|
134
|
+
if (isWidthFix) {
|
|
135
|
+
if (typeof flattenStyle.width === 'string') {
|
|
136
|
+
return layoutWidth * ratio;
|
|
137
|
+
}
|
|
138
|
+
else if (typeof flattenStyle.width === 'number') {
|
|
139
|
+
return flattenStyle.width * ratio;
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
return 300 * ratio;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
return defaultHeight;
|
|
147
|
+
}
|
|
148
|
+
})();
|
|
149
|
+
const restImageProps = omitProp(newProps);
|
|
150
|
+
return (React.createElement(Image, Object.assign({ testID: 'image', source: source, resizeMode: rMode, onError: _onError, onLoad: _onLoad, onLayout: onLayout, style: [
|
|
151
|
+
{
|
|
152
|
+
width: 300
|
|
153
|
+
},
|
|
154
|
+
style,
|
|
155
|
+
{
|
|
156
|
+
height: imageHeight
|
|
157
|
+
}
|
|
158
|
+
] }, restImageProps)));
|
|
159
|
+
};
|
|
160
|
+
export { _Image };
|
|
161
|
+
export default _Image;
|
|
162
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Image/index.tsx"],"names":[],"mappings":"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"}
|