UNPKG

6.05 kBJavaScriptView Raw
1"use strict";
2/**
3 * Add Object.isEqual to static type
4 */
5if (!Object.isEqual) {
6 Object.isEqual = function (o1, o2) {
7 return o1 === o2 ||
8 (o1.isEqual && o2.isEqual && o1.isEqual(o2));
9 };
10}
11/**
12 * Add Array.isEqual
13 */
14if (!Array.isEqual) {
15 Array.isEqual = function (arr1, arr2, ignoreOrder) {
16 if (ignoreOrder === void 0) { ignoreOrder = false; }
17 if (arr1 === arr2)
18 return true;
19 if (!Array.isArray(arr1) || !Array.isArray(arr2))
20 return false;
21 if (arr1.length !== arr2.length)
22 return false;
23 // If you don't care about the order of the elements inside
24 // the array, you should sort both arrays here.
25 if (!ignoreOrder) {
26 for (var i = 0; i < arr1.length; ++i) {
27 if (arr1[i] !== arr2[i])
28 return false;
29 }
30 }
31 else {
32 var _loop_1 = function (item1) {
33 if (!arr2.find(function (item2) { return Object.isEqual(item1, item2); }))
34 return { value: false };
35 };
36 for (var _i = 0, arr1_1 = arr1; _i < arr1_1.length; _i++) {
37 var item1 = arr1_1[_i];
38 var state_1 = _loop_1(item1);
39 if (typeof state_1 === "object")
40 return state_1.value;
41 }
42 }
43 return true;
44 };
45}
46if (!Object.getOwnPropertyDescriptor(Array.prototype, 'size')) {
47 Object.defineProperty(Array.prototype, 'size', {
48 get: function () {
49 return this.length;
50 }
51 });
52}
53/**
54 * Polyfill Array.prototype.includes
55 */
56if (!Array.prototype.includes) {
57 Array.prototype.includes = function (searchElement /*, fromIndex*/) {
58 'use strict';
59 var O = Object(this);
60 var len = parseInt(O.length) || 0;
61 if (len === 0) {
62 return false;
63 }
64 var n = parseInt(arguments[1]) || 0;
65 var k;
66 if (n >= 0) {
67 k = n;
68 }
69 else {
70 k = len + n;
71 if (k < 0) {
72 k = 0;
73 }
74 }
75 var currentElement;
76 while (k < len) {
77 currentElement = O[k];
78 if (searchElement === currentElement ||
79 (searchElement !== searchElement && currentElement !== currentElement)) {
80 return true;
81 }
82 k++;
83 }
84 return false;
85 };
86}
87//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9seWZpbGxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1BvbHlmaWxscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBa0JBOztHQUVHO0FBQ0gsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNyQixNQUFNLENBQUMsT0FBTyxHQUFHLFVBQUMsRUFBTSxFQUFDLEVBQU07UUFDOUIsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFO1lBQ2YsQ0FBQyxFQUFFLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQzlDLENBQUMsQ0FBQTtBQUNGLENBQUM7QUFFRDs7R0FFRztBQUNILEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFFcEIsS0FBSyxDQUFDLE9BQU8sR0FBRyxVQUFTLElBQUksRUFBQyxJQUFJLEVBQUMsV0FBbUI7UUFBbkIsNEJBQUEsRUFBQSxtQkFBbUI7UUFFckQsRUFBRSxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQztZQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDL0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDL0QsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUc5QywyREFBMkQ7UUFDM0QsK0NBQStDO1FBQy9DLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztZQUNsQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FB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
\No newline at end of file