mod-build 3.7.27 → 3.7.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 3.7.28
4
+
5
+ - Applying merging of default form config on all the `steps` objects found.
6
+
3
7
  ## 3.7.27
4
8
 
5
9
  - Adding VWO variation ID to the body tag as an attribute `data-vwo-test-id`.
@@ -253,6 +253,24 @@ module.exports = function(gulp, gulpPlugins, siteSettings, siteData) {
253
253
  }
254
254
  ];
255
255
 
256
+ var mergeDefaultFormFieldConfigOnSteps = async function(data, defaultConfig, stepsIdentifier) {
257
+ if (!data || typeof data !== 'object') return;
258
+
259
+ if (data[stepsIdentifier] && typeof data[stepsIdentifier] === 'object') {
260
+ data[stepsIdentifier] = await mergeDefaultFormFieldConfig(data[stepsIdentifier], defaultConfig);
261
+ }
262
+
263
+ for (const key in data) {
264
+ if (data.hasOwnProperty(key)) {
265
+ const value = data[key];
266
+ if (typeof value === 'object' && value !== null) {
267
+ await mergeDefaultFormFieldConfigOnSteps(value, defaultConfig, stepsIdentifier);
268
+ }
269
+ }
270
+ }
271
+
272
+ }
273
+
256
274
  var mergeDefaultFormFieldConfig = function(steps, defaultConfig) {
257
275
  if (!steps.items) {
258
276
  console.error('No items[ ] found in steps{}!');
@@ -296,15 +314,9 @@ module.exports = function(gulp, gulpPlugins, siteSettings, siteData) {
296
314
 
297
315
  const defaultConfig = await JSON.parse(response);
298
316
 
299
- if (templatesData.steps) {
300
- templatesData.steps = await mergeDefaultFormFieldConfig(templatesData.steps, defaultConfig);
301
- }
302
- if (templatesData.qsSteps) {
303
- templatesData.qsSteps = await mergeDefaultFormFieldConfig(templatesData.qsSteps, defaultConfig);
304
- }
305
- if (templatesData.modSteps) {
306
- templatesData.modSteps = await mergeDefaultFormFieldConfig(templatesData.modSteps, defaultConfig);
307
- }
317
+ await mergeDefaultFormFieldConfigOnSteps(templatesData, defaultConfig, 'steps');
318
+ await mergeDefaultFormFieldConfigOnSteps(templatesData, defaultConfig, 'qsSteps');
319
+ await mergeDefaultFormFieldConfigOnSteps(templatesData, defaultConfig, 'modSteps');
308
320
 
309
321
  templatesData.defaultConfigCompleted = true;
310
322
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mod-build",
3
- "version": "3.7.27",
3
+ "version": "3.7.28",
4
4
  "description": "Share components for S3 sites.",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1",