@firestitch/system 9.1.6 → 9.2.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 (50) hide show
  1. package/app/components/api-logs/api-logs.component.d.ts +1 -3
  2. package/app/components/crons/crons.component.d.ts +2 -3
  3. package/app/components/dashboard/dashboard.component.d.ts +1 -3
  4. package/app/components/processes/processes.component.d.ts +1 -3
  5. package/app/components/server-logs/server-logs.component.d.ts +1 -3
  6. package/app/components/settings/settings.component.d.ts +1 -3
  7. package/app/components/upgrade-logs/upgrade-logs.component.d.ts +0 -3
  8. package/app/enums/setting-interface-type.enum.d.ts +2 -1
  9. package/app/interfaces/system-config.d.ts +0 -1
  10. package/bundles/firestitch-system.umd.js +77 -114
  11. package/bundles/firestitch-system.umd.js.map +1 -1
  12. package/bundles/firestitch-system.umd.min.js +2 -2
  13. package/bundles/firestitch-system.umd.min.js.map +1 -1
  14. package/esm2015/app/components/api-logs/api-logs.component.js +5 -9
  15. package/esm2015/app/components/crons/crons.component.js +38 -13
  16. package/esm2015/app/components/dashboard/dashboard.component.js +3 -7
  17. package/esm2015/app/components/processes/processes.component.js +4 -8
  18. package/esm2015/app/components/server-logs/server-logs.component.js +6 -10
  19. package/esm2015/app/components/settings/settings.component.js +5 -8
  20. package/esm2015/app/components/upgrade-logs/upgrade-logs.component.js +4 -10
  21. package/esm2015/app/enums/setting-interface-type.enum.js +3 -2
  22. package/esm2015/app/fs-system.module.js +1 -5
  23. package/esm2015/app/interfaces/system-config.js +1 -1
  24. package/esm2015/app/pipes/key-name-value.pipe.js +2 -2
  25. package/esm2015/firestitch-system.js +15 -17
  26. package/esm5/app/components/api-logs/api-logs.component.js +5 -9
  27. package/esm5/app/components/crons/crons.component.js +38 -13
  28. package/esm5/app/components/dashboard/dashboard.component.js +3 -7
  29. package/esm5/app/components/processes/processes.component.js +4 -8
  30. package/esm5/app/components/server-logs/server-logs.component.js +6 -10
  31. package/esm5/app/components/settings/settings.component.js +5 -8
  32. package/esm5/app/components/upgrade-logs/upgrade-logs.component.js +4 -10
  33. package/esm5/app/enums/setting-interface-type.enum.js +3 -2
  34. package/esm5/app/fs-system.module.js +1 -5
  35. package/esm5/app/interfaces/system-config.js +1 -1
  36. package/esm5/app/pipes/key-name-value.pipe.js +1 -1
  37. package/esm5/firestitch-system.js +15 -17
  38. package/fesm2015/firestitch-system.js +65 -98
  39. package/fesm2015/firestitch-system.js.map +1 -1
  40. package/fesm5/firestitch-system.js +64 -100
  41. package/fesm5/firestitch-system.js.map +1 -1
  42. package/firestitch-system.d.ts +14 -17
  43. package/firestitch-system.metadata.json +1 -1
  44. package/package.json +1 -1
  45. package/app/services/index.d.ts +0 -1
  46. package/app/services/system.service.d.ts +0 -7
  47. package/esm2015/app/services/index.js +0 -2
  48. package/esm2015/app/services/system.service.js +0 -43
  49. package/esm5/app/services/index.js +0 -2
  50. package/esm5/app/services/system.service.js +0 -46
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('snakecase-keys'), require('camelcase-keys'), require('lodash-es'), require('@angular/common'), require('@angular/forms'), require('@angular/material/form-field'), require('@angular/material/expansion'), require('@angular/material/input'), require('@angular/material/select'), require('@angular/material/dialog'), require('@angular/material/tooltip'), require('@angular/material/icon'), require('@angular/flex-layout'), require('@angular/material/button'), require('@firestitch/date'), require('@firestitch/datepicker'), require('@firestitch/skeleton'), require('@firestitch/list'), require('@firestitch/file-manager'), require('@firestitch/dialog'), require('@firestitch/label'), require('@firestitch/file'), require('@firestitch/menu'), require('@firestitch/message'), require('@firestitch/build'), require('rxjs/operators'), require('rxjs'), require('date-fns'), require('@firestitch/filter'), require('@firestitch/prompt'), require('ngx-clipboard'), require('@angular/material/tabs')) :
3
- typeof define === 'function' && define.amd ? define('@firestitch/system', ['exports', '@angular/core', 'snakecase-keys', 'camelcase-keys', 'lodash-es', '@angular/common', '@angular/forms', '@angular/material/form-field', '@angular/material/expansion', '@angular/material/input', '@angular/material/select', '@angular/material/dialog', '@angular/material/tooltip', '@angular/material/icon', '@angular/flex-layout', '@angular/material/button', '@firestitch/date', '@firestitch/datepicker', '@firestitch/skeleton', '@firestitch/list', '@firestitch/file-manager', '@firestitch/dialog', '@firestitch/label', '@firestitch/file', '@firestitch/menu', '@firestitch/message', '@firestitch/build', 'rxjs/operators', 'rxjs', 'date-fns', '@firestitch/filter', '@firestitch/prompt', 'ngx-clipboard', '@angular/material/tabs'], factory) :
4
- (global = global || self, factory((global.firestitch = global.firestitch || {}, global.firestitch.system = {}), global.ng.core, global._snakecaseKeys, global._camelcaseKeys, global.lodashEs, global.ng.common, global.ng.forms, global.ng.material.formField, global.ng.material.expansion, global.ng.material.input, global.ng.material.select, global.ng.material.dialog, global.ng.material.tooltip, global.ng.material.icon, global.ng.flexLayout, global.ng.material.button, global.date, global.datepicker, global.skeleton, global.list, global.fileManager, global.dialog$1, global.label, global.file, global.menu, global.message, global.build, global.rxjs.operators, global.rxjs, global.dateFns, global.filter, global.prompt, global.ngxClipboard, global.ng.material.tabs));
5
- }(this, (function (exports, core, _snakecaseKeys, _camelcaseKeys, lodashEs, common, forms, formField, expansion, input, select, dialog, tooltip, icon, flexLayout, button, date, datepicker, skeleton, list, fileManager, dialog$1, label, file, menu, message, build, operators, rxjs, dateFns, filter, prompt, ngxClipboard, tabs) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/forms'), require('@angular/material/form-field'), require('@angular/material/expansion'), require('@angular/material/input'), require('@angular/material/select'), require('@angular/material/dialog'), require('@angular/material/tooltip'), require('@angular/material/icon'), require('@angular/flex-layout'), require('@angular/material/button'), require('@firestitch/date'), require('@firestitch/datepicker'), require('@firestitch/skeleton'), require('@firestitch/list'), require('@firestitch/file-manager'), require('@firestitch/dialog'), require('@firestitch/label'), require('@firestitch/file'), require('@firestitch/menu'), require('@firestitch/message'), require('@firestitch/build'), require('rxjs/operators'), require('rxjs'), require('date-fns'), require('@firestitch/filter'), require('@firestitch/selection'), require('@firestitch/prompt'), require('lodash-es'), require('ngx-clipboard'), require('@angular/material/tabs')) :
3
+ typeof define === 'function' && define.amd ? define('@firestitch/system', ['exports', '@angular/core', '@angular/common', '@angular/forms', '@angular/material/form-field', '@angular/material/expansion', '@angular/material/input', '@angular/material/select', '@angular/material/dialog', '@angular/material/tooltip', '@angular/material/icon', '@angular/flex-layout', '@angular/material/button', '@firestitch/date', '@firestitch/datepicker', '@firestitch/skeleton', '@firestitch/list', '@firestitch/file-manager', '@firestitch/dialog', '@firestitch/label', '@firestitch/file', '@firestitch/menu', '@firestitch/message', '@firestitch/build', 'rxjs/operators', 'rxjs', 'date-fns', '@firestitch/filter', '@firestitch/selection', '@firestitch/prompt', 'lodash-es', 'ngx-clipboard', '@angular/material/tabs'], factory) :
4
+ (global = global || self, factory((global.firestitch = global.firestitch || {}, global.firestitch.system = {}), global.ng.core, global.ng.common, global.ng.forms, global.ng.material.formField, global.ng.material.expansion, global.ng.material.input, global.ng.material.select, global.ng.material.dialog, global.ng.material.tooltip, global.ng.material.icon, global.ng.flexLayout, global.ng.material.button, global.date, global.datepicker, global.skeleton, global.list, global.fileManager, global.dialog$1, global.label, global.file, global.menu, global.message, global.build, global.rxjs.operators, global.rxjs, global.dateFns, global.filter, global.selection, global.prompt, global.lodashEs, global.ngxClipboard, global.ng.material.tabs));
5
+ }(this, (function (exports, core, common, forms, formField, expansion, input, select, dialog, tooltip, icon, flexLayout, button, date, datepicker, skeleton, list, fileManager, dialog$1, label, file, menu, message, build, operators, rxjs, dateFns, filter, selection, prompt, lodashEs, ngxClipboard, tabs) { 'use strict';
6
6
 
7
7
  /*! *****************************************************************************
8
8
  Copyright (c) Microsoft Corporation.
@@ -225,50 +225,10 @@
225
225
 
226
226
  var FS_SYSTEM_CONFIG = new core.InjectionToken('fs-system-config');
227
227
 
228
- var snakecaseKeys = _snakecaseKeys;
229
- var camelcaseKeys = _camelcaseKeys;
230
- var SystemService = /** @class */ (function () {
231
- function SystemService(_config) {
232
- this._config = _config;
233
- }
234
- SystemService.prototype.input = function (data) {
235
- var _this = this;
236
- if (lodashEs.isArray(data)) {
237
- return data.map(function (item) {
238
- return _this._config.case === 'snake' ? camelcaseKeys(item, { deep: true }) : item;
239
- });
240
- }
241
- else {
242
- return this._config.case === 'snake' ? camelcaseKeys(data, { deep: true }) : data;
243
- }
244
- };
245
- SystemService.prototype.output = function (data) {
246
- var _this = this;
247
- if (lodashEs.isArray(data)) {
248
- return data.map(function (item) {
249
- return _this._config.case === 'snake' ? snakecaseKeys(item, { deep: true }) : item;
250
- });
251
- }
252
- else {
253
- return this._config.case === 'snake' ? snakecaseKeys(data, { deep: true }) : data;
254
- }
255
- };
256
- SystemService.ctorParameters = function () { return [
257
- { type: undefined, decorators: [{ type: core.Inject, args: [FS_SYSTEM_CONFIG,] }] }
258
- ]; };
259
- SystemService = __decorate([
260
- core.Injectable(),
261
- __param(0, core.Inject(FS_SYSTEM_CONFIG)),
262
- __metadata("design:paramtypes", [Object])
263
- ], SystemService);
264
- return SystemService;
265
- }());
266
-
267
228
  var DashboardComponent = /** @class */ (function () {
268
- function DashboardComponent(_message, _cdRef, _systemService, _buildService) {
229
+ function DashboardComponent(_message, _cdRef, _buildService) {
269
230
  this._message = _message;
270
231
  this._cdRef = _cdRef;
271
- this._systemService = _systemService;
272
232
  this._buildService = _buildService;
273
233
  this.buttonActions = [];
274
234
  this.menuActions = [];
@@ -292,7 +252,7 @@
292
252
  var _this = this;
293
253
  this.load()
294
254
  .subscribe(function (dashboard) {
295
- _this.dashboard = _this._systemService.input(dashboard);
255
+ _this.dashboard = dashboard;
296
256
  _this.dashboard.cronRanAttention = !dashboard.cronRan ||
297
257
  dateFns.differenceInMinutes(new Date(), new Date(dashboard.cronRan)) > 15;
298
258
  _this._cdRef.markForCheck();
@@ -323,7 +283,6 @@
323
283
  DashboardComponent.ctorParameters = function () { return [
324
284
  { type: message.FsMessage },
325
285
  { type: core.ChangeDetectorRef },
326
- { type: SystemService },
327
286
  { type: build.FsBuildService }
328
287
  ]; };
329
288
  __decorate([
@@ -351,7 +310,6 @@
351
310
  }),
352
311
  __metadata("design:paramtypes", [message.FsMessage,
353
312
  core.ChangeDetectorRef,
354
- SystemService,
355
313
  build.FsBuildService])
356
314
  ], DashboardComponent);
357
315
  return DashboardComponent;
@@ -379,7 +337,8 @@
379
337
  SettingInterfaceType["RadioButton"] = "R";
380
338
  SettingInterfaceType["InputBox"] = "I";
381
339
  SettingInterfaceType["Textarea"] = "T";
382
- SettingInterfaceType["DropDown"] = "D";
340
+ SettingInterfaceType["Select"] = "D";
341
+ SettingInterfaceType["SelectMultiple"] = "W";
383
342
  SettingInterfaceType["Date"] = "A";
384
343
  SettingInterfaceType["File"] = "F";
385
344
  SettingInterfaceType["Static"] = "S";
@@ -574,9 +533,8 @@
574
533
  }());
575
534
 
576
535
  var CronsComponent = /** @class */ (function () {
577
- function CronsComponent(_message, _systemService, _dialog) {
536
+ function CronsComponent(_message, _dialog) {
578
537
  this._message = _message;
579
- this._systemService = _systemService;
580
538
  this._dialog = _dialog;
581
539
  this.config = null;
582
540
  this.cronStates = indexNameValue(CronStates);
@@ -605,9 +563,33 @@
605
563
  fetch: function (query) {
606
564
  query.timezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
607
565
  return _this.loadCrons(query)
608
- .pipe(operators.map(function (response) { return ({ data: _this._systemService.input(response) }); }));
609
- }
566
+ .pipe(operators.map(function (response) { return ({ data: response }); }));
567
+ },
610
568
  };
569
+ if (this.bulk) {
570
+ this.config.selection = {
571
+ selectAll: false,
572
+ actions: [
573
+ {
574
+ type: selection.SelectionActionType.Action,
575
+ name: 'disable',
576
+ label: 'Disable'
577
+ },
578
+ {
579
+ type: selection.SelectionActionType.Action,
580
+ name: 'enable',
581
+ label: 'Enable'
582
+ },
583
+ ],
584
+ actionSelected: function (action) {
585
+ return _this.bulk(action.action.name, action.selected)
586
+ .pipe(operators.tap(function () {
587
+ _this.list.reload();
588
+ _this._message.success('Applied Changes');
589
+ }));
590
+ },
591
+ };
592
+ }
611
593
  };
612
594
  CronsComponent.prototype.open = function (cron) {
613
595
  this._dialog.open(CronComponent, {
@@ -625,7 +607,7 @@
625
607
  return [
626
608
  {
627
609
  action: function (data) {
628
- return _this.queue(_this._systemService.output(data))
610
+ return _this.queue(data)
629
611
  .pipe(operators.tap(function () {
630
612
  _this._message.success('Queued cron');
631
613
  _this.list.reload();
@@ -638,7 +620,7 @@
638
620
  },
639
621
  {
640
622
  action: function (data) {
641
- return _this.run(_this._systemService.output(data))
623
+ return _this.run(data)
642
624
  .pipe(operators.tap(function () {
643
625
  _this._message.success('Cron ran');
644
626
  _this.list.reload();
@@ -651,7 +633,7 @@
651
633
  },
652
634
  {
653
635
  action: function (data) {
654
- return _this.enable(_this._systemService.output(data))
636
+ return _this.enable(data)
655
637
  .pipe(operators.tap(function () {
656
638
  _this._message.success('Enabled cron');
657
639
  _this.list.reload();
@@ -664,7 +646,7 @@
664
646
  },
665
647
  {
666
648
  action: function (data) {
667
- return _this.disable(_this._systemService.output(data))
649
+ return _this.disable(data)
668
650
  .pipe(operators.tap(function () {
669
651
  _this._message.success('Disabled cron');
670
652
  _this.list.reload();
@@ -677,7 +659,7 @@
677
659
  },
678
660
  {
679
661
  action: function (data) {
680
- return _this.kill(_this._systemService.output(data))
662
+ return _this.kill(data)
681
663
  .pipe(operators.tap(function () {
682
664
  _this._message.success('Killed cron');
683
665
  _this.list.reload();
@@ -692,7 +674,6 @@
692
674
  };
693
675
  CronsComponent.ctorParameters = function () { return [
694
676
  { type: message.FsMessage },
695
- { type: SystemService },
696
677
  { type: dialog.MatDialog }
697
678
  ]; };
698
679
  __decorate([
@@ -731,6 +712,10 @@
731
712
  core.Input(),
732
713
  __metadata("design:type", Function)
733
714
  ], CronsComponent.prototype, "loadCronLogs", void 0);
715
+ __decorate([
716
+ core.Input(),
717
+ __metadata("design:type", Function)
718
+ ], CronsComponent.prototype, "bulk", void 0);
734
719
  CronsComponent = __decorate([
735
720
  core.Component({
736
721
  selector: 'fs-system-crons',
@@ -738,16 +723,14 @@
738
723
  styles: [""]
739
724
  }),
740
725
  __metadata("design:paramtypes", [message.FsMessage,
741
- SystemService,
742
726
  dialog.MatDialog])
743
727
  ], CronsComponent);
744
728
  return CronsComponent;
745
729
  }());
746
730
 
747
731
  var SettingsComponent = /** @class */ (function () {
748
- function SettingsComponent(_message, _systemService, _clipboardService, _prompt, _cdRef) {
732
+ function SettingsComponent(_message, _clipboardService, _prompt, _cdRef) {
749
733
  this._message = _message;
750
- this._systemService = _systemService;
751
734
  this._clipboardService = _clipboardService;
752
735
  this._prompt = _prompt;
753
736
  this._cdRef = _cdRef;
@@ -761,12 +744,13 @@
761
744
  var _this = this;
762
745
  this.loadSettings()
763
746
  .subscribe(function (settings) {
764
- settings = _this._systemService.input(settings);
765
747
  settings = settings.map(function (setting) {
766
748
  switch (setting.interfaceType) {
767
749
  case SettingInterfaceType.Date:
768
750
  case SettingInterfaceType.Time:
769
751
  setting.value = date.parse(setting.value);
752
+ case SettingInterfaceType.SelectMultiple:
753
+ setting.value = Array.isArray(setting.value) ? setting.value : [];
770
754
  break;
771
755
  }
772
756
  return setting;
@@ -832,7 +816,6 @@
832
816
  };
833
817
  SettingsComponent.ctorParameters = function () { return [
834
818
  { type: message.FsMessage },
835
- { type: SystemService },
836
819
  { type: ngxClipboard.ClipboardService },
837
820
  { type: prompt.FsPrompt },
838
821
  { type: core.ChangeDetectorRef }
@@ -856,12 +839,11 @@
856
839
  SettingsComponent = __decorate([
857
840
  core.Component({
858
841
  selector: 'fs-system-settings',
859
- template: "\r\n<mat-accordion>\r\n <mat-expansion-panel hideToggle *ngFor=\"let group of groups\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <div class=\"title-row\">\r\n <div class=\"title\">{{group || 'General'}}</div>\r\n <div class=\"actions\">\r\n <button\r\n type=\"button\"\r\n [matTooltip]=\"'Export ' + (group || 'General') + ' Settings'\"\r\n mat-icon-button\r\n (click)=\"export($event, groupedSettings[group])\">\r\n <mat-icon>cloud_download</mat-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [matTooltip]=\"'Import ' + (group || 'General') + ' Settings'\"\r\n mat-icon-button\r\n (click)=\"import($event, group)\">\r\n <mat-icon>cloud_upload</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n\r\n <div hideToggle *ngFor=\"let setting of groupedSettings[group]\">\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.InputBox\">\r\n <input\r\n matInput\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [name]=\"'setting_' + setting.id\">\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.Textarea\">\r\n <textarea\r\n matInput\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [name]=\"'setting_' + setting.id\">\r\n </textarea>\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.DropDown\">\r\n <mat-select\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [name]=\"'setting_' + setting.id\">\r\n <mat-option *ngFor=\"let item of setting.values | keyNameValue\" [value]=\"item.value\">\r\n {{item.name}}\r\n </mat-option>\r\n </mat-select>\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.Date\">\r\n <input\r\n matInput\r\n fsDatePicker\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [name]=\"'setting_' + setting.id\">\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.Time\">\r\n <input\r\n matInput\r\n fsTimePicker\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [name]=\"'setting_' + setting.id\">\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <fs-file-picker\r\n *ngIf=\"setting.interfaceType===SettingInterfaceType.File\"\r\n [allowRemove]=\"true\"\r\n [allowDownload]=\"true\"\r\n (select)=\"fileSelect.emit({ setting: setting, file: $event.file })\"\r\n (remove)=\"fileRemove.emit(setting)\"\r\n [url]=\"setting.value\">\r\n <div fsFileLabel>{{setting.label}}</div>\r\n </fs-file-picker>\r\n </div>\r\n\r\n <button mat-raised-button color=\"primary\" type=\"button\" (click)=\"saveGroup(group)\">Save</button>\r\n\r\n </mat-expansion-panel>\r\n\r\n</mat-accordion>\r\n",
842
+ template: "\r\n<mat-accordion>\r\n <mat-expansion-panel hideToggle *ngFor=\"let group of groups\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <div class=\"title-row\">\r\n <div class=\"title\">{{group || 'General'}}</div>\r\n <div class=\"actions\">\r\n <button\r\n type=\"button\"\r\n [matTooltip]=\"'Export ' + (group || 'General') + ' Settings'\"\r\n mat-icon-button\r\n (click)=\"export($event, groupedSettings[group])\">\r\n <mat-icon>cloud_download</mat-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [matTooltip]=\"'Import ' + (group || 'General') + ' Settings'\"\r\n mat-icon-button\r\n (click)=\"import($event, group)\">\r\n <mat-icon>cloud_upload</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n\r\n <div hideToggle *ngFor=\"let setting of groupedSettings[group]\">\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.InputBox\">\r\n <input\r\n matInput\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [name]=\"'setting' + setting.id\">\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.Textarea\">\r\n <textarea\r\n matInput\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [name]=\"'setting' + setting.id\">\r\n </textarea>\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.Select || setting.interfaceType===SettingInterfaceType.SelectMultiple\">\r\n <mat-select\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [multiple]=\"setting.interfaceType===SettingInterfaceType.SelectMultiple\"\r\n [name]=\"'setting' + setting.id\">\r\n <mat-option *ngFor=\"let item of setting.values | keyNameValue\" [value]=\"item.value\">\r\n {{item.name}}\r\n </mat-option>\r\n </mat-select>\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.Date\">\r\n <input\r\n matInput\r\n fsDatePicker\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [name]=\"'setting' + setting.id\">\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"full-width\" *ngIf=\"setting.interfaceType===SettingInterfaceType.Time\">\r\n <input\r\n matInput\r\n fsTimePicker\r\n [placeholder]=\"setting.label\"\r\n [(ngModel)]=\"setting.value\"\r\n [name]=\"'setting' + setting.id\">\r\n <mat-hint>{{setting.instruction}}</mat-hint>\r\n </mat-form-field>\r\n\r\n <fs-file-picker\r\n *ngIf=\"setting.interfaceType===SettingInterfaceType.File\"\r\n [allowRemove]=\"true\"\r\n [allowDownload]=\"true\"\r\n (select)=\"fileSelect.emit({ setting: setting, file: $event.file })\"\r\n (remove)=\"fileRemove.emit(setting)\"\r\n [url]=\"setting.value\">\r\n <div fsFileLabel>{{setting.label}}</div>\r\n </fs-file-picker>\r\n </div>\r\n\r\n <button mat-raised-button color=\"primary\" type=\"button\" (click)=\"saveGroup(group)\">Save</button>\r\n\r\n </mat-expansion-panel>\r\n\r\n</mat-accordion>\r\n",
860
843
  changeDetection: core.ChangeDetectionStrategy.OnPush,
861
844
  styles: [".mat-expansion-panel-header{font-size:19px}.full-width{width:100%}.title-row{flex-direction:row;box-sizing:border-box;display:flex;place-content:center flex-start;align-items:center;width:100%}.title-row .title{display:flex;flex:1}:host ::ng-deep .mat-expansion-panel-header-title{margin:0}:host ::ng-deep .mat-expansion-panel .actions{display:none}:host ::ng-deep .mat-expansion-panel.mat-expanded .actions{display:block}"]
862
845
  }),
863
846
  __metadata("design:paramtypes", [message.FsMessage,
864
- SystemService,
865
847
  ngxClipboard.ClipboardService,
866
848
  prompt.FsPrompt,
867
849
  core.ChangeDetectorRef])
@@ -988,8 +970,7 @@
988
970
  }());
989
971
 
990
972
  var ProcessesComponent = /** @class */ (function () {
991
- function ProcessesComponent(_systemService, _dialog, _message) {
992
- this._systemService = _systemService;
973
+ function ProcessesComponent(_dialog, _message) {
993
974
  this._dialog = _dialog;
994
975
  this._message = _message;
995
976
  this.actions = [];
@@ -1021,7 +1002,7 @@
1021
1002
  ],
1022
1003
  fetch: function (query) {
1023
1004
  return _this.loadProcesses(query)
1024
- .pipe(operators.map(function (response) { return ({ data: _this._systemService.input(response.data), paging: response.paging }); }));
1005
+ .pipe(operators.map(function (response) { return ({ data: response.data, paging: response.paging }); }));
1025
1006
  }
1026
1007
  };
1027
1008
  if (this.run) {
@@ -1108,7 +1089,6 @@
1108
1089
  this._destroy$.complete();
1109
1090
  };
1110
1091
  ProcessesComponent.ctorParameters = function () { return [
1111
- { type: SystemService },
1112
1092
  { type: dialog.MatDialog },
1113
1093
  { type: message.FsMessage }
1114
1094
  ]; };
@@ -1150,8 +1130,7 @@
1150
1130
  template: "<fs-list [config]=\"config\">\r\n <fs-list-column>\r\n <ng-template fs-list-header>Name</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n <a (click)=\"open(row)\">{{row.prettyName}}</a>\r\n </ng-template>\r\n </fs-list-column>\r\n\r\n <fs-list-column>\r\n <ng-template fs-list-header>Status</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{ProcessStates[row.state]}}\r\n <small>\r\n <div *ngIf=\"row.state===ProcessState.Running && row.percent\">Complete: {{ row.percent }}%</div>\r\n <div *ngIf=\"row.state===ProcessState.Completed && row.filename\">Download: <a href=\"javascript:;\" (click)=\"download(row)\">{{ row.filename }}</a></div>\r\n <div *ngIf=\"row.pid\">PID: {{ row.pid }}</div>\r\n <div *ngIf=\"row.state===ProcessState.Running && row.notify\">Notify: {{ row.notify }}</div>\r\n </small>\r\n </ng-template>\r\n </fs-list-column>\r\n\r\n <fs-list-column>\r\n <ng-template fs-list-header>Duration</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{ row.duration | fsDateDuration: {hours: true, minutes: true, seconds: true} }}\r\n </ng-template>\r\n </fs-list-column>\r\n\r\n\r\n <fs-list-column>\r\n <ng-template fs-list-header>Message</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{row.message}}\r\n </ng-template>\r\n </fs-list-column>\r\n\r\n <fs-list-column>\r\n <ng-template fs-list-header>Completed</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n <fs-date-ago [date]=\"row.endDate\"></fs-date-ago>\r\n </ng-template>\r\n </fs-list-column>\r\n</fs-list>\r\n",
1151
1131
  styles: [""]
1152
1132
  }),
1153
- __metadata("design:paramtypes", [SystemService,
1154
- dialog.MatDialog,
1133
+ __metadata("design:paramtypes", [dialog.MatDialog,
1155
1134
  message.FsMessage])
1156
1135
  ], ProcessesComponent);
1157
1136
  return ProcessesComponent;
@@ -1189,9 +1168,8 @@
1189
1168
  }());
1190
1169
 
1191
1170
  var ServerLogsComponent = /** @class */ (function () {
1192
- function ServerLogsComponent(_dialog, _systemService) {
1171
+ function ServerLogsComponent(_dialog) {
1193
1172
  this._dialog = _dialog;
1194
- this._systemService = _systemService;
1195
1173
  this.config = null;
1196
1174
  this.logTypes = [];
1197
1175
  }
@@ -1210,19 +1188,18 @@
1210
1188
  ],
1211
1189
  fetch: function (query) {
1212
1190
  return _this.loadLogs(query)
1213
- .pipe(operators.map(function (response) { return ({ data: _this._systemService.input(response.data), paging: response.paging }); }));
1191
+ .pipe(operators.map(function (response) { return ({ data: response.data, paging: response.paging }); }));
1214
1192
  }
1215
1193
  };
1216
1194
  };
1217
1195
  ServerLogsComponent.prototype.open = function (log) {
1218
- var dialogRef = this._dialog.open(ServerLogComponent, {
1196
+ this._dialog.open(ServerLogComponent, {
1219
1197
  data: { log: log },
1220
1198
  width: '85%'
1221
1199
  });
1222
1200
  };
1223
1201
  ServerLogsComponent.ctorParameters = function () { return [
1224
- { type: dialog.MatDialog },
1225
- { type: SystemService }
1202
+ { type: dialog.MatDialog }
1226
1203
  ]; };
1227
1204
  __decorate([
1228
1205
  core.ViewChild('list', { static: true }),
@@ -1238,15 +1215,13 @@
1238
1215
  template: "<fs-list [config]=\"config\">\r\n <fs-list-column>\r\n <ng-template fs-list-header>Message</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n <a href=\"javascript:;\" (click)=\"open(row)\">{{row.message}}</a>\r\n </ng-template>\r\n </fs-list-column>\r\n <fs-list-column>\r\n <ng-template fs-list-header>Type</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{row.type}}\r\n </ng-template>\r\n </fs-list-column>\r\n <fs-list-column>\r\n <ng-template fs-list-header>Date</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n <fs-date-ago [date]=\"row.createDate\"></fs-date-ago>\r\n </ng-template>\r\n </fs-list-column>\r\n </fs-list>\r\n",
1239
1216
  styles: [""]
1240
1217
  }),
1241
- __metadata("design:paramtypes", [dialog.MatDialog,
1242
- SystemService])
1218
+ __metadata("design:paramtypes", [dialog.MatDialog])
1243
1219
  ], ServerLogsComponent);
1244
1220
  return ServerLogsComponent;
1245
1221
  }());
1246
1222
 
1247
1223
  var UpgradeLogsComponent = /** @class */ (function () {
1248
- function UpgradeLogsComponent(_systemService) {
1249
- this._systemService = _systemService;
1224
+ function UpgradeLogsComponent() {
1250
1225
  this.config = null;
1251
1226
  this.logTypes = [];
1252
1227
  }
@@ -1266,13 +1241,10 @@
1266
1241
  ],
1267
1242
  fetch: function (query) {
1268
1243
  return _this.loadUpgradeLogs(query)
1269
- .pipe(operators.map(function (response) { return ({ data: _this._systemService.input(response.data), paging: response.paging }); }));
1244
+ .pipe(operators.map(function (response) { return ({ data: response.data, paging: response.paging }); }));
1270
1245
  }
1271
1246
  };
1272
1247
  };
1273
- UpgradeLogsComponent.ctorParameters = function () { return [
1274
- { type: SystemService }
1275
- ]; };
1276
1248
  __decorate([
1277
1249
  core.ViewChild(list.FsListComponent, { static: true }),
1278
1250
  __metadata("design:type", list.FsListComponent)
@@ -1286,8 +1258,7 @@
1286
1258
  selector: 'fs-system-upgrade-logs',
1287
1259
  template: "<fs-list [config]=\"config\">\r\n <fs-list-column>\r\n <ng-template fs-list-header>Name</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{row.name}}\r\n </ng-template>\r\n </fs-list-column>\r\n\r\n <fs-list-column>\r\n <ng-template fs-list-header>Function</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{row.function}}()\r\n </ng-template>\r\n </fs-list-column>\r\n\r\n <fs-list-column>\r\n <ng-template fs-list-header>Date</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n <fs-date-ago [date]=\"row.createDate\"></fs-date-ago>\r\n </ng-template>\r\n </fs-list-column>\r\n</fs-list>\r\n",
1288
1260
  styles: [""]
1289
- }),
1290
- __metadata("design:paramtypes", [SystemService])
1261
+ })
1291
1262
  ], UpgradeLogsComponent);
1292
1263
  return UpgradeLogsComponent;
1293
1264
  }());
@@ -1319,9 +1290,8 @@
1319
1290
  }());
1320
1291
 
1321
1292
  var ApiLogsComponent = /** @class */ (function () {
1322
- function ApiLogsComponent(_dialog, _systemService) {
1293
+ function ApiLogsComponent(_dialog) {
1323
1294
  this._dialog = _dialog;
1324
- this._systemService = _systemService;
1325
1295
  this.config = null;
1326
1296
  this.apiLogStates = indexNameValue(ApiLogStates);
1327
1297
  }
@@ -1352,7 +1322,7 @@
1352
1322
  fetch: function (query) {
1353
1323
  Object.assign(query, {});
1354
1324
  return _this.loadApiLogs(query)
1355
- .pipe(operators.map(function (response) { return ({ data: _this._systemService.input(response.data), paging: response.paging }); }));
1325
+ .pipe(operators.map(function (response) { return ({ data: response.data, paging: response.paging }); }));
1356
1326
  }
1357
1327
  };
1358
1328
  };
@@ -1363,8 +1333,7 @@
1363
1333
  });
1364
1334
  };
1365
1335
  ApiLogsComponent.ctorParameters = function () { return [
1366
- { type: dialog.MatDialog },
1367
- { type: SystemService }
1336
+ { type: dialog.MatDialog }
1368
1337
  ]; };
1369
1338
  __decorate([
1370
1339
  core.ViewChild(list.FsListComponent, { static: true }),
@@ -1380,8 +1349,7 @@
1380
1349
  template: "<fs-list [config]=\"config\">\r\n <fs-list-column>\r\n <ng-template fs-list-header>Name</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n <a href=\"javascript:;\" (click)=\"open(row)\">{{row.type || 'Unknown'}}</a>\r\n </ng-template>\r\n </fs-list-column>\r\n <fs-list-column>\r\n <ng-template fs-list-header>Message</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{row.message}}\r\n </ng-template>\r\n </fs-list-column>\r\n <fs-list-column>\r\n <ng-template fs-list-header>Status</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{apiLogStates[row.state]}}\r\n </ng-template>\r\n </fs-list-column>\r\n <fs-list-column>\r\n <ng-template fs-list-header>Date</ng-template>\r\n <ng-template fs-list-cell let-row=\"row\">\r\n <fs-date-ago [date]=\"row.createDate\"></fs-date-ago>\r\n <div><small *ngIf=\"row.length\">Duration: {{ row.length | fsDateDuration }}</small></div>\r\n </ng-template>\r\n </fs-list-column>\r\n </fs-list>\r\n",
1381
1350
  styles: [""]
1382
1351
  }),
1383
- __metadata("design:paramtypes", [dialog.MatDialog,
1384
- SystemService])
1352
+ __metadata("design:paramtypes", [dialog.MatDialog])
1385
1353
  ], ApiLogsComponent);
1386
1354
  return ApiLogsComponent;
1387
1355
  }());
@@ -1491,9 +1459,6 @@
1491
1459
  CronComponent,
1492
1460
  CronLogComponent,
1493
1461
  ],
1494
- providers: [
1495
- SystemService
1496
- ],
1497
1462
  })
1498
1463
  ], FsSystemModule);
1499
1464
  return FsSystemModule;
@@ -1505,22 +1470,20 @@
1505
1470
  exports.FsSystemModule = FsSystemModule;
1506
1471
  exports.ProcessStates = ProcessStates;
1507
1472
  exports.ɵa = DashboardComponent;
1508
- exports.ɵb = SystemService;
1509
- exports.ɵd = CronsComponent;
1510
- exports.ɵe = SystemService;
1511
- exports.ɵf = SettingsComponent;
1512
- exports.ɵg = FileManagerComponent;
1513
- exports.ɵh = ProcessesComponent;
1514
- exports.ɵi = ServerLogsComponent;
1515
- exports.ɵj = UpgradeLogsComponent;
1516
- exports.ɵk = ApiLogsComponent;
1517
- exports.ɵl = InfoComponent;
1518
- exports.ɵm = KeyNameValuePipe;
1519
- exports.ɵn = ServerLogComponent;
1520
- exports.ɵo = ApiLogComponent;
1521
- exports.ɵp = ProcessComponent;
1522
- exports.ɵq = CronComponent;
1523
- exports.ɵr = CronLogComponent;
1473
+ exports.ɵb = CronsComponent;
1474
+ exports.ɵc = SettingsComponent;
1475
+ exports.ɵd = FileManagerComponent;
1476
+ exports.ɵe = ProcessesComponent;
1477
+ exports.ɵf = ServerLogsComponent;
1478
+ exports.ɵg = UpgradeLogsComponent;
1479
+ exports.ɵh = ApiLogsComponent;
1480
+ exports.ɵi = InfoComponent;
1481
+ exports.ɵj = KeyNameValuePipe;
1482
+ exports.ɵk = ServerLogComponent;
1483
+ exports.ɵl = ApiLogComponent;
1484
+ exports.ɵm = ProcessComponent;
1485
+ exports.ɵn = CronComponent;
1486
+ exports.ɵo = CronLogComponent;
1524
1487
 
1525
1488
  Object.defineProperty(exports, '__esModule', { value: true });
1526
1489