@ebitex/forms-sdk 0.4.86 → 0.4.91
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/client.d.ts +4 -4
- package/dist/client.js +5 -5
- package/dist/client.js.map +1 -1
- package/dist/nodes.d.ts +10 -11
- package/dist/nodes.d.ts.map +1 -1
- package/dist/nodes.js +10 -11
- package/dist/nodes.js.map +1 -1
- package/dist/predicates.d.ts +8 -15
- package/dist/predicates.d.ts.map +1 -1
- package/dist/predicates.js +8 -15
- package/dist/predicates.js.map +1 -1
- package/dist/react/EbitexForm.d.ts.map +1 -1
- package/dist/react/EbitexForm.js +8 -11
- package/dist/react/EbitexForm.js.map +1 -1
- package/dist/react/visitorId.d.ts +3 -4
- package/dist/react/visitorId.d.ts.map +1 -1
- package/dist/react/visitorId.js +3 -4
- package/dist/react/visitorId.js.map +1 -1
- package/dist/types.d.ts +13 -17
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/validators.d.ts +5 -5
- package/dist/validators.js +5 -5
- package/package.json +2 -1
package/dist/client.d.ts
CHANGED
|
@@ -21,10 +21,10 @@ export interface FormsClientOptions {
|
|
|
21
21
|
* form has two fields sharing a submission key and must be fixed in the Forms editor), 429 (rate
|
|
22
22
|
* limited — a `Retry-After` header accompanies it).
|
|
23
23
|
*
|
|
24
|
-
* `requestId` is the request's reference
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
24
|
+
* `requestId` is the request's reference: the `X-Request-Id` response header, else the body's
|
|
25
|
+
* `requestId` (an unhandled `500` carries it there too), else `null` — as it is for a response a
|
|
26
|
+
* proxy generated, which never reached the API. Quote it to support; it is how that request is found
|
|
27
|
+
* in the logs.
|
|
28
28
|
*/
|
|
29
29
|
export declare class FormsApiError extends Error {
|
|
30
30
|
readonly status: number;
|
package/dist/client.js
CHANGED
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
* form has two fields sharing a submission key and must be fixed in the Forms editor), 429 (rate
|
|
6
6
|
* limited — a `Retry-After` header accompanies it).
|
|
7
7
|
*
|
|
8
|
-
* `requestId` is the request's reference
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
8
|
+
* `requestId` is the request's reference: the `X-Request-Id` response header, else the body's
|
|
9
|
+
* `requestId` (an unhandled `500` carries it there too), else `null` — as it is for a response a
|
|
10
|
+
* proxy generated, which never reached the API. Quote it to support; it is how that request is found
|
|
11
|
+
* in the logs.
|
|
12
12
|
*/
|
|
13
13
|
export class FormsApiError extends Error {
|
|
14
14
|
status;
|
|
@@ -55,7 +55,7 @@ async function readBody(response) {
|
|
|
55
55
|
return null;
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
/** The request's reference
|
|
58
|
+
/** The request's reference: the `X-Request-Id` header first; an unhandled `500` also carries `requestId` in its body. */
|
|
59
59
|
function readRequestId(response, body) {
|
|
60
60
|
const header = response.headers.get('X-Request-Id');
|
|
61
61
|
if (header) {
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;IAC7B,MAAM,CAAQ;IACd,IAAI,CAAS;IACb,SAAS,CAAe;IAEjC,YAAY,MAAc,EAAE,IAAa,EAAE,YAA2B,IAAI;QACxE,KAAK,CAAC,+CAA+C,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC3G,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;CACF;AAMD,MAAM,gBAAgB,GAAG,uBAAuB,CAAA;AAEhD,MAAM,UAAU,iBAAiB,CAAC,OAA2B;IAC3D,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC1D,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACzE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAA;IAEjD,OAAO;QACL,KAAK,CAAC,OAAO,CAAC,UAAkB;YAC9B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,GAAG,OAAO,uBAAuB,kBAAkB,CAAC,UAAU,CAAC,EAAE,EACjE;gBACE,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,MAAM,EAAE;oBACjC,MAAM,EAAE,kBAAkB;iBAC3B;aACF,CACF,CAAA;YAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBACrC,MAAM,IAAI,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;YAC/E,CAAC;YAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAY,CAAA;QAC3C,CAAC;KACF,CAAA;AACH,CAAC;AAED,oIAAoI;AACpI,KAAK,UAAU,QAAQ,CAAC,QAAkB;IACxC,IAAI,CAAC;QACH,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;IAC7B,MAAM,CAAQ;IACd,IAAI,CAAS;IACb,SAAS,CAAe;IAEjC,YAAY,MAAc,EAAE,IAAa,EAAE,YAA2B,IAAI;QACxE,KAAK,CAAC,+CAA+C,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC3G,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;CACF;AAMD,MAAM,gBAAgB,GAAG,uBAAuB,CAAA;AAEhD,MAAM,UAAU,iBAAiB,CAAC,OAA2B;IAC3D,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC1D,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACzE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAA;IAEjD,OAAO;QACL,KAAK,CAAC,OAAO,CAAC,UAAkB;YAC9B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,GAAG,OAAO,uBAAuB,kBAAkB,CAAC,UAAU,CAAC,EAAE,EACjE;gBACE,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,MAAM,EAAE;oBACjC,MAAM,EAAE,kBAAkB;iBAC3B;aACF,CACF,CAAA;YAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBACrC,MAAM,IAAI,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;YAC/E,CAAC;YAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAY,CAAA;QAC3C,CAAC;KACF,CAAA;AACH,CAAC;AAED,oIAAoI;AACpI,KAAK,UAAU,QAAQ,CAAC,QAAkB;IACxC,IAAI,CAAC;QACH,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,yHAAyH;AACzH,SAAS,aAAa,CAAC,QAAkB,EAAE,IAAa;IACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IACnD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;QACrE,MAAM,SAAS,GAAI,IAA+B,CAAC,SAAS,CAAA;QAC5D,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/C,OAAO,SAAS,CAAA;QAClB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}
|
package/dist/nodes.d.ts
CHANGED
|
@@ -4,27 +4,26 @@ export declare function isFormField(node: FormNode): node is FormField;
|
|
|
4
4
|
export declare function isDataField(node: FormNode): node is InputField | TextareaField | NumberField | ChoiceField;
|
|
5
5
|
/**
|
|
6
6
|
* Which of a `VariantNode`'s branches (or its `fallback`) the respondent currently sees, given their
|
|
7
|
-
* answers so far — first-match-wins,
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
7
|
+
* answers so far — first-match-wins, in exactly the order the server itself selects (the branches a
|
|
8
|
+
* Variant arrives with are already in the server's own precedence order). Returns the chosen
|
|
9
|
+
* branch's/fallback's own node **list** — possibly empty, since a Variant may legitimately render
|
|
10
|
+
* nothing.
|
|
11
11
|
*/
|
|
12
12
|
export declare function resolveVariant(variant: VariantNode, data: SubmissionData): FormNode[];
|
|
13
13
|
/**
|
|
14
14
|
* Depth-first walk of a node tree, flattened to the data-carrying fields that are **currently
|
|
15
15
|
* visible** given `data` — a `Fieldset`/`Row` is walked through unconditionally, but a `Variant`
|
|
16
|
-
* contributes only its currently-selected branch's fields
|
|
17
|
-
*
|
|
16
|
+
* contributes only its currently-selected branch's fields, so a field inside a branch that isn't
|
|
17
|
+
* shown never gets treated as present or required.
|
|
18
18
|
*
|
|
19
19
|
* `data` is required, not optional, deliberately: a caller that doesn't have the respondent's current
|
|
20
20
|
* answers yet has no correct default to fall back to (an empty object would make every `Variant`
|
|
21
|
-
* resolve as if nothing had been answered, which is only sometimes what a caller wants)
|
|
22
|
-
* `EbitexForm`'s and `PublicFormRender`'s own call sites for the two real ones this package has.
|
|
21
|
+
* resolve as if nothing had been answered, which is only sometimes what a caller wants).
|
|
23
22
|
*/
|
|
24
23
|
export declare function collectDataFields(nodes: FormNode[], data: SubmissionData): (InputField | TextareaField | NumberField | ChoiceField)[];
|
|
25
24
|
/**
|
|
26
|
-
* Which of `steps` the respondent currently sees, given their answers so far
|
|
27
|
-
*
|
|
25
|
+
* Which of `steps` the respondent currently sees, given their answers so far — the Step-level
|
|
26
|
+
* counterpart to `resolveVariant`. A step's own `when` may
|
|
28
27
|
* only reference a field from a step strictly *before* it (never its own content, never a later one
|
|
29
28
|
* — enforced server-side at save time), so visibility is a single deterministic forward pass: a
|
|
30
29
|
* plain `Array.filter` in document order, no fixpoint needed.
|
|
@@ -33,7 +32,7 @@ export declare function resolveSteps(steps: FormStep[], data: SubmissionData): F
|
|
|
33
32
|
/**
|
|
34
33
|
* Resolves which step *slot* (an index into the full, unfiltered `steps` array — stable across a
|
|
35
34
|
* visibility change, unlike an index into `resolveSteps`' own filtered output) is actually shown
|
|
36
|
-
* when the respondent's own tracked position is `slot
|
|
35
|
+
* when the respondent's own tracked position is `slot`.
|
|
37
36
|
*
|
|
38
37
|
* A step's condition can only reference an *earlier* step, so editing an answer via Back can change
|
|
39
38
|
* the visibility of any step strictly between the one just edited and the respondent's current
|
package/dist/nodes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACb,WAAW,EACZ,MAAM,YAAY,CAAA;AAEnB,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,IAAI,SAAS,CAE7D;AAED,wGAAwG;AACxG,wBAAgB,WAAW,CACzB,IAAI,EAAE,QAAQ,GACb,IAAI,IAAI,UAAU,GAAG,aAAa,GAAG,WAAW,GAAG,WAAW,CAEhE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,GAAG,QAAQ,EAAE,CAQrF;AAED
|
|
1
|
+
{"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACb,WAAW,EACZ,MAAM,YAAY,CAAA;AAEnB,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,IAAI,SAAS,CAE7D;AAED,wGAAwG;AACxG,wBAAgB,WAAW,CACzB,IAAI,EAAE,QAAQ,GACb,IAAI,IAAI,UAAU,GAAG,aAAa,GAAG,WAAW,GAAG,WAAW,CAEhE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,GAAG,QAAQ,EAAE,CAQrF;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,QAAQ,EAAE,EACjB,IAAI,EAAE,cAAc,GACnB,CAAC,UAAU,GAAG,aAAa,GAAG,WAAW,GAAG,WAAW,CAAC,EAAE,CAc5D;AAMD;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,cAAc,GAAG,QAAQ,EAAE,CAEhF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAQpG;AAED,yHAAyH;AACzH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAKxH"}
|
package/dist/nodes.js
CHANGED
|
@@ -8,10 +8,10 @@ export function isDataField(node) {
|
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
10
|
* Which of a `VariantNode`'s branches (or its `fallback`) the respondent currently sees, given their
|
|
11
|
-
* answers so far — first-match-wins,
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
11
|
+
* answers so far — first-match-wins, in exactly the order the server itself selects (the branches a
|
|
12
|
+
* Variant arrives with are already in the server's own precedence order). Returns the chosen
|
|
13
|
+
* branch's/fallback's own node **list** — possibly empty, since a Variant may legitimately render
|
|
14
|
+
* nothing.
|
|
15
15
|
*/
|
|
16
16
|
export function resolveVariant(variant, data) {
|
|
17
17
|
for (const branch of variant.branches) {
|
|
@@ -24,13 +24,12 @@ export function resolveVariant(variant, data) {
|
|
|
24
24
|
/**
|
|
25
25
|
* Depth-first walk of a node tree, flattened to the data-carrying fields that are **currently
|
|
26
26
|
* visible** given `data` — a `Fieldset`/`Row` is walked through unconditionally, but a `Variant`
|
|
27
|
-
* contributes only its currently-selected branch's fields
|
|
28
|
-
*
|
|
27
|
+
* contributes only its currently-selected branch's fields, so a field inside a branch that isn't
|
|
28
|
+
* shown never gets treated as present or required.
|
|
29
29
|
*
|
|
30
30
|
* `data` is required, not optional, deliberately: a caller that doesn't have the respondent's current
|
|
31
31
|
* answers yet has no correct default to fall back to (an empty object would make every `Variant`
|
|
32
|
-
* resolve as if nothing had been answered, which is only sometimes what a caller wants)
|
|
33
|
-
* `EbitexForm`'s and `PublicFormRender`'s own call sites for the two real ones this package has.
|
|
32
|
+
* resolve as if nothing had been answered, which is only sometimes what a caller wants).
|
|
34
33
|
*/
|
|
35
34
|
export function collectDataFields(nodes, data) {
|
|
36
35
|
const result = [];
|
|
@@ -51,8 +50,8 @@ function isStepVisible(step, data) {
|
|
|
51
50
|
return step.when === undefined || isSatisfied(step.when, data);
|
|
52
51
|
}
|
|
53
52
|
/**
|
|
54
|
-
* Which of `steps` the respondent currently sees, given their answers so far
|
|
55
|
-
*
|
|
53
|
+
* Which of `steps` the respondent currently sees, given their answers so far — the Step-level
|
|
54
|
+
* counterpart to `resolveVariant`. A step's own `when` may
|
|
56
55
|
* only reference a field from a step strictly *before* it (never its own content, never a later one
|
|
57
56
|
* — enforced server-side at save time), so visibility is a single deterministic forward pass: a
|
|
58
57
|
* plain `Array.filter` in document order, no fixpoint needed.
|
|
@@ -63,7 +62,7 @@ export function resolveSteps(steps, data) {
|
|
|
63
62
|
/**
|
|
64
63
|
* Resolves which step *slot* (an index into the full, unfiltered `steps` array — stable across a
|
|
65
64
|
* visibility change, unlike an index into `resolveSteps`' own filtered output) is actually shown
|
|
66
|
-
* when the respondent's own tracked position is `slot
|
|
65
|
+
* when the respondent's own tracked position is `slot`.
|
|
67
66
|
*
|
|
68
67
|
* A step's condition can only reference an *earlier* step, so editing an answer via Back can change
|
|
69
68
|
* the visibility of any step strictly between the one just edited and the respondent's current
|
package/dist/nodes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodes.js","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAa7C,MAAM,UAAU,WAAW,CAAC,IAAc;IACxC,OAAO,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAA;AAClC,CAAC;AAED,wGAAwG;AACxG,MAAM,UAAU,WAAW,CACzB,IAAc;IAEd,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAA;AACzD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,OAAoB,EAAE,IAAoB;IACvE,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;YACnC,OAAO,MAAM,CAAC,KAAK,CAAA;QACrB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC,QAAQ,CAAA;AACzB,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"nodes.js","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"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"}
|
package/dist/predicates.d.ts
CHANGED
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
import type { AllOfPredicate, FieldComparisonPredicate, SubmissionData, VariantPredicate } from './types.js';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* in this package rather than being duplicated in `apps/forms-web` — see
|
|
7
|
-
* `specs/features/111-conditional-fields/SPEC.md`'s Decision Log for why: there must be exactly one
|
|
8
|
-
* TypeScript implementation, and this package is the one that needs it regardless (an external
|
|
9
|
-
* consumer rendering nodes directly has the same problem), while `forms-sdk` staying dependency-free
|
|
10
|
-
* (spec #89) means depending on it adds nothing transitive to `forms-web`.
|
|
3
|
+
* Whether a `FieldComparisonPredicate` is satisfied by `data` — a client-side port of the server's
|
|
4
|
+
* own evaluator, and the same one `EbitexForm` and ebitex's own hosted form page use, so show/hide
|
|
5
|
+
* decisions cannot drift between a renderer you write and the ones ebitex ships.
|
|
11
6
|
*
|
|
12
7
|
* Comparison is string-based against the submitted value's string form, matching the server exactly:
|
|
13
8
|
* no numeric-coercion table for either implementation to disagree on. A submitted array (a Checkbox
|
|
@@ -16,20 +11,18 @@ import type { AllOfPredicate, FieldComparisonPredicate, SubmissionData, VariantP
|
|
|
16
11
|
* lets a hidden field's controlling condition collapse coherently through further conditions, since a
|
|
17
12
|
* respondent's browser never submits an answer for content it never showed.
|
|
18
13
|
*
|
|
19
|
-
*
|
|
20
|
-
* server's own `FieldComparisonPredicateParityTests` runs — see that file's own remarks.
|
|
14
|
+
* It is tested against the **same** set of cases as the server's evaluator, so the two agree.
|
|
21
15
|
*/
|
|
22
16
|
export declare function isFieldComparisonSatisfied(predicate: FieldComparisonPredicate, data: SubmissionData): boolean;
|
|
23
17
|
/**
|
|
24
|
-
* True when every predicate in `predicates` is satisfied
|
|
25
|
-
*
|
|
18
|
+
* True when every predicate in `predicates` is satisfied — the client-side port of the server's own
|
|
19
|
+
* `AllOfPredicate` evaluation.
|
|
26
20
|
*/
|
|
27
21
|
export declare function isAllOfSatisfied(predicate: AllOfPredicate, data: SubmissionData): boolean;
|
|
28
22
|
/**
|
|
29
23
|
* Dispatches a `Variant` branch's `when` to the right evaluator regardless of which of the two
|
|
30
|
-
* predicate kinds it is — what `resolveVariant`
|
|
31
|
-
*
|
|
32
|
-
* `VariantResolver.IsSatisfied`.
|
|
24
|
+
* predicate kinds it is — what `resolveVariant` calls, so a renderer never has to switch on `kind`
|
|
25
|
+
* itself. The client-side port of the server's own predicate evaluation.
|
|
33
26
|
*/
|
|
34
27
|
export declare function isSatisfied(predicate: VariantPredicate, data: SubmissionData): boolean;
|
|
35
28
|
//# sourceMappingURL=predicates.d.ts.map
|
package/dist/predicates.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predicates.d.ts","sourceRoot":"","sources":["../src/predicates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,wBAAwB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE5G
|
|
1
|
+
{"version":3,"file":"predicates.d.ts","sourceRoot":"","sources":["../src/predicates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,wBAAwB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE5G;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,wBAAwB,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CA0B7G;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAEzF;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,gBAAgB,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAEtF"}
|
package/dist/predicates.js
CHANGED
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* in this package rather than being duplicated in `apps/forms-web` — see
|
|
6
|
-
* `specs/features/111-conditional-fields/SPEC.md`'s Decision Log for why: there must be exactly one
|
|
7
|
-
* TypeScript implementation, and this package is the one that needs it regardless (an external
|
|
8
|
-
* consumer rendering nodes directly has the same problem), while `forms-sdk` staying dependency-free
|
|
9
|
-
* (spec #89) means depending on it adds nothing transitive to `forms-web`.
|
|
2
|
+
* Whether a `FieldComparisonPredicate` is satisfied by `data` — a client-side port of the server's
|
|
3
|
+
* own evaluator, and the same one `EbitexForm` and ebitex's own hosted form page use, so show/hide
|
|
4
|
+
* decisions cannot drift between a renderer you write and the ones ebitex ships.
|
|
10
5
|
*
|
|
11
6
|
* Comparison is string-based against the submitted value's string form, matching the server exactly:
|
|
12
7
|
* no numeric-coercion table for either implementation to disagree on. A submitted array (a Checkbox
|
|
@@ -15,8 +10,7 @@
|
|
|
15
10
|
* lets a hidden field's controlling condition collapse coherently through further conditions, since a
|
|
16
11
|
* respondent's browser never submits an answer for content it never showed.
|
|
17
12
|
*
|
|
18
|
-
*
|
|
19
|
-
* server's own `FieldComparisonPredicateParityTests` runs — see that file's own remarks.
|
|
13
|
+
* It is tested against the **same** set of cases as the server's evaluator, so the two agree.
|
|
20
14
|
*/
|
|
21
15
|
export function isFieldComparisonSatisfied(predicate, data) {
|
|
22
16
|
const value = data[predicate.field];
|
|
@@ -44,17 +38,16 @@ export function isFieldComparisonSatisfied(predicate, data) {
|
|
|
44
38
|
}
|
|
45
39
|
}
|
|
46
40
|
/**
|
|
47
|
-
* True when every predicate in `predicates` is satisfied
|
|
48
|
-
*
|
|
41
|
+
* True when every predicate in `predicates` is satisfied — the client-side port of the server's own
|
|
42
|
+
* `AllOfPredicate` evaluation.
|
|
49
43
|
*/
|
|
50
44
|
export function isAllOfSatisfied(predicate, data) {
|
|
51
45
|
return predicate.predicates.every((member) => isFieldComparisonSatisfied(member, data));
|
|
52
46
|
}
|
|
53
47
|
/**
|
|
54
48
|
* Dispatches a `Variant` branch's `when` to the right evaluator regardless of which of the two
|
|
55
|
-
* predicate kinds it is — what `resolveVariant`
|
|
56
|
-
*
|
|
57
|
-
* `VariantResolver.IsSatisfied`.
|
|
49
|
+
* predicate kinds it is — what `resolveVariant` calls, so a renderer never has to switch on `kind`
|
|
50
|
+
* itself. The client-side port of the server's own predicate evaluation.
|
|
58
51
|
*/
|
|
59
52
|
export function isSatisfied(predicate, data) {
|
|
60
53
|
return predicate.kind === 'AllOf' ? isAllOfSatisfied(predicate, data) : isFieldComparisonSatisfied(predicate, data);
|
package/dist/predicates.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predicates.js","sourceRoot":"","sources":["../src/predicates.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"predicates.js","sourceRoot":"","sources":["../src/predicates.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,0BAA0B,CAAC,SAAmC,EAAE,IAAoB;IAClG,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAEnC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC1C,QAAQ,SAAS,CAAC,QAAQ,EAAE,CAAC;YAC3B,KAAK,SAAS;gBACZ,OAAO,IAAI,CAAA;YACb,KAAK,YAAY;gBACf,OAAO,KAAK,CAAA;YACd,KAAK,QAAQ;gBACX,OAAO,KAAK,CAAA;YACd,KAAK,WAAW;gBACd,OAAO,IAAI,CAAA;QACf,CAAC;IACH,CAAC;IAED,QAAQ,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC3B,KAAK,SAAS;YACZ,OAAO,YAAY,CAAC,KAAK,CAAC,CAAA;QAC5B,KAAK,YAAY;YACf,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;QAC7B,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,KAAM,CAAC,CAAA;QAC9C,KAAK,WAAW;YACd,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,KAAM,CAAC,CAAA;IACjD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAyB,EAAE,IAAoB;IAC9E,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,0BAA0B,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAA;AACzF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,SAA2B,EAAE,IAAoB;IAC3E,OAAO,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;AACrH,CAAC;AAED,SAAS,YAAY,CAAC,KAAiC;IACrD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAA;IACzD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAA;IACnD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,YAAY,CAAC,KAAiC,EAAE,SAAiB;IACxE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAA;IACzE,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,KAAK,SAAS,CAAA;IACzD,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,SAAS,CAAA;AACpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EbitexForm.d.ts","sourceRoot":"","sources":["../../src/react/EbitexForm.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,aAAa,EAAE,MAAM,OAAO,CAAA;AAEpE,OAAO,KAAK,EAAY,OAAO,EAAE,cAAc,EAAoB,MAAM,aAAa,CAAA;AAEtF,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,aAAa,CAAA;AAGpB,MAAM,WAAW,eAAe;IAC9B,4FAA4F;IAC5F,IAAI,EAAE,OAAO,CAAA;IAEb,kDAAkD;IAClD,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAA;IAE5C,wGAAwG;IACxG,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAElC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,aAAa,CAAA;IAErB;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IAEjC,sDAAsD;IACtD,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;CAChC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,WAAW,EACX,OAAO,EACP,SAAS,EACT,KAAK,EACL,eAAe,EACf,KAAK,EAAE,aAAa,GACrB,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"EbitexForm.d.ts","sourceRoot":"","sources":["../../src/react/EbitexForm.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,aAAa,EAAE,MAAM,OAAO,CAAA;AAEpE,OAAO,KAAK,EAAY,OAAO,EAAE,cAAc,EAAoB,MAAM,aAAa,CAAA;AAEtF,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,aAAa,CAAA;AAGpB,MAAM,WAAW,eAAe;IAC9B,4FAA4F;IAC5F,IAAI,EAAE,OAAO,CAAA;IAEb,kDAAkD;IAClD,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAA;IAE5C,wGAAwG;IACxG,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAElC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,aAAa,CAAA;IAErB;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IAEjC,sDAAsD;IACtD,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;CAChC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,WAAW,EACX,OAAO,EACP,SAAS,EACT,KAAK,EACL,eAAe,EACf,KAAK,EAAE,aAAa,GACrB,EAAE,eAAe,sCA6NjB"}
|
package/dist/react/EbitexForm.js
CHANGED
|
@@ -58,18 +58,15 @@ export function EbitexForm({ form, onSubmitted, onError, className, style, field
|
|
|
58
58
|
/**
|
|
59
59
|
* `data` as it should actually be sent — and validated — right now: every key belonging to a field
|
|
60
60
|
* that isn't currently *visible* (inside a `Variant` branch/fallback that isn't the one selected
|
|
61
|
-
* right now) is excluded, matching the server's own evaluation of what should have been shown
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
* temporarily out of view.
|
|
61
|
+
* right now) is excluded, matching the server's own evaluation of what should have been shown.
|
|
62
|
+
* Answers aren't cleared from `data` itself when a field becomes hidden — only pruned here, at the
|
|
63
|
+
* moment of sending or validating — so toggling a controlling answer back and forth doesn't lose
|
|
64
|
+
* what the respondent already typed into a field that's temporarily out of view.
|
|
66
65
|
*
|
|
67
|
-
* **Validation must use this same pruned view, not raw `data`.**
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
* even though the value being blocked on would never actually have been sent. Found by a test that
|
|
72
|
-
* hid a field after answering it, then tried to submit — not by inspection.
|
|
66
|
+
* **Validation must use this same pruned view, not raw `data`.** Validating raw `data` while
|
|
67
|
+
* sending the pruned view would flag a stale answer left behind after its field became hidden as
|
|
68
|
+
* `"Unknown field."` (`validateSubmission` is itself answers-aware) and block submission entirely,
|
|
69
|
+
* over a value that would never actually be sent.
|
|
73
70
|
*/
|
|
74
71
|
function visiblePayload() {
|
|
75
72
|
// resolveSteps excludes a currently-hidden conditional step's own nodes entirely (spec
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EbitexForm.js","sourceRoot":"","sources":["../../src/react/EbitexForm.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"EbitexForm.js","sourceRoot":"","sources":["../../src/react/EbitexForm.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
* The persistent visitor id the public submission endpoint uses to reconcile a respondent's
|
|
3
3
|
* progress across steps.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* shared module would have to become a second published package to serve one caller.
|
|
5
|
+
* It serves the same purpose as the visitor id ebitex's own hosted form page keeps, implemented here
|
|
6
|
+
* so this package depends on nothing but React: its consumers are arbitrary external apps with their
|
|
7
|
+
* own bundlers and design systems.
|
|
9
8
|
*
|
|
10
9
|
* Note the id is scoped to *your* site's origin, not ebitex's, because nothing here loads in an
|
|
11
10
|
* iframe. A respondent who fills the same form on two different sites is therefore two visitors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visitorId.d.ts","sourceRoot":"","sources":["../../src/react/visitorId.ts"],"names":[],"mappings":"AASA
|
|
1
|
+
{"version":3,"file":"visitorId.d.ts","sourceRoot":"","sources":["../../src/react/visitorId.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAY7C;AAED,+DAA+D;AAC/D,wBAAgB,8BAA8B,IAAI,IAAI,CAErD"}
|
package/dist/react/visitorId.js
CHANGED
|
@@ -9,10 +9,9 @@ let inMemoryFallback = null;
|
|
|
9
9
|
* The persistent visitor id the public submission endpoint uses to reconcile a respondent's
|
|
10
10
|
* progress across steps.
|
|
11
11
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* shared module would have to become a second published package to serve one caller.
|
|
12
|
+
* It serves the same purpose as the visitor id ebitex's own hosted form page keeps, implemented here
|
|
13
|
+
* so this package depends on nothing but React: its consumers are arbitrary external apps with their
|
|
14
|
+
* own bundlers and design systems.
|
|
16
15
|
*
|
|
17
16
|
* Note the id is scoped to *your* site's origin, not ebitex's, because nothing here loads in an
|
|
18
17
|
* iframe. A respondent who fills the same form on two different sites is therefore two visitors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visitorId.js","sourceRoot":"","sources":["../../src/react/visitorId.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,mBAAmB,CAAA;AAEvC;;;;GAIG;AACH,IAAI,gBAAgB,GAAkB,IAAI,CAAA;AAE1C
|
|
1
|
+
{"version":3,"file":"visitorId.js","sourceRoot":"","sources":["../../src/react/visitorId.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,mBAAmB,CAAA;AAEvC;;;;GAIG;AACH,IAAI,gBAAgB,GAAkB,IAAI,CAAA;AAE1C;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB;IAClC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACzD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAA;QAE7B,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAA;QACnC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QACjD,OAAO,OAAO,CAAA;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,gBAAgB,KAAK,MAAM,CAAC,UAAU,EAAE,CAAA;QACxC,OAAO,gBAAgB,CAAA;IACzB,CAAC;AACH,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,8BAA8B;IAC5C,gBAAgB,GAAG,IAAI,CAAA;AACzB,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -62,11 +62,10 @@ export interface ButtonField extends FieldBase {
|
|
|
62
62
|
export type FormField = InputField | TextareaField | NumberField | ChoiceField | ButtonField;
|
|
63
63
|
export type FieldComparisonOperator = 'Equals' | 'NotEquals' | 'IsEmpty' | 'IsNotEmpty';
|
|
64
64
|
/**
|
|
65
|
-
* A `Variant` branch's condition
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
* `AllOfPredicate` (spec 113-variant-branch-refinements).
|
|
65
|
+
* A `Variant` branch's condition, comparing another field's submitted answer. A locale predicate is
|
|
66
|
+
* always decidable server-side, so it's resolved away before serialization and never reaches the
|
|
67
|
+
* wire — a `Variant` node only survives serialization at all when it's governed by at least one
|
|
68
|
+
* `FieldComparisonPredicate`, alone or combined via `AllOfPredicate`.
|
|
70
69
|
*
|
|
71
70
|
* `field` names a submission key that appears earlier, in document order, than the `Variant` itself —
|
|
72
71
|
* enforced server-side at save time, so a well-formed response never asks you to evaluate a forward
|
|
@@ -79,8 +78,7 @@ export interface FieldComparisonPredicate {
|
|
|
79
78
|
value?: string;
|
|
80
79
|
}
|
|
81
80
|
/**
|
|
82
|
-
* AND-combination of two or more `FieldComparisonPredicate`s on one branch
|
|
83
|
-
* 113-variant-branch-refinements), e.g. `country = US AND shippingDiffers = yes`. Server-validated to
|
|
81
|
+
* AND-combination of two or more `FieldComparisonPredicate`s on one branch, e.g. `country = US AND shippingDiffers = yes`. Server-validated to
|
|
84
82
|
* contain only `FieldComparisonPredicate` members (no nesting, no `LocalePredicate`) and to have at
|
|
85
83
|
* least two — a well-formed response never sends a one-element `AllOfPredicate`.
|
|
86
84
|
*/
|
|
@@ -100,10 +98,9 @@ export interface RowNode {
|
|
|
100
98
|
nodes: FormNode[];
|
|
101
99
|
}
|
|
102
100
|
/**
|
|
103
|
-
* One branch of a `Variant
|
|
104
|
-
*
|
|
105
|
-
*
|
|
106
|
-
* than a single required node.
|
|
101
|
+
* One branch of a `Variant`: `nodes` is shown when `when` is satisfied against the respondent's
|
|
102
|
+
* current answers — see `resolveVariant`. `nodes` is a list and may be empty, matching
|
|
103
|
+
* `Fieldset`/`Row`'s own shape rather than a single required node.
|
|
107
104
|
*/
|
|
108
105
|
export interface VariantBranch {
|
|
109
106
|
when: VariantPredicate;
|
|
@@ -111,11 +108,10 @@ export interface VariantBranch {
|
|
|
111
108
|
}
|
|
112
109
|
/**
|
|
113
110
|
* A structural switch: at most one of `branches` (first match wins, in order) or `fallback` is what a
|
|
114
|
-
* respondent actually sees, decided live in the browser as they answer — see `resolveVariant
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
*
|
|
118
|
-
* replacing what `null` used to mean.
|
|
111
|
+
* respondent actually sees, decided live in the browser as they answer — see `resolveVariant`, which
|
|
112
|
+
* both this SDK's `EbitexForm` and ebitex's own hosted form page use so the decision can't drift
|
|
113
|
+
* between them. `fallback` is always an array, never `null`: an empty array means the Variant shows
|
|
114
|
+
* nothing when no branch matches.
|
|
119
115
|
*/
|
|
120
116
|
export interface VariantNode {
|
|
121
117
|
nodeType: 'Variant';
|
|
@@ -124,7 +120,7 @@ export interface VariantNode {
|
|
|
124
120
|
}
|
|
125
121
|
export type FormNode = FieldsetNode | RowNode | FormField | VariantNode;
|
|
126
122
|
/**
|
|
127
|
-
* `when` governs whether this whole step is shown at all
|
|
123
|
+
* `when` governs whether this whole step is shown at all — the
|
|
128
124
|
* Step-level counterpart to `VariantBranch.when`, structurally identical and evaluated through the
|
|
129
125
|
* same `isSatisfied`. See `VariantPredicate`'s own remarks for why a locale-gated step never reaches
|
|
130
126
|
* this shape either: it's always decidable server-side, so it either never appears in `steps` at all
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,UAAU,CAAA;AAExE,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAA;AAExD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAA;AAEtD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,SAAS;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,SAAS,EAAE,OAAO,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,YAAY,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC9C,SAAS,EAAE,UAAU,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,SAAS,EAAE,QAAQ,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,SAAS,EAAE,QAAQ,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,UAAU,CAAA;IACtB,qGAAqG;IACrG,OAAO,EAAE,YAAY,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,SAAS,EAAE,QAAQ,CAAA;IACnB,UAAU,EAAE,UAAU,CAAA;CACvB;AAED,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,aAAa,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAA;AAE5F,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,YAAY,CAAA;AAEvF
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,UAAU,CAAA;AAExE,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAA;AAExD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAA;AAEtD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,SAAS;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,SAAS,EAAE,OAAO,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,YAAY,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC9C,SAAS,EAAE,UAAU,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,SAAS,EAAE,QAAQ,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,SAAS,EAAE,QAAQ,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,UAAU,CAAA;IACtB,qGAAqG;IACrG,OAAO,EAAE,YAAY,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,SAAS,EAAE,QAAQ,CAAA;IACnB,UAAU,EAAE,UAAU,CAAA;CACvB;AAED,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,aAAa,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAA;AAE5F,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,YAAY,CAAA;AAEvF;;;;;;;;;GASG;AACH,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,iBAAiB,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,uBAAuB,CAAA;IACjC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,OAAO,CAAA;IACb,UAAU,EAAE,wBAAwB,EAAE,CAAA;CACvC;AAED,iLAAiL;AACjL,MAAM,MAAM,gBAAgB,GAAG,wBAAwB,GAAG,cAAc,CAAA;AAExE,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,UAAU,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,QAAQ,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,EAAE,KAAK,CAAA;IACf,KAAK,EAAE,QAAQ,EAAE,CAAA;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,gBAAgB,CAAA;IACtB,KAAK,EAAE,QAAQ,EAAE,CAAA;CAClB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,QAAQ,EAAE,QAAQ,EAAE,CAAA;CACrB;AAED,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAA;AAEvE;;;;;;GAMG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,gBAAgB,CAAA;IACvB,KAAK,EAAE,QAAQ,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,mFAAmF;IACnF,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAA;IACvC;;;;OAIG;IACH,WAAW,EAAE,OAAO,CAAA;IACpB,OAAO,EAAE,QAAQ,EAAE,CAAA;IACnB,KAAK,EAAE,QAAQ,EAAE,CAAA;CAClB;AAED,qEAAqE;AACrE,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,CAAA;AAE9E,oFAAoF;AACpF,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;;AA4KH,oGAAoG;AACpG,mGAAmG;AACnG,iGAAiG;AACjG,mBAAmB"}
|
package/dist/validators.d.ts
CHANGED
|
@@ -8,20 +8,20 @@ export interface ValidateOptions {
|
|
|
8
8
|
requireAll: boolean;
|
|
9
9
|
}
|
|
10
10
|
/**
|
|
11
|
-
* A client-side port of the server's own
|
|
11
|
+
* A client-side port of the server's own submission validation, for immediate feedback before a
|
|
12
12
|
* step advances or a form submits.
|
|
13
13
|
*
|
|
14
14
|
* **The server remains authoritative.** These rules exist so a respondent sees a mistake without a
|
|
15
15
|
* round trip, not to be trusted — a client bypass still gets a real 400. They are kept deliberately
|
|
16
|
-
* identical to the server's, down to the message strings, and
|
|
17
|
-
*
|
|
18
|
-
*
|
|
16
|
+
* identical to the server's, down to the message strings, and one shared set of test cases is run
|
|
17
|
+
* through both implementations so a divergence fails a test rather than surfacing as "the SDK said
|
|
18
|
+
* this was valid and the API disagreed".
|
|
19
19
|
*
|
|
20
20
|
* Like the server's, this is a *basic* shape check by design — no email regex on an Email-variant
|
|
21
21
|
* input, for instance. It enforces the constraints a field definition actually declares, not
|
|
22
22
|
* stricter invented formats. Native browser validation still applies on top.
|
|
23
23
|
*
|
|
24
|
-
* **`collectDataFields` is answers-aware
|
|
24
|
+
* **`collectDataFields` is answers-aware**: a field inside a `Variant`
|
|
25
25
|
* branch that isn't currently satisfied by `data` is simply absent from `fields` below, so it is
|
|
26
26
|
* never required and a value submitted for it is flagged the same as any other unrecognized key
|
|
27
27
|
* ("Unknown field."). That is a deliberate simplification from the server's own two-message
|
package/dist/validators.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { collectDataFields } from './nodes.js';
|
|
2
2
|
/**
|
|
3
|
-
* A client-side port of the server's own
|
|
3
|
+
* A client-side port of the server's own submission validation, for immediate feedback before a
|
|
4
4
|
* step advances or a form submits.
|
|
5
5
|
*
|
|
6
6
|
* **The server remains authoritative.** These rules exist so a respondent sees a mistake without a
|
|
7
7
|
* round trip, not to be trusted — a client bypass still gets a real 400. They are kept deliberately
|
|
8
|
-
* identical to the server's, down to the message strings, and
|
|
9
|
-
*
|
|
10
|
-
*
|
|
8
|
+
* identical to the server's, down to the message strings, and one shared set of test cases is run
|
|
9
|
+
* through both implementations so a divergence fails a test rather than surfacing as "the SDK said
|
|
10
|
+
* this was valid and the API disagreed".
|
|
11
11
|
*
|
|
12
12
|
* Like the server's, this is a *basic* shape check by design — no email regex on an Email-variant
|
|
13
13
|
* input, for instance. It enforces the constraints a field definition actually declares, not
|
|
14
14
|
* stricter invented formats. Native browser validation still applies on top.
|
|
15
15
|
*
|
|
16
|
-
* **`collectDataFields` is answers-aware
|
|
16
|
+
* **`collectDataFields` is answers-aware**: a field inside a `Variant`
|
|
17
17
|
* branch that isn't currently satisfied by `data` is simply absent from `fields` below, so it is
|
|
18
18
|
* never required and a value submitted for it is flagged the same as any other unrecognized key
|
|
19
19
|
* ("Unknown field."). That is a deliberate simplification from the server's own two-message
|
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ebitex/forms-sdk",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.91",
|
|
4
4
|
"description": "Fetch and render ebitex Forms in your own application.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
|
+
"homepage": "https://ebitex.io/forms",
|
|
6
7
|
"type": "module",
|
|
7
8
|
"sideEffects": [
|
|
8
9
|
"*.css"
|