@hmcts/ccpay-web-component 5.0.1-beta132 → 5.0.1-beta138

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.
Files changed (61) hide show
  1. package/bundles/hmcts-ccpay-web-component.umd.js +83 -761
  2. package/bundles/hmcts-ccpay-web-component.umd.js.map +1 -1
  3. package/bundles/hmcts-ccpay-web-component.umd.min.js +1 -1
  4. package/bundles/hmcts-ccpay-web-component.umd.min.js.map +1 -1
  5. package/esm2015/hmcts-ccpay-web-component.js +31 -33
  6. package/esm2015/lib/components/add-remission/add-remission.component.js +8 -80
  7. package/esm2015/lib/components/case-transactions/case-transactions.component.js +2 -2
  8. package/esm2015/lib/components/process-refund/process-refund.component.js +3 -31
  9. package/esm2015/lib/components/refund-status/refund-status.component.js +27 -149
  10. package/esm2015/lib/interfaces/IRefundList.js +1 -3
  11. package/esm2015/lib/interfaces/PostIssueRefundRetroRemission.js +2 -6
  12. package/esm2015/lib/interfaces/PostRefundRetroRemission.js +2 -6
  13. package/esm2015/lib/payment-lib.component.js +1 -5
  14. package/esm2015/lib/payment-lib.module.js +1 -3
  15. package/esm2015/lib/payment-lib.service.js +1 -16
  16. package/esm2015/lib/services/refunds/refunds.service.js +16 -12
  17. package/esm2015/lib/services/shared/httpclient/webcomponent.http.client.js +16 -3
  18. package/esm5/hmcts-ccpay-web-component.js +31 -33
  19. package/esm5/lib/components/add-remission/add-remission.component.js +8 -103
  20. package/esm5/lib/components/case-transactions/case-transactions.component.js +2 -2
  21. package/esm5/lib/components/process-refund/process-refund.component.js +3 -30
  22. package/esm5/lib/components/refund-status/refund-status.component.js +25 -177
  23. package/esm5/lib/interfaces/IRefundList.js +1 -3
  24. package/esm5/lib/interfaces/PostIssueRefundRetroRemission.js +2 -5
  25. package/esm5/lib/interfaces/PostRefundRetroRemission.js +2 -5
  26. package/esm5/lib/payment-lib.component.js +1 -5
  27. package/esm5/lib/payment-lib.module.js +1 -3
  28. package/esm5/lib/payment-lib.service.js +1 -23
  29. package/esm5/lib/services/refunds/refunds.service.js +16 -18
  30. package/esm5/lib/services/shared/httpclient/webcomponent.http.client.js +16 -3
  31. package/fesm2015/hmcts-ccpay-web-component.js +60 -651
  32. package/fesm2015/hmcts-ccpay-web-component.js.map +1 -1
  33. package/fesm5/hmcts-ccpay-web-component.js +58 -736
  34. package/fesm5/hmcts-ccpay-web-component.js.map +1 -1
  35. package/hmcts-ccpay-web-component.d.ts +30 -32
  36. package/hmcts-ccpay-web-component.metadata.json +1 -1
  37. package/lib/components/add-remission/add-remission.component.d.ts +0 -9
  38. package/lib/components/process-refund/process-refund.component.d.ts +1 -5
  39. package/lib/components/refund-status/refund-status.component.d.ts +5 -20
  40. package/lib/interfaces/IRefundList.d.ts +0 -2
  41. package/lib/interfaces/PostIssueRefundRetroRemission.d.ts +1 -3
  42. package/lib/interfaces/PostRefundRetroRemission.d.ts +1 -3
  43. package/lib/payment-lib.component.d.ts +0 -1
  44. package/lib/payment-lib.service.d.ts +0 -3
  45. package/lib/services/refunds/refunds.service.d.ts +0 -2
  46. package/package.json +1 -1
  47. package/esm2015/lib/components/contact-details/contact-details.component.js +0 -399
  48. package/esm2015/lib/interfaces/IPutNotificationRequest.js +0 -25
  49. package/esm2015/lib/interfaces/IRefundContactDetails.js +0 -25
  50. package/esm2015/lib/interfaces/IRefundsNotifications.js +0 -21
  51. package/esm2015/lib/services/notification/notification.service.js +0 -85
  52. package/esm5/lib/components/contact-details/contact-details.component.js +0 -424
  53. package/esm5/lib/interfaces/IPutNotificationRequest.js +0 -23
  54. package/esm5/lib/interfaces/IRefundContactDetails.js +0 -25
  55. package/esm5/lib/interfaces/IRefundsNotifications.js +0 -21
  56. package/esm5/lib/services/notification/notification.service.js +0 -89
  57. package/lib/components/contact-details/contact-details.component.d.ts +0 -46
  58. package/lib/interfaces/IPutNotificationRequest.d.ts +0 -6
  59. package/lib/interfaces/IRefundContactDetails.d.ts +0 -9
  60. package/lib/interfaces/IRefundsNotifications.d.ts +0 -16
  61. package/lib/services/notification/notification.service.d.ts +0 -15
@@ -1,399 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { Component, Output, EventEmitter, Input } from '@angular/core';
6
- import { FormBuilder, Validators, FormControl } from '@angular/forms';
7
- import { PaymentLibComponent } from '../../payment-lib.component';
8
- import { NotificationService } from '../../services/notification/notification.service';
9
- export class ContactDetailsComponent {
10
- /**
11
- * @param {?} formBuilder
12
- * @param {?} notificationService
13
- * @param {?} paymentLibComponent
14
- */
15
- constructor(formBuilder, notificationService, paymentLibComponent) {
16
- this.formBuilder = formBuilder;
17
- this.notificationService = notificationService;
18
- this.paymentLibComponent = paymentLibComponent;
19
- this.assignContactDetails = new EventEmitter();
20
- this.redirectToIssueRefund = new EventEmitter();
21
- this.pageTitle = 'Payment status history';
22
- this.isEmailSAddressClicked = true;
23
- this.isShowPickAddress = false;
24
- this.isPostcodeClicked = false;
25
- this.isManualAddressClicked = false;
26
- this.addressPostcodeList = [];
27
- this.isEmailEmpty = false;
28
- this.emailHasError = false;
29
- this.isPostcodeEmpty = false;
30
- this.postcodeHasError = false;
31
- this.isaddressLine1Empty = false;
32
- this.addressLine1HasError = false;
33
- this.addressLine2HasError = false;
34
- this.isTownOrCityEmpty = false;
35
- this.townOrCityHasError = false;
36
- this.isCountyEmpty = false;
37
- this.countyHasError = false;
38
- this.isMPostcodeEmpty = false;
39
- this.mpostcodeHasError = false;
40
- this.isCountryEmpty = false;
41
- }
42
- /**
43
- * @return {?}
44
- */
45
- ngOnInit() {
46
- this.resetForm([false, false, false, false, false, false, false, false, false, false, false, false, false, false], 'all');
47
- this.emailAddressForm = this.formBuilder.group({
48
- email: new FormControl('', Validators.compose([
49
- Validators.required,
50
- Validators.pattern('^[a-z0-9._%+-]+@[a-z0-9-]+\\.[a-z]{2,4}$')
51
- ]))
52
- });
53
- this.postCodeForm = this.formBuilder.group({
54
- postcode: new FormControl('', Validators.compose([
55
- Validators.required,
56
- Validators.pattern('^([A-Z]{1,2}[0-9]{1,2}[A-Z]{0,1} ?[0-9][A-Z]{2})')
57
- ]))
58
- });
59
- this.manualAddressForm = this.formBuilder.group({
60
- addressl1: new FormControl('', Validators.compose([
61
- Validators.required,
62
- Validators.pattern('^[a-zA-Z0-9\\s,\'-]*$')
63
- ])),
64
- addressl2: new FormControl('', Validators.compose([
65
- Validators.pattern('^[a-zA-Z0-9\\s,\'-]*$')
66
- ])),
67
- townorcity: new FormControl('', Validators.compose([
68
- Validators.required,
69
- Validators.pattern('^[a-zA-Z0-9\\s,\'-]*$')
70
- ])),
71
- county: new FormControl('', Validators.compose([
72
- Validators.pattern('^[a-zA-Z0-9\\s,\'-]*$')
73
- ])),
74
- mpostcode: new FormControl('', Validators.compose([
75
- Validators.required,
76
- Validators.pattern('^([A-Z]{1,2}[0-9]{1,2}[A-Z]{0,1} ?[0-9][A-Z]{2})')
77
- ])),
78
- country: new FormControl('', Validators.compose([
79
- Validators.required
80
- ]))
81
- });
82
- if (this.addressObj !== undefined && this.addressObj !== '') {
83
- this.setEditDetails();
84
- }
85
- }
86
- /**
87
- * @return {?}
88
- */
89
- setEditDetails() {
90
- if (this.addressObj.notification_type === 'EMAIL') {
91
- this.isEmailSAddressClicked = true;
92
- this.isPostcodeClicked = false;
93
- this.isManualAddressClicked = false;
94
- this.emailAddressForm.setValue({ email: this.addressObj.contact_details.email });
95
- }
96
- else if (this.addressObj.notification_type === 'LETTER') {
97
- this.isEmailSAddressClicked = false;
98
- this.isPostcodeClicked = true;
99
- this.isManualAddressClicked = true;
100
- this.manualAddressForm.patchValue({
101
- addressl1: this.addressObj.contact_details.address_line,
102
- townorcity: this.addressObj.contact_details.city,
103
- county: this.addressObj.contact_details.county,
104
- country: this.addressObj.contact_details.country,
105
- mpostcode: this.addressObj.contact_details.postal_code
106
- });
107
- }
108
- }
109
- /**
110
- * @param {?} type
111
- * @param {?} isLinkedClied
112
- * @return {?}
113
- */
114
- selectContactOption(type, isLinkedClied) {
115
- this.resetForm([false, false, false, false, false, false, false, false, false, false, false, false, false, false, false], 'all');
116
- if (type === 'Email' && isLinkedClied === 'false') {
117
- this.isEmailSAddressClicked = true;
118
- this.isPostcodeClicked = false;
119
- this.isManualAddressClicked = false;
120
- }
121
- else if (type === 'Postcode' && isLinkedClied === 'false') {
122
- this.isEmailSAddressClicked = false;
123
- this.isPostcodeClicked = true;
124
- this.isManualAddressClicked = false;
125
- }
126
- else if (type === 'Postcode' && isLinkedClied === 'true') {
127
- this.isEmailSAddressClicked = false;
128
- this.isPostcodeClicked = true;
129
- this.isManualAddressClicked = true;
130
- }
131
- }
132
- /**
133
- * @return {?}
134
- */
135
- finalFormSubmit() {
136
- this.resetForm([false, false, false, false, false, false, false, false, false, false, false, false, false, false, false], 'all');
137
- if (this.isEmailSAddressClicked) {
138
- /** @type {?} */
139
- const emailField = this.emailAddressForm.controls.email;
140
- if (this.emailAddressForm.valid) {
141
- this.assignContactDetails.emit({
142
- email: emailField.value,
143
- notification_type: 'EMAIL'
144
- });
145
- }
146
- else {
147
- if (emailField.value == '') {
148
- this.resetForm([true, false, false, false, false, false, false, false, false, false, false, false, false, false], 'email');
149
- }
150
- if (emailField.value != '' && emailField.invalid) {
151
- this.resetForm([false, true, false, false, false, false, false, false, false, false, false, false, false, false], 'email');
152
- }
153
- }
154
- }
155
- else if (this.isPostcodeClicked && !this.isManualAddressClicked) {
156
- this.postcodeValidation('FS');
157
- }
158
- else if (this.isPostcodeClicked && this.isManualAddressClicked) {
159
- /** @type {?} */
160
- const fieldCtrls = this.manualAddressForm.controls;
161
- if (this.manualAddressForm.valid) {
162
- this.assignContactDetails.emit({
163
- address_line: fieldCtrls.addressl1.value + ' ' + fieldCtrls.addressl2.value,
164
- city: fieldCtrls.townorcity.value,
165
- county: fieldCtrls.county.value,
166
- postal_code: fieldCtrls.mpostcode.value,
167
- country: fieldCtrls.country.value,
168
- notification_type: 'LETTER'
169
- });
170
- }
171
- else {
172
- if (fieldCtrls.addressl1.value == '') {
173
- this.resetForm([false, false, false, false, true, false, false, false, false, false, false, false, false, false], 'address1');
174
- }
175
- if (fieldCtrls.addressl1.value != '' && fieldCtrls.addressl1.invalid) {
176
- this.resetForm([false, false, false, false, false, true, false, false, false, false, false, false, false, false], 'address1');
177
- }
178
- if (fieldCtrls.addressl2.value != '' && fieldCtrls.addressl2.invalid) {
179
- this.resetForm([false, false, false, false, false, false, true, false, false, false, false, false, false, false], 'address2');
180
- }
181
- if (fieldCtrls.townorcity.value == '') {
182
- this.resetForm([false, false, false, false, false, false, false, true, false, false, false, false, false, false], 'town');
183
- }
184
- if (fieldCtrls.townorcity.value != '' && fieldCtrls.townorcity.invalid) {
185
- this.resetForm([false, false, false, false, false, false, false, false, true, false, false, false, false, false], 'town');
186
- }
187
- if (fieldCtrls.county.value == '') {
188
- this.resetForm([false, false, false, false, false, false, false, false, false, true, false, false, false, false], 'county');
189
- }
190
- if (fieldCtrls.county.value != '' && fieldCtrls.county.invalid) {
191
- this.resetForm([false, false, false, false, false, false, false, false, false, false, true, false, false, false], 'county');
192
- }
193
- if (fieldCtrls.mpostcode.value == '') {
194
- this.resetForm([false, false, false, false, false, false, false, false, false, false, false, true, false, false], 'mpostcode');
195
- }
196
- if (fieldCtrls.mpostcode.value != '' && fieldCtrls.mpostcode.invalid) {
197
- this.resetForm([false, false, false, false, false, false, false, false, false, false, false, false, true, false], 'mpostcode');
198
- }
199
- if (fieldCtrls.country.value == '') {
200
- this.resetForm([false, false, false, false, false, false, false, false, false, false, false, false, false, true], 'country');
201
- }
202
- }
203
- }
204
- }
205
- /**
206
- * @param {?} str
207
- * @return {?}
208
- */
209
- postcodeValidation(str) {
210
- /** @type {?} */
211
- const postcodeField = this.postCodeForm.controls.postcode;
212
- if (this.postCodeForm.valid) {
213
- if (str === 'FA') {
214
- this.notificationService.getAddressByPostcode(postcodeField.value).subscribe((/**
215
- * @param {?} refundsNotification
216
- * @return {?}
217
- */
218
- refundsNotification => {
219
- this.addressPostcodeList = refundsNotification['data']['results'];
220
- this.isShowPickAddress = true;
221
- })),
222
- (/**
223
- * @param {?} error
224
- * @return {?}
225
- */
226
- (error) => {
227
- this.isShowPickAddress = false;
228
- this.errorMessage = error.replace(/"/g, "");
229
- });
230
- }
231
- else if (str === 'FS') {
232
- if (this.postcodeAddress !== undefined && this.postcodeAddress) {
233
- /** @type {?} */
234
- let addressLine = "";
235
- /** @type {?} */
236
- let addressArray = this.postcodeAddress.ADDRESS.split(",");
237
- for (let i = 0; i < addressArray.length - 2; i++) {
238
- addressLine += addressArray[i];
239
- }
240
- this.assignContactDetails.emit({
241
- address_line: addressLine,
242
- city: this.postcodeAddress.POST_TOWN,
243
- county: this.postcodeAddress.LOCAL_CUSTODIAN_CODE_DESCRIPTION,
244
- postal_code: this.postcodeAddress.POSTCODE,
245
- country: 'United Kingdom',
246
- notification_type: 'LETTER'
247
- });
248
- }
249
- }
250
- }
251
- else {
252
- if (postcodeField.value == '') {
253
- this.resetForm([false, false, true, false, false, false, false, false, false, false, false, false, false], 'postcode');
254
- }
255
- if (postcodeField.value != '' && postcodeField.invalid) {
256
- this.resetForm([false, false, false, true, false, false, false, false, false, false, false, false, false], 'postcode');
257
- }
258
- }
259
- }
260
- /**
261
- * @param {?} event
262
- * @return {?}
263
- */
264
- redirection(event) {
265
- this.redirectToIssueRefund.emit(event);
266
- }
267
- /**
268
- * @param {?} val
269
- * @param {?} field
270
- * @return {?}
271
- */
272
- resetForm(val, field) {
273
- if (field === 'email' || field === 'all') {
274
- this.isEmailEmpty = val[0];
275
- this.emailHasError = val[1];
276
- }
277
- if (field === 'postcode' || field === 'all') {
278
- this.isPostcodeEmpty = val[2];
279
- this.postcodeHasError = val[3];
280
- }
281
- if (field === 'address1' || field === 'all') {
282
- this.isaddressLine1Empty = val[4];
283
- this.addressLine1HasError = val[5];
284
- }
285
- if (field === 'address2' || field === 'all') {
286
- this.addressLine2HasError = val[6];
287
- }
288
- if (field === 'town' || field === 'all') {
289
- this.isTownOrCityEmpty = val[7];
290
- this.townOrCityHasError = val[8];
291
- }
292
- if (field === 'county' || field === 'all') {
293
- this.isCountyEmpty = val[9];
294
- this.countyHasError = val[10];
295
- }
296
- if (field === 'mpostcode' || field === 'all') {
297
- this.isMPostcodeEmpty = val[11];
298
- this.mpostcodeHasError = val[12];
299
- }
300
- if (field === 'country' || field === 'all') {
301
- this.isCountryEmpty = val[13];
302
- }
303
- }
304
- }
305
- ContactDetailsComponent.decorators = [
306
- { type: Component, args: [{
307
- selector: 'ccpay-contact-details',
308
- template: "<fieldset class=\"govuk-fieldset contact-details--size\">\n <hr class=\"govuk-section-break govuk-section-break--m govuk-section-break--visible\">\n <div class=\"govuk-form-group\">\n <legend class=\"govuk-fieldset__legend govuk-fieldset__legend--s govuk-font19px\">\n {{ isEditOperation ? 'Edit contact information' : 'Contact information' }}\n </legend>\n <div id=\"contact-hint\" class=\"govuk-hint govuk-font19px\">\n Notifications will be sent via email or post when this refund is issued or rejected. You can only choose one option.\n </div>\n <div class=\"govuk-form-group\">\n <fieldset class=\"govuk-fieldset\">\n <div class=\"govuk-radios govuk-radios--conditional\" data-module=\"govuk-radios\">\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"contact\" name=\"contact\" (click)=\"selectContactOption('Email', 'false')\" type=\"radio\" value=\"email\" [checked]=\"isEmailSAddressClicked\" aria-controls=\"conditional-contact\" aria-expanded=\"true\">\n <label class=\"govuk-label govuk-radios__label govuk-font19px\" for=\"contact\">\n Email\n </label>\n </div>\n <div class=\"govuk-radios__conditional\" id=\"conditional-contact-email\" *ngIf=\"isEmailSAddressClicked\">\n <form [formGroup]=\"emailAddressForm\" novalidate>\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label \" for=\"email\">\n <span class=\"govuk-hint govuk-font19px\">Information about this refund will be sent to this email address.</span>\n </label>\n\n <div id=\"email-hint\" class=\"govuk-hint\">\n </div>\n <input class=\"govuk-input govuk-font19px\" id=\"email\" name=\"\" type=\"email\" [ngClass]=\"{ 'inline-error-class': isEmailEmpty || emailHasError }\" value=\"{{addressObj?.contact_details?.email}}\" formControlName=\"email\" aria-describedby=\"email-hint\">\n <p class=\"inline-error-message\" *ngIf=\"isEmailEmpty || emailHasError\">\n <span *ngIf=\"isEmailEmpty\">Enter a email address.</span>\n <span *ngIf=\"emailHasError\">Enter a valid email address.</span>\n </p>\n </div>\n </form>\n </div>\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"contact-2\" name=\"contact\" (click)=\"selectContactOption('Postcode', 'false')\" type=\"radio\" [checked]=\"isPostcodeClicked\" value=\"post\" aria-controls=\"conditional-contact-2\" aria-expanded=\"false\">\n <label class=\"govuk-label govuk-radios__label govuk-font19px\" for=\"contact-2\">\n Post\n </label>\n </div>\n <div class=\"govuk-radios__conditional govuk-radios__conditional--hidden\" id=\"conditional-contact-postcode\" *ngIf=\"isPostcodeClicked && !isManualAddressClicked\">\n <form [formGroup]=\"postCodeForm\" novalidate>\n <label class=\"govuk-label govuk-font19px\" for=\"address-postcode\">\n <span class=\"govuk-hint govuk-font19px\">Information about this refund will be sent to this address.</span>Postcode\n </label>\n <div class=\"postcode-align-css\">\n <div class=\"govuk-form-group govuk-margin-right-10px\">\n <input class=\"govuk-input govuk-input--width-10\" id=\"address-postcode\" name=\"address-postcode\" [ngClass]=\"{ 'inline-error-class': isPostcodeEmpty || postcodeHasError }\" formControlName=\"postcode\" type=\"text\" autocomplete=\"postal-code\">\n <p class=\"inline-error-message\" *ngIf=\"isPostcodeEmpty || postcodeHasError\">\n <span *ngIf=\"isPostcodeEmpty\">Enter a postcode.</span>\n <span *ngIf=\"postcodeHasError\">Enter a valid postcode.</span>\n </p>\n </div>\n <div class=\"govuk-button-group\">\n <button class=\"govuk-button govuk-button--secondary govuk-font19px\" (click)=\"postcodeValidation('FA')\" data-module=\"govuk-button\">\n Find address\n </button>\n </div>\n </div>\n </form>\n <div class=\"govuk-form-group govuk-margin-btm-20px\" *ngIf=\"isShowPickAddress\">\n <label class=\"govuk-label govuk-font19px\" for=\"country\">\n Pick an address\n </label>\n <select class=\"govuk-select govuk-font19px\" [(ngModel)]=\"postcodeAddress\" id=\"postcodeAddress\" name=\"postcodeAddress\">\n <option *ngFor=\"let address of addressPostcodeList\" [ngValue]=\"address.DPA\" > {{address.DPA.ADDRESS}} </option>\n </select> \n </div>\n <details class=\"govuk-details\" data-module=\"govuk-details\">\n <summary class=\"govuk-details__summary\">\n <span class=\"govuk-details__summary-text govuk-font19px\">\n <a href=\"Javascript:void(0);\" (click)=\"selectContactOption('Postcode', 'true')\"> Enter address manually</a>\n </span>\n </summary>\n </details>\n </div>\n <div class=\"govuk-radios__conditional\" id=\"conditional-contact-manual\" *ngIf=\"isPostcodeClicked && isManualAddressClicked\">\n <form [formGroup]=\"manualAddressForm\" novalidate>\n\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-font19px\" for=\"address-line-1\">\n <span class=\"govuk-hint govuk-font19px\">Information about this refund will be sent to this address.</span>Building and street <span class=\"govuk-visually-hidden\">line 1 of 2</span>\n </label>\n <input class=\"govuk-input govuk-font19px\" id=\"address-line-1\" name=\"address-line-1\" [ngClass]=\"{ 'inline-error-class': isaddressLine1Empty || addressLine1HasError }\" value=\"{{addressObj?.contact_details?.address_line}}\" formControlName=\"addressl1\" type=\"text\" autocomplete=\"address-line1\">\n <p class=\"inline-error-message\" *ngIf=\"isaddressLine1Empty || addressLine1HasError\">\n <span *ngIf=\"isaddressLine1Empty\">Enter a Building and street.</span>\n <span *ngIf=\"addressLine1HasError\">Enter a valid Building and street.</span>\n </p> \n </div>\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label\" for=\"address-line-2\">\n <span class=\"govuk-visually-hidden govuk-font19px\">Building and street line 2 of 2</span>\n </label>\n <input class=\"govuk-input govuk-font19px\" id=\"address-line-2\" name=\"address-line-2\" [ngClass]=\"{ 'inline-error-class': addressLine2HasError}\" formControlName=\"addressl2\" type=\"text\" autocomplete=\"address-line2\">\n <p class=\"inline-error-message\" *ngIf=\"addressLine2HasError\">\n <span *ngIf=\"addressLine2HasError\">Enter a valid Building and street line 2 of 2.</span>\n </p> \n </div>\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-font19px\" for=\"address-town\">\n Town or city\n </label>\n <input class=\"govuk-input govuk-!-width-two-thirds govuk-font19px\" id=\"address-town\" name=\"address-town\" [ngClass]=\"{ 'inline-error-class': isTownOrCityEmpty || townOrCityHasError}\" value=\"{{addressObj?.contact_details?.city}}\" formControlName=\"townorcity\" type=\"text\" autocomplete=\"address-level2\">\n <p class=\"inline-error-message\" *ngIf=\"isTownOrCityEmpty || townOrCityHasError\">\n <span *ngIf=\"isTownOrCityEmpty\">Enter a town or city.</span>\n <span *ngIf=\"townOrCityHasError\">Enter a town or city.</span>\n </p> \n </div>\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-font19px\" for=\"address-county\">\n County\n </label>\n <input class=\"govuk-input govuk-!-width-two-thirds govuk-font19px\" id=\"address-county\" [ngClass]=\"{ 'inline-error-class': isCountyEmpty || countyHasError}\" value=\"{{addressObj?.contact_details?.county}}\" formControlName=\"county\" name=\"address-county\" type=\"text\">\n <p class=\"inline-error-message\" *ngIf=\"isCountyEmpty || countyHasError\">\n <span *ngIf=\"isCountyEmpty\">Enter a County.</span>\n <span *ngIf=\"countyHasError\">Enter a valid County.</span>\n </p> \n </div>\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-font19px\" for=\"address-postcode\">\n Postcode\n </label>\n <input class=\"govuk-input govuk-input--width-10 govuk-font19px\" id=\"address-postcode\" formControlName=\"mpostcode\" name=\"address-postcode\" [ngClass]=\"{ 'inline-error-class': isMPostcodeEmpty || mpostcodeHasError}\" value=\"{{addressObj?.contact_details?.postal_code}}\" type=\"text\" autocomplete=\"postal-code\">\n <p class=\"inline-error-message\" *ngIf=\"isMPostcodeEmpty || mpostcodeHasError\">\n <span *ngIf=\"isMPostcodeEmpty\">Enter a postcode.</span>\n <span *ngIf=\"mpostcodeHasError\">Enter a valid postcode.</span>\n </p> \n </div>\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-font19px\" for=\"country\">\n Country\n </label>\n <select class=\"govuk-select govuk-font19px\" id=\"country\" name=\"country\" [ngClass]=\"{'inline-error-class': isCountryEmpty}\" formControlName=\"country\">\n <option value=\"\" selected=\"selected\">Please select</option>\n <option value=\"United Kingdom\" selected=\"{{ addressObj?.contact_details?.country ? 'selected' : '' }}\">United Kingdom</option>\n </select>\n <p class=\"inline-error-message\" *ngIf=\"isCountryEmpty\">\n <span *ngIf=\"isCountryEmpty\">Select a Country.</span>\n </p> \n </div>\n </form>\n </div>\n </div>\n </fieldset>\n </div>\n <!---FORM--->\n </div>\n\n<hr class=\"govuk-section-break govuk-section-break--m govuk-section-break--visible\">\n</fieldset>\n<div class=\"govuk-button-group\">\n<button type=\"submit\" class=\"button govuk-button--secondary govuk-font19px\" (click)=\"redirection($event)\"> Previous </button>\n&nbsp;\n<button type=\"submit\" class=\"button govuk-button govuk-font19px\" (click)=\"finalFormSubmit()\">\n Continue\n</button>\n</div>",
309
- styles: [".govuk-font19px{font-size:19px}.inline-error-class{outline:#a71414 solid 3px;outline-offset:0}.inline-error-message{color:#a71414;font-weight:700;margin-top:10px}.contact-details--size{width:50%}.postcode-align-css{display:flex;flex-direction:row}.govuk-margin-right-10px{margin-right:10px}.govuk-margin-btm-20px{margin-bottom:20px!important}"]
310
- }] }
311
- ];
312
- /** @nocollapse */
313
- ContactDetailsComponent.ctorParameters = () => [
314
- { type: FormBuilder },
315
- { type: NotificationService },
316
- { type: PaymentLibComponent }
317
- ];
318
- ContactDetailsComponent.propDecorators = {
319
- isEditOperation: [{ type: Input, args: ['isEditOperation',] }],
320
- addressObj: [{ type: Input, args: ['addressObj',] }],
321
- assignContactDetails: [{ type: Output }],
322
- redirectToIssueRefund: [{ type: Output }]
323
- };
324
- if (false) {
325
- /** @type {?} */
326
- ContactDetailsComponent.prototype.isEditOperation;
327
- /** @type {?} */
328
- ContactDetailsComponent.prototype.addressObj;
329
- /** @type {?} */
330
- ContactDetailsComponent.prototype.assignContactDetails;
331
- /** @type {?} */
332
- ContactDetailsComponent.prototype.redirectToIssueRefund;
333
- /** @type {?} */
334
- ContactDetailsComponent.prototype.pageTitle;
335
- /** @type {?} */
336
- ContactDetailsComponent.prototype.errorMessage;
337
- /** @type {?} */
338
- ContactDetailsComponent.prototype.isEmailSAddressClicked;
339
- /** @type {?} */
340
- ContactDetailsComponent.prototype.isShowPickAddress;
341
- /** @type {?} */
342
- ContactDetailsComponent.prototype.isPostcodeClicked;
343
- /** @type {?} */
344
- ContactDetailsComponent.prototype.isManualAddressClicked;
345
- /** @type {?} */
346
- ContactDetailsComponent.prototype.emailAddressForm;
347
- /** @type {?} */
348
- ContactDetailsComponent.prototype.postCodeForm;
349
- /** @type {?} */
350
- ContactDetailsComponent.prototype.manualAddressForm;
351
- /** @type {?} */
352
- ContactDetailsComponent.prototype.addressPostcodeList;
353
- /** @type {?} */
354
- ContactDetailsComponent.prototype.postcodeAddress;
355
- /** @type {?} */
356
- ContactDetailsComponent.prototype.isEmailEmpty;
357
- /** @type {?} */
358
- ContactDetailsComponent.prototype.emailHasError;
359
- /** @type {?} */
360
- ContactDetailsComponent.prototype.isPostcodeEmpty;
361
- /** @type {?} */
362
- ContactDetailsComponent.prototype.postcodeHasError;
363
- /** @type {?} */
364
- ContactDetailsComponent.prototype.isaddressLine1Empty;
365
- /** @type {?} */
366
- ContactDetailsComponent.prototype.addressLine1HasError;
367
- /** @type {?} */
368
- ContactDetailsComponent.prototype.addressLine2HasError;
369
- /** @type {?} */
370
- ContactDetailsComponent.prototype.isTownOrCityEmpty;
371
- /** @type {?} */
372
- ContactDetailsComponent.prototype.townOrCityHasError;
373
- /** @type {?} */
374
- ContactDetailsComponent.prototype.isCountyEmpty;
375
- /** @type {?} */
376
- ContactDetailsComponent.prototype.countyHasError;
377
- /** @type {?} */
378
- ContactDetailsComponent.prototype.isMPostcodeEmpty;
379
- /** @type {?} */
380
- ContactDetailsComponent.prototype.mpostcodeHasError;
381
- /** @type {?} */
382
- ContactDetailsComponent.prototype.isCountryEmpty;
383
- /**
384
- * @type {?}
385
- * @private
386
- */
387
- ContactDetailsComponent.prototype.formBuilder;
388
- /**
389
- * @type {?}
390
- * @private
391
- */
392
- ContactDetailsComponent.prototype.notificationService;
393
- /**
394
- * @type {?}
395
- * @private
396
- */
397
- ContactDetailsComponent.prototype.paymentLibComponent;
398
- }
399
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1kZXRhaWxzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9jY3BheS13ZWItY29tcG9uZW50LyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY29udGFjdC1kZXRhaWxzL2NvbnRhY3QtZGV0YWlscy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFPdkYsTUFBTSxPQUFPLHVCQUF1Qjs7Ozs7O0lBZ0NsQyxZQUFvQixXQUF3QixFQUN4QixtQkFBd0MsRUFDeEMsbUJBQXdDO1FBRnhDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQS9CbEQseUJBQW9CLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDN0QsMEJBQXFCLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDeEUsY0FBUyxHQUFXLHdCQUF3QixDQUFDO1FBRTdDLDJCQUFzQixHQUFZLElBQUksQ0FBQztRQUN2QyxzQkFBaUIsR0FBYSxLQUFLLENBQUM7UUFDcEMsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLDJCQUFzQixHQUFZLEtBQUssQ0FBQztRQUl4Qyx3QkFBbUIsR0FBUyxFQUFFLENBQUM7UUFHL0IsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFDOUIsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFDL0Isb0JBQWUs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QUFxQzs7SUFDckMsdURBQXVFOztJQUN2RSx3REFBd0U7O0lBQ3hFLDRDQUE2Qzs7SUFDN0MsK0NBQXFCOztJQUNyQix5REFBdUM7O0lBQ3ZDLG9EQUFvQzs7SUFDcEMsb0RBQW1DOztJQUNuQyx5REFBd0M7O0lBQ3hDLG1EQUE0Qjs7SUFDNUIsK0NBQXdCOztJQUN4QixvREFBNkI7O0lBQzdCLHNEQUErQjs7SUFDL0Isa0RBQW9COztJQUVwQiwrQ0FBOEI7O0lBQzlCLGdEQUErQjs7SUFDL0Isa0RBQWlDOztJQUNqQyxtREFBa0M7O0lBQ2xDLHNEQUFxQzs7SUFDckMsdURBQXNDOztJQUN0Qyx1REFBc0M7O0lBQ3RDLG9EQUFtQzs7SUFDbkMscURBQW9DOztJQUNwQyxnREFBK0I7O0lBQy9CLGlEQUFnQzs7SUFDaEMsbURBQWtDOztJQUNsQyxvREFBbUM7O0lBQ25DLGlEQUFnQzs7Ozs7SUFFcEIsOENBQWdDOzs7OztJQUNoQyxzREFBZ0Q7Ozs7O0lBQ2hELHNEQUFnRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMsIEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUGF5bWVudExpYkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3BheW1lbnQtbGliLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NwYXktY29udGFjdC1kZXRhaWxzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnRhY3QtZGV0YWlscy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnRhY3QtZGV0YWlscy5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ29udGFjdERldGFpbHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoJ2lzRWRpdE9wZXJhdGlvbicpIGlzRWRpdE9wZXJhdGlvbjogYm9vbGVhbjtcbiAgQElucHV0KCdhZGRyZXNzT2JqJykgYWRkcmVzc09iajogYW55O1xuICBAT3V0cHV0KCkgYXNzaWduQ29udGFjdERldGFpbHM6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgcmVkaXJlY3RUb0lzc3VlUmVmdW5kOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgcGFnZVRpdGxlOiBzdHJpbmcgPSAnUGF5bWVudCBzdGF0dXMgaGlzdG9yeSc7XG4gIGVycm9yTWVzc2FnZTogc3RyaW5nO1xuICBpc0VtYWlsU0FkZHJlc3NDbGlja2VkOiBib29sZWFuID0gdHJ1ZTtcbiAgaXNTaG93UGlja0FkZHJlc3M6ICBib29sZWFuID0gZmFsc2U7XG4gIGlzUG9zdGNvZGVDbGlja2VkOiBib29sZWFuID0gZmFsc2U7XG4gIGlzTWFudWFsQWRkcmVzc0NsaWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZW1haWxBZGRyZXNzRm9ybTogRm9ybUdyb3VwO1xuICBwb3N0Q29kZUZvcm06IEZvcm1Hcm91cDtcbiAgbWFudWFsQWRkcmVzc0Zvcm06IEZvcm1Hcm91cDtcbiAgYWRkcmVzc1Bvc3Rjb2RlTGlzdDphbnlbXSA9IFtdO1xuICBwb3N0Y29kZUFkZHJlc3M6YW55O1xuXG4gIGlzRW1haWxFbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuICBlbWFpbEhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIGlzUG9zdGNvZGVFbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuICBwb3N0Y29kZUhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIGlzYWRkcmVzc0xpbmUxRW1wdHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgYWRkcmVzc0xpbmUxSGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgYWRkcmVzc0xpbmUySGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgaXNUb3duT3JDaXR5RW1wdHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgdG93bk9yQ2l0eUhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIGlzQ291bnR5RW1wdHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgY291bnR5SGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgaXNNUG9zdGNvZGVFbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuICBtcG9zdGNvZGVIYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICBpc0NvdW50cnlFbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgcGF5bWVudExpYkNvbXBvbmVudDogUGF5bWVudExpYkNvbXBvbmVudCkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXSwgJ2FsbCcpO1xuXG4gICAgdGhpcy5lbWFpbEFkZHJlc3NGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBlbWFpbDogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1xuICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICBWYWxpZGF0b3JzLnBhdHRlcm4oJ15bYS16MC05Ll8lKy1dK0BbYS16MC05LV0rXFxcXC5bYS16XXsyLDR9JCcpXG4gICAgICBdKSlcbiAgICB9KTtcbiAgICB0aGlzLnBvc3RDb2RlRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgcG9zdGNvZGU6IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtcbiAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcbiAgICAgICAgVmFsaWRhdG9ycy5wYXR0ZXJuKCdeKFtBLVpdezEsMn1bMC05XXsxLDJ9W0EtWl17MCwxfSA/WzAtOV1bQS1aXXsyfSknKVxuICAgICAgXSkpXG4gICAgfSk7XG4gICAgdGhpcy5tYW51YWxBZGRyZXNzRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgYWRkcmVzc2wxOiBuZXcgRm9ybUNvbnRyb2woJycsIFZhbGlkYXRvcnMuY29tcG9zZShbXG4gICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWQsXG4gICAgICAgIFZhbGlkYXRvcnMucGF0dGVybignXlthLXpBLVowLTlcXFxccyxcXCctXSokJylcbiAgICAgIF0pKSxcbiAgICAgIGFkZHJlc3NsMjogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1xuICAgICAgICBWYWxpZGF0b3JzLnBhdHRlcm4oJ15bYS16QS1aMC05XFxcXHMsXFwnLV0qJCcpXG4gICAgICBdKSksXG4gICAgICB0b3dub3JjaXR5OiBuZXcgRm9ybUNvbnRyb2woJycsIFZhbGlkYXRvcnMuY29tcG9zZShbXG4gICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWQsXG4gICAgICAgIFZhbGlkYXRvcnMucGF0dGVybignXlthLXpBLVowLTlcXFxccyxcXCctXSokJylcbiAgICAgIF0pKSxcbiAgICAgIGNvdW50eTogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1xuICAgICAgICBWYWxpZGF0b3JzLnBhdHRlcm4oJ15bYS16QS1aMC05XFxcXHMsXFwnLV0qJCcpXG4gICAgICBdKSksXG4gICAgICBtcG9zdGNvZGU6IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtcbiAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcbiAgICAgICAgVmFsaWRhdG9ycy5wYXR0ZXJuKCdeKFtBLVpdezEsMn1bMC05XXsxLDJ9W0EtWl17MCwxfSA/WzAtOV1bQS1aXXsyfSknKVxuICAgICAgXSkpLFxuICAgICAgY291bnRyeTogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1xuICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkXG4gICAgICBdKSlcbiAgICB9KTtcbiAgICBpZih0aGlzLmFkZHJlc3NPYmogIT09IHVuZGVmaW5lZCAmJiB0aGlzLmFkZHJlc3NPYmogIT09ICcnKSB7XG4gICAgICB0aGlzLnNldEVkaXREZXRhaWxzKCk7XG4gICAgfVxuICB9XG4gIHNldEVkaXREZXRhaWxzKCkge1xuICAgIGlmKHRoaXMuYWRkcmVzc09iai5ub3RpZmljYXRpb25fdHlwZSA9PT0gJ0VNQUlMJykge1xuICAgICAgdGhpcy5pc0VtYWlsU0FkZHJlc3NDbGlja2VkID0gdHJ1ZTtcbiAgICAgIHRoaXMuaXNQb3N0Y29kZUNsaWNrZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuaXNNYW51YWxBZGRyZXNzQ2xpY2tlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5lbWFpbEFkZHJlc3NGb3JtLnNldFZhbHVlKHsgZW1haWw6IHRoaXMuYWRkcmVzc09iai5jb250YWN0X2RldGFpbHMuZW1haWwgfSk7XG4gICAgfSBlbHNlIGlmKHRoaXMuYWRkcmVzc09iai5ub3RpZmljYXRpb25fdHlwZSA9PT0gJ0xFVFRFUicpIHtcbiAgICAgIHRoaXMuaXNFbWFpbFNBZGRyZXNzQ2xpY2tlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5pc1Bvc3Rjb2RlQ2xpY2tlZCA9IHRydWU7XG4gICAgICB0aGlzLmlzTWFudWFsQWRkcmVzc0NsaWNrZWQgPSB0cnVlO1xuICAgICAgdGhpcy5tYW51YWxBZGRyZXNzRm9ybS5wYXRjaFZhbHVlKHsgXG4gICAgICAgIGFkZHJlc3NsMTogdGhpcy5hZGRyZXNzT2JqLmNvbnRhY3RfZGV0YWlscy5hZGRyZXNzX2xpbmUsXG4gICAgICAgIHRvd25vcmNpdHk6IHRoaXMuYWRkcmVzc09iai5jb250YWN0X2RldGFpbHMuY2l0eSxcbiAgICAgICAgY291bnR5OiB0aGlzLmFkZHJlc3NPYmouY29udGFjdF9kZXRhaWxzLmNvdW50eSxcbiAgICAgICAgY291bnRyeTogdGhpcy5hZGRyZXNzT2JqLmNvbnRhY3RfZGV0YWlscy5jb3VudHJ5LFxuICAgICAgICBtcG9zdGNvZGU6IHRoaXMuYWRkcmVzc09iai5jb250YWN0X2RldGFpbHMucG9zdGFsX2NvZGVcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdENvbnRhY3RPcHRpb24odHlwZSwgaXNMaW5rZWRDbGllZCkge1xuICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdhbGwnKTtcbiAgICBpZiggdHlwZSA9PT0gJ0VtYWlsJyAmJiBpc0xpbmtlZENsaWVkID09PSAnZmFsc2UnKXtcbiAgICAgIHRoaXMuaXNFbWFpbFNBZGRyZXNzQ2xpY2tlZCA9IHRydWU7XG4gICAgICB0aGlzLmlzUG9zdGNvZGVDbGlja2VkID0gZmFsc2U7XG4gICAgICB0aGlzLmlzTWFudWFsQWRkcmVzc0NsaWNrZWQgPSBmYWxzZTtcbiAgICB9IGVsc2UgaWYodHlwZSA9PT0gJ1Bvc3Rjb2RlJyAmJiBpc0xpbmtlZENsaWVkID09PSAnZmFsc2UnKSB7XG4gICAgICB0aGlzLmlzRW1haWxTQWRkcmVzc0NsaWNrZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuaXNQb3N0Y29kZUNsaWNrZWQgPSB0cnVlO1xuICAgICAgdGhpcy5pc01hbnVhbEFkZHJlc3NDbGlja2VkID0gZmFsc2U7XG4gICAgfSBlbHNlIGlmKHR5cGUgPT09ICdQb3N0Y29kZScgJiYgaXNMaW5rZWRDbGllZCA9PT0gJ3RydWUnKSB7XG4gICAgICB0aGlzLmlzRW1haWxTQWRkcmVzc0NsaWNrZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuaXNQb3N0Y29kZUNsaWNrZWQgPSB0cnVlO1xuICAgICAgdGhpcy5pc01hbnVhbEFkZHJlc3NDbGlja2VkID0gdHJ1ZTtcblxuICAgIH1cbiAgfVxuXG4gIGZpbmFsRm9ybVN1Ym1pdCgpIHtcbiAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdLCAnYWxsJyk7XG4gICAgaWYoIHRoaXMuaXNFbWFpbFNBZGRyZXNzQ2xpY2tlZCApe1xuICAgICAgY29uc3QgZW1haWxGaWVsZCA9IHRoaXMuZW1haWxBZGRyZXNzRm9ybS5jb250cm9scy5lbWFpbDtcbiAgICAgIGlmICh0aGlzLmVtYWlsQWRkcmVzc0Zvcm0udmFsaWQpIHtcbiAgICAgICAgdGhpcy5hc3NpZ25Db250YWN0RGV0YWlscy5lbWl0KCB7XG4gICAgICAgICAgZW1haWw6IGVtYWlsRmllbGQudmFsdWUsXG4gICAgICAgICAgbm90aWZpY2F0aW9uX3R5cGU6ICdFTUFJTCdcbiAgICAgICAgfSApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYoIGVtYWlsRmllbGQudmFsdWUgPT0gJycgKSB7XG4gICAgICAgICAgdGhpcy5yZXNldEZvcm0oW3RydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdLCAnZW1haWwnKTtcbiAgICAgICAgfVxuICAgICAgICBpZihlbWFpbEZpZWxkLnZhbHVlICE9ICcnICYmIGVtYWlsRmllbGQuaW52YWxpZCApIHtcbiAgICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdlbWFpbCcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmKCB0aGlzLmlzUG9zdGNvZGVDbGlja2VkICYmICF0aGlzLmlzTWFudWFsQWRkcmVzc0NsaWNrZWQgKSB7XG4gICAgICB0aGlzLnBvc3Rjb2RlVmFsaWRhdGlvbignRlMnKTtcbiAgICB9IGVsc2UgaWYodGhpcy5pc1Bvc3Rjb2RlQ2xpY2tlZCAmJiB0aGlzLmlzTWFudWFsQWRkcmVzc0NsaWNrZWQpIHtcbiAgICAgIGNvbnN0IGZpZWxkQ3RybHMgPSB0aGlzLm1hbnVhbEFkZHJlc3NGb3JtLmNvbnRyb2xzO1xuICAgICAgaWYgKHRoaXMubWFudWFsQWRkcmVzc0Zvcm0udmFsaWQpIHtcbiAgICAgICAgdGhpcy5hc3NpZ25Db250YWN0RGV0YWlscy5lbWl0KHtcbiAgICAgICAgICBhZGRyZXNzX2xpbmU6IGZpZWxkQ3RybHMuYWRkcmVzc2wxLnZhbHVlKycgJytmaWVsZEN0cmxzLmFkZHJlc3NsMi52YWx1ZSxcbiAgICAgICAgICBjaXR5OiBmaWVsZEN0cmxzLnRvd25vcmNpdHkudmFsdWUsXG4gICAgICAgICAgY291bnR5OiBmaWVsZEN0cmxzLmNvdW50eS52YWx1ZSxcbiAgICAgICAgICBwb3N0YWxfY29kZTogZmllbGRDdHJscy5tcG9zdGNvZGUudmFsdWUsXG4gICAgICAgICAgY291bnRyeTogZmllbGRDdHJscy5jb3VudHJ5LnZhbHVlLFxuICAgICAgICAgIG5vdGlmaWNhdGlvbl90eXBlOiAnTEVUVEVSJ1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmKCBmaWVsZEN0cmxzLmFkZHJlc3NsMS52YWx1ZSA9PSAnJyApIHtcbiAgICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdhZGRyZXNzMScpO1xuICAgICAgICB9XG4gICAgICAgIGlmKGZpZWxkQ3RybHMuYWRkcmVzc2wxLnZhbHVlICE9ICcnICYmIGZpZWxkQ3RybHMuYWRkcmVzc2wxLmludmFsaWQgKSB7XG4gICAgICAgICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdLCAnYWRkcmVzczEnKTtcbiAgICAgICAgfVxuICAgICAgICBpZihmaWVsZEN0cmxzLmFkZHJlc3NsMi52YWx1ZSAhPSAnJyAmJiBmaWVsZEN0cmxzLmFkZHJlc3NsMi5pbnZhbGlkICkge1xuICAgICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXSwgJ2FkZHJlc3MyJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYoIGZpZWxkQ3RybHMudG93bm9yY2l0eS52YWx1ZSA9PSAnJyApIHtcbiAgICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV0sICd0b3duJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYoZmllbGRDdHJscy50b3dub3JjaXR5LnZhbHVlICE9ICcnICYmIGZpZWxkQ3RybHMudG93bm9yY2l0eS5pbnZhbGlkICkge1xuICAgICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXSwgJ3Rvd24nKTtcbiAgICAgICAgfVxuICAgICAgICBpZiggZmllbGRDdHJscy5jb3VudHkudmFsdWUgPT0gJycgKSB7XG4gICAgICAgICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdLCAnY291bnR5Jyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYoZmllbGRDdHJscy5jb3VudHkudmFsdWUgIT0gJycgJiYgZmllbGRDdHJscy5jb3VudHkuaW52YWxpZCApIHtcbiAgICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdjb3VudHknKTtcbiAgICAgICAgfVxuICAgICAgICBpZiggZmllbGRDdHJscy5tcG9zdGNvZGUudmFsdWUgPT0gJycgKSB7XG4gICAgICAgICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2VdLCAnbXBvc3Rjb2RlJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYoZmllbGRDdHJscy5tcG9zdGNvZGUudmFsdWUgIT0gJycgJiYgZmllbGRDdHJscy5tcG9zdGNvZGUuaW52YWxpZCApIHtcbiAgICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZV0sICdtcG9zdGNvZGUnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiggZmllbGRDdHJscy5jb3VudHJ5LnZhbHVlID09ICcnICkge1xuICAgICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlXSwgJ2NvdW50cnknKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBwb3N0Y29kZVZhbGlkYXRpb24oc3RyKSB7XG4gICAgY29uc3QgcG9zdGNvZGVGaWVsZCA9IHRoaXMucG9zdENvZGVGb3JtLmNvbnRyb2xzLnBvc3Rjb2RlO1xuICAgIGlmICh0aGlzLnBvc3RDb2RlRm9ybS52YWxpZCkge1xuICAgICAgaWYoc3RyID09PSAnRkEnKSB7XG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5nZXRBZGRyZXNzQnlQb3N0Y29kZShwb3N0Y29kZUZpZWxkLnZhbHVlKS5zdWJzY3JpYmUoXG4gICAgICAgICAgcmVmdW5kc05vdGlmaWNhdGlvbiA9PiB7XG4gICAgICAgICAgICB0aGlzLmFkZHJlc3NQb3N0Y29kZUxpc3QgPSByZWZ1bmRzTm90aWZpY2F0aW9uWydkYXRhJ11bJ3Jlc3VsdHMnXTtcbiAgICAgICAgICAgIHRoaXMuaXNTaG93UGlja0FkZHJlc3MgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgKSxcbiAgICAgICAgKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgICB0aGlzLmlzU2hvd1BpY2tBZGRyZXNzID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBlcnJvci5yZXBsYWNlKC9cIi9nLFwiXCIpO1xuICAgICAgICB9OyBcbiAgICAgIH0gZWxzZSBpZiAoc3RyID09PSAnRlMnKSB7XG4gICAgICAgIGlmKHRoaXMucG9zdGNvZGVBZGRyZXNzICE9PSB1bmRlZmluZWQgJiYgdGhpcy5wb3N0Y29kZUFkZHJlc3MpIHtcbiAgICAgICAgICBsZXQgYWRkcmVzc0xpbmU9XCJcIjtcbiAgICAgICAgICBsZXQgYWRkcmVzc0FycmF5ID0gdGhpcy5wb3N0Y29kZUFkZHJlc3MuQUREUkVTUy5zcGxpdChcIixcIik7XG4gICAgICAgICAgZm9yKCBsZXQgaT0wOyBpPGFkZHJlc3NBcnJheS5sZW5ndGgtMjsgaSsrICkge1xuICAgICAgICAgICAgYWRkcmVzc0xpbmUgKz1hZGRyZXNzQXJyYXlbaV07IFxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuYXNzaWduQ29udGFjdERldGFpbHMuZW1pdCh7XG4gICAgICAgICAgICBhZGRyZXNzX2xpbmU6IGFkZHJlc3NMaW5lLFxuICAgICAgICAgICAgY2l0eTogdGhpcy5wb3N0Y29kZUFkZHJlc3MuUE9TVF9UT1dOLFxuICAgICAgICAgICAgY291bnR5OiB0aGlzLnBvc3Rjb2RlQWRkcmVzcy5MT0NBTF9DVVNUT0RJQU5fQ09ERV9ERVNDUklQVElPTixcbiAgICAgICAgICAgIHBvc3RhbF9jb2RlOiB0aGlzLnBvc3Rjb2RlQWRkcmVzcy5QT1NUQ09ERSxcbiAgICAgICAgICAgIGNvdW50cnk6ICdVbml0ZWQgS2luZ2RvbScsXG4gICAgICAgICAgICBub3RpZmljYXRpb25fdHlwZTogJ0xFVFRFUidcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiggcG9zdGNvZGVGaWVsZC52YWx1ZSA9PSAnJyApIHtcbiAgICAgICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdLCAncG9zdGNvZGUnKTtcbiAgICAgIH1cbiAgICAgIGlmKHBvc3Rjb2RlRmllbGQudmFsdWUgIT0gJycgJiYgcG9zdGNvZGVGaWVsZC5pbnZhbGlkICkge1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdwb3N0Y29kZScpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZWRpcmVjdGlvbihldmVudDphbnkpIHtcbiAgICB0aGlzLnJlZGlyZWN0VG9Jc3N1ZVJlZnVuZC5lbWl0KGV2ZW50KTtcbiAgfVxuICByZXNldEZvcm0odmFsLCBmaWVsZCkge1xuICAgIGlmKGZpZWxkPT09J2VtYWlsJyB8fCBmaWVsZD09PSdhbGwnKSB7XG4gICAgICB0aGlzLmlzRW1haWxFbXB0eSA9IHZhbFswXTtcbiAgICAgIHRoaXMuZW1haWxIYXNFcnJvciA9IHZhbFsxXTtcbiAgICB9XG4gICAgaWYoZmllbGQ9PT0ncG9zdGNvZGUnIHx8IGZpZWxkPT09J2FsbCcpIHtcbiAgICAgIHRoaXMuaXNQb3N0Y29kZUVtcHR5ID0gdmFsWzJdO1xuICAgICAgdGhpcy5wb3N0Y29kZUhhc0Vycm9yID0gdmFsWzNdO1xuICAgIH1cbiAgICBpZihmaWVsZD09PSdhZGRyZXNzMScgfHwgZmllbGQ9PT0nYWxsJykge1xuICAgICAgdGhpcy5pc2FkZHJlc3NMaW5lMUVtcHR5ID0gdmFsWzRdO1xuICAgICAgdGhpcy5hZGRyZXNzTGluZTFIYXNFcnJvciA9IHZhbFs1XTtcbiAgICB9XG4gICAgaWYoZmllbGQ9PT0nYWRkcmVzczInIHx8IGZpZWxkPT09J2FsbCcpIHtcbiAgICAgIHRoaXMuYWRkcmVzc0xpbmUySGFzRXJyb3IgPSB2YWxbNl07XG4gICAgfVxuICAgIGlmKGZpZWxkPT09J3Rvd24nIHx8IGZpZWxkPT09J2FsbCcpIHtcbiAgICAgIHRoaXMuaXNUb3duT3JDaXR5RW1wdHkgPSB2YWxbN107XG4gICAgICB0aGlzLnRvd25PckNpdHlIYXNFcnJvciA9IHZhbFs4XTtcbiAgICB9XG4gICAgaWYoZmllbGQ9PT0nY291bnR5JyB8fCBmaWVsZD09PSdhbGwnKSB7XG4gICAgICB0aGlzLmlzQ291bnR5RW1wdHkgPSB2YWxbOV07XG4gICAgICB0aGlzLmNvdW50eUhhc0Vycm9yID0gdmFsWzEwXTtcbiAgICB9XG4gICAgaWYoZmllbGQ9PT0nbXBvc3Rjb2RlJyB8fCBmaWVsZD09PSdhbGwnKSB7XG4gICAgICB0aGlzLmlzTVBvc3Rjb2RlRW1wdHkgPSB2YWxbMTFdO1xuICAgICAgdGhpcy5tcG9zdGNvZGVIYXNFcnJvciA9IHZhbFsxMl07XG4gICAgfVxuICAgIGlmKGZpZWxkPT09J2NvdW50cnknIHx8IGZpZWxkPT09J2FsbCcpIHtcbiAgICAgIHRoaXMuaXNDb3VudHJ5RW1wdHkgPSB2YWxbMTNdO1xuICAgIH1cbiAgXG4gIH1cbn1cbiJdfQ==
@@ -1,25 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- export class IPutNotificationRequest {
6
- /**
7
- * @param {?} contactDetails
8
- * @param {?} notificationType
9
- */
10
- constructor(contactDetails, notificationType) {
11
- if (notificationType === 'EMAIL') {
12
- this.recipient_email_address = contactDetails;
13
- }
14
- else if (notificationType === 'LETTER') {
15
- this.recipient_postal_address = contactDetails;
16
- }
17
- }
18
- }
19
- if (false) {
20
- /** @type {?} */
21
- IPutNotificationRequest.prototype.recipient_email_address;
22
- /** @type {?} */
23
- IPutNotificationRequest.prototype.recipient_postal_address;
24
- }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVB1dE5vdGlmaWNhdGlvblJlcXVlc3QuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvY2NwYXktd2ViLWNvbXBvbmVudC8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmZhY2VzL0lQdXROb3RpZmljYXRpb25SZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxNQUFNLE9BQU8sdUJBQXVCOzs7OztJQUloQyxZQUFZLGNBQW1CLEVBQUUsZ0JBQXdCO1FBQ3ZELElBQUcsZ0JBQWdCLEtBQUssT0FBTyxFQUFFO1lBQy9CLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxjQUFjLENBQUM7U0FDL0M7YUFBTSxJQUFHLGdCQUFnQixLQUFLLFFBQVEsRUFBRTtZQUN2QyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsY0FBYyxDQUFDO1NBQ2hEO0lBQ0gsQ0FBQztDQUNKOzs7SUFWQywwREFBaUM7O0lBQ2pDLDJEQUFnRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElSZWZ1bmRDb250YWN0RGV0YWlscyB9IGZyb20gJy4vSVJlZnVuZENvbnRhY3REZXRhaWxzJztcblxuZXhwb3J0IGNsYXNzIElQdXROb3RpZmljYXRpb25SZXF1ZXN0IHtcbiAgcmVjaXBpZW50X2VtYWlsX2FkZHJlc3M/OiBzdHJpbmc7XG4gIHJlY2lwaWVudF9wb3N0YWxfYWRkcmVzcz86IElSZWZ1bmRDb250YWN0RGV0YWlsc1xuICBcbiAgICBjb25zdHJ1Y3Rvcihjb250YWN0RGV0YWlsczogYW55LCBub3RpZmljYXRpb25UeXBlOiBzdHJpbmcpIHtcbiAgICAgIGlmKG5vdGlmaWNhdGlvblR5cGUgPT09ICdFTUFJTCcpIHtcbiAgICAgICAgdGhpcy5yZWNpcGllbnRfZW1haWxfYWRkcmVzcyA9IGNvbnRhY3REZXRhaWxzO1xuICAgICAgfSBlbHNlIGlmKG5vdGlmaWNhdGlvblR5cGUgPT09ICdMRVRURVInKSB7XG4gICAgICAgIHRoaXMucmVjaXBpZW50X3Bvc3RhbF9hZGRyZXNzID0gY29udGFjdERldGFpbHM7XG4gICAgICB9XG4gICAgfSBcbn0iXX0=
@@ -1,25 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- /**
6
- * @record
7
- */
8
- export function IRefundContactDetails() { }
9
- if (false) {
10
- /** @type {?|undefined} */
11
- IRefundContactDetails.prototype.address_line;
12
- /** @type {?|undefined} */
13
- IRefundContactDetails.prototype.city;
14
- /** @type {?|undefined} */
15
- IRefundContactDetails.prototype.country;
16
- /** @type {?|undefined} */
17
- IRefundContactDetails.prototype.county;
18
- /** @type {?|undefined} */
19
- IRefundContactDetails.prototype.email;
20
- /** @type {?|undefined} */
21
- IRefundContactDetails.prototype.notification_type;
22
- /** @type {?|undefined} */
23
- IRefundContactDetails.prototype.postal_code;
24
- }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVJlZnVuZENvbnRhY3REZXRhaWxzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL2NjcGF5LXdlYi1jb21wb25lbnQvIiwic291cmNlcyI6WyJsaWIvaW50ZXJmYWNlcy9JUmVmdW5kQ29udGFjdERldGFpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLDJDQVFDOzs7SUFQQyw2Q0FBc0I7O0lBQ3RCLHFDQUFjOztJQUNkLHdDQUFpQjs7SUFDakIsdUNBQWdCOztJQUNoQixzQ0FBZTs7SUFDZixrREFBMkI7O0lBQzNCLDRDQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSVJlZnVuZENvbnRhY3REZXRhaWxzIHtcbiAgYWRkcmVzc19saW5lPzogc3RyaW5nO1xuICBjaXR5Pzogc3RyaW5nO1xuICBjb3VudHJ5Pzogc3RyaW5nO1xuICBjb3VudHk/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBub3RpZmljYXRpb25fdHlwZT86IHN0cmluZztcbiAgcG9zdGFsX2NvZGU/OiBzdHJpbmc7XG59Il19
@@ -1,21 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- /**
6
- * @record
7
- */
8
- export function IRefundsNotifications() { }
9
- if (false) {
10
- /** @type {?} */
11
- IRefundsNotifications.prototype.contact_details;
12
- /** @type {?} */
13
- IRefundsNotifications.prototype.date_created;
14
- /** @type {?} */
15
- IRefundsNotifications.prototype.date_updated;
16
- /** @type {?} */
17
- IRefundsNotifications.prototype.notification_type;
18
- /** @type {?} */
19
- IRefundsNotifications.prototype.reference;
20
- }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVJlZnVuZHNOb3RpZmljYXRpb25zLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL2NjcGF5LXdlYi1jb21wb25lbnQvIiwic291cmNlcyI6WyJsaWIvaW50ZXJmYWNlcy9JUmVmdW5kc05vdGlmaWNhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLDJDQWVHOzs7SUFkQyxnREFTSTs7SUFDRiw2Q0FBcUI7O0lBQ3JCLDZDQUFxQjs7SUFDckIsa0RBQTBCOztJQUMxQiwwQ0FBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElSZWZ1bmRzTm90aWZpY2F0aW9ucyB7XG4gICAgY29udGFjdF9kZXRhaWxzOiB7XG4gICAgICAgIGFkZHJlc3NfbGluZTogc3RyaW5nLFxuICAgICAgICBjaXR5OiBzdHJpbmcsXG4gICAgICAgIGNvdW50cnk6IHN0cmluZyxcbiAgICAgICAgY291bnR5OiBzdHJpbmcsXG4gICAgICAgIGRhdGVfY3JlYXRlZDogc3RyaW5nLFxuICAgICAgICBkYXRlX3VwZGF0ZWQ6IHN0cmluZyxcbiAgICAgICAgZW1haWw6IHN0cmluZyxcbiAgICAgICAgcG9zdGFsX2NvZGU6IHN0cmluZ1xuICAgICAgfSxcbiAgICAgIGRhdGVfY3JlYXRlZDogc3RyaW5nLFxuICAgICAgZGF0ZV91cGRhdGVkOiBzdHJpbmcsXG4gICAgICBub3RpZmljYXRpb25fdHlwZTogc3RyaW5nLFxuICAgICAgcmVmZXJlbmNlOiBzdHJpbmdcbiAgfSJdfQ==