@abp/ng.core 4.4.0 → 4.4.4
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/abp-ng.core.metadata.json +1 -1
- package/bundles/abp-ng.core.umd.js +115 -118
- package/bundles/abp-ng.core.umd.js.map +1 -1
- package/bundles/abp-ng.core.umd.min.js +2 -2
- package/bundles/abp-ng.core.umd.min.js.map +1 -1
- package/esm2015/lib/components/dynamic-layout.component.js +1 -2
- package/esm2015/lib/services/config-state.service.js +16 -3
- package/esm2015/lib/services/localization.service.js +6 -13
- package/esm2015/lib/states/config.state.js +4 -12
- package/esm2015/lib/strategies/auth-flow.strategy.js +9 -14
- package/esm2015/lib/utils/auth-utils.js +2 -5
- package/esm2015/lib/utils/initial-utils.js +4 -6
- package/esm2015/lib/utils/multi-tenancy-utils.js +7 -2
- package/fesm2015/abp-ng.core.js +110 -112
- package/fesm2015/abp-ng.core.js.map +1 -1
- package/lib/services/config-state.service.d.ts +162 -1
- package/lib/services/localization.service.d.ts +1 -3
- package/lib/states/config.state.d.ts +157 -7
- package/lib/strategies/auth-flow.strategy.d.ts +312 -4
- package/lib/utils/auth-utils.d.ts +156 -1
- package/lib/utils/initial-utils.d.ts +156 -1
- package/package.json +2 -2
|
@@ -2,16 +2,13 @@ import { Router } from '@angular/router';
|
|
|
2
2
|
import { OAuthStorage } from 'angular-oauth2-oidc';
|
|
3
3
|
import { pipe } from 'rxjs';
|
|
4
4
|
import { switchMap, tap } from 'rxjs/operators';
|
|
5
|
-
import { AbpApplicationConfigurationService } from '../proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service';
|
|
6
5
|
import { ConfigStateService } from '../services/config-state.service';
|
|
7
6
|
const cookieKey = 'rememberMe';
|
|
8
7
|
const storageKey = 'passwordFlow';
|
|
9
8
|
export function pipeToLogin(params, injector) {
|
|
10
9
|
const configState = injector.get(ConfigStateService);
|
|
11
|
-
const appConfigService = injector.get(AbpApplicationConfigurationService);
|
|
12
10
|
const router = injector.get(Router);
|
|
13
|
-
return pipe(switchMap(() =>
|
|
14
|
-
configState.setState(res);
|
|
11
|
+
return pipe(switchMap(() => configState.refreshAppState()), tap(() => {
|
|
15
12
|
setRememberMe(params.rememberMe);
|
|
16
13
|
if (params.redirectUrl)
|
|
17
14
|
router.navigate([params.redirectUrl]);
|
|
@@ -42,4 +39,4 @@ export function removeRememberMe() {
|
|
|
42
39
|
localStorage.removeItem(storageKey);
|
|
43
40
|
document.cookie = cookieKey + '= ; path=/; expires = Thu, 01 Jan 1970 00:00:00 GMT';
|
|
44
41
|
}
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi91dGlscy9hdXRoLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFpQixNQUFNLHFCQUFxQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUIsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV0RSxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUM7QUFDL0IsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDO0FBRWxDLE1BQU0sVUFBVSxXQUFXLENBQ3pCLE1BQXVELEVBQ3ZELFFBQWtCO0lBRWxCLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNyRCxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRXBDLE9BQU8sSUFBSSxDQUNULFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLENBQUMsRUFDOUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtRQUNQLGFBQWEsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsSUFBSSxNQUFNLENBQUMsV0FBVztZQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDLENBQUMsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSx5QkFBeUIsQ0FBQyxRQUFrQixFQUFFLFFBQXVCO0lBQ25GLE1BQU0sRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLEdBQUcsUUFBUSxDQUFDO0lBQ25GLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFM0MsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDOUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDaEQsT0FBTyxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFFM0QsSUFBSSxhQUFhLEVBQUU7UUFDakIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzdFO0lBRUQsSUFBSSxVQUFVLEVBQUU7UUFDZCxNQUFNLHFCQUFxQixHQUFHLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDaEQsTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN2QixNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsT0FBTyxFQUFFLEdBQUcscUJBQXFCLENBQUM7UUFDeEQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0tBQy9DO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsUUFBaUI7SUFDN0MsZ0JBQWdCLEVBQUUsQ0FBQztJQUNuQixZQUFZLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN6QyxRQUFRLENBQUMsTUFBTSxHQUFHLEdBQUcsU0FBUyxnQkFDNUIsUUFBUSxDQUFDLENBQUMsQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDLENBQUMsRUFDekQsRUFBRSxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0I7SUFDOUIsWUFBWSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxRQUFRLENBQUMsTUFBTSxHQUFHLFNBQVMsR0FBRyxxREFBcUQsQ0FBQztBQUN0RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPQXV0aFN0b3JhZ2UsIFRva2VuUmVzcG9uc2UgfSBmcm9tICdhbmd1bGFyLW9hdXRoMi1vaWRjJztcbmltcG9ydCB7IHBpcGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTG9naW5QYXJhbXMgfSBmcm9tICcuLi9tb2RlbHMvYXV0aCc7XG5pbXBvcnQgeyBDb25maWdTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jb25maWctc3RhdGUuc2VydmljZSc7XG5cbmNvbnN0IGNvb2tpZUtleSA9ICdyZW1lbWJlck1lJztcbmNvbnN0IHN0b3JhZ2VLZXkgPSAncGFzc3dvcmRGbG93JztcblxuZXhwb3J0IGZ1bmN0aW9uIHBpcGVUb0xvZ2luKFxuICBwYXJhbXM6IFBpY2s8TG9naW5QYXJhbXMsICdyZWRpcmVjdFVybCcgfCAncmVtZW1iZXJNZSc+LFxuICBpbmplY3RvcjogSW5qZWN0b3IsXG4pIHtcbiAgY29uc3QgY29uZmlnU3RhdGUgPSBpbmplY3Rvci5nZXQoQ29uZmlnU3RhdGVTZXJ2aWNlKTtcbiAgY29uc3Qgcm91dGVyID0gaW5qZWN0b3IuZ2V0KFJvdXRlcik7XG5cbiAgcmV0dXJuIHBpcGUoXG4gICAgc3dpdGNoTWFwKCgpID0+IGNvbmZpZ1N0YXRlLnJlZnJlc2hBcHBTdGF0ZSgpKSxcbiAgICB0YXAoKCkgPT4ge1xuICAgICAgc2V0UmVtZW1iZXJNZShwYXJhbXMucmVtZW1iZXJNZSk7XG4gICAgICBpZiAocGFyYW1zLnJlZGlyZWN0VXJsKSByb3V0ZXIubmF2aWdhdGUoW3BhcmFtcy5yZWRpcmVjdFVybF0pO1xuICAgIH0pLFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0VG9rZW5SZXNwb25zZVRvU3RvcmFnZShpbmplY3RvcjogSW5qZWN0b3IsIHRva2VuUmVzOiBUb2tlblJlc3BvbnNlKSB7XG4gIGNvbnN0IHsgYWNjZXNzX3Rva2VuLCByZWZyZXNoX3Rva2VuLCBzY29wZTogZ3JhbnRlZFNjb3BlcywgZXhwaXJlc19pbiB9ID0gdG9rZW5SZXM7XG4gIGNvbnN0IHN0b3JhZ2UgPSBpbmplY3Rvci5nZXQoT0F1dGhTdG9yYWdlKTtcblxuICBzdG9yYWdlLnNldEl0ZW0oJ2FjY2Vzc190b2tlbicsIGFjY2Vzc190b2tlbik7XG4gIHN0b3JhZ2Uuc2V0SXRlbSgncmVmcmVzaF90b2tlbicsIHJlZnJlc2hfdG9rZW4pO1xuICBzdG9yYWdlLnNldEl0ZW0oJ2FjY2Vzc190b2tlbl9zdG9yZWRfYXQnLCAnJyArIERhdGUubm93KCkpO1xuXG4gIGlmIChncmFudGVkU2NvcGVzKSB7XG4gICAgc3RvcmFnZS5zZXRJdGVtKCdncmFudGVkX3Njb3BlcycsIEpTT04uc3RyaW5naWZ5KGdyYW50ZWRTY29wZXMuc3BsaXQoJyAnKSkpO1xuICB9XG5cbiAgaWYgKGV4cGlyZXNfaW4pIHtcbiAgICBjb25zdCBleHBpcmVzSW5NaWxsaVNlY29uZHMgPSBleHBpcmVzX2luICogMTAwMDtcbiAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xuICAgIGNvbnN0IGV4cGlyZXNBdCA9IG5vdy5nZXRUaW1lKCkgKyBleHBpcmVzSW5NaWxsaVNlY29uZHM7XG4gICAgc3RvcmFnZS5zZXRJdGVtKCdleHBpcmVzX2F0JywgJycgKyBleHBpcmVzQXQpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRSZW1lbWJlck1lKHJlbWVtYmVyOiBib29sZWFuKSB7XG4gIHJlbW92ZVJlbWVtYmVyTWUoKTtcbiAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oc3RvcmFnZUtleSwgJ3RydWUnKTtcbiAgZG9jdW1lbnQuY29va2llID0gYCR7Y29va2llS2V5fT10cnVlOyBwYXRoPS8ke1xuICAgIHJlbWVtYmVyID8gJyA7ZXhwaXJlcz1GcmksIDMxIERlYyA5OTk5IDIzOjU5OjU5IEdNVCcgOiAnJ1xuICB9YDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZVJlbWVtYmVyTWUoKSB7XG4gIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHN0b3JhZ2VLZXkpO1xuICBkb2N1bWVudC5jb29raWUgPSBjb29raWVLZXkgKyAnPSA7IHBhdGg9LzsgZXhwaXJlcyA9IFRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDAgR01UJztcbn1cbiJdfQ==
|
|
@@ -3,7 +3,6 @@ import { registerLocaleData } from '@angular/common';
|
|
|
3
3
|
import { OAuthService } from 'angular-oauth2-oidc';
|
|
4
4
|
import { tap, catchError } from 'rxjs/operators';
|
|
5
5
|
import { throwError } from 'rxjs';
|
|
6
|
-
import { AbpApplicationConfigurationService } from '../proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service';
|
|
7
6
|
import { AuthService } from '../services/auth.service';
|
|
8
7
|
import { ConfigStateService } from '../services/config-state.service';
|
|
9
8
|
import { EnvironmentService } from '../services/environment.service';
|
|
@@ -17,7 +16,6 @@ export function getInitialData(injector) {
|
|
|
17
16
|
const fn = () => __awaiter(this, void 0, void 0, function* () {
|
|
18
17
|
const environmentService = injector.get(EnvironmentService);
|
|
19
18
|
const configState = injector.get(ConfigStateService);
|
|
20
|
-
const appConfigService = injector.get(AbpApplicationConfigurationService);
|
|
21
19
|
const options = injector.get(CORE_OPTIONS);
|
|
22
20
|
environmentService.setState(options.environment);
|
|
23
21
|
yield getRemoteEnv(injector, options.environment);
|
|
@@ -25,9 +23,9 @@ export function getInitialData(injector) {
|
|
|
25
23
|
yield injector.get(AuthService).init();
|
|
26
24
|
if (options.skipGetAppConfiguration)
|
|
27
25
|
return;
|
|
28
|
-
return
|
|
29
|
-
.
|
|
30
|
-
.pipe(tap(
|
|
26
|
+
return configState
|
|
27
|
+
.refreshAppState()
|
|
28
|
+
.pipe(tap(() => checkAccessToken(injector)), tap(() => {
|
|
31
29
|
const currentTenant = configState.getOne('currentTenant');
|
|
32
30
|
injector.get(SessionStateService).setTenant(currentTenant);
|
|
33
31
|
}), catchError(error => {
|
|
@@ -63,4 +61,4 @@ export function localeInitializer(injector) {
|
|
|
63
61
|
};
|
|
64
62
|
return fn;
|
|
65
63
|
}
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi91dGlscy9pbml0aWFsLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSWxDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTNELE1BQU0sVUFBVSxjQUFjLENBQUMsUUFBa0I7SUFDL0MsTUFBTSxFQUFFLEdBQUcsR0FBUyxFQUFFO1FBQ3BCLE1BQU0sa0JBQWtCLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzVELE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsa0JB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dGVudCI6WyJpbXBvcnQgeyByZWdpc3RlckxvY2FsZURhdGEgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9BdXRoU2VydmljZSB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMnO1xuaW1wb3J0IHsgdGFwLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQUJQIH0gZnJvbSAnLi4vbW9kZWxzL2NvbW1vbic7XG5pbXBvcnQgeyBFbnZpcm9ubWVudCB9IGZyb20gJy4uL21vZGVscy9lbnZpcm9ubWVudCc7XG5pbXBvcnQgeyBDdXJyZW50VGVuYW50RHRvIH0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9tdWx0aS10ZW5hbmN5L21vZGVscyc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWdTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jb25maWctc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9lbnZpcm9ubWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IFNlc3Npb25TdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zZXNzaW9uLXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgY2xlYXJPQXV0aFN0b3JhZ2UgfSBmcm9tICcuLi9zdHJhdGVnaWVzL2F1dGgtZmxvdy5zdHJhdGVneSc7XG5pbXBvcnQgeyBDT1JFX09QVElPTlMgfSBmcm9tICcuLi90b2tlbnMvb3B0aW9ucy50b2tlbic7XG5pbXBvcnQgeyBBUFBfSU5JVF9FUlJPUl9IQU5ETEVSUyB9IGZyb20gJy4uL3Rva2Vucy9hcHAtY29uZmlnLnRva2VuJztcbmltcG9ydCB7IGdldFJlbW90ZUVudiB9IGZyb20gJy4vZW52aXJvbm1lbnQtdXRpbHMnO1xuaW1wb3J0IHsgcGFyc2VUZW5hbnRGcm9tVXJsIH0gZnJvbSAnLi9tdWx0aS10ZW5hbmN5LXV0aWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEluaXRpYWxEYXRhKGluamVjdG9yOiBJbmplY3Rvcikge1xuICBjb25zdCBmbiA9IGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBlbnZpcm9ubWVudFNlcnZpY2UgPSBpbmplY3Rvci5nZXQoRW52aXJvbm1lbnRTZXJ2aWNlKTtcbiAgICBjb25zdCBjb25maWdTdGF0ZSA9IGluamVjdG9yLmdldChDb25maWdTdGF0ZVNlcnZpY2UpO1xuICAgIGNvbnN0IG9wdGlvbnMgPSBpbmplY3Rvci5nZXQoQ09SRV9PUFRJT05TKSBhcyBBQlAuUm9vdDtcblxuICAgIGVudmlyb25tZW50U2VydmljZS5zZXRTdGF0ZShvcHRpb25zLmVudmlyb25tZW50IGFzIEVudmlyb25tZW50KTtcbiAgICBhd2FpdCBnZXRSZW1vdGVFbnYoaW5qZWN0b3IsIG9wdGlvbnMuZW52aXJvbm1lbnQpO1xuICAgIGF3YWl0IHBhcnNlVGVuYW50RnJvbVVybChpbmplY3Rvcik7XG4gICAgYXdhaXQgaW5qZWN0b3IuZ2V0KEF1dGhTZXJ2aWNlKS5pbml0KCk7XG5cbiAgICBpZiAob3B0aW9ucy5za2lwR2V0QXBwQ29uZmlndXJhdGlvbikgcmV0dXJuO1xuXG4gICAgcmV0dXJuIGNvbmZpZ1N0YXRlXG4gICAgICAucmVmcmVzaEFwcFN0YXRlKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKCkgPT4gY2hlY2tBY2Nlc3NUb2tlbihpbmplY3RvcikpLFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGN1cnJlbnRUZW5hbnQgPSBjb25maWdTdGF0ZS5nZXRPbmUoJ2N1cnJlbnRUZW5hbnQnKSBhcyBDdXJyZW50VGVuYW50RHRvO1xuICAgICAgICAgIGluamVjdG9yLmdldChTZXNzaW9uU3RhdGVTZXJ2aWNlKS5zZXRUZW5hbnQoY3VycmVudFRlbmFudCk7XG4gICAgICAgIH0pLFxuICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgICBjb25zdCBhcHBJbml0RXJyb3JIYW5kbGVycyA9IGluamVjdG9yLmdldChBUFBfSU5JVF9FUlJPUl9IQU5ETEVSUywgbnVsbCk7XG4gICAgICAgICAgaWYgKGFwcEluaXRFcnJvckhhbmRsZXJzICYmIGFwcEluaXRFcnJvckhhbmRsZXJzLmxlbmd0aCkge1xuICAgICAgICAgICAgYXBwSW5pdEVycm9ySGFuZGxlcnMuZm9yRWFjaChmdW5jID0+IGZ1bmMoZXJyb3IpKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9O1xuXG4gIHJldHVybiBmbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrQWNjZXNzVG9rZW4oaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gIGNvbnN0IGNvbmZpZ1N0YXRlID0gaW5qZWN0b3IuZ2V0KENvbmZpZ1N0YXRlU2VydmljZSk7XG4gIGNvbnN0IG9BdXRoID0gaW5qZWN0b3IuZ2V0KE9BdXRoU2VydmljZSk7XG4gIGlmIChvQXV0aC5oYXNWYWxpZEFjY2Vzc1Rva2VuKCkgJiYgIWNvbmZpZ1N0YXRlLmdldERlZXAoJ2N1cnJlbnRVc2VyLmlkJykpIHtcbiAgICBjbGVhck9BdXRoU3RvcmFnZSgpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2NhbGVJbml0aWFsaXplcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgY29uc3QgZm4gPSAoKSA9PiB7XG4gICAgY29uc3Qgc2Vzc2lvblN0YXRlID0gaW5qZWN0b3IuZ2V0KFNlc3Npb25TdGF0ZVNlcnZpY2UpO1xuICAgIGNvbnN0IHsgcmVnaXN0ZXJMb2NhbGVGbiB9OiBBQlAuUm9vdCA9IGluamVjdG9yLmdldChDT1JFX09QVElPTlMpO1xuXG4gICAgY29uc3QgbGFuZyA9IHNlc3Npb25TdGF0ZS5nZXRMYW5ndWFnZSgpIHx8ICdlbic7XG5cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgcmVnaXN0ZXJMb2NhbGVGbihsYW5nKS50aGVuKG1vZHVsZSA9PiB7XG4gICAgICAgIGlmIChtb2R1bGU/LmRlZmF1bHQpIHJlZ2lzdGVyTG9jYWxlRGF0YShtb2R1bGUuZGVmYXVsdCk7XG5cbiAgICAgICAgcmV0dXJuIHJlc29sdmUoJ3Jlc29sdmVkJyk7XG4gICAgICB9LCByZWplY3QpO1xuICAgIH0pO1xuICB9O1xuXG4gIHJldHVybiBmbjtcbn1cbiJdfQ==
|
|
@@ -37,9 +37,14 @@ export function parseTenantFromUrl(injector) {
|
|
|
37
37
|
const setEnvironmentWithDomainTenant = (tenant) => {
|
|
38
38
|
hideTenantBox();
|
|
39
39
|
setDomainTenant(tenant);
|
|
40
|
-
replaceTenantNameWithinEnvironment(injector, tenant.name);
|
|
41
40
|
};
|
|
42
41
|
if (tenancyName) {
|
|
42
|
+
/**
|
|
43
|
+
* We have to replace tenant name within the urls from environment,
|
|
44
|
+
* because the code below will make a http request to find information about the domain tenant.
|
|
45
|
+
* Before this request takes place, we need to replace placeholders aka "{0}".
|
|
46
|
+
*/
|
|
47
|
+
replaceTenantNameWithinEnvironment(injector, tenancyName);
|
|
43
48
|
return multiTenancyService
|
|
44
49
|
.setTenantByName(tenancyName)
|
|
45
50
|
.pipe(tap(setEnvironmentWithDomainTenant))
|
|
@@ -75,4 +80,4 @@ function replaceTenantNameWithinEnvironment(injector, tenancyName, placeholder =
|
|
|
75
80
|
});
|
|
76
81
|
return environmentService.setState(environment);
|
|
77
82
|
}
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktdGVuYW5jeS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi91dGlscy9tdWx0aS10ZW5hbmN5LXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEtBQUssTUFBTSxZQUFZLENBQUM7QUFFL0IsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXJDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE1BQU0sa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0FBRWpDLFNBQVMscUJBQXFCLENBQUMsVUFBa0I7O0lBQy9DLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxLQUFLLEdBQUc7UUFBRSxVQUFVLElBQUksR0FBRyxDQUFDO0lBRXhFLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sS0FBSyxHQUFHLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdEQsYUFBTyxXQUFXLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsMENBQUcsQ0FBQyxFQUFFO0FBQ3ZELENBQUM7QUFFRCxTQUFTLDRCQUE0QixDQUFDLFNBQWlCO0lBQ3JELE1BQU0sU0FBUyxHQUFHLElBQUksZUFBZSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUQsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ2xDLENBQUM7QUFF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UUFDMUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQy9DLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzVGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBjbG9uZSBmcm9tICdqdXN0LWNsb25lJztcblxuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRW52aXJvbm1lbnQgfSBmcm9tICcuLi9tb2RlbHMvZW52aXJvbm1lbnQnO1xuXG5pbXBvcnQgeyBGaW5kVGVuYW50UmVzdWx0RHRvIH0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9tdWx0aS10ZW5hbmN5L21vZGVscyc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9lbnZpcm9ubWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IE11bHRpVGVuYW5jeVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9tdWx0aS10ZW5hbmN5LnNlcnZpY2UnO1xuaW1wb3J0IHsgY3JlYXRlVG9rZW5QYXJzZXIgfSBmcm9tICcuL3N0cmluZy11dGlscyc7XG5cbmNvbnN0IHRlbmFuY3lQbGFjZWhvbGRlciA9ICd7MH0nO1xuXG5mdW5jdGlvbiBnZXRDdXJyZW50VGVuYW5jeU5hbWUoYXBwQmFzZVVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKGFwcEJhc2VVcmwuY2hhckF0KGFwcEJhc2VVcmwubGVuZ3RoIC0gMSkgIT09ICcvJykgYXBwQmFzZVVybCArPSAnLyc7XG5cbiAgY29uc3QgcGFyc2VUb2tlbnMgPSBjcmVhdGVUb2tlblBhcnNlcihhcHBCYXNlVXJsKTtcbiAgY29uc3QgdG9rZW4gPSB0ZW5hbmN5UGxhY2Vob2xkZXIucmVwbGFjZSgvW317XS9nLCAnJyk7XG4gIHJldHVybiBwYXJzZVRva2Vucyh3aW5kb3cubG9jYXRpb24uaHJlZilbdG9rZW5dPy5bMF07XG59XG5cbmZ1bmN0aW9uIGdldEN1cnJlbnRUZW5hbmN5TmFtZUZyb21VcmwodGVuYW50S2V5OiBzdHJpbmcpIHtcbiAgY29uc3QgdXJsUGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtcbiAgcmV0dXJuIHVybFBhcmFtcy5nZXQodGVuYW50S2V5KTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBhcnNlVGVuYW50RnJvbVVybChpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgY29uc3QgZW52aXJvbm1lbnRTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEVudmlyb25tZW50U2VydmljZSk7XG4gIGNvbnN0IG11bHRpVGVuYW5jeVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoTXVsdGlUZW5hbmN5U2VydmljZSk7XG5cbiAgY29uc3QgYmFzZVVybCA9IGVudmlyb25tZW50U2VydmljZS5nZXRFbnZpcm9ubWVudCgpPy5hcHBsaWNhdGlvbj8uYmFzZVVybCB8fCAnJztcbiAgY29uc3QgdGVuYW5jeU5hbWUgPSBnZXRDdXJyZW50VGVuYW5jeU5hbWUoYmFzZVVybCk7XG5cbiAgY29uc3QgaGlkZVRlbmFudEJveCA9ICgpID0+IHtcbiAgICBtdWx0aVRlbmFuY3lTZXJ2aWNlLmlzVGVuYW50Qm94VmlzaWJsZSA9IGZhbHNlO1xuICB9O1xuXG4gIGNvbnN0IHNldERvbWFpblRlbmFudCA9ICh0ZW5hbnQ6IEZpbmRUZW5hbnRSZXN1bHREdG8pID0+IHtcbiAgICBtdWx0aVRlbmFuY3lTZXJ2aWNlLmRvbWFpblRlbmFudCA9IHtcbiAgICAgIGlkOiB0ZW5hbnQudGVuYW50SWQsXG4gICAgICBuYW1lOiB0ZW5hbnQubmFtZSxcbiAgICAgIGlzQXZhaWxhYmxlOiB0cnVlLFxuICAgIH07XG4gIH07XG5cbiAgY29uc3Qgc2V0RW52aXJvbm1lbnRXaXRoRG9tYWluVGVuYW50ID0gKHRlbmFudDogRmluZFRlbmFudFJlc3VsdER0bykgPT4ge1xuICAgIGhpZGVUZW5hbnRCb3goKTtcbiAgICBzZXREb21haW5UZW5hbnQodGVuYW50KTtcbiAgfTtcblxuICBpZiAodGVuYW5jeU5hbWUpIHtcbiAgICAvKipcbiAgICAgKiBXZSBoYXZlIHRvIHJlcGxhY2UgdGVuYW50IG5hbWUgd2l0aGluIHRoZSB1cmxzIGZyb20gZW52aXJvbm1lbnQsXG4gICAgICogYmVjYXVzZSB0aGUgY29kZSBiZWxvdyB3aWxsIG1ha2UgYSBodHRwIHJlcXVlc3QgdG8gZmluZCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZG9tYWluIHRlbmFudC5cbiAgICAgKiBCZWZvcmUgdGhpcyByZXF1ZXN0IHRha2VzIHBsYWNlLCB3ZSBuZWVkIHRvIHJlcGxhY2UgcGxhY2Vob2xkZXJzIGFrYSBcInswfVwiLlxuICAgICAqL1xuICAgIHJlcGxhY2VUZW5hbnROYW1lV2l0aGluRW52aXJvbm1lbnQoaW5qZWN0b3IsIHRlbmFuY3lOYW1lKTtcbiAgICByZXR1cm4gbXVsdGlUZW5hbmN5U2VydmljZVxuICAgICAgLnNldFRlbmFudEJ5TmFtZSh0ZW5hbmN5TmFtZSlcbiAgICAgIC5waXBlKHRhcChzZXRFbnZpcm9ubWVudFdpdGhEb21haW5UZW5hbnQpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9IGVsc2Uge1xuICAgIC8qKlxuICAgICAqIElmIHRoZXJlIGlzIG5vIHRlbmFudCwgd2Ugc3RpbGwgaGF2ZSB0byBjbGVhbiB1cCB7MH0uIGZyb20gYmFzZVVybCB0byBhdm9pZCBpbmNvcnJlY3QgaHR0cCByZXF1ZXN0cy5cbiAgICAgKi9cbiAgICByZXBsYWNlVGVuYW50TmFtZVdpdGhpbkVudmlyb25tZW50KGluamVjdG9yLCAnJywgdGVuYW5jeVBsYWNlaG9sZGVyICsgJy4nKTtcblxuICAgIGNvbnN0IHRlbmFudElkRnJvbVF1ZXJ5UGFyYW1zID0gZ2V0Q3VycmVudFRlbmFuY3lOYW1lRnJvbVVybChtdWx0aVRlbmFuY3lTZXJ2aWNlLnRlbmFudEtleSk7XG4gICAgaWYgKHRlbmFudElkRnJvbVF1ZXJ5UGFyYW1zKSB7XG4gICAgICByZXR1cm4gbXVsdGlUZW5hbmN5U2VydmljZS5zZXRUZW5hbnRCeUlkKHRlbmFudElkRnJvbVF1ZXJ5UGFyYW1zKS50b1Byb21pc2UoKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG59XG5cbmZ1bmN0aW9uIHJlcGxhY2VUZW5hbnROYW1lV2l0aGluRW52aXJvbm1lbnQoXG4gIGluamVjdG9yOiBJbmplY3RvcixcbiAgdGVuYW5jeU5hbWU6IHN0cmluZyxcbiAgcGxhY2Vob2xkZXIgPSB0ZW5hbmN5UGxhY2Vob2xkZXIsXG4pIHtcbiAgY29uc3QgZW52aXJvbm1lbnRTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEVudmlyb25tZW50U2VydmljZSk7XG5cbiAgY29uc3QgZW52aXJvbm1lbnQgPSBjbG9uZShlbnZpcm9ubWVudFNlcnZpY2UuZ2V0RW52aXJvbm1lbnQoKSkgYXMgRW52aXJvbm1lbnQ7XG5cbiAgaWYgKGVudmlyb25tZW50LmFwcGxpY2F0aW9uLmJhc2VVcmwpIHtcbiAgICBlbnZpcm9ubWVudC5hcHBsaWNhdGlvbi5iYXNlVXJsID0gZW52aXJvbm1lbnQuYXBwbGljYXRpb24uYmFzZVVybC5yZXBsYWNlKFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICB0ZW5hbmN5TmFtZSxcbiAgICApO1xuICB9XG5cbiAgaWYgKGVudmlyb25tZW50Lm9BdXRoQ29uZmlnLnJlZGlyZWN0VXJpKSB7XG4gICAgZW52aXJvbm1lbnQub0F1dGhDb25maWcucmVkaXJlY3RVcmkgPSBlbnZpcm9ubWVudC5vQXV0aENvbmZpZy5yZWRpcmVjdFVyaS5yZXBsYWNlKFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICB0ZW5hbmN5TmFtZSxcbiAgICApO1xuICB9XG5cbiAgZW52aXJvbm1lbnQub0F1dGhDb25maWcuaXNzdWVyID0gZW52aXJvbm1lbnQub0F1dGhDb25maWcuaXNzdWVyLnJlcGxhY2UocGxhY2Vob2xkZXIsIHRlbmFuY3lOYW1lKTtcblxuICBPYmplY3Qua2V5cyhlbnZpcm9ubWVudC5hcGlzKS5mb3JFYWNoKGFwaSA9PiB7XG4gICAgT2JqZWN0LmtleXMoZW52aXJvbm1lbnQuYXBpc1thcGldKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICBlbnZpcm9ubWVudC5hcGlzW2FwaV1ba2V5XSA9IGVudmlyb25tZW50LmFwaXNbYXBpXVtrZXldLnJlcGxhY2UocGxhY2Vob2xkZXIsIHRlbmFuY3lOYW1lKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgcmV0dXJuIGVudmlyb25tZW50U2VydmljZS5zZXRTdGF0ZShlbnZpcm9ubWVudCk7XG59XG4iXX0=
|
package/fesm2015/abp-ng.core.js
CHANGED
|
@@ -4,14 +4,14 @@ import * as i1 from '@angular/router';
|
|
|
4
4
|
import { PRIMARY_OUTLET, Router, NavigationCancel, NavigationEnd, NavigationError, NavigationStart, ActivatedRoute, RouterModule } from '@angular/router';
|
|
5
5
|
import { registerLocaleData, CommonModule } from '@angular/common';
|
|
6
6
|
import { BehaviorSubject, Subject, throwError, from, Subscription, fromEvent, of, timer, pipe, Observable, concat, ReplaySubject } from 'rxjs';
|
|
7
|
-
import { map, distinctUntilChanged, filter, catchError,
|
|
7
|
+
import { map, distinctUntilChanged, filter, catchError, switchMap, take, mapTo, debounceTime, takeUntil, tap, finalize, retryWhen, delay, shareReplay } from 'rxjs/operators';
|
|
8
8
|
import { __rest, __awaiter, __decorate } from 'tslib';
|
|
9
|
+
import snq from 'snq';
|
|
10
|
+
import compare from 'just-compare';
|
|
9
11
|
import * as i2 from '@angular/common/http';
|
|
10
12
|
import { HttpClient, HttpHeaders, HttpClientModule, HttpClientXsrfModule, HTTP_INTERCEPTORS } from '@angular/common/http';
|
|
11
13
|
import * as i4 from '@ngxs/store';
|
|
12
14
|
import { Store, Action, Selector, State, NgxsModule, createSelector } from '@ngxs/store';
|
|
13
|
-
import compare from 'just-compare';
|
|
14
|
-
import snq from 'snq';
|
|
15
15
|
import { FormGroupDirective, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';
|
|
16
16
|
import * as i1$1 from 'angular-oauth2-oidc';
|
|
17
17
|
import { OAuthService, OAuthStorage, OAuthErrorEvent, OAuthInfoEvent, OAuthModule } from 'angular-oauth2-oidc';
|
|
@@ -140,6 +140,76 @@ function coreOptionsFactory(_a) {
|
|
|
140
140
|
return Object.assign({}, options);
|
|
141
141
|
}
|
|
142
142
|
|
|
143
|
+
// This will not be necessary when only Angukar 9.1+ is supported
|
|
144
|
+
function getLocaleDirection(locale) {
|
|
145
|
+
return /^(ar(-[A-Z]{2})?|ckb(-IR)?|fa(-AF)?|he|ks|lrc(-IQ)?|mzn|pa-Arab|ps(-PK)?|sd|ug|ur(-IN)?|uz-Arab|yi)$/.test(locale)
|
|
146
|
+
? 'rtl'
|
|
147
|
+
: 'ltr';
|
|
148
|
+
}
|
|
149
|
+
function createLocalizer(localization) {
|
|
150
|
+
return (resourceName, key, defaultValue) => {
|
|
151
|
+
if (resourceName === '_')
|
|
152
|
+
return key;
|
|
153
|
+
const resource = snq(() => localization.values[resourceName]);
|
|
154
|
+
if (!resource)
|
|
155
|
+
return defaultValue;
|
|
156
|
+
return resource[key] || defaultValue;
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
function createLocalizerWithFallback(localization) {
|
|
160
|
+
const findLocalization = createLocalizationFinder(localization);
|
|
161
|
+
return (resourceNames, keys, defaultValue) => {
|
|
162
|
+
const { localized } = findLocalization(resourceNames, keys);
|
|
163
|
+
return localized || defaultValue;
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
function createLocalizationPipeKeyGenerator(localization) {
|
|
167
|
+
const findLocalization = createLocalizationFinder(localization);
|
|
168
|
+
return (resourceNames, keys, defaultKey) => {
|
|
169
|
+
const { resourceName, key } = findLocalization(resourceNames, keys);
|
|
170
|
+
return !resourceName ? defaultKey : resourceName === '_' ? key : `${resourceName}::${key}`;
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
function createLocalizationFinder(localization) {
|
|
174
|
+
const localize = createLocalizer(localization);
|
|
175
|
+
return (resourceNames, keys) => {
|
|
176
|
+
resourceNames = resourceNames.concat(localization.defaultResourceName).filter(Boolean);
|
|
177
|
+
const resourceCount = resourceNames.length;
|
|
178
|
+
const keyCount = keys.length;
|
|
179
|
+
for (let i = 0; i < resourceCount; i++) {
|
|
180
|
+
const resourceName = resourceNames[i];
|
|
181
|
+
for (let j = 0; j < keyCount; j++) {
|
|
182
|
+
const key = keys[j];
|
|
183
|
+
const localized = localize(resourceName, key, null);
|
|
184
|
+
if (localized)
|
|
185
|
+
return { resourceName, key, localized };
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
return { resourceName: undefined, key: undefined, localized: undefined };
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
function createTokenParser(format) {
|
|
193
|
+
return (str) => {
|
|
194
|
+
const tokens = [];
|
|
195
|
+
const regex = format.replace(/\./g, '\\.').replace(/\{\s?([0-9a-zA-Z]+)\s?\}/g, (_, token) => {
|
|
196
|
+
tokens.push(token);
|
|
197
|
+
return '(.+)';
|
|
198
|
+
});
|
|
199
|
+
const matches = (str.match(regex) || []).slice(1);
|
|
200
|
+
return matches.reduce((acc, v, i) => {
|
|
201
|
+
const key = tokens[i];
|
|
202
|
+
acc[key] = [...(acc[key] || []), v].filter(Boolean);
|
|
203
|
+
return acc;
|
|
204
|
+
}, {});
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
function interpolate(text, params) {
|
|
208
|
+
return text
|
|
209
|
+
.replace(/(['"]?\{\s*(\d+)\s*\}['"]?)/g, (_, match, digit) => { var _a; return (_a = params[digit]) !== null && _a !== void 0 ? _a : match; })
|
|
210
|
+
.replace(/\s+/g, ' ');
|
|
211
|
+
}
|
|
212
|
+
|
|
143
213
|
function noop() {
|
|
144
214
|
// tslint:disable-next-line: only-arrow-functions
|
|
145
215
|
const fn = function () { };
|
|
@@ -338,89 +408,31 @@ AbpApplicationConfigurationService.ctorParameters = () => [
|
|
|
338
408
|
{ type: RestService }
|
|
339
409
|
];
|
|
340
410
|
|
|
341
|
-
// This will not be necessary when only Angukar 9.1+ is supported
|
|
342
|
-
function getLocaleDirection(locale) {
|
|
343
|
-
return /^(ar(-[A-Z]{2})?|ckb(-IR)?|fa(-AF)?|he|ks|lrc(-IQ)?|mzn|pa-Arab|ps(-PK)?|sd|ug|ur(-IN)?|uz-Arab|yi)$/.test(locale)
|
|
344
|
-
? 'rtl'
|
|
345
|
-
: 'ltr';
|
|
346
|
-
}
|
|
347
|
-
function createLocalizer(localization) {
|
|
348
|
-
return (resourceName, key, defaultValue) => {
|
|
349
|
-
if (resourceName === '_')
|
|
350
|
-
return key;
|
|
351
|
-
const resource = snq(() => localization.values[resourceName]);
|
|
352
|
-
if (!resource)
|
|
353
|
-
return defaultValue;
|
|
354
|
-
return resource[key] || defaultValue;
|
|
355
|
-
};
|
|
356
|
-
}
|
|
357
|
-
function createLocalizerWithFallback(localization) {
|
|
358
|
-
const findLocalization = createLocalizationFinder(localization);
|
|
359
|
-
return (resourceNames, keys, defaultValue) => {
|
|
360
|
-
const { localized } = findLocalization(resourceNames, keys);
|
|
361
|
-
return localized || defaultValue;
|
|
362
|
-
};
|
|
363
|
-
}
|
|
364
|
-
function createLocalizationPipeKeyGenerator(localization) {
|
|
365
|
-
const findLocalization = createLocalizationFinder(localization);
|
|
366
|
-
return (resourceNames, keys, defaultKey) => {
|
|
367
|
-
const { resourceName, key } = findLocalization(resourceNames, keys);
|
|
368
|
-
return !resourceName ? defaultKey : resourceName === '_' ? key : `${resourceName}::${key}`;
|
|
369
|
-
};
|
|
370
|
-
}
|
|
371
|
-
function createLocalizationFinder(localization) {
|
|
372
|
-
const localize = createLocalizer(localization);
|
|
373
|
-
return (resourceNames, keys) => {
|
|
374
|
-
resourceNames = resourceNames.concat(localization.defaultResourceName).filter(Boolean);
|
|
375
|
-
const resourceCount = resourceNames.length;
|
|
376
|
-
const keyCount = keys.length;
|
|
377
|
-
for (let i = 0; i < resourceCount; i++) {
|
|
378
|
-
const resourceName = resourceNames[i];
|
|
379
|
-
for (let j = 0; j < keyCount; j++) {
|
|
380
|
-
const key = keys[j];
|
|
381
|
-
const localized = localize(resourceName, key, null);
|
|
382
|
-
if (localized)
|
|
383
|
-
return { resourceName, key, localized };
|
|
384
|
-
}
|
|
385
|
-
}
|
|
386
|
-
return { resourceName: undefined, key: undefined, localized: undefined };
|
|
387
|
-
};
|
|
388
|
-
}
|
|
389
|
-
|
|
390
|
-
function createTokenParser(format) {
|
|
391
|
-
return (str) => {
|
|
392
|
-
const tokens = [];
|
|
393
|
-
const regex = format.replace(/\./g, '\\.').replace(/\{\s?([0-9a-zA-Z]+)\s?\}/g, (_, token) => {
|
|
394
|
-
tokens.push(token);
|
|
395
|
-
return '(.+)';
|
|
396
|
-
});
|
|
397
|
-
const matches = (str.match(regex) || []).slice(1);
|
|
398
|
-
return matches.reduce((acc, v, i) => {
|
|
399
|
-
const key = tokens[i];
|
|
400
|
-
acc[key] = [...(acc[key] || []), v].filter(Boolean);
|
|
401
|
-
return acc;
|
|
402
|
-
}, {});
|
|
403
|
-
};
|
|
404
|
-
}
|
|
405
|
-
function interpolate(text, params) {
|
|
406
|
-
return text
|
|
407
|
-
.replace(/(['"]?\{\s*(\d+)\s*\}['"]?)/g, (_, match, digit) => { var _a; return (_a = params[digit]) !== null && _a !== void 0 ? _a : match; })
|
|
408
|
-
.replace(/\s+/g, ' ');
|
|
409
|
-
}
|
|
410
|
-
|
|
411
411
|
class ConfigStateService {
|
|
412
412
|
constructor(abpConfigService) {
|
|
413
413
|
this.abpConfigService = abpConfigService;
|
|
414
414
|
this.store = new InternalStore({});
|
|
415
|
+
this.updateSubject = new Subject();
|
|
416
|
+
this.initUpdateStream();
|
|
415
417
|
}
|
|
416
418
|
get createOnUpdateStream() {
|
|
417
419
|
return this.store.sliceUpdate;
|
|
418
420
|
}
|
|
421
|
+
initUpdateStream() {
|
|
422
|
+
this.updateSubject
|
|
423
|
+
.pipe(switchMap(() => this.abpConfigService.get()))
|
|
424
|
+
.subscribe(res => this.setState(res));
|
|
425
|
+
}
|
|
426
|
+
/**
|
|
427
|
+
* @deprecated do not use this method directly, instead call refreshAppState
|
|
428
|
+
* This method will be private in v5.0
|
|
429
|
+
*/
|
|
419
430
|
setState(state) {
|
|
420
431
|
this.store.set(state);
|
|
421
432
|
}
|
|
422
433
|
refreshAppState() {
|
|
423
|
-
|
|
434
|
+
this.updateSubject.next();
|
|
435
|
+
return this.createOnUpdateStream(state => state).pipe(take(1));
|
|
424
436
|
}
|
|
425
437
|
getOne$(key) {
|
|
426
438
|
return this.store.sliceState(state => state[key]);
|
|
@@ -598,11 +610,10 @@ SessionStateService.ctorParameters = () => [
|
|
|
598
610
|
];
|
|
599
611
|
|
|
600
612
|
class LocalizationService {
|
|
601
|
-
constructor(sessionState, injector, otherInstance, configState
|
|
613
|
+
constructor(sessionState, injector, otherInstance, configState) {
|
|
602
614
|
this.sessionState = sessionState;
|
|
603
615
|
this.injector = injector;
|
|
604
616
|
this.configState = configState;
|
|
605
|
-
this.appConfigService = appConfigService;
|
|
606
617
|
this.latestLang = this.sessionState.getLanguage();
|
|
607
618
|
this._languageChange$ = new Subject();
|
|
608
619
|
if (otherInstance)
|
|
@@ -621,10 +632,7 @@ class LocalizationService {
|
|
|
621
632
|
listenToSetLanguage() {
|
|
622
633
|
this.sessionState
|
|
623
634
|
.onLanguageChange$()
|
|
624
|
-
.pipe(filter(lang => this.configState.getDeep('localization.currentCulture.cultureName') !== lang), switchMap(lang => this.
|
|
625
|
-
.get()
|
|
626
|
-
.pipe(tap(res => this.configState.setState(res)))
|
|
627
|
-
.pipe(mapTo(lang))), switchMap(lang => from(this.registerLocale(lang).then(() => lang))))
|
|
635
|
+
.pipe(filter(lang => this.configState.getDeep('localization.currentCulture.cultureName') !== lang), switchMap(lang => this.configState.refreshAppState().pipe(mapTo(lang))), switchMap(lang => from(this.registerLocale(lang).then(() => lang))))
|
|
628
636
|
.subscribe(lang => this._languageChange$.next(lang));
|
|
629
637
|
}
|
|
630
638
|
registerLocale(locale) {
|
|
@@ -674,7 +682,7 @@ class LocalizationService {
|
|
|
674
682
|
return createLocalizerWithFallback(localization)(resourceNames, keys, defaultValue);
|
|
675
683
|
}
|
|
676
684
|
}
|
|
677
|
-
LocalizationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizationService_Factory() { return new LocalizationService(i0.ɵɵinject(SessionStateService), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(LocalizationService, 12), i0.ɵɵinject(ConfigStateService)
|
|
685
|
+
LocalizationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizationService_Factory() { return new LocalizationService(i0.ɵɵinject(SessionStateService), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(LocalizationService, 12), i0.ɵɵinject(ConfigStateService)); }, token: LocalizationService, providedIn: "root" });
|
|
678
686
|
LocalizationService.decorators = [
|
|
679
687
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
680
688
|
];
|
|
@@ -682,8 +690,7 @@ LocalizationService.ctorParameters = () => [
|
|
|
682
690
|
{ type: SessionStateService },
|
|
683
691
|
{ type: Injector },
|
|
684
692
|
{ type: LocalizationService, decorators: [{ type: Optional }, { type: SkipSelf }] },
|
|
685
|
-
{ type: ConfigStateService }
|
|
686
|
-
{ type: AbpApplicationConfigurationService }
|
|
693
|
+
{ type: ConfigStateService }
|
|
687
694
|
];
|
|
688
695
|
function getLocalization(state, key, ...interpolateParams) {
|
|
689
696
|
if (!key)
|
|
@@ -1149,7 +1156,6 @@ class DynamicLayoutComponent {
|
|
|
1149
1156
|
this.route = injector.get(ActivatedRoute);
|
|
1150
1157
|
this.router = injector.get(Router);
|
|
1151
1158
|
this.routes = injector.get(RoutesService);
|
|
1152
|
-
this.getLayout();
|
|
1153
1159
|
this.checkLayoutOnNavigationEnd();
|
|
1154
1160
|
this.listenToLanguageChange();
|
|
1155
1161
|
}
|
|
@@ -2498,10 +2504,8 @@ const cookieKey = 'rememberMe';
|
|
|
2498
2504
|
const storageKey = 'passwordFlow';
|
|
2499
2505
|
function pipeToLogin(params, injector) {
|
|
2500
2506
|
const configState = injector.get(ConfigStateService);
|
|
2501
|
-
const appConfigService = injector.get(AbpApplicationConfigurationService);
|
|
2502
2507
|
const router = injector.get(Router);
|
|
2503
|
-
return pipe(switchMap(() =>
|
|
2504
|
-
configState.setState(res);
|
|
2508
|
+
return pipe(switchMap(() => configState.refreshAppState()), tap(() => {
|
|
2505
2509
|
setRememberMe(params.rememberMe);
|
|
2506
2510
|
if (params.redirectUrl)
|
|
2507
2511
|
router.navigate([params.redirectUrl]);
|
|
@@ -2542,7 +2546,6 @@ class AuthFlowStrategy {
|
|
|
2542
2546
|
this.environment = injector.get(EnvironmentService);
|
|
2543
2547
|
this.configState = injector.get(ConfigStateService);
|
|
2544
2548
|
this.oAuthService = injector.get(OAuthService);
|
|
2545
|
-
this.appConfigService = injector.get(AbpApplicationConfigurationService);
|
|
2546
2549
|
this.sessionState = injector.get(SessionStateService);
|
|
2547
2550
|
this.oAuthConfig = this.environment.getEnvironment().oAuthConfig;
|
|
2548
2551
|
this.tenantKey = injector.get(TENANT_KEY);
|
|
@@ -2554,6 +2557,9 @@ class AuthFlowStrategy {
|
|
|
2554
2557
|
if (shouldClear)
|
|
2555
2558
|
clearOAuthStorage(oAuthStorage);
|
|
2556
2559
|
this.oAuthService.configure(this.oAuthConfig);
|
|
2560
|
+
this.oAuthService.events
|
|
2561
|
+
.pipe(filter(event => event.type === 'token_refresh_error'))
|
|
2562
|
+
.subscribe(() => this.navigateToLogin());
|
|
2557
2563
|
return this.oAuthService
|
|
2558
2564
|
.loadDiscoveryDocument()
|
|
2559
2565
|
.then(() => {
|
|
@@ -2570,10 +2576,8 @@ class AuthFlowStrategy {
|
|
|
2570
2576
|
}
|
|
2571
2577
|
listenToOauthErrors() {
|
|
2572
2578
|
this.oAuthService.events
|
|
2573
|
-
.pipe(filter(event => event instanceof OAuthErrorEvent), tap(() => clearOAuthStorage()), switchMap(() => this.
|
|
2574
|
-
.subscribe(
|
|
2575
|
-
this.configState.setState(res);
|
|
2576
|
-
});
|
|
2579
|
+
.pipe(filter(event => event instanceof OAuthErrorEvent), tap(() => clearOAuthStorage()), switchMap(() => this.configState.refreshAppState()))
|
|
2580
|
+
.subscribe();
|
|
2577
2581
|
}
|
|
2578
2582
|
}
|
|
2579
2583
|
class AuthCodeFlowStrategy extends AuthFlowStrategy {
|
|
@@ -2630,9 +2634,7 @@ class AuthPasswordFlowStrategy extends AuthFlowStrategy {
|
|
|
2630
2634
|
else {
|
|
2631
2635
|
this.oAuthService.logOut();
|
|
2632
2636
|
removeRememberMe();
|
|
2633
|
-
this.
|
|
2634
|
-
this.configState.setState(res);
|
|
2635
|
-
});
|
|
2637
|
+
this.configState.refreshAppState().subscribe();
|
|
2636
2638
|
}
|
|
2637
2639
|
});
|
|
2638
2640
|
}
|
|
@@ -2660,8 +2662,7 @@ class AuthPasswordFlowStrategy extends AuthFlowStrategy {
|
|
|
2660
2662
|
}
|
|
2661
2663
|
pipeToLogin(params) {
|
|
2662
2664
|
const router = this.injector.get(Router);
|
|
2663
|
-
return pipe(switchMap(() => this.
|
|
2664
|
-
this.configState.setState(res);
|
|
2665
|
+
return pipe(switchMap(() => this.configState.refreshAppState()), tap(() => {
|
|
2665
2666
|
setRememberMe(params.rememberMe);
|
|
2666
2667
|
if (params.redirectUrl)
|
|
2667
2668
|
router.navigate([params.redirectUrl]);
|
|
@@ -2669,8 +2670,7 @@ class AuthPasswordFlowStrategy extends AuthFlowStrategy {
|
|
|
2669
2670
|
}
|
|
2670
2671
|
logout(queryParams) {
|
|
2671
2672
|
const router = this.injector.get(Router);
|
|
2672
|
-
return from(this.oAuthService.revokeTokenAndLogout(queryParams)).pipe(switchMap(() => this.
|
|
2673
|
-
this.configState.setState(res);
|
|
2673
|
+
return from(this.oAuthService.revokeTokenAndLogout(queryParams)).pipe(switchMap(() => this.configState.refreshAppState()), tap(() => {
|
|
2674
2674
|
router.navigateByUrl('/');
|
|
2675
2675
|
removeRememberMe();
|
|
2676
2676
|
}));
|
|
@@ -2917,9 +2917,14 @@ function parseTenantFromUrl(injector) {
|
|
|
2917
2917
|
const setEnvironmentWithDomainTenant = (tenant) => {
|
|
2918
2918
|
hideTenantBox();
|
|
2919
2919
|
setDomainTenant(tenant);
|
|
2920
|
-
replaceTenantNameWithinEnvironment(injector, tenant.name);
|
|
2921
2920
|
};
|
|
2922
2921
|
if (tenancyName) {
|
|
2922
|
+
/**
|
|
2923
|
+
* We have to replace tenant name within the urls from environment,
|
|
2924
|
+
* because the code below will make a http request to find information about the domain tenant.
|
|
2925
|
+
* Before this request takes place, we need to replace placeholders aka "{0}".
|
|
2926
|
+
*/
|
|
2927
|
+
replaceTenantNameWithinEnvironment(injector, tenancyName);
|
|
2923
2928
|
return multiTenancyService
|
|
2924
2929
|
.setTenantByName(tenancyName)
|
|
2925
2930
|
.pipe(tap(setEnvironmentWithDomainTenant))
|
|
@@ -2960,7 +2965,6 @@ function getInitialData(injector) {
|
|
|
2960
2965
|
const fn = () => __awaiter(this, void 0, void 0, function* () {
|
|
2961
2966
|
const environmentService = injector.get(EnvironmentService);
|
|
2962
2967
|
const configState = injector.get(ConfigStateService);
|
|
2963
|
-
const appConfigService = injector.get(AbpApplicationConfigurationService);
|
|
2964
2968
|
const options = injector.get(CORE_OPTIONS);
|
|
2965
2969
|
environmentService.setState(options.environment);
|
|
2966
2970
|
yield getRemoteEnv(injector, options.environment);
|
|
@@ -2968,9 +2972,9 @@ function getInitialData(injector) {
|
|
|
2968
2972
|
yield injector.get(AuthService).init();
|
|
2969
2973
|
if (options.skipGetAppConfiguration)
|
|
2970
2974
|
return;
|
|
2971
|
-
return
|
|
2972
|
-
.
|
|
2973
|
-
.pipe(tap(
|
|
2975
|
+
return configState
|
|
2976
|
+
.refreshAppState()
|
|
2977
|
+
.pipe(tap(() => checkAccessToken(injector)), tap(() => {
|
|
2974
2978
|
const currentTenant = configState.getOne('currentTenant');
|
|
2975
2979
|
injector.get(SessionStateService).setTenant(currentTenant);
|
|
2976
2980
|
}), catchError(error => {
|
|
@@ -3799,10 +3803,8 @@ var ConfigState_1;
|
|
|
3799
3803
|
* @deprecated Use ConfigStateService instead. To be deleted in v5.0.
|
|
3800
3804
|
*/
|
|
3801
3805
|
let ConfigState = ConfigState_1 = class ConfigState {
|
|
3802
|
-
constructor(
|
|
3803
|
-
this.http = http;
|
|
3806
|
+
constructor(store, environmentService, configState) {
|
|
3804
3807
|
this.store = store;
|
|
3805
|
-
this.sessionState = sessionState;
|
|
3806
3808
|
this.environmentService = environmentService;
|
|
3807
3809
|
this.configState = configState;
|
|
3808
3810
|
this.syncConfigState();
|
|
@@ -3968,9 +3970,7 @@ let ConfigState = ConfigState_1 = class ConfigState {
|
|
|
3968
3970
|
addData({ patchState, dispatch }) {
|
|
3969
3971
|
const apiName = 'default';
|
|
3970
3972
|
const api = this.store.selectSnapshot(ConfigState_1.getApiUrl(apiName));
|
|
3971
|
-
return this.
|
|
3972
|
-
.get(`${api}/api/abp/application-configuration`)
|
|
3973
|
-
.pipe(tap(configuration => this.configState.setState(configuration)), catchError((err) => {
|
|
3973
|
+
return this.configState.refreshAppState().pipe(catchError((err) => {
|
|
3974
3974
|
dispatch(new RestOccurError(err));
|
|
3975
3975
|
return throwError(err);
|
|
3976
3976
|
}));
|
|
@@ -3986,9 +3986,7 @@ ConfigState.decorators = [
|
|
|
3986
3986
|
{ type: Injectable }
|
|
3987
3987
|
];
|
|
3988
3988
|
ConfigState.ctorParameters = () => [
|
|
3989
|
-
{ type: HttpClient },
|
|
3990
3989
|
{ type: Store },
|
|
3991
|
-
{ type: SessionStateService },
|
|
3992
3990
|
{ type: EnvironmentService },
|
|
3993
3991
|
{ type: ConfigStateService }
|
|
3994
3992
|
];
|