@indigina/kendo 1.2.83 → 1.2.84
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/assets/indigina-theme.css +4 -4
- package/fesm2022/indigina-kendo.mjs +332 -333
- package/fesm2022/indigina-kendo.mjs.map +1 -1
- package/lib/angular/forms/widgets/field/field.component.d.ts +1 -1
- package/lib/angular/indigina.module.d.ts +12 -13
- package/lib/widgets/entity-list/entity-list.module.d.ts +8 -7
- package/package.json +1 -3
- package/esm2022/indigina-kendo.mjs +0 -5
- package/esm2022/lib/angular/extensions/ISubscriptionControl.mjs +0 -2
- package/esm2022/lib/angular/extensions/ReEntrySubscription.mjs +0 -16
- package/esm2022/lib/angular/forms/directives/debounce/debounce.directive.mjs +0 -40
- package/esm2022/lib/angular/forms/directives/debounce/debounce.module.mjs +0 -18
- package/esm2022/lib/angular/forms/directives/debounce/index.mjs +0 -3
- package/esm2022/lib/angular/forms/extensions/FormGroupWithErrors.mjs +0 -32
- package/esm2022/lib/angular/forms/widgets/checkbox/field-checkbox-input.component.mjs +0 -66
- package/esm2022/lib/angular/forms/widgets/checkbox/field-checkbox-input.module.mjs +0 -36
- package/esm2022/lib/angular/forms/widgets/field/field-input/field-input.component.mjs +0 -39
- package/esm2022/lib/angular/forms/widgets/field/field-input/field-input.module.mjs +0 -36
- package/esm2022/lib/angular/forms/widgets/field/field-input/number-input.component.mjs +0 -80
- package/esm2022/lib/angular/forms/widgets/field/field.component.mjs +0 -75
- package/esm2022/lib/angular/forms/widgets/file/file-select/field-file-select.component.mjs +0 -54
- package/esm2022/lib/angular/forms/widgets/file/file-select/field-file-select.module.mjs +0 -43
- package/esm2022/lib/angular/forms/widgets/file/file-upload/field-file-upload.component.mjs +0 -54
- package/esm2022/lib/angular/forms/widgets/file/file-upload/field-file-upload.module.mjs +0 -51
- package/esm2022/lib/angular/forms/widgets/general-errors/general-errors.component.mjs +0 -23
- package/esm2022/lib/angular/forms/widgets/general-errors/general-errors.module.mjs +0 -27
- package/esm2022/lib/angular/forms/widgets/general-errors/index.mjs +0 -3
- package/esm2022/lib/angular/forms/widgets/numerictextbox/field-numerictextbox-input.component.mjs +0 -76
- package/esm2022/lib/angular/forms/widgets/numerictextbox/field-numerictextbox-input.module.mjs +0 -36
- package/esm2022/lib/angular/forms/widgets/textarea/field-textarea.component.mjs +0 -39
- package/esm2022/lib/angular/forms/widgets/textarea/field-textarea.module.mjs +0 -35
- package/esm2022/lib/angular/indigina.module.mjs +0 -191
- package/esm2022/lib/angular/models/AppSettings.mjs +0 -13
- package/esm2022/lib/angular/models/CustomHttpErrorResponse.mjs +0 -2
- package/esm2022/lib/angular/models/HttpCodes.mjs +0 -10
- package/esm2022/lib/angular/models/HttpMethods.mjs +0 -7
- package/esm2022/lib/angular/models/IdentifiedModel.mjs +0 -2
- package/esm2022/lib/angular/models/IndiginaConfiguration.mjs +0 -11
- package/esm2022/lib/angular/models/Language.mjs +0 -2
- package/esm2022/lib/angular/models/NamedModel.mjs +0 -2
- package/esm2022/lib/angular/models/removable.interface.mjs +0 -2
- package/esm2022/lib/angular/services/http-request-options.model.mjs +0 -2
- package/esm2022/lib/angular/services/http.service.mjs +0 -90
- package/esm2022/lib/angular/services/locale-settings.service.mjs +0 -45
- package/esm2022/lib/angular/services/settings.service.mjs +0 -47
- package/esm2022/lib/angular/services/toastr.service.mjs +0 -26
- package/esm2022/lib/angular/widgets/live-updates-control/index.mjs +0 -3
- package/esm2022/lib/angular/widgets/live-updates-control/live-updates-control.component.mjs +0 -23
- package/esm2022/lib/angular/widgets/live-updates-control/live-updates-control.module.mjs +0 -19
- package/esm2022/lib/angular/widgets/side-menu/MenuItem.mjs +0 -2
- package/esm2022/lib/angular/widgets/side-menu/menu-item-group/menu-item-group.component.mjs +0 -63
- package/esm2022/lib/angular/widgets/side-menu/side-menu.component.mjs +0 -38
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/AbstractContentResolver.mjs +0 -12
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/ContentResolver.mjs +0 -12
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/Converters/EnumTypeGetter.mjs +0 -6
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/Converters/JsonConverter.mjs +0 -95
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/Converters/TextConverter.mjs +0 -11
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/Converters/XmlConverter.mjs +0 -41
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/IContentResolver.mjs +0 -2
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/Resolvers/JsonResolver.mjs +0 -18
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/Resolvers/TextResolver.mjs +0 -12
- package/esm2022/lib/angular/widgets/tree-view/ContentResolver/Resolvers/XmlResolver.mjs +0 -27
- package/esm2022/lib/angular/widgets/tree-view/Prettifiers/IPrettifier.mjs +0 -2
- package/esm2022/lib/angular/widgets/tree-view/Prettifiers/JsonPrettifier.mjs +0 -6
- package/esm2022/lib/angular/widgets/tree-view/Prettifiers/PrettifierFactory.mjs +0 -17
- package/esm2022/lib/angular/widgets/tree-view/Prettifiers/TextPrettifier.mjs +0 -6
- package/esm2022/lib/angular/widgets/tree-view/Prettifiers/XMLPrettifier.mjs +0 -10
- package/esm2022/lib/angular/widgets/tree-view/index.mjs +0 -4
- package/esm2022/lib/angular/widgets/tree-view/indigina-tree-view.module.mjs +0 -21
- package/esm2022/lib/angular/widgets/tree-view/models/Brackets.mjs +0 -2
- package/esm2022/lib/angular/widgets/tree-view/models/ContentTypesFormat.mjs +0 -7
- package/esm2022/lib/angular/widgets/tree-view/models/ResolverResult.mjs +0 -2
- package/esm2022/lib/angular/widgets/tree-view/models/TreeViewNode.mjs +0 -26
- package/esm2022/lib/angular/widgets/tree-view/models/TreeViewNodeTypes.mjs +0 -9
- package/esm2022/lib/angular/widgets/tree-view/tree-view-node/tree-view-node.component.mjs +0 -40
- package/esm2022/lib/angular/widgets/tree-view/tree-view.component.mjs +0 -85
- package/esm2022/lib/components/account-menu/AccountMenuItem.mjs +0 -2
- package/esm2022/lib/components/account-menu/account-menu.component.mjs +0 -57
- package/esm2022/lib/components/account-menu/account-menu.module.mjs +0 -40
- package/esm2022/lib/components/account-menu/index.mjs +0 -3
- package/esm2022/lib/components/azure-login-callback/azure-login-callback.component.mjs +0 -39
- package/esm2022/lib/components/forbidden/forbidden.component.mjs +0 -19
- package/esm2022/lib/components/language-selector/index.mjs +0 -3
- package/esm2022/lib/components/language-selector/language-selector.component.mjs +0 -44
- package/esm2022/lib/components/language-selector/language-selector.module.mjs +0 -32
- package/esm2022/lib/config/msal-instance.factory.mjs +0 -28
- package/esm2022/lib/directives/requirePermission/index.mjs +0 -3
- package/esm2022/lib/directives/requirePermission/requirePermission.directive.mjs +0 -66
- package/esm2022/lib/directives/requirePermission/requirePermission.module.mjs +0 -16
- package/esm2022/lib/interceptors/auth-headers.interceptor.mjs +0 -32
- package/esm2022/lib/kendo.module.mjs +0 -309
- package/esm2022/lib/models/ActivityFilter.mjs +0 -2
- package/esm2022/lib/models/AzureB2CSettings.mjs +0 -2
- package/esm2022/lib/models/CustomFilter.mjs +0 -2
- package/esm2022/lib/models/CustomFilterElement.mjs +0 -2
- package/esm2022/lib/models/FieldTypes.mjs +0 -8
- package/esm2022/lib/models/FilterTargets.mjs +0 -6
- package/esm2022/lib/models/Member.mjs +0 -2
- package/esm2022/lib/models/MemberBase.mjs +0 -2
- package/esm2022/lib/models/MemberTypes.mjs +0 -6
- package/esm2022/lib/models/Operators.mjs +0 -18
- package/esm2022/lib/models/Page.mjs +0 -2
- package/esm2022/lib/models/PermissionTypes.mjs +0 -9
- package/esm2022/lib/models/Permissions.mjs +0 -2
- package/esm2022/lib/models/SystemInfo.mjs +0 -2
- package/esm2022/lib/models/User.mjs +0 -2
- package/esm2022/lib/services/IActivityEndpoints.mjs +0 -2
- package/esm2022/lib/services/IEntityEndpoints.mjs +0 -2
- package/esm2022/lib/services/IEntityService.mjs +0 -2
- package/esm2022/lib/services/account.service.mjs +0 -24
- package/esm2022/lib/services/activity.filter.service.config.mjs +0 -6
- package/esm2022/lib/services/activity.filter.service.mjs +0 -206
- package/esm2022/lib/services/auth-provider.resolver.mjs +0 -27
- package/esm2022/lib/services/auth.providers/AuthProvider.mjs +0 -3
- package/esm2022/lib/services/auth.providers/azureb2c.provider.mjs +0 -47
- package/esm2022/lib/services/base.account.service.mjs +0 -87
- package/esm2022/lib/services/endpoints.mjs +0 -72
- package/esm2022/lib/services/entity.service.mjs +0 -28
- package/esm2022/lib/services/filter-utils.mjs +0 -8
- package/esm2022/lib/services/get-page.service.interface.mjs +0 -2
- package/esm2022/lib/services/partner.service.mjs +0 -16
- package/esm2022/lib/services/permissions.service.mjs +0 -56
- package/esm2022/lib/services/services.config.mjs +0 -2
- package/esm2022/lib/services/signalr/EventNames.mjs +0 -6
- package/esm2022/lib/services/signalr/signalr.service.mjs +0 -73
- package/esm2022/lib/services/url-params.model.mjs +0 -2
- package/esm2022/lib/widgets/activity-filter/FilterConverter.mjs +0 -78
- package/esm2022/lib/widgets/activity-filter/activity-filter.component.mjs +0 -123
- package/esm2022/lib/widgets/activity-filter/activity-filter.module.mjs +0 -55
- package/esm2022/lib/widgets/activity-filter/index.mjs +0 -3
- package/esm2022/lib/widgets/confirm-dialog/confirm-dialog.component.mjs +0 -34
- package/esm2022/lib/widgets/confirm-dialog/confirm-dialog.module.mjs +0 -19
- package/esm2022/lib/widgets/confirm-dialog/index.mjs +0 -3
- package/esm2022/lib/widgets/current-timezone/current-timezone.component.mjs +0 -18
- package/esm2022/lib/widgets/current-timezone/current-timezone.module.mjs +0 -18
- package/esm2022/lib/widgets/current-timezone/index.mjs +0 -3
- package/esm2022/lib/widgets/entity-edit/IFormAdapter.mjs +0 -2
- package/esm2022/lib/widgets/entity-edit/buttons-bar/buttons-bar.component.mjs +0 -27
- package/esm2022/lib/widgets/entity-edit/buttons-bar/buttons-bar.module.mjs +0 -20
- package/esm2022/lib/widgets/entity-edit/buttons-bar/index.mjs +0 -3
- package/esm2022/lib/widgets/entity-edit/create-new/create-new.component.mjs +0 -26
- package/esm2022/lib/widgets/entity-edit/create-new/create-new.module.mjs +0 -28
- package/esm2022/lib/widgets/entity-edit/create-new/index.mjs +0 -3
- package/esm2022/lib/widgets/entity-edit/dropdowns/field-dropdown/field-dropdown.component.mjs +0 -149
- package/esm2022/lib/widgets/entity-edit/dropdowns/field-dropdown/field-dropdown.module.mjs +0 -32
- package/esm2022/lib/widgets/entity-edit/dropdowns/object-dropdown/object-dropdown.component.mjs +0 -91
- package/esm2022/lib/widgets/entity-edit/dropdowns/object-dropdown/object-dropdown.module.mjs +0 -32
- package/esm2022/lib/widgets/entity-edit/dropdowns/simple-object.model.mjs +0 -2
- package/esm2022/lib/widgets/entity-edit/entity-edit-form.component.mjs +0 -87
- package/esm2022/lib/widgets/entity-edit/entity-edit-form.module.mjs +0 -39
- package/esm2022/lib/widgets/entity-edit/entity-edit.component.mjs +0 -26
- package/esm2022/lib/widgets/entity-edit/field-multiselect/field-multiselect.component.mjs +0 -96
- package/esm2022/lib/widgets/entity-edit/field-multiselect/field-multiselect.module.mjs +0 -36
- package/esm2022/lib/widgets/entity-edit/field-multiselect/index.mjs +0 -3
- package/esm2022/lib/widgets/entity-edit/index.mjs +0 -5
- package/esm2022/lib/widgets/entity-list/Command.mjs +0 -2
- package/esm2022/lib/widgets/entity-list/Field.mjs +0 -2
- package/esm2022/lib/widgets/entity-list/UrlSerializer.mjs +0 -62
- package/esm2022/lib/widgets/entity-list/entity-list.component.mjs +0 -240
- package/esm2022/lib/widgets/entity-list/entity-list.module.mjs +0 -69
- package/esm2022/lib/widgets/entity-list/field-dropdownlist/field-dropdownlist.component.mjs +0 -59
- package/esm2022/lib/widgets/entity-list/field-dropdownlist/field-dropdownlist.module.mjs +0 -18
- package/esm2022/lib/widgets/entity-list/field-dropdownlist/index.mjs +0 -3
- package/esm2022/lib/widgets/entity-list/index.mjs +0 -3
- package/esm2022/lib/widgets/entity-list/user-list-admin.component.mjs +0 -38
- package/esm2022/lib/widgets/excel-export-button/excel-export-button.component.mjs +0 -13
- package/esm2022/lib/widgets/excel-export-button/excel-export-button.module.mjs +0 -19
- package/esm2022/lib/widgets/excel-export-button/index.mjs +0 -3
- package/esm2022/lib/widgets/footer-bar/footer-bar.component.mjs +0 -11
- package/esm2022/lib/widgets/footer-bar/footer-bar.module.mjs +0 -20
- package/esm2022/lib/widgets/footer-bar/index.mjs +0 -3
- package/esm2022/lib/widgets/modal-window/index.mjs +0 -3
- package/esm2022/lib/widgets/modal-window/modal-window.component.mjs +0 -31
- package/esm2022/lib/widgets/modal-window/modal-window.module.mjs +0 -21
- package/esm2022/lib/widgets/multicheck-filter/index.mjs +0 -3
- package/esm2022/lib/widgets/multicheck-filter/multicheck-filter.component.mjs +0 -88
- package/esm2022/lib/widgets/multicheck-filter/multicheck-filter.module.mjs +0 -18
- package/esm2022/lib/widgets/top-bar/index.mjs +0 -3
- package/esm2022/lib/widgets/top-bar/top-bar.component.mjs +0 -21
- package/esm2022/lib/widgets/top-bar/top-bar.module.mjs +0 -32
- package/esm2022/public-api.mjs +0 -87
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
export const dateFilterParameter = new InjectionToken('dateFilterParameter', {
|
|
3
|
-
factory: () => 'start',
|
|
4
|
-
providedIn: 'root',
|
|
5
|
-
});
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkuZmlsdGVyLnNlcnZpY2UuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi9zZXJ2aWNlcy9hY3Rpdml0eS5maWx0ZXIuc2VydmljZS5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU0vQyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FDOUIsSUFBSSxjQUFjLENBQVMscUJBQXFCLEVBQUU7SUFDaEQsT0FBTyxFQUFFLEdBQVcsRUFBRSxDQUFDLE9BQU87SUFDOUIsVUFBVSxFQUFFLE1BQU07Q0FDbkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpdml0eUZpbHRlclNlcnZpY2VDb25maWcge1xuICBkYXRlRmlsdGVyUGFyYW1ldGVyOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBkYXRlRmlsdGVyUGFyYW1ldGVyOiBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+ID1cbiAgbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ2RhdGVGaWx0ZXJQYXJhbWV0ZXInLCB7XG4gICAgZmFjdG9yeTogKCk6IHN0cmluZyA9PiAnc3RhcnQnLFxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgfSk7XG4iXX0=
|
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
import { FilterConverter } from '../widgets/activity-filter/FilterConverter';
|
|
2
|
-
import { urlDeserialize, urlSerialize, } from '../widgets/entity-list/UrlSerializer';
|
|
3
|
-
import { BehaviorSubject } from 'rxjs';
|
|
4
|
-
import { Inject, Injectable } from '@angular/core';
|
|
5
|
-
import { FilterTargets } from '../models/FilterTargets';
|
|
6
|
-
import { Operators } from '../models/Operators';
|
|
7
|
-
import { dateFilterParameter } from './activity.filter.service.config';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/router";
|
|
10
|
-
const filterKey = 'filter';
|
|
11
|
-
const filtersKey = 'filters';
|
|
12
|
-
const dateToKey = 'dateTo';
|
|
13
|
-
const dateFromKey = 'dateFrom';
|
|
14
|
-
const customFiltersKey = 'customFilters';
|
|
15
|
-
const nullKey = 'null';
|
|
16
|
-
export class ActivityFilterService {
|
|
17
|
-
constructor(route, router, dateFilterParameterName) {
|
|
18
|
-
this.route = route;
|
|
19
|
-
this.router = router;
|
|
20
|
-
this.dateFilterParameterName = dateFilterParameterName;
|
|
21
|
-
this.defaultFilter = {
|
|
22
|
-
dateTo: null,
|
|
23
|
-
dateFrom: null,
|
|
24
|
-
switchToArchive: false,
|
|
25
|
-
searchText: '',
|
|
26
|
-
skip: 0,
|
|
27
|
-
take: 10,
|
|
28
|
-
};
|
|
29
|
-
this.filterBehavior = new BehaviorSubject(this.defaultFilter);
|
|
30
|
-
this.gridStateBehavior = new BehaviorSubject(FilterConverter.toGridState(this.defaultFilter, this.dateFilterParameterName));
|
|
31
|
-
this.filter$ = this.filterBehavior.asObservable();
|
|
32
|
-
this.gridState$ = this.gridStateBehavior.asObservable();
|
|
33
|
-
this.currentFilter = Object.assign({}, this.defaultFilter);
|
|
34
|
-
this.route.fragment.subscribe(async (fragment) => {
|
|
35
|
-
const parsed = urlDeserialize(new URLSearchParams(fragment));
|
|
36
|
-
if (Object.keys(parsed).some((key) => key === filterKey)) {
|
|
37
|
-
this.currentGridState = parsed;
|
|
38
|
-
this.fillCurrentFilter(parsed);
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
this.clearFilter();
|
|
42
|
-
this.setTodayDates();
|
|
43
|
-
this.currentGridState = FilterConverter.toGridState(this.currentFilter, this.dateFilterParameterName);
|
|
44
|
-
}
|
|
45
|
-
this.filterBehavior.next(this.currentFilter);
|
|
46
|
-
});
|
|
47
|
-
this.filter$.subscribe((filter) => {
|
|
48
|
-
this.gridStateBehavior.next(FilterConverter.toGridState(filter, this.dateFilterParameterName));
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
reset() {
|
|
52
|
-
this.clearFilter();
|
|
53
|
-
this.applyFilter(this.currentFilter);
|
|
54
|
-
this.gridStateBehavior.next(this.currentGridState);
|
|
55
|
-
}
|
|
56
|
-
setFilter(filter) {
|
|
57
|
-
this.currentFilter.skip = 0;
|
|
58
|
-
this.currentFilter = Object.assign(filter);
|
|
59
|
-
this.currentGridState = FilterConverter.toGridState(this.currentFilter, this.dateFilterParameterName);
|
|
60
|
-
}
|
|
61
|
-
applyFilter(filter) {
|
|
62
|
-
this.setFilter(filter);
|
|
63
|
-
this.stateNavigation(this.prepareFilterToSerialize());
|
|
64
|
-
}
|
|
65
|
-
setToday() {
|
|
66
|
-
this.setTodayDates();
|
|
67
|
-
this.applyFilter(this.currentFilter);
|
|
68
|
-
}
|
|
69
|
-
clearFilter() {
|
|
70
|
-
if (this.currentFilter) {
|
|
71
|
-
const customFilters = Object.assign([], this.currentFilter.customFilters);
|
|
72
|
-
customFilters.forEach((x) => {
|
|
73
|
-
x.value = null;
|
|
74
|
-
if (x.values) {
|
|
75
|
-
x.values = [];
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
this.currentFilter = Object.assign({}, this.defaultFilter);
|
|
79
|
-
this.currentFilter.customFilters = customFilters;
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
this.currentFilter = Object.assign({}, this.defaultFilter);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
setGridState(state) {
|
|
86
|
-
this.currentGridState = state;
|
|
87
|
-
const { switchToArchive, searchText } = this.currentFilter;
|
|
88
|
-
this.clearFilter();
|
|
89
|
-
this.currentFilter = Object.assign(this.currentFilter, {
|
|
90
|
-
switchToArchive,
|
|
91
|
-
searchText,
|
|
92
|
-
});
|
|
93
|
-
this.fillCurrentFilter(this.currentGridState);
|
|
94
|
-
this.stateNavigation(this.currentGridState);
|
|
95
|
-
}
|
|
96
|
-
setTodayDates() {
|
|
97
|
-
const now = new Date();
|
|
98
|
-
this.currentFilter.dateTo = new Date(now.getFullYear(), now.getMonth(), now.getDate() + 1, 0, 0, 0);
|
|
99
|
-
this.currentFilter.dateFrom = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 0, 0, 0);
|
|
100
|
-
}
|
|
101
|
-
async stateNavigation(object) {
|
|
102
|
-
const navigate = await this.router.navigate([], {
|
|
103
|
-
relativeTo: this.route,
|
|
104
|
-
fragment: urlSerialize(object),
|
|
105
|
-
});
|
|
106
|
-
if (!navigate) {
|
|
107
|
-
this.filterBehavior.next(this.currentFilter);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
prepareFilterToSerialize() {
|
|
111
|
-
const result = {};
|
|
112
|
-
Object.keys(this.currentFilter).forEach((key) => {
|
|
113
|
-
if (key !== dateToKey &&
|
|
114
|
-
key !== dateFromKey &&
|
|
115
|
-
key !== customFiltersKey) {
|
|
116
|
-
result[key] = this.currentFilter[key];
|
|
117
|
-
}
|
|
118
|
-
});
|
|
119
|
-
this.currentFilter.customFilters?.forEach((filter) => {
|
|
120
|
-
if (filter.filterTarget == FilterTargets.Url) {
|
|
121
|
-
result[filter.field] = filter.value;
|
|
122
|
-
}
|
|
123
|
-
});
|
|
124
|
-
result[filterKey] = FilterConverter.toGridState(this.currentFilter, this.dateFilterParameterName).filter;
|
|
125
|
-
return result;
|
|
126
|
-
}
|
|
127
|
-
fillCurrentFilter(object) {
|
|
128
|
-
this.currentFilter.customFilters = [];
|
|
129
|
-
this.fillFromDescriptor(object.filter);
|
|
130
|
-
Object.keys(object).forEach((key) => {
|
|
131
|
-
if (key !== filterKey && key !== nullKey && key !== filtersKey) {
|
|
132
|
-
if (Object.keys(this.currentFilter).some((x) => x == key)) {
|
|
133
|
-
this.currentFilter[key] = object[key];
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
136
|
-
this.fillUrlFilter(key, object[key]);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
fillUrlFilter(key, val) {
|
|
142
|
-
const index = this.currentFilter.customFilters.findIndex((filter) => filter.field == key);
|
|
143
|
-
if (index !== -1) {
|
|
144
|
-
this.currentFilter.customFilters[index].value = val;
|
|
145
|
-
}
|
|
146
|
-
else {
|
|
147
|
-
this.currentFilter.customFilters.push({
|
|
148
|
-
field: key,
|
|
149
|
-
value: val,
|
|
150
|
-
operator: Operators.eq,
|
|
151
|
-
filterTarget: FilterTargets.Url,
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
fillFromDescriptor(gridFilter) {
|
|
156
|
-
gridFilter?.filters.forEach((filter) => {
|
|
157
|
-
const filterDescriptor = filter;
|
|
158
|
-
if (filterDescriptor.field === this.dateFilterParameterName &&
|
|
159
|
-
filterDescriptor.operator === Operators.lte) {
|
|
160
|
-
this.currentFilter.dateTo = filterDescriptor.value;
|
|
161
|
-
}
|
|
162
|
-
if (filterDescriptor.field === this.dateFilterParameterName &&
|
|
163
|
-
filterDescriptor.operator === Operators.gte) {
|
|
164
|
-
this.currentFilter.dateFrom = filterDescriptor.value;
|
|
165
|
-
}
|
|
166
|
-
if (filterDescriptor.field &&
|
|
167
|
-
filterDescriptor.field !== this.dateFilterParameterName) {
|
|
168
|
-
this.setFieldFilter({
|
|
169
|
-
field: filterDescriptor.field,
|
|
170
|
-
filterTarget: FilterTargets.Grid,
|
|
171
|
-
operator: Operators[filterDescriptor.operator],
|
|
172
|
-
value: filterDescriptor.value,
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
const compositeFilterDescriptor = filter;
|
|
176
|
-
if (compositeFilterDescriptor.filters) {
|
|
177
|
-
this.fillFromDescriptor(compositeFilterDescriptor);
|
|
178
|
-
}
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
setFieldFilter(filter) {
|
|
182
|
-
const index = this.currentFilter.customFilters.findIndex((x) => x.field === filter.field && x.operator === filter.operator);
|
|
183
|
-
if (index !== -1) {
|
|
184
|
-
const values = this.currentFilter.customFilters[index].values;
|
|
185
|
-
const value = this.currentFilter.customFilters[index].value;
|
|
186
|
-
this.currentFilter.customFilters[index].values = values ? values : [];
|
|
187
|
-
if (value) {
|
|
188
|
-
this.currentFilter.customFilters[index].values.push(value);
|
|
189
|
-
this.currentFilter.customFilters[index].value = null;
|
|
190
|
-
}
|
|
191
|
-
this.currentFilter.customFilters[index].values.push(filter.value);
|
|
192
|
-
}
|
|
193
|
-
else {
|
|
194
|
-
this.currentFilter.customFilters.push(filter);
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ActivityFilterService, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }, { token: dateFilterParameter }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
198
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ActivityFilterService }); }
|
|
199
|
-
}
|
|
200
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ActivityFilterService, decorators: [{
|
|
201
|
-
type: Injectable
|
|
202
|
-
}], ctorParameters: () => [{ type: i1.ActivatedRoute }, { type: i1.Router }, { type: undefined, decorators: [{
|
|
203
|
-
type: Inject,
|
|
204
|
-
args: [dateFilterParameter]
|
|
205
|
-
}] }] });
|
|
206
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkuZmlsdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3NlcnZpY2VzL2FjdGl2aXR5LmZpbHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQ0wsY0FBYyxFQUNkLFlBQVksR0FDYixNQUFNLHNDQUFzQyxDQUFDO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFRbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBRXZFLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQztBQUMzQixNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUM7QUFDN0IsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDO0FBQzNCLE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQztBQUMvQixNQUFNLGdCQUFnQixHQUFHLGVBQWUsQ0FBQztBQUN6QyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUM7QUFHdkIsTUFBTSxPQUFPLHFCQUFxQjtJQTBCaEMsWUFDVSxLQUFxQixFQUNyQixNQUFjLEVBRVosdUJBQStCO1FBSGpDLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFFWiw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQVE7UUExQjFCLGtCQUFhLEdBQW1CO1lBQy9DLE1BQU0sRUFBRSxJQUFJO1lBQ1osUUFBUSxFQUFFLElBQUk7WUFDZCxlQUFl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UUFBUSxDQUNsRSxDQUFDO1FBQ0YsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDOUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQzVELElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3RFLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ1YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFlLENBQUMsQ0FBQztnQkFDckUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUN2RCxDQUFDO1lBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDakQsTUFBTSxDQUFDLEtBQWUsQ0FDdkIsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELENBQUM7SUFDSCxDQUFDOzhHQTdQVSxxQkFBcUIsc0VBNkJ0QixtQkFBbUI7a0hBN0JsQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVU7OzBCQThCTixNQUFNOzJCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbHRlckNvbnZlcnRlciB9IGZyb20gJy4uL3dpZGdldHMvYWN0aXZpdHktZmlsdGVyL0ZpbHRlckNvbnZlcnRlcic7XG5pbXBvcnQge1xuICB1cmxEZXNlcmlhbGl6ZSxcbiAgdXJsU2VyaWFsaXplLFxufSBmcm9tICcuLi93aWRnZXRzL2VudGl0eS1saXN0L1VybFNlcmlhbGl6ZXInO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgQ29tcG9zaXRlRmlsdGVyRGVzY3JpcHRvcixcbiAgRmlsdGVyRGVzY3JpcHRvcixcbiAgU3RhdGUsXG59IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1kYXRhLXF1ZXJ5JztcbmltcG9ydCB7IEFjdGl2aXR5RmlsdGVyIH0gZnJvbSAnLi4vbW9kZWxzL0FjdGl2aXR5RmlsdGVyJztcbmltcG9ydCB7IEZpbHRlclRhcmdldHMgfSBmcm9tICcuLi9tb2RlbHMvRmlsdGVyVGFyZ2V0cyc7XG5pbXBvcnQgeyBPcGVyYXRvcnMgfSBmcm9tICcuLi9tb2RlbHMvT3BlcmF0b3JzJztcbmltcG9ydCB7IEN1c3RvbUZpbHRlciB9IGZyb20gJy4uL21vZGVscy9DdXN0b21GaWx0ZXInO1xuaW1wb3J0IHsgZGF0ZUZpbHRlclBhcmFtZXRlciB9IGZyb20gJy4vYWN0aXZpdHkuZmlsdGVyLnNlcnZpY2UuY29uZmlnJztcblxuY29uc3QgZmlsdGVyS2V5ID0gJ2ZpbHRlcic7XG5jb25zdCBmaWx0ZXJzS2V5ID0gJ2ZpbHRlcnMnO1xuY29uc3QgZGF0ZVRvS2V5ID0gJ2RhdGVUbyc7XG5jb25zdCBkYXRlRnJvbUtleSA9ICdkYXRlRnJvbSc7XG5jb25zdCBjdXN0b21GaWx0ZXJzS2V5ID0gJ2N1c3RvbUZpbHRlcnMnO1xuY29uc3QgbnVsbEtleSA9ICdudWxsJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFjdGl2aXR5RmlsdGVyU2VydmljZSB7XG4gIHB1YmxpYyBjdXJyZW50RmlsdGVyOiBBY3Rpdml0eUZpbHRlcjtcbiAgcHVibGljIGN1cnJlbnRHcmlkU3RhdGU6IFN0YXRlO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdEZpbHRlcjogQWN0aXZpdHlGaWx0ZXIgPSB7XG4gICAgZGF0ZVRvOiBudWxsLFxuICAgIGRhdGVGcm9tOiBudWxsLFxuICAgIHN3aXRjaFRvQXJjaGl2ZTogZmFsc2UsXG4gICAgc2VhcmNoVGV4dDogJycsXG4gICAgc2tpcDogMCxcbiAgICB0YWtlOiAxMCxcbiAgfTtcblxuICBwcm90ZWN0ZWQgZmlsdGVyQmVoYXZpb3IgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFjdGl2aXR5RmlsdGVyPihcbiAgICB0aGlzLmRlZmF1bHRGaWx0ZXIsXG4gICk7XG4gIHByb3RlY3RlZCBncmlkU3RhdGVCZWhhdmlvciA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U3RhdGU+KFxuICAgIEZpbHRlckNvbnZlcnRlci50b0dyaWRTdGF0ZShcbiAgICAgIHRoaXMuZGVmYXVsdEZpbHRlcixcbiAgICAgIHRoaXMuZGF0ZUZpbHRlclBhcmFtZXRlck5hbWUsXG4gICAgKSxcbiAgKTtcblxuICBwdWJsaWMgZmlsdGVyJCA9IHRoaXMuZmlsdGVyQmVoYXZpb3IuYXNPYnNlcnZhYmxlKCk7XG4gIHB1YmxpYyBncmlkU3RhdGUkID0gdGhpcy5ncmlkU3RhdGVCZWhhdmlvci5hc09ic2VydmFibGUoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIEBJbmplY3QoZGF0ZUZpbHRlclBhcmFtZXRlcilcbiAgICBwcm90ZWN0ZWQgZGF0ZUZpbHRlclBhcmFtZXRlck5hbWU6IHN0cmluZyxcbiAgKSB7XG4gICAgdGhpcy5jdXJyZW50RmlsdGVyID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5kZWZhdWx0RmlsdGVyKTtcbiAgICB0aGlzLnJvdXRlLmZyYWdtZW50LnN1YnNjcmliZShhc3luYyAoZnJhZ21lbnQ6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgcGFyc2VkID0gdXJsRGVzZXJpYWxpemUobmV3IFVSTFNlYXJjaFBhcmFtcyhmcmFnbWVudCkpO1xuICAgICAgaWYgKE9iamVjdC5rZXlzKHBhcnNlZCkuc29tZSgoa2V5KSA9PiBrZXkgPT09IGZpbHRlcktleSkpIHtcbiAgICAgICAgdGhpcy5jdXJyZW50R3JpZFN0YXRlID0gcGFyc2VkIGFzIFN0YXRlO1xuICAgICAgICB0aGlzLmZpbGxDdXJyZW50RmlsdGVyKHBhcnNlZCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNsZWFyRmlsdGVyKCk7XG4gICAgICAgIHRoaXMuc2V0VG9kYXlEYXRlcygpO1xuICAgICAgICB0aGlzLmN1cnJlbnRHcmlkU3RhdGUgPSBGaWx0ZXJDb252ZXJ0ZXIudG9HcmlkU3RhdGUoXG4gICAgICAgICAgdGhpcy5jdXJyZW50RmlsdGVyLFxuICAgICAgICAgIHRoaXMuZGF0ZUZpbHRlclBhcmFtZXRlck5hbWUsXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuZmlsdGVyQmVoYXZpb3IubmV4dCh0aGlzLmN1cnJlbnRGaWx0ZXIpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5maWx0ZXIkLnN1YnNjcmliZSgoZmlsdGVyKSA9PiB7XG4gICAgICB0aGlzLmdyaWRTdGF0ZUJlaGF2aW9yLm5leHQoXG4gICAgICAgIEZpbHRlckNvbnZlcnRlci50b0dyaWRTdGF0ZShmaWx0ZXIsIHRoaXMuZGF0ZUZpbHRlclBhcmFtZXRlck5hbWUpLFxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldCgpIHtcbiAgICB0aGlzLmNsZWFyRmlsdGVyKCk7XG4gICAgdGhpcy5hcHBseUZpbHRlcih0aGlzLmN1cnJlbnRGaWx0ZXIpO1xuICAgIHRoaXMuZ3JpZFN0YXRlQmVoYXZpb3IubmV4dCh0aGlzLmN1cnJlbnRHcmlkU3RhdGUpO1xuICB9XG5cbiAgcHVibGljIHNldEZpbHRlcihmaWx0ZXI6IEFjdGl2aXR5RmlsdGVyKSB7XG4gICAgdGhpcy5jdXJyZW50RmlsdGVyLnNraXAgPSAwO1xuICAgIHRoaXMuY3VycmVudEZpbHRlciA9IE9iamVjdC5hc3NpZ24oZmlsdGVyKTtcbiAgICB0aGlzLmN1cnJlbnRHcmlkU3RhdGUgPSBGaWx0ZXJDb252ZXJ0ZXIudG9HcmlkU3RhdGUoXG4gICAgICB0aGlzLmN1cnJlbnRGaWx0ZXIsXG4gICAgICB0aGlzLmRhdGVGaWx0ZXJQYXJhbWV0ZXJOYW1lLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgYXBwbHlGaWx0ZXIoZmlsdGVyOiBBY3Rpdml0eUZpbHRlcikge1xuICAgIHRoaXMuc2V0RmlsdGVyKGZpbHRlcik7XG4gICAgdGhpcy5zdGF0ZU5hdmlnYXRpb24odGhpcy5wcmVwYXJlRmlsdGVyVG9TZXJpYWxpemUoKSk7XG4gIH1cblxuICBwdWJsaWMgc2V0VG9kYXkoKSB7XG4gICAgdGhpcy5zZXRUb2RheURhdGVzKCk7XG4gICAgdGhpcy5hcHBseUZpbHRlcih0aGlzLmN1cnJlbnRGaWx0ZXIpO1xuICB9XG5cbiAgcHVibGljIGNsZWFyRmlsdGVyKCkge1xuICAgIGlmICh0aGlzLmN1cnJlbnRGaWx0ZXIpIHtcbiAgICAgIGNvbnN0IGN1c3RvbUZpbHRlcnMgPSBPYmplY3QuYXNzaWduKFtdLCB0aGlzLmN1cnJlbnRGaWx0ZXIuY3VzdG9tRmlsdGVycyk7XG4gICAgICBjdXN0b21GaWx0ZXJzLmZvckVhY2goKHgpID0+IHtcbiAgICAgICAgeC52YWx1ZSA9IG51bGw7XG4gICAgICAgIGlmICh4LnZhbHVlcykge1xuICAgICAgICAgIHgudmFsdWVzID0gW107XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdGhpcy5jdXJyZW50RmlsdGVyID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5kZWZhdWx0RmlsdGVyKTtcbiAgICAgIHRoaXMuY3VycmVudEZpbHRlci5jdXN0b21GaWx0ZXJzID0gY3VzdG9tRmlsdGVycztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jdXJyZW50RmlsdGVyID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5kZWZhdWx0RmlsdGVyKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2V0R3JpZFN0YXRlKHN0YXRlOiBTdGF0ZSkge1xuICAgIHRoaXMuY3VycmVudEdyaWRTdGF0ZSA9IHN0YXRlO1xuICAgIGNvbnN0IHsgc3dpdGNoVG9BcmNoaXZlLCBzZWFyY2hUZXh0IH0gPSB0aGlzLmN1cnJlbnRGaWx0ZXI7XG4gICAgdGhpcy5jbGVhckZpbHRlcigpO1xuICAgIHRoaXMuY3VycmVudEZpbHRlciA9IE9iamVjdC5hc3NpZ24odGhpcy5jdXJyZW50RmlsdGVyLCB7XG4gICAgICBzd2l0Y2hUb0FyY2hpdmUsXG4gICAgICBzZWFyY2hUZXh0LFxuICAgIH0pO1xuICAgIHRoaXMuZmlsbEN1cnJlbnRGaWx0ZXIodGhpcy5jdXJyZW50R3JpZFN0YXRlKTtcbiAgICB0aGlzLnN0YXRlTmF2aWdhdGlvbih0aGlzLmN1cnJlbnRHcmlkU3RhdGUpO1xuICB9XG5cbiAgcHVibGljIHNldFRvZGF5RGF0ZXMoKSB7XG4gICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgICB0aGlzLmN1cnJlbnRGaWx0ZXIuZGF0ZVRvID0gbmV3IERhdGUoXG4gICAgICBub3cuZ2V0RnVsbFllYXIoKSxcbiAgICAgIG5vdy5nZXRNb250aCgpLFxuICAgICAgbm93LmdldERhdGUoKSArIDEsXG4gICAgICAwLFxuICAgICAgMCxcbiAgICAgIDAsXG4gICAgKTtcbiAgICB0aGlzLmN1cnJlbnRGaWx0ZXIuZGF0ZUZyb20gPSBuZXcgRGF0ZShcbiAgICAgIG5vdy5nZXRGdWxsWWVhcigpLFxuICAgICAgbm93LmdldE1vbnRoKCksXG4gICAgICBub3cuZ2V0RGF0ZSgpLFxuICAgICAgMCxcbiAgICAgIDAsXG4gICAgICAwLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHN0YXRlTmF2aWdhdGlvbihvYmplY3Q6IE9iamVjdCkge1xuICAgIGNvbnN0IG5hdmlnYXRlID0gYXdhaXQgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcbiAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUsXG4gICAgICBmcmFnbWVudDogdXJsU2VyaWFsaXplKG9iamVjdCksXG4gICAgfSk7XG4gICAgaWYgKCFuYXZpZ2F0ZSkge1xuICAgICAgdGhpcy5maWx0ZXJCZWhhdmlvci5uZXh0KHRoaXMuY3VycmVudEZpbHRlcik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwcmVwYXJlRmlsdGVyVG9TZXJpYWxpemUoKTogb2JqZWN0IHtcbiAgICBjb25zdCByZXN1bHQgPSB7fTtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmN1cnJlbnRGaWx0ZXIpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgaWYgKFxuICAgICAgICBrZXkgIT09IGRhdGVUb0tleSAmJlxuICAgICAgICBrZXkgIT09IGRhdGVGcm9tS2V5ICYmXG4gICAgICAgIGtleSAhPT0gY3VzdG9tRmlsdGVyc0tleVxuICAgICAgKSB7XG4gICAgICAgIHJlc3VsdFtrZXldID0gdGhpcy5jdXJyZW50RmlsdGVyW2tleV07XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmN1cnJlbnRGaWx0ZXIuY3VzdG9tRmlsdGVycz8uZm9yRWFjaCgoZmlsdGVyKSA9PiB7XG4gICAgICBpZiAoZmlsdGVyLmZpbHRlclRhcmdldCA9PSBGaWx0ZXJUYXJnZXRzLlVybCkge1xuICAgICAgICByZXN1bHRbZmlsdGVyLmZpZWxkXSA9IGZpbHRlci52YWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJlc3VsdFtmaWx0ZXJLZXldID0gRmlsdGVyQ29udmVydGVyLnRvR3JpZFN0YXRlKFxuICAgICAgdGhpcy5jdXJyZW50RmlsdGVyLFxuICAgICAgdGhpcy5kYXRlRmlsdGVyUGFyYW1ldGVyTmFtZSxcbiAgICApLmZpbHRlcjtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIGZpbGxDdXJyZW50RmlsdGVyKG9iamVjdDogU3RhdGUpIHtcbiAgICB0aGlzLmN1cnJlbnRGaWx0ZXIuY3VzdG9tRmlsdGVycyA9IFtdO1xuICAgIHRoaXMuZmlsbEZyb21EZXNjcmlwdG9yKG9iamVjdC5maWx0ZXIpO1xuICAgIE9iamVjdC5rZXlzKG9iamVjdCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoa2V5ICE9PSBmaWx0ZXJLZXkgJiYga2V5ICE9PSBudWxsS2V5ICYmIGtleSAhPT0gZmlsdGVyc0tleSkge1xuICAgICAgICBpZiAoT2JqZWN0LmtleXModGhpcy5jdXJyZW50RmlsdGVyKS5zb21lKCh4KSA9PiB4ID09IGtleSkpIHtcbiAgICAgICAgICB0aGlzLmN1cnJlbnRGaWx0ZXJba2V5XSA9IG9iamVjdFtrZXldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZmlsbFVybEZpbHRlcihrZXksIG9iamVjdFtrZXldKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBmaWxsVXJsRmlsdGVyKGtleTogc3RyaW5nLCB2YWw6IHN0cmluZykge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5jdXJyZW50RmlsdGVyLmN1c3RvbUZpbHRlcnMuZmluZEluZGV4KFxuICAgICAgKGZpbHRlcikgPT4gZmlsdGVyLmZpZWxkID09IGtleSxcbiAgICApO1xuICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgIHRoaXMuY3VycmVudEZpbHRlci5jdXN0b21GaWx0ZXJzW2luZGV4XS52YWx1ZSA9IHZhbDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jdXJyZW50RmlsdGVyLmN1c3RvbUZpbHRlcnMucHVzaCh7XG4gICAgICAgIGZpZWxkOiBrZXksXG4gICAgICAgIHZhbHVlOiB2YWwsXG4gICAgICAgIG9wZXJhdG9yOiBPcGVyYXRvcnMuZXEsXG4gICAgICAgIGZpbHRlclRhcmdldDogRmlsdGVyVGFyZ2V0cy5VcmwsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZpbGxGcm9tRGVzY3JpcHRvcihncmlkRmlsdGVyOiBDb21wb3NpdGVGaWx0ZXJEZXNjcmlwdG9yKSB7XG4gICAgZ3JpZEZpbHRlcj8uZmlsdGVycy5mb3JFYWNoKFxuICAgICAgKGZpbHRlcjogQ29tcG9zaXRlRmlsdGVyRGVzY3JpcHRvciB8IEZpbHRlckRlc2NyaXB0b3IpID0+IHtcbiAgICAgICAgY29uc3QgZmlsdGVyRGVzY3JpcHRvciA9IGZpbHRlciBhcyBGaWx0ZXJEZXNjcmlwdG9yO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZmlsdGVyRGVzY3JpcHRvci5maWVsZCA9PT0gdGhpcy5kYXRlRmlsdGVyUGFyYW1ldGVyTmFtZSAmJlxuICAgICAgICAgIGZpbHRlckRlc2NyaXB0b3Iub3BlcmF0b3IgPT09IE9wZXJhdG9ycy5sdGVcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5jdXJyZW50RmlsdGVyLmRhdGVUbyA9IGZpbHRlckRlc2NyaXB0b3IudmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgZmlsdGVyRGVzY3JpcHRvci5maWVsZCA9PT0gdGhpcy5kYXRlRmlsdGVyUGFyYW1ldGVyTmFtZSAmJlxuICAgICAgICAgIGZpbHRlckRlc2NyaXB0b3Iub3BlcmF0b3IgPT09IE9wZXJhdG9ycy5ndGVcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5jdXJyZW50RmlsdGVyLmRhdGVGcm9tID0gZmlsdGVyRGVzY3JpcHRvci52YWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICBmaWx0ZXJEZXNjcmlwdG9yLmZpZWxkICYmXG4gICAgICAgICAgZmlsdGVyRGVzY3JpcHRvci5maWVsZCAhPT0gdGhpcy5kYXRlRmlsdGVyUGFyYW1ldGVyTmFtZVxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLnNldEZpZWxkRmlsdGVyKHtcbiAgICAgICAgICAgIGZpZWxkOiBmaWx0ZXJEZXNjcmlwdG9yLmZpZWxkIGFzIHN0cmluZyxcbiAgICAgICAgICAgIGZpbHRlclRhcmdldDogRmlsdGVyVGFyZ2V0cy5HcmlkLFxuICAgICAgICAgICAgb3BlcmF0b3I6IE9wZXJhdG9yc1tmaWx0ZXJEZXNjcmlwdG9yLm9wZXJhdG9yIGFzIHN0cmluZ10sXG4gICAgICAgICAgICB2YWx1ZTogZmlsdGVyRGVzY3JpcHRvci52YWx1ZSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3IgPSBmaWx0ZXIgYXMgQ29tcG9zaXRlRmlsdGVyRGVzY3JpcHRvcjtcbiAgICAgICAgaWYgKGNvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3IuZmlsdGVycykge1xuICAgICAgICAgIHRoaXMuZmlsbEZyb21EZXNjcmlwdG9yKGNvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3IpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHNldEZpZWxkRmlsdGVyKGZpbHRlcjogQ3VzdG9tRmlsdGVyKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmN1cnJlbnRGaWx0ZXIuY3VzdG9tRmlsdGVycy5maW5kSW5kZXgoXG4gICAgICAoeCkgPT4geC5maWVsZCA9PT0gZmlsdGVyLmZpZWxkICYmIHgub3BlcmF0b3IgPT09IGZpbHRlci5vcGVyYXRvcixcbiAgICApO1xuICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IHRoaXMuY3VycmVudEZpbHRlci5jdXN0b21GaWx0ZXJzW2luZGV4XS52YWx1ZXM7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuY3VycmVudEZpbHRlci5jdXN0b21GaWx0ZXJzW2luZGV4XS52YWx1ZTtcbiAgICAgIHRoaXMuY3VycmVudEZpbHRlci5jdXN0b21GaWx0ZXJzW2luZGV4XS52YWx1ZXMgPSB2YWx1ZXMgPyB2YWx1ZXMgOiBbXTtcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRGaWx0ZXIuY3VzdG9tRmlsdGVyc1tpbmRleF0udmFsdWVzLnB1c2godmFsdWUgYXMgc3RyaW5nKTtcbiAgICAgICAgdGhpcy5jdXJyZW50RmlsdGVyLmN1c3RvbUZpbHRlcnNbaW5kZXhdLnZhbHVlID0gbnVsbDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jdXJyZW50RmlsdGVyLmN1c3RvbUZpbHRlcnNbaW5kZXhdLnZhbHVlcy5wdXNoKFxuICAgICAgICBmaWx0ZXIudmFsdWUgYXMgc3RyaW5nLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jdXJyZW50RmlsdGVyLmN1c3RvbUZpbHRlcnMucHVzaChmaWx0ZXIpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject, from } from 'rxjs';
|
|
3
|
-
import { filter } from 'rxjs/operators';
|
|
4
|
-
import { AzureB2CProvider } from './../services/auth.providers/azureb2c.provider';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@azure/msal-angular";
|
|
7
|
-
import * as i2 from "../angular/services/settings.service";
|
|
8
|
-
import * as i3 from "./../angular/models/IndiginaConfiguration";
|
|
9
|
-
export class AuthProviderResolver {
|
|
10
|
-
constructor(msalService, settingsService, indiginaConfiguration) {
|
|
11
|
-
this.AuthProvider$ = new BehaviorSubject(null);
|
|
12
|
-
this.getProvider = () => this.AuthProvider$.pipe(filter((x) => !!x));
|
|
13
|
-
const provider = new AzureB2CProvider(msalService, settingsService, indiginaConfiguration);
|
|
14
|
-
from(provider.initialize()).subscribe(() => {
|
|
15
|
-
this.AuthProvider$.next(provider);
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: AuthProviderResolver, deps: [{ token: i1.MsalService }, { token: i2.SettingsService }, { token: i3.IndiginaConfiguration }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
19
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: AuthProviderResolver, providedIn: 'root' }); }
|
|
20
|
-
}
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: AuthProviderResolver, decorators: [{
|
|
22
|
-
type: Injectable,
|
|
23
|
-
args: [{
|
|
24
|
-
providedIn: 'root',
|
|
25
|
-
}]
|
|
26
|
-
}], ctorParameters: () => [{ type: i1.MsalService }, { type: i2.SettingsService }, { type: i3.IndiginaConfiguration }] });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1wcm92aWRlci5yZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvc2VydmljZXMvYXV0aC1wcm92aWRlci5yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7QUFNbEYsTUFBTSxPQUFPLG9CQUFvQjtJQUcvQixZQUNFLFdBQXdCLEVBQ3hCLGVBQWdDLEVBQ2hDLHFCQUE0QztRQUx0QyxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFlLElBQUksQ0FBQyxDQUFDO1FBY3pELGdCQUFXLEdBQUcsR0FBNkIsRUFBRSxDQUNsRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBUDFDLE1BQU0sUUFBUSxHQUFHLElBQUksZ0JBQWdCLENBQUMsV0FBVyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0FiVSxvQkFBb0I7a0hBQXBCLG9CQUFvQixjQUZuQixNQUFNOzsyRkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTXNhbFNlcnZpY2UgfSBmcm9tICdAYXp1cmUvbXNhbC1hbmd1bGFyJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgZnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vYW5ndWxhci9zZXJ2aWNlcy9zZXR0aW5ncy5zZXJ2aWNlJztcbmltcG9ydCB7IEF1dGhQcm92aWRlciB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGgucHJvdmlkZXJzL0F1dGhQcm92aWRlcic7XG5pbXBvcnQgeyBBenVyZUIyQ1Byb3ZpZGVyIH0gZnJvbSAnLi8uLi9zZXJ2aWNlcy9hdXRoLnByb3ZpZGVycy9henVyZWIyYy5wcm92aWRlcic7XG5pbXBvcnQgeyBJbmRpZ2luYUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLy4uL2FuZ3VsYXIvbW9kZWxzL0luZGlnaW5hQ29uZmlndXJhdGlvbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRoUHJvdmlkZXJSZXNvbHZlciB7XG4gIHByaXZhdGUgQXV0aFByb3ZpZGVyJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QXV0aFByb3ZpZGVyPihudWxsKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBtc2FsU2VydmljZTogTXNhbFNlcnZpY2UsXG4gICAgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgaW5kaWdpbmFDb25maWd1cmF0aW9uOiBJbmRpZ2luYUNvbmZpZ3VyYXRpb24sXG4gIClcbiAge1xuICAgICAgY29uc3QgcHJvdmlkZXIgPSBuZXcgQXp1cmVCMkNQcm92aWRlcihtc2FsU2VydmljZSwgc2V0dGluZ3NTZXJ2aWNlLCBpbmRpZ2luYUNvbmZpZ3VyYXRpb24pO1xuICAgICAgZnJvbShwcm92aWRlci5pbml0aWFsaXplKCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuQXV0aFByb3ZpZGVyJC5uZXh0KHByb3ZpZGVyKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldFByb3ZpZGVyID0gKCk6IE9ic2VydmFibGU8QXV0aFByb3ZpZGVyPiA9PlxuICAgIHRoaXMuQXV0aFByb3ZpZGVyJC5waXBlKGZpbHRlcigoeCkgPT4gISF4KSk7XG59XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export class AuthProvider {
|
|
2
|
-
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXV0aFByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoLnByb3ZpZGVycy9BdXRoUHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFnQixZQUFZO0NBTWpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQXV0aFByb3ZpZGVyIHtcbiAgcHVibGljIGFic3RyYWN0IGluaXRpYWxpemUoKTogUHJvbWlzZTxPYnNlcnZhYmxlPGJvb2xlYW4+PjtcbiAgcHVibGljIGFic3RyYWN0IGxvZ2luKCk7XG4gIHB1YmxpYyBhYnN0cmFjdCBsb2dvdXQoKTtcbiAgcHVibGljIGFic3RyYWN0IGlzVXNlckxvZ2dlZEluKCk6IGJvb2xlYW47XG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRBY2Nlc3NUb2tlbigpOiBPYnNlcnZhYmxlPHN0cmluZz47XG59XG4iXX0=
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { InteractionRequiredAuthError } from '@azure/msal-browser';
|
|
2
|
-
import { from, of } from 'rxjs';
|
|
3
|
-
import { AuthProvider } from './AuthProvider';
|
|
4
|
-
export class AzureB2CProvider extends AuthProvider {
|
|
5
|
-
constructor(authService, settingsService, indiginaConfiguration) {
|
|
6
|
-
super();
|
|
7
|
-
this.authService = authService;
|
|
8
|
-
this.settingsService = settingsService;
|
|
9
|
-
this.indiginaConfiguration = indiginaConfiguration;
|
|
10
|
-
this.isUserLoggedIn = () => !!this.authService.instance.getActiveAccount()?.localAccountId;
|
|
11
|
-
}
|
|
12
|
-
async initialize() {
|
|
13
|
-
await this.authService.instance.initialize();
|
|
14
|
-
return of(true);
|
|
15
|
-
}
|
|
16
|
-
login() {
|
|
17
|
-
this.authService.handleRedirectObservable().subscribe();
|
|
18
|
-
if (!this.isUserLoggedIn()) {
|
|
19
|
-
this.authService.loginRedirect().subscribe();
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
logout() {
|
|
23
|
-
this.settingsService.clearToken();
|
|
24
|
-
this.authService.logoutRedirect({
|
|
25
|
-
postLogoutRedirectUri: this.indiginaConfiguration.appSettings.azureB2C.logoutRedirectUri,
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
getAccessToken() {
|
|
29
|
-
const request = {
|
|
30
|
-
scopes: ['openid', 'offline_access', 'profile'],
|
|
31
|
-
};
|
|
32
|
-
return from(this.authService.instance
|
|
33
|
-
.acquireTokenSilent(request)
|
|
34
|
-
.then((authenticationResult) => {
|
|
35
|
-
const token = authenticationResult.idToken;
|
|
36
|
-
this.settingsService.setToken(token);
|
|
37
|
-
return token;
|
|
38
|
-
})
|
|
39
|
-
.catch(async (error) => {
|
|
40
|
-
if (error instanceof InteractionRequiredAuthError) {
|
|
41
|
-
await this.authService.instance.acquireTokenRedirect(request);
|
|
42
|
-
return this.settingsService.getToken();
|
|
43
|
-
}
|
|
44
|
-
}));
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp1cmViMmMucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3NlcnZpY2VzL2F1dGgucHJvdmlkZXJzL2F6dXJlYjJjLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxJQUFJLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc5QyxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsWUFBWTtJQUNoRCxZQUNVLFdBQXdCLEVBQ3hCLGVBQWdDLEVBQ2hDLHFCQUE0QztRQUVwRCxLQUFLLEVBQUUsQ0FBQztRQUpBLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBaUQvQyxtQkFBYyxHQUFHLEdBQVksRUFBRSxDQUNwQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxjQUFjLENBQUM7SUEvQ2pFLENBQUM7SUFFTSxLQUFLLENBQUMsVUFBVTtRQUNyQixNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRTdDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLFdBQVcsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3hELElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQy9DLENBQUM7SUFDSCxDQUFDO0lBRU0sTUFBTTtRQUNYLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUM7WUFDOUIscUJBQXFCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsaUJBQWlCO1NBQ3pGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxjQUFjO1FBQ25CLE1BQU0sT0FBTyxHQUFHO1lBQ2QsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsQ0FBQztTQUNoRCxDQUFDO1FBRUYsT0FBTyxJQUFJLENBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRO2FBQ3RCLGtCQUFrQixDQUFDLE9BQU8sQ0FBQzthQUMzQixJQUFJLENBQUMsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFO1lBQzdCLE1BQU0sS0FBSyxHQUFHLG9CQUFvQixDQUFDLE9BQU8sQ0FBQztZQUMzQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUVyQyxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQzthQUNELEtBQUssQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDckIsSUFBSSxLQUFLLFlBQVksNEJBQTRCLEVBQUUsQ0FBQztnQkFDbEQsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFOUQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ0osQ0FBQztDQUlGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTXNhbFNlcnZpY2UgfSBmcm9tICdAYXp1cmUvbXNhbC1hbmd1bGFyJztcbmltcG9ydCB7IEludGVyYWN0aW9uUmVxdWlyZWRBdXRoRXJyb3IgfSBmcm9tICdAYXp1cmUvbXNhbC1icm93c2VyJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9hbmd1bGFyL3NlcnZpY2VzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aFByb3ZpZGVyIH0gZnJvbSAnLi9BdXRoUHJvdmlkZXInO1xuaW1wb3J0IHsgSW5kaWdpbmFDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vLi4vYW5ndWxhci9tb2RlbHMvSW5kaWdpbmFDb25maWd1cmF0aW9uJztcblxuZXhwb3J0IGNsYXNzIEF6dXJlQjJDUHJvdmlkZXIgZXh0ZW5kcyBBdXRoUHJvdmlkZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBNc2FsU2VydmljZSxcbiAgICBwcml2YXRlIHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW5kaWdpbmFDb25maWd1cmF0aW9uOiBJbmRpZ2luYUNvbmZpZ3VyYXRpb24sXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgaW5pdGlhbGl6ZSgpOiBQcm9taXNlPE9ic2VydmFibGU8Ym9vbGVhbj4+IHtcbiAgICBhd2FpdCB0aGlzLmF1dGhTZXJ2aWNlLmluc3RhbmNlLmluaXRpYWxpemUoKTtcblxuICAgIHJldHVybiBvZih0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBsb2dpbigpIHtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmhhbmRsZVJlZGlyZWN0T2JzZXJ2YWJsZSgpLnN1YnNjcmliZSgpO1xuICAgIGlmICghdGhpcy5pc1VzZXJMb2dnZWRJbigpKSB7XG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ2luUmVkaXJlY3QoKS5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbG9nb3V0KCkge1xuICAgIHRoaXMuc2V0dGluZ3NTZXJ2aWNlLmNsZWFyVG9rZW4oKTtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ291dFJlZGlyZWN0KHtcbiAgICAgIHBvc3RMb2dvdXRSZWRpcmVjdFVyaTogdGhpcy5pbmRpZ2luYUNvbmZpZ3VyYXRpb24uYXBwU2V0dGluZ3MuYXp1cmVCMkMubG9nb3V0UmVkaXJlY3RVcmksXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QWNjZXNzVG9rZW4oKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICBjb25zdCByZXF1ZXN0ID0ge1xuICAgICAgc2NvcGVzOiBbJ29wZW5pZCcsICdvZmZsaW5lX2FjY2VzcycsICdwcm9maWxlJ10sXG4gICAgfTtcblxuICAgIHJldHVybiBmcm9tKFxuICAgICAgdGhpcy5hdXRoU2VydmljZS5pbnN0YW5jZVxuICAgICAgICAuYWNxdWlyZVRva2VuU2lsZW50KHJlcXVlc3QpXG4gICAgICAgIC50aGVuKChhdXRoZW50aWNhdGlvblJlc3VsdCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRva2VuID0gYXV0aGVudGljYXRpb25SZXN1bHQuaWRUb2tlbjtcbiAgICAgICAgICB0aGlzLnNldHRpbmdzU2VydmljZS5zZXRUb2tlbih0b2tlbik7XG5cbiAgICAgICAgICByZXR1cm4gdG9rZW47XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaChhc3luYyAoZXJyb3IpID0+IHtcbiAgICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBJbnRlcmFjdGlvblJlcXVpcmVkQXV0aEVycm9yKSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmF1dGhTZXJ2aWNlLmluc3RhbmNlLmFjcXVpcmVUb2tlblJlZGlyZWN0KHJlcXVlc3QpO1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zZXR0aW5nc1NlcnZpY2UuZ2V0VG9rZW4oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgaXNVc2VyTG9nZ2VkSW4gPSAoKTogYm9vbGVhbiA9PlxuICAgICEhdGhpcy5hdXRoU2VydmljZS5pbnN0YW5jZS5nZXRBY3RpdmVBY2NvdW50KCk/LmxvY2FsQWNjb3VudElkO1xufVxuIl19
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { BehaviorSubject } from 'rxjs';
|
|
2
|
-
import { map, mergeMap } from 'rxjs/operators';
|
|
3
|
-
import { endpoints } from './endpoints';
|
|
4
|
-
import { EventNames } from './signalr/EventNames';
|
|
5
|
-
const adminUriPart = '/admin/';
|
|
6
|
-
export class BaseAccountService {
|
|
7
|
-
constructor(resolver, httpService, settingsService, signalRService) {
|
|
8
|
-
this.resolver = resolver;
|
|
9
|
-
this.httpService = httpService;
|
|
10
|
-
this.settingsService = settingsService;
|
|
11
|
-
this.signalRService = signalRService;
|
|
12
|
-
this.user = new BehaviorSubject(null);
|
|
13
|
-
this.resolver
|
|
14
|
-
.getProvider()
|
|
15
|
-
.pipe(map((provider) => {
|
|
16
|
-
this.initialize(provider);
|
|
17
|
-
}))
|
|
18
|
-
.subscribe();
|
|
19
|
-
}
|
|
20
|
-
login() {
|
|
21
|
-
this.resolver
|
|
22
|
-
.getProvider()
|
|
23
|
-
.pipe(map((provider) => {
|
|
24
|
-
provider.login();
|
|
25
|
-
}))
|
|
26
|
-
.subscribe();
|
|
27
|
-
}
|
|
28
|
-
logout() {
|
|
29
|
-
this.settingsService.clearLoginAsUser();
|
|
30
|
-
this.resolver
|
|
31
|
-
.getProvider()
|
|
32
|
-
.pipe(map((provider) => {
|
|
33
|
-
provider.logout();
|
|
34
|
-
}))
|
|
35
|
-
.subscribe();
|
|
36
|
-
}
|
|
37
|
-
initialize(provider) {
|
|
38
|
-
this.getCurrentUser().subscribe((user) => {
|
|
39
|
-
if (!user) {
|
|
40
|
-
return;
|
|
41
|
-
}
|
|
42
|
-
const path = this.settingsService.getCallbackPath();
|
|
43
|
-
if (path) {
|
|
44
|
-
this.settingsService.clearCallbackPath();
|
|
45
|
-
window.location.href = window.location.origin + path;
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
if (this.isAdmin(user) &&
|
|
49
|
-
!window.location.pathname.startsWith(adminUriPart)) {
|
|
50
|
-
window.location.href = `${window.location.origin}${adminUriPart}`;
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
provider.getAccessToken().subscribe((token) => {
|
|
54
|
-
this.signalRService.startConnection(token);
|
|
55
|
-
this.signalRService
|
|
56
|
-
.on(EventNames.UserUpdated)
|
|
57
|
-
.subscribe(async () => {
|
|
58
|
-
provider.getAccessToken().subscribe((token) => {
|
|
59
|
-
this.signalRService.reconnect(token);
|
|
60
|
-
});
|
|
61
|
-
this.httpService
|
|
62
|
-
.get(endpoints.members.me)
|
|
63
|
-
.subscribe((user) => this.user.next(user));
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
getCurrentUser() {
|
|
69
|
-
return this.resolver.getProvider().pipe(mergeMap((provider) => {
|
|
70
|
-
if (this.user.getValue() || !provider.isUserLoggedIn()) {
|
|
71
|
-
return this.user;
|
|
72
|
-
}
|
|
73
|
-
return provider.getAccessToken().pipe(mergeMap(() => {
|
|
74
|
-
return this.httpService.get(endpoints.members.me).pipe(map((user) => {
|
|
75
|
-
this.user.next(user);
|
|
76
|
-
return user;
|
|
77
|
-
}));
|
|
78
|
-
}));
|
|
79
|
-
}));
|
|
80
|
-
}
|
|
81
|
-
isUserLoggedIn() {
|
|
82
|
-
return this.resolver
|
|
83
|
-
.getProvider()
|
|
84
|
-
.pipe(map((provider) => provider.isUserLoggedIn()));
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5hY2NvdW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3NlcnZpY2VzL2Jhc2UuYWNjb3VudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUsvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUdsRCxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUM7QUFFL0IsTUFBTSxPQUFnQixrQkFBa0I7SUFHdEMsWUFDUyxRQUE4QixFQUMzQixXQUF3QixFQUN4QixlQUFnQyxFQUNoQyxjQUE4QjtRQUhqQyxhQUFRLEdBQVIsUUFBUSxDQUFzQjtRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBTm5DLFNBQUksR0FBRyxJQUFJLGVBQWUsQ0FBSSxJQUFJLENBQUMsQ0FBQztRQVF6QyxJQUFJLENBQUMsUUFBUTthQUNWLFdBQVcsRUFBRTthQUNiLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQ0g7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxRQUFRO2FBQ1YsV0FBVyxFQUFFO2FBQ2IsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ2YsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUNIO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEMsSUFBSSxDQUFDLFFBQVE7YUFDVixXQUFXLEVBQUU7YUFDYixJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDZixRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQ0g7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRU8sVUFBVSxDQUFDLFFBQXNCO1FBQ3ZDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ1YsT0FBTztZQUNULENBQUM7WUFFRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3BELElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQ1QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2dCQUN6QyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7Z0JBRXJELE9BQU87WUFDVCxDQUFDO1lBRUQsSUFDRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDbEIsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLEVBQ2xELENBQUM7Z0JBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxZQUFZLEVBQUUsQ0FBQztnQkFFbEUsT0FBTztZQUNULENBQUM7WUFFRCxRQUFRLENBQUMsY0FBYyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQzVDLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMzQyxJQUFJLENBQUMsY0FBYztxQkFDaEIsRUFBRSxDQUFJLFVBQVUsQ0FBQyxXQUFXLENBQUM7cUJBQzdCLFNBQVMsQ0FBQyxLQUFLLElBQUksRUFBRTtvQkFDcEIsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO3dCQUM1QyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDdkMsQ0FBQyxDQUFDLENBQUM7b0JBQ0gsSUFBSSxDQUFDLFdBQVc7eUJBQ2IsR0FBRyxDQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO3lCQUM1QixTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQy9DLENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FDckMsUUFBUSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDcEIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUM7Z0JBQ3ZELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztZQUNuQixDQUFDO1lBRUQsT0FBTyxRQUFRLENBQUMsY0FBYyxFQUFFLENBQUMsSUFBSSxDQUNuQyxRQUFRLENBQUMsR0FBRyxFQUFFO2dCQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ3BELEdBQUcsQ0FBQyxDQUFDLElBQU8sRUFBRSxFQUFFO29CQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUVyQixPQUFPLElBQUksQ0FBQztnQkFDZCxDQUFDLENBQUMsQ0FDSCxDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU0sY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxRQUFRO2FBQ2pCLFdBQVcsRUFBRTthQUNiLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICcuLi9hbmd1bGFyL3NlcnZpY2VzL2h0dHAuc2VydmljZSc7XG5pbXBvcnQgeyBTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi9hbmd1bGFyL3NlcnZpY2VzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aFByb3ZpZGVyUmVzb2x2ZXIgfSBmcm9tICcuL2F1dGgtcHJvdmlkZXIucmVzb2x2ZXInO1xuaW1wb3J0IHsgQXV0aFByb3ZpZGVyIH0gZnJvbSAnLi9hdXRoLnByb3ZpZGVycy9BdXRoUHJvdmlkZXInO1xuaW1wb3J0IHsgZW5kcG9pbnRzIH0gZnJvbSAnLi9lbmRwb2ludHMnO1xuaW1wb3J0IHsgRXZlbnROYW1lcyB9IGZyb20gJy4vc2lnbmFsci9FdmVudE5hbWVzJztcbmltcG9ydCB7IFNpZ25hbFJTZXJ2aWNlIH0gZnJvbSAnLi9zaWduYWxyL3NpZ25hbHIuc2VydmljZSc7XG5cbmNvbnN0IGFkbWluVXJpUGFydCA9ICcvYWRtaW4vJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VBY2NvdW50U2VydmljZTxUPiB7XG4gIHB1YmxpYyB1c2VyID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUPihudWxsKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVzb2x2ZXI6IEF1dGhQcm92aWRlclJlc29sdmVyLFxuICAgIHByb3RlY3RlZCBodHRwU2VydmljZTogSHR0cFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBzaWduYWxSU2VydmljZTogU2lnbmFsUlNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMucmVzb2x2ZXJcbiAgICAgIC5nZXRQcm92aWRlcigpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChwcm92aWRlcikgPT4ge1xuICAgICAgICAgIHRoaXMuaW5pdGlhbGl6ZShwcm92aWRlcik7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbG9naW4oKSB7XG4gICAgdGhpcy5yZXNvbHZlclxuICAgICAgLmdldFByb3ZpZGVyKClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHByb3ZpZGVyKSA9PiB7XG4gICAgICAgICAgcHJvdmlkZXIubG9naW4oKTtcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBsb2dvdXQoKSB7XG4gICAgdGhpcy5zZXR0aW5nc1NlcnZpY2UuY2xlYXJMb2dpbkFzVXNlcigpO1xuICAgIHRoaXMucmVzb2x2ZXJcbiAgICAgIC5nZXRQcm92aWRlcigpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChwcm92aWRlcikgPT4ge1xuICAgICAgICAgIHByb3ZpZGVyLmxvZ291dCgpO1xuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdGlhbGl6ZShwcm92aWRlcjogQXV0aFByb3ZpZGVyKSB7XG4gICAgdGhpcy5nZXRDdXJyZW50VXNlcigpLnN1YnNjcmliZSgodXNlcikgPT4ge1xuICAgICAgaWYgKCF1c2VyKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcGF0aCA9IHRoaXMuc2V0dGluZ3NTZXJ2aWNlLmdldENhbGxiYWNrUGF0aCgpO1xuICAgICAgaWYgKHBhdGgpIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nc1NlcnZpY2UuY2xlYXJDYWxsYmFja1BhdGgoKTtcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgcGF0aDtcblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5pc0FkbWluKHVzZXIpICYmXG4gICAgICAgICF3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUuc3RhcnRzV2l0aChhZG1pblVyaVBhcnQpXG4gICAgICApIHtcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBgJHt3aW5kb3cubG9jYXRpb24ub3JpZ2lufSR7YWRtaW5VcmlQYXJ0fWA7XG5cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBwcm92aWRlci5nZXRBY2Nlc3NUb2tlbigpLnN1YnNjcmliZSgodG9rZW4pID0+IHtcbiAgICAgICAgdGhpcy5zaWduYWxSU2VydmljZS5zdGFydENvbm5lY3Rpb24odG9rZW4pO1xuICAgICAgICB0aGlzLnNpZ25hbFJTZXJ2aWNlXG4gICAgICAgICAgLm9uPFQ+KEV2ZW50TmFtZXMuVXNlclVwZGF0ZWQpXG4gICAgICAgICAgLnN1YnNjcmliZShhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICBwcm92aWRlci5nZXRBY2Nlc3NUb2tlbigpLnN1YnNjcmliZSgodG9rZW4pID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5zaWduYWxSU2VydmljZS5yZWNvbm5lY3QodG9rZW4pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmh0dHBTZXJ2aWNlXG4gICAgICAgICAgICAgIC5nZXQ8VD4oZW5kcG9pbnRzLm1lbWJlcnMubWUpXG4gICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHVzZXIpID0+IHRoaXMudXNlci5uZXh0KHVzZXIpKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0Q3VycmVudFVzZXIoKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZXIuZ2V0UHJvdmlkZXIoKS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKHByb3ZpZGVyKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnVzZXIuZ2V0VmFsdWUoKSB8fCAhcHJvdmlkZXIuaXNVc2VyTG9nZ2VkSW4oKSkge1xuICAgICAgICAgIHJldHVybiB0aGlzLnVzZXI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcHJvdmlkZXIuZ2V0QWNjZXNzVG9rZW4oKS5waXBlKFxuICAgICAgICAgIG1lcmdlTWFwKCgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmdldChlbmRwb2ludHMubWVtYmVycy5tZSkucGlwZShcbiAgICAgICAgICAgICAgbWFwKCh1c2VyOiBUKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51c2VyLm5leHQodXNlcik7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gdXNlcjtcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBpc1VzZXJMb2dnZWRJbigpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5yZXNvbHZlclxuICAgICAgLmdldFByb3ZpZGVyKClcbiAgICAgIC5waXBlKG1hcCgocHJvdmlkZXIpID0+IHByb3ZpZGVyLmlzVXNlckxvZ2dlZEluKCkpKTtcbiAgfVxuXG4gIHB1YmxpYyBhYnN0cmFjdCBpc0FkbWluKG1lbWJlcjogVCk6IGJvb2xlYW47XG59XG4iXX0=
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { toODataString } from '@progress/kendo-data-query';
|
|
2
|
-
export const endpoints = {
|
|
3
|
-
signalr: {
|
|
4
|
-
eventsHub: 'EventsHub',
|
|
5
|
-
},
|
|
6
|
-
oidc: {
|
|
7
|
-
config: 'oidc/config',
|
|
8
|
-
},
|
|
9
|
-
members: {
|
|
10
|
-
me: 'members/me',
|
|
11
|
-
},
|
|
12
|
-
admins: {
|
|
13
|
-
...buildEntityEndpoints('admins'),
|
|
14
|
-
roles: {
|
|
15
|
-
...buildEntityEndpoints('admins/roles'),
|
|
16
|
-
},
|
|
17
|
-
},
|
|
18
|
-
system: {
|
|
19
|
-
info: 'system/info',
|
|
20
|
-
},
|
|
21
|
-
firstUser: 'admins/first',
|
|
22
|
-
partners: buildEntityEndpoints('partners'),
|
|
23
|
-
permissions: {
|
|
24
|
-
all: (type) => `permissions/${type}s`,
|
|
25
|
-
member: (id) => `permissions/${id}`,
|
|
26
|
-
mine: 'permissions/me',
|
|
27
|
-
},
|
|
28
|
-
users: {
|
|
29
|
-
...buildEntityEndpoints('users'),
|
|
30
|
-
roles: {
|
|
31
|
-
...buildEntityEndpoints('users/roles'),
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
apiTokens: buildEntityEndpoints('apiTokens'),
|
|
35
|
-
};
|
|
36
|
-
const guidFormat = /'((\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1})'/g;
|
|
37
|
-
export function buildEntityEndpoints(name) {
|
|
38
|
-
return {
|
|
39
|
-
path: name,
|
|
40
|
-
query: (state) => `${name}?${toODataString(state, { utcDates: true }).replace(guidFormat, '$1')}`,
|
|
41
|
-
entityPath: (id) => `${name}/${id}`,
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
export function buildActivityEndpoints(name = '') {
|
|
45
|
-
return {
|
|
46
|
-
query: (state) => {
|
|
47
|
-
let uri = name.trim()
|
|
48
|
-
? `activities/${name}?${toODataString(state, { utcDates: true })}`
|
|
49
|
-
: `activities?${toODataString(state, { utcDates: true })}`;
|
|
50
|
-
return `${uri.replace(guidFormat, '$1')}`;
|
|
51
|
-
},
|
|
52
|
-
search: (state, searchTerm) => {
|
|
53
|
-
let uri = name.trim()
|
|
54
|
-
? `activities/${name}/search?${toODataString(state, { utcDates: true })}`
|
|
55
|
-
: `activities/search?${toODataString(state, { utcDates: true })}`;
|
|
56
|
-
if (searchTerm) {
|
|
57
|
-
uri += `&searchTerm=${searchTerm}`;
|
|
58
|
-
}
|
|
59
|
-
return uri;
|
|
60
|
-
},
|
|
61
|
-
detailedActivity: (id, partnerId) => {
|
|
62
|
-
let uri = name.trim()
|
|
63
|
-
? `activities/${name}/${id}`
|
|
64
|
-
: `activities/${id}`;
|
|
65
|
-
if (partnerId) {
|
|
66
|
-
uri += `/${partnerId}`;
|
|
67
|
-
}
|
|
68
|
-
return uri;
|
|
69
|
-
}
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5kcG9pbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi9zZXJ2aWNlcy9lbmRwb2ludHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFTLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBSWxFLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QixPQUFPLEVBQUU7UUFDUCxTQUFTLEVBQUUsV0FBVztLQUN2QjtJQUNELElBQUksRUFBRTtRQUNKLE1BQU0sRUFBRSxhQUFhO0tBQ3RCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsRUFBRSxFQUFFLFlBQVk7S0FDakI7SUFDRCxNQUFNLEVBQUU7UUFDTixHQUFHLG9CQUFvQixDQUFDLFFBQVEsQ0FBQztRQUNqQyxLQUFLLEVBQUU7WUFDTCxHQUFHLG9CQUFvQixDQUFDLGNBQWMsQ0FBQztTQUN4QztLQUNGO0lBQ0QsTUFBTSxFQUFFO1FBQ04sSUFBSSxFQUFFLGFBQWE7S0FDcEI7SUFDRCxTQUFTLEVBQUUsY0FBYztJQUN6QixRQUFRLEVBQUUsb0JBQW9CLENBQUMsVUFBVSxDQUFDO0lBQzFDLFdBQVcsRUFBRTtRQUNYLEdBQUcsRUFBRSxDQUFDLElBQWlCLEVBQUUsRUFBRSxDQUFDLGVBQWUsSUFBSSxHQUFHO1FBQ2xELE1BQU0sRUFBRSxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsZUFBZSxFQUFFLEVBQUU7UUFDM0MsSUFBSSxFQUFFLGdCQUFnQjtLQUN2QjtJQUNELEtBQUssRUFBRTtRQUNMLEdBQUcsb0JBQW9CLENBQUMsT0FBTyxDQUFDO1FBQ2hDLEtBQUssRUFBRTtZQUNMLEdBQUcsb0JBQW9CLENBQUMsYUFBYSxDQUFDO1NBQ3ZDO0tBQ0Y7SUFDRCxTQUFTLEVBQUUsb0JBQW9CLENBQUMsV0FBVyxDQUFDO0NBQzdDLENBQUM7QUFFRixNQUFNLFVBQVUsR0FBRyx3R0FBd0csQ0FBQztBQUM1SCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsSUFBWTtJQUMvQyxPQUFPO1FBQ0wsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsQ0FBQyxLQUFZLEVBQUUsRUFBRSxDQUN0QixHQUFHLElBQUksSUFBSSxhQUFhLENBQUMsS0FBSyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUN6RCxVQUFVLEVBQ1YsSUFBSSxDQUNMLEVBQUU7UUFDTCxVQUFVLEVBQUUsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxJQUFJLEVBQUUsRUFBRTtLQUM1QyxDQUFDO0FBQ0osQ0FBQztBQUNELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxPQUFlLEVBQUU7SUFDdEQsT0FBTztRQUNMLEtBQUssRUFBRSxDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ3RCLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ25CLENBQUMsQ0FBQyxjQUFjLElBQUksSUFBSSxhQUFhLENBQUMsS0FBSyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUU7Z0JBQ2xFLENBQUMsQ0FBQyxjQUFjLGFBQWEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBRTdELE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQzVDLENBQUM7UUFDRCxNQUFNLEVBQUUsQ0FBQyxLQUFZLEVBQUUsVUFBa0IsRUFBRSxFQUFFO1lBQzNDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ25CLENBQUMsQ0FBQyxjQUFjLElBQUksV0FBVyxhQUFhLENBQUMsS0FBSyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUU7Z0JBQ3pFLENBQUMsQ0FBQyxxQkFBcUIsYUFBYSxDQUFDLEtBQUssRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDcEUsSUFBSSxVQUFVLEVBQUUsQ0FBQztnQkFDZixHQUFHLElBQUksZUFBZSxVQUFVLEVBQUUsQ0FBQztZQUNyQyxDQUFDO1lBRUQsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDO1FBQ0QsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFVLEVBQUUsU0FBaUIsRUFBRSxFQUFFO1lBQ2xELElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ25CLENBQUMsQ0FBQyxjQUFjLElBQUksSUFBSSxFQUFFLEVBQUU7Z0JBQzVCLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDO1lBQ3ZCLElBQUksU0FBUyxFQUFFLENBQUM7Z0JBQ2QsR0FBRyxJQUFJLElBQUksU0FBUyxFQUFFLENBQUM7WUFDekIsQ0FBQztZQUVELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUVudGl0eUVuZHBvaW50cyB9IGZyb20gJy4vSUVudGl0eUVuZHBvaW50cyc7XG5pbXBvcnQgeyBTdGF0ZSwgdG9PRGF0YVN0cmluZyB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1kYXRhLXF1ZXJ5JztcbmltcG9ydCB7IE1lbWJlclR5cGVzIH0gZnJvbSAnLi4vbW9kZWxzL01lbWJlclR5cGVzJztcbmltcG9ydCB7IElBY3Rpdml0eUVuZHBvaW50cyB9IGZyb20gJy4vSUFjdGl2aXR5RW5kcG9pbnRzJztcblxuZXhwb3J0IGNvbnN0IGVuZHBvaW50cyA9IHtcbiAgc2lnbmFscjoge1xuICAgIGV2ZW50c0h1YjogJ0V2ZW50c0h1YicsXG4gIH0sXG4gIG9pZGM6IHtcbiAgICBjb25maWc6ICdvaWRjL2NvbmZpZycsXG4gIH0sXG4gIG1lbWJlcnM6IHtcbiAgICBtZTogJ21lbWJlcnMvbWUnLFxuICB9LFxuICBhZG1pbnM6IHtcbiAgICAuLi5idWlsZEVudGl0eUVuZHBvaW50cygnYWRtaW5zJyksXG4gICAgcm9sZXM6IHtcbiAgICAgIC4uLmJ1aWxkRW50aXR5RW5kcG9pbnRzKCdhZG1pbnMvcm9sZXMnKSxcbiAgICB9LFxuICB9LFxuICBzeXN0ZW06IHtcbiAgICBpbmZvOiAnc3lzdGVtL2luZm8nLFxuICB9LFxuICBmaXJzdFVzZXI6ICdhZG1pbnMvZmlyc3QnLFxuICBwYXJ0bmVyczogYnVpbGRFbnRpdHlFbmRwb2ludHMoJ3BhcnRuZXJzJyksXG4gIHBlcm1pc3Npb25zOiB7XG4gICAgYWxsOiAodHlwZTogTWVtYmVyVHlwZXMpID0+IGBwZXJtaXNzaW9ucy8ke3R5cGV9c2AsXG4gICAgbWVtYmVyOiAoaWQ6IHN0cmluZykgPT4gYHBlcm1pc3Npb25zLyR7aWR9YCxcbiAgICBtaW5lOiAncGVybWlzc2lvbnMvbWUnLFxuICB9LFxuICB1c2Vyczoge1xuICAgIC4uLmJ1aWxkRW50aXR5RW5kcG9pbnRzKCd1c2VycycpLFxuICAgIHJvbGVzOiB7XG4gICAgICAuLi5idWlsZEVudGl0eUVuZHBvaW50cygndXNlcnMvcm9sZXMnKSxcbiAgICB9LFxuICB9LFxuICBhcGlUb2tlbnM6IGJ1aWxkRW50aXR5RW5kcG9pbnRzKCdhcGlUb2tlbnMnKSxcbn07XG5cbmNvbnN0IGd1aWRGb3JtYXQgPSAvJygoXFx7KXswLDF9WzAtOWEtZkEtRl17OH1cXC1bMC05YS1mQS1GXXs0fVxcLVswLTlhLWZBLUZdezR9XFwtWzAtOWEtZkEtRl17NH1cXC1bMC05YS1mQS1GXXsxMn0oXFx9KXswLDF9KScvZztcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEVudGl0eUVuZHBvaW50cyhuYW1lOiBzdHJpbmcpOiBJRW50aXR5RW5kcG9pbnRzIHtcbiAgcmV0dXJuIHtcbiAgICBwYXRoOiBuYW1lLFxuICAgIHF1ZXJ5OiAoc3RhdGU6IFN0YXRlKSA9PlxuICAgICAgYCR7bmFtZX0/JHt0b09EYXRhU3RyaW5nKHN0YXRlLCB7IHV0Y0RhdGVzOiB0cnVlIH0pLnJlcGxhY2UoXG4gICAgICAgIGd1aWRGb3JtYXQsXG4gICAgICAgICckMScsXG4gICAgICApfWAsXG4gICAgZW50aXR5UGF0aDogKGlkOiBzdHJpbmcpID0+IGAke25hbWV9LyR7aWR9YCxcbiAgfTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBidWlsZEFjdGl2aXR5RW5kcG9pbnRzKG5hbWU6IHN0cmluZyA9ICcnKTogSUFjdGl2aXR5RW5kcG9pbnRzIHtcbiAgcmV0dXJuIHtcbiAgICBxdWVyeTogKHN0YXRlOiBTdGF0ZSkgPT4ge1xuICAgICAgbGV0IHVyaSA9IG5hbWUudHJpbSgpXG4gICAgICAgID8gYGFjdGl2aXRpZXMvJHtuYW1lfT8ke3RvT0RhdGFTdHJpbmcoc3RhdGUsIHsgdXRjRGF0ZXM6IHRydWUgfSl9YFxuICAgICAgICA6IGBhY3Rpdml0aWVzPyR7dG9PRGF0YVN0cmluZyhzdGF0ZSwgeyB1dGNEYXRlczogdHJ1ZSB9KX1gO1xuXG4gICAgICByZXR1cm4gYCR7dXJpLnJlcGxhY2UoZ3VpZEZvcm1hdCwgJyQxJyl9YDtcbiAgICB9LFxuICAgIHNlYXJjaDogKHN0YXRlOiBTdGF0ZSwgc2VhcmNoVGVybTogc3RyaW5nKSA9PiB7XG4gICAgICBsZXQgdXJpID0gbmFtZS50cmltKClcbiAgICAgICAgPyBgYWN0aXZpdGllcy8ke25hbWV9L3NlYXJjaD8ke3RvT0RhdGFTdHJpbmcoc3RhdGUsIHsgdXRjRGF0ZXM6IHRydWUgfSl9YFxuICAgICAgICA6IGBhY3Rpdml0aWVzL3NlYXJjaD8ke3RvT0RhdGFTdHJpbmcoc3RhdGUsIHsgdXRjRGF0ZXM6IHRydWUgfSl9YDtcbiAgICAgIGlmIChzZWFyY2hUZXJtKSB7XG4gICAgICAgIHVyaSArPSBgJnNlYXJjaFRlcm09JHtzZWFyY2hUZXJtfWA7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB1cmk7XG4gICAgfSxcbiAgICBkZXRhaWxlZEFjdGl2aXR5OiAoaWQ6IHN0cmluZywgcGFydG5lcklkOiBzdHJpbmcpID0+IHtcbiAgICAgIGxldCB1cmkgPSBuYW1lLnRyaW0oKVxuICAgICAgICA/IGBhY3Rpdml0aWVzLyR7bmFtZX0vJHtpZH1gXG4gICAgICAgIDogYGFjdGl2aXRpZXMvJHtpZH1gO1xuICAgICAgaWYgKHBhcnRuZXJJZCkge1xuICAgICAgICB1cmkgKz0gYC8ke3BhcnRuZXJJZH1gO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdXJpO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
export class EntityService {
|
|
2
|
-
constructor(httpService, endpoints) {
|
|
3
|
-
this.httpService = httpService;
|
|
4
|
-
this.endpoints = endpoints;
|
|
5
|
-
}
|
|
6
|
-
getPage(state, urlParams) {
|
|
7
|
-
return this.httpService.get(applyUrlParams(this.endpoints.query(state), urlParams));
|
|
8
|
-
}
|
|
9
|
-
get(id, urlParams) {
|
|
10
|
-
return this.httpService.get(applyUrlParams(this.endpoints.entityPath(id), urlParams));
|
|
11
|
-
}
|
|
12
|
-
delete(id, urlParams) {
|
|
13
|
-
return this.httpService.delete(applyUrlParams(this.endpoints.entityPath(id), urlParams));
|
|
14
|
-
}
|
|
15
|
-
save(model, urlParams) {
|
|
16
|
-
if (model.id) {
|
|
17
|
-
return this.httpService.put(applyUrlParams(this.endpoints.entityPath(model.id), urlParams), model);
|
|
18
|
-
}
|
|
19
|
-
return this.httpService.post(applyUrlParams(this.endpoints.path, urlParams), model);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
function applyUrlParams(url, urlParams) {
|
|
23
|
-
Object.keys(urlParams || {}).forEach((key) => {
|
|
24
|
-
url = url.replace(`{${key}}`, urlParams[key]);
|
|
25
|
-
});
|
|
26
|
-
return url;
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3NlcnZpY2VzL2VudGl0eS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVNBLE1BQU0sT0FBZ0IsYUFBYTtJQUdqQyxZQUNZLFdBQXdCLEVBQ3hCLFNBQTJCO1FBRDNCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBQ3BDLENBQUM7SUFFSixPQUFPLENBQUMsS0FBWSxFQUFFLFNBQXFCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQ3pCLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FDdkQsQ0FBQztJQUNKLENBQUM7SUFFRCxHQUFHLENBQUMsRUFBVSxFQUFFLFNBQXFCO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQ3pCLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FDekQsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsRUFBVSxFQUFFLFNBQXFCO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQzVCLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FDekQsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBUSxFQUFFLFNBQXFCO1FBQ2xDLElBQUksS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FDekIsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLENBQUMsRUFDOUQsS0FBSyxDQUNOLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDMUIsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUM5QyxLQUFLLENBQ04sQ0FBQztJQUNKLENBQUM7Q0FDRjtBQUVELFNBQVMsY0FBYyxDQUFDLEdBQVcsRUFBRSxTQUFxQjtJQUN4RCxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUMzQyxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUVudGl0eVNlcnZpY2UgfSBmcm9tICcuL0lFbnRpdHlTZXJ2aWNlJztcbmltcG9ydCB7IFBhZ2UgfSBmcm9tICcuLi9tb2RlbHMvUGFnZSc7XG5pbXBvcnQgeyBJRW50aXR5RW5kcG9pbnRzIH0gZnJvbSAnLi9JRW50aXR5RW5kcG9pbnRzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN0YXRlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWRhdGEtcXVlcnkvZGlzdC9ucG0vc3RhdGUnO1xuaW1wb3J0IHsgSWRlbnRpZmllZE1vZGVsIH0gZnJvbSAnLi4vYW5ndWxhci9tb2RlbHMvSWRlbnRpZmllZE1vZGVsJztcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi4vYW5ndWxhci9zZXJ2aWNlcy9odHRwLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXJsUGFyYW1zIH0gZnJvbSAnLi91cmwtcGFyYW1zLm1vZGVsJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEVudGl0eVNlcnZpY2U8VCBleHRlbmRzIElkZW50aWZpZWRNb2RlbD5cbiAgaW1wbGVtZW50cyBJRW50aXR5U2VydmljZTxUPlxue1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaHR0cFNlcnZpY2U6IEh0dHBTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBlbmRwb2ludHM6IElFbnRpdHlFbmRwb2ludHMsXG4gICkge31cblxuICBnZXRQYWdlKHN0YXRlOiBTdGF0ZSwgdXJsUGFyYW1zPzogVXJsUGFyYW1zKTogT2JzZXJ2YWJsZTxQYWdlPFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuZ2V0PFBhZ2U8VD4+KFxuICAgICAgYXBwbHlVcmxQYXJhbXModGhpcy5lbmRwb2ludHMucXVlcnkoc3RhdGUpLCB1cmxQYXJhbXMpLFxuICAgICk7XG4gIH1cblxuICBnZXQoaWQ6IHN0cmluZywgdXJsUGFyYW1zPzogVXJsUGFyYW1zKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuZ2V0PFQ+KFxuICAgICAgYXBwbHlVcmxQYXJhbXModGhpcy5lbmRwb2ludHMuZW50aXR5UGF0aChpZCksIHVybFBhcmFtcyksXG4gICAgKTtcbiAgfVxuXG4gIGRlbGV0ZShpZDogc3RyaW5nLCB1cmxQYXJhbXM/OiBVcmxQYXJhbXMpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmRlbGV0ZShcbiAgICAgIGFwcGx5VXJsUGFyYW1zKHRoaXMuZW5kcG9pbnRzLmVudGl0eVBhdGgoaWQpLCB1cmxQYXJhbXMpLFxuICAgICk7XG4gIH1cblxuICBzYXZlKG1vZGVsOiBULCB1cmxQYXJhbXM/OiBVcmxQYXJhbXMpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICBpZiAobW9kZWwuaWQpIHtcbiAgICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLnB1dChcbiAgICAgICAgYXBwbHlVcmxQYXJhbXModGhpcy5lbmRwb2ludHMuZW50aXR5UGF0aChtb2RlbC5pZCksIHVybFBhcmFtcyksXG4gICAgICAgIG1vZGVsLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5wb3N0KFxuICAgICAgYXBwbHlVcmxQYXJhbXModGhpcy5lbmRwb2ludHMucGF0aCwgdXJsUGFyYW1zKSxcbiAgICAgIG1vZGVsLFxuICAgICk7XG4gIH1cbn1cblxuZnVuY3Rpb24gYXBwbHlVcmxQYXJhbXModXJsOiBzdHJpbmcsIHVybFBhcmFtcz86IFVybFBhcmFtcyk6IHN0cmluZyB7XG4gIE9iamVjdC5rZXlzKHVybFBhcmFtcyB8fCB7fSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgdXJsID0gdXJsLnJlcGxhY2UoYHske2tleX19YCwgdXJsUGFyYW1zW2tleV0pO1xuICB9KTtcblxuICByZXR1cm4gdXJsO1xufVxuIl19
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export const getValueFromFilterByField = (field, filter) => {
|
|
2
|
-
if (filter?.filters) {
|
|
3
|
-
const matchingFilter = filter.filters.find((desc) => desc.field === field);
|
|
4
|
-
return matchingFilter?.value;
|
|
5
|
-
}
|
|
6
|
-
return '';
|
|
7
|
-
};
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi9zZXJ2aWNlcy9maWx0ZXItdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxLQUFhLEVBQUUsTUFBaUMsRUFBVSxFQUFFO0lBQ3BHLElBQUksTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLE1BQU0sY0FBYyxHQUE2RCxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDbEcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFFLElBQXlCLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FDckQsQ0FBQztRQUVGLE9BQVEsY0FBbUMsRUFBRSxLQUFLLENBQUM7SUFDckQsQ0FBQztJQUVELE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9zaXRlRmlsdGVyRGVzY3JpcHRvcixcbiAgRmlsdGVyRGVzY3JpcHRvcixcbn0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWRhdGEtcXVlcnknO1xuXG5leHBvcnQgY29uc3QgZ2V0VmFsdWVGcm9tRmlsdGVyQnlGaWVsZCA9IChmaWVsZDogc3RyaW5nLCBmaWx0ZXI6IENvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3IpOiBzdHJpbmcgPT4ge1xuICBpZiAoZmlsdGVyPy5maWx0ZXJzKSB7XG4gICAgY29uc3QgbWF0Y2hpbmdGaWx0ZXI6IENvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3IgfCBGaWx0ZXJEZXNjcmlwdG9yIHwgdW5kZWZpbmVkID0gZmlsdGVyLmZpbHRlcnMuZmluZChcbiAgICAgIChkZXNjKSA9PiAoZGVzYyBhcyBGaWx0ZXJEZXNjcmlwdG9yKS5maWVsZCA9PT0gZmllbGQsXG4gICAgKTtcblxuICAgIHJldHVybiAobWF0Y2hpbmdGaWx0ZXIgYXMgRmlsdGVyRGVzY3JpcHRvcik/LnZhbHVlO1xuICB9XG5cbiAgcmV0dXJuICcnO1xufTtcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXBhZ2Uuc2VydmljZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3NlcnZpY2VzL2dldC1wYWdlLnNlcnZpY2UuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGF0ZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1kYXRhLXF1ZXJ5JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBhZ2UgfSBmcm9tICcuLi9tb2RlbHMvUGFnZSc7XG5pbXBvcnQgeyBVcmxQYXJhbXMgfSBmcm9tICcuL3VybC1wYXJhbXMubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElHZXRQYWdlU2VydmljZTxUPiB7XG4gIGdldFBhZ2Uoc3RhdGU6IFN0YXRlLCB1cmxQYXJhbXM/OiBVcmxQYXJhbXMpOiBPYnNlcnZhYmxlPFBhZ2U8VD4+O1xufVxuIl19
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { EntityService } from './entity.service';
|
|
3
|
-
import { endpoints } from './endpoints';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "../angular/services/http.service";
|
|
6
|
-
export class PartnerService extends EntityService {
|
|
7
|
-
constructor(httpService) {
|
|
8
|
-
super(httpService, endpoints.partners);
|
|
9
|
-
}
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PartnerService, deps: [{ token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
11
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PartnerService }); }
|
|
12
|
-
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PartnerService, decorators: [{
|
|
14
|
-
type: Injectable
|
|
15
|
-
}], ctorParameters: () => [{ type: i1.HttpService }] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFydG5lci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi9zZXJ2aWNlcy9wYXJ0bmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBR3hDLE1BQU0sT0FBTyxjQUFlLFNBQVEsYUFBeUI7SUFDM0QsWUFBWSxXQUF3QjtRQUNsQyxLQUFLLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN6QyxDQUFDOzhHQUhVLGNBQWM7a0hBQWQsY0FBYzs7MkZBQWQsY0FBYztrQkFEMUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5hbWVkTW9kZWwgfSBmcm9tICcuLy4uL2FuZ3VsYXIvbW9kZWxzL05hbWVkTW9kZWwnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRW50aXR5U2VydmljZSB9IGZyb20gJy4vZW50aXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICcuLi9hbmd1bGFyL3NlcnZpY2VzL2h0dHAuc2VydmljZSc7XG5pbXBvcnQgeyBlbmRwb2ludHMgfSBmcm9tICcuL2VuZHBvaW50cyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQYXJ0bmVyU2VydmljZSBleHRlbmRzIEVudGl0eVNlcnZpY2U8TmFtZWRNb2RlbD4ge1xuICBjb25zdHJ1Y3RvcihodHRwU2VydmljZTogSHR0cFNlcnZpY2UpIHtcbiAgICBzdXBlcihodHRwU2VydmljZSwgZW5kcG9pbnRzLnBhcnRuZXJzKTtcbiAgfVxufVxuIl19
|