@driveflux/config 3.0.8 → 3.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/backend.js +93 -117
- package/dist/constants.js +41 -122
- package/dist/frontend.js +25 -23
- package/dist/next.config.d.ts +1 -1
- package/dist/next.config.js +37 -51
- package/dist/next.config.js.map +1 -1
- package/dist/utils.js +7 -8
- package/package.json +1 -1
- package/dist/notion-ids.d.ts +0 -13
- package/dist/notion-ids.d.ts.map +0 -1
- package/dist/notion-ids.js +0 -11
- package/dist/notion-ids.js.map +0 -1
- package/dist/slack-ids.d.ts +0 -19
- package/dist/slack-ids.d.ts.map +0 -1
- package/dist/slack-ids.js +0 -17
- package/dist/slack-ids.js.map +0 -1
package/dist/backend.js
CHANGED
|
@@ -1,36 +1,8 @@
|
|
|
1
|
-
function _define_property(obj, key, value) {
|
|
2
|
-
if (key in obj) {
|
|
3
|
-
Object.defineProperty(obj, key, {
|
|
4
|
-
value: value,
|
|
5
|
-
enumerable: true,
|
|
6
|
-
configurable: true,
|
|
7
|
-
writable: true
|
|
8
|
-
});
|
|
9
|
-
} else {
|
|
10
|
-
obj[key] = value;
|
|
11
|
-
}
|
|
12
|
-
return obj;
|
|
13
|
-
}
|
|
14
|
-
function _object_spread(target) {
|
|
15
|
-
for(var i = 1; i < arguments.length; i++){
|
|
16
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
17
|
-
var ownKeys = Object.keys(source);
|
|
18
|
-
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
19
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
20
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
21
|
-
}));
|
|
22
|
-
}
|
|
23
|
-
ownKeys.forEach(function(key) {
|
|
24
|
-
_define_property(target, key, source[key]);
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
return target;
|
|
28
|
-
}
|
|
29
1
|
import { singleton } from '@driveflux/singleton';
|
|
30
2
|
import { z } from 'zod';
|
|
31
3
|
import { getNotionIds, getSlackIds } from './constants.js';
|
|
32
4
|
import { getAppEnv, isProd, requiredStringIfProdValidation } from './utils.js';
|
|
33
|
-
export
|
|
5
|
+
export const ConfigValidation = z.object({
|
|
34
6
|
appUrl: z.url(),
|
|
35
7
|
appEnv: z.string().optional(),
|
|
36
8
|
tunnelUrl: z.string().optional(),
|
|
@@ -40,23 +12,21 @@ export var ConfigValidation = z.object({
|
|
|
40
12
|
isProd: z.boolean(),
|
|
41
13
|
taxRate: z.number(),
|
|
42
14
|
oldTaxRate: z.number(),
|
|
43
|
-
baseCurrency: z.enum([
|
|
44
|
-
'MYR'
|
|
45
|
-
]),
|
|
15
|
+
baseCurrency: z.enum(['MYR']),
|
|
46
16
|
dbUrl: z.string(),
|
|
47
17
|
cse: z.object({
|
|
48
18
|
login: requiredStringIfProdValidation,
|
|
49
19
|
password: requiredStringIfProdValidation,
|
|
50
|
-
templateId: requiredStringIfProdValidation
|
|
20
|
+
templateId: requiredStringIfProdValidation,
|
|
51
21
|
}),
|
|
52
22
|
utilization: z.object({
|
|
53
|
-
amountThreshold: z.number().min(0).default(5)
|
|
23
|
+
amountThreshold: z.number().min(0).default(5),
|
|
54
24
|
}),
|
|
55
25
|
algolia: z.object({
|
|
56
26
|
appId: z.string(),
|
|
57
27
|
adminKey: z.string(),
|
|
58
28
|
searchKey: z.string(),
|
|
59
|
-
knowledgeBaseIndex: z.string()
|
|
29
|
+
knowledgeBaseIndex: z.string(),
|
|
60
30
|
}),
|
|
61
31
|
upload: z.object({
|
|
62
32
|
awsKey: z.string(),
|
|
@@ -66,7 +36,7 @@ export var ConfigValidation = z.object({
|
|
|
66
36
|
siteBucket: z.string(),
|
|
67
37
|
region: z.string(),
|
|
68
38
|
secret: z.string().optional(),
|
|
69
|
-
debug: z.boolean().optional()
|
|
39
|
+
debug: z.boolean().optional(),
|
|
70
40
|
}),
|
|
71
41
|
stripe: z.object({
|
|
72
42
|
secretKey: z.string(),
|
|
@@ -76,21 +46,23 @@ export var ConfigValidation = z.object({
|
|
|
76
46
|
// Both possess different keys
|
|
77
47
|
webhook: z.object({
|
|
78
48
|
connectAccountKey: z.string(),
|
|
79
|
-
accountKey: z.string()
|
|
80
|
-
})
|
|
49
|
+
accountKey: z.string(),
|
|
50
|
+
}),
|
|
81
51
|
}),
|
|
82
|
-
twilio: z
|
|
52
|
+
twilio: z
|
|
53
|
+
.object({
|
|
83
54
|
accountSid: z.string().optional(),
|
|
84
55
|
authToken: z.string().optional(),
|
|
85
|
-
phoneNumber: z.string().optional()
|
|
86
|
-
})
|
|
56
|
+
phoneNumber: z.string().optional(),
|
|
57
|
+
})
|
|
58
|
+
.optional(),
|
|
87
59
|
vonage: z.object({
|
|
88
60
|
apiKey: requiredStringIfProdValidation,
|
|
89
|
-
apiSecret: requiredStringIfProdValidation
|
|
61
|
+
apiSecret: requiredStringIfProdValidation,
|
|
90
62
|
}),
|
|
91
63
|
esms: z.object({
|
|
92
64
|
apiKey: requiredStringIfProdValidation,
|
|
93
|
-
apiSecret: requiredStringIfProdValidation
|
|
65
|
+
apiSecret: requiredStringIfProdValidation,
|
|
94
66
|
}),
|
|
95
67
|
slack: z.object({
|
|
96
68
|
token: requiredStringIfProdValidation,
|
|
@@ -109,7 +81,7 @@ export var ConfigValidation = z.object({
|
|
|
109
81
|
engineeringRequestsChannel: z.string().min(1),
|
|
110
82
|
esmsChannelId: z.string().min(1),
|
|
111
83
|
excessMileageChannelId: z.string().min(1),
|
|
112
|
-
endingSubscriptionsChannelId: z.string().min(1)
|
|
84
|
+
endingSubscriptionsChannelId: z.string().min(1),
|
|
113
85
|
}),
|
|
114
86
|
noStaticGenerating: z.boolean(),
|
|
115
87
|
notion: z.object({
|
|
@@ -121,7 +93,7 @@ export var ConfigValidation = z.object({
|
|
|
121
93
|
bdDatabaseId: z.string().min(1),
|
|
122
94
|
referralsDatabaseId: z.string().min(1),
|
|
123
95
|
brandsLandingPagesDatabaseId: z.string().min(1),
|
|
124
|
-
knowledgeBaseDatabaseId: z.string().min(1)
|
|
96
|
+
knowledgeBaseDatabaseId: z.string().min(1),
|
|
125
97
|
}),
|
|
126
98
|
flux: z.object({
|
|
127
99
|
defaultBillingAddress: z.object({
|
|
@@ -131,75 +103,72 @@ export var ConfigValidation = z.object({
|
|
|
131
103
|
city: z.string(),
|
|
132
104
|
state: z.string(),
|
|
133
105
|
/**
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
106
|
+
* Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
|
|
107
|
+
*/
|
|
108
|
+
country: z.string(),
|
|
109
|
+
postalCode: z.string(),
|
|
110
|
+
}),
|
|
138
111
|
}),
|
|
139
112
|
html2pdfKey: z.string(),
|
|
140
113
|
cmsPreviewSecret: requiredStringIfProdValidation,
|
|
141
114
|
search: z.object({
|
|
142
|
-
noIdOptimization: z.boolean()
|
|
115
|
+
noIdOptimization: z.boolean(),
|
|
143
116
|
}),
|
|
144
117
|
auth: z.object({
|
|
145
118
|
secureCookies: z.boolean(),
|
|
146
119
|
authSecret: z.string(),
|
|
147
120
|
jwtSecret: z.string(),
|
|
148
|
-
google: z
|
|
121
|
+
google: z
|
|
122
|
+
.object({
|
|
149
123
|
clientId: z.string(),
|
|
150
|
-
clientSecret: z.string()
|
|
151
|
-
})
|
|
152
|
-
|
|
124
|
+
clientSecret: z.string(),
|
|
125
|
+
})
|
|
126
|
+
.optional(),
|
|
127
|
+
facebook: z
|
|
128
|
+
.object({
|
|
153
129
|
clientId: z.string(),
|
|
154
|
-
clientSecret: z.string()
|
|
155
|
-
})
|
|
156
|
-
|
|
130
|
+
clientSecret: z.string(),
|
|
131
|
+
})
|
|
132
|
+
.optional(),
|
|
133
|
+
apple: z
|
|
134
|
+
.object({
|
|
157
135
|
clientId: z.string(),
|
|
158
|
-
clientSecret: z.string()
|
|
159
|
-
})
|
|
160
|
-
|
|
136
|
+
clientSecret: z.string(),
|
|
137
|
+
})
|
|
138
|
+
.optional(),
|
|
139
|
+
email: z
|
|
140
|
+
.object({
|
|
161
141
|
server: z.string(),
|
|
162
|
-
from: z.string()
|
|
163
|
-
})
|
|
142
|
+
from: z.string(),
|
|
143
|
+
})
|
|
144
|
+
.optional(),
|
|
164
145
|
}),
|
|
165
146
|
kv: z.object({
|
|
166
147
|
url: z.string(),
|
|
167
148
|
token: z.string(),
|
|
168
|
-
apiUrl: z.string()
|
|
149
|
+
apiUrl: z.string(),
|
|
169
150
|
}),
|
|
170
151
|
sendSMSOutsideOfProd: z.boolean().optional(),
|
|
171
|
-
vercel: z
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
152
|
+
vercel: z
|
|
153
|
+
.object({
|
|
154
|
+
cronSecret: z.string().optional(),
|
|
155
|
+
})
|
|
156
|
+
.optional(),
|
|
157
|
+
currentSubscriptionContractVersion: z.number(),
|
|
175
158
|
});
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
}
|
|
185
|
-
process.env[key] = allEnv[key];
|
|
186
|
-
}
|
|
187
|
-
} catch (err) {
|
|
188
|
-
_didIteratorError = true;
|
|
189
|
-
_iteratorError = err;
|
|
190
|
-
} finally{
|
|
191
|
-
try {
|
|
192
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
193
|
-
_iterator.return();
|
|
194
|
-
}
|
|
195
|
-
} finally{
|
|
196
|
-
if (_didIteratorError) {
|
|
197
|
-
throw _iteratorError;
|
|
198
|
-
}
|
|
159
|
+
const augmentEnv = () => {
|
|
160
|
+
const allEnv = {
|
|
161
|
+
...getSlackIds(getAppEnv(), process.env),
|
|
162
|
+
...getNotionIds(getAppEnv()),
|
|
163
|
+
};
|
|
164
|
+
for (const key of Object.keys(allEnv)) {
|
|
165
|
+
if (process.env[key]) {
|
|
166
|
+
continue;
|
|
199
167
|
}
|
|
168
|
+
process.env[key] = allEnv[key];
|
|
200
169
|
}
|
|
201
170
|
};
|
|
202
|
-
|
|
171
|
+
const getConfig = () => {
|
|
203
172
|
augmentEnv();
|
|
204
173
|
return {
|
|
205
174
|
appUrl: process.env.APP_URL,
|
|
@@ -207,7 +176,8 @@ var getConfig = function() {
|
|
|
207
176
|
apiVersion: process.env.API_VERSION,
|
|
208
177
|
tunnelUrl: process.env.TUNNEL_URL,
|
|
209
178
|
prodAppUrl: process.env.PROD_APP_URL || process.env.APP_URL,
|
|
210
|
-
apiUrl: process.env.API_URL ||
|
|
179
|
+
apiUrl: process.env.API_URL ||
|
|
180
|
+
(process.env.APP_URL ? `${process.env.APP_URL}/api` : undefined),
|
|
211
181
|
reservationFee: 49,
|
|
212
182
|
isProd: isProd(),
|
|
213
183
|
taxRate: 0.1,
|
|
@@ -219,7 +189,7 @@ var getConfig = function() {
|
|
|
219
189
|
cse: {
|
|
220
190
|
login: process.env.CSE_LOGIN,
|
|
221
191
|
password: process.env.CSE_PASSWORD,
|
|
222
|
-
templateId: process.env.CSE_TEMPLATE_ID
|
|
192
|
+
templateId: process.env.CSE_TEMPLATE_ID,
|
|
223
193
|
},
|
|
224
194
|
upload: {
|
|
225
195
|
awsKey: process.env.AWS_KEY,
|
|
@@ -229,28 +199,28 @@ var getConfig = function() {
|
|
|
229
199
|
siteBucket: process.env.SITE_BUCKET,
|
|
230
200
|
region: process.env.STORAGE_REGION,
|
|
231
201
|
secret: process.env.COMPANION_SECRET,
|
|
232
|
-
debug: process.env.COMPANION_DEBUG === 'true'
|
|
202
|
+
debug: process.env.COMPANION_DEBUG === 'true',
|
|
233
203
|
},
|
|
234
204
|
stripe: {
|
|
235
205
|
secretKey: process.env.STRIPE_SECRET_KEY,
|
|
236
206
|
apiVersion: '2020-08-27',
|
|
237
207
|
webhook: {
|
|
238
208
|
connectAccountKey: process.env.STRIPE_CONNECT_WEBHOOK_ENDPOINT_SECRET,
|
|
239
|
-
accountKey: process.env.STRIPE_WEBHOOK_SECRET
|
|
240
|
-
}
|
|
209
|
+
accountKey: process.env.STRIPE_WEBHOOK_SECRET,
|
|
210
|
+
},
|
|
241
211
|
},
|
|
242
212
|
twilio: {
|
|
243
213
|
accountSid: process.env.TWILIO_ACCOUNT_SID,
|
|
244
214
|
authToken: process.env.TWILIO_AUTH_TOKEN,
|
|
245
|
-
phoneNumber: process.env.TWILIO_PHONE_NUMBER
|
|
215
|
+
phoneNumber: process.env.TWILIO_PHONE_NUMBER,
|
|
246
216
|
},
|
|
247
217
|
vonage: {
|
|
248
218
|
apiKey: process.env.VONAGE_API_KEY,
|
|
249
|
-
apiSecret: process.env.VONAGE_API_SECRET
|
|
219
|
+
apiSecret: process.env.VONAGE_API_SECRET,
|
|
250
220
|
},
|
|
251
221
|
esms: {
|
|
252
222
|
apiKey: process.env.ESMS_API_KEY,
|
|
253
|
-
apiSecret: process.env.ESMS_API_SECRET
|
|
223
|
+
apiSecret: process.env.ESMS_API_SECRET,
|
|
254
224
|
},
|
|
255
225
|
redisUrl: process.env.REDIS_URL,
|
|
256
226
|
slack: {
|
|
@@ -270,7 +240,7 @@ var getConfig = function() {
|
|
|
270
240
|
engineeringRequestsChannel: process.env.SLACK_ENGINEERING_REQUESTS_CHANNEL_ID,
|
|
271
241
|
esmsChannelId: process.env.SLACK_ESMS_CHANNEL_ID,
|
|
272
242
|
excessMileageChannelId: process.env.SLACK_EXCESS_MILEAGE_CHANNEL_ID,
|
|
273
|
-
endingSubscriptionsChannelId: process.env.SLACK_ENDING_SUBSCRIPTIONS_CHANNEL_ID
|
|
243
|
+
endingSubscriptionsChannelId: process.env.SLACK_ENDING_SUBSCRIPTIONS_CHANNEL_ID,
|
|
274
244
|
},
|
|
275
245
|
noStaticGenerating: process.env.NO_STATIC_GENERATING === 'true',
|
|
276
246
|
notion: {
|
|
@@ -282,13 +252,13 @@ var getConfig = function() {
|
|
|
282
252
|
bdDatabaseId: process.env.NOTION_BD_DATABASE_ID,
|
|
283
253
|
referralsDatabaseId: process.env.NOTION_REFERRALS_DATABASE_ID,
|
|
284
254
|
brandsLandingPagesDatabaseId: process.env.NOTION_BRANDS_LANDING_PAGES_DATABASE_ID,
|
|
285
|
-
knowledgeBaseDatabaseId: process.env.NOTION_KNOWLEDGE_BASE_DATABASE_ID
|
|
255
|
+
knowledgeBaseDatabaseId: process.env.NOTION_KNOWLEDGE_BASE_DATABASE_ID,
|
|
286
256
|
},
|
|
287
257
|
algolia: {
|
|
288
258
|
appId: process.env.ALGOLIA_APP_ID,
|
|
289
259
|
adminKey: process.env.ALGOLIA_ADMIN_KEY,
|
|
290
260
|
searchKey: process.env.ALGOLIA_SEARCH_KEY,
|
|
291
|
-
knowledgeBaseIndex: process.env.ALGOLIA_KNOWLEDGE_BASE_INDEX
|
|
261
|
+
knowledgeBaseIndex: process.env.ALGOLIA_KNOWLEDGE_BASE_INDEX,
|
|
292
262
|
},
|
|
293
263
|
flux: {
|
|
294
264
|
defaultBillingAddress: {
|
|
@@ -298,15 +268,16 @@ var getConfig = function() {
|
|
|
298
268
|
city: 'Kuala Lumpur',
|
|
299
269
|
state: 'Kuala Lumpur',
|
|
300
270
|
/**
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
271
|
+
* Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
|
|
272
|
+
*/
|
|
273
|
+
country: 'MY',
|
|
274
|
+
postalCode: '50480',
|
|
275
|
+
},
|
|
305
276
|
},
|
|
306
277
|
html2pdfKey: process.env.HTML_2_PDF_APP_KEY,
|
|
307
278
|
cmsPreviewSecret: process.env.CMS_PREVIEW_SECRET,
|
|
308
279
|
search: {
|
|
309
|
-
noIdOptimization: process.env.NO_ID_OPTIMIZATION_IN_SEARCH === 'true'
|
|
280
|
+
noIdOptimization: process.env.NO_ID_OPTIMIZATION_IN_SEARCH === 'true',
|
|
310
281
|
},
|
|
311
282
|
auth: {
|
|
312
283
|
secureCookies: process.env.SECURE_COOKIES !== 'false',
|
|
@@ -314,34 +285,39 @@ var getConfig = function() {
|
|
|
314
285
|
jwtSecret: process.env.NEXTAUTH_SECRET,
|
|
315
286
|
google: {
|
|
316
287
|
clientId: process.env.GOOGLE_CLIENT_ID,
|
|
317
|
-
clientSecret: process.env.GOOGLE_CLIENT_SECRET
|
|
288
|
+
clientSecret: process.env.GOOGLE_CLIENT_SECRET,
|
|
318
289
|
},
|
|
319
290
|
facebook: {
|
|
320
291
|
clientId: process.env.FACEBOOK_CLIENT_ID,
|
|
321
|
-
clientSecret: process.env.FACEBOOK_CLIENT_SECRET
|
|
292
|
+
clientSecret: process.env.FACEBOOK_CLIENT_SECRET,
|
|
322
293
|
},
|
|
323
294
|
apple: {
|
|
324
295
|
clientId: process.env.APPLE_ID,
|
|
325
|
-
clientSecret: process.env.APPLE_SECRET
|
|
326
|
-
}
|
|
296
|
+
clientSecret: process.env.APPLE_SECRET,
|
|
297
|
+
},
|
|
298
|
+
// email: {
|
|
299
|
+
// server: process.env.EMAIL_SERVER! || composeMailServer(),
|
|
300
|
+
// from: process.env.AUTH_EMAIL_FROM || process.env.FROM_MAIL!,
|
|
301
|
+
// }
|
|
327
302
|
},
|
|
328
303
|
sendSMSOutsideOfProd: process.env.SEND_SMS_OUTSIDE_OF_PROD === 'true',
|
|
329
304
|
vercel: {
|
|
330
|
-
cronSecret: process.env.CRON_SECRET
|
|
305
|
+
cronSecret: process.env.CRON_SECRET,
|
|
331
306
|
},
|
|
332
307
|
kv: {
|
|
333
308
|
url: process.env.KV_URL,
|
|
334
309
|
token: process.env.KV_REST_API_TOKEN,
|
|
335
|
-
apiUrl: process.env.KV_REST_API_URL
|
|
310
|
+
apiUrl: process.env.KV_REST_API_URL,
|
|
336
311
|
},
|
|
337
|
-
currentSubscriptionContractVersion: 2
|
|
312
|
+
currentSubscriptionContractVersion: 2,
|
|
338
313
|
};
|
|
339
314
|
};
|
|
340
|
-
export
|
|
315
|
+
export const resetConfig = () => {
|
|
341
316
|
config = singleton('backendConfig', getConfig(), true);
|
|
342
317
|
return config;
|
|
343
318
|
};
|
|
344
|
-
export
|
|
345
|
-
export
|
|
319
|
+
export let config = singleton('backendConfig', getConfig());
|
|
320
|
+
export const setConfig = (key, value) => {
|
|
346
321
|
config[key] = value;
|
|
347
322
|
};
|
|
323
|
+
//# sourceMappingURL=backend.js.map
|
package/dist/constants.js
CHANGED
|
@@ -1,56 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
if (key in obj) {
|
|
3
|
-
Object.defineProperty(obj, key, {
|
|
4
|
-
value: value,
|
|
5
|
-
enumerable: true,
|
|
6
|
-
configurable: true,
|
|
7
|
-
writable: true
|
|
8
|
-
});
|
|
9
|
-
} else {
|
|
10
|
-
obj[key] = value;
|
|
11
|
-
}
|
|
12
|
-
return obj;
|
|
13
|
-
}
|
|
14
|
-
function _object_spread(target) {
|
|
15
|
-
for(var i = 1; i < arguments.length; i++){
|
|
16
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
17
|
-
var ownKeys = Object.keys(source);
|
|
18
|
-
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
19
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
20
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
21
|
-
}));
|
|
22
|
-
}
|
|
23
|
-
ownKeys.forEach(function(key) {
|
|
24
|
-
_define_property(target, key, source[key]);
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
return target;
|
|
28
|
-
}
|
|
29
|
-
function ownKeys(object, enumerableOnly) {
|
|
30
|
-
var keys = Object.keys(object);
|
|
31
|
-
if (Object.getOwnPropertySymbols) {
|
|
32
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
33
|
-
if (enumerableOnly) {
|
|
34
|
-
symbols = symbols.filter(function(sym) {
|
|
35
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
keys.push.apply(keys, symbols);
|
|
39
|
-
}
|
|
40
|
-
return keys;
|
|
41
|
-
}
|
|
42
|
-
function _object_spread_props(target, source) {
|
|
43
|
-
source = source != null ? source : {};
|
|
44
|
-
if (Object.getOwnPropertyDescriptors) {
|
|
45
|
-
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
46
|
-
} else {
|
|
47
|
-
ownKeys(Object(source)).forEach(function(key) {
|
|
48
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
return target;
|
|
52
|
-
}
|
|
53
|
-
var slackProductionChannels = {
|
|
1
|
+
const slackProductionChannels = {
|
|
54
2
|
SLACK_DEFAULT_CHANNEL_ID: 'C0679V8KGSH',
|
|
55
3
|
SLACK_RESERVATIONS_CHANNEL_ID: 'C01G8B12G67',
|
|
56
4
|
SLACK_FBC_CHANNEL: 'C01L1AAKB3N',
|
|
@@ -64,89 +12,60 @@ var slackProductionChannels = {
|
|
|
64
12
|
SLACK_COMING_SERVICES_CHANNEL_ID: 'C06SB20H2J1',
|
|
65
13
|
SLACK_ESMS_CHANNEL_ID: 'C07RPEP2BMY',
|
|
66
14
|
SLACK_EXCESS_MILEAGE_CHANNEL_ID: 'C0679URBY93',
|
|
67
|
-
SLACK_ENGINEERING_REQUESTS_CHANNEL_ID: 'C01U8GTK3K9'
|
|
68
|
-
};
|
|
69
|
-
var getSlackIdsMap = function(processEnv) {
|
|
70
|
-
return {
|
|
71
|
-
production: slackProductionChannels,
|
|
72
|
-
staging: Object.keys(slackProductionChannels).reduce(function(acc, key) {
|
|
73
|
-
acc[key] = 'C0661UNMBQU'; // #platform-staging-notifications
|
|
74
|
-
return acc;
|
|
75
|
-
}, {}),
|
|
76
|
-
development: Object.keys(slackProductionChannels).reduce(function(acc, key) {
|
|
77
|
-
acc[key] = (processEnv === null || processEnv === void 0 ? void 0 : processEnv.SLACK_MY_CHANNEL_ID) || 'C09GJ4FJVRS'; // #platform-dev-notifications
|
|
78
|
-
return acc;
|
|
79
|
-
}, {})
|
|
80
|
-
};
|
|
15
|
+
SLACK_ENGINEERING_REQUESTS_CHANNEL_ID: 'C01U8GTK3K9',
|
|
81
16
|
};
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
if (_didIteratorError) {
|
|
104
|
-
throw _iteratorError;
|
|
105
|
-
}
|
|
17
|
+
const getSlackIdsMap = (processEnv) => ({
|
|
18
|
+
production: slackProductionChannels,
|
|
19
|
+
staging: Object.keys(slackProductionChannels).reduce((acc, key) => {
|
|
20
|
+
acc[key] = 'C0661UNMBQU'; // #platform-staging-notifications
|
|
21
|
+
return acc;
|
|
22
|
+
}, {}),
|
|
23
|
+
development: Object.keys(slackProductionChannels).reduce((acc, key) => {
|
|
24
|
+
acc[key] =
|
|
25
|
+
processEnv?.SLACK_MY_CHANNEL_ID || 'C09GJ4FJVRS'; // #platform-dev-notifications
|
|
26
|
+
return acc;
|
|
27
|
+
}, {}),
|
|
28
|
+
});
|
|
29
|
+
export const getSlackIds = (appEnv, processEnv) => {
|
|
30
|
+
const slackIdsMap = getSlackIdsMap(processEnv);
|
|
31
|
+
const envIds = appEnv && appEnv in slackIdsMap
|
|
32
|
+
? slackIdsMap[appEnv]
|
|
33
|
+
: slackIdsMap.staging;
|
|
34
|
+
// Override the values from ENV if available
|
|
35
|
+
for (const key of Object.keys(envIds)) {
|
|
36
|
+
if (processEnv?.[key]) {
|
|
37
|
+
envIds[key] = processEnv[key];
|
|
106
38
|
}
|
|
107
39
|
}
|
|
108
40
|
return envIds;
|
|
109
41
|
};
|
|
110
|
-
|
|
42
|
+
const notionProductionChannels = {
|
|
111
43
|
NOTION_REQUEST_DATABASE_ID: '32332c0e-4277-43fa-b10e-7d458234f9ea',
|
|
112
|
-
NOTION_REVIEWS_DATABASE_ID: '8a8b0df9-567d-433f-8937-583db2766176',
|
|
113
|
-
NOTION_FBC_DATABASE_ID: '76960d4b-2b43-4019-a77e-ac46a0b3d752',
|
|
44
|
+
NOTION_REVIEWS_DATABASE_ID: '8a8b0df9-567d-433f-8937-583db2766176', // Seems to be unused
|
|
45
|
+
NOTION_FBC_DATABASE_ID: '76960d4b-2b43-4019-a77e-ac46a0b3d752', // Seems to be unused
|
|
114
46
|
NOTION_FLUXSTERS_DATABASE_ID: '4ea6953a-61c2-4673-8950-c0d0e158de0a',
|
|
115
47
|
NOTION_BD_DATABASE_ID: '172a9182-56c0-4358-b4f1-7e8fcfa44e46',
|
|
116
48
|
NOTION_BRANDS_LANDING_PAGES_DATABASE_ID: 'e321d71a-0d29-42da-ab0b-dca2260b643e',
|
|
117
49
|
NOTION_KNOWLEDGE_BASE_DATABASE_ID: '7a81653f-4351-4a17-aa1e-c3082c378441',
|
|
118
|
-
NOTION_REFERRALS_DATABASE_ID: 'b5599d70-b414-4aa9-9ff2-d445c8f3f0fc'
|
|
50
|
+
NOTION_REFERRALS_DATABASE_ID: 'b5599d70-b414-4aa9-9ff2-d445c8f3f0fc',
|
|
119
51
|
};
|
|
120
|
-
|
|
52
|
+
const NOTION_IDS_MAP = {
|
|
121
53
|
production: notionProductionChannels,
|
|
122
|
-
staging:
|
|
123
|
-
|
|
124
|
-
|
|
54
|
+
staging: {
|
|
55
|
+
...notionProductionChannels,
|
|
56
|
+
NOTION_KNOWLEDGE_BASE_DATABASE_ID: 'f95b9986-c1c9-46ca-a742-d49f3f80d7dd',
|
|
57
|
+
},
|
|
125
58
|
};
|
|
126
|
-
export
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
envIds[key] = processEnv[key];
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
} catch (err) {
|
|
138
|
-
_didIteratorError = true;
|
|
139
|
-
_iteratorError = err;
|
|
140
|
-
} finally{
|
|
141
|
-
try {
|
|
142
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
143
|
-
_iterator.return();
|
|
144
|
-
}
|
|
145
|
-
} finally{
|
|
146
|
-
if (_didIteratorError) {
|
|
147
|
-
throw _iteratorError;
|
|
148
|
-
}
|
|
59
|
+
export const getNotionIds = (appEnv, processEnv) => {
|
|
60
|
+
const envIds = appEnv && appEnv in NOTION_IDS_MAP
|
|
61
|
+
? NOTION_IDS_MAP[appEnv]
|
|
62
|
+
: NOTION_IDS_MAP.staging;
|
|
63
|
+
// Override the values from ENV if available
|
|
64
|
+
for (const key of Object.keys(envIds)) {
|
|
65
|
+
if (processEnv?.[key]) {
|
|
66
|
+
envIds[key] = processEnv[key];
|
|
149
67
|
}
|
|
150
68
|
}
|
|
151
69
|
return envIds;
|
|
152
70
|
};
|
|
71
|
+
//# sourceMappingURL=constants.js.map
|
package/dist/frontend.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { initSingleton } from '@driveflux/singleton';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
export
|
|
3
|
+
export const ConfigValidation = z.object({
|
|
4
4
|
appUrl: z.url(),
|
|
5
5
|
apiUrl: z.string(),
|
|
6
6
|
taxRate: z.number(),
|
|
@@ -9,7 +9,7 @@ export var ConfigValidation = z.object({
|
|
|
9
9
|
currency: z.string(),
|
|
10
10
|
stripe: z.object({
|
|
11
11
|
publishableKey: z.string(),
|
|
12
|
-
connectClientId: z.string()
|
|
12
|
+
connectClientId: z.string(),
|
|
13
13
|
}),
|
|
14
14
|
gtmCode: z.string().optional(),
|
|
15
15
|
secureCookies: z.boolean(),
|
|
@@ -17,7 +17,7 @@ export var ConfigValidation = z.object({
|
|
|
17
17
|
graphCms: z.object({
|
|
18
18
|
devAuthToken: z.string(),
|
|
19
19
|
prodAuthToken: z.string(),
|
|
20
|
-
projectApi: z.string()
|
|
20
|
+
projectApi: z.string(),
|
|
21
21
|
}),
|
|
22
22
|
isProd: z.boolean(),
|
|
23
23
|
noStaticGenerating: z.boolean(),
|
|
@@ -27,39 +27,40 @@ export var ConfigValidation = z.object({
|
|
|
27
27
|
vehicleIndexName: z.string(),
|
|
28
28
|
appId: z.string(),
|
|
29
29
|
searchKey: z.string(),
|
|
30
|
-
knowledgeBaseIndex: z.string()
|
|
30
|
+
knowledgeBaseIndex: z.string(),
|
|
31
31
|
}),
|
|
32
32
|
glitchTip: z.object({
|
|
33
|
-
dsn: z.string().optional()
|
|
33
|
+
dsn: z.string().optional(),
|
|
34
34
|
}),
|
|
35
35
|
postHog: z.object({
|
|
36
36
|
apiKey: z.string(),
|
|
37
|
-
apiHost: z.string().optional()
|
|
38
|
-
})
|
|
37
|
+
apiHost: z.string().optional(),
|
|
38
|
+
}),
|
|
39
39
|
});
|
|
40
40
|
/**
|
|
41
41
|
* Do not use this function, use the config object directly
|
|
42
|
-
*/
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
*/
|
|
43
|
+
const getConfig = () => {
|
|
44
|
+
const appUrl = process.env.APP_URL;
|
|
45
|
+
const apiUrl = process.env.API_URL || `${appUrl}/api`;
|
|
45
46
|
return {
|
|
46
|
-
appUrl
|
|
47
|
-
apiUrl
|
|
47
|
+
appUrl,
|
|
48
|
+
apiUrl,
|
|
48
49
|
taxRate: 0.1,
|
|
49
50
|
oldTaxRate: 0.08,
|
|
50
51
|
reservationFee: 49,
|
|
51
52
|
currency: 'MYR',
|
|
52
53
|
stripe: {
|
|
53
54
|
publishableKey: process.env.STRIPE_PUBLISHABLE_KEY,
|
|
54
|
-
connectClientId: process.env.STRIPE_CONNECT_CLIENT_ID || ''
|
|
55
|
+
connectClientId: process.env.STRIPE_CONNECT_CLIENT_ID || '',
|
|
55
56
|
},
|
|
56
57
|
gtmCode: process.env.GTM_CODE,
|
|
57
58
|
secureCookies: process.env.SECURE_COOKIES !== 'false',
|
|
58
59
|
appEnv: process.env.APP_ENV,
|
|
59
60
|
graphCms: {
|
|
60
|
-
devAuthToken:
|
|
61
|
-
prodAuthToken:
|
|
62
|
-
projectApi:
|
|
61
|
+
devAuthToken: `${process.env.GRAPHCMS_AUTH_TOKEN}`,
|
|
62
|
+
prodAuthToken: `${process.env.GRAPHCMS_AUTH_TOKEN}`,
|
|
63
|
+
projectApi: `${process.env.GRAPHCMS_PROJECT_API}`,
|
|
63
64
|
},
|
|
64
65
|
isProd: process.env.APP_ENV === 'production',
|
|
65
66
|
noStaticGenerating: process.env.NO_STATIC_GENERATING === 'true',
|
|
@@ -69,22 +70,23 @@ export var ConfigValidation = z.object({
|
|
|
69
70
|
vehicleIndexName: process.env.ALGOLIA_VEHICLE_INDEX_NAME || 'vehicles',
|
|
70
71
|
appId: process.env.ALGOLIA_APP_ID,
|
|
71
72
|
searchKey: process.env.ALGOLIA_SEARCH_KEY,
|
|
72
|
-
knowledgeBaseIndex: process.env.ALGOLIA_KNOWLEDGE_BASE_INDEX || 'knowledge_base'
|
|
73
|
+
knowledgeBaseIndex: process.env.ALGOLIA_KNOWLEDGE_BASE_INDEX || 'knowledge_base',
|
|
73
74
|
},
|
|
74
75
|
glitchTip: {
|
|
75
|
-
dsn: process.env.GLITCHTIP_DSN
|
|
76
|
+
dsn: process.env.GLITCHTIP_DSN,
|
|
76
77
|
},
|
|
77
78
|
postHog: {
|
|
78
79
|
apiKey: process.env.NEXT_PUBLIC_POSTHOG_KEY,
|
|
79
|
-
apiHost: process.env.NEXT_PUBLIC_POSTHOG_HOST
|
|
80
|
-
}
|
|
80
|
+
apiHost: process.env.NEXT_PUBLIC_POSTHOG_HOST,
|
|
81
|
+
},
|
|
81
82
|
};
|
|
82
83
|
};
|
|
83
|
-
export
|
|
84
|
+
export const resetConfig = () => {
|
|
84
85
|
config = initSingleton('frontendConfig', getConfig, true);
|
|
85
86
|
return config;
|
|
86
87
|
};
|
|
87
|
-
export
|
|
88
|
-
export
|
|
88
|
+
export let config = initSingleton('frontendConfig', getConfig);
|
|
89
|
+
export const setConfig = (key, value) => {
|
|
89
90
|
config[key] = value;
|
|
90
91
|
};
|
|
92
|
+
//# sourceMappingURL=frontend.js.map
|
package/dist/next.config.d.ts
CHANGED
package/dist/next.config.js
CHANGED
|
@@ -1,103 +1,89 @@
|
|
|
1
|
-
function _type_of(obj) {
|
|
2
|
-
"@swc/helpers - typeof";
|
|
3
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
4
|
-
}
|
|
5
1
|
/**
|
|
6
2
|
* Remove React properties from the bundle when explicitly set via DO_NOT_REMOVE_REACT_PROPERTIES
|
|
7
3
|
* or when the app is in production mode.
|
|
8
|
-
*/
|
|
9
|
-
|
|
4
|
+
*/
|
|
5
|
+
const reactRemoveProperties = typeof process.env.DO_NOT_REMOVE_REACT_PROPERTIES === 'string' &&
|
|
6
|
+
typeof process.env.DO_NOT_REMOVE_REACT_PROPERTIES
|
|
7
|
+
? process.env.DO_NOT_REMOVE_REACT_PROPERTIES.toLowerCase() === 'true'
|
|
8
|
+
: process.env.APP_ENV === 'production';
|
|
9
|
+
export const baseNextConfig = {
|
|
10
10
|
i18n: {
|
|
11
|
-
locales: [
|
|
12
|
-
|
|
13
|
-
'ms'
|
|
14
|
-
],
|
|
15
|
-
defaultLocale: 'en'
|
|
11
|
+
locales: ['en', 'ms', 'zh'],
|
|
12
|
+
defaultLocale: 'en',
|
|
16
13
|
},
|
|
17
14
|
env: {
|
|
18
|
-
BASE_CURRENCY: 'MYR'
|
|
15
|
+
BASE_CURRENCY: 'MYR',
|
|
19
16
|
},
|
|
20
17
|
reactStrictMode: true,
|
|
21
18
|
images: {
|
|
22
|
-
deviceSizes: [
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
1200,
|
|
26
|
-
1920
|
|
27
|
-
],
|
|
28
|
-
qualities: [
|
|
29
|
-
70,
|
|
30
|
-
75,
|
|
31
|
-
90
|
|
32
|
-
],
|
|
33
|
-
minimumCacheTTL: 31536000,
|
|
19
|
+
deviceSizes: [640, 750, 1200, 1920],
|
|
20
|
+
qualities: [70, 75, 90],
|
|
21
|
+
minimumCacheTTL: 31536000, // 1 year
|
|
34
22
|
remotePatterns: [
|
|
35
23
|
{
|
|
36
24
|
protocol: 'https',
|
|
37
|
-
hostname: 'driveflux.com'
|
|
25
|
+
hostname: 'driveflux.com',
|
|
38
26
|
},
|
|
39
27
|
{
|
|
40
28
|
protocol: 'https',
|
|
41
|
-
hostname: 'dev-flux-site-files.s3.ap-southeast-1.amazonaws.com'
|
|
29
|
+
hostname: 'dev-flux-site-files.s3.ap-southeast-1.amazonaws.com',
|
|
42
30
|
},
|
|
43
31
|
{
|
|
44
32
|
protocol: 'https',
|
|
45
|
-
hostname: 'flux-site-files.s3.ap-southeast-1.amazonaws.com'
|
|
33
|
+
hostname: 'flux-site-files.s3.ap-southeast-1.amazonaws.com',
|
|
46
34
|
},
|
|
47
35
|
{
|
|
48
36
|
protocol: 'https',
|
|
49
|
-
hostname: 's3.ap-southeast-1.amazonaws.com'
|
|
37
|
+
hostname: 's3.ap-southeast-1.amazonaws.com',
|
|
50
38
|
},
|
|
51
39
|
{
|
|
52
40
|
protocol: 'https',
|
|
53
|
-
hostname: 'flux-admin.s3.ap-southeast-1.amazonaws.com'
|
|
41
|
+
hostname: 'flux-admin.s3.ap-southeast-1.amazonaws.com',
|
|
54
42
|
},
|
|
55
43
|
{
|
|
56
44
|
protocol: 'https',
|
|
57
|
-
hostname: 'vercel.app'
|
|
45
|
+
hostname: 'vercel.app',
|
|
58
46
|
},
|
|
59
47
|
{
|
|
60
48
|
protocol: 'https',
|
|
61
|
-
hostname: 'media.graphcms.com'
|
|
49
|
+
hostname: 'media.graphcms.com',
|
|
62
50
|
},
|
|
63
51
|
{
|
|
64
52
|
protocol: 'https',
|
|
65
|
-
hostname: 'media.graphassets.com'
|
|
53
|
+
hostname: 'media.graphassets.com',
|
|
66
54
|
},
|
|
67
55
|
{
|
|
68
56
|
protocol: 'https',
|
|
69
|
-
hostname: 'www.notion.so'
|
|
57
|
+
hostname: 'www.notion.so',
|
|
70
58
|
},
|
|
71
59
|
// This is for notion images
|
|
72
60
|
{
|
|
73
61
|
protocol: 'https',
|
|
74
|
-
hostname: 'prod-files-secure.s3.us-west-2.amazonaws.com'
|
|
62
|
+
hostname: 'prod-files-secure.s3.us-west-2.amazonaws.com',
|
|
75
63
|
},
|
|
76
64
|
{
|
|
77
65
|
protocol: 'https',
|
|
78
|
-
hostname: 'ap-northeast-1.graphassets.com'
|
|
79
|
-
}
|
|
80
|
-
]
|
|
66
|
+
hostname: 'ap-northeast-1.graphassets.com',
|
|
67
|
+
},
|
|
68
|
+
],
|
|
81
69
|
},
|
|
82
70
|
experimental: {
|
|
83
71
|
esmExternals: true,
|
|
84
|
-
swcPlugins: [
|
|
85
|
-
[
|
|
86
|
-
'@lingui/swc-plugin',
|
|
87
|
-
{}
|
|
88
|
-
]
|
|
89
|
-
]
|
|
72
|
+
swcPlugins: [['@lingui/swc-plugin', {}]],
|
|
90
73
|
},
|
|
91
74
|
compiler: {
|
|
92
|
-
reactRemoveProperties
|
|
93
|
-
removeConsole: process.env.FORCE_LOGGING_IN_PROD
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
75
|
+
reactRemoveProperties,
|
|
76
|
+
removeConsole: process.env.FORCE_LOGGING_IN_PROD
|
|
77
|
+
? false
|
|
78
|
+
: process.env.APP_ENV === 'production'
|
|
79
|
+
? {
|
|
80
|
+
exclude: ['error'],
|
|
81
|
+
}
|
|
82
|
+
: false,
|
|
98
83
|
},
|
|
99
84
|
typescript: {
|
|
100
|
-
ignoreBuildErrors: process.env.IGNORE_NEXT_BUILD_ERRORS === 'true'
|
|
85
|
+
ignoreBuildErrors: process.env.IGNORE_NEXT_BUILD_ERRORS === 'true',
|
|
101
86
|
},
|
|
102
|
-
poweredByHeader: false
|
|
87
|
+
poweredByHeader: false,
|
|
103
88
|
};
|
|
89
|
+
//# sourceMappingURL=next.config.js.map
|
package/dist/next.config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next.config.js","sourceRoot":"","sources":["../src/next.config.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,qBAAqB,GAC1B,OAAO,OAAO,CAAC,GAAG,CAAC,8BAA8B,KAAK,QAAQ;IAC9D,OAAO,OAAO,CAAC,GAAG,CAAC,8BAA8B;IAChD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,WAAW,EAAE,KAAK,MAAM;IACrE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,YAAY,CAAA;AAExC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC7B,IAAI,EAAE;QACL,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"next.config.js","sourceRoot":"","sources":["../src/next.config.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,qBAAqB,GAC1B,OAAO,OAAO,CAAC,GAAG,CAAC,8BAA8B,KAAK,QAAQ;IAC9D,OAAO,OAAO,CAAC,GAAG,CAAC,8BAA8B;IAChD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,WAAW,EAAE,KAAK,MAAM;IACrE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,YAAY,CAAA;AAExC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC7B,IAAI,EAAE;QACL,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QAC3B,aAAa,EAAE,IAAI;KACnB;IACD,GAAG,EAAE;QACJ,aAAa,EAAE,KAAK;KACpB;IACD,eAAe,EAAE,IAAI;IACrB,MAAM,EAAE;QACP,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;QACnC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;QACvB,eAAe,EAAE,QAAQ,EAAE,SAAS;QACpC,cAAc,EAAE;YACf;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,eAAe;aACzB;YACD;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,qDAAqD;aAC/D;YACD;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,iDAAiD;aAC3D;YACD;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,iCAAiC;aAC3C;YACD;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,4CAA4C;aACtD;YACD;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,YAAY;aACtB;YACD;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,oBAAoB;aAC9B;YACD;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,uBAAuB;aACjC;YACD;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,eAAe;aACzB;YACD,4BAA4B;YAC5B;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,8CAA8C;aACxD;YACD;gBACC,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,gCAAgC;aAC1C;SACD;KACD;IACD,YAAY,EAAE;QACb,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,CAAC,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;KACxC;IAED,QAAQ,EAAE;QACT,qBAAqB;QACrB,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;YAC/C,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,YAAY;gBACrC,CAAC,CAAC;oBACA,OAAO,EAAE,CAAC,OAAO,CAAC;iBAClB;gBACF,CAAC,CAAC,KAAK;KACT;IACD,UAAU,EAAE;QACX,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,MAAM;KAClE;IACD,eAAe,EAAE,KAAK;CACQ,CAAA"}
|
package/dist/utils.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import z from 'zod';
|
|
2
|
-
export
|
|
2
|
+
export const getAppEnv = () => {
|
|
3
3
|
if (process.env.APP_ENV) {
|
|
4
4
|
return process.env.APP_ENV;
|
|
5
5
|
}
|
|
@@ -14,10 +14,9 @@ export var getAppEnv = function() {
|
|
|
14
14
|
// Default to development as a last resort
|
|
15
15
|
return 'development';
|
|
16
16
|
};
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
export var requiredStringIfProdValidation = isProd() ? z.string().min(1) : z.string().optional();
|
|
17
|
+
const isAppEnv = (env) => getAppEnv() === env;
|
|
18
|
+
export const isProd = () => isAppEnv('production');
|
|
19
|
+
export const requiredStringIfProdValidation = isProd()
|
|
20
|
+
? z.string().min(1)
|
|
21
|
+
: z.string().optional();
|
|
22
|
+
//# sourceMappingURL=utils.js.map
|
package/package.json
CHANGED
package/dist/notion-ids.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import z from 'zod';
|
|
2
|
-
export type NotionIds = z.infer<typeof notionIdsValidation>;
|
|
3
|
-
export declare const notionIdsValidation: z.ZodObject<{
|
|
4
|
-
requestDatabaseId: z.ZodString;
|
|
5
|
-
reviewsDatabaseId: z.ZodString;
|
|
6
|
-
fbcDatabaseId: z.ZodString;
|
|
7
|
-
fluxstersDatabaseId: z.ZodString;
|
|
8
|
-
bdDatabaseId: z.ZodString;
|
|
9
|
-
referralsDatabaseId: z.ZodString;
|
|
10
|
-
brandsLandingPagesDatabaseId: z.ZodString;
|
|
11
|
-
knowledgeBaseDatabaseId: z.ZodString;
|
|
12
|
-
}, z.core.$strip>;
|
|
13
|
-
//# sourceMappingURL=notion-ids.d.ts.map
|
package/dist/notion-ids.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"notion-ids.d.ts","sourceRoot":"","sources":["../src/notion-ids.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE3D,eAAO,MAAM,mBAAmB;;;;;;;;;iBAS9B,CAAA"}
|
package/dist/notion-ids.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import z from 'zod';
|
|
2
|
-
export var notionIdsValidation = z.object({
|
|
3
|
-
requestDatabaseId: z.string().min(1),
|
|
4
|
-
reviewsDatabaseId: z.string().min(1),
|
|
5
|
-
fbcDatabaseId: z.string().min(1),
|
|
6
|
-
fluxstersDatabaseId: z.string().min(1),
|
|
7
|
-
bdDatabaseId: z.string().min(1),
|
|
8
|
-
referralsDatabaseId: z.string().min(1),
|
|
9
|
-
brandsLandingPagesDatabaseId: z.string().min(1),
|
|
10
|
-
knowledgeBaseDatabaseId: z.string().min(1)
|
|
11
|
-
});
|
package/dist/notion-ids.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"notion-ids.js","sourceRoot":"","sources":["../src/notion-ids.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAA;AAInB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAChC,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,4BAA4B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1C,CAAC,CAAA"}
|
package/dist/slack-ids.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import z from 'zod';
|
|
2
|
-
export type SlackIds = z.infer<typeof slackIdsValidation>;
|
|
3
|
-
export declare const slackIdsValidation: z.ZodObject<{
|
|
4
|
-
defaultChannelId: z.ZodString;
|
|
5
|
-
reservationsChannelId: z.ZodString;
|
|
6
|
-
fbcChannel: z.ZodString;
|
|
7
|
-
bdChannel: z.ZodString;
|
|
8
|
-
mainFluxChannel: z.ZodString;
|
|
9
|
-
invoiceFailuresChannelId: z.ZodString;
|
|
10
|
-
inquiriesChannelId: z.ZodString;
|
|
11
|
-
sstChannelId: z.ZodString;
|
|
12
|
-
errorChannelId: z.ZodString;
|
|
13
|
-
issuesChannelId: z.ZodString;
|
|
14
|
-
comingServicesChannelId: z.ZodString;
|
|
15
|
-
engineeringRequestsChannel: z.ZodString;
|
|
16
|
-
esmsChannelId: z.ZodString;
|
|
17
|
-
excessMileageChannelId: z.ZodString;
|
|
18
|
-
}, z.core.$strip>;
|
|
19
|
-
//# sourceMappingURL=slack-ids.d.ts.map
|
package/dist/slack-ids.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack-ids.d.ts","sourceRoot":"","sources":["../src/slack-ids.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAEzD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;iBAe7B,CAAA"}
|
package/dist/slack-ids.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import z from 'zod';
|
|
2
|
-
export var slackIdsValidation = z.object({
|
|
3
|
-
defaultChannelId: z.string().min(1),
|
|
4
|
-
reservationsChannelId: z.string().min(1),
|
|
5
|
-
fbcChannel: z.string().min(1),
|
|
6
|
-
bdChannel: z.string().min(1),
|
|
7
|
-
mainFluxChannel: z.string().min(1),
|
|
8
|
-
invoiceFailuresChannelId: z.string().min(1),
|
|
9
|
-
inquiriesChannelId: z.string().min(1),
|
|
10
|
-
sstChannelId: z.string().min(1),
|
|
11
|
-
errorChannelId: z.string().min(1),
|
|
12
|
-
issuesChannelId: z.string().min(1),
|
|
13
|
-
comingServicesChannelId: z.string().min(1),
|
|
14
|
-
engineeringRequestsChannel: z.string().min(1),
|
|
15
|
-
esmsChannelId: z.string().min(1),
|
|
16
|
-
excessMileageChannelId: z.string().min(1)
|
|
17
|
-
});
|
package/dist/slack-ids.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack-ids.js","sourceRoot":"","sources":["../src/slack-ids.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAA;AAInB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,wBAAwB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,0BAA0B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAChC,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACzC,CAAC,CAAA"}
|