@knovator/pagecreator-admin 0.7.0 → 0.7.1

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 (3) hide show
  1. package/index.cjs +15 -3
  2. package/index.js +15 -3
  3. package/package.json +1 -1
package/index.cjs CHANGED
@@ -6912,6 +6912,8 @@ const WidgetForm = ({
6912
6912
  const [selectedCollectionItems, setSelectedCollectionItems] = React.useState([]);
6913
6913
  const [tabCollectionItems, setTabCollectionItems] = React.useState([]);
6914
6914
  const [selectedCollectionType, setSelectedCollectionType] = React.useState();
6915
+ const [collectionItemsUpdated, setCollectionItemsUpdated] = React.useState(false);
6916
+ const [tabCollectionItemsUpdated, setTabCollectionItemsUpdated] = React.useState([]);
6915
6917
  React.useEffect(() => {
6916
6918
  if (data && formState === 'UPDATE') {
6917
6919
  setSelectedWidgetType(data === null || data === void 0 ? void 0 : data.widgetType);
@@ -6924,7 +6926,7 @@ const WidgetForm = ({
6924
6926
  setSelectedCollectionType(itemsTypes.find(item => item.value === (data === null || data === void 0 ? void 0 : data.collectionName)));
6925
6927
  }
6926
6928
  }
6927
- }, [data, formState, collectionData, itemsTypes, setValue]);
6929
+ }, [data, formState, itemsTypes]);
6928
6930
  React.useEffect(() => {
6929
6931
  if (formState === 'ADD') {
6930
6932
  setSelectedCollectionItems([]);
@@ -6945,7 +6947,10 @@ const WidgetForm = ({
6945
6947
  collectionItems = data[constants.tabsAccessor][activeTab] ? data[constants.tabsAccessor][activeTab]['collectionItems'] : [];
6946
6948
  valueToSet = `${constants.tabsAccessor}.${activeTab}.${constants.tabCollectionItemsAccessor}`;
6947
6949
  } else if (Array.isArray(data[constants.collectionItemsAccessor]) && data[constants.collectionItemsAccessor].length > 0) {
6948
- collectionItems = data[constants.collectionItemsAccessor];
6950
+ if (collectionItemsUpdated) collectionItems = selectedCollectionItems.map(
6951
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6952
+ // @ts-ignore
6953
+ collectionItem => collectionItem._id);else collectionItems = data[constants.collectionItemsAccessor];
6949
6954
  // valueToSet = constants.collectionItemsAccessor;
6950
6955
  }
6951
6956
  }
@@ -6968,9 +6973,16 @@ const WidgetForm = ({
6968
6973
  })) || [];
6969
6974
  selectedOptions = selectedOptions.filter(obj => !!obj.value);
6970
6975
  if (valueToSet) {
6971
- setValue(valueToSet, selectedOptions);
6976
+ // only set tabcollection items, when they are not set
6977
+ if (!tabCollectionItemsUpdated[activeTab]) {
6978
+ const updatedArr = tabCollectionItemsUpdated;
6979
+ updatedArr[activeTab] = true;
6980
+ setTabCollectionItemsUpdated(updatedArr);
6981
+ setValue(valueToSet, selectedOptions);
6982
+ }
6972
6983
  } else {
6973
6984
  setSelectedCollectionItems(selectedOptions);
6985
+ setCollectionItemsUpdated(true);
6974
6986
  }
6975
6987
  }
6976
6988
  }, collectionItems);
package/index.js CHANGED
@@ -6900,6 +6900,8 @@ const WidgetForm = ({
6900
6900
  const [selectedCollectionItems, setSelectedCollectionItems] = useState([]);
6901
6901
  const [tabCollectionItems, setTabCollectionItems] = useState([]);
6902
6902
  const [selectedCollectionType, setSelectedCollectionType] = useState();
6903
+ const [collectionItemsUpdated, setCollectionItemsUpdated] = useState(false);
6904
+ const [tabCollectionItemsUpdated, setTabCollectionItemsUpdated] = useState([]);
6903
6905
  useEffect(() => {
6904
6906
  if (data && formState === 'UPDATE') {
6905
6907
  setSelectedWidgetType(data === null || data === void 0 ? void 0 : data.widgetType);
@@ -6912,7 +6914,7 @@ const WidgetForm = ({
6912
6914
  setSelectedCollectionType(itemsTypes.find(item => item.value === (data === null || data === void 0 ? void 0 : data.collectionName)));
6913
6915
  }
6914
6916
  }
6915
- }, [data, formState, collectionData, itemsTypes, setValue]);
6917
+ }, [data, formState, itemsTypes]);
6916
6918
  useEffect(() => {
6917
6919
  if (formState === 'ADD') {
6918
6920
  setSelectedCollectionItems([]);
@@ -6933,7 +6935,10 @@ const WidgetForm = ({
6933
6935
  collectionItems = data[constants.tabsAccessor][activeTab] ? data[constants.tabsAccessor][activeTab]['collectionItems'] : [];
6934
6936
  valueToSet = `${constants.tabsAccessor}.${activeTab}.${constants.tabCollectionItemsAccessor}`;
6935
6937
  } else if (Array.isArray(data[constants.collectionItemsAccessor]) && data[constants.collectionItemsAccessor].length > 0) {
6936
- collectionItems = data[constants.collectionItemsAccessor];
6938
+ if (collectionItemsUpdated) collectionItems = selectedCollectionItems.map(
6939
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6940
+ // @ts-ignore
6941
+ collectionItem => collectionItem._id);else collectionItems = data[constants.collectionItemsAccessor];
6937
6942
  // valueToSet = constants.collectionItemsAccessor;
6938
6943
  }
6939
6944
  }
@@ -6956,9 +6961,16 @@ const WidgetForm = ({
6956
6961
  })) || [];
6957
6962
  selectedOptions = selectedOptions.filter(obj => !!obj.value);
6958
6963
  if (valueToSet) {
6959
- setValue(valueToSet, selectedOptions);
6964
+ // only set tabcollection items, when they are not set
6965
+ if (!tabCollectionItemsUpdated[activeTab]) {
6966
+ const updatedArr = tabCollectionItemsUpdated;
6967
+ updatedArr[activeTab] = true;
6968
+ setTabCollectionItemsUpdated(updatedArr);
6969
+ setValue(valueToSet, selectedOptions);
6970
+ }
6960
6971
  } else {
6961
6972
  setSelectedCollectionItems(selectedOptions);
6973
+ setCollectionItemsUpdated(true);
6962
6974
  }
6963
6975
  }
6964
6976
  }, collectionItems);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@knovator/pagecreator-admin",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "dependencies": {
5
5
  "classnames": "^2.3.1",
6
6
  "react-beautiful-dnd": "^13.1.0",