@verbb/formie-core 1.0.12 → 1.0.14
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 +27 -1
- package/dist/accessibility.d.ts +5 -0
- package/dist/accessibility.d.ts.map +1 -0
- package/dist/browser-modules.d.ts +34 -0
- package/dist/browser-modules.d.ts.map +1 -0
- package/dist/condition-projections.d.ts +6 -0
- package/dist/condition-projections.d.ts.map +1 -0
- package/dist/condition-state.d.ts +13 -0
- package/dist/condition-state.d.ts.map +1 -0
- package/dist/conditions.d.ts +21 -7
- package/dist/conditions.d.ts.map +1 -1
- package/dist/contract.d.ts +4 -0
- package/dist/contract.d.ts.map +1 -0
- package/dist/date-parts-validation.d.ts +2 -2
- package/dist/date-parts-validation.d.ts.map +1 -1
- package/dist/event-names.d.ts +1 -1
- package/dist/event-names.d.ts.map +1 -1
- package/dist/events.d.ts +1 -1
- package/dist/events.d.ts.map +1 -1
- package/dist/form-instance.d.ts +5 -5
- package/dist/form-instance.d.ts.map +1 -1
- package/dist/grants.d.ts +3 -0
- package/dist/grants.d.ts.map +1 -0
- package/dist/graphql.d.ts +9 -4
- package/dist/graphql.d.ts.map +1 -1
- package/dist/index.d.ts +22 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1869 -861
- package/dist/references.d.ts +43 -0
- package/dist/references.d.ts.map +1 -0
- package/dist/request-profile.d.ts +9 -0
- package/dist/request-profile.d.ts.map +1 -0
- package/dist/rest.d.ts +20 -4
- package/dist/rest.d.ts.map +1 -1
- package/dist/schema.d.ts +22 -22
- package/dist/schema.d.ts.map +1 -1
- package/dist/text.d.ts.map +1 -1
- package/dist/types.d.ts +128 -73
- package/dist/types.d.ts.map +1 -1
- package/dist/uploads.d.ts +5 -0
- package/dist/uploads.d.ts.map +1 -0
- package/dist/validation.d.ts +19 -0
- package/dist/validation.d.ts.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/** Shared grammar and explicit browser projection evaluation. */
|
|
2
|
+
export interface ReferenceExpression {
|
|
3
|
+
raw: string;
|
|
4
|
+
target: string;
|
|
5
|
+
identifier: string;
|
|
6
|
+
selector: string;
|
|
7
|
+
default: string;
|
|
8
|
+
transformerId: string;
|
|
9
|
+
transformerParams: Record<string, string>;
|
|
10
|
+
version: number;
|
|
11
|
+
isValid: boolean;
|
|
12
|
+
diagnostic?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function parseReference(raw: string): ReferenceExpression;
|
|
15
|
+
export declare function serializeReference(expression: ReferenceExpression): string;
|
|
16
|
+
export interface ReferenceDefinition {
|
|
17
|
+
id: string;
|
|
18
|
+
availability: {
|
|
19
|
+
server: boolean;
|
|
20
|
+
browser: boolean;
|
|
21
|
+
};
|
|
22
|
+
selectors?: string[];
|
|
23
|
+
transforms?: string[];
|
|
24
|
+
}
|
|
25
|
+
export interface ReferenceContext {
|
|
26
|
+
definitions: Record<string, ReferenceDefinition>;
|
|
27
|
+
values: Record<string, unknown>;
|
|
28
|
+
transforms?: Record<string, {
|
|
29
|
+
browser: boolean;
|
|
30
|
+
parameters: string[];
|
|
31
|
+
accepts: (value: unknown) => boolean;
|
|
32
|
+
acceptsOutput: (value: unknown) => boolean;
|
|
33
|
+
resolve: (value: unknown, parameters: Record<string, string>) => unknown;
|
|
34
|
+
}>;
|
|
35
|
+
}
|
|
36
|
+
export interface ResolvedReference {
|
|
37
|
+
expression: ReferenceExpression;
|
|
38
|
+
value?: unknown;
|
|
39
|
+
diagnostic?: 'invalidExpression' | 'missingField' | 'unknownSource' | 'forbiddenSource' | 'invalidSelector' | 'unknownTransform' | 'invalidType' | 'invalidRowScope';
|
|
40
|
+
}
|
|
41
|
+
/** Browser evaluation accepts only explicitly supplied browser projections and definitions. */
|
|
42
|
+
export declare function resolveReference(raw: string, context: ReferenceContext): ResolvedReference;
|
|
43
|
+
//# sourceMappingURL=references.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../src/references.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,MAAM,WAAW,mBAAmB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAaD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CAuC/D;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,mBAAmB,GAAG,MAAM,CAW1E;AAED,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACpD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AACD,MAAM,WAAW,gBAAgB;IAC7B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACjD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;QAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAA;KAAE,CAAC,CAAC;CACvO;AACD,MAAM,WAAW,iBAAiB;IAC9B,UAAU,EAAE,mBAAmB,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,mBAAmB,GAAG,cAAc,GAAG,eAAe,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,aAAa,GAAG,iBAAiB,CAAC;CACxK;AAED,+FAA+F;AAC/F,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,iBAAiB,CAuB1F"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type RequestProfile = 'same-origin-browser' | 'cross-origin-public' | 'trusted-administrative';
|
|
2
|
+
export type BrowserRequestOptions = {
|
|
3
|
+
profile?: Exclude<RequestProfile, 'trusted-administrative'>;
|
|
4
|
+
/** Opaque credential returned by a previous public bootstrap, when resuming. */
|
|
5
|
+
publicSession?: string;
|
|
6
|
+
};
|
|
7
|
+
export declare function browserRequest(url: string, init: RequestInit, options?: BrowserRequestOptions): Promise<Response>;
|
|
8
|
+
export declare function browserRequestHeaders(url: string, options?: BrowserRequestOptions, initialHeaders?: HeadersInit): Headers;
|
|
9
|
+
//# sourceMappingURL=request-profile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-profile.d.ts","sourceRoot":"","sources":["../src/request-profile.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,qBAAqB,GAAG,qBAAqB,GAAG,wBAAwB,CAAC;AACtG,MAAM,MAAM,qBAAqB,GAAG;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;IAC5D,gFAAgF;IAChF,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,QAAQ,CAAC,CAQ3H;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B,EAAE,cAAc,CAAC,EAAE,WAAW,GAAG,OAAO,CAa7H"}
|
package/dist/rest.d.ts
CHANGED
|
@@ -1,10 +1,26 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import { type BrowserRequestOptions } from './request-profile';
|
|
2
|
+
import type { ClientFormBootstrap, ClientTransport } from './types';
|
|
3
|
+
export type RestClientTransportOptions = BrowserRequestOptions & {
|
|
4
|
+
/**
|
|
5
|
+
* Craft web root used to build action URLs.
|
|
6
|
+
* Absolute examples: `https://example.test/` or `https://example.test/craft/`.
|
|
7
|
+
* Relative examples: `/` or `/craft`.
|
|
8
|
+
* Must include any subdirectory install path; root-relative action paths are appended.
|
|
9
|
+
*/
|
|
3
10
|
endpoint: string;
|
|
4
11
|
formHandle: string;
|
|
5
12
|
siteId?: number;
|
|
6
13
|
credentials?: RequestCredentials;
|
|
14
|
+
grantToken?: string;
|
|
15
|
+
grantPurpose?: 'continue-incomplete' | 'revise-complete';
|
|
16
|
+
draftContext?: string;
|
|
17
|
+
query?: Record<string, string | string[]>;
|
|
7
18
|
};
|
|
8
|
-
|
|
9
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Join an install/web base with a root-relative Craft action path.
|
|
21
|
+
* Absolute bases keep their pathname (subdirectory installs); absolute action paths are not treated as origin-only.
|
|
22
|
+
*/
|
|
23
|
+
export declare function buildActionUrl(baseUrl: string, path: string): string;
|
|
24
|
+
export declare function loadClientFormBootstrap(options: RestClientTransportOptions): Promise<ClientFormBootstrap>;
|
|
25
|
+
export declare function createRestClientTransport(options: RestClientTransportOptions): ClientTransport;
|
|
10
26
|
//# sourceMappingURL=rest.d.ts.map
|
package/dist/rest.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../src/rest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAER,
|
|
1
|
+
{"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../src/rest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAG/E,OAAO,KAAK,EAER,mBAAmB,EAGnB,eAAe,EAClB,MAAM,SAAS,CAAC;AAIjB,MAAM,MAAM,0BAA0B,GAAG,qBAAqB,GAAG;IAC7D;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,qBAAqB,GAAG,iBAAiB,CAAC;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;CAC7C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAwBpE;AAuBD,wBAAsB,uBAAuB,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAsB/G;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,0BAA0B,GAAG,eAAe,CAqE9F"}
|
package/dist/schema.d.ts
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare function allFields(definition:
|
|
3
|
-
export declare function findFieldById(definition:
|
|
4
|
-
export declare function findFieldByHandle(definition:
|
|
5
|
-
export declare function serializeFieldValues(definition:
|
|
6
|
-
export declare function
|
|
7
|
-
export declare function fieldValueContract(field:
|
|
8
|
-
export declare function fieldValueStructure(field:
|
|
9
|
-
export declare function isCompositeField(field:
|
|
10
|
-
export declare function isRepeatableField(field:
|
|
11
|
-
export declare function isFileField(field:
|
|
12
|
-
export declare function isMultiValueField(field:
|
|
13
|
-
export declare function isBooleanField(field:
|
|
14
|
-
export declare function isNumericField(field:
|
|
15
|
-
export declare function isEmailField(field:
|
|
16
|
-
export declare function compositePartDefinitions(field:
|
|
17
|
-
export declare function repeaterRowDefinitions(field:
|
|
18
|
-
export declare function repeaterFieldDefinitions(field:
|
|
19
|
-
export declare function defaultValueForField(field:
|
|
20
|
-
export declare function createRepeaterRowValue(field:
|
|
21
|
-
export declare function fieldValueAsStrings(field:
|
|
22
|
-
export declare function serializeTransportFieldValues(definition:
|
|
1
|
+
import type { ClientFieldDefinition, ClientFieldValueContract, ClientFormDefinition, ClientRowDefinition, ClientFormBootstrap, KnownClientFieldType } from './types';
|
|
2
|
+
export declare function allFields(definition: ClientFormDefinition | ClientFormBootstrap['definition']): ClientFieldDefinition[];
|
|
3
|
+
export declare function findFieldById(definition: ClientFormDefinition | ClientFormBootstrap['definition'], fieldId: string): ClientFieldDefinition | undefined;
|
|
4
|
+
export declare function findFieldByHandle(definition: ClientFormDefinition | ClientFormBootstrap['definition'], fieldHandle: string): ClientFieldDefinition | undefined;
|
|
5
|
+
export declare function serializeFieldValues(definition: ClientFormDefinition, values: Record<string, unknown>): Record<string, unknown>;
|
|
6
|
+
export declare function isKnownClientFieldType(fieldType: string): fieldType is KnownClientFieldType;
|
|
7
|
+
export declare function fieldValueContract(field: ClientFieldDefinition): ClientFieldValueContract;
|
|
8
|
+
export declare function fieldValueStructure(field: ClientFieldDefinition): ClientFieldValueContract['structure'];
|
|
9
|
+
export declare function isCompositeField(field: ClientFieldDefinition): boolean;
|
|
10
|
+
export declare function isRepeatableField(field: ClientFieldDefinition): boolean;
|
|
11
|
+
export declare function isFileField(field: ClientFieldDefinition): boolean;
|
|
12
|
+
export declare function isMultiValueField(field: ClientFieldDefinition): boolean;
|
|
13
|
+
export declare function isBooleanField(field: ClientFieldDefinition): boolean;
|
|
14
|
+
export declare function isNumericField(field: ClientFieldDefinition): boolean;
|
|
15
|
+
export declare function isEmailField(field: ClientFieldDefinition): boolean;
|
|
16
|
+
export declare function compositePartDefinitions(field: ClientFieldDefinition): ClientFieldDefinition[];
|
|
17
|
+
export declare function repeaterRowDefinitions(field: ClientFieldDefinition): ClientRowDefinition[];
|
|
18
|
+
export declare function repeaterFieldDefinitions(field: ClientFieldDefinition): ClientFieldDefinition[];
|
|
19
|
+
export declare function defaultValueForField(field: ClientFieldDefinition): unknown;
|
|
20
|
+
export declare function createRepeaterRowValue(field: ClientFieldDefinition): Record<string, unknown>;
|
|
21
|
+
export declare function fieldValueAsStrings(field: ClientFieldDefinition, value: unknown): string[];
|
|
22
|
+
export declare function serializeTransportFieldValues(definition: ClientFormDefinition, values: Record<string, unknown>): Promise<Record<string, unknown>>;
|
|
23
23
|
//# sourceMappingURL=schema.d.ts.map
|
package/dist/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACvB,MAAM,SAAS,CAAC;AAoBjB,wBAAgB,SAAS,CAAC,UAAU,EAAE,oBAAoB,GAAG,mBAAmB,CAAC,YAAY,CAAC,GAAG,qBAAqB,EAAE,CAIvH;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,oBAAoB,GAAG,mBAAmB,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CAEtJ;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,oBAAoB,GAAG,mBAAmB,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CAE9J;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAM/H;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,IAAI,oBAAoB,CAE3F;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,GAAG,wBAAwB,CASzF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,qBAAqB,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAEvG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAEtE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAEvE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAEjE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAMvE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAEpE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAEpE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAElE;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,qBAAqB,GAAG,qBAAqB,EAAE,CAU9F;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,GAAG,mBAAmB,EAAE,CAS1F;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,qBAAqB,GAAG,qBAAqB,EAAE,CAE9F;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAwD1E;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAI5F;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CA2C1F;AA0FD,wBAAsB,6BAA6B,CAAC,UAAU,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAYvJ"}
|
package/dist/text.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAuDF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAQnE"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
export type
|
|
3
|
-
export type
|
|
4
|
-
export type
|
|
1
|
+
import type { BrowserModuleManifest } from './browser-modules';
|
|
2
|
+
export type KnownClientFieldType = 'single-line-text' | 'multi-line-text' | 'number' | 'email' | 'phone' | 'dropdown' | 'radio' | 'checkboxes' | 'agree' | 'date' | 'name' | 'address' | 'repeater' | 'signature' | 'file';
|
|
3
|
+
export type ClientFieldType = KnownClientFieldType | (string & {});
|
|
4
|
+
export type ClientFieldValueStructure = 'scalar' | 'fixed-parent' | 'container-parent' | 'repeatable-parent';
|
|
5
|
+
export type ClientFieldValueType = {
|
|
6
|
+
kind: 'string' | 'boolean' | 'object' | 'array' | 'relationQuery' | 'none' | 'storageSafe';
|
|
7
|
+
items?: ClientFieldValueType;
|
|
5
8
|
class?: string | null;
|
|
6
9
|
};
|
|
7
|
-
export type
|
|
8
|
-
structure:
|
|
9
|
-
|
|
10
|
+
export type ClientFieldValueContract = {
|
|
11
|
+
structure: ClientFieldValueStructure;
|
|
12
|
+
valueType?: ClientFieldValueType;
|
|
10
13
|
};
|
|
11
|
-
export type
|
|
14
|
+
export type ClientValidationRule = {
|
|
15
|
+
message?: string;
|
|
16
|
+
messages?: Record<string, string>;
|
|
12
17
|
type: string;
|
|
13
18
|
fieldId?: string | null;
|
|
14
19
|
fieldHandle?: string | null;
|
|
@@ -17,26 +22,17 @@ export type FrontendValidationRule = {
|
|
|
17
22
|
minDate?: string | null;
|
|
18
23
|
maxDate?: string | null;
|
|
19
24
|
};
|
|
20
|
-
export type
|
|
21
|
-
|
|
22
|
-
targetId: string;
|
|
23
|
-
};
|
|
24
|
-
export type FrontendModuleManifest = {
|
|
25
|
-
id: string;
|
|
26
|
-
type: 'field' | 'captcha' | 'address' | 'payment' | 'custom';
|
|
27
|
-
capability: string;
|
|
28
|
-
targets: FrontendModuleTarget[];
|
|
29
|
-
config?: Record<string, unknown>;
|
|
30
|
-
};
|
|
31
|
-
export type FrontendFieldDefinition = {
|
|
25
|
+
export type ClientFieldDefinition = {
|
|
26
|
+
uid: string;
|
|
32
27
|
id: string;
|
|
33
28
|
key: string;
|
|
34
29
|
handle: string;
|
|
35
30
|
label?: string | null;
|
|
36
31
|
instructions?: string | null;
|
|
37
|
-
type:
|
|
32
|
+
type: ClientFieldType;
|
|
38
33
|
required: boolean;
|
|
39
34
|
condition?: {
|
|
35
|
+
version?: number;
|
|
40
36
|
mode: 'all' | 'any';
|
|
41
37
|
effect: 'show' | 'hide' | 'enable' | 'disable';
|
|
42
38
|
clearOnHide?: boolean;
|
|
@@ -44,25 +40,46 @@ export type FrontendFieldDefinition = {
|
|
|
44
40
|
fieldId: string;
|
|
45
41
|
operator: string;
|
|
46
42
|
value: unknown;
|
|
43
|
+
field?: string;
|
|
44
|
+
source?: {
|
|
45
|
+
selector?: string;
|
|
46
|
+
handle?: string;
|
|
47
|
+
target?: string;
|
|
48
|
+
defaultValue?: string;
|
|
49
|
+
transformerId?: string;
|
|
50
|
+
transformerParams?: Record<string, string>;
|
|
51
|
+
isValid?: boolean;
|
|
52
|
+
};
|
|
53
|
+
valueType?: import('./conditions').ConditionValueType;
|
|
54
|
+
browserSafe?: boolean;
|
|
47
55
|
}>;
|
|
48
56
|
} | null;
|
|
49
|
-
validation:
|
|
50
|
-
|
|
57
|
+
validation: ClientValidationRule[];
|
|
58
|
+
client?: {
|
|
59
|
+
children: {
|
|
60
|
+
model: ClientFieldValueStructure;
|
|
61
|
+
mode?: 'parts' | 'rows';
|
|
62
|
+
};
|
|
63
|
+
valueType?: ClientFieldValueType;
|
|
64
|
+
};
|
|
65
|
+
/** Older bootstrap payloads used runtime.structure. */
|
|
66
|
+
runtime?: ClientFieldValueContract;
|
|
51
67
|
input: Record<string, unknown>;
|
|
52
68
|
moduleRefs?: string[];
|
|
53
69
|
meta?: Record<string, unknown>;
|
|
54
70
|
};
|
|
55
|
-
export type
|
|
56
|
-
fields:
|
|
71
|
+
export type ClientRowDefinition = {
|
|
72
|
+
fields: ClientFieldDefinition[];
|
|
57
73
|
};
|
|
58
|
-
export type
|
|
74
|
+
export type ClientPageDefinition = {
|
|
59
75
|
id: string;
|
|
60
76
|
key: string;
|
|
61
77
|
label?: string | null;
|
|
62
|
-
condition?:
|
|
63
|
-
rows:
|
|
78
|
+
condition?: ClientFieldDefinition['condition'];
|
|
79
|
+
rows: ClientRowDefinition[];
|
|
64
80
|
actions: {
|
|
65
81
|
primary: {
|
|
82
|
+
condition?: ClientFieldDefinition['condition'];
|
|
66
83
|
type: 'next' | 'submit';
|
|
67
84
|
label: string;
|
|
68
85
|
};
|
|
@@ -72,7 +89,7 @@ export type FrontendPageDefinition = {
|
|
|
72
89
|
}>;
|
|
73
90
|
};
|
|
74
91
|
};
|
|
75
|
-
export type
|
|
92
|
+
export type ClientFormDefinition = {
|
|
76
93
|
id: string;
|
|
77
94
|
handle: string;
|
|
78
95
|
title?: string | null;
|
|
@@ -85,16 +102,18 @@ export type FrontendFormDefinition = {
|
|
|
85
102
|
onBlur: boolean;
|
|
86
103
|
onSubmit: boolean;
|
|
87
104
|
formErrorMessage?: string;
|
|
105
|
+
errorAriaLive?: 'polite' | 'assertive' | 'off';
|
|
88
106
|
};
|
|
89
107
|
progress?: {
|
|
90
108
|
enabled: boolean;
|
|
91
109
|
calculation: 'completion' | 'page-position' | string;
|
|
92
110
|
};
|
|
93
111
|
};
|
|
94
|
-
pages:
|
|
95
|
-
modules:
|
|
112
|
+
pages: ClientPageDefinition[];
|
|
113
|
+
modules: BrowserModuleManifest;
|
|
96
114
|
submission: {
|
|
97
115
|
endpoint: string;
|
|
116
|
+
uploadEndpoint?: string;
|
|
98
117
|
method: 'POST';
|
|
99
118
|
encoding: string;
|
|
100
119
|
actions: Array<'back' | 'save' | 'submit'>;
|
|
@@ -104,7 +123,8 @@ export type FrontendFormDefinition = {
|
|
|
104
123
|
};
|
|
105
124
|
};
|
|
106
125
|
};
|
|
107
|
-
export type
|
|
126
|
+
export type ClientFormSession = {
|
|
127
|
+
version: number;
|
|
108
128
|
id: string;
|
|
109
129
|
currentPageId: string;
|
|
110
130
|
tokens: {
|
|
@@ -114,25 +134,34 @@ export type FrontendFormSession = {
|
|
|
114
134
|
};
|
|
115
135
|
request?: string;
|
|
116
136
|
render?: string;
|
|
137
|
+
uploadCreate?: string;
|
|
117
138
|
captchas?: Record<string, unknown>;
|
|
118
139
|
};
|
|
119
140
|
continuation?: {
|
|
120
141
|
submissionUid?: string;
|
|
121
|
-
|
|
142
|
+
progressId?: string;
|
|
143
|
+
grantToken?: string;
|
|
144
|
+
purpose?: 'continue-incomplete' | 'revise-complete';
|
|
145
|
+
submissionId?: number;
|
|
122
146
|
draftContext?: string;
|
|
123
147
|
draftContextToken?: string;
|
|
124
148
|
resumeUrl?: string;
|
|
125
149
|
[key: string]: unknown;
|
|
126
150
|
} | null;
|
|
127
151
|
};
|
|
128
|
-
export type
|
|
129
|
-
|
|
130
|
-
definition:
|
|
131
|
-
session:
|
|
152
|
+
export type ClientFormBootstrap = {
|
|
153
|
+
contractVersion: 1;
|
|
154
|
+
definition: ClientFormDefinition;
|
|
155
|
+
session: ClientFormSession;
|
|
132
156
|
};
|
|
133
|
-
export type
|
|
157
|
+
export type ClientSubmitResult = {
|
|
158
|
+
outcome?: string;
|
|
159
|
+
version?: number | null;
|
|
134
160
|
success: boolean;
|
|
135
161
|
submissionUid?: string | null;
|
|
162
|
+
resumeToken?: string | null;
|
|
163
|
+
resumeUrl?: string | null;
|
|
164
|
+
resumeTokenExpiresAt?: number | null;
|
|
136
165
|
currentPageId?: string | null;
|
|
137
166
|
nextPageId?: string | null;
|
|
138
167
|
previousPageId?: string | null;
|
|
@@ -140,73 +169,99 @@ export type FrontendSubmitResult = {
|
|
|
140
169
|
errors: {
|
|
141
170
|
form: string[];
|
|
142
171
|
fields: Record<string, string[]>;
|
|
143
|
-
pages: Record<string, string[]>;
|
|
144
172
|
};
|
|
145
173
|
messages: {
|
|
146
174
|
notice?: string | null;
|
|
147
175
|
error?: string | null;
|
|
148
176
|
};
|
|
149
|
-
session?:
|
|
177
|
+
session?: ClientFormSession | null;
|
|
178
|
+
completion?: {
|
|
179
|
+
behavior: 'message' | 'redirect' | 'reload' | 'reset';
|
|
180
|
+
url: string | null;
|
|
181
|
+
target: 'same-tab' | 'new-tab';
|
|
182
|
+
message: string | null;
|
|
183
|
+
hideForm: boolean;
|
|
184
|
+
} | null;
|
|
185
|
+
redirect?: {
|
|
186
|
+
url: string;
|
|
187
|
+
target?: string;
|
|
188
|
+
} | null;
|
|
150
189
|
quizResult?: Record<string, unknown> | null;
|
|
151
190
|
clientEvents?: Array<Record<string, unknown>>;
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
191
|
+
payment?: PaymentDecision | null;
|
|
192
|
+
};
|
|
193
|
+
export type PaymentDecision = {
|
|
194
|
+
status: 'notRequired' | 'succeeded' | 'failed' | 'requiresAction' | 'pending' | 'unknown' | 'cancelled';
|
|
195
|
+
provider?: string | null;
|
|
196
|
+
reference?: string | null;
|
|
197
|
+
message?: string | null;
|
|
198
|
+
action?: {
|
|
199
|
+
type: string;
|
|
200
|
+
url?: string | null;
|
|
201
|
+
event?: string | null;
|
|
202
|
+
payload?: Record<string, unknown>;
|
|
203
|
+
resume?: {
|
|
204
|
+
mode: string;
|
|
205
|
+
url?: string | null;
|
|
206
|
+
} | null;
|
|
207
|
+
} | null;
|
|
208
|
+
};
|
|
209
|
+
export type ClientFormFieldState = {
|
|
160
210
|
hidden: boolean;
|
|
161
211
|
disabled: boolean;
|
|
162
212
|
};
|
|
163
|
-
export type
|
|
213
|
+
export type ClientFormPageState = {
|
|
164
214
|
hidden: boolean;
|
|
165
215
|
};
|
|
166
|
-
export type
|
|
216
|
+
export type ClientFormState = {
|
|
167
217
|
status: 'idle' | 'loading' | 'ready' | 'submitting' | 'refreshing' | 'destroyed';
|
|
168
|
-
definition:
|
|
169
|
-
session:
|
|
218
|
+
definition: ClientFormDefinition;
|
|
219
|
+
session: ClientFormSession;
|
|
170
220
|
values: Record<string, unknown>;
|
|
171
|
-
errors:
|
|
172
|
-
fieldStates: Record<string,
|
|
173
|
-
pageStates: Record<string,
|
|
221
|
+
errors: ClientSubmitResult['errors'];
|
|
222
|
+
fieldStates: Record<string, ClientFormFieldState>;
|
|
223
|
+
pageStates: Record<string, ClientFormPageState>;
|
|
174
224
|
currentPageId: string;
|
|
175
|
-
lastSubmitResult?:
|
|
225
|
+
lastSubmitResult?: ClientSubmitResult | null;
|
|
176
226
|
};
|
|
177
|
-
export type
|
|
178
|
-
export type
|
|
179
|
-
export type
|
|
227
|
+
export type ClientSubmitAction = 'back' | 'save' | 'next' | 'submit' | 'revise';
|
|
228
|
+
export type ClientFormEventName = 'formie:client:ready' | 'formie:submit:result' | 'formie:page:navigate' | 'formie:page:navigate:error' | 'formie:session:refreshed' | 'formie:session:refresh:error' | 'formie:state:reset';
|
|
229
|
+
export type ClientTransport = {
|
|
230
|
+
browserRequestOptions?: import('./request-profile').BrowserRequestOptions;
|
|
180
231
|
submit(input: {
|
|
181
|
-
definition:
|
|
182
|
-
session:
|
|
232
|
+
definition: ClientFormDefinition;
|
|
233
|
+
session: ClientFormSession;
|
|
183
234
|
values: Record<string, unknown>;
|
|
184
|
-
action: 'back' | 'save' | 'submit';
|
|
185
|
-
|
|
235
|
+
action: 'back' | 'save' | 'submit' | 'revise';
|
|
236
|
+
browserData?: Record<string, unknown>;
|
|
237
|
+
}): Promise<ClientSubmitResult>;
|
|
186
238
|
refreshSession(input: {
|
|
187
239
|
formHandle: string;
|
|
188
240
|
siteId?: number;
|
|
189
|
-
session:
|
|
190
|
-
}): Promise<
|
|
241
|
+
session: ClientFormSession;
|
|
242
|
+
}): Promise<ClientFormSession>;
|
|
191
243
|
setPage?(input: {
|
|
192
|
-
definition:
|
|
193
|
-
session:
|
|
244
|
+
definition: ClientFormDefinition;
|
|
245
|
+
session: ClientFormSession;
|
|
194
246
|
values: Record<string, unknown>;
|
|
195
247
|
currentPageId?: string;
|
|
196
248
|
targetPageId: string;
|
|
197
|
-
}): Promise<
|
|
249
|
+
}): Promise<ClientSubmitResult>;
|
|
198
250
|
};
|
|
199
|
-
export type
|
|
251
|
+
export type ClientFormInstance = {
|
|
252
|
+
getBrowserRequestOptions(): import('./request-profile').BrowserRequestOptions;
|
|
253
|
+
setBrowserModuleGuard(guard: () => void): void;
|
|
254
|
+
setBrowserModulePreparation(prepare: (action: ClientSubmitAction) => Promise<Record<string, unknown>>): void;
|
|
200
255
|
id: string;
|
|
201
|
-
getState():
|
|
202
|
-
subscribe(listener: (state:
|
|
256
|
+
getState(): ClientFormState;
|
|
257
|
+
subscribe(listener: (state: ClientFormState) => void): () => void;
|
|
203
258
|
setValue(fieldId: string, value: unknown): void;
|
|
204
259
|
patchValues(values: Record<string, unknown>): void;
|
|
205
|
-
submit(action?:
|
|
260
|
+
submit(action?: ClientSubmitAction): Promise<ClientSubmitResult>;
|
|
206
261
|
setPage(pageId: string): Promise<void>;
|
|
207
262
|
refreshSession(): Promise<void>;
|
|
208
263
|
reset(): void;
|
|
209
264
|
destroy(): Promise<void>;
|
|
210
|
-
on(eventName:
|
|
265
|
+
on(eventName: ClientFormEventName | (string & {}), callback: (payload: unknown) => void): () => void;
|
|
211
266
|
};
|
|
212
267
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type BrowserRequestOptions } from './request-profile';
|
|
2
|
+
import type { ClientFormDefinition, ClientFormSession } from './types';
|
|
3
|
+
/** Files are staged before submission; final submits carry scoped attachment capabilities. */
|
|
4
|
+
export declare function stageTransportFiles(definition: ClientFormDefinition, session: ClientFormSession, values: Record<string, unknown>, options: BrowserRequestOptions): Promise<Record<string, unknown>>;
|
|
5
|
+
//# sourceMappingURL=uploads.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uploads.d.ts","sourceRoot":"","sources":["../src/uploads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAIvE,8FAA8F;AAC9F,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,oBAAoB,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAoCzM"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export type BrowserValidationRule = {
|
|
2
|
+
type: string;
|
|
3
|
+
message?: string;
|
|
4
|
+
messages?: Record<string, string>;
|
|
5
|
+
min?: number | null;
|
|
6
|
+
max?: number | null;
|
|
7
|
+
[key: string]: unknown;
|
|
8
|
+
};
|
|
9
|
+
export type BrowserValidationContext = {
|
|
10
|
+
label?: string;
|
|
11
|
+
comparison?: unknown;
|
|
12
|
+
comparisonLabel?: string;
|
|
13
|
+
empty?: boolean;
|
|
14
|
+
};
|
|
15
|
+
export type BrowserRule = (value: unknown, rule: BrowserValidationRule, context: BrowserValidationContext) => string | null;
|
|
16
|
+
export declare function registerBrowserValidationRule(type: string, rule: BrowserRule): () => void;
|
|
17
|
+
export declare function browserValueEmpty(value: unknown): boolean;
|
|
18
|
+
export declare function validateBrowserValue(value: unknown, rule: BrowserValidationRule, context?: BrowserValidationContext): string | null;
|
|
19
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,qBAAqB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAC5K,MAAM,MAAM,wBAAwB,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAC3H,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,wBAAwB,KAAK,MAAM,GAAG,IAAI,CAAC;AAE5H,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,MAAM,IAAI,CAGzF;AACD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEzD;AACD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,GAAE,wBAA6B,GAAG,MAAM,GAAG,IAAI,CAiCvI"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@verbb/formie-core",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.14",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"access": "public"
|
|
35
35
|
},
|
|
36
36
|
"scripts": {
|
|
37
|
-
"build": "vite build && npx tsc -p tsconfig.json",
|
|
37
|
+
"build": "node ../../scripts/build-condition-schema.mjs && vite build && npx tsc -p tsconfig.json",
|
|
38
38
|
"test": "vitest run"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
@@ -43,6 +43,6 @@
|
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"typescript": "^6.0.3",
|
|
45
45
|
"vite": "^8.0.10",
|
|
46
|
-
"vitest": "^4.1.
|
|
46
|
+
"vitest": "^4.1.11"
|
|
47
47
|
}
|
|
48
48
|
}
|