@marvalt/digivalt-core 0.1.7 → 0.2.1

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.
Files changed (44) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +47 -4
  3. package/bin/init.cjs +406 -25
  4. package/dist/config.cjs +520 -0
  5. package/dist/config.cjs.map +1 -0
  6. package/dist/config.d.ts +307 -0
  7. package/dist/config.esm.js +502 -0
  8. package/dist/config.esm.js.map +1 -0
  9. package/dist/generators.cjs +2481 -0
  10. package/dist/generators.cjs.map +1 -0
  11. package/dist/generators.d.ts +19 -0
  12. package/dist/generators.esm.js +2475 -0
  13. package/dist/generators.esm.js.map +1 -0
  14. package/dist/index.cjs +18 -7955
  15. package/dist/index.cjs.map +1 -1
  16. package/dist/index.d.ts +18 -1196
  17. package/dist/index.esm.js +13 -7929
  18. package/dist/index.esm.js.map +1 -1
  19. package/dist/runtime/env.d.ts +4 -0
  20. package/dist/runtime/lazy.d.ts +1 -0
  21. package/dist/services/cf-wp-webhook.d.ts +2 -0
  22. package/dist/services/gravityForms.d.ts +3 -0
  23. package/dist/services/mautic.d.ts +5 -1
  24. package/dist/services/suitecrm.d.ts +2 -0
  25. package/dist/services.cjs +1339 -0
  26. package/dist/services.cjs.map +1 -0
  27. package/dist/services.d.ts +432 -0
  28. package/dist/services.esm.js +1322 -0
  29. package/dist/services.esm.js.map +1 -0
  30. package/dist/static/index.d.ts +4 -0
  31. package/dist/static.cjs +997 -0
  32. package/dist/static.cjs.map +1 -0
  33. package/dist/static.d.ts +410 -0
  34. package/dist/static.esm.js +962 -0
  35. package/dist/static.esm.js.map +1 -0
  36. package/dist/types.cjs +3 -0
  37. package/dist/types.cjs.map +1 -0
  38. package/dist/types.d.ts +134 -0
  39. package/dist/types.esm.js +2 -0
  40. package/dist/types.esm.js.map +1 -0
  41. package/package.json +30 -2
  42. package/template/DIGIVALT_SETUP.md +73 -0
  43. package/template/scripts/deploy-secrets.js +55 -23
  44. package/template/scripts/generate.ts +3 -17
@@ -0,0 +1,520 @@
1
+ 'use strict';
2
+
3
+ var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
4
+ const getImportMetaEnv = () => {
5
+ try {
6
+ return typeof ({ url: (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('config.cjs', document.baseURI).href)) }) !== 'undefined' ? undefined : undefined;
7
+ }
8
+ catch {
9
+ return undefined;
10
+ }
11
+ };
12
+ const getEnv = (key) => {
13
+ const viteEnv = getImportMetaEnv();
14
+ if (viteEnv && key in viteEnv) {
15
+ const value = viteEnv[key];
16
+ return value == null ? undefined : String(value);
17
+ }
18
+ if (typeof process !== 'undefined' && process.env && key in process.env) {
19
+ const value = process.env[key];
20
+ return value == null ? undefined : String(value);
21
+ }
22
+ return undefined;
23
+ };
24
+ const isDevEnvironment = () => {
25
+ const viteEnv = getImportMetaEnv();
26
+ if (viteEnv && 'DEV' in viteEnv) {
27
+ return Boolean(viteEnv.DEV);
28
+ }
29
+ return typeof process !== 'undefined' && process.env?.NODE_ENV === 'development';
30
+ };
31
+
32
+ // Detect if we're running in a local development environment
33
+ const isLocalDevelopment = () => {
34
+ // Check if we're in a browser environment
35
+ if (typeof window !== 'undefined') {
36
+ // Check for local development indicators
37
+ const isLocalhost = window.location.hostname === 'localhost' ||
38
+ window.location.hostname === '127.0.0.1' ||
39
+ window.location.hostname.includes('192.168.') ||
40
+ window.location.hostname.includes('10.0.');
41
+ const isDevPort = window.location.port === '3000' ||
42
+ window.location.port === '5173' ||
43
+ window.location.port === '8080';
44
+ const hasLocalEnv = Boolean(getEnv('DEV')) || getEnv('VITE_LOCAL_DEVELOPMENT') === 'true';
45
+ return Boolean(isLocalhost && (isDevPort || hasLocalEnv));
46
+ }
47
+ else {
48
+ // Node.js environment - check environment variables
49
+ return getEnv('NODE_ENV') === 'development' ||
50
+ getEnv('VITE_LOCAL_DEVELOPMENT') === 'true';
51
+ }
52
+ };
53
+ // Get the appropriate environment configuration
54
+ const getEnvironmentConfig = () => {
55
+ const isLocal = isLocalDevelopment();
56
+ // Default to cloudflare_proxy (via Cloudflare Pages Functions)
57
+ // Use 'direct' only for local development with whitelisted IPs
58
+ const authModeRaw = getEnv('VITE_AUTH_MODE');
59
+ const authMode = authModeRaw || 'cloudflare_proxy';
60
+ // Reduced debug logging - only in development and only once
61
+ if (isDevEnvironment() && !authModeRaw) {
62
+ console.log('ℹ️ VITE_AUTH_MODE not set, defaulting to cloudflare_proxy (Cloudflare Pages Functions)');
63
+ }
64
+ // Validate auth mode value
65
+ if (authMode !== 'direct' && authMode !== 'cloudflare_proxy') {
66
+ console.error('❌ Invalid VITE_AUTH_MODE value. Must be "direct" or "cloudflare_proxy".');
67
+ return {
68
+ mode: 'error',
69
+ authMode: 'error',
70
+ dataSource: 'static',
71
+ baseUrl: '',
72
+ headers: {},
73
+ description: `Invalid configuration - VITE_AUTH_MODE="${authModeRaw}"`,
74
+ suiteCRM: {
75
+ url: undefined,
76
+ proxyUrl: undefined,
77
+ appId: undefined,
78
+ workerSecret: undefined,
79
+ oauth2: {
80
+ clientId: undefined,
81
+ clientSecret: undefined,
82
+ tokenUrl: undefined,
83
+ username: undefined,
84
+ password: undefined,
85
+ },
86
+ }
87
+ };
88
+ }
89
+ // Cloudflare proxy mode (uses Cloudflare Pages Functions by default)
90
+ // Worker URL is optional - Pages Functions handle routing automatically
91
+ if (authMode === 'cloudflare_proxy') {
92
+ const workerUrl = getEnv('VITE_CLOUDFLARE_WORKER_URL');
93
+ // Cloudflare Pages Functions work without explicit worker URL
94
+ // The worker URL is only needed for separate Cloudflare Workers
95
+ // Pages Functions automatically handle /api/* routes
96
+ const baseUrl = workerUrl || '/api';
97
+ return {
98
+ mode: isLocal ? 'local' : 'remote',
99
+ authMode: 'cloudflare_proxy',
100
+ dataSource: 'static',
101
+ baseUrl,
102
+ headers: {
103
+ 'Content-Type': 'application/json'
104
+ },
105
+ description: workerUrl
106
+ ? (isLocal ? 'Local development with Cloudflare Worker proxy' : 'Remote development with Cloudflare Worker proxy')
107
+ : (isLocal ? 'Local development with Cloudflare Pages Functions' : 'Production with Cloudflare Pages Functions'),
108
+ mautic: {
109
+ proxyUrl: getEnv('VITE_MAUTIC_PROXY_URL')
110
+ },
111
+ suiteCRM: {
112
+ url: getEnv('VITE_SUITECRM_URL'),
113
+ proxyUrl: getEnv('VITE_SUITECRM_PROXY_URL'),
114
+ appId: undefined,
115
+ workerSecret: undefined,
116
+ oauth2: {
117
+ clientId: getEnv('VITE_SUITECRM_CLIENT_ID'),
118
+ clientSecret: getEnv('VITE_SUITECRM_CLIENT_SECRET'),
119
+ tokenUrl: getEnv('VITE_SUITECRM_TOKEN_URL'),
120
+ username: getEnv('VITE_SUITECRM_USERNAME'),
121
+ password: getEnv('VITE_SUITECRM_PASSWORD'),
122
+ },
123
+ }
124
+ };
125
+ }
126
+ // Direct WordPress mode (legacy - for local development only)
127
+ if (authMode === 'direct') {
128
+ const wpApiUrl = getEnv('VITE_WORDPRESS_API_URL');
129
+ if (!wpApiUrl) {
130
+ console.warn('⚠️ Direct mode requires: VITE_WORDPRESS_API_URL');
131
+ return {
132
+ mode: 'error',
133
+ authMode: 'error',
134
+ dataSource: 'static',
135
+ baseUrl: '',
136
+ headers: {},
137
+ description: 'Invalid configuration - missing WordPress API URL',
138
+ suiteCRM: {
139
+ url: undefined,
140
+ proxyUrl: undefined,
141
+ appId: undefined,
142
+ workerSecret: undefined,
143
+ oauth2: {
144
+ clientId: undefined,
145
+ clientSecret: undefined,
146
+ tokenUrl: undefined,
147
+ username: undefined,
148
+ password: undefined,
149
+ },
150
+ }
151
+ };
152
+ }
153
+ if (isDevEnvironment()) {
154
+ console.log('🔍 Using direct WordPress mode (legacy - for local development only)');
155
+ }
156
+ const localDev = getEnv('VITE_LOCAL_DEVELOPMENT') === 'true';
157
+ return {
158
+ mode: localDev ? 'local' : 'remote',
159
+ authMode: 'direct',
160
+ dataSource: 'hybrid',
161
+ baseUrl: wpApiUrl,
162
+ headers: { 'Content-Type': 'application/json' },
163
+ description: localDev ? 'Direct (local dev) without Access' : 'Direct mode',
164
+ mautic: { url: getEnv('VITE_MAUTIC_URL') },
165
+ suiteCRM: {
166
+ url: getEnv('VITE_SUITECRM_URL'),
167
+ proxyUrl: getEnv('VITE_SUITECRM_PROXY_URL'),
168
+ appId: undefined,
169
+ workerSecret: undefined,
170
+ oauth2: {
171
+ clientId: getEnv('VITE_SUITECRM_CLIENT_ID'),
172
+ clientSecret: getEnv('VITE_SUITECRM_CLIENT_SECRET'),
173
+ tokenUrl: getEnv('VITE_SUITECRM_TOKEN_URL'),
174
+ username: getEnv('VITE_SUITECRM_USERNAME'),
175
+ password: getEnv('VITE_SUITECRM_PASSWORD'),
176
+ },
177
+ }
178
+ };
179
+ }
180
+ // This should never be reached, but just in case
181
+ return {
182
+ mode: 'error',
183
+ authMode: 'error',
184
+ dataSource: 'static',
185
+ baseUrl: '',
186
+ headers: {},
187
+ description: 'Invalid configuration - unknown error',
188
+ suiteCRM: {
189
+ url: undefined,
190
+ proxyUrl: undefined,
191
+ appId: undefined,
192
+ workerSecret: undefined,
193
+ oauth2: {
194
+ clientId: undefined,
195
+ clientSecret: undefined,
196
+ tokenUrl: undefined,
197
+ username: undefined,
198
+ password: undefined,
199
+ },
200
+ }
201
+ };
202
+ };
203
+ // Get all possible configurations for development
204
+ const getDevelopmentConfigs = () => ({
205
+ local: {
206
+ mode: 'local',
207
+ authMode: 'cloudflare_proxy',
208
+ dataSource: 'static',
209
+ baseUrl: getEnv('VITE_CLOUDFLARE_WORKER_URL') || '',
210
+ headers: {
211
+ 'Content-Type': 'application/json'
212
+ },
213
+ description: 'Local development with Cloudflare Worker proxy (Secrets Store)',
214
+ suiteCRM: {
215
+ url: getEnv('VITE_SUITECRM_URL'),
216
+ proxyUrl: getEnv('VITE_SUITECRM_PROXY_URL'),
217
+ appId: undefined,
218
+ workerSecret: undefined,
219
+ oauth2: {
220
+ clientId: getEnv('VITE_SUITECRM_CLIENT_ID'),
221
+ clientSecret: getEnv('VITE_SUITECRM_CLIENT_SECRET'),
222
+ tokenUrl: undefined, // Will be built from base URL
223
+ username: getEnv('VITE_SUITECRM_USERNAME'),
224
+ password: getEnv('VITE_SUITECRM_PASSWORD'),
225
+ },
226
+ }
227
+ },
228
+ remote: {
229
+ mode: 'remote',
230
+ authMode: 'cloudflare_proxy',
231
+ dataSource: 'static',
232
+ baseUrl: getEnv('VITE_CLOUDFLARE_WORKER_URL') || '',
233
+ headers: {
234
+ 'Content-Type': 'application/json'
235
+ },
236
+ description: 'Remote development with Cloudflare Worker proxy (Secrets Store)',
237
+ suiteCRM: {
238
+ url: getEnv('VITE_SUITECRM_URL'),
239
+ proxyUrl: getEnv('VITE_SUITECRM_PROXY_URL'),
240
+ appId: undefined,
241
+ workerSecret: undefined,
242
+ oauth2: {
243
+ clientId: getEnv('VITE_SUITECRM_CLIENT_ID'),
244
+ clientSecret: getEnv('VITE_SUITECRM_CLIENT_SECRET'),
245
+ tokenUrl: undefined, // Will be built from base URL
246
+ username: getEnv('VITE_SUITECRM_USERNAME'),
247
+ password: getEnv('VITE_SUITECRM_PASSWORD'),
248
+ },
249
+ }
250
+ },
251
+ production: {
252
+ mode: 'production',
253
+ authMode: 'cloudflare_proxy',
254
+ dataSource: 'static',
255
+ baseUrl: getEnv('VITE_CLOUDFLARE_WORKER_URL') || '',
256
+ headers: {
257
+ 'Content-Type': 'application/json'
258
+ },
259
+ description: 'Production environment with Cloudflare Worker proxy (Secrets Store)',
260
+ suiteCRM: {
261
+ url: getEnv('VITE_SUITECRM_URL'),
262
+ proxyUrl: getEnv('VITE_SUITECRM_PROXY_URL'),
263
+ appId: undefined,
264
+ workerSecret: undefined,
265
+ oauth2: {
266
+ clientId: getEnv('VITE_SUITECRM_CLIENT_ID'),
267
+ clientSecret: getEnv('VITE_SUITECRM_CLIENT_SECRET'),
268
+ tokenUrl: undefined, // Will be built from base URL
269
+ username: getEnv('VITE_SUITECRM_USERNAME'),
270
+ password: getEnv('VITE_SUITECRM_PASSWORD'),
271
+ },
272
+ }
273
+ }
274
+ });
275
+ // Environment status and diagnostics
276
+ const getEnvironmentStatus = () => {
277
+ const config = getEnvironmentConfig();
278
+ const isLocal = isLocalDevelopment();
279
+ const authMode = getEnv('VITE_AUTH_MODE');
280
+ // Check if required credentials are available for each mode
281
+ const hasCloudflareCredentials = !!getEnv('VITE_CLOUDFLARE_WORKER_URL');
282
+ const hasWordPressApiUrl = !!getEnv('VITE_WORDPRESS_API_URL');
283
+ return {
284
+ currentConfig: config,
285
+ diagnostics: {
286
+ isLocalDevelopment: isLocal,
287
+ authMode: authMode,
288
+ hasCloudflareCredentials,
289
+ hasWordpressApiUrl: hasWordPressApiUrl,
290
+ cloudflareWorkerUrl: !!getEnv('VITE_CLOUDFLARE_WORKER_URL'),
291
+ cfAccessId: !!getEnv('VITE_CF_ACCESS_CLIENT_ID'),
292
+ cfAccessSecret: !!getEnv('VITE_CF_ACCESS_CLIENT_SECRET'),
293
+ mauticProxyUrl: !!getEnv('VITE_MAUTIC_PROXY_URL')
294
+ },
295
+ recommendations: {
296
+ // Only show recommendation if authMode is explicitly set to an invalid value
297
+ // Default is cloudflare_proxy, so no recommendation needed if not set
298
+ authMode: null, // Defaults to cloudflare_proxy, no warning needed
299
+ cloudflare: null // Pages Functions work without explicit worker URL
300
+ }
301
+ };
302
+ };
303
+ // Export current environment config as default
304
+ const currentEnv = getEnvironmentConfig();
305
+ const envStatus = getEnvironmentStatus();
306
+
307
+ /**
308
+ * Integration Configuration
309
+ * Centralized configuration for all third-party integrations
310
+ */
311
+ /**
312
+ * Get integration configuration with environment variable fallbacks
313
+ */
314
+ function getIntegrationConfig() {
315
+ isDevEnvironment();
316
+ return {
317
+ wordpress: {
318
+ enabled: true,
319
+ apiUrl: getEnv('VITE_WORDPRESS_API_URL') || '',
320
+ authMode: getEnv('VITE_AUTH_MODE') || 'direct',
321
+ },
322
+ supabase: {
323
+ enabled: getEnv('VITE_AUTH_MODE') === 'supabase_proxy',
324
+ url: getEnv('VITE_SUPABASE_URL') || '',
325
+ anonKey: getEnv('VITE_SUPABASE_ANON_KEY') || '',
326
+ serviceRoleKey: getEnv('VITE_SUPABASE_SERVICE_ROLE_KEY'),
327
+ },
328
+ gravityForms: {
329
+ enabled: !!(getEnv('VITE_CLOUDFLARE_WORKER_URL') || getEnv('VITE_WORDPRESS_API_URL')),
330
+ url: getEnv('VITE_WORDPRESS_API_URL'),
331
+ proxyUrl: getEnv('VITE_CLOUDFLARE_WORKER_URL'),
332
+ consumerKey: getEnv('VITE_GF_CONSUMER_KEY'),
333
+ consumerSecret: getEnv('VITE_GF_CONSUMER_SECRET'),
334
+ forms: {
335
+ 'contact': {
336
+ name: 'Contact Form',
337
+ type: 'contact',
338
+ successMessage: 'Thank you for your message. We\'ll get back to you soon!',
339
+ },
340
+ 'newsletter': {
341
+ name: 'Newsletter Signup',
342
+ type: 'newsletter',
343
+ successMessage: 'Thank you for subscribing to our newsletter!',
344
+ },
345
+ 'support': {
346
+ name: 'Support Request',
347
+ type: 'support',
348
+ successMessage: 'Your support request has been submitted successfully.',
349
+ },
350
+ },
351
+ },
352
+ mautic: {
353
+ enabled: !!(getEnv('VITE_MAUTIC_PROXY_URL') || getEnv('VITE_MAUTIC_URL')),
354
+ url: getEnv('VITE_MAUTIC_URL') || '',
355
+ proxyUrl: getEnv('VITE_MAUTIC_PROXY_URL'),
356
+ forms: {
357
+ '1': {
358
+ name: 'Newsletter Signup',
359
+ type: 'newsletter',
360
+ successMessage: 'Thank you for subscribing to our newsletter!',
361
+ postAction: 'message',
362
+ postActionProperty: 'Thank you for your submission!'
363
+ },
364
+ '2': {
365
+ name: 'Contact Form',
366
+ type: 'contact',
367
+ successMessage: 'Thank you for contacting us! We\'ll get back to you soon.',
368
+ postAction: 'message',
369
+ postActionProperty: 'Thank you for your message!'
370
+ },
371
+ '3': {
372
+ name: 'Lead Capture',
373
+ type: 'lead',
374
+ successMessage: 'Thank you for your interest! We\'ll be in touch.',
375
+ postAction: 'message',
376
+ postActionProperty: 'Thank you for your submission!'
377
+ }
378
+ }
379
+ },
380
+ suiteCRM: {
381
+ enabled: !!(getEnv('VITE_SUITECRM_URL') && getEnv('VITE_SUITECRM_CLIENT_ID') && getEnv('VITE_SUITECRM_CLIENT_SECRET')),
382
+ url: getEnv('VITE_SUITECRM_URL'),
383
+ proxyUrl: getEnv('VITE_SUITECRM_PROXY_URL'),
384
+ appId: undefined,
385
+ workerSecret: undefined,
386
+ oauth2: {
387
+ clientId: getEnv('VITE_SUITECRM_CLIENT_ID'),
388
+ clientSecret: getEnv('VITE_SUITECRM_CLIENT_SECRET'),
389
+ username: getEnv('VITE_SUITECRM_USERNAME'),
390
+ password: getEnv('VITE_SUITECRM_PASSWORD'),
391
+ },
392
+ },
393
+ chatwoot: {
394
+ enabled: !!(getEnv('VITE_CHATWOOT_WEBSITE_TOKEN') && getEnv('VITE_CHATWOOT_BASE_URL')),
395
+ websiteToken: getEnv('VITE_CHATWOOT_WEBSITE_TOKEN') || '',
396
+ baseUrl: getEnv('VITE_CHATWOOT_BASE_URL') || '',
397
+ locale: 'en',
398
+ type: 'standard',
399
+ launcherTitle: 'Chat',
400
+ hideMessageBubble: false,
401
+ position: 'right',
402
+ showPopoutButton: false,
403
+ },
404
+ analytics: {
405
+ googleAnalytics: { enabled: false },
406
+ googleTagManager: { enabled: false },
407
+ facebookPixel: { enabled: false },
408
+ linkedinInsight: { enabled: false },
409
+ },
410
+ seo: {
411
+ defaultTitle: '',
412
+ defaultDescription: '',
413
+ defaultImage: '',
414
+ siteName: '',
415
+ siteUrl: '',
416
+ },
417
+ performance: {
418
+ enableLazyLoading: true,
419
+ enableImageOptimization: true,
420
+ enableCodeSplitting: true,
421
+ enableServiceWorker: false,
422
+ enableCaching: true,
423
+ }
424
+ };
425
+ }
426
+ /**
427
+ * Validate integration configuration
428
+ * Only validates integrations that are actually enabled
429
+ */
430
+ function validateIntegrationConfig() {
431
+ const config = getIntegrationConfig();
432
+ const errors = [];
433
+ // WordPress validation - only if enabled
434
+ if (config.wordpress.enabled && !config.wordpress.apiUrl && !config.gravityForms.proxyUrl) {
435
+ errors.push('WordPress API URL is required when WordPress is enabled (unless using Gravity Forms proxy)');
436
+ }
437
+ // Supabase validation - only if enabled
438
+ if (config.supabase.enabled && (!config.supabase.url || !config.supabase.anonKey)) {
439
+ errors.push('Supabase URL and anonymous key are required when Supabase is enabled');
440
+ }
441
+ // Gravity Forms validation - only if enabled
442
+ // Note: Cloudflare Pages Functions handle routing, so proxyUrl is optional
443
+ // Only validate if explicitly trying to use a separate worker
444
+ if (config.gravityForms.enabled) {
445
+ // Gravity Forms can work via Pages Functions (/api/gravity-forms-submit)
446
+ // Only require proxy URL if using a separate worker
447
+ const hasWorkerUrl = !!getEnv('VITE_CLOUDFLARE_WORKER_URL');
448
+ if (!hasWorkerUrl && isDevEnvironment()) {
449
+ // Using Pages Functions - this is fine, just log info
450
+ console.log('ℹ️ Gravity Forms will use Cloudflare Pages Functions (/api/gravity-forms-submit)');
451
+ }
452
+ }
453
+ // Mautic validation - only if enabled
454
+ // Mautic can work via Pages Functions, so proxy URL is optional
455
+ if (config.mautic.enabled) {
456
+ const hasProxyUrl = !!config.mautic.proxyUrl;
457
+ const hasWorkerUrl = !!getEnv('VITE_CLOUDFLARE_WORKER_URL');
458
+ if (!hasProxyUrl && !hasWorkerUrl && isDevEnvironment()) {
459
+ // Using Pages Functions - this is fine
460
+ console.log('ℹ️ Mautic will use Cloudflare Pages Functions (/api/mautic-submit)');
461
+ }
462
+ }
463
+ // SuiteCRM validation - only if enabled
464
+ if (config.suiteCRM.enabled && (!config.suiteCRM.url || !config.suiteCRM.oauth2?.clientId || !config.suiteCRM.oauth2?.clientSecret)) {
465
+ errors.push('SuiteCRM URL, client ID, and client secret are required when SuiteCRM is enabled');
466
+ }
467
+ // Chatwoot validation - only if enabled
468
+ if (config.chatwoot.enabled && !config.chatwoot.websiteToken) {
469
+ errors.push('Chatwoot website token is required when Chatwoot is enabled');
470
+ }
471
+ return errors;
472
+ }
473
+ /**
474
+ * Get specific integration configuration
475
+ */
476
+ function getWordPressConfig() {
477
+ return getIntegrationConfig().wordpress;
478
+ }
479
+ function getSupabaseConfig() {
480
+ return getIntegrationConfig().supabase;
481
+ }
482
+ function getGravityFormsConfig() {
483
+ return getIntegrationConfig().gravityForms;
484
+ }
485
+ function getMauticConfig() {
486
+ return getIntegrationConfig().mautic;
487
+ }
488
+ function getSuiteCRMConfig() {
489
+ return getIntegrationConfig().suiteCRM;
490
+ }
491
+ function getChatwootConfig() {
492
+ return getIntegrationConfig().chatwoot;
493
+ }
494
+ function getAnalyticsConfig() {
495
+ return getIntegrationConfig().analytics;
496
+ }
497
+ function getSEOConfig() {
498
+ return getIntegrationConfig().seo;
499
+ }
500
+ function getPerformanceConfig() {
501
+ return getIntegrationConfig().performance;
502
+ }
503
+
504
+ exports.currentEnv = currentEnv;
505
+ exports.envStatus = envStatus;
506
+ exports.getAnalyticsConfig = getAnalyticsConfig;
507
+ exports.getChatwootConfig = getChatwootConfig;
508
+ exports.getDevelopmentConfigs = getDevelopmentConfigs;
509
+ exports.getEnvironmentConfig = getEnvironmentConfig;
510
+ exports.getEnvironmentStatus = getEnvironmentStatus;
511
+ exports.getGravityFormsConfig = getGravityFormsConfig;
512
+ exports.getIntegrationConfig = getIntegrationConfig;
513
+ exports.getMauticConfig = getMauticConfig;
514
+ exports.getPerformanceConfig = getPerformanceConfig;
515
+ exports.getSEOConfig = getSEOConfig;
516
+ exports.getSuiteCRMConfig = getSuiteCRMConfig;
517
+ exports.getSupabaseConfig = getSupabaseConfig;
518
+ exports.getWordPressConfig = getWordPressConfig;
519
+ exports.validateIntegrationConfig = validateIntegrationConfig;
520
+ //# sourceMappingURL=config.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.cjs","sources":["../src/runtime/env.ts","../src/config/environment.ts","../src/config/integrations.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}