@csmart/ngc-smart-victim 0.1.7 → 1.13.0
Sign up to get free protection for your applications and to get access to all the features.
- package/csmart-ngc-smart-victim.d.ts +1 -15
- package/esm2020/csmart-ngc-smart-victim.mjs +5 -0
- package/esm2020/lib/caseNote/caseNote.component.mjs +185 -0
- package/esm2020/lib/common-dialog/common-dialog.component.mjs +23 -0
- package/esm2020/lib/common-dialog/common-dialog.module.mjs +38 -0
- package/esm2020/lib/common-dialog/common-dialog.service.mjs +33 -0
- package/esm2020/lib/contact/contact.component.mjs +140 -0
- package/esm2020/lib/intake.service.mjs +57 -0
- package/esm2020/lib/safetyPlan/serviceProvider.component.mjs +115 -0
- package/esm2020/lib/safetyPlan/victimSafetyPlan.component.mjs +116 -0
- package/esm2020/lib/safetyPlan/victimSafetyPlanDetail.component.mjs +340 -0
- package/esm2020/lib/shared/app.shared.module.mjs +213 -0
- package/esm2020/lib/shared/directives/phone-mask.directive.mjs +114 -0
- package/esm2020/lib/shared/validators/date.validator.mjs +59 -0
- package/esm2020/lib/shared/validators/index.mjs +2 -0
- package/esm2020/lib/smart-victim-delete-confirm.component.mjs +53 -0
- package/esm2020/lib/smart-victim-detail/smart-victim-detail.component.mjs +958 -0
- package/esm2020/lib/smart-victim.component.mjs +310 -0
- package/esm2020/lib/smart-victim.model.mjs +132 -0
- package/esm2020/lib/smart-victim.module.mjs +138 -0
- package/esm2020/lib/smart-victim.service.mjs +347 -0
- package/esm2020/lib/victim-routing.module.mjs +42 -0
- package/esm2020/lib/victimSearch/VictimSearchFilter.mjs +3 -0
- package/esm2020/lib/victimSearch/victimSearchForm.component.mjs +38 -0
- package/esm2020/public-api.mjs +12 -0
- package/fesm2015/csmart-ngc-smart-victim.mjs +3221 -0
- package/fesm2015/csmart-ngc-smart-victim.mjs.map +1 -0
- package/fesm2020/csmart-ngc-smart-victim.mjs +3210 -0
- package/fesm2020/csmart-ngc-smart-victim.mjs.map +1 -0
- package/lib/caseNote/caseNote.component.d.ts +6 -2
- package/lib/common-dialog/common-dialog.component.d.ts +4 -1
- package/lib/common-dialog/common-dialog.module.d.ts +6 -0
- package/lib/common-dialog/common-dialog.service.d.ts +4 -1
- package/lib/contact/contact.component.d.ts +4 -1
- package/lib/intake.service.d.ts +3 -0
- package/lib/safetyPlan/serviceProvider.component.d.ts +4 -1
- package/lib/safetyPlan/victimSafetyPlan.component.d.ts +7 -2
- package/lib/safetyPlan/victimSafetyPlanDetail.component.d.ts +7 -2
- package/lib/shared/app.shared.module.d.ts +30 -0
- package/lib/shared/directives/phone-mask.directive.d.ts +5 -2
- package/lib/smart-victim-delete-confirm.component.d.ts +3 -0
- package/lib/smart-victim-detail/smart-victim-detail.component.d.ts +9 -4
- package/lib/smart-victim.component.d.ts +8 -3
- package/lib/smart-victim.module.d.ts +47 -0
- package/lib/smart-victim.service.d.ts +3 -0
- package/lib/victim-routing.module.d.ts +5 -0
- package/lib/victimSearch/victimSearchForm.component.d.ts +3 -0
- package/package.json +28 -18
- package/public-api.d.ts +4 -0
- package/bundles/csmart-ngc-smart-victim.umd.js +0 -6434
- package/bundles/csmart-ngc-smart-victim.umd.js.map +0 -1
- package/bundles/csmart-ngc-smart-victim.umd.min.js +0 -16
- package/bundles/csmart-ngc-smart-victim.umd.min.js.map +0 -1
- package/csmart-ngc-smart-victim.metadata.json +0 -1
- package/esm2015/csmart-ngc-smart-victim.js +0 -25
- package/esm2015/lib/caseNote/caseNote.component.js +0 -349
- package/esm2015/lib/common-dialog/common-dialog.component.js +0 -46
- package/esm2015/lib/common-dialog/common-dialog.module.js +0 -32
- package/esm2015/lib/common-dialog/common-dialog.service.js +0 -63
- package/esm2015/lib/contact/contact.component.js +0 -232
- package/esm2015/lib/intake.service.js +0 -183
- package/esm2015/lib/safetyPlan/serviceProvider.component.js +0 -130
- package/esm2015/lib/safetyPlan/victimSafetyPlan.component.js +0 -257
- package/esm2015/lib/safetyPlan/victimSafetyPlanDetail.component.js +0 -556
- package/esm2015/lib/shared/app.shared.module.js +0 -81
- package/esm2015/lib/shared/directives/phone-mask.directive.js +0 -168
- package/esm2015/lib/shared/validators/date.validator.js +0 -108
- package/esm2015/lib/shared/validators/index.js +0 -7
- package/esm2015/lib/smart-victim-delete-confirm.component.js +0 -61
- package/esm2015/lib/smart-victim-detail/smart-victim-detail.component.js +0 -1410
- package/esm2015/lib/smart-victim.component.js +0 -476
- package/esm2015/lib/smart-victim.model.js +0 -631
- package/esm2015/lib/smart-victim.module.js +0 -84
- package/esm2015/lib/smart-victim.service.js +0 -792
- package/esm2015/lib/victim-routing.module.js +0 -40
- package/esm2015/lib/victimSearch/VictimSearchFilter.js +0 -20
- package/esm2015/lib/victimSearch/victimSearchForm.component.js +0 -59
- package/esm2015/public-api.js +0 -13
- package/esm5/csmart-ngc-smart-victim.js +0 -25
- package/esm5/lib/caseNote/caseNote.component.js +0 -372
- package/esm5/lib/common-dialog/common-dialog.component.js +0 -48
- package/esm5/lib/common-dialog/common-dialog.module.js +0 -36
- package/esm5/lib/common-dialog/common-dialog.service.js +0 -75
- package/esm5/lib/contact/contact.component.js +0 -285
- package/esm5/lib/intake.service.js +0 -194
- package/esm5/lib/safetyPlan/serviceProvider.component.js +0 -99
- package/esm5/lib/safetyPlan/victimSafetyPlan.component.js +0 -306
- package/esm5/lib/safetyPlan/victimSafetyPlanDetail.component.js +0 -628
- package/esm5/lib/shared/app.shared.module.js +0 -85
- package/esm5/lib/shared/directives/phone-mask.directive.js +0 -184
- package/esm5/lib/shared/validators/date.validator.js +0 -108
- package/esm5/lib/shared/validators/index.js +0 -7
- package/esm5/lib/smart-victim-delete-confirm.component.js +0 -51
- package/esm5/lib/smart-victim-detail/smart-victim-detail.component.js +0 -1502
- package/esm5/lib/smart-victim.component.js +0 -528
- package/esm5/lib/smart-victim.model.js +0 -541
- package/esm5/lib/smart-victim.module.js +0 -84
- package/esm5/lib/smart-victim.service.js +0 -1063
- package/esm5/lib/victim-routing.module.js +0 -44
- package/esm5/lib/victimSearch/VictimSearchFilter.js +0 -24
- package/esm5/lib/victimSearch/victimSearchForm.component.js +0 -70
- package/esm5/public-api.js +0 -13
- package/fesm2015/csmart-ngc-smart-victim.js +0 -5690
- package/fesm2015/csmart-ngc-smart-victim.js.map +0 -1
- package/fesm5/csmart-ngc-smart-victim.js +0 -6211
- package/fesm5/csmart-ngc-smart-victim.js.map +0 -1
@@ -1,1063 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @fileoverview added by tsickle
|
3
|
-
* Generated from: lib/smart-victim.service.ts
|
4
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
5
|
-
*/
|
6
|
-
import { HttpClient, HttpHeaders } from '@angular/common/http';
|
7
|
-
import { Injectable, Inject } from '@angular/core';
|
8
|
-
import { SMART_LOOKUP_SERVICE_URL, SMART_OFFENDER_SERVICE_URL, SMART_VICTIM_SERVICE_URL } from './smart-victim.model';
|
9
|
-
import { throwError as observableThrowError } from 'rxjs';
|
10
|
-
import { map, catchError } from 'rxjs/operators';
|
11
|
-
import { Apollo } from 'apollo-angular';
|
12
|
-
import * as i0 from "@angular/core";
|
13
|
-
import * as i1 from "@angular/common/http";
|
14
|
-
import * as i2 from "./smart-victim.model";
|
15
|
-
import * as i3 from "apollo-angular";
|
16
|
-
/** @type {?} */
|
17
|
-
var headers = new HttpHeaders({ 'Content-Type': 'application/json' });
|
18
|
-
/** @type {?} */
|
19
|
-
var options = { headers: headers };
|
20
|
-
var NgcSmartVictimService = /** @class */ (function () {
|
21
|
-
function NgcSmartVictimService(http, smartOffenderServiceUrl, smartLookupServiceUrl, smartVictimServiceUrl, apollo) {
|
22
|
-
this.http = http;
|
23
|
-
this.smartOffenderServiceUrl = smartOffenderServiceUrl;
|
24
|
-
this.smartLookupServiceUrl = smartLookupServiceUrl;
|
25
|
-
this.smartVictimServiceUrl = smartVictimServiceUrl;
|
26
|
-
this.apollo = apollo;
|
27
|
-
this.serviceApiUrl = 'https://smart-service-test.azurewebsites.net/graphql';
|
28
|
-
}
|
29
|
-
// getVictimInsurances(offenderId: any) {
|
30
|
-
// return this.http.get(this.smartOffenderServiceUrl + '/VictimInsurances/?offenderId=' + offenderId).pipe();
|
31
|
-
// }
|
32
|
-
// getVictimInsurance(id: any) {
|
33
|
-
// return this.http.get(this.smartOffenderServiceUrl + '/VictimInsurances/?id=' + id).pipe();
|
34
|
-
// }
|
35
|
-
// postVictimInsurance(val: any) {
|
36
|
-
// return this.http.post(this.smartOffenderServiceUrl + '/VictimInsurances', val).pipe();
|
37
|
-
// }
|
38
|
-
// putVictimInsurance(id: any, val: any) {
|
39
|
-
// return this.http.put(this.smartOffenderServiceUrl + '/VictimInsurances/?id=' + id, val).pipe();
|
40
|
-
// }
|
41
|
-
// deleteVictimInsurance(id: any) {
|
42
|
-
// return this.http.delete(this.smartOffenderServiceUrl + '/VictimInsurances/?id=' + id).pipe();
|
43
|
-
// }
|
44
|
-
// getVictimInsuranceTypes() {
|
45
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceTypes').pipe();
|
46
|
-
// }
|
47
|
-
// getVictimInsurancePolicyHolders() {
|
48
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsurancePolicyHolders').pipe();
|
49
|
-
// }
|
50
|
-
// getVictimInsuranceSwitchReasons() {
|
51
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceSwitchReasons').pipe();
|
52
|
-
// }
|
53
|
-
// getVictimInsuranceProviders() {
|
54
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceProvider').pipe();
|
55
|
-
// }
|
56
|
-
// getVictimInsuranceProvider(id) {
|
57
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceProviders/' + id).pipe();
|
58
|
-
// }
|
59
|
-
// postProviderInformation(val: any) {
|
60
|
-
// return this.http.post(this.smartLookupServiceUrl + '/VictimInsuranceProviders', val).pipe();
|
61
|
-
// }
|
62
|
-
// getVictimInsurances(offenderId: any) {
|
63
|
-
// return this.http.get(this.smartOffenderServiceUrl + '/VictimInsurances/?offenderId=' + offenderId).pipe();
|
64
|
-
// }
|
65
|
-
// getVictimInsurance(id: any) {
|
66
|
-
// return this.http.get(this.smartOffenderServiceUrl + '/VictimInsurances/?id=' + id).pipe();
|
67
|
-
// }
|
68
|
-
// postVictimInsurance(val: any) {
|
69
|
-
// return this.http.post(this.smartOffenderServiceUrl + '/VictimInsurances', val).pipe();
|
70
|
-
// }
|
71
|
-
// putVictimInsurance(id: any, val: any) {
|
72
|
-
// return this.http.put(this.smartOffenderServiceUrl + '/VictimInsurances/?id=' + id, val).pipe();
|
73
|
-
// }
|
74
|
-
// deleteVictimInsurance(id: any) {
|
75
|
-
// return this.http.delete(this.smartOffenderServiceUrl + '/VictimInsurances/?id=' + id).pipe();
|
76
|
-
// }
|
77
|
-
// getVictimInsuranceTypes() {
|
78
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceTypes').pipe();
|
79
|
-
// }
|
80
|
-
// getVictimInsurancePolicyHolders() {
|
81
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsurancePolicyHolders').pipe();
|
82
|
-
// }
|
83
|
-
// getVictimInsuranceSwitchReasons() {
|
84
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceSwitchReasons').pipe();
|
85
|
-
// }
|
86
|
-
// getVictimInsuranceProviders() {
|
87
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceProvider').pipe();
|
88
|
-
// }
|
89
|
-
// getVictimInsuranceProvider(id) {
|
90
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceProviders/' + id).pipe();
|
91
|
-
// }
|
92
|
-
// postProviderInformation(val: any) {
|
93
|
-
// return this.http.post(this.smartLookupServiceUrl + '/VictimInsuranceProviders', val).pipe();
|
94
|
-
// }
|
95
|
-
/**
|
96
|
-
* @private
|
97
|
-
* @param {?} error
|
98
|
-
* @return {?}
|
99
|
-
*/
|
100
|
-
NgcSmartVictimService.prototype.handleError =
|
101
|
-
// getVictimInsurances(offenderId: any) {
|
102
|
-
// return this.http.get(this.smartOffenderServiceUrl + '/VictimInsurances/?offenderId=' + offenderId).pipe();
|
103
|
-
// }
|
104
|
-
// getVictimInsurance(id: any) {
|
105
|
-
// return this.http.get(this.smartOffenderServiceUrl + '/VictimInsurances/?id=' + id).pipe();
|
106
|
-
// }
|
107
|
-
// postVictimInsurance(val: any) {
|
108
|
-
// return this.http.post(this.smartOffenderServiceUrl + '/VictimInsurances', val).pipe();
|
109
|
-
// }
|
110
|
-
// putVictimInsurance(id: any, val: any) {
|
111
|
-
// return this.http.put(this.smartOffenderServiceUrl + '/VictimInsurances/?id=' + id, val).pipe();
|
112
|
-
// }
|
113
|
-
// deleteVictimInsurance(id: any) {
|
114
|
-
// return this.http.delete(this.smartOffenderServiceUrl + '/VictimInsurances/?id=' + id).pipe();
|
115
|
-
// }
|
116
|
-
// getVictimInsuranceTypes() {
|
117
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceTypes').pipe();
|
118
|
-
// }
|
119
|
-
// getVictimInsurancePolicyHolders() {
|
120
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsurancePolicyHolders').pipe();
|
121
|
-
// }
|
122
|
-
// getVictimInsuranceSwitchReasons() {
|
123
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceSwitchReasons').pipe();
|
124
|
-
// }
|
125
|
-
// getVictimInsuranceProviders() {
|
126
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceProvider').pipe();
|
127
|
-
// }
|
128
|
-
// getVictimInsuranceProvider(id) {
|
129
|
-
// return this.http.get(this.smartLookupServiceUrl + '/VictimInsuranceProviders/' + id).pipe();
|
130
|
-
// }
|
131
|
-
// postProviderInformation(val: any) {
|
132
|
-
// return this.http.post(this.smartLookupServiceUrl + '/VictimInsuranceProviders', val).pipe();
|
133
|
-
// }
|
134
|
-
/**
|
135
|
-
* @private
|
136
|
-
* @param {?} error
|
137
|
-
* @return {?}
|
138
|
-
*/
|
139
|
-
function (error) {
|
140
|
-
console.error(error);
|
141
|
-
return observableThrowError(error.json().error || 'Server error');
|
142
|
-
};
|
143
|
-
/**
|
144
|
-
* @return {?}
|
145
|
-
*/
|
146
|
-
NgcSmartVictimService.prototype.getDrugsTypes = /**
|
147
|
-
* @return {?}
|
148
|
-
*/
|
149
|
-
function () {
|
150
|
-
return this.http.get(this.smartLookupServiceUrl + 'DrugTypes', options).pipe(map((/**
|
151
|
-
* @param {?} res
|
152
|
-
* @return {?}
|
153
|
-
*/
|
154
|
-
function (res) { return res; })));
|
155
|
-
};
|
156
|
-
/**
|
157
|
-
* @param {?} offenderId
|
158
|
-
* @return {?}
|
159
|
-
*/
|
160
|
-
NgcSmartVictimService.prototype.getDocketList = /**
|
161
|
-
* @param {?} offenderId
|
162
|
-
* @return {?}
|
163
|
-
*/
|
164
|
-
function (offenderId) {
|
165
|
-
/** @type {?} */
|
166
|
-
var queryString = "\n {\n findDockets(input: { where: { offenderId:" + offenderId + " } }) {\n totalCount\n message\n data {\n docketId\n docketNumber\n \n }\n }\n }";
|
167
|
-
return this.http.post(this.serviceApiUrl, { query: queryString }).pipe(map((/**
|
168
|
-
* @param {?} __0
|
169
|
-
* @return {?}
|
170
|
-
*/
|
171
|
-
function (_a) {
|
172
|
-
var data = _a.data;
|
173
|
-
console.log('dockets for this offender:', data.findDockets.data);
|
174
|
-
return data.findDockets.data;
|
175
|
-
})));
|
176
|
-
};
|
177
|
-
/**
|
178
|
-
* @return {?}
|
179
|
-
*/
|
180
|
-
NgcSmartVictimService.prototype.getSupportTypes = /**
|
181
|
-
* @return {?}
|
182
|
-
*/
|
183
|
-
function () {
|
184
|
-
return this.http.get(this.smartLookupServiceUrl + 'VictimSupportTypes', options).pipe(map((/**
|
185
|
-
* @param {?} res
|
186
|
-
* @return {?}
|
187
|
-
*/
|
188
|
-
function (res) { return res; })));
|
189
|
-
};
|
190
|
-
/**
|
191
|
-
* @return {?}
|
192
|
-
*/
|
193
|
-
NgcSmartVictimService.prototype.getPrefixes = /**
|
194
|
-
* @return {?}
|
195
|
-
*/
|
196
|
-
function () {
|
197
|
-
return this.http.get(this.smartLookupServiceUrl + 'Prefixes', options).pipe(map((/**
|
198
|
-
* @param {?} res
|
199
|
-
* @return {?}
|
200
|
-
*/
|
201
|
-
function (res) { return res; })));
|
202
|
-
};
|
203
|
-
/**
|
204
|
-
* @return {?}
|
205
|
-
*/
|
206
|
-
NgcSmartVictimService.prototype.getSuffixes = /**
|
207
|
-
* @return {?}
|
208
|
-
*/
|
209
|
-
function () {
|
210
|
-
return this.http.get(this.smartLookupServiceUrl + 'Suffixes', options).pipe(map((/**
|
211
|
-
* @param {?} res
|
212
|
-
* @return {?}
|
213
|
-
*/
|
214
|
-
function (res) { return res; })));
|
215
|
-
};
|
216
|
-
/**
|
217
|
-
* @return {?}
|
218
|
-
*/
|
219
|
-
NgcSmartVictimService.prototype.getRelationshipTypes = /**
|
220
|
-
* @return {?}
|
221
|
-
*/
|
222
|
-
function () {
|
223
|
-
return this.http.get(this.smartLookupServiceUrl + 'RelationshipTypes', options).pipe(map((/**
|
224
|
-
* @param {?} res
|
225
|
-
* @return {?}
|
226
|
-
*/
|
227
|
-
function (res) { return res; })));
|
228
|
-
};
|
229
|
-
/**
|
230
|
-
* @return {?}
|
231
|
-
*/
|
232
|
-
NgcSmartVictimService.prototype.getGenders = /**
|
233
|
-
* @return {?}
|
234
|
-
*/
|
235
|
-
function () {
|
236
|
-
return this.http.get(this.smartLookupServiceUrl + 'Genders', options).pipe(map((/**
|
237
|
-
* @param {?} res
|
238
|
-
* @return {?}
|
239
|
-
*/
|
240
|
-
function (res) { return res; })));
|
241
|
-
};
|
242
|
-
/**
|
243
|
-
* @return {?}
|
244
|
-
*/
|
245
|
-
NgcSmartVictimService.prototype.getWeaponTypes = /**
|
246
|
-
* @return {?}
|
247
|
-
*/
|
248
|
-
function () {
|
249
|
-
return this.http.get(this.smartLookupServiceUrl + 'WeaponTypes', options).pipe(map((/**
|
250
|
-
* @param {?} res
|
251
|
-
* @return {?}
|
252
|
-
*/
|
253
|
-
function (res) { return res; })));
|
254
|
-
};
|
255
|
-
/**
|
256
|
-
* @return {?}
|
257
|
-
*/
|
258
|
-
NgcSmartVictimService.prototype.getFlagOptionYesNoUnknowns = /**
|
259
|
-
* @return {?}
|
260
|
-
*/
|
261
|
-
function () {
|
262
|
-
return this.http.get(this.smartLookupServiceUrl + 'FlagOptionYesNoUnknowns', options).pipe(map((/**
|
263
|
-
* @param {?} res
|
264
|
-
* @return {?}
|
265
|
-
*/
|
266
|
-
function (res) {
|
267
|
-
return res;
|
268
|
-
})));
|
269
|
-
};
|
270
|
-
/**
|
271
|
-
* @return {?}
|
272
|
-
*/
|
273
|
-
NgcSmartVictimService.prototype.getContactTypes = /**
|
274
|
-
* @return {?}
|
275
|
-
*/
|
276
|
-
function () {
|
277
|
-
return this.http.get(this.smartLookupServiceUrl + 'ContactTypes', options).pipe(map((/**
|
278
|
-
* @param {?} res
|
279
|
-
* @return {?}
|
280
|
-
*/
|
281
|
-
function (res) {
|
282
|
-
return res;
|
283
|
-
})));
|
284
|
-
};
|
285
|
-
/**
|
286
|
-
* @return {?}
|
287
|
-
*/
|
288
|
-
NgcSmartVictimService.prototype.getContactMethods = /**
|
289
|
-
* @return {?}
|
290
|
-
*/
|
291
|
-
function () {
|
292
|
-
return this.http.get(this.smartLookupServiceUrl + 'VictimContactMethods', options).pipe(map((/**
|
293
|
-
* @param {?} res
|
294
|
-
* @return {?}
|
295
|
-
*/
|
296
|
-
function (res) {
|
297
|
-
return res;
|
298
|
-
})));
|
299
|
-
};
|
300
|
-
/**
|
301
|
-
* @return {?}
|
302
|
-
*/
|
303
|
-
NgcSmartVictimService.prototype.getContactBys = /**
|
304
|
-
* @return {?}
|
305
|
-
*/
|
306
|
-
function () {
|
307
|
-
return this.http.get(this.smartLookupServiceUrl + 'VictimContactPurposes', options).pipe(map((/**
|
308
|
-
* @param {?} res
|
309
|
-
* @return {?}
|
310
|
-
*/
|
311
|
-
function (res) {
|
312
|
-
return res;
|
313
|
-
})));
|
314
|
-
};
|
315
|
-
/**
|
316
|
-
* @return {?}
|
317
|
-
*/
|
318
|
-
NgcSmartVictimService.prototype.getVictimContactPurposes = /**
|
319
|
-
* @return {?}
|
320
|
-
*/
|
321
|
-
function () {
|
322
|
-
return this.http.get(this.smartLookupServiceUrl + 'VictimContactPurposes', options).pipe(map((/**
|
323
|
-
* @param {?} res
|
324
|
-
* @return {?}
|
325
|
-
*/
|
326
|
-
function (res) {
|
327
|
-
return res;
|
328
|
-
})));
|
329
|
-
};
|
330
|
-
/**
|
331
|
-
* @return {?}
|
332
|
-
*/
|
333
|
-
NgcSmartVictimService.prototype.getVictimServiceTypes = /**
|
334
|
-
* @return {?}
|
335
|
-
*/
|
336
|
-
function () {
|
337
|
-
return this.http.get(this.smartLookupServiceUrl + 'VictimServiceTypes', options).pipe(map((/**
|
338
|
-
* @param {?} res
|
339
|
-
* @return {?}
|
340
|
-
*/
|
341
|
-
function (res) {
|
342
|
-
return res;
|
343
|
-
})));
|
344
|
-
};
|
345
|
-
/**
|
346
|
-
* @return {?}
|
347
|
-
*/
|
348
|
-
NgcSmartVictimService.prototype.getVictimServiceStatus = /**
|
349
|
-
* @return {?}
|
350
|
-
*/
|
351
|
-
function () {
|
352
|
-
return this.http.get(this.smartLookupServiceUrl + 'VictimServiceStatus', options).pipe(map((/**
|
353
|
-
* @param {?} res
|
354
|
-
* @return {?}
|
355
|
-
*/
|
356
|
-
function (res) {
|
357
|
-
return res;
|
358
|
-
})));
|
359
|
-
};
|
360
|
-
/**
|
361
|
-
* @return {?}
|
362
|
-
*/
|
363
|
-
NgcSmartVictimService.prototype.getvVictimServiceTypeProgramProviders = /**
|
364
|
-
* @return {?}
|
365
|
-
*/
|
366
|
-
function () {
|
367
|
-
return this.http.get(this.smartLookupServiceUrl + 'vVictimServiceTypeProgramProviders', options).pipe(map((/**
|
368
|
-
* @param {?} res
|
369
|
-
* @return {?}
|
370
|
-
*/
|
371
|
-
function (res) {
|
372
|
-
return res;
|
373
|
-
})));
|
374
|
-
};
|
375
|
-
/**
|
376
|
-
* @param {?} val
|
377
|
-
* @return {?}
|
378
|
-
*/
|
379
|
-
NgcSmartVictimService.prototype.getVictim = /**
|
380
|
-
* @param {?} val
|
381
|
-
* @return {?}
|
382
|
-
*/
|
383
|
-
function (val) {
|
384
|
-
return this.http.get(this.smartVictimServiceUrl + 'Victims/' + val, options).pipe(map((/**
|
385
|
-
* @param {?} res
|
386
|
-
* @return {?}
|
387
|
-
*/
|
388
|
-
function (res) {
|
389
|
-
console.log('victim return data');
|
390
|
-
console.log(res);
|
391
|
-
return res;
|
392
|
-
})));
|
393
|
-
};
|
394
|
-
/**
|
395
|
-
* @param {?} val
|
396
|
-
* @return {?}
|
397
|
-
*/
|
398
|
-
NgcSmartVictimService.prototype.getVictimAdvocate = /**
|
399
|
-
* @param {?} val
|
400
|
-
* @return {?}
|
401
|
-
*/
|
402
|
-
function (val) {
|
403
|
-
return this.http.get(this.smartVictimServiceUrl + 'VictimAdvocates/' + val, options).pipe(map((/**
|
404
|
-
* @param {?} res
|
405
|
-
* @return {?}
|
406
|
-
*/
|
407
|
-
function (res) {
|
408
|
-
return res;
|
409
|
-
})));
|
410
|
-
};
|
411
|
-
/**
|
412
|
-
* @param {?} val
|
413
|
-
* @return {?}
|
414
|
-
*/
|
415
|
-
NgcSmartVictimService.prototype.getVictimGuardian = /**
|
416
|
-
* @param {?} val
|
417
|
-
* @return {?}
|
418
|
-
*/
|
419
|
-
function (val) {
|
420
|
-
return this.http.get(this.smartVictimServiceUrl + 'VictimGuardians/' + val, options).pipe(map((/**
|
421
|
-
* @param {?} res
|
422
|
-
* @return {?}
|
423
|
-
*/
|
424
|
-
function (res) {
|
425
|
-
return res;
|
426
|
-
})));
|
427
|
-
};
|
428
|
-
/**
|
429
|
-
* @param {?} val
|
430
|
-
* @return {?}
|
431
|
-
*/
|
432
|
-
NgcSmartVictimService.prototype.postVictims = /**
|
433
|
-
* @param {?} val
|
434
|
-
* @return {?}
|
435
|
-
*/
|
436
|
-
function (val) {
|
437
|
-
/** @type {?} */
|
438
|
-
var tempVal = JSON.stringify(val);
|
439
|
-
return this.http.post(this.smartVictimServiceUrl + 'Victims', tempVal, options).pipe(map((/**
|
440
|
-
* @param {?} res
|
441
|
-
* @return {?}
|
442
|
-
*/
|
443
|
-
function (res) { return res; })));
|
444
|
-
};
|
445
|
-
/**
|
446
|
-
* @param {?} id
|
447
|
-
* @param {?} val
|
448
|
-
* @return {?}
|
449
|
-
*/
|
450
|
-
NgcSmartVictimService.prototype.putVictims = /**
|
451
|
-
* @param {?} id
|
452
|
-
* @param {?} val
|
453
|
-
* @return {?}
|
454
|
-
*/
|
455
|
-
function (id, val) {
|
456
|
-
/** @type {?} */
|
457
|
-
var tempVal = JSON.stringify(val);
|
458
|
-
return this.http.put(this.smartVictimServiceUrl + 'Victims/' + id, tempVal, options).pipe(map((/**
|
459
|
-
* @param {?} res
|
460
|
-
* @return {?}
|
461
|
-
*/
|
462
|
-
function (res) { return res; })));
|
463
|
-
};
|
464
|
-
/**
|
465
|
-
* @param {?} id
|
466
|
-
* @param {?} val
|
467
|
-
* @return {?}
|
468
|
-
*/
|
469
|
-
NgcSmartVictimService.prototype.putVictimAdvocate = /**
|
470
|
-
* @param {?} id
|
471
|
-
* @param {?} val
|
472
|
-
* @return {?}
|
473
|
-
*/
|
474
|
-
function (id, val) {
|
475
|
-
/** @type {?} */
|
476
|
-
var body;
|
477
|
-
body = JSON.stringify(val);
|
478
|
-
return this.http.put(this.smartVictimServiceUrl + 'VictimAdvocates/' + id, body, options).pipe(map((/**
|
479
|
-
* @param {?} res
|
480
|
-
* @return {?}
|
481
|
-
*/
|
482
|
-
function (res) { return res; })));
|
483
|
-
};
|
484
|
-
/**
|
485
|
-
* @param {?} id
|
486
|
-
* @param {?} val
|
487
|
-
* @return {?}
|
488
|
-
*/
|
489
|
-
NgcSmartVictimService.prototype.postVictimAdvocate = /**
|
490
|
-
* @param {?} id
|
491
|
-
* @param {?} val
|
492
|
-
* @return {?}
|
493
|
-
*/
|
494
|
-
function (id, val) {
|
495
|
-
/** @type {?} */
|
496
|
-
var tempVal = JSON.stringify(val);
|
497
|
-
return this.http.post(this.smartVictimServiceUrl + 'VictimAdvocates/' + id, tempVal, options).pipe(map((/**
|
498
|
-
* @param {?} res
|
499
|
-
* @return {?}
|
500
|
-
*/
|
501
|
-
function (res) { return res; })));
|
502
|
-
};
|
503
|
-
/**
|
504
|
-
* @param {?} id
|
505
|
-
* @param {?} val
|
506
|
-
* @return {?}
|
507
|
-
*/
|
508
|
-
NgcSmartVictimService.prototype.putVictimGuardian = /**
|
509
|
-
* @param {?} id
|
510
|
-
* @param {?} val
|
511
|
-
* @return {?}
|
512
|
-
*/
|
513
|
-
function (id, val) {
|
514
|
-
console.log('update victim guardian');
|
515
|
-
console.log(val);
|
516
|
-
/** @type {?} */
|
517
|
-
var tempVal = JSON.stringify(val);
|
518
|
-
return this.http.put(this.smartVictimServiceUrl + 'VictimGuardians/' + id, tempVal, options).pipe(map((/**
|
519
|
-
* @param {?} res
|
520
|
-
* @return {?}
|
521
|
-
*/
|
522
|
-
function (res) { return res; })));
|
523
|
-
};
|
524
|
-
/**
|
525
|
-
* @param {?} id
|
526
|
-
* @param {?} val
|
527
|
-
* @return {?}
|
528
|
-
*/
|
529
|
-
NgcSmartVictimService.prototype.postVictimGuardian = /**
|
530
|
-
* @param {?} id
|
531
|
-
* @param {?} val
|
532
|
-
* @return {?}
|
533
|
-
*/
|
534
|
-
function (id, val) {
|
535
|
-
/** @type {?} */
|
536
|
-
var tempVal = JSON.stringify(val);
|
537
|
-
return this.http.post(this.smartVictimServiceUrl + 'VictimGuardians/' + id, tempVal, options).pipe(map((/**
|
538
|
-
* @param {?} res
|
539
|
-
* @return {?}
|
540
|
-
*/
|
541
|
-
function (res) { return res; })));
|
542
|
-
};
|
543
|
-
/**
|
544
|
-
* @param {?} val
|
545
|
-
* @return {?}
|
546
|
-
*/
|
547
|
-
NgcSmartVictimService.prototype.getVictimDrugUse = /**
|
548
|
-
* @param {?} val
|
549
|
-
* @return {?}
|
550
|
-
*/
|
551
|
-
function (val) {
|
552
|
-
return this.http.get(this.smartVictimServiceUrl + 'VictimDrugUses/' + val, options).pipe(map((/**
|
553
|
-
* @param {?} res
|
554
|
-
* @return {?}
|
555
|
-
*/
|
556
|
-
function (res) {
|
557
|
-
return res;
|
558
|
-
})));
|
559
|
-
};
|
560
|
-
/**
|
561
|
-
* @param {?} id
|
562
|
-
* @param {?} val
|
563
|
-
* @return {?}
|
564
|
-
*/
|
565
|
-
NgcSmartVictimService.prototype.putVictimDrugUse = /**
|
566
|
-
* @param {?} id
|
567
|
-
* @param {?} val
|
568
|
-
* @return {?}
|
569
|
-
*/
|
570
|
-
function (id, val) {
|
571
|
-
/** @type {?} */
|
572
|
-
var tempVal = JSON.stringify(val);
|
573
|
-
return this.http.put(this.smartVictimServiceUrl + 'VictimDrugUses/' + id, tempVal, options).pipe(map((/**
|
574
|
-
* @param {?} res
|
575
|
-
* @return {?}
|
576
|
-
*/
|
577
|
-
function (res) { return res; })));
|
578
|
-
};
|
579
|
-
/**
|
580
|
-
* @param {?} id
|
581
|
-
* @param {?} val
|
582
|
-
* @return {?}
|
583
|
-
*/
|
584
|
-
NgcSmartVictimService.prototype.postVictimDrugUse = /**
|
585
|
-
* @param {?} id
|
586
|
-
* @param {?} val
|
587
|
-
* @return {?}
|
588
|
-
*/
|
589
|
-
function (id, val) {
|
590
|
-
/** @type {?} */
|
591
|
-
var tempVal = JSON.stringify(val);
|
592
|
-
return this.http.post(this.smartVictimServiceUrl + 'VictimDrugUses/' + id, tempVal, options).pipe(map((/**
|
593
|
-
* @param {?} res
|
594
|
-
* @return {?}
|
595
|
-
*/
|
596
|
-
function (res) { return res; })));
|
597
|
-
};
|
598
|
-
/**
|
599
|
-
* @param {?} id
|
600
|
-
* @param {?} val
|
601
|
-
* @return {?}
|
602
|
-
*/
|
603
|
-
NgcSmartVictimService.prototype.putVictimWeaponUse = /**
|
604
|
-
* @param {?} id
|
605
|
-
* @param {?} val
|
606
|
-
* @return {?}
|
607
|
-
*/
|
608
|
-
function (id, val) {
|
609
|
-
/** @type {?} */
|
610
|
-
var tempVal = JSON.stringify(val);
|
611
|
-
return this.http.put(this.smartVictimServiceUrl + 'VictimWeaponUses/' + id, tempVal, options).pipe(map((/**
|
612
|
-
* @param {?} res
|
613
|
-
* @return {?}
|
614
|
-
*/
|
615
|
-
function (res) { return res; })));
|
616
|
-
};
|
617
|
-
/**
|
618
|
-
* @param {?} id
|
619
|
-
* @param {?} val
|
620
|
-
* @return {?}
|
621
|
-
*/
|
622
|
-
NgcSmartVictimService.prototype.postVictimWeaponUse = /**
|
623
|
-
* @param {?} id
|
624
|
-
* @param {?} val
|
625
|
-
* @return {?}
|
626
|
-
*/
|
627
|
-
function (id, val) {
|
628
|
-
/** @type {?} */
|
629
|
-
var tempVal = JSON.stringify(val);
|
630
|
-
return this.http.post(this.smartVictimServiceUrl + 'VictimWeaponUses/' + id, tempVal, options).pipe(map((/**
|
631
|
-
* @param {?} res
|
632
|
-
* @return {?}
|
633
|
-
*/
|
634
|
-
function (res) { return res; })));
|
635
|
-
};
|
636
|
-
/**
|
637
|
-
* @param {?} id
|
638
|
-
* @param {?} val
|
639
|
-
* @return {?}
|
640
|
-
*/
|
641
|
-
NgcSmartVictimService.prototype.putVictimSupport = /**
|
642
|
-
* @param {?} id
|
643
|
-
* @param {?} val
|
644
|
-
* @return {?}
|
645
|
-
*/
|
646
|
-
function (id, val) {
|
647
|
-
/** @type {?} */
|
648
|
-
var tempVal = JSON.stringify(val);
|
649
|
-
return this.http.put(this.smartVictimServiceUrl + 'VictimSupports/' + id, tempVal, options).pipe(map((/**
|
650
|
-
* @param {?} res
|
651
|
-
* @return {?}
|
652
|
-
*/
|
653
|
-
function (res) { return res; })));
|
654
|
-
};
|
655
|
-
/**
|
656
|
-
* @param {?} id
|
657
|
-
* @param {?} val
|
658
|
-
* @return {?}
|
659
|
-
*/
|
660
|
-
NgcSmartVictimService.prototype.postVictimSupport = /**
|
661
|
-
* @param {?} id
|
662
|
-
* @param {?} val
|
663
|
-
* @return {?}
|
664
|
-
*/
|
665
|
-
function (id, val) {
|
666
|
-
/** @type {?} */
|
667
|
-
var tempVal = JSON.stringify(val);
|
668
|
-
return this.http.post(this.smartVictimServiceUrl + 'VictimSupports/' + id, tempVal, options).pipe(map((/**
|
669
|
-
* @param {?} res
|
670
|
-
* @return {?}
|
671
|
-
*/
|
672
|
-
function (res) { return res; })));
|
673
|
-
};
|
674
|
-
/**
|
675
|
-
* @param {?} val
|
676
|
-
* @return {?}
|
677
|
-
*/
|
678
|
-
NgcSmartVictimService.prototype.deleteVictims = /**
|
679
|
-
* @param {?} val
|
680
|
-
* @return {?}
|
681
|
-
*/
|
682
|
-
function (val) {
|
683
|
-
return this.http.delete(this.smartVictimServiceUrl + 'Victims/' + val, options).pipe(map((/**
|
684
|
-
* @param {?} res
|
685
|
-
* @return {?}
|
686
|
-
*/
|
687
|
-
function (res) { return res; })));
|
688
|
-
};
|
689
|
-
// //==============Victim Serive===================================
|
690
|
-
// //==============Victim Serive===================================
|
691
|
-
/**
|
692
|
-
* @param {?} offenderId
|
693
|
-
* @return {?}
|
694
|
-
*/
|
695
|
-
NgcSmartVictimService.prototype.getVictims =
|
696
|
-
// //==============Victim Serive===================================
|
697
|
-
/**
|
698
|
-
* @param {?} offenderId
|
699
|
-
* @return {?}
|
700
|
-
*/
|
701
|
-
function (offenderId) {
|
702
|
-
return this.http.get(this.smartVictimServiceUrl + 'Victims/offender/' + offenderId)
|
703
|
-
.pipe(map((/**
|
704
|
-
* @param {?} res
|
705
|
-
* @return {?}
|
706
|
-
*/
|
707
|
-
function (res) {
|
708
|
-
return res;
|
709
|
-
})), catchError(this.handleError));
|
710
|
-
};
|
711
|
-
/**
|
712
|
-
* @param {?} filter
|
713
|
-
* @return {?}
|
714
|
-
*/
|
715
|
-
NgcSmartVictimService.prototype.getVictimsByFilter = /**
|
716
|
-
* @param {?} filter
|
717
|
-
* @return {?}
|
718
|
-
*/
|
719
|
-
function (filter) {
|
720
|
-
return this.http
|
721
|
-
.post(this.smartVictimServiceUrl + '/Victims', JSON.stringify(filter), { headers: headers })
|
722
|
-
.pipe(map((/**
|
723
|
-
* @param {?} res
|
724
|
-
* @return {?}
|
725
|
-
*/
|
726
|
-
function (res) {
|
727
|
-
return res;
|
728
|
-
})), catchError(this.handleError));
|
729
|
-
};
|
730
|
-
/**
|
731
|
-
* @param {?} filter
|
732
|
-
* @return {?}
|
733
|
-
*/
|
734
|
-
NgcSmartVictimService.prototype.getVictimListByFilter = /**
|
735
|
-
* @param {?} filter
|
736
|
-
* @return {?}
|
737
|
-
*/
|
738
|
-
function (filter) {
|
739
|
-
console.log('filer in service');
|
740
|
-
console.log(filter);
|
741
|
-
return this.http
|
742
|
-
.post(this.smartVictimServiceUrl + 'vVictims/Filter', JSON.stringify(filter), options)
|
743
|
-
.pipe();
|
744
|
-
};
|
745
|
-
/**
|
746
|
-
* @param {?} victimId
|
747
|
-
* @return {?}
|
748
|
-
*/
|
749
|
-
NgcSmartVictimService.prototype.getCasetNotes = /**
|
750
|
-
* @param {?} victimId
|
751
|
-
* @return {?}
|
752
|
-
*/
|
753
|
-
function (victimId) {
|
754
|
-
return this.http.get(this.smartVictimServiceUrl + 'VictimCaseNotes/victim/' + victimId)
|
755
|
-
.pipe(map((/**
|
756
|
-
* @param {?} res
|
757
|
-
* @return {?}
|
758
|
-
*/
|
759
|
-
function (res) {
|
760
|
-
return res;
|
761
|
-
})), catchError(this.handleError));
|
762
|
-
};
|
763
|
-
/**
|
764
|
-
* @param {?} caseNote
|
765
|
-
* @return {?}
|
766
|
-
*/
|
767
|
-
NgcSmartVictimService.prototype.addCaseNote = /**
|
768
|
-
* @param {?} caseNote
|
769
|
-
* @return {?}
|
770
|
-
*/
|
771
|
-
function (caseNote) {
|
772
|
-
/** @type {?} */
|
773
|
-
var body;
|
774
|
-
body = JSON.stringify(caseNote);
|
775
|
-
return this.http
|
776
|
-
.post(this.smartVictimServiceUrl + 'VictimCaseNotes/', body, options);
|
777
|
-
};
|
778
|
-
/**
|
779
|
-
* @param {?} caseNote
|
780
|
-
* @return {?}
|
781
|
-
*/
|
782
|
-
NgcSmartVictimService.prototype.updateCaseNote = /**
|
783
|
-
* @param {?} caseNote
|
784
|
-
* @return {?}
|
785
|
-
*/
|
786
|
-
function (caseNote) {
|
787
|
-
/** @type {?} */
|
788
|
-
var body;
|
789
|
-
body = JSON.stringify(caseNote);
|
790
|
-
return this.http
|
791
|
-
.put(this.smartVictimServiceUrl + 'VictimCaseNotes/' + caseNote.victimCaseNoteId, body, options);
|
792
|
-
};
|
793
|
-
/**
|
794
|
-
* @param {?} id
|
795
|
-
* @param {?} staffId
|
796
|
-
* @return {?}
|
797
|
-
*/
|
798
|
-
NgcSmartVictimService.prototype.deleteCaseNote = /**
|
799
|
-
* @param {?} id
|
800
|
-
* @param {?} staffId
|
801
|
-
* @return {?}
|
802
|
-
*/
|
803
|
-
function (id, staffId) {
|
804
|
-
return this.http.delete(this.smartVictimServiceUrl + "VictimCaseNotes/" + id + "?staffId=" + staffId);
|
805
|
-
};
|
806
|
-
/**
|
807
|
-
* @param {?} victimId
|
808
|
-
* @return {?}
|
809
|
-
*/
|
810
|
-
NgcSmartVictimService.prototype.getContacts = /**
|
811
|
-
* @param {?} victimId
|
812
|
-
* @return {?}
|
813
|
-
*/
|
814
|
-
function (victimId) {
|
815
|
-
return this.http.get(this.smartVictimServiceUrl + 'VictimContacts/victim/' + victimId)
|
816
|
-
.pipe(map((/**
|
817
|
-
* @param {?} res
|
818
|
-
* @return {?}
|
819
|
-
*/
|
820
|
-
function (res) {
|
821
|
-
return res;
|
822
|
-
})), catchError(this.handleError));
|
823
|
-
};
|
824
|
-
/**
|
825
|
-
* @param {?} contact
|
826
|
-
* @return {?}
|
827
|
-
*/
|
828
|
-
NgcSmartVictimService.prototype.addContact = /**
|
829
|
-
* @param {?} contact
|
830
|
-
* @return {?}
|
831
|
-
*/
|
832
|
-
function (contact) {
|
833
|
-
/** @type {?} */
|
834
|
-
var body;
|
835
|
-
body = JSON.stringify(contact);
|
836
|
-
return this.http
|
837
|
-
.post(this.smartVictimServiceUrl + 'VictimContacts/', body, options);
|
838
|
-
};
|
839
|
-
/**
|
840
|
-
* @param {?} contact
|
841
|
-
* @return {?}
|
842
|
-
*/
|
843
|
-
NgcSmartVictimService.prototype.updateContact = /**
|
844
|
-
* @param {?} contact
|
845
|
-
* @return {?}
|
846
|
-
*/
|
847
|
-
function (contact) {
|
848
|
-
/** @type {?} */
|
849
|
-
var body;
|
850
|
-
body = JSON.stringify(contact);
|
851
|
-
return this.http
|
852
|
-
.put(this.smartVictimServiceUrl + 'VictimContacts/' + contact.victimContactId, body, options);
|
853
|
-
};
|
854
|
-
/**
|
855
|
-
* @param {?} victimId
|
856
|
-
* @return {?}
|
857
|
-
*/
|
858
|
-
NgcSmartVictimService.prototype.getSafetyPlans = /**
|
859
|
-
* @param {?} victimId
|
860
|
-
* @return {?}
|
861
|
-
*/
|
862
|
-
function (victimId) {
|
863
|
-
return this.http.get(this.smartVictimServiceUrl + 'vVictimServiceLists/victim/' + victimId)
|
864
|
-
.pipe(map((/**
|
865
|
-
* @param {?} res
|
866
|
-
* @return {?}
|
867
|
-
*/
|
868
|
-
function (res) {
|
869
|
-
return res;
|
870
|
-
})), catchError(this.handleError));
|
871
|
-
};
|
872
|
-
/**
|
873
|
-
* @param {?} victimServiceId
|
874
|
-
* @return {?}
|
875
|
-
*/
|
876
|
-
NgcSmartVictimService.prototype.getVictimServices = /**
|
877
|
-
* @param {?} victimServiceId
|
878
|
-
* @return {?}
|
879
|
-
*/
|
880
|
-
function (victimServiceId) {
|
881
|
-
return this.http.get(this.smartVictimServiceUrl + 'vVictimServiceLists/victimServiceId/' + victimServiceId)
|
882
|
-
.pipe(map((/**
|
883
|
-
* @param {?} res
|
884
|
-
* @return {?}
|
885
|
-
*/
|
886
|
-
function (res) {
|
887
|
-
return res;
|
888
|
-
})), catchError(this.handleError));
|
889
|
-
};
|
890
|
-
/**
|
891
|
-
* @param {?} victimServiceId
|
892
|
-
* @return {?}
|
893
|
-
*/
|
894
|
-
NgcSmartVictimService.prototype.getVictimServiceDetail = /**
|
895
|
-
* @param {?} victimServiceId
|
896
|
-
* @return {?}
|
897
|
-
*/
|
898
|
-
function (victimServiceId) {
|
899
|
-
return this.http.get(this.smartVictimServiceUrl + 'VictimServiceDetails/' + victimServiceId)
|
900
|
-
.pipe(map((/**
|
901
|
-
* @param {?} res
|
902
|
-
* @return {?}
|
903
|
-
*/
|
904
|
-
function (res) {
|
905
|
-
return res;
|
906
|
-
})), catchError(this.handleError));
|
907
|
-
};
|
908
|
-
/**
|
909
|
-
* @param {?} victimSafetyPlan
|
910
|
-
* @return {?}
|
911
|
-
*/
|
912
|
-
NgcSmartVictimService.prototype.addSafetyPlan = /**
|
913
|
-
* @param {?} victimSafetyPlan
|
914
|
-
* @return {?}
|
915
|
-
*/
|
916
|
-
function (victimSafetyPlan) {
|
917
|
-
/** @type {?} */
|
918
|
-
var body;
|
919
|
-
body = JSON.stringify(victimSafetyPlan);
|
920
|
-
return this.http
|
921
|
-
.post(this.smartVictimServiceUrl + 'VictimServices/', body, options)
|
922
|
-
.pipe();
|
923
|
-
};
|
924
|
-
/**
|
925
|
-
* @param {?} victimSafetyPlan
|
926
|
-
* @return {?}
|
927
|
-
*/
|
928
|
-
NgcSmartVictimService.prototype.updateSafetyPlan = /**
|
929
|
-
* @param {?} victimSafetyPlan
|
930
|
-
* @return {?}
|
931
|
-
*/
|
932
|
-
function (victimSafetyPlan) {
|
933
|
-
/** @type {?} */
|
934
|
-
var body;
|
935
|
-
body = JSON.stringify(victimSafetyPlan);
|
936
|
-
return this.http
|
937
|
-
.put(this.smartVictimServiceUrl + 'VictimServices/' + victimSafetyPlan.victimServiceId, body, options);
|
938
|
-
};
|
939
|
-
/**
|
940
|
-
* @param {?} victimServiceStatusHistory
|
941
|
-
* @return {?}
|
942
|
-
*/
|
943
|
-
NgcSmartVictimService.prototype.addVictimServiceStatus = /**
|
944
|
-
* @param {?} victimServiceStatusHistory
|
945
|
-
* @return {?}
|
946
|
-
*/
|
947
|
-
function (victimServiceStatusHistory) {
|
948
|
-
/** @type {?} */
|
949
|
-
var body;
|
950
|
-
body = JSON.stringify(victimServiceStatusHistory);
|
951
|
-
return this.http
|
952
|
-
.post(this.smartVictimServiceUrl + 'VictimServiceStatusHistories/', body, options);
|
953
|
-
};
|
954
|
-
/**
|
955
|
-
* @param {?} victimServiceId
|
956
|
-
* @return {?}
|
957
|
-
*/
|
958
|
-
NgcSmartVictimService.prototype.getServiceStatusHistories = /**
|
959
|
-
* @param {?} victimServiceId
|
960
|
-
* @return {?}
|
961
|
-
*/
|
962
|
-
function (victimServiceId) {
|
963
|
-
return this.http.get(this.smartVictimServiceUrl + 'VictimServiceStatusHistories/victimServiceId/' + victimServiceId)
|
964
|
-
.pipe(map((/**
|
965
|
-
* @param {?} res
|
966
|
-
* @return {?}
|
967
|
-
*/
|
968
|
-
function (res) {
|
969
|
-
return res;
|
970
|
-
})), catchError(this.handleError));
|
971
|
-
};
|
972
|
-
/**
|
973
|
-
* @param {?} victimServiceId
|
974
|
-
* @param {?} staffId
|
975
|
-
* @return {?}
|
976
|
-
*/
|
977
|
-
NgcSmartVictimService.prototype.deleteSafetyPlan = /**
|
978
|
-
* @param {?} victimServiceId
|
979
|
-
* @param {?} staffId
|
980
|
-
* @return {?}
|
981
|
-
*/
|
982
|
-
function (victimServiceId, staffId) {
|
983
|
-
return this.http.delete(this.smartVictimServiceUrl + "VictimServices/" + victimServiceId + "?staffId=" + staffId);
|
984
|
-
};
|
985
|
-
/**
|
986
|
-
* @param {?} victimServiceDetail
|
987
|
-
* @return {?}
|
988
|
-
*/
|
989
|
-
NgcSmartVictimService.prototype.addPlanProvider = /**
|
990
|
-
* @param {?} victimServiceDetail
|
991
|
-
* @return {?}
|
992
|
-
*/
|
993
|
-
function (victimServiceDetail) {
|
994
|
-
/** @type {?} */
|
995
|
-
var body;
|
996
|
-
body = JSON.stringify(victimServiceDetail);
|
997
|
-
return this.http
|
998
|
-
.post(this.smartVictimServiceUrl + 'VictimServiceDetails/', body, options)
|
999
|
-
.pipe();
|
1000
|
-
};
|
1001
|
-
/**
|
1002
|
-
* @param {?} victimProgramProviderId
|
1003
|
-
* @param {?} staffId
|
1004
|
-
* @return {?}
|
1005
|
-
*/
|
1006
|
-
NgcSmartVictimService.prototype.deleteProvider = /**
|
1007
|
-
* @param {?} victimProgramProviderId
|
1008
|
-
* @param {?} staffId
|
1009
|
-
* @return {?}
|
1010
|
-
*/
|
1011
|
-
function (victimProgramProviderId, staffId) {
|
1012
|
-
return this.http.delete(this.smartVictimServiceUrl + "VictimServiceDetails/" + victimProgramProviderId + "?staffId=" + staffId);
|
1013
|
-
};
|
1014
|
-
NgcSmartVictimService.decorators = [
|
1015
|
-
{ type: Injectable, args: [{
|
1016
|
-
providedIn: 'root'
|
1017
|
-
},] }
|
1018
|
-
];
|
1019
|
-
/** @nocollapse */
|
1020
|
-
NgcSmartVictimService.ctorParameters = function () { return [
|
1021
|
-
{ type: HttpClient },
|
1022
|
-
{ type: String, decorators: [{ type: Inject, args: [SMART_OFFENDER_SERVICE_URL,] }] },
|
1023
|
-
{ type: String, decorators: [{ type: Inject, args: [SMART_LOOKUP_SERVICE_URL,] }] },
|
1024
|
-
{ type: String, decorators: [{ type: Inject, args: [SMART_VICTIM_SERVICE_URL,] }] },
|
1025
|
-
{ type: Apollo }
|
1026
|
-
]; };
|
1027
|
-
/** @nocollapse */ NgcSmartVictimService.ngInjectableDef = i0.defineInjectable({ factory: function NgcSmartVictimService_Factory() { return new NgcSmartVictimService(i0.inject(i1.HttpClient), i0.inject(i2.SMART_OFFENDER_SERVICE_URL), i0.inject(i2.SMART_LOOKUP_SERVICE_URL), i0.inject(i2.SMART_VICTIM_SERVICE_URL), i0.inject(i3.Apollo)); }, token: NgcSmartVictimService, providedIn: "root" });
|
1028
|
-
return NgcSmartVictimService;
|
1029
|
-
}());
|
1030
|
-
export { NgcSmartVictimService };
|
1031
|
-
if (false) {
|
1032
|
-
/**
|
1033
|
-
* @type {?}
|
1034
|
-
* @private
|
1035
|
-
*/
|
1036
|
-
NgcSmartVictimService.prototype.serviceApiUrl;
|
1037
|
-
/**
|
1038
|
-
* @type {?}
|
1039
|
-
* @private
|
1040
|
-
*/
|
1041
|
-
NgcSmartVictimService.prototype.http;
|
1042
|
-
/**
|
1043
|
-
* @type {?}
|
1044
|
-
* @private
|
1045
|
-
*/
|
1046
|
-
NgcSmartVictimService.prototype.smartOffenderServiceUrl;
|
1047
|
-
/**
|
1048
|
-
* @type {?}
|
1049
|
-
* @private
|
1050
|
-
*/
|
1051
|
-
NgcSmartVictimService.prototype.smartLookupServiceUrl;
|
1052
|
-
/**
|
1053
|
-
* @type {?}
|
1054
|
-
* @private
|
1055
|
-
*/
|
1056
|
-
NgcSmartVictimService.prototype.smartVictimServiceUrl;
|
1057
|
-
/**
|
1058
|
-
* @type {?}
|
1059
|
-
* @private
|
1060
|
-
*/
|
1061
|
-
NgcSmartVictimService.prototype.apollo;
|
1062
|
-
}
|
1063
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdmljdGltLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY3NtYXJ0L25nYy1zbWFydC12aWN0aW0vIiwic291cmNlcyI6WyJsaWIvc21hcnQtdmljdGltLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFlLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSwwQkFBMEIsRUFBQyx3QkFBd0IsRUFFVyxNQUFNLHNCQUFzQixDQUFDO0FBQzlILE9BQU8sRUFBYyxVQUFVLElBQUksb0JBQW9CLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLEdBQUcsRUFBQyxVQUFVLEVBQVUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztJQUdsQyxPQUFPLEdBQUcsSUFBSSxXQUFXLENBQUMsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQzs7SUFDakUsT0FBTyxHQUFHLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRTtBQUVwQztJQUtFLCtCQUFvQixJQUFnQixFQUNVLHVCQUErQixFQUNqQyxxQkFBNkIsRUFDN0IscUJBQTZCLEVBQy9ELE1BQWM7UUFKSixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ1UsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFRO1FBQ2pDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBUTtRQUM3QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQVE7UUFDL0QsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUxoQixrQkFBYSxHQUFJLHNEQUFzRCxDQUFDO0lBTzFFLENBQUM7SUFFUCx5Q0FBeUM7SUFDekMsK0dBQStHO0lBQy9HLElBQUk7SUFFSixnQ0FBZ0M7SUFD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QUF3Qjs7Ozs7SUFDbEMsd0RBQTJFOzs7OztJQUMzRSxzREFBdUU7Ozs7O0lBQ3ZFLHNEQUF1RTs7Ozs7SUFDdkUsdUNBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCxIdHRwUmVzcG9uc2UsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU01BUlRfTE9PS1VQX1NFUlZJQ0VfVVJMLCBTTUFSVF9PRkZFTkRFUl9TRVJWSUNFX1VSTCxTTUFSVF9WSUNUSU1fU0VSVklDRV9VUkwsXHJcbiAgICBWaWN0aW1MaXN0RmlsdGVyLFZpY3RpbURydWdVc2UsVmljdGltLFZpY3RpbVNhZmV0eVBsYW4sXHJcbiAgIENhc2VOb3RlLENvbnRhY3QsVmljdGltU2VydmljZURldGFpbCxWaWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yeSxWaWN0aW1BZHZvY2F0ZSxWaWN0aW1HdWFyZGlhbn0gZnJvbSAnLi9zbWFydC12aWN0aW0ubW9kZWwnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIGFzIG9ic2VydmFibGVUaHJvd0Vycm9yfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwLGNhdGNoRXJyb3IsIGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQXBvbGxvIH0gZnJvbSAnYXBvbGxvLWFuZ3VsYXInO1xyXG5cclxuXHJcbmNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0pO1xyXG5jb25zdCBvcHRpb25zID0geyBoZWFkZXJzOiBoZWFkZXJzIH07XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOZ2NTbWFydFZpY3RpbVNlcnZpY2Uge1xyXG4gIHByaXZhdGUgc2VydmljZUFwaVVybCA9ICAnaHR0cHM6Ly9zbWFydC1zZXJ2aWNlLXRlc3QuYXp1cmV3ZWJzaXRlcy5uZXQvZ3JhcGhxbCc7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgQEluamVjdChTTUFSVF9PRkZFTkRFUl9TRVJWSUNFX1VSTCkgcHJpdmF0ZSBzbWFydE9mZmVuZGVyU2VydmljZVVybDogc3RyaW5nLFxyXG4gICAgQEluamVjdChTTUFSVF9MT09LVVBfU0VSVklDRV9VUkwpIHByaXZhdGUgc21hcnRMb29rdXBTZXJ2aWNlVXJsOiBzdHJpbmcsXHJcbiAgICBASW5qZWN0KFNNQVJUX1ZJQ1RJTV9TRVJWSUNFX1VSTCkgcHJpdmF0ZSBzbWFydFZpY3RpbVNlcnZpY2VVcmw6IHN0cmluZyxcclxuICAgIHByaXZhdGUgYXBvbGxvOiBBcG9sbG9cclxuXHJcbiAgICApIHsgfVxyXG5cclxuICAvLyBnZXRWaWN0aW1JbnN1cmFuY2VzKG9mZmVuZGVySWQ6IGFueSkge1xyXG4gIC8vICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydE9mZmVuZGVyU2VydmljZVVybCArICcvVmljdGltSW5zdXJhbmNlcy8/b2ZmZW5kZXJJZD0nICsgb2ZmZW5kZXJJZCkucGlwZSgpO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gZ2V0VmljdGltSW5zdXJhbmNlKGlkOiBhbnkpIHtcclxuICAvLyAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRPZmZlbmRlclNlcnZpY2VVcmwgKyAnL1ZpY3RpbUluc3VyYW5jZXMvP2lkPScgKyBpZCkucGlwZSgpO1xyXG4gIC8vIH0gXHJcblxyXG4gIC8vIHBvc3RWaWN0aW1JbnN1cmFuY2UodmFsOiBhbnkpIHtcclxuICAvLyAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLnNtYXJ0T2ZmZW5kZXJTZXJ2aWNlVXJsICsgJy9WaWN0aW1JbnN1cmFuY2VzJywgdmFsKS5waXBlKCk7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBwdXRWaWN0aW1JbnN1cmFuY2UoaWQ6IGFueSwgdmFsOiBhbnkpIHtcclxuICAvLyAgIHJldHVybiB0aGlzLmh0dHAucHV0KHRoaXMuc21hcnRPZmZlbmRlclNlcnZpY2VVcmwgKyAnL1ZpY3RpbUluc3VyYW5jZXMvP2lkPScgKyBpZCwgdmFsKS5waXBlKCk7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBkZWxldGVWaWN0aW1JbnN1cmFuY2UoaWQ6IGFueSkge1xyXG4gIC8vICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUodGhpcy5zbWFydE9mZmVuZGVyU2VydmljZVVybCArICcvVmljdGltSW5zdXJhbmNlcy8/aWQ9JyArIGlkKS5waXBlKCk7XHJcbiAgLy8gfVxyXG4gIFxyXG4gIC8vIGdldFZpY3RpbUluc3VyYW5jZVR5cGVzKCkge1xyXG4gIC8vICAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0TG9va3VwU2VydmljZVVybCArICcvVmljdGltSW5zdXJhbmNlVHlwZXMnKS5waXBlKCk7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBnZXRWaWN0aW1JbnN1cmFuY2VQb2xpY3lIb2xkZXJzKCkge1xyXG4gIC8vICAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0TG9va3VwU2VydmljZVVybCArICcvVmljdGltSW5zdXJhbmNlUG9saWN5SG9sZGVycycpLnBpcGUoKTtcclxuICAvLyB9XHJcblxyXG4vLyAgIGdldFZpY3RpbUluc3VyYW5jZVN3aXRjaFJlYXNvbnMoKSB7XHJcbi8vICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRMb29rdXBTZXJ2aWNlVXJsICsgJy9WaWN0aW1JbnN1cmFuY2VTd2l0Y2hSZWFzb25zJykucGlwZSgpO1xyXG4vLyAgIH1cclxuXHJcbi8vICAgZ2V0VmljdGltSW5zdXJhbmNlUHJvdmlkZXJzKCkge1xyXG4vLyAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0TG9va3VwU2VydmljZVVybCArICcvVmljdGltSW5zdXJhbmNlUHJvdmlkZXInKS5waXBlKCk7XHJcbi8vICAgfVxyXG5cclxuLy8gICBnZXRWaWN0aW1JbnN1cmFuY2VQcm92aWRlcihpZCkge1xyXG4vLyAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydExvb2t1cFNlcnZpY2VVcmwgKyAnL1ZpY3RpbUluc3VyYW5jZVByb3ZpZGVycy8nICsgaWQpLnBpcGUoKTtcclxuLy8gfVxyXG5cclxuLy8gICBwb3N0UHJvdmlkZXJJbmZvcm1hdGlvbih2YWw6IGFueSkge1xyXG4vLyAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodGhpcy5zbWFydExvb2t1cFNlcnZpY2VVcmwgKyAnL1ZpY3RpbUluc3VyYW5jZVByb3ZpZGVycycsIHZhbCkucGlwZSgpO1xyXG4vLyAgIH1cclxuXHJcblxyXG5cclxucHJpdmF0ZSBoYW5kbGVFcnJvcihlcnJvcjogYW55KSB7XHJcbiAgY29uc29sZS5lcnJvcihlcnJvcik7XHJcbiAgcmV0dXJuIG9ic2VydmFibGVUaHJvd0Vycm9yKGVycm9yLmpzb24oKS5lcnJvciB8fCAnU2VydmVyIGVycm9yJyk7XHJcbn1cclxuXHJcbmdldERydWdzVHlwZXMoKSB7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydExvb2t1cFNlcnZpY2VVcmwgICsgJ0RydWdUeXBlcycsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG4gICAgICBtYXAocmVzID0+IHJlcylcclxuICAgICAgKTtcclxufVxyXG5cclxuZ2V0RG9ja2V0TGlzdChvZmZlbmRlcklkOiBudW1iZXIpIHtcclxuICBjb25zdCBxdWVyeVN0cmluZyA9IGBcclxuICB7XHJcbiAgICBmaW5kRG9ja2V0cyhpbnB1dDogeyB3aGVyZTogeyBvZmZlbmRlcklkOiR7b2ZmZW5kZXJJZH0gfSB9KSB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgICAgbWVzc2FnZVxyXG4gICAgICBkYXRhIHtcclxuICAgICAgICBkb2NrZXRJZFxyXG4gICAgICAgIGRvY2tldE51bWJlclxyXG4gICAgICBcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1gO1xyXG5cclxuICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55Pih0aGlzLnNlcnZpY2VBcGlVcmwsIHsgcXVlcnk6IHF1ZXJ5U3RyaW5nIH0pLnBpcGUoXHJcbiAgICBtYXAoKHsgZGF0YSB9KSA9PiB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdkb2NrZXRzIGZvciB0aGlzIG9mZmVuZGVyOicsIGRhdGEuZmluZERvY2tldHMuZGF0YSk7XHJcbiAgICAgIHJldHVybiBkYXRhLmZpbmREb2NrZXRzLmRhdGE7XHJcbiAgICB9KSk7XHJcblxyXG5cclxufVxyXG5cclxuZ2V0U3VwcG9ydFR5cGVzKCkge1xyXG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRMb29rdXBTZXJ2aWNlVXJsICsgJ1ZpY3RpbVN1cHBvcnRUeXBlcycsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG4gICAgICBtYXAocmVzID0+IHJlcylcclxuICAgICAgKTtcclxufVxyXG5cclxuZ2V0UHJlZml4ZXMoKSB7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydExvb2t1cFNlcnZpY2VVcmwgICsgJ1ByZWZpeGVzJywgb3B0aW9ucykucGlwZVxyXG4gICAgICAoXHJcbiAgICAgIG1hcChyZXMgPT4gcmVzKVxyXG4gICAgICApO1xyXG59XHJcblxyXG5nZXRTdWZmaXhlcygpIHtcclxuICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0TG9va3VwU2VydmljZVVybCAgKyAnU3VmZml4ZXMnLCBvcHRpb25zKS5waXBlXHJcbiAgICAgIChcclxuICAgICAgbWFwKHJlcyA9PiByZXMpXHJcbiAgICAgICk7XHJcbn1cclxuXHJcbmdldFJlbGF0aW9uc2hpcFR5cGVzKCkge1xyXG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRMb29rdXBTZXJ2aWNlVXJsICArICdSZWxhdGlvbnNoaXBUeXBlcycsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG4gICAgICBtYXAocmVzID0+IHJlcylcclxuICAgICAgKTtcclxufVxyXG5cclxuZ2V0R2VuZGVycygpIHtcclxuICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0TG9va3VwU2VydmljZVVybCAgKyAnR2VuZGVycycsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG4gICAgICBtYXAocmVzID0+IHJlcylcclxuICAgICAgKTtcclxufVxyXG5cclxuZ2V0V2VhcG9uVHlwZXMoKSB7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydExvb2t1cFNlcnZpY2VVcmwgICsgJ1dlYXBvblR5cGVzJywgb3B0aW9ucykucGlwZVxyXG4gICAgICAoXHJcbiAgICAgIG1hcChyZXMgPT4gcmVzKVxyXG4gICAgICApO1xyXG59XHJcblxyXG5nZXRGbGFnT3B0aW9uWWVzTm9Vbmtub3ducygpIHtcclxuIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRMb29rdXBTZXJ2aWNlVXJsICsgJ0ZsYWdPcHRpb25ZZXNOb1Vua25vd25zJywgb3B0aW9ucykucGlwZVxyXG4gICAgICAoXHJcbiAgICAgIG1hcChyZXMgPT4geyBcclxuICAgICAgICAgIHJldHVybiByZXM7XHJcbiAgICAgIH0pXHJcbiAgICAgICk7XHJcbn1cclxuXHJcbmdldENvbnRhY3RUeXBlcygpIHtcclxuICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0TG9va3VwU2VydmljZVVybCArICdDb250YWN0VHlwZXMnLCBvcHRpb25zKS5waXBlXHJcbiAgICAgICAoXHJcbiAgICAgICBtYXAocmVzID0+IHsgXHJcbiAgICAgICAgICAgcmV0dXJuIHJlcztcclxuICAgICAgIH0pXHJcbiAgICAgICApO1xyXG4gfVxyXG4gZ2V0Q29udGFjdE1ldGhvZHMoKSB7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydExvb2t1cFNlcnZpY2VVcmwgKyAnVmljdGltQ29udGFjdE1ldGhvZHMnLCBvcHRpb25zKS5waXBlXHJcbiAgICAgICAoXHJcbiAgICAgICBtYXAocmVzID0+IHsgXHJcbiAgICAgICAgICAgcmV0dXJuIHJlcztcclxuICAgICAgIH0pXHJcbiAgICAgICApO1xyXG4gfVxyXG4gZ2V0Q29udGFjdEJ5cygpe1xyXG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRMb29rdXBTZXJ2aWNlVXJsICsgJ1ZpY3RpbUNvbnRhY3RQdXJwb3NlcycsIG9wdGlvbnMpLnBpcGVcclxuICAoXHJcbiAgbWFwKHJlcyA9PiB7IFxyXG4gICAgICByZXR1cm4gcmVzO1xyXG4gIH0pXHJcbiAgKTtcclxuXHJcbiB9XHJcblxyXG5nZXRWaWN0aW1Db250YWN0UHVycG9zZXMoKSB7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydExvb2t1cFNlcnZpY2VVcmwgKyAnVmljdGltQ29udGFjdFB1cnBvc2VzJywgb3B0aW9ucykucGlwZVxyXG4gICAgICAgKFxyXG4gICAgICAgbWFwKHJlcyA9PiB7IFxyXG4gICAgICAgICAgIHJldHVybiByZXM7XHJcbiAgICAgICB9KVxyXG4gICAgICAgKTtcclxuIH1cclxuXHJcbiBnZXRWaWN0aW1TZXJ2aWNlVHlwZXMoKSB7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydExvb2t1cFNlcnZpY2VVcmwgKyAnVmljdGltU2VydmljZVR5cGVzJywgb3B0aW9ucykucGlwZVxyXG4gICAgICAgKFxyXG4gICAgICAgbWFwKHJlcyA9PiB7IFxyXG4gICAgICAgICAgIHJldHVybiByZXM7XHJcbiAgICAgICB9KVxyXG4gICAgICAgKTtcclxuIH1cclxuIGdldFZpY3RpbVNlcnZpY2VTdGF0dXMoKSB7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydExvb2t1cFNlcnZpY2VVcmwgKyAnVmljdGltU2VydmljZVN0YXR1cycsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgIChcclxuICAgICAgIG1hcChyZXMgPT4geyBcclxuICAgICAgICAgICByZXR1cm4gcmVzO1xyXG4gICAgICAgfSlcclxuICAgICAgICk7XHJcbiB9XHJcblxyXG4gZ2V0dlZpY3RpbVNlcnZpY2VUeXBlUHJvZ3JhbVByb3ZpZGVycygpIHtcclxuICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0TG9va3VwU2VydmljZVVybCArICd2VmljdGltU2VydmljZVR5cGVQcm9ncmFtUHJvdmlkZXJzJywgb3B0aW9ucykucGlwZVxyXG4gICAgICAgKFxyXG4gICAgICAgbWFwKHJlcyA9PiB7IFxyXG4gICAgICAgICAgIHJldHVybiByZXM7XHJcbiAgICAgICB9KVxyXG4gICAgICAgKTtcclxuIH1cclxuXHJcblxyXG5nZXRWaWN0aW0odmFsOiBhbnkpIHtcclxuICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybCArICdWaWN0aW1zLycgKyB2YWwsIG9wdGlvbnMpLnBpcGVcclxuICAoXHJcbiAgICBtYXAocmVzID0+IHsgXHJcbiAgICAgIGNvbnNvbGUubG9nKCd2aWN0aW0gcmV0dXJuIGRhdGEnKTtcclxuICAgICAgY29uc29sZS5sb2cocmVzKTsgIFxyXG4gICAgICByZXR1cm4gcmVzO1xyXG5cclxuICAgIH0pXHJcbiAgICAgICk7XHJcbn1cclxuXHJcbmdldFZpY3RpbUFkdm9jYXRlKHZhbDogYW55KSB7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltQWR2b2NhdGVzLycgKyB2YWwsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG5cclxuICAgICAgbWFwKHJlcyA9PiB7IFxyXG4gICAgICAgICAgcmV0dXJuIHJlczt9KVxyXG4gICAgICApO1xyXG59XHJcblxyXG5nZXRWaWN0aW1HdWFyZGlhbih2YWw6IGFueSkge1xyXG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ1ZpY3RpbUd1YXJkaWFucy8nICsgdmFsLCBvcHRpb25zKS5waXBlXHJcbiAgICAgIChcclxuXHJcbiAgICAgIG1hcChyZXMgPT4geyBcclxuICAgICAgICAgIHJldHVybiByZXM7fSlcclxuICAgICAgKTtcclxufVxyXG5cclxucG9zdFZpY3RpbXModmFsOiBhbnkpIHtcclxuICBjb25zdCB0ZW1wVmFsID0gSlNPTi5zdHJpbmdpZnkodmFsKTtcclxuICByZXR1cm4gdGhpcy5odHRwLnBvc3QodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwrICdWaWN0aW1zJywgdGVtcFZhbCwgb3B0aW9ucykucGlwZVxyXG4gICAgICAoXHJcbiAgICAgIG1hcChyZXMgPT4geyByZXR1cm4gcmVzO30pXHJcbiAgICAgICk7XHJcbn1cclxuXHJcbnB1dFZpY3RpbXMoaWQ6IGFueSwgdmFsOiBhbnkpIHtcclxuICBjb25zdCB0ZW1wVmFsID0gSlNPTi5zdHJpbmdpZnkodmFsKTtcclxuICByZXR1cm4gdGhpcy5odHRwLnB1dCh0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybCArICdWaWN0aW1zLycgKyBpZCwgdGVtcFZhbCwgb3B0aW9ucykucGlwZVxyXG4gICAgICAoXHJcbiAgICAgIG1hcChyZXMgPT4geyByZXR1cm4gcmVzO30pXHJcbiAgICAgICk7XHJcbn1cclxuXHJcbnB1dFZpY3RpbUFkdm9jYXRlKGlkOiBhbnksIHZhbDogVmljdGltQWR2b2NhdGUpIHtcclxuICBsZXQgYm9keTogc3RyaW5nO1xyXG4gIGJvZHkgPSBKU09OLnN0cmluZ2lmeSh2YWwpO1xyXG4gIHJldHVybiB0aGlzLmh0dHAucHV0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ1ZpY3RpbUFkdm9jYXRlcy8nICsgaWQsIGJvZHksIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG4gICAgICBtYXAocmVzID0+IHsgcmV0dXJuIHJlczt9KVxyXG4gICAgICApO1xyXG5cclxuXHJcblxyXG5cclxufVxyXG5cclxucG9zdFZpY3RpbUFkdm9jYXRlKGlkOiBhbnksIHZhbDogYW55KSB7XHJcbiAgY29uc3QgdGVtcFZhbCA9IEpTT04uc3RyaW5naWZ5KHZhbCk7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ1ZpY3RpbUFkdm9jYXRlcy8nICsgaWQsIHRlbXBWYWwsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG4gICAgICBtYXAocmVzID0+IHsgcmV0dXJuIHJlczt9KVxyXG4gICAgICApO1xyXG59XHJcblxyXG5wdXRWaWN0aW1HdWFyZGlhbihpZDogYW55LCB2YWw6IGFueSkge1xyXG4gIGNvbnNvbGUubG9nKCd1cGRhdGUgdmljdGltIGd1YXJkaWFuJyk7XHJcbiAgY29uc29sZS5sb2codmFsKTtcclxuICBjb25zdCB0ZW1wVmFsID0gSlNPTi5zdHJpbmdpZnkodmFsKTtcclxuICByZXR1cm4gdGhpcy5odHRwLnB1dCh0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybCArICdWaWN0aW1HdWFyZGlhbnMvJyArIGlkLCB0ZW1wVmFsLCBvcHRpb25zKS5waXBlXHJcbiAgICAgIChcclxuICAgICAgbWFwKHJlcyA9PiB7IHJldHVybiByZXM7fSlcclxuICAgICAgKTtcclxufVxyXG5cclxucG9zdFZpY3RpbUd1YXJkaWFuKGlkOiBhbnksIHZhbDogYW55KSB7XHJcbiAgY29uc3QgdGVtcFZhbCA9IEpTT04uc3RyaW5naWZ5KHZhbCk7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ1ZpY3RpbUd1YXJkaWFucy8nICsgaWQsIHRlbXBWYWwsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG4gICAgICBtYXAocmVzID0+IHsgcmV0dXJuIHJlczt9KVxyXG4gICAgICApO1xyXG59XHJcblxyXG5nZXRWaWN0aW1EcnVnVXNlKHZhbDogYW55KTogT2JzZXJ2YWJsZTxWaWN0aW1EcnVnVXNlW10+e1xyXG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ1ZpY3RpbURydWdVc2VzLycgKyB2YWwsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG4gICAgICBtYXAoKHJlczogVmljdGltRHJ1Z1VzZVtdKSA9PiB7IFxyXG4gICAgICAgICAgICByZXR1cm4gcmVzO30pXHJcbiAgICAgICk7XHJcbn1cclxuXHJcbnB1dFZpY3RpbURydWdVc2UoaWQ6IGFueSwgdmFsOiBWaWN0aW1EcnVnVXNlW10pIHtcclxuICBjb25zdCB0ZW1wVmFsID0gSlNPTi5zdHJpbmdpZnkodmFsKTtcclxuXHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5wdXQodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltRHJ1Z1VzZXMvJyArIGlkLCB0ZW1wVmFsLCBvcHRpb25zKS5waXBlXHJcbiAgICAgIChcclxuICAgICAgbWFwKHJlcyA9PiB7IHJldHVybiByZXM7fSlcclxuICAgICAgKTtcclxufVxyXG5cclxucG9zdFZpY3RpbURydWdVc2UoaWQ6IGFueSwgdmFsOiBhbnkpIHtcclxuICBjb25zdCB0ZW1wVmFsID0gSlNPTi5zdHJpbmdpZnkodmFsKTtcclxuICByZXR1cm4gdGhpcy5odHRwLnBvc3QodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltRHJ1Z1VzZXMvJyArIGlkLCB0ZW1wVmFsLCBvcHRpb25zKS5waXBlXHJcbiAgICAgIChcclxuICAgICAgbWFwKHJlcyA9PiB7IHJldHVybiByZXM7fSlcclxuICAgICAgKTtcclxufVxyXG5cclxucHV0VmljdGltV2VhcG9uVXNlKGlkOiBhbnksIHZhbDogYW55KSB7XHJcbiAgY29uc3QgdGVtcFZhbCA9IEpTT04uc3RyaW5naWZ5KHZhbCk7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5wdXQodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltV2VhcG9uVXNlcy8nICsgaWQsIHRlbXBWYWwsIG9wdGlvbnMpLnBpcGVcclxuICAgICAgKFxyXG4gICAgICBtYXAocmVzID0+IHsgcmV0dXJuIHJlczt9KVxyXG4gICAgICApO1xyXG59XHJcblxyXG5wb3N0VmljdGltV2VhcG9uVXNlKGlkOiBhbnksIHZhbDogYW55KSB7XHJcbiAgY29uc3QgdGVtcFZhbCA9IEpTT04uc3RyaW5naWZ5KHZhbCk7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ1ZpY3RpbVdlYXBvblVzZXMvJyArIGlkLCB0ZW1wVmFsLCBvcHRpb25zKS5waXBlXHJcbiAgICAgIChcclxuICAgICAgbWFwKHJlcyA9PiB7IHJldHVybiByZXM7fSlcclxuICAgICAgKTtcclxufVxyXG5wdXRWaWN0aW1TdXBwb3J0KGlkOiBhbnksIHZhbDogYW55KSB7XHJcbiAgY29uc3QgdGVtcFZhbCA9IEpTT04uc3RyaW5naWZ5KHZhbCk7XHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5wdXQodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltU3VwcG9ydHMvJyArIGlkLCB0ZW1wVmFsLCBvcHRpb25zKS5waXBlXHJcbiAgICAgIChcclxuICAgICAgbWFwKHJlcyA9PiB7IHJldHVybiByZXM7fSlcclxuICAgICAgKTtcclxufVxyXG5cclxucG9zdFZpY3RpbVN1cHBvcnQoaWQ6IGFueSwgdmFsOiBhbnkpIHtcclxuICBjb25zdCB0ZW1wVmFsID0gSlNPTi5zdHJpbmdpZnkodmFsKTtcclxuICByZXR1cm4gdGhpcy5odHRwLnBvc3QodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltU3VwcG9ydHMvJyArIGlkLCB0ZW1wVmFsLCBvcHRpb25zKS5waXBlXHJcbiAgICAgIChcclxuICAgICAgbWFwKHJlcyA9PiB7IHJldHVybiByZXM7fSlcclxuICAgICAgKTtcclxufVxyXG5cclxuZGVsZXRlVmljdGltcyh2YWw6IGFueSkge1xyXG4gIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsKyAnVmljdGltcy8nICsgdmFsLCBvcHRpb25zKS5waXBlXHJcbiAgKFxyXG4gIG1hcChyZXMgPT4geyByZXR1cm4gcmVzO30pXHJcbiAgKTtcclxufVxyXG5cclxuXHJcblxyXG5cclxuLy8gLy89PT09PT09PT09PT09PVZpY3RpbSBTZXJpdmU9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuZ2V0VmljdGltcyhvZmZlbmRlcklkOiBudW1iZXIpOiBPYnNlcnZhYmxlIDxWaWN0aW1bXT4ge1xyXG5cclxuICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybCAgKyAnVmljdGltcy9vZmZlbmRlci8nICsgb2ZmZW5kZXJJZClcclxuICAucGlwZShtYXAoKHJlczogVmljdGltW10pID0+IHtcclxuICAgIFxyXG4gICAgICByZXR1cm4gcmVzO1xyXG4gIH0pXHJcbiAgLGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcikpO1xyXG59XHJcblxyXG5nZXRWaWN0aW1zQnlGaWx0ZXIoZmlsdGVyOiBWaWN0aW1MaXN0RmlsdGVyKTogT2JzZXJ2YWJsZTxWaWN0aW1bXT57XHJcbiAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAgICAgLnBvc3QodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnL1ZpY3RpbXMnLCBKU09OLnN0cmluZ2lmeShmaWx0ZXIpLCB7IGhlYWRlcnM6IGhlYWRlcnMgfSlcclxuICAgICAgICAgIC5waXBlKG1hcCgocmVzOiBWaWN0aW1bXSkgPT4ge1xyXG4gICAgICAgICAgICAgIHJldHVybiByZXM7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcikpO1xyXG59XHJcblxyXG5nZXRWaWN0aW1MaXN0QnlGaWx0ZXIoZmlsdGVyOiBWaWN0aW1MaXN0RmlsdGVyKSBcclxue1xyXG4gIGNvbnNvbGUubG9nKCdmaWxlciBpbiBzZXJ2aWNlJyk7XHJcbiAgY29uc29sZS5sb2coZmlsdGVyKTtcclxuXHJcbiAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gIC5wb3N0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ3ZWaWN0aW1zL0ZpbHRlcicsIEpTT04uc3RyaW5naWZ5KGZpbHRlciksIG9wdGlvbnMpXHJcbiAgLnBpcGUoKTtcclxuXHJcbn1cclxuXHJcblxyXG5nZXRDYXNldE5vdGVzKHZpY3RpbUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlIDxDYXNlTm90ZVtdPiB7XHJcblxyXG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ1ZpY3RpbUNhc2VOb3Rlcy92aWN0aW0vJyArIHZpY3RpbUlkKVxyXG4gIC5waXBlKG1hcCgocmVzOiBDYXNlTm90ZVtdKSA9PiB7XHJcbiAgICAgIHJldHVybiByZXM7XHJcbiAgfSlcclxuICAsY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKSk7XHJcbiBcclxuXHJcbn1cclxuYWRkQ2FzZU5vdGUoY2FzZU5vdGU6IENhc2VOb3RlKSB7XHJcbiAgbGV0IGJvZHk6IHN0cmluZztcclxuICAgICAgICAgYm9keSA9IEpTT04uc3RyaW5naWZ5KGNhc2VOb3RlKTtcclxuICAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAgLnBvc3QodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltQ2FzZU5vdGVzLycsIGJvZHksIG9wdGlvbnMpO1xyXG4gXHJcbiB9XHJcblxyXG4gXHJcbnVwZGF0ZUNhc2VOb3RlKGNhc2VOb3RlOiBDYXNlTm90ZSl7XHJcblxyXG4gIGxldCBib2R5OiBzdHJpbmc7XHJcbiAgYm9keSA9IEpTT04uc3RyaW5naWZ5KGNhc2VOb3RlKTtcclxuICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5wdXQodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltQ2FzZU5vdGVzLycgKyBjYXNlTm90ZS52aWN0aW1DYXNlTm90ZUlkLCBib2R5LCBvcHRpb25zKVxyXG5cclxuICAgICAgO1xyXG4gfVxyXG5cclxuZGVsZXRlQ2FzZU5vdGUoaWQ6IG51bWJlciwgc3RhZmZJZDogbnVtYmVyKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKGAke3RoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsfVZpY3RpbUNhc2VOb3Rlcy8ke2lkfT9zdGFmZklkPSR7c3RhZmZJZH1gKTtcclxuICB9XHJcblxyXG4gIGdldENvbnRhY3RzKHZpY3RpbUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlIDxDb250YWN0W10+IHtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybCArICdWaWN0aW1Db250YWN0cy92aWN0aW0vJyArIHZpY3RpbUlkKVxyXG4gICAgLnBpcGUobWFwKChyZXM6IENvbnRhY3RbXSkgPT4ge1xyXG4gICAgICAgIHJldHVybiByZXM7XHJcbiAgICB9KVxyXG4gICAgLGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcikpO1xyXG4gIFxyXG4gIH1cclxuICBhZGRDb250YWN0KGNvbnRhY3Q6IENvbnRhY3QpIHtcclxuICAgIGxldCBib2R5OiBzdHJpbmc7XHJcbiAgICAgICAgICAgYm9keSA9IEpTT04uc3RyaW5naWZ5KGNvbnRhY3QpO1xyXG4gICAgICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgLnBvc3QodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltQ29udGFjdHMvJywgYm9keSwgb3B0aW9ucyk7XHJcbiAgIFxyXG4gICB9XHJcbiAgXHJcbiAgIFxyXG4gIHVwZGF0ZUNvbnRhY3QoY29udGFjdDogQ29udGFjdCl7XHJcbiAgXHJcbiAgICBsZXQgYm9keTogc3RyaW5nO1xyXG4gICAgYm9keSA9IEpTT04uc3RyaW5naWZ5KGNvbnRhY3QpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAgIC5wdXQodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltQ29udGFjdHMvJyArIGNvbnRhY3QudmljdGltQ29udGFjdElkLCBib2R5LCBvcHRpb25zKVxyXG4gIFxyXG4gICAgICAgIDtcclxuICAgfVxyXG4gIFxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbmdldFNhZmV0eVBsYW5zKHZpY3RpbUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlIDxWaWN0aW1TYWZldHlQbGFuW10+IHtcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ3ZWaWN0aW1TZXJ2aWNlTGlzdHMvdmljdGltLycgKyB2aWN0aW1JZClcclxuICAgICAgLnBpcGUobWFwKChyZXM6IFZpY3RpbVNhZmV0eVBsYW5bXSkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHJlcztcclxuICAgICAgfSlcclxuICAgICAgLGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcikpO1xyXG4gIH1cclxuXHJcbmdldFZpY3RpbVNlcnZpY2VzKHZpY3RpbVNlcnZpY2VJZDogbnVtYmVyKTogT2JzZXJ2YWJsZSA8VmljdGltU2FmZXR5UGxhbltdPiB7XHJcblxyXG4gICAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybCArICd2VmljdGltU2VydmljZUxpc3RzL3ZpY3RpbVNlcnZpY2VJZC8nICsgdmljdGltU2VydmljZUlkKVxyXG4gICAgICAucGlwZShtYXAoKHJlczogVmljdGltU2FmZXR5UGxhbltdKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gIHJlcztcclxuICAgICAgfSlcclxuICAgICAgLGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcikpO1xyXG4gIFxyXG4gIH1cclxuXHJcbmdldFZpY3RpbVNlcnZpY2VEZXRhaWwodmljdGltU2VydmljZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlIDxWaWN0aW1TZXJ2aWNlRGV0YWlsW10+IHtcclxuXHJcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltU2VydmljZURldGFpbHMvJyArIHZpY3RpbVNlcnZpY2VJZClcclxuICAucGlwZShtYXAoKHJlczogVmljdGltU2VydmljZURldGFpbFtdKSA9PiB7XHJcbiAgXHJcbiAgICAgIHJldHVybiByZXM7XHJcbiAgfSlcclxuICAsY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKSk7XHJcblxyXG59XHJcbmFkZFNhZmV0eVBsYW4odmljdGltU2FmZXR5UGxhbjogVmljdGltU2FmZXR5UGxhbikge1xyXG5cclxuICBsZXQgYm9keTogc3RyaW5nO1xyXG4gICAgICAgICAgYm9keSA9IEpTT04uc3RyaW5naWZ5KHZpY3RpbVNhZmV0eVBsYW4pO1xyXG4gICAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAgICAgLnBvc3QodGhpcy5zbWFydFZpY3RpbVNlcnZpY2VVcmwgKyAnVmljdGltU2VydmljZXMvJywgYm9keSwgb3B0aW9ucylcclxuICAgICAgICAgIC5waXBlKCk7XHJcbiAgXHJcbiAgfVxyXG51cGRhdGVTYWZldHlQbGFuKHZpY3RpbVNhZmV0eVBsYW46IFZpY3RpbVNhZmV0eVBsYW4pe1xyXG5cclxuICAgICAgbGV0IGJvZHk6IHN0cmluZztcclxuICAgICAgYm9keSA9IEpTT04uc3RyaW5naWZ5KHZpY3RpbVNhZmV0eVBsYW4pO1xyXG4gICAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgICAgICAucHV0KHRoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsICsgJ1ZpY3RpbVNlcnZpY2VzLycgKyB2aWN0aW1TYWZldHlQbGFuLnZpY3RpbVNlcnZpY2VJZCwgYm9keSwgb3B0aW9ucylcclxuXHJcbiAgICAgICAgICA7XHJcbiAgICAgfVxyXG5hZGRWaWN0aW1TZXJ2aWNlU3RhdHVzKHZpY3RpbVNlcnZpY2VTdGF0dXNIaXN0b3J5OiBWaWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yeSl7XHJcbiAgbGV0IGJvZHk6IHN0cmluZztcclxuICBib2R5ID0gSlNPTi5zdHJpbmdpZnkodmljdGltU2VydmljZVN0YXR1c0hpc3RvcnkpO1xyXG4gIHJldHVybiB0aGlzLmh0dHBcclxuICAucG9zdCh0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybCArICdWaWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yaWVzLycsIGJvZHksIG9wdGlvbnMpO1xyXG5cclxuICB9XHJcblxyXG5nZXRTZXJ2aWNlU3RhdHVzSGlzdG9yaWVzKHZpY3RpbVNlcnZpY2VJZDogbnVtYmVyKXtcclxuICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybCArICdWaWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yaWVzL3ZpY3RpbVNlcnZpY2VJZC8nICsgdmljdGltU2VydmljZUlkKVxyXG4gIC5waXBlKFxyXG4gICAgICBtYXAoKHJlczogVmljdGltU2VydmljZVN0YXR1c0hpc3RvcnlbXSkgPT4ge1xyXG4gIFxyXG4gICAgICAgICAgcmV0dXJuIHJlcztcclxuICAgICAgfSlcclxuICAgICAgLGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcilcclxuICApO1xyXG59XHJcblxyXG5kZWxldGVTYWZldHlQbGFuKHZpY3RpbVNlcnZpY2VJZDogbnVtYmVyLCBzdGFmZklkOiBudW1iZXIpIHtcclxuICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShgJHt0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybH1WaWN0aW1TZXJ2aWNlcy8ke3ZpY3RpbVNlcnZpY2VJZH0/c3RhZmZJZD0ke3N0YWZmSWR9YCk7XHJcblxyXG4gIH1cclxuYWRkUGxhblByb3ZpZGVyKHZpY3RpbVNlcnZpY2VEZXRhaWw6VmljdGltU2VydmljZURldGFpbCl7XHJcbiAgICAgIGxldCBib2R5OiBzdHJpbmc7XHJcbiAgICAgIGJvZHkgPSBKU09OLnN0cmluZ2lmeSh2aWN0aW1TZXJ2aWNlRGV0YWlsKTtcclxuICAgICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdCh0aGlzLnNtYXJ0VmljdGltU2VydmljZVVybCArICdWaWN0aW1TZXJ2aWNlRGV0YWlscy8nLCBib2R5LCBvcHRpb25zKVxyXG4gICAgICAucGlwZSgpO1xyXG5cclxuICB9XHJcblxyXG5kZWxldGVQcm92aWRlcih2aWN0aW1Qcm9ncmFtUHJvdmlkZXJJZDogc3RyaW5nLCBzdGFmZklkOiBudW1iZXIpe1xyXG4gIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKGAke3RoaXMuc21hcnRWaWN0aW1TZXJ2aWNlVXJsfVZpY3RpbVNlcnZpY2VEZXRhaWxzLyR7dmljdGltUHJvZ3JhbVByb3ZpZGVySWR9P3N0YWZmSWQ9JHtzdGFmZklkfWApO1xyXG5cclxufVxyXG5cclxufVxyXG4iXX0=
|