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