Skip to content

Commit 78c79f0

Browse files
authored
improve: LDP-2644: Add option to disable form handler (#271)
* improve: LDP-2644: Add option to skip form handler * LDP-2644: Add option to disable form handler middleware * LDP-2644: Formatting * LDP-2644: Update README * LDP-2644: Update README
1 parent f3710c1 commit 78c79f0

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,8 @@ is added automatically to requests. Defaults to `false`.
107107
- 'info': Log all server requests and errors.
108108
- 'error': Log only errors.
109109

110+
- `disableFormHandler`: If set to `true`, the form handler middleware will be disabled. Defaults to `false`.
111+
110112
## Overriding options with environment variables
111113

112114
Runtime config values can be overridden with environment variables via `NUXT_PUBLIC_` prefix. Supported runtime overrides:

src/module.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ export interface ModuleOptions {
1919
passThroughHeaders?: string[]
2020
exposeAPIRouteRules?: boolean
2121
serverLogLevel?: boolean | 'info' | 'error'
22+
disableFormHandler?: boolean
2223
}
2324

2425
export default defineNuxtModule<ModuleOptions>({
@@ -43,6 +44,7 @@ export default defineNuxtModule<ModuleOptions>({
4344
serverApiProxy: true,
4445
passThroughHeaders: ['cache-control', 'content-language', 'set-cookie', 'x-drupal-cache', 'x-drupal-dynamic-cache'],
4546
serverLogLevel: 'info',
47+
disableFormHandler: false,
4648
},
4749
setup(options, nuxt) {
4850
const nuxtOptions = nuxt.options as NuxtOptionsWithDrupalCe
@@ -63,15 +65,18 @@ export default defineNuxtModule<ModuleOptions>({
6365
addServerPlugin(resolve(runtimeDir, 'server/plugins/errorLogger'))
6466
}
6567
addImportsDir(resolve(runtimeDir, 'composables/useDrupalCe'))
66-
addServerHandler({
67-
handler: resolve(runtimeDir, 'server/middleware/drupalFormHandler'),
68-
})
68+
if (!options.disableFormHandler) {
69+
addServerHandler({
70+
handler: resolve(runtimeDir, 'server/middleware/drupalFormHandler'),
71+
})
72+
}
6973

7074
const publicOptions = { ...options }
7175
// Server options are not needed in the client bundle.
7276
delete publicOptions.serverLogLevel
7377
delete publicOptions.passThroughHeaders
7478
delete publicOptions.exposeAPIRouteRules
79+
delete publicOptions.disableFormHandler
7580

7681
nuxt.options.runtimeConfig.public.drupalCe = defu(nuxt.options.runtimeConfig.public.drupalCe ?? {}, publicOptions)
7782

0 commit comments

Comments
 (0)