@@ -39,102 +39,12 @@ export const crmPluginRegistry: PluginRegistryEntry = {
3939 id : 'com.acme.crm.advanced' ,
4040 name : 'Advanced CRM' ,
4141 version : '2.1.0' ,
42-
43- // Metadata
44- metadata : {
45- displayName : 'Advanced CRM Suite' ,
46- description : 'Enterprise-grade CRM with sales automation, analytics, and AI-powered insights' ,
47- author : {
48- name : 'Acme Corporation' ,
49- email : 'plugins@acme.com' ,
50- url : 'https://acme.com' ,
51- } ,
52-
53- // Keywords for discovery
54- keywords : [
55- 'crm' ,
56- 'sales' ,
57- 'customer-management' ,
58- 'analytics' ,
59- 'ai' ,
60- 'automation' ,
61- ] ,
62-
63- // Categories
64- categories : [ 'sales' , 'analytics' , 'productivity' ] ,
65-
66- // Homepage and documentation
67- homepage : 'https://acme.com/plugins/advanced-crm' ,
68- documentation : 'https://docs.acme.com/advanced-crm' ,
69- repository : 'https://github.com/acme/advanced-crm' ,
70-
71- // Support
72- support : {
73- email : 'support@acme.com' ,
74- url : 'https://support.acme.com' ,
75- chat : 'https://chat.acme.com' ,
76- } ,
77-
78- // Screenshots
79- screenshots : [
80- {
81- url : 'https://cdn.acme.com/screenshots/dashboard.png' ,
82- caption : 'Sales Dashboard' ,
83- } ,
84- {
85- url : 'https://cdn.acme.com/screenshots/pipeline.png' ,
86- caption : 'Sales Pipeline' ,
87- } ,
88- ] ,
89-
90- // Demo
91- demo : {
92- url : 'https://demo.acme.com/crm' ,
93- credentials : {
94- username : 'demo' ,
95- password : 'demo' ,
96- } ,
97- } ,
98- } ,
99-
100- // Package information
101- package : {
102- // Package location
103- registry : 'npm' ,
104- name : '@acme/advanced-crm' ,
105- version : '2.1.0' ,
106-
107- // Checksums for integrity
108- checksums : {
109- sha256 : 'abc123...' ,
110- sha512 : 'def456...' ,
111- } ,
112-
113- // Size
114- size : 15728640 , // 15MB
115-
116- // Bundle format
117- format : 'esm' ,
118- } ,
119-
120- // Dependencies
121- dependencies : {
122- // Required plugins
123- required : {
124- 'com.objectstack.driver.postgres' : '>=1.0.0' ,
125- 'com.objectstack.auth.oauth2' : '^2.0.0' ,
126- } ,
127-
128- // Optional plugins (enhanced features)
129- optional : {
130- 'com.acme.analytics.basic' : '>=1.5.0' ,
131- 'com.acme.ai.assistant' : '>=3.0.0' ,
132- } ,
133-
134- // Peer dependencies
135- peer : {
136- '@objectstack/core' : '>=0.6.0' ,
137- } ,
42+ deprecated : false ,
43+ vendor : {
44+ id : 'com.acme' ,
45+ name : 'Acme Corporation' ,
46+ verified : true ,
47+ trustLevel : 'verified' ,
13848 } ,
13949
14050 // Capabilities provided
@@ -161,81 +71,10 @@ export const crmPluginRegistry: PluginRegistryEntry = {
16171 certified : false ,
16272 } ,
16373 ] ,
164-
165- // Services provided
166- services : [
167- {
168- interface : 'CustomerService' ,
169- version : '2.0.0' ,
170- } ,
171- {
172- interface : 'OpportunityService' ,
173- version : '2.0.0' ,
174- } ,
175- ] ,
176-
177- // Features
178- // Note: This field would typically be removed or left empty as features are now in protocol.features
179- } ,
180-
181- // Compatibility
182- compatibility : {
183- // ObjectStack version
184- minObjectStackVersion : '0.6.0' ,
185- maxObjectStackVersion : '1.0.0' ,
186-
187- // Node.js version
188- nodeVersion : '>=18.0.0' ,
189-
190- // Platform support
191- platforms : [ 'linux' , 'darwin' , 'win32' ] ,
19274 } ,
19375
19476 // Licensing
19577 license : 'SEE LICENSE IN LICENSE.txt' ,
196-
197- // Publishing information
198- published : {
199- date : '2024-01-15T10:00:00Z' ,
200- by : 'acme-publisher' ,
201- } ,
202-
203- // Stats
204- stats : {
205- downloads : {
206- total : 125000 ,
207- lastMonth : 15000 ,
208- lastWeek : 3500 ,
209- } ,
210-
211- // Ratings
212- rating : {
213- average : 4.7 ,
214- count : 342 ,
215- } ,
216-
217- // GitHub stars (if applicable)
218- stars : 2100 ,
219- } ,
220-
221- // Verification
222- verification : {
223- // Verified publisher
224- verified : true ,
225-
226- // Security scan
227- securityScan : {
228- passed : true ,
229- lastScan : '2024-01-15T08:00:00Z' ,
230- vulnerabilities : 0 ,
231- } ,
232-
233- // Code quality
234- quality : {
235- score : 92 ,
236- coverage : 85 ,
237- } ,
238- } ,
23978} ;
24079
24180/**
@@ -257,6 +96,9 @@ export const crmMarketplaceListing: MarketplaceListing = {
25796 currency : 'USD' ,
25897 interval : 'month' ,
25998 } ,
99+
100+ // Verified
101+ verified : false ,
260102} ;
261103/* Removed detailed pricing tiers due to schema mismatch */
262104const crmMarketplaceListingRemoved = {
@@ -464,52 +306,6 @@ export const crmLicense: License = {
464306 // Authorized plugins
465307 plugins : [ 'com.acme.crm.advanced' ] ,
466308
467- // Validity period
468- validity : {
469- startDate : '2024-01-01T00:00:00Z' ,
470- endDate : '2025-01-01T00:00:00Z' ,
471-
472- // Auto-renewal
473- autoRenew : true ,
474- } ,
475-
476- // Usage tracking
477- usage : {
478- currentUsers : 35 ,
479- currentRecords : 45000 ,
480- currentApiCalls : 250000 ,
481-
482- // Last reset (monthly)
483- lastReset : '2024-01-01T00:00:00Z' ,
484- } ,
485-
486- // Restrictions
487- restrictions : {
488- // Deployment restrictions
489- deployment : {
490- // Cloud or on-premise
491- type : 'cloud' ,
492-
493- // Geographic restrictions
494- regions : [ 'us' , 'eu' ] ,
495- } ,
496-
497- // Installation limits
498- installations : {
499- max : 1 , // Single production instance
500- current : 1 ,
501- } ,
502- } ,
503-
504- // Support entitlement
505- support : {
506- level : 'priority' ,
507- sla : {
508- responseTime : 4 , // hours
509- resolutionTime : 24 , // hours
510- } ,
511- } ,
512-
513309 // Signature for verification
514310 signature : 'base64-encoded-signature' ,
515311} ;
@@ -546,129 +342,6 @@ export const tenantConfig: Tenant = {
546342 aiLeadScoring : true ,
547343 } ,
548344 } ,
549-
550- // Current usage
551- usage : {
552- users : 35 ,
553- records : 45000 ,
554- storage : 25 * 1024 * 1024 * 1024 , // 25GB
555- apiCalls : 250000 ,
556-
557- customObjects : 12 ,
558- plugins : 8 ,
559- } ,
560-
561- // Data isolation
562- isolation : {
563- // Database isolation
564- database : {
565- strategy : 'schema' , // or 'database', 'row_level'
566-
567- // Dedicated schema
568- schema : 'tenant_my_company' ,
569-
570- // Connection pool
571- pool : {
572- min : 2 ,
573- max : 10 ,
574- } ,
575- } ,
576-
577- // Storage isolation
578- storage : {
579- // S3 bucket path
580- path : 'tenants/tenant-12345/' ,
581-
582- // Encryption
583- encryption : {
584- enabled : true ,
585- keyId : 'tenant-12345-encryption-key' ,
586- } ,
587- } ,
588- } ,
589-
590- // Configuration
591- configuration : {
592- // Branding
593- branding : {
594- logo : 'https://mycompany.com/logo.png' ,
595- primaryColor : '#0066CC' ,
596- secondaryColor : '#FF6600' ,
597- } ,
598-
599- // Domain
600- domain : {
601- // Custom domain
602- custom : 'crm.mycompany.com' ,
603-
604- // Default domain
605- default : 'my-company.objectstack.app' ,
606-
607- // SSL certificate
608- ssl : {
609- enabled : true ,
610- certificate : 'auto' , // or custom certificate
611- } ,
612- } ,
613-
614- // Features
615- features : {
616- enabled : [
617- 'advanced-analytics' ,
618- 'ai-features' ,
619- 'custom-objects' ,
620- 'api-access' ,
621- 'sso' ,
622- ] ,
623- disabled : [
624- 'public-api' ,
625- ] ,
626- } ,
627-
628- // Security
629- security : {
630- // SSO
631- sso : {
632- enabled : true ,
633- provider : 'okta' ,
634- config : {
635- domain : 'mycompany.okta.com' ,
636- clientId : '${env:OKTA_CLIENT_ID}' ,
637- clientSecret : '${env:OKTA_CLIENT_SECRET}' ,
638- } ,
639- } ,
640-
641- // IP whitelist
642- ipWhitelist : {
643- enabled : true ,
644- ranges : [
645- '192.168.1.0/24' ,
646- '10.0.0.0/8' ,
647- ] ,
648- } ,
649-
650- // MFA requirement
651- mfa : {
652- required : true ,
653- methods : [ 'totp' , 'sms' ] ,
654- } ,
655- } ,
656- } ,
657-
658- // Metadata
659- metadata : {
660- createdAt : '2024-01-01T00:00:00Z' ,
661- createdBy : 'system' ,
662-
663- // Onboarding
664- onboarding : {
665- completed : true ,
666- completedAt : '2024-01-05T10:30:00Z' ,
667- } ,
668- } ,
669-
670- // Status
671- status : 'active' , // or 'suspended', 'terminated'
672345} ;
673346
674347/**
0 commit comments