@omnia/tooling-composers
Version:
Provide tooling to work with manifest things.
37 lines (36 loc) • 1.84 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.RequiredAzureAdAppPermissionRegistry = void 0;
const index_1 = require("./models/index");
const ManifestRegistry_1 = require("./ManifestRegistry");
class RequiredAzureAdAppPermissionRegistry {
static addApiPermission(customApiPermisisonInfo) {
if (customApiPermisisonInfo == null) {
return this;
}
const model = customApiPermisisonInfo;
model.manifestType = index_1.ServerManifestTypes.AzureADAppPermission;
const key = model.resourceAppId.toString().toLowerCase();
if (RequiredAzureAdAppPermissionRegistry.RequiredApis[key] == null) {
RequiredAzureAdAppPermissionRegistry.RequiredApis[key] = model;
}
else {
for (const item of model.resourceAccess) {
RequiredAzureAdAppPermissionRegistry.RequiredApis[key].resourceAccess.push(item);
}
}
}
}
exports.RequiredAzureAdAppPermissionRegistry = RequiredAzureAdAppPermissionRegistry;
RequiredAzureAdAppPermissionRegistry.RequiredApis = {};
RequiredAzureAdAppPermissionRegistry.getServerManifests = (currentServiceId) => {
let serverManifests = new Array();
for (let key in RequiredAzureAdAppPermissionRegistry.RequiredApis) {
serverManifests.push(RequiredAzureAdAppPermissionRegistry.RequiredApis[key]);
}
return serverManifests;
};
RequiredAzureAdAppPermissionRegistry.clearState = () => {
RequiredAzureAdAppPermissionRegistry.RequiredApis = {};
};
RequiredAzureAdAppPermissionRegistry.ServerSubscription = ManifestRegistry_1.ManifestRegistry.registerServerManifestProvider(new ManifestRegistry_1.StaticServerManifestProviderProxy(RequiredAzureAdAppPermissionRegistry.getServerManifests, RequiredAzureAdAppPermissionRegistry.clearState));