transpile.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = void 0;
  6. var _detectors = require("../../utils/detectors");
  7. function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }
  8. function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); }
  9. function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); }
  10. function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }
  11. var _default = function _default(t) {
  12. return function (path, state) {
  13. if ((0, _detectors.isStyled)(t)(path.node.tag, state) || (0, _detectors.isHelper)(t)(path.node.tag, state)) {
  14. var _path$node = path.node,
  15. callee = _path$node.tag,
  16. _path$node$quasi = _path$node.quasi,
  17. quasis = _path$node$quasi.quasis,
  18. expressions = _path$node$quasi.expressions;
  19. var values = t.arrayExpression(quasis.filter(function (quasi) {
  20. return quasi.value.cooked !== undefined;
  21. }).map(function (quasi) {
  22. return t.stringLiteral(quasi.value.cooked);
  23. }));
  24. path.replaceWith(t.callExpression(callee, [values].concat(_toConsumableArray(expressions))));
  25. }
  26. };
  27. };
  28. exports.default = _default;