util.js 917 B

123456789101112131415161718192021222324252627282930
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.mergeOptions = mergeOptions;
  6. function mergeOptions(target, source) {
  7. for (const k of Object.keys(source)) {
  8. if (k === "parserOpts" && source.parserOpts) {
  9. const parserOpts = source.parserOpts;
  10. const targetObj = target.parserOpts = target.parserOpts || {};
  11. mergeDefaultFields(targetObj, parserOpts);
  12. } else if (k === "generatorOpts" && source.generatorOpts) {
  13. const generatorOpts = source.generatorOpts;
  14. const targetObj = target.generatorOpts = target.generatorOpts || {};
  15. mergeDefaultFields(targetObj, generatorOpts);
  16. } else {
  17. const val = source[k];
  18. if (val !== undefined) target[k] = val;
  19. }
  20. }
  21. }
  22. function mergeDefaultFields(target, source) {
  23. for (const k of Object.keys(source)) {
  24. const val = source[k];
  25. if (val !== undefined) target[k] = val;
  26. }
  27. }