1. /**
  2. * Generates array configuration code with dry-run functionality.
  3. *
  4. * @param {Array<string>} arrayNames - An array of array names.
  5. * @param {Array<Array<any>>} arrays - An array of arrays with their values.
  6. * @param {string} dryRunMode - A boolean indicating whether to enable dry-run mode.
  7. * @returns {string} - The generated JavaScript code.
  8. */
  9. function generateArrayConfig(arrayNames, arrays, dryRunMode) {
  10. let configCode = "";
  11. // Generate array declarations
  12. for (let i = 0; i < arrayNames.length; i++) {
  13. configCode += `const ${arrayNames[i]} = [`;
  14. const array = arrays[i];
  15. for (let j = 0; j < array.length; j++) {
  16. configCode += JSON.stringify(array[j]);
  17. if (j < array.length - 1) {
  18. configCode += ",";
  19. }
  20. }
  21. configCode += `];\n`;
  22. }
  23. // Generate dry-run flag
  24. configCode += `const dryRun = ${dryRunMode};\n`;
  25. // Generate usage instruction
  26. configCode += `\n// Usage:\n// runScript();\n// runScript(dryRun: boolean);\n`;
  27. return configCode;
  28. }
  29. // Example usage:
  30. // const arrayNames = ["names", "ages", "cities"];
  31. // const arrays = [["Alice", "Bob", "Charlie"], [30, 25, 40], ["New York", "London", "Paris"]];
  32. // const dryRunMode = true; // Set to false for actual execution
  33. // const config = generateArrayConfig(arrayNames, arrays, dryRunMode);
  34. // console.log(config);

Add your comment