drapcode-utility 2.5.2-preview → 2.5.3

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.
Files changed (2) hide show
  1. package/build/utils/util.js +18 -53
  2. package/package.json +4 -4
@@ -408,21 +408,19 @@ const parseJsonString = (str) => {
408
408
  exports.parseJsonString = parseJsonString;
409
409
  const parseValueFromData = (data, fieldName) => {
410
410
  let value = "";
411
- let valueIndex = "";
412
- let valueIndexFieldName = "";
413
411
  if (fieldName && fieldName.includes(".")) {
414
412
  let fullNameParts = fieldName.split(".");
415
413
  let prefix = "";
416
- let stack = data || {};
414
+ let stack = data || "";
417
415
  for (let k = 0; k < fullNameParts.length; k++) {
418
416
  prefix = fullNameParts[k];
419
- if (stack && Array.isArray(stack)) {
417
+ if (Array.isArray(stack)) {
420
418
  stack[prefix] = stack.map((item) => {
421
419
  if (item[prefix])
422
420
  return item[prefix];
423
421
  });
424
422
  }
425
- if (stack && !stack[prefix]) {
423
+ if (stack && stack[prefix] === undefined) {
426
424
  stack[prefix] = "";
427
425
  }
428
426
  stack = stack[prefix];
@@ -432,57 +430,14 @@ const parseValueFromData = (data, fieldName) => {
432
430
  value = value.filter(() => true);
433
431
  }
434
432
  }
435
- else if (fieldName && fieldName.includes("[")) {
436
- //Todo: Need to Refactor
437
- let fullNameParts = fieldName.split("[");
438
- let prefix = "";
439
- let stack = data || {};
440
- for (let k = 0; k < fullNameParts.length - 1; k++) {
441
- const cValue = fullNameParts[k];
442
- const nValue = fullNameParts[k + 1];
443
- prefix = cValue ? (!cValue.includes("]") ? cValue : "") : "";
444
- valueIndex = nValue
445
- ? nValue.includes("]")
446
- ? nValue.split("]")[0]
447
- : nValue
448
- : "";
449
- if (stack && Array.isArray(stack)) {
450
- stack[prefix] = stack.map((item) => {
451
- if (item[prefix])
452
- return item[prefix];
453
- });
454
- }
455
- if (stack && !stack[prefix]) {
456
- stack[prefix] = "";
457
- }
458
- stack = valueIndex ? stack[prefix][valueIndex] : stack[prefix];
459
- if (fieldName.includes("]:")) {
460
- valueIndexFieldName = nValue.split("]:")[1];
461
- if (valueIndexFieldName) {
462
- stack = stack[valueIndexFieldName];
463
- }
464
- }
465
- }
466
- value = stack ? stack : "";
467
- if (Array.isArray(value)) {
468
- value = value.filter(() => true);
469
- }
470
- }
471
433
  else {
472
434
  value = data ? data[fieldName] : "";
473
435
  }
474
- if (value && Array.isArray(value) && value.length === 1)
475
- return value[0];
476
436
  if (value && Array.isArray(value) && typeof value[0] === "string") {
477
- return value.join(",");
437
+ return value.join(", ");
478
438
  }
479
- if (!value || value == "undefined" || value === "undefined") {
480
- if (value === 0) {
481
- value = "0";
482
- }
483
- else {
484
- value = "";
485
- }
439
+ if (typeof value !== undefined && typeof value === "number") {
440
+ return value.toString();
486
441
  }
487
442
  return value;
488
443
  };
@@ -640,12 +595,22 @@ const fillDefaultValues = (collection, itemdata) => {
640
595
  !fieldTypesToSkip.includes(field.type));
641
596
  allFields.forEach((field) => {
642
597
  const fieldName = field.fieldName;
598
+ const currentValue = filledItemData[fieldName];
599
+ const isEmptyArray = Array.isArray(currentValue) && currentValue.length === 0;
643
600
  if (!(fieldName in filledItemData) ||
644
601
  filledItemData[fieldName] === "" ||
645
602
  filledItemData[fieldName] === 0 ||
646
- filledItemData[fieldName] === false) {
603
+ filledItemData[fieldName] === false ||
604
+ isEmptyArray) {
647
605
  const formattedField = JSON.parse(JSON.stringify(field));
648
- if (field.extraFieldSetting &&
606
+ console.log("These are the field types: ", field.type, typeof field.type);
607
+ if (field.type === "static_option") {
608
+ if (formattedField.extraFieldSetting?.staticDefaultValue?.length > 0) {
609
+ filledItemData[fieldName] =
610
+ formattedField.extraFieldSetting.staticDefaultValue[0];
611
+ }
612
+ }
613
+ else if (field.extraFieldSetting &&
649
614
  "defaultValue" in formattedField.extraFieldSetting) {
650
615
  filledItemData[fieldName] = assignFieldValue(formattedField, field, fieldName, filledItemData);
651
616
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drapcode-utility",
3
- "version": "2.5.2-preview",
3
+ "version": "2.5.3",
4
4
  "description": "DrapCode Utility",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -42,9 +42,9 @@
42
42
  "axios": "^1.1.2",
43
43
  "date-fns": "^4.1.0",
44
44
  "dompurify": "^3.1.7",
45
- "drapcode-constant": "^2.0.3-preview",
46
- "drapcode-logger": "^1.3.5-preview",
47
- "drapcode-redis": "^1.5.0-preview",
45
+ "drapcode-constant": "^2.0.3",
46
+ "drapcode-logger": "^1.3.5",
47
+ "drapcode-redis": "^1.5.0",
48
48
  "exiftool-vendored": "^28.2.1",
49
49
  "express": "^4.17.1",
50
50
  "gm": "^1.25.0",