santi 0.0.0-beta.42 → 0.0.0-beta.43

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/index.d.ts CHANGED
@@ -1,208 +1,260 @@
1
- import React, { useContext, createContext, useMemo, forwardRef, useState as useState$1, useRef, useEffect } from 'react';
1
+ import React, { createContext, forwardRef, useContext, useMemo, useState as useState$1, useRef, useEffect } from 'react';
2
2
  import hoistStatics from 'hoist-non-react-statics';
3
3
  import NodeKey from 'react-node-key';
4
4
  import ReactDOM from 'react-dom';
5
5
 
6
- function ownKeys(object, enumerableOnly) {
7
- var keys = Object.keys(object);
8
-
9
- if (Object.getOwnPropertySymbols) {
10
- var symbols = Object.getOwnPropertySymbols(object);
11
-
12
- if (enumerableOnly) {
13
- symbols = symbols.filter(function (sym) {
14
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
15
- });
16
- }
17
-
18
- keys.push.apply(keys, symbols);
19
- }
20
-
21
- return keys;
6
+ function _arrayLikeToArray(r, a) {
7
+ (null == a || a > r.length) && (a = r.length);
8
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
9
+ return n;
22
10
  }
23
-
24
- function _objectSpread2(target) {
25
- for (var i = 1; i < arguments.length; i++) {
26
- var source = arguments[i] != null ? arguments[i] : {};
27
-
28
- if (i % 2) {
29
- ownKeys(Object(source), true).forEach(function (key) {
30
- _defineProperty(target, key, source[key]);
31
- });
32
- } else if (Object.getOwnPropertyDescriptors) {
33
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
34
- } else {
35
- ownKeys(Object(source)).forEach(function (key) {
36
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
37
- });
38
- }
39
- }
40
-
41
- return target;
11
+ function _arrayWithHoles(r) {
12
+ if (Array.isArray(r)) return r;
42
13
  }
43
-
44
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
14
+ function asyncGeneratorStep(n, t, e, r, o, a, c) {
45
15
  try {
46
- var info = gen[key](arg);
47
- var value = info.value;
48
- } catch (error) {
49
- reject(error);
50
- return;
51
- }
52
-
53
- if (info.done) {
54
- resolve(value);
55
- } else {
56
- Promise.resolve(value).then(_next, _throw);
16
+ var i = n[a](c),
17
+ u = i.value;
18
+ } catch (n) {
19
+ return void e(n);
57
20
  }
21
+ i.done ? t(u) : Promise.resolve(u).then(r, o);
58
22
  }
59
-
60
- function _asyncToGenerator(fn) {
23
+ function _asyncToGenerator(n) {
61
24
  return function () {
62
- var self = this,
63
- args = arguments;
64
- return new Promise(function (resolve, reject) {
65
- var gen = fn.apply(self, args);
66
-
67
- function _next(value) {
68
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
25
+ var t = this,
26
+ e = arguments;
27
+ return new Promise(function (r, o) {
28
+ var a = n.apply(t, e);
29
+ function _next(n) {
30
+ asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
69
31
  }
70
-
71
- function _throw(err) {
72
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
32
+ function _throw(n) {
33
+ asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
73
34
  }
74
-
75
- _next(undefined);
35
+ _next(void 0);
76
36
  });
77
37
  };
78
38
  }
79
-
80
- function _defineProperty(obj, key, value) {
81
- if (key in obj) {
82
- Object.defineProperty(obj, key, {
83
- value: value,
84
- enumerable: true,
85
- configurable: true,
86
- writable: true
87
- });
88
- } else {
89
- obj[key] = value;
90
- }
91
-
92
- return obj;
39
+ function _defineProperty(e, r, t) {
40
+ return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
41
+ value: t,
42
+ enumerable: !0,
43
+ configurable: !0,
44
+ writable: !0
45
+ }) : e[r] = t, e;
93
46
  }
94
-
95
47
  function _extends() {
96
- _extends = Object.assign || function (target) {
97
- for (var i = 1; i < arguments.length; i++) {
98
- var source = arguments[i];
99
-
100
- for (var key in source) {
101
- if (Object.prototype.hasOwnProperty.call(source, key)) {
102
- target[key] = source[key];
103
- }
48
+ return _extends = Object.assign ? Object.assign.bind() : function (n) {
49
+ for (var e = 1; e < arguments.length; e++) {
50
+ var t = arguments[e];
51
+ for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
52
+ }
53
+ return n;
54
+ }, _extends.apply(null, arguments);
55
+ }
56
+ function _iterableToArrayLimit(r, l) {
57
+ var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
58
+ if (null != t) {
59
+ var e,
60
+ n,
61
+ i,
62
+ u,
63
+ a = [],
64
+ f = !0,
65
+ o = !1;
66
+ try {
67
+ if (i = (t = t.call(r)).next, 0 === l) {
68
+ if (Object(t) !== t) return;
69
+ f = !1;
70
+ } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
71
+ } catch (r) {
72
+ o = !0, n = r;
73
+ } finally {
74
+ try {
75
+ if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;
76
+ } finally {
77
+ if (o) throw n;
104
78
  }
105
79
  }
106
-
107
- return target;
108
- };
109
-
110
- return _extends.apply(this, arguments);
80
+ return a;
81
+ }
111
82
  }
112
-
113
- function _objectWithoutPropertiesLoose(source, excluded) {
114
- if (source == null) return {};
115
- var target = {};
116
- var sourceKeys = Object.keys(source);
117
- var key, i;
118
-
119
- for (i = 0; i < sourceKeys.length; i++) {
120
- key = sourceKeys[i];
121
- if (excluded.indexOf(key) >= 0) continue;
122
- target[key] = source[key];
83
+ function _nonIterableRest() {
84
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
85
+ }
86
+ function ownKeys(e, r) {
87
+ var t = Object.keys(e);
88
+ if (Object.getOwnPropertySymbols) {
89
+ var o = Object.getOwnPropertySymbols(e);
90
+ r && (o = o.filter(function (r) {
91
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
92
+ })), t.push.apply(t, o);
123
93
  }
124
-
125
- return target;
94
+ return t;
126
95
  }
127
-
128
- function _objectWithoutProperties(source, excluded) {
129
- if (source == null) return {};
130
-
131
- var target = _objectWithoutPropertiesLoose(source, excluded);
132
-
133
- var key, i;
134
-
96
+ function _objectSpread2(e) {
97
+ for (var r = 1; r < arguments.length; r++) {
98
+ var t = null != arguments[r] ? arguments[r] : {};
99
+ r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
100
+ _defineProperty(e, r, t[r]);
101
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {
102
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
103
+ });
104
+ }
105
+ return e;
106
+ }
107
+ function _objectWithoutProperties(e, t) {
108
+ if (null == e) return {};
109
+ var o,
110
+ r,
111
+ i = _objectWithoutPropertiesLoose(e, t);
135
112
  if (Object.getOwnPropertySymbols) {
136
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
137
-
138
- for (i = 0; i < sourceSymbolKeys.length; i++) {
139
- key = sourceSymbolKeys[i];
140
- if (excluded.indexOf(key) >= 0) continue;
141
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
142
- target[key] = source[key];
143
- }
113
+ var n = Object.getOwnPropertySymbols(e);
114
+ for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);
144
115
  }
145
-
146
- return target;
116
+ return i;
147
117
  }
148
-
149
- function _slicedToArray(arr, i) {
150
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
118
+ function _objectWithoutPropertiesLoose(r, e) {
119
+ if (null == r) return {};
120
+ var t = {};
121
+ for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
122
+ if (-1 !== e.indexOf(n)) continue;
123
+ t[n] = r[n];
124
+ }
125
+ return t;
151
126
  }
152
-
153
- function _arrayWithHoles(arr) {
154
- if (Array.isArray(arr)) return arr;
127
+ function _regenerator() {
128
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
129
+ var e,
130
+ t,
131
+ r = "function" == typeof Symbol ? Symbol : {},
132
+ n = r.iterator || "@@iterator",
133
+ o = r.toStringTag || "@@toStringTag";
134
+ function i(r, n, o, i) {
135
+ var c = n && n.prototype instanceof Generator ? n : Generator,
136
+ u = Object.create(c.prototype);
137
+ return _regeneratorDefine(u, "_invoke", function (r, n, o) {
138
+ var i,
139
+ c,
140
+ u,
141
+ f = 0,
142
+ p = o || [],
143
+ y = !1,
144
+ G = {
145
+ p: 0,
146
+ n: 0,
147
+ v: e,
148
+ a: d,
149
+ f: d.bind(e, 4),
150
+ d: function (t, r) {
151
+ return i = t, c = 0, u = e, G.n = r, a;
152
+ }
153
+ };
154
+ function d(r, n) {
155
+ for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) {
156
+ var o,
157
+ i = p[t],
158
+ d = G.p,
159
+ l = i[2];
160
+ r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0));
161
+ }
162
+ if (o || r > 1) return a;
163
+ throw y = !0, n;
164
+ }
165
+ return function (o, p, l) {
166
+ if (f > 1) throw TypeError("Generator is already running");
167
+ for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) {
168
+ i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u);
169
+ try {
170
+ if (f = 2, i) {
171
+ if (c || (o = "next"), t = i[o]) {
172
+ if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object");
173
+ if (!t.done) return t;
174
+ u = t.value, c < 2 && (c = 0);
175
+ } else 1 === c && (t = i.return) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1);
176
+ i = e;
177
+ } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break;
178
+ } catch (t) {
179
+ i = e, c = 1, u = t;
180
+ } finally {
181
+ f = 1;
182
+ }
183
+ }
184
+ return {
185
+ value: t,
186
+ done: y
187
+ };
188
+ };
189
+ }(r, o, i), !0), u;
190
+ }
191
+ var a = {};
192
+ function Generator() {}
193
+ function GeneratorFunction() {}
194
+ function GeneratorFunctionPrototype() {}
195
+ t = Object.getPrototypeOf;
196
+ var c = [][n] ? t(t([][n]())) : (_regeneratorDefine(t = {}, n, function () {
197
+ return this;
198
+ }), t),
199
+ u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c);
200
+ function f(e) {
201
+ return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e;
202
+ }
203
+ return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine(u), _regeneratorDefine(u, o, "Generator"), _regeneratorDefine(u, n, function () {
204
+ return this;
205
+ }), _regeneratorDefine(u, "toString", function () {
206
+ return "[object Generator]";
207
+ }), (_regenerator = function () {
208
+ return {
209
+ w: i,
210
+ m: f
211
+ };
212
+ })();
155
213
  }
156
-
157
- function _iterableToArrayLimit(arr, i) {
158
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
159
-
160
- if (_i == null) return;
161
- var _arr = [];
162
- var _n = true;
163
- var _d = false;
164
-
165
- var _s, _e;
166
-
214
+ function _regeneratorDefine(e, r, n, t) {
215
+ var i = Object.defineProperty;
167
216
  try {
168
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
169
- _arr.push(_s.value);
170
-
171
- if (i && _arr.length === i) break;
172
- }
173
- } catch (err) {
174
- _d = true;
175
- _e = err;
176
- } finally {
177
- try {
178
- if (!_n && _i["return"] != null) _i["return"]();
179
- } finally {
180
- if (_d) throw _e;
181
- }
217
+ i({}, "", {});
218
+ } catch (e) {
219
+ i = 0;
182
220
  }
183
-
184
- return _arr;
221
+ _regeneratorDefine = function (e, r, n, t) {
222
+ function o(r, n) {
223
+ _regeneratorDefine(e, r, function (e) {
224
+ return this._invoke(r, n, e);
225
+ });
226
+ }
227
+ r ? i ? i(e, r, {
228
+ value: n,
229
+ enumerable: !t,
230
+ configurable: !t,
231
+ writable: !t
232
+ }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2));
233
+ }, _regeneratorDefine(e, r, n, t);
185
234
  }
186
-
187
- function _unsupportedIterableToArray(o, minLen) {
188
- if (!o) return;
189
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
190
- var n = Object.prototype.toString.call(o).slice(8, -1);
191
- if (n === "Object" && o.constructor) n = o.constructor.name;
192
- if (n === "Map" || n === "Set") return Array.from(o);
193
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
235
+ function _slicedToArray(r, e) {
236
+ return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
194
237
  }
195
-
196
- function _arrayLikeToArray(arr, len) {
197
- if (len == null || len > arr.length) len = arr.length;
198
-
199
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
200
-
201
- return arr2;
238
+ function _toPrimitive(t, r) {
239
+ if ("object" != typeof t || !t) return t;
240
+ var e = t[Symbol.toPrimitive];
241
+ if (void 0 !== e) {
242
+ var i = e.call(t, r || "default");
243
+ if ("object" != typeof i) return i;
244
+ throw new TypeError("@@toPrimitive must return a primitive value.");
245
+ }
246
+ return ("string" === r ? String : Number)(t);
202
247
  }
203
-
204
- function _nonIterableRest() {
205
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
248
+ function _toPropertyKey(t) {
249
+ var i = _toPrimitive(t, "string");
250
+ return "symbol" == typeof i ? i : i + "";
251
+ }
252
+ function _unsupportedIterableToArray(r, a) {
253
+ if (r) {
254
+ if ("string" == typeof r) return _arrayLikeToArray(r, a);
255
+ var t = {}.toString.call(r).slice(8, -1);
256
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
257
+ }
206
258
  }
207
259
 
208
260
  // 值类型判断 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
@@ -230,17 +282,16 @@ var isNumber = function isNumber(val) {
230
282
  };
231
283
  var isPromiseLike = function isPromiseLike(val) {
232
284
  return isExist(val) && isFunction(val.then);
233
- }; // 值类型判断 -------------------------------------------------------------
285
+ };
286
+ // 值类型判断 -------------------------------------------------------------
234
287
 
235
288
  var get = function get(obj) {
236
289
  var keys = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
237
290
  var defaultValue = arguments.length > 2 ? arguments[2] : undefined;
238
-
239
291
  try {
240
292
  if (isNumber(keys)) {
241
293
  keys = String(keys);
242
294
  }
243
-
244
295
  var result = (isString(keys) ? keys.split('.') : keys).reduce(function (res, key) {
245
296
  return res[key];
246
297
  }, obj);
@@ -254,11 +305,9 @@ var run = function run(obj) {
254
305
  keys = isString(keys) ? keys.split('.') : keys;
255
306
  var func = get(obj, keys);
256
307
  var context = get(obj, keys.slice(0, -1));
257
-
258
308
  for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
259
309
  args[_key - 2] = arguments[_key];
260
310
  }
261
-
262
311
  return isFunction(func) ? func.call.apply(func, [context].concat(args)) : func;
263
312
  };
264
313
 
@@ -267,22 +316,20 @@ var delay = function delay(time) {
267
316
  return setTimeout(resolve, time);
268
317
  });
269
318
  };
319
+
270
320
  /**
271
321
  * [防抖]
272
322
  * @param {Function} func 执行函数
273
323
  * @param {Number} wait 多少毫秒后运行一次
274
324
  */
275
-
276
325
  var debounce = function debounce(func) {
277
326
  var wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 16;
278
327
  var timeout;
279
328
  return function () {
280
329
  var _this = this;
281
-
282
330
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
283
331
  args[_key] = arguments[_key];
284
332
  }
285
-
286
333
  clearTimeout(timeout);
287
334
  timeout = setTimeout(function () {
288
335
  func.apply(_this, args);
@@ -290,6 +337,7 @@ var debounce = function debounce(func) {
290
337
  return timeout;
291
338
  };
292
339
  };
340
+
293
341
  /**
294
342
  * [用来智能处理Promise类型返回值]
295
343
  * 当值生成过程为 promise 时,将得到 promise 类型返回值,按约定 resolve 最终值
@@ -297,15 +345,12 @@ var debounce = function debounce(func) {
297
345
  * @param {Function} executor 执行过程获取
298
346
  * @param {Function} valuer 值处理过程
299
347
  */
300
-
301
348
  var promiseGuess = function promiseGuess(executor, valuer) {
302
349
  return function () {
303
350
  var _this2 = this;
304
-
305
351
  for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
306
352
  args[_key2] = arguments[_key2];
307
353
  }
308
-
309
354
  var value = executor.apply(this, args);
310
355
  return isPromiseLike(value) ? new Promise(function (resolve) {
311
356
  return value.then(function (value) {
@@ -318,16 +363,14 @@ var promiseGuess = function promiseGuess(executor, valuer) {
318
363
  };
319
364
 
320
365
  var _excluded = ["forwardRef", "__key"];
321
- var _filehash = "nNBh";
322
- var context = /*#__PURE__*/createContext();
366
+ var _filehash = "mj54";
367
+ var context = createContext();
323
368
  var Provider = context.Provider;
324
-
325
369
  function withSanti(Component) {
326
370
  function WrappedComponent(_ref) {
327
371
  var forwardRef = _ref.forwardRef,
328
- nodeKey = _ref.__key,
329
- props = _objectWithoutProperties(_ref, _excluded);
330
-
372
+ nodeKey = _ref.__key,
373
+ props = _objectWithoutProperties(_ref, _excluded);
331
374
  var count = 0;
332
375
  var contextValue = useMemo(function () {
333
376
  return {
@@ -345,8 +388,7 @@ function withSanti(Component) {
345
388
  _nk: "".concat(_filehash, "21")
346
389
  })));
347
390
  }
348
-
349
- var ForwardedRefHOC = /*#__PURE__*/forwardRef(function (props, ref) {
391
+ var ForwardedRefHOC = forwardRef(function (props, ref) {
350
392
  return /*#__PURE__*/React.createElement(NodeKey, {
351
393
  _nk: "".concat(_filehash, "31")
352
394
  }, function (nodeKey) {
@@ -359,7 +401,6 @@ function withSanti(Component) {
359
401
  });
360
402
  return hoistStatics(ForwardedRefHOC, WrappedComponent);
361
403
  }
362
-
363
404
  function useNodeKey() {
364
405
  return useContext(context) || {
365
406
  nodeKey: undefined,
@@ -370,9 +411,8 @@ function useNodeKey() {
370
411
  }
371
412
  function useSID() {
372
413
  var _useNodeKey = useNodeKey(),
373
- sid = _useNodeKey.nodeKey,
374
- getCountedSID = _useNodeKey.getCountedKey;
375
-
414
+ sid = _useNodeKey.nodeKey,
415
+ getCountedSID = _useNodeKey.getCountedKey;
376
416
  return {
377
417
  sid: sid,
378
418
  getCountedSID: getCountedSID
@@ -380,14 +420,12 @@ function useSID() {
380
420
  }
381
421
 
382
422
  var KEY = '__SSRDATA__';
383
-
384
423
  function inject() {
385
424
  var script = document.getElementById(KEY) || document.createElement('script');
386
425
  script.id = KEY;
387
426
  script.innerHTML = "window.".concat(KEY, "={};");
388
427
  document.head.appendChild(script);
389
428
  }
390
-
391
429
  function bootstrap() {
392
430
  if (window.__SSR__) {
393
431
  inject();
@@ -396,36 +434,28 @@ function bootstrap() {
396
434
  window.__SSRED__ = true;
397
435
  }
398
436
  }
399
-
400
437
  var data = window[KEY] || {};
401
-
402
438
  function remove(key) {
403
439
  delete data[key];
404
440
  }
405
-
406
441
  function set(key, value) {
407
442
  if (!window.__SSR__) {
408
443
  return;
409
444
  }
410
-
411
445
  data[key] = value;
412
446
  document.getElementById(KEY).innerHTML = "window.".concat(KEY, "=").concat(JSON.stringify(data), ";");
413
447
  }
414
-
415
448
  function get(key) {
416
449
  var value = data[key];
417
450
  remove(key); // 初始值只在 html 就绪后使用一次,使用即销毁
418
-
419
451
  return value;
420
452
  }
421
-
422
453
  return {
423
454
  set: set,
424
455
  get: get,
425
456
  remove: remove
426
457
  };
427
458
  }
428
-
429
459
  var store = bootstrap();
430
460
  var store$1 = {
431
461
  get: promiseGuess(function (key, builder) {
@@ -433,32 +463,25 @@ var store$1 = {
433
463
  // 若无 key 则 SSR 阶段不计算
434
464
  return undefined;
435
465
  }
436
-
437
466
  var value;
438
-
439
467
  if (!window.__SSR__) {
440
468
  value = store.get(key);
441
469
  }
442
-
443
470
  if (isUndefined(value)) {
444
471
  value = run(builder);
445
472
  }
446
-
447
473
  return value;
448
474
  }, function (err, value, key) {
449
475
  if (!key) {
450
476
  return [null, value];
451
477
  }
452
-
453
478
  if (err) {
454
479
  store.remove(key);
455
480
  return [err, undefined];
456
481
  }
457
-
458
482
  if (window.__SSR__) {
459
483
  store.set(key, value);
460
484
  }
461
-
462
485
  return [null, value];
463
486
  }),
464
487
  set: store.set
@@ -468,36 +491,28 @@ var warningMissingKey = debounce(function () {
468
491
  if (window.__SSR__) {
469
492
  return;
470
493
  }
471
-
472
494
  console.warn('You shouldn\'t use "santi.useState" outside a "withSanti"');
473
495
  }, 32);
474
-
475
496
  function useState(initialState, key) {
476
497
  var _useNodeKey = useNodeKey(),
477
- getCountedKey = _useNodeKey.getCountedKey;
478
-
498
+ getCountedKey = _useNodeKey.getCountedKey;
479
499
  var nodeKey = key || run(getCountedKey);
480
-
481
500
  var _useReactState = useState$1(function () {
482
- if (!nodeKey) {
483
- warningMissingKey();
484
- }
485
-
486
- var _store$get = store$1.get(nodeKey, initialState),
501
+ if (!nodeKey) {
502
+ warningMissingKey();
503
+ }
504
+ var _store$get = store$1.get(nodeKey, initialState),
487
505
  _store$get2 = _slicedToArray(_store$get, 2),
488
506
  err = _store$get2[0],
489
507
  value = _store$get2[1];
490
-
491
- if (err) {
492
- console.error(err);
493
- }
494
-
495
- return value;
496
- }),
497
- _useReactState2 = _slicedToArray(_useReactState, 2),
498
- state = _useReactState2[0],
499
- setState = _useReactState2[1];
500
-
508
+ if (err) {
509
+ console.error(err);
510
+ }
511
+ return value;
512
+ }),
513
+ _useReactState2 = _slicedToArray(_useReactState, 2),
514
+ state = _useReactState2[0],
515
+ setState = _useReactState2[1];
501
516
  return [state, function (getNextState) {
502
517
  var nextState = run(getNextState, undefined, state);
503
518
  store$1.set(nodeKey, nextState);
@@ -506,80 +521,63 @@ function useState(initialState, key) {
506
521
  }
507
522
 
508
523
  var _excluded$1 = ["forwardedRef"];
509
- var _filehash$1 = "8NS2";
510
-
524
+ var _filehash$1 = "DQeO";
511
525
  var getInitialProps = function getInitialProps(fetch) {
512
526
  var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
513
527
  var key = arguments.length > 2 ? arguments[2] : undefined;
514
528
  return function (Component) {
515
529
  function WrappedComponent(_ref) {
516
530
  var forwardedRef = _ref.forwardedRef,
517
- props = _objectWithoutProperties(_ref, _excluded$1);
518
-
531
+ props = _objectWithoutProperties(_ref, _excluded$1);
519
532
  var _useState = useState$1(false),
520
- _useState2 = _slicedToArray(_useState, 2),
521
- ready = _useState2[0],
522
- setReady = _useState2[1];
523
-
533
+ _useState2 = _slicedToArray(_useState, 2),
534
+ ready = _useState2[0],
535
+ setReady = _useState2[1];
524
536
  var _useState3 = useState$1({}),
525
- _useState4 = _slicedToArray(_useState3, 2),
526
- ssrProps = _useState4[0],
527
- setSsrProps = _useState4[1];
528
-
537
+ _useState4 = _slicedToArray(_useState3, 2),
538
+ ssrProps = _useState4[0],
539
+ setSsrProps = _useState4[1];
529
540
  var mounted = useRef(true);
530
-
531
541
  var _useNodeKey = useNodeKey(),
532
- getCountedKey = _useNodeKey.getCountedKey;
533
-
542
+ getCountedKey = _useNodeKey.getCountedKey;
534
543
  var nodeKey = key || run(getCountedKey);
535
544
  useEffect(function () {
536
545
  function init() {
537
546
  return _init.apply(this, arguments);
538
547
  }
539
-
540
548
  function _init() {
541
- _init = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
549
+ _init = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
542
550
  var _yield$store$get, _yield$store$get2, err, ssrProps;
543
-
544
- return regeneratorRuntime.wrap(function _callee$(_context) {
545
- while (1) {
546
- switch (_context.prev = _context.next) {
547
- case 0:
548
- _context.next = 2;
549
- return store$1.get(nodeKey, function () {
550
- return run(fetch, undefined, props);
551
- });
552
-
553
- case 2:
554
- _yield$store$get = _context.sent;
555
- _yield$store$get2 = _slicedToArray(_yield$store$get, 2);
556
- err = _yield$store$get2[0];
557
- ssrProps = _yield$store$get2[1];
558
-
559
- if (!err) {
560
- _context.next = 9;
561
- break;
562
- }
563
-
564
- console.error('[getInitialProps error]', err);
565
- return _context.abrupt("return");
566
-
567
- case 9:
568
- if (mounted.current && ssrProps) {
569
- setSsrProps(ssrProps);
570
- setReady(true);
571
- }
572
-
573
- case 10:
574
- case "end":
575
- return _context.stop();
576
- }
551
+ return _regenerator().w(function (_context) {
552
+ while (1) switch (_context.n) {
553
+ case 0:
554
+ _context.n = 1;
555
+ return store$1.get(nodeKey, function () {
556
+ return run(fetch, undefined, props);
557
+ });
558
+ case 1:
559
+ _yield$store$get = _context.v;
560
+ _yield$store$get2 = _slicedToArray(_yield$store$get, 2);
561
+ err = _yield$store$get2[0];
562
+ ssrProps = _yield$store$get2[1];
563
+ if (!err) {
564
+ _context.n = 2;
565
+ break;
566
+ }
567
+ console.error('[getInitialProps error]', err);
568
+ return _context.a(2);
569
+ case 2:
570
+ if (mounted.current && ssrProps) {
571
+ setSsrProps(ssrProps);
572
+ setReady(true);
573
+ }
574
+ case 3:
575
+ return _context.a(2);
577
576
  }
578
577
  }, _callee);
579
578
  }));
580
579
  return _init.apply(this, arguments);
581
580
  }
582
-
583
581
  init();
584
582
  return function () {
585
583
  mounted.current = false;
@@ -590,8 +588,7 @@ var getInitialProps = function getInitialProps(fetch) {
590
588
  _nk: "".concat(_filehash$1, "11")
591
589
  })) : run(fallback, undefined, props);
592
590
  }
593
-
594
- var ForwardedRefHOC = /*#__PURE__*/forwardRef(function (props, ref) {
591
+ var ForwardedRefHOC = forwardRef(function (props, ref) {
595
592
  return /*#__PURE__*/React.createElement(WrappedComponent, _extends({}, props, {
596
593
  forwardedRef: ref,
597
594
  _nk: "".concat(_filehash$1, "21")
@@ -602,48 +599,38 @@ var getInitialProps = function getInitialProps(fetch) {
602
599
  };
603
600
 
604
601
  var ready = /*#__PURE__*/function () {
605
- var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
602
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
606
603
  var delayMillisecond,
607
- script,
608
- _args = arguments;
609
- return regeneratorRuntime.wrap(function _callee$(_context) {
610
- while (1) {
611
- switch (_context.prev = _context.next) {
612
- case 0:
613
- delayMillisecond = _args.length > 0 && _args[0] !== undefined ? _args[0] : -1;
614
- _context.prev = 1;
615
-
616
- if (!(delayMillisecond && Number(delayMillisecond) >= 0)) {
617
- _context.next = 5;
618
- break;
619
- }
620
-
621
- _context.next = 5;
622
- return delay(delayMillisecond);
623
-
624
- case 5:
625
- if (window.__SSR__ && !window.__SSRREADY__) {
626
- script = document.createElement('script');
627
- script.innerHTML = 'window.__SSRREADY__=true';
628
- document.head.appendChild(script);
629
- } // ssr 阶段:通知 santi 可以采集页面内容
630
- // csr 阶段:通知 santi/render 已完成呈现
631
-
632
-
633
- document.dispatchEvent(new Event('ssr-ready'));
634
-
635
- case 7:
636
- _context.prev = 7;
637
- return _context.finish(7);
638
-
639
- case 9:
640
- case "end":
641
- return _context.stop();
642
- }
604
+ script,
605
+ _args = arguments;
606
+ return _regenerator().w(function (_context) {
607
+ while (1) switch (_context.p = _context.n) {
608
+ case 0:
609
+ delayMillisecond = _args.length > 0 && _args[0] !== undefined ? _args[0] : -1;
610
+ _context.p = 1;
611
+ if (!(delayMillisecond && Number(delayMillisecond) >= 0)) {
612
+ _context.n = 2;
613
+ break;
614
+ }
615
+ _context.n = 2;
616
+ return delay(delayMillisecond);
617
+ case 2:
618
+ if (window.__SSR__ && !window.__SSRREADY__) {
619
+ script = document.createElement('script');
620
+ script.innerHTML = 'window.__SSRREADY__=true';
621
+ document.head.appendChild(script);
622
+ }
623
+ // ssr 阶段:通知 santi 可以采集页面内容
624
+ // csr 阶段:通知 santi/render 已完成呈现
625
+ document.dispatchEvent(new Event('ssr-ready'));
626
+ case 3:
627
+ _context.p = 3;
628
+ return _context.f(3);
629
+ case 4:
630
+ return _context.a(2);
643
631
  }
644
- }, _callee, null, [[1,, 7, 9]]);
632
+ }, _callee, null, [[1,, 3, 4]]);
645
633
  }));
646
-
647
634
  return function ready() {
648
635
  return _ref.apply(this, arguments);
649
636
  };
@@ -654,98 +641,86 @@ var Container = withSanti(function (_ref) {
654
641
  return children;
655
642
  });
656
643
 
657
- var _filehash$2 = "4mmK";
644
+ var _filehash$2 = "q8Vs";
658
645
  var ROOT_KEY = 'ssr-root';
659
-
660
646
  function render(content, container, callback) {
661
647
  var element = /*#__PURE__*/React.createElement(Container, {
662
648
  _nk: "".concat(_filehash$2, "11")
663
- }, content); // 支持热加载
664
- // FIXME: Dev 阶段会导致渲染抖动
649
+ }, content);
665
650
 
651
+ // 支持热加载
652
+ // FIXME: Dev 阶段会导致渲染抖动
666
653
  if (module.hot) {
667
654
  return ReactDOM.render(element, container, callback);
668
- } // ssr 阶段将内容渲染至动态生成的 ssr-root 节点中
669
-
655
+ }
670
656
 
657
+ // ssr 阶段将内容渲染至动态生成的 ssr-root 节点中
671
658
  if (window.__SSR__) {
672
659
  var ssrRoot = document.getElementById(ROOT_KEY);
673
-
674
660
  if (!ssrRoot) {
675
661
  ssrRoot = document.createElement('div');
676
662
  ssrRoot.style.cssText = 'width:100%;height:100%;';
677
663
  ssrRoot.id = ROOT_KEY;
678
664
  document.body.insertBefore(ssrRoot, container);
679
665
  }
680
-
681
666
  return ReactDOM.render(element, ssrRoot, callback);
682
- } // csr 阶段若为 ssr 渲染结果,则在 csr 完成后替换 ssr 结果
683
- // 注:不使用水合操作(ReactDOM.hydrate)因为可能造成节点错误问题
684
-
667
+ }
685
668
 
669
+ // csr 阶段若为 ssr 渲染结果,则在 csr 完成后替换 ssr 结果
670
+ // 注:不使用水合操作(ReactDOM.hydrate)因为可能造成节点错误问题
686
671
  if (window.__SSRED__) {
687
672
  var display = function display() {
688
673
  // 做一定延时,尽可能保证平滑呈现
689
674
  setTimeout(function () {
690
675
  var ssrRoot = document.getElementById(ROOT_KEY);
691
-
692
676
  if (ssrRoot) {
693
677
  try {
694
678
  ssrRoot.parentNode.removeChild(ssrRoot);
695
- } finally {// nothing
679
+ } finally {
680
+ // nothing
696
681
  }
697
682
  }
698
-
699
683
  container.style.display = '';
700
684
  }, 56);
701
685
  }; // 若为快照 ssr 则 csr 阶段将同样收到 ssr-ready 事件,在此事件后平滑呈现真实可用交互
702
-
703
-
704
686
  var _ssrRoot = document.getElementById(ROOT_KEY);
705
-
706
687
  var renderCallback = callback;
707
688
  container.style.display = 'none';
708
689
  container.innerHTML = _ssrRoot.innerHTML;
709
-
710
690
  if (window.__SSRREADY__) {
711
- var onReady = function onReady() {
691
+ var _onReady = function onReady() {
712
692
  display();
713
- document.removeEventListener('ssr-ready', onReady);
693
+ document.removeEventListener('ssr-ready', _onReady);
714
694
  };
715
-
716
- document.addEventListener('ssr-ready', onReady);
695
+ document.addEventListener('ssr-ready', _onReady);
717
696
  } else {
718
697
  // 若不为快照 ssr(一般为超时自动快照),则在 render 回调结束后呈现真实结果
719
698
  renderCallback = function renderCallback() {
720
699
  // FIXME: 超时快照可能造成呈现不平滑,具体表现为 SSR 切到真实内容过程中有轻微空屏现象,通俗为 “闪一下”,此问题待完美修正
721
700
  display();
722
-
723
701
  if (isFunction(callback)) {
724
702
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
725
703
  args[_key] = arguments[_key];
726
704
  }
727
-
728
705
  callback.apply(this, args);
729
706
  }
730
707
  };
731
708
  }
732
-
733
709
  return ReactDOM.render(element, container, renderCallback);
734
- } // csr 若不为 ssr 渲染结果则正常渲染
735
-
710
+ }
736
711
 
712
+ // csr 若不为 ssr 渲染结果则正常渲染
737
713
  return ReactDOM.render(element, container, callback);
738
714
  }
739
715
 
740
- var _filehash$3 = "B/hE";
741
-
716
+ var _filehash$3 = "YwT1";
742
717
  function Ready(_ref) {
743
718
  var children = _ref.children,
744
- delay = _ref.delay,
745
- _ref$onMount = _ref.onMount,
746
- onMount = _ref$onMount === void 0 ? false : _ref$onMount,
747
- _ref$when = _ref.when,
748
- when = _ref$when === void 0 ? false : _ref$when;
719
+ delay = _ref.delay,
720
+ _ref$onMount = _ref.onMount,
721
+ onMount = _ref$onMount === void 0 ? false : _ref$onMount,
722
+ _ref$when = _ref.when,
723
+ when = _ref$when === void 0 ? false : _ref$when;
749
724
  useEffect(function () {
750
725
  if (onMount) {
751
726
  ready(delay);
@@ -758,16 +733,13 @@ function Ready(_ref) {
758
733
  }, [when]);
759
734
  return children;
760
735
  }
761
-
762
736
  function ReadyOnMount(_ref2) {
763
737
  var children = _ref2.children,
764
- delay = _ref2.delay;
765
-
738
+ delay = _ref2.delay;
766
739
  var _useState = useState$1(false),
767
- _useState2 = _slicedToArray(_useState, 2),
768
- ready = _useState2[0],
769
- setReady = _useState2[1];
770
-
740
+ _useState2 = _slicedToArray(_useState, 2),
741
+ ready = _useState2[0],
742
+ setReady = _useState2[1];
771
743
  useEffect(function () {
772
744
  setReady(true);
773
745
  }, []);
@@ -777,13 +749,12 @@ function ReadyOnMount(_ref2) {
777
749
  _nk: "".concat(_filehash$3, "11")
778
750
  }, children);
779
751
  }
780
-
781
752
  Ready.OnMount = ReadyOnMount;
782
753
 
783
754
  function NoSSR(_ref) {
784
755
  var children = _ref.children,
785
- _ref$fallback = _ref.fallback,
786
- fallback = _ref$fallback === void 0 ? null : _ref$fallback;
756
+ _ref$fallback = _ref.fallback,
757
+ fallback = _ref$fallback === void 0 ? null : _ref$fallback;
787
758
  return window.__SSR__ ? run(fallback) : children;
788
759
  }
789
760