@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.
- package/Readme.md +321 -0
- package/lib/containers/module.d.ts +8 -0
- package/lib/containers/module.d.ts.map +1 -1
- package/lib/containers/module.js +15 -5
- package/lib/containers/module.js.map +1 -1
- package/lib/dataloaders/index.d.ts +1 -0
- package/lib/dataloaders/index.d.ts.map +1 -0
- package/lib/demo/test-graphql-examples.d.ts +73 -0
- package/lib/demo/test-graphql-examples.d.ts.map +1 -0
- package/lib/graphql/resolvers/form-templates-resolver.d.ts +220 -0
- package/lib/graphql/resolvers/form-templates-resolver.d.ts.map +1 -0
- package/lib/graphql/resolvers/form-templates-resolver.js +170 -0
- package/lib/graphql/resolvers/form-templates-resolver.js.map +1 -0
- package/lib/graphql/resolvers/gallery-resolver.d.ts +15 -0
- package/lib/graphql/resolvers/gallery-resolver.d.ts.map +1 -0
- package/lib/graphql/resolvers/gallery-resolver.js +35 -0
- package/lib/graphql/resolvers/gallery-resolver.js.map +1 -0
- package/lib/graphql/resolvers/index.d.ts +247 -1
- package/lib/graphql/resolvers/index.d.ts.map +1 -1
- package/lib/graphql/resolvers/index.js +1 -0
- package/lib/graphql/resolvers/index.js.map +1 -0
- package/lib/graphql/resolvers/installed-extension-resolver.d.ts +5 -0
- package/lib/graphql/resolvers/installed-extension-resolver.d.ts.map +1 -0
- package/lib/graphql/resolvers/installed-extension-resolver.js +289 -0
- package/lib/graphql/resolvers/installed-extension-resolver.js.map +1 -0
- package/lib/graphql/resolvers/marketplace-form-resolver.d.ts +13 -0
- package/lib/graphql/resolvers/marketplace-form-resolver.d.ts.map +1 -0
- package/lib/graphql/resolvers/marketplace-form-resolver.js +90 -0
- package/lib/graphql/resolvers/marketplace-form-resolver.js.map +1 -0
- package/lib/graphql/resolvers/publisher-analytics-resolver.d.ts +14 -0
- package/lib/graphql/resolvers/publisher-analytics-resolver.d.ts.map +1 -0
- package/lib/graphql/resolvers/publisher-analytics-resolver.js +221 -0
- package/lib/graphql/resolvers/publisher-analytics-resolver.js.map +1 -0
- package/lib/graphql/resolvers/publisher-resolver.d.ts +5 -0
- package/lib/graphql/resolvers/publisher-resolver.d.ts.map +1 -0
- package/lib/graphql/resolvers/publisher-resolver.js +176 -0
- package/lib/graphql/resolvers/publisher-resolver.js.map +1 -0
- package/lib/graphql/resolvers/registry-extension-resolver.d.ts +5 -0
- package/lib/graphql/resolvers/registry-extension-resolver.d.ts.map +1 -0
- package/lib/graphql/resolvers/registry-extension-resolver.js +46 -0
- package/lib/graphql/resolvers/registry-extension-resolver.js.map +1 -0
- package/lib/graphql/schemas/extension-pricing.graphql +546 -0
- package/lib/graphql/schemas/extension-pricing.graphql.js +1 -0
- package/lib/graphql/schemas/extension-pricing.graphql.js.map +1 -0
- package/lib/graphql/schemas/extension-registry.graphql +107 -0
- package/lib/graphql/schemas/extension-registry.graphql.js +1 -0
- package/lib/graphql/schemas/extension-registry.graphql.js.map +1 -0
- package/lib/graphql/schemas/form-templates.graphql +269 -0
- package/lib/graphql/schemas/form-templates.graphql.js +1 -0
- package/lib/graphql/schemas/form-templates.graphql.js.map +1 -0
- package/lib/graphql/schemas/gallery-schema.graphql +247 -0
- package/lib/graphql/schemas/gallery-schema.graphql.js +1 -0
- package/lib/graphql/schemas/gallery-schema.graphql.js.map +1 -0
- package/lib/graphql/schemas/index.d.ts.map +1 -1
- package/lib/graphql/schemas/index.js +3 -4
- package/lib/graphql/schemas/index.js.map +1 -1
- package/lib/graphql/schemas/installed-extension.graphql +309 -0
- package/lib/graphql/schemas/installed-extension.graphql.js +1 -0
- package/lib/graphql/schemas/installed-extension.graphql.js.map +1 -0
- package/lib/graphql/schemas/publisher-analytics.graphql +305 -0
- package/lib/graphql/schemas/publisher-analytics.graphql.js +1 -0
- package/lib/graphql/schemas/publisher-analytics.graphql.js.map +1 -0
- package/lib/graphql/schemas/publisher.graphql +376 -0
- package/lib/graphql/schemas/publisher.graphql.js +1 -0
- package/lib/graphql/schemas/publisher.graphql.js.map +1 -0
- package/lib/graphql/schemas/service.graphql +196 -0
- package/lib/index.d.ts +3 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/module.d.ts +1 -1
- package/lib/module.d.ts.map +1 -1
- package/lib/module.js +10 -23
- package/lib/module.js.map +1 -1
- package/lib/plugins/extension-moleculer-service.d.ts +86 -0
- package/lib/plugins/extension-moleculer-service.d.ts.map +1 -0
- package/lib/plugins/index.d.ts +2 -0
- package/lib/plugins/index.d.ts.map +1 -0
- package/lib/services/extension-gallery-repository.d.ts +17 -0
- package/lib/services/extension-gallery-repository.d.ts.map +1 -0
- package/lib/services/extension-gallery-repository.js +192 -0
- package/lib/services/extension-gallery-repository.js.map +1 -0
- package/lib/services/extension-gallery-service-new.d.ts +39 -0
- package/lib/services/extension-gallery-service-new.d.ts.map +1 -0
- package/lib/services/extension-gallery-service.d.ts +30 -0
- package/lib/services/extension-gallery-service.d.ts.map +1 -0
- package/lib/services/extension-gallery-service.js +311 -0
- package/lib/services/extension-gallery-service.js.map +1 -0
- package/lib/services/index.d.ts +6 -1
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/installed-extension-service-ext.d.ts +16 -0
- package/lib/services/installed-extension-service-ext.d.ts.map +1 -0
- package/lib/services/installed-extension-service-ext.js +485 -0
- package/lib/services/installed-extension-service-ext.js.map +1 -0
- package/lib/services/installed-extension-service.d.ts +96 -0
- package/lib/services/installed-extension-service.d.ts.map +1 -0
- package/lib/services/installed-extension-service.js +521 -0
- package/lib/services/installed-extension-service.js.map +1 -0
- package/lib/services/installed-extension-service.test.d.ts +1 -0
- package/lib/services/installed-extension-service.test.d.ts.map +1 -0
- package/lib/services/publisher-analytics-service.d.ts +128 -0
- package/lib/services/publisher-analytics-service.d.ts.map +1 -0
- package/lib/services/publisher-event-service.d.ts +48 -0
- package/lib/services/publisher-event-service.d.ts.map +1 -0
- package/lib/services/publisher-event-service.js +296 -0
- package/lib/services/publisher-event-service.js.map +1 -0
- package/lib/services/publisher-service-context.d.ts +1 -0
- package/lib/services/publisher-service-context.d.ts.map +1 -0
- package/lib/services/publisher-service.d.ts +60 -0
- package/lib/services/publisher-service.d.ts.map +1 -0
- package/lib/services/publisher-service.js +134 -0
- package/lib/services/publisher-service.js.map +1 -0
- package/lib/store/index.d.ts +1 -1
- package/lib/store/index.d.ts.map +1 -1
- package/lib/store/models/index.d.ts +2 -1
- package/lib/store/models/index.d.ts.map +1 -1
- package/lib/store/models/installed-extension-model.d.ts +4 -0
- package/lib/store/models/installed-extension-model.d.ts.map +1 -0
- package/lib/store/models/installed-extension-model.js +269 -0
- package/lib/store/models/installed-extension-model.js.map +1 -0
- package/lib/store/models/publisher-event-model.d.ts +11 -0
- package/lib/store/models/publisher-event-model.d.ts.map +1 -0
- package/lib/store/models/publisher-model.d.ts +5 -0
- package/lib/store/models/publisher-model.d.ts.map +1 -0
- package/lib/store/models/publisher-model.js +103 -0
- package/lib/store/models/publisher-model.js.map +1 -0
- package/lib/store/models/publisher-stats-model.d.ts +1 -0
- package/lib/store/models/publisher-stats-model.d.ts.map +1 -0
- package/lib/store/repositories/index.d.ts +3 -0
- package/lib/store/repositories/index.d.ts.map +1 -0
- package/lib/store/repositories/installed-extension-repository.d.ts +73 -0
- package/lib/store/repositories/installed-extension-repository.d.ts.map +1 -0
- package/lib/store/repositories/installed-extension-repository.js +442 -0
- package/lib/store/repositories/installed-extension-repository.js.map +1 -0
- package/lib/store/repositories/publisher-analytics-repository.d.ts +1 -0
- package/lib/store/repositories/publisher-analytics-repository.d.ts.map +1 -0
- package/lib/store/repositories/publisher-repository.d.ts +19 -0
- package/lib/store/repositories/publisher-repository.d.ts.map +1 -0
- package/lib/store/repositories/publisher-repository.js +87 -0
- package/lib/store/repositories/publisher-repository.js.map +1 -0
- package/lib/templates/constants/DB_COLL_NAMES.ts.template +5 -0
- package/lib/templates/constants/SERVER_TYPES.ts.template +10 -4
- package/lib/templates/repositories/ExtensionGalleryRepository.ts.template +44 -0
- package/lib/templates/repositories/InstalledExtensionRepository.ts.template +94 -0
- package/lib/templates/repositories/MarketplacePublisherRepository.ts.template +24 -0
- package/lib/templates/repositories/RegistryExtensionRepository.ts.template +10 -15
- package/lib/templates/services/ExtensionGalleryDataLoader.ts.template +2 -0
- package/lib/templates/services/ExtensionGalleryService.ts.template +79 -0
- package/lib/templates/services/InstalledExtensionDataLoader.ts.template +2 -0
- package/lib/templates/services/InstalledExtensionService.ts.template +181 -0
- package/lib/templates/services/MarketplacePublisherService.ts.template +49 -0
- package/lib/templates/services/PublisherEventService.ts.template +56 -0
- package/lib/templates/services/RegistryExtensionService.ts.template +62 -18
- package/lib/tests/extension-integration.test.d.ts +1 -0
- package/lib/tests/extension-integration.test.d.ts.map +1 -0
- package/lib/tests/install-extension-graphql.test.d.ts +2 -0
- package/lib/tests/install-extension-graphql.test.d.ts.map +1 -0
- package/lib/tests/test-extension-services.d.ts +1 -0
- package/lib/tests/test-extension-services.d.ts.map +1 -0
- package/lib/utils/publisherValidation.d.ts +23 -0
- package/lib/utils/publisherValidation.d.ts.map +1 -0
- package/lib/utils/publisherValidation.js +144 -0
- package/lib/utils/publisherValidation.js.map +1 -0
- package/package.json +15 -7
- package/lib/graphql/resolvers/resolvers.d.ts +0 -2
- package/lib/graphql/resolvers/resolvers.d.ts.map +0 -1
- package/lib/graphql/resolvers/resolvers.js +0 -167
- package/lib/graphql/resolvers/resolvers.js.map +0 -1
- package/lib/graphql/schemas/extension.graphql +0 -57
- package/lib/graphql/schemas/extension.graphql.js +0 -1
- package/lib/graphql/schemas/extension.graphql.js.map +0 -1
- package/lib/services/extension-service.d.ts +0 -54
- package/lib/services/extension-service.d.ts.map +0 -1
- package/lib/services/extension-service.js +0 -42
- package/lib/services/extension-service.js.map +0 -1
- package/lib/store/models/registry-extension-model.d.ts +0 -10
- package/lib/store/models/registry-extension-model.d.ts.map +0 -1
- package/lib/store/models/registry-extension-model.js +0 -62
- package/lib/store/models/registry-extension-model.js.map +0 -1
- package/lib/store/repository/index.d.ts +0 -2
- package/lib/store/repository/index.d.ts.map +0 -1
- package/lib/store/repository/registry-extension-repository.d.ts +0 -31
- package/lib/store/repository/registry-extension-repository.d.ts.map +0 -1
- package/lib/store/repository/registry-extension-repository.js +0 -135
- package/lib/store/repository/registry-extension-repository.js.map +0 -1
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import {PublisherOrderBy}from'common/server';const publisherResolver = (pubsub, logger) => ({
|
|
2
|
+
Query: {
|
|
3
|
+
async publisherStats(root, args, {
|
|
4
|
+
marketplacePublisherService
|
|
5
|
+
}) {
|
|
6
|
+
if (logger) {
|
|
7
|
+
logger.debug('publisherStats query with args [%j]', args);
|
|
8
|
+
}
|
|
9
|
+
const stats = await marketplacePublisherService.getPublisherStats(args.publisherId);
|
|
10
|
+
// Cast service result to GraphQL interface - field resolvers will handle computed fields
|
|
11
|
+
return stats;
|
|
12
|
+
},
|
|
13
|
+
async publishers(root, args, {
|
|
14
|
+
marketplacePublisherService
|
|
15
|
+
}) {
|
|
16
|
+
if (logger) {
|
|
17
|
+
logger.debug('publishers query with args [%j]', args);
|
|
18
|
+
}
|
|
19
|
+
const {
|
|
20
|
+
first = 20,
|
|
21
|
+
skip = 0,
|
|
22
|
+
search,
|
|
23
|
+
orderBy = PublisherOrderBy.CreatedDesc
|
|
24
|
+
} = args;
|
|
25
|
+
// Note: verified filtering not implemented yet in service layer
|
|
26
|
+
// Convert GraphQL orderBy enum to service format
|
|
27
|
+
const serviceOrderBy = orderBy === PublisherOrderBy.CreatedDesc ? 'createdAt' : 'createdAt';
|
|
28
|
+
const serviceOrderDirection = orderBy === PublisherOrderBy.CreatedDesc ? 'DESC' : 'ASC';
|
|
29
|
+
try {
|
|
30
|
+
const result = await marketplacePublisherService.findPublishers(search, serviceOrderBy, serviceOrderDirection, first, skip);
|
|
31
|
+
return {
|
|
32
|
+
nodes: result.publishers,
|
|
33
|
+
totalCount: result.totalCount,
|
|
34
|
+
hasNextPage: skip + first < result.totalCount,
|
|
35
|
+
hasPreviousPage: skip > 0
|
|
36
|
+
};
|
|
37
|
+
} catch (error) {
|
|
38
|
+
if (logger) {
|
|
39
|
+
logger.error('publishers query error: %s', error.message);
|
|
40
|
+
}
|
|
41
|
+
// Return empty result instead of null to satisfy non-nullable schema
|
|
42
|
+
return {
|
|
43
|
+
nodes: [],
|
|
44
|
+
totalCount: 0,
|
|
45
|
+
hasNextPage: false,
|
|
46
|
+
hasPreviousPage: false
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
async publisher(root, args, {
|
|
51
|
+
marketplacePublisherService
|
|
52
|
+
}) {
|
|
53
|
+
if (logger) {
|
|
54
|
+
logger.debug('publisher query with args [%j]', args);
|
|
55
|
+
}
|
|
56
|
+
try {
|
|
57
|
+
const publisher = await marketplacePublisherService.findByPublisherName(args.name);
|
|
58
|
+
return publisher;
|
|
59
|
+
} catch (error) {
|
|
60
|
+
if (logger) {
|
|
61
|
+
logger.error('publisher query error: %s', error.message);
|
|
62
|
+
}
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
Mutation: {
|
|
68
|
+
async createPublisherMutation(root, args, {
|
|
69
|
+
marketplacePublisherService
|
|
70
|
+
}) {
|
|
71
|
+
if (logger) {
|
|
72
|
+
logger.debug('createPublisherMutation with args [%j]', args);
|
|
73
|
+
}
|
|
74
|
+
try {
|
|
75
|
+
const publisher = await marketplacePublisherService.createPublisher(args.input);
|
|
76
|
+
return {
|
|
77
|
+
publisher: publisher,
|
|
78
|
+
success: true,
|
|
79
|
+
error: null
|
|
80
|
+
};
|
|
81
|
+
} catch (error) {
|
|
82
|
+
if (logger) {
|
|
83
|
+
logger.error('createPublisherMutation error: %s', error.message);
|
|
84
|
+
}
|
|
85
|
+
return {
|
|
86
|
+
publisher: null,
|
|
87
|
+
success: false,
|
|
88
|
+
error: error.message
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
async updatePublisherMutation(root, args, {
|
|
93
|
+
marketplacePublisherService
|
|
94
|
+
}) {
|
|
95
|
+
if (logger) {
|
|
96
|
+
logger.debug('updatePublisherMutation with args [%j]', args);
|
|
97
|
+
}
|
|
98
|
+
try {
|
|
99
|
+
const publisher = await marketplacePublisherService.updatePublisher(args.id, args.input);
|
|
100
|
+
return {
|
|
101
|
+
publisher: publisher ? publisher : null,
|
|
102
|
+
success: true,
|
|
103
|
+
error: null
|
|
104
|
+
};
|
|
105
|
+
} catch (error) {
|
|
106
|
+
if (logger) {
|
|
107
|
+
logger.error('updatePublisherMutation error: %s', error.message);
|
|
108
|
+
}
|
|
109
|
+
return {
|
|
110
|
+
publisher: null,
|
|
111
|
+
success: false,
|
|
112
|
+
error: error.message
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
async verifyPublisherMutation(root, args, {
|
|
117
|
+
marketplacePublisherService
|
|
118
|
+
}) {
|
|
119
|
+
if (logger) {
|
|
120
|
+
logger.debug('verifyPublisherMutation with args [%j]', args);
|
|
121
|
+
}
|
|
122
|
+
try {
|
|
123
|
+
const publisher = await marketplacePublisherService.verifyPublisher(args.id);
|
|
124
|
+
return {
|
|
125
|
+
publisher: publisher ? publisher : null,
|
|
126
|
+
success: true,
|
|
127
|
+
error: null
|
|
128
|
+
};
|
|
129
|
+
} catch (error) {
|
|
130
|
+
if (logger) {
|
|
131
|
+
logger.error('verifyPublisherMutation error: %s', error.message);
|
|
132
|
+
}
|
|
133
|
+
return {
|
|
134
|
+
publisher: null,
|
|
135
|
+
success: false,
|
|
136
|
+
error: error.message
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
ExtensionRegistry: {
|
|
142
|
+
// Publisher-related queries are now in root Query section
|
|
143
|
+
},
|
|
144
|
+
MarketplacePublisher: {
|
|
145
|
+
extensionCount: root => root.extensionCount || 0,
|
|
146
|
+
totalDownloads: root => root.totalDownloads || 0,
|
|
147
|
+
viewerCanManage: () => false,
|
|
148
|
+
// TODO: Implement proper authorization logic
|
|
149
|
+
// Analytics computed from time series collection
|
|
150
|
+
async stats(root, args, {
|
|
151
|
+
publisherEventService
|
|
152
|
+
}) {
|
|
153
|
+
if (logger) {
|
|
154
|
+
logger.debug('Computing publisher stats for publisherId [%s]', root.id);
|
|
155
|
+
}
|
|
156
|
+
return publisherEventService.getPublisherStats(root.id);
|
|
157
|
+
},
|
|
158
|
+
async analytics(root, args, {
|
|
159
|
+
publisherEventService
|
|
160
|
+
}) {
|
|
161
|
+
if (logger) {
|
|
162
|
+
logger.debug('Computing publisher analytics for publisherId [%s], period [%s - %s]', root.id, args.startDate, args.endDate);
|
|
163
|
+
}
|
|
164
|
+
return publisherEventService.getPublisherAnalytics(root.id, new Date(args.startDate), new Date(args.endDate), args.granularity);
|
|
165
|
+
},
|
|
166
|
+
async trends(root, args, {
|
|
167
|
+
publisherEventService
|
|
168
|
+
}) {
|
|
169
|
+
if (logger) {
|
|
170
|
+
logger.debug('Computing publisher trends for publisherId [%s], days [%d]', root.id, args.days);
|
|
171
|
+
}
|
|
172
|
+
const result = await publisherEventService.getPublisherTrends(root.id, args.days);
|
|
173
|
+
return result;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
});export{publisherResolver};//# sourceMappingURL=publisher-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publisher-resolver.js","sources":["../../../src/graphql/resolvers/publisher-resolver.ts"],"sourcesContent":[null],"names":[],"mappings":"6CACS,MAAA,mCAAoC,MAAA;AAC7C,EAAA,KAAO,EACH;AAOJ,IAAA,MAAA,cAAa,CAAA,IAAA,EAAA,IAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { PubSub } from 'graphql-subscriptions';
|
|
2
|
+
import { CdmLogger } from '@cdm-logger/core';
|
|
3
|
+
import { IResolvers } from 'common/server';
|
|
4
|
+
export declare const resolver: (pubsub: PubSub, logger?: CdmLogger.ILogger) => IResolvers;
|
|
5
|
+
//# sourceMappingURL=registry-extension-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry-extension-resolver.d.ts","sourceRoot":"","sources":["../../../src/graphql/resolvers/registry-extension-resolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAsB,UAAU,EAAE,MAAM,eAAe,CAAC;AAE/D,eAAO,MAAM,QAAQ,GAAI,QAAQ,MAAM,EAAE,SAAS,SAAS,CAAC,OAAO,KAAG,UAsDpE,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
const resolver = (pubsub, logger) => ({
|
|
2
|
+
RegistryExtension: {
|
|
3
|
+
// Resolve manifest from the current release
|
|
4
|
+
manifest: root => {
|
|
5
|
+
if (!root.releases || root.releases.length === 0) {
|
|
6
|
+
return null;
|
|
7
|
+
}
|
|
8
|
+
// Find the current release that matches the extension's version
|
|
9
|
+
const currentRelease = root.releases.find(release => release.version === root.version);
|
|
10
|
+
if (!currentRelease || !currentRelease.manifest) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
try {
|
|
14
|
+
// Parse the manifest from the release (stored as JSON string)
|
|
15
|
+
const parsedManifest = typeof currentRelease.manifest === 'string' ? JSON.parse(currentRelease.manifest) : currentRelease.manifest;
|
|
16
|
+
return {
|
|
17
|
+
...parsedManifest,
|
|
18
|
+
raw: currentRelease.manifest // Keep the original raw JSON for backwards compatibility
|
|
19
|
+
};
|
|
20
|
+
} catch (error) {
|
|
21
|
+
logger?.warn('Failed to parse extension manifest for', root.extensionSlug, ':', error);
|
|
22
|
+
// Fallback to raw string format for backwards compatibility
|
|
23
|
+
return {
|
|
24
|
+
raw: currentRelease.manifest
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
// Resolve releases
|
|
29
|
+
releases: root => root.releases || [],
|
|
30
|
+
// Resolve the current version directly from the extension
|
|
31
|
+
version: root => root.version || null,
|
|
32
|
+
// Resolve publisher
|
|
33
|
+
publisher: (root, args, ctx) => {
|
|
34
|
+
if (!root.publisher) {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
// For now, return a basic publisher object - this should be replaced with proper dataloader
|
|
38
|
+
return {
|
|
39
|
+
id: String(root.publisher),
|
|
40
|
+
name: 'Publisher Name',
|
|
41
|
+
// This should come from the actual publisher data
|
|
42
|
+
__typename: 'RegistryPublisher'
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
});export{resolver};//# sourceMappingURL=registry-extension-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry-extension-resolver.js","sources":["../../../src/graphql/resolvers/registry-extension-resolver.ts"],"sourcesContent":[null],"names":[],"mappings":"AAES,MAAA,QAAQ;AACjB,EAAA,iBAAkB,EAAE;AACpB;AAEA,IAAA,QAAA,EAAA,IAAO,IAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|