@forumone/throughline-forms 0.6.3 → 0.7.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 +67 -0
- package/README.md +6 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/options.d.ts +12 -3
- package/dist/options.d.ts.map +1 -1
- package/dist/options.js +21 -3
- package/dist/options.js.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +6 -1
- package/dist/plugin.js.map +1 -1
- package/dist/policy-fields.js +4 -4
- package/dist/policy-fields.js.map +1 -1
- package/dist/submit/endpoint.js +1 -1
- package/dist/submit/endpoint.js.map +1 -1
- package/dist/templates/FormSubmission.d.ts +1 -1
- package/dist/templates/FormSubmission.d.ts.map +1 -1
- package/dist/templates/SubmitterConfirmation.d.ts +1 -1
- package/dist/templates/SubmitterConfirmation.d.ts.map +1 -1
- package/dist/templates/_layout.d.ts +1 -1
- package/dist/templates/_layout.d.ts.map +1 -1
- package/dist/tools/update-form-destinations.d.ts.map +1 -1
- package/dist/tools/update-form-destinations.js +1 -1
- package/dist/tools/update-form-destinations.js.map +1 -1
- package/dist/tools/update-form-fields.d.ts.map +1 -1
- package/dist/tools/update-form-fields.js +1 -1
- package/dist/tools/update-form-fields.js.map +1 -1
- package/package.json +7 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,72 @@
|
|
|
1
1
|
# @forumone/throughline-forms
|
|
2
2
|
|
|
3
|
+
## 0.7.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 006ae30: A missing environment variable is reported together with every other one, in a
|
|
8
|
+
single error, instead of one plugin at a time.
|
|
9
|
+
|
|
10
|
+
The plugins that read the environment at init now declare what they cannot
|
|
11
|
+
start without, as data: `approvalsEnv` (`APPROVAL_TOKEN_SECRET`, 32+
|
|
12
|
+
characters), `emailEnv` (`RESEND_API_KEY`, `EMAIL_FROM_ADDRESS`) and `formsEnv`
|
|
13
|
+
(`FORMS_IP_HASH_SECRET`, 32+ characters). Each is a list of `EnvRequirement`
|
|
14
|
+
(`{ name, minLength?, why }`), a new type in `plugin-contract`, and each
|
|
15
|
+
plugin's own init check now reads the same entries, so the two cannot drift.
|
|
16
|
+
An empty or whitespace-only value now counts as missing in those checks.
|
|
17
|
+
|
|
18
|
+
Core exports `assertEnvironment(...checks)`. Call it first in
|
|
19
|
+
`payload.config.ts` with the plugins' lists and your own variables; it throws
|
|
20
|
+
one `EnvironmentError` whose first line reads "Configuration problem: N
|
|
21
|
+
environment variables are missing or invalid", followed by every missing or
|
|
22
|
+
too-short variable and why it is needed. Values are never printed. An argument
|
|
23
|
+
can also be a function, for a rule that is not "this name, this long", such as
|
|
24
|
+
a database URL accepted under several names. `checkEnvValue` is the one-value
|
|
25
|
+
check behind it, for a plugin's own backstop.
|
|
26
|
+
|
|
27
|
+
New projects call `assertEnvironment` at the top of `payload.config.ts` with
|
|
28
|
+
`approvalsEnv`, `emailEnv`, `formsEnv`, `PAYLOAD_SECRET` (32+ characters),
|
|
29
|
+
`NEXT_PUBLIC_SERVER_URL` and the database resolver, and `.env.example` marks
|
|
30
|
+
which variables are checked. An existing site can do the same and delete any
|
|
31
|
+
hand-kept copy of the plugins' requirements.
|
|
32
|
+
|
|
33
|
+
- ab623e1: The `payload` peer range moves from `^3.0.0` to `^3.89.0` for every package that has one. **A site on Payload older than 3.89.0 must upgrade Payload before upgrading these packages.**
|
|
34
|
+
|
|
35
|
+
Before 3.89.0, the `payload-mcp-api-keys` collection that `@payloadcms/plugin-mcp` adds registered Payload's API-key strategy on every REST route. Any key could then become `req.user` outside `/api/mcp` and pass access rules written as `Boolean(req.user)`. Every Throughline site runs that plugin, so the floor is the same for every package. No package's code changes with this bump.
|
|
36
|
+
|
|
37
|
+
- 36728c4: Collections that Throughline plugins declare now sit in a `Throughline` group in the admin sidebar, instead of loose at the top of it above every group. That covers `audit-events` (`auditPlugin`), the approvals collection (`approvalsPlugin`), `integrations` (`integrationsPlugin`), and `forms` and `form-submissions` (`formsPlugin`).
|
|
38
|
+
|
|
39
|
+
Each of those plugins accepts `admin: { group }`, which applies to every collection it declares:
|
|
40
|
+
|
|
41
|
+
- omitted: the `Throughline` group.
|
|
42
|
+
- a string, or a locale map such as `{ en: 'Workflow', fr: 'Flux' }`: that group.
|
|
43
|
+
- `false`: ungrouped, in Payload's default "Collections" section. This does not hide the collection, which is what `false` means on a collection's own `admin.group`.
|
|
44
|
+
|
|
45
|
+
A site that groups these collections with its own config plugin can pass `admin: { group }` to each plugin and delete that code. `createAuditCollection`, `createApprovalsCollection` and `createIntegrationsCollection` accept the same `admin` option.
|
|
46
|
+
|
|
47
|
+
`@forumone/throughline-plugin-contract` exports the shared pieces: `CollectionPluginOptions`, `PluginAdminOptions`, `PluginAdminGroup`, `DEFAULT_ADMIN_GROUP` and `resolveAdminGroup`, the helper a plugin spreads into each collection's `admin` block. `@forumone/throughline-core` re-exports the types.
|
|
48
|
+
|
|
49
|
+
### Patch Changes
|
|
50
|
+
|
|
51
|
+
- Updated dependencies [006ae30]
|
|
52
|
+
- Updated dependencies [549d292]
|
|
53
|
+
- Updated dependencies [70385c4]
|
|
54
|
+
- Updated dependencies [c8a86bf]
|
|
55
|
+
- Updated dependencies [ab623e1]
|
|
56
|
+
- Updated dependencies [ab623e1]
|
|
57
|
+
- Updated dependencies [36728c4]
|
|
58
|
+
- @forumone/throughline-plugin-contract@0.5.0
|
|
59
|
+
- @forumone/throughline-core@0.10.0
|
|
60
|
+
- @forumone/throughline-email@0.3.0
|
|
61
|
+
|
|
62
|
+
## 0.6.4
|
|
63
|
+
|
|
64
|
+
### Patch Changes
|
|
65
|
+
|
|
66
|
+
- Updated dependencies [d02772f]
|
|
67
|
+
- @forumone/throughline-core@0.9.1
|
|
68
|
+
- @forumone/throughline-email@0.2.12
|
|
69
|
+
|
|
3
70
|
## 0.6.3
|
|
4
71
|
|
|
5
72
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -34,7 +34,7 @@ After this package, an authorized user can ask Claude "build me a contact form t
|
|
|
34
34
|
pnpm add @forumone/throughline-forms
|
|
35
35
|
```
|
|
36
36
|
|
|
37
|
-
Peers: `payload@^3.
|
|
37
|
+
Peers: `payload@^3.89.0`, `inngest@^4.0.0`, `react@^18 || ^19`, `@payloadcms/plugin-form-builder@^3.0.0`. Form Builder must be installed in the consumer (it's a peer the plugin imports), and the version should match your `payload` version exactly because Form Builder's peers are version-locked, not caret-compatible.
|
|
38
38
|
|
|
39
39
|
## The destination allowlist is the security perimeter
|
|
40
40
|
|
|
@@ -115,6 +115,10 @@ Consent is enforced server-side. A request to `/api/forms/submit` with `consent:
|
|
|
115
115
|
- **Honeypot** — every rendered form should include a visually hidden field (use `position: absolute; left: -10000px`, **not** `display: none`). The submit endpoint silently 200s when the honeypot has a value, so bots don't pivot on a 4xx.
|
|
116
116
|
- **Rate limit** — Postgres-counted, per (form, IP-hash) per hour. Default 5; per-form override via `policy.spamProtection.rateLimit`. Phase-2 deployments with high-traffic forms can swap in a Redis-backed limiter (the rate-limit module is intentionally a single function call).
|
|
117
117
|
|
|
118
|
+
## Environment
|
|
119
|
+
|
|
120
|
+
`formsEnv` declares what the plugin reads from the environment and refuses to start without — `FORMS_IP_HASH_SECRET`, 32+ characters, used when `ipHashSecret` is omitted. Pass it to `assertEnvironment` from `@forumone/throughline-core` at the top of `payload.config.ts` so it is reported together with every other missing variable. The plugin's own init check reads the same declaration.
|
|
121
|
+
|
|
118
122
|
## Options reference
|
|
119
123
|
|
|
120
124
|
| Option | Default | Notes |
|
|
@@ -127,6 +131,7 @@ Consent is enforced server-side. A request to `/api/forms/submit` with `consent:
|
|
|
127
131
|
| `ipHashSecret` | `FORMS_IP_HASH_SECRET` env | Required, ≥32 chars |
|
|
128
132
|
| `formsCollectionSlug` | `'forms'` | |
|
|
129
133
|
| `submissionsCollectionSlug` | `'form-submissions'` | |
|
|
134
|
+
| `admin.group` | `'Throughline'` | Sidebar group for both `forms` and `form-submissions`. `false` leaves them ungrouped. [Reference](https://github.com/forumone/throughline/blob/main/docs/reference/plugin-contract.md#admin-sidebar-group) |
|
|
130
135
|
| `routePrefix` | `'/forms'` | Payload prepends `/api`; the public submit endpoint lands at `/api/forms/submit`. It is the only endpoint this plugin serves |
|
|
131
136
|
| `enabled` | `true` | Set to false to no-op |
|
|
132
137
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { formsPlugin, getFormsFunctions } from './plugin.js';
|
|
2
|
-
export { DEFAULT_FORMS_SLUG, DEFAULT_FORM_SUBMISSIONS_SLUG, DEFAULT_PRIVACY_NOTICE, DEFAULT_RATE_LIMIT, MIN_IP_HASH_SECRET_LENGTH, validateOptions, } from './options.js';
|
|
2
|
+
export { DEFAULT_FORMS_SLUG, DEFAULT_FORM_SUBMISSIONS_SLUG, DEFAULT_PRIVACY_NOTICE, DEFAULT_RATE_LIMIT, MIN_IP_HASH_SECRET_LENGTH, formsEnv, validateOptions, } from './options.js';
|
|
3
3
|
export type { AllowedDestination, DestinationType, FormsPluginOptions, ResolvedFormsConfig, } from './options.js';
|
|
4
4
|
export { listDestinations, validateDestinationLabel } from './destinations.js';
|
|
5
5
|
export type { DestinationLookupResult } from './destinations.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE5D,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,eAAe,GAChB,MAAM,cAAc,CAAA;AACrB,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAC9E,YAAY,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAEhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE7D,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,gCAAgC,EAChC,4BAA4B,EAC5B,sBAAsB,EACtB,iCAAiC,GAClC,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,gCAAgC,EAChC,mCAAmC,GACpC,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EACV,gBAAgB,EAChB,wBAAwB,EACxB,+BAA+B,EAC/B,mBAAmB,GACpB,MAAM,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE5D,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,QAAQ,EACR,eAAe,GAChB,MAAM,cAAc,CAAA;AACrB,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAC9E,YAAY,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAEhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE7D,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,gCAAgC,EAChC,4BAA4B,EAC5B,sBAAsB,EACtB,iCAAiC,GAClC,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,gCAAgC,EAChC,mCAAmC,GACpC,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EACV,gBAAgB,EAChB,wBAAwB,EACxB,+BAA+B,EAC/B,mBAAmB,GACpB,MAAM,sBAAsB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { formsPlugin, getFormsFunctions } from './plugin.js';
|
|
2
|
-
export { DEFAULT_FORMS_SLUG, DEFAULT_FORM_SUBMISSIONS_SLUG, DEFAULT_PRIVACY_NOTICE, DEFAULT_RATE_LIMIT, MIN_IP_HASH_SECRET_LENGTH, validateOptions, } from './options.js';
|
|
2
|
+
export { DEFAULT_FORMS_SLUG, DEFAULT_FORM_SUBMISSIONS_SLUG, DEFAULT_PRIVACY_NOTICE, DEFAULT_RATE_LIMIT, MIN_IP_HASH_SECRET_LENGTH, formsEnv, validateOptions, } from './options.js';
|
|
3
3
|
export { listDestinations, validateDestinationLabel } from './destinations.js';
|
|
4
4
|
export { addFormPolicyFields } from './policy-fields.js';
|
|
5
5
|
export { createCreateFormTool, createUpdateFormFieldsTool, createUpdateFormDestinationsTool, createGetFormSubmissionsTool, createValidateFormTool, createListAllowedDestinationsTool, } from './tools/index.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE5D,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,eAAe,GAChB,MAAM,cAAc,CAAA;AAQrB,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAG9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAGxD,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,gCAAgC,EAChC,4BAA4B,EAC5B,sBAAsB,EACtB,iCAAiC,GAClC,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,gCAAgC,EAChC,mCAAmC,GACpC,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE5D,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,QAAQ,EACR,eAAe,GAChB,MAAM,cAAc,CAAA;AAQrB,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAG9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAGxD,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,gCAAgC,EAChC,4BAA4B,EAC5B,sBAAsB,EACtB,iCAAiC,GAClC,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,gCAAgC,EAChC,mCAAmC,GACpC,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAA"}
|
package/dist/options.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type McpToolCollector } from '@forumone/throughline-core';
|
|
2
2
|
import type { Inngest } from 'inngest';
|
|
3
|
-
import type { BaseCorePluginOptions } from '@forumone/throughline-plugin-contract';
|
|
3
|
+
import type { BaseCorePluginOptions, CollectionPluginOptions, EnvRequirement } from '@forumone/throughline-plugin-contract';
|
|
4
4
|
export type DestinationType = 'email' | 'webhook';
|
|
5
5
|
export interface AllowedDestination {
|
|
6
6
|
type: DestinationType;
|
|
@@ -14,7 +14,7 @@ export interface AllowedDestination {
|
|
|
14
14
|
*/
|
|
15
15
|
label: string;
|
|
16
16
|
}
|
|
17
|
-
export interface FormsPluginOptions extends BaseCorePluginOptions {
|
|
17
|
+
export interface FormsPluginOptions extends BaseCorePluginOptions, CollectionPluginOptions {
|
|
18
18
|
/** Inngest client used to fire `form/submission.received` and friends. */
|
|
19
19
|
inngest: Inngest;
|
|
20
20
|
/**
|
|
@@ -72,6 +72,15 @@ export declare const DEFAULT_FORMS_SLUG = "forms";
|
|
|
72
72
|
export declare const DEFAULT_FORM_SUBMISSIONS_SLUG = "form-submissions";
|
|
73
73
|
export declare const DEFAULT_RATE_LIMIT = 5;
|
|
74
74
|
export declare const MIN_IP_HASH_SECRET_LENGTH = 32;
|
|
75
|
+
/**
|
|
76
|
+
* What `formsPlugin` reads from the environment when the matching option is
|
|
77
|
+
* omitted, and refuses to start without. Hand it to `assertEnvironment` from
|
|
78
|
+
* `@forumone/throughline-core` so a site reports it with everything else.
|
|
79
|
+
*
|
|
80
|
+
* Leave it out if you pass `ipHashSecret` yourself from somewhere other than
|
|
81
|
+
* `FORMS_IP_HASH_SECRET`.
|
|
82
|
+
*/
|
|
83
|
+
export declare const formsEnv: readonly EnvRequirement[];
|
|
75
84
|
export declare const DEFAULT_PRIVACY_NOTICE: string;
|
|
76
85
|
export interface ResolvedFormsConfig {
|
|
77
86
|
options: FormsPluginOptions;
|
package/dist/options.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AACjF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EACV,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,EACf,MAAM,uCAAuC,CAAA;AAE9C,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,SAAS,CAAA;AAEjD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAA;IACrB,iEAAiE;IACjE,KAAK,EAAE,MAAM,CAAA;IACb,uEAAuE;IACvE,WAAW,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB,EAAE,uBAAuB;IACxF,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAA;IAChB;;;;OAIG;IACH,mBAAmB,EAAE,kBAAkB,EAAE,CAAA;IACzC;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,iFAAiF;IACjF,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B;;OAEG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAA;IAClC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,EAAE,gBAAgB,CAAA;CAC5B;AAED,eAAO,MAAM,kBAAkB,UAAU,CAAA;AACzC,eAAO,MAAM,6BAA6B,qBAAqB,CAAA;AAC/D,eAAO,MAAM,kBAAkB,IAAI,CAAA;AACnC,eAAO,MAAM,yBAAyB,KAAK,CAAA;AAU3C;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,cAAc,EAAyB,CAAA;AAEvE,eAAO,MAAM,sBAAsB,QAEiE,CAAA;AAEpG,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,kBAAkB,CAAA;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,yBAAyB,EAAE,MAAM,CAAA;IACjC,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,uBAAuB,EAAE,OAAO,CAAA;IAChC,oBAAoB,EAAE,MAAM,CAAA;IAC5B,iBAAiB,EAAE,MAAM,EAAE,CAAA;CAC5B;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,kBAAkB,GAAG,mBAAmB,CAiEhF"}
|
package/dist/options.js
CHANGED
|
@@ -1,7 +1,23 @@
|
|
|
1
|
+
import { checkEnvValue } from '@forumone/throughline-core';
|
|
1
2
|
export const DEFAULT_FORMS_SLUG = 'forms';
|
|
2
3
|
export const DEFAULT_FORM_SUBMISSIONS_SLUG = 'form-submissions';
|
|
3
4
|
export const DEFAULT_RATE_LIMIT = 5;
|
|
4
5
|
export const MIN_IP_HASH_SECRET_LENGTH = 32;
|
|
6
|
+
const IP_HASH_SECRET_ENV = {
|
|
7
|
+
name: 'FORMS_IP_HASH_SECRET',
|
|
8
|
+
minLength: MIN_IP_HASH_SECRET_LENGTH,
|
|
9
|
+
why: 'Keys the hash of submitter IPs used for rate limiting, so raw IPs are never stored; ' +
|
|
10
|
+
'formsPlugin will not start without it. Generate with `openssl rand -base64 48`.',
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* What `formsPlugin` reads from the environment when the matching option is
|
|
14
|
+
* omitted, and refuses to start without. Hand it to `assertEnvironment` from
|
|
15
|
+
* `@forumone/throughline-core` so a site reports it with everything else.
|
|
16
|
+
*
|
|
17
|
+
* Leave it out if you pass `ipHashSecret` yourself from somewhere other than
|
|
18
|
+
* `FORMS_IP_HASH_SECRET`.
|
|
19
|
+
*/
|
|
20
|
+
export const formsEnv = [IP_HASH_SECRET_ENV];
|
|
5
21
|
export const DEFAULT_PRIVACY_NOTICE = 'By submitting this form, the information you provide will be used to respond to your inquiry. ' +
|
|
6
22
|
'We do not sell or share your information with third parties. See our privacy policy for details.';
|
|
7
23
|
export function validateOptions(options) {
|
|
@@ -41,9 +57,11 @@ export function validateOptions(options) {
|
|
|
41
57
|
throw new Error(`Allowed destination "${dest.label}" has unknown type "${dest.type}".`);
|
|
42
58
|
}
|
|
43
59
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
60
|
+
// The backstop for a site that does not call `assertEnvironment`, driven by
|
|
61
|
+
// the same declaration it would have passed.
|
|
62
|
+
const ipHashSecret = options.ipHashSecret ?? process.env[IP_HASH_SECRET_ENV.name];
|
|
63
|
+
if (ipHashSecret === undefined || checkEnvValue(IP_HASH_SECRET_ENV, ipHashSecret)) {
|
|
64
|
+
throw new Error(`formsPlugin requires \`options.ipHashSecret\` or \`${IP_HASH_SECRET_ENV.name}\` env var (>=${MIN_IP_HASH_SECRET_LENGTH} characters).`);
|
|
47
65
|
}
|
|
48
66
|
const routePrefix = options.routePrefix ?? '/forms';
|
|
49
67
|
return {
|
package/dist/options.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"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"}
|
package/dist/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAqB,MAAM,uCAAuC,CAAA;AAI1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,EAAE,KAAK,kBAAkB,EAAmB,MAAM,cAAc,CAAA;AA8BvE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,EAAE,UAAU,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAqB,MAAM,uCAAuC,CAAA;AAI1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,EAAE,KAAK,kBAAkB,EAAmB,MAAM,cAAc,CAAA;AA8BvE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,EAAE,UAAU,CAAC,kBAAkB,CAsJpD,CAAA;AAEH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,eAAe,CAAC,GAAG,EAAE,CAKzE"}
|
package/dist/plugin.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getPluginRegistry } from '@forumone/throughline-plugin-contract';
|
|
1
|
+
import { getPluginRegistry, resolveAdminGroup } from '@forumone/throughline-plugin-contract';
|
|
2
2
|
import { createNamedLogger, defaultLogger, getAuditWriter } from '@forumone/throughline-core';
|
|
3
3
|
import { getEmailClient as readEmailClient } from '@forumone/throughline-email';
|
|
4
4
|
import { formBuilderPlugin } from '@payloadcms/plugin-form-builder';
|
|
@@ -35,6 +35,9 @@ export const formsPlugin = (rawOptions) => (incomingConfig) => {
|
|
|
35
35
|
requireConsentByDefault: resolved.requireConsentByDefault,
|
|
36
36
|
defaultRateLimit: resolved.rateLimit,
|
|
37
37
|
};
|
|
38
|
+
// Form Builder declares both collections; it merges each override's
|
|
39
|
+
// `admin` into the collection it builds, so the group goes in there.
|
|
40
|
+
const adminGroup = resolveAdminGroup(rawOptions.admin);
|
|
38
41
|
const formBuilderConfig = formBuilderPlugin({
|
|
39
42
|
fields: {
|
|
40
43
|
text: true,
|
|
@@ -46,6 +49,7 @@ export const formsPlugin = (rawOptions) => (incomingConfig) => {
|
|
|
46
49
|
message: true,
|
|
47
50
|
},
|
|
48
51
|
formOverrides: {
|
|
52
|
+
admin: adminGroup,
|
|
49
53
|
fields: ({ defaultFields }) => addFormPolicyFields(defaultFields, policyFieldsOptions),
|
|
50
54
|
hooks: {
|
|
51
55
|
beforeChange: [
|
|
@@ -70,6 +74,7 @@ export const formsPlugin = (rawOptions) => (incomingConfig) => {
|
|
|
70
74
|
},
|
|
71
75
|
},
|
|
72
76
|
formSubmissionOverrides: {
|
|
77
|
+
admin: adminGroup,
|
|
73
78
|
access: {
|
|
74
79
|
read: ({ req }) => {
|
|
75
80
|
const roles = req.user?.['roles'] ?? [];
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
|
package/dist/policy-fields.js
CHANGED
|
@@ -35,7 +35,7 @@ export function addFormPolicyFields(baseFields, options) {
|
|
|
35
35
|
type: 'checkbox',
|
|
36
36
|
defaultValue: options.requireConsentByDefault,
|
|
37
37
|
admin: {
|
|
38
|
-
description: '
|
|
38
|
+
description: 'Adds a required consent checkbox above the submit button. Submissions without consent are rejected.',
|
|
39
39
|
},
|
|
40
40
|
},
|
|
41
41
|
{
|
|
@@ -52,7 +52,7 @@ export function addFormPolicyFields(baseFields, options) {
|
|
|
52
52
|
type: 'checkbox',
|
|
53
53
|
defaultValue: true,
|
|
54
54
|
admin: {
|
|
55
|
-
description: '
|
|
55
|
+
description: 'Adds a hidden field. Bots that fill it are silently dropped.',
|
|
56
56
|
},
|
|
57
57
|
},
|
|
58
58
|
{
|
|
@@ -60,7 +60,7 @@ export function addFormPolicyFields(baseFields, options) {
|
|
|
60
60
|
type: 'number',
|
|
61
61
|
defaultValue: options.defaultRateLimit,
|
|
62
62
|
admin: {
|
|
63
|
-
description: 'Maximum submissions per submitter
|
|
63
|
+
description: 'Maximum submissions per submitter per hour. Falls back to the plugin-wide default.',
|
|
64
64
|
},
|
|
65
65
|
},
|
|
66
66
|
],
|
|
@@ -79,7 +79,7 @@ export function addFormPolicyFields(baseFields, options) {
|
|
|
79
79
|
required: true,
|
|
80
80
|
options: destinationOptions,
|
|
81
81
|
admin: {
|
|
82
|
-
description: '
|
|
82
|
+
description: 'A pre-approved destination. New options need a plugin config change and a redeploy.',
|
|
83
83
|
},
|
|
84
84
|
},
|
|
85
85
|
{ name: 'enabled', type: 'checkbox', defaultValue: true },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy-fields.js","sourceRoot":"","sources":["../src/policy-fields.ts"],"names":[],"mappings":"AASA;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,UAAmB,EACnB,OAA4B;IAE5B,MAAM,kBAAkB,GAAG,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5E,KAAK;QACL,KAAK,EAAE,KAAK;KACb,CAAC,CAAC,CAAA;IAEH,OAAO;QACL,GAAG,UAAU;QACb;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,WAAW,EACT,wLAAwL;aAC3L;YACD,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,mBAAmB;oBACzB,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE,IAAI;oBACd,YAAY,EAAE,OAAO,CAAC,oBAAoB;oBAC1C,KAAK,EAAE;wBACL,WAAW,EACT,sFAAsF;qBACzF;iBACF;gBACD;oBACE,IAAI,EAAE,yBAAyB;oBAC/B,IAAI,EAAE,UAAU;oBAChB,YAAY,EAAE,OAAO,CAAC,uBAAuB;oBAC7C,KAAK,EAAE;wBACL,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"policy-fields.js","sourceRoot":"","sources":["../src/policy-fields.ts"],"names":[],"mappings":"AASA;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,UAAmB,EACnB,OAA4B;IAE5B,MAAM,kBAAkB,GAAG,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5E,KAAK;QACL,KAAK,EAAE,KAAK;KACb,CAAC,CAAC,CAAA;IAEH,OAAO;QACL,GAAG,UAAU;QACb;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,WAAW,EACT,wLAAwL;aAC3L;YACD,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,mBAAmB;oBACzB,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE,IAAI;oBACd,YAAY,EAAE,OAAO,CAAC,oBAAoB;oBAC1C,KAAK,EAAE;wBACL,WAAW,EACT,sFAAsF;qBACzF;iBACF;gBACD;oBACE,IAAI,EAAE,yBAAyB;oBAC/B,IAAI,EAAE,UAAU;oBAChB,YAAY,EAAE,OAAO,CAAC,uBAAuB;oBAC7C,KAAK,EAAE;wBACL,WAAW,EACT,qGAAqG;qBACxG;iBACF;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,IAAI,EAAE,MAAM;oBACZ,YAAY,EAAE,0DAA0D;iBACzE;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,UAAU;4BAChB,IAAI,EAAE,UAAU;4BAChB,YAAY,EAAE,IAAI;4BAClB,KAAK,EAAE;gCACL,WAAW,EACT,8DAA8D;6BACjE;yBACF;wBACD;4BACE,IAAI,EAAE,WAAW;4BACjB,IAAI,EAAE,QAAQ;4BACd,YAAY,EAAE,OAAO,CAAC,gBAAgB;4BACtC,KAAK,EAAE;gCACL,WAAW,EACT,oFAAoF;6BACvF;yBACF;qBACF;iBACF;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE;wBACL,WAAW,EACT,yGAAyG;qBAC5G;oBACD,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,QAAQ;4BACd,QAAQ,EAAE,IAAI;4BACd,OAAO,EAAE,kBAAkB;4BAC3B,KAAK,EAAE;gCACL,WAAW,EACT,qFAAqF;6BACxF;yBACF;wBACD,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE;qBAC1D;iBACF;gBACD;oBACE,IAAI,EAAE,uBAAuB;oBAC7B,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACL,WAAW,EACT,+HAA+H;qBAClI;oBACD,MAAM,EAAE;wBACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE;wBAC1D;4BACE,IAAI,EAAE,gBAAgB;4BACtB,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE;gCACL,WAAW,EACT,yFAAyF;6BAC5F;yBACF;wBACD;4BACE,IAAI,EAAE,SAAS;4BACf,IAAI,EAAE,MAAM;4BACZ,YAAY,EAAE,+BAA+B;yBAC9C;wBACD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE;qBACnC;iBACF;aACF;SACF;KACF,CAAA;AACH,CAAC"}
|
package/dist/submit/endpoint.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../src/submit/endpoint.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAUhD;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAA6B;IAChE,MAAM,UAAU,GAAG,GAAG,QAAQ,CAAC,WAAW,SAAS,CAAA;IAEnD,MAAM,OAAO,GAAmB,KAAK,EAAE,GAAG,EAAE,EAAE;QAC1C,IAAI,IAAgB,CAAA;QACpB,IAAI,CAAC;YACH,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CAAe,CAAA;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,GAAG,CAAC,CAAA;QAC3D,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;QAC3C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,CAAC,CAAA;QAC5D,CAAC;QAED,wEAAwE;QACxE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkB,CAAA;QACtC,IAAI,
|
|
1
|
+
{"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../src/submit/endpoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,5 +17,5 @@ export interface FormSubmissionEmailProps {
|
|
|
17
17
|
* client compatibility hazards than they're worth for a transactional
|
|
18
18
|
* notification.
|
|
19
19
|
*/
|
|
20
|
-
export declare function FormSubmissionEmail(props: FormSubmissionEmailProps): import("react
|
|
20
|
+
export declare function FormSubmissionEmail(props: FormSubmissionEmailProps): import("react").JSX.Element;
|
|
21
21
|
//# sourceMappingURL=FormSubmission.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormSubmission.d.ts","sourceRoot":"","sources":["../../src/templates/FormSubmission.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,mBAAmB,EAAE,CAAA;IAC7B,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB
|
|
1
|
+
{"version":3,"file":"FormSubmission.d.ts","sourceRoot":"","sources":["../../src/templates/FormSubmission.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,mBAAmB,EAAE,CAAA;IAC7B,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,+BA0DlE"}
|
|
@@ -14,5 +14,5 @@ export interface SubmitterConfirmationEmailProps {
|
|
|
14
14
|
* (admin-edited) content but renders it as plaintext — `body` strings
|
|
15
15
|
* containing HTML render literally rather than as markup.
|
|
16
16
|
*/
|
|
17
|
-
export declare function SubmitterConfirmationEmail(props: SubmitterConfirmationEmailProps): import("react
|
|
17
|
+
export declare function SubmitterConfirmationEmail(props: SubmitterConfirmationEmailProps): import("react").JSX.Element;
|
|
18
18
|
//# sourceMappingURL=SubmitterConfirmation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubmitterConfirmation.d.ts","sourceRoot":"","sources":["../../src/templates/SubmitterConfirmation.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,+BAA+B;IAC9C,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,yFAAyF;IACzF,OAAO,EAAE,MAAM,CAAA;IACf,sFAAsF;IACtF,IAAI,EAAE,MAAM,CAAA;CACb;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,+BAA+B
|
|
1
|
+
{"version":3,"file":"SubmitterConfirmation.d.ts","sourceRoot":"","sources":["../../src/templates/SubmitterConfirmation.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,+BAA+B;IAC9C,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,yFAAyF;IACzF,OAAO,EAAE,MAAM,CAAA;IACf,sFAAsF;IACtF,IAAI,EAAE,MAAM,CAAA;CACb;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,+BAA+B,+BAqBhF"}
|
|
@@ -10,5 +10,5 @@ export interface FormsLayoutProps {
|
|
|
10
10
|
* pulling the full token surface — these emails are short, transactional,
|
|
11
11
|
* and benefit from minimal branding.
|
|
12
12
|
*/
|
|
13
|
-
export declare function FormsLayout({ preview, brandName, children }: FormsLayoutProps): import("react
|
|
13
|
+
export declare function FormsLayout({ preview, brandName, children }: FormsLayoutProps): import("react").JSX.Element;
|
|
14
14
|
//# sourceMappingURL=_layout.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_layout.d.ts","sourceRoot":"","sources":["../../src/templates/_layout.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,OAAO,CAAA;AAErD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,gBAAgB
|
|
1
|
+
{"version":3,"file":"_layout.d.ts","sourceRoot":"","sources":["../../src/templates/_layout.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,OAAO,CAAA;AAErD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,gBAAgB,+BA2C7E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-form-destinations.d.ts","sourceRoot":"","sources":["../../src/tools/update-form-destinations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AAE9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAKxD,QAAA,MAAM,WAAW;;;;;;;;;iBA2BqD,CAAC;sBAG/D,CAAC;kBAAwC,CAAC;;
|
|
1
|
+
{"version":3,"file":"update-form-destinations.d.ts","sourceRoot":"","sources":["../../src/tools/update-form-destinations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AAE9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAKxD,QAAA,MAAM,WAAW;;;;;;;;;iBA2BqD,CAAC;sBAG/D,CAAC;kBAAwC,CAAC;;iBAEf,CAAC;sBACN,CAAC;kBACjB,CAAC;;;;;;;;;;;;;;;;;;EA/Bb,CAAA;AAEF,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,mBAAmB,CAAA;CAC9B;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,0BAA0B,GAC/B,iBAAiB,CAAC,OAAO,WAAW,CAAC,CA4DvC"}
|
|
@@ -25,7 +25,7 @@ export function createUpdateFormDestinationsTool(deps) {
|
|
|
25
25
|
if (!check.ok)
|
|
26
26
|
return deniedEnvelope(check.reason ?? 'Destination not on the allowlist.');
|
|
27
27
|
}
|
|
28
|
-
let existing
|
|
28
|
+
let existing;
|
|
29
29
|
try {
|
|
30
30
|
existing = (await deps.payload.findByID({
|
|
31
31
|
collection: deps.resolved.formsCollectionSlug,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-form-destinations.js","sourceRoot":"","sources":["../../src/tools/update-form-destinations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAEnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,MAAM,WAAW,GAAG,QAAQ,CAAC;IAC3B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAC9C,CAAC,CAAA;AAOF,MAAM,UAAU,gCAAgC,CAC9C,IAAgC;IAEhC,OAAO;QACL,GAAG,WAAW,CAAC,sBAAsB;QACrC,aAAa,EAAE,cAAc;QAC7B,WAAW;QACX,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC5B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,cAAc,CAAC,uDAAuD,CAAC,CAAA;YAChF,CAAC;YAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;YAC9B,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBAC5C,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;oBAAE,OAAO,cAAc,CAAC,gCAAgC,KAAK,IAAI,CAAC,CAAA;gBACrF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBACf,MAAM,KAAK,GAAG,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;gBACpE,IAAI,CAAC,KAAK,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,KAAK,CAAC,MAAM,IAAI,mCAAmC,CAAC,CAAA;YAC3F,CAAC;YAED,IAAI,
|
|
1
|
+
{"version":3,"file":"update-form-destinations.js","sourceRoot":"","sources":["../../src/tools/update-form-destinations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-form-fields.d.ts","sourceRoot":"","sources":["../../src/tools/update-form-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AAE9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAUxD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"update-form-fields.d.ts","sourceRoot":"","sources":["../../src/tools/update-form-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AAE9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAUxD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6BI,CAAC;sBACiB,CAAA;kBAEtB,CAAC;;iBAEgB,CAAC;sBAA4C,CAAC;kBAE1C,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAjCrC,CAAA;AAEF,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,mBAAmB,CAAA;CAC9B;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,oBAAoB,GACzB,iBAAiB,CAAC,OAAO,WAAW,CAAC,CAkDvC"}
|
|
@@ -19,7 +19,7 @@ export function createUpdateFormFieldsTool(deps) {
|
|
|
19
19
|
const fieldCheck = validateFieldSet(input.fields);
|
|
20
20
|
if (!fieldCheck.ok)
|
|
21
21
|
return deniedEnvelope(fieldCheck.reason);
|
|
22
|
-
let existing
|
|
22
|
+
let existing;
|
|
23
23
|
try {
|
|
24
24
|
existing = (await deps.payload.findByID({
|
|
25
25
|
collection: deps.resolved.formsCollectionSlug,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-form-fields.js","sourceRoot":"","sources":["../../src/tools/update-form-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAEnF,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,6BAA6B,GAE9B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,MAAM,WAAW,GAAG,QAAQ,CAAC;IAC3B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CACpC,CAAC,CAAA;AAOF,MAAM,UAAU,0BAA0B,CACxC,IAA0B;IAE1B,OAAO;QACL,GAAG,WAAW,CAAC,gBAAgB;QAC/B,aAAa,EAAE,cAAc;QAC7B,WAAW;QACX,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC5B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,cAAc,CAAC,iDAAiD,CAAC,CAAA;YAC1E,CAAC;YAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACjD,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,cAAc,CAAC,UAAU,CAAC,MAAO,CAAC,CAAA;YAE7D,IAAI,
|
|
1
|
+
{"version":3,"file":"update-form-fields.js","sourceRoot":"","sources":["../../src/tools/update-form-fields.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forumone/throughline-forms",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Policy-aware forms layer for the Throughline framework. Wraps Payload's Form Builder with privacy notices, consent, honeypot spam protection, IP rate limiting, a destination allowlist, and submitter confirmation. Six MCP tools for Claude-driven form management; submissions fan out to email and webhook destinations via Inngest.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -39,22 +39,22 @@
|
|
|
39
39
|
"peerDependencies": {
|
|
40
40
|
"@payloadcms/plugin-form-builder": "^3.0.0",
|
|
41
41
|
"inngest": "^4.0.0",
|
|
42
|
-
"payload": "^3.
|
|
42
|
+
"payload": "^3.89.0",
|
|
43
43
|
"react": "^18.0.0 || ^19.0.0"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
46
|
"@react-email/components": "^0.5.4",
|
|
47
47
|
"@react-email/render": "^1.3.2",
|
|
48
48
|
"zod": "^3.23.0",
|
|
49
|
-
"@forumone/throughline-core": "0.
|
|
50
|
-
"@forumone/throughline-email": "0.
|
|
51
|
-
"@forumone/throughline-plugin-contract": "0.
|
|
49
|
+
"@forumone/throughline-core": "0.10.0",
|
|
50
|
+
"@forumone/throughline-email": "0.3.0",
|
|
51
|
+
"@forumone/throughline-plugin-contract": "0.5.0"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
|
-
"@payloadcms/plugin-form-builder": "3.
|
|
54
|
+
"@payloadcms/plugin-form-builder": "3.90.2",
|
|
55
55
|
"@types/node": "^24.13.2",
|
|
56
56
|
"@types/react": "^19.2.0",
|
|
57
|
-
"eslint": "^
|
|
57
|
+
"eslint": "^10.11.0",
|
|
58
58
|
"inngest": "^4.2.0",
|
|
59
59
|
"payload": "^3.83.0",
|
|
60
60
|
"react": "^19.2.0",
|