taxtank-core 0.8.3 → 0.8.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taxtank-core.umd.js +145 -140
- package/bundles/taxtank-core.umd.js.map +1 -1
- package/esm2015/lib/collections/collection.js +2 -2
- package/esm2015/lib/collections/depreciation.collection.js +3 -3
- package/esm2015/lib/collections/tax-summary/report-item.collection.js +141 -0
- package/esm2015/lib/db/Models/transaction-base.js +2 -1
- package/esm2015/lib/models/property/property.js +7 -4
- package/esm2015/lib/models/tax-summary/report-item-details.js +9 -0
- package/esm2015/lib/models/tax-summary/report-item.js +15 -0
- package/esm2015/lib/models/tax-summary/tax-summary-section.js +5 -5
- package/esm2015/lib/services/http/address/address.service.js +39 -0
- package/esm2015/lib/services/http/bank/bank-account/bank-account.service.js +118 -0
- package/esm2015/lib/services/http/bank/bank-connection/bank-connection.service.js +52 -0
- package/esm2015/lib/services/http/bank/bank-transaction/bank-transaction.service.js +89 -0
- package/esm2015/lib/services/http/bank/bank.service.js +24 -0
- package/esm2015/lib/services/http/bank/basiq/basiq.service.js +94 -0
- package/esm2015/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.js +38 -0
- package/esm2015/lib/services/http/chart-accounts/chart-accounts.service.js +89 -0
- package/esm2015/lib/services/http/chat/chat.service.js +77 -0
- package/esm2015/lib/services/http/chat/message/message.service.js +65 -0
- package/esm2015/lib/services/http/chat/message-document/message-document.service.js +118 -0
- package/esm2015/lib/services/{depreciation/capital-project.service.js → http/depreciation/depreciation-capital-project/depreciation-capital-project.service.js} +7 -7
- package/esm2015/lib/services/http/depreciation/depreciation.service.js +146 -0
- package/esm2015/lib/services/http/document/document-folder/document-folder.service.js +84 -0
- package/esm2015/lib/services/{client → http/firm/client-invite}/client-invite.service.js +7 -7
- package/esm2015/lib/services/http/firm/client-movement/client-movement.service.js +98 -0
- package/esm2015/lib/services/http/firm/employee/employee.service.js +39 -0
- package/esm2015/lib/services/http/firm/employee-invite/employee-invite.service.js +53 -0
- package/esm2015/lib/services/http/firm/firm.service.js +79 -0
- package/esm2015/lib/services/http/firm/portfolio-report/client-portfolio-report.service.js +37 -0
- package/esm2015/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.js +90 -0
- package/esm2015/lib/services/http/income-source/income-source.service.js +109 -0
- package/esm2015/lib/services/http/income-source/salary-forecast/salary-forecast.service.js +90 -0
- package/esm2015/lib/services/http/income-source/sole-forecast/sole-forecast.service.js +87 -0
- package/esm2015/lib/services/http/loan/borrowing-expense/borrowing-expense.service.js +73 -0
- package/esm2015/lib/services/http/loan/loan.service.js +145 -0
- package/esm2015/lib/services/http/property/property-category/property-category.service.js +23 -0
- package/esm2015/lib/services/http/property/property-category-movement/property-category-movement.service.js +47 -0
- package/esm2015/lib/services/http/property/property-document/property-document.service.js +70 -0
- package/esm2015/lib/services/http/property/property-sale/property-sale.service.js +20 -0
- package/esm2015/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.js +21 -0
- package/esm2015/lib/services/http/property/property-share/property-share.service.js +115 -0
- package/esm2015/lib/services/http/property/property.service.js +126 -0
- package/esm2015/lib/services/http/rest/rest.service.js +190 -0
- package/esm2015/lib/services/http/service-notification/service-notification.service.js +65 -0
- package/esm2015/lib/services/http/subscription/subscription.service.js +157 -0
- package/esm2015/lib/services/http/tax-review/tax-review-history/tax-review-history.service.js +41 -0
- package/esm2015/lib/services/http/tax-review/tax-review.service.js +103 -0
- package/esm2015/lib/services/http/tax-summary/tax-summary.service.js +71 -0
- package/esm2015/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.js +85 -0
- package/esm2015/lib/services/http/transaction/transaction.service.js +319 -0
- package/esm2015/lib/services/http/user/occupation/occupation.service.js +45 -0
- package/esm2015/lib/services/http/user/user-event-setting/user-event-setting.service.js +59 -0
- package/esm2015/lib/services/http/user/user-event-type/user-event-type.service.js +29 -0
- package/esm2015/lib/services/http/user/user.service.js +124 -0
- package/esm2015/lib/services/http/vehicle/vehicle.service.js +237 -0
- package/esm2015/lib/services/property/equity-position-chart/equity-position-chart.service.js +45 -0
- package/esm2015/public-api.js +51 -51
- package/fesm2015/taxtank-core.js +67 -62
- package/fesm2015/taxtank-core.js.map +1 -1
- package/lib/collections/collection.d.ts +1 -1
- package/lib/collections/{tax-return-category-item.collection.d.ts → tax-summary/report-item.collection.d.ts} +5 -5
- package/lib/models/property/property.d.ts +1 -0
- package/lib/models/tax-summary/{tax-return-category-item-details.d.ts → report-item-details.d.ts} +2 -2
- package/lib/models/tax-summary/{tax-return-category-item.d.ts → report-item.d.ts} +4 -4
- package/lib/models/tax-summary/tax-summary-section.d.ts +2 -2
- package/lib/services/{address → http/address}/address.service.d.ts +1 -1
- package/lib/services/{bank → http/bank/bank-account}/bank-account.service.d.ts +5 -5
- package/lib/services/{bank → http/bank/bank-connection}/bank-connection.service.d.ts +5 -5
- package/lib/services/{bank → http/bank/bank-transaction}/bank-transaction.service.d.ts +5 -5
- package/lib/services/{bank → http/bank}/bank.service.d.ts +4 -4
- package/lib/services/{bank → http/bank/basiq}/basiq.service.d.ts +7 -7
- package/lib/services/{chart-accounts → http/chart-accounts/chart-accounts-depreciations}/chart-accounts-depreciations.service.d.ts +4 -4
- package/lib/services/{chart-accounts → http/chart-accounts}/chart-accounts.service.d.ts +3 -3
- package/lib/services/{chat → http/chat}/chat.service.d.ts +7 -7
- package/lib/services/{chat → http/chat/message}/message.service.d.ts +7 -7
- package/lib/services/{chat → http/chat/message-document}/message-document.service.d.ts +3 -3
- package/lib/services/{depreciation/capital-project.service.d.ts → http/depreciation/depreciation-capital-project/depreciation-capital-project.service.d.ts} +4 -4
- package/lib/services/{depreciation → http/depreciation}/depreciation.service.d.ts +5 -5
- package/lib/services/{document → http/document/document-folder}/document-folder.service.d.ts +6 -6
- package/lib/services/{client → http/firm/client-invite}/client-invite.service.d.ts +4 -4
- package/lib/services/{client → http/firm/client-movement}/client-movement.service.d.ts +7 -7
- package/lib/services/{employee → http/firm/employee}/employee.service.d.ts +4 -4
- package/lib/services/{employee → http/firm/employee-invite}/employee-invite.service.d.ts +4 -4
- package/lib/services/{firm → http/firm}/firm.service.d.ts +2 -2
- package/lib/services/{client → http/firm/portfolio-report}/client-portfolio-report.service.d.ts +1 -1
- package/lib/services/{income-source → http/income-source/income-source-forecast}/income-source-forecast.service.d.ts +5 -5
- package/lib/services/{income-source → http/income-source}/income-source.service.d.ts +8 -8
- package/lib/services/{income-source → http/income-source/salary-forecast}/salary-forecast.service.d.ts +6 -6
- package/lib/services/{income-source → http/income-source/sole-forecast}/sole-forecast.service.d.ts +5 -5
- package/lib/services/{borrowing-expense → http/loan/borrowing-expense}/borrowing-expense.service.d.ts +2 -2
- package/lib/services/{loan → http/loan}/loan.service.d.ts +6 -6
- package/lib/services/{property → http/property}/property-category/property-category.service.d.ts +4 -4
- package/lib/services/{property → http/property/property-category-movement}/property-category-movement.service.d.ts +4 -4
- package/lib/services/{property → http/property}/property-document/property-document.service.d.ts +5 -5
- package/lib/services/http/property/property-sale/property-sale.service.d.ts +10 -0
- package/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.d.ts +11 -0
- package/lib/services/{property → http/property}/property-share/property-share.service.d.ts +5 -5
- package/lib/services/{property → http/property}/property.service.d.ts +5 -5
- package/lib/services/{base-rest.service.d.ts → http/rest/rest.service.d.ts} +4 -4
- package/lib/services/http/service-notification/service-notification.service.d.ts +31 -0
- package/lib/services/{subscription → http/subscription}/subscription.service.d.ts +6 -6
- package/lib/services/{tax-review → http/tax-review/tax-review-history}/tax-review-history.service.d.ts +5 -5
- package/lib/services/{tax-review → http/tax-review}/tax-review.service.d.ts +6 -6
- package/lib/services/{tax-summary → http/tax-summary}/tax-summary.service.d.ts +2 -2
- package/lib/services/{transaction → http/transaction/transaction-allocation}/transaction-allocation.service.d.ts +6 -6
- package/lib/services/{transaction → http/transaction}/transaction.service.d.ts +7 -7
- package/lib/services/{user → http/user/occupation}/occupation.service.d.ts +1 -1
- package/lib/services/{user-event → http/user/user-event-setting}/user-event-setting.service.d.ts +5 -5
- package/lib/services/{user-event → http/user/user-event-type}/user-event-type.service.d.ts +5 -5
- package/lib/services/{user → http/user}/user.service.d.ts +3 -3
- package/lib/services/{work/work-tank.service.d.ts → http/vehicle/vehicle.service.d.ts} +9 -8
- package/lib/services/property/{equity-position-chart.service.d.ts → equity-position-chart/equity-position-chart.service.d.ts} +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +50 -50
- package/esm2015/lib/collections/tax-return-category-item.collection.js +0 -141
- package/esm2015/lib/models/tax-summary/tax-return-category-item-details.js +0 -9
- package/esm2015/lib/models/tax-summary/tax-return-category-item.js +0 -15
- package/esm2015/lib/services/address/address.service.js +0 -39
- package/esm2015/lib/services/bank/bank-account.service.js +0 -118
- package/esm2015/lib/services/bank/bank-connection.service.js +0 -52
- package/esm2015/lib/services/bank/bank-transaction.service.js +0 -89
- package/esm2015/lib/services/bank/bank.service.js +0 -24
- package/esm2015/lib/services/bank/basiq.service.js +0 -94
- package/esm2015/lib/services/base-rest.service.js +0 -190
- package/esm2015/lib/services/borrowing-expense/borrowing-expense.service.js +0 -73
- package/esm2015/lib/services/chart-accounts/chart-accounts-depreciations.service.js +0 -38
- package/esm2015/lib/services/chart-accounts/chart-accounts.service.js +0 -89
- package/esm2015/lib/services/chat/chat.service.js +0 -77
- package/esm2015/lib/services/chat/message-document.service.js +0 -118
- package/esm2015/lib/services/chat/message.service.js +0 -65
- package/esm2015/lib/services/client/client-movement.service.js +0 -98
- package/esm2015/lib/services/client/client-portfolio-report.service.js +0 -37
- package/esm2015/lib/services/depreciation/depreciation.service.js +0 -146
- package/esm2015/lib/services/document/document-folder.service.js +0 -84
- package/esm2015/lib/services/employee/employee-invite.service.js +0 -53
- package/esm2015/lib/services/employee/employee.service.js +0 -39
- package/esm2015/lib/services/firm/firm.service.js +0 -79
- package/esm2015/lib/services/income-source/income-source-forecast.service.js +0 -90
- package/esm2015/lib/services/income-source/income-source.service.js +0 -109
- package/esm2015/lib/services/income-source/salary-forecast.service.js +0 -90
- package/esm2015/lib/services/income-source/sole-forecast.service.js +0 -87
- package/esm2015/lib/services/loan/loan.service.js +0 -145
- package/esm2015/lib/services/notification/notification.service.js +0 -65
- package/esm2015/lib/services/property/equity-position-chart.service.js +0 -45
- package/esm2015/lib/services/property/property-category/property-category.service.js +0 -23
- package/esm2015/lib/services/property/property-category-movement.service.js +0 -47
- package/esm2015/lib/services/property/property-document/property-document.service.js +0 -70
- package/esm2015/lib/services/property/property-sale/property-sale.service.js +0 -20
- package/esm2015/lib/services/property/property-sale/tax-exemption/tax-exemption.service.js +0 -21
- package/esm2015/lib/services/property/property-share/property-share.service.js +0 -115
- package/esm2015/lib/services/property/property.service.js +0 -126
- package/esm2015/lib/services/subscription/subscription.service.js +0 -157
- package/esm2015/lib/services/tax-review/tax-review-history.service.js +0 -41
- package/esm2015/lib/services/tax-review/tax-review.service.js +0 -103
- package/esm2015/lib/services/tax-summary/tax-summary.service.js +0 -71
- package/esm2015/lib/services/transaction/transaction-allocation.service.js +0 -85
- package/esm2015/lib/services/transaction/transaction.service.js +0 -319
- package/esm2015/lib/services/user/occupation.service.js +0 -45
- package/esm2015/lib/services/user/user.service.js +0 -124
- package/esm2015/lib/services/user-event/user-event-setting.service.js +0 -59
- package/esm2015/lib/services/user-event/user-event-type.service.js +0 -29
- package/esm2015/lib/services/work/work-tank.service.js +0 -236
- package/lib/services/notification/notification.service.d.ts +0 -31
- package/lib/services/property/property-sale/property-sale.service.d.ts +0 -10
- package/lib/services/property/property-sale/tax-exemption/tax-exemption.service.d.ts +0 -11
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { Document } from '../../../../models/document/document';
|
|
3
|
+
import { replace } from '../../../../functions/array';
|
|
4
|
+
import { map } from 'rxjs/operators';
|
|
5
|
+
import { plainToClass } from 'class-transformer';
|
|
6
|
+
import { RestService } from '../../rest/rest.service';
|
|
7
|
+
import { DocumentFolder } from '../../../../models/document/document-folder';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/common/http";
|
|
10
|
+
import * as i2 from "../../../event/event-dispatcher.service";
|
|
11
|
+
/**
|
|
12
|
+
* Service to handle document-folders and depending documents logic
|
|
13
|
+
*/
|
|
14
|
+
export class DocumentFolderService extends RestService {
|
|
15
|
+
constructor(http, eventDispatcherService, environment) {
|
|
16
|
+
super(http, eventDispatcherService, environment);
|
|
17
|
+
this.http = http;
|
|
18
|
+
this.eventDispatcherService = eventDispatcherService;
|
|
19
|
+
this.environment = environment;
|
|
20
|
+
this.url = 'folders';
|
|
21
|
+
this.modelClass = DocumentFolder;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Add new document to the folder
|
|
25
|
+
* @param file to be uploaded to the folder
|
|
26
|
+
* @param folder for document
|
|
27
|
+
*/
|
|
28
|
+
addDocument(file, folder) {
|
|
29
|
+
// create formData object with provided file
|
|
30
|
+
const formDataDocument = new FormData();
|
|
31
|
+
formDataDocument.append('file', file);
|
|
32
|
+
return this.http.post(`${this.environment.apiV2}/folders/${folder.id}/documents`, formDataDocument).pipe(map((response) => {
|
|
33
|
+
const updatedFolder = Object.assign(plainToClass(DocumentFolder, {}), folder);
|
|
34
|
+
updatedFolder.documents.push(plainToClass(Document, response));
|
|
35
|
+
replace(this.cache, plainToClass(DocumentFolder, updatedFolder));
|
|
36
|
+
this.cacheSubject.next(this.cache);
|
|
37
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Edit folder document by moving it from one folder to another
|
|
41
|
+
* @param editedDocument
|
|
42
|
+
* @param selectedFolder to move the document to
|
|
43
|
+
* @param oldFolderId: id of old folder from which need to remove the document
|
|
44
|
+
*/
|
|
45
|
+
updateDocument(editedDocument, selectedFolder, oldFolderId) {
|
|
46
|
+
return this.http.put(`${this.environment.apiV2}/folders/${selectedFolder.id}/documents/${editedDocument.id}`, editedDocument).pipe(map((response) => {
|
|
47
|
+
const oldFolder = this.cache.find((folder) => folder.id === oldFolderId);
|
|
48
|
+
// Remove document from old folder
|
|
49
|
+
oldFolder.documents = oldFolder.documents.filter((deletedDocument) => deletedDocument.id !== response.id);
|
|
50
|
+
// update old folder and replace it in cache
|
|
51
|
+
response.folder = plainToClass(DocumentFolder, { id: selectedFolder.id, name: selectedFolder.name });
|
|
52
|
+
replace(this.cache, plainToClass(DocumentFolder, oldFolder));
|
|
53
|
+
// update new document folder and replace it in cache
|
|
54
|
+
selectedFolder.documents.push(plainToClass(Document, response));
|
|
55
|
+
replace(this.cache, plainToClass(DocumentFolder, selectedFolder));
|
|
56
|
+
this.cacheSubject.next(this.cache);
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Delete document from folder
|
|
61
|
+
* @param document to remove
|
|
62
|
+
* @param folder from which document should be removed
|
|
63
|
+
*/
|
|
64
|
+
deleteDocument(document, folder) {
|
|
65
|
+
return this.http.delete(`${this.environment.apiV2}/folders/${folder.id}/documents/${document.id}`).pipe(map(() => {
|
|
66
|
+
folder.documents = folder.documents
|
|
67
|
+
.filter((deletedDocument) => deletedDocument.id !== document.id);
|
|
68
|
+
replace(this.cache, plainToClass(DocumentFolder, folder));
|
|
69
|
+
this.cacheSubject.next(this.cache);
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
DocumentFolderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentFolderService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
74
|
+
DocumentFolderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentFolderService, providedIn: 'root' });
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentFolderService, decorators: [{
|
|
76
|
+
type: Injectable,
|
|
77
|
+
args: [{
|
|
78
|
+
providedIn: 'root'
|
|
79
|
+
}]
|
|
80
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EventDispatcherService }, { type: undefined, decorators: [{
|
|
81
|
+
type: Inject,
|
|
82
|
+
args: ['environment']
|
|
83
|
+
}] }]; } });
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZm9sZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9kb2N1bWVudC9kb2N1bWVudC1mb2xkZXIvZG9jdW1lbnQtZm9sZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7Ozs7QUFHN0U7O0dBRUc7QUFJSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsV0FBK0M7SUFJeEYsWUFDWSxJQUFnQixFQUNoQixzQkFBOEMsRUFDdkIsV0FBZ0I7UUFFakQsS0FBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUp2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDdkIsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFObkQsUUFBRyxHQUFXLFNBQVMsQ0FBQztRQUN4QixlQUFVLEdBQTBCLGNBQWMsQ0FBQztJQVFuRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxJQUFVLEVBQUUsTUFBc0I7UUFDNUMsNENBQTRDO1FBQzVDLE1BQU0sZ0JBQWdCLEdBQWEsSUFB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LEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUUxRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7O21IQTFFVSxxQkFBcUIsa0ZBT3RCLGFBQWE7dUhBUFoscUJBQXFCLGNBRnBCLE1BQU07NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBUUksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb2N1bWVudEZvbGRlciBhcyBEb2N1bWVudEZvbGRlckJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMvZG9jdW1lbnQtZm9sZGVyJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBEb2N1bWVudCBhcyBEb2N1bWVudEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMvZG9jdW1lbnQnO1xuaW1wb3J0IHsgRG9jdW1lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZG9jdW1lbnQvZG9jdW1lbnQnO1xuaW1wb3J0IHsgcmVwbGFjZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Z1bmN0aW9ucy9hcnJheSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3Jlc3QvcmVzdC5zZXJ2aWNlJztcbmltcG9ydCB7IERvY3VtZW50Rm9sZGVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2RvY3VtZW50L2RvY3VtZW50LWZvbGRlcic7XG5pbXBvcnQgeyBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vZXZlbnQvZXZlbnQtZGlzcGF0Y2hlci5zZXJ2aWNlJztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIGhhbmRsZSBkb2N1bWVudC1mb2xkZXJzIGFuZCBkZXBlbmRpbmcgZG9jdW1lbnRzIGxvZ2ljXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERvY3VtZW50Rm9sZGVyU2VydmljZSBleHRlbmRzIFJlc3RTZXJ2aWNlPERvY3VtZW50Rm9sZGVyQmFzZSwgRG9jdW1lbnRGb2xkZXI+IHtcbiAgdXJsOiBzdHJpbmcgPSAnZm9sZGVycyc7XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBEb2N1bWVudEZvbGRlciA9IERvY3VtZW50Rm9sZGVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByb3RlY3RlZCBldmVudERpc3BhdGNoZXJTZXJ2aWNlOiBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJvdGVjdGVkIGVudmlyb25tZW50OiBhbnlcbiAgKSB7XG4gICAgc3VwZXIoaHR0cCwgZXZlbnREaXNwYXRjaGVyU2VydmljZSwgZW52aXJvbm1lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBuZXcgZG9jdW1lbnQgdG8gdGhlIGZvbGRlclxuICAgKiBAcGFyYW0gZmlsZSB0byBiZSB1cGxvYWRlZCB0byB0aGUgZm9sZGVyXG4gICAqIEBwYXJhbSBmb2xkZXIgZm9yIGRvY3VtZW50XG4gICAqL1xuICBhZGREb2N1bWVudChmaWxlOiBGaWxlLCBmb2xkZXI6IERvY3VtZW50Rm9sZGVyKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgLy8gY3JlYXRlIGZvcm1EYXRhIG9iamVjdCB3aXRoIHByb3ZpZGVkIGZpbGVcbiAgICBjb25zdCBmb3JtRGF0YURvY3VtZW50OiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvcm1EYXRhRG9jdW1lbnQuYXBwZW5kKCdmaWxlJywgZmlsZSk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vZm9sZGVycy8ke2ZvbGRlci5pZH0vZG9jdW1lbnRzYCwgZm9ybURhdGFEb2N1bWVudCkucGlwZShcbiAgICAgIG1hcCgocmVzcG9uc2U6IERvY3VtZW50QmFzZSkgPT4ge1xuICAgICAgICBjb25zdCB1cGRhdGVkRm9sZGVyOiBEb2N1bWVudEZvbGRlciA9IE9iamVjdC5hc3NpZ24ocGxhaW5Ub0NsYXNzKERvY3VtZW50Rm9sZGVyLCB7fSksIGZvbGRlcik7XG4gICAgICAgIHVwZGF0ZWRGb2xkZXIuZG9jdW1lbnRzLnB1c2gocGxhaW5Ub0NsYXNzKERvY3VtZW50LCByZXNwb25zZSkpO1xuXG4gICAgICAgIHJlcGxhY2UodGhpcy5jYWNoZSwgcGxhaW5Ub0NsYXNzKERvY3VtZW50Rm9sZGVyLCB1cGRhdGVkRm9sZGVyKSk7XG4gICAgICAgIHRoaXMuY2FjaGVTdWJqZWN0Lm5leHQodGhpcy5jYWNoZSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRWRpdCBmb2xkZXIgZG9jdW1lbnQgYnkgbW92aW5nIGl0IGZyb20gb25lIGZvbGRlciB0byBhbm90aGVyXG4gICAqIEBwYXJhbSBlZGl0ZWREb2N1bWVudFxuICAgKiBAcGFyYW0gc2VsZWN0ZWRGb2xkZXIgdG8gbW92ZSB0aGUgZG9jdW1lbnQgdG9cbiAgICogQHBhcmFtIG9sZEZvbGRlcklkOiBpZCBvZiBvbGQgZm9sZGVyIGZyb20gd2hpY2ggbmVlZCB0byByZW1vdmUgdGhlIGRvY3VtZW50XG4gICAqL1xuICB1cGRhdGVEb2N1bWVudChlZGl0ZWREb2N1bWVudDogRG9jdW1lbnQsIHNlbGVjdGVkRm9sZGVyOiBEb2N1bWVudEZvbGRlciwgb2xkRm9sZGVySWQ6IG51bWJlcik6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2ZvbGRlcnMvJHtzZWxlY3RlZEZvbGRlci5pZH0vZG9jdW1lbnRzLyR7ZWRpdGVkRG9jdW1lbnQuaWR9YCwgZWRpdGVkRG9jdW1lbnQpLnBpcGUoXG4gICAgICBtYXAoKHJlc3BvbnNlOiBEb2N1bWVudEJhc2UpID0+IHtcbiAgICAgICAgY29uc3Qgb2xkRm9sZGVyOiBEb2N1bWVudEZvbGRlciA9IHRoaXMuY2FjaGUuZmluZCgoZm9sZGVyOiBEb2N1bWVudEZvbGRlcikgPT4gZm9sZGVyLmlkID09PSBvbGRGb2xkZXJJZCk7XG4gICAgICAgIC8vIFJlbW92ZSBkb2N1bWVudCBmcm9tIG9sZCBmb2xkZXJcbiAgICAgICAgb2xkRm9sZGVyLmRvY3VtZW50cyA9IG9sZEZvbGRlci5kb2N1bWVudHMuZmlsdGVyKChkZWxldGVkRG9jdW1lbnQ6IERvY3VtZW50KSA9PiBkZWxldGVkRG9jdW1lbnQuaWQgIT09IHJlc3BvbnNlLmlkKTtcblxuICAgICAgICAvLyB1cGRhdGUgb2xkIGZvbGRlciBhbmQgcmVwbGFjZSBpdCBpbiBjYWNoZVxuICAgICAgICByZXNwb25zZS5mb2xkZXIgPSBwbGFpblRvQ2xhc3MoRG9jdW1lbnRGb2xkZXIsIHtpZDogc2VsZWN0ZWRGb2xkZXIuaWQsIG5hbWU6IHNlbGVjdGVkRm9sZGVyLm5hbWV9KTtcbiAgICAgICAgcmVwbGFjZSh0aGlzLmNhY2hlLCBwbGFpblRvQ2xhc3MoRG9jdW1lbnRGb2xkZXIsIG9sZEZvbGRlcikpO1xuXG4gICAgICAgIC8vIHVwZGF0ZSBuZXcgZG9jdW1lbnQgZm9sZGVyIGFuZCByZXBsYWNlIGl0IGluIGNhY2hlXG4gICAgICAgIHNlbGVjdGVkRm9sZGVyLmRvY3VtZW50cy5wdXNoKHBsYWluVG9DbGFzcyhEb2N1bWVudCwgcmVzcG9uc2UpKTtcbiAgICAgICAgcmVwbGFjZSh0aGlzLmNhY2hlLCBwbGFpblRvQ2xhc3MoRG9jdW1lbnRGb2xkZXIsIHNlbGVjdGVkRm9sZGVyKSk7XG5cbiAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGUgZG9jdW1lbnQgZnJvbSBmb2xkZXJcbiAgICogQHBhcmFtIGRvY3VtZW50IHRvIHJlbW92ZVxuICAgKiBAcGFyYW0gZm9sZGVyIGZyb20gd2hpY2ggZG9jdW1lbnQgc2hvdWxkIGJlIHJlbW92ZWRcbiAgICovXG4gIGRlbGV0ZURvY3VtZW50KGRvY3VtZW50OiBEb2N1bWVudCwgZm9sZGVyOiBEb2N1bWVudEZvbGRlcik6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2ZvbGRlcnMvJHtmb2xkZXIuaWR9L2RvY3VtZW50cy8ke2RvY3VtZW50LmlkfWApLnBpcGUoXG4gICAgICBtYXAoKCkgPT4ge1xuICAgICAgICBmb2xkZXIuZG9jdW1lbnRzID0gZm9sZGVyLmRvY3VtZW50c1xuICAgICAgICAgIC5maWx0ZXIoKGRlbGV0ZWREb2N1bWVudDogRG9jdW1lbnQpID0+IGRlbGV0ZWREb2N1bWVudC5pZCAhPT0gZG9jdW1lbnQuaWQpO1xuICAgICAgICByZXBsYWNlKHRoaXMuY2FjaGUsIHBsYWluVG9DbGFzcyhEb2N1bWVudEZvbGRlciwgZm9sZGVyKSk7XG5cbiAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { map } from 'rxjs/operators';
|
|
3
|
-
import { replace } from '
|
|
3
|
+
import { replace } from '../../../../functions/array';
|
|
4
4
|
import _ from 'lodash';
|
|
5
5
|
import { plainToClass } from 'class-transformer';
|
|
6
|
-
import {
|
|
7
|
-
import { ClientInvite } from '
|
|
8
|
-
import { AppEventTypeEnum } from '
|
|
9
|
-
import { AppEvent } from '
|
|
6
|
+
import { RestService } from '../../rest/rest.service';
|
|
7
|
+
import { ClientInvite } from '../../../../models/client/client-invite';
|
|
8
|
+
import { AppEventTypeEnum } from '../../../../models/event/app-event-type.enum';
|
|
9
|
+
import { AppEvent } from '../../../../models/event/app-event';
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
|
-
export class ClientInviteService extends
|
|
11
|
+
export class ClientInviteService extends RestService {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
14
|
this.url = 'clients/invites';
|
|
@@ -99,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
99
99
|
providedIn: 'root'
|
|
100
100
|
}]
|
|
101
101
|
}] });
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWludml0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvZmlybS9jbGllbnQtaW52aXRlL2NsaWVudC1pbnZpdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEQsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFLOUQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFdBQTJDO0lBSHBGOztRQUlFLFFBQUcsR0FBVyxpQkFBaUIsQ0FBQztRQUNoQyxlQUFVLEdBQXdCLFlBQVksQ0FBQztLQTZGaEQ7SUEzRkM7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLElBQVU7UUFDZixNQUFNLFFBQVEsR0FBYSxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQzFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTlCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxT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LENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssZUFBZSxFQUFFLE1BQU0sQ0FBQzthQUNwRSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsVUFBNEIsRUFBZ0IsRUFBRTtZQUNqRCxNQUFNLFNBQVMsR0FBaUIsWUFBWSxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBQztZQUN2RSxzQkFBc0I7WUFDdEIsNEJBQTRCO1lBQzVCLE1BQU0sU0FBUyxHQUFtQixDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxRCxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs7aUhBOUZVLG1CQUFtQjtxSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENsaWVudEludml0ZSBhcyBDbGllbnRJbnZpdGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGIvTW9kZWxzL2NsaWVudC1pbnZpdGUnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgcmVwbGFjZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Z1bmN0aW9ucy9hcnJheSc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9yZXN0L3Jlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBDbGllbnRJbnZpdGUgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvY2xpZW50L2NsaWVudC1pbnZpdGUnO1xuaW1wb3J0IHsgQXBwRXZlbnRUeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQtdHlwZS5lbnVtJztcbmltcG9ydCB7IEFwcEV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2V2ZW50L2FwcC1ldmVudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENsaWVudEludml0ZVNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxDbGllbnRJbnZpdGVCYXNlLCBDbGllbnRJbnZpdGU+IHtcbiAgdXJsOiBzdHJpbmcgPSAnY2xpZW50cy9pbnZpdGVzJztcbiAgbW9kZWxDbGFzczogdHlwZW9mIENsaWVudEludml0ZSA9IENsaWVudEludml0ZTtcblxuICAvKipcbiAgICogSW1wb3J0IGVtcGxveWVlcyBmb3IgZmlybSBmcm9tIENTViBmaWxlXG4gICAqIEBwYXJhbSBmaWxlXG4gICAqL1xuICBpbXBvcnQoZmlsZTogRmlsZSk6IE9ic2VydmFibGU8Q2xpZW50SW52aXRlW10+IHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS9pbXBvcnRgLCBmb3JtRGF0YSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGNsaWVudEludml0ZTogQ2xpZW50SW52aXRlW10pID0+IHtcbiAgICAgICAgICByZXR1cm4gY2xpZW50SW52aXRlO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY2NlcHQgY2xpZW50IGludml0YXRpb24gZnJvbSBmaXJtIHRvIHVzZXJcbiAgICogQHBhcmFtIGludml0ZVxuICAgKi9cbiAgYWNjZXB0KGludml0ZTogQ2xpZW50SW52aXRlKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH0vJHtpbnZpdGUuaWR9L2FjY2VwdGAsIG51bGwpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCgpOiB2b2lkID0+IHtcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uQ0xJRU5UX0lOVklURV9BQ0NFUFRFRCwgaW52aXRlKSk7XG4gICAgICAgICAgLy8gc2V0IGNhY2hlIHdpdGhvdXQgYWNjZXB0ZWQgaW52aXRlXG4gICAgICAgICAgdGhpcy5jYWNoZSA9IHRoaXMuY2FjaGUuZmlsdGVyKChjbGllbnRJbnZpdGU6IENsaWVudEludml0ZSkgPT4gaW52aXRlLmlkICE9PSBjbGllbnRJbnZpdGUuaWQpO1xuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUmVqZWN0IGNsaWVudCBpbnZpdGF0aW9uIGZyb20gZmlybSB0byB1c2VyXG4gICAqIEBwYXJhbSBpbnZpdGVcbiAgICovXG4gIHJlamVjdChpbnZpdGU6IENsaWVudEludml0ZSk6IE9ic2VydmFibGU8Q2xpZW50SW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9LyR7aW52aXRlLmlkfS9yZWplY3RgLCBudWxsKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVqZWN0ZWRJbnZpdGU6IENsaWVudEludml0ZUJhc2UpOiBDbGllbnRJbnZpdGUgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRJbnZpdGU6IENsaWVudEludml0ZSA9IHBsYWluVG9DbGFzcyhDbGllbnRJbnZpdGUsIHJlamVjdGVkSW52aXRlKTtcbiAgICAgICAgICAvLyBhdm9pZCBjYWNoZSBjaGFuZ2VzXG4gICAgICAgICAgLy8gQFRPRE8gbWFrZSBjYWNoZSByZWFkb25seVxuICAgICAgICAgIGNvbnN0IHRlbXBDYWNoZTogQ2xpZW50SW52aXRlW10gPSBfLmNsb25lRGVlcCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICByZXBsYWNlKHRlbXBDYWNoZSwgcGxhaW5Ub0NsYXNzKENsaWVudEludml0ZSwgdXBkYXRlZEludml0ZSkpO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0ZW1wQ2FjaGU7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkSW52aXRlO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNlbmQgaW52aXRhdGlvbiBmcm9tIGZpcm0gdG8gY2xpZW50XG4gICAqIEBwYXJhbSBpbnZpdGVcbiAgICovXG4gIHJlc2VuZChpbnZpdGU6IENsaWVudEludml0ZSk6IE9ic2VydmFibGU8Q2xpZW50SW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9LyR7aW52aXRlLmlkfS9yZXNlbmRgLCBudWxsKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVqZWN0ZWRJbnZpdGU6IENsaWVudEludml0ZUJhc2UpOiBDbGllbnRJbnZpdGUgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRJbnZpdGU6IENsaWVudEludml0ZSA9IHBsYWluVG9DbGFzcyhDbGllbnRJbnZpdGUsIHJlamVjdGVkSW52aXRlKTtcbiAgICAgICAgICAvLyBhdm9pZCBjYWNoZSBjaGFuZ2VzXG4gICAgICAgICAgLy8gQFRPRE8gbWFrZSBjYWNoZSByZWFkb25seVxuICAgICAgICAgIGNvbnN0IHRlbXBDYWNoZTogQ2xpZW50SW52aXRlW10gPSBfLmNsb25lRGVlcCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICByZXBsYWNlKHRlbXBDYWNoZSwgcGxhaW5Ub0NsYXNzKENsaWVudEludml0ZSwgdXBkYXRlZEludml0ZSkpO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0ZW1wQ2FjaGU7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkSW52aXRlO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kIGludml0YXRpb24gZnJvbSBjbGllbnQgdG8gZmlybVxuICAgKiBAcGFyYW0gaW52aXRlXG4gICAqL1xuICBpbnZpdGVGaXJtQnlVc2VyKGludml0ZTogQ2xpZW50SW52aXRlKTogT2JzZXJ2YWJsZTxDbGllbnRJbnZpdGU+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vZmlybXMvaW52aXRlYCwgaW52aXRlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoaW52aXRlQmFzZTogQ2xpZW50SW52aXRlQmFzZSk6IENsaWVudEludml0ZSA9PiB7XG4gICAgICAgICAgY29uc3QgbmV3SW52aXRlOiBDbGllbnRJbnZpdGUgPSBwbGFpblRvQ2xhc3MoQ2xpZW50SW52aXRlLCBpbnZpdGVCYXNlKTtcbiAgICAgICAgICAvLyBhdm9pZCBjYWNoZSBjaGFuZ2VzXG4gICAgICAgICAgLy8gQFRPRE8gbWFrZSBjYWNoZSByZWFkb25seVxuICAgICAgICAgIGNvbnN0IHRlbXBDYWNoZTogQ2xpZW50SW52aXRlW10gPSBfLmNsb25lRGVlcCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICB0ZW1wQ2FjaGUucHVzaChuZXdJbnZpdGUpO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0ZW1wQ2FjaGU7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiBuZXdJbnZpdGU7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { forkJoin } from 'rxjs';
|
|
3
|
+
import { map } from 'rxjs/operators';
|
|
4
|
+
import { ClientMovementCollection } from '../../../../collections/client-movement.collection';
|
|
5
|
+
import { plainToClass } from 'class-transformer';
|
|
6
|
+
import { RestService } from '../../rest/rest.service';
|
|
7
|
+
import { ClientMovement } from '../../../../models/client/client-movement';
|
|
8
|
+
import { AppEvent } from '../../../../models/event/app-event';
|
|
9
|
+
import { AppEventTypeEnum } from '../../../../models/event/app-event-type.enum';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/common/http";
|
|
12
|
+
import * as i2 from "../../../event/event-dispatcher.service";
|
|
13
|
+
export class ClientMovementService extends RestService {
|
|
14
|
+
constructor(http, eventDispatcherService, environment) {
|
|
15
|
+
super(http, eventDispatcherService, environment);
|
|
16
|
+
this.http = http;
|
|
17
|
+
this.eventDispatcherService = eventDispatcherService;
|
|
18
|
+
this.environment = environment;
|
|
19
|
+
this.modelClass = ClientMovement;
|
|
20
|
+
this.url = 'client-movements';
|
|
21
|
+
this.isHydra = true;
|
|
22
|
+
this.listenEvents();
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @TODO BaseRestService should return collection
|
|
26
|
+
*/
|
|
27
|
+
getAll() {
|
|
28
|
+
return this.get().pipe(map((clientMovements) => {
|
|
29
|
+
return new ClientMovementCollection(clientMovements);
|
|
30
|
+
}));
|
|
31
|
+
}
|
|
32
|
+
getActive() {
|
|
33
|
+
return this.getAll().pipe(map((clientMovements) => {
|
|
34
|
+
return clientMovements.active;
|
|
35
|
+
}));
|
|
36
|
+
}
|
|
37
|
+
getActiveByFirmType(type) {
|
|
38
|
+
return this.getActive().pipe(map((clientMovements) => {
|
|
39
|
+
return clientMovements.getByFirmType(type);
|
|
40
|
+
}));
|
|
41
|
+
}
|
|
42
|
+
update(movement) {
|
|
43
|
+
// extend base 'add' method and pass into it movement without id
|
|
44
|
+
return super.add(plainToClass(ClientMovement, Object.assign({}, movement, { id: null }))).pipe(map((updatedMovement) => {
|
|
45
|
+
// remove provided movement from cache
|
|
46
|
+
this.cache = this.cache.filter((item) => item.id !== movement.id);
|
|
47
|
+
this.updateCache();
|
|
48
|
+
this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.CLIENT_TRANSFER_TO_OTHER_EMPLOYEE, [updatedMovement.client]));
|
|
49
|
+
return updatedMovement;
|
|
50
|
+
}));
|
|
51
|
+
}
|
|
52
|
+
updateBatch(clientMovements) {
|
|
53
|
+
const batch = clientMovements.map((clientMovement) => this.update(clientMovement));
|
|
54
|
+
return forkJoin(batch);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Reject current firm
|
|
58
|
+
*/
|
|
59
|
+
close(clientMovement) {
|
|
60
|
+
clientMovement.dateTo = new Date();
|
|
61
|
+
return this.http.put(`${this.environment.apiV2}/client-movements/${clientMovement.id}/close`, clientMovement)
|
|
62
|
+
.pipe(map(() => {
|
|
63
|
+
this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.CLIENT_MOVEMENT_CLOSED, null));
|
|
64
|
+
this.cache = this.cache.filter((movement) => movement.id !== clientMovement.id);
|
|
65
|
+
this.updateCache();
|
|
66
|
+
}));
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Listen Event Dispatcher service
|
|
70
|
+
*/
|
|
71
|
+
listenEvents() {
|
|
72
|
+
this.listenClientInvites();
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Listen to EventDispatcherService event related to clients invitations
|
|
76
|
+
*/
|
|
77
|
+
listenClientInvites() {
|
|
78
|
+
this.eventDispatcherService.on(AppEventTypeEnum.CLIENT_INVITE_ACCEPTED)
|
|
79
|
+
.subscribe(() => {
|
|
80
|
+
this.fetch().subscribe((clientMovements) => {
|
|
81
|
+
this.cache = clientMovements;
|
|
82
|
+
this.updateCache();
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
ClientMovementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientMovementService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
88
|
+
ClientMovementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientMovementService, providedIn: 'root' });
|
|
89
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientMovementService, decorators: [{
|
|
90
|
+
type: Injectable,
|
|
91
|
+
args: [{
|
|
92
|
+
providedIn: 'root'
|
|
93
|
+
}]
|
|
94
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EventDispatcherService }, { type: undefined, decorators: [{
|
|
95
|
+
type: Inject,
|
|
96
|
+
args: ['environment']
|
|
97
|
+
}] }]; } });
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LW1vdmVtZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9maXJtL2NsaWVudC1tb3ZlbWVudC9jbGllbnQtbW92ZW1lbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsUUFBUSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUc5RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOENBQThDLENBQUM7Ozs7QUFNaEYsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFdBQStDO0lBS3hGLFlBQ1ksSUFBZ0IsRUFDaEIsc0JBQThDLEVBQ3ZCLFdBQWdCO1FBRWpELEtBQUssQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFKdkMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQ3ZCLGdCQUFXLEdBQVgsV0FBVyxDQUFLO1FBUG5ELGVBQVUsR0FBMEIsY0FBYyxDQUFDO1FBQ25ELFFBQUcsR0FBVyxrQkFBa0IsQ0FBQztRQUNqQyxZQUFPLEdBQVksSUFB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Q0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVk7UUFDVixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQzthQUNwRSxTQUFTLENBQUMsR0FBUyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxlQUFpQyxFQUFFLEVBQUU7Z0JBQzNELElBQUksQ0FBQyxLQUFLLEdBQUcsZUFBZSxDQUFDO2dCQUM3QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O21IQTlGVSxxQkFBcUIsa0ZBUXRCLGFBQWE7dUhBUloscUJBQXFCLGNBRnBCLE1BQU07NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBU0ksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGllbnRNb3ZlbWVudCBhcyBDbGllbnRNb3ZlbWVudEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMvY2xpZW50LW1vdmVtZW50JztcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb2xsZWN0aW9ucy9jbGllbnQtbW92ZW1lbnQuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBGaXJtVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9FbnVtcy9maXJtLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9yZXN0L3Jlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBDbGllbnRNb3ZlbWVudCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9jbGllbnQvY2xpZW50LW1vdmVtZW50JztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9ldmVudC9ldmVudC1kaXNwYXRjaGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwRXZlbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50JztcbmltcG9ydCB7IEFwcEV2ZW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50LXR5cGUuZW51bSc7XG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2xpZW50TW92ZW1lbnRTZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8Q2xpZW50TW92ZW1lbnRCYXNlLCBDbGllbnRNb3ZlbWVudD4ge1xuICBtb2RlbENsYXNzOiB0eXBlb2YgQ2xpZW50TW92ZW1lbnQgPSBDbGllbnRNb3ZlbWVudDtcbiAgdXJsOiBzdHJpbmcgPSAnY2xpZW50LW1vdmVtZW50cyc7XG4gIGlzSHlkcmE6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByb3RlY3RlZCBldmVudERpc3BhdGNoZXJTZXJ2aWNlOiBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJvdGVjdGVkIGVudmlyb25tZW50OiBhbnlcbiAgKSB7XG4gICAgc3VwZXIoaHR0cCwgZXZlbnREaXNwYXRjaGVyU2VydmljZSwgZW52aXJvbm1lbnQpO1xuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gQmFzZVJlc3RTZXJ2aWNlIHNob3VsZCByZXR1cm4gY29sbGVjdGlvblxuICAgKi9cbiAgZ2V0QWxsKCk6IE9ic2VydmFibGU8Q2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCkucGlwZShcbiAgICAgIG1hcCgoY2xpZW50TW92ZW1lbnRzOiBDbGllbnRNb3ZlbWVudFtdKSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgQ2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uKGNsaWVudE1vdmVtZW50cyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnZXRBY3RpdmUoKTogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRBbGwoKS5waXBlKFxuICAgICAgbWFwKChjbGllbnRNb3ZlbWVudHM6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbik6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbiA9PiB7XG4gICAgICAgIHJldHVybiBjbGllbnRNb3ZlbWVudHMuYWN0aXZlO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QWN0aXZlQnlGaXJtVHlwZSh0eXBlOiBGaXJtVHlwZUVudW0pOiBPYnNlcnZhYmxlPENsaWVudE1vdmVtZW50Q29sbGVjdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmdldEFjdGl2ZSgpLnBpcGUoXG4gICAgICBtYXAoKGNsaWVudE1vdmVtZW50czogQ2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uKTogQ2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uID0+IHtcbiAgICAgICAgcmV0dXJuIGNsaWVudE1vdmVtZW50cy5nZXRCeUZpcm1UeXBlKHR5cGUpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgdXBkYXRlKG1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCk6IE9ic2VydmFibGU8Q2xpZW50TW92ZW1lbnQ+IHtcbiAgICAvLyBleHRlbmQgYmFzZSAnYWRkJyBtZXRob2QgYW5kIHBhc3MgaW50byBpdCBtb3ZlbWVudCB3aXRob3V0IGlkXG4gICAgcmV0dXJuIHN1cGVyLmFkZChwbGFpblRvQ2xhc3MoQ2xpZW50TW92ZW1lbnQsIE9iamVjdC5hc3NpZ24oe30sIG1vdmVtZW50LCB7aWQ6IG51bGx9KSkpLnBpcGUoXG4gICAgICBtYXAoKHVwZGF0ZWRNb3ZlbWVudDogQ2xpZW50TW92ZW1lbnQpID0+IHtcbiAgICAgICAgLy8gcmVtb3ZlIHByb3ZpZGVkIG1vdmVtZW50IGZyb20gY2FjaGVcbiAgICAgICAgdGhpcy5jYWNoZSA9IHRoaXMuY2FjaGUuZmlsdGVyKChpdGVtOiBDbGllbnRNb3ZlbWVudCkgPT4gaXRlbS5pZCAhPT0gbW92ZW1lbnQuaWQpO1xuICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG5cbiAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkNMSUVOVF9UUkFOU0ZFUl9UT19PVEhFUl9FTVBMT1lFRSwgW3VwZGF0ZWRNb3ZlbWVudC5jbGllbnRdKSk7XG5cbiAgICAgICAgcmV0dXJuIHVwZGF0ZWRNb3ZlbWVudDtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHVwZGF0ZUJhdGNoKGNsaWVudE1vdmVtZW50czogQ2xpZW50TW92ZW1lbnRbXSk6IE9ic2VydmFibGU8Q2xpZW50TW92ZW1lbnRbXT4ge1xuICAgIGNvbnN0IGJhdGNoOiBPYnNlcnZhYmxlPENsaWVudE1vdmVtZW50PltdID0gY2xpZW50TW92ZW1lbnRzLm1hcCgoY2xpZW50TW92ZW1lbnQ6IENsaWVudE1vdmVtZW50KSA9PiB0aGlzLnVwZGF0ZShjbGllbnRNb3ZlbWVudCkpO1xuICAgIHJldHVybiBmb3JrSm9pbihiYXRjaCk7XG4gIH1cblxuICAvKipcbiAgICogUmVqZWN0IGN1cnJlbnQgZmlybVxuICAgKi9cbiAgY2xvc2UoY2xpZW50TW92ZW1lbnQ6IENsaWVudE1vdmVtZW50KTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgY2xpZW50TW92ZW1lbnQuZGF0ZVRvID0gbmV3IERhdGUoKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS9jbGllbnQtbW92ZW1lbnRzLyR7Y2xpZW50TW92ZW1lbnQuaWR9L2Nsb3NlYCwgY2xpZW50TW92ZW1lbnQpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCgpOiB2b2lkID0+IHtcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uQ0xJRU5UX01PVkVNRU5UX0NMT1NFRCwgbnVsbCkpO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0aGlzLmNhY2hlLmZpbHRlcigobW92ZW1lbnQ6IENsaWVudE1vdmVtZW50KTogYm9vbGVhbiA9PiBtb3ZlbWVudC5pZCAhPT0gY2xpZW50TW92ZW1lbnQuaWQpO1xuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIEV2ZW50IERpc3BhdGNoZXIgc2VydmljZVxuICAgKi9cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuQ2xpZW50SW52aXRlcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIGV2ZW50IHJlbGF0ZWQgdG8gY2xpZW50cyBpbnZpdGF0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5DbGllbnRJbnZpdGVzKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLkNMSUVOVF9JTlZJVEVfQUNDRVBURUQpXG4gICAgICAuc3Vic2NyaWJlKCgpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy5mZXRjaCgpLnN1YnNjcmliZSgoY2xpZW50TW92ZW1lbnRzOiBDbGllbnRNb3ZlbWVudFtdKSA9PiB7XG4gICAgICAgICAgdGhpcy5jYWNoZSA9IGNsaWVudE1vdmVtZW50cztcbiAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { RestService } from '../../rest/rest.service';
|
|
3
|
+
import { map } from 'rxjs/operators';
|
|
4
|
+
import { replace } from '../../../../functions/array';
|
|
5
|
+
import _ from 'lodash';
|
|
6
|
+
import { plainToClass } from 'class-transformer';
|
|
7
|
+
import { User } from '../../../../models/user/user';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export class EmployeeService extends RestService {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.url = 'employees';
|
|
13
|
+
this.modelClass = User;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Grant/Remove Manager role to employee
|
|
17
|
+
* @param employee
|
|
18
|
+
*/
|
|
19
|
+
toggleManagerRole(employee) {
|
|
20
|
+
return this.http.put(`${this.environment.apiV2}/${this.url}/${employee.id}`, {})
|
|
21
|
+
.pipe(map((updatedEmployeeBase) => {
|
|
22
|
+
const tempCache = this.cache;
|
|
23
|
+
const updatedEmployee = plainToClass(User, updatedEmployeeBase);
|
|
24
|
+
replace(tempCache, updatedEmployee);
|
|
25
|
+
this.cache = _.cloneDeep(tempCache);
|
|
26
|
+
this.updateCache();
|
|
27
|
+
return updatedEmployee;
|
|
28
|
+
}));
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
EmployeeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
32
|
+
EmployeeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeService, providedIn: 'root' });
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeService, decorators: [{
|
|
34
|
+
type: Injectable,
|
|
35
|
+
args: [{
|
|
36
|
+
providedIn: 'root'
|
|
37
|
+
}]
|
|
38
|
+
}] });
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9odHRwL2Zpcm0vZW1wbG95ZWUvZW1wbG95ZWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RELE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUtwRCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxXQUEyQjtJQUhoRTs7UUFJRSxRQUFHLEdBQVcsV0FBVyxDQUFDO1FBQzFCLGVBQVUsR0FBZ0IsSUFBSSxDQUFDO0tBbUJoQztJQWpCQzs7O09BR0c7SUFDSCxpQkFBaUIsQ0FBQyxRQUFjO1FBQzlCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLFFBQVEsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7YUFDN0UsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLG1CQUE2QixFQUFRLEVBQUU7WUFDMUMsTUFBTSxTQUFTLEdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNyQyxNQUFNLGVBQWUsR0FBUyxZQUFZLENBQUMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLENBQUM7WUFDdEUsT0FBTyxDQUFDLFNBQVMsRUFBRSxlQUFlLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25CLE9BQU8sZUFBZSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDOzs2R0FwQlUsZUFBZTtpSEFBZixlQUFlLGNBRmQsTUFBTTs0RkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcmVzdC9yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVXNlciBhcyBVc2VyQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL01vZGVscy91c2VyJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHJlcGxhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9mdW5jdGlvbnMvYXJyYXknO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvdXNlci91c2VyJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRW1wbG95ZWVTZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8VXNlckJhc2UsIFVzZXI+e1xuICB1cmw6IHN0cmluZyA9ICdlbXBsb3llZXMnO1xuICBtb2RlbENsYXNzOiB0eXBlb2YgVXNlciA9IFVzZXI7XG5cbiAgLyoqXG4gICAqIEdyYW50L1JlbW92ZSBNYW5hZ2VyIHJvbGUgdG8gZW1wbG95ZWVcbiAgICogQHBhcmFtIGVtcGxveWVlXG4gICAqL1xuICB0b2dnbGVNYW5hZ2VyUm9sZShlbXBsb3llZTogVXNlcik6IE9ic2VydmFibGU8VXNlcj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9LyR7ZW1wbG95ZWUuaWR9YCwge30pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh1cGRhdGVkRW1wbG95ZWVCYXNlOiBVc2VyQmFzZSk6IFVzZXIgPT4ge1xuICAgICAgICAgIGNvbnN0IHRlbXBDYWNoZTogVXNlcltdID0gdGhpcy5jYWNoZTtcbiAgICAgICAgICBjb25zdCB1cGRhdGVkRW1wbG95ZWU6IFVzZXIgPSBwbGFpblRvQ2xhc3MoVXNlciwgdXBkYXRlZEVtcGxveWVlQmFzZSk7XG4gICAgICAgICAgcmVwbGFjZSh0ZW1wQ2FjaGUsIHVwZGF0ZWRFbXBsb3llZSk7XG4gICAgICAgICAgdGhpcy5jYWNoZSA9IF8uY2xvbmVEZWVwKHRlbXBDYWNoZSk7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkRW1wbG95ZWU7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { map } from 'rxjs/operators';
|
|
3
|
+
import { replace } from '../../../../functions/array';
|
|
4
|
+
import _ from 'lodash';
|
|
5
|
+
import { plainToClass } from 'class-transformer';
|
|
6
|
+
import { EmployeeInvite } from '../../../../models/employee/employee-invite';
|
|
7
|
+
import { RestService } from '../../rest/rest.service';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export class EmployeeInviteService extends RestService {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.url = 'employees/invites';
|
|
13
|
+
this.modelClass = EmployeeInvite;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Import employees for firm from CSV file
|
|
17
|
+
* @param file
|
|
18
|
+
*/
|
|
19
|
+
import(file) {
|
|
20
|
+
const formData = new FormData();
|
|
21
|
+
formData.append('file', file);
|
|
22
|
+
return this.http.post(`${this.environment.apiV2}/${this.url}/import`, formData)
|
|
23
|
+
.pipe(map((employeeInvite) => {
|
|
24
|
+
return employeeInvite;
|
|
25
|
+
}));
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Resend invitation from firm to client
|
|
29
|
+
* @param invite
|
|
30
|
+
*/
|
|
31
|
+
resend(invite) {
|
|
32
|
+
return this.http.post(`${this.environment.apiV2}/${this.url}/${invite.id}/resend`, null)
|
|
33
|
+
.pipe(map((resentInviteBase) => {
|
|
34
|
+
const updatedInvite = plainToClass(EmployeeInvite, resentInviteBase);
|
|
35
|
+
// avoid cache changes
|
|
36
|
+
// @TODO make cache readonly
|
|
37
|
+
const tempCache = _.cloneDeep(this.cache);
|
|
38
|
+
replace(tempCache, plainToClass(EmployeeInvite, updatedInvite));
|
|
39
|
+
this.cache = tempCache;
|
|
40
|
+
this.updateCache();
|
|
41
|
+
return updatedInvite;
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
EmployeeInviteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeInviteService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
46
|
+
EmployeeInviteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeInviteService, providedIn: 'root' });
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeInviteService, decorators: [{
|
|
48
|
+
type: Injectable,
|
|
49
|
+
args: [{
|
|
50
|
+
providedIn: 'root'
|
|
51
|
+
}]
|
|
52
|
+
}] });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUtaW52aXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9maXJtL2VtcGxveWVlLWludml0ZS9lbXBsb3llZS1pbnZpdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEQsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDN0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUt0RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsV0FBK0M7SUFIMUY7O1FBSUUsUUFBRyxHQUFXLG1CQUFtQixDQUFDO1FBQ2xDLGVBQVUsR0FBMEIsY0FBYyxDQUFDO0tBcUNwRDtJQW5DQzs7O09BR0c7SUFDSCxNQUFNLENBQUMsSUFBVTtRQUNmLE1BQU0sUUFBUSxHQUFhLElBQUksUUFBUSxFQUFFLENBQUM7UUFDMUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFOUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxHQUFHLFNBQVMsRUFBRSxRQUFRLENBQUM7YUFDNUUsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLGNBQWdDLEVBQUUsRUFBRTtZQUN2QyxPQUFPLGNBQWMsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxNQUFzQjtRQUMzQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDO2FBQ3JGLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxnQkFBb0MsRUFBa0IsRUFBRTtZQUMzRCxNQUFNLGFBQWEsR0FBbUIsWUFBWSxDQUFDLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3JGLHNCQUFzQjtZQUN0Qiw0QkFBNEI7WUFDNUIsTUFBTSxTQUFTLEdBQXFCLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVELE9BQU8sQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLGNBQWMsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixPQUFPLGFBQWEsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs7bUhBdENVLHFCQUFxQjt1SEFBckIscUJBQXFCLGNBRnBCLE1BQU07NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVtcGxveWVlSW52aXRlIGFzIEVtcGxveWVlSW52aXRlQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL01vZGVscy9lbXBsb3llZS1pbnZpdGUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgcmVwbGFjZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Z1bmN0aW9ucy9hcnJheSc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgRW1wbG95ZWVJbnZpdGUgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZW1wbG95ZWUvZW1wbG95ZWUtaW52aXRlJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcmVzdC9yZXN0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBFbXBsb3llZUludml0ZVNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxFbXBsb3llZUludml0ZUJhc2UsIEVtcGxveWVlSW52aXRlPiB7XG4gIHVybDogc3RyaW5nID0gJ2VtcGxveWVlcy9pbnZpdGVzJztcbiAgbW9kZWxDbGFzczogdHlwZW9mIEVtcGxveWVlSW52aXRlID0gRW1wbG95ZWVJbnZpdGU7XG5cbiAgLyoqXG4gICAqIEltcG9ydCBlbXBsb3llZXMgZm9yIGZpcm0gZnJvbSBDU1YgZmlsZVxuICAgKiBAcGFyYW0gZmlsZVxuICAgKi9cbiAgaW1wb3J0KGZpbGU6IEZpbGUpOiBPYnNlcnZhYmxlPEVtcGxveWVlSW52aXRlW10+IHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS9pbXBvcnRgLCBmb3JtRGF0YSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGVtcGxveWVlSW52aXRlOiBFbXBsb3llZUludml0ZVtdKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGVtcGxveWVlSW52aXRlO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNlbmQgaW52aXRhdGlvbiBmcm9tIGZpcm0gdG8gY2xpZW50XG4gICAqIEBwYXJhbSBpbnZpdGVcbiAgICovXG4gIHJlc2VuZChpbnZpdGU6IEVtcGxveWVlSW52aXRlKTogT2JzZXJ2YWJsZTxFbXBsb3llZUludml0ZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS8ke2ludml0ZS5pZH0vcmVzZW5kYCwgbnVsbClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc2VudEludml0ZUJhc2U6IEVtcGxveWVlSW52aXRlQmFzZSk6IEVtcGxveWVlSW52aXRlID0+IHtcbiAgICAgICAgICBjb25zdCB1cGRhdGVkSW52aXRlOiBFbXBsb3llZUludml0ZSA9IHBsYWluVG9DbGFzcyhFbXBsb3llZUludml0ZSwgcmVzZW50SW52aXRlQmFzZSk7XG4gICAgICAgICAgLy8gYXZvaWQgY2FjaGUgY2hhbmdlc1xuICAgICAgICAgIC8vIEBUT0RPIG1ha2UgY2FjaGUgcmVhZG9ubHlcbiAgICAgICAgICBjb25zdCB0ZW1wQ2FjaGU6IEVtcGxveWVlSW52aXRlW10gPSBfLmNsb25lRGVlcCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICByZXBsYWNlKHRlbXBDYWNoZSwgcGxhaW5Ub0NsYXNzKEVtcGxveWVlSW52aXRlLCB1cGRhdGVkSW52aXRlKSk7XG4gICAgICAgICAgdGhpcy5jYWNoZSA9IHRlbXBDYWNoZTtcbiAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgICAgcmV0dXJuIHVwZGF0ZWRJbnZpdGU7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { ReplaySubject } from 'rxjs';
|
|
3
|
+
import { map } from 'rxjs/operators';
|
|
4
|
+
import { plainToClass } from 'class-transformer';
|
|
5
|
+
import { Firm } from '../../../models/firm/firm';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common/http";
|
|
8
|
+
// @TODO Alex: think about extend base rest service
|
|
9
|
+
export class FirmService {
|
|
10
|
+
constructor(http, environment) {
|
|
11
|
+
this.http = http;
|
|
12
|
+
this.environment = environment;
|
|
13
|
+
this.firmSubject = new ReplaySubject(1);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Register new firm
|
|
17
|
+
* @param data: firm and firm owner data to register
|
|
18
|
+
*/
|
|
19
|
+
register(data) {
|
|
20
|
+
return this.http.post(`${this.environment.apiV2}/firms/registration`, data)
|
|
21
|
+
.pipe(map((firm) => {
|
|
22
|
+
return plainToClass(Firm, firm);
|
|
23
|
+
}));
|
|
24
|
+
}
|
|
25
|
+
get() {
|
|
26
|
+
if (!this.firm) {
|
|
27
|
+
this.http.get(`${this.environment.apiV2}/firms/current`)
|
|
28
|
+
.pipe(map((firm) => {
|
|
29
|
+
return plainToClass(Firm, firm);
|
|
30
|
+
}))
|
|
31
|
+
.subscribe((firm) => {
|
|
32
|
+
this.firm = firm;
|
|
33
|
+
this.firmSubject.next(this.firm);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
return this.firmSubject.asObservable();
|
|
37
|
+
}
|
|
38
|
+
update(firm) {
|
|
39
|
+
return this.http.put(`${this.environment.apiV2}/firms/current`, firm)
|
|
40
|
+
.pipe(map((updatedItem) => {
|
|
41
|
+
const updatedInstance = plainToClass(Firm, updatedItem);
|
|
42
|
+
this.firmSubject.next(updatedInstance);
|
|
43
|
+
}));
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* get list of all registered firms
|
|
47
|
+
*/
|
|
48
|
+
getAll() {
|
|
49
|
+
return this.http.get(`${this.environment.apiV2}/firms`)
|
|
50
|
+
.pipe(map((response) => {
|
|
51
|
+
return response['hydra:member'].map((firmBase) => plainToClass(Firm, firmBase));
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
getByType(type) {
|
|
55
|
+
return this.getAll().pipe(map((firms) => {
|
|
56
|
+
return firms.filter((firm) => firm.type === type);
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
updatePhoto(firm, photo) {
|
|
60
|
+
return this.http.post(`${this.environment.apiV2}/firms/photo?_method=PUT`, photo)
|
|
61
|
+
.pipe(map((firmPhoto) => {
|
|
62
|
+
this.firm = plainToClass(Firm, Object.assign(firm, { photo: firmPhoto }));
|
|
63
|
+
this.firmSubject.next(this.firm);
|
|
64
|
+
return firm;
|
|
65
|
+
}));
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
FirmService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FirmService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
69
|
+
FirmService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FirmService, providedIn: 'root' });
|
|
70
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FirmService, decorators: [{
|
|
71
|
+
type: Injectable,
|
|
72
|
+
args: [{
|
|
73
|
+
providedIn: 'root'
|
|
74
|
+
}]
|
|
75
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
76
|
+
type: Inject,
|
|
77
|
+
args: ['environment']
|
|
78
|
+
}] }]; } });
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlybS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvZmlybS9maXJtLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBR2pELG1EQUFtRDtBQUluRCxNQUFNLE9BQU8sV0FBVztJQUl0QixZQUNVLElBQWdCLEVBQ1MsV0FBZ0I7UUFEekMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNTLGdCQUFXLEdBQVgsV0FBVyxDQUFLO1FBSm5ELGdCQUFXLEdBQXdCLElBQUksYUFBYSxDQUFPLENBQUMsQ0FBQyxDQUFDO0lBSzNELENBQUM7SUFFSjs7O09BR0c7SUFDSCxRQUFRLENBQUMsSUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLHFCQUFxQixFQUFFLElBQUksQ0FBQzthQUN4RSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsSUFBYyxFQUFRLEVBQUU7WUFDM0IsT0FBTyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRUQsR0FBRztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssZ0JBQWdCLENBQUM7aUJBQ3JELElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxJQUFjLEVBQVEsRUFBRTtnQkFDM0IsT0FBTyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2xDLENBQUMsQ0FBQyxDQUNIO2lCQUNBLFNBQVMsQ0FBQyxDQUFDLElBQVUsRUFBUSxFQUFFO2dCQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztnQkFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25DLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxnQkFBZ0IsRUFBRSxJQUFJLENBQUM7YUFDbEUsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFdBQXFCLEVBQUUsRUFBRTtZQUM1QixNQUFNLGVBQWUsR0FBUyxZQUFZLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQzlELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNO1FBQ0osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxRQUFRLENBQUM7YUFDcEQsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFFBQWdCLEVBQVUsRUFBRTtZQUMvQixPQUFPLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFrQixFQUFRLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDbEcsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7SUFFRCxTQUFTLENBQUMsSUFBa0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUN2QixHQUFHLENBQUMsQ0FBQyxLQUFhLEVBQVUsRUFBRTtZQUM1QixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUM7UUFDMUQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBVSxFQUFFLEtBQWU7UUFDckMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSywwQkFBMEIsRUFBRSxLQUFLLENBQUM7YUFDOUUsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFNBQWlCLEVBQUUsRUFBRTtZQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLFlBQVksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBQyxLQUFLLEVBQUUsU0FBUyxFQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUVqQyxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDOzt5R0EvRVUsV0FBVyw0Q0FNWixhQUFhOzZHQU5aLFdBQVcsY0FGVixNQUFNOzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPSSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBGaXJtVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi9kYi9FbnVtcy9maXJtLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBGaXJtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2Zpcm0vZmlybSc7XG5pbXBvcnQgeyBGaXJtIGFzIEZpcm1CYXNlIH0gZnJvbSAnLi4vLi4vLi4vZGIvTW9kZWxzL2Zpcm0nO1xuXG4vLyBAVE9ETyBBbGV4OiB0aGluayBhYm91dCBleHRlbmQgYmFzZSByZXN0IHNlcnZpY2VcbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZpcm1TZXJ2aWNlIHtcbiAgZmlybTogRmlybTtcbiAgZmlybVN1YmplY3Q6IFJlcGxheVN1YmplY3Q8RmlybT4gPSBuZXcgUmVwbGF5U3ViamVjdDxGaXJtPigxKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgZW52aXJvbm1lbnQ6IGFueVxuICApIHt9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIG5ldyBmaXJtXG4gICAqIEBwYXJhbSBkYXRhOiBmaXJtIGFuZCBmaXJtIG93bmVyIGRhdGEgdG8gcmVnaXN0ZXJcbiAgICovXG4gIHJlZ2lzdGVyKGRhdGE6IEZpcm0pOiBPYnNlcnZhYmxlPEZpcm0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vZmlybXMvcmVnaXN0cmF0aW9uYCwgZGF0YSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGZpcm06IEZpcm1CYXNlKTogRmlybSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHBsYWluVG9DbGFzcyhGaXJtLCBmaXJtKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICBnZXQoKTogT2JzZXJ2YWJsZTxGaXJtPiB7XG4gICAgaWYgKCF0aGlzLmZpcm0pIHtcbiAgICAgIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vZmlybXMvY3VycmVudGApXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcCgoZmlybTogRmlybUJhc2UpOiBGaXJtID0+IHtcbiAgICAgICAgICAgIHJldHVybiBwbGFpblRvQ2xhc3MoRmlybSwgZmlybSk7XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChmaXJtOiBGaXJtKTogdm9pZCA9PiB7XG4gICAgICAgICAgdGhpcy5maXJtID0gZmlybTtcbiAgICAgICAgICB0aGlzLmZpcm1TdWJqZWN0Lm5leHQodGhpcy5maXJtKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZmlybVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICB1cGRhdGUoZmlybTogRmlybSk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2Zpcm1zL2N1cnJlbnRgLCBmaXJtKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgodXBkYXRlZEl0ZW06IEZpcm1CYXNlKSA9PiB7XG4gICAgICAgICAgY29uc3QgdXBkYXRlZEluc3RhbmNlOiBGaXJtID0gcGxhaW5Ub0NsYXNzKEZpcm0sIHVwZGF0ZWRJdGVtKTtcbiAgICAgICAgICB0aGlzLmZpcm1TdWJqZWN0Lm5leHQodXBkYXRlZEluc3RhbmNlKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgYWxsIHJlZ2lzdGVyZWQgZmlybXNcbiAgICovXG4gIGdldEFsbCgpOiBPYnNlcnZhYmxlPEZpcm1bXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2Zpcm1zYClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3QpOiBGaXJtW10gPT4ge1xuICAgICAgICAgIHJldHVybiByZXNwb25zZVsnaHlkcmE6bWVtYmVyJ10ubWFwKChmaXJtQmFzZTogRmlybUJhc2UpOiBGaXJtID0+IHBsYWluVG9DbGFzcyhGaXJtLCBmaXJtQmFzZSkpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIGdldEJ5VHlwZSh0eXBlOiBGaXJtVHlwZUVudW0pOiBPYnNlcnZhYmxlPEZpcm1bXT4ge1xuICAgIHJldHVybiB0aGlzLmdldEFsbCgpLnBpcGUoXG4gICAgICBtYXAoKGZpcm1zOiBGaXJtW10pOiBGaXJtW10gPT4ge1xuICAgICAgICByZXR1cm4gZmlybXMuZmlsdGVyKChmaXJtOiBGaXJtKSA9PiBmaXJtLnR5cGUgPT09IHR5cGUpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgdXBkYXRlUGhvdG8oZmlybTogRmlybSwgcGhvdG86IEZvcm1EYXRhKTogT2JzZXJ2YWJsZTxGaXJtPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2Zpcm1zL3Bob3RvP19tZXRob2Q9UFVUYCwgcGhvdG8pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChmaXJtUGhvdG86IHN0cmluZykgPT4ge1xuICAgICAgICAgIHRoaXMuZmlybSA9IHBsYWluVG9DbGFzcyhGaXJtLCBPYmplY3QuYXNzaWduKGZpcm0sIHtwaG90bzogZmlybVBob3RvfSkpO1xuICAgICAgICAgIHRoaXMuZmlybVN1YmplY3QubmV4dCh0aGlzLmZpcm0pO1xuXG4gICAgICAgICAgcmV0dXJuIGZpcm07XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { map } from 'rxjs/operators';
|
|
3
|
+
import { plainToClass } from 'class-transformer';
|
|
4
|
+
import { ClientPortfolioReport } from '../../../../models/client/client-portfolio-report';
|
|
5
|
+
import { ClientPortfolioReportCollection } from '../../../../collections/client-portfolio-report.collection';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common/http";
|
|
8
|
+
// @Todo refactor with BaseRest service
|
|
9
|
+
/**
|
|
10
|
+
* Service to work with employee clients tax summary data
|
|
11
|
+
*/
|
|
12
|
+
export class ClientPortfolioReportService {
|
|
13
|
+
constructor(http, environment) {
|
|
14
|
+
this.http = http;
|
|
15
|
+
this.environment = environment;
|
|
16
|
+
this.url = 'portfolio-reports';
|
|
17
|
+
}
|
|
18
|
+
get() {
|
|
19
|
+
return this.http.get(`${this.environment.apiV2}/${this.url}`)
|
|
20
|
+
.pipe(map((response) => {
|
|
21
|
+
const clientReports = response['hydra:member'].map((item) => plainToClass(ClientPortfolioReport, item));
|
|
22
|
+
return new ClientPortfolioReportCollection(clientReports);
|
|
23
|
+
}));
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
ClientPortfolioReportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientPortfolioReportService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
27
|
+
ClientPortfolioReportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientPortfolioReportService, providedIn: 'root' });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientPortfolioReportService, decorators: [{
|
|
29
|
+
type: Injectable,
|
|
30
|
+
args: [{
|
|
31
|
+
providedIn: 'root'
|
|
32
|
+
}]
|
|
33
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
34
|
+
type: Inject,
|
|
35
|
+
args: ['environment']
|
|
36
|
+
}] }]; } });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LXBvcnRmb2xpby1yZXBvcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9odHRwL2Zpcm0vcG9ydGZvbGlvLXJlcG9ydC9jbGllbnQtcG9ydGZvbGlvLXJlcG9ydC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDMUYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNERBQTRELENBQUM7OztBQUU3Ryx1Q0FBdUM7QUFDdkM7O0dBRUc7QUFJSCxNQUFNLE9BQU8sNEJBQTRCO0lBR3ZDLFlBQ1UsSUFBZ0IsRUFDTyxXQUFnQjtRQUR2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ08sZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFKakQsUUFBRyxHQUFXLG1CQUFtQixDQUFDO0lBTWxDLENBQUM7SUFFRCxHQUFHO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQzthQUMxRCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBZ0IsRUFBRSxFQUFFO1lBQ3ZCLE1BQU0sYUFBYSxHQUE0QixRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUN6SSxPQUFPLElBQUksK0JBQStCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7OzBIQWpCVSw0QkFBNEIsNENBSzdCLGFBQWE7OEhBTFosNEJBQTRCLGNBRjNCLE1BQU07NEZBRVAsNEJBQTRCO2tCQUh4QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBTUksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgQ2xpZW50UG9ydGZvbGlvUmVwb3J0IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2NsaWVudC9jbGllbnQtcG9ydGZvbGlvLXJlcG9ydCc7XG5pbXBvcnQgeyBDbGllbnRQb3J0Zm9saW9SZXBvcnRDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29sbGVjdGlvbnMvY2xpZW50LXBvcnRmb2xpby1yZXBvcnQuY29sbGVjdGlvbic7XG5cbi8vIEBUb2RvIHJlZmFjdG9yIHdpdGggQmFzZVJlc3Qgc2VydmljZVxuLyoqXG4gKiBTZXJ2aWNlIHRvIHdvcmsgd2l0aCBlbXBsb3llZSBjbGllbnRzIHRheCBzdW1tYXJ5IGRhdGFcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2xpZW50UG9ydGZvbGlvUmVwb3J0U2VydmljZSB7XG4gIHVybDogc3RyaW5nID0gJ3BvcnRmb2xpby1yZXBvcnRzJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlyb25tZW50OiBhbnlcbiAgKSB7XG4gIH1cblxuICBnZXQoKTogT2JzZXJ2YWJsZTxDbGllbnRQb3J0Zm9saW9SZXBvcnRDb2xsZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH1gKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IG9iamVjdCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGNsaWVudFJlcG9ydHM6IENsaWVudFBvcnRmb2xpb1JlcG9ydFtdID0gcmVzcG9uc2VbJ2h5ZHJhOm1lbWJlciddLm1hcCgoaXRlbTogb2JqZWN0KSA9PiBwbGFpblRvQ2xhc3MoQ2xpZW50UG9ydGZvbGlvUmVwb3J0LCBpdGVtKSk7XG4gICAgICAgICAgcmV0dXJuIG5ldyBDbGllbnRQb3J0Zm9saW9SZXBvcnRDb2xsZWN0aW9uKGNsaWVudFJlcG9ydHMpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxufVxuIl19
|