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