← All changes
|
backend/src/Services/Integrations/IntegrationRegistry.php
+5
-1
0.7
→
1.5
View file →
| @@ -35,9 +35,10 @@ | ||
| 35 | 35 | if (empty($config['label'])) { |
| 36 | 36 | throw new InvalidArgumentException("Integration '$slug' must have a label"); |
| 37 | 37 | } |
| 38 | 38 | |
| 39 | - if (empty($config['component'])) { | |
| 39 | + // Documentation-only integrations have nothing to configure, so they have no settings component | |
| 40 | + if (empty($config['component']) && empty($config['docsOnly'])) { | |
| 40 | 41 | throw new InvalidArgumentException("Integration '$slug' must have a component name"); |
| 41 | 42 | } |
| 42 | 43 | |
| 43 | 44 | // Merge with defaults |
| @@ -45,11 +46,14 @@ | ||
| 45 | 46 | 'slug' => $slug, |
| 46 | 47 | 'icon' => 'integration', |
| 47 | 48 | 'description' => '', |
| 48 | 49 | 'requiresAuth' => false, |
| 50 | + 'hasFormSettings' => true, | |
| 49 | 51 | 'settingsSchema' => [], |
| 50 | 52 | 'plan' => 'lite', // 'lite', 'essentials', 'growth', 'agency' |
| 51 | 53 | 'learnMoreUrl' => '', // Optional documentation/learn more URL |
| 54 | + 'docsOnly' => false, // Card shows only a "Learn more" link — no toggle, no settings | |
| 55 | + 'comingSoon' => false, // Card shows a "Coming soon" badge — no toggle, no button, no settings | |
| 52 | 56 | ], $config); |
| 53 | 57 | } |
| 54 | 58 | |
| 55 | 59 | /** |