Skip to content

Commit 2e46656

Browse files
committed
feat(config): add option to enable disable the module.
1 parent f1ca098 commit 2e46656

File tree

2 files changed

+24
-13
lines changed

2 files changed

+24
-13
lines changed

playground/nuxt.config.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ export default defineNuxtConfig({
55
},
66
},
77
modules: ["../src/module"],
8-
utm: {},
8+
utm: {
9+
enabled: true,
10+
},
911
devtools: { enabled: true },
1012
});

src/module.ts

+21-12
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,32 @@
1-
import { defineNuxtModule, addPlugin, addImports, createResolver } from "@nuxt/kit";
1+
import {
2+
defineNuxtModule,
3+
addPlugin,
4+
addImports,
5+
createResolver,
6+
} from "@nuxt/kit";
27

3-
// Module options TypeScript interface definition
4-
export interface ModuleOptions {}
8+
export interface ModuleOptions {
9+
enabled: boolean;
10+
}
511

612
export default defineNuxtModule<ModuleOptions>({
713
meta: {
814
name: "utm",
915
configKey: "utm",
1016
},
11-
// Default configuration options of the Nuxt module
12-
defaults: {},
13-
setup() {
17+
defaults: {
18+
enabled: true,
19+
},
20+
setup(options, nuxt) {
1421
const resolver = createResolver(import.meta.url);
1522

16-
// Do not add the extension since the `.ts` will be transpiled to `.mjs` after `npm run prepack`
17-
addPlugin(resolver.resolve("./runtime/plugin"));
18-
addImports({
19-
name: 'useNuxtUTM',
20-
from: resolver.resolve('runtime/composables'),
21-
})
23+
if (options.enabled) {
24+
// Do not add the extension since the `.ts` will be transpiled to `.mjs` after `npm run prepack`
25+
addPlugin(resolver.resolve("./runtime/plugin"));
26+
addImports({
27+
name: "useNuxtUTM",
28+
from: resolver.resolve("runtime/composables"),
29+
});
30+
}
2231
},
2332
});

0 commit comments

Comments
 (0)