aril 2.0.1-dev.4 → 2.0.1-dev.5

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 (189) hide show
  1. package/boot/config/apps/src/interfaces.d.ts +7 -1
  2. package/boot/config/apps/src/route-close.service.d.ts +8 -3
  3. package/boot/config/apps/src/route-permissions.d.ts +2 -2
  4. package/esm2022/boot/config/api/src/interfaces.mjs +3 -2
  5. package/esm2022/boot/config/apps/src/apps.service.mjs +2 -2
  6. package/esm2022/boot/config/apps/src/custom-route-reuse-strategy.class.mjs +4 -4
  7. package/esm2022/boot/config/apps/src/interfaces.mjs +2 -1
  8. package/esm2022/boot/config/apps/src/route-close.service.mjs +11 -4
  9. package/esm2022/boot/config/apps/src/route-permissions.mjs +24 -6
  10. package/esm2022/boot/config/plugins/src/plugins.service.mjs +7 -5
  11. package/esm2022/boot/host/src/bootstrap.mjs +5 -3
  12. package/esm2022/boot/mfe/src/bootstrap.mjs +11 -3
  13. package/esm2022/http/index.mjs +1 -2
  14. package/esm2022/http/src/serviceBase.mjs +4 -4
  15. package/esm2022/http/src/serviceStateMethods.mjs +9 -1
  16. package/esm2022/keycloak/src/auth.interceptor.mjs +5 -2
  17. package/esm2022/selection/aril-selection.mjs +5 -0
  18. package/esm2022/selection/index.mjs +2 -0
  19. package/esm2022/selection/src/interfaces.mjs +2 -0
  20. package/esm2022/selection/src/selection-group.service.mjs +195 -0
  21. package/esm2022/theme/layout/app/profileSidebar/modals/edit-profile-modal/edit-profile-modal.component.mjs +2 -2
  22. package/esm2022/theme/layout/index.mjs +4 -2
  23. package/esm2022/ui/button/index.mjs +1 -2
  24. package/esm2022/ui/button/src/button.component.mjs +5 -2
  25. package/esm2022/ui/charts/index.mjs +1 -11
  26. package/esm2022/ui/lib/index.mjs +1 -4
  27. package/esm2022/ui/lib/src/form/form-error-message.directive.mjs +9 -5
  28. package/esm2022/ui/multiSelect/src/multi-select.component.mjs +25 -25
  29. package/esm2022/ui/relativeDateSelector/src/relative-date-selector.component.mjs +2 -2
  30. package/esm2022/ui/selectBox/src/select-box.component.mjs +11 -34
  31. package/esm2022/ui/table/src/table.component.mjs +10 -5
  32. package/esm2022/ui/value/src/value.component.mjs +3 -2
  33. package/esm2022/ui-business/enumPicker/src/enum-picker.component.mjs +14 -6
  34. package/esm2022/util/activity/aril-util-activity.mjs +5 -0
  35. package/esm2022/util/activity/index.mjs +4 -0
  36. package/esm2022/util/activity/src/activity.constants.mjs +4 -0
  37. package/esm2022/util/activity/src/activity.service.mjs +218 -0
  38. package/esm2022/util/activity/src/activity.types.mjs +2 -0
  39. package/esm2022/util/block/src/block.mjs +9 -25
  40. package/esm2022/util/pub-sub/src/pub-sub.service.mjs +10 -5
  41. package/fesm2022/{aril-app.component-s14ruALV.mjs → aril-app.component-MjG_tPEe.mjs} +2 -1
  42. package/fesm2022/{aril-app.component-s14ruALV.mjs.map → aril-app.component-MjG_tPEe.mjs.map} +1 -1
  43. package/fesm2022/aril-boot-config-api.mjs +2 -1
  44. package/fesm2022/aril-boot-config-api.mjs.map +1 -1
  45. package/fesm2022/aril-boot-config-apps.mjs +36 -12
  46. package/fesm2022/aril-boot-config-apps.mjs.map +1 -1
  47. package/fesm2022/aril-boot-config-plugins.mjs +6 -4
  48. package/fesm2022/aril-boot-config-plugins.mjs.map +1 -1
  49. package/fesm2022/aril-boot-host.mjs +4 -2
  50. package/fesm2022/aril-boot-host.mjs.map +1 -1
  51. package/fesm2022/{aril-boot-mfe-app.component-oxzMhRXe.mjs → aril-boot-mfe-app.component-DtspQ3J8.mjs} +3 -2
  52. package/fesm2022/{aril-boot-mfe-app.component-oxzMhRXe.mjs.map → aril-boot-mfe-app.component-DtspQ3J8.mjs.map} +1 -1
  53. package/fesm2022/{aril-boot-mfe-aril-boot-mfe-CKOM61xb.mjs → aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs} +12 -4
  54. package/fesm2022/aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs.map +1 -0
  55. package/fesm2022/aril-boot-mfe.mjs +2 -1
  56. package/fesm2022/aril-boot-mfe.mjs.map +1 -1
  57. package/fesm2022/aril-http.mjs +11 -7
  58. package/fesm2022/aril-http.mjs.map +1 -1
  59. package/fesm2022/aril-keycloak.mjs +4 -1
  60. package/fesm2022/aril-keycloak.mjs.map +1 -1
  61. package/fesm2022/aril-selection.mjs +202 -0
  62. package/fesm2022/aril-selection.mjs.map +1 -0
  63. package/fesm2022/aril-theme-layout.mjs +4 -193
  64. package/fesm2022/aril-theme-layout.mjs.map +1 -1
  65. package/fesm2022/aril-ui-business-enumPicker.mjs +14 -6
  66. package/fesm2022/aril-ui-business-enumPicker.mjs.map +1 -1
  67. package/fesm2022/aril-ui-button.mjs +5 -17
  68. package/fesm2022/aril-ui-button.mjs.map +1 -1
  69. package/fesm2022/aril-ui-charts.mjs +4 -1302
  70. package/fesm2022/aril-ui-charts.mjs.map +1 -1
  71. package/fesm2022/aril-ui-lib.mjs +10 -98
  72. package/fesm2022/aril-ui-lib.mjs.map +1 -1
  73. package/fesm2022/aril-ui-multiSelect.mjs +24 -24
  74. package/fesm2022/aril-ui-multiSelect.mjs.map +1 -1
  75. package/fesm2022/aril-ui-relativeDateSelector.mjs +1 -1
  76. package/fesm2022/aril-ui-relativeDateSelector.mjs.map +1 -1
  77. package/fesm2022/aril-ui-selectBox.mjs +10 -33
  78. package/fesm2022/aril-ui-selectBox.mjs.map +1 -1
  79. package/fesm2022/aril-ui-table.mjs +9 -4
  80. package/fesm2022/aril-ui-table.mjs.map +1 -1
  81. package/fesm2022/aril-ui-value.mjs +2 -1
  82. package/fesm2022/aril-ui-value.mjs.map +1 -1
  83. package/fesm2022/aril-util-activity.mjs +228 -0
  84. package/fesm2022/aril-util-activity.mjs.map +1 -0
  85. package/fesm2022/aril-util-block.mjs +9 -25
  86. package/fesm2022/aril-util-block.mjs.map +1 -1
  87. package/fesm2022/aril-util-pub-sub.mjs +9 -4
  88. package/fesm2022/aril-util-pub-sub.mjs.map +1 -1
  89. package/fesm2022/aril.mjs +14 -5
  90. package/fesm2022/aril.mjs.map +1 -1
  91. package/http/index.d.ts +0 -1
  92. package/http/src/serviceStateMethods.d.ts +1 -0
  93. package/package.json +215 -239
  94. package/selection/index.d.ts +1 -0
  95. package/selection/src/interfaces.d.ts +8 -0
  96. package/{theme/layout/service → selection/src}/selection-group.service.d.ts +1 -1
  97. package/theme/layout/index.d.ts +1 -1
  98. package/theme/layout/index.ts +3 -1
  99. package/ui/button/index.d.ts +0 -1
  100. package/ui/button/src/button.component.d.ts +2 -0
  101. package/ui/charts/index.d.ts +0 -10
  102. package/ui/lib/index.d.ts +0 -3
  103. package/ui/lib/src/form/form-error-message.directive.d.ts +4 -3
  104. package/ui/multiSelect/src/multi-select.component.d.ts +4 -5
  105. package/ui/selectBox/src/select-box.component.d.ts +2 -7
  106. package/ui/table/src/table.component.d.ts +3 -2
  107. package/util/activity/index.d.ts +3 -0
  108. package/util/activity/src/activity.constants.d.ts +3 -0
  109. package/util/activity/src/activity.service.d.ts +35 -0
  110. package/util/activity/src/activity.types.d.ts +13 -0
  111. package/util/block/src/block.d.ts +4 -10
  112. package/util/pub-sub/src/pub-sub.service.d.ts +2 -2
  113. package/esm2022/http/src/serviceMockBase.mjs +0 -4
  114. package/esm2022/theme/layout/service/selection-group.service.mjs +0 -195
  115. package/esm2022/ui/button/src/split-button.component.mjs +0 -18
  116. package/esm2022/ui/charts/src/amCharts/column/column-chart.component.mjs +0 -124
  117. package/esm2022/ui/charts/src/amCharts/line/line-chart.component.mjs +0 -164
  118. package/esm2022/ui/charts/src/amCharts/pie/pie-chart.component.mjs +0 -116
  119. package/esm2022/ui/charts/src/highCharts/area/area-chart.component.mjs +0 -114
  120. package/esm2022/ui/charts/src/highCharts/bar/bar-chart.component.mjs +0 -100
  121. package/esm2022/ui/charts/src/highCharts/column/column-chart.component.mjs +0 -117
  122. package/esm2022/ui/charts/src/highCharts/heatmap/heatMap-chart.component.mjs +0 -252
  123. package/esm2022/ui/charts/src/highCharts/line/line-chart-series.component.mjs +0 -89
  124. package/esm2022/ui/charts/src/highCharts/line/line-chart.component.mjs +0 -82
  125. package/esm2022/ui/charts/src/highCharts/pie/pie-chart.component.mjs +0 -137
  126. package/esm2022/ui/charts/src/theme/theme.mjs +0 -54
  127. package/esm2022/ui/dxEditor/aril-ui-dxEditor.mjs +0 -5
  128. package/esm2022/ui/dxEditor/index.mjs +0 -2
  129. package/esm2022/ui/dxEditor/src/dx-editor.component.mjs +0 -26
  130. package/esm2022/ui/lib/src/form/form-field-builder.mjs +0 -23
  131. package/esm2022/ui/lib/src/input/common-input-validators.service.mjs +0 -49
  132. package/esm2022/ui/lib/src/input/input-disabled.directive.mjs +0 -25
  133. package/esm2022/ui/overlayPanel/aril-ui-overlayPanel.mjs +0 -5
  134. package/esm2022/ui/overlayPanel/index.mjs +0 -2
  135. package/esm2022/ui/overlayPanel/src/overlay-panel.component.mjs +0 -20
  136. package/esm2022/ui/tooltip/aril-ui-tooltip.mjs +0 -5
  137. package/esm2022/ui/tooltip/index.mjs +0 -2
  138. package/esm2022/ui/tooltip/src/tooltip-component.mjs +0 -23
  139. package/esm2022/ui/treeTable/aril-ui-treeTable.mjs +0 -5
  140. package/esm2022/ui/treeTable/index.mjs +0 -2
  141. package/esm2022/ui/treeTable/src/tree-table.component.mjs +0 -55
  142. package/esm2022/ui-business/operation-types-dialog/aril-ui-business-operation-types-dialog.mjs +0 -5
  143. package/esm2022/ui-business/operation-types-dialog/index.mjs +0 -2
  144. package/esm2022/ui-business/operation-types-dialog/src/operation-types-dialog.component.mjs +0 -76
  145. package/esm2022/util/unwrap/aril-util-unwrap.mjs +0 -5
  146. package/esm2022/util/unwrap/index.mjs +0 -2
  147. package/esm2022/util/unwrap/src/unwrap-tag.directive.mjs +0 -24
  148. package/fesm2022/aril-boot-mfe-aril-boot-mfe-CKOM61xb.mjs.map +0 -1
  149. package/fesm2022/aril-ui-business-operation-types-dialog.mjs +0 -83
  150. package/fesm2022/aril-ui-business-operation-types-dialog.mjs.map +0 -1
  151. package/fesm2022/aril-ui-dxEditor.mjs +0 -33
  152. package/fesm2022/aril-ui-dxEditor.mjs.map +0 -1
  153. package/fesm2022/aril-ui-overlayPanel.mjs +0 -27
  154. package/fesm2022/aril-ui-overlayPanel.mjs.map +0 -1
  155. package/fesm2022/aril-ui-tooltip.mjs +0 -30
  156. package/fesm2022/aril-ui-tooltip.mjs.map +0 -1
  157. package/fesm2022/aril-ui-treeTable.mjs +0 -62
  158. package/fesm2022/aril-ui-treeTable.mjs.map +0 -1
  159. package/fesm2022/aril-util-unwrap.mjs +0 -31
  160. package/fesm2022/aril-util-unwrap.mjs.map +0 -1
  161. package/http/src/serviceMockBase.d.ts +0 -6
  162. package/theme/layout/service/selection-group.service.ts +0 -209
  163. package/ui/button/src/split-button.component.d.ts +0 -8
  164. package/ui/charts/src/amCharts/column/column-chart.component.d.ts +0 -25
  165. package/ui/charts/src/amCharts/line/line-chart.component.d.ts +0 -26
  166. package/ui/charts/src/amCharts/pie/pie-chart.component.d.ts +0 -24
  167. package/ui/charts/src/highCharts/area/area-chart.component.d.ts +0 -20
  168. package/ui/charts/src/highCharts/bar/bar-chart.component.d.ts +0 -26
  169. package/ui/charts/src/highCharts/column/column-chart.component.d.ts +0 -28
  170. package/ui/charts/src/highCharts/heatmap/heatMap-chart.component.d.ts +0 -32
  171. package/ui/charts/src/highCharts/line/line-chart-series.component.d.ts +0 -21
  172. package/ui/charts/src/highCharts/line/line-chart.component.d.ts +0 -21
  173. package/ui/charts/src/highCharts/pie/pie-chart.component.d.ts +0 -27
  174. package/ui/charts/src/theme/theme.d.ts +0 -5
  175. package/ui/dxEditor/index.d.ts +0 -1
  176. package/ui/dxEditor/src/dx-editor.component.d.ts +0 -11
  177. package/ui/lib/src/form/form-field-builder.d.ts +0 -8
  178. package/ui/lib/src/input/common-input-validators.service.d.ts +0 -20
  179. package/ui/lib/src/input/input-disabled.directive.d.ts +0 -9
  180. package/ui/overlayPanel/index.d.ts +0 -1
  181. package/ui/overlayPanel/src/overlay-panel.component.d.ts +0 -8
  182. package/ui/tooltip/index.d.ts +0 -1
  183. package/ui/tooltip/src/tooltip-component.d.ts +0 -14
  184. package/ui/treeTable/index.d.ts +0 -1
  185. package/ui/treeTable/src/tree-table.component.d.ts +0 -21
  186. package/ui-business/operation-types-dialog/index.d.ts +0 -1
  187. package/ui-business/operation-types-dialog/src/operation-types-dialog.component.d.ts +0 -28
  188. package/util/unwrap/index.d.ts +0 -1
  189. package/util/unwrap/src/unwrap-tag.directive.d.ts +0 -9
@@ -1 +0,0 @@
1
- {"version":3,"file":"aril-ui-overlayPanel.mjs","sources":["../../projects/aril/ui/overlayPanel/src/overlay-panel.component.ts","../../projects/aril/ui/overlayPanel/src/overlay-panel.component.html","../../projects/aril/ui/overlayPanel/aril-ui-overlayPanel.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewChild, input } from '@angular/core';\r\n\r\nimport { OverlayPanel, OverlayPanelModule } from 'primeng/overlaypanel';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\tselector: 'aril-overlay-panel',\r\n\ttemplateUrl: './overlay-panel.component.html',\r\n\timports: [OverlayPanelModule],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class OverlayPanelComponent {\r\n\tdismissable = input<boolean>(true);\r\n\r\n\t@ViewChild('ref') ref!: OverlayPanel;\r\n}\r\n","<p-overlayPanel #ref [dismissable]=\"dismissable()\">\r\n\t<ng-template pTemplate=\"content\">\r\n\t\t<ng-content></ng-content>\r\n\t</ng-template>\r\n</p-overlayPanel>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAWa,qBAAqB,CAAA;AAPlC,IAAA,WAAA,GAAA;AAQC,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAU,IAAI,CAAC,CAAC;AAGnC,KAAA;8GAJY,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,KAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,KAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECXlC,8KAKA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDGW,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,OAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,aAAA,EAAA,uBAAA,EAAA,uBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAGhB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAPjC,SAAS;iCACG,IAAI,EAAA,QAAA,EACN,oBAAoB,EAErB,OAAA,EAAA,CAAC,kBAAkB,CAAC,EAAA,eAAA,EACZ,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,8KAAA,EAAA,CAAA;8BAK7B,GAAG,EAAA,CAAA;sBAApB,SAAS;uBAAC,KAAK,CAAA;;;AEdjB;;AAEG;;;;"}
@@ -1,30 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { input, Component } from '@angular/core';
3
- import * as i1 from 'primeng/tooltip';
4
- import { TooltipModule } from 'primeng/tooltip';
5
-
6
- class TooltipComponent {
7
- constructor() {
8
- this.text = input('');
9
- this.template = input();
10
- this.position = input('right'); // (right, top, bottom, left)
11
- this.showDelay = input(0); // (ms)
12
- this.hideDelay = input(0); // (ms)
13
- this.tooltipStyle = input({});
14
- this.tooltipStyleClass = input('');
15
- this.appendTo = input('body');
16
- }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: TooltipComponent, isStandalone: true, selector: "aril-tooltip", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, showDelay: { classPropertyName: "showDelay", publicName: "showDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "hideDelay", isSignal: true, isRequired: false, transformFunction: null }, tooltipStyle: { classPropertyName: "tooltipStyle", publicName: "tooltipStyle", isSignal: true, isRequired: false, transformFunction: null }, tooltipStyleClass: { classPropertyName: "tooltipStyleClass", publicName: "tooltipStyleClass", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<span\r\n\t[pTooltip]=\"template() ?? text()\"\r\n\t[tooltipPosition]=\"position()\"\r\n\t[showDelay]=\"showDelay()\"\r\n\t[hideDelay]=\"hideDelay()\"\r\n\t[style]=\"tooltipStyle()\"\r\n\t[tooltipStyleClass]=\"tooltipStyleClass()\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-content></ng-content>\r\n</span>\r\n", dependencies: [{ kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TooltipComponent, decorators: [{
21
- type: Component,
22
- args: [{ standalone: true, selector: 'aril-tooltip', imports: [TooltipModule], template: "<span\r\n\t[pTooltip]=\"template() ?? text()\"\r\n\t[tooltipPosition]=\"position()\"\r\n\t[showDelay]=\"showDelay()\"\r\n\t[hideDelay]=\"hideDelay()\"\r\n\t[style]=\"tooltipStyle()\"\r\n\t[tooltipStyleClass]=\"tooltipStyleClass()\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-content></ng-content>\r\n</span>\r\n" }]
23
- }] });
24
-
25
- /**
26
- * Generated bundle index. Do not edit.
27
- */
28
-
29
- export { TooltipComponent };
30
- //# sourceMappingURL=aril-ui-tooltip.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aril-ui-tooltip.mjs","sources":["../../projects/aril/ui/tooltip/src/tooltip-component.ts","../../projects/aril/ui/tooltip/src/tooltip-component.html","../../projects/aril/ui/tooltip/aril-ui-tooltip.ts"],"sourcesContent":["import { Component, TemplateRef, input } from '@angular/core';\r\n\r\nimport { TooltipModule } from 'primeng/tooltip';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\tselector: 'aril-tooltip',\r\n\ttemplateUrl: './tooltip-component.html',\r\n\timports: [TooltipModule]\r\n})\r\nexport class TooltipComponent {\r\n\ttext = input<string>('');\r\n\ttemplate = input<TemplateRef<any> | null>();\r\n\tposition = input<string>('right'); // (right, top, bottom, left)\r\n\tshowDelay = input<number>(0); // (ms)\r\n\thideDelay = input<number>(0); // (ms)\r\n\ttooltipStyle = input<any>({});\r\n\ttooltipStyleClass = input<string>('');\r\n\tappendTo = input<any>('body');\r\n}\r\n","<span\r\n\t[pTooltip]=\"template() ?? text()\"\r\n\t[tooltipPosition]=\"position()\"\r\n\t[showDelay]=\"showDelay()\"\r\n\t[hideDelay]=\"hideDelay()\"\r\n\t[style]=\"tooltipStyle()\"\r\n\t[tooltipStyleClass]=\"tooltipStyleClass()\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-content></ng-content>\r\n</span>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,62 +0,0 @@
1
- import { NgFor, NgForOf, NgTemplateOutlet } from '@angular/common';
2
- import * as i0 from '@angular/core';
3
- import { input, EventEmitter, Component, ChangeDetectionStrategy, Output, ContentChildren } from '@angular/core';
4
- import { FormsModule } from '@angular/forms';
5
- import * as i1 from 'primeng/treetable';
6
- import { TreeTableModule } from 'primeng/treetable';
7
- import * as FileSaver from 'file-saver';
8
- import { ButtonComponent } from 'aril/ui/button';
9
- import { TableColumnComponent } from 'aril/ui/table';
10
- import { TextComponent } from 'aril/ui/text';
11
- import * as i2 from 'primeng/api';
12
-
13
- /* eslint-disable @typescript-eslint/no-explicit-any */
14
- const pageOptions = [10, 20, 50, 100];
15
- class TreeTableComponent {
16
- constructor() {
17
- this.data = input.required();
18
- this.checkboxSelection = input();
19
- this.pageSize = input(10);
20
- this.scrollable = input(false);
21
- this.scrollHeight = input();
22
- this.expandEvent = new EventEmitter();
23
- this.selectionEvent = new EventEmitter();
24
- this.pageOptions = pageOptions;
25
- }
26
- excelExport() {
27
- // import('xlsx').then((xlsx) => {
28
- // const worksheet = xlsx.utils.json_to_sheet(this.data());
29
- // const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };
30
- // const excelBuffer: any = xlsx.write(workbook, { bookType: 'xlsx', type: 'array' });
31
- // this.saveAsExcelFile(excelBuffer, 'excel_worksheet');
32
- // });
33
- }
34
- saveAsExcelFile(buffer, fileName) {
35
- const EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';
36
- const EXCEL_EXTENSION = '.xlsx';
37
- const data = new Blob([buffer], {
38
- type: EXCEL_TYPE
39
- });
40
- FileSaver.saveAs(data, fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION);
41
- }
42
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TreeTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
43
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: TreeTableComponent, isStandalone: true, selector: "aril-tree-table", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, checkboxSelection: { classPropertyName: "checkboxSelection", publicName: "checkboxSelection", isSignal: true, isRequired: false, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: false, transformFunction: null }, scrollable: { classPropertyName: "scrollable", publicName: "scrollable", isSignal: true, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expandEvent: "expandEvent", selectionEvent: "selectionEvent" }, queries: [{ propertyName: "columns", predicate: TableColumnComponent }], ngImport: i0, template: "<p-treeTable\r\n\t#ref\r\n\t[value]=\"data()\"\r\n\t[columns]=\"columns._results\"\r\n\t[rows]=\"pageSize()\"\r\n\t[rowHover]=\"true\"\r\n\t[paginator]=\"true\"\r\n\t[rowsPerPageOptions]=\"pageOptions\"\r\n\t[filterDelay]=\"0\"\r\n\tsortMode=\"multiple\"\r\n\t[scrollable]=\"scrollable()\"\r\n\t[scrollHeight]=\"scrollHeight()\"\r\n\t[(selection)]=\"selectedNodes\"\r\n\t(onNodeExpand)=\"expandEvent.emit($event.node)\"\r\n\t(selectionChange)=\"selectionEvent.emit(selectedNodes)\"\r\n\t[showCurrentPageReport]=\"true\"\r\n\tcurrentPageReportTemplate=\"Toplam : {totalRecords} kay\u0131t | Sayfa : {currentPage} / {totalPages}\"\r\n\tstyleClass=\"p-treetable-gridlines p-treetable-striped p-treetable-sm\">\r\n\t<ng-template pTemplate=\"caption\">\r\n\t\t<div class=\"flex\">\r\n\t\t\t<aril-button\r\n\t\t\t\tsize=\"sm\"\r\n\t\t\t\ticon=\"FILE_EXCEL\"\r\n\t\t\t\tcolor=\"primary\"\r\n\t\t\t\tpTooltip=\"XLS\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\t(clickEvent)=\"excelExport()\">\r\n\t\t\t</aril-button>\r\n\t\t\t<!-- <span class=\"p-input-icon-left ml-auto\">\r\n\t\t\t\t<aril-text\r\n\t\t\t\t\ticon=\"SEARCH\"\r\n\t\t\t\t\ticonPos=\"left\"\r\n\t\t\t\t\tplaceholder=\"Arama\"\r\n\t\t\t\t\t[ngModel]=\"filterText\"\r\n\t\t\t\t\t(ngModelChange)=\"ref.filterGlobal($event, 'contains')\">\r\n\t\t\t\t</aril-text>\r\n\t\t\t</span> -->\r\n\t\t</div>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"header\" let-columns>\r\n\t\t<tr>\r\n\t\t\t@if (checkboxSelection()) {\r\n\t\t\t\t<th>\r\n\t\t\t\t\t<p-treeTableHeaderCheckbox></p-treeTableHeaderCheckbox>\r\n\t\t\t\t</th>\r\n\t\t\t}\r\n\t\t\t@for (column of columns; track $index) {\r\n\t\t\t\t@if (column.isOperation) {\r\n\t\t\t\t\t<th>\r\n\t\t\t\t\t\t<div class=\"flex justify-content-center\">Operations</div>\r\n\t\t\t\t\t</th>\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t<th [ttSortableColumn]=\"column.field\">\r\n\t\t\t\t\t\t<div class=\"flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t{{ column.header }}\r\n\t\t\t\t\t\t\t<!-- <p-treeTableSortIcon [field]=\"column.field\"></p-treeTableSortIcon> -->\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</th>\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t</tr>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n\t\t<tr [ttRow]=\"rowNode\">\r\n\t\t\t@if (checkboxSelection()) {\r\n\t\t\t\t<td>\r\n\t\t\t\t\t<p-treeTableCheckbox [value]=\"rowNode\"></p-treeTableCheckbox>\r\n\t\t\t\t</td>\r\n\t\t\t}\r\n\t\t\t@for (column of columns; track $index) {\r\n\t\t\t\t<td>\r\n\t\t\t\t\t@if ($first) {\r\n\t\t\t\t\t\t<p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n\t\t\t\t\t}\r\n\t\t\t\t\t<ng-template ngFor [ngForOf]=\"[rowNode.node]\" [ngForTemplate]=\"column.template\"> </ng-template>\r\n\t\t\t\t</td>\r\n\t\t\t}\r\n\t\t</tr>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"summary\">\r\n\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"emptymessage\">\r\n\t\t<tr>\r\n\t\t\t<td [attr.colspan]=\"columns._results.length\">No Data Found</td>\r\n\t\t</tr>\r\n\t</ng-template>\r\n</p-treeTable>\r\n", dependencies: [{ kind: "ngmodule", type: TreeTableModule }, { kind: "component", type: i1.TreeTable, selector: "p-treeTable", inputs: ["columns", "style", "styleClass", "tableStyle", "tableStyleClass", "autoLayout", "lazy", "lazyLoadOnInit", "paginator", "rows", "first", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "customSort", "selectionMode", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "compareSelectionBy", "rowHover", "loading", "loadingIcon", "showLoader", "scrollable", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "frozenColumns", "resizableColumns", "columnResizeMode", "reorderableColumns", "contextMenu", "rowTrackBy", "filters", "globalFilterFields", "filterDelay", "filterMode", "filterLocale", "paginatorLocale", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "value", "virtualRowHeight", "selectionKeys"], outputs: ["selectionChange", "contextMenuSelectionChange", "onFilter", "onNodeExpand", "onNodeCollapse", "onPage", "onSort", "onLazyLoad", "sortFunction", "onColResize", "onColReorder", "onNodeSelect", "onNodeUnselect", "onContextMenuSelect", "onHeaderCheckboxToggle", "onEditInit", "onEditComplete", "onEditCancel", "selectionKeysChange"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i1.TreeTableToggler, selector: "p-treeTableToggler", inputs: ["rowNode"] }, { kind: "directive", type: i1.TTSortableColumn, selector: "[ttSortableColumn]", inputs: ["ttSortableColumn", "ttSortableColumnDisabled"] }, { kind: "directive", type: i1.TTRow, selector: "[ttRow]", inputs: ["ttRow"] }, { kind: "component", type: i1.TTCheckbox, selector: "p-treeTableCheckbox", inputs: ["disabled", "value"] }, { kind: "component", type: i1.TTHeaderCheckbox, selector: "p-treeTableHeaderCheckbox" }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
44
- }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TreeTableComponent, decorators: [{
46
- type: Component,
47
- args: [{ standalone: true, selector: 'aril-tree-table', imports: [TreeTableModule, ButtonComponent, TextComponent, FormsModule, NgFor, NgForOf, NgTemplateOutlet], changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-treeTable\r\n\t#ref\r\n\t[value]=\"data()\"\r\n\t[columns]=\"columns._results\"\r\n\t[rows]=\"pageSize()\"\r\n\t[rowHover]=\"true\"\r\n\t[paginator]=\"true\"\r\n\t[rowsPerPageOptions]=\"pageOptions\"\r\n\t[filterDelay]=\"0\"\r\n\tsortMode=\"multiple\"\r\n\t[scrollable]=\"scrollable()\"\r\n\t[scrollHeight]=\"scrollHeight()\"\r\n\t[(selection)]=\"selectedNodes\"\r\n\t(onNodeExpand)=\"expandEvent.emit($event.node)\"\r\n\t(selectionChange)=\"selectionEvent.emit(selectedNodes)\"\r\n\t[showCurrentPageReport]=\"true\"\r\n\tcurrentPageReportTemplate=\"Toplam : {totalRecords} kay\u0131t | Sayfa : {currentPage} / {totalPages}\"\r\n\tstyleClass=\"p-treetable-gridlines p-treetable-striped p-treetable-sm\">\r\n\t<ng-template pTemplate=\"caption\">\r\n\t\t<div class=\"flex\">\r\n\t\t\t<aril-button\r\n\t\t\t\tsize=\"sm\"\r\n\t\t\t\ticon=\"FILE_EXCEL\"\r\n\t\t\t\tcolor=\"primary\"\r\n\t\t\t\tpTooltip=\"XLS\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\t(clickEvent)=\"excelExport()\">\r\n\t\t\t</aril-button>\r\n\t\t\t<!-- <span class=\"p-input-icon-left ml-auto\">\r\n\t\t\t\t<aril-text\r\n\t\t\t\t\ticon=\"SEARCH\"\r\n\t\t\t\t\ticonPos=\"left\"\r\n\t\t\t\t\tplaceholder=\"Arama\"\r\n\t\t\t\t\t[ngModel]=\"filterText\"\r\n\t\t\t\t\t(ngModelChange)=\"ref.filterGlobal($event, 'contains')\">\r\n\t\t\t\t</aril-text>\r\n\t\t\t</span> -->\r\n\t\t</div>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"header\" let-columns>\r\n\t\t<tr>\r\n\t\t\t@if (checkboxSelection()) {\r\n\t\t\t\t<th>\r\n\t\t\t\t\t<p-treeTableHeaderCheckbox></p-treeTableHeaderCheckbox>\r\n\t\t\t\t</th>\r\n\t\t\t}\r\n\t\t\t@for (column of columns; track $index) {\r\n\t\t\t\t@if (column.isOperation) {\r\n\t\t\t\t\t<th>\r\n\t\t\t\t\t\t<div class=\"flex justify-content-center\">Operations</div>\r\n\t\t\t\t\t</th>\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t<th [ttSortableColumn]=\"column.field\">\r\n\t\t\t\t\t\t<div class=\"flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t{{ column.header }}\r\n\t\t\t\t\t\t\t<!-- <p-treeTableSortIcon [field]=\"column.field\"></p-treeTableSortIcon> -->\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</th>\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t</tr>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n\t\t<tr [ttRow]=\"rowNode\">\r\n\t\t\t@if (checkboxSelection()) {\r\n\t\t\t\t<td>\r\n\t\t\t\t\t<p-treeTableCheckbox [value]=\"rowNode\"></p-treeTableCheckbox>\r\n\t\t\t\t</td>\r\n\t\t\t}\r\n\t\t\t@for (column of columns; track $index) {\r\n\t\t\t\t<td>\r\n\t\t\t\t\t@if ($first) {\r\n\t\t\t\t\t\t<p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n\t\t\t\t\t}\r\n\t\t\t\t\t<ng-template ngFor [ngForOf]=\"[rowNode.node]\" [ngForTemplate]=\"column.template\"> </ng-template>\r\n\t\t\t\t</td>\r\n\t\t\t}\r\n\t\t</tr>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"summary\">\r\n\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"emptymessage\">\r\n\t\t<tr>\r\n\t\t\t<td [attr.colspan]=\"columns._results.length\">No Data Found</td>\r\n\t\t</tr>\r\n\t</ng-template>\r\n</p-treeTable>\r\n" }]
48
- }], propDecorators: { expandEvent: [{
49
- type: Output
50
- }], selectionEvent: [{
51
- type: Output
52
- }], columns: [{
53
- type: ContentChildren,
54
- args: [TableColumnComponent]
55
- }] } });
56
-
57
- /**
58
- * Generated bundle index. Do not edit.
59
- */
60
-
61
- export { TreeTableComponent };
62
- //# sourceMappingURL=aril-ui-treeTable.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aril-ui-treeTable.mjs","sources":["../../projects/aril/ui/treeTable/src/tree-table.component.ts","../../projects/aril/ui/treeTable/src/tree-table.component.html","../../projects/aril/ui/treeTable/aril-ui-treeTable.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { NgFor, NgForOf, NgTemplateOutlet } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Output, input } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { TreeNode, TreeTableNode } from 'primeng/api';\r\nimport { TreeTableModule } from 'primeng/treetable';\r\n\r\nimport * as FileSaver from 'file-saver';\r\n\r\nimport { ButtonComponent } from 'aril/ui/button';\r\nimport { TableColumnComponent, TableColumns } from 'aril/ui/table';\r\nimport { TextComponent } from 'aril/ui/text';\r\n\r\nconst pageOptions = [10, 20, 50, 100];\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\tselector: 'aril-tree-table',\r\n\ttemplateUrl: './tree-table.component.html',\r\n\timports: [TreeTableModule, ButtonComponent, TextComponent, FormsModule, NgFor, NgForOf, NgTemplateOutlet],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TreeTableComponent {\r\n\tdata = input.required<TreeNode[]>();\r\n\tcheckboxSelection = input<boolean>();\r\n\tpageSize = input<(typeof pageOptions)[number]>(10);\r\n\tscrollable = input<boolean>(false);\r\n\tscrollHeight = input<string>();\r\n\r\n\t@Output() expandEvent: EventEmitter<unknown> = new EventEmitter();\r\n\t@Output() selectionEvent: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n\t@ContentChildren(TableColumnComponent) columns!: TableColumns;\r\n\r\n\tfilterText!: string;\r\n\tpageOptions = pageOptions;\r\n\tselectedNodes!: TreeTableNode<any> | TreeTableNode<any>[] | null;\r\n\r\n\texcelExport() {\r\n\t\t// import('xlsx').then((xlsx) => {\r\n\t\t// \tconst worksheet = xlsx.utils.json_to_sheet(this.data());\r\n\t\t// \tconst workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n\t\t// \tconst excelBuffer: any = xlsx.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n\t\t// \tthis.saveAsExcelFile(excelBuffer, 'excel_worksheet');\r\n\t\t// });\r\n\t}\r\n\r\n\tsaveAsExcelFile(buffer: any, fileName: string): void {\r\n\t\tconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n\t\tconst EXCEL_EXTENSION = '.xlsx';\r\n\t\tconst data: Blob = new Blob([buffer], {\r\n\t\t\ttype: EXCEL_TYPE\r\n\t\t});\r\n\t\tFileSaver.saveAs(data, fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION);\r\n\t}\r\n}\r\n","<p-treeTable\r\n\t#ref\r\n\t[value]=\"data()\"\r\n\t[columns]=\"columns._results\"\r\n\t[rows]=\"pageSize()\"\r\n\t[rowHover]=\"true\"\r\n\t[paginator]=\"true\"\r\n\t[rowsPerPageOptions]=\"pageOptions\"\r\n\t[filterDelay]=\"0\"\r\n\tsortMode=\"multiple\"\r\n\t[scrollable]=\"scrollable()\"\r\n\t[scrollHeight]=\"scrollHeight()\"\r\n\t[(selection)]=\"selectedNodes\"\r\n\t(onNodeExpand)=\"expandEvent.emit($event.node)\"\r\n\t(selectionChange)=\"selectionEvent.emit(selectedNodes)\"\r\n\t[showCurrentPageReport]=\"true\"\r\n\tcurrentPageReportTemplate=\"Toplam : {totalRecords} kayıt | Sayfa : {currentPage} / {totalPages}\"\r\n\tstyleClass=\"p-treetable-gridlines p-treetable-striped p-treetable-sm\">\r\n\t<ng-template pTemplate=\"caption\">\r\n\t\t<div class=\"flex\">\r\n\t\t\t<aril-button\r\n\t\t\t\tsize=\"sm\"\r\n\t\t\t\ticon=\"FILE_EXCEL\"\r\n\t\t\t\tcolor=\"primary\"\r\n\t\t\t\tpTooltip=\"XLS\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\t(clickEvent)=\"excelExport()\">\r\n\t\t\t</aril-button>\r\n\t\t\t<!-- <span class=\"p-input-icon-left ml-auto\">\r\n\t\t\t\t<aril-text\r\n\t\t\t\t\ticon=\"SEARCH\"\r\n\t\t\t\t\ticonPos=\"left\"\r\n\t\t\t\t\tplaceholder=\"Arama\"\r\n\t\t\t\t\t[ngModel]=\"filterText\"\r\n\t\t\t\t\t(ngModelChange)=\"ref.filterGlobal($event, 'contains')\">\r\n\t\t\t\t</aril-text>\r\n\t\t\t</span> -->\r\n\t\t</div>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"header\" let-columns>\r\n\t\t<tr>\r\n\t\t\t@if (checkboxSelection()) {\r\n\t\t\t\t<th>\r\n\t\t\t\t\t<p-treeTableHeaderCheckbox></p-treeTableHeaderCheckbox>\r\n\t\t\t\t</th>\r\n\t\t\t}\r\n\t\t\t@for (column of columns; track $index) {\r\n\t\t\t\t@if (column.isOperation) {\r\n\t\t\t\t\t<th>\r\n\t\t\t\t\t\t<div class=\"flex justify-content-center\">Operations</div>\r\n\t\t\t\t\t</th>\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t<th [ttSortableColumn]=\"column.field\">\r\n\t\t\t\t\t\t<div class=\"flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t{{ column.header }}\r\n\t\t\t\t\t\t\t<!-- <p-treeTableSortIcon [field]=\"column.field\"></p-treeTableSortIcon> -->\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</th>\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t</tr>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n\t\t<tr [ttRow]=\"rowNode\">\r\n\t\t\t@if (checkboxSelection()) {\r\n\t\t\t\t<td>\r\n\t\t\t\t\t<p-treeTableCheckbox [value]=\"rowNode\"></p-treeTableCheckbox>\r\n\t\t\t\t</td>\r\n\t\t\t}\r\n\t\t\t@for (column of columns; track $index) {\r\n\t\t\t\t<td>\r\n\t\t\t\t\t@if ($first) {\r\n\t\t\t\t\t\t<p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n\t\t\t\t\t}\r\n\t\t\t\t\t<ng-template ngFor [ngForOf]=\"[rowNode.node]\" [ngForTemplate]=\"column.template\"> </ng-template>\r\n\t\t\t\t</td>\r\n\t\t\t}\r\n\t\t</tr>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"summary\">\r\n\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"emptymessage\">\r\n\t\t<tr>\r\n\t\t\t<td [attr.colspan]=\"columns._results.length\">No Data Found</td>\r\n\t\t</tr>\r\n\t</ng-template>\r\n</p-treeTable>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { Directive } from '@angular/core';
3
-
4
- class UnwrapTagDirective {
5
- constructor(el) {
6
- this.el = el;
7
- }
8
- ngAfterViewInit() {
9
- const parent = this.el.nativeElement.parentNode;
10
- while (this.el.nativeElement.firstChild) {
11
- parent.insertBefore(this.el.nativeElement.firstChild, this.el.nativeElement);
12
- }
13
- parent.removeChild(this.el.nativeElement);
14
- }
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: UnwrapTagDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
16
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.2", type: UnwrapTagDirective, isStandalone: true, selector: "[unwraptag]", ngImport: i0 }); }
17
- }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: UnwrapTagDirective, decorators: [{
19
- type: Directive,
20
- args: [{
21
- standalone: true,
22
- selector: '[unwraptag]'
23
- }]
24
- }], ctorParameters: () => [{ type: i0.ElementRef }] });
25
-
26
- /**
27
- * Generated bundle index. Do not edit.
28
- */
29
-
30
- export { UnwrapTagDirective };
31
- //# sourceMappingURL=aril-util-unwrap.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aril-util-unwrap.mjs","sources":["../../projects/aril/util/unwrap/src/unwrap-tag.directive.ts","../../projects/aril/util/unwrap/aril-util-unwrap.ts"],"sourcesContent":["import { AfterViewInit, Directive, ElementRef } from '@angular/core';\r\n\r\n@Directive({\r\n\tstandalone: true,\r\n\tselector: '[unwraptag]'\r\n})\r\nexport class UnwrapTagDirective implements AfterViewInit {\r\n\tconstructor(private el: ElementRef) {}\r\n\r\n\tngAfterViewInit() {\r\n\t\tconst parent = this.el.nativeElement.parentNode;\r\n\r\n\t\twhile (this.el.nativeElement.firstChild) {\r\n\t\t\tparent.insertBefore(this.el.nativeElement.firstChild, this.el.nativeElement);\r\n\t\t}\r\n\t\tparent.removeChild(this.el.nativeElement);\r\n\t}\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAMa,kBAAkB,CAAA;AAC9B,IAAA,WAAA,CAAoB,EAAc,EAAA;QAAd,IAAE,CAAA,EAAA,GAAF,EAAE,CAAY;KAAI;IAEtC,eAAe,GAAA;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC;QAEhD,OAAO,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE;AACxC,YAAA,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;SAC7E;QACD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;KAC1C;8GAVW,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,aAAa;AACvB,iBAAA,CAAA;;;ACLD;;AAEG;;;;"}
@@ -1,6 +0,0 @@
1
- import { HTTPMethods, ProxyTypes } from '../lib/enums';
2
- export declare function ServiceCallMock(httpMethod: HTTPMethods, proxy: ProxyTypes, serviceURL: string, mockAPI: string, message?: {
3
- success?: string;
4
- error?: string;
5
- useDefault: boolean;
6
- }): void;
@@ -1,209 +0,0 @@
1
- import { HttpClient } from '@angular/common/http';
2
- import { Injectable } from '@angular/core';
3
-
4
- import { take } from 'rxjs';
5
-
6
- import { bridge } from 'aril/boot/bridge';
7
- import { API_CONFIGS } from 'aril/boot/config/api';
8
-
9
- import { SelectionGroupDTO, SelectionGroupVersionDTO, SelectionRequestDTO } from './interfaces/interfaces';
10
-
11
- // Key başına maksimum ardışık fetch hatası: limit aşılınca o key oturum boyu yeniden denenmez.
12
- // Sınırsız retry'da kalıcı hata veren bir grup (örn. silinmiş grup → 404), diğer grupların her
13
- // başarılı yüklemesinde (map güncellemesi tüm enum computed'larını yeniden çalıştırır) yeniden
14
- // POST edilirdi → istek/console fırtınası.
15
- const MAX_FETCH_FAILURES = 3;
16
-
17
- @Injectable({
18
- providedIn: 'root'
19
- })
20
- export class SelectionGroupService {
21
- // State cross-MFE paylaşımlı: bridge globalThis-singleton'ında yaşar (bkz. mfe-bridge.ts).
22
- // Servis instance'ı MFE/tab başına çoğalsa da tüm okuma/yazma tek bridge state'ine gider.
23
- selectionGroups = bridge.selectionGroups;
24
-
25
- private readonly loading = bridge.selectionLoading;
26
- private readonly loaded = bridge.selectionLoaded;
27
- private readonly failures = bridge.selectionFailures;
28
-
29
- constructor(private readonly http: HttpClient) {
30
- // loadStates + invalidate yalnızca ilk instance'ta (cross-MFE bir kez): tek localStorage
31
- // yüklemesi, tek `/versions` çağrısı. effect her instance'ta kurulur ama hepsi aynı paylaşılan
32
- // state'i yazdığından ezme olmaz.
33
- if (!bridge.selectionInitialized) {
34
- bridge.selectionInitialized = true;
35
- this.loadStatesFromLocalStorage();
36
- this.invalidateStaleGroups();
37
- }
38
- }
39
-
40
- // localStorage'a slim cache yazar. `effect` YERİNE bilinçli olarak doğrudan çağrılır: signal'i
41
- // değiştiren her yer (fetchEnum, invalidateStaleGroups) persist'i açıkça tetikler. NOT: webpack MF
42
- // config'iyle `@angular/core` artık singleton shared olduğundan effect-tabanlı persist de çalışırdı;
43
- // yine de açık/öngörülebilir olması (effect içinde gizli signal-write + NG0600 riski olmaması) için
44
- // doğrudan çağrı tercih edildi.
45
- private persistToLocalStorage() {
46
- try {
47
- const slim = this.slimForStorage(this.selectionGroups());
48
- localStorage.setItem('selection-groups', btoa(encodeURI(JSON.stringify(slim))));
49
- } catch {
50
- // QuotaExceededError vb. → eski cache'i koru, yeni yazımı sessizce atla.
51
- }
52
- }
53
-
54
- private loadStatesFromLocalStorage() {
55
- const selectionGroups = localStorage.getItem('selection-groups');
56
-
57
- if (selectionGroups) {
58
- try {
59
- const decodedData = decodeURI(atob(selectionGroups));
60
- // Dynamic gruplar zaten persist edilmiyor (slimForStorage onları atlar) → ekstra
61
- // filtre gerekmez; localStorage içeriği yalnızca Fixed gruplardır.
62
- const restored: { [key: string]: SelectionGroupDTO | null } = JSON.parse(decodedData);
63
- this.selectionGroups.set(restored);
64
-
65
- // Restore edilen gruplar loaded sayılır: aksi halde koşulsuz fetchEnum çağıran
66
- // consumer'lar guard'ı geçip her oturum yeniden çeker (cache faydası kaybolur).
67
- // Stale'lik kontrolü invalidateStaleGroups'un işi. null entry'ler (legacy) loaded
68
- // işaretlenmez — işaretlenirse o grup bir daha hiç yüklenemezdi.
69
- Object.entries(restored).forEach(([key, group]) => {
70
- if (group) this.loaded.set(key, true);
71
- });
72
- } catch (e) {
73
- console.error(e);
74
- }
75
- }
76
- }
77
-
78
- // Dynamic grupları atlar + Fixed grupları yalnızca render (value/table/picker/export) ve invalidate
79
- // için gerekli alanlara indirger. localStorage'da audit/id/açıklama gibi kullanılmayan alanları tutmaz.
80
- private slimForStorage(groups: { [key: string]: SelectionGroupDTO | null }): { [key: string]: unknown } {
81
- const out: { [key: string]: unknown } = {};
82
- for (const [key, group] of Object.entries(groups)) {
83
- if (!group || group.loadStrategy === 'Dynamic') continue;
84
- out[key] = {
85
- version: group.version,
86
- selectionItems: (group.selectionItems ?? []).map((it) => ({
87
- selectionKey: it.selectionKey,
88
- selectionDisplay: it.selectionDisplay,
89
- selectionMultiLanguageDisplays: it.selectionMultiLanguageDisplays,
90
- showOrder: it.showOrder,
91
- parentSelectionKey: it.parentSelectionKey
92
- }))
93
- };
94
- }
95
- return out;
96
- }
97
-
98
- // App init'te enum version'larını çekip localStorage'daki stale grupları temizler.
99
- // Silinen grup, tüketici component'lerin `if (!selectionGroup) fetchEnum()` guard'ıyla yeniden yüklenir.
100
- private invalidateStaleGroups() {
101
- // App-init snapshot: yalnızca localStorage'dan yüklenen gruplar kontrol edilir. Yanıt gelene
102
- // kadar consumer'ların fetchEnum ile yüklediği taze gruplar taranmaz/silinmez (aksi halde
103
- // taze grup silinir ve kalıcı per-component fetch guard'ları onu bir daha çekmeyebilir).
104
- const keysToCheck = Object.keys(this.selectionGroups());
105
- if (keysToCheck.length === 0) return;
106
-
107
- const hostApi = API_CONFIGS.api.replace(/\/[^\/]+\/v1$/, `/host/v1`);
108
-
109
- this.http
110
- .get<SelectionGroupVersionDTO[]>(hostApi + '/selection-group/versions')
111
- .pipe(take(1))
112
- .subscribe({
113
- next: (versions) => {
114
- // Boş/bozuk yanıt güvenlik şeridi: aşağıdaki "listede olmayanı sil" kuralı
115
- // boş listeyle tüm cache'i yanlışlıkla boşaltmasın.
116
- if (!versions?.length) return;
117
-
118
- const latest = new Map(versions.map((v) => [v.groupName, v.version] as [string, number]));
119
-
120
- let changed = false;
121
- const next = { ...this.selectionGroups() };
122
-
123
- keysToCheck.forEach((key) => {
124
- const group = next[key];
125
- if (!group) return;
126
-
127
- const separatorIndex = key.indexOf('~');
128
- if (separatorIndex === -1) return;
129
-
130
- const serverVersion = latest.get(key.substring(0, separatorIndex));
131
-
132
- // serverVersion == null: grup /versions listesinde yok → sunucudan silinmiş /
133
- // yeniden adlandırılmış demektir (endpoint Fixed grupların tam listesini döner)
134
- // → o da evict edilir; kalırsa kaldırılmış enum değerleri süresiz render edilir.
135
- if (serverVersion == null || serverVersion !== group.version) {
136
- delete next[key];
137
- this.loaded.delete(key);
138
- this.failures.delete(key);
139
- // Uçuştaki fetch'in flag'i korunur: silinirse ikinci bir consumer guard'ı
140
- // geçip duplicate /load atar ve export-overlay'in isLoading poll'ü grubu
141
- // beklemeden erken geçer. Yanıt geldiğinde flag'i fetchEnum kendisi yönetir.
142
- if (!this.loading.get(key)) {
143
- this.loading.delete(key);
144
- }
145
- changed = true;
146
- }
147
- });
148
-
149
- if (changed) {
150
- this.selectionGroups.set(next);
151
- this.persistToLocalStorage();
152
- }
153
- },
154
- error: () => {
155
- // versions endpoint yok/erişilemez: sessizce mevcut cache ile devam.
156
- }
157
- });
158
- }
159
-
160
- fetchEnum(groupName: string, parentSelectionKey: string = 'ALL') {
161
- const key = groupName + '~' + parentSelectionKey;
162
-
163
- if (this.loaded.get(key) || this.loading.get(key)) return;
164
- if ((this.failures.get(key) ?? 0) >= MAX_FETCH_FAILURES) return;
165
-
166
- const payload: SelectionRequestDTO = {
167
- groupName,
168
- parentSelectionKey
169
- };
170
-
171
- this.loading.set(key, true);
172
- this.loaded.set(key, false);
173
-
174
- const hostApi = API_CONFIGS.api.replace(/\/[^\/]+\/v1$/, `/host/v1`);
175
-
176
- this.http
177
- .post<SelectionGroupDTO>(hostApi + '/selection-group/load', payload)
178
- .pipe(take(1))
179
- .subscribe({
180
- next: (selectionGroup) => {
181
- this.loading.set(key, false);
182
- this.loaded.set(key, true);
183
- this.failures.delete(key);
184
-
185
- this.selectionGroups.update((groups) => ({
186
- ...groups,
187
- [key]: selectionGroup
188
- }));
189
-
190
- this.persistToLocalStorage();
191
- },
192
- // HTTP hatasında loading'i sıfırla: aksi halde guard (loaded/loading) bu enum'u
193
- // kilitler. loading/loaded bridge'de cross-MFE SHARED olduğundan, tek bir anlık hata
194
- // bu enum'u TÜM remote'larda hard-reload'a kadar bir daha çekilemez yapardı. loading=false
195
- // → sonraki fetchEnum (component init/retry) yeniden deneyebilir. loaded zaten false kalır.
196
- // Deneme sayısı MAX_FETCH_FAILURES ile sınırlı: kalıcı hatada sonsuz retry önlenir.
197
- error: () => {
198
- this.loading.set(key, false);
199
- this.failures.set(key, (this.failures.get(key) ?? 0) + 1);
200
- }
201
- });
202
- }
203
-
204
- // key formatı: `groupName~parentSelectionKey` (fetchEnum'daki composite key ile aynı).
205
- // Direkt olarak groupName geçilirse Map'te eşleşme olmaz ve her zaman false döner.
206
- isLoading(key: string): boolean {
207
- return this.loading.get(key) ?? false;
208
- }
209
- }
@@ -1,8 +0,0 @@
1
- import { MenuItem } from 'primeng/api';
2
- import { ButtonComponent } from './button.component';
3
- import * as i0 from "@angular/core";
4
- export declare class SplitButtonComponent extends ButtonComponent {
5
- menu: import("@angular/core").InputSignal<MenuItem[], MenuItem[]>;
6
- static ɵfac: i0.ɵɵFactoryDeclaration<SplitButtonComponent, never>;
7
- static ɵcmp: i0.ɵɵComponentDeclaration<SplitButtonComponent, "aril-split-button", never, { "menu": { "alias": "menu"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
8
- }
@@ -1,25 +0,0 @@
1
- import { NgZone } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- interface dataItems {
4
- label: string;
5
- value: number;
6
- value2?: number;
7
- }
8
- type appNames = 'thor' | 'lena' | 'billing' | 'yeap';
9
- export declare class ColumnChartComponent {
10
- private platformId;
11
- private zone;
12
- private root;
13
- constructor(platformId: Object, zone: NgZone);
14
- data: import("@angular/core").InputSignal<dataItems[], dataItems[]>;
15
- chartId: import("@angular/core").InputSignal<string, string>;
16
- appName: import("@angular/core").InputSignal<appNames, appNames>;
17
- chartHeight: import("@angular/core").InputSignal<string, string>;
18
- chartColorSet: string[];
19
- browserOnly(f: () => void): void;
20
- ngAfterViewInit(): void;
21
- ngOnDestroy(): void;
22
- static ɵfac: i0.ɵɵFactoryDeclaration<ColumnChartComponent, never>;
23
- static ɵcmp: i0.ɵɵComponentDeclaration<ColumnChartComponent, "aril-column-chart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "chartId": { "alias": "chartId"; "required": true; "isSignal": true; }; "appName": { "alias": "appName"; "required": false; "isSignal": true; }; "chartHeight": { "alias": "chartHeight"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
24
- }
25
- export {};
@@ -1,26 +0,0 @@
1
- import { NgZone } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- interface dataItems {
4
- date: number;
5
- value: number;
6
- }
7
- type appNames = 'thor' | 'lena' | 'billing' | 'yeap';
8
- type timeUnit = 'day' | 'month' | 'year' | 'week' | 'hour' | 'minute' | 'second';
9
- export declare class LineChartComponent {
10
- private platformId;
11
- private zone;
12
- private root;
13
- constructor(platformId: Object, zone: NgZone);
14
- data: import("@angular/core").InputSignal<dataItems[], dataItems[]>;
15
- chartId: import("@angular/core").InputSignal<string, string>;
16
- appName: import("@angular/core").InputSignal<appNames, appNames>;
17
- timeUnit: import("@angular/core").InputSignal<timeUnit, timeUnit>;
18
- chartHeight: import("@angular/core").InputSignal<string, string>;
19
- chartColorSet: string[];
20
- browserOnly(f: () => void): void;
21
- ngAfterViewInit(): void;
22
- ngOnDestroy(): void;
23
- static ɵfac: i0.ɵɵFactoryDeclaration<LineChartComponent, never>;
24
- static ɵcmp: i0.ɵɵComponentDeclaration<LineChartComponent, "aril-line-chart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "chartId": { "alias": "chartId"; "required": true; "isSignal": true; }; "appName": { "alias": "appName"; "required": false; "isSignal": true; }; "timeUnit": { "alias": "timeUnit"; "required": false; "isSignal": true; }; "chartHeight": { "alias": "chartHeight"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
25
- }
26
- export {};
@@ -1,24 +0,0 @@
1
- import { NgZone } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- interface dataItems {
4
- label: string;
5
- value: number;
6
- }
7
- type appNames = 'thor' | 'lena' | 'billing' | 'yeap';
8
- export declare class PieChartComponent {
9
- private platformId;
10
- private zone;
11
- private root;
12
- constructor(platformId: Object, zone: NgZone);
13
- data: import("@angular/core").InputSignal<dataItems[], dataItems[]>;
14
- chartId: import("@angular/core").InputSignal<string, string>;
15
- appName: import("@angular/core").InputSignal<appNames, appNames>;
16
- chartColorSet: string[];
17
- chartHeight: import("@angular/core").InputSignal<string, string>;
18
- browserOnly(f: () => void): void;
19
- ngAfterViewInit(): void;
20
- ngOnDestroy(): void;
21
- static ɵfac: i0.ɵɵFactoryDeclaration<PieChartComponent, never>;
22
- static ɵcmp: i0.ɵɵComponentDeclaration<PieChartComponent, "aril-pie-chart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "chartId": { "alias": "chartId"; "required": true; "isSignal": true; }; "appName": { "alias": "appName"; "required": false; "isSignal": true; }; "chartHeight": { "alias": "chartHeight"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
23
- }
24
- export {};
@@ -1,20 +0,0 @@
1
- import * as Highcharts from 'highcharts';
2
- import * as i0 from "@angular/core";
3
- export type AreaChartDataPoint = [number, number];
4
- export interface AreaChartSeries {
5
- name: string;
6
- data: AreaChartDataPoint[];
7
- color?: string;
8
- }
9
- export declare class AreaChartComponent {
10
- Highcharts: typeof Highcharts;
11
- data: import("@angular/core").InputSignal<AreaChartSeries[], AreaChartSeries[]>;
12
- title: import("@angular/core").InputSignal<string, string>;
13
- loading: import("@angular/core").InputSignal<boolean, boolean>;
14
- private chart?;
15
- constructor();
16
- chartCallback: Highcharts.ChartCallbackFunction;
17
- chartOptions: import("@angular/core").Signal<Highcharts.Options>;
18
- static ɵfac: i0.ɵɵFactoryDeclaration<AreaChartComponent, never>;
19
- static ɵcmp: i0.ɵɵComponentDeclaration<AreaChartComponent, "aril-area-chart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": true; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
20
- }
@@ -1,26 +0,0 @@
1
- import { OnChanges, SimpleChanges } from '@angular/core';
2
- import * as Highcharts from 'highcharts';
3
- import * as i0 from "@angular/core";
4
- interface dataItems {
5
- name: string;
6
- y: any;
7
- color?: string;
8
- tooltip?: string;
9
- selected?: boolean;
10
- }
11
- export declare class BarHighChartComponent implements OnChanges {
12
- data: import("@angular/core").InputSignal<dataItems[], dataItems[]>;
13
- title: import("@angular/core").InputSignal<string, string>;
14
- categoriesTitle: import("@angular/core").InputSignal<string, string>;
15
- valuesTitle: import("@angular/core").InputSignal<string, string>;
16
- seriesName: import("@angular/core").InputSignal<string | undefined, string | undefined>;
17
- width: import("@angular/core").InputSignal<string, string>;
18
- height: import("@angular/core").InputSignal<string, string>;
19
- Highcharts: typeof Highcharts;
20
- chartOptions: any;
21
- setChartOptions(): void;
22
- ngOnChanges(changes: SimpleChanges): void;
23
- static ɵfac: i0.ɵɵFactoryDeclaration<BarHighChartComponent, never>;
24
- static ɵcmp: i0.ɵɵComponentDeclaration<BarHighChartComponent, "aril-bar-highchart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "categoriesTitle": { "alias": "categoriesTitle"; "required": false; "isSignal": true; }; "valuesTitle": { "alias": "valuesTitle"; "required": false; "isSignal": true; }; "seriesName": { "alias": "seriesName"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
25
- }
26
- export {};
@@ -1,28 +0,0 @@
1
- import * as Highcharts from 'highcharts';
2
- import * as i0 from "@angular/core";
3
- interface dataItems {
4
- name: any;
5
- y: any;
6
- color?: string;
7
- tooltip?: string;
8
- selected?: boolean;
9
- }
10
- export declare class ColumnHighChartComponent {
11
- constructor();
12
- data: import("@angular/core").InputSignal<dataItems[], dataItems[]>;
13
- title: import("@angular/core").InputSignal<string, string>;
14
- categoriesTitle: import("@angular/core").InputSignal<string, string>;
15
- valuesTitle: import("@angular/core").InputSignal<string, string>;
16
- seriesName: import("@angular/core").InputSignal<string | undefined, string | undefined>;
17
- dateFormat: import("@angular/core").InputSignal<string | undefined, string | undefined>;
18
- width: import("@angular/core").InputSignal<string, string>;
19
- height: import("@angular/core").InputSignal<string, string>;
20
- series: import("@angular/core").InputSignal<any, any>;
21
- Highcharts: typeof Highcharts;
22
- chartOptions: any;
23
- formatDate(name: any): any;
24
- setChartOptions(): void;
25
- static ɵfac: i0.ɵɵFactoryDeclaration<ColumnHighChartComponent, never>;
26
- static ɵcmp: i0.ɵɵComponentDeclaration<ColumnHighChartComponent, "aril-column-highchart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "categoriesTitle": { "alias": "categoriesTitle"; "required": false; "isSignal": true; }; "valuesTitle": { "alias": "valuesTitle"; "required": false; "isSignal": true; }; "seriesName": { "alias": "seriesName"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "series": { "alias": "series"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
27
- }
28
- export {};
@@ -1,32 +0,0 @@
1
- import * as Highcharts from 'highcharts';
2
- import * as i0 from "@angular/core";
3
- export interface HeatmapPoint {
4
- x: number;
5
- y: number;
6
- value: number;
7
- }
8
- export interface HeatmapData {
9
- data: HeatmapPoint[];
10
- xCategories?: string[];
11
- yCategories?: string[];
12
- title?: string;
13
- colorAxis?: Highcharts.ColorAxisOptions;
14
- }
15
- export declare class HeatmapChartComponent {
16
- Highcharts: typeof Highcharts;
17
- series: import("@angular/core").InputSignal<any, any>;
18
- title: import("@angular/core").InputSignal<string, string>;
19
- yAxisTitle: import("@angular/core").InputSignal<string, string>;
20
- loading: import("@angular/core").InputSignal<boolean, boolean>;
21
- chartOptions: Highcharts.Options;
22
- xAxisCategories: any[];
23
- yAxisCategories: any[];
24
- private chart?;
25
- constructor();
26
- setChartOptions(): void;
27
- chartCallback: Highcharts.ChartCallbackFunction;
28
- epochToTimeString(epoch: number): string;
29
- prometheusToHighchartsSeries(): Highcharts.SeriesOptionsType[];
30
- static ɵfac: i0.ɵɵFactoryDeclaration<HeatmapChartComponent, never>;
31
- static ɵcmp: i0.ɵɵComponentDeclaration<HeatmapChartComponent, "aril-heatmap-chart", never, { "series": { "alias": "series"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "yAxisTitle": { "alias": "yAxisTitle"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
32
- }