- updates and fixes;
This commit is contained in:
@@ -1,13 +1,14 @@
|
||||
import React, { useRef, useEffect, useState, useCallback } from 'react';
|
||||
import { classNames } from 'primereact/utils';
|
||||
import { __ } from '@wordpress/i18n';
|
||||
import { head, isNil, pluck } from 'ramda';
|
||||
import { head, isEmpty, isNil } from 'ramda';
|
||||
|
||||
// components
|
||||
import { InputText } from 'primereact/inputtext';
|
||||
import { Button } from 'primereact/button';
|
||||
import { Menu } from 'primereact/menu';
|
||||
import { Dropdown } from 'primereact/dropdown';
|
||||
import { diff } from 'deep-object-diff';
|
||||
|
||||
const FormFieldRepeater = ({
|
||||
data,
|
||||
@@ -84,11 +85,20 @@ const FormFieldRepeater = ({
|
||||
}, [stateFieldData]);
|
||||
|
||||
useEffect(() => {
|
||||
const storeFieldData = data[fieldName] ?? [];
|
||||
const storeFieldData = data ?? [];
|
||||
setStateFieldData(storeFieldData);
|
||||
register(fieldName, config);
|
||||
}, []);
|
||||
|
||||
useEffect(() => {
|
||||
const diffData = diff(data, stateFieldData);
|
||||
|
||||
if (!isEmpty(diffData)) {
|
||||
const storeFieldData = data ?? [];
|
||||
setStateFieldData(storeFieldData);
|
||||
}
|
||||
}, [data]);
|
||||
|
||||
useEffect(() => {
|
||||
setStateOptionsData([...options]);
|
||||
}, [options]);
|
||||
|
||||
Reference in New Issue
Block a user