@object-ui/plugin-form 17.6.0 → 18.0.0
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/CHANGELOG.md +4991 -0
- package/README.md +522 -80
- package/dist/DrawerForm.d.ts +42 -3
- package/dist/DrawerForm.d.ts.map +1 -1
- package/dist/EmbeddableForm.d.ts.map +1 -1
- package/dist/FormAnalytics.d.ts.map +1 -1
- package/dist/LineItemsPanel.d.ts +6 -3
- package/dist/LineItemsPanel.d.ts.map +1 -1
- package/dist/MasterDetailForm.d.ts +79 -38
- package/dist/MasterDetailForm.d.ts.map +1 -1
- package/dist/ModalForm.d.ts +60 -5
- package/dist/ModalForm.d.ts.map +1 -1
- package/dist/ObjectForm.d.ts.map +1 -1
- package/dist/SplitForm.d.ts +49 -3
- package/dist/SplitForm.d.ts.map +1 -1
- package/dist/TabbedForm.d.ts +75 -5
- package/dist/TabbedForm.d.ts.map +1 -1
- package/dist/WizardForm.d.ts +145 -38
- package/dist/WizardForm.d.ts.map +1 -1
- package/dist/autoLayout.d.ts +113 -8
- package/dist/autoLayout.d.ts.map +1 -1
- package/dist/closedAffordanceNotice.d.ts +14 -0
- package/dist/closedAffordanceNotice.d.ts.map +1 -0
- package/dist/customFieldsMerge.d.ts +29 -0
- package/dist/customFieldsMerge.d.ts.map +1 -0
- package/dist/deriveMasterDetail.d.ts +82 -29
- package/dist/deriveMasterDetail.d.ts.map +1 -1
- package/dist/fieldGroups.d.ts +189 -0
- package/dist/fieldGroups.d.ts.map +1 -1
- package/dist/fieldWriteGate.d.ts +136 -0
- package/dist/fieldWriteGate.d.ts.map +1 -0
- package/dist/flatFields.d.ts +11 -2
- package/dist/flatFields.d.ts.map +1 -1
- package/dist/formChrome.d.ts +55 -0
- package/dist/formChrome.d.ts.map +1 -0
- package/dist/index.d.ts +149 -26
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3984 -2332
- package/dist/index.umd.cjs +1 -1
- package/dist/initialFieldFocus.d.ts +23 -0
- package/dist/initialFieldFocus.d.ts.map +1 -0
- package/dist/initialRecord.d.ts +72 -0
- package/dist/initialRecord.d.ts.map +1 -0
- package/dist/loadFailure.d.ts +28 -0
- package/dist/loadFailure.d.ts.map +1 -0
- package/dist/masterDetailTx.d.ts.map +1 -1
- package/dist/occSave.d.ts +6 -1
- package/dist/occSave.d.ts.map +1 -1
- package/dist/recordInvalidation.d.ts +33 -0
- package/dist/recordInvalidation.d.ts.map +1 -0
- package/dist/recordReadGate.d.ts +34 -0
- package/dist/recordReadGate.d.ts.map +1 -0
- package/dist/sanitize.d.ts +272 -5
- package/dist/sanitize.d.ts.map +1 -1
- package/dist/schemaDefaults.d.ts +104 -9
- package/dist/schemaDefaults.d.ts.map +1 -1
- package/dist/sectionFields.d.ts +67 -2
- package/dist/sectionFields.d.ts.map +1 -1
- package/dist/sectionGroups.d.ts +62 -0
- package/dist/sectionGroups.d.ts.map +1 -0
- package/dist/sectionPredicateDiagnostic.d.ts +38 -0
- package/dist/sectionPredicateDiagnostic.d.ts.map +1 -0
- package/dist/submitTarget.d.ts +136 -0
- package/dist/submitTarget.d.ts.map +1 -0
- package/dist/successBehavior.d.ts +44 -25
- package/dist/successBehavior.d.ts.map +1 -1
- package/dist/thankYouRedirectCountdown.d.ts +1 -1
- package/dist/uploadGate.d.ts +35 -0
- package/dist/uploadGate.d.ts.map +1 -0
- package/dist/writePayload.d.ts +87 -0
- package/dist/writePayload.d.ts.map +1 -0
- package/package.json +13 -12
package/dist/DrawerForm.d.ts
CHANGED
|
@@ -1,13 +1,33 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import { FormField, DataSource } from '@object-ui/types';
|
|
2
|
+
import { FormField, DataSource, ObjectFormSchema, ObjectFormSection } from '@object-ui/types';
|
|
3
3
|
export interface DrawerFormSectionConfig {
|
|
4
4
|
name?: string;
|
|
5
5
|
label?: string;
|
|
6
6
|
description?: string;
|
|
7
7
|
columns?: 1 | 2 | 3 | 4;
|
|
8
|
-
|
|
8
|
+
/**
|
|
9
|
+
* The same three entry shapes as `ObjectFormSection.fields`, by reference:
|
|
10
|
+
* a field name, the form view's `{ field, … }` entry, or an inline
|
|
11
|
+
* `FormField` (objectui#11615).
|
|
12
|
+
*/
|
|
13
|
+
fields: NonNullable<ObjectFormSection['fields']>;
|
|
9
14
|
collapsible?: boolean;
|
|
10
15
|
collapsed?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* ADR-0089 `FormSection.visibleWhen` — conditional visibility for the
|
|
18
|
+
* section's divider HEADER, evaluated by the form renderer with the canonical
|
|
19
|
+
* engine and the host predicate scope (#6010/#6111). Fails OPEN.
|
|
20
|
+
*/
|
|
21
|
+
visibleWhen?: string | {
|
|
22
|
+
dialect?: string;
|
|
23
|
+
source: string;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* The fault direction of {@link visibleWhen}, by reference to
|
|
27
|
+
* `ObjectFormSection.visibleWhenFault` (objectui#13055): `'hidden'` (a field
|
|
28
|
+
* group's predicate) hides the section when it cannot be evaluated.
|
|
29
|
+
*/
|
|
30
|
+
visibleWhenFault?: ObjectFormSection['visibleWhenFault'];
|
|
11
31
|
/** Custom CSS class for the section's divider header. */
|
|
12
32
|
className?: string;
|
|
13
33
|
}
|
|
@@ -16,7 +36,8 @@ export interface DrawerFormSchema {
|
|
|
16
36
|
formType: 'drawer';
|
|
17
37
|
objectName: string;
|
|
18
38
|
mode: 'create' | 'edit' | 'view';
|
|
19
|
-
recordId
|
|
39
|
+
/** Record ID (for edit/view modes). A string, per the one record-id rule on `DataSource` (objectui#9511) — `ObjectForm` builds this schema from the authorable `ObjectFormSchema.recordId`, which is a string, and `findOne` takes a string. */
|
|
40
|
+
recordId?: string;
|
|
20
41
|
title?: string;
|
|
21
42
|
description?: string;
|
|
22
43
|
sections?: DrawerFormSectionConfig[];
|
|
@@ -60,6 +81,24 @@ export interface DrawerFormSchema {
|
|
|
60
81
|
readOnly?: boolean;
|
|
61
82
|
layout?: 'vertical' | 'horizontal';
|
|
62
83
|
columns?: number;
|
|
84
|
+
/**
|
|
85
|
+
* Override persistence — the seam a host uses to own the write. Declared as
|
|
86
|
+
* `ObjectFormSchema['submitHandler']` rather than restated, so this variant
|
|
87
|
+
* and the canonical key `ObjectForm` forwards can never drift apart.
|
|
88
|
+
* When supplied, the form validates and hands the collected values
|
|
89
|
+
* to this handler INSTEAD of calling `dataSource.create` /
|
|
90
|
+
* `dataSource.update`; the returned record is passed on to `onSuccess`.
|
|
91
|
+
* In `edit` mode, for a record this form read itself, it hands over what it
|
|
92
|
+
* would have written: the fields that differ from that read, or the full
|
|
93
|
+
* sanitized payload when nothing changed (objectui#10156; the whole rule is
|
|
94
|
+
* on `ObjectFormSchema['submitHandler']`).
|
|
95
|
+
*
|
|
96
|
+
* `MasterDetailForm` supplies it to route the parent AND its child
|
|
97
|
+
* collections through one atomic `batchTransaction` (#2679 / ADR-0034
|
|
98
|
+
* item 4). A renderer that does not read it writes the parent on its own and
|
|
99
|
+
* escapes that transaction — objectui#6176.
|
|
100
|
+
*/
|
|
101
|
+
submitHandler?: ObjectFormSchema['submitHandler'];
|
|
63
102
|
onSuccess?: (data: any) => void | Promise<void>;
|
|
64
103
|
onError?: (error: Error) => void;
|
|
65
104
|
onCancel?: () => void;
|
package/dist/DrawerForm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerForm.d.ts","sourceRoot":"","sources":["../src/DrawerForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"DrawerForm.d.ts","sourceRoot":"","sources":["../src/DrawerForm.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmbeddableForm.d.ts","sourceRoot":"","sources":["../src/EmbeddableForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;GAYG;AAEH,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"EmbeddableForm.d.ts","sourceRoot":"","sources":["../src/EmbeddableForm.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormAnalytics.d.ts","sourceRoot":"","sources":["../src/FormAnalytics.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,KAAkB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"FormAnalytics.d.ts","sourceRoot":"","sources":["../src/FormAnalytics.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,KAAkB,MAAM,OAAO,CAAC;AAIvC,MAAM,WAAW,oBAAoB;IACnC,uCAAuC;IACvC,gBAAgB,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+CAA+C;IAC/C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,+CAA+C;IAC/C,gBAAgB,CAAC,EAAE,KAAK,CAAC;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;IACH,gCAAgC;IAChC,YAAY,CAAC,EAAE,KAAK,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,kBAAkB;IACjC,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC9B,OAAO,EAAE,oBAAoB,CAAC;IAC9B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA+ItD,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
package/dist/LineItemsPanel.d.ts
CHANGED
|
@@ -8,7 +8,9 @@ export interface LineItemsPanelSchema {
|
|
|
8
8
|
parentObject?: string;
|
|
9
9
|
parentId?: string;
|
|
10
10
|
recordId?: string;
|
|
11
|
+
/** Numeric CHILD column summed into the grid's footer total, e.g. `'amount'`. */
|
|
11
12
|
amountField?: string;
|
|
13
|
+
/** PARENT field that receives that sum on save, e.g. `'total_amount'`. */
|
|
12
14
|
totalField?: string;
|
|
13
15
|
title?: string;
|
|
14
16
|
readonly?: boolean;
|
|
@@ -29,10 +31,11 @@ export interface LineItemsPanelSchema {
|
|
|
29
31
|
*/
|
|
30
32
|
filter?: any[] | Record<string, any>;
|
|
31
33
|
/**
|
|
32
|
-
* Load order for the child rows — the
|
|
33
|
-
*
|
|
34
|
+
* Load order for the child rows — the spec's `SortConfig[]`. Without one the
|
|
35
|
+
* rows arrive in storage order. The legacy `"line_no desc"` clause is RETIRED
|
|
36
|
+
* (objectui#8221): `convertSortToQueryParams` refuses it out loud.
|
|
34
37
|
*/
|
|
35
|
-
sort?:
|
|
38
|
+
sort?: Array<{
|
|
36
39
|
field?: string;
|
|
37
40
|
order?: 'asc' | 'desc';
|
|
38
41
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineItemsPanel.d.ts","sourceRoot":"","sources":["../src/LineItemsPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;GASG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"LineItemsPanel.d.ts","sourceRoot":"","sources":["../src/LineItemsPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;GASG;AAEH,OAAO,KAA4D,MAAM,OAAO,CAAC;AASjF,OAAO,EAAwC,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAkE1F,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC;;;;OAIG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAsE5C,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,MAAM,EAAE,oBAAoB,CAAA;CAAE,CAsrBrE,CAAC"}
|
|
@@ -1,37 +1,54 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import { DataSource } from '@object-ui/types';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
2
|
+
import { DataSource, I18nLabel } from '@object-ui/types';
|
|
3
|
+
import { ObjectMasterDetailFormProps } from '@objectstack/spec/ui';
|
|
4
|
+
/**
|
|
5
|
+
* One detail collection: the `details` entry of
|
|
6
|
+
* `ComponentPropsMap['object-master-detail-form']` in `@objectstack/spec`, on
|
|
7
|
+
* its authoring face (`z.input`, what a document writes), taken by reference
|
|
8
|
+
* rather than restated here (objectui#11396). Since 17.6.0 the spec judges that
|
|
9
|
+
* entry as a closed shape (objectstack-ai/objectstack#21215): `childObject`
|
|
10
|
+
* required, every other member optional, `columns` the spec's inline grid
|
|
11
|
+
* column (the type the line grid's `GridColumn` is), an undeclared key refused
|
|
12
|
+
* by name. `@object-ui/types` takes the whole props row by reference, so
|
|
13
|
+
* `objectui validate` gives the spec's verdict on an entry; this is the
|
|
14
|
+
* TypeScript face of that entry, and
|
|
15
|
+
* `__tests__/masterDetailDetailsMembers-8071.test.tsx` holds the two equal at
|
|
16
|
+
* compile time.
|
|
17
|
+
*
|
|
18
|
+
* ONE key is left off, and it is no longer a fork: `sortField`. This form
|
|
19
|
+
* reads no such member — objectui#11070 round 9 retired the authored override:
|
|
20
|
+
* the child field the grid stamps with each line's position is DERIVED from
|
|
21
|
+
* the child object (`deriveDetail` picks its `position` / `sort_order` / …
|
|
22
|
+
* field) and carried on the resolved entry, and row 2c of that test pins that a
|
|
23
|
+
* written `sortField` is read by nothing. Through 17.6.0 the spec entry still
|
|
24
|
+
* declared it; `@objectstack/spec` 17.7.0 retires it — a `retiredKey()`
|
|
25
|
+
* tombstone on the entry (objectstack-ai/objectstack#21589, landed by PR
|
|
26
|
+
* objectstack-ai/objectstack#21632 as `6ec54f00`) — so both published zod faces
|
|
27
|
+
* refuse an authored `sortField` with the spec's retired-key message
|
|
28
|
+
* (objectui#11717). The entry still LISTS the key as that tombstone, and the
|
|
29
|
+
* omission below keeps it off this face rather than offer a member whose only
|
|
30
|
+
* legal value is absence. That omission is the whole of what is hand-written
|
|
31
|
+
* about the shape.
|
|
32
|
+
*
|
|
33
|
+
* Where each member lands — the renderer's reading, which the spec's
|
|
34
|
+
* description does not carry:
|
|
35
|
+
* - `childObject` names the child object; `relationshipField` is the FK on the
|
|
36
|
+
* child back to the parent, auto-detected from the child's `master_detail` /
|
|
37
|
+
* `lookup` field that references the parent when omitted.
|
|
38
|
+
* - `columns` are the line grid's editable columns, derived from the child's
|
|
39
|
+
* fields (via `DataSource.getObjectSchema`) when omitted; `formFields` are
|
|
40
|
+
* the per-row expand form's field names (broader than `columns`: rich types
|
|
41
|
+
* included), derived likewise.
|
|
42
|
+
* - `inlineMode`: `grid` = editable cells, `form` = read-only list + per-row
|
|
43
|
+
* full form; resolved from the relationship's `inlineEdit` (incl. the smart
|
|
44
|
+
* default) when omitted.
|
|
45
|
+
* - `amountField` is the CHILD column summed, and reaches the grid as its
|
|
46
|
+
* `totalField`; `totalField` is the PARENT field the sum is saved to, and is
|
|
47
|
+
* not forwarded to the grid.
|
|
48
|
+
* - `title` heads the collection's section (`Line Items` when unset);
|
|
49
|
+
* `minRows`, `maxRows` and `addLabel` reach the grid under the same names.
|
|
50
|
+
*/
|
|
51
|
+
export type MasterDetailDetailConfig = Omit<NonNullable<ObjectMasterDetailFormProps['details']>[number], 'sortField'>;
|
|
35
52
|
export interface MasterDetailFormSchema {
|
|
36
53
|
type?: 'object-master-detail-form';
|
|
37
54
|
/** Parent object name, e.g. 'expense_claim'. */
|
|
@@ -53,11 +70,28 @@ export interface MasterDetailFormSchema {
|
|
|
53
70
|
sections?: any[];
|
|
54
71
|
fields?: any[];
|
|
55
72
|
formType?: 'simple' | 'tabbed';
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
*
|
|
60
|
-
|
|
73
|
+
/**
|
|
74
|
+
* `title`, `submitText` and `cancelText` are the spec's `I18nLabel`, as
|
|
75
|
+
* `ComponentPropsMap['object-master-detail-form']` in `@objectstack/spec`
|
|
76
|
+
* declares them: a plain string or an inline per-locale map such as
|
|
77
|
+
* `{ en: 'Purchase order', 'zh-CN': '采购单' }`. The form resolves each one
|
|
78
|
+
* with `pickLocalized` against the active UI language
|
|
79
|
+
* (`useObjectTranslation().language`) before it reaches the screen
|
|
80
|
+
* (objectui#10935).
|
|
81
|
+
*
|
|
82
|
+
* `title` names the record in the built-in edit-save toast ("… saved",
|
|
83
|
+
* pack key `form.savedNamed`), which shows only when the host supplies no
|
|
84
|
+
* `onSuccess`.
|
|
85
|
+
*/
|
|
86
|
+
title?: I18nLabel;
|
|
87
|
+
/** Label of the Save button. Defaults to the session locale's `common.save`
|
|
88
|
+
* (edit) or `form.create` ('Save' / 'Create' in English). */
|
|
89
|
+
submitText?: I18nLabel;
|
|
90
|
+
/** Label for the Cancel button in the action bar, which renders only when the
|
|
91
|
+
* host supplies `onCancel`. Defaults to the session locale's `common.cancel`
|
|
92
|
+
* ('Cancel' in English); an authored label, a string or a per-locale map,
|
|
93
|
+
* always wins (objectui#11039). */
|
|
94
|
+
cancelText?: I18nLabel;
|
|
61
95
|
/** Hide the bottom Save/Cancel action bar — e.g. a non-persisting design
|
|
62
96
|
* preview. Defaults to shown (the form owns the only Save in this layout). */
|
|
63
97
|
showSubmit?: boolean;
|
|
@@ -68,6 +102,13 @@ export interface MasterDetailFormSchema {
|
|
|
68
102
|
* Defaults to `tax_rate`; the stack only appears if the field is present. */
|
|
69
103
|
taxRateField?: string;
|
|
70
104
|
onSuccess?: (parent: any) => void | Promise<void>;
|
|
105
|
+
/**
|
|
106
|
+
* Called after a refused save, for bookkeeping only (logging, custom focus
|
|
107
|
+
* handling, …) — NOT for showing the failure to the user. The form
|
|
108
|
+
* renderer already toasts every rejected write for any host `submitHandler`
|
|
109
|
+
* (objectui#7354); a host that also toasts here puts the same refusal on
|
|
110
|
+
* screen twice.
|
|
111
|
+
*/
|
|
71
112
|
onError?: (err: Error) => void;
|
|
72
113
|
onCancel?: () => void;
|
|
73
114
|
className?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MasterDetailForm.d.ts","sourceRoot":"","sources":["../src/MasterDetailForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"MasterDetailForm.d.ts","sourceRoot":"","sources":["../src/MasterDetailForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,KAAK,EAA6B,UAAU,EAAqB,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAmC5G,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAM,MAAM,wBAAwB,GAAG,IAAI,CACzC,WAAW,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAC3D,WAAW,CACZ,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,2BAA2B,CAAC;IACnC,gDAAgD;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B;mFAC+E;IAC/E,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC/B;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;kEAC8D;IAC9D,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;;wCAGoC;IACpC,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;mFAC+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qCAAqC;IACrC,OAAO,EAAE,wBAAwB,EAAE,CAAC;IACpC;;kFAE8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAw7BD,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA8hC5D,CAAC"}
|
package/dist/ModalForm.d.ts
CHANGED
|
@@ -1,11 +1,42 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import { FormField, DataSource } from '@object-ui/types';
|
|
2
|
+
import { FormField, DataSource, ObjectFormSchema, ObjectFormSection } from '@object-ui/types';
|
|
3
3
|
export interface ModalFormSectionConfig {
|
|
4
4
|
name?: string;
|
|
5
5
|
label?: string;
|
|
6
6
|
description?: string;
|
|
7
7
|
columns?: 1 | 2 | 3 | 4;
|
|
8
|
-
|
|
8
|
+
/**
|
|
9
|
+
* The same three entry shapes as `ObjectFormSection.fields`, by reference:
|
|
10
|
+
* a field name, the form view's `{ field, … }` entry, or an inline
|
|
11
|
+
* `FormField` (objectui#11615).
|
|
12
|
+
*/
|
|
13
|
+
fields: NonNullable<ObjectFormSection['fields']>;
|
|
14
|
+
/**
|
|
15
|
+
* Whether the section can be collapsed — spec `FormSection.collapsible`.
|
|
16
|
+
* `collapsed: true` implies it (objectui#9780). The control lives on the
|
|
17
|
+
* section's divider row, so a section with neither `label` nor
|
|
18
|
+
* `description` cannot carry one: it renders open and is reported
|
|
19
|
+
* (objectui#9849, director ruling letter E). Stacked layout only — the
|
|
20
|
+
* `tabbed` content layout draws tabs, which do not collapse.
|
|
21
|
+
*/
|
|
22
|
+
collapsible?: boolean;
|
|
23
|
+
/** Whether the section starts collapsed — spec `FormSection.collapsed`. Same rules as `collapsible`. */
|
|
24
|
+
collapsed?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* ADR-0089 `FormSection.visibleWhen` — conditional visibility for the
|
|
27
|
+
* section's divider HEADER, evaluated by the form renderer with the canonical
|
|
28
|
+
* engine and the host predicate scope (#6010/#6111). Fails OPEN.
|
|
29
|
+
*/
|
|
30
|
+
visibleWhen?: string | {
|
|
31
|
+
dialect?: string;
|
|
32
|
+
source: string;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* The fault direction of {@link visibleWhen}, by reference to
|
|
36
|
+
* `ObjectFormSection.visibleWhenFault` (objectui#13055): `'hidden'` (a field
|
|
37
|
+
* group's predicate) hides the section when it cannot be evaluated.
|
|
38
|
+
*/
|
|
39
|
+
visibleWhenFault?: ObjectFormSection['visibleWhenFault'];
|
|
9
40
|
/** Custom CSS class for the section's header row (stacked layout). */
|
|
10
41
|
className?: string;
|
|
11
42
|
/**
|
|
@@ -20,11 +51,12 @@ export interface ModalFormSchema {
|
|
|
20
51
|
formType: 'modal';
|
|
21
52
|
objectName: string;
|
|
22
53
|
mode: 'create' | 'edit' | 'view';
|
|
23
|
-
recordId
|
|
54
|
+
/** Record ID (for edit/view modes). A string, per the one record-id rule on `DataSource` (objectui#9511) — `ObjectForm` builds this schema from the authorable `ObjectFormSchema.recordId`, which is a string, and `findOne` takes a string. */
|
|
55
|
+
recordId?: string;
|
|
24
56
|
title?: string;
|
|
25
57
|
description?: string;
|
|
26
58
|
sections?: ModalFormSectionConfig[];
|
|
27
|
-
/** Internal content layout (ADR-0050, #1890): 'tabbed' renders sections as
|
|
59
|
+
/** Internal content layout (ADR-0050, objectstack-ai/objectstack#1890): 'tabbed' renders sections as
|
|
28
60
|
* tabs inside the modal, so "modal + tabbed" composes. Default stacks them. */
|
|
29
61
|
contentLayout?: 'simple' | 'tabbed';
|
|
30
62
|
fields?: string[];
|
|
@@ -44,7 +76,12 @@ export interface ModalFormSchema {
|
|
|
44
76
|
*/
|
|
45
77
|
modalSize?: 'sm' | 'default' | 'lg' | 'xl' | 'full';
|
|
46
78
|
/**
|
|
47
|
-
* Whether
|
|
79
|
+
* Whether the dialog draws its close (X) button. Only an explicit `false`
|
|
80
|
+
* hides it (objectui#11061); both dialog arms (the flat form and the
|
|
81
|
+
* `subforms` master-detail form) pass it to `MobileDialogContent`'s
|
|
82
|
+
* `showCloseButton`. Hidden, the form is still dismissable: Escape (and a
|
|
83
|
+
* backdrop click) still reach `onOpenChange(false)`, as does the Cancel
|
|
84
|
+
* action when it is shown.
|
|
48
85
|
* @default true
|
|
49
86
|
*/
|
|
50
87
|
modalCloseButton?: boolean;
|
|
@@ -66,6 +103,24 @@ export interface ModalFormSchema {
|
|
|
66
103
|
readOnly?: boolean;
|
|
67
104
|
layout?: 'vertical' | 'horizontal';
|
|
68
105
|
columns?: number;
|
|
106
|
+
/**
|
|
107
|
+
* Override persistence — the seam a host uses to own the write. Declared as
|
|
108
|
+
* `ObjectFormSchema['submitHandler']` rather than restated, so this variant
|
|
109
|
+
* and the canonical key `ObjectForm` forwards can never drift apart.
|
|
110
|
+
* When supplied, the form validates and hands the collected values
|
|
111
|
+
* to this handler INSTEAD of calling `dataSource.create` /
|
|
112
|
+
* `dataSource.update`; the returned record is passed on to `onSuccess`.
|
|
113
|
+
* In `edit` mode, for a record this form read itself, it hands over what it
|
|
114
|
+
* would have written: the fields that differ from that read, or the full
|
|
115
|
+
* sanitized payload when nothing changed (objectui#10156; the whole rule is
|
|
116
|
+
* on `ObjectFormSchema['submitHandler']`).
|
|
117
|
+
*
|
|
118
|
+
* `MasterDetailForm` supplies it to route the parent AND its child
|
|
119
|
+
* collections through one atomic `batchTransaction` (#2679 / ADR-0034
|
|
120
|
+
* item 4). A renderer that does not read it writes the parent on its own and
|
|
121
|
+
* escapes that transaction — objectui#6176.
|
|
122
|
+
*/
|
|
123
|
+
submitHandler?: ObjectFormSchema['submitHandler'];
|
|
69
124
|
onSuccess?: (data: any) => void | Promise<void>;
|
|
70
125
|
onError?: (error: Error) => void;
|
|
71
126
|
onCancel?: () => void;
|
package/dist/ModalForm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalForm.d.ts","sourceRoot":"","sources":["../src/ModalForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"ModalForm.d.ts","sourceRoot":"","sources":["../src/ModalForm.tsx"],"names":[],"mappings":"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"}
|
package/dist/ObjectForm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObjectForm.d.ts","sourceRoot":"","sources":["../src/ObjectForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AAEH,OAAO,KAAoD,MAAM,OAAO,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAyB,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"ObjectForm.d.ts","sourceRoot":"","sources":["../src/ObjectForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AAEH,OAAO,KAAoD,MAAM,OAAO,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAyB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AA8D5F;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,MAAM,EAAE,gBAAgB,CAAC;IAEzB;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAwFD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAwZzD,CAAC"}
|
package/dist/SplitForm.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import { FormField, DataSource } from '@object-ui/types';
|
|
2
|
+
import { FormField, DataSource, ObjectFormSchema, ObjectFormSection } from '@object-ui/types';
|
|
3
3
|
export interface SplitFormSectionConfig {
|
|
4
4
|
name?: string;
|
|
5
5
|
label?: string;
|
|
@@ -12,7 +12,27 @@ export interface SplitFormSectionConfig {
|
|
|
12
12
|
* positional rule (first section 'primary', every other 'secondary').
|
|
13
13
|
*/
|
|
14
14
|
pane?: 'primary' | 'secondary';
|
|
15
|
-
|
|
15
|
+
/**
|
|
16
|
+
* The same three entry shapes as `ObjectFormSection.fields`, by reference:
|
|
17
|
+
* a field name, the form view's `{ field, … }` entry, or an inline
|
|
18
|
+
* `FormField` (objectui#11615).
|
|
19
|
+
*/
|
|
20
|
+
fields: NonNullable<ObjectFormSection['fields']>;
|
|
21
|
+
/**
|
|
22
|
+
* ADR-0089 `FormSection.visibleWhen` — conditional visibility for the
|
|
23
|
+
* section's divider HEADER, evaluated by the form renderer with the canonical
|
|
24
|
+
* engine and the host predicate scope (#6010/#6111). Fails OPEN.
|
|
25
|
+
*/
|
|
26
|
+
visibleWhen?: string | {
|
|
27
|
+
dialect?: string;
|
|
28
|
+
source: string;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* The fault direction of {@link visibleWhen}, by reference to
|
|
32
|
+
* `ObjectFormSection.visibleWhenFault` (objectui#13055): `'hidden'` (a field
|
|
33
|
+
* group's predicate) hides the section when it cannot be evaluated.
|
|
34
|
+
*/
|
|
35
|
+
visibleWhenFault?: ObjectFormSection['visibleWhenFault'];
|
|
16
36
|
/** Custom CSS class for the section's header row. */
|
|
17
37
|
className?: string;
|
|
18
38
|
/**
|
|
@@ -28,8 +48,16 @@ export interface SplitFormSchema {
|
|
|
28
48
|
formType: 'split';
|
|
29
49
|
objectName: string;
|
|
30
50
|
mode: 'create' | 'edit' | 'view';
|
|
31
|
-
recordId
|
|
51
|
+
/** Record ID (for edit/view modes). A string, per the one record-id rule on `DataSource` (objectui#9511) — `ObjectForm` builds this schema from the authorable `ObjectFormSchema.recordId`, which is a string, and `findOne` takes a string. */
|
|
52
|
+
recordId?: string;
|
|
32
53
|
sections: SplitFormSectionConfig[];
|
|
54
|
+
/**
|
|
55
|
+
* Inline field definitions (`object-form.customFields`). A member naming a
|
|
56
|
+
* field a section lists is that field's definition, as on every other
|
|
57
|
+
* `formType` (objectui#10254); `ObjectForm` hands the key over in its
|
|
58
|
+
* `{...schema}` spread.
|
|
59
|
+
*/
|
|
60
|
+
customFields?: FormField[];
|
|
33
61
|
/**
|
|
34
62
|
* Split direction.
|
|
35
63
|
* @default 'horizontal'
|
|
@@ -59,6 +87,24 @@ export interface SplitFormSchema {
|
|
|
59
87
|
initialValues?: Record<string, any>;
|
|
60
88
|
initialData?: Record<string, any>;
|
|
61
89
|
readOnly?: boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Override persistence — the seam a host uses to own the write. Declared as
|
|
92
|
+
* `ObjectFormSchema['submitHandler']` rather than restated, so this variant
|
|
93
|
+
* and the canonical key `ObjectForm` forwards can never drift apart.
|
|
94
|
+
* When supplied, the form validates and hands the collected values
|
|
95
|
+
* to this handler INSTEAD of calling `dataSource.create` /
|
|
96
|
+
* `dataSource.update`; the returned record is passed on to `onSuccess`.
|
|
97
|
+
* In `edit` mode, for a record this form read itself, it hands over what it
|
|
98
|
+
* would have written: the fields that differ from that read, or the full
|
|
99
|
+
* sanitized payload when nothing changed (objectui#10156, objectui#10563;
|
|
100
|
+
* the whole rule is on `ObjectFormSchema['submitHandler']`).
|
|
101
|
+
*
|
|
102
|
+
* `MasterDetailForm` supplies it to route the parent AND its child
|
|
103
|
+
* collections through one atomic `batchTransaction` (#2679 / ADR-0034
|
|
104
|
+
* item 4). A renderer that does not read it writes the parent on its own and
|
|
105
|
+
* escapes that transaction — objectui#6176.
|
|
106
|
+
*/
|
|
107
|
+
submitHandler?: ObjectFormSchema['submitHandler'];
|
|
62
108
|
onSuccess?: (data: any) => void | Promise<void>;
|
|
63
109
|
onError?: (error: Error) => void;
|
|
64
110
|
onCancel?: () => void;
|
package/dist/SplitForm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SplitForm.d.ts","sourceRoot":"","sources":["../src/SplitForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"SplitForm.d.ts","sourceRoot":"","sources":["../src/SplitForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAc,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAyB/G,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;IAC/B;;;;OAIG;IACH,MAAM,EAAE,WAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjD;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IACzD,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,gPAAgP;IAChP,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,SAAS,EAAE,CAAC;IAE3B;;;OAGG;IACH,cAAc,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IAE3C;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa,CAAC,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAElD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA0b9C,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
package/dist/TabbedForm.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import { FormField, DataSource } from '@object-ui/types';
|
|
2
|
+
import { FormField, DataSource, ObjectFormSchema, ObjectFormSection } from '@object-ui/types';
|
|
3
3
|
export interface FormSectionConfig {
|
|
4
4
|
/**
|
|
5
5
|
* Section identifier (used as tab value)
|
|
@@ -19,9 +19,51 @@ export interface FormSectionConfig {
|
|
|
19
19
|
*/
|
|
20
20
|
columns?: 1 | 2 | 3 | 4;
|
|
21
21
|
/**
|
|
22
|
-
*
|
|
22
|
+
* The same three entry shapes as `ObjectFormSection.fields`, by reference:
|
|
23
|
+
* a field name, the form view's `{ field, … }` entry, or an inline
|
|
24
|
+
* `FormField` (objectui#11615).
|
|
23
25
|
*/
|
|
24
|
-
fields:
|
|
26
|
+
fields: NonNullable<ObjectFormSection['fields']>;
|
|
27
|
+
/**
|
|
28
|
+
* ADR-0089 `FormSection.visibleWhen` — the TABBED arm of the one grouping
|
|
29
|
+
* contract ruled 2026-08-29 (objectui#6237, option A). Spelled exactly as the
|
|
30
|
+
* sibling `ModalFormSectionConfig.visibleWhen`, because it IS the same
|
|
31
|
+
* authored key: `ObjectForm` copies a section's predicate here, this layout
|
|
32
|
+
* copies it onto the tab it synthesises (`FormFieldTab.visibleWhen`), and the
|
|
33
|
+
* form renderer evaluates it on the canonical engine with the live record and
|
|
34
|
+
* the host predicate scope bound (#6010) — the same path a field's own
|
|
35
|
+
* `visibleWhen` takes. A broken predicate fails OPEN (the tab stays visible).
|
|
36
|
+
*
|
|
37
|
+
* Ruled semantics (maintainer 2026-08-27, the same ruling for tabs as for
|
|
38
|
+
* sections), inherited from the renderer rather than re-implemented here:
|
|
39
|
+
* visibility decides what is DRAWN and nothing else — a hidden tab's values
|
|
40
|
+
* still submit — and a hidden tab's fields skip CLIENT-side validation, so a
|
|
41
|
+
* user is never blocked by an error pointing at a control they cannot see.
|
|
42
|
+
* The server-side contract stays the loud floor for genuinely-required data;
|
|
43
|
+
* see the boundary note on `WizardStepConfig` and objectui#6237 for the
|
|
44
|
+
* measured reason the server cannot read this predicate.
|
|
45
|
+
*
|
|
46
|
+
* ⛔ Deliberately NOT on the wizard's step type, and that boundary is now
|
|
47
|
+
* structural rather than subtractive (maintainer ruling 2026-08-30,
|
|
48
|
+
* objectui#6237). `WizardForm` used to type its steps as
|
|
49
|
+
* `Omit<FormSectionConfig, 'visibleWhen'>` — a derivation that defended the
|
|
50
|
+
* one key it named while every FUTURE key added here still reached a wizard
|
|
51
|
+
* step by default. `WizardStepConfig` is now declared independently, exactly
|
|
52
|
+
* as `SplitFormSectionConfig` / `ModalFormSectionConfig` /
|
|
53
|
+
* `DrawerFormSectionConfig` already are, so this type and the wizard's share
|
|
54
|
+
* nothing: a key is authorable on a wizard step only if someone writes it
|
|
55
|
+
* there, on the type whose renderer has to honour it.
|
|
56
|
+
*/
|
|
57
|
+
visibleWhen?: string | {
|
|
58
|
+
dialect?: string;
|
|
59
|
+
source: string;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* The fault direction of {@link visibleWhen}, by reference to
|
|
63
|
+
* `ObjectFormSection.visibleWhenFault` (objectui#13055): `'hidden'` (a field
|
|
64
|
+
* group's predicate) hides the section when it cannot be evaluated.
|
|
65
|
+
*/
|
|
66
|
+
visibleWhenFault?: ObjectFormSection['visibleWhenFault'];
|
|
25
67
|
/**
|
|
26
68
|
* Custom CSS class for the section's Card wrapper.
|
|
27
69
|
*
|
|
@@ -47,13 +89,23 @@ export interface TabbedFormSchema {
|
|
|
47
89
|
*/
|
|
48
90
|
mode: 'create' | 'edit' | 'view';
|
|
49
91
|
/**
|
|
50
|
-
* Record ID (for edit/view modes)
|
|
92
|
+
* Record ID (for edit/view modes). A string, per the one record-id rule on
|
|
93
|
+
* `DataSource` (objectui#9511) — `ObjectForm` builds this schema from the
|
|
94
|
+
* authorable `ObjectFormSchema.recordId`, which is a string, and `findOne`
|
|
95
|
+
* takes a string.
|
|
51
96
|
*/
|
|
52
|
-
recordId?: string
|
|
97
|
+
recordId?: string;
|
|
53
98
|
/**
|
|
54
99
|
* Tab sections configuration
|
|
55
100
|
*/
|
|
56
101
|
sections: FormSectionConfig[];
|
|
102
|
+
/**
|
|
103
|
+
* Inline field definitions (`object-form.customFields`). A member naming a
|
|
104
|
+
* field a section lists is that field's definition, as on every other
|
|
105
|
+
* `formType` (objectui#10254); `ObjectForm` hands the key over in its
|
|
106
|
+
* `{...schema}` spread.
|
|
107
|
+
*/
|
|
108
|
+
customFields?: FormField[];
|
|
57
109
|
/**
|
|
58
110
|
* Grid width for the whole form (1–4). Aligns with @objectstack/spec
|
|
59
111
|
* FormView.columns and OUTRANKS the per-section `columns`, which say how a
|
|
@@ -100,6 +152,24 @@ export interface TabbedFormSchema {
|
|
|
100
152
|
* Read-only mode
|
|
101
153
|
*/
|
|
102
154
|
readOnly?: boolean;
|
|
155
|
+
/**
|
|
156
|
+
* Override persistence — the seam a host uses to own the write. Declared as
|
|
157
|
+
* `ObjectFormSchema['submitHandler']` rather than restated, so this variant
|
|
158
|
+
* and the canonical key `ObjectForm` forwards can never drift apart.
|
|
159
|
+
* When supplied, the form validates and hands the collected values
|
|
160
|
+
* to this handler INSTEAD of calling `dataSource.create` /
|
|
161
|
+
* `dataSource.update`; the returned record is passed on to `onSuccess`.
|
|
162
|
+
* In `edit` mode, for a record this form read itself, it hands over what it
|
|
163
|
+
* would have written: the fields that differ from that read, or the full
|
|
164
|
+
* sanitized payload when nothing changed (objectui#10156, objectui#10563;
|
|
165
|
+
* the whole rule is on `ObjectFormSchema['submitHandler']`).
|
|
166
|
+
*
|
|
167
|
+
* `MasterDetailForm` supplies it to route the parent AND its child
|
|
168
|
+
* collections through one atomic `batchTransaction` (#2679 / ADR-0034
|
|
169
|
+
* item 4). A renderer that does not read it writes the parent on its own and
|
|
170
|
+
* escapes that transaction — objectui#6176.
|
|
171
|
+
*/
|
|
172
|
+
submitHandler?: ObjectFormSchema['submitHandler'];
|
|
103
173
|
/**
|
|
104
174
|
* Callbacks
|
|
105
175
|
*/
|
package/dist/TabbedForm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabbedForm.d.ts","sourceRoot":"","sources":["../src/TabbedForm.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AAEH,OAAO,KAAwC,MAAM,OAAO,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"TabbedForm.d.ts","sourceRoot":"","sources":["../src/TabbedForm.tsx"],"names":[],"mappings":"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"}
|