common.js 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. "use strict";
  2. exports.__esModule = true;
  3. var _exportNames = {
  4. isObjectValueEqual: true,
  5. parsePadding: true,
  6. directionEnabled: true,
  7. toTimeStamp: true,
  8. upperFirst: true,
  9. lowerFirst: true,
  10. isString: true,
  11. isNumber: true,
  12. isBoolean: true,
  13. isFunction: true,
  14. isDate: true,
  15. isArray: true,
  16. isNil: true,
  17. isObject: true,
  18. isPlainObject: true,
  19. isEqual: true,
  20. deepMix: true,
  21. mix: true,
  22. each: true,
  23. uniq: true,
  24. find: true,
  25. substitute: true,
  26. Array: true
  27. };
  28. exports.isObjectValueEqual = isObjectValueEqual;
  29. exports.parsePadding = parsePadding;
  30. exports.directionEnabled = directionEnabled;
  31. exports.toTimeStamp = toTimeStamp;
  32. exports.Array = void 0;
  33. var _util = require("@antv/util");
  34. exports.upperFirst = _util.upperFirst;
  35. exports.lowerFirst = _util.lowerFirst;
  36. exports.isString = _util.isString;
  37. exports.isNumber = _util.isNumber;
  38. exports.isBoolean = _util.isBoolean;
  39. exports.isFunction = _util.isFunction;
  40. exports.isDate = _util.isDate;
  41. exports.isArray = _util.isArray;
  42. exports.isNil = _util.isNil;
  43. exports.isObject = _util.isObject;
  44. exports.isPlainObject = _util.isPlainObject;
  45. exports.isEqual = _util.isEqual;
  46. exports.deepMix = _util.deepMix;
  47. exports.mix = _util.mix;
  48. exports.each = _util.each;
  49. exports.uniq = _util.uniq;
  50. exports.find = _util.find;
  51. exports.substitute = _util.substitute;
  52. var ArrayUtil = _interopRequireWildcard(require("./array"));
  53. exports.Array = ArrayUtil;
  54. var _dom = require("./dom");
  55. Object.keys(_dom).forEach(function (key) {
  56. if (key === "default" || key === "__esModule") return;
  57. if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
  58. if (key in exports && exports[key] === _dom[key]) return;
  59. exports[key] = _dom[key];
  60. });
  61. function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
  62. function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
  63. /**
  64. * @fileOverview Utility for F2
  65. * @author dxq613 @gmail.com
  66. * @author sima.zhang1990@gmail.com
  67. */
  68. function isObjectValueEqual(a, b) {
  69. // for vue.js
  70. a = Object.assign({}, a);
  71. b = Object.assign({}, b);
  72. var aProps = Object.getOwnPropertyNames(a);
  73. var bProps = Object.getOwnPropertyNames(b);
  74. if (aProps.length !== bProps.length) {
  75. return false;
  76. }
  77. for (var i = 0, len = aProps.length; i < len; i++) {
  78. var propName = aProps[i];
  79. if (a[propName] !== b[propName]) {
  80. return false;
  81. }
  82. }
  83. return true;
  84. }
  85. function parsePadding(padding) {
  86. var top;
  87. var right;
  88. var bottom;
  89. var left;
  90. if ((0, _util.isNumber)(padding) || (0, _util.isString)(padding)) {
  91. top = bottom = left = right = padding;
  92. } else if ((0, _util.isArray)(padding)) {
  93. top = padding[0];
  94. right = !(0, _util.isNil)(padding[1]) ? padding[1] : padding[0];
  95. bottom = !(0, _util.isNil)(padding[2]) ? padding[2] : padding[0];
  96. left = !(0, _util.isNil)(padding[3]) ? padding[3] : right;
  97. }
  98. return [top, right, bottom, left];
  99. }
  100. function directionEnabled(mode, dir) {
  101. if (mode === undefined) {
  102. return true;
  103. } else if (typeof mode === 'string') {
  104. return mode.indexOf(dir) !== -1;
  105. }
  106. return false;
  107. }
  108. function toTimeStamp(value) {
  109. if ((0, _util.isString)(value)) {
  110. if (value.indexOf('T') > 0) {
  111. value = new Date(value).getTime();
  112. } else {
  113. // new Date('2010/01/10') 和 new Date('2010-01-10') 的差别在于:
  114. // 如果仅有年月日时,前者是带有时区的: Fri Jan 10 2020 02:40:13 GMT+0800 (中国标准时间)
  115. // 后者会格式化成 Sun Jan 10 2010 08:00:00 GMT+0800 (中国标准时间)
  116. value = new Date(value.replace(/-/gi, '/')).getTime();
  117. }
  118. }
  119. if ((0, _util.isDate)(value)) {
  120. value = value.getTime();
  121. }
  122. return value;
  123. }