modify.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
  3. var _interopRequireWildcard = require("@babel/runtime-corejs3/helpers/interopRequireWildcard");
  4. var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
  5. _Object$defineProperty(exports, "__esModule", {
  6. value: true
  7. });
  8. exports.default = _default;
  9. var fspp = _interopRequireWildcard(require("../fs-promise-proxy"));
  10. var _commonActionUtils = require("./_common-action-utils");
  11. var _commonActionInterfaceCheck = _interopRequireDefault(require("./_common-action-interface-check"));
  12. async function _default(data, cfg, plop) {
  13. const interfaceTestResult = (0, _commonActionInterfaceCheck.default)(cfg);
  14. if (interfaceTestResult !== true) {
  15. throw interfaceTestResult;
  16. }
  17. const fileDestPath = (0, _commonActionUtils.makeDestPath)(data, cfg, plop);
  18. try {
  19. // check path
  20. const pathExists = await fspp.fileExists(fileDestPath);
  21. if (!pathExists) {
  22. throw 'File does not exist';
  23. } else {
  24. let fileData = await fspp.readFile(fileDestPath);
  25. cfg.templateFile = (0, _commonActionUtils.getRenderedTemplatePath)(data, cfg, plop);
  26. const replacement = await (0, _commonActionUtils.getRenderedTemplate)(data, cfg, plop);
  27. if (typeof cfg.pattern === 'string' || cfg.pattern instanceof RegExp) {
  28. fileData = fileData.replace(cfg.pattern, replacement);
  29. }
  30. const transformed = await (0, _commonActionUtils.getTransformedTemplate)(fileData, data, cfg);
  31. await fspp.writeFile(fileDestPath, transformed);
  32. }
  33. return (0, _commonActionUtils.getRelativeToBasePath)(fileDestPath, plop);
  34. } catch (err) {
  35. (0, _commonActionUtils.throwStringifiedError)(err);
  36. }
  37. }