@adminide-stack/marketplace-module-server 12.0.4-alpha.4 → 12.0.4-alpha.402

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 (185) hide show
  1. package/Readme.md +321 -0
  2. package/lib/containers/module.d.ts +8 -0
  3. package/lib/containers/module.d.ts.map +1 -1
  4. package/lib/containers/module.js +15 -5
  5. package/lib/containers/module.js.map +1 -1
  6. package/lib/dataloaders/index.d.ts +1 -0
  7. package/lib/dataloaders/index.d.ts.map +1 -0
  8. package/lib/demo/test-graphql-examples.d.ts +73 -0
  9. package/lib/demo/test-graphql-examples.d.ts.map +1 -0
  10. package/lib/graphql/resolvers/form-templates-resolver.d.ts +220 -0
  11. package/lib/graphql/resolvers/form-templates-resolver.d.ts.map +1 -0
  12. package/lib/graphql/resolvers/form-templates-resolver.js +170 -0
  13. package/lib/graphql/resolvers/form-templates-resolver.js.map +1 -0
  14. package/lib/graphql/resolvers/gallery-resolver.d.ts +15 -0
  15. package/lib/graphql/resolvers/gallery-resolver.d.ts.map +1 -0
  16. package/lib/graphql/resolvers/gallery-resolver.js +35 -0
  17. package/lib/graphql/resolvers/gallery-resolver.js.map +1 -0
  18. package/lib/graphql/resolvers/index.d.ts +247 -1
  19. package/lib/graphql/resolvers/index.d.ts.map +1 -1
  20. package/lib/graphql/resolvers/index.js +1 -0
  21. package/lib/graphql/resolvers/index.js.map +1 -0
  22. package/lib/graphql/resolvers/installed-extension-resolver.d.ts +5 -0
  23. package/lib/graphql/resolvers/installed-extension-resolver.d.ts.map +1 -0
  24. package/lib/graphql/resolvers/installed-extension-resolver.js +289 -0
  25. package/lib/graphql/resolvers/installed-extension-resolver.js.map +1 -0
  26. package/lib/graphql/resolvers/marketplace-form-resolver.d.ts +13 -0
  27. package/lib/graphql/resolvers/marketplace-form-resolver.d.ts.map +1 -0
  28. package/lib/graphql/resolvers/marketplace-form-resolver.js +90 -0
  29. package/lib/graphql/resolvers/marketplace-form-resolver.js.map +1 -0
  30. package/lib/graphql/resolvers/publisher-analytics-resolver.d.ts +14 -0
  31. package/lib/graphql/resolvers/publisher-analytics-resolver.d.ts.map +1 -0
  32. package/lib/graphql/resolvers/publisher-analytics-resolver.js +221 -0
  33. package/lib/graphql/resolvers/publisher-analytics-resolver.js.map +1 -0
  34. package/lib/graphql/resolvers/publisher-resolver.d.ts +5 -0
  35. package/lib/graphql/resolvers/publisher-resolver.d.ts.map +1 -0
  36. package/lib/graphql/resolvers/publisher-resolver.js +176 -0
  37. package/lib/graphql/resolvers/publisher-resolver.js.map +1 -0
  38. package/lib/graphql/resolvers/registry-extension-resolver.d.ts +5 -0
  39. package/lib/graphql/resolvers/registry-extension-resolver.d.ts.map +1 -0
  40. package/lib/graphql/resolvers/registry-extension-resolver.js +46 -0
  41. package/lib/graphql/resolvers/registry-extension-resolver.js.map +1 -0
  42. package/lib/graphql/schemas/extension-pricing.graphql +546 -0
  43. package/lib/graphql/schemas/extension-pricing.graphql.js +1 -0
  44. package/lib/graphql/schemas/extension-pricing.graphql.js.map +1 -0
  45. package/lib/graphql/schemas/extension-registry.graphql +107 -0
  46. package/lib/graphql/schemas/extension-registry.graphql.js +1 -0
  47. package/lib/graphql/schemas/extension-registry.graphql.js.map +1 -0
  48. package/lib/graphql/schemas/form-templates.graphql +269 -0
  49. package/lib/graphql/schemas/form-templates.graphql.js +1 -0
  50. package/lib/graphql/schemas/form-templates.graphql.js.map +1 -0
  51. package/lib/graphql/schemas/gallery-schema.graphql +247 -0
  52. package/lib/graphql/schemas/gallery-schema.graphql.js +1 -0
  53. package/lib/graphql/schemas/gallery-schema.graphql.js.map +1 -0
  54. package/lib/graphql/schemas/index.d.ts.map +1 -1
  55. package/lib/graphql/schemas/index.js +3 -4
  56. package/lib/graphql/schemas/index.js.map +1 -1
  57. package/lib/graphql/schemas/installed-extension.graphql +309 -0
  58. package/lib/graphql/schemas/installed-extension.graphql.js +1 -0
  59. package/lib/graphql/schemas/installed-extension.graphql.js.map +1 -0
  60. package/lib/graphql/schemas/publisher-analytics.graphql +305 -0
  61. package/lib/graphql/schemas/publisher-analytics.graphql.js +1 -0
  62. package/lib/graphql/schemas/publisher-analytics.graphql.js.map +1 -0
  63. package/lib/graphql/schemas/publisher.graphql +376 -0
  64. package/lib/graphql/schemas/publisher.graphql.js +1 -0
  65. package/lib/graphql/schemas/publisher.graphql.js.map +1 -0
  66. package/lib/graphql/schemas/service.graphql +196 -0
  67. package/lib/index.d.ts +3 -1
  68. package/lib/index.d.ts.map +1 -1
  69. package/lib/index.js +1 -1
  70. package/lib/index.js.map +1 -1
  71. package/lib/module.d.ts +1 -1
  72. package/lib/module.d.ts.map +1 -1
  73. package/lib/module.js +10 -23
  74. package/lib/module.js.map +1 -1
  75. package/lib/plugins/extension-moleculer-service.d.ts +86 -0
  76. package/lib/plugins/extension-moleculer-service.d.ts.map +1 -0
  77. package/lib/plugins/index.d.ts +2 -0
  78. package/lib/plugins/index.d.ts.map +1 -0
  79. package/lib/services/extension-gallery-repository.d.ts +17 -0
  80. package/lib/services/extension-gallery-repository.d.ts.map +1 -0
  81. package/lib/services/extension-gallery-repository.js +192 -0
  82. package/lib/services/extension-gallery-repository.js.map +1 -0
  83. package/lib/services/extension-gallery-service-new.d.ts +39 -0
  84. package/lib/services/extension-gallery-service-new.d.ts.map +1 -0
  85. package/lib/services/extension-gallery-service.d.ts +30 -0
  86. package/lib/services/extension-gallery-service.d.ts.map +1 -0
  87. package/lib/services/extension-gallery-service.js +311 -0
  88. package/lib/services/extension-gallery-service.js.map +1 -0
  89. package/lib/services/index.d.ts +6 -1
  90. package/lib/services/index.d.ts.map +1 -1
  91. package/lib/services/installed-extension-service-ext.d.ts +16 -0
  92. package/lib/services/installed-extension-service-ext.d.ts.map +1 -0
  93. package/lib/services/installed-extension-service-ext.js +485 -0
  94. package/lib/services/installed-extension-service-ext.js.map +1 -0
  95. package/lib/services/installed-extension-service.d.ts +96 -0
  96. package/lib/services/installed-extension-service.d.ts.map +1 -0
  97. package/lib/services/installed-extension-service.js +521 -0
  98. package/lib/services/installed-extension-service.js.map +1 -0
  99. package/lib/services/installed-extension-service.test.d.ts +1 -0
  100. package/lib/services/installed-extension-service.test.d.ts.map +1 -0
  101. package/lib/services/publisher-analytics-service.d.ts +128 -0
  102. package/lib/services/publisher-analytics-service.d.ts.map +1 -0
  103. package/lib/services/publisher-event-service.d.ts +48 -0
  104. package/lib/services/publisher-event-service.d.ts.map +1 -0
  105. package/lib/services/publisher-event-service.js +296 -0
  106. package/lib/services/publisher-event-service.js.map +1 -0
  107. package/lib/services/publisher-service-context.d.ts +1 -0
  108. package/lib/services/publisher-service-context.d.ts.map +1 -0
  109. package/lib/services/publisher-service.d.ts +60 -0
  110. package/lib/services/publisher-service.d.ts.map +1 -0
  111. package/lib/services/publisher-service.js +134 -0
  112. package/lib/services/publisher-service.js.map +1 -0
  113. package/lib/store/index.d.ts +1 -1
  114. package/lib/store/index.d.ts.map +1 -1
  115. package/lib/store/models/index.d.ts +2 -1
  116. package/lib/store/models/index.d.ts.map +1 -1
  117. package/lib/store/models/installed-extension-model.d.ts +4 -0
  118. package/lib/store/models/installed-extension-model.d.ts.map +1 -0
  119. package/lib/store/models/installed-extension-model.js +269 -0
  120. package/lib/store/models/installed-extension-model.js.map +1 -0
  121. package/lib/store/models/publisher-event-model.d.ts +11 -0
  122. package/lib/store/models/publisher-event-model.d.ts.map +1 -0
  123. package/lib/store/models/publisher-model.d.ts +5 -0
  124. package/lib/store/models/publisher-model.d.ts.map +1 -0
  125. package/lib/store/models/publisher-model.js +103 -0
  126. package/lib/store/models/publisher-model.js.map +1 -0
  127. package/lib/store/models/publisher-stats-model.d.ts +1 -0
  128. package/lib/store/models/publisher-stats-model.d.ts.map +1 -0
  129. package/lib/store/repositories/index.d.ts +3 -0
  130. package/lib/store/repositories/index.d.ts.map +1 -0
  131. package/lib/store/repositories/installed-extension-repository.d.ts +73 -0
  132. package/lib/store/repositories/installed-extension-repository.d.ts.map +1 -0
  133. package/lib/store/repositories/installed-extension-repository.js +442 -0
  134. package/lib/store/repositories/installed-extension-repository.js.map +1 -0
  135. package/lib/store/repositories/publisher-analytics-repository.d.ts +1 -0
  136. package/lib/store/repositories/publisher-analytics-repository.d.ts.map +1 -0
  137. package/lib/store/repositories/publisher-repository.d.ts +19 -0
  138. package/lib/store/repositories/publisher-repository.d.ts.map +1 -0
  139. package/lib/store/repositories/publisher-repository.js +87 -0
  140. package/lib/store/repositories/publisher-repository.js.map +1 -0
  141. package/lib/templates/constants/DB_COLL_NAMES.ts.template +5 -0
  142. package/lib/templates/constants/SERVER_TYPES.ts.template +10 -4
  143. package/lib/templates/repositories/ExtensionGalleryRepository.ts.template +44 -0
  144. package/lib/templates/repositories/InstalledExtensionRepository.ts.template +94 -0
  145. package/lib/templates/repositories/MarketplacePublisherRepository.ts.template +24 -0
  146. package/lib/templates/repositories/RegistryExtensionRepository.ts.template +10 -15
  147. package/lib/templates/services/ExtensionGalleryDataLoader.ts.template +2 -0
  148. package/lib/templates/services/ExtensionGalleryService.ts.template +79 -0
  149. package/lib/templates/services/InstalledExtensionDataLoader.ts.template +2 -0
  150. package/lib/templates/services/InstalledExtensionService.ts.template +181 -0
  151. package/lib/templates/services/MarketplacePublisherService.ts.template +49 -0
  152. package/lib/templates/services/PublisherEventService.ts.template +56 -0
  153. package/lib/templates/services/RegistryExtensionService.ts.template +62 -18
  154. package/lib/tests/extension-integration.test.d.ts +1 -0
  155. package/lib/tests/extension-integration.test.d.ts.map +1 -0
  156. package/lib/tests/install-extension-graphql.test.d.ts +2 -0
  157. package/lib/tests/install-extension-graphql.test.d.ts.map +1 -0
  158. package/lib/tests/test-extension-services.d.ts +1 -0
  159. package/lib/tests/test-extension-services.d.ts.map +1 -0
  160. package/lib/utils/publisherValidation.d.ts +23 -0
  161. package/lib/utils/publisherValidation.d.ts.map +1 -0
  162. package/lib/utils/publisherValidation.js +144 -0
  163. package/lib/utils/publisherValidation.js.map +1 -0
  164. package/package.json +15 -7
  165. package/lib/graphql/resolvers/resolvers.d.ts +0 -2
  166. package/lib/graphql/resolvers/resolvers.d.ts.map +0 -1
  167. package/lib/graphql/resolvers/resolvers.js +0 -167
  168. package/lib/graphql/resolvers/resolvers.js.map +0 -1
  169. package/lib/graphql/schemas/extension.graphql +0 -57
  170. package/lib/graphql/schemas/extension.graphql.js +0 -1
  171. package/lib/graphql/schemas/extension.graphql.js.map +0 -1
  172. package/lib/services/extension-service.d.ts +0 -54
  173. package/lib/services/extension-service.d.ts.map +0 -1
  174. package/lib/services/extension-service.js +0 -42
  175. package/lib/services/extension-service.js.map +0 -1
  176. package/lib/store/models/registry-extension-model.d.ts +0 -10
  177. package/lib/store/models/registry-extension-model.d.ts.map +0 -1
  178. package/lib/store/models/registry-extension-model.js +0 -62
  179. package/lib/store/models/registry-extension-model.js.map +0 -1
  180. package/lib/store/repository/index.d.ts +0 -2
  181. package/lib/store/repository/index.d.ts.map +0 -1
  182. package/lib/store/repository/registry-extension-repository.d.ts +0 -31
  183. package/lib/store/repository/registry-extension-repository.d.ts.map +0 -1
  184. package/lib/store/repository/registry-extension-repository.js +0 -135
  185. package/lib/store/repository/registry-extension-repository.js.map +0 -1
@@ -0,0 +1 @@
1
+ var extensionRegistrySchema = "\n# Form submission and validation types for marketplace operations\ninput MarketplaceFormSubmissionInput {\n extensionSlug: String!\n formData: String! # JSON stringified form data\n submissionType: String! # e.g., \"extension-publish\", \"extension-validate\"\n metadata: String # Optional metadata JSON\n}\n\ntype MarketplaceFormSubmissionResult {\n success: Boolean!\n message: String\n errors: [String!]\n submissionId: String\n data: String # JSON stringified result data\n}\n\ninput MarketplaceValidateExtensionInput {\n manifest: String!\n bundle: String\n sourceMap: String\n extensionSlug: String\n version: String\n}\n\ntype MarketplaceValidationError {\n field: String!\n message: String!\n code: String\n}\n\ntype MarketplaceValidationResult {\n isValid: Boolean!\n errors: [MarketplaceValidationError!]\n warnings: [MarketplaceValidationError!]\n metadata: String # JSON stringified validation metadata\n}\n\ninput MarketplacePublishExtensionInput {\n extensionSlug: String!\n manifest: String!\n bundle: String!\n sourceMap: String\n version: String!\n releaseNotes: String\n force: Boolean\n preRelease: Boolean\n sourceCollection: ExtensionSourceCollection\n sourceDocumentId: String\n metadata: JSON\n}\n\ntype MarketplacePublishExtensionResult {\n success: Boolean!\n extension: RegistryExtension\n message: String\n errors: [String!]\n releaseId: String\n}\n\n\"\"\"\nMarketplace-specific registry statistics with publisher and marketplace data\n\"\"\"\ntype MarketplaceRegistryStats {\n totalExtensions: Int!\n totalPublishers: Int!\n extensionsByStatus: ExtensionRegistryStatusStats!\n recentPublications: [RegistryExtension!]\n topPublishers: [PublisherStats!]\n totalDownloads: Int!\n monthlyDownloads: Int!\n}\n\ntype PublisherStats {\n \"\"\"The marketplace publisher information.\"\"\"\n publisher: MarketplacePublisher!\n extensionCount: Int!\n totalDownloads: Int!\n monthlyDownloads: Int!\n averageRating: Float\n}\n\nextend type Query {\n \"\"\"\n Get marketplace-specific registry statistics\n Includes publisher data and marketplace metrics\n \"\"\"\n marketplaceRegistryStats: MarketplaceRegistryStats\n \n \"\"\"\n Get extensions by publisher for marketplace management\n \"\"\"\n extensionsByPublisher(publisherId: String!, first: Int): RegistryExtensionConnection!\n \n \"\"\"\n Get publisher performance metrics for marketplace analytics\n \"\"\"\n publisherExtensionStats(publisherId: String!): PublisherStats\n}\n\nextend type Mutation {\n marketplaceFormSubmission(input: MarketplaceFormSubmissionInput!): MarketplaceFormSubmissionResult!\n\n marketplaceValidateExtension(input: MarketplaceValidateExtensionInput!): MarketplaceValidationResult!\n\n marketplacePublishExtension(input: MarketplacePublishExtensionInput!): MarketplacePublishExtensionResult!\n}\n";export{extensionRegistrySchema as default};//# sourceMappingURL=extension-registry.graphql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-registry.graphql.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,269 @@
1
+ # Marketplace Form Templates Schema
2
+ # Provides form template publishing and management for the marketplace
3
+
4
+ type MarketplaceFormTemplate {
5
+ """Unique identifier for the form template"""
6
+ id: String!
7
+
8
+ """Template name"""
9
+ name: String!
10
+
11
+ """Template description"""
12
+ description: String!
13
+
14
+ """Template category"""
15
+ category: String!
16
+
17
+ """Template version"""
18
+ version: String!
19
+
20
+ """Template author"""
21
+ author: String!
22
+
23
+ """Template tags for search and filtering"""
24
+ tags: [String!]!
25
+
26
+ """JSON Schema for the form"""
27
+ schema: String!
28
+
29
+ """UI Schema for form customization"""
30
+ uiSchema: String
31
+
32
+ """Number of downloads"""
33
+ downloads: Int!
34
+
35
+ """Average rating"""
36
+ rating: Float
37
+
38
+ """Number of reviews"""
39
+ reviewCount: Int!
40
+
41
+ """Creation timestamp"""
42
+ createdAt: DateTime!
43
+
44
+ """Last updated timestamp"""
45
+ updatedAt: DateTime!
46
+
47
+ """Preview image or screenshot"""
48
+ preview: String
49
+
50
+ """Whether the current user has installed this template"""
51
+ installed: Boolean!
52
+
53
+ """Publisher information"""
54
+ publisher: MarketplacePublisher
55
+
56
+ """Publisher ID"""
57
+ publisherId: String!
58
+ }
59
+
60
+ type MarketplaceFormTemplatesConnection {
61
+ """List of form templates"""
62
+ nodes: [MarketplaceFormTemplate!]!
63
+
64
+ """Total count of templates"""
65
+ totalCount: Int!
66
+
67
+ """Pagination info"""
68
+ pageInfo: PageInfo!
69
+ }
70
+
71
+ input MarketplaceFormTemplatesInput {
72
+ """Search query"""
73
+ search: String
74
+
75
+ """Filter by category"""
76
+ category: String
77
+
78
+ """Filter by tags"""
79
+ tags: [String!]
80
+
81
+ """Filter by publisher"""
82
+ publisherId: String
83
+
84
+ """Filter by installed status"""
85
+ installed: Boolean
86
+
87
+ """Number of results to return"""
88
+ limit: Int
89
+
90
+ """Offset for pagination"""
91
+ offset: Int
92
+
93
+ """Sort order"""
94
+ sortBy: MarketplaceFormTemplateSortOrder
95
+ }
96
+
97
+ input MarketplacePublishFormTemplateInput {
98
+ """Template name"""
99
+ name: String!
100
+
101
+ """Template description"""
102
+ description: String!
103
+
104
+ """Template category"""
105
+ category: String!
106
+
107
+ """Template version"""
108
+ version: String!
109
+
110
+ """Template author (optional)"""
111
+ author: String
112
+
113
+ """Template tags"""
114
+ tags: [String!]!
115
+
116
+ """JSON Schema as string"""
117
+ schema: String!
118
+
119
+ """UI Schema as string (optional)"""
120
+ uiSchema: String
121
+
122
+ """Preview image URL (optional)"""
123
+ preview: String
124
+ }
125
+
126
+ input MarketplaceInstallFormTemplateInput {
127
+ """Template ID to install"""
128
+ id: String!
129
+
130
+ """Specific version to install (optional)"""
131
+ version: String
132
+ }
133
+
134
+ input MarketplaceUpdateFormTemplateInput {
135
+ """Template ID to update"""
136
+ id: String!
137
+
138
+ """Updated name (optional)"""
139
+ name: String
140
+
141
+ """Updated description (optional)"""
142
+ description: String
143
+
144
+ """Updated category (optional)"""
145
+ category: String
146
+
147
+ """Updated version (optional)"""
148
+ version: String
149
+
150
+ """Updated tags (optional)"""
151
+ tags: [String!]
152
+
153
+ """Updated schema (optional)"""
154
+ schema: String
155
+
156
+ """Updated UI schema (optional)"""
157
+ uiSchema: String
158
+
159
+ """Updated preview (optional)"""
160
+ preview: String
161
+ }
162
+
163
+ type MarketplaceFormTemplateResult {
164
+ """Whether the operation was successful"""
165
+ success: Boolean!
166
+
167
+ """Result message"""
168
+ message: String!
169
+
170
+ """The form template (if applicable)"""
171
+ formTemplate: MarketplaceFormTemplate
172
+ }
173
+
174
+ enum MarketplaceFormTemplateSortOrder {
175
+ """Sort by name ascending"""
176
+ NAME_ASC
177
+
178
+ """Sort by name descending"""
179
+ NAME_DESC
180
+
181
+ """Sort by downloads ascending"""
182
+ DOWNLOADS_ASC
183
+
184
+ """Sort by downloads descending"""
185
+ DOWNLOADS_DESC
186
+
187
+ """Sort by rating ascending"""
188
+ RATING_ASC
189
+
190
+ """Sort by rating descending"""
191
+ RATING_DESC
192
+
193
+ """Sort by creation date ascending"""
194
+ CREATED_ASC
195
+
196
+ """Sort by creation date descending"""
197
+ CREATED_DESC
198
+
199
+ """Sort by update date ascending"""
200
+ UPDATED_ASC
201
+
202
+ """Sort by update date descending"""
203
+ UPDATED_DESC
204
+ }
205
+
206
+ extend type Query {
207
+ """Get paginated list of marketplace form templates"""
208
+ marketplaceFormTemplates(input: MarketplaceFormTemplatesInput): MarketplaceFormTemplatesConnection!
209
+
210
+ """Get a specific marketplace form template by ID"""
211
+ marketplaceFormTemplate(id: String!): MarketplaceFormTemplate
212
+
213
+ """Get installed marketplace form templates for current user"""
214
+ marketplaceInstalledFormTemplates: [MarketplaceFormTemplate!]!
215
+
216
+ """Get marketplace form templates published by specific publisher"""
217
+ marketplaceMyFormTemplates(publisherId: String!): [MarketplaceFormTemplate!]!
218
+
219
+ """Get popular marketplace form templates"""
220
+ marketplacePopularFormTemplates(limit: Int): [MarketplaceFormTemplate!]!
221
+
222
+ """Get recently updated marketplace form templates"""
223
+ marketplaceRecentFormTemplates(limit: Int): [MarketplaceFormTemplate!]!
224
+
225
+ """Get marketplace publisher information"""
226
+ marketplacePublisher(id: String!): MarketplacePublisher
227
+
228
+ """Get all marketplace publishers"""
229
+ marketplacePublishers(limit: Int, offset: Int): [MarketplacePublisher!]!
230
+ }
231
+
232
+ extend type Mutation {
233
+ """Publish a new marketplace form template"""
234
+ marketplacePublishFormTemplate(input: MarketplacePublishFormTemplateInput!): MarketplaceFormTemplateResult!
235
+
236
+ """Install a marketplace form template"""
237
+ marketplaceInstallFormTemplate(input: MarketplaceInstallFormTemplateInput!): MarketplaceFormTemplateResult!
238
+
239
+ """Uninstall a marketplace form template"""
240
+ marketplaceUninstallFormTemplate(id: String!): MarketplaceFormTemplateResult!
241
+
242
+ """Update an existing marketplace form template"""
243
+ marketplaceUpdateFormTemplate(input: MarketplaceUpdateFormTemplateInput!): MarketplaceFormTemplateResult!
244
+
245
+ """Delete a marketplace form template"""
246
+ marketplaceDeleteFormTemplate(id: String!): MarketplaceFormTemplateResult!
247
+
248
+ """Rate a marketplace form template"""
249
+ marketplaceRateFormTemplate(id: String!, rating: Float!): MarketplaceFormTemplateResult!
250
+ }
251
+
252
+ extend type Subscription {
253
+ """Subscribe to marketplace form template events"""
254
+ marketplaceFormTemplateEvents(publisherId: String): MarketplaceFormTemplateEvent!
255
+ }
256
+
257
+ type MarketplaceFormTemplateEvent {
258
+ """Event type"""
259
+ eventType: String!
260
+
261
+ """Form template involved"""
262
+ formTemplate: MarketplaceFormTemplate!
263
+
264
+ """Event timestamp"""
265
+ timestamp: DateTime!
266
+
267
+ """Event metadata"""
268
+ metadata: String
269
+ }
@@ -0,0 +1 @@
1
+ var formTemplatesSchema = "# Marketplace Form Templates Schema\n# Provides form template publishing and management for the marketplace\n\ntype MarketplaceFormTemplate {\n \"\"\"Unique identifier for the form template\"\"\"\n id: String!\n \n \"\"\"Template name\"\"\"\n name: String!\n \n \"\"\"Template description\"\"\"\n description: String!\n \n \"\"\"Template category\"\"\"\n category: String!\n \n \"\"\"Template version\"\"\"\n version: String!\n \n \"\"\"Template author\"\"\"\n author: String!\n \n \"\"\"Template tags for search and filtering\"\"\"\n tags: [String!]!\n \n \"\"\"JSON Schema for the form\"\"\"\n schema: String!\n \n \"\"\"UI Schema for form customization\"\"\"\n uiSchema: String\n \n \"\"\"Number of downloads\"\"\"\n downloads: Int!\n \n \"\"\"Average rating\"\"\"\n rating: Float\n \n \"\"\"Number of reviews\"\"\"\n reviewCount: Int!\n \n \"\"\"Creation timestamp\"\"\"\n createdAt: DateTime!\n \n \"\"\"Last updated timestamp\"\"\"\n updatedAt: DateTime!\n \n \"\"\"Preview image or screenshot\"\"\"\n preview: String\n \n \"\"\"Whether the current user has installed this template\"\"\"\n installed: Boolean!\n \n \"\"\"Publisher information\"\"\"\n publisher: MarketplacePublisher\n \n \"\"\"Publisher ID\"\"\"\n publisherId: String!\n}\n\ntype MarketplaceFormTemplatesConnection {\n \"\"\"List of form templates\"\"\"\n nodes: [MarketplaceFormTemplate!]!\n \n \"\"\"Total count of templates\"\"\"\n totalCount: Int!\n \n \"\"\"Pagination info\"\"\"\n pageInfo: PageInfo!\n}\n\ninput MarketplaceFormTemplatesInput {\n \"\"\"Search query\"\"\"\n search: String\n \n \"\"\"Filter by category\"\"\"\n category: String\n \n \"\"\"Filter by tags\"\"\"\n tags: [String!]\n \n \"\"\"Filter by publisher\"\"\"\n publisherId: String\n \n \"\"\"Filter by installed status\"\"\"\n installed: Boolean\n \n \"\"\"Number of results to return\"\"\"\n limit: Int\n \n \"\"\"Offset for pagination\"\"\"\n offset: Int\n \n \"\"\"Sort order\"\"\"\n sortBy: MarketplaceFormTemplateSortOrder\n}\n\ninput MarketplacePublishFormTemplateInput {\n \"\"\"Template name\"\"\"\n name: String!\n \n \"\"\"Template description\"\"\"\n description: String!\n \n \"\"\"Template category\"\"\"\n category: String!\n \n \"\"\"Template version\"\"\"\n version: String!\n \n \"\"\"Template author (optional)\"\"\"\n author: String\n \n \"\"\"Template tags\"\"\"\n tags: [String!]!\n \n \"\"\"JSON Schema as string\"\"\"\n schema: String!\n \n \"\"\"UI Schema as string (optional)\"\"\"\n uiSchema: String\n \n \"\"\"Preview image URL (optional)\"\"\"\n preview: String\n}\n\ninput MarketplaceInstallFormTemplateInput {\n \"\"\"Template ID to install\"\"\"\n id: String!\n \n \"\"\"Specific version to install (optional)\"\"\"\n version: String\n}\n\ninput MarketplaceUpdateFormTemplateInput {\n \"\"\"Template ID to update\"\"\"\n id: String!\n \n \"\"\"Updated name (optional)\"\"\"\n name: String\n \n \"\"\"Updated description (optional)\"\"\"\n description: String\n \n \"\"\"Updated category (optional)\"\"\"\n category: String\n \n \"\"\"Updated version (optional)\"\"\"\n version: String\n \n \"\"\"Updated tags (optional)\"\"\"\n tags: [String!]\n \n \"\"\"Updated schema (optional)\"\"\"\n schema: String\n \n \"\"\"Updated UI schema (optional)\"\"\"\n uiSchema: String\n \n \"\"\"Updated preview (optional)\"\"\"\n preview: String\n}\n\ntype MarketplaceFormTemplateResult {\n \"\"\"Whether the operation was successful\"\"\"\n success: Boolean!\n \n \"\"\"Result message\"\"\"\n message: String!\n \n \"\"\"The form template (if applicable)\"\"\"\n formTemplate: MarketplaceFormTemplate\n}\n\nenum MarketplaceFormTemplateSortOrder {\n \"\"\"Sort by name ascending\"\"\"\n NAME_ASC\n \n \"\"\"Sort by name descending\"\"\"\n NAME_DESC\n \n \"\"\"Sort by downloads ascending\"\"\"\n DOWNLOADS_ASC\n \n \"\"\"Sort by downloads descending\"\"\"\n DOWNLOADS_DESC\n \n \"\"\"Sort by rating ascending\"\"\"\n RATING_ASC\n \n \"\"\"Sort by rating descending\"\"\"\n RATING_DESC\n \n \"\"\"Sort by creation date ascending\"\"\"\n CREATED_ASC\n \n \"\"\"Sort by creation date descending\"\"\"\n CREATED_DESC\n \n \"\"\"Sort by update date ascending\"\"\"\n UPDATED_ASC\n \n \"\"\"Sort by update date descending\"\"\"\n UPDATED_DESC\n}\n\nextend type Query {\n \"\"\"Get paginated list of marketplace form templates\"\"\"\n marketplaceFormTemplates(input: MarketplaceFormTemplatesInput): MarketplaceFormTemplatesConnection!\n \n \"\"\"Get a specific marketplace form template by ID\"\"\"\n marketplaceFormTemplate(id: String!): MarketplaceFormTemplate\n \n \"\"\"Get installed marketplace form templates for current user\"\"\"\n marketplaceInstalledFormTemplates: [MarketplaceFormTemplate!]!\n \n \"\"\"Get marketplace form templates published by specific publisher\"\"\"\n marketplaceMyFormTemplates(publisherId: String!): [MarketplaceFormTemplate!]!\n \n \"\"\"Get popular marketplace form templates\"\"\"\n marketplacePopularFormTemplates(limit: Int): [MarketplaceFormTemplate!]!\n \n \"\"\"Get recently updated marketplace form templates\"\"\"\n marketplaceRecentFormTemplates(limit: Int): [MarketplaceFormTemplate!]!\n \n \"\"\"Get marketplace publisher information\"\"\"\n marketplacePublisher(id: String!): MarketplacePublisher\n \n \"\"\"Get all marketplace publishers\"\"\"\n marketplacePublishers(limit: Int, offset: Int): [MarketplacePublisher!]!\n}\n\nextend type Mutation {\n \"\"\"Publish a new marketplace form template\"\"\"\n marketplacePublishFormTemplate(input: MarketplacePublishFormTemplateInput!): MarketplaceFormTemplateResult!\n \n \"\"\"Install a marketplace form template\"\"\"\n marketplaceInstallFormTemplate(input: MarketplaceInstallFormTemplateInput!): MarketplaceFormTemplateResult!\n \n \"\"\"Uninstall a marketplace form template\"\"\"\n marketplaceUninstallFormTemplate(id: String!): MarketplaceFormTemplateResult!\n \n \"\"\"Update an existing marketplace form template\"\"\"\n marketplaceUpdateFormTemplate(input: MarketplaceUpdateFormTemplateInput!): MarketplaceFormTemplateResult!\n \n \"\"\"Delete a marketplace form template\"\"\"\n marketplaceDeleteFormTemplate(id: String!): MarketplaceFormTemplateResult!\n \n \"\"\"Rate a marketplace form template\"\"\"\n marketplaceRateFormTemplate(id: String!, rating: Float!): MarketplaceFormTemplateResult!\n}\n\nextend type Subscription {\n \"\"\"Subscribe to marketplace form template events\"\"\"\n marketplaceFormTemplateEvents(publisherId: String): MarketplaceFormTemplateEvent!\n}\n\ntype MarketplaceFormTemplateEvent {\n \"\"\"Event type\"\"\"\n eventType: String!\n \n \"\"\"Form template involved\"\"\"\n formTemplate: MarketplaceFormTemplate!\n \n \"\"\"Event timestamp\"\"\"\n timestamp: DateTime!\n \n \"\"\"Event metadata\"\"\"\n metadata: String\n}\n";export{formTemplatesSchema as default};//# sourceMappingURL=form-templates.graphql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-templates.graphql.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,247 @@
1
+ type GalleryPager {
2
+ page: Int
3
+ total: Int
4
+ pageSize: Int
5
+ firstPage: [GalleryExtension]
6
+ }
7
+
8
+ """
9
+ Enhanced gallery statistics for marketplace analytics
10
+ """
11
+ type GalleryStats {
12
+ totalExtensions: Int!
13
+ totalDownloads: Int!
14
+ averageRating: Float
15
+ topCategories: [String!]
16
+ recentlyUpdated: [GalleryExtension!]
17
+ mostPopular: [GalleryExtension!]
18
+ }
19
+
20
+ """
21
+ Social media and external links for publishers
22
+ """
23
+ type PublisherSocialLink {
24
+ platform: String! # "twitter", "github", "linkedin", etc.
25
+ url: String!
26
+ username: String
27
+ }
28
+
29
+
30
+
31
+ type GalleryExtensionAssets {
32
+ manifest: GalleryExtensionAsset
33
+ readme: GalleryExtensionAsset
34
+ changelog: GalleryExtensionAsset
35
+ download: GalleryExtensionAsset
36
+ icon: GalleryExtensionAsset
37
+ license: GalleryExtensionAsset
38
+ repository: GalleryExtensionAsset
39
+ coreTranslations: JSON
40
+
41
+ }
42
+
43
+ type GalleryExtensionResources {
44
+ manifest: String
45
+ readme: String
46
+ changelog: String
47
+ download: String
48
+ icon: String
49
+ license: String
50
+ repository: String
51
+
52
+ }
53
+
54
+ type GalleryExtensionAsset {
55
+ uri: String
56
+ fallbackUri: String
57
+ }
58
+
59
+ type GalleryExtensionProperties {
60
+ engine: String
61
+ dependencies: [String]
62
+ extensionPack: [String]
63
+ localizedLanguages: [String]
64
+ }
65
+
66
+ """
67
+ Gallery extensions are an enhanced superset of registry extensions,
68
+ adding marketplace-specific fields for better user experience
69
+
70
+ Data Flow: RegistryExtension (Core) -> GalleryExtension (Enhanced)
71
+ - All RegistryExtension fields are inherited from the core extension module
72
+ - Additional marketplace fields are computed/cached
73
+ - Publishing operations update core RegistryExtension, which propagates to GalleryExtension
74
+ """
75
+ type GalleryExtension {
76
+ """Core registry extension data - inherited from core RegistryExtension"""
77
+ # All core RegistryExtension fields (defined in extension module)
78
+ id: String!
79
+ uuid: String!
80
+ name: String!
81
+ extensionSlug: String
82
+ version: String
83
+ status: ExtensionRegistryStatus
84
+ publisher: MarketplacePublisher
85
+ manifest: ExtensionManifest
86
+ updatedAt: DateTime
87
+ url: String
88
+ remoteURL: String
89
+ isLocal: Boolean
90
+ viewerCanAdminister: Boolean
91
+ releases: [ExtensionRelease!]
92
+ installed: Boolean
93
+
94
+ """Gallery-specific enhancements for marketplace display"""
95
+ # Visual presentation
96
+ displayName: String
97
+ description: String
98
+ icon: String
99
+ preview: Boolean
100
+
101
+ # Publisher info for display
102
+ publisherId: String
103
+
104
+ # Marketplace metadata (computed/cached from usage data)
105
+ installCount: Int
106
+ rating: Float
107
+ ratingCount: Float
108
+ date: String
109
+ downloadCount: Int
110
+ weeklyDownloads: Int
111
+
112
+ # Rich assets for marketplace presentation
113
+ assets: GalleryExtensionAssets
114
+ resources: GalleryExtensionResources
115
+ properties: GalleryExtensionProperties
116
+
117
+ # Extension identification (compatibility)
118
+ identifier: ExtensionIdentifier
119
+
120
+ # Marketplace-specific fields
121
+ categories: [String!]
122
+ tags: [String!]
123
+ featured: Boolean
124
+
125
+ """Reference back to the underlying core registry extension"""
126
+ coreExtension: RegistryExtension
127
+ }
128
+
129
+ input GalleryFilter {
130
+ value: String
131
+ filterType: String
132
+ }
133
+
134
+ input GalleryQueryInput {
135
+ text: String
136
+ ids: [String]
137
+ names: [String]
138
+ pageSize: Int
139
+ sortBy: Int
140
+ sortOrder: Int
141
+ source: String
142
+ }
143
+
144
+
145
+ extend type Query {
146
+ """
147
+ Get gallery extensions with marketplace-specific enhancements
148
+ This extends RegistryExtension data with marketplace fields
149
+ """
150
+ gallery(query: GalleryQueryInput): GalleryPager
151
+
152
+ """
153
+ Get a single gallery extension with full marketplace data
154
+ """
155
+ galleryExtension(extensionSlug: String!): GalleryExtension
156
+
157
+ """
158
+ Get gallery statistics and featured content
159
+ """
160
+ galleryStats: GalleryStats
161
+
162
+ """
163
+ Get gallery extensions by category
164
+ """
165
+ galleryByCategory(category: String!, first: Int, after: String): GalleryPager
166
+
167
+ """
168
+ Get trending/featured extensions
169
+ """
170
+ galleryFeatured(limit: Int = 10): [GalleryExtension!]
171
+
172
+ """
173
+ Search gallery with advanced filters
174
+ """
175
+ gallerySearch(
176
+ text: String
177
+ category: String
178
+ sortBy: GallerySortBy
179
+ sortOrder: SortOrder
180
+ first: Int
181
+ after: String
182
+ ): GalleryPager
183
+ }
184
+
185
+ enum GallerySortBy {
186
+ NAME
187
+ INSTALL_COUNT
188
+ RATING
189
+ UPDATED_DATE
190
+ PUBLISHED_DATE
191
+ }
192
+
193
+ enum SortOrder {
194
+ ASC
195
+ DESC
196
+ }
197
+
198
+ extend type Mutation {
199
+ """
200
+ Install extension from gallery (marketplace action)
201
+ """
202
+ installExtensionFromGallery(extensionSlug: String!): GalleryInstallResult!
203
+
204
+ """
205
+ Remove/uninstall extension (marketplace action)
206
+ """
207
+ removeExtension(id: String!): Boolean
208
+
209
+ """
210
+ Install extension from VSIX file
211
+ """
212
+ install(vsix: String!): ExtensionIdentifier
213
+
214
+ """
215
+ Rate an extension in the gallery
216
+ """
217
+ rateExtension(extensionSlug: String!, rating: Float!, review: String): GalleryRatingResult!
218
+
219
+ """
220
+ Update gallery metadata for an extension (publisher action)
221
+ This syncs with the underlying RegistryExtension
222
+ """
223
+ updateGalleryExtension(input: GalleryExtensionUpdateInput!): GalleryExtension!
224
+ }
225
+
226
+ type GalleryInstallResult {
227
+ success: Boolean!
228
+ extension: GalleryExtension
229
+ message: String
230
+ error: String
231
+ }
232
+
233
+ type GalleryRatingResult {
234
+ success: Boolean!
235
+ newRating: Float
236
+ newRatingCount: Int
237
+ message: String
238
+ }
239
+
240
+ input GalleryExtensionUpdateInput {
241
+ extensionSlug: String!
242
+ displayName: String
243
+ description: String
244
+ icon: String
245
+ tags: [String!]
246
+ category: String
247
+ }
@@ -0,0 +1 @@
1
+ var gallerySchema = "type GalleryPager {\n page: Int\n total: Int\n pageSize: Int\n firstPage: [GalleryExtension]\n}\n\n\"\"\"\nEnhanced gallery statistics for marketplace analytics\n\"\"\"\ntype GalleryStats {\n totalExtensions: Int!\n totalDownloads: Int!\n averageRating: Float\n topCategories: [String!]\n recentlyUpdated: [GalleryExtension!]\n mostPopular: [GalleryExtension!]\n}\n\n\"\"\"\nSocial media and external links for publishers\n\"\"\"\ntype PublisherSocialLink {\n platform: String! # \"twitter\", \"github\", \"linkedin\", etc.\n url: String!\n username: String\n}\n\n\n\ntype GalleryExtensionAssets {\n manifest: GalleryExtensionAsset\n readme: GalleryExtensionAsset\n changelog: GalleryExtensionAsset\n download: GalleryExtensionAsset\n icon: GalleryExtensionAsset\n license: GalleryExtensionAsset\n repository: GalleryExtensionAsset\n coreTranslations: JSON\n\n}\n\ntype GalleryExtensionResources {\n manifest: String\n readme: String\n changelog: String\n download: String\n icon: String\n license: String\n repository: String\n\n}\n\ntype GalleryExtensionAsset {\n uri: String\n fallbackUri: String\n}\n\ntype GalleryExtensionProperties {\n engine: String\n dependencies: [String]\n extensionPack: [String]\n localizedLanguages: [String]\n}\n\n\"\"\"\nGallery extensions are an enhanced superset of registry extensions,\nadding marketplace-specific fields for better user experience\n\nData Flow: RegistryExtension (Core) -> GalleryExtension (Enhanced)\n- All RegistryExtension fields are inherited from the core extension module\n- Additional marketplace fields are computed/cached\n- Publishing operations update core RegistryExtension, which propagates to GalleryExtension\n\"\"\"\ntype GalleryExtension {\n \"\"\"Core registry extension data - inherited from core RegistryExtension\"\"\"\n # All core RegistryExtension fields (defined in extension module)\n id: String!\n uuid: String!\n name: String!\n extensionSlug: String\n version: String\n status: ExtensionRegistryStatus\n publisher: MarketplacePublisher\n manifest: ExtensionManifest\n updatedAt: DateTime\n url: String\n remoteURL: String\n isLocal: Boolean\n viewerCanAdminister: Boolean\n releases: [ExtensionRelease!]\n installed: Boolean\n \n \"\"\"Gallery-specific enhancements for marketplace display\"\"\"\n # Visual presentation\n displayName: String\n description: String\n icon: String\n preview: Boolean\n \n # Publisher info for display\n publisherId: String\n \n # Marketplace metadata (computed/cached from usage data)\n installCount: Int\n rating: Float\n ratingCount: Float\n date: String\n downloadCount: Int\n weeklyDownloads: Int\n \n # Rich assets for marketplace presentation\n assets: GalleryExtensionAssets\n resources: GalleryExtensionResources\n properties: GalleryExtensionProperties\n \n # Extension identification (compatibility)\n identifier: ExtensionIdentifier\n \n # Marketplace-specific fields\n categories: [String!]\n tags: [String!]\n featured: Boolean\n \n \"\"\"Reference back to the underlying core registry extension\"\"\"\n coreExtension: RegistryExtension\n}\n\ninput GalleryFilter {\n value: String\n filterType: String\n}\n\ninput GalleryQueryInput {\n text: String\n ids: [String]\n names: [String]\n pageSize: Int\n sortBy: Int\n sortOrder: Int\n source: String\n}\n\n\nextend type Query {\n \"\"\"\n Get gallery extensions with marketplace-specific enhancements\n This extends RegistryExtension data with marketplace fields\n \"\"\"\n gallery(query: GalleryQueryInput): GalleryPager\n \n \"\"\"\n Get a single gallery extension with full marketplace data\n \"\"\"\n galleryExtension(extensionSlug: String!): GalleryExtension\n \n \"\"\"\n Get gallery statistics and featured content\n \"\"\"\n galleryStats: GalleryStats\n \n \"\"\"\n Get gallery extensions by category\n \"\"\"\n galleryByCategory(category: String!, first: Int, after: String): GalleryPager\n \n \"\"\"\n Get trending/featured extensions\n \"\"\"\n galleryFeatured(limit: Int = 10): [GalleryExtension!]\n \n \"\"\"\n Search gallery with advanced filters\n \"\"\"\n gallerySearch(\n text: String\n category: String\n sortBy: GallerySortBy\n sortOrder: SortOrder\n first: Int\n after: String\n ): GalleryPager\n}\n\nenum GallerySortBy {\n NAME\n INSTALL_COUNT\n RATING\n UPDATED_DATE\n PUBLISHED_DATE\n}\n\nenum SortOrder {\n ASC\n DESC\n}\n\nextend type Mutation {\n \"\"\"\n Install extension from gallery (marketplace action)\n \"\"\"\n installExtensionFromGallery(extensionSlug: String!): GalleryInstallResult!\n \n \"\"\"\n Remove/uninstall extension (marketplace action) \n \"\"\"\n removeExtension(id: String!): Boolean\n \n \"\"\"\n Install extension from VSIX file\n \"\"\"\n install(vsix: String!): ExtensionIdentifier\n \n \"\"\"\n Rate an extension in the gallery\n \"\"\"\n rateExtension(extensionSlug: String!, rating: Float!, review: String): GalleryRatingResult!\n \n \"\"\"\n Update gallery metadata for an extension (publisher action)\n This syncs with the underlying RegistryExtension\n \"\"\"\n updateGalleryExtension(input: GalleryExtensionUpdateInput!): GalleryExtension!\n}\n\ntype GalleryInstallResult {\n success: Boolean!\n extension: GalleryExtension\n message: String\n error: String\n}\n\ntype GalleryRatingResult {\n success: Boolean!\n newRating: Float\n newRatingCount: Int\n message: String\n}\n\ninput GalleryExtensionUpdateInput {\n extensionSlug: String!\n displayName: String\n description: String\n icon: String\n tags: [String!]\n category: String\n}\n";export{gallerySchema as default};//# sourceMappingURL=gallery-schema.graphql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gallery-schema.graphql.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/schemas/index.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,MAAM,QAGA,CAAC;AACb,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/schemas/index.ts"],"names":[],"mappings":"AASA,QAAA,MAAM,MAAM,QASA,CAAC;AACb,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -1,4 +1,3 @@
1
- import extensionSchema from'./extension.graphql.js';// import marketplaceSchema from './marketplace.graphql';
2
- const schema = [
3
- // marketplaceSchema,
4
- extensionSchema].join('\n');export{schema};//# sourceMappingURL=index.js.map
1
+ import extensionRegistrySchema from'./extension-registry.graphql.js';import installedExtensionSchema from'./installed-extension.graphql.js';import publisherSchema from'./publisher.graphql.js';import publisherAnalyticsSchema from'./publisher-analytics.graphql.js';import formTemplatesSchema from'./form-templates.graphql.js';import gallerySchema from'./gallery-schema.graphql.js';import extensionPricingSchema from'./extension-pricing.graphql.js';const schema = [extensionRegistrySchema, installedExtensionSchema, publisherSchema, publisherAnalyticsSchema,
2
+ // serviceSchema,
3
+ formTemplatesSchema, gallerySchema, extensionPricingSchema].join('\n');export{schema};//# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/graphql/schemas/index.ts"],"sourcesContent":[null],"names":[],"mappings":"oDAOA;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}