@osovitny/anatoly 2.1.13 → 2.14.1

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 (164) hide show
  1. package/assets/styles/alerts.less +182 -0
  2. package/assets/styles/spinner.less +64 -0
  3. package/assets/styles/toastr.less +192 -0
  4. package/esm2020/lib/core/convert.mjs +62 -0
  5. package/esm2020/lib/core/core.module.mjs +72 -0
  6. package/esm2020/lib/core/go/base-go.service.mjs +41 -0
  7. package/esm2020/lib/core/guid.mjs +22 -0
  8. package/esm2020/lib/core/interceptors/httpInterceptor.mjs +108 -0
  9. package/esm2020/lib/core/localization/localization.module.mjs +47 -0
  10. package/esm2020/lib/core/localization/localization.service.mjs +185 -0
  11. package/esm2020/lib/core/localization/localizationSettings.module.mjs +88 -0
  12. package/esm2020/lib/core/localization/localize.pipe.mjs +78 -0
  13. package/esm2020/lib/core/logging/globalErrorHandler.mjs +44 -0
  14. package/esm2020/lib/core/logging/logging.service.mjs +39 -0
  15. package/esm2020/lib/core/notifications/services/notification-service.mjs +228 -0
  16. package/esm2020/lib/core/services/appcontext.service.mjs +118 -0
  17. package/esm2020/lib/core/services/dm.service.mjs +72 -0
  18. package/esm2020/lib/core/services/google-analytics.service.mjs +54 -0
  19. package/{esm2015/lib/core/services/idle.service.js → esm2020/lib/core/services/idle.service.mjs} +9 -7
  20. package/{esm2015/lib/core/services/loading.service.js → esm2020/lib/core/services/loading.service.mjs} +9 -8
  21. package/esm2020/lib/core/services/web-storage.service.mjs +69 -0
  22. package/esm2020/lib/core/subs.mjs +31 -0
  23. package/esm2020/lib/core/utils.mjs +82 -0
  24. package/esm2020/lib/data/base/base-api.service.mjs +89 -0
  25. package/esm2020/lib/data/base/grid/base-grid-edit.service.mjs +77 -0
  26. package/esm2020/lib/data/base/grid/base-grid-read.service.mjs +62 -0
  27. package/esm2020/lib/data/data.module.mjs +51 -0
  28. package/esm2020/lib/data/services/billing-api.service.mjs +65 -0
  29. package/esm2020/lib/data/services/notifications/notifications-api-service.mjs +43 -0
  30. package/esm2020/lib/ui/components/base-edit.component.mjs +143 -0
  31. package/esm2020/lib/ui/components/base.component.mjs +47 -0
  32. package/esm2020/lib/ui/components/base.dialog.mjs +49 -0
  33. package/esm2020/lib/ui/components/billing/buyaccess-button.component.mjs +69 -0
  34. package/esm2020/lib/ui/components/billing/subscribe-plan-button.component.mjs +63 -0
  35. package/esm2020/lib/ui/components/billing/upgrade-plan-button.component.mjs +53 -0
  36. package/esm2020/lib/ui/components/content-header/content-header.component.mjs +37 -0
  37. package/esm2020/lib/ui/components/html-editor/base-html-editor.component.mjs +111 -0
  38. package/esm2020/lib/ui/components/html-editor/forms-html-editor.component.mjs +48 -0
  39. package/esm2020/lib/ui/components/html-editor/html-editor.component.mjs +52 -0
  40. package/esm2020/lib/ui/components/identity/signin-button.component.mjs +32 -0
  41. package/esm2020/lib/ui/components/identity/signout-button.component.mjs +32 -0
  42. package/esm2020/lib/ui/components/identity/signup-button.component.mjs +31 -0
  43. package/esm2020/lib/ui/components/loading/loading.component.mjs +48 -0
  44. package/esm2020/lib/ui/components/spinner/spinner.component.mjs +74 -0
  45. package/esm2020/lib/ui/directives/native-element.directive.mjs +41 -0
  46. package/esm2020/lib/ui/pipes/filesize.pipe.mjs +45 -0
  47. package/esm2020/lib/ui/pipes/replace-text.pipe.mjs +40 -0
  48. package/esm2020/lib/ui/pipes/safeHtml.pipe.mjs +37 -0
  49. package/esm2020/lib/ui/ui.module.mjs +155 -0
  50. package/esm2020/lib/ui/validation/form-validation-summary.component.mjs +66 -0
  51. package/esm2020/lib/ui/validation/item-validation-summary.component.mjs +39 -0
  52. package/esm2020/lib/ui/validation/validation-summary.component.mjs +128 -0
  53. package/fesm2015/{osovitny-anatoly.js → osovitny-anatoly.mjs} +823 -765
  54. package/fesm2015/osovitny-anatoly.mjs.map +1 -0
  55. package/fesm2020/osovitny-anatoly.mjs +3496 -0
  56. package/fesm2020/osovitny-anatoly.mjs.map +1 -0
  57. package/{osovitny-anatoly.d.ts → index.d.ts} +1 -0
  58. package/lib/core/core.module.d.ts +5 -0
  59. package/lib/core/go/base-go.service.d.ts +3 -0
  60. package/lib/core/interceptors/httpInterceptor.d.ts +3 -0
  61. package/lib/core/localization/localization.module.d.ts +6 -0
  62. package/lib/core/localization/localization.service.d.ts +3 -0
  63. package/lib/core/localization/localizationSettings.module.d.ts +5 -0
  64. package/lib/core/localization/localize.pipe.d.ts +3 -0
  65. package/lib/core/logging/globalErrorHandler.d.ts +3 -0
  66. package/lib/core/logging/logging.service.d.ts +3 -0
  67. package/lib/core/notifications/services/notification-service.d.ts +3 -0
  68. package/lib/core/services/appcontext.service.d.ts +5 -2
  69. package/lib/core/services/dm.service.d.ts +3 -0
  70. package/lib/core/services/google-analytics.service.d.ts +3 -0
  71. package/lib/core/services/idle.service.d.ts +3 -0
  72. package/lib/core/services/loading.service.d.ts +3 -0
  73. package/lib/core/services/web-storage.service.d.ts +5 -0
  74. package/lib/data/base/base-api.service.d.ts +3 -0
  75. package/lib/data/base/grid/base-grid-edit.service.d.ts +3 -0
  76. package/lib/data/base/grid/base-grid-read.service.d.ts +3 -0
  77. package/lib/data/data.module.d.ts +5 -0
  78. package/lib/data/services/billing-api.service.d.ts +3 -0
  79. package/lib/data/services/notifications/notifications-api-service.d.ts +3 -0
  80. package/lib/ui/components/base-edit.component.d.ts +5 -2
  81. package/lib/ui/components/base.component.d.ts +3 -0
  82. package/lib/ui/components/base.dialog.d.ts +3 -0
  83. package/lib/ui/components/billing/buyaccess-button.component.d.ts +3 -0
  84. package/lib/ui/components/billing/subscribe-plan-button.component.d.ts +3 -0
  85. package/lib/ui/components/billing/upgrade-plan-button.component.d.ts +3 -0
  86. package/lib/ui/components/content-header/content-header.component.d.ts +3 -0
  87. package/lib/ui/components/html-editor/base-html-editor.component.d.ts +3 -0
  88. package/lib/ui/components/html-editor/forms-html-editor.component.d.ts +3 -0
  89. package/lib/ui/components/html-editor/html-editor.component.d.ts +3 -0
  90. package/lib/ui/components/identity/signin-button.component.d.ts +3 -0
  91. package/lib/ui/components/identity/signout-button.component.d.ts +3 -0
  92. package/lib/ui/components/identity/signup-button.component.d.ts +3 -0
  93. package/lib/ui/components/loading/loading.component.d.ts +3 -0
  94. package/lib/ui/components/spinner/spinner.component.d.ts +3 -0
  95. package/lib/ui/directives/native-element.directive.d.ts +3 -0
  96. package/lib/ui/pipes/filesize.pipe.d.ts +3 -0
  97. package/lib/ui/pipes/replace-text.pipe.d.ts +3 -0
  98. package/lib/ui/pipes/safeHtml.pipe.d.ts +3 -0
  99. package/lib/ui/ui.module.d.ts +24 -0
  100. package/lib/ui/validation/form-validation-summary.component.d.ts +3 -0
  101. package/lib/ui/validation/item-validation-summary.component.d.ts +3 -0
  102. package/lib/ui/validation/validation-summary.component.d.ts +3 -0
  103. package/package.json +23 -11
  104. package/bundles/osovitny-anatoly.umd.js +0 -3696
  105. package/bundles/osovitny-anatoly.umd.js.map +0 -1
  106. package/esm2015/lib/core/convert.js +0 -65
  107. package/esm2015/lib/core/core.module.js +0 -43
  108. package/esm2015/lib/core/go/base-go.service.js +0 -42
  109. package/esm2015/lib/core/guid.js +0 -25
  110. package/esm2015/lib/core/interceptors/httpInterceptor.js +0 -109
  111. package/esm2015/lib/core/localization/localization.module.js +0 -41
  112. package/esm2015/lib/core/localization/localization.service.js +0 -187
  113. package/esm2015/lib/core/localization/localizationSettings.module.js +0 -78
  114. package/esm2015/lib/core/localization/localize.pipe.js +0 -78
  115. package/esm2015/lib/core/logging/globalErrorHandler.js +0 -44
  116. package/esm2015/lib/core/logging/logging.service.js +0 -38
  117. package/esm2015/lib/core/notifications/services/notification-service.js +0 -230
  118. package/esm2015/lib/core/services/appcontext.service.js +0 -118
  119. package/esm2015/lib/core/services/dm.service.js +0 -74
  120. package/esm2015/lib/core/services/google-analytics.service.js +0 -53
  121. package/esm2015/lib/core/services/web-storage.service.js +0 -66
  122. package/esm2015/lib/core/subs.js +0 -34
  123. package/esm2015/lib/core/utils.js +0 -84
  124. package/esm2015/lib/data/base/base-api.service.js +0 -89
  125. package/esm2015/lib/data/base/grid/base-grid-edit.service.js +0 -77
  126. package/esm2015/lib/data/base/grid/base-grid-read.service.js +0 -62
  127. package/esm2015/lib/data/data.module.js +0 -43
  128. package/esm2015/lib/data/services/billing-api.service.js +0 -65
  129. package/esm2015/lib/data/services/notifications/notifications-api-service.js +0 -45
  130. package/esm2015/lib/ui/components/base-edit.component.js +0 -142
  131. package/esm2015/lib/ui/components/base.component.js +0 -43
  132. package/esm2015/lib/ui/components/base.dialog.js +0 -47
  133. package/esm2015/lib/ui/components/billing/buyaccess-button.component.js +0 -71
  134. package/esm2015/lib/ui/components/billing/subscribe-plan-button.component.js +0 -63
  135. package/esm2015/lib/ui/components/billing/upgrade-plan-button.component.js +0 -54
  136. package/esm2015/lib/ui/components/content-header/content-header.component.js +0 -37
  137. package/esm2015/lib/ui/components/html-editor/base-html-editor.component.js +0 -108
  138. package/esm2015/lib/ui/components/html-editor/forms-html-editor.component.js +0 -44
  139. package/esm2015/lib/ui/components/html-editor/html-editor.component.js +0 -51
  140. package/esm2015/lib/ui/components/identity/signin-button.component.js +0 -33
  141. package/esm2015/lib/ui/components/identity/signout-button.component.js +0 -33
  142. package/esm2015/lib/ui/components/identity/signup-button.component.js +0 -31
  143. package/esm2015/lib/ui/components/loading/loading.component.js +0 -49
  144. package/esm2015/lib/ui/components/spinner/spinner.component.js +0 -73
  145. package/esm2015/lib/ui/directives/native-element.directive.js +0 -41
  146. package/esm2015/lib/ui/pipes/filesize.pipe.js +0 -41
  147. package/esm2015/lib/ui/pipes/replace-text.pipe.js +0 -36
  148. package/esm2015/lib/ui/pipes/safeHtml.pipe.js +0 -36
  149. package/esm2015/lib/ui/ui.module.js +0 -105
  150. package/esm2015/lib/ui/validation/form-validation-summary.component.js +0 -64
  151. package/esm2015/lib/ui/validation/item-validation-summary.component.js +0 -38
  152. package/esm2015/lib/ui/validation/validation-summary.component.js +0 -126
  153. package/fesm2015/osovitny-anatoly.js.map +0 -1
  154. package/osovitny-anatoly.metadata.json +0 -1
  155. /package/{esm2015/lib/core/consts/settings.js → esm2020/lib/core/consts/settings.mjs} +0 -0
  156. /package/{esm2015/lib/core/consts/urls.js → esm2020/lib/core/consts/urls.mjs} +0 -0
  157. /package/{esm2015/lib/core/guards/once-import.guard.js → esm2020/lib/core/guards/once-import.guard.mjs} +0 -0
  158. /package/{esm2015/lib/core/localization/utils.js → esm2020/lib/core/localization/utils.mjs} +0 -0
  159. /package/{esm2015/lib/core/notifications/alerts.js → esm2020/lib/core/notifications/alerts.mjs} +0 -0
  160. /package/{esm2015/lib/core/notifications/interfaces/notification.js → esm2020/lib/core/notifications/interfaces/notification.mjs} +0 -0
  161. /package/{esm2015/lib/data/consts.js → esm2020/lib/data/consts.mjs} +0 -0
  162. /package/{esm2015/lib/ui/components/html-editor/html-editor.defaultoptions.js → esm2020/lib/ui/components/html-editor/html-editor.defaultoptions.mjs} +0 -0
  163. /package/{esm2015/osovitny-anatoly.js → esm2020/osovitny-anatoly.mjs} +0 -0
  164. /package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
@@ -60,11 +60,12 @@ export class LoadingService extends BehaviorSubject {
60
60
  this.counter = 0;
61
61
  }
62
62
  }
63
- LoadingService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LoadingService_Factory() { return new LoadingService(); }, token: LoadingService, providedIn: "root" });
64
- LoadingService.decorators = [
65
- { type: Injectable, args: [{
66
- providedIn: "root",
67
- },] }
68
- ];
69
- LoadingService.ctorParameters = () => [];
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL2NvcmUvc2VydmljZXMvbG9hZGluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE1BQU07QUFDTixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUt2QyxNQUFNLE9BQU8sY0FBZSxTQUFRLGVBQXdCO0lBTTFEO1FBQ0UsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBTlAsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUVwQixRQUFRO1FBQ0QsY0FBUyxHQUFHLEtBQUssQ0FBQztJQUl6QixDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVmLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztRQUNoQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBRTtnQkFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNqQjtRQUNILENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRTtZQUNyQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFZixJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbEI7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQWtCLElBQUk7UUFDM0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFFdEIsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN6QixDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUU7WUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNsQjtRQUVELElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLENBQUM7Ozs7WUFuREYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueVxyXG4gICAgQW5hdG9seSBPc292aXRueVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjYgSnVuIDIwMjBcclxuXHJcbiAgVmVyc2lvbjpcclxuICAgIDEuMFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vUnhKc1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9hZGluZ1NlcnZpY2UgZXh0ZW5kcyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4ge1xyXG4gIHByaXZhdGUgY291bnRlciA9IDA7XHJcblxyXG4gIC8vUHVibGljXHJcbiAgcHVibGljIGlzRnJlZXplZCA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKGZhbHNlKTtcclxuICB9XHJcblxyXG4gIHNob3coKSB7XHJcbiAgICB0aGlzLmNvdW50ZXIrKztcclxuXHJcbiAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKHRoYXQuY291bnRlciA+IDApIHtcclxuICAgICAgICB0aGF0Lm5leHQodHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0sIDUwMCk7XHJcbiAgfVxyXG5cclxuICBoaWRlKCkge1xyXG4gICAgaWYgKHRoaXMuY291bnRlciA8PSAwKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvdW50ZXItLTtcclxuXHJcbiAgICBpZiAodGhpcy5jb3VudGVyID09IDApIHtcclxuICAgICAgdGhpcy5uZXh0KGZhbHNlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZyZWV6ZSh0aW1lb3V0OiBudW1iZXIgPSAxMDAwKSB7XHJcbiAgICB0aGlzLmlzRnJlZXplZCA9IHRydWU7XHJcblxyXG4gICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuaXNGcmVlemVkID0gZmFsc2U7XHJcbiAgICB9LCB0aW1lb3V0KTtcclxuICB9XHJcblxyXG4gIHJlc2V0KCkge1xyXG4gICAgaWYgKHRoaXMuY291bnRlciA+IDApIHtcclxuICAgICAgdGhpcy5uZXh0KGZhbHNlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvdW50ZXIgPSAwO1xyXG4gIH1cclxufVxyXG4iXX0=
63
+ LoadingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: LoadingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
64
+ LoadingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: LoadingService, providedIn: "root" });
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: LoadingService, decorators: [{
66
+ type: Injectable,
67
+ args: [{
68
+ providedIn: "root",
69
+ }]
70
+ }], ctorParameters: function () { return []; } });
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL2NvcmUvc2VydmljZXMvbG9hZGluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE1BQU07QUFDTixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUt2QyxNQUFNLE9BQU8sY0FBZSxTQUFRLGVBQXdCO0lBTTFEO1FBQ0UsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBTlAsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUVwQixRQUFRO1FBQ0QsY0FBUyxHQUFHLEtBQUssQ0FBQztJQUl6QixDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVmLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztRQUNoQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBRTtnQkFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNqQjtRQUNILENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRTtZQUNyQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFZixJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbEI7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQWtCLElBQUk7UUFDM0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFFdEIsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN6QixDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUU7WUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNsQjtRQUVELElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLENBQUM7OzJHQWhEVSxjQUFjOytHQUFkLGNBQWMsY0FGYixNQUFNOzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueVxyXG4gICAgQW5hdG9seSBPc292aXRueVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjYgSnVuIDIwMjBcclxuXHJcbiAgVmVyc2lvbjpcclxuICAgIDEuMFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vUnhKc1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9hZGluZ1NlcnZpY2UgZXh0ZW5kcyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4ge1xyXG4gIHByaXZhdGUgY291bnRlciA9IDA7XHJcblxyXG4gIC8vUHVibGljXHJcbiAgcHVibGljIGlzRnJlZXplZCA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKGZhbHNlKTtcclxuICB9XHJcblxyXG4gIHNob3coKSB7XHJcbiAgICB0aGlzLmNvdW50ZXIrKztcclxuXHJcbiAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKHRoYXQuY291bnRlciA+IDApIHtcclxuICAgICAgICB0aGF0Lm5leHQodHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0sIDUwMCk7XHJcbiAgfVxyXG5cclxuICBoaWRlKCkge1xyXG4gICAgaWYgKHRoaXMuY291bnRlciA8PSAwKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvdW50ZXItLTtcclxuXHJcbiAgICBpZiAodGhpcy5jb3VudGVyID09IDApIHtcclxuICAgICAgdGhpcy5uZXh0KGZhbHNlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZyZWV6ZSh0aW1lb3V0OiBudW1iZXIgPSAxMDAwKSB7XHJcbiAgICB0aGlzLmlzRnJlZXplZCA9IHRydWU7XHJcblxyXG4gICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuaXNGcmVlemVkID0gZmFsc2U7XHJcbiAgICB9LCB0aW1lb3V0KTtcclxuICB9XHJcblxyXG4gIHJlc2V0KCkge1xyXG4gICAgaWYgKHRoaXMuY291bnRlciA+IDApIHtcclxuICAgICAgdGhpcy5uZXh0KGZhbHNlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvdW50ZXIgPSAwO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,69 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 26 Jun 2020
12
+
13
+ Version:
14
+ 1.0
15
+
16
+ Copyright (c) 2016-2021 Osovitny Inc. All rights reserved.
17
+ </file>
18
+ */
19
+ //Node
20
+ import { Injectable } from '@angular/core';
21
+ import * as i0 from "@angular/core";
22
+ class WebStorageService {
23
+ constructor(storage) {
24
+ this.storage =
25
+ storage === 'local' || storage === 'localStorage'
26
+ ? localStorage
27
+ : sessionStorage;
28
+ }
29
+ setItem(key, value) {
30
+ this.storage.setItem(key, value);
31
+ }
32
+ setObject(key, value) {
33
+ this.storage.setItem(key, JSON.stringify(value));
34
+ }
35
+ getItem(key) {
36
+ return this.storage.getItem(key);
37
+ }
38
+ getObject(key) {
39
+ let value = this.storage.getItem(key);
40
+ if (!value) {
41
+ return null;
42
+ }
43
+ return JSON.parse(value);
44
+ }
45
+ remove(key) {
46
+ this.storage.removeItem(key);
47
+ }
48
+ }
49
+ export class LocalStorageService extends WebStorageService {
50
+ constructor() {
51
+ super('localStorage');
52
+ }
53
+ }
54
+ LocalStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
55
+ LocalStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: LocalStorageService });
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: LocalStorageService, decorators: [{
57
+ type: Injectable
58
+ }], ctorParameters: function () { return []; } });
59
+ export class SessionStorageService extends WebStorageService {
60
+ constructor() {
61
+ super('sessionStorage');
62
+ }
63
+ }
64
+ SessionStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: SessionStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
65
+ SessionStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: SessionStorageService });
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: SessionStorageService, decorators: [{
67
+ type: Injectable
68
+ }], ctorParameters: function () { return []; } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViLXN0b3JhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL3dlYi1zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBS3pDLE1BQU0saUJBQWlCO0lBR3JCLFlBQVksT0FBZTtRQUN6QixJQUFJLENBQUMsT0FBTztZQUNWLE9BQU8sS0FBSyxPQUFPLElBQUksT0FBTyxLQUFLLGNBQWM7Z0JBQy9DLENBQUMsQ0FBQyxZQUFZO2dCQUNkLENBQUMsQ0FBQyxjQUFjLENBQUM7SUFDdkIsQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSztRQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFHLEVBQUUsS0FBSztRQUNsQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxPQUFPLENBQUMsR0FBRztRQUNULE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFHO1FBQ1gsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFHO1FBQ1IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0IsQ0FBQztDQUNGO0FBR0QsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGlCQUFpQjtJQUN4RDtRQUNFLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4QixDQUFDOztnSEFIVSxtQkFBbUI7b0hBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVOztBQVFYLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxpQkFBaUI7SUFDMUQ7UUFDRSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUMxQixDQUFDOztrSEFIVSxxQkFBcUI7c0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueVxyXG4gICAgQW5hdG9seSBPc292aXRueVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjYgSnVuIDIwMjBcclxuXHJcbiAgVmVyc2lvbjpcclxuICAgIDEuMFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHtBcHBDb3JlU2V0dGluZ3N9IGZyb20gJy4uL2NvbnN0cy9zZXR0aW5ncyc7XHJcblxyXG5jbGFzcyBXZWJTdG9yYWdlU2VydmljZSB7XHJcbiAgc3RvcmFnZTogYW55O1xyXG5cclxuICBjb25zdHJ1Y3RvcihzdG9yYWdlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc3RvcmFnZSA9XHJcbiAgICAgIHN0b3JhZ2UgPT09ICdsb2NhbCcgfHwgc3RvcmFnZSA9PT0gJ2xvY2FsU3RvcmFnZSdcclxuICAgICAgICA/IGxvY2FsU3RvcmFnZVxyXG4gICAgICAgIDogc2Vzc2lvblN0b3JhZ2U7XHJcbiAgfVxyXG5cclxuICBzZXRJdGVtKGtleSwgdmFsdWUpIHtcclxuICAgIHRoaXMuc3RvcmFnZS5zZXRJdGVtKGtleSwgdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgc2V0T2JqZWN0KGtleSwgdmFsdWUpIHtcclxuICAgIHRoaXMuc3RvcmFnZS5zZXRJdGVtKGtleSwgSlNPTi5zdHJpbmdpZnkodmFsdWUpKTtcclxuICB9XHJcblxyXG4gIGdldEl0ZW0oa2V5KSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlLmdldEl0ZW0oa2V5KTtcclxuICB9XHJcblxyXG4gIGdldE9iamVjdChrZXkpIHtcclxuICAgIGxldCB2YWx1ZSA9IHRoaXMuc3RvcmFnZS5nZXRJdGVtKGtleSk7XHJcbiAgICBpZiAoIXZhbHVlKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBKU09OLnBhcnNlKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZShrZXkpIHtcclxuICAgIHRoaXMuc3RvcmFnZS5yZW1vdmVJdGVtKGtleSk7XHJcbiAgfVxyXG59XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBMb2NhbFN0b3JhZ2VTZXJ2aWNlIGV4dGVuZHMgV2ViU3RvcmFnZVNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoJ2xvY2FsU3RvcmFnZScpO1xyXG4gIH1cclxufVxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlIGV4dGVuZHMgV2ViU3RvcmFnZVNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoJ3Nlc3Npb25TdG9yYWdlJyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,31 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 26 Jun 2020
12
+
13
+ Copyright (c) 2016-2021 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ export class Subs {
17
+ constructor() {
18
+ this.subs = [];
19
+ }
20
+ add(...subscriptions) {
21
+ this.subs = this.subs.concat(subscriptions);
22
+ }
23
+ set sink(subscription) {
24
+ this.subs.push(subscription);
25
+ }
26
+ unsubscribe() {
27
+ this.subs.forEach((sub) => sub && sub.unsubscribe());
28
+ this.subs = [];
29
+ }
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vicy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9jb3JlL3N1YnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFJRixNQUFNLE9BQU8sSUFBSTtJQUdmO1FBRlEsU0FBSSxHQUFtQixFQUFFLENBQUM7SUFFbkIsQ0FBQztJQUVoQixHQUFHLENBQUMsR0FBRyxhQUE2QjtRQUNsQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFJLElBQUksQ0FBQyxZQUEwQjtRQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7SUFDakIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueVxyXG4gICAgQW5hdG9seSBPc292aXRueVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjYgSnVuIDIwMjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjEgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XHJcblxyXG5leHBvcnQgY2xhc3MgU3VicyB7XHJcbiAgcHJpdmF0ZSBzdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIGFkZCguLi5zdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSkge1xyXG4gICAgdGhpcy5zdWJzID0gdGhpcy5zdWJzLmNvbmNhdChzdWJzY3JpcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHNldCBzaW5rKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uKSB7XHJcbiAgICB0aGlzLnN1YnMucHVzaChzdWJzY3JpcHRpb24pO1xyXG4gIH1cclxuXHJcbiAgdW5zdWJzY3JpYmUoKSB7XHJcbiAgICB0aGlzLnN1YnMuZm9yRWFjaCgoc3ViKSA9PiBzdWIgJiYgc3ViLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgdGhpcy5zdWJzID0gW107XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,82 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 19 March 2020
12
+
13
+ Copyright (c) 2016-2021 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ export class Utils {
17
+ static getValueByNameInQS(name) {
18
+ return Utils.getValueByName(location.search, name);
19
+ }
20
+ static getValueByName(url, name) {
21
+ name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
22
+ // tslint:disable-next-line:one-variable-per-declaration
23
+ const regex = new RegExp('[\\?&]' + name + '=([^&#]*)'), results = regex.exec(url);
24
+ return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
25
+ }
26
+ static copyToClipBoard(event, val) {
27
+ event.preventDefault();
28
+ const selBox = document.createElement('textarea');
29
+ selBox.style.position = 'fixed';
30
+ selBox.style.left = '0';
31
+ selBox.style.top = '0';
32
+ selBox.style.opacity = '0';
33
+ selBox.value = val;
34
+ document.body.appendChild(selBox);
35
+ selBox.focus();
36
+ selBox.select();
37
+ document.execCommand('copy');
38
+ document.body.removeChild(selBox);
39
+ }
40
+ static downloadFile(name, url) {
41
+ const link = document.createElement('a');
42
+ link.download = name;
43
+ link.href = url;
44
+ link.click();
45
+ }
46
+ static downloadBlobFile(value, fileName) {
47
+ const nav = window.navigator;
48
+ if (nav.msSaveOrOpenBlob) {
49
+ nav.msSaveOrOpenBlob(value, fileName);
50
+ }
51
+ else {
52
+ const downloadURL = window.URL.createObjectURL(value);
53
+ Utils.downloadFile(fileName, downloadURL);
54
+ }
55
+ }
56
+ /*
57
+ Author:
58
+ https://medium.com/@mhagemann/the-ultimate-way-to-slugify-a-url-string-in-javascript-b8e4a0d849e1
59
+ */
60
+ static slugify(text, prefix = '', postfix = '') {
61
+ const a = 'àáâäæãåāăąçćčđďèéêëēėęěğǵḧîïíīįìłḿñńǹňôöòóœøōõőṕŕřßśšşșťțûüùúūǘůűųẃẍÿýžźż·/_,:;';
62
+ const b = 'aaaaaaaaaacccddeeeeeeeegghiiiiiilmnnnnoooooooooprrsssssttuuuuuuuuuwxyyzzz------';
63
+ const p = new RegExp(a.split('').join('|'), 'g');
64
+ /*
65
+ https://css-tricks.com/snippets/javascript/strip-html-tags-in-javascript/
66
+ https://stackoverflow.com/questions/822452/strip-html-from-text-javascript
67
+ */
68
+ text = text.replace(/(<([^>]+)>)/gi, '');
69
+ let result = text
70
+ .toString()
71
+ .toLowerCase()
72
+ .replace(/\s+/g, '-') // Replace spaces with -
73
+ .replace(p, c => b.charAt(a.indexOf(c))) // Replace special characters
74
+ .replace(/&/g, '-and-') // Replace & with 'and'
75
+ .replace(/[^\w\-]+/g, '') // Remove all non-word characters
76
+ .replace(/\-\-+/g, '-') // Replace multiple - with single -
77
+ .replace(/^-+/, '') // Trim - from start of text
78
+ .replace(/-+$/, ''); // Trim - from end of text
79
+ return prefix + result + postfix;
80
+ }
81
+ }
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvY29yZS91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU0sT0FBTyxLQUFLO0lBQ1QsTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQUk7UUFDbkMsT0FBTyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLElBQUk7UUFDcEMsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDMUQsd0RBQXdEO1FBQ3hELE1BQU0sS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLFFBQVEsR0FBRyxJQUFJLEdBQUcsV0FBVyxDQUFDLEVBRXZELE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLE9BQU8sT0FBTyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFTSxNQUFNLENBQUMsZUFBZSxDQUFDLEtBQVUsRUFBRSxHQUFXO1FBQ25ELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUV2QixNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUNoQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7UUFDeEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ3ZCLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUMzQixNQUFNLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQztRQUNuQixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEIsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFZLEVBQUUsR0FBVztRQUNsRCxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFFTSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBVyxFQUFFLFFBQWdCO1FBQzFELE1BQU0sR0FBRyxHQUFJLE1BQU0sQ0FBQyxTQUFpQixDQUFDO1FBRXRDLElBQUksR0FBRyxDQUFDLGdCQUFnQixFQUFFO1lBQ3hCLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7U0FDdkM7YUFBTTtZQUNMLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RELEtBQUssQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQzNDO0lBQ0gsQ0FBQztJQUVEOzs7TUFHRTtJQUNLLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBWSxFQUFFLFNBQWlCLEVBQUUsRUFBRSxVQUFrQixFQUFFO1FBQzNFLE1BQU0sQ0FBQyxHQUFHLGlGQUFpRixDQUFDO1FBQzVGLE1BQU0sQ0FBQyxHQUFHLGlGQUFpRixDQUFDO1FBQzVGLE1BQU0sQ0FBQyxHQUFHLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRWpEOzs7VUFHRTtRQUNGLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV6QyxJQUFJLE1BQU0sR0FBRyxJQUFJO2FBQ2QsUUFBUSxFQUFFO2FBQ1YsV0FBVyxFQUFFO2FBQ2IsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyx3QkFBd0I7YUFDN0MsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsNkJBQTZCO2FBQ3JFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsdUJBQXVCO2FBQzlDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUMsaUNBQWlDO2FBQzFELE9BQU8sQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsbUNBQW1DO2FBQzFELE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsNEJBQTRCO2FBQy9DLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQywwQkFBMEI7UUFFakQsT0FBTyxNQUFNLEdBQUcsTUFBTSxHQUFHLE9BQU8sQ0FBQztJQUNuQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55XHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55XHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAxOSBNYXJjaCAyMDIwXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIxIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuZXhwb3J0IGNsYXNzIFV0aWxzIHtcclxuICBwdWJsaWMgc3RhdGljIGdldFZhbHVlQnlOYW1lSW5RUyhuYW1lKSB7XHJcbiAgICByZXR1cm4gVXRpbHMuZ2V0VmFsdWVCeU5hbWUobG9jYXRpb24uc2VhcmNoLCBuYW1lKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0VmFsdWVCeU5hbWUodXJsLCBuYW1lKSB7XHJcbiAgICBuYW1lID0gbmFtZS5yZXBsYWNlKC9bXFxbXS8sICdcXFxcWycpLnJlcGxhY2UoL1tcXF1dLywgJ1xcXFxdJyk7XHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6b25lLXZhcmlhYmxlLXBlci1kZWNsYXJhdGlvblxyXG4gICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKCdbXFxcXD8mXScgKyBuYW1lICsgJz0oW14mI10qKScpLFxyXG5cclxuICAgIHJlc3VsdHMgPSByZWdleC5leGVjKHVybCk7XHJcbiAgICByZXR1cm4gcmVzdWx0cyA9PT0gbnVsbCA/ICcnIDogZGVjb2RlVVJJQ29tcG9uZW50KHJlc3VsdHNbMV0ucmVwbGFjZSgvXFwrL2csICcgJykpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBjb3B5VG9DbGlwQm9hcmQoZXZlbnQ6IGFueSwgdmFsOiBzdHJpbmcpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgY29uc3Qgc2VsQm94ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGV4dGFyZWEnKTtcclxuICAgIHNlbEJveC5zdHlsZS5wb3NpdGlvbiA9ICdmaXhlZCc7XHJcbiAgICBzZWxCb3guc3R5bGUubGVmdCA9ICcwJztcclxuICAgIHNlbEJveC5zdHlsZS50b3AgPSAnMCc7XHJcbiAgICBzZWxCb3guc3R5bGUub3BhY2l0eSA9ICcwJztcclxuICAgIHNlbEJveC52YWx1ZSA9IHZhbDtcclxuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2VsQm94KTtcclxuICAgIHNlbEJveC5mb2N1cygpO1xyXG4gICAgc2VsQm94LnNlbGVjdCgpO1xyXG4gICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2NvcHknKTtcclxuICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoc2VsQm94KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZG93bmxvYWRGaWxlKG5hbWU6IHN0cmluZywgdXJsOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcbiAgICBsaW5rLmRvd25sb2FkID0gbmFtZTtcclxuICAgIGxpbmsuaHJlZiA9IHVybDtcclxuICAgIGxpbmsuY2xpY2soKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZG93bmxvYWRCbG9iRmlsZSh2YWx1ZTogQmxvYiwgZmlsZU5hbWU6IHN0cmluZykge1xyXG4gICAgY29uc3QgbmF2ID0gKHdpbmRvdy5uYXZpZ2F0b3IgYXMgYW55KTtcclxuXHJcbiAgICBpZiAobmF2Lm1zU2F2ZU9yT3BlbkJsb2IpIHtcclxuICAgICAgbmF2Lm1zU2F2ZU9yT3BlbkJsb2IodmFsdWUsIGZpbGVOYW1lKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IGRvd25sb2FkVVJMID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwodmFsdWUpO1xyXG4gICAgICBVdGlscy5kb3dubG9hZEZpbGUoZmlsZU5hbWUsIGRvd25sb2FkVVJMKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICBBdXRob3I6IFxyXG4gICAgaHR0cHM6Ly9tZWRpdW0uY29tL0BtaGFnZW1hbm4vdGhlLXVsdGltYXRlLXdheS10by1zbHVnaWZ5LWEtdXJsLXN0cmluZy1pbi1qYXZhc2NyaXB0LWI4ZTRhMGQ4NDllMVxyXG4gICovXHJcbiAgcHVibGljIHN0YXRpYyBzbHVnaWZ5KHRleHQ6IHN0cmluZywgcHJlZml4OiBzdHJpbmcgPSAnJywgcG9zdGZpeDogc3RyaW5nID0gJycpIHtcclxuICAgIGNvbnN0IGEgPSAnw6DDocOiw6TDpsOjw6XEgcSDxIXDp8SHxI3EkcSPw6jDqcOqw6vEk8SXxJnEm8Sfx7XhuKfDrsOvw63Eq8Svw6zFguG4v8OxxYTHucWIw7TDtsOyw7PFk8O4xY3DtcWR4bmVxZXFmcOfxZvFocWfyJnFpcibw7vDvMO5w7rFq8eYxa/FscWz4bqD4bqNw7/DvcW+xbrFvMK3L18sOjsnO1xyXG4gICAgY29uc3QgYiA9ICdhYWFhYWFhYWFhY2NjZGRlZWVlZWVlZWdnaGlpaWlpaWxtbm5ubm9vb29vb29vb3BycnNzc3NzdHR1dXV1dXV1dXV3eHl5enp6LS0tLS0tJztcclxuICAgIGNvbnN0IHAgPSBuZXcgUmVnRXhwKGEuc3BsaXQoJycpLmpvaW4oJ3wnKSwgJ2cnKTtcclxuXHJcbiAgICAvKlxyXG4gICAgICBodHRwczovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2phdmFzY3JpcHQvc3RyaXAtaHRtbC10YWdzLWluLWphdmFzY3JpcHQvXHJcbiAgICAgIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzgyMjQ1Mi9zdHJpcC1odG1sLWZyb20tdGV4dC1qYXZhc2NyaXB0XHJcbiAgICAqL1xyXG4gICAgdGV4dCA9IHRleHQucmVwbGFjZSgvKDwoW14+XSspPikvZ2ksICcnKTtcclxuXHJcbiAgICBsZXQgcmVzdWx0ID0gdGV4dFxyXG4gICAgICAudG9TdHJpbmcoKVxyXG4gICAgICAudG9Mb3dlckNhc2UoKVxyXG4gICAgICAucmVwbGFjZSgvXFxzKy9nLCAnLScpIC8vIFJlcGxhY2Ugc3BhY2VzIHdpdGggLVxyXG4gICAgICAucmVwbGFjZShwLCBjID0+IGIuY2hhckF0KGEuaW5kZXhPZihjKSkpIC8vIFJlcGxhY2Ugc3BlY2lhbCBjaGFyYWN0ZXJzXHJcbiAgICAgIC5yZXBsYWNlKC8mL2csICctYW5kLScpIC8vIFJlcGxhY2UgJiB3aXRoICdhbmQnXHJcbiAgICAgIC5yZXBsYWNlKC9bXlxcd1xcLV0rL2csICcnKSAvLyBSZW1vdmUgYWxsIG5vbi13b3JkIGNoYXJhY3RlcnNcclxuICAgICAgLnJlcGxhY2UoL1xcLVxcLSsvZywgJy0nKSAvLyBSZXBsYWNlIG11bHRpcGxlIC0gd2l0aCBzaW5nbGUgLVxyXG4gICAgICAucmVwbGFjZSgvXi0rLywgJycpIC8vIFRyaW0gLSBmcm9tIHN0YXJ0IG9mIHRleHRcclxuICAgICAgLnJlcGxhY2UoLy0rJC8sICcnKTsgLy8gVHJpbSAtIGZyb20gZW5kIG9mIHRleHRcclxuXHJcbiAgICByZXR1cm4gcHJlZml4ICsgcmVzdWx0ICsgcG9zdGZpeDtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,89 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 13 Nov 2017
12
+
13
+ Version:
14
+ 1.0
15
+
16
+ Copyright (c) 2016-2021 Osovitny Inc. All rights reserved.
17
+ </file>
18
+ */
19
+ // Node
20
+ import { Injectable } from '@angular/core';
21
+ import { map } from 'rxjs/operators';
22
+ //App
23
+ import { AppCoreSettings } from '../../core/consts/settings';
24
+ import * as i0 from "@angular/core";
25
+ import * as i1 from "@angular/common/http";
26
+ export class BaseApiService {
27
+ constructor(http) {
28
+ this.http = http;
29
+ }
30
+ serializeParams(data) {
31
+ return data ? ('?' + $.param(data)) : '';
32
+ }
33
+ //api
34
+ get(action, data, responseType) {
35
+ if (!responseType) {
36
+ responseType = 'json';
37
+ }
38
+ var url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;
39
+ return this.http.get(url, { responseType: responseType }).pipe(map(res => res));
40
+ }
41
+ post(action, data, responseType) {
42
+ if (!responseType) {
43
+ responseType = 'text';
44
+ }
45
+ var url = `${this.baseUrl}/${action}`;
46
+ return this.http.post(url, data, { responseType: responseType });
47
+ }
48
+ postQS(action, data, responseType) {
49
+ if (!responseType) {
50
+ responseType = 'text';
51
+ }
52
+ var url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;
53
+ return this.http.post(url, null, { responseType: responseType });
54
+ }
55
+ delete(action, data, responseType) {
56
+ if (!responseType) {
57
+ responseType = 'text';
58
+ }
59
+ var url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;
60
+ return this.http.delete(url, { responseType: responseType });
61
+ }
62
+ //gets
63
+ getExternalTextFile(url) {
64
+ return this.http.get(url);
65
+ }
66
+ getExternalJsonFile(url) {
67
+ return this.http.get(url);
68
+ }
69
+ getJsonFile(fileName) {
70
+ const jsonsUrl = AppCoreSettings.jsonsUrl;
71
+ const jsonVersion = AppCoreSettings.jsonVersion;
72
+ const isCDNEnabled = AppCoreSettings.isCDNEnabled;
73
+ const cdnSasToken = AppCoreSettings.cdnSasToken;
74
+ let url = "";
75
+ if (isCDNEnabled) {
76
+ url = jsonsUrl + "/" + fileName + cdnSasToken;
77
+ }
78
+ else {
79
+ url = jsonsUrl + "/" + fileName + '?' + jsonVersion;
80
+ }
81
+ return this.http.get(url).pipe(map(res => res));
82
+ }
83
+ }
84
+ BaseApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BaseApiService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
85
+ BaseApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BaseApiService });
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BaseApiService, decorators: [{
87
+ type: Injectable
88
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9kYXRhL2Jhc2UvYmFzZS1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQkU7QUFFRixPQUFPO0FBQ1AsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUszQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsS0FBSztBQUNMLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBSzdELE1BQU0sT0FBTyxjQUFjO0lBR3pCLFlBQXNCLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7SUFDdEMsQ0FBQztJQUVPLGVBQWUsQ0FBQyxJQUFVO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsS0FBSztJQUNMLEdBQUcsQ0FBSSxNQUFjLEVBQUUsSUFBVSxFQUFFLFlBQWE7UUFDOUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNqQixZQUFZLEdBQUcsTUFBTSxDQUFDO1NBQ3ZCO1FBRUQsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDbkUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBSSxHQUFHLEVBQUUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQy9ELEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFJLEdBQUcsQ0FBQyxDQUNuQixDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksQ0FBQyxNQUFjLEVBQUUsSUFBVSxFQUFFLFlBQWE7UUFDNUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNqQixZQUFZLEdBQUcsTUFBTSxDQUFDO1NBQ3ZCO1FBRUQsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBYyxFQUFFLElBQVUsRUFBRSxZQUFhO1FBQzlDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsWUFBWSxHQUFHLE1BQU0sQ0FBQztTQUN2QjtRQUVELElBQUksR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ25FLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBYyxFQUFFLElBQVUsRUFBRSxZQUFhO1FBQzlDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsWUFBWSxHQUFHLE1BQU0sQ0FBQztTQUN2QjtRQUVELElBQUksR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ25FLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELE1BQU07SUFDTixtQkFBbUIsQ0FBQyxHQUFXO1FBQzdCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELG1CQUFtQixDQUFDLEdBQVc7UUFDN0IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsV0FBVyxDQUFDLFFBQWdCO1FBQzFCLE1BQU0sUUFBUSxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUM7UUFDMUMsTUFBTSxXQUFXLEdBQUcsZUFBZSxDQUFDLFdBQVcsQ0FBQztRQUNoRCxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsWUFBWSxDQUFDO1FBQ2xELE1BQU0sV0FBVyxHQUFHLGVBQWUsQ0FBQyxXQUFXLENBQUM7UUFDaEQsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBRWIsSUFBSSxZQUFZLEVBQUU7WUFDaEIsR0FBRyxHQUFHLFFBQVEsR0FBRyxHQUFHLEdBQUcsUUFBUSxHQUFHLFdBQVcsQ0FBQztTQUMvQzthQUNJO1lBQ0gsR0FBRyxHQUFHLFFBQVEsR0FBRyxHQUFHLEdBQUcsUUFBUSxHQUFHLEdBQUcsR0FBRyxXQUFXLENBQUM7U0FDckQ7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDNUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQVEsR0FBRyxDQUFDLENBQ3ZCLENBQUM7SUFDSixDQUFDOzsyR0EzRVUsY0FBYzsrR0FBZCxjQUFjOzJGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55XHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55XHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAgMTMgTm92IDIwMTdcclxuXHJcbiAgVmVyc2lvbjpcclxuICAgIDEuMFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vIE5vZGVcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5cclxuLy8gUnhKc1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IEFwcENvcmVTZXR0aW5ncyB9IGZyb20gJy4uLy4uL2NvcmUvY29uc3RzL3NldHRpbmdzJztcclxuXHJcbmRlY2xhcmUgdmFyICQ6IGFueTtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEJhc2VBcGlTZXJ2aWNlIHtcclxuICBwcm90ZWN0ZWQgYmFzZVVybDogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCkge1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXJpYWxpemVQYXJhbXMoZGF0YT86IGFueSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gZGF0YSA/ICgnPycgKyAkLnBhcmFtKGRhdGEpKSA6ICcnO1xyXG4gIH1cclxuXHJcbiAgLy9hcGlcclxuICBnZXQ8VD4oYWN0aW9uOiBzdHJpbmcsIGRhdGE/OiBhbnksIHJlc3BvbnNlVHlwZT8pOiBPYnNlcnZhYmxlPFQ+IHtcclxuICAgIGlmICghcmVzcG9uc2VUeXBlKSB7XHJcbiAgICAgIHJlc3BvbnNlVHlwZSA9ICdqc29uJztcclxuICAgIH1cclxuXHJcbiAgICB2YXIgdXJsID0gYCR7dGhpcy5iYXNlVXJsfS8ke2FjdGlvbn0ke3RoaXMuc2VyaWFsaXplUGFyYW1zKGRhdGEpfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxUPih1cmwsIHsgcmVzcG9uc2VUeXBlOiByZXNwb25zZVR5cGUgfSkucGlwZShcclxuICAgICAgbWFwKHJlcyA9PiA8VD5yZXMpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcG9zdChhY3Rpb246IHN0cmluZywgZGF0YT86IGFueSwgcmVzcG9uc2VUeXBlPyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBpZiAoIXJlc3BvbnNlVHlwZSkge1xyXG4gICAgICByZXNwb25zZVR5cGUgPSAndGV4dCc7XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIHVybCA9IGAke3RoaXMuYmFzZVVybH0vJHthY3Rpb259YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIGRhdGEsIHsgcmVzcG9uc2VUeXBlOiByZXNwb25zZVR5cGUgfSk7XHJcbiAgfVxyXG5cclxuICBwb3N0UVMoYWN0aW9uOiBzdHJpbmcsIGRhdGE/OiBhbnksIHJlc3BvbnNlVHlwZT8pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgaWYgKCFyZXNwb25zZVR5cGUpIHtcclxuICAgICAgcmVzcG9uc2VUeXBlID0gJ3RleHQnO1xyXG4gICAgfVxyXG5cclxuICAgIHZhciB1cmwgPSBgJHt0aGlzLmJhc2VVcmx9LyR7YWN0aW9ufSR7dGhpcy5zZXJpYWxpemVQYXJhbXMoZGF0YSl9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIG51bGwsIHsgcmVzcG9uc2VUeXBlOiByZXNwb25zZVR5cGUgfSk7XHJcbiAgfVxyXG5cclxuICBkZWxldGUoYWN0aW9uOiBzdHJpbmcsIGRhdGE/OiBhbnksIHJlc3BvbnNlVHlwZT8pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgaWYgKCFyZXNwb25zZVR5cGUpIHtcclxuICAgICAgcmVzcG9uc2VUeXBlID0gJ3RleHQnO1xyXG4gICAgfVxyXG5cclxuICAgIHZhciB1cmwgPSBgJHt0aGlzLmJhc2VVcmx9LyR7YWN0aW9ufSR7dGhpcy5zZXJpYWxpemVQYXJhbXMoZGF0YSl9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHVybCwgeyByZXNwb25zZVR5cGU6IHJlc3BvbnNlVHlwZSB9KTtcclxuICB9XHJcblxyXG4gIC8vZ2V0c1xyXG4gIGdldEV4dGVybmFsVGV4dEZpbGUodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKTtcclxuICB9XHJcblxyXG4gIGdldEV4dGVybmFsSnNvbkZpbGUodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKTtcclxuICB9XHJcblxyXG4gIGdldEpzb25GaWxlKGZpbGVOYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICBjb25zdCBqc29uc1VybCA9IEFwcENvcmVTZXR0aW5ncy5qc29uc1VybDtcclxuICAgIGNvbnN0IGpzb25WZXJzaW9uID0gQXBwQ29yZVNldHRpbmdzLmpzb25WZXJzaW9uO1xyXG4gICAgY29uc3QgaXNDRE5FbmFibGVkID0gQXBwQ29yZVNldHRpbmdzLmlzQ0RORW5hYmxlZDtcclxuICAgIGNvbnN0IGNkblNhc1Rva2VuID0gQXBwQ29yZVNldHRpbmdzLmNkblNhc1Rva2VuO1xyXG4gICAgbGV0IHVybCA9IFwiXCI7XHJcblxyXG4gICAgaWYgKGlzQ0RORW5hYmxlZCkge1xyXG4gICAgICB1cmwgPSBqc29uc1VybCArIFwiL1wiICsgZmlsZU5hbWUgKyBjZG5TYXNUb2tlbjtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB1cmwgPSBqc29uc1VybCArIFwiL1wiICsgZmlsZU5hbWUgKyAnPycgKyBqc29uVmVyc2lvbjtcclxuICAgIH0gICAgXHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKFxyXG4gICAgICBtYXAocmVzID0+IDxhbnlbXT5yZXMpXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,77 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 29 Apr 2018
12
+
13
+ Version:
14
+ 1.0
15
+
16
+ Copyright (c) 2016-2021 Osovitny Inc. All rights reserved.
17
+ </file>
18
+ */
19
+ //Node
20
+ import { Injectable } from "@angular/core";
21
+ import { map } from "rxjs/operators";
22
+ //App
23
+ import { BaseGridReadService } from "./base-grid-read.service";
24
+ import * as i0 from "@angular/core";
25
+ import * as i1 from "@angular/common/http";
26
+ export class BaseGridEditService extends BaseGridReadService {
27
+ constructor(http) {
28
+ super(http);
29
+ this.http = http;
30
+ }
31
+ reset() {
32
+ this.data = [];
33
+ }
34
+ resetItem(dataItem) {
35
+ if (!dataItem) {
36
+ return;
37
+ }
38
+ //find orignal data item
39
+ const originalDataItem = this.data.find(item => item.Id === dataItem.Id);
40
+ //revert changes
41
+ Object.assign(originalDataItem, dataItem);
42
+ super.next(this.data);
43
+ }
44
+ save(data, isNew, sucess) {
45
+ const action = isNew ? 'add' : 'update';
46
+ this.reset();
47
+ this.post(action, data).subscribe(() => {
48
+ }, () => {
49
+ this.read();
50
+ }, () => {
51
+ this.read();
52
+ if (sucess)
53
+ sucess();
54
+ });
55
+ }
56
+ delete(data, sucess) {
57
+ this.reset();
58
+ const url = `${this.baseUrl}/delete${this.serializeParams(data)}`;
59
+ return this.http.delete(url).subscribe(() => {
60
+ this.read();
61
+ if (sucess)
62
+ sucess();
63
+ }, () => {
64
+ this.read();
65
+ });
66
+ }
67
+ post(action, data) {
68
+ const url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;
69
+ return this.http.post(url, data).pipe(map(res => res));
70
+ }
71
+ }
72
+ BaseGridEditService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BaseGridEditService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
73
+ BaseGridEditService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BaseGridEditService });
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BaseGridEditService, decorators: [{
75
+ type: Injectable
76
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1ncmlkLWVkaXQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9kYXRhL2Jhc2UvZ3JpZC9iYXNlLWdyaWQtZWRpdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxLQUFLO0FBQ0wsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUcvRCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsbUJBQW1CO0lBRzFELFlBQXNCLElBQWdCO1FBQ3BDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQURRLFNBQUksR0FBSixJQUFJLENBQVk7SUFFdEMsQ0FBQztJQUVPLEtBQUs7UUFDWCxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsU0FBUyxDQUFDLFFBQWE7UUFDckIsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUFFLE9BQU87U0FBRTtRQUUxQix3QkFBd0I7UUFDeEIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXpFLGdCQUFnQjtRQUNoQixNQUFNLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLENBQUMsSUFBUyxFQUFFLEtBQWMsRUFBRSxNQUFpQjtRQUMvQyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1FBRXhDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FDL0IsR0FBRyxFQUFFO1FBQ0wsQ0FBQyxFQUNELEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUMsRUFDRCxHQUFHLEVBQUU7WUFDSCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDWixJQUFJLE1BQU07Z0JBQUUsTUFBTSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVMsRUFBRSxNQUFpQjtRQUNqQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFYixNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLFVBQVUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ2xFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUNwQyxHQUFHLEVBQUU7WUFDSCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDWixJQUFJLE1BQU07Z0JBQUUsTUFBTSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxFQUNELEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksQ0FBQyxNQUFXLEVBQUUsSUFBVTtRQUMxQixNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNyRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQ25DLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFRLEdBQUcsQ0FBQyxDQUN2QixDQUFDO0lBQ0osQ0FBQzs7Z0hBM0RVLG1CQUFtQjtvSEFBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55XHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55XHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAyOSBBcHIgMjAxOFxyXG5cclxuICBWZXJzaW9uOlxyXG4gICAgMS4wXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIxIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcblxyXG4vL1J4SnNcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgQmFzZUdyaWRSZWFkU2VydmljZSB9IGZyb20gXCIuL2Jhc2UtZ3JpZC1yZWFkLnNlcnZpY2VcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEJhc2VHcmlkRWRpdFNlcnZpY2UgZXh0ZW5kcyBCYXNlR3JpZFJlYWRTZXJ2aWNlIHtcclxuICBwcm90ZWN0ZWQgYmFzZVVybDogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgc3VwZXIoaHR0cCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlc2V0KCkge1xyXG4gICAgdGhpcy5kYXRhID0gW107XHJcbiAgfVxyXG5cclxuICByZXNldEl0ZW0oZGF0YUl0ZW06IGFueSkge1xyXG4gICAgaWYgKCFkYXRhSXRlbSkgeyByZXR1cm47IH1cclxuXHJcbiAgICAvL2ZpbmQgb3JpZ25hbCBkYXRhIGl0ZW1cclxuICAgIGNvbnN0IG9yaWdpbmFsRGF0YUl0ZW0gPSB0aGlzLmRhdGEuZmluZChpdGVtID0+IGl0ZW0uSWQgPT09IGRhdGFJdGVtLklkKTtcclxuXHJcbiAgICAvL3JldmVydCBjaGFuZ2VzXHJcbiAgICBPYmplY3QuYXNzaWduKG9yaWdpbmFsRGF0YUl0ZW0sIGRhdGFJdGVtKTtcclxuICAgIHN1cGVyLm5leHQodGhpcy5kYXRhKTtcclxuICB9XHJcblxyXG4gIHNhdmUoZGF0YTogYW55LCBpc05ldzogYm9vbGVhbiwgc3VjZXNzPzogRnVuY3Rpb24pIHtcclxuICAgIGNvbnN0IGFjdGlvbiA9IGlzTmV3ID8gJ2FkZCcgOiAndXBkYXRlJztcclxuXHJcbiAgICB0aGlzLnJlc2V0KCk7XHJcbiAgICB0aGlzLnBvc3QoYWN0aW9uLCBkYXRhKS5zdWJzY3JpYmUoXHJcbiAgICAgICgpID0+IHtcclxuICAgICAgfSxcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIHRoaXMucmVhZCgpO1xyXG4gICAgICB9LFxyXG4gICAgICAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5yZWFkKCk7XHJcbiAgICAgICAgaWYgKHN1Y2Vzcykgc3VjZXNzKCk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBkZWxldGUoZGF0YTogYW55LCBzdWNlc3M/OiBGdW5jdGlvbikge1xyXG4gICAgdGhpcy5yZXNldCgpO1xyXG5cclxuICAgIGNvbnN0IHVybCA9IGAke3RoaXMuYmFzZVVybH0vZGVsZXRlJHt0aGlzLnNlcmlhbGl6ZVBhcmFtcyhkYXRhKX1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUodXJsKS5zdWJzY3JpYmUoXHJcbiAgICAgICgpID0+IHtcclxuICAgICAgICB0aGlzLnJlYWQoKTtcclxuICAgICAgICBpZiAoc3VjZXNzKSBzdWNlc3MoKTtcclxuICAgICAgfSxcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIHRoaXMucmVhZCgpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcG9zdChhY3Rpb246IGFueSwgZGF0YT86IGFueSk6IE9ic2VydmFibGU8YW55W10+IHtcclxuICAgIGNvbnN0IHVybCA9IGAke3RoaXMuYmFzZVVybH0vJHthY3Rpb259JHt0aGlzLnNlcmlhbGl6ZVBhcmFtcyhkYXRhKX1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgZGF0YSkucGlwZShcclxuICAgICAgbWFwKHJlcyA9PiA8YW55W10+cmVzKVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,62 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 29 Apr 2018
12
+
13
+ Version:
14
+ 1.0
15
+
16
+ Copyright (c) 2016-2021 Osovitny Inc. All rights reserved.
17
+ </file>
18
+ */
19
+ //Node
20
+ import { Injectable } from "@angular/core";
21
+ //RxJs
22
+ import { BehaviorSubject } from "rxjs";
23
+ import { map } from "rxjs/operators";
24
+ import * as i0 from "@angular/core";
25
+ import * as i1 from "@angular/common/http";
26
+ export class BaseGridReadService extends BehaviorSubject {
27
+ constructor(http) {
28
+ super([]);
29
+ this.http = http;
30
+ this.data = [];
31
+ }
32
+ serializeParams(data) {
33
+ return data ? ('?' + $.param(data)) : '';
34
+ }
35
+ read(params, success, error) {
36
+ if (this.data.length) {
37
+ return super.next(this.data);
38
+ }
39
+ var url = this.baseReadUrl;
40
+ if (typeof params === 'undefined') {
41
+ params = this.savedReadParams;
42
+ }
43
+ if (params) {
44
+ url = this.baseReadUrl + `${this.serializeParams(params)}`;
45
+ this.savedReadParams = params;
46
+ }
47
+ this.http.get(url).pipe(map(res => res)).subscribe(data => {
48
+ super.next(data);
49
+ if (success)
50
+ success();
51
+ }, e => {
52
+ if (error)
53
+ error(e);
54
+ });
55
+ }
56
+ }
57
+ BaseGridReadService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BaseGridReadService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
58
+ BaseGridReadService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BaseGridReadService });
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BaseGridReadService, decorators: [{
60
+ type: Injectable
61
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1ncmlkLXJlYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9kYXRhL2Jhc2UvZ3JpZC9iYXNlLWdyaWQtcmVhZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE1BQU07QUFDTixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBS3JDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxlQUFzQjtJQUs3RCxZQUFzQixJQUFnQjtRQUNwQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFEVSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBSjVCLFNBQUksR0FBVSxFQUFFLENBQUM7SUFNM0IsQ0FBQztJQUVELGVBQWUsQ0FBQyxJQUFVO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBSSxDQUFDLE1BQVksRUFBRSxPQUFrQixFQUFFLEtBQWdCO1FBQ3JELElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDcEIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM5QjtRQUVELElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFFM0IsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUU7WUFDakMsTUFBTSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7U0FDL0I7UUFFRCxJQUFJLE1BQU0sRUFBRTtZQUNWLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQzNELElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDO1NBQy9CO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUN2RCxJQUFJLENBQUMsRUFBRTtZQUNMLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakIsSUFBSSxPQUFPO2dCQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3pCLENBQUMsRUFDRCxDQUFDLENBQUMsRUFBRTtZQUNGLElBQUksS0FBSztnQkFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDOztnSEF0Q1UsbUJBQW1CO29IQUFuQixtQkFBbUI7MkZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuICAgIEFuYXRvbHkgT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI5IEFwciAyMDE4XHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjEgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuXHJcbi8vUnhKc1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbmRlY2xhcmUgdmFyICQ6IGFueTtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEJhc2VHcmlkUmVhZFNlcnZpY2UgZXh0ZW5kcyBCZWhhdmlvclN1YmplY3Q8YW55W10+IHtcclxuICBwcm90ZWN0ZWQgZGF0YTogYW55W10gPSBbXTsgIFxyXG4gIHByb3RlY3RlZCBiYXNlUmVhZFVybDogc3RyaW5nO1xyXG4gIHByb3RlY3RlZCBzYXZlZFJlYWRQYXJhbXM6IGFueTsgIFxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgc3VwZXIoW10pO1xyXG4gIH1cclxuXHJcbiAgc2VyaWFsaXplUGFyYW1zKGRhdGE/OiBhbnkpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGRhdGEgPyAoJz8nICsgJC5wYXJhbShkYXRhKSkgOiAnJztcclxuICB9XHJcblxyXG4gIHJlYWQocGFyYW1zPzogYW55LCBzdWNjZXNzPzogRnVuY3Rpb24sIGVycm9yPzogRnVuY3Rpb24pIHtcclxuICAgIGlmICh0aGlzLmRhdGEubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiBzdXBlci5uZXh0KHRoaXMuZGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIHVybCA9IHRoaXMuYmFzZVJlYWRVcmw7XHJcblxyXG4gICAgaWYgKHR5cGVvZiBwYXJhbXMgPT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgIHBhcmFtcyA9IHRoaXMuc2F2ZWRSZWFkUGFyYW1zO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChwYXJhbXMpIHtcclxuICAgICAgdXJsID0gdGhpcy5iYXNlUmVhZFVybCArIGAke3RoaXMuc2VyaWFsaXplUGFyYW1zKHBhcmFtcyl9YDtcclxuICAgICAgdGhpcy5zYXZlZFJlYWRQYXJhbXMgPSBwYXJhbXM7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5odHRwLmdldCh1cmwpLnBpcGUobWFwKHJlcyA9PiA8YW55W10+cmVzKSkuc3Vic2NyaWJlKFxyXG4gICAgICBkYXRhID0+IHtcclxuICAgICAgICBzdXBlci5uZXh0KGRhdGEpO1xyXG4gICAgICAgIGlmIChzdWNjZXNzKSBzdWNjZXNzKCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGUgPT4ge1xyXG4gICAgICAgIGlmIChlcnJvcikgZXJyb3IoZSk7XHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,51 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 4 Mar 2020
12
+
13
+ Version:
14
+ 1.0
15
+
16
+ Copyright (c) 2016-2021 Osovitny Inc. All rights reserved.
17
+ </file>
18
+ */
19
+ //Node
20
+ import { NgModule, Optional, SkipSelf } from '@angular/core';
21
+ import { CommonModule } from '@angular/common';
22
+ //App
23
+ import { BillingApiService } from './services/billing-api.service';
24
+ import { throwIfAlreadyLoaded } from '../core/guards/once-import.guard';
25
+ import * as i0 from "@angular/core";
26
+ export class AnatolyDataModule {
27
+ constructor(parentModule) {
28
+ throwIfAlreadyLoaded(parentModule, 'AnatolyDataModule');
29
+ }
30
+ }
31
+ AnatolyDataModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: AnatolyDataModule, deps: [{ token: AnatolyDataModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule });
32
+ AnatolyDataModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.5", ngImport: i0, type: AnatolyDataModule, imports: [CommonModule] });
33
+ AnatolyDataModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: AnatolyDataModule, providers: [
34
+ BillingApiService
35
+ ], imports: [CommonModule] });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: AnatolyDataModule, decorators: [{
37
+ type: NgModule,
38
+ args: [{
39
+ imports: [
40
+ CommonModule
41
+ ],
42
+ providers: [
43
+ BillingApiService
44
+ ],
45
+ }]
46
+ }], ctorParameters: function () { return [{ type: AnatolyDataModule, decorators: [{
47
+ type: Optional
48
+ }, {
49
+ type: SkipSelf
50
+ }] }]; } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvZGF0YS9kYXRhLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQkU7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUU3QyxLQUFLO0FBQ0wsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7O0FBVXhFLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFBb0MsWUFBK0I7UUFDakUsb0JBQW9CLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDLENBQUM7SUFDMUQsQ0FBQzs7OEdBSFUsaUJBQWlCLGtCQUNzQixpQkFBaUI7K0dBRHhELGlCQUFpQixZQU4xQixZQUFZOytHQU1ILGlCQUFpQixhQUpqQjtRQUNULGlCQUFpQjtLQUNsQixZQUpDLFlBQVk7MkZBTUgsaUJBQWlCO2tCQVI3QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3FCQUNiO29CQUNELFNBQVMsRUFBRTt3QkFDVCxpQkFBaUI7cUJBQ2xCO2lCQUNGOzBEQUVtRCxpQkFBaUI7MEJBQXRELFFBQVE7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55XHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55XHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICA0IE1hciAyMDIwXHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjEgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHtOZ01vZHVsZSwgT3B0aW9uYWwsIFNraXBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBCaWxsaW5nQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYmlsbGluZy1hcGkuc2VydmljZSc7XHJcbmltcG9ydCB7IHRocm93SWZBbHJlYWR5TG9hZGVkIH0gZnJvbSAnLi4vY29yZS9ndWFyZHMvb25jZS1pbXBvcnQuZ3VhcmQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGVcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgQmlsbGluZ0FwaVNlcnZpY2VcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5hdG9seURhdGFNb2R1bGUge1xyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIHBhcmVudE1vZHVsZTogQW5hdG9seURhdGFNb2R1bGUpIHtcclxuICAgIHRocm93SWZBbHJlYWR5TG9hZGVkKHBhcmVudE1vZHVsZSwgJ0FuYXRvbHlEYXRhTW9kdWxlJyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,65 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 12 Nov 2017
12
+
13
+ Version:
14
+ 1.0
15
+
16
+ Copyright (c) 2016-2021 Osovitny Inc. All rights reserved.
17
+ </file>
18
+ */
19
+ //Node
20
+ import { Injectable } from "@angular/core";
21
+ //App
22
+ import { BaseApiService } from "../base/base-api.service";
23
+ import { consts } from '../consts';
24
+ import * as i0 from "@angular/core";
25
+ import * as i1 from "@angular/common/http";
26
+ export class BillingApiService extends BaseApiService {
27
+ constructor(http) {
28
+ super(http);
29
+ this.http = http;
30
+ this.baseUrl = consts.billingApiPath;
31
+ }
32
+ requestNewSubscription(requestedPlan, success, error) {
33
+ this.postQS("requestNewSubscription", { requestedPlan: requestedPlan }).subscribe((data) => {
34
+ if (success)
35
+ success();
36
+ }, (e) => {
37
+ if (error)
38
+ error();
39
+ });
40
+ }
41
+ cancelRequestedSubscription(success, error) {
42
+ this.postQS("cancelRequestedSubscription", null).subscribe((data) => {
43
+ if (success)
44
+ success();
45
+ }, (e) => {
46
+ if (error)
47
+ error();
48
+ });
49
+ }
50
+ buyAccess(requestedPlan, success, error) {
51
+ this.postQS("buyAccess", { requestedPlan: requestedPlan }).subscribe((data) => {
52
+ if (success)
53
+ success();
54
+ }, (e) => {
55
+ if (error)
56
+ error();
57
+ });
58
+ }
59
+ }
60
+ BillingApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BillingApiService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
61
+ BillingApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BillingApiService });
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: BillingApiService, decorators: [{
63
+ type: Injectable
64
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlsbGluZy1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9kYXRhL3NlcnZpY2VzL2JpbGxpbmctYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsS0FBSztBQUNMLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDOzs7QUFHbkMsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGNBQWM7SUFDbkQsWUFBc0IsSUFBZ0I7UUFDcEMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRFEsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUVwQyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUM7SUFDdkMsQ0FBQztJQUVNLHNCQUFzQixDQUFDLGFBQXFCLEVBQUUsT0FBa0IsRUFBRSxLQUFnQjtRQUN2RixJQUFJLENBQUMsTUFBTSxDQUFDLHdCQUF3QixFQUFFLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUMvRSxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ1AsSUFBSSxPQUFPO2dCQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3pCLENBQUMsRUFDRCxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ0osSUFBSSxLQUFLO2dCQUFFLEtBQUssRUFBRSxDQUFDO1FBQ3JCLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVNLDJCQUEyQixDQUFDLE9BQWtCLEVBQUUsS0FBZ0I7UUFDckUsSUFBSSxDQUFDLE1BQU0sQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQ3hELENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDUCxJQUFJLE9BQU87Z0JBQUUsT0FBTyxFQUFFLENBQUM7UUFDekIsQ0FBQyxFQUNELENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDSixJQUFJLEtBQUs7Z0JBQUUsS0FBSyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sU0FBUyxDQUFDLGFBQXFCLEVBQUUsT0FBa0IsRUFBRSxLQUFnQjtRQUMxRSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FDbEUsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNQLElBQUksT0FBTztnQkFBRSxPQUFPLEVBQUUsQ0FBQztRQUN6QixDQUFDLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNKLElBQUksS0FBSztnQkFBRSxLQUFLLEVBQUUsQ0FBQztRQUNyQixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7OzhHQXJDVSxpQkFBaUI7a0hBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueVxyXG4gICAgQW5hdG9seSBPc292aXRueVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMTIgTm92IDIwMTdcclxuXHJcbiAgVmVyc2lvbjpcclxuICAgIDEuMFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgQmFzZUFwaVNlcnZpY2UgfSBmcm9tIFwiLi4vYmFzZS9iYXNlLWFwaS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IGNvbnN0cyB9IGZyb20gJy4uL2NvbnN0cyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBCaWxsaW5nQXBpU2VydmljZSBleHRlbmRzIEJhc2VBcGlTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgc3VwZXIoaHR0cCk7XHJcbiAgICB0aGlzLmJhc2VVcmwgPSBjb25zdHMuYmlsbGluZ0FwaVBhdGg7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVxdWVzdE5ld1N1YnNjcmlwdGlvbihyZXF1ZXN0ZWRQbGFuOiBOdW1iZXIsIHN1Y2Nlc3M/OiBGdW5jdGlvbiwgZXJyb3I/OiBGdW5jdGlvbikge1xyXG4gICAgdGhpcy5wb3N0UVMoXCJyZXF1ZXN0TmV3U3Vic2NyaXB0aW9uXCIsIHsgcmVxdWVzdGVkUGxhbjogcmVxdWVzdGVkUGxhbiB9KS5zdWJzY3JpYmUoXHJcbiAgICAgIChkYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKHN1Y2Nlc3MpIHN1Y2Nlc3MoKTtcclxuICAgICAgfSxcclxuICAgICAgKGUpID0+IHtcclxuICAgICAgICBpZiAoZXJyb3IpIGVycm9yKCk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2FuY2VsUmVxdWVzdGVkU3Vic2NyaXB0aW9uKHN1Y2Nlc3M/OiBGdW5jdGlvbiwgZXJyb3I/OiBGdW5jdGlvbikge1xyXG4gICAgdGhpcy5wb3N0UVMoXCJjYW5jZWxSZXF1ZXN0ZWRTdWJzY3JpcHRpb25cIiwgbnVsbCkuc3Vic2NyaWJlKFxyXG4gICAgICAoZGF0YSkgPT4ge1xyXG4gICAgICAgIGlmIChzdWNjZXNzKSBzdWNjZXNzKCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yKSBlcnJvcigpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGJ1eUFjY2VzcyhyZXF1ZXN0ZWRQbGFuOiBOdW1iZXIsIHN1Y2Nlc3M/OiBGdW5jdGlvbiwgZXJyb3I/OiBGdW5jdGlvbikge1xyXG4gICAgdGhpcy5wb3N0UVMoXCJidXlBY2Nlc3NcIiwgeyByZXF1ZXN0ZWRQbGFuOiByZXF1ZXN0ZWRQbGFuIH0pLnN1YnNjcmliZShcclxuICAgICAgKGRhdGEpID0+IHtcclxuICAgICAgICBpZiAoc3VjY2Vzcykgc3VjY2VzcygpO1xyXG4gICAgICB9LFxyXG4gICAgICAoZSkgPT4ge1xyXG4gICAgICAgIGlmIChlcnJvcikgZXJyb3IoKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19