@senior-gestao-relacionamento/angular-components 1.3.0 → 1.5.0
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/senior-gestao-relacionamento-angular-components.umd.js +903 -158
- package/bundles/senior-gestao-relacionamento-angular-components.umd.js.map +1 -1
- package/bundles/senior-gestao-relacionamento-angular-components.umd.min.js +2 -2
- package/bundles/senior-gestao-relacionamento-angular-components.umd.min.js.map +1 -1
- package/components/index.d.ts +2 -0
- package/components/refresh-websocket-alert/index.d.ts +2 -0
- package/components/refresh-websocket-alert/refresh-websocket-alert.component.d.ts +14 -0
- package/components/refresh-websocket-alert/refresh-websocket-alert.module.d.ts +2 -0
- package/components/reports/enums/format-enum.d.ts +9 -0
- package/components/reports/enums/index.d.ts +2 -0
- package/components/reports/enums/view-mode-enum.d.ts +4 -0
- package/components/reports/index.d.ts +5 -0
- package/components/reports/models/callback-event.d.ts +4 -0
- package/components/reports/models/generate-report-input-dto.d.ts +11 -0
- package/components/reports/models/generate-report-output-dto.d.ts +3 -0
- package/components/reports/models/index.d.ts +7 -0
- package/components/reports/models/parameter.d.ts +4 -0
- package/components/reports/models/report-dto.d.ts +6 -0
- package/components/reports/models/reports-options.d.ts +14 -0
- package/components/reports/models/response-list-report-dto.d.ts +8 -0
- package/components/reports/reports.component.d.ts +41 -0
- package/components/reports/reports.module.d.ts +2 -0
- package/components/reports/reports.service.d.ts +16 -0
- package/esm2015/components/index.js +3 -0
- package/esm2015/components/refresh-websocket-alert/index.js +3 -0
- package/esm2015/components/refresh-websocket-alert/refresh-websocket-alert.component.js +57 -0
- package/esm2015/components/refresh-websocket-alert/refresh-websocket-alert.module.js +26 -0
- package/esm2015/components/reports/enums/format-enum.js +11 -0
- package/esm2015/components/reports/enums/index.js +3 -0
- package/esm2015/components/reports/enums/view-mode-enum.js +6 -0
- package/esm2015/components/reports/index.js +5 -0
- package/esm2015/components/reports/models/callback-event.js +1 -0
- package/esm2015/components/reports/models/generate-report-input-dto.js +1 -0
- package/esm2015/components/reports/models/generate-report-output-dto.js +1 -0
- package/esm2015/components/reports/models/index.js +1 -0
- package/esm2015/components/reports/models/parameter.js +1 -0
- package/esm2015/components/reports/models/report-dto.js +1 -0
- package/esm2015/components/reports/models/reports-options.js +1 -0
- package/esm2015/components/reports/models/response-list-report-dto.js +1 -0
- package/esm2015/components/reports/reports.component.js +202 -0
- package/esm2015/components/reports/reports.module.js +43 -0
- package/esm2015/components/reports/reports.service.js +73 -0
- package/esm2015/locale/fallback.js +16 -0
- package/esm2015/public-api.js +5 -7
- package/esm2015/senior-gestao-relacionamento-angular-components.js +3 -2
- package/esm2015/services/current-collaborator/current-collaborator.module.js +4 -2
- package/esm2015/services/current-collaborator/current-collaborator.service.js +24 -8
- package/esm2015/services/current-collaborator/models/collaborator-dto.js +1 -1
- package/esm2015/services/current-collaborator/models/collaborator.js +1 -1
- package/esm2015/services/current-collaborator/models/e-070-fil-crmx-dto.js +1 -1
- package/esm2015/services/current-collaborator/models/e-070-fil-crmx.js +1 -1
- package/esm2015/services/index.js +7 -0
- package/esm2015/services/schedule-form-rules/enums/index.js +6 -0
- package/esm2015/services/schedule-form-rules/enums/month-enum.js +16 -0
- package/esm2015/services/schedule-form-rules/enums/ordinal-week-day-enum.js +9 -0
- package/esm2015/services/schedule-form-rules/enums/recurrence-enum.js +8 -0
- package/esm2015/services/schedule-form-rules/enums/repeat-when-enum.js +6 -0
- package/esm2015/services/schedule-form-rules/enums/week-day-enum.js +11 -0
- package/esm2015/services/schedule-form-rules/index.js +4 -0
- package/esm2015/services/schedule-form-rules/schedule-form-rules.module.js +15 -0
- package/esm2015/services/schedule-form-rules/schedule-form-rules.service.js +105 -0
- package/esm2015/services/standard-filters/index.js +3 -3
- package/esm2015/services/standard-filters/{standard filters.module.js → standard-filters.module.js} +2 -2
- package/esm2015/services/standard-filters/{standard filters.service.js → standard-filters.service.js} +1 -1
- package/esm2015/services/storage/storage.module.js +17 -0
- package/esm2015/services/storage/storage.service.js +39 -27
- package/esm2015/services/websocket/index.js +3 -1
- package/esm2015/services/websocket/models/event-dto.js +1 -0
- package/esm2015/services/websocket/models/event.js +13 -0
- package/esm2015/services/websocket/models/index.js +3 -0
- package/esm2015/services/websocket/models/topic-dto.js +1 -0
- package/esm2015/services/websocket/models/topic.js +25 -0
- package/esm2015/services/websocket/websocket.module.js +18 -0
- package/esm2015/services/websocket/websocket.service.js +103 -51
- package/esm2015/utils/index.js +3 -0
- package/esm2015/utils/string-converter.service.js +7 -0
- package/esm2015/utils/value-changes.service.js +7 -0
- package/esm5/components/index.js +3 -0
- package/esm5/components/refresh-websocket-alert/index.js +3 -0
- package/esm5/components/refresh-websocket-alert/refresh-websocket-alert.component.js +59 -0
- package/esm5/components/refresh-websocket-alert/refresh-websocket-alert.module.js +29 -0
- package/esm5/components/reports/enums/format-enum.js +11 -0
- package/esm5/components/reports/enums/index.js +3 -0
- package/esm5/components/reports/enums/view-mode-enum.js +6 -0
- package/esm5/components/reports/index.js +5 -0
- package/esm5/components/reports/models/callback-event.js +1 -0
- package/esm5/components/reports/models/generate-report-input-dto.js +1 -0
- package/esm5/components/reports/models/generate-report-output-dto.js +1 -0
- package/esm5/components/reports/models/index.js +1 -0
- package/esm5/components/reports/models/parameter.js +1 -0
- package/esm5/components/reports/models/report-dto.js +1 -0
- package/esm5/components/reports/models/reports-options.js +1 -0
- package/esm5/components/reports/models/response-list-report-dto.js +1 -0
- package/esm5/components/reports/reports.component.js +208 -0
- package/esm5/components/reports/reports.module.js +46 -0
- package/esm5/components/reports/reports.service.js +75 -0
- package/esm5/locale/fallback.js +16 -0
- package/esm5/public-api.js +5 -7
- package/esm5/senior-gestao-relacionamento-angular-components.js +3 -2
- package/esm5/services/current-collaborator/current-collaborator.module.js +4 -2
- package/esm5/services/current-collaborator/current-collaborator.service.js +26 -9
- package/esm5/services/current-collaborator/models/collaborator-dto.js +1 -1
- package/esm5/services/current-collaborator/models/collaborator.js +1 -1
- package/esm5/services/current-collaborator/models/e-070-fil-crmx-dto.js +1 -1
- package/esm5/services/current-collaborator/models/e-070-fil-crmx.js +1 -1
- package/esm5/services/index.js +7 -0
- package/esm5/services/schedule-form-rules/enums/index.js +6 -0
- package/esm5/services/schedule-form-rules/enums/month-enum.js +16 -0
- package/esm5/services/schedule-form-rules/enums/ordinal-week-day-enum.js +9 -0
- package/esm5/services/schedule-form-rules/enums/recurrence-enum.js +8 -0
- package/esm5/services/schedule-form-rules/enums/repeat-when-enum.js +6 -0
- package/esm5/services/schedule-form-rules/enums/week-day-enum.js +11 -0
- package/esm5/services/schedule-form-rules/index.js +4 -0
- package/esm5/services/schedule-form-rules/schedule-form-rules.module.js +18 -0
- package/esm5/services/schedule-form-rules/schedule-form-rules.service.js +109 -0
- package/esm5/services/standard-filters/index.js +3 -3
- package/esm5/services/standard-filters/{standard filters.module.js → standard-filters.module.js} +2 -2
- package/esm5/services/standard-filters/{standard filters.service.js → standard-filters.service.js} +1 -1
- package/esm5/services/storage/storage.module.js +20 -0
- package/esm5/services/storage/storage.service.js +35 -26
- package/esm5/services/websocket/index.js +3 -1
- package/esm5/services/websocket/models/event-dto.js +1 -0
- package/esm5/services/websocket/models/event.js +20 -0
- package/esm5/services/websocket/models/index.js +3 -0
- package/esm5/services/websocket/models/topic-dto.js +1 -0
- package/esm5/services/websocket/models/topic.js +29 -0
- package/esm5/services/websocket/websocket.module.js +21 -0
- package/esm5/services/websocket/websocket.service.js +107 -51
- package/esm5/utils/index.js +3 -0
- package/esm5/utils/string-converter.service.js +11 -0
- package/esm5/utils/value-changes.service.js +11 -0
- package/fesm2015/senior-gestao-relacionamento-angular-components.js +848 -148
- package/fesm2015/senior-gestao-relacionamento-angular-components.js.map +1 -1
- package/fesm5/senior-gestao-relacionamento-angular-components.js +902 -159
- package/fesm5/senior-gestao-relacionamento-angular-components.js.map +1 -1
- package/locale/fallback.d.ts +1 -0
- package/package.json +45 -43
- package/public-api.d.ts +4 -6
- package/senior-gestao-relacionamento-angular-components.d.ts +2 -1
- package/senior-gestao-relacionamento-angular-components.metadata.json +1 -1
- package/services/current-collaborator/current-collaborator.service.d.ts +5 -2
- package/services/current-collaborator/models/collaborator-dto.d.ts +1 -0
- package/services/current-collaborator/models/collaborator.d.ts +1 -0
- package/services/current-collaborator/models/e-070-fil-crmx-dto.d.ts +1 -0
- package/services/current-collaborator/models/e-070-fil-crmx.d.ts +1 -0
- package/services/index.d.ts +6 -0
- package/services/schedule-form-rules/enums/index.d.ts +5 -0
- package/services/schedule-form-rules/enums/month-enum.d.ts +14 -0
- package/services/schedule-form-rules/enums/ordinal-week-day-enum.d.ts +7 -0
- package/services/schedule-form-rules/enums/recurrence-enum.d.ts +6 -0
- package/services/schedule-form-rules/enums/repeat-when-enum.d.ts +4 -0
- package/services/schedule-form-rules/enums/week-day-enum.d.ts +9 -0
- package/services/schedule-form-rules/index.d.ts +3 -0
- package/services/schedule-form-rules/schedule-form-rules.module.d.ts +2 -0
- package/services/schedule-form-rules/schedule-form-rules.service.d.ts +12 -0
- package/services/standard-filters/index.d.ts +2 -2
- package/services/storage/storage.module.d.ts +2 -0
- package/services/storage/storage.service.d.ts +15 -12
- package/services/websocket/index.d.ts +2 -0
- package/services/websocket/models/event-dto.d.ts +5 -0
- package/services/websocket/models/event.d.ts +8 -0
- package/services/websocket/models/index.d.ts +4 -0
- package/services/websocket/{primitive-event-dto.d.ts → models/topic-dto.d.ts} +1 -1
- package/services/websocket/models/topic.d.ts +10 -0
- package/services/websocket/websocket.module.d.ts +2 -0
- package/services/websocket/websocket.service.d.ts +20 -12
- package/{services/utils → utils}/index.d.ts +1 -0
- package/utils/value-changes.service.d.ts +4 -0
- package/esm2015/services/utils/index.js +0 -2
- package/esm2015/services/utils/string-converter.service.js +0 -7
- package/esm2015/services/websocket/primitive-event-dto.js +0 -1
- package/esm2015/services/websocket/send-event-dto.js +0 -1
- package/esm5/services/utils/index.js +0 -2
- package/esm5/services/utils/string-converter.service.js +0 -11
- package/esm5/services/websocket/primitive-event-dto.js +0 -1
- package/esm5/services/websocket/send-event-dto.js +0 -1
- package/services/websocket/send-event-dto.d.ts +0 -5
- /package/services/standard-filters/{standard filters.module.d.ts → standard-filters.module.d.ts} +0 -0
- /package/services/standard-filters/{standard filters.service.d.ts → standard-filters.service.d.ts} +0 -0
- /package/{services/utils → utils}/string-converter.service.d.ts +0 -0
|
@@ -1,172 +1,411 @@
|
|
|
1
|
-
import { get } from 'js-cookie';
|
|
2
1
|
import { __decorate } from 'tslib';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { Injectable, EventEmitter, Input, Output, Component, NgModule, ɵɵdefineInjectable, ɵɵinject } from '@angular/core';
|
|
3
|
+
import { FormControl, FormGroup, Validators, FormBuilder, FormsModule } from '@angular/forms';
|
|
4
|
+
import { FormField, FieldType, LocaleModule, ButtonModule, DynamicFormModule, SidebarModule, LoadingStateModule } from '@seniorsistemas/angular-components';
|
|
5
|
+
import { TranslateService, TranslateModule } from '@ngx-translate/core';
|
|
6
|
+
import { throwError, BehaviorSubject, Observable, Subject } from 'rxjs';
|
|
7
|
+
import { HttpParams, HttpClient, HttpClientModule } from '@angular/common/http';
|
|
8
|
+
import { map, catchError, takeUntil, concatMap, distinctUntilChanged } from 'rxjs/operators';
|
|
9
|
+
import { MessageService } from 'primeng/api';
|
|
10
|
+
import { RouterModule, Router } from '@angular/router';
|
|
11
|
+
import { CommonModule } from '@angular/common';
|
|
12
|
+
import { SelectButtonModule } from 'primeng/selectbutton';
|
|
13
|
+
import { DialogModule } from 'primeng/dialog';
|
|
14
|
+
import { PanelModule } from 'primeng/panel';
|
|
15
|
+
import { ToastModule } from 'primeng/toast';
|
|
16
|
+
import { CookieService } from 'ngx-cookie-service';
|
|
5
17
|
import { Stomp } from '@stomp/stompjs';
|
|
6
18
|
import * as SockJS from 'sockjs-client';
|
|
7
|
-
import { HttpClient, HttpClientModule } from '@angular/common/http';
|
|
8
|
-
import { takeUntil, catchError } from 'rxjs/operators';
|
|
9
19
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
20
|
+
var FormatEnum;
|
|
21
|
+
(function (FormatEnum) {
|
|
22
|
+
FormatEnum["PDF"] = "Pdf";
|
|
23
|
+
FormatEnum["CSV"] = "Csv";
|
|
24
|
+
FormatEnum["HTML"] = "Html";
|
|
25
|
+
FormatEnum["XLSX"] = "Xlsx";
|
|
26
|
+
FormatEnum["XML"] = "Xml";
|
|
27
|
+
FormatEnum["ODT"] = "Odt";
|
|
28
|
+
FormatEnum["RTF"] = "Rtf";
|
|
29
|
+
})(FormatEnum || (FormatEnum = {}));
|
|
30
|
+
|
|
31
|
+
var ViewModeEnum;
|
|
32
|
+
(function (ViewModeEnum) {
|
|
33
|
+
ViewModeEnum["SIDEBAR"] = "sidebar";
|
|
34
|
+
ViewModeEnum["DIALOG"] = "dialog";
|
|
35
|
+
})(ViewModeEnum || (ViewModeEnum = {}));
|
|
36
|
+
|
|
37
|
+
let ReportsService = class ReportsService {
|
|
38
|
+
constructor(_httpClient, _translate, _messageService) {
|
|
39
|
+
this._httpClient = _httpClient;
|
|
40
|
+
this._translate = _translate;
|
|
41
|
+
this._messageService = _messageService;
|
|
42
|
+
this.queriesPlatformReportUrl = `platform/report/queries`;
|
|
43
|
+
this.actionsCrmxReportUrl = `crmx/report/actions`;
|
|
16
44
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
45
|
+
listReports(tag, ids) {
|
|
46
|
+
let params = new HttpParams();
|
|
47
|
+
params = params.append('searchValue', tag);
|
|
48
|
+
return this._httpClient.get(`${this.queriesPlatformReportUrl}/listReports`, { params }).pipe(map((response) => response.reports.filter((report) => ids ? ids.includes(report.id) : true)), this.defaultCatch());
|
|
20
49
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
return
|
|
26
|
-
}
|
|
27
|
-
return null;
|
|
50
|
+
getSharedReport(tag) {
|
|
51
|
+
let params = new HttpParams();
|
|
52
|
+
params = params.append('searchValue', tag);
|
|
53
|
+
return this._httpClient.get(`${this.queriesPlatformReportUrl}/listSharedReports`, { params }).pipe(map((response) => {
|
|
54
|
+
return response.reports.filter((report) => report.enabled);
|
|
55
|
+
}), this.defaultCatch());
|
|
28
56
|
}
|
|
29
|
-
|
|
30
|
-
return
|
|
57
|
+
generateReport(inputDto) {
|
|
58
|
+
return this._httpClient.post(`${this.actionsCrmxReportUrl}/generateReport`, inputDto).pipe(this.defaultCatch());
|
|
31
59
|
}
|
|
32
|
-
|
|
33
|
-
return
|
|
60
|
+
defaultCatch() {
|
|
61
|
+
return catchError((err) => {
|
|
62
|
+
if (err) {
|
|
63
|
+
let summary = err.status ? String(err.status) : 'Error';
|
|
64
|
+
let detail;
|
|
65
|
+
if (err.error && err.error.message) {
|
|
66
|
+
detail = err.error.message;
|
|
67
|
+
}
|
|
68
|
+
else if (err.statusText) {
|
|
69
|
+
detail = err.statusText;
|
|
70
|
+
}
|
|
71
|
+
else if (err.message) {
|
|
72
|
+
detail = err.message;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
detail = 'Error';
|
|
76
|
+
}
|
|
77
|
+
const errorUnauthorized = 401;
|
|
78
|
+
if (err.status === errorUnauthorized) {
|
|
79
|
+
summary = this._translate.instant('crmx.angular_components.error_unauthorized_title');
|
|
80
|
+
detail = this._translate.instant('crmx.angular_components.error_unauthorized_description');
|
|
81
|
+
}
|
|
82
|
+
this._messageService.add({
|
|
83
|
+
severity: 'error',
|
|
84
|
+
summary,
|
|
85
|
+
detail,
|
|
86
|
+
sticky: true,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
return throwError(err);
|
|
90
|
+
});
|
|
34
91
|
}
|
|
35
|
-
|
|
36
|
-
|
|
92
|
+
};
|
|
93
|
+
ReportsService.ctorParameters = () => [
|
|
94
|
+
{ type: HttpClient },
|
|
95
|
+
{ type: TranslateService },
|
|
96
|
+
{ type: MessageService }
|
|
97
|
+
];
|
|
98
|
+
ReportsService = __decorate([
|
|
99
|
+
Injectable()
|
|
100
|
+
], ReportsService);
|
|
101
|
+
|
|
102
|
+
let ReportsComponent = class ReportsComponent {
|
|
103
|
+
constructor(_translate, _formBuilder, _reportsService) {
|
|
104
|
+
this._translate = _translate;
|
|
105
|
+
this._formBuilder = _formBuilder;
|
|
106
|
+
this._reportsService = _reportsService;
|
|
107
|
+
this.formGroups = [];
|
|
108
|
+
this.visibleChange = new EventEmitter();
|
|
109
|
+
this.reportGenerated = new EventEmitter();
|
|
110
|
+
this.reportsObservable = new BehaviorSubject([]);
|
|
111
|
+
this.viewModeEnum = ViewModeEnum;
|
|
112
|
+
this.loading = false;
|
|
113
|
+
this._reports = [];
|
|
114
|
+
this._formatEnum = [];
|
|
37
115
|
}
|
|
38
|
-
|
|
39
|
-
|
|
116
|
+
ngOnChanges(changes) {
|
|
117
|
+
if (this.options) {
|
|
118
|
+
this.options.header = this.options.header || this._translate.instant('crmx.angular_components.reports_title');
|
|
119
|
+
this.options.labelConfirmButton = this.options.labelConfirmButton || this._translate.instant('crmx.angular_components.confirm');
|
|
120
|
+
this._formatEnum = Object.keys(FormatEnum)
|
|
121
|
+
.filter(key => !this.options.formats || this.options.formats.includes(FormatEnum[key]))
|
|
122
|
+
.map(key => ({ label: key.toUpperCase(), value: FormatEnum[key] }));
|
|
123
|
+
if (this.visible) {
|
|
124
|
+
this.loading = true;
|
|
125
|
+
this._executeObservable(this._reportsService.listReports(this.options.tenantReport || this.options.sharedReport))
|
|
126
|
+
.subscribe((nextAction) => {
|
|
127
|
+
if (nextAction) {
|
|
128
|
+
this._executeObservable(this._reportsService.getSharedReport(this.options.sharedReport))
|
|
129
|
+
.subscribe((nextAction) => {
|
|
130
|
+
this.loading = false;
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
}
|
|
40
136
|
}
|
|
41
|
-
|
|
42
|
-
|
|
137
|
+
ngOnInit() {
|
|
138
|
+
this.formGroup = this._getFormGroup();
|
|
139
|
+
this.formFields = this._getFormFields();
|
|
43
140
|
}
|
|
44
|
-
|
|
45
|
-
|
|
141
|
+
onCancel() {
|
|
142
|
+
this.formGroup.reset();
|
|
143
|
+
this.visible = false;
|
|
144
|
+
this.visibleChange.emit(this.visible);
|
|
46
145
|
}
|
|
47
|
-
|
|
48
|
-
|
|
146
|
+
onConfirm() {
|
|
147
|
+
this.loading = true;
|
|
148
|
+
const data = this.formGroup.getRawValue();
|
|
149
|
+
let isValid = true;
|
|
150
|
+
this.formGroups.forEach((formGroup) => isValid = isValid && formGroup.valid);
|
|
151
|
+
if (!this.formGroup.valid || !isValid) {
|
|
152
|
+
this.loading = false;
|
|
153
|
+
this._validateAllFormFields(this.formGroup);
|
|
154
|
+
this.formGroups.forEach(this._validateAllFormFields);
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
const input = {
|
|
158
|
+
report: {
|
|
159
|
+
id: data.reports.id,
|
|
160
|
+
parameters: this.options.parametersReport,
|
|
161
|
+
format: data.format,
|
|
162
|
+
timeToLive: 1000,
|
|
163
|
+
},
|
|
164
|
+
callbackEvent: this.options.callbackEvent,
|
|
165
|
+
};
|
|
166
|
+
this._reportsService.generateReport(input).subscribe((outputDto) => {
|
|
167
|
+
this.reportGenerated.emit(outputDto);
|
|
168
|
+
this.onCancel();
|
|
169
|
+
}, () => {
|
|
170
|
+
this.loading = false;
|
|
171
|
+
});
|
|
172
|
+
}
|
|
49
173
|
}
|
|
50
|
-
|
|
51
|
-
return
|
|
174
|
+
getErrorMessages() {
|
|
175
|
+
return {
|
|
176
|
+
required: this._translate.instant('crmx.angular_components.error_required'),
|
|
177
|
+
};
|
|
52
178
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
const regex = /([a-z])([A-Z])/g;
|
|
58
|
-
return camelCase.replace(regex, '$1_$2').toLowerCase();
|
|
179
|
+
onVisibleChange(visible) {
|
|
180
|
+
if (!visible) {
|
|
181
|
+
this.onCancel();
|
|
182
|
+
}
|
|
59
183
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
if (
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
184
|
+
_executeObservable(observable) {
|
|
185
|
+
return new Observable((observer) => {
|
|
186
|
+
observable
|
|
187
|
+
.pipe(catchError((err) => {
|
|
188
|
+
this.loading = false;
|
|
189
|
+
return throwError(err);
|
|
190
|
+
}))
|
|
191
|
+
.subscribe((reports) => {
|
|
192
|
+
this._reports = reports;
|
|
193
|
+
if (reports.length > 0) {
|
|
194
|
+
this.loading = false;
|
|
195
|
+
this._setValuesDefault();
|
|
196
|
+
observer.next(false);
|
|
197
|
+
}
|
|
198
|
+
else {
|
|
199
|
+
observer.next(true);
|
|
73
200
|
}
|
|
201
|
+
}, () => {
|
|
202
|
+
this.loading = false;
|
|
203
|
+
});
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
_setValuesDefault() {
|
|
207
|
+
var _a;
|
|
208
|
+
this.formGroup.controls.reports.setValue(this._reports[0]);
|
|
209
|
+
this.formGroup.controls.format.setValue((_a = this._formatEnum[0]) === null || _a === void 0 ? void 0 : _a.value);
|
|
210
|
+
}
|
|
211
|
+
_hasEmpty(target) {
|
|
212
|
+
return (Object.keys(target).filter((key) => target[key] === '' || target[key] === undefined).length > 0);
|
|
213
|
+
}
|
|
214
|
+
_validateAllFormFields(formGroup) {
|
|
215
|
+
Object.keys(formGroup.controls).forEach((field) => {
|
|
216
|
+
const control = formGroup.get(field);
|
|
217
|
+
if (control instanceof FormControl) {
|
|
218
|
+
control.markAsDirty({ onlySelf: true });
|
|
74
219
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
220
|
+
else if (control instanceof FormGroup) {
|
|
221
|
+
this._validateAllFormFields(control);
|
|
222
|
+
}
|
|
223
|
+
});
|
|
78
224
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
225
|
+
_getFormGroup() {
|
|
226
|
+
return this._formBuilder.group({
|
|
227
|
+
reports: [{ value: null, disabled: false }, Validators.compose([Validators.required])],
|
|
228
|
+
format: [{ value: null, disabled: false }, Validators.compose([Validators.required])],
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
_getFormFields() {
|
|
232
|
+
return [
|
|
233
|
+
new FormField({
|
|
234
|
+
type: FieldType.Autocomplete,
|
|
235
|
+
name: "reports",
|
|
236
|
+
label: this._translate.instant('crmx.angular_components.report'),
|
|
237
|
+
size: { xl: 12, lg: 12, md: 12, sm: 12 },
|
|
238
|
+
multiple: false,
|
|
239
|
+
dataKey: "id",
|
|
240
|
+
appendTo: "body",
|
|
241
|
+
emptyMessage: "Nenhuma sugestão encontrada",
|
|
242
|
+
displayField: "name",
|
|
243
|
+
required: () => true,
|
|
244
|
+
suggestionsObservable: this.reportsObservable,
|
|
245
|
+
onSearch: (val) => this.reportsObservable.next(this._reports.filter((reportDto) => reportDto.name.match(new RegExp(val, "ig")))),
|
|
246
|
+
footer: {
|
|
247
|
+
help: {
|
|
248
|
+
text: this._translate.instant('crmx.angular_components.reports_help', { tag: this.options.tenantReport }),
|
|
249
|
+
icon: 'fa fa-info-circle'
|
|
250
|
+
}
|
|
89
251
|
}
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
252
|
+
}),
|
|
253
|
+
new FormField({
|
|
254
|
+
type: FieldType.Enum,
|
|
255
|
+
name: 'format',
|
|
256
|
+
label: this._translate.instant('crmx.angular_components.format'),
|
|
257
|
+
placeholder: this._translate.instant('crmx.angular_components.format_placeholder'),
|
|
258
|
+
size: { xl: 12, lg: 12, md: 12, sm: 12 },
|
|
259
|
+
multiple: false,
|
|
260
|
+
required: () => true,
|
|
261
|
+
options: this._formatEnum,
|
|
262
|
+
}),
|
|
263
|
+
];
|
|
94
264
|
}
|
|
95
|
-
|
|
96
|
-
|
|
265
|
+
};
|
|
266
|
+
ReportsComponent.ctorParameters = () => [
|
|
267
|
+
{ type: TranslateService },
|
|
268
|
+
{ type: FormBuilder },
|
|
269
|
+
{ type: ReportsService }
|
|
270
|
+
];
|
|
271
|
+
__decorate([
|
|
272
|
+
Input()
|
|
273
|
+
], ReportsComponent.prototype, "visible", void 0);
|
|
274
|
+
__decorate([
|
|
275
|
+
Input()
|
|
276
|
+
], ReportsComponent.prototype, "options", void 0);
|
|
277
|
+
__decorate([
|
|
278
|
+
Input()
|
|
279
|
+
], ReportsComponent.prototype, "formGroups", void 0);
|
|
280
|
+
__decorate([
|
|
281
|
+
Output()
|
|
282
|
+
], ReportsComponent.prototype, "visibleChange", void 0);
|
|
283
|
+
__decorate([
|
|
284
|
+
Output()
|
|
285
|
+
], ReportsComponent.prototype, "reportGenerated", void 0);
|
|
286
|
+
ReportsComponent = __decorate([
|
|
287
|
+
Component({
|
|
288
|
+
selector: 'report',
|
|
289
|
+
template: "<div *ngIf=\"options\">\n <ng-container *ngIf=\"options.viewMode === viewModeEnum.SIDEBAR else reportsDialog\" >\n <s-sidebar [(visible)]=\"visible\" (visibleChange)=\"onVisibleChange($event)\" [header]=\"options.header\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n <s-footer>\n <ng-container *ngTemplateOutlet=\"footer\"></ng-container>\n </s-footer>\n </s-sidebar>\n </ng-container>\n\n <ng-template #reportsDialog>\n <p-dialog\n [(visible)]=\"visible\" (visibleChange)=\"visible = $event\"\n [resizable]=\"false\" [draggable]=\"false\" [modal]=\"true\" [closable]=\"false\"\n >\n <p-header [textContent]=\"options.header\"></p-header>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n <p-footer>\n <ng-container *ngTemplateOutlet=\"footer\"></ng-container>\n </p-footer>\n </p-dialog>\n </ng-template>\n\n <ng-template #content>\n <div class=\"ui-g\" *sLoadingState=\"loading\">\n <div class=\"ui-g-12\">\n <s-dynamic-form\n [fields]=\"formFields\"\n [form]=\"formGroup\"\n [errorMessages]=\"getErrorMessages()\"\n ></s-dynamic-form>\n </div>\n <div class=\"ui-g-12\">\n <ng-content></ng-content>\n </div>\n </div>\n </ng-template>\n\n <ng-template #footer>\n <s-button\n tooltip=\"{{'crmx.angular_components.generate' | translate}}\"\n tooltipPosition=\"left\" type=\"submit\" class=\"sds-float-right\"\n priority=\"primary\" [label]=\"options.labelConfirmButton\"\n (onClick)=\"onConfirm()\"\n [disabled]=\"loading\"\n ></s-button>\n <s-button\n tooltip=\"{{'crmx.angular_components.cancel' | translate}}\"\n type=\"button\" class=\"sds-float-left\" priority=\"link\"\n [label]=\"'crmx.angular_components.cancel' | translate\"\n (onClick)=\"onCancel()\"\n [disabled]=\"loading\"\n ></s-button>\n </ng-template>\n</div>\n"
|
|
290
|
+
})
|
|
291
|
+
], ReportsComponent);
|
|
97
292
|
|
|
98
|
-
class
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
293
|
+
let ReportsModule = class ReportsModule {
|
|
294
|
+
};
|
|
295
|
+
ReportsModule = __decorate([
|
|
296
|
+
NgModule({
|
|
297
|
+
imports: [
|
|
298
|
+
LocaleModule.forChild(),
|
|
299
|
+
FormsModule,
|
|
300
|
+
RouterModule,
|
|
301
|
+
CommonModule,
|
|
302
|
+
TranslateModule,
|
|
303
|
+
SelectButtonModule,
|
|
304
|
+
DialogModule,
|
|
305
|
+
ButtonModule,
|
|
306
|
+
DynamicFormModule,
|
|
307
|
+
SidebarModule,
|
|
308
|
+
PanelModule,
|
|
309
|
+
LoadingStateModule,
|
|
310
|
+
],
|
|
311
|
+
declarations: [
|
|
312
|
+
ReportsComponent,
|
|
313
|
+
],
|
|
314
|
+
exports: [
|
|
315
|
+
ReportsComponent,
|
|
316
|
+
],
|
|
317
|
+
providers: [
|
|
318
|
+
ReportsService,
|
|
319
|
+
]
|
|
320
|
+
})
|
|
321
|
+
], ReportsModule);
|
|
106
322
|
|
|
107
|
-
let
|
|
108
|
-
constructor() {
|
|
109
|
-
this.
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
this.
|
|
113
|
-
|
|
114
|
-
startConnect() {
|
|
115
|
-
this.client.connect({}, () => this.onConnected(), () => this.onConnectError());
|
|
116
|
-
}
|
|
117
|
-
onEvent(primitiveEvent) {
|
|
118
|
-
const { domain, service, primitive, allUsers } = primitiveEvent;
|
|
119
|
-
const observable = new Subject();
|
|
120
|
-
const primitiveEventWithObservable = {
|
|
121
|
-
domain,
|
|
122
|
-
service,
|
|
123
|
-
primitive,
|
|
124
|
-
allUsers,
|
|
125
|
-
observable,
|
|
126
|
-
};
|
|
127
|
-
this.primitiveEventObservables.push(primitiveEventWithObservable);
|
|
128
|
-
return observable;
|
|
129
|
-
}
|
|
130
|
-
sendEvent(params) {
|
|
131
|
-
const topic = this.getTopicEvent(params);
|
|
132
|
-
this.client.send(topic, params.headers, JSON.stringify({
|
|
133
|
-
data: params.message
|
|
134
|
-
}));
|
|
323
|
+
let RefreshWebsocketAlertComponent = class RefreshWebsocketAlertComponent {
|
|
324
|
+
constructor(_messageService, _translateService) {
|
|
325
|
+
this._messageService = _messageService;
|
|
326
|
+
this._translateService = _translateService;
|
|
327
|
+
this.open = false;
|
|
328
|
+
this.closeRefreshSocket = new EventEmitter();
|
|
329
|
+
this.refresh = new EventEmitter();
|
|
135
330
|
}
|
|
136
|
-
|
|
137
|
-
this.
|
|
138
|
-
this.
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
331
|
+
ngOnInit() {
|
|
332
|
+
this.closeRefreshSocket.subscribe(() => {
|
|
333
|
+
this.open = false;
|
|
334
|
+
});
|
|
335
|
+
this.refresh.subscribe(() => {
|
|
336
|
+
this._messageService.clear(this.key);
|
|
337
|
+
this.closeRefreshSocket.emit();
|
|
142
338
|
});
|
|
143
339
|
}
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
.
|
|
152
|
-
|
|
340
|
+
show(message) {
|
|
341
|
+
if (!this.open) {
|
|
342
|
+
this.open = true;
|
|
343
|
+
const thisMessage = {
|
|
344
|
+
key: this.key,
|
|
345
|
+
summary: (message === null || message === void 0 ? void 0 : message.summary) || this._translateService.instant('crmx.angular_components.refresh_websocket_alert_summary_default'),
|
|
346
|
+
detail: (message === null || message === void 0 ? void 0 : message.detail) || this._translateService.instant('crmx.angular_components.refresh_websocket_alert_detail_default'),
|
|
347
|
+
severity: (message === null || message === void 0 ? void 0 : message.severity) || 'info',
|
|
348
|
+
life: 10000,
|
|
349
|
+
};
|
|
350
|
+
this._messageService.add(thisMessage);
|
|
153
351
|
}
|
|
154
|
-
topic = topic
|
|
155
|
-
.concat('/')
|
|
156
|
-
.concat(primitiveEvent.domain)
|
|
157
|
-
.concat('/')
|
|
158
|
-
.concat(primitiveEvent.service)
|
|
159
|
-
.concat('/')
|
|
160
|
-
.concat(primitiveEvent.primitive);
|
|
161
|
-
return topic;
|
|
162
352
|
}
|
|
163
353
|
};
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
354
|
+
RefreshWebsocketAlertComponent.ctorParameters = () => [
|
|
355
|
+
{ type: MessageService },
|
|
356
|
+
{ type: TranslateService }
|
|
357
|
+
];
|
|
358
|
+
__decorate([
|
|
359
|
+
Input()
|
|
360
|
+
], RefreshWebsocketAlertComponent.prototype, "key", void 0);
|
|
361
|
+
__decorate([
|
|
362
|
+
Output()
|
|
363
|
+
], RefreshWebsocketAlertComponent.prototype, "closeRefreshSocket", void 0);
|
|
364
|
+
__decorate([
|
|
365
|
+
Output()
|
|
366
|
+
], RefreshWebsocketAlertComponent.prototype, "refresh", void 0);
|
|
367
|
+
RefreshWebsocketAlertComponent = __decorate([
|
|
368
|
+
Component({
|
|
369
|
+
selector: 'refresh-websocket-alert',
|
|
370
|
+
template: "<p-toast [key]=\"key\" (onClose)=\"closeRefreshSocket.emit($event)\">\n <ng-template let-message pTemplate=\"message\">\n <span class=\"ui-toast-icon pi\"></span>\n <div class=\"ui-toast-message-text-content\">\n <div class=\"ui-toast-summary\">{{ message.summary }}</div>\n <div class=\"ui-toast-detail\">\n <span>{{ message.detail }}</span>\n <s-button\n [label]=\"'crmx.angular_components.refresh_websocket_alert_click_here' | translate\"\n priority=\"link\"\n (onClick)=\"refresh.emit()\"\n styleClass=\"refresh-websocket\"\n ></s-button>\n </div>\n </div>\n </ng-template>\n</p-toast>\n",
|
|
371
|
+
styles: [".refresh-websocket{height:20px!important}"]
|
|
168
372
|
})
|
|
169
|
-
],
|
|
373
|
+
], RefreshWebsocketAlertComponent);
|
|
374
|
+
|
|
375
|
+
let RefreshWebsocketAlertModule = class RefreshWebsocketAlertModule {
|
|
376
|
+
};
|
|
377
|
+
RefreshWebsocketAlertModule = __decorate([
|
|
378
|
+
NgModule({
|
|
379
|
+
imports: [
|
|
380
|
+
LocaleModule.forChild(),
|
|
381
|
+
ButtonModule,
|
|
382
|
+
TranslateModule,
|
|
383
|
+
ToastModule,
|
|
384
|
+
],
|
|
385
|
+
declarations: [
|
|
386
|
+
RefreshWebsocketAlertComponent,
|
|
387
|
+
],
|
|
388
|
+
exports: [
|
|
389
|
+
RefreshWebsocketAlertComponent,
|
|
390
|
+
]
|
|
391
|
+
})
|
|
392
|
+
], RefreshWebsocketAlertModule);
|
|
393
|
+
|
|
394
|
+
const fallback = {
|
|
395
|
+
"crmx.angular_components.cancel": "Cancelar",
|
|
396
|
+
"crmx.angular_components.confirm": "Gerar",
|
|
397
|
+
"crmx.angular_components.error_required": "Campo obrigatório",
|
|
398
|
+
"crmx.angular_components.error_unauthorized_title": "Acesso não autorizado",
|
|
399
|
+
"crmx.angular_components.error_unauthorized_description": "Você não tem permissão para utilizar o recurso desejado",
|
|
400
|
+
"crmx.angular_components.format": "Formato",
|
|
401
|
+
"crmx.angular_components.format_placeholder": "Selecione uma Opção",
|
|
402
|
+
"crmx.angular_components.report": "Relatório",
|
|
403
|
+
"crmx.angular_components.reports_help": "Listando todos relatórios com a tag '{{tag}}'",
|
|
404
|
+
"crmx.angular_components.reports_title": "Gerar Relatório",
|
|
405
|
+
"crmx.angular_components.refresh_websocket_alert_click_here": "Clique aqui",
|
|
406
|
+
"crmx.angular_components.refresh_websocket_alert_detail_default": "Para atualizar a tela",
|
|
407
|
+
"crmx.angular_components.refresh_websocket_alert_summary_default": "Atualização de dados"
|
|
408
|
+
};
|
|
170
409
|
|
|
171
410
|
class User {
|
|
172
411
|
constructor() {
|
|
@@ -365,15 +604,70 @@ class Collaborator {
|
|
|
365
604
|
}
|
|
366
605
|
}
|
|
367
606
|
|
|
607
|
+
let StorageService = class StorageService {
|
|
608
|
+
constructor(cookieService) {
|
|
609
|
+
this.cookieService = cookieService;
|
|
610
|
+
}
|
|
611
|
+
getUser() {
|
|
612
|
+
return JSON.parse(localStorage.getItem('SENIOR_USER_INFO')).data;
|
|
613
|
+
}
|
|
614
|
+
getUserId() {
|
|
615
|
+
return this.getUser().id;
|
|
616
|
+
}
|
|
617
|
+
store(key, value) {
|
|
618
|
+
const userId = this.getUserId();
|
|
619
|
+
localStorage.setItem(`${userId}_${key}`, JSON.stringify(value));
|
|
620
|
+
}
|
|
621
|
+
get(key) {
|
|
622
|
+
const userId = this.getUserId();
|
|
623
|
+
const value = localStorage.getItem(`${userId}_${key}`);
|
|
624
|
+
if (value) {
|
|
625
|
+
return JSON.parse(value);
|
|
626
|
+
}
|
|
627
|
+
return null;
|
|
628
|
+
}
|
|
629
|
+
getComSeniorToken() {
|
|
630
|
+
return JSON.parse(this.cookieService.get('com.senior.token'));
|
|
631
|
+
}
|
|
632
|
+
getBaseUrl() {
|
|
633
|
+
return this.cookieService.get('com.senior.base.url');
|
|
634
|
+
}
|
|
635
|
+
getTenantDomain() {
|
|
636
|
+
return this.getComSeniorToken().username.split('@')[1];
|
|
637
|
+
}
|
|
638
|
+
getTenantName() {
|
|
639
|
+
return this.getComSeniorToken().tenantName;
|
|
640
|
+
}
|
|
641
|
+
getUsername() {
|
|
642
|
+
return this.getComSeniorToken().username.split('@')[0];
|
|
643
|
+
}
|
|
644
|
+
getLogin() {
|
|
645
|
+
return this.getComSeniorToken().username;
|
|
646
|
+
}
|
|
647
|
+
getToken() {
|
|
648
|
+
return this.getComSeniorToken().access_token;
|
|
649
|
+
}
|
|
650
|
+
isUserAdmin() {
|
|
651
|
+
return this.getUsername() === 'admin';
|
|
652
|
+
}
|
|
653
|
+
};
|
|
654
|
+
StorageService.ctorParameters = () => [
|
|
655
|
+
{ type: CookieService }
|
|
656
|
+
];
|
|
657
|
+
StorageService = __decorate([
|
|
658
|
+
Injectable()
|
|
659
|
+
], StorageService);
|
|
660
|
+
|
|
368
661
|
let CurrentCollaboratorService = class CurrentCollaboratorService {
|
|
369
|
-
constructor(http) {
|
|
662
|
+
constructor(http, storageService) {
|
|
370
663
|
this.http = http;
|
|
664
|
+
this.storageService = storageService;
|
|
371
665
|
this.ngUnsubscribe = new Subject();
|
|
372
666
|
this.COLLABORATOR_KEY = 'CRMX_COLLABORATOR';
|
|
373
667
|
}
|
|
374
668
|
validate() {
|
|
375
669
|
this.call(false).subscribe((collaborator) => {
|
|
376
|
-
if (collaborator.active === false
|
|
670
|
+
if (collaborator.active === false) {
|
|
377
671
|
this.redirect('collaborator-inactive');
|
|
378
672
|
}
|
|
379
673
|
});
|
|
@@ -381,9 +675,21 @@ let CurrentCollaboratorService = class CurrentCollaboratorService {
|
|
|
381
675
|
get() {
|
|
382
676
|
return this.call(true);
|
|
383
677
|
}
|
|
678
|
+
getE070FilCrmxMaster() {
|
|
679
|
+
return new Observable(observer => {
|
|
680
|
+
this.call(true).subscribe((collaborator) => {
|
|
681
|
+
const e070FilCrmxMaster = Object.assign({}, collaborator.branches.find((branch) => branch.master));
|
|
682
|
+
if (e070FilCrmxMaster) {
|
|
683
|
+
e070FilCrmxMaster.collaborator = collaborator;
|
|
684
|
+
observer.next(e070FilCrmxMaster);
|
|
685
|
+
}
|
|
686
|
+
observer.complete();
|
|
687
|
+
});
|
|
688
|
+
});
|
|
689
|
+
}
|
|
384
690
|
call(useCache) {
|
|
385
691
|
return new Observable(observer => {
|
|
386
|
-
const collaboratorDto =
|
|
692
|
+
const collaboratorDto = this.storageService.get(this.COLLABORATOR_KEY);
|
|
387
693
|
if (collaboratorDto !== null && useCache) {
|
|
388
694
|
observer.next(Collaborator.fromDto(collaboratorDto));
|
|
389
695
|
}
|
|
@@ -391,21 +697,23 @@ let CurrentCollaboratorService = class CurrentCollaboratorService {
|
|
|
391
697
|
this.http.get('crmx_collaborator/foundation/queries/getCurrentCollaborator')
|
|
392
698
|
.pipe(takeUntil(this.ngUnsubscribe), catchError((err) => {
|
|
393
699
|
const statusCode = 404;
|
|
394
|
-
if (err.status === statusCode
|
|
700
|
+
if (err.status === statusCode) {
|
|
395
701
|
this.redirect('collaborator-not-found');
|
|
396
702
|
}
|
|
397
703
|
;
|
|
398
704
|
throw err;
|
|
399
705
|
}))
|
|
400
706
|
.subscribe(collaboratorDto => {
|
|
401
|
-
|
|
707
|
+
collaboratorDto = this.removeCircularReferences(collaboratorDto);
|
|
708
|
+
this.storageService.store(this.COLLABORATOR_KEY, collaboratorDto);
|
|
402
709
|
observer.next(Collaborator.fromDto(collaboratorDto));
|
|
403
710
|
});
|
|
404
711
|
}
|
|
712
|
+
observer.complete();
|
|
405
713
|
});
|
|
406
714
|
}
|
|
407
715
|
redirect(page) {
|
|
408
|
-
location.href =
|
|
716
|
+
location.href = `${this.storageService.getBaseUrl()}/gestao-relacionamento/crmx_collaborator/foundation/#/${page}`;
|
|
409
717
|
}
|
|
410
718
|
removeCircularReferences(obj) {
|
|
411
719
|
const seen = new WeakSet();
|
|
@@ -421,18 +729,32 @@ let CurrentCollaboratorService = class CurrentCollaboratorService {
|
|
|
421
729
|
}
|
|
422
730
|
};
|
|
423
731
|
CurrentCollaboratorService.ctorParameters = () => [
|
|
424
|
-
{ type: HttpClient }
|
|
732
|
+
{ type: HttpClient },
|
|
733
|
+
{ type: StorageService }
|
|
425
734
|
];
|
|
426
735
|
CurrentCollaboratorService = __decorate([
|
|
427
736
|
Injectable()
|
|
428
737
|
], CurrentCollaboratorService);
|
|
429
738
|
|
|
739
|
+
let StorageModule = class StorageModule {
|
|
740
|
+
};
|
|
741
|
+
StorageModule = __decorate([
|
|
742
|
+
NgModule({
|
|
743
|
+
imports: [],
|
|
744
|
+
providers: [
|
|
745
|
+
StorageService,
|
|
746
|
+
CookieService
|
|
747
|
+
],
|
|
748
|
+
})
|
|
749
|
+
], StorageModule);
|
|
750
|
+
|
|
430
751
|
let CurrentCollaboratorModule = class CurrentCollaboratorModule {
|
|
431
752
|
};
|
|
432
753
|
CurrentCollaboratorModule = __decorate([
|
|
433
754
|
NgModule({
|
|
434
755
|
imports: [
|
|
435
|
-
HttpClientModule
|
|
756
|
+
HttpClientModule,
|
|
757
|
+
StorageModule,
|
|
436
758
|
],
|
|
437
759
|
providers: [
|
|
438
760
|
CurrentCollaboratorService
|
|
@@ -440,6 +762,165 @@ CurrentCollaboratorModule = __decorate([
|
|
|
440
762
|
})
|
|
441
763
|
], CurrentCollaboratorModule);
|
|
442
764
|
|
|
765
|
+
var MonthEnum;
|
|
766
|
+
(function (MonthEnum) {
|
|
767
|
+
MonthEnum["JANUARY"] = "JANUARY";
|
|
768
|
+
MonthEnum["FEBRUARY"] = "FEBRUARY";
|
|
769
|
+
MonthEnum["MARCH"] = "MARCH";
|
|
770
|
+
MonthEnum["APRIL"] = "APRIL";
|
|
771
|
+
MonthEnum["MAY"] = "MAY";
|
|
772
|
+
MonthEnum["JUNE"] = "JUNE";
|
|
773
|
+
MonthEnum["JULY"] = "JULY";
|
|
774
|
+
MonthEnum["AUGUST"] = "AUGUST";
|
|
775
|
+
MonthEnum["SEPTEMBER"] = "SEPTEMBER";
|
|
776
|
+
MonthEnum["OCTOBER"] = "OCTOBER";
|
|
777
|
+
MonthEnum["NOVEMBER"] = "NOVEMBER";
|
|
778
|
+
MonthEnum["DECEMBER"] = "DECEMBER";
|
|
779
|
+
})(MonthEnum || (MonthEnum = {}));
|
|
780
|
+
|
|
781
|
+
var OrdinalWeekDayEnum;
|
|
782
|
+
(function (OrdinalWeekDayEnum) {
|
|
783
|
+
OrdinalWeekDayEnum["FIRST"] = "FIRST";
|
|
784
|
+
OrdinalWeekDayEnum["SECOND"] = "SECOND";
|
|
785
|
+
OrdinalWeekDayEnum["THIRD"] = "THIRD";
|
|
786
|
+
OrdinalWeekDayEnum["FOURTH"] = "FOURTH";
|
|
787
|
+
OrdinalWeekDayEnum["LAST"] = "LAST";
|
|
788
|
+
})(OrdinalWeekDayEnum || (OrdinalWeekDayEnum = {}));
|
|
789
|
+
|
|
790
|
+
var RecurrenceEnum;
|
|
791
|
+
(function (RecurrenceEnum) {
|
|
792
|
+
RecurrenceEnum["DAILY"] = "DAILY";
|
|
793
|
+
RecurrenceEnum["WEEKLY"] = "WEEKLY";
|
|
794
|
+
RecurrenceEnum["MONTHLY"] = "MONTHLY";
|
|
795
|
+
RecurrenceEnum["YEARLY"] = "YEARLY";
|
|
796
|
+
})(RecurrenceEnum || (RecurrenceEnum = {}));
|
|
797
|
+
|
|
798
|
+
var RepeatWhenEnum;
|
|
799
|
+
(function (RepeatWhenEnum) {
|
|
800
|
+
RepeatWhenEnum["IN_DAY"] = "IN_DAY";
|
|
801
|
+
RepeatWhenEnum["IN_ORDINAL_WEEK_DAY"] = "IN_ORDINAL_WEEK_DAY";
|
|
802
|
+
})(RepeatWhenEnum || (RepeatWhenEnum = {}));
|
|
803
|
+
|
|
804
|
+
var WeekDayEnum;
|
|
805
|
+
(function (WeekDayEnum) {
|
|
806
|
+
WeekDayEnum["SUNDAY"] = "SUNDAY";
|
|
807
|
+
WeekDayEnum["MONDAY"] = "MONDAY";
|
|
808
|
+
WeekDayEnum["TUESDAY"] = "TUESDAY";
|
|
809
|
+
WeekDayEnum["WEDNESDAY"] = "WEDNESDAY";
|
|
810
|
+
WeekDayEnum["THURSDAY"] = "THURSDAY";
|
|
811
|
+
WeekDayEnum["FRIDAY"] = "FRIDAY";
|
|
812
|
+
WeekDayEnum["SATURDAY"] = "SATURDAY";
|
|
813
|
+
})(WeekDayEnum || (WeekDayEnum = {}));
|
|
814
|
+
|
|
815
|
+
let ScheduleFormRulesService = class ScheduleFormRulesService {
|
|
816
|
+
constructor() {
|
|
817
|
+
this.ngUnsubscribe = new Subject();
|
|
818
|
+
}
|
|
819
|
+
recurrencesValueChangeSubscribe(formGroup, formFields) {
|
|
820
|
+
this.recurrenceValueChangeSubscribe(formGroup, formFields);
|
|
821
|
+
this.repeatWhenValueChangeSubscribe(formGroup, formFields);
|
|
822
|
+
}
|
|
823
|
+
valueChangeSubscribe(formGroup, formFields) {
|
|
824
|
+
this.allDayValueChangeSubscribe(formGroup, formFields);
|
|
825
|
+
}
|
|
826
|
+
allDayValueChangeSubscribe(formGroup, formFields) {
|
|
827
|
+
formGroup.controls.allDay.valueChanges.pipe(takeUntil(this.ngUnsubscribe)).subscribe((value) => {
|
|
828
|
+
const fields = ['startTime', 'endTime'];
|
|
829
|
+
if (value) {
|
|
830
|
+
this.disableFields(formGroup, formFields, fields);
|
|
831
|
+
}
|
|
832
|
+
else {
|
|
833
|
+
this.enableFields(formGroup, formFields, fields);
|
|
834
|
+
}
|
|
835
|
+
});
|
|
836
|
+
}
|
|
837
|
+
recurrenceValueChangeSubscribe(formGroup, formFields) {
|
|
838
|
+
formGroup.controls.recurrence.valueChanges.pipe(takeUntil(this.ngUnsubscribe)).subscribe((value) => {
|
|
839
|
+
const fieldsToDisable = ['weekDays', 'repeatWhen', 'repeatWhenDay', 'repeatWhenMonth', 'repeatWhenOrdinalWeekDay', 'repeatWhenWeekMonth'];
|
|
840
|
+
this.disableFields(formGroup, formFields, fieldsToDisable);
|
|
841
|
+
if (value === RecurrenceEnum.WEEKLY) {
|
|
842
|
+
const fieldWeekDays = formFields.find((field) => field.name === 'weekDays');
|
|
843
|
+
fieldWeekDays.visible = () => true;
|
|
844
|
+
fieldWeekDays.required = () => true;
|
|
845
|
+
formGroup.controls.weekDays.setValidators([Validators.required]);
|
|
846
|
+
}
|
|
847
|
+
if (value === RecurrenceEnum.MONTHLY || value === RecurrenceEnum.YEARLY) {
|
|
848
|
+
const fieldRepeatWhen = formFields.find((field) => field.name === 'repeatWhen');
|
|
849
|
+
fieldRepeatWhen.visible = () => true;
|
|
850
|
+
fieldRepeatWhen.required = () => true;
|
|
851
|
+
formGroup.controls.repeatWhen.setValidators([Validators.required]);
|
|
852
|
+
formGroup.controls.repeatWhen.setValue(RepeatWhenEnum.IN_DAY);
|
|
853
|
+
}
|
|
854
|
+
});
|
|
855
|
+
}
|
|
856
|
+
repeatWhenValueChangeSubscribe(formGroup, formFields) {
|
|
857
|
+
formGroup.controls.repeatWhen.valueChanges.pipe(takeUntil(this.ngUnsubscribe)).subscribe((value) => {
|
|
858
|
+
const fieldsToDisable = ['repeatWhenDay', 'repeatWhenOrdinalWeekDay', 'repeatWhenWeekMonth', 'repeatWhenMonth'];
|
|
859
|
+
this.disableFields(formGroup, formFields, fieldsToDisable);
|
|
860
|
+
if (value === RepeatWhenEnum.IN_DAY) {
|
|
861
|
+
const fieldRepeatWhenDay = formFields.find((field) => field.name === 'repeatWhenDay');
|
|
862
|
+
fieldRepeatWhenDay.visible = () => true;
|
|
863
|
+
fieldRepeatWhenDay.required = () => true;
|
|
864
|
+
formGroup.controls.repeatWhenDay.setValidators([Validators.required]);
|
|
865
|
+
}
|
|
866
|
+
if (value === RepeatWhenEnum.IN_ORDINAL_WEEK_DAY) {
|
|
867
|
+
const fieldsToEnable = ['repeatWhenOrdinalWeekDay', 'repeatWhenWeekMonth'];
|
|
868
|
+
this.enableFields(formGroup, formFields, fieldsToEnable);
|
|
869
|
+
}
|
|
870
|
+
if (value !== undefined && formGroup.controls.recurrence.value === RecurrenceEnum.YEARLY) {
|
|
871
|
+
const fieldRepeatWhenMonth = formFields.find((field) => field.name === 'repeatWhenMonth');
|
|
872
|
+
fieldRepeatWhenMonth.visible = () => true;
|
|
873
|
+
fieldRepeatWhenMonth.required = () => true;
|
|
874
|
+
formGroup.controls.repeatWhenMonth.setValidators([Validators.required]);
|
|
875
|
+
}
|
|
876
|
+
});
|
|
877
|
+
}
|
|
878
|
+
disableFields(formGroup, formFields, fields) {
|
|
879
|
+
formFields
|
|
880
|
+
.filter((field) => fields.includes(field.name))
|
|
881
|
+
.forEach((field) => {
|
|
882
|
+
field.visible = () => false;
|
|
883
|
+
field.required = () => false;
|
|
884
|
+
});
|
|
885
|
+
for (const controlsKey in formGroup.controls) {
|
|
886
|
+
if (fields.includes(controlsKey)) {
|
|
887
|
+
const fieldFormGroup = formGroup.controls[controlsKey];
|
|
888
|
+
fieldFormGroup.setValue(undefined);
|
|
889
|
+
fieldFormGroup.clearValidators();
|
|
890
|
+
fieldFormGroup.setErrors(null);
|
|
891
|
+
}
|
|
892
|
+
}
|
|
893
|
+
}
|
|
894
|
+
enableFields(formGroup, formFields, fields) {
|
|
895
|
+
formFields
|
|
896
|
+
.filter((field) => fields.includes(field.name))
|
|
897
|
+
.forEach((field) => {
|
|
898
|
+
field.visible = () => true;
|
|
899
|
+
field.required = () => true;
|
|
900
|
+
});
|
|
901
|
+
for (const controlsKey in formGroup.controls) {
|
|
902
|
+
if (fields.includes(controlsKey)) {
|
|
903
|
+
const fieldFormGroup = formGroup.controls[controlsKey];
|
|
904
|
+
fieldFormGroup.setValidators([Validators.required]);
|
|
905
|
+
}
|
|
906
|
+
}
|
|
907
|
+
}
|
|
908
|
+
};
|
|
909
|
+
ScheduleFormRulesService = __decorate([
|
|
910
|
+
Injectable()
|
|
911
|
+
], ScheduleFormRulesService);
|
|
912
|
+
|
|
913
|
+
let ScheduleFormRulesModule = class ScheduleFormRulesModule {
|
|
914
|
+
};
|
|
915
|
+
ScheduleFormRulesModule = __decorate([
|
|
916
|
+
NgModule({
|
|
917
|
+
imports: [],
|
|
918
|
+
providers: [
|
|
919
|
+
ScheduleFormRulesService
|
|
920
|
+
],
|
|
921
|
+
})
|
|
922
|
+
], ScheduleFormRulesModule);
|
|
923
|
+
|
|
443
924
|
let StandardFiltersService = class StandardFiltersService {
|
|
444
925
|
constructor(currentCollaboratorService) {
|
|
445
926
|
this.currentCollaboratorService = currentCollaboratorService;
|
|
@@ -495,9 +976,228 @@ StandardFiltersModule = __decorate([
|
|
|
495
976
|
})
|
|
496
977
|
], StandardFiltersModule);
|
|
497
978
|
|
|
979
|
+
class FormGroupValidatorsService {
|
|
980
|
+
static startDataGreaterThanEndDataValidator(endDateField, errorMessage) {
|
|
981
|
+
const fn = function (control) {
|
|
982
|
+
var _a;
|
|
983
|
+
if (control.parent) {
|
|
984
|
+
const startDate = new Date(control.value);
|
|
985
|
+
const endDate = new Date((_a = control.parent.controls[endDateField]) === null || _a === void 0 ? void 0 : _a.value);
|
|
986
|
+
if (startDate > endDate) {
|
|
987
|
+
const rtn = {};
|
|
988
|
+
rtn[errorMessage] = true;
|
|
989
|
+
return rtn;
|
|
990
|
+
}
|
|
991
|
+
}
|
|
992
|
+
return null;
|
|
993
|
+
};
|
|
994
|
+
return fn;
|
|
995
|
+
}
|
|
996
|
+
static endDateLessThanStartDateValidator(startDateField, errorMessage) {
|
|
997
|
+
const fn = function (control) {
|
|
998
|
+
var _a;
|
|
999
|
+
if (control.parent) {
|
|
1000
|
+
const startDate = new Date((_a = control.parent.controls[startDateField]) === null || _a === void 0 ? void 0 : _a.value);
|
|
1001
|
+
const endDate = new Date(control.value);
|
|
1002
|
+
if (startDate > endDate) {
|
|
1003
|
+
const rtn = {};
|
|
1004
|
+
rtn[errorMessage] = true;
|
|
1005
|
+
return rtn;
|
|
1006
|
+
}
|
|
1007
|
+
}
|
|
1008
|
+
return null;
|
|
1009
|
+
};
|
|
1010
|
+
return fn;
|
|
1011
|
+
}
|
|
1012
|
+
;
|
|
1013
|
+
}
|
|
1014
|
+
|
|
1015
|
+
class DateValidatorsService {
|
|
1016
|
+
static isLastWeekdayOfMonth(date) {
|
|
1017
|
+
const newDate = new Date(date);
|
|
1018
|
+
const day = 7;
|
|
1019
|
+
newDate.setDate(date.getDate() + day);
|
|
1020
|
+
return newDate.getMonth() > date.getMonth() || newDate.getFullYear() > date.getFullYear();
|
|
1021
|
+
}
|
|
1022
|
+
}
|
|
1023
|
+
|
|
1024
|
+
class Topic {
|
|
1025
|
+
static fromDto(topicDto) {
|
|
1026
|
+
const topic = new Topic();
|
|
1027
|
+
Object.assign(topic, topicDto);
|
|
1028
|
+
return topic;
|
|
1029
|
+
}
|
|
1030
|
+
getTopic(tenantDomain, token) {
|
|
1031
|
+
let topic = '/topic/'.concat(tenantDomain);
|
|
1032
|
+
if (this.allUsers === false) {
|
|
1033
|
+
topic = topic
|
|
1034
|
+
.concat('/')
|
|
1035
|
+
.concat(token);
|
|
1036
|
+
}
|
|
1037
|
+
return topic.concat(this.toString());
|
|
1038
|
+
}
|
|
1039
|
+
toString() {
|
|
1040
|
+
return '/'
|
|
1041
|
+
.concat(this.domain)
|
|
1042
|
+
.concat('/')
|
|
1043
|
+
.concat(this.service)
|
|
1044
|
+
.concat('/')
|
|
1045
|
+
.concat(this.primitive);
|
|
1046
|
+
}
|
|
1047
|
+
}
|
|
1048
|
+
|
|
1049
|
+
class Event extends Topic {
|
|
1050
|
+
static fromDto(eventDto) {
|
|
1051
|
+
const event = new Event();
|
|
1052
|
+
Object.assign(event, eventDto);
|
|
1053
|
+
return event;
|
|
1054
|
+
}
|
|
1055
|
+
match(event) {
|
|
1056
|
+
return this.toString() === event.toString()
|
|
1057
|
+
&& this.originCallback === event.originCallback;
|
|
1058
|
+
}
|
|
1059
|
+
}
|
|
1060
|
+
|
|
1061
|
+
let WebsocketService = class WebsocketService {
|
|
1062
|
+
constructor(router, storageService) {
|
|
1063
|
+
this.router = router;
|
|
1064
|
+
this.storageService = storageService;
|
|
1065
|
+
this._client = Stomp.over(new SockJS(this.storageService.getBaseUrl().concat('/websocket/subscription')));
|
|
1066
|
+
this._bindQueue = new Subject();
|
|
1067
|
+
this._eventBindingList = [];
|
|
1068
|
+
this._messageQueue = [];
|
|
1069
|
+
this._bindQueue.pipe(concatMap(event => this._bindObservable(event))).subscribe();
|
|
1070
|
+
}
|
|
1071
|
+
bind(eventDto) {
|
|
1072
|
+
eventDto.originCallback = eventDto.originCallback || this.router.url;
|
|
1073
|
+
this._bindQueue.next(Event.fromDto(eventDto));
|
|
1074
|
+
}
|
|
1075
|
+
_bindObservable(event) {
|
|
1076
|
+
return new Observable(observer => {
|
|
1077
|
+
if (this._client.connected) {
|
|
1078
|
+
this._registerBind(event);
|
|
1079
|
+
this._finishBindObservable(observer);
|
|
1080
|
+
}
|
|
1081
|
+
else {
|
|
1082
|
+
this._connectClient(event, observer);
|
|
1083
|
+
}
|
|
1084
|
+
});
|
|
1085
|
+
}
|
|
1086
|
+
_finishBindObservable(observer) {
|
|
1087
|
+
observer.next();
|
|
1088
|
+
observer.complete();
|
|
1089
|
+
}
|
|
1090
|
+
_connectClient(event, observer) {
|
|
1091
|
+
this._client.connect({}, () => {
|
|
1092
|
+
this._registerBind(event);
|
|
1093
|
+
this._finishBindObservable(observer);
|
|
1094
|
+
}, () => observer.error(new Error('Websocket connection error!')));
|
|
1095
|
+
}
|
|
1096
|
+
_registerBind(event) {
|
|
1097
|
+
const eventBinding = this._findEventBinding(event);
|
|
1098
|
+
if (eventBinding) {
|
|
1099
|
+
this._remakeBind(event, eventBinding);
|
|
1100
|
+
}
|
|
1101
|
+
else {
|
|
1102
|
+
this._makeBind(event);
|
|
1103
|
+
}
|
|
1104
|
+
}
|
|
1105
|
+
_remakeBind(event, eventBinding) {
|
|
1106
|
+
eventBinding.callback = event.callback;
|
|
1107
|
+
this._messageQueue
|
|
1108
|
+
.filter(messageQueue => messageQueue.event.match(event))
|
|
1109
|
+
.forEach(messageQueue => this._executeCallback(messageQueue.message, event));
|
|
1110
|
+
}
|
|
1111
|
+
_makeBind(event) {
|
|
1112
|
+
this._eventBindingList.push(event);
|
|
1113
|
+
this._client.subscribe(event.getTopic(this.storageService.getTenantDomain(), this.storageService.getToken()), (message) => this._executeCallback(message, event));
|
|
1114
|
+
}
|
|
1115
|
+
_executeCallback(message, event) {
|
|
1116
|
+
const eventBinding = this._findEventBinding(event);
|
|
1117
|
+
if (eventBinding.originCallback === this.router.url) {
|
|
1118
|
+
this._findEventBinding(event).callback(this._resolveRefs(JSON.parse(message.body).data));
|
|
1119
|
+
}
|
|
1120
|
+
else {
|
|
1121
|
+
this._messageQueue
|
|
1122
|
+
.filter(messageQueue => messageQueue.event.match(event))
|
|
1123
|
+
.forEach((messageQueue, index) => this._messageQueue.splice(index, 1));
|
|
1124
|
+
this._messageQueue.push({ message, event });
|
|
1125
|
+
}
|
|
1126
|
+
}
|
|
1127
|
+
_findEventBinding(event) {
|
|
1128
|
+
return this._eventBindingList.find(eventBinding => eventBinding.match(event));
|
|
1129
|
+
}
|
|
1130
|
+
_resolveRefs(payload) {
|
|
1131
|
+
const resolve = (obj, rootObj) => {
|
|
1132
|
+
if (Array.isArray(obj)) {
|
|
1133
|
+
obj.forEach(item => resolve(item, rootObj));
|
|
1134
|
+
}
|
|
1135
|
+
if (obj !== null && typeof obj === 'object') {
|
|
1136
|
+
Object.keys(obj).forEach(key => {
|
|
1137
|
+
if (key === '$ref' && obj[key]) {
|
|
1138
|
+
const refPath = obj[key]; // Caminho da referência
|
|
1139
|
+
Object.assign(obj, getDataFromRef(refPath, rootObj));
|
|
1140
|
+
delete obj[key];
|
|
1141
|
+
}
|
|
1142
|
+
else {
|
|
1143
|
+
resolve(obj[key], rootObj);
|
|
1144
|
+
}
|
|
1145
|
+
});
|
|
1146
|
+
}
|
|
1147
|
+
};
|
|
1148
|
+
const getDataFromRef = (ref, rootObj) => {
|
|
1149
|
+
const regex = /\["(.*?)"\]/g;
|
|
1150
|
+
const result = [];
|
|
1151
|
+
let match;
|
|
1152
|
+
while ((match = regex.exec(ref)) !== null) {
|
|
1153
|
+
result.push(match[1]);
|
|
1154
|
+
}
|
|
1155
|
+
return result.reduce((acc, part) => acc && acc[part], rootObj);
|
|
1156
|
+
};
|
|
1157
|
+
resolve(payload, payload);
|
|
1158
|
+
return payload;
|
|
1159
|
+
}
|
|
1160
|
+
};
|
|
1161
|
+
WebsocketService.ctorParameters = () => [
|
|
1162
|
+
{ type: Router },
|
|
1163
|
+
{ type: StorageService }
|
|
1164
|
+
];
|
|
1165
|
+
WebsocketService.ɵprov = ɵɵdefineInjectable({ factory: function WebsocketService_Factory() { return new WebsocketService(ɵɵinject(Router), ɵɵinject(StorageService)); }, token: WebsocketService, providedIn: "root" });
|
|
1166
|
+
WebsocketService = __decorate([
|
|
1167
|
+
Injectable({
|
|
1168
|
+
providedIn: 'root',
|
|
1169
|
+
})
|
|
1170
|
+
], WebsocketService);
|
|
1171
|
+
|
|
1172
|
+
let WebsocketModule = class WebsocketModule {
|
|
1173
|
+
};
|
|
1174
|
+
WebsocketModule = __decorate([
|
|
1175
|
+
NgModule({
|
|
1176
|
+
imports: [
|
|
1177
|
+
RouterModule,
|
|
1178
|
+
],
|
|
1179
|
+
providers: [
|
|
1180
|
+
WebsocketService,
|
|
1181
|
+
]
|
|
1182
|
+
})
|
|
1183
|
+
], WebsocketModule);
|
|
1184
|
+
|
|
1185
|
+
class StringConverterService {
|
|
1186
|
+
static toUnderscore(camelCase) {
|
|
1187
|
+
const regex = /([a-z])([A-Z])/g;
|
|
1188
|
+
return camelCase.replace(regex, '$1_$2').toLowerCase();
|
|
1189
|
+
}
|
|
1190
|
+
}
|
|
1191
|
+
|
|
1192
|
+
class ValueChangesService {
|
|
1193
|
+
static pipeDefault(control) {
|
|
1194
|
+
return control.valueChanges.pipe(distinctUntilChanged());
|
|
1195
|
+
}
|
|
1196
|
+
}
|
|
1197
|
+
|
|
498
1198
|
/**
|
|
499
1199
|
* Generated bundle index. Do not edit.
|
|
500
1200
|
*/
|
|
501
1201
|
|
|
502
|
-
export { Collaborator, CollaboratorE070FilCrmx, CollaboratorSquad, CurrentCollaboratorModule, CurrentCollaboratorService, DateValidatorsService, E070Emp, E070Fil, E070FilCrmx, FormGroupValidatorsService, Squad, StandardFiltersModule, StandardFiltersService, StorageService, StringConverterService, User, WebsocketService,
|
|
1202
|
+
export { Collaborator, CollaboratorE070FilCrmx, CollaboratorSquad, CurrentCollaboratorModule, CurrentCollaboratorService, DateValidatorsService, E070Emp, E070Fil, E070FilCrmx, Event, FormGroupValidatorsService, FormatEnum, MonthEnum, OrdinalWeekDayEnum, RecurrenceEnum, RefreshWebsocketAlertComponent, RefreshWebsocketAlertModule, RepeatWhenEnum, ReportsComponent, ReportsModule, ReportsService, ScheduleFormRulesModule, ScheduleFormRulesService, Squad, StandardFiltersModule, StandardFiltersService, StorageService, StringConverterService, Topic, User, ValueChangesService, ViewModeEnum, WebsocketModule, WebsocketService, WeekDayEnum, fallback, StorageModule as ɵa, CurrentCollaboratorModule as ɵb, CurrentCollaboratorService as ɵc };
|
|
503
1203
|
//# sourceMappingURL=senior-gestao-relacionamento-angular-components.js.map
|