index)result[index] = list[index++];
return result;
};
var addGetter = function(it, key, internal){
dP(it, key, {get: function(){ return this._d[internal]; }});
};
var $from = function from(source /*, mapfn, thisArg */){
var O = toObject(source)
, aLen = arguments.length
, mapfn = aLen > 1 ? arguments[1] : undefined
, mapping = mapfn !== undefined
, iterFn = getIterFn(O)
, i, length, values, result, step, iterator;
if(iterFn != undefined && !isArrayIter(iterFn)){
for(iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++){
values.push(step.value);
} O = values;
}
if(mapping && aLen > 2)mapfn = ctx(mapfn, arguments[2], 2);
for(i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++){
result[i] = mapping ? mapfn(O[i], i) : O[i];
}
return result;
};
var $of = function of(/*...items*/){
var index = 0
, length = arguments.length
, result = allocate(this, length);
while(length > index)result[index] = arguments[index++];
return result;
};
// iOS Safari 6.x fails here
var TO_LOCALE_BUG = !!Uint8Array && fails(function(){ arrayToLocaleString.call(new Uint8Array(1)); });
var $toLocaleString = function toLocaleString(){
return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);
};
var proto = {
copyWithin: function copyWithin(target, start /*, end */){
return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
},
every: function every(callbackfn /*, thisArg */){
return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
},
fill: function fill(value /*, start, end */){ // eslint-disable-line no-unused-vars
return arrayFill.apply(validate(this), arguments);
},
filter: function filter(callbackfn /*, thisArg */){
return speciesFromList(this, arrayFilter(validate(this), callbackfn,
arguments.length > 1 ? arguments[1] : undefined));
},
find: function find(predicate /*, thisArg */){
return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
},
findIndex: function findIndex(predicate /*, thisArg */){
return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
},
forEach: function forEach(callbackfn /*, thisArg */){
arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
},
indexOf: function indexOf(searchElement /*, fromIndex */){
return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
},
includes: function includes(searchElement /*, fromIndex */){
return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
},
join: function join(separator){ // eslint-disable-line no-unused-vars
return arrayJoin.apply(validate(this), arguments);
},
lastIndexOf: function lastIndexOf(searchElement /*, fromIndex */){ // eslint-disable-line no-unused-vars
return arrayLastIndexOf.apply(validate(this), arguments);
},
map: function map(mapfn /*, thisArg */){
return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);
},
reduce: function reduce(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
return arrayReduce.apply(validate(this), arguments);
},
reduceRight: function reduceRight(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
return arrayReduceRight.apply(validate(this), arguments);
},
reverse: function reverse(){
var that = this
, length = validate(that).length
, middle = Math.floor(length / 2)
, index = 0
, value;
while(index < middle){
value = that[index];
that[index++] = that[--length];
that[length] = value;
} return that;
},
some: function some(callbackfn /*, thisArg */){
return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
},
sort: function sort(comparefn){
return arraySort.call(validate(this), comparefn);
},
subarray: function subarray(begin, end){
var O = validate(this)
, length = O.length
, $begin = toIndex(begin, length);
return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(
O.buffer,
O.byteOffset + $begin * O.BYTES_PER_ELEMENT,
toLength((end === undefined ? length : toIndex(end, length)) - $begin)
);
}
};
var $slice = function slice(start, end){
return speciesFromList(this, arraySlice.call(validate(this), start, end));
};
var $set = function set(arrayLike /*, offset */){
validate(this);
var offset = toOffset(arguments[1], 1)
, length = this.length
, src = toObject(arrayLike)
, len = toLength(src.length)
, index = 0;
if(len + offset > length)throw RangeError(WRONG_LENGTH);
while(index < len)this[offset + index] = src[index++];
};
var $iterators = {
entries: function entries(){
return arrayEntries.call(validate(this));
},
keys: function keys(){
return arrayKeys.call(validate(this));
},
values: function values(){
return arrayValues.call(validate(this));
}
};
var isTAIndex = function(target, key){
return isObject(target)
&& target[TYPED_ARRAY]
&& typeof key != 'symbol'
&& key in target
&& String(+key) == String(key);
};
var $getDesc = function getOwnPropertyDescriptor(target, key){
return isTAIndex(target, key = toPrimitive(key, true))
? propertyDesc(2, target[key])
: gOPD(target, key);
};
var $setDesc = function defineProperty(target, key, desc){
if(isTAIndex(target, key = toPrimitive(key, true))
&& isObject(desc)
&& has(desc, 'value')
&& !has(desc, 'get')
&& !has(desc, 'set')
// TODO: add validation descriptor w/o calling accessors
&& !desc.configurable
&& (!has(desc, 'writable') || desc.writable)
&& (!has(desc, 'enumerable') || desc.enumerable)
){
target[key] = desc.value;
return target;
} else return dP(target, key, desc);
};
if(!ALL_CONSTRUCTORS){
$GOPD.f = $getDesc;
$DP.f = $setDesc;
}
$export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {
getOwnPropertyDescriptor: $getDesc,
defineProperty: $setDesc
});
if(fails(function(){ arrayToString.call({}); })){
arrayToString = arrayToLocaleString = function toString(){
return arrayJoin.call(this);
}
}
var $TypedArrayPrototype$ = redefineAll({}, proto);
redefineAll($TypedArrayPrototype$, $iterators);
hide($TypedArrayPrototype$, ITERATOR, $iterators.values);
redefineAll($TypedArrayPrototype$, {
slice: $slice,
set: $set,
constructor: function(){ /* noop */ },
toString: arrayToString,
toLocaleString: $toLocaleString
});
addGetter($TypedArrayPrototype$, 'buffer', 'b');
addGetter($TypedArrayPrototype$, 'byteOffset', 'o');
addGetter($TypedArrayPrototype$, 'byteLength', 'l');
addGetter($TypedArrayPrototype$, 'length', 'e');
dP($TypedArrayPrototype$, TAG, {
get: function(){ return this[TYPED_ARRAY]; }
});
module.exports = function(KEY, BYTES, wrapper, CLAMPED){
CLAMPED = !!CLAMPED;
var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'
, ISNT_UINT8 = NAME != 'Uint8Array'
, GETTER = 'get' + KEY
, SETTER = 'set' + KEY
, TypedArray = global[NAME]
, Base = TypedArray || {}
, TAC = TypedArray && getPrototypeOf(TypedArray)
, FORCED = !TypedArray || !$typed.ABV
, O = {}
, TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];
var getter = function(that, index){
var data = that._d;
return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
};
var setter = function(that, index, value){
var data = that._d;
if(CLAMPED)value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;
data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);
};
var addElement = function(that, index){
dP(that, index, {
get: function(){
return getter(this, index);
},
set: function(value){
return setter(this, index, value);
},
enumerable: true
});
};
if(FORCED){
TypedArray = wrapper(function(that, data, $offset, $length){
anInstance(that, TypedArray, NAME, '_d');
var index = 0
, offset = 0
, buffer, byteLength, length, klass;
if(!isObject(data)){
length = strictToLength(data, true)
byteLength = length * BYTES;
buffer = new $ArrayBuffer(byteLength);
} else if(data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER){
buffer = data;
offset = toOffset($offset, BYTES);
var $len = data.byteLength;
if($length === undefined){
if($len % BYTES)throw RangeError(WRONG_LENGTH);
byteLength = $len - offset;
if(byteLength < 0)throw RangeError(WRONG_LENGTH);
} else {
byteLength = toLength($length) * BYTES;
if(byteLength + offset > $len)throw RangeError(WRONG_LENGTH);
}
length = byteLength / BYTES;
} else if(TYPED_ARRAY in data){
return fromList(TypedArray, data);
} else {
return $from.call(TypedArray, data);
}
hide(that, '_d', {
b: buffer,
o: offset,
l: byteLength,
e: length,
v: new $DataView(buffer)
});
while(index < length)addElement(that, index++);
});
TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);
hide(TypedArrayPrototype, 'constructor', TypedArray);
} else if(!$iterDetect(function(iter){
// V8 works with iterators, but fails in many other cases
// https://code.google.com/p/v8/issues/detail?id=4552
new TypedArray(null); // eslint-disable-line no-new
new TypedArray(iter); // eslint-disable-line no-new
}, true)){
TypedArray = wrapper(function(that, data, $offset, $length){
anInstance(that, TypedArray, NAME);
var klass;
// `ws` module bug, temporarily remove validation length for Uint8Array
// https://github.com/websockets/ws/pull/645
if(!isObject(data))return new Base(strictToLength(data, ISNT_UINT8));
if(data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER){
return $length !== undefined
? new Base(data, toOffset($offset, BYTES), $length)
: $offset !== undefined
? new Base(data, toOffset($offset, BYTES))
: new Base(data);
}
if(TYPED_ARRAY in data)return fromList(TypedArray, data);
return $from.call(TypedArray, data);
});
arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function(key){
if(!(key in TypedArray))hide(TypedArray, key, Base[key]);
});
TypedArray[PROTOTYPE] = TypedArrayPrototype;
if(!LIBRARY)TypedArrayPrototype.constructor = TypedArray;
}
var $nativeIterator = TypedArrayPrototype[ITERATOR]
, CORRECT_ITER_NAME = !!$nativeIterator && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined)
, $iterator = $iterators.values;
hide(TypedArray, TYPED_CONSTRUCTOR, true);
hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
hide(TypedArrayPrototype, VIEW, true);
hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
if(CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)){
dP(TypedArrayPrototype, TAG, {
get: function(){ return NAME; }
});
}
O[NAME] = TypedArray;
$export($export.G + $export.W + $export.F * (TypedArray != Base), O);
$export($export.S, NAME, {
BYTES_PER_ELEMENT: BYTES,
from: $from,
of: $of
});
if(!(BYTES_PER_ELEMENT in TypedArrayPrototype))hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);
$export($export.P, NAME, proto);
setSpecies(NAME);
$export($export.P + $export.F * FORCED_SET, NAME, {set: $set});
$export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);
$export($export.P + $export.F * (TypedArrayPrototype.toString != arrayToString), NAME, {toString: arrayToString});
$export($export.P + $export.F * fails(function(){
new TypedArray(1).slice();
}), NAME, {slice: $slice});
$export($export.P + $export.F * (fails(function(){
return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString()
}) || !fails(function(){
TypedArrayPrototype.toLocaleString.call([1, 2]);
})), NAME, {toLocaleString: $toLocaleString});
Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;
if(!LIBRARY && !CORRECT_ITER_NAME)hide(TypedArrayPrototype, ITERATOR, $iterator);
};
} else module.exports = function(){ /* empty */ };
/***/ },
/* 31 */
/***/ function(module, exports) {
module.exports = function(it, Constructor, name, forbiddenField){
if(!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)){
throw TypeError(name + ': incorrect invocation!');
} return it;
};
/***/ },
/* 32 */
/***/ function(module, exports, __webpack_require__) {
var META = __webpack_require__(43)('meta')
, isObject = __webpack_require__(5)
, has = __webpack_require__(10)
, setDesc = __webpack_require__(7).f
, id = 0;
var isExtensible = Object.isExtensible || function(){
return true;
};
var FREEZE = !__webpack_require__(4)(function(){
return isExtensible(Object.preventExtensions({}));
});
var setMeta = function(it){
setDesc(it, META, {value: {
i: 'O' + ++id, // object ID
w: {} // weak collections IDs
}});
};
var fastKey = function(it, create){
// return primitive with prefix
if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
if(!has(it, META)){
// can't set metadata to uncaught frozen object
if(!isExtensible(it))return 'F';
// not necessary to add metadata
if(!create)return 'E';
// add missing metadata
setMeta(it);
// return object ID
} return it[META].i;
};
var getWeak = function(it, create){
if(!has(it, META)){
// can't set metadata to uncaught frozen object
if(!isExtensible(it))return true;
// not necessary to add metadata
if(!create)return false;
// add missing metadata
setMeta(it);
// return hash weak collections IDs
} return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function(it){
if(FREEZE && meta.NEED && isExtensible(it) && !has(it, META))setMeta(it);
return it;
};
var meta = module.exports = {
KEY: META,
NEED: false,
fastKey: fastKey,
getWeak: getWeak,
onFreeze: onFreeze
};
/***/ },
/* 33 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(110)
, enumBugKeys = __webpack_require__(68);
module.exports = Object.keys || function keys(O){
return $keys(O, enumBugKeys);
};
/***/ },
/* 34 */
/***/ function(module, exports) {
// 7.1.4 ToInteger
var ceil = Math.ceil
, floor = Math.floor;
module.exports = function(it){
return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};
/***/ },
/* 35 */
/***/ function(module, exports, __webpack_require__) {
// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(20)
, TAG = __webpack_require__(6)('toStringTag')
// ES3 wrong here
, ARG = cof(function(){ return arguments; }()) == 'Arguments';
// fallback for IE11 Script Access Denied error
var tryGet = function(it, key){
try {
return it[key];
} catch(e){ /* empty */ }
};
module.exports = function(it){
var O, T, B;
return it === undefined ? 'Undefined' : it === null ? 'Null'
// @@toStringTag case
: typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
// builtinTag case
: ARG ? cof(O)
// ES3 arguments fallback
: (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};
/***/ },
/* 36 */
/***/ function(module, exports, __webpack_require__) {
var ctx = __webpack_require__(24)
, call = __webpack_require__(104)
, isArrayIter = __webpack_require__(72)
, anObject = __webpack_require__(2)
, toLength = __webpack_require__(9)
, getIterFn = __webpack_require__(49)
, BREAK = {}
, RETURN = {};
var exports = module.exports = function(iterable, entries, fn, that, ITERATOR){
var iterFn = ITERATOR ? function(){ return iterable; } : getIterFn(iterable)
, f = ctx(fn, that, entries ? 2 : 1)
, index = 0
, length, step, iterator, result;
if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');
// fast case for arrays with default iterator
if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){
result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
if(result === BREAK || result === RETURN)return result;
} else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
result = call(iterator, f, step.value, entries);
if(result === BREAK || result === RETURN)return result;
}
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;
/***/ },
/* 37 */
/***/ function(module, exports) {
module.exports = {};
/***/ },
/* 38 */
/***/ function(module, exports) {
module.exports = false;
/***/ },
/* 39 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(110)
, hiddenKeys = __webpack_require__(68).concat('length', 'prototype');
exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O){
return $keys(O, hiddenKeys);
};
/***/ },
/* 40 */
/***/ function(module, exports, __webpack_require__) {
var redefine = __webpack_require__(18);
module.exports = function(target, src, safe){
for(var key in src)redefine(target, key, src[key], safe);
return target;
};
/***/ },
/* 41 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var global = __webpack_require__(3)
, dP = __webpack_require__(7)
, DESCRIPTORS = __webpack_require__(8)
, SPECIES = __webpack_require__(6)('species');
module.exports = function(KEY){
var C = global[KEY];
if(DESCRIPTORS && C && !C[SPECIES])dP.f(C, SPECIES, {
configurable: true,
get: function(){ return this; }
});
};
/***/ },
/* 42 */
/***/ function(module, exports, __webpack_require__) {
var toInteger = __webpack_require__(34)
, max = Math.max
, min = Math.min;
module.exports = function(index, length){
index = toInteger(index);
return index < 0 ? max(index + length, 0) : min(index, length);
};
/***/ },
/* 43 */
/***/ function(module, exports) {
var id = 0
, px = Math.random();
module.exports = function(key){
return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};
/***/ },
/* 44 */
/***/ function(module, exports, __webpack_require__) {
// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(6)('unscopables')
, ArrayProto = Array.prototype;
if(ArrayProto[UNSCOPABLES] == undefined)__webpack_require__(14)(ArrayProto, UNSCOPABLES, {});
module.exports = function(key){
ArrayProto[UNSCOPABLES][key] = true;
};
/***/ },
/* 45 */
/***/ function(module, exports, __webpack_require__) {
var def = __webpack_require__(7).f
, has = __webpack_require__(10)
, TAG = __webpack_require__(6)('toStringTag');
module.exports = function(it, tag, stat){
if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
};
/***/ },
/* 46 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, defined = __webpack_require__(21)
, fails = __webpack_require__(4)
, spaces = __webpack_require__(88)
, space = '[' + spaces + ']'
, non = '\u200b\u0085'
, ltrim = RegExp('^' + space + space + '*')
, rtrim = RegExp(space + space + '*$');
var exporter = function(KEY, exec, ALIAS){
var exp = {};
var FORCE = fails(function(){
return !!spaces[KEY]() || non[KEY]() != non;
});
var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
if(ALIAS)exp[ALIAS] = fn;
$export($export.P + $export.F * FORCE, 'String', exp);
};
// 1 -> String#trimLeft
// 2 -> String#trimRight
// 3 -> String#trim
var trim = exporter.trim = function(string, TYPE){
string = String(defined(string));
if(TYPE & 1)string = string.replace(ltrim, '');
if(TYPE & 2)string = string.replace(rtrim, '');
return string;
};
module.exports = exporter;
/***/ },
/* 47 */
/***/ function(module, exports, __webpack_require__) {
// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(20);
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
return cof(it) == 'String' ? it.split('') : Object(it);
};
/***/ },
/* 48 */
/***/ function(module, exports) {
exports.f = {}.propertyIsEnumerable;
/***/ },
/* 49 */
/***/ function(module, exports, __webpack_require__) {
var classof = __webpack_require__(35)
, ITERATOR = __webpack_require__(6)('iterator')
, Iterators = __webpack_require__(37);
module.exports = __webpack_require__(15).getIteratorMethod = function(it){
if(it != undefined)return it[ITERATOR]
|| it['@@iterator']
|| Iterators[classof(it)];
};
/***/ },
/* 50 */
/***/ function(module, exports, __webpack_require__) {
// false -> Array#indexOf
// true -> Array#includes
var toIObject = __webpack_require__(12)
, toLength = __webpack_require__(9)
, toIndex = __webpack_require__(42);
module.exports = function(IS_INCLUDES){
return function($this, el, fromIndex){
var O = toIObject($this)
, length = toLength(O.length)
, index = toIndex(fromIndex, length)
, value;
// Array#includes uses SameValueZero equality algorithm
if(IS_INCLUDES && el != el)while(length > index){
value = O[index++];
if(value != value)return true;
// Array#toIndex ignores holes, Array#includes - not
} else for(;length > index; index++)if(IS_INCLUDES || index in O){
if(O[index] === el)return IS_INCLUDES || index || 0;
} return !IS_INCLUDES && -1;
};
};
/***/ },
/* 51 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var global = __webpack_require__(3)
, $export = __webpack_require__(1)
, redefine = __webpack_require__(18)
, redefineAll = __webpack_require__(40)
, meta = __webpack_require__(32)
, forOf = __webpack_require__(36)
, anInstance = __webpack_require__(31)
, isObject = __webpack_require__(5)
, fails = __webpack_require__(4)
, $iterDetect = __webpack_require__(58)
, setToStringTag = __webpack_require__(45)
, inheritIfRequired = __webpack_require__(71);
module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
var Base = global[NAME]
, C = Base
, ADDER = IS_MAP ? 'set' : 'add'
, proto = C && C.prototype
, O = {};
var fixMethod = function(KEY){
var fn = proto[KEY];
redefine(proto, KEY,
KEY == 'delete' ? function(a){
return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
} : KEY == 'has' ? function has(a){
return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
} : KEY == 'get' ? function get(a){
return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);
} : KEY == 'add' ? function add(a){ fn.call(this, a === 0 ? 0 : a); return this; }
: function set(a, b){ fn.call(this, a === 0 ? 0 : a, b); return this; }
);
};
if(typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
new C().entries().next();
}))){
// create collection constructor
C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
redefineAll(C.prototype, methods);
meta.NEED = true;
} else {
var instance = new C
// early implementations not supports chaining
, HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance
// V8 ~ Chromium 40- weak-collections throws on primitives, but should return false
, THROWS_ON_PRIMITIVES = fails(function(){ instance.has(1); })
// most early implementations doesn't supports iterables, most modern - not close it correctly
, ACCEPT_ITERABLES = $iterDetect(function(iter){ new C(iter); }) // eslint-disable-line no-new
// for early implementations -0 and +0 not the same
, BUGGY_ZERO = !IS_WEAK && fails(function(){
// V8 ~ Chromium 42- fails only with 5+ elements
var $instance = new C()
, index = 5;
while(index--)$instance[ADDER](index, index);
return !$instance.has(-0);
});
if(!ACCEPT_ITERABLES){
C = wrapper(function(target, iterable){
anInstance(target, C, NAME);
var that = inheritIfRequired(new Base, target, C);
if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
return that;
});
C.prototype = proto;
proto.constructor = C;
}
if(THROWS_ON_PRIMITIVES || BUGGY_ZERO){
fixMethod('delete');
fixMethod('has');
IS_MAP && fixMethod('get');
}
if(BUGGY_ZERO || HASNT_CHAINING)fixMethod(ADDER);
// weak collections should not contains .clear method
if(IS_WEAK && proto.clear)delete proto.clear;
}
setToStringTag(C, NAME);
O[NAME] = C;
$export($export.G + $export.W + $export.F * (C != Base), O);
if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
return C;
};
/***/ },
/* 52 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var hide = __webpack_require__(14)
, redefine = __webpack_require__(18)
, fails = __webpack_require__(4)
, defined = __webpack_require__(21)
, wks = __webpack_require__(6);
module.exports = function(KEY, length, exec){
var SYMBOL = wks(KEY)
, fns = exec(defined, SYMBOL, ''[KEY])
, strfn = fns[0]
, rxfn = fns[1];
if(fails(function(){
var O = {};
O[SYMBOL] = function(){ return 7; };
return ''[KEY](O) != 7;
})){
redefine(String.prototype, KEY, strfn);
hide(RegExp.prototype, SYMBOL, length == 2
// 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
// 21.2.5.11 RegExp.prototype[@@split](string, limit)
? function(string, arg){ return rxfn.call(string, this, arg); }
// 21.2.5.6 RegExp.prototype[@@match](string)
// 21.2.5.9 RegExp.prototype[@@search](string)
: function(string){ return rxfn.call(string, this); }
);
}
};
/***/ },
/* 53 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(2);
module.exports = function(){
var that = anObject(this)
, result = '';
if(that.global) result += 'g';
if(that.ignoreCase) result += 'i';
if(that.multiline) result += 'm';
if(that.unicode) result += 'u';
if(that.sticky) result += 'y';
return result;
};
/***/ },
/* 54 */
/***/ function(module, exports) {
// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function(fn, args, that){
var un = that === undefined;
switch(args.length){
case 0: return un ? fn()
: fn.call(that);
case 1: return un ? fn(args[0])
: fn.call(that, args[0]);
case 2: return un ? fn(args[0], args[1])
: fn.call(that, args[0], args[1]);
case 3: return un ? fn(args[0], args[1], args[2])
: fn.call(that, args[0], args[1], args[2]);
case 4: return un ? fn(args[0], args[1], args[2], args[3])
: fn.call(that, args[0], args[1], args[2], args[3]);
} return fn.apply(that, args);
};
/***/ },
/* 55 */
/***/ function(module, exports, __webpack_require__) {
// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(5)
, cof = __webpack_require__(20)
, MATCH = __webpack_require__(6)('match');
module.exports = function(it){
var isRegExp;
return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};
/***/ },
/* 56 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var create = __webpack_require__(28)
, descriptor = __webpack_require__(29)
, setToStringTag = __webpack_require__(45)
, IteratorPrototype = {};
// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(14)(IteratorPrototype, __webpack_require__(6)('iterator'), function(){ return this; });
module.exports = function(Constructor, NAME, next){
Constructor.prototype = create(IteratorPrototype, {next: descriptor(1, next)});
setToStringTag(Constructor, NAME + ' Iterator');
};
/***/ },
/* 57 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var LIBRARY = __webpack_require__(38)
, $export = __webpack_require__(1)
, redefine = __webpack_require__(18)
, hide = __webpack_require__(14)
, has = __webpack_require__(10)
, Iterators = __webpack_require__(37)
, $iterCreate = __webpack_require__(56)
, setToStringTag = __webpack_require__(45)
, getPrototypeOf = __webpack_require__(17)
, ITERATOR = __webpack_require__(6)('iterator')
, BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
, FF_ITERATOR = '@@iterator'
, KEYS = 'keys'
, VALUES = 'values';
var returnThis = function(){ return this; };
module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
$iterCreate(Constructor, NAME, next);
var getMethod = function(kind){
if(!BUGGY && kind in proto)return proto[kind];
switch(kind){
case KEYS: return function keys(){ return new Constructor(this, kind); };
case VALUES: return function values(){ return new Constructor(this, kind); };
} return function entries(){ return new Constructor(this, kind); };
};
var TAG = NAME + ' Iterator'
, DEF_VALUES = DEFAULT == VALUES
, VALUES_BUG = false
, proto = Base.prototype
, $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
, $default = $native || getMethod(DEFAULT)
, $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined
, $anyNative = NAME == 'Array' ? proto.entries || $native : $native
, methods, key, IteratorPrototype;
// Fix native
if($anyNative){
IteratorPrototype = getPrototypeOf($anyNative.call(new Base));
if(IteratorPrototype !== Object.prototype){
// Set @@toStringTag to native iterators
setToStringTag(IteratorPrototype, TAG, true);
// fix for some old engines
if(!LIBRARY && !has(IteratorPrototype, ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
}
}
// fix Array#{values, @@iterator}.name in V8 / FF
if(DEF_VALUES && $native && $native.name !== VALUES){
VALUES_BUG = true;
$default = function values(){ return $native.call(this); };
}
// Define iterator
if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
hide(proto, ITERATOR, $default);
}
// Plug for library
Iterators[NAME] = $default;
Iterators[TAG] = returnThis;
if(DEFAULT){
methods = {
values: DEF_VALUES ? $default : getMethod(VALUES),
keys: IS_SET ? $default : getMethod(KEYS),
entries: $entries
};
if(FORCED)for(key in methods){
if(!(key in proto))redefine(proto, key, methods[key]);
} else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
}
return methods;
};
/***/ },
/* 58 */
/***/ function(module, exports, __webpack_require__) {
var ITERATOR = __webpack_require__(6)('iterator')
, SAFE_CLOSING = false;
try {
var riter = [7][ITERATOR]();
riter['return'] = function(){ SAFE_CLOSING = true; };
Array.from(riter, function(){ throw 2; });
} catch(e){ /* empty */ }
module.exports = function(exec, skipClosing){
if(!skipClosing && !SAFE_CLOSING)return false;
var safe = false;
try {
var arr = [7]
, iter = arr[ITERATOR]();
iter.next = function(){ return {done: safe = true}; };
arr[ITERATOR] = function(){ return iter; };
exec(arr);
} catch(e){ /* empty */ }
return safe;
};
/***/ },
/* 59 */
/***/ function(module, exports, __webpack_require__) {
// Forced replacement prototype accessors methods
module.exports = __webpack_require__(38)|| !__webpack_require__(4)(function(){
var K = Math.random();
// In FF throws only define methods
__defineSetter__.call(null, K, function(){ /* empty */});
delete __webpack_require__(3)[K];
});
/***/ },
/* 60 */
/***/ function(module, exports) {
exports.f = Object.getOwnPropertySymbols;
/***/ },
/* 61 */
/***/ function(module, exports, __webpack_require__) {
// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(5)
, anObject = __webpack_require__(2);
var check = function(O, proto){
anObject(O);
if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
function(test, buggy, set){
try {
set = __webpack_require__(24)(Function.call, __webpack_require__(16).f(Object.prototype, '__proto__').set, 2);
set(test, []);
buggy = !(test instanceof Array);
} catch(e){ buggy = true; }
return function setPrototypeOf(O, proto){
check(O, proto);
if(buggy)O.__proto__ = proto;
else set(O, proto);
return O;
};
}({}, false) : undefined),
check: check
};
/***/ },
/* 62 */
/***/ function(module, exports, __webpack_require__) {
var global = __webpack_require__(3)
, SHARED = '__core-js_shared__'
, store = global[SHARED] || (global[SHARED] = {});
module.exports = function(key){
return store[key] || (store[key] = {});
};
/***/ },
/* 63 */
/***/ function(module, exports, __webpack_require__) {
var global = __webpack_require__(3)
, hide = __webpack_require__(14)
, uid = __webpack_require__(43)
, TYPED = uid('typed_array')
, VIEW = uid('view')
, ABV = !!(global.ArrayBuffer && global.DataView)
, CONSTR = ABV
, i = 0, l = 9, Typed;
var TypedArrayConstructors = (
'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'
).split(',');
while(i < l){
if(Typed = global[TypedArrayConstructors[i++]]){
hide(Typed.prototype, TYPED, true);
hide(Typed.prototype, VIEW, true);
} else CONSTR = false;
}
module.exports = {
ABV: ABV,
CONSTR: CONSTR,
TYPED: TYPED,
VIEW: VIEW
};
/***/ },
/* 64 */
/***/ function(module, exports) {
"use strict";
var _typeof2 = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
Object.defineProperty(exports, "__esModule", {
value: true
});
var _typeof = typeof Symbol === "function" && _typeof2(Symbol.iterator) === "symbol" ? function (obj) {
return typeof obj === "undefined" ? "undefined" : _typeof2(obj);
} : function (obj) {
return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof2(obj);
};
/**
* Gets the offset in a canvas
* @param {object} elem the canvas element
* @returns {{left: number, top: number}}
*/
function getOffset(elem) {
var offsetLeft = elem.offsetLeft;
var offsetTop = elem.offsetTop;
if (elem.offsetParent) {
var offset = getOffset(elem.offsetParent);
offsetLeft = offset.left;
offsetTop = offset.top;
}
return {
left: offsetLeft,
top: offsetTop
};
}
/**
* Remove undefined keys and return a POJO;
* @param {object} obj - the object to prune
* @returns {object} the pruned object
**/
function prune() {
var obj = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
var newObj = (typeof obj === "undefined" ? "undefined" : _typeof(obj)) === "object" ? obj : {};
return Object.keys(newObj).reduce(function (pojo, key) {
if (typeof newObj[key] !== "undefined") {
pojo[key] = newObj[key];
}
return pojo;
}, {});
}
exports.getOffset = getOffset;
exports.prune = prune;
//# sourceMappingURL=utilities.js.map
/***/ },
/* 65 */
/***/ function(module, exports, __webpack_require__) {
// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
'use strict';
var toObject = __webpack_require__(11)
, toIndex = __webpack_require__(42)
, toLength = __webpack_require__(9);
module.exports = function fill(value /*, start = 0, end = @length */){
var O = toObject(this)
, length = toLength(O.length)
, aLen = arguments.length
, index = toIndex(aLen > 1 ? arguments[1] : undefined, length)
, end = aLen > 2 ? arguments[2] : undefined
, endPos = end === undefined ? length : toIndex(end, length);
while(endPos > index)O[index++] = value;
return O;
};
/***/ },
/* 66 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $defineProperty = __webpack_require__(7)
, createDesc = __webpack_require__(29);
module.exports = function(object, index, value){
if(index in object)$defineProperty.f(object, index, createDesc(0, value));
else object[index] = value;
};
/***/ },
/* 67 */
/***/ function(module, exports, __webpack_require__) {
var isObject = __webpack_require__(5)
, document = __webpack_require__(3).document
// in old IE typeof document.createElement is 'object'
, is = isObject(document) && isObject(document.createElement);
module.exports = function(it){
return is ? document.createElement(it) : {};
};
/***/ },
/* 68 */
/***/ function(module, exports) {
// IE 8- don't enum bug keys
module.exports = (
'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');
/***/ },
/* 69 */
/***/ function(module, exports, __webpack_require__) {
var MATCH = __webpack_require__(6)('match');
module.exports = function(KEY){
var re = /./;
try {
'/./'[KEY](re);
} catch(e){
try {
re[MATCH] = false;
return !'/./'[KEY](re);
} catch(f){ /* empty */ }
} return true;
};
/***/ },
/* 70 */
/***/ function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(3).document && document.documentElement;
/***/ },
/* 71 */
/***/ function(module, exports, __webpack_require__) {
var isObject = __webpack_require__(5)
, setPrototypeOf = __webpack_require__(61).set;
module.exports = function(that, target, C){
var P, S = target.constructor;
if(S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf){
setPrototypeOf(that, P);
} return that;
};
/***/ },
/* 72 */
/***/ function(module, exports, __webpack_require__) {
// check on default Array iterator
var Iterators = __webpack_require__(37)
, ITERATOR = __webpack_require__(6)('iterator')
, ArrayProto = Array.prototype;
module.exports = function(it){
return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};
/***/ },
/* 73 */
/***/ function(module, exports, __webpack_require__) {
// 7.2.2 IsArray(argument)
var cof = __webpack_require__(20);
module.exports = Array.isArray || function isArray(arg){
return cof(arg) == 'Array';
};
/***/ },
/* 74 */
/***/ function(module, exports, __webpack_require__) {
// 20.1.2.3 Number.isInteger(number)
var isObject = __webpack_require__(5)
, floor = Math.floor;
module.exports = function isInteger(it){
return !isObject(it) && isFinite(it) && floor(it) === it;
};
/***/ },
/* 75 */
/***/ function(module, exports) {
module.exports = function(done, value){
return {value: value, done: !!done};
};
/***/ },
/* 76 */
/***/ function(module, exports) {
// 20.2.2.14 Math.expm1(x)
var $expm1 = Math.expm1;
module.exports = (!$expm1
// Old FF bug
|| $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168
// Tor Browser bug
|| $expm1(-2e-17) != -2e-17
) ? function expm1(x){
return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
} : $expm1;
/***/ },
/* 77 */
/***/ function(module, exports) {
// 20.2.2.28 Math.sign(x)
module.exports = Math.sign || function sign(x){
return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;
};
/***/ },
/* 78 */
/***/ function(module, exports, __webpack_require__) {
var global = __webpack_require__(3)
, macrotask = __webpack_require__(89).set
, Observer = global.MutationObserver || global.WebKitMutationObserver
, process = global.process
, Promise = global.Promise
, isNode = __webpack_require__(20)(process) == 'process';
module.exports = function(){
var head, last, notify;
var flush = function(){
var parent, fn;
if(isNode && (parent = process.domain))parent.exit();
while(head){
fn = head.fn;
head = head.next;
try {
fn();
} catch(e){
if(head)notify();
else last = undefined;
throw e;
}
} last = undefined;
if(parent)parent.enter();
};
// Node.js
if(isNode){
notify = function(){
process.nextTick(flush);
};
// browsers with MutationObserver
} else if(Observer){
var toggle = true
, node = document.createTextNode('');
new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new
notify = function(){
node.data = toggle = !toggle;
};
// environments with maybe non-completely correct, but existent Promise
} else if(Promise && Promise.resolve){
var promise = Promise.resolve();
notify = function(){
promise.then(flush);
};
// for other environments - macrotask based on:
// - setImmediate
// - MessageChannel
// - window.postMessag
// - onreadystatechange
// - setTimeout
} else {
notify = function(){
// strange IE + webpack dev server bug - use .call(global)
macrotask.call(global, flush);
};
}
return function(fn){
var task = {fn: fn, next: undefined};
if(last)last.next = task;
if(!head){
head = task;
notify();
} last = task;
};
};
/***/ },
/* 79 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// 19.1.2.1 Object.assign(target, source, ...)
var getKeys = __webpack_require__(33)
, gOPS = __webpack_require__(60)
, pIE = __webpack_require__(48)
, toObject = __webpack_require__(11)
, IObject = __webpack_require__(47)
, $assign = Object.assign;
// should work with symbols and should have deterministic property order (V8 bug)
module.exports = !$assign || __webpack_require__(4)(function(){
var A = {}
, B = {}
, S = Symbol()
, K = 'abcdefghijklmnopqrst';
A[S] = 7;
K.split('').forEach(function(k){ B[k] = k; });
return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
}) ? function assign(target, source){ // eslint-disable-line no-unused-vars
var T = toObject(target)
, aLen = arguments.length
, index = 1
, getSymbols = gOPS.f
, isEnum = pIE.f;
while(aLen > index){
var S = IObject(arguments[index++])
, keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)
, length = keys.length
, j = 0
, key;
while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];
} return T;
} : $assign;
/***/ },
/* 80 */
/***/ function(module, exports, __webpack_require__) {
// all object keys, includes non-enumerable and symbols
var gOPN = __webpack_require__(39)
, gOPS = __webpack_require__(60)
, anObject = __webpack_require__(2)
, Reflect = __webpack_require__(3).Reflect;
module.exports = Reflect && Reflect.ownKeys || function ownKeys(it){
var keys = gOPN.f(anObject(it))
, getSymbols = gOPS.f;
return getSymbols ? keys.concat(getSymbols(it)) : keys;
};
/***/ },
/* 81 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var path = __webpack_require__(114)
, invoke = __webpack_require__(54)
, aFunction = __webpack_require__(13);
module.exports = function(/* ...pargs */){
var fn = aFunction(this)
, length = arguments.length
, pargs = Array(length)
, i = 0
, _ = path._
, holder = false;
while(length > i)if((pargs[i] = arguments[i++]) === _)holder = true;
return function(/* ...args */){
var that = this
, aLen = arguments.length
, j = 0, k = 0, args;
if(!holder && !aLen)return invoke(fn, pargs, that);
args = pargs.slice();
if(holder)for(;length > j; j++)if(args[j] === _)args[j] = arguments[k++];
while(aLen > k)args.push(arguments[k++]);
return invoke(fn, args, that);
};
};
/***/ },
/* 82 */
/***/ function(module, exports) {
module.exports = function(regExp, replace){
var replacer = replace === Object(replace) ? function(part){
return replace[part];
} : replace;
return function(it){
return String(it).replace(regExp, replacer);
};
};
/***/ },
/* 83 */
/***/ function(module, exports, __webpack_require__) {
var shared = __webpack_require__(62)('keys')
, uid = __webpack_require__(43);
module.exports = function(key){
return shared[key] || (shared[key] = uid(key));
};
/***/ },
/* 84 */
/***/ function(module, exports, __webpack_require__) {
// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(2)
, aFunction = __webpack_require__(13)
, SPECIES = __webpack_require__(6)('species');
module.exports = function(O, D){
var C = anObject(O).constructor, S;
return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};
/***/ },
/* 85 */
/***/ function(module, exports, __webpack_require__) {
var toInteger = __webpack_require__(34)
, defined = __webpack_require__(21);
// true -> String#at
// false -> String#codePointAt
module.exports = function(TO_STRING){
return function(that, pos){
var s = String(defined(that))
, i = toInteger(pos)
, l = s.length
, a, b;
if(i < 0 || i >= l)return TO_STRING ? '' : undefined;
a = s.charCodeAt(i);
return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
? TO_STRING ? s.charAt(i) : a
: TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
};
};
/***/ },
/* 86 */
/***/ function(module, exports, __webpack_require__) {
// helper for String#{startsWith, endsWith, includes}
var isRegExp = __webpack_require__(55)
, defined = __webpack_require__(21);
module.exports = function(that, searchString, NAME){
if(isRegExp(searchString))throw TypeError('String#' + NAME + " doesn't accept regex!");
return String(defined(that));
};
/***/ },
/* 87 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var toInteger = __webpack_require__(34)
, defined = __webpack_require__(21);
module.exports = function repeat(count){
var str = String(defined(this))
, res = ''
, n = toInteger(count);
if(n < 0 || n == Infinity)throw RangeError("Count can't be negative");
for(;n > 0; (n >>>= 1) && (str += str))if(n & 1)res += str;
return res;
};
/***/ },
/* 88 */
/***/ function(module, exports) {
module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
'\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
/***/ },
/* 89 */
/***/ function(module, exports, __webpack_require__) {
var ctx = __webpack_require__(24)
, invoke = __webpack_require__(54)
, html = __webpack_require__(70)
, cel = __webpack_require__(67)
, global = __webpack_require__(3)
, process = global.process
, setTask = global.setImmediate
, clearTask = global.clearImmediate
, MessageChannel = global.MessageChannel
, counter = 0
, queue = {}
, ONREADYSTATECHANGE = 'onreadystatechange'
, defer, channel, port;
var run = function(){
var id = +this;
if(queue.hasOwnProperty(id)){
var fn = queue[id];
delete queue[id];
fn();
}
};
var listener = function(event){
run.call(event.data);
};
// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if(!setTask || !clearTask){
setTask = function setImmediate(fn){
var args = [], i = 1;
while(arguments.length > i)args.push(arguments[i++]);
queue[++counter] = function(){
invoke(typeof fn == 'function' ? fn : Function(fn), args);
};
defer(counter);
return counter;
};
clearTask = function clearImmediate(id){
delete queue[id];
};
// Node.js 0.8-
if(__webpack_require__(20)(process) == 'process'){
defer = function(id){
process.nextTick(ctx(run, id, 1));
};
// Browsers with MessageChannel, includes WebWorkers
} else if(MessageChannel){
channel = new MessageChannel;
port = channel.port2;
channel.port1.onmessage = listener;
defer = ctx(port.postMessage, port, 1);
// Browsers with postMessage, skip WebWorkers
// IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
} else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){
defer = function(id){
global.postMessage(id + '', '*');
};
global.addEventListener('message', listener, false);
// IE8-
} else if(ONREADYSTATECHANGE in cel('script')){
defer = function(id){
html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){
html.removeChild(this);
run.call(id);
};
};
// Rest old browsers
} else {
defer = function(id){
setTimeout(ctx(run, id, 1), 0);
};
}
}
module.exports = {
set: setTask,
clear: clearTask
};
/***/ },
/* 90 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var global = __webpack_require__(3)
, DESCRIPTORS = __webpack_require__(8)
, LIBRARY = __webpack_require__(38)
, $typed = __webpack_require__(63)
, hide = __webpack_require__(14)
, redefineAll = __webpack_require__(40)
, fails = __webpack_require__(4)
, anInstance = __webpack_require__(31)
, toInteger = __webpack_require__(34)
, toLength = __webpack_require__(9)
, gOPN = __webpack_require__(39).f
, dP = __webpack_require__(7).f
, arrayFill = __webpack_require__(65)
, setToStringTag = __webpack_require__(45)
, ARRAY_BUFFER = 'ArrayBuffer'
, DATA_VIEW = 'DataView'
, PROTOTYPE = 'prototype'
, WRONG_LENGTH = 'Wrong length!'
, WRONG_INDEX = 'Wrong index!'
, $ArrayBuffer = global[ARRAY_BUFFER]
, $DataView = global[DATA_VIEW]
, Math = global.Math
, parseInt = global.parseInt
, RangeError = global.RangeError
, Infinity = global.Infinity
, BaseBuffer = $ArrayBuffer
, abs = Math.abs
, pow = Math.pow
, min = Math.min
, floor = Math.floor
, log = Math.log
, LN2 = Math.LN2
, BUFFER = 'buffer'
, BYTE_LENGTH = 'byteLength'
, BYTE_OFFSET = 'byteOffset'
, $BUFFER = DESCRIPTORS ? '_b' : BUFFER
, $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH
, $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;
// IEEE754 conversions based on https://github.com/feross/ieee754
var packIEEE754 = function(value, mLen, nBytes){
var buffer = Array(nBytes)
, eLen = nBytes * 8 - mLen - 1
, eMax = (1 << eLen) - 1
, eBias = eMax >> 1
, rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0
, i = 0
, s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0
, e, m, c;
value = abs(value)
if(value != value || value === Infinity){
m = value != value ? 1 : 0;
e = eMax;
} else {
e = floor(log(value) / LN2);
if(value * (c = pow(2, -e)) < 1){
e--;
c *= 2;
}
if(e + eBias >= 1){
value += rt / c;
} else {
value += rt * pow(2, 1 - eBias);
}
if(value * c >= 2){
e++;
c /= 2;
}
if(e + eBias >= eMax){
m = 0;
e = eMax;
} else if(e + eBias >= 1){
m = (value * c - 1) * pow(2, mLen);
e = e + eBias;
} else {
m = value * pow(2, eBias - 1) * pow(2, mLen);
e = 0;
}
}
for(; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);
e = e << mLen | m;
eLen += mLen;
for(; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);
buffer[--i] |= s * 128;
return buffer;
};
var unpackIEEE754 = function(buffer, mLen, nBytes){
var eLen = nBytes * 8 - mLen - 1
, eMax = (1 << eLen) - 1
, eBias = eMax >> 1
, nBits = eLen - 7
, i = nBytes - 1
, s = buffer[i--]
, e = s & 127
, m;
s >>= 7;
for(; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);
m = e & (1 << -nBits) - 1;
e >>= -nBits;
nBits += mLen;
for(; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);
if(e === 0){
e = 1 - eBias;
} else if(e === eMax){
return m ? NaN : s ? -Infinity : Infinity;
} else {
m = m + pow(2, mLen);
e = e - eBias;
} return (s ? -1 : 1) * m * pow(2, e - mLen);
};
var unpackI32 = function(bytes){
return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];
};
var packI8 = function(it){
return [it & 0xff];
};
var packI16 = function(it){
return [it & 0xff, it >> 8 & 0xff];
};
var packI32 = function(it){
return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];
};
var packF64 = function(it){
return packIEEE754(it, 52, 8);
};
var packF32 = function(it){
return packIEEE754(it, 23, 4);
};
var addGetter = function(C, key, internal){
dP(C[PROTOTYPE], key, {get: function(){ return this[internal]; }});
};
var get = function(view, bytes, index, isLittleEndian){
var numIndex = +index
, intIndex = toInteger(numIndex);
if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view[$LENGTH])throw RangeError(WRONG_INDEX);
var store = view[$BUFFER]._b
, start = intIndex + view[$OFFSET]
, pack = store.slice(start, start + bytes);
return isLittleEndian ? pack : pack.reverse();
};
var set = function(view, bytes, index, conversion, value, isLittleEndian){
var numIndex = +index
, intIndex = toInteger(numIndex);
if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view[$LENGTH])throw RangeError(WRONG_INDEX);
var store = view[$BUFFER]._b
, start = intIndex + view[$OFFSET]
, pack = conversion(+value);
for(var i = 0; i < bytes; i++)store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];
};
var validateArrayBufferArguments = function(that, length){
anInstance(that, $ArrayBuffer, ARRAY_BUFFER);
var numberLength = +length
, byteLength = toLength(numberLength);
if(numberLength != byteLength)throw RangeError(WRONG_LENGTH);
return byteLength;
};
if(!$typed.ABV){
$ArrayBuffer = function ArrayBuffer(length){
var byteLength = validateArrayBufferArguments(this, length);
this._b = arrayFill.call(Array(byteLength), 0);
this[$LENGTH] = byteLength;
};
$DataView = function DataView(buffer, byteOffset, byteLength){
anInstance(this, $DataView, DATA_VIEW);
anInstance(buffer, $ArrayBuffer, DATA_VIEW);
var bufferLength = buffer[$LENGTH]
, offset = toInteger(byteOffset);
if(offset < 0 || offset > bufferLength)throw RangeError('Wrong offset!');
byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
if(offset + byteLength > bufferLength)throw RangeError(WRONG_LENGTH);
this[$BUFFER] = buffer;
this[$OFFSET] = offset;
this[$LENGTH] = byteLength;
};
if(DESCRIPTORS){
addGetter($ArrayBuffer, BYTE_LENGTH, '_l');
addGetter($DataView, BUFFER, '_b');
addGetter($DataView, BYTE_LENGTH, '_l');
addGetter($DataView, BYTE_OFFSET, '_o');
}
redefineAll($DataView[PROTOTYPE], {
getInt8: function getInt8(byteOffset){
return get(this, 1, byteOffset)[0] << 24 >> 24;
},
getUint8: function getUint8(byteOffset){
return get(this, 1, byteOffset)[0];
},
getInt16: function getInt16(byteOffset /*, littleEndian */){
var bytes = get(this, 2, byteOffset, arguments[1]);
return (bytes[1] << 8 | bytes[0]) << 16 >> 16;
},
getUint16: function getUint16(byteOffset /*, littleEndian */){
var bytes = get(this, 2, byteOffset, arguments[1]);
return bytes[1] << 8 | bytes[0];
},
getInt32: function getInt32(byteOffset /*, littleEndian */){
return unpackI32(get(this, 4, byteOffset, arguments[1]));
},
getUint32: function getUint32(byteOffset /*, littleEndian */){
return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;
},
getFloat32: function getFloat32(byteOffset /*, littleEndian */){
return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);
},
getFloat64: function getFloat64(byteOffset /*, littleEndian */){
return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);
},
setInt8: function setInt8(byteOffset, value){
set(this, 1, byteOffset, packI8, value);
},
setUint8: function setUint8(byteOffset, value){
set(this, 1, byteOffset, packI8, value);
},
setInt16: function setInt16(byteOffset, value /*, littleEndian */){
set(this, 2, byteOffset, packI16, value, arguments[2]);
},
setUint16: function setUint16(byteOffset, value /*, littleEndian */){
set(this, 2, byteOffset, packI16, value, arguments[2]);
},
setInt32: function setInt32(byteOffset, value /*, littleEndian */){
set(this, 4, byteOffset, packI32, value, arguments[2]);
},
setUint32: function setUint32(byteOffset, value /*, littleEndian */){
set(this, 4, byteOffset, packI32, value, arguments[2]);
},
setFloat32: function setFloat32(byteOffset, value /*, littleEndian */){
set(this, 4, byteOffset, packF32, value, arguments[2]);
},
setFloat64: function setFloat64(byteOffset, value /*, littleEndian */){
set(this, 8, byteOffset, packF64, value, arguments[2]);
}
});
} else {
if(!fails(function(){
new $ArrayBuffer; // eslint-disable-line no-new
}) || !fails(function(){
new $ArrayBuffer(.5); // eslint-disable-line no-new
})){
$ArrayBuffer = function ArrayBuffer(length){
return new BaseBuffer(validateArrayBufferArguments(this, length));
};
var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];
for(var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j; ){
if(!((key = keys[j++]) in $ArrayBuffer))hide($ArrayBuffer, key, BaseBuffer[key]);
};
if(!LIBRARY)ArrayBufferProto.constructor = $ArrayBuffer;
}
// iOS Safari 7.x bug
var view = new $DataView(new $ArrayBuffer(2))
, $setInt8 = $DataView[PROTOTYPE].setInt8;
view.setInt8(0, 2147483648);
view.setInt8(1, 2147483649);
if(view.getInt8(0) || !view.getInt8(1))redefineAll($DataView[PROTOTYPE], {
setInt8: function setInt8(byteOffset, value){
$setInt8.call(this, byteOffset, value << 24 >> 24);
},
setUint8: function setUint8(byteOffset, value){
$setInt8.call(this, byteOffset, value << 24 >> 24);
}
}, true);
}
setToStringTag($ArrayBuffer, ARRAY_BUFFER);
setToStringTag($DataView, DATA_VIEW);
hide($DataView[PROTOTYPE], $typed.VIEW, true);
exports[ARRAY_BUFFER] = $ArrayBuffer;
exports[DATA_VIEW] = $DataView;
/***/ },
/* 91 */
/***/ function(module, exports, __webpack_require__) {
var global = __webpack_require__(3)
, core = __webpack_require__(15)
, LIBRARY = __webpack_require__(38)
, wksExt = __webpack_require__(117)
, defineProperty = __webpack_require__(7).f;
module.exports = function(name){
var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)});
};
/***/ },
/* 92 */
/***/ function(module, exports, __webpack_require__) {
var classof = __webpack_require__(35)
, ITERATOR = __webpack_require__(6)('iterator')
, Iterators = __webpack_require__(37);
module.exports = __webpack_require__(15).isIterable = function(it){
var O = Object(it);
return O[ITERATOR] !== undefined
|| '@@iterator' in O
|| Iterators.hasOwnProperty(classof(O));
};
/***/ },
/* 93 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var addToUnscopables = __webpack_require__(44)
, step = __webpack_require__(75)
, Iterators = __webpack_require__(37)
, toIObject = __webpack_require__(12);
// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(57)(Array, 'Array', function(iterated, kind){
this._t = toIObject(iterated); // target
this._i = 0; // next index
this._k = kind; // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function(){
var O = this._t
, kind = this._k
, index = this._i++;
if(!O || index >= O.length){
this._t = undefined;
return step(1);
}
if(kind == 'keys' )return step(0, index);
if(kind == 'values')return step(0, O[index]);
return step(0, [index, O[index]]);
}, 'values');
// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;
addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');
/***/ },
/* 94 */
/***/ function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.constants = undefined;
var _keymirror = __webpack_require__(316);
var _keymirror2 = _interopRequireDefault(_keymirror);
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : { default: obj };
}
var constants = exports.constants = (0, _keymirror2.default)({
CHANGE_EVENT: null,
DRAW_EVENT: null,
HISTORY_CHANGE: null,
IMAGE_LOADED: null,
IS_DRAGGING: null,
IS_CROPPING: null,
IS_ROTATING: null,
IS_SCALING: null,
IS_BUSY: null,
IS_SAVING: null,
IS_LOADING: null
});
//# sourceMappingURL=constants.js.map
/***/ },
/* 95 */
/***/ function(module, exports, __webpack_require__) {
var cof = __webpack_require__(20);
module.exports = function(it, msg){
if(typeof it != 'number' && cof(it) != 'Number')throw TypeError(msg);
return +it;
};
/***/ },
/* 96 */
/***/ function(module, exports, __webpack_require__) {
// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
'use strict';
var toObject = __webpack_require__(11)
, toIndex = __webpack_require__(42)
, toLength = __webpack_require__(9);
module.exports = [].copyWithin || function copyWithin(target/*= 0*/, start/*= 0, end = @length*/){
var O = toObject(this)
, len = toLength(O.length)
, to = toIndex(target, len)
, from = toIndex(start, len)
, end = arguments.length > 2 ? arguments[2] : undefined
, count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to)
, inc = 1;
if(from < to && to < from + count){
inc = -1;
from += count - 1;
to += count - 1;
}
while(count-- > 0){
if(from in O)O[to] = O[from];
else delete O[to];
to += inc;
from += inc;
} return O;
};
/***/ },
/* 97 */
/***/ function(module, exports, __webpack_require__) {
var forOf = __webpack_require__(36);
module.exports = function(iter, ITERATOR){
var result = [];
forOf(iter, false, result.push, result, ITERATOR);
return result;
};
/***/ },
/* 98 */
/***/ function(module, exports, __webpack_require__) {
var aFunction = __webpack_require__(13)
, toObject = __webpack_require__(11)
, IObject = __webpack_require__(47)
, toLength = __webpack_require__(9);
module.exports = function(that, callbackfn, aLen, memo, isRight){
aFunction(callbackfn);
var O = toObject(that)
, self = IObject(O)
, length = toLength(O.length)
, index = isRight ? length - 1 : 0
, i = isRight ? -1 : 1;
if(aLen < 2)for(;;){
if(index in self){
memo = self[index];
index += i;
break;
}
index += i;
if(isRight ? index < 0 : length <= index){
throw TypeError('Reduce of empty array with no initial value');
}
}
for(;isRight ? index >= 0 : length > index; index += i)if(index in self){
memo = callbackfn(memo, self[index], index, O);
}
return memo;
};
/***/ },
/* 99 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var aFunction = __webpack_require__(13)
, isObject = __webpack_require__(5)
, invoke = __webpack_require__(54)
, arraySlice = [].slice
, factories = {};
var construct = function(F, len, args){
if(!(len in factories)){
for(var n = [], i = 0; i < len; i++)n[i] = 'a[' + i + ']';
factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
} return factories[len](F, args);
};
module.exports = Function.bind || function bind(that /*, args... */){
var fn = aFunction(this)
, partArgs = arraySlice.call(arguments, 1);
var bound = function(/* args... */){
var args = partArgs.concat(arraySlice.call(arguments));
return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
};
if(isObject(fn.prototype))bound.prototype = fn.prototype;
return bound;
};
/***/ },
/* 100 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var dP = __webpack_require__(7).f
, create = __webpack_require__(28)
, hide = __webpack_require__(14)
, redefineAll = __webpack_require__(40)
, ctx = __webpack_require__(24)
, anInstance = __webpack_require__(31)
, defined = __webpack_require__(21)
, forOf = __webpack_require__(36)
, $iterDefine = __webpack_require__(57)
, step = __webpack_require__(75)
, setSpecies = __webpack_require__(41)
, DESCRIPTORS = __webpack_require__(8)
, fastKey = __webpack_require__(32).fastKey
, SIZE = DESCRIPTORS ? '_s' : 'size';
var getEntry = function(that, key){
// fast case
var index = fastKey(key), entry;
if(index !== 'F')return that._i[index];
// frozen object case
for(entry = that._f; entry; entry = entry.n){
if(entry.k == key)return entry;
}
};
module.exports = {
getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
var C = wrapper(function(that, iterable){
anInstance(that, C, NAME, '_i');
that._i = create(null); // index
that._f = undefined; // first entry
that._l = undefined; // last entry
that[SIZE] = 0; // size
if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
});
redefineAll(C.prototype, {
// 23.1.3.1 Map.prototype.clear()
// 23.2.3.2 Set.prototype.clear()
clear: function clear(){
for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){
entry.r = true;
if(entry.p)entry.p = entry.p.n = undefined;
delete data[entry.i];
}
that._f = that._l = undefined;
that[SIZE] = 0;
},
// 23.1.3.3 Map.prototype.delete(key)
// 23.2.3.4 Set.prototype.delete(value)
'delete': function(key){
var that = this
, entry = getEntry(that, key);
if(entry){
var next = entry.n
, prev = entry.p;
delete that._i[entry.i];
entry.r = true;
if(prev)prev.n = next;
if(next)next.p = prev;
if(that._f == entry)that._f = next;
if(that._l == entry)that._l = prev;
that[SIZE]--;
} return !!entry;
},
// 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
// 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
forEach: function forEach(callbackfn /*, that = undefined */){
anInstance(this, C, 'forEach');
var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)
, entry;
while(entry = entry ? entry.n : this._f){
f(entry.v, entry.k, this);
// revert to the last existing entry
while(entry && entry.r)entry = entry.p;
}
},
// 23.1.3.7 Map.prototype.has(key)
// 23.2.3.7 Set.prototype.has(value)
has: function has(key){
return !!getEntry(this, key);
}
});
if(DESCRIPTORS)dP(C.prototype, 'size', {
get: function(){
return defined(this[SIZE]);
}
});
return C;
},
def: function(that, key, value){
var entry = getEntry(that, key)
, prev, index;
// change existing entry
if(entry){
entry.v = value;
// create new entry
} else {
that._l = entry = {
i: index = fastKey(key, true), // <- index
k: key, // <- key
v: value, // <- value
p: prev = that._l, // <- previous entry
n: undefined, // <- next entry
r: false // <- removed
};
if(!that._f)that._f = entry;
if(prev)prev.n = entry;
that[SIZE]++;
// add to index
if(index !== 'F')that._i[index] = entry;
} return that;
},
getEntry: getEntry,
setStrong: function(C, NAME, IS_MAP){
// add .keys, .values, .entries, [@@iterator]
// 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
$iterDefine(C, NAME, function(iterated, kind){
this._t = iterated; // target
this._k = kind; // kind
this._l = undefined; // previous
}, function(){
var that = this
, kind = that._k
, entry = that._l;
// revert to the last existing entry
while(entry && entry.r)entry = entry.p;
// get next entry
if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){
// or finish the iteration
that._t = undefined;
return step(1);
}
// return step by kind
if(kind == 'keys' )return step(0, entry.k);
if(kind == 'values')return step(0, entry.v);
return step(0, [entry.k, entry.v]);
}, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);
// add [@@species], 23.1.2.2, 23.2.2.2
setSpecies(NAME);
}
};
/***/ },
/* 101 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/DavidBruant/Map-Set.prototype.toJSON
var classof = __webpack_require__(35)
, from = __webpack_require__(97);
module.exports = function(NAME){
return function toJSON(){
if(classof(this) != NAME)throw TypeError(NAME + "#toJSON isn't generic");
return from(this);
};
};
/***/ },
/* 102 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var redefineAll = __webpack_require__(40)
, getWeak = __webpack_require__(32).getWeak
, anObject = __webpack_require__(2)
, isObject = __webpack_require__(5)
, anInstance = __webpack_require__(31)
, forOf = __webpack_require__(36)
, createArrayMethod = __webpack_require__(23)
, $has = __webpack_require__(10)
, arrayFind = createArrayMethod(5)
, arrayFindIndex = createArrayMethod(6)
, id = 0;
// fallback for uncaught frozen keys
var uncaughtFrozenStore = function(that){
return that._l || (that._l = new UncaughtFrozenStore);
};
var UncaughtFrozenStore = function(){
this.a = [];
};
var findUncaughtFrozen = function(store, key){
return arrayFind(store.a, function(it){
return it[0] === key;
});
};
UncaughtFrozenStore.prototype = {
get: function(key){
var entry = findUncaughtFrozen(this, key);
if(entry)return entry[1];
},
has: function(key){
return !!findUncaughtFrozen(this, key);
},
set: function(key, value){
var entry = findUncaughtFrozen(this, key);
if(entry)entry[1] = value;
else this.a.push([key, value]);
},
'delete': function(key){
var index = arrayFindIndex(this.a, function(it){
return it[0] === key;
});
if(~index)this.a.splice(index, 1);
return !!~index;
}
};
module.exports = {
getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
var C = wrapper(function(that, iterable){
anInstance(that, C, NAME, '_i');
that._i = id++; // collection id
that._l = undefined; // leak store for uncaught frozen objects
if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
});
redefineAll(C.prototype, {
// 23.3.3.2 WeakMap.prototype.delete(key)
// 23.4.3.3 WeakSet.prototype.delete(value)
'delete': function(key){
if(!isObject(key))return false;
var data = getWeak(key);
if(data === true)return uncaughtFrozenStore(this)['delete'](key);
return data && $has(data, this._i) && delete data[this._i];
},
// 23.3.3.4 WeakMap.prototype.has(key)
// 23.4.3.4 WeakSet.prototype.has(value)
has: function has(key){
if(!isObject(key))return false;
var data = getWeak(key);
if(data === true)return uncaughtFrozenStore(this).has(key);
return data && $has(data, this._i);
}
});
return C;
},
def: function(that, key, value){
var data = getWeak(anObject(key), true);
if(data === true)uncaughtFrozenStore(that).set(key, value);
else data[that._i] = value;
return that;
},
ufstore: uncaughtFrozenStore
};
/***/ },
/* 103 */
/***/ function(module, exports, __webpack_require__) {
module.exports = !__webpack_require__(8) && !__webpack_require__(4)(function(){
return Object.defineProperty(__webpack_require__(67)('div'), 'a', {get: function(){ return 7; }}).a != 7;
});
/***/ },
/* 104 */
/***/ function(module, exports, __webpack_require__) {
// call something on iterator step with safe closing on error
var anObject = __webpack_require__(2);
module.exports = function(iterator, fn, value, entries){
try {
return entries ? fn(anObject(value)[0], value[1]) : fn(value);
// 7.4.6 IteratorClose(iterator, completion)
} catch(e){
var ret = iterator['return'];
if(ret !== undefined)anObject(ret.call(iterator));
throw e;
}
};
/***/ },
/* 105 */
/***/ function(module, exports, __webpack_require__) {
var getKeys = __webpack_require__(33)
, toIObject = __webpack_require__(12);
module.exports = function(object, el){
var O = toIObject(object)
, keys = getKeys(O)
, length = keys.length
, index = 0
, key;
while(length > index)if(O[key = keys[index++]] === el)return key;
};
/***/ },
/* 106 */
/***/ function(module, exports) {
// 20.2.2.20 Math.log1p(x)
module.exports = Math.log1p || function log1p(x){
return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);
};
/***/ },
/* 107 */
/***/ function(module, exports, __webpack_require__) {
var dP = __webpack_require__(7)
, gOPD = __webpack_require__(16)
, ownKeys = __webpack_require__(80)
, toIObject = __webpack_require__(12);
module.exports = function define(target, mixin){
var keys = ownKeys(toIObject(mixin))
, length = keys.length
, i = 0, key;
while(length > i)dP.f(target, key = keys[i++], gOPD.f(mixin, key));
return target;
};
/***/ },
/* 108 */
/***/ function(module, exports, __webpack_require__) {
var dP = __webpack_require__(7)
, anObject = __webpack_require__(2)
, getKeys = __webpack_require__(33);
module.exports = __webpack_require__(8) ? Object.defineProperties : function defineProperties(O, Properties){
anObject(O);
var keys = getKeys(Properties)
, length = keys.length
, i = 0
, P;
while(length > i)dP.f(O, P = keys[i++], Properties[P]);
return O;
};
/***/ },
/* 109 */
/***/ function(module, exports, __webpack_require__) {
// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(12)
, gOPN = __webpack_require__(39).f
, toString = {}.toString;
var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
? Object.getOwnPropertyNames(window) : [];
var getWindowNames = function(it){
try {
return gOPN(it);
} catch(e){
return windowNames.slice();
}
};
module.exports.f = function getOwnPropertyNames(it){
return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};
/***/ },
/* 110 */
/***/ function(module, exports, __webpack_require__) {
var has = __webpack_require__(10)
, toIObject = __webpack_require__(12)
, arrayIndexOf = __webpack_require__(50)(false)
, IE_PROTO = __webpack_require__(83)('IE_PROTO');
module.exports = function(object, names){
var O = toIObject(object)
, i = 0
, result = []
, key;
for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);
// Don't enum bug & hidden keys
while(names.length > i)if(has(O, key = names[i++])){
~arrayIndexOf(result, key) || result.push(key);
}
return result;
};
/***/ },
/* 111 */
/***/ function(module, exports, __webpack_require__) {
var getKeys = __webpack_require__(33)
, toIObject = __webpack_require__(12)
, isEnum = __webpack_require__(48).f;
module.exports = function(isEntries){
return function(it){
var O = toIObject(it)
, keys = getKeys(O)
, length = keys.length
, i = 0
, result = []
, key;
while(length > i)if(isEnum.call(O, key = keys[i++])){
result.push(isEntries ? [key, O[key]] : O[key]);
} return result;
};
};
/***/ },
/* 112 */
/***/ function(module, exports, __webpack_require__) {
var $parseFloat = __webpack_require__(3).parseFloat
, $trim = __webpack_require__(46).trim;
module.exports = 1 / $parseFloat(__webpack_require__(88) + '-0') !== -Infinity ? function parseFloat(str){
var string = $trim(String(str), 3)
, result = $parseFloat(string);
return result === 0 && string.charAt(0) == '-' ? -0 : result;
} : $parseFloat;
/***/ },
/* 113 */
/***/ function(module, exports, __webpack_require__) {
var $parseInt = __webpack_require__(3).parseInt
, $trim = __webpack_require__(46).trim
, ws = __webpack_require__(88)
, hex = /^[\-+]?0[xX]/;
module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix){
var string = $trim(String(str), 3);
return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
} : $parseInt;
/***/ },
/* 114 */
/***/ function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(3);
/***/ },
/* 115 */
/***/ function(module, exports) {
// 7.2.9 SameValue(x, y)
module.exports = Object.is || function is(x, y){
return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
};
/***/ },
/* 116 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/tc39/proposal-string-pad-start-end
var toLength = __webpack_require__(9)
, repeat = __webpack_require__(87)
, defined = __webpack_require__(21);
module.exports = function(that, maxLength, fillString, left){
var S = String(defined(that))
, stringLength = S.length
, fillStr = fillString === undefined ? ' ' : String(fillString)
, intMaxLength = toLength(maxLength);
if(intMaxLength <= stringLength || fillStr == '')return S;
var fillLen = intMaxLength - stringLength
, stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));
if(stringFiller.length > fillLen)stringFiller = stringFiller.slice(0, fillLen);
return left ? stringFiller + S : S + stringFiller;
};
/***/ },
/* 117 */
/***/ function(module, exports, __webpack_require__) {
exports.f = __webpack_require__(6);
/***/ },
/* 118 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var strong = __webpack_require__(100);
// 23.1 Map Objects
module.exports = __webpack_require__(51)('Map', function(get){
return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
}, {
// 23.1.3.6 Map.prototype.get(key)
get: function get(key){
var entry = strong.getEntry(this, key);
return entry && entry.v;
},
// 23.1.3.9 Map.prototype.set(key, value)
set: function set(key, value){
return strong.def(this, key === 0 ? 0 : key, value);
}
}, strong, true);
/***/ },
/* 119 */
/***/ function(module, exports, __webpack_require__) {
// 21.2.5.3 get RegExp.prototype.flags()
if(__webpack_require__(8) && /./g.flags != 'g')__webpack_require__(7).f(RegExp.prototype, 'flags', {
configurable: true,
get: __webpack_require__(53)
});
/***/ },
/* 120 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var strong = __webpack_require__(100);
// 23.2 Set Objects
module.exports = __webpack_require__(51)('Set', function(get){
return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
}, {
// 23.2.3.1 Set.prototype.add(value)
add: function add(value){
return strong.def(this, value = value === 0 ? 0 : value, value);
}
}, strong);
/***/ },
/* 121 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var each = __webpack_require__(23)(0)
, redefine = __webpack_require__(18)
, meta = __webpack_require__(32)
, assign = __webpack_require__(79)
, weak = __webpack_require__(102)
, isObject = __webpack_require__(5)
, has = __webpack_require__(10)
, getWeak = meta.getWeak
, isExtensible = Object.isExtensible
, uncaughtFrozenStore = weak.ufstore
, tmp = {}
, InternalMap;
var wrapper = function(get){
return function WeakMap(){
return get(this, arguments.length > 0 ? arguments[0] : undefined);
};
};
var methods = {
// 23.3.3.3 WeakMap.prototype.get(key)
get: function get(key){
if(isObject(key)){
var data = getWeak(key);
if(data === true)return uncaughtFrozenStore(this).get(key);
return data ? data[this._i] : undefined;
}
},
// 23.3.3.5 WeakMap.prototype.set(key, value)
set: function set(key, value){
return weak.def(this, key, value);
}
};
// 23.3 WeakMap Objects
var $WeakMap = module.exports = __webpack_require__(51)('WeakMap', wrapper, methods, weak, true, true);
// IE11 WeakMap frozen keys fix
if(new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
InternalMap = weak.getConstructor(wrapper);
assign(InternalMap.prototype, methods);
meta.NEED = true;
each(['delete', 'has', 'get', 'set'], function(key){
var proto = $WeakMap.prototype
, method = proto[key];
redefine(proto, key, function(a, b){
// store frozen objects on internal weakmap shim
if(isObject(a) && !isExtensible(a)){
if(!this._f)this._f = new InternalMap;
var result = this._f[key](a, b);
return key == 'set' ? this : result;
// store all the rest on native weakmap
} return method.call(this, a, b);
});
});
}
/***/ },
/* 122 */
/***/ function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.AppState = undefined;
var _createClass = function () {
function defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);
}
}return function (Constructor, protoProps, staticProps) {
if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;
};
}();
var _utilities = __webpack_require__(64);
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
var AppState = exports.AppState = function () {
function AppState() {
var state = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
_classCallCheck(this, AppState);
this.activeControlSet = state.activeControlSet || null;
this.activeDragControl = state.activeDragControl || null;
this.canvasHeight = state.canvasHeight || null;
this.canvasWidth = state.canvasWidth || null;
this.isBusy = typeof state.isBusy === "boolean" ? state.isBusy : false;
this.isCropMode = typeof state.isCropMode === "boolean" ? state.isCropMode : false;
this.isCropping = typeof state.isCropping === "boolean" ? state.isCropping : false;
this.isDragging = typeof state.isDragging === "boolean" ? state.isDragging : false;
this.isFirstHistory = typeof state.isFirstHistory === "boolean" ? state.isFirstHistory : true;
this.hasPhoto = typeof state.hasPhoto === "boolean" ? state.hasPhoto : false;
this.isLastHistory = typeof state.isLastHistory === "boolean" ? state.isLastHistory : true;
this.isLoading = typeof state.isLoading === "boolean" ? state.isLoading : false;
this.isPhotoBig = !!state.isPhotoBig;
this.isSaving = typeof state.isSaving === "boolean" ? state.isSaving : false;
this.mouseEndX = state.mouseEndX || null;
this.mouseEndY = state.mouseEndY || null;
this.mouseStartX = state.mouseStartX || null;
this.mouseStartY = state.mouseStartY || null;
this.offset = state.offset || null;
this.rotation = state.rotation || 0;
this.scale = state.scale || 1;
this.spinnerIsVisible = typeof state.spinnerIsVisible === "boolean" ? state.spinnerIsVisible : false;
this.withCropBoxControl = !!state.withCropBoxControl;
this.zoom = state.zoom || 100;
}
_createClass(AppState, [{
key: "prune",
value: function prune() {
return (0, _utilities.prune)(this);
}
}], [{
key: "merge",
value: function merge(state1, state2) {
return new AppState(Object.assign((0, _utilities.prune)(state1), (0, _utilities.prune)(state2)));
}
}, {
key: "create",
value: function create(state) {
return new AppState(state || {});
}
}]);
return AppState;
}();
//# sourceMappingURL=app-state.js.map
/***/ },
/* 123 */
/***/ function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.EditorState = undefined;
var _createClass = function () {
function defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);
}
}return function (Constructor, protoProps, staticProps) {
if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;
};
}();
var _utilities = __webpack_require__(64);
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
var EditorState = exports.EditorState = function () {
function EditorState() {
var state = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
_classCallCheck(this, EditorState);
this.image = state.image;
this.rotation = state.rotation;
this.scale = state.scale;
}
_createClass(EditorState, [{
key: "prune",
value: function prune() {
return (0, _utilities.prune)(this);
}
}, {
key: "merge",
value: function merge(state) {
return Object.assign(this, (0, _utilities.prune)(state));
}
}, {
key: "fill",
value: function fill(state) {
var _this = this;
Object.keys(this).forEach(function (key) {
_this[key] = typeof _this[key] === "undefined" ? state[key] : _this[key];
});
return this;
}
}, {
key: "combine",
value: function combine(state) {
this.image = state.image || this.image;
}
}], [{
key: "create",
value: function create(state) {
return new EditorState(state || {});
}
}]);
return EditorState;
}();
//# sourceMappingURL=editor-state.js.map
/***/ },
/* 124 */
/***/ function(module, exports, __webpack_require__) {
"use strict";
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Editor = undefined;
var _createClass = function () {
function defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);
}
}return function (Constructor, protoProps, staticProps) {
if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;
};
}();
var _history = __webpack_require__(125);
var _events = __webpack_require__(315);
var _events2 = _interopRequireDefault(_events);
var _constants = __webpack_require__(94);
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : { default: obj };
}
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
function _possibleConstructorReturn(self, call) {
if (!self) {
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
}return call && ((typeof call === "undefined" ? "undefined" : _typeof(call)) === "object" || typeof call === "function") ? call : self;
}
function _inherits(subClass, superClass) {
if (typeof superClass !== "function" && superClass !== null) {
throw new TypeError("Super expression must either be null or a function, not " + (typeof superClass === "undefined" ? "undefined" : _typeof(superClass)));
}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
}
// Using WeakMaps for Private properties
var _states = new WeakMap();
/**
* Calculates the height and width of an image after rotation
* @param {object} image - the image to rotate
* @param {number} rotation - in radians
* @returns {{height: number, width: number}} height and width after rotation
* @private
*/
function _getRotatedDims(image, rotation) {
var newWidth = Math.round(Math.abs(Math.sin(rotation) * image.height - Math.cos(rotation) * image.width));
var newHeight = Math.round(Math.abs(Math.sin(rotation) * image.width - Math.cos(rotation) * image.height));
return { height: newHeight, width: newWidth };
}
/**
* Merge two states
* @param {object} state - new state object
* @returns {void}
* @private
*/
function mergeStates(state) {
_states.set(this, Object.assign(_states.get(this), state));
}
var Editor = exports.Editor = function (_events$EventEmitter) {
_inherits(Editor, _events$EventEmitter);
function Editor(file) {
_classCallCheck(this, Editor);
var reader;
var me;
var _this = _possibleConstructorReturn(this, Object.getPrototypeOf(Editor).call(this));
reader = new FileReader();
me = _this;
_states.set(_this, {
zoom: 1,
scale: 1,
rotation: 0
});
_this.canvas = document.createElement("canvas");
_this.canvas.setAttribute("id", "editorCanvas");
_this.canvasContext = _this.canvas.getContext("2d");
_this.fileName = file.name;
_this.mimeType = file.type;
_this.lastModifiedDate = file.lastModifiedDate;
_this.originalFileSize = file.size;
_this.scale = _this.scale.bind(_this);
_this.draw = _this.draw.bind(_this);
// SetData from image
reader.onload = function (event) {
me.originalImage = document.createElement("img");
me.description = me.originalImage.longDesc;
me.name = me.originalImage.name || me.fileName;
me.originalImage.onload = function () {
me.history = new _history.History({
image: me.originalImage,
scale: 1,
rotation: 0
});
me.draw(me.history.currentState());
me.emit(_constants.constants.IMAGE_LOADED);
};
me.originalImage.setAttribute("src", event.target.result);
};
reader.readAsDataURL(file);
return _this;
}
/**
* Get the current editor state
* @returns {*} editor state
*/
_createClass(Editor, [{
key: "getState",
value: function getState() {
return Object.assign({
isFirstHistory: this.history.isFirst(),
isLastHistory: this.history.isLast()
}, _states.get(this));
}
/**
* Register a callback for an event listener
* @param {object} event - event to register
* @param {function} callback - callback function
* @returns {void}
*/
}, {
key: "addEventListener",
value: function addEventListener(event, callback) {
this.on(event, callback);
}
/**
* Un-register a call back for an event listener
* @param {object} event event to unregister
* @param {function} callback - function to call
* @returns {void}
*/
}, {
key: "removeEventListener",
value: function removeEventListener(event, callback) {
this.removeListener(event, callback);
}
/**
* crop the image
* @param {object} args - crop specs
* @returns {void}
*/
}, {
key: "crop",
value: function crop() {
var args = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
var me = this;
var croppedImage = document.createElement("img");
var flattenedImage = document.createElement("img");
var zoom = _states.get(this).zoom || 1;
//console.log("crop");
flattenedImage.onload = function () {
me.canvas.height = args.height / zoom;
me.canvas.width = args.width / zoom;
me.canvasContext.clearRect(0, 0, args.width / zoom, args.height / zoom);
me.canvasContext.drawImage(flattenedImage, args.x / zoom, args.y / zoom, args.width / zoom, args.height / zoom, 0, 0, args.width / zoom, args.height / zoom);
croppedImage.onload = function () {
me.history.append({ image: croppedImage, scale: 1, rotation: 0 });
me.emit(_constants.constants.HISTORY_CHANGE);
me.draw({ image: croppedImage, scale: 1, rotation: 0, zoom: zoom });
};
croppedImage.src = me.canvas.toDataURL(me.mimeType);
};
me.draw({ zoom: 1 });
flattenedImage.src = this.canvas.toDataURL(this.mimeType);
}
/**
* Get the current history object
* @returns {*} - the current history
*/
}, {
key: "currentHistory",
value: function currentHistory() {
return Object.assign({}, this.history.currentState());
}
/**
* Draw the state to the canvas
* @param {*} state - a state object
* @returns {void}
*/
}, {
key: "draw",
value: function draw(state) {
var _state = _states.get(this);
var newWidth;
var newHeight;
var dims;
//console.log("editor draw");
//console.log("imageWidth " + (state.image && state.image.width) + " imageHeight " + (state.image && state.image.height));
//console.log("imageWidth " + (_state.image && _state.image.width) + " imageHeight " + (_state.image && _state.image.height));
mergeStates.call(this, state);
//console.log("imageWidth " + _state.image.width + " imageHeight " + _state.image.height);
//console.log("zoom " + _state.zoom);
//console.log("scale " + _state.scale);
newWidth = _state.image.width * _state.zoom * _state.scale;
newHeight = _state.image.height * _state.zoom * _state.scale;
//console.log("newWidth " + newWidth + " newHeight " + newHeight);
dims = _getRotatedDims({ width: newWidth, height: newHeight }, _state.rotation);
//console.log("width " + dims.width + " height " + dims.height);
this.canvas.width = dims.width;
this.canvas.height = dims.height;
this.canvasContext.save();
this.canvasContext.translate(dims.width / 2, dims.height / 2);
this.canvasContext.clearRect(0, 0, dims.width, dims.height);
this.canvasContext.rotate(_state.rotation);
this.canvasContext.drawImage(_state.image, -(newWidth / 2), -(newHeight / 2), newWidth, newHeight);
this.canvasContext.restore();
this.emit(_constants.constants.DRAW_EVENT);
}
/**
* Advances the history index by 1 and redraws the image
* @returns {void}
*/
}, {
key: "redo",
value: function redo() {
this.draw(this.history.forward());
}
/**
* Redraws the current state
* @returns {void}
*/
}, {
key: "redrawImage",
value: function redrawImage() {
//console.log("editor redrawImage");
this.canvasContext.clearRect(0, 0, this.canvas.width, this.canvas.height);
this.draw(this.history.currentState().image);
}
/**
* Rotates and redraws the image
* @param {number} rad - rotation in radians
* @returns {void}
*/
}, {
key: "rotate",
value: function rotate(rad) {
var _state = _states.get(this);
_state.rotation = rad % (2 * Math.PI);
this.draw(_state);
_states.set(_state);
}
/**
* Returns a url for downloading the current image state.
* @returns {string}
*/
}, {
key: "save",
value: function save() {
var data;
var myState = _states.get(this);
var currentZoom = myState.zoom;
//console.log("save");
this.draw({ zoom: 1 });
// modify the dataUrl so the browser starts downloading it instead of just showing it
data = this.canvas.toDataURL(this.mimeType).replace(/^data:image\/png/, "data:application/octet-stream");
this.draw({ zoom: currentZoom });
return data;
}
/**
* Saves the current state to histoy
* @returns {void}
*/
}, {
key: "saveState",
value: function saveState() {
this.history.append(_states.get(this));
this.emit(_constants.constants.HISTORY_CHANGE);
}
/**
* Zooms the image and changes the dimensions
* @param {number} percentage - %
* @returns {number} - zoom value
*/
}, {
key: "scale",
value: function scale(percentage) {
this.draw({ scale: percentage / 100 });
return _states.get(this).scale * 100;
}
/**
* Moves the history back one index and redraws the image
* @returns {void}
*/
}, {
key: "undo",
value: function undo() {
this.draw(this.history.back());
}
/**
* Zooms the image but does not change the actual dimensions
* @param percentage
* @returns {number} percentage of zoom
*/
}, {
key: "zoom",
value: function zoom(percentage) {
if (typeof percentage === "number" && percentage > 0) {
this.draw({ zoom: percentage / 100 });
} else {
throw new Error("zoom parameters must be of type number. You passed : " + percentage);
}
return _states.get(this).zoom * 100;
}
/**
* Clears the history cache and resets to original State
* @returns {void}
*/
}, {
key: "clearHistory",
value: function clearHistory() {
this.history.resetHistory();
_states.set(this, {
zoom: 1,
scale: 1,
rotation: 0
});
this.emit(_constants.constants.HISTORY_CHANGE);
}
}]);
return Editor;
}(_events2.default.EventEmitter);
//# sourceMappingURL=editor.js.map
/***/ },
/* 125 */
/***/ function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.History = undefined;
var _createClass = function () {
function defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);
}
}return function (Constructor, protoProps, staticProps) {
if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;
};
}();
var _editorState = __webpack_require__(123);
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
// Using WeakMaps for Private properties
var _history = new WeakMap();
var _stateIndex = new WeakMap();
var History = exports.History = function () {
function History(initialState) {
_classCallCheck(this, History);
_history.set(this, [_editorState.EditorState.create(initialState)]);
_stateIndex.set(this, 0);
}
_createClass(History, [{
key: "append",
value: function append(state) {
var newState;
var history = _history.get(this);
var stateIndex = _stateIndex.get(this);
state.image = state.image || history[stateIndex].image;
newState = _editorState.EditorState.create(state);
history = history.slice(0, stateIndex + 1);
history.push(newState);
stateIndex = stateIndex >= history.length - 1 ? history.length - 1 : stateIndex + 1;
_stateIndex.set(this, stateIndex);
_history.set(this, history);
return history[stateIndex];
}
}, {
key: "back",
value: function back() {
var history = _history.get(this);
var stateIndex = _stateIndex.get(this);
if (stateIndex > 0) {
stateIndex -= 1;
_stateIndex.set(this, stateIndex);
}
return history[stateIndex];
}
}, {
key: "resetHistory",
value: function resetHistory() {
var history = _history.get(this);
_history.set(this, [history[0]]);
_stateIndex.set(this, 0);
}
}, {
key: "getIndex",
value: function getIndex() {
return _stateIndex.get(this);
}
}, {
key: "currentState",
value: function currentState() {
var history = _history.get(this);
var stateIndex = _stateIndex.get(this);
return Object.assign({}, history[stateIndex]);
}
}, {
key: "forward",
value: function forward() {
var history = _history.get(this);
var stateIndex = _stateIndex.get(this);
if (stateIndex <= history.length - 1) {
stateIndex += 1;
_stateIndex.set(this, stateIndex);
}
return history[stateIndex];
}
}, {
key: "goto",
value: function goto(index) {
var history = _history.get(this);
var stateIndex = _stateIndex.get(this);
if (index >= 0 && index < history.length) {
stateIndex = index;
}
_stateIndex.set(this, stateIndex);
return history[stateIndex];
}
}, {
key: "isLast",
value: function isLast() {
var history = _history.get(this);
var stateIndex = _stateIndex.get(this);
return history.length - 1 === stateIndex;
}
}, {
key: "isFirst",
value: function isFirst() {
var stateIndex = _stateIndex.get(this);
return stateIndex < 1;
}
}]);
return History;
}();
//# sourceMappingURL=history.js.map
/***/ },
/* 126 */
/***/ function(module, exports, __webpack_require__) {
"use strict";
var _editor = __webpack_require__(124);
var _utilities = __webpack_require__(64);
var _constants = __webpack_require__(94);
var _appState = __webpack_require__(122);
function _toConsumableArray(arr) {
if (Array.isArray(arr)) {
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
arr2[i] = arr[i];
}return arr2;
} else {
return Array.from(arr);
}
}
__webpack_require__(127);
function createElem(args) {
var elem = document.createElement((args.tag || "DIV").toUpperCase());
if (args.className) {
elem.className = args.className.trim();
}
;
if (args.id) {
elem.id = args.id;
}
(Array.isArray(args.children) ? args.children : [args.children]).forEach(function (el) {
var child = typeof el === "string" ? document.createTextNode(el) : createElem(el);
elem.appendChild(child);
});
return elem;
}
function createControlSet(args) {
var name = args.name.charAt(0).toUpperCase() + args.name.slice(1, args.name.length).toLowerCase();
var controlSet = createElem({
id: "controlSet" + name,
className: "photo-widget_control-group module-control-group",
tag: "DIV",
name: args.name,
children: [{
tag: "DIV", className: "module-control-group_container", children: [{
tag: "DIV", className: "module-control-group_tool-group-container", children: [{
tag: "DIV",
className: "module-control-group_tool-group-" + args.name.toLowerCase().trim(),
children: [{
tag: "DIV",
className: "module-" + args.name.toLowerCase().trim() + "-control",
children: [{
tag: "BUTTON", id: "clearImageControl", className: "", children: [{ tag: "I", className: "icon-cancel-circle", children: [] }]
}]
}, { tag: "DIV", className: "", children: [{ tag: "SPAN", className: "", children: name }] }]
}]
}]
}]
});
return controlSet;
}
var controlSets = [{ name: "reset" }];
controlSets.forEach(function (cs) {
var node = createControlSet(cs);
document.getElementsByClassName("photo-widget_tab-panels")[0].appendChild(node);
});
var stateRules = [{
id: "scale",
execute: function execute(state) {
scaleValue.innerHTML = state.scale;
scaleControl.value = state.scale;
if (!isNaN(state.scale) && state.scale !== 100) {
resetScaleButton.removeAttribute("disabled");
} else {
resetScaleButton.setAttribute("disabled", "disabled");
}
setEditorBoxClass("is-scaling");
}
}, {
id: "zoom",
execute: function execute(state) {
zoomValue.innerHTML = state.zoom;
zoomControl.value = state.zoom;
setEditorBoxClass(_constants.constants.IS_ZOOMING);
}
}, {
id: "rotation",
execute: function execute(state) {
var deg = (isNaN(state.rotation) ? 0 : state.rotation) / Math.PI * 180;
rotationValue.innerHTML = deg;
setEditorBoxClass(_constants.constants.IS_ROTATING);
}
}, {
id: "isCropMode",
execute: function execute(state) {
if (myEditor) {
if (state.isCropMode) {
if (!cropBoxControls) {
console.log("cropBoxControl RESET");
cropBoxControls = resetCropBoxDragControls(300, 300);
}
drawCropBox({
x: cropBoxControls.topLeft.x,
y: cropBoxControls.topLeft.y,
width: cropBoxControls.topRight.x - cropBoxControls.topLeft.x,
height: cropBoxControls.bottomLeft.y - cropBoxControls.topLeft.y
});
cropBoxControls = resetCropBoxDragControls();
myEditor.canvas.setAttribute("class", myEditor.canvas.className + /is-cropping/.test(myEditor.canvas.className) ? "" : " is-cropping");
myEditor.canvas.addEventListener("mousedown", startCrop);
myEditor.canvas.addEventListener("mousemove", cropping);
myEditor.canvas.addEventListener("mouseup", endCrop);
myEditor.canvas.addEventListener("mouseout", endCrop);
return;
}
myEditor.canvas.setAttribute("class", myEditor.canvas.className.replace("is-cropping", "").trim());
myEditor.canvas.removeEventListener("mousedown", startCrop);
myEditor.canvas.removeEventListener("mousemove", cropping);
myEditor.canvas.removeEventListener("mouseup", endCrop);
myEditor.canvas.removeEventListener("mouseout", endCrop);
myEditor.redrawImage();
}
}
}, {
id: "isLastHistory",
execute: function execute(state) {
if (state.isLastHistory) {
redoControl.setAttribute("disabled", "disabled");
return;
}
redoControl.removeAttribute("disabled");
}
}, {
id: "isFirstHistory",
execute: function execute(state) {
if (state.isFirstHistory) {
undoControl.setAttribute("disabled", "disabled");
return;
}
undoControl.removeAttribute("disabled");
}
}, {
id: "hasPhoto",
execute: function execute(state) {
if (state.hasPhoto) {
workspace.className = workspace.className + " has-photo";
switchButtons.forEach(function (control) {
control.removeAttribute("disabled");
});
scaleControl.removeAttribute("disabled");
cropControl.removeAttribute("disabled");
clearImageControl.removeAttribute("disabled");
zoomControl.removeAttribute("disabled");
rotateRight.removeAttribute("disabled");
rotateLeft.removeAttribute("disabled");
saveButton.removeAttribute("disabled");
resetScaleButton.removeAttribute("disabled");
zoom100Button.removeAttribute("disabled");
zoom50Button.removeAttribute("disabled");
zoom200Button.removeAttribute("disabled");
zoom500Button.removeAttribute("disabled");
return;
}
workspace.className = workspace.className.replace(/has-photo/g, "").trim();
switchButtons.forEach(function (control) {
control.setAttribute("disabled", "disabled");
});
scaleControl.setAttribute("disabled", "disabled");
cropControl.setAttribute("disabled", "disabled");
clearImageControl.setAttribute("disabled", "disabled");
zoomControl.setAttribute("disabled", "disabled");
undoControl.setAttribute("disabled", "disabled");
redoControl.setAttribute("disabled", "disabled");
rotateRight.setAttribute("disabled", "disabled");
rotateLeft.setAttribute("disabled", "disabled");
saveButton.setAttribute("disabled", "disabled");
zoom100Button.setAttribute("disabled", "disabled");
zoom50Button.setAttribute("disabled", "disabled");
zoom200Button.setAttribute("disabled", "disabled");
zoom500Button.setAttribute("disabled", "disabled");
fileInput.value = null;
}
}, {
id: "isDragging",
execute: function execute(state) {
setEditorBoxClass(_constants.constants.IS_DRAGGING);
if (state.isDragging) {
workspace.className += /is-dragover/.test(workspace.className) ? "" : " is-dragover";
return;
}
workspace.className = workspace.className.replace(/is-dragover/g, "").trim();
return;
}
}, {
id: "spinnerIsVisible",
execute: function execute(state) {
var isHidden = /is-hidden/.test(spinner.className);
if (state.spinnerIsVisible) {
spinner.className = isHidden ? spinner.className.replace(/is-hidden/g, "").trim() : spinner.className.trim();
return;
}
spinner.className = isHidden ? spinner.className.trim() : spinner.className + " is-hidden";
}
}, {
id: "activeControlSet",
execute: function execute(state) {
controlSets.forEach(function (c) {
c.className = c.className.replace(/is-open/g, "").trim();
if (c.id === "controlSet" + state.activeControlSet) {
c.className = c.className + " is-open";
}
});
switchButtons.forEach(function (b) {
b.className = b.className.replace(/is-active/g, "").trim();
if (b.id === "toolSwitch" + state.activeControlSet) {
b.className = b.className + " is-active";
}
});
}
}, {
id: "isPhotoBig",
execute: function execute(state) {
var isBig = /is-photo-big/.test(workspace.className);
if (!state.isPhotoBig) {
workspace.className = isBig ? workspace.className.replace(/is-photo-big/g, "").trim() : workspace.className.trim();
return;
}
workspace.className = isBig ? workspace.className.trim() : workspace.className + " is-photo-big";
}
}];
(function (stateRules) {
"use strict";
// Do we have drag and drop?
var isAdvancedUpload = function () {
var div = document.createElement("div");
return "draggable" in div || "ondragstart" in div && "ondrop" in div && "FormData" in window && "FileReader" in window;
}();
// find our controls
var fileInput = document.getElementById("fileInput");
var scaleControl = document.getElementById("scaleImageControl");
var cropControl = document.getElementById("cropImageControl");
var editorBox = document.getElementById("editor");
var saveButton = document.getElementById("save");
var rotateRight = document.getElementById("rotateRight");
var rotateLeft = document.getElementById("rotateLeft");
var undoControl = document.getElementById("undoControl");
var redoControl = document.getElementById("redoControl");
var resetScaleButton = document.getElementById("resetScale");
var zoom100Button = document.getElementById("zoom100Button");
var zoom50Button = document.getElementById("zoom50Button");
var zoom200Button = document.getElementById("zoom200Button");
var zoom500Button = document.getElementById("zoom500Button");
var cropBoxControls;
// Other stuff
var uploadInstructions = document.getElementById("uploadInstructions");
var workspace = document.getElementById("workspace");
var clearImageControl = document.getElementById("clearImageControl");
var zoomControl = document.getElementById("zoomControl");
var spinner = document.getElementById("spinner");
// find our labels
var zoomValue = document.getElementById("zoomValue");
var scaleValue = document.getElementById("scaleValue");
// var heightValue = document.getElementById("heightValue");
// var widthValue = document.getElementById("widthValue");
var rotationValue = document.getElementById("rotationValue");
var switchButtons = [].concat(_toConsumableArray(document.getElementsByClassName("module-control-group_tool-switch")));
var toolSwitchCrop = document.getElementById("toolSwitchCrop");
var controlSets = [].concat(_toConsumableArray(document.getElementsByClassName("module-control-group")));
var myEditor;
var appState = new _appState.AppState();
function activeCropBoxDragControls(controls, x, y) {
return Object.keys(controls).map(function (box) {
var control = controls[box];
var isY = y <= control.y + 5 && y >= control.y - 5;
var isX = x <= control.x + 5 && x >= control.x - 5;
control.active = isY && isX;
});
}
function setAppState(state) {
function setControls(state) {
Object.keys(state).forEach(function (key) {
switch (key) {
case "scale":
scaleValue.innerHTML = state.scale;
scaleControl.value = state.scale;
if (!isNaN(state.scale) && state.scale !== 100) {
resetScaleButton.removeAttribute("disabled");
} else {
resetScaleButton.setAttribute("disabled", "disabled");
}
setEditorBoxClass("is-scaling");
break;
case "zoom":
zoomValue.innerHTML = state.zoom;
zoomControl.value = state.zoom;
setEditorBoxClass(_constants.constants.IS_ZOOMING);
break;
case "rotation":
var deg = (isNaN(state.rotation) ? 0 : state.rotation) / Math.PI * 180;
rotationValue.innerHTML = deg;
setEditorBoxClass(_constants.constants.IS_ROTATING);
break;
case "isCropMode":
//console.log("crop case");
//console.log(state.isCropMode);
if (myEditor) {
if (state.isCropMode) {
if (!cropBoxControls) {
console.log("cropBoxControl RESET");
cropBoxControls = resetCropBoxDragControls(300, 300);
}
drawCropBox({
x: cropBoxControls.topLeft.x,
y: cropBoxControls.topLeft.y,
width: cropBoxControls.topRight.x - cropBoxControls.topLeft.x,
height: cropBoxControls.bottomLeft.y - cropBoxControls.topLeft.y
});
cropBoxControls = resetCropBoxDragControls();
myEditor.canvas.setAttribute("class", myEditor.canvas.className + /is-cropping/.test(myEditor.canvas.className) ? "" : " is-cropping");
myEditor.canvas.addEventListener("mousedown", startCrop);
myEditor.canvas.addEventListener("mousemove", cropping);
myEditor.canvas.addEventListener("mouseup", endCrop);
myEditor.canvas.addEventListener("mouseout", endCrop);
break;
}
myEditor.canvas.setAttribute("class", myEditor.canvas.className.replace("is-cropping", "").trim());
myEditor.canvas.removeEventListener("mousedown", startCrop);
myEditor.canvas.removeEventListener("mousemove", cropping);
myEditor.canvas.removeEventListener("mouseup", endCrop);
myEditor.canvas.removeEventListener("mouseout", endCrop);
myEditor.redrawImage();
}
break;
case "isLastHistory":
if (state.isLastHistory) {
redoControl.setAttribute("disabled", "disabled");
break;
}
redoControl.removeAttribute("disabled");
break;
case "isFirstHistory":
if (state.isFirstHistory) {
undoControl.setAttribute("disabled", "disabled");
break;
}
undoControl.removeAttribute("disabled");
break;
case "hasPhoto":
if (state.hasPhoto) {
workspace.className = workspace.className + " has-photo";
switchButtons.forEach(function (control) {
control.removeAttribute("disabled");
});
scaleControl.removeAttribute("disabled");
cropControl.removeAttribute("disabled");
clearImageControl.removeAttribute("disabled");
zoomControl.removeAttribute("disabled");
rotateRight.removeAttribute("disabled");
rotateLeft.removeAttribute("disabled");
saveButton.removeAttribute("disabled");
resetScaleButton.removeAttribute("disabled");
zoom100Button.removeAttribute("disabled");
zoom50Button.removeAttribute("disabled");
zoom200Button.removeAttribute("disabled");
zoom500Button.removeAttribute("disabled");
break;
}
workspace.className = workspace.className.replace(/has-photo/g, "").trim();
switchButtons.forEach(function (control) {
control.setAttribute("disabled", "disabled");
});
scaleControl.setAttribute("disabled", "disabled");
cropControl.setAttribute("disabled", "disabled");
clearImageControl.setAttribute("disabled", "disabled");
zoomControl.setAttribute("disabled", "disabled");
undoControl.setAttribute("disabled", "disabled");
redoControl.setAttribute("disabled", "disabled");
rotateRight.setAttribute("disabled", "disabled");
rotateLeft.setAttribute("disabled", "disabled");
saveButton.setAttribute("disabled", "disabled");
zoom100Button.setAttribute("disabled", "disabled");
zoom50Button.setAttribute("disabled", "disabled");
zoom200Button.setAttribute("disabled", "disabled");
zoom500Button.setAttribute("disabled", "disabled");
fileInput.value = null;
break;
case "isDragging":
//console.log("drag case");
//console.log(state.isDragging);
setEditorBoxClass(_constants.constants.IS_DRAGGING);
if (state.isDragging) {
workspace.className += /is-dragover/.test(workspace.className) ? "" : " is-dragover";
break;
}
workspace.className = workspace.className.replace(/is-dragover/g, "").trim();
break;
case "spinnerIsVisible":
var isHidden = /is-hidden/.test(spinner.className);
if (state.spinnerIsVisible) {
spinner.className = isHidden ? spinner.className.replace(/is-hidden/g, "").trim() : spinner.className.trim();
break;
}
spinner.className = isHidden ? spinner.className.trim() : spinner.className + " is-hidden";
break;
case "activeControlSet":
controlSets.forEach(function (c) {
c.className = c.className.replace(/is-open/g, "").trim();
if (c.id === "controlSet" + state.activeControlSet) {
c.className = c.className + " is-open";
}
});
switchButtons.forEach(function (b) {
b.className = b.className.replace(/is-active/g, "").trim();
if (b.id === "toolSwitch" + state.activeControlSet) {
b.className = b.className + " is-active";
}
});
break;
case "isPhotoBig":
var isBig = /is-photo-big/.test(workspace.className);
if (!state.isPhotoBig) {
workspace.className = isBig ? workspace.className.replace(/is-photo-big/g, "").trim() : workspace.className.trim();
break;
}
workspace.className = isBig ? workspace.className.trim() : workspace.className + " is-photo-big";
break;
}
});
}
appState = _appState.AppState.merge(appState, state);
console.log("adc2:" + state.activeDragControl);
console.log("adc2:" + appState.activeDragControl);
setControls(state);
}
function resetAppState() {
setAppState(new _appState.AppState());
}
function setEditorBoxClass(state) {
state = state && state.replace("_", "-").toLowerCase() || "";
var stateRegex = /(is\-cropping)|(is\-scaling)|(is\-dragging)|(is\-rotating)|(is\-zooming)|(is\-loading)|(is\-saving)|(is\-busy)/g;
editorBox.className = editorBox.className.replace(stateRegex, "").trim() + (!!state ? " " : "") + state;
}
function handleRedraw() {
var editorState = myEditor.getState();
setAppState({
zoom: Math.round(editorState.zoom * 100),
scale: Math.round(editorState.scale * 100),
isLastHistory: editorState.isLastHistory,
isFirstHistory: editorState.isFirstHistory,
rotation: editorState.rotation,
isPhotoBig: myEditor.canvas.clientHeight > workspace.clientHeight
});
}
function handleHistoryChange() {
var editorState = myEditor.getState();
setAppState({
isLastHistory: editorState.isLastHistory,
isFirstHistory: editorState.isFirstHistory,
zoom: Math.round(editorState.zoom * 100),
scale: Math.round(editorState.scale * 100),
rotation: editorState.rotation,
offset: (0, _utilities.getOffset)(myEditor.canvas)
});
}
function addPic(event) {
//console.log("addpic");
event.stopPropagation();
event.preventDefault();
setAppState({ spinnerIsVisible: true });
if (myEditor) {
myEditor.removeListener(_constants.constants.DRAW_EVENT, handleRedraw);
myEditor.removeListener(_constants.constants.HISTORY_CHANGE, handleHistoryChange);
myEditor.removeListener(_constants.constants.IMAGE_LOADED, resetAppState);
}
// get rid of old canvas
while (editorBox.hasChildNodes()) {
editorBox.removeChild(editorBox.lastChild);
}
myEditor = new _editor.Editor((event.target.files || event.dataTransfer.files)[0]);
// Attach listeners;
myEditor.addEventListener(_constants.constants.DRAW_EVENT, handleRedraw);
myEditor.addEventListener(_constants.constants.HISTORY_CHANGE, handleHistoryChange);
myEditor.addEventListener(_constants.constants.IMAGE_LOADED, setAppState.bind(this, {
hasPhoto: true,
spinnerIsVisible: false
}));
// saveButton.addEventListener("click", myEditor.save);
editorBox.appendChild(myEditor.canvas);
}
function dragEnd(event) {
event.preventDefault();
event.stopPropagation();
setAppState({ isDragging: false });
}
function dragStart(event) {
event.preventDefault();
event.stopPropagation();
setAppState({ isDragging: true });
}
function cropButtonClick(event) {
crop();
// event.stopPropagation();
// if (appState.isCropMode) {
// setAppState({
// isCropMode: false,
// isCropping: false
// });
// return;
// }
// setAppState({
// offset: getOffset(myEditor.canvas),
// isCropMode: true
// });
}
function cropping(e) {
var overControl;
// if the crop flag is set, clear the canvas and draw the image
if (appState.isCropping) {
console.log("ADC:" + appState.activeDragControl);
var activeSpot = Object.keys(cropBoxControls).filter(function (key) {
return cropBoxControls[key].active;
})[0] || null;
var startSpot = function () {
switch (appState.activeDragControl) {
case "topLeft":
return cropBoxControls.bottomRight;
case "bottomRight":
return cropBoxControls.topLeft;
case "topRight":
return cropBoxControls.bottomLeft;
case "bottomLeft":
return cropBoxControls.topRight;
default:
return null;
}
}();
var canMouseX = parseInt(e.offsetX, 10) - (appState.withCropBoxControl && !!startSpot ? startSpot.x : appState.mouseStartX);
var canMouseY = parseInt(e.offsetY, 10) - (appState.withCropBoxControl && !!startSpot ? startSpot.y : appState.mouseStartY);
drawCropBox({
x: (appState.withCropBoxControl && !!startSpot ? startSpot.x : appState.mouseStartX) - appState.offset.left,
y: (appState.withCropBoxControl && !!startSpot ? startSpot.y : appState.mouseStartY) - appState.offset.top,
width: canMouseX,
height: canMouseY
});
return;
}
overControl = detectCropBoxDragControls(parseInt(e.offsetX, 10), parseInt(e.offsetY, 10));
if (overControl) {
drawCropBox();
}
}
function resetCropBoxDragControls(boxHeight, boxWidth) {
return {
topLeft: { y: 10, x: 10, active: false },
// top: {y: 10, x: 100, active: false},
topRight: { y: 10, x: 200, active: false },
// left: {y: 100, x: 10, active: false},
// right: {y: 100, x: 200, active: false},
bottomLeft: { y: 200, x: 10, active: false },
// bottom: {y: 200, x: 100, active: false},
bottomRight: { y: 200, x: 200, active: true }
};
}
function drawCropBox(args) {
args = args || {
x: cropBoxControls.topLeft.x,
y: cropBoxControls.topLeft.y,
width: cropBoxControls.topRight.x - cropBoxControls.topLeft.x,
height: cropBoxControls.bottomRight.y - cropBoxControls.topRight.y
};
console.log(JSON.stringify(args));
drawInvertedBox(args);
Object.assign(cropBoxControls.topLeft, { x: args.x, y: args.y });
Object.assign(cropBoxControls.topRight, { x: args.x + args.width, y: args.y });
Object.assign(cropBoxControls.bottomLeft, { x: args.x, y: args.y + args.height });
Object.assign(cropBoxControls.bottomRight, { x: args.x + args.width, y: args.y + args.height });
Object.keys(cropBoxControls).forEach(function (box) {
myEditor.canvasContext.beginPath();
myEditor.canvasContext.lineWidth = "1";
myEditor.canvasContext.fillStyle = cropBoxControls[box].active ? "rgba(255,255,255,0)" : "rgba(255,255,255,0.8)";
myEditor.canvasContext.strokeStyle = cropBoxControls[box].active ? "rgba(255,0,0,1)" : "rgba(255,0,0,0.5)";
myEditor.canvasContext.rect(cropBoxControls[box].x - 5, cropBoxControls[box].y - 5, 10, 10);
myEditor.canvasContext.fillRect(cropBoxControls[box].x - 5, cropBoxControls[box].y - 5, 10, 10);
myEditor.canvasContext.stroke();
});
}
function drawBox(args) {
args = args || {};
myEditor.redrawImage();
myEditor.canvasContext.fillStyle = "rgba(255,255,255,0.4)";
myEditor.canvasContext.fillRect(args.x || 0, args.y || 0, args.width || 0, args.height || 0);
}
function drawInvertedBox(args) {
args = args || {};
var canvasWidth = myEditor.canvas.width;
var canvasHeight = myEditor.canvas.height;
//Invert coordinates if we're drawing bottom to top and/or left to right;
if (args.width < 0) {
args.x = args.x + args.width;
args.width = Math.abs(args.width);
}
if (args.height < 0) {
args.y = args.y + args.height;
args.height = Math.abs(args.height);
}
myEditor.redrawImage();
myEditor.canvasContext.beginPath();
myEditor.canvasContext.fillStyle = "rgba(255,255,255,0.4)";
myEditor.canvasContext.fillRect(0, 0, args.x, canvasHeight);
myEditor.canvasContext.beginPath();
myEditor.canvasContext.fillRect(args.x + args.width, 0, canvasWidth - args.x - args.width, canvasHeight);
myEditor.canvasContext.beginPath();
myEditor.canvasContext.fillRect(args.x, 0, args.width, args.y);
myEditor.canvasContext.beginPath();
myEditor.canvasContext.fillRect(args.x, args.y + args.height, args.width, canvasHeight - args.height - args.y);
}
function crop() {
var topLeftX = arguments.length <= 0 || arguments[0] === undefined ? cropBoxControls.topLeft.x : arguments[0];
var topLeftY = arguments.length <= 1 || arguments[1] === undefined ? cropBoxControls.topLeft.y : arguments[1];
var bottomRightX = arguments.length <= 2 || arguments[2] === undefined ? cropBoxControls.bottomRight.x : arguments[2];
var bottomRightY = arguments.length <= 3 || arguments[3] === undefined ? cropBoxControls.bottomRight.y : arguments[3];
myEditor.crop({
x: topLeftX,
y: topLeftY,
width: Math.abs(bottomRightX - topLeftX),
height: Math.abs(bottomRightY - topLeftY)
});
}
function detectCropBoxDragControls(x, y) {
var hasControl = false;
Object.keys(cropBoxControls).forEach(function (box) {
var control = cropBoxControls[box];
var isY = y <= control.y + 5 && y >= control.y - 5;
var isX = x <= control.x + 5 && x >= control.x - 5;
control.active = isY && isX;
hasControl = hasControl || isY && isX;
});
return hasControl;
}
function endCrop(e) {
//console.log("end crop " + e.offsetX + " : " + e.offsetY);
if (e.clientX && e.clientY) {
setAppState({
mouseEndX: parseInt(e.offsetX, 10) - appState.mouseStartX,
mouseEndY: parseInt(e.offsetY, 10) - appState.mouseStartY,
activeDragControl: null,
withCropBoxControl: false
});
// if (appState.isCropping) {
// myEditor.crop({
// x: (appState.mouseEndX > 0) ? (appState.mouseStartX - appState.offset.left) : (parseInt(e.offsetX, 10) - appState.offset.left),
// y: (appState.mouseEndY > 0) ? (appState.mouseStartY - appState.offset.top) : (parseInt(e.offsetY, 10) - appState.offset.top),
// width: Math.abs(appState.mouseEndX),
// height: Math.abs(appState.mouseEndY)
// })
// }
}
// clear the crop flag
// setAppState({isCropping: false, isCropMode: false});
setAppState({ isCropping: false });
}
function redo() {
myEditor.redo();
}
function rotate(event) {
var num = parseFloat(event.currentTarget.value);
var deg = num / Math.abs(num) * 90; // just doing a 90 deg rotate for now;
var rad = isNaN(deg) ? 0 : deg * Math.PI / 180 + appState.rotation;
event.stopPropagation();
myEditor.rotate(rad);
myEditor.saveState();
}
function save(event) {
event.stopPropagation();
saveButton.href = myEditor.save();
saveButton.download = myEditor.fileName;
}
function saveState(event) {
event.preventDefault();
myEditor.saveState();
}
function scaleReset(event) {
event.stopPropagation();
myEditor.scale(100);
}
function scalePic(event) {
event.stopPropagation();
myEditor.scale(event.target.value);
}
function setActiveControlSet(event) {
var id = event.currentTarget.value;
setAppState({
activeControlSet: id,
offset: (0, _utilities.getOffset)(myEditor.canvas),
isCropMode: event.currentTarget.id === "toolSwitchCrop"
});
}
function startCrop(e) {
// //console.log("start crop " + e.clientX + " : " + e.clientY);
// if (appState.isCropMode) {
// setAppState({
// isCropping: true,
// mouseStartX: parseInt(e.clientX, 10),
// mouseStartY: parseInt(e.clientY, 10)
// });
// }
//console.log("start crop " + e.offsetX + " : " + e.offsetY);
if (appState.isCropMode) {
var withCropBoxControl = detectCropBoxDragControls(parseInt(e.offsetX, 10), parseInt(e.offsetY, 10));
var activeDragControl = Object.keys(cropBoxControls).filter(function (key) {
return cropBoxControls[key].active;
})[0];
// TODO unhardcode mouseStartX & Y
console.log("adc:" + activeDragControl);
setAppState({
isCropping: true,
activeDragControl: activeDragControl,
mouseStartX: parseInt(e.offsetX, 10),
mouseStartY: parseInt(e.offsetY, 10),
withCropBoxControl: withCropBoxControl
});
}
}
function startOver(event) {
event.preventDefault();
myEditor = null;
while (editorBox.hasChildNodes()) {
editorBox.removeChild(editorBox.lastChild);
}
resetAppState();
}
function undo() {
myEditor.undo();
}
function zoomPic(event) {
myEditor.zoom(parseInt(event.currentTarget.value, 10));
}
resetAppState();
fileInput.addEventListener("change", addPic);
scaleControl.addEventListener("input", scalePic);
scaleControl.addEventListener("blur", saveState);
undoControl.addEventListener("click", undo);
redoControl.addEventListener("click", redo);
resetScaleButton.addEventListener("click", scaleReset);
cropControl.addEventListener("click", cropButtonClick);
saveButton.addEventListener("click", save);
rotateLeft.addEventListener("click", rotate);
rotateRight.addEventListener("click", rotate);
clearImageControl.addEventListener("click", startOver);
zoomControl.addEventListener("input", zoomPic);
zoom50Button.addEventListener("click", zoomPic);
zoom100Button.addEventListener("click", zoomPic);
zoom200Button.addEventListener("click", zoomPic);
zoom500Button.addEventListener("click", zoomPic);
switchButtons.forEach(function (b) {
b.addEventListener("click", setActiveControlSet);
});
if (isAdvancedUpload) {
workspace.addEventListener("drop", addPic);
uploadInstructions.className += " has-advanced-upload";
workspace.addEventListener("dragover", dragStart);
workspace.addEventListener("dragend", dragEnd);
workspace.addEventListener("dragleave", dragEnd);
}
})(stateRules);
//# sourceMappingURL=main.js.map
/***/ },
/* 127 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(314);
__webpack_require__(133);
__webpack_require__(49);
__webpack_require__(135);
__webpack_require__(92);
__webpack_require__(132);
__webpack_require__(134);
__webpack_require__(139);
__webpack_require__(137);
__webpack_require__(138);
__webpack_require__(140);
__webpack_require__(136);
__webpack_require__(141);
__webpack_require__(142);
__webpack_require__(143);
module.exports = __webpack_require__(15);
/***/ },
/* 128 */
/***/ function(module, exports, __webpack_require__) {
var isObject = __webpack_require__(5)
, isArray = __webpack_require__(73)
, SPECIES = __webpack_require__(6)('species');
module.exports = function(original){
var C;
if(isArray(original)){
C = original.constructor;
// cross-realm fallback
if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
if(isObject(C)){
C = C[SPECIES];
if(C === null)C = undefined;
}
} return C === undefined ? Array : C;
};
/***/ },
/* 129 */
/***/ function(module, exports, __webpack_require__) {
// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(128);
module.exports = function(original, length){
return new (speciesConstructor(original))(length);
};
/***/ },
/* 130 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var anObject = __webpack_require__(2)
, toPrimitive = __webpack_require__(26)
, NUMBER = 'number';
module.exports = function(hint){
if(hint !== 'string' && hint !== NUMBER && hint !== 'default')throw TypeError('Incorrect hint');
return toPrimitive(anObject(this), hint != NUMBER);
};
/***/ },
/* 131 */
/***/ function(module, exports, __webpack_require__) {
// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(33)
, gOPS = __webpack_require__(60)
, pIE = __webpack_require__(48);
module.exports = function(it){
var result = getKeys(it)
, getSymbols = gOPS.f;
if(getSymbols){
var symbols = getSymbols(it)
, isEnum = pIE.f
, i = 0
, key;
while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))result.push(key);
} return result;
};
/***/ },
/* 132 */
/***/ function(module, exports, __webpack_require__) {
var global = __webpack_require__(3)
, core = __webpack_require__(15)
, $export = __webpack_require__(1)
, partial = __webpack_require__(81);
// https://esdiscuss.org/topic/promise-returning-delay-function
$export($export.G + $export.F, {
delay: function delay(time){
return new (core.Promise || global.Promise)(function(resolve){
setTimeout(partial.call(resolve, true), time);
});
}
});
/***/ },
/* 133 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var ctx = __webpack_require__(24)
, $export = __webpack_require__(1)
, createDesc = __webpack_require__(29)
, assign = __webpack_require__(79)
, create = __webpack_require__(28)
, getPrototypeOf = __webpack_require__(17)
, getKeys = __webpack_require__(33)
, dP = __webpack_require__(7)
, keyOf = __webpack_require__(105)
, aFunction = __webpack_require__(13)
, forOf = __webpack_require__(36)
, isIterable = __webpack_require__(92)
, $iterCreate = __webpack_require__(56)
, step = __webpack_require__(75)
, isObject = __webpack_require__(5)
, toIObject = __webpack_require__(12)
, DESCRIPTORS = __webpack_require__(8)
, has = __webpack_require__(10);
// 0 -> Dict.forEach
// 1 -> Dict.map
// 2 -> Dict.filter
// 3 -> Dict.some
// 4 -> Dict.every
// 5 -> Dict.find
// 6 -> Dict.findKey
// 7 -> Dict.mapPairs
var createDictMethod = function(TYPE){
var IS_MAP = TYPE == 1
, IS_EVERY = TYPE == 4;
return function(object, callbackfn, that /* = undefined */){
var f = ctx(callbackfn, that, 3)
, O = toIObject(object)
, result = IS_MAP || TYPE == 7 || TYPE == 2
? new (typeof this == 'function' ? this : Dict) : undefined
, key, val, res;
for(key in O)if(has(O, key)){
val = O[key];
res = f(val, key, object);
if(TYPE){
if(IS_MAP)result[key] = res; // map
else if(res)switch(TYPE){
case 2: result[key] = val; break; // filter
case 3: return true; // some
case 5: return val; // find
case 6: return key; // findKey
case 7: result[res[0]] = res[1]; // mapPairs
} else if(IS_EVERY)return false; // every
}
}
return TYPE == 3 || IS_EVERY ? IS_EVERY : result;
};
};
var findKey = createDictMethod(6);
var createDictIter = function(kind){
return function(it){
return new DictIterator(it, kind);
};
};
var DictIterator = function(iterated, kind){
this._t = toIObject(iterated); // target
this._a = getKeys(iterated); // keys
this._i = 0; // next index
this._k = kind; // kind
};
$iterCreate(DictIterator, 'Dict', function(){
var that = this
, O = that._t
, keys = that._a
, kind = that._k
, key;
do {
if(that._i >= keys.length){
that._t = undefined;
return step(1);
}
} while(!has(O, key = keys[that._i++]));
if(kind == 'keys' )return step(0, key);
if(kind == 'values')return step(0, O[key]);
return step(0, [key, O[key]]);
});
function Dict(iterable){
var dict = create(null);
if(iterable != undefined){
if(isIterable(iterable)){
forOf(iterable, true, function(key, value){
dict[key] = value;
});
} else assign(dict, iterable);
}
return dict;
}
Dict.prototype = null;
function reduce(object, mapfn, init){
aFunction(mapfn);
var O = toIObject(object)
, keys = getKeys(O)
, length = keys.length
, i = 0
, memo, key;
if(arguments.length < 3){
if(!length)throw TypeError('Reduce of empty object with no initial value');
memo = O[keys[i++]];
} else memo = Object(init);
while(length > i)if(has(O, key = keys[i++])){
memo = mapfn(memo, O[key], key, object);
}
return memo;
}
function includes(object, el){
return (el == el ? keyOf(object, el) : findKey(object, function(it){
return it != it;
})) !== undefined;
}
function get(object, key){
if(has(object, key))return object[key];
}
function set(object, key, value){
if(DESCRIPTORS && key in Object)dP.f(object, key, createDesc(0, value));
else object[key] = value;
return object;
}
function isDict(it){
return isObject(it) && getPrototypeOf(it) === Dict.prototype;
}
$export($export.G + $export.F, {Dict: Dict});
$export($export.S, 'Dict', {
keys: createDictIter('keys'),
values: createDictIter('values'),
entries: createDictIter('entries'),
forEach: createDictMethod(0),
map: createDictMethod(1),
filter: createDictMethod(2),
some: createDictMethod(3),
every: createDictMethod(4),
find: createDictMethod(5),
findKey: findKey,
mapPairs: createDictMethod(7),
reduce: reduce,
keyOf: keyOf,
includes: includes,
has: has,
get: get,
set: set,
isDict: isDict
});
/***/ },
/* 134 */
/***/ function(module, exports, __webpack_require__) {
var path = __webpack_require__(114)
, $export = __webpack_require__(1);
// Placeholder
__webpack_require__(15)._ = path._ = path._ || {};
$export($export.P + $export.F, 'Function', {part: __webpack_require__(81)});
/***/ },
/* 135 */
/***/ function(module, exports, __webpack_require__) {
var anObject = __webpack_require__(2)
, get = __webpack_require__(49);
module.exports = __webpack_require__(15).getIterator = function(it){
var iterFn = get(it);
if(typeof iterFn != 'function')throw TypeError(it + ' is not iterable!');
return anObject(iterFn.call(it));
};
/***/ },
/* 136 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
__webpack_require__(57)(Number, 'Number', function(iterated){
this._l = +iterated;
this._i = 0;
}, function(){
var i = this._i++
, done = !(i < this._l);
return {done: done, value: done ? undefined : i};
});
/***/ },
/* 137 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1);
$export($export.S + $export.F, 'Object', {classof: __webpack_require__(35)});
/***/ },
/* 138 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, define = __webpack_require__(107);
$export($export.S + $export.F, 'Object', {define: define});
/***/ },
/* 139 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1);
$export($export.S + $export.F, 'Object', {isObject: __webpack_require__(5)});
/***/ },
/* 140 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, define = __webpack_require__(107)
, create = __webpack_require__(28);
$export($export.S + $export.F, 'Object', {
make: function(proto, mixin){
return define(create(proto), mixin);
}
});
/***/ },
/* 141 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/benjamingr/RexExp.escape
var $export = __webpack_require__(1)
, $re = __webpack_require__(82)(/[\\^$*+?.()|[\]{}]/g, '\\$&');
$export($export.S, 'RegExp', {escape: function escape(it){ return $re(it); }});
/***/ },
/* 142 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1);
var $re = __webpack_require__(82)(/[&<>"']/g, {
'&': '&',
'<': '<',
'>': '>',
'"': '"',
"'": '''
});
$export($export.P + $export.F, 'String', {escapeHTML: function escapeHTML(){ return $re(this); }});
/***/ },
/* 143 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1);
var $re = __webpack_require__(82)(/&(?:amp|lt|gt|quot|apos);/g, {
'&': '&',
'<': '<',
'>': '>',
'"': '"',
''': "'"
});
$export($export.P + $export.F, 'String', {unescapeHTML: function unescapeHTML(){ return $re(this); }});
/***/ },
/* 144 */
/***/ function(module, exports, __webpack_require__) {
// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
var $export = __webpack_require__(1);
$export($export.P, 'Array', {copyWithin: __webpack_require__(96)});
__webpack_require__(44)('copyWithin');
/***/ },
/* 145 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $every = __webpack_require__(23)(4);
$export($export.P + $export.F * !__webpack_require__(22)([].every, true), 'Array', {
// 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])
every: function every(callbackfn /* , thisArg */){
return $every(this, callbackfn, arguments[1]);
}
});
/***/ },
/* 146 */
/***/ function(module, exports, __webpack_require__) {
// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
var $export = __webpack_require__(1);
$export($export.P, 'Array', {fill: __webpack_require__(65)});
__webpack_require__(44)('fill');
/***/ },
/* 147 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $filter = __webpack_require__(23)(2);
$export($export.P + $export.F * !__webpack_require__(22)([].filter, true), 'Array', {
// 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
filter: function filter(callbackfn /* , thisArg */){
return $filter(this, callbackfn, arguments[1]);
}
});
/***/ },
/* 148 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
var $export = __webpack_require__(1)
, $find = __webpack_require__(23)(6)
, KEY = 'findIndex'
, forced = true;
// Shouldn't skip holes
if(KEY in [])Array(1)[KEY](function(){ forced = false; });
$export($export.P + $export.F * forced, 'Array', {
findIndex: function findIndex(callbackfn/*, that = undefined */){
return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
}
});
__webpack_require__(44)(KEY);
/***/ },
/* 149 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(1)
, $find = __webpack_require__(23)(5)
, KEY = 'find'
, forced = true;
// Shouldn't skip holes
if(KEY in [])Array(1)[KEY](function(){ forced = false; });
$export($export.P + $export.F * forced, 'Array', {
find: function find(callbackfn/*, that = undefined */){
return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
}
});
__webpack_require__(44)(KEY);
/***/ },
/* 150 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $forEach = __webpack_require__(23)(0)
, STRICT = __webpack_require__(22)([].forEach, true);
$export($export.P + $export.F * !STRICT, 'Array', {
// 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])
forEach: function forEach(callbackfn /* , thisArg */){
return $forEach(this, callbackfn, arguments[1]);
}
});
/***/ },
/* 151 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var ctx = __webpack_require__(24)
, $export = __webpack_require__(1)
, toObject = __webpack_require__(11)
, call = __webpack_require__(104)
, isArrayIter = __webpack_require__(72)
, toLength = __webpack_require__(9)
, createProperty = __webpack_require__(66)
, getIterFn = __webpack_require__(49);
$export($export.S + $export.F * !__webpack_require__(58)(function(iter){ Array.from(iter); }), 'Array', {
// 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){
var O = toObject(arrayLike)
, C = typeof this == 'function' ? this : Array
, aLen = arguments.length
, mapfn = aLen > 1 ? arguments[1] : undefined
, mapping = mapfn !== undefined
, index = 0
, iterFn = getIterFn(O)
, length, result, step, iterator;
if(mapping)mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
// if object isn't iterable or it's array with default iterator - use simple case
if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){
for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){
createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
}
} else {
length = toLength(O.length);
for(result = new C(length); length > index; index++){
createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
}
}
result.length = index;
return result;
}
});
/***/ },
/* 152 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $indexOf = __webpack_require__(50)(false)
, $native = [].indexOf
, NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0;
$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(22)($native)), 'Array', {
// 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])
indexOf: function indexOf(searchElement /*, fromIndex = 0 */){
return NEGATIVE_ZERO
// convert -0 to +0
? $native.apply(this, arguments) || 0
: $indexOf(this, searchElement, arguments[1]);
}
});
/***/ },
/* 153 */
/***/ function(module, exports, __webpack_require__) {
// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(1);
$export($export.S, 'Array', {isArray: __webpack_require__(73)});
/***/ },
/* 154 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// 22.1.3.13 Array.prototype.join(separator)
var $export = __webpack_require__(1)
, toIObject = __webpack_require__(12)
, arrayJoin = [].join;
// fallback for not array-like strings
$export($export.P + $export.F * (__webpack_require__(47) != Object || !__webpack_require__(22)(arrayJoin)), 'Array', {
join: function join(separator){
return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator);
}
});
/***/ },
/* 155 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, toIObject = __webpack_require__(12)
, toInteger = __webpack_require__(34)
, toLength = __webpack_require__(9)
, $native = [].lastIndexOf
, NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0;
$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(22)($native)), 'Array', {
// 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])
lastIndexOf: function lastIndexOf(searchElement /*, fromIndex = @[*-1] */){
// convert -0 to +0
if(NEGATIVE_ZERO)return $native.apply(this, arguments) || 0;
var O = toIObject(this)
, length = toLength(O.length)
, index = length - 1;
if(arguments.length > 1)index = Math.min(index, toInteger(arguments[1]));
if(index < 0)index = length + index;
for(;index >= 0; index--)if(index in O)if(O[index] === searchElement)return index || 0;
return -1;
}
});
/***/ },
/* 156 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $map = __webpack_require__(23)(1);
$export($export.P + $export.F * !__webpack_require__(22)([].map, true), 'Array', {
// 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
map: function map(callbackfn /* , thisArg */){
return $map(this, callbackfn, arguments[1]);
}
});
/***/ },
/* 157 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, createProperty = __webpack_require__(66);
// WebKit Array.of isn't generic
$export($export.S + $export.F * __webpack_require__(4)(function(){
function F(){}
return !(Array.of.call(F) instanceof F);
}), 'Array', {
// 22.1.2.3 Array.of( ...items)
of: function of(/* ...args */){
var index = 0
, aLen = arguments.length
, result = new (typeof this == 'function' ? this : Array)(aLen);
while(aLen > index)createProperty(result, index, arguments[index++]);
result.length = aLen;
return result;
}
});
/***/ },
/* 158 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $reduce = __webpack_require__(98);
$export($export.P + $export.F * !__webpack_require__(22)([].reduceRight, true), 'Array', {
// 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])
reduceRight: function reduceRight(callbackfn /* , initialValue */){
return $reduce(this, callbackfn, arguments.length, arguments[1], true);
}
});
/***/ },
/* 159 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $reduce = __webpack_require__(98);
$export($export.P + $export.F * !__webpack_require__(22)([].reduce, true), 'Array', {
// 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])
reduce: function reduce(callbackfn /* , initialValue */){
return $reduce(this, callbackfn, arguments.length, arguments[1], false);
}
});
/***/ },
/* 160 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, html = __webpack_require__(70)
, cof = __webpack_require__(20)
, toIndex = __webpack_require__(42)
, toLength = __webpack_require__(9)
, arraySlice = [].slice;
// fallback for not array-like ES3 strings and DOM objects
$export($export.P + $export.F * __webpack_require__(4)(function(){
if(html)arraySlice.call(html);
}), 'Array', {
slice: function slice(begin, end){
var len = toLength(this.length)
, klass = cof(this);
end = end === undefined ? len : end;
if(klass == 'Array')return arraySlice.call(this, begin, end);
var start = toIndex(begin, len)
, upTo = toIndex(end, len)
, size = toLength(upTo - start)
, cloned = Array(size)
, i = 0;
for(; i < size; i++)cloned[i] = klass == 'String'
? this.charAt(start + i)
: this[start + i];
return cloned;
}
});
/***/ },
/* 161 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $some = __webpack_require__(23)(3);
$export($export.P + $export.F * !__webpack_require__(22)([].some, true), 'Array', {
// 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])
some: function some(callbackfn /* , thisArg */){
return $some(this, callbackfn, arguments[1]);
}
});
/***/ },
/* 162 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, aFunction = __webpack_require__(13)
, toObject = __webpack_require__(11)
, fails = __webpack_require__(4)
, $sort = [].sort
, test = [1, 2, 3];
$export($export.P + $export.F * (fails(function(){
// IE8-
test.sort(undefined);
}) || !fails(function(){
// V8 bug
test.sort(null);
// Old WebKit
}) || !__webpack_require__(22)($sort)), 'Array', {
// 22.1.3.25 Array.prototype.sort(comparefn)
sort: function sort(comparefn){
return comparefn === undefined
? $sort.call(toObject(this))
: $sort.call(toObject(this), aFunction(comparefn));
}
});
/***/ },
/* 163 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(41)('Array');
/***/ },
/* 164 */
/***/ function(module, exports, __webpack_require__) {
// 20.3.3.1 / 15.9.4.4 Date.now()
var $export = __webpack_require__(1);
$export($export.S, 'Date', {now: function(){ return new Date().getTime(); }});
/***/ },
/* 165 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()
var $export = __webpack_require__(1)
, fails = __webpack_require__(4)
, getTime = Date.prototype.getTime;
var lz = function(num){
return num > 9 ? num : '0' + num;
};
// PhantomJS / old WebKit has a broken implementations
$export($export.P + $export.F * (fails(function(){
return new Date(-5e13 - 1).toISOString() != '0385-07-25T07:06:39.999Z';
}) || !fails(function(){
new Date(NaN).toISOString();
})), 'Date', {
toISOString: function toISOString(){
if(!isFinite(getTime.call(this)))throw RangeError('Invalid time value');
var d = this
, y = d.getUTCFullYear()
, m = d.getUTCMilliseconds()
, s = y < 0 ? '-' : y > 9999 ? '+' : '';
return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +
'-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +
'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +
':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';
}
});
/***/ },
/* 166 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, toObject = __webpack_require__(11)
, toPrimitive = __webpack_require__(26);
$export($export.P + $export.F * __webpack_require__(4)(function(){
return new Date(NaN).toJSON() !== null || Date.prototype.toJSON.call({toISOString: function(){ return 1; }}) !== 1;
}), 'Date', {
toJSON: function toJSON(key){
var O = toObject(this)
, pv = toPrimitive(O);
return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString();
}
});
/***/ },
/* 167 */
/***/ function(module, exports, __webpack_require__) {
var TO_PRIMITIVE = __webpack_require__(6)('toPrimitive')
, proto = Date.prototype;
if(!(TO_PRIMITIVE in proto))__webpack_require__(14)(proto, TO_PRIMITIVE, __webpack_require__(130));
/***/ },
/* 168 */
/***/ function(module, exports, __webpack_require__) {
var DateProto = Date.prototype
, INVALID_DATE = 'Invalid Date'
, TO_STRING = 'toString'
, $toString = DateProto[TO_STRING]
, getTime = DateProto.getTime;
if(new Date(NaN) + '' != INVALID_DATE){
__webpack_require__(18)(DateProto, TO_STRING, function toString(){
var value = getTime.call(this);
return value === value ? $toString.call(this) : INVALID_DATE;
});
}
/***/ },
/* 169 */
/***/ function(module, exports, __webpack_require__) {
// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)
var $export = __webpack_require__(1);
$export($export.P, 'Function', {bind: __webpack_require__(99)});
/***/ },
/* 170 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var isObject = __webpack_require__(5)
, getPrototypeOf = __webpack_require__(17)
, HAS_INSTANCE = __webpack_require__(6)('hasInstance')
, FunctionProto = Function.prototype;
// 19.2.3.6 Function.prototype[@@hasInstance](V)
if(!(HAS_INSTANCE in FunctionProto))__webpack_require__(7).f(FunctionProto, HAS_INSTANCE, {value: function(O){
if(typeof this != 'function' || !isObject(O))return false;
if(!isObject(this.prototype))return O instanceof this;
// for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
while(O = getPrototypeOf(O))if(this.prototype === O)return true;
return false;
}});
/***/ },
/* 171 */
/***/ function(module, exports, __webpack_require__) {
var dP = __webpack_require__(7).f
, createDesc = __webpack_require__(29)
, has = __webpack_require__(10)
, FProto = Function.prototype
, nameRE = /^\s*function ([^ (]*)/
, NAME = 'name';
var isExtensible = Object.isExtensible || function(){
return true;
};
// 19.2.4.2 name
NAME in FProto || __webpack_require__(8) && dP(FProto, NAME, {
configurable: true,
get: function(){
try {
var that = this
, name = ('' + that).match(nameRE)[1];
has(that, NAME) || !isExtensible(that) || dP(that, NAME, createDesc(5, name));
return name;
} catch(e){
return '';
}
}
});
/***/ },
/* 172 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.3 Math.acosh(x)
var $export = __webpack_require__(1)
, log1p = __webpack_require__(106)
, sqrt = Math.sqrt
, $acosh = Math.acosh;
$export($export.S + $export.F * !($acosh
// V8 bug: https://code.google.com/p/v8/issues/detail?id=3509
&& Math.floor($acosh(Number.MAX_VALUE)) == 710
// Tor Browser bug: Math.acosh(Infinity) -> NaN
&& $acosh(Infinity) == Infinity
), 'Math', {
acosh: function acosh(x){
return (x = +x) < 1 ? NaN : x > 94906265.62425156
? Math.log(x) + Math.LN2
: log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));
}
});
/***/ },
/* 173 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.5 Math.asinh(x)
var $export = __webpack_require__(1)
, $asinh = Math.asinh;
function asinh(x){
return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));
}
// Tor Browser bug: Math.asinh(0) -> -0
$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', {asinh: asinh});
/***/ },
/* 174 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.7 Math.atanh(x)
var $export = __webpack_require__(1)
, $atanh = Math.atanh;
// Tor Browser bug: Math.atanh(-0) -> 0
$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', {
atanh: function atanh(x){
return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;
}
});
/***/ },
/* 175 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.9 Math.cbrt(x)
var $export = __webpack_require__(1)
, sign = __webpack_require__(77);
$export($export.S, 'Math', {
cbrt: function cbrt(x){
return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);
}
});
/***/ },
/* 176 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.11 Math.clz32(x)
var $export = __webpack_require__(1);
$export($export.S, 'Math', {
clz32: function clz32(x){
return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;
}
});
/***/ },
/* 177 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.12 Math.cosh(x)
var $export = __webpack_require__(1)
, exp = Math.exp;
$export($export.S, 'Math', {
cosh: function cosh(x){
return (exp(x = +x) + exp(-x)) / 2;
}
});
/***/ },
/* 178 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.14 Math.expm1(x)
var $export = __webpack_require__(1)
, $expm1 = __webpack_require__(76);
$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', {expm1: $expm1});
/***/ },
/* 179 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.16 Math.fround(x)
var $export = __webpack_require__(1)
, sign = __webpack_require__(77)
, pow = Math.pow
, EPSILON = pow(2, -52)
, EPSILON32 = pow(2, -23)
, MAX32 = pow(2, 127) * (2 - EPSILON32)
, MIN32 = pow(2, -126);
var roundTiesToEven = function(n){
return n + 1 / EPSILON - 1 / EPSILON;
};
$export($export.S, 'Math', {
fround: function fround(x){
var $abs = Math.abs(x)
, $sign = sign(x)
, a, result;
if($abs < MIN32)return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;
a = (1 + EPSILON32 / EPSILON) * $abs;
result = a - (a - $abs);
if(result > MAX32 || result != result)return $sign * Infinity;
return $sign * result;
}
});
/***/ },
/* 180 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])
var $export = __webpack_require__(1)
, abs = Math.abs;
$export($export.S, 'Math', {
hypot: function hypot(value1, value2){ // eslint-disable-line no-unused-vars
var sum = 0
, i = 0
, aLen = arguments.length
, larg = 0
, arg, div;
while(i < aLen){
arg = abs(arguments[i++]);
if(larg < arg){
div = larg / arg;
sum = sum * div * div + 1;
larg = arg;
} else if(arg > 0){
div = arg / larg;
sum += div * div;
} else sum += arg;
}
return larg === Infinity ? Infinity : larg * Math.sqrt(sum);
}
});
/***/ },
/* 181 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.18 Math.imul(x, y)
var $export = __webpack_require__(1)
, $imul = Math.imul;
// some WebKit versions fails with big numbers, some has wrong arity
$export($export.S + $export.F * __webpack_require__(4)(function(){
return $imul(0xffffffff, 5) != -5 || $imul.length != 2;
}), 'Math', {
imul: function imul(x, y){
var UINT16 = 0xffff
, xn = +x
, yn = +y
, xl = UINT16 & xn
, yl = UINT16 & yn;
return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);
}
});
/***/ },
/* 182 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.21 Math.log10(x)
var $export = __webpack_require__(1);
$export($export.S, 'Math', {
log10: function log10(x){
return Math.log(x) / Math.LN10;
}
});
/***/ },
/* 183 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.20 Math.log1p(x)
var $export = __webpack_require__(1);
$export($export.S, 'Math', {log1p: __webpack_require__(106)});
/***/ },
/* 184 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.22 Math.log2(x)
var $export = __webpack_require__(1);
$export($export.S, 'Math', {
log2: function log2(x){
return Math.log(x) / Math.LN2;
}
});
/***/ },
/* 185 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.28 Math.sign(x)
var $export = __webpack_require__(1);
$export($export.S, 'Math', {sign: __webpack_require__(77)});
/***/ },
/* 186 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.30 Math.sinh(x)
var $export = __webpack_require__(1)
, expm1 = __webpack_require__(76)
, exp = Math.exp;
// V8 near Chromium 38 has a problem with very small numbers
$export($export.S + $export.F * __webpack_require__(4)(function(){
return !Math.sinh(-2e-17) != -2e-17;
}), 'Math', {
sinh: function sinh(x){
return Math.abs(x = +x) < 1
? (expm1(x) - expm1(-x)) / 2
: (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);
}
});
/***/ },
/* 187 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.33 Math.tanh(x)
var $export = __webpack_require__(1)
, expm1 = __webpack_require__(76)
, exp = Math.exp;
$export($export.S, 'Math', {
tanh: function tanh(x){
var a = expm1(x = +x)
, b = expm1(-x);
return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));
}
});
/***/ },
/* 188 */
/***/ function(module, exports, __webpack_require__) {
// 20.2.2.34 Math.trunc(x)
var $export = __webpack_require__(1);
$export($export.S, 'Math', {
trunc: function trunc(it){
return (it > 0 ? Math.floor : Math.ceil)(it);
}
});
/***/ },
/* 189 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var global = __webpack_require__(3)
, has = __webpack_require__(10)
, cof = __webpack_require__(20)
, inheritIfRequired = __webpack_require__(71)
, toPrimitive = __webpack_require__(26)
, fails = __webpack_require__(4)
, gOPN = __webpack_require__(39).f
, gOPD = __webpack_require__(16).f
, dP = __webpack_require__(7).f
, $trim = __webpack_require__(46).trim
, NUMBER = 'Number'
, $Number = global[NUMBER]
, Base = $Number
, proto = $Number.prototype
// Opera ~12 has broken Object#toString
, BROKEN_COF = cof(__webpack_require__(28)(proto)) == NUMBER
, TRIM = 'trim' in String.prototype;
// 7.1.3 ToNumber(argument)
var toNumber = function(argument){
var it = toPrimitive(argument, false);
if(typeof it == 'string' && it.length > 2){
it = TRIM ? it.trim() : $trim(it, 3);
var first = it.charCodeAt(0)
, third, radix, maxCode;
if(first === 43 || first === 45){
third = it.charCodeAt(2);
if(third === 88 || third === 120)return NaN; // Number('+0x1') should be NaN, old V8 fix
} else if(first === 48){
switch(it.charCodeAt(1)){
case 66 : case 98 : radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
case 79 : case 111 : radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
default : return +it;
}
for(var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++){
code = digits.charCodeAt(i);
// parseInt parses a string to a first unavailable symbol
// but ToNumber should return NaN if a string contains unavailable symbols
if(code < 48 || code > maxCode)return NaN;
} return parseInt(digits, radix);
}
} return +it;
};
if(!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')){
$Number = function Number(value){
var it = arguments.length < 1 ? 0 : value
, that = this;
return that instanceof $Number
// check on 1..constructor(foo) case
&& (BROKEN_COF ? fails(function(){ proto.valueOf.call(that); }) : cof(that) != NUMBER)
? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);
};
for(var keys = __webpack_require__(8) ? gOPN(Base) : (
// ES3:
'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
// ES6 (in case, if modules with ES6 Number statics required before):
'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
).split(','), j = 0, key; keys.length > j; j++){
if(has(Base, key = keys[j]) && !has($Number, key)){
dP($Number, key, gOPD(Base, key));
}
}
$Number.prototype = proto;
proto.constructor = $Number;
__webpack_require__(18)(global, NUMBER, $Number);
}
/***/ },
/* 190 */
/***/ function(module, exports, __webpack_require__) {
// 20.1.2.1 Number.EPSILON
var $export = __webpack_require__(1);
$export($export.S, 'Number', {EPSILON: Math.pow(2, -52)});
/***/ },
/* 191 */
/***/ function(module, exports, __webpack_require__) {
// 20.1.2.2 Number.isFinite(number)
var $export = __webpack_require__(1)
, _isFinite = __webpack_require__(3).isFinite;
$export($export.S, 'Number', {
isFinite: function isFinite(it){
return typeof it == 'number' && _isFinite(it);
}
});
/***/ },
/* 192 */
/***/ function(module, exports, __webpack_require__) {
// 20.1.2.3 Number.isInteger(number)
var $export = __webpack_require__(1);
$export($export.S, 'Number', {isInteger: __webpack_require__(74)});
/***/ },
/* 193 */
/***/ function(module, exports, __webpack_require__) {
// 20.1.2.4 Number.isNaN(number)
var $export = __webpack_require__(1);
$export($export.S, 'Number', {
isNaN: function isNaN(number){
return number != number;
}
});
/***/ },
/* 194 */
/***/ function(module, exports, __webpack_require__) {
// 20.1.2.5 Number.isSafeInteger(number)
var $export = __webpack_require__(1)
, isInteger = __webpack_require__(74)
, abs = Math.abs;
$export($export.S, 'Number', {
isSafeInteger: function isSafeInteger(number){
return isInteger(number) && abs(number) <= 0x1fffffffffffff;
}
});
/***/ },
/* 195 */
/***/ function(module, exports, __webpack_require__) {
// 20.1.2.6 Number.MAX_SAFE_INTEGER
var $export = __webpack_require__(1);
$export($export.S, 'Number', {MAX_SAFE_INTEGER: 0x1fffffffffffff});
/***/ },
/* 196 */
/***/ function(module, exports, __webpack_require__) {
// 20.1.2.10 Number.MIN_SAFE_INTEGER
var $export = __webpack_require__(1);
$export($export.S, 'Number', {MIN_SAFE_INTEGER: -0x1fffffffffffff});
/***/ },
/* 197 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, $parseFloat = __webpack_require__(112);
// 20.1.2.12 Number.parseFloat(string)
$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', {parseFloat: $parseFloat});
/***/ },
/* 198 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, $parseInt = __webpack_require__(113);
// 20.1.2.13 Number.parseInt(string, radix)
$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', {parseInt: $parseInt});
/***/ },
/* 199 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, anInstance = __webpack_require__(31)
, toInteger = __webpack_require__(34)
, aNumberValue = __webpack_require__(95)
, repeat = __webpack_require__(87)
, $toFixed = 1..toFixed
, floor = Math.floor
, data = [0, 0, 0, 0, 0, 0]
, ERROR = 'Number.toFixed: incorrect invocation!'
, ZERO = '0';
var multiply = function(n, c){
var i = -1
, c2 = c;
while(++i < 6){
c2 += n * data[i];
data[i] = c2 % 1e7;
c2 = floor(c2 / 1e7);
}
};
var divide = function(n){
var i = 6
, c = 0;
while(--i >= 0){
c += data[i];
data[i] = floor(c / n);
c = (c % n) * 1e7;
}
};
var numToString = function(){
var i = 6
, s = '';
while(--i >= 0){
if(s !== '' || i === 0 || data[i] !== 0){
var t = String(data[i]);
s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t;
}
} return s;
};
var pow = function(x, n, acc){
return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);
};
var log = function(x){
var n = 0
, x2 = x;
while(x2 >= 4096){
n += 12;
x2 /= 4096;
}
while(x2 >= 2){
n += 1;
x2 /= 2;
} return n;
};
$export($export.P + $export.F * (!!$toFixed && (
0.00008.toFixed(3) !== '0.000' ||
0.9.toFixed(0) !== '1' ||
1.255.toFixed(2) !== '1.25' ||
1000000000000000128..toFixed(0) !== '1000000000000000128'
) || !__webpack_require__(4)(function(){
// V8 ~ Android 4.3-
$toFixed.call({});
})), 'Number', {
toFixed: function toFixed(fractionDigits){
var x = aNumberValue(this, ERROR)
, f = toInteger(fractionDigits)
, s = ''
, m = ZERO
, e, z, j, k;
if(f < 0 || f > 20)throw RangeError(ERROR);
if(x != x)return 'NaN';
if(x <= -1e21 || x >= 1e21)return String(x);
if(x < 0){
s = '-';
x = -x;
}
if(x > 1e-21){
e = log(x * pow(2, 69, 1)) - 69;
z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1);
z *= 0x10000000000000;
e = 52 - e;
if(e > 0){
multiply(0, z);
j = f;
while(j >= 7){
multiply(1e7, 0);
j -= 7;
}
multiply(pow(10, j, 1), 0);
j = e - 1;
while(j >= 23){
divide(1 << 23);
j -= 23;
}
divide(1 << j);
multiply(1, 1);
divide(2);
m = numToString();
} else {
multiply(0, z);
multiply(1 << -e, 0);
m = numToString() + repeat.call(ZERO, f);
}
}
if(f > 0){
k = m.length;
m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f));
} else {
m = s + m;
} return m;
}
});
/***/ },
/* 200 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $fails = __webpack_require__(4)
, aNumberValue = __webpack_require__(95)
, $toPrecision = 1..toPrecision;
$export($export.P + $export.F * ($fails(function(){
// IE7-
return $toPrecision.call(1, undefined) !== '1';
}) || !$fails(function(){
// V8 ~ Android 4.3-
$toPrecision.call({});
})), 'Number', {
toPrecision: function toPrecision(precision){
var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!');
return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision);
}
});
/***/ },
/* 201 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.3.1 Object.assign(target, source)
var $export = __webpack_require__(1);
$export($export.S + $export.F, 'Object', {assign: __webpack_require__(79)});
/***/ },
/* 202 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', {create: __webpack_require__(28)});
/***/ },
/* 203 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1);
// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
$export($export.S + $export.F * !__webpack_require__(8), 'Object', {defineProperties: __webpack_require__(108)});
/***/ },
/* 204 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1);
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(8), 'Object', {defineProperty: __webpack_require__(7).f});
/***/ },
/* 205 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.5 Object.freeze(O)
var isObject = __webpack_require__(5)
, meta = __webpack_require__(32).onFreeze;
__webpack_require__(25)('freeze', function($freeze){
return function freeze(it){
return $freeze && isObject(it) ? $freeze(meta(it)) : it;
};
});
/***/ },
/* 206 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(12)
, $getOwnPropertyDescriptor = __webpack_require__(16).f;
__webpack_require__(25)('getOwnPropertyDescriptor', function(){
return function getOwnPropertyDescriptor(it, key){
return $getOwnPropertyDescriptor(toIObject(it), key);
};
});
/***/ },
/* 207 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.7 Object.getOwnPropertyNames(O)
__webpack_require__(25)('getOwnPropertyNames', function(){
return __webpack_require__(109).f;
});
/***/ },
/* 208 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(11)
, $getPrototypeOf = __webpack_require__(17);
__webpack_require__(25)('getPrototypeOf', function(){
return function getPrototypeOf(it){
return $getPrototypeOf(toObject(it));
};
});
/***/ },
/* 209 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.11 Object.isExtensible(O)
var isObject = __webpack_require__(5);
__webpack_require__(25)('isExtensible', function($isExtensible){
return function isExtensible(it){
return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;
};
});
/***/ },
/* 210 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.12 Object.isFrozen(O)
var isObject = __webpack_require__(5);
__webpack_require__(25)('isFrozen', function($isFrozen){
return function isFrozen(it){
return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;
};
});
/***/ },
/* 211 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.13 Object.isSealed(O)
var isObject = __webpack_require__(5);
__webpack_require__(25)('isSealed', function($isSealed){
return function isSealed(it){
return isObject(it) ? $isSealed ? $isSealed(it) : false : true;
};
});
/***/ },
/* 212 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.3.10 Object.is(value1, value2)
var $export = __webpack_require__(1);
$export($export.S, 'Object', {is: __webpack_require__(115)});
/***/ },
/* 213 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.14 Object.keys(O)
var toObject = __webpack_require__(11)
, $keys = __webpack_require__(33);
__webpack_require__(25)('keys', function(){
return function keys(it){
return $keys(toObject(it));
};
});
/***/ },
/* 214 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.15 Object.preventExtensions(O)
var isObject = __webpack_require__(5)
, meta = __webpack_require__(32).onFreeze;
__webpack_require__(25)('preventExtensions', function($preventExtensions){
return function preventExtensions(it){
return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;
};
});
/***/ },
/* 215 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.2.17 Object.seal(O)
var isObject = __webpack_require__(5)
, meta = __webpack_require__(32).onFreeze;
__webpack_require__(25)('seal', function($seal){
return function seal(it){
return $seal && isObject(it) ? $seal(meta(it)) : it;
};
});
/***/ },
/* 216 */
/***/ function(module, exports, __webpack_require__) {
// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(1);
$export($export.S, 'Object', {setPrototypeOf: __webpack_require__(61).set});
/***/ },
/* 217 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(35)
, test = {};
test[__webpack_require__(6)('toStringTag')] = 'z';
if(test + '' != '[object z]'){
__webpack_require__(18)(Object.prototype, 'toString', function toString(){
return '[object ' + classof(this) + ']';
}, true);
}
/***/ },
/* 218 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, $parseFloat = __webpack_require__(112);
// 18.2.4 parseFloat(string)
$export($export.G + $export.F * (parseFloat != $parseFloat), {parseFloat: $parseFloat});
/***/ },
/* 219 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, $parseInt = __webpack_require__(113);
// 18.2.5 parseInt(string, radix)
$export($export.G + $export.F * (parseInt != $parseInt), {parseInt: $parseInt});
/***/ },
/* 220 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var LIBRARY = __webpack_require__(38)
, global = __webpack_require__(3)
, ctx = __webpack_require__(24)
, classof = __webpack_require__(35)
, $export = __webpack_require__(1)
, isObject = __webpack_require__(5)
, anObject = __webpack_require__(2)
, aFunction = __webpack_require__(13)
, anInstance = __webpack_require__(31)
, forOf = __webpack_require__(36)
, setProto = __webpack_require__(61).set
, speciesConstructor = __webpack_require__(84)
, task = __webpack_require__(89).set
, microtask = __webpack_require__(78)()
, PROMISE = 'Promise'
, TypeError = global.TypeError
, process = global.process
, $Promise = global[PROMISE]
, process = global.process
, isNode = classof(process) == 'process'
, empty = function(){ /* empty */ }
, Internal, GenericPromiseCapability, Wrapper;
var USE_NATIVE = !!function(){
try {
// correct subclassing with @@species support
var promise = $Promise.resolve(1)
, FakePromise = (promise.constructor = {})[__webpack_require__(6)('species')] = function(exec){ exec(empty, empty); };
// unhandled rejections tracking support, NodeJS Promise without it fails @@species test
return (isNode || typeof PromiseRejectionEvent == 'function') && promise.then(empty) instanceof FakePromise;
} catch(e){ /* empty */ }
}();
// helpers
var sameConstructor = function(a, b){
// with library wrapper special case
return a === b || a === $Promise && b === Wrapper;
};
var isThenable = function(it){
var then;
return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
};
var newPromiseCapability = function(C){
return sameConstructor($Promise, C)
? new PromiseCapability(C)
: new GenericPromiseCapability(C);
};
var PromiseCapability = GenericPromiseCapability = function(C){
var resolve, reject;
this.promise = new C(function($$resolve, $$reject){
if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');
resolve = $$resolve;
reject = $$reject;
});
this.resolve = aFunction(resolve);
this.reject = aFunction(reject);
};
var perform = function(exec){
try {
exec();
} catch(e){
return {error: e};
}
};
var notify = function(promise, isReject){
if(promise._n)return;
promise._n = true;
var chain = promise._c;
microtask(function(){
var value = promise._v
, ok = promise._s == 1
, i = 0;
var run = function(reaction){
var handler = ok ? reaction.ok : reaction.fail
, resolve = reaction.resolve
, reject = reaction.reject
, domain = reaction.domain
, result, then;
try {
if(handler){
if(!ok){
if(promise._h == 2)onHandleUnhandled(promise);
promise._h = 1;
}
if(handler === true)result = value;
else {
if(domain)domain.enter();
result = handler(value);
if(domain)domain.exit();
}
if(result === reaction.promise){
reject(TypeError('Promise-chain cycle'));
} else if(then = isThenable(result)){
then.call(result, resolve, reject);
} else resolve(result);
} else reject(value);
} catch(e){
reject(e);
}
};
while(chain.length > i)run(chain[i++]); // variable length - can't use forEach
promise._c = [];
promise._n = false;
if(isReject && !promise._h)onUnhandled(promise);
});
};
var onUnhandled = function(promise){
task.call(global, function(){
var value = promise._v
, abrupt, handler, console;
if(isUnhandled(promise)){
abrupt = perform(function(){
if(isNode){
process.emit('unhandledRejection', value, promise);
} else if(handler = global.onunhandledrejection){
handler({promise: promise, reason: value});
} else if((console = global.console) && console.error){
console.error('Unhandled promise rejection', value);
}
});
// Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
promise._h = isNode || isUnhandled(promise) ? 2 : 1;
} promise._a = undefined;
if(abrupt)throw abrupt.error;
});
};
var isUnhandled = function(promise){
if(promise._h == 1)return false;
var chain = promise._a || promise._c
, i = 0
, reaction;
while(chain.length > i){
reaction = chain[i++];
if(reaction.fail || !isUnhandled(reaction.promise))return false;
} return true;
};
var onHandleUnhandled = function(promise){
task.call(global, function(){
var handler;
if(isNode){
process.emit('rejectionHandled', promise);
} else if(handler = global.onrejectionhandled){
handler({promise: promise, reason: promise._v});
}
});
};
var $reject = function(value){
var promise = this;
if(promise._d)return;
promise._d = true;
promise = promise._w || promise; // unwrap
promise._v = value;
promise._s = 2;
if(!promise._a)promise._a = promise._c.slice();
notify(promise, true);
};
var $resolve = function(value){
var promise = this
, then;
if(promise._d)return;
promise._d = true;
promise = promise._w || promise; // unwrap
try {
if(promise === value)throw TypeError("Promise can't be resolved itself");
if(then = isThenable(value)){
microtask(function(){
var wrapper = {_w: promise, _d: false}; // wrap
try {
then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
} catch(e){
$reject.call(wrapper, e);
}
});
} else {
promise._v = value;
promise._s = 1;
notify(promise, false);
}
} catch(e){
$reject.call({_w: promise, _d: false}, e); // wrap
}
};
// constructor polyfill
if(!USE_NATIVE){
// 25.4.3.1 Promise(executor)
$Promise = function Promise(executor){
anInstance(this, $Promise, PROMISE, '_h');
aFunction(executor);
Internal.call(this);
try {
executor(ctx($resolve, this, 1), ctx($reject, this, 1));
} catch(err){
$reject.call(this, err);
}
};
Internal = function Promise(executor){
this._c = []; // <- awaiting reactions
this._a = undefined; // <- checked in isUnhandled reactions
this._s = 0; // <- state
this._d = false; // <- done
this._v = undefined; // <- value
this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
this._n = false; // <- notify
};
Internal.prototype = __webpack_require__(40)($Promise.prototype, {
// 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
then: function then(onFulfilled, onRejected){
var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
reaction.fail = typeof onRejected == 'function' && onRejected;
reaction.domain = isNode ? process.domain : undefined;
this._c.push(reaction);
if(this._a)this._a.push(reaction);
if(this._s)notify(this, false);
return reaction.promise;
},
// 25.4.5.1 Promise.prototype.catch(onRejected)
'catch': function(onRejected){
return this.then(undefined, onRejected);
}
});
PromiseCapability = function(){
var promise = new Internal;
this.promise = promise;
this.resolve = ctx($resolve, promise, 1);
this.reject = ctx($reject, promise, 1);
};
}
$export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: $Promise});
__webpack_require__(45)($Promise, PROMISE);
__webpack_require__(41)(PROMISE);
Wrapper = __webpack_require__(15)[PROMISE];
// statics
$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
// 25.4.4.5 Promise.reject(r)
reject: function reject(r){
var capability = newPromiseCapability(this)
, $$reject = capability.reject;
$$reject(r);
return capability.promise;
}
});
$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
// 25.4.4.6 Promise.resolve(x)
resolve: function resolve(x){
// instanceof instead of internal slot check because we should fix it without replacement native Promise core
if(x instanceof $Promise && sameConstructor(x.constructor, this))return x;
var capability = newPromiseCapability(this)
, $$resolve = capability.resolve;
$$resolve(x);
return capability.promise;
}
});
$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(58)(function(iter){
$Promise.all(iter)['catch'](empty);
})), PROMISE, {
// 25.4.4.1 Promise.all(iterable)
all: function all(iterable){
var C = this
, capability = newPromiseCapability(C)
, resolve = capability.resolve
, reject = capability.reject;
var abrupt = perform(function(){
var values = []
, index = 0
, remaining = 1;
forOf(iterable, false, function(promise){
var $index = index++
, alreadyCalled = false;
values.push(undefined);
remaining++;
C.resolve(promise).then(function(value){
if(alreadyCalled)return;
alreadyCalled = true;
values[$index] = value;
--remaining || resolve(values);
}, reject);
});
--remaining || resolve(values);
});
if(abrupt)reject(abrupt.error);
return capability.promise;
},
// 25.4.4.4 Promise.race(iterable)
race: function race(iterable){
var C = this
, capability = newPromiseCapability(C)
, reject = capability.reject;
var abrupt = perform(function(){
forOf(iterable, false, function(promise){
C.resolve(promise).then(capability.resolve, reject);
});
});
if(abrupt)reject(abrupt.error);
return capability.promise;
}
});
/***/ },
/* 221 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)
var $export = __webpack_require__(1)
, aFunction = __webpack_require__(13)
, anObject = __webpack_require__(2)
, _apply = Function.apply;
$export($export.S, 'Reflect', {
apply: function apply(target, thisArgument, argumentsList){
return _apply.call(aFunction(target), thisArgument, anObject(argumentsList));
}
});
/***/ },
/* 222 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(1)
, create = __webpack_require__(28)
, aFunction = __webpack_require__(13)
, anObject = __webpack_require__(2)
, isObject = __webpack_require__(5)
, bind = __webpack_require__(99);
// MS Edge supports only 2 arguments
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
$export($export.S + $export.F * __webpack_require__(4)(function(){
function F(){}
return !(Reflect.construct(function(){}, [], F) instanceof F);
}), 'Reflect', {
construct: function construct(Target, args /*, newTarget*/){
aFunction(Target);
anObject(args);
var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
if(Target == newTarget){
// w/o altered newTarget, optimization for 0-4 arguments
switch(args.length){
case 0: return new Target;
case 1: return new Target(args[0]);
case 2: return new Target(args[0], args[1]);
case 3: return new Target(args[0], args[1], args[2]);
case 4: return new Target(args[0], args[1], args[2], args[3]);
}
// w/o altered newTarget, lot of arguments case
var $args = [null];
$args.push.apply($args, args);
return new (bind.apply(Target, $args));
}
// with altered newTarget, not support built-in constructors
var proto = newTarget.prototype
, instance = create(isObject(proto) ? proto : Object.prototype)
, result = Function.apply.call(Target, instance, args);
return isObject(result) ? result : instance;
}
});
/***/ },
/* 223 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
var dP = __webpack_require__(7)
, $export = __webpack_require__(1)
, anObject = __webpack_require__(2)
, toPrimitive = __webpack_require__(26);
// MS Edge has broken Reflect.defineProperty - throwing instead of returning false
$export($export.S + $export.F * __webpack_require__(4)(function(){
Reflect.defineProperty(dP.f({}, 1, {value: 1}), 1, {value: 2});
}), 'Reflect', {
defineProperty: function defineProperty(target, propertyKey, attributes){
anObject(target);
propertyKey = toPrimitive(propertyKey, true);
anObject(attributes);
try {
dP.f(target, propertyKey, attributes);
return true;
} catch(e){
return false;
}
}
});
/***/ },
/* 224 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.4 Reflect.deleteProperty(target, propertyKey)
var $export = __webpack_require__(1)
, gOPD = __webpack_require__(16).f
, anObject = __webpack_require__(2);
$export($export.S, 'Reflect', {
deleteProperty: function deleteProperty(target, propertyKey){
var desc = gOPD(anObject(target), propertyKey);
return desc && !desc.configurable ? false : delete target[propertyKey];
}
});
/***/ },
/* 225 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// 26.1.5 Reflect.enumerate(target)
var $export = __webpack_require__(1)
, anObject = __webpack_require__(2);
var Enumerate = function(iterated){
this._t = anObject(iterated); // target
this._i = 0; // next index
var keys = this._k = [] // keys
, key;
for(key in iterated)keys.push(key);
};
__webpack_require__(56)(Enumerate, 'Object', function(){
var that = this
, keys = that._k
, key;
do {
if(that._i >= keys.length)return {value: undefined, done: true};
} while(!((key = keys[that._i++]) in that._t));
return {value: key, done: false};
});
$export($export.S, 'Reflect', {
enumerate: function enumerate(target){
return new Enumerate(target);
}
});
/***/ },
/* 226 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)
var gOPD = __webpack_require__(16)
, $export = __webpack_require__(1)
, anObject = __webpack_require__(2);
$export($export.S, 'Reflect', {
getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey){
return gOPD.f(anObject(target), propertyKey);
}
});
/***/ },
/* 227 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.8 Reflect.getPrototypeOf(target)
var $export = __webpack_require__(1)
, getProto = __webpack_require__(17)
, anObject = __webpack_require__(2);
$export($export.S, 'Reflect', {
getPrototypeOf: function getPrototypeOf(target){
return getProto(anObject(target));
}
});
/***/ },
/* 228 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(16)
, getPrototypeOf = __webpack_require__(17)
, has = __webpack_require__(10)
, $export = __webpack_require__(1)
, isObject = __webpack_require__(5)
, anObject = __webpack_require__(2);
function get(target, propertyKey/*, receiver*/){
var receiver = arguments.length < 3 ? target : arguments[2]
, desc, proto;
if(anObject(target) === receiver)return target[propertyKey];
if(desc = gOPD.f(target, propertyKey))return has(desc, 'value')
? desc.value
: desc.get !== undefined
? desc.get.call(receiver)
: undefined;
if(isObject(proto = getPrototypeOf(target)))return get(proto, propertyKey, receiver);
}
$export($export.S, 'Reflect', {get: get});
/***/ },
/* 229 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.9 Reflect.has(target, propertyKey)
var $export = __webpack_require__(1);
$export($export.S, 'Reflect', {
has: function has(target, propertyKey){
return propertyKey in target;
}
});
/***/ },
/* 230 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.10 Reflect.isExtensible(target)
var $export = __webpack_require__(1)
, anObject = __webpack_require__(2)
, $isExtensible = Object.isExtensible;
$export($export.S, 'Reflect', {
isExtensible: function isExtensible(target){
anObject(target);
return $isExtensible ? $isExtensible(target) : true;
}
});
/***/ },
/* 231 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.11 Reflect.ownKeys(target)
var $export = __webpack_require__(1);
$export($export.S, 'Reflect', {ownKeys: __webpack_require__(80)});
/***/ },
/* 232 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.12 Reflect.preventExtensions(target)
var $export = __webpack_require__(1)
, anObject = __webpack_require__(2)
, $preventExtensions = Object.preventExtensions;
$export($export.S, 'Reflect', {
preventExtensions: function preventExtensions(target){
anObject(target);
try {
if($preventExtensions)$preventExtensions(target);
return true;
} catch(e){
return false;
}
}
});
/***/ },
/* 233 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.14 Reflect.setPrototypeOf(target, proto)
var $export = __webpack_require__(1)
, setProto = __webpack_require__(61);
if(setProto)$export($export.S, 'Reflect', {
setPrototypeOf: function setPrototypeOf(target, proto){
setProto.check(target, proto);
try {
setProto.set(target, proto);
return true;
} catch(e){
return false;
}
}
});
/***/ },
/* 234 */
/***/ function(module, exports, __webpack_require__) {
// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])
var dP = __webpack_require__(7)
, gOPD = __webpack_require__(16)
, getPrototypeOf = __webpack_require__(17)
, has = __webpack_require__(10)
, $export = __webpack_require__(1)
, createDesc = __webpack_require__(29)
, anObject = __webpack_require__(2)
, isObject = __webpack_require__(5);
function set(target, propertyKey, V/*, receiver*/){
var receiver = arguments.length < 4 ? target : arguments[3]
, ownDesc = gOPD.f(anObject(target), propertyKey)
, existingDescriptor, proto;
if(!ownDesc){
if(isObject(proto = getPrototypeOf(target))){
return set(proto, propertyKey, V, receiver);
}
ownDesc = createDesc(0);
}
if(has(ownDesc, 'value')){
if(ownDesc.writable === false || !isObject(receiver))return false;
existingDescriptor = gOPD.f(receiver, propertyKey) || createDesc(0);
existingDescriptor.value = V;
dP.f(receiver, propertyKey, existingDescriptor);
return true;
}
return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);
}
$export($export.S, 'Reflect', {set: set});
/***/ },
/* 235 */
/***/ function(module, exports, __webpack_require__) {
var global = __webpack_require__(3)
, inheritIfRequired = __webpack_require__(71)
, dP = __webpack_require__(7).f
, gOPN = __webpack_require__(39).f
, isRegExp = __webpack_require__(55)
, $flags = __webpack_require__(53)
, $RegExp = global.RegExp
, Base = $RegExp
, proto = $RegExp.prototype
, re1 = /a/g
, re2 = /a/g
// "new" creates a new object, old webkit buggy here
, CORRECT_NEW = new $RegExp(re1) !== re1;
if(__webpack_require__(8) && (!CORRECT_NEW || __webpack_require__(4)(function(){
re2[__webpack_require__(6)('match')] = false;
// RegExp constructor can alter flags and IsRegExp works correct with @@match
return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
}))){
$RegExp = function RegExp(p, f){
var tiRE = this instanceof $RegExp
, piRE = isRegExp(p)
, fiU = f === undefined;
return !tiRE && piRE && p.constructor === $RegExp && fiU ? p
: inheritIfRequired(CORRECT_NEW
? new Base(piRE && !fiU ? p.source : p, f)
: Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)
, tiRE ? this : proto, $RegExp);
};
var proxy = function(key){
key in $RegExp || dP($RegExp, key, {
configurable: true,
get: function(){ return Base[key]; },
set: function(it){ Base[key] = it; }
});
};
for(var keys = gOPN(Base), i = 0; keys.length > i; )proxy(keys[i++]);
proto.constructor = $RegExp;
$RegExp.prototype = proto;
__webpack_require__(18)(global, 'RegExp', $RegExp);
}
__webpack_require__(41)('RegExp');
/***/ },
/* 236 */
/***/ function(module, exports, __webpack_require__) {
// @@match logic
__webpack_require__(52)('match', 1, function(defined, MATCH, $match){
// 21.1.3.11 String.prototype.match(regexp)
return [function match(regexp){
'use strict';
var O = defined(this)
, fn = regexp == undefined ? undefined : regexp[MATCH];
return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
}, $match];
});
/***/ },
/* 237 */
/***/ function(module, exports, __webpack_require__) {
// @@replace logic
__webpack_require__(52)('replace', 2, function(defined, REPLACE, $replace){
// 21.1.3.14 String.prototype.replace(searchValue, replaceValue)
return [function replace(searchValue, replaceValue){
'use strict';
var O = defined(this)
, fn = searchValue == undefined ? undefined : searchValue[REPLACE];
return fn !== undefined
? fn.call(searchValue, O, replaceValue)
: $replace.call(String(O), searchValue, replaceValue);
}, $replace];
});
/***/ },
/* 238 */
/***/ function(module, exports, __webpack_require__) {
// @@search logic
__webpack_require__(52)('search', 1, function(defined, SEARCH, $search){
// 21.1.3.15 String.prototype.search(regexp)
return [function search(regexp){
'use strict';
var O = defined(this)
, fn = regexp == undefined ? undefined : regexp[SEARCH];
return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
}, $search];
});
/***/ },
/* 239 */
/***/ function(module, exports, __webpack_require__) {
// @@split logic
__webpack_require__(52)('split', 2, function(defined, SPLIT, $split){
'use strict';
var isRegExp = __webpack_require__(55)
, _split = $split
, $push = [].push
, $SPLIT = 'split'
, LENGTH = 'length'
, LAST_INDEX = 'lastIndex';
if(
'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
'.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
'.'[$SPLIT](/()()/)[LENGTH] > 1 ||
''[$SPLIT](/.?/)[LENGTH]
){
var NPCG = /()??/.exec('')[1] === undefined; // nonparticipating capturing group
// based on es5-shim implementation, need to rework it
$split = function(separator, limit){
var string = String(this);
if(separator === undefined && limit === 0)return [];
// If `separator` is not a regex, use native split
if(!isRegExp(separator))return _split.call(string, separator, limit);
var output = [];
var flags = (separator.ignoreCase ? 'i' : '') +
(separator.multiline ? 'm' : '') +
(separator.unicode ? 'u' : '') +
(separator.sticky ? 'y' : '');
var lastLastIndex = 0;
var splitLimit = limit === undefined ? 4294967295 : limit >>> 0;
// Make `global` and avoid `lastIndex` issues by working with a copy
var separatorCopy = new RegExp(separator.source, flags + 'g');
var separator2, match, lastIndex, lastLength, i;
// Doesn't need flags gy, but they don't hurt
if(!NPCG)separator2 = new RegExp('^' + separatorCopy.source + '$(?!\\s)', flags);
while(match = separatorCopy.exec(string)){
// `separatorCopy.lastIndex` is not reliable cross-browser
lastIndex = match.index + match[0][LENGTH];
if(lastIndex > lastLastIndex){
output.push(string.slice(lastLastIndex, match.index));
// Fix browsers whose `exec` methods don't consistently return `undefined` for NPCG
if(!NPCG && match[LENGTH] > 1)match[0].replace(separator2, function(){
for(i = 1; i < arguments[LENGTH] - 2; i++)if(arguments[i] === undefined)match[i] = undefined;
});
if(match[LENGTH] > 1 && match.index < string[LENGTH])$push.apply(output, match.slice(1));
lastLength = match[0][LENGTH];
lastLastIndex = lastIndex;
if(output[LENGTH] >= splitLimit)break;
}
if(separatorCopy[LAST_INDEX] === match.index)separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
}
if(lastLastIndex === string[LENGTH]){
if(lastLength || !separatorCopy.test(''))output.push('');
} else output.push(string.slice(lastLastIndex));
return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
};
// Chakra, V8
} else if('0'[$SPLIT](undefined, 0)[LENGTH]){
$split = function(separator, limit){
return separator === undefined && limit === 0 ? [] : _split.call(this, separator, limit);
};
}
// 21.1.3.17 String.prototype.split(separator, limit)
return [function split(separator, limit){
var O = defined(this)
, fn = separator == undefined ? undefined : separator[SPLIT];
return fn !== undefined ? fn.call(separator, O, limit) : $split.call(String(O), separator, limit);
}, $split];
});
/***/ },
/* 240 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
__webpack_require__(119);
var anObject = __webpack_require__(2)
, $flags = __webpack_require__(53)
, DESCRIPTORS = __webpack_require__(8)
, TO_STRING = 'toString'
, $toString = /./[TO_STRING];
var define = function(fn){
__webpack_require__(18)(RegExp.prototype, TO_STRING, fn, true);
};
// 21.2.5.14 RegExp.prototype.toString()
if(__webpack_require__(4)(function(){ return $toString.call({source: 'a', flags: 'b'}) != '/a/b'; })){
define(function toString(){
var R = anObject(this);
return '/'.concat(R.source, '/',
'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
});
// FF44- RegExp#toString has a wrong name
} else if($toString.name != TO_STRING){
define(function toString(){
return $toString.call(this);
});
}
/***/ },
/* 241 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.2 String.prototype.anchor(name)
__webpack_require__(19)('anchor', function(createHTML){
return function anchor(name){
return createHTML(this, 'a', 'name', name);
}
});
/***/ },
/* 242 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.3 String.prototype.big()
__webpack_require__(19)('big', function(createHTML){
return function big(){
return createHTML(this, 'big', '', '');
}
});
/***/ },
/* 243 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.4 String.prototype.blink()
__webpack_require__(19)('blink', function(createHTML){
return function blink(){
return createHTML(this, 'blink', '', '');
}
});
/***/ },
/* 244 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.5 String.prototype.bold()
__webpack_require__(19)('bold', function(createHTML){
return function bold(){
return createHTML(this, 'b', '', '');
}
});
/***/ },
/* 245 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $at = __webpack_require__(85)(false);
$export($export.P, 'String', {
// 21.1.3.3 String.prototype.codePointAt(pos)
codePointAt: function codePointAt(pos){
return $at(this, pos);
}
});
/***/ },
/* 246 */
/***/ function(module, exports, __webpack_require__) {
// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])
'use strict';
var $export = __webpack_require__(1)
, toLength = __webpack_require__(9)
, context = __webpack_require__(86)
, ENDS_WITH = 'endsWith'
, $endsWith = ''[ENDS_WITH];
$export($export.P + $export.F * __webpack_require__(69)(ENDS_WITH), 'String', {
endsWith: function endsWith(searchString /*, endPosition = @length */){
var that = context(this, searchString, ENDS_WITH)
, endPosition = arguments.length > 1 ? arguments[1] : undefined
, len = toLength(that.length)
, end = endPosition === undefined ? len : Math.min(toLength(endPosition), len)
, search = String(searchString);
return $endsWith
? $endsWith.call(that, search, end)
: that.slice(end - search.length, end) === search;
}
});
/***/ },
/* 247 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.6 String.prototype.fixed()
__webpack_require__(19)('fixed', function(createHTML){
return function fixed(){
return createHTML(this, 'tt', '', '');
}
});
/***/ },
/* 248 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.7 String.prototype.fontcolor(color)
__webpack_require__(19)('fontcolor', function(createHTML){
return function fontcolor(color){
return createHTML(this, 'font', 'color', color);
}
});
/***/ },
/* 249 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.8 String.prototype.fontsize(size)
__webpack_require__(19)('fontsize', function(createHTML){
return function fontsize(size){
return createHTML(this, 'font', 'size', size);
}
});
/***/ },
/* 250 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, toIndex = __webpack_require__(42)
, fromCharCode = String.fromCharCode
, $fromCodePoint = String.fromCodePoint;
// length should be 1, old FF problem
$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
// 21.1.2.2 String.fromCodePoint(...codePoints)
fromCodePoint: function fromCodePoint(x){ // eslint-disable-line no-unused-vars
var res = []
, aLen = arguments.length
, i = 0
, code;
while(aLen > i){
code = +arguments[i++];
if(toIndex(code, 0x10ffff) !== code)throw RangeError(code + ' is not a valid code point');
res.push(code < 0x10000
? fromCharCode(code)
: fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
);
} return res.join('');
}
});
/***/ },
/* 251 */
/***/ function(module, exports, __webpack_require__) {
// 21.1.3.7 String.prototype.includes(searchString, position = 0)
'use strict';
var $export = __webpack_require__(1)
, context = __webpack_require__(86)
, INCLUDES = 'includes';
$export($export.P + $export.F * __webpack_require__(69)(INCLUDES), 'String', {
includes: function includes(searchString /*, position = 0 */){
return !!~context(this, searchString, INCLUDES)
.indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
}
});
/***/ },
/* 252 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.9 String.prototype.italics()
__webpack_require__(19)('italics', function(createHTML){
return function italics(){
return createHTML(this, 'i', '', '');
}
});
/***/ },
/* 253 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $at = __webpack_require__(85)(true);
// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(57)(String, 'String', function(iterated){
this._t = String(iterated); // target
this._i = 0; // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function(){
var O = this._t
, index = this._i
, point;
if(index >= O.length)return {value: undefined, done: true};
point = $at(O, index);
this._i += point.length;
return {value: point, done: false};
});
/***/ },
/* 254 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.10 String.prototype.link(url)
__webpack_require__(19)('link', function(createHTML){
return function link(url){
return createHTML(this, 'a', 'href', url);
}
});
/***/ },
/* 255 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, toIObject = __webpack_require__(12)
, toLength = __webpack_require__(9);
$export($export.S, 'String', {
// 21.1.2.4 String.raw(callSite, ...substitutions)
raw: function raw(callSite){
var tpl = toIObject(callSite.raw)
, len = toLength(tpl.length)
, aLen = arguments.length
, res = []
, i = 0;
while(len > i){
res.push(String(tpl[i++]));
if(i < aLen)res.push(String(arguments[i]));
} return res.join('');
}
});
/***/ },
/* 256 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1);
$export($export.P, 'String', {
// 21.1.3.13 String.prototype.repeat(count)
repeat: __webpack_require__(87)
});
/***/ },
/* 257 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.11 String.prototype.small()
__webpack_require__(19)('small', function(createHTML){
return function small(){
return createHTML(this, 'small', '', '');
}
});
/***/ },
/* 258 */
/***/ function(module, exports, __webpack_require__) {
// 21.1.3.18 String.prototype.startsWith(searchString [, position ])
'use strict';
var $export = __webpack_require__(1)
, toLength = __webpack_require__(9)
, context = __webpack_require__(86)
, STARTS_WITH = 'startsWith'
, $startsWith = ''[STARTS_WITH];
$export($export.P + $export.F * __webpack_require__(69)(STARTS_WITH), 'String', {
startsWith: function startsWith(searchString /*, position = 0 */){
var that = context(this, searchString, STARTS_WITH)
, index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length))
, search = String(searchString);
return $startsWith
? $startsWith.call(that, search, index)
: that.slice(index, index + search.length) === search;
}
});
/***/ },
/* 259 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.12 String.prototype.strike()
__webpack_require__(19)('strike', function(createHTML){
return function strike(){
return createHTML(this, 'strike', '', '');
}
});
/***/ },
/* 260 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.13 String.prototype.sub()
__webpack_require__(19)('sub', function(createHTML){
return function sub(){
return createHTML(this, 'sub', '', '');
}
});
/***/ },
/* 261 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// B.2.3.14 String.prototype.sup()
__webpack_require__(19)('sup', function(createHTML){
return function sup(){
return createHTML(this, 'sup', '', '');
}
});
/***/ },
/* 262 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// 21.1.3.25 String.prototype.trim()
__webpack_require__(46)('trim', function($trim){
return function trim(){
return $trim(this, 3);
};
});
/***/ },
/* 263 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// ECMAScript 6 symbols shim
var global = __webpack_require__(3)
, has = __webpack_require__(10)
, DESCRIPTORS = __webpack_require__(8)
, $export = __webpack_require__(1)
, redefine = __webpack_require__(18)
, META = __webpack_require__(32).KEY
, $fails = __webpack_require__(4)
, shared = __webpack_require__(62)
, setToStringTag = __webpack_require__(45)
, uid = __webpack_require__(43)
, wks = __webpack_require__(6)
, wksExt = __webpack_require__(117)
, wksDefine = __webpack_require__(91)
, keyOf = __webpack_require__(105)
, enumKeys = __webpack_require__(131)
, isArray = __webpack_require__(73)
, anObject = __webpack_require__(2)
, toIObject = __webpack_require__(12)
, toPrimitive = __webpack_require__(26)
, createDesc = __webpack_require__(29)
, _create = __webpack_require__(28)
, gOPNExt = __webpack_require__(109)
, $GOPD = __webpack_require__(16)
, $DP = __webpack_require__(7)
, $keys = __webpack_require__(33)
, gOPD = $GOPD.f
, dP = $DP.f
, gOPN = gOPNExt.f
, $Symbol = global.Symbol
, $JSON = global.JSON
, _stringify = $JSON && $JSON.stringify
, PROTOTYPE = 'prototype'
, HIDDEN = wks('_hidden')
, TO_PRIMITIVE = wks('toPrimitive')
, isEnum = {}.propertyIsEnumerable
, SymbolRegistry = shared('symbol-registry')
, AllSymbols = shared('symbols')
, OPSymbols = shared('op-symbols')
, ObjectProto = Object[PROTOTYPE]
, USE_NATIVE = typeof $Symbol == 'function'
, QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function(){
return _create(dP({}, 'a', {
get: function(){ return dP(this, 'a', {value: 7}).a; }
})).a != 7;
}) ? function(it, key, D){
var protoDesc = gOPD(ObjectProto, key);
if(protoDesc)delete ObjectProto[key];
dP(it, key, D);
if(protoDesc && it !== ObjectProto)dP(ObjectProto, key, protoDesc);
} : dP;
var wrap = function(tag){
var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
sym._k = tag;
return sym;
};
var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function(it){
return typeof it == 'symbol';
} : function(it){
return it instanceof $Symbol;
};
var $defineProperty = function defineProperty(it, key, D){
if(it === ObjectProto)$defineProperty(OPSymbols, key, D);
anObject(it);
key = toPrimitive(key, true);
anObject(D);
if(has(AllSymbols, key)){
if(!D.enumerable){
if(!has(it, HIDDEN))dP(it, HIDDEN, createDesc(1, {}));
it[HIDDEN][key] = true;
} else {
if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
D = _create(D, {enumerable: createDesc(0, false)});
} return setSymbolDesc(it, key, D);
} return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P){
anObject(it);
var keys = enumKeys(P = toIObject(P))
, i = 0
, l = keys.length
, key;
while(l > i)$defineProperty(it, key = keys[i++], P[key]);
return it;
};
var $create = function create(it, P){
return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key){
var E = isEnum.call(this, key = toPrimitive(key, true));
if(this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return false;
return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){
it = toIObject(it);
key = toPrimitive(key, true);
if(it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return;
var D = gOPD(it, key);
if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;
return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it){
var names = gOPN(toIObject(it))
, result = []
, i = 0
, key;
while(names.length > i){
if(!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META)result.push(key);
} return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it){
var IS_OP = it === ObjectProto
, names = gOPN(IS_OP ? OPSymbols : toIObject(it))
, result = []
, i = 0
, key;
while(names.length > i){
if(has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true))result.push(AllSymbols[key]);
} return result;
};
// 19.4.1.1 Symbol([description])
if(!USE_NATIVE){
$Symbol = function Symbol(){
if(this instanceof $Symbol)throw TypeError('Symbol is not a constructor!');
var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
var $set = function(value){
if(this === ObjectProto)$set.call(OPSymbols, value);
if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
setSymbolDesc(this, tag, createDesc(1, value));
};
if(DESCRIPTORS && setter)setSymbolDesc(ObjectProto, tag, {configurable: true, set: $set});
return wrap(tag);
};
redefine($Symbol[PROTOTYPE], 'toString', function toString(){
return this._k;
});
$GOPD.f = $getOwnPropertyDescriptor;
$DP.f = $defineProperty;
__webpack_require__(39).f = gOPNExt.f = $getOwnPropertyNames;
__webpack_require__(48).f = $propertyIsEnumerable;
__webpack_require__(60).f = $getOwnPropertySymbols;
if(DESCRIPTORS && !__webpack_require__(38)){
redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
}
wksExt.f = function(name){
return wrap(wks(name));
}
}
$export($export.G + $export.W + $export.F * !USE_NATIVE, {Symbol: $Symbol});
for(var symbols = (
// 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), i = 0; symbols.length > i; )wks(symbols[i++]);
for(var symbols = $keys(wks.store), i = 0; symbols.length > i; )wksDefine(symbols[i++]);
$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
// 19.4.2.1 Symbol.for(key)
'for': function(key){
return has(SymbolRegistry, key += '')
? SymbolRegistry[key]
: SymbolRegistry[key] = $Symbol(key);
},
// 19.4.2.5 Symbol.keyFor(sym)
keyFor: function keyFor(key){
if(isSymbol(key))return keyOf(SymbolRegistry, key);
throw TypeError(key + ' is not a symbol!');
},
useSetter: function(){ setter = true; },
useSimple: function(){ setter = false; }
});
$export($export.S + $export.F * !USE_NATIVE, 'Object', {
// 19.1.2.2 Object.create(O [, Properties])
create: $create,
// 19.1.2.4 Object.defineProperty(O, P, Attributes)
defineProperty: $defineProperty,
// 19.1.2.3 Object.defineProperties(O, Properties)
defineProperties: $defineProperties,
// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
// 19.1.2.7 Object.getOwnPropertyNames(O)
getOwnPropertyNames: $getOwnPropertyNames,
// 19.1.2.8 Object.getOwnPropertySymbols(O)
getOwnPropertySymbols: $getOwnPropertySymbols
});
// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function(){
var S = $Symbol();
// MS Edge converts symbol values to JSON as {}
// WebKit converts symbol values to JSON as null
// V8 throws on boxed symbols
return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
stringify: function stringify(it){
if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined
var args = [it]
, i = 1
, replacer, $replacer;
while(arguments.length > i)args.push(arguments[i++]);
replacer = args[1];
if(typeof replacer == 'function')$replacer = replacer;
if($replacer || !isArray(replacer))replacer = function(key, value){
if($replacer)value = $replacer.call(this, key, value);
if(!isSymbol(value))return value;
};
args[1] = replacer;
return _stringify.apply($JSON, args);
}
});
// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(14)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);
/***/ },
/* 264 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, $typed = __webpack_require__(63)
, buffer = __webpack_require__(90)
, anObject = __webpack_require__(2)
, toIndex = __webpack_require__(42)
, toLength = __webpack_require__(9)
, isObject = __webpack_require__(5)
, TYPED_ARRAY = __webpack_require__(6)('typed_array')
, ArrayBuffer = __webpack_require__(3).ArrayBuffer
, speciesConstructor = __webpack_require__(84)
, $ArrayBuffer = buffer.ArrayBuffer
, $DataView = buffer.DataView
, $isView = $typed.ABV && ArrayBuffer.isView
, $slice = $ArrayBuffer.prototype.slice
, VIEW = $typed.VIEW
, ARRAY_BUFFER = 'ArrayBuffer';
$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), {ArrayBuffer: $ArrayBuffer});
$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {
// 24.1.3.1 ArrayBuffer.isView(arg)
isView: function isView(it){
return $isView && $isView(it) || isObject(it) && VIEW in it;
}
});
$export($export.P + $export.U + $export.F * __webpack_require__(4)(function(){
return !new $ArrayBuffer(2).slice(1, undefined).byteLength;
}), ARRAY_BUFFER, {
// 24.1.4.3 ArrayBuffer.prototype.slice(start, end)
slice: function slice(start, end){
if($slice !== undefined && end === undefined)return $slice.call(anObject(this), start); // FF fix
var len = anObject(this).byteLength
, first = toIndex(start, len)
, final = toIndex(end === undefined ? len : end, len)
, result = new (speciesConstructor(this, $ArrayBuffer))(toLength(final - first))
, viewS = new $DataView(this)
, viewT = new $DataView(result)
, index = 0;
while(first < final){
viewT.setUint8(index++, viewS.getUint8(first++));
} return result;
}
});
__webpack_require__(41)(ARRAY_BUFFER);
/***/ },
/* 265 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1);
$export($export.G + $export.W + $export.F * !__webpack_require__(63).ABV, {
DataView: __webpack_require__(90).DataView
});
/***/ },
/* 266 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(30)('Float32', 4, function(init){
return function Float32Array(data, byteOffset, length){
return init(this, data, byteOffset, length);
};
});
/***/ },
/* 267 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(30)('Float64', 8, function(init){
return function Float64Array(data, byteOffset, length){
return init(this, data, byteOffset, length);
};
});
/***/ },
/* 268 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(30)('Int16', 2, function(init){
return function Int16Array(data, byteOffset, length){
return init(this, data, byteOffset, length);
};
});
/***/ },
/* 269 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(30)('Int32', 4, function(init){
return function Int32Array(data, byteOffset, length){
return init(this, data, byteOffset, length);
};
});
/***/ },
/* 270 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(30)('Int8', 1, function(init){
return function Int8Array(data, byteOffset, length){
return init(this, data, byteOffset, length);
};
});
/***/ },
/* 271 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(30)('Uint16', 2, function(init){
return function Uint16Array(data, byteOffset, length){
return init(this, data, byteOffset, length);
};
});
/***/ },
/* 272 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(30)('Uint32', 4, function(init){
return function Uint32Array(data, byteOffset, length){
return init(this, data, byteOffset, length);
};
});
/***/ },
/* 273 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(30)('Uint8', 1, function(init){
return function Uint8Array(data, byteOffset, length){
return init(this, data, byteOffset, length);
};
});
/***/ },
/* 274 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(30)('Uint8', 1, function(init){
return function Uint8ClampedArray(data, byteOffset, length){
return init(this, data, byteOffset, length);
};
}, true);
/***/ },
/* 275 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var weak = __webpack_require__(102);
// 23.4 WeakSet Objects
__webpack_require__(51)('WeakSet', function(get){
return function WeakSet(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
}, {
// 23.4.3.1 WeakSet.prototype.add(value)
add: function add(value){
return weak.def(this, value, true);
}
}, weak, false, true);
/***/ },
/* 276 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// https://github.com/tc39/Array.prototype.includes
var $export = __webpack_require__(1)
, $includes = __webpack_require__(50)(true);
$export($export.P, 'Array', {
includes: function includes(el /*, fromIndex = 0 */){
return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
}
});
__webpack_require__(44)('includes');
/***/ },
/* 277 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask
var $export = __webpack_require__(1)
, microtask = __webpack_require__(78)()
, process = __webpack_require__(3).process
, isNode = __webpack_require__(20)(process) == 'process';
$export($export.G, {
asap: function asap(fn){
var domain = isNode && process.domain;
microtask(domain ? domain.bind(fn) : fn);
}
});
/***/ },
/* 278 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/ljharb/proposal-is-error
var $export = __webpack_require__(1)
, cof = __webpack_require__(20);
$export($export.S, 'Error', {
isError: function isError(it){
return cof(it) === 'Error';
}
});
/***/ },
/* 279 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/DavidBruant/Map-Set.prototype.toJSON
var $export = __webpack_require__(1);
$export($export.P + $export.R, 'Map', {toJSON: __webpack_require__(101)('Map')});
/***/ },
/* 280 */
/***/ function(module, exports, __webpack_require__) {
// https://gist.github.com/BrendanEich/4294d5c212a6d2254703
var $export = __webpack_require__(1);
$export($export.S, 'Math', {
iaddh: function iaddh(x0, x1, y0, y1){
var $x0 = x0 >>> 0
, $x1 = x1 >>> 0
, $y0 = y0 >>> 0;
return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0;
}
});
/***/ },
/* 281 */
/***/ function(module, exports, __webpack_require__) {
// https://gist.github.com/BrendanEich/4294d5c212a6d2254703
var $export = __webpack_require__(1);
$export($export.S, 'Math', {
imulh: function imulh(u, v){
var UINT16 = 0xffff
, $u = +u
, $v = +v
, u0 = $u & UINT16
, v0 = $v & UINT16
, u1 = $u >> 16
, v1 = $v >> 16
, t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16);
return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16);
}
});
/***/ },
/* 282 */
/***/ function(module, exports, __webpack_require__) {
// https://gist.github.com/BrendanEich/4294d5c212a6d2254703
var $export = __webpack_require__(1);
$export($export.S, 'Math', {
isubh: function isubh(x0, x1, y0, y1){
var $x0 = x0 >>> 0
, $x1 = x1 >>> 0
, $y0 = y0 >>> 0;
return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0;
}
});
/***/ },
/* 283 */
/***/ function(module, exports, __webpack_require__) {
// https://gist.github.com/BrendanEich/4294d5c212a6d2254703
var $export = __webpack_require__(1);
$export($export.S, 'Math', {
umulh: function umulh(u, v){
var UINT16 = 0xffff
, $u = +u
, $v = +v
, u0 = $u & UINT16
, v0 = $v & UINT16
, u1 = $u >>> 16
, v1 = $v >>> 16
, t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16);
return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16);
}
});
/***/ },
/* 284 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, toObject = __webpack_require__(11)
, aFunction = __webpack_require__(13)
, $defineProperty = __webpack_require__(7);
// B.2.2.2 Object.prototype.__defineGetter__(P, getter)
__webpack_require__(8) && $export($export.P + __webpack_require__(59), 'Object', {
__defineGetter__: function __defineGetter__(P, getter){
$defineProperty.f(toObject(this), P, {get: aFunction(getter), enumerable: true, configurable: true});
}
});
/***/ },
/* 285 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, toObject = __webpack_require__(11)
, aFunction = __webpack_require__(13)
, $defineProperty = __webpack_require__(7);
// B.2.2.3 Object.prototype.__defineSetter__(P, setter)
__webpack_require__(8) && $export($export.P + __webpack_require__(59), 'Object', {
__defineSetter__: function __defineSetter__(P, setter){
$defineProperty.f(toObject(this), P, {set: aFunction(setter), enumerable: true, configurable: true});
}
});
/***/ },
/* 286 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(1)
, $entries = __webpack_require__(111)(true);
$export($export.S, 'Object', {
entries: function entries(it){
return $entries(it);
}
});
/***/ },
/* 287 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/tc39/proposal-object-getownpropertydescriptors
var $export = __webpack_require__(1)
, ownKeys = __webpack_require__(80)
, toIObject = __webpack_require__(12)
, gOPD = __webpack_require__(16)
, createProperty = __webpack_require__(66);
$export($export.S, 'Object', {
getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object){
var O = toIObject(object)
, getDesc = gOPD.f
, keys = ownKeys(O)
, result = {}
, i = 0
, key, D;
while(keys.length > i)createProperty(result, key = keys[i++], getDesc(O, key));
return result;
}
});
/***/ },
/* 288 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, toObject = __webpack_require__(11)
, toPrimitive = __webpack_require__(26)
, getPrototypeOf = __webpack_require__(17)
, getOwnPropertyDescriptor = __webpack_require__(16).f;
// B.2.2.4 Object.prototype.__lookupGetter__(P)
__webpack_require__(8) && $export($export.P + __webpack_require__(59), 'Object', {
__lookupGetter__: function __lookupGetter__(P){
var O = toObject(this)
, K = toPrimitive(P, true)
, D;
do {
if(D = getOwnPropertyDescriptor(O, K))return D.get;
} while(O = getPrototypeOf(O));
}
});
/***/ },
/* 289 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
var $export = __webpack_require__(1)
, toObject = __webpack_require__(11)
, toPrimitive = __webpack_require__(26)
, getPrototypeOf = __webpack_require__(17)
, getOwnPropertyDescriptor = __webpack_require__(16).f;
// B.2.2.5 Object.prototype.__lookupSetter__(P)
__webpack_require__(8) && $export($export.P + __webpack_require__(59), 'Object', {
__lookupSetter__: function __lookupSetter__(P){
var O = toObject(this)
, K = toPrimitive(P, true)
, D;
do {
if(D = getOwnPropertyDescriptor(O, K))return D.set;
} while(O = getPrototypeOf(O));
}
});
/***/ },
/* 290 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(1)
, $values = __webpack_require__(111)(false);
$export($export.S, 'Object', {
values: function values(it){
return $values(it);
}
});
/***/ },
/* 291 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// https://github.com/zenparsing/es-observable
var $export = __webpack_require__(1)
, global = __webpack_require__(3)
, core = __webpack_require__(15)
, microtask = __webpack_require__(78)()
, OBSERVABLE = __webpack_require__(6)('observable')
, aFunction = __webpack_require__(13)
, anObject = __webpack_require__(2)
, anInstance = __webpack_require__(31)
, redefineAll = __webpack_require__(40)
, hide = __webpack_require__(14)
, forOf = __webpack_require__(36)
, RETURN = forOf.RETURN;
var getMethod = function(fn){
return fn == null ? undefined : aFunction(fn);
};
var cleanupSubscription = function(subscription){
var cleanup = subscription._c;
if(cleanup){
subscription._c = undefined;
cleanup();
}
};
var subscriptionClosed = function(subscription){
return subscription._o === undefined;
};
var closeSubscription = function(subscription){
if(!subscriptionClosed(subscription)){
subscription._o = undefined;
cleanupSubscription(subscription);
}
};
var Subscription = function(observer, subscriber){
anObject(observer);
this._c = undefined;
this._o = observer;
observer = new SubscriptionObserver(this);
try {
var cleanup = subscriber(observer)
, subscription = cleanup;
if(cleanup != null){
if(typeof cleanup.unsubscribe === 'function')cleanup = function(){ subscription.unsubscribe(); };
else aFunction(cleanup);
this._c = cleanup;
}
} catch(e){
observer.error(e);
return;
} if(subscriptionClosed(this))cleanupSubscription(this);
};
Subscription.prototype = redefineAll({}, {
unsubscribe: function unsubscribe(){ closeSubscription(this); }
});
var SubscriptionObserver = function(subscription){
this._s = subscription;
};
SubscriptionObserver.prototype = redefineAll({}, {
next: function next(value){
var subscription = this._s;
if(!subscriptionClosed(subscription)){
var observer = subscription._o;
try {
var m = getMethod(observer.next);
if(m)return m.call(observer, value);
} catch(e){
try {
closeSubscription(subscription);
} finally {
throw e;
}
}
}
},
error: function error(value){
var subscription = this._s;
if(subscriptionClosed(subscription))throw value;
var observer = subscription._o;
subscription._o = undefined;
try {
var m = getMethod(observer.error);
if(!m)throw value;
value = m.call(observer, value);
} catch(e){
try {
cleanupSubscription(subscription);
} finally {
throw e;
}
} cleanupSubscription(subscription);
return value;
},
complete: function complete(value){
var subscription = this._s;
if(!subscriptionClosed(subscription)){
var observer = subscription._o;
subscription._o = undefined;
try {
var m = getMethod(observer.complete);
value = m ? m.call(observer, value) : undefined;
} catch(e){
try {
cleanupSubscription(subscription);
} finally {
throw e;
}
} cleanupSubscription(subscription);
return value;
}
}
});
var $Observable = function Observable(subscriber){
anInstance(this, $Observable, 'Observable', '_f')._f = aFunction(subscriber);
};
redefineAll($Observable.prototype, {
subscribe: function subscribe(observer){
return new Subscription(observer, this._f);
},
forEach: function forEach(fn){
var that = this;
return new (core.Promise || global.Promise)(function(resolve, reject){
aFunction(fn);
var subscription = that.subscribe({
next : function(value){
try {
return fn(value);
} catch(e){
reject(e);
subscription.unsubscribe();
}
},
error: reject,
complete: resolve
});
});
}
});
redefineAll($Observable, {
from: function from(x){
var C = typeof this === 'function' ? this : $Observable;
var method = getMethod(anObject(x)[OBSERVABLE]);
if(method){
var observable = anObject(method.call(x));
return observable.constructor === C ? observable : new C(function(observer){
return observable.subscribe(observer);
});
}
return new C(function(observer){
var done = false;
microtask(function(){
if(!done){
try {
if(forOf(x, false, function(it){
observer.next(it);
if(done)return RETURN;
}) === RETURN)return;
} catch(e){
if(done)throw e;
observer.error(e);
return;
} observer.complete();
}
});
return function(){ done = true; };
});
},
of: function of(){
for(var i = 0, l = arguments.length, items = Array(l); i < l;)items[i] = arguments[i++];
return new (typeof this === 'function' ? this : $Observable)(function(observer){
var done = false;
microtask(function(){
if(!done){
for(var i = 0; i < items.length; ++i){
observer.next(items[i]);
if(done)return;
} observer.complete();
}
});
return function(){ done = true; };
});
}
});
hide($Observable.prototype, OBSERVABLE, function(){ return this; });
$export($export.G, {Observable: $Observable});
__webpack_require__(41)('Observable');
/***/ },
/* 292 */
/***/ function(module, exports, __webpack_require__) {
var metadata = __webpack_require__(27)
, anObject = __webpack_require__(2)
, toMetaKey = metadata.key
, ordinaryDefineOwnMetadata = metadata.set;
metadata.exp({defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey){
ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey));
}});
/***/ },
/* 293 */
/***/ function(module, exports, __webpack_require__) {
var metadata = __webpack_require__(27)
, anObject = __webpack_require__(2)
, toMetaKey = metadata.key
, getOrCreateMetadataMap = metadata.map
, store = metadata.store;
metadata.exp({deleteMetadata: function deleteMetadata(metadataKey, target /*, targetKey */){
var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2])
, metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false);
if(metadataMap === undefined || !metadataMap['delete'](metadataKey))return false;
if(metadataMap.size)return true;
var targetMetadata = store.get(target);
targetMetadata['delete'](targetKey);
return !!targetMetadata.size || store['delete'](target);
}});
/***/ },
/* 294 */
/***/ function(module, exports, __webpack_require__) {
var Set = __webpack_require__(120)
, from = __webpack_require__(97)
, metadata = __webpack_require__(27)
, anObject = __webpack_require__(2)
, getPrototypeOf = __webpack_require__(17)
, ordinaryOwnMetadataKeys = metadata.keys
, toMetaKey = metadata.key;
var ordinaryMetadataKeys = function(O, P){
var oKeys = ordinaryOwnMetadataKeys(O, P)
, parent = getPrototypeOf(O);
if(parent === null)return oKeys;
var pKeys = ordinaryMetadataKeys(parent, P);
return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys;
};
metadata.exp({getMetadataKeys: function getMetadataKeys(target /*, targetKey */){
return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));
}});
/***/ },
/* 295 */
/***/ function(module, exports, __webpack_require__) {
var metadata = __webpack_require__(27)
, anObject = __webpack_require__(2)
, getPrototypeOf = __webpack_require__(17)
, ordinaryHasOwnMetadata = metadata.has
, ordinaryGetOwnMetadata = metadata.get
, toMetaKey = metadata.key;
var ordinaryGetMetadata = function(MetadataKey, O, P){
var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);
if(hasOwn)return ordinaryGetOwnMetadata(MetadataKey, O, P);
var parent = getPrototypeOf(O);
return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined;
};
metadata.exp({getMetadata: function getMetadata(metadataKey, target /*, targetKey */){
return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));
}});
/***/ },
/* 296 */
/***/ function(module, exports, __webpack_require__) {
var metadata = __webpack_require__(27)
, anObject = __webpack_require__(2)
, ordinaryOwnMetadataKeys = metadata.keys
, toMetaKey = metadata.key;
metadata.exp({getOwnMetadataKeys: function getOwnMetadataKeys(target /*, targetKey */){
return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));
}});
/***/ },
/* 297 */
/***/ function(module, exports, __webpack_require__) {
var metadata = __webpack_require__(27)
, anObject = __webpack_require__(2)
, ordinaryGetOwnMetadata = metadata.get
, toMetaKey = metadata.key;
metadata.exp({getOwnMetadata: function getOwnMetadata(metadataKey, target /*, targetKey */){
return ordinaryGetOwnMetadata(metadataKey, anObject(target)
, arguments.length < 3 ? undefined : toMetaKey(arguments[2]));
}});
/***/ },
/* 298 */
/***/ function(module, exports, __webpack_require__) {
var metadata = __webpack_require__(27)
, anObject = __webpack_require__(2)
, getPrototypeOf = __webpack_require__(17)
, ordinaryHasOwnMetadata = metadata.has
, toMetaKey = metadata.key;
var ordinaryHasMetadata = function(MetadataKey, O, P){
var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);
if(hasOwn)return true;
var parent = getPrototypeOf(O);
return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false;
};
metadata.exp({hasMetadata: function hasMetadata(metadataKey, target /*, targetKey */){
return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));
}});
/***/ },
/* 299 */
/***/ function(module, exports, __webpack_require__) {
var metadata = __webpack_require__(27)
, anObject = __webpack_require__(2)
, ordinaryHasOwnMetadata = metadata.has
, toMetaKey = metadata.key;
metadata.exp({hasOwnMetadata: function hasOwnMetadata(metadataKey, target /*, targetKey */){
return ordinaryHasOwnMetadata(metadataKey, anObject(target)
, arguments.length < 3 ? undefined : toMetaKey(arguments[2]));
}});
/***/ },
/* 300 */
/***/ function(module, exports, __webpack_require__) {
var metadata = __webpack_require__(27)
, anObject = __webpack_require__(2)
, aFunction = __webpack_require__(13)
, toMetaKey = metadata.key
, ordinaryDefineOwnMetadata = metadata.set;
metadata.exp({metadata: function metadata(metadataKey, metadataValue){
return function decorator(target, targetKey){
ordinaryDefineOwnMetadata(
metadataKey, metadataValue,
(targetKey !== undefined ? anObject : aFunction)(target),
toMetaKey(targetKey)
);
};
}});
/***/ },
/* 301 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/DavidBruant/Map-Set.prototype.toJSON
var $export = __webpack_require__(1);
$export($export.P + $export.R, 'Set', {toJSON: __webpack_require__(101)('Set')});
/***/ },
/* 302 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// https://github.com/mathiasbynens/String.prototype.at
var $export = __webpack_require__(1)
, $at = __webpack_require__(85)(true);
$export($export.P, 'String', {
at: function at(pos){
return $at(this, pos);
}
});
/***/ },
/* 303 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// https://tc39.github.io/String.prototype.matchAll/
var $export = __webpack_require__(1)
, defined = __webpack_require__(21)
, toLength = __webpack_require__(9)
, isRegExp = __webpack_require__(55)
, getFlags = __webpack_require__(53)
, RegExpProto = RegExp.prototype;
var $RegExpStringIterator = function(regexp, string){
this._r = regexp;
this._s = string;
};
__webpack_require__(56)($RegExpStringIterator, 'RegExp String', function next(){
var match = this._r.exec(this._s);
return {value: match, done: match === null};
});
$export($export.P, 'String', {
matchAll: function matchAll(regexp){
defined(this);
if(!isRegExp(regexp))throw TypeError(regexp + ' is not a regexp!');
var S = String(this)
, flags = 'flags' in RegExpProto ? String(regexp.flags) : getFlags.call(regexp)
, rx = new RegExp(regexp.source, ~flags.indexOf('g') ? flags : 'g' + flags);
rx.lastIndex = toLength(regexp.lastIndex);
return new $RegExpStringIterator(rx, S);
}
});
/***/ },
/* 304 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// https://github.com/tc39/proposal-string-pad-start-end
var $export = __webpack_require__(1)
, $pad = __webpack_require__(116);
$export($export.P, 'String', {
padEnd: function padEnd(maxLength /*, fillString = ' ' */){
return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);
}
});
/***/ },
/* 305 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// https://github.com/tc39/proposal-string-pad-start-end
var $export = __webpack_require__(1)
, $pad = __webpack_require__(116);
$export($export.P, 'String', {
padStart: function padStart(maxLength /*, fillString = ' ' */){
return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);
}
});
/***/ },
/* 306 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
__webpack_require__(46)('trimLeft', function($trim){
return function trimLeft(){
return $trim(this, 1);
};
}, 'trimStart');
/***/ },
/* 307 */
/***/ function(module, exports, __webpack_require__) {
'use strict';
// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
__webpack_require__(46)('trimRight', function($trim){
return function trimRight(){
return $trim(this, 2);
};
}, 'trimEnd');
/***/ },
/* 308 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(91)('asyncIterator');
/***/ },
/* 309 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(91)('observable');
/***/ },
/* 310 */
/***/ function(module, exports, __webpack_require__) {
// https://github.com/ljharb/proposal-global
var $export = __webpack_require__(1);
$export($export.S, 'System', {global: __webpack_require__(3)});
/***/ },
/* 311 */
/***/ function(module, exports, __webpack_require__) {
var $iterators = __webpack_require__(93)
, redefine = __webpack_require__(18)
, global = __webpack_require__(3)
, hide = __webpack_require__(14)
, Iterators = __webpack_require__(37)
, wks = __webpack_require__(6)
, ITERATOR = wks('iterator')
, TO_STRING_TAG = wks('toStringTag')
, ArrayValues = Iterators.Array;
for(var collections = ['NodeList', 'DOMTokenList', 'MediaList', 'StyleSheetList', 'CSSRuleList'], i = 0; i < 5; i++){
var NAME = collections[i]
, Collection = global[NAME]
, proto = Collection && Collection.prototype
, key;
if(proto){
if(!proto[ITERATOR])hide(proto, ITERATOR, ArrayValues);
if(!proto[TO_STRING_TAG])hide(proto, TO_STRING_TAG, NAME);
Iterators[NAME] = ArrayValues;
for(key in $iterators)if(!proto[key])redefine(proto, key, $iterators[key], true);
}
}
/***/ },
/* 312 */
/***/ function(module, exports, __webpack_require__) {
var $export = __webpack_require__(1)
, $task = __webpack_require__(89);
$export($export.G + $export.B, {
setImmediate: $task.set,
clearImmediate: $task.clear
});
/***/ },
/* 313 */
/***/ function(module, exports, __webpack_require__) {
// ie9- setTimeout & setInterval additional parameters fix
var global = __webpack_require__(3)
, $export = __webpack_require__(1)
, invoke = __webpack_require__(54)
, partial = __webpack_require__(81)
, navigator = global.navigator
, MSIE = !!navigator && /MSIE .\./.test(navigator.userAgent); // <- dirty ie9- check
var wrap = function(set){
return MSIE ? function(fn, time /*, ...args */){
return set(invoke(
partial,
[].slice.call(arguments, 2),
typeof fn == 'function' ? fn : Function(fn)
), time);
} : set;
};
$export($export.G + $export.B + $export.F * MSIE, {
setTimeout: wrap(global.setTimeout),
setInterval: wrap(global.setInterval)
});
/***/ },
/* 314 */
/***/ function(module, exports, __webpack_require__) {
__webpack_require__(263);
__webpack_require__(202);
__webpack_require__(204);
__webpack_require__(203);
__webpack_require__(206);
__webpack_require__(208);
__webpack_require__(213);
__webpack_require__(207);
__webpack_require__(205);
__webpack_require__(215);
__webpack_require__(214);
__webpack_require__(210);
__webpack_require__(211);
__webpack_require__(209);
__webpack_require__(201);
__webpack_require__(212);
__webpack_require__(216);
__webpack_require__(217);
__webpack_require__(169);
__webpack_require__(171);
__webpack_require__(170);
__webpack_require__(219);
__webpack_require__(218);
__webpack_require__(189);
__webpack_require__(199);
__webpack_require__(200);
__webpack_require__(190);
__webpack_require__(191);
__webpack_require__(192);
__webpack_require__(193);
__webpack_require__(194);
__webpack_require__(195);
__webpack_require__(196);
__webpack_require__(197);
__webpack_require__(198);
__webpack_require__(172);
__webpack_require__(173);
__webpack_require__(174);
__webpack_require__(175);
__webpack_require__(176);
__webpack_require__(177);
__webpack_require__(178);
__webpack_require__(179);
__webpack_require__(180);
__webpack_require__(181);
__webpack_require__(182);
__webpack_require__(183);
__webpack_require__(184);
__webpack_require__(185);
__webpack_require__(186);
__webpack_require__(187);
__webpack_require__(188);
__webpack_require__(250);
__webpack_require__(255);
__webpack_require__(262);
__webpack_require__(253);
__webpack_require__(245);
__webpack_require__(246);
__webpack_require__(251);
__webpack_require__(256);
__webpack_require__(258);
__webpack_require__(241);
__webpack_require__(242);
__webpack_require__(243);
__webpack_require__(244);
__webpack_require__(247);
__webpack_require__(248);
__webpack_require__(249);
__webpack_require__(252);
__webpack_require__(254);
__webpack_require__(257);
__webpack_require__(259);
__webpack_require__(260);
__webpack_require__(261);
__webpack_require__(164);
__webpack_require__(166);
__webpack_require__(165);
__webpack_require__(168);
__webpack_require__(167);
__webpack_require__(153);
__webpack_require__(151);
__webpack_require__(157);
__webpack_require__(154);
__webpack_require__(160);
__webpack_require__(162);
__webpack_require__(150);
__webpack_require__(156);
__webpack_require__(147);
__webpack_require__(161);
__webpack_require__(145);
__webpack_require__(159);
__webpack_require__(158);
__webpack_require__(152);
__webpack_require__(155);
__webpack_require__(144);
__webpack_require__(146);
__webpack_require__(149);
__webpack_require__(148);
__webpack_require__(163);
__webpack_require__(93);
__webpack_require__(235);
__webpack_require__(240);
__webpack_require__(119);
__webpack_require__(236);
__webpack_require__(237);
__webpack_require__(238);
__webpack_require__(239);
__webpack_require__(220);
__webpack_require__(118);
__webpack_require__(120);
__webpack_require__(121);
__webpack_require__(275);
__webpack_require__(264);
__webpack_require__(265);
__webpack_require__(270);
__webpack_require__(273);
__webpack_require__(274);
__webpack_require__(268);
__webpack_require__(271);
__webpack_require__(269);
__webpack_require__(272);
__webpack_require__(266);
__webpack_require__(267);
__webpack_require__(221);
__webpack_require__(222);
__webpack_require__(223);
__webpack_require__(224);
__webpack_require__(225);
__webpack_require__(228);
__webpack_require__(226);
__webpack_require__(227);
__webpack_require__(229);
__webpack_require__(230);
__webpack_require__(231);
__webpack_require__(232);
__webpack_require__(234);
__webpack_require__(233);
__webpack_require__(276);
__webpack_require__(302);
__webpack_require__(305);
__webpack_require__(304);
__webpack_require__(306);
__webpack_require__(307);
__webpack_require__(303);
__webpack_require__(308);
__webpack_require__(309);
__webpack_require__(287);
__webpack_require__(290);
__webpack_require__(286);
__webpack_require__(284);
__webpack_require__(285);
__webpack_require__(288);
__webpack_require__(289);
__webpack_require__(279);
__webpack_require__(301);
__webpack_require__(310);
__webpack_require__(278);
__webpack_require__(280);
__webpack_require__(282);
__webpack_require__(281);
__webpack_require__(283);
__webpack_require__(292);
__webpack_require__(293);
__webpack_require__(295);
__webpack_require__(294);
__webpack_require__(297);
__webpack_require__(296);
__webpack_require__(298);
__webpack_require__(299);
__webpack_require__(300);
__webpack_require__(277);
__webpack_require__(291);
__webpack_require__(313);
__webpack_require__(312);
__webpack_require__(311);
module.exports = __webpack_require__(15);
/***/ },
/* 315 */
/***/ function(module, exports) {
// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.
function EventEmitter() {
this._events = this._events || {};
this._maxListeners = this._maxListeners || undefined;
}
module.exports = EventEmitter;
// Backwards-compat with node 0.10.x
EventEmitter.EventEmitter = EventEmitter;
EventEmitter.prototype._events = undefined;
EventEmitter.prototype._maxListeners = undefined;
// By default EventEmitters will print a warning if more than 10 listeners are
// added to it. This is a useful default which helps finding memory leaks.
EventEmitter.defaultMaxListeners = 10;
// Obviously not all Emitters should be limited to 10. This function allows
// that to be increased. Set to zero for unlimited.
EventEmitter.prototype.setMaxListeners = function(n) {
if (!isNumber(n) || n < 0 || isNaN(n))
throw TypeError('n must be a positive number');
this._maxListeners = n;
return this;
};
EventEmitter.prototype.emit = function(type) {
var er, handler, len, args, i, listeners;
if (!this._events)
this._events = {};
// If there is no 'error' event listener then throw.
if (type === 'error') {
if (!this._events.error ||
(isObject(this._events.error) && !this._events.error.length)) {
er = arguments[1];
if (er instanceof Error) {
throw er; // Unhandled 'error' event
} else {
// At least give some kind of context to the user
var err = new Error('Uncaught, unspecified "error" event. (' + er + ')');
err.context = er;
throw err;
}
}
}
handler = this._events[type];
if (isUndefined(handler))
return false;
if (isFunction(handler)) {
switch (arguments.length) {
// fast cases
case 1:
handler.call(this);
break;
case 2:
handler.call(this, arguments[1]);
break;
case 3:
handler.call(this, arguments[1], arguments[2]);
break;
// slower
default:
args = Array.prototype.slice.call(arguments, 1);
handler.apply(this, args);
}
} else if (isObject(handler)) {
args = Array.prototype.slice.call(arguments, 1);
listeners = handler.slice();
len = listeners.length;
for (i = 0; i < len; i++)
listeners[i].apply(this, args);
}
return true;
};
EventEmitter.prototype.addListener = function(type, listener) {
var m;
if (!isFunction(listener))
throw TypeError('listener must be a function');
if (!this._events)
this._events = {};
// To avoid recursion in the case that type === "newListener"! Before
// adding it to the listeners, first emit "newListener".
if (this._events.newListener)
this.emit('newListener', type,
isFunction(listener.listener) ?
listener.listener : listener);
if (!this._events[type])
// Optimize the case of one listener. Don't need the extra array object.
this._events[type] = listener;
else if (isObject(this._events[type]))
// If we've already got an array, just append.
this._events[type].push(listener);
else
// Adding the second element, need to change to array.
this._events[type] = [this._events[type], listener];
// Check for listener leak
if (isObject(this._events[type]) && !this._events[type].warned) {
if (!isUndefined(this._maxListeners)) {
m = this._maxListeners;
} else {
m = EventEmitter.defaultMaxListeners;
}
if (m && m > 0 && this._events[type].length > m) {
this._events[type].warned = true;
console.error('(node) warning: possible EventEmitter memory ' +
'leak detected. %d listeners added. ' +
'Use emitter.setMaxListeners() to increase limit.',
this._events[type].length);
if (typeof console.trace === 'function') {
// not supported in IE 10
console.trace();
}
}
}
return this;
};
EventEmitter.prototype.on = EventEmitter.prototype.addListener;
EventEmitter.prototype.once = function(type, listener) {
if (!isFunction(listener))
throw TypeError('listener must be a function');
var fired = false;
function g() {
this.removeListener(type, g);
if (!fired) {
fired = true;
listener.apply(this, arguments);
}
}
g.listener = listener;
this.on(type, g);
return this;
};
// emits a 'removeListener' event iff the listener was removed
EventEmitter.prototype.removeListener = function(type, listener) {
var list, position, length, i;
if (!isFunction(listener))
throw TypeError('listener must be a function');
if (!this._events || !this._events[type])
return this;
list = this._events[type];
length = list.length;
position = -1;
if (list === listener ||
(isFunction(list.listener) && list.listener === listener)) {
delete this._events[type];
if (this._events.removeListener)
this.emit('removeListener', type, listener);
} else if (isObject(list)) {
for (i = length; i-- > 0;) {
if (list[i] === listener ||
(list[i].listener && list[i].listener === listener)) {
position = i;
break;
}
}
if (position < 0)
return this;
if (list.length === 1) {
list.length = 0;
delete this._events[type];
} else {
list.splice(position, 1);
}
if (this._events.removeListener)
this.emit('removeListener', type, listener);
}
return this;
};
EventEmitter.prototype.removeAllListeners = function(type) {
var key, listeners;
if (!this._events)
return this;
// not listening for removeListener, no need to emit
if (!this._events.removeListener) {
if (arguments.length === 0)
this._events = {};
else if (this._events[type])
delete this._events[type];
return this;
}
// emit removeListener for all listeners on all events
if (arguments.length === 0) {
for (key in this._events) {
if (key === 'removeListener') continue;
this.removeAllListeners(key);
}
this.removeAllListeners('removeListener');
this._events = {};
return this;
}
listeners = this._events[type];
if (isFunction(listeners)) {
this.removeListener(type, listeners);
} else if (listeners) {
// LIFO order
while (listeners.length)
this.removeListener(type, listeners[listeners.length - 1]);
}
delete this._events[type];
return this;
};
EventEmitter.prototype.listeners = function(type) {
var ret;
if (!this._events || !this._events[type])
ret = [];
else if (isFunction(this._events[type]))
ret = [this._events[type]];
else
ret = this._events[type].slice();
return ret;
};
EventEmitter.prototype.listenerCount = function(type) {
if (this._events) {
var evlistener = this._events[type];
if (isFunction(evlistener))
return 1;
else if (evlistener)
return evlistener.length;
}
return 0;
};
EventEmitter.listenerCount = function(emitter, type) {
return emitter.listenerCount(type);
};
function isFunction(arg) {
return typeof arg === 'function';
}
function isNumber(arg) {
return typeof arg === 'number';
}
function isObject(arg) {
return typeof arg === 'object' && arg !== null;
}
function isUndefined(arg) {
return arg === void 0;
}
/***/ },
/* 316 */
/***/ function(module, exports) {
/**
* Copyright 2013-2014 Facebook, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
"use strict";
/**
* Constructs an enumeration with keys equal to their value.
*
* For example:
*
* var COLORS = keyMirror({blue: null, red: null});
* var myColor = COLORS.blue;
* var isColorValid = !!COLORS[myColor];
*
* The last line could not be performed if the values of the generated enum were
* not equal to their keys.
*
* Input: {key1: val1, key2: val2}
* Output: {key1: key1, key2: key2}
*
* @param {object} obj
* @return {object}
*/
var keyMirror = function(obj) {
var ret = {};
var key;
if (!(obj instanceof Object && !Array.isArray(obj))) {
throw new Error('keyMirror(...): Argument must be an object.');
}
for (key in obj) {
if (!obj.hasOwnProperty(key)) {
continue;
}
ret[key] = key;
}
return ret;
};
module.exports = keyMirror;
/***/ }
/******/ ]);
Comentários
Enviar um comentário