@jsenv/navi 0.29.312 → 0.29.314
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/dev/jsenv_navi.js +21 -6
- package/dist/dev/jsenv_navi.js.map +3 -3
- package/dist/jsenv_navi.js +21 -6
- package/dist/jsenv_navi.js.map +3 -3
- package/docs/control_object.md +15 -6
- package/package.json +1 -1
package/dist/jsenv_navi.js
CHANGED
|
@@ -53576,8 +53576,8 @@ const Form = props => {
|
|
|
53576
53576
|
// second's opening tag, so the inner fields would silently belong to the
|
|
53577
53577
|
// outer form. Rather than forbidding the shape (a form inside a picker inside
|
|
53578
53578
|
// a form is a legitimate thing to want), a form that finds itself inside one
|
|
53579
|
-
// is a different component:
|
|
53580
|
-
// browser machinery that comes with it.
|
|
53579
|
+
// is a different component: a group of its own, no <form> element and none of
|
|
53580
|
+
// the browser machinery that comes with it (see FormNested).
|
|
53581
53581
|
const isNested = Boolean(useContext(FormContext));
|
|
53582
53582
|
return isNested ? jsx(FormNested, {
|
|
53583
53583
|
...props
|
|
@@ -53707,13 +53707,26 @@ const FormControl = props => {
|
|
|
53707
53707
|
// event to intercept and no requestSubmit() to go through, so it is driven the
|
|
53708
53708
|
// way every other group is — a command, or an action requested on it. method
|
|
53709
53709
|
// belongs to the browser's own submission, so it means nothing here either.
|
|
53710
|
+
//
|
|
53711
|
+
// And it owns what it holds: `standalone`, unconditionally. A <Form> is a
|
|
53712
|
+
// question with a send of its own, so its fields answer to it and to nothing
|
|
53713
|
+
// above it — they are not in the outer form's value, not in its "changed", and
|
|
53714
|
+
// not in the constraints it checks before sending. That last one is what a
|
|
53715
|
+
// caller feels: a required field in a popup nobody opened would otherwise
|
|
53716
|
+
// refuse the outer submit, pointing at something the screen is not even
|
|
53717
|
+
// showing. A cluster of fields that IS part of the value around it is a
|
|
53718
|
+
// <ControlGroup>, which is the shape without the send (see
|
|
53719
|
+
// docs/control_object.md).
|
|
53710
53720
|
const FormNested = props => {
|
|
53711
53721
|
const {
|
|
53712
53722
|
formRootProps,
|
|
53713
53723
|
formProps,
|
|
53714
53724
|
onnavi_action_end,
|
|
53715
53725
|
inside
|
|
53716
|
-
} = useFormGroup(
|
|
53726
|
+
} = useFormGroup({
|
|
53727
|
+
...props,
|
|
53728
|
+
standalone: true
|
|
53729
|
+
});
|
|
53717
53730
|
return jsx(Box, {
|
|
53718
53731
|
...formRootProps,
|
|
53719
53732
|
...formProps,
|
|
@@ -70752,9 +70765,11 @@ const PickerText = props => {
|
|
|
70752
70765
|
};
|
|
70753
70766
|
|
|
70754
70767
|
// The popup holds a group of named controls — a `<ControlGroup>`, or a `<Form>`
|
|
70755
|
-
// when that group is a question with a send of its own
|
|
70756
|
-
//
|
|
70757
|
-
//
|
|
70768
|
+
// when that group is a question with a send of its own and the picker is not
|
|
70769
|
+
// itself inside a form (a form in a form answers for itself, see form.jsx) —
|
|
70770
|
+
// and this picker's value is the object that group aggregates. The popup itself
|
|
70771
|
+
// holds nothing: it is a surface (see dialog.jsx), so there is nothing to tell
|
|
70772
|
+
// it about the shape.
|
|
70758
70773
|
const PickerObject = props => {
|
|
70759
70774
|
const Next = useNextResolver();
|
|
70760
70775
|
return jsx(Next, {
|