format.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.parsePath = exports.parseRadius = void 0;
  4. var util_1 = require("@antv/util");
  5. var regexTags = /[MLHVQTCSAZ]([^MLHVQTCSAZ]*)/gi;
  6. var regexDot = /[^\s,]+/gi;
  7. function parseRadius(radius) {
  8. var r1 = 0;
  9. var r2 = 0;
  10. var r3 = 0;
  11. var r4 = 0;
  12. if (util_1.isArray(radius)) {
  13. if (radius.length === 1) {
  14. r1 = r2 = r3 = r4 = radius[0];
  15. }
  16. else if (radius.length === 2) {
  17. r1 = r3 = radius[0];
  18. r2 = r4 = radius[1];
  19. }
  20. else if (radius.length === 3) {
  21. r1 = radius[0];
  22. r2 = r4 = radius[1];
  23. r3 = radius[2];
  24. }
  25. else {
  26. r1 = radius[0];
  27. r2 = radius[1];
  28. r3 = radius[2];
  29. r4 = radius[3];
  30. }
  31. }
  32. else {
  33. r1 = r2 = r3 = r4 = radius;
  34. }
  35. return {
  36. r1: r1,
  37. r2: r2,
  38. r3: r3,
  39. r4: r4,
  40. };
  41. }
  42. exports.parseRadius = parseRadius;
  43. function parsePath(path) {
  44. path = path || [];
  45. if (util_1.isArray(path)) {
  46. return path;
  47. }
  48. if (util_1.isString(path)) {
  49. path = path.match(regexTags);
  50. util_1.each(path, function (item, index) {
  51. item = item.match(regexDot);
  52. if (item[0].length > 1) {
  53. var tag = item[0].charAt(0);
  54. item.splice(1, 0, item[0].substr(1));
  55. item[0] = tag;
  56. }
  57. util_1.each(item, function (sub, i) {
  58. if (!isNaN(sub)) {
  59. item[i] = +sub;
  60. }
  61. });
  62. path[index] = item;
  63. });
  64. return path;
  65. }
  66. }
  67. exports.parsePath = parsePath;
  68. //# sourceMappingURL=format.js.map