@flowgram.ai/form 0.2.28 → 0.2.29
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/esm/index.js +16 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +16 -4
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
package/dist/esm/index.js
CHANGED
|
@@ -546,6 +546,11 @@ function Field({
|
|
|
546
546
|
const formState = toFormState(formModelState);
|
|
547
547
|
const refresh = useRefresh();
|
|
548
548
|
React2.useEffect(() => {
|
|
549
|
+
if (fieldModel.disposed) {
|
|
550
|
+
refresh();
|
|
551
|
+
return () => {
|
|
552
|
+
};
|
|
553
|
+
}
|
|
549
554
|
fieldModel.renderCount = fieldModel.renderCount + 1;
|
|
550
555
|
if (!formModel.getValueIn(name) !== void 0 && defaultValue !== void 0) {
|
|
551
556
|
formModel.setInitValueIn(name, defaultValue);
|
|
@@ -586,6 +591,7 @@ function Field({
|
|
|
586
591
|
}
|
|
587
592
|
return React2.cloneElement(children, { ...field });
|
|
588
593
|
};
|
|
594
|
+
if (fieldModel.disposed) return /* @__PURE__ */ React2.createElement(React2.Fragment, null);
|
|
589
595
|
return /* @__PURE__ */ React2.createElement(FieldModelContext.Provider, { value: fieldModel }, renderInner());
|
|
590
596
|
}
|
|
591
597
|
|
|
@@ -950,6 +956,9 @@ var FieldModel = class {
|
|
|
950
956
|
onDispose(fn) {
|
|
951
957
|
this.toDispose.onDispose(fn);
|
|
952
958
|
}
|
|
959
|
+
get disposed() {
|
|
960
|
+
return this.toDispose.disposed;
|
|
961
|
+
}
|
|
953
962
|
};
|
|
954
963
|
|
|
955
964
|
// src/core/field-array-model.ts
|
|
@@ -1525,10 +1534,7 @@ function FieldArray({
|
|
|
1525
1534
|
children
|
|
1526
1535
|
}) {
|
|
1527
1536
|
const formModel = useFormModel();
|
|
1528
|
-
const fieldModel =
|
|
1529
|
-
() => formModel.getField(name) || formModel.createFieldArray(name),
|
|
1530
|
-
[name]
|
|
1531
|
-
);
|
|
1537
|
+
const fieldModel = formModel.getField(name) || formModel.createFieldArray(name);
|
|
1532
1538
|
const field = React4.useMemo(() => toFieldArray(fieldModel), [fieldModel]);
|
|
1533
1539
|
const refresh = useRefresh3();
|
|
1534
1540
|
const fieldModelState = useReadonlyReactiveState2(fieldModel.reactiveState);
|
|
@@ -1536,6 +1542,11 @@ function FieldArray({
|
|
|
1536
1542
|
const fieldState = toFieldState(fieldModelState);
|
|
1537
1543
|
const formState = React4.useMemo(() => toFormState(formModelState), [formModelState]);
|
|
1538
1544
|
React4.useEffect(() => {
|
|
1545
|
+
if (fieldModel.disposed) {
|
|
1546
|
+
refresh();
|
|
1547
|
+
return () => {
|
|
1548
|
+
};
|
|
1549
|
+
}
|
|
1539
1550
|
fieldModel.renderCount = fieldModel.renderCount + 1;
|
|
1540
1551
|
if (!formModel.getValueIn(name) !== void 0 && defaultValue !== void 0) {
|
|
1541
1552
|
formModel.setInitValueIn(name, defaultValue);
|
|
@@ -1576,6 +1587,7 @@ function FieldArray({
|
|
|
1576
1587
|
}
|
|
1577
1588
|
return /* @__PURE__ */ React4.createElement(React4.Fragment, null, "Invalid Array render");
|
|
1578
1589
|
};
|
|
1590
|
+
if (fieldModel.disposed) return /* @__PURE__ */ React4.createElement(React4.Fragment, null);
|
|
1579
1591
|
return /* @__PURE__ */ React4.createElement(FieldModelContext.Provider, { value: fieldModel }, renderInner());
|
|
1580
1592
|
}
|
|
1581
1593
|
|