diff --git a/dist/setup-wp-env/create-wp-env-config.js b/dist/setup-wp-env/create-wp-env-config.js index 9a81f23..3a7754a 100644 --- a/dist/setup-wp-env/create-wp-env-config.js +++ b/dist/setup-wp-env/create-wp-env-config.js @@ -18,20 +18,19 @@ async function main() { "active-theme": { type: "string", default: "", - validate: (value) => typeof value === "string" && /^[a-z0-9-]+$/.test(value) + validate: (value) => typeof value === "string" && /^[a-z0-9-]+$/.test(value) || value === "" }, mappings: { type: "string", default: "" }, dir: { type: "string", default: "./" }, - config1: { type: "string", default: "" }, - config2: { type: "string", default: "" } + config: { type: "string", default: "" } }); - console.log(config); const content = { core: wp ? `WordPress/Wordpress#${wp}` : null, phpVersion: php ? php : null, themes: parseAsArray(themes), - mappings: mappingsFromString(mappings), + mappings: mapFromString(mappings), plugins: parseAsArray(plugins), + config: mapFromString(config), lifecycleScripts: { afterStart: prepareCommands( ["cli", "tests-cli"], @@ -61,12 +60,12 @@ function getOptions(args) { }); return options; } -function mappingsFromString(mappings) { +function mapFromString(mappings) { const config = parseAsArray(mappings).map((mapping) => mapping.split(":")).filter(([from, to]) => from && to); return Object.fromEntries(config); } function parseAsArray(array) { - return array.split(",").map((item) => item.trim()).filter(Boolean); + return array.split(/[,\r\n]/).map((item) => item.trim()).filter(Boolean); } function prepareCommands(envs, commands) { const mergedCommands = commands.filter(Boolean).join(" && "); diff --git a/src/setup-wp-env/create-wp-env-config.ts b/src/setup-wp-env/create-wp-env-config.ts index ca64b1f..c798d1f 100644 --- a/src/setup-wp-env/create-wp-env-config.ts +++ b/src/setup-wp-env/create-wp-env-config.ts @@ -19,22 +19,21 @@ async function main() { type: 'string', default: '', validate: (value) => - typeof value === 'string' && /^[a-z0-9-]+$/.test(value), + (typeof value === 'string' && /^[a-z0-9-]+$/.test(value)) || + value === '', }, mappings: { type: 'string', default: '' }, dir: { type: 'string', default: './' }, - config1: { type: 'string', default: '' }, - config2: { type: 'string', default: '' }, + config: { type: 'string', default: '' }, }); - console.log(config); - const content = { core: wp ? `WordPress/Wordpress#${wp}` : null, phpVersion: php ? php : null, themes: parseAsArray(themes), - mappings: mappingsFromString(mappings), + mappings: mapFromString(mappings), plugins: parseAsArray(plugins), + config: mapFromString(config), lifecycleScripts: { afterStart: prepareCommands( ['cli', 'tests-cli'], @@ -84,7 +83,7 @@ function getOptions( return options; } -function mappingsFromString(mappings: string) { +function mapFromString(mappings: string) { const config = parseAsArray(mappings) .map((mapping) => mapping.split(':')) .filter(([from, to]) => from && to); @@ -94,7 +93,7 @@ function mappingsFromString(mappings: string) { function parseAsArray(array: string) { return array - .split(',') + .split(/[,\r\n]/) .map((item) => item.trim()) .filter(Boolean); }