util.js 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. "use strict";
  2. var __read = (this && this.__read) || function (o, n) {
  3. var m = typeof Symbol === "function" && o[Symbol.iterator];
  4. if (!m) return o;
  5. var i = m.call(o), r, ar = [], e;
  6. try {
  7. while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
  8. }
  9. catch (error) { e = { error: error }; }
  10. finally {
  11. try {
  12. if (r && !r.done && (m = i["return"])) m.call(i);
  13. }
  14. finally { if (e) throw e.error; }
  15. }
  16. return ar;
  17. };
  18. var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
  19. if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
  20. if (ar || !(i in from)) {
  21. if (!ar) ar = Array.prototype.slice.call(from, 0, i);
  22. ar[i] = from[i];
  23. }
  24. }
  25. return to.concat(ar || Array.prototype.slice.call(from));
  26. };
  27. exports.__esModule = true;
  28. exports.getMergeFn = exports.combineMerge = exports.overwriteMerge = exports.isObject = void 0;
  29. var isObject = function (obj) {
  30. if (typeof obj === 'object' && obj !== null) {
  31. if (typeof Object.getPrototypeOf === 'function') {
  32. var prototype = Object.getPrototypeOf(obj);
  33. return prototype === Object.prototype || prototype === null;
  34. }
  35. return Object.prototype.toString.call(obj) === '[object Object]';
  36. }
  37. return false;
  38. };
  39. exports.isObject = isObject;
  40. var overwriteMerge = function (_, currArr) { return currArr; };
  41. exports.overwriteMerge = overwriteMerge;
  42. var combineMerge = function (prevArr, currArr) {
  43. return __spreadArray([], __read(new Set(__spreadArray(__spreadArray([], __read(prevArr), false), __read(currArr), false))), false);
  44. };
  45. exports.combineMerge = combineMerge;
  46. var getMergeFn = function (type) {
  47. switch (type) {
  48. case 'overwrite':
  49. return exports.overwriteMerge;
  50. case 'combine':
  51. default:
  52. return exports.combineMerge;
  53. }
  54. };
  55. exports.getMergeFn = getMergeFn;