@sisense/sdk-ui-angular 1.5.0 → 1.6.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 (105) hide show
  1. package/dist/esm2020/lib/component-wrapper-helpers/context-connectors.mjs +13 -1
  2. package/dist/esm2020/lib/components/charts/area-chart.component.mjs +137 -0
  3. package/dist/esm2020/lib/components/charts/areamap-chart.component.mjs +100 -0
  4. package/dist/esm2020/lib/components/charts/bar-chart.component.mjs +136 -0
  5. package/dist/esm2020/lib/components/charts/boxplot-chart.component.mjs +129 -0
  6. package/dist/esm2020/lib/components/charts/chart.component.mjs +171 -0
  7. package/dist/esm2020/lib/components/charts/column-chart.component.mjs +137 -0
  8. package/dist/esm2020/lib/components/charts/funnel-chart.component.mjs +135 -0
  9. package/dist/esm2020/lib/components/charts/index.mjs +18 -0
  10. package/dist/esm2020/lib/components/charts/indicator-chart.component.mjs +107 -0
  11. package/dist/esm2020/lib/components/charts/line-chart.component.mjs +135 -0
  12. package/dist/esm2020/lib/components/charts/pie-chart.component.mjs +137 -0
  13. package/dist/esm2020/lib/components/charts/pivot-table.component.mjs +116 -0
  14. package/dist/esm2020/lib/components/charts/polar-chart.component.mjs +136 -0
  15. package/dist/esm2020/lib/components/charts/scatter-chart.component.mjs +140 -0
  16. package/dist/esm2020/lib/components/charts/scattermap-chart.component.mjs +108 -0
  17. package/dist/esm2020/lib/components/charts/sunburst-chart.component.mjs +137 -0
  18. package/dist/esm2020/lib/components/charts/table.component.mjs +94 -0
  19. package/dist/esm2020/lib/components/{treemap-chart.component.mjs → charts/treemap-chart.component.mjs} +52 -1
  20. package/dist/esm2020/lib/components/context-menu.component.mjs +3 -1
  21. package/dist/esm2020/lib/components/drilldown-breadcrumbs.component.mjs +3 -1
  22. package/dist/esm2020/lib/components/filters/basic-member-filter-tile.component.mjs +62 -0
  23. package/dist/esm2020/lib/components/filters/date-range-filter-tile.component.mjs +141 -0
  24. package/dist/esm2020/lib/components/filters/index.mjs +4 -0
  25. package/dist/esm2020/lib/components/filters/member-filter-tile.component.mjs +131 -0
  26. package/dist/esm2020/lib/components/index.mjs +4 -25
  27. package/dist/esm2020/lib/components/widgets/chart-widget.component.mjs +167 -0
  28. package/dist/esm2020/lib/components/widgets/dashboard-widget.component.mjs +115 -0
  29. package/dist/esm2020/lib/components/widgets/drilldown-widget.component.mjs +174 -0
  30. package/dist/esm2020/lib/components/widgets/index.mjs +5 -0
  31. package/dist/esm2020/lib/components/widgets/table-widget.component.mjs +104 -0
  32. package/dist/esm2020/lib/sdk-ui.module.mjs +3 -1
  33. package/dist/esm2020/lib/services/dashboard.service.mjs +6 -1
  34. package/dist/esm2020/lib/services/query.service.mjs +7 -2
  35. package/dist/esm2020/lib/services/sisense-context.service.mjs +7 -1
  36. package/dist/esm2020/lib/services/theme.service.mjs +7 -1
  37. package/dist/esm2020/public-api.mjs +9 -1
  38. package/dist/esm2020/version.mjs +2 -2
  39. package/dist/fesm2015/sisense-sdk-ui-angular.mjs +1721 -708
  40. package/dist/fesm2015/sisense-sdk-ui-angular.mjs.map +1 -1
  41. package/dist/fesm2020/sisense-sdk-ui-angular.mjs +1722 -709
  42. package/dist/fesm2020/sisense-sdk-ui-angular.mjs.map +1 -1
  43. package/dist/lib/component-wrapper-helpers/context-connectors.d.ts +12 -0
  44. package/dist/lib/components/{area-chart.component.d.ts → charts/area-chart.component.d.ts} +53 -2
  45. package/dist/lib/components/{areamap-chart.component.d.ts → charts/areamap-chart.component.d.ts} +40 -1
  46. package/dist/lib/components/{bar-chart.component.d.ts → charts/bar-chart.component.d.ts} +52 -2
  47. package/dist/lib/components/{boxplot-chart.component.d.ts → charts/boxplot-chart.component.d.ts} +45 -2
  48. package/dist/lib/components/{chart.component.d.ts → charts/chart.component.d.ts} +6 -4
  49. package/dist/lib/components/{column-chart.component.d.ts → charts/column-chart.component.d.ts} +53 -2
  50. package/dist/lib/components/{funnel-chart.component.d.ts → charts/funnel-chart.component.d.ts} +52 -2
  51. package/dist/lib/components/charts/index.d.ts +17 -0
  52. package/dist/lib/components/{indicator-chart.component.d.ts → charts/indicator-chart.component.d.ts} +57 -1
  53. package/dist/lib/components/{line-chart.component.d.ts → charts/line-chart.component.d.ts} +52 -2
  54. package/dist/lib/components/{pie-chart.component.d.ts → charts/pie-chart.component.d.ts} +53 -2
  55. package/dist/lib/components/{pivot-table.component.d.ts → charts/pivot-table.component.d.ts} +53 -2
  56. package/dist/lib/components/{polar-chart.component.d.ts → charts/polar-chart.component.d.ts} +53 -2
  57. package/dist/lib/components/{scatter-chart.component.d.ts → charts/scatter-chart.component.d.ts} +50 -2
  58. package/dist/lib/components/{scattermap-chart.component.d.ts → charts/scattermap-chart.component.d.ts} +49 -2
  59. package/dist/lib/components/{sunburst-chart.component.d.ts → charts/sunburst-chart.component.d.ts} +53 -2
  60. package/dist/lib/components/{table.component.d.ts → charts/table.component.d.ts} +32 -2
  61. package/dist/lib/components/{treemap-chart.component.d.ts → charts/treemap-chart.component.d.ts} +53 -2
  62. package/dist/lib/components/context-menu.component.d.ts +2 -0
  63. package/dist/lib/components/drilldown-breadcrumbs.component.d.ts +2 -0
  64. package/dist/lib/components/{date-range-filter-tile.component.d.ts → filters/date-range-filter-tile.component.d.ts} +43 -3
  65. package/dist/lib/components/filters/index.d.ts +3 -0
  66. package/dist/lib/components/{member-filter-tile.component.d.ts → filters/member-filter-tile.component.d.ts} +39 -3
  67. package/dist/lib/components/index.d.ts +3 -24
  68. package/dist/lib/components/{chart-widget.component.d.ts → widgets/chart-widget.component.d.ts} +58 -3
  69. package/dist/lib/components/{dashboard-widget.component.d.ts → widgets/dashboard-widget.component.d.ts} +26 -2
  70. package/dist/lib/components/{drilldown-widget.component.d.ts → widgets/drilldown-widget.component.d.ts} +5 -2
  71. package/dist/lib/components/widgets/index.d.ts +4 -0
  72. package/dist/lib/components/{table-widget.component.d.ts → widgets/table-widget.component.d.ts} +37 -2
  73. package/dist/lib/sdk-ui.module.d.ts +26 -24
  74. package/dist/lib/services/dashboard.service.d.ts +5 -0
  75. package/dist/lib/services/query.service.d.ts +6 -1
  76. package/dist/lib/services/sisense-context.service.d.ts +6 -0
  77. package/dist/lib/services/theme.service.d.ts +6 -0
  78. package/dist/package.json +1 -1
  79. package/dist/public-api.d.ts +8 -0
  80. package/dist/version.d.ts +1 -1
  81. package/package.json +4 -4
  82. package/dist/esm2020/lib/components/area-chart.component.mjs +0 -86
  83. package/dist/esm2020/lib/components/areamap-chart.component.mjs +0 -61
  84. package/dist/esm2020/lib/components/bar-chart.component.mjs +0 -86
  85. package/dist/esm2020/lib/components/basic-member-filter-tile.component.mjs +0 -62
  86. package/dist/esm2020/lib/components/boxplot-chart.component.mjs +0 -86
  87. package/dist/esm2020/lib/components/chart-widget.component.mjs +0 -112
  88. package/dist/esm2020/lib/components/chart.component.mjs +0 -169
  89. package/dist/esm2020/lib/components/column-chart.component.mjs +0 -86
  90. package/dist/esm2020/lib/components/dashboard-widget.component.mjs +0 -91
  91. package/dist/esm2020/lib/components/date-range-filter-tile.component.mjs +0 -101
  92. package/dist/esm2020/lib/components/drilldown-widget.component.mjs +0 -171
  93. package/dist/esm2020/lib/components/funnel-chart.component.mjs +0 -85
  94. package/dist/esm2020/lib/components/indicator-chart.component.mjs +0 -51
  95. package/dist/esm2020/lib/components/line-chart.component.mjs +0 -85
  96. package/dist/esm2020/lib/components/member-filter-tile.component.mjs +0 -95
  97. package/dist/esm2020/lib/components/pie-chart.component.mjs +0 -86
  98. package/dist/esm2020/lib/components/pivot-table.component.mjs +0 -65
  99. package/dist/esm2020/lib/components/polar-chart.component.mjs +0 -85
  100. package/dist/esm2020/lib/components/scatter-chart.component.mjs +0 -92
  101. package/dist/esm2020/lib/components/scattermap-chart.component.mjs +0 -61
  102. package/dist/esm2020/lib/components/sunburst-chart.component.mjs +0 -86
  103. package/dist/esm2020/lib/components/table-widget.component.mjs +0 -69
  104. package/dist/esm2020/lib/components/table.component.mjs +0 -64
  105. /package/dist/lib/components/{basic-member-filter-tile.component.d.ts → filters/basic-member-filter-tile.component.d.ts} +0 -0
@@ -1,5 +1,11 @@
1
1
  import { createContextProviderRenderer, CustomSisenseContextProvider, CustomThemeProvider, } from '@sisense/sdk-ui-preact';
2
2
  import { map } from 'rxjs';
3
+ /**
4
+ * Creates theme context connector
5
+ *
6
+ * @param themeService - The theme service
7
+ * @internal
8
+ */
3
9
  export const createThemeContextConnector = (themeService) => {
4
10
  return {
5
11
  prepareContext() {
@@ -11,6 +17,12 @@ export const createThemeContextConnector = (themeService) => {
11
17
  renderContextProvider: createContextProviderRenderer(CustomThemeProvider),
12
18
  };
13
19
  };
20
+ /**
21
+ * Creates Sisense context connector
22
+ *
23
+ * @param sisenseContextService - The Sisense context service
24
+ * @internal
25
+ */
14
26
  export const createSisenseContextConnector = (sisenseContextService) => {
15
27
  return {
16
28
  async prepareContext() {
@@ -29,4 +41,4 @@ export const createSisenseContextConnector = (sisenseContextService) => {
29
41
  renderContextProvider: createContextProviderRenderer(CustomSisenseContextProvider),
30
42
  };
31
43
  };
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1jb25uZWN0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnQtd3JhcHBlci1oZWxwZXJzL2NvbnRleHQtY29ubmVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsNkJBQTZCLEVBRTdCLDRCQUE0QixFQUM1QixtQkFBbUIsR0FFcEIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSTNCLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLENBQ3pDLFlBQTBCLEVBQzZCLEVBQUU7SUFDekQsT0FBTztRQUNMLGNBQWM7WUFDWixPQUFPLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLElBQUksQ0FDekMsR0FBRyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN0QixhQUFhO2dCQUNiLFlBQVksRUFBRSxJQUFJO2FBQ25CLENBQUMsQ0FBQyxDQUNKLENBQUM7UUFDSixDQUFDO1FBQ0QscUJBQXFCLEVBQUUsNkJBQTZCLENBQUMsbUJBQW1CLENBQUM7S0FDMUUsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQzNDLHFCQUE0QyxFQUNKLEVBQUU7SUFDMUMsT0FBTztRQUNMLEtBQUssQ0FBQyxjQUFjO1lBQ2xCLE1BQU0sRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNoRixNQUFNLEdBQUcsR0FBRyxNQUFNLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDO1lBRWpELE9BQU87Z0JBQ0wsR0FBRztnQkFDSCxhQUFhLEVBQUUsSUFBSTtnQkFDbkIsaUJBQWlCO2dCQUNqQixRQUFRLEVBQUU7b0JBQ1IsT0FBTyxFQUFFLGNBQWM7b0JBQ3ZCLFdBQVcsRUFBRSxnQkFBZ0I7aUJBQzlCO2FBQ3NCLENBQUM7UUFDNUIsQ0FBQztRQUNELHFCQUFxQixFQUFFLDZCQUE2QixDQUFDLDRCQUE0QixDQUFDO0tBQ25GLENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb250ZXh0Q29ubmVjdG9yLFxuICBjcmVhdGVDb250ZXh0UHJvdmlkZXJSZW5kZXJlcixcbiAgQ3VzdG9tU2lzZW5zZUNvbnRleHQsXG4gIEN1c3RvbVNpc2Vuc2VDb250ZXh0UHJvdmlkZXIsXG4gIEN1c3RvbVRoZW1lUHJvdmlkZXIsXG4gIEN1c3RvbVRoZW1lUHJvdmlkZXJQcm9wcyxcbn0gZnJvbSAnQHNpc2Vuc2Uvc2RrLXVpLXByZWFjdCc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNpc2Vuc2VDb250ZXh0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Npc2Vuc2UtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UnO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlVGhlbWVDb250ZXh0Q29ubmVjdG9yID0gKFxuICB0aGVtZVNlcnZpY2U6IFRoZW1lU2VydmljZSxcbik6IENvbnRleHRDb25uZWN0b3I8Q3VzdG9tVGhlbWVQcm92aWRlclByb3BzWydjb250ZXh0J10+ID0+IHtcbiAgcmV0dXJuIHtcbiAgICBwcmVwYXJlQ29udGV4dCgpIHtcbiAgICAgIHJldHVybiB0aGVtZVNlcnZpY2UuZ2V0VGhlbWVTZXR0aW5ncygpLnBpcGUoXG4gICAgICAgIG1hcCgodGhlbWVTZXR0aW5ncykgPT4gKHtcbiAgICAgICAgICB0aGVtZVNldHRpbmdzLFxuICAgICAgICAgIHNraXBUcmFja2luZzogdHJ1ZSxcbiAgICAgICAgfSkpLFxuICAgICAgKTtcbiAgICB9LFxuICAgIHJlbmRlckNvbnRleHRQcm92aWRlcjogY3JlYXRlQ29udGV4dFByb3ZpZGVyUmVuZGVyZXIoQ3VzdG9tVGhlbWVQcm92aWRlciksXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlU2lzZW5zZUNvbnRleHRDb25uZWN0b3IgPSAoXG4gIHNpc2Vuc2VDb250ZXh0U2VydmljZTogU2lzZW5zZUNvbnRleHRTZXJ2aWNlLFxuKTogQ29udGV4dENvbm5lY3RvcjxDdXN0b21TaXNlbnNlQ29udGV4dD4gPT4ge1xuICByZXR1cm4ge1xuICAgIGFzeW5jIHByZXBhcmVDb250ZXh0KCkge1xuICAgICAgY29uc3QgeyBlbmFibGVUcmFja2luZywgc2hvd1J1bnRpbWVFcnJvcnMgfSA9IHNpc2Vuc2VDb250ZXh0U2VydmljZS5nZXRDb25maWcoKTtcbiAgICAgIGNvbnN0IGFwcCA9IGF3YWl0IHNpc2Vuc2VDb250ZXh0U2VydmljZS5nZXRBcHAoKTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXBwLFxuICAgICAgICBpc0luaXRpYWxpemVkOiB0cnVlLFxuICAgICAgICBzaG93UnVudGltZUVycm9ycyxcbiAgICAgICAgdHJhY2tpbmc6IHtcbiAgICAgICAgICBlbmFibGVkOiBlbmFibGVUcmFja2luZyxcbiAgICAgICAgICBwYWNrYWdlTmFtZTogJ3Nkay11aS1hbmd1bGFyJyxcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgQ3VzdG9tU2lzZW5zZUNvbnRleHQ7XG4gICAgfSxcbiAgICByZW5kZXJDb250ZXh0UHJvdmlkZXI6IGNyZWF0ZUNvbnRleHRQcm92aWRlclJlbmRlcmVyKEN1c3RvbVNpc2Vuc2VDb250ZXh0UHJvdmlkZXIpLFxuICB9O1xufTtcbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1jb25uZWN0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnQtd3JhcHBlci1oZWxwZXJzL2NvbnRleHQtY29ubmVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsNkJBQTZCLEVBRTdCLDRCQUE0QixFQUM1QixtQkFBbUIsR0FFcEIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSTNCOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsQ0FDekMsWUFBMEIsRUFDNkIsRUFBRTtJQUN6RCxPQUFPO1FBQ0wsY0FBYztZQUNaLE9BQU8sWUFBWSxDQUFDLGdCQUFnQixFQUFFLENBQUMsSUFBSSxDQUN6QyxHQUFHLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3RCLGFBQWE7Z0JBQ2IsWUFBWSxFQUFFLElBQUk7YUFDbkIsQ0FBQyxDQUFDLENBQ0osQ0FBQztRQUNKLENBQUM7UUFDRCxxQkFBcUIsRUFBRSw2QkFBNkIsQ0FBQyxtQkFBbUIsQ0FBQztLQUMxRSxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUY7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxDQUMzQyxxQkFBNEMsRUFDSixFQUFFO0lBQzFDLE9BQU87UUFDTCxLQUFLLENBQUMsY0FBYztZQUNsQixNQUFNLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLEdBQUcscUJBQXFCLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDaEYsTUFBTSxHQUFHLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUVqRCxPQUFPO2dCQUNMLEdBQUc7Z0JBQ0gsYUFBYSxFQUFFLElBQUk7Z0JBQ25CLGlCQUFpQjtnQkFDakIsUUFBUSxFQUFFO29CQUNSLE9BQU8sRUFBRSxjQUFjO29CQUN2QixXQUFXLEVBQUUsZ0JBQWdCO2lCQUM5QjthQUNzQixDQUFDO1FBQzVCLENBQUM7UUFDRCxxQkFBcUIsRUFBRSw2QkFBNkIsQ0FBQyw0QkFBNEIsQ0FBQztLQUNuRixDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29udGV4dENvbm5lY3RvcixcbiAgY3JlYXRlQ29udGV4dFByb3ZpZGVyUmVuZGVyZXIsXG4gIEN1c3RvbVNpc2Vuc2VDb250ZXh0LFxuICBDdXN0b21TaXNlbnNlQ29udGV4dFByb3ZpZGVyLFxuICBDdXN0b21UaGVtZVByb3ZpZGVyLFxuICBDdXN0b21UaGVtZVByb3ZpZGVyUHJvcHMsXG59IGZyb20gJ0BzaXNlbnNlL3Nkay11aS1wcmVhY3QnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTaXNlbnNlQ29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zaXNlbnNlLWNvbnRleHQuc2VydmljZSc7XG5pbXBvcnQgeyBUaGVtZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy90aGVtZS5zZXJ2aWNlJztcblxuLyoqXG4gKiBDcmVhdGVzIHRoZW1lIGNvbnRleHQgY29ubmVjdG9yXG4gKlxuICogQHBhcmFtIHRoZW1lU2VydmljZSAtIFRoZSB0aGVtZSBzZXJ2aWNlXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVRoZW1lQ29udGV4dENvbm5lY3RvciA9IChcbiAgdGhlbWVTZXJ2aWNlOiBUaGVtZVNlcnZpY2UsXG4pOiBDb250ZXh0Q29ubmVjdG9yPEN1c3RvbVRoZW1lUHJvdmlkZXJQcm9wc1snY29udGV4dCddPiA9PiB7XG4gIHJldHVybiB7XG4gICAgcHJlcGFyZUNvbnRleHQoKSB7XG4gICAgICByZXR1cm4gdGhlbWVTZXJ2aWNlLmdldFRoZW1lU2V0dGluZ3MoKS5waXBlKFxuICAgICAgICBtYXAoKHRoZW1lU2V0dGluZ3MpID0+ICh7XG4gICAgICAgICAgdGhlbWVTZXR0aW5ncyxcbiAgICAgICAgICBza2lwVHJhY2tpbmc6IHRydWUsXG4gICAgICAgIH0pKSxcbiAgICAgICk7XG4gICAgfSxcbiAgICByZW5kZXJDb250ZXh0UHJvdmlkZXI6IGNyZWF0ZUNvbnRleHRQcm92aWRlclJlbmRlcmVyKEN1c3RvbVRoZW1lUHJvdmlkZXIpLFxuICB9O1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIFNpc2Vuc2UgY29udGV4dCBjb25uZWN0b3JcbiAqXG4gKiBAcGFyYW0gc2lzZW5zZUNvbnRleHRTZXJ2aWNlIC0gVGhlIFNpc2Vuc2UgY29udGV4dCBzZXJ2aWNlXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVNpc2Vuc2VDb250ZXh0Q29ubmVjdG9yID0gKFxuICBzaXNlbnNlQ29udGV4dFNlcnZpY2U6IFNpc2Vuc2VDb250ZXh0U2VydmljZSxcbik6IENvbnRleHRDb25uZWN0b3I8Q3VzdG9tU2lzZW5zZUNvbnRleHQ+ID0+IHtcbiAgcmV0dXJuIHtcbiAgICBhc3luYyBwcmVwYXJlQ29udGV4dCgpIHtcbiAgICAgIGNvbnN0IHsgZW5hYmxlVHJhY2tpbmcsIHNob3dSdW50aW1lRXJyb3JzIH0gPSBzaXNlbnNlQ29udGV4dFNlcnZpY2UuZ2V0Q29uZmlnKCk7XG4gICAgICBjb25zdCBhcHAgPSBhd2FpdCBzaXNlbnNlQ29udGV4dFNlcnZpY2UuZ2V0QXBwKCk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFwcCxcbiAgICAgICAgaXNJbml0aWFsaXplZDogdHJ1ZSxcbiAgICAgICAgc2hvd1J1bnRpbWVFcnJvcnMsXG4gICAgICAgIHRyYWNraW5nOiB7XG4gICAgICAgICAgZW5hYmxlZDogZW5hYmxlVHJhY2tpbmcsXG4gICAgICAgICAgcGFja2FnZU5hbWU6ICdzZGstdWktYW5ndWxhcicsXG4gICAgICAgIH0sXG4gICAgICB9IGFzIEN1c3RvbVNpc2Vuc2VDb250ZXh0O1xuICAgIH0sXG4gICAgcmVuZGVyQ29udGV4dFByb3ZpZGVyOiBjcmVhdGVDb250ZXh0UHJvdmlkZXJSZW5kZXJlcihDdXN0b21TaXNlbnNlQ29udGV4dFByb3ZpZGVyKSxcbiAgfTtcbn07XG4iXX0=
@@ -0,0 +1,137 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./chart.component";
4
+ /**
5
+ * A component similar to a {@link LineChartComponent},
6
+ * but with filled in areas under each line and an option to display them as stacked.
7
+ * More info on [Sisense Documentation page](https://docs.sisense.com/main/SisenseLinux/area-chart.htm).
8
+ *
9
+ * @example
10
+ * ```html
11
+ * <csdk-area-chart
12
+ * [dataSet]="chart.dataSet"
13
+ * [dataOptions]="chart.dataOptions"
14
+ * [highlights]="filters"
15
+ * [beforeRender]="onBeforeRender"
16
+ * (dataPointClick)="logArguments($event)"
17
+ * (dataPointContextMenu)="logArguments($event)"
18
+ * (dataPointsSelect)="logArguments($event)"
19
+ * />
20
+ * ```
21
+ * ```ts
22
+ import { Component } from '@angular/core';
23
+ import { measureFactory, filterFactory, Filter } from '@sisense/sdk-data';
24
+ import * as DM from '../../assets/sample-healthcare-model';
25
+ import type { ChartType } from '@sisense/sdk-ui-angular';
26
+
27
+ @Component({
28
+ selector: 'app-analytics',
29
+ templateUrl: './analytics.component.html',
30
+ styleUrls: ['./analytics.component.scss'],
31
+ })
32
+ export class AnalyticsComponent {
33
+ DM = DM;
34
+ filters = [filterFactory.members(DM.Divisions.Divison_name, ['Cardiology', 'Neurology'])];
35
+ chart = {
36
+ chartType: 'column' as ChartType,
37
+ dataSet: DM.DataSource,
38
+ dataOptions: {
39
+ category: [DM.Divisions.Divison_name],
40
+ value: [measureFactory.sum(DM.Admissions.Cost_of_admission)],
41
+ breakBy: [],
42
+ },
43
+ };
44
+
45
+ onBeforeRender(options: any) {
46
+ console.log('beforeRender');
47
+ console.log(options);
48
+ return options;
49
+ }
50
+
51
+ logArguments(...args: any[]) {
52
+ console.log(args);
53
+ }
54
+ }
55
+ * ```
56
+ * <img src="media://angular-area-chart-example.png" width="800px" />
57
+ *
58
+ * @group Charts
59
+ */
60
+ export class AreaChartComponent {
61
+ constructor() {
62
+ /**
63
+ * {@inheritDoc @sisense/sdk-ui!AreaChartProps.onDataPointClick}
64
+ *
65
+ * @category Callbacks
66
+ */
67
+ this.dataPointClick = new EventEmitter();
68
+ /**
69
+ * {@inheritDoc @sisense/sdk-ui!AreaChartProps.onDataPointContextMenu}
70
+ *
71
+ * @category Callbacks
72
+ */
73
+ this.dataPointContextMenu = new EventEmitter();
74
+ /**
75
+ * {@inheritDoc @sisense/sdk-ui!AreaChartProps.onDataPointsSelected}
76
+ *
77
+ * @category Callbacks
78
+ */
79
+ this.dataPointsSelect = new EventEmitter();
80
+ /** @internal */
81
+ this.chartType = 'area';
82
+ }
83
+ }
84
+ AreaChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AreaChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
85
+ AreaChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AreaChartComponent, selector: "csdk-area-chart", inputs: { dataSet: "dataSet", dataOptions: "dataOptions", filters: "filters", highlights: "highlights", styleOptions: "styleOptions", beforeRender: "beforeRender" }, outputs: { dataPointClick: "dataPointClick", dataPointContextMenu: "dataPointContextMenu", dataPointsSelect: "dataPointsSelect" }, ngImport: i0, template: `
86
+ <csdk-chart
87
+ [chartType]="chartType"
88
+ [dataSet]="dataSet"
89
+ [dataOptions]="dataOptions"
90
+ [filters]="filters"
91
+ [highlights]="highlights"
92
+ [styleOptions]="styleOptions"
93
+ [beforeRender]="beforeRender"
94
+ (dataPointClick)="dataPointClick.emit($event)"
95
+ (dataPointContextMenu)="dataPointContextMenu.emit($event)"
96
+ (dataPointsSelect)="dataPointsSelect.emit($event)"
97
+ />
98
+ `, isInline: true, dependencies: [{ kind: "component", type: i1.ChartComponent, selector: "csdk-chart", inputs: ["chartType", "dataSet", "dataOptions", "filters", "highlights", "styleOptions", "beforeRender"], outputs: ["dataPointClick", "dataPointContextMenu", "dataPointsSelect"] }] });
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AreaChartComponent, decorators: [{
100
+ type: Component,
101
+ args: [{
102
+ selector: 'csdk-area-chart',
103
+ template: `
104
+ <csdk-chart
105
+ [chartType]="chartType"
106
+ [dataSet]="dataSet"
107
+ [dataOptions]="dataOptions"
108
+ [filters]="filters"
109
+ [highlights]="highlights"
110
+ [styleOptions]="styleOptions"
111
+ [beforeRender]="beforeRender"
112
+ (dataPointClick)="dataPointClick.emit($event)"
113
+ (dataPointContextMenu)="dataPointContextMenu.emit($event)"
114
+ (dataPointsSelect)="dataPointsSelect.emit($event)"
115
+ />
116
+ `,
117
+ }]
118
+ }], propDecorators: { dataSet: [{
119
+ type: Input
120
+ }], dataOptions: [{
121
+ type: Input
122
+ }], filters: [{
123
+ type: Input
124
+ }], highlights: [{
125
+ type: Input
126
+ }], styleOptions: [{
127
+ type: Input
128
+ }], beforeRender: [{
129
+ type: Input
130
+ }], dataPointClick: [{
131
+ type: Output
132
+ }], dataPointContextMenu: [{
133
+ type: Output
134
+ }], dataPointsSelect: [{
135
+ type: Output
136
+ }] } });
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJlYS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvY2hhcnRzL2FyZWEtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUt2RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVERztBQWtCSCxNQUFNLE9BQU8sa0JBQWtCO0lBakIvQjtRQWtFRTs7OztXQUlHO1FBRUgsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFFOUIsQ0FBQztRQUVKOzs7O1dBSUc7UUFFSCx5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFFcEMsQ0FBQztRQUVKOzs7O1dBSUc7UUFFSCxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFFaEMsQ0FBQztRQUVKLGdCQUFnQjtRQUNULGNBQVMsR0FBYyxNQUFNLENBQUM7S0FDdEM7O2dIQWpGWSxrQkFBa0I7b0dBQWxCLGtCQUFrQixnV0FmbkI7Ozs7Ozs7Ozs7Ozs7R0FhVDs0RkFFVSxrQkFBa0I7a0JBakI5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7OztHQWFUO2lCQUNGOzhCQVFDLE9BQU87c0JBRE4sS0FBSztnQkFTTixXQUFXO3NCQURWLEtBQUs7Z0JBU04sT0FBTztzQkFETixLQUFLO2dCQVNOLFVBQVU7c0JBRFQsS0FBSztnQkFTTixZQUFZO3NCQURYLEtBQUs7Z0JBU04sWUFBWTtzQkFEWCxLQUFLO2dCQVNOLGNBQWM7c0JBRGIsTUFBTTtnQkFXUCxvQkFBb0I7c0JBRG5CLE1BQU07Z0JBV1AsZ0JBQWdCO3NCQURmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBDaGFydFR5cGUgfSBmcm9tICcuLi8uLi9zZGstdWktY29yZS1leHBvcnRzJztcbmltcG9ydCB7IHR5cGUgQXJlYUNoYXJ0UHJvcHMgfSBmcm9tICdAc2lzZW5zZS9zZGstdWktcHJlYWN0JztcbmltcG9ydCB7IEFyZ3VtZW50c0FzT2JqZWN0IH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHNpbWlsYXIgdG8gYSB7QGxpbmsgTGluZUNoYXJ0Q29tcG9uZW50fSxcbiAqIGJ1dCB3aXRoIGZpbGxlZCBpbiBhcmVhcyB1bmRlciBlYWNoIGxpbmUgYW5kIGFuIG9wdGlvbiB0byBkaXNwbGF5IHRoZW0gYXMgc3RhY2tlZC5cbiAqIE1vcmUgaW5mbyBvbiBbU2lzZW5zZSBEb2N1bWVudGF0aW9uIHBhZ2VdKGh0dHBzOi8vZG9jcy5zaXNlbnNlLmNvbS9tYWluL1Npc2Vuc2VMaW51eC9hcmVhLWNoYXJ0Lmh0bSkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqICAgIDxjc2RrLWFyZWEtY2hhcnRcbiAqICAgICAgW2RhdGFTZXRdPVwiY2hhcnQuZGF0YVNldFwiXG4gKiAgICAgIFtkYXRhT3B0aW9uc109XCJjaGFydC5kYXRhT3B0aW9uc1wiXG4gKiAgICAgIFtoaWdobGlnaHRzXT1cImZpbHRlcnNcIlxuICogICAgICBbYmVmb3JlUmVuZGVyXT1cIm9uQmVmb3JlUmVuZGVyXCJcbiAqICAgICAgKGRhdGFQb2ludENsaWNrKT1cImxvZ0FyZ3VtZW50cygkZXZlbnQpXCJcbiAqICAgICAgKGRhdGFQb2ludENvbnRleHRNZW51KT1cImxvZ0FyZ3VtZW50cygkZXZlbnQpXCJcbiAqICAgICAgKGRhdGFQb2ludHNTZWxlY3QpPVwibG9nQXJndW1lbnRzKCRldmVudClcIlxuICogICAgLz5cbiAqIGBgYFxuICogYGBgdHNcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWVhc3VyZUZhY3RvcnksIGZpbHRlckZhY3RvcnksIEZpbHRlciB9IGZyb20gJ0BzaXNlbnNlL3Nkay1kYXRhJztcbmltcG9ydCAqIGFzIERNIGZyb20gJy4uLy4uL2Fzc2V0cy9zYW1wbGUtaGVhbHRoY2FyZS1tb2RlbCc7XG5pbXBvcnQgdHlwZSB7IENoYXJ0VHlwZSB9IGZyb20gJ0BzaXNlbnNlL3Nkay11aS1hbmd1bGFyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWFuYWx5dGljcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbmFseXRpY3MuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbmFseXRpY3MuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQW5hbHl0aWNzQ29tcG9uZW50IHtcbiAgRE0gPSBETTtcbiAgZmlsdGVycyA9IFtmaWx0ZXJGYWN0b3J5Lm1lbWJlcnMoRE0uRGl2aXNpb25zLkRpdmlzb25fbmFtZSwgWydDYXJkaW9sb2d5JywgJ05ldXJvbG9neSddKV07XG4gIGNoYXJ0ID0ge1xuICAgIGNoYXJ0VHlwZTogJ2NvbHVtbicgYXMgQ2hhcnRUeXBlLFxuICAgIGRhdGFTZXQ6IERNLkRhdGFTb3VyY2UsXG4gICAgZGF0YU9wdGlvbnM6IHtcbiAgICAgIGNhdGVnb3J5OiBbRE0uRGl2aXNpb25zLkRpdmlzb25fbmFtZV0sXG4gICAgICB2YWx1ZTogW21lYXN1cmVGYWN0b3J5LnN1bShETS5BZG1pc3Npb25zLkNvc3Rfb2ZfYWRtaXNzaW9uKV0sXG4gICAgICBicmVha0J5OiBbXSxcbiAgICB9LFxuICB9O1xuXG4gIG9uQmVmb3JlUmVuZGVyKG9wdGlvbnM6IGFueSkge1xuICAgIGNvbnNvbGUubG9nKCdiZWZvcmVSZW5kZXInKTtcbiAgICBjb25zb2xlLmxvZyhvcHRpb25zKTtcbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfVxuXG4gIGxvZ0FyZ3VtZW50cyguLi5hcmdzOiBhbnlbXSkge1xuICAgIGNvbnNvbGUubG9nKGFyZ3MpO1xuICB9XG59XG4gKiBgYGBcbiAqIDxpbWcgc3JjPVwibWVkaWE6Ly9hbmd1bGFyLWFyZWEtY2hhcnQtZXhhbXBsZS5wbmdcIiB3aWR0aD1cIjgwMHB4XCIgLz5cbiAqXG4gKiBAZ3JvdXAgQ2hhcnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NzZGstYXJlYS1jaGFydCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGNzZGstY2hhcnRcbiAgICAgIFtjaGFydFR5cGVdPVwiY2hhcnRUeXBlXCJcbiAgICAgIFtkYXRhU2V0XT1cImRhdGFTZXRcIlxuICAgICAgW2RhdGFPcHRpb25zXT1cImRhdGFPcHRpb25zXCJcbiAgICAgIFtmaWx0ZXJzXT1cImZpbHRlcnNcIlxuICAgICAgW2hpZ2hsaWdodHNdPVwiaGlnaGxpZ2h0c1wiXG4gICAgICBbc3R5bGVPcHRpb25zXT1cInN0eWxlT3B0aW9uc1wiXG4gICAgICBbYmVmb3JlUmVuZGVyXT1cImJlZm9yZVJlbmRlclwiXG4gICAgICAoZGF0YVBvaW50Q2xpY2spPVwiZGF0YVBvaW50Q2xpY2suZW1pdCgkZXZlbnQpXCJcbiAgICAgIChkYXRhUG9pbnRDb250ZXh0TWVudSk9XCJkYXRhUG9pbnRDb250ZXh0TWVudS5lbWl0KCRldmVudClcIlxuICAgICAgKGRhdGFQb2ludHNTZWxlY3QpPVwiZGF0YVBvaW50c1NlbGVjdC5lbWl0KCRldmVudClcIlxuICAgIC8+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIEFyZWFDaGFydENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUFyZWFDaGFydFByb3BzLmRhdGFTZXR9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBEYXRhXG4gICAqL1xuICBASW5wdXQoKVxuICBkYXRhU2V0OiBBcmVhQ2hhcnRQcm9wc1snZGF0YVNldCddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUFyZWFDaGFydFByb3BzLmRhdGFPcHRpb25zfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2hhcnRcbiAgICovXG4gIEBJbnB1dCgpXG4gIGRhdGFPcHRpb25zITogQXJlYUNoYXJ0UHJvcHNbJ2RhdGFPcHRpb25zJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQXJlYUNoYXJ0UHJvcHMuZmlsdGVyc31cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGZpbHRlcnM6IEFyZWFDaGFydFByb3BzWydmaWx0ZXJzJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQXJlYUNoYXJ0UHJvcHMuaGlnaGxpZ2h0c31cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGhpZ2hsaWdodHM6IEFyZWFDaGFydFByb3BzWydoaWdobGlnaHRzJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQXJlYUNoYXJ0UHJvcHMuc3R5bGVPcHRpb25zfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2hhcnRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHN0eWxlT3B0aW9uczogQXJlYUNoYXJ0UHJvcHNbJ3N0eWxlT3B0aW9ucyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUFyZWFDaGFydFByb3BzLm9uQmVmb3JlUmVuZGVyfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2FsbGJhY2tzXG4gICAqL1xuICBASW5wdXQoKVxuICBiZWZvcmVSZW5kZXI6IEFyZWFDaGFydFByb3BzWydvbkJlZm9yZVJlbmRlciddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUFyZWFDaGFydFByb3BzLm9uRGF0YVBvaW50Q2xpY2t9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBPdXRwdXQoKVxuICBkYXRhUG9pbnRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgQXJndW1lbnRzQXNPYmplY3Q8QXJlYUNoYXJ0UHJvcHNbJ29uRGF0YVBvaW50Q2xpY2snXSwgWydwb2ludCcsICduYXRpdmVFdmVudCddPlxuICA+KCk7XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQXJlYUNoYXJ0UHJvcHMub25EYXRhUG9pbnRDb250ZXh0TWVudX1cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRhdGFQb2ludENvbnRleHRNZW51ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBBcmd1bWVudHNBc09iamVjdDxBcmVhQ2hhcnRQcm9wc1snb25EYXRhUG9pbnRDb250ZXh0TWVudSddLCBbJ3BvaW50JywgJ25hdGl2ZUV2ZW50J10+XG4gID4oKTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFBcmVhQ2hhcnRQcm9wcy5vbkRhdGFQb2ludHNTZWxlY3RlZH1cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRhdGFQb2ludHNTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPFxuICAgIEFyZ3VtZW50c0FzT2JqZWN0PEFyZWFDaGFydFByb3BzWydvbkRhdGFQb2ludHNTZWxlY3RlZCddLCBbJ3BvaW50cycsICduYXRpdmVFdmVudCddPlxuICA+KCk7XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBwdWJsaWMgY2hhcnRUeXBlOiBDaGFydFR5cGUgPSAnYXJlYSc7XG59XG4iXX0=
@@ -0,0 +1,100 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./chart.component";
4
+ /**
5
+ * An Angular component that allows to visualize geographical data as polygons on a map.
6
+ * See [Areamap Chart](https://docs.sisense.com/main/SisenseLinux/area-map.htm) for more information.
7
+ *
8
+ * @example
9
+ * ```html
10
+ * <csdk-areamap-chart
11
+ * [dataSet]="areamapChart.dataSet"
12
+ * [dataOptions]="areamapChart.dataOptions"
13
+ * [styleOptions]="areamapChart.styleOptions"
14
+ * (dataPointClick)="logArguments($event)"
15
+ * /> * ```
16
+ * ```ts
17
+ import { Component } from '@angular/core';
18
+ import { measureFactory } from '@sisense/sdk-data';
19
+ import * as DM from '../../assets/sample-ecommerce';
20
+
21
+ @Component({
22
+ selector: 'app-analytics',
23
+ templateUrl: './analytics.component.html',
24
+ styleUrls: ['./analytics.component.scss'],
25
+ })
26
+ export class AnalyticsComponent {
27
+ areamapChart = {
28
+ dataSet: DM.DataSource,
29
+ dataOptions: {
30
+ geo: [DM.Country.Country],
31
+ color: [measureFactory.sum(DM.Commerce.Revenue, 'Color by Revenue')],
32
+ } as AreamapChartDataOptions,
33
+ styleOptions: {
34
+ mapType: 'world',
35
+ } as AreamapStyleOptions,
36
+ };
37
+
38
+ logArguments(...args: any[]) {
39
+ console.log(args);
40
+ }
41
+ }
42
+ * ```
43
+ * <img src="media://angular-areamap-chart-example.png" width="800px" />
44
+ *
45
+ * @group Charts
46
+ */
47
+ export class AreamapChartComponent {
48
+ constructor() {
49
+ /**
50
+ * {@inheritDoc @sisense/sdk-ui!AreamapChartProps.onDataPointClick}
51
+ *
52
+ * @category Callbacks
53
+ */
54
+ this.dataPointClick = new EventEmitter();
55
+ /** @internal */
56
+ this.chartType = 'areamap';
57
+ }
58
+ }
59
+ AreamapChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AreamapChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
60
+ AreamapChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AreamapChartComponent, selector: "csdk-areamap-chart", inputs: { dataSet: "dataSet", dataOptions: "dataOptions", filters: "filters", highlights: "highlights", styleOptions: "styleOptions" }, outputs: { dataPointClick: "dataPointClick" }, ngImport: i0, template: `
61
+ <csdk-chart
62
+ [chartType]="chartType"
63
+ [dataSet]="dataSet"
64
+ [dataOptions]="dataOptions"
65
+ [filters]="filters"
66
+ [highlights]="highlights"
67
+ [styleOptions]="styleOptions"
68
+ (dataPointClick)="dataPointClick.emit($event)"
69
+ />
70
+ `, isInline: true, dependencies: [{ kind: "component", type: i1.ChartComponent, selector: "csdk-chart", inputs: ["chartType", "dataSet", "dataOptions", "filters", "highlights", "styleOptions", "beforeRender"], outputs: ["dataPointClick", "dataPointContextMenu", "dataPointsSelect"] }] });
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AreamapChartComponent, decorators: [{
72
+ type: Component,
73
+ args: [{
74
+ selector: 'csdk-areamap-chart',
75
+ template: `
76
+ <csdk-chart
77
+ [chartType]="chartType"
78
+ [dataSet]="dataSet"
79
+ [dataOptions]="dataOptions"
80
+ [filters]="filters"
81
+ [highlights]="highlights"
82
+ [styleOptions]="styleOptions"
83
+ (dataPointClick)="dataPointClick.emit($event)"
84
+ />
85
+ `,
86
+ }]
87
+ }], propDecorators: { dataSet: [{
88
+ type: Input
89
+ }], dataOptions: [{
90
+ type: Input
91
+ }], filters: [{
92
+ type: Input
93
+ }], highlights: [{
94
+ type: Input
95
+ }], styleOptions: [{
96
+ type: Input
97
+ }], dataPointClick: [{
98
+ type: Output
99
+ }] } });
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJlYW1hcC1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvY2hhcnRzL2FyZWFtYXAtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUl2RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMENHO0FBZUgsTUFBTSxPQUFPLHFCQUFxQjtJQWRsQztRQXVERTs7OztXQUlHO1FBRUgsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFFOUIsQ0FBQztRQUVKLGdCQUFnQjtRQUNULGNBQVMsR0FBYyxTQUFTLENBQUM7S0FDekM7O21IQXJEWSxxQkFBcUI7dUdBQXJCLHFCQUFxQixpUEFadEI7Ozs7Ozs7Ozs7R0FVVDs0RkFFVSxxQkFBcUI7a0JBZGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFOzs7Ozs7Ozs7O0dBVVQ7aUJBQ0Y7OEJBUUMsT0FBTztzQkFETixLQUFLO2dCQVNOLFdBQVc7c0JBRFYsS0FBSztnQkFTTixPQUFPO3NCQUROLEtBQUs7Z0JBU04sVUFBVTtzQkFEVCxLQUFLO2dCQVNOLFlBQVk7c0JBRFgsS0FBSztnQkFTTixjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBDaGFydFR5cGUsIHR5cGUgQXJlYW1hcENoYXJ0UHJvcHMgfSBmcm9tICdAc2lzZW5zZS9zZGstdWktcHJlYWN0JztcbmltcG9ydCB7IEFyZ3VtZW50c0FzT2JqZWN0IH0gZnJvbSAnLi4vLi4vdHlwZXMvdXRpbGl0eS10eXBlcyc7XG5cbi8qKlxuICogQW4gQW5ndWxhciBjb21wb25lbnQgdGhhdCBhbGxvd3MgdG8gdmlzdWFsaXplIGdlb2dyYXBoaWNhbCBkYXRhIGFzIHBvbHlnb25zIG9uIGEgbWFwLlxuICogU2VlIFtBcmVhbWFwIENoYXJ0XShodHRwczovL2RvY3Muc2lzZW5zZS5jb20vbWFpbi9TaXNlbnNlTGludXgvYXJlYS1tYXAuaHRtKSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogICAgPGNzZGstYXJlYW1hcC1jaGFydFxuICogICAgICBbZGF0YVNldF09XCJhcmVhbWFwQ2hhcnQuZGF0YVNldFwiXG4gKiAgICAgIFtkYXRhT3B0aW9uc109XCJhcmVhbWFwQ2hhcnQuZGF0YU9wdGlvbnNcIlxuICogICAgICBbc3R5bGVPcHRpb25zXT1cImFyZWFtYXBDaGFydC5zdHlsZU9wdGlvbnNcIlxuICogICAgICAoZGF0YVBvaW50Q2xpY2spPVwibG9nQXJndW1lbnRzKCRldmVudClcIlxuICogICAgLz4gKiBgYGBcbiAqIGBgYHRzXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG1lYXN1cmVGYWN0b3J5IH0gZnJvbSAnQHNpc2Vuc2Uvc2RrLWRhdGEnO1xuaW1wb3J0ICogYXMgRE0gZnJvbSAnLi4vLi4vYXNzZXRzL3NhbXBsZS1lY29tbWVyY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYW5hbHl0aWNzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FuYWx5dGljcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FuYWx5dGljcy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBbmFseXRpY3NDb21wb25lbnQge1xuICBhcmVhbWFwQ2hhcnQgPSB7XG4gICAgZGF0YVNldDogRE0uRGF0YVNvdXJjZSxcbiAgICBkYXRhT3B0aW9uczoge1xuICAgICAgZ2VvOiBbRE0uQ291bnRyeS5Db3VudHJ5XSxcbiAgICAgIGNvbG9yOiBbbWVhc3VyZUZhY3Rvcnkuc3VtKERNLkNvbW1lcmNlLlJldmVudWUsICdDb2xvciBieSBSZXZlbnVlJyldLFxuICAgIH0gYXMgQXJlYW1hcENoYXJ0RGF0YU9wdGlvbnMsXG4gICAgc3R5bGVPcHRpb25zOiB7XG4gICAgICBtYXBUeXBlOiAnd29ybGQnLFxuICAgIH0gYXMgQXJlYW1hcFN0eWxlT3B0aW9ucyxcbiAgfTtcblxuICBsb2dBcmd1bWVudHMoLi4uYXJnczogYW55W10pIHtcbiAgICBjb25zb2xlLmxvZyhhcmdzKTtcbiAgfVxufVxuICogYGBgXG4gKiA8aW1nIHNyYz1cIm1lZGlhOi8vYW5ndWxhci1hcmVhbWFwLWNoYXJ0LWV4YW1wbGUucG5nXCIgd2lkdGg9XCI4MDBweFwiIC8+XG4gKlxuICogQGdyb3VwIENoYXJ0c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjc2RrLWFyZWFtYXAtY2hhcnQnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxjc2RrLWNoYXJ0XG4gICAgICBbY2hhcnRUeXBlXT1cImNoYXJ0VHlwZVwiXG4gICAgICBbZGF0YVNldF09XCJkYXRhU2V0XCJcbiAgICAgIFtkYXRhT3B0aW9uc109XCJkYXRhT3B0aW9uc1wiXG4gICAgICBbZmlsdGVyc109XCJmaWx0ZXJzXCJcbiAgICAgIFtoaWdobGlnaHRzXT1cImhpZ2hsaWdodHNcIlxuICAgICAgW3N0eWxlT3B0aW9uc109XCJzdHlsZU9wdGlvbnNcIlxuICAgICAgKGRhdGFQb2ludENsaWNrKT1cImRhdGFQb2ludENsaWNrLmVtaXQoJGV2ZW50KVwiXG4gICAgLz5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQXJlYW1hcENoYXJ0Q29tcG9uZW50IHtcbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQXJlYW1hcENoYXJ0UHJvcHMuZGF0YVNldH1cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGRhdGFTZXQ6IEFyZWFtYXBDaGFydFByb3BzWydkYXRhU2V0J107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQXJlYW1hcENoYXJ0UHJvcHMuZGF0YU9wdGlvbnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDaGFydFxuICAgKi9cbiAgQElucHV0KClcbiAgZGF0YU9wdGlvbnMhOiBBcmVhbWFwQ2hhcnRQcm9wc1snZGF0YU9wdGlvbnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFBcmVhbWFwQ2hhcnRQcm9wcy5maWx0ZXJzfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgZmlsdGVyczogQXJlYW1hcENoYXJ0UHJvcHNbJ2ZpbHRlcnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFBcmVhbWFwQ2hhcnRQcm9wcy5oaWdobGlnaHRzfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgaGlnaGxpZ2h0czogQXJlYW1hcENoYXJ0UHJvcHNbJ2hpZ2hsaWdodHMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFBcmVhbWFwQ2hhcnRQcm9wcy5zdHlsZU9wdGlvbnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDaGFydFxuICAgKi9cbiAgQElucHV0KClcbiAgc3R5bGVPcHRpb25zOiBBcmVhbWFwQ2hhcnRQcm9wc1snc3R5bGVPcHRpb25zJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQXJlYW1hcENoYXJ0UHJvcHMub25EYXRhUG9pbnRDbGlja31cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRhdGFQb2ludENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBBcmd1bWVudHNBc09iamVjdDxBcmVhbWFwQ2hhcnRQcm9wc1snb25EYXRhUG9pbnRDbGljayddLCBbJ3BvaW50JywgJ25hdGl2ZUV2ZW50J10+XG4gID4oKTtcblxuICAvKiogQGludGVybmFsICovXG4gIHB1YmxpYyBjaGFydFR5cGU6IENoYXJ0VHlwZSA9ICdhcmVhbWFwJztcbn1cbiJdfQ==
@@ -0,0 +1,136 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./chart.component";
4
+ /**
5
+ * A component representing categorical data with horizontal rectangular bars,
6
+ * whose lengths are proportional to the values that they represent.
7
+ * See [Bar Chart](https://docs.sisense.com/main/SisenseLinux/bar-chart.htm) for more information.
8
+ *
9
+ * @example
10
+ * ```html
11
+ * <csdk-bar-chart
12
+ * [dataSet]="chart.dataSet"
13
+ * [dataOptions]="chart.dataOptions"
14
+ * [highlights]="filters"
15
+ * [beforeRender]="onBeforeRender"
16
+ * (dataPointClick)="logArguments($event)"
17
+ * (dataPointContextMenu)="logArguments($event)"
18
+ * (dataPointsSelect)="logArguments($event)"
19
+ * /> * ```
20
+ * ```ts
21
+ import { Component } from '@angular/core';
22
+ import { measureFactory, filterFactory } from '@sisense/sdk-data';
23
+ import * as DM from '../../assets/sample-healthcare-model';
24
+ import type { ChartType } from '@sisense/sdk-ui-angular';
25
+
26
+ @Component({
27
+ selector: 'app-analytics',
28
+ templateUrl: './analytics.component.html',
29
+ styleUrls: ['./analytics.component.scss'],
30
+ })
31
+ export class AnalyticsComponent {
32
+ DM = DM;
33
+ filters = [filterFactory.members(DM.Divisions.Divison_name, ['Cardiology', 'Neurology'])];
34
+ chart = {
35
+ chartType: 'column' as ChartType,
36
+ dataSet: DM.DataSource,
37
+ dataOptions: {
38
+ category: [DM.Divisions.Divison_name],
39
+ value: [measureFactory.sum(DM.Admissions.Cost_of_admission)],
40
+ breakBy: [],
41
+ },
42
+ };
43
+
44
+ onBeforeRender(options: any) {
45
+ console.log('beforeRender');
46
+ console.log(options);
47
+ return options;
48
+ }
49
+
50
+ logArguments(...args: any[]) {
51
+ console.log(args);
52
+ }
53
+ }
54
+ * ```
55
+ * <img src="media://angular-bar-chart-example.png" width="800px" />
56
+ *
57
+ * @group Charts
58
+ */
59
+ export class BarChartComponent {
60
+ constructor() {
61
+ /**
62
+ * {@inheritDoc @sisense/sdk-ui!BarChartProps.onDataPointClick}
63
+ *
64
+ * @category Callbacks
65
+ */
66
+ this.dataPointClick = new EventEmitter();
67
+ /**
68
+ * {@inheritDoc @sisense/sdk-ui!BarChartProps.onDataPointContextMenu}
69
+ *
70
+ * @category Callbacks
71
+ */
72
+ this.dataPointContextMenu = new EventEmitter();
73
+ /**
74
+ * {@inheritDoc @sisense/sdk-ui!BarChartProps.onDataPointsSelected}
75
+ *
76
+ * @category Callbacks
77
+ */
78
+ this.dataPointsSelect = new EventEmitter();
79
+ /** @internal */
80
+ this.chartType = 'bar';
81
+ }
82
+ }
83
+ BarChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BarChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
84
+ BarChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BarChartComponent, selector: "csdk-bar-chart", inputs: { dataSet: "dataSet", dataOptions: "dataOptions", filters: "filters", highlights: "highlights", styleOptions: "styleOptions", beforeRender: "beforeRender" }, outputs: { dataPointClick: "dataPointClick", dataPointContextMenu: "dataPointContextMenu", dataPointsSelect: "dataPointsSelect" }, ngImport: i0, template: `
85
+ <csdk-chart
86
+ [chartType]="chartType"
87
+ [dataSet]="dataSet"
88
+ [dataOptions]="dataOptions"
89
+ [filters]="filters"
90
+ [highlights]="highlights"
91
+ [styleOptions]="styleOptions"
92
+ [beforeRender]="beforeRender"
93
+ (dataPointClick)="dataPointClick.emit($event)"
94
+ (dataPointContextMenu)="dataPointContextMenu.emit($event)"
95
+ (dataPointsSelect)="dataPointsSelect.emit($event)"
96
+ />
97
+ `, isInline: true, dependencies: [{ kind: "component", type: i1.ChartComponent, selector: "csdk-chart", inputs: ["chartType", "dataSet", "dataOptions", "filters", "highlights", "styleOptions", "beforeRender"], outputs: ["dataPointClick", "dataPointContextMenu", "dataPointsSelect"] }] });
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BarChartComponent, decorators: [{
99
+ type: Component,
100
+ args: [{
101
+ selector: 'csdk-bar-chart',
102
+ template: `
103
+ <csdk-chart
104
+ [chartType]="chartType"
105
+ [dataSet]="dataSet"
106
+ [dataOptions]="dataOptions"
107
+ [filters]="filters"
108
+ [highlights]="highlights"
109
+ [styleOptions]="styleOptions"
110
+ [beforeRender]="beforeRender"
111
+ (dataPointClick)="dataPointClick.emit($event)"
112
+ (dataPointContextMenu)="dataPointContextMenu.emit($event)"
113
+ (dataPointsSelect)="dataPointsSelect.emit($event)"
114
+ />
115
+ `,
116
+ }]
117
+ }], propDecorators: { dataSet: [{
118
+ type: Input
119
+ }], dataOptions: [{
120
+ type: Input
121
+ }], filters: [{
122
+ type: Input
123
+ }], highlights: [{
124
+ type: Input
125
+ }], styleOptions: [{
126
+ type: Input
127
+ }], beforeRender: [{
128
+ type: Input
129
+ }], dataPointClick: [{
130
+ type: Output
131
+ }], dataPointContextMenu: [{
132
+ type: Output
133
+ }], dataPointsSelect: [{
134
+ type: Output
135
+ }] } });
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9jaGFydHMvYmFyLWNoYXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLdkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNERztBQWtCSCxNQUFNLE9BQU8saUJBQWlCO0lBakI5QjtRQWtFRTs7OztXQUlHO1FBRUgsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFFOUIsQ0FBQztRQUVKOzs7O1dBSUc7UUFFSCx5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFFcEMsQ0FBQztRQUVKOzs7O1dBSUc7UUFFSCxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFFaEMsQ0FBQztRQUVKLGdCQUFnQjtRQUNULGNBQVMsR0FBYyxLQUFLLENBQUM7S0FDckM7OytHQWpGWSxpQkFBaUI7bUdBQWpCLGlCQUFpQiwrVkFmbEI7Ozs7Ozs7Ozs7Ozs7R0FhVDs0RkFFVSxpQkFBaUI7a0JBakI3QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7OztHQWFUO2lCQUNGOzhCQVFDLE9BQU87c0JBRE4sS0FBSztnQkFTTixXQUFXO3NCQURWLEtBQUs7Z0JBU04sT0FBTztzQkFETixLQUFLO2dCQVNOLFVBQVU7c0JBRFQsS0FBSztnQkFTTixZQUFZO3NCQURYLEtBQUs7Z0JBU04sWUFBWTtzQkFEWCxLQUFLO2dCQVNOLGNBQWM7c0JBRGIsTUFBTTtnQkFXUCxvQkFBb0I7c0JBRG5CLE1BQU07Z0JBV1AsZ0JBQWdCO3NCQURmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBDaGFydFR5cGUgfSBmcm9tICcuLi8uLi9zZGstdWktY29yZS1leHBvcnRzJztcbmltcG9ydCB7IHR5cGUgQmFyQ2hhcnRQcm9wcyB9IGZyb20gJ0BzaXNlbnNlL3Nkay11aS1wcmVhY3QnO1xuaW1wb3J0IHsgdHlwZSBBcmd1bWVudHNBc09iamVjdCB9IGZyb20gJy4uLy4uL3R5cGVzL3V0aWxpdHktdHlwZXMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHJlcHJlc2VudGluZyBjYXRlZ29yaWNhbCBkYXRhIHdpdGggaG9yaXpvbnRhbCByZWN0YW5ndWxhciBiYXJzLFxuICogd2hvc2UgbGVuZ3RocyBhcmUgcHJvcG9ydGlvbmFsIHRvIHRoZSB2YWx1ZXMgdGhhdCB0aGV5IHJlcHJlc2VudC5cbiAqIFNlZSBbQmFyIENoYXJ0XShodHRwczovL2RvY3Muc2lzZW5zZS5jb20vbWFpbi9TaXNlbnNlTGludXgvYmFyLWNoYXJ0Lmh0bSkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqICAgIDxjc2RrLWJhci1jaGFydFxuICogICAgICBbZGF0YVNldF09XCJjaGFydC5kYXRhU2V0XCJcbiAqICAgICAgW2RhdGFPcHRpb25zXT1cImNoYXJ0LmRhdGFPcHRpb25zXCJcbiAqICAgICAgW2hpZ2hsaWdodHNdPVwiZmlsdGVyc1wiXG4gKiAgICAgIFtiZWZvcmVSZW5kZXJdPVwib25CZWZvcmVSZW5kZXJcIlxuICogICAgICAoZGF0YVBvaW50Q2xpY2spPVwibG9nQXJndW1lbnRzKCRldmVudClcIlxuICogICAgICAoZGF0YVBvaW50Q29udGV4dE1lbnUpPVwibG9nQXJndW1lbnRzKCRldmVudClcIlxuICogICAgICAoZGF0YVBvaW50c1NlbGVjdCk9XCJsb2dBcmd1bWVudHMoJGV2ZW50KVwiXG4gKiAgICAvPiAqIGBgYFxuICogYGBgdHNcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWVhc3VyZUZhY3RvcnksIGZpbHRlckZhY3RvcnkgfSBmcm9tICdAc2lzZW5zZS9zZGstZGF0YSc7XG5pbXBvcnQgKiBhcyBETSBmcm9tICcuLi8uLi9hc3NldHMvc2FtcGxlLWhlYWx0aGNhcmUtbW9kZWwnO1xuaW1wb3J0IHR5cGUgeyBDaGFydFR5cGUgfSBmcm9tICdAc2lzZW5zZS9zZGstdWktYW5ndWxhcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1hbmFseXRpY3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vYW5hbHl0aWNzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYW5hbHl0aWNzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFuYWx5dGljc0NvbXBvbmVudCB7XG4gIERNID0gRE07XG4gIGZpbHRlcnMgPSBbZmlsdGVyRmFjdG9yeS5tZW1iZXJzKERNLkRpdmlzaW9ucy5EaXZpc29uX25hbWUsIFsnQ2FyZGlvbG9neScsICdOZXVyb2xvZ3knXSldO1xuICBjaGFydCA9IHtcbiAgICBjaGFydFR5cGU6ICdjb2x1bW4nIGFzIENoYXJ0VHlwZSxcbiAgICBkYXRhU2V0OiBETS5EYXRhU291cmNlLFxuICAgIGRhdGFPcHRpb25zOiB7XG4gICAgICBjYXRlZ29yeTogW0RNLkRpdmlzaW9ucy5EaXZpc29uX25hbWVdLFxuICAgICAgdmFsdWU6IFttZWFzdXJlRmFjdG9yeS5zdW0oRE0uQWRtaXNzaW9ucy5Db3N0X29mX2FkbWlzc2lvbildLFxuICAgICAgYnJlYWtCeTogW10sXG4gICAgfSxcbiAgfTtcblxuICBvbkJlZm9yZVJlbmRlcihvcHRpb25zOiBhbnkpIHtcbiAgICBjb25zb2xlLmxvZygnYmVmb3JlUmVuZGVyJyk7XG4gICAgY29uc29sZS5sb2cob3B0aW9ucyk7XG4gICAgcmV0dXJuIG9wdGlvbnM7XG4gIH1cblxuICBsb2dBcmd1bWVudHMoLi4uYXJnczogYW55W10pIHtcbiAgICBjb25zb2xlLmxvZyhhcmdzKTtcbiAgfVxufVxuICogYGBgXG4gKiA8aW1nIHNyYz1cIm1lZGlhOi8vYW5ndWxhci1iYXItY2hhcnQtZXhhbXBsZS5wbmdcIiB3aWR0aD1cIjgwMHB4XCIgLz5cbiAqXG4gKiBAZ3JvdXAgQ2hhcnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NzZGstYmFyLWNoYXJ0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8Y3Nkay1jaGFydFxuICAgICAgW2NoYXJ0VHlwZV09XCJjaGFydFR5cGVcIlxuICAgICAgW2RhdGFTZXRdPVwiZGF0YVNldFwiXG4gICAgICBbZGF0YU9wdGlvbnNdPVwiZGF0YU9wdGlvbnNcIlxuICAgICAgW2ZpbHRlcnNdPVwiZmlsdGVyc1wiXG4gICAgICBbaGlnaGxpZ2h0c109XCJoaWdobGlnaHRzXCJcbiAgICAgIFtzdHlsZU9wdGlvbnNdPVwic3R5bGVPcHRpb25zXCJcbiAgICAgIFtiZWZvcmVSZW5kZXJdPVwiYmVmb3JlUmVuZGVyXCJcbiAgICAgIChkYXRhUG9pbnRDbGljayk9XCJkYXRhUG9pbnRDbGljay5lbWl0KCRldmVudClcIlxuICAgICAgKGRhdGFQb2ludENvbnRleHRNZW51KT1cImRhdGFQb2ludENvbnRleHRNZW51LmVtaXQoJGV2ZW50KVwiXG4gICAgICAoZGF0YVBvaW50c1NlbGVjdCk9XCJkYXRhUG9pbnRzU2VsZWN0LmVtaXQoJGV2ZW50KVwiXG4gICAgLz5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQmFyQ2hhcnRDb21wb25lbnQge1xuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFCYXJDaGFydFByb3BzLmRhdGFTZXR9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBEYXRhXG4gICAqL1xuICBASW5wdXQoKVxuICBkYXRhU2V0OiBCYXJDaGFydFByb3BzWydkYXRhU2V0J107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQmFyQ2hhcnRQcm9wcy5kYXRhT3B0aW9uc31cbiAgICpcbiAgICogQGNhdGVnb3J5IENoYXJ0XG4gICAqL1xuICBASW5wdXQoKVxuICBkYXRhT3B0aW9ucyE6IEJhckNoYXJ0UHJvcHNbJ2RhdGFPcHRpb25zJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQmFyQ2hhcnRQcm9wcy5maWx0ZXJzfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgZmlsdGVyczogQmFyQ2hhcnRQcm9wc1snZmlsdGVycyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUJhckNoYXJ0UHJvcHMuaGlnaGxpZ2h0c31cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGhpZ2hsaWdodHM6IEJhckNoYXJ0UHJvcHNbJ2hpZ2hsaWdodHMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFCYXJDaGFydFByb3BzLnN0eWxlT3B0aW9uc31cbiAgICpcbiAgICogQGNhdGVnb3J5IENoYXJ0XG4gICAqL1xuICBASW5wdXQoKVxuICBzdHlsZU9wdGlvbnM6IEJhckNoYXJ0UHJvcHNbJ3N0eWxlT3B0aW9ucyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUJhckNoYXJ0UHJvcHMub25CZWZvcmVSZW5kZXJ9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBJbnB1dCgpXG4gIGJlZm9yZVJlbmRlcjogQmFyQ2hhcnRQcm9wc1snb25CZWZvcmVSZW5kZXInXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFCYXJDaGFydFByb3BzLm9uRGF0YVBvaW50Q2xpY2t9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBPdXRwdXQoKVxuICBkYXRhUG9pbnRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgQXJndW1lbnRzQXNPYmplY3Q8QmFyQ2hhcnRQcm9wc1snb25EYXRhUG9pbnRDbGljayddLCBbJ3BvaW50JywgJ25hdGl2ZUV2ZW50J10+XG4gID4oKTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFCYXJDaGFydFByb3BzLm9uRGF0YVBvaW50Q29udGV4dE1lbnV9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBPdXRwdXQoKVxuICBkYXRhUG9pbnRDb250ZXh0TWVudSA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgQXJndW1lbnRzQXNPYmplY3Q8QmFyQ2hhcnRQcm9wc1snb25EYXRhUG9pbnRDb250ZXh0TWVudSddLCBbJ3BvaW50JywgJ25hdGl2ZUV2ZW50J10+XG4gID4oKTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFCYXJDaGFydFByb3BzLm9uRGF0YVBvaW50c1NlbGVjdGVkfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2FsbGJhY2tzXG4gICAqL1xuICBAT3V0cHV0KClcbiAgZGF0YVBvaW50c1NlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgQXJndW1lbnRzQXNPYmplY3Q8QmFyQ2hhcnRQcm9wc1snb25EYXRhUG9pbnRzU2VsZWN0ZWQnXSwgWydwb2ludHMnLCAnbmF0aXZlRXZlbnQnXT5cbiAgPigpO1xuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgcHVibGljIGNoYXJ0VHlwZTogQ2hhcnRUeXBlID0gJ2Jhcic7XG59XG4iXX0=
@@ -0,0 +1,129 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./chart.component";
4
+ /**
5
+ * An Angular component representing data in a way that visually describes the distribution, variability,
6
+ * and center of a data set along an axis.
7
+ * See [Boxplot Chart](https://docs.sisense.com/main/SisenseLinux/box-and-whisker-plot.htm) for more information.
8
+ *
9
+ * @example
10
+ * ```html
11
+ * <csdk-boxplot-chart
12
+ * [dataSet]="boxplotChart.dataSet"
13
+ * [dataOptions]="boxplotChart.dataOptions"
14
+ * [highlights]="boxplotChart.highlights"
15
+ * [beforeRender]="onBeforeRender"
16
+ * (dataPointClick)="logArguments($event)"
17
+ * (dataPointContextMenu)="logArguments($event)"
18
+ * (dataPointsSelect)="logArguments($event)"
19
+ * /> * ```
20
+ * ```ts
21
+ import { Component } from '@angular/core';
22
+ import { filterFactory } from '@sisense/sdk-data';
23
+ import type { BoxplotChartDataOptions } from '@sisense/sdk-ui-angular';
24
+ import * as DM from '../../assets/sample-healthcare-model';
25
+
26
+ @Component({
27
+ selector: 'app-analytics',
28
+ templateUrl: './analytics.component.html',
29
+ styleUrls: ['./analytics.component.scss'],
30
+ })
31
+ export class AnalyticsComponent {
32
+ boxplotChart = {
33
+ dataSet: DM.DataSource,
34
+ dataOptions: {
35
+ category: [DM.Divisions.Divison_name],
36
+ value: [DM.Admissions.TimeofStay],
37
+ boxType: 'iqr',
38
+ outliersEnabled: true,
39
+ } as BoxplotChartDataOptions,
40
+ highlights: [filterFactory.members(DM.Divisions.Divison_name, ['Cardiology', 'Neurology'])],
41
+ };
42
+
43
+ logArguments(...args: any[]) {
44
+ console.log(args);
45
+ }
46
+ }
47
+ * ```
48
+ * <img src="media://angular-boxplot-chart-example.png" width="800px" />
49
+ *
50
+ * @group Charts
51
+ */
52
+ export class BoxplotChartComponent {
53
+ constructor() {
54
+ /**
55
+ * {@inheritDoc @sisense/sdk-ui!BoxplotChartProps.onDataPointClick}
56
+ *
57
+ * @category Callbacks
58
+ */
59
+ this.dataPointClick = new EventEmitter();
60
+ /**
61
+ * {@inheritDoc @sisense/sdk-ui!BoxplotChartProps.onDataPointContextMenu}
62
+ *
63
+ * @category Callbacks
64
+ */
65
+ this.dataPointContextMenu = new EventEmitter();
66
+ /**
67
+ * {@inheritDoc @sisense/sdk-ui!BoxplotChartProps.onDataPointsSelected}
68
+ *
69
+ * @category Callbacks
70
+ */
71
+ this.dataPointsSelect = new EventEmitter();
72
+ /** @internal */
73
+ this.chartType = 'boxplot';
74
+ }
75
+ }
76
+ BoxplotChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BoxplotChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
77
+ BoxplotChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BoxplotChartComponent, selector: "csdk-boxplot-chart", inputs: { dataSet: "dataSet", dataOptions: "dataOptions", filters: "filters", highlights: "highlights", styleOptions: "styleOptions", beforeRender: "beforeRender" }, outputs: { dataPointClick: "dataPointClick", dataPointContextMenu: "dataPointContextMenu", dataPointsSelect: "dataPointsSelect" }, ngImport: i0, template: `
78
+ <csdk-chart
79
+ [chartType]="chartType"
80
+ [dataSet]="dataSet"
81
+ [dataOptions]="dataOptions"
82
+ [filters]="filters"
83
+ [highlights]="highlights"
84
+ [styleOptions]="styleOptions"
85
+ [beforeRender]="beforeRender"
86
+ (dataPointClick)="dataPointClick.emit($event)"
87
+ (dataPointContextMenu)="dataPointContextMenu.emit($event)"
88
+ (dataPointsSelect)="dataPointsSelect.emit($event)"
89
+ />
90
+ `, isInline: true, dependencies: [{ kind: "component", type: i1.ChartComponent, selector: "csdk-chart", inputs: ["chartType", "dataSet", "dataOptions", "filters", "highlights", "styleOptions", "beforeRender"], outputs: ["dataPointClick", "dataPointContextMenu", "dataPointsSelect"] }] });
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BoxplotChartComponent, decorators: [{
92
+ type: Component,
93
+ args: [{
94
+ selector: 'csdk-boxplot-chart',
95
+ template: `
96
+ <csdk-chart
97
+ [chartType]="chartType"
98
+ [dataSet]="dataSet"
99
+ [dataOptions]="dataOptions"
100
+ [filters]="filters"
101
+ [highlights]="highlights"
102
+ [styleOptions]="styleOptions"
103
+ [beforeRender]="beforeRender"
104
+ (dataPointClick)="dataPointClick.emit($event)"
105
+ (dataPointContextMenu)="dataPointContextMenu.emit($event)"
106
+ (dataPointsSelect)="dataPointsSelect.emit($event)"
107
+ />
108
+ `,
109
+ }]
110
+ }], propDecorators: { dataSet: [{
111
+ type: Input
112
+ }], dataOptions: [{
113
+ type: Input
114
+ }], filters: [{
115
+ type: Input
116
+ }], highlights: [{
117
+ type: Input
118
+ }], styleOptions: [{
119
+ type: Input
120
+ }], beforeRender: [{
121
+ type: Input
122
+ }], dataPointClick: [{
123
+ type: Output
124
+ }], dataPointContextMenu: [{
125
+ type: Output
126
+ }], dataPointsSelect: [{
127
+ type: Output
128
+ }] } });
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm94cGxvdC1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvY2hhcnRzL2JveHBsb3QtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUt2RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0ErQ0c7QUFrQkgsTUFBTSxPQUFPLHFCQUFxQjtJQWpCbEM7UUFrRUU7Ozs7V0FJRztRQUVILG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBRTlCLENBQUM7UUFFSjs7OztXQUlHO1FBRUgseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBRXBDLENBQUM7UUFFSjs7OztXQUlHO1FBRUgscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBRWhDLENBQUM7UUFFSixnQkFBZ0I7UUFDVCxjQUFTLEdBQWMsU0FBUyxDQUFDO0tBQ3pDOzttSEFqRlkscUJBQXFCO3VHQUFyQixxQkFBcUIsbVdBZnRCOzs7Ozs7Ozs7Ozs7O0dBYVQ7NEZBRVUscUJBQXFCO2tCQWpCakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7R0FhVDtpQkFDRjs4QkFRQyxPQUFPO3NCQUROLEtBQUs7Z0JBU04sV0FBVztzQkFEVixLQUFLO2dCQVNOLE9BQU87c0JBRE4sS0FBSztnQkFTTixVQUFVO3NCQURULEtBQUs7Z0JBU04sWUFBWTtzQkFEWCxLQUFLO2dCQVNOLFlBQVk7c0JBRFgsS0FBSztnQkFTTixjQUFjO3NCQURiLE1BQU07Z0JBV1Asb0JBQW9CO3NCQURuQixNQUFNO2dCQVdQLGdCQUFnQjtzQkFEZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgQ2hhcnRUeXBlIH0gZnJvbSAnLi4vLi4vc2RrLXVpLWNvcmUtZXhwb3J0cyc7XG5pbXBvcnQgeyB0eXBlIEJveHBsb3RDaGFydFByb3BzIH0gZnJvbSAnQHNpc2Vuc2Uvc2RrLXVpLXByZWFjdCc7XG5pbXBvcnQgeyB0eXBlIEFyZ3VtZW50c0FzT2JqZWN0IH0gZnJvbSAnLi4vLi4vdHlwZXMvdXRpbGl0eS10eXBlcyc7XG5cbi8qKlxuICogQW4gQW5ndWxhciBjb21wb25lbnQgcmVwcmVzZW50aW5nIGRhdGEgaW4gYSB3YXkgdGhhdCB2aXN1YWxseSBkZXNjcmliZXMgdGhlIGRpc3RyaWJ1dGlvbiwgdmFyaWFiaWxpdHksXG4gKiBhbmQgY2VudGVyIG9mIGEgZGF0YSBzZXQgYWxvbmcgYW4gYXhpcy5cbiAqIFNlZSBbQm94cGxvdCBDaGFydF0oaHR0cHM6Ly9kb2NzLnNpc2Vuc2UuY29tL21haW4vU2lzZW5zZUxpbnV4L2JveC1hbmQtd2hpc2tlci1wbG90Lmh0bSkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqICAgIDxjc2RrLWJveHBsb3QtY2hhcnRcbiAqICAgICAgW2RhdGFTZXRdPVwiYm94cGxvdENoYXJ0LmRhdGFTZXRcIlxuICogICAgICBbZGF0YU9wdGlvbnNdPVwiYm94cGxvdENoYXJ0LmRhdGFPcHRpb25zXCJcbiAqICAgICAgW2hpZ2hsaWdodHNdPVwiYm94cGxvdENoYXJ0LmhpZ2hsaWdodHNcIlxuICogICAgICBbYmVmb3JlUmVuZGVyXT1cIm9uQmVmb3JlUmVuZGVyXCJcbiAqICAgICAgKGRhdGFQb2ludENsaWNrKT1cImxvZ0FyZ3VtZW50cygkZXZlbnQpXCJcbiAqICAgICAgKGRhdGFQb2ludENvbnRleHRNZW51KT1cImxvZ0FyZ3VtZW50cygkZXZlbnQpXCJcbiAqICAgICAgKGRhdGFQb2ludHNTZWxlY3QpPVwibG9nQXJndW1lbnRzKCRldmVudClcIlxuICogICAgLz4gKiBgYGBcbiAqIGBgYHRzXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpbHRlckZhY3RvcnkgfSBmcm9tICdAc2lzZW5zZS9zZGstZGF0YSc7XG5pbXBvcnQgdHlwZSB7IEJveHBsb3RDaGFydERhdGFPcHRpb25zIH0gZnJvbSAnQHNpc2Vuc2Uvc2RrLXVpLWFuZ3VsYXInO1xuaW1wb3J0ICogYXMgRE0gZnJvbSAnLi4vLi4vYXNzZXRzL3NhbXBsZS1oZWFsdGhjYXJlLW1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWFuYWx5dGljcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbmFseXRpY3MuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbmFseXRpY3MuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQW5hbHl0aWNzQ29tcG9uZW50IHtcbiAgYm94cGxvdENoYXJ0ID0ge1xuICAgIGRhdGFTZXQ6IERNLkRhdGFTb3VyY2UsXG4gICAgZGF0YU9wdGlvbnM6IHtcbiAgICAgIGNhdGVnb3J5OiBbRE0uRGl2aXNpb25zLkRpdmlzb25fbmFtZV0sXG4gICAgICB2YWx1ZTogW0RNLkFkbWlzc2lvbnMuVGltZW9mU3RheV0sXG4gICAgICBib3hUeXBlOiAnaXFyJyxcbiAgICAgIG91dGxpZXJzRW5hYmxlZDogdHJ1ZSxcbiAgICB9IGFzIEJveHBsb3RDaGFydERhdGFPcHRpb25zLFxuICAgIGhpZ2hsaWdodHM6IFtmaWx0ZXJGYWN0b3J5Lm1lbWJlcnMoRE0uRGl2aXNpb25zLkRpdmlzb25fbmFtZSwgWydDYXJkaW9sb2d5JywgJ05ldXJvbG9neSddKV0sXG4gIH07XG5cbiAgbG9nQXJndW1lbnRzKC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgY29uc29sZS5sb2coYXJncyk7XG4gIH1cbn1cbiAqIGBgYFxuICogPGltZyBzcmM9XCJtZWRpYTovL2FuZ3VsYXItYm94cGxvdC1jaGFydC1leGFtcGxlLnBuZ1wiIHdpZHRoPVwiODAwcHhcIiAvPlxuICpcbiAqIEBncm91cCBDaGFydHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3Nkay1ib3hwbG90LWNoYXJ0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8Y3Nkay1jaGFydFxuICAgICAgW2NoYXJ0VHlwZV09XCJjaGFydFR5cGVcIlxuICAgICAgW2RhdGFTZXRdPVwiZGF0YVNldFwiXG4gICAgICBbZGF0YU9wdGlvbnNdPVwiZGF0YU9wdGlvbnNcIlxuICAgICAgW2ZpbHRlcnNdPVwiZmlsdGVyc1wiXG4gICAgICBbaGlnaGxpZ2h0c109XCJoaWdobGlnaHRzXCJcbiAgICAgIFtzdHlsZU9wdGlvbnNdPVwic3R5bGVPcHRpb25zXCJcbiAgICAgIFtiZWZvcmVSZW5kZXJdPVwiYmVmb3JlUmVuZGVyXCJcbiAgICAgIChkYXRhUG9pbnRDbGljayk9XCJkYXRhUG9pbnRDbGljay5lbWl0KCRldmVudClcIlxuICAgICAgKGRhdGFQb2ludENvbnRleHRNZW51KT1cImRhdGFQb2ludENvbnRleHRNZW51LmVtaXQoJGV2ZW50KVwiXG4gICAgICAoZGF0YVBvaW50c1NlbGVjdCk9XCJkYXRhUG9pbnRzU2VsZWN0LmVtaXQoJGV2ZW50KVwiXG4gICAgLz5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQm94cGxvdENoYXJ0Q29tcG9uZW50IHtcbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQm94cGxvdENoYXJ0UHJvcHMuZGF0YVNldH1cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGRhdGFTZXQ6IEJveHBsb3RDaGFydFByb3BzWydkYXRhU2V0J107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQm94cGxvdENoYXJ0UHJvcHMuZGF0YU9wdGlvbnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDaGFydFxuICAgKi9cbiAgQElucHV0KClcbiAgZGF0YU9wdGlvbnMhOiBCb3hwbG90Q2hhcnRQcm9wc1snZGF0YU9wdGlvbnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFCb3hwbG90Q2hhcnRQcm9wcy5maWx0ZXJzfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgZmlsdGVyczogQm94cGxvdENoYXJ0UHJvcHNbJ2ZpbHRlcnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFCb3hwbG90Q2hhcnRQcm9wcy5oaWdobGlnaHRzfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgaGlnaGxpZ2h0czogQm94cGxvdENoYXJ0UHJvcHNbJ2hpZ2hsaWdodHMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFCb3hwbG90Q2hhcnRQcm9wcy5zdHlsZU9wdGlvbnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDaGFydFxuICAgKi9cbiAgQElucHV0KClcbiAgc3R5bGVPcHRpb25zOiBCb3hwbG90Q2hhcnRQcm9wc1snc3R5bGVPcHRpb25zJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQm94cGxvdENoYXJ0UHJvcHMub25CZWZvcmVSZW5kZXJ9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBJbnB1dCgpXG4gIGJlZm9yZVJlbmRlcjogQm94cGxvdENoYXJ0UHJvcHNbJ29uQmVmb3JlUmVuZGVyJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQm94cGxvdENoYXJ0UHJvcHMub25EYXRhUG9pbnRDbGlja31cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRhdGFQb2ludENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBBcmd1bWVudHNBc09iamVjdDxCb3hwbG90Q2hhcnRQcm9wc1snb25EYXRhUG9pbnRDbGljayddLCBbJ3BvaW50JywgJ25hdGl2ZUV2ZW50J10+XG4gID4oKTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFCb3hwbG90Q2hhcnRQcm9wcy5vbkRhdGFQb2ludENvbnRleHRNZW51fVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2FsbGJhY2tzXG4gICAqL1xuICBAT3V0cHV0KClcbiAgZGF0YVBvaW50Q29udGV4dE1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyPFxuICAgIEFyZ3VtZW50c0FzT2JqZWN0PEJveHBsb3RDaGFydFByb3BzWydvbkRhdGFQb2ludENvbnRleHRNZW51J10sIFsncG9pbnQnLCAnbmF0aXZlRXZlbnQnXT5cbiAgPigpO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUJveHBsb3RDaGFydFByb3BzLm9uRGF0YVBvaW50c1NlbGVjdGVkfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2FsbGJhY2tzXG4gICAqL1xuICBAT3V0cHV0KClcbiAgZGF0YVBvaW50c1NlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgQXJndW1lbnRzQXNPYmplY3Q8Qm94cGxvdENoYXJ0UHJvcHNbJ29uRGF0YVBvaW50c1NlbGVjdGVkJ10sIFsncG9pbnRzJywgJ25hdGl2ZUV2ZW50J10+XG4gID4oKTtcblxuICAvKiogQGludGVybmFsICovXG4gIHB1YmxpYyBjaGFydFR5cGU6IENoYXJ0VHlwZSA9ICdib3hwbG90Jztcbn1cbiJdfQ==