@tarojs/components-react 3.5.0-alpha.3 → 3.5.0-alpha.4

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/dist/_tslib.js ADDED
@@ -0,0 +1,29 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+ function __rest(s, e) {
17
+ var t = {};
18
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
19
+ t[p] = s[p];
20
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
21
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
22
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
23
+ t[p[i]] = s[p[i]];
24
+ }
25
+ return t;
26
+ }
27
+
28
+ export { __rest as _ };
29
+ //# sourceMappingURL=_tslib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_tslib.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,21 +1,17 @@
1
- import _objectSpread from '@babel/runtime/helpers/objectSpread2';
2
- import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
1
  import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
4
2
  import _createClass from '@babel/runtime/helpers/createClass';
5
3
  import _assertThisInitialized from '@babel/runtime/helpers/assertThisInitialized';
6
4
  import _inherits from '@babel/runtime/helpers/inherits';
7
5
  import _createSuper from '@babel/runtime/helpers/createSuper';
8
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
6
+ import { _ as __rest } from '../_tslib.js';
9
7
  import '../weui.js';
10
8
  import React from 'react';
11
- import { s as styleInject, c as classNames } from '../index.js';
9
+ import { s as styleInject, c as classNames } from '../style-inject.es.js';
12
10
  import '@babel/runtime/helpers/typeof';
13
11
 
14
12
  var css_248z = "img[src=\"\"] {\n opacity: 0;\n}\n\n.taro-img {\n display: inline-block;\n overflow: hidden;\n position: relative;\n font-size: 0;\n width: 320px;\n height: 240px;\n}\n\n.taro-img.taro-img__widthfix {\n height: 100%;\n}\n\n.taro-img__mode-scaletofill {\n object-fit: contain;\n width: 100%;\n height: 100%;\n}\n\n.taro-img__mode-aspectfit {\n object-fit: contain;\n width: 100%;\n height: 100%;\n}\n\n.taro-img__mode-aspectfill {\n object-fit: cover;\n width: 100%;\n height: 100%;\n}\n\n.taro-img__mode-widthfix {\n width: 100%;\n}\n\n.taro-img__mode-top {\n width: 100%;\n}\n\n.taro-img__mode-bottom {\n width: 100%;\n position: absolute;\n bottom: 0;\n}\n\n.taro-img__mode-left {\n height: 100%;\n}\n\n.taro-img__mode-right {\n position: absolute;\n height: 100%;\n right: 0;\n}\n\n.taro-img__mode-topright {\n position: absolute;\n right: 0;\n}\n\n.taro-img__mode-bottomleft {\n position: absolute;\n bottom: 0;\n}\n\n.taro-img__mode-bottomright {\n position: absolute;\n right: 0;\n bottom: 0;\n}\n";
15
13
  styleInject(css_248z,{"insertAt":"top"});
16
14
 
17
- var _excluded = ["className", "src", "style", "mode", "onError", "lazyLoad", "imgProps"];
18
-
19
15
  require('intersection-observer');
20
16
 
21
17
  var Image = /*#__PURE__*/function (_React$Component) {
@@ -29,11 +25,8 @@ var Image = /*#__PURE__*/function (_React$Component) {
29
25
  _classCallCheck(this, Image);
30
26
 
31
27
  _this = _super.call(this, props);
32
-
33
- _defineProperty(_assertThisInitialized(_this), "observer", {});
34
-
35
- _defineProperty(_assertThisInitialized(_this), "imgRef", null);
36
-
28
+ _this.observer = {};
29
+ _this.imgRef = null;
37
30
  _this.state = {
38
31
  isLoaded: false
39
32
  };
@@ -88,25 +81,25 @@ var Image = /*#__PURE__*/function (_React$Component) {
88
81
  value: function render() {
89
82
  var _this3 = this;
90
83
 
91
- var _this$props = this.props,
92
- className = _this$props.className,
93
- src = _this$props.src,
94
- _this$props$style = _this$props.style,
95
- style = _this$props$style === void 0 ? {} : _this$props$style,
96
- mode = _this$props.mode,
97
- onError = _this$props.onError,
98
- lazyLoad = _this$props.lazyLoad,
99
- imgProps = _this$props.imgProps,
100
- reset = _objectWithoutProperties(_this$props, _excluded);
84
+ var _a = this.props,
85
+ className = _a.className,
86
+ _a$style = _a.style,
87
+ style = _a$style === void 0 ? {} : _a$style,
88
+ src = _a.src,
89
+ mode = _a.mode,
90
+ onError = _a.onError,
91
+ lazyLoad = _a.lazyLoad,
92
+ imgProps = _a.imgProps,
93
+ reset = __rest(_a, ["className", "style", "src", "mode", "onError", "lazyLoad", "imgProps"]);
101
94
 
102
95
  var cls = classNames('taro-img', {
103
96
  'taro-img__widthfix': mode === 'widthFix'
104
97
  }, className);
105
98
  var imgCls = classNames('taro-img__mode-' + (mode || 'scaleToFill').toLowerCase().replace(/\s/g, ''));
106
- return React.createElement("div", _objectSpread({
99
+ return React.createElement("div", Object.assign({
107
100
  className: cls,
108
101
  style: style
109
- }, reset), lazyLoad ? React.createElement("img", _objectSpread({
102
+ }, reset), lazyLoad ? React.createElement("img", Object.assign({
110
103
  ref: function ref(img) {
111
104
  return _this3.imgRef = img;
112
105
  },
@@ -114,7 +107,7 @@ var Image = /*#__PURE__*/function (_React$Component) {
114
107
  "data-src": src,
115
108
  onLoad: this.imageOnLoad,
116
109
  onError: onError
117
- }, imgProps)) : React.createElement("img", _objectSpread({
110
+ }, imgProps)) : React.createElement("img", Object.assign({
118
111
  ref: function ref(img) {
119
112
  return _this3.imgRef = img;
120
113
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/components/image/index.tsx"],"sourcesContent":["import 'weui'\nimport React from 'react'\nimport classNames from 'classnames'\nimport './style/index.css'\n\nrequire('intersection-observer')\n\ninterface IProps{\n className?: string,\n src: string,\n style?: Record<string, string>,\n mode: string,\n onError: () => void,\n onLoad: (e) => void,\n lazyLoad?: boolean,\n imgProps?: Record<string, any>,\n}\n\nclass Image extends React.Component<IProps> {\n constructor (props) {\n super(props)\n this.state = {\n isLoaded: false\n }\n this.imageOnLoad = this.imageOnLoad.bind(this)\n // this.observer = {}\n }\n\n observer: any = {}\n imgRef: any = null\n\n componentDidMount () {\n if (this.props.lazyLoad) {\n this.observer = new IntersectionObserver((entries) => {\n // 异步 api 关系\n if (entries[entries.length - 1].isIntersecting) {\n this.setState({ isLoaded: true }, () => {\n // findDOMNode(this).children[0].src = this.props.src\n this.imgRef.src = this.props.src\n })\n }\n }, {\n rootMargin: '300px 0px'\n })\n this.observer.observe(this.imgRef)\n }\n }\n\n componentWillUnmount () {\n this.observer.disconnect && this.observer.disconnect()\n }\n\n imageOnLoad (e) {\n const { onLoad } = this.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 }\n\n render () {\n const {\n className,\n src,\n style = {},\n mode,\n onError,\n lazyLoad,\n imgProps,\n ...reset\n } = this.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 return (\n <div className={cls} style={style} {...reset}>\n {lazyLoad ? (\n <img\n ref={img => (this.imgRef = img)}\n className={imgCls}\n data-src={src}\n onLoad={this.imageOnLoad}\n onError={onError}\n {...imgProps}\n />\n ) : (\n <img\n ref={img => (this.imgRef = img)}\n className={imgCls}\n src={src}\n onLoad={this.imageOnLoad}\n onError={onError}\n {...imgProps}\n />\n )}\n </div>\n )\n }\n}\n\nexport default Image\n"],"names":["require","Image","props","state","isLoaded","imageOnLoad","bind","lazyLoad","observer","IntersectionObserver","entries","length","isIntersecting","setState","imgRef","src","rootMargin","observe","disconnect","e","onLoad","Object","defineProperty","enumerable","writable","value","width","target","height","className","style","mode","onError","imgProps","reset","cls","classNames","imgCls","toLowerCase","replace","React","createElement","ref","img","Component"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index.js CHANGED
@@ -1,87 +1,44 @@
1
- import _typeof from '@babel/runtime/helpers/typeof';
2
-
3
- function styleInject(css, ref) {
4
- if (ref === void 0) ref = {};
5
- var insertAt = ref.insertAt;
6
-
7
- if (!css || typeof document === 'undefined') {
8
- return;
9
- }
1
+ function throttle(fn) {
2
+ var threshold = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 250;
3
+ var scope = arguments.length > 2 ? arguments[2] : undefined;
4
+ var lastTime = 0;
5
+ var deferTimer;
6
+ return function () {
7
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
8
+ args[_key] = arguments[_key];
9
+ }
10
10
 
11
- var head = document.head || document.getElementsByTagName('head')[0];
12
- var style = document.createElement('style');
13
- style.type = 'text/css';
11
+ var context = scope || this;
12
+ var now = Date.now();
14
13
 
15
- if (insertAt === 'top') {
16
- if (head.firstChild) {
17
- head.insertBefore(style, head.firstChild);
14
+ if (now - lastTime > threshold) {
15
+ fn.apply(this, args);
16
+ lastTime = now;
18
17
  } else {
19
- head.appendChild(style);
18
+ clearTimeout(deferTimer);
19
+ deferTimer = setTimeout(function () {
20
+ lastTime = now;
21
+ fn.apply(context, args);
22
+ }, threshold);
20
23
  }
21
- } else {
22
- head.appendChild(style);
23
- }
24
-
25
- if (style.styleSheet) {
26
- style.styleSheet.cssText = css;
27
- } else {
28
- style.appendChild(document.createTextNode(css));
29
- }
24
+ };
30
25
  }
31
-
32
- var classnames = {exports: {}};
33
-
34
- (function (module) {
35
- /* global define */
36
- (function () {
37
-
38
- var hasOwn = {}.hasOwnProperty;
39
-
40
- function classNames() {
41
- var classes = [];
42
-
43
- for (var i = 0; i < arguments.length; i++) {
44
- var arg = arguments[i];
45
- if (!arg) continue;
46
-
47
- var argType = _typeof(arg);
48
-
49
- if (argType === 'string' || argType === 'number') {
50
- classes.push(arg);
51
- } else if (Array.isArray(arg)) {
52
- if (arg.length) {
53
- var inner = classNames.apply(null, arg);
54
-
55
- if (inner) {
56
- classes.push(inner);
57
- }
58
- }
59
- } else if (argType === 'object') {
60
- if (arg.toString === Object.prototype.toString) {
61
- for (var key in arg) {
62
- if (hasOwn.call(arg, key) && arg[key]) {
63
- classes.push(key);
64
- }
65
- }
66
- } else {
67
- classes.push(arg.toString());
68
- }
69
- }
70
- }
71
-
72
- return classes.join(' ');
26
+ function debounce(fn) {
27
+ var ms = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 250;
28
+ var scope = arguments.length > 2 ? arguments[2] : undefined;
29
+ var timer;
30
+ return function () {
31
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
32
+ args[_key2] = arguments[_key2];
73
33
  }
74
34
 
75
- if (module.exports) {
76
- classNames.default = classNames;
77
- module.exports = classNames;
78
- } else {
79
- window.classNames = classNames;
80
- }
81
- })();
82
- })(classnames);
83
-
84
- var classNames = classnames.exports;
35
+ var context = scope || this;
36
+ clearTimeout(timer);
37
+ timer = setTimeout(function () {
38
+ fn.apply(context, args);
39
+ }, ms);
40
+ };
41
+ }
85
42
 
86
- export { classNames as c, styleInject as s };
43
+ export { debounce as d, throttle as t };
87
44
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../node_modules/style-inject/dist/style-inject.es.js","../../../node_modules/classnames/index.js"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","key","call","join","module","exports","default","window"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,22 +1,18 @@
1
- import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
2
- import _objectSpread from '@babel/runtime/helpers/objectSpread2';
3
1
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
4
2
  import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
5
3
  import _createClass from '@babel/runtime/helpers/createClass';
6
4
  import _assertThisInitialized from '@babel/runtime/helpers/assertThisInitialized';
7
5
  import _inherits from '@babel/runtime/helpers/inherits';
8
6
  import _createSuper from '@babel/runtime/helpers/createSuper';
9
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
10
- import React from 'react';
11
- import { s as styleInject, c as classNames } from '../index.js';
7
+ import { _ as __rest } from '../_tslib.js';
12
8
  import Taro from '@tarojs/taro';
9
+ import { s as styleInject, c as classNames } from '../style-inject.es.js';
10
+ import React from 'react';
13
11
  import '@babel/runtime/helpers/typeof';
14
12
 
15
13
  var css_248z = ".rmc-pull-to-refresh-content {\r\n transform-origin: left top 0px;\r\n}\r\n.rmc-pull-to-refresh-content-wrapper {\r\n overflow: hidden;\r\n min-height: 100vh;\r\n}\r\n\r\n.rmc-pull-to-refresh-transition {\r\n transition: transform 0.3s;\r\n}\r\n\r\n\r\n@keyframes rmc-pull-to-refresh-indicator {\r\n 50% {\r\n opacity: 0.2;\r\n }\r\n 100% {\r\n opacity: 1;\r\n }\r\n}\r\n\r\n.rmc-pull-to-refresh-indicator {\r\n text-align: center;\r\n height: 30px;\r\n line-height: 10px;\r\n}\r\n\r\n.rmc-pull-to-refresh-indicator > div {\r\n background-color: grey;\r\n width: 6px;\r\n height: 6px;\r\n border-radius: 100%;\r\n margin: 3px;\r\n animation-fill-mode: both;\r\n display: inline-block;\r\n animation: rmc-pull-to-refresh-indicator 0.5s 0s infinite linear;\r\n}\r\n.rmc-pull-to-refresh-indicator > div:nth-child(0) {\r\n animation-delay: -0.1s !important;\r\n}\r\n.rmc-pull-to-refresh-indicator > div:nth-child(1) {\r\n animation-delay: -0.2s !important;\r\n}\r\n.rmc-pull-to-refresh-indicator > div:nth-child(2) {\r\n animation-delay: -0.3s !important;\r\n}\r\n.rmc-pull-to-refresh-down .rmc-pull-to-refresh-indicator {\r\n margin-top: -25px;\r\n}\r\n";
16
14
  styleInject(css_248z,{"insertAt":"top"});
17
15
 
18
- var _excluded = ["className", "prefixCls", "children"];
19
-
20
16
  function setTransform(nodeStyle, value) {
21
17
  nodeStyle.transform = value;
22
18
  nodeStyle.webkitTransform = value;
@@ -69,34 +65,20 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
69
65
 
70
66
  _classCallCheck(this, PullDownRefresh);
71
67
 
72
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
73
- args[_key] = arguments[_key];
74
- }
75
-
76
- _this = _super.call.apply(_super, [this].concat(args));
68
+ _this = _super.apply(this, arguments); // https://github.com/yiminghe/zscroller/blob/2d97973287135745818a0537712235a39a6a62a1/src/Scroller.js#L355
69
+ // currSt: `activate` / `deactivate` / `release` / `finish`
77
70
 
78
- _defineProperty(_assertThisInitialized(_this), "state", {
71
+ _this.state = {
79
72
  currSt: PullDownState.deactivate,
80
73
  dragOnEdge: false
81
- });
82
-
83
- _defineProperty(_assertThisInitialized(_this), "containerRef", void 0);
84
-
85
- _defineProperty(_assertThisInitialized(_this), "contentRef", void 0);
86
-
87
- _defineProperty(_assertThisInitialized(_this), "_to", void 0);
88
-
89
- _defineProperty(_assertThisInitialized(_this), "_ScreenY", 0);
90
-
91
- _defineProperty(_assertThisInitialized(_this), "_startScreenY", 0);
92
-
93
- _defineProperty(_assertThisInitialized(_this), "_lastScreenY", 0);
94
-
95
- _defineProperty(_assertThisInitialized(_this), "_isMounted", false);
96
-
97
- _defineProperty(_assertThisInitialized(_this), "listeners", []);
98
-
99
- _defineProperty(_assertThisInitialized(_this), "triggerPullDownRefresh", function (flag) {
74
+ };
75
+ _this._ScreenY = 0;
76
+ _this._startScreenY = 0;
77
+ _this._lastScreenY = 0;
78
+ _this._isMounted = false;
79
+ _this.listeners = [];
80
+
81
+ _this.triggerPullDownRefresh = function (flag) {
100
82
  // 在初始化时、用代码 自动 触发 pullDownRefresh
101
83
  // 添加this._isMounted的判断,否则组建一实例化,currSt就会是finish
102
84
  if (!_this.state.dragOnEdge && _this._isMounted) {
@@ -116,9 +98,9 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
116
98
  });
117
99
  }
118
100
  }
119
- });
101
+ };
120
102
 
121
- _defineProperty(_assertThisInitialized(_this), "init", function () {
103
+ _this.init = function () {
122
104
  var ele = _this.scrollContainer;
123
105
  _this._to = {
124
106
  touchstart: _this.onTouchStart.bind(_assertThisInitialized(_this), ele),
@@ -129,22 +111,22 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
129
111
  Object.keys(_this._to).forEach(function (key) {
130
112
  ele.addEventListener(key, _this._to[key], willPreventDefault);
131
113
  });
132
- });
114
+ };
133
115
 
134
- _defineProperty(_assertThisInitialized(_this), "destroy", function () {
116
+ _this.destroy = function () {
135
117
  var ele = _this.scrollContainer;
136
118
  Object.keys(_this._to).forEach(function (key) {
137
119
  ele.removeEventListener(key, _this._to[key]);
138
120
  });
139
- });
121
+ };
140
122
 
141
- _defineProperty(_assertThisInitialized(_this), "onTouchStart", function (_, e) {
123
+ _this.onTouchStart = function (_, e) {
142
124
  _this._ScreenY = _this._startScreenY = e.touches[0].screenY; // 一开始 refreshing 为 true 时 this._lastScreenY 有值
143
125
 
144
126
  _this._lastScreenY = _this._lastScreenY || 0;
145
- });
127
+ };
146
128
 
147
- _defineProperty(_assertThisInitialized(_this), "isEdge", function (ele) {
129
+ _this.isEdge = function (ele) {
148
130
  var container = _this.scrollContainer;
149
131
 
150
132
  if (container && container === document.body) {
@@ -154,9 +136,9 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
154
136
  }
155
137
 
156
138
  return ele.scrollTop <= 0;
157
- });
139
+ };
158
140
 
159
- _defineProperty(_assertThisInitialized(_this), "damping", function (dy) {
141
+ _this.damping = function (dy) {
160
142
  if (Math.abs(_this._lastScreenY) > _this.props.damping) {
161
143
  return 0;
162
144
  }
@@ -164,9 +146,9 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
164
146
  var ratio = Math.abs(_this._ScreenY - _this._startScreenY) / window.screen.height;
165
147
  dy *= (1 - ratio) * 0.6;
166
148
  return dy;
167
- });
149
+ };
168
150
 
169
- _defineProperty(_assertThisInitialized(_this), "onTouchMove", function (ele, e) {
151
+ _this.onTouchMove = function (ele, e) {
170
152
  // 使用 pageY 对比有问题
171
153
  var _screenY = e.touches[0].screenY; // 拖动方向不符合的不处理
172
154
 
@@ -221,9 +203,11 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
221
203
  _this.onTouchEnd();
222
204
  }
223
205
  }
224
- });
206
+ };
207
+
208
+ _this.onTouchEnd = function () {
209
+ var _a, _b;
225
210
 
226
- _defineProperty(_assertThisInitialized(_this), "onTouchEnd", function () {
227
211
  if (_this.state.dragOnEdge) {
228
212
  _this.setState({
229
213
  dragOnEdge: false
@@ -231,13 +215,11 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
231
215
  }
232
216
 
233
217
  if (_this.state.currSt === PullDownState.activate) {
234
- var _this$props$onRefresh, _this$props;
235
-
236
218
  _this.setState({
237
219
  currSt: PullDownState.release
238
220
  });
239
221
 
240
- (_this$props$onRefresh = (_this$props = _this.props).onRefresh) === null || _this$props$onRefresh === void 0 ? void 0 : _this$props$onRefresh.call(_this$props);
222
+ (_b = (_a = _this.props).onRefresh) === null || _b === void 0 ? void 0 : _b.call(_a);
241
223
  _this._lastScreenY = _this.props.distanceToRefresh + 1;
242
224
 
243
225
  _this.setContentStyle(_this._lastScreenY);
@@ -248,15 +230,15 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
248
230
  } else {
249
231
  _this.reset();
250
232
  }
251
- });
233
+ };
252
234
 
253
- _defineProperty(_assertThisInitialized(_this), "reset", function () {
235
+ _this.reset = function () {
254
236
  _this._lastScreenY = 0;
255
237
 
256
238
  _this.setContentStyle(0);
257
- });
239
+ };
258
240
 
259
- _defineProperty(_assertThisInitialized(_this), "setContentStyle", function (ty) {
241
+ _this.setContentStyle = function (ty) {
260
242
  // TODO: Why sometimes do not have `this.contentRef` ?
261
243
  if (_this.contentRef) {
262
244
  // translate3d 不清理 会影响内部元素定位
@@ -266,7 +248,7 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
266
248
  setTransform(_this.contentRef.style, '');
267
249
  }
268
250
  }
269
- });
251
+ };
270
252
 
271
253
  return _this;
272
254
  }
@@ -337,15 +319,13 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
337
319
  }, {
338
320
  key: "componentDidUpdate",
339
321
  value: function componentDidUpdate(_, prevState) {
340
- if (prevState.currSt !== this.state.currSt && this.state.currSt === PullDownState.release) {
341
- var _this$contentRef;
342
-
343
- var pageEl = (_this$contentRef = this.contentRef) === null || _this$contentRef === void 0 ? void 0 : _this$contentRef.closest('.taro_page');
322
+ var _a, _b;
344
323
 
345
- if (pageEl !== null && pageEl !== void 0 && pageEl.__page) {
346
- var _pageEl$__page;
324
+ if (prevState.currSt !== this.state.currSt && this.state.currSt === PullDownState.release) {
325
+ var pageEl = (_a = this.contentRef) === null || _a === void 0 ? void 0 : _a.closest('.taro_page');
347
326
 
348
- (_pageEl$__page = pageEl.__page) === null || _pageEl$__page === void 0 ? void 0 : _pageEl$__page.onPullDownRefresh();
327
+ if (pageEl === null || pageEl === void 0 ? void 0 : pageEl.__page) {
328
+ (_b = pageEl.__page) === null || _b === void 0 ? void 0 : _b.onPullDownRefresh();
349
329
  }
350
330
  }
351
331
  }
@@ -354,8 +334,7 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
354
334
  value: function render() {
355
335
  var _this3 = this;
356
336
 
357
- var props = _objectSpread({}, this.props);
358
-
337
+ var props = Object.assign({}, this.props);
359
338
  delete props.damping;
360
339
  delete props.indicator;
361
340
  delete props.distanceToRefresh;
@@ -364,7 +343,7 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
364
343
  var className = props.className,
365
344
  prefixCls = props.prefixCls,
366
345
  children = props.children,
367
- restProps = _objectWithoutProperties(props, _excluded);
346
+ restProps = __rest(props, ["className", "prefixCls", "children"]);
368
347
 
369
348
  var renderRefresh = function renderRefresh(cls) {
370
349
  var _this3$state = _this3.state,
@@ -388,7 +367,7 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
388
367
  return renderRefresh("".concat(prefixCls, "-content ").concat(prefixCls, "-down"));
389
368
  }
390
369
 
391
- return React.createElement("pull-down-refresh", _objectSpread({
370
+ return React.createElement("pull-down-refresh", Object.assign({
392
371
  ref: function ref(el) {
393
372
  _this3.containerRef = el;
394
373
  },
@@ -400,12 +379,12 @@ var PullDownRefresh = /*#__PURE__*/function (_React$Component) {
400
379
  return PullDownRefresh;
401
380
  }(React.Component);
402
381
 
403
- _defineProperty(PullDownRefresh, "defaultProps", {
382
+ PullDownRefresh.defaultProps = {
404
383
  prefixCls: 'rmc-pull-to-refresh',
405
384
  distanceToRefresh: 50,
406
385
  damping: 100,
407
386
  indicator: INDICATOR
408
- });
387
+ };
409
388
 
410
389
  export { PullDownRefresh as default };
411
390
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/components/pull-down-refresh/index.tsx"],"sourcesContent":["import React from 'react'\r\nimport classNames from 'classnames'\r\nimport Taro from '@tarojs/taro'\r\n\r\nimport './style/index.css'\r\n\r\nfunction setTransform (nodeStyle, value) {\r\n nodeStyle.transform = value\r\n nodeStyle.webkitTransform = value\r\n nodeStyle.MozTransform = value\r\n}\r\n\r\nconst isWebView = typeof navigator !== 'undefined' &&\r\n /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(navigator.userAgent)\r\n\r\nenum PullDownState {\r\n activate = 'activate',\r\n deactivate = 'deactivate',\r\n release = 'release',\r\n finish = 'finish'\r\n}\r\n\r\nenum INDICATOR {\r\n activate = 'release',\r\n deactivate = 'pull',\r\n release = 'loading',\r\n finish = 'finish'\r\n}\r\n\r\nlet supportsPassive = false\r\ntry {\r\n const opts = Object.defineProperty({}, 'passive', {\r\n get () {\r\n supportsPassive = true\r\n }\r\n })\r\n window.addEventListener('cancel', () => ({}), opts)\r\n} catch (e) {}\r\n\r\nconst willPreventDefault = supportsPassive ? { passive: false } : false\r\n\r\ninterface IProps {\r\n className?: string\r\n prefixCls: string\r\n distanceToRefresh: number\r\n damping: number\r\n indicator: INDICATOR\r\n onRefresh?: () => void\r\n}\r\n\r\ninterface IState {\r\n currSt: PullDownState,\r\n dragOnEdge: boolean\r\n}\r\n\r\nclass PullDownRefresh extends React.Component<IProps, IState> {\r\n static defaultProps = {\r\n prefixCls: 'rmc-pull-to-refresh',\r\n distanceToRefresh: 50,\r\n damping: 100,\r\n indicator: INDICATOR\r\n }\r\n\r\n // https://github.com/yiminghe/zscroller/blob/2d97973287135745818a0537712235a39a6a62a1/src/Scroller.js#L355\r\n // currSt: `activate` / `deactivate` / `release` / `finish`\r\n state = {\r\n currSt: PullDownState.deactivate,\r\n dragOnEdge: false\r\n }\r\n\r\n containerRef: HTMLElement | null\r\n contentRef: HTMLDivElement | null\r\n _to: Record<string, EventListener>\r\n _ScreenY = 0\r\n _startScreenY = 0\r\n _lastScreenY = 0\r\n _isMounted = false\r\n listeners: [string, (...args: any[]) => void][] = []\r\n\r\n get scrollContainer () {\r\n return document.querySelector('.taro_page_stationed') ||\r\n document.querySelector('.taro_page') ||\r\n document.querySelector('.taro_router') ||\r\n document.querySelector('.taro-tabbar__panel') ||\r\n document.body\r\n }\r\n\r\n componentDidMount () {\r\n this.init()\r\n this._isMounted = true\r\n this.listeners = [\r\n ['__taroStartPullDownRefresh', ({ successHandler, errorHandler }) => {\r\n try {\r\n this.triggerPullDownRefresh(true)\r\n successHandler({\r\n errMsg: 'startPullDownRefresh: ok'\r\n })\r\n } catch (e) {\r\n errorHandler({\r\n errMsg: 'startPullDownRefresh: fail'\r\n })\r\n }\r\n }],\r\n ['__taroStopPullDownRefresh', ({ successHandler, errorHandler }) => {\r\n try {\r\n this.triggerPullDownRefresh(false)\r\n successHandler({\r\n errMsg: 'stopPullDownRefresh: ok'\r\n })\r\n } catch (e) {\r\n errorHandler({\r\n errMsg: 'stopPullDownRefresh: fail'\r\n })\r\n }\r\n }]\r\n ]\r\n this.listeners.forEach(([evtName, callback]) => {\r\n Taro.eventCenter.on(evtName, callback)\r\n })\r\n }\r\n\r\n componentWillUnmount () {\r\n this.destroy()\r\n this.listeners.forEach(([evtName, callback]) => {\r\n Taro.eventCenter.off(evtName, callback)\r\n })\r\n }\r\n\r\n componentDidUpdate (_, prevState: IState) {\r\n if (prevState.currSt !== this.state.currSt && this.state.currSt === PullDownState.release) {\r\n const pageEl: any = this.contentRef?.closest('.taro_page')\r\n if (pageEl?.__page) {\r\n pageEl.__page?.onPullDownRefresh()\r\n }\r\n }\r\n }\r\n\r\n triggerPullDownRefresh = (flag: boolean) => {\r\n // 在初始化时、用代码 自动 触发 pullDownRefresh\r\n // 添加this._isMounted的判断,否则组建一实例化,currSt就会是finish\r\n if (!this.state.dragOnEdge && this._isMounted) {\r\n if (flag) {\r\n this._lastScreenY = this.props.distanceToRefresh + 1\r\n // change dom need after setState\r\n this.setState({ currSt: PullDownState.release }, () => this.setContentStyle(this._lastScreenY))\r\n } else {\r\n this.setState({ currSt: PullDownState.finish }, () => this.reset())\r\n }\r\n }\r\n }\r\n\r\n init = () => {\r\n const ele = this.scrollContainer\r\n this._to = {\r\n touchstart: this.onTouchStart.bind(this, ele),\r\n touchmove: this.onTouchMove.bind(this, ele),\r\n touchend: this.onTouchEnd.bind(this, ele),\r\n touchcancel: this.onTouchEnd.bind(this, ele)\r\n }\r\n Object.keys(this._to).forEach(key => {\r\n ele.addEventListener(key, this._to[key], willPreventDefault)\r\n })\r\n }\r\n\r\n destroy = () => {\r\n const ele = this.scrollContainer\r\n Object.keys(this._to).forEach(key => {\r\n ele.removeEventListener(key, this._to[key])\r\n })\r\n }\r\n\r\n onTouchStart = (_, e: TouchEvent) => {\r\n this._ScreenY = this._startScreenY = e.touches[0].screenY\r\n // 一开始 refreshing 为 true 时 this._lastScreenY 有值\r\n this._lastScreenY = this._lastScreenY || 0\r\n }\r\n\r\n isEdge = (ele: HTMLElement) => {\r\n const container = this.scrollContainer\r\n if (container && container === document.body) {\r\n // In chrome61 `document.body.scrollTop` is invalid\r\n const scrollNode = document.scrollingElement ? document.scrollingElement : document.body\r\n return scrollNode.scrollTop <= 0\r\n }\r\n return ele.scrollTop <= 0\r\n }\r\n\r\n damping = (dy: number) => {\r\n if (Math.abs(this._lastScreenY) > this.props.damping) {\r\n return 0\r\n }\r\n\r\n const ratio = Math.abs(this._ScreenY - this._startScreenY) / window.screen.height\r\n dy *= (1 - ratio) * 0.6\r\n\r\n return dy\r\n }\r\n\r\n onTouchMove = (ele: HTMLElement, e: TouchEvent) => {\r\n // 使用 pageY 对比有问题\r\n const _screenY = e.touches[0].screenY\r\n\r\n // 拖动方向不符合的不处理\r\n if (this._startScreenY > _screenY) {\r\n return\r\n }\r\n\r\n if (this.isEdge(ele)) {\r\n if (!this.state.dragOnEdge) {\r\n // 当用户开始往上滑的时候isEdge还是false的话,会导致this._ScreenY不是想要的,只有当isEdge为true时,再上滑,才有意义\r\n // 下面这行代码解决了上面这个问题\r\n this._ScreenY = this._startScreenY = e.touches[0].screenY\r\n this.setState({ dragOnEdge: true })\r\n }\r\n if (e.cancelable) {\r\n e.preventDefault()\r\n }\r\n // add stopPropagation with fastclick will trigger content onClick event. why?\r\n // ref https://github.com/ant-design/ant-design-mobile/issues/2141\r\n // e.stopPropagation();\r\n\r\n const _diff = Math.round(_screenY - this._ScreenY)\r\n this._ScreenY = _screenY\r\n this._lastScreenY += this.damping(_diff)\r\n\r\n this.setContentStyle(this._lastScreenY)\r\n\r\n if (Math.abs(this._lastScreenY) < this.props.distanceToRefresh) {\r\n if (this.state.currSt !== PullDownState.deactivate) {\r\n // console.log('back to the distance');\r\n this.setState({ currSt: PullDownState.deactivate })\r\n }\r\n } else {\r\n if (this.state.currSt === PullDownState.deactivate) {\r\n // console.log('reach to the distance');\r\n this.setState({ currSt: PullDownState.activate })\r\n }\r\n }\r\n\r\n // https://github.com/ant-design/ant-design-mobile/issues/573#issuecomment-339560829\r\n // iOS UIWebView issue, It seems no problem in WKWebView\r\n if (isWebView && e.changedTouches[0].clientY < 0) {\r\n this.onTouchEnd()\r\n }\r\n }\r\n }\r\n\r\n onTouchEnd = () => {\r\n if (this.state.dragOnEdge) {\r\n this.setState({ dragOnEdge: false })\r\n }\r\n if (this.state.currSt === PullDownState.activate) {\r\n this.setState({ currSt: PullDownState.release })\r\n this.props.onRefresh?.()\r\n this._lastScreenY = this.props.distanceToRefresh + 1\r\n this.setContentStyle(this._lastScreenY)\r\n } else if (this.state.currSt === 'release') {\r\n this._lastScreenY = this.props.distanceToRefresh + 1\r\n this.setContentStyle(this._lastScreenY)\r\n } else {\r\n this.reset()\r\n }\r\n }\r\n\r\n reset = () => {\r\n this._lastScreenY = 0\r\n this.setContentStyle(0)\r\n }\r\n\r\n setContentStyle = (ty) => {\r\n // TODO: Why sometimes do not have `this.contentRef` ?\r\n if (this.contentRef) {\r\n // translate3d 不清理 会影响内部元素定位\r\n if (ty) {\r\n setTransform(this.contentRef.style, `translate3d(0px,${ty}px,0)`)\r\n } else {\r\n setTransform(this.contentRef.style, '')\r\n }\r\n }\r\n }\r\n\r\n render () {\r\n const props: Partial<IProps> & {\r\n children?: React.ReactNode\r\n } = { ...this.props }\r\n delete props.damping\r\n delete props.indicator\r\n delete props.distanceToRefresh\r\n delete props.onRefresh\r\n\r\n const {\r\n className,\r\n prefixCls,\r\n children,\r\n ...restProps\r\n } = props\r\n\r\n const renderRefresh = (cls: string) => {\r\n const { currSt, dragOnEdge } = this.state\r\n const cla = classNames(cls, !dragOnEdge && `${prefixCls}-transition`)\r\n const showIndicator = currSt === 'activate' || currSt === 'release'\r\n return (\r\n <div className={`${prefixCls}-content-wrapper`}>\r\n <div\r\n className={cla}\r\n ref={el => {\r\n this.contentRef = el\r\n }}>\r\n {showIndicator && (\r\n <div className={`${prefixCls}-indicator`}>\r\n <div />\r\n <div />\r\n <div />\r\n </div>\r\n )}\r\n {children}\r\n </div>\r\n </div>\r\n )\r\n }\r\n\r\n if (this.scrollContainer) {\r\n return renderRefresh(`${prefixCls}-content ${prefixCls}-down`)\r\n }\r\n return (\r\n <pull-down-refresh\r\n ref={el => {\r\n this.containerRef = el\r\n }}\r\n className={classNames(className, prefixCls, `${prefixCls}-down`)}\r\n {...restProps}\r\n >\r\n {renderRefresh(`${prefixCls}-content`)}\r\n </pull-down-refresh>\r\n )\r\n }\r\n}\r\n\r\nexport default PullDownRefresh\r\n"],"names":["setTransform","nodeStyle","value","transform","webkitTransform","MozTransform","isWebView","navigator","test","userAgent","PullDownState","INDICATOR","supportsPassive","opts","Object","defineProperty","get","window","addEventListener","e","willPreventDefault","passive","PullDownRefresh","currSt","deactivate","dragOnEdge","flag","state","_isMounted","_lastScreenY","props","distanceToRefresh","setState","release","setContentStyle","finish","reset","ele","scrollContainer","_to","touchstart","onTouchStart","bind","touchmove","onTouchMove","touchend","onTouchEnd","touchcancel","keys","forEach","key","removeEventListener","_","_ScreenY","_startScreenY","touches","screenY","container","document","body","scrollNode","scrollingElement","scrollTop","dy","Math","abs","damping","ratio","screen","height","_screenY","isEdge","cancelable","preventDefault","_diff","round","activate","changedTouches","clientY","onRefresh","ty","contentRef","style","querySelector","init","listeners","successHandler","errorHandler","triggerPullDownRefresh","errMsg","evtName","callback","Taro","eventCenter","on","destroy","off","prevState","pageEl","closest","__page","onPullDownRefresh","indicator","className","prefixCls","children","restProps","renderRefresh","cls","cla","classNames","showIndicator","React","createElement","ref","el","containerRef","Component"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}