@anglr/common 8.0.0-beta.20211025062425 → 8.0.0-beta.20211126112741

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 (83) hide show
  1. package/changelog.md +26 -5
  2. package/date-fns/dist/es2015/forms/src/forms.js +2 -2
  3. package/date-fns/dist/es2015/forms/src/misc/formModel/decorators/controlOptions.decorator.js +17 -0
  4. package/date-fns/dist/es2015/forms/src/misc/formModel/decorators/index.js +2 -1
  5. package/date-fns/dist/es2015/forms/src/misc/formModel/index.js +2 -2
  6. package/date-fns/dist/es2015/forms/src/misc/formModel/interfaces/modelPropertyDecoratorMetadata.js +6 -1
  7. package/date-fns/dist/es2015/forms/src/misc/formModel/misc/utils.js +5 -13
  8. package/date-fns/dist/es5/forms/src/forms.js +2 -2
  9. package/date-fns/dist/es5/forms/src/misc/formModel/decorators/controlOptions.decorator.js +17 -0
  10. package/date-fns/dist/es5/forms/src/misc/formModel/decorators/index.js +2 -1
  11. package/date-fns/dist/es5/forms/src/misc/formModel/index.js +2 -2
  12. package/date-fns/dist/es5/forms/src/misc/formModel/interfaces/modelPropertyDecoratorMetadata.js +6 -1
  13. package/date-fns/dist/es5/forms/src/misc/formModel/misc/utils.js +5 -13
  14. package/forms/dist/es2015/forms/index.js +2 -2
  15. package/forms/dist/es2015/forms/public_api.js +2 -2
  16. package/forms/dist/es2015/forms/src/forms.js +2 -2
  17. package/forms/dist/es2015/forms/src/misc/formModel/decorators/controlOptions.decorator.js +17 -0
  18. package/forms/dist/es2015/forms/src/misc/formModel/decorators/index.js +2 -1
  19. package/forms/dist/es2015/forms/src/misc/formModel/index.js +2 -2
  20. package/forms/dist/es2015/forms/src/misc/formModel/interfaces/modelPropertyDecoratorMetadata.js +6 -1
  21. package/forms/dist/es2015/forms/src/misc/formModel/misc/utils.js +5 -13
  22. package/forms/dist/es5/forms/index.js +2 -2
  23. package/forms/dist/es5/forms/public_api.js +2 -2
  24. package/forms/dist/es5/forms/src/forms.js +2 -2
  25. package/forms/dist/es5/forms/src/misc/formModel/decorators/controlOptions.decorator.js +17 -0
  26. package/forms/dist/es5/forms/src/misc/formModel/decorators/index.js +2 -1
  27. package/forms/dist/es5/forms/src/misc/formModel/index.js +2 -2
  28. package/forms/dist/es5/forms/src/misc/formModel/interfaces/modelPropertyDecoratorMetadata.js +6 -1
  29. package/forms/dist/es5/forms/src/misc/formModel/misc/utils.js +5 -13
  30. package/forms/src/misc/formModel/decorators/controlOptions.decorator.d.ts +7 -0
  31. package/forms/src/misc/formModel/decorators/controlOptions.decorator.d.ts.map +1 -0
  32. package/forms/src/misc/formModel/decorators/index.d.ts +1 -0
  33. package/forms/src/misc/formModel/decorators/index.d.ts.map +1 -1
  34. package/forms/src/misc/formModel/interfaces/modelPropertyDecoratorMetadata.d.ts +9 -1
  35. package/forms/src/misc/formModel/interfaces/modelPropertyDecoratorMetadata.d.ts.map +1 -1
  36. package/forms/src/misc/formModel/misc/utils.d.ts.map +1 -1
  37. package/material/dist/es2015/material/index.js +2 -2
  38. package/material/dist/es2015/material/public_api.js +2 -2
  39. package/material/dist/es2015/material/src/components/confirmationDialog/confirmationDialog.component.js +31 -30
  40. package/material/dist/es2015/material/src/directives/confirmationDialog/confirmationDialog.directive.js +31 -11
  41. package/material/dist/es2015/material/src/material.js +2 -2
  42. package/material/dist/es2015/material/src/misc/interfaces/confirmationDialog.interface.js +44 -7
  43. package/material/dist/es2015/material/src/misc/interfaces/titledDialog.interface.js +1 -1
  44. package/material/dist/es2015/material/src/misc/tokens.js +3 -3
  45. package/material/dist/es5/material/index.js +2 -2
  46. package/material/dist/es5/material/public_api.js +2 -2
  47. package/material/dist/es5/material/src/components/confirmationDialog/confirmationDialog.component.js +30 -29
  48. package/material/dist/es5/material/src/directives/confirmationDialog/confirmationDialog.directive.js +31 -10
  49. package/material/dist/es5/material/src/material.js +2 -2
  50. package/material/dist/es5/material/src/misc/interfaces/confirmationDialog.interface.js +44 -7
  51. package/material/dist/es5/material/src/misc/interfaces/titledDialog.interface.js +1 -1
  52. package/material/dist/es5/material/src/misc/tokens.js +3 -3
  53. package/material/index.metadata.json +1 -1
  54. package/material/src/components/confirmationDialog/confirmationDialog.component.d.ts +8 -4
  55. package/material/src/components/confirmationDialog/confirmationDialog.component.d.ts.map +1 -1
  56. package/material/src/components/confirmationDialog/confirmationDialog.component.html +8 -8
  57. package/material/src/directives/confirmationDialog/confirmationDialog.directive.d.ts +7 -2
  58. package/material/src/directives/confirmationDialog/confirmationDialog.directive.d.ts.map +1 -1
  59. package/material/src/material.d.ts +2 -2
  60. package/material/src/material.d.ts.map +1 -1
  61. package/material/src/misc/interfaces/confirmationDialog.interface.d.ts +32 -3
  62. package/material/src/misc/interfaces/confirmationDialog.interface.d.ts.map +1 -1
  63. package/material/src/misc/tokens.d.ts +3 -3
  64. package/material/src/misc/tokens.d.ts.map +1 -1
  65. package/moment/dist/es2015/forms/src/forms.js +2 -2
  66. package/moment/dist/es2015/forms/src/misc/formModel/decorators/controlOptions.decorator.js +17 -0
  67. package/moment/dist/es2015/forms/src/misc/formModel/decorators/index.js +2 -1
  68. package/moment/dist/es2015/forms/src/misc/formModel/index.js +2 -2
  69. package/moment/dist/es2015/forms/src/misc/formModel/interfaces/modelPropertyDecoratorMetadata.js +6 -1
  70. package/moment/dist/es2015/forms/src/misc/formModel/misc/utils.js +5 -13
  71. package/moment/dist/es5/forms/src/forms.js +2 -2
  72. package/moment/dist/es5/forms/src/misc/formModel/decorators/controlOptions.decorator.js +17 -0
  73. package/moment/dist/es5/forms/src/misc/formModel/decorators/index.js +2 -1
  74. package/moment/dist/es5/forms/src/misc/formModel/index.js +2 -2
  75. package/moment/dist/es5/forms/src/misc/formModel/interfaces/modelPropertyDecoratorMetadata.js +6 -1
  76. package/moment/dist/es5/forms/src/misc/formModel/misc/utils.js +5 -13
  77. package/package.json +1 -1
  78. package/structured-log/dist/es2015/structured-log/src/services/rest/restSink.service.js +14 -6
  79. package/structured-log/dist/es5/structured-log/src/services/rest/restSink.service.js +13 -6
  80. package/structured-log/index.metadata.json +1 -1
  81. package/structured-log/src/services/rest/restSink.service.d.ts +1 -1
  82. package/structured-log/src/services/rest/restSink.service.d.ts.map +1 -1
  83. package/version.bak +1 -1
@@ -86,15 +86,13 @@ function buildFormGroup(model, args) {
86
86
  case FormGroup:
87
87
  {
88
88
  control = buildFormGroup(defaultValue, args);
89
+ //TODO: think of setting metadata from property to model
89
90
  break;
90
91
  }
91
92
  case FormArray:
92
93
  {
93
94
  //TODO - enhance FormArray child definition and finish it
94
- control = new FormArray([], {
95
- validators: validators,
96
- asyncValidators: asyncValidators
97
- });
95
+ control = new FormArray([], __assign({ validators: validators, asyncValidators: asyncValidators }, metadata.controlOptions));
98
96
  if (defaultValue && Array.isArray(defaultValue)) {
99
97
  /** @type {?} */
100
98
  var formArray = (/** @type {?} */ (control));
@@ -113,10 +111,7 @@ function buildFormGroup(model, args) {
113
111
  default:
114
112
  //case FormControl:
115
113
  {
116
- formArray.push(new FormControl(val, {
117
- validators: validators,
118
- asyncValidators: asyncValidators
119
- }));
114
+ formArray.push(new FormControl(val, __assign({ validators: validators, asyncValidators: asyncValidators }, metadata.controlOptions)));
120
115
  break;
121
116
  }
122
117
  }
@@ -127,10 +122,7 @@ function buildFormGroup(model, args) {
127
122
  default:
128
123
  //case FormControl:
129
124
  {
130
- control = new FormControl(defaultValue, {
131
- validators: validators,
132
- asyncValidators: asyncValidators
133
- });
125
+ control = new FormControl(defaultValue, __assign({ validators: validators, asyncValidators: asyncValidators }, metadata.controlOptions));
134
126
  break;
135
127
  }
136
128
  }
@@ -155,4 +147,4 @@ function buildFormGroup(model, args) {
155
147
  export function buildFormModel(model, args) {
156
148
  return buildFormGroup((/** @type {?} */ (model)), args);
157
149
  }
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9mb3Jtcy9zcmMvbWlzYy9mb3JtTW9kZWwvbWlzYy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFrQixTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBSWxGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNwRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsa0JBQWtCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7QUFRakYsU0FBUyxjQUFjLENBQXdDLEtBQXFDLEVBQUUsSUFBWTs7SUFFOUcsSUFBRyxDQUFDLEtBQUssRUFDVDtRQUNJLE9BQU8sSUFBSSxTQUFTLENBQUMsRUFBRSxFQUNGO1lBQ0ksVUFBVSxRQUFFLEtBQUssQ0FBQyxXQUFXLDBDQUFFLEdBQUc7Ozs7WUFBQyxVQUFBLFNBQVMsSUFBSSxPQUFBLFNBQVMsWUFBWSxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQS9FLENBQStFLEdBQUUsTUFBTTs7OztZQUFDLFVBQUEsR0FBRyxJQUFJLE9BQUEsQ0FBQyxDQUFDLEdBQUcsRUFBTCxDQUFLLEVBQUM7WUFDckosZUFBZSxRQUFFLEtBQUssQ0FBQyxnQkFBZ0IsMENBQUUsR0FBRzs7OztZQUFDLFVBQUEsU0FBUyxJQUFJLE9BQUEsU0FBUyxZQUFZLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBcEYsQ0FBb0YsR0FBRSxNQUFNOzs7O1lBQUMsVUFBQSxHQUFHLElBQUksT0FBQSxDQUFDLENBQUMsR0FBRyxFQUFMLENB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LE9BQU8sRUFBRSxDQUFDO1NBQ3JCO1FBRUQsU0FBUyxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7O0lBakZoRCxLQUEwQixVQUFVLEVBQVYseUJBQVUsRUFBVix3QkFBVSxFQUFWLElBQVU7UUFBaEMsSUFBTSxZQUFZLG1CQUFBO2dCQUFaLFlBQVk7S0FrRnJCO0lBRUQsT0FBTyxTQUFTLENBQUM7QUFDckIsQ0FBQzs7Ozs7Ozs7QUFRRCxNQUFNLFVBQVUsY0FBYyxDQUF3QyxLQUFhLEVBQUUsSUFBWTtJQUU3RixPQUFPLGNBQWMsQ0FBQyxtQkFBQSxLQUFLLEVBQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztBQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIEZvcm1BcnJheSwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge01vZGVsRGVjb3JhdG9yTWV0YWRhdGF9IGZyb20gJy4uL2ludGVyZmFjZXMvbW9kZWxEZWNvcmF0b3JNZXRhZGF0YSc7XG5pbXBvcnQge01vZGVsUHJvcGVydHlEZWNvcmF0b3JNZXRhZGF0YX0gZnJvbSAnLi4vaW50ZXJmYWNlcy9tb2RlbFByb3BlcnR5RGVjb3JhdG9yTWV0YWRhdGEnO1xuaW1wb3J0IHvJtURlZmF1bHRQcm9wZXJ0eU1ldGFkYXRhfSBmcm9tICcuL2RlZmF1bHRzJztcbmltcG9ydCB7QXN5bmNWYWxpZGF0b3JGbkZhY3RvcnksIFZhbGlkYXRvckZuRmFjdG9yeX0gZnJvbSAnLi92YWxpZGF0b3JGYWN0b3JpZXMnO1xuXG4vKipcbiAqIEJ1aWxkcyBmb3JtIGdyb3VwIGZyb20gZGVjb3JhdGVkIG1vZGVsXG4gKiBAcGFyYW0gbW9kZWwgLSBNb2RlbCB0aGF0IGNhbiBiZSBkZWNvcmF0ZWQgZm9yIGVuaGFuY2luZyBjcmVhdGVkIGZvcm0gZ3JvdXAgd2l0aCB2YWxpZGF0aW9uIGFuZCBzbyBvblxuICogQHBhcmFtIGFyZ3MgLSBPYmplY3Qgc3RvcmluZyBhcmd1bWVudHMgZnJvbSBvd25pbmcgY29tcG9uZW50IGZvciBjdXN0b21pemF0aW9uXG4gKiBAcmV0dXJuc1xuICovXG5mdW5jdGlvbiBidWlsZEZvcm1Hcm91cDxUTW9kZWwsIFRBcmdzID0gUmVjb3JkPHN0cmluZywgbmV2ZXI+Pihtb2RlbDogTW9kZWxEZWNvcmF0b3JNZXRhZGF0YTxUTW9kZWw+LCBhcmdzPzogVEFyZ3MpOiBGb3JtR3JvdXBcbntcbiAgICBpZighbW9kZWwpXG4gICAge1xuICAgICAgICByZXR1cm4gbmV3IEZvcm1Hcm91cCh7fSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdG9yczogbW9kZWwuybVWYWxpZGF0b3JzPy5tYXAodmFsaWRhdG9yID0+IHZhbGlkYXRvciBpbnN0YW5jZW9mIFZhbGlkYXRvckZuRmFjdG9yeSA/IHZhbGlkYXRvci52YWx1ZU9mKCkoYXJncykgOiB2YWxpZGF0b3IpLmZpbHRlcihpdG0gPT4gISFpdG0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN5bmNWYWxpZGF0b3JzOiBtb2RlbC7JtUFzeW5jVmFsaWRhdG9ycz8ubWFwKHZhbGlkYXRvciA9PiB2YWxpZGF0b3IgaW5zdGFuY2VvZiBBc3luY1ZhbGlkYXRvckZuRmFjdG9yeSA/IHZhbGlkYXRvci52YWx1ZU9mKCkoYXJncykgOiB2YWxpZGF0b3IpLmZpbHRlcihpdG0gPT4gISFpdG0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IG1vZGVsTWV0YWRhdGEgPSBtb2RlbC7JtUNvbnRyb2xzTWV0YWRhdGEgPz8ge307XG4gICAgY29uc3QgcHJvcGVydGllcyA9IE9iamVjdC5rZXlzKG1vZGVsKTtcbiAgICBjb25zdCBmb3JtR3JvdXA6IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xuXG4gICAgZm9yKGNvbnN0IHByb3BlcnR5TmFtZSBvZiBwcm9wZXJ0aWVzKVxuICAgIHtcbiAgICAgICAgY29uc3QgbWV0YWRhdGE6IE1vZGVsUHJvcGVydHlEZWNvcmF0b3JNZXRhZGF0YSA9IG1vZGVsTWV0YWRhdGFbcHJvcGVydHlOYW1lXSA/PyDJtURlZmF1bHRQcm9wZXJ0eU1ldGFkYXRhO1xuXG4gICAgICAgIC8vIGdldHMgZGVmYXVsdCB2YWx1ZSBmcm9tIGRlY29yYXRvciBvbmx5IGlmIGN1cnJlbnQgdmFsdWUgaXMgdW5kZWZpbmVkXG4gICAgICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9IG1vZGVsW3Byb3BlcnR5TmFtZV07XG4gICAgICAgIGNvbnN0IHZhbGlkYXRvcnMgPSBtZXRhZGF0YS52YWxpZGF0b3JzLm1hcCh2YWxpZGF0b3IgPT4gdmFsaWRhdG9yIGluc3RhbmNlb2YgVmFsaWRhdG9yRm5GYWN0b3J5ID8gdmFsaWRhdG9yLnZhbHVlT2YoKSh7Li4ubWV0YWRhdGEuYXJncywgLi4uYXJnc30pIDogdmFsaWRhdG9yKS5maWx0ZXIoaXRtID0+ICEhaXRtKTtcbiAgICAgICAgY29uc3QgYXN5bmNWYWxpZGF0b3JzID0gbWV0YWRhdGEuYXN5bmNWYWxpZGF0b3JzLm1hcCh2YWxpZGF0b3IgPT4gdmFsaWRhdG9yIGluc3RhbmNlb2YgQXN5bmNWYWxpZGF0b3JGbkZhY3RvcnkgPyB2YWxpZGF0b3IudmFsdWVPZigpKHsuLi5tZXRhZGF0YS5hcmdzLCAuLi5hcmdzfSkgOiB2YWxpZGF0b3IpLmZpbHRlcihpdG0gPT4gISFpdG0pO1xuXG4gICAgICAgIGxldCBjb250cm9sOiBBYnN0cmFjdENvbnRyb2w7XG5cbiAgICAgICAgc3dpdGNoKG1ldGFkYXRhLnR5cGUpXG4gICAgICAgIHtcbiAgICAgICAgICAgIGNhc2UgRm9ybUdyb3VwOlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbnRyb2wgPSBidWlsZEZvcm1Hcm91cChkZWZhdWx0VmFsdWUsIGFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIEZvcm1BcnJheTpcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAvL1RPRE8gLSBlbmhhbmNlIEZvcm1BcnJheSBjaGlsZCBkZWZpbml0aW9uIGFuZCBmaW5pc2ggaXRcbiAgICAgICAgICAgICAgICBjb250cm9sID0gbmV3IEZvcm1BcnJheShbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRvcnM6IHZhbGlkYXRvcnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzeW5jVmFsaWRhdG9yczogYXN5bmNWYWxpZGF0b3JzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBpZihkZWZhdWx0VmFsdWUgJiYgQXJyYXkuaXNBcnJheShkZWZhdWx0VmFsdWUpKVxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZm9ybUFycmF5ID0gY29udHJvbCBhcyBGb3JtQXJyYXk7XG5cbiAgICAgICAgICAgICAgICAgICAgZm9yKGNvbnN0IHZhbCBvZiBkZWZhdWx0VmFsdWUpXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaChtZXRhZGF0YS5jaGlsZFR5cGUpXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBGb3JtR3JvdXA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQXJyYXkucHVzaChidWlsZEZvcm1Hcm91cCh2YWwsIGFyZ3MpKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBGb3JtQXJyYXk6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2Nhc2UgRm9ybUNvbnRyb2w6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQXJyYXkucHVzaChuZXcgRm9ybUNvbnRyb2wodmFsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRvcnM6IHZhbGlkYXRvcnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN5bmNWYWxpZGF0b3JzOiBhc3luY1ZhbGlkYXRvcnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAvL2Nhc2UgRm9ybUNvbnRyb2w6XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29udHJvbCA9IG5ldyBGb3JtQ29udHJvbChkZWZhdWx0VmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdG9yczogdmFsaWRhdG9ycyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3luY1ZhbGlkYXRvcnM6IGFzeW5jVmFsaWRhdG9yc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmKG1ldGFkYXRhLmRpc2FibGVkKVxuICAgICAgICB7XG4gICAgICAgICAgICBjb250cm9sLmRpc2FibGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvcm1Hcm91cC5hZGRDb250cm9sKHByb3BlcnR5TmFtZSwgY29udHJvbCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1Hcm91cDtcbn1cblxuLyoqXG4gKiBCdWlsZHMgZm9ybSBmcm9tIGRlY29yYXRlZCBtb2RlbFxuICogQHBhcmFtIG1vZGVsIC0gTW9kZWwgdGhhdCBjYW4gYmUgZGVjb3JhdGVkIGZvciBlbmhhbmNpbmcgY3JlYXRlZCBmb3JtIGdyb3VwIHdpdGggdmFsaWRhdGlvbiBhbmQgc28gb25cbiAqIEBwYXJhbSBhcmdzIC0gT2JqZWN0IHN0b3JpbmcgYXJndW1lbnRzIGZyb20gb3duaW5nIGNvbXBvbmVudCBmb3IgY3VzdG9taXphdGlvblxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkRm9ybU1vZGVsPFRNb2RlbCwgVEFyZ3MgPSBSZWNvcmQ8c3RyaW5nLCBuZXZlcj4+KG1vZGVsOiBUTW9kZWwsIGFyZ3M/OiBUQXJncyk6IEZvcm1Hcm91cFxue1xuICAgIHJldHVybiBidWlsZEZvcm1Hcm91cChtb2RlbCBhcyBhbnksIGFyZ3MpO1xufVxuIl19
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9mb3Jtcy9zcmMvbWlzYy9mb3JtTW9kZWwvbWlzYy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFrQixTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBSWxGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNwRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsa0JBQWtCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7QUFRakYsU0FBUyxjQUFjLENBQXdDLEtBQXFDLEVBQUUsSUFBWTs7SUFFOUcsSUFBRyxDQUFDLEtBQUssRUFDVDtRQUNJLE9BQU8sSUFBSSxTQUFTLENBQUMsRUFBRSxFQUNGO1lBQ0ksVUFBVSxRQUFFLEtBQUssQ0FBQyxXQUFXLDBDQUFFLEdBQUc7Ozs7WUFBQyxVQUFBLFNBQVMsSUFBSSxPQUFBLFNBQVMsWUFBWSxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQS9FLENBQStFLEdBQUUsTUFBTTs7OztZQUFDLFVBQUEsR0FBRyxJQUFJLE9BQUEsQ0FBQyxDQUFDLEdBQUcsRUFBTCxDQUFLLEVBQUM7WUFDckosZUFBZSxRQUFFLEtBQUssQ0FBQyxnQkFBZ0IsMENBQUUsR0FBRzs7OztZQUFDLFVBQUEsU0FBUyxJQUFJLE9BQUEsU0FBUyxZQUFZLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBcEYsQ0FBb0YsR0FBRSxNQUFNOzs7O1lBQUMsVUFBQSxHQUFHLElBQUksT0FBQSxDQUFDLENBQUMsR0FBRyxFQUFMLENB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QUcsUUFBUSxDQUFDLFFBQVEsRUFDcEI7WUFDSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDckI7UUFFRCxTQUFTLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQzs7SUF0RmhELEtBQTBCLFVBQVUsRUFBVix5QkFBVSxFQUFWLHdCQUFVLEVBQVYsSUFBVTtRQUFoQyxJQUFNLFlBQVksbUJBQUE7Z0JBQVosWUFBWTtLQXVGckI7SUFFRCxPQUFPLFNBQVMsQ0FBQztBQUNyQixDQUFDOzs7Ozs7OztBQVFELE1BQU0sVUFBVSxjQUFjLENBQXdDLEtBQWEsRUFBRSxJQUFZO0lBRTdGLE9BQU8sY0FBYyxDQUFDLG1CQUFBLEtBQUssRUFBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgRm9ybUFycmF5LCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7TW9kZWxEZWNvcmF0b3JNZXRhZGF0YX0gZnJvbSAnLi4vaW50ZXJmYWNlcy9tb2RlbERlY29yYXRvck1ldGFkYXRhJztcbmltcG9ydCB7TW9kZWxQcm9wZXJ0eURlY29yYXRvck1ldGFkYXRhfSBmcm9tICcuLi9pbnRlcmZhY2VzL21vZGVsUHJvcGVydHlEZWNvcmF0b3JNZXRhZGF0YSc7XG5pbXBvcnQge8m1RGVmYXVsdFByb3BlcnR5TWV0YWRhdGF9IGZyb20gJy4vZGVmYXVsdHMnO1xuaW1wb3J0IHtBc3luY1ZhbGlkYXRvckZuRmFjdG9yeSwgVmFsaWRhdG9yRm5GYWN0b3J5fSBmcm9tICcuL3ZhbGlkYXRvckZhY3Rvcmllcyc7XG5cbi8qKlxuICogQnVpbGRzIGZvcm0gZ3JvdXAgZnJvbSBkZWNvcmF0ZWQgbW9kZWxcbiAqIEBwYXJhbSBtb2RlbCAtIE1vZGVsIHRoYXQgY2FuIGJlIGRlY29yYXRlZCBmb3IgZW5oYW5jaW5nIGNyZWF0ZWQgZm9ybSBncm91cCB3aXRoIHZhbGlkYXRpb24gYW5kIHNvIG9uXG4gKiBAcGFyYW0gYXJncyAtIE9iamVjdCBzdG9yaW5nIGFyZ3VtZW50cyBmcm9tIG93bmluZyBjb21wb25lbnQgZm9yIGN1c3RvbWl6YXRpb25cbiAqIEByZXR1cm5zXG4gKi9cbmZ1bmN0aW9uIGJ1aWxkRm9ybUdyb3VwPFRNb2RlbCwgVEFyZ3MgPSBSZWNvcmQ8c3RyaW5nLCBuZXZlcj4+KG1vZGVsOiBNb2RlbERlY29yYXRvck1ldGFkYXRhPFRNb2RlbD4sIGFyZ3M/OiBUQXJncyk6IEZvcm1Hcm91cFxue1xuICAgIGlmKCFtb2RlbClcbiAgICB7XG4gICAgICAgIHJldHVybiBuZXcgRm9ybUdyb3VwKHt9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZGF0b3JzOiBtb2RlbC7JtVZhbGlkYXRvcnM/Lm1hcCh2YWxpZGF0b3IgPT4gdmFsaWRhdG9yIGluc3RhbmNlb2YgVmFsaWRhdG9yRm5GYWN0b3J5ID8gdmFsaWRhdG9yLnZhbHVlT2YoKShhcmdzKSA6IHZhbGlkYXRvcikuZmlsdGVyKGl0bSA9PiAhIWl0bSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3luY1ZhbGlkYXRvcnM6IG1vZGVsLsm1QXN5bmNWYWxpZGF0b3JzPy5tYXAodmFsaWRhdG9yID0+IHZhbGlkYXRvciBpbnN0YW5jZW9mIEFzeW5jVmFsaWRhdG9yRm5GYWN0b3J5ID8gdmFsaWRhdG9yLnZhbHVlT2YoKShhcmdzKSA6IHZhbGlkYXRvcikuZmlsdGVyKGl0bSA9PiAhIWl0bSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgbW9kZWxNZXRhZGF0YSA9IG1vZGVsLsm1Q29udHJvbHNNZXRhZGF0YSA/PyB7fTtcbiAgICBjb25zdCBwcm9wZXJ0aWVzID0gT2JqZWN0LmtleXMobW9kZWwpO1xuICAgIGNvbnN0IGZvcm1Hcm91cDogRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7fSk7XG5cbiAgICBmb3IoY29uc3QgcHJvcGVydHlOYW1lIG9mIHByb3BlcnRpZXMpXG4gICAge1xuICAgICAgICBjb25zdCBtZXRhZGF0YTogTW9kZWxQcm9wZXJ0eURlY29yYXRvck1ldGFkYXRhID0gbW9kZWxNZXRhZGF0YVtwcm9wZXJ0eU5hbWVdID8/IMm1RGVmYXVsdFByb3BlcnR5TWV0YWRhdGE7XG5cbiAgICAgICAgLy8gZ2V0cyBkZWZhdWx0IHZhbHVlIGZyb20gZGVjb3JhdG9yIG9ubHkgaWYgY3VycmVudCB2YWx1ZSBpcyB1bmRlZmluZWRcbiAgICAgICAgY29uc3QgZGVmYXVsdFZhbHVlID0gbW9kZWxbcHJvcGVydHlOYW1lXTtcbiAgICAgICAgY29uc3QgdmFsaWRhdG9ycyA9IG1ldGFkYXRhLnZhbGlkYXRvcnMubWFwKHZhbGlkYXRvciA9PiB2YWxpZGF0b3IgaW5zdGFuY2VvZiBWYWxpZGF0b3JGbkZhY3RvcnkgPyB2YWxpZGF0b3IudmFsdWVPZigpKHsuLi5tZXRhZGF0YS5hcmdzLCAuLi5hcmdzfSkgOiB2YWxpZGF0b3IpLmZpbHRlcihpdG0gPT4gISFpdG0pO1xuICAgICAgICBjb25zdCBhc3luY1ZhbGlkYXRvcnMgPSBtZXRhZGF0YS5hc3luY1ZhbGlkYXRvcnMubWFwKHZhbGlkYXRvciA9PiB2YWxpZGF0b3IgaW5zdGFuY2VvZiBBc3luY1ZhbGlkYXRvckZuRmFjdG9yeSA/IHZhbGlkYXRvci52YWx1ZU9mKCkoey4uLm1ldGFkYXRhLmFyZ3MsIC4uLmFyZ3N9KSA6IHZhbGlkYXRvcikuZmlsdGVyKGl0bSA9PiAhIWl0bSk7XG5cbiAgICAgICAgbGV0IGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcblxuICAgICAgICBzd2l0Y2gobWV0YWRhdGEudHlwZSlcbiAgICAgICAge1xuICAgICAgICAgICAgY2FzZSBGb3JtR3JvdXA6XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29udHJvbCA9IGJ1aWxkRm9ybUdyb3VwKGRlZmF1bHRWYWx1ZSwgYXJncyk7XG5cbiAgICAgICAgICAgICAgICAvL1RPRE86IHRoaW5rIG9mIHNldHRpbmcgbWV0YWRhdGEgZnJvbSBwcm9wZXJ0eSB0byBtb2RlbFxuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIEZvcm1BcnJheTpcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAvL1RPRE8gLSBlbmhhbmNlIEZvcm1BcnJheSBjaGlsZCBkZWZpbml0aW9uIGFuZCBmaW5pc2ggaXRcbiAgICAgICAgICAgICAgICBjb250cm9sID0gbmV3IEZvcm1BcnJheShbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRvcnM6IHZhbGlkYXRvcnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzeW5jVmFsaWRhdG9yczogYXN5bmNWYWxpZGF0b3JzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5tZXRhZGF0YS5jb250cm9sT3B0aW9uc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgaWYoZGVmYXVsdFZhbHVlICYmIEFycmF5LmlzQXJyYXkoZGVmYXVsdFZhbHVlKSlcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1BcnJheSA9IGNvbnRyb2wgYXMgRm9ybUFycmF5O1xuXG4gICAgICAgICAgICAgICAgICAgIGZvcihjb25zdCB2YWwgb2YgZGVmYXVsdFZhbHVlKVxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2gobWV0YWRhdGEuY2hpbGRUeXBlKVxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgRm9ybUdyb3VwOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUFycmF5LnB1c2goYnVpbGRGb3JtR3JvdXAodmFsLCBhcmdzKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgRm9ybUFycmF5OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9jYXNlIEZvcm1Db250cm9sOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUFycmF5LnB1c2gobmV3IEZvcm1Db250cm9sKHZhbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZGF0b3JzOiB2YWxpZGF0b3JzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzeW5jVmFsaWRhdG9yczogYXN5bmNWYWxpZGF0b3JzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLm1ldGFkYXRhLmNvbnRyb2xPcHRpb25zXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgLy9jYXNlIEZvcm1Db250cm9sOlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woZGVmYXVsdFZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRvcnM6IHZhbGlkYXRvcnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN5bmNWYWxpZGF0b3JzOiBhc3luY1ZhbGlkYXRvcnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ubWV0YWRhdGEuY29udHJvbE9wdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZihtZXRhZGF0YS5kaXNhYmxlZClcbiAgICAgICAge1xuICAgICAgICAgICAgY29udHJvbC5kaXNhYmxlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBmb3JtR3JvdXAuYWRkQ29udHJvbChwcm9wZXJ0eU5hbWUsIGNvbnRyb2wpO1xuICAgIH1cblxuICAgIHJldHVybiBmb3JtR3JvdXA7XG59XG5cbi8qKlxuICogQnVpbGRzIGZvcm0gZnJvbSBkZWNvcmF0ZWQgbW9kZWxcbiAqIEBwYXJhbSBtb2RlbCAtIE1vZGVsIHRoYXQgY2FuIGJlIGRlY29yYXRlZCBmb3IgZW5oYW5jaW5nIGNyZWF0ZWQgZm9ybSBncm91cCB3aXRoIHZhbGlkYXRpb24gYW5kIHNvIG9uXG4gKiBAcGFyYW0gYXJncyAtIE9iamVjdCBzdG9yaW5nIGFyZ3VtZW50cyBmcm9tIG93bmluZyBjb21wb25lbnQgZm9yIGN1c3RvbWl6YXRpb25cbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZEZvcm1Nb2RlbDxUTW9kZWwsIFRBcmdzID0gUmVjb3JkPHN0cmluZywgbmV2ZXI+Pihtb2RlbDogVE1vZGVsLCBhcmdzPzogVEFyZ3MpOiBGb3JtR3JvdXBcbntcbiAgICByZXR1cm4gYnVpbGRGb3JtR3JvdXAobW9kZWwgYXMgYW55LCBhcmdzKTtcbn1cbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anglr/common",
3
- "version": "8.0.0-beta.20211025062425",
3
+ "version": "8.0.0-beta.20211126112741",
4
4
  "description": "Angular module for common angular stuff",
5
5
  "module": "./dist/es5/common.js",
6
6
  "esm2015": "./dist/es2015/common.js",
@@ -4,8 +4,9 @@
4
4
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
5
  */
6
6
  import { Injectable, Inject } from "@angular/core";
7
- import { LogEventLevel } from "structured-log";
7
+ import { APP_STABLE } from '@anglr/common';
8
8
  import { isPresent } from '@jscrpt/common';
9
+ import { LogEventLevel } from "structured-log";
9
10
  import { toText, isEnabled } from "../../misc/utils";
10
11
  import { RestSinkConfigService } from './restSinkConfig.service';
11
12
  import { LOGGER_REST_CLIENT } from '../../types/tokens';
@@ -16,9 +17,10 @@ export class RestSinkService {
16
17
  //######################### constructor #########################
17
18
  /**
18
19
  * @param {?} _configSvc
20
+ * @param {?} isStable
19
21
  * @param {?} _restClient
20
22
  */
21
- constructor(_configSvc, _restClient) {
23
+ constructor(_configSvc, isStable, _restClient) {
22
24
  this._configSvc = _configSvc;
23
25
  this._restClient = _restClient;
24
26
  //######################### private fields #########################
@@ -30,12 +32,17 @@ export class RestSinkService {
30
32
  * Array of unflushed logs
31
33
  */
32
34
  this._logs = [];
33
- this._timer = (/** @type {?} */ (setInterval((/**
35
+ isStable.then((/**
34
36
  * @return {?}
35
37
  */
36
38
  () => {
37
- this.flush();
38
- }), this._configSvc.secondsToFlushAfter * 1000)));
39
+ this._timer = (/** @type {?} */ (setInterval((/**
40
+ * @return {?}
41
+ */
42
+ () => {
43
+ this.flush();
44
+ }), this._configSvc.secondsToFlushAfter * 1000)));
45
+ }));
39
46
  }
40
47
  //######################### public methods - implementation of OnDestroy #########################
41
48
  /**
@@ -133,6 +140,7 @@ RestSinkService.decorators = [
133
140
  /** @nocollapse */
134
141
  RestSinkService.ctorParameters = () => [
135
142
  { type: RestSinkConfigService },
143
+ { type: Promise, decorators: [{ type: Inject, args: [APP_STABLE,] }] },
136
144
  { type: undefined, decorators: [{ type: Inject, args: [LOGGER_REST_CLIENT,] }] }
137
145
  ];
138
146
  if (false) {
@@ -165,4 +173,4 @@ if (false) {
165
173
  */
166
174
  RestSinkService.prototype._restClient;
167
175
  }
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdFNpbmsuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXN0L3Jlc3RTaW5rLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQWlCLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzdELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxPQUFPLEVBQUMsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG9CQUFvQixDQUFDOzs7O0FBT3RELE1BQU0sT0FBTyxlQUFlOzs7Ozs7SUFvQnhCLFlBQW9CLFVBQWlDLEVBQ0wsV0FBNkI7UUFEekQsZUFBVSxHQUFWLFVBQVUsQ0FBdUI7UUFDTCxnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7Ozs7O1FBZHJFLHNCQUFpQixHQUFZLEtBQUssQ0FBQzs7OztRQUtuQyxVQUFLLEdBQWMsRUFBRSxDQUFDO1FBVzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsbUJBQUEsV0FBVzs7O1FBQUMsR0FBRyxFQUFFO1lBRTNCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNqQixDQUFDLEdBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsRUFBTyxDQUFDO0lBQzFELENBQUM7Ozs7OztJQU9NLFdBQVc7UUFFZCxJQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ3pCO1lBQ0ksYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUM5QjtRQUVELElBQUksQ0FBQyxLQUFL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dH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7U2luaywgTG9nRXZlbnQsIExvZ0V2ZW50TGV2ZWx9IGZyb20gXCJzdHJ1Y3R1cmVkLWxvZ1wiO1xuaW1wb3J0IHtpc1ByZXNlbnR9IGZyb20gJ0Bqc2NycHQvY29tbW9uJztcblxuaW1wb3J0IHt0b1RleHQsIGlzRW5hYmxlZH0gZnJvbSBcIi4uLy4uL21pc2MvdXRpbHNcIjtcbmltcG9ydCB7UmVzdFNpbmtDb25maWdTZXJ2aWNlfSBmcm9tICcuL3Jlc3RTaW5rQ29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHtMT0dHRVJfUkVTVF9DTElFTlR9IGZyb20gJy4uLy4uL3R5cGVzL3Rva2Vucyc7XG5pbXBvcnQge0xvZ2dlclJlc3RDbGllbnQsIFJlc3RMb2d9IGZyb20gJy4uLy4uL3R5cGVzL2xvZ2dlci5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIFNpbmsgdGhhdCBpcyB1c2VkIGZvciBzdG9yaW5nIGxvZ3MgdXNpbmcgUkVTVFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUmVzdFNpbmtTZXJ2aWNlIGltcGxlbWVudHMgU2lua1xue1xuICAgIC8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBwcml2YXRlIGZpZWxkcyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0aW9uIHRoYXQgcHJvdG90eXBlIG9mIE1lc3NhZ2VUZW1wbGF0ZSB3YXMgdXBkYXRlZFxuICAgICAqL1xuICAgIHByaXZhdGUgX3Byb3RvdHlwZVVwZGF0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEFycmF5IG9mIHVuZmx1c2hlZCBsb2dzXG4gICAgICovXG4gICAgcHJpdmF0ZSBfbG9nczogUmVzdExvZ1tdID0gW107XG5cbiAgICAvKipcbiAgICAgKiBJbnRlcnZhbCB0aW1lciBpZFxuICAgICAqL1xuICAgIHByaXZhdGUgX3RpbWVyOiBudW1iZXI7XG5cbiAgICAvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgY29uc3RydWN0b3IgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NvbmZpZ1N2YzogUmVzdFNpbmtDb25maWdTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEBJbmplY3QoTE9HR0VSX1JFU1RfQ0xJRU5UKSBwcml2YXRlIF9yZXN0Q2xpZW50OiBMb2dnZXJSZXN0Q2xpZW50KVxuICAgIHtcbiAgICAgICAgdGhpcy5fdGltZXIgPSBzZXRJbnRlcnZhbCgoKSA9PlxuICAgICAgICB7XG4gICAgICAgICAgICB0aGlzLmZsdXNoKCk7XG4gICAgICAgIH0sIHRoaXMuX2NvbmZpZ1N2Yy5zZWNvbmRzVG9GbHVzaEFmdGVyICogMTAwMCkgYXMgYW55O1xuICAgIH1cblxuICAgIC8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBwdWJsaWMgbWV0aG9kcyAtIGltcGxlbWVudGF0aW9uIG9mIE9uRGVzdHJveSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gICAgXG4gICAgLyoqXG4gICAgICogQ2FsbGVkIHdoZW4gY29tcG9uZW50IGlzIGRlc3Ryb3llZFxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpXG4gICAge1xuICAgICAgICBpZihpc1ByZXNlbnQodGhpcy5fdGltZXIpKVxuICAgICAgICB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuX3RpbWVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZmx1c2goKTtcbiAgICB9XG5cbiAgICAvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgcHVibGljIG1ldGhvZHMgLSBpbXBsZW1lbnRhdGlvbiBvZiBTaW5rICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcblxuICAgIC8qKlxuICAgICAqIEVtaXRzIGV2ZW50cyBpbnRvIGxvZ1xuICAgICAqIEBwYXJhbSBldmVudHMgLSBFdmVudHMgdG8gYmUgZW1pdHRlZFxuICAgICAqL1xuICAgIHB1YmxpYyBlbWl0KGV2ZW50czogTG9nRXZlbnRbXSlcbiAgICB7XG4gICAgICAgIGlmKCFldmVudHMgfHwgIWV2ZW50cy5sZW5ndGgpXG4gICAgICAgIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBmb3JjZUZsdXNoID0gZmFsc2U7XG5cbiAgICAgICAgZXZlbnRzLmZvckVhY2goZSA9PlxuICAgICAgICB7XG4gICAgICAgICAgICBpZighdGhpcy5fcHJvdG90eXBlVXBkYXRlZClcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVQcm90b3R5cGUoZSk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLl9wcm90b3R5cGVVcGRhdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFpc0VuYWJsZWQodGhpcy5fY29uZmlnU3ZjLnJlc3RyaWN0VG9MZXZlbCwgZS5sZXZlbCkpXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgbG9nTGV2ZWwgPSBMb2dFdmVudExldmVsW2UubGV2ZWxdLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICBsZXQgdGltZXN0YW1wID0gZS50aW1lc3RhbXA7XG4gICAgICAgICAgICBsZXQgbWVzc2FnZSA9IGUubWVzc2FnZVRlbXBsYXRlLnJlbmRlcihlLnByb3BlcnRpZXMpO1xuXG4gICAgICAgICAgICB0aGlzLl9sb2dzLnB1c2goXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbG9nTGV2ZWwsXG4gICAgICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgICAgICB0aW1lc3RhbXBcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBpZiAoaXNFbmFibGVkKHRoaXMuX2NvbmZpZ1N2Yy5pbW1lZGlhdGVGbHVzaE1pbkxldmVsLCBlLmxldmVsKSlcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBmb3JjZUZsdXNoID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy9mbHVzaCBpZiBudW1iZXIgb2YgcmVjb3JkcyBpcyBiaWdnZXIgdGhhbiBtYXggb3IgZmx1c2ggaXMgcmVxdWlyZWRcbiAgICAgICAgaWYoZm9yY2VGbHVzaCB8fCB0aGlzLl9sb2dzLmxlbmd0aCA+PSB0aGlzLl9jb25maWdTdmMuZmx1c2hBZnRlck51bWJlck9mTG9ncylcbiAgICAgICAge1xuICAgICAgICAgICAgdGhpcy5mbHVzaCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmx1c2hlcyBsb2dzXG4gICAgICovXG4gICAgcHVibGljIGZsdXNoKCk6IFByb21pc2U8dm9pZD5cbiAgICB7XG4gICAgICAgIGxldCBwcm9taXNlOiBQcm9taXNlPHZvaWQ+O1xuXG4gICAgICAgIC8vbm8gbG9ncyBhdmFpbGFibGVcbiAgICAgICAgaWYoIXRoaXMuX2xvZ3MubGVuZ3RoKVxuICAgICAgICB7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5XG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb21pc2UgPSB0aGlzLl9yZXN0Q2xpZW50LmxvZyh0aGlzLl9sb2dzKS50b1Byb21pc2UoKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaChlKVxuICAgICAgICB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2xvZ3MgPSBbXTtcblxuICAgICAgICByZXR1cm4gcHJvbWlzZSA/PyBQcm9taXNlLnJlc29sdmUobnVsbCk7XG4gICAgfVxuXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHByaXZhdGUgbWV0aG9kcyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG5cbiAgICAvKipcbiAgICAgKiBVcGRhdGVzIHByb3RvdHlwZSBvZiBNZXNzYWdlVGVtcGxhdGVcbiAgICAgKi9cbiAgICBwcml2YXRlIF91cGRhdGVQcm90b3R5cGUoZTogTG9nRXZlbnQpXG4gICAge1xuICAgICAgICBsZXQgbWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UgPSAoPGFueT5lLm1lc3NhZ2VUZW1wbGF0ZSk7XG5cbiAgICAgICAgaWYobWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UuY29uc3RydWN0b3IgJiYgbWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UuY29uc3RydWN0b3IucHJvdG90eXBlICYmIG1lc3NhZ2VUZW1wbGF0ZUluc3RhbmNlLmNvbnN0cnVjdG9yLnByb3RvdHlwZS50b1RleHQpXG4gICAgICAgIHtcbiAgICAgICAgICAgIG1lc3NhZ2VUZW1wbGF0ZUluc3RhbmNlLmNvbnN0cnVjdG9yLnByb3RvdHlwZS50b1RleHQgPSB0b1RleHQ7XG4gICAgICAgIH1cbiAgICB9XG59Il19
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdFNpbmsuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXN0L3Jlc3RTaW5rLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQWlCLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTdELE9BQU8sRUFBQyxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7Ozs7QUFPdEQsTUFBTSxPQUFPLGVBQWU7Ozs7Ozs7SUFvQnhCLFlBQW9CLFVBQWlDLEVBQ3JCLFFBQXVCLEVBQ1AsV0FBNkI7UUFGekQsZUFBVSxHQUFWLFVBQVUsQ0FBdUI7UUFFTCxnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7Ozs7O1FBZnJFLHNCQUFpQixHQUFZLEtBQUssQ0FBQzs7OztRQUtuQyxVQUFLLEdBQWMsRUFBRSxDQUFDO1FBWTFCLFFBQVEsQ0FBQyxJQUFJOzs7UUFBQyxHQUFHLEVBQUU7WUFFZixJQUFJLENBQUMsTUFBTSxHQUFHLG1CQUFBLFdBQVc7OztZQUFDLEdBQUcsRUFBRTtnQkFFM0IsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2pCLENBQUMsR0FBRSxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxFQUFPLENBQUM7UUFDMUQsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7Ozs7SUFPTSxXQUFX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U0FBQyxrQkFBa0I7Ozs7Ozs7O0lBZnRDLDRDQUEyQzs7Ozs7O0lBSzNDLGdDQUE4Qjs7Ozs7O0lBSzlCLGlDQUF1Qjs7Ozs7SUFHWCxxQ0FBeUM7Ozs7O0lBRXpDLHNDQUFpRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtBUFBfU1RBQkxFfSBmcm9tICdAYW5nbHIvY29tbW9uJztcbmltcG9ydCB7aXNQcmVzZW50fSBmcm9tICdAanNjcnB0L2NvbW1vbic7XG5pbXBvcnQge1NpbmssIExvZ0V2ZW50LCBMb2dFdmVudExldmVsfSBmcm9tIFwic3RydWN0dXJlZC1sb2dcIjtcblxuaW1wb3J0IHt0b1RleHQsIGlzRW5hYmxlZH0gZnJvbSBcIi4uLy4uL21pc2MvdXRpbHNcIjtcbmltcG9ydCB7UmVzdFNpbmtDb25maWdTZXJ2aWNlfSBmcm9tICcuL3Jlc3RTaW5rQ29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHtMT0dHRVJfUkVTVF9DTElFTlR9IGZyb20gJy4uLy4uL3R5cGVzL3Rva2Vucyc7XG5pbXBvcnQge0xvZ2dlclJlc3RDbGllbnQsIFJlc3RMb2d9IGZyb20gJy4uLy4uL3R5cGVzL2xvZ2dlci5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIFNpbmsgdGhhdCBpcyB1c2VkIGZvciBzdG9yaW5nIGxvZ3MgdXNpbmcgUkVTVFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUmVzdFNpbmtTZXJ2aWNlIGltcGxlbWVudHMgU2lua1xue1xuICAgIC8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBwcml2YXRlIGZpZWxkcyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0aW9uIHRoYXQgcHJvdG90eXBlIG9mIE1lc3NhZ2VUZW1wbGF0ZSB3YXMgdXBkYXRlZFxuICAgICAqL1xuICAgIHByaXZhdGUgX3Byb3RvdHlwZVVwZGF0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEFycmF5IG9mIHVuZmx1c2hlZCBsb2dzXG4gICAgICovXG4gICAgcHJpdmF0ZSBfbG9nczogUmVzdExvZ1tdID0gW107XG5cbiAgICAvKipcbiAgICAgKiBJbnRlcnZhbCB0aW1lciBpZFxuICAgICAqL1xuICAgIHByaXZhdGUgX3RpbWVyOiBudW1iZXI7XG5cbiAgICAvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgY29uc3RydWN0b3IgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NvbmZpZ1N2YzogUmVzdFNpbmtDb25maWdTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEBJbmplY3QoQVBQX1NUQUJMRSkgaXNTdGFibGU6IFByb21pc2U8dm9pZD4sXG4gICAgICAgICAgICAgICAgQEluamVjdChMT0dHRVJfUkVTVF9DTElFTlQpIHByaXZhdGUgX3Jlc3RDbGllbnQ6IExvZ2dlclJlc3RDbGllbnQpXG4gICAge1xuICAgICAgICBpc1N0YWJsZS50aGVuKCgpID0+XG4gICAgICAgIHtcbiAgICAgICAgICAgIHRoaXMuX3RpbWVyID0gc2V0SW50ZXJ2YWwoKCkgPT5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZsdXNoKCk7XG4gICAgICAgICAgICB9LCB0aGlzLl9jb25maWdTdmMuc2Vjb25kc1RvRmx1c2hBZnRlciAqIDEwMDApIGFzIGFueTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHB1YmxpYyBtZXRob2RzIC0gaW1wbGVtZW50YXRpb24gb2YgT25EZXN0cm95ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbiAgICBcbiAgICAvKipcbiAgICAgKiBDYWxsZWQgd2hlbiBjb21wb25lbnQgaXMgZGVzdHJveWVkXG4gICAgICovXG4gICAgcHVibGljIG5nT25EZXN0cm95KClcbiAgICB7XG4gICAgICAgIGlmKGlzUHJlc2VudCh0aGlzLl90aW1lcikpXG4gICAgICAgIHtcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5fdGltZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5mbHVzaCgpO1xuICAgIH1cblxuICAgIC8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBwdWJsaWMgbWV0aG9kcyAtIGltcGxlbWVudGF0aW9uIG9mIFNpbmsgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuXG4gICAgLyoqXG4gICAgICogRW1pdHMgZXZlbnRzIGludG8gbG9nXG4gICAgICogQHBhcmFtIGV2ZW50cyAtIEV2ZW50cyB0byBiZSBlbWl0dGVkXG4gICAgICovXG4gICAgcHVibGljIGVtaXQoZXZlbnRzOiBMb2dFdmVudFtdKVxuICAgIHtcbiAgICAgICAgaWYoIWV2ZW50cyB8fCAhZXZlbnRzLmxlbmd0aClcbiAgICAgICAge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGZvcmNlRmx1c2ggPSBmYWxzZTtcblxuICAgICAgICBldmVudHMuZm9yRWFjaChlID0+XG4gICAgICAgIHtcbiAgICAgICAgICAgIGlmKCF0aGlzLl9wcm90b3R5cGVVcGRhdGVkKVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVByb3RvdHlwZShlKTtcblxuICAgICAgICAgICAgICAgIHRoaXMuX3Byb3RvdHlwZVVwZGF0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIWlzRW5hYmxlZCh0aGlzLl9jb25maWdTdmMucmVzdHJpY3RUb0xldmVsLCBlLmxldmVsKSlcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxldCBsb2dMZXZlbCA9IExvZ0V2ZW50TGV2ZWxbZS5sZXZlbF0udG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgIGxldCB0aW1lc3RhbXAgPSBlLnRpbWVzdGFtcDtcbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gZS5tZXNzYWdlVGVtcGxhdGUucmVuZGVyKGUucHJvcGVydGllcyk7XG5cbiAgICAgICAgICAgIHRoaXMuX2xvZ3MucHVzaChcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBsb2dMZXZlbCxcbiAgICAgICAgICAgICAgICBtZXNzYWdlLFxuICAgICAgICAgICAgICAgIHRpbWVzdGFtcFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGlmIChpc0VuYWJsZWQodGhpcy5fY29uZmlnU3ZjLmltbWVkaWF0ZUZsdXNoTWluTGV2ZWwsIGUubGV2ZWwpKVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGZvcmNlRmx1c2ggPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICAvL2ZsdXNoIGlmIG51bWJlciBvZiByZWNvcmRzIGlzIGJpZ2dlciB0aGFuIG1heCBvciBmbHVzaCBpcyByZXF1aXJlZFxuICAgICAgICBpZihmb3JjZUZsdXNoIHx8IHRoaXMuX2xvZ3MubGVuZ3RoID49IHRoaXMuX2NvbmZpZ1N2Yy5mbHVzaEFmdGVyTnVtYmVyT2ZMb2dzKVxuICAgICAgICB7XG4gICAgICAgICAgICB0aGlzLmZsdXNoKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGbHVzaGVzIGxvZ3NcbiAgICAgKi9cbiAgICBwdWJsaWMgZmx1c2goKTogUHJvbWlzZTx2b2lkPlxuICAgIHtcbiAgICAgICAgbGV0IHByb21pc2U6IFByb21pc2U8dm9pZD47XG5cbiAgICAgICAgLy9ubyBsb2dzIGF2YWlsYWJsZVxuICAgICAgICBpZighdGhpcy5fbG9ncy5sZW5ndGgpXG4gICAgICAgIHtcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICB0cnlcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvbWlzZSA9IHRoaXMuX3Jlc3RDbGllbnQubG9nKHRoaXMuX2xvZ3MpLnRvUHJvbWlzZSgpO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoKGUpXG4gICAgICAgIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fbG9ncyA9IFtdO1xuXG4gICAgICAgIHJldHVybiBwcm9taXNlID8/IFByb21pc2UucmVzb2x2ZShudWxsKTtcbiAgICB9XG5cbiAgICAvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgcHJpdmF0ZSBtZXRob2RzICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZXMgcHJvdG90eXBlIG9mIE1lc3NhZ2VUZW1wbGF0ZVxuICAgICAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVByb3RvdHlwZShlOiBMb2dFdmVudClcbiAgICB7XG4gICAgICAgIGxldCBtZXNzYWdlVGVtcGxhdGVJbnN0YW5jZSA9ICg8YW55PmUubWVzc2FnZVRlbXBsYXRlKTtcblxuICAgICAgICBpZihtZXNzYWdlVGVtcGxhdGVJbnN0YW5jZS5jb25zdHJ1Y3RvciAmJiBtZXNzYWdlVGVtcGxhdGVJbnN0YW5jZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUgJiYgbWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UuY29uc3RydWN0b3IucHJvdG90eXBlLnRvVGV4dClcbiAgICAgICAge1xuICAgICAgICAgICAgbWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UuY29uc3RydWN0b3IucHJvdG90eXBlLnRvVGV4dCA9IHRvVGV4dDtcbiAgICAgICAgfVxuICAgIH1cbn0iXX0=
@@ -4,8 +4,9 @@
4
4
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
5
  */
6
6
  import { Injectable, Inject } from "@angular/core";
7
- import { LogEventLevel } from "structured-log";
7
+ import { APP_STABLE } from '@anglr/common';
8
8
  import { isPresent } from '@jscrpt/common';
9
+ import { LogEventLevel } from "structured-log";
9
10
  import { toText, isEnabled } from "../../misc/utils";
10
11
  import { RestSinkConfigService } from './restSinkConfig.service';
11
12
  import { LOGGER_REST_CLIENT } from '../../types/tokens';
@@ -14,7 +15,7 @@ import { LOGGER_REST_CLIENT } from '../../types/tokens';
14
15
  */
15
16
  var RestSinkService = /** @class */ (function () {
16
17
  //######################### constructor #########################
17
- function RestSinkService(_configSvc, _restClient) {
18
+ function RestSinkService(_configSvc, isStable, _restClient) {
18
19
  var _this = this;
19
20
  this._configSvc = _configSvc;
20
21
  this._restClient = _restClient;
@@ -27,12 +28,17 @@ var RestSinkService = /** @class */ (function () {
27
28
  * Array of unflushed logs
28
29
  */
29
30
  this._logs = [];
30
- this._timer = (/** @type {?} */ (setInterval((/**
31
+ isStable.then((/**
31
32
  * @return {?}
32
33
  */
33
34
  function () {
34
- _this.flush();
35
- }), this._configSvc.secondsToFlushAfter * 1000)));
35
+ _this._timer = (/** @type {?} */ (setInterval((/**
36
+ * @return {?}
37
+ */
38
+ function () {
39
+ _this.flush();
40
+ }), _this._configSvc.secondsToFlushAfter * 1000)));
41
+ }));
36
42
  }
37
43
  //######################### public methods - implementation of OnDestroy #########################
38
44
  /**
@@ -171,6 +177,7 @@ var RestSinkService = /** @class */ (function () {
171
177
  /** @nocollapse */
172
178
  RestSinkService.ctorParameters = function () { return [
173
179
  { type: RestSinkConfigService },
180
+ { type: Promise, decorators: [{ type: Inject, args: [APP_STABLE,] }] },
174
181
  { type: undefined, decorators: [{ type: Inject, args: [LOGGER_REST_CLIENT,] }] }
175
182
  ]; };
176
183
  return RestSinkService;
@@ -206,4 +213,4 @@ if (false) {
206
213
  */
207
214
  RestSinkService.prototype._restClient;
208
215
  }
209
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdFNpbmsuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXN0L3Jlc3RTaW5rLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQWlCLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzdELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxPQUFPLEVBQUMsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG9CQUFvQixDQUFDOzs7O0FBTXREO0lBb0JJLGlFQUFpRTtJQUNqRSx5QkFBb0IsVUFBaUMsRUFDTCxXQUE2QjtRQUQ3RSxpQkFPQztRQVBtQixlQUFVLEdBQVYsVUFBVSxDQUF1QjtRQUNMLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjs7Ozs7UUFkckUsc0JBQWlCLEdBQVksS0FBSyxDQUFDOzs7O1FBS25DLFVBQUssR0FBYyxFQUFFLENBQUM7UUFXMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxtQkFBQSxXQUFXOzs7UUFBQztZQUV0QixLQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDakIsQ0FBQyxHQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLEVBQU8sQ0FBQztJQUMxRCxDQUFDO0lBRUQsa0dBQWtHO0lBRWxHOztPQUVHOzs7Ozs7SUFDSSxxQ0FBVzs7Ozs7O0lBQWxCO1FBRUksSUFBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUN6QjtZQUNJLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFD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QUFNLFNBQUMsa0JBQWtCOztJQXFIMUMsc0JBQUM7Q0FBQSxBQTNJRCxJQTJJQztTQTFJWSxlQUFlOzs7Ozs7O0lBT3hCLDRDQUEyQzs7Ozs7O0lBSzNDLGdDQUE4Qjs7Ozs7O0lBSzlCLGlDQUF1Qjs7Ozs7SUFHWCxxQ0FBeUM7Ozs7O0lBQ3pDLHNDQUFpRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtTaW5rLCBMb2dFdmVudCwgTG9nRXZlbnRMZXZlbH0gZnJvbSBcInN0cnVjdHVyZWQtbG9nXCI7XG5pbXBvcnQge2lzUHJlc2VudH0gZnJvbSAnQGpzY3JwdC9jb21tb24nO1xuXG5pbXBvcnQge3RvVGV4dCwgaXNFbmFibGVkfSBmcm9tIFwiLi4vLi4vbWlzYy91dGlsc1wiO1xuaW1wb3J0IHtSZXN0U2lua0NvbmZpZ1NlcnZpY2V9IGZyb20gJy4vcmVzdFNpbmtDb25maWcuc2VydmljZSc7XG5pbXBvcnQge0xPR0dFUl9SRVNUX0NMSUVOVH0gZnJvbSAnLi4vLi4vdHlwZXMvdG9rZW5zJztcbmltcG9ydCB7TG9nZ2VyUmVzdENsaWVudCwgUmVzdExvZ30gZnJvbSAnLi4vLi4vdHlwZXMvbG9nZ2VyLmludGVyZmFjZSc7XG5cbi8qKlxuICogU2luayB0aGF0IGlzIHVzZWQgZm9yIHN0b3JpbmcgbG9ncyB1c2luZyBSRVNUXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSZXN0U2lua1NlcnZpY2UgaW1wbGVtZW50cyBTaW5rXG57XG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHByaXZhdGUgZmllbGRzICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRpb24gdGhhdCBwcm90b3R5cGUgb2YgTWVzc2FnZVRlbXBsYXRlIHdhcyB1cGRhdGVkXG4gICAgICovXG4gICAgcHJpdmF0ZSBfcHJvdG90eXBlVXBkYXRlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQXJyYXkgb2YgdW5mbHVzaGVkIGxvZ3NcbiAgICAgKi9cbiAgICBwcml2YXRlIF9sb2dzOiBSZXN0TG9nW10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIEludGVydmFsIHRpbWVyIGlkXG4gICAgICovXG4gICAgcHJpdmF0ZSBfdGltZXI6IG51bWJlcjtcblxuICAgIC8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBjb25zdHJ1Y3RvciAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfY29uZmlnU3ZjOiBSZXN0U2lua0NvbmZpZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgQEluamVjdChMT0dHRVJfUkVTVF9DTElFTlQpIHByaXZhdGUgX3Jlc3RDbGllbnQ6IExvZ2dlclJlc3RDbGllbnQpXG4gICAge1xuICAgICAgICB0aGlzLl90aW1lciA9IHNldEludGVydmFsKCgpID0+XG4gICAgICAgIHtcbiAgICAgICAgICAgIHRoaXMuZmx1c2goKTtcbiAgICAgICAgfSwgdGhpcy5fY29uZmlnU3ZjLnNlY29uZHNUb0ZsdXNoQWZ0ZXIgKiAxMDAwKSBhcyBhbnk7XG4gICAgfVxuXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHB1YmxpYyBtZXRob2RzIC0gaW1wbGVtZW50YXRpb24gb2YgT25EZXN0cm95ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbiAgICBcbiAgICAvKipcbiAgICAgKiBDYWxsZWQgd2hlbiBjb21wb25lbnQgaXMgZGVzdHJveWVkXG4gICAgICovXG4gICAgcHVibGljIG5nT25EZXN0cm95KClcbiAgICB7XG4gICAgICAgIGlmKGlzUHJlc2VudCh0aGlzLl90aW1lcikpXG4gICAgICAgIHtcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5fdGltZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5mbHVzaCgpO1xuICAgIH1cblxuICAgIC8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBwdWJsaWMgbWV0aG9kcyAtIGltcGxlbWVudGF0aW9uIG9mIFNpbmsgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuXG4gICAgLyoqXG4gICAgICogRW1pdHMgZXZlbnRzIGludG8gbG9nXG4gICAgICogQHBhcmFtIGV2ZW50cyAtIEV2ZW50cyB0byBiZSBlbWl0dGVkXG4gICAgICovXG4gICAgcHVibGljIGVtaXQoZXZlbnRzOiBMb2dFdmVudFtdKVxuICAgIHtcbiAgICAgICAgaWYoIWV2ZW50cyB8fCAhZXZlbnRzLmxlbmd0aClcbiAgICAgICAge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGZvcmNlRmx1c2ggPSBmYWxzZTtcblxuICAgICAgICBldmVudHMuZm9yRWFjaChlID0+XG4gICAgICAgIHtcbiAgICAgICAgICAgIGlmKCF0aGlzLl9wcm90b3R5cGVVcGRhdGVkKVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVByb3RvdHlwZShlKTtcblxuICAgICAgICAgICAgICAgIHRoaXMuX3Byb3RvdHlwZVVwZGF0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIWlzRW5hYmxlZCh0aGlzLl9jb25maWdTdmMucmVzdHJpY3RUb0xldmVsLCBlLmxldmVsKSlcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxldCBsb2dMZXZlbCA9IExvZ0V2ZW50TGV2ZWxbZS5sZXZlbF0udG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgIGxldCB0aW1lc3RhbXAgPSBlLnRpbWVzdGFtcDtcbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gZS5tZXNzYWdlVGVtcGxhdGUucmVuZGVyKGUucHJvcGVydGllcyk7XG5cbiAgICAgICAgICAgIHRoaXMuX2xvZ3MucHVzaChcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBsb2dMZXZlbCxcbiAgICAgICAgICAgICAgICBtZXNzYWdlLFxuICAgICAgICAgICAgICAgIHRpbWVzdGFtcFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGlmIChpc0VuYWJsZWQodGhpcy5fY29uZmlnU3ZjLmltbWVkaWF0ZUZsdXNoTWluTGV2ZWwsIGUubGV2ZWwpKVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGZvcmNlRmx1c2ggPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICAvL2ZsdXNoIGlmIG51bWJlciBvZiByZWNvcmRzIGlzIGJpZ2dlciB0aGFuIG1heCBvciBmbHVzaCBpcyByZXF1aXJlZFxuICAgICAgICBpZihmb3JjZUZsdXNoIHx8IHRoaXMuX2xvZ3MubGVuZ3RoID49IHRoaXMuX2NvbmZpZ1N2Yy5mbHVzaEFmdGVyTnVtYmVyT2ZMb2dzKVxuICAgICAgICB7XG4gICAgICAgICAgICB0aGlzLmZsdXNoKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGbHVzaGVzIGxvZ3NcbiAgICAgKi9cbiAgICBwdWJsaWMgZmx1c2goKTogUHJvbWlzZTx2b2lkPlxuICAgIHtcbiAgICAgICAgbGV0IHByb21pc2U6IFByb21pc2U8dm9pZD47XG5cbiAgICAgICAgLy9ubyBsb2dzIGF2YWlsYWJsZVxuICAgICAgICBpZighdGhpcy5fbG9ncy5sZW5ndGgpXG4gICAgICAgIHtcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICB0cnlcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvbWlzZSA9IHRoaXMuX3Jlc3RDbGllbnQubG9nKHRoaXMuX2xvZ3MpLnRvUHJvbWlzZSgpO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoKGUpXG4gICAgICAgIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fbG9ncyA9IFtdO1xuXG4gICAgICAgIHJldHVybiBwcm9taXNlID8/IFByb21pc2UucmVzb2x2ZShudWxsKTtcbiAgICB9XG5cbiAgICAvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgcHJpdmF0ZSBtZXRob2RzICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZXMgcHJvdG90eXBlIG9mIE1lc3NhZ2VUZW1wbGF0ZVxuICAgICAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVByb3RvdHlwZShlOiBMb2dFdmVudClcbiAgICB7XG4gICAgICAgIGxldCBtZXNzYWdlVGVtcGxhdGVJbnN0YW5jZSA9ICg8YW55PmUubWVzc2FnZVRlbXBsYXRlKTtcblxuICAgICAgICBpZihtZXNzYWdlVGVtcGxhdGVJbnN0YW5jZS5jb25zdHJ1Y3RvciAmJiBtZXNzYWdlVGVtcGxhdGVJbnN0YW5jZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUgJiYgbWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UuY29uc3RydWN0b3IucHJvdG90eXBlLnRvVGV4dClcbiAgICAgICAge1xuICAgICAgICAgICAgbWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UuY29uc3RydWN0b3IucHJvdG90eXBlLnRvVGV4dCA9IHRvVGV4dDtcbiAgICAgICAgfVxuICAgIH1cbn0iXX0=
216
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdFNpbmsuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXN0L3Jlc3RTaW5rLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQWlCLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTdELE9BQU8sRUFBQyxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7Ozs7QUFNdEQ7SUFvQkksaUVBQWlFO0lBQ2pFLHlCQUFvQixVQUFpQyxFQUNyQixRQUF1QixFQUNQLFdBQTZCO1FBRjdFLGlCQVdDO1FBWG1CLGVBQVUsR0FBVixVQUFVLENBQXVCO1FBRUwsZ0JBQVcsR0FBWCxXQUFXLENBQWtCOzs7OztRQWZyRSxzQkFBaUIsR0FBWSxLQUFLLENBQUM7Ozs7UUFLbkMsVUFBSyxHQUFjLEVBQUUsQ0FBQztRQVkxQixRQUFRLENBQUMsSUFBSTs7O1FBQUM7WUFFVixLQUFJLENBQUMsTUFBTSxHQUFHLG1CQUFBLFdBQVc7OztZQUFDO2dCQUV0QixLQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDakIsQ0FBQyxHQUFFLEtBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLEVBQU8sQ0FBQztRQUMxRCxDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxrR0FBa0c7SUFFbEc7O09BRUc7Ozs7OztJ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dUIsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7U0FDakU7SUFDTCxDQUFDOztnQkE5SUosVUFBVTs7OztnQkFQSCxxQkFBcUI7Z0JBNkJpQixPQUFPLHVCQUFwQyxNQUFNLFNBQUMsVUFBVTtnREFDakIsTUFBTSxTQUFDLGtCQUFrQjs7SUF3SDFDLHNCQUFDO0NBQUEsQUEvSUQsSUErSUM7U0E5SVksZUFBZTs7Ozs7OztJQU94Qiw0Q0FBMkM7Ozs7OztJQUszQyxnQ0FBOEI7Ozs7OztJQUs5QixpQ0FBdUI7Ozs7O0lBR1gscUNBQXlDOzs7OztJQUV6QyxzQ0FBaUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIEluamVjdH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7QVBQX1NUQUJMRX0gZnJvbSAnQGFuZ2xyL2NvbW1vbic7XG5pbXBvcnQge2lzUHJlc2VudH0gZnJvbSAnQGpzY3JwdC9jb21tb24nO1xuaW1wb3J0IHtTaW5rLCBMb2dFdmVudCwgTG9nRXZlbnRMZXZlbH0gZnJvbSBcInN0cnVjdHVyZWQtbG9nXCI7XG5cbmltcG9ydCB7dG9UZXh0LCBpc0VuYWJsZWR9IGZyb20gXCIuLi8uLi9taXNjL3V0aWxzXCI7XG5pbXBvcnQge1Jlc3RTaW5rQ29uZmlnU2VydmljZX0gZnJvbSAnLi9yZXN0U2lua0NvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7TE9HR0VSX1JFU1RfQ0xJRU5UfSBmcm9tICcuLi8uLi90eXBlcy90b2tlbnMnO1xuaW1wb3J0IHtMb2dnZXJSZXN0Q2xpZW50LCBSZXN0TG9nfSBmcm9tICcuLi8uLi90eXBlcy9sb2dnZXIuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBTaW5rIHRoYXQgaXMgdXNlZCBmb3Igc3RvcmluZyBsb2dzIHVzaW5nIFJFU1RcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFJlc3RTaW5rU2VydmljZSBpbXBsZW1lbnRzIFNpbmtcbntcbiAgICAvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgcHJpdmF0ZSBmaWVsZHMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGlvbiB0aGF0IHByb3RvdHlwZSBvZiBNZXNzYWdlVGVtcGxhdGUgd2FzIHVwZGF0ZWRcbiAgICAgKi9cbiAgICBwcml2YXRlIF9wcm90b3R5cGVVcGRhdGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBBcnJheSBvZiB1bmZsdXNoZWQgbG9nc1xuICAgICAqL1xuICAgIHByaXZhdGUgX2xvZ3M6IFJlc3RMb2dbXSA9IFtdO1xuXG4gICAgLyoqXG4gICAgICogSW50ZXJ2YWwgdGltZXIgaWRcbiAgICAgKi9cbiAgICBwcml2YXRlIF90aW1lcjogbnVtYmVyO1xuXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIGNvbnN0cnVjdG9yICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jb25maWdTdmM6IFJlc3RTaW5rQ29uZmlnU2VydmljZSxcbiAgICAgICAgICAgICAgICBASW5qZWN0KEFQUF9TVEFCTEUpIGlzU3RhYmxlOiBQcm9taXNlPHZvaWQ+LFxuICAgICAgICAgICAgICAgIEBJbmplY3QoTE9HR0VSX1JFU1RfQ0xJRU5UKSBwcml2YXRlIF9yZXN0Q2xpZW50OiBMb2dnZXJSZXN0Q2xpZW50KVxuICAgIHtcbiAgICAgICAgaXNTdGFibGUudGhlbigoKSA9PlxuICAgICAgICB7XG4gICAgICAgICAgICB0aGlzLl90aW1lciA9IHNldEludGVydmFsKCgpID0+XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGhpcy5mbHVzaCgpO1xuICAgICAgICAgICAgfSwgdGhpcy5fY29uZmlnU3ZjLnNlY29uZHNUb0ZsdXNoQWZ0ZXIgKiAxMDAwKSBhcyBhbnk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBwdWJsaWMgbWV0aG9kcyAtIGltcGxlbWVudGF0aW9uIG9mIE9uRGVzdHJveSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gICAgXG4gICAgLyoqXG4gICAgICogQ2FsbGVkIHdoZW4gY29tcG9uZW50IGlzIGRlc3Ryb3llZFxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpXG4gICAge1xuICAgICAgICBpZihpc1ByZXNlbnQodGhpcy5fdGltZXIpKVxuICAgICAgICB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuX3RpbWVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZmx1c2goKTtcbiAgICB9XG5cbiAgICAvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgcHVibGljIG1ldGhvZHMgLSBpbXBsZW1lbnRhdGlvbiBvZiBTaW5rICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcblxuICAgIC8qKlxuICAgICAqIEVtaXRzIGV2ZW50cyBpbnRvIGxvZ1xuICAgICAqIEBwYXJhbSBldmVudHMgLSBFdmVudHMgdG8gYmUgZW1pdHRlZFxuICAgICAqL1xuICAgIHB1YmxpYyBlbWl0KGV2ZW50czogTG9nRXZlbnRbXSlcbiAgICB7XG4gICAgICAgIGlmKCFldmVudHMgfHwgIWV2ZW50cy5sZW5ndGgpXG4gICAgICAgIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBmb3JjZUZsdXNoID0gZmFsc2U7XG5cbiAgICAgICAgZXZlbnRzLmZvckVhY2goZSA9PlxuICAgICAgICB7XG4gICAgICAgICAgICBpZighdGhpcy5fcHJvdG90eXBlVXBkYXRlZClcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVQcm90b3R5cGUoZSk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLl9wcm90b3R5cGVVcGRhdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFpc0VuYWJsZWQodGhpcy5fY29uZmlnU3ZjLnJlc3RyaWN0VG9MZXZlbCwgZS5sZXZlbCkpXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgbG9nTGV2ZWwgPSBMb2dFdmVudExldmVsW2UubGV2ZWxdLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICBsZXQgdGltZXN0YW1wID0gZS50aW1lc3RhbXA7XG4gICAgICAgICAgICBsZXQgbWVzc2FnZSA9IGUubWVzc2FnZVRlbXBsYXRlLnJlbmRlcihlLnByb3BlcnRpZXMpO1xuXG4gICAgICAgICAgICB0aGlzLl9sb2dzLnB1c2goXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbG9nTGV2ZWwsXG4gICAgICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgICAgICB0aW1lc3RhbXBcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBpZiAoaXNFbmFibGVkKHRoaXMuX2NvbmZpZ1N2Yy5pbW1lZGlhdGVGbHVzaE1pbkxldmVsLCBlLmxldmVsKSlcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBmb3JjZUZsdXNoID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy9mbHVzaCBpZiBudW1iZXIgb2YgcmVjb3JkcyBpcyBiaWdnZXIgdGhhbiBtYXggb3IgZmx1c2ggaXMgcmVxdWlyZWRcbiAgICAgICAgaWYoZm9yY2VGbHVzaCB8fCB0aGlzLl9sb2dzLmxlbmd0aCA+PSB0aGlzLl9jb25maWdTdmMuZmx1c2hBZnRlck51bWJlck9mTG9ncylcbiAgICAgICAge1xuICAgICAgICAgICAgdGhpcy5mbHVzaCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmx1c2hlcyBsb2dzXG4gICAgICovXG4gICAgcHVibGljIGZsdXNoKCk6IFByb21pc2U8dm9pZD5cbiAgICB7XG4gICAgICAgIGxldCBwcm9taXNlOiBQcm9taXNlPHZvaWQ+O1xuXG4gICAgICAgIC8vbm8gbG9ncyBhdmFpbGFibGVcbiAgICAgICAgaWYoIXRoaXMuX2xvZ3MubGVuZ3RoKVxuICAgICAgICB7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5XG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb21pc2UgPSB0aGlzLl9yZXN0Q2xpZW50LmxvZyh0aGlzLl9sb2dzKS50b1Byb21pc2UoKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaChlKVxuICAgICAgICB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2xvZ3MgPSBbXTtcblxuICAgICAgICByZXR1cm4gcHJvbWlzZSA/PyBQcm9taXNlLnJlc29sdmUobnVsbCk7XG4gICAgfVxuXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHByaXZhdGUgbWV0aG9kcyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG5cbiAgICAvKipcbiAgICAgKiBVcGRhdGVzIHByb3RvdHlwZSBvZiBNZXNzYWdlVGVtcGxhdGVcbiAgICAgKi9cbiAgICBwcml2YXRlIF91cGRhdGVQcm90b3R5cGUoZTogTG9nRXZlbnQpXG4gICAge1xuICAgICAgICBsZXQgbWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UgPSAoPGFueT5lLm1lc3NhZ2VUZW1wbGF0ZSk7XG5cbiAgICAgICAgaWYobWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UuY29uc3RydWN0b3IgJiYgbWVzc2FnZVRlbXBsYXRlSW5zdGFuY2UuY29uc3RydWN0b3IucHJvdG90eXBlICYmIG1lc3NhZ2VUZW1wbGF0ZUluc3RhbmNlLmNvbnN0cnVjdG9yLnByb3RvdHlwZS50b1RleHQpXG4gICAgICAgIHtcbiAgICAgICAgICAgIG1lc3NhZ2VUZW1wbGF0ZUluc3RhbmNlLmNvbnN0cnVjdG9yLnByb3RvdHlwZS50b1RleHQgPSB0b1RleHQ7XG4gICAgICAgIH1cbiAgICB9XG59Il19
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"consoleAnimationTrigger":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger","line":5,"character":39},"arguments":["consoleAnimation",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":7,"character":4},"arguments":[":enter",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":9,"character":8},"arguments":[{"height":0,"opacity":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"group","line":14,"character":8},"arguments":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":16,"character":12},"arguments":["350ms",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":17,"character":20},"arguments":[{"height":"*"}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":21,"character":12},"arguments":["200ms",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":22,"character":20},"arguments":[{"opacity":"*"}]}]}]]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":28,"character":4},"arguments":[":leave",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"group","line":30,"character":8},"arguments":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":32,"character":12},"arguments":["350ms",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":33,"character":20},"arguments":[{"height":0}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":37,"character":12},"arguments":["200ms 150ms",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":38,"character":20},"arguments":[{"opacity":0}]}]}]]}]]}]]},"ConsoleComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"console","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":14,"character":21},"member":"OnPush"},"template":"<div class=\"console-data thin-scrollbar\">\n <div class=\"console-log\" [ngClass]=\"log?.logLevel\" *ngFor=\"let log of currentLogs\">\n <div class=\"console-log-icon fa\" [class.fa-angle-right]=\"!log?.expanded\" [class.fa-angle-down]=\"log?.expanded\" (click)=\"log.expanded = !log.expanded\"></div>\n <div class=\"console-log-text\" [class.expanded]=\"log?.expanded\" (click)=\"copyMessage(log?.text)\">{{log?.text}}</div>\n </div>\n\n <div class=\"clear-icon\" (click)=\"clear()\" title=\"clear log\">\n <div class=\"fa fa-times\"></div>\n </div>\n\n <div class=\"copy-icon\" (click)=\"copy()\" title=\"copy to clipboard\" *ngIf=\"canCopy\">\n <div class=\"fa fa-copy\"></div>\n </div>\n</div>\n\n<div class=\"console-filter\">\n <input type=\"text\" placeholder=\"Filter messages\" (input)=\"filterValue = $any($event.target).value; setMessages()\">\n</div>","styles":[":host\n{\n display: flex;\n flex-direction: column;\n position: absolute;\n width: 100%;\n height: 50%;\n}\n\n.console-data\n{\n background-color: #000000c7;\n border: none;\n border-bottom: 1px solid #AAA;\n border-radius: 0;\n color: #EEE;\n flex: 1;\n min-height: 0;\n min-width: 0;\n overflow-y: auto;\n overflow-x: hidden;\n cursor: pointer;\n}\n\n.console-filter\n{\n align-self: stretch;\n}\n\n.console-filter input\n{\n width: 100%;\n background-color: #000000c7;\n color: #FFF;\n border: none;\n border-bottom: 1px solid #AAA;\n padding: 0 4px;\n}\n\n.copy-icon,\n.clear-icon\n{\n position: absolute;\n top: 0;\n right: 0;\n padding: 4px 14px;\n}\n\n.copy-icon\n{\n margin-right: 20px;\n}\n\n.clear-icon div:hover,\n.copy-icon div:hover\n{\n color: #31A1FF;\n cursor: pointer;\n}\n\n.console-log\n{\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n font-size: 12px;\n display: flex;\n flex-direction: row;\n}\n\n.console-log.error,\n.console-log.fatal\n{\n color: #FF3131;\n}\n\n.console-log.warning\n{\n color: #FFC531;\n}\n\n.console-log.debug,\n.console-log.verbose\n{\n color: #31A1FF;\n}\n\n.console-log-icon\n{\n color: #FFF;\n font-weight: bold;\n margin: 2px 4px 0;\n}\n\n.console-log-icon.fa-angle-down\n{\n margin: 3px 3px 0 2px;\n}\n\n.console-log-text\n{\n flex: 1;\n min-width: 0;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n.console-log-text.expanded\n{\n white-space: pre;\n text-overflow: initial;\n}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":43,"character":17},"arguments":[{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK_SERVICE"}]}],null],"parameters":[{"__symbolic":"reference","name":"ConsoleComponentSink"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":44,"character":41}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"copy":[{"__symbolic":"method"}],"copyMessage":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"setMessages":[{"__symbolic":"method"}]}},"ConsoleLogModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":13,"character":8}],"declarations":[{"__symbolic":"reference","name":"ConsoleComponent"}],"exports":[{"__symbolic":"reference","name":"ConsoleComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"ConsoleLogModule"},"providers":[{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK_SERVICE_PROVIDER"},{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK"},{"__symbolic":"reference","name":"STRUCTURED_LOG_LOGGER"}]}}}},"toText":{"__symbolic":"function"},"isEnabled":{"__symbolic":"function","parameters":["level","target"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":56,"character":11,"module":"./src/misc/utils"},"right":"undefined"},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"binop","operator":"&","left":{"__symbolic":"reference","name":"level"},"right":{"__symbolic":"reference","name":"target"}},"right":{"__symbolic":"reference","name":"target"}}}},"consoleComponentSinkFactory":{"__symbolic":"function","parameters":["configSvc"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"ConsoleComponentSinkService"},"arguments":[{"__symbolic":"reference","name":"configSvc"}]}},"LOGGER_SINKS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":21,"character":56},"arguments":["LOGGER_SINK"]},"CONSOLE_COMPONENT_SINK_SERVICE":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":26,"character":88},"arguments":["CONSOLE_COMPONENT_SINK_SERVICE"]},"LOGGER_REST_CLIENT":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":31,"character":72},"arguments":["LOGGER_REST_CLIENT"]},"CONSOLE_COMPONENT_SINK_SERVICE_PROVIDER":{"provide":{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK_SERVICE"},"useFactory":{"__symbolic":"reference","name":"consoleComponentSinkFactory"},"deps":[{"__symbolic":"reference","name":"ConsoleSinkConfigService"}]},"CONSOLE_COMPONENT_SINK":{"provide":{"__symbolic":"reference","name":"LOGGER_SINKS"},"useExisting":{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK_SERVICE"},"multi":true},"REST_SINK":{"provide":{"__symbolic":"reference","name":"LOGGER_SINKS"},"useClass":{"__symbolic":"reference","name":"RestSinkService"},"multi":true},"STRUCTURED_LOG_LOGGER":{"provide":{"__symbolic":"reference","module":"@anglr/common","name":"LOGGER","line":72,"character":13},"useClass":{"__symbolic":"reference","name":"LoggerService"}},"ConsoleComponentSink":{"__symbolic":"interface"},"ConsoleComponentLog":{"__symbolic":"interface"},"RestLog":{"__symbolic":"interface"},"LoggerRestClient":{"__symbolic":"interface"},"ConsoleComponentSinkService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":11,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ConsoleSinkConfigService"}]}],"clear":[{"__symbolic":"method"}],"emit":[{"__symbolic":"method"}],"flush":[{"__symbolic":"method"}],"_updatePrototype":[{"__symbolic":"method"}]}},"ConsoleSinkConfigService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":12,"character":45,"module":"./src/services/console/consoleSinkConfig.service"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":22,"character":24}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":65},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":22,"character":72}]}]],"parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","module":"structured-log","name":"LogEventLevel","line":22,"character":107}]}]},"statics":{"ɵprov":{}}},"LoggerService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":20,"character":17},"arguments":[{"__symbolic":"reference","name":"LOGGER_SINKS"}]}]],"parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","module":"structured-log","name":"Sink","line":20,"character":45}]}]}],"fatal":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"error":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"warn":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"info":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"debug":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"verbose":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]}},"RestSinkConfigService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":7,"character":45,"module":"./src/services/rest/restSinkConfig.service"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":19,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":19,"character":24}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":20,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":20,"character":24}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":21,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":21,"character":24}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":22,"character":24}]}]],"parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","module":"structured-log","name":"LogEventLevel","line":21,"character":66},{"__symbolic":"reference","module":"structured-log","name":"LogEventLevel","line":21,"character":66}]}]},"statics":{"ɵprov":{}}},"RestSinkService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":34,"character":17},"arguments":[{"__symbolic":"reference","name":"LOGGER_REST_CLIENT"}]}]],"parameters":[{"__symbolic":"reference","name":"RestSinkConfigService"},{"__symbolic":"reference","name":"LoggerRestClient"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"emit":[{"__symbolic":"method"}],"flush":[{"__symbolic":"method"}],"_updatePrototype":[{"__symbolic":"method"}]}}},"origins":{"consoleAnimationTrigger":"./src/components/console/console.component.animations","ConsoleComponent":"./src/components/console/console.component","ConsoleLogModule":"./src/modules/consoleLog.module","toText":"./src/misc/utils","isEnabled":"./src/misc/utils","consoleComponentSinkFactory":"./src/types/tokens","LOGGER_SINKS":"./src/types/tokens","CONSOLE_COMPONENT_SINK_SERVICE":"./src/types/tokens","LOGGER_REST_CLIENT":"./src/types/tokens","CONSOLE_COMPONENT_SINK_SERVICE_PROVIDER":"./src/types/tokens","CONSOLE_COMPONENT_SINK":"./src/types/tokens","REST_SINK":"./src/types/tokens","STRUCTURED_LOG_LOGGER":"./src/types/tokens","ConsoleComponentSink":"./src/types/logger.interface","ConsoleComponentLog":"./src/types/logger.interface","RestLog":"./src/types/logger.interface","LoggerRestClient":"./src/types/logger.interface","ConsoleComponentSinkService":"./src/services/console/consoleComponentSink.service","ConsoleSinkConfigService":"./src/services/console/consoleSinkConfig.service","LoggerService":"./src/services/logger.service","RestSinkConfigService":"./src/services/rest/restSinkConfig.service","RestSinkService":"./src/services/rest/restSink.service"},"importAs":"@anglr/common/structured-log"}
1
+ {"__symbolic":"module","version":4,"metadata":{"consoleAnimationTrigger":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger","line":5,"character":39},"arguments":["consoleAnimation",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":7,"character":4},"arguments":[":enter",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":9,"character":8},"arguments":[{"height":0,"opacity":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"group","line":14,"character":8},"arguments":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":16,"character":12},"arguments":["350ms",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":17,"character":20},"arguments":[{"height":"*"}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":21,"character":12},"arguments":["200ms",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":22,"character":20},"arguments":[{"opacity":"*"}]}]}]]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":28,"character":4},"arguments":[":leave",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"group","line":30,"character":8},"arguments":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":32,"character":12},"arguments":["350ms",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":33,"character":20},"arguments":[{"height":0}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":37,"character":12},"arguments":["200ms 150ms",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":38,"character":20},"arguments":[{"opacity":0}]}]}]]}]]}]]},"ConsoleComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"console","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":14,"character":21},"member":"OnPush"},"template":"<div class=\"console-data thin-scrollbar\">\n <div class=\"console-log\" [ngClass]=\"log?.logLevel\" *ngFor=\"let log of currentLogs\">\n <div class=\"console-log-icon fa\" [class.fa-angle-right]=\"!log?.expanded\" [class.fa-angle-down]=\"log?.expanded\" (click)=\"log.expanded = !log.expanded\"></div>\n <div class=\"console-log-text\" [class.expanded]=\"log?.expanded\" (click)=\"copyMessage(log?.text)\">{{log?.text}}</div>\n </div>\n\n <div class=\"clear-icon\" (click)=\"clear()\" title=\"clear log\">\n <div class=\"fa fa-times\"></div>\n </div>\n\n <div class=\"copy-icon\" (click)=\"copy()\" title=\"copy to clipboard\" *ngIf=\"canCopy\">\n <div class=\"fa fa-copy\"></div>\n </div>\n</div>\n\n<div class=\"console-filter\">\n <input type=\"text\" placeholder=\"Filter messages\" (input)=\"filterValue = $any($event.target).value; setMessages()\">\n</div>","styles":[":host\n{\n display: flex;\n flex-direction: column;\n position: absolute;\n width: 100%;\n height: 50%;\n}\n\n.console-data\n{\n background-color: #000000c7;\n border: none;\n border-bottom: 1px solid #AAA;\n border-radius: 0;\n color: #EEE;\n flex: 1;\n min-height: 0;\n min-width: 0;\n overflow-y: auto;\n overflow-x: hidden;\n cursor: pointer;\n}\n\n.console-filter\n{\n align-self: stretch;\n}\n\n.console-filter input\n{\n width: 100%;\n background-color: #000000c7;\n color: #FFF;\n border: none;\n border-bottom: 1px solid #AAA;\n padding: 0 4px;\n}\n\n.copy-icon,\n.clear-icon\n{\n position: absolute;\n top: 0;\n right: 0;\n padding: 4px 14px;\n}\n\n.copy-icon\n{\n margin-right: 20px;\n}\n\n.clear-icon div:hover,\n.copy-icon div:hover\n{\n color: #31A1FF;\n cursor: pointer;\n}\n\n.console-log\n{\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n font-size: 12px;\n display: flex;\n flex-direction: row;\n}\n\n.console-log.error,\n.console-log.fatal\n{\n color: #FF3131;\n}\n\n.console-log.warning\n{\n color: #FFC531;\n}\n\n.console-log.debug,\n.console-log.verbose\n{\n color: #31A1FF;\n}\n\n.console-log-icon\n{\n color: #FFF;\n font-weight: bold;\n margin: 2px 4px 0;\n}\n\n.console-log-icon.fa-angle-down\n{\n margin: 3px 3px 0 2px;\n}\n\n.console-log-text\n{\n flex: 1;\n min-width: 0;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n.console-log-text.expanded\n{\n white-space: pre;\n text-overflow: initial;\n}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":43,"character":17},"arguments":[{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK_SERVICE"}]}],null],"parameters":[{"__symbolic":"reference","name":"ConsoleComponentSink"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":44,"character":41}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"copy":[{"__symbolic":"method"}],"copyMessage":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"setMessages":[{"__symbolic":"method"}]}},"ConsoleLogModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":13,"character":8}],"declarations":[{"__symbolic":"reference","name":"ConsoleComponent"}],"exports":[{"__symbolic":"reference","name":"ConsoleComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"ConsoleLogModule"},"providers":[{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK_SERVICE_PROVIDER"},{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK"},{"__symbolic":"reference","name":"STRUCTURED_LOG_LOGGER"}]}}}},"toText":{"__symbolic":"function"},"isEnabled":{"__symbolic":"function","parameters":["level","target"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":56,"character":11,"module":"./src/misc/utils"},"right":"undefined"},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"binop","operator":"&","left":{"__symbolic":"reference","name":"level"},"right":{"__symbolic":"reference","name":"target"}},"right":{"__symbolic":"reference","name":"target"}}}},"consoleComponentSinkFactory":{"__symbolic":"function","parameters":["configSvc"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"ConsoleComponentSinkService"},"arguments":[{"__symbolic":"reference","name":"configSvc"}]}},"LOGGER_SINKS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":21,"character":56},"arguments":["LOGGER_SINK"]},"CONSOLE_COMPONENT_SINK_SERVICE":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":26,"character":88},"arguments":["CONSOLE_COMPONENT_SINK_SERVICE"]},"LOGGER_REST_CLIENT":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":31,"character":72},"arguments":["LOGGER_REST_CLIENT"]},"CONSOLE_COMPONENT_SINK_SERVICE_PROVIDER":{"provide":{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK_SERVICE"},"useFactory":{"__symbolic":"reference","name":"consoleComponentSinkFactory"},"deps":[{"__symbolic":"reference","name":"ConsoleSinkConfigService"}]},"CONSOLE_COMPONENT_SINK":{"provide":{"__symbolic":"reference","name":"LOGGER_SINKS"},"useExisting":{"__symbolic":"reference","name":"CONSOLE_COMPONENT_SINK_SERVICE"},"multi":true},"REST_SINK":{"provide":{"__symbolic":"reference","name":"LOGGER_SINKS"},"useClass":{"__symbolic":"reference","name":"RestSinkService"},"multi":true},"STRUCTURED_LOG_LOGGER":{"provide":{"__symbolic":"reference","module":"@anglr/common","name":"LOGGER","line":72,"character":13},"useClass":{"__symbolic":"reference","name":"LoggerService"}},"ConsoleComponentSink":{"__symbolic":"interface"},"ConsoleComponentLog":{"__symbolic":"interface"},"RestLog":{"__symbolic":"interface"},"LoggerRestClient":{"__symbolic":"interface"},"ConsoleComponentSinkService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":11,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ConsoleSinkConfigService"}]}],"clear":[{"__symbolic":"method"}],"emit":[{"__symbolic":"method"}],"flush":[{"__symbolic":"method"}],"_updatePrototype":[{"__symbolic":"method"}]}},"ConsoleSinkConfigService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":12,"character":45,"module":"./src/services/console/consoleSinkConfig.service"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":22,"character":24}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":65},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":22,"character":72}]}]],"parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","module":"structured-log","name":"LogEventLevel","line":22,"character":107}]}]},"statics":{"ɵprov":{}}},"LoggerService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":20,"character":17},"arguments":[{"__symbolic":"reference","name":"LOGGER_SINKS"}]}]],"parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","module":"structured-log","name":"Sink","line":20,"character":45}]}]}],"fatal":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"error":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"warn":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"info":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"debug":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"verbose":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]}},"RestSinkConfigService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":7,"character":45,"module":"./src/services/rest/restSinkConfig.service"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":19,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":19,"character":24}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":20,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":20,"character":24}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":21,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":21,"character":24}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":22,"character":24}]}]],"parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","module":"structured-log","name":"LogEventLevel","line":21,"character":66},{"__symbolic":"reference","module":"structured-log","name":"LogEventLevel","line":21,"character":66}]}]},"statics":{"ɵprov":{}}},"RestSinkService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":35,"character":17},"arguments":[{"__symbolic":"reference","module":"@anglr/common","name":"APP_STABLE","line":35,"character":24}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":36,"character":17},"arguments":[{"__symbolic":"reference","name":"LOGGER_REST_CLIENT"}]}]],"parameters":[{"__symbolic":"reference","name":"RestSinkConfigService"},{"__symbolic":"error","message":"Could not resolve type","line":35,"character":46,"context":{"typeName":"Promise"},"module":"./src/services/rest/restSink.service"},{"__symbolic":"reference","name":"LoggerRestClient"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"emit":[{"__symbolic":"method"}],"flush":[{"__symbolic":"method"}],"_updatePrototype":[{"__symbolic":"method"}]}}},"origins":{"consoleAnimationTrigger":"./src/components/console/console.component.animations","ConsoleComponent":"./src/components/console/console.component","ConsoleLogModule":"./src/modules/consoleLog.module","toText":"./src/misc/utils","isEnabled":"./src/misc/utils","consoleComponentSinkFactory":"./src/types/tokens","LOGGER_SINKS":"./src/types/tokens","CONSOLE_COMPONENT_SINK_SERVICE":"./src/types/tokens","LOGGER_REST_CLIENT":"./src/types/tokens","CONSOLE_COMPONENT_SINK_SERVICE_PROVIDER":"./src/types/tokens","CONSOLE_COMPONENT_SINK":"./src/types/tokens","REST_SINK":"./src/types/tokens","STRUCTURED_LOG_LOGGER":"./src/types/tokens","ConsoleComponentSink":"./src/types/logger.interface","ConsoleComponentLog":"./src/types/logger.interface","RestLog":"./src/types/logger.interface","LoggerRestClient":"./src/types/logger.interface","ConsoleComponentSinkService":"./src/services/console/consoleComponentSink.service","ConsoleSinkConfigService":"./src/services/console/consoleSinkConfig.service","LoggerService":"./src/services/logger.service","RestSinkConfigService":"./src/services/rest/restSinkConfig.service","RestSinkService":"./src/services/rest/restSink.service"},"importAs":"@anglr/common/structured-log"}
@@ -19,7 +19,7 @@ export declare class RestSinkService implements Sink {
19
19
  * Interval timer id
20
20
  */
21
21
  private _timer;
22
- constructor(_configSvc: RestSinkConfigService, _restClient: LoggerRestClient);
22
+ constructor(_configSvc: RestSinkConfigService, isStable: Promise<void>, _restClient: LoggerRestClient);
23
23
  /**
24
24
  * Called when component is destroyed
25
25
  */
@@ -1 +1 @@
1
- {"version":3,"file":"restSink.service.d.ts","sourceRoot":"","sources":["restSink.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAI7D,OAAO,EAAC,qBAAqB,EAAC,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAC,gBAAgB,EAAU,MAAM,8BAA8B,CAAC;AAEvE;;GAEG;AACH,qBACa,eAAgB,YAAW,IAAI;IAoB5B,OAAO,CAAC,UAAU;IACU,OAAO,CAAC,WAAW;IAjB3D;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAkB;IAE3C;;OAEG;IACH,OAAO,CAAC,KAAK,CAAiB;IAE9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAS;gBAGH,UAAU,EAAE,qBAAqB,EACL,WAAW,EAAE,gBAAgB;IAU7E;;OAEG;IACI,WAAW;IAYlB;;;OAGG;IACI,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE;IA+C9B;;OAEG;IACI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAS3B"}
1
+ {"version":3,"file":"restSink.service.d.ts","sourceRoot":"","sources":["restSink.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAG7D,OAAO,EAAC,qBAAqB,EAAC,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAC,gBAAgB,EAAU,MAAM,8BAA8B,CAAC;AAEvE;;GAEG;AACH,qBACa,eAAgB,YAAW,IAAI;IAoB5B,OAAO,CAAC,UAAU;IAEU,OAAO,CAAC,WAAW;IAlB3D;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAkB;IAE3C;;OAEG;IACH,OAAO,CAAC,KAAK,CAAiB;IAE9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAS;gBAGH,UAAU,EAAE,qBAAqB,EACrB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,EACP,WAAW,EAAE,gBAAgB;IAa7E;;OAEG;IACI,WAAW;IAYlB;;;OAGG;IACI,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE;IA+C9B;;OAEG;IACI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAS3B"}
package/version.bak CHANGED
@@ -1 +1 @@
1
- 8.0.0-beta.20211025062425
1
+ 8.0.0-beta.20211126112741