tao_on_rails 0.2.0 → 0.3.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f8b45a9f5ea2544ee0e862a0fda2951823782acf
4
- data.tar.gz: 0f0d0a4e37d370970168da6ea3713648345f8129
3
+ metadata.gz: 3ad7206836a313340ee1402f84bab0abc1973c42
4
+ data.tar.gz: ce59e51cd274ae83424218a88c6d1a3880d4c7e5
5
5
  SHA512:
6
- metadata.gz: 401af2ff83fcc21a8cbb43bdbb60582f392b311ef2509dd7cfe4c61c3f1cf6c5411c37bdf68f47fda4ef3092308b202bdb1286e9df14e1095ce4cf4ac70b10f1
7
- data.tar.gz: a724d766fa57de46db680b9397c96779ca24de274eeb9d36738fca24bfff297273fe19cbbbaa354658afcf2de4ee1611ac1ebd34a4ac4286b9898e70825e1768
6
+ metadata.gz: 3a4727041d760fa838473a30fa6cb6959067dacced82beee727e91332f0e5208c588bc64b98056678d8c12b2b6dba2824fb1f744cde2a48f10afddd3ba1347bf
7
+ data.tar.gz: 5dc27562119495488289a750e990d1b342ff6ff620f1e19f68e975293bbec3d8dc8ba52057bb6326988e9f6f29a9bf0549fcbe0abec42a10d15f61ef6c78aeac
data/.blade.yml ADDED
@@ -0,0 +1,13 @@
1
+ load_paths:
2
+ - lib/assets/javascripts
3
+ - lib/assets/stylesheets
4
+ - test/javascripts/
5
+ - turbolinks-source: lib/assets/javascripts
6
+ - jquery-rails: vendor/assets/javascripts
7
+ - lodash-rails: vendor/assets/javascripts
8
+ - normalize-rails: vendor/assets/javascripts
9
+
10
+ logical_paths:
11
+ - tao.css
12
+ - tao.js
13
+ - tao_test.js
data/README.md CHANGED
@@ -1,11 +1,6 @@
1
- # TaoOnRails
2
-
3
- Tao On Rails is the missing way to structure your frontend on [Ruby on Rails](http://rubyonrails.org/).
4
-
5
- Tao On Rails is designed and developed by [Siyuan Liu](https://github.com/farthinker).
6
-
7
- It's originally built for [Zhiren project](https://zhirenhr.com/) and extracted to gem by [Terry Tai](https://twitter.com/poshboytl).
1
+ # Tao on Rails
8
2
 
3
+ [Ruby on Rails](http://rubyonrails.org/) lacks a recommended way to structure your frontend code for many years. Tao on Rails is the framework to fill the gap which will modularize your page with the new [Custom Elements v1](https://developers.google.com/web/fundamentals/getting-started/primers/customelements) API.
9
4
 
10
5
  ## Installation
11
6
 
@@ -25,13 +20,7 @@ Or install it yourself as:
25
20
 
26
21
  ## Usage
27
22
 
28
- TODO: Write usage instructions here
29
-
30
- ## Development
31
-
32
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
33
-
34
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
23
+ TODO: Write usage instructions here.
35
24
 
36
25
  ## Contributing
37
26
 
@@ -41,4 +30,3 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/[USERN
41
30
  ## License
42
31
 
43
32
  The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
44
-
data/Rakefile CHANGED
@@ -1,6 +1,10 @@
1
1
  require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
2
+ require "rake/testtask"
3
3
 
4
- RSpec::Core::RakeTask.new(:spec)
4
+ Rake::TestTask.new(:test) do |t|
5
+ t.libs << "test"
6
+ t.libs << "lib"
7
+ t.test_files = FileList['test/**/*_test.rb']
8
+ end
5
9
 
6
- task :default => :spec
10
+ task :default => :test
@@ -0,0 +1 @@
1
+ // to be generated by i18n-js gem in project
@@ -1,5 +1,3 @@
1
- //= require native-shim
2
-
3
1
  'use strict';
4
2
 
5
3
  var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
@@ -8,8 +6,6 @@ var _createClass = function () { function defineProperties(target, props) { for
8
6
 
9
7
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
10
8
 
11
- //= require native-shim
12
-
13
9
  /**
14
10
  * @license
15
11
  * Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
@@ -66,7 +62,6 @@ var Deferred = void 0;
66
62
  if (_customElements()) {
67
63
  _customElements().flush = function () {};
68
64
  if (!_customElements().forcePolyfill) {
69
- nativeShim();
70
65
  return;
71
66
  }
72
67
  }
@@ -408,7 +403,7 @@ var Deferred = void 0;
408
403
  }, {
409
404
  key: '_observeRoot',
410
405
  value: function _observeRoot(root) {
411
- // console.log('_observeRoot', root, root.baseURI);
406
+ //console.log('_observeRoot', root, root.baseURI);
412
407
  // console.assert(!root[_observerProp]);
413
408
  if (root[_observerProp] != null) {
414
409
  //console.warn(`Root ${root} is already observed`);
@@ -458,7 +453,7 @@ var Deferred = void 0;
458
453
  // so might diverge from spec reaction ordering
459
454
  var addedNodes = /** @type {!NodeList<!Node>} */mutation.addedNodes;
460
455
  var removedNodes = /** @type {!NodeList<!Node>} */mutation.removedNodes;
461
- this._removeNodes(removedNodes);
456
+ this._removeNodes(removedNodes, mutation.target);
462
457
  this._addNodes(addedNodes);
463
458
  }
464
459
  }
@@ -597,7 +592,7 @@ var Deferred = void 0;
597
592
 
598
593
  }, {
599
594
  key: '_removeNodes',
600
- value: function _removeNodes(nodeList) {
595
+ value: function _removeNodes(nodeList, parentNode) {
601
596
  for (var i = 0; i < nodeList.length; i++) {
602
597
  var root = nodeList[i];
603
598
 
@@ -614,7 +609,7 @@ var Deferred = void 0;
614
609
  var walker = createTreeWalker(root);
615
610
  do {
616
611
  var node = walker.currentNode;
617
- if (node[_upgradedProp] && node[_attachedProp]) {
612
+ if (node[_upgradedProp] && node[_attachedProp] && isConnected(parentNode)) {
618
613
  node[_attachedProp] = false;
619
614
  var definition = this._definitions.get(node.localName);
620
615
  if (definition && definition.disconnectedCallback) {
@@ -715,6 +710,7 @@ var Deferred = void 0;
715
710
 
716
711
  /** @const */
717
712
  var origHTMLElement = win.HTMLElement;
713
+ CustomElementRegistry.prototype['nativeHTMLElement'] = origHTMLElement;
718
714
  /**
719
715
  * @type {function(new: HTMLElement)}
720
716
  */
@@ -763,9 +759,7 @@ var Deferred = void 0;
763
759
  if (definition) {
764
760
  customElements._upgradeElement(element, definition, callConstructor);
765
761
  }
766
- if (tagName.toLowerCase() !== 'html') {
767
- customElements._observeRoot(element);
768
- }
762
+ customElements._observeRoot(element);
769
763
  return element;
770
764
  };
771
765
  doc.createElement = function (tagName, options) {
@@ -0,0 +1,1963 @@
1
+ /**
2
+ * core-js 2.4.1
3
+ * https://github.com/zloirock/core-js
4
+ * License: http://rock.mit-license.org
5
+ * © 2016 Denis Pushkarev
6
+ */
7
+ !function(__e, __g, undefined){
8
+ 'use strict';
9
+ /******/ (function(modules) { // webpackBootstrap
10
+ /******/ // The module cache
11
+ /******/ var installedModules = {};
12
+
13
+ /******/ // The require function
14
+ /******/ function __webpack_require__(moduleId) {
15
+
16
+ /******/ // Check if module is in cache
17
+ /******/ if(installedModules[moduleId])
18
+ /******/ return installedModules[moduleId].exports;
19
+
20
+ /******/ // Create a new module (and put it into the cache)
21
+ /******/ var module = installedModules[moduleId] = {
22
+ /******/ exports: {},
23
+ /******/ id: moduleId,
24
+ /******/ loaded: false
25
+ /******/ };
26
+
27
+ /******/ // Execute the module function
28
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
29
+
30
+ /******/ // Flag the module as loaded
31
+ /******/ module.loaded = true;
32
+
33
+ /******/ // Return the exports of the module
34
+ /******/ return module.exports;
35
+ /******/ }
36
+
37
+
38
+ /******/ // expose the modules object (__webpack_modules__)
39
+ /******/ __webpack_require__.m = modules;
40
+
41
+ /******/ // expose the module cache
42
+ /******/ __webpack_require__.c = installedModules;
43
+
44
+ /******/ // __webpack_public_path__
45
+ /******/ __webpack_require__.p = "";
46
+
47
+ /******/ // Load entry module and return exports
48
+ /******/ return __webpack_require__(0);
49
+ /******/ })
50
+ /************************************************************************/
51
+ /******/ ([
52
+ /* 0 */
53
+ /***/ function(module, exports, __webpack_require__) {
54
+
55
+ __webpack_require__(1);
56
+ __webpack_require__(22);
57
+ __webpack_require__(36);
58
+ __webpack_require__(37);
59
+ __webpack_require__(41);
60
+ __webpack_require__(44);
61
+ __webpack_require__(45);
62
+ __webpack_require__(49);
63
+ __webpack_require__(50);
64
+ __webpack_require__(51);
65
+ __webpack_require__(52);
66
+ __webpack_require__(53);
67
+ __webpack_require__(55);
68
+ __webpack_require__(56);
69
+ __webpack_require__(58);
70
+ __webpack_require__(59);
71
+ __webpack_require__(62);
72
+ __webpack_require__(64);
73
+ __webpack_require__(65);
74
+ __webpack_require__(66);
75
+ __webpack_require__(79);
76
+ __webpack_require__(81);
77
+ module.exports = __webpack_require__(92);
78
+
79
+
80
+ /***/ },
81
+ /* 1 */
82
+ /***/ function(module, exports, __webpack_require__) {
83
+
84
+ // 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
85
+ var $export = __webpack_require__(2);
86
+
87
+ $export($export.S, 'Array', {isArray: __webpack_require__(20)});
88
+
89
+ /***/ },
90
+ /* 2 */
91
+ /***/ function(module, exports, __webpack_require__) {
92
+
93
+ var global = __webpack_require__(3)
94
+ , core = __webpack_require__(4)
95
+ , hide = __webpack_require__(5)
96
+ , redefine = __webpack_require__(15)
97
+ , ctx = __webpack_require__(18)
98
+ , PROTOTYPE = 'prototype';
99
+
100
+ var $export = function(type, name, source){
101
+ var IS_FORCED = type & $export.F
102
+ , IS_GLOBAL = type & $export.G
103
+ , IS_STATIC = type & $export.S
104
+ , IS_PROTO = type & $export.P
105
+ , IS_BIND = type & $export.B
106
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]
107
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
108
+ , expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {})
109
+ , key, own, out, exp;
110
+ if(IS_GLOBAL)source = name;
111
+ for(key in source){
112
+ // contains in native
113
+ own = !IS_FORCED && target && target[key] !== undefined;
114
+ // export native or passed
115
+ out = (own ? target : source)[key];
116
+ // bind timers to global for call from export context
117
+ exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
118
+ // extend global
119
+ if(target)redefine(target, key, out, type & $export.U);
120
+ // export
121
+ if(exports[key] != out)hide(exports, key, exp);
122
+ if(IS_PROTO && expProto[key] != out)expProto[key] = out;
123
+ }
124
+ };
125
+ global.core = core;
126
+ // type bitmap
127
+ $export.F = 1; // forced
128
+ $export.G = 2; // global
129
+ $export.S = 4; // static
130
+ $export.P = 8; // proto
131
+ $export.B = 16; // bind
132
+ $export.W = 32; // wrap
133
+ $export.U = 64; // safe
134
+ $export.R = 128; // real proto method for `library`
135
+ module.exports = $export;
136
+
137
+ /***/ },
138
+ /* 3 */
139
+ /***/ function(module, exports) {
140
+
141
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
142
+ var global = module.exports = typeof window != 'undefined' && window.Math == Math
143
+ ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
144
+ if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef
145
+
146
+ /***/ },
147
+ /* 4 */
148
+ /***/ function(module, exports) {
149
+
150
+ var core = module.exports = {version: '2.4.0'};
151
+ if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
152
+
153
+ /***/ },
154
+ /* 5 */
155
+ /***/ function(module, exports, __webpack_require__) {
156
+
157
+ var dP = __webpack_require__(6)
158
+ , createDesc = __webpack_require__(14);
159
+ module.exports = __webpack_require__(10) ? function(object, key, value){
160
+ return dP.f(object, key, createDesc(1, value));
161
+ } : function(object, key, value){
162
+ object[key] = value;
163
+ return object;
164
+ };
165
+
166
+ /***/ },
167
+ /* 6 */
168
+ /***/ function(module, exports, __webpack_require__) {
169
+
170
+ var anObject = __webpack_require__(7)
171
+ , IE8_DOM_DEFINE = __webpack_require__(9)
172
+ , toPrimitive = __webpack_require__(13)
173
+ , dP = Object.defineProperty;
174
+
175
+ exports.f = __webpack_require__(10) ? Object.defineProperty : function defineProperty(O, P, Attributes){
176
+ anObject(O);
177
+ P = toPrimitive(P, true);
178
+ anObject(Attributes);
179
+ if(IE8_DOM_DEFINE)try {
180
+ return dP(O, P, Attributes);
181
+ } catch(e){ /* empty */ }
182
+ if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');
183
+ if('value' in Attributes)O[P] = Attributes.value;
184
+ return O;
185
+ };
186
+
187
+ /***/ },
188
+ /* 7 */
189
+ /***/ function(module, exports, __webpack_require__) {
190
+
191
+ var isObject = __webpack_require__(8);
192
+ module.exports = function(it){
193
+ if(!isObject(it))throw TypeError(it + ' is not an object!');
194
+ return it;
195
+ };
196
+
197
+ /***/ },
198
+ /* 8 */
199
+ /***/ function(module, exports) {
200
+
201
+ module.exports = function(it){
202
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
203
+ };
204
+
205
+ /***/ },
206
+ /* 9 */
207
+ /***/ function(module, exports, __webpack_require__) {
208
+
209
+ module.exports = !__webpack_require__(10) && !__webpack_require__(11)(function(){
210
+ return Object.defineProperty(__webpack_require__(12)('div'), 'a', {get: function(){ return 7; }}).a != 7;
211
+ });
212
+
213
+ /***/ },
214
+ /* 10 */
215
+ /***/ function(module, exports, __webpack_require__) {
216
+
217
+ // Thank's IE8 for his funny defineProperty
218
+ module.exports = !__webpack_require__(11)(function(){
219
+ return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
220
+ });
221
+
222
+ /***/ },
223
+ /* 11 */
224
+ /***/ function(module, exports) {
225
+
226
+ module.exports = function(exec){
227
+ try {
228
+ return !!exec();
229
+ } catch(e){
230
+ return true;
231
+ }
232
+ };
233
+
234
+ /***/ },
235
+ /* 12 */
236
+ /***/ function(module, exports, __webpack_require__) {
237
+
238
+ var isObject = __webpack_require__(8)
239
+ , document = __webpack_require__(3).document
240
+ // in old IE typeof document.createElement is 'object'
241
+ , is = isObject(document) && isObject(document.createElement);
242
+ module.exports = function(it){
243
+ return is ? document.createElement(it) : {};
244
+ };
245
+
246
+ /***/ },
247
+ /* 13 */
248
+ /***/ function(module, exports, __webpack_require__) {
249
+
250
+ // 7.1.1 ToPrimitive(input [, PreferredType])
251
+ var isObject = __webpack_require__(8);
252
+ // instead of the ES6 spec version, we didn't implement @@toPrimitive case
253
+ // and the second argument - flag - preferred type is a string
254
+ module.exports = function(it, S){
255
+ if(!isObject(it))return it;
256
+ var fn, val;
257
+ if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
258
+ if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;
259
+ if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
260
+ throw TypeError("Can't convert object to primitive value");
261
+ };
262
+
263
+ /***/ },
264
+ /* 14 */
265
+ /***/ function(module, exports) {
266
+
267
+ module.exports = function(bitmap, value){
268
+ return {
269
+ enumerable : !(bitmap & 1),
270
+ configurable: !(bitmap & 2),
271
+ writable : !(bitmap & 4),
272
+ value : value
273
+ };
274
+ };
275
+
276
+ /***/ },
277
+ /* 15 */
278
+ /***/ function(module, exports, __webpack_require__) {
279
+
280
+ var global = __webpack_require__(3)
281
+ , hide = __webpack_require__(5)
282
+ , has = __webpack_require__(16)
283
+ , SRC = __webpack_require__(17)('src')
284
+ , TO_STRING = 'toString'
285
+ , $toString = Function[TO_STRING]
286
+ , TPL = ('' + $toString).split(TO_STRING);
287
+
288
+ __webpack_require__(4).inspectSource = function(it){
289
+ return $toString.call(it);
290
+ };
291
+
292
+ (module.exports = function(O, key, val, safe){
293
+ var isFunction = typeof val == 'function';
294
+ if(isFunction)has(val, 'name') || hide(val, 'name', key);
295
+ if(O[key] === val)return;
296
+ if(isFunction)has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
297
+ if(O === global){
298
+ O[key] = val;
299
+ } else {
300
+ if(!safe){
301
+ delete O[key];
302
+ hide(O, key, val);
303
+ } else {
304
+ if(O[key])O[key] = val;
305
+ else hide(O, key, val);
306
+ }
307
+ }
308
+ // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
309
+ })(Function.prototype, TO_STRING, function toString(){
310
+ return typeof this == 'function' && this[SRC] || $toString.call(this);
311
+ });
312
+
313
+ /***/ },
314
+ /* 16 */
315
+ /***/ function(module, exports) {
316
+
317
+ var hasOwnProperty = {}.hasOwnProperty;
318
+ module.exports = function(it, key){
319
+ return hasOwnProperty.call(it, key);
320
+ };
321
+
322
+ /***/ },
323
+ /* 17 */
324
+ /***/ function(module, exports) {
325
+
326
+ var id = 0
327
+ , px = Math.random();
328
+ module.exports = function(key){
329
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
330
+ };
331
+
332
+ /***/ },
333
+ /* 18 */
334
+ /***/ function(module, exports, __webpack_require__) {
335
+
336
+ // optional / simple context binding
337
+ var aFunction = __webpack_require__(19);
338
+ module.exports = function(fn, that, length){
339
+ aFunction(fn);
340
+ if(that === undefined)return fn;
341
+ switch(length){
342
+ case 1: return function(a){
343
+ return fn.call(that, a);
344
+ };
345
+ case 2: return function(a, b){
346
+ return fn.call(that, a, b);
347
+ };
348
+ case 3: return function(a, b, c){
349
+ return fn.call(that, a, b, c);
350
+ };
351
+ }
352
+ return function(/* ...args */){
353
+ return fn.apply(that, arguments);
354
+ };
355
+ };
356
+
357
+ /***/ },
358
+ /* 19 */
359
+ /***/ function(module, exports) {
360
+
361
+ module.exports = function(it){
362
+ if(typeof it != 'function')throw TypeError(it + ' is not a function!');
363
+ return it;
364
+ };
365
+
366
+ /***/ },
367
+ /* 20 */
368
+ /***/ function(module, exports, __webpack_require__) {
369
+
370
+ // 7.2.2 IsArray(argument)
371
+ var cof = __webpack_require__(21);
372
+ module.exports = Array.isArray || function isArray(arg){
373
+ return cof(arg) == 'Array';
374
+ };
375
+
376
+ /***/ },
377
+ /* 21 */
378
+ /***/ function(module, exports) {
379
+
380
+ var toString = {}.toString;
381
+
382
+ module.exports = function(it){
383
+ return toString.call(it).slice(8, -1);
384
+ };
385
+
386
+ /***/ },
387
+ /* 22 */
388
+ /***/ function(module, exports, __webpack_require__) {
389
+
390
+ 'use strict';
391
+ var ctx = __webpack_require__(18)
392
+ , $export = __webpack_require__(2)
393
+ , toObject = __webpack_require__(23)
394
+ , call = __webpack_require__(25)
395
+ , isArrayIter = __webpack_require__(26)
396
+ , toLength = __webpack_require__(30)
397
+ , createProperty = __webpack_require__(32)
398
+ , getIterFn = __webpack_require__(33);
399
+
400
+ $export($export.S + $export.F * !__webpack_require__(35)(function(iter){ Array.from(iter); }), 'Array', {
401
+ // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
402
+ from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){
403
+ var O = toObject(arrayLike)
404
+ , C = typeof this == 'function' ? this : Array
405
+ , aLen = arguments.length
406
+ , mapfn = aLen > 1 ? arguments[1] : undefined
407
+ , mapping = mapfn !== undefined
408
+ , index = 0
409
+ , iterFn = getIterFn(O)
410
+ , length, result, step, iterator;
411
+ if(mapping)mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
412
+ // if object isn't iterable or it's array with default iterator - use simple case
413
+ if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){
414
+ for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){
415
+ createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
416
+ }
417
+ } else {
418
+ length = toLength(O.length);
419
+ for(result = new C(length); length > index; index++){
420
+ createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
421
+ }
422
+ }
423
+ result.length = index;
424
+ return result;
425
+ }
426
+ });
427
+
428
+
429
+ /***/ },
430
+ /* 23 */
431
+ /***/ function(module, exports, __webpack_require__) {
432
+
433
+ // 7.1.13 ToObject(argument)
434
+ var defined = __webpack_require__(24);
435
+ module.exports = function(it){
436
+ return Object(defined(it));
437
+ };
438
+
439
+ /***/ },
440
+ /* 24 */
441
+ /***/ function(module, exports) {
442
+
443
+ // 7.2.1 RequireObjectCoercible(argument)
444
+ module.exports = function(it){
445
+ if(it == undefined)throw TypeError("Can't call method on " + it);
446
+ return it;
447
+ };
448
+
449
+ /***/ },
450
+ /* 25 */
451
+ /***/ function(module, exports, __webpack_require__) {
452
+
453
+ // call something on iterator step with safe closing on error
454
+ var anObject = __webpack_require__(7);
455
+ module.exports = function(iterator, fn, value, entries){
456
+ try {
457
+ return entries ? fn(anObject(value)[0], value[1]) : fn(value);
458
+ // 7.4.6 IteratorClose(iterator, completion)
459
+ } catch(e){
460
+ var ret = iterator['return'];
461
+ if(ret !== undefined)anObject(ret.call(iterator));
462
+ throw e;
463
+ }
464
+ };
465
+
466
+ /***/ },
467
+ /* 26 */
468
+ /***/ function(module, exports, __webpack_require__) {
469
+
470
+ // check on default Array iterator
471
+ var Iterators = __webpack_require__(27)
472
+ , ITERATOR = __webpack_require__(28)('iterator')
473
+ , ArrayProto = Array.prototype;
474
+
475
+ module.exports = function(it){
476
+ return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
477
+ };
478
+
479
+ /***/ },
480
+ /* 27 */
481
+ /***/ function(module, exports) {
482
+
483
+ module.exports = {};
484
+
485
+ /***/ },
486
+ /* 28 */
487
+ /***/ function(module, exports, __webpack_require__) {
488
+
489
+ var store = __webpack_require__(29)('wks')
490
+ , uid = __webpack_require__(17)
491
+ , Symbol = __webpack_require__(3).Symbol
492
+ , USE_SYMBOL = typeof Symbol == 'function';
493
+
494
+ var $exports = module.exports = function(name){
495
+ return store[name] || (store[name] =
496
+ USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
497
+ };
498
+
499
+ $exports.store = store;
500
+
501
+ /***/ },
502
+ /* 29 */
503
+ /***/ function(module, exports, __webpack_require__) {
504
+
505
+ var global = __webpack_require__(3)
506
+ , SHARED = '__core-js_shared__'
507
+ , store = global[SHARED] || (global[SHARED] = {});
508
+ module.exports = function(key){
509
+ return store[key] || (store[key] = {});
510
+ };
511
+
512
+ /***/ },
513
+ /* 30 */
514
+ /***/ function(module, exports, __webpack_require__) {
515
+
516
+ // 7.1.15 ToLength
517
+ var toInteger = __webpack_require__(31)
518
+ , min = Math.min;
519
+ module.exports = function(it){
520
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
521
+ };
522
+
523
+ /***/ },
524
+ /* 31 */
525
+ /***/ function(module, exports) {
526
+
527
+ // 7.1.4 ToInteger
528
+ var ceil = Math.ceil
529
+ , floor = Math.floor;
530
+ module.exports = function(it){
531
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
532
+ };
533
+
534
+ /***/ },
535
+ /* 32 */
536
+ /***/ function(module, exports, __webpack_require__) {
537
+
538
+ 'use strict';
539
+ var $defineProperty = __webpack_require__(6)
540
+ , createDesc = __webpack_require__(14);
541
+
542
+ module.exports = function(object, index, value){
543
+ if(index in object)$defineProperty.f(object, index, createDesc(0, value));
544
+ else object[index] = value;
545
+ };
546
+
547
+ /***/ },
548
+ /* 33 */
549
+ /***/ function(module, exports, __webpack_require__) {
550
+
551
+ var classof = __webpack_require__(34)
552
+ , ITERATOR = __webpack_require__(28)('iterator')
553
+ , Iterators = __webpack_require__(27);
554
+ module.exports = __webpack_require__(4).getIteratorMethod = function(it){
555
+ if(it != undefined)return it[ITERATOR]
556
+ || it['@@iterator']
557
+ || Iterators[classof(it)];
558
+ };
559
+
560
+ /***/ },
561
+ /* 34 */
562
+ /***/ function(module, exports, __webpack_require__) {
563
+
564
+ // getting tag from 19.1.3.6 Object.prototype.toString()
565
+ var cof = __webpack_require__(21)
566
+ , TAG = __webpack_require__(28)('toStringTag')
567
+ // ES3 wrong here
568
+ , ARG = cof(function(){ return arguments; }()) == 'Arguments';
569
+
570
+ // fallback for IE11 Script Access Denied error
571
+ var tryGet = function(it, key){
572
+ try {
573
+ return it[key];
574
+ } catch(e){ /* empty */ }
575
+ };
576
+
577
+ module.exports = function(it){
578
+ var O, T, B;
579
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
580
+ // @@toStringTag case
581
+ : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
582
+ // builtinTag case
583
+ : ARG ? cof(O)
584
+ // ES3 arguments fallback
585
+ : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
586
+ };
587
+
588
+ /***/ },
589
+ /* 35 */
590
+ /***/ function(module, exports, __webpack_require__) {
591
+
592
+ var ITERATOR = __webpack_require__(28)('iterator')
593
+ , SAFE_CLOSING = false;
594
+
595
+ try {
596
+ var riter = [7][ITERATOR]();
597
+ riter['return'] = function(){ SAFE_CLOSING = true; };
598
+ Array.from(riter, function(){ throw 2; });
599
+ } catch(e){ /* empty */ }
600
+
601
+ module.exports = function(exec, skipClosing){
602
+ if(!skipClosing && !SAFE_CLOSING)return false;
603
+ var safe = false;
604
+ try {
605
+ var arr = [7]
606
+ , iter = arr[ITERATOR]();
607
+ iter.next = function(){ return {done: safe = true}; };
608
+ arr[ITERATOR] = function(){ return iter; };
609
+ exec(arr);
610
+ } catch(e){ /* empty */ }
611
+ return safe;
612
+ };
613
+
614
+ /***/ },
615
+ /* 36 */
616
+ /***/ function(module, exports, __webpack_require__) {
617
+
618
+ 'use strict';
619
+ var $export = __webpack_require__(2)
620
+ , createProperty = __webpack_require__(32);
621
+
622
+ // WebKit Array.of isn't generic
623
+ $export($export.S + $export.F * __webpack_require__(11)(function(){
624
+ function F(){}
625
+ return !(Array.of.call(F) instanceof F);
626
+ }), 'Array', {
627
+ // 22.1.2.3 Array.of( ...items)
628
+ of: function of(/* ...args */){
629
+ var index = 0
630
+ , aLen = arguments.length
631
+ , result = new (typeof this == 'function' ? this : Array)(aLen);
632
+ while(aLen > index)createProperty(result, index, arguments[index++]);
633
+ result.length = aLen;
634
+ return result;
635
+ }
636
+ });
637
+
638
+ /***/ },
639
+ /* 37 */
640
+ /***/ function(module, exports, __webpack_require__) {
641
+
642
+ 'use strict';
643
+ // 22.1.3.13 Array.prototype.join(separator)
644
+ var $export = __webpack_require__(2)
645
+ , toIObject = __webpack_require__(38)
646
+ , arrayJoin = [].join;
647
+
648
+ // fallback for not array-like strings
649
+ $export($export.P + $export.F * (__webpack_require__(39) != Object || !__webpack_require__(40)(arrayJoin)), 'Array', {
650
+ join: function join(separator){
651
+ return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator);
652
+ }
653
+ });
654
+
655
+ /***/ },
656
+ /* 38 */
657
+ /***/ function(module, exports, __webpack_require__) {
658
+
659
+ // to indexed object, toObject with fallback for non-array-like ES3 strings
660
+ var IObject = __webpack_require__(39)
661
+ , defined = __webpack_require__(24);
662
+ module.exports = function(it){
663
+ return IObject(defined(it));
664
+ };
665
+
666
+ /***/ },
667
+ /* 39 */
668
+ /***/ function(module, exports, __webpack_require__) {
669
+
670
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
671
+ var cof = __webpack_require__(21);
672
+ module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
673
+ return cof(it) == 'String' ? it.split('') : Object(it);
674
+ };
675
+
676
+ /***/ },
677
+ /* 40 */
678
+ /***/ function(module, exports, __webpack_require__) {
679
+
680
+ var fails = __webpack_require__(11);
681
+
682
+ module.exports = function(method, arg){
683
+ return !!method && fails(function(){
684
+ arg ? method.call(null, function(){}, 1) : method.call(null);
685
+ });
686
+ };
687
+
688
+ /***/ },
689
+ /* 41 */
690
+ /***/ function(module, exports, __webpack_require__) {
691
+
692
+ 'use strict';
693
+ var $export = __webpack_require__(2)
694
+ , html = __webpack_require__(42)
695
+ , cof = __webpack_require__(21)
696
+ , toIndex = __webpack_require__(43)
697
+ , toLength = __webpack_require__(30)
698
+ , arraySlice = [].slice;
699
+
700
+ // fallback for not array-like ES3 strings and DOM objects
701
+ $export($export.P + $export.F * __webpack_require__(11)(function(){
702
+ if(html)arraySlice.call(html);
703
+ }), 'Array', {
704
+ slice: function slice(begin, end){
705
+ var len = toLength(this.length)
706
+ , klass = cof(this);
707
+ end = end === undefined ? len : end;
708
+ if(klass == 'Array')return arraySlice.call(this, begin, end);
709
+ var start = toIndex(begin, len)
710
+ , upTo = toIndex(end, len)
711
+ , size = toLength(upTo - start)
712
+ , cloned = Array(size)
713
+ , i = 0;
714
+ for(; i < size; i++)cloned[i] = klass == 'String'
715
+ ? this.charAt(start + i)
716
+ : this[start + i];
717
+ return cloned;
718
+ }
719
+ });
720
+
721
+ /***/ },
722
+ /* 42 */
723
+ /***/ function(module, exports, __webpack_require__) {
724
+
725
+ module.exports = __webpack_require__(3).document && document.documentElement;
726
+
727
+ /***/ },
728
+ /* 43 */
729
+ /***/ function(module, exports, __webpack_require__) {
730
+
731
+ var toInteger = __webpack_require__(31)
732
+ , max = Math.max
733
+ , min = Math.min;
734
+ module.exports = function(index, length){
735
+ index = toInteger(index);
736
+ return index < 0 ? max(index + length, 0) : min(index, length);
737
+ };
738
+
739
+ /***/ },
740
+ /* 44 */
741
+ /***/ function(module, exports, __webpack_require__) {
742
+
743
+ 'use strict';
744
+ var $export = __webpack_require__(2)
745
+ , aFunction = __webpack_require__(19)
746
+ , toObject = __webpack_require__(23)
747
+ , fails = __webpack_require__(11)
748
+ , $sort = [].sort
749
+ , test = [1, 2, 3];
750
+
751
+ $export($export.P + $export.F * (fails(function(){
752
+ // IE8-
753
+ test.sort(undefined);
754
+ }) || !fails(function(){
755
+ // V8 bug
756
+ test.sort(null);
757
+ // Old WebKit
758
+ }) || !__webpack_require__(40)($sort)), 'Array', {
759
+ // 22.1.3.25 Array.prototype.sort(comparefn)
760
+ sort: function sort(comparefn){
761
+ return comparefn === undefined
762
+ ? $sort.call(toObject(this))
763
+ : $sort.call(toObject(this), aFunction(comparefn));
764
+ }
765
+ });
766
+
767
+ /***/ },
768
+ /* 45 */
769
+ /***/ function(module, exports, __webpack_require__) {
770
+
771
+ 'use strict';
772
+ var $export = __webpack_require__(2)
773
+ , $forEach = __webpack_require__(46)(0)
774
+ , STRICT = __webpack_require__(40)([].forEach, true);
775
+
776
+ $export($export.P + $export.F * !STRICT, 'Array', {
777
+ // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])
778
+ forEach: function forEach(callbackfn /* , thisArg */){
779
+ return $forEach(this, callbackfn, arguments[1]);
780
+ }
781
+ });
782
+
783
+ /***/ },
784
+ /* 46 */
785
+ /***/ function(module, exports, __webpack_require__) {
786
+
787
+ // 0 -> Array#forEach
788
+ // 1 -> Array#map
789
+ // 2 -> Array#filter
790
+ // 3 -> Array#some
791
+ // 4 -> Array#every
792
+ // 5 -> Array#find
793
+ // 6 -> Array#findIndex
794
+ var ctx = __webpack_require__(18)
795
+ , IObject = __webpack_require__(39)
796
+ , toObject = __webpack_require__(23)
797
+ , toLength = __webpack_require__(30)
798
+ , asc = __webpack_require__(47);
799
+ module.exports = function(TYPE, $create){
800
+ var IS_MAP = TYPE == 1
801
+ , IS_FILTER = TYPE == 2
802
+ , IS_SOME = TYPE == 3
803
+ , IS_EVERY = TYPE == 4
804
+ , IS_FIND_INDEX = TYPE == 6
805
+ , NO_HOLES = TYPE == 5 || IS_FIND_INDEX
806
+ , create = $create || asc;
807
+ return function($this, callbackfn, that){
808
+ var O = toObject($this)
809
+ , self = IObject(O)
810
+ , f = ctx(callbackfn, that, 3)
811
+ , length = toLength(self.length)
812
+ , index = 0
813
+ , result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined
814
+ , val, res;
815
+ for(;length > index; index++)if(NO_HOLES || index in self){
816
+ val = self[index];
817
+ res = f(val, index, O);
818
+ if(TYPE){
819
+ if(IS_MAP)result[index] = res; // map
820
+ else if(res)switch(TYPE){
821
+ case 3: return true; // some
822
+ case 5: return val; // find
823
+ case 6: return index; // findIndex
824
+ case 2: result.push(val); // filter
825
+ } else if(IS_EVERY)return false; // every
826
+ }
827
+ }
828
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
829
+ };
830
+ };
831
+
832
+ /***/ },
833
+ /* 47 */
834
+ /***/ function(module, exports, __webpack_require__) {
835
+
836
+ // 9.4.2.3 ArraySpeciesCreate(originalArray, length)
837
+ var speciesConstructor = __webpack_require__(48);
838
+
839
+ module.exports = function(original, length){
840
+ return new (speciesConstructor(original))(length);
841
+ };
842
+
843
+ /***/ },
844
+ /* 48 */
845
+ /***/ function(module, exports, __webpack_require__) {
846
+
847
+ var isObject = __webpack_require__(8)
848
+ , isArray = __webpack_require__(20)
849
+ , SPECIES = __webpack_require__(28)('species');
850
+
851
+ module.exports = function(original){
852
+ var C;
853
+ if(isArray(original)){
854
+ C = original.constructor;
855
+ // cross-realm fallback
856
+ if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
857
+ if(isObject(C)){
858
+ C = C[SPECIES];
859
+ if(C === null)C = undefined;
860
+ }
861
+ } return C === undefined ? Array : C;
862
+ };
863
+
864
+ /***/ },
865
+ /* 49 */
866
+ /***/ function(module, exports, __webpack_require__) {
867
+
868
+ 'use strict';
869
+ var $export = __webpack_require__(2)
870
+ , $map = __webpack_require__(46)(1);
871
+
872
+ $export($export.P + $export.F * !__webpack_require__(40)([].map, true), 'Array', {
873
+ // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
874
+ map: function map(callbackfn /* , thisArg */){
875
+ return $map(this, callbackfn, arguments[1]);
876
+ }
877
+ });
878
+
879
+ /***/ },
880
+ /* 50 */
881
+ /***/ function(module, exports, __webpack_require__) {
882
+
883
+ 'use strict';
884
+ var $export = __webpack_require__(2)
885
+ , $filter = __webpack_require__(46)(2);
886
+
887
+ $export($export.P + $export.F * !__webpack_require__(40)([].filter, true), 'Array', {
888
+ // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
889
+ filter: function filter(callbackfn /* , thisArg */){
890
+ return $filter(this, callbackfn, arguments[1]);
891
+ }
892
+ });
893
+
894
+ /***/ },
895
+ /* 51 */
896
+ /***/ function(module, exports, __webpack_require__) {
897
+
898
+ 'use strict';
899
+ var $export = __webpack_require__(2)
900
+ , $some = __webpack_require__(46)(3);
901
+
902
+ $export($export.P + $export.F * !__webpack_require__(40)([].some, true), 'Array', {
903
+ // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])
904
+ some: function some(callbackfn /* , thisArg */){
905
+ return $some(this, callbackfn, arguments[1]);
906
+ }
907
+ });
908
+
909
+ /***/ },
910
+ /* 52 */
911
+ /***/ function(module, exports, __webpack_require__) {
912
+
913
+ 'use strict';
914
+ var $export = __webpack_require__(2)
915
+ , $every = __webpack_require__(46)(4);
916
+
917
+ $export($export.P + $export.F * !__webpack_require__(40)([].every, true), 'Array', {
918
+ // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])
919
+ every: function every(callbackfn /* , thisArg */){
920
+ return $every(this, callbackfn, arguments[1]);
921
+ }
922
+ });
923
+
924
+ /***/ },
925
+ /* 53 */
926
+ /***/ function(module, exports, __webpack_require__) {
927
+
928
+ 'use strict';
929
+ var $export = __webpack_require__(2)
930
+ , $reduce = __webpack_require__(54);
931
+
932
+ $export($export.P + $export.F * !__webpack_require__(40)([].reduce, true), 'Array', {
933
+ // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])
934
+ reduce: function reduce(callbackfn /* , initialValue */){
935
+ return $reduce(this, callbackfn, arguments.length, arguments[1], false);
936
+ }
937
+ });
938
+
939
+ /***/ },
940
+ /* 54 */
941
+ /***/ function(module, exports, __webpack_require__) {
942
+
943
+ var aFunction = __webpack_require__(19)
944
+ , toObject = __webpack_require__(23)
945
+ , IObject = __webpack_require__(39)
946
+ , toLength = __webpack_require__(30);
947
+
948
+ module.exports = function(that, callbackfn, aLen, memo, isRight){
949
+ aFunction(callbackfn);
950
+ var O = toObject(that)
951
+ , self = IObject(O)
952
+ , length = toLength(O.length)
953
+ , index = isRight ? length - 1 : 0
954
+ , i = isRight ? -1 : 1;
955
+ if(aLen < 2)for(;;){
956
+ if(index in self){
957
+ memo = self[index];
958
+ index += i;
959
+ break;
960
+ }
961
+ index += i;
962
+ if(isRight ? index < 0 : length <= index){
963
+ throw TypeError('Reduce of empty array with no initial value');
964
+ }
965
+ }
966
+ for(;isRight ? index >= 0 : length > index; index += i)if(index in self){
967
+ memo = callbackfn(memo, self[index], index, O);
968
+ }
969
+ return memo;
970
+ };
971
+
972
+ /***/ },
973
+ /* 55 */
974
+ /***/ function(module, exports, __webpack_require__) {
975
+
976
+ 'use strict';
977
+ var $export = __webpack_require__(2)
978
+ , $reduce = __webpack_require__(54);
979
+
980
+ $export($export.P + $export.F * !__webpack_require__(40)([].reduceRight, true), 'Array', {
981
+ // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])
982
+ reduceRight: function reduceRight(callbackfn /* , initialValue */){
983
+ return $reduce(this, callbackfn, arguments.length, arguments[1], true);
984
+ }
985
+ });
986
+
987
+ /***/ },
988
+ /* 56 */
989
+ /***/ function(module, exports, __webpack_require__) {
990
+
991
+ 'use strict';
992
+ var $export = __webpack_require__(2)
993
+ , $indexOf = __webpack_require__(57)(false)
994
+ , $native = [].indexOf
995
+ , NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0;
996
+
997
+ $export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(40)($native)), 'Array', {
998
+ // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])
999
+ indexOf: function indexOf(searchElement /*, fromIndex = 0 */){
1000
+ return NEGATIVE_ZERO
1001
+ // convert -0 to +0
1002
+ ? $native.apply(this, arguments) || 0
1003
+ : $indexOf(this, searchElement, arguments[1]);
1004
+ }
1005
+ });
1006
+
1007
+ /***/ },
1008
+ /* 57 */
1009
+ /***/ function(module, exports, __webpack_require__) {
1010
+
1011
+ // false -> Array#indexOf
1012
+ // true -> Array#includes
1013
+ var toIObject = __webpack_require__(38)
1014
+ , toLength = __webpack_require__(30)
1015
+ , toIndex = __webpack_require__(43);
1016
+ module.exports = function(IS_INCLUDES){
1017
+ return function($this, el, fromIndex){
1018
+ var O = toIObject($this)
1019
+ , length = toLength(O.length)
1020
+ , index = toIndex(fromIndex, length)
1021
+ , value;
1022
+ // Array#includes uses SameValueZero equality algorithm
1023
+ if(IS_INCLUDES && el != el)while(length > index){
1024
+ value = O[index++];
1025
+ if(value != value)return true;
1026
+ // Array#toIndex ignores holes, Array#includes - not
1027
+ } else for(;length > index; index++)if(IS_INCLUDES || index in O){
1028
+ if(O[index] === el)return IS_INCLUDES || index || 0;
1029
+ } return !IS_INCLUDES && -1;
1030
+ };
1031
+ };
1032
+
1033
+ /***/ },
1034
+ /* 58 */
1035
+ /***/ function(module, exports, __webpack_require__) {
1036
+
1037
+ 'use strict';
1038
+ var $export = __webpack_require__(2)
1039
+ , toIObject = __webpack_require__(38)
1040
+ , toInteger = __webpack_require__(31)
1041
+ , toLength = __webpack_require__(30)
1042
+ , $native = [].lastIndexOf
1043
+ , NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0;
1044
+
1045
+ $export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(40)($native)), 'Array', {
1046
+ // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])
1047
+ lastIndexOf: function lastIndexOf(searchElement /*, fromIndex = @[*-1] */){
1048
+ // convert -0 to +0
1049
+ if(NEGATIVE_ZERO)return $native.apply(this, arguments) || 0;
1050
+ var O = toIObject(this)
1051
+ , length = toLength(O.length)
1052
+ , index = length - 1;
1053
+ if(arguments.length > 1)index = Math.min(index, toInteger(arguments[1]));
1054
+ if(index < 0)index = length + index;
1055
+ for(;index >= 0; index--)if(index in O)if(O[index] === searchElement)return index || 0;
1056
+ return -1;
1057
+ }
1058
+ });
1059
+
1060
+ /***/ },
1061
+ /* 59 */
1062
+ /***/ function(module, exports, __webpack_require__) {
1063
+
1064
+ // 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
1065
+ var $export = __webpack_require__(2);
1066
+
1067
+ $export($export.P, 'Array', {copyWithin: __webpack_require__(60)});
1068
+
1069
+ __webpack_require__(61)('copyWithin');
1070
+
1071
+ /***/ },
1072
+ /* 60 */
1073
+ /***/ function(module, exports, __webpack_require__) {
1074
+
1075
+ // 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
1076
+ 'use strict';
1077
+ var toObject = __webpack_require__(23)
1078
+ , toIndex = __webpack_require__(43)
1079
+ , toLength = __webpack_require__(30);
1080
+
1081
+ module.exports = [].copyWithin || function copyWithin(target/*= 0*/, start/*= 0, end = @length*/){
1082
+ var O = toObject(this)
1083
+ , len = toLength(O.length)
1084
+ , to = toIndex(target, len)
1085
+ , from = toIndex(start, len)
1086
+ , end = arguments.length > 2 ? arguments[2] : undefined
1087
+ , count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to)
1088
+ , inc = 1;
1089
+ if(from < to && to < from + count){
1090
+ inc = -1;
1091
+ from += count - 1;
1092
+ to += count - 1;
1093
+ }
1094
+ while(count-- > 0){
1095
+ if(from in O)O[to] = O[from];
1096
+ else delete O[to];
1097
+ to += inc;
1098
+ from += inc;
1099
+ } return O;
1100
+ };
1101
+
1102
+ /***/ },
1103
+ /* 61 */
1104
+ /***/ function(module, exports, __webpack_require__) {
1105
+
1106
+ // 22.1.3.31 Array.prototype[@@unscopables]
1107
+ var UNSCOPABLES = __webpack_require__(28)('unscopables')
1108
+ , ArrayProto = Array.prototype;
1109
+ if(ArrayProto[UNSCOPABLES] == undefined)__webpack_require__(5)(ArrayProto, UNSCOPABLES, {});
1110
+ module.exports = function(key){
1111
+ ArrayProto[UNSCOPABLES][key] = true;
1112
+ };
1113
+
1114
+ /***/ },
1115
+ /* 62 */
1116
+ /***/ function(module, exports, __webpack_require__) {
1117
+
1118
+ // 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
1119
+ var $export = __webpack_require__(2);
1120
+
1121
+ $export($export.P, 'Array', {fill: __webpack_require__(63)});
1122
+
1123
+ __webpack_require__(61)('fill');
1124
+
1125
+ /***/ },
1126
+ /* 63 */
1127
+ /***/ function(module, exports, __webpack_require__) {
1128
+
1129
+ // 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
1130
+ 'use strict';
1131
+ var toObject = __webpack_require__(23)
1132
+ , toIndex = __webpack_require__(43)
1133
+ , toLength = __webpack_require__(30);
1134
+ module.exports = function fill(value /*, start = 0, end = @length */){
1135
+ var O = toObject(this)
1136
+ , length = toLength(O.length)
1137
+ , aLen = arguments.length
1138
+ , index = toIndex(aLen > 1 ? arguments[1] : undefined, length)
1139
+ , end = aLen > 2 ? arguments[2] : undefined
1140
+ , endPos = end === undefined ? length : toIndex(end, length);
1141
+ while(endPos > index)O[index++] = value;
1142
+ return O;
1143
+ };
1144
+
1145
+ /***/ },
1146
+ /* 64 */
1147
+ /***/ function(module, exports, __webpack_require__) {
1148
+
1149
+ 'use strict';
1150
+ // 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
1151
+ var $export = __webpack_require__(2)
1152
+ , $find = __webpack_require__(46)(5)
1153
+ , KEY = 'find'
1154
+ , forced = true;
1155
+ // Shouldn't skip holes
1156
+ if(KEY in [])Array(1)[KEY](function(){ forced = false; });
1157
+ $export($export.P + $export.F * forced, 'Array', {
1158
+ find: function find(callbackfn/*, that = undefined */){
1159
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
1160
+ }
1161
+ });
1162
+ __webpack_require__(61)(KEY);
1163
+
1164
+ /***/ },
1165
+ /* 65 */
1166
+ /***/ function(module, exports, __webpack_require__) {
1167
+
1168
+ 'use strict';
1169
+ // 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
1170
+ var $export = __webpack_require__(2)
1171
+ , $find = __webpack_require__(46)(6)
1172
+ , KEY = 'findIndex'
1173
+ , forced = true;
1174
+ // Shouldn't skip holes
1175
+ if(KEY in [])Array(1)[KEY](function(){ forced = false; });
1176
+ $export($export.P + $export.F * forced, 'Array', {
1177
+ findIndex: function findIndex(callbackfn/*, that = undefined */){
1178
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
1179
+ }
1180
+ });
1181
+ __webpack_require__(61)(KEY);
1182
+
1183
+ /***/ },
1184
+ /* 66 */
1185
+ /***/ function(module, exports, __webpack_require__) {
1186
+
1187
+ 'use strict';
1188
+ var addToUnscopables = __webpack_require__(61)
1189
+ , step = __webpack_require__(67)
1190
+ , Iterators = __webpack_require__(27)
1191
+ , toIObject = __webpack_require__(38);
1192
+
1193
+ // 22.1.3.4 Array.prototype.entries()
1194
+ // 22.1.3.13 Array.prototype.keys()
1195
+ // 22.1.3.29 Array.prototype.values()
1196
+ // 22.1.3.30 Array.prototype[@@iterator]()
1197
+ module.exports = __webpack_require__(68)(Array, 'Array', function(iterated, kind){
1198
+ this._t = toIObject(iterated); // target
1199
+ this._i = 0; // next index
1200
+ this._k = kind; // kind
1201
+ // 22.1.5.2.1 %ArrayIteratorPrototype%.next()
1202
+ }, function(){
1203
+ var O = this._t
1204
+ , kind = this._k
1205
+ , index = this._i++;
1206
+ if(!O || index >= O.length){
1207
+ this._t = undefined;
1208
+ return step(1);
1209
+ }
1210
+ if(kind == 'keys' )return step(0, index);
1211
+ if(kind == 'values')return step(0, O[index]);
1212
+ return step(0, [index, O[index]]);
1213
+ }, 'values');
1214
+
1215
+ // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
1216
+ Iterators.Arguments = Iterators.Array;
1217
+
1218
+ addToUnscopables('keys');
1219
+ addToUnscopables('values');
1220
+ addToUnscopables('entries');
1221
+
1222
+ /***/ },
1223
+ /* 67 */
1224
+ /***/ function(module, exports) {
1225
+
1226
+ module.exports = function(done, value){
1227
+ return {value: value, done: !!done};
1228
+ };
1229
+
1230
+ /***/ },
1231
+ /* 68 */
1232
+ /***/ function(module, exports, __webpack_require__) {
1233
+
1234
+ 'use strict';
1235
+ var LIBRARY = __webpack_require__(69)
1236
+ , $export = __webpack_require__(2)
1237
+ , redefine = __webpack_require__(15)
1238
+ , hide = __webpack_require__(5)
1239
+ , has = __webpack_require__(16)
1240
+ , Iterators = __webpack_require__(27)
1241
+ , $iterCreate = __webpack_require__(70)
1242
+ , setToStringTag = __webpack_require__(77)
1243
+ , getPrototypeOf = __webpack_require__(78)
1244
+ , ITERATOR = __webpack_require__(28)('iterator')
1245
+ , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
1246
+ , FF_ITERATOR = '@@iterator'
1247
+ , KEYS = 'keys'
1248
+ , VALUES = 'values';
1249
+
1250
+ var returnThis = function(){ return this; };
1251
+
1252
+ module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
1253
+ $iterCreate(Constructor, NAME, next);
1254
+ var getMethod = function(kind){
1255
+ if(!BUGGY && kind in proto)return proto[kind];
1256
+ switch(kind){
1257
+ case KEYS: return function keys(){ return new Constructor(this, kind); };
1258
+ case VALUES: return function values(){ return new Constructor(this, kind); };
1259
+ } return function entries(){ return new Constructor(this, kind); };
1260
+ };
1261
+ var TAG = NAME + ' Iterator'
1262
+ , DEF_VALUES = DEFAULT == VALUES
1263
+ , VALUES_BUG = false
1264
+ , proto = Base.prototype
1265
+ , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
1266
+ , $default = $native || getMethod(DEFAULT)
1267
+ , $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined
1268
+ , $anyNative = NAME == 'Array' ? proto.entries || $native : $native
1269
+ , methods, key, IteratorPrototype;
1270
+ // Fix native
1271
+ if($anyNative){
1272
+ IteratorPrototype = getPrototypeOf($anyNative.call(new Base));
1273
+ if(IteratorPrototype !== Object.prototype){
1274
+ // Set @@toStringTag to native iterators
1275
+ setToStringTag(IteratorPrototype, TAG, true);
1276
+ // fix for some old engines
1277
+ if(!LIBRARY && !has(IteratorPrototype, ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
1278
+ }
1279
+ }
1280
+ // fix Array#{values, @@iterator}.name in V8 / FF
1281
+ if(DEF_VALUES && $native && $native.name !== VALUES){
1282
+ VALUES_BUG = true;
1283
+ $default = function values(){ return $native.call(this); };
1284
+ }
1285
+ // Define iterator
1286
+ if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
1287
+ hide(proto, ITERATOR, $default);
1288
+ }
1289
+ // Plug for library
1290
+ Iterators[NAME] = $default;
1291
+ Iterators[TAG] = returnThis;
1292
+ if(DEFAULT){
1293
+ methods = {
1294
+ values: DEF_VALUES ? $default : getMethod(VALUES),
1295
+ keys: IS_SET ? $default : getMethod(KEYS),
1296
+ entries: $entries
1297
+ };
1298
+ if(FORCED)for(key in methods){
1299
+ if(!(key in proto))redefine(proto, key, methods[key]);
1300
+ } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
1301
+ }
1302
+ return methods;
1303
+ };
1304
+
1305
+ /***/ },
1306
+ /* 69 */
1307
+ /***/ function(module, exports) {
1308
+
1309
+ module.exports = false;
1310
+
1311
+ /***/ },
1312
+ /* 70 */
1313
+ /***/ function(module, exports, __webpack_require__) {
1314
+
1315
+ 'use strict';
1316
+ var create = __webpack_require__(71)
1317
+ , descriptor = __webpack_require__(14)
1318
+ , setToStringTag = __webpack_require__(77)
1319
+ , IteratorPrototype = {};
1320
+
1321
+ // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
1322
+ __webpack_require__(5)(IteratorPrototype, __webpack_require__(28)('iterator'), function(){ return this; });
1323
+
1324
+ module.exports = function(Constructor, NAME, next){
1325
+ Constructor.prototype = create(IteratorPrototype, {next: descriptor(1, next)});
1326
+ setToStringTag(Constructor, NAME + ' Iterator');
1327
+ };
1328
+
1329
+ /***/ },
1330
+ /* 71 */
1331
+ /***/ function(module, exports, __webpack_require__) {
1332
+
1333
+ // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
1334
+ var anObject = __webpack_require__(7)
1335
+ , dPs = __webpack_require__(72)
1336
+ , enumBugKeys = __webpack_require__(76)
1337
+ , IE_PROTO = __webpack_require__(75)('IE_PROTO')
1338
+ , Empty = function(){ /* empty */ }
1339
+ , PROTOTYPE = 'prototype';
1340
+
1341
+ // Create object with fake `null` prototype: use iframe Object with cleared prototype
1342
+ var createDict = function(){
1343
+ // Thrash, waste and sodomy: IE GC bug
1344
+ var iframe = __webpack_require__(12)('iframe')
1345
+ , i = enumBugKeys.length
1346
+ , lt = '<'
1347
+ , gt = '>'
1348
+ , iframeDocument;
1349
+ iframe.style.display = 'none';
1350
+ __webpack_require__(42).appendChild(iframe);
1351
+ iframe.src = 'javascript:'; // eslint-disable-line no-script-url
1352
+ // createDict = iframe.contentWindow.Object;
1353
+ // html.removeChild(iframe);
1354
+ iframeDocument = iframe.contentWindow.document;
1355
+ iframeDocument.open();
1356
+ iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
1357
+ iframeDocument.close();
1358
+ createDict = iframeDocument.F;
1359
+ while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];
1360
+ return createDict();
1361
+ };
1362
+
1363
+ module.exports = Object.create || function create(O, Properties){
1364
+ var result;
1365
+ if(O !== null){
1366
+ Empty[PROTOTYPE] = anObject(O);
1367
+ result = new Empty;
1368
+ Empty[PROTOTYPE] = null;
1369
+ // add "__proto__" for Object.getPrototypeOf polyfill
1370
+ result[IE_PROTO] = O;
1371
+ } else result = createDict();
1372
+ return Properties === undefined ? result : dPs(result, Properties);
1373
+ };
1374
+
1375
+
1376
+ /***/ },
1377
+ /* 72 */
1378
+ /***/ function(module, exports, __webpack_require__) {
1379
+
1380
+ var dP = __webpack_require__(6)
1381
+ , anObject = __webpack_require__(7)
1382
+ , getKeys = __webpack_require__(73);
1383
+
1384
+ module.exports = __webpack_require__(10) ? Object.defineProperties : function defineProperties(O, Properties){
1385
+ anObject(O);
1386
+ var keys = getKeys(Properties)
1387
+ , length = keys.length
1388
+ , i = 0
1389
+ , P;
1390
+ while(length > i)dP.f(O, P = keys[i++], Properties[P]);
1391
+ return O;
1392
+ };
1393
+
1394
+ /***/ },
1395
+ /* 73 */
1396
+ /***/ function(module, exports, __webpack_require__) {
1397
+
1398
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
1399
+ var $keys = __webpack_require__(74)
1400
+ , enumBugKeys = __webpack_require__(76);
1401
+
1402
+ module.exports = Object.keys || function keys(O){
1403
+ return $keys(O, enumBugKeys);
1404
+ };
1405
+
1406
+ /***/ },
1407
+ /* 74 */
1408
+ /***/ function(module, exports, __webpack_require__) {
1409
+
1410
+ var has = __webpack_require__(16)
1411
+ , toIObject = __webpack_require__(38)
1412
+ , arrayIndexOf = __webpack_require__(57)(false)
1413
+ , IE_PROTO = __webpack_require__(75)('IE_PROTO');
1414
+
1415
+ module.exports = function(object, names){
1416
+ var O = toIObject(object)
1417
+ , i = 0
1418
+ , result = []
1419
+ , key;
1420
+ for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);
1421
+ // Don't enum bug & hidden keys
1422
+ while(names.length > i)if(has(O, key = names[i++])){
1423
+ ~arrayIndexOf(result, key) || result.push(key);
1424
+ }
1425
+ return result;
1426
+ };
1427
+
1428
+ /***/ },
1429
+ /* 75 */
1430
+ /***/ function(module, exports, __webpack_require__) {
1431
+
1432
+ var shared = __webpack_require__(29)('keys')
1433
+ , uid = __webpack_require__(17);
1434
+ module.exports = function(key){
1435
+ return shared[key] || (shared[key] = uid(key));
1436
+ };
1437
+
1438
+ /***/ },
1439
+ /* 76 */
1440
+ /***/ function(module, exports) {
1441
+
1442
+ // IE 8- don't enum bug keys
1443
+ module.exports = (
1444
+ 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
1445
+ ).split(',');
1446
+
1447
+ /***/ },
1448
+ /* 77 */
1449
+ /***/ function(module, exports, __webpack_require__) {
1450
+
1451
+ var def = __webpack_require__(6).f
1452
+ , has = __webpack_require__(16)
1453
+ , TAG = __webpack_require__(28)('toStringTag');
1454
+
1455
+ module.exports = function(it, tag, stat){
1456
+ if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
1457
+ };
1458
+
1459
+ /***/ },
1460
+ /* 78 */
1461
+ /***/ function(module, exports, __webpack_require__) {
1462
+
1463
+ // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
1464
+ var has = __webpack_require__(16)
1465
+ , toObject = __webpack_require__(23)
1466
+ , IE_PROTO = __webpack_require__(75)('IE_PROTO')
1467
+ , ObjectProto = Object.prototype;
1468
+
1469
+ module.exports = Object.getPrototypeOf || function(O){
1470
+ O = toObject(O);
1471
+ if(has(O, IE_PROTO))return O[IE_PROTO];
1472
+ if(typeof O.constructor == 'function' && O instanceof O.constructor){
1473
+ return O.constructor.prototype;
1474
+ } return O instanceof Object ? ObjectProto : null;
1475
+ };
1476
+
1477
+ /***/ },
1478
+ /* 79 */
1479
+ /***/ function(module, exports, __webpack_require__) {
1480
+
1481
+ __webpack_require__(80)('Array');
1482
+
1483
+ /***/ },
1484
+ /* 80 */
1485
+ /***/ function(module, exports, __webpack_require__) {
1486
+
1487
+ 'use strict';
1488
+ var global = __webpack_require__(3)
1489
+ , dP = __webpack_require__(6)
1490
+ , DESCRIPTORS = __webpack_require__(10)
1491
+ , SPECIES = __webpack_require__(28)('species');
1492
+
1493
+ module.exports = function(KEY){
1494
+ var C = global[KEY];
1495
+ if(DESCRIPTORS && C && !C[SPECIES])dP.f(C, SPECIES, {
1496
+ configurable: true,
1497
+ get: function(){ return this; }
1498
+ });
1499
+ };
1500
+
1501
+ /***/ },
1502
+ /* 81 */
1503
+ /***/ function(module, exports, __webpack_require__) {
1504
+
1505
+ 'use strict';
1506
+ var strong = __webpack_require__(82);
1507
+
1508
+ // 23.1 Map Objects
1509
+ module.exports = __webpack_require__(87)('Map', function(get){
1510
+ return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
1511
+ }, {
1512
+ // 23.1.3.6 Map.prototype.get(key)
1513
+ get: function get(key){
1514
+ var entry = strong.getEntry(this, key);
1515
+ return entry && entry.v;
1516
+ },
1517
+ // 23.1.3.9 Map.prototype.set(key, value)
1518
+ set: function set(key, value){
1519
+ return strong.def(this, key === 0 ? 0 : key, value);
1520
+ }
1521
+ }, strong, true);
1522
+
1523
+ /***/ },
1524
+ /* 82 */
1525
+ /***/ function(module, exports, __webpack_require__) {
1526
+
1527
+ 'use strict';
1528
+ var dP = __webpack_require__(6).f
1529
+ , create = __webpack_require__(71)
1530
+ , redefineAll = __webpack_require__(83)
1531
+ , ctx = __webpack_require__(18)
1532
+ , anInstance = __webpack_require__(84)
1533
+ , defined = __webpack_require__(24)
1534
+ , forOf = __webpack_require__(85)
1535
+ , $iterDefine = __webpack_require__(68)
1536
+ , step = __webpack_require__(67)
1537
+ , setSpecies = __webpack_require__(80)
1538
+ , DESCRIPTORS = __webpack_require__(10)
1539
+ , fastKey = __webpack_require__(86).fastKey
1540
+ , SIZE = DESCRIPTORS ? '_s' : 'size';
1541
+
1542
+ var getEntry = function(that, key){
1543
+ // fast case
1544
+ var index = fastKey(key), entry;
1545
+ if(index !== 'F')return that._i[index];
1546
+ // frozen object case
1547
+ for(entry = that._f; entry; entry = entry.n){
1548
+ if(entry.k == key)return entry;
1549
+ }
1550
+ };
1551
+
1552
+ module.exports = {
1553
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
1554
+ var C = wrapper(function(that, iterable){
1555
+ anInstance(that, C, NAME, '_i');
1556
+ that._i = create(null); // index
1557
+ that._f = undefined; // first entry
1558
+ that._l = undefined; // last entry
1559
+ that[SIZE] = 0; // size
1560
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
1561
+ });
1562
+ redefineAll(C.prototype, {
1563
+ // 23.1.3.1 Map.prototype.clear()
1564
+ // 23.2.3.2 Set.prototype.clear()
1565
+ clear: function clear(){
1566
+ for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){
1567
+ entry.r = true;
1568
+ if(entry.p)entry.p = entry.p.n = undefined;
1569
+ delete data[entry.i];
1570
+ }
1571
+ that._f = that._l = undefined;
1572
+ that[SIZE] = 0;
1573
+ },
1574
+ // 23.1.3.3 Map.prototype.delete(key)
1575
+ // 23.2.3.4 Set.prototype.delete(value)
1576
+ 'delete': function(key){
1577
+ var that = this
1578
+ , entry = getEntry(that, key);
1579
+ if(entry){
1580
+ var next = entry.n
1581
+ , prev = entry.p;
1582
+ delete that._i[entry.i];
1583
+ entry.r = true;
1584
+ if(prev)prev.n = next;
1585
+ if(next)next.p = prev;
1586
+ if(that._f == entry)that._f = next;
1587
+ if(that._l == entry)that._l = prev;
1588
+ that[SIZE]--;
1589
+ } return !!entry;
1590
+ },
1591
+ // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
1592
+ // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
1593
+ forEach: function forEach(callbackfn /*, that = undefined */){
1594
+ anInstance(this, C, 'forEach');
1595
+ var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)
1596
+ , entry;
1597
+ while(entry = entry ? entry.n : this._f){
1598
+ f(entry.v, entry.k, this);
1599
+ // revert to the last existing entry
1600
+ while(entry && entry.r)entry = entry.p;
1601
+ }
1602
+ },
1603
+ // 23.1.3.7 Map.prototype.has(key)
1604
+ // 23.2.3.7 Set.prototype.has(value)
1605
+ has: function has(key){
1606
+ return !!getEntry(this, key);
1607
+ }
1608
+ });
1609
+ if(DESCRIPTORS)dP(C.prototype, 'size', {
1610
+ get: function(){
1611
+ return defined(this[SIZE]);
1612
+ }
1613
+ });
1614
+ return C;
1615
+ },
1616
+ def: function(that, key, value){
1617
+ var entry = getEntry(that, key)
1618
+ , prev, index;
1619
+ // change existing entry
1620
+ if(entry){
1621
+ entry.v = value;
1622
+ // create new entry
1623
+ } else {
1624
+ that._l = entry = {
1625
+ i: index = fastKey(key, true), // <- index
1626
+ k: key, // <- key
1627
+ v: value, // <- value
1628
+ p: prev = that._l, // <- previous entry
1629
+ n: undefined, // <- next entry
1630
+ r: false // <- removed
1631
+ };
1632
+ if(!that._f)that._f = entry;
1633
+ if(prev)prev.n = entry;
1634
+ that[SIZE]++;
1635
+ // add to index
1636
+ if(index !== 'F')that._i[index] = entry;
1637
+ } return that;
1638
+ },
1639
+ getEntry: getEntry,
1640
+ setStrong: function(C, NAME, IS_MAP){
1641
+ // add .keys, .values, .entries, [@@iterator]
1642
+ // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
1643
+ $iterDefine(C, NAME, function(iterated, kind){
1644
+ this._t = iterated; // target
1645
+ this._k = kind; // kind
1646
+ this._l = undefined; // previous
1647
+ }, function(){
1648
+ var that = this
1649
+ , kind = that._k
1650
+ , entry = that._l;
1651
+ // revert to the last existing entry
1652
+ while(entry && entry.r)entry = entry.p;
1653
+ // get next entry
1654
+ if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){
1655
+ // or finish the iteration
1656
+ that._t = undefined;
1657
+ return step(1);
1658
+ }
1659
+ // return step by kind
1660
+ if(kind == 'keys' )return step(0, entry.k);
1661
+ if(kind == 'values')return step(0, entry.v);
1662
+ return step(0, [entry.k, entry.v]);
1663
+ }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);
1664
+
1665
+ // add [@@species], 23.1.2.2, 23.2.2.2
1666
+ setSpecies(NAME);
1667
+ }
1668
+ };
1669
+
1670
+ /***/ },
1671
+ /* 83 */
1672
+ /***/ function(module, exports, __webpack_require__) {
1673
+
1674
+ var redefine = __webpack_require__(15);
1675
+ module.exports = function(target, src, safe){
1676
+ for(var key in src)redefine(target, key, src[key], safe);
1677
+ return target;
1678
+ };
1679
+
1680
+ /***/ },
1681
+ /* 84 */
1682
+ /***/ function(module, exports) {
1683
+
1684
+ module.exports = function(it, Constructor, name, forbiddenField){
1685
+ if(!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)){
1686
+ throw TypeError(name + ': incorrect invocation!');
1687
+ } return it;
1688
+ };
1689
+
1690
+ /***/ },
1691
+ /* 85 */
1692
+ /***/ function(module, exports, __webpack_require__) {
1693
+
1694
+ var ctx = __webpack_require__(18)
1695
+ , call = __webpack_require__(25)
1696
+ , isArrayIter = __webpack_require__(26)
1697
+ , anObject = __webpack_require__(7)
1698
+ , toLength = __webpack_require__(30)
1699
+ , getIterFn = __webpack_require__(33)
1700
+ , BREAK = {}
1701
+ , RETURN = {};
1702
+ var exports = module.exports = function(iterable, entries, fn, that, ITERATOR){
1703
+ var iterFn = ITERATOR ? function(){ return iterable; } : getIterFn(iterable)
1704
+ , f = ctx(fn, that, entries ? 2 : 1)
1705
+ , index = 0
1706
+ , length, step, iterator, result;
1707
+ if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');
1708
+ // fast case for arrays with default iterator
1709
+ if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){
1710
+ result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
1711
+ if(result === BREAK || result === RETURN)return result;
1712
+ } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
1713
+ result = call(iterator, f, step.value, entries);
1714
+ if(result === BREAK || result === RETURN)return result;
1715
+ }
1716
+ };
1717
+ exports.BREAK = BREAK;
1718
+ exports.RETURN = RETURN;
1719
+
1720
+ /***/ },
1721
+ /* 86 */
1722
+ /***/ function(module, exports, __webpack_require__) {
1723
+
1724
+ var META = __webpack_require__(17)('meta')
1725
+ , isObject = __webpack_require__(8)
1726
+ , has = __webpack_require__(16)
1727
+ , setDesc = __webpack_require__(6).f
1728
+ , id = 0;
1729
+ var isExtensible = Object.isExtensible || function(){
1730
+ return true;
1731
+ };
1732
+ var FREEZE = !__webpack_require__(11)(function(){
1733
+ return isExtensible(Object.preventExtensions({}));
1734
+ });
1735
+ var setMeta = function(it){
1736
+ setDesc(it, META, {value: {
1737
+ i: 'O' + ++id, // object ID
1738
+ w: {} // weak collections IDs
1739
+ }});
1740
+ };
1741
+ var fastKey = function(it, create){
1742
+ // return primitive with prefix
1743
+ if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
1744
+ if(!has(it, META)){
1745
+ // can't set metadata to uncaught frozen object
1746
+ if(!isExtensible(it))return 'F';
1747
+ // not necessary to add metadata
1748
+ if(!create)return 'E';
1749
+ // add missing metadata
1750
+ setMeta(it);
1751
+ // return object ID
1752
+ } return it[META].i;
1753
+ };
1754
+ var getWeak = function(it, create){
1755
+ if(!has(it, META)){
1756
+ // can't set metadata to uncaught frozen object
1757
+ if(!isExtensible(it))return true;
1758
+ // not necessary to add metadata
1759
+ if(!create)return false;
1760
+ // add missing metadata
1761
+ setMeta(it);
1762
+ // return hash weak collections IDs
1763
+ } return it[META].w;
1764
+ };
1765
+ // add metadata on freeze-family methods calling
1766
+ var onFreeze = function(it){
1767
+ if(FREEZE && meta.NEED && isExtensible(it) && !has(it, META))setMeta(it);
1768
+ return it;
1769
+ };
1770
+ var meta = module.exports = {
1771
+ KEY: META,
1772
+ NEED: false,
1773
+ fastKey: fastKey,
1774
+ getWeak: getWeak,
1775
+ onFreeze: onFreeze
1776
+ };
1777
+
1778
+ /***/ },
1779
+ /* 87 */
1780
+ /***/ function(module, exports, __webpack_require__) {
1781
+
1782
+ 'use strict';
1783
+ var global = __webpack_require__(3)
1784
+ , $export = __webpack_require__(2)
1785
+ , redefine = __webpack_require__(15)
1786
+ , redefineAll = __webpack_require__(83)
1787
+ , meta = __webpack_require__(86)
1788
+ , forOf = __webpack_require__(85)
1789
+ , anInstance = __webpack_require__(84)
1790
+ , isObject = __webpack_require__(8)
1791
+ , fails = __webpack_require__(11)
1792
+ , $iterDetect = __webpack_require__(35)
1793
+ , setToStringTag = __webpack_require__(77)
1794
+ , inheritIfRequired = __webpack_require__(88);
1795
+
1796
+ module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
1797
+ var Base = global[NAME]
1798
+ , C = Base
1799
+ , ADDER = IS_MAP ? 'set' : 'add'
1800
+ , proto = C && C.prototype
1801
+ , O = {};
1802
+ var fixMethod = function(KEY){
1803
+ var fn = proto[KEY];
1804
+ redefine(proto, KEY,
1805
+ KEY == 'delete' ? function(a){
1806
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
1807
+ } : KEY == 'has' ? function has(a){
1808
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
1809
+ } : KEY == 'get' ? function get(a){
1810
+ return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);
1811
+ } : KEY == 'add' ? function add(a){ fn.call(this, a === 0 ? 0 : a); return this; }
1812
+ : function set(a, b){ fn.call(this, a === 0 ? 0 : a, b); return this; }
1813
+ );
1814
+ };
1815
+ if(typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
1816
+ new C().entries().next();
1817
+ }))){
1818
+ // create collection constructor
1819
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
1820
+ redefineAll(C.prototype, methods);
1821
+ meta.NEED = true;
1822
+ } else {
1823
+ var instance = new C
1824
+ // early implementations not supports chaining
1825
+ , HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance
1826
+ // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false
1827
+ , THROWS_ON_PRIMITIVES = fails(function(){ instance.has(1); })
1828
+ // most early implementations doesn't supports iterables, most modern - not close it correctly
1829
+ , ACCEPT_ITERABLES = $iterDetect(function(iter){ new C(iter); }) // eslint-disable-line no-new
1830
+ // for early implementations -0 and +0 not the same
1831
+ , BUGGY_ZERO = !IS_WEAK && fails(function(){
1832
+ // V8 ~ Chromium 42- fails only with 5+ elements
1833
+ var $instance = new C()
1834
+ , index = 5;
1835
+ while(index--)$instance[ADDER](index, index);
1836
+ return !$instance.has(-0);
1837
+ });
1838
+ if(!ACCEPT_ITERABLES){
1839
+ C = wrapper(function(target, iterable){
1840
+ anInstance(target, C, NAME);
1841
+ var that = inheritIfRequired(new Base, target, C);
1842
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
1843
+ return that;
1844
+ });
1845
+ C.prototype = proto;
1846
+ proto.constructor = C;
1847
+ }
1848
+ if(THROWS_ON_PRIMITIVES || BUGGY_ZERO){
1849
+ fixMethod('delete');
1850
+ fixMethod('has');
1851
+ IS_MAP && fixMethod('get');
1852
+ }
1853
+ if(BUGGY_ZERO || HASNT_CHAINING)fixMethod(ADDER);
1854
+ // weak collections should not contains .clear method
1855
+ if(IS_WEAK && proto.clear)delete proto.clear;
1856
+ }
1857
+
1858
+ setToStringTag(C, NAME);
1859
+
1860
+ O[NAME] = C;
1861
+ $export($export.G + $export.W + $export.F * (C != Base), O);
1862
+
1863
+ if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
1864
+
1865
+ return C;
1866
+ };
1867
+
1868
+ /***/ },
1869
+ /* 88 */
1870
+ /***/ function(module, exports, __webpack_require__) {
1871
+
1872
+ var isObject = __webpack_require__(8)
1873
+ , setPrototypeOf = __webpack_require__(89).set;
1874
+ module.exports = function(that, target, C){
1875
+ var P, S = target.constructor;
1876
+ if(S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf){
1877
+ setPrototypeOf(that, P);
1878
+ } return that;
1879
+ };
1880
+
1881
+ /***/ },
1882
+ /* 89 */
1883
+ /***/ function(module, exports, __webpack_require__) {
1884
+
1885
+ // Works with __proto__ only. Old v8 can't work with null proto objects.
1886
+ /* eslint-disable no-proto */
1887
+ var isObject = __webpack_require__(8)
1888
+ , anObject = __webpack_require__(7);
1889
+ var check = function(O, proto){
1890
+ anObject(O);
1891
+ if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
1892
+ };
1893
+ module.exports = {
1894
+ set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
1895
+ function(test, buggy, set){
1896
+ try {
1897
+ set = __webpack_require__(18)(Function.call, __webpack_require__(90).f(Object.prototype, '__proto__').set, 2);
1898
+ set(test, []);
1899
+ buggy = !(test instanceof Array);
1900
+ } catch(e){ buggy = true; }
1901
+ return function setPrototypeOf(O, proto){
1902
+ check(O, proto);
1903
+ if(buggy)O.__proto__ = proto;
1904
+ else set(O, proto);
1905
+ return O;
1906
+ };
1907
+ }({}, false) : undefined),
1908
+ check: check
1909
+ };
1910
+
1911
+ /***/ },
1912
+ /* 90 */
1913
+ /***/ function(module, exports, __webpack_require__) {
1914
+
1915
+ var pIE = __webpack_require__(91)
1916
+ , createDesc = __webpack_require__(14)
1917
+ , toIObject = __webpack_require__(38)
1918
+ , toPrimitive = __webpack_require__(13)
1919
+ , has = __webpack_require__(16)
1920
+ , IE8_DOM_DEFINE = __webpack_require__(9)
1921
+ , gOPD = Object.getOwnPropertyDescriptor;
1922
+
1923
+ exports.f = __webpack_require__(10) ? gOPD : function getOwnPropertyDescriptor(O, P){
1924
+ O = toIObject(O);
1925
+ P = toPrimitive(P, true);
1926
+ if(IE8_DOM_DEFINE)try {
1927
+ return gOPD(O, P);
1928
+ } catch(e){ /* empty */ }
1929
+ if(has(O, P))return createDesc(!pIE.f.call(O, P), O[P]);
1930
+ };
1931
+
1932
+ /***/ },
1933
+ /* 91 */
1934
+ /***/ function(module, exports) {
1935
+
1936
+ exports.f = {}.propertyIsEnumerable;
1937
+
1938
+ /***/ },
1939
+ /* 92 */
1940
+ /***/ function(module, exports, __webpack_require__) {
1941
+
1942
+ 'use strict';
1943
+ var strong = __webpack_require__(82);
1944
+
1945
+ // 23.2 Set Objects
1946
+ module.exports = __webpack_require__(87)('Set', function(get){
1947
+ return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
1948
+ }, {
1949
+ // 23.2.3.1 Set.prototype.add(value)
1950
+ add: function add(value){
1951
+ return strong.def(this, value = value === 0 ? 0 : value, value);
1952
+ }
1953
+ }, strong);
1954
+
1955
+ /***/ }
1956
+ /******/ ]);
1957
+ // CommonJS export
1958
+ if(typeof module != 'undefined' && module.exports)module.exports = __e;
1959
+ // RequireJS export
1960
+ else if(typeof define == 'function' && define.amd)define(function(){return __e});
1961
+ // Export to global object
1962
+ else __g.core = __e;
1963
+ }(1, 1);