@@ -13,7 +13,7 @@ import {
1313import type { Nuxt } from '@nuxt/schema'
1414import type { ModuleOptions as MDCModuleOptions } from '@nuxtjs/mdc'
1515import { hash } from 'ohash'
16- import { join , isAbsolute } from 'pathe'
16+ import { join } from 'pathe'
1717import htmlTags from '@nuxtjs/mdc/runtime/parser/utils/html-tags-list'
1818import { kebabCase , pascalCase } from 'scule'
1919import defu from 'defu'
@@ -75,14 +75,6 @@ export default defineNuxtModule<ModuleOptions>({
7575 } ,
7676 } ,
7777 async setup ( options , nuxt ) {
78- // Provide default database configuration here since nuxt is merging defaults and user options
79- if ( ! options . database ) {
80- options . database = {
81- type : 'sqlite' ,
82- filename : './contents.sqlite' ,
83- }
84- }
85-
8678 const resolver = createResolver ( import . meta. url )
8779 const manifest : Manifest = {
8880 checksum : { } ,
@@ -91,31 +83,9 @@ export default defineNuxtModule<ModuleOptions>({
9183 collections : [ ] ,
9284 }
9385
94- // Create local database
95- await refineDatabaseConfig ( options . _localDatabase , nuxt )
96- if ( options . _localDatabase ?. type === 'sqlite' ) {
97- options . _localDatabase ! . filename = isAbsolute ( options . _localDatabase ! . filename )
98- ? options . _localDatabase ! . filename
99- : join ( nuxt . options . rootDir , options . _localDatabase ! . filename )
100- }
101-
102- // Create sql database
103- await refineDatabaseConfig ( options . database , nuxt )
104-
10586 const { collections } = await loadContentConfig ( nuxt )
10687 manifest . collections = collections
10788
108- // Module Options
109- nuxt . options . runtimeConfig . public . content = {
110- wsUrl : '' ,
111- }
112- nuxt . options . runtimeConfig . content = {
113- version,
114- database : options . database ,
115- localDatabase : options . _localDatabase ! ,
116- integrityCheck : true ,
117- } as never
118-
11989 nuxt . options . vite . optimizeDeps ||= { }
12090 nuxt . options . vite . optimizeDeps . exclude ||= [ ]
12191 nuxt . options . vite . optimizeDeps . exclude . push ( '@sqlite.org/sqlite-wasm' )
@@ -159,9 +129,25 @@ export default defineNuxtModule<ModuleOptions>({
159129 }
160130 }
161131
162- // Load nitro preset and set db adapter
163132 const preset = findPreset ( nuxt )
164133 await preset ?. setup ?.( options , nuxt )
134+
135+ // Provide default database configuration here since nuxt is merging defaults and user options
136+ options . database ||= { type : 'sqlite' , filename : './contents.sqlite' }
137+ await refineDatabaseConfig ( options . _localDatabase , { rootDir : nuxt . options . rootDir , updateSqliteFileName : true } )
138+ await refineDatabaseConfig ( options . database , { rootDir : nuxt . options . rootDir } )
139+
140+ // Module Options
141+ nuxt . options . runtimeConfig . public . content = {
142+ wsUrl : '' ,
143+ }
144+ nuxt . options . runtimeConfig . content = {
145+ version,
146+ database : options . database ,
147+ localDatabase : options . _localDatabase ! ,
148+ integrityCheck : true ,
149+ } as never
150+
165151 nuxt . hook ( 'nitro:config' , async ( config ) => {
166152 const preset = findPreset ( nuxt )
167153 await preset . setupNitro ( config , { manifest, resolver, moduleOptions : options } )
0 commit comments