intelicoreact 1.3.75 → 1.3.76
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Functions/utils.js +19 -4
- package/package.json +1 -1
package/dist/Functions/utils.js
CHANGED
|
@@ -314,11 +314,26 @@ const downloadFile = async _ref => {
|
|
|
314
314
|
downloadEmulation(response.data, name, response.type);
|
|
315
315
|
};
|
|
316
316
|
exports.downloadFile = downloadFile;
|
|
317
|
-
const compare = function (
|
|
318
|
-
var
|
|
317
|
+
const compare = function (first, second) {
|
|
318
|
+
var _Object$entries$sort, _Object$entries, _Object$entries$sort2, _Object$entries2;
|
|
319
319
|
let keys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
320
|
-
|
|
321
|
-
|
|
320
|
+
//? Если типы НЕ равны - не равны априори
|
|
321
|
+
if (typeof first !== typeof second) return false;
|
|
322
|
+
//? Если ответы на вопрос "массив ли?" не равны, то не равны и типы, значит тоже не равны априори
|
|
323
|
+
if (Array.isArray(first) !== Array.isArray(second)) return false;
|
|
324
|
+
//? Если прошли if-ку - типы условно равны, можем оценивать тип лишь одного параметра, это будет справедливо и для второго
|
|
325
|
+
|
|
326
|
+
//? Если примитивы - просто сравниваем. Кейс с null обработан тут.
|
|
327
|
+
if (!(first instanceof Object)) return first === second;
|
|
328
|
+
|
|
329
|
+
//? Исключение для ф-й.
|
|
330
|
+
if (typeof first === 'function') return first.name === second.name;
|
|
331
|
+
|
|
332
|
+
//? Если НЕ приметивы - не важно массив или нет, методы объекта для массива тоже доступны
|
|
333
|
+
//? Получаем структуры для сравнения - массивы массивов, сортируем по ключам
|
|
334
|
+
const structureForComparingOfFirst = (_Object$entries$sort = (_Object$entries = Object.entries(omitKeys(first, keys))).sort) === null || _Object$entries$sort === void 0 ? void 0 : _Object$entries$sort.call(_Object$entries, (a, b) => a[0] > b[0]);
|
|
335
|
+
const structureForComparingOfSecond = (_Object$entries$sort2 = (_Object$entries2 = Object.entries(omitKeys(second, keys))).sort) === null || _Object$entries$sort2 === void 0 ? void 0 : _Object$entries$sort2.call(_Object$entries2, (a, b) => a[0] > b[0]);
|
|
336
|
+
return JSON.stringify(structureForComparingOfFirst) === JSON.stringify(structureForComparingOfSecond);
|
|
322
337
|
};
|
|
323
338
|
|
|
324
339
|
// Set Carret to the End of Input
|