-
Notifications
You must be signed in to change notification settings - Fork 23
Expand file tree
/
Copy pathmedusa-config.ts
More file actions
93 lines (84 loc) · 2.32 KB
/
Copy pathmedusa-config.ts
File metadata and controls
93 lines (84 loc) · 2.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
import { loadEnv, defineConfig, Modules } from '@medusajs/framework/utils';
loadEnv(process.env.NODE_ENV || 'development', process.cwd());
const dynamicModules = {};
const stripeApiKey = process.env.STRIPE_API_KEY;
const stripeWebhookSecret = process.env.STRIPE_WEBHOOK_SECRET;
const isStripeConfigured = Boolean(stripeApiKey) && Boolean(stripeWebhookSecret);
if (isStripeConfigured) {
console.log('Stripe API key and webhook secret found. Enabling payment module');
dynamicModules[Modules.PAYMENT] = {
resolve: '@medusajs/medusa/payment',
options: {
providers: [
{
resolve: '@medusajs/medusa/payment-stripe',
id: 'stripe',
options: {
apiKey: stripeApiKey,
webhookSecret: stripeWebhookSecret
}
}
]
}
};
}
const modules = {
[Modules.FILE]: {
resolve: '@medusajs/medusa/file',
options: {
providers: [
{
resolve: '@medusajs/file-s3',
id: 's3',
options: {
file_url: process.env.DO_SPACE_URL,
access_key_id: process.env.DO_SPACE_ACCESS_KEY,
secret_access_key: process.env.DO_SPACE_SECRET_KEY,
region: process.env.DO_SPACE_REGION,
bucket: process.env.DO_SPACE_BUCKET,
endpoint: process.env.DO_SPACE_ENDPOINT
}
}
]
}
},
[Modules.NOTIFICATION]: {
resolve: "@medusajs/medusa/notification",
options: {
providers: [
{
resolve: "./src/modules/resend",
id: "resend",
options: {
channels: ["email"],
api_key: process.env.RESEND_API_KEY,
from: process.env.RESEND_FROM_EMAIL,
},
},
],
},
},
[Modules.INDEX]: {
resolve: "@medusajs/index",
},
};
module.exports = defineConfig({
admin: {
backendUrl: process.env.MEDUSA_BACKEND_URL,
disable: process.env.DISABLE_MEDUSA_ADMIN === 'true'
},
projectConfig: {
databaseUrl: process.env.DATABASE_URL,
http: {
storeCors: process.env.STORE_CORS,
adminCors: process.env.ADMIN_CORS,
authCors: process.env.AUTH_CORS,
jwtSecret: process.env.JWT_SECRET || 'supersecret',
cookieSecret: process.env.COOKIE_SECRET || 'supersecret'
},
},
modules: {
...dynamicModules,
...modules
}
});