1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const tslib_1 = require("tslib");
|
4 | const ioc_1 = require("@tsdi/ioc");
|
5 | const mvc_1 = require("@mvx/mvc");
|
6 | const passports_1 = require("./passports");
|
7 | let IdentityStartupService = class IdentityStartupService extends mvc_1.BeforeMidddlewareStartupService {
|
8 | async startup(ctx, middlewares) {
|
9 | let passport = ctx.injector.get(passports_1.AuthenticatorToken);
|
10 | let services = ctx.injector.getServices(passports_1.PassportBuildService);
|
11 |
|
12 | let cfs = services.find(s => s instanceof passports_1.ConfigurePassportBuildService);
|
13 | if (cfs && services.indexOf(cfs) > 0) {
|
14 | services.splice(services.indexOf(cfs), 1);
|
15 | services.unshift(cfs);
|
16 | }
|
17 | await Promise.all(services.map(s => s.build(passport, ctx.getConfiguration())));
|
18 | }
|
19 | static d0Ann() {
|
20 | return { "name": "IdentityStartupService", "params": { "startup": ["ctx", "middlewares"] } };
|
21 | }
|
22 | };
|
23 | IdentityStartupService = tslib_1.__decorate([
|
24 | ioc_1.Singleton
|
25 | ], IdentityStartupService);
|
26 | exports.IdentityStartupService = IdentityStartupService;
|
27 |
|
28 |
|