@datarailsshared/datarailsshared 1.4.156-rocket → 1.4.158-rocket

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/bundles/datarailsshared-datarailsshared.umd.js +590 -1084
  2. package/bundles/datarailsshared-datarailsshared.umd.js.map +1 -1
  3. package/datarailsshared-datarailsshared-1.4.158-rocket.tgz +0 -0
  4. package/datarailsshared-datarailsshared.d.ts +10 -12
  5. package/datarailsshared-datarailsshared.metadata.json +1 -1
  6. package/esm2015/datarailsshared-datarailsshared.js +11 -13
  7. package/esm2015/lib/date-tags/date-tag.component.js +4 -2
  8. package/esm2015/lib/date-tags/date-tag.module.js +3 -1
  9. package/esm2015/lib/date-tags/day-tag/day-tag.component.js +10 -15
  10. package/esm2015/lib/date-tags/forecast-tag/forecast-tag.component.js +3 -1
  11. package/esm2015/lib/date-tags/month-tag/month-tag.component.js +10 -15
  12. package/esm2015/lib/date-tags/week-tag/week-tag.component.js +3 -13
  13. package/esm2015/lib/date-tags/year-tag/year-tag.component.js +10 -15
  14. package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.js +1 -1
  15. package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.js +3 -3
  16. package/esm2015/lib/dr-inputs/date-pickers/services/dr-date-picker.service.js +2 -5
  17. package/esm2015/lib/dr-inputs/dr-inputs.module.js +2 -3
  18. package/esm2015/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.js +3 -8
  19. package/esm2015/lib/dr-tags/dr-tag.component.js +7 -17
  20. package/esm2015/lib/dr-tags/dr-tag.module.js +4 -3
  21. package/esm2015/lib/models/serverTags.js +1 -13
  22. package/esm2015/public-api.js +2 -7
  23. package/fesm2015/datarailsshared-datarailsshared.js +701 -1158
  24. package/fesm2015/datarailsshared-datarailsshared.js.map +1 -1
  25. package/lib/dr-inputs/date-pickers/services/dr-date-picker.service.d.ts +13 -12
  26. package/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.d.ts +0 -3
  27. package/lib/dr-tags/dr-tag.component.d.ts +3 -7
  28. package/lib/models/serverTags.d.ts +1 -15
  29. package/package.json +1 -1
  30. package/public-api.d.ts +2 -6
  31. package/datarailsshared-datarailsshared-1.4.156-rocket.tgz +0 -0
  32. package/esm2015/lib/dr-inputs/dr-toggle-button/toggle-button-theme.js +0 -6
  33. package/esm2015/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.js +0 -87
  34. package/esm2015/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.js +0 -74
  35. package/esm2015/lib/dr-scenario/consts/scenario-tags-config.js +0 -73
  36. package/esm2015/lib/dr-scenario/dr-scenario.module.js +0 -28
  37. package/esm2015/lib/dr-scenario/interfaces/scenario.js +0 -8
  38. package/esm2015/lib/dr-scenario/services/scenario.service.js +0 -160
  39. package/lib/dr-inputs/dr-toggle-button/toggle-button-theme.d.ts +0 -4
  40. package/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.d.ts +0 -25
  41. package/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.d.ts +0 -26
  42. package/lib/dr-scenario/consts/scenario-tags-config.d.ts +0 -24
  43. package/lib/dr-scenario/dr-scenario.module.d.ts +0 -2
  44. package/lib/dr-scenario/interfaces/scenario.d.ts +0 -43
  45. package/lib/dr-scenario/services/scenario.service.d.ts +0 -21
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/material/core'), require('@angular/material-moment-adapter'), require('lodash'), require('@angular/forms'), require('@angular/common'), require('rxjs'), require('rxjs/operators'), require('@ng-select/ng-select'), require('@angular/animations'), require('@angular/cdk/overlay'), require('@angular/cdk/portal'), require('@angular/material/dialog'), require('@angular/material/datepicker'), require('moment'), require('@angular/material/tooltip'), require('@angular/material/tabs'), require('@angular/platform-browser')) :
3
- typeof define === 'function' && define.amd ? define('@datarailsshared/datarailsshared', ['exports', '@angular/core', '@angular/material/core', '@angular/material-moment-adapter', 'lodash', '@angular/forms', '@angular/common', 'rxjs', 'rxjs/operators', '@ng-select/ng-select', '@angular/animations', '@angular/cdk/overlay', '@angular/cdk/portal', '@angular/material/dialog', '@angular/material/datepicker', 'moment', '@angular/material/tooltip', '@angular/material/tabs', '@angular/platform-browser'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.datarailsshared = global.datarailsshared || {}, global.datarailsshared.datarailsshared = {}), global.ng.core, global.ng.material.core, global.ng.materialMomentAdapter, global._, global.ng.forms, global.ng.common, global.rxjs, global.rxjs.operators, global.ngSelect, global.ng.animations, global.ng.cdk.overlay, global.ng.cdk.portal, global.ng.material.dialog, global.ng.material.datepicker, global.moment$9, global.ng.material.tooltip, global.ng.material.tabs, global.ng.platformBrowser));
5
- })(this, (function (exports, i0, core, materialMomentAdapter, _, forms, common, rxjs, operators, ngSelect, animations, i1, portal, i1$1, datepicker, moment$9, tooltip, tabs, platformBrowser) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('rxjs'), require('moment'), require('lodash'), require('@angular/forms'), require('@angular/common'), require('rxjs/operators'), require('@ng-select/ng-select'), require('@angular/animations'), require('@angular/cdk/overlay'), require('@angular/cdk/portal'), require('@angular/material/dialog'), require('@angular/material/datepicker'), require('@angular/material/core'), require('@angular/material-moment-adapter'), require('@angular/material/tooltip'), require('@angular/material/tabs'), require('@angular/platform-browser')) :
3
+ typeof define === 'function' && define.amd ? define('@datarailsshared/datarailsshared', ['exports', '@angular/core', 'rxjs', 'moment', 'lodash', '@angular/forms', '@angular/common', 'rxjs/operators', '@ng-select/ng-select', '@angular/animations', '@angular/cdk/overlay', '@angular/cdk/portal', '@angular/material/dialog', '@angular/material/datepicker', '@angular/material/core', '@angular/material-moment-adapter', '@angular/material/tooltip', '@angular/material/tabs', '@angular/platform-browser'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.datarailsshared = global.datarailsshared || {}, global.datarailsshared.datarailsshared = {}), global.ng.core, global.rxjs, global.moment$9, global._, global.ng.forms, global.ng.common, global.rxjs.operators, global.ngSelect, global.ng.animations, global.ng.cdk.overlay, global.ng.cdk.portal, global.ng.material.dialog, global.ng.material.datepicker, global.ng.material.core, global.ng.materialMomentAdapter, global.ng.material.tooltip, global.ng.material.tabs, global.ng.platformBrowser));
5
+ })(this, (function (exports, i0, rxjs, moment$9, _, forms, common, operators, ngSelect, animations, i1, portal, i1$1, datepicker, core, materialMomentAdapter, tooltip, tabs, platformBrowser) { 'use strict';
6
6
 
7
7
  function _interopNamespace(e) {
8
8
  if (e && e.__esModule) return e;
@@ -23,10 +23,330 @@
23
23
  }
24
24
 
25
25
  var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
26
+ var moment__namespace = /*#__PURE__*/_interopNamespace(moment$9);
26
27
  var ___namespace = /*#__PURE__*/_interopNamespace(_);
27
28
  var i1__namespace = /*#__PURE__*/_interopNamespace(i1);
28
29
  var i1__namespace$1 = /*#__PURE__*/_interopNamespace(i1$1);
29
- var moment__namespace = /*#__PURE__*/_interopNamespace(moment$9);
30
+
31
+ exports.DateFromats = void 0;
32
+ (function (DateFromats) {
33
+ DateFromats["MAT_DEFAULT_DATE_FORMAT"] = "MM/DD/yyyy";
34
+ DateFromats["DATE_INPUT_FORMAT"] = "YYYY/MM/DD";
35
+ DateFromats["YEAR_FORMAT"] = "yyyy";
36
+ DateFromats["MONTH_YEAR_FORMAT"] = "MM/yyyy";
37
+ DateFromats["QUARTER_FORMAT"] = "Q/yyyy";
38
+ DateFromats["WEEK_FORMAT"] = "W/yyyy";
39
+ })(exports.DateFromats || (exports.DateFromats = {}));
40
+ var CustomDateFormat = /** @class */ (function () {
41
+ function CustomDateFormat() {
42
+ this._parse = {
43
+ dateInput: exports.DateFromats.DATE_INPUT_FORMAT,
44
+ };
45
+ this._display = {
46
+ dateInput: exports.DateFromats.DATE_INPUT_FORMAT,
47
+ monthYearLabel: 'MMM YYYY',
48
+ dateA11yLabel: 'LL',
49
+ monthYearA11yLabel: 'MMM YYYY',
50
+ quarterYearLabel: 'Q/YYYY',
51
+ yearLabel: 'YYYY'
52
+ };
53
+ }
54
+ Object.defineProperty(CustomDateFormat.prototype, "parse", {
55
+ get: function () {
56
+ return this._parse;
57
+ },
58
+ set: function (parse) {
59
+ this._parse = Object.assign({}, this._parse, parse);
60
+ },
61
+ enumerable: false,
62
+ configurable: true
63
+ });
64
+ Object.defineProperty(CustomDateFormat.prototype, "display", {
65
+ get: function () {
66
+ return this._display;
67
+ },
68
+ set: function (display) {
69
+ this._display = Object.assign({}, this._display, display);
70
+ },
71
+ enumerable: false,
72
+ configurable: true
73
+ });
74
+ CustomDateFormat.prototype.updateDateFormat = function (parse, display) {
75
+ this.parse = parse;
76
+ if (!display) {
77
+ display = parse;
78
+ }
79
+ this.display = display;
80
+ };
81
+ return CustomDateFormat;
82
+ }());
83
+ exports.DatePickerPeriodPosition = void 0;
84
+ (function (DatePickerPeriodPosition) {
85
+ DatePickerPeriodPosition[DatePickerPeriodPosition["END_OF_PERIOD"] = 0] = "END_OF_PERIOD";
86
+ DatePickerPeriodPosition[DatePickerPeriodPosition["MIDDLE_OF_PERIOD"] = 1] = "MIDDLE_OF_PERIOD";
87
+ DatePickerPeriodPosition[DatePickerPeriodPosition["START_OF_PERIOD"] = 2] = "START_OF_PERIOD";
88
+ DatePickerPeriodPosition[DatePickerPeriodPosition["DEFAULT"] = 3] = "DEFAULT";
89
+ })(exports.DatePickerPeriodPosition || (exports.DatePickerPeriodPosition = {}));
90
+ exports.TimeframeOption = void 0;
91
+ (function (TimeframeOption) {
92
+ TimeframeOption["DAY"] = "day";
93
+ TimeframeOption["MONTH"] = "month";
94
+ TimeframeOption["QUARTER"] = "quarter";
95
+ TimeframeOption["WEEK"] = "week";
96
+ TimeframeOption["YEAR"] = "year";
97
+ })(exports.TimeframeOption || (exports.TimeframeOption = {}));
98
+ exports.CalendarView = void 0;
99
+ (function (CalendarView) {
100
+ CalendarView["FOR_DAYS"] = "month";
101
+ CalendarView["FOR_MONTHS"] = "year";
102
+ CalendarView["FOR_QUARTERS"] = "none";
103
+ CalendarView["FOR_YEARS"] = "multi-year";
104
+ })(exports.CalendarView || (exports.CalendarView = {}));
105
+ exports.DateTags = void 0;
106
+ (function (DateTags) {
107
+ DateTags["TODAY"] = "today";
108
+ DateTags["YESTERDAY"] = "yesterday";
109
+ DateTags["THIS_MONTH"] = "this_month";
110
+ DateTags["PREV_MONTH"] = "prev_month";
111
+ })(exports.DateTags || (exports.DateTags = {}));
112
+
113
+ var DrSharedUtils = /** @class */ (function () {
114
+ function DrSharedUtils() {
115
+ }
116
+ /**
117
+ * Get timeframe (day, year, month, quarter) based on passed format
118
+ *
119
+ * @param format - date format string. Examples: MM/DD/YYYY, Q/YYYY
120
+ */
121
+ DrSharedUtils.getTimeframeByDateFormat = function (format) {
122
+ var defaultFrame = exports.TimeframeOption.DAY;
123
+ if (!format) {
124
+ return defaultFrame;
125
+ }
126
+ var lowerCaseFormat = format.toLowerCase();
127
+ switch (true) {
128
+ case lowerCaseFormat.includes('q'):
129
+ return exports.TimeframeOption.QUARTER;
130
+ case lowerCaseFormat.includes('d'):
131
+ return exports.TimeframeOption.DAY;
132
+ case lowerCaseFormat.includes('w'):
133
+ return exports.TimeframeOption.WEEK;
134
+ case lowerCaseFormat.includes('m'):
135
+ return exports.TimeframeOption.MONTH;
136
+ case lowerCaseFormat.includes('y'):
137
+ return exports.TimeframeOption.YEAR;
138
+ default:
139
+ return defaultFrame;
140
+ }
141
+ };
142
+ DrSharedUtils.getDateByTag = function (tag) {
143
+ var todayDate = moment__namespace().utc().endOf('day');
144
+ switch (tag) {
145
+ case exports.DateTags.TODAY:
146
+ return todayDate;
147
+ case exports.DateTags.YESTERDAY:
148
+ todayDate.subtract(1, 'days');
149
+ return todayDate;
150
+ case exports.DateTags.THIS_MONTH:
151
+ todayDate.endOf('month');
152
+ return todayDate;
153
+ case exports.DateTags.PREV_MONTH:
154
+ todayDate.subtract(1, 'months').endOf('month');
155
+ return todayDate;
156
+ }
157
+ };
158
+ return DrSharedUtils;
159
+ }());
160
+
161
+ var moment$8 = require('moment');
162
+ var DrDatePickerService = /** @class */ (function () {
163
+ function DrDatePickerService() {
164
+ this.isTimeframeSelectionEnabled = false;
165
+ this.timeframe = exports.TimeframeOption.DAY;
166
+ this.format$ = new rxjs.BehaviorSubject(exports.DateFromats.MAT_DEFAULT_DATE_FORMAT);
167
+ this.updatedQuarter$ = new rxjs.Subject();
168
+ this.updatedDateAndClose$ = new rxjs.Subject();
169
+ this.presetTag$ = new rxjs.BehaviorSubject('');
170
+ this.onSameDaySelectedInCalendar$ = new rxjs.Subject();
171
+ this.keepPresetTag = false;
172
+ this.isValueUpdating = false;
173
+ this.availableTimeframes = [
174
+ exports.TimeframeOption.DAY,
175
+ exports.TimeframeOption.WEEK,
176
+ exports.TimeframeOption.MONTH,
177
+ exports.TimeframeOption.QUARTER,
178
+ exports.TimeframeOption.YEAR
179
+ ];
180
+ this.formatConfig = {
181
+ day: exports.DateFromats.MAT_DEFAULT_DATE_FORMAT,
182
+ month: exports.DateFromats.MONTH_YEAR_FORMAT,
183
+ year: exports.DateFromats.YEAR_FORMAT,
184
+ quarter: exports.DateFromats.QUARTER_FORMAT,
185
+ week: exports.DateFromats.WEEK_FORMAT
186
+ };
187
+ this.fiscalYearMonthsModifier = 0;
188
+ }
189
+ DrDatePickerService.prototype.getDisplayPrefix = function () {
190
+ var formatCached = this.format$.getValue();
191
+ switch (true) {
192
+ case formatCached === null || formatCached === void 0 ? void 0 : formatCached.includes('Q'):
193
+ return 'Q';
194
+ case formatCached === null || formatCached === void 0 ? void 0 : formatCached.includes('W'):
195
+ return 'W';
196
+ default:
197
+ return '';
198
+ }
199
+ };
200
+ DrDatePickerService.prototype.getTimeframe = function (format) {
201
+ return DrSharedUtils.getTimeframeByDateFormat(format);
202
+ };
203
+ DrDatePickerService.prototype.getConfiguredFormat = function (timeframe) {
204
+ return this.formatConfig[timeframe];
205
+ };
206
+ DrDatePickerService.prototype.updateTimeframeAndFormat = function (format) {
207
+ var normalizedFormat = this.normalizeValue(format || this.format$.getValue());
208
+ this.timeframe = this.getTimeframe(normalizedFormat);
209
+ this.format$.next(this.getConfiguredFormat(this.timeframe));
210
+ };
211
+ DrDatePickerService.prototype.normalizeValue = function (value) {
212
+ return value.replace(/d/g, 'D');
213
+ };
214
+ /**
215
+ * Get quarter number for date according to fiscal year
216
+ *
217
+ * @param date
218
+ */
219
+ DrDatePickerService.prototype.getQuarterAccordingToFiscalYear = function (date) {
220
+ var fiscalMonth = this.fiscalYearMonthsModifier;
221
+ var dateMonth = date.month();
222
+ if (dateMonth < fiscalMonth) {
223
+ fiscalMonth -= 12;
224
+ }
225
+ return Math.trunc((date.month() - fiscalMonth) / 3) + 1;
226
+ };
227
+ /**
228
+ * Sets date to end of quarter in FY by passed quarter number
229
+ *
230
+ * @param date
231
+ * @param quarterNumber
232
+ */
233
+ DrDatePickerService.prototype.setEndOfQuarter = function (date, quarterNumber) {
234
+ date
235
+ .subtract(this.fiscalYearMonthsModifier, 'M')
236
+ .startOf('year')
237
+ .add(this.fiscalYearMonthsModifier + quarterNumber * 3 - 1, 'M')
238
+ .endOf('month');
239
+ };
240
+ /**
241
+ * Sets date to start of quarter in FY by passed quarter number
242
+ *
243
+ * @param date
244
+ * @param quarterNumber
245
+ */
246
+ DrDatePickerService.prototype.setStartOfQuarter = function (date, quarterNumber) {
247
+ date
248
+ .subtract(this.fiscalYearMonthsModifier, 'M')
249
+ .startOf('year')
250
+ .add(this.fiscalYearMonthsModifier + (quarterNumber - 1) * 3, 'M');
251
+ };
252
+ /**
253
+ * Sets date to end of current quarter (in which date is located) according to FY
254
+ *
255
+ * @param date
256
+ */
257
+ DrDatePickerService.prototype.setEndOfCurrentQuarter = function (date) {
258
+ this.setEndOfQuarter(date, this.getQuarterAccordingToFiscalYear(date));
259
+ };
260
+ /**
261
+ * Sets date to start of current quarter (in which date is located) according to FY
262
+ *
263
+ * @param date
264
+ */
265
+ DrDatePickerService.prototype.setStartOfCurrentQuarter = function (date) {
266
+ this.setStartOfQuarter(date, this.getQuarterAccordingToFiscalYear(date));
267
+ };
268
+ /**
269
+ * If date selection on this timeframe depends on Fiscal Year
270
+ *
271
+ * @param timeframe
272
+ */
273
+ DrDatePickerService.prototype.isTimeframeDependingOnFY = function (timeframe) {
274
+ return ___namespace.includes([exports.TimeframeOption.QUARTER, exports.TimeframeOption.YEAR], timeframe);
275
+ };
276
+ /**
277
+ * Subtract from date fiscal year shift months count
278
+ *
279
+ * @param date
280
+ */
281
+ DrDatePickerService.prototype.subtractFiscalYearMonthsFromDate = function (date) {
282
+ return this.getDateModifiedByFiscalMonths(date, true);
283
+ };
284
+ /**
285
+ * Add to date fiscal year shift months count
286
+ *
287
+ * @param date
288
+ */
289
+ DrDatePickerService.prototype.addFiscalYearMonthsToDate = function (date) {
290
+ return this.getDateModifiedByFiscalMonths(date);
291
+ };
292
+ /**
293
+ * Add or subtract depending on isRevert paremeter Fiscal year month shift
294
+ *
295
+ * @param date
296
+ * @param isSubtract
297
+ */
298
+ DrDatePickerService.prototype.getDateModifiedByFiscalMonths = function (date, isSubtract) {
299
+ if (isSubtract === void 0) { isSubtract = false; }
300
+ return date ? ___namespace.cloneDeep(date)[isSubtract ? 'subtract' : 'add'](this.fiscalYearMonthsModifier, 'month') : date;
301
+ };
302
+ DrDatePickerService.prototype.updateDatePickerByPreset = function (tag, calender) {
303
+ this.keepPresetTag = true;
304
+ var date = null;
305
+ if (tag) {
306
+ date = DrSharedUtils.getDateByTag(tag);
307
+ switch (tag) {
308
+ case exports.DateTags.TODAY:
309
+ this.updateTimeframeAndFormat(exports.DateFromats.MAT_DEFAULT_DATE_FORMAT);
310
+ break;
311
+ case exports.DateTags.YESTERDAY:
312
+ this.updateTimeframeAndFormat(exports.DateFromats.MAT_DEFAULT_DATE_FORMAT);
313
+ break;
314
+ case exports.DateTags.THIS_MONTH:
315
+ this.updateTimeframeAndFormat(exports.DateFromats.MONTH_YEAR_FORMAT);
316
+ this.selectDateInCalendarMonthView(date, calender);
317
+ break;
318
+ case exports.DateTags.PREV_MONTH:
319
+ this.updateTimeframeAndFormat(exports.DateFromats.MONTH_YEAR_FORMAT);
320
+ this.selectDateInCalendarMonthView(date, calender);
321
+ break;
322
+ }
323
+ }
324
+ this.presetTag$.next(tag);
325
+ this.updatedDateAndClose$.next(date);
326
+ };
327
+ DrDatePickerService.prototype.selectDateInCalendarMonthView = function (date, calender) {
328
+ setTimeout(function () {
329
+ var monthView = calender.monthView;
330
+ if (monthView) {
331
+ monthView._activeDate = date;
332
+ monthView._selected = date;
333
+ monthView._init();
334
+ }
335
+ });
336
+ };
337
+ DrDatePickerService.prototype.resetPresetTag = function () {
338
+ if (!this.keepPresetTag) {
339
+ this.presetTag$.next(null);
340
+ }
341
+ else {
342
+ this.keepPresetTag = false;
343
+ }
344
+ };
345
+ return DrDatePickerService;
346
+ }());
347
+ DrDatePickerService.decorators = [
348
+ { type: i0.Injectable }
349
+ ];
30
350
 
31
351
  // import {*} from ""
32
352
  var DateTagComponent = /** @class */ (function () {
@@ -92,7 +412,8 @@
92
412
  AnyTagComponent.decorators = [
93
413
  { type: i0.Component, args: [{
94
414
  template: "",
95
- selector: 'any-tag'
415
+ selector: 'any-tag',
416
+ providers: [DrDatePickerService]
96
417
  },] }
97
418
  ];
98
419
  AnyTagComponent.ctorParameters = function () { return []; };
@@ -416,7 +737,7 @@
416
737
  }
417
738
 
418
739
  // @ts-ignore
419
- var moment$8 = require('moment');
740
+ var moment$7 = require('moment');
420
741
  var ForecastTagComponent = /** @class */ (function (_super) {
421
742
  __extends(ForecastTagComponent, _super);
422
743
  function ForecastTagComponent() {
@@ -449,15 +770,15 @@
449
770
  var fiscal_year_back = this.fiscalYearBack || false;
450
771
  this.forecastValue = this.getFiscalMonthFromDate(dateVal, fiscal_year_starts_from) - 1;
451
772
  var fiscal_year = this.getFiscalYearFromDate(dateVal, fiscal_year_starts_from, fiscal_year_back);
452
- this.dateObj.date = moment$8(new Date(fiscal_year, 0, 1)).unix();
773
+ this.dateObj.date = moment$7(new Date(fiscal_year, 0, 1)).unix();
453
774
  this.updateLockedDate();
454
775
  };
455
776
  ForecastTagComponent.prototype.updateLockedDate = function () {
456
777
  var e_1, _a;
457
- var year = moment$8.unix(this.dateObj.date).year();
778
+ var year = moment$7.unix(this.dateObj.date).year();
458
779
  var _loop_1 = function (forecastTag) {
459
780
  forecastTag.disabled = this_1.lockedDate.some(function (timestamp) {
460
- var locked = moment$8.unix(timestamp);
781
+ var locked = moment$7.unix(timestamp);
461
782
  return locked.month() === forecastTag.value && +locked.year() === +year;
462
783
  });
463
784
  };
@@ -527,7 +848,7 @@
527
848
  if (this.isDateEventHappened)
528
849
  return;
529
850
  var month = this.forecastValue;
530
- var year = moment$8.unix(this.dateObj.date).year();
851
+ var year = moment$7.unix(this.dateObj.date).year();
531
852
  var timeStampVal = 0;
532
853
  var label = '';
533
854
  if (!Number.isNaN(month) && !Number.isNaN(year)) {
@@ -554,7 +875,7 @@
554
875
  name: this.name,
555
876
  value: timeStampVal,
556
877
  label: label,
557
- locked: !this.dateFilter(moment$8.unix(timeStampVal))
878
+ locked: !this.dateFilter(moment$7.unix(timeStampVal))
558
879
  };
559
880
  this.dateChange.emit(resultTag);
560
881
  };
@@ -562,7 +883,7 @@
562
883
  var month = this.forecastValue;
563
884
  var year = date.year();
564
885
  return !this.lockedDate.some(function (timestamp) {
565
- var lockDate = moment$8.unix(timestamp);
886
+ var lockDate = moment$7.unix(timestamp);
566
887
  return lockDate.month() === month && lockDate.year() === year;
567
888
  });
568
889
  };
@@ -573,6 +894,7 @@
573
894
  { type: i0.Component, args: [{
574
895
  template: "<div class=\"forecast-tag__container\">\n <div class=\"forecast-tag__forecast\">\n <p class=\"tag__label\">{{ name }}</p>\n <dr-select placeholder=\"Select\"\n [(ngModel)]=\"forecastValue\"\n bindLabel=\"label\"\n bindValue=\"value\"\n [disabled]=\"disabled\"\n [items]=\"forecastTags\"\n (ngModelChange)=\"changeTagInputHandler($event)\"></dr-select>\n </div>\n <div class=\"forecast-tag__year\">\n <p class=\"tag__label\">Year</p>\n <dr-date-picker format=\"year\"\n [(ngModel)]=\"dateObj.date\"\n [datepickerFilter]=\"dateFilter.bind(this)\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"changeYearInputHandler($event)\"></dr-date-picker>\n </div>\n</div>\n",
575
896
  selector: 'forecast-tag',
897
+ providers: [DrDatePickerService],
576
898
  styles: [".tag__label{margin:0 0 4px;color:#0c142b;font-size:14px;font-weight:400;line-height:22px}.forecast-tag__container{display:flex;align-items:center}.forecast-tag__year{width:50%;margin-left:24px}.forecast-tag__forecast{width:50%}\n"]
577
899
  },] }
578
900
  ];
@@ -584,7 +906,7 @@
584
906
  };
585
907
 
586
908
  // @ts-ignore
587
- var moment$7 = require('moment');
909
+ var moment$6 = require('moment');
588
910
  var MONTH_FORMATS = {
589
911
  parse: {
590
912
  dateInput: 'DD-MM-YYYY',
@@ -596,7 +918,6 @@
596
918
  monthYearA11yLabel: 'MMMM YYYY'
597
919
  },
598
920
  };
599
- var ɵ0$7 = MONTH_FORMATS;
600
921
  var MonthTagComponent = /** @class */ (function (_super) {
601
922
  __extends(MonthTagComponent, _super);
602
923
  function MonthTagComponent() {
@@ -606,14 +927,19 @@
606
927
  }
607
928
  Object.defineProperty(MonthTagComponent.prototype, "isLocked", {
608
929
  get: function () {
609
- return this.date ? !this.dateFilter(moment$7.unix(this.date).utc()) : false;
930
+ return this.date ? !this.dateFilter(moment$6.unix(this.date).utc()) : false;
610
931
  },
611
932
  enumerable: false,
612
933
  configurable: true
613
934
  });
614
935
  MonthTagComponent.prototype.initDate = function () {
615
- this.date = this.defaultValue || moment$7().unix();
616
- this.dateObj.date = this.date;
936
+ if (this.defaultValue) {
937
+ this.date = this.defaultValue;
938
+ this.dateObj.date = this.date;
939
+ }
940
+ else {
941
+ this.dateObj.date = moment$6().unix();
942
+ }
617
943
  };
618
944
  MonthTagComponent.prototype.initName = function () {
619
945
  if (!this.name) {
@@ -621,7 +947,7 @@
621
947
  }
622
948
  };
623
949
  MonthTagComponent.prototype.chosenTagHandler = function (value) {
624
- var resultDate = moment$7.unix(value).utc();
950
+ var resultDate = moment$6.unix(value).utc();
625
951
  resultDate.hour(12);
626
952
  var resultTag = {
627
953
  name: this.name,
@@ -637,7 +963,7 @@
637
963
  var month = date.month();
638
964
  var year = date.year();
639
965
  return !this.lockedDate.some(function (timestamp) {
640
- var lockDate = moment$7.unix(timestamp);
966
+ var lockDate = moment$6.unix(timestamp);
641
967
  return lockDate.year() === year && lockDate.month() === month;
642
968
  });
643
969
  };
@@ -648,14 +974,7 @@
648
974
  { type: i0.Component, args: [{
649
975
  template: "<div class=\"tag-wrapper\">\n <p class=\"tag__label\">{{ name }}</p>\n <dr-date-picker format=\"month\"\n [(ngModel)]=\"date\"\n [disabled]=\"disabled\"\n [datepickerFilter]=\"dateFilter.bind(this)\"\n (ngModelChange)=\"chosenTagHandler($event)\"></dr-date-picker>\n</div>\n",
650
976
  selector: 'month-tag',
651
- providers: [
652
- {
653
- provide: core.DateAdapter,
654
- useClass: materialMomentAdapter.MomentDateAdapter,
655
- deps: [core.MAT_DATE_LOCALE, materialMomentAdapter.MAT_MOMENT_DATE_ADAPTER_OPTIONS],
656
- },
657
- { provide: core.MAT_DATE_FORMATS, useValue: ɵ0$7 },
658
- ],
977
+ providers: [DrDatePickerService],
659
978
  styles: [":host.locked>.tag-wrapper>dr-date-picker{opacity:.4}.tag__label{margin:0 0 4px;color:#0c142b;font-size:14px;font-weight:400;line-height:22px}\n"]
660
979
  },] }
661
980
  ];
@@ -666,7 +985,7 @@
666
985
  };
667
986
 
668
987
  // @ts-ignore
669
- var moment$6 = require('moment');
988
+ var moment$5 = require('moment');
670
989
  var QuarterTagComponent = /** @class */ (function (_super) {
671
990
  __extends(QuarterTagComponent, _super);
672
991
  function QuarterTagComponent() {
@@ -680,7 +999,7 @@
680
999
  get: function () {
681
1000
  var _this = this;
682
1001
  return this.quarters
683
- ? this.quarters.some(function (quarter) { return !_this.dateFilter(moment$6.unix(quarter.value).utc()); })
1002
+ ? this.quarters.some(function (quarter) { return !_this.dateFilter(moment$5.unix(quarter.value).utc()); })
684
1003
  : false;
685
1004
  },
686
1005
  enumerable: false,
@@ -715,7 +1034,7 @@
715
1034
  }
716
1035
  };
717
1036
  QuarterTagComponent.prototype.chosenTagHandler = function (quarter) {
718
- var resultDate = moment$6.unix(quarter.value).utc();
1037
+ var resultDate = moment$5.unix(quarter.value).utc();
719
1038
  var resultTag = {
720
1039
  name: this.name,
721
1040
  value: resultDate.unix(),
@@ -761,9 +1080,9 @@
761
1080
  return Date.UTC(date.getFullYear(), month, 1, 12, 0, 0, 0);
762
1081
  };
763
1082
  QuarterTagComponent.prototype.dateFilter = function (quarter) {
764
- var quarterDate = moment$6.unix(quarter.value);
1083
+ var quarterDate = moment$5.unix(quarter.value);
765
1084
  return !this.lockedDate.some(function (timestamp) {
766
- var lockDate = moment$6.unix(timestamp);
1085
+ var lockDate = moment$5.unix(timestamp);
767
1086
  if (lockDate.year() === quarterDate.year() && lockDate.month() === quarterDate.month()) {
768
1087
  quarter.disabled = true;
769
1088
  return true;
@@ -788,7 +1107,7 @@
788
1107
  };
789
1108
 
790
1109
  // @ts-ignore
791
- var moment$5 = require('moment');
1110
+ var moment$4 = require('moment');
792
1111
  var WEEK_FORMATS = {
793
1112
  parse: {
794
1113
  dateInput: 'WW-YYYY',
@@ -800,7 +1119,6 @@
800
1119
  monthYearA11yLabel: 'MMMM YYYY'
801
1120
  },
802
1121
  };
803
- var ɵ0$6 = WEEK_FORMATS;
804
1122
  var WeekTagComponent = /** @class */ (function (_super) {
805
1123
  __extends(WeekTagComponent, _super);
806
1124
  function WeekTagComponent() {
@@ -810,14 +1128,14 @@
810
1128
  }
811
1129
  Object.defineProperty(WeekTagComponent.prototype, "isLocked", {
812
1130
  get: function () {
813
- return this.date ? !this.dateFilter(moment$5.unix(this.date).utc()) : false;
1131
+ return this.date ? !this.dateFilter(moment$4.unix(this.date).utc()) : false;
814
1132
  },
815
1133
  enumerable: false,
816
1134
  configurable: true
817
1135
  });
818
1136
  WeekTagComponent.prototype.ngOnInit = function () {
819
1137
  this.initName();
820
- var timestamp = this.defaultValue || moment$5().unix();
1138
+ var timestamp = this.defaultValue || moment$4().unix();
821
1139
  this.date = timestamp;
822
1140
  this.dateObj.date = timestamp;
823
1141
  this.chosenTagHandler(timestamp);
@@ -831,13 +1149,13 @@
831
1149
  var week = date.week();
832
1150
  var year = date.year();
833
1151
  return !this.lockedDate.some(function (timestamp) {
834
- var lockDate = moment$5.unix(timestamp);
1152
+ var lockDate = moment$4.unix(timestamp);
835
1153
  return lockDate.week() === week && lockDate.year() === year;
836
1154
  });
837
1155
  };
838
1156
  ;
839
1157
  WeekTagComponent.prototype.chosenTagHandler = function (value) {
840
- var resultDate = moment$5.unix(value).utc();
1158
+ var resultDate = moment$4.unix(value).utc();
841
1159
  var resultTag = {
842
1160
  name: this.name,
843
1161
  value: resultDate.unix(),
@@ -856,14 +1174,7 @@
856
1174
  { type: i0.Component, args: [{
857
1175
  template: "<div class=\"tag-wrapper\">\n <p class=\"tag__label\">{{ name }}</p>\n <dr-date-picker format=\"week\"\n [(ngModel)]=\"date\"\n [datepickerFilter]=\"dateFilter.bind(this)\"\n (ngModelChange)=\"chosenTagHandler($event)\"></dr-date-picker>\n</div>\n",
858
1176
  selector: 'week-tag',
859
- providers: [
860
- {
861
- provide: core.DateAdapter,
862
- useClass: materialMomentAdapter.MomentDateAdapter,
863
- deps: [core.MAT_DATE_LOCALE, materialMomentAdapter.MAT_MOMENT_DATE_ADAPTER_OPTIONS],
864
- },
865
- { provide: core.MAT_DATE_FORMATS, useValue: ɵ0$6 },
866
- ],
1177
+ providers: [DrDatePickerService],
867
1178
  styles: [":host.locked>.tag-wrapper>dr-date-picker{opacity:.4}.tag__label{margin:0 0 4px;color:#0c142b;font-size:14px;font-weight:400;line-height:22px}\n"]
868
1179
  },] }
869
1180
  ];
@@ -874,7 +1185,7 @@
874
1185
  };
875
1186
 
876
1187
  // @ts-ignore
877
- var moment$4 = require('moment');
1188
+ var moment$3 = require('moment');
878
1189
  var YEAR_FORMATS = {
879
1190
  parse: {
880
1191
  dateInput: 'YYYY',
@@ -886,7 +1197,6 @@
886
1197
  monthYearA11yLabel: 'MMMM YYYY'
887
1198
  },
888
1199
  };
889
- var ɵ0$5 = YEAR_FORMATS;
890
1200
  var YearTagComponent = /** @class */ (function (_super) {
891
1201
  __extends(YearTagComponent, _super);
892
1202
  function YearTagComponent() {
@@ -896,14 +1206,19 @@
896
1206
  }
897
1207
  Object.defineProperty(YearTagComponent.prototype, "isLocked", {
898
1208
  get: function () {
899
- return this.date ? !this.dateFilter(moment$4.unix(this.date).utc()) : false;
1209
+ return this.date ? !this.dateFilter(moment$3.unix(this.date).utc()) : false;
900
1210
  },
901
1211
  enumerable: false,
902
1212
  configurable: true
903
1213
  });
904
1214
  YearTagComponent.prototype.initDate = function () {
905
- this.date = this.defaultValue || moment$4().unix();
906
- this.dateObj.date = this.date;
1215
+ if (this.defaultValue) {
1216
+ this.date = this.defaultValue;
1217
+ this.dateObj.date = this.date;
1218
+ }
1219
+ else {
1220
+ this.dateObj.date = moment$3().unix();
1221
+ }
907
1222
  };
908
1223
  YearTagComponent.prototype.initName = function () {
909
1224
  if (!this.name) {
@@ -911,7 +1226,7 @@
911
1226
  }
912
1227
  };
913
1228
  YearTagComponent.prototype.chosenTagHandler = function (value) {
914
- var resultDate = moment$4.unix(value).utc();
1229
+ var resultDate = moment$3.unix(value).utc();
915
1230
  resultDate.hour(12);
916
1231
  var resultTag = {
917
1232
  name: this.name,
@@ -925,7 +1240,7 @@
925
1240
  YearTagComponent.prototype.dateFilter = function (date) {
926
1241
  var calendarDateYear = date.year();
927
1242
  return !this.lockedDate.some(function (timestamp) {
928
- var lockDate = moment$4.unix(timestamp);
1243
+ var lockDate = moment$3.unix(timestamp);
929
1244
  return lockDate.year() === calendarDateYear;
930
1245
  });
931
1246
  };
@@ -936,14 +1251,7 @@
936
1251
  { type: i0.Component, args: [{
937
1252
  template: "<div class=\"tag-wrapper\">\n <p class=\"tag__label\">{{ name }}</p>\n <dr-date-picker format=\"year\"\n [(ngModel)]=\"date\"\n [disabled]=\"disabled\"\n [datepickerFilter]=\"dateFilter.bind(this)\"\n (ngModelChange)=\"chosenTagHandler($event)\"></dr-date-picker>\n</div>\n",
938
1253
  selector: 'year-tag',
939
- providers: [
940
- {
941
- provide: core.DateAdapter,
942
- useClass: materialMomentAdapter.MomentDateAdapter,
943
- deps: [core.MAT_DATE_LOCALE, materialMomentAdapter.MAT_MOMENT_DATE_ADAPTER_OPTIONS],
944
- },
945
- { provide: core.MAT_DATE_FORMATS, useValue: ɵ0$5 },
946
- ],
1254
+ providers: [DrDatePickerService],
947
1255
  styles: [":host.locked>.tag-wrapper>dr-date-picker{opacity:.4}.tag__label{margin:0 0 4px;color:#0c142b;font-size:14px;font-weight:400;line-height:22px}\n"]
948
1256
  },] }
949
1257
  ];
@@ -960,52 +1268,30 @@
960
1268
  TagTypes["LIST"] = "LIST";
961
1269
  TagTypes["DATE"] = "DATE";
962
1270
  })(exports.TagTypes || (exports.TagTypes = {}));
963
- var TagsConfigSubType;
964
- (function (TagsConfigSubType) {
965
- TagsConfigSubType["YEAR"] = "year";
966
- TagsConfigSubType["PLAN"] = "plan";
967
- TagsConfigSubType["BUDGET_CYCLE"] = "budget cycle";
968
- TagsConfigSubType["MONTH"] = "month";
969
- TagsConfigSubType["WEEK"] = "week";
970
- TagsConfigSubType["DAY"] = "day";
971
- TagsConfigSubType["FORECAST_NEW"] = "forecast_new";
972
- TagsConfigSubType["QUARTER"] = "quarter";
973
- TagsConfigSubType["FILE_STATUS"] = "file_status";
974
- })(TagsConfigSubType || (TagsConfigSubType = {}));
975
1271
 
976
1272
  var DrTagComponent = /** @class */ (function () {
977
1273
  function DrTagComponent() {
978
1274
  this.lockedDate = [];
979
1275
  this.dynamicTagValues = {};
1276
+ this.connectedTags = [];
980
1277
  this.tagChange = new i0.EventEmitter(); // Not emit value for dynamic tag
981
1278
  this.dynamicTagChange = new i0.EventEmitter();
982
1279
  this.dynamicTagAdd = new i0.EventEmitter();
983
1280
  this.currentTagConnectedToDynamic = false;
984
1281
  this.tagTypes = exports.TagTypes;
985
1282
  this.connectedTagsValues = [];
986
- this._connectedTags = [];
987
1283
  this.selectedTag = {
988
1284
  id: 0,
989
1285
  value: undefined,
990
1286
  name: ''
991
1287
  };
992
1288
  }
993
- Object.defineProperty(DrTagComponent.prototype, "connectedTags", {
994
- get: function () {
995
- return this._connectedTags;
996
- },
997
- set: function (tags) {
998
- this._connectedTags = tags || [];
999
- },
1000
- enumerable: false,
1001
- configurable: true
1002
- });
1003
- DrTagComponent.prototype.ngOnChanges = function () {
1004
- this.calculateDynamicTag();
1005
- };
1006
1289
  DrTagComponent.prototype.ngOnInit = function () {
1290
+ var _this = this;
1007
1291
  var _a, _b;
1008
- this.calculateDynamicTag();
1292
+ this.currentTagDynamic = this.tagConfig.options.is_custom;
1293
+ this.currentTagConnectedToDynamic = _.some(this.tagsConfig, function (tagConfig) { return tagConfig.options.is_custom
1294
+ && ['year'].includes(_this.tagConfig.options.sub_type); });
1009
1295
  this.dateTag = {
1010
1296
  type: this.tagConfig.type,
1011
1297
  sub_type: this.tagConfig.options.sub_type,
@@ -1120,12 +1406,6 @@
1120
1406
  }
1121
1407
  });
1122
1408
  };
1123
- DrTagComponent.prototype.calculateDynamicTag = function () {
1124
- var _this = this;
1125
- this.currentTagDynamic = this.tagConfig.options.is_custom;
1126
- this.currentTagConnectedToDynamic = _.some(this.tagsConfig, function (tagConfig) { return tagConfig.options.is_custom
1127
- && ['year'].includes(_this.tagConfig.options.sub_type); });
1128
- };
1129
1409
  return DrTagComponent;
1130
1410
  }());
1131
1411
  DrTagComponent.decorators = [
@@ -1133,6 +1413,7 @@
1133
1413
  template: "<div [class.dynamic-tag]=\"currentTagDynamic\">\n <date-tag *ngIf=\"dateTag.type === tagTypes.DATE && !currentTagConnectedToDynamic\"\n [dateTypeChosen]=\"dateTag.sub_type\"\n [defaultValue]=\"dateTag.value\"\n [fiscalYearStartsFrom]=\"fiscalYearStartsFrom\"\n [fiscalYearBack]=\"fiscalYearBack\"\n [lockedDate]=\"lockedDate\"\n [disabled]=\"disabled\"\n (selectedDate)=\"onDateHandler($event)\"></date-tag>\n\n <list-tag *ngIf=\"listTag.type === tagTypes.LIST && !currentTagConnectedToDynamic && !tagConfig.options?.is_custom\"\n (tagChange)=\"onListHandler($event)\"\n [name]=\"listTag.name\"\n [values]=\"listTag.values\"\n [disabled]=\"disabled\"\n [defaultValue]=\"listTag?.value || defaultValue\"></list-tag>\n\n <dr-dynamic-tag *ngIf=\"currentTagDynamic\"\n [lockedTags]=\"lockedDate\"\n [connectedTags]=\"connectedTags\"\n [tagConfig]=\"tagConfig\"\n [selectedTag]=\"selectedTag\"\n [isDynamicTagAddEnabled]=\"isDynamicTagAddEnabled\"\n [values]=\"dynamicTagValues\"\n [disabled]=\"disabled\"\n (tagChange)=\"onDynamicTagChange($event)\"\n (tagAdd)=\"dynamicTagAdd.emit($event)\"></dr-dynamic-tag>\n</div>\n",
1134
1414
  selector: 'dr-tag',
1135
1415
  encapsulation: i0.ViewEncapsulation.None,
1416
+ providers: [DrDatePickerService],
1136
1417
  styles: ["dr-tag input.mat-input-element::-webkit-outer-spin-button,dr-tag input.mat-input-element::-webkit-inner-spin-button,dr-tag input.mat-input-element::-webkit-clear-button,dr-tag input.mat-input-element::-webkit-search-cancel-button,dr-tag input.mat-input-element::-webkit-search-results-button,date-tag input.mat-input-element::-webkit-outer-spin-button,date-tag input.mat-input-element::-webkit-inner-spin-button,date-tag input.mat-input-element::-webkit-clear-button,date-tag input.mat-input-element::-webkit-search-cancel-button,date-tag input.mat-input-element::-webkit-search-results-button{-webkit-appearance:none}.date-month-picker .mat-calendar-header{display:none}mat-year-view .mat-calendar-body-label{display:none!important}.date-month-picker.mat-calendar{height:290px!important}.date-month-picker.mat-calendar .mat-calendar-table-header th{padding:8px 0}.dynamic-tag{display:flex}.dynamic-tag>date-tag,.dynamic-tag>list-tag,.dynamic-tag>dr-dynamic-tag{width:50%}.dynamic-tag>dr-dynamic-tag{margin-left:24px}\n", ".mat-badge-content{font-weight:600;font-size:12px;font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-badge-small .mat-badge-content{font-size:9px}.mat-badge-large .mat-badge-content{font-size:24px}.mat-h1,.mat-headline,.mat-typography h1{font:400 24px/32px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h2,.mat-title,.mat-typography h2{font:500 20px/32px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h3,.mat-subheading-2,.mat-typography h3{font:400 16px/28px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h4,.mat-subheading-1,.mat-typography h4{font:400 15px/24px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h5,.mat-typography h5{font:400 calc(14px * .83)/20px Roboto,\"Helvetica Neue\",sans-serif;margin:0 0 12px}.mat-h6,.mat-typography h6{font:400 calc(14px * .67)/20px Roboto,\"Helvetica Neue\",sans-serif;margin:0 0 12px}.mat-body-strong,.mat-body-2{font:500 14px/24px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal}.mat-body,.mat-body-1,.mat-typography{font:400 14px/20px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal}.mat-body p,.mat-body-1 p,.mat-typography p{margin:0 0 12px}.mat-small,.mat-caption{font:400 12px/20px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal}.mat-display-4,.mat-typography .mat-display-4{font:300 112px/112px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:-.05em;margin:0 0 56px}.mat-display-3,.mat-typography .mat-display-3{font:400 56px/56px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:-.02em;margin:0 0 64px}.mat-display-2,.mat-typography .mat-display-2{font:400 45px/48px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:-.005em;margin:0 0 64px}.mat-display-1,.mat-typography .mat-display-1{font:400 34px/40px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal;margin:0 0 64px}.mat-bottom-sheet-container{font:400 14px/20px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal}.mat-button,.mat-raised-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button,.mat-fab,.mat-mini-fab{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:14px;font-weight:500}.mat-button-toggle{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-card{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-card-title{font-size:24px;font-weight:500}.mat-card-header .mat-card-title{font-size:20px}.mat-card-subtitle,.mat-card-content{font-size:14px}.mat-checkbox{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-checkbox-layout .mat-checkbox-label{line-height:24px}.mat-chip{font-size:14px;font-weight:500}.mat-chip .mat-chip-trailing-icon.mat-icon,.mat-chip .mat-chip-remove.mat-icon{font-size:18px}.mat-table{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-header-cell{font-size:12px;font-weight:500}.mat-cell,.mat-footer-cell{font-size:14px}.mat-calendar{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-calendar-body{font-size:13px}.mat-calendar-body-label,.mat-calendar-period-button{font-size:14px;font-weight:500}.mat-calendar-table-header th{font-size:11px;font-weight:400}.mat-dialog-title{font:500 20px/32px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal}.mat-expansion-panel-header{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:15px;font-weight:400}.mat-expansion-panel-content{font:400 14px/20px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal}.mat-form-field{font-size:inherit;font-weight:400;line-height:1.125;font-family:Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal}.mat-form-field-wrapper{padding-bottom:1.34375em}.mat-form-field-prefix .mat-icon,.mat-form-field-suffix .mat-icon{font-size:150%;line-height:1.125}.mat-form-field-prefix .mat-icon-button,.mat-form-field-suffix .mat-icon-button{height:1.5em;width:1.5em}.mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-suffix .mat-icon-button .mat-icon{height:1.125em;line-height:1.125}.mat-form-field-infix{padding:.5em 0;border-top:.84375em solid transparent}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34375em) scale(.75);width:133.3333333333%}.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34374em) scale(.75);width:133.3333433333%}.mat-form-field-label-wrapper{top:-.84375em;padding-top:.84375em}.mat-form-field-label{top:1.34375em}.mat-form-field-underline{bottom:1.34375em}.mat-form-field-subscript-wrapper{font-size:75%;margin-top:.6666666667em;top:calc(100% - 1.7916666667em)}.mat-form-field-appearance-legacy .mat-form-field-wrapper{padding-bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-infix{padding:.4375em 0}.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.3333333333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00101px);-ms-transform:translateY(-1.28124em) scale(.75);width:133.3333433333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00102px);-ms-transform:translateY(-1.28123em) scale(.75);width:133.3333533333%}.mat-form-field-appearance-legacy .mat-form-field-label{top:1.28125em}.mat-form-field-appearance-legacy .mat-form-field-underline{bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-subscript-wrapper{margin-top:.5416666667em;top:calc(100% - 1.6666666667em)}@media print{.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28122em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28121em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.2812em) scale(.75)}}.mat-form-field-appearance-fill .mat-form-field-infix{padding:.25em 0 .75em}.mat-form-field-appearance-fill .mat-form-field-label{top:1.09375em;margin-top:-.5em}.mat-form-field-appearance-fill.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59375em) scale(.75);width:133.3333333333%}.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59374em) scale(.75);width:133.3333433333%}.mat-form-field-appearance-outline .mat-form-field-infix{padding:1em 0}.mat-form-field-appearance-outline .mat-form-field-label{top:1.84375em;margin-top:-.25em}.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59375em) scale(.75);width:133.3333333333%}.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59374em) scale(.75);width:133.3333433333%}.mat-grid-tile-header,.mat-grid-tile-footer{font-size:14px}.mat-grid-tile-header .mat-line,.mat-grid-tile-footer .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-grid-tile-header .mat-line:nth-child(n+2),.mat-grid-tile-footer .mat-line:nth-child(n+2){font-size:12px}input.mat-input-element{margin-top:-.0625em}.mat-menu-item{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:14px;font-weight:400}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:12px}.mat-radio-button{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-select{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-select-trigger{height:1.125em}.mat-slide-toggle-content{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-slider-thumb-label-text{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:12px;font-weight:500}.mat-stepper-vertical,.mat-stepper-horizontal{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-step-label{font-size:14px;font-weight:400}.mat-step-sub-label-error{font-weight:normal}.mat-step-label-error{font-size:14px}.mat-step-label-selected{font-size:14px;font-weight:500}.mat-tab-group{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-tab-label,.mat-tab-link{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:14px;font-weight:500}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font:500 20px/32px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal;margin:0}.mat-tooltip{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:10px;padding-top:6px;padding-bottom:6px}.mat-tooltip-handset{font-size:14px;padding-top:8px;padding-bottom:8px}.mat-list-item{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-list-option{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-list-base .mat-list-item{font-size:16px}.mat-list-base .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base .mat-list-item .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-list-option{font-size:16px}.mat-list-base .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base .mat-list-option .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-subheader{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:14px;font-weight:500}.mat-list-base[dense] .mat-list-item{font-size:12px}.mat-list-base[dense] .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base[dense] .mat-list-item .mat-line:nth-child(n+2){font-size:12px}.mat-list-base[dense] .mat-list-option{font-size:12px}.mat-list-base[dense] .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base[dense] .mat-list-option .mat-line:nth-child(n+2){font-size:12px}.mat-list-base[dense] .mat-subheader{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:12px;font-weight:500}.mat-option{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:16px}.mat-optgroup-label{font:500 14px/24px Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:normal}.mat-simple-snackbar{font-family:Roboto,\"Helvetica Neue\",sans-serif;font-size:14px}.mat-simple-snackbar-action{line-height:1;font-family:inherit;font-size:inherit;font-weight:500}.mat-tree{font-family:Roboto,\"Helvetica Neue\",sans-serif}.mat-tree-node,.mat-nested-tree-node{font-weight:400;font-size:14px}.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0,0,.2,1);transform:scale(0)}.cdk-high-contrast-active .mat-ripple-element{display:none}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop,.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{padding:2px 0!important;box-sizing:content-box!important;height:auto!important;overflow:hidden!important}textarea.cdk-textarea-autosize-measuring-firefox{padding:2px 0!important;box-sizing:content-box!important;height:0!important}@keyframes cdk-text-field-autofill-start{}@keyframes cdk-text-field-autofill-end{}.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored:not(:-webkit-autofill){animation:cdk-text-field-autofill-end 0s 1ms}.mat-focus-indicator{position:relative}.mat-mdc-focus-indicator{position:relative}.mat-ripple-element{background-color:#0000001a}.mat-option{color:#000000de}.mat-option:hover:not(.mat-option-disabled),.mat-option:focus:not(.mat-option-disabled){background:rgba(0,0,0,.04)}.mat-option.mat-selected:not(.mat-option-multiple):not(.mat-option-disabled){background:rgba(0,0,0,.04)}.mat-option.mat-active{background:rgba(0,0,0,.04);color:#000000de}.mat-option.mat-option-disabled{color:#00000061}.mat-primary .mat-option.mat-selected:not(.mat-option-disabled){color:#3f51b5}.mat-accent .mat-option.mat-selected:not(.mat-option-disabled){color:#ff4081}.mat-warn .mat-option.mat-selected:not(.mat-option-disabled){color:#f44336}.mat-optgroup-label{color:#0000008a}.mat-optgroup-disabled .mat-optgroup-label{color:#00000061}.mat-pseudo-checkbox{color:#0000008a}.mat-pseudo-checkbox:after{color:#fafafa}.mat-pseudo-checkbox-disabled{color:#b0b0b0}.mat-primary .mat-pseudo-checkbox-checked,.mat-primary .mat-pseudo-checkbox-indeterminate{background:#3f51b5}.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-indeterminate,.mat-accent .mat-pseudo-checkbox-checked,.mat-accent .mat-pseudo-checkbox-indeterminate{background:#ff4081}.mat-warn .mat-pseudo-checkbox-checked,.mat-warn .mat-pseudo-checkbox-indeterminate{background:#f44336}.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background:#b0b0b0}.mat-app-background{background-color:#fafafa;color:#000000de}.mat-elevation-z0{box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-elevation-z1{box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.mat-elevation-z2{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-elevation-z3{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}.mat-elevation-z4{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-elevation-z5{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.mat-elevation-z6{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.mat-elevation-z7{box-shadow:0 4px 5px -2px #0003,0 7px 10px 1px #00000024,0 2px 16px 1px #0000001f}.mat-elevation-z8{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.mat-elevation-z9{box-shadow:0 5px 6px -3px #0003,0 9px 12px 1px #00000024,0 3px 16px 2px #0000001f}.mat-elevation-z10{box-shadow:0 6px 6px -3px #0003,0 10px 14px 1px #00000024,0 4px 18px 3px #0000001f}.mat-elevation-z11{box-shadow:0 6px 7px -4px #0003,0 11px 15px 1px #00000024,0 4px 20px 3px #0000001f}.mat-elevation-z12{box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.mat-elevation-z13{box-shadow:0 7px 8px -4px #0003,0 13px 19px 2px #00000024,0 5px 24px 4px #0000001f}.mat-elevation-z14{box-shadow:0 7px 9px -4px #0003,0 14px 21px 2px #00000024,0 5px 26px 4px #0000001f}.mat-elevation-z15{box-shadow:0 8px 9px -5px #0003,0 15px 22px 2px #00000024,0 6px 28px 5px #0000001f}.mat-elevation-z16{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.mat-elevation-z17{box-shadow:0 8px 11px -5px #0003,0 17px 26px 2px #00000024,0 6px 32px 5px #0000001f}.mat-elevation-z18{box-shadow:0 9px 11px -5px #0003,0 18px 28px 2px #00000024,0 7px 34px 6px #0000001f}.mat-elevation-z19{box-shadow:0 9px 12px -6px #0003,0 19px 29px 2px #00000024,0 7px 36px 6px #0000001f}.mat-elevation-z20{box-shadow:0 10px 13px -6px #0003,0 20px 31px 3px #00000024,0 8px 38px 7px #0000001f}.mat-elevation-z21{box-shadow:0 10px 13px -6px #0003,0 21px 33px 3px #00000024,0 8px 40px 7px #0000001f}.mat-elevation-z22{box-shadow:0 10px 14px -6px #0003,0 22px 35px 3px #00000024,0 8px 42px 7px #0000001f}.mat-elevation-z23{box-shadow:0 11px 14px -7px #0003,0 23px 36px 3px #00000024,0 9px 44px 8px #0000001f}.mat-elevation-z24{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.mat-theme-loaded-marker{display:none}.mat-autocomplete-panel{background:#fff;color:#000000de}.mat-autocomplete-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover){background:#fff}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover):not(.mat-option-disabled){color:#000000de}.mat-badge{position:relative}.mat-badge-hidden .mat-badge-content{display:none}.mat-badge-content{position:absolute;text-align:center;display:inline-block;border-radius:50%;transition:transform .2s ease-in-out;transform:scale(.6);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}.ng-animate-disabled .mat-badge-content,.mat-badge-content._mat-animation-noopable{transition:none}.mat-badge-content.mat-badge-active{transform:none}.mat-badge-small .mat-badge-content{width:16px;height:16px;line-height:16px}.mat-badge-small.mat-badge-above .mat-badge-content{top:-8px}.mat-badge-small.mat-badge-below .mat-badge-content{bottom:-8px}.mat-badge-small.mat-badge-before .mat-badge-content{left:-16px}[dir=rtl] .mat-badge-small.mat-badge-before .mat-badge-content{left:auto;right:-16px}.mat-badge-small.mat-badge-after .mat-badge-content{right:-16px}[dir=rtl] .mat-badge-small.mat-badge-after .mat-badge-content{right:auto;left:-16px}.mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-8px}[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-8px}.mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-8px}[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-8px}.mat-badge-medium .mat-badge-content{width:22px;height:22px;line-height:22px}.mat-badge-medium.mat-badge-above .mat-badge-content{top:-11px}.mat-badge-medium.mat-badge-below .mat-badge-content{bottom:-11px}.mat-badge-medium.mat-badge-before .mat-badge-content{left:-22px}[dir=rtl] .mat-badge-medium.mat-badge-before .mat-badge-content{left:auto;right:-22px}.mat-badge-medium.mat-badge-after .mat-badge-content{right:-22px}[dir=rtl] .mat-badge-medium.mat-badge-after .mat-badge-content{right:auto;left:-22px}.mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-11px}[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-11px}.mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-11px}[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-11px}.mat-badge-large .mat-badge-content{width:28px;height:28px;line-height:28px}.mat-badge-large.mat-badge-above .mat-badge-content{top:-14px}.mat-badge-large.mat-badge-below .mat-badge-content{bottom:-14px}.mat-badge-large.mat-badge-before .mat-badge-content{left:-28px}[dir=rtl] .mat-badge-large.mat-badge-before .mat-badge-content{left:auto;right:-28px}.mat-badge-large.mat-badge-after .mat-badge-content{right:-28px}[dir=rtl] .mat-badge-large.mat-badge-after .mat-badge-content{right:auto;left:-28px}.mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-14px}[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-14px}.mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-14px}[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-14px}.mat-badge-content{color:#fff;background:#3f51b5}.cdk-high-contrast-active .mat-badge-content{outline:solid 1px;border-radius:0}.mat-badge-accent .mat-badge-content{background:#ff4081;color:#fff}.mat-badge-warn .mat-badge-content{color:#fff;background:#f44336}.mat-badge-disabled .mat-badge-content{background:#b9b9b9;color:#00000061}.mat-bottom-sheet-container{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f;background:#fff;color:#000000de}.mat-button,.mat-icon-button,.mat-stroked-button{color:inherit;background:transparent}.mat-button.mat-primary,.mat-icon-button.mat-primary,.mat-stroked-button.mat-primary{color:#3f51b5}.mat-button.mat-accent,.mat-icon-button.mat-accent,.mat-stroked-button.mat-accent{color:#ff4081}.mat-button.mat-warn,.mat-icon-button.mat-warn,.mat-stroked-button.mat-warn{color:#f44336}.mat-button.mat-primary.mat-button-disabled,.mat-button.mat-accent.mat-button-disabled,.mat-button.mat-warn.mat-button-disabled,.mat-button.mat-button-disabled.mat-button-disabled,.mat-icon-button.mat-primary.mat-button-disabled,.mat-icon-button.mat-accent.mat-button-disabled,.mat-icon-button.mat-warn.mat-button-disabled,.mat-icon-button.mat-button-disabled.mat-button-disabled,.mat-stroked-button.mat-primary.mat-button-disabled,.mat-stroked-button.mat-accent.mat-button-disabled,.mat-stroked-button.mat-warn.mat-button-disabled,.mat-stroked-button.mat-button-disabled.mat-button-disabled{color:#00000042}.mat-button.mat-primary .mat-button-focus-overlay,.mat-icon-button.mat-primary .mat-button-focus-overlay,.mat-stroked-button.mat-primary .mat-button-focus-overlay{background-color:#3f51b5}.mat-button.mat-accent .mat-button-focus-overlay,.mat-icon-button.mat-accent .mat-button-focus-overlay,.mat-stroked-button.mat-accent .mat-button-focus-overlay{background-color:#ff4081}.mat-button.mat-warn .mat-button-focus-overlay,.mat-icon-button.mat-warn .mat-button-focus-overlay,.mat-stroked-button.mat-warn .mat-button-focus-overlay{background-color:#f44336}.mat-button.mat-button-disabled .mat-button-focus-overlay,.mat-icon-button.mat-button-disabled .mat-button-focus-overlay,.mat-stroked-button.mat-button-disabled .mat-button-focus-overlay{background-color:transparent}.mat-button .mat-ripple-element,.mat-icon-button .mat-ripple-element,.mat-stroked-button .mat-ripple-element{opacity:.1;background-color:currentColor}.mat-button-focus-overlay{background:#000}.mat-stroked-button:not(.mat-button-disabled){border-color:#0000001f}.mat-flat-button,.mat-raised-button,.mat-fab,.mat-mini-fab{color:#000000de;background-color:#fff}.mat-flat-button.mat-primary,.mat-raised-button.mat-primary,.mat-fab.mat-primary,.mat-mini-fab.mat-primary{color:#fff}.mat-flat-button.mat-accent,.mat-raised-button.mat-accent,.mat-fab.mat-accent,.mat-mini-fab.mat-accent{color:#fff}.mat-flat-button.mat-warn,.mat-raised-button.mat-warn,.mat-fab.mat-warn,.mat-mini-fab.mat-warn{color:#fff}.mat-flat-button.mat-primary.mat-button-disabled,.mat-flat-button.mat-accent.mat-button-disabled,.mat-flat-button.mat-warn.mat-button-disabled,.mat-flat-button.mat-button-disabled.mat-button-disabled,.mat-raised-button.mat-primary.mat-button-disabled,.mat-raised-button.mat-accent.mat-button-disabled,.mat-raised-button.mat-warn.mat-button-disabled,.mat-raised-button.mat-button-disabled.mat-button-disabled,.mat-fab.mat-primary.mat-button-disabled,.mat-fab.mat-accent.mat-button-disabled,.mat-fab.mat-warn.mat-button-disabled,.mat-fab.mat-button-disabled.mat-button-disabled,.mat-mini-fab.mat-primary.mat-button-disabled,.mat-mini-fab.mat-accent.mat-button-disabled,.mat-mini-fab.mat-warn.mat-button-disabled,.mat-mini-fab.mat-button-disabled.mat-button-disabled{color:#00000042}.mat-flat-button.mat-primary,.mat-raised-button.mat-primary,.mat-fab.mat-primary,.mat-mini-fab.mat-primary{background-color:#3f51b5}.mat-flat-button.mat-accent,.mat-raised-button.mat-accent,.mat-fab.mat-accent,.mat-mini-fab.mat-accent{background-color:#ff4081}.mat-flat-button.mat-warn,.mat-raised-button.mat-warn,.mat-fab.mat-warn,.mat-mini-fab.mat-warn{background-color:#f44336}.mat-flat-button.mat-primary.mat-button-disabled,.mat-flat-button.mat-accent.mat-button-disabled,.mat-flat-button.mat-warn.mat-button-disabled,.mat-flat-button.mat-button-disabled.mat-button-disabled,.mat-raised-button.mat-primary.mat-button-disabled,.mat-raised-button.mat-accent.mat-button-disabled,.mat-raised-button.mat-warn.mat-button-disabled,.mat-raised-button.mat-button-disabled.mat-button-disabled,.mat-fab.mat-primary.mat-button-disabled,.mat-fab.mat-accent.mat-button-disabled,.mat-fab.mat-warn.mat-button-disabled,.mat-fab.mat-button-disabled.mat-button-disabled,.mat-mini-fab.mat-primary.mat-button-disabled,.mat-mini-fab.mat-accent.mat-button-disabled,.mat-mini-fab.mat-warn.mat-button-disabled,.mat-mini-fab.mat-button-disabled.mat-button-disabled{background-color:#0000001f}.mat-flat-button.mat-primary .mat-ripple-element,.mat-raised-button.mat-primary .mat-ripple-element,.mat-fab.mat-primary .mat-ripple-element,.mat-mini-fab.mat-primary .mat-ripple-element{background-color:#ffffff1a}.mat-flat-button.mat-accent .mat-ripple-element,.mat-raised-button.mat-accent .mat-ripple-element,.mat-fab.mat-accent .mat-ripple-element,.mat-mini-fab.mat-accent .mat-ripple-element{background-color:#ffffff1a}.mat-flat-button.mat-warn .mat-ripple-element,.mat-raised-button.mat-warn .mat-ripple-element,.mat-fab.mat-warn .mat-ripple-element,.mat-mini-fab.mat-warn .mat-ripple-element{background-color:#ffffff1a}.mat-stroked-button:not([class*=mat-elevation-z]),.mat-flat-button:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-raised-button:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-raised-button:not(.mat-button-disabled):active:not([class*=mat-elevation-z]){box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.mat-raised-button.mat-button-disabled:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-fab:not([class*=mat-elevation-z]),.mat-mini-fab:not([class*=mat-elevation-z]){box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.mat-fab:not(.mat-button-disabled):active:not([class*=mat-elevation-z]),.mat-mini-fab:not(.mat-button-disabled):active:not([class*=mat-elevation-z]){box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.mat-fab.mat-button-disabled:not([class*=mat-elevation-z]),.mat-mini-fab.mat-button-disabled:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-button-toggle-standalone,.mat-button-toggle-group{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{box-shadow:none}.mat-button-toggle{color:#00000061}.mat-button-toggle .mat-button-toggle-focus-overlay{background-color:#0000001f}.mat-button-toggle-appearance-standard{color:#000000de;background:#fff}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:#000}.mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:solid 1px rgba(0,0,0,.12)}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:none;border-right:solid 1px rgba(0,0,0,.12)}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle+.mat-button-toggle{border-left:none;border-right:none;border-top:solid 1px rgba(0,0,0,.12)}.mat-button-toggle-checked{background-color:#e0e0e0;color:#0000008a}.mat-button-toggle-checked.mat-button-toggle-appearance-standard{color:#000000de}.mat-button-toggle-disabled{color:#00000042;background-color:#eee}.mat-button-toggle-disabled.mat-button-toggle-appearance-standard{background:#fff}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:#bdbdbd}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border:solid 1px rgba(0,0,0,.12)}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{line-height:48px}.mat-card{background:#fff;color:#000000de}.mat-card:not([class*=mat-elevation-z]){box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.mat-card.mat-card-flat:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-card-subtitle{color:#0000008a}.mat-checkbox-frame{border-color:#0000008a}.mat-checkbox-checkmark{fill:#fafafa}.mat-checkbox-checkmark-path{stroke:#fafafa!important}.mat-checkbox-mixedmark{background-color:#fafafa}.mat-checkbox-indeterminate.mat-primary .mat-checkbox-background,.mat-checkbox-checked.mat-primary .mat-checkbox-background{background-color:#3f51b5}.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#ff4081}.mat-checkbox-indeterminate.mat-warn .mat-checkbox-background,.mat-checkbox-checked.mat-warn .mat-checkbox-background{background-color:#f44336}.mat-checkbox-disabled.mat-checkbox-checked .mat-checkbox-background,.mat-checkbox-disabled.mat-checkbox-indeterminate .mat-checkbox-background{background-color:#b0b0b0}.mat-checkbox-disabled:not(.mat-checkbox-checked) .mat-checkbox-frame{border-color:#b0b0b0}.mat-checkbox-disabled .mat-checkbox-label{color:#0000008a}.mat-checkbox .mat-ripple-element{background-color:#000}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element{background:#3f51b5}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element{background:#ff4081}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element{background:#f44336}.mat-chip.mat-standard-chip{background-color:#e0e0e0;color:#000000de}.mat-chip.mat-standard-chip .mat-chip-remove{color:#000000de;opacity:.4}.mat-chip.mat-standard-chip:not(.mat-chip-disabled):active{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}.mat-chip.mat-standard-chip:not(.mat-chip-disabled) .mat-chip-remove:hover{opacity:.54}.mat-chip.mat-standard-chip.mat-chip-disabled{opacity:.4}.mat-chip.mat-standard-chip:after{background:#000}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary{background-color:#3f51b5;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-ripple-element{background-color:#ffffff1a}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn{background-color:#f44336;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-ripple-element{background-color:#ffffff1a}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent{background-color:#ff4081;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-ripple-element{background-color:#ffffff1a}.mat-table{background:#fff}.mat-table thead,.mat-table tbody,.mat-table tfoot,mat-header-row,mat-row,mat-footer-row,[mat-header-row],[mat-row],[mat-footer-row],.mat-table-sticky{background:inherit}mat-row,mat-header-row,mat-footer-row,th.mat-header-cell,td.mat-cell,td.mat-footer-cell{border-bottom-color:#0000001f}.mat-header-cell{color:#0000008a}.mat-cell,.mat-footer-cell{color:#000000de}.mat-calendar-arrow{border-top-color:#0000008a}.mat-datepicker-toggle,.mat-datepicker-content .mat-calendar-next-button,.mat-datepicker-content .mat-calendar-previous-button{color:#0000008a}.mat-calendar-table-header-divider:after{background:rgba(0,0,0,.12)}.mat-calendar-table-header,.mat-calendar-body-label{color:#0000008a}.mat-calendar-body-cell-content,.mat-date-range-input-separator{color:#000000de;border-color:transparent}.mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){color:#00000061}.mat-form-field-disabled .mat-date-range-input-separator{color:#00000061}.mat-calendar-body-in-preview{color:#0000003d}.mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border-color:#00000061}.mat-calendar-body-disabled>.mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border-color:#0000002e}.mat-calendar-body-in-range:before{background:rgba(63,81,181,.2)}.mat-calendar-body-comparison-identical,.mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-calendar-body-comparison-bridge-start:before,[dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(to right,rgba(63,81,181,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-calendar-body-comparison-bridge-end:before,[dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(to left,rgba(63,81,181,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-calendar-body-in-range>.mat-calendar-body-comparison-identical,.mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-calendar-body-comparison-identical.mat-calendar-body-selected,.mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-calendar-body-selected{background-color:#3f51b5;color:#fff}.mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:#3f51b566}.mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#3f51b54d}.mat-datepicker-content{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;background-color:#fff;color:#000000de}.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background:rgba(255,64,129,.2)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-start:before,.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(to right,rgba(255,64,129,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-end:before,.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(to left,rgba(255,64,129,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-accent .mat-calendar-body-in-range>.mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-identical.mat-calendar-body-selected,.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-datepicker-content.mat-accent .mat-calendar-body-selected{background-color:#ff4081;color:#fff}.mat-datepicker-content.mat-accent .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:#ff408166}.mat-datepicker-content.mat-accent .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.mat-datepicker-content.mat-accent .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.mat-datepicker-content.mat-accent .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#ff40814d}.mat-datepicker-content.mat-warn .mat-calendar-body-in-range:before{background:rgba(244,67,54,.2)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-start:before,.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(to right,rgba(244,67,54,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-end:before,.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(to left,rgba(244,67,54,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-warn .mat-calendar-body-in-range>.mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-identical.mat-calendar-body-selected,.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-datepicker-content.mat-warn .mat-calendar-body-selected{background-color:#f44336;color:#fff}.mat-datepicker-content.mat-warn .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:#f4433666}.mat-datepicker-content.mat-warn .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content.mat-warn .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.mat-datepicker-content.mat-warn .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.mat-datepicker-content.mat-warn .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#f443364d}.mat-datepicker-content-touch{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.mat-datepicker-toggle-active{color:#3f51b5}.mat-datepicker-toggle-active.mat-accent{color:#ff4081}.mat-datepicker-toggle-active.mat-warn{color:#f44336}.mat-date-range-input-inner[disabled]{color:#00000061}.mat-dialog-container{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f;background:#fff;color:#000000de}.mat-divider{border-top-color:#0000001f}.mat-divider-vertical{border-right-color:#0000001f}.mat-expansion-panel{background:#fff;color:#000000de}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-action-row{border-top-color:#0000001f}.mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true]),.mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true]),.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true]){background:rgba(0,0,0,.04)}@media (hover: none){.mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background:#fff}}.mat-expansion-panel-header-title{color:#000000de}.mat-expansion-panel-header-description,.mat-expansion-indicator:after{color:#0000008a}.mat-expansion-panel-header[aria-disabled=true]{color:#00000042}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description{color:inherit}.mat-expansion-panel-header{height:48px}.mat-expansion-panel-header.mat-expanded{height:64px}.mat-form-field-label{color:#0009}.mat-hint{color:#0009}.mat-form-field.mat-focused .mat-form-field-label{color:#3f51b5}.mat-form-field.mat-focused .mat-form-field-label.mat-accent{color:#ff4081}.mat-form-field.mat-focused .mat-form-field-label.mat-warn{color:#f44336}.mat-focused .mat-form-field-required-marker{color:#ff4081}.mat-form-field-ripple{background-color:#000000de}.mat-form-field.mat-focused .mat-form-field-ripple{background-color:#3f51b5}.mat-form-field.mat-focused .mat-form-field-ripple.mat-accent{background-color:#ff4081}.mat-form-field.mat-focused .mat-form-field-ripple.mat-warn{background-color:#f44336}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid) .mat-form-field-infix:after{color:#3f51b5}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-accent .mat-form-field-infix:after{color:#ff4081}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-warn .mat-form-field-infix:after{color:#f44336}.mat-form-field.mat-form-field-invalid .mat-form-field-label{color:#f44336}.mat-form-field.mat-form-field-invalid .mat-form-field-label.mat-accent,.mat-form-field.mat-form-field-invalid .mat-form-field-label .mat-form-field-required-marker{color:#f44336}.mat-form-field.mat-form-field-invalid .mat-form-field-ripple,.mat-form-field.mat-form-field-invalid .mat-form-field-ripple.mat-accent{background-color:#f44336}.mat-error{color:#f44336}.mat-form-field-appearance-legacy .mat-form-field-label{color:#0000008a}.mat-form-field-appearance-legacy .mat-hint{color:#0000008a}.mat-form-field-appearance-legacy .mat-form-field-underline{background-color:#0000006b}.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(to right,rgba(0,0,0,.42) 0%,rgba(0,0,0,.42) 33%,transparent 0%);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-standard .mat-form-field-underline{background-color:#0000006b}.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(to right,rgba(0,0,0,.42) 0%,rgba(0,0,0,.42) 33%,transparent 0%);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-fill .mat-form-field-flex{background-color:#0000000a}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-flex{background-color:#00000005}.mat-form-field-appearance-fill .mat-form-field-underline:before{background-color:#0000006b}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-label{color:#00000061}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-underline:before{background-color:transparent}.mat-form-field-appearance-outline .mat-form-field-outline{color:#0000001f}.mat-form-field-appearance-outline .mat-form-field-outline-thick{color:#000000de}.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick{color:#3f51b5}.mat-form-field-appearance-outline.mat-focused.mat-accent .mat-form-field-outline-thick{color:#ff4081}.mat-form-field-appearance-outline.mat-focused.mat-warn .mat-form-field-outline-thick{color:#f44336}.mat-form-field-appearance-outline.mat-form-field-invalid.mat-form-field-invalid .mat-form-field-outline-thick{color:#f44336}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-label{color:#00000061}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{color:#0000000f}.mat-icon.mat-primary{color:#3f51b5}.mat-icon.mat-accent{color:#ff4081}.mat-icon.mat-warn{color:#f44336}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{color:#0000008a}.mat-input-element:disabled,.mat-form-field-type-mat-native-select.mat-form-field-disabled .mat-form-field-infix:after{color:#00000061}.mat-input-element{caret-color:#3f51b5}.mat-input-element::placeholder{color:#0000006b}.mat-input-element::-moz-placeholder{color:#0000006b}.mat-input-element::-webkit-input-placeholder{color:#0000006b}.mat-input-element:-ms-input-placeholder{color:#0000006b}.mat-form-field.mat-accent .mat-input-element{caret-color:#ff4081}.mat-form-field.mat-warn .mat-input-element,.mat-form-field-invalid .mat-input-element{caret-color:#f44336}.mat-form-field-type-mat-native-select.mat-form-field-invalid .mat-form-field-infix:after{color:#f44336}.mat-list-base .mat-list-item{color:#000000de}.mat-list-base .mat-list-option{color:#000000de}.mat-list-base .mat-subheader{color:#0000008a}.mat-list-item-disabled{background-color:#eee}.mat-list-option:hover,.mat-list-option:focus,.mat-nav-list .mat-list-item:hover,.mat-nav-list .mat-list-item:focus,.mat-action-list .mat-list-item:hover,.mat-action-list .mat-list-item:focus{background:rgba(0,0,0,.04)}.mat-list-single-selected-option,.mat-list-single-selected-option:hover,.mat-list-single-selected-option:focus{background:rgba(0,0,0,.12)}.mat-menu-panel{background:#fff}.mat-menu-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-menu-item{background:transparent;color:#000000de}.mat-menu-item[disabled],.mat-menu-item[disabled] .mat-menu-submenu-icon,.mat-menu-item[disabled] .mat-icon-no-color{color:#00000061}.mat-menu-item .mat-icon-no-color,.mat-menu-submenu-icon{color:#0000008a}.mat-menu-item:hover:not([disabled]),.mat-menu-item.cdk-program-focused:not([disabled]),.mat-menu-item.cdk-keyboard-focused:not([disabled]),.mat-menu-item-highlighted:not([disabled]){background:rgba(0,0,0,.04)}.mat-paginator{background:#fff}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{color:#0000008a}.mat-paginator-decrement,.mat-paginator-increment{border-top:2px solid rgba(0,0,0,.54);border-right:2px solid rgba(0,0,0,.54)}.mat-paginator-first,.mat-paginator-last{border-top:2px solid rgba(0,0,0,.54)}.mat-icon-button[disabled] .mat-paginator-decrement,.mat-icon-button[disabled] .mat-paginator-increment,.mat-icon-button[disabled] .mat-paginator-first,.mat-icon-button[disabled] .mat-paginator-last{border-color:#00000061}.mat-paginator-container{min-height:56px}.mat-progress-bar-background{fill:#cbd0e9}.mat-progress-bar-buffer{background-color:#cbd0e9}.mat-progress-bar-fill:after{background-color:#3f51b5}.mat-progress-bar.mat-accent .mat-progress-bar-background{fill:#fbccdc}.mat-progress-bar.mat-accent .mat-progress-bar-buffer{background-color:#fbccdc}.mat-progress-bar.mat-accent .mat-progress-bar-fill:after{background-color:#ff4081}.mat-progress-bar.mat-warn .mat-progress-bar-background{fill:#f9ccc9}.mat-progress-bar.mat-warn .mat-progress-bar-buffer{background-color:#f9ccc9}.mat-progress-bar.mat-warn .mat-progress-bar-fill:after{background-color:#f44336}.mat-progress-spinner circle,.mat-spinner circle{stroke:#3f51b5}.mat-progress-spinner.mat-accent circle,.mat-spinner.mat-accent circle{stroke:#ff4081}.mat-progress-spinner.mat-warn circle,.mat-spinner.mat-warn circle{stroke:#f44336}.mat-radio-outer-circle{border-color:#0000008a}.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-outer-circle{border-color:#3f51b5}.mat-radio-button.mat-primary .mat-radio-inner-circle,.mat-radio-button.mat-primary .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-primary:active .mat-radio-persistent-ripple{background-color:#3f51b5}.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff4081}.mat-radio-button.mat-accent .mat-radio-inner-circle,.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-accent:active .mat-radio-persistent-ripple{background-color:#ff4081}.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-outer-circle{border-color:#f44336}.mat-radio-button.mat-warn .mat-radio-inner-circle,.mat-radio-button.mat-warn .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-warn:active .mat-radio-persistent-ripple{background-color:#f44336}.mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-outer-circle,.mat-radio-button.mat-radio-disabled .mat-radio-outer-circle{border-color:#00000061}.mat-radio-button.mat-radio-disabled .mat-radio-ripple .mat-ripple-element,.mat-radio-button.mat-radio-disabled .mat-radio-inner-circle{background-color:#00000061}.mat-radio-button.mat-radio-disabled .mat-radio-label-content{color:#00000061}.mat-radio-button .mat-ripple-element{background-color:#000}.mat-select-value{color:#000000de}.mat-select-placeholder{color:#0000006b}.mat-select-disabled .mat-select-value{color:#00000061}.mat-select-arrow{color:#0000008a}.mat-select-panel{background:#fff}.mat-select-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-select-panel .mat-option.mat-selected:not(.mat-option-multiple){background:rgba(0,0,0,.12)}.mat-form-field.mat-focused.mat-primary .mat-select-arrow{color:#3f51b5}.mat-form-field.mat-focused.mat-accent .mat-select-arrow{color:#ff4081}.mat-form-field.mat-focused.mat-warn .mat-select-arrow{color:#f44336}.mat-form-field .mat-select.mat-select-invalid .mat-select-arrow{color:#f44336}.mat-form-field .mat-select.mat-select-disabled .mat-select-arrow{color:#00000061}.mat-drawer-container{background-color:#fafafa;color:#000000de}.mat-drawer{background-color:#fff;color:#000000de}.mat-drawer.mat-drawer-push{background-color:#fff}.mat-drawer:not(.mat-drawer-side){box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.mat-drawer-side{border-right:solid 1px rgba(0,0,0,.12)}.mat-drawer-side.mat-drawer-end{border-left:solid 1px rgba(0,0,0,.12);border-right:none}[dir=rtl] .mat-drawer-side{border-left:solid 1px rgba(0,0,0,.12);border-right:none}[dir=rtl] .mat-drawer-side.mat-drawer-end{border-left:none;border-right:solid 1px rgba(0,0,0,.12)}.mat-drawer-backdrop.mat-drawer-shown{background-color:#0009}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb{background-color:#ff4081}.mat-slide-toggle.mat-checked .mat-slide-toggle-bar{background-color:#ff40818a}.mat-slide-toggle.mat-checked .mat-ripple-element{background-color:#ff4081}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-thumb{background-color:#3f51b5}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-bar{background-color:#3f51b58a}.mat-slide-toggle.mat-primary.mat-checked .mat-ripple-element{background-color:#3f51b5}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-thumb{background-color:#f44336}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-bar{background-color:#f443368a}.mat-slide-toggle.mat-warn.mat-checked .mat-ripple-element{background-color:#f44336}.mat-slide-toggle:not(.mat-checked) .mat-ripple-element{background-color:#000}.mat-slide-toggle-thumb{box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f;background-color:#fafafa}.mat-slide-toggle-bar{background-color:#00000061}.mat-slider-track-background{background-color:#00000042}.mat-primary .mat-slider-track-fill,.mat-primary .mat-slider-thumb,.mat-primary .mat-slider-thumb-label{background-color:#3f51b5}.mat-primary .mat-slider-thumb-label-text{color:#fff}.mat-primary .mat-slider-focus-ring{background-color:#3f51b533}.mat-accent .mat-slider-track-fill,.mat-accent .mat-slider-thumb,.mat-accent .mat-slider-thumb-label{background-color:#ff4081}.mat-accent .mat-slider-thumb-label-text{color:#fff}.mat-accent .mat-slider-focus-ring{background-color:#ff408133}.mat-warn .mat-slider-track-fill,.mat-warn .mat-slider-thumb,.mat-warn .mat-slider-thumb-label{background-color:#f44336}.mat-warn .mat-slider-thumb-label-text{color:#fff}.mat-warn .mat-slider-focus-ring{background-color:#f4433633}.mat-slider:hover .mat-slider-track-background,.mat-slider.cdk-focused .mat-slider-track-background{background-color:#00000061}.mat-slider-disabled .mat-slider-track-background,.mat-slider-disabled .mat-slider-track-fill,.mat-slider-disabled .mat-slider-thumb{background-color:#00000042}.mat-slider-disabled:hover .mat-slider-track-background{background-color:#00000042}.mat-slider-min-value .mat-slider-focus-ring{background-color:#0000001f}.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb,.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb-label{background-color:#000000de}.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb,.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb-label{background-color:#00000042}.mat-slider-min-value:not(.mat-slider-thumb-label-showing) .mat-slider-thumb{border-color:#00000042;background-color:transparent}.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover .mat-slider-thumb,.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused .mat-slider-thumb{border-color:#00000061}.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover.mat-slider-disabled .mat-slider-thumb,.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused.mat-slider-disabled .mat-slider-thumb{border-color:#00000042}.mat-slider-has-ticks .mat-slider-wrapper:after{border-color:#000000b3}.mat-slider-horizontal .mat-slider-ticks{background-image:repeating-linear-gradient(to right,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent);background-image:-moz-repeating-linear-gradient(.0001deg,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-slider-vertical .mat-slider-ticks{background-image:repeating-linear-gradient(to bottom,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-step-header.cdk-keyboard-focused,.mat-step-header.cdk-program-focused,.mat-step-header:hover:not([aria-disabled]),.mat-step-header:hover[aria-disabled=false]{background-color:#0000000a}.mat-step-header:hover[aria-disabled=true]{cursor:default}@media (hover: none){.mat-step-header:hover{background:none}}.mat-step-header .mat-step-label,.mat-step-header .mat-step-optional{color:#0000008a}.mat-step-header .mat-step-icon{background-color:#0000008a;color:#fff}.mat-step-header .mat-step-icon-selected,.mat-step-header .mat-step-icon-state-done,.mat-step-header .mat-step-icon-state-edit{background-color:#3f51b5;color:#fff}.mat-step-header.mat-accent .mat-step-icon{color:#fff}.mat-step-header.mat-accent .mat-step-icon-selected,.mat-step-header.mat-accent .mat-step-icon-state-done,.mat-step-header.mat-accent .mat-step-icon-state-edit{background-color:#ff4081;color:#fff}.mat-step-header.mat-warn .mat-step-icon{color:#fff}.mat-step-header.mat-warn .mat-step-icon-selected,.mat-step-header.mat-warn .mat-step-icon-state-done,.mat-step-header.mat-warn .mat-step-icon-state-edit{background-color:#f44336;color:#fff}.mat-step-header .mat-step-icon-state-error{background-color:transparent;color:#f44336}.mat-step-header .mat-step-label.mat-step-label-active{color:#000000de}.mat-step-header .mat-step-label.mat-step-label-error{color:#f44336}.mat-stepper-horizontal,.mat-stepper-vertical{background-color:#fff}.mat-stepper-vertical-line:before{border-left-color:#0000001f}.mat-horizontal-stepper-header:before,.mat-horizontal-stepper-header:after,.mat-stepper-horizontal-line{border-top-color:#0000001f}.mat-horizontal-stepper-header{height:72px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header,.mat-vertical-stepper-header{padding:24px}.mat-stepper-vertical-line:before{top:-16px;bottom:-16px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:after,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:before{top:36px}.mat-stepper-label-position-bottom .mat-stepper-horizontal-line{top:36px}.mat-sort-header-arrow{color:#757575}.mat-tab-nav-bar,.mat-tab-header{border-bottom:1px solid rgba(0,0,0,.12)}.mat-tab-group-inverted-header .mat-tab-nav-bar,.mat-tab-group-inverted-header .mat-tab-header{border-top:1px solid rgba(0,0,0,.12);border-bottom:none}.mat-tab-label,.mat-tab-link{color:#000000de}.mat-tab-label.mat-tab-disabled,.mat-tab-link.mat-tab-disabled{color:#00000061}.mat-tab-header-pagination-chevron{border-color:#000000de}.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#00000061}.mat-tab-group[class*=mat-background-]>.mat-tab-header,.mat-tab-nav-bar[class*=mat-background-]{border-bottom:none;border-top:none}.mat-tab-group.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#c5cae94d}.mat-tab-group.mat-primary .mat-ink-bar,.mat-tab-nav-bar.mat-primary .mat-ink-bar{background-color:#3f51b5}.mat-tab-group.mat-primary.mat-background-primary>.mat-tab-header .mat-ink-bar,.mat-tab-group.mat-primary.mat-background-primary>.mat-tab-link-container .mat-ink-bar,.mat-tab-nav-bar.mat-primary.mat-background-primary>.mat-tab-header .mat-ink-bar,.mat-tab-nav-bar.mat-primary.mat-background-primary>.mat-tab-link-container .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ff80ab4d}.mat-tab-group.mat-accent .mat-ink-bar,.mat-tab-nav-bar.mat-accent .mat-ink-bar{background-color:#ff4081}.mat-tab-group.mat-accent.mat-background-accent>.mat-tab-header .mat-ink-bar,.mat-tab-group.mat-accent.mat-background-accent>.mat-tab-link-container .mat-ink-bar,.mat-tab-nav-bar.mat-accent.mat-background-accent>.mat-tab-header .mat-ink-bar,.mat-tab-nav-bar.mat-accent.mat-background-accent>.mat-tab-link-container .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ffcdd24d}.mat-tab-group.mat-warn .mat-ink-bar,.mat-tab-nav-bar.mat-warn .mat-ink-bar{background-color:#f44336}.mat-tab-group.mat-warn.mat-background-warn>.mat-tab-header .mat-ink-bar,.mat-tab-group.mat-warn.mat-background-warn>.mat-tab-link-container .mat-ink-bar,.mat-tab-nav-bar.mat-warn.mat-background-warn>.mat-tab-header .mat-ink-bar,.mat-tab-nav-bar.mat-warn.mat-background-warn>.mat-tab-link-container .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#c5cae94d}.mat-tab-group.mat-background-primary>.mat-tab-header,.mat-tab-group.mat-background-primary>.mat-tab-link-container,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination{background-color:#3f51b5}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-label,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-tab-link,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-label,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-tab-link{color:#fff}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-tab-link.mat-tab-disabled{color:#fff6}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-group.mat-background-primary>.mat-tab-header .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-focus-indicator:before{border-color:#fff}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#fff;opacity:.4}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-ripple-element,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-ripple-element,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination .mat-ripple-element{background-color:#fff;opacity:.12}.mat-tab-group.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ff80ab4d}.mat-tab-group.mat-background-accent>.mat-tab-header,.mat-tab-group.mat-background-accent>.mat-tab-link-container,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination{background-color:#ff4081}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-label,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-tab-link,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-label,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-tab-link{color:#fff}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-tab-link.mat-tab-disabled{color:#fff6}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-group.mat-background-accent>.mat-tab-header .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-focus-indicator:before{border-color:#fff}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#fff;opacity:.4}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-ripple-element,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-ripple-element,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination .mat-ripple-element{background-color:#fff;opacity:.12}.mat-tab-group.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ffcdd24d}.mat-tab-group.mat-background-warn>.mat-tab-header,.mat-tab-group.mat-background-warn>.mat-tab-link-container,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination{background-color:#f44336}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-label,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-tab-link,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-label,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-tab-link{color:#fff}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-tab-link.mat-tab-disabled{color:#fff6}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-group.mat-background-warn>.mat-tab-header .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-focus-indicator:before{border-color:#fff}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#fff;opacity:.4}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-ripple-element,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-ripple-element,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination .mat-ripple-element{background-color:#fff;opacity:.12}.mat-toolbar{background:#f5f5f5;color:#000000de}.mat-toolbar.mat-primary{background:#3f51b5;color:#fff}.mat-toolbar.mat-accent{background:#ff4081;color:#fff}.mat-toolbar.mat-warn{background:#f44336;color:#fff}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar-multiple-rows{min-height:64px}.mat-toolbar-row,.mat-toolbar-single-row{height:64px}@media (max-width: 599px){.mat-toolbar-multiple-rows{min-height:56px}.mat-toolbar-row,.mat-toolbar-single-row{height:56px}}.mat-tooltip{background:rgba(97,97,97,.9)}.mat-tree{background:#fff}.mat-tree-node,.mat-nested-tree-node{color:#000000de}.mat-tree-node{min-height:48px}.mat-snack-bar-container{color:#ffffffb3;background:#323232;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.mat-simple-snackbar-action{color:#ff4081}\n"]
1137
1418
  },] }
1138
1419
  ];
@@ -1191,7 +1472,7 @@
1191
1472
  };
1192
1473
 
1193
1474
  // @ts-ignore
1194
- var moment$3 = require('moment');
1475
+ var moment$2 = require('moment');
1195
1476
  var DAY_FORMATS = {
1196
1477
  parse: {
1197
1478
  dateInput: 'DD-MM-YYYY',
@@ -1203,7 +1484,6 @@
1203
1484
  monthYearA11yLabel: 'MMMM YYYY'
1204
1485
  },
1205
1486
  };
1206
- var ɵ0$4 = DAY_FORMATS;
1207
1487
  var DayTagComponent = /** @class */ (function (_super) {
1208
1488
  __extends(DayTagComponent, _super);
1209
1489
  function DayTagComponent() {
@@ -1213,14 +1493,19 @@
1213
1493
  }
1214
1494
  Object.defineProperty(DayTagComponent.prototype, "isLocked", {
1215
1495
  get: function () {
1216
- return this.date ? !this.dateFilter(moment$3.unix(this.date).utc()) : false;
1496
+ return this.date ? !this.dateFilter(moment$2.unix(this.date).utc()) : false;
1217
1497
  },
1218
1498
  enumerable: false,
1219
1499
  configurable: true
1220
1500
  });
1221
1501
  DayTagComponent.prototype.initDate = function () {
1222
- this.date = this.defaultValue || moment$3().unix();
1223
- this.dateObj.date = this.date;
1502
+ if (this.defaultValue) {
1503
+ this.date = this.defaultValue;
1504
+ this.dateObj.date = this.date;
1505
+ }
1506
+ else {
1507
+ this.dateObj.date = moment$2().unix();
1508
+ }
1224
1509
  };
1225
1510
  DayTagComponent.prototype.initName = function () {
1226
1511
  if (!this.name) {
@@ -1228,7 +1513,7 @@
1228
1513
  }
1229
1514
  };
1230
1515
  DayTagComponent.prototype.chosenTagHandler = function (value) {
1231
- var date = moment$3.unix(value).utc();
1516
+ var date = moment$2.unix(value).utc();
1232
1517
  var resultTag = {
1233
1518
  name: this.name,
1234
1519
  value: date.unix(),
@@ -1241,7 +1526,7 @@
1241
1526
  DayTagComponent.prototype.dateFilter = function (momentData) {
1242
1527
  var date = momentData.date();
1243
1528
  return !this.lockedDate.some(function (timestamp) {
1244
- var lockDate = moment$3.unix(timestamp);
1529
+ var lockDate = moment$2.unix(timestamp);
1245
1530
  return lockDate.date() === date;
1246
1531
  });
1247
1532
  };
@@ -1252,14 +1537,7 @@
1252
1537
  { type: i0.Component, args: [{
1253
1538
  template: "<div class=\"tag-wrapper\">\n <p class=\"tag__label\">{{ name }}</p>\n <dr-date-picker format=\"day\"\n [(ngModel)]=\"date\"\n [disabled]=\"disabled\"\n [datepickerFilter]=\"dateFilter.bind(this)\"\n (ngModelChange)=\"chosenTagHandler($event)\"></dr-date-picker>\n</div>\n\n",
1254
1539
  selector: 'day-tag',
1255
- providers: [
1256
- {
1257
- provide: core.DateAdapter,
1258
- useClass: materialMomentAdapter.MomentDateAdapter,
1259
- deps: [core.MAT_DATE_LOCALE, materialMomentAdapter.MAT_MOMENT_DATE_ADAPTER_OPTIONS],
1260
- },
1261
- { provide: core.MAT_DATE_FORMATS, useValue: ɵ0$4 },
1262
- ],
1540
+ providers: [DrDatePickerService],
1263
1541
  styles: [":host.locked>.tag-wrapper>dr-date-picker{opacity:.4}.tag__label{margin:0 0 4px;color:#0c142b;font-size:14px;font-weight:400;line-height:22px}\n"]
1264
1542
  },] }
1265
1543
  ];
@@ -1995,97 +2273,15 @@
1995
2273
  var email = item.email ? item.email[0] : '';
1996
2274
  return (item.first_name && item.last_name ? (item.first_name[0] + item.last_name[0]) : email).toUpperCase();
1997
2275
  }
1998
- return item.first_name && item.last_name ? (item.first_name + ' ' + item.last_name) : item.email;
1999
- };
2000
- return DrAvatarPipe;
2001
- }());
2002
- DrAvatarPipe.decorators = [
2003
- { type: i0.Pipe, args: [{
2004
- name: 'drAvatar'
2005
- },] }
2006
- ];
2007
-
2008
- exports.DateFromats = void 0;
2009
- (function (DateFromats) {
2010
- DateFromats["MAT_DEFAULT_DATE_FORMAT"] = "MM/DD/yyyy";
2011
- DateFromats["DATE_INPUT_FORMAT"] = "YYYY/MM/DD";
2012
- DateFromats["YEAR_FORMAT"] = "yyyy";
2013
- DateFromats["MONTH_YEAR_FORMAT"] = "MM/yyyy";
2014
- DateFromats["QUARTER_FORMAT"] = "Q/yyyy";
2015
- DateFromats["WEEK_FORMAT"] = "W/yyyy";
2016
- })(exports.DateFromats || (exports.DateFromats = {}));
2017
- var CustomDateFormat = /** @class */ (function () {
2018
- function CustomDateFormat() {
2019
- this._parse = {
2020
- dateInput: exports.DateFromats.DATE_INPUT_FORMAT,
2021
- };
2022
- this._display = {
2023
- dateInput: exports.DateFromats.DATE_INPUT_FORMAT,
2024
- monthYearLabel: 'MMM YYYY',
2025
- dateA11yLabel: 'LL',
2026
- monthYearA11yLabel: 'MMM YYYY',
2027
- quarterYearLabel: 'Q/YYYY',
2028
- yearLabel: 'YYYY'
2029
- };
2030
- }
2031
- Object.defineProperty(CustomDateFormat.prototype, "parse", {
2032
- get: function () {
2033
- return this._parse;
2034
- },
2035
- set: function (parse) {
2036
- this._parse = Object.assign({}, this._parse, parse);
2037
- },
2038
- enumerable: false,
2039
- configurable: true
2040
- });
2041
- Object.defineProperty(CustomDateFormat.prototype, "display", {
2042
- get: function () {
2043
- return this._display;
2044
- },
2045
- set: function (display) {
2046
- this._display = Object.assign({}, this._display, display);
2047
- },
2048
- enumerable: false,
2049
- configurable: true
2050
- });
2051
- CustomDateFormat.prototype.updateDateFormat = function (parse, display) {
2052
- this.parse = parse;
2053
- if (!display) {
2054
- display = parse;
2055
- }
2056
- this.display = display;
2276
+ return item.first_name && item.last_name ? (item.first_name + ' ' + item.last_name) : item.email;
2057
2277
  };
2058
- return CustomDateFormat;
2278
+ return DrAvatarPipe;
2059
2279
  }());
2060
- exports.DatePickerPeriodPosition = void 0;
2061
- (function (DatePickerPeriodPosition) {
2062
- DatePickerPeriodPosition[DatePickerPeriodPosition["END_OF_PERIOD"] = 0] = "END_OF_PERIOD";
2063
- DatePickerPeriodPosition[DatePickerPeriodPosition["MIDDLE_OF_PERIOD"] = 1] = "MIDDLE_OF_PERIOD";
2064
- DatePickerPeriodPosition[DatePickerPeriodPosition["START_OF_PERIOD"] = 2] = "START_OF_PERIOD";
2065
- DatePickerPeriodPosition[DatePickerPeriodPosition["DEFAULT"] = 3] = "DEFAULT";
2066
- })(exports.DatePickerPeriodPosition || (exports.DatePickerPeriodPosition = {}));
2067
- exports.TimeframeOption = void 0;
2068
- (function (TimeframeOption) {
2069
- TimeframeOption["DAY"] = "day";
2070
- TimeframeOption["MONTH"] = "month";
2071
- TimeframeOption["QUARTER"] = "quarter";
2072
- TimeframeOption["WEEK"] = "week";
2073
- TimeframeOption["YEAR"] = "year";
2074
- })(exports.TimeframeOption || (exports.TimeframeOption = {}));
2075
- exports.CalendarView = void 0;
2076
- (function (CalendarView) {
2077
- CalendarView["FOR_DAYS"] = "month";
2078
- CalendarView["FOR_MONTHS"] = "year";
2079
- CalendarView["FOR_QUARTERS"] = "none";
2080
- CalendarView["FOR_YEARS"] = "multi-year";
2081
- })(exports.CalendarView || (exports.CalendarView = {}));
2082
- exports.DateTags = void 0;
2083
- (function (DateTags) {
2084
- DateTags["TODAY"] = "today";
2085
- DateTags["YESTERDAY"] = "yesterday";
2086
- DateTags["THIS_MONTH"] = "this_month";
2087
- DateTags["PREV_MONTH"] = "prev_month";
2088
- })(exports.DateTags || (exports.DateTags = {}));
2280
+ DrAvatarPipe.decorators = [
2281
+ { type: i0.Pipe, args: [{
2282
+ name: 'drAvatar'
2283
+ },] }
2284
+ ];
2089
2285
 
2090
2286
  var POPUP_POSITIONS = {
2091
2287
  top: {
@@ -2456,20 +2652,12 @@
2456
2652
  elementClass: [{ type: i0.HostBinding, args: ['class',] }]
2457
2653
  };
2458
2654
 
2459
- exports.ToggleButtonTheme = void 0;
2460
- (function (ToggleButtonTheme) {
2461
- ToggleButtonTheme["DEFAULT"] = "default";
2462
- ToggleButtonTheme["DOTTED"] = "dotted";
2463
- })(exports.ToggleButtonTheme || (exports.ToggleButtonTheme = {}));
2464
-
2465
2655
  var DrToggleButtonComponent = /** @class */ (function () {
2466
2656
  function DrToggleButtonComponent(cdr) {
2467
2657
  this.cdr = cdr;
2468
2658
  this._disabled = false;
2469
2659
  this.bindLabel = null;
2470
2660
  this.bindValue = null;
2471
- this.bindHidden = null;
2472
- this.theme = exports.ToggleButtonTheme.DEFAULT;
2473
2661
  this.onChange = function () {
2474
2662
  };
2475
2663
  this.onTouched = function () {
@@ -2506,12 +2694,12 @@
2506
2694
  DrToggleButtonComponent.decorators = [
2507
2695
  { type: i0.Component, args: [{
2508
2696
  selector: 'dr-toggle-button',
2509
- template: "<div class=\"toggle-container\"\n [class.disabled]=\"_disabled\"\n [attr.theme]=\"theme\">\n <ng-container *ngFor=\"let item of items\">\n <div *ngIf=\"!item?.[bindHidden]\"\n [class.selected]=\"item[bindValue] === selectedValue || item === selectedValue\"\n [class.disabled]=\"item.disabled\"\n class=\"toggle-container__item\">{{ item[bindLabel] || item.name || item }}</div>\n </ng-container>\n</div>\n",
2697
+ template: "<div class=\"toggle-container\" [class.disabled]=\"_disabled\">\n <div\n *ngFor=\"let item of items\"\n (click)=\"setValue(item)\"\n [class.selected]=\"item[bindValue] === selectedValue || item === selectedValue\"\n [class.disabled]=\"item.disabled\"\n class=\"toggle-container__item\"\n >\n {{ item[bindLabel] || item.name || item }}\n </div>\n</div>\n",
2510
2698
  providers: [
2511
2699
  { provide: forms.NG_VALUE_ACCESSOR, useExisting: i0.forwardRef(function () { return DrToggleButtonComponent; }), multi: true }
2512
2700
  ],
2513
2701
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
2514
- styles: [".toggle-container{display:flex;flex-wrap:nowrap;box-sizing:border-box;border-radius:20px;height:28px}.toggle-container.disabled{pointer-events:none}.toggle-container__item{height:28px;display:flex;align-items:center;justify-content:center;padding:4px 16px;border-radius:20px;margin:-1px;cursor:pointer;font-weight:400;font-size:12px;line-height:20px;white-space:nowrap;color:#4e566c}.toggle-container__item.selected{background:#f2f2fb!important;border:1px solid #7f7fdd!important;color:#25258c!important}.toggle-container__item.disabled{pointer-events:none;cursor:default;background:#f0f1f4;color:#9ea1aa;border:1px solid #c3c4ce}.toggle-container[theme~=default]{background:#f6f7f8;border:1px solid #c3c4ce}.toggle-container[theme~=dotted] .toggle-container__item{border:1px solid #9ea1aa;border-radius:18px;margin-left:5px;color:#0c142b}.toggle-container[theme~=dotted] .toggle-container__item:hover{background:#f0f1f4}.toggle-container[theme~=dotted] .toggle-container__item:hover .toggle-container[theme~=dotted] .toggle-container__item.selected{background:unset}.toggle-container[theme~=dotted] .toggle-container__item:first-child{margin-left:0}\n"]
2702
+ styles: [".toggle-container{display:flex;flex-wrap:nowrap;background:#f6f7f8;border:1px solid #c3c4ce;box-sizing:border-box;border-radius:20px;height:28px}.toggle-container.disabled{pointer-events:none}.toggle-container__item{height:28px;display:flex;align-items:center;justify-content:center;padding:4px 16px;border-radius:20px;margin:-1px;cursor:pointer;font-weight:400;font-size:12px;line-height:20px;white-space:nowrap;color:#4e566c}.toggle-container__item.selected{font-weight:400;background:#f2f2fb;border:1px solid #7f7fdd;color:#25258c}.toggle-container__item.disabled{pointer-events:none;cursor:default;background:#f0f1f4;color:#9ea1aa;border:1px solid #c3c4ce}\n"]
2515
2703
  },] }
2516
2704
  ];
2517
2705
  DrToggleButtonComponent.ctorParameters = function () { return [
@@ -2521,8 +2709,6 @@
2521
2709
  items: [{ type: i0.Input }],
2522
2710
  bindLabel: [{ type: i0.Input }],
2523
2711
  bindValue: [{ type: i0.Input }],
2524
- bindHidden: [{ type: i0.Input }],
2525
- theme: [{ type: i0.Input }],
2526
2712
  selectedValue: [{ type: i0.Input }],
2527
2713
  disabled: [{ type: i0.Input }]
2528
2714
  };
@@ -4009,703 +4195,213 @@
4009
4195
  this.dialogData = dialogData;
4010
4196
  this.dialogFieldType = exports.DIALOG_FIELD_TYPE;
4011
4197
  this.saving$ = new rxjs.BehaviorSubject(false);
4012
- this.isLoading = false;
4013
- this.showServerErrorMessage = false;
4014
- this.destroy$ = new rxjs.Subject();
4015
- this.class = (_b = (_a = this === null || this === void 0 ? void 0 : this.dialogData) === null || _a === void 0 ? void 0 : _a.theme) === null || _b === void 0 ? void 0 : _b.themeSize;
4016
- }
4017
- DialogModalWrapperComponent.prototype.ngOnInit = function () {
4018
- if (this.dialogData.fields) {
4019
- this.form = new forms.FormGroup(this.dialogData.fields.reduce(function (accumulator, currentValue) {
4020
- var currentFormControl = {};
4021
- currentFormControl[currentValue.name] = new forms.FormControl(currentValue.default || null, currentValue.validators || []);
4022
- return Object.assign(accumulator, currentFormControl);
4023
- }, {}));
4024
- }
4025
- };
4026
- DialogModalWrapperComponent.prototype.onAccept = function () {
4027
- var _this = this;
4028
- if (!this.dialogData.confirmFn)
4029
- return this.dialogRef.close(this.form.value || true);
4030
- this.isLoading = true;
4031
- this.saving$.next(true);
4032
- this.dialogData.confirmFn(this.form.value).pipe(operators.takeUntil(this.destroy$), operators.catchError(function (err) {
4033
- _this.showServerErrorMessage = true;
4034
- _this.isLoading = false;
4035
- return _this.dialogService.throwErr(err, _this.saving$);
4036
- })).subscribe(function () {
4037
- _this.saving$.next(false);
4038
- _this.dialogRef.close(_this.form.value || true);
4039
- });
4040
- };
4041
- DialogModalWrapperComponent.prototype.footerAction = function () {
4042
- this.dialogData.footerTemplateData.action(this.form.value);
4043
- };
4044
- DialogModalWrapperComponent.prototype.closeDialog = function () {
4045
- this.dialogRef.close(false);
4046
- };
4047
- DialogModalWrapperComponent.prototype.ngOnDestroy = function () {
4048
- this.destroy$.next(null);
4049
- this.destroy$.complete();
4050
- };
4051
- return DialogModalWrapperComponent;
4052
- }());
4053
- DialogModalWrapperComponent.decorators = [
4054
- { type: i0.Component, args: [{
4055
- selector: 'dr-dialog-modal-wrapper',
4056
- template: "<div header class=\"header-dialog\">\n <h1 class=\"title-dialog\" data-test=\"modalTitle\">{{ dialogData.title }}</h1>\n <i mat-icon-button *ngIf=\"!dialogData.hideCloseBtn\" (click)=\"closeDialog()\" class=\"dr-icon-exit icon-close\"\n data-test=\"xBtn\"></i>\n</div>\n<div *ngIf=\"dialogData.content\" class=\"content-dialog\">\n <ng-container>{{ dialogData.content }}</ng-container>\n <span #content class=\"content-anchor\"></span>\n</div>\n<form *ngIf=\"dialogData.fields\" [formGroup]=\"form\" class=\"dr-smart-from\">\n <div class=\"dr-smart-form_wrapper\">\n <div *ngFor=\"let field of dialogData.fields\" class=\"dr-smart-form_group\"\n [ngStyle]=\"{ display: field.isLabelFullWidth ? 'block' : 'flex' }\">\n <label *ngIf=\"field.label && field.type !== dialogFieldType.CHECKBOX\"\n [ngClass]=\"field.isLabelFullWidth ? 'col-md-12 mb-2' : 'col-md-2'\"\n class=\"label p-0 d-flex align-items-center\">{{ field.label }}</label>\n <div class=\"input-group p-0\"\n [ngClass]=\"{ 'col-md-10': field.label && !field.isLabelFullWidth, 'col-md-12': !field.label || field.isLabelFullWidth }\">\n <dr-select *ngIf=\"field.type === dialogFieldType.SELECT\"\n [searchable]=\"dialogData.searchable\"\n [clearable]=\"dialogData.clearable\"\n [formControlName]=\"field.name\"\n [bindLabel]=\"field.bindLabel || null\"\n [bindValue]=\"field.bindValue || null\"\n [selectedItem]=\"field.default\"\n [items]=\"field.items || (field.items$ | async)\"\n [required]=\"true\"\n [placeholder]=\"field.placeholder\">\n <ng-template *ngIf=\"dialogData?.footerTemplateData\" #optionFooterTemplate let-item=\"item\" let-close=\"close\">\n <button (click)=\"footerAction(); close();\" class=\"dr-select-footer__btn\">\n <i *ngIf=\"dialogData.footerTemplateData.icon\"\n class=\"{{ dialogData.footerTemplateData.icon }}\"></i>\n {{ dialogData.footerTemplateData.label }}</button>\n </ng-template>\n </dr-select>\n <dr-input *ngIf=\"field.type === dialogFieldType.INPUT\" data-test=\"modalInput\" class=\"form-control\"\n [formControlName]=\"field.name\" [placeholder]=\"field.placeholder\"></dr-input>\n <dr-date-picker *ngIf=\"field.type === dialogFieldType.DATE_PICKER\"\n [formControlName]=\"field.name\"\n [format]=\"field.datePickerFormat\"\n [placeholder]=\"field.placeholder\"></dr-date-picker>\n <dr-checkbox *ngIf=\"field.type === dialogFieldType.CHECKBOX\" [formControlName]=\"field.name\">\n {{ field.label }}\n </dr-checkbox>\n <label class=\"form-field-error-alert\" *ngIf=\"form.invalid && form.controls[field.name]?.dirty && form.controls[field.name]?.errors\">\n {{ form.controls[field.name].errors.errorString }}\n </label>\n <label class=\"form-error-alert\" *ngIf=\"dialogData.errorMessage && !form.pristine && form.invalid\">\n {{ dialogData.errorMessage }}\n </label>\n <label class=\"form-error-alert\"\n *ngIf=\"form.valid && showServerErrorMessage && dialogData.serverErrorMessage\">\n {{ dialogData.serverErrorMessage }}\n </label>\n </div>\n </div>\n </div>\n</form>\n\n<div footer class=\"footer-dialog\">\n <div class=\"buttons-wrapper\" *ngIf=\"dialogData.cancelButton || dialogData.acceptButton\">\n <dr-button *ngIf=\"dialogData.cancelButton\" data-test=\"modalCloseBtn\" (click)=\"closeDialog()\"\n [theme]=\"'secondary'\">{{ dialogData.cancelButton.label }}</dr-button>\n <dr-button *ngIf=\"dialogData.acceptButton\" data-test=\"modalAddBtn\" (click)=\"onAccept()\" [theme]=\"'primary'\"\n [isLoading]=\"isLoading\" [disabled]=\"form.invalid\">{{ dialogData.acceptButton.label }}</dr-button>\n </div>\n</div>\n",
4057
- styles: [":host{display:flex;justify-content:space-between;flex-direction:column}:host.small-modal{min-height:188px;max-height:467px;min-width:400px;max-width:400px}:host.medium-modal,.medium-modal-max-height:host{min-height:188px;max-height:467px;min-width:632px;max-width:632px}:host.medium-small-modal{min-height:188px;max-height:345px;min-width:460px;max-width:460px}:host.medium-modal-max-height{max-height:80vh}.header-dialog{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:8px 39px 8px 32px;border-bottom:1px solid #e5e6ea}.title-dialog{color:#151b3f;position:static;font-weight:bold;font-size:18px;line-height:24px}.content-dialog{font-weight:400;font-size:14px;padding:16px 32px 5px}.icon-close{color:#51566f;cursor:pointer}.dr-smart-from{font-size:14px;font-weight:500;line-height:22px;padding:16px 32px 22px}.dr-smart-from dr-checkbox{font-weight:400}.content-dialog{padding:16px 32px 0;font-weight:400;font-size:14px;line-height:22px}.content-anchor{display:none}.footer-dialog{border-top:1px solid #e5e6ea}.buttons-wrapper{display:flex;justify-content:flex-end;padding-top:10px;padding-right:32px;padding-bottom:11px}.buttons-wrapper dr-button:nth-of-type(2){margin-left:12px}.form-field-error-alert{font-size:12px;color:#bf1d30;line-height:20px}.form-error-alert{position:absolute;margin-top:5px;font-size:12px;color:red}.dr-select-footer__btn{background-color:transparent;display:flex;align-items:center;justify-content:flex-start;cursor:pointer;min-width:15rem;font-style:normal;font-weight:400;font-size:14px;line-height:24px;clear:both;width:100%;white-space:nowrap;padding:0 12px;height:36px;flex-shrink:0}\n"]
4058
- },] }
4059
- ];
4060
- DialogModalWrapperComponent.ctorParameters = function () { return [
4061
- { type: i1$1.MatDialogRef },
4062
- { type: DialogService },
4063
- { type: undefined, decorators: [{ type: i0.Inject, args: [i1$1.MAT_DIALOG_DATA,] }] }
4064
- ]; };
4065
- DialogModalWrapperComponent.propDecorators = {
4066
- class: [{ type: i0.HostBinding, args: ['class',] }]
4067
- };
4068
-
4069
- var DEFAULT_PANE_CLASS_NAME = 'wrapper-dialog';
4070
- var DEFAULT_CONFIRM_THEME = { themeSize: 'small-modal' };
4071
- var DialogService = /** @class */ (function () {
4072
- function DialogService(dialog) {
4073
- this.dialog = dialog;
4074
- }
4075
- /**
4076
- * Function to open modal with custom form
4077
- */
4078
- DialogService.prototype.openDialogWrapper = function (componentTypeChild, dialogData, componentTypeWrapper) {
4079
- if (!componentTypeWrapper)
4080
- componentTypeWrapper = DialogWrapperComponent;
4081
- dialogData.data.child = componentTypeChild;
4082
- if (dialogData.panelClass instanceof Array) {
4083
- dialogData.panelClass.push(DEFAULT_PANE_CLASS_NAME);
4084
- }
4085
- else {
4086
- dialogData.panelClass = [dialogData.panelClass || '', DEFAULT_PANE_CLASS_NAME];
4087
- }
4088
- this.wrapperComponent = this.openDialog(componentTypeWrapper, dialogData);
4089
- return this.wrapperComponent;
4090
- };
4091
- /**
4092
- * Function to open confirmation modal
4093
- */
4094
- DialogService.prototype.openConfirmDialog = function (confirmDialogData) {
4095
- var dialogData = { panelClass: DEFAULT_PANE_CLASS_NAME, data: null };
4096
- Object.assign(dialogData, { data: confirmDialogData });
4097
- if (!dialogData.data.theme)
4098
- dialogData.data.theme = DEFAULT_CONFIRM_THEME;
4099
- dialogData.data.theme.isConfirmation = true;
4100
- return this.openDialog(DialogWrapperComponent, dialogData);
4101
- };
4102
- /**
4103
- * Function to open confirmation modal with inputs
4104
- */
4105
- DialogService.prototype.openConfirmDialogModal = function (confirmDialogData) {
4106
- var dialogData = { panelClass: DEFAULT_PANE_CLASS_NAME, data: null };
4107
- Object.assign(dialogData, { data: confirmDialogData });
4108
- if (!dialogData.data.theme)
4109
- dialogData.data.theme = DEFAULT_CONFIRM_THEME;
4110
- return this.openDialog(DialogModalWrapperComponent, dialogData);
4111
- };
4112
- DialogService.prototype.close = function (params) {
4113
- this.wrapperComponent.close(params);
4114
- };
4115
- DialogService.prototype.changeDialogThemeSize = function (theme) {
4116
- this.wrapperComponent.componentInstance.class = theme;
4117
- };
4118
- DialogService.prototype.openDialog = function (componentType, dialogData) {
4119
- return this.dialog.open(componentType, dialogData);
4120
- };
4121
- DialogService.prototype.throwErr = function (err, load) {
4122
- if (load) {
4123
- load.next(false);
4124
- }
4125
- throw err;
4126
- };
4127
- return DialogService;
4128
- }());
4129
- DialogService.ɵprov = i0__namespace.ɵɵdefineInjectable({ factory: function DialogService_Factory() { return new DialogService(i0__namespace.ɵɵinject(i1__namespace$1.MatDialog)); }, token: DialogService, providedIn: "root" });
4130
- DialogService.decorators = [
4131
- { type: i0.Injectable, args: [{
4132
- providedIn: 'root'
4133
- },] }
4134
- ];
4135
- DialogService.ctorParameters = function () { return [
4136
- { type: i1$1.MatDialog }
4137
- ]; };
4138
-
4139
- exports.TooltipPosition = void 0;
4140
- (function (TooltipPosition) {
4141
- TooltipPosition["TOP"] = "top";
4142
- TooltipPosition["BOTTOM"] = "bottom";
4143
- TooltipPosition["LEFT"] = "left";
4144
- TooltipPosition["RIGHT"] = "right";
4145
- TooltipPosition["TOP_RIGHT"] = "top-right";
4146
- TooltipPosition["TOP_LEFT"] = "top-left";
4147
- TooltipPosition["BOTTOM_RIGHT"] = "bottom-right";
4148
- TooltipPosition["BOTTOM_LEFT"] = "bottom-left";
4149
- TooltipPosition["RIGHT_TOP"] = "right-top";
4150
- TooltipPosition["RIGHT_BOTTOM"] = "right-bottom";
4151
- TooltipPosition["LEFT_TOP"] = "left-top";
4152
- TooltipPosition["LEFT_BOTTOM"] = "left-bottom";
4153
- })(exports.TooltipPosition || (exports.TooltipPosition = {}));
4154
-
4155
- exports.Scenario = void 0;
4156
- (function (Scenario) {
4157
- Scenario["ACTUALS"] = "Actuals";
4158
- Scenario["FORECAST"] = "Forecast";
4159
- Scenario["BUDGET"] = "Budget";
4160
- Scenario["NONE"] = "None";
4161
- })(exports.Scenario || (exports.Scenario = {}));
4162
-
4163
- var DrModelDebounceChangeDirective = /** @class */ (function () {
4164
- function DrModelDebounceChangeDirective(ngModel) {
4165
- this.ngModel = ngModel;
4166
- this.debounce = 200;
4167
- this.ngModelDebounceChange = new i0.EventEmitter();
4168
- }
4169
- DrModelDebounceChangeDirective.prototype.ngOnInit = function () {
4170
- var _this = this;
4171
- this.subscription = this.ngModel.control.valueChanges.pipe(operators.skip(1), operators.debounceTime(this.debounce), operators.distinctUntilChanged()).subscribe(function (value) { return _this.ngModelDebounceChange.emit(value); });
4172
- };
4173
- DrModelDebounceChangeDirective.prototype.ngOnDestroy = function () {
4174
- this.subscription.unsubscribe();
4175
- };
4176
- return DrModelDebounceChangeDirective;
4177
- }());
4178
- DrModelDebounceChangeDirective.decorators = [
4179
- { type: i0.Directive, args: [{
4180
- selector: '[ngModelDebounceChange]'
4181
- },] }
4182
- ];
4183
- DrModelDebounceChangeDirective.ctorParameters = function () { return [
4184
- { type: forms.NgModel }
4185
- ]; };
4186
- DrModelDebounceChangeDirective.propDecorators = {
4187
- debounce: [{ type: i0.Input }],
4188
- ngModelDebounceChange: [{ type: i0.Output }]
4189
- };
4190
-
4191
- var IMAGE_TYPES = ['image/png', 'image/jpeg', 'image/gif'];
4192
- exports.CHAT_MESSAGE_TYPE = void 0;
4193
- (function (CHAT_MESSAGE_TYPE) {
4194
- CHAT_MESSAGE_TYPE["TEXT"] = "text";
4195
- CHAT_MESSAGE_TYPE["RICH_TEXT"] = "rich-text";
4196
- CHAT_MESSAGE_TYPE["IMAGE"] = "image";
4197
- CHAT_MESSAGE_TYPE["DOWNLOAD_FILE"] = "download-file";
4198
- CHAT_MESSAGE_TYPE["MAILTO"] = "mailto";
4199
- CHAT_MESSAGE_TYPE["EMBED"] = "embed";
4200
- CHAT_MESSAGE_TYPE["INPUT"] = "input";
4201
- CHAT_MESSAGE_TYPE["CODE"] = "code";
4202
- })(exports.CHAT_MESSAGE_TYPE || (exports.CHAT_MESSAGE_TYPE = {}));
4203
- exports.ChatRole = void 0;
4204
- (function (ChatRole) {
4205
- ChatRole["USER"] = "user";
4206
- ChatRole["ASSISTANT"] = "assistant";
4207
- })(exports.ChatRole || (exports.ChatRole = {}));
4208
- var ChatMessage = /** @class */ (function () {
4209
- function ChatMessage(obj) {
4210
- this.id = obj === null || obj === void 0 ? void 0 : obj.id;
4211
- this.kind = obj === null || obj === void 0 ? void 0 : obj.kind;
4212
- this.seq = obj === null || obj === void 0 ? void 0 : obj.seq;
4213
- this.role = obj === null || obj === void 0 ? void 0 : obj.role;
4214
- this.reply = (obj === null || obj === void 0 ? void 0 : obj.role) !== exports.ChatRole.USER;
4215
- this.text = (obj === null || obj === void 0 ? void 0 : obj.text) || obj.body;
4216
- this.url = obj === null || obj === void 0 ? void 0 : obj.url;
4217
- this.label = obj === null || obj === void 0 ? void 0 : obj.label;
4218
- this.body = obj === null || obj === void 0 ? void 0 : obj.body;
4219
- this.parameters = obj === null || obj === void 0 ? void 0 : obj.parameters;
4220
- this.avatarUrl = (obj === null || obj === void 0 ? void 0 : obj.avatarUrl) ?
4221
- obj.avatarUrl :
4222
- !(obj === null || obj === void 0 ? void 0 : obj.role) || (obj === null || obj === void 0 ? void 0 : obj.role) === exports.ChatRole.ASSISTANT ? document.staticFunc('/genius-ai.svg') : '';
4223
- this.user = obj === null || obj === void 0 ? void 0 : obj.user;
4224
- }
4225
- return ChatMessage;
4226
- }());
4227
-
4228
- var _a;
4229
- var allDateTags = (_a = {},
4230
- _a[TagsConfigSubType.YEAR] = {
4231
- name: 'Date',
4232
- toggle: false,
4233
- },
4234
- _a[TagsConfigSubType.QUARTER] = {
4235
- name: 'Date',
4236
- toggle: false,
4237
- },
4238
- _a[TagsConfigSubType.MONTH] = {
4239
- name: 'Date',
4240
- toggle: false,
4241
- },
4242
- _a[TagsConfigSubType.DAY] = {
4243
- name: 'Date',
4244
- toggle: false,
4245
- },
4246
- _a[TagsConfigSubType.WEEK] = {
4247
- name: 'Date',
4248
- toggle: false,
4249
- },
4250
- _a);
4251
- function getScenarioTagDataConfig(isMultipleDimension) {
4252
- var _a, _b, _c, _d, _e;
4253
- return _a = {},
4254
- _a[exports.Scenario.ACTUALS] = Object.assign(Object.assign({}, allDateTags), (_b = {}, _b[TagsConfigSubType.MONTH] = {
4255
- name: 'Date',
4256
- toggle: true,
4257
- }, _b[TagsConfigSubType.FILE_STATUS] = {
4258
- toggle: false,
4259
- }, _b)),
4260
- _a[exports.Scenario.BUDGET] = (_c = {},
4261
- _c[TagsConfigSubType.BUDGET_CYCLE] = {
4262
- toggle: true,
4263
- acceptableDateTags: [TagsConfigSubType.YEAR],
4264
- hidden: !isMultipleDimension,
4265
- },
4266
- _c[TagsConfigSubType.PLAN] = {
4267
- toggle: false,
4268
- turnOffDateTags: true,
4269
- hidden: isMultipleDimension,
4270
- },
4271
- _c[TagsConfigSubType.YEAR] = {
4272
- name: 'Date',
4273
- toggle: true,
4274
- },
4275
- _c[TagsConfigSubType.QUARTER] = {
4276
- name: 'Date',
4277
- toggle: false,
4278
- },
4279
- _c[TagsConfigSubType.FILE_STATUS] = {
4280
- toggle: false,
4281
- },
4282
- _c),
4283
- _a[exports.Scenario.FORECAST] = (_d = {},
4284
- _d[TagsConfigSubType.FORECAST_NEW] = {
4285
- toggle: true,
4286
- name: 'Date',
4287
- },
4288
- _d[TagsConfigSubType.FILE_STATUS] = {
4289
- toggle: false,
4290
- },
4291
- _d),
4292
- _a[exports.Scenario.NONE] = Object.assign(Object.assign({}, allDateTags), (_e = {}, _e[TagsConfigSubType.MONTH] = {
4293
- name: 'Date',
4294
- toggle: true,
4295
- }, _e[TagsConfigSubType.FILE_STATUS] = {
4296
- toggle: true,
4297
- }, _e)),
4298
- _a;
4299
- }
4300
-
4301
- var ScenarioService = /** @class */ (function () {
4302
- function ScenarioService() {
4303
- this.DEFAULT_FORECAST_DATE_TAG = 'Month';
4198
+ this.isLoading = false;
4199
+ this.showServerErrorMessage = false;
4200
+ this.destroy$ = new rxjs.Subject();
4201
+ this.class = (_b = (_a = this === null || this === void 0 ? void 0 : this.dialogData) === null || _a === void 0 ? void 0 : _a.theme) === null || _b === void 0 ? void 0 : _b.themeSize;
4304
4202
  }
4305
- Object.defineProperty(ScenarioService.prototype, "scenarios", {
4306
- get: function () {
4307
- return _.orderBy(Object.values(exports.Scenario), function (scenario) { return scenario === exports.Scenario.NONE ? 1 : 0; });
4308
- },
4309
- enumerable: false,
4310
- configurable: true
4311
- });
4312
- Object.defineProperty(ScenarioService.prototype, "areExistingTagsConfig", {
4313
- get: function () {
4314
- return !!this.currentTagsConfig;
4315
- },
4316
- enumerable: false,
4317
- configurable: true
4318
- });
4319
- ScenarioService.prototype.initScenarioTags = function (scenario, wholeTagsConfig, currentTagsConfig, isMultipleDimension) {
4320
- if (isMultipleDimension === void 0) { isMultipleDimension = true; }
4321
- if (!(wholeTagsConfig === null || wholeTagsConfig === void 0 ? void 0 : wholeTagsConfig.length) || !scenario)
4322
- return;
4323
- this.wholeTagsConfig = wholeTagsConfig;
4324
- this.currentTagsConfig = currentTagsConfig;
4325
- this.isMultipleDimension = isMultipleDimension;
4326
- };
4327
- ScenarioService.prototype.getTagsConfigByScenarioTags = function (scenarioTags, tagsConfig) {
4328
- var scenarioTagsConfig = _.filter(tagsConfig, function (tagConfig) { return _.some(scenarioTags, function (scenarioTag) { return scenarioTag.toggle && scenarioTag.selectedTagSubType === tagConfig.options.sub_type; }); });
4329
- return this.sortScenarioTags(scenarioTagsConfig);
4330
- };
4331
- ScenarioService.prototype.getScenarioTagsByScenario = function (scenario) {
4332
- var _this = this;
4333
- var scenarioTagsConfig = this.getScenarioTagsConfig(scenario, this.wholeTagsConfig);
4334
- var scenarioTagsUi = [];
4335
- _.forEach(scenarioTagsConfig, function (scenarioTag) {
4336
- var isDateTag = scenarioTag.type === exports.TagTypes.DATE;
4337
- var dateTag = isDateTag && _.find(scenarioTagsUi, { type: exports.TagTypes.DATE });
4338
- var tag = dateTag || _this.prepareScenarioTag(scenarioTagsConfig, scenarioTag, scenario, isDateTag);
4339
- if (isDateTag) {
4340
- _this.updateScenarioDateTag(tag, scenarioTag);
4341
- }
4342
- if (dateTag)
4343
- return;
4344
- scenarioTagsUi.push(tag);
4345
- });
4346
- if (this.areExistingTagsConfig) {
4347
- this.initExistingTagsConfig(scenario, scenarioTagsUi);
4348
- }
4349
- var isTagNotSupportingDates = _.some(scenarioTagsUi, { turnOffDateTags: true, toggle: true });
4350
- if (isTagNotSupportingDates) {
4351
- this.turnOffDateTag(scenarioTagsUi);
4352
- }
4353
- var tagWithSpecificDateTags = _.find(scenarioTagsUi, function (tag) { var _a; return tag.toggle && !!((_a = tag.acceptableDateTags) === null || _a === void 0 ? void 0 : _a.length); });
4354
- if (tagWithSpecificDateTags) {
4355
- this.hideNotAvailableTags(tagWithSpecificDateTags, scenarioTagsUi);
4203
+ DialogModalWrapperComponent.prototype.ngOnInit = function () {
4204
+ if (this.dialogData.fields) {
4205
+ this.form = new forms.FormGroup(this.dialogData.fields.reduce(function (accumulator, currentValue) {
4206
+ var currentFormControl = {};
4207
+ currentFormControl[currentValue.name] = new forms.FormControl(currentValue.default || null, currentValue.validators || []);
4208
+ return Object.assign(accumulator, currentFormControl);
4209
+ }, {}));
4356
4210
  }
4357
- return this.sortScenarioTags(scenarioTagsUi);
4358
4211
  };
4359
- ScenarioService.prototype.sortScenarioTags = function (scenarioTagsUi) {
4360
- return _.orderBy(scenarioTagsUi, [
4361
- function (tag) { return (tag.type === exports.TagTypes.DATE ? 0 : 1); },
4362
- function (tag) { return (tag.name === 'File Status'); }
4363
- ]);
4364
- };
4365
- ScenarioService.prototype.initExistingTagsConfig = function (scenario, scenarioTagsUi) {
4212
+ DialogModalWrapperComponent.prototype.onAccept = function () {
4366
4213
  var _this = this;
4367
- _.forEach(this.currentTagsConfig, function (tagConfig) {
4368
- var _a, _b;
4369
- var tagSubType = (_a = tagConfig === null || tagConfig === void 0 ? void 0 : tagConfig.options) === null || _a === void 0 ? void 0 : _a.sub_type;
4370
- var scenarioTagDataConfig = getScenarioTagDataConfig(_this.isMultipleDimension);
4371
- if (!((_b = scenarioTagDataConfig === null || scenarioTagDataConfig === void 0 ? void 0 : scenarioTagDataConfig[scenario]) === null || _b === void 0 ? void 0 : _b[tagSubType]))
4372
- return;
4373
- var scenarioTagUi = tagConfig.type === exports.TagTypes.DATE
4374
- ? _.find(scenarioTagsUi, { type: tagConfig.type })
4375
- : _.find(scenarioTagsUi, { selectedTagSubType: tagSubType });
4376
- scenarioTagUi.toggle = true;
4377
- scenarioTagUi.selectedTagSubType = tagSubType;
4378
- });
4379
- };
4380
- ScenarioService.prototype.prepareScenarioTag = function (scenarioTagsConfig, scenarioTag, scenario, isDateTag) {
4381
- var toggleStatus = isDateTag
4382
- ? _.some(scenarioTagsConfig, function (tag) { return tag.type === exports.TagTypes.DATE && tag.scenarioData.toggle; })
4383
- : scenarioTag.scenarioData.toggle;
4384
- var selectedTagSubType = isDateTag
4385
- ? this.getScenarioSelectedDateTag(scenario, scenarioTagsConfig)
4386
- : scenarioTag.options.sub_type;
4387
- var tag = {
4388
- toggle: this.areExistingTagsConfig ? false : toggleStatus,
4389
- name: scenarioTag.scenarioData.name || scenarioTag.name,
4390
- description: scenarioTag.scenarioData.description || scenarioTag.description,
4391
- type: scenarioTag.type,
4392
- selectedTagSubType: selectedTagSubType,
4393
- };
4394
- if (scenarioTag.scenarioData.turnOffDateTags) {
4395
- tag.turnOffDateTags = scenarioTag.scenarioData.turnOffDateTags;
4396
- }
4397
- if (scenarioTag.scenarioData.acceptableDateTags) {
4398
- tag.acceptableDateTags = scenarioTag.scenarioData.acceptableDateTags;
4399
- }
4400
- return tag;
4401
- };
4402
- ScenarioService.prototype.updateScenarioDateTag = function (dateTag, scenarioTag) {
4403
- if (!dateTag.subTags) {
4404
- dateTag.subTags = [];
4405
- }
4406
- var tagSubType = scenarioTag.options.sub_type;
4407
- dateTag.subTags.push({
4408
- subType: tagSubType,
4409
- name: tagSubType === TagsConfigSubType.FORECAST_NEW ? this.DEFAULT_FORECAST_DATE_TAG : scenarioTag.name,
4214
+ if (!this.dialogData.confirmFn)
4215
+ return this.dialogRef.close(this.form.value || true);
4216
+ this.isLoading = true;
4217
+ this.saving$.next(true);
4218
+ this.dialogData.confirmFn(this.form.value).pipe(operators.takeUntil(this.destroy$), operators.catchError(function (err) {
4219
+ _this.showServerErrorMessage = true;
4220
+ _this.isLoading = false;
4221
+ return _this.dialogService.throwErr(err, _this.saving$);
4222
+ })).subscribe(function () {
4223
+ _this.saving$.next(false);
4224
+ _this.dialogRef.close(_this.form.value || true);
4410
4225
  });
4411
4226
  };
4412
- ScenarioService.prototype.turnOffDateTag = function (scenarioTags) {
4413
- var dateTag = _.find(scenarioTags, { type: exports.TagTypes.DATE });
4414
- if (!dateTag)
4415
- return;
4416
- dateTag.toggle = false;
4417
- };
4418
- ScenarioService.prototype.hideNotAvailableTags = function (tagWithSpecificDateTags, scenarioTags) {
4419
- var _a;
4420
- var subTags = (_a = _.find(scenarioTags, { type: exports.TagTypes.DATE })) === null || _a === void 0 ? void 0 : _a.subTags;
4421
- if (!subTags.length)
4422
- return;
4423
- _.forEach(scenarioTags, function (tag) {
4424
- var _a;
4425
- if (!((_a = tag.acceptableDateTags) === null || _a === void 0 ? void 0 : _a.length))
4426
- return;
4427
- if (tag !== tagWithSpecificDateTags) {
4428
- tag.toggle = false;
4429
- }
4430
- });
4431
- _.forEach(subTags, function (subTag) {
4432
- subTag.hidden = !tagWithSpecificDateTags.acceptableDateTags.includes(subTag.subType);
4433
- });
4227
+ DialogModalWrapperComponent.prototype.footerAction = function () {
4228
+ this.dialogData.footerTemplateData.action(this.form.value);
4434
4229
  };
4435
- ScenarioService.prototype.getScenarioSelectedDateTag = function (scenario, dateTags) {
4436
- var _c;
4437
- var _a, _b;
4438
- var monthSubType = (_b = (_a = _.find(dateTags, function (tag) { return tag.options.sub_type === TagsConfigSubType.MONTH; })) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.sub_type;
4439
- var scenarioSelectedDateTag = (_c = {},
4440
- _c[exports.Scenario.ACTUALS] = function () { return monthSubType; },
4441
- _c[exports.Scenario.BUDGET] = function () { var _a, _b; return (_b = (_a = _.find(dateTags, function (tag) { return tag.options.sub_type === TagsConfigSubType.YEAR; })) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.sub_type; },
4442
- _c[exports.Scenario.FORECAST] = function () { var _a, _b; return (_b = (_a = _.find(dateTags, function (tag) { return tag.options.sub_type === TagsConfigSubType.FORECAST_NEW; })) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.sub_type; },
4443
- _c[exports.Scenario.NONE] = function () { return monthSubType; },
4444
- _c);
4445
- if (!scenarioSelectedDateTag[scenario])
4446
- return;
4447
- return scenarioSelectedDateTag[scenario]();
4230
+ DialogModalWrapperComponent.prototype.closeDialog = function () {
4231
+ this.dialogRef.close(false);
4448
4232
  };
4449
- ScenarioService.prototype.getScenarioTagsConfig = function (scenario, tagsConfig) {
4450
- var _this = this;
4451
- return _.reduce(tagsConfig, function (acc, tagConfig) {
4452
- var _a, _b;
4453
- var tagSubType = (_a = tagConfig === null || tagConfig === void 0 ? void 0 : tagConfig.options) === null || _a === void 0 ? void 0 : _a.sub_type;
4454
- var scenarioTagDataConfig = getScenarioTagDataConfig(_this.isMultipleDimension);
4455
- var scenarioTagConfig = (_b = scenarioTagDataConfig === null || scenarioTagDataConfig === void 0 ? void 0 : scenarioTagDataConfig[scenario]) === null || _b === void 0 ? void 0 : _b[tagSubType];
4456
- if (!scenarioTagConfig || scenarioTagConfig.hidden)
4457
- return acc;
4458
- var clonedTagConfig = _.cloneDeep(tagConfig);
4459
- var scenarioTag = Object.assign(Object.assign({}, clonedTagConfig), { scenarioData: scenarioTagConfig });
4460
- acc.push(scenarioTag);
4461
- return acc;
4462
- }, []);
4233
+ DialogModalWrapperComponent.prototype.ngOnDestroy = function () {
4234
+ this.destroy$.next(null);
4235
+ this.destroy$.complete();
4463
4236
  };
4464
- return ScenarioService;
4237
+ return DialogModalWrapperComponent;
4465
4238
  }());
4466
- ScenarioService.decorators = [
4467
- { type: i0.Injectable }
4239
+ DialogModalWrapperComponent.decorators = [
4240
+ { type: i0.Component, args: [{
4241
+ selector: 'dr-dialog-modal-wrapper',
4242
+ template: "<div header class=\"header-dialog\">\n <h1 class=\"title-dialog\" data-test=\"modalTitle\">{{ dialogData.title }}</h1>\n <i mat-icon-button *ngIf=\"!dialogData.hideCloseBtn\" (click)=\"closeDialog()\" class=\"dr-icon-exit icon-close\"\n data-test=\"xBtn\"></i>\n</div>\n<div *ngIf=\"dialogData.content\" class=\"content-dialog\">\n <ng-container>{{ dialogData.content }}</ng-container>\n <span #content class=\"content-anchor\"></span>\n</div>\n<form *ngIf=\"dialogData.fields\" [formGroup]=\"form\" class=\"dr-smart-from\">\n <div class=\"dr-smart-form_wrapper\">\n <div *ngFor=\"let field of dialogData.fields\" class=\"dr-smart-form_group\"\n [ngStyle]=\"{ display: field.isLabelFullWidth ? 'block' : 'flex' }\">\n <label *ngIf=\"field.label && field.type !== dialogFieldType.CHECKBOX\"\n [ngClass]=\"field.isLabelFullWidth ? 'col-md-12 mb-2' : 'col-md-2'\"\n class=\"label p-0 d-flex align-items-center\">{{ field.label }}</label>\n <div class=\"input-group p-0\"\n [ngClass]=\"{ 'col-md-10': field.label && !field.isLabelFullWidth, 'col-md-12': !field.label || field.isLabelFullWidth }\">\n <dr-select *ngIf=\"field.type === dialogFieldType.SELECT\"\n [searchable]=\"dialogData.searchable\"\n [clearable]=\"dialogData.clearable\"\n [formControlName]=\"field.name\"\n [bindLabel]=\"field.bindLabel || null\"\n [bindValue]=\"field.bindValue || null\"\n [selectedItem]=\"field.default\"\n [items]=\"field.items || (field.items$ | async)\"\n [required]=\"true\"\n [placeholder]=\"field.placeholder\">\n <ng-template *ngIf=\"dialogData?.footerTemplateData\" #optionFooterTemplate let-item=\"item\" let-close=\"close\">\n <button (click)=\"footerAction(); close();\" class=\"dr-select-footer__btn\">\n <i *ngIf=\"dialogData.footerTemplateData.icon\"\n class=\"{{ dialogData.footerTemplateData.icon }}\"></i>\n {{ dialogData.footerTemplateData.label }}</button>\n </ng-template>\n </dr-select>\n <dr-input *ngIf=\"field.type === dialogFieldType.INPUT\" data-test=\"modalInput\" class=\"form-control\"\n [formControlName]=\"field.name\" [placeholder]=\"field.placeholder\"></dr-input>\n <dr-date-picker *ngIf=\"field.type === dialogFieldType.DATE_PICKER\"\n [formControlName]=\"field.name\"\n [format]=\"field.datePickerFormat\"\n [placeholder]=\"field.placeholder\"></dr-date-picker>\n <dr-checkbox *ngIf=\"field.type === dialogFieldType.CHECKBOX\" [formControlName]=\"field.name\">\n {{ field.label }}\n </dr-checkbox>\n <label class=\"form-field-error-alert\" *ngIf=\"form.invalid && form.controls[field.name]?.dirty && form.controls[field.name]?.errors\">\n {{ form.controls[field.name].errors.errorString }}\n </label>\n <label class=\"form-error-alert\" *ngIf=\"dialogData.errorMessage && !form.pristine && form.invalid\">\n {{ dialogData.errorMessage }}\n </label>\n <label class=\"form-error-alert\"\n *ngIf=\"form.valid && showServerErrorMessage && dialogData.serverErrorMessage\">\n {{ dialogData.serverErrorMessage }}\n </label>\n </div>\n </div>\n </div>\n</form>\n\n<div footer class=\"footer-dialog\">\n <div class=\"buttons-wrapper\" *ngIf=\"dialogData.cancelButton || dialogData.acceptButton\">\n <dr-button *ngIf=\"dialogData.cancelButton\" data-test=\"modalCloseBtn\" (click)=\"closeDialog()\"\n [theme]=\"'secondary'\">{{ dialogData.cancelButton.label }}</dr-button>\n <dr-button *ngIf=\"dialogData.acceptButton\" data-test=\"modalAddBtn\" (click)=\"onAccept()\" [theme]=\"'primary'\"\n [isLoading]=\"isLoading\" [disabled]=\"form.invalid\">{{ dialogData.acceptButton.label }}</dr-button>\n </div>\n</div>\n",
4243
+ styles: [":host{display:flex;justify-content:space-between;flex-direction:column}:host.small-modal{min-height:188px;max-height:467px;min-width:400px;max-width:400px}:host.medium-modal,.medium-modal-max-height:host{min-height:188px;max-height:467px;min-width:632px;max-width:632px}:host.medium-small-modal{min-height:188px;max-height:345px;min-width:460px;max-width:460px}:host.medium-modal-max-height{max-height:80vh}.header-dialog{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:8px 39px 8px 32px;border-bottom:1px solid #e5e6ea}.title-dialog{color:#151b3f;position:static;font-weight:bold;font-size:18px;line-height:24px}.content-dialog{font-weight:400;font-size:14px;padding:16px 32px 5px}.icon-close{color:#51566f;cursor:pointer}.dr-smart-from{font-size:14px;font-weight:500;line-height:22px;padding:16px 32px 22px}.dr-smart-from dr-checkbox{font-weight:400}.content-dialog{padding:16px 32px 0;font-weight:400;font-size:14px;line-height:22px}.content-anchor{display:none}.footer-dialog{border-top:1px solid #e5e6ea}.buttons-wrapper{display:flex;justify-content:flex-end;padding-top:10px;padding-right:32px;padding-bottom:11px}.buttons-wrapper dr-button:nth-of-type(2){margin-left:12px}.form-field-error-alert{font-size:12px;color:#bf1d30;line-height:20px}.form-error-alert{position:absolute;margin-top:5px;font-size:12px;color:red}.dr-select-footer__btn{background-color:transparent;display:flex;align-items:center;justify-content:flex-start;cursor:pointer;min-width:15rem;font-style:normal;font-weight:400;font-size:14px;line-height:24px;clear:both;width:100%;white-space:nowrap;padding:0 12px;height:36px;flex-shrink:0}\n"]
4244
+ },] }
4468
4245
  ];
4246
+ DialogModalWrapperComponent.ctorParameters = function () { return [
4247
+ { type: i1$1.MatDialogRef },
4248
+ { type: DialogService },
4249
+ { type: undefined, decorators: [{ type: i0.Inject, args: [i1$1.MAT_DIALOG_DATA,] }] }
4250
+ ]; };
4251
+ DialogModalWrapperComponent.propDecorators = {
4252
+ class: [{ type: i0.HostBinding, args: ['class',] }]
4253
+ };
4469
4254
 
4470
- var DrSharedUtils = /** @class */ (function () {
4471
- function DrSharedUtils() {
4255
+ var DEFAULT_PANE_CLASS_NAME = 'wrapper-dialog';
4256
+ var DEFAULT_CONFIRM_THEME = { themeSize: 'small-modal' };
4257
+ var DialogService = /** @class */ (function () {
4258
+ function DialogService(dialog) {
4259
+ this.dialog = dialog;
4472
4260
  }
4473
4261
  /**
4474
- * Get timeframe (day, year, month, quarter) based on passed format
4475
- *
4476
- * @param format - date format string. Examples: MM/DD/YYYY, Q/YYYY
4262
+ * Function to open modal with custom form
4477
4263
  */
4478
- DrSharedUtils.getTimeframeByDateFormat = function (format) {
4479
- var defaultFrame = exports.TimeframeOption.DAY;
4480
- if (!format) {
4481
- return defaultFrame;
4482
- }
4483
- var lowerCaseFormat = format.toLowerCase();
4484
- switch (true) {
4485
- case lowerCaseFormat.includes('q'):
4486
- return exports.TimeframeOption.QUARTER;
4487
- case lowerCaseFormat.includes('d'):
4488
- return exports.TimeframeOption.DAY;
4489
- case lowerCaseFormat.includes('w'):
4490
- return exports.TimeframeOption.WEEK;
4491
- case lowerCaseFormat.includes('m'):
4492
- return exports.TimeframeOption.MONTH;
4493
- case lowerCaseFormat.includes('y'):
4494
- return exports.TimeframeOption.YEAR;
4495
- default:
4496
- return defaultFrame;
4497
- }
4498
- };
4499
- DrSharedUtils.getDateByTag = function (tag) {
4500
- var todayDate = moment__namespace().utc().endOf('day');
4501
- switch (tag) {
4502
- case exports.DateTags.TODAY:
4503
- return todayDate;
4504
- case exports.DateTags.YESTERDAY:
4505
- todayDate.subtract(1, 'days');
4506
- return todayDate;
4507
- case exports.DateTags.THIS_MONTH:
4508
- todayDate.endOf('month');
4509
- return todayDate;
4510
- case exports.DateTags.PREV_MONTH:
4511
- todayDate.subtract(1, 'months').endOf('month');
4512
- return todayDate;
4513
- }
4514
- };
4515
- return DrSharedUtils;
4516
- }());
4517
-
4518
- // @ts-ignore
4519
- var moment$2 = require('moment');
4520
- var DrDatePickerService = /** @class */ (function () {
4521
- function DrDatePickerService() {
4522
- this.isTimeframeSelectionEnabled = false;
4523
- this.timeframe = exports.TimeframeOption.DAY;
4524
- this.format$ = new rxjs.BehaviorSubject(exports.DateFromats.MAT_DEFAULT_DATE_FORMAT);
4525
- this.updatedQuarter$ = new rxjs.Subject();
4526
- this.updatedDateAndClose$ = new rxjs.Subject();
4527
- this.presetTag$ = new rxjs.BehaviorSubject('');
4528
- this.onSameDaySelectedInCalendar$ = new rxjs.Subject();
4529
- this.keepPresetTag = false;
4530
- this.isValueUpdating = false;
4531
- this.availableTimeframes = [
4532
- exports.TimeframeOption.DAY,
4533
- exports.TimeframeOption.WEEK,
4534
- exports.TimeframeOption.MONTH,
4535
- exports.TimeframeOption.QUARTER,
4536
- exports.TimeframeOption.YEAR
4537
- ];
4538
- this.formatConfig = {
4539
- day: exports.DateFromats.MAT_DEFAULT_DATE_FORMAT,
4540
- month: exports.DateFromats.MONTH_YEAR_FORMAT,
4541
- year: exports.DateFromats.YEAR_FORMAT,
4542
- quarter: exports.DateFromats.QUARTER_FORMAT,
4543
- week: exports.DateFromats.WEEK_FORMAT
4544
- };
4545
- this.fiscalYearMonthsModifier = 0;
4546
- }
4547
- DrDatePickerService.prototype.getDisplayPrefix = function () {
4548
- var formatCached = this.format$.getValue();
4549
- switch (true) {
4550
- case formatCached === null || formatCached === void 0 ? void 0 : formatCached.includes('Q'):
4551
- return 'Q';
4552
- case formatCached === null || formatCached === void 0 ? void 0 : formatCached.includes('W'):
4553
- return 'W';
4554
- default:
4555
- return '';
4264
+ DialogService.prototype.openDialogWrapper = function (componentTypeChild, dialogData, componentTypeWrapper) {
4265
+ if (!componentTypeWrapper)
4266
+ componentTypeWrapper = DialogWrapperComponent;
4267
+ dialogData.data.child = componentTypeChild;
4268
+ if (dialogData.panelClass instanceof Array) {
4269
+ dialogData.panelClass.push(DEFAULT_PANE_CLASS_NAME);
4556
4270
  }
4557
- };
4558
- DrDatePickerService.prototype.getTimeframe = function (format) {
4559
- return DrSharedUtils.getTimeframeByDateFormat(format);
4560
- };
4561
- DrDatePickerService.prototype.getConfiguredFormat = function (timeframe) {
4562
- return this.formatConfig[timeframe];
4563
- };
4564
- DrDatePickerService.prototype.updateTimeframeAndFormat = function (format) {
4565
- var normalizedFormat = this.normalizeValue(format || this.format$.getValue());
4566
- this.timeframe = this.getTimeframe(normalizedFormat);
4567
- this.format$.next(this.getConfiguredFormat(this.timeframe));
4568
- };
4569
- DrDatePickerService.prototype.normalizeValue = function (value) {
4570
- return value.replace(/d/g, 'D');
4571
- };
4572
- /**
4573
- * Get quarter number for date according to fiscal year
4574
- *
4575
- * @param date
4576
- */
4577
- DrDatePickerService.prototype.getQuarterAccordingToFiscalYear = function (date) {
4578
- var fiscalMonth = this.fiscalYearMonthsModifier;
4579
- var dateMonth = date.month();
4580
- if (dateMonth < fiscalMonth) {
4581
- fiscalMonth -= 12;
4271
+ else {
4272
+ dialogData.panelClass = [dialogData.panelClass || '', DEFAULT_PANE_CLASS_NAME];
4582
4273
  }
4583
- return Math.trunc((date.month() - fiscalMonth) / 3) + 1;
4584
- };
4585
- /**
4586
- * Sets date to end of quarter in FY by passed quarter number
4587
- *
4588
- * @param date
4589
- * @param quarterNumber
4590
- */
4591
- DrDatePickerService.prototype.setEndOfQuarter = function (date, quarterNumber) {
4592
- date
4593
- .subtract(this.fiscalYearMonthsModifier, 'M')
4594
- .startOf('year')
4595
- .add(this.fiscalYearMonthsModifier + quarterNumber * 3 - 1, 'M')
4596
- .endOf('month');
4597
- };
4598
- /**
4599
- * Sets date to start of quarter in FY by passed quarter number
4600
- *
4601
- * @param date
4602
- * @param quarterNumber
4603
- */
4604
- DrDatePickerService.prototype.setStartOfQuarter = function (date, quarterNumber) {
4605
- date
4606
- .subtract(this.fiscalYearMonthsModifier, 'M')
4607
- .startOf('year')
4608
- .add(this.fiscalYearMonthsModifier + (quarterNumber - 1) * 3, 'M');
4609
- };
4610
- /**
4611
- * Sets date to end of current quarter (in which date is located) according to FY
4612
- *
4613
- * @param date
4614
- */
4615
- DrDatePickerService.prototype.setEndOfCurrentQuarter = function (date) {
4616
- this.setEndOfQuarter(date, this.getQuarterAccordingToFiscalYear(date));
4617
- };
4618
- /**
4619
- * Sets date to start of current quarter (in which date is located) according to FY
4620
- *
4621
- * @param date
4622
- */
4623
- DrDatePickerService.prototype.setStartOfCurrentQuarter = function (date) {
4624
- this.setStartOfQuarter(date, this.getQuarterAccordingToFiscalYear(date));
4274
+ this.wrapperComponent = this.openDialog(componentTypeWrapper, dialogData);
4275
+ return this.wrapperComponent;
4625
4276
  };
4626
4277
  /**
4627
- * If date selection on this timeframe depends on Fiscal Year
4628
- *
4629
- * @param timeframe
4278
+ * Function to open confirmation modal
4630
4279
  */
4631
- DrDatePickerService.prototype.isTimeframeDependingOnFY = function (timeframe) {
4632
- return ___namespace.includes([exports.TimeframeOption.QUARTER, exports.TimeframeOption.YEAR], timeframe);
4280
+ DialogService.prototype.openConfirmDialog = function (confirmDialogData) {
4281
+ var dialogData = { panelClass: DEFAULT_PANE_CLASS_NAME, data: null };
4282
+ Object.assign(dialogData, { data: confirmDialogData });
4283
+ if (!dialogData.data.theme)
4284
+ dialogData.data.theme = DEFAULT_CONFIRM_THEME;
4285
+ dialogData.data.theme.isConfirmation = true;
4286
+ return this.openDialog(DialogWrapperComponent, dialogData);
4633
4287
  };
4634
4288
  /**
4635
- * Subtract from date fiscal year shift months count
4636
- *
4637
- * @param date
4289
+ * Function to open confirmation modal with inputs
4638
4290
  */
4639
- DrDatePickerService.prototype.subtractFiscalYearMonthsFromDate = function (date) {
4640
- return this.getDateModifiedByFiscalMonths(date, true);
4291
+ DialogService.prototype.openConfirmDialogModal = function (confirmDialogData) {
4292
+ var dialogData = { panelClass: DEFAULT_PANE_CLASS_NAME, data: null };
4293
+ Object.assign(dialogData, { data: confirmDialogData });
4294
+ if (!dialogData.data.theme)
4295
+ dialogData.data.theme = DEFAULT_CONFIRM_THEME;
4296
+ return this.openDialog(DialogModalWrapperComponent, dialogData);
4641
4297
  };
4642
- /**
4643
- * Add to date fiscal year shift months count
4644
- *
4645
- * @param date
4646
- */
4647
- DrDatePickerService.prototype.addFiscalYearMonthsToDate = function (date) {
4648
- return this.getDateModifiedByFiscalMonths(date);
4298
+ DialogService.prototype.close = function (params) {
4299
+ this.wrapperComponent.close(params);
4649
4300
  };
4650
- /**
4651
- * Add or subtract depending on isRevert paremeter Fiscal year month shift
4652
- *
4653
- * @param date
4654
- * @param isSubtract
4655
- */
4656
- DrDatePickerService.prototype.getDateModifiedByFiscalMonths = function (date, isSubtract) {
4657
- if (isSubtract === void 0) { isSubtract = false; }
4658
- return date ? ___namespace.cloneDeep(date)[isSubtract ? 'subtract' : 'add'](this.fiscalYearMonthsModifier, 'month') : date;
4301
+ DialogService.prototype.changeDialogThemeSize = function (theme) {
4302
+ this.wrapperComponent.componentInstance.class = theme;
4659
4303
  };
4660
- DrDatePickerService.prototype.updateDatePickerByPreset = function (tag, calender) {
4661
- this.keepPresetTag = true;
4662
- var date = null;
4663
- if (tag) {
4664
- date = DrSharedUtils.getDateByTag(tag);
4665
- switch (tag) {
4666
- case exports.DateTags.TODAY:
4667
- this.updateTimeframeAndFormat(exports.DateFromats.MAT_DEFAULT_DATE_FORMAT);
4668
- break;
4669
- case exports.DateTags.YESTERDAY:
4670
- this.updateTimeframeAndFormat(exports.DateFromats.MAT_DEFAULT_DATE_FORMAT);
4671
- break;
4672
- case exports.DateTags.THIS_MONTH:
4673
- this.updateTimeframeAndFormat(exports.DateFromats.MONTH_YEAR_FORMAT);
4674
- this.selectDateInCalendarMonthView(date, calender);
4675
- break;
4676
- case exports.DateTags.PREV_MONTH:
4677
- this.updateTimeframeAndFormat(exports.DateFromats.MONTH_YEAR_FORMAT);
4678
- this.selectDateInCalendarMonthView(date, calender);
4679
- break;
4680
- }
4304
+ DialogService.prototype.openDialog = function (componentType, dialogData) {
4305
+ return this.dialog.open(componentType, dialogData);
4306
+ };
4307
+ DialogService.prototype.throwErr = function (err, load) {
4308
+ if (load) {
4309
+ load.next(false);
4681
4310
  }
4682
- this.presetTag$.next(tag);
4683
- this.updatedDateAndClose$.next(date);
4311
+ throw err;
4684
4312
  };
4685
- DrDatePickerService.prototype.selectDateInCalendarMonthView = function (date, calender) {
4686
- setTimeout(function () {
4687
- var monthView = calender.monthView;
4688
- if (monthView) {
4689
- monthView._activeDate = date;
4690
- monthView._selected = date;
4691
- monthView._init();
4692
- }
4693
- });
4313
+ return DialogService;
4314
+ }());
4315
+ DialogService.ɵprov = i0__namespace.ɵɵdefineInjectable({ factory: function DialogService_Factory() { return new DialogService(i0__namespace.ɵɵinject(i1__namespace$1.MatDialog)); }, token: DialogService, providedIn: "root" });
4316
+ DialogService.decorators = [
4317
+ { type: i0.Injectable, args: [{
4318
+ providedIn: 'root'
4319
+ },] }
4320
+ ];
4321
+ DialogService.ctorParameters = function () { return [
4322
+ { type: i1$1.MatDialog }
4323
+ ]; };
4324
+
4325
+ exports.TooltipPosition = void 0;
4326
+ (function (TooltipPosition) {
4327
+ TooltipPosition["TOP"] = "top";
4328
+ TooltipPosition["BOTTOM"] = "bottom";
4329
+ TooltipPosition["LEFT"] = "left";
4330
+ TooltipPosition["RIGHT"] = "right";
4331
+ TooltipPosition["TOP_RIGHT"] = "top-right";
4332
+ TooltipPosition["TOP_LEFT"] = "top-left";
4333
+ TooltipPosition["BOTTOM_RIGHT"] = "bottom-right";
4334
+ TooltipPosition["BOTTOM_LEFT"] = "bottom-left";
4335
+ TooltipPosition["RIGHT_TOP"] = "right-top";
4336
+ TooltipPosition["RIGHT_BOTTOM"] = "right-bottom";
4337
+ TooltipPosition["LEFT_TOP"] = "left-top";
4338
+ TooltipPosition["LEFT_BOTTOM"] = "left-bottom";
4339
+ })(exports.TooltipPosition || (exports.TooltipPosition = {}));
4340
+
4341
+ var DrModelDebounceChangeDirective = /** @class */ (function () {
4342
+ function DrModelDebounceChangeDirective(ngModel) {
4343
+ this.ngModel = ngModel;
4344
+ this.debounce = 200;
4345
+ this.ngModelDebounceChange = new i0.EventEmitter();
4346
+ }
4347
+ DrModelDebounceChangeDirective.prototype.ngOnInit = function () {
4348
+ var _this = this;
4349
+ this.subscription = this.ngModel.control.valueChanges.pipe(operators.skip(1), operators.debounceTime(this.debounce), operators.distinctUntilChanged()).subscribe(function (value) { return _this.ngModelDebounceChange.emit(value); });
4694
4350
  };
4695
- DrDatePickerService.prototype.resetPresetTag = function () {
4696
- if (!this.keepPresetTag) {
4697
- this.presetTag$.next(null);
4698
- }
4699
- else {
4700
- this.keepPresetTag = false;
4701
- }
4351
+ DrModelDebounceChangeDirective.prototype.ngOnDestroy = function () {
4352
+ this.subscription.unsubscribe();
4702
4353
  };
4703
- return DrDatePickerService;
4354
+ return DrModelDebounceChangeDirective;
4704
4355
  }());
4705
- DrDatePickerService.ɵprov = i0__namespace.ɵɵdefineInjectable({ factory: function DrDatePickerService_Factory() { return new DrDatePickerService(); }, token: DrDatePickerService, providedIn: "root" });
4706
- DrDatePickerService.decorators = [
4707
- { type: i0.Injectable, args: [{ providedIn: 'root' },] }
4356
+ DrModelDebounceChangeDirective.decorators = [
4357
+ { type: i0.Directive, args: [{
4358
+ selector: '[ngModelDebounceChange]'
4359
+ },] }
4708
4360
  ];
4361
+ DrModelDebounceChangeDirective.ctorParameters = function () { return [
4362
+ { type: forms.NgModel }
4363
+ ]; };
4364
+ DrModelDebounceChangeDirective.propDecorators = {
4365
+ debounce: [{ type: i0.Input }],
4366
+ ngModelDebounceChange: [{ type: i0.Output }]
4367
+ };
4368
+
4369
+ var IMAGE_TYPES = ['image/png', 'image/jpeg', 'image/gif'];
4370
+ exports.CHAT_MESSAGE_TYPE = void 0;
4371
+ (function (CHAT_MESSAGE_TYPE) {
4372
+ CHAT_MESSAGE_TYPE["TEXT"] = "text";
4373
+ CHAT_MESSAGE_TYPE["RICH_TEXT"] = "rich-text";
4374
+ CHAT_MESSAGE_TYPE["IMAGE"] = "image";
4375
+ CHAT_MESSAGE_TYPE["DOWNLOAD_FILE"] = "download-file";
4376
+ CHAT_MESSAGE_TYPE["MAILTO"] = "mailto";
4377
+ CHAT_MESSAGE_TYPE["EMBED"] = "embed";
4378
+ CHAT_MESSAGE_TYPE["INPUT"] = "input";
4379
+ CHAT_MESSAGE_TYPE["CODE"] = "code";
4380
+ })(exports.CHAT_MESSAGE_TYPE || (exports.CHAT_MESSAGE_TYPE = {}));
4381
+ exports.ChatRole = void 0;
4382
+ (function (ChatRole) {
4383
+ ChatRole["USER"] = "user";
4384
+ ChatRole["ASSISTANT"] = "assistant";
4385
+ })(exports.ChatRole || (exports.ChatRole = {}));
4386
+ var ChatMessage = /** @class */ (function () {
4387
+ function ChatMessage(obj) {
4388
+ this.id = obj === null || obj === void 0 ? void 0 : obj.id;
4389
+ this.kind = obj === null || obj === void 0 ? void 0 : obj.kind;
4390
+ this.seq = obj === null || obj === void 0 ? void 0 : obj.seq;
4391
+ this.role = obj === null || obj === void 0 ? void 0 : obj.role;
4392
+ this.reply = (obj === null || obj === void 0 ? void 0 : obj.role) !== exports.ChatRole.USER;
4393
+ this.text = (obj === null || obj === void 0 ? void 0 : obj.text) || obj.body;
4394
+ this.url = obj === null || obj === void 0 ? void 0 : obj.url;
4395
+ this.label = obj === null || obj === void 0 ? void 0 : obj.label;
4396
+ this.body = obj === null || obj === void 0 ? void 0 : obj.body;
4397
+ this.parameters = obj === null || obj === void 0 ? void 0 : obj.parameters;
4398
+ this.avatarUrl = (obj === null || obj === void 0 ? void 0 : obj.avatarUrl) ?
4399
+ obj.avatarUrl :
4400
+ !(obj === null || obj === void 0 ? void 0 : obj.role) || (obj === null || obj === void 0 ? void 0 : obj.role) === exports.ChatRole.ASSISTANT ? document.staticFunc('/genius-ai.svg') : '';
4401
+ this.user = obj === null || obj === void 0 ? void 0 : obj.user;
4402
+ }
4403
+ return ChatMessage;
4404
+ }());
4709
4405
 
4710
4406
  var moment$1 = require('moment');
4711
4407
  var DrDatePickerCustomHeaderComponent = /** @class */ (function () {
@@ -5292,13 +4988,13 @@
5292
4988
  DrDatePickerWithTimeframeComponent.decorators = [
5293
4989
  { type: i0.Component, args: [{
5294
4990
  selector: 'dr-date-picker-with-timeframe',
5295
- template: "<dr-button [disabled]=\"isPrevDateDisabled\" theme=\"icon\" icon=\"dr-icon-arrow-left\" (click)=\"pagingClicked(false)\"></dr-button>\n<div class=\"dr-datepicker-input-container\">\n <i *ngIf=\"isDashboardDatepicker\" class=\"dr-icon-date\"></i>\n \n <div class=\"dr-datepicker-input-container__formatted-value-display\" (click)=\"datepickerInput.click()\">\n <span *ngIf=\"presetTagSelected && datePickerService.isUsingDateTagPresets\"> {{ presetTagSelected }} </span>\n <span>{{ presetTagSelected && datePickerService.isUsingDateTagPresets ? '(' + displayedFormattedValue + ')' : displayedFormattedValue }}</span>\n </div>\n <input\n #datepickerInput\n [(ngModel)]=\"value\"\n (click)=\"datePicker.open()\"\n [matDatepicker]=\"datePicker\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\"\n />\n</div>\n<dr-button [disabled]=\"isNextDateDisabled\" theme=\"icon\" icon=\"dr-icon-arrow-right\" (click)=\"pagingClicked(true)\"></dr-button>\n<mat-datepicker #datePicker\n class=\"dr-timeframe-datepicker\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH)\"\n [panelClass]=\"datePickerService.isUsingDateTagPresets ? 'date-picker-preset-tag' : 'dr-timeframe-datepicker'\"\n >\n</mat-datepicker>\n",
4991
+ template: "<dr-button [disabled]=\"isPrevDateDisabled\" *ngIf=\"!disabled\" theme=\"icon\" icon=\"dr-icon-arrow-left\" (click)=\"pagingClicked(false)\"></dr-button>\n<div class=\"dr-datepicker-input-container\">\n <i *ngIf=\"isDashboardDatepicker\" class=\"dr-icon-date\"></i>\n\n <div class=\"dr-datepicker-input-container__formatted-value-display\" (click)=\"datepickerInput.click()\">\n <span *ngIf=\"presetTagSelected && datePickerService.isUsingDateTagPresets\"> {{ presetTagSelected }} </span>\n <span>{{ presetTagSelected && datePickerService.isUsingDateTagPresets ? '(' + displayedFormattedValue + ')' : displayedFormattedValue }}</span>\n </div>\n <input\n #datepickerInput\n [(ngModel)]=\"value\"\n (click)=\"datePicker.open()\"\n [matDatepicker]=\"datePicker\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\"\n />\n</div>\n<dr-button [disabled]=\"isNextDateDisabled\" *ngIf=\"!disabled\" theme=\"icon\" icon=\"dr-icon-arrow-right\" (click)=\"pagingClicked(true)\"></dr-button>\n<mat-datepicker #datePicker\n class=\"dr-timeframe-datepicker\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH)\"\n [panelClass]=\"datePickerService.isUsingDateTagPresets ? 'date-picker-preset-tag' : 'dr-timeframe-datepicker'\"\n >\n</mat-datepicker>\n",
5296
4992
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
5297
4993
  providers: [
5298
4994
  { provide: forms.NG_VALUE_ACCESSOR, useExisting: DrDatePickerWithTimeframeComponent, multi: true },
5299
4995
  { provide: DrDatePickerService }
5300
4996
  ],
5301
- styles: [":host{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:\"Poppins\",sans-serif;background-color:#fff;border:1px solid #c3c4ce;border-radius:6px;color:#85889c;overflow:hidden;outline:none;cursor:pointer}:host:hover{border-color:#85889c}:host:focus-within{border-color:#21b8f1!important;color:#151b3f}:host.disabled{pointer-events:none;border:none;color:#85889c;background:#e5e6ea}:host.ng-valid.ng-dirty{border-color:#03a678}:host.ng-invalid.ng-dirty:not(:focus-within){border-color:#de2833!important}:host.ng-untouched.ng-valid{border-color:#c3c4ce}:host:after,:host:before{position:absolute;display:flex;border-color:#999999 transparent transparent;color:#999}:host:after{content:\"\";height:0;width:0;border-style:solid;border-width:5px 5px 2.5px;right:11px;top:13px}:host i{position:absolute;color:#999;left:8px;top:3px}:host input{display:flex;flex-grow:1;height:100%;border:none;text-align:left;padding-left:35px;padding-right:25px;cursor:pointer!important;outline:none}:host input.when-quarter{position:absolute;visibility:hidden}:host input:disabled{border:none;color:#85889c;background:transparent}:host input::-webkit-search-decoration,:host input::-webkit-search-cancel-button,:host input::-webkit-search-results-button,:host input::-webkit-search-results-decoration{-webkit-appearance:none}::ng-deep .mat-datepicker-content{margin:7px 0;box-shadow:0 4px 8px 1px #00000040;border-radius:12px!important}::ng-deep .mat-datepicker-content button[disabled]{border:inherit;color:inherit;background-color:inherit}::ng-deep .mat-datepicker-content button[disabled]:hover{border:inherit}::ng-deep .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#f2f2fb;color:#4646ce;font-weight:600}::ng-deep .mat-calendar-body-selected{background-color:#4646ce;color:#f2f2fb;font-weight:600}::ng-deep .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:none}::ng-deep .mat-button-focus-overlay{background:#f3f7ff}::ng-deep .mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:1!important;background:#f3f7ff;transition:opacity .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-calendar-controls .mat-calendar-period-button:hover{background:#f3f7ff;transition:background .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-calendar-table-header th{font-size:14px;font-weight:600;color:#19181a}::ng-deep .mat-calendar-table-header-divider{display:none}::ng-deep .mat-calendar-body-label{color:#fff;padding:0}:host{border:none;display:flex;align-items:center}:host.dr-date-picker-on-dashboard{width:-moz-fit-content;width:fit-content;justify-content:space-between}:host.dr-date-picker-on-dashboard mat-datepicker{position:absolute}:host.dr-date-picker-on-dashboard:after{visibility:hidden}:host.dr-date-picker-on-dashboard .dr-datepicker-input-container{display:flex;flex-direction:row;justify-content:center;align-items:center;margin-left:-10px}:host.dr-date-picker-on-dashboard .dr-datepicker-input-container__formatted-value-display{font-weight:600;width:auto;margin-left:5px}:host.dr-date-picker-on-dashboard .dr-datepicker-input-container .dr-icon-date{display:block;position:relative;top:0;margin-right:8px;color:#4e566c}:host .dr-datepicker-input-container input{visibility:hidden;position:absolute;width:100%}:host .dr-datepicker-input-container__formatted-value-display{width:90px;height:22px;padding-left:0;text-align:center;line-height:22px;color:#0c142b;-webkit-text-decoration-line:underline;text-decoration-line:underline}:host .dr-datepicker-input-container__formatted-value-display:hover{background-color:#f2f2fb;border-radius:5px;cursor:pointer;-webkit-text-decoration-line:underline;text-decoration-line:underline;color:#4646ce}::ng-deep .date-picker-preset-tag{width:386px!important}::ng-deep .date-picker-preset-tag .mat-calendar-content{padding-left:32px!important;padding-right:32px!important}\n"]
4997
+ styles: [":host{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:\"Poppins\",sans-serif;background-color:#fff;border:1px solid #c3c4ce;border-radius:6px;color:#85889c;overflow:hidden;outline:none;cursor:pointer}:host:hover{border-color:#85889c}:host:focus-within{border-color:#21b8f1!important;color:#151b3f}:host.disabled{pointer-events:none;border:none;color:#85889c;background:#e5e6ea}:host.ng-valid.ng-dirty{border-color:#03a678}:host.ng-invalid.ng-dirty:not(:focus-within){border-color:#de2833!important}:host.ng-untouched.ng-valid{border-color:#c3c4ce}:host:after,:host:before{position:absolute;display:flex;border-color:#999999 transparent transparent;color:#999}:host:after{content:\"\";height:0;width:0;border-style:solid;border-width:5px 5px 2.5px;right:11px;top:13px}:host i{position:absolute;color:#999;left:8px;top:3px}:host input{display:flex;flex-grow:1;height:100%;border:none;text-align:left;padding-left:35px;padding-right:25px;cursor:pointer!important;outline:none}:host input.when-quarter{position:absolute;visibility:hidden}:host input:disabled{border:none;color:#85889c;background:transparent}:host input::-webkit-search-decoration,:host input::-webkit-search-cancel-button,:host input::-webkit-search-results-button,:host input::-webkit-search-results-decoration{-webkit-appearance:none}::ng-deep .mat-datepicker-content{margin:7px 0;box-shadow:0 4px 8px 1px #00000040;border-radius:12px!important}::ng-deep .mat-datepicker-content button[disabled]{border:inherit;color:inherit;background-color:inherit}::ng-deep .mat-datepicker-content button[disabled]:hover{border:inherit}::ng-deep .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#f2f2fb;color:#4646ce;font-weight:600}::ng-deep .mat-calendar-body-selected{background-color:#4646ce;color:#f2f2fb;font-weight:600}::ng-deep .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:none}::ng-deep .mat-button-focus-overlay{background:#f3f7ff}::ng-deep .mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:1!important;background:#f3f7ff;transition:opacity .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-calendar-controls .mat-calendar-period-button:hover{background:#f3f7ff;transition:background .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-calendar-table-header th{font-size:14px;font-weight:600;color:#19181a}::ng-deep .mat-calendar-table-header-divider{display:none}::ng-deep .mat-calendar-body-label{color:#fff;padding:0}:host{border:none;display:flex;align-items:center}:host.disabled{background:transparent;color:inherit}:host.disabled.dr-date-picker-on-dashboard .dr-datepicker-input-container__formatted-value-display{text-decoration:none;color:#6d6e6f;font-weight:normal}:host.dr-date-picker-on-dashboard{width:-moz-fit-content;width:fit-content;justify-content:space-between}:host.dr-date-picker-on-dashboard mat-datepicker{position:absolute}:host.dr-date-picker-on-dashboard:after{visibility:hidden}:host.dr-date-picker-on-dashboard .dr-datepicker-input-container{display:flex;flex-direction:row;justify-content:center;align-items:center;margin-left:-10px}:host.dr-date-picker-on-dashboard .dr-datepicker-input-container__formatted-value-display{font-weight:600;width:auto;margin-left:5px}:host.dr-date-picker-on-dashboard .dr-datepicker-input-container .dr-icon-date{display:block;position:relative;top:0;margin-right:8px;color:#4e566c}:host .dr-datepicker-input-container input{visibility:hidden;position:absolute;width:100%}:host .dr-datepicker-input-container__formatted-value-display{width:90px;height:22px;padding-left:0;text-align:center;line-height:22px;color:#0c142b;-webkit-text-decoration-line:underline;text-decoration-line:underline}:host .dr-datepicker-input-container__formatted-value-display:hover{background-color:#f2f2fb;border-radius:5px;cursor:pointer;-webkit-text-decoration-line:underline;text-decoration-line:underline;color:#4646ce}::ng-deep .date-picker-preset-tag{width:386px!important}::ng-deep .date-picker-preset-tag .mat-calendar-content{padding-left:32px!important;padding-right:32px!important}\n"]
5302
4998
  },] }
5303
4999
  ];
5304
5000
  DrDatePickerWithTimeframeComponent.ctorParameters = function () { return [
@@ -5600,8 +5296,7 @@
5600
5296
  datepicker.MatDatepickerModule,
5601
5297
  tooltip.MatTooltipModule,
5602
5298
  DrTooltipModule
5603
- ],
5604
- entryComponents: [DrDatePickerCustomHeaderComponent]
5299
+ ]
5605
5300
  },] }
5606
5301
  ];
5607
5302
 
@@ -5627,6 +5322,7 @@
5627
5322
  DrInputsModule,
5628
5323
  ngSelect.NgSelectModule
5629
5324
  ],
5325
+ providers: [DrDatePickerService],
5630
5326
  exports: components$2,
5631
5327
  declarations: components$2,
5632
5328
  },] }
@@ -5788,8 +5484,8 @@
5788
5484
  ListTagModule,
5789
5485
  DrDynamicTagModule
5790
5486
  ],
5791
- exports: [DrTagComponent, DrDynamicTagModule],
5792
- providers: [],
5487
+ exports: [DrTagComponent],
5488
+ providers: [DrDatePickerService],
5793
5489
  declarations: [
5794
5490
  DrTagComponent
5795
5491
  ],
@@ -6666,193 +6362,6 @@
6666
6362
  },] }
6667
6363
  ];
6668
6364
 
6669
- var DrScenarioConfigurationComponent = /** @class */ (function () {
6670
- function DrScenarioConfigurationComponent(scenarioService) {
6671
- this.scenarioService = scenarioService;
6672
- this.toggleButtonTheme = exports.ToggleButtonTheme;
6673
- this._scenarioTags = [];
6674
- this.wholeTagsConfig = [];
6675
- this.selectedScenario = exports.Scenario.ACTUALS;
6676
- this.scenarioDataChanged = new i0.EventEmitter();
6677
- }
6678
- Object.defineProperty(DrScenarioConfigurationComponent.prototype, "scenarioTags", {
6679
- get: function () {
6680
- return this._scenarioTags;
6681
- },
6682
- set: function (tags) {
6683
- this._scenarioTags = tags;
6684
- this.tagNotSupportingDates = _.find(tags, { turnOffDateTags: true });
6685
- },
6686
- enumerable: false,
6687
- configurable: true
6688
- });
6689
- DrScenarioConfigurationComponent.prototype.ngOnInit = function () {
6690
- this.scenarios = this.scenarioService.scenarios;
6691
- this.scenarioService.initScenarioTags(this.selectedScenario, this.wholeTagsConfig, this.currentTagsConfig);
6692
- this.scenarioTags = this.scenarioService.getScenarioTagsByScenario(this.selectedScenario);
6693
- };
6694
- DrScenarioConfigurationComponent.prototype.onScenarioChange = function (scenario) {
6695
- this.scenarioTags = this.scenarioService.getScenarioTagsByScenario(scenario);
6696
- this.onScenarioDataChange();
6697
- };
6698
- DrScenarioConfigurationComponent.prototype.onScenarioTagToggle = function (tag) {
6699
- this.tagNotSupportingDatesHandler(tag);
6700
- this.tagAcceptableDateHandler(tag);
6701
- this.onScenarioDataChange();
6702
- };
6703
- DrScenarioConfigurationComponent.prototype.onScenarioDataChange = function () {
6704
- this.scenarioDataChanged.emit({
6705
- scenario: this.selectedScenario,
6706
- tagsConfig: this.scenarioService.getTagsConfigByScenarioTags(this.scenarioTags, this.wholeTagsConfig),
6707
- });
6708
- };
6709
- DrScenarioConfigurationComponent.prototype.tagNotSupportingDatesHandler = function (tag) {
6710
- if (!this.tagNotSupportingDates || !tag.toggle)
6711
- return;
6712
- if (tag.type === exports.TagTypes.DATE) {
6713
- this.tagNotSupportingDates.toggle = false;
6714
- }
6715
- if (tag === this.tagNotSupportingDates) {
6716
- var dateTag = _.find(this.scenarioTags, { type: exports.TagTypes.DATE });
6717
- if (dateTag) {
6718
- dateTag.toggle = false;
6719
- }
6720
- }
6721
- };
6722
- DrScenarioConfigurationComponent.prototype.tagAcceptableDateHandler = function (tag) {
6723
- var _a;
6724
- if (!((_a = tag.acceptableDateTags) === null || _a === void 0 ? void 0 : _a.length))
6725
- return;
6726
- var dateTag = _.find(this.scenarioTags, { type: exports.TagTypes.DATE });
6727
- if (!dateTag)
6728
- return;
6729
- dateTag.subTags = _.map(dateTag.subTags, function (subTag) {
6730
- subTag.hidden = tag.toggle && !_.includes(tag.acceptableDateTags, subTag.subType);
6731
- return subTag;
6732
- });
6733
- dateTag.selectedTagSubType = tag.acceptableDateTags[0];
6734
- };
6735
- return DrScenarioConfigurationComponent;
6736
- }());
6737
- DrScenarioConfigurationComponent.decorators = [
6738
- { type: i0.Component, args: [{
6739
- selector: 'dr-scenario-configuration',
6740
- template: "<div class=\"scenario\">\n <div class=\"scenario__list\">\n <p class=\"scenario__title scenario__title-list\">Scenario</p>\n <dr-select [(ngModel)]=\"selectedScenario\"\n placeholder=\"select\"\n [items]=\"scenarios\"\n (ngModelChange)=\"onScenarioChange($event)\"></dr-select>\n </div>\n <div class=\"scenario__tags\">\n <p class=\"scenario__title--extra scenario__tags__title\">Tags</p>\n <div class=\"scenario__tag\" *ngFor=\"let tag of scenarioTags\">\n <div class=\"scenario__tag__header\">\n <p class=\"scenario__title\">{{ tag.name }}</p>\n <dr-toggle [(ngModel)]=\"tag.toggle\"\n (ngModelChange)=\"onScenarioTagToggle(tag)\"></dr-toggle>\n </div>\n <div class=\"scenario__tag__description\">\n <p class=\"scenario__text\">{{ tag.description }}</p>\n </div>\n <div *ngIf=\"tag.toggle\" class=\"scenario__tag__body\">\n <div *ngIf=\"tag.subTags?.length\" class=\"scenario__sub-tag\">\n <dr-toggle-button [(ngModel)]=\"tag.selectedTagSubType\"\n bindHidden=\"hidden\"\n bindLabel=\"name\"\n bindValue=\"subType\"\n [items]=\"tag.subTags\"\n [theme]=\"toggleButtonTheme.DOTTED\"\n (ngModelChange)=\"onScenarioDataChange()\"></dr-toggle-button>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
6741
- changeDetection: i0.ChangeDetectionStrategy.OnPush,
6742
- styles: [".scenario__text,.scenario__title,.scenario__title--extra{padding:0;margin:0;color:#0c142b;font-weight:400;font-size:14px;line-height:22px}.scenario__title{font-weight:600}.scenario__title--extra{font-weight:700}.scenario__tags{margin-top:24px}.scenario__tags__title{margin-bottom:16px}.scenario__title-list{margin-bottom:4px}.scenario__tag{margin-bottom:24px;padding-top:16px;border-top:1px solid #dfe0e3}.scenario__tag__description{margin-top:5px}.scenario__tag__header{display:flex;justify-content:space-between}.scenario__sub-tag{margin-top:8px}:host::ng-deep .toggle-container__item{padding:2px 8px!important}\n"]
6743
- },] }
6744
- ];
6745
- DrScenarioConfigurationComponent.ctorParameters = function () { return [
6746
- { type: ScenarioService }
6747
- ]; };
6748
- DrScenarioConfigurationComponent.propDecorators = {
6749
- currentTagsConfig: [{ type: i0.Input }],
6750
- wholeTagsConfig: [{ type: i0.Input }],
6751
- selectedScenario: [{ type: i0.Input }],
6752
- scenarioDataChanged: [{ type: i0.Output }]
6753
- };
6754
-
6755
- var DrScenarioTagConfigurationComponent = /** @class */ (function () {
6756
- function DrScenarioTagConfigurationComponent() {
6757
- this.connectedTags = {};
6758
- this.dynamicTagValues = {};
6759
- this.lockedDates = [];
6760
- this.scenarioTagDataChanged = new i0.EventEmitter();
6761
- this.currentTagsMap = {};
6762
- this._currentTags = [];
6763
- this.dynamicTagsToSave = [];
6764
- this.tagsToSave = [];
6765
- }
6766
- Object.defineProperty(DrScenarioTagConfigurationComponent.prototype, "currentTags", {
6767
- get: function () {
6768
- return this._currentTags;
6769
- },
6770
- set: function (tags) {
6771
- var _this = this;
6772
- this._currentTags = tags;
6773
- this.currentTagsMap = _.reduce(tags, function (acc, curr) {
6774
- var _a;
6775
- var tagId = (_a = _.find(_this.tagsConfig, { name: curr.name })) === null || _a === void 0 ? void 0 : _a.id;
6776
- if (isNaN(tagId))
6777
- return acc;
6778
- acc[tagId] = curr;
6779
- return acc;
6780
- }, {});
6781
- },
6782
- enumerable: false,
6783
- configurable: true
6784
- });
6785
- DrScenarioTagConfigurationComponent.prototype.ngOnChanges = function (simpleChanges) {
6786
- this.currentTags = this.currentTags;
6787
- };
6788
- DrScenarioTagConfigurationComponent.prototype.onTagChange = function ($event) {
6789
- var savedTag = _.find(this.tagsToSave, { id: $event.id });
6790
- if (savedTag) {
6791
- _.merge(savedTag, $event);
6792
- }
6793
- else {
6794
- this.tagsToSave.push($event);
6795
- }
6796
- this.onScenarioTagDataChanged();
6797
- };
6798
- DrScenarioTagConfigurationComponent.prototype.onDynamicTagsChange = function ($event) {
6799
- this.dynamicTagsToSave = $event;
6800
- this.onScenarioTagDataChanged();
6801
- };
6802
- DrScenarioTagConfigurationComponent.prototype.onScenarioTagDataChanged = function () {
6803
- var tags = __spreadArray(__spreadArray([], __read(this.dynamicTagsToSave)), __read(this.tagsToSave));
6804
- this.scenarioTagDataChanged.emit({
6805
- scenario: this.scenario,
6806
- tagsConfig: this.tagsConfig,
6807
- tags: tags,
6808
- });
6809
- };
6810
- return DrScenarioTagConfigurationComponent;
6811
- }());
6812
- DrScenarioTagConfigurationComponent.decorators = [
6813
- { type: i0.Component, args: [{
6814
- selector: 'dr-scenario-tag-configuration',
6815
- template: "<div class=\"scenario-tag-configuration\"\n *ngFor=\"let tagConfig of tagsConfig\">\n <dr-tag [tagConfig]=\"tagConfig\"\n [selectedTag]=\"currentTagsMap[tagConfig.id]\"\n [lockedDate]=\"lockedDates\"\n [fiscalYearStartsFrom]=\"fiscalYearStartsFrom\"\n [fiscalYearBack]=\"fiscalYearBack\"\n [tagsConfig]=\"tagsConfig\"\n [dynamicTagValues]=\"dynamicTagValues\"\n [connectedTags]=\"connectedTags[tagConfig.id]\"\n [isDynamicTagAddEnabled]=\"isDynamicAddEnabled\"\n (tagChange)=\"onTagChange($event)\"\n (dynamicTagChange)=\"onDynamicTagsChange($event)\"></dr-tag>\n</div>\n",
6816
- changeDetection: i0.ChangeDetectionStrategy.OnPush,
6817
- styles: [".scenario-tag-configuration{margin-bottom:24px}.scenario-tag-configuration:last-child{margin-bottom:0}:host::ng-deep .tag__label,:host::ng-deep .dynamic-tag__label{font-weight:600!important}\n"]
6818
- },] }
6819
- ];
6820
- DrScenarioTagConfigurationComponent.propDecorators = {
6821
- tagsConfig: [{ type: i0.Input }],
6822
- currentTags: [{ type: i0.Input }],
6823
- scenario: [{ type: i0.Input }],
6824
- connectedTags: [{ type: i0.Input }],
6825
- dynamicTagValues: [{ type: i0.Input }],
6826
- lockedDates: [{ type: i0.Input }],
6827
- fiscalYearStartsFrom: [{ type: i0.Input }],
6828
- fiscalYearBack: [{ type: i0.Input }],
6829
- isDynamicAddEnabled: [{ type: i0.Input }],
6830
- scenarioTagDataChanged: [{ type: i0.Output }]
6831
- };
6832
-
6833
- var COMPONENTS = [
6834
- DrScenarioConfigurationComponent,
6835
- DrScenarioTagConfigurationComponent,
6836
- ];
6837
- var DrScenarioModule = /** @class */ (function () {
6838
- function DrScenarioModule() {
6839
- }
6840
- return DrScenarioModule;
6841
- }());
6842
- DrScenarioModule.decorators = [
6843
- { type: i0.NgModule, args: [{
6844
- declarations: __spreadArray([], __read(COMPONENTS)),
6845
- providers: [ScenarioService],
6846
- imports: [
6847
- common.CommonModule,
6848
- DrInputsModule,
6849
- forms.FormsModule,
6850
- DrTagModule
6851
- ],
6852
- exports: __spreadArray([], __read(COMPONENTS)),
6853
- },] }
6854
- ];
6855
-
6856
6365
  /* components */
6857
6366
 
6858
6367
  /**
@@ -6877,6 +6386,7 @@
6877
6386
  exports.DrAvatarPipe = DrAvatarPipe;
6878
6387
  exports.DrButtonComponent = DrButtonComponent;
6879
6388
  exports.DrChatModule = DrChatModule;
6389
+ exports.DrDatePickerService = DrDatePickerService;
6880
6390
  exports.DrDialogModule = DrDialogModule;
6881
6391
  exports.DrDropdownComponent = DrDropdownComponent;
6882
6392
  exports.DrDropdownDirective = DrDropdownDirective;
@@ -6884,7 +6394,6 @@
6884
6394
  exports.DrDropdownModule = DrDropdownModule;
6885
6395
  exports.DrDropdownPositionDirective = DrDropdownPositionDirective;
6886
6396
  exports.DrDropdownService = DrDropdownService;
6887
- exports.DrDynamicTagModule = DrDynamicTagModule;
6888
6397
  exports.DrErrorComponent = DrErrorComponent;
6889
6398
  exports.DrErrorModule = DrErrorModule;
6890
6399
  exports.DrInputComponent = DrInputComponent;
@@ -6899,7 +6408,6 @@
6899
6408
  exports.DrPopoverModule = DrPopoverModule;
6900
6409
  exports.DrPopoverRef = DrPopoverRef;
6901
6410
  exports.DrPopoverService = DrPopoverService;
6902
- exports.DrScenarioModule = DrScenarioModule;
6903
6411
  exports.DrSelectComponent = DrSelectComponent;
6904
6412
  exports.DrSharedUtils = DrSharedUtils;
6905
6413
  exports.DrSpinnerComponent = DrSpinnerComponent;
@@ -6923,24 +6431,23 @@
6923
6431
  exports.QuarterTagComponent = QuarterTagComponent;
6924
6432
  exports.RadioButtonComponent = RadioButtonComponent;
6925
6433
  exports.RadioGroupComponent = RadioGroupComponent;
6926
- exports.ScenarioService = ScenarioService;
6927
6434
  exports.TooltipComponent = TooltipComponent;
6928
6435
  exports.WeekTagComponent = WeekTagComponent;
6929
6436
  exports.YearTagComponent = YearTagComponent;
6437
+ exports["ɵ0"] = ɵ0$3;
6930
6438
  exports["ɵa"] = components$2;
6931
6439
  exports["ɵb"] = POPUP_ANIMATION;
6932
- exports["ɵba"] = DrScenarioTagConfigurationComponent;
6933
6440
  exports["ɵc"] = DrDatePickerComponent;
6934
- exports["ɵd"] = DrDatePickerService;
6935
- exports["ɵe"] = DrDatePickerWithTimeframeComponent;
6936
- exports["ɵf"] = DrDatePickerFormatDirective;
6937
- exports["ɵg"] = DrDatePickerCustomHeaderComponent;
6938
- exports["ɵh"] = DrShowTimeframePipe;
6939
- exports["ɵi"] = DrSelectAddItemComponent;
6940
- exports["ɵj"] = TooltipInfoComponent;
6941
- exports["ɵk"] = TooltipInfoSimpleComponent;
6942
- exports["ɵl"] = TooltipNoBodyComponent;
6943
- exports["ɵm"] = TooltipProcessDefaultComponent;
6441
+ exports["ɵd"] = DrDatePickerWithTimeframeComponent;
6442
+ exports["ɵe"] = DrDatePickerFormatDirective;
6443
+ exports["ɵf"] = DrDatePickerCustomHeaderComponent;
6444
+ exports["ɵg"] = DrShowTimeframePipe;
6445
+ exports["ɵh"] = DrSelectAddItemComponent;
6446
+ exports["ɵi"] = TooltipInfoComponent;
6447
+ exports["ɵj"] = TooltipInfoSimpleComponent;
6448
+ exports["ɵk"] = TooltipNoBodyComponent;
6449
+ exports["ɵl"] = TooltipProcessDefaultComponent;
6450
+ exports["ɵm"] = DrDynamicTagModule;
6944
6451
  exports["ɵn"] = DrDynamicTagComponent;
6945
6452
  exports["ɵo"] = StepperComponent;
6946
6453
  exports["ɵp"] = DialogWrapperComponent;
@@ -6953,7 +6460,6 @@
6953
6460
  exports["ɵw"] = DrChatMessageTextComponent;
6954
6461
  exports["ɵx"] = DrChatMessageFileComponent;
6955
6462
  exports["ɵy"] = DrChatCustomMessageDirective;
6956
- exports["ɵz"] = DrScenarioConfigurationComponent;
6957
6463
 
6958
6464
  Object.defineProperty(exports, '__esModule', { value: true });
6959
6465