@dragonmastery/zinia-forms-core 0.5.8 → 0.5.9

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/dist/index.d.ts CHANGED
@@ -2685,6 +2685,7 @@ declare function useForm<T extends z.ZodObject<any>, CalcType = (values: z.infer
2685
2685
  isFieldCollapsed: boolean;
2686
2686
  collapsedItems: number[];
2687
2687
  defaultCollapsedInitialized: boolean;
2688
+ lastAddedIndex?: number;
2688
2689
  }>;
2689
2690
  readonly undoHistory: Record<string, {
2690
2691
  type: "add" | "remove" | "swap";
@@ -2916,6 +2917,7 @@ interface FormState<T, CalcType = any, ExtraDataType = any> {
2916
2917
  isFieldCollapsed: boolean;
2917
2918
  collapsedItems: number[];
2918
2919
  defaultCollapsedInitialized: boolean;
2920
+ lastAddedIndex?: number;
2919
2921
  }>;
2920
2922
  undoHistory: Record<string, {
2921
2923
  type: 'add' | 'remove' | 'swap';
package/dist/index.js CHANGED
@@ -2672,7 +2672,14 @@ function createDaisyUIArrayField() {
2672
2672
  }
2673
2673
  const collapseState = formState.collapsedFields[fieldName];
2674
2674
  if (props.defaultCollapsed && !collapseState.defaultCollapsedInitialized && arrayValue.length > 0) {
2675
- collapseState.collapsedItems = arrayValue.map((_, index) => index);
2675
+ const indicesToCollapse = arrayValue.map((_, index) => index);
2676
+ const lastAdded = collapseState.lastAddedIndex;
2677
+ if (lastAdded !== void 0) {
2678
+ const pos = indicesToCollapse.indexOf(lastAdded);
2679
+ if (pos > -1) indicesToCollapse.splice(pos, 1);
2680
+ delete collapseState.lastAddedIndex;
2681
+ }
2682
+ collapseState.collapsedItems = indicesToCollapse;
2676
2683
  collapseState.defaultCollapsedInitialized = true;
2677
2684
  }
2678
2685
  const toggleFieldCollapse = () => {
@@ -2882,6 +2889,7 @@ function createDaisyUIArrayField() {
2882
2889
  const newArray = [...currentArray, itemCopy];
2883
2890
  const newItemIndex = newArray.length - 1;
2884
2891
  formState.addArrayItemId(props.name, newItemIndex);
2892
+ collapseState.lastAddedIndex = newItemIndex;
2885
2893
  const collapsedIndex = collapseState.collapsedItems.indexOf(newItemIndex);
2886
2894
  if (collapsedIndex > -1) {
2887
2895
  collapseState.collapsedItems.splice(collapsedIndex, 1);