Skip to content

Commit e3d747f

Browse files
committed
feat(utils): use utils in module ; expose it from package
1 parent bc81f33 commit e3d747f

2 files changed

Lines changed: 8 additions & 88 deletions

File tree

build.config.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
import { defineBuildConfig } from 'unbuild'
22

33
export default defineBuildConfig({
4+
entries: [
5+
'./src/module.ts',
6+
'./src/utils.ts',
7+
],
48
externals: [
59
'consola',
610
'pathe',

src/module.ts

Lines changed: 4 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import { join } from 'pathe'
66
import chalk from 'chalk'
77
import prompts from 'prompts'
88
import * as execa from 'execa'
9+
import { getEdgeDbConfiguration } from './utils'
910

1011
const logger = createConsola({
1112
defaults: {
@@ -85,38 +86,6 @@ const nuxtModule = defineNuxtModule<ModuleOptions>({
8586
nuxt.options.build.transpile ??= []
8687
nuxt.options.build.transpile.push('edgedb')
8788

88-
// Inject env credentials from `edgedb instance credentials`
89-
if (options.injectDbCredentials) {
90-
// http://localhost:10702/db/edgedb/ext/auth/
91-
let dbCredentials: any | undefined
92-
try {
93-
dbCredentials = await execa.execaCommand(`edgedb instance credentials --json`, { cwd: resolveProject() })
94-
}
95-
catch (e) {
96-
// Silently fail, the EdgeDB instance credentials command failed.
97-
}
98-
if (dbCredentials) {
99-
const { host, port, database, user, password, tls_ca, tls_security } = JSON.parse(dbCredentials.stdout)
100-
101-
if (!process.env.NUXT_EDGEDB_HOST)
102-
process.env.NUXT_EDGEDB_HOST = host
103-
if (!process.env.NUXT_EDGEDB_PORT)
104-
process.env.NUXT_EDGEDB_PORT = port
105-
if (!process.env.NUXT_EDGEDB_DATABASE)
106-
process.env.NUXT_EDGEDB_DATABASE = database
107-
if (!process.env.NUXT_EDGEDB_USER)
108-
process.env.NUXT_EDGEDB_USER = user
109-
if (!process.env.NUXT_EDGEDB_PASS)
110-
process.env.NUXT_EDGEDB_PASS = password
111-
if (!process.env.NUXT_EDGEDB_TLS_CA)
112-
process.env.NUXT_EDGEDB_TLS_CA = tls_ca
113-
if (!process.env.NUXT_EDGEDB_TLS_SECURITY)
114-
process.env.NUXT_EDGEDB_TLS_SECURITY = tls_security
115-
if (!process.env.NUXT_EDGEDB_AUTH_BASE_URL)
116-
process.env.NUXT_EDGEDB_AUTH_BASE_URL = `http://${host}:${port}/db/${database}/ext/auth/`
117-
}
118-
}
119-
12089
const envAppUrl = process.env.APP_URL || process.env.NUXT_EDGEDB_APP_URL
12190

12291
// Create dev app url
@@ -128,63 +97,10 @@ const nuxtModule = defineNuxtModule<ModuleOptions>({
12897

12998
const appUrl = envAppUrl || devAppUrl
13099

131-
const {
132-
// EdgeDB DSN settings
133-
NUXT_EDGEDB_HOST: host,
134-
NUXT_EDGEDB_PORT: port,
135-
NUXT_EDGEDB_USER: user,
136-
NUXT_EDGEDB_PASS: pass,
137-
NUXT_EDGEDB_DATABASE: database,
138-
NUXT_EDGEDB_TLS_CA: tlsCA,
139-
NUXT_EDGEDB_TLS_SECURITY: tlsSecurity,
140-
141-
// EdgeDB Auth settings
142-
NUXT_EDGEDB_IDENTITY_MODEL: identityModel = options.identityModel || 'User',
143-
144-
// EdgeDB Auth URls
145-
NUXT_EDGEDB_AUTH_BASE_URL: authBaseUrl = `http://${host}:${port}/db/${database}/ext/auth/`,
146-
NUXT_EDGEDB_OAUTH_CALLBACK: oAuthCallbackUrl = `http://${host}:${port}/db/${database}/ext/auth/callback`,
147-
148-
// EdgeDB Nuxt Auth URLs
149-
NUXT_EDGEDB_AUTH_VERIFY_REDIRECT_URL: verifyRedirectUrl = `${appUrl}/auth/verify`,
150-
NUXT_EDGEDB_AUTH_RESET_PASSWORD_URL: resetPasswordUrl = `${appUrl}/auth/reset-password`,
151-
NUXT_EDGEDB_OAUTH_REDIRECT_URL: oAuthRedirectUrl = `${appUrl}/auth/callback`,
152-
} = process.env
153-
154-
const dsn = {
155-
host,
156-
port,
157-
user,
158-
pass,
159-
database,
160-
tlsCA,
161-
tlsSecurity: tlsSecurity as 'insecure' | 'no_host_verification' | 'strict' | 'default' | undefined,
162-
full: `edgedb://${user}:${pass}@${host}:${port}/${database}`,
163-
}
164-
165-
const urls = {
166-
// EdgeDB Nuxt Auth URLs
167-
appUrl: appUrl || devAppUrl,
168-
resetPasswordUrl,
169-
verifyRedirectUrl,
170-
oAuthRedirectUrl,
171-
172-
// EdgeDB Auth URls
173-
authBaseUrl,
174-
oAuthCallbackUrl,
175-
}
100+
// Inject runtime configuration
101+
nuxt.options.runtimeConfig.edgeDb ??= await getEdgeDbConfiguration(appUrl, options, resolveProject(), options.injectDbCredentials)
176102

177-
const auth = {
178-
enabled: options.auth,
179-
oauth: options.oauth,
180-
identityModel,
181-
}
182-
183-
nuxt.options.runtimeConfig.edgeDb ??= {
184-
auth,
185-
dsn,
186-
urls,
187-
}
103+
console.log(nuxt.options.runtimeConfig.edgeDb)
188104

189105
async function piped$(
190106
command: string,

0 commit comments

Comments
 (0)