@pnkx-lib/ui 1.6.3 → 1.6.5

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.
@@ -0,0 +1,2424 @@
1
+ 'use strict';
2
+
3
+ const antd = require('antd');
4
+ const common = require('./common-D_yedQmH.js');
5
+
6
+ const useToast = (defaultProps) => {
7
+ return (overrideProps) => {
8
+ const mergedProps = {
9
+ message: defaultProps?.message,
10
+ showProgress: true,
11
+ pauseOnHover: false,
12
+ ...defaultProps,
13
+ ...overrideProps
14
+ };
15
+ antd.notification.open(mergedProps);
16
+ };
17
+ };
18
+
19
+ var _stackClear;
20
+ var hasRequired_stackClear;
21
+
22
+ function require_stackClear () {
23
+ if (hasRequired_stackClear) return _stackClear;
24
+ hasRequired_stackClear = 1;
25
+ var ListCache = common.require_ListCache();
26
+
27
+ /**
28
+ * Removes all key-value entries from the stack.
29
+ *
30
+ * @private
31
+ * @name clear
32
+ * @memberOf Stack
33
+ */
34
+ function stackClear() {
35
+ this.__data__ = new ListCache;
36
+ this.size = 0;
37
+ }
38
+
39
+ _stackClear = stackClear;
40
+ return _stackClear;
41
+ }
42
+
43
+ /**
44
+ * Removes `key` and its value from the stack.
45
+ *
46
+ * @private
47
+ * @name delete
48
+ * @memberOf Stack
49
+ * @param {string} key The key of the value to remove.
50
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
51
+ */
52
+
53
+ var _stackDelete;
54
+ var hasRequired_stackDelete;
55
+
56
+ function require_stackDelete () {
57
+ if (hasRequired_stackDelete) return _stackDelete;
58
+ hasRequired_stackDelete = 1;
59
+ function stackDelete(key) {
60
+ var data = this.__data__,
61
+ result = data['delete'](key);
62
+
63
+ this.size = data.size;
64
+ return result;
65
+ }
66
+
67
+ _stackDelete = stackDelete;
68
+ return _stackDelete;
69
+ }
70
+
71
+ /**
72
+ * Gets the stack value for `key`.
73
+ *
74
+ * @private
75
+ * @name get
76
+ * @memberOf Stack
77
+ * @param {string} key The key of the value to get.
78
+ * @returns {*} Returns the entry value.
79
+ */
80
+
81
+ var _stackGet;
82
+ var hasRequired_stackGet;
83
+
84
+ function require_stackGet () {
85
+ if (hasRequired_stackGet) return _stackGet;
86
+ hasRequired_stackGet = 1;
87
+ function stackGet(key) {
88
+ return this.__data__.get(key);
89
+ }
90
+
91
+ _stackGet = stackGet;
92
+ return _stackGet;
93
+ }
94
+
95
+ /**
96
+ * Checks if a stack value for `key` exists.
97
+ *
98
+ * @private
99
+ * @name has
100
+ * @memberOf Stack
101
+ * @param {string} key The key of the entry to check.
102
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
103
+ */
104
+
105
+ var _stackHas;
106
+ var hasRequired_stackHas;
107
+
108
+ function require_stackHas () {
109
+ if (hasRequired_stackHas) return _stackHas;
110
+ hasRequired_stackHas = 1;
111
+ function stackHas(key) {
112
+ return this.__data__.has(key);
113
+ }
114
+
115
+ _stackHas = stackHas;
116
+ return _stackHas;
117
+ }
118
+
119
+ var _stackSet;
120
+ var hasRequired_stackSet;
121
+
122
+ function require_stackSet () {
123
+ if (hasRequired_stackSet) return _stackSet;
124
+ hasRequired_stackSet = 1;
125
+ var ListCache = common.require_ListCache(),
126
+ Map = common.require_Map(),
127
+ MapCache = common.require_MapCache();
128
+
129
+ /** Used as the size to enable large array optimizations. */
130
+ var LARGE_ARRAY_SIZE = 200;
131
+
132
+ /**
133
+ * Sets the stack `key` to `value`.
134
+ *
135
+ * @private
136
+ * @name set
137
+ * @memberOf Stack
138
+ * @param {string} key The key of the value to set.
139
+ * @param {*} value The value to set.
140
+ * @returns {Object} Returns the stack cache instance.
141
+ */
142
+ function stackSet(key, value) {
143
+ var data = this.__data__;
144
+ if (data instanceof ListCache) {
145
+ var pairs = data.__data__;
146
+ if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
147
+ pairs.push([key, value]);
148
+ this.size = ++data.size;
149
+ return this;
150
+ }
151
+ data = this.__data__ = new MapCache(pairs);
152
+ }
153
+ data.set(key, value);
154
+ this.size = data.size;
155
+ return this;
156
+ }
157
+
158
+ _stackSet = stackSet;
159
+ return _stackSet;
160
+ }
161
+
162
+ var _Stack;
163
+ var hasRequired_Stack;
164
+
165
+ function require_Stack () {
166
+ if (hasRequired_Stack) return _Stack;
167
+ hasRequired_Stack = 1;
168
+ var ListCache = common.require_ListCache(),
169
+ stackClear = require_stackClear(),
170
+ stackDelete = require_stackDelete(),
171
+ stackGet = require_stackGet(),
172
+ stackHas = require_stackHas(),
173
+ stackSet = require_stackSet();
174
+
175
+ /**
176
+ * Creates a stack cache object to store key-value pairs.
177
+ *
178
+ * @private
179
+ * @constructor
180
+ * @param {Array} [entries] The key-value pairs to cache.
181
+ */
182
+ function Stack(entries) {
183
+ var data = this.__data__ = new ListCache(entries);
184
+ this.size = data.size;
185
+ }
186
+
187
+ // Add methods to `Stack`.
188
+ Stack.prototype.clear = stackClear;
189
+ Stack.prototype['delete'] = stackDelete;
190
+ Stack.prototype.get = stackGet;
191
+ Stack.prototype.has = stackHas;
192
+ Stack.prototype.set = stackSet;
193
+
194
+ _Stack = Stack;
195
+ return _Stack;
196
+ }
197
+
198
+ /**
199
+ * A specialized version of `_.forEach` for arrays without support for
200
+ * iteratee shorthands.
201
+ *
202
+ * @private
203
+ * @param {Array} [array] The array to iterate over.
204
+ * @param {Function} iteratee The function invoked per iteration.
205
+ * @returns {Array} Returns `array`.
206
+ */
207
+
208
+ var _arrayEach;
209
+ var hasRequired_arrayEach;
210
+
211
+ function require_arrayEach () {
212
+ if (hasRequired_arrayEach) return _arrayEach;
213
+ hasRequired_arrayEach = 1;
214
+ function arrayEach(array, iteratee) {
215
+ var index = -1,
216
+ length = array == null ? 0 : array.length;
217
+
218
+ while (++index < length) {
219
+ if (iteratee(array[index], index, array) === false) {
220
+ break;
221
+ }
222
+ }
223
+ return array;
224
+ }
225
+
226
+ _arrayEach = arrayEach;
227
+ return _arrayEach;
228
+ }
229
+
230
+ var _defineProperty;
231
+ var hasRequired_defineProperty;
232
+
233
+ function require_defineProperty () {
234
+ if (hasRequired_defineProperty) return _defineProperty;
235
+ hasRequired_defineProperty = 1;
236
+ var getNative = common.require_getNative();
237
+
238
+ var defineProperty = (function() {
239
+ try {
240
+ var func = getNative(Object, 'defineProperty');
241
+ func({}, '', {});
242
+ return func;
243
+ } catch (e) {}
244
+ }());
245
+
246
+ _defineProperty = defineProperty;
247
+ return _defineProperty;
248
+ }
249
+
250
+ var _baseAssignValue;
251
+ var hasRequired_baseAssignValue;
252
+
253
+ function require_baseAssignValue () {
254
+ if (hasRequired_baseAssignValue) return _baseAssignValue;
255
+ hasRequired_baseAssignValue = 1;
256
+ var defineProperty = require_defineProperty();
257
+
258
+ /**
259
+ * The base implementation of `assignValue` and `assignMergeValue` without
260
+ * value checks.
261
+ *
262
+ * @private
263
+ * @param {Object} object The object to modify.
264
+ * @param {string} key The key of the property to assign.
265
+ * @param {*} value The value to assign.
266
+ */
267
+ function baseAssignValue(object, key, value) {
268
+ if (key == '__proto__' && defineProperty) {
269
+ defineProperty(object, key, {
270
+ 'configurable': true,
271
+ 'enumerable': true,
272
+ 'value': value,
273
+ 'writable': true
274
+ });
275
+ } else {
276
+ object[key] = value;
277
+ }
278
+ }
279
+
280
+ _baseAssignValue = baseAssignValue;
281
+ return _baseAssignValue;
282
+ }
283
+
284
+ var _assignValue;
285
+ var hasRequired_assignValue;
286
+
287
+ function require_assignValue () {
288
+ if (hasRequired_assignValue) return _assignValue;
289
+ hasRequired_assignValue = 1;
290
+ var baseAssignValue = require_baseAssignValue(),
291
+ eq = common.requireEq();
292
+
293
+ /** Used for built-in method references. */
294
+ var objectProto = Object.prototype;
295
+
296
+ /** Used to check objects for own properties. */
297
+ var hasOwnProperty = objectProto.hasOwnProperty;
298
+
299
+ /**
300
+ * Assigns `value` to `key` of `object` if the existing value is not equivalent
301
+ * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
302
+ * for equality comparisons.
303
+ *
304
+ * @private
305
+ * @param {Object} object The object to modify.
306
+ * @param {string} key The key of the property to assign.
307
+ * @param {*} value The value to assign.
308
+ */
309
+ function assignValue(object, key, value) {
310
+ var objValue = object[key];
311
+ if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||
312
+ (value === undefined && !(key in object))) {
313
+ baseAssignValue(object, key, value);
314
+ }
315
+ }
316
+
317
+ _assignValue = assignValue;
318
+ return _assignValue;
319
+ }
320
+
321
+ var _copyObject;
322
+ var hasRequired_copyObject;
323
+
324
+ function require_copyObject () {
325
+ if (hasRequired_copyObject) return _copyObject;
326
+ hasRequired_copyObject = 1;
327
+ var assignValue = require_assignValue(),
328
+ baseAssignValue = require_baseAssignValue();
329
+
330
+ /**
331
+ * Copies properties of `source` to `object`.
332
+ *
333
+ * @private
334
+ * @param {Object} source The object to copy properties from.
335
+ * @param {Array} props The property identifiers to copy.
336
+ * @param {Object} [object={}] The object to copy properties to.
337
+ * @param {Function} [customizer] The function to customize copied values.
338
+ * @returns {Object} Returns `object`.
339
+ */
340
+ function copyObject(source, props, object, customizer) {
341
+ var isNew = !object;
342
+ object || (object = {});
343
+
344
+ var index = -1,
345
+ length = props.length;
346
+
347
+ while (++index < length) {
348
+ var key = props[index];
349
+
350
+ var newValue = customizer
351
+ ? customizer(object[key], source[key], key, object, source)
352
+ : undefined;
353
+
354
+ if (newValue === undefined) {
355
+ newValue = source[key];
356
+ }
357
+ if (isNew) {
358
+ baseAssignValue(object, key, newValue);
359
+ } else {
360
+ assignValue(object, key, newValue);
361
+ }
362
+ }
363
+ return object;
364
+ }
365
+
366
+ _copyObject = copyObject;
367
+ return _copyObject;
368
+ }
369
+
370
+ /**
371
+ * The base implementation of `_.times` without support for iteratee shorthands
372
+ * or max array length checks.
373
+ *
374
+ * @private
375
+ * @param {number} n The number of times to invoke `iteratee`.
376
+ * @param {Function} iteratee The function invoked per iteration.
377
+ * @returns {Array} Returns the array of results.
378
+ */
379
+
380
+ var _baseTimes;
381
+ var hasRequired_baseTimes;
382
+
383
+ function require_baseTimes () {
384
+ if (hasRequired_baseTimes) return _baseTimes;
385
+ hasRequired_baseTimes = 1;
386
+ function baseTimes(n, iteratee) {
387
+ var index = -1,
388
+ result = Array(n);
389
+
390
+ while (++index < n) {
391
+ result[index] = iteratee(index);
392
+ }
393
+ return result;
394
+ }
395
+
396
+ _baseTimes = baseTimes;
397
+ return _baseTimes;
398
+ }
399
+
400
+ var _baseIsArguments;
401
+ var hasRequired_baseIsArguments;
402
+
403
+ function require_baseIsArguments () {
404
+ if (hasRequired_baseIsArguments) return _baseIsArguments;
405
+ hasRequired_baseIsArguments = 1;
406
+ var baseGetTag = common.require_baseGetTag(),
407
+ isObjectLike = common.requireIsObjectLike();
408
+
409
+ /** `Object#toString` result references. */
410
+ var argsTag = '[object Arguments]';
411
+
412
+ /**
413
+ * The base implementation of `_.isArguments`.
414
+ *
415
+ * @private
416
+ * @param {*} value The value to check.
417
+ * @returns {boolean} Returns `true` if `value` is an `arguments` object,
418
+ */
419
+ function baseIsArguments(value) {
420
+ return isObjectLike(value) && baseGetTag(value) == argsTag;
421
+ }
422
+
423
+ _baseIsArguments = baseIsArguments;
424
+ return _baseIsArguments;
425
+ }
426
+
427
+ var isArguments_1;
428
+ var hasRequiredIsArguments;
429
+
430
+ function requireIsArguments () {
431
+ if (hasRequiredIsArguments) return isArguments_1;
432
+ hasRequiredIsArguments = 1;
433
+ var baseIsArguments = require_baseIsArguments(),
434
+ isObjectLike = common.requireIsObjectLike();
435
+
436
+ /** Used for built-in method references. */
437
+ var objectProto = Object.prototype;
438
+
439
+ /** Used to check objects for own properties. */
440
+ var hasOwnProperty = objectProto.hasOwnProperty;
441
+
442
+ /** Built-in value references. */
443
+ var propertyIsEnumerable = objectProto.propertyIsEnumerable;
444
+
445
+ /**
446
+ * Checks if `value` is likely an `arguments` object.
447
+ *
448
+ * @static
449
+ * @memberOf _
450
+ * @since 0.1.0
451
+ * @category Lang
452
+ * @param {*} value The value to check.
453
+ * @returns {boolean} Returns `true` if `value` is an `arguments` object,
454
+ * else `false`.
455
+ * @example
456
+ *
457
+ * _.isArguments(function() { return arguments; }());
458
+ * // => true
459
+ *
460
+ * _.isArguments([1, 2, 3]);
461
+ * // => false
462
+ */
463
+ var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
464
+ return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
465
+ !propertyIsEnumerable.call(value, 'callee');
466
+ };
467
+
468
+ isArguments_1 = isArguments;
469
+ return isArguments_1;
470
+ }
471
+
472
+ var isBuffer = {exports: {}};
473
+
474
+ /**
475
+ * This method returns `false`.
476
+ *
477
+ * @static
478
+ * @memberOf _
479
+ * @since 4.13.0
480
+ * @category Util
481
+ * @returns {boolean} Returns `false`.
482
+ * @example
483
+ *
484
+ * _.times(2, _.stubFalse);
485
+ * // => [false, false]
486
+ */
487
+
488
+ var stubFalse_1;
489
+ var hasRequiredStubFalse;
490
+
491
+ function requireStubFalse () {
492
+ if (hasRequiredStubFalse) return stubFalse_1;
493
+ hasRequiredStubFalse = 1;
494
+ function stubFalse() {
495
+ return false;
496
+ }
497
+
498
+ stubFalse_1 = stubFalse;
499
+ return stubFalse_1;
500
+ }
501
+
502
+ isBuffer.exports;
503
+
504
+ var hasRequiredIsBuffer;
505
+
506
+ function requireIsBuffer () {
507
+ if (hasRequiredIsBuffer) return isBuffer.exports;
508
+ hasRequiredIsBuffer = 1;
509
+ (function (module, exports) {
510
+ var root = common.require_root(),
511
+ stubFalse = requireStubFalse();
512
+
513
+ /** Detect free variable `exports`. */
514
+ var freeExports = exports && !exports.nodeType && exports;
515
+
516
+ /** Detect free variable `module`. */
517
+ var freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;
518
+
519
+ /** Detect the popular CommonJS extension `module.exports`. */
520
+ var moduleExports = freeModule && freeModule.exports === freeExports;
521
+
522
+ /** Built-in value references. */
523
+ var Buffer = moduleExports ? root.Buffer : undefined;
524
+
525
+ /* Built-in method references for those with the same name as other `lodash` methods. */
526
+ var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;
527
+
528
+ /**
529
+ * Checks if `value` is a buffer.
530
+ *
531
+ * @static
532
+ * @memberOf _
533
+ * @since 4.3.0
534
+ * @category Lang
535
+ * @param {*} value The value to check.
536
+ * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
537
+ * @example
538
+ *
539
+ * _.isBuffer(new Buffer(2));
540
+ * // => true
541
+ *
542
+ * _.isBuffer(new Uint8Array(2));
543
+ * // => false
544
+ */
545
+ var isBuffer = nativeIsBuffer || stubFalse;
546
+
547
+ module.exports = isBuffer;
548
+ } (isBuffer, isBuffer.exports));
549
+ return isBuffer.exports;
550
+ }
551
+
552
+ /** Used as references for various `Number` constants. */
553
+
554
+ var _isIndex;
555
+ var hasRequired_isIndex;
556
+
557
+ function require_isIndex () {
558
+ if (hasRequired_isIndex) return _isIndex;
559
+ hasRequired_isIndex = 1;
560
+ var MAX_SAFE_INTEGER = 9007199254740991;
561
+
562
+ /** Used to detect unsigned integer values. */
563
+ var reIsUint = /^(?:0|[1-9]\d*)$/;
564
+
565
+ /**
566
+ * Checks if `value` is a valid array-like index.
567
+ *
568
+ * @private
569
+ * @param {*} value The value to check.
570
+ * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
571
+ * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
572
+ */
573
+ function isIndex(value, length) {
574
+ var type = typeof value;
575
+ length = length == null ? MAX_SAFE_INTEGER : length;
576
+
577
+ return !!length &&
578
+ (type == 'number' ||
579
+ (type != 'symbol' && reIsUint.test(value))) &&
580
+ (value > -1 && value % 1 == 0 && value < length);
581
+ }
582
+
583
+ _isIndex = isIndex;
584
+ return _isIndex;
585
+ }
586
+
587
+ /** Used as references for various `Number` constants. */
588
+
589
+ var isLength_1;
590
+ var hasRequiredIsLength;
591
+
592
+ function requireIsLength () {
593
+ if (hasRequiredIsLength) return isLength_1;
594
+ hasRequiredIsLength = 1;
595
+ var MAX_SAFE_INTEGER = 9007199254740991;
596
+
597
+ /**
598
+ * Checks if `value` is a valid array-like length.
599
+ *
600
+ * **Note:** This method is loosely based on
601
+ * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
602
+ *
603
+ * @static
604
+ * @memberOf _
605
+ * @since 4.0.0
606
+ * @category Lang
607
+ * @param {*} value The value to check.
608
+ * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
609
+ * @example
610
+ *
611
+ * _.isLength(3);
612
+ * // => true
613
+ *
614
+ * _.isLength(Number.MIN_VALUE);
615
+ * // => false
616
+ *
617
+ * _.isLength(Infinity);
618
+ * // => false
619
+ *
620
+ * _.isLength('3');
621
+ * // => false
622
+ */
623
+ function isLength(value) {
624
+ return typeof value == 'number' &&
625
+ value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
626
+ }
627
+
628
+ isLength_1 = isLength;
629
+ return isLength_1;
630
+ }
631
+
632
+ var _baseIsTypedArray;
633
+ var hasRequired_baseIsTypedArray;
634
+
635
+ function require_baseIsTypedArray () {
636
+ if (hasRequired_baseIsTypedArray) return _baseIsTypedArray;
637
+ hasRequired_baseIsTypedArray = 1;
638
+ var baseGetTag = common.require_baseGetTag(),
639
+ isLength = requireIsLength(),
640
+ isObjectLike = common.requireIsObjectLike();
641
+
642
+ /** `Object#toString` result references. */
643
+ var argsTag = '[object Arguments]',
644
+ arrayTag = '[object Array]',
645
+ boolTag = '[object Boolean]',
646
+ dateTag = '[object Date]',
647
+ errorTag = '[object Error]',
648
+ funcTag = '[object Function]',
649
+ mapTag = '[object Map]',
650
+ numberTag = '[object Number]',
651
+ objectTag = '[object Object]',
652
+ regexpTag = '[object RegExp]',
653
+ setTag = '[object Set]',
654
+ stringTag = '[object String]',
655
+ weakMapTag = '[object WeakMap]';
656
+
657
+ var arrayBufferTag = '[object ArrayBuffer]',
658
+ dataViewTag = '[object DataView]',
659
+ float32Tag = '[object Float32Array]',
660
+ float64Tag = '[object Float64Array]',
661
+ int8Tag = '[object Int8Array]',
662
+ int16Tag = '[object Int16Array]',
663
+ int32Tag = '[object Int32Array]',
664
+ uint8Tag = '[object Uint8Array]',
665
+ uint8ClampedTag = '[object Uint8ClampedArray]',
666
+ uint16Tag = '[object Uint16Array]',
667
+ uint32Tag = '[object Uint32Array]';
668
+
669
+ /** Used to identify `toStringTag` values of typed arrays. */
670
+ var typedArrayTags = {};
671
+ typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
672
+ typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
673
+ typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
674
+ typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
675
+ typedArrayTags[uint32Tag] = true;
676
+ typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
677
+ typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
678
+ typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
679
+ typedArrayTags[errorTag] = typedArrayTags[funcTag] =
680
+ typedArrayTags[mapTag] = typedArrayTags[numberTag] =
681
+ typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
682
+ typedArrayTags[setTag] = typedArrayTags[stringTag] =
683
+ typedArrayTags[weakMapTag] = false;
684
+
685
+ /**
686
+ * The base implementation of `_.isTypedArray` without Node.js optimizations.
687
+ *
688
+ * @private
689
+ * @param {*} value The value to check.
690
+ * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
691
+ */
692
+ function baseIsTypedArray(value) {
693
+ return isObjectLike(value) &&
694
+ isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
695
+ }
696
+
697
+ _baseIsTypedArray = baseIsTypedArray;
698
+ return _baseIsTypedArray;
699
+ }
700
+
701
+ /**
702
+ * The base implementation of `_.unary` without support for storing metadata.
703
+ *
704
+ * @private
705
+ * @param {Function} func The function to cap arguments for.
706
+ * @returns {Function} Returns the new capped function.
707
+ */
708
+
709
+ var _baseUnary;
710
+ var hasRequired_baseUnary;
711
+
712
+ function require_baseUnary () {
713
+ if (hasRequired_baseUnary) return _baseUnary;
714
+ hasRequired_baseUnary = 1;
715
+ function baseUnary(func) {
716
+ return function(value) {
717
+ return func(value);
718
+ };
719
+ }
720
+
721
+ _baseUnary = baseUnary;
722
+ return _baseUnary;
723
+ }
724
+
725
+ var _nodeUtil = {exports: {}};
726
+
727
+ _nodeUtil.exports;
728
+
729
+ var hasRequired_nodeUtil;
730
+
731
+ function require_nodeUtil () {
732
+ if (hasRequired_nodeUtil) return _nodeUtil.exports;
733
+ hasRequired_nodeUtil = 1;
734
+ (function (module, exports) {
735
+ var freeGlobal = common.require_freeGlobal();
736
+
737
+ /** Detect free variable `exports`. */
738
+ var freeExports = exports && !exports.nodeType && exports;
739
+
740
+ /** Detect free variable `module`. */
741
+ var freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;
742
+
743
+ /** Detect the popular CommonJS extension `module.exports`. */
744
+ var moduleExports = freeModule && freeModule.exports === freeExports;
745
+
746
+ /** Detect free variable `process` from Node.js. */
747
+ var freeProcess = moduleExports && freeGlobal.process;
748
+
749
+ /** Used to access faster Node.js helpers. */
750
+ var nodeUtil = (function() {
751
+ try {
752
+ // Use `util.types` for Node.js 10+.
753
+ var types = freeModule && freeModule.require && freeModule.require('util').types;
754
+
755
+ if (types) {
756
+ return types;
757
+ }
758
+
759
+ // Legacy `process.binding('util')` for Node.js < 10.
760
+ return freeProcess && freeProcess.binding && freeProcess.binding('util');
761
+ } catch (e) {}
762
+ }());
763
+
764
+ module.exports = nodeUtil;
765
+ } (_nodeUtil, _nodeUtil.exports));
766
+ return _nodeUtil.exports;
767
+ }
768
+
769
+ var isTypedArray_1;
770
+ var hasRequiredIsTypedArray;
771
+
772
+ function requireIsTypedArray () {
773
+ if (hasRequiredIsTypedArray) return isTypedArray_1;
774
+ hasRequiredIsTypedArray = 1;
775
+ var baseIsTypedArray = require_baseIsTypedArray(),
776
+ baseUnary = require_baseUnary(),
777
+ nodeUtil = require_nodeUtil();
778
+
779
+ /* Node.js helper references. */
780
+ var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
781
+
782
+ /**
783
+ * Checks if `value` is classified as a typed array.
784
+ *
785
+ * @static
786
+ * @memberOf _
787
+ * @since 3.0.0
788
+ * @category Lang
789
+ * @param {*} value The value to check.
790
+ * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
791
+ * @example
792
+ *
793
+ * _.isTypedArray(new Uint8Array);
794
+ * // => true
795
+ *
796
+ * _.isTypedArray([]);
797
+ * // => false
798
+ */
799
+ var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
800
+
801
+ isTypedArray_1 = isTypedArray;
802
+ return isTypedArray_1;
803
+ }
804
+
805
+ var _arrayLikeKeys;
806
+ var hasRequired_arrayLikeKeys;
807
+
808
+ function require_arrayLikeKeys () {
809
+ if (hasRequired_arrayLikeKeys) return _arrayLikeKeys;
810
+ hasRequired_arrayLikeKeys = 1;
811
+ var baseTimes = require_baseTimes(),
812
+ isArguments = requireIsArguments(),
813
+ isArray = common.requireIsArray(),
814
+ isBuffer = requireIsBuffer(),
815
+ isIndex = require_isIndex(),
816
+ isTypedArray = requireIsTypedArray();
817
+
818
+ /** Used for built-in method references. */
819
+ var objectProto = Object.prototype;
820
+
821
+ /** Used to check objects for own properties. */
822
+ var hasOwnProperty = objectProto.hasOwnProperty;
823
+
824
+ /**
825
+ * Creates an array of the enumerable property names of the array-like `value`.
826
+ *
827
+ * @private
828
+ * @param {*} value The value to query.
829
+ * @param {boolean} inherited Specify returning inherited property names.
830
+ * @returns {Array} Returns the array of property names.
831
+ */
832
+ function arrayLikeKeys(value, inherited) {
833
+ var isArr = isArray(value),
834
+ isArg = !isArr && isArguments(value),
835
+ isBuff = !isArr && !isArg && isBuffer(value),
836
+ isType = !isArr && !isArg && !isBuff && isTypedArray(value),
837
+ skipIndexes = isArr || isArg || isBuff || isType,
838
+ result = skipIndexes ? baseTimes(value.length, String) : [],
839
+ length = result.length;
840
+
841
+ for (var key in value) {
842
+ if ((inherited || hasOwnProperty.call(value, key)) &&
843
+ !(skipIndexes && (
844
+ // Safari 9 has enumerable `arguments.length` in strict mode.
845
+ key == 'length' ||
846
+ // Node.js 0.10 has enumerable non-index properties on buffers.
847
+ (isBuff && (key == 'offset' || key == 'parent')) ||
848
+ // PhantomJS 2 has enumerable non-index properties on typed arrays.
849
+ (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||
850
+ // Skip index properties.
851
+ isIndex(key, length)
852
+ ))) {
853
+ result.push(key);
854
+ }
855
+ }
856
+ return result;
857
+ }
858
+
859
+ _arrayLikeKeys = arrayLikeKeys;
860
+ return _arrayLikeKeys;
861
+ }
862
+
863
+ /** Used for built-in method references. */
864
+
865
+ var _isPrototype;
866
+ var hasRequired_isPrototype;
867
+
868
+ function require_isPrototype () {
869
+ if (hasRequired_isPrototype) return _isPrototype;
870
+ hasRequired_isPrototype = 1;
871
+ var objectProto = Object.prototype;
872
+
873
+ /**
874
+ * Checks if `value` is likely a prototype object.
875
+ *
876
+ * @private
877
+ * @param {*} value The value to check.
878
+ * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
879
+ */
880
+ function isPrototype(value) {
881
+ var Ctor = value && value.constructor,
882
+ proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;
883
+
884
+ return value === proto;
885
+ }
886
+
887
+ _isPrototype = isPrototype;
888
+ return _isPrototype;
889
+ }
890
+
891
+ /**
892
+ * Creates a unary function that invokes `func` with its argument transformed.
893
+ *
894
+ * @private
895
+ * @param {Function} func The function to wrap.
896
+ * @param {Function} transform The argument transform.
897
+ * @returns {Function} Returns the new function.
898
+ */
899
+
900
+ var _overArg;
901
+ var hasRequired_overArg;
902
+
903
+ function require_overArg () {
904
+ if (hasRequired_overArg) return _overArg;
905
+ hasRequired_overArg = 1;
906
+ function overArg(func, transform) {
907
+ return function(arg) {
908
+ return func(transform(arg));
909
+ };
910
+ }
911
+
912
+ _overArg = overArg;
913
+ return _overArg;
914
+ }
915
+
916
+ var _nativeKeys;
917
+ var hasRequired_nativeKeys;
918
+
919
+ function require_nativeKeys () {
920
+ if (hasRequired_nativeKeys) return _nativeKeys;
921
+ hasRequired_nativeKeys = 1;
922
+ var overArg = require_overArg();
923
+
924
+ /* Built-in method references for those with the same name as other `lodash` methods. */
925
+ var nativeKeys = overArg(Object.keys, Object);
926
+
927
+ _nativeKeys = nativeKeys;
928
+ return _nativeKeys;
929
+ }
930
+
931
+ var _baseKeys;
932
+ var hasRequired_baseKeys;
933
+
934
+ function require_baseKeys () {
935
+ if (hasRequired_baseKeys) return _baseKeys;
936
+ hasRequired_baseKeys = 1;
937
+ var isPrototype = require_isPrototype(),
938
+ nativeKeys = require_nativeKeys();
939
+
940
+ /** Used for built-in method references. */
941
+ var objectProto = Object.prototype;
942
+
943
+ /** Used to check objects for own properties. */
944
+ var hasOwnProperty = objectProto.hasOwnProperty;
945
+
946
+ /**
947
+ * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
948
+ *
949
+ * @private
950
+ * @param {Object} object The object to query.
951
+ * @returns {Array} Returns the array of property names.
952
+ */
953
+ function baseKeys(object) {
954
+ if (!isPrototype(object)) {
955
+ return nativeKeys(object);
956
+ }
957
+ var result = [];
958
+ for (var key in Object(object)) {
959
+ if (hasOwnProperty.call(object, key) && key != 'constructor') {
960
+ result.push(key);
961
+ }
962
+ }
963
+ return result;
964
+ }
965
+
966
+ _baseKeys = baseKeys;
967
+ return _baseKeys;
968
+ }
969
+
970
+ var isArrayLike_1;
971
+ var hasRequiredIsArrayLike;
972
+
973
+ function requireIsArrayLike () {
974
+ if (hasRequiredIsArrayLike) return isArrayLike_1;
975
+ hasRequiredIsArrayLike = 1;
976
+ var isFunction = common.requireIsFunction(),
977
+ isLength = requireIsLength();
978
+
979
+ /**
980
+ * Checks if `value` is array-like. A value is considered array-like if it's
981
+ * not a function and has a `value.length` that's an integer greater than or
982
+ * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
983
+ *
984
+ * @static
985
+ * @memberOf _
986
+ * @since 4.0.0
987
+ * @category Lang
988
+ * @param {*} value The value to check.
989
+ * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
990
+ * @example
991
+ *
992
+ * _.isArrayLike([1, 2, 3]);
993
+ * // => true
994
+ *
995
+ * _.isArrayLike(document.body.children);
996
+ * // => true
997
+ *
998
+ * _.isArrayLike('abc');
999
+ * // => true
1000
+ *
1001
+ * _.isArrayLike(_.noop);
1002
+ * // => false
1003
+ */
1004
+ function isArrayLike(value) {
1005
+ return value != null && isLength(value.length) && !isFunction(value);
1006
+ }
1007
+
1008
+ isArrayLike_1 = isArrayLike;
1009
+ return isArrayLike_1;
1010
+ }
1011
+
1012
+ var keys_1;
1013
+ var hasRequiredKeys;
1014
+
1015
+ function requireKeys () {
1016
+ if (hasRequiredKeys) return keys_1;
1017
+ hasRequiredKeys = 1;
1018
+ var arrayLikeKeys = require_arrayLikeKeys(),
1019
+ baseKeys = require_baseKeys(),
1020
+ isArrayLike = requireIsArrayLike();
1021
+
1022
+ /**
1023
+ * Creates an array of the own enumerable property names of `object`.
1024
+ *
1025
+ * **Note:** Non-object values are coerced to objects. See the
1026
+ * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
1027
+ * for more details.
1028
+ *
1029
+ * @static
1030
+ * @since 0.1.0
1031
+ * @memberOf _
1032
+ * @category Object
1033
+ * @param {Object} object The object to query.
1034
+ * @returns {Array} Returns the array of property names.
1035
+ * @example
1036
+ *
1037
+ * function Foo() {
1038
+ * this.a = 1;
1039
+ * this.b = 2;
1040
+ * }
1041
+ *
1042
+ * Foo.prototype.c = 3;
1043
+ *
1044
+ * _.keys(new Foo);
1045
+ * // => ['a', 'b'] (iteration order is not guaranteed)
1046
+ *
1047
+ * _.keys('hi');
1048
+ * // => ['0', '1']
1049
+ */
1050
+ function keys(object) {
1051
+ return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
1052
+ }
1053
+
1054
+ keys_1 = keys;
1055
+ return keys_1;
1056
+ }
1057
+
1058
+ var _baseAssign;
1059
+ var hasRequired_baseAssign;
1060
+
1061
+ function require_baseAssign () {
1062
+ if (hasRequired_baseAssign) return _baseAssign;
1063
+ hasRequired_baseAssign = 1;
1064
+ var copyObject = require_copyObject(),
1065
+ keys = requireKeys();
1066
+
1067
+ /**
1068
+ * The base implementation of `_.assign` without support for multiple sources
1069
+ * or `customizer` functions.
1070
+ *
1071
+ * @private
1072
+ * @param {Object} object The destination object.
1073
+ * @param {Object} source The source object.
1074
+ * @returns {Object} Returns `object`.
1075
+ */
1076
+ function baseAssign(object, source) {
1077
+ return object && copyObject(source, keys(source), object);
1078
+ }
1079
+
1080
+ _baseAssign = baseAssign;
1081
+ return _baseAssign;
1082
+ }
1083
+
1084
+ /**
1085
+ * This function is like
1086
+ * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
1087
+ * except that it includes inherited enumerable properties.
1088
+ *
1089
+ * @private
1090
+ * @param {Object} object The object to query.
1091
+ * @returns {Array} Returns the array of property names.
1092
+ */
1093
+
1094
+ var _nativeKeysIn;
1095
+ var hasRequired_nativeKeysIn;
1096
+
1097
+ function require_nativeKeysIn () {
1098
+ if (hasRequired_nativeKeysIn) return _nativeKeysIn;
1099
+ hasRequired_nativeKeysIn = 1;
1100
+ function nativeKeysIn(object) {
1101
+ var result = [];
1102
+ if (object != null) {
1103
+ for (var key in Object(object)) {
1104
+ result.push(key);
1105
+ }
1106
+ }
1107
+ return result;
1108
+ }
1109
+
1110
+ _nativeKeysIn = nativeKeysIn;
1111
+ return _nativeKeysIn;
1112
+ }
1113
+
1114
+ var _baseKeysIn;
1115
+ var hasRequired_baseKeysIn;
1116
+
1117
+ function require_baseKeysIn () {
1118
+ if (hasRequired_baseKeysIn) return _baseKeysIn;
1119
+ hasRequired_baseKeysIn = 1;
1120
+ var isObject = common.requireIsObject(),
1121
+ isPrototype = require_isPrototype(),
1122
+ nativeKeysIn = require_nativeKeysIn();
1123
+
1124
+ /** Used for built-in method references. */
1125
+ var objectProto = Object.prototype;
1126
+
1127
+ /** Used to check objects for own properties. */
1128
+ var hasOwnProperty = objectProto.hasOwnProperty;
1129
+
1130
+ /**
1131
+ * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
1132
+ *
1133
+ * @private
1134
+ * @param {Object} object The object to query.
1135
+ * @returns {Array} Returns the array of property names.
1136
+ */
1137
+ function baseKeysIn(object) {
1138
+ if (!isObject(object)) {
1139
+ return nativeKeysIn(object);
1140
+ }
1141
+ var isProto = isPrototype(object),
1142
+ result = [];
1143
+
1144
+ for (var key in object) {
1145
+ if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
1146
+ result.push(key);
1147
+ }
1148
+ }
1149
+ return result;
1150
+ }
1151
+
1152
+ _baseKeysIn = baseKeysIn;
1153
+ return _baseKeysIn;
1154
+ }
1155
+
1156
+ var keysIn_1;
1157
+ var hasRequiredKeysIn;
1158
+
1159
+ function requireKeysIn () {
1160
+ if (hasRequiredKeysIn) return keysIn_1;
1161
+ hasRequiredKeysIn = 1;
1162
+ var arrayLikeKeys = require_arrayLikeKeys(),
1163
+ baseKeysIn = require_baseKeysIn(),
1164
+ isArrayLike = requireIsArrayLike();
1165
+
1166
+ /**
1167
+ * Creates an array of the own and inherited enumerable property names of `object`.
1168
+ *
1169
+ * **Note:** Non-object values are coerced to objects.
1170
+ *
1171
+ * @static
1172
+ * @memberOf _
1173
+ * @since 3.0.0
1174
+ * @category Object
1175
+ * @param {Object} object The object to query.
1176
+ * @returns {Array} Returns the array of property names.
1177
+ * @example
1178
+ *
1179
+ * function Foo() {
1180
+ * this.a = 1;
1181
+ * this.b = 2;
1182
+ * }
1183
+ *
1184
+ * Foo.prototype.c = 3;
1185
+ *
1186
+ * _.keysIn(new Foo);
1187
+ * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
1188
+ */
1189
+ function keysIn(object) {
1190
+ return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
1191
+ }
1192
+
1193
+ keysIn_1 = keysIn;
1194
+ return keysIn_1;
1195
+ }
1196
+
1197
+ var _baseAssignIn;
1198
+ var hasRequired_baseAssignIn;
1199
+
1200
+ function require_baseAssignIn () {
1201
+ if (hasRequired_baseAssignIn) return _baseAssignIn;
1202
+ hasRequired_baseAssignIn = 1;
1203
+ var copyObject = require_copyObject(),
1204
+ keysIn = requireKeysIn();
1205
+
1206
+ /**
1207
+ * The base implementation of `_.assignIn` without support for multiple sources
1208
+ * or `customizer` functions.
1209
+ *
1210
+ * @private
1211
+ * @param {Object} object The destination object.
1212
+ * @param {Object} source The source object.
1213
+ * @returns {Object} Returns `object`.
1214
+ */
1215
+ function baseAssignIn(object, source) {
1216
+ return object && copyObject(source, keysIn(source), object);
1217
+ }
1218
+
1219
+ _baseAssignIn = baseAssignIn;
1220
+ return _baseAssignIn;
1221
+ }
1222
+
1223
+ var _cloneBuffer = {exports: {}};
1224
+
1225
+ _cloneBuffer.exports;
1226
+
1227
+ var hasRequired_cloneBuffer;
1228
+
1229
+ function require_cloneBuffer () {
1230
+ if (hasRequired_cloneBuffer) return _cloneBuffer.exports;
1231
+ hasRequired_cloneBuffer = 1;
1232
+ (function (module, exports) {
1233
+ var root = common.require_root();
1234
+
1235
+ /** Detect free variable `exports`. */
1236
+ var freeExports = exports && !exports.nodeType && exports;
1237
+
1238
+ /** Detect free variable `module`. */
1239
+ var freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;
1240
+
1241
+ /** Detect the popular CommonJS extension `module.exports`. */
1242
+ var moduleExports = freeModule && freeModule.exports === freeExports;
1243
+
1244
+ /** Built-in value references. */
1245
+ var Buffer = moduleExports ? root.Buffer : undefined,
1246
+ allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;
1247
+
1248
+ /**
1249
+ * Creates a clone of `buffer`.
1250
+ *
1251
+ * @private
1252
+ * @param {Buffer} buffer The buffer to clone.
1253
+ * @param {boolean} [isDeep] Specify a deep clone.
1254
+ * @returns {Buffer} Returns the cloned buffer.
1255
+ */
1256
+ function cloneBuffer(buffer, isDeep) {
1257
+ if (isDeep) {
1258
+ return buffer.slice();
1259
+ }
1260
+ var length = buffer.length,
1261
+ result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
1262
+
1263
+ buffer.copy(result);
1264
+ return result;
1265
+ }
1266
+
1267
+ module.exports = cloneBuffer;
1268
+ } (_cloneBuffer, _cloneBuffer.exports));
1269
+ return _cloneBuffer.exports;
1270
+ }
1271
+
1272
+ /**
1273
+ * Copies the values of `source` to `array`.
1274
+ *
1275
+ * @private
1276
+ * @param {Array} source The array to copy values from.
1277
+ * @param {Array} [array=[]] The array to copy values to.
1278
+ * @returns {Array} Returns `array`.
1279
+ */
1280
+
1281
+ var _copyArray;
1282
+ var hasRequired_copyArray;
1283
+
1284
+ function require_copyArray () {
1285
+ if (hasRequired_copyArray) return _copyArray;
1286
+ hasRequired_copyArray = 1;
1287
+ function copyArray(source, array) {
1288
+ var index = -1,
1289
+ length = source.length;
1290
+
1291
+ array || (array = Array(length));
1292
+ while (++index < length) {
1293
+ array[index] = source[index];
1294
+ }
1295
+ return array;
1296
+ }
1297
+
1298
+ _copyArray = copyArray;
1299
+ return _copyArray;
1300
+ }
1301
+
1302
+ /**
1303
+ * A specialized version of `_.filter` for arrays without support for
1304
+ * iteratee shorthands.
1305
+ *
1306
+ * @private
1307
+ * @param {Array} [array] The array to iterate over.
1308
+ * @param {Function} predicate The function invoked per iteration.
1309
+ * @returns {Array} Returns the new filtered array.
1310
+ */
1311
+
1312
+ var _arrayFilter;
1313
+ var hasRequired_arrayFilter;
1314
+
1315
+ function require_arrayFilter () {
1316
+ if (hasRequired_arrayFilter) return _arrayFilter;
1317
+ hasRequired_arrayFilter = 1;
1318
+ function arrayFilter(array, predicate) {
1319
+ var index = -1,
1320
+ length = array == null ? 0 : array.length,
1321
+ resIndex = 0,
1322
+ result = [];
1323
+
1324
+ while (++index < length) {
1325
+ var value = array[index];
1326
+ if (predicate(value, index, array)) {
1327
+ result[resIndex++] = value;
1328
+ }
1329
+ }
1330
+ return result;
1331
+ }
1332
+
1333
+ _arrayFilter = arrayFilter;
1334
+ return _arrayFilter;
1335
+ }
1336
+
1337
+ /**
1338
+ * This method returns a new empty array.
1339
+ *
1340
+ * @static
1341
+ * @memberOf _
1342
+ * @since 4.13.0
1343
+ * @category Util
1344
+ * @returns {Array} Returns the new empty array.
1345
+ * @example
1346
+ *
1347
+ * var arrays = _.times(2, _.stubArray);
1348
+ *
1349
+ * console.log(arrays);
1350
+ * // => [[], []]
1351
+ *
1352
+ * console.log(arrays[0] === arrays[1]);
1353
+ * // => false
1354
+ */
1355
+
1356
+ var stubArray_1;
1357
+ var hasRequiredStubArray;
1358
+
1359
+ function requireStubArray () {
1360
+ if (hasRequiredStubArray) return stubArray_1;
1361
+ hasRequiredStubArray = 1;
1362
+ function stubArray() {
1363
+ return [];
1364
+ }
1365
+
1366
+ stubArray_1 = stubArray;
1367
+ return stubArray_1;
1368
+ }
1369
+
1370
+ var _getSymbols;
1371
+ var hasRequired_getSymbols;
1372
+
1373
+ function require_getSymbols () {
1374
+ if (hasRequired_getSymbols) return _getSymbols;
1375
+ hasRequired_getSymbols = 1;
1376
+ var arrayFilter = require_arrayFilter(),
1377
+ stubArray = requireStubArray();
1378
+
1379
+ /** Used for built-in method references. */
1380
+ var objectProto = Object.prototype;
1381
+
1382
+ /** Built-in value references. */
1383
+ var propertyIsEnumerable = objectProto.propertyIsEnumerable;
1384
+
1385
+ /* Built-in method references for those with the same name as other `lodash` methods. */
1386
+ var nativeGetSymbols = Object.getOwnPropertySymbols;
1387
+
1388
+ /**
1389
+ * Creates an array of the own enumerable symbols of `object`.
1390
+ *
1391
+ * @private
1392
+ * @param {Object} object The object to query.
1393
+ * @returns {Array} Returns the array of symbols.
1394
+ */
1395
+ var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
1396
+ if (object == null) {
1397
+ return [];
1398
+ }
1399
+ object = Object(object);
1400
+ return arrayFilter(nativeGetSymbols(object), function(symbol) {
1401
+ return propertyIsEnumerable.call(object, symbol);
1402
+ });
1403
+ };
1404
+
1405
+ _getSymbols = getSymbols;
1406
+ return _getSymbols;
1407
+ }
1408
+
1409
+ var _copySymbols;
1410
+ var hasRequired_copySymbols;
1411
+
1412
+ function require_copySymbols () {
1413
+ if (hasRequired_copySymbols) return _copySymbols;
1414
+ hasRequired_copySymbols = 1;
1415
+ var copyObject = require_copyObject(),
1416
+ getSymbols = require_getSymbols();
1417
+
1418
+ /**
1419
+ * Copies own symbols of `source` to `object`.
1420
+ *
1421
+ * @private
1422
+ * @param {Object} source The object to copy symbols from.
1423
+ * @param {Object} [object={}] The object to copy symbols to.
1424
+ * @returns {Object} Returns `object`.
1425
+ */
1426
+ function copySymbols(source, object) {
1427
+ return copyObject(source, getSymbols(source), object);
1428
+ }
1429
+
1430
+ _copySymbols = copySymbols;
1431
+ return _copySymbols;
1432
+ }
1433
+
1434
+ /**
1435
+ * Appends the elements of `values` to `array`.
1436
+ *
1437
+ * @private
1438
+ * @param {Array} array The array to modify.
1439
+ * @param {Array} values The values to append.
1440
+ * @returns {Array} Returns `array`.
1441
+ */
1442
+
1443
+ var _arrayPush;
1444
+ var hasRequired_arrayPush;
1445
+
1446
+ function require_arrayPush () {
1447
+ if (hasRequired_arrayPush) return _arrayPush;
1448
+ hasRequired_arrayPush = 1;
1449
+ function arrayPush(array, values) {
1450
+ var index = -1,
1451
+ length = values.length,
1452
+ offset = array.length;
1453
+
1454
+ while (++index < length) {
1455
+ array[offset + index] = values[index];
1456
+ }
1457
+ return array;
1458
+ }
1459
+
1460
+ _arrayPush = arrayPush;
1461
+ return _arrayPush;
1462
+ }
1463
+
1464
+ var _getPrototype;
1465
+ var hasRequired_getPrototype;
1466
+
1467
+ function require_getPrototype () {
1468
+ if (hasRequired_getPrototype) return _getPrototype;
1469
+ hasRequired_getPrototype = 1;
1470
+ var overArg = require_overArg();
1471
+
1472
+ /** Built-in value references. */
1473
+ var getPrototype = overArg(Object.getPrototypeOf, Object);
1474
+
1475
+ _getPrototype = getPrototype;
1476
+ return _getPrototype;
1477
+ }
1478
+
1479
+ var _getSymbolsIn;
1480
+ var hasRequired_getSymbolsIn;
1481
+
1482
+ function require_getSymbolsIn () {
1483
+ if (hasRequired_getSymbolsIn) return _getSymbolsIn;
1484
+ hasRequired_getSymbolsIn = 1;
1485
+ var arrayPush = require_arrayPush(),
1486
+ getPrototype = require_getPrototype(),
1487
+ getSymbols = require_getSymbols(),
1488
+ stubArray = requireStubArray();
1489
+
1490
+ /* Built-in method references for those with the same name as other `lodash` methods. */
1491
+ var nativeGetSymbols = Object.getOwnPropertySymbols;
1492
+
1493
+ /**
1494
+ * Creates an array of the own and inherited enumerable symbols of `object`.
1495
+ *
1496
+ * @private
1497
+ * @param {Object} object The object to query.
1498
+ * @returns {Array} Returns the array of symbols.
1499
+ */
1500
+ var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {
1501
+ var result = [];
1502
+ while (object) {
1503
+ arrayPush(result, getSymbols(object));
1504
+ object = getPrototype(object);
1505
+ }
1506
+ return result;
1507
+ };
1508
+
1509
+ _getSymbolsIn = getSymbolsIn;
1510
+ return _getSymbolsIn;
1511
+ }
1512
+
1513
+ var _copySymbolsIn;
1514
+ var hasRequired_copySymbolsIn;
1515
+
1516
+ function require_copySymbolsIn () {
1517
+ if (hasRequired_copySymbolsIn) return _copySymbolsIn;
1518
+ hasRequired_copySymbolsIn = 1;
1519
+ var copyObject = require_copyObject(),
1520
+ getSymbolsIn = require_getSymbolsIn();
1521
+
1522
+ /**
1523
+ * Copies own and inherited symbols of `source` to `object`.
1524
+ *
1525
+ * @private
1526
+ * @param {Object} source The object to copy symbols from.
1527
+ * @param {Object} [object={}] The object to copy symbols to.
1528
+ * @returns {Object} Returns `object`.
1529
+ */
1530
+ function copySymbolsIn(source, object) {
1531
+ return copyObject(source, getSymbolsIn(source), object);
1532
+ }
1533
+
1534
+ _copySymbolsIn = copySymbolsIn;
1535
+ return _copySymbolsIn;
1536
+ }
1537
+
1538
+ var _baseGetAllKeys;
1539
+ var hasRequired_baseGetAllKeys;
1540
+
1541
+ function require_baseGetAllKeys () {
1542
+ if (hasRequired_baseGetAllKeys) return _baseGetAllKeys;
1543
+ hasRequired_baseGetAllKeys = 1;
1544
+ var arrayPush = require_arrayPush(),
1545
+ isArray = common.requireIsArray();
1546
+
1547
+ /**
1548
+ * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
1549
+ * `keysFunc` and `symbolsFunc` to get the enumerable property names and
1550
+ * symbols of `object`.
1551
+ *
1552
+ * @private
1553
+ * @param {Object} object The object to query.
1554
+ * @param {Function} keysFunc The function to get the keys of `object`.
1555
+ * @param {Function} symbolsFunc The function to get the symbols of `object`.
1556
+ * @returns {Array} Returns the array of property names and symbols.
1557
+ */
1558
+ function baseGetAllKeys(object, keysFunc, symbolsFunc) {
1559
+ var result = keysFunc(object);
1560
+ return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
1561
+ }
1562
+
1563
+ _baseGetAllKeys = baseGetAllKeys;
1564
+ return _baseGetAllKeys;
1565
+ }
1566
+
1567
+ var _getAllKeys;
1568
+ var hasRequired_getAllKeys;
1569
+
1570
+ function require_getAllKeys () {
1571
+ if (hasRequired_getAllKeys) return _getAllKeys;
1572
+ hasRequired_getAllKeys = 1;
1573
+ var baseGetAllKeys = require_baseGetAllKeys(),
1574
+ getSymbols = require_getSymbols(),
1575
+ keys = requireKeys();
1576
+
1577
+ /**
1578
+ * Creates an array of own enumerable property names and symbols of `object`.
1579
+ *
1580
+ * @private
1581
+ * @param {Object} object The object to query.
1582
+ * @returns {Array} Returns the array of property names and symbols.
1583
+ */
1584
+ function getAllKeys(object) {
1585
+ return baseGetAllKeys(object, keys, getSymbols);
1586
+ }
1587
+
1588
+ _getAllKeys = getAllKeys;
1589
+ return _getAllKeys;
1590
+ }
1591
+
1592
+ var _getAllKeysIn;
1593
+ var hasRequired_getAllKeysIn;
1594
+
1595
+ function require_getAllKeysIn () {
1596
+ if (hasRequired_getAllKeysIn) return _getAllKeysIn;
1597
+ hasRequired_getAllKeysIn = 1;
1598
+ var baseGetAllKeys = require_baseGetAllKeys(),
1599
+ getSymbolsIn = require_getSymbolsIn(),
1600
+ keysIn = requireKeysIn();
1601
+
1602
+ /**
1603
+ * Creates an array of own and inherited enumerable property names and
1604
+ * symbols of `object`.
1605
+ *
1606
+ * @private
1607
+ * @param {Object} object The object to query.
1608
+ * @returns {Array} Returns the array of property names and symbols.
1609
+ */
1610
+ function getAllKeysIn(object) {
1611
+ return baseGetAllKeys(object, keysIn, getSymbolsIn);
1612
+ }
1613
+
1614
+ _getAllKeysIn = getAllKeysIn;
1615
+ return _getAllKeysIn;
1616
+ }
1617
+
1618
+ var _DataView;
1619
+ var hasRequired_DataView;
1620
+
1621
+ function require_DataView () {
1622
+ if (hasRequired_DataView) return _DataView;
1623
+ hasRequired_DataView = 1;
1624
+ var getNative = common.require_getNative(),
1625
+ root = common.require_root();
1626
+
1627
+ /* Built-in method references that are verified to be native. */
1628
+ var DataView = getNative(root, 'DataView');
1629
+
1630
+ _DataView = DataView;
1631
+ return _DataView;
1632
+ }
1633
+
1634
+ var _Promise;
1635
+ var hasRequired_Promise;
1636
+
1637
+ function require_Promise () {
1638
+ if (hasRequired_Promise) return _Promise;
1639
+ hasRequired_Promise = 1;
1640
+ var getNative = common.require_getNative(),
1641
+ root = common.require_root();
1642
+
1643
+ /* Built-in method references that are verified to be native. */
1644
+ var Promise = getNative(root, 'Promise');
1645
+
1646
+ _Promise = Promise;
1647
+ return _Promise;
1648
+ }
1649
+
1650
+ var _Set;
1651
+ var hasRequired_Set;
1652
+
1653
+ function require_Set () {
1654
+ if (hasRequired_Set) return _Set;
1655
+ hasRequired_Set = 1;
1656
+ var getNative = common.require_getNative(),
1657
+ root = common.require_root();
1658
+
1659
+ /* Built-in method references that are verified to be native. */
1660
+ var Set = getNative(root, 'Set');
1661
+
1662
+ _Set = Set;
1663
+ return _Set;
1664
+ }
1665
+
1666
+ var _WeakMap;
1667
+ var hasRequired_WeakMap;
1668
+
1669
+ function require_WeakMap () {
1670
+ if (hasRequired_WeakMap) return _WeakMap;
1671
+ hasRequired_WeakMap = 1;
1672
+ var getNative = common.require_getNative(),
1673
+ root = common.require_root();
1674
+
1675
+ /* Built-in method references that are verified to be native. */
1676
+ var WeakMap = getNative(root, 'WeakMap');
1677
+
1678
+ _WeakMap = WeakMap;
1679
+ return _WeakMap;
1680
+ }
1681
+
1682
+ var _getTag;
1683
+ var hasRequired_getTag;
1684
+
1685
+ function require_getTag () {
1686
+ if (hasRequired_getTag) return _getTag;
1687
+ hasRequired_getTag = 1;
1688
+ var DataView = require_DataView(),
1689
+ Map = common.require_Map(),
1690
+ Promise = require_Promise(),
1691
+ Set = require_Set(),
1692
+ WeakMap = require_WeakMap(),
1693
+ baseGetTag = common.require_baseGetTag(),
1694
+ toSource = common.require_toSource();
1695
+
1696
+ /** `Object#toString` result references. */
1697
+ var mapTag = '[object Map]',
1698
+ objectTag = '[object Object]',
1699
+ promiseTag = '[object Promise]',
1700
+ setTag = '[object Set]',
1701
+ weakMapTag = '[object WeakMap]';
1702
+
1703
+ var dataViewTag = '[object DataView]';
1704
+
1705
+ /** Used to detect maps, sets, and weakmaps. */
1706
+ var dataViewCtorString = toSource(DataView),
1707
+ mapCtorString = toSource(Map),
1708
+ promiseCtorString = toSource(Promise),
1709
+ setCtorString = toSource(Set),
1710
+ weakMapCtorString = toSource(WeakMap);
1711
+
1712
+ /**
1713
+ * Gets the `toStringTag` of `value`.
1714
+ *
1715
+ * @private
1716
+ * @param {*} value The value to query.
1717
+ * @returns {string} Returns the `toStringTag`.
1718
+ */
1719
+ var getTag = baseGetTag;
1720
+
1721
+ // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
1722
+ if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||
1723
+ (Map && getTag(new Map) != mapTag) ||
1724
+ (Promise && getTag(Promise.resolve()) != promiseTag) ||
1725
+ (Set && getTag(new Set) != setTag) ||
1726
+ (WeakMap && getTag(new WeakMap) != weakMapTag)) {
1727
+ getTag = function(value) {
1728
+ var result = baseGetTag(value),
1729
+ Ctor = result == objectTag ? value.constructor : undefined,
1730
+ ctorString = Ctor ? toSource(Ctor) : '';
1731
+
1732
+ if (ctorString) {
1733
+ switch (ctorString) {
1734
+ case dataViewCtorString: return dataViewTag;
1735
+ case mapCtorString: return mapTag;
1736
+ case promiseCtorString: return promiseTag;
1737
+ case setCtorString: return setTag;
1738
+ case weakMapCtorString: return weakMapTag;
1739
+ }
1740
+ }
1741
+ return result;
1742
+ };
1743
+ }
1744
+
1745
+ _getTag = getTag;
1746
+ return _getTag;
1747
+ }
1748
+
1749
+ /** Used for built-in method references. */
1750
+
1751
+ var _initCloneArray;
1752
+ var hasRequired_initCloneArray;
1753
+
1754
+ function require_initCloneArray () {
1755
+ if (hasRequired_initCloneArray) return _initCloneArray;
1756
+ hasRequired_initCloneArray = 1;
1757
+ var objectProto = Object.prototype;
1758
+
1759
+ /** Used to check objects for own properties. */
1760
+ var hasOwnProperty = objectProto.hasOwnProperty;
1761
+
1762
+ /**
1763
+ * Initializes an array clone.
1764
+ *
1765
+ * @private
1766
+ * @param {Array} array The array to clone.
1767
+ * @returns {Array} Returns the initialized clone.
1768
+ */
1769
+ function initCloneArray(array) {
1770
+ var length = array.length,
1771
+ result = new array.constructor(length);
1772
+
1773
+ // Add properties assigned by `RegExp#exec`.
1774
+ if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {
1775
+ result.index = array.index;
1776
+ result.input = array.input;
1777
+ }
1778
+ return result;
1779
+ }
1780
+
1781
+ _initCloneArray = initCloneArray;
1782
+ return _initCloneArray;
1783
+ }
1784
+
1785
+ var _Uint8Array;
1786
+ var hasRequired_Uint8Array;
1787
+
1788
+ function require_Uint8Array () {
1789
+ if (hasRequired_Uint8Array) return _Uint8Array;
1790
+ hasRequired_Uint8Array = 1;
1791
+ var root = common.require_root();
1792
+
1793
+ /** Built-in value references. */
1794
+ var Uint8Array = root.Uint8Array;
1795
+
1796
+ _Uint8Array = Uint8Array;
1797
+ return _Uint8Array;
1798
+ }
1799
+
1800
+ var _cloneArrayBuffer;
1801
+ var hasRequired_cloneArrayBuffer;
1802
+
1803
+ function require_cloneArrayBuffer () {
1804
+ if (hasRequired_cloneArrayBuffer) return _cloneArrayBuffer;
1805
+ hasRequired_cloneArrayBuffer = 1;
1806
+ var Uint8Array = require_Uint8Array();
1807
+
1808
+ /**
1809
+ * Creates a clone of `arrayBuffer`.
1810
+ *
1811
+ * @private
1812
+ * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
1813
+ * @returns {ArrayBuffer} Returns the cloned array buffer.
1814
+ */
1815
+ function cloneArrayBuffer(arrayBuffer) {
1816
+ var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
1817
+ new Uint8Array(result).set(new Uint8Array(arrayBuffer));
1818
+ return result;
1819
+ }
1820
+
1821
+ _cloneArrayBuffer = cloneArrayBuffer;
1822
+ return _cloneArrayBuffer;
1823
+ }
1824
+
1825
+ var _cloneDataView;
1826
+ var hasRequired_cloneDataView;
1827
+
1828
+ function require_cloneDataView () {
1829
+ if (hasRequired_cloneDataView) return _cloneDataView;
1830
+ hasRequired_cloneDataView = 1;
1831
+ var cloneArrayBuffer = require_cloneArrayBuffer();
1832
+
1833
+ /**
1834
+ * Creates a clone of `dataView`.
1835
+ *
1836
+ * @private
1837
+ * @param {Object} dataView The data view to clone.
1838
+ * @param {boolean} [isDeep] Specify a deep clone.
1839
+ * @returns {Object} Returns the cloned data view.
1840
+ */
1841
+ function cloneDataView(dataView, isDeep) {
1842
+ var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;
1843
+ return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
1844
+ }
1845
+
1846
+ _cloneDataView = cloneDataView;
1847
+ return _cloneDataView;
1848
+ }
1849
+
1850
+ /** Used to match `RegExp` flags from their coerced string values. */
1851
+
1852
+ var _cloneRegExp;
1853
+ var hasRequired_cloneRegExp;
1854
+
1855
+ function require_cloneRegExp () {
1856
+ if (hasRequired_cloneRegExp) return _cloneRegExp;
1857
+ hasRequired_cloneRegExp = 1;
1858
+ var reFlags = /\w*$/;
1859
+
1860
+ /**
1861
+ * Creates a clone of `regexp`.
1862
+ *
1863
+ * @private
1864
+ * @param {Object} regexp The regexp to clone.
1865
+ * @returns {Object} Returns the cloned regexp.
1866
+ */
1867
+ function cloneRegExp(regexp) {
1868
+ var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
1869
+ result.lastIndex = regexp.lastIndex;
1870
+ return result;
1871
+ }
1872
+
1873
+ _cloneRegExp = cloneRegExp;
1874
+ return _cloneRegExp;
1875
+ }
1876
+
1877
+ var _cloneSymbol;
1878
+ var hasRequired_cloneSymbol;
1879
+
1880
+ function require_cloneSymbol () {
1881
+ if (hasRequired_cloneSymbol) return _cloneSymbol;
1882
+ hasRequired_cloneSymbol = 1;
1883
+ var Symbol = common.require_Symbol();
1884
+
1885
+ /** Used to convert symbols to primitives and strings. */
1886
+ var symbolProto = Symbol ? Symbol.prototype : undefined,
1887
+ symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;
1888
+
1889
+ /**
1890
+ * Creates a clone of the `symbol` object.
1891
+ *
1892
+ * @private
1893
+ * @param {Object} symbol The symbol object to clone.
1894
+ * @returns {Object} Returns the cloned symbol object.
1895
+ */
1896
+ function cloneSymbol(symbol) {
1897
+ return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};
1898
+ }
1899
+
1900
+ _cloneSymbol = cloneSymbol;
1901
+ return _cloneSymbol;
1902
+ }
1903
+
1904
+ var _cloneTypedArray;
1905
+ var hasRequired_cloneTypedArray;
1906
+
1907
+ function require_cloneTypedArray () {
1908
+ if (hasRequired_cloneTypedArray) return _cloneTypedArray;
1909
+ hasRequired_cloneTypedArray = 1;
1910
+ var cloneArrayBuffer = require_cloneArrayBuffer();
1911
+
1912
+ /**
1913
+ * Creates a clone of `typedArray`.
1914
+ *
1915
+ * @private
1916
+ * @param {Object} typedArray The typed array to clone.
1917
+ * @param {boolean} [isDeep] Specify a deep clone.
1918
+ * @returns {Object} Returns the cloned typed array.
1919
+ */
1920
+ function cloneTypedArray(typedArray, isDeep) {
1921
+ var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
1922
+ return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
1923
+ }
1924
+
1925
+ _cloneTypedArray = cloneTypedArray;
1926
+ return _cloneTypedArray;
1927
+ }
1928
+
1929
+ var _initCloneByTag;
1930
+ var hasRequired_initCloneByTag;
1931
+
1932
+ function require_initCloneByTag () {
1933
+ if (hasRequired_initCloneByTag) return _initCloneByTag;
1934
+ hasRequired_initCloneByTag = 1;
1935
+ var cloneArrayBuffer = require_cloneArrayBuffer(),
1936
+ cloneDataView = require_cloneDataView(),
1937
+ cloneRegExp = require_cloneRegExp(),
1938
+ cloneSymbol = require_cloneSymbol(),
1939
+ cloneTypedArray = require_cloneTypedArray();
1940
+
1941
+ /** `Object#toString` result references. */
1942
+ var boolTag = '[object Boolean]',
1943
+ dateTag = '[object Date]',
1944
+ mapTag = '[object Map]',
1945
+ numberTag = '[object Number]',
1946
+ regexpTag = '[object RegExp]',
1947
+ setTag = '[object Set]',
1948
+ stringTag = '[object String]',
1949
+ symbolTag = '[object Symbol]';
1950
+
1951
+ var arrayBufferTag = '[object ArrayBuffer]',
1952
+ dataViewTag = '[object DataView]',
1953
+ float32Tag = '[object Float32Array]',
1954
+ float64Tag = '[object Float64Array]',
1955
+ int8Tag = '[object Int8Array]',
1956
+ int16Tag = '[object Int16Array]',
1957
+ int32Tag = '[object Int32Array]',
1958
+ uint8Tag = '[object Uint8Array]',
1959
+ uint8ClampedTag = '[object Uint8ClampedArray]',
1960
+ uint16Tag = '[object Uint16Array]',
1961
+ uint32Tag = '[object Uint32Array]';
1962
+
1963
+ /**
1964
+ * Initializes an object clone based on its `toStringTag`.
1965
+ *
1966
+ * **Note:** This function only supports cloning values with tags of
1967
+ * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.
1968
+ *
1969
+ * @private
1970
+ * @param {Object} object The object to clone.
1971
+ * @param {string} tag The `toStringTag` of the object to clone.
1972
+ * @param {boolean} [isDeep] Specify a deep clone.
1973
+ * @returns {Object} Returns the initialized clone.
1974
+ */
1975
+ function initCloneByTag(object, tag, isDeep) {
1976
+ var Ctor = object.constructor;
1977
+ switch (tag) {
1978
+ case arrayBufferTag:
1979
+ return cloneArrayBuffer(object);
1980
+
1981
+ case boolTag:
1982
+ case dateTag:
1983
+ return new Ctor(+object);
1984
+
1985
+ case dataViewTag:
1986
+ return cloneDataView(object, isDeep);
1987
+
1988
+ case float32Tag: case float64Tag:
1989
+ case int8Tag: case int16Tag: case int32Tag:
1990
+ case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:
1991
+ return cloneTypedArray(object, isDeep);
1992
+
1993
+ case mapTag:
1994
+ return new Ctor;
1995
+
1996
+ case numberTag:
1997
+ case stringTag:
1998
+ return new Ctor(object);
1999
+
2000
+ case regexpTag:
2001
+ return cloneRegExp(object);
2002
+
2003
+ case setTag:
2004
+ return new Ctor;
2005
+
2006
+ case symbolTag:
2007
+ return cloneSymbol(object);
2008
+ }
2009
+ }
2010
+
2011
+ _initCloneByTag = initCloneByTag;
2012
+ return _initCloneByTag;
2013
+ }
2014
+
2015
+ var _baseCreate;
2016
+ var hasRequired_baseCreate;
2017
+
2018
+ function require_baseCreate () {
2019
+ if (hasRequired_baseCreate) return _baseCreate;
2020
+ hasRequired_baseCreate = 1;
2021
+ var isObject = common.requireIsObject();
2022
+
2023
+ /** Built-in value references. */
2024
+ var objectCreate = Object.create;
2025
+
2026
+ /**
2027
+ * The base implementation of `_.create` without support for assigning
2028
+ * properties to the created object.
2029
+ *
2030
+ * @private
2031
+ * @param {Object} proto The object to inherit from.
2032
+ * @returns {Object} Returns the new object.
2033
+ */
2034
+ var baseCreate = (function() {
2035
+ function object() {}
2036
+ return function(proto) {
2037
+ if (!isObject(proto)) {
2038
+ return {};
2039
+ }
2040
+ if (objectCreate) {
2041
+ return objectCreate(proto);
2042
+ }
2043
+ object.prototype = proto;
2044
+ var result = new object;
2045
+ object.prototype = undefined;
2046
+ return result;
2047
+ };
2048
+ }());
2049
+
2050
+ _baseCreate = baseCreate;
2051
+ return _baseCreate;
2052
+ }
2053
+
2054
+ var _initCloneObject;
2055
+ var hasRequired_initCloneObject;
2056
+
2057
+ function require_initCloneObject () {
2058
+ if (hasRequired_initCloneObject) return _initCloneObject;
2059
+ hasRequired_initCloneObject = 1;
2060
+ var baseCreate = require_baseCreate(),
2061
+ getPrototype = require_getPrototype(),
2062
+ isPrototype = require_isPrototype();
2063
+
2064
+ /**
2065
+ * Initializes an object clone.
2066
+ *
2067
+ * @private
2068
+ * @param {Object} object The object to clone.
2069
+ * @returns {Object} Returns the initialized clone.
2070
+ */
2071
+ function initCloneObject(object) {
2072
+ return (typeof object.constructor == 'function' && !isPrototype(object))
2073
+ ? baseCreate(getPrototype(object))
2074
+ : {};
2075
+ }
2076
+
2077
+ _initCloneObject = initCloneObject;
2078
+ return _initCloneObject;
2079
+ }
2080
+
2081
+ var _baseIsMap;
2082
+ var hasRequired_baseIsMap;
2083
+
2084
+ function require_baseIsMap () {
2085
+ if (hasRequired_baseIsMap) return _baseIsMap;
2086
+ hasRequired_baseIsMap = 1;
2087
+ var getTag = require_getTag(),
2088
+ isObjectLike = common.requireIsObjectLike();
2089
+
2090
+ /** `Object#toString` result references. */
2091
+ var mapTag = '[object Map]';
2092
+
2093
+ /**
2094
+ * The base implementation of `_.isMap` without Node.js optimizations.
2095
+ *
2096
+ * @private
2097
+ * @param {*} value The value to check.
2098
+ * @returns {boolean} Returns `true` if `value` is a map, else `false`.
2099
+ */
2100
+ function baseIsMap(value) {
2101
+ return isObjectLike(value) && getTag(value) == mapTag;
2102
+ }
2103
+
2104
+ _baseIsMap = baseIsMap;
2105
+ return _baseIsMap;
2106
+ }
2107
+
2108
+ var isMap_1;
2109
+ var hasRequiredIsMap;
2110
+
2111
+ function requireIsMap () {
2112
+ if (hasRequiredIsMap) return isMap_1;
2113
+ hasRequiredIsMap = 1;
2114
+ var baseIsMap = require_baseIsMap(),
2115
+ baseUnary = require_baseUnary(),
2116
+ nodeUtil = require_nodeUtil();
2117
+
2118
+ /* Node.js helper references. */
2119
+ var nodeIsMap = nodeUtil && nodeUtil.isMap;
2120
+
2121
+ /**
2122
+ * Checks if `value` is classified as a `Map` object.
2123
+ *
2124
+ * @static
2125
+ * @memberOf _
2126
+ * @since 4.3.0
2127
+ * @category Lang
2128
+ * @param {*} value The value to check.
2129
+ * @returns {boolean} Returns `true` if `value` is a map, else `false`.
2130
+ * @example
2131
+ *
2132
+ * _.isMap(new Map);
2133
+ * // => true
2134
+ *
2135
+ * _.isMap(new WeakMap);
2136
+ * // => false
2137
+ */
2138
+ var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;
2139
+
2140
+ isMap_1 = isMap;
2141
+ return isMap_1;
2142
+ }
2143
+
2144
+ var _baseIsSet;
2145
+ var hasRequired_baseIsSet;
2146
+
2147
+ function require_baseIsSet () {
2148
+ if (hasRequired_baseIsSet) return _baseIsSet;
2149
+ hasRequired_baseIsSet = 1;
2150
+ var getTag = require_getTag(),
2151
+ isObjectLike = common.requireIsObjectLike();
2152
+
2153
+ /** `Object#toString` result references. */
2154
+ var setTag = '[object Set]';
2155
+
2156
+ /**
2157
+ * The base implementation of `_.isSet` without Node.js optimizations.
2158
+ *
2159
+ * @private
2160
+ * @param {*} value The value to check.
2161
+ * @returns {boolean} Returns `true` if `value` is a set, else `false`.
2162
+ */
2163
+ function baseIsSet(value) {
2164
+ return isObjectLike(value) && getTag(value) == setTag;
2165
+ }
2166
+
2167
+ _baseIsSet = baseIsSet;
2168
+ return _baseIsSet;
2169
+ }
2170
+
2171
+ var isSet_1;
2172
+ var hasRequiredIsSet;
2173
+
2174
+ function requireIsSet () {
2175
+ if (hasRequiredIsSet) return isSet_1;
2176
+ hasRequiredIsSet = 1;
2177
+ var baseIsSet = require_baseIsSet(),
2178
+ baseUnary = require_baseUnary(),
2179
+ nodeUtil = require_nodeUtil();
2180
+
2181
+ /* Node.js helper references. */
2182
+ var nodeIsSet = nodeUtil && nodeUtil.isSet;
2183
+
2184
+ /**
2185
+ * Checks if `value` is classified as a `Set` object.
2186
+ *
2187
+ * @static
2188
+ * @memberOf _
2189
+ * @since 4.3.0
2190
+ * @category Lang
2191
+ * @param {*} value The value to check.
2192
+ * @returns {boolean} Returns `true` if `value` is a set, else `false`.
2193
+ * @example
2194
+ *
2195
+ * _.isSet(new Set);
2196
+ * // => true
2197
+ *
2198
+ * _.isSet(new WeakSet);
2199
+ * // => false
2200
+ */
2201
+ var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
2202
+
2203
+ isSet_1 = isSet;
2204
+ return isSet_1;
2205
+ }
2206
+
2207
+ var _baseClone;
2208
+ var hasRequired_baseClone;
2209
+
2210
+ function require_baseClone () {
2211
+ if (hasRequired_baseClone) return _baseClone;
2212
+ hasRequired_baseClone = 1;
2213
+ var Stack = require_Stack(),
2214
+ arrayEach = require_arrayEach(),
2215
+ assignValue = require_assignValue(),
2216
+ baseAssign = require_baseAssign(),
2217
+ baseAssignIn = require_baseAssignIn(),
2218
+ cloneBuffer = require_cloneBuffer(),
2219
+ copyArray = require_copyArray(),
2220
+ copySymbols = require_copySymbols(),
2221
+ copySymbolsIn = require_copySymbolsIn(),
2222
+ getAllKeys = require_getAllKeys(),
2223
+ getAllKeysIn = require_getAllKeysIn(),
2224
+ getTag = require_getTag(),
2225
+ initCloneArray = require_initCloneArray(),
2226
+ initCloneByTag = require_initCloneByTag(),
2227
+ initCloneObject = require_initCloneObject(),
2228
+ isArray = common.requireIsArray(),
2229
+ isBuffer = requireIsBuffer(),
2230
+ isMap = requireIsMap(),
2231
+ isObject = common.requireIsObject(),
2232
+ isSet = requireIsSet(),
2233
+ keys = requireKeys(),
2234
+ keysIn = requireKeysIn();
2235
+
2236
+ /** Used to compose bitmasks for cloning. */
2237
+ var CLONE_DEEP_FLAG = 1,
2238
+ CLONE_FLAT_FLAG = 2,
2239
+ CLONE_SYMBOLS_FLAG = 4;
2240
+
2241
+ /** `Object#toString` result references. */
2242
+ var argsTag = '[object Arguments]',
2243
+ arrayTag = '[object Array]',
2244
+ boolTag = '[object Boolean]',
2245
+ dateTag = '[object Date]',
2246
+ errorTag = '[object Error]',
2247
+ funcTag = '[object Function]',
2248
+ genTag = '[object GeneratorFunction]',
2249
+ mapTag = '[object Map]',
2250
+ numberTag = '[object Number]',
2251
+ objectTag = '[object Object]',
2252
+ regexpTag = '[object RegExp]',
2253
+ setTag = '[object Set]',
2254
+ stringTag = '[object String]',
2255
+ symbolTag = '[object Symbol]',
2256
+ weakMapTag = '[object WeakMap]';
2257
+
2258
+ var arrayBufferTag = '[object ArrayBuffer]',
2259
+ dataViewTag = '[object DataView]',
2260
+ float32Tag = '[object Float32Array]',
2261
+ float64Tag = '[object Float64Array]',
2262
+ int8Tag = '[object Int8Array]',
2263
+ int16Tag = '[object Int16Array]',
2264
+ int32Tag = '[object Int32Array]',
2265
+ uint8Tag = '[object Uint8Array]',
2266
+ uint8ClampedTag = '[object Uint8ClampedArray]',
2267
+ uint16Tag = '[object Uint16Array]',
2268
+ uint32Tag = '[object Uint32Array]';
2269
+
2270
+ /** Used to identify `toStringTag` values supported by `_.clone`. */
2271
+ var cloneableTags = {};
2272
+ cloneableTags[argsTag] = cloneableTags[arrayTag] =
2273
+ cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =
2274
+ cloneableTags[boolTag] = cloneableTags[dateTag] =
2275
+ cloneableTags[float32Tag] = cloneableTags[float64Tag] =
2276
+ cloneableTags[int8Tag] = cloneableTags[int16Tag] =
2277
+ cloneableTags[int32Tag] = cloneableTags[mapTag] =
2278
+ cloneableTags[numberTag] = cloneableTags[objectTag] =
2279
+ cloneableTags[regexpTag] = cloneableTags[setTag] =
2280
+ cloneableTags[stringTag] = cloneableTags[symbolTag] =
2281
+ cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =
2282
+ cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
2283
+ cloneableTags[errorTag] = cloneableTags[funcTag] =
2284
+ cloneableTags[weakMapTag] = false;
2285
+
2286
+ /**
2287
+ * The base implementation of `_.clone` and `_.cloneDeep` which tracks
2288
+ * traversed objects.
2289
+ *
2290
+ * @private
2291
+ * @param {*} value The value to clone.
2292
+ * @param {boolean} bitmask The bitmask flags.
2293
+ * 1 - Deep clone
2294
+ * 2 - Flatten inherited properties
2295
+ * 4 - Clone symbols
2296
+ * @param {Function} [customizer] The function to customize cloning.
2297
+ * @param {string} [key] The key of `value`.
2298
+ * @param {Object} [object] The parent object of `value`.
2299
+ * @param {Object} [stack] Tracks traversed objects and their clone counterparts.
2300
+ * @returns {*} Returns the cloned value.
2301
+ */
2302
+ function baseClone(value, bitmask, customizer, key, object, stack) {
2303
+ var result,
2304
+ isDeep = bitmask & CLONE_DEEP_FLAG,
2305
+ isFlat = bitmask & CLONE_FLAT_FLAG,
2306
+ isFull = bitmask & CLONE_SYMBOLS_FLAG;
2307
+
2308
+ if (customizer) {
2309
+ result = object ? customizer(value, key, object, stack) : customizer(value);
2310
+ }
2311
+ if (result !== undefined) {
2312
+ return result;
2313
+ }
2314
+ if (!isObject(value)) {
2315
+ return value;
2316
+ }
2317
+ var isArr = isArray(value);
2318
+ if (isArr) {
2319
+ result = initCloneArray(value);
2320
+ if (!isDeep) {
2321
+ return copyArray(value, result);
2322
+ }
2323
+ } else {
2324
+ var tag = getTag(value),
2325
+ isFunc = tag == funcTag || tag == genTag;
2326
+
2327
+ if (isBuffer(value)) {
2328
+ return cloneBuffer(value, isDeep);
2329
+ }
2330
+ if (tag == objectTag || tag == argsTag || (isFunc && !object)) {
2331
+ result = (isFlat || isFunc) ? {} : initCloneObject(value);
2332
+ if (!isDeep) {
2333
+ return isFlat
2334
+ ? copySymbolsIn(value, baseAssignIn(result, value))
2335
+ : copySymbols(value, baseAssign(result, value));
2336
+ }
2337
+ } else {
2338
+ if (!cloneableTags[tag]) {
2339
+ return object ? value : {};
2340
+ }
2341
+ result = initCloneByTag(value, tag, isDeep);
2342
+ }
2343
+ }
2344
+ // Check for circular references and return its corresponding clone.
2345
+ stack || (stack = new Stack);
2346
+ var stacked = stack.get(value);
2347
+ if (stacked) {
2348
+ return stacked;
2349
+ }
2350
+ stack.set(value, result);
2351
+
2352
+ if (isSet(value)) {
2353
+ value.forEach(function(subValue) {
2354
+ result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));
2355
+ });
2356
+ } else if (isMap(value)) {
2357
+ value.forEach(function(subValue, key) {
2358
+ result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));
2359
+ });
2360
+ }
2361
+
2362
+ var keysFunc = isFull
2363
+ ? (isFlat ? getAllKeysIn : getAllKeys)
2364
+ : (isFlat ? keysIn : keys);
2365
+
2366
+ var props = isArr ? undefined : keysFunc(value);
2367
+ arrayEach(props || value, function(subValue, key) {
2368
+ if (props) {
2369
+ key = subValue;
2370
+ subValue = value[key];
2371
+ }
2372
+ // Recursively populate clone (susceptible to call stack limits).
2373
+ assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));
2374
+ });
2375
+ return result;
2376
+ }
2377
+
2378
+ _baseClone = baseClone;
2379
+ return _baseClone;
2380
+ }
2381
+
2382
+ var cloneDeep_1;
2383
+ var hasRequiredCloneDeep;
2384
+
2385
+ function requireCloneDeep () {
2386
+ if (hasRequiredCloneDeep) return cloneDeep_1;
2387
+ hasRequiredCloneDeep = 1;
2388
+ var baseClone = require_baseClone();
2389
+
2390
+ /** Used to compose bitmasks for cloning. */
2391
+ var CLONE_DEEP_FLAG = 1,
2392
+ CLONE_SYMBOLS_FLAG = 4;
2393
+
2394
+ /**
2395
+ * This method is like `_.clone` except that it recursively clones `value`.
2396
+ *
2397
+ * @static
2398
+ * @memberOf _
2399
+ * @since 1.0.0
2400
+ * @category Lang
2401
+ * @param {*} value The value to recursively clone.
2402
+ * @returns {*} Returns the deep cloned value.
2403
+ * @see _.clone
2404
+ * @example
2405
+ *
2406
+ * var objects = [{ 'a': 1 }, { 'b': 2 }];
2407
+ *
2408
+ * var deep = _.cloneDeep(objects);
2409
+ * console.log(deep[0] === objects[0]);
2410
+ * // => false
2411
+ */
2412
+ function cloneDeep(value) {
2413
+ return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);
2414
+ }
2415
+
2416
+ cloneDeep_1 = cloneDeep;
2417
+ return cloneDeep_1;
2418
+ }
2419
+
2420
+ var cloneDeepExports = requireCloneDeep();
2421
+ const cloneDeep = /*@__PURE__*/common.getDefaultExportFromCjs(cloneDeepExports);
2422
+
2423
+ exports.cloneDeep = cloneDeep;
2424
+ exports.useToast = useToast;