overview-components 1.0.91 → 1.0.93

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 (228) hide show
  1. package/dist/assets/generated/locales/de.js +70 -72
  2. package/dist/assets/generated/locales/de.js.map +1 -0
  3. package/dist/assets/generated/locales/en.js +70 -72
  4. package/dist/assets/generated/locales/en.js.map +1 -0
  5. package/dist/assets/generated/locales/fr.js +70 -72
  6. package/dist/assets/generated/locales/fr.js.map +1 -0
  7. package/dist/assets/generated/locales/hr.js +70 -72
  8. package/dist/assets/generated/locales/hr.js.map +1 -0
  9. package/dist/assets/generated/locales/it.js +70 -72
  10. package/dist/assets/generated/locales/it.js.map +1 -0
  11. package/dist/assets/generated/locales/pl.js +70 -72
  12. package/dist/assets/generated/locales/pl.js.map +1 -0
  13. package/dist/assets/generated/locales/ro.js +70 -72
  14. package/dist/assets/generated/locales/ro.js.map +1 -0
  15. package/dist/assets/generated/locales/sk.js +70 -72
  16. package/dist/assets/generated/locales/sk.js.map +1 -0
  17. package/dist/assets/generated/locales/sr.js +70 -72
  18. package/dist/assets/generated/locales/sr.js.map +1 -0
  19. package/dist/assets/icons/iconGlyphs.js +679 -0
  20. package/dist/assets/icons/iconGlyphs.js.map +1 -0
  21. package/dist/assets/illustration/delete-illustration.js +96 -0
  22. package/dist/assets/illustration/delete-illustration.js.map +1 -0
  23. package/dist/assets/illustration/no-content.js +167 -0
  24. package/dist/assets/illustration/no-content.js.map +1 -0
  25. package/dist/assets/illustration/no-preview.js +133 -0
  26. package/dist/assets/illustration/no-preview.js.map +1 -0
  27. package/dist/assets/illustration/not-found.js +106 -0
  28. package/dist/assets/illustration/not-found.js.map +1 -0
  29. package/dist/assets/illustration/settings-illustration.js +176 -0
  30. package/dist/assets/illustration/settings-illustration.js.map +1 -0
  31. package/dist/components/components-settings/attachments-tab-settings.js +226 -0
  32. package/dist/components/components-settings/attachments-tab-settings.js.map +1 -0
  33. package/dist/components/components-settings/data-grid-settings.js +318 -0
  34. package/dist/components/components-settings/data-grid-settings.js.map +1 -0
  35. package/dist/components/components-settings/section-tab-settings.js +269 -0
  36. package/dist/components/components-settings/section-tab-settings.js.map +1 -0
  37. package/dist/components/components-settings/tabs-overview-settings.js +439 -0
  38. package/dist/components/components-settings/tabs-overview-settings.js.map +1 -0
  39. package/dist/components/lit-attachments-tab.js +432 -267
  40. package/dist/components/lit-attachments-tab.js.map +1 -0
  41. package/dist/components/lit-badge.js +40 -37
  42. package/dist/components/lit-badge.js.map +1 -0
  43. package/dist/components/lit-case-variables-tab.js +497 -378
  44. package/dist/components/lit-case-variables-tab.js.map +1 -0
  45. package/dist/components/lit-chart.js +406 -375
  46. package/dist/components/lit-chart.js.map +1 -0
  47. package/dist/components/lit-data-grid-tanstack.js +1663 -1145
  48. package/dist/components/lit-data-grid-tanstack.js.map +1 -0
  49. package/dist/components/lit-filter-modal.js +230 -194
  50. package/dist/components/lit-filter-modal.js.map +1 -0
  51. package/dist/components/lit-multiselect-item.js +477 -297
  52. package/dist/components/lit-multiselect-item.js.map +1 -0
  53. package/dist/components/lit-section-tab.js +85 -69
  54. package/dist/components/lit-section-tab.js.map +1 -0
  55. package/dist/components/lit-tabs-overview.js +232 -187
  56. package/dist/components/lit-tabs-overview.js.map +1 -0
  57. package/dist/components/modals/lit-confirm-modal.js +120 -0
  58. package/dist/components/modals/lit-confirm-modal.js.map +1 -0
  59. package/dist/components/modals/lit-delete-modal.js +128 -0
  60. package/dist/components/modals/lit-delete-modal.js.map +1 -0
  61. package/dist/components/react-wrappers/attachments-tab.js +8 -13
  62. package/dist/components/react-wrappers/attachments-tab.js.map +1 -0
  63. package/dist/components/react-wrappers/badge.js +8 -13
  64. package/dist/components/react-wrappers/badge.js.map +1 -0
  65. package/dist/components/react-wrappers/button.js +8 -13
  66. package/dist/components/react-wrappers/button.js.map +1 -0
  67. package/dist/components/react-wrappers/case-variables-tab.js +8 -13
  68. package/dist/components/react-wrappers/case-variables-tab.js.map +1 -0
  69. package/dist/components/react-wrappers/chart.js +8 -13
  70. package/dist/components/react-wrappers/chart.js.map +1 -0
  71. package/dist/components/react-wrappers/data-grid-tanstack.js +8 -13
  72. package/dist/components/react-wrappers/data-grid-tanstack.js.map +1 -0
  73. package/dist/components/react-wrappers/filter-modal.js +8 -13
  74. package/dist/components/react-wrappers/filter-modal.js.map +1 -0
  75. package/dist/components/react-wrappers/progress-bar.js +8 -13
  76. package/dist/components/react-wrappers/progress-bar.js.map +1 -0
  77. package/dist/components/react-wrappers/section-tab.js +8 -13
  78. package/dist/components/react-wrappers/section-tab.js.map +1 -0
  79. package/dist/components/react-wrappers/tabs-overview.js +8 -13
  80. package/dist/components/react-wrappers/tabs-overview.js.map +1 -0
  81. package/dist/data/translations.js +2763 -0
  82. package/dist/data/translations.js.map +1 -0
  83. package/dist/index.js +43 -42
  84. package/dist/index.js.map +1 -0
  85. package/dist/schemas/index.js +17 -0
  86. package/dist/schemas/index.js.map +1 -0
  87. package/dist/schemas/lit-attachments-tab-document.schema.js +20 -0
  88. package/dist/schemas/lit-attachments-tab-document.schema.js.map +1 -0
  89. package/dist/schemas/lit-attachments-tab-settings-value.schema.js +15 -0
  90. package/dist/schemas/lit-attachments-tab-settings-value.schema.js.map +1 -0
  91. package/dist/schemas/lit-attachments-tab.schema.js +32 -0
  92. package/dist/schemas/lit-attachments-tab.schema.js.map +1 -0
  93. package/dist/schemas/lit-case-variables-tab-cell.schema.js +43 -0
  94. package/dist/schemas/lit-case-variables-tab-cell.schema.js.map +1 -0
  95. package/dist/schemas/lit-case-variables-tab-rows.schema.js +6 -0
  96. package/dist/schemas/lit-case-variables-tab-rows.schema.js.map +1 -0
  97. package/dist/schemas/lit-case-variables-tab.schema.js +24 -0
  98. package/dist/schemas/lit-case-variables-tab.schema.js.map +1 -0
  99. package/dist/schemas/lit-data-grid-tanstack-column-array.schema.js +6 -0
  100. package/dist/schemas/lit-data-grid-tanstack-column-array.schema.js.map +1 -0
  101. package/dist/schemas/lit-data-grid-tanstack-column-custom-filter-array.schema.js +6 -0
  102. package/dist/schemas/lit-data-grid-tanstack-column-custom-filter-array.schema.js.map +1 -0
  103. package/dist/schemas/lit-data-grid-tanstack-column-custom-filter.schema.js +11 -0
  104. package/dist/schemas/lit-data-grid-tanstack-column-custom-filter.schema.js.map +1 -0
  105. package/dist/schemas/lit-data-grid-tanstack-column.schema.js +55 -0
  106. package/dist/schemas/lit-data-grid-tanstack-column.schema.js.map +1 -0
  107. package/dist/schemas/lit-data-grid-tanstack.schema.js +99 -0
  108. package/dist/schemas/lit-data-grid-tanstack.schema.js.map +1 -0
  109. package/dist/schemas/lit-section-tab-schema.js +24 -0
  110. package/dist/schemas/lit-section-tab-schema.js.map +1 -0
  111. package/dist/schemas/lit-tabs-overview-tab-array.schema.js +6 -0
  112. package/dist/schemas/lit-tabs-overview-tab-array.schema.js.map +1 -0
  113. package/dist/schemas/lit-tabs-overview-tab.schema.js +32 -0
  114. package/dist/schemas/lit-tabs-overview-tab.schema.js.map +1 -0
  115. package/dist/schemas/lit-tabs-overview.schema.js +29 -0
  116. package/dist/schemas/lit-tabs-overview.schema.js.map +1 -0
  117. package/dist/scripts/translate-locales.js +69 -0
  118. package/dist/scripts/translate-locales.js.map +1 -0
  119. package/dist/shared/filter-inputs.js +427 -0
  120. package/dist/shared/filter-inputs.js.map +1 -0
  121. package/dist/shared/lit-button.js +80 -63
  122. package/dist/shared/lit-button.js.map +1 -0
  123. package/dist/shared/lit-case-variables-tab-cell.js +226 -0
  124. package/dist/shared/lit-case-variables-tab-cell.js.map +1 -0
  125. package/dist/shared/lit-checkbox.js +171 -0
  126. package/dist/shared/lit-checkbox.js.map +1 -0
  127. package/dist/shared/lit-custom-popper.js +117 -0
  128. package/dist/shared/lit-custom-popper.js.map +1 -0
  129. package/dist/shared/lit-data-grid-action-buttons-popover.js +295 -0
  130. package/dist/shared/lit-data-grid-action-buttons-popover.js.map +1 -0
  131. package/dist/shared/lit-data-grid-density-popover.js +84 -0
  132. package/dist/shared/lit-data-grid-density-popover.js.map +1 -0
  133. package/dist/shared/lit-data-grid-export-popover.js +68 -0
  134. package/dist/shared/lit-data-grid-export-popover.js.map +1 -0
  135. package/dist/shared/lit-data-grid-operators-popover.js +114 -0
  136. package/dist/shared/lit-data-grid-operators-popover.js.map +1 -0
  137. package/dist/shared/lit-data-grid-row-actions.js +76 -0
  138. package/dist/shared/lit-data-grid-row-actions.js.map +1 -0
  139. package/dist/shared/lit-date-picker.js +606 -0
  140. package/dist/shared/lit-date-picker.js.map +1 -0
  141. package/dist/shared/lit-icon-button.js +105 -0
  142. package/dist/shared/lit-icon-button.js.map +1 -0
  143. package/dist/shared/lit-icon.js +284 -0
  144. package/dist/shared/lit-icon.js.map +1 -0
  145. package/dist/shared/lit-input.js +239 -0
  146. package/dist/shared/lit-input.js.map +1 -0
  147. package/dist/shared/lit-label.js +104 -0
  148. package/dist/shared/lit-label.js.map +1 -0
  149. package/dist/shared/lit-loader.js +69 -0
  150. package/dist/shared/lit-loader.js.map +1 -0
  151. package/dist/shared/lit-loading-bar.js +127 -0
  152. package/dist/shared/lit-loading-bar.js.map +1 -0
  153. package/dist/shared/lit-menu-item.js +99 -0
  154. package/dist/shared/lit-menu-item.js.map +1 -0
  155. package/dist/shared/lit-menu.js +42 -0
  156. package/dist/shared/lit-menu.js.map +1 -0
  157. package/dist/shared/lit-modal-body.js +22 -0
  158. package/dist/shared/lit-modal-body.js.map +1 -0
  159. package/dist/shared/lit-modal-footer.js +29 -0
  160. package/dist/shared/lit-modal-footer.js.map +1 -0
  161. package/dist/shared/lit-modal-header.js +36 -0
  162. package/dist/shared/lit-modal-header.js.map +1 -0
  163. package/dist/shared/lit-modal.js +169 -0
  164. package/dist/shared/lit-modal.js.map +1 -0
  165. package/dist/shared/lit-overflow-tooltip.js +103 -0
  166. package/dist/shared/lit-overflow-tooltip.js.map +1 -0
  167. package/dist/shared/lit-pill.js +88 -0
  168. package/dist/shared/lit-pill.js.map +1 -0
  169. package/dist/shared/lit-progress-bar.js +33 -32
  170. package/dist/shared/lit-progress-bar.js.map +1 -0
  171. package/dist/shared/lit-responsive-button.js +94 -0
  172. package/dist/shared/lit-responsive-button.js.map +1 -0
  173. package/dist/shared/lit-select-field.js +459 -0
  174. package/dist/shared/lit-select-field.js.map +1 -0
  175. package/dist/shared/lit-select.js +413 -0
  176. package/dist/shared/lit-select.js.map +1 -0
  177. package/dist/shared/lit-settings.js +77 -0
  178. package/dist/shared/lit-settings.js.map +1 -0
  179. package/dist/shared/lit-text-field.js +222 -0
  180. package/dist/shared/lit-text-field.js.map +1 -0
  181. package/dist/shared/lit-toggle.js +222 -0
  182. package/dist/shared/lit-toggle.js.map +1 -0
  183. package/dist/shared/lit-tooltip.js +166 -0
  184. package/dist/shared/lit-tooltip.js.map +1 -0
  185. package/dist/shared/simple-popper.js +266 -0
  186. package/dist/shared/simple-popper.js.map +1 -0
  187. package/dist/shared/simple-tooltip.js +198 -122
  188. package/dist/shared/simple-tooltip.js.map +1 -0
  189. package/dist/shared/styles/button-shared-styles.js +4 -5
  190. package/dist/shared/styles/button-shared-styles.js.map +1 -0
  191. package/dist/styles.js +169 -0
  192. package/dist/styles.js.map +1 -0
  193. package/dist/utils/currency.js +15 -12
  194. package/dist/utils/currency.js.map +1 -0
  195. package/dist/utils/custom-filters.js +80 -45
  196. package/dist/utils/custom-filters.js.map +1 -0
  197. package/dist/utils/date.js +21 -13
  198. package/dist/utils/date.js.map +1 -0
  199. package/dist/utils/getOperatorByType.js +65 -50
  200. package/dist/utils/getOperatorByType.js.map +1 -0
  201. package/dist/utils/getOverviewValue.js +177 -0
  202. package/dist/utils/getOverviewValue.js.map +1 -0
  203. package/dist/utils/localization.js +431 -29
  204. package/dist/utils/localization.js.map +1 -0
  205. package/dist/utils/utils.js +13 -0
  206. package/dist/utils/utils.js.map +1 -0
  207. package/dist/utils/validate-json-schema.js +8 -0
  208. package/dist/utils/validate-json-schema.js.map +1 -0
  209. package/dist/validators/validator.js +7 -0
  210. package/dist/validators/validator.js.map +1 -0
  211. package/package.json +74 -76
  212. package/dist/libs/xlsx.mini.min.js +0 -10
  213. package/dist/node_modules/@lit/reactive-element/css-tag.js +0 -42
  214. package/dist/node_modules/@lit/reactive-element/decorators/base.js +0 -9
  215. package/dist/node_modules/@lit/reactive-element/decorators/custom-element.js +0 -13
  216. package/dist/node_modules/@lit/reactive-element/decorators/property.js +0 -37
  217. package/dist/node_modules/@lit/reactive-element/decorators/query.js +0 -20
  218. package/dist/node_modules/@lit/reactive-element/decorators/state.js +0 -12
  219. package/dist/node_modules/@lit/reactive-element/reactive-element.js +0 -249
  220. package/dist/node_modules/lit-html/async-directive.js +0 -69
  221. package/dist/node_modules/lit-html/directive-helpers.js +0 -45
  222. package/dist/node_modules/lit-html/directive.js +0 -27
  223. package/dist/node_modules/lit-html/directives/ref.js +0 -42
  224. package/dist/node_modules/lit-html/directives/repeat.js +0 -61
  225. package/dist/node_modules/lit-html/directives/style-map.js +0 -36
  226. package/dist/node_modules/lit-html/directives/unsafe-html.js +0 -27
  227. package/dist/node_modules/lit-html/lit-html.js +0 -242
  228. package/dist/vite.svg +0 -1
@@ -1,392 +1,423 @@
1
- import { customElement as w } from "../node_modules/@lit/reactive-element/decorators/custom-element.js";
2
- import { property as b } from "../node_modules/@lit/reactive-element/decorators/property.js";
3
- import { LitElement as v, html as y, css as x } from "lit";
4
- import { Chart as p, registerables as D } from "chart.js";
5
- var k = Object.defineProperty, S = Object.getOwnPropertyDescriptor, u = (a, r, n, e) => {
6
- for (var t = e > 1 ? void 0 : e ? S(r, n) : r, s = a.length - 1, o; s >= 0; s--)
7
- (o = a[s]) && (t = (e ? o(r, n, t) : o(t)) || t);
8
- return e && t && k(r, n, t), t;
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
9
6
  };
10
- p.register(...D);
11
- let c = class extends v {
12
- constructor() {
13
- super(...arguments), this.type = "bar", this.data = { labels: [], datasets: [], title: "" }, this.isLoading = !1, this.chart = null;
14
- }
15
- updated(a) {
16
- (a.has("type") || a.has("data")) && this.renderChart();
17
- }
18
- generateColors(a) {
19
- return Array.from(
20
- { length: a },
21
- () => `rgba(${Math.floor(Math.random() * 255)}, ${Math.floor(Math.random() * 255)}, ${Math.floor(Math.random() * 255)}, 0.6)`
22
- );
23
- }
24
- renderChart() {
25
- var r;
26
- const a = (r = this.shadowRoot) == null ? void 0 : r.querySelector("canvas");
27
- a && (this.type === "bar" || this.type === "line" ? this.renderBarAndLineChart(a) : this.type === "bubble" ? this.renderBubbleChart(a) : this.type === "pie" || this.type === "doughnut" ? this.renderPieAndDoughnutChart(a) : this.type === "gantt" && this.renderGanttChart(a));
28
- }
29
- renderGanttChart(a) {
30
- var f;
31
- this.chart && this.chart.destroy();
32
- const r = this.generateColors(((f = this.data.datasets[0]) == null ? void 0 : f.data.length) || 0), n = this.data.datasets.map((l, i) => ({
33
- label: l.label || `Dataset ${i + 1}`,
34
- data: l.data.map((d) => {
35
- const h = new Date(d.x[0]), m = new Date(d.x[1]);
36
- return {
37
- x: [
38
- isNaN(h.getTime()) ? Date.now() : h.getTime(),
39
- isNaN(m.getTime()) ? Date.now() : m.getTime()
40
- ],
41
- y: d.y
42
- };
43
- }),
44
- backgroundColor: r,
45
- borderColor: r,
46
- borderWidth: 1,
47
- barThickness: 16,
48
- borderRadius: 4,
49
- borderSkipped: !1
50
- })), e = this.data.datasets.flatMap(
51
- (l) => l.data.flatMap((i) => {
52
- var d, h;
53
- return [
54
- new Date((d = i == null ? void 0 : i.x) == null ? void 0 : d[0]).getTime(),
55
- new Date((h = i == null ? void 0 : i.x) == null ? void 0 : h[1]).getTime()
56
- ];
57
- })
58
- ), t = Math.min(...e), s = Math.max(...e), C = (s - t) / 20;
59
- this.chart = new p(a, {
60
- type: "bar",
61
- data: {
62
- datasets: n
63
- },
64
- options: {
65
- indexAxis: "y",
66
- responsive: !0,
67
- maintainAspectRatio: !1,
68
- scales: {
69
- x: {
70
- type: "linear",
71
- ticks: {
72
- stepSize: C,
73
- // 30 dní v milisekundách
74
- autoSkip: !1,
75
- callback: (l) => new Date(l).toLocaleDateString("sk-SK", {
76
- day: "2-digit",
77
- month: "2-digit",
78
- year: "numeric"
79
- })
80
- },
81
- min: t,
82
- max: s
83
- },
84
- y: {
85
- type: "category"
86
- }
87
- },
88
- plugins: {
89
- tooltip: {
90
- callbacks: {
91
- label: function(l) {
92
- const i = new Date(l.raw.x[0]).toLocaleDateString(
93
- "sk-SK",
94
- {
95
- day: "2-digit",
96
- month: "2-digit",
97
- year: "numeric"
98
- }
99
- ), d = new Date(l.raw.x[1]).toLocaleDateString("sk-SK", {
100
- day: "2-digit",
101
- month: "2-digit",
102
- year: "numeric"
103
- });
104
- return `  Začiatok: ${i}, Koniec: ${d}`;
105
- }
106
- },
107
- bodyFont: {
108
- size: 13,
109
- weight: 400
110
- },
111
- displayColors: !0,
112
- usePointStyle: !0,
113
- backgroundColor: "black",
114
- cornerRadius: 8
115
- },
116
- legend: {
117
- display: !1
118
- },
119
- title: {
120
- display: !0,
121
- text: this.data.title,
122
- // Text, ktorý sa zobrazí nad grafom
123
- font: {
124
- size: 17,
125
- weight: 500
126
- },
127
- color: "var(--text-primary, #111827)",
128
- padding: {
129
- top: 10,
130
- bottom: 20
131
- }
132
- }
133
- },
134
- onHover: (l, i) => {
135
- var h;
136
- const d = (h = l.native) == null ? void 0 : h.target;
137
- d.style.cursor = i.length ? "pointer" : "default";
7
+ import { customElement, property } from 'lit/decorators.js';
8
+ import { html, css, LitElement } from 'lit';
9
+ import { Chart, registerables } from 'chart.js';
10
+ import '../shared/lit-loader.js';
11
+ Chart.register(...registerables);
12
+ let LitChart = class LitChart extends LitElement {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.type = 'bar';
16
+ this.data = { labels: [], datasets: [], title: '' };
17
+ this.isLoading = false;
18
+ this.chart = null;
19
+ }
20
+ updated(changedProperties) {
21
+ if (changedProperties.has('type') || changedProperties.has('data')) {
22
+ this.renderChart();
138
23
  }
139
- }
140
- });
141
- }
142
- renderPieAndDoughnutChart(a) {
143
- var e;
144
- this.chart && this.chart.destroy();
145
- const r = this.generateColors(((e = this.data.datasets[0]) == null ? void 0 : e.data.length) || 0), n = this.data.datasets.map((t) => ({
146
- ...t,
147
- backgroundColor: r,
148
- borderColor: r,
149
- borderWidth: 2,
150
- pointBorderWidth: 2
151
- }));
152
- this.chart = new p(a, {
153
- type: this.type,
154
- data: {
155
- labels: this.data.labels,
156
- datasets: n
157
- },
158
- options: {
159
- responsive: !0,
160
- maintainAspectRatio: !1,
161
- plugins: {
162
- legend: {
163
- position: "top",
164
- labels: {
165
- usePointStyle: !0,
166
- pointStyle: "circle",
167
- font: {
168
- size: 13,
169
- weight: 500
170
- }
171
- }
172
- },
173
- tooltip: {
174
- callbacks: {
175
- title: () => "",
176
- label: (t) => (t.raw, `  ${t.label}: ${t.raw}`)
177
- },
178
- bodyFont: {
179
- size: 13,
180
- weight: 400
181
- },
182
- displayColors: !0,
183
- usePointStyle: !0,
184
- // Použitie kruhového symbolu
185
- xAlign: "center",
186
- yAlign: "bottom",
187
- padding: 16,
188
- backgroundColor: "black",
189
- cornerRadius: 8
190
- },
191
- title: {
192
- display: !0,
193
- text: this.data.title,
194
- // Text, ktorý sa zobrazí nad grafom
195
- font: {
196
- size: 17,
197
- weight: 500
198
- },
199
- color: "var(--text-primary, #111827)",
200
- padding: {
201
- top: 10,
202
- bottom: 20
203
- }
204
- }
205
- },
206
- ...this.type === "doughnut" && {
207
- cutout: "70%"
208
- },
209
- onHover: (t, s) => {
210
- var g;
211
- const o = (g = t.native) == null ? void 0 : g.target;
212
- s.length ? o.style.cursor = "pointer" : o.style.cursor = "default";
24
+ }
25
+ generateColors(numColors) {
26
+ return Array.from({ length: numColors }, () => `rgba(${Math.floor(Math.random() * 255)}, ${Math.floor(Math.random() * 255)}, ${Math.floor(Math.random() * 255)}, 0.6)`);
27
+ }
28
+ renderChart() {
29
+ const canvas = this.shadowRoot?.querySelector('canvas');
30
+ if (!canvas)
31
+ return;
32
+ if (this.type === 'bar' || this.type === 'line') {
33
+ this.renderBarAndLineChart(canvas);
213
34
  }
214
- }
215
- });
216
- }
217
- renderBubbleChart(a) {
218
- this.chart && this.chart.destroy();
219
- const r = this.generateColors(this.data.datasets.length), n = this.data.datasets.map((e, t) => ({
220
- ...e,
221
- backgroundColor: r[t],
222
- borderColor: r[t],
223
- borderWidth: 1,
224
- hoverRadius: 10,
225
- pointBorderWidth: 2
226
- }));
227
- this.chart = new p(a, {
228
- type: "bubble",
229
- data: { datasets: n },
230
- options: {
231
- responsive: !0,
232
- scales: {
233
- x: { beginAtZero: !0 },
234
- y: { beginAtZero: !0 }
235
- },
236
- plugins: {
237
- legend: {
238
- position: "top",
239
- labels: {
240
- usePointStyle: !0,
241
- // Použitie kruhového symbolu
242
- pointStyle: "circle"
243
- // Špecifický tvar pre symbol v legende
244
- }
245
- },
246
- tooltip: {
247
- callbacks: {
248
- label: (e) => {
249
- const t = e.raw;
250
- return `  x: ${t.x}, y: ${t.y}, r: ${t.r}`;
251
- }
35
+ else if (this.type === 'bubble') {
36
+ this.renderBubbleChart(canvas);
37
+ }
38
+ else if (this.type === 'pie' || this.type === 'doughnut') {
39
+ this.renderPieAndDoughnutChart(canvas);
40
+ }
41
+ else if (this.type === 'gantt') {
42
+ this.renderGanttChart(canvas);
43
+ }
44
+ }
45
+ renderGanttChart(canvas) {
46
+ if (this.chart)
47
+ this.chart.destroy();
48
+ const colors = this.generateColors(this.data.datasets[0]?.data.length || 0);
49
+ const datasetsWithColors = this.data.datasets.map((dataset, index) => ({
50
+ label: dataset.label || `Dataset ${index + 1}`,
51
+ data: dataset.data.map((entry) => {
52
+ const startDate = new Date(entry.x[0]);
53
+ const endDate = new Date(entry.x[1]);
54
+ return {
55
+ x: [
56
+ isNaN(startDate.getTime()) ? Date.now() : startDate.getTime(),
57
+ isNaN(endDate.getTime()) ? Date.now() : endDate.getTime(),
58
+ ],
59
+ y: entry.y,
60
+ };
61
+ }),
62
+ backgroundColor: colors,
63
+ borderColor: colors,
64
+ borderWidth: 1,
65
+ barThickness: 16,
66
+ borderRadius: 4,
67
+ borderSkipped: false,
68
+ }));
69
+ const allDates = this.data.datasets.flatMap((dataset) => dataset.data.flatMap((entry) => [
70
+ new Date(entry?.x?.[0]).getTime(),
71
+ new Date(entry?.x?.[1]).getTime(),
72
+ ]));
73
+ const minDate = Math.min(...allDates);
74
+ const maxDate = Math.max(...allDates);
75
+ // Vypočítanie stepSize pre 20 hodnôt na osi X
76
+ const dateDifference = maxDate - minDate;
77
+ const desiredTicks = 20; // Počet požadovaných hodnôt na osi X
78
+ const stepSize = dateDifference / desiredTicks; // Vypočítanie stepSize
79
+ this.chart = new Chart(canvas, {
80
+ type: 'bar',
81
+ data: {
82
+ datasets: datasetsWithColors,
252
83
  },
253
- bodyFont: {
254
- size: 13,
255
- weight: 400
84
+ options: {
85
+ indexAxis: 'y',
86
+ responsive: true,
87
+ maintainAspectRatio: false,
88
+ scales: {
89
+ x: {
90
+ type: 'linear',
91
+ ticks: {
92
+ stepSize: stepSize, // 30 dní v milisekundách
93
+ autoSkip: false,
94
+ callback: (value) => {
95
+ return new Date(value).toLocaleDateString('sk-SK', {
96
+ day: '2-digit',
97
+ month: '2-digit',
98
+ year: 'numeric',
99
+ });
100
+ },
101
+ },
102
+ min: minDate,
103
+ max: maxDate,
104
+ },
105
+ y: {
106
+ type: 'category',
107
+ },
108
+ },
109
+ plugins: {
110
+ tooltip: {
111
+ callbacks: {
112
+ label: function (context) {
113
+ const start = new Date(context.raw.x[0]).toLocaleDateString('sk-SK', {
114
+ day: '2-digit',
115
+ month: '2-digit',
116
+ year: 'numeric',
117
+ });
118
+ const end = new Date(context.raw.x[1]).toLocaleDateString('sk-SK', {
119
+ day: '2-digit',
120
+ month: '2-digit',
121
+ year: 'numeric',
122
+ });
123
+ return `\u00A0\u00A0Začiatok: ${start}, Koniec: ${end}`;
124
+ },
125
+ },
126
+ bodyFont: {
127
+ size: 13,
128
+ weight: 400,
129
+ },
130
+ displayColors: true,
131
+ usePointStyle: true,
132
+ backgroundColor: 'black',
133
+ cornerRadius: 8,
134
+ },
135
+ legend: {
136
+ display: false,
137
+ },
138
+ title: {
139
+ display: true,
140
+ text: this.data.title, // Text, ktorý sa zobrazí nad grafom
141
+ font: {
142
+ size: 17,
143
+ weight: 500,
144
+ },
145
+ color: 'var(--text-primary, #111827)',
146
+ padding: {
147
+ top: 10,
148
+ bottom: 20,
149
+ },
150
+ },
151
+ },
152
+ onHover: (event, chartElement) => {
153
+ const target = event.native?.target;
154
+ target.style.cursor = chartElement.length ? 'pointer' : 'default';
155
+ },
256
156
  },
257
- displayColors: !0,
258
- usePointStyle: !0,
259
- // Použitie kruhového symbolu
260
- xAlign: "center",
261
- yAlign: "bottom",
262
- padding: 16,
263
- backgroundColor: "black",
264
- cornerRadius: 8
265
- },
266
- title: {
267
- display: !0,
268
- text: this.data.title,
269
- // Text, ktorý sa zobrazí nad grafom
270
- font: {
271
- size: 17,
272
- weight: 500
157
+ });
158
+ }
159
+ renderPieAndDoughnutChart(canvas) {
160
+ if (this.chart)
161
+ this.chart.destroy();
162
+ const colors = this.generateColors(this.data.datasets[0]?.data.length || 0);
163
+ const datasetsWithColors = this.data.datasets.map((dataset) => ({
164
+ ...dataset,
165
+ backgroundColor: colors,
166
+ borderColor: colors,
167
+ borderWidth: 2,
168
+ pointBorderWidth: 2,
169
+ }));
170
+ this.chart = new Chart(canvas, {
171
+ type: this.type,
172
+ data: {
173
+ labels: this.data.labels,
174
+ datasets: datasetsWithColors,
273
175
  },
274
- color: "var(--text-primary, #111827)",
275
- padding: {
276
- top: 10,
277
- bottom: 20
278
- }
279
- }
280
- },
281
- onHover: (e, t) => {
282
- var o;
283
- const s = (o = e.native) == null ? void 0 : o.target;
284
- t.length ? s.style.cursor = "pointer" : s.style.cursor = "default";
285
- }
286
- }
287
- });
288
- }
289
- renderBarAndLineChart(a) {
290
- this.chart && this.chart.destroy();
291
- const r = this.generateColors(this.data.datasets.length), n = this.data.datasets.map((e, t) => ({
292
- ...e,
293
- backgroundColor: r[t],
294
- borderColor: r[t],
295
- borderWidth: 2,
296
- ...this.type === "bar" ? { borderRadius: 4 } : {},
297
- ...this.type === "line" ? {
298
- pointStyle: "circle",
299
- pointRadius: 3,
300
- pointBorderWidth: 2,
301
- pointBorderColor: r[t]
302
- } : {}
303
- }));
304
- this.chart = new p(a, {
305
- type: this.type,
306
- data: {
307
- labels: this.data.labels,
308
- datasets: n
309
- },
310
- options: {
311
- responsive: !0,
312
- maintainAspectRatio: !1,
313
- plugins: {
314
- legend: {
315
- position: "top",
316
- labels: {
317
- usePointStyle: !0,
318
- // Použitie kruhového symbolu
319
- pointStyle: "circle"
320
- // Špecifický tvar pre symbol v legende
321
- }
322
- },
323
- tooltip: {
324
- callbacks: {
325
- title: () => "",
326
- label: (e) => (e.raw, `  ${e.label}: ${e.raw}`)
176
+ options: {
177
+ responsive: true,
178
+ maintainAspectRatio: false,
179
+ plugins: {
180
+ legend: {
181
+ position: 'top',
182
+ labels: {
183
+ usePointStyle: true,
184
+ pointStyle: 'circle',
185
+ font: {
186
+ size: 13,
187
+ weight: 500,
188
+ },
189
+ },
190
+ },
191
+ tooltip: {
192
+ callbacks: {
193
+ title: () => '',
194
+ label: (tooltipItem) => {
195
+ const value = tooltipItem.raw || 0;
196
+ return `\u00A0\u00A0${tooltipItem.label}: ${tooltipItem.raw}`;
197
+ },
198
+ },
199
+ bodyFont: {
200
+ size: 13,
201
+ weight: 400,
202
+ },
203
+ displayColors: true,
204
+ usePointStyle: true, // Použitie kruhového symbolu
205
+ xAlign: 'center',
206
+ yAlign: 'bottom',
207
+ padding: 16,
208
+ backgroundColor: 'black',
209
+ cornerRadius: 8,
210
+ },
211
+ title: {
212
+ display: true,
213
+ text: this.data.title, // Text, ktorý sa zobrazí nad grafom
214
+ font: {
215
+ size: 17,
216
+ weight: 500,
217
+ },
218
+ color: 'var(--text-primary, #111827)',
219
+ padding: {
220
+ top: 10,
221
+ bottom: 20,
222
+ },
223
+ },
224
+ },
225
+ ...(this.type === 'doughnut' && {
226
+ cutout: '70%',
227
+ }),
228
+ onHover: (event, chartElement) => {
229
+ const target = event.native?.target;
230
+ if (chartElement.length) {
231
+ target.style.cursor = 'pointer'; // Zmena kurzora na ruku
232
+ }
233
+ else {
234
+ target.style.cursor = 'default';
235
+ }
236
+ },
327
237
  },
328
- bodyFont: {
329
- size: 13,
330
- weight: 400
238
+ });
239
+ }
240
+ renderBubbleChart(canvas) {
241
+ if (this.chart)
242
+ this.chart.destroy();
243
+ const colors = this.generateColors(this.data.datasets.length);
244
+ const datasets = this.data.datasets.map((dataset, index) => ({
245
+ ...dataset,
246
+ backgroundColor: colors[index],
247
+ borderColor: colors[index],
248
+ borderWidth: 1,
249
+ hoverRadius: 10,
250
+ pointBorderWidth: 2,
251
+ }));
252
+ this.chart = new Chart(canvas, {
253
+ type: 'bubble',
254
+ data: { datasets },
255
+ options: {
256
+ responsive: true,
257
+ scales: {
258
+ x: { beginAtZero: true },
259
+ y: { beginAtZero: true },
260
+ },
261
+ plugins: {
262
+ legend: {
263
+ position: 'top',
264
+ labels: {
265
+ usePointStyle: true, // Použitie kruhového symbolu
266
+ pointStyle: 'circle', // Špecifický tvar pre symbol v legende
267
+ },
268
+ },
269
+ tooltip: {
270
+ callbacks: {
271
+ label: (tooltipItem) => {
272
+ const dataPoint = tooltipItem.raw;
273
+ return `\u00A0\u00A0x: ${dataPoint.x}, y: ${dataPoint.y}, r: ${dataPoint.r}`;
274
+ },
275
+ },
276
+ bodyFont: {
277
+ size: 13,
278
+ weight: 400,
279
+ },
280
+ displayColors: true,
281
+ usePointStyle: true, // Použitie kruhového symbolu
282
+ xAlign: 'center',
283
+ yAlign: 'bottom',
284
+ padding: 16,
285
+ backgroundColor: 'black',
286
+ cornerRadius: 8,
287
+ },
288
+ title: {
289
+ display: true,
290
+ text: this.data.title, // Text, ktorý sa zobrazí nad grafom
291
+ font: {
292
+ size: 17,
293
+ weight: 500,
294
+ },
295
+ color: 'var(--text-primary, #111827)',
296
+ padding: {
297
+ top: 10,
298
+ bottom: 20,
299
+ },
300
+ },
301
+ },
302
+ onHover: (event, chartElement) => {
303
+ const target = event.native?.target;
304
+ if (chartElement.length) {
305
+ target.style.cursor = 'pointer'; // Zmena kurzora na ruku
306
+ }
307
+ else {
308
+ target.style.cursor = 'default';
309
+ }
310
+ },
331
311
  },
332
- displayColors: !0,
333
- usePointStyle: !0,
334
- // Použitie kruhového symbolu
335
- xAlign: "center",
336
- yAlign: "bottom",
337
- padding: 16,
338
- backgroundColor: "black",
339
- cornerRadius: 8
340
- },
341
- title: {
342
- display: !0,
343
- text: this.data.title,
344
- // Text, ktorý sa zobrazí nad grafom
345
- font: {
346
- size: 17,
347
- weight: 500
312
+ });
313
+ }
314
+ renderBarAndLineChart(canvas) {
315
+ if (this.chart)
316
+ this.chart.destroy();
317
+ const colors = this.generateColors(this.data.datasets.length);
318
+ const datasetsWithColors = this.data.datasets.map((dataset, index) => ({
319
+ ...dataset,
320
+ backgroundColor: colors[index],
321
+ borderColor: colors[index],
322
+ borderWidth: 2,
323
+ ...(this.type === 'bar' ? { borderRadius: 4 } : {}),
324
+ ...(this.type === 'line'
325
+ ? {
326
+ pointStyle: 'circle',
327
+ pointRadius: 3,
328
+ pointBorderWidth: 2,
329
+ pointBorderColor: colors[index],
330
+ }
331
+ : {}),
332
+ }));
333
+ this.chart = new Chart(canvas, {
334
+ type: this.type,
335
+ data: {
336
+ labels: this.data.labels,
337
+ datasets: datasetsWithColors,
348
338
  },
349
- color: "var(--text-primary, #111827)",
350
- padding: {
351
- top: 10,
352
- bottom: 20
353
- }
354
- }
355
- },
356
- onHover: (e, t) => {
357
- var o;
358
- const s = (o = e.native) == null ? void 0 : o.target;
359
- t.length ? s.style.cursor = "pointer" : s.style.cursor = "default";
360
- }
361
- }
362
- });
363
- }
364
- render() {
365
- return y`${this.isLoading ? y`<lit-loader></lit-loader>` : y`<canvas></canvas>`}`;
366
- }
339
+ options: {
340
+ responsive: true,
341
+ maintainAspectRatio: false,
342
+ plugins: {
343
+ legend: {
344
+ position: 'top',
345
+ labels: {
346
+ usePointStyle: true, // Použitie kruhového symbolu
347
+ pointStyle: 'circle', // Špecifický tvar pre symbol v legende
348
+ },
349
+ },
350
+ tooltip: {
351
+ callbacks: {
352
+ title: () => '',
353
+ label: (tooltipItem) => {
354
+ const value = tooltipItem.raw || 0;
355
+ return `\u00A0\u00A0${tooltipItem.label}: ${tooltipItem.raw}`;
356
+ },
357
+ },
358
+ bodyFont: {
359
+ size: 13,
360
+ weight: 400,
361
+ },
362
+ displayColors: true,
363
+ usePointStyle: true, // Použitie kruhového symbolu
364
+ xAlign: 'center',
365
+ yAlign: 'bottom',
366
+ padding: 16,
367
+ backgroundColor: 'black',
368
+ cornerRadius: 8,
369
+ },
370
+ title: {
371
+ display: true,
372
+ text: this.data.title, // Text, ktorý sa zobrazí nad grafom
373
+ font: {
374
+ size: 17,
375
+ weight: 500,
376
+ },
377
+ color: 'var(--text-primary, #111827)',
378
+ padding: {
379
+ top: 10,
380
+ bottom: 20,
381
+ },
382
+ },
383
+ },
384
+ onHover: (event, chartElement) => {
385
+ const target = event.native?.target;
386
+ if (chartElement.length) {
387
+ target.style.cursor = 'pointer'; // Zmena kurzora na ruku
388
+ }
389
+ else {
390
+ target.style.cursor = 'default';
391
+ }
392
+ },
393
+ },
394
+ });
395
+ }
396
+ render() {
397
+ return html `${this.isLoading ? html `<lit-loader></lit-loader>` : html `<canvas></canvas>`}`;
398
+ }
367
399
  };
368
- c.styles = [
369
- x`
400
+ LitChart.styles = [
401
+ css `
370
402
  canvas {
371
403
  width: 100%;
372
404
  height: 100%;
373
405
  font-family: 'Inter', sans-serif;
374
406
  margin: 0 auto;
375
407
  }
376
- `
408
+ `,
377
409
  ];
378
- u([
379
- b({ type: String })
380
- ], c.prototype, "type", 2);
381
- u([
382
- b({ type: Array })
383
- ], c.prototype, "data", 2);
384
- u([
385
- b({ type: Boolean })
386
- ], c.prototype, "isLoading", 2);
387
- c = u([
388
- w("lit-chart")
389
- ], c);
390
- export {
391
- c as LitChart
392
- };
410
+ __decorate([
411
+ property({ type: String })
412
+ ], LitChart.prototype, "type", void 0);
413
+ __decorate([
414
+ property({ type: Array })
415
+ ], LitChart.prototype, "data", void 0);
416
+ __decorate([
417
+ property({ type: Boolean })
418
+ ], LitChart.prototype, "isLoading", void 0);
419
+ LitChart = __decorate([
420
+ customElement('lit-chart')
421
+ ], LitChart);
422
+ export { LitChart };
423
+ //# sourceMappingURL=lit-chart.js.map