overview-components 1.0.78 → 1.0.80

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 (231) hide show
  1. package/dist/_virtual/_commonjsHelpers.js +6 -2
  2. package/dist/_virtual/air-datepicker.js +4 -0
  3. package/dist/assets/generated/locales/de.js +70 -72
  4. package/dist/assets/generated/locales/de.js.map +1 -0
  5. package/dist/assets/generated/locales/en.js +70 -72
  6. package/dist/assets/generated/locales/en.js.map +1 -0
  7. package/dist/assets/generated/locales/fr.js +70 -72
  8. package/dist/assets/generated/locales/fr.js.map +1 -0
  9. package/dist/assets/generated/locales/hr.js +70 -72
  10. package/dist/assets/generated/locales/hr.js.map +1 -0
  11. package/dist/assets/generated/locales/it.js +70 -72
  12. package/dist/assets/generated/locales/it.js.map +1 -0
  13. package/dist/assets/generated/locales/pl.js +70 -72
  14. package/dist/assets/generated/locales/pl.js.map +1 -0
  15. package/dist/assets/generated/locales/ro.js +70 -72
  16. package/dist/assets/generated/locales/ro.js.map +1 -0
  17. package/dist/assets/generated/locales/sk.js +70 -72
  18. package/dist/assets/generated/locales/sk.js.map +1 -0
  19. package/dist/assets/generated/locales/sr.js +70 -72
  20. package/dist/assets/generated/locales/sr.js.map +1 -0
  21. package/dist/assets/icons/iconGlyphs.js +678 -679
  22. package/dist/assets/icons/iconGlyphs.js.map +1 -0
  23. package/dist/assets/illustration/delete-illustration.js +96 -0
  24. package/dist/assets/illustration/delete-illustration.js.map +1 -0
  25. package/dist/assets/illustration/no-content.js +167 -0
  26. package/dist/assets/illustration/no-content.js.map +1 -0
  27. package/dist/assets/illustration/no-preview.js +133 -0
  28. package/dist/assets/illustration/no-preview.js.map +1 -0
  29. package/dist/assets/illustration/not-found.js +106 -0
  30. package/dist/assets/illustration/not-found.js.map +1 -0
  31. package/dist/assets/illustration/settings-illustration.js +176 -0
  32. package/dist/assets/illustration/settings-illustration.js.map +1 -0
  33. package/dist/components/components-settings/attachments-tab-settings.js +226 -0
  34. package/dist/components/components-settings/attachments-tab-settings.js.map +1 -0
  35. package/dist/components/components-settings/data-grid-settings.js +318 -0
  36. package/dist/components/components-settings/data-grid-settings.js.map +1 -0
  37. package/dist/components/components-settings/section-tab-settings.js +269 -0
  38. package/dist/components/components-settings/section-tab-settings.js.map +1 -0
  39. package/dist/components/components-settings/tabs-overview-settings.js +439 -0
  40. package/dist/components/components-settings/tabs-overview-settings.js.map +1 -0
  41. package/dist/components/lit-attachments-tab.js +432 -271
  42. package/dist/components/lit-attachments-tab.js.map +1 -0
  43. package/dist/components/lit-badge.js +40 -40
  44. package/dist/components/lit-badge.js.map +1 -0
  45. package/dist/components/lit-case-variables-tab.js +497 -382
  46. package/dist/components/lit-case-variables-tab.js.map +1 -0
  47. package/dist/components/lit-chart.js +406 -378
  48. package/dist/components/lit-chart.js.map +1 -0
  49. package/dist/components/lit-data-grid-tanstack.js +1663 -1150
  50. package/dist/components/lit-data-grid-tanstack.js.map +1 -0
  51. package/dist/components/lit-filter-modal.js +230 -198
  52. package/dist/components/lit-filter-modal.js.map +1 -0
  53. package/dist/components/lit-multiselect-item.js +477 -301
  54. package/dist/components/lit-multiselect-item.js.map +1 -0
  55. package/dist/components/lit-section-tab.js +85 -73
  56. package/dist/components/lit-section-tab.js.map +1 -0
  57. package/dist/components/lit-tabs-overview.js +232 -191
  58. package/dist/components/lit-tabs-overview.js.map +1 -0
  59. package/dist/components/modals/lit-confirm-modal.js +120 -0
  60. package/dist/components/modals/lit-confirm-modal.js.map +1 -0
  61. package/dist/components/modals/lit-delete-modal.js +128 -0
  62. package/dist/components/modals/lit-delete-modal.js.map +1 -0
  63. package/dist/components/react-wrappers/attachments-tab.js +8 -13
  64. package/dist/components/react-wrappers/attachments-tab.js.map +1 -0
  65. package/dist/components/react-wrappers/badge.js +8 -13
  66. package/dist/components/react-wrappers/badge.js.map +1 -0
  67. package/dist/components/react-wrappers/button.js +8 -13
  68. package/dist/components/react-wrappers/button.js.map +1 -0
  69. package/dist/components/react-wrappers/case-variables-tab.js +8 -13
  70. package/dist/components/react-wrappers/case-variables-tab.js.map +1 -0
  71. package/dist/components/react-wrappers/chart.js +8 -13
  72. package/dist/components/react-wrappers/chart.js.map +1 -0
  73. package/dist/components/react-wrappers/data-grid-tanstack.js +8 -13
  74. package/dist/components/react-wrappers/data-grid-tanstack.js.map +1 -0
  75. package/dist/components/react-wrappers/filter-modal.js +8 -13
  76. package/dist/components/react-wrappers/filter-modal.js.map +1 -0
  77. package/dist/components/react-wrappers/progress-bar.js +8 -13
  78. package/dist/components/react-wrappers/progress-bar.js.map +1 -0
  79. package/dist/components/react-wrappers/section-tab.js +8 -13
  80. package/dist/components/react-wrappers/section-tab.js.map +1 -0
  81. package/dist/components/react-wrappers/tabs-overview.js +8 -13
  82. package/dist/components/react-wrappers/tabs-overview.js.map +1 -0
  83. package/dist/data/translations.js +2763 -0
  84. package/dist/data/translations.js.map +1 -0
  85. package/dist/index.d.ts +56 -11
  86. package/dist/index.d.ts.map +1 -1
  87. package/dist/index.js +107 -61
  88. package/dist/index.js.map +1 -0
  89. package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js +285 -231
  90. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +48 -47
  91. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +39 -38
  92. package/dist/node_modules/air-datepicker/air-datepicker.js +1147 -0
  93. package/dist/node_modules/air-datepicker/index.es.js +4 -0
  94. package/dist/schemas/index.js +17 -0
  95. package/dist/schemas/index.js.map +1 -0
  96. package/dist/schemas/lit-attachments-tab-document.schema.js +20 -0
  97. package/dist/schemas/lit-attachments-tab-document.schema.js.map +1 -0
  98. package/dist/schemas/lit-attachments-tab-settings-value.schema.js +15 -0
  99. package/dist/schemas/lit-attachments-tab-settings-value.schema.js.map +1 -0
  100. package/dist/schemas/lit-attachments-tab.schema.js +32 -0
  101. package/dist/schemas/lit-attachments-tab.schema.js.map +1 -0
  102. package/dist/schemas/lit-case-variables-tab-cell.schema.js +43 -0
  103. package/dist/schemas/lit-case-variables-tab-cell.schema.js.map +1 -0
  104. package/dist/schemas/lit-case-variables-tab-rows.schema.js +6 -0
  105. package/dist/schemas/lit-case-variables-tab-rows.schema.js.map +1 -0
  106. package/dist/schemas/lit-case-variables-tab.schema.js +24 -0
  107. package/dist/schemas/lit-case-variables-tab.schema.js.map +1 -0
  108. package/dist/schemas/lit-data-grid-tanstack-column-array.schema.js +6 -0
  109. package/dist/schemas/lit-data-grid-tanstack-column-array.schema.js.map +1 -0
  110. package/dist/schemas/lit-data-grid-tanstack-column-custom-filter-array.schema.js +6 -0
  111. package/dist/schemas/lit-data-grid-tanstack-column-custom-filter-array.schema.js.map +1 -0
  112. package/dist/schemas/lit-data-grid-tanstack-column-custom-filter.schema.js +11 -0
  113. package/dist/schemas/lit-data-grid-tanstack-column-custom-filter.schema.js.map +1 -0
  114. package/dist/schemas/lit-data-grid-tanstack-column.schema.js +55 -0
  115. package/dist/schemas/lit-data-grid-tanstack-column.schema.js.map +1 -0
  116. package/dist/schemas/lit-data-grid-tanstack.schema.js +99 -0
  117. package/dist/schemas/lit-data-grid-tanstack.schema.js.map +1 -0
  118. package/dist/schemas/lit-section-tab-schema.js +24 -0
  119. package/dist/schemas/lit-section-tab-schema.js.map +1 -0
  120. package/dist/schemas/lit-tabs-overview-tab-array.schema.js +6 -0
  121. package/dist/schemas/lit-tabs-overview-tab-array.schema.js.map +1 -0
  122. package/dist/schemas/lit-tabs-overview-tab.schema.js +32 -0
  123. package/dist/schemas/lit-tabs-overview-tab.schema.js.map +1 -0
  124. package/dist/schemas/lit-tabs-overview.schema.js +29 -0
  125. package/dist/schemas/lit-tabs-overview.schema.js.map +1 -0
  126. package/dist/scripts/translate-locales.js +69 -0
  127. package/dist/scripts/translate-locales.js.map +1 -0
  128. package/dist/shared/filter-inputs.js +427 -0
  129. package/dist/shared/filter-inputs.js.map +1 -0
  130. package/dist/shared/lit-button.js +80 -66
  131. package/dist/shared/lit-button.js.map +1 -0
  132. package/dist/shared/lit-case-variables-tab-cell.js +226 -0
  133. package/dist/shared/lit-case-variables-tab-cell.js.map +1 -0
  134. package/dist/shared/lit-checkbox.js +94 -78
  135. package/dist/shared/lit-checkbox.js.map +1 -0
  136. package/dist/shared/lit-custom-popper.js +117 -0
  137. package/dist/shared/lit-custom-popper.js.map +1 -0
  138. package/dist/shared/lit-data-grid-action-buttons-popover.js +295 -0
  139. package/dist/shared/lit-data-grid-action-buttons-popover.js.map +1 -0
  140. package/dist/shared/lit-data-grid-density-popover.js +84 -0
  141. package/dist/shared/lit-data-grid-density-popover.js.map +1 -0
  142. package/dist/shared/lit-data-grid-export-popover.js +68 -0
  143. package/dist/shared/lit-data-grid-export-popover.js.map +1 -0
  144. package/dist/shared/lit-data-grid-operators-popover.js +114 -0
  145. package/dist/shared/lit-data-grid-operators-popover.js.map +1 -0
  146. package/dist/shared/lit-data-grid-row-actions.js +76 -0
  147. package/dist/shared/lit-data-grid-row-actions.js.map +1 -0
  148. package/dist/shared/lit-date-picker.js +606 -0
  149. package/dist/shared/lit-date-picker.js.map +1 -0
  150. package/dist/shared/lit-icon-button.d.ts +1 -1
  151. package/dist/shared/lit-icon-button.d.ts.map +1 -1
  152. package/dist/shared/lit-icon-button.js +105 -0
  153. package/dist/shared/lit-icon-button.js.map +1 -0
  154. package/dist/shared/lit-icon.js +261 -259
  155. package/dist/shared/lit-icon.js.map +1 -0
  156. package/dist/shared/lit-input.js +143 -115
  157. package/dist/shared/lit-input.js.map +1 -0
  158. package/dist/shared/lit-label.js +104 -0
  159. package/dist/shared/lit-label.js.map +1 -0
  160. package/dist/shared/lit-loader.d.ts +1 -1
  161. package/dist/shared/lit-loader.d.ts.map +1 -1
  162. package/dist/shared/lit-loader.js +69 -0
  163. package/dist/shared/lit-loader.js.map +1 -0
  164. package/dist/shared/lit-loading-bar.d.ts +1 -1
  165. package/dist/shared/lit-loading-bar.d.ts.map +1 -1
  166. package/dist/shared/lit-loading-bar.js +127 -0
  167. package/dist/shared/lit-loading-bar.js.map +1 -0
  168. package/dist/shared/lit-menu-item.d.ts +1 -1
  169. package/dist/shared/lit-menu-item.d.ts.map +1 -1
  170. package/dist/shared/lit-menu-item.js +99 -0
  171. package/dist/shared/lit-menu-item.js.map +1 -0
  172. package/dist/shared/lit-menu.js +22 -20
  173. package/dist/shared/lit-menu.js.map +1 -0
  174. package/dist/shared/lit-modal-body.js +22 -0
  175. package/dist/shared/lit-modal-body.js.map +1 -0
  176. package/dist/shared/lit-modal-footer.js +29 -0
  177. package/dist/shared/lit-modal-footer.js.map +1 -0
  178. package/dist/shared/lit-modal-header.js +36 -0
  179. package/dist/shared/lit-modal-header.js.map +1 -0
  180. package/dist/shared/lit-modal.js +112 -71
  181. package/dist/shared/lit-modal.js.map +1 -0
  182. package/dist/shared/lit-overflow-tooltip.js +103 -0
  183. package/dist/shared/lit-overflow-tooltip.js.map +1 -0
  184. package/dist/shared/lit-pill.js +39 -37
  185. package/dist/shared/lit-pill.js.map +1 -0
  186. package/dist/shared/lit-progress-bar.js +33 -35
  187. package/dist/shared/lit-progress-bar.js.map +1 -0
  188. package/dist/shared/lit-responsive-button.js +94 -0
  189. package/dist/shared/lit-responsive-button.js.map +1 -0
  190. package/dist/shared/lit-select-field.js +459 -0
  191. package/dist/shared/lit-select-field.js.map +1 -0
  192. package/dist/shared/lit-select.js +276 -202
  193. package/dist/shared/lit-select.js.map +1 -0
  194. package/dist/shared/lit-settings.js +77 -0
  195. package/dist/shared/lit-settings.js.map +1 -0
  196. package/dist/shared/lit-text-field.d.ts +1 -1
  197. package/dist/shared/lit-text-field.d.ts.map +1 -1
  198. package/dist/shared/lit-text-field.js +222 -0
  199. package/dist/shared/lit-text-field.js.map +1 -0
  200. package/dist/shared/lit-toggle.js +222 -0
  201. package/dist/shared/lit-toggle.js.map +1 -0
  202. package/dist/shared/lit-tooltip.js +113 -84
  203. package/dist/shared/lit-tooltip.js.map +1 -0
  204. package/dist/shared/simple-popper.js +266 -0
  205. package/dist/shared/simple-popper.js.map +1 -0
  206. package/dist/shared/simple-tooltip.js +198 -124
  207. package/dist/shared/simple-tooltip.js.map +1 -0
  208. package/dist/shared/styles/button-shared-styles.js +4 -8
  209. package/dist/shared/styles/button-shared-styles.js.map +1 -0
  210. package/dist/style.css +1 -0
  211. package/dist/styles.js +3 -8
  212. package/dist/styles.js.map +1 -0
  213. package/dist/utils/currency.js +15 -12
  214. package/dist/utils/currency.js.map +1 -0
  215. package/dist/utils/custom-filters.js +80 -46
  216. package/dist/utils/custom-filters.js.map +1 -0
  217. package/dist/utils/date.js +21 -14
  218. package/dist/utils/date.js.map +1 -0
  219. package/dist/utils/getOperatorByType.js +65 -51
  220. package/dist/utils/getOperatorByType.js.map +1 -0
  221. package/dist/utils/getOverviewValue.js +177 -0
  222. package/dist/utils/getOverviewValue.js.map +1 -0
  223. package/dist/utils/localization.js +431 -29
  224. package/dist/utils/localization.js.map +1 -0
  225. package/dist/utils/utils.js +13 -0
  226. package/dist/utils/utils.js.map +1 -0
  227. package/dist/utils/validate-json-schema.js +8 -0
  228. package/dist/utils/validate-json-schema.js.map +1 -0
  229. package/dist/validators/validator.js +7 -0
  230. package/dist/validators/validator.js.map +1 -0
  231. package/package.json +2 -2
@@ -0,0 +1,427 @@
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;
6
+ };
7
+ import { LitElement, html, css } from 'lit';
8
+ import _ from 'lodash';
9
+ import { msg } from '@lit/localize';
10
+ import { customElement, property, state } from 'lit/decorators.js';
11
+ import 'air-datepicker/air-datepicker.css';
12
+ // components
13
+ import './lit-icon.js';
14
+ import './lit-icon-button.js';
15
+ import './lit-select.js';
16
+ import './lit-date-picker.js';
17
+ import './lit-data-grid-operators-popover.js';
18
+ import './lit-input.js';
19
+ import { debounce } from '../utils/utils.js';
20
+ let FilterInputs = class FilterInputs extends LitElement {
21
+ constructor() {
22
+ super();
23
+ this.minFilterCharacters = 0;
24
+ this.server = false;
25
+ this.value = undefined;
26
+ this.operator = undefined;
27
+ this.filterOperators = [];
28
+ this.valueOptions = [];
29
+ this.filterVariant = [];
30
+ this.isClickInside = false;
31
+ this.handleSetOperator = (value, opt) => {
32
+ this.operator = this.filterOperators.find((item) => item.value === value)?.value;
33
+ if (['isEmpty', 'isNotEmpty'].includes(value)) {
34
+ this.value = null;
35
+ this.column?.setFilterValue({ value: this.value, operator: value });
36
+ }
37
+ else {
38
+ if (this.value && !opt?.silent) {
39
+ this.column?.setFilterValue({
40
+ value: this.value,
41
+ operator: this.operator,
42
+ });
43
+ }
44
+ }
45
+ };
46
+ // Create debounced methods with 500ms delay
47
+ this.debouncedSetTextFilter = debounce((value) => {
48
+ this.checkNumberOfCharacters(value, () => {
49
+ this.handleSetFilter(value);
50
+ });
51
+ });
52
+ this.debouncedSetNumberFilter = debounce((value) => {
53
+ this.handleSetFilter(value);
54
+ });
55
+ }
56
+ checkNumberOfCharacters(value, cf) {
57
+ if (!_.isEmpty(value)) {
58
+ if (value.length >= this.minFilterCharacters) {
59
+ cf();
60
+ }
61
+ }
62
+ else {
63
+ cf();
64
+ }
65
+ }
66
+ updated(changedProperties) {
67
+ if (changedProperties.has('column')) {
68
+ if (this.filterVariant === 'select' || this.filterVariant === 'multiselect') {
69
+ if (this.column?.columnDef?.meta.valueOptions || this.server) {
70
+ this.valueOptions = this.column?.columnDef?.meta.valueOptions || [];
71
+ }
72
+ else {
73
+ const sortedUniqueValues = Array.from(this.column?.getFacetedUniqueValues().keys())
74
+ .sort()
75
+ .slice(0, 5000);
76
+ this.valueOptions = sortedUniqueValues.map((value) => ({
77
+ value,
78
+ label: value,
79
+ }));
80
+ }
81
+ }
82
+ }
83
+ }
84
+ handleSetFilter(value) {
85
+ this.value = value;
86
+ if (!_.isEmpty(value)) {
87
+ if (this.server) {
88
+ this.column?.setFilterValue({ value: this.value, operator: this.operator });
89
+ }
90
+ else {
91
+ this.column?.setFilterValue(this.value);
92
+ }
93
+ }
94
+ else {
95
+ this.column?.setFilterValue();
96
+ }
97
+ }
98
+ handleClearFilter() {
99
+ if (this.server) {
100
+ this.operator = this.filterOperators[0].value;
101
+ }
102
+ this.value = null;
103
+ this.column?.setFilterValue();
104
+ }
105
+ handleDateChange(value) {
106
+ if (!_.isEqual(value, this.value)) {
107
+ this.handleSetFilter(value);
108
+ }
109
+ }
110
+ handleStartDateChange(value) {
111
+ this.startDate = value;
112
+ this.handleFilterDateRangeChange();
113
+ }
114
+ handleEndDateChange(value) {
115
+ this.endDate = value;
116
+ this.handleFilterDateRangeChange();
117
+ }
118
+ handleFilterDateRangeChange() {
119
+ if (!this.startDate && !this.endDate) {
120
+ this.handleSetFilter(undefined);
121
+ }
122
+ else {
123
+ this.handleSetFilter({ startDate: this.startDate, endDate: this.endDate });
124
+ }
125
+ }
126
+ handleKeyDown(event) {
127
+ if (event.key === 'Enter') {
128
+ const target = event.target;
129
+ if (target) {
130
+ this.handleSetFilter(target.value);
131
+ this.requestUpdate();
132
+ }
133
+ }
134
+ else if (event.key === 'Tab') {
135
+ // Get all focusable elements within this filter
136
+ const focusableElements = this.getFocusableElements();
137
+ if (focusableElements.length <= 1) {
138
+ // If there's only one or no focusable element, proceed with filter-to-filter navigation
139
+ event.preventDefault();
140
+ this.dispatchEvent(new CustomEvent('filter-tab', {
141
+ bubbles: true,
142
+ composed: true,
143
+ detail: {
144
+ direction: event.shiftKey ? 'backward' : 'forward',
145
+ currentFilter: this,
146
+ },
147
+ }));
148
+ return;
149
+ }
150
+ // If there are multiple elements (like in range filters), handle internal navigation
151
+ const currentElement = event.target;
152
+ const currentIndex = focusableElements.indexOf(currentElement);
153
+ // If Shift+Tab on first element or Tab on last element, move to next/previous filter
154
+ if ((event.shiftKey && currentIndex === 0) ||
155
+ (!event.shiftKey && currentIndex === focusableElements.length - 1)) {
156
+ event.preventDefault();
157
+ this.dispatchEvent(new CustomEvent('filter-tab', {
158
+ bubbles: true,
159
+ composed: true,
160
+ detail: {
161
+ direction: event.shiftKey ? 'backward' : 'forward',
162
+ currentFilter: this,
163
+ },
164
+ }));
165
+ }
166
+ else {
167
+ // Otherwise, just move to the next/previous internal element
168
+ event.preventDefault();
169
+ const nextIndex = event.shiftKey ? currentIndex - 1 : currentIndex + 1;
170
+ focusableElements[nextIndex].focus();
171
+ }
172
+ }
173
+ }
174
+ // Improved getFocusableElements to find all actual focusable elements
175
+ getFocusableElements() {
176
+ const elements = [];
177
+ // Check for regular inputs
178
+ const inputs = this.shadowRoot?.querySelectorAll('lit-input');
179
+ if (inputs) {
180
+ inputs.forEach((input) => elements.push(input));
181
+ }
182
+ // Check for lit-select components
183
+ const selects = this.shadowRoot?.querySelectorAll('lit-select');
184
+ if (selects) {
185
+ selects.forEach((select) => elements.push(select));
186
+ }
187
+ // Check for lit-date-picker components
188
+ const datePickers = this.shadowRoot?.querySelectorAll('lit-date-picker');
189
+ if (datePickers) {
190
+ datePickers.forEach((datePicker) => elements.push(datePicker));
191
+ }
192
+ return elements;
193
+ }
194
+ focus() {
195
+ const firstFocusable = this.shadowRoot?.querySelector('lit-input, lit-select, lit-date-picker');
196
+ firstFocusable?.focus();
197
+ }
198
+ render() {
199
+ if (this.filterVariant === 'numberRange') {
200
+ return this.renderNumberRangeInput();
201
+ }
202
+ else if (this.filterVariant === 'select') {
203
+ return this.renderSelectInput();
204
+ }
205
+ else if (this.filterVariant === 'multiselect') {
206
+ return this.renderSelectInput(true);
207
+ }
208
+ else if (this.filterVariant === 'number') {
209
+ return this.renderNumberInput();
210
+ }
211
+ else if (this.filterVariant === 'currency') {
212
+ return this.renderNumberInput();
213
+ }
214
+ else if (this.filterVariant === 'date') {
215
+ return this.renderDateInput();
216
+ }
217
+ else if (this.filterVariant === 'dateTime') {
218
+ return this.renderDateInput();
219
+ }
220
+ else if (this.filterVariant === 'dateRange') {
221
+ return this.renderDateRangeInput();
222
+ }
223
+ else if (this.filterVariant === 'dateTimeRange') {
224
+ return this.renderDateRangeInput();
225
+ }
226
+ else {
227
+ return this.renderTextInput();
228
+ }
229
+ }
230
+ renderNumberRangeInput() {
231
+ const debouncedSetRangeFilter = debounce((min, max) => {
232
+ this.handleSetFilter([min, max]);
233
+ });
234
+ return html `
235
+ <div class="range">
236
+ <lit-input
237
+ class="range-fields"
238
+ type="number"
239
+ .server="${this.server}"
240
+ .value="${this.value?.[0] || ''}"
241
+ placeholder="Min"
242
+ .onInput=${(val) => {
243
+ const min = val ? Number(val) : undefined;
244
+ const currentMax = this.value?.[1];
245
+ debouncedSetRangeFilter(min, currentMax);
246
+ }}
247
+ .onClear="${() => {
248
+ this.handleClearFilter();
249
+ }}"
250
+ @keydown=${(e) => this.handleKeyDown(e)}
251
+ ></lit-input>
252
+
253
+ <lit-input
254
+ class="range-fields"
255
+ type="number"
256
+ .server="${this.server}"
257
+ .value="${this.value?.[1] || ''}"
258
+ placeholder="Max"
259
+ .onInput=${(val) => {
260
+ const max = val ? Number(val) : undefined;
261
+ const currentMin = this.value?.[0];
262
+ debouncedSetRangeFilter(currentMin, max);
263
+ }}
264
+ .onClear="${() => {
265
+ this.handleClearFilter();
266
+ }}"
267
+ @keydown=${(e) => this.handleKeyDown(e)}
268
+ ></lit-input>
269
+ </div>
270
+ `;
271
+ }
272
+ renderSelectInput(multiselect = false) {
273
+ return html `
274
+ <lit-select
275
+ id=${this.column.id}
276
+ .value="${typeof this.value === 'number'
277
+ ? this.value.toString()
278
+ : this.value || []}"
279
+ .server="${this.server}"
280
+ .options="${this.valueOptions}"
281
+ .onChange="${(selectedValue) => {
282
+ const filterValue = selectedValue.length === 0 ? undefined : selectedValue;
283
+ this.handleSetFilter(filterValue);
284
+ }}"
285
+ .multiple="${multiselect}"
286
+ @keydown=${(e) => this.handleKeyDown(e)}
287
+ .setOperator="${this.handleSetOperator}"
288
+ .operator="${this.operator}"
289
+ .filterOperators="${this.filterOperators}"
290
+ ></lit-select>
291
+ `;
292
+ }
293
+ renderNumberInput() {
294
+ return html `
295
+ <lit-input
296
+ type="number"
297
+ .value="${this.value || ''}"
298
+ .server="${this.server}"
299
+ .onInput=${(val) => this.debouncedSetNumberFilter(val)}
300
+ .onClear="${() => {
301
+ this.handleClearFilter();
302
+ }}"
303
+ @keydown=${(e) => this.handleKeyDown(e)}
304
+ .setOperator="${this.handleSetOperator}"
305
+ .operator="${this.operator}"
306
+ .disabled="${this.server &&
307
+ ['isEmpty', 'isNotEmpty'].includes(this.operator)}"
308
+ .filterOperators="${this.filterOperators}"
309
+ ></lit-input>
310
+ `;
311
+ }
312
+ renderDateInput() {
313
+ return html `
314
+ <lit-date-picker
315
+ class="datePicker"
316
+ .server="${this.server}"
317
+ .pickerVariant=${this.filterVariant || ''}
318
+ .value=${this.value}
319
+ .dateFormat=${this.dateFormat}
320
+ .userLang=${this.userLang}
321
+ .onChange="${(value) => this.handleDateChange(value)}"
322
+ @keydown=${(e) => this.handleKeyDown(e)}
323
+ .setOperator="${this.handleSetOperator}"
324
+ .operator="${this.operator}"
325
+ .disabled="${this.server &&
326
+ ['isEmpty', 'isNotEmpty'].includes(this.operator)}"
327
+ .range="${['fromTo'].includes(this.operator)}"
328
+ .filterOperators="${this.filterOperators}"
329
+ ></lit-date-picker>
330
+ `;
331
+ }
332
+ renderDateRangeInput() {
333
+ return html `
334
+ <div class="range">
335
+ <lit-date-picker
336
+ class="range-fields"
337
+ .server="${this.server}"
338
+ .dateFormat=${this.dateFormat}
339
+ .userLang=${this.userLang}
340
+ placeholder=${msg('Od')}
341
+ .onChange="${(value) => this.handleStartDateChange(value)}"
342
+ @keydown=${(e) => this.handleKeyDown(e)}
343
+ ></lit-date-picker>
344
+
345
+ <lit-date-picker
346
+ class="range-fields"
347
+ .server="${this.server}"
348
+ .dateFormat=${this.dateFormat}
349
+ .userLang=${this.userLang}
350
+ placeholder=${msg('Do')}
351
+ .onChange="${(value) => this.handleEndDateChange(value)}"
352
+ @keydown=${(e) => this.handleKeyDown(e)}
353
+ ></lit-date-picker>
354
+ </div>
355
+ `;
356
+ }
357
+ renderTextInput() {
358
+ return html `
359
+ <lit-input
360
+ .value="${this.value}"
361
+ .server="${this.server}"
362
+ .onInput=${(val) => this.debouncedSetTextFilter(val)}
363
+ .onClear="${() => {
364
+ this.handleClearFilter();
365
+ }}"
366
+ @keydown=${(e) => this.handleKeyDown(e)}
367
+ .setOperator="${this.handleSetOperator}"
368
+ .operator="${this.operator}"
369
+ .disabled="${this.server &&
370
+ ['isEmpty', 'isNotEmpty'].includes(this.operator)}"
371
+ .filterOperators="${this.filterOperators}"
372
+ ></lit-input>
373
+ `;
374
+ }
375
+ };
376
+ FilterInputs.styles = css `
377
+ .range {
378
+ display: flex;
379
+ gap: 0.3125rem;
380
+ }
381
+
382
+ .range-fields {
383
+ width: 100%;
384
+ min-width: 70px;
385
+ }
386
+ `;
387
+ __decorate([
388
+ property({ type: Object })
389
+ ], FilterInputs.prototype, "column", void 0);
390
+ __decorate([
391
+ property({ type: String })
392
+ ], FilterInputs.prototype, "dateFormat", void 0);
393
+ __decorate([
394
+ property({ type: String })
395
+ ], FilterInputs.prototype, "userLang", void 0);
396
+ __decorate([
397
+ property({ type: Number })
398
+ ], FilterInputs.prototype, "minFilterCharacters", void 0);
399
+ __decorate([
400
+ property({ type: Boolean })
401
+ ], FilterInputs.prototype, "server", void 0);
402
+ __decorate([
403
+ property({ type: Object })
404
+ ], FilterInputs.prototype, "value", void 0);
405
+ __decorate([
406
+ property({ type: String })
407
+ ], FilterInputs.prototype, "operator", void 0);
408
+ __decorate([
409
+ property({ type: Array })
410
+ ], FilterInputs.prototype, "filterOperators", void 0);
411
+ __decorate([
412
+ property({ type: Array })
413
+ ], FilterInputs.prototype, "valueOptions", void 0);
414
+ __decorate([
415
+ state()
416
+ ], FilterInputs.prototype, "startDate", void 0);
417
+ __decorate([
418
+ state()
419
+ ], FilterInputs.prototype, "endDate", void 0);
420
+ __decorate([
421
+ state()
422
+ ], FilterInputs.prototype, "filterVariant", void 0);
423
+ FilterInputs = __decorate([
424
+ customElement('filter-inputs')
425
+ ], FilterInputs);
426
+ export { FilterInputs };
427
+ //# sourceMappingURL=filter-inputs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-inputs.js","sourceRoot":"","sources":["../../src/shared/filter-inputs.ts"],"names":[],"mappings":"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"}
@@ -1,50 +1,65 @@
1
- import "../node_modules/@lit/reactive-element/reactive-element.js";
2
- import { html as r } from "../node_modules/lit-html/lit-html.js";
3
- import { LitElement as d } from "../node_modules/lit-element/lit-element.js";
4
- import { customElement as u } from "../node_modules/@lit/reactive-element/decorators/custom-element.js";
5
- import { property as e } from "../node_modules/@lit/reactive-element/decorators/property.js";
6
- import m from "./styles/button-shared-styles.js";
7
- import { css as h } from "../node_modules/@lit/reactive-element/css-tag.js";
8
- var b = Object.defineProperty, f = Object.getOwnPropertyDescriptor, i = (s, n, a, l) => {
9
- for (var o = l > 1 ? void 0 : l ? f(n, a) : n, p = s.length - 1, c; p >= 0; p--)
10
- (c = s[p]) && (o = (l ? c(n, a, o) : c(o)) || o);
11
- return l && o && b(n, a, o), o;
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;
12
6
  };
13
- let t = class extends d {
14
- constructor() {
15
- super(...arguments), this.variant = "contained", this.size = "medium", this.label = "Button", this.fullWidth = !1, this.disabled = !1, this.count = void 0, this.active = !1, this.isLoading = !1;
16
- }
17
- render() {
18
- const s = `button--${this.size} button--${this.variant} ${this.fullWidth ? "button--fullWidth" : ""} ${this.active ? "active" : ""}`, n = this.count !== void 0 && this.count !== null && this.count >= 0;
19
- return r`
20
- <button ?disabled=${this.disabled} @click=${this.onClick} class=${s}>
7
+ import { LitElement, html, css } from 'lit';
8
+ import { customElement, property } from 'lit/decorators.js';
9
+ // styles
10
+ import buttonStyles from './styles/button-shared-styles.js';
11
+ // elements
12
+ import './lit-icon.js';
13
+ import './lit-pill.js';
14
+ import './lit-loader.js';
15
+ let LitButton = class LitButton extends LitElement {
16
+ constructor() {
17
+ super(...arguments);
18
+ this.variant = 'contained';
19
+ this.size = 'medium';
20
+ this.label = 'Button';
21
+ this.fullWidth = false;
22
+ this.disabled = false;
23
+ this.count = undefined;
24
+ this.active = false;
25
+ this.isLoading = false;
26
+ }
27
+ render() {
28
+ const classes = `button--${this.size} button--${this.variant} ${this.fullWidth ? 'button--fullWidth' : ''} ${this.active ? 'active' : ''}`;
29
+ const hasCount = this.count !== undefined && this.count !== null && this.count >= 0;
30
+ return html `
31
+ <button ?disabled=${this.disabled} @click=${this.onClick} class=${classes}>
21
32
  <div class="button--content">
22
- ${this.isLoading ? r` <lit-loader size="small" class="button--loader"></lit-loader> ` : null}
33
+ ${this.isLoading
34
+ ? html ` <lit-loader size="small" class="button--loader"></lit-loader> `
35
+ : null}
23
36
 
24
37
  <div
25
38
  class="button-inner"
26
- style="visibility: ${this.isLoading ? "hidden" : "visible"};
39
+ style="visibility: ${this.isLoading ? 'hidden' : 'visible'};
27
40
  "
28
41
  >
29
42
  <slot name="start-icon">
30
- ${this.icon ? r`<lit-icon
43
+ ${this.icon
44
+ ? html `<lit-icon
31
45
  class="start-icon"
32
46
  size="1.25rem"
33
47
  icon="${this.icon}"
34
- ></lit-icon>` : ""}
48
+ ></lit-icon>`
49
+ : ''}
35
50
  </slot>
36
51
  ${this.label}
37
- ${n ? r`<lit-pill count=${this.count}></lit-pill>` : ""}
52
+ ${hasCount ? html `<lit-pill count=${this.count}></lit-pill>` : ''}
38
53
  </div>
39
54
  </div>
40
55
  </button>
41
56
  `;
42
- }
57
+ }
43
58
  };
44
- t.styles = [
45
- // styles,
46
- m,
47
- h`
59
+ LitButton.styles = [
60
+ // styles,
61
+ buttonStyles,
62
+ css `
48
63
  /* Basic button styles */
49
64
  button {
50
65
  line-height: 1.5rem;
@@ -102,41 +117,40 @@ t.styles = [
102
117
  gap: 0.5rem;
103
118
  visibility: visible;
104
119
  }
105
- `
120
+ `,
106
121
  ];
107
- i([
108
- e({ type: String })
109
- ], t.prototype, "variant", 2);
110
- i([
111
- e({ type: String })
112
- ], t.prototype, "size", 2);
113
- i([
114
- e({ type: String })
115
- ], t.prototype, "label", 2);
116
- i([
117
- e({ type: String })
118
- ], t.prototype, "icon", 2);
119
- i([
120
- e({ type: Boolean })
121
- ], t.prototype, "fullWidth", 2);
122
- i([
123
- e({ type: Boolean })
124
- ], t.prototype, "disabled", 2);
125
- i([
126
- e({ type: Number })
127
- ], t.prototype, "count", 2);
128
- i([
129
- e({ type: Function })
130
- ], t.prototype, "onClick", 2);
131
- i([
132
- e({ type: Boolean })
133
- ], t.prototype, "active", 2);
134
- i([
135
- e({ type: Boolean })
136
- ], t.prototype, "isLoading", 2);
137
- t = i([
138
- u("lit-button")
139
- ], t);
140
- export {
141
- t as LitButton
142
- };
122
+ __decorate([
123
+ property({ type: String })
124
+ ], LitButton.prototype, "variant", void 0);
125
+ __decorate([
126
+ property({ type: String })
127
+ ], LitButton.prototype, "size", void 0);
128
+ __decorate([
129
+ property({ type: String })
130
+ ], LitButton.prototype, "label", void 0);
131
+ __decorate([
132
+ property({ type: String })
133
+ ], LitButton.prototype, "icon", void 0);
134
+ __decorate([
135
+ property({ type: Boolean })
136
+ ], LitButton.prototype, "fullWidth", void 0);
137
+ __decorate([
138
+ property({ type: Boolean })
139
+ ], LitButton.prototype, "disabled", void 0);
140
+ __decorate([
141
+ property({ type: Number })
142
+ ], LitButton.prototype, "count", void 0);
143
+ __decorate([
144
+ property({ type: Function })
145
+ ], LitButton.prototype, "onClick", void 0);
146
+ __decorate([
147
+ property({ type: Boolean })
148
+ ], LitButton.prototype, "active", void 0);
149
+ __decorate([
150
+ property({ type: Boolean })
151
+ ], LitButton.prototype, "isLoading", void 0);
152
+ LitButton = __decorate([
153
+ customElement('lit-button')
154
+ ], LitButton);
155
+ export { LitButton };
156
+ //# sourceMappingURL=lit-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lit-button.js","sourceRoot":"","sources":["../../src/shared/lit-button.ts"],"names":[],"mappings":"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"}