@resolveio/client-lib-core 1.6.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/esm2020/lib/account-manager.service.mjs +3 -3
  2. package/esm2020/lib/auth/auth-guard.service.mjs +90 -139
  3. package/esm2020/lib/auth/auth-permissions.service.mjs +3 -3
  4. package/esm2020/lib/auth/auth.service.mjs +7 -7
  5. package/esm2020/lib/auth/auth365.component.mjs +3 -3
  6. package/esm2020/lib/auth/can-deactivate-guard.service.mjs +4 -13
  7. package/esm2020/lib/auth/enroll.component.mjs +5 -5
  8. package/esm2020/lib/auth/forgot-password.component.mjs +5 -5
  9. package/esm2020/lib/core.component.mjs +8 -8
  10. package/esm2020/lib/core.module.mjs +5 -11
  11. package/esm2020/lib/core.service.mjs +3 -3
  12. package/esm2020/lib/directive/focus.mjs +3 -3
  13. package/esm2020/lib/directive/scroll.mjs +3 -3
  14. package/esm2020/lib/home/home.component.mjs +3 -3
  15. package/esm2020/lib/logger/logger.component.mjs +5 -5
  16. package/esm2020/lib/models/permission.model.mjs +1 -1
  17. package/esm2020/lib/models/user.model.mjs +1 -1
  18. package/esm2020/lib/offline-manager.service.mjs +3 -3
  19. package/esm2020/lib/pipes/domsanitizor.pipe.mjs +3 -3
  20. package/esm2020/lib/pipes/filter.pipe.mjs +6 -6
  21. package/esm2020/lib/pipes/json-parse.pipe.mjs +3 -3
  22. package/esm2020/lib/pipes/minus-currency.pipe.mjs +3 -3
  23. package/esm2020/lib/pipes/phone.pipe.mjs +3 -3
  24. package/esm2020/lib/pipes/pipe.module.mjs +4 -4
  25. package/esm2020/lib/pipes/reverse-list.pipe.mjs +3 -3
  26. package/esm2020/lib/pipes/titlecase.pipe.mjs +3 -3
  27. package/esm2020/lib/report-builder.permission.mjs +5 -5
  28. package/esm2020/lib/resolveio-class.mjs +3 -3
  29. package/esm2020/lib/shared/shared.module.mjs +4 -4
  30. package/esm2020/lib/socket-manager.service.mjs +75 -59
  31. package/esm2020/lib/socket.service.mjs +9 -74
  32. package/esm2020/lib/super-admin.permission.mjs +4 -4
  33. package/esm2020/lib/support-ticket/detail/support-ticket-detail.component.mjs +5 -5
  34. package/esm2020/lib/support-ticket/edit/support-ticket-edit.component.mjs +5 -5
  35. package/esm2020/lib/support-ticket/list/support-ticket-list.component.mjs +3 -3
  36. package/esm2020/lib/support-ticket/new/support-ticket-new.component.mjs +5 -5
  37. package/esm2020/lib/support-ticket/support-ticket.component.mjs +3 -3
  38. package/esm2020/lib/support-ticket/support-ticket.module.mjs +4 -4
  39. package/esm2020/lib/support-ticket/support-ticket.service.mjs +3 -3
  40. package/esm2020/lib/token-manager.service.mjs +3 -3
  41. package/esm2020/lib/user-settings/settings/users-settings.component.mjs +5 -5
  42. package/esm2020/lib/user-settings/user-settings.component.mjs +3 -3
  43. package/esm2020/lib/user-settings/user-settings.module.mjs +4 -4
  44. package/esm2020/lib/user-settings/user-settings.permission.mjs +2 -2
  45. package/esm2020/lib/user-settings/user-settings.service.mjs +3 -3
  46. package/esm2020/lib/util/aws.service.mjs +3 -3
  47. package/esm2020/lib/util/common.helper.mjs +35 -28
  48. package/esm2020/lib/util/validation.service.mjs +4 -12
  49. package/esm2020/lib/util/window-resize.service.mjs +3 -3
  50. package/esm2020/lib/util/window.service.mjs +3 -3
  51. package/esm2020/lib/widgets/alert/alert.service.mjs +5 -7
  52. package/esm2020/lib/widgets/collapse-table/collapse-table.component.mjs +5 -5
  53. package/esm2020/lib/widgets/collapse-table/collapse-table.module.mjs +4 -4
  54. package/esm2020/lib/widgets/data-table/data-table.component.mjs +5 -5
  55. package/esm2020/lib/widgets/data-table/data-table.module.mjs +4 -4
  56. package/esm2020/lib/widgets/date-shortcut/date-shortcut.component.mjs +3 -3
  57. package/esm2020/lib/widgets/date-shortcut/date-shortcut.module.mjs +4 -4
  58. package/esm2020/lib/widgets/dialog/dialog.confirm.content.mjs +3 -3
  59. package/esm2020/lib/widgets/dialog/dialog.error.content.mjs +3 -3
  60. package/esm2020/lib/widgets/dialog/dialog.input.content.mjs +3 -3
  61. package/esm2020/lib/widgets/dialog/dialog.login.content.mjs +3 -3
  62. package/esm2020/lib/widgets/dialog/dialog.notify.content.mjs +3 -3
  63. package/esm2020/lib/widgets/dialog/dialog.register.content.mjs +3 -3
  64. package/esm2020/lib/widgets/dialog/dialog.select-array-objs.content.mjs +3 -3
  65. package/esm2020/lib/widgets/dialog/dialog.select-array.content.mjs +3 -3
  66. package/esm2020/lib/widgets/dialog/dialog.select-data-labels.content.mjs +3 -3
  67. package/esm2020/lib/widgets/dialog/dialog.select-datetime.content.mjs +4 -4
  68. package/esm2020/lib/widgets/dialog/dialog.select-with-buttons-url.content.mjs +3 -3
  69. package/esm2020/lib/widgets/dialog/dialog.service.mjs +3 -3
  70. package/esm2020/lib/widgets/file/file-upload.component.mjs +5 -5
  71. package/esm2020/lib/widgets/file/file-upload.module.mjs +4 -4
  72. package/esm2020/lib/widgets/form-button/form-button.component.mjs +4 -4
  73. package/esm2020/lib/widgets/form-button/form-button.module.mjs +4 -4
  74. package/esm2020/lib/widgets/navbar-main/navbar-main.component.mjs +5 -5
  75. package/esm2020/lib/widgets/navbar-module/navbar-module.component.mjs +57 -30
  76. package/esm2020/lib/widgets/responsive-button-group/responsive-button-group.component.mjs +3 -3
  77. package/esm2020/lib/widgets/responsive-button-group/responsive-button-group.module.mjs +4 -4
  78. package/esm2020/lib/widgets/scheduler/scheduler.component.mjs +3 -3
  79. package/esm2020/lib/widgets/scheduler/scheduler.module.mjs +4 -4
  80. package/esm2020/lib/widgets/sort-table/sort-table-header.component.mjs +3 -3
  81. package/esm2020/lib/widgets/sort-table/sort-table-ngfor.component.mjs +3 -3
  82. package/esm2020/lib/widgets/sort-table/sort-table.directive.mjs +3 -3
  83. package/esm2020/lib/widgets/sort-table/sort-table.module.mjs +4 -4
  84. package/esm2020/lib/widgets/user-role/user-role.component.mjs +3 -3
  85. package/esm2020/lib/widgets/user-role/user-role.module.mjs +4 -4
  86. package/fesm2015/resolveio-client-lib-core.mjs +552 -628
  87. package/fesm2015/resolveio-client-lib-core.mjs.map +1 -1
  88. package/fesm2020/resolveio-client-lib-core.mjs +552 -628
  89. package/fesm2020/resolveio-client-lib-core.mjs.map +1 -1
  90. package/lib/auth/auth-guard.service.d.ts +2 -26
  91. package/lib/auth/auth365.component.d.ts +1 -1
  92. package/lib/auth/can-deactivate-guard.service.d.ts +1 -11
  93. package/lib/auth/enroll.component.d.ts +1 -1
  94. package/lib/auth/forgot-password.component.d.ts +1 -1
  95. package/lib/core.component.d.ts +1 -1
  96. package/lib/directive/focus.d.ts +1 -1
  97. package/lib/directive/scroll.d.ts +1 -1
  98. package/lib/home/home.component.d.ts +1 -1
  99. package/lib/logger/logger.component.d.ts +1 -1
  100. package/lib/models/permission.model.d.ts +1 -2
  101. package/lib/models/user.model.d.ts +1 -1
  102. package/lib/socket-manager.service.d.ts +0 -1
  103. package/lib/socket.service.d.ts +3 -8
  104. package/lib/support-ticket/detail/support-ticket-detail.component.d.ts +1 -1
  105. package/lib/support-ticket/edit/support-ticket-edit.component.d.ts +1 -1
  106. package/lib/support-ticket/list/support-ticket-list.component.d.ts +1 -1
  107. package/lib/support-ticket/new/support-ticket-new.component.d.ts +1 -1
  108. package/lib/support-ticket/support-ticket.component.d.ts +1 -1
  109. package/lib/user-settings/settings/users-settings.component.d.ts +1 -1
  110. package/lib/user-settings/user-settings.component.d.ts +1 -1
  111. package/lib/util/common.helper.d.ts +1 -1
  112. package/lib/util/validation.service.d.ts +0 -3
  113. package/lib/widgets/collapse-table/collapse-table.component.d.ts +1 -1
  114. package/lib/widgets/data-table/data-table.component.d.ts +1 -1
  115. package/lib/widgets/date-shortcut/date-shortcut.component.d.ts +1 -1
  116. package/lib/widgets/dialog/dialog.confirm.content.d.ts +1 -1
  117. package/lib/widgets/dialog/dialog.error.content.d.ts +1 -1
  118. package/lib/widgets/dialog/dialog.input.content.d.ts +1 -1
  119. package/lib/widgets/dialog/dialog.login.content.d.ts +1 -1
  120. package/lib/widgets/dialog/dialog.notify.content.d.ts +1 -1
  121. package/lib/widgets/dialog/dialog.register.content.d.ts +1 -1
  122. package/lib/widgets/dialog/dialog.select-array-objs.content.d.ts +1 -1
  123. package/lib/widgets/dialog/dialog.select-array.content.d.ts +1 -1
  124. package/lib/widgets/dialog/dialog.select-data-labels.content.d.ts +1 -1
  125. package/lib/widgets/dialog/dialog.select-datetime.content.d.ts +1 -1
  126. package/lib/widgets/dialog/dialog.select-with-buttons-url.content.d.ts +1 -1
  127. package/lib/widgets/file/file-upload.component.d.ts +1 -1
  128. package/lib/widgets/form-button/form-button.component.d.ts +1 -1
  129. package/lib/widgets/navbar-main/navbar-main.component.d.ts +1 -1
  130. package/lib/widgets/navbar-module/navbar-module.component.d.ts +1 -1
  131. package/lib/widgets/responsive-button-group/responsive-button-group.component.d.ts +1 -1
  132. package/lib/widgets/scheduler/scheduler.component.d.ts +1 -1
  133. package/lib/widgets/sort-table/sort-table-header.component.d.ts +1 -1
  134. package/lib/widgets/sort-table/sort-table-ngfor.component.d.ts +1 -1
  135. package/lib/widgets/sort-table/sort-table.directive.d.ts +1 -1
  136. package/lib/widgets/user-role/user-role.component.d.ts +1 -1
  137. package/package.json +9 -9
@@ -1,8 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, Component, Input, HostListener, ViewChild, Directive, ChangeDetectionStrategy, EventEmitter, Output, ViewChildren, Pipe, ElementRef, NgModule, ViewEncapsulation, Optional } from '@angular/core';
2
+ import { Injectable, Component, Input, HostListener, ViewChild, Directive, ChangeDetectionStrategy, EventEmitter, Output, ViewChildren, Pipe, ElementRef, NgModule, ViewEncapsulation, Optional, inject } from '@angular/core';
3
3
  import { BehaviorSubject, Subject, merge } from 'rxjs';
4
4
  import * as i1$2 from '@angular/router';
5
- import { RouterModule } from '@angular/router';
5
+ import { RouterModule, Router, RouterStateSnapshot } from '@angular/router';
6
6
  import { finalize } from 'rxjs/operators';
7
7
  import { detailedDiff } from 'deep-object-diff';
8
8
  import moment from 'moment';
@@ -108,9 +108,9 @@ class CoreService {
108
108
  this.isDemo.next(isDemo);
109
109
  }
110
110
  }
111
- CoreService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CoreService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
112
- CoreService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CoreService, providedIn: 'root' });
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CoreService, decorators: [{
111
+ CoreService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CoreService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
112
+ CoreService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CoreService, providedIn: 'root' });
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CoreService, decorators: [{
114
114
  type: Injectable,
115
115
  args: [{
116
116
  providedIn: 'root'
@@ -183,35 +183,42 @@ function toDataURL(url, callback) {
183
183
  xhr.send();
184
184
  }
185
185
  function getDeepDiffDetails(obj1, obj2) {
186
- let diff = detailedDiff(obj2, obj1);
186
+ let diff = detailedDiff(obj1, obj2);
187
+ let newDiff = detailedDiff(obj2, obj1);
187
188
  let diffString = '';
188
- const formatObjectDiff = (obj1, obj2) => {
189
- if (!obj1 || !obj2)
190
- return '';
191
- return Object.keys(obj1)
192
- .map(key => {
193
- if (Array.isArray(obj1[key]) && Array.isArray(obj2[key])) {
194
- const arrayDiff = obj1[key].map((item, index) => typeof item === 'object' && obj2[key][index]
195
- ? `{${formatObjectDiff(item, obj2[key][index])}}`
196
- : `"${item}" to "${obj2[key][index]}"`).join(', ');
197
- return `${toTitleCase(key)}: [${arrayDiff}]`;
198
- }
199
- if (typeof obj1[key] === 'object' && obj2[key]) {
200
- return `${toTitleCase(key)}: {${formatObjectDiff(obj1[key], obj2[key])}}`;
201
- }
202
- return `${toTitleCase(key)}: "${obj1[key]}" to "${obj2[key]}"`;
203
- })
204
- .join(', ');
205
- };
206
- if (Object.keys(diff['updated']).length > 0) {
207
- diffString += 'Updated:\n';
208
- const updates = Object.keys(diff['updated'])
209
- .filter(key => key.substr(0, 2) !== 'id' && diff['updated'][key] !== obj2[key])
210
- .map(key => moment.isDate(diff['updated'][key])
211
- ? `${toTitleCase(key)}: "${moment(diff['updated'][key]).format('llll')}" to "${moment(obj2[key]).format('llll')}"`
212
- : `${toTitleCase(key)}: {${formatObjectDiff(diff['updated'][key], obj2[key])}}`)
213
- .join(',\n');
214
- diffString += updates ? `${updates}\n` : '';
189
+ if ((Object.keys(diff['updated']).length)) {
190
+ // if (Object.keys(diff['added']).length){
191
+ // diffString += '; ';
192
+ // }
193
+ // if (Object.keys(diff['deleted']).length) {
194
+ // diffString += '; ';
195
+ // }
196
+ for (let i = 0; i < Object.keys(diff['updated']).length; i++) {
197
+ if (!Array.isArray(obj1[Object.keys(diff['updated'])[i]])) {
198
+ let key = Object.keys(diff['updated'])[i];
199
+ let newKey = Object.keys(newDiff['updated'])[i];
200
+ if ((key.substr(0, 2) !== 'id')) {
201
+ if (diff['updated'][key] && moment.isDate(diff['updated'][key])) {
202
+ diffString += 'Updated: \n' + toTitleCase(key.replace(/_/g, ' ')) + ': "' + moment(diff['updated'][key]).format('llll') + '" to "' + moment(newDiff['updated'][newKey]).format('llll') + '"\n';
203
+ }
204
+ else if (diff['updated'][key] && typeof (diff['updated'][key]) === 'object') {
205
+ let objString = '';
206
+ for (let j = 0; j < Object.keys(diff['updated'][key]).length; j++) {
207
+ let objKey = Object.keys(diff['updated'][key])[j];
208
+ let newObjKey = Object.keys(newDiff['updated'][key])[j];
209
+ if (j > 0) {
210
+ objString += 'll, \n';
211
+ }
212
+ objString += toTitleCase(objKey.replace(/_/g, ' ')) + ': "' + diff['updated'][key][objKey] + '" to "' + newDiff['updated'][key][newObjKey] + '"' + (j < Object.keys(diff['updated'][key]).length - 1 ? ', ' : '');
213
+ }
214
+ diffString += 'Updated: \n' + objString + '\n';
215
+ }
216
+ else {
217
+ diffString += 'Updated: \n' + toTitleCase(key.replace(/_/g, ' ')) + ': "' + diff['updated'][key] + '" to "' + newDiff['updated'][newKey] + '"' + (i < Object.keys(diff['updated']).length - 1 ? '\n' : '');
218
+ }
219
+ }
220
+ }
221
+ }
215
222
  }
216
223
  return diffString;
217
224
  }
@@ -261,10 +268,6 @@ class SocketService {
261
268
  this.readyState$ = new BehaviorSubject(0);
262
269
  //List of WebSocket sub-protocols
263
270
  this.protocols = [];
264
- this.pingInterval = null;
265
- this.pongTimeout = null;
266
- this.pingIntervalTime = 15000; // Time between each ping (e.g., 30 seconds)
267
- this.pongTimeoutTime = 12000; // Time to wait for pong before closing connection (e.g., 10 seconds)
268
271
  //Set up the default 'noop' event handlers
269
272
  this.onopen = function (event) { };
270
273
  this.onclose = function (event) { };
@@ -298,7 +301,6 @@ class SocketService {
298
301
  this.readyState = WebSocket.OPEN;
299
302
  this.readyState$.next(this.readyState);
300
303
  this.onopen(event);
301
- this.startPinging();
302
304
  };
303
305
  this.ws.onclose = (event) => {
304
306
  if (this.timeout) {
@@ -313,18 +315,9 @@ class SocketService {
313
315
  setTimeout(() => {
314
316
  this.connect();
315
317
  }, this.reconnectInterval);
316
- this.stopPinging();
317
318
  };
318
319
  this.ws.onmessage = (event) => {
319
- if (event.data === 'pong') {
320
- this.log(new Date(), 'WS', 'pong received');
321
- clearTimeout(this.pongTimeout);
322
- }
323
- else {
324
- let messageData = JSON.parse(event.data);
325
- messageData = this.convertUTCDateToLocalDate(messageData);
326
- this.onmessage(messageData);
327
- }
320
+ this.onmessage(event);
328
321
  };
329
322
  this.ws.onerror = (event) => {
330
323
  this.log(new Date(), 'WS', 'onerror', this, event);
@@ -333,71 +326,20 @@ class SocketService {
333
326
  };
334
327
  }
335
328
  }
336
- convertUTCDateToLocalDate(data) {
337
- if (Array.isArray(data)) {
338
- return data.map(item => this.convertUTCDateToLocalDate(item));
339
- }
340
- else if (typeof data === 'object' && data !== null) {
341
- const keys = Object.keys(data);
342
- keys.forEach((key) => {
343
- data[key] = this.convertUTCDateToLocalDate(data[key]);
344
- });
345
- return data;
346
- }
347
- else if (typeof data === 'string') {
348
- // Check if the string is an ISO date format
349
- const datePattern = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$/;
350
- if (datePattern.test(data)) {
351
- return new Date(data);
352
- }
353
- }
354
- return data;
355
- }
356
- startPinging() {
357
- this.pingInterval = setInterval(() => {
358
- if (this.ws && this.ws.readyState === WebSocket.OPEN) {
359
- this.send('ping');
360
- this.pongTimeout = setTimeout(() => {
361
- this.log(new Date(), 'WS', 'pong not received, closing connection');
362
- this.close();
363
- }, this.pongTimeoutTime);
364
- }
365
- }, this.pingIntervalTime);
366
- }
367
- stopPinging() {
368
- if (this.pingInterval) {
369
- clearInterval(this.pingInterval);
370
- }
371
- if (this.pongTimeout) {
372
- clearTimeout(this.pongTimeout);
373
- }
374
- }
375
- convertDatesToUTC(obj) {
376
- for (let key in obj) {
377
- if (obj.hasOwnProperty(key)) {
378
- if (obj[key] instanceof Date) {
379
- // Convert Date to UTC ISO String
380
- obj[key] = obj[key].toISOString();
381
- }
382
- else if (typeof obj[key] === 'object' && obj[key] !== null) {
383
- // Recursively look for Date objects within arrays or nested objects
384
- this.convertDatesToUTC(obj[key]);
385
- }
386
- }
387
- }
388
- }
389
329
  send(...data) {
390
330
  if (this.ws && this.ws.readyState === this.ws.OPEN) {
391
- data.forEach(item => this.convertDatesToUTC(item));
392
331
  this.ws.send(JSON.stringify(data));
393
332
  return true;
394
333
  }
395
334
  else {
396
- this.log(new Date(), 'WS', 'send error', this.readyState);
335
+ this.log(new Date(), 'WS', 'send error', this.ws.readyState);
397
336
  this.reconnect();
398
337
  return false;
399
338
  }
400
339
  }
340
+ /**
341
+ * Returns boolean, whether websocket was FORCEFULLY closed.
342
+ */
401
343
  close() {
402
344
  if (this.ws) {
403
345
  this.log(new Date(), 'WS', 'closing socket');
@@ -431,9 +373,9 @@ class SocketService {
431
373
  }
432
374
  }
433
375
  }
434
- SocketService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SocketService, deps: [{ token: i1.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable });
435
- SocketService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SocketService });
436
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SocketService, decorators: [{
376
+ SocketService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SocketService, deps: [{ token: i1.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable });
377
+ SocketService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SocketService });
378
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SocketService, decorators: [{
437
379
  type: Injectable
438
380
  }], ctorParameters: function () { return [{ type: i1.LocalStorageService }]; } });
439
381
 
@@ -1050,9 +992,9 @@ class OfflineManagerService {
1050
992
  collection.drop();
1051
993
  }
1052
994
  }
1053
- OfflineManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: OfflineManagerService, deps: [{ token: i1.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable });
1054
- OfflineManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: OfflineManagerService });
1055
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: OfflineManagerService, decorators: [{
995
+ OfflineManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OfflineManagerService, deps: [{ token: i1.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable });
996
+ OfflineManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OfflineManagerService });
997
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OfflineManagerService, decorators: [{
1056
998
  type: Injectable
1057
999
  }], ctorParameters: function () { return [{ type: i1.LocalStorageService }]; } });
1058
1000
 
@@ -1064,9 +1006,7 @@ class AlertService {
1064
1006
  if (id) {
1065
1007
  this._toastr.clear(id);
1066
1008
  }
1067
- else {
1068
- this._toastr.clear();
1069
- }
1009
+ this._toastr.clear();
1070
1010
  }
1071
1011
  setAlert(type, message, timer = 5000) {
1072
1012
  if (type === 'success') {
@@ -1124,9 +1064,9 @@ class AlertService {
1124
1064
  }
1125
1065
  }
1126
1066
  }
1127
- AlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AlertService, deps: [{ token: i1$1.ToastrService }], target: i0.ɵɵFactoryTarget.Injectable });
1128
- AlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AlertService });
1129
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AlertService, decorators: [{
1067
+ AlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AlertService, deps: [{ token: i1$1.ToastrService }], target: i0.ɵɵFactoryTarget.Injectable });
1068
+ AlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AlertService });
1069
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AlertService, decorators: [{
1130
1070
  type: Injectable
1131
1071
  }], ctorParameters: function () { return [{ type: i1$1.ToastrService }]; } });
1132
1072
 
@@ -1154,7 +1094,48 @@ class SocketManagerService {
1154
1094
  this.socketStatus = socketStatus;
1155
1095
  });
1156
1096
  this._socket.onmessage = (event) => {
1157
- this.handleMessage(event);
1097
+ let resData = JSON.parse(event.data, dateReviver);
1098
+ if (resData.data === 'reloadWSCommand') {
1099
+ window.location.href = window.location.href + '?forceReload=true';
1100
+ }
1101
+ else if (resData.data === 'reconnectWSCommand') {
1102
+ this._socket.reconnect();
1103
+ }
1104
+ else if (resData.data === 'disconnectWSCommand') {
1105
+ this.closeSocket();
1106
+ }
1107
+ let offlineIndex = this._offlineUpdates.findIndex(a => a.messageId === resData.messageId);
1108
+ if (offlineIndex >= 0) {
1109
+ this._offline.removeDocument(this._offlineUpdates[offlineIndex].type, this._offlineUpdates[offlineIndex].id_offline_doc);
1110
+ this._offlineUpdates.splice(offlineIndex, 1);
1111
+ }
1112
+ if (resData.data !== 'ACK' && resData.data !== 'NACK') {
1113
+ if (this._cbArray.map(a => a.messageId).includes(resData.messageId)) {
1114
+ let index = this._cbArray.findIndex(a => a.messageId === resData.messageId);
1115
+ if (index >= 0) {
1116
+ clearInterval(this._cbArray[index].timerId);
1117
+ if (this._cbArray[index].cb) {
1118
+ this._cbArray[index].cb(resData.hasError ? resData.data : null, resData.hasError ? null : resData.data);
1119
+ this._cbArray[index].resolveFn(resData.hasError ? resData.data : null);
1120
+ }
1121
+ else {
1122
+ if (resData.hasError) {
1123
+ this._cbArray[index].rejectFn(resData.data);
1124
+ }
1125
+ else {
1126
+ this._cbArray[index].resolveFn(resData.data);
1127
+ }
1128
+ }
1129
+ this._cbArray.splice(index, 1);
1130
+ }
1131
+ }
1132
+ else if (this._subArray.map(a => a.messageId).includes(resData.messageId)) {
1133
+ let index = this._subArray.findIndex(a => a.messageId === resData.messageId);
1134
+ if (index >= 0) {
1135
+ this._subArray[index].subject.next(resData.data);
1136
+ }
1137
+ }
1138
+ }
1158
1139
  };
1159
1140
  this._socket.onopen = (event) => {
1160
1141
  this._connectionDelayTimeout = setTimeout(() => {
@@ -1184,9 +1165,11 @@ class SocketManagerService {
1184
1165
  if (collectionUpdates.length) {
1185
1166
  this.send('Offline Updates', new Date(), this.messageId++, 'offline', collectionUpdates.sort((a, b) => a.date.getTime() - b.date.getTime()));
1186
1167
  }
1187
- this._subArray.forEach(sub => {
1188
- this.send(sub.messageRoute, new Date(), sub.messageId, 'subscription', 'sub', sub.subscription, ...sub.parameters);
1189
- });
1168
+ if (this.initConnection) {
1169
+ this._subArray.forEach(sub => {
1170
+ this.send(sub.messageRoute, new Date(), sub.messageId, 'subscription', 'sub', sub.subscription, ...sub.parameters);
1171
+ });
1172
+ }
1190
1173
  this.initConnection = true;
1191
1174
  }, 1000);
1192
1175
  };
@@ -1207,11 +1190,18 @@ class SocketManagerService {
1207
1190
  if (!this._runningQueue) {
1208
1191
  if (this._sendQueue.length) {
1209
1192
  this._runningQueue = true;
1210
- if (this._socket && this._socket.ws) {
1211
- let nextSendItem = this._sendQueue[this._sendQueue.length - 1];
1212
- let sendStatus = this._socket.send(...nextSendItem);
1213
- if (sendStatus) {
1214
- this._sendQueue.pop();
1193
+ for (let i = this._sendQueue.length - 1; i >= 0; i--) {
1194
+ if (this._socket && this._socket.ws) {
1195
+ if (this.socketStatus === WebSocket.OPEN) {
1196
+ let nextSendItem = this._sendQueue.pop();
1197
+ this._socket.send(...nextSendItem);
1198
+ }
1199
+ else {
1200
+ break;
1201
+ }
1202
+ }
1203
+ else {
1204
+ break;
1215
1205
  }
1216
1206
  }
1217
1207
  this._runningQueue = false;
@@ -1220,49 +1210,6 @@ class SocketManagerService {
1220
1210
  }
1221
1211
  }, 25);
1222
1212
  }
1223
- handleMessage(resData) {
1224
- if (resData.data === 'reloadWSCommand') {
1225
- window.location.href = window.location.href + '?forceReload=true';
1226
- }
1227
- else if (resData.data === 'reconnectWSCommand') {
1228
- this._socket.reconnect();
1229
- }
1230
- else if (resData.data === 'disconnectWSCommand') {
1231
- this.closeSocket();
1232
- }
1233
- let offlineIndex = this._offlineUpdates.findIndex(a => a.messageId === resData.messageId);
1234
- if (offlineIndex >= 0) {
1235
- this._offline.removeDocument(this._offlineUpdates[offlineIndex].type, this._offlineUpdates[offlineIndex].id_offline_doc);
1236
- this._offlineUpdates.splice(offlineIndex, 1);
1237
- }
1238
- if (resData.data !== 'ACK' && resData.data !== 'NACK') {
1239
- if (this._cbArray.map(a => a.messageId).includes(resData.messageId)) {
1240
- let index = this._cbArray.findIndex(a => a.messageId === resData.messageId);
1241
- if (index >= 0) {
1242
- clearInterval(this._cbArray[index].timerId);
1243
- if (this._cbArray[index].cb) {
1244
- this._cbArray[index].cb(resData.hasError ? resData.data : null, resData.hasError ? null : resData.data);
1245
- this._cbArray[index].resolveFn(resData.hasError ? resData.data : null);
1246
- }
1247
- else {
1248
- if (resData.hasError) {
1249
- this._cbArray[index].rejectFn(resData.data);
1250
- }
1251
- else {
1252
- this._cbArray[index].resolveFn(resData.data);
1253
- }
1254
- }
1255
- this._cbArray.splice(index, 1);
1256
- }
1257
- }
1258
- else if (this._subArray.map(a => a.messageId).includes(resData.messageId)) {
1259
- let index = this._subArray.findIndex(a => a.messageId === resData.messageId);
1260
- if (index >= 0) {
1261
- this._subArray[index].subject.next(resData.data);
1262
- }
1263
- }
1264
- }
1265
- }
1266
1213
  openSocket(environment, protocols) {
1267
1214
  this._socket.openSocket(environment, protocols);
1268
1215
  }
@@ -1354,7 +1301,14 @@ class SocketManagerService {
1354
1301
  }
1355
1302
  send(...data) {
1356
1303
  if (data[3] === 'subscription') {
1357
- this._socket.send(...data);
1304
+ if (this.socketStatus === WebSocket.OPEN) {
1305
+ this._socket.send(...data);
1306
+ }
1307
+ else {
1308
+ if (!this._sendQueue.filter(a => JSON.stringify(a) === JSON.stringify(data)).length) {
1309
+ this._sendQueue.splice(0, 0, data);
1310
+ }
1311
+ }
1358
1312
  }
1359
1313
  else if (data[3] === 'method') {
1360
1314
  if (this.socketStatus === WebSocket.OPEN) {
@@ -1439,16 +1393,18 @@ class SocketManagerService {
1439
1393
  }
1440
1394
  }
1441
1395
  else if (data[3] === 'offline') {
1442
- this._socket.send(...data);
1396
+ if (this.socketStatus === WebSocket.OPEN) {
1397
+ this._socket.send(...data);
1398
+ }
1443
1399
  }
1444
1400
  }
1445
1401
  getStatus() {
1446
1402
  return this._socket.readyState$;
1447
1403
  }
1448
1404
  }
1449
- SocketManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SocketManagerService, deps: [{ token: SocketService }, { token: OfflineManagerService }, { token: AlertService }, { token: i1$2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
1450
- SocketManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SocketManagerService });
1451
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SocketManagerService, decorators: [{
1405
+ SocketManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SocketManagerService, deps: [{ token: SocketService }, { token: OfflineManagerService }, { token: AlertService }, { token: i1$2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
1406
+ SocketManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SocketManagerService });
1407
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SocketManagerService, decorators: [{
1452
1408
  type: Injectable
1453
1409
  }], ctorParameters: function () { return [{ type: SocketService }, { type: OfflineManagerService }, { type: AlertService }, { type: i1$2.Router }]; } });
1454
1410
 
@@ -1466,9 +1422,9 @@ class TokenManagerService {
1466
1422
  this._storage.remove(tokenKey);
1467
1423
  }
1468
1424
  }
1469
- TokenManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: TokenManagerService, deps: [{ token: i1.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable });
1470
- TokenManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: TokenManagerService });
1471
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: TokenManagerService, decorators: [{
1425
+ TokenManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TokenManagerService, deps: [{ token: i1.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable });
1426
+ TokenManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TokenManagerService });
1427
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TokenManagerService, decorators: [{
1472
1428
  type: Injectable
1473
1429
  }], ctorParameters: function () { return [{ type: i1.LocalStorageService }]; } });
1474
1430
 
@@ -1672,9 +1628,9 @@ class AccountManagerService {
1672
1628
  });
1673
1629
  }
1674
1630
  }
1675
- AccountManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AccountManagerService, deps: [{ token: i1$2.Router }, { token: SocketManagerService }, { token: TokenManagerService }, { token: i4.HttpClient }, { token: AlertService }, { token: OfflineManagerService }], target: i0.ɵɵFactoryTarget.Injectable });
1676
- AccountManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AccountManagerService });
1677
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AccountManagerService, decorators: [{
1631
+ AccountManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AccountManagerService, deps: [{ token: i1$2.Router }, { token: SocketManagerService }, { token: TokenManagerService }, { token: i4.HttpClient }, { token: AlertService }, { token: OfflineManagerService }], target: i0.ɵɵFactoryTarget.Injectable });
1632
+ AccountManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AccountManagerService });
1633
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AccountManagerService, decorators: [{
1678
1634
  type: Injectable
1679
1635
  }], ctorParameters: function () { return [{ type: i1$2.Router }, { type: SocketManagerService }, { type: TokenManagerService }, { type: i4.HttpClient }, { type: AlertService }, { type: OfflineManagerService }]; } });
1680
1636
 
@@ -1828,14 +1784,6 @@ class ValidationService {
1828
1784
  return { 'minLengthArray': { valid: false } };
1829
1785
  };
1830
1786
  }
1831
- maxLengthArray(max) {
1832
- return (c) => {
1833
- if (c.value && c.value.length <= max) {
1834
- return null;
1835
- }
1836
- return { 'maxLengthArray': { valid: false } };
1837
- };
1838
- }
1839
1787
  validIPAddress(c) {
1840
1788
  let regEx = /^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/;
1841
1789
  if (c.value === '' || c.value === null) {
@@ -1855,9 +1803,9 @@ class ValidationService {
1855
1803
  };
1856
1804
  }
1857
1805
  }
1858
- ValidationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ValidationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1859
- ValidationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ValidationService });
1860
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ValidationService, decorators: [{
1806
+ ValidationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ValidationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1807
+ ValidationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ValidationService });
1808
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ValidationService, decorators: [{
1861
1809
  type: Injectable
1862
1810
  }], ctorParameters: function () { return []; } });
1863
1811
 
@@ -1930,9 +1878,9 @@ class AwsService {
1930
1878
  });
1931
1879
  }
1932
1880
  }
1933
- AwsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AwsService, deps: [{ token: SocketManagerService }], target: i0.ɵɵFactoryTarget.Injectable });
1934
- AwsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AwsService });
1935
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AwsService, decorators: [{
1881
+ AwsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AwsService, deps: [{ token: SocketManagerService }], target: i0.ɵɵFactoryTarget.Injectable });
1882
+ AwsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AwsService });
1883
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AwsService, decorators: [{
1936
1884
  type: Injectable
1937
1885
  }], ctorParameters: function () { return [{ type: SocketManagerService }]; } });
1938
1886
 
@@ -1953,9 +1901,9 @@ class ProviderService {
1953
1901
  this._fb = _fb;
1954
1902
  }
1955
1903
  }
1956
- ProviderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ProviderService, deps: [{ token: CoreService }, { token: i1$2.Router }, { token: SocketManagerService }, { token: AccountManagerService }, { token: AlertService }, { token: ValidationService }, { token: AwsService }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Injectable });
1957
- ProviderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ProviderService });
1958
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ProviderService, decorators: [{
1904
+ ProviderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProviderService, deps: [{ token: CoreService }, { token: i1$2.Router }, { token: SocketManagerService }, { token: AccountManagerService }, { token: AlertService }, { token: ValidationService }, { token: AwsService }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Injectable });
1905
+ ProviderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProviderService });
1906
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProviderService, decorators: [{
1959
1907
  type: Injectable
1960
1908
  }], ctorParameters: function () { return [{ type: CoreService }, { type: i1$2.Router }, { type: SocketManagerService }, { type: AccountManagerService }, { type: AlertService }, { type: ValidationService }, { type: AwsService }, { type: i2.FormBuilder }]; } });
1961
1909
 
@@ -1970,8 +1918,8 @@ class DialogNotifyContent {
1970
1918
  }
1971
1919
  }
1972
1920
  }
1973
- DialogNotifyContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogNotifyContent, deps: [{ token: i1$3.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
1974
- DialogNotifyContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogNotifyContent, selector: "ng-component", inputs: { title: "title", body: "body" }, host: { listeners: { "document:keypress": "handleKeyboardEvent($event)" } }, ngImport: i0, template: `
1921
+ DialogNotifyContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogNotifyContent, deps: [{ token: i1$3.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
1922
+ DialogNotifyContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogNotifyContent, selector: "ng-component", inputs: { title: "title", body: "body" }, host: { listeners: { "document:keypress": "handleKeyboardEvent($event)" } }, ngImport: i0, template: `
1975
1923
  <div class="modal-header">
1976
1924
  <h4 class="modal-title"><i class="fa fa-info-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
1977
1925
  <button type="button" class="close" aria-label="Close" (click)="activeModal.dismiss('Cross click')">
@@ -1985,7 +1933,7 @@ DialogNotifyContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
1985
1933
  <button type="button" class="btn btn-secondary" (click)="activeModal.close('Close click')">Ok</button>
1986
1934
  </div>
1987
1935
  `, isInline: true });
1988
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogNotifyContent, decorators: [{
1936
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogNotifyContent, decorators: [{
1989
1937
  type: Component,
1990
1938
  args: [{
1991
1939
  template: `
@@ -2055,8 +2003,8 @@ class FormButtonComponent extends BaseComponent {
2055
2003
  return false;
2056
2004
  }
2057
2005
  }
2058
- FormButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FormButtonComponent, deps: [{ token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
2059
- FormButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: FormButtonComponent, selector: "form-button", inputs: { form: "form", disabled: "disabled", type: "type" }, providers: [ProviderService], viewQueries: [{ propertyName: "formButton", first: true, predicate: ["formButton"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
2006
+ FormButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormButtonComponent, deps: [{ token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
2007
+ FormButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: FormButtonComponent, selector: "form-button", inputs: { form: "form", disabled: "disabled", type: "type" }, providers: [ProviderService], viewQueries: [{ propertyName: "formButton", first: true, predicate: ["formButton"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
2060
2008
  <div style="position: relative; text-align: left; width: 100%">
2061
2009
  <ng-template #tipContent>
2062
2010
  <span style="font-weight: bold">Errors:<br></span>
@@ -2068,8 +2016,8 @@ FormButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
2068
2016
  <button [type]="type" [ngClass]="['btn', form && form.valid ? 'btn-success' : 'btn-danger']" [disabled]="!form || !form.valid || disabled" style="width: 200px" [autofocus]="true" #formButton>Submit</button>
2069
2017
  </div>
2070
2018
  </div>
2071
- `, isInline: true, dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "triggers", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }] });
2072
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FormButtonComponent, decorators: [{
2019
+ `, isInline: true, dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }] });
2020
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormButtonComponent, decorators: [{
2073
2021
  type: Component,
2074
2022
  args: [{
2075
2023
  providers: [ProviderService],
@@ -2108,9 +2056,9 @@ class FocusDirective {
2108
2056
  this.element.nativeElement.focus();
2109
2057
  }
2110
2058
  }
2111
- FocusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FocusDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2112
- FocusDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.9", type: FocusDirective, selector: "[focus]", inputs: { focus: "focus" }, usesOnChanges: true, ngImport: i0 });
2113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FocusDirective, decorators: [{
2059
+ FocusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FocusDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2060
+ FocusDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: FocusDirective, selector: "[focus]", inputs: { focus: "focus" }, usesOnChanges: true, ngImport: i0 });
2061
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FocusDirective, decorators: [{
2114
2062
  type: Directive,
2115
2063
  args: [{
2116
2064
  selector: '[focus]'
@@ -2171,8 +2119,8 @@ class DialogInputContent {
2171
2119
  return res;
2172
2120
  }
2173
2121
  }
2174
- DialogInputContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogInputContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2175
- DialogInputContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogInputContent, selector: "ng-component", inputs: { title: "title", inputFields: "inputFields" }, ngImport: i0, template: `
2122
+ DialogInputContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogInputContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2123
+ DialogInputContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogInputContent, selector: "ng-component", inputs: { title: "title", inputFields: "inputFields" }, ngImport: i0, template: `
2176
2124
  <form [formGroup]="formInput" novalidate (ngSubmit)="_activeModal.close(this.formInput.controls)">
2177
2125
  <div class="modal-header">
2178
2126
  <h4 class="modal-title"><i class="fa fa-plus-circle" style="color: green; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
@@ -2234,7 +2182,7 @@ DialogInputContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
2234
2182
  </div>
2235
2183
  </form>
2236
2184
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "component", type: i4$1.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "component", type: i4$1.NgOptionComponent, selector: "ng-option", inputs: ["value", "disabled"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: FocusDirective, selector: "[focus]", inputs: ["focus"] }] });
2237
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogInputContent, decorators: [{
2185
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogInputContent, decorators: [{
2238
2186
  type: Component,
2239
2187
  args: [{
2240
2188
  template: `
@@ -2317,8 +2265,8 @@ class DialogErrorContent {
2317
2265
  }
2318
2266
  }
2319
2267
  }
2320
- DialogErrorContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogErrorContent, deps: [{ token: i1$3.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
2321
- DialogErrorContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogErrorContent, selector: "ng-component", inputs: { title: "title", body: "body" }, host: { listeners: { "document:keypress": "handleKeyboardEvent($event)" } }, ngImport: i0, template: `
2268
+ DialogErrorContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogErrorContent, deps: [{ token: i1$3.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
2269
+ DialogErrorContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogErrorContent, selector: "ng-component", inputs: { title: "title", body: "body" }, host: { listeners: { "document:keypress": "handleKeyboardEvent($event)" } }, ngImport: i0, template: `
2322
2270
  <div class="modal-header">
2323
2271
  <h4 class="modal-title"><i class="fa fa-times-circle" style="color: red; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
2324
2272
  <button type="button" class="close" aria-label="Close" (click)="activeModal.dismiss('Cross click')">
@@ -2332,7 +2280,7 @@ DialogErrorContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
2332
2280
  <button type="button" class="btn btn-secondary" (click)="activeModal.close('Close click')">Ok</button>
2333
2281
  </div>
2334
2282
  `, isInline: true });
2335
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogErrorContent, decorators: [{
2283
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogErrorContent, decorators: [{
2336
2284
  type: Component,
2337
2285
  args: [{
2338
2286
  template: `
@@ -2370,8 +2318,8 @@ class DialogConfirmContent {
2370
2318
  }
2371
2319
  }
2372
2320
  }
2373
- DialogConfirmContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogConfirmContent, deps: [{ token: i1$3.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
2374
- DialogConfirmContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogConfirmContent, selector: "ng-component", inputs: { title: "title", body: "body", html: "html" }, host: { listeners: { "document:keypress": "handleKeyboardEvent($event)" } }, ngImport: i0, template: `
2321
+ DialogConfirmContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogConfirmContent, deps: [{ token: i1$3.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
2322
+ DialogConfirmContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogConfirmContent, selector: "ng-component", inputs: { title: "title", body: "body", html: "html" }, host: { listeners: { "document:keypress": "handleKeyboardEvent($event)" } }, ngImport: i0, template: `
2375
2323
  <div class="modal-header">
2376
2324
  <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.85em" aria-hidden="true"></i> {{ title }}</h4>
2377
2325
  <button type="button" class="close" aria-label="Close" (click)="activeModal.dismiss('Cross click')">
@@ -2387,7 +2335,7 @@ DialogConfirmContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
2387
2335
  <button type="button" class="btn btn-danger" (click)="activeModal.dismiss()">No</button>
2388
2336
  </div>
2389
2337
  `, isInline: true });
2390
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogConfirmContent, decorators: [{
2338
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogConfirmContent, decorators: [{
2391
2339
  type: Component,
2392
2340
  args: [{
2393
2341
  template: `
@@ -2472,8 +2420,8 @@ class DialogSelectDateTimeContent {
2472
2420
  this._activeModal.close(new Date(this.form.value.date.year, parseInt(this.form.value.date.month) - 1, this.form.value.date.day, this.form.value.time.hour, this.form.value.time.minute, this.form.value.time.second, 0));
2473
2421
  }
2474
2422
  }
2475
- DialogSelectDateTimeContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectDateTimeContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2476
- DialogSelectDateTimeContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogSelectDateTimeContent, selector: "ng-component", inputs: { title: "title", date: "date", showTime: "showTime" }, viewQueries: [{ propertyName: "close", first: true, predicate: ["close"], descendants: true }, { propertyName: "allElements", first: true, predicate: ["allElements"], descendants: true }], ngImport: i0, template: `
2423
+ DialogSelectDateTimeContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectDateTimeContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2424
+ DialogSelectDateTimeContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogSelectDateTimeContent, selector: "ng-component", inputs: { title: "title", date: "date", showTime: "showTime" }, viewQueries: [{ propertyName: "close", first: true, predicate: ["close"], descendants: true }, { propertyName: "allElements", first: true, predicate: ["allElements"], descendants: true }], ngImport: i0, template: `
2477
2425
  <style>
2478
2426
  table {
2479
2427
  width: 100%;
@@ -2524,8 +2472,8 @@ DialogSelectDateTimeContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.
2524
2472
  </div>
2525
2473
  </form>
2526
2474
  </div>
2527
- `, isInline: true, styles: ["\n\t\t \ttable {\n\t\t\t\twidth: 100%;\n\t\t\t\ttable-layout: fixed;\n\t\t\t}\n\n\t\t\ttr {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\ttd {\n\t\t\t\twidth: 100%;\n\t\t\t\ttext-align: center;\n\t\t\t}\n\t\t"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$3.NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["autoClose", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget", "weekdays", "disabled"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }, { kind: "component", type: i1$3.NgbTimepicker, selector: "ngb-timepicker", inputs: ["meridian", "spinners", "seconds", "hourStep", "minuteStep", "secondStep", "readonlyInputs", "size"] }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2528
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectDateTimeContent, decorators: [{
2475
+ `, isInline: true, styles: ["\n\t\t \ttable {\n\t\t\t\twidth: 100%;\n\t\t\t\ttable-layout: fixed;\n\t\t\t}\n\n\t\t\ttr {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\ttd {\n\t\t\t\twidth: 100%;\n\t\t\t\ttext-align: center;\n\t\t\t}\n\t\t"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$3.NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["autoClose", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "popperOptions", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget", "weekdays", "disabled"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }, { kind: "component", type: i1$3.NgbTimepicker, selector: "ngb-timepicker", inputs: ["meridian", "spinners", "seconds", "hourStep", "minuteStep", "secondStep", "readonlyInputs", "size"], exportAs: ["ngbTimepicker"] }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2476
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectDateTimeContent, decorators: [{
2529
2477
  type: Component,
2530
2478
  args: [{
2531
2479
  template: `
@@ -2692,8 +2640,8 @@ class DialogSelectDataLabelsContent {
2692
2640
  return this.dialogData;
2693
2641
  }
2694
2642
  }
2695
- DialogSelectDataLabelsContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectDataLabelsContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2696
- DialogSelectDataLabelsContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogSelectDataLabelsContent, selector: "ng-component", inputs: { title: "title", subtitle: "subtitle", data: "data", showArraySubData: "showArraySubData" }, ngImport: i0, template: `
2643
+ DialogSelectDataLabelsContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectDataLabelsContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2644
+ DialogSelectDataLabelsContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogSelectDataLabelsContent, selector: "ng-component", inputs: { title: "title", subtitle: "subtitle", data: "data", showArraySubData: "showArraySubData" }, ngImport: i0, template: `
2697
2645
  <div class="modal-header">
2698
2646
  <h4 class="modal-title"><i class="fa fa-question-circle" style="color: blue; font-size: 0.75em" aria-hidden="true"></i> {{ title }} - {{ subtitle }}</h4>
2699
2647
  <button type="button" class="close" aria-label="Close" (click)="_activeModal.dismiss()">
@@ -2729,7 +2677,7 @@ DialogSelectDataLabelsContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
2729
2677
  <button type="button" class="btn btn-secondary" (click)="_activeModal.dismiss()">Cancel</button>
2730
2678
  </div>
2731
2679
  `, isInline: true, dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2732
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectDataLabelsContent, decorators: [{
2680
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectDataLabelsContent, decorators: [{
2733
2681
  type: Component,
2734
2682
  args: [{
2735
2683
  template: `
@@ -2792,9 +2740,9 @@ class ResizeService {
2792
2740
  this.resizeSubject.next(event.target);
2793
2741
  }
2794
2742
  }
2795
- ResizeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ResizeService, deps: [{ token: i1$4.EventManager }], target: i0.ɵɵFactoryTarget.Injectable });
2796
- ResizeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ResizeService });
2797
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ResizeService, decorators: [{
2743
+ ResizeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ResizeService, deps: [{ token: i1$4.EventManager }], target: i0.ɵɵFactoryTarget.Injectable });
2744
+ ResizeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ResizeService });
2745
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ResizeService, decorators: [{
2798
2746
  type: Injectable
2799
2747
  }], ctorParameters: function () { return [{ type: i1$4.EventManager }]; } });
2800
2748
 
@@ -2820,9 +2768,9 @@ class ResponsiveButtonGroupComponent extends BaseComponent {
2820
2768
  this.windowSizeSubscription.unsubscribe();
2821
2769
  }
2822
2770
  }
2823
- ResponsiveButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ResponsiveButtonGroupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: ResizeService }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
2824
- ResponsiveButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: { collapseSize: "collapseSize" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n\t@media screen and (min-width: 900px) {\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: inline-flex !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup button {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup a {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\t}\n\n\t@media screen and (max-width: 900px) {\n\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: inherit !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup button {\n\t\t\tmargin-top: 5px !important;\n\t\t\twidth: 100% !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup a {\n\t\t\tmargin-top: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n</style>\n\n<div [ngClass]=\"windowSize <= collapseSize ? ['btn-group-vertical', 'xsBtnGroup'] : ['btn-group', 'lgBtnGroup']\">\n\t<ng-content></ng-content>\n</div>\n", styles: ["\n\t@media screen and (min-width: 900px) {\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: inline-flex !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup button {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup a {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\t}\n\n\t@media screen and (max-width: 900px) {\n\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: inherit !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup button {\n\t\t\tmargin-top: 5px !important;\n\t\t\twidth: 100% !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup a {\n\t\t\tmargin-top: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2825
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ResponsiveButtonGroupComponent, decorators: [{
2771
+ ResponsiveButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ResponsiveButtonGroupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: ResizeService }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
2772
+ ResponsiveButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: { collapseSize: "collapseSize" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n\t@media screen and (min-width: 900px) {\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: inline-flex !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup button {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup a {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\t}\n\n\t@media screen and (max-width: 900px) {\n\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: inherit !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup button {\n\t\t\tmargin-top: 5px !important;\n\t\t\twidth: 100% !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup a {\n\t\t\tmargin-top: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n</style>\n\n<div [ngClass]=\"windowSize <= collapseSize ? ['btn-group-vertical', 'xsBtnGroup'] : ['btn-group', 'lgBtnGroup']\">\n\t<ng-content></ng-content>\n</div>\n", styles: ["\n\t@media screen and (min-width: 900px) {\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: inline-flex !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup button {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup a {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\t}\n\n\t@media screen and (max-width: 900px) {\n\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: inherit !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup button {\n\t\t\tmargin-top: 5px !important;\n\t\t\twidth: 100% !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup a {\n\t\t\tmargin-top: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2773
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ResponsiveButtonGroupComponent, decorators: [{
2826
2774
  type: Component,
2827
2775
  args: [{ providers: [ProviderService], selector: 'responsive-button-group', template: "<style>\n\t@media screen and (min-width: 900px) {\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: inline-flex !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup button {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup a {\n\t\t\tmargin-left: 5px !important;\n\t\t}\n\t}\n\n\t@media screen and (max-width: 900px) {\n\n\t\t:host /deep/ .xsBtnGroup {\n\t\t\tdisplay: inherit !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup button {\n\t\t\tmargin-top: 5px !important;\n\t\t\twidth: 100% !important;\n\t\t}\n\n\t\t:host /deep/ .xsBtnGroup a {\n\t\t\tmargin-top: 5px !important;\n\t\t}\n\n\t\t:host /deep/ .lgBtnGroup {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n</style>\n\n<div [ngClass]=\"windowSize <= collapseSize ? ['btn-group-vertical', 'xsBtnGroup'] : ['btn-group', 'lgBtnGroup']\">\n\t<ng-content></ng-content>\n</div>\n" }]
2828
2776
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: ResizeService }, { type: ProviderService }]; }, propDecorators: { collapseSize: [{
@@ -2864,8 +2812,8 @@ class DialogLoginContent {
2864
2812
  });
2865
2813
  }
2866
2814
  }
2867
- DialogLoginContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogLoginContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2868
- DialogLoginContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogLoginContent, selector: "ng-component", inputs: { msAllowed: "msAllowed", showLoginText: "showLoginText" }, ngImport: i0, template: `
2815
+ DialogLoginContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogLoginContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2816
+ DialogLoginContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogLoginContent, selector: "ng-component", inputs: { msAllowed: "msAllowed", showLoginText: "showLoginText" }, ngImport: i0, template: `
2869
2817
  <style>
2870
2818
  collapse-table {
2871
2819
  width: 100%;
@@ -3013,7 +2961,7 @@ DialogLoginContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
3013
2961
  </div>
3014
2962
  </form>
3015
2963
  `, isInline: true, styles: ["\n\t\t\tcollapse-table {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {\n\t\t\t\tcolor: #0b4499;\n\t\t\t}\n\t\t\t.navbar-light .navbar-nav .nav-link {\n\t\t\t\tcolor:#333;\n\t\t\t}\n\t\t\ta.nav-link.loginreg {\n\t\t\t\tbackground-color: #0b4499;\n\t\t\t\tcolor: #fff !important;\n\t\t\t\tborder-radius: 40px;\n\t\t\t}\n\t\t\ta.nav-link.loginreg:hover {\n\t\t\t\tbackground: #1668e2;\n\t\t\t}\n\t\t\t.nav-link {\n\t\t\t\tcolor: #333333;\n\t\t\t\tfont-size: 150%\n\t\t\t}\n\t\t\t.nav-item a.nav-link.active {\n\t\t\t\tcolor: #0b4499;\n\t\t\t}\n\t\t\t.contactimg>img{\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t.log-box {\n\t\t\t\tpadding-top: 26px;\n\t\t\t\tpadding-bottom: 26px;\n\t\t\t}\n\t\t\t.loginform .form-control, .register-form .form-control {\n\t\t\t\tcolor: #000;\n\t\t\t\theight: 52px;\n\t\t\t}\n\t\t\t.loginform {\n\t\t\t\tmargin-top: 35px;\n\t\t\t}\n\t\t\t.loginform label {\n\t\t\t\tfont-size: 18px;\n\t\t\t\tfont-weight: 600;\n\t\t\t}\n\n\t\t\t.loginbtn {\n\t\t\t\tbackground: #0b4499;\n\t\t\t\twidth: 100%;\n\t\t\t\tmargin-top: 44px;\n\t\t\t\theight: 52px;\n\t\t\t\tfont-size: 22px;\n\t\t\t\tborder-radius: 2px;\n\t\t\t\tcolor: #fff !important;\n\t\t\t}\n\n\t\t\t.login365btn {\n\t\t\t\tbackground: orange;\n\t\t\t\twidth: 100%;\n\t\t\t\tmargin-top: 44px;\n\t\t\t\theight: 52px;\n\t\t\t\tfont-size: 22px;\n\t\t\t\tborder-radius: 2px;\n\t\t\t\tcolor: #fff !important;\n\t\t\t}\n\n\t\t\t.contactimg {\n\t\t\t\tposition: relative;\n\t\t\t}\n\t\t\t.login-logo {\n\t\t\t\tmargin-bottom: 20px;\n\t\t\t}\n\n\t\t\t.textbox {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 50%;\n\t\t\t\tcolor: #fff;\n\t\t\t\tpadding: 40px;\n\t\t\t\ttransform: translate(0%, -50%);\n\t\t\t\ttext-align: center;\n\t\t\t}\n\t\t\t.sign-btn {\n\t\t\t\tbackground: #0b4499;\n\t\t\t\twidth: 100%;\n\t\t\t\tmargin-top: 14px;\n\t\t\t\theight: 52px;\n\t\t\t\tfont-size: 22px;\n\t\t\t\tborder-radius: 2px;\n\t\t\t\tcolor: #fff !important;\n\t\t\t}\n\n\t\t\tbutton.btn.sign-btn:hover {\n\t\t\t\tbackground: #1668e2;\n\t\t\t}\n\t\t"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: FocusDirective, selector: "[focus]", inputs: ["focus"] }] });
3016
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogLoginContent, decorators: [{
2964
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogLoginContent, decorators: [{
3017
2965
  type: Component,
3018
2966
  args: [{
3019
2967
  template: `
@@ -3187,8 +3135,8 @@ class DialogRegisterContent {
3187
3135
  });
3188
3136
  }
3189
3137
  }
3190
- DialogRegisterContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogRegisterContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
3191
- DialogRegisterContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogRegisterContent, selector: "ng-component", ngImport: i0, template: `
3138
+ DialogRegisterContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogRegisterContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
3139
+ DialogRegisterContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogRegisterContent, selector: "ng-component", ngImport: i0, template: `
3192
3140
  <style>
3193
3141
  collapse-table {
3194
3142
  width: 100%;
@@ -3337,7 +3285,7 @@ DialogRegisterContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
3337
3285
  </div>
3338
3286
  </form>
3339
3287
  `, isInline: true, styles: ["\n\t\t\tcollapse-table {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {\n\t\t\t\tcolor: #0b4499;\n\t\t\t}\n\t\t\t.navbar-light .navbar-nav .nav-link {\n\t\t\t\tcolor:#333;\n\t\t\t}\n\t\t\ta.nav-link.loginreg {\n\t\t\t\tbackground-color: #0b4499;\n\t\t\t\tcolor: #fff !important;\n\t\t\t\tborder-radius: 40px;\n\t\t\t}\n\t\t\ta.nav-link.loginreg:hover {\n\t\t\t\tbackground: #1668e2;\n\t\t\t}\n\t\t\t.nav-link {\n\t\t\t\tcolor: #333333;\n\t\t\t\tfont-size: 150%\n\t\t\t}\n\t\t\t.nav-item a.nav-link.active {\n\t\t\t\tcolor: #0b4499;\n\t\t\t}\n\t\t\t.contactimg>img{\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t.log-box {\n\t\t\t\tpadding-top: 26px;\n\t\t\t\tpadding-bottom: 26px;\n\t\t\t}\n\t\t\t.loginform .form-control, .register-form .form-control {\n\t\t\t\tcolor: #000;\n\t\t\t\theight: 52px;\n\t\t\t}\n\t\t\t.loginform {\n\t\t\t\tmargin-top: 35px;\n\t\t\t}\n\t\t\t.loginform label {\n\t\t\t\tfont-size: 18px;\n\t\t\t\tfont-weight: 600;\n\t\t\t}\n\n\t\t\t.loginbtn {\n\t\t\t\tbackground: #0b4499;\n\t\t\t\twidth: 100%;\n\t\t\t\tmargin-top: 44px;\n\t\t\t\theight: 52px;\n\t\t\t\tfont-size: 22px;\n\t\t\t\tborder-radius: 2px;\n\t\t\t\tcolor: #fff !important;\n\t\t\t}\n\n\t\t\t.contactimg {\n\t\t\t\tposition: relative;\n\t\t\t}\n\t\t\t.login-logo {\n\t\t\t\tmargin-bottom: 20px;\n\t\t\t}\n\n\t\t\t.textbox {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 50%;\n\t\t\t\tcolor: #fff;\n\t\t\t\tpadding: 40px;\n\t\t\t\ttransform: translate(0%, -50%);\n\t\t\t\ttext-align: center;\n\t\t\t}\n\t\t\t.sign-btn {\n\t\t\t\tbackground: #0b4499;\n\t\t\t\twidth: 100%;\n\t\t\t\tmargin-top: 14px;\n\t\t\t\theight: 52px;\n\t\t\t\tfont-size: 22px;\n\t\t\t\tborder-radius: 2px;\n\t\t\t\tcolor: #fff !important;\n\t\t\t}\n\n\t\t\tbutton.btn.sign-btn:hover {\n\t\t\t\tbackground: #1668e2;\n\t\t\t}\n\t\t"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: FocusDirective, selector: "[focus]", inputs: ["focus"] }] });
3340
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogRegisterContent, decorators: [{
3288
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogRegisterContent, decorators: [{
3341
3289
  type: Component,
3342
3290
  args: [{
3343
3291
  template: `
@@ -3570,8 +3518,8 @@ class DialogSelectWithButtonsURLContent {
3570
3518
  this._activeModal.close();
3571
3519
  }
3572
3520
  }
3573
- DialogSelectWithButtonsURLContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectWithButtonsURLContent, deps: [{ token: i1$3.NgbActiveModal }, { token: AccountManagerService }], target: i0.ɵɵFactoryTarget.Component });
3574
- DialogSelectWithButtonsURLContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogSelectWithButtonsURLContent, selector: "ng-component", inputs: { url: "url" }, viewQueries: [{ propertyName: "close", first: true, predicate: ["close"], descendants: true }, { propertyName: "allElements", first: true, predicate: ["allElements"], descendants: true }], ngImport: i0, template: `
3521
+ DialogSelectWithButtonsURLContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectWithButtonsURLContent, deps: [{ token: i1$3.NgbActiveModal }, { token: AccountManagerService }], target: i0.ɵɵFactoryTarget.Component });
3522
+ DialogSelectWithButtonsURLContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogSelectWithButtonsURLContent, selector: "ng-component", inputs: { url: "url" }, viewQueries: [{ propertyName: "close", first: true, predicate: ["close"], descendants: true }, { propertyName: "allElements", first: true, predicate: ["allElements"], descendants: true }], ngImport: i0, template: `
3575
3523
  <style>
3576
3524
  collapse-table tr:hover {
3577
3525
  background-color: lightblue;
@@ -3602,7 +3550,7 @@ DialogSelectWithButtonsURLContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion
3602
3550
  </div>
3603
3551
  </div>
3604
3552
  `, isInline: true, styles: ["\n\t\t\tcollapse-table tr:hover {\n\t\t\t\tbackground-color: lightblue;\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t.selected {\n\t\t\t\tbackground-color: lightblue;\n\t\t\t}\n\n\t\t\tcollapse-table {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
3605
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectWithButtonsURLContent, decorators: [{
3553
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectWithButtonsURLContent, decorators: [{
3606
3554
  type: Component,
3607
3555
  args: [{
3608
3556
  template: `
@@ -3702,11 +3650,11 @@ class CollapseTableComponent {
3702
3650
  return this._account.getUser() ? this._account.getUser().settings.table_color : '#3b3ee3';
3703
3651
  }
3704
3652
  }
3705
- CollapseTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CollapseTableComponent, deps: [{ token: ResizeService }, { token: AccountManagerService }], target: i0.ɵɵFactoryTarget.Component });
3706
- CollapseTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: CollapseTableComponent, selector: "collapse-table", inputs: { collapseSize: "collapseSize", tableFixed: "tableFixed", headerFixed: "headerFixed", secondaryColor: "secondaryColor", tertiaryColor: "tertiaryColor" }, ngImport: i0, template: "<style>\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: white;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n }\n\n\t:host /deep/ .collapseTable {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n /*table-layout: fixed;*/ \n }\n :host /deep/ .collapseTable tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable th, :host /deep/ .collapseTable td {\n padding: 0.625em;\n text-align: center;\n vertical-align: middle;\n }\n :host /deep/ .collapseTable th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-sec {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-sec tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-sec th, :host /deep/ .collapseTable-sec td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-sec th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-tert {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-tert tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-tert th, :host /deep/ .collapseTable-tert td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-tert th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n }\n \n .fixed {\n table-layout: fixed;\n }\n\n :host /deep/ .headerFixed thead, :host /deep/ .headerFixed tbody tr {\n display:table;\n width:100%;\n table-layout:fixed;\n }\n\n :host /deep/ .collapseTable,\n :host /deep/ .collapseTable-sec,\n :host /deep/ .collapseTable-tert {\n box-shadow: 0 0 15px rgba(0,0,0,0.25); \n }\n \n :host /deep/ .collapseTable > thead:first-of-type > tr:first-child > th:first-child,\n :host /deep/ .collapseTable-sec > thead:first-of-type > tr:first-child > th:first-child,\n :host /deep/ .collapseTable-tert > thead:first-of-type > tr:first-child > th:first-child {\n border-top-left-radius: 10px;\n }\n\n :host /deep/ .collapseTable > thead:first-of-type > tr:first-child > th:last-child,\n :host /deep/ .collapseTable-sec > thead:first-of-type > tr:first-child > th:last-child,\n :host /deep/ .collapseTable-tert > thead:first-of-type > tr:first-child > th:last-child {\n border-top-right-radius: 10px;\n }\n\n :host /deep/ .collapseTable > tbody:last-of-type > tr:last-child > td:first-child,\n :host /deep/ .collapseTable-sec > tbody:last-of-type > tr:last-child > td:first-child,\n :host /deep/ .collapseTable-tert > tbody:last-of-type > tr:last-child > td:first-child {\n border-bottom-left-radius: 10px;\n }\n\n :host /deep/ .collapseTable > tbody:last-of-type > tr:last-child > td:last-child,\n :host /deep/ .collapseTable-sec > tbody:last-of-type > tr:last-child > td:last-child,\n :host /deep/ .collapseTable-tert > tbody:last-of-type > tr:last-child > td:last-child {\n border-bottom-right-radius: 10px;\n }\n\n .hide {\n display: none;\n }\n</style>\n\n<div class=\"table-responsive-xl\">\n <table [ngClass]=\"getCollapseClass()\" style=\"border: none\" cellspacing=\"0\" cellpadding=\"0\">\n <ng-content></ng-content>\n </table>\n</div>", styles: ["\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: white;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n }\n\n\t:host /deep/ .collapseTable {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n /*table-layout: fixed;*/ \n }\n :host /deep/ .collapseTable tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable th, :host /deep/ .collapseTable td {\n padding: 0.625em;\n text-align: center;\n vertical-align: middle;\n }\n :host /deep/ .collapseTable th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-sec {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-sec tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-sec th, :host /deep/ .collapseTable-sec td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-sec th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-tert {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-tert tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-tert th, :host /deep/ .collapseTable-tert td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-tert th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n }\n \n .fixed {\n table-layout: fixed;\n }\n\n :host /deep/ .headerFixed thead, :host /deep/ .headerFixed tbody tr {\n display:table;\n width:100%;\n table-layout:fixed;\n }\n\n :host /deep/ .collapseTable,\n :host /deep/ .collapseTable-sec,\n :host /deep/ .collapseTable-tert {\n box-shadow: 0 0 15px rgba(0,0,0,0.25); \n }\n \n :host /deep/ .collapseTable > thead:first-of-type > tr:first-child > th:first-child,\n :host /deep/ .collapseTable-sec > thead:first-of-type > tr:first-child > th:first-child,\n :host /deep/ .collapseTable-tert > thead:first-of-type > tr:first-child > th:first-child {\n border-top-left-radius: 10px;\n }\n\n :host /deep/ .collapseTable > thead:first-of-type > tr:first-child > th:last-child,\n :host /deep/ .collapseTable-sec > thead:first-of-type > tr:first-child > th:last-child,\n :host /deep/ .collapseTable-tert > thead:first-of-type > tr:first-child > th:last-child {\n border-top-right-radius: 10px;\n }\n\n :host /deep/ .collapseTable > tbody:last-of-type > tr:last-child > td:first-child,\n :host /deep/ .collapseTable-sec > tbody:last-of-type > tr:last-child > td:first-child,\n :host /deep/ .collapseTable-tert > tbody:last-of-type > tr:last-child > td:first-child {\n border-bottom-left-radius: 10px;\n }\n\n :host /deep/ .collapseTable > tbody:last-of-type > tr:last-child > td:last-child,\n :host /deep/ .collapseTable-sec > tbody:last-of-type > tr:last-child > td:last-child,\n :host /deep/ .collapseTable-tert > tbody:last-of-type > tr:last-child > td:last-child {\n border-bottom-right-radius: 10px;\n }\n\n .hide {\n display: none;\n }\n"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3707
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CollapseTableComponent, decorators: [{
3653
+ CollapseTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CollapseTableComponent, deps: [{ token: ResizeService }, { token: AccountManagerService }], target: i0.ɵɵFactoryTarget.Component });
3654
+ CollapseTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: CollapseTableComponent, selector: "collapse-table", inputs: { collapseSize: "collapseSize", tableFixed: "tableFixed", headerFixed: "headerFixed", secondaryColor: "secondaryColor", tertiaryColor: "tertiaryColor" }, ngImport: i0, template: "<style>\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: white;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n }\n\n\t:host /deep/ .collapseTable {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n /*table-layout: fixed;*/ \n }\n :host /deep/ .collapseTable tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable th, :host /deep/ .collapseTable td {\n padding: 0.625em;\n text-align: center;\n vertical-align: middle;\n }\n :host /deep/ .collapseTable th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-sec {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-sec tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-sec th, :host /deep/ .collapseTable-sec td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-sec th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-tert {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-tert tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-tert th, :host /deep/ .collapseTable-tert td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-tert th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n }\n \n .fixed {\n table-layout: fixed;\n }\n\n :host /deep/ .headerFixed thead, :host /deep/ .headerFixed tbody tr {\n display:table;\n width:100%;\n table-layout:fixed;\n }\n\n .hide {\n display: none;\n }\n</style>\n\n<div class=\"table-responsive-xl\">\n <table [ngClass]=\"getCollapseClass()\" [style.border]=\"secondaryColor || tertiaryColor ? '3px solid black' : 'none'\" cellspacing=\"0\" cellpadding=\"0\">\n <ng-content></ng-content>\n </table>\n</div>", styles: ["\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: white;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n }\n\n\t:host /deep/ .collapseTable {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n /*table-layout: fixed;*/ \n }\n :host /deep/ .collapseTable tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable th, :host /deep/ .collapseTable td {\n padding: 0.625em;\n text-align: center;\n vertical-align: middle;\n }\n :host /deep/ .collapseTable th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-sec {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-sec tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-sec th, :host /deep/ .collapseTable-sec td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-sec th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-tert {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-tert tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-tert th, :host /deep/ .collapseTable-tert td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-tert th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n }\n \n .fixed {\n table-layout: fixed;\n }\n\n :host /deep/ .headerFixed thead, :host /deep/ .headerFixed tbody tr {\n display:table;\n width:100%;\n table-layout:fixed;\n }\n\n .hide {\n display: none;\n }\n"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3655
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CollapseTableComponent, decorators: [{
3708
3656
  type: Component,
3709
- args: [{ selector: 'collapse-table', template: "<style>\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: white;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n }\n\n\t:host /deep/ .collapseTable {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n /*table-layout: fixed;*/ \n }\n :host /deep/ .collapseTable tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable th, :host /deep/ .collapseTable td {\n padding: 0.625em;\n text-align: center;\n vertical-align: middle;\n }\n :host /deep/ .collapseTable th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-sec {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-sec tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-sec th, :host /deep/ .collapseTable-sec td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-sec th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-tert {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-tert tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-tert th, :host /deep/ .collapseTable-tert td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-tert th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n }\n \n .fixed {\n table-layout: fixed;\n }\n\n :host /deep/ .headerFixed thead, :host /deep/ .headerFixed tbody tr {\n display:table;\n width:100%;\n table-layout:fixed;\n }\n\n :host /deep/ .collapseTable,\n :host /deep/ .collapseTable-sec,\n :host /deep/ .collapseTable-tert {\n box-shadow: 0 0 15px rgba(0,0,0,0.25); \n }\n \n :host /deep/ .collapseTable > thead:first-of-type > tr:first-child > th:first-child,\n :host /deep/ .collapseTable-sec > thead:first-of-type > tr:first-child > th:first-child,\n :host /deep/ .collapseTable-tert > thead:first-of-type > tr:first-child > th:first-child {\n border-top-left-radius: 10px;\n }\n\n :host /deep/ .collapseTable > thead:first-of-type > tr:first-child > th:last-child,\n :host /deep/ .collapseTable-sec > thead:first-of-type > tr:first-child > th:last-child,\n :host /deep/ .collapseTable-tert > thead:first-of-type > tr:first-child > th:last-child {\n border-top-right-radius: 10px;\n }\n\n :host /deep/ .collapseTable > tbody:last-of-type > tr:last-child > td:first-child,\n :host /deep/ .collapseTable-sec > tbody:last-of-type > tr:last-child > td:first-child,\n :host /deep/ .collapseTable-tert > tbody:last-of-type > tr:last-child > td:first-child {\n border-bottom-left-radius: 10px;\n }\n\n :host /deep/ .collapseTable > tbody:last-of-type > tr:last-child > td:last-child,\n :host /deep/ .collapseTable-sec > tbody:last-of-type > tr:last-child > td:last-child,\n :host /deep/ .collapseTable-tert > tbody:last-of-type > tr:last-child > td:last-child {\n border-bottom-right-radius: 10px;\n }\n\n .hide {\n display: none;\n }\n</style>\n\n<div class=\"table-responsive-xl\">\n <table [ngClass]=\"getCollapseClass()\" style=\"border: none\" cellspacing=\"0\" cellpadding=\"0\">\n <ng-content></ng-content>\n </table>\n</div>" }]
3657
+ args: [{ selector: 'collapse-table', template: "<style>\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: white;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n }\n\n\t:host /deep/ .collapseTable {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n /*table-layout: fixed;*/ \n }\n :host /deep/ .collapseTable tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable th, :host /deep/ .collapseTable td {\n padding: 0.625em;\n text-align: center;\n vertical-align: middle;\n }\n :host /deep/ .collapseTable th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-sec {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-sec tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-sec th, :host /deep/ .collapseTable-sec td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-sec th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n } \n :host /deep/ .collapseTable-tert {\n border: 1px solid #ccc;\n margin: 0;\n padding: 0;\n width: 100%;\n }\n :host /deep/ .collapseTable-tert tr {\n border: 1px solid #ddd;\n padding: 0.35em;\n }\n :host /deep/ .collapseTable-tert th, :host /deep/ .collapseTable-tert td {\n padding: 0.625em;\n text-align: center;\n }\n :host /deep/ .collapseTable-tert th {\n letter-spacing: 0.1em;\n text-transform: uppercase;\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n position: sticky;\n z-index: 10;\n top: 0;\n }\n \n .fixed {\n table-layout: fixed;\n }\n\n :host /deep/ .headerFixed thead, :host /deep/ .headerFixed tbody tr {\n display:table;\n width:100%;\n table-layout:fixed;\n }\n\n .hide {\n display: none;\n }\n</style>\n\n<div class=\"table-responsive-xl\">\n <table [ngClass]=\"getCollapseClass()\" [style.border]=\"secondaryColor || tertiaryColor ? '3px solid black' : 'none'\" cellspacing=\"0\" cellpadding=\"0\">\n <ng-content></ng-content>\n </table>\n</div>" }]
3710
3658
  }], ctorParameters: function () { return [{ type: ResizeService }, { type: AccountManagerService }]; }, propDecorators: { collapseSize: [{
3711
3659
  type: Input
3712
3660
  }], tableFixed: [{
@@ -3794,8 +3742,8 @@ class DialogSelectArrayObjsContent {
3794
3742
  }
3795
3743
  }
3796
3744
  }
3797
- DialogSelectArrayObjsContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectArrayObjsContent, deps: [{ token: i1$3.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
3798
- DialogSelectArrayObjsContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogSelectArrayObjsContent, selector: "ng-component", inputs: { title: "title", objects: "objects", multiple: "multiple", allowNone: "allowNone" }, viewQueries: [{ propertyName: "close", first: true, predicate: ["close"], descendants: true }, { propertyName: "allElements", first: true, predicate: ["allElements"], descendants: true }], ngImport: i0, template: `
3745
+ DialogSelectArrayObjsContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectArrayObjsContent, deps: [{ token: i1$3.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
3746
+ DialogSelectArrayObjsContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogSelectArrayObjsContent, selector: "ng-component", inputs: { title: "title", objects: "objects", multiple: "multiple", allowNone: "allowNone" }, viewQueries: [{ propertyName: "close", first: true, predicate: ["close"], descendants: true }, { propertyName: "allElements", first: true, predicate: ["allElements"], descendants: true }], ngImport: i0, template: `
3799
3747
  <style>
3800
3748
  collapse-table tr:hover {
3801
3749
  background-color: lightblue;
@@ -3844,7 +3792,7 @@ DialogSelectArrayObjsContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14
3844
3792
  </div>
3845
3793
  </div>
3846
3794
  `, isInline: true, styles: ["\n\t\t\tcollapse-table tr:hover {\n\t\t\t\tbackground-color: lightblue;\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t.selected {\n\t\t\t\tbackground-color: lightblue;\n\t\t\t}\n\n\t\t\tcollapse-table {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t"], dependencies: [{ kind: "component", type: CollapseTableComponent, selector: "collapse-table", inputs: ["collapseSize", "tableFixed", "headerFixed", "secondaryColor", "tertiaryColor"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3847
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectArrayObjsContent, decorators: [{
3795
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectArrayObjsContent, decorators: [{
3848
3796
  type: Component,
3849
3797
  args: [{
3850
3798
  template: `
@@ -4033,8 +3981,8 @@ class DialogSelectArrayContent {
4033
3981
  this.selectIndexes = [];
4034
3982
  }
4035
3983
  }
4036
- DialogSelectArrayContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectArrayContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
4037
- DialogSelectArrayContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DialogSelectArrayContent, selector: "ng-component", inputs: { title: "title", array: "array", multiple: "multiple", selectedIndexes: "selectedIndexes" }, viewQueries: [{ propertyName: "close", first: true, predicate: ["close"], descendants: true }, { propertyName: "allElements", first: true, predicate: ["allElements"], descendants: true }], ngImport: i0, template: `
3984
+ DialogSelectArrayContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectArrayContent, deps: [{ token: i1$3.NgbActiveModal }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
3985
+ DialogSelectArrayContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogSelectArrayContent, selector: "ng-component", inputs: { title: "title", array: "array", multiple: "multiple", selectedIndexes: "selectedIndexes" }, viewQueries: [{ propertyName: "close", first: true, predicate: ["close"], descendants: true }, { propertyName: "allElements", first: true, predicate: ["allElements"], descendants: true }], ngImport: i0, template: `
4038
3986
  <style>
4039
3987
  collapse-table tr:hover {
4040
3988
  background-color: lightblue;
@@ -4111,7 +4059,7 @@ DialogSelectArrayContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0
4111
4059
  </div>
4112
4060
  </div>
4113
4061
  `, isInline: true, styles: ["\n\t\t\tcollapse-table tr:hover {\n\t\t\t\tbackground-color: lightblue;\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t.selected {\n\t\t\t\tbackground-color: lightblue;\n\t\t\t}\n\n\t\t\tcollapse-table {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t"], dependencies: [{ kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CollapseTableComponent, selector: "collapse-table", inputs: ["collapseSize", "tableFixed", "headerFixed", "secondaryColor", "tertiaryColor"] }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "component", type: i4$1.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "component", type: i4$1.NgOptionComponent, selector: "ng-option", inputs: ["value", "disabled"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogSelectArrayContent, decorators: [{
4062
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogSelectArrayContent, decorators: [{
4115
4063
  type: Component,
4116
4064
  args: [{
4117
4065
  template: `
@@ -4285,9 +4233,9 @@ class DialogService {
4285
4233
  return modalRef.result;
4286
4234
  }
4287
4235
  }
4288
- DialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogService, deps: [{ token: i1$3.NgbModal }], target: i0.ɵɵFactoryTarget.Injectable });
4289
- DialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogService });
4290
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DialogService, decorators: [{
4236
+ DialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogService, deps: [{ token: i1$3.NgbModal }], target: i0.ɵɵFactoryTarget.Injectable });
4237
+ DialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogService });
4238
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogService, decorators: [{
4291
4239
  type: Injectable
4292
4240
  }], ctorParameters: function () { return [{ type: i1$3.NgbModal }]; } });
4293
4241
 
@@ -4367,8 +4315,8 @@ class AuthService {
4367
4315
  }
4368
4316
  this._ds.input('Register New User', inputProps).then(close => {
4369
4317
  let user = {
4370
- username: close.username.value.trim().toLowerCase(),
4371
- email: close.email.value.trim().toLowerCase(),
4318
+ username: close.username.value.trim(),
4319
+ email: close.email.value.trim(),
4372
4320
  fullname: close.fullname.value.trim(),
4373
4321
  roles: {
4374
4322
  super_admin: false,
@@ -4450,7 +4398,7 @@ class AuthService {
4450
4398
  user['phonenumber'] = '';
4451
4399
  }
4452
4400
  user.email = close.email.value.trim();
4453
- this._socket.call('editUser', user._id, close.username.value.trim().toLowerCase(), close.fullname.value.trim(), close.email.value.trim().toLowerCase(), user['phonenumber'], (err, res) => {
4401
+ this._socket.call('editUser', user._id, close.username.value.trim(), close.fullname.value.trim(), close.email.value.trim(), user['phonenumber'], (err, res) => {
4454
4402
  if (err) {
4455
4403
  this._socket.call('insertErrorLog', 'AuthService - edituser', [
4456
4404
  user,
@@ -4515,9 +4463,9 @@ class AuthService {
4515
4463
  });
4516
4464
  }
4517
4465
  }
4518
- AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AuthService, deps: [{ token: DialogService }, { token: ValidationService }, { token: AlertService }, { token: AccountManagerService }, { token: SocketManagerService }], target: i0.ɵɵFactoryTarget.Injectable });
4519
- AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AuthService });
4520
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AuthService, decorators: [{
4466
+ AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AuthService, deps: [{ token: DialogService }, { token: ValidationService }, { token: AlertService }, { token: AccountManagerService }, { token: SocketManagerService }], target: i0.ɵɵFactoryTarget.Injectable });
4467
+ AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AuthService });
4468
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AuthService, decorators: [{
4521
4469
  type: Injectable
4522
4470
  }], ctorParameters: function () { return [{ type: DialogService }, { type: ValidationService }, { type: AlertService }, { type: AccountManagerService }, { type: SocketManagerService }]; } });
4523
4471
 
@@ -4537,9 +4485,9 @@ class AuthPermissionService {
4537
4485
  return this.modules;
4538
4486
  }
4539
4487
  }
4540
- AuthPermissionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AuthPermissionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4541
- AuthPermissionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AuthPermissionService });
4542
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AuthPermissionService, decorators: [{
4488
+ AuthPermissionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AuthPermissionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4489
+ AuthPermissionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AuthPermissionService });
4490
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AuthPermissionService, decorators: [{
4543
4491
  type: Injectable
4544
4492
  }], ctorParameters: function () { return []; } });
4545
4493
 
@@ -4575,9 +4523,9 @@ class ScrollDirective {
4575
4523
  this.onScroll.emit(emitValue);
4576
4524
  }
4577
4525
  }
4578
- ScrollDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ScrollDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
4579
- ScrollDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.9", type: ScrollDirective, selector: "[detect-scroll]", inputs: { bottomOffset: "bottomOffset", topOffset: "topOffset" }, outputs: { onScroll: "onScroll" }, host: { listeners: { "scroll": "scrolled($event)", "window:scroll": "windowScrolled($event)" } }, ngImport: i0 });
4580
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ScrollDirective, decorators: [{
4526
+ ScrollDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ScrollDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
4527
+ ScrollDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: ScrollDirective, selector: "[detect-scroll]", inputs: { bottomOffset: "bottomOffset", topOffset: "topOffset" }, outputs: { onScroll: "onScroll" }, host: { listeners: { "scroll": "scrolled($event)", "window:scroll": "windowScrolled($event)" } }, ngImport: i0 });
4528
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ScrollDirective, decorators: [{
4581
4529
  type: Directive,
4582
4530
  args: [{
4583
4531
  selector: '[detect-scroll]'
@@ -4774,11 +4722,11 @@ class NavbarMainComponent extends BaseComponent {
4774
4722
  return window.innerWidth;
4775
4723
  }
4776
4724
  }
4777
- NavbarMainComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: NavbarMainComponent, deps: [{ token: ProviderService }, { token: AuthService }, { token: DialogService }, { token: CoreService }], target: i0.ɵɵFactoryTarget.Component });
4778
- NavbarMainComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: NavbarMainComponent, selector: "navbar-main", inputs: { logo: "logo", navTabs: "navTabs", fontSize: "fontSize", publicProgram: "publicProgram" }, providers: [ProviderService], viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true, static: true }, { propertyName: "dropdowns", predicate: ["dropdowns"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<style>\n\t:root {\n --font-size: 12;\n }\n\n\t:host /deep/ * {\n\t\tfont-size: var(--font-size);\n\t}\n\n @media (max-width: 1200px) {\n .navbarMain a {\n font-size: 18px !important;\n }\n }\n @media (min-width: 1200px) {\n .scrollable-x {\n max-width: 60vw;\n overflow-x: auto;\n overflow-y: visible;\n align-items: center;\n }\n\n ::-webkit-scrollbar {\n display: none;\n }\n\n .verticalAlign {\n display: flex;\n align-items: center;\n }\n\n .dropdown {\n position: static;\n }\n }\n\n .navbar li {\n cursor: pointer;\n text-align: center;\n }\n\n .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: gray;\n }\n</style>\n\n<div class=\"row\">\n <nav class=\"navbar navbar-expand-xl navbar-dark bg-dark navbarMain\" style=\"width: 100%\">\n <a class=\"navbar-brand\" href=\"#\">\n <img [src]=\"logo\" style=\"width: auto; height: 36px;\" *ngIf=\"!isDemo\">\n </a>\n <button class=\"navbar-toggler\" type=\"button\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" aria-controls=\"navbarMainNav\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse collapse\" id=\"navbarMainNav\">\n <ul class=\"navbar-nav\">\n <li class=\"nav-item\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" *ngIf=\"!standardProgram\" [style.border-right]=\"getWindowWidth() > 1200 ? '1px solid white' : ''\">\n <a class=\"nav-link\" routerLink=\"home\" [class.disabled]=\"tourStarted ? true : null\" routerLinkActive=\"active\">Home</a>\n </li>\n </ul>\n <div *ngIf=\"hasScrolled()\" (mouseover)=\"startScrollRight()\" (mouseout)=\"stopScrollRight()\" (click)=\"scrollRightOnce()\">\n <i class=\"fa fa-arrow-left\" style=\"color: white; font-size: 20px\"></i>\n </div>\n <ul [ngClass]=\"['navbar-nav', 'scrollable-x']\" #scrollable detect-scroll (onScroll)=\"calculateDropdownsLeft()\">\n <ng-container *ngFor=\"let tab of navTabs; let i = index;\">\n <ng-container *ngIf=\"tab.type === 'link'\">\n <li class=\"nav-item\" *ngIf=\"(publicProgram || user) && isInRole(tab.links[0].role)\" data-toggle=\"collapse\" [tourAnchor]=\"tab.tourAnchor\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" [routerLink]=\"tab.links[0].routerLink\" routerLinkActive=\"active\">{{tab.links[0].label}}</a>\n </li>\n </ng-container>\n <ng-container *ngIf=\"tab.type === 'dropdown'\">\n <li #dropdowns class=\"nav-item dropdown\" *ngIf=\"(publicProgram || user) && isInOneRole(tab.roles)\">\n <a class=\"nav-link dropdown-toggle\" [class.disabled]=\"tourStarted ? true : null\" id=\"navbarDropdownAsset\" role=\"button\" [tourAnchor]=\"tab.tourAnchor\" data-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n {{tab.label}}\n </a>\n <div class=\"dropdown-menu bg-dark\" aria-labelledby=\"navbarDropdownAsset\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" [style.left.px]=\"tab.left || 0\">\n <ng-container *ngFor=\"let link of tab.links\">\n <a class=\"dropdown-item nav-link\" *ngIf=\"(publicProgram || user) && isInRole(link.role)\" [routerLink]=\"link.routerLink\">{{link.label}}</a>\n </ng-container>\n </div>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n <div *ngIf=\"hasMoreScroll()\" (mouseover)=\"startScrollLeft()\" (mouseout)=\"stopScrollLeft()\" (click)=\"scrollLeftOnce()\">\n <i class=\"fa fa-arrow-right\" style=\"color: white; font-size: 20px\"></i>\n </div>\n <hr />\n <ul [ngClass]=\"['navbar-nav', getWindowWidth() > 1200 ? 'float-lg-right' : '']\">\n <!-- <li class=\"nav-item\" *ngIf=\"user\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" [style.border-left]=\"getWindowWidth() > 1200 ? '1px solid white' : ''\" style=\"height: 30px;\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" (click)=\"print()\" style=\"cursor: pointer;\"><i style=\"font-size:20px; color: white;\" class=\"fa fa-print\" aria-hidden=\"true\"></i></a>\n </li> -->\n <li class=\"nav-item\" *ngIf=\"user && client\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" style=\"height: 30px;\" tourAnchor=\"supportSection\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" routerLink=\"support-ticket\" routerLinkActive=\"active\">Support</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user && isInRole('super-admin')\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" routerLink=\"logs\" routerLinkActive=\"active\">Logs</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user && isInRole('super-admin')\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" routerLink=\"super-admin\" routerLinkActive=\"active\">Super Admin</a>\n </li>\n </ul>\n <hr />\n <ul [ngClass]=\"['navbar-nav', getWindowWidth() > 1200 ? 'float-lg-right' : '']\" *ngIf=\"!publicProgram\">\n <li class=\"nav-item\" *ngIf=\"!user\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" (click)=\"login()\" style=\"cursor: pointer;\" routerLinkActive=\"active\">Login</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user\" tourAnchor=\"userSettings\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" routerLink=\"user-settings\">Hello {{user.fullname}}!</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user\" style=\"cursor: pointer\" (click)=\"logout()\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\">Logout</a>\n <li>\n </ul>\n </div>\n </nav>\n</div>", styles: ["\n\t:root {\n --font-size: 12;\n }\n\n\t:host /deep/ * {\n\t\tfont-size: var(--font-size);\n\t}\n\n @media (max-width: 1200px) {\n .navbarMain a {\n font-size: 18px !important;\n }\n }\n @media (min-width: 1200px) {\n .scrollable-x {\n max-width: 60vw;\n overflow-x: auto;\n overflow-y: visible;\n align-items: center;\n }\n\n ::-webkit-scrollbar {\n display: none;\n }\n\n .verticalAlign {\n display: flex;\n align-items: center;\n }\n\n .dropdown {\n position: static;\n }\n }\n\n .navbar li {\n cursor: pointer;\n text-align: center;\n }\n\n .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: gray;\n }\n"], dependencies: [{ kind: "directive", type: i1$2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i1$3.NgbNavbar, selector: ".navbar" }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: ScrollDirective, selector: "[detect-scroll]", inputs: ["bottomOffset", "topOffset"], outputs: ["onScroll"] }] });
4779
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: NavbarMainComponent, decorators: [{
4725
+ NavbarMainComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavbarMainComponent, deps: [{ token: ProviderService }, { token: AuthService }, { token: DialogService }, { token: CoreService }], target: i0.ɵɵFactoryTarget.Component });
4726
+ NavbarMainComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NavbarMainComponent, selector: "navbar-main", inputs: { logo: "logo", navTabs: "navTabs", fontSize: "fontSize", publicProgram: "publicProgram" }, providers: [ProviderService], viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true, static: true }, { propertyName: "dropdowns", predicate: ["dropdowns"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<style>\n\t:root {\n --font-size: 12;\n }\n\n\t:host /deep/ * {\n\t\tfont-size: var(--font-size);\n\t}\n\n @media (max-width: 1200px) {\n .navbarMain a {\n font-size: 18px !important;\n }\n }\n @media (min-width: 1200px) {\n .scrollable-x {\n max-width: 60vw;\n overflow-x: auto;\n overflow-y: visible;\n align-items: center;\n }\n\n ::-webkit-scrollbar {\n display: none;\n }\n\n .verticalAlign {\n display: flex;\n align-items: center;\n }\n\n .dropdown {\n position: static;\n }\n }\n\n .navbar li {\n cursor: pointer;\n text-align: center;\n }\n\n .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: gray;\n }\n</style>\n\n<div class=\"row\">\n <nav class=\"navbar navbar-expand-xl navbar-dark bg-dark navbarMain\" style=\"width: 100%\">\n <a class=\"navbar-brand\" href=\"#\">\n <img [src]=\"logo\" style=\"width: auto; height: 36px;\" *ngIf=\"!isDemo\">\n </a>\n <button class=\"navbar-toggler\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" aria-controls=\"navbarMainNav\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse collapse\" id=\"navbarMainNav\">\n <ul class=\"navbar-nav\">\n <li class=\"nav-item\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" *ngIf=\"!standardProgram\" [style.border-end]=\"getWindowWidth() > 1200 ? '1px solid white' : ''\">\n <a class=\"nav-link\" routerLink=\"home\" [class.disabled]=\"tourStarted ? true : null\" routerLinkActive=\"active\">Home</a>\n </li>\n </ul>\n <div *ngIf=\"hasScrolled()\" (mouseover)=\"startScrollRight()\" (mouseout)=\"stopScrollRight()\" (click)=\"scrollRightOnce()\">\n <i class=\"fa fa-arrow-left\" style=\"color: white; font-size: 20px\"></i>\n </div>\n <ul [ngClass]=\"['navbar-nav', 'scrollable-x']\" #scrollable detect-scroll (onScroll)=\"calculateDropdownsLeft()\">\n <ng-container *ngFor=\"let tab of navTabs; let i = index;\">\n <ng-container *ngIf=\"tab.type === 'link'\">\n <li class=\"nav-item\" *ngIf=\"(publicProgram || user) && isInRole(tab.links[0].role)\" data-bs-toggle=\"collapse\" [tourAnchor]=\"tab.tourAnchor\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" [routerLink]=\"tab.links[0].routerLink\" routerLinkActive=\"active\">{{tab.links[0].label}}</a>\n </li>\n </ng-container>\n <ng-container *ngIf=\"tab.type === 'dropdown'\">\n <li #dropdowns class=\"nav-item dropdown\" *ngIf=\"(publicProgram || user) && isInOneRole(tab.roles)\">\n <a class=\"nav-link dropdown-toggle\" [class.disabled]=\"tourStarted ? true : null\" id=\"navbarDropdownAsset\" role=\"button\" [tourAnchor]=\"tab.tourAnchor\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n {{tab.label}}\n </a>\n <div class=\"dropdown-menu bg-dark\" aria-labelledby=\"navbarDropdownAsset\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" [style.left.px]=\"tab.left || 0\">\n <ng-container *ngFor=\"let link of tab.links\">\n <a class=\"dropdown-item nav-link\" *ngIf=\"(publicProgram || user) && isInRole(link.role)\" [routerLink]=\"link.routerLink\">{{link.label}}</a>\n </ng-container>\n </div>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n <div *ngIf=\"hasMoreScroll()\" (mouseover)=\"startScrollLeft()\" (mouseout)=\"stopScrollLeft()\" (click)=\"scrollLeftOnce()\">\n <i class=\"fa fa-arrow-right\" style=\"color: white; font-size: 20px\"></i>\n </div>\n <hr />\n <ul [ngClass]=\"['navbar-nav', getWindowWidth() > 1200 ? 'float-lg-right' : '']\">\n <!-- <li class=\"nav-item\" *ngIf=\"user\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" [style.border-start]=\"getWindowWidth() > 1200 ? '1px solid white' : ''\" style=\"height: 30px;\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" (click)=\"print()\" style=\"cursor: pointer;\"><i style=\"font-size:20px; color: white;\" class=\"fa fa-print\" aria-hidden=\"true\"></i></a>\n </li> -->\n <li class=\"nav-item\" *ngIf=\"user && client\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" style=\"height: 30px;\" tourAnchor=\"supportSection\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" routerLink=\"support-ticket\" routerLinkActive=\"active\">Support</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user && isInRole('super-admin')\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" routerLink=\"logs\" routerLinkActive=\"active\">Logs</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user && isInRole('super-admin')\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" routerLink=\"super-admin\" routerLinkActive=\"active\">Super Admin</a>\n </li>\n </ul>\n <hr />\n <ul [ngClass]=\"['navbar-nav', getWindowWidth() > 1200 ? 'float-lg-right' : '']\" *ngIf=\"!publicProgram\">\n <li class=\"nav-item\" *ngIf=\"!user\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" (click)=\"login()\" style=\"cursor: pointer;\" routerLinkActive=\"active\">Login</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user\" tourAnchor=\"userSettings\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" routerLink=\"user-settings\">Hello {{user.fullname}}!</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user\" style=\"cursor: pointer\" (click)=\"logout()\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\">Logout</a>\n <li>\n </ul>\n </div>\n </nav>\n</div>", styles: ["\n\t:root {\n --font-size: 12;\n }\n\n\t:host /deep/ * {\n\t\tfont-size: var(--font-size);\n\t}\n\n @media (max-width: 1200px) {\n .navbarMain a {\n font-size: 18px !important;\n }\n }\n @media (min-width: 1200px) {\n .scrollable-x {\n max-width: 60vw;\n overflow-x: auto;\n overflow-y: visible;\n align-items: center;\n }\n\n ::-webkit-scrollbar {\n display: none;\n }\n\n .verticalAlign {\n display: flex;\n align-items: center;\n }\n\n .dropdown {\n position: static;\n }\n }\n\n .navbar li {\n cursor: pointer;\n text-align: center;\n }\n\n .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: gray;\n }\n"], dependencies: [{ kind: "directive", type: i1$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i1$3.NgbNavbar, selector: ".navbar" }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: ScrollDirective, selector: "[detect-scroll]", inputs: ["bottomOffset", "topOffset"], outputs: ["onScroll"] }] });
4727
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavbarMainComponent, decorators: [{
4780
4728
  type: Component,
4781
- args: [{ selector: 'navbar-main', providers: [ProviderService], template: "<style>\n\t:root {\n --font-size: 12;\n }\n\n\t:host /deep/ * {\n\t\tfont-size: var(--font-size);\n\t}\n\n @media (max-width: 1200px) {\n .navbarMain a {\n font-size: 18px !important;\n }\n }\n @media (min-width: 1200px) {\n .scrollable-x {\n max-width: 60vw;\n overflow-x: auto;\n overflow-y: visible;\n align-items: center;\n }\n\n ::-webkit-scrollbar {\n display: none;\n }\n\n .verticalAlign {\n display: flex;\n align-items: center;\n }\n\n .dropdown {\n position: static;\n }\n }\n\n .navbar li {\n cursor: pointer;\n text-align: center;\n }\n\n .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: gray;\n }\n</style>\n\n<div class=\"row\">\n <nav class=\"navbar navbar-expand-xl navbar-dark bg-dark navbarMain\" style=\"width: 100%\">\n <a class=\"navbar-brand\" href=\"#\">\n <img [src]=\"logo\" style=\"width: auto; height: 36px;\" *ngIf=\"!isDemo\">\n </a>\n <button class=\"navbar-toggler\" type=\"button\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" aria-controls=\"navbarMainNav\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse collapse\" id=\"navbarMainNav\">\n <ul class=\"navbar-nav\">\n <li class=\"nav-item\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" *ngIf=\"!standardProgram\" [style.border-right]=\"getWindowWidth() > 1200 ? '1px solid white' : ''\">\n <a class=\"nav-link\" routerLink=\"home\" [class.disabled]=\"tourStarted ? true : null\" routerLinkActive=\"active\">Home</a>\n </li>\n </ul>\n <div *ngIf=\"hasScrolled()\" (mouseover)=\"startScrollRight()\" (mouseout)=\"stopScrollRight()\" (click)=\"scrollRightOnce()\">\n <i class=\"fa fa-arrow-left\" style=\"color: white; font-size: 20px\"></i>\n </div>\n <ul [ngClass]=\"['navbar-nav', 'scrollable-x']\" #scrollable detect-scroll (onScroll)=\"calculateDropdownsLeft()\">\n <ng-container *ngFor=\"let tab of navTabs; let i = index;\">\n <ng-container *ngIf=\"tab.type === 'link'\">\n <li class=\"nav-item\" *ngIf=\"(publicProgram || user) && isInRole(tab.links[0].role)\" data-toggle=\"collapse\" [tourAnchor]=\"tab.tourAnchor\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" [routerLink]=\"tab.links[0].routerLink\" routerLinkActive=\"active\">{{tab.links[0].label}}</a>\n </li>\n </ng-container>\n <ng-container *ngIf=\"tab.type === 'dropdown'\">\n <li #dropdowns class=\"nav-item dropdown\" *ngIf=\"(publicProgram || user) && isInOneRole(tab.roles)\">\n <a class=\"nav-link dropdown-toggle\" [class.disabled]=\"tourStarted ? true : null\" id=\"navbarDropdownAsset\" role=\"button\" [tourAnchor]=\"tab.tourAnchor\" data-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n {{tab.label}}\n </a>\n <div class=\"dropdown-menu bg-dark\" aria-labelledby=\"navbarDropdownAsset\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" [style.left.px]=\"tab.left || 0\">\n <ng-container *ngFor=\"let link of tab.links\">\n <a class=\"dropdown-item nav-link\" *ngIf=\"(publicProgram || user) && isInRole(link.role)\" [routerLink]=\"link.routerLink\">{{link.label}}</a>\n </ng-container>\n </div>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n <div *ngIf=\"hasMoreScroll()\" (mouseover)=\"startScrollLeft()\" (mouseout)=\"stopScrollLeft()\" (click)=\"scrollLeftOnce()\">\n <i class=\"fa fa-arrow-right\" style=\"color: white; font-size: 20px\"></i>\n </div>\n <hr />\n <ul [ngClass]=\"['navbar-nav', getWindowWidth() > 1200 ? 'float-lg-right' : '']\">\n <!-- <li class=\"nav-item\" *ngIf=\"user\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" [style.border-left]=\"getWindowWidth() > 1200 ? '1px solid white' : ''\" style=\"height: 30px;\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" (click)=\"print()\" style=\"cursor: pointer;\"><i style=\"font-size:20px; color: white;\" class=\"fa fa-print\" aria-hidden=\"true\"></i></a>\n </li> -->\n <li class=\"nav-item\" *ngIf=\"user && client\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\" style=\"height: 30px;\" tourAnchor=\"supportSection\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" routerLink=\"support-ticket\" routerLinkActive=\"active\">Support</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user && isInRole('super-admin')\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" routerLink=\"logs\" routerLinkActive=\"active\">Logs</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user && isInRole('super-admin')\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" routerLink=\"super-admin\" routerLinkActive=\"active\">Super Admin</a>\n </li>\n </ul>\n <hr />\n <ul [ngClass]=\"['navbar-nav', getWindowWidth() > 1200 ? 'float-lg-right' : '']\" *ngIf=\"!publicProgram\">\n <li class=\"nav-item\" *ngIf=\"!user\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" (click)=\"login()\" style=\"cursor: pointer;\" routerLinkActive=\"active\">Login</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user\" tourAnchor=\"userSettings\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" routerLink=\"user-settings\">Hello {{user.fullname}}!</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user\" style=\"cursor: pointer\" (click)=\"logout()\" data-toggle=\"collapse\" data-target=\"#navbarMainNav\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\">Logout</a>\n <li>\n </ul>\n </div>\n </nav>\n</div>" }]
4729
+ args: [{ selector: 'navbar-main', providers: [ProviderService], template: "<style>\n\t:root {\n --font-size: 12;\n }\n\n\t:host /deep/ * {\n\t\tfont-size: var(--font-size);\n\t}\n\n @media (max-width: 1200px) {\n .navbarMain a {\n font-size: 18px !important;\n }\n }\n @media (min-width: 1200px) {\n .scrollable-x {\n max-width: 60vw;\n overflow-x: auto;\n overflow-y: visible;\n align-items: center;\n }\n\n ::-webkit-scrollbar {\n display: none;\n }\n\n .verticalAlign {\n display: flex;\n align-items: center;\n }\n\n .dropdown {\n position: static;\n }\n }\n\n .navbar li {\n cursor: pointer;\n text-align: center;\n }\n\n .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: gray;\n }\n</style>\n\n<div class=\"row\">\n <nav class=\"navbar navbar-expand-xl navbar-dark bg-dark navbarMain\" style=\"width: 100%\">\n <a class=\"navbar-brand\" href=\"#\">\n <img [src]=\"logo\" style=\"width: auto; height: 36px;\" *ngIf=\"!isDemo\">\n </a>\n <button class=\"navbar-toggler\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" aria-controls=\"navbarMainNav\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse collapse\" id=\"navbarMainNav\">\n <ul class=\"navbar-nav\">\n <li class=\"nav-item\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" *ngIf=\"!standardProgram\" [style.border-end]=\"getWindowWidth() > 1200 ? '1px solid white' : ''\">\n <a class=\"nav-link\" routerLink=\"home\" [class.disabled]=\"tourStarted ? true : null\" routerLinkActive=\"active\">Home</a>\n </li>\n </ul>\n <div *ngIf=\"hasScrolled()\" (mouseover)=\"startScrollRight()\" (mouseout)=\"stopScrollRight()\" (click)=\"scrollRightOnce()\">\n <i class=\"fa fa-arrow-left\" style=\"color: white; font-size: 20px\"></i>\n </div>\n <ul [ngClass]=\"['navbar-nav', 'scrollable-x']\" #scrollable detect-scroll (onScroll)=\"calculateDropdownsLeft()\">\n <ng-container *ngFor=\"let tab of navTabs; let i = index;\">\n <ng-container *ngIf=\"tab.type === 'link'\">\n <li class=\"nav-item\" *ngIf=\"(publicProgram || user) && isInRole(tab.links[0].role)\" data-bs-toggle=\"collapse\" [tourAnchor]=\"tab.tourAnchor\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" [routerLink]=\"tab.links[0].routerLink\" routerLinkActive=\"active\">{{tab.links[0].label}}</a>\n </li>\n </ng-container>\n <ng-container *ngIf=\"tab.type === 'dropdown'\">\n <li #dropdowns class=\"nav-item dropdown\" *ngIf=\"(publicProgram || user) && isInOneRole(tab.roles)\">\n <a class=\"nav-link dropdown-toggle\" [class.disabled]=\"tourStarted ? true : null\" id=\"navbarDropdownAsset\" role=\"button\" [tourAnchor]=\"tab.tourAnchor\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n {{tab.label}}\n </a>\n <div class=\"dropdown-menu bg-dark\" aria-labelledby=\"navbarDropdownAsset\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" [style.left.px]=\"tab.left || 0\">\n <ng-container *ngFor=\"let link of tab.links\">\n <a class=\"dropdown-item nav-link\" *ngIf=\"(publicProgram || user) && isInRole(link.role)\" [routerLink]=\"link.routerLink\">{{link.label}}</a>\n </ng-container>\n </div>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n <div *ngIf=\"hasMoreScroll()\" (mouseover)=\"startScrollLeft()\" (mouseout)=\"stopScrollLeft()\" (click)=\"scrollLeftOnce()\">\n <i class=\"fa fa-arrow-right\" style=\"color: white; font-size: 20px\"></i>\n </div>\n <hr />\n <ul [ngClass]=\"['navbar-nav', getWindowWidth() > 1200 ? 'float-lg-right' : '']\">\n <!-- <li class=\"nav-item\" *ngIf=\"user\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" [style.border-start]=\"getWindowWidth() > 1200 ? '1px solid white' : ''\" style=\"height: 30px;\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" (click)=\"print()\" style=\"cursor: pointer;\"><i style=\"font-size:20px; color: white;\" class=\"fa fa-print\" aria-hidden=\"true\"></i></a>\n </li> -->\n <li class=\"nav-item\" *ngIf=\"user && client\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\" style=\"height: 30px;\" tourAnchor=\"supportSection\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" routerLink=\"support-ticket\" routerLinkActive=\"active\">Support</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user && isInRole('super-admin')\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" routerLink=\"logs\" routerLinkActive=\"active\">Logs</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user && isInRole('super-admin')\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" routerLink=\"super-admin\" routerLinkActive=\"active\">Super Admin</a>\n </li>\n </ul>\n <hr />\n <ul [ngClass]=\"['navbar-nav', getWindowWidth() > 1200 ? 'float-lg-right' : '']\" *ngIf=\"!publicProgram\">\n <li class=\"nav-item\" *ngIf=\"!user\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" (click)=\"login()\" style=\"cursor: pointer;\" routerLinkActive=\"active\">Login</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user\" tourAnchor=\"userSettings\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" routerLink=\"user-settings\">Hello {{user.fullname}}!</a>\n </li>\n <li class=\"nav-item\" *ngIf=\"user\" style=\"cursor: pointer\" (click)=\"logout()\" data-bs-toggle=\"collapse\" data-bs-target=\"#navbarMainNav\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\">Logout</a>\n <li>\n </ul>\n </div>\n </nav>\n</div>" }]
4782
4730
  }], ctorParameters: function () { return [{ type: ProviderService }, { type: AuthService }, { type: DialogService }, { type: CoreService }]; }, propDecorators: { dropdowns: [{
4783
4731
  type: ViewChildren,
4784
4732
  args: ['dropdowns']
@@ -4807,9 +4755,9 @@ class FilterEqualPipe {
4807
4755
  return items.filter(it => it[field] === value);
4808
4756
  }
4809
4757
  }
4810
- FilterEqualPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FilterEqualPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
4811
- FilterEqualPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: FilterEqualPipe, name: "filterEqual", pure: false });
4812
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FilterEqualPipe, decorators: [{
4758
+ FilterEqualPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FilterEqualPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
4759
+ FilterEqualPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: FilterEqualPipe, name: "filterEqual", pure: false });
4760
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FilterEqualPipe, decorators: [{
4813
4761
  type: Pipe,
4814
4762
  args: [{
4815
4763
  name: 'filterEqual',
@@ -4824,9 +4772,9 @@ class FilterNotEqualPipe {
4824
4772
  return items.filter(it => it[field] !== value);
4825
4773
  }
4826
4774
  }
4827
- FilterNotEqualPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FilterNotEqualPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
4828
- FilterNotEqualPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: FilterNotEqualPipe, name: "filterNotEqual" });
4829
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FilterNotEqualPipe, decorators: [{
4775
+ FilterNotEqualPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FilterNotEqualPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
4776
+ FilterNotEqualPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: FilterNotEqualPipe, name: "filterNotEqual" });
4777
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FilterNotEqualPipe, decorators: [{
4830
4778
  type: Pipe,
4831
4779
  args: [{
4832
4780
  name: 'filterNotEqual'
@@ -4855,21 +4803,35 @@ class NavbarModuleComponent extends BaseComponent {
4855
4803
  this.routerEvents$.push(this._services._router.events
4856
4804
  //.filter(event => event instanceof NavigationEnd)
4857
4805
  .subscribe((event) => {
4858
- if (this._services._router.url.replace(/\/[a-f0-9]{24}$/, '').replace(/\?.+$/, '') !== this.currentRoute || !this.selectedTab) {
4859
- this.selectTabFromRouter();
4860
- }
4806
+ this.selectTabFromRouter();
4861
4807
  }));
4862
4808
  this.routerEvents$.push(this._services._router.events
4863
4809
  //.filter(event => event instanceof NavigationCancel)
4864
4810
  .subscribe((event) => {
4865
- if (this._services._router.url.replace(/\/[a-f0-9]{24}$/, '').replace(/\?.+$/, '') !== this.currentRoute || !this.selectedTab) {
4866
- this.selectTabFromRouter();
4867
- }
4811
+ this.selectTabFromRouter();
4868
4812
  }));
4869
4813
  this.routerEvents$.push(this._services._app.navbarModuleData.subscribe(data => {
4870
4814
  this.menuData = data;
4871
- if (this._services._router.url.replace(/\/[a-f0-9]{24}$/, '').replace(/\?.+$/, '') !== this.currentRoute || !this.selectedTab) {
4872
- this.selectTabFromRouter();
4815
+ if (!this.selectedTab && this.menuData.tabs.length) {
4816
+ this.selectedTab = this.menuData.tabs[0];
4817
+ }
4818
+ if (this.selectedTab) {
4819
+ for (let i = 0; i < this.menuData.tabs.length; i++) {
4820
+ let tabLink = '';
4821
+ if (this.menuData.tabs[i].link.startsWith('/customer-portal/frac') || this.menuData.tabs[i].link.startsWith('/customer-portal/production')) {
4822
+ tabLink = this.menuData.tabs[i].link;
4823
+ }
4824
+ else {
4825
+ tabLink = this.menuData.tabs[i].link.replace(/^(\/[-a-z]+\/[^\/]+)\/.*$/, '$1');
4826
+ }
4827
+ if (tabLink === this.currentRoute) {
4828
+ this.selectedTab = this.menuData.tabs[i];
4829
+ break;
4830
+ }
4831
+ }
4832
+ if (this.selectedTab === null) {
4833
+ this.selectedTab = this.menuData.tabs[0];
4834
+ }
4873
4835
  }
4874
4836
  }));
4875
4837
  this.routerEvents$.push(this._services._app.tourStarted.subscribe(tourStarted => {
@@ -4882,27 +4844,38 @@ class NavbarModuleComponent extends BaseComponent {
4882
4844
  });
4883
4845
  }
4884
4846
  selectTabFromRouter() {
4885
- if (this.menuData) {
4886
- if (this._services._router.url === '/') {
4887
- this.selectedTab = this.menuData.tabs[0];
4847
+ if (this._services._router.url === '/') {
4848
+ this.selectedTab = this.menuData.tabs[0];
4849
+ }
4850
+ else {
4851
+ this.selectedTab = null;
4852
+ let routerLink = '';
4853
+ if (this._services._router.url.startsWith('/customer-portal/frac') || this._services._router.url.startsWith('/customer-portal/production')) {
4854
+ routerLink = this._services._router.url;
4888
4855
  }
4889
4856
  else {
4890
- this.currentRoute = this._services._router.url.replace(/\/[a-f0-9]{24}$/, '').replace(/\?.+$/, '');
4891
- this.selectedTab = null;
4892
- while (!this.selectedTab && this.currentRoute.split('/').length > 2) {
4893
- for (let i = 0; i < this.menuData.tabs.length; i++) {
4894
- let tab = this.menuData.tabs[i];
4895
- if (tab.link === this.currentRoute) {
4896
- this.selectedTab = tab;
4897
- break;
4898
- }
4899
- }
4900
- this.currentRoute = this.currentRoute.replace(/(\/[^\/]+$)/, '');
4857
+ routerLink = this._services._router.url.replace(/^(\/[-a-z]+\/[^\/]+)\/.*$/, '$1');
4858
+ }
4859
+ if (routerLink.includes('?')) {
4860
+ routerLink = routerLink.substring(0, routerLink.indexOf('?'));
4861
+ }
4862
+ this.currentRoute = routerLink;
4863
+ for (let i = 0; i < this.menuData.tabs.length; i++) {
4864
+ let tabLink = '';
4865
+ if (this.menuData.tabs[i].link.startsWith('/customer-portal/frac') || this.menuData.tabs[i].link.startsWith('/customer-portal/production')) {
4866
+ tabLink = this.menuData.tabs[i].link;
4901
4867
  }
4902
- if (!this.selectedTab) {
4903
- this.selectedTab = this.menuData.tabs[0];
4868
+ else {
4869
+ tabLink = this.menuData.tabs[i].link.replace(/^(\/[-a-z]+\/[^\/]+)\/.*$/, '$1');
4870
+ }
4871
+ if (tabLink === routerLink) {
4872
+ this.selectedTab = this.menuData.tabs[i];
4873
+ break;
4904
4874
  }
4905
4875
  }
4876
+ if (this.selectedTab === null) {
4877
+ this.selectedTab = this.menuData.tabs.filter(a => a.link === routerLink)[0] ? this.menuData.tabs.filter(a => a.link === routerLink)[0] : this.menuData.tabs[0];
4878
+ }
4906
4879
  }
4907
4880
  }
4908
4881
  tabClass(tab) {
@@ -4910,8 +4883,10 @@ class NavbarModuleComponent extends BaseComponent {
4910
4883
  if (this.selectedTab.label === tab.label) {
4911
4884
  return 'active';
4912
4885
  }
4886
+ else {
4887
+ return '';
4888
+ }
4913
4889
  }
4914
- return '';
4915
4890
  }
4916
4891
  navigateTo(tab) {
4917
4892
  if (this.selectedTab !== tab) {
@@ -4925,11 +4900,11 @@ class NavbarModuleComponent extends BaseComponent {
4925
4900
  }
4926
4901
  }
4927
4902
  }
4928
- NavbarModuleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: NavbarModuleComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
4929
- NavbarModuleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: NavbarModuleComponent, selector: "navbar-module", inputs: { sideNavHeight: "sideNavHeight", sideNavWidth: "sideNavWidth" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n .navbarModule li {\n cursor: pointer;\n }\n .navbarModule li.active {\n border-left: 3px solid #d19b3d;\n }\n .navbarModule nav {\n width: 100%;\n }\n\n @media (min-width: 1200px) {\n .navbarModule {\n height: 95vh;\n margin-left: -10px;\n }\n\n hr {\n border-top: white 1px solid;\n }\n }\n\n @media (max-width: 1200px) {\n hr {\n display: none;\n }\n\n .navbarModule a {\n font-size: 18px !important;\n }\n }\n\n \n</style> \n\n<div style=\"margin-left: -15px; margin-right: -15px;\">\n <nav class=\"navbar navbar-expand-xl navbar-dark bg-dark flex-xl-column navbarModule\" [style.height]=\"sideNavHeight ? sideNavHeight + 'px' : ''\" [style.width]=\"sideNavWidth ? sideNavWidth : ''\">\n <div href=\"#\" style=\"color: white; font-size: 16px;\">\n {{ menuData.title }}\n </div>\n <button class=\"navbar-toggler\" type=\"button\" aria-controls=\"#navbarModuleNav\" data-target=\"#navbarModuleNav\" data-toggle=\"collapse\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse collapse\" id=\"navbarModuleNav\" style=\"align-items:baseline; width: 100%; overflow-y: auto; overflow-x: hidden;\">\n <ul class=\"navbar-nav\" style=\"display: block; float: left; width: 100%;\">\n <div *ngFor=\"let tab of (menuData.tabs | filterNotEqual : 'params' : '0'); let i = index\">\n <div *ngIf=\"tab.params !== null && menuData.tabs[i - 1] && menuData.tabs[i - 1].params === null\">\n <hr>\n <div href=\"#\" style=\"color: white; font-size: 16px;\">\n Selected {{ menuData.module }}\n </div>\n <hr>\n <div style=\"color:white; margin-left: 5px; text-decoration: underline; font-size: 14px\">{{menuData.description_name}}:</div>\n <div style=\"color:white; margin-left: 8px; font-size: 12px\">{{menuData.description}}</div>\n <br />\n </div>\n <li [ngClass]=\"['nav-item', tabClass(tab)]\"data-toggle=\"collapse\" data-target=\"#navbarModuleNav\" [tourAnchor]=\"tab.tourAnchor\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" [routerLink]=\"[tab.params ? tab.link + '/' + tab.params : tab.link]\" routerLinkActive=\"active\">{{ tab.label }}</a>\n </li>\n </div>\n </ul>\n </div>\n </nav>\n</div>\n", styles: ["\n .navbarModule li {\n cursor: pointer;\n }\n .navbarModule li.active {\n border-left: 3px solid #d19b3d;\n }\n .navbarModule nav {\n width: 100%;\n }\n\n @media (min-width: 1200px) {\n .navbarModule {\n height: 95vh;\n margin-left: -10px;\n }\n\n hr {\n border-top: white 1px solid;\n }\n }\n\n @media (max-width: 1200px) {\n hr {\n display: none;\n }\n\n .navbarModule a {\n font-size: 18px !important;\n }\n }\n\n \n"], dependencies: [{ kind: "directive", type: i1$2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i1$3.NgbNavbar, selector: ".navbar" }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: FilterNotEqualPipe, name: "filterNotEqual" }] });
4930
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: NavbarModuleComponent, decorators: [{
4903
+ NavbarModuleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavbarModuleComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
4904
+ NavbarModuleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NavbarModuleComponent, selector: "navbar-module", inputs: { sideNavHeight: "sideNavHeight", sideNavWidth: "sideNavWidth" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n .navbarModule li {\n cursor: pointer;\n }\n .navbarModule li.active {\n border-start: 3px solid #d19b3d;\n }\n .navbarModule nav {\n width: 100%;\n }\n\n @media (min-width: 1200px) {\n .navbarModule {\n height: 95vh;\n margin-left: -10px;\n }\n\n hr {\n border-top: white 1px solid;\n }\n }\n\n @media (max-width: 1200px) {\n hr {\n display: none;\n }\n\n .navbarModule a {\n font-size: 18px !important;\n }\n }\n\n \n</style> \n\n<div style=\"margin-left: -15px; margin-right: -15px;\">\n <nav class=\"navbar navbar-expand-xl navbar-dark bg-dark flex-xl-column navbarModule\" [style.height]=\"sideNavHeight ? sideNavHeight + 'px' : ''\" [style.width]=\"sideNavWidth ? sideNavWidth : ''\">\n <div href=\"#\" style=\"color: white; font-size: 16px;\">\n {{ menuData.title }}\n </div>\n <button class=\"navbar-toggler\" type=\"button\" aria-controls=\"#navbarModuleNav\" data-bs-target=\"#navbarModuleNav\" data-bs-toggle=\"collapse\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse collapse\" id=\"navbarModuleNav\" style=\"align-items:baseline; width: 100%; overflow-y: auto; overflow-x: hidden;\">\n <ul class=\"navbar-nav\" style=\"display: block; float: left; width: 100%;\">\n <div *ngFor=\"let tab of (menuData.tabs | filterNotEqual : 'params' : '0'); let i = index\">\n <div *ngIf=\"tab.params !== null && menuData.tabs[i - 1] && menuData.tabs[i - 1].params === null\">\n <hr>\n <div href=\"#\" style=\"color: white; font-size: 16px;\">\n Selected {{ menuData.module }}\n </div>\n <hr>\n <div style=\"color:white; margin-left: 5px; text-decoration: underline; font-size: 14px\">{{menuData.description_name}}:</div>\n <div style=\"color:white; margin-left: 8px; font-size: 12px\">{{menuData.description}}</div>\n <br />\n </div>\n <li [ngClass]=\"['nav-item', tabClass(tab)]\"data-bs-toggle=\"collapse\" data-bs-target=\"#navbarModuleNav\" [tourAnchor]=\"tab.tourAnchor\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" [routerLink]=\"[tab.params ? tab.link + '/' + tab.params : tab.link]\" routerLinkActive=\"active\">{{ tab.label }}</a>\n </li>\n </div>\n </ul>\n </div>\n </nav>\n</div>\n", styles: ["\n .navbarModule li {\n cursor: pointer;\n }\n .navbarModule li.active {\n border-start: 3px solid #d19b3d;\n }\n .navbarModule nav {\n width: 100%;\n }\n\n @media (min-width: 1200px) {\n .navbarModule {\n height: 95vh;\n margin-left: -10px;\n }\n\n hr {\n border-top: white 1px solid;\n }\n }\n\n @media (max-width: 1200px) {\n hr {\n display: none;\n }\n\n .navbarModule a {\n font-size: 18px !important;\n }\n }\n\n \n"], dependencies: [{ kind: "directive", type: i1$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i1$3.NgbNavbar, selector: ".navbar" }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: FilterNotEqualPipe, name: "filterNotEqual" }] });
4905
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavbarModuleComponent, decorators: [{
4931
4906
  type: Component,
4932
- args: [{ providers: [ProviderService], selector: 'navbar-module', template: "<style>\n .navbarModule li {\n cursor: pointer;\n }\n .navbarModule li.active {\n border-left: 3px solid #d19b3d;\n }\n .navbarModule nav {\n width: 100%;\n }\n\n @media (min-width: 1200px) {\n .navbarModule {\n height: 95vh;\n margin-left: -10px;\n }\n\n hr {\n border-top: white 1px solid;\n }\n }\n\n @media (max-width: 1200px) {\n hr {\n display: none;\n }\n\n .navbarModule a {\n font-size: 18px !important;\n }\n }\n\n \n</style> \n\n<div style=\"margin-left: -15px; margin-right: -15px;\">\n <nav class=\"navbar navbar-expand-xl navbar-dark bg-dark flex-xl-column navbarModule\" [style.height]=\"sideNavHeight ? sideNavHeight + 'px' : ''\" [style.width]=\"sideNavWidth ? sideNavWidth : ''\">\n <div href=\"#\" style=\"color: white; font-size: 16px;\">\n {{ menuData.title }}\n </div>\n <button class=\"navbar-toggler\" type=\"button\" aria-controls=\"#navbarModuleNav\" data-target=\"#navbarModuleNav\" data-toggle=\"collapse\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse collapse\" id=\"navbarModuleNav\" style=\"align-items:baseline; width: 100%; overflow-y: auto; overflow-x: hidden;\">\n <ul class=\"navbar-nav\" style=\"display: block; float: left; width: 100%;\">\n <div *ngFor=\"let tab of (menuData.tabs | filterNotEqual : 'params' : '0'); let i = index\">\n <div *ngIf=\"tab.params !== null && menuData.tabs[i - 1] && menuData.tabs[i - 1].params === null\">\n <hr>\n <div href=\"#\" style=\"color: white; font-size: 16px;\">\n Selected {{ menuData.module }}\n </div>\n <hr>\n <div style=\"color:white; margin-left: 5px; text-decoration: underline; font-size: 14px\">{{menuData.description_name}}:</div>\n <div style=\"color:white; margin-left: 8px; font-size: 12px\">{{menuData.description}}</div>\n <br />\n </div>\n <li [ngClass]=\"['nav-item', tabClass(tab)]\"data-toggle=\"collapse\" data-target=\"#navbarModuleNav\" [tourAnchor]=\"tab.tourAnchor\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" [routerLink]=\"[tab.params ? tab.link + '/' + tab.params : tab.link]\" routerLinkActive=\"active\">{{ tab.label }}</a>\n </li>\n </div>\n </ul>\n </div>\n </nav>\n</div>\n" }]
4907
+ args: [{ providers: [ProviderService], selector: 'navbar-module', template: "<style>\n .navbarModule li {\n cursor: pointer;\n }\n .navbarModule li.active {\n border-start: 3px solid #d19b3d;\n }\n .navbarModule nav {\n width: 100%;\n }\n\n @media (min-width: 1200px) {\n .navbarModule {\n height: 95vh;\n margin-left: -10px;\n }\n\n hr {\n border-top: white 1px solid;\n }\n }\n\n @media (max-width: 1200px) {\n hr {\n display: none;\n }\n\n .navbarModule a {\n font-size: 18px !important;\n }\n }\n\n \n</style> \n\n<div style=\"margin-left: -15px; margin-right: -15px;\">\n <nav class=\"navbar navbar-expand-xl navbar-dark bg-dark flex-xl-column navbarModule\" [style.height]=\"sideNavHeight ? sideNavHeight + 'px' : ''\" [style.width]=\"sideNavWidth ? sideNavWidth : ''\">\n <div href=\"#\" style=\"color: white; font-size: 16px;\">\n {{ menuData.title }}\n </div>\n <button class=\"navbar-toggler\" type=\"button\" aria-controls=\"#navbarModuleNav\" data-bs-target=\"#navbarModuleNav\" data-bs-toggle=\"collapse\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse collapse\" id=\"navbarModuleNav\" style=\"align-items:baseline; width: 100%; overflow-y: auto; overflow-x: hidden;\">\n <ul class=\"navbar-nav\" style=\"display: block; float: left; width: 100%;\">\n <div *ngFor=\"let tab of (menuData.tabs | filterNotEqual : 'params' : '0'); let i = index\">\n <div *ngIf=\"tab.params !== null && menuData.tabs[i - 1] && menuData.tabs[i - 1].params === null\">\n <hr>\n <div href=\"#\" style=\"color: white; font-size: 16px;\">\n Selected {{ menuData.module }}\n </div>\n <hr>\n <div style=\"color:white; margin-left: 5px; text-decoration: underline; font-size: 14px\">{{menuData.description_name}}:</div>\n <div style=\"color:white; margin-left: 8px; font-size: 12px\">{{menuData.description}}</div>\n <br />\n </div>\n <li [ngClass]=\"['nav-item', tabClass(tab)]\"data-bs-toggle=\"collapse\" data-bs-target=\"#navbarModuleNav\" [tourAnchor]=\"tab.tourAnchor\">\n <a class=\"nav-link\" [class.disabled]=\"tourStarted ? true : null\" [routerLink]=\"[tab.params ? tab.link + '/' + tab.params : tab.link]\" routerLinkActive=\"active\">{{ tab.label }}</a>\n </li>\n </div>\n </ul>\n </div>\n </nav>\n</div>\n" }]
4933
4908
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: ProviderService }]; }, propDecorators: { sideNavHeight: [{
4934
4909
  type: Input
4935
4910
  }], sideNavWidth: [{
@@ -5244,25 +5219,25 @@ class CoreComponent extends BaseComponent {
5244
5219
  openNav() {
5245
5220
  let x = document.getElementById('navSid');
5246
5221
  let y = document.getElementById('main_cont');
5247
- if (x.style.width === '40px' && y.style.paddingLeft === '45px') {
5222
+ if (x.style.width === '40px' && y.style.paddingLeft === '55px') {
5248
5223
  x.style.width = '195px';
5249
5224
  y.style.paddingLeft = '210px';
5250
5225
  }
5251
5226
  else {
5252
5227
  x.style.width = '40px';
5253
- y.style.paddingLeft = '45px';
5228
+ y.style.paddingLeft = '55px';
5254
5229
  }
5255
5230
  }
5256
5231
  closeNav() {
5257
5232
  document.getElementById('navSid').style.width = '40px';
5258
- document.getElementById('main_cont').style.paddingLeft = '45px';
5233
+ document.getElementById('main_cont').style.paddingLeft = '55px';
5259
5234
  }
5260
5235
  }
5261
- CoreComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CoreComponent, deps: [{ token: i1$5.DeviceDetectorService }, { token: DialogService }, { token: ResizeService }, { token: ProviderService }, { token: OfflineManagerService }, { token: i1.LocalStorageService }, { token: AuthService }, { token: AuthPermissionService }], target: i0.ɵɵFactoryTarget.Component });
5262
- CoreComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: CoreComponent, selector: "resolveio-client-lib-core", inputs: { environment: "environment", logo: "logo", navTabs: "navTabs", userHasPhoneNumber: "userHasPhoneNumber", client: "client", showNavbarModule: "showNavbarModule", publicProgram: "publicProgram" }, providers: [ProviderService], viewQueries: [{ propertyName: "el_navBarMain", first: true, predicate: ["navBarMain"], descendants: true, read: ElementRef, static: true }, { propertyName: "el_navBarModule", first: true, predicate: ["navBarModule"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n\t:root {\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n\t:host /deep/ .btn-warning {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-color);\n\t\tborder-color: var(--warning-color);\n\t}\n\t:host /deep/ .btn-warning:focus, .btn-warning.focus {\n\t\tbox-shadow: var(--warning-shadow-color);\n\t}\n\t:host /deep/ .btn-warning:hover {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-hover-color);\n\t\tborder-color: var(--warning-hover-color);\n\t}\n\n\t:host /deep/ .btn-success {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-color);\n\t\tborder-color: var(--success-color);\n\t}\n\t:host /deep/ .btn-success:focus, .btn-success.focus {\n\t\tbox-shadow: var(--success-shadow-color);\n\t}\n\t:host /deep/ .btn-success:hover {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-hover-color);\n\t\tborder-color: var(--success-hover-color);\n\t}\n\n\t:host /deep/ .btn-danger {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-color);\n\t\tborder-color: var(--danger-color);\n\t}\n\t:host /deep/ .btn-danger:focus, .btn-danger.focus {\n\t\tbox-shadow: var(--danger-shadow-color);\n\t}\n\t:host /deep/ .btn-danger:hover {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-hover-color);\n\t\tborder-color: var(--danger-hover-color);\n\t}\n\n\t:host /deep/ .btn-info {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-color);\n\t\tborder-color: var(--info-color);\n\t}\n\t:host /deep/ .btn-info:focus, .btn-info.focus {\n\t\tbox-shadow: var(--info-shadow-color);\n\t}\n\t:host /deep/ .btn-info:hover {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-hover-color);\n\t\tborder-color: var(--info-hover-color);\n\t}\n\n\t:host /deep/ .btn-primary {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-color);\n\t\tborder-color: var(--primary-color);\n\t}\n\t:host /deep/ .btn-primary:focus, .btn-primary.focus {\n\t\tbox-shadow: var(--primary-shadow-color);\n\t}\n\t:host /deep/ .btn-primary:hover {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-hover-color);\n\t\tborder-color: var(--primary-hover-color);\n\t}\n\n\t:host /deep/ .btn-secondary {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-color);\n\t\tborder-color: var(--secondary-color);\n\t}\n\t:host /deep/ .btn-secondary:focus, .btn-secondary.focus {\n\t\tbox-shadow: var(--secondary-shadow-color);\n\t}\n\t:host /deep/ .btn-secondary:hover {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-hover-color);\n\t\tborder-color: var(--secondary-hover-color);\n\t}\n\t\n \t@media print {\n\t \t.dontPrint * {\n\t\t \tdisplay: none !important;\n\t \t}\n\n\t\t.myDivToPrintCs {\n\t\t\tbackground-color: white;\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t\tfont-size: 12px;\n\t\t\tline-height: 12px;\n\t\t\tpage-break-after: avoid;\n\t\t\tdisplay: initial;\n\t\t}\n\n\t\t.removeOverflow {\n\t\t\toverflow-y: hidden !important; \n\t\t\theight: 100% !important;\n\t\t}\n \t}\n\n \t.hideThis {\n\t\tdisplay: none !important;\n\t}\n\n\t.navSidbar {\n\t\twidth: 0px;\n\t\tposition: fixed;\n\t\tz-index: 1;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tbackground-color: #343a40;\n\t\toverflow: hidden;\n\t\ttransition: 0.5s;\n\t\tpadding-top: 0px;\n\t}\n\n\t.navSidbar a {\n\t\tpadding: 8px 8px 8px 32px;\n\t\ttext-decoration: none;\n\t\tfont-size: 25px;\n\t\tcolor: #818181;\n\t\tdisplay: block;\n\t\ttransition: 0.3s;\n\t}\n\n\t.navSidbar a:hover {\n\t\tcolor: #f1f1f1;\n\t}\n\n\t.openbtn {\n\t\tbackground-color: #343a40;\n\t\tborder: none;\n\t\tcolor: #fff;\n\t\tpadding: 5px 20px;\n\t\tfont-size: 18px;\n\t\tright: 0;\n\t\ttop: 0px;\n\t\tposition: absolute;\n\t\tz-index: 999999;\n\t\tcursor: pointer;\n\t\tfloat: right;\n\t\theight: 100%;\n\t}\n\n\t.openbtn span {\n\t\tfont-size: 20px;\n\t\tdisplay: block;\n\t\theight: auto;\n\t\twidth: auto;\n\t\ttext-align: center;\n\t\tposition: absolute;\n\t\tleft: 50%;\n\t\ttop: 50%;\n\t\ttransform: translate(-50%, -50%) rotate(-90deg);\n\t\tmargin-top: -55px;\n\t\tletter-spacing: 30px;\n\t}\n\t#main_cont {\n\t\ttransition: padding-left .5s;\n\t}\n\n\t.sid_inr {\n\t\tpadding-left: 25px;\n\t}\n\n\t@keyframes shimmer {\n 0%, 50% {\n background-position: 120% 0;\n }\n 100% {\n background-position: -80% 0;\n }\n }\n\n .shimmer::before {\n content: \"\";\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: linear-gradient(\n -75deg,\n rgba(255, 255, 255, 0) 40%, \n rgba(255, 255, 255, 0.7) 50%, \n rgba(255, 255, 255, 0) 60%\n );\n background-size: 200% 100%;\n animation: shimmer 5s linear infinite;\n animation-fill-mode: forwards;\n z-index: 11;\n }\n</style>\n<div *ngIf=\"isDevice\">\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"/assets/css/tablet.css\">\n</div>\n<div #shell>\n\t<div *ngIf=\"user && (!isConnected || isOffline) && !publicProgram\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\" class=\"shimmer\">*** OFFLINE MODE ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"!user && (!isConnected || isOffline) && !publicProgram\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\" class=\"shimmer\">*** PLEASE LOGIN ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"status\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\" class=\"shimmer\">*** {{ status.message }} ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"fullScreen\">\n\t\t<router-outlet name=\"jobboardfsoutlet\"></router-outlet>\n\t</div>\n\t<div [ngClass]=\"['container-fluid', fullScreen ? 'hideThis' : '']\" [style.font-size.px]=\"fontSize\">\n\t\t<div class=\"dontPrint\">\n\t\t\t<navbar-main style=\"width: 100%\" tourAnchor=\"navBarMain\" #navBarMain [logo]=\"logo\" [navTabs]=\"navTabs\" [fontSize]=\"fontSize\" [publicProgram]=\"publicProgram\"></navbar-main>\n\t\t</div>\n\t\t<ng-template ngbModalContainer></ng-template>\n\t\t<div class=\"row\">\n\t\t\t<div id=\"navSid\" *ngIf=\"showNavbarModule\" [ngClass]=\"['dontPrint', windowSizeWidth > 1200 && collapsableMenu ? 'navSidbar' : 'col-xl-1']\" [style.width]=\"windowSizeWidth > 1200 && collapsableMenu ? 40 + 'px' : 100 + '%'\" [style.margin-top.px]=\"windowSizeWidth > 1200 && collapsableMenu ? navbarMainHeight + statusHeight + connectedHeight : 0\" >\n\t\t\t\t<div class=\"openbtn\" *ngIf=\"windowSizeWidth > 1200 && collapsableMenu\" (mouseenter)=\"openNav()\"><span>MENU</span></div>\n\t\t\t\t<div [ngClass]=\"windowSizeWidth > 1200 && collapsableMenu ? 'sid_inr' : ''\">\n\t\t\t\t\t<navbar-module #navBarModule tourAnchor=\"navBarModule\" [sideNavWidth]=\"windowSizeWidth > 1200 && collapsableMenu ? '90%' : 'auto'\" [sideNavHeight]=\"windowSizeWidth > 1200 && collapsableMenu ? windowSizeHeight - navbarMainHeight - statusHeight - connectedHeight - (showNavigationMenu ? (54 + getNavbarModuleHeight()) : 0) - ((!isDevice || (isDevice && showNavigationMenu)) ? 20 : 0) : ''\"></navbar-module>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div [id]=\"windowSizeWidth > 1200 ? 'main_cont' : 'main_cont_mobile'\" [ngClass]=\"[windowSizeWidth > 1200 && collapsableMenu ? 'col-xl-12' : 'col-xl-11']\" [style.padding-left]=\"windowSizeWidth > 1200 && collapsableMenu && showNavbarModule ? 45 + 'px' : null\" [style.padding]=\"((isDevice && windowSizeWidth <= 1200) || !showNavbarModule) ? 0 + 'px' : null\" (mouseenter)=\"windowSizeWidth > 1200 && collapsableMenu && showNavbarModule ? closeNav() : null\" style=\"padding-right: 5px\">\n\t\t\t\t<div style=\"-webkit-overflow-scrolling: touch\" [style.overflow-y]=\"(isDevice && !showNavigationMenu) ? 'initial' : 'scroll'\" [style.height.px]=\"windowSizeHeight - ((isDevice && windowSizeWidth <= 1200) && !showNavigationMenu ? (getNavbarModuleHeight() > 100 ? 0 : getNavbarModuleHeight()) : 0) - navbarMainHeight - (!publicProgram ? statusHeight : 0) - (!publicProgram ? connectedHeight : 0) - (isDevice && showNavigationMenu ? (54 + (getNavbarModuleHeight() > 100 ? 0 : getNavbarModuleHeight())) : 0) - ((!isDevice || (isDevice && showNavigationMenu)) ? 20 : 0)\" class=\"removeOverflow\">\n\t\t\t\t\t<router-outlet></router-outlet>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div *ngIf=\"isDevice && showNavigationMenu\" style=\"height: 54px; background-color: lightgray; margin-left: -15px; margin-right: -15px;\" class=\"dontPrint\">\n\t\t\t<table style=\"width: 100%\">\n\t\t\t\t<tr>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushBackButton()\"><i class=\"fa fa-arrow-left\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushReloadButton()\"><i class=\"fa fa-refresh\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushForwardButton()\"><i class=\"fa fa-arrow-right\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\t\t</div>\n\t\t<div *ngIf=\"!isDevice\" style=\"text-align: center; height: 20px; font-style: italic; font-weight: bold; background-color: lightgray; margin-left: -15px; margin-right: -15px;\">&copy; {{year}} RESOLVEIO ALL RIGHTS RESERVED</div>\n\t</div>\n</div>\n", styles: ["\n\t:root {\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n\t:host /deep/ .btn-warning {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-color);\n\t\tborder-color: var(--warning-color);\n\t}\n\t:host /deep/ .btn-warning:focus, .btn-warning.focus {\n\t\tbox-shadow: var(--warning-shadow-color);\n\t}\n\t:host /deep/ .btn-warning:hover {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-hover-color);\n\t\tborder-color: var(--warning-hover-color);\n\t}\n\n\t:host /deep/ .btn-success {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-color);\n\t\tborder-color: var(--success-color);\n\t}\n\t:host /deep/ .btn-success:focus, .btn-success.focus {\n\t\tbox-shadow: var(--success-shadow-color);\n\t}\n\t:host /deep/ .btn-success:hover {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-hover-color);\n\t\tborder-color: var(--success-hover-color);\n\t}\n\n\t:host /deep/ .btn-danger {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-color);\n\t\tborder-color: var(--danger-color);\n\t}\n\t:host /deep/ .btn-danger:focus, .btn-danger.focus {\n\t\tbox-shadow: var(--danger-shadow-color);\n\t}\n\t:host /deep/ .btn-danger:hover {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-hover-color);\n\t\tborder-color: var(--danger-hover-color);\n\t}\n\n\t:host /deep/ .btn-info {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-color);\n\t\tborder-color: var(--info-color);\n\t}\n\t:host /deep/ .btn-info:focus, .btn-info.focus {\n\t\tbox-shadow: var(--info-shadow-color);\n\t}\n\t:host /deep/ .btn-info:hover {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-hover-color);\n\t\tborder-color: var(--info-hover-color);\n\t}\n\n\t:host /deep/ .btn-primary {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-color);\n\t\tborder-color: var(--primary-color);\n\t}\n\t:host /deep/ .btn-primary:focus, .btn-primary.focus {\n\t\tbox-shadow: var(--primary-shadow-color);\n\t}\n\t:host /deep/ .btn-primary:hover {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-hover-color);\n\t\tborder-color: var(--primary-hover-color);\n\t}\n\n\t:host /deep/ .btn-secondary {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-color);\n\t\tborder-color: var(--secondary-color);\n\t}\n\t:host /deep/ .btn-secondary:focus, .btn-secondary.focus {\n\t\tbox-shadow: var(--secondary-shadow-color);\n\t}\n\t:host /deep/ .btn-secondary:hover {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-hover-color);\n\t\tborder-color: var(--secondary-hover-color);\n\t}\n\t\n \t@media print {\n\t \t.dontPrint * {\n\t\t \tdisplay: none !important;\n\t \t}\n\n\t\t.myDivToPrintCs {\n\t\t\tbackground-color: white;\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t\tfont-size: 12px;\n\t\t\tline-height: 12px;\n\t\t\tpage-break-after: avoid;\n\t\t\tdisplay: initial;\n\t\t}\n\n\t\t.removeOverflow {\n\t\t\toverflow-y: hidden !important; \n\t\t\theight: 100% !important;\n\t\t}\n \t}\n\n \t.hideThis {\n\t\tdisplay: none !important;\n\t}\n\n\t.navSidbar {\n\t\twidth: 0px;\n\t\tposition: fixed;\n\t\tz-index: 1;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tbackground-color: #343a40;\n\t\toverflow: hidden;\n\t\ttransition: 0.5s;\n\t\tpadding-top: 0px;\n\t}\n\n\t.navSidbar a {\n\t\tpadding: 8px 8px 8px 32px;\n\t\ttext-decoration: none;\n\t\tfont-size: 25px;\n\t\tcolor: #818181;\n\t\tdisplay: block;\n\t\ttransition: 0.3s;\n\t}\n\n\t.navSidbar a:hover {\n\t\tcolor: #f1f1f1;\n\t}\n\n\t.openbtn {\n\t\tbackground-color: #343a40;\n\t\tborder: none;\n\t\tcolor: #fff;\n\t\tpadding: 5px 20px;\n\t\tfont-size: 18px;\n\t\tright: 0;\n\t\ttop: 0px;\n\t\tposition: absolute;\n\t\tz-index: 999999;\n\t\tcursor: pointer;\n\t\tfloat: right;\n\t\theight: 100%;\n\t}\n\n\t.openbtn span {\n\t\tfont-size: 20px;\n\t\tdisplay: block;\n\t\theight: auto;\n\t\twidth: auto;\n\t\ttext-align: center;\n\t\tposition: absolute;\n\t\tleft: 50%;\n\t\ttop: 50%;\n\t\ttransform: translate(-50%, -50%) rotate(-90deg);\n\t\tmargin-top: -55px;\n\t\tletter-spacing: 30px;\n\t}\n\t#main_cont {\n\t\ttransition: padding-left .5s;\n\t}\n\n\t.sid_inr {\n\t\tpadding-left: 25px;\n\t}\n\n\t@keyframes shimmer {\n 0%, 50% {\n background-position: 120% 0;\n }\n 100% {\n background-position: -80% 0;\n }\n }\n\n .shimmer::before {\n content: \"\";\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: linear-gradient(\n -75deg,\n rgba(255, 255, 255, 0) 40%, \n rgba(255, 255, 255, 0.7) 50%, \n rgba(255, 255, 255, 0) 60%\n );\n background-size: 200% 100%;\n animation: shimmer 5s linear infinite;\n animation-fill-mode: forwards;\n z-index: 11;\n }\n"], dependencies: [{ kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NavbarMainComponent, selector: "navbar-main", inputs: ["logo", "navTabs", "fontSize", "publicProgram"] }, { kind: "component", type: NavbarModuleComponent, selector: "navbar-module", inputs: ["sideNavHeight", "sideNavWidth"] }] });
5263
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CoreComponent, decorators: [{
5236
+ CoreComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CoreComponent, deps: [{ token: i1$5.DeviceDetectorService }, { token: DialogService }, { token: ResizeService }, { token: ProviderService }, { token: OfflineManagerService }, { token: i1.LocalStorageService }, { token: AuthService }, { token: AuthPermissionService }], target: i0.ɵɵFactoryTarget.Component });
5237
+ CoreComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: CoreComponent, selector: "resolveio-client-lib-core", inputs: { environment: "environment", logo: "logo", navTabs: "navTabs", userHasPhoneNumber: "userHasPhoneNumber", client: "client", showNavbarModule: "showNavbarModule", publicProgram: "publicProgram" }, providers: [ProviderService], viewQueries: [{ propertyName: "el_navBarMain", first: true, predicate: ["navBarMain"], descendants: true, read: ElementRef, static: true }, { propertyName: "el_navBarModule", first: true, predicate: ["navBarModule"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n\t:root {\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n\t:host /deep/ .btn-warning {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-color);\n\t\tborder-color: var(--warning-color);\n\t}\n\t:host /deep/ .btn-warning:focus, .btn-warning.focus {\n\t\tbox-shadow: var(--warning-shadow-color);\n\t}\n\t:host /deep/ .btn-warning:hover {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-hover-color);\n\t\tborder-color: var(--warning-hover-color);\n\t}\n\n\t:host /deep/ .btn-success {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-color);\n\t\tborder-color: var(--success-color);\n\t}\n\t:host /deep/ .btn-success:focus, .btn-success.focus {\n\t\tbox-shadow: var(--success-shadow-color);\n\t}\n\t:host /deep/ .btn-success:hover {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-hover-color);\n\t\tborder-color: var(--success-hover-color);\n\t}\n\n\t:host /deep/ .btn-danger {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-color);\n\t\tborder-color: var(--danger-color);\n\t}\n\t:host /deep/ .btn-danger:focus, .btn-danger.focus {\n\t\tbox-shadow: var(--danger-shadow-color);\n\t}\n\t:host /deep/ .btn-danger:hover {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-hover-color);\n\t\tborder-color: var(--danger-hover-color);\n\t}\n\n\t:host /deep/ .btn-info {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-color);\n\t\tborder-color: var(--info-color);\n\t}\n\t:host /deep/ .btn-info:focus, .btn-info.focus {\n\t\tbox-shadow: var(--info-shadow-color);\n\t}\n\t:host /deep/ .btn-info:hover {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-hover-color);\n\t\tborder-color: var(--info-hover-color);\n\t}\n\n\t:host /deep/ .btn-primary {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-color);\n\t\tborder-color: var(--primary-color);\n\t}\n\t:host /deep/ .btn-primary:focus, .btn-primary.focus {\n\t\tbox-shadow: var(--primary-shadow-color);\n\t}\n\t:host /deep/ .btn-primary:hover {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-hover-color);\n\t\tborder-color: var(--primary-hover-color);\n\t}\n\n\t:host /deep/ .btn-secondary {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-color);\n\t\tborder-color: var(--secondary-color);\n\t}\n\t:host /deep/ .btn-secondary:focus, .btn-secondary.focus {\n\t\tbox-shadow: var(--secondary-shadow-color);\n\t}\n\t:host /deep/ .btn-secondary:hover {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-hover-color);\n\t\tborder-color: var(--secondary-hover-color);\n\t}\n\t\n \t@media print {\n\t \t.dontPrint * {\n\t\t \tdisplay: none !important;\n\t \t}\n\n\t\t.myDivToPrintCs {\n\t\t\tbackground-color: white;\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t\tfont-size: 12px;\n\t\t\tline-height: 12px;\n\t\t\tpage-break-after: avoid;\n\t\t\tdisplay: initial;\n\t\t}\n\n\t\t.removeOverflow {\n\t\t\toverflow-y: hidden !important; \n\t\t\theight: 100% !important;\n\t\t}\n \t}\n\n \t.hideThis {\n\t\tdisplay: none !important;\n\t}\n\n\t.navSidbar {\n\t\twidth: 0px;\n\t\tposition: fixed;\n\t\tz-index: 1;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tbackground-color: #343a40;\n\t\toverflow: hidden;\n\t\ttransition: 0.5s;\n\t\tpadding-top: 0px;\n\t}\n\n\t.navSidbar a {\n\t\tpadding: 8px 8px 8px 32px;\n\t\ttext-decoration: none;\n\t\tfont-size: 25px;\n\t\tcolor: #818181;\n\t\tdisplay: block;\n\t\ttransition: 0.3s;\n\t}\n\n\t.navSidbar a:hover {\n\t\tcolor: #f1f1f1;\n\t}\n\n\t.openbtn {\n\t\tbackground-color: #343a40;\n\t\tborder: none;\n\t\tcolor: #fff;\n\t\tpadding: 5px 20px;\n\t\tfont-size: 18px;\n\t\tright: 0;\n\t\ttop: 0px;\n\t\tposition: absolute;\n\t\tz-index: 999999;\n\t\tcursor: pointer;\n\t\tfloat: right;\n\t\theight: 100%;\n\t}\n\n\t.openbtn span {\n\t\tfont-size: 20px;\n\t\tdisplay: block;\n\t\theight: auto;\n\t\twidth: auto;\n\t\ttext-align: center;\n\t\tposition: absolute;\n\t\tleft: 50%;\n\t\ttop: 50%;\n\t\ttransform: translate(-50%, -50%) rotate(-90deg);\n\t\tmargin-top: -55px;\n\t\tletter-spacing: 30px;\n\t}\n\t#main_cont {\n\t\ttransition: padding-left .5s;\n\t}\n\n\t.sid_inr {\n\t\tpadding-left: 25px;\n\t}\n\n</style>\n<div *ngIf=\"isDevice\">\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"/assets/css/tablet.css\">\n</div>\n<div #shell>\n\t<div *ngIf=\"user && (!isConnected || isOffline) && !publicProgram\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\">*** OFFLINE MODE ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"!user && (!isConnected || isOffline) && !publicProgram\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\">*** PLEASE LOGIN ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"status\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\">*** {{ status.message }} ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"fullScreen\">\n\t\t<router-outlet name=\"jobboardfsoutlet\"></router-outlet>\n\t</div>\n\t<div [ngClass]=\"['container-fluid', fullScreen ? 'hideThis' : '']\" [style.font-size.px]=\"fontSize\">\n\t\t<div class=\"dontPrint\">\n\t\t\t<navbar-main style=\"width: 100%\" tourAnchor=\"navBarMain\" #navBarMain [logo]=\"logo\" [navTabs]=\"navTabs\" [fontSize]=\"fontSize\" [publicProgram]=\"publicProgram\"></navbar-main>\n\t\t</div>\n\t\t<ng-template ngbModalContainer></ng-template>\n\t\t<div class=\"row\">\n\t\t\t<div id=\"navSid\" *ngIf=\"showNavbarModule\" [ngClass]=\"['dontPrint', windowSizeWidth > 1200 && collapsableMenu ? 'navSidbar' : 'col-xl-1']\" [style.width]=\"windowSizeWidth > 1200 && collapsableMenu ? 40 + 'px' : 100 + '%'\" [style.margin-top.px]=\"windowSizeWidth > 1200 && collapsableMenu ? navbarMainHeight + statusHeight + connectedHeight : 0\" >\n\t\t\t\t<div class=\"openbtn\" *ngIf=\"windowSizeWidth > 1200 && collapsableMenu\" (mouseenter)=\"openNav()\"><span>MENU</span></div>\n\t\t\t\t<div [ngClass]=\"windowSizeWidth > 1200 && collapsableMenu ? 'sid_inr' : ''\">\n\t\t\t\t\t<navbar-module #navBarModule tourAnchor=\"navBarModule\" [sideNavWidth]=\"windowSizeWidth > 1200 && collapsableMenu ? '90%' : 'auto'\" [sideNavHeight]=\"windowSizeWidth > 1200 && collapsableMenu ? windowSizeHeight - navbarMainHeight - statusHeight - connectedHeight - (showNavigationMenu ? (54 + getNavbarModuleHeight()) : 0) - ((!isDevice || (isDevice && showNavigationMenu)) ? 20 : 0) : ''\"></navbar-module>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div [id]=\"windowSizeWidth > 1200 ? 'main_cont' : 'main_cont_mobile'\" [ngClass]=\"[windowSizeWidth > 1200 && collapsableMenu ? 'col-xl-12' : 'col-xl-11']\" [style.padding-left]=\"windowSizeWidth > 1200 && collapsableMenu && showNavbarModule ? 55 + 'px' : null\" [style.padding]=\"((isDevice && windowSizeWidth <= 1200) || !showNavbarModule) ? 0 + 'px' : null\" (mouseenter)=\"windowSizeWidth > 1200 && collapsableMenu && showNavbarModule ? closeNav() : null\">\n\t\t\t\t<div style=\"-webkit-overflow-scrolling: touch\" [style.padding-top.px]=\"publicProgram ? 0 : 15\" [style.overflow-y]=\"(isDevice && !showNavigationMenu) ? 'initial' : 'scroll'\" [style.height.px]=\"windowSizeHeight - ((isDevice && windowSizeWidth <= 1200) && !showNavigationMenu ? (getNavbarModuleHeight() > 100 ? 0 : getNavbarModuleHeight()) : 0) - navbarMainHeight - (!publicProgram ? statusHeight : 0) - (!publicProgram ? connectedHeight : 0) - (isDevice && showNavigationMenu ? (54 + (getNavbarModuleHeight() > 100 ? 0 : getNavbarModuleHeight())) : 0) - ((!isDevice || (isDevice && showNavigationMenu)) ? 20 : 0)\" class=\"removeOverflow\">\n\t\t\t\t\t<router-outlet></router-outlet>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div *ngIf=\"isDevice && showNavigationMenu\" style=\"height: 54px; background-color: lightgray; margin-left: -15px; margin-right: -15px;\" class=\"dontPrint\">\n\t\t\t<table style=\"width: 100%\">\n\t\t\t\t<tr>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushBackButton()\"><i class=\"fa fa-arrow-left\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushReloadButton()\"><i class=\"fa fa-refresh\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushForwardButton()\"><i class=\"fa fa-arrow-right\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\t\t</div>\n\t\t<div *ngIf=\"!isDevice\" style=\"text-align: center; height: 20px; font-style: italic; font-weight: bold; background-color: lightgray; margin-left: -15px; margin-right: -15px;\">&copy; {{year}} RESOLVEIO ALL RIGHTS RESERVED</div>\n\t</div>\n</div>\n", styles: ["\n\t:root {\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n\t:host /deep/ .btn-warning {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-color);\n\t\tborder-color: var(--warning-color);\n\t}\n\t:host /deep/ .btn-warning:focus, .btn-warning.focus {\n\t\tbox-shadow: var(--warning-shadow-color);\n\t}\n\t:host /deep/ .btn-warning:hover {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-hover-color);\n\t\tborder-color: var(--warning-hover-color);\n\t}\n\n\t:host /deep/ .btn-success {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-color);\n\t\tborder-color: var(--success-color);\n\t}\n\t:host /deep/ .btn-success:focus, .btn-success.focus {\n\t\tbox-shadow: var(--success-shadow-color);\n\t}\n\t:host /deep/ .btn-success:hover {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-hover-color);\n\t\tborder-color: var(--success-hover-color);\n\t}\n\n\t:host /deep/ .btn-danger {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-color);\n\t\tborder-color: var(--danger-color);\n\t}\n\t:host /deep/ .btn-danger:focus, .btn-danger.focus {\n\t\tbox-shadow: var(--danger-shadow-color);\n\t}\n\t:host /deep/ .btn-danger:hover {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-hover-color);\n\t\tborder-color: var(--danger-hover-color);\n\t}\n\n\t:host /deep/ .btn-info {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-color);\n\t\tborder-color: var(--info-color);\n\t}\n\t:host /deep/ .btn-info:focus, .btn-info.focus {\n\t\tbox-shadow: var(--info-shadow-color);\n\t}\n\t:host /deep/ .btn-info:hover {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-hover-color);\n\t\tborder-color: var(--info-hover-color);\n\t}\n\n\t:host /deep/ .btn-primary {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-color);\n\t\tborder-color: var(--primary-color);\n\t}\n\t:host /deep/ .btn-primary:focus, .btn-primary.focus {\n\t\tbox-shadow: var(--primary-shadow-color);\n\t}\n\t:host /deep/ .btn-primary:hover {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-hover-color);\n\t\tborder-color: var(--primary-hover-color);\n\t}\n\n\t:host /deep/ .btn-secondary {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-color);\n\t\tborder-color: var(--secondary-color);\n\t}\n\t:host /deep/ .btn-secondary:focus, .btn-secondary.focus {\n\t\tbox-shadow: var(--secondary-shadow-color);\n\t}\n\t:host /deep/ .btn-secondary:hover {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-hover-color);\n\t\tborder-color: var(--secondary-hover-color);\n\t}\n\t\n \t@media print {\n\t \t.dontPrint * {\n\t\t \tdisplay: none !important;\n\t \t}\n\n\t\t.myDivToPrintCs {\n\t\t\tbackground-color: white;\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t\tfont-size: 12px;\n\t\t\tline-height: 12px;\n\t\t\tpage-break-after: avoid;\n\t\t\tdisplay: initial;\n\t\t}\n\n\t\t.removeOverflow {\n\t\t\toverflow-y: hidden !important; \n\t\t\theight: 100% !important;\n\t\t}\n \t}\n\n \t.hideThis {\n\t\tdisplay: none !important;\n\t}\n\n\t.navSidbar {\n\t\twidth: 0px;\n\t\tposition: fixed;\n\t\tz-index: 1;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tbackground-color: #343a40;\n\t\toverflow: hidden;\n\t\ttransition: 0.5s;\n\t\tpadding-top: 0px;\n\t}\n\n\t.navSidbar a {\n\t\tpadding: 8px 8px 8px 32px;\n\t\ttext-decoration: none;\n\t\tfont-size: 25px;\n\t\tcolor: #818181;\n\t\tdisplay: block;\n\t\ttransition: 0.3s;\n\t}\n\n\t.navSidbar a:hover {\n\t\tcolor: #f1f1f1;\n\t}\n\n\t.openbtn {\n\t\tbackground-color: #343a40;\n\t\tborder: none;\n\t\tcolor: #fff;\n\t\tpadding: 5px 20px;\n\t\tfont-size: 18px;\n\t\tright: 0;\n\t\ttop: 0px;\n\t\tposition: absolute;\n\t\tz-index: 999999;\n\t\tcursor: pointer;\n\t\tfloat: right;\n\t\theight: 100%;\n\t}\n\n\t.openbtn span {\n\t\tfont-size: 20px;\n\t\tdisplay: block;\n\t\theight: auto;\n\t\twidth: auto;\n\t\ttext-align: center;\n\t\tposition: absolute;\n\t\tleft: 50%;\n\t\ttop: 50%;\n\t\ttransform: translate(-50%, -50%) rotate(-90deg);\n\t\tmargin-top: -55px;\n\t\tletter-spacing: 30px;\n\t}\n\t#main_cont {\n\t\ttransition: padding-left .5s;\n\t}\n\n\t.sid_inr {\n\t\tpadding-left: 25px;\n\t}\n\n"], dependencies: [{ kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NavbarMainComponent, selector: "navbar-main", inputs: ["logo", "navTabs", "fontSize", "publicProgram"] }, { kind: "component", type: NavbarModuleComponent, selector: "navbar-module", inputs: ["sideNavHeight", "sideNavWidth"] }] });
5238
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CoreComponent, decorators: [{
5264
5239
  type: Component,
5265
- args: [{ providers: [ProviderService], selector: 'resolveio-client-lib-core', template: "<style>\n\t:root {\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n\t:host /deep/ .btn-warning {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-color);\n\t\tborder-color: var(--warning-color);\n\t}\n\t:host /deep/ .btn-warning:focus, .btn-warning.focus {\n\t\tbox-shadow: var(--warning-shadow-color);\n\t}\n\t:host /deep/ .btn-warning:hover {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-hover-color);\n\t\tborder-color: var(--warning-hover-color);\n\t}\n\n\t:host /deep/ .btn-success {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-color);\n\t\tborder-color: var(--success-color);\n\t}\n\t:host /deep/ .btn-success:focus, .btn-success.focus {\n\t\tbox-shadow: var(--success-shadow-color);\n\t}\n\t:host /deep/ .btn-success:hover {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-hover-color);\n\t\tborder-color: var(--success-hover-color);\n\t}\n\n\t:host /deep/ .btn-danger {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-color);\n\t\tborder-color: var(--danger-color);\n\t}\n\t:host /deep/ .btn-danger:focus, .btn-danger.focus {\n\t\tbox-shadow: var(--danger-shadow-color);\n\t}\n\t:host /deep/ .btn-danger:hover {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-hover-color);\n\t\tborder-color: var(--danger-hover-color);\n\t}\n\n\t:host /deep/ .btn-info {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-color);\n\t\tborder-color: var(--info-color);\n\t}\n\t:host /deep/ .btn-info:focus, .btn-info.focus {\n\t\tbox-shadow: var(--info-shadow-color);\n\t}\n\t:host /deep/ .btn-info:hover {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-hover-color);\n\t\tborder-color: var(--info-hover-color);\n\t}\n\n\t:host /deep/ .btn-primary {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-color);\n\t\tborder-color: var(--primary-color);\n\t}\n\t:host /deep/ .btn-primary:focus, .btn-primary.focus {\n\t\tbox-shadow: var(--primary-shadow-color);\n\t}\n\t:host /deep/ .btn-primary:hover {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-hover-color);\n\t\tborder-color: var(--primary-hover-color);\n\t}\n\n\t:host /deep/ .btn-secondary {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-color);\n\t\tborder-color: var(--secondary-color);\n\t}\n\t:host /deep/ .btn-secondary:focus, .btn-secondary.focus {\n\t\tbox-shadow: var(--secondary-shadow-color);\n\t}\n\t:host /deep/ .btn-secondary:hover {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-hover-color);\n\t\tborder-color: var(--secondary-hover-color);\n\t}\n\t\n \t@media print {\n\t \t.dontPrint * {\n\t\t \tdisplay: none !important;\n\t \t}\n\n\t\t.myDivToPrintCs {\n\t\t\tbackground-color: white;\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t\tfont-size: 12px;\n\t\t\tline-height: 12px;\n\t\t\tpage-break-after: avoid;\n\t\t\tdisplay: initial;\n\t\t}\n\n\t\t.removeOverflow {\n\t\t\toverflow-y: hidden !important; \n\t\t\theight: 100% !important;\n\t\t}\n \t}\n\n \t.hideThis {\n\t\tdisplay: none !important;\n\t}\n\n\t.navSidbar {\n\t\twidth: 0px;\n\t\tposition: fixed;\n\t\tz-index: 1;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tbackground-color: #343a40;\n\t\toverflow: hidden;\n\t\ttransition: 0.5s;\n\t\tpadding-top: 0px;\n\t}\n\n\t.navSidbar a {\n\t\tpadding: 8px 8px 8px 32px;\n\t\ttext-decoration: none;\n\t\tfont-size: 25px;\n\t\tcolor: #818181;\n\t\tdisplay: block;\n\t\ttransition: 0.3s;\n\t}\n\n\t.navSidbar a:hover {\n\t\tcolor: #f1f1f1;\n\t}\n\n\t.openbtn {\n\t\tbackground-color: #343a40;\n\t\tborder: none;\n\t\tcolor: #fff;\n\t\tpadding: 5px 20px;\n\t\tfont-size: 18px;\n\t\tright: 0;\n\t\ttop: 0px;\n\t\tposition: absolute;\n\t\tz-index: 999999;\n\t\tcursor: pointer;\n\t\tfloat: right;\n\t\theight: 100%;\n\t}\n\n\t.openbtn span {\n\t\tfont-size: 20px;\n\t\tdisplay: block;\n\t\theight: auto;\n\t\twidth: auto;\n\t\ttext-align: center;\n\t\tposition: absolute;\n\t\tleft: 50%;\n\t\ttop: 50%;\n\t\ttransform: translate(-50%, -50%) rotate(-90deg);\n\t\tmargin-top: -55px;\n\t\tletter-spacing: 30px;\n\t}\n\t#main_cont {\n\t\ttransition: padding-left .5s;\n\t}\n\n\t.sid_inr {\n\t\tpadding-left: 25px;\n\t}\n\n\t@keyframes shimmer {\n 0%, 50% {\n background-position: 120% 0;\n }\n 100% {\n background-position: -80% 0;\n }\n }\n\n .shimmer::before {\n content: \"\";\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: linear-gradient(\n -75deg,\n rgba(255, 255, 255, 0) 40%, \n rgba(255, 255, 255, 0.7) 50%, \n rgba(255, 255, 255, 0) 60%\n );\n background-size: 200% 100%;\n animation: shimmer 5s linear infinite;\n animation-fill-mode: forwards;\n z-index: 11;\n }\n</style>\n<div *ngIf=\"isDevice\">\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"/assets/css/tablet.css\">\n</div>\n<div #shell>\n\t<div *ngIf=\"user && (!isConnected || isOffline) && !publicProgram\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\" class=\"shimmer\">*** OFFLINE MODE ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"!user && (!isConnected || isOffline) && !publicProgram\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\" class=\"shimmer\">*** PLEASE LOGIN ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"status\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\" class=\"shimmer\">*** {{ status.message }} ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"fullScreen\">\n\t\t<router-outlet name=\"jobboardfsoutlet\"></router-outlet>\n\t</div>\n\t<div [ngClass]=\"['container-fluid', fullScreen ? 'hideThis' : '']\" [style.font-size.px]=\"fontSize\">\n\t\t<div class=\"dontPrint\">\n\t\t\t<navbar-main style=\"width: 100%\" tourAnchor=\"navBarMain\" #navBarMain [logo]=\"logo\" [navTabs]=\"navTabs\" [fontSize]=\"fontSize\" [publicProgram]=\"publicProgram\"></navbar-main>\n\t\t</div>\n\t\t<ng-template ngbModalContainer></ng-template>\n\t\t<div class=\"row\">\n\t\t\t<div id=\"navSid\" *ngIf=\"showNavbarModule\" [ngClass]=\"['dontPrint', windowSizeWidth > 1200 && collapsableMenu ? 'navSidbar' : 'col-xl-1']\" [style.width]=\"windowSizeWidth > 1200 && collapsableMenu ? 40 + 'px' : 100 + '%'\" [style.margin-top.px]=\"windowSizeWidth > 1200 && collapsableMenu ? navbarMainHeight + statusHeight + connectedHeight : 0\" >\n\t\t\t\t<div class=\"openbtn\" *ngIf=\"windowSizeWidth > 1200 && collapsableMenu\" (mouseenter)=\"openNav()\"><span>MENU</span></div>\n\t\t\t\t<div [ngClass]=\"windowSizeWidth > 1200 && collapsableMenu ? 'sid_inr' : ''\">\n\t\t\t\t\t<navbar-module #navBarModule tourAnchor=\"navBarModule\" [sideNavWidth]=\"windowSizeWidth > 1200 && collapsableMenu ? '90%' : 'auto'\" [sideNavHeight]=\"windowSizeWidth > 1200 && collapsableMenu ? windowSizeHeight - navbarMainHeight - statusHeight - connectedHeight - (showNavigationMenu ? (54 + getNavbarModuleHeight()) : 0) - ((!isDevice || (isDevice && showNavigationMenu)) ? 20 : 0) : ''\"></navbar-module>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div [id]=\"windowSizeWidth > 1200 ? 'main_cont' : 'main_cont_mobile'\" [ngClass]=\"[windowSizeWidth > 1200 && collapsableMenu ? 'col-xl-12' : 'col-xl-11']\" [style.padding-left]=\"windowSizeWidth > 1200 && collapsableMenu && showNavbarModule ? 45 + 'px' : null\" [style.padding]=\"((isDevice && windowSizeWidth <= 1200) || !showNavbarModule) ? 0 + 'px' : null\" (mouseenter)=\"windowSizeWidth > 1200 && collapsableMenu && showNavbarModule ? closeNav() : null\" style=\"padding-right: 5px\">\n\t\t\t\t<div style=\"-webkit-overflow-scrolling: touch\" [style.overflow-y]=\"(isDevice && !showNavigationMenu) ? 'initial' : 'scroll'\" [style.height.px]=\"windowSizeHeight - ((isDevice && windowSizeWidth <= 1200) && !showNavigationMenu ? (getNavbarModuleHeight() > 100 ? 0 : getNavbarModuleHeight()) : 0) - navbarMainHeight - (!publicProgram ? statusHeight : 0) - (!publicProgram ? connectedHeight : 0) - (isDevice && showNavigationMenu ? (54 + (getNavbarModuleHeight() > 100 ? 0 : getNavbarModuleHeight())) : 0) - ((!isDevice || (isDevice && showNavigationMenu)) ? 20 : 0)\" class=\"removeOverflow\">\n\t\t\t\t\t<router-outlet></router-outlet>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div *ngIf=\"isDevice && showNavigationMenu\" style=\"height: 54px; background-color: lightgray; margin-left: -15px; margin-right: -15px;\" class=\"dontPrint\">\n\t\t\t<table style=\"width: 100%\">\n\t\t\t\t<tr>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushBackButton()\"><i class=\"fa fa-arrow-left\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushReloadButton()\"><i class=\"fa fa-refresh\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushForwardButton()\"><i class=\"fa fa-arrow-right\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\t\t</div>\n\t\t<div *ngIf=\"!isDevice\" style=\"text-align: center; height: 20px; font-style: italic; font-weight: bold; background-color: lightgray; margin-left: -15px; margin-right: -15px;\">&copy; {{year}} RESOLVEIO ALL RIGHTS RESERVED</div>\n\t</div>\n</div>\n" }]
5240
+ args: [{ providers: [ProviderService], selector: 'resolveio-client-lib-core', template: "<style>\n\t:root {\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n\t:host /deep/ .btn-warning {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-color);\n\t\tborder-color: var(--warning-color);\n\t}\n\t:host /deep/ .btn-warning:focus, .btn-warning.focus {\n\t\tbox-shadow: var(--warning-shadow-color);\n\t}\n\t:host /deep/ .btn-warning:hover {\n\t\tcolor: var(--warning-font-color);\n\t\tbackground-color: var(--warning-hover-color);\n\t\tborder-color: var(--warning-hover-color);\n\t}\n\n\t:host /deep/ .btn-success {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-color);\n\t\tborder-color: var(--success-color);\n\t}\n\t:host /deep/ .btn-success:focus, .btn-success.focus {\n\t\tbox-shadow: var(--success-shadow-color);\n\t}\n\t:host /deep/ .btn-success:hover {\n\t\tcolor: var(--success-font-color);\n\t\tbackground-color: var(--success-hover-color);\n\t\tborder-color: var(--success-hover-color);\n\t}\n\n\t:host /deep/ .btn-danger {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-color);\n\t\tborder-color: var(--danger-color);\n\t}\n\t:host /deep/ .btn-danger:focus, .btn-danger.focus {\n\t\tbox-shadow: var(--danger-shadow-color);\n\t}\n\t:host /deep/ .btn-danger:hover {\n\t\tcolor: var(--danger-font-color);\n\t\tbackground-color: var(--danger-hover-color);\n\t\tborder-color: var(--danger-hover-color);\n\t}\n\n\t:host /deep/ .btn-info {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-color);\n\t\tborder-color: var(--info-color);\n\t}\n\t:host /deep/ .btn-info:focus, .btn-info.focus {\n\t\tbox-shadow: var(--info-shadow-color);\n\t}\n\t:host /deep/ .btn-info:hover {\n\t\tcolor: var(--info-font-color);\n\t\tbackground-color: var(--info-hover-color);\n\t\tborder-color: var(--info-hover-color);\n\t}\n\n\t:host /deep/ .btn-primary {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-color);\n\t\tborder-color: var(--primary-color);\n\t}\n\t:host /deep/ .btn-primary:focus, .btn-primary.focus {\n\t\tbox-shadow: var(--primary-shadow-color);\n\t}\n\t:host /deep/ .btn-primary:hover {\n\t\tcolor: var(--primary-font-color);\n\t\tbackground-color: var(--primary-hover-color);\n\t\tborder-color: var(--primary-hover-color);\n\t}\n\n\t:host /deep/ .btn-secondary {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-color);\n\t\tborder-color: var(--secondary-color);\n\t}\n\t:host /deep/ .btn-secondary:focus, .btn-secondary.focus {\n\t\tbox-shadow: var(--secondary-shadow-color);\n\t}\n\t:host /deep/ .btn-secondary:hover {\n\t\tcolor: var(--secondary-font-color);\n\t\tbackground-color: var(--secondary-hover-color);\n\t\tborder-color: var(--secondary-hover-color);\n\t}\n\t\n \t@media print {\n\t \t.dontPrint * {\n\t\t \tdisplay: none !important;\n\t \t}\n\n\t\t.myDivToPrintCs {\n\t\t\tbackground-color: white;\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t\tfont-size: 12px;\n\t\t\tline-height: 12px;\n\t\t\tpage-break-after: avoid;\n\t\t\tdisplay: initial;\n\t\t}\n\n\t\t.removeOverflow {\n\t\t\toverflow-y: hidden !important; \n\t\t\theight: 100% !important;\n\t\t}\n \t}\n\n \t.hideThis {\n\t\tdisplay: none !important;\n\t}\n\n\t.navSidbar {\n\t\twidth: 0px;\n\t\tposition: fixed;\n\t\tz-index: 1;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tbackground-color: #343a40;\n\t\toverflow: hidden;\n\t\ttransition: 0.5s;\n\t\tpadding-top: 0px;\n\t}\n\n\t.navSidbar a {\n\t\tpadding: 8px 8px 8px 32px;\n\t\ttext-decoration: none;\n\t\tfont-size: 25px;\n\t\tcolor: #818181;\n\t\tdisplay: block;\n\t\ttransition: 0.3s;\n\t}\n\n\t.navSidbar a:hover {\n\t\tcolor: #f1f1f1;\n\t}\n\n\t.openbtn {\n\t\tbackground-color: #343a40;\n\t\tborder: none;\n\t\tcolor: #fff;\n\t\tpadding: 5px 20px;\n\t\tfont-size: 18px;\n\t\tright: 0;\n\t\ttop: 0px;\n\t\tposition: absolute;\n\t\tz-index: 999999;\n\t\tcursor: pointer;\n\t\tfloat: right;\n\t\theight: 100%;\n\t}\n\n\t.openbtn span {\n\t\tfont-size: 20px;\n\t\tdisplay: block;\n\t\theight: auto;\n\t\twidth: auto;\n\t\ttext-align: center;\n\t\tposition: absolute;\n\t\tleft: 50%;\n\t\ttop: 50%;\n\t\ttransform: translate(-50%, -50%) rotate(-90deg);\n\t\tmargin-top: -55px;\n\t\tletter-spacing: 30px;\n\t}\n\t#main_cont {\n\t\ttransition: padding-left .5s;\n\t}\n\n\t.sid_inr {\n\t\tpadding-left: 25px;\n\t}\n\n</style>\n<div *ngIf=\"isDevice\">\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"/assets/css/tablet.css\">\n</div>\n<div #shell>\n\t<div *ngIf=\"user && (!isConnected || isOffline) && !publicProgram\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\">*** OFFLINE MODE ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"!user && (!isConnected || isOffline) && !publicProgram\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\">*** PLEASE LOGIN ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"status\">\n\t\t<div style=\"height: 40px; text-align: center; vertical-align: middle; background-color: red; color: white;\">\n\t\t\t<div style=\"padding-top: 9px; padding-bottom: 9px;\">*** {{ status.message }} ***</div>\n\t\t</div>\n\t</div>\n\t<div *ngIf=\"fullScreen\">\n\t\t<router-outlet name=\"jobboardfsoutlet\"></router-outlet>\n\t</div>\n\t<div [ngClass]=\"['container-fluid', fullScreen ? 'hideThis' : '']\" [style.font-size.px]=\"fontSize\">\n\t\t<div class=\"dontPrint\">\n\t\t\t<navbar-main style=\"width: 100%\" tourAnchor=\"navBarMain\" #navBarMain [logo]=\"logo\" [navTabs]=\"navTabs\" [fontSize]=\"fontSize\" [publicProgram]=\"publicProgram\"></navbar-main>\n\t\t</div>\n\t\t<ng-template ngbModalContainer></ng-template>\n\t\t<div class=\"row\">\n\t\t\t<div id=\"navSid\" *ngIf=\"showNavbarModule\" [ngClass]=\"['dontPrint', windowSizeWidth > 1200 && collapsableMenu ? 'navSidbar' : 'col-xl-1']\" [style.width]=\"windowSizeWidth > 1200 && collapsableMenu ? 40 + 'px' : 100 + '%'\" [style.margin-top.px]=\"windowSizeWidth > 1200 && collapsableMenu ? navbarMainHeight + statusHeight + connectedHeight : 0\" >\n\t\t\t\t<div class=\"openbtn\" *ngIf=\"windowSizeWidth > 1200 && collapsableMenu\" (mouseenter)=\"openNav()\"><span>MENU</span></div>\n\t\t\t\t<div [ngClass]=\"windowSizeWidth > 1200 && collapsableMenu ? 'sid_inr' : ''\">\n\t\t\t\t\t<navbar-module #navBarModule tourAnchor=\"navBarModule\" [sideNavWidth]=\"windowSizeWidth > 1200 && collapsableMenu ? '90%' : 'auto'\" [sideNavHeight]=\"windowSizeWidth > 1200 && collapsableMenu ? windowSizeHeight - navbarMainHeight - statusHeight - connectedHeight - (showNavigationMenu ? (54 + getNavbarModuleHeight()) : 0) - ((!isDevice || (isDevice && showNavigationMenu)) ? 20 : 0) : ''\"></navbar-module>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div [id]=\"windowSizeWidth > 1200 ? 'main_cont' : 'main_cont_mobile'\" [ngClass]=\"[windowSizeWidth > 1200 && collapsableMenu ? 'col-xl-12' : 'col-xl-11']\" [style.padding-left]=\"windowSizeWidth > 1200 && collapsableMenu && showNavbarModule ? 55 + 'px' : null\" [style.padding]=\"((isDevice && windowSizeWidth <= 1200) || !showNavbarModule) ? 0 + 'px' : null\" (mouseenter)=\"windowSizeWidth > 1200 && collapsableMenu && showNavbarModule ? closeNav() : null\">\n\t\t\t\t<div style=\"-webkit-overflow-scrolling: touch\" [style.padding-top.px]=\"publicProgram ? 0 : 15\" [style.overflow-y]=\"(isDevice && !showNavigationMenu) ? 'initial' : 'scroll'\" [style.height.px]=\"windowSizeHeight - ((isDevice && windowSizeWidth <= 1200) && !showNavigationMenu ? (getNavbarModuleHeight() > 100 ? 0 : getNavbarModuleHeight()) : 0) - navbarMainHeight - (!publicProgram ? statusHeight : 0) - (!publicProgram ? connectedHeight : 0) - (isDevice && showNavigationMenu ? (54 + (getNavbarModuleHeight() > 100 ? 0 : getNavbarModuleHeight())) : 0) - ((!isDevice || (isDevice && showNavigationMenu)) ? 20 : 0)\" class=\"removeOverflow\">\n\t\t\t\t\t<router-outlet></router-outlet>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div *ngIf=\"isDevice && showNavigationMenu\" style=\"height: 54px; background-color: lightgray; margin-left: -15px; margin-right: -15px;\" class=\"dontPrint\">\n\t\t\t<table style=\"width: 100%\">\n\t\t\t\t<tr>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushBackButton()\"><i class=\"fa fa-arrow-left\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushReloadButton()\"><i class=\"fa fa-refresh\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td style=\"text-align: center\">\n\t\t\t\t\t\t<button type=\"button\" class=\"btn\" style=\"background-color: lightgray\" (click)=\"onPushForwardButton()\"><i class=\"fa fa-arrow-right\" style=\"color: black; font-size: 20px\"></i></button>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\t\t</div>\n\t\t<div *ngIf=\"!isDevice\" style=\"text-align: center; height: 20px; font-style: italic; font-weight: bold; background-color: lightgray; margin-left: -15px; margin-right: -15px;\">&copy; {{year}} RESOLVEIO ALL RIGHTS RESERVED</div>\n\t</div>\n</div>\n" }]
5266
5241
  }], ctorParameters: function () { return [{ type: i1$5.DeviceDetectorService }, { type: DialogService }, { type: ResizeService }, { type: ProviderService }, { type: OfflineManagerService }, { type: i1.LocalStorageService }, { type: AuthService }, { type: AuthPermissionService }]; }, propDecorators: { environment: [{
5267
5242
  type: Input,
5268
5243
  args: ['environment']
@@ -5320,9 +5295,9 @@ class JsonParsePipe {
5320
5295
  return JSON.stringify(parse, null, 2);
5321
5296
  }
5322
5297
  }
5323
- JsonParsePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: JsonParsePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5324
- JsonParsePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: JsonParsePipe, name: "jsonParse", pure: false });
5325
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: JsonParsePipe, decorators: [{
5298
+ JsonParsePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: JsonParsePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5299
+ JsonParsePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: JsonParsePipe, name: "jsonParse", pure: false });
5300
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: JsonParsePipe, decorators: [{
5326
5301
  type: Pipe,
5327
5302
  args: [{
5328
5303
  name: 'jsonParse',
@@ -5530,170 +5505,13 @@ class LoggerComponent extends BaseComponent {
5530
5505
  }, () => { });
5531
5506
  }
5532
5507
  }
5533
- LoggerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: LoggerComponent, deps: [{ token: ProviderService }, { token: DialogService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
5534
- LoggerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: LoggerComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n\t.label-accordion {\n\t\tfont-weight: bold;\n\t\tcolor: black;\n\t\tmargin-bottom: 0px;\n\t}\n\tngb-accordion {\n\t\twidth: 100%;\n\t}\n\t.hoverThis:hover {\n\t\tbackground: lightblue;\n\t\tcursor: pointer;\n\t}\n\t\n\t.fa-plus {\n\t\tcolor: black;\n\t}\n\t.fa-minus {\n\t\tcolor: black;\n\t}\n\t\n\t.selected {\n\t\tbackground-color: orange;\n\t}\n\t.selected:hover {\n\t\tcursor: pointer;\n\t}\n\t.card {\n\t\twidth: 100%;\n\t}\n</style>\n\n<div class=\"row\">\n\t<div class=\"col-lg-12\">\n\t\t<div class=\"card\">\n\t\t\t<div class=\"card-header\"><b>Filters</b></div>\n\t\t\t<div class=\"card-body\">\n\t\t\t\t<div class=\"row\">\n\t\t\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t\t\t<responsive-button-group collapseSize=\"900\">\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') && selectedTypes.includes('document') && selectedTypes.includes('query') && selectedTypes.includes('client-request') && selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('all')\">All</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('error')\">Errors</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('document') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('document')\">Document</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('query') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('query')\">Query</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('queryResponse') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('queryResponse')\">Query Response</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-request') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-request')\">Client Requests</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-response')\">Client Responses</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('callMethodInternal') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('callMethodInternal')\">Call Method Internal</button>\n\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-danger\" (click)=\"removeAllLogs()\">REMOVE ALL LOGS</button>\n\t\t\t\t\t\t</responsive-button-group>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">User</label>\n\t\t\t\t\t\t<ng-select [(ngModel)]=\"user\" (change)=\"getLogData()\" placeholder=\"Select User\">\n\t\t\t\t\t\t\t<ng-option *ngFor=\"let user of users\" [value]=\"user.fullname\">{{user.fullname}}</ng-option>\n\t\t\t\t\t\t</ng-select>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Collection</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"collection\" (change)=\"getLogData()\" placeholder=\"Input Colls Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Method</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"method\" (change)=\"getLogData()\" placeholder=\"Input Methods Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Route</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"route\" (change)=\"getLogData()\" placeholder=\"Input Routes Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Document</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"id_document\" (change)=\"getLogData()\" placeholder=\"Input Ids Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date Start</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateStartElem\" ngbDatepicker #dStart=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dStart.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time Start</label>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeStartElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date End</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateEndElem\" ngbDatepicker #dEnd=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dEnd.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time End</label><br>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeEndElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n<div class=\"row\">\n\t<div class=\"col-lg-8\">\n\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t<option value=\"10\">10</option>\n\t\t\t<option value=\"25\">25</option>\n\t\t\t<option value=\"50\">50</option>\n\t\t\t<option value=\"100\">100</option>\n\t\t\t<option value=\"250\">250</option>\n\t\t\t<option value=\"500\">500</option>\n\t\t\t<option value=\"1000\">1000</option>\n\t\t\t<option value=\"5000\">5000</option>\n\t\t</select>\n\t</div>\n\t<div class=\"col-lg-4\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<ngb-accordion #acc=\"ngbAccordion\" activeIds=\"\">\n\t\t<ngb-panel *ngFor=\"let log of logs; let i = index\" [id]=\"'log_' + i\">\n\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t<div> \n\t\t\t\t\t<label class=\"label-accordion\" style=\"width: 90%; height: 22px\">\n\t\t\t\t\t\t<strong class=\"pull-left\">Type: {{ log.type }}{{log.method ? ' - Method: ' + log.method : '' }}{{log.collection ? ' - Collection: ' + log.collection : '' }}{{log.user ? ' - User: ' + log.user : '' }}{{log.route ? ' - Route: ' + log.route : '' }}{{log.id_document ? ' - id_document: ' + log.id_document : '' }}{{log.messageId ? ' - messageId: ' + log.messageId : '' }}</strong>\n\t\t\t\t\t\t<p class=\"pull-right\">{{ log.createdAt | date : 'medium' }}</p>\n\t\t\t\t\t</label>\n\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('log_' + i)\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('log_' + i)\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t<div *ngIf=\"log.payload\">\n\t\t\t\t\t<pre>{{ log.payload | jsonParse }}</pre>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"!log.payload\">\n\t\t\t\t\tNo Data\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</ngb-panel>\n\t</ngb-accordion>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<div class=\"col-lg-4\">\n\t\t<div class=\"row\"> \n\t\t\t<div class=\"col-lg-8\">\n\t\t\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t\t\t<option value=\"10\">10</option>\n\t\t\t\t\t<option value=\"25\">25</option>\n\t\t\t\t\t<option value=\"50\">50</option>\n\t\t\t\t\t<option value=\"100\">100</option>\n\t\t\t\t\t<option value=\"250\">250</option>\n\t\t\t\t\t<option value=\"500\">500</option>\n\t\t\t\t\t<option value=\"1000\">1000</option>\n\t\t\t\t\t<option value=\"5000\">5000</option>\n\t\t\t\t</select>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t<div class=\"col-lg-8\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>", styles: ["\n\t.label-accordion {\n\t\tfont-weight: bold;\n\t\tcolor: black;\n\t\tmargin-bottom: 0px;\n\t}\n\tngb-accordion {\n\t\twidth: 100%;\n\t}\n\t.hoverThis:hover {\n\t\tbackground: lightblue;\n\t\tcursor: pointer;\n\t}\n\t\n\t.fa-plus {\n\t\tcolor: black;\n\t}\n\t.fa-minus {\n\t\tcolor: black;\n\t}\n\t\n\t.selected {\n\t\tbackground-color: orange;\n\t}\n\t.selected:hover {\n\t\tcursor: pointer;\n\t}\n\t.card {\n\t\twidth: 100%;\n\t}\n"], dependencies: [{ kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "directive", type: i1$3.NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["autoClose", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget", "weekdays", "disabled"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }, { kind: "component", type: i1$3.NgbPagination, selector: "ngb-pagination", inputs: ["disabled", "boundaryLinks", "directionLinks", "ellipses", "rotate", "collectionSize", "maxSize", "page", "pageSize", "size"], outputs: ["pageChange"] }, { kind: "component", type: i1$3.NgbTimepicker, selector: "ngb-timepicker", inputs: ["meridian", "spinners", "seconds", "hourStep", "minuteStep", "secondStep", "readonlyInputs", "size"] }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "component", type: i4$1.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "component", type: i4$1.NgOptionComponent, selector: "ng-option", inputs: ["value", "disabled"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: JsonParsePipe, name: "jsonParse" }, { kind: "pipe", type: i7.DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5535
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: LoggerComponent, decorators: [{
5508
+ LoggerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LoggerComponent, deps: [{ token: ProviderService }, { token: DialogService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
5509
+ LoggerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: LoggerComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n\t.label-accordion {\n\t\tfont-weight: bold;\n\t\tcolor: black;\n\t\tmargin-bottom: 0px;\n\t}\n\tngb-accordion {\n\t\twidth: 100%;\n\t}\n\t.hoverThis:hover {\n\t\tbackground: lightblue;\n\t\tcursor: pointer;\n\t}\n\t\n\t.fa-plus {\n\t\tcolor: black;\n\t}\n\t.fa-minus {\n\t\tcolor: black;\n\t}\n\t\n\t.selected {\n\t\tbackground-color: orange;\n\t}\n\t.selected:hover {\n\t\tcursor: pointer;\n\t}\n\t.card {\n\t\twidth: 100%;\n\t}\n</style>\n\n<div class=\"row\">\n\t<div class=\"col-lg-12\">\n\t\t<div class=\"card\">\n\t\t\t<div class=\"card-header\"><b>Filters</b></div>\n\t\t\t<div class=\"card-body\">\n\t\t\t\t<div class=\"row\">\n\t\t\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t\t\t<responsive-button-group collapseSize=\"900\">\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') && selectedTypes.includes('document') && selectedTypes.includes('query') && selectedTypes.includes('client-request') && selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('all')\">All</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('error')\">Errors</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('document') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('document')\">Document</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('query') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('query')\">Query</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('queryResponse') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('queryResponse')\">Query Response</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-request') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-request')\">Client Requests</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-response')\">Client Responses</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('callMethodInternal') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('callMethodInternal')\">Call Method Internal</button>\n\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-danger\" (click)=\"removeAllLogs()\">REMOVE ALL LOGS</button>\n\t\t\t\t\t\t</responsive-button-group>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">User</label>\n\t\t\t\t\t\t<ng-select [(ngModel)]=\"user\" (change)=\"getLogData()\" placeholder=\"Select User\">\n\t\t\t\t\t\t\t<ng-option *ngFor=\"let user of users\" [value]=\"user.fullname\">{{user.fullname}}</ng-option>\n\t\t\t\t\t\t</ng-select>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Collection</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"collection\" (change)=\"getLogData()\" placeholder=\"Input Colls Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Method</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"method\" (change)=\"getLogData()\" placeholder=\"Input Methods Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Route</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"route\" (change)=\"getLogData()\" placeholder=\"Input Routes Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Document</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"id_document\" (change)=\"getLogData()\" placeholder=\"Input Ids Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date Start</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateStartElem\" ngbDatepicker #dStart=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dStart.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time Start</label>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeStartElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date End</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateEndElem\" ngbDatepicker #dEnd=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dEnd.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time End</label><br>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeEndElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n<div class=\"row\">\n\t<div class=\"col-lg-8\">\n\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t<option value=\"10\">10</option>\n\t\t\t<option value=\"25\">25</option>\n\t\t\t<option value=\"50\">50</option>\n\t\t\t<option value=\"100\">100</option>\n\t\t\t<option value=\"250\">250</option>\n\t\t\t<option value=\"500\">500</option>\n\t\t\t<option value=\"1000\">1000</option>\n\t\t\t<option value=\"5000\">5000</option>\n\t\t</select>\n\t</div>\n\t<div class=\"col-lg-4\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<ngb-accordion #acc=\"ngbAccordion\" activeIds=\"\">\n\t\t<ngb-panel *ngFor=\"let log of logs; let i = index\" [id]=\"'log_' + i\">\n\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t<div> \n\t\t\t\t\t<label class=\"label-accordion\" style=\"width: 90%; height: 22px\">\n\t\t\t\t\t\t<strong class=\"pull-left\">Type: {{ log.type }}{{log.method ? ' - Method: ' + log.method : '' }}{{log.collection ? ' - Collection: ' + log.collection : '' }}{{log.user ? ' - User: ' + log.user : '' }}{{log.route ? ' - Route: ' + log.route : '' }}{{log.id_document ? ' - id_document: ' + log.id_document : '' }}{{log.messageId ? ' - messageId: ' + log.messageId : '' }}</strong>\n\t\t\t\t\t\t<p class=\"pull-right\">{{ log.createdAt | date : 'medium' }}</p>\n\t\t\t\t\t</label>\n\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('log_' + i)\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('log_' + i)\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t<div *ngIf=\"log.payload\">\n\t\t\t\t\t<pre>{{ log.payload | jsonParse }}</pre>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"!log.payload\">\n\t\t\t\t\tNo Data\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</ngb-panel>\n\t</ngb-accordion>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<div class=\"col-lg-4\">\n\t\t<div class=\"row\"> \n\t\t\t<div class=\"col-lg-8\">\n\t\t\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t\t\t<option value=\"10\">10</option>\n\t\t\t\t\t<option value=\"25\">25</option>\n\t\t\t\t\t<option value=\"50\">50</option>\n\t\t\t\t\t<option value=\"100\">100</option>\n\t\t\t\t\t<option value=\"250\">250</option>\n\t\t\t\t\t<option value=\"500\">500</option>\n\t\t\t\t\t<option value=\"1000\">1000</option>\n\t\t\t\t\t<option value=\"5000\">5000</option>\n\t\t\t\t</select>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t<div class=\"col-lg-8\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>", styles: ["\n\t.label-accordion {\n\t\tfont-weight: bold;\n\t\tcolor: black;\n\t\tmargin-bottom: 0px;\n\t}\n\tngb-accordion {\n\t\twidth: 100%;\n\t}\n\t.hoverThis:hover {\n\t\tbackground: lightblue;\n\t\tcursor: pointer;\n\t}\n\t\n\t.fa-plus {\n\t\tcolor: black;\n\t}\n\t.fa-minus {\n\t\tcolor: black;\n\t}\n\t\n\t.selected {\n\t\tbackground-color: orange;\n\t}\n\t.selected:hover {\n\t\tcursor: pointer;\n\t}\n\t.card {\n\t\twidth: 100%;\n\t}\n"], dependencies: [{ kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "directive", type: i1$3.NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["autoClose", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "popperOptions", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget", "weekdays", "disabled"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }, { kind: "component", type: i1$3.NgbPagination, selector: "ngb-pagination", inputs: ["disabled", "boundaryLinks", "directionLinks", "ellipses", "rotate", "collectionSize", "maxSize", "page", "pageSize", "size"], outputs: ["pageChange"] }, { kind: "component", type: i1$3.NgbTimepicker, selector: "ngb-timepicker", inputs: ["meridian", "spinners", "seconds", "hourStep", "minuteStep", "secondStep", "readonlyInputs", "size"], exportAs: ["ngbTimepicker"] }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "component", type: i4$1.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "component", type: i4$1.NgOptionComponent, selector: "ng-option", inputs: ["value", "disabled"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: JsonParsePipe, name: "jsonParse" }, { kind: "pipe", type: i7.DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5510
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LoggerComponent, decorators: [{
5536
5511
  type: Component,
5537
- args: [{ providers: [ProviderService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<style>\n\t.label-accordion {\n\t\tfont-weight: bold;\n\t\tcolor: black;\n\t\tmargin-bottom: 0px;\n\t}\n\tngb-accordion {\n\t\twidth: 100%;\n\t}\n\t.hoverThis:hover {\n\t\tbackground: lightblue;\n\t\tcursor: pointer;\n\t}\n\t\n\t.fa-plus {\n\t\tcolor: black;\n\t}\n\t.fa-minus {\n\t\tcolor: black;\n\t}\n\t\n\t.selected {\n\t\tbackground-color: orange;\n\t}\n\t.selected:hover {\n\t\tcursor: pointer;\n\t}\n\t.card {\n\t\twidth: 100%;\n\t}\n</style>\n\n<div class=\"row\">\n\t<div class=\"col-lg-12\">\n\t\t<div class=\"card\">\n\t\t\t<div class=\"card-header\"><b>Filters</b></div>\n\t\t\t<div class=\"card-body\">\n\t\t\t\t<div class=\"row\">\n\t\t\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t\t\t<responsive-button-group collapseSize=\"900\">\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') && selectedTypes.includes('document') && selectedTypes.includes('query') && selectedTypes.includes('client-request') && selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('all')\">All</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('error')\">Errors</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('document') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('document')\">Document</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('query') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('query')\">Query</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('queryResponse') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('queryResponse')\">Query Response</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-request') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-request')\">Client Requests</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-response')\">Client Responses</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('callMethodInternal') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('callMethodInternal')\">Call Method Internal</button>\n\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-danger\" (click)=\"removeAllLogs()\">REMOVE ALL LOGS</button>\n\t\t\t\t\t\t</responsive-button-group>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">User</label>\n\t\t\t\t\t\t<ng-select [(ngModel)]=\"user\" (change)=\"getLogData()\" placeholder=\"Select User\">\n\t\t\t\t\t\t\t<ng-option *ngFor=\"let user of users\" [value]=\"user.fullname\">{{user.fullname}}</ng-option>\n\t\t\t\t\t\t</ng-select>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Collection</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"collection\" (change)=\"getLogData()\" placeholder=\"Input Colls Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Method</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"method\" (change)=\"getLogData()\" placeholder=\"Input Methods Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Route</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"route\" (change)=\"getLogData()\" placeholder=\"Input Routes Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Document</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"id_document\" (change)=\"getLogData()\" placeholder=\"Input Ids Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date Start</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateStartElem\" ngbDatepicker #dStart=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dStart.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time Start</label>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeStartElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date End</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateEndElem\" ngbDatepicker #dEnd=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dEnd.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time End</label><br>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeEndElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n<div class=\"row\">\n\t<div class=\"col-lg-8\">\n\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t<option value=\"10\">10</option>\n\t\t\t<option value=\"25\">25</option>\n\t\t\t<option value=\"50\">50</option>\n\t\t\t<option value=\"100\">100</option>\n\t\t\t<option value=\"250\">250</option>\n\t\t\t<option value=\"500\">500</option>\n\t\t\t<option value=\"1000\">1000</option>\n\t\t\t<option value=\"5000\">5000</option>\n\t\t</select>\n\t</div>\n\t<div class=\"col-lg-4\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<ngb-accordion #acc=\"ngbAccordion\" activeIds=\"\">\n\t\t<ngb-panel *ngFor=\"let log of logs; let i = index\" [id]=\"'log_' + i\">\n\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t<div> \n\t\t\t\t\t<label class=\"label-accordion\" style=\"width: 90%; height: 22px\">\n\t\t\t\t\t\t<strong class=\"pull-left\">Type: {{ log.type }}{{log.method ? ' - Method: ' + log.method : '' }}{{log.collection ? ' - Collection: ' + log.collection : '' }}{{log.user ? ' - User: ' + log.user : '' }}{{log.route ? ' - Route: ' + log.route : '' }}{{log.id_document ? ' - id_document: ' + log.id_document : '' }}{{log.messageId ? ' - messageId: ' + log.messageId : '' }}</strong>\n\t\t\t\t\t\t<p class=\"pull-right\">{{ log.createdAt | date : 'medium' }}</p>\n\t\t\t\t\t</label>\n\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('log_' + i)\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('log_' + i)\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t<div *ngIf=\"log.payload\">\n\t\t\t\t\t<pre>{{ log.payload | jsonParse }}</pre>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"!log.payload\">\n\t\t\t\t\tNo Data\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</ngb-panel>\n\t</ngb-accordion>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<div class=\"col-lg-4\">\n\t\t<div class=\"row\"> \n\t\t\t<div class=\"col-lg-8\">\n\t\t\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t\t\t<option value=\"10\">10</option>\n\t\t\t\t\t<option value=\"25\">25</option>\n\t\t\t\t\t<option value=\"50\">50</option>\n\t\t\t\t\t<option value=\"100\">100</option>\n\t\t\t\t\t<option value=\"250\">250</option>\n\t\t\t\t\t<option value=\"500\">500</option>\n\t\t\t\t\t<option value=\"1000\">1000</option>\n\t\t\t\t\t<option value=\"5000\">5000</option>\n\t\t\t\t</select>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t<div class=\"col-lg-8\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>" }]
5512
+ args: [{ providers: [ProviderService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<style>\n\t.label-accordion {\n\t\tfont-weight: bold;\n\t\tcolor: black;\n\t\tmargin-bottom: 0px;\n\t}\n\tngb-accordion {\n\t\twidth: 100%;\n\t}\n\t.hoverThis:hover {\n\t\tbackground: lightblue;\n\t\tcursor: pointer;\n\t}\n\t\n\t.fa-plus {\n\t\tcolor: black;\n\t}\n\t.fa-minus {\n\t\tcolor: black;\n\t}\n\t\n\t.selected {\n\t\tbackground-color: orange;\n\t}\n\t.selected:hover {\n\t\tcursor: pointer;\n\t}\n\t.card {\n\t\twidth: 100%;\n\t}\n</style>\n\n<div class=\"row\">\n\t<div class=\"col-lg-12\">\n\t\t<div class=\"card\">\n\t\t\t<div class=\"card-header\"><b>Filters</b></div>\n\t\t\t<div class=\"card-body\">\n\t\t\t\t<div class=\"row\">\n\t\t\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t\t\t<responsive-button-group collapseSize=\"900\">\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') && selectedTypes.includes('document') && selectedTypes.includes('query') && selectedTypes.includes('client-request') && selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('all')\">All</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('error')\">Errors</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('document') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('document')\">Document</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('query') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('query')\">Query</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('queryResponse') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('queryResponse')\">Query Response</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-request') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-request')\">Client Requests</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-response')\">Client Responses</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('callMethodInternal') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('callMethodInternal')\">Call Method Internal</button>\n\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-danger\" (click)=\"removeAllLogs()\">REMOVE ALL LOGS</button>\n\t\t\t\t\t\t</responsive-button-group>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">User</label>\n\t\t\t\t\t\t<ng-select [(ngModel)]=\"user\" (change)=\"getLogData()\" placeholder=\"Select User\">\n\t\t\t\t\t\t\t<ng-option *ngFor=\"let user of users\" [value]=\"user.fullname\">{{user.fullname}}</ng-option>\n\t\t\t\t\t\t</ng-select>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Collection</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"collection\" (change)=\"getLogData()\" placeholder=\"Input Colls Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Method</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"method\" (change)=\"getLogData()\" placeholder=\"Input Methods Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Route</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"route\" (change)=\"getLogData()\" placeholder=\"Input Routes Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Document</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"id_document\" (change)=\"getLogData()\" placeholder=\"Input Ids Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date Start</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateStartElem\" ngbDatepicker #dStart=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dStart.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time Start</label>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeStartElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date End</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateEndElem\" ngbDatepicker #dEnd=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dEnd.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time End</label><br>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeEndElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n<div class=\"row\">\n\t<div class=\"col-lg-8\">\n\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t<option value=\"10\">10</option>\n\t\t\t<option value=\"25\">25</option>\n\t\t\t<option value=\"50\">50</option>\n\t\t\t<option value=\"100\">100</option>\n\t\t\t<option value=\"250\">250</option>\n\t\t\t<option value=\"500\">500</option>\n\t\t\t<option value=\"1000\">1000</option>\n\t\t\t<option value=\"5000\">5000</option>\n\t\t</select>\n\t</div>\n\t<div class=\"col-lg-4\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<ngb-accordion #acc=\"ngbAccordion\" activeIds=\"\">\n\t\t<ngb-panel *ngFor=\"let log of logs; let i = index\" [id]=\"'log_' + i\">\n\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t<div> \n\t\t\t\t\t<label class=\"label-accordion\" style=\"width: 90%; height: 22px\">\n\t\t\t\t\t\t<strong class=\"pull-left\">Type: {{ log.type }}{{log.method ? ' - Method: ' + log.method : '' }}{{log.collection ? ' - Collection: ' + log.collection : '' }}{{log.user ? ' - User: ' + log.user : '' }}{{log.route ? ' - Route: ' + log.route : '' }}{{log.id_document ? ' - id_document: ' + log.id_document : '' }}{{log.messageId ? ' - messageId: ' + log.messageId : '' }}</strong>\n\t\t\t\t\t\t<p class=\"pull-right\">{{ log.createdAt | date : 'medium' }}</p>\n\t\t\t\t\t</label>\n\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('log_' + i)\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('log_' + i)\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t<div *ngIf=\"log.payload\">\n\t\t\t\t\t<pre>{{ log.payload | jsonParse }}</pre>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"!log.payload\">\n\t\t\t\t\tNo Data\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</ngb-panel>\n\t</ngb-accordion>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<div class=\"col-lg-4\">\n\t\t<div class=\"row\"> \n\t\t\t<div class=\"col-lg-8\">\n\t\t\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t\t\t<option value=\"10\">10</option>\n\t\t\t\t\t<option value=\"25\">25</option>\n\t\t\t\t\t<option value=\"50\">50</option>\n\t\t\t\t\t<option value=\"100\">100</option>\n\t\t\t\t\t<option value=\"250\">250</option>\n\t\t\t\t\t<option value=\"500\">500</option>\n\t\t\t\t\t<option value=\"1000\">1000</option>\n\t\t\t\t\t<option value=\"5000\">5000</option>\n\t\t\t\t</select>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t<div class=\"col-lg-8\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>" }]
5538
5513
  }], ctorParameters: function () { return [{ type: ProviderService }, { type: DialogService }, { type: i0.ChangeDetectorRef }]; } });
5539
5514
 
5540
- class AuthGuard {
5541
- constructor(_router, _auth, _ds, _account, _app, _offline, _aps, _alert) {
5542
- this._router = _router;
5543
- this._auth = _auth;
5544
- this._ds = _ds;
5545
- this._account = _account;
5546
- this._app = _app;
5547
- this._offline = _offline;
5548
- this._aps = _aps;
5549
- this._alert = _alert;
5550
- }
5551
- canActivate(route, state) {
5552
- return new Promise((resolve) => {
5553
- this._account.isInitCompleted().then(() => {
5554
- let user = this._account.getUser();
5555
- if (!user) {
5556
- user = JSON.parse(this._offline.getUser(), dateReviver);
5557
- if (user) {
5558
- this._account.setUser(user);
5559
- }
5560
- }
5561
- if (!user) {
5562
- if (navigator.onLine) {
5563
- this._auth.loginUser().then(newUser => {
5564
- this._account.isLoginCompleted().then(() => {
5565
- user = this._account.getUser();
5566
- if (!user.active) {
5567
- this._router.navigateByUrl('/home');
5568
- resolve(false);
5569
- }
5570
- else {
5571
- let pageView = state.url.replace(/\/[a-f0-9]{24}$/, '').replace(/\?.+$/, ''); //All but ID and Query String
5572
- let moduleView = pageView.replace(/([^\/]+\/?$)/, '');
5573
- if (user.roles.super_admin) {
5574
- resolve(true);
5575
- }
5576
- else {
5577
- let done = false;
5578
- while (!done && pageView.split('/').length > 2) {
5579
- if (!this.isLinkFakeRoute(pageView)) {
5580
- if (!user.roles.groups.some(a => a.views.some(b => b === pageView))) {
5581
- if (user.roles.groups.some(a => a.views.some(b => b.startsWith(moduleView) && !this.doesLinkHaveParameter(b) && !this.isLinkFakeRoute(b)))) {
5582
- let link = user.roles.groups.filter(a => a.views.some(b => b.startsWith(moduleView) && !this.doesLinkHaveParameter(b) && !this.isLinkFakeRoute(b)))[0].views.filter(a => a.startsWith(moduleView) && !this.doesLinkHaveParameter(a) && !this.isLinkFakeRoute(a))[0];
5583
- done = true;
5584
- this._router.navigateByUrl(link);
5585
- resolve(false);
5586
- }
5587
- }
5588
- else {
5589
- done = true;
5590
- resolve(true);
5591
- }
5592
- }
5593
- moduleView = moduleView.replace(/([^\/]+\/?$)/, '');
5594
- pageView = pageView.replace(/(\/[^\/]+$)/, '');
5595
- }
5596
- if (!done) {
5597
- this._router.navigateByUrl('/home');
5598
- resolve(false);
5599
- }
5600
- }
5601
- }
5602
- });
5603
- }, () => {
5604
- this._router.navigateByUrl('/home');
5605
- resolve(false);
5606
- });
5607
- }
5608
- else {
5609
- resolve(true);
5610
- }
5611
- }
5612
- else {
5613
- if (!user.active) {
5614
- this._router.navigateByUrl('/home');
5615
- resolve(false);
5616
- }
5617
- else {
5618
- let pageView = state.url.replace(/\/[a-f0-9]{24}$/, '').replace(/\?.+$/, ''); //All but ID and Query String
5619
- let moduleView = pageView.replace(/([^\/]+\/?$)/, '');
5620
- if (user.roles.super_admin) {
5621
- resolve(true);
5622
- }
5623
- else {
5624
- let done = false;
5625
- while (!done && pageView.split('/').length > 2) {
5626
- if (!this.isLinkFakeRoute(pageView)) {
5627
- if (!user.roles.groups.some(a => a.views.some(b => b === pageView))) {
5628
- if (user.roles.groups.some(a => a.views.some(b => b.startsWith(moduleView) && !this.doesLinkHaveParameter(b) && !this.isLinkFakeRoute(b)))) {
5629
- let link = user.roles.groups.filter(a => a.views.some(b => b.startsWith(moduleView) && !this.doesLinkHaveParameter(b) && !this.isLinkFakeRoute(b)))[0].views.filter(a => a.startsWith(moduleView) && !this.doesLinkHaveParameter(a) && !this.isLinkFakeRoute(a))[0];
5630
- done = true;
5631
- this._router.navigateByUrl(link);
5632
- resolve(false);
5633
- }
5634
- }
5635
- else {
5636
- done = true;
5637
- resolve(true);
5638
- }
5639
- }
5640
- moduleView = moduleView.replace(/([^\/]+\/?$)/, '');
5641
- pageView = pageView.replace(/(\/[^\/]+$)/, '');
5642
- }
5643
- if (!done) {
5644
- this._router.navigateByUrl('/home');
5645
- resolve(false);
5646
- }
5647
- }
5648
- }
5649
- }
5650
- }, () => { });
5651
- });
5652
- }
5653
- doesLinkHaveParameter(link) {
5654
- let permissions = this._aps.getAllModulePermissions();
5655
- for (let i = 0; i < permissions.length; i++) {
5656
- let permission = permissions[i];
5657
- for (let j = 0; j < permission.views.length; j++) {
5658
- let view = permission.views[j];
5659
- if (view.link === link) {
5660
- return !!view.has_parameter;
5661
- }
5662
- }
5663
- }
5664
- return false;
5665
- }
5666
- isLinkFakeRoute(link) {
5667
- let permissions = this._aps.getAllModulePermissions();
5668
- for (let i = 0; i < permissions.length; i++) {
5669
- let permission = permissions[i];
5670
- for (let j = 0; j < permission.views.length; j++) {
5671
- let view = permission.views[j];
5672
- if (view.link === link) {
5673
- return !!view.fake_route;
5674
- }
5675
- }
5676
- }
5677
- return true;
5678
- }
5679
- }
5680
- AuthGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AuthGuard, deps: [{ token: i1$2.Router }, { token: AuthService }, { token: DialogService }, { token: AccountManagerService }, { token: CoreService }, { token: OfflineManagerService }, { token: AuthPermissionService }, { token: AlertService }], target: i0.ɵɵFactoryTarget.Injectable });
5681
- AuthGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AuthGuard });
5682
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: AuthGuard, decorators: [{
5683
- type: Injectable
5684
- }], ctorParameters: function () { return [{ type: i1$2.Router }, { type: AuthService }, { type: DialogService }, { type: AccountManagerService }, { type: CoreService }, { type: OfflineManagerService }, { type: AuthPermissionService }, { type: AlertService }]; } });
5685
-
5686
- class CanDeactivateGuard {
5687
- canDeactivate(component) {
5688
- return component.canDeactivate ? component.canDeactivate() : true;
5689
- }
5690
- }
5691
- CanDeactivateGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CanDeactivateGuard, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5692
- CanDeactivateGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CanDeactivateGuard });
5693
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CanDeactivateGuard, decorators: [{
5694
- type: Injectable
5695
- }] });
5696
-
5697
5515
  function getWindow() {
5698
5516
  return window;
5699
5517
  }
@@ -5702,9 +5520,9 @@ class WindowRefService {
5702
5520
  return getWindow();
5703
5521
  }
5704
5522
  }
5705
- WindowRefService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: WindowRefService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5706
- WindowRefService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: WindowRefService });
5707
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: WindowRefService, decorators: [{
5523
+ WindowRefService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRefService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5524
+ WindowRefService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRefService });
5525
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRefService, decorators: [{
5708
5526
  type: Injectable
5709
5527
  }] });
5710
5528
 
@@ -5717,9 +5535,9 @@ class UserRoleComponent extends BaseComponent {
5717
5535
  return this._services._account.isUserInView(this.role);
5718
5536
  }
5719
5537
  }
5720
- UserRoleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserRoleComponent, deps: [{ token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
5721
- UserRoleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: UserRoleComponent, selector: "user-role", inputs: { role: "role" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: '<ng-container *ngIf="userInRole()"><ng-content></ng-content></ng-container>', isInline: true, dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
5722
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserRoleComponent, decorators: [{
5538
+ UserRoleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserRoleComponent, deps: [{ token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
5539
+ UserRoleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: UserRoleComponent, selector: "user-role", inputs: { role: "role" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: '<ng-container *ngIf="userInRole()"><ng-content></ng-content></ng-container>', isInline: true, dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
5540
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserRoleComponent, decorators: [{
5723
5541
  type: Component,
5724
5542
  args: [{
5725
5543
  providers: [ProviderService],
@@ -5732,10 +5550,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
5732
5550
 
5733
5551
  class UserRoleModule {
5734
5552
  }
5735
- UserRoleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserRoleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5736
- UserRoleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: UserRoleModule, declarations: [UserRoleComponent], imports: [CommonModule], exports: [UserRoleComponent] });
5737
- UserRoleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserRoleModule, imports: [CommonModule] });
5738
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserRoleModule, decorators: [{
5553
+ UserRoleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserRoleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5554
+ UserRoleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: UserRoleModule, declarations: [UserRoleComponent], imports: [CommonModule], exports: [UserRoleComponent] });
5555
+ UserRoleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserRoleModule, imports: [CommonModule] });
5556
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserRoleModule, decorators: [{
5739
5557
  type: NgModule,
5740
5558
  args: [{
5741
5559
  imports: [
@@ -5752,12 +5570,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
5752
5570
 
5753
5571
  class FormButtonModule {
5754
5572
  }
5755
- FormButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FormButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5756
- FormButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: FormButtonModule, declarations: [FormButtonComponent], imports: [CommonModule,
5573
+ FormButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5574
+ FormButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: FormButtonModule, declarations: [FormButtonComponent], imports: [CommonModule,
5757
5575
  NgbTooltipModule], exports: [FormButtonComponent] });
5758
- FormButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FormButtonModule, imports: [CommonModule,
5576
+ FormButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormButtonModule, imports: [CommonModule,
5759
5577
  NgbTooltipModule] });
5760
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FormButtonModule, decorators: [{
5578
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormButtonModule, decorators: [{
5761
5579
  type: NgModule,
5762
5580
  args: [{
5763
5581
  imports: [
@@ -5775,10 +5593,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
5775
5593
 
5776
5594
  class ResponsiveButtonGroupModule {
5777
5595
  }
5778
- ResponsiveButtonGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ResponsiveButtonGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5779
- ResponsiveButtonGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: ResponsiveButtonGroupModule, declarations: [ResponsiveButtonGroupComponent], imports: [CommonModule], exports: [ResponsiveButtonGroupComponent] });
5780
- ResponsiveButtonGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ResponsiveButtonGroupModule, imports: [CommonModule] });
5781
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ResponsiveButtonGroupModule, decorators: [{
5596
+ ResponsiveButtonGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ResponsiveButtonGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5597
+ ResponsiveButtonGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ResponsiveButtonGroupModule, declarations: [ResponsiveButtonGroupComponent], imports: [CommonModule], exports: [ResponsiveButtonGroupComponent] });
5598
+ ResponsiveButtonGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ResponsiveButtonGroupModule, imports: [CommonModule] });
5599
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ResponsiveButtonGroupModule, decorators: [{
5782
5600
  type: NgModule,
5783
5601
  args: [{
5784
5602
  imports: [
@@ -5795,14 +5613,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
5795
5613
 
5796
5614
  class CollapseTableModule {
5797
5615
  }
5798
- CollapseTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CollapseTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5799
- CollapseTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: CollapseTableModule, declarations: [CollapseTableComponent], imports: [FormsModule,
5616
+ CollapseTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CollapseTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5617
+ CollapseTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CollapseTableModule, declarations: [CollapseTableComponent], imports: [FormsModule,
5800
5618
  CommonModule], exports: [CollapseTableComponent] });
5801
- CollapseTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CollapseTableModule, providers: [
5619
+ CollapseTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CollapseTableModule, providers: [
5802
5620
  ResizeService
5803
5621
  ], imports: [FormsModule,
5804
5622
  CommonModule] });
5805
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CollapseTableModule, decorators: [{
5623
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CollapseTableModule, decorators: [{
5806
5624
  type: NgModule,
5807
5625
  args: [{
5808
5626
  imports: [
@@ -5857,9 +5675,9 @@ class PhonePipe {
5857
5675
  return (country + ' (' + city + ') ' + number).trim();
5858
5676
  }
5859
5677
  }
5860
- PhonePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: PhonePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5861
- PhonePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: PhonePipe, name: "phone" });
5862
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: PhonePipe, decorators: [{
5678
+ PhonePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PhonePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5679
+ PhonePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: PhonePipe, name: "phone" });
5680
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PhonePipe, decorators: [{
5863
5681
  type: Pipe,
5864
5682
  args: [{
5865
5683
  name: 'phone'
@@ -5872,9 +5690,9 @@ class ReversePipe {
5872
5690
  return value.slice(0).reverse();
5873
5691
  }
5874
5692
  }
5875
- ReversePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ReversePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5876
- ReversePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: ReversePipe, name: "reverse" });
5877
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ReversePipe, decorators: [{
5693
+ ReversePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ReversePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5694
+ ReversePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ReversePipe, name: "reverse" });
5695
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ReversePipe, decorators: [{
5878
5696
  type: Pipe,
5879
5697
  args: [{
5880
5698
  name: 'reverse'
@@ -5886,9 +5704,9 @@ class MinusCurrencyPipe {
5886
5704
  return value.charAt(0) === '-' ? '(' + value.substring(1, value.length) + ')' : value;
5887
5705
  }
5888
5706
  }
5889
- MinusCurrencyPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: MinusCurrencyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5890
- MinusCurrencyPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: MinusCurrencyPipe, name: "minusCurrency" });
5891
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: MinusCurrencyPipe, decorators: [{
5707
+ MinusCurrencyPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MinusCurrencyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5708
+ MinusCurrencyPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: MinusCurrencyPipe, name: "minusCurrency" });
5709
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MinusCurrencyPipe, decorators: [{
5892
5710
  type: Pipe,
5893
5711
  args: [{
5894
5712
  name: 'minusCurrency'
@@ -5910,9 +5728,9 @@ class DomSanitizorPipe {
5910
5728
  }
5911
5729
  }
5912
5730
  }
5913
- DomSanitizorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DomSanitizorPipe, deps: [{ token: i1$4.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
5914
- DomSanitizorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: DomSanitizorPipe, name: "safe" });
5915
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DomSanitizorPipe, decorators: [{
5731
+ DomSanitizorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DomSanitizorPipe, deps: [{ token: i1$4.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
5732
+ DomSanitizorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DomSanitizorPipe, name: "safe" });
5733
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DomSanitizorPipe, decorators: [{
5916
5734
  type: Pipe,
5917
5735
  args: [{
5918
5736
  name: 'safe'
@@ -5929,9 +5747,9 @@ class TitleCaseAndUnderscorePipe {
5929
5747
  return strArray.join(' ');
5930
5748
  }
5931
5749
  }
5932
- TitleCaseAndUnderscorePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: TitleCaseAndUnderscorePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5933
- TitleCaseAndUnderscorePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: TitleCaseAndUnderscorePipe, name: "titleCase", pure: false });
5934
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: TitleCaseAndUnderscorePipe, decorators: [{
5750
+ TitleCaseAndUnderscorePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TitleCaseAndUnderscorePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
5751
+ TitleCaseAndUnderscorePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TitleCaseAndUnderscorePipe, name: "titleCase", pure: false });
5752
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TitleCaseAndUnderscorePipe, decorators: [{
5935
5753
  type: Pipe,
5936
5754
  args: [{
5937
5755
  name: 'titleCase',
@@ -5941,8 +5759,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
5941
5759
 
5942
5760
  class PipeModule {
5943
5761
  }
5944
- PipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: PipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5945
- PipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: PipeModule, declarations: [FilterEqualPipe,
5762
+ PipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5763
+ PipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: PipeModule, declarations: [FilterEqualPipe,
5946
5764
  FilterNotEqualPipe,
5947
5765
  PhonePipe,
5948
5766
  ReversePipe,
@@ -5957,8 +5775,8 @@ PipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14
5957
5775
  DomSanitizorPipe,
5958
5776
  TitleCaseAndUnderscorePipe,
5959
5777
  JsonParsePipe] });
5960
- PipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: PipeModule });
5961
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: PipeModule, decorators: [{
5778
+ PipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PipeModule });
5779
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PipeModule, decorators: [{
5962
5780
  type: NgModule,
5963
5781
  args: [{
5964
5782
  declarations: [
@@ -6126,9 +5944,9 @@ class SortTableDirective {
6126
5944
  this._stateChanges.complete();
6127
5945
  }
6128
5946
  }
6129
- SortTableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortTableDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
6130
- SortTableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.9", type: SortTableDirective, selector: "[sortable]", inputs: { active: ["sortActive", "active"], start: ["sortStart", "start"], disabled: ["sortDisabled", "disabled"], tableFixed: "tableFixed", headerFixed: "headerFixed", secondaryColor: "secondaryColor", tertiaryColor: "tertiaryColor" }, outputs: { sortChange: "sortChange" }, usesOnChanges: true, ngImport: i0 });
6131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortTableDirective, decorators: [{
5947
+ SortTableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SortTableDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
5948
+ SortTableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: SortTableDirective, selector: "[sortable]", inputs: { active: ["sortActive", "active"], start: ["sortStart", "start"], disabled: ["sortDisabled", "disabled"], tableFixed: "tableFixed", headerFixed: "headerFixed", secondaryColor: "secondaryColor", tertiaryColor: "tertiaryColor" }, outputs: { sortChange: "sortChange" }, usesOnChanges: true, ngImport: i0 });
5949
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SortTableDirective, decorators: [{
6132
5950
  type: Directive,
6133
5951
  args: [{
6134
5952
  selector: '[sortable]'
@@ -6198,9 +6016,9 @@ class SortTableHeaderComponent {
6198
6016
  this._sort.sort(this);
6199
6017
  }
6200
6018
  }
6201
- SortTableHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortTableHeaderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: SortTableDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
6202
- SortTableHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: SortTableHeaderComponent, selector: "[sort-table-header]", inputs: { disabled: "disabled", id: ["sort-table-header", "id"], arrowPosition: "arrowPosition", start: "start" }, ngImport: i0, template: "<div (click)=\"onClick($event)\">\n <ng-content></ng-content>\n <i *ngIf=\"_isSorted() && _getSortDirection() === -1\" class=\"fa fa-arrow-down\" style=\"margin-left: 10px; font-size: 14px\"></i>\n <i *ngIf=\"_isSorted() && _getSortDirection() === 1\" class=\"fa fa-arrow-up\" style=\"margin-left: 10px; font-size: 14px\"></i>\n</div>", dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
6203
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortTableHeaderComponent, decorators: [{
6019
+ SortTableHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SortTableHeaderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: SortTableDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
6020
+ SortTableHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SortTableHeaderComponent, selector: "[sort-table-header]", inputs: { disabled: "disabled", id: ["sort-table-header", "id"], arrowPosition: "arrowPosition", start: "start" }, ngImport: i0, template: "<div (click)=\"onClick($event)\">\n <ng-content></ng-content>\n <i *ngIf=\"_isSorted() && _getSortDirection() === -1\" class=\"fa fa-arrow-down\" style=\"margin-left: 10px; font-size: 14px\"></i>\n <i *ngIf=\"_isSorted() && _getSortDirection() === 1\" class=\"fa fa-arrow-up\" style=\"margin-left: 10px; font-size: 14px\"></i>\n</div>", dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
6021
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SortTableHeaderComponent, decorators: [{
6204
6022
  type: Component,
6205
6023
  args: [{ selector: '[sort-table-header]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, inputs: ['disabled'], template: "<div (click)=\"onClick($event)\">\n <ng-content></ng-content>\n <i *ngIf=\"_isSorted() && _getSortDirection() === -1\" class=\"fa fa-arrow-down\" style=\"margin-left: 10px; font-size: 14px\"></i>\n <i *ngIf=\"_isSorted() && _getSortDirection() === 1\" class=\"fa fa-arrow-up\" style=\"margin-left: 10px; font-size: 14px\"></i>\n</div>" }]
6206
6024
  }], ctorParameters: function () {
@@ -6245,9 +6063,9 @@ class SortTableNgForComponent {
6245
6063
  this.sortSub$.unsubscribe();
6246
6064
  }
6247
6065
  }
6248
- SortTableNgForComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortTableNgForComponent, deps: [{ token: SortTableDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
6249
- SortTableNgForComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: SortTableNgForComponent, selector: "[sort-table-ngfor]", inputs: { data: ["sort-table-ngfor", "data"] }, outputs: { dataChanged: "dataChanged" }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true });
6250
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortTableNgForComponent, decorators: [{
6066
+ SortTableNgForComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SortTableNgForComponent, deps: [{ token: SortTableDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
6067
+ SortTableNgForComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SortTableNgForComponent, selector: "[sort-table-ngfor]", inputs: { data: ["sort-table-ngfor", "data"] }, outputs: { dataChanged: "dataChanged" }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true });
6068
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SortTableNgForComponent, decorators: [{
6251
6069
  type: Component,
6252
6070
  args: [{
6253
6071
  selector: '[sort-table-ngfor]',
@@ -6266,16 +6084,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
6266
6084
 
6267
6085
  class SortTableModule {
6268
6086
  }
6269
- SortTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6270
- SortTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: SortTableModule, declarations: [SortTableDirective,
6087
+ SortTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SortTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6088
+ SortTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SortTableModule, declarations: [SortTableDirective,
6271
6089
  SortTableHeaderComponent,
6272
6090
  SortTableNgForComponent], imports: [FormsModule,
6273
6091
  CommonModule], exports: [SortTableDirective,
6274
6092
  SortTableHeaderComponent,
6275
6093
  SortTableNgForComponent] });
6276
- SortTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortTableModule, imports: [FormsModule,
6094
+ SortTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SortTableModule, imports: [FormsModule,
6277
6095
  CommonModule] });
6278
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortTableModule, decorators: [{
6096
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SortTableModule, decorators: [{
6279
6097
  type: NgModule,
6280
6098
  args: [{
6281
6099
  imports: [
@@ -6297,8 +6115,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
6297
6115
 
6298
6116
  class SharedModule {
6299
6117
  }
6300
- SharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6301
- SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: SharedModule, imports: [ReactiveFormsModule,
6118
+ SharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6119
+ SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SharedModule, imports: [ReactiveFormsModule,
6302
6120
  FormsModule,
6303
6121
  CollapseTableModule,
6304
6122
  RouterModule,
@@ -6321,7 +6139,7 @@ SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
6321
6139
  NgSelectModule,
6322
6140
  SortTableModule,
6323
6141
  CommonModule] });
6324
- SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SharedModule, imports: [ReactiveFormsModule,
6142
+ SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SharedModule, imports: [ReactiveFormsModule,
6325
6143
  FormsModule,
6326
6144
  CollapseTableModule,
6327
6145
  RouterModule,
@@ -6344,7 +6162,7 @@ SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
6344
6162
  NgSelectModule,
6345
6163
  SortTableModule,
6346
6164
  CommonModule] });
6347
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SharedModule, decorators: [{
6165
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SharedModule, decorators: [{
6348
6166
  type: NgModule,
6349
6167
  args: [{
6350
6168
  imports: [
@@ -6438,11 +6256,11 @@ class ForgotPasswordComponent extends BaseComponent {
6438
6256
  this._services._router.navigateByUrl('/home');
6439
6257
  }
6440
6258
  }
6441
- ForgotPasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ForgotPasswordComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ProviderService }, { token: i4.HttpClient }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
6442
- ForgotPasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: ForgotPasswordComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n input {\n width: 100%;\n }\n</style>\n\n<div *ngIf=\"user\">\n\t<h4>Welcome to ResolveIO.<br><br>Your username will be {{user.username}}. Please create a password for your account.</h4>\n\t<form [formGroup]=\"form\" novalidate (ngSubmit)=\"submit()\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Username</label>\n\t\t\t\t\t<div>{{user.username}}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('minlength') || form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', (form.controls.password.valid && form.valid) ? 'is-valid' : 'is-invalid']\" formControlName=\"password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('minlength')\">Password must be 6 or more characters</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"!form.controls.password.hasError('minlength') && form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Confirm Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.confirm_password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.confirm_password.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"confirm_password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.confirm_password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\" style=\"margin-top: 30px;\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>", styles: ["\n input {\n width: 100%;\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
6443
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ForgotPasswordComponent, decorators: [{
6259
+ ForgotPasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ForgotPasswordComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ProviderService }, { token: i4.HttpClient }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
6260
+ ForgotPasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ForgotPasswordComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n input {\n width: 100%;\n }\n</style>\n\n<div *ngIf=\"user\">\n\t<h4>Welcome to ResolveIO.<br><br>Your username will be {{user.username}}. Please create a password for your account.</h4>\n\t<form [formGroup]=\"form\" novalidate (ngSubmit)=\"submit()\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Username</label>\n\t\t\t\t\t<div>{{user.username}}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('minlength') || form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', (form.controls.password.valid && form.valid) ? 'is-valid' : 'is-invalid']\" formControlName=\"password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('minlength')\">Password must be 6 or more characters</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"!form.controls.password.hasError('minlength') && form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Confirm Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.confirm_password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.confirm_password.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"confirm_password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.confirm_password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\" style=\"margin-top: 30px;\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>", styles: ["\n input {\n width: 100%;\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
6261
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ForgotPasswordComponent, decorators: [{
6444
6262
  type: Component,
6445
- args: [{ providers: [ProviderService], template: "<style>\n input {\n width: 100%;\n }\n</style>\n\n<div *ngIf=\"user\">\n\t<h4>Welcome to ResolveIO.<br><br>Your username will be {{user.username}}. Please create a password for your account.</h4>\n\t<form [formGroup]=\"form\" novalidate (ngSubmit)=\"submit()\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Username</label>\n\t\t\t\t\t<div>{{user.username}}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('minlength') || form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', (form.controls.password.valid && form.valid) ? 'is-valid' : 'is-invalid']\" formControlName=\"password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('minlength')\">Password must be 6 or more characters</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"!form.controls.password.hasError('minlength') && form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Confirm Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.confirm_password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.confirm_password.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"confirm_password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.confirm_password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\" style=\"margin-top: 30px;\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>" }]
6263
+ args: [{ providers: [ProviderService], template: "<style>\n input {\n width: 100%;\n }\n</style>\n\n<div *ngIf=\"user\">\n\t<h4>Welcome to ResolveIO.<br><br>Your username will be {{user.username}}. Please create a password for your account.</h4>\n\t<form [formGroup]=\"form\" novalidate (ngSubmit)=\"submit()\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Username</label>\n\t\t\t\t\t<div>{{user.username}}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('minlength') || form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', (form.controls.password.valid && form.valid) ? 'is-valid' : 'is-invalid']\" formControlName=\"password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('minlength')\">Password must be 6 or more characters</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"!form.controls.password.hasError('minlength') && form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Confirm Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.confirm_password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.confirm_password.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"confirm_password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.confirm_password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\" style=\"margin-top: 30px;\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>" }]
6446
6264
  }], ctorParameters: function () { return [{ type: i1$2.ActivatedRoute }, { type: ProviderService }, { type: i4.HttpClient }, { type: DialogService }]; } });
6447
6265
 
6448
6266
  class EnrollComponent extends BaseComponent {
@@ -6504,11 +6322,11 @@ class EnrollComponent extends BaseComponent {
6504
6322
  });
6505
6323
  }
6506
6324
  }
6507
- EnrollComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: EnrollComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ProviderService }, { token: i4.HttpClient }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
6508
- EnrollComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: EnrollComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n input {\n width: 100%;\n }\n</style>\n\n<div *ngIf=\"user\">\n\t<h4>Welcome to ResolveIO.<br><br>Your username will be {{user.username}}. Please create a password for your account.</h4>\n\t<form [formGroup]=\"form\" novalidate (ngSubmit)=\"submit()\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Username</label>\n\t\t\t\t\t<div>{{user.username}}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('minlength') || form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.password.valid && !form.hasError('matchPassword') ? 'is-valid' : 'is-invalid']\" formControlName=\"password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('minlength')\">Password must be 6 or more characters</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"!form.controls.password.hasError('minlength') && form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Confirm Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.confirm_password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.confirm_password.valid && !form.hasError('matchPassword') ? 'is-valid' : 'is-invalid']\" formControlName=\"confirm_password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.confirm_password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\" style=\"margin-top: 30px;\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>", styles: ["\n input {\n width: 100%;\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
6509
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: EnrollComponent, decorators: [{
6325
+ EnrollComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EnrollComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ProviderService }, { token: i4.HttpClient }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
6326
+ EnrollComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: EnrollComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n input {\n width: 100%;\n }\n</style>\n\n<div *ngIf=\"user\">\n\t<h4>Welcome to ResolveIO.<br><br>Your username will be {{user.username}}. Please create a password for your account.</h4>\n\t<form [formGroup]=\"form\" novalidate (ngSubmit)=\"submit()\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Username</label>\n\t\t\t\t\t<div>{{user.username}}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('minlength') || form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.password.valid && !form.hasError('matchPassword') ? 'is-valid' : 'is-invalid']\" formControlName=\"password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('minlength')\">Password must be 6 or more characters</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"!form.controls.password.hasError('minlength') && form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Confirm Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.confirm_password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.confirm_password.valid && !form.hasError('matchPassword') ? 'is-valid' : 'is-invalid']\" formControlName=\"confirm_password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.confirm_password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\" style=\"margin-top: 30px;\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>", styles: ["\n input {\n width: 100%;\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
6327
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EnrollComponent, decorators: [{
6510
6328
  type: Component,
6511
- args: [{ providers: [ProviderService], template: "<style>\n input {\n width: 100%;\n }\n</style>\n\n<div *ngIf=\"user\">\n\t<h4>Welcome to ResolveIO.<br><br>Your username will be {{user.username}}. Please create a password for your account.</h4>\n\t<form [formGroup]=\"form\" novalidate (ngSubmit)=\"submit()\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Username</label>\n\t\t\t\t\t<div>{{user.username}}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('minlength') || form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.password.valid && !form.hasError('matchPassword') ? 'is-valid' : 'is-invalid']\" formControlName=\"password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('minlength')\">Password must be 6 or more characters</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"!form.controls.password.hasError('minlength') && form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"form-group\">\n\t\t\t\t\t<label class=\"form-control-label\">Confirm Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.confirm_password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.confirm_password.valid && !form.hasError('matchPassword') ? 'is-valid' : 'is-invalid']\" formControlName=\"confirm_password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.confirm_password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\" style=\"margin-top: 30px;\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>" }]
6329
+ args: [{ providers: [ProviderService], template: "<style>\n input {\n width: 100%;\n }\n</style>\n\n<div *ngIf=\"user\">\n\t<h4>Welcome to ResolveIO.<br><br>Your username will be {{user.username}}. Please create a password for your account.</h4>\n\t<form [formGroup]=\"form\" novalidate (ngSubmit)=\"submit()\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Username</label>\n\t\t\t\t\t<div>{{user.username}}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.controls.password.hasError('minlength') || form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.password.valid && !form.hasError('matchPassword') ? 'is-valid' : 'is-invalid']\" formControlName=\"password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.password.hasError('minlength')\">Password must be 6 or more characters</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"!form.controls.password.hasError('minlength') && form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t<label class=\"form-control-label\">Confirm Password</label>\n\t\t\t\t\t<em *ngIf=\"form.controls.confirm_password.hasError('required')\">- Required</em>\n\t\t\t\t\t<em *ngIf=\"form.hasError('matchPassword')\">- Invalid</em>\n\t\t\t\t\t<input type=\"text\" [ngClass]=\"['form-control', form.controls.confirm_password.valid && !form.hasError('matchPassword') ? 'is-valid' : 'is-invalid']\" formControlName=\"confirm_password\" type=\"password\" autocomplete=\"new-password\">\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.controls.confirm_password.hasError('required')\">Password is required</div>\n\t\t\t\t\t<div class=\"invalid-feedback\" *ngIf=\"form.hasError('matchPassword')\" align=\"start\">Passwords do not match</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\" style=\"margin-top: 30px;\">\n\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t<form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>" }]
6512
6330
  }], ctorParameters: function () { return [{ type: i1$2.ActivatedRoute }, { type: ProviderService }, { type: i4.HttpClient }, { type: DialogService }]; } });
6513
6331
 
6514
6332
  class Auth365Component extends BaseComponent {
@@ -6530,9 +6348,9 @@ class Auth365Component extends BaseComponent {
6530
6348
  }
6531
6349
  }
6532
6350
  }
6533
- Auth365Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: Auth365Component, deps: [{ token: CoreService }, { token: i1$2.ActivatedRoute }, { token: ProviderService }, { token: i4.HttpClient }, { token: DialogService }, { token: SocketManagerService }], target: i0.ɵɵFactoryTarget.Component });
6534
- Auth365Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: Auth365Component, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: '<router-outlet></router-outlet>', isInline: true, dependencies: [{ kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
6535
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: Auth365Component, decorators: [{
6351
+ Auth365Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: Auth365Component, deps: [{ token: CoreService }, { token: i1$2.ActivatedRoute }, { token: ProviderService }, { token: i4.HttpClient }, { token: DialogService }, { token: SocketManagerService }], target: i0.ɵɵFactoryTarget.Component });
6352
+ Auth365Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: Auth365Component, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: '<router-outlet></router-outlet>', isInline: true, dependencies: [{ kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
6353
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: Auth365Component, decorators: [{
6536
6354
  type: Component,
6537
6355
  args: [{
6538
6356
  providers: [ProviderService],
@@ -6543,7 +6361,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
6543
6361
  const UserSettingsModulePermission = {
6544
6362
  name: 'user-settings',
6545
6363
  views: [
6546
- { link: '/user-settings/settings', label: 'Settings' }
6364
+ { link: '/user-settings/settings', label: 'Settings', has_parameter: false }
6547
6365
  ],
6548
6366
  approval: {
6549
6367
  type: 'user-settings'
@@ -6558,9 +6376,9 @@ class UserSettingsService {
6558
6376
  this.selectedUser.next(id);
6559
6377
  }
6560
6378
  }
6561
- UserSettingsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserSettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
6562
- UserSettingsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserSettingsService });
6563
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserSettingsService, decorators: [{
6379
+ UserSettingsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserSettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
6380
+ UserSettingsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserSettingsService });
6381
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserSettingsService, decorators: [{
6564
6382
  type: Injectable
6565
6383
  }], ctorParameters: function () { return []; } });
6566
6384
 
@@ -6603,9 +6421,9 @@ class UserSettingsComponent extends BaseComponent {
6603
6421
  this._services._app.setNavbarModuleData(this.menuData);
6604
6422
  }
6605
6423
  }
6606
- UserSettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserSettingsComponent, deps: [{ token: UserSettingsService }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
6607
- UserSettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: UserSettingsComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: '<router-outlet></router-outlet>', isInline: true, dependencies: [{ kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
6608
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserSettingsComponent, decorators: [{
6424
+ UserSettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserSettingsComponent, deps: [{ token: UserSettingsService }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
6425
+ UserSettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: UserSettingsComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: '<router-outlet></router-outlet>', isInline: true, dependencies: [{ kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
6426
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserSettingsComponent, decorators: [{
6609
6427
  type: Component,
6610
6428
  args: [{
6611
6429
  providers: [ProviderService],
@@ -6874,11 +6692,11 @@ class UsersSettingsComponent extends BaseComponent {
6874
6692
  });
6875
6693
  }
6876
6694
  }
6877
- UsersSettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UsersSettingsComponent, deps: [{ token: AuthPermissionService }, { token: UserSettingsService }, { token: ProviderService }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
6878
- UsersSettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: UsersSettingsComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: #ffffff;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n } \n\n .btn-warning {\n color: var(--warning-font-color);\n background-color: var(--warning-color);\n border-color: var(--warning-color);\n }\n .btn-warning:focus, .btn-warning.focus {\n box-shadow: var(--warning-shadow-color);\n }\n .btn-warning:hover {\n color: var(--warning-font-color);\n background-color: var(--warning-hover-color);\n border-color: var(--warning-hover-color);\n }\n\n .btn-success {\n color: var(--success-font-color);\n background-color: var(--success-color);\n border-color: var(--success-color);\n }\n .btn-success:focus, .btn-success.focus {\n box-shadow: var(--success-shadow-color);\n }\n .btn-success:hover {\n color: var(--success-font-color);\n background-color: var(--success-hover-color);\n border-color: var(--success-hover-color);\n }\n\n .btn-danger {\n color: var(--danger-font-color);\n background-color: var(--danger-color);\n border-color: var(--danger-color);\n }\n .btn-danger:focus, .btn-danger.focus {\n box-shadow: var(--danger-shadow-color);\n }\n .btn-danger:hover {\n color: var(--danger-font-color);\n background-color: var(--danger-hover-color);\n border-color: var(--danger-hover-color);\n }\n\n .btn-info {\n color: var(--info-font-color);\n background-color: var(--info-color);\n border-color: var(--info-color);\n }\n .btn-info:focus, .btn-info.focus {\n box-shadow: var(--info-shadow-color);\n }\n .btn-info:hover {\n color: var(--info-font-color);\n background-color: var(--info-hover-color);\n border-color: var(--info-hover-color);\n }\n\n .btn-primary {\n color: var(--primary-font-color);\n background-color: var(--primary-color);\n border-color: var(--primary-color);\n }\n .btn-primary:focus, .btn-primary.focus {\n box-shadow: var(--primary-shadow-color);\n }\n .btn-primary:hover {\n color: var(--primary-font-color);\n background-color: var(--primary-hover-color);\n border-color: var(--primary-hover-color);\n }\n\n .btn-secondary {\n color: var(--secondary-font-color);\n background-color: var(--secondary-color);\n border-color: var(--secondary-color);\n }\n .btn-secondary:focus, .btn-secondary.focus {\n box-shadow: var(--secondary-shadow-color);\n }\n .btn-secondary:hover {\n color: var(--secondary-font-color);\n background-color: var(--secondary-hover-color);\n border-color: var(--secondary-hover-color);\n }\n\n .fa-minus {\n color: black;\n } \n\n :host /deep/ .card .card-body .collapseTable th {\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-sec th {\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-tert th {\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"miscOptions, tableOptions, buttonOptions\">\n <ngb-panel id=\"miscOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Misc. Options</label>\n <i *ngIf=\"!acc.activeIds.includes('miscOptions')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('miscOptions')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <responsive-button-group>\n <button type=\"button\" class=\"btn btn-success\" (click)=\"reset()\">Reset Default Settings</button>\n </responsive-button-group>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n\t\t\t\t\t\t\t\t<b>Collapsable Menu</b><br>\n\t\t\t\t\t\t\t\t<div class=\"form-check\">\n\t\t\t\t\t\t\t\t\t<label class=\"form-check-label\">\n\t\t\t\t\t\t\t\t\t\t<input class=\"form-check-input\" type=\"checkbox\" hidden formControlName=\"collapsable_menu\">\n\t\t\t\t\t\t\t\t\t\t<i *ngIf=\"form.controls.collapsable_menu.value\" class=\"fa fa-check\" style=\"color: green; font-size: 24px;\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t\t\t<i *ngIf=\"!form.controls.collapsable_menu.value\" class=\"fa fa-times\" style=\"color: red; font-size: 24px;\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t</div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Default Entries Per Page</label>\n <em *ngIf=\"!form.controls.entries_per_page.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.entries_per_page.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"entries_per_page\">\n <option value=\"25\">25</option>\n <option value=\"50\">50</option>\n <option value=\"100\">100</option>\n <option value=\"250\">250</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.entries_per_page.valid\">Entries per page is required</div>\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Font Size (Recommended 11-14)</label>\n <em *ngIf=\"form.controls.font_size.hasError('required')\">- Required</em>\n <em *ngIf=\"form.controls.font_size.hasError('wholeNumbersGreaterThanZero')\">- Invalid</em>\n <em *ngIf=\"form.controls.font_size.hasError('maxValue')\">- Invalid</em>\n <em *ngIf=\"form.controls.font_size.hasError('minValue')\">- Invalid</em>\n <input [ngClass]=\"['form-control', form.controls.font_size.valid ? 'is-valid' : 'is-invalid']\" type=\"number\" formControlName=\"font_size\" (keyup)=\"changePrimaryFontSize()\">\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('required')\">Font size is required</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('wholeNumbersGreaterThanZero')\">Font size is invalid</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('maxValue')\">Font size can not exceed 18</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('minValue')\">Font size can not be less than 8</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Starting Page</label>\n <select [ngClass]=\"['form-control', form.controls.opening_route.valid ? 'is-valid' : '']\" formControlName=\"opening_route\">\n <option value=\"/home\">Home</option>\n <option *ngFor=\"let view of views\" [value]=\"view.value\">{{view.display | titleCase}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-lg-6\" *ngIf=\"client === 'Ace Completions'\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Routing Preference</label>\n <select [ngClass]=\"['form-control', form.controls.routing_preference.valid ? 'is-valid' : '']\" formControlName=\"routing_preference\">\n <option value=\"alwaysAsk\">Always Ask</option>\n <option value=\"sameTab\">Same Tab</option>\n <option value=\"newTab\">New Tab</option>\n <option value=\"newWindow\">New Window</option>\n </select>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"tableOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Table Options</label>\n <i *ngIf=\"!acc.activeIds.includes('tableOptions')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('tableOptions')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table> \n <thead>\n <tr>\n <th>\n Primary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Primary Table Background:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"table_color\" (ngModelChange)=\"changePrimaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Primary Table Font:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"table_font_color\" (ngModelChange)=\"changePrimaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table secondaryColor=\"true\"> \n <thead>\n <tr>\n <th>\n Secondary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Secondary Table Background:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_table_color\" (ngModelChange)=\"changeSecondaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <br>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Secondary Table Font:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_table_font_color\" (ngModelChange)=\"changeSecondaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table tertiaryColor=\"true\"> \n <thead>\n <tr>\n <th>\n Tertiary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Tertiary Table Background:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.tertiary_table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"tertiary_table_color\" (ngModelChange)=\"changeTertiaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Tertiary Table Font:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.tertiary_table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"tertiary_table_font_color\" (ngModelChange)=\"changeTertiaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"buttonOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Button Options</label>\n <i *ngIf=\"!acc.activeIds.includes('buttonOptions')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('buttonOptions')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-success\">Success</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Success Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_color\" (ngModelChange)=\"changeSuccessColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Success Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_font_color\" (ngModelChange)=\"changeSuccessFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Success Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_hover_color\" (ngModelChange)=\"changeSuccessHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-warning\">Warning</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Warning Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_color\" (ngModelChange)=\"changeWarningColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Warning Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_font_color\" (ngModelChange)=\"changeWarningFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Warning Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_hover_color\" (ngModelChange)=\"changeWarningHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-danger\">Danger</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Danger Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_color\" (ngModelChange)=\"changeDangerColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Danger Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_font_color\" (ngModelChange)=\"changeDangerFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Danger Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_hover_color\" (ngModelChange)=\"changeDangerHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-info\">Info</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Info Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_color\" (ngModelChange)=\"changeInfoColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Info Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_font_color\" (ngModelChange)=\"changeInfoFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Info Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_hover_color\" (ngModelChange)=\"changeInfoHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-primary\">Primary</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Primary Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_color\" (ngModelChange)=\"changePrimaryButtonColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Primary Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_font_color\" (ngModelChange)=\"changePrimaryButtonFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Primary Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_hover_color\" (ngModelChange)=\"changePrimaryHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-secondary\">Secondary</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Secondary Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_color\" (ngModelChange)=\"changeSecondaryButtonColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Secondary Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_font_color\" (ngModelChange)=\"changeSecondaryButtonFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Secondary Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_hover_color\" (ngModelChange)=\"changeSecondaryHoverColor()\">\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n </div>\n </form>\n</div>", styles: ["\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: #ffffff;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n } \n\n .btn-warning {\n color: var(--warning-font-color);\n background-color: var(--warning-color);\n border-color: var(--warning-color);\n }\n .btn-warning:focus, .btn-warning.focus {\n box-shadow: var(--warning-shadow-color);\n }\n .btn-warning:hover {\n color: var(--warning-font-color);\n background-color: var(--warning-hover-color);\n border-color: var(--warning-hover-color);\n }\n\n .btn-success {\n color: var(--success-font-color);\n background-color: var(--success-color);\n border-color: var(--success-color);\n }\n .btn-success:focus, .btn-success.focus {\n box-shadow: var(--success-shadow-color);\n }\n .btn-success:hover {\n color: var(--success-font-color);\n background-color: var(--success-hover-color);\n border-color: var(--success-hover-color);\n }\n\n .btn-danger {\n color: var(--danger-font-color);\n background-color: var(--danger-color);\n border-color: var(--danger-color);\n }\n .btn-danger:focus, .btn-danger.focus {\n box-shadow: var(--danger-shadow-color);\n }\n .btn-danger:hover {\n color: var(--danger-font-color);\n background-color: var(--danger-hover-color);\n border-color: var(--danger-hover-color);\n }\n\n .btn-info {\n color: var(--info-font-color);\n background-color: var(--info-color);\n border-color: var(--info-color);\n }\n .btn-info:focus, .btn-info.focus {\n box-shadow: var(--info-shadow-color);\n }\n .btn-info:hover {\n color: var(--info-font-color);\n background-color: var(--info-hover-color);\n border-color: var(--info-hover-color);\n }\n\n .btn-primary {\n color: var(--primary-font-color);\n background-color: var(--primary-color);\n border-color: var(--primary-color);\n }\n .btn-primary:focus, .btn-primary.focus {\n box-shadow: var(--primary-shadow-color);\n }\n .btn-primary:hover {\n color: var(--primary-font-color);\n background-color: var(--primary-hover-color);\n border-color: var(--primary-hover-color);\n }\n\n .btn-secondary {\n color: var(--secondary-font-color);\n background-color: var(--secondary-color);\n border-color: var(--secondary-color);\n }\n .btn-secondary:focus, .btn-secondary.focus {\n box-shadow: var(--secondary-shadow-color);\n }\n .btn-secondary:hover {\n color: var(--secondary-font-color);\n background-color: var(--secondary-hover-color);\n border-color: var(--secondary-hover-color);\n }\n\n .fa-minus {\n color: black;\n } \n\n :host /deep/ .card .card-body .collapseTable th {\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-sec th {\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-tert th {\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: CollapseTableComponent, selector: "collapse-table", inputs: ["collapseSize", "tableFixed", "headerFixed", "secondaryColor", "tertiaryColor"] }, { kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TitleCaseAndUnderscorePipe, name: "titleCase" }] });
6879
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UsersSettingsComponent, decorators: [{
6695
+ UsersSettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UsersSettingsComponent, deps: [{ token: AuthPermissionService }, { token: UserSettingsService }, { token: ProviderService }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
6696
+ UsersSettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: UsersSettingsComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: #ffffff;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n } \n\n .btn-warning {\n color: var(--warning-font-color);\n background-color: var(--warning-color);\n border-color: var(--warning-color);\n }\n .btn-warning:focus, .btn-warning.focus {\n box-shadow: var(--warning-shadow-color);\n }\n .btn-warning:hover {\n color: var(--warning-font-color);\n background-color: var(--warning-hover-color);\n border-color: var(--warning-hover-color);\n }\n\n .btn-success {\n color: var(--success-font-color);\n background-color: var(--success-color);\n border-color: var(--success-color);\n }\n .btn-success:focus, .btn-success.focus {\n box-shadow: var(--success-shadow-color);\n }\n .btn-success:hover {\n color: var(--success-font-color);\n background-color: var(--success-hover-color);\n border-color: var(--success-hover-color);\n }\n\n .btn-danger {\n color: var(--danger-font-color);\n background-color: var(--danger-color);\n border-color: var(--danger-color);\n }\n .btn-danger:focus, .btn-danger.focus {\n box-shadow: var(--danger-shadow-color);\n }\n .btn-danger:hover {\n color: var(--danger-font-color);\n background-color: var(--danger-hover-color);\n border-color: var(--danger-hover-color);\n }\n\n .btn-info {\n color: var(--info-font-color);\n background-color: var(--info-color);\n border-color: var(--info-color);\n }\n .btn-info:focus, .btn-info.focus {\n box-shadow: var(--info-shadow-color);\n }\n .btn-info:hover {\n color: var(--info-font-color);\n background-color: var(--info-hover-color);\n border-color: var(--info-hover-color);\n }\n\n .btn-primary {\n color: var(--primary-font-color);\n background-color: var(--primary-color);\n border-color: var(--primary-color);\n }\n .btn-primary:focus, .btn-primary.focus {\n box-shadow: var(--primary-shadow-color);\n }\n .btn-primary:hover {\n color: var(--primary-font-color);\n background-color: var(--primary-hover-color);\n border-color: var(--primary-hover-color);\n }\n\n .btn-secondary {\n color: var(--secondary-font-color);\n background-color: var(--secondary-color);\n border-color: var(--secondary-color);\n }\n .btn-secondary:focus, .btn-secondary.focus {\n box-shadow: var(--secondary-shadow-color);\n }\n .btn-secondary:hover {\n color: var(--secondary-font-color);\n background-color: var(--secondary-hover-color);\n border-color: var(--secondary-hover-color);\n }\n\n .fa-minus {\n color: black;\n } \n\n :host /deep/ .card .card-body .collapseTable th {\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-sec th {\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-tert th {\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"miscOptions, tableOptions, buttonOptions\">\n <ngb-panel id=\"miscOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Misc. Options</label>\n <i *ngIf=\"!acc.activeIds.includes('miscOptions')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('miscOptions')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <responsive-button-group>\n <button type=\"button\" class=\"btn btn-success\" (click)=\"reset()\">Reset Default Settings</button>\n </responsive-button-group>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n\t\t\t\t\t\t\t\t<b>Collapsable Menu</b><br>\n\t\t\t\t\t\t\t\t<div class=\"form-check\">\n\t\t\t\t\t\t\t\t\t<label class=\"form-check-label\">\n\t\t\t\t\t\t\t\t\t\t<input class=\"form-check-input\" type=\"checkbox\" hidden formControlName=\"collapsable_menu\">\n\t\t\t\t\t\t\t\t\t\t<i *ngIf=\"form.controls.collapsable_menu.value\" class=\"fa fa-check\" style=\"color: green; font-size: 24px;\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t\t\t<i *ngIf=\"!form.controls.collapsable_menu.value\" class=\"fa fa-times\" style=\"color: red; font-size: 24px;\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t</div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Default Entries Per Page</label>\n <em *ngIf=\"!form.controls.entries_per_page.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.entries_per_page.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"entries_per_page\">\n <option value=\"25\">25</option>\n <option value=\"50\">50</option>\n <option value=\"100\">100</option>\n <option value=\"250\">250</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.entries_per_page.valid\">Entries per page is required</div>\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Font Size (Recommended 11-14)</label>\n <em *ngIf=\"form.controls.font_size.hasError('required')\">- Required</em>\n <em *ngIf=\"form.controls.font_size.hasError('wholeNumbersGreaterThanZero')\">- Invalid</em>\n <em *ngIf=\"form.controls.font_size.hasError('maxValue')\">- Invalid</em>\n <em *ngIf=\"form.controls.font_size.hasError('minValue')\">- Invalid</em>\n <input [ngClass]=\"['form-control', form.controls.font_size.valid ? 'is-valid' : 'is-invalid']\" type=\"number\" formControlName=\"font_size\" (keyup)=\"changePrimaryFontSize()\">\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('required')\">Font size is required</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('wholeNumbersGreaterThanZero')\">Font size is invalid</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('maxValue')\">Font size can not exceed 18</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('minValue')\">Font size can not be less than 8</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Starting Page</label>\n <select [ngClass]=\"['form-control', form.controls.opening_route.valid ? 'is-valid' : '']\" formControlName=\"opening_route\">\n <option value=\"/home\">Home</option>\n <option *ngFor=\"let view of views\" [value]=\"view.value\">{{view.display | titleCase}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-lg-6\" *ngIf=\"client === 'Ace Completions'\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Routing Preference</label>\n <select [ngClass]=\"['form-control', form.controls.routing_preference.valid ? 'is-valid' : '']\" formControlName=\"routing_preference\">\n <option value=\"alwaysAsk\">Always Ask</option>\n <option value=\"sameTab\">Same Tab</option>\n <option value=\"newTab\">New Tab</option>\n <option value=\"newWindow\">New Window</option>\n </select>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"tableOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Table Options</label>\n <i *ngIf=\"!acc.activeIds.includes('tableOptions')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('tableOptions')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table> \n <thead>\n <tr>\n <th>\n Primary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Primary Table Background:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"table_color\" (ngModelChange)=\"changePrimaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Primary Table Font:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"table_font_color\" (ngModelChange)=\"changePrimaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table secondaryColor=\"true\"> \n <thead>\n <tr>\n <th>\n Secondary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Secondary Table Background:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_table_color\" (ngModelChange)=\"changeSecondaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <br>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Secondary Table Font:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_table_font_color\" (ngModelChange)=\"changeSecondaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table tertiaryColor=\"true\"> \n <thead>\n <tr>\n <th>\n Tertiary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Tertiary Table Background:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.tertiary_table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"tertiary_table_color\" (ngModelChange)=\"changeTertiaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Tertiary Table Font:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.tertiary_table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"tertiary_table_font_color\" (ngModelChange)=\"changeTertiaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"buttonOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Button Options</label>\n <i *ngIf=\"!acc.activeIds.includes('buttonOptions')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('buttonOptions')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-success\">Success</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Success Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_color\" (ngModelChange)=\"changeSuccessColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Success Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_font_color\" (ngModelChange)=\"changeSuccessFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Success Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_hover_color\" (ngModelChange)=\"changeSuccessHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-warning\">Warning</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Warning Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_color\" (ngModelChange)=\"changeWarningColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Warning Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_font_color\" (ngModelChange)=\"changeWarningFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Warning Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_hover_color\" (ngModelChange)=\"changeWarningHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-danger\">Danger</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Danger Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_color\" (ngModelChange)=\"changeDangerColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Danger Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_font_color\" (ngModelChange)=\"changeDangerFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Danger Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_hover_color\" (ngModelChange)=\"changeDangerHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-info\">Info</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Info Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_color\" (ngModelChange)=\"changeInfoColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Info Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_font_color\" (ngModelChange)=\"changeInfoFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Info Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_hover_color\" (ngModelChange)=\"changeInfoHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-primary\">Primary</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Primary Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_color\" (ngModelChange)=\"changePrimaryButtonColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Primary Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_font_color\" (ngModelChange)=\"changePrimaryButtonFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Primary Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_hover_color\" (ngModelChange)=\"changePrimaryHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-secondary\">Secondary</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Secondary Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_color\" (ngModelChange)=\"changeSecondaryButtonColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Secondary Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_font_color\" (ngModelChange)=\"changeSecondaryButtonFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Secondary Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_hover_color\" (ngModelChange)=\"changeSecondaryHoverColor()\">\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n </div>\n </form>\n</div>", styles: ["\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: #ffffff;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n } \n\n .btn-warning {\n color: var(--warning-font-color);\n background-color: var(--warning-color);\n border-color: var(--warning-color);\n }\n .btn-warning:focus, .btn-warning.focus {\n box-shadow: var(--warning-shadow-color);\n }\n .btn-warning:hover {\n color: var(--warning-font-color);\n background-color: var(--warning-hover-color);\n border-color: var(--warning-hover-color);\n }\n\n .btn-success {\n color: var(--success-font-color);\n background-color: var(--success-color);\n border-color: var(--success-color);\n }\n .btn-success:focus, .btn-success.focus {\n box-shadow: var(--success-shadow-color);\n }\n .btn-success:hover {\n color: var(--success-font-color);\n background-color: var(--success-hover-color);\n border-color: var(--success-hover-color);\n }\n\n .btn-danger {\n color: var(--danger-font-color);\n background-color: var(--danger-color);\n border-color: var(--danger-color);\n }\n .btn-danger:focus, .btn-danger.focus {\n box-shadow: var(--danger-shadow-color);\n }\n .btn-danger:hover {\n color: var(--danger-font-color);\n background-color: var(--danger-hover-color);\n border-color: var(--danger-hover-color);\n }\n\n .btn-info {\n color: var(--info-font-color);\n background-color: var(--info-color);\n border-color: var(--info-color);\n }\n .btn-info:focus, .btn-info.focus {\n box-shadow: var(--info-shadow-color);\n }\n .btn-info:hover {\n color: var(--info-font-color);\n background-color: var(--info-hover-color);\n border-color: var(--info-hover-color);\n }\n\n .btn-primary {\n color: var(--primary-font-color);\n background-color: var(--primary-color);\n border-color: var(--primary-color);\n }\n .btn-primary:focus, .btn-primary.focus {\n box-shadow: var(--primary-shadow-color);\n }\n .btn-primary:hover {\n color: var(--primary-font-color);\n background-color: var(--primary-hover-color);\n border-color: var(--primary-hover-color);\n }\n\n .btn-secondary {\n color: var(--secondary-font-color);\n background-color: var(--secondary-color);\n border-color: var(--secondary-color);\n }\n .btn-secondary:focus, .btn-secondary.focus {\n box-shadow: var(--secondary-shadow-color);\n }\n .btn-secondary:hover {\n color: var(--secondary-font-color);\n background-color: var(--secondary-hover-color);\n border-color: var(--secondary-hover-color);\n }\n\n .fa-minus {\n color: black;\n } \n\n :host /deep/ .card .card-body .collapseTable th {\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-sec th {\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-tert th {\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: CollapseTableComponent, selector: "collapse-table", inputs: ["collapseSize", "tableFixed", "headerFixed", "secondaryColor", "tertiaryColor"] }, { kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TitleCaseAndUnderscorePipe, name: "titleCase" }] });
6697
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UsersSettingsComponent, decorators: [{
6880
6698
  type: Component,
6881
- args: [{ providers: [ProviderService], template: "<style>\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: #ffffff;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n } \n\n .btn-warning {\n color: var(--warning-font-color);\n background-color: var(--warning-color);\n border-color: var(--warning-color);\n }\n .btn-warning:focus, .btn-warning.focus {\n box-shadow: var(--warning-shadow-color);\n }\n .btn-warning:hover {\n color: var(--warning-font-color);\n background-color: var(--warning-hover-color);\n border-color: var(--warning-hover-color);\n }\n\n .btn-success {\n color: var(--success-font-color);\n background-color: var(--success-color);\n border-color: var(--success-color);\n }\n .btn-success:focus, .btn-success.focus {\n box-shadow: var(--success-shadow-color);\n }\n .btn-success:hover {\n color: var(--success-font-color);\n background-color: var(--success-hover-color);\n border-color: var(--success-hover-color);\n }\n\n .btn-danger {\n color: var(--danger-font-color);\n background-color: var(--danger-color);\n border-color: var(--danger-color);\n }\n .btn-danger:focus, .btn-danger.focus {\n box-shadow: var(--danger-shadow-color);\n }\n .btn-danger:hover {\n color: var(--danger-font-color);\n background-color: var(--danger-hover-color);\n border-color: var(--danger-hover-color);\n }\n\n .btn-info {\n color: var(--info-font-color);\n background-color: var(--info-color);\n border-color: var(--info-color);\n }\n .btn-info:focus, .btn-info.focus {\n box-shadow: var(--info-shadow-color);\n }\n .btn-info:hover {\n color: var(--info-font-color);\n background-color: var(--info-hover-color);\n border-color: var(--info-hover-color);\n }\n\n .btn-primary {\n color: var(--primary-font-color);\n background-color: var(--primary-color);\n border-color: var(--primary-color);\n }\n .btn-primary:focus, .btn-primary.focus {\n box-shadow: var(--primary-shadow-color);\n }\n .btn-primary:hover {\n color: var(--primary-font-color);\n background-color: var(--primary-hover-color);\n border-color: var(--primary-hover-color);\n }\n\n .btn-secondary {\n color: var(--secondary-font-color);\n background-color: var(--secondary-color);\n border-color: var(--secondary-color);\n }\n .btn-secondary:focus, .btn-secondary.focus {\n box-shadow: var(--secondary-shadow-color);\n }\n .btn-secondary:hover {\n color: var(--secondary-font-color);\n background-color: var(--secondary-hover-color);\n border-color: var(--secondary-hover-color);\n }\n\n .fa-minus {\n color: black;\n } \n\n :host /deep/ .card .card-body .collapseTable th {\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-sec th {\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-tert th {\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"miscOptions, tableOptions, buttonOptions\">\n <ngb-panel id=\"miscOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Misc. Options</label>\n <i *ngIf=\"!acc.activeIds.includes('miscOptions')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('miscOptions')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <responsive-button-group>\n <button type=\"button\" class=\"btn btn-success\" (click)=\"reset()\">Reset Default Settings</button>\n </responsive-button-group>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n\t\t\t\t\t\t\t\t<b>Collapsable Menu</b><br>\n\t\t\t\t\t\t\t\t<div class=\"form-check\">\n\t\t\t\t\t\t\t\t\t<label class=\"form-check-label\">\n\t\t\t\t\t\t\t\t\t\t<input class=\"form-check-input\" type=\"checkbox\" hidden formControlName=\"collapsable_menu\">\n\t\t\t\t\t\t\t\t\t\t<i *ngIf=\"form.controls.collapsable_menu.value\" class=\"fa fa-check\" style=\"color: green; font-size: 24px;\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t\t\t<i *ngIf=\"!form.controls.collapsable_menu.value\" class=\"fa fa-times\" style=\"color: red; font-size: 24px;\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t</div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Default Entries Per Page</label>\n <em *ngIf=\"!form.controls.entries_per_page.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.entries_per_page.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"entries_per_page\">\n <option value=\"25\">25</option>\n <option value=\"50\">50</option>\n <option value=\"100\">100</option>\n <option value=\"250\">250</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.entries_per_page.valid\">Entries per page is required</div>\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Font Size (Recommended 11-14)</label>\n <em *ngIf=\"form.controls.font_size.hasError('required')\">- Required</em>\n <em *ngIf=\"form.controls.font_size.hasError('wholeNumbersGreaterThanZero')\">- Invalid</em>\n <em *ngIf=\"form.controls.font_size.hasError('maxValue')\">- Invalid</em>\n <em *ngIf=\"form.controls.font_size.hasError('minValue')\">- Invalid</em>\n <input [ngClass]=\"['form-control', form.controls.font_size.valid ? 'is-valid' : 'is-invalid']\" type=\"number\" formControlName=\"font_size\" (keyup)=\"changePrimaryFontSize()\">\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('required')\">Font size is required</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('wholeNumbersGreaterThanZero')\">Font size is invalid</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('maxValue')\">Font size can not exceed 18</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('minValue')\">Font size can not be less than 8</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Starting Page</label>\n <select [ngClass]=\"['form-control', form.controls.opening_route.valid ? 'is-valid' : '']\" formControlName=\"opening_route\">\n <option value=\"/home\">Home</option>\n <option *ngFor=\"let view of views\" [value]=\"view.value\">{{view.display | titleCase}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-lg-6\" *ngIf=\"client === 'Ace Completions'\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Routing Preference</label>\n <select [ngClass]=\"['form-control', form.controls.routing_preference.valid ? 'is-valid' : '']\" formControlName=\"routing_preference\">\n <option value=\"alwaysAsk\">Always Ask</option>\n <option value=\"sameTab\">Same Tab</option>\n <option value=\"newTab\">New Tab</option>\n <option value=\"newWindow\">New Window</option>\n </select>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"tableOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Table Options</label>\n <i *ngIf=\"!acc.activeIds.includes('tableOptions')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('tableOptions')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table> \n <thead>\n <tr>\n <th>\n Primary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Primary Table Background:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"table_color\" (ngModelChange)=\"changePrimaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Primary Table Font:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"table_font_color\" (ngModelChange)=\"changePrimaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table secondaryColor=\"true\"> \n <thead>\n <tr>\n <th>\n Secondary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Secondary Table Background:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_table_color\" (ngModelChange)=\"changeSecondaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <br>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Secondary Table Font:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_table_font_color\" (ngModelChange)=\"changeSecondaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table tertiaryColor=\"true\"> \n <thead>\n <tr>\n <th>\n Tertiary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Tertiary Table Background:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.tertiary_table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"tertiary_table_color\" (ngModelChange)=\"changeTertiaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Tertiary Table Font:</dt>\n <dd>\n <div class=\"form-group\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.tertiary_table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"tertiary_table_font_color\" (ngModelChange)=\"changeTertiaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"buttonOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Button Options</label>\n <i *ngIf=\"!acc.activeIds.includes('buttonOptions')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('buttonOptions')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-success\">Success</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Success Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_color\" (ngModelChange)=\"changeSuccessColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Success Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_font_color\" (ngModelChange)=\"changeSuccessFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Success Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_hover_color\" (ngModelChange)=\"changeSuccessHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-warning\">Warning</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Warning Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_color\" (ngModelChange)=\"changeWarningColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Warning Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_font_color\" (ngModelChange)=\"changeWarningFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Warning Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_hover_color\" (ngModelChange)=\"changeWarningHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-danger\">Danger</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Danger Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_color\" (ngModelChange)=\"changeDangerColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Danger Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_font_color\" (ngModelChange)=\"changeDangerFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Danger Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_hover_color\" (ngModelChange)=\"changeDangerHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-info\">Info</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Info Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_color\" (ngModelChange)=\"changeInfoColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Info Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_font_color\" (ngModelChange)=\"changeInfoFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Info Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_hover_color\" (ngModelChange)=\"changeInfoHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-primary\">Primary</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Primary Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_color\" (ngModelChange)=\"changePrimaryButtonColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Primary Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_font_color\" (ngModelChange)=\"changePrimaryButtonFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Primary Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_hover_color\" (ngModelChange)=\"changePrimaryHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-secondary\">Secondary</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Secondary Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_color\" (ngModelChange)=\"changeSecondaryButtonColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Secondary Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_font_color\" (ngModelChange)=\"changeSecondaryButtonFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Secondary Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_hover_color\" (ngModelChange)=\"changeSecondaryHoverColor()\">\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n </div>\n </form>\n</div>" }]
6699
+ args: [{ providers: [ProviderService], template: "<style>\n ::ng-deep :root {\n --primary-table-color: #3b3ee3;\n --primary-table-font-color: #ffffff;\n --font-size: 12px;\n --secondary-table-color: #87ceeb;\n --secondary-table-font-color: #000000;\n --tertiary-table-color: #ff4500;\n --tertiary-table-font-color: #000000;\n --warning-color: #ffc107;\n --warning-font-color: #000000;\n --warning-hover-color: #e0a800;\n --warning-shadow-color: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n --success-color: #28a745;\n --success-font-color: #ffffff;\n --success-hover-color: #218838;\n --success-shadow-color: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n --danger-color: #dc3545;\n --danger-font-color: #ffffff;\n --danger-hover-color: #c82333;\n --danger-shadow-color: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n --info-color: #17a2b8;\n --info-font-color: #ffffff;\n --info-hover-color: #138496;\n --info-shadow-color: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n --primary-color: #007bff;\n --primary-font-color: #ffffff;\n --primary-hover-color: #0069d9;\n --primary-shadow-color: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n --secondary-color: #868e96;\n --secondary-font-color: #ffffff;\n --secondary-hover-color: #5a6268;\n --secondary-shadow-color: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n }\n\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n } \n\n .btn-warning {\n color: var(--warning-font-color);\n background-color: var(--warning-color);\n border-color: var(--warning-color);\n }\n .btn-warning:focus, .btn-warning.focus {\n box-shadow: var(--warning-shadow-color);\n }\n .btn-warning:hover {\n color: var(--warning-font-color);\n background-color: var(--warning-hover-color);\n border-color: var(--warning-hover-color);\n }\n\n .btn-success {\n color: var(--success-font-color);\n background-color: var(--success-color);\n border-color: var(--success-color);\n }\n .btn-success:focus, .btn-success.focus {\n box-shadow: var(--success-shadow-color);\n }\n .btn-success:hover {\n color: var(--success-font-color);\n background-color: var(--success-hover-color);\n border-color: var(--success-hover-color);\n }\n\n .btn-danger {\n color: var(--danger-font-color);\n background-color: var(--danger-color);\n border-color: var(--danger-color);\n }\n .btn-danger:focus, .btn-danger.focus {\n box-shadow: var(--danger-shadow-color);\n }\n .btn-danger:hover {\n color: var(--danger-font-color);\n background-color: var(--danger-hover-color);\n border-color: var(--danger-hover-color);\n }\n\n .btn-info {\n color: var(--info-font-color);\n background-color: var(--info-color);\n border-color: var(--info-color);\n }\n .btn-info:focus, .btn-info.focus {\n box-shadow: var(--info-shadow-color);\n }\n .btn-info:hover {\n color: var(--info-font-color);\n background-color: var(--info-hover-color);\n border-color: var(--info-hover-color);\n }\n\n .btn-primary {\n color: var(--primary-font-color);\n background-color: var(--primary-color);\n border-color: var(--primary-color);\n }\n .btn-primary:focus, .btn-primary.focus {\n box-shadow: var(--primary-shadow-color);\n }\n .btn-primary:hover {\n color: var(--primary-font-color);\n background-color: var(--primary-hover-color);\n border-color: var(--primary-hover-color);\n }\n\n .btn-secondary {\n color: var(--secondary-font-color);\n background-color: var(--secondary-color);\n border-color: var(--secondary-color);\n }\n .btn-secondary:focus, .btn-secondary.focus {\n box-shadow: var(--secondary-shadow-color);\n }\n .btn-secondary:hover {\n color: var(--secondary-font-color);\n background-color: var(--secondary-hover-color);\n border-color: var(--secondary-hover-color);\n }\n\n .fa-minus {\n color: black;\n } \n\n :host /deep/ .card .card-body .collapseTable th {\n background-color: var(--primary-table-color);\n color: var(--primary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-sec th {\n background-color: var(--secondary-table-color);\n color: var(--secondary-table-font-color);\n font-size: var(--font-size);\n }\n\n :host /deep/ .card .card-body .collapseTable-tert th {\n background-color: var(--tertiary-table-color);\n color: var(--tertiary-table-font-color);\n font-size: var(--font-size);\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"miscOptions, tableOptions, buttonOptions\">\n <ngb-panel id=\"miscOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Misc. Options</label>\n <i *ngIf=\"!acc.activeIds.includes('miscOptions')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('miscOptions')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <responsive-button-group>\n <button type=\"button\" class=\"btn btn-success\" (click)=\"reset()\">Reset Default Settings</button>\n </responsive-button-group>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n\t\t\t\t\t\t\t\t<b>Collapsable Menu</b><br>\n\t\t\t\t\t\t\t\t<div class=\"form-check\">\n\t\t\t\t\t\t\t\t\t<label class=\"form-check-label\">\n\t\t\t\t\t\t\t\t\t\t<input class=\"form-check-input\" type=\"checkbox\" hidden formControlName=\"collapsable_menu\">\n\t\t\t\t\t\t\t\t\t\t<i *ngIf=\"form.controls.collapsable_menu.value\" class=\"fa fa-check\" style=\"color: green; font-size: 24px;\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t\t\t<i *ngIf=\"!form.controls.collapsable_menu.value\" class=\"fa fa-times\" style=\"color: red; font-size: 24px;\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t</div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Default Entries Per Page</label>\n <em *ngIf=\"!form.controls.entries_per_page.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.entries_per_page.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"entries_per_page\">\n <option value=\"25\">25</option>\n <option value=\"50\">50</option>\n <option value=\"100\">100</option>\n <option value=\"250\">250</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.entries_per_page.valid\">Entries per page is required</div>\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Font Size (Recommended 11-14)</label>\n <em *ngIf=\"form.controls.font_size.hasError('required')\">- Required</em>\n <em *ngIf=\"form.controls.font_size.hasError('wholeNumbersGreaterThanZero')\">- Invalid</em>\n <em *ngIf=\"form.controls.font_size.hasError('maxValue')\">- Invalid</em>\n <em *ngIf=\"form.controls.font_size.hasError('minValue')\">- Invalid</em>\n <input [ngClass]=\"['form-control', form.controls.font_size.valid ? 'is-valid' : 'is-invalid']\" type=\"number\" formControlName=\"font_size\" (keyup)=\"changePrimaryFontSize()\">\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('required')\">Font size is required</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('wholeNumbersGreaterThanZero')\">Font size is invalid</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('maxValue')\">Font size can not exceed 18</div>\n <div class=\"invalid-feedback\" *ngIf=\"form.controls.font_size.hasError('minValue')\">Font size can not be less than 8</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Starting Page</label>\n <select [ngClass]=\"['form-control', form.controls.opening_route.valid ? 'is-valid' : '']\" formControlName=\"opening_route\">\n <option value=\"/home\">Home</option>\n <option *ngFor=\"let view of views\" [value]=\"view.value\">{{view.display | titleCase}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-lg-6\" *ngIf=\"client === 'Ace Completions'\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Routing Preference</label>\n <select [ngClass]=\"['form-control', form.controls.routing_preference.valid ? 'is-valid' : '']\" formControlName=\"routing_preference\">\n <option value=\"alwaysAsk\">Always Ask</option>\n <option value=\"sameTab\">Same Tab</option>\n <option value=\"newTab\">New Tab</option>\n <option value=\"newWindow\">New Window</option>\n </select>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"tableOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Table Options</label>\n <i *ngIf=\"!acc.activeIds.includes('tableOptions')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('tableOptions')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table> \n <thead>\n <tr>\n <th>\n Primary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Primary Table Background:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"table_color\" (ngModelChange)=\"changePrimaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Primary Table Font:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"table_font_color\" (ngModelChange)=\"changePrimaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table secondaryColor=\"true\"> \n <thead>\n <tr>\n <th>\n Secondary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Secondary Table Background:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_table_color\" (ngModelChange)=\"changeSecondaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <br>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Secondary Table Font:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_table_font_color\" (ngModelChange)=\"changeSecondaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <collapse-table tertiaryColor=\"true\"> \n <thead>\n <tr>\n <th>\n Tertiary Table\n </th>\n </tr>\n </thead>\n </collapse-table>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <dl>\n <dt>Tertiary Table Background:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.tertiary_table_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"tertiary_table_color\" (ngModelChange)=\"changeTertiaryColor()\">\n </div>\n </dd>\n </dl>\n </div>\n <div class=\"col-lg-6\">\n <dl>\n <dt>Tertiary Table Font:</dt>\n <dd>\n <div class=\"mb-3\">\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.tertiary_table_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"tertiary_table_font_color\" (ngModelChange)=\"changeTertiaryFontColor()\">\n </div>\n </dd>\n </dl>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"buttonOptions\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Button Options</label>\n <i *ngIf=\"!acc.activeIds.includes('buttonOptions')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('buttonOptions')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-success\">Success</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Success Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_color\" (ngModelChange)=\"changeSuccessColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Success Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_font_color\" (ngModelChange)=\"changeSuccessFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Success Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.success_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"success_hover_color\" (ngModelChange)=\"changeSuccessHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-warning\">Warning</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Warning Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_color\" (ngModelChange)=\"changeWarningColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Warning Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_font_color\" (ngModelChange)=\"changeWarningFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Warning Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.warning_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"warning_hover_color\" (ngModelChange)=\"changeWarningHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-danger\">Danger</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Danger Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_color\" (ngModelChange)=\"changeDangerColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Danger Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_font_color\" (ngModelChange)=\"changeDangerFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Danger Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.danger_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"danger_hover_color\" (ngModelChange)=\"changeDangerHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-info\">Info</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Info Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_color\" (ngModelChange)=\"changeInfoColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Info Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_font_color\" (ngModelChange)=\"changeInfoFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Info Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.info_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"info_hover_color\" (ngModelChange)=\"changeInfoHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-primary\">Primary</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Primary Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_color\" (ngModelChange)=\"changePrimaryButtonColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Primary Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_font_color\" (ngModelChange)=\"changePrimaryButtonFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Primary Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.primary_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"primary_hover_color\" (ngModelChange)=\"changePrimaryHoverColor()\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-secondary\">Secondary</button>\n </div>\n </div>\n <br>\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Secondary Button Background:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_color\" (ngModelChange)=\"changeSecondaryButtonColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Secondary Button Font:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_font_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_font_color\" (ngModelChange)=\"changeSecondaryButtonFontColor()\">\n </div>\n </div>\n <div class=\"col-lg-4\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Secondary Button Hover:</label>\n <input type=\"color\" style=\"height: 40px\" [ngClass]=\"['form-control', form.controls.secondary_hover_color.value ? 'is-valid' : 'is-invalid']\" formControlName=\"secondary_hover_color\" (ngModelChange)=\"changeSecondaryHoverColor()\">\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n </div>\n </form>\n</div>" }]
6882
6700
  }], ctorParameters: function () { return [{ type: AuthPermissionService }, { type: UserSettingsService }, { type: ProviderService }, { type: DialogService }]; } });
6883
6701
  function hexToRGB(hex, alpha) {
6884
6702
  let r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
@@ -6947,11 +6765,11 @@ class DatatableComponent extends BaseComponent {
6947
6765
  return typeof (data);
6948
6766
  }
6949
6767
  }
6950
- DatatableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DatatableComponent, deps: [{ token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
6951
- DatatableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DatatableComponent, selector: "data-table", inputs: { urlClick: "urlClick", columns: "columns", data: "data", collapseSize: "collapseSize", searchTitle: "searchTitle", totalItems: "totalItems", tableData: "tableData" }, outputs: { onChangeTableData: "onChangeTableData" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n .orangeRow { \n background-color: orangered;\n }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n</style>\n\n<div class=\"row\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <button class=\"btn btn-primary\" type=\"button\" (click)=\"changeTableData()\">Search!</button>\n </span>\n <input type=\"text\" class=\"form-control\" placeholder=\"{{searchTitle}}\" [(ngModel)]=\"tableData.searchString\" (keyup.enter)=\"changeTableData()\" style=\"z-index: 0\">\n </div>\n</div>\n<div class=\"row\" style=\"padding-top: 20px;\">\n <collapse-table [collapseSize]=\"collapseSize\" headerFixed=\"true\">\n <thead>\n <tr>\n <th *ngFor=\"let column of columns\" (click)=\"sortColumn(column.data)\" style=\"cursor:pointer\">\n {{column.name}}\n <i *ngIf=\"tableData.sortColumn == column.data && tableData.sortOrder === 'desc'\" class=\"fa fa-caret-down\"></i>\n <i *ngIf=\"tableData.sortColumn == column.data && tableData.sortOrder === 'asc'\" class=\"fa fa-caret-up\"></i>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data\" [ngClass]=\"{'orangeRow': item['color_red']}\">\n <td *ngFor=\"let column of columns\" (click)=\"navigateTo(item['_id'], column.data)\" [attr.data-label]=\"column.name\">\n <span *ngIf=\"typeOf(item[column.data]) !== 'boolean' && column.data !== 'cost' && column.data !== 'wells' && column.data !== 'cost_total' && column.data !== 'price' && column.data !== 'date' && column.data !== 'date_created' && column.data !== 'date_delivered' && column.data !== 'quantity' && column.data !== 'quantity_string' && column.data !== 'min_stock' && column.data !== 'max_stock' && column.data !== 'file_key' && column.data !== 'date_in'\">{{column.subData ? item[column.data][column.subData] : item[column.data]}}</span>\n <span *ngIf=\"column.data === 'cost' || column.data === 'price' || column.data === 'cost_total'\">{{item[column.data] | currency:'USD':'symbol':\"1.2-2\"}}</span>\n <span *ngIf=\"column.data === 'date' || column.data === 'date_created' || column.data === 'date_delivered'\">{{item[column.data] | date:'short'}}</span>\n <span *ngIf=\"column.data === 'quantity' || column.data === 'min_stock' || column.data === 'max_stock'\">{{item[column.data] | number}}</span>\n <span *ngIf=\"column.data === 'quantity_string'\">{{item[column.data] | number}}</span>\n <span *ngIf=\"column.data === 'wells'\"><pre>{{item[column.data]}}</pre></span>\n <span *ngIf=\"column.data === 'file_key'\">\n <button type=\"button\" (click)=\"openFile(item[column.data])\" class=\"btn btn-secondary\">Open File</button>\n <!-- <button type=\"button\" class=\"btn btn-warning\" (click)=\"viewDeletedReason(item)\" *ngIf=\"item.deleted.is_deleted\">View Deleted Reason</button> -->\n </span>\n <span *ngIf=\"typeOf(item[column.data]) === 'boolean'\">\n <i *ngIf=\"item[column.data]\" class=\"fa fa-check\" style=\"color: green; font-size: 18px;\" aria-hidden=\"true\"></i>\n <i *ngIf=\"!item[column.data]\" class=\"fa fa-times\" style=\"color: red; font-size: 18px;\" aria-hidden=\"true\"></i>\n </span>\n </td>\n </tr>\n </tbody>\n </collapse-table> \n</div>\n<hr />\n<div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"row\"> \n <div class=\"col-lg-8\">\n <label class=\"form-control-label\">Entries Per Page</label>\n <select class=\"form-control\" [(ngModel)]=\"tableData.entriesPerPage\" (ngModelChange)=\"changeTableData()\">\n <option value=\"25\">25</option>\n <option value=\"50\">50</option>\n <option value=\"100\">100</option>\n <option value=\"250\">250</option>\n </select>\n </div>\n </div>\n </div>\n <div class=\"col-lg-8\" style=\"margin-top: 16px;\">\n <ngb-pagination class=\"float-right\"\n boundaryLinks=\"true\"\n [collectionSize]=\"totalItems\"\n directionLinks=\"true\"\n ellipses=\"false\"\n [(page)]=\"tableData.pageNum\"\n maxSize=\"6\"\n [pageSize]=\"tableData.entriesPerPage\"\n rotate=\"true\"\n (pageChange)=\"changeTableData()\"\n >\n </ngb-pagination>\n </div>\n</div>\n", styles: ["\n .orangeRow { \n background-color: orangered;\n }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n"], dependencies: [{ kind: "component", type: i1$3.NgbPagination, selector: "ngb-pagination", inputs: ["disabled", "boundaryLinks", "directionLinks", "ellipses", "rotate", "collectionSize", "maxSize", "page", "pageSize", "size"], outputs: ["pageChange"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CollapseTableComponent, selector: "collapse-table", inputs: ["collapseSize", "tableFixed", "headerFixed", "secondaryColor", "tertiaryColor"] }, { kind: "pipe", type: i7.DecimalPipe, name: "number" }, { kind: "pipe", type: i7.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i7.DatePipe, name: "date" }] });
6952
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DatatableComponent, decorators: [{
6768
+ DatatableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatatableComponent, deps: [{ token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
6769
+ DatatableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DatatableComponent, selector: "data-table", inputs: { urlClick: "urlClick", columns: "columns", data: "data", collapseSize: "collapseSize", searchTitle: "searchTitle", totalItems: "totalItems", tableData: "tableData" }, outputs: { onChangeTableData: "onChangeTableData" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n .orangeRow { \n background-color: orangered;\n }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n</style>\n\n<div class=\"row\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <button class=\"btn btn-primary\" type=\"button\" (click)=\"changeTableData()\">Search!</button>\n </span>\n <input type=\"text\" class=\"form-control\" placeholder=\"{{searchTitle}}\" [(ngModel)]=\"tableData.searchString\" (keyup.enter)=\"changeTableData()\" style=\"z-index: 0\">\n </div>\n</div>\n<div class=\"row\" style=\"padding-top: 20px;\">\n <collapse-table [collapseSize]=\"collapseSize\" headerFixed=\"true\">\n <thead>\n <tr>\n <th *ngFor=\"let column of columns\" (click)=\"sortColumn(column.data)\" style=\"cursor:pointer\">\n {{column.name}}\n <i *ngIf=\"tableData.sortColumn == column.data && tableData.sortOrder === 'desc'\" class=\"fa fa-caret-down\"></i>\n <i *ngIf=\"tableData.sortColumn == column.data && tableData.sortOrder === 'asc'\" class=\"fa fa-caret-up\"></i>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data\" [ngClass]=\"{'orangeRow': item['color_red']}\">\n <td *ngFor=\"let column of columns\" (click)=\"navigateTo(item['_id'], column.data)\" [attr.data-bs-label]=\"column.name\">\n <span *ngIf=\"typeOf(item[column.data]) !== 'boolean' && column.data !== 'cost' && column.data !== 'wells' && column.data !== 'cost_total' && column.data !== 'price' && column.data !== 'date' && column.data !== 'date_created' && column.data !== 'date_delivered' && column.data !== 'quantity' && column.data !== 'quantity_string' && column.data !== 'min_stock' && column.data !== 'max_stock' && column.data !== 'file_key' && column.data !== 'date_in'\">{{column.subData ? item[column.data][column.subData] : item[column.data]}}</span>\n <span *ngIf=\"column.data === 'cost' || column.data === 'price' || column.data === 'cost_total'\">{{item[column.data] | currency:'USD':'symbol':\"1.2-2\"}}</span>\n <span *ngIf=\"column.data === 'date' || column.data === 'date_created' || column.data === 'date_delivered'\">{{item[column.data] | date:'short'}}</span>\n <span *ngIf=\"column.data === 'quantity' || column.data === 'min_stock' || column.data === 'max_stock'\">{{item[column.data] | number}}</span>\n <span *ngIf=\"column.data === 'quantity_string'\">{{item[column.data] | number}}</span>\n <span *ngIf=\"column.data === 'wells'\"><pre>{{item[column.data]}}</pre></span>\n <span *ngIf=\"column.data === 'file_key'\">\n <button type=\"button\" (click)=\"openFile(item[column.data])\" class=\"btn btn-secondary\">Open File</button>\n <!-- <button type=\"button\" class=\"btn btn-warning\" (click)=\"viewDeletedReason(item)\" *ngIf=\"item.deleted.is_deleted\">View Deleted Reason</button> -->\n </span>\n <span *ngIf=\"typeOf(item[column.data]) === 'boolean'\">\n <i *ngIf=\"item[column.data]\" class=\"fa fa-check\" style=\"color: green; font-size: 18px;\" aria-hidden=\"true\"></i>\n <i *ngIf=\"!item[column.data]\" class=\"fa fa-times\" style=\"color: red; font-size: 18px;\" aria-hidden=\"true\"></i>\n </span>\n </td>\n </tr>\n </tbody>\n </collapse-table> \n</div>\n<hr />\n<div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"row\"> \n <div class=\"col-lg-8\">\n <label class=\"form-control-label\">Entries Per Page</label>\n <select class=\"form-control\" [(ngModel)]=\"tableData.entriesPerPage\" (ngModelChange)=\"changeTableData()\">\n <option value=\"25\">25</option>\n <option value=\"50\">50</option>\n <option value=\"100\">100</option>\n <option value=\"250\">250</option>\n </select>\n </div>\n </div>\n </div>\n <div class=\"col-lg-8\" style=\"margin-top: 16px;\">\n <ngb-pagination class=\"float-right\"\n boundaryLinks=\"true\"\n [collectionSize]=\"totalItems\"\n directionLinks=\"true\"\n ellipses=\"false\"\n [(page)]=\"tableData.pageNum\"\n maxSize=\"6\"\n [pageSize]=\"tableData.entriesPerPage\"\n rotate=\"true\"\n (pageChange)=\"changeTableData()\"\n >\n </ngb-pagination>\n </div>\n</div>\n", styles: ["\n .orangeRow { \n background-color: orangered;\n }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n"], dependencies: [{ kind: "component", type: i1$3.NgbPagination, selector: "ngb-pagination", inputs: ["disabled", "boundaryLinks", "directionLinks", "ellipses", "rotate", "collectionSize", "maxSize", "page", "pageSize", "size"], outputs: ["pageChange"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CollapseTableComponent, selector: "collapse-table", inputs: ["collapseSize", "tableFixed", "headerFixed", "secondaryColor", "tertiaryColor"] }, { kind: "pipe", type: i7.DecimalPipe, name: "number" }, { kind: "pipe", type: i7.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i7.DatePipe, name: "date" }] });
6770
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatatableComponent, decorators: [{
6953
6771
  type: Component,
6954
- args: [{ providers: [ProviderService], selector: 'data-table', template: "<style>\n .orangeRow { \n background-color: orangered;\n }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n</style>\n\n<div class=\"row\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <button class=\"btn btn-primary\" type=\"button\" (click)=\"changeTableData()\">Search!</button>\n </span>\n <input type=\"text\" class=\"form-control\" placeholder=\"{{searchTitle}}\" [(ngModel)]=\"tableData.searchString\" (keyup.enter)=\"changeTableData()\" style=\"z-index: 0\">\n </div>\n</div>\n<div class=\"row\" style=\"padding-top: 20px;\">\n <collapse-table [collapseSize]=\"collapseSize\" headerFixed=\"true\">\n <thead>\n <tr>\n <th *ngFor=\"let column of columns\" (click)=\"sortColumn(column.data)\" style=\"cursor:pointer\">\n {{column.name}}\n <i *ngIf=\"tableData.sortColumn == column.data && tableData.sortOrder === 'desc'\" class=\"fa fa-caret-down\"></i>\n <i *ngIf=\"tableData.sortColumn == column.data && tableData.sortOrder === 'asc'\" class=\"fa fa-caret-up\"></i>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data\" [ngClass]=\"{'orangeRow': item['color_red']}\">\n <td *ngFor=\"let column of columns\" (click)=\"navigateTo(item['_id'], column.data)\" [attr.data-label]=\"column.name\">\n <span *ngIf=\"typeOf(item[column.data]) !== 'boolean' && column.data !== 'cost' && column.data !== 'wells' && column.data !== 'cost_total' && column.data !== 'price' && column.data !== 'date' && column.data !== 'date_created' && column.data !== 'date_delivered' && column.data !== 'quantity' && column.data !== 'quantity_string' && column.data !== 'min_stock' && column.data !== 'max_stock' && column.data !== 'file_key' && column.data !== 'date_in'\">{{column.subData ? item[column.data][column.subData] : item[column.data]}}</span>\n <span *ngIf=\"column.data === 'cost' || column.data === 'price' || column.data === 'cost_total'\">{{item[column.data] | currency:'USD':'symbol':\"1.2-2\"}}</span>\n <span *ngIf=\"column.data === 'date' || column.data === 'date_created' || column.data === 'date_delivered'\">{{item[column.data] | date:'short'}}</span>\n <span *ngIf=\"column.data === 'quantity' || column.data === 'min_stock' || column.data === 'max_stock'\">{{item[column.data] | number}}</span>\n <span *ngIf=\"column.data === 'quantity_string'\">{{item[column.data] | number}}</span>\n <span *ngIf=\"column.data === 'wells'\"><pre>{{item[column.data]}}</pre></span>\n <span *ngIf=\"column.data === 'file_key'\">\n <button type=\"button\" (click)=\"openFile(item[column.data])\" class=\"btn btn-secondary\">Open File</button>\n <!-- <button type=\"button\" class=\"btn btn-warning\" (click)=\"viewDeletedReason(item)\" *ngIf=\"item.deleted.is_deleted\">View Deleted Reason</button> -->\n </span>\n <span *ngIf=\"typeOf(item[column.data]) === 'boolean'\">\n <i *ngIf=\"item[column.data]\" class=\"fa fa-check\" style=\"color: green; font-size: 18px;\" aria-hidden=\"true\"></i>\n <i *ngIf=\"!item[column.data]\" class=\"fa fa-times\" style=\"color: red; font-size: 18px;\" aria-hidden=\"true\"></i>\n </span>\n </td>\n </tr>\n </tbody>\n </collapse-table> \n</div>\n<hr />\n<div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"row\"> \n <div class=\"col-lg-8\">\n <label class=\"form-control-label\">Entries Per Page</label>\n <select class=\"form-control\" [(ngModel)]=\"tableData.entriesPerPage\" (ngModelChange)=\"changeTableData()\">\n <option value=\"25\">25</option>\n <option value=\"50\">50</option>\n <option value=\"100\">100</option>\n <option value=\"250\">250</option>\n </select>\n </div>\n </div>\n </div>\n <div class=\"col-lg-8\" style=\"margin-top: 16px;\">\n <ngb-pagination class=\"float-right\"\n boundaryLinks=\"true\"\n [collectionSize]=\"totalItems\"\n directionLinks=\"true\"\n ellipses=\"false\"\n [(page)]=\"tableData.pageNum\"\n maxSize=\"6\"\n [pageSize]=\"tableData.entriesPerPage\"\n rotate=\"true\"\n (pageChange)=\"changeTableData()\"\n >\n </ngb-pagination>\n </div>\n</div>\n" }]
6772
+ args: [{ providers: [ProviderService], selector: 'data-table', template: "<style>\n .orangeRow { \n background-color: orangered;\n }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n</style>\n\n<div class=\"row\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <button class=\"btn btn-primary\" type=\"button\" (click)=\"changeTableData()\">Search!</button>\n </span>\n <input type=\"text\" class=\"form-control\" placeholder=\"{{searchTitle}}\" [(ngModel)]=\"tableData.searchString\" (keyup.enter)=\"changeTableData()\" style=\"z-index: 0\">\n </div>\n</div>\n<div class=\"row\" style=\"padding-top: 20px;\">\n <collapse-table [collapseSize]=\"collapseSize\" headerFixed=\"true\">\n <thead>\n <tr>\n <th *ngFor=\"let column of columns\" (click)=\"sortColumn(column.data)\" style=\"cursor:pointer\">\n {{column.name}}\n <i *ngIf=\"tableData.sortColumn == column.data && tableData.sortOrder === 'desc'\" class=\"fa fa-caret-down\"></i>\n <i *ngIf=\"tableData.sortColumn == column.data && tableData.sortOrder === 'asc'\" class=\"fa fa-caret-up\"></i>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let item of data\" [ngClass]=\"{'orangeRow': item['color_red']}\">\n <td *ngFor=\"let column of columns\" (click)=\"navigateTo(item['_id'], column.data)\" [attr.data-bs-label]=\"column.name\">\n <span *ngIf=\"typeOf(item[column.data]) !== 'boolean' && column.data !== 'cost' && column.data !== 'wells' && column.data !== 'cost_total' && column.data !== 'price' && column.data !== 'date' && column.data !== 'date_created' && column.data !== 'date_delivered' && column.data !== 'quantity' && column.data !== 'quantity_string' && column.data !== 'min_stock' && column.data !== 'max_stock' && column.data !== 'file_key' && column.data !== 'date_in'\">{{column.subData ? item[column.data][column.subData] : item[column.data]}}</span>\n <span *ngIf=\"column.data === 'cost' || column.data === 'price' || column.data === 'cost_total'\">{{item[column.data] | currency:'USD':'symbol':\"1.2-2\"}}</span>\n <span *ngIf=\"column.data === 'date' || column.data === 'date_created' || column.data === 'date_delivered'\">{{item[column.data] | date:'short'}}</span>\n <span *ngIf=\"column.data === 'quantity' || column.data === 'min_stock' || column.data === 'max_stock'\">{{item[column.data] | number}}</span>\n <span *ngIf=\"column.data === 'quantity_string'\">{{item[column.data] | number}}</span>\n <span *ngIf=\"column.data === 'wells'\"><pre>{{item[column.data]}}</pre></span>\n <span *ngIf=\"column.data === 'file_key'\">\n <button type=\"button\" (click)=\"openFile(item[column.data])\" class=\"btn btn-secondary\">Open File</button>\n <!-- <button type=\"button\" class=\"btn btn-warning\" (click)=\"viewDeletedReason(item)\" *ngIf=\"item.deleted.is_deleted\">View Deleted Reason</button> -->\n </span>\n <span *ngIf=\"typeOf(item[column.data]) === 'boolean'\">\n <i *ngIf=\"item[column.data]\" class=\"fa fa-check\" style=\"color: green; font-size: 18px;\" aria-hidden=\"true\"></i>\n <i *ngIf=\"!item[column.data]\" class=\"fa fa-times\" style=\"color: red; font-size: 18px;\" aria-hidden=\"true\"></i>\n </span>\n </td>\n </tr>\n </tbody>\n </collapse-table> \n</div>\n<hr />\n<div class=\"row\">\n <div class=\"col-lg-4\">\n <div class=\"row\"> \n <div class=\"col-lg-8\">\n <label class=\"form-control-label\">Entries Per Page</label>\n <select class=\"form-control\" [(ngModel)]=\"tableData.entriesPerPage\" (ngModelChange)=\"changeTableData()\">\n <option value=\"25\">25</option>\n <option value=\"50\">50</option>\n <option value=\"100\">100</option>\n <option value=\"250\">250</option>\n </select>\n </div>\n </div>\n </div>\n <div class=\"col-lg-8\" style=\"margin-top: 16px;\">\n <ngb-pagination class=\"float-right\"\n boundaryLinks=\"true\"\n [collectionSize]=\"totalItems\"\n directionLinks=\"true\"\n ellipses=\"false\"\n [(page)]=\"tableData.pageNum\"\n maxSize=\"6\"\n [pageSize]=\"tableData.entriesPerPage\"\n rotate=\"true\"\n (pageChange)=\"changeTableData()\"\n >\n </ngb-pagination>\n </div>\n</div>\n" }]
6955
6773
  }], ctorParameters: function () { return [{ type: ProviderService }]; }, propDecorators: { urlClick: [{
6956
6774
  type: Input
6957
6775
  }], columns: [{
@@ -6972,18 +6790,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
6972
6790
 
6973
6791
  class DatatableModule {
6974
6792
  }
6975
- DatatableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DatatableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6976
- DatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: DatatableModule, declarations: [DatatableComponent], imports: [NgbModule,
6793
+ DatatableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatatableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6794
+ DatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DatatableModule, declarations: [DatatableComponent], imports: [NgbModule,
6977
6795
  FormsModule,
6978
6796
  CommonModule,
6979
6797
  RouterModule,
6980
6798
  CollapseTableModule], exports: [DatatableComponent] });
6981
- DatatableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DatatableModule, imports: [NgbModule,
6799
+ DatatableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatatableModule, imports: [NgbModule,
6982
6800
  FormsModule,
6983
6801
  CommonModule,
6984
6802
  RouterModule,
6985
6803
  CollapseTableModule] });
6986
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DatatableModule, decorators: [{
6804
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatatableModule, decorators: [{
6987
6805
  type: NgModule,
6988
6806
  args: [{
6989
6807
  imports: [
@@ -7387,11 +7205,11 @@ class FileUploadComponent extends BaseComponent {
7387
7205
  }, cancelled => { });
7388
7206
  }
7389
7207
  }
7390
- FileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FileUploadComponent, deps: [{ token: ResizeService }, { token: ProviderService }, { token: DialogService }, { token: i4.HttpClient }], target: i0.ɵɵFactoryTarget.Component });
7391
- FileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: FileUploadComponent, selector: "file-upload", inputs: { files: "files", allowDelete: "allowDelete", allowReplace: "allowReplace", showFileUpload: "showFileUpload", fileType: "fileType" }, outputs: { filesChanged: "filesChanged", fileAdded: "fileAdded", fileRemoved: "fileRemoved" }, viewQueries: [{ propertyName: "download_link", first: true, predicate: ["download_link"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n \n html, body { height: 100%; }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n \n /* Label container: */\n .file {\n display: inline-block;\n padding: 0 0 0 0.5em;\n cursor: pointer;\n position: relative;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n }\n \n /* The pseudo input field: */\n .file::before {\n content: \"\";\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: -1;\n \n /* Bootstrap appearance: */\n background-color: #fff;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n -webkit-box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n }\n \n /* The pseudo button: */\n .file::after {\n content: \"Browse\";\n display: inline-block;\n \n /* Bootstrap appearance: */\n background-color: #eee;\n border: .075rem solid #ddd;\n border-radius: 0 .25rem .25rem 0;\n padding: .5rem 1rem;\n line-height: 1.5;\n color: #555;\n }\n \n .file input[type=file] {\n cursor: pointer;\n border: 0 none;\n width: 12em;\n }\n \n /* -webkit hide the button: */\n .file input[type=file]::-webkit-file-upload-button {\n border: 0;\n padding: 0;\n margin: 0 ;\n width: 0;\n background: transparent;\n } \n \n /* IE10+ hide the button: */\n .file input[type=file]::-ms-browse {\n padding: 0;\n margin: -1px;\n width: 0;\n border: 0;\n background: transparent;\n }\n \n .file input[type=file]::-ms-value {\n background: #fff;\n border: 0;\n }\n\n card {\n width: 100%;\n }\n</style>\n\n<a style=\"display: none\" #download_link></a>\n<input hidden type=\"file\" #fileInputReplace (change)=\"onFileSelectReplace($event)\" />\n \n<div class=\"card\">\n <div class=\"card-header\">\n <strong class=\"pull-left\">Files</strong>\n </div>\n <div class=\"card-block\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"row\" *ngIf=\"showFileUpload\">\n <div class=\"col-lg-6\">\n <div class=\"container\">\n <div style=\"margin: 10px 0px; font-weight: bold;\">Upload File</div>\n <label class=\"file\">\n <input type=\"file\" #fileInput (change)=\"onFileSelect($event)\" />\n </label>\n <br>\n <ngx-file-drop dropZoneLabel=\"Drop files here\" style=\"width: 223px; height: 112px; border: 1px black dashed; border-radius: 5px; justify-content: center;\" class=\"vertical-align\" (onFileDrop)=\"dragFileAccepted($event)\"></ngx-file-drop>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div *ngIf=\"isUploading\">\n <b>{{progressMsg || 'N/A'}}</b>\n </div>\n </div>\n </div>\n <div class=\"row\" style=\"margin-top: 10px;\">\n <div class=\"col-lg-12\" *ngIf=\"windowSize > 980\">\n <div style=\"text-align: center;\" *ngIf=\"pdfSrc\">\n <ngx-doc-viewer [url]=\"pdfSrc\" style=\"display: block;\"></ngx-doc-viewer>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div *ngIf=\"files && files.length\">\n <b>Uploaded Files</b>\n <div [style.max-height]=\"windowSize > 900 ? '300px' : ''\" [style.overflow-y]=\"windowSize > 900 ? 'auto' : ''\">\n <collapse-table collapseSize=\"900\">\n <thead>\n <tr>\n <th>File Name</th>\n <th>Size</th>\n <th>Type</th>\n <th>Actions</th>\n </tr>\n </thead> \n <tbody>\n <tr *ngFor=\"let file of files; let i = index\">\n <td data-label=\"File Name\" (click)=\"setPDFViewerSrc(file)\">{{file.name}}</td>\n <td data-label=\"Size\" (click)=\"setPDFViewerSrc(file)\">{{ file.size/1024/1024 | number:'.2' }} MB</td>\n <td data-label=\"Type\" (click)=\"setPDFViewerSrc(file)\">{{file.type}}</td>\n <td data-label=\"Actions\">\n <responsive-button-group collapseSize=\"900\">\n <button type=\"button\" class=\"btn btn-success\" (click)=\"open(file)\">Open</button>\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"download(file)\">Download</button>\n <button [hidden]=\"!allowDelete || (file.type !== 'misc' && !userIsInRole('super-admin'))\" type=\"button\" class=\"btn btn-danger\" (click)=\"deleteWithEmit(i)\">Delete</button>\n <button [hidden]=\"!allowDelete || (file.type !== 'misc' && !userIsInRole('super-admin'))\" type=\"button\" class=\"btn btn-danger\" (click)=\"fileInputReplace.click(); replaceFileIndex = i;\">Replace</button>\n <button type=\"button\" class=\"btn btn-warning\" (click)=\"email(file)\">Email</button>\n </responsive-button-group>\n </td>\n </tr>\n </tbody>\n </collapse-table>\n </div>\n </div>\n <div *ngIf=\"!files || !files.length\">\n <b>No Uploaded Files</b>\n </div>\n </div>\n </div>\n </div>\n</div>", styles: ["\n \n html, body { height: 100%; }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n \n /* Label container: */\n .file {\n display: inline-block;\n padding: 0 0 0 0.5em;\n cursor: pointer;\n position: relative;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n }\n \n /* The pseudo input field: */\n .file::before {\n content: \"\";\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: -1;\n \n /* Bootstrap appearance: */\n background-color: #fff;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n -webkit-box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n }\n \n /* The pseudo button: */\n .file::after {\n content: \"Browse\";\n display: inline-block;\n \n /* Bootstrap appearance: */\n background-color: #eee;\n border: .075rem solid #ddd;\n border-radius: 0 .25rem .25rem 0;\n padding: .5rem 1rem;\n line-height: 1.5;\n color: #555;\n }\n \n .file input[type=file] {\n cursor: pointer;\n border: 0 none;\n width: 12em;\n }\n \n /* -webkit hide the button: */\n .file input[type=file]::-webkit-file-upload-button {\n border: 0;\n padding: 0;\n margin: 0 ;\n width: 0;\n background: transparent;\n } \n \n /* IE10+ hide the button: */\n .file input[type=file]::-ms-browse {\n padding: 0;\n margin: -1px;\n width: 0;\n border: 0;\n background: transparent;\n }\n \n .file input[type=file]::-ms-value {\n background: #fff;\n border: 0;\n }\n\n card {\n width: 100%;\n }\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CollapseTableComponent, selector: "collapse-table", inputs: ["collapseSize", "tableFixed", "headerFixed", "secondaryColor", "tertiaryColor"] }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "component", type: i8.NgxFileDropComponent, selector: "ngx-file-drop", inputs: ["accept", "directory", "multiple", "dropZoneLabel", "dropZoneClassName", "useDragEnter", "contentClassName", "showBrowseBtn", "browseBtnClassName", "browseBtnLabel", "disabled"], outputs: ["onFileDrop", "onFileOver", "onFileLeave"] }, { kind: "component", type: i9.NgxDocViewerComponent, selector: "ngx-doc-viewer", inputs: ["url", "queryParams", "viewerUrl", "googleCheckInterval", "googleMaxChecks", "disableContent", "googleCheckContentLoaded", "viewer", "overrideLocalhost"], outputs: ["loaded"] }, { kind: "pipe", type: i7.DecimalPipe, name: "number" }] });
7392
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FileUploadComponent, decorators: [{
7208
+ FileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileUploadComponent, deps: [{ token: ResizeService }, { token: ProviderService }, { token: DialogService }, { token: i4.HttpClient }], target: i0.ɵɵFactoryTarget.Component });
7209
+ FileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: FileUploadComponent, selector: "file-upload", inputs: { files: "files", allowDelete: "allowDelete", allowReplace: "allowReplace", showFileUpload: "showFileUpload", fileType: "fileType" }, outputs: { filesChanged: "filesChanged", fileAdded: "fileAdded", fileRemoved: "fileRemoved" }, viewQueries: [{ propertyName: "download_link", first: true, predicate: ["download_link"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n \n html, body { height: 100%; }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n \n /* Label container: */\n .file {\n display: inline-block;\n padding: 0 0 0 0.5em;\n cursor: pointer;\n position: relative;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n }\n \n /* The pseudo input field: */\n .file::before {\n content: \"\";\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: -1;\n \n /* Bootstrap appearance: */\n background-color: #fff;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n -webkit-box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n }\n \n /* The pseudo button: */\n .file::after {\n content: \"Browse\";\n display: inline-block;\n \n /* Bootstrap appearance: */\n background-color: #eee;\n border: .075rem solid #ddd;\n border-radius: 0 .25rem .25rem 0;\n padding: .5rem 1rem;\n line-height: 1.5;\n color: #555;\n }\n \n .file input[type=file] {\n cursor: pointer;\n border: 0 none;\n width: 12em;\n }\n \n /* -webkit hide the button: */\n .file input[type=file]::-webkit-file-upload-button {\n border: 0;\n padding: 0;\n margin: 0 ;\n width: 0;\n background: transparent;\n } \n \n /* IE10+ hide the button: */\n .file input[type=file]::-ms-browse {\n padding: 0;\n margin: -1px;\n width: 0;\n border: 0;\n background: transparent;\n }\n \n .file input[type=file]::-ms-value {\n background: #fff;\n border: 0;\n }\n\n card {\n width: 100%;\n }\n</style>\n\n<a style=\"display: none\" #download_link></a>\n<input hidden type=\"file\" #fileInputReplace (change)=\"onFileSelectReplace($event)\" />\n \n<div class=\"card\">\n <div class=\"card-header\">\n <strong class=\"pull-left\">Files</strong>\n </div>\n <div class=\"card-block\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"row\" *ngIf=\"showFileUpload\">\n <div class=\"col-lg-6\">\n <div class=\"container\">\n <div style=\"margin: 10px 0px; font-weight: bold;\">Upload File</div>\n <label class=\"file\">\n <input type=\"file\" #fileInput (change)=\"onFileSelect($event)\" />\n </label>\n <br>\n <ngx-file-drop dropZoneLabel=\"Drop files here\" style=\"width: 223px; height: 112px; border: 1px black dashed; border-radius: 5px; justify-content: center;\" class=\"vertical-align\" (onFileDrop)=\"dragFileAccepted($event)\"></ngx-file-drop>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div *ngIf=\"isUploading\">\n <b>{{progressMsg || 'N/A'}}</b>\n </div>\n </div>\n </div>\n <div class=\"row\" style=\"margin-top: 10px;\">\n <div class=\"col-lg-12\" *ngIf=\"windowSize > 980\">\n <div style=\"text-align: center;\" *ngIf=\"pdfSrc\">\n <ngx-doc-viewer [url]=\"pdfSrc\" style=\"display: block;\"></ngx-doc-viewer>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div *ngIf=\"files && files.length\">\n <b>Uploaded Files</b>\n <div [style.max-height]=\"windowSize > 900 ? '300px' : ''\" [style.overflow-y]=\"windowSize > 900 ? 'auto' : ''\">\n <collapse-table collapseSize=\"900\">\n <thead>\n <tr>\n <th>File Name</th>\n <th>Size</th>\n <th>Type</th>\n <th>Actions</th>\n </tr>\n </thead> \n <tbody>\n <tr *ngFor=\"let file of files; let i = index\">\n <td data-bs-label=\"File Name\" (click)=\"setPDFViewerSrc(file)\">{{file.name}}</td>\n <td data-bs-label=\"Size\" (click)=\"setPDFViewerSrc(file)\">{{ file.size/1024/1024 | number:'.2' }} MB</td>\n <td data-bs-label=\"Type\" (click)=\"setPDFViewerSrc(file)\">{{file.type}}</td>\n <td data-bs-label=\"Actions\">\n <responsive-button-group collapseSize=\"900\">\n <button type=\"button\" class=\"btn btn-success\" (click)=\"open(file)\">Open</button>\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"download(file)\">Download</button>\n <button [hidden]=\"!allowDelete || (file.type !== 'misc' && !userIsInRole('super-admin'))\" type=\"button\" class=\"btn btn-danger\" (click)=\"deleteWithEmit(i)\">Delete</button>\n <button [hidden]=\"!allowDelete || (file.type !== 'misc' && !userIsInRole('super-admin'))\" type=\"button\" class=\"btn btn-danger\" (click)=\"fileInputReplace.click(); replaceFileIndex = i;\">Replace</button>\n <button type=\"button\" class=\"btn btn-warning\" (click)=\"email(file)\">Email</button>\n </responsive-button-group>\n </td>\n </tr>\n </tbody>\n </collapse-table>\n </div>\n </div>\n <div *ngIf=\"!files || !files.length\">\n <b>No Uploaded Files</b>\n </div>\n </div>\n </div>\n </div>\n</div>", styles: ["\n \n html, body { height: 100%; }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n \n /* Label container: */\n .file {\n display: inline-block;\n padding: 0 0 0 0.5em;\n cursor: pointer;\n position: relative;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n }\n \n /* The pseudo input field: */\n .file::before {\n content: \"\";\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: -1;\n \n /* Bootstrap appearance: */\n background-color: #fff;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n -webkit-box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n }\n \n /* The pseudo button: */\n .file::after {\n content: \"Browse\";\n display: inline-block;\n \n /* Bootstrap appearance: */\n background-color: #eee;\n border: .075rem solid #ddd;\n border-radius: 0 .25rem .25rem 0;\n padding: .5rem 1rem;\n line-height: 1.5;\n color: #555;\n }\n \n .file input[type=file] {\n cursor: pointer;\n border: 0 none;\n width: 12em;\n }\n \n /* -webkit hide the button: */\n .file input[type=file]::-webkit-file-upload-button {\n border: 0;\n padding: 0;\n margin: 0 ;\n width: 0;\n background: transparent;\n } \n \n /* IE10+ hide the button: */\n .file input[type=file]::-ms-browse {\n padding: 0;\n margin: -1px;\n width: 0;\n border: 0;\n background: transparent;\n }\n \n .file input[type=file]::-ms-value {\n background: #fff;\n border: 0;\n }\n\n card {\n width: 100%;\n }\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CollapseTableComponent, selector: "collapse-table", inputs: ["collapseSize", "tableFixed", "headerFixed", "secondaryColor", "tertiaryColor"] }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "component", type: i8.NgxFileDropComponent, selector: "ngx-file-drop", inputs: ["accept", "directory", "multiple", "dropZoneLabel", "dropZoneClassName", "useDragEnter", "contentClassName", "showBrowseBtn", "browseBtnClassName", "browseBtnLabel", "disabled"], outputs: ["onFileDrop", "onFileOver", "onFileLeave"] }, { kind: "component", type: i9.NgxDocViewerComponent, selector: "ngx-doc-viewer", inputs: ["url", "queryParams", "viewerUrl", "googleCheckInterval", "googleMaxChecks", "disableContent", "googleCheckContentLoaded", "viewer", "overrideLocalhost"], outputs: ["loaded"] }, { kind: "pipe", type: i7.DecimalPipe, name: "number" }] });
7210
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileUploadComponent, decorators: [{
7393
7211
  type: Component,
7394
- args: [{ selector: 'file-upload', template: "<style>\n \n html, body { height: 100%; }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n \n /* Label container: */\n .file {\n display: inline-block;\n padding: 0 0 0 0.5em;\n cursor: pointer;\n position: relative;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n }\n \n /* The pseudo input field: */\n .file::before {\n content: \"\";\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: -1;\n \n /* Bootstrap appearance: */\n background-color: #fff;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n -webkit-box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n }\n \n /* The pseudo button: */\n .file::after {\n content: \"Browse\";\n display: inline-block;\n \n /* Bootstrap appearance: */\n background-color: #eee;\n border: .075rem solid #ddd;\n border-radius: 0 .25rem .25rem 0;\n padding: .5rem 1rem;\n line-height: 1.5;\n color: #555;\n }\n \n .file input[type=file] {\n cursor: pointer;\n border: 0 none;\n width: 12em;\n }\n \n /* -webkit hide the button: */\n .file input[type=file]::-webkit-file-upload-button {\n border: 0;\n padding: 0;\n margin: 0 ;\n width: 0;\n background: transparent;\n } \n \n /* IE10+ hide the button: */\n .file input[type=file]::-ms-browse {\n padding: 0;\n margin: -1px;\n width: 0;\n border: 0;\n background: transparent;\n }\n \n .file input[type=file]::-ms-value {\n background: #fff;\n border: 0;\n }\n\n card {\n width: 100%;\n }\n</style>\n\n<a style=\"display: none\" #download_link></a>\n<input hidden type=\"file\" #fileInputReplace (change)=\"onFileSelectReplace($event)\" />\n \n<div class=\"card\">\n <div class=\"card-header\">\n <strong class=\"pull-left\">Files</strong>\n </div>\n <div class=\"card-block\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"row\" *ngIf=\"showFileUpload\">\n <div class=\"col-lg-6\">\n <div class=\"container\">\n <div style=\"margin: 10px 0px; font-weight: bold;\">Upload File</div>\n <label class=\"file\">\n <input type=\"file\" #fileInput (change)=\"onFileSelect($event)\" />\n </label>\n <br>\n <ngx-file-drop dropZoneLabel=\"Drop files here\" style=\"width: 223px; height: 112px; border: 1px black dashed; border-radius: 5px; justify-content: center;\" class=\"vertical-align\" (onFileDrop)=\"dragFileAccepted($event)\"></ngx-file-drop>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div *ngIf=\"isUploading\">\n <b>{{progressMsg || 'N/A'}}</b>\n </div>\n </div>\n </div>\n <div class=\"row\" style=\"margin-top: 10px;\">\n <div class=\"col-lg-12\" *ngIf=\"windowSize > 980\">\n <div style=\"text-align: center;\" *ngIf=\"pdfSrc\">\n <ngx-doc-viewer [url]=\"pdfSrc\" style=\"display: block;\"></ngx-doc-viewer>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div *ngIf=\"files && files.length\">\n <b>Uploaded Files</b>\n <div [style.max-height]=\"windowSize > 900 ? '300px' : ''\" [style.overflow-y]=\"windowSize > 900 ? 'auto' : ''\">\n <collapse-table collapseSize=\"900\">\n <thead>\n <tr>\n <th>File Name</th>\n <th>Size</th>\n <th>Type</th>\n <th>Actions</th>\n </tr>\n </thead> \n <tbody>\n <tr *ngFor=\"let file of files; let i = index\">\n <td data-label=\"File Name\" (click)=\"setPDFViewerSrc(file)\">{{file.name}}</td>\n <td data-label=\"Size\" (click)=\"setPDFViewerSrc(file)\">{{ file.size/1024/1024 | number:'.2' }} MB</td>\n <td data-label=\"Type\" (click)=\"setPDFViewerSrc(file)\">{{file.type}}</td>\n <td data-label=\"Actions\">\n <responsive-button-group collapseSize=\"900\">\n <button type=\"button\" class=\"btn btn-success\" (click)=\"open(file)\">Open</button>\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"download(file)\">Download</button>\n <button [hidden]=\"!allowDelete || (file.type !== 'misc' && !userIsInRole('super-admin'))\" type=\"button\" class=\"btn btn-danger\" (click)=\"deleteWithEmit(i)\">Delete</button>\n <button [hidden]=\"!allowDelete || (file.type !== 'misc' && !userIsInRole('super-admin'))\" type=\"button\" class=\"btn btn-danger\" (click)=\"fileInputReplace.click(); replaceFileIndex = i;\">Replace</button>\n <button type=\"button\" class=\"btn btn-warning\" (click)=\"email(file)\">Email</button>\n </responsive-button-group>\n </td>\n </tr>\n </tbody>\n </collapse-table>\n </div>\n </div>\n <div *ngIf=\"!files || !files.length\">\n <b>No Uploaded Files</b>\n </div>\n </div>\n </div>\n </div>\n</div>" }]
7212
+ args: [{ selector: 'file-upload', template: "<style>\n \n html, body { height: 100%; }\n\n collapse-table tr:hover {\n background-color: lightblue;\n cursor: pointer;\n }\n\n collapse-table {\n width: 100%;\n }\n \n /* Label container: */\n .file {\n display: inline-block;\n padding: 0 0 0 0.5em;\n cursor: pointer;\n position: relative;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n }\n \n /* The pseudo input field: */\n .file::before {\n content: \"\";\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: -1;\n \n /* Bootstrap appearance: */\n background-color: #fff;\n border: .075rem solid #ddd;\n border-radius: .25rem;\n -webkit-box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n box-shadow: inset 0 .2rem .4rem rgba(0,0,0,.05);\n }\n \n /* The pseudo button: */\n .file::after {\n content: \"Browse\";\n display: inline-block;\n \n /* Bootstrap appearance: */\n background-color: #eee;\n border: .075rem solid #ddd;\n border-radius: 0 .25rem .25rem 0;\n padding: .5rem 1rem;\n line-height: 1.5;\n color: #555;\n }\n \n .file input[type=file] {\n cursor: pointer;\n border: 0 none;\n width: 12em;\n }\n \n /* -webkit hide the button: */\n .file input[type=file]::-webkit-file-upload-button {\n border: 0;\n padding: 0;\n margin: 0 ;\n width: 0;\n background: transparent;\n } \n \n /* IE10+ hide the button: */\n .file input[type=file]::-ms-browse {\n padding: 0;\n margin: -1px;\n width: 0;\n border: 0;\n background: transparent;\n }\n \n .file input[type=file]::-ms-value {\n background: #fff;\n border: 0;\n }\n\n card {\n width: 100%;\n }\n</style>\n\n<a style=\"display: none\" #download_link></a>\n<input hidden type=\"file\" #fileInputReplace (change)=\"onFileSelectReplace($event)\" />\n \n<div class=\"card\">\n <div class=\"card-header\">\n <strong class=\"pull-left\">Files</strong>\n </div>\n <div class=\"card-block\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"row\" *ngIf=\"showFileUpload\">\n <div class=\"col-lg-6\">\n <div class=\"container\">\n <div style=\"margin: 10px 0px; font-weight: bold;\">Upload File</div>\n <label class=\"file\">\n <input type=\"file\" #fileInput (change)=\"onFileSelect($event)\" />\n </label>\n <br>\n <ngx-file-drop dropZoneLabel=\"Drop files here\" style=\"width: 223px; height: 112px; border: 1px black dashed; border-radius: 5px; justify-content: center;\" class=\"vertical-align\" (onFileDrop)=\"dragFileAccepted($event)\"></ngx-file-drop>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div *ngIf=\"isUploading\">\n <b>{{progressMsg || 'N/A'}}</b>\n </div>\n </div>\n </div>\n <div class=\"row\" style=\"margin-top: 10px;\">\n <div class=\"col-lg-12\" *ngIf=\"windowSize > 980\">\n <div style=\"text-align: center;\" *ngIf=\"pdfSrc\">\n <ngx-doc-viewer [url]=\"pdfSrc\" style=\"display: block;\"></ngx-doc-viewer>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div *ngIf=\"files && files.length\">\n <b>Uploaded Files</b>\n <div [style.max-height]=\"windowSize > 900 ? '300px' : ''\" [style.overflow-y]=\"windowSize > 900 ? 'auto' : ''\">\n <collapse-table collapseSize=\"900\">\n <thead>\n <tr>\n <th>File Name</th>\n <th>Size</th>\n <th>Type</th>\n <th>Actions</th>\n </tr>\n </thead> \n <tbody>\n <tr *ngFor=\"let file of files; let i = index\">\n <td data-bs-label=\"File Name\" (click)=\"setPDFViewerSrc(file)\">{{file.name}}</td>\n <td data-bs-label=\"Size\" (click)=\"setPDFViewerSrc(file)\">{{ file.size/1024/1024 | number:'.2' }} MB</td>\n <td data-bs-label=\"Type\" (click)=\"setPDFViewerSrc(file)\">{{file.type}}</td>\n <td data-bs-label=\"Actions\">\n <responsive-button-group collapseSize=\"900\">\n <button type=\"button\" class=\"btn btn-success\" (click)=\"open(file)\">Open</button>\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"download(file)\">Download</button>\n <button [hidden]=\"!allowDelete || (file.type !== 'misc' && !userIsInRole('super-admin'))\" type=\"button\" class=\"btn btn-danger\" (click)=\"deleteWithEmit(i)\">Delete</button>\n <button [hidden]=\"!allowDelete || (file.type !== 'misc' && !userIsInRole('super-admin'))\" type=\"button\" class=\"btn btn-danger\" (click)=\"fileInputReplace.click(); replaceFileIndex = i;\">Replace</button>\n <button type=\"button\" class=\"btn btn-warning\" (click)=\"email(file)\">Email</button>\n </responsive-button-group>\n </td>\n </tr>\n </tbody>\n </collapse-table>\n </div>\n </div>\n <div *ngIf=\"!files || !files.length\">\n <b>No Uploaded Files</b>\n </div>\n </div>\n </div>\n </div>\n</div>" }]
7395
7213
  }], ctorParameters: function () { return [{ type: ResizeService }, { type: ProviderService }, { type: DialogService }, { type: i4.HttpClient }]; }, propDecorators: { files: [{
7396
7214
  type: Input
7397
7215
  }], allowDelete: [{
@@ -7415,22 +7233,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
7415
7233
 
7416
7234
  class FileModule {
7417
7235
  }
7418
- FileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7419
- FileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: FileModule, declarations: [FileUploadComponent], imports: [CommonModule,
7236
+ FileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7237
+ FileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: FileModule, declarations: [FileUploadComponent], imports: [CommonModule,
7420
7238
  FormsModule,
7421
7239
  CollapseTableModule,
7422
7240
  NgbModule,
7423
7241
  ResponsiveButtonGroupModule,
7424
7242
  NgxFileDropModule,
7425
7243
  NgxDocViewerModule], exports: [FileUploadComponent] });
7426
- FileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FileModule, imports: [CommonModule,
7244
+ FileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileModule, imports: [CommonModule,
7427
7245
  FormsModule,
7428
7246
  CollapseTableModule,
7429
7247
  NgbModule,
7430
7248
  ResponsiveButtonGroupModule,
7431
7249
  NgxFileDropModule,
7432
7250
  NgxDocViewerModule] });
7433
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: FileModule, decorators: [{
7251
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileModule, decorators: [{
7434
7252
  type: NgModule,
7435
7253
  args: [{
7436
7254
  imports: [
@@ -7453,17 +7271,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
7453
7271
 
7454
7272
  class UserSettingsModule {
7455
7273
  }
7456
- UserSettingsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserSettingsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7457
- UserSettingsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: UserSettingsModule, declarations: [UserSettingsComponent,
7274
+ UserSettingsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserSettingsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7275
+ UserSettingsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: UserSettingsModule, declarations: [UserSettingsComponent,
7458
7276
  UsersSettingsComponent], imports: [SharedModule, i1$2.RouterModule, DatatableModule,
7459
7277
  FileModule] });
7460
- UserSettingsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserSettingsModule, providers: [
7278
+ UserSettingsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserSettingsModule, providers: [
7461
7279
  UserSettingsService
7462
7280
  ], imports: [SharedModule,
7463
7281
  UserSettingsRouting,
7464
7282
  DatatableModule,
7465
7283
  FileModule] });
7466
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: UserSettingsModule, decorators: [{
7284
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserSettingsModule, decorators: [{
7467
7285
  type: NgModule,
7468
7286
  args: [{
7469
7287
  imports: [
@@ -7540,17 +7358,17 @@ class HomeComponent extends BaseComponent {
7540
7358
  }
7541
7359
  }
7542
7360
  }
7543
- HomeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: HomeComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: AuthService }, { token: ProviderService }, { token: i4.HttpClient }, { token: CoreService }], target: i0.ɵɵFactoryTarget.Component });
7544
- HomeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: HomeComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<div style=\"height: 100%\">\n <div class=\"row\" style=\"margin-left: 0px; margin-right: 0px; height: 100%;\">\n <div class=\"col-lg-12\" style=\"height: 100%\">\n <div class=\"jumbotron jumbotron-fluid\" style=\"height: 100%; padding-bottom: 0px;\">\n <div class=\"container text-center\" style=\"height: 100%\">\n <img src=\"/assets/images/ResolveIO.png\" class=\"img-fluid\" alt=\"Responsive image\" style=\"height: 100%; width: auto; max-width: 750px; max-height: 525px;\">\n <p style=\"font-size: 24px; font-style: italic\">The All-in-One Solution for Tracking Inventory, Ordering, POs, Management, and Much More!</p>\n </div>\n </div>\n </div>\n </div> \n</div>" });
7545
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: HomeComponent, decorators: [{
7361
+ HomeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: HomeComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: AuthService }, { token: ProviderService }, { token: i4.HttpClient }, { token: CoreService }], target: i0.ɵɵFactoryTarget.Component });
7362
+ HomeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: HomeComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<div style=\"height: 100%\">\n <div class=\"row\" style=\"margin-left: 0px; margin-right: 0px; height: 100%;\">\n <div class=\"col-lg-12\" style=\"height: 100%\">\n <div class=\"jumbotron jumbotron-fluid\" style=\"height: 100%; padding-bottom: 0px;\">\n <div class=\"container text-center\" style=\"height: 100%\">\n <img src=\"/assets/images/ResolveIO.png\" class=\"img-fluid\" alt=\"Responsive image\" style=\"height: 100%; width: auto; max-width: 750px; max-height: 525px;\">\n <p style=\"font-size: 24px; font-style: italic\">The All-in-One Solution for Tracking Inventory, Ordering, POs, Management, and Much More!</p>\n </div>\n </div>\n </div>\n </div> \n</div>" });
7363
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: HomeComponent, decorators: [{
7546
7364
  type: Component,
7547
7365
  args: [{ providers: [ProviderService], template: "<div style=\"height: 100%\">\n <div class=\"row\" style=\"margin-left: 0px; margin-right: 0px; height: 100%;\">\n <div class=\"col-lg-12\" style=\"height: 100%\">\n <div class=\"jumbotron jumbotron-fluid\" style=\"height: 100%; padding-bottom: 0px;\">\n <div class=\"container text-center\" style=\"height: 100%\">\n <img src=\"/assets/images/ResolveIO.png\" class=\"img-fluid\" alt=\"Responsive image\" style=\"height: 100%; width: auto; max-width: 750px; max-height: 525px;\">\n <p style=\"font-size: 24px; font-style: italic\">The All-in-One Solution for Tracking Inventory, Ordering, POs, Management, and Much More!</p>\n </div>\n </div>\n </div>\n </div> \n</div>" }]
7548
7366
  }], ctorParameters: function () { return [{ type: i1$2.ActivatedRoute }, { type: AuthService }, { type: ProviderService }, { type: i4.HttpClient }, { type: CoreService }]; } });
7549
7367
 
7550
7368
  class CoreModule {
7551
7369
  }
7552
- CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7553
- CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: CoreModule, declarations: [CoreComponent,
7370
+ CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7371
+ CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CoreModule, declarations: [CoreComponent,
7554
7372
  HomeComponent,
7555
7373
  LoggerComponent,
7556
7374
  NavbarMainComponent,
@@ -7584,11 +7402,9 @@ CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14
7584
7402
  Auth365Component,
7585
7403
  FocusDirective,
7586
7404
  ScrollDirective] });
7587
- CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CoreModule, providers: [
7405
+ CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CoreModule, providers: [
7588
7406
  CoreService,
7589
7407
  AuthService,
7590
- AuthGuard,
7591
- CanDeactivateGuard,
7592
7408
  DialogService,
7593
7409
  ValidationService,
7594
7410
  AwsService,
@@ -7611,7 +7427,7 @@ CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14
7611
7427
  UserSettingsModule,
7612
7428
  BrowserAnimationsModule,
7613
7429
  CollapseTableModule] });
7614
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: CoreModule, decorators: [{
7430
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CoreModule, decorators: [{
7615
7431
  type: NgModule,
7616
7432
  args: [{
7617
7433
  imports: [
@@ -7652,8 +7468,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
7652
7468
  providers: [
7653
7469
  CoreService,
7654
7470
  AuthService,
7655
- AuthGuard,
7656
- CanDeactivateGuard,
7657
7471
  DialogService,
7658
7472
  ValidationService,
7659
7473
  AwsService,
@@ -7682,6 +7496,116 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
7682
7496
  }]
7683
7497
  }] });
7684
7498
 
7499
+ const AuthGuard = (next) => {
7500
+ let _router = inject(Router);
7501
+ let _auth = inject(AuthService);
7502
+ let _account = inject(AccountManagerService);
7503
+ // let _ds = inject(DialogService);
7504
+ // let _app = inject(CoreService);
7505
+ let _offline = inject(OfflineManagerService);
7506
+ let _aps = inject(AuthPermissionService);
7507
+ // let _alert = inject(AlertService);
7508
+ let _state = inject(RouterStateSnapshot);
7509
+ return new Promise((resolve) => {
7510
+ _account.isInitCompleted().then(() => {
7511
+ let user = _account.getUser();
7512
+ if (!user) {
7513
+ user = JSON.parse(_offline.getUser(), dateReviver);
7514
+ if (user) {
7515
+ _account.setUser(user);
7516
+ }
7517
+ }
7518
+ if (!user) {
7519
+ if (navigator.onLine) {
7520
+ _auth.loginUser().then(newUser => {
7521
+ _account.isLoginCompleted().then(() => {
7522
+ user = _account.getUser();
7523
+ if (!user.active) {
7524
+ _router.navigateByUrl('/home');
7525
+ resolve(false);
7526
+ }
7527
+ else {
7528
+ let view = _state.url.replace(/^(\/[-a-z]+\/[^\/]+)\/.*$/, '$1').replace(/\?.+/, '');
7529
+ let moduleView = view.replace(/^(\/.*\/).*/, '$1');
7530
+ if (user.roles.super_admin) {
7531
+ resolve(true);
7532
+ }
7533
+ else if (!user.roles.groups.filter(a => a.views.filter(b => b.startsWith(view)).length).length) {
7534
+ if (user.roles.groups.filter(a => a.views.filter(b => b.startsWith(moduleView) && !doesLinkHaveParameter(_aps, b)).length).length) {
7535
+ let link = user.roles.groups.filter(a => a.views.filter(b => b.startsWith(moduleView) && !doesLinkHaveParameter(_aps, b)).length)[0].views.filter(a => a.startsWith(moduleView) && !doesLinkHaveParameter(_aps, a))[0];
7536
+ _router.navigateByUrl(link);
7537
+ }
7538
+ else {
7539
+ _router.navigateByUrl('/home');
7540
+ }
7541
+ resolve(false);
7542
+ }
7543
+ else {
7544
+ resolve(true);
7545
+ }
7546
+ }
7547
+ });
7548
+ }, () => {
7549
+ _router.navigateByUrl('/home');
7550
+ resolve(false);
7551
+ });
7552
+ }
7553
+ else {
7554
+ resolve(true);
7555
+ }
7556
+ }
7557
+ else {
7558
+ if (!user.active) {
7559
+ _router.navigateByUrl('/home');
7560
+ resolve(false);
7561
+ }
7562
+ else {
7563
+ let view = _state.url.replace(/^(\/[-a-z]+\/[^\/]+)\/.*$/, '$1').replace(/\?.+/, '');
7564
+ let moduleView = view.replace(/^(\/.*\/).*/, '$1');
7565
+ if (user.roles.super_admin) {
7566
+ resolve(true);
7567
+ }
7568
+ else if (!user.roles.groups.filter(a => a.views.filter(b => b.startsWith(view)).length).length) {
7569
+ if (user.roles.groups.filter(a => a.views.filter(b => b.startsWith(moduleView) && !doesLinkHaveParameter(_aps, b)).length).length) {
7570
+ let link = user.roles.groups.filter(a => a.views.filter(b => b.startsWith(moduleView) && !doesLinkHaveParameter(_aps, b)).length)[0].views.filter(a => a.startsWith(moduleView) && !doesLinkHaveParameter(_aps, a))[0];
7571
+ _router.navigateByUrl(link);
7572
+ }
7573
+ else {
7574
+ _router.navigateByUrl('/home');
7575
+ }
7576
+ resolve(false);
7577
+ }
7578
+ else {
7579
+ resolve(true);
7580
+ }
7581
+ }
7582
+ }
7583
+ }, () => { });
7584
+ });
7585
+ };
7586
+ function doesLinkHaveParameter(_aps, link) {
7587
+ let permissions = _aps.getAllModulePermissions();
7588
+ for (let i = 0; i < permissions.length; i++) {
7589
+ let permission = permissions[i];
7590
+ for (let j = 0; j < permission.views.length; j++) {
7591
+ let view = permission.views[j];
7592
+ if (view.link === link) {
7593
+ if (view.has_parameter) {
7594
+ return true;
7595
+ }
7596
+ else {
7597
+ return false;
7598
+ }
7599
+ }
7600
+ }
7601
+ }
7602
+ return false;
7603
+ }
7604
+
7605
+ const CanDeactivateGuard = (component) => {
7606
+ return component.canDeactivate ? component.canDeactivate() : true;
7607
+ };
7608
+
7685
7609
  class SupportTicketService {
7686
7610
  constructor() {
7687
7611
  this.selectedSupportTicket = new BehaviorSubject('0');
@@ -7690,9 +7614,9 @@ class SupportTicketService {
7690
7614
  this.selectedSupportTicket.next(id);
7691
7615
  }
7692
7616
  }
7693
- SupportTicketService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7694
- SupportTicketService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketService });
7695
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketService, decorators: [{
7617
+ SupportTicketService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7618
+ SupportTicketService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketService });
7619
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketService, decorators: [{
7696
7620
  type: Injectable
7697
7621
  }], ctorParameters: function () { return []; } });
7698
7622
 
@@ -7742,9 +7666,9 @@ class SupportTicketComponent extends BaseComponent {
7742
7666
  this._services._app.setNavbarModuleData(this.menuData);
7743
7667
  }
7744
7668
  }
7745
- SupportTicketComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketComponent, deps: [{ token: SupportTicketService }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
7746
- SupportTicketComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: SupportTicketComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: '<router-outlet></router-outlet>', isInline: true, dependencies: [{ kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
7747
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketComponent, decorators: [{
7669
+ SupportTicketComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketComponent, deps: [{ token: SupportTicketService }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
7670
+ SupportTicketComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SupportTicketComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: '<router-outlet></router-outlet>', isInline: true, dependencies: [{ kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
7671
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketComponent, decorators: [{
7748
7672
  type: Component,
7749
7673
  args: [{
7750
7674
  providers: [ProviderService],
@@ -7872,9 +7796,9 @@ class SupportTicketListComponent extends BaseComponent {
7872
7796
  });
7873
7797
  }
7874
7798
  }
7875
- SupportTicketListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketListComponent, deps: [{ token: SupportTicketService }, { token: i1$2.ActivatedRoute }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
7876
- SupportTicketListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: SupportTicketListComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-sm-6\">\n <b>Filter Support Ticket By Status</b><br>\n <select class=\"form-control\" [(ngModel)]=\"tableData.filters['status']\" (change)=\"onQueryDataChanged()\" tourAnchor=\"supportListFilter\">\n <option value=\"All\">All</option>\n <option value=\"Opened\">Opened</option>\n <option value=\"Resolved\">Resolved</option>\n </select>\n </div>\n <div class=\"col-sm-6\">\n <b>Filter Support Ticket By Sub-Status</b><br>\n <select class=\"form-control\" [(ngModel)]=\"tableData.filters['substatus']\" (change)=\"onQueryDataChanged()\">\n <option value=\"All\">All</option>\n <option value=\"Investigating\">Investigating</option>\n <option value=\"Awaiting Customer Interaction\">Awaiting Customer Interaction</option>\n <option value=\"Resolved\">Resolved</option>\n </select>\n </div>\n</div>\n<div class=\"row\">\n <div class=\"col-md-12\">\n <div style=\"padding-left: 15px; padding-right: 15px; padding-top: 15px;\">\n <data-table #dataTable\n [urlClick]=\"'/support-ticket/detail/'\"\n [columns]=\"columns\"\n [data]=\"support_tickets\"\n [collapseSize]=\"990\"\n [searchTitle]=\"'Search For Support Ticket...'\"\n [totalItems]=\"totalItems\"\n (onChangeTableData)=\"onQueryDataChanged()\"\n [tableData]=\"tableData\"\n tourAnchor=\"supportListDatatable\">\n </data-table>\n </div>\n </div>\n</div>\n ", dependencies: [{ kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: DatatableComponent, selector: "data-table", inputs: ["urlClick", "columns", "data", "collapseSize", "searchTitle", "totalItems", "tableData"], outputs: ["onChangeTableData"] }] });
7877
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketListComponent, decorators: [{
7799
+ SupportTicketListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketListComponent, deps: [{ token: SupportTicketService }, { token: i1$2.ActivatedRoute }, { token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
7800
+ SupportTicketListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SupportTicketListComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-sm-6\">\n <b>Filter Support Ticket By Status</b><br>\n <select class=\"form-control\" [(ngModel)]=\"tableData.filters['status']\" (change)=\"onQueryDataChanged()\" tourAnchor=\"supportListFilter\">\n <option value=\"All\">All</option>\n <option value=\"Opened\">Opened</option>\n <option value=\"Resolved\">Resolved</option>\n </select>\n </div>\n <div class=\"col-sm-6\">\n <b>Filter Support Ticket By Sub-Status</b><br>\n <select class=\"form-control\" [(ngModel)]=\"tableData.filters['substatus']\" (change)=\"onQueryDataChanged()\">\n <option value=\"All\">All</option>\n <option value=\"Investigating\">Investigating</option>\n <option value=\"Awaiting Customer Interaction\">Awaiting Customer Interaction</option>\n <option value=\"Resolved\">Resolved</option>\n </select>\n </div>\n</div>\n<div class=\"row\">\n <div class=\"col-md-12\">\n <div style=\"padding-left: 15px; padding-right: 15px; padding-top: 15px;\">\n <data-table #dataTable\n [urlClick]=\"'/support-ticket/detail/'\"\n [columns]=\"columns\"\n [data]=\"support_tickets\"\n [collapseSize]=\"990\"\n [searchTitle]=\"'Search For Support Ticket...'\"\n [totalItems]=\"totalItems\"\n (onChangeTableData)=\"onQueryDataChanged()\"\n [tableData]=\"tableData\"\n tourAnchor=\"supportListDatatable\">\n </data-table>\n </div>\n </div>\n</div>\n ", dependencies: [{ kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: DatatableComponent, selector: "data-table", inputs: ["urlClick", "columns", "data", "collapseSize", "searchTitle", "totalItems", "tableData"], outputs: ["onChangeTableData"] }] });
7801
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketListComponent, decorators: [{
7878
7802
  type: Component,
7879
7803
  args: [{ providers: [ProviderService], template: "<div class=\"row\">\n <div class=\"col-sm-6\">\n <b>Filter Support Ticket By Status</b><br>\n <select class=\"form-control\" [(ngModel)]=\"tableData.filters['status']\" (change)=\"onQueryDataChanged()\" tourAnchor=\"supportListFilter\">\n <option value=\"All\">All</option>\n <option value=\"Opened\">Opened</option>\n <option value=\"Resolved\">Resolved</option>\n </select>\n </div>\n <div class=\"col-sm-6\">\n <b>Filter Support Ticket By Sub-Status</b><br>\n <select class=\"form-control\" [(ngModel)]=\"tableData.filters['substatus']\" (change)=\"onQueryDataChanged()\">\n <option value=\"All\">All</option>\n <option value=\"Investigating\">Investigating</option>\n <option value=\"Awaiting Customer Interaction\">Awaiting Customer Interaction</option>\n <option value=\"Resolved\">Resolved</option>\n </select>\n </div>\n</div>\n<div class=\"row\">\n <div class=\"col-md-12\">\n <div style=\"padding-left: 15px; padding-right: 15px; padding-top: 15px;\">\n <data-table #dataTable\n [urlClick]=\"'/support-ticket/detail/'\"\n [columns]=\"columns\"\n [data]=\"support_tickets\"\n [collapseSize]=\"990\"\n [searchTitle]=\"'Search For Support Ticket...'\"\n [totalItems]=\"totalItems\"\n (onChangeTableData)=\"onQueryDataChanged()\"\n [tableData]=\"tableData\"\n tourAnchor=\"supportListDatatable\">\n </data-table>\n </div>\n </div>\n</div>\n " }]
7880
7804
  }], ctorParameters: function () { return [{ type: SupportTicketService }, { type: i1$2.ActivatedRoute }, { type: ProviderService }]; } });
@@ -7971,11 +7895,11 @@ class SupportTicketNewComponent extends BaseComponent {
7971
7895
  });
7972
7896
  }
7973
7897
  }
7974
- SupportTicketNewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketNewComponent, deps: [{ token: SupportTicketService }, { token: i0.ChangeDetectorRef }, { token: ProviderService }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
7975
- SupportTicketNewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: SupportTicketNewComponent, selector: "ng-component", providers: [ProviderService], viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Support Ticket Type</label>\n <em *ngIf=\"!form.controls.type.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.type.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"type\" (change)=\"onTypeChange()\" tourAnchor=\"supportNewSelect\">\n <option value=\"\">Select Type</option>\n <option value=\"General Inquery\">General Inquery</option>\n <option value=\"System Impairment\">System Impairment</option>\n <option value=\"Request New Feature\">Request New Feature</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.type.valid\">Type is required</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Problem/Feature Description</label>\n <em *ngIf=\"!form.controls.issue.valid\">- Required</em>\n <textarea formControlName=\"issue\" [ngClass]=\"['form-control', form.controls.issue.valid ? 'is-valid' : 'is-invalid' ]\" [rows]=\"5\" style=\"overflow-x: hidden\" tourAnchor=\"supportNewInput\"></textarea>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.issue.valid\">Description is required</div>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\" tourAnchor=\"supportNewSubmit\"></form-button>\n </div>\n </form>\n</div>\n", styles: ["\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
7976
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketNewComponent, decorators: [{
7898
+ SupportTicketNewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketNewComponent, deps: [{ token: SupportTicketService }, { token: i0.ChangeDetectorRef }, { token: ProviderService }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
7899
+ SupportTicketNewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SupportTicketNewComponent, selector: "ng-component", providers: [ProviderService], viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Support Ticket Type</label>\n <em *ngIf=\"!form.controls.type.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.type.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"type\" (change)=\"onTypeChange()\" tourAnchor=\"supportNewSelect\">\n <option value=\"\">Select Type</option>\n <option value=\"General Inquery\">General Inquery</option>\n <option value=\"System Impairment\">System Impairment</option>\n <option value=\"Request New Feature\">Request New Feature</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.type.valid\">Type is required</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Problem/Feature Description</label>\n <em *ngIf=\"!form.controls.issue.valid\">- Required</em>\n <textarea formControlName=\"issue\" [ngClass]=\"['form-control', form.controls.issue.valid ? 'is-valid' : 'is-invalid' ]\" [rows]=\"5\" style=\"overflow-x: hidden\" tourAnchor=\"supportNewInput\"></textarea>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.issue.valid\">Description is required</div>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\" tourAnchor=\"supportNewSubmit\"></form-button>\n </div>\n </form>\n</div>\n", styles: ["\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
7900
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketNewComponent, decorators: [{
7977
7901
  type: Component,
7978
- args: [{ providers: [ProviderService], template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Support Ticket Type</label>\n <em *ngIf=\"!form.controls.type.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.type.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"type\" (change)=\"onTypeChange()\" tourAnchor=\"supportNewSelect\">\n <option value=\"\">Select Type</option>\n <option value=\"General Inquery\">General Inquery</option>\n <option value=\"System Impairment\">System Impairment</option>\n <option value=\"Request New Feature\">Request New Feature</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.type.valid\">Type is required</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Problem/Feature Description</label>\n <em *ngIf=\"!form.controls.issue.valid\">- Required</em>\n <textarea formControlName=\"issue\" [ngClass]=\"['form-control', form.controls.issue.valid ? 'is-valid' : 'is-invalid' ]\" [rows]=\"5\" style=\"overflow-x: hidden\" tourAnchor=\"supportNewInput\"></textarea>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.issue.valid\">Description is required</div>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\" tourAnchor=\"supportNewSubmit\"></form-button>\n </div>\n </form>\n</div>\n" }]
7902
+ args: [{ providers: [ProviderService], template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Support Ticket Type</label>\n <em *ngIf=\"!form.controls.type.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.type.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"type\" (change)=\"onTypeChange()\" tourAnchor=\"supportNewSelect\">\n <option value=\"\">Select Type</option>\n <option value=\"General Inquery\">General Inquery</option>\n <option value=\"System Impairment\">System Impairment</option>\n <option value=\"Request New Feature\">Request New Feature</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.type.valid\">Type is required</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Problem/Feature Description</label>\n <em *ngIf=\"!form.controls.issue.valid\">- Required</em>\n <textarea formControlName=\"issue\" [ngClass]=\"['form-control', form.controls.issue.valid ? 'is-valid' : 'is-invalid' ]\" [rows]=\"5\" style=\"overflow-x: hidden\" tourAnchor=\"supportNewInput\"></textarea>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.issue.valid\">Description is required</div>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\" tourAnchor=\"supportNewSubmit\"></form-button>\n </div>\n </form>\n</div>\n" }]
7979
7903
  }], ctorParameters: function () { return [{ type: SupportTicketService }, { type: i0.ChangeDetectorRef }, { type: ProviderService }, { type: DialogService }]; }, propDecorators: { fileUpload: [{
7980
7904
  type: ViewChild,
7981
7905
  args: ['fileUpload', { static: true }]
@@ -8160,11 +8084,11 @@ class SupportTicketDetailComponent extends BaseComponent {
8160
8084
  return this._services._account.getUser()._id === message.id_user;
8161
8085
  }
8162
8086
  }
8163
- SupportTicketDetailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketDetailComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: SupportTicketService }, { token: ProviderService }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
8164
- SupportTicketDetailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: SupportTicketDetailComponent, selector: "ng-component", providers: [ProviderService], viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n\n ngb-accordion {\n width: 100%;\n }\n\n dl {\n margin-bottom: 0px;\n }\n\n .selected {\n background-color: lightblue;\n }\n</style>\n\n<div class=\"col-lg-12\" *ngIf=\"data\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo, supportTicketMessages, files\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"card\">\n <div class=\"card-header\"><b>General Info</b></div>\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <dl>\n <dt>Support Ticket #</dt>\n <dd>{{data.support_ticket_number | number}}</dd>\n <dt>Date Created</dt>\n <dd>{{data.date_created | date: 'short'}}</dd>\n </dl>\n </div>\n <div class=\"col-lg-4\">\n <dl>\n <dt>Type</dt>\n <dd>{{data.type}}</dd>\n <dt>User</dt>\n <dd>{{data.user_created}}</dd>\n </dl>\n </div>\n <div class=\"col-lg-4\">\n <dl>\n <dt>Status</dt>\n <dd>{{ data.status }}</dd>\n </dl>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card\">\n <div class=\"card-header\"><b>Problem Description</b></div>\n <div class=\"card-body\">\n <pre>{{data.issue}}</pre>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"supportTicketMessages\" *ngIf=\"data\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Messages</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketMessages')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketMessages')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"card\" *ngFor=\"let message of data.messages; let i = index;\">\n <div class=\"card-header\"><b>User: {{message.user}} - Date: {{message.date | date : 'short'}}</b></div>\n <div class=\"card-body\" [ngClass]=\"[message.type === 'ResolveIO' ? 'selected' : '']\">\n <div class=\"row\" style=\"width: 100%\">\n <div class=\"col-lg-10\">\n <pre>{{message.message}}</pre>\n </div>\n <div class=\"col-lg-2\">\n <responsive-button-group collapseSize=\"900\">\n <button type=\"button\" class=\"btn btn-warning\" (click)=\"editMessage(i)\" *ngIf=\"isMyMessage(message)\">Edit</button>\n <button type=\"button\" class=\"btn btn-danger\" (click)=\"deleteMessage(i)\" *ngIf=\"isMyMessage(message)\">Delete</button>\n </responsive-button-group>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row\" style=\"margin-top: 10px;\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-success\" (click)=\"newMessage()\">New Message</button>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"files\">\n\t\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t\t<div> \n\t\t\t\t\t\t<label class=\"label-accordion\">Support Ticket Files</label>\n\t\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('files')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('files')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t\t<file-upload #fileUpload (fileAdded)=\"onFileAdded($event)\" (fileRemoved)=\"onFilesRemoved($event)\" [files]=\"files\" [allowDelete]=\"true\" [allowReplace]=\"true\"></file-upload>\n\t\t\t\t</ng-template>\n\t\t\t</ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <responsive-button-group collapseSize=\"900\">\n <button class=\"btn btn-warning\" type=\"button\" (click)=\"edit()\">Edit Support Ticket</button>\n </responsive-button-group>\n </div>\n</div>\n ", styles: ["\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n\n ngb-accordion {\n width: 100%;\n }\n\n dl {\n margin-bottom: 0px;\n }\n\n .selected {\n background-color: lightblue;\n }\n"], dependencies: [{ kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FileUploadComponent, selector: "file-upload", inputs: ["files", "allowDelete", "allowReplace", "showFileUpload", "fileType"], outputs: ["filesChanged", "fileAdded", "fileRemoved"] }, { kind: "pipe", type: i7.DecimalPipe, name: "number" }, { kind: "pipe", type: i7.DatePipe, name: "date" }] });
8165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketDetailComponent, decorators: [{
8087
+ SupportTicketDetailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketDetailComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: SupportTicketService }, { token: ProviderService }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
8088
+ SupportTicketDetailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SupportTicketDetailComponent, selector: "ng-component", providers: [ProviderService], viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n\n ngb-accordion {\n width: 100%;\n }\n\n dl {\n margin-bottom: 0px;\n }\n\n .selected {\n background-color: lightblue;\n }\n</style>\n\n<div class=\"col-lg-12\" *ngIf=\"data\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo, supportTicketMessages, files\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"card\">\n <div class=\"card-header\"><b>General Info</b></div>\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <dl>\n <dt>Support Ticket #</dt>\n <dd>{{data.support_ticket_number | number}}</dd>\n <dt>Date Created</dt>\n <dd>{{data.date_created | date: 'short'}}</dd>\n </dl>\n </div>\n <div class=\"col-lg-4\">\n <dl>\n <dt>Type</dt>\n <dd>{{data.type}}</dd>\n <dt>User</dt>\n <dd>{{data.user_created}}</dd>\n </dl>\n </div>\n <div class=\"col-lg-4\">\n <dl>\n <dt>Status</dt>\n <dd>{{ data.status }}</dd>\n </dl>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card\">\n <div class=\"card-header\"><b>Problem Description</b></div>\n <div class=\"card-body\">\n <pre>{{data.issue}}</pre>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"supportTicketMessages\" *ngIf=\"data\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Messages</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketMessages')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketMessages')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"card\" *ngFor=\"let message of data.messages; let i = index;\">\n <div class=\"card-header\"><b>User: {{message.user}} - Date: {{message.date | date : 'short'}}</b></div>\n <div class=\"card-body\" [ngClass]=\"[message.type === 'ResolveIO' ? 'selected' : '']\">\n <div class=\"row\" style=\"width: 100%\">\n <div class=\"col-lg-10\">\n <pre>{{message.message}}</pre>\n </div>\n <div class=\"col-lg-2\">\n <responsive-button-group collapseSize=\"900\">\n <button type=\"button\" class=\"btn btn-warning\" (click)=\"editMessage(i)\" *ngIf=\"isMyMessage(message)\">Edit</button>\n <button type=\"button\" class=\"btn btn-danger\" (click)=\"deleteMessage(i)\" *ngIf=\"isMyMessage(message)\">Delete</button>\n </responsive-button-group>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row\" style=\"margin-top: 10px;\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-success\" (click)=\"newMessage()\">New Message</button>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"files\">\n\t\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t\t<div> \n\t\t\t\t\t\t<label class=\"label-accordion\">Support Ticket Files</label>\n\t\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('files')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('files')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t\t<file-upload #fileUpload (fileAdded)=\"onFileAdded($event)\" (fileRemoved)=\"onFilesRemoved($event)\" [files]=\"files\" [allowDelete]=\"true\" [allowReplace]=\"true\"></file-upload>\n\t\t\t\t</ng-template>\n\t\t\t</ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <responsive-button-group collapseSize=\"900\">\n <button class=\"btn btn-warning\" type=\"button\" (click)=\"edit()\">Edit Support Ticket</button>\n </responsive-button-group>\n </div>\n</div>\n ", styles: ["\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n\n ngb-accordion {\n width: 100%;\n }\n\n dl {\n margin-bottom: 0px;\n }\n\n .selected {\n background-color: lightblue;\n }\n"], dependencies: [{ kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "component", type: ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FileUploadComponent, selector: "file-upload", inputs: ["files", "allowDelete", "allowReplace", "showFileUpload", "fileType"], outputs: ["filesChanged", "fileAdded", "fileRemoved"] }, { kind: "pipe", type: i7.DecimalPipe, name: "number" }, { kind: "pipe", type: i7.DatePipe, name: "date" }] });
8089
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketDetailComponent, decorators: [{
8166
8090
  type: Component,
8167
- args: [{ providers: [ProviderService], template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n\n ngb-accordion {\n width: 100%;\n }\n\n dl {\n margin-bottom: 0px;\n }\n\n .selected {\n background-color: lightblue;\n }\n</style>\n\n<div class=\"col-lg-12\" *ngIf=\"data\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo, supportTicketMessages, files\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"card\">\n <div class=\"card-header\"><b>General Info</b></div>\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <dl>\n <dt>Support Ticket #</dt>\n <dd>{{data.support_ticket_number | number}}</dd>\n <dt>Date Created</dt>\n <dd>{{data.date_created | date: 'short'}}</dd>\n </dl>\n </div>\n <div class=\"col-lg-4\">\n <dl>\n <dt>Type</dt>\n <dd>{{data.type}}</dd>\n <dt>User</dt>\n <dd>{{data.user_created}}</dd>\n </dl>\n </div>\n <div class=\"col-lg-4\">\n <dl>\n <dt>Status</dt>\n <dd>{{ data.status }}</dd>\n </dl>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card\">\n <div class=\"card-header\"><b>Problem Description</b></div>\n <div class=\"card-body\">\n <pre>{{data.issue}}</pre>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"supportTicketMessages\" *ngIf=\"data\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Messages</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketMessages')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketMessages')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"card\" *ngFor=\"let message of data.messages; let i = index;\">\n <div class=\"card-header\"><b>User: {{message.user}} - Date: {{message.date | date : 'short'}}</b></div>\n <div class=\"card-body\" [ngClass]=\"[message.type === 'ResolveIO' ? 'selected' : '']\">\n <div class=\"row\" style=\"width: 100%\">\n <div class=\"col-lg-10\">\n <pre>{{message.message}}</pre>\n </div>\n <div class=\"col-lg-2\">\n <responsive-button-group collapseSize=\"900\">\n <button type=\"button\" class=\"btn btn-warning\" (click)=\"editMessage(i)\" *ngIf=\"isMyMessage(message)\">Edit</button>\n <button type=\"button\" class=\"btn btn-danger\" (click)=\"deleteMessage(i)\" *ngIf=\"isMyMessage(message)\">Delete</button>\n </responsive-button-group>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row\" style=\"margin-top: 10px;\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-success\" (click)=\"newMessage()\">New Message</button>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"files\">\n\t\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t\t<div> \n\t\t\t\t\t\t<label class=\"label-accordion\">Support Ticket Files</label>\n\t\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('files')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('files')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t\t<file-upload #fileUpload (fileAdded)=\"onFileAdded($event)\" (fileRemoved)=\"onFilesRemoved($event)\" [files]=\"files\" [allowDelete]=\"true\" [allowReplace]=\"true\"></file-upload>\n\t\t\t\t</ng-template>\n\t\t\t</ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <responsive-button-group collapseSize=\"900\">\n <button class=\"btn btn-warning\" type=\"button\" (click)=\"edit()\">Edit Support Ticket</button>\n </responsive-button-group>\n </div>\n</div>\n " }]
8091
+ args: [{ providers: [ProviderService], template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n\n ngb-accordion {\n width: 100%;\n }\n\n dl {\n margin-bottom: 0px;\n }\n\n .selected {\n background-color: lightblue;\n }\n</style>\n\n<div class=\"col-lg-12\" *ngIf=\"data\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo, supportTicketMessages, files\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"card\">\n <div class=\"card-header\"><b>General Info</b></div>\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col-lg-4\">\n <dl>\n <dt>Support Ticket #</dt>\n <dd>{{data.support_ticket_number | number}}</dd>\n <dt>Date Created</dt>\n <dd>{{data.date_created | date: 'short'}}</dd>\n </dl>\n </div>\n <div class=\"col-lg-4\">\n <dl>\n <dt>Type</dt>\n <dd>{{data.type}}</dd>\n <dt>User</dt>\n <dd>{{data.user_created}}</dd>\n </dl>\n </div>\n <div class=\"col-lg-4\">\n <dl>\n <dt>Status</dt>\n <dd>{{ data.status }}</dd>\n </dl>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card\">\n <div class=\"card-header\"><b>Problem Description</b></div>\n <div class=\"card-body\">\n <pre>{{data.issue}}</pre>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"supportTicketMessages\" *ngIf=\"data\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Messages</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketMessages')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketMessages')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"card\" *ngFor=\"let message of data.messages; let i = index;\">\n <div class=\"card-header\"><b>User: {{message.user}} - Date: {{message.date | date : 'short'}}</b></div>\n <div class=\"card-body\" [ngClass]=\"[message.type === 'ResolveIO' ? 'selected' : '']\">\n <div class=\"row\" style=\"width: 100%\">\n <div class=\"col-lg-10\">\n <pre>{{message.message}}</pre>\n </div>\n <div class=\"col-lg-2\">\n <responsive-button-group collapseSize=\"900\">\n <button type=\"button\" class=\"btn btn-warning\" (click)=\"editMessage(i)\" *ngIf=\"isMyMessage(message)\">Edit</button>\n <button type=\"button\" class=\"btn btn-danger\" (click)=\"deleteMessage(i)\" *ngIf=\"isMyMessage(message)\">Delete</button>\n </responsive-button-group>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row\" style=\"margin-top: 10px;\">\n <div class=\"col-lg-12\">\n <button type=\"button\" class=\"btn btn-success\" (click)=\"newMessage()\">New Message</button>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n <ngb-panel id=\"files\">\n\t\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t\t<div> \n\t\t\t\t\t\t<label class=\"label-accordion\">Support Ticket Files</label>\n\t\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('files')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('files')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t\t<file-upload #fileUpload (fileAdded)=\"onFileAdded($event)\" (fileRemoved)=\"onFilesRemoved($event)\" [files]=\"files\" [allowDelete]=\"true\" [allowReplace]=\"true\"></file-upload>\n\t\t\t\t</ng-template>\n\t\t\t</ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <responsive-button-group collapseSize=\"900\">\n <button class=\"btn btn-warning\" type=\"button\" (click)=\"edit()\">Edit Support Ticket</button>\n </responsive-button-group>\n </div>\n</div>\n " }]
8168
8092
  }], ctorParameters: function () { return [{ type: i1$2.ActivatedRoute }, { type: SupportTicketService }, { type: ProviderService }, { type: DialogService }]; }, propDecorators: { fileUpload: [{
8169
8093
  type: ViewChild,
8170
8094
  args: ['fileUpload', { static: true }]
@@ -8264,11 +8188,11 @@ class SupportTicketEditComponent extends BaseComponent {
8264
8188
  });
8265
8189
  }
8266
8190
  }
8267
- SupportTicketEditComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketEditComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: SupportTicketService }, { token: ProviderService }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
8268
- SupportTicketEditComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: SupportTicketEditComponent, selector: "ng-component", providers: [ProviderService], viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true, static: true }, { propertyName: "selectType", first: true, predicate: ["selectType"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Support Ticket Type</label>\n <em *ngIf=\"!form.controls.type.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.type.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"type\" (change)=\"onTypeChange()\">\n <option value=\"\">Select Type</option>\n <option value=\"General Inquery\">General Inquery</option>\n <option value=\"System Impairment\">System Impairment</option>\n <option value=\"Request New Feature\">Request New Feature</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.type.valid\">Type is required</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Problem Description</label>\n <em *ngIf=\"!form.controls.issue.valid\">- Required</em>\n <textarea formControlName=\"issue\" [ngClass]=\"['form-control', form.controls.issue.valid ? 'is-valid' : 'is-invalid' ]\" [rows]=\"5\" style=\"overflow-x: hidden\"></textarea>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.issue.valid\">Problem Description is required</div>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n </div>\n </form>\n</div>\n ", styles: ["\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
8269
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketEditComponent, decorators: [{
8191
+ SupportTicketEditComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketEditComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: SupportTicketService }, { token: ProviderService }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
8192
+ SupportTicketEditComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SupportTicketEditComponent, selector: "ng-component", providers: [ProviderService], viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true, static: true }, { propertyName: "selectType", first: true, predicate: ["selectType"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Support Ticket Type</label>\n <em *ngIf=\"!form.controls.type.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.type.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"type\" (change)=\"onTypeChange()\">\n <option value=\"\">Select Type</option>\n <option value=\"General Inquery\">General Inquery</option>\n <option value=\"System Impairment\">System Impairment</option>\n <option value=\"Request New Feature\">Request New Feature</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.type.valid\">Type is required</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Problem Description</label>\n <em *ngIf=\"!form.controls.issue.valid\">- Required</em>\n <textarea formControlName=\"issue\" [ngClass]=\"['form-control', form.controls.issue.valid ? 'is-valid' : 'is-invalid' ]\" [rows]=\"5\" style=\"overflow-x: hidden\"></textarea>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.issue.valid\">Problem Description is required</div>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n </div>\n </form>\n</div>\n ", styles: ["\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i1$3.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i1$3.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$3.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i1$3.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "component", type: FormButtonComponent, selector: "form-button", inputs: ["form", "disabled", "type"] }, { kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
8193
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketEditComponent, decorators: [{
8270
8194
  type: Component,
8271
- args: [{ providers: [ProviderService], template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus float-end\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus float-end\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Support Ticket Type</label>\n <em *ngIf=\"!form.controls.type.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.type.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"type\" (change)=\"onTypeChange()\">\n <option value=\"\">Select Type</option>\n <option value=\"General Inquery\">General Inquery</option>\n <option value=\"System Impairment\">System Impairment</option>\n <option value=\"Request New Feature\">Request New Feature</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.type.valid\">Type is required</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"form-group\">\n <label class=\"form-control-label\">Problem Description</label>\n <em *ngIf=\"!form.controls.issue.valid\">- Required</em>\n <textarea formControlName=\"issue\" [ngClass]=\"['form-control', form.controls.issue.valid ? 'is-valid' : 'is-invalid' ]\" [rows]=\"5\" style=\"overflow-x: hidden\"></textarea>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.issue.valid\">Problem Description is required</div>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n </div>\n </form>\n</div>\n " }]
8195
+ args: [{ providers: [ProviderService], template: "<style>\n .label-accordion {\n font-weight: bold;\n color: black;\n margin-bottom: 0px;\n }\n\n .fa-plus {\n color: black;\n }\n\n .fa-minus {\n color: black;\n }\n</style>\n\n<div class=\"col-lg-12\">\n <form [formGroup]=\"form\" novalidate (ngSubmit)=\"submitForm(form)\">\n <div class=\"row\">\n <ngb-accordion #acc=\"ngbAccordion\" activeIds=\"supportTicketInfo\">\n <ngb-panel id=\"supportTicketInfo\">\n <ng-template ngbPanelTitle>\n <div> \n <label class=\"label-accordion\">Support Ticket Info</label>\n <i *ngIf=\"!acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n <i *ngIf=\"acc.activeIds.includes('supportTicketInfo')\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n </div>\n </ng-template>\n <ng-template ngbPanelContent>\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Support Ticket Type</label>\n <em *ngIf=\"!form.controls.type.valid\">- Required</em>\n <select [ngClass]=\"['form-control', form.controls.type.valid ? 'is-valid' : 'is-invalid']\" formControlName=\"type\" (change)=\"onTypeChange()\">\n <option value=\"\">Select Type</option>\n <option value=\"General Inquery\">General Inquery</option>\n <option value=\"System Impairment\">System Impairment</option>\n <option value=\"Request New Feature\">Request New Feature</option>\n </select>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.type.valid\">Type is required</div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-12\">\n <div class=\"mb-3\">\n <label class=\"form-control-label\">Problem Description</label>\n <em *ngIf=\"!form.controls.issue.valid\">- Required</em>\n <textarea formControlName=\"issue\" [ngClass]=\"['form-control', form.controls.issue.valid ? 'is-valid' : 'is-invalid' ]\" [rows]=\"5\" style=\"overflow-x: hidden\"></textarea>\n <div class=\"invalid-feedback\" *ngIf=\"!form.controls.issue.valid\">Problem Description is required</div>\n </div>\n </div>\n </div>\n </ng-template>\n </ngb-panel>\n </ngb-accordion>\n </div>\n <div class=\"row\" style=\"padding-top: 15px;\">\n <form-button [form]=\"form\" [disabled]=\"disableFormButton\"></form-button>\n </div>\n </form>\n</div>\n " }]
8272
8196
  }], ctorParameters: function () { return [{ type: i1$2.ActivatedRoute }, { type: SupportTicketService }, { type: ProviderService }, { type: DialogService }]; }, propDecorators: { fileUpload: [{
8273
8197
  type: ViewChild,
8274
8198
  args: ['fileUpload', { static: true }]
@@ -8293,20 +8217,20 @@ const SupportTicketRouting = RouterModule.forChild(routes);
8293
8217
 
8294
8218
  class SupportTicketModule {
8295
8219
  }
8296
- SupportTicketModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8297
- SupportTicketModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketModule, declarations: [SupportTicketComponent,
8220
+ SupportTicketModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8221
+ SupportTicketModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketModule, declarations: [SupportTicketComponent,
8298
8222
  SupportTicketListComponent,
8299
8223
  SupportTicketNewComponent,
8300
8224
  SupportTicketDetailComponent,
8301
8225
  SupportTicketEditComponent], imports: [SharedModule, i1$2.RouterModule, DatatableModule,
8302
8226
  FileModule] });
8303
- SupportTicketModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketModule, providers: [
8227
+ SupportTicketModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketModule, providers: [
8304
8228
  SupportTicketService
8305
8229
  ], imports: [SharedModule,
8306
8230
  SupportTicketRouting,
8307
8231
  DatatableModule,
8308
8232
  FileModule] });
8309
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SupportTicketModule, decorators: [{
8233
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SupportTicketModule, decorators: [{
8310
8234
  type: NgModule,
8311
8235
  args: [{
8312
8236
  imports: [
@@ -8450,8 +8374,8 @@ class DateShortcutComponent extends BaseComponent {
8450
8374
  this._cd.detectChanges();
8451
8375
  }
8452
8376
  }
8453
- DateShortcutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DateShortcutComponent, deps: [{ token: ProviderService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
8454
- DateShortcutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: DateShortcutComponent, selector: "date-shortcut", inputs: { startDateObj: "startDateObj", endDateObj: "endDateObj", shortcutValue: "shortcutValue" }, outputs: { startDateObjChange: "startDateObjChange", endDateObjChange: "endDateObjChange", datesChanged: "datesChanged", shortcutValueChange: "shortcutValueChange" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: `
8377
+ DateShortcutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DateShortcutComponent, deps: [{ token: ProviderService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
8378
+ DateShortcutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DateShortcutComponent, selector: "date-shortcut", inputs: { startDateObj: "startDateObj", endDateObj: "endDateObj", shortcutValue: "shortcutValue" }, outputs: { startDateObjChange: "startDateObjChange", endDateObjChange: "endDateObjChange", datesChanged: "datesChanged", shortcutValueChange: "shortcutValueChange" }, providers: [ProviderService], usesInheritance: true, ngImport: i0, template: `
8455
8379
  <label class="form-control-label">Date Shortcuts</label>
8456
8380
  <ng-select [(ngModel)]="shortcutValue" (change)="onSelectShortcut()" placeholder="Select Shortcut" [clearable]="false">
8457
8381
  <ng-option value="Today">Today</ng-option>
@@ -8476,7 +8400,7 @@ DateShortcutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
8476
8400
  <ng-option value="All">All</ng-option>
8477
8401
  </ng-select>
8478
8402
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$1.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "component", type: i4$1.NgOptionComponent, selector: "ng-option", inputs: ["value", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8479
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DateShortcutComponent, decorators: [{
8403
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DateShortcutComponent, decorators: [{
8480
8404
  type: Component,
8481
8405
  args: [{
8482
8406
  providers: [ProviderService],
@@ -8526,14 +8450,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
8526
8450
 
8527
8451
  class DateShortcutModule {
8528
8452
  }
8529
- DateShortcutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DateShortcutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8530
- DateShortcutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: DateShortcutModule, declarations: [DateShortcutComponent], imports: [FormsModule,
8453
+ DateShortcutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DateShortcutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8454
+ DateShortcutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DateShortcutModule, declarations: [DateShortcutComponent], imports: [FormsModule,
8531
8455
  CommonModule,
8532
8456
  NgSelectModule], exports: [DateShortcutComponent] });
8533
- DateShortcutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DateShortcutModule, imports: [FormsModule,
8457
+ DateShortcutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DateShortcutModule, imports: [FormsModule,
8534
8458
  CommonModule,
8535
8459
  NgSelectModule] });
8536
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DateShortcutModule, decorators: [{
8460
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DateShortcutModule, decorators: [{
8537
8461
  type: NgModule,
8538
8462
  args: [{
8539
8463
  imports: [
@@ -8706,9 +8630,9 @@ class SchedulerComponent extends BaseComponent {
8706
8630
  this.size_cell.width += 10;
8707
8631
  }
8708
8632
  }
8709
- SchedulerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SchedulerComponent, deps: [{ token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
8710
- SchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: SchedulerComponent, selector: "scheduler", host: { listeners: { "mouseup": "onMouseup()", "mousedown": "onMousedown($event)", "mousemove": "onMousemove($event)", "mouseleave": "onMouseLeave($event)" } }, providers: [ProviderService], viewQueries: [{ propertyName: "svgChart", first: true, predicate: ["svgChart"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n\t.bar {\n\t\tfill: red; /* changes the background */\n\t\theight: 21px;\n\t\ttransition: fill .3s ease;\n\t\tcursor: pointer;\n\t\tfont-family: Helvetica, sans-serif;\n\t}\n\n\t.bar text {\n\t\tcolor: black;\n\t}\n\n\t.bar:hover,\n\t.bar:focus {\n\t\tfill: black;\n\t}\n\n\t.bar:hover text,\n\t.bar:focus text {\n\t\tfill: red;\n\t}\n\n\t.year {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.month {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.day {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.smallText {\n\t\tfont-size: 4px;\n\t}\n</style>\n\n<div class=\"scheduler\">\n\n\t<button class=\"btn btn-warning\" type=\"button\" (mouseenter)=\"overBackwards()\" (mouseleave)=\"leftBackwards()\">Go Backwards</button>\n\t<button class=\"btn btn-success\" type=\"button\" (mouseenter)=\"overForward()\" (mouseleave)=\"leftForward()\">Go Forward</button>\n\n\t<button style=\"margin-left: 20px;\" class=\"btn btn-warning\" type=\"button\" (click)=\"zoomOut()\">Zoom Out</button>\n\t<button class=\"btn btn-success\" type=\"button\" (click)=\"zoomIn()\">Zoom In</button>\n\n\t<svg class=\"chart\" width=\"100%\" height=\"100%\" aria-labelledby=\"title desc\" role=\"img\" #svgChart>\n\t\t<title id=\"title\">Scheduler</title>\n\t\t<desc id=\"desc\">Scheduler</desc>\n\n\t\t<g class=\"year\">\n\t\t\t<ng-container *ngFor=\"let year of buildYears()\">\n\t\t\t\t<rect [attr.width]=\"(year.index_end - year.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"year.index_start * size_cell.width\"></rect>\n\t\t\t\t<svg [attr.width]=\"(year.index_end - year.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"year.index_start * size_cell.width\">\n\t\t\t\t\t<text x=\"50%\" y=\"50%\" alignment-baseline=\"middle\" text-anchor=\"middle\">{{year.year}}</text>\n\t\t\t\t</svg>\n\t\t\t</ng-container>\n\t\t</g>\n\t\t<g class=\"month\">\n\t\t\t<ng-container *ngFor=\"let month of buildMonths()\">\n\t\t\t\t<rect [attr.width]=\"(month.index_end - month.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"month.index_start * size_cell.width\" [attr.y]=\"size_cell.height\"></rect>\n\t\t\t\t<svg [attr.width]=\"(month.index_end - month.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"month.index_start * size_cell.width\" [attr.y]=\"size_cell.height\">\n\t\t\t\t\t<text x=\"50%\" y=\"50%\" alignment-baseline=\"middle\" text-anchor=\"middle\">{{month.month}}</text>\n\t\t\t\t</svg>\n\t\t\t</ng-container>\n\t\t</g>\n\t\t<g class=\"day\">\n\t\t\t<ng-container *ngFor=\"let day of buildDays()\">\n\t\t\t\t<rect [attr.width]=\"size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"day.index * size_cell.width\" [attr.y]=\"size_cell.height * 2\"></rect>\n\t\t\t\t<svg [attr.width]=\"size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"day.index * size_cell.width\" [attr.y]=\"size_cell.height * 2\">\n\t\t\t\t\t<text x=\"50%\" y=\"50%\" alignment-baseline=\"middle\" text-anchor=\"middle\" [style.font-size.px]=\"[size_cell.width > 10 ? 12 : 6]\">{{day.day}}</text>\n\t\t\t\t</svg>\n\t\t\t</ng-container>\n\t\t</g>\n\n\n\t\t<!-- <g class=\"bar\">\n\t\t\t<rect width=\"40\" height=\"19\"></rect>\n\t\t\t<text x=\"45\" y=\"9.5\" dy=\".35em\">4 apples</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"80\" height=\"19\" y=\"20\"></rect>\n\t\t\t<text x=\"85\" y=\"28\" dy=\".35em\">8 bananas</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"150\" height=\"19\" y=\"40\"></rect>\n\t\t\t<text x=\"150\" y=\"48\" dy=\".35em\">15 kiwis</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"160\" height=\"19\" y=\"60\"></rect>\n\t\t\t<text x=\"161\" y=\"68\" dy=\".35em\">16 oranges</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"230\" height=\"19\" y=\"80\"></rect>\n\t\t\t<text x=\"235\" y=\"88\" dy=\".35em\">23 lemons</text>\n\t\t</g> -->\n\t</svg>\n</div>\n", styles: ["\n\t.bar {\n\t\tfill: red; /* changes the background */\n\t\theight: 21px;\n\t\ttransition: fill .3s ease;\n\t\tcursor: pointer;\n\t\tfont-family: Helvetica, sans-serif;\n\t}\n\n\t.bar text {\n\t\tcolor: black;\n\t}\n\n\t.bar:hover,\n\t.bar:focus {\n\t\tfill: black;\n\t}\n\n\t.bar:hover text,\n\t.bar:focus text {\n\t\tfill: red;\n\t}\n\n\t.year {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.month {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.day {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.smallText {\n\t\tfont-size: 4px;\n\t}\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
8711
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SchedulerComponent, decorators: [{
8633
+ SchedulerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SchedulerComponent, deps: [{ token: ProviderService }], target: i0.ɵɵFactoryTarget.Component });
8634
+ SchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SchedulerComponent, selector: "scheduler", host: { listeners: { "mouseup": "onMouseup()", "mousedown": "onMousedown($event)", "mousemove": "onMousemove($event)", "mouseleave": "onMouseLeave($event)" } }, providers: [ProviderService], viewQueries: [{ propertyName: "svgChart", first: true, predicate: ["svgChart"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<style>\n\t.bar {\n\t\tfill: red; /* changes the background */\n\t\theight: 21px;\n\t\ttransition: fill .3s ease;\n\t\tcursor: pointer;\n\t\tfont-family: Helvetica, sans-serif;\n\t}\n\n\t.bar text {\n\t\tcolor: black;\n\t}\n\n\t.bar:hover,\n\t.bar:focus {\n\t\tfill: black;\n\t}\n\n\t.bar:hover text,\n\t.bar:focus text {\n\t\tfill: red;\n\t}\n\n\t.year {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.month {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.day {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.smallText {\n\t\tfont-size: 4px;\n\t}\n</style>\n\n<div class=\"scheduler\">\n\n\t<button class=\"btn btn-warning\" type=\"button\" (mouseenter)=\"overBackwards()\" (mouseleave)=\"leftBackwards()\">Go Backwards</button>\n\t<button class=\"btn btn-success\" type=\"button\" (mouseenter)=\"overForward()\" (mouseleave)=\"leftForward()\">Go Forward</button>\n\n\t<button style=\"margin-left: 20px;\" class=\"btn btn-warning\" type=\"button\" (click)=\"zoomOut()\">Zoom Out</button>\n\t<button class=\"btn btn-success\" type=\"button\" (click)=\"zoomIn()\">Zoom In</button>\n\n\t<svg class=\"chart\" width=\"100%\" height=\"100%\" aria-labelledby=\"title desc\" role=\"img\" #svgChart>\n\t\t<title id=\"title\">Scheduler</title>\n\t\t<desc id=\"desc\">Scheduler</desc>\n\n\t\t<g class=\"year\">\n\t\t\t<ng-container *ngFor=\"let year of buildYears()\">\n\t\t\t\t<rect [attr.width]=\"(year.index_end - year.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"year.index_start * size_cell.width\"></rect>\n\t\t\t\t<svg [attr.width]=\"(year.index_end - year.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"year.index_start * size_cell.width\">\n\t\t\t\t\t<text x=\"50%\" y=\"50%\" alignment-baseline=\"middle\" text-anchor=\"middle\">{{year.year}}</text>\n\t\t\t\t</svg>\n\t\t\t</ng-container>\n\t\t</g>\n\t\t<g class=\"month\">\n\t\t\t<ng-container *ngFor=\"let month of buildMonths()\">\n\t\t\t\t<rect [attr.width]=\"(month.index_end - month.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"month.index_start * size_cell.width\" [attr.y]=\"size_cell.height\"></rect>\n\t\t\t\t<svg [attr.width]=\"(month.index_end - month.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"month.index_start * size_cell.width\" [attr.y]=\"size_cell.height\">\n\t\t\t\t\t<text x=\"50%\" y=\"50%\" alignment-baseline=\"middle\" text-anchor=\"middle\">{{month.month}}</text>\n\t\t\t\t</svg>\n\t\t\t</ng-container>\n\t\t</g>\n\t\t<g class=\"day\">\n\t\t\t<ng-container *ngFor=\"let day of buildDays()\">\n\t\t\t\t<rect [attr.width]=\"size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"day.index * size_cell.width\" [attr.y]=\"size_cell.height * 2\"></rect>\n\t\t\t\t<svg [attr.width]=\"size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"day.index * size_cell.width\" [attr.y]=\"size_cell.height * 2\">\n\t\t\t\t\t<text x=\"50%\" y=\"50%\" alignment-baseline=\"middle\" text-anchor=\"middle\" [style.font-size.px]=\"[size_cell.width > 10 ? 12 : 6]\">{{day.day}}</text>\n\t\t\t\t</svg>\n\t\t\t</ng-container>\n\t\t</g>\n\n\n\t\t<!-- <g class=\"bar\">\n\t\t\t<rect width=\"40\" height=\"19\"></rect>\n\t\t\t<text x=\"45\" y=\"9.5\" dy=\".35em\">4 apples</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"80\" height=\"19\" y=\"20\"></rect>\n\t\t\t<text x=\"85\" y=\"28\" dy=\".35em\">8 bananas</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"150\" height=\"19\" y=\"40\"></rect>\n\t\t\t<text x=\"150\" y=\"48\" dy=\".35em\">15 kiwis</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"160\" height=\"19\" y=\"60\"></rect>\n\t\t\t<text x=\"161\" y=\"68\" dy=\".35em\">16 oranges</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"230\" height=\"19\" y=\"80\"></rect>\n\t\t\t<text x=\"235\" y=\"88\" dy=\".35em\">23 lemons</text>\n\t\t</g> -->\n\t</svg>\n</div>\n", styles: ["\n\t.bar {\n\t\tfill: red; /* changes the background */\n\t\theight: 21px;\n\t\ttransition: fill .3s ease;\n\t\tcursor: pointer;\n\t\tfont-family: Helvetica, sans-serif;\n\t}\n\n\t.bar text {\n\t\tcolor: black;\n\t}\n\n\t.bar:hover,\n\t.bar:focus {\n\t\tfill: black;\n\t}\n\n\t.bar:hover text,\n\t.bar:focus text {\n\t\tfill: red;\n\t}\n\n\t.year {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.month {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.day {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.smallText {\n\t\tfont-size: 4px;\n\t}\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
8635
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SchedulerComponent, decorators: [{
8712
8636
  type: Component,
8713
8637
  args: [{ providers: [ProviderService], selector: 'scheduler', template: "<style>\n\t.bar {\n\t\tfill: red; /* changes the background */\n\t\theight: 21px;\n\t\ttransition: fill .3s ease;\n\t\tcursor: pointer;\n\t\tfont-family: Helvetica, sans-serif;\n\t}\n\n\t.bar text {\n\t\tcolor: black;\n\t}\n\n\t.bar:hover,\n\t.bar:focus {\n\t\tfill: black;\n\t}\n\n\t.bar:hover text,\n\t.bar:focus text {\n\t\tfill: red;\n\t}\n\n\t.year {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.month {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.day {\n\t\tstroke:black;\n\t\tfill: white;\n\t}\n\n\t.smallText {\n\t\tfont-size: 4px;\n\t}\n</style>\n\n<div class=\"scheduler\">\n\n\t<button class=\"btn btn-warning\" type=\"button\" (mouseenter)=\"overBackwards()\" (mouseleave)=\"leftBackwards()\">Go Backwards</button>\n\t<button class=\"btn btn-success\" type=\"button\" (mouseenter)=\"overForward()\" (mouseleave)=\"leftForward()\">Go Forward</button>\n\n\t<button style=\"margin-left: 20px;\" class=\"btn btn-warning\" type=\"button\" (click)=\"zoomOut()\">Zoom Out</button>\n\t<button class=\"btn btn-success\" type=\"button\" (click)=\"zoomIn()\">Zoom In</button>\n\n\t<svg class=\"chart\" width=\"100%\" height=\"100%\" aria-labelledby=\"title desc\" role=\"img\" #svgChart>\n\t\t<title id=\"title\">Scheduler</title>\n\t\t<desc id=\"desc\">Scheduler</desc>\n\n\t\t<g class=\"year\">\n\t\t\t<ng-container *ngFor=\"let year of buildYears()\">\n\t\t\t\t<rect [attr.width]=\"(year.index_end - year.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"year.index_start * size_cell.width\"></rect>\n\t\t\t\t<svg [attr.width]=\"(year.index_end - year.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"year.index_start * size_cell.width\">\n\t\t\t\t\t<text x=\"50%\" y=\"50%\" alignment-baseline=\"middle\" text-anchor=\"middle\">{{year.year}}</text>\n\t\t\t\t</svg>\n\t\t\t</ng-container>\n\t\t</g>\n\t\t<g class=\"month\">\n\t\t\t<ng-container *ngFor=\"let month of buildMonths()\">\n\t\t\t\t<rect [attr.width]=\"(month.index_end - month.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"month.index_start * size_cell.width\" [attr.y]=\"size_cell.height\"></rect>\n\t\t\t\t<svg [attr.width]=\"(month.index_end - month.index_start) * size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"month.index_start * size_cell.width\" [attr.y]=\"size_cell.height\">\n\t\t\t\t\t<text x=\"50%\" y=\"50%\" alignment-baseline=\"middle\" text-anchor=\"middle\">{{month.month}}</text>\n\t\t\t\t</svg>\n\t\t\t</ng-container>\n\t\t</g>\n\t\t<g class=\"day\">\n\t\t\t<ng-container *ngFor=\"let day of buildDays()\">\n\t\t\t\t<rect [attr.width]=\"size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"day.index * size_cell.width\" [attr.y]=\"size_cell.height * 2\"></rect>\n\t\t\t\t<svg [attr.width]=\"size_cell.width\" [attr.height]=\"size_cell.height\" [attr.x]=\"day.index * size_cell.width\" [attr.y]=\"size_cell.height * 2\">\n\t\t\t\t\t<text x=\"50%\" y=\"50%\" alignment-baseline=\"middle\" text-anchor=\"middle\" [style.font-size.px]=\"[size_cell.width > 10 ? 12 : 6]\">{{day.day}}</text>\n\t\t\t\t</svg>\n\t\t\t</ng-container>\n\t\t</g>\n\n\n\t\t<!-- <g class=\"bar\">\n\t\t\t<rect width=\"40\" height=\"19\"></rect>\n\t\t\t<text x=\"45\" y=\"9.5\" dy=\".35em\">4 apples</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"80\" height=\"19\" y=\"20\"></rect>\n\t\t\t<text x=\"85\" y=\"28\" dy=\".35em\">8 bananas</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"150\" height=\"19\" y=\"40\"></rect>\n\t\t\t<text x=\"150\" y=\"48\" dy=\".35em\">15 kiwis</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"160\" height=\"19\" y=\"60\"></rect>\n\t\t\t<text x=\"161\" y=\"68\" dy=\".35em\">16 oranges</text>\n\t\t</g>\n\t\t<g class=\"bar\">\n\t\t\t<rect width=\"230\" height=\"19\" y=\"80\"></rect>\n\t\t\t<text x=\"235\" y=\"88\" dy=\".35em\">23 lemons</text>\n\t\t</g> -->\n\t</svg>\n</div>\n" }]
8714
8638
  }], ctorParameters: function () { return [{ type: ProviderService }]; }, propDecorators: { svgChart: [{
@@ -8730,16 +8654,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
8730
8654
 
8731
8655
  class SchedulerModule {
8732
8656
  }
8733
- SchedulerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SchedulerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8734
- SchedulerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: SchedulerModule, declarations: [SchedulerComponent], imports: [NgbModule,
8657
+ SchedulerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SchedulerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8658
+ SchedulerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SchedulerModule, declarations: [SchedulerComponent], imports: [NgbModule,
8735
8659
  FormsModule,
8736
8660
  CommonModule,
8737
8661
  RouterModule], exports: [SchedulerComponent] });
8738
- SchedulerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SchedulerModule, imports: [NgbModule,
8662
+ SchedulerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SchedulerModule, imports: [NgbModule,
8739
8663
  FormsModule,
8740
8664
  CommonModule,
8741
8665
  RouterModule] });
8742
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SchedulerModule, decorators: [{
8666
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SchedulerModule, decorators: [{
8743
8667
  type: NgModule,
8744
8668
  args: [{
8745
8669
  imports: [
@@ -8761,10 +8685,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImpor
8761
8685
  const ReportBuilderModulePermission = {
8762
8686
  name: 'report-builder',
8763
8687
  views: [
8764
- { link: '/report-builder/list', label: 'List' },
8765
- { link: '/report-builder/new', label: 'New' },
8766
- { link: '/report-builder/scheduled-job', label: 'Scheduled Job' },
8767
- { link: '/report-builder/dashboard-builder', label: 'Dashboard Builder' },
8688
+ { link: '/report-builder/list', label: 'List', has_parameter: false },
8689
+ { link: '/report-builder/new', label: 'New', has_parameter: false },
8690
+ { link: '/report-builder/scheduled-job', label: 'Scheduled Job', has_parameter: false },
8691
+ { link: '/report-builder/dashboard-builder', label: 'Dashboard Builder', has_parameter: false },
8768
8692
  { link: '/report-builder/detail', label: 'Detail', has_parameter: true },
8769
8693
  { link: '/report-builder/edit', label: 'Edit', has_parameter: true },
8770
8694
  { link: '/report-builder/delete', label: 'Delete', has_parameter: true },
@@ -8774,9 +8698,9 @@ const ReportBuilderModulePermission = {
8774
8698
  const SuperAdminModulePermission = {
8775
8699
  name: 'super-admin',
8776
8700
  views: [
8777
- { link: '/super-admin/dashboard', label: 'Dashboard' },
8778
- { link: '/super-admin/apm', label: 'APM' },
8779
- { link: '/super-admin/monitor', label: 'Monitor' }
8701
+ { link: '/super-admin/dashboard', label: 'Dashboard', has_parameter: false },
8702
+ { link: '/super-admin/apm', label: 'APM', has_parameter: false },
8703
+ { link: '/super-admin/monitor', label: 'Monitor', has_parameter: false }
8780
8704
  ]
8781
8705
  };
8782
8706