@inspark/inspark-components 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/full/assets/error.svg +6 -0
  2. package/full/assets/falsevalue.svg +6 -0
  3. package/full/assets/icon.svg +6 -0
  4. package/full/assets/none.svg +6 -0
  5. package/full/assets/success.svg +6 -0
  6. package/full/assets/warning.svg +6 -0
  7. package/full/bundles/inspark-inspark-components.umd.js +3758 -0
  8. package/full/bundles/inspark-inspark-components.umd.js.map +1 -0
  9. package/full/bundles/inspark-inspark-components.umd.min.js +16 -0
  10. package/full/bundles/inspark-inspark-components.umd.min.js.map +1 -0
  11. package/full/components/breadcrumb/breadcrumb.component.d.ts +7 -0
  12. package/full/components/button/button.component.d.ts +57 -0
  13. package/full/components/checkbox/checkbox.component.d.ts +36 -0
  14. package/full/components/communication.service.d.ts +6 -0
  15. package/full/components/component-container/component-container.component.d.ts +5 -0
  16. package/full/components/content-toggle/content-toggle.component.d.ts +10 -0
  17. package/full/components/dropdown/dropdown.component.d.ts +68 -0
  18. package/full/components/empty/empty.component.d.ts +2 -0
  19. package/full/components/file/file.component.d.ts +14 -0
  20. package/full/components/header/header.component.d.ts +7 -0
  21. package/full/components/inline-message/inline-message.component.d.ts +4 -0
  22. package/full/components/input-text/input-text.component.d.ts +44 -0
  23. package/full/components/inspark.module.d.ts +2 -0
  24. package/full/components/inspark.shared.d.ts +8 -0
  25. package/full/components/link/link.component.d.ts +43 -0
  26. package/full/components/modal-input-text/modal-input-text.component.d.ts +32 -0
  27. package/full/components/object-tree/object-tree.component.d.ts +5 -0
  28. package/full/components/panel/panel.component.d.ts +2 -0
  29. package/full/components/preloader/preloader.component.d.ts +10 -0
  30. package/full/components/primeng.module.d.ts +2 -0
  31. package/full/components/radiobutton/radiobutton.component.d.ts +17 -0
  32. package/full/components/select-button/select-button.component.d.ts +55 -0
  33. package/full/components/select-list/select-list.component.d.ts +25 -0
  34. package/full/components/status-circle/status-circle.component.d.ts +10 -0
  35. package/full/components/sticky/sticky.component.d.ts +20 -0
  36. package/full/components/svg/svg.component.d.ts +9 -0
  37. package/full/components/switcher/switcher.component.d.ts +45 -0
  38. package/full/components/table/table-click-outside.directive.d.ts +7 -0
  39. package/full/components/table/table-columns-multiselect/table-columns-multiselect.component.d.ts +17 -0
  40. package/full/components/table/table-menu-overlay/table-menu-overlay.component.d.ts +9 -0
  41. package/full/components/table/table.component.d.ts +95 -0
  42. package/full/components/textarea/textarea.component.d.ts +32 -0
  43. package/full/components/toolbar/toolbar.component.d.ts +14 -0
  44. package/full/components/tooltip/tooltip.component.d.ts +5 -0
  45. package/full/components/tree-table/tree-table.component.d.ts +65 -0
  46. package/full/esm2015/components/breadcrumb/breadcrumb.component.js +23 -0
  47. package/full/esm2015/components/button/button.component.js +209 -0
  48. package/full/esm2015/components/checkbox/checkbox.component.js +104 -0
  49. package/full/esm2015/components/communication.service.js +24 -0
  50. package/full/esm2015/components/component-container/component-container.component.js +20 -0
  51. package/full/esm2015/components/content-toggle/content-toggle.component.js +44 -0
  52. package/full/esm2015/components/dropdown/dropdown.component.js +346 -0
  53. package/full/esm2015/components/empty/empty.component.js +13 -0
  54. package/full/esm2015/components/file/file.component.js +65 -0
  55. package/full/esm2015/components/header/header.component.js +30 -0
  56. package/full/esm2015/components/inline-message/inline-message.component.js +25 -0
  57. package/full/esm2015/components/input-text/input-text.component.js +157 -0
  58. package/full/esm2015/components/inspark.module.js +128 -0
  59. package/full/esm2015/components/inspark.shared.js +30 -0
  60. package/full/esm2015/components/link/link.component.js +164 -0
  61. package/full/esm2015/components/modal-input-text/modal-input-text.component.js +94 -0
  62. package/full/esm2015/components/object-tree/object-tree.component.js +18 -0
  63. package/full/esm2015/components/panel/panel.component.js +13 -0
  64. package/full/esm2015/components/preloader/preloader.component.js +34 -0
  65. package/full/esm2015/components/primeng.module.js +19 -0
  66. package/full/esm2015/components/radiobutton/radiobutton.component.js +75 -0
  67. package/full/esm2015/components/select-button/select-button.component.js +176 -0
  68. package/full/esm2015/components/select-list/select-list.component.js +60 -0
  69. package/full/esm2015/components/status-circle/status-circle.component.js +51 -0
  70. package/full/esm2015/components/sticky/sticky.component.js +82 -0
  71. package/full/esm2015/components/svg/svg.component.js +36 -0
  72. package/full/esm2015/components/switcher/switcher.component.js +148 -0
  73. package/full/esm2015/components/table/table-click-outside.directive.js +38 -0
  74. package/full/esm2015/components/table/table-columns-multiselect/table-columns-multiselect.component.js +37 -0
  75. package/full/esm2015/components/table/table-menu-overlay/table-menu-overlay.component.js +35 -0
  76. package/full/esm2015/components/table/table.component.js +426 -0
  77. package/full/esm2015/components/textarea/textarea.component.js +101 -0
  78. package/full/esm2015/components/toolbar/toolbar.component.js +40 -0
  79. package/full/esm2015/components/tooltip/tooltip.component.js +18 -0
  80. package/full/esm2015/components/tree-table/tree-table.component.js +255 -0
  81. package/full/esm2015/inspark-inspark-components.js +16 -0
  82. package/full/esm2015/interface.js +1 -0
  83. package/full/esm2015/pipes/pipes.module.js +16 -0
  84. package/full/esm2015/pipes/propertyValue.pipe.js +23 -0
  85. package/full/esm2015/pipes/safeUrl.pipe.js +37 -0
  86. package/full/esm2015/pipes/sort-by.pipe.js +26 -0
  87. package/full/esm2015/pipes/time.pipe.js +201 -0
  88. package/full/esm2015/public_api.js +43 -0
  89. package/full/esm2015/services/inspark-message.service.js +73 -0
  90. package/full/esm2015/utils/gettextMarker.function.js +5 -0
  91. package/full/esm2015/utils/hybrid/prime-table/row-state.enum.js +9 -0
  92. package/full/esm2015/utils/hybrid/prime-table/table-row-data.model.js +1 -0
  93. package/full/esm5/components/breadcrumb/breadcrumb.component.js +24 -0
  94. package/full/esm5/components/button/button.component.js +212 -0
  95. package/full/esm5/components/checkbox/checkbox.component.js +106 -0
  96. package/full/esm5/components/communication.service.js +25 -0
  97. package/full/esm5/components/component-container/component-container.component.js +21 -0
  98. package/full/esm5/components/content-toggle/content-toggle.component.js +45 -0
  99. package/full/esm5/components/dropdown/dropdown.component.js +351 -0
  100. package/full/esm5/components/empty/empty.component.js +16 -0
  101. package/full/esm5/components/file/file.component.js +66 -0
  102. package/full/esm5/components/header/header.component.js +31 -0
  103. package/full/esm5/components/inline-message/inline-message.component.js +26 -0
  104. package/full/esm5/components/input-text/input-text.component.js +159 -0
  105. package/full/esm5/components/inspark.module.js +131 -0
  106. package/full/esm5/components/inspark.shared.js +31 -0
  107. package/full/esm5/components/link/link.component.js +165 -0
  108. package/full/esm5/components/modal-input-text/modal-input-text.component.js +98 -0
  109. package/full/esm5/components/object-tree/object-tree.component.js +20 -0
  110. package/full/esm5/components/panel/panel.component.js +16 -0
  111. package/full/esm5/components/preloader/preloader.component.js +35 -0
  112. package/full/esm5/components/primeng.module.js +22 -0
  113. package/full/esm5/components/radiobutton/radiobutton.component.js +76 -0
  114. package/full/esm5/components/select-button/select-button.component.js +179 -0
  115. package/full/esm5/components/select-list/select-list.component.js +62 -0
  116. package/full/esm5/components/status-circle/status-circle.component.js +52 -0
  117. package/full/esm5/components/sticky/sticky.component.js +84 -0
  118. package/full/esm5/components/svg/svg.component.js +39 -0
  119. package/full/esm5/components/switcher/switcher.component.js +150 -0
  120. package/full/esm5/components/table/table-click-outside.directive.js +39 -0
  121. package/full/esm5/components/table/table-columns-multiselect/table-columns-multiselect.component.js +38 -0
  122. package/full/esm5/components/table/table-menu-overlay/table-menu-overlay.component.js +36 -0
  123. package/full/esm5/components/table/table.component.js +446 -0
  124. package/full/esm5/components/textarea/textarea.component.js +103 -0
  125. package/full/esm5/components/toolbar/toolbar.component.js +41 -0
  126. package/full/esm5/components/tooltip/tooltip.component.js +20 -0
  127. package/full/esm5/components/tree-table/tree-table.component.js +280 -0
  128. package/full/esm5/inspark-inspark-components.js +16 -0
  129. package/full/esm5/interface.js +1 -0
  130. package/full/esm5/pipes/pipes.module.js +19 -0
  131. package/full/esm5/pipes/propertyValue.pipe.js +26 -0
  132. package/full/esm5/pipes/safeUrl.pipe.js +38 -0
  133. package/full/esm5/pipes/sort-by.pipe.js +29 -0
  134. package/full/esm5/pipes/time.pipe.js +212 -0
  135. package/full/esm5/public_api.js +43 -0
  136. package/full/esm5/services/inspark-message.service.js +78 -0
  137. package/full/esm5/utils/gettextMarker.function.js +5 -0
  138. package/full/esm5/utils/hybrid/prime-table/row-state.enum.js +9 -0
  139. package/full/esm5/utils/hybrid/prime-table/table-row-data.model.js +1 -0
  140. package/full/fesm2015/inspark-inspark-components.js +3331 -0
  141. package/full/fesm2015/inspark-inspark-components.js.map +1 -0
  142. package/full/fesm5/inspark-inspark-components.js +3464 -0
  143. package/full/fesm5/inspark-inspark-components.js.map +1 -0
  144. package/full/fonts/primeicons.eot +0 -0
  145. package/full/fonts/primeicons.svg +163 -0
  146. package/full/fonts/primeicons.ttf +0 -0
  147. package/full/fonts/primeicons.woff +0 -0
  148. package/full/index.css +4012 -0
  149. package/full/index.js +1 -0
  150. package/full/inspark-inspark-components.d.ts +15 -0
  151. package/full/inspark-inspark-components.metadata.json +1 -0
  152. package/full/interface.d.ts +25 -0
  153. package/full/package.json +26 -0
  154. package/full/pipes/pipes.module.d.ts +2 -0
  155. package/full/pipes/propertyValue.pipe.d.ts +4 -0
  156. package/full/pipes/safeUrl.pipe.d.ts +20 -0
  157. package/full/pipes/sort-by.pipe.d.ts +4 -0
  158. package/full/pipes/time.pipe.d.ts +25 -0
  159. package/full/public_api.d.ts +41 -0
  160. package/full/services/inspark-message.service.d.ts +18 -0
  161. package/full/utils/gettextMarker.function.d.ts +1 -0
  162. package/full/utils/hybrid/prime-table/row-state.enum.d.ts +7 -0
  163. package/full/utils/hybrid/prime-table/table-row-data.model.d.ts +6 -0
  164. package/interface/bundles/inspark-inspark-components.umd.js +11 -0
  165. package/interface/bundles/inspark-inspark-components.umd.js.map +1 -0
  166. package/interface/bundles/inspark-inspark-components.umd.min.js +2 -0
  167. package/interface/bundles/inspark-inspark-components.umd.min.js.map +1 -0
  168. package/interface/esm2015/inspark-inspark-components.js +4 -0
  169. package/interface/esm2015/interface.js +1 -0
  170. package/interface/esm2015/public_api.js +4 -0
  171. package/interface/esm5/inspark-inspark-components.js +4 -0
  172. package/interface/esm5/interface.js +1 -0
  173. package/interface/esm5/public_api.js +4 -0
  174. package/interface/fesm2015/inspark-inspark-components.js +4 -0
  175. package/interface/fesm2015/inspark-inspark-components.js.map +1 -0
  176. package/interface/fesm5/inspark-inspark-components.js +4 -0
  177. package/interface/fesm5/inspark-inspark-components.js.map +1 -0
  178. package/interface/inspark-inspark-components.d.ts +4 -0
  179. package/interface/inspark-inspark-components.metadata.json +1 -0
  180. package/interface/interface.d.ts +25 -0
  181. package/interface/package.json +26 -0
  182. package/interface/public_api.d.ts +1 -0
  183. package/package.json +26 -0
@@ -0,0 +1,41 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input, OnInit } from '@angular/core';
3
+ import { Router } from '@angular/router';
4
+ var ToolbarComponent = /** @class */ (function () {
5
+ function ToolbarComponent(element, cdRef, router) {
6
+ this.element = element;
7
+ this.cdRef = cdRef;
8
+ this.router = router;
9
+ this.display = false;
10
+ }
11
+ ToolbarComponent.prototype.ngOnInit = function () {
12
+ };
13
+ ToolbarComponent.prototype.clickedOutsideOverlay = function (event) {
14
+ if (!this.element.nativeElement.contains(event.target)) {
15
+ this.display = false;
16
+ this.cdRef.detectChanges();
17
+ }
18
+ };
19
+ ToolbarComponent.ctorParameters = function () { return [
20
+ { type: ElementRef },
21
+ { type: ChangeDetectorRef },
22
+ { type: Router }
23
+ ]; };
24
+ __decorate([
25
+ Input(),
26
+ __metadata("design:type", String)
27
+ ], ToolbarComponent.prototype, "title", void 0);
28
+ ToolbarComponent = __decorate([
29
+ Component({
30
+ selector: 'in-toolbar',
31
+ template: "<div class=\"toolbar-wrapper\">\n <in-sticky top=\"60\">\n\n <div class=\"c-panel toolbar-container\">\n <div class=\"c-toolbar\">\n <div class=\"c-toolbar__side-left\">\n <div class=\"c-toolbar__title\">{{title}}</div>\n </div>\n <div class=\"c-toolbar__side-center\">\n\n </div>\n <div class=\"c-toolbar__side-right\">\n <ng-content></ng-content>\n </div>\n\n </div>\n </div>\n </in-sticky>\n</div>\n",
32
+ changeDetection: ChangeDetectionStrategy.OnPush,
33
+ entryComponents: [],
34
+ styles: [".toolbar-wrapper{padding-bottom:4px}.toolbar-container{padding:8px;position:relative}:host{position:-webkit-sticky;position:sticky;z-index:2}.c-toolbar{display:inline-flex;width:100%}.c-toolbar__side-left{flex:1;text-align:left}.c-toolbar__title{display:inline-flex;vertical-align:middle;font-size:22px}.c-toolbar__side-right{display:flex;text-align:right}.add-widget{position:fixed;right:16px;bottom:16px}.widget-container{position:absolute;left:0;top:40px;right:0;bottom:0;overflow:auto}.widget-block{position:absolute;left:5px;top:5px;right:5px;bottom:5px}.sidebar{background:var(--main-background);position:absolute;left:0;top:35px;bottom:0;height:100vh;z-index:100;width:300px;box-shadow:0 0 3px 8px rgba(0,0,0,.1);overflow:auto}.right-side{display:flex;align-items:center;justify-content:flex-end;flex:1}.right-side>*{margin-left:5px}.left-side{white-space:nowrap;display:flex;align-items:center;justify-content:flex-start}.left-side>*{margin-right:5px}.controls-panel{height:41px;border-radius:2px;padding:4px 0;margin:0 5px 5px;display:flex}.dashboard-list{position:relative}.title{font-size:22px}"]
35
+ }),
36
+ __metadata("design:paramtypes", [ElementRef, ChangeDetectorRef, Router])
37
+ ], ToolbarComponent);
38
+ return ToolbarComponent;
39
+ }());
40
+ export { ToolbarComponent };
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaW5zcGFyay9pbnNwYXJrLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3Rvb2xiYXIvdG9vbGJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0csT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBU3ZDO0lBU0UsMEJBQW1CLE9BQW1CLEVBQVUsS0FBd0IsRUFBUyxNQUFjO1FBQTVFLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQUFTLFdBQU0sR0FBTixNQUFNLENBQVE7UUFML0YsWUFBTyxHQUFHLEtBQUssQ0FBQztJQU9oQixDQUFDO0lBRUQsbUNBQVEsR0FBUjtJQUVBLENBQUM7SUFFTSxnREFBcUIsR0FBNUIsVUFBNkIsS0FBSztRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN0RCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQzVCO0lBQ0gsQ0FBQzs7Z0JBYjJCLFVBQVU7Z0JBQWlCLGlCQUFpQjtnQkFBaUIsTUFBTTs7SUFOdEY7UUFBUixLQUFLLEVBQUU7O21EQUFlO0lBSFosZ0JBQWdCO1FBUDVCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxZQUFZO1lBQ3RCLDRlQUF1QztZQUV2QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtZQUMvQyxlQUFlLEVBQUUsRUFBRTs7U0FDcEIsQ0FBQzt5Q0FVNEIsVUFBVSxFQUFpQixpQkFBaUIsRUFBaUIsTUFBTTtPQVRwRixnQkFBZ0IsQ0F3QjVCO0lBQUQsdUJBQUM7Q0FBQSxBQXhCRCxJQXdCQztTQXhCWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Um91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbi10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b29sYmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbnRyeUNvbXBvbmVudHM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIFRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG5cbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgZGlzcGxheSA9IGZhbHNlO1xuICBvYmplY3RzO1xuXG4gIHNlbGVjdGVkOiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnQ6IEVsZW1lbnRSZWYsIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLCBwdWJsaWMgcm91dGVyOiBSb3V0ZXIpIHtcblxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG5cbiAgfVxuXG4gIHB1YmxpYyBjbGlja2VkT3V0c2lkZU92ZXJsYXkoZXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgIHRoaXMuZGlzcGxheSA9IGZhbHNlO1xuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbn1cblxuXG5cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Component, ChangeDetectionStrategy } from '@angular/core';
3
+ var TooltipComponent = /** @class */ (function () {
4
+ function TooltipComponent() {
5
+ }
6
+ TooltipComponent.prototype.ngOnInit = function () {
7
+ };
8
+ TooltipComponent = __decorate([
9
+ Component({
10
+ selector: 'in-tooltip',
11
+ template: "<div class=\"c-tooltip c-tooltip_left\">\n <ng-content></ng-content>\n <div class=\"c-tooltip__content\" style=\"width: 12em;\" >\n <ng-content select=\"tooltip_content\"></ng-content>\n </div>\n</div>\n\n",
12
+ changeDetection: ChangeDetectionStrategy.OnPush,
13
+ styles: [".c-tooltip{display:inline-block;position:relative;text-align:left;overflow:visible}.c-tooltip:hover .c-tooltip__content{visibility:visible;opacity:1}.c-tooltip_left>.c-tooltip__content{left:auto;right:100%;top:50%;bottom:auto;margin-right:12px;border-top-right-radius:0}.c-tooltip__content{position:absolute;width:auto;margin:0 0 12px;padding:9px 12px;font-size:13px;font-weight:400;letter-spacing:normal;border-radius:3px;line-height:1.64286;visibility:hidden;opacity:0;transition:opacity .3s linear;z-index:1070;background:rgba(40,42,49,.95);color:#fff;white-space:normal;text-transform:none}"]
14
+ }),
15
+ __metadata("design:paramtypes", [])
16
+ ], TooltipComponent);
17
+ return TooltipComponent;
18
+ }());
19
+ export { TooltipComponent };
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaW5zcGFyay9pbnNwYXJrLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFRM0U7SUFFRTtJQUFnQixDQUFDO0lBRWpCLG1DQUFRLEdBQVI7SUFDQSxDQUFDO0lBTFUsZ0JBQWdCO1FBTjVCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxZQUFZO1lBQ3RCLCtOQUF1QztZQUV2QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7U0FDaEQsQ0FBQzs7T0FDVyxnQkFBZ0IsQ0FPNUI7SUFBRCx1QkFBQztDQUFBLEFBUEQsSUFPQztTQVBZLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbi10b29sdGlwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rvb2x0aXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b29sdGlwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxufVxuIl19
@@ -0,0 +1,280 @@
1
+ import { __decorate, __metadata, __values } from "tslib";
2
+ import { Component, ContentChildren, EventEmitter, Input, NgModule, Output, QueryList } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import { InsparkTemplate } from '../inspark.shared';
5
+ import { TreeTableModule } from 'primeng/primeng';
6
+ import { TranslateModule } from '@ngx-translate/core';
7
+ import { FormsModule } from '@angular/forms';
8
+ import { TableComponentModule } from '../table/table.component';
9
+ import { PipesModule } from "../../pipes/pipes.module";
10
+ var TreeTableComponent = /** @class */ (function () {
11
+ function TreeTableComponent() {
12
+ this.columns = [];
13
+ this.values = [];
14
+ this.checkboxSelection = true;
15
+ this.activeChange = new EventEmitter();
16
+ this.selectionChange = new EventEmitter();
17
+ this.addAction = new EventEmitter();
18
+ this.csvAction = new EventEmitter();
19
+ this.saveAction = new EventEmitter();
20
+ this.collapseAction = new EventEmitter();
21
+ this.removeAction = new EventEmitter();
22
+ this.unlinkAction = new EventEmitter();
23
+ this.groupEditAction = new EventEmitter();
24
+ this.groupAddAction = new EventEmitter();
25
+ this.rowIndex = 0;
26
+ this.isCollapse = true;
27
+ this._selection = null;
28
+ }
29
+ Object.defineProperty(TreeTableComponent.prototype, "selection", {
30
+ set: function (val) {
31
+ this._selection = val;
32
+ },
33
+ enumerable: true,
34
+ configurable: true
35
+ });
36
+ Object.defineProperty(TreeTableComponent.prototype, "selectionValue", {
37
+ get: function () {
38
+ return this._selection;
39
+ },
40
+ set: function (val) {
41
+ this._selection = val;
42
+ this.selectionChange.emit(val);
43
+ },
44
+ enumerable: true,
45
+ configurable: true
46
+ });
47
+ TreeTableComponent.prototype.isRowActive = function (row) {
48
+ return this.active && this.active.id === row.id;
49
+ };
50
+ TreeTableComponent.prototype.visibleColumns = function () {
51
+ return this.columns.filter(function (column) { return !column.isHidden; });
52
+ };
53
+ TreeTableComponent.prototype.columnsChange = function (data) {
54
+ data.column.isHidden = !data.event;
55
+ };
56
+ TreeTableComponent.prototype.ngAfterContentInit = function () {
57
+ var _this = this;
58
+ this.templates.forEach(function (item) {
59
+ switch (item.getType()) {
60
+ case 'caption':
61
+ _this.captionTemplate = item.template;
62
+ break;
63
+ case 'header':
64
+ _this.headerTemplate = item.template;
65
+ break;
66
+ case 'body':
67
+ _this.bodyTemplate = item.template;
68
+ break;
69
+ case 'value':
70
+ _this.valueTemplate = item.template;
71
+ break;
72
+ case 'loadingbody':
73
+ _this.loadingBodyTemplate = item.template;
74
+ break;
75
+ case 'footer':
76
+ _this.footerTemplate = item.template;
77
+ break;
78
+ case 'summary':
79
+ _this.summaryTemplate = item.template;
80
+ break;
81
+ case 'colgroup':
82
+ _this.colGroupTemplate = item.template;
83
+ break;
84
+ case 'rowexpansion':
85
+ _this.expandedRowTemplate = item.template;
86
+ break;
87
+ case 'frozenrows':
88
+ _this.frozenRowsTemplate = item.template;
89
+ break;
90
+ case 'frozenheader':
91
+ _this.frozenHeaderTemplate = item.template;
92
+ break;
93
+ case 'frozenbody':
94
+ _this.frozenBodyTemplate = item.template;
95
+ break;
96
+ case 'frozenfooter':
97
+ _this.frozenFooterTemplate = item.template;
98
+ break;
99
+ case 'frozencolgroup':
100
+ _this.frozenColGroupTemplate = item.template;
101
+ break;
102
+ case 'emptymessage':
103
+ _this.emptyMessageTemplate = item.template;
104
+ break;
105
+ case 'paginatorleft':
106
+ _this.paginatorLeftTemplate = item.template;
107
+ break;
108
+ case 'paginatorright':
109
+ _this.paginatorRightTemplate = item.template;
110
+ break;
111
+ }
112
+ });
113
+ };
114
+ TreeTableComponent.prototype.collapse = function (event, dt) {
115
+ var _this = this;
116
+ this.values.forEach(function (node) {
117
+ _this.toggleCollapse(node, _this.isCollapse);
118
+ });
119
+ this.isCollapse = !this.isCollapse;
120
+ dt.filterGlobal(this.searchText, 'contains');
121
+ };
122
+ TreeTableComponent.prototype.toggleCollapse = function (node, isCollapsed) {
123
+ var e_1, _a;
124
+ if (node.children) {
125
+ node.expanded = isCollapsed;
126
+ try {
127
+ for (var _b = __values(node.children), _c = _b.next(); !_c.done; _c = _b.next()) {
128
+ var cn = _c.value;
129
+ if (cn) {
130
+ this.toggleCollapse(cn, isCollapsed);
131
+ }
132
+ }
133
+ }
134
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
135
+ finally {
136
+ try {
137
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
138
+ }
139
+ finally { if (e_1) throw e_1.error; }
140
+ }
141
+ }
142
+ };
143
+ __decorate([
144
+ Input(),
145
+ __metadata("design:type", Array)
146
+ ], TreeTableComponent.prototype, "columns", void 0);
147
+ __decorate([
148
+ Input(),
149
+ __metadata("design:type", Object)
150
+ ], TreeTableComponent.prototype, "values", void 0);
151
+ __decorate([
152
+ Input(),
153
+ __metadata("design:type", String)
154
+ ], TreeTableComponent.prototype, "scrollHeight", void 0);
155
+ __decorate([
156
+ Input(),
157
+ __metadata("design:type", Boolean)
158
+ ], TreeTableComponent.prototype, "scrollable", void 0);
159
+ __decorate([
160
+ Input(),
161
+ __metadata("design:type", String)
162
+ ], TreeTableComponent.prototype, "selectionMode", void 0);
163
+ __decorate([
164
+ Input(),
165
+ __metadata("design:type", String)
166
+ ], TreeTableComponent.prototype, "label", void 0);
167
+ __decorate([
168
+ Input(),
169
+ __metadata("design:type", String)
170
+ ], TreeTableComponent.prototype, "error", void 0);
171
+ __decorate([
172
+ Input(),
173
+ __metadata("design:type", String)
174
+ ], TreeTableComponent.prototype, "class", void 0);
175
+ __decorate([
176
+ Input(),
177
+ __metadata("design:type", Boolean)
178
+ ], TreeTableComponent.prototype, "required", void 0);
179
+ __decorate([
180
+ Input(),
181
+ __metadata("design:type", Object)
182
+ ], TreeTableComponent.prototype, "style", void 0);
183
+ __decorate([
184
+ Input(),
185
+ __metadata("design:type", Object)
186
+ ], TreeTableComponent.prototype, "toolbar", void 0);
187
+ __decorate([
188
+ Input(),
189
+ __metadata("design:type", Object)
190
+ ], TreeTableComponent.prototype, "checkboxSelection", void 0);
191
+ __decorate([
192
+ Input(),
193
+ __metadata("design:type", Object)
194
+ ], TreeTableComponent.prototype, "active", void 0);
195
+ __decorate([
196
+ Input(),
197
+ __metadata("design:type", Object)
198
+ ], TreeTableComponent.prototype, "sortField", void 0);
199
+ __decorate([
200
+ Input(),
201
+ __metadata("design:type", Object)
202
+ ], TreeTableComponent.prototype, "isAscending", void 0);
203
+ __decorate([
204
+ Input(),
205
+ __metadata("design:type", Object)
206
+ ], TreeTableComponent.prototype, "dataKey", void 0);
207
+ __decorate([
208
+ Output(),
209
+ __metadata("design:type", Object)
210
+ ], TreeTableComponent.prototype, "activeChange", void 0);
211
+ __decorate([
212
+ ContentChildren(InsparkTemplate),
213
+ __metadata("design:type", QueryList)
214
+ ], TreeTableComponent.prototype, "templates", void 0);
215
+ __decorate([
216
+ Output(),
217
+ __metadata("design:type", EventEmitter)
218
+ ], TreeTableComponent.prototype, "selectionChange", void 0);
219
+ __decorate([
220
+ Output(),
221
+ __metadata("design:type", EventEmitter)
222
+ ], TreeTableComponent.prototype, "addAction", void 0);
223
+ __decorate([
224
+ Output(),
225
+ __metadata("design:type", EventEmitter)
226
+ ], TreeTableComponent.prototype, "csvAction", void 0);
227
+ __decorate([
228
+ Output(),
229
+ __metadata("design:type", EventEmitter)
230
+ ], TreeTableComponent.prototype, "saveAction", void 0);
231
+ __decorate([
232
+ Output(),
233
+ __metadata("design:type", EventEmitter)
234
+ ], TreeTableComponent.prototype, "collapseAction", void 0);
235
+ __decorate([
236
+ Output(),
237
+ __metadata("design:type", EventEmitter)
238
+ ], TreeTableComponent.prototype, "removeAction", void 0);
239
+ __decorate([
240
+ Output(),
241
+ __metadata("design:type", EventEmitter)
242
+ ], TreeTableComponent.prototype, "unlinkAction", void 0);
243
+ __decorate([
244
+ Output(),
245
+ __metadata("design:type", EventEmitter)
246
+ ], TreeTableComponent.prototype, "groupEditAction", void 0);
247
+ __decorate([
248
+ Output(),
249
+ __metadata("design:type", EventEmitter)
250
+ ], TreeTableComponent.prototype, "groupAddAction", void 0);
251
+ __decorate([
252
+ Input(),
253
+ __metadata("design:type", Object),
254
+ __metadata("design:paramtypes", [Object])
255
+ ], TreeTableComponent.prototype, "selection", null);
256
+ TreeTableComponent = __decorate([
257
+ Component({
258
+ selector: 'in-tree-table',
259
+ template: "<p-treeTable #dt\n [(selection)]=\"selectionValue\"\n [class]=\"class\"\n [columns]=\"visibleColumns()\"\n [resizableColumns]=\"true\"\n [scrollHeight]=\"scrollHeight\"\n [scrollable]=\"scrollable\"\n [selectionMode]=\"selectionMode\"\n [sortField]=\"sortField || 'id'\"\n [sortOrder]=\"isAscending ? 1 : -1\"\n [style]=\"style\"\n [value]=\"values\"\n columnResizeMode=\"expand\"\n>\n <ng-template let-columns pTemplate=\"colgroup\">\n <colgroup>\n <col *ngIf=\"checkboxSelection\" style=\"width:44px;\">\n <col *ngFor=\"let col of visibleColumns()\" [style.width]=\"col.width ? col.width : '10px'\">\n </colgroup>\n </ng-template>\n <ng-template let-columns pTemplate=\"header\">\n <tr>\n <th *ngIf=\"checkboxSelection\">\n <p-treeTableHeaderCheckbox></p-treeTableHeaderCheckbox>\n </th>\n <th *ngFor=\"let col of columns; let i = index\" [ttSortableColumn]=\"col.field\" class=\"u-position-relative\"\n ttResizableColumn>\n <div class=\"ui-treetable-thead-title\" title=\"{{col.label | translate}}\">\n {{col.label | translate}}\n </div>\n <p-treeTableSortIcon [field]=\"col.field\" class=\"ui-sortable-column-buttons\"></p-treeTableSortIcon>\n </th>\n </tr>\n </ng-template>\n\n <ng-template let-columns=\"columns\" let-rowData=\"rowData\" let-rowNode pTemplate=\"body\">\n <tr [ngClass]=\"{row_active: isRowActive(rowData)}\" [ttSelectableRow]=\"rowNode\" class=\"row\">\n <td *ngIf=\"checkboxSelection\">\n <p-treeTableCheckbox [value]=\"rowNode\"></p-treeTableCheckbox>\n </td>\n <td (click)=\"activeChange.emit(rowData)\" *ngFor=\"let col of columns; let i = index\"\n class=\"_u-overflow-visible\">\n <div class=\"\" style=\"display: flex; flex-wrap: nowrap;\">\n <ng-template [ngIf]=\"i == 0\">\n <p-treeTableToggler [rowNode]=\"rowNode\" style=\"align-self: center;\"></p-treeTableToggler>\n </ng-template>\n <div [ngClass]=\"{ 'ui-treetable-tbody-content_has-toggler ': i == 0 }\"\n class=\"ui-treetable-tbody-content cell-content_hover\"\n style=\"flex-grow: 1;\"\n title=\"{{rowData | propertyValue: col.field}}\">\n <ng-container *ngIf=\"!valueTemplate\">\n <i *ngIf=\"rowData.icon && i == 0\" [ngClass]=\"rowData.icon\" class=\"u-margin-right-tiny\"></i>\n {{rowData | propertyValue: col.field}}\n </ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"valueTemplate; context: {$implicit: { data: rowData, col: col}}\"></ng-container>\n </div>\n </div>\n </td>\n </tr>\n </ng-template>\n\n <ng-template *ngIf=\"toolbar\" pTemplate=\"caption\">\n\n <div class=\"o-grid o-grid_no-gutter\">\n <div class=\"c-tree-table__toolbar-content u-display-inline-flex\">\n <div class=\"c-form c-form_inline u-display-inline-block\">\n <label class=\"c-label\">\n <input #searchTextInput\n (input)=\"dt.filterGlobal($event.target.value, 'contains')\"\n [(ngModel)]=\"searchText\"\n autofocus=\"\"\n class=\"c-input c-input_small ng-pristine ng-valid ng-scope ng-empty ng-touched\"\n pInputText\n placeholder=\"{{('SHARED.SEARCH' | translate) + ':'}}\"\n tabindex=\"1\"\n type=\"search\"\n >\n </label>\n </div>\n <div class=\"c-btn c-btn_border-free c-btn_small\">\n <in-table-columns-multiselect (columnsChange)=\"columnsChange($event)\"\n [columns]=\"columns\"></in-table-columns-multiselect>\n </div>\n\n <button (click)=\"addAction.emit($event)\" *ngIf=\"toolbar.add\" [disabled]=\"toolbar.add.disabled\"\n class=\"c-btn c-btn_border-free c-btn_small\"\n >\n <i class=\"fa fa-plus\" [title]=\"toolbar.add.title || '\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C'\"></i>\n </button>\n\n <button (click)=\"groupAddAction.emit($event)\" *ngIf=\"toolbar.groupAdd\" [disabled]=\"toolbar.groupAdd.disabled\"\n class=\"c-btn c-btn_border-free c-btn_small\"\n >\n <i class=\"fa fa-folder\" [title]=\"toolbar.groupAdd.title || '\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0433\u0440\u0443\u043F\u043F\u0443'\"></i>\n </button>\n\n\n <button (click)=\"saveAction.emit($event)\" *ngIf=\"toolbar.save\"\n [disabled]=\"toolbar.save.disabled\"\n class=\"c-btn c-btn_primary c-btn_small\"\n title=\"{{'Save' | translate}}\"\n >\n {{'Save' | translate}}\n </button>\n <button (click)=\"groupEditAction.emit($event)\" *ngIf=\"toolbar.groupEdit && toolbar.groupEdit.active\"\n [disabled]=\"toolbar.groupEdit.disabled\"\n class=\"c-btn c-btn_border-free c-btn_small\">\n <i class=\"fa fa-pencil-square-o\" title=\"{{'groupEdit' | translate}}\"></i>\n </button>\n <button (click)=\"removeAction.emit($event)\" *ngIf=\"toolbar.remove && toolbar.remove.active\"\n [disabled]=\"toolbar.remove.disabled\"\n class=\"c-btn c-btn_border-free c-btn_small\">\n <i class=\"fa fa-trash\" [title]=\"toolbar.remove?.title || '\u0423\u0434\u0430\u043B\u0438\u0442\u044C'\"></i>\n </button>\n <button (click)=\"unlinkAction.emit($event)\" *ngIf=\"toolbar.unlink\" [disabled]=\"toolbar.unlink.disabled\"\n class=\"c-btn c-btn_border-free c-btn_small\">\n <i class=\"fa fa-unlink\" title=\"{{'Detach tag from selected items' | translate}}\"></i>\n </button>\n <button (click)=\"csvAction.emit($event)\" *ngIf=\"toolbar.csv\" [disabled]=\"toolbar.csv.disabled\"\n class=\"c-btn c-btn_border-free c-btn_small\"\n >\n <i class=\"fas fa-file-csv\" title=\"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043A\u0430\u043A CSV\"></i>\n </button>\n <button *ngIf=\"toolbar.collapse\"\n class=\"c-btn c-btn_small c-btn_svg-24 c-icon c-icon_svg c-icon_svg-24\"\n (click)=\"collapse($event, dt)\"\n title=\"{{(isCollapse ? 'Expand all' : 'Collapse all') | translate}}\">\n <svg *ngIf=\"isCollapse\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path d=\"M20 2H4v2h16V2zM4 20v2h16v-2H4zM12 5l5 6H7l5-6zM17 13l-5 6-5-6h10z\"/>\n </svg>\n <svg *ngIf=\"!isCollapse\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path fill-rule=\"evenodd\" d=\"M17 3l-5 6-5-6h10zM4 13v-2h16v2H4zm8 2l5 6H7l5-6z\" clip-rule=\"evenodd\"/>\n </svg>\n </button>\n </div>\n </div>\n </ng-template>\n</p-treeTable>\n",
260
+ entryComponents: [],
261
+ styles: ["@charset \"UTF-8\";.ui-sortable-column{cursor:pointer;position:relative}.ui-sortable-column-buttons{position:absolute;top:0;right:0;width:18px;height:100%;display:inline-flex;align-items:center;z-index:10000}.ui-sortable-column-buttons>a{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.u-overflow-visible{overflow:visible!important}"]
262
+ })
263
+ ], TreeTableComponent);
264
+ return TreeTableComponent;
265
+ }());
266
+ export { TreeTableComponent };
267
+ var TreeTableComponentModule = /** @class */ (function () {
268
+ function TreeTableComponentModule() {
269
+ }
270
+ TreeTableComponentModule = __decorate([
271
+ NgModule({
272
+ imports: [CommonModule, TreeTableModule, PipesModule, TranslateModule, FormsModule, TableComponentModule],
273
+ exports: [TreeTableComponent],
274
+ declarations: [TreeTableComponent]
275
+ })
276
+ ], TreeTableComponentModule);
277
+ return TreeTableComponentModule;
278
+ }());
279
+ export { TreeTableComponentModule };
280
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaW5zcGFyay9pbnNwYXJrLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3RyZWUtdGFibGUvdHJlZS10YWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFlBQVksRUFDWixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFZckQ7SUFBQTtRQUVXLFlBQU8sR0FBbUIsRUFBRSxDQUFDO1FBQzdCLFdBQU0sR0FBRyxFQUFFLENBQUM7UUFVWixzQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFNeEIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRXZDLG9CQUFlLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDeEQsY0FBUyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3ZELGNBQVMsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUN2RCxlQUFVLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDeEQsbUJBQWMsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUM1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LFlBQVk7OERBQWdDO0lBQzVEO1FBQVQsTUFBTSxFQUFFO2tDQUFlLFlBQVk7NERBQWdDO0lBQzFEO1FBQVQsTUFBTSxFQUFFO2tDQUFlLFlBQVk7NERBQWdDO0lBQzFEO1FBQVQsTUFBTSxFQUFFO2tDQUFrQixZQUFZOytEQUFnQztJQUM3RDtRQUFULE1BQU0sRUFBRTtrQ0FBaUIsWUFBWTs4REFBZ0M7SUF3QjdEO1FBQVIsS0FBSyxFQUFFOzs7dURBRVA7SUF2RFUsa0JBQWtCO1FBTjlCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxlQUFlO1lBQ3pCLGtqT0FBMEM7WUFFMUMsZUFBZSxFQUFFLEVBQUU7O1NBQ3BCLENBQUM7T0FDVyxrQkFBa0IsQ0EwSzlCO0lBQUQseUJBQUM7Q0FBQSxBQTFLRCxJQTBLQztTQTFLWSxrQkFBa0I7QUFrTC9CO0lBQUE7SUFDQSxDQUFDO0lBRFksd0JBQXdCO1FBTHBDLFFBQVEsQ0FBQztZQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLENBQUM7WUFDekcsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7WUFDN0IsWUFBWSxFQUFFLENBQUMsa0JBQWtCLENBQUM7U0FDbkMsQ0FBQztPQUNXLHdCQUF3QixDQUNwQztJQUFELCtCQUFDO0NBQUEsQUFERCxJQUNDO1NBRFksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE5nTW9kdWxlLFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7SW5zcGFya1RlbXBsYXRlfSBmcm9tICcuLi9pbnNwYXJrLnNoYXJlZCc7XG5pbXBvcnQge1RyZWVUYWJsZU1vZHVsZX0gZnJvbSAncHJpbWVuZy9wcmltZW5nJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7VGFibGVDb21wb25lbnRNb2R1bGV9IGZyb20gJy4uL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQge1BpcGVzTW9kdWxlfSBmcm9tIFwiLi4vLi4vcGlwZXMvcGlwZXMubW9kdWxlXCI7XG5pbXBvcnQge1RhYmxlUm93RGF0YX0gZnJvbSBcIi4uLy4uL3V0aWxzL2h5YnJpZC9wcmltZS10YWJsZS90YWJsZS1yb3ctZGF0YS5tb2RlbFwiO1xuaW1wb3J0IHtUYWJsZUNvbHVtbnN9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VcIjtcblxuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2luLXRyZWUtdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RyZWUtdGFibGUuY29tcG9uZW50LnNjc3MnXSxcbiAgZW50cnlDb21wb25lbnRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgVHJlZVRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG5cbiAgQElucHV0KCkgY29sdW1uczogVGFibGVDb2x1bW5zW10gPSBbXTtcbiAgQElucHV0KCkgdmFsdWVzID0gW107XG4gIEBJbnB1dCgpIHNjcm9sbEhlaWdodDogc3RyaW5nO1xuICBASW5wdXQoKSBzY3JvbGxhYmxlOiBib29sZWFuO1xuICBASW5wdXQoKSBzZWxlY3Rpb25Nb2RlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGVycm9yOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHJlcXVpcmVkOiBib29sZWFuO1xuICBASW5wdXQoKSBzdHlsZTogYW55O1xuICBASW5wdXQoKSB0b29sYmFyOiBhbnk7XG4gIEBJbnB1dCgpIGNoZWNrYm94U2VsZWN0aW9uID0gdHJ1ZTtcbiAgQElucHV0KCkgYWN0aXZlO1xuICBASW5wdXQoKSBzb3J0RmllbGQ7XG4gIEBJbnB1dCgpIGlzQXNjZW5kaW5nO1xuICBASW5wdXQoKSBkYXRhS2V5O1xuXG4gIEBPdXRwdXQoKSBhY3RpdmVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQENvbnRlbnRDaGlsZHJlbihJbnNwYXJrVGVtcGxhdGUpIHRlbXBsYXRlczogUXVlcnlMaXN0PEluc3BhcmtUZW1wbGF0ZT47XG4gIEBPdXRwdXQoKSBzZWxlY3Rpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgYWRkQWN0aW9uOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgY3N2QWN0aW9uOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgc2F2ZUFjdGlvbjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIGNvbGxhcHNlQWN0aW9uOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgcmVtb3ZlQWN0aW9uOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgdW5saW5rQWN0aW9uOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZ3JvdXBFZGl0QWN0aW9uOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZ3JvdXBBZGRBY3Rpb246IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgaGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIGJvZHlUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgbG9hZGluZ0JvZHlUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgY2FwdGlvblRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBmcm96ZW5Sb3dzVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBzdW1tYXJ5VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIGNvbEdyb3VwVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIGV4cGFuZGVkUm93VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIGZyb3plbkhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBmcm96ZW5Cb2R5VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIGZyb3plbkZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBmcm96ZW5Db2xHcm91cFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBlbXB0eU1lc3NhZ2VUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgcGFnaW5hdG9yTGVmdFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBwYWdpbmF0b3JSaWdodFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICB2YWx1ZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBzZWFyY2hUZXh0OiBzdHJpbmc7XG4gIHJvd0luZGV4ID0gMDtcbiAgaXNDb2xsYXBzZSA9IHRydWU7XG4gIF9zZWxlY3Rpb24gPSBudWxsO1xuXG4gIEBJbnB1dCgpIHNldCBzZWxlY3Rpb24odmFsKSB7XG4gICAgdGhpcy5fc2VsZWN0aW9uID0gdmFsO1xuICB9XG5cbiAgZ2V0IHNlbGVjdGlvblZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3Rpb247XG4gIH1cblxuICBzZXQgc2VsZWN0aW9uVmFsdWUodmFsKSB7XG4gICAgdGhpcy5fc2VsZWN0aW9uID0gdmFsO1xuICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlLmVtaXQodmFsKTtcbiAgfVxuXG4gIHB1YmxpYyBpc1Jvd0FjdGl2ZShyb3c6IFRhYmxlUm93RGF0YSkge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZSAmJiB0aGlzLmFjdGl2ZS5pZCA9PT0gcm93LmlkO1xuICB9XG5cbiAgcHVibGljIHZpc2libGVDb2x1bW5zKCk6IFRhYmxlQ29sdW1uc1tdIHtcbiAgICByZXR1cm4gdGhpcy5jb2x1bW5zLmZpbHRlcihjb2x1bW4gPT4gIWNvbHVtbi5pc0hpZGRlbik7XG4gIH1cblxuICBwdWJsaWMgY29sdW1uc0NoYW5nZShkYXRhKSB7XG4gICAgZGF0YS5jb2x1bW4uaXNIaWRkZW4gPSAhZGF0YS5ldmVudDtcbiAgfVxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy50ZW1wbGF0ZXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgc3dpdGNoIChpdGVtLmdldFR5cGUoKSkge1xuICAgICAgICBjYXNlICdjYXB0aW9uJzpcbiAgICAgICAgICB0aGlzLmNhcHRpb25UZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnaGVhZGVyJzpcbiAgICAgICAgICB0aGlzLmhlYWRlclRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdib2R5JzpcbiAgICAgICAgICB0aGlzLmJvZHlUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3ZhbHVlJzpcbiAgICAgICAgICB0aGlzLnZhbHVlVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ2xvYWRpbmdib2R5JzpcbiAgICAgICAgICB0aGlzLmxvYWRpbmdCb2R5VGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ2Zvb3Rlcic6XG4gICAgICAgICAgdGhpcy5mb290ZXJUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnc3VtbWFyeSc6XG4gICAgICAgICAgdGhpcy5zdW1tYXJ5VGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ2NvbGdyb3VwJzpcbiAgICAgICAgICB0aGlzLmNvbEdyb3VwVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ3Jvd2V4cGFuc2lvbic6XG4gICAgICAgICAgdGhpcy5leHBhbmRlZFJvd1RlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdmcm96ZW5yb3dzJzpcbiAgICAgICAgICB0aGlzLmZyb3plblJvd3NUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnZnJvemVuaGVhZGVyJzpcbiAgICAgICAgICB0aGlzLmZyb3plbkhlYWRlclRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdmcm96ZW5ib2R5JzpcbiAgICAgICAgICB0aGlzLmZyb3plbkJvZHlUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnZnJvemVuZm9vdGVyJzpcbiAgICAgICAgICB0aGlzLmZyb3plbkZvb3RlclRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdmcm96ZW5jb2xncm91cCc6XG4gICAgICAgICAgdGhpcy5mcm96ZW5Db2xHcm91cFRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdlbXB0eW1lc3NhZ2UnOlxuICAgICAgICAgIHRoaXMuZW1wdHlNZXNzYWdlVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ3BhZ2luYXRvcmxlZnQnOlxuICAgICAgICAgIHRoaXMucGFnaW5hdG9yTGVmdFRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdwYWdpbmF0b3JyaWdodCc6XG4gICAgICAgICAgdGhpcy5wYWdpbmF0b3JSaWdodFRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGNvbGxhcHNlKGV2ZW50LCBkdCkge1xuICAgIHRoaXMudmFsdWVzLmZvckVhY2goKG5vZGUpID0+IHtcbiAgICAgIHRoaXMudG9nZ2xlQ29sbGFwc2Uobm9kZSwgdGhpcy5pc0NvbGxhcHNlKTtcbiAgICB9KTtcbiAgICB0aGlzLmlzQ29sbGFwc2UgPSAhdGhpcy5pc0NvbGxhcHNlO1xuICAgIGR0LmZpbHRlckdsb2JhbCh0aGlzLnNlYXJjaFRleHQsICdjb250YWlucycpO1xuICB9XG5cbiAgdG9nZ2xlQ29sbGFwc2Uobm9kZTogYW55LCBpc0NvbGxhcHNlZDogYm9vbGVhbikge1xuXG4gICAgaWYgKG5vZGUuY2hpbGRyZW4pIHtcbiAgICAgIG5vZGUuZXhwYW5kZWQgPSBpc0NvbGxhcHNlZDtcbiAgICAgIGZvciAoY29uc3QgY24gb2Ygbm9kZS5jaGlsZHJlbikge1xuICAgICAgICBpZiAoY24pIHtcbiAgICAgICAgICB0aGlzLnRvZ2dsZUNvbGxhcHNlKGNuLCBpc0NvbGxhcHNlZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyZWVUYWJsZU1vZHVsZSwgUGlwZXNNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgRm9ybXNNb2R1bGUsIFRhYmxlQ29tcG9uZW50TW9kdWxlXSxcbiAgZXhwb3J0czogW1RyZWVUYWJsZUNvbXBvbmVudF0sXG4gIGRlY2xhcmF0aW9uczogW1RyZWVUYWJsZUNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgVHJlZVRhYmxlQ29tcG9uZW50TW9kdWxlIHtcbn1cbiJdfQ==
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ export { DropdownComponent as ɵb, DropdownItem as ɵa } from './components/dropdown/dropdown.component';
6
+ export { PrimengComponentsModule as ɵl } from './components/primeng.module';
7
+ export { TableClickOutsideDirective as ɵo } from './components/table/table-click-outside.directive';
8
+ export { TableColumnsMultiselectComponent as ɵm } from './components/table/table-columns-multiselect/table-columns-multiselect.component';
9
+ export { TableMenuOverlayComponent as ɵn } from './components/table/table-menu-overlay/table-menu-overlay.component';
10
+ export { TableComponent as ɵc } from './components/table/table.component';
11
+ export { TreeTableComponent as ɵd } from './components/tree-table/tree-table.component';
12
+ export { PropertyValuePipe as ɵe } from './pipes/propertyValue.pipe';
13
+ export { SafeUrlPipe as ɵj } from './pipes/safeUrl.pipe';
14
+ export { SortByPipe as ɵk } from './pipes/sort-by.pipe';
15
+ export { FormatNumToTime as ɵh, InDate as ɵi, NumToShortWeekdayPipe as ɵg, ShortToFullWeekdayPipe as ɵf } from './pipes/time.pipe';
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGFyay1pbnNwYXJrLWNvbXBvbmVudHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaW5zcGFyay9pbnNwYXJrLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJpbnNwYXJrLWluc3BhcmstY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3BHLE9BQU8sRUFBQyx1QkFBdUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRSxPQUFPLEVBQUMsMEJBQTBCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDbEcsT0FBTyxFQUFDLGdDQUFnQyxJQUFJLEVBQUUsRUFBQyxNQUFNLGtGQUFrRixDQUFDO0FBQ3hJLE9BQU8sRUFBQyx5QkFBeUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxvRUFBb0UsQ0FBQztBQUNuSCxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUN0RixPQUFPLEVBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsVUFBVSxJQUFJLEVBQUUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sSUFBSSxFQUFFLEVBQUMscUJBQXFCLElBQUksRUFBRSxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0Ryb3Bkb3duQ29tcG9uZW50IGFzIMm1YixEcm9wZG93bkl0ZW0gYXMgybVhfSBmcm9tICcuL2NvbXBvbmVudHMvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcbmV4cG9ydCB7UHJpbWVuZ0NvbXBvbmVudHNNb2R1bGUgYXMgybVsfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpbWVuZy5tb2R1bGUnO1xuZXhwb3J0IHtUYWJsZUNsaWNrT3V0c2lkZURpcmVjdGl2ZSBhcyDJtW99IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS90YWJsZS1jbGljay1vdXRzaWRlLmRpcmVjdGl2ZSc7XG5leHBvcnQge1RhYmxlQ29sdW1uc011bHRpc2VsZWN0Q29tcG9uZW50IGFzIMm1bX0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLWNvbHVtbnMtbXVsdGlzZWxlY3QvdGFibGUtY29sdW1ucy1tdWx0aXNlbGVjdC5jb21wb25lbnQnO1xuZXhwb3J0IHtUYWJsZU1lbnVPdmVybGF5Q29tcG9uZW50IGFzIMm1bn0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLW1lbnUtb3ZlcmxheS90YWJsZS1tZW51LW92ZXJsYXkuY29tcG9uZW50JztcbmV4cG9ydCB7VGFibGVDb21wb25lbnQgYXMgybVjfSBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29tcG9uZW50JztcbmV4cG9ydCB7VHJlZVRhYmxlQ29tcG9uZW50IGFzIMm1ZH0gZnJvbSAnLi9jb21wb25lbnRzL3RyZWUtdGFibGUvdHJlZS10YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9wZXJ0eVZhbHVlUGlwZSBhcyDJtWV9IGZyb20gJy4vcGlwZXMvcHJvcGVydHlWYWx1ZS5waXBlJztcbmV4cG9ydCB7U2FmZVVybFBpcGUgYXMgybVqfSBmcm9tICcuL3BpcGVzL3NhZmVVcmwucGlwZSc7XG5leHBvcnQge1NvcnRCeVBpcGUgYXMgybVrfSBmcm9tICcuL3BpcGVzL3NvcnQtYnkucGlwZSc7XG5leHBvcnQge0Zvcm1hdE51bVRvVGltZSBhcyDJtWgsSW5EYXRlIGFzIMm1aSxOdW1Ub1Nob3J0V2Vla2RheVBpcGUgYXMgybVnLFNob3J0VG9GdWxsV2Vla2RheVBpcGUgYXMgybVmfSBmcm9tICcuL3BpcGVzL3RpbWUucGlwZSc7Il19
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGluc3BhcmsvaW5zcGFyay1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01lbnVJdGVtfSBmcm9tIFwicHJpbWVuZy9wcmltZW5nXCI7XG5cblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNlbGxEYXRhIHtcbiAgbGFiZWw6IHN0cmluZztcbiAgc3RhdHVzOiAnc3VjY2VzcycgfCAnZXJyb3InIHwgJ3dhcm5pbmcnIHwgJ2NyaXRpY2FsJyB8ICdmYWxzZXZhbHVlJztcbiAgaXNFZGl0OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlQ29sdW1ucyB7XG5cbiAgbGFiZWw6IHN0cmluZztcbiAgZmllbGQ6IHN0cmluZztcbiAgc2l6ZTogc3RyaW5nO1xuICB3aWR0aD86IHN0cmluZztcbiAgaXNIaWRkZW4/OiBib29sZWFuO1xuICBpc1NlY29uZGFyeT86IGJvb2xlYW47XG4gIGlzUmVxdWlyZWQ/OiBib29sZWFuO1xuICBncm91cEtleT86IHN0cmluZ1tdO1xuICBncm91cE9yZGVyPzogKG51bWJlciB8IHN0cmluZylbXTtcbiAgdHJhbnNsYXRhYmxlPzogYm9vbGVhbjtcbiAgaXNGaWx0ZXJpbmc/OiBib29sZWFuO1xuICBjb2xfaW52aXNpYmxlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnNwYXJrTWVudUl0ZW0gZXh0ZW5kcyBNZW51SXRlbSB7XG4gIHN2Zz86IHN0cmluZztcbn1cblxuXG5leHBvcnQgdHlwZSBDaXJjbGVNb2RlID0gJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2Vycm9yJyB8ICdmYWxzZXZhbHVlJyB8ICdwcmltYXJ5JyB8ICdub25lJyB8ICdjcml0aWNhbCcgfCAnaW52ZXJzZScgfCAnYmxhY2snO1xuZXhwb3J0IHR5cGUgQ2lyY2xlU2l6ZSA9ICdtaW5pJyB8ICdzbWFsbCcgfCAnbm9ybWFsJyB8ICdiaWcnO1xuIl19
@@ -0,0 +1,19 @@
1
+ import { __decorate } from "tslib";
2
+ import { NgModule } from '@angular/core';
3
+ import { PropertyValuePipe } from './propertyValue.pipe';
4
+ import { FormatNumToTime, InDate, NumToShortWeekdayPipe, ShortToFullWeekdayPipe } from './time.pipe';
5
+ import { SafeUrlPipe } from './safeUrl.pipe';
6
+ import { SortByPipe } from "./sort-by.pipe";
7
+ var PipesModule = /** @class */ (function () {
8
+ function PipesModule() {
9
+ }
10
+ PipesModule = __decorate([
11
+ NgModule({
12
+ exports: [PropertyValuePipe, NumToShortWeekdayPipe, FormatNumToTime, InDate, ShortToFullWeekdayPipe, SafeUrlPipe, SortByPipe],
13
+ declarations: [PropertyValuePipe, NumToShortWeekdayPipe, FormatNumToTime, InDate, ShortToFullWeekdayPipe, SafeUrlPipe, SortByPipe]
14
+ })
15
+ ], PipesModule);
16
+ return PipesModule;
17
+ }());
18
+ export { PipesModule };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGluc3BhcmsvaW5zcGFyay1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsicGlwZXMvcGlwZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxlQUFlLEVBQUUsTUFBTSxFQUFFLHFCQUFxQixFQUFFLHNCQUFzQixFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ25HLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFNMUM7SUFBQTtJQUNBLENBQUM7SUFEWSxXQUFXO1FBSnZCLFFBQVEsQ0FBQztZQUNSLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixFQUFFLHFCQUFxQixFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQztZQUM3SCxZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUM7U0FDbkksQ0FBQztPQUNXLFdBQVcsQ0FDdkI7SUFBRCxrQkFBQztDQUFBLEFBREQsSUFDQztTQURZLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UHJvcGVydHlWYWx1ZVBpcGV9IGZyb20gJy4vcHJvcGVydHlWYWx1ZS5waXBlJztcbmltcG9ydCB7Rm9ybWF0TnVtVG9UaW1lLCBJbkRhdGUsIE51bVRvU2hvcnRXZWVrZGF5UGlwZSwgU2hvcnRUb0Z1bGxXZWVrZGF5UGlwZX0gZnJvbSAnLi90aW1lLnBpcGUnO1xuaW1wb3J0IHtTYWZlVXJsUGlwZX0gZnJvbSAnLi9zYWZlVXJsLnBpcGUnO1xuaW1wb3J0IHtTb3J0QnlQaXBlfSBmcm9tIFwiLi9zb3J0LWJ5LnBpcGVcIjtcblxuQE5nTW9kdWxlKHtcbiAgZXhwb3J0czogW1Byb3BlcnR5VmFsdWVQaXBlLCBOdW1Ub1Nob3J0V2Vla2RheVBpcGUsIEZvcm1hdE51bVRvVGltZSwgSW5EYXRlLCBTaG9ydFRvRnVsbFdlZWtkYXlQaXBlLCBTYWZlVXJsUGlwZSwgU29ydEJ5UGlwZV0sXG4gIGRlY2xhcmF0aW9uczogW1Byb3BlcnR5VmFsdWVQaXBlLCBOdW1Ub1Nob3J0V2Vla2RheVBpcGUsIEZvcm1hdE51bVRvVGltZSwgSW5EYXRlLCBTaG9ydFRvRnVsbFdlZWtkYXlQaXBlLCBTYWZlVXJsUGlwZSwgU29ydEJ5UGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgUGlwZXNNb2R1bGUge1xufVxuIl19
@@ -0,0 +1,26 @@
1
+ import { __decorate } from "tslib";
2
+ import { Pipe } from '@angular/core';
3
+ var PropertyValuePipe = /** @class */ (function () {
4
+ function PropertyValuePipe() {
5
+ }
6
+ PropertyValuePipe.prototype.transform = function (value, name) {
7
+ if (Array.isArray(value) || !(value instanceof Object) || !name) {
8
+ return value;
9
+ }
10
+ else if (name.indexOf('.') > -1) {
11
+ var splitName = name.split(/\.(.+)/, 2);
12
+ return this.transform(value[splitName[0]], splitName[1]);
13
+ }
14
+ else {
15
+ return value[name];
16
+ }
17
+ };
18
+ PropertyValuePipe = __decorate([
19
+ Pipe({
20
+ name: 'propertyValue'
21
+ })
22
+ ], PropertyValuePipe);
23
+ return PropertyValuePipe;
24
+ }());
25
+ export { PropertyValuePipe };
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHlWYWx1ZS5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGluc3BhcmsvaW5zcGFyay1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsicGlwZXMvcHJvcGVydHlWYWx1ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUtsRDtJQUFBO0lBV0EsQ0FBQztJQVZDLHFDQUFTLEdBQVQsVUFBVSxLQUFVLEVBQUUsSUFBWTtRQUNoQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssWUFBWSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUMvRCxPQUFPLEtBQUssQ0FBQztTQUNkO2FBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2pDLElBQU0sU0FBUyxHQUFhLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDMUQ7YUFBTTtZQUNMLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQztJQVZVLGlCQUFpQjtRQUg3QixJQUFJLENBQUM7WUFDSixJQUFJLEVBQUUsZUFBZTtTQUN0QixDQUFDO09BQ1csaUJBQWlCLENBVzdCO0lBQUQsd0JBQUM7Q0FBQSxBQVhELElBV0M7U0FYWSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdwcm9wZXJ0eVZhbHVlJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVZhbHVlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odmFsdWU6IGFueSwgbmFtZTogc3RyaW5nKTogYW55IHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkgfHwgISh2YWx1ZSBpbnN0YW5jZW9mIE9iamVjdCkgfHwgIW5hbWUpIHtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9IGVsc2UgaWYgKG5hbWUuaW5kZXhPZignLicpID4gLTEpIHtcbiAgICAgIGNvbnN0IHNwbGl0TmFtZTogc3RyaW5nW10gPSBuYW1lLnNwbGl0KC9cXC4oLispLywgMik7XG4gICAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0odmFsdWVbc3BsaXROYW1lWzBdXSwgc3BsaXROYW1lWzFdKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHZhbHVlW25hbWVdO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,38 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ // Angular
3
+ import { Pipe } from '@angular/core';
4
+ import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
5
+ /**
6
+ * Sanitize HTML
7
+ */
8
+ var SafeUrlPipe = /** @class */ (function () {
9
+ /**
10
+ * Pipe Constructor
11
+ *
12
+ * @param _sanitizer: DomSanitezer
13
+ */
14
+ // tslint:disable-next-line
15
+ function SafeUrlPipe(_sanitizer) {
16
+ this._sanitizer = _sanitizer;
17
+ }
18
+ /**
19
+ * Transform
20
+ *
21
+ * @param value: string
22
+ */
23
+ SafeUrlPipe.prototype.transform = function (value) {
24
+ return this._sanitizer.bypassSecurityTrustResourceUrl(value);
25
+ };
26
+ SafeUrlPipe.ctorParameters = function () { return [
27
+ { type: DomSanitizer }
28
+ ]; };
29
+ SafeUrlPipe = __decorate([
30
+ Pipe({
31
+ name: 'safeUrl'
32
+ }),
33
+ __metadata("design:paramtypes", [DomSanitizer])
34
+ ], SafeUrlPipe);
35
+ return SafeUrlPipe;
36
+ }());
37
+ export { SafeUrlPipe };
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZVVybC5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGluc3BhcmsvaW5zcGFyay1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsicGlwZXMvc2FmZVVybC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFDLFlBQVksRUFBRSxlQUFlLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUV4RTs7R0FFRztBQUlIO0lBQ0U7Ozs7T0FJRztJQUNILDJCQUEyQjtJQUMzQixxQkFBc0IsVUFBd0I7UUFBeEIsZUFBVSxHQUFWLFVBQVUsQ0FBYztJQUM5QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILCtCQUFTLEdBQVQsVUFBVSxLQUFhO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRCxDQUFDOztnQkFWaUMsWUFBWTs7SUFQbkMsV0FBVztRQUh2QixJQUFJLENBQUM7WUFDSixJQUFJLEVBQUUsU0FBUztTQUNoQixDQUFDO3lDQVFrQyxZQUFZO09BUG5DLFdBQVcsQ0FrQnZCO0lBQUQsa0JBQUM7Q0FBQSxBQWxCRCxJQWtCQztTQWxCWSxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxuaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG4vKipcbiAqIFNhbml0aXplIEhUTUxcbiAqL1xuQFBpcGUoe1xuICBuYW1lOiAnc2FmZVVybCdcbn0pXG5leHBvcnQgY2xhc3MgU2FmZVVybFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgLyoqXG4gICAqIFBpcGUgQ29uc3RydWN0b3JcbiAgICpcbiAgICogQHBhcmFtIF9zYW5pdGl6ZXI6IERvbVNhbml0ZXplclxuICAgKi9cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlOiBzdHJpbmdcbiAgICovXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogU2FmZVJlc291cmNlVXJsIHtcbiAgICByZXR1cm4gdGhpcy5fc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh2YWx1ZSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { __decorate } from "tslib";
2
+ import { Pipe } from '@angular/core';
3
+ var SortByPipe = /** @class */ (function () {
4
+ function SortByPipe() {
5
+ }
6
+ SortByPipe.prototype.transform = function (arr, options) {
7
+ if (arr === undefined) {
8
+ return;
9
+ }
10
+ return arr.sort(function (a, b) {
11
+ var cmp = 0;
12
+ for (var i = 0; i < options.length; i++) {
13
+ var x = a[options[i].sortField];
14
+ var y = b[options[i].sortField];
15
+ var asc = options[i].isAscending ? -1 : 1;
16
+ cmp = (((x === y) ? 0 : (x < y) ? -1 * asc : 1 * asc) + cmp) * 10;
17
+ }
18
+ return cmp;
19
+ });
20
+ };
21
+ SortByPipe = __decorate([
22
+ Pipe({
23
+ name: 'SortByPipe'
24
+ })
25
+ ], SortByPipe);
26
+ return SortByPipe;
27
+ }());
28
+ export { SortByPipe };
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1ieS5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGluc3BhcmsvaW5zcGFyay1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsicGlwZXMvc29ydC1ieS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUtwRDtJQUFBO0lBZ0JBLENBQUM7SUFmQyw4QkFBUyxHQUFULFVBQVUsR0FBZSxFQUFFLE9BQW1CO1FBQzVDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtZQUNyQixPQUFPO1NBQ1I7UUFDRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBQyxDQUFNLEVBQUUsQ0FBTTtZQUM3QixJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDWixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDdkMsSUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDbEMsSUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDbEMsSUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDNUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO2FBQ25FO1lBQ0QsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFmVSxVQUFVO1FBSHRCLElBQUksQ0FBQztZQUNKLElBQUksRUFBRSxZQUFZO1NBQ25CLENBQUM7T0FDVyxVQUFVLENBZ0J0QjtJQUFELGlCQUFDO0NBQUEsQUFoQkQsSUFnQkM7U0FoQlksVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnU29ydEJ5UGlwZSdcbn0pXG5leHBvcnQgY2xhc3MgU29ydEJ5UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0oYXJyOiBBcnJheTxhbnk+LCBvcHRpb25zOiBBcnJheTxhbnk+KTogYW55IHtcbiAgICBpZiAoYXJyID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgcmV0dXJuIGFyci5zb3J0KChhOiBhbnksIGI6IGFueSk6IG51bWJlciA9PiB7XG4gICAgICBsZXQgY21wID0gMDtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3B0aW9ucy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCB4ID0gYVtvcHRpb25zW2ldLnNvcnRGaWVsZF07XG4gICAgICAgIGNvbnN0IHkgPSBiW29wdGlvbnNbaV0uc29ydEZpZWxkXTtcbiAgICAgICAgY29uc3QgYXNjID0gb3B0aW9uc1tpXS5pc0FzY2VuZGluZyA/IC0xIDogMTtcbiAgICAgICAgY21wID0gKCgoeCA9PT0geSkgPyAwIDogKHggPCB5KSA/IC0xICogYXNjIDogMSAqIGFzYykgKyBjbXApICogMTA7XG4gICAgICB9XG4gICAgICByZXR1cm4gY21wO1xuICAgIH0pO1xuICB9XG59XG4iXX0=