@csmart/ngc-smart-core 0.7.95 → 1.13.2
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/csmart-ngc-smart-core.d.ts +1 -5
- package/esm2020/csmart-ngc-smart-core.mjs +5 -0
- package/esm2020/lib/ngc-smart-core.module.mjs +97 -0
- package/esm2020/lib/smart-auth/smart-access-control-config.mjs +12 -0
- package/esm2020/lib/smart-auth/smart-access-control.directive.mjs +40 -0
- package/esm2020/lib/smart-auth/smart-auth.service.mjs +479 -0
- package/esm2020/lib/smart-auth/smart-authorization-guard.service.mjs +35 -0
- package/esm2020/lib/smart-auth/smart-error.component.mjs +37 -0
- package/esm2020/lib/smart-auth/smart-login-staff-resolver.service.mjs +59 -0
- package/esm2020/lib/smart-auth/smart-selected-offender-resolver.service.mjs +49 -0
- package/esm2020/lib/smart-navbar/smart-navbar-config.mjs +2 -0
- package/esm2020/lib/smart-navbar/smart-navbar.component.mjs +132 -0
- package/esm2020/lib/smart-navbar/smart-navbar.service.mjs +63 -0
- package/esm2020/lib/smart-offender-header/smart-offender-header.component.mjs +151 -0
- package/esm2020/lib/smart-offender-header/smart-offender-header.service.mjs +41 -0
- package/esm2020/lib/smart-staff-offender-options/smart-staff-offender-options-resolver.service.mjs +25 -0
- package/esm2020/lib/smart-staff-offender-options/smart-staff-offender-options.component.mjs +78 -0
- package/esm2020/lib/smart-staff-offender-options/smart-staff-offender-options.service.mjs +134 -0
- package/esm2020/lib/smart-storage/smart-storage-model.mjs +30 -0
- package/esm2020/lib/smart-storage/xdm.service.mjs +158 -0
- package/esm2020/public-api.mjs +20 -0
- package/fesm2015/csmart-ngc-smart-core.mjs +1529 -0
- package/fesm2015/csmart-ngc-smart-core.mjs.map +1 -0
- package/fesm2020/csmart-ngc-smart-core.mjs +1514 -0
- package/fesm2020/csmart-ngc-smart-core.mjs.map +1 -0
- package/lib/ngc-smart-core.module.d.ts +18 -0
- package/lib/smart-auth/smart-access-control.directive.d.ts +3 -0
- package/lib/smart-auth/smart-auth.service.d.ts +4 -0
- package/lib/smart-auth/smart-authorization-guard.service.d.ts +3 -0
- package/lib/smart-auth/smart-error.component.d.ts +3 -0
- package/lib/smart-auth/smart-login-staff-resolver.service.d.ts +3 -0
- package/lib/smart-auth/smart-selected-offender-resolver.service.d.ts +3 -0
- package/lib/smart-navbar/smart-navbar.component.d.ts +6 -3
- package/lib/smart-navbar/smart-navbar.service.d.ts +3 -0
- package/lib/smart-offender-header/smart-offender-header.component.d.ts +4 -1
- package/lib/smart-offender-header/smart-offender-header.service.d.ts +3 -0
- package/lib/smart-staff-offender-options/smart-staff-offender-options-resolver.service.d.ts +3 -0
- package/lib/smart-staff-offender-options/smart-staff-offender-options.component.d.ts +3 -0
- package/lib/smart-staff-offender-options/smart-staff-offender-options.service.d.ts +6 -3
- package/lib/smart-storage/xdm.service.d.ts +3 -0
- package/package.json +25 -14
- package/public-api.d.ts +3 -0
- package/bundles/csmart-ngc-smart-core.umd.js +0 -2620
- package/bundles/csmart-ngc-smart-core.umd.js.map +0 -1
- package/bundles/csmart-ngc-smart-core.umd.min.js +0 -2
- package/bundles/csmart-ngc-smart-core.umd.min.js.map +0 -1
- package/csmart-ngc-smart-core.metadata.json +0 -1
- package/esm2015/csmart-ngc-smart-core.js +0 -15
- package/esm2015/lib/ngc-smart-core.module.js +0 -59
- package/esm2015/lib/smart-auth/smart-access-control-config.js +0 -32
- package/esm2015/lib/smart-auth/smart-access-control.directive.js +0 -70
- package/esm2015/lib/smart-auth/smart-auth.service.js +0 -693
- package/esm2015/lib/smart-auth/smart-authorization-guard.service.js +0 -63
- package/esm2015/lib/smart-auth/smart-error.component.js +0 -77
- package/esm2015/lib/smart-auth/smart-login-staff-resolver.service.js +0 -94
- package/esm2015/lib/smart-auth/smart-selected-offender-resolver.service.js +0 -101
- package/esm2015/lib/smart-navbar/smart-navbar-config.js +0 -22
- package/esm2015/lib/smart-navbar/smart-navbar.component.js +0 -224
- package/esm2015/lib/smart-navbar/smart-navbar.service.js +0 -89
- package/esm2015/lib/smart-offender-header/smart-offender-header.component.js +0 -253
- package/esm2015/lib/smart-offender-header/smart-offender-header.service.js +0 -85
- package/esm2015/lib/smart-staff-offender-options/smart-staff-offender-options-resolver.service.js +0 -49
- package/esm2015/lib/smart-staff-offender-options/smart-staff-offender-options.component.js +0 -151
- package/esm2015/lib/smart-staff-offender-options/smart-staff-offender-options.service.js +0 -222
- package/esm2015/lib/smart-storage/smart-storage-model.js +0 -131
- package/esm2015/lib/smart-storage/xdm.service.js +0 -317
- package/esm2015/public-api.js +0 -22
- package/esm5/csmart-ngc-smart-core.js +0 -15
- package/esm5/lib/ngc-smart-core.module.js +0 -63
- package/esm5/lib/smart-auth/smart-access-control-config.js +0 -32
- package/esm5/lib/smart-auth/smart-access-control.directive.js +0 -74
- package/esm5/lib/smart-auth/smart-auth.service.js +0 -762
- package/esm5/lib/smart-auth/smart-authorization-guard.service.js +0 -67
- package/esm5/lib/smart-auth/smart-error.component.js +0 -83
- package/esm5/lib/smart-auth/smart-login-staff-resolver.service.js +0 -98
- package/esm5/lib/smart-auth/smart-selected-offender-resolver.service.js +0 -108
- package/esm5/lib/smart-navbar/smart-navbar-config.js +0 -22
- package/esm5/lib/smart-navbar/smart-navbar.component.js +0 -251
- package/esm5/lib/smart-navbar/smart-navbar.service.js +0 -114
- package/esm5/lib/smart-offender-header/smart-offender-header.component.js +0 -283
- package/esm5/lib/smart-offender-header/smart-offender-header.service.js +0 -76
- package/esm5/lib/smart-staff-offender-options/smart-staff-offender-options-resolver.service.js +0 -52
- package/esm5/lib/smart-staff-offender-options/smart-staff-offender-options.component.js +0 -165
- package/esm5/lib/smart-staff-offender-options/smart-staff-offender-options.service.js +0 -232
- package/esm5/lib/smart-storage/smart-storage-model.js +0 -155
- package/esm5/lib/smart-storage/xdm.service.js +0 -389
- package/esm5/public-api.js +0 -22
- package/fesm2015/csmart-ngc-smart-core.js +0 -2231
- package/fesm2015/csmart-ngc-smart-core.js.map +0 -1
- package/fesm5/csmart-ngc-smart-core.js +0 -2502
- package/fesm5/csmart-ngc-smart-core.js.map +0 -1
|
@@ -1,283 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* Generated from: lib/smart-offender-header/smart-offender-header.component.ts
|
|
4
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
5
|
-
*/
|
|
6
|
-
import * as tslib_1 from "tslib";
|
|
7
|
-
import { Component } from '@angular/core';
|
|
8
|
-
import { XdmService } from '../smart-storage/xdm.service';
|
|
9
|
-
import { MsalService } from '@azure/msal-angular';
|
|
10
|
-
import { FormControl } from '@angular/forms';
|
|
11
|
-
import { SmartOffenderHeaderService } from './smart-offender-header.service';
|
|
12
|
-
import { Router } from '@angular/router';
|
|
13
|
-
var SmartOffenderHeaderComponent = /** @class */ (function () {
|
|
14
|
-
function SmartOffenderHeaderComponent(xdmService, authnService, smartOffenderHeaderService, router) {
|
|
15
|
-
this.xdmService = xdmService;
|
|
16
|
-
this.authnService = authnService;
|
|
17
|
-
this.smartOffenderHeaderService = smartOffenderHeaderService;
|
|
18
|
-
this.router = router;
|
|
19
|
-
this.selectedOffenderControl$ = new FormControl();
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* @return {?}
|
|
23
|
-
*/
|
|
24
|
-
SmartOffenderHeaderComponent.prototype.ngOnInit = /**
|
|
25
|
-
* @return {?}
|
|
26
|
-
*/
|
|
27
|
-
function () {
|
|
28
|
-
var _this = this;
|
|
29
|
-
this.isAuthenticated = this.authnService.getAccount() ? true : false;
|
|
30
|
-
this.xdmService.getLoginStaff().then((/**
|
|
31
|
-
* @param {?} loginStaff
|
|
32
|
-
* @return {?}
|
|
33
|
-
*/
|
|
34
|
-
function (loginStaff) {
|
|
35
|
-
_this.loginStaff = loginStaff ? loginStaff : null;
|
|
36
|
-
}));
|
|
37
|
-
this.xdmService.getSelectedOffender().then((/**
|
|
38
|
-
* @param {?} selectedOffender
|
|
39
|
-
* @return {?}
|
|
40
|
-
*/
|
|
41
|
-
function (selectedOffender) {
|
|
42
|
-
_this.selectedOffender =
|
|
43
|
-
selectedOffender && selectedOffender.offenderId
|
|
44
|
-
? selectedOffender
|
|
45
|
-
: null;
|
|
46
|
-
}));
|
|
47
|
-
this.subscription = this.xdmService
|
|
48
|
-
.getOffenderUpdate()
|
|
49
|
-
.subscribe((/**
|
|
50
|
-
* @param {?} selectedOffender
|
|
51
|
-
* @return {?}
|
|
52
|
-
*/
|
|
53
|
-
function (selectedOffender) {
|
|
54
|
-
_this.selectedOffender = selectedOffender;
|
|
55
|
-
_this.setSelectedOffenderControl();
|
|
56
|
-
}));
|
|
57
|
-
this.xdmService.getOffenderQuery().then((/**
|
|
58
|
-
* @param {?} offenderQuery
|
|
59
|
-
* @return {?}
|
|
60
|
-
*/
|
|
61
|
-
function (offenderQuery) {
|
|
62
|
-
if (offenderQuery) {
|
|
63
|
-
_this.offenderQueryList = offenderQuery.offenders;
|
|
64
|
-
_this.setSelectedOffenderControl();
|
|
65
|
-
}
|
|
66
|
-
}));
|
|
67
|
-
this.offenderQuerySubscription = this.xdmService.getOffenderQueryUpdate()
|
|
68
|
-
.subscribe((/**
|
|
69
|
-
* @param {?} offenderList
|
|
70
|
-
* @return {?}
|
|
71
|
-
*/
|
|
72
|
-
function (offenderList) {
|
|
73
|
-
if (offenderList && offenderList.offenders) {
|
|
74
|
-
_this.offenderQueryList = tslib_1.__spread(offenderList.offenders);
|
|
75
|
-
}
|
|
76
|
-
}));
|
|
77
|
-
this.selectedOffenderControl$.valueChanges.subscribe((/**
|
|
78
|
-
* @param {?} o
|
|
79
|
-
* @return {?}
|
|
80
|
-
*/
|
|
81
|
-
function (o) {
|
|
82
|
-
return _this.onOffenderSelected(o);
|
|
83
|
-
}));
|
|
84
|
-
this.router.routeReuseStrategy.shouldReuseRoute = (/**
|
|
85
|
-
* @return {?}
|
|
86
|
-
*/
|
|
87
|
-
function () {
|
|
88
|
-
return false;
|
|
89
|
-
});
|
|
90
|
-
};
|
|
91
|
-
/**
|
|
92
|
-
* @return {?}
|
|
93
|
-
*/
|
|
94
|
-
SmartOffenderHeaderComponent.prototype.ngOnDestroy = /**
|
|
95
|
-
* @return {?}
|
|
96
|
-
*/
|
|
97
|
-
function () {
|
|
98
|
-
this.subscription.unsubscribe();
|
|
99
|
-
};
|
|
100
|
-
/**
|
|
101
|
-
* @private
|
|
102
|
-
* @param {?} offender
|
|
103
|
-
* @return {?}
|
|
104
|
-
*/
|
|
105
|
-
SmartOffenderHeaderComponent.prototype.onOffenderSelected = /**
|
|
106
|
-
* @private
|
|
107
|
-
* @param {?} offender
|
|
108
|
-
* @return {?}
|
|
109
|
-
*/
|
|
110
|
-
function (offender) {
|
|
111
|
-
if (offender) {
|
|
112
|
-
// const o = offender.offenderName.split(',');
|
|
113
|
-
// if (o.length === 2) {
|
|
114
|
-
// const offenderName = `${o[1]} ${o[0]}`;
|
|
115
|
-
// this.selectedOffender = {
|
|
116
|
-
// offenderId: offender.offenderId,
|
|
117
|
-
// name: offenderName,
|
|
118
|
-
// pdId: offender.pdId,
|
|
119
|
-
// birthDate: offender.birthDate,
|
|
120
|
-
// gender: offender.genderCode,
|
|
121
|
-
// assignmentStaffRelationId: '',
|
|
122
|
-
// intakeFlag: this.loginStaff
|
|
123
|
-
// ? this.hasIntakeRole(this.loginStaff.roles)
|
|
124
|
-
// : false,
|
|
125
|
-
// } as SelectedOffender;
|
|
126
|
-
this.selectedOffender = offender;
|
|
127
|
-
this.xdmService.setSelectedOffender(this.selectedOffender);
|
|
128
|
-
this.reloadCurrentRoute();
|
|
129
|
-
}
|
|
130
|
-
};
|
|
131
|
-
/**
|
|
132
|
-
* @private
|
|
133
|
-
* @return {?}
|
|
134
|
-
*/
|
|
135
|
-
SmartOffenderHeaderComponent.prototype.setSelectedOffenderControl = /**
|
|
136
|
-
* @private
|
|
137
|
-
* @return {?}
|
|
138
|
-
*/
|
|
139
|
-
function () {
|
|
140
|
-
var _this = this;
|
|
141
|
-
if (this.selectedOffender &&
|
|
142
|
-
this.offenderQueryList &&
|
|
143
|
-
this.offenderQueryList.length > 0) {
|
|
144
|
-
/** @type {?} */
|
|
145
|
-
var o = this.offenderQueryList.find((/**
|
|
146
|
-
* @param {?} x
|
|
147
|
-
* @return {?}
|
|
148
|
-
*/
|
|
149
|
-
function (x) { return x.offenderId === _this.selectedOffender.offenderId; }));
|
|
150
|
-
if (o) {
|
|
151
|
-
this.selectedOffenderControl$.setValue(o, { emitEvent: false });
|
|
152
|
-
}
|
|
153
|
-
if (!o && this.offenderQueryList.length > 0) {
|
|
154
|
-
this.selectedOffenderControl$.setValue(this.offenderQueryList[0], {
|
|
155
|
-
emitEvent: false,
|
|
156
|
-
});
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
};
|
|
160
|
-
/**
|
|
161
|
-
* @private
|
|
162
|
-
* @return {?}
|
|
163
|
-
*/
|
|
164
|
-
SmartOffenderHeaderComponent.prototype.reloadCurrentRoute = /**
|
|
165
|
-
* @private
|
|
166
|
-
* @return {?}
|
|
167
|
-
*/
|
|
168
|
-
function () {
|
|
169
|
-
try {
|
|
170
|
-
/** @type {?} */
|
|
171
|
-
var urlTree = this.router.parseUrl(this.router.url);
|
|
172
|
-
if (urlTree
|
|
173
|
-
&& urlTree.root
|
|
174
|
-
&& urlTree.root.segments
|
|
175
|
-
&& urlTree.root.segments.length > 1) {
|
|
176
|
-
this.router.navigate([urlTree.root.segments[0].path]);
|
|
177
|
-
}
|
|
178
|
-
else if (urlTree
|
|
179
|
-
&& urlTree.root
|
|
180
|
-
&& urlTree.root.children
|
|
181
|
-
&& urlTree.root.children.primary
|
|
182
|
-
&& urlTree.root.children.primary.segments
|
|
183
|
-
&& urlTree.root.children.primary.segments.length > 1) {
|
|
184
|
-
this.router.navigate([urlTree.root.children.primary.segments[0].path]);
|
|
185
|
-
}
|
|
186
|
-
else {
|
|
187
|
-
this.router.navigate([this.router.url]);
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
catch (_a) {
|
|
191
|
-
this.router.navigateByUrl('/');
|
|
192
|
-
}
|
|
193
|
-
};
|
|
194
|
-
/**
|
|
195
|
-
* @private
|
|
196
|
-
* @param {?} roles
|
|
197
|
-
* @return {?}
|
|
198
|
-
*/
|
|
199
|
-
SmartOffenderHeaderComponent.prototype.hasIntakeRole = /**
|
|
200
|
-
* @private
|
|
201
|
-
* @param {?} roles
|
|
202
|
-
* @return {?}
|
|
203
|
-
*/
|
|
204
|
-
function (roles) {
|
|
205
|
-
if (roles && roles.length > 0) {
|
|
206
|
-
return roles.findIndex(this.isIntakeRole) > -1;
|
|
207
|
-
}
|
|
208
|
-
return false;
|
|
209
|
-
};
|
|
210
|
-
/**
|
|
211
|
-
* @private
|
|
212
|
-
* @param {?} role
|
|
213
|
-
* @return {?}
|
|
214
|
-
*/
|
|
215
|
-
SmartOffenderHeaderComponent.prototype.isIntakeRole = /**
|
|
216
|
-
* @private
|
|
217
|
-
* @param {?} role
|
|
218
|
-
* @return {?}
|
|
219
|
-
*/
|
|
220
|
-
function (role) {
|
|
221
|
-
switch (role.roleId) {
|
|
222
|
-
case 'OPA':
|
|
223
|
-
case 'OPS':
|
|
224
|
-
case 'SOPS':
|
|
225
|
-
return true;
|
|
226
|
-
default:
|
|
227
|
-
return false;
|
|
228
|
-
}
|
|
229
|
-
};
|
|
230
|
-
SmartOffenderHeaderComponent.decorators = [
|
|
231
|
-
{ type: Component, args: [{
|
|
232
|
-
selector: 'app-smart-offender-header',
|
|
233
|
-
template: "<div\r\n class=\"offender-header-container\"\r\n *ngIf=\"selectedOffender && isAuthenticated\">\r\n <div class=\"offender-header-name-item\">\r\n <mat-form-field appearance=\"standard\" class=\"switch-offender\">\r\n <mat-label>Switch Offender</mat-label>\r\n <mat-select [formControl]=\"selectedOffenderControl$\">\r\n <mat-option\r\n *ngFor=\"let offender of offenderQueryList\"\r\n [value]=\"offender\">\r\n {{ offender?.name}} ({{offender?.offenderId}})\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div>\r\n <div class=\"offender-header-id-item\">\r\n <span class=\"item-label\">PDID:</span> {{ selectedOffender.pdId }}\r\n </div>\r\n <div class=\"offender-header-id-item\">\r\n <span class=\"item-label\">CSOSA ID:</span>\r\n {{ selectedOffender.offenderId }}\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
234
|
-
styles: [".offender-header-container{display:-ms-grid;display:grid;-ms-grid-columns:2fr 1fr;grid-template-columns:2fr 1fr;grid-column-gap:20px;width:100%;margin:4px;background-color:#eae9e9;font-family:Roboto,'Helvetica Neue',sans-serif;font-size:14px;font-weight:500;padding-top:8px;justify-items:end}.offender-header-name-item{width:50%}.offender-header-id-item{text-align:left;display:-ms-grid;display:grid;-ms-grid-columns:80px 80px;grid-template-columns:80px 80px;margin-top:8px}.switch-offender{width:100%!important}@media only screen and (max-width:740px){.offender-header-container{display:-ms-grid;display:grid;-ms-grid-rows:1fr 1fr;grid-template-rows:1fr 1fr;-ms-grid-columns:1fr;grid-template-columns:1fr;align-items:center;background-color:#eae9e9;font-family:Roboto,'Helvetica Neue',sans-serif;font-size:14px;font-weight:500;height:100%;margin:4px;padding-left:16px;justify-items:start}.offender-header-name-item{text-align:left}}"]
|
|
235
|
-
}] }
|
|
236
|
-
];
|
|
237
|
-
/** @nocollapse */
|
|
238
|
-
SmartOffenderHeaderComponent.ctorParameters = function () { return [
|
|
239
|
-
{ type: XdmService },
|
|
240
|
-
{ type: MsalService },
|
|
241
|
-
{ type: SmartOffenderHeaderService },
|
|
242
|
-
{ type: Router }
|
|
243
|
-
]; };
|
|
244
|
-
return SmartOffenderHeaderComponent;
|
|
245
|
-
}());
|
|
246
|
-
export { SmartOffenderHeaderComponent };
|
|
247
|
-
if (false) {
|
|
248
|
-
/** @type {?} */
|
|
249
|
-
SmartOffenderHeaderComponent.prototype.selectedOffender;
|
|
250
|
-
/** @type {?} */
|
|
251
|
-
SmartOffenderHeaderComponent.prototype.loginStaff;
|
|
252
|
-
/** @type {?} */
|
|
253
|
-
SmartOffenderHeaderComponent.prototype.subscription;
|
|
254
|
-
/** @type {?} */
|
|
255
|
-
SmartOffenderHeaderComponent.prototype.selectedOffenderControl$;
|
|
256
|
-
/** @type {?} */
|
|
257
|
-
SmartOffenderHeaderComponent.prototype.offenderQueryList;
|
|
258
|
-
/** @type {?} */
|
|
259
|
-
SmartOffenderHeaderComponent.prototype.offenderQuerySubscription;
|
|
260
|
-
/** @type {?} */
|
|
261
|
-
SmartOffenderHeaderComponent.prototype.isAuthenticated;
|
|
262
|
-
/**
|
|
263
|
-
* @type {?}
|
|
264
|
-
* @private
|
|
265
|
-
*/
|
|
266
|
-
SmartOffenderHeaderComponent.prototype.xdmService;
|
|
267
|
-
/**
|
|
268
|
-
* @type {?}
|
|
269
|
-
* @private
|
|
270
|
-
*/
|
|
271
|
-
SmartOffenderHeaderComponent.prototype.authnService;
|
|
272
|
-
/**
|
|
273
|
-
* @type {?}
|
|
274
|
-
* @private
|
|
275
|
-
*/
|
|
276
|
-
SmartOffenderHeaderComponent.prototype.smartOffenderHeaderService;
|
|
277
|
-
/**
|
|
278
|
-
* @type {?}
|
|
279
|
-
* @private
|
|
280
|
-
*/
|
|
281
|
-
SmartOffenderHeaderComponent.prototype.router;
|
|
282
|
-
}
|
|
283
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtb2ZmZW5kZXItaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjc21hcnQvbmdjLXNtYXJ0LWNvcmUvIiwic291cmNlcyI6WyJsaWIvc21hcnQtb2ZmZW5kZXItaGVhZGVyL3NtYXJ0LW9mZmVuZGVyLWhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBbUQsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLDBCQUEwQixFQUFvQixNQUFNLGlDQUFpQyxDQUFDO0FBQy9GLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QztJQWVFLHNDQUNVLFVBQXNCLEVBQ3RCLFlBQXlCLEVBQ3pCLDBCQUFzRCxFQUN0RCxNQUFjO1FBSGQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN6QiwrQkFBMEIsR0FBMUIsMEJBQTBCLENBQTRCO1FBQ3RELFdBQU0sR0FBTixNQUFNLENBQVE7UUFWeEIsNkJBQXdCLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztJQVcxQyxDQUFDOzs7O0lBRUosK0NBQVE7OztJQUFSO1FBQUEsaUJBMkNDO1FBMUNDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDckUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxJQUFJOzs7O1FBQUMsVUFBQyxVQUFVO1lBQzlDLEtBQUksQ0FBQyxVQUFV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QUF1Qjs7SUFDdkIsb0RBQTJCOztJQUMzQixnRUFBNkM7O0lBRTdDLHlEQUFzQzs7SUFDdEMsaUVBQXdDOztJQUN4Qyx1REFBZ0M7Ozs7O0lBRzlCLGtEQUE4Qjs7Ozs7SUFDOUIsb0RBQWlDOzs7OztJQUNqQyxrRUFBOEQ7Ozs7O0lBQzlELDhDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3ksIE5nWm9uZSwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWGRtU2VydmljZSB9IGZyb20gJy4uL3NtYXJ0LXN0b3JhZ2UveGRtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTZWxlY3RlZE9mZmVuZGVyLCBMb2dpblN0YWZmLCBSb2xlLCBPZmZlbmRlclF1ZXJ5IH0gZnJvbSAnLi4vc21hcnQtc3RvcmFnZS9zbWFydC1zdG9yYWdlLW1vZGVsJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBPYnNlcnZhYmxlLCBmcm9tLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNc2FsU2VydmljZSB9IGZyb20gJ0BhenVyZS9tc2FsLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFNtYXJ0T2ZmZW5kZXJIZWFkZXJTZXJ2aWNlLCBBc3NpZ25lZE9mZmVuZGVyIH0gZnJvbSAnLi9zbWFydC1vZmZlbmRlci1oZWFkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1zbWFydC1vZmZlbmRlci1oZWFkZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zbWFydC1vZmZlbmRlci1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LW9mZmVuZGVyLWhlYWRlci5jb21wb25lbnQuY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbWFydE9mZmVuZGVySGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyBzZWxlY3RlZE9mZmVuZGVyOiBTZWxlY3RlZE9mZmVuZGVyO1xyXG4gIGxvZ2luU3RhZmY6IExvZ2luU3RhZmY7XHJcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgc2VsZWN0ZWRPZmZlbmRlckNvbnRyb2wkID0gbmV3IEZvcm1Db250cm9sKCk7XHJcbiAgLy8gYXNzaWduZWRPZmZlbmRlcnM6IEFzc2lnbmVkT2ZmZW5kZXJbXTtcclxuICBvZmZlbmRlclF1ZXJ5TGlzdDogU2VsZWN0ZWRPZmZlbmRlcltdO1xyXG4gIG9mZmVuZGVyUXVlcnlTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuICBwdWJsaWMgaXNBdXRoZW50aWNhdGVkOiBib29sZWFuO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgeGRtU2VydmljZTogWGRtU2VydmljZSxcclxuICAgIHByaXZhdGUgYXV0aG5TZXJ2aWNlOiBNc2FsU2VydmljZSxcclxuICAgIHByaXZhdGUgc21hcnRPZmZlbmRlckhlYWRlclNlcnZpY2U6IFNtYXJ0T2ZmZW5kZXJIZWFkZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5pc0F1dGhlbnRpY2F0ZWQgPSB0aGlzLmF1dGhuU2VydmljZS5nZXRBY2NvdW50KCkgPyB0cnVlIDogZmFsc2U7XHJcbiAgICB0aGlzLnhkbVNlcnZpY2UuZ2V0TG9naW5TdGFmZigpLnRoZW4oKGxvZ2luU3RhZmYpID0+IHtcclxuICAgICAgdGhpcy5sb2dpblN0YWZmID0gbG9naW5TdGFmZiA/IGxvZ2luU3RhZmYgOiBudWxsO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLnhkbVNlcnZpY2UuZ2V0U2VsZWN0ZWRPZmZlbmRlcigpLnRoZW4oKHNlbGVjdGVkT2ZmZW5kZXIpID0+IHtcclxuICAgICAgdGhpcy5zZWxlY3RlZE9mZmVuZGVyID1cclxuICAgICAgICBzZWxlY3RlZE9mZmVuZGVyICYmIHNlbGVjdGVkT2ZmZW5kZXIub2ZmZW5kZXJJZFxyXG4gICAgICAgICAgPyBzZWxlY3RlZE9mZmVuZGVyXHJcbiAgICAgICAgICA6IG51bGw7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMueGRtU2VydmljZVxyXG4gICAgICAuZ2V0T2ZmZW5kZXJVcGRhdGUoKVxyXG4gICAgICAuc3Vic2NyaWJlKChzZWxlY3RlZE9mZmVuZGVyKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZE9mZmVuZGVyID0gc2VsZWN0ZWRPZmZlbmRlcjtcclxuICAgICAgICB0aGlzLnNldFNlbGVjdGVkT2ZmZW5kZXJDb250cm9sKCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMueGRtU2VydmljZS5nZXRPZmZlbmRlclF1ZXJ5KCkudGhlbigob2ZmZW5kZXJRdWVyeTogT2ZmZW5kZXJRdWVyeSkgPT4ge1xyXG4gICAgICBpZiAob2ZmZW5kZXJRdWVyeSkge1xyXG4gICAgICAgIHRoaXMub2ZmZW5kZXJRdWVyeUxpc3QgPSBvZmZlbmRlclF1ZXJ5Lm9mZmVuZGVycztcclxuICAgICAgICB0aGlzLnNldFNlbGVjdGVkT2ZmZW5kZXJDb250cm9sKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMub2ZmZW5kZXJRdWVyeVN1YnNjcmlwdGlvbiA9IHRoaXMueGRtU2VydmljZS5nZXRPZmZlbmRlclF1ZXJ5VXBkYXRlKClcclxuICAgICAgLnN1YnNjcmliZSgob2ZmZW5kZXJMaXN0KSA9PiB7XHJcbiAgICAgICAgaWYgKG9mZmVuZGVyTGlzdCAmJiBvZmZlbmRlckxpc3Qub2ZmZW5kZXJzKSB7XHJcbiAgICAgICAgICB0aGlzLm9mZmVuZGVyUXVlcnlMaXN0ID0gWy4uLm9mZmVuZGVyTGlzdC5vZmZlbmRlcnNdO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuXHJcbiAgICB0aGlzLnNlbGVjdGVkT2ZmZW5kZXJDb250cm9sJC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChvKSA9PlxyXG4gICAgICB0aGlzLm9uT2ZmZW5kZXJTZWxlY3RlZChvKSxcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5yb3V0ZXIucm91dGVSZXVzZVN0cmF0ZWd5LnNob3VsZFJldXNlUm91dGUgPSAoKSA9PiB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH07XHJcblxyXG5cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25PZmZlbmRlclNlbGVjdGVkKG9mZmVuZGVyKTogdm9pZCB7XHJcbiAgICBpZiAob2ZmZW5kZXIpIHtcclxuICAgICAgLy8gY29uc3QgbyA9IG9mZmVuZGVyLm9mZmVuZGVyTmFtZS5zcGxpdCgnLCcpO1xyXG4gICAgICAvLyBpZiAoby5sZW5ndGggPT09IDIpIHtcclxuICAgICAgLy8gICBjb25zdCBvZmZlbmRlck5hbWUgPSBgJHtvWzFdfSAke29bMF19YDtcclxuICAgICAgLy8gICB0aGlzLnNlbGVjdGVkT2ZmZW5kZXIgPSB7XHJcbiAgICAgIC8vICAgICBvZmZlbmRlcklkOiBvZmZlbmRlci5vZmZlbmRlcklkLFxyXG4gICAgICAvLyAgICAgbmFtZTogb2ZmZW5kZXJOYW1lLFxyXG4gICAgICAvLyAgICAgcGRJZDogb2ZmZW5kZXIucGRJZCxcclxuICAgICAgLy8gICAgIGJpcnRoRGF0ZTogb2ZmZW5kZXIuYmlydGhEYXRlLFxyXG4gICAgICAvLyAgICAgZ2VuZGVyOiBvZmZlbmRlci5nZW5kZXJDb2RlLFxyXG4gICAgICAvLyAgICAgYXNzaWdubWVudFN0YWZmUmVsYXRpb25JZDogJycsXHJcbiAgICAgIC8vICAgICBpbnRha2VGbGFnOiB0aGlzLmxvZ2luU3RhZmZcclxuICAgICAgLy8gICAgICAgPyB0aGlzLmhhc0ludGFrZVJvbGUodGhpcy5sb2dpblN0YWZmLnJvbGVzKVxyXG4gICAgICAvLyAgICAgICA6IGZhbHNlLFxyXG4gICAgICAvLyAgIH0gYXMgU2VsZWN0ZWRPZmZlbmRlcjtcclxuICAgICAgdGhpcy5zZWxlY3RlZE9mZmVuZGVyID0gb2ZmZW5kZXI7XHJcbiAgICAgIHRoaXMueGRtU2VydmljZS5zZXRTZWxlY3RlZE9mZmVuZGVyKHRoaXMuc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICAgIHRoaXMucmVsb2FkQ3VycmVudFJvdXRlKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRTZWxlY3RlZE9mZmVuZGVyQ29udHJvbCgpIHtcclxuICAgIGlmIChcclxuICAgICAgdGhpcy5zZWxlY3RlZE9mZmVuZGVyICYmXHJcbiAgICAgIHRoaXMub2ZmZW5kZXJRdWVyeUxpc3QgJiZcclxuICAgICAgdGhpcy5vZmZlbmRlclF1ZXJ5TGlzdC5sZW5ndGggPiAwXHJcbiAgICApIHtcclxuICAgICAgY29uc3QgbyA9IHRoaXMub2ZmZW5kZXJRdWVyeUxpc3QuZmluZChcclxuICAgICAgICAoeCkgPT4geC5vZmZlbmRlcklkID09PSB0aGlzLnNlbGVjdGVkT2ZmZW5kZXIub2ZmZW5kZXJJZCxcclxuICAgICAgKTtcclxuICAgICAgaWYgKG8pIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkT2ZmZW5kZXJDb250cm9sJC5zZXRWYWx1ZShvLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghbyAmJiB0aGlzLm9mZmVuZGVyUXVlcnlMaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkT2ZmZW5kZXJDb250cm9sJC5zZXRWYWx1ZSh0aGlzLm9mZmVuZGVyUXVlcnlMaXN0WzBdLCB7XHJcbiAgICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlbG9hZEN1cnJlbnRSb3V0ZSgpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IHVybFRyZWUgPSB0aGlzLnJvdXRlci5wYXJzZVVybCh0aGlzLnJvdXRlci51cmwpO1xyXG4gICAgICBpZiAodXJsVHJlZVxyXG4gICAgICAgICYmIHVybFRyZWUucm9vdFxyXG4gICAgICAgICYmIHVybFRyZWUucm9vdC5zZWdtZW50c1xyXG4gICAgICAgICYmIHVybFRyZWUucm9vdC5zZWdtZW50cy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3VybFRyZWUucm9vdC5zZWdtZW50c1swXS5wYXRoXSk7XHJcbiAgICAgIH0gZWxzZSBpZiAodXJsVHJlZVxyXG4gICAgICAgICYmIHVybFRyZWUucm9vdFxyXG4gICAgICAgICYmIHVybFRyZWUucm9vdC5jaGlsZHJlblxyXG4gICAgICAgICYmIHVybFRyZWUucm9vdC5jaGlsZHJlbi5wcmltYXJ5XHJcbiAgICAgICAgJiYgdXJsVHJlZS5yb290LmNoaWxkcmVuLnByaW1hcnkuc2VnbWVudHNcclxuICAgICAgICAmJiB1cmxUcmVlLnJvb3QuY2hpbGRyZW4ucHJpbWFyeS5zZWdtZW50cy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3VybFRyZWUucm9vdC5jaGlsZHJlbi5wcmltYXJ5LnNlZ21lbnRzWzBdLnBhdGhdKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5yb3V0ZXIudXJsXSk7XHJcbiAgICAgIH1cclxuICAgIH0gY2F0Y2gge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcvJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhc0ludGFrZVJvbGUocm9sZXM6IFJvbGVbXSkge1xyXG4gICAgaWYgKHJvbGVzICYmIHJvbGVzLmxlbmd0aCA+IDApIHtcclxuICAgICAgcmV0dXJuIHJvbGVzLmZpbmRJbmRleCh0aGlzLmlzSW50YWtlUm9sZSkgPiAtMTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNJbnRha2VSb2xlKHJvbGU6IFJvbGUpIHtcclxuICAgIHN3aXRjaCAocm9sZS5yb2xlSWQpIHtcclxuICAgICAgY2FzZSAnT1BBJzpcclxuICAgICAgY2FzZSAnT1BTJzpcclxuICAgICAgY2FzZSAnU09QUyc6XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* Generated from: lib/smart-offender-header/smart-offender-header.service.ts
|
|
4
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
5
|
-
*/
|
|
6
|
-
import { Injectable, Inject } from '@angular/core';
|
|
7
|
-
import { HttpClient } from '@angular/common/http';
|
|
8
|
-
import { map } from 'rxjs/operators';
|
|
9
|
-
import { SMART_DATA_SERVICE_URL, } from '../smart-storage/smart-storage-model';
|
|
10
|
-
var SmartOffenderHeaderService = /** @class */ (function () {
|
|
11
|
-
function SmartOffenderHeaderService(smartDataServiceUrl, http) {
|
|
12
|
-
this.smartDataServiceUrl = smartDataServiceUrl;
|
|
13
|
-
this.http = http;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* @param {?} staffId
|
|
17
|
-
* @return {?}
|
|
18
|
-
*/
|
|
19
|
-
SmartOffenderHeaderService.prototype.getStaffOffenders = /**
|
|
20
|
-
* @param {?} staffId
|
|
21
|
-
* @return {?}
|
|
22
|
-
*/
|
|
23
|
-
function (staffId) {
|
|
24
|
-
/** @type {?} */
|
|
25
|
-
var queryString = "\n query getStaffOffenderList{\n filterOffenderList(input: {staffId: " + staffId + "}) {\n data {\n offenderId\n offenderName\n pdId\n birthDate\n gender\n }\n }\n }\n ";
|
|
26
|
-
return this.http
|
|
27
|
-
.post(this.smartDataServiceUrl, { query: queryString })
|
|
28
|
-
.pipe(map((/**
|
|
29
|
-
* @param {?} __0
|
|
30
|
-
* @return {?}
|
|
31
|
-
*/
|
|
32
|
-
function (_a) {
|
|
33
|
-
var data = _a.data;
|
|
34
|
-
return data.filterOffenderList.data;
|
|
35
|
-
})));
|
|
36
|
-
};
|
|
37
|
-
SmartOffenderHeaderService.decorators = [
|
|
38
|
-
{ type: Injectable }
|
|
39
|
-
];
|
|
40
|
-
/** @nocollapse */
|
|
41
|
-
SmartOffenderHeaderService.ctorParameters = function () { return [
|
|
42
|
-
{ type: undefined, decorators: [{ type: Inject, args: [SMART_DATA_SERVICE_URL,] }] },
|
|
43
|
-
{ type: HttpClient }
|
|
44
|
-
]; };
|
|
45
|
-
return SmartOffenderHeaderService;
|
|
46
|
-
}());
|
|
47
|
-
export { SmartOffenderHeaderService };
|
|
48
|
-
if (false) {
|
|
49
|
-
/**
|
|
50
|
-
* @type {?}
|
|
51
|
-
* @private
|
|
52
|
-
*/
|
|
53
|
-
SmartOffenderHeaderService.prototype.smartDataServiceUrl;
|
|
54
|
-
/**
|
|
55
|
-
* @type {?}
|
|
56
|
-
* @private
|
|
57
|
-
*/
|
|
58
|
-
SmartOffenderHeaderService.prototype.http;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* @record
|
|
62
|
-
*/
|
|
63
|
-
export function AssignedOffender() { }
|
|
64
|
-
if (false) {
|
|
65
|
-
/** @type {?} */
|
|
66
|
-
AssignedOffender.prototype.offenderId;
|
|
67
|
-
/** @type {?} */
|
|
68
|
-
AssignedOffender.prototype.offenderName;
|
|
69
|
-
/** @type {?} */
|
|
70
|
-
AssignedOffender.prototype.pdId;
|
|
71
|
-
/** @type {?} */
|
|
72
|
-
AssignedOffender.prototype.birthDate;
|
|
73
|
-
/** @type {?} */
|
|
74
|
-
AssignedOffender.prototype.gender;
|
|
75
|
-
}
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtb2ZmZW5kZXItaGVhZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY3NtYXJ0L25nYy1zbWFydC1jb3JlLyIsInNvdXJjZXMiOlsibGliL3NtYXJ0LW9mZmVuZGVyLWhlYWRlci9zbWFydC1vZmZlbmRlci1oZWFkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUNMLHNCQUFzQixHQUN2QixNQUFNLHNDQUFzQyxDQUFDO0FBRzlDO0lBRUUsb0NBQzBDLG1CQUFtQixFQUNuRCxJQUFnQjtRQURnQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQUE7UUFDbkQsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN2QixDQUFDOzs7OztJQUVKLHNEQUFpQjs7OztJQUFqQixVQUFrQixPQUFlOztZQUN6QixXQUFXLEdBQUcsNEZBRTBCLE9BQU8sMk9BVXBEO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNiLElBQUksQ0FBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLENBQUM7YUFDM0QsSUFBSSxDQUNILEdBQUc7Ozs7UUFBQyxVQUFDLEVBQVE7Z0JBQU4sY0FBSTtZQUNULE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQztRQUN0QyxDQUFDLEVBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs7Z0JBNUJGLFVBQVU7Ozs7Z0RBR04sTUFBTSxTQUFDLHNCQUFzQjtnQkFYekIsVUFBVTs7SUFxQ25CLGlDQUFDO0NBQUEsQUE3QkQsSUE2QkM7U0E1QlksMEJBQTBCOzs7Ozs7SUFFbkMseURBQTJEOzs7OztJQUMzRCwwQ0FBd0I7Ozs7O0FBMkI1QixzQ0FNQzs7O0lBTEMsc0NBQW1COztJQUNuQix3Q0FBcUI7O0lBQ3JCLGdDQUFhOztJQUNiLHFDQUFnQjs7SUFDaEIsa0NBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZnJvbSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQge1xyXG4gIFNNQVJUX0RBVEFfU0VSVklDRV9VUkwsXHJcbn0gZnJvbSAnLi4vc21hcnQtc3RvcmFnZS9zbWFydC1zdG9yYWdlLW1vZGVsJztcclxuXHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBTbWFydE9mZmVuZGVySGVhZGVyU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KFNNQVJUX0RBVEFfU0VSVklDRV9VUkwpIHByaXZhdGUgc21hcnREYXRhU2VydmljZVVybCxcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICApIHt9XHJcblxyXG4gIGdldFN0YWZmT2ZmZW5kZXJzKHN0YWZmSWQ6IG51bWJlcik6IE9ic2VydmFibGU8QXNzaWduZWRPZmZlbmRlcltdPiB7XHJcbiAgICBjb25zdCBxdWVyeVN0cmluZyA9IGBcclxuICAgICAgICBxdWVyeSBnZXRTdGFmZk9mZmVuZGVyTGlzdHtcclxuICAgICAgICAgICAgZmlsdGVyT2ZmZW5kZXJMaXN0KGlucHV0OiB7c3RhZmZJZDogJHtzdGFmZklkfX0pIHtcclxuICAgICAgICAgICAgICAgIGRhdGEge1xyXG4gICAgICAgICAgICAgICAgICAgIG9mZmVuZGVySWRcclxuICAgICAgICAgICAgICAgICAgICBvZmZlbmRlck5hbWVcclxuICAgICAgICAgICAgICAgICAgICBwZElkXHJcbiAgICAgICAgICAgICAgICAgICAgYmlydGhEYXRlXHJcbiAgICAgICAgICAgICAgICAgICAgZ2VuZGVyXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICBgO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKCh7IGRhdGEgfSkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIGRhdGEuZmlsdGVyT2ZmZW5kZXJMaXN0LmRhdGE7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFzc2lnbmVkT2ZmZW5kZXIge1xyXG4gIG9mZmVuZGVySWQ6IG51bWJlcjtcclxuICBvZmZlbmRlck5hbWU6IHN0cmluZztcclxuICBwZElkOiBzdHJpbmc7XHJcbiAgYmlydGhEYXRlOiBEYXRlO1xyXG4gIGdlbmRlcjogc3RyaW5nO1xyXG59XHJcbiJdfQ==
|
package/esm5/lib/smart-staff-offender-options/smart-staff-offender-options-resolver.service.js
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* Generated from: lib/smart-staff-offender-options/smart-staff-offender-options-resolver.service.ts
|
|
4
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
5
|
-
*/
|
|
6
|
-
import { Injectable } from '@angular/core';
|
|
7
|
-
import { SmartStaffOffenderOptionsService } from './smart-staff-offender-options.service';
|
|
8
|
-
import { map } from 'rxjs/operators';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "./smart-staff-offender-options.service";
|
|
11
|
-
var SmartStaffOffenderOptionsResolverService = /** @class */ (function () {
|
|
12
|
-
function SmartStaffOffenderOptionsResolverService(offenderService) {
|
|
13
|
-
this.offenderService = offenderService;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* @return {?}
|
|
17
|
-
*/
|
|
18
|
-
SmartStaffOffenderOptionsResolverService.prototype.resolve = /**
|
|
19
|
-
* @return {?}
|
|
20
|
-
*/
|
|
21
|
-
function () {
|
|
22
|
-
return this.offenderService.getOffenderListOptions()
|
|
23
|
-
.pipe(map((/**
|
|
24
|
-
* @param {?} __0
|
|
25
|
-
* @return {?}
|
|
26
|
-
*/
|
|
27
|
-
function (_a) {
|
|
28
|
-
var data = _a.data;
|
|
29
|
-
return data;
|
|
30
|
-
})));
|
|
31
|
-
};
|
|
32
|
-
SmartStaffOffenderOptionsResolverService.decorators = [
|
|
33
|
-
{ type: Injectable, args: [{
|
|
34
|
-
providedIn: 'root',
|
|
35
|
-
},] }
|
|
36
|
-
];
|
|
37
|
-
/** @nocollapse */
|
|
38
|
-
SmartStaffOffenderOptionsResolverService.ctorParameters = function () { return [
|
|
39
|
-
{ type: SmartStaffOffenderOptionsService }
|
|
40
|
-
]; };
|
|
41
|
-
/** @nocollapse */ SmartStaffOffenderOptionsResolverService.ngInjectableDef = i0.defineInjectable({ factory: function SmartStaffOffenderOptionsResolverService_Factory() { return new SmartStaffOffenderOptionsResolverService(i0.inject(i1.SmartStaffOffenderOptionsService)); }, token: SmartStaffOffenderOptionsResolverService, providedIn: "root" });
|
|
42
|
-
return SmartStaffOffenderOptionsResolverService;
|
|
43
|
-
}());
|
|
44
|
-
export { SmartStaffOffenderOptionsResolverService };
|
|
45
|
-
if (false) {
|
|
46
|
-
/**
|
|
47
|
-
* @type {?}
|
|
48
|
-
* @private
|
|
49
|
-
*/
|
|
50
|
-
SmartStaffOffenderOptionsResolverService.prototype.offenderService;
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc3RhZmYtb2ZmZW5kZXItb3B0aW9ucy1yZXNvbHZlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNzbWFydC9uZ2Mtc21hcnQtY29yZS8iLCJzb3VyY2VzIjpbImxpYi9zbWFydC1zdGFmZi1vZmZlbmRlci1vcHRpb25zL3NtYXJ0LXN0YWZmLW9mZmVuZGVyLW9wdGlvbnMtcmVzb2x2ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGdDQUFnQyxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFFekYsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFFckM7SUFJSSxrREFBb0IsZUFBaUQ7UUFBakQsb0JBQWUsR0FBZixlQUFlLENBQWtDO0lBQUcsQ0FBQzs7OztJQUN6RSwwREFBTzs7O0lBQVA7UUFDRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsc0JBQXNCLEVBQUU7YUFDbkQsSUFBSSxDQUNILEdBQUc7Ozs7UUFBQyxVQUFDLEVBQVE7Z0JBQU4sY0FBSTtZQUNULE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxFQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7O2dCQVpKLFVBQVUsU0FBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7Ozs7Z0JBTlEsZ0NBQWdDOzs7bURBRnpDO0NBbUJHLEFBYkgsSUFhRztTQVZVLHdDQUF3Qzs7Ozs7O0lBQ3JDLG1FQUF5RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVzb2x2ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFNtYXJ0U3RhZmZPZmZlbmRlck9wdGlvbnNTZXJ2aWNlfSBmcm9tICcuL3NtYXJ0LXN0YWZmLW9mZmVuZGVyLW9wdGlvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNtYXJ0U3RhZmZPZmZlbmRlck9wdGlvbnNSZXNvbHZlclNlcnZpY2UgaW1wbGVtZW50cyBSZXNvbHZlPE9ic2VydmFibGU8YW55Pj4ge1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBvZmZlbmRlclNlcnZpY2U6IFNtYXJ0U3RhZmZPZmZlbmRlck9wdGlvbnNTZXJ2aWNlKSB7fVxyXG4gICAgcmVzb2x2ZSgpIHtcclxuICAgICAgcmV0dXJuIHRoaXMub2ZmZW5kZXJTZXJ2aWNlLmdldE9mZmVuZGVyTGlzdE9wdGlvbnMoKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHsgZGF0YSB9KSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gZGF0YTtcclxuICAgICAgICB9KSxcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbiJdfQ==
|
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* Generated from: lib/smart-staff-offender-options/smart-staff-offender-options.component.ts
|
|
4
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
5
|
-
*/
|
|
6
|
-
import { Component } from '@angular/core';
|
|
7
|
-
import { SmartStaffOffenderOptionsService } from './smart-staff-offender-options.service';
|
|
8
|
-
import { FormGroup, FormControl, } from '@angular/forms';
|
|
9
|
-
import { ActivatedRoute } from '@angular/router';
|
|
10
|
-
import { XdmService } from '../smart-storage/xdm.service';
|
|
11
|
-
var SmartStaffOffenderOptionsComponent = /** @class */ (function () {
|
|
12
|
-
function SmartStaffOffenderOptionsComponent(route, offenderService, xdmService) {
|
|
13
|
-
this.route = route;
|
|
14
|
-
this.offenderService = offenderService;
|
|
15
|
-
this.xdmService = xdmService;
|
|
16
|
-
this.offenderListOptions = [];
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* @return {?}
|
|
20
|
-
*/
|
|
21
|
-
SmartStaffOffenderOptionsComponent.prototype.ngOnInit = /**
|
|
22
|
-
* @return {?}
|
|
23
|
-
*/
|
|
24
|
-
function () {
|
|
25
|
-
var _this = this;
|
|
26
|
-
/** @type {?} */
|
|
27
|
-
var routData = this.route.snapshot.data;
|
|
28
|
-
this.loginStaff = routData.loginStaff;
|
|
29
|
-
this.offenderListOptions = routData.selectedOffenderResolverService;
|
|
30
|
-
this.frmGroup = this.createForm();
|
|
31
|
-
this.offenderService.getStaffOffenderListOptions(this.loginStaff.staffId).subscribe((/**
|
|
32
|
-
* @param {?} data
|
|
33
|
-
* @return {?}
|
|
34
|
-
*/
|
|
35
|
-
function (data) {
|
|
36
|
-
_this.fillForm(data);
|
|
37
|
-
}));
|
|
38
|
-
};
|
|
39
|
-
/**
|
|
40
|
-
* @private
|
|
41
|
-
* @param {?} data
|
|
42
|
-
* @return {?}
|
|
43
|
-
*/
|
|
44
|
-
SmartStaffOffenderOptionsComponent.prototype.fillForm = /**
|
|
45
|
-
* @private
|
|
46
|
-
* @param {?} data
|
|
47
|
-
* @return {?}
|
|
48
|
-
*/
|
|
49
|
-
function (data) {
|
|
50
|
-
if (data) {
|
|
51
|
-
/** @type {?} */
|
|
52
|
-
var offenderListOptionsFg_1 = this.frmGroup.get('offenderListOptions');
|
|
53
|
-
data.forEach((/**
|
|
54
|
-
* @param {?} element
|
|
55
|
-
* @return {?}
|
|
56
|
-
*/
|
|
57
|
-
function (element) {
|
|
58
|
-
offenderListOptionsFg_1.get(element.offenderListOptionId).setValue(true);
|
|
59
|
-
}));
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
/**
|
|
63
|
-
* @private
|
|
64
|
-
* @return {?}
|
|
65
|
-
*/
|
|
66
|
-
SmartStaffOffenderOptionsComponent.prototype.createForm = /**
|
|
67
|
-
* @private
|
|
68
|
-
* @return {?}
|
|
69
|
-
*/
|
|
70
|
-
function () {
|
|
71
|
-
/** @type {?} */
|
|
72
|
-
var offenderListOptionsFg = new FormGroup({});
|
|
73
|
-
this.offenderListOptions.forEach((/**
|
|
74
|
-
* @param {?} dt
|
|
75
|
-
* @param {?} i
|
|
76
|
-
* @return {?}
|
|
77
|
-
*/
|
|
78
|
-
function (dt, i) {
|
|
79
|
-
offenderListOptionsFg.addControl(dt.offenderListOptionId, new FormControl(false));
|
|
80
|
-
}));
|
|
81
|
-
return new FormGroup({
|
|
82
|
-
offenderListOptions: offenderListOptionsFg,
|
|
83
|
-
});
|
|
84
|
-
};
|
|
85
|
-
/**
|
|
86
|
-
* @return {?}
|
|
87
|
-
*/
|
|
88
|
-
SmartStaffOffenderOptionsComponent.prototype.onSave = /**
|
|
89
|
-
* @return {?}
|
|
90
|
-
*/
|
|
91
|
-
function () {
|
|
92
|
-
var _this = this;
|
|
93
|
-
/** @type {?} */
|
|
94
|
-
var data = {
|
|
95
|
-
options: [],
|
|
96
|
-
staffId: this.loginStaff.staffId,
|
|
97
|
-
modifiedBy: this.loginStaff.staffId
|
|
98
|
-
};
|
|
99
|
-
/** @type {?} */
|
|
100
|
-
var offenderListOptionsVal = this.frmGroup.get('offenderListOptions').value;
|
|
101
|
-
/** @type {?} */
|
|
102
|
-
var keys = Object.keys(offenderListOptionsVal);
|
|
103
|
-
keys.forEach((/**
|
|
104
|
-
* @param {?} key
|
|
105
|
-
* @return {?}
|
|
106
|
-
*/
|
|
107
|
-
function (key) {
|
|
108
|
-
if (offenderListOptionsVal[key]) {
|
|
109
|
-
data.options.push({ 'offenderListOptionId': key });
|
|
110
|
-
}
|
|
111
|
-
}));
|
|
112
|
-
this.offenderService.saveStaffOffenderListOptionsData(data).subscribe((/**
|
|
113
|
-
* @param {?} rtrDatea
|
|
114
|
-
* @return {?}
|
|
115
|
-
*/
|
|
116
|
-
function (rtrDatea) {
|
|
117
|
-
if (rtrDatea.message) {
|
|
118
|
-
_this.offenderService.showMessage(rtrDatea.message);
|
|
119
|
-
}
|
|
120
|
-
else {
|
|
121
|
-
_this.offenderService.showMessage('Saved successfully');
|
|
122
|
-
_this.xdmService.refreshLoginStaffOptions();
|
|
123
|
-
}
|
|
124
|
-
}));
|
|
125
|
-
};
|
|
126
|
-
SmartStaffOffenderOptionsComponent.decorators = [
|
|
127
|
-
{ type: Component, args: [{
|
|
128
|
-
selector: 'lib-smart-staff-offender-options',
|
|
129
|
-
template: "<form class=\"main-form\" [formGroup]=\"frmGroup\">\r\n <mat-card role=\"group\">\r\n <mat-card-content>\r\n <div formGroupName=\"offenderListOptions\">\r\n <div style=\"float:left;\">\r\n <div *ngFor=\"let offenderListOption of offenderListOptions; let i = index\">\r\n <mat-checkbox *ngIf=\"i%2!=0\" color=\"primary\" formControlName=\"{{offenderListOption.offenderListOptionId}}\">\r\n {{offenderListOption.name}}\r\n </mat-checkbox>\r\n </div>\r\n </div>\r\n <div>\r\n <div *ngFor=\"let offenderListOption of offenderListOptions; let i = index\" >\r\n <mat-checkbox *ngIf=\"i%2==0\" color=\"primary\" formControlName=\"{{offenderListOption.offenderListOptionId}}\">\r\n {{offenderListOption.name}}\r\n </mat-checkbox> \r\n </div>\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n <div align=\"center\">\r\n <button mat-raised-button color=\"accent\" (click)=\"onSave()\">Save</button>\r\n </div>\r\n </mat-card>\r\n </form>\r\n ",
|
|
130
|
-
styles: [""]
|
|
131
|
-
}] }
|
|
132
|
-
];
|
|
133
|
-
/** @nocollapse */
|
|
134
|
-
SmartStaffOffenderOptionsComponent.ctorParameters = function () { return [
|
|
135
|
-
{ type: ActivatedRoute },
|
|
136
|
-
{ type: SmartStaffOffenderOptionsService },
|
|
137
|
-
{ type: XdmService }
|
|
138
|
-
]; };
|
|
139
|
-
return SmartStaffOffenderOptionsComponent;
|
|
140
|
-
}());
|
|
141
|
-
export { SmartStaffOffenderOptionsComponent };
|
|
142
|
-
if (false) {
|
|
143
|
-
/** @type {?} */
|
|
144
|
-
SmartStaffOffenderOptionsComponent.prototype.loginStaff;
|
|
145
|
-
/** @type {?} */
|
|
146
|
-
SmartStaffOffenderOptionsComponent.prototype.offenderListOptions;
|
|
147
|
-
/** @type {?} */
|
|
148
|
-
SmartStaffOffenderOptionsComponent.prototype.frmGroup;
|
|
149
|
-
/**
|
|
150
|
-
* @type {?}
|
|
151
|
-
* @private
|
|
152
|
-
*/
|
|
153
|
-
SmartStaffOffenderOptionsComponent.prototype.route;
|
|
154
|
-
/**
|
|
155
|
-
* @type {?}
|
|
156
|
-
* @private
|
|
157
|
-
*/
|
|
158
|
-
SmartStaffOffenderOptionsComponent.prototype.offenderService;
|
|
159
|
-
/**
|
|
160
|
-
* @type {?}
|
|
161
|
-
* @private
|
|
162
|
-
*/
|
|
163
|
-
SmartStaffOffenderOptionsComponent.prototype.xdmService;
|
|
164
|
-
}
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc3RhZmYtb2ZmZW5kZXItb3B0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY3NtYXJ0L25nYy1zbWFydC1jb3JlLyIsInNvdXJjZXMiOlsibGliL3NtYXJ0LXN0YWZmLW9mZmVuZGVyLW9wdGlvbnMvc21hcnQtc3RhZmYtb2ZmZW5kZXItb3B0aW9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ3pGLE9BQU8sRUFDTCxTQUFTLEVBQ1QsV0FBVyxHQUlaLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLGNBQWMsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUV6RDtJQVNFLDRDQUNVLEtBQXFCLEVBQ3JCLGVBQWlELEVBQ2pELFVBQXNCO1FBRnRCLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLG9CQUFlLEdBQWYsZUFBZSxDQUFrQztRQUNqRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBTGhDLHdCQUFtQixHQUFlLEVBQUUsQ0FBQztJQU1qQyxDQUFDOzs7O0lBRUwscURBQVE7OztJQUFSO1FBQUEsaUJBUUM7O1lBUE8sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUk7UUFDekMsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxRQUFRLENBQUMsK0JBQStCLENBQUM7UUFDcEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVM7Ozs7UUFBQyxVQUFBLElBQUk7WUFDdEYsS0FBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7Ozs7OztJQUVPLHFEQUFROzs7OztJQUFoQixVQUFpQixJQUFJO1FBQ25CLElBQUksSUFBSSxFQUFFOztnQkFDRix1QkFBcUIsR0FBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQztZQUN2RSxJQUFJLENBQUMsT0FBTzs7OztZQUFDLFVBQUEsT0FBTztnQkFDbEIsdUJBQXFCLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6RSxDQUFDLEVBQUMsQ0FBQztTQUNKO0lBRUgsQ0FBQzs7Ozs7SUFDTyx1REFBVTs7OztJQUFsQjs7WUFDUSxxQkFBcUIsR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUMzQyxDQUFDO1FBRUYsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU87Ozs7O1FBQUUsVUFBQyxFQUFFLEVBQUUsQ0FBQztZQUN0QyxxQkFBcUIsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDcEYsQ0FBQyxFQUFDLENBQUM7UUFFSCxPQUFPLElBQUksU0FBUyxDQUFDO1lBQ25CLG1CQUFtQixFQUFFLHFCQUFxQjtTQUMzQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRUQsbURBQU07OztJQUFOO1FBQUEsaUJBdUJDOztZQXRCTyxJQUFJLEdBQUc7WUFDWCxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU87WUFDaEMsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTztTQUNwQzs7WUFFSyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEtBQUs7O1lBQ3ZFLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDO1FBQ2hELElBQUksQ0FBQyxPQUFPOzs7O1FBQUMsVUFBQSxHQUFHO1lBQ2QsSUFBSSxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBQyxzQkFBc0IsRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO2FBQ2xEO1FBQ0gsQ0FBQyxFQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsZUFBZSxDQUFDLGdDQUFnQyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVM7Ozs7UUFBQyxVQUFBLFFBQVE7WUFDNUUsSUFBSSxRQUFRLENBQUMsT0FBTyxFQUFFO2dCQUNwQixLQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDcEQ7aUJBQU07Z0JBQ0wsS0FBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFDdkQsS0FBSSxDQUFDLFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO2FBQzVDO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOztnQkF0RUYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxrQ0FBa0M7b0JBQzVDLHVqQ0FBNEQ7O2lCQUU3RDs7OztnQkFQUSxjQUFjO2dCQVRkLGdDQUFnQztnQkFVaEMsVUFBVTs7SUEwRW5CLHlDQUFDO0NBQUEsQUF4RUQsSUF3RUM7U0FuRVksa0NBQWtDOzs7SUFDN0Msd0RBQXVCOztJQUN2QixpRUFBcUM7O0lBQ3JDLHNEQUFvQjs7Ozs7SUFFbEIsbURBQTZCOzs7OztJQUM3Qiw2REFBeUQ7Ozs7O0lBQ3pELHdEQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNtYXJ0U3RhZmZPZmZlbmRlck9wdGlvbnNTZXJ2aWNlfSBmcm9tICcuL3NtYXJ0LXN0YWZmLW9mZmVuZGVyLW9wdGlvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7ICBGb3JtQnVpbGRlcixcclxuICBGb3JtR3JvdXAsXHJcbiAgRm9ybUNvbnRyb2wsXHJcbiAgVmFsaWRhdG9ycyxcclxuICBWYWxpZGF0b3JGbixcclxuICBBYnN0cmFjdENvbnRyb2wsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBMb2dpblN0YWZmIH0gZnJvbSAnLi4vc21hcnQtc3RvcmFnZS9zbWFydC1zdG9yYWdlLW1vZGVsJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFhkbVNlcnZpY2V9IGZyb20gJy4uL3NtYXJ0LXN0b3JhZ2UveGRtLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItc21hcnQtc3RhZmYtb2ZmZW5kZXItb3B0aW9ucycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LXN0YWZmLW9mZmVuZGVyLW9wdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LXN0YWZmLW9mZmVuZGVyLW9wdGlvbnMuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbWFydFN0YWZmT2ZmZW5kZXJPcHRpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBsb2dpblN0YWZmOiBMb2dpblN0YWZmO1xyXG4gIG9mZmVuZGVyTGlzdE9wdGlvbnM6IEFycmF5PGFueT4gPSBbXTtcclxuICBmcm1Hcm91cDogRm9ybUdyb3VwO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBwcml2YXRlIG9mZmVuZGVyU2VydmljZTogU21hcnRTdGFmZk9mZmVuZGVyT3B0aW9uc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHhkbVNlcnZpY2U6IFhkbVNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGNvbnN0IHJvdXREYXRhID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhO1xyXG4gICAgdGhpcy5sb2dpblN0YWZmID0gcm91dERhdGEubG9naW5TdGFmZjtcclxuICAgIHRoaXMub2ZmZW5kZXJMaXN0T3B0aW9ucyA9IHJvdXREYXRhLnNlbGVjdGVkT2ZmZW5kZXJSZXNvbHZlclNlcnZpY2U7XHJcbiAgICB0aGlzLmZybUdyb3VwID0gdGhpcy5jcmVhdGVGb3JtKCk7XHJcbiAgICB0aGlzLm9mZmVuZGVyU2VydmljZS5nZXRTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnModGhpcy5sb2dpblN0YWZmLnN0YWZmSWQpLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgdGhpcy5maWxsRm9ybShkYXRhKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaWxsRm9ybShkYXRhKSB7XHJcbiAgICBpZiAoZGF0YSkge1xyXG4gICAgICBjb25zdCBvZmZlbmRlckxpc3RPcHRpb25zRmcgPSAgdGhpcy5mcm1Hcm91cC5nZXQoJ29mZmVuZGVyTGlzdE9wdGlvbnMnKTtcclxuICAgICAgZGF0YS5mb3JFYWNoKGVsZW1lbnQgPT4ge1xyXG4gICAgICAgIG9mZmVuZGVyTGlzdE9wdGlvbnNGZy5nZXQoZWxlbWVudC5vZmZlbmRlckxpc3RPcHRpb25JZCkuc2V0VmFsdWUodHJ1ZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVGb3JtKCkge1xyXG4gICAgY29uc3Qgb2ZmZW5kZXJMaXN0T3B0aW9uc0ZnID0gbmV3IEZvcm1Hcm91cCh7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLm9mZmVuZGVyTGlzdE9wdGlvbnMuZm9yRWFjaCggKGR0LCBpKSA9PiB7XHJcbiAgICAgIG9mZmVuZGVyTGlzdE9wdGlvbnNGZy5hZGRDb250cm9sKGR0Lm9mZmVuZGVyTGlzdE9wdGlvbklkLCBuZXcgRm9ybUNvbnRyb2woZmFsc2UpKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBuZXcgRm9ybUdyb3VwKHtcclxuICAgICAgb2ZmZW5kZXJMaXN0T3B0aW9uczogb2ZmZW5kZXJMaXN0T3B0aW9uc0ZnLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvblNhdmUoKSB7XHJcbiAgICBjb25zdCBkYXRhID0ge1xyXG4gICAgICBvcHRpb25zOiBbXSxcclxuICAgICAgc3RhZmZJZDogdGhpcy5sb2dpblN0YWZmLnN0YWZmSWQsXHJcbiAgICAgIG1vZGlmaWVkQnk6IHRoaXMubG9naW5TdGFmZi5zdGFmZklkXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IG9mZmVuZGVyTGlzdE9wdGlvbnNWYWwgPSB0aGlzLmZybUdyb3VwLmdldCgnb2ZmZW5kZXJMaXN0T3B0aW9ucycpLnZhbHVlO1xyXG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9mZmVuZGVyTGlzdE9wdGlvbnNWYWwpO1xyXG4gICAga2V5cy5mb3JFYWNoKGtleSA9PiB7XHJcbiAgICAgIGlmIChvZmZlbmRlckxpc3RPcHRpb25zVmFsW2tleV0pIHtcclxuICAgICAgICBkYXRhLm9wdGlvbnMucHVzaCh7J29mZmVuZGVyTGlzdE9wdGlvbklkJzoga2V5fSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMub2ZmZW5kZXJTZXJ2aWNlLnNhdmVTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnNEYXRhKGRhdGEpLnN1YnNjcmliZShydHJEYXRlYT0+e1xyXG4gICAgICBpZiAocnRyRGF0ZWEubWVzc2FnZSkge1xyXG4gICAgICAgIHRoaXMub2ZmZW5kZXJTZXJ2aWNlLnNob3dNZXNzYWdlKHJ0ckRhdGVhLm1lc3NhZ2UpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMub2ZmZW5kZXJTZXJ2aWNlLnNob3dNZXNzYWdlKCdTYXZlZCBzdWNjZXNzZnVsbHknKTtcclxuICAgICAgICB0aGlzLnhkbVNlcnZpY2UucmVmcmVzaExvZ2luU3RhZmZPcHRpb25zKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|