plugin.js 620 B

1234567891011121314151617181920212223242526272829
  1. const defineHelper = require("../../../helpers/define-helper").default;
  2. const dependency = defineHelper(__dirname, "dependency", `
  3. let foo = "dependency";
  4. export default function fn() { return foo }
  5. `);
  6. const main = defineHelper(__dirname, "main", `
  7. import dep from "${dependency}";
  8. let foo = "main";
  9. export default function helper() {
  10. return dep() + foo;
  11. }
  12. `);
  13. module.exports = function() {
  14. return {
  15. visitor: {
  16. Identifier(path) {
  17. if (path.node.name !== "REPLACE_ME") return;
  18. const helper = this.addHelper(main);
  19. path.replaceWith(helper);
  20. },
  21. },
  22. };
  23. };