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