index.js 897 B

123456789101112131415161718192021222324252627282930313233343536
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = void 0;
  6. var _helperPluginUtils = require("@babel/helper-plugin-utils");
  7. var _pluginSyntaxDoExpressions = _interopRequireDefault(require("@babel/plugin-syntax-do-expressions"));
  8. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  9. var _default = (0, _helperPluginUtils.declare)(api => {
  10. api.assertVersion(7);
  11. return {
  12. name: "proposal-do-expressions",
  13. inherits: _pluginSyntaxDoExpressions.default,
  14. visitor: {
  15. DoExpression: {
  16. exit(path) {
  17. const body = path.node.body.body;
  18. if (body.length) {
  19. path.replaceExpressionWithStatements(body);
  20. } else {
  21. path.replaceWith(path.scope.buildUndefinedNode());
  22. }
  23. }
  24. }
  25. }
  26. };
  27. });
  28. exports.default = _default;