@addev-be/ui 2.4.2 → 2.4.4

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 (251) hide show
  1. package/assets/icons/arrow-down-1-9.svg +1 -1
  2. package/assets/icons/arrow-down-a-z.svg +1 -1
  3. package/assets/icons/arrow-up-z-a.svg +1 -1
  4. package/assets/icons/check.svg +1 -1
  5. package/assets/icons/circle-check.svg +1 -1
  6. package/assets/icons/down.svg +1 -1
  7. package/assets/icons/filter-full.svg +1 -1
  8. package/assets/icons/filter.svg +1 -1
  9. package/assets/icons/hashtag.svg +1 -1
  10. package/assets/icons/image-slash.svg +1 -1
  11. package/assets/icons/left.svg +1 -1
  12. package/assets/icons/magnifier.svg +1 -1
  13. package/assets/icons/phone.svg +1 -1
  14. package/assets/icons/right.svg +1 -1
  15. package/assets/icons/sort-calendar-ascending.svg +5 -5
  16. package/assets/icons/spinner-third.svg +1 -1
  17. package/assets/icons/table-columns.svg +1 -1
  18. package/assets/icons/table-footer-slash.svg +4 -4
  19. package/assets/icons/table-footer.svg +3 -3
  20. package/assets/icons/table.svg +1 -1
  21. package/assets/icons/up.svg +1 -1
  22. package/assets/icons/user-tie.svg +1 -1
  23. package/assets/icons/x-bar.svg +3 -3
  24. package/dist/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.d.ts +14 -0
  25. package/dist/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.js +77 -0
  26. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.d.ts +22 -0
  27. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.js +105 -0
  28. package/dist/components/data/AdvancedRequestDataGrid/helpers/index.d.ts +2 -0
  29. package/dist/components/data/AdvancedRequestDataGrid/helpers/index.js +18 -0
  30. package/dist/components/data/AdvancedRequestDataGrid/index.d.ts +2 -0
  31. package/dist/components/data/AdvancedRequestDataGrid/index.js +215 -0
  32. package/dist/components/data/AdvancedRequestDataGrid/types.d.ts +21 -0
  33. package/dist/components/data/AdvancedRequestDataGrid/types.js +2 -0
  34. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.d.ts +10 -0
  35. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.js +173 -0
  36. package/dist/components/data/DataGrid/DataGridEditableCell.d.ts +2 -0
  37. package/dist/components/data/DataGrid/DataGridEditableCell.js +27 -0
  38. package/dist/components/data/DataGrid/FilterValuesScroller.d.ts +13 -0
  39. package/dist/components/data/DataGrid/FilterValuesScroller.js +73 -0
  40. package/dist/components/data/DataGrid/VirtualScroller.d.ts +11 -0
  41. package/dist/components/data/DataGrid/VirtualScroller.js +41 -0
  42. package/dist/components/data/DataGrid/helpers/advancedRequests.d.ts +12 -0
  43. package/dist/components/data/DataGrid/helpers/advancedRequests.js +53 -0
  44. package/dist/components/data/DataGrid/helpers/columns.d.ts +2 -2
  45. package/dist/components/data/DataGrid/helpers/columns.js +17 -9
  46. package/dist/components/data/DataGrid/helpers.d.ts +28 -0
  47. package/dist/components/data/DataGrid/helpers.js +436 -0
  48. package/dist/components/data/SmartQueryDataGrid/helpers/columns.d.ts +20 -0
  49. package/dist/components/data/SmartQueryDataGrid/helpers/columns.js +160 -0
  50. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.d.ts +5 -0
  51. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.js +41 -0
  52. package/dist/components/data/SmartQueryDataGrid/helpers/index.d.ts +2 -0
  53. package/dist/components/data/SmartQueryDataGrid/helpers/index.js +18 -0
  54. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.d.ts +3 -0
  55. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.js +15 -0
  56. package/dist/components/data/SmartQueryDataGrid/hooks.d.ts +9 -0
  57. package/dist/components/data/SmartQueryDataGrid/hooks.js +63 -0
  58. package/dist/components/data/SmartQueryDataGrid/index.d.ts +12 -0
  59. package/dist/components/data/SmartQueryDataGrid/index.js +242 -0
  60. package/dist/components/data/SmartQueryDataGrid/types.d.ts +22 -0
  61. package/dist/components/data/SmartQueryDataGrid/types.js +2 -0
  62. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.d.ts +2 -1
  63. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.js +2 -3
  64. package/dist/components/forms/Form/InputWithLabel.d.ts +2 -0
  65. package/dist/components/forms/Form/InputWithLabel.js +10 -0
  66. package/dist/components/forms/Form/types.d.ts +7 -0
  67. package/dist/components/forms/Form/types.js +2 -0
  68. package/dist/components/search/QuickSearchBar.js +3 -1
  69. package/dist/config/types.d.ts +11 -0
  70. package/dist/config/types.js +2 -0
  71. package/dist/helpers/react.d.ts +2 -0
  72. package/dist/helpers/react.js +8 -0
  73. package/dist/helpers/styled/index.d.ts +1 -0
  74. package/dist/helpers/styled/index.js +17 -0
  75. package/dist/services/index.js +17 -7
  76. package/dist/services/requests/userPermissions.d.ts +4 -0
  77. package/dist/services/requests/userPermissions.js +20 -0
  78. package/eslint.config.js +3 -3
  79. package/package.json +2 -2
  80. package/src/Icons.tsx +138 -138
  81. package/src/components/auth/LoginForm.tsx +86 -86
  82. package/src/components/auth/LoginPage.tsx +32 -32
  83. package/src/components/auth/PasswordRecoveryForm.tsx +53 -53
  84. package/src/components/auth/PasswordResetForm.tsx +112 -112
  85. package/src/components/auth/styles.ts +14 -14
  86. package/src/components/data/DataGrid/DataGridCell.tsx +81 -81
  87. package/src/components/data/DataGrid/DataGridColumnsModal/helpers.ts +9 -9
  88. package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +59 -59
  89. package/src/components/data/DataGrid/DataGridColumnsModal/index.tsx +182 -182
  90. package/src/components/data/DataGrid/DataGridColumnsModal/styles.ts +104 -104
  91. package/src/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.tsx +37 -37
  92. package/src/components/data/DataGrid/DataGridEditableCell/DateEditableCell.tsx +38 -38
  93. package/src/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.tsx +71 -71
  94. package/src/components/data/DataGrid/DataGridEditableCell/TextEditableCell.tsx +37 -37
  95. package/src/components/data/DataGrid/DataGridEditableCell/index.tsx +106 -106
  96. package/src/components/data/DataGrid/DataGridEditableCell/styles.ts +35 -35
  97. package/src/components/data/DataGrid/DataGridEditableCell/types.ts +18 -18
  98. package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +129 -129
  99. package/src/components/data/DataGrid/DataGridFilterMenu/helpers.ts +23 -23
  100. package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +81 -81
  101. package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +370 -370
  102. package/src/components/data/DataGrid/DataGridFilterMenu/styles.ts +97 -97
  103. package/src/components/data/DataGrid/DataGridFooter.tsx +45 -45
  104. package/src/components/data/DataGrid/DataGridHeader.tsx +74 -74
  105. package/src/components/data/DataGrid/DataGridHeaderCell.tsx +112 -112
  106. package/src/components/data/DataGrid/DataGridRowTemplate.tsx +83 -83
  107. package/src/components/data/DataGrid/DataGridToolbar.tsx +134 -134
  108. package/src/components/data/DataGrid/FilterModalContent/index.tsx +137 -137
  109. package/src/components/data/DataGrid/FilterModalContent/styles.ts +22 -22
  110. package/src/components/data/DataGrid/constants.ts +6 -6
  111. package/src/components/data/DataGrid/helpers/columns.tsx +456 -452
  112. package/src/components/data/DataGrid/helpers/filters.ts +287 -287
  113. package/src/components/data/DataGrid/helpers/index.ts +2 -2
  114. package/src/components/data/DataGrid/hooks/index.ts +29 -29
  115. package/src/components/data/DataGrid/hooks/useDataGrid.tsx +383 -383
  116. package/src/components/data/DataGrid/hooks/useDataGridChangedRows.ts +97 -97
  117. package/src/components/data/DataGrid/hooks/useDataGridCopy.ts +174 -174
  118. package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +48 -48
  119. package/src/components/data/DataGrid/hooks/useRefreshModal.tsx +48 -48
  120. package/src/components/data/DataGrid/index.tsx +111 -111
  121. package/src/components/data/DataGrid/styles.ts +430 -430
  122. package/src/components/data/DataGrid/types.ts +380 -380
  123. package/src/components/data/SqlRequestDataGrid/helpers/columns.tsx +526 -526
  124. package/src/components/data/SqlRequestDataGrid/helpers/index.ts +2 -2
  125. package/src/components/data/SqlRequestDataGrid/helpers/rows.ts +24 -24
  126. package/src/components/data/SqlRequestDataGrid/helpers/sqlRequests.ts +16 -16
  127. package/src/components/data/SqlRequestDataGrid/index.tsx +417 -417
  128. package/src/components/data/SqlRequestDataGrid/styles.ts +15 -15
  129. package/src/components/data/SqlRequestDataGrid/types.ts +74 -74
  130. package/src/components/data/SqlRequestForeignList/index.tsx +254 -254
  131. package/src/components/data/SqlRequestForeignList/styles.ts +43 -43
  132. package/src/components/data/SqlRequestForeignList/types.ts +32 -32
  133. package/src/components/data/SqlRequestGrid/filters/FiltersSidebar.tsx +108 -108
  134. package/src/components/data/SqlRequestGrid/filters/styles.ts +88 -88
  135. package/src/components/data/SqlRequestGrid/helpers/index.ts +1 -1
  136. package/src/components/data/SqlRequestGrid/helpers/sqlRequests.ts +16 -16
  137. package/src/components/data/SqlRequestGrid/index.tsx +304 -304
  138. package/src/components/data/SqlRequestGrid/styles.ts +20 -20
  139. package/src/components/data/SqlRequestGrid/types.ts +73 -73
  140. package/src/components/data/VirtualScroller/hooks.ts +71 -71
  141. package/src/components/data/VirtualScroller/index.tsx +89 -89
  142. package/src/components/data/VirtualScroller/styles.ts +57 -57
  143. package/src/components/data/VirtualScroller/types.ts +10 -10
  144. package/src/components/forms/AutoTextArea.tsx +48 -48
  145. package/src/components/forms/Button.tsx +132 -132
  146. package/src/components/forms/Form/Checkbox.tsx +12 -12
  147. package/src/components/forms/Form/CustomSelect.tsx +86 -86
  148. package/src/components/forms/Form/FormGroup.tsx +31 -31
  149. package/src/components/forms/Form/Input.tsx +16 -16
  150. package/src/components/forms/Form/Row.tsx +32 -32
  151. package/src/components/forms/Form/Select.tsx +82 -82
  152. package/src/components/forms/Form/TextArea.tsx +17 -17
  153. package/src/components/forms/Form/index.tsx +48 -48
  154. package/src/components/forms/Form/styles.ts +184 -184
  155. package/src/components/forms/IconButton.tsx +61 -61
  156. package/src/components/forms/IndeterminateCheckbox.tsx +46 -46
  157. package/src/components/forms/NumberInput.tsx +53 -53
  158. package/src/components/forms/Select.tsx +34 -34
  159. package/src/components/forms/VerticalLabel.tsx +20 -20
  160. package/src/components/forms/styles.ts +42 -42
  161. package/src/components/layout/Columns.ts +28 -28
  162. package/src/components/layout/Dropdown/index.tsx +113 -113
  163. package/src/components/layout/Dropdown/styles.ts +53 -53
  164. package/src/components/layout/Flexbox.ts +21 -21
  165. package/src/components/layout/Grid/index.tsx +8 -8
  166. package/src/components/layout/Grid/styles.ts +34 -34
  167. package/src/components/layout/Loading/index.tsx +29 -29
  168. package/src/components/layout/Loading/styles.ts +29 -29
  169. package/src/components/layout/Masonry/index.tsx +29 -29
  170. package/src/components/layout/Masonry/styles.ts +20 -20
  171. package/src/components/layout/Modal/index.tsx +51 -51
  172. package/src/components/layout/Modal/styles.ts +125 -125
  173. package/src/components/search/HighlightedText.tsx +41 -41
  174. package/src/components/search/QuickSearchBar.tsx +102 -99
  175. package/src/components/search/QuickSearchResults.tsx +86 -86
  176. package/src/components/search/styles.ts +96 -96
  177. package/src/components/search/types.ts +29 -29
  178. package/src/components/ui/Avatar/index.tsx +54 -54
  179. package/src/components/ui/Avatar/styles.ts +61 -61
  180. package/src/components/ui/Card/index.tsx +14 -14
  181. package/src/components/ui/Card/styles.ts +37 -37
  182. package/src/components/ui/ContextMenu/index.tsx +79 -79
  183. package/src/components/ui/ContextMenu/styles.ts +119 -119
  184. package/src/components/ui/Ellipsis.tsx +33 -33
  185. package/src/components/ui/Label.tsx +93 -93
  186. package/src/components/ui/Message/index.tsx +57 -57
  187. package/src/components/ui/Message/styles.ts +44 -44
  188. package/src/components/ui/TabsView/TabsList.tsx +44 -44
  189. package/src/components/ui/TabsView/TabsView.tsx +38 -38
  190. package/src/components/ui/TabsView/index.ts +3 -3
  191. package/src/components/ui/TabsView/styles.ts +76 -76
  192. package/src/components/ui/TabsView/types.ts +15 -15
  193. package/src/config/index.ts +10 -10
  194. package/src/helpers/components.ts +9 -9
  195. package/src/helpers/dates.ts +17 -17
  196. package/src/helpers/getScrollbarSize.ts +14 -14
  197. package/src/helpers/numbers.ts +63 -63
  198. package/src/helpers/responsive.ts +83 -83
  199. package/src/helpers/styled/space.ts +114 -114
  200. package/src/helpers/styled/typography.ts +25 -25
  201. package/src/helpers/text.ts +13 -13
  202. package/src/helpers/types.ts +9 -9
  203. package/src/hooks/useContainerMediaQuery.ts +7 -7
  204. package/src/hooks/useElementSize.ts +24 -24
  205. package/src/hooks/useMediaQuery.ts +9 -9
  206. package/src/hooks/useMediaQueryForWidth.ts +35 -35
  207. package/src/hooks/useMutableState.ts +25 -25
  208. package/src/hooks/useShowArchived.ts +28 -28
  209. package/src/hooks/useWindowSize.ts +20 -20
  210. package/src/index.ts +102 -102
  211. package/src/providers/AuthenticationProvider/helpers.ts +3 -3
  212. package/src/providers/AuthenticationProvider/index.tsx +303 -303
  213. package/src/providers/LoadingProvider/index.tsx +47 -47
  214. package/src/providers/PortalsProvider/index.tsx +54 -54
  215. package/src/providers/PortalsProvider/styles.ts +31 -31
  216. package/src/providers/SettingsProvider/index.tsx +70 -70
  217. package/src/providers/ThemeProvider/defaultTheme.ts +470 -470
  218. package/src/providers/ThemeProvider/helpers.ts +84 -84
  219. package/src/providers/ThemeProvider/index.ts +66 -66
  220. package/src/providers/ThemeProvider/types.ts +134 -134
  221. package/src/providers/ToastProvider/index.tsx +93 -93
  222. package/src/providers/TrackingProvider/hooks.ts +14 -14
  223. package/src/providers/TrackingProvider/index.tsx +71 -71
  224. package/src/providers/UiProviders/index.tsx +76 -76
  225. package/src/providers/UiProviders/styles.ts +10 -10
  226. package/src/providers/hooks.ts +14 -14
  227. package/src/services/HttpService.ts +92 -92
  228. package/src/services/WebSocketService.ts +155 -155
  229. package/src/services/advancedRequests.ts +102 -102
  230. package/src/services/base.ts +23 -23
  231. package/src/services/globalSearch.ts +32 -32
  232. package/src/services/hooks.ts +92 -92
  233. package/src/services/requests/auth.ts +44 -44
  234. package/src/services/requests/generic.ts +62 -62
  235. package/src/services/requests/tracking.ts +12 -12
  236. package/src/services/requests/userProfiles.ts +35 -35
  237. package/src/services/requests/users.ts +28 -28
  238. package/src/services/smartQueries.ts +122 -122
  239. package/src/services/sqlRequests.ts +111 -111
  240. package/src/services/types/auth.ts +98 -98
  241. package/src/services/types/base.ts +10 -10
  242. package/src/services/types/generic.ts +82 -82
  243. package/src/services/types/tracking.ts +29 -29
  244. package/src/services/types/userProfiles.ts +79 -79
  245. package/src/services/types/users.ts +74 -74
  246. package/src/services/updateSqlRequests.ts +32 -32
  247. package/src/styles/animations.scss +30 -30
  248. package/src/styles/index.scss +42 -42
  249. package/src/types.ts +8 -8
  250. package/src/typings.d.ts +2 -2
  251. package/tsconfig.json +18 -18
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
3
+ var __assign = (this && this.__assign) || function () {
4
+ __assign = Object.assign || function(t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8
+ t[p] = s[p];
9
+ }
10
+ return t;
11
+ };
12
+ return __assign.apply(this, arguments);
13
+ };
14
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
15
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
16
+ if (ar || !(i in from)) {
17
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
18
+ ar[i] = from[i];
19
+ }
20
+ }
21
+ return to.concat(ar || Array.prototype.slice.call(from));
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.getAdvancedRequestDto = void 0;
25
+ var getAdvancedRequestDto = function (_a) {
26
+ var type = _a.type, columns = _a.columns, _b = _a.conditions, conditions = _b === void 0 ? [] : _b, _c = _a.orderBy, orderBy = _c === void 0 ? [] : _c, _d = _a.start, start = _d === void 0 ? 0 : _d, _e = _a.length, length = _e === void 0 ? 100 : _e, _f = _a.getTotal, getTotal = _f === void 0 ? false : _f, _g = _a.addIdColumn, addIdColumn = _g === void 0 ? true : _g;
27
+ return ({
28
+ fields: __spreadArray(__spreadArray([], (Object.keys(columns).includes('Id') || addIdColumn === false
29
+ ? []
30
+ : [{ fieldName: 'Id' }]), true), Object.keys(columns).map(function (key) {
31
+ var _a, _b;
32
+ return columns[key].field
33
+ ? __assign(__assign({}, columns[key].field), { fieldName: (_b = (_a = columns[key].field) === null || _a === void 0 ? void 0 : _a.fieldName) !== null && _b !== void 0 ? _b : key, fieldAlias: key }) : {
34
+ fieldName: key,
35
+ fieldAlias: key,
36
+ };
37
+ }), true),
38
+ conditions: __spreadArray(__spreadArray([], conditions, true), [
39
+ {
40
+ field: {
41
+ fieldName: 'DeletedAt',
42
+ },
43
+ operator: 'isNull',
44
+ },
45
+ ], false),
46
+ orderBy: orderBy,
47
+ type: type,
48
+ start: start,
49
+ length: length,
50
+ getTotal: getTotal,
51
+ });
52
+ };
53
+ exports.getAdvancedRequestDto = getAdvancedRequestDto;
@@ -1,6 +1,6 @@
1
1
  import { DataGridCheckboxColumn, DataGridColorColumn, DataGridColumn, DataGridDateColumn, DataGridNumberColumn, DataGridSelectColumn, DataGridSettings, DataGridTextColumn } from '../types';
2
+ import { SqlRequestDataGridCheckboxColumn, SqlRequestDataGridTextColumn } from '../../SqlRequestDataGrid/types';
2
3
  import { DeepPartial } from '../../../../types';
3
- import { SqlRequestDataGridTextColumn } from '../../SqlRequestDataGrid/types';
4
4
  export declare const isColumnVisible: <R>(obj: DataGridColumn<R> | DataGridSettings) => boolean;
5
5
  export declare const buildExcelFormat: (decimals?: number, suffix?: string) => string;
6
6
  export declare const textColumn: <R extends Record<string, any>>(key: string, title: string, options?: DeepPartial<SqlRequestDataGridTextColumn<R>>, otherOptions?: Partial<DataGridTextColumn<R>>) => DataGridTextColumn<R>;
@@ -12,6 +12,6 @@ export declare const monthColumn: <R extends Record<string, any>>(key: string, t
12
12
  export declare const numberColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: DeepPartial<SqlRequestDataGridTextColumn<R>>, otherOptions?: Partial<DataGridNumberColumn<R>>) => DataGridNumberColumn<R>;
13
13
  export declare const moneyColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, currency?: string | ((row: R) => string), options?: DeepPartial<SqlRequestDataGridTextColumn<R>>, otherOptions?: Partial<DataGridNumberColumn<R>>) => DataGridNumberColumn<R>;
14
14
  export declare const percentageColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: DeepPartial<SqlRequestDataGridTextColumn<R>>, otherOptions?: Partial<DataGridNumberColumn<R>>) => DataGridNumberColumn<R>;
15
- export declare const checkboxColumn: <R extends Record<string, any>>(key: string, title: string, otherOptions?: Partial<DataGridCheckboxColumn<R>>) => DataGridCheckboxColumn<R>;
15
+ export declare const checkboxColumn: <R extends Record<string, any>>(key: string, title: string, options?: DeepPartial<DataGridCheckboxColumn<R>>) => SqlRequestDataGridCheckboxColumn<R>;
16
16
  export declare const selectColumn: <R extends Record<string, any>, T>(key: string, title: string, items: T[], itemKey: (item: T | null) => string, itemLabel: (item: T | null) => string, otherOptions?: Partial<DataGridSelectColumn<R, T>>) => DataGridSelectColumn<R, T>;
17
17
  export declare const colorColumn: <R extends Record<string, any>>(key: string, title: string, otherOptions?: Partial<DataGridColorColumn<R>>) => DataGridColorColumn<R>;
@@ -30,6 +30,7 @@ var jsx_runtime_1 = require("react/jsx-runtime");
30
30
  var filters_1 = require("./filters");
31
31
  var dates_1 = require("../../../../helpers/dates");
32
32
  var numbers_1 = require("../../../../helpers/numbers");
33
+ var lodash_1 = require("lodash");
33
34
  var CheckboxEditableCell_1 = require("../DataGridEditableCell/CheckboxEditableCell");
34
35
  var DateEditableCell_1 = require("../DataGridEditableCell/DateEditableCell");
35
36
  var NumberEditableCell_1 = require("../DataGridEditableCell/NumberEditableCell");
@@ -37,7 +38,6 @@ var Select_1 = require("../../../forms/Form/Select");
37
38
  var typography_1 = require("../../../../helpers/styled/typography");
38
39
  var TextEditableCell_1 = require("../DataGridEditableCell/TextEditableCell");
39
40
  var moment_1 = __importDefault(require("moment"));
40
- var lodash_1 = require("lodash");
41
41
  var components_1 = require("../../../../helpers/components");
42
42
  var isColumnVisible = function (obj) { return (obj === null || obj === void 0 ? void 0 : obj.order) !== -1; };
43
43
  exports.isColumnVisible = isColumnVisible;
@@ -143,15 +143,23 @@ var percentageColumn = function (key, title, decimals, options, otherOptions) {
143
143
  return column;
144
144
  };
145
145
  exports.percentageColumn = percentageColumn;
146
- var checkboxColumn = function (key, title, otherOptions) { return (__assign({ key: key, type: 'checkbox', name: title, render: function (value, row) { return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: row[key], readOnly: true }), (0, jsx_runtime_1.jsx)("span", { children: row[key] ? ' Oui' : ' Non' })] })); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: (0, filters_1.numberFilter)(key), footer: {
147
- count: function (_, filteredRows) { return "".concat(filteredRows.length, " \u00E9l\u00E9ments"); },
148
- checked: function (_, filteredRows) {
149
- return "".concat(filteredRows.filter(function (row) { return !!row[key]; }).length, " coch\u00E9s");
146
+ var checkboxColumn = function (key, title, options) {
147
+ return (0, lodash_1.merge)({
148
+ key: key,
149
+ name: title,
150
+ type: 'checkbox',
151
+ render: function (_row) {
152
+ var normalized = typeof _row === 'string' ? _row : String(_row);
153
+ var isChecked = normalized === 'true' || normalized === '1';
154
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: isChecked, readOnly: true }), (0, jsx_runtime_1.jsx)("span", { children: isChecked ? ' Oui' : ' Non' })] }));
150
155
  },
151
- unchecked: function (_, filteredRows) {
152
- return "".concat(filteredRows.filter(function (row) { return !row[key]; }).length, " d\u00E9coch\u00E9s");
153
- },
154
- }, editComponent: CheckboxEditableCell_1.CheckboxEditableCell }, otherOptions)); };
156
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; },
157
+ sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; },
158
+ filter: __assign(__assign({}, (0, filters_1.numberFilter)(key)), { getter: function (row) { var _a; return +((_a = row[key]) !== null && _a !== void 0 ? _a : 0); } }),
159
+ footer: function (rows) { return "".concat(rows[0][key], " \u00E9l\u00E9ments"); },
160
+ editComponent: CheckboxEditableCell_1.CheckboxEditableCell,
161
+ }, options);
162
+ };
155
163
  exports.checkboxColumn = checkboxColumn;
156
164
  var selectColumn = function (key, title, items, itemKey, itemLabel, otherOptions) { return (__assign({ key: key, type: 'select', name: title, render: function (value, row) { var _a; return (_a = itemLabel(row[key])) !== null && _a !== void 0 ? _a : ''; }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : null; }, sortGetter: function (row) { var _a; return (_a = itemLabel(row[key])) !== null && _a !== void 0 ? _a : ''; }, footer: function (_, filteredRows) { return "".concat(filteredRows.length, " \u00E9l\u00E9ments"); }, filter: __assign(__assign({}, (0, filters_1.textFilter)(key)), { renderer: function (value) { var _a; return (_a = itemLabel(value)) !== null && _a !== void 0 ? _a : ''; } }), items: items, itemKey: itemKey, itemLabel: itemLabel, editComponent: (0, components_1.withDisplayName)(function (_a) {
157
165
  var value = _a.value, onChange = _a.onChange, onClose = _a.onClose, ref = _a.ref;
@@ -0,0 +1,28 @@
1
+ import { AdvancedRequestDTO, ConditionDTO, OrderByDTO } from '../../../services/advancedRequests';
2
+ import { DataGridColumn, DataGridColumns, DataGridFilter, DataGridFilterCheckbox, DataGridFilterDataType, DataGridFilterFormatter, DataGridFilterGroup, DataGridFilterPredicates, DataGridFilterType, DataGridFilters, DataGridSettings } from './types';
3
+ export declare const filtersPredicates: DataGridFilterPredicates;
4
+ export declare const applyFilters: <R>(rows: R[], filters: DataGridFilter<R, DataGridFilterType>[]) => R[];
5
+ export declare const applyFilter: <R, T extends DataGridFilterType>(rows: R[], filter: DataGridFilter<R, T>) => R[];
6
+ export declare const defaultFilterGetter: (row: any, columnKey: string) => any;
7
+ export declare const defaultFilterValues: {
8
+ [K in DataGridFilterType]: DataGridFilterDataType<K>;
9
+ };
10
+ export declare const defaultValueParsers: {
11
+ [K in DataGridFilterType]: (value: string) => DataGridFilterDataType<K>;
12
+ };
13
+ export declare const groupDatesByYearAndMonth: (dates: any[]) => Record<string, Record<string, any[]>>;
14
+ export declare const getDateGroups: <R extends string | number | null>(dates: any[]) => DataGridFilterGroup<R>[];
15
+ export declare const isColumnVisible: <R>(obj: DataGridColumn<R, any> | DataGridSettings) => boolean;
16
+ export declare const convertFiltersToConditions: <R>(filters: DataGridFilters<R>) => ConditionDTO[];
17
+ export declare const getAdvancedRequestDto: <R>(type: string, columns: DataGridColumns<R>, conditions?: ConditionDTO[], orderBy?: OrderByDTO[], start?: number, length?: number, getTotal?: boolean) => AdvancedRequestDTO;
18
+ export declare const textColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
19
+ export declare const mailColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
20
+ export declare const phoneColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
21
+ export declare const dateColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
22
+ export declare const monthColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
23
+ export declare const numberColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
24
+ export declare const moneyColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
25
+ export declare const percentageColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
26
+ export declare const checkboxColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
27
+ export declare const colorColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<DataGridColumn<R, DataGridFilterType>>) => DataGridColumns<R>;
28
+ export declare const getCheckboxes: <R extends string | number | null>(values: R[], formatter: DataGridFilterFormatter, groups?: DataGridFilterGroup<R>[], level?: number) => DataGridFilterCheckbox<R>[];
@@ -0,0 +1,436 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
+ if (ar || !(i in from)) {
16
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
17
+ ar[i] = from[i];
18
+ }
19
+ }
20
+ return to.concat(ar || Array.prototype.slice.call(from));
21
+ };
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.getCheckboxes = exports.colorColumn = exports.checkboxColumn = exports.percentageColumn = exports.moneyColumn = exports.numberColumn = exports.monthColumn = exports.dateColumn = exports.phoneColumn = exports.mailColumn = exports.textColumn = exports.getAdvancedRequestDto = exports.convertFiltersToConditions = exports.isColumnVisible = exports.getDateGroups = exports.groupDatesByYearAndMonth = exports.defaultValueParsers = exports.defaultFilterValues = exports.defaultFilterGetter = exports.applyFilter = exports.applyFilters = exports.filtersPredicates = void 0;
27
+ var jsx_runtime_1 = require("react/jsx-runtime");
28
+ var numbers_1 = require("../../../helpers/numbers");
29
+ var lodash_1 = __importDefault(require("lodash"));
30
+ var moment_1 = __importDefault(require("moment"));
31
+ /* eslint-disable @typescript-eslint/no-explicit-any */
32
+ /* eslint-disable @typescript-eslint/no-unnecessary-type-constraint */
33
+ var escapeRegExp = function (s) { return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); };
34
+ var textContainsPredicate = function () {
35
+ var filterValues = [];
36
+ for (var _i = 0; _i < arguments.length; _i++) {
37
+ filterValues[_i] = arguments[_i];
38
+ }
39
+ var regex = new RegExp("".concat(escapeRegExp(filterValues[0])), 'i');
40
+ return function (valueToVerify) { return regex.test(valueToVerify); };
41
+ };
42
+ var textNotContainsPredicate = function () {
43
+ var filterValues = [];
44
+ for (var _i = 0; _i < arguments.length; _i++) {
45
+ filterValues[_i] = arguments[_i];
46
+ }
47
+ var regex = new RegExp("".concat(escapeRegExp(filterValues[0])), 'i');
48
+ return function (valueToVerify) { return !regex.test(valueToVerify); };
49
+ };
50
+ var textEqualsPredicate = function () {
51
+ var filterValues = [];
52
+ for (var _i = 0; _i < arguments.length; _i++) {
53
+ filterValues[_i] = arguments[_i];
54
+ }
55
+ var regex = new RegExp("^".concat(escapeRegExp(filterValues[0]), "$"), 'i');
56
+ return function (valueToVerify) { return regex.test(valueToVerify); };
57
+ };
58
+ var textNotEqualsPredicate = function () {
59
+ var filterValues = [];
60
+ for (var _i = 0; _i < arguments.length; _i++) {
61
+ filterValues[_i] = arguments[_i];
62
+ }
63
+ var regex = new RegExp("^".concat(escapeRegExp(filterValues[0]), "$"), 'i');
64
+ return function (valueToVerify) { return !regex.test(valueToVerify); };
65
+ };
66
+ var textStartsWithPredicate = function () {
67
+ var filterValues = [];
68
+ for (var _i = 0; _i < arguments.length; _i++) {
69
+ filterValues[_i] = arguments[_i];
70
+ }
71
+ var regex = new RegExp("^".concat(escapeRegExp(filterValues[0])), 'i');
72
+ return function (valueToVerify) { return regex.test(valueToVerify); };
73
+ };
74
+ var textEndsWithPredicate = function () {
75
+ var filterValues = [];
76
+ for (var _i = 0; _i < arguments.length; _i++) {
77
+ filterValues[_i] = arguments[_i];
78
+ }
79
+ var regex = new RegExp("".concat(escapeRegExp(filterValues[0]), "$"), 'i');
80
+ return function (valueToVerify) { return regex.test(valueToVerify); };
81
+ };
82
+ var textInArrayPredicate = function () {
83
+ var filterValues = [];
84
+ for (var _i = 0; _i < arguments.length; _i++) {
85
+ filterValues[_i] = arguments[_i];
86
+ }
87
+ return function (valueToVerify) { return filterValues.includes(valueToVerify); };
88
+ };
89
+ var numberEqualsPredicate = function () {
90
+ var filterValues = [];
91
+ for (var _i = 0; _i < arguments.length; _i++) {
92
+ filterValues[_i] = arguments[_i];
93
+ }
94
+ return function (valueToVerify) {
95
+ return valueToVerify === filterValues[0];
96
+ };
97
+ };
98
+ var numberNotEqualsPredicate = function () {
99
+ var filterValues = [];
100
+ for (var _i = 0; _i < arguments.length; _i++) {
101
+ filterValues[_i] = arguments[_i];
102
+ }
103
+ return function (valueToVerify) {
104
+ return valueToVerify !== filterValues[0];
105
+ };
106
+ };
107
+ var numberLessThanPredicate = function () {
108
+ var filterValues = [];
109
+ for (var _i = 0; _i < arguments.length; _i++) {
110
+ filterValues[_i] = arguments[_i];
111
+ }
112
+ return function (valueToVerify) {
113
+ return valueToVerify < filterValues[0];
114
+ };
115
+ };
116
+ var numberLessThanOrEqualPredicate = function () {
117
+ var filterValues = [];
118
+ for (var _i = 0; _i < arguments.length; _i++) {
119
+ filterValues[_i] = arguments[_i];
120
+ }
121
+ return function (valueToVerify) {
122
+ return valueToVerify <= filterValues[0];
123
+ };
124
+ };
125
+ var numberGreaterThanPredicate = function () {
126
+ var filterValues = [];
127
+ for (var _i = 0; _i < arguments.length; _i++) {
128
+ filterValues[_i] = arguments[_i];
129
+ }
130
+ return function (valueToVerify) {
131
+ return valueToVerify > filterValues[0];
132
+ };
133
+ };
134
+ var numberGreaterThanOrEqualPredicate = function () {
135
+ var filterValues = [];
136
+ for (var _i = 0; _i < arguments.length; _i++) {
137
+ filterValues[_i] = arguments[_i];
138
+ }
139
+ return function (valueToVerify) {
140
+ return valueToVerify >= filterValues[0];
141
+ };
142
+ };
143
+ var numberInRangePredicate = function () {
144
+ var filterValues = [];
145
+ for (var _i = 0; _i < arguments.length; _i++) {
146
+ filterValues[_i] = arguments[_i];
147
+ }
148
+ return function (valueToVerify) {
149
+ return valueToVerify >= filterValues[0] && valueToVerify <= filterValues[1];
150
+ };
151
+ };
152
+ var numberInArrayPredicate = function () {
153
+ var filterValues = [];
154
+ for (var _i = 0; _i < arguments.length; _i++) {
155
+ filterValues[_i] = arguments[_i];
156
+ }
157
+ return function (valueToVerify) { return filterValues.includes(valueToVerify); };
158
+ };
159
+ exports.filtersPredicates = {
160
+ text: {
161
+ contains: textContainsPredicate,
162
+ notContains: textNotContainsPredicate,
163
+ equals: textEqualsPredicate,
164
+ notEquals: textNotEqualsPredicate,
165
+ startsWith: textStartsWithPredicate,
166
+ endsWith: textEndsWithPredicate,
167
+ inArray: textInArrayPredicate,
168
+ },
169
+ number: {
170
+ equals: numberEqualsPredicate,
171
+ notEquals: numberNotEqualsPredicate,
172
+ lessThan: numberLessThanPredicate,
173
+ lessThanOrEqual: numberLessThanOrEqualPredicate,
174
+ greaterThan: numberGreaterThanPredicate,
175
+ greaterThanOrEqual: numberGreaterThanOrEqualPredicate,
176
+ inRange: numberInRangePredicate,
177
+ inArray: numberInArrayPredicate,
178
+ },
179
+ };
180
+ var applyFilters = function (rows, filters) {
181
+ return filters.reduce(function (tempRows, filter) { return (0, exports.applyFilter)(tempRows, filter); }, rows);
182
+ };
183
+ exports.applyFilters = applyFilters;
184
+ var applyFilter = function (rows, filter) {
185
+ var predicateBuilder = exports.filtersPredicates[filter.type][filter.operator];
186
+ if (typeof predicateBuilder !== 'function')
187
+ return rows;
188
+ var predicate = predicateBuilder.apply(void 0, filter.values);
189
+ return rows.filter(function (row) { return predicate(filter.getter(row)); });
190
+ };
191
+ exports.applyFilter = applyFilter;
192
+ var defaultFilterGetter = function (row, columnKey) {
193
+ return row[columnKey];
194
+ };
195
+ exports.defaultFilterGetter = defaultFilterGetter;
196
+ exports.defaultFilterValues = {
197
+ text: '',
198
+ number: 0,
199
+ };
200
+ exports.defaultValueParsers = {
201
+ text: function (value) { return value; },
202
+ number: function (value) { return parseFloat(value); },
203
+ };
204
+ var groupDatesByYearAndMonth = function (dates) {
205
+ return dates.reduce(function (acc, date) {
206
+ var year = (0, moment_1.default)(date).format('YYYY');
207
+ if (!acc[year]) {
208
+ acc[year] = {};
209
+ }
210
+ var yearAndMonth = (0, moment_1.default)(date).format("YYYY-MM");
211
+ if (!acc[year][yearAndMonth]) {
212
+ acc[year][yearAndMonth] = [];
213
+ }
214
+ acc[year][yearAndMonth].push(date);
215
+ return acc;
216
+ }, {});
217
+ };
218
+ exports.groupDatesByYearAndMonth = groupDatesByYearAndMonth;
219
+ var getDateGroups = function (dates) {
220
+ var grouperDates = (0, exports.groupDatesByYearAndMonth)(dates);
221
+ return Object.entries(grouperDates).map(function (_a) {
222
+ var year = _a[0], months = _a[1];
223
+ return ({
224
+ name: year,
225
+ values: Object.values(months).flat(),
226
+ groups: Object.entries(months).map(function (_a) {
227
+ var month = _a[0], dates = _a[1];
228
+ return ({
229
+ name: month,
230
+ values: dates,
231
+ });
232
+ }),
233
+ });
234
+ });
235
+ };
236
+ exports.getDateGroups = getDateGroups;
237
+ var isColumnVisible = function (obj) {
238
+ return (obj === null || obj === void 0 ? void 0 : obj.order) !== -1;
239
+ };
240
+ exports.isColumnVisible = isColumnVisible;
241
+ var convertFiltersToConditions = function (filters) {
242
+ return Object.entries(filters).map(function (_a) {
243
+ var columnKey = _a[0], filter = _a[1];
244
+ var condition = {
245
+ field: {
246
+ fieldName: columnKey,
247
+ },
248
+ operator: filter.operator,
249
+ value: ['inArray', 'inRange'].includes(filter.operator)
250
+ ? filter.values
251
+ : lodash_1.default.castArray(filter.values)[0],
252
+ };
253
+ return condition;
254
+ });
255
+ };
256
+ exports.convertFiltersToConditions = convertFiltersToConditions;
257
+ var getAdvancedRequestDto = function (type, columns, conditions, orderBy, start, length, getTotal) {
258
+ if (conditions === void 0) { conditions = []; }
259
+ if (orderBy === void 0) { orderBy = []; }
260
+ if (start === void 0) { start = 0; }
261
+ if (length === void 0) { length = 100; }
262
+ if (getTotal === void 0) { getTotal = false; }
263
+ return ({
264
+ fields: __spreadArray([
265
+ {
266
+ fieldName: 'Id',
267
+ },
268
+ {
269
+ fieldName: 'DbId',
270
+ }
271
+ ], Object.keys(columns).map(function (key) {
272
+ var _a, _b;
273
+ return columns[key].field
274
+ ? __assign(__assign({}, columns[key].field), { fieldName: (_b = (_a = columns[key].field) === null || _a === void 0 ? void 0 : _a.fieldName) !== null && _b !== void 0 ? _b : key, fieldAlias: key }) : {
275
+ fieldName: key,
276
+ fieldAlias: key,
277
+ };
278
+ }), true),
279
+ conditions: __spreadArray(__spreadArray([], conditions, true), [
280
+ {
281
+ field: {
282
+ fieldName: 'DeletedAt',
283
+ },
284
+ operator: 'isNull',
285
+ },
286
+ ], false),
287
+ orderBy: orderBy,
288
+ type: type,
289
+ start: start,
290
+ length: length,
291
+ getTotal: getTotal,
292
+ });
293
+ };
294
+ exports.getAdvancedRequestDto = getAdvancedRequestDto;
295
+ var textColumn = function (key, title, options) {
296
+ var _a;
297
+ return (_a = {},
298
+ _a[key] = __assign({ name: title, render: function (col, row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
299
+ type: 'text',
300
+ operator: 'contains',
301
+ values: [''],
302
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; },
303
+ } }, options),
304
+ _a);
305
+ };
306
+ exports.textColumn = textColumn;
307
+ var mailColumn = function (key, title, options) {
308
+ var _a;
309
+ return (_a = {},
310
+ _a[key] = __assign({ name: title, render: function (col, row) {
311
+ var _a;
312
+ return ((0, jsx_runtime_1.jsx)("a", { className: "text-blue-500 hover:text-blue-700", href: "mailto:".concat(row[key]), children: (_a = row[key]) !== null && _a !== void 0 ? _a : '' }));
313
+ }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
314
+ type: 'text',
315
+ operator: 'contains',
316
+ values: [''],
317
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; },
318
+ } }, options),
319
+ _a);
320
+ };
321
+ exports.mailColumn = mailColumn;
322
+ var phoneColumn = function (key, title, options) {
323
+ var _a;
324
+ return (_a = {},
325
+ _a[key] = __assign({ name: title, render: function (col, row) {
326
+ var _a;
327
+ return ((0, jsx_runtime_1.jsx)("a", { className: "text-blue-500 hover:text-blue-700", href: "tel:".concat(row[key]), children: (_a = row[key]) !== null && _a !== void 0 ? _a : '' }));
328
+ }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
329
+ type: 'text',
330
+ operator: 'contains',
331
+ values: [''],
332
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; },
333
+ } }, options),
334
+ _a);
335
+ };
336
+ exports.phoneColumn = phoneColumn;
337
+ var dateColumn = function (key, title, options) {
338
+ var _a;
339
+ return (_a = {},
340
+ _a[key] = __assign({ name: title, render: function (col, row) { var _a; return (_a = (0, moment_1.default)(row[key]).format('DD/MM/YYYY')) !== null && _a !== void 0 ? _a : ''; }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
341
+ type: 'text',
342
+ operator: 'contains',
343
+ values: [''],
344
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; },
345
+ } }, options),
346
+ _a);
347
+ };
348
+ exports.dateColumn = dateColumn;
349
+ var monthColumn = function (key, title, options) {
350
+ var _a;
351
+ return (_a = {},
352
+ _a[key] = __assign({ name: title, render: function (col, row) { return (row[key] ? "".concat(row[key], " mois ") : ''); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
353
+ type: 'text',
354
+ operator: 'contains',
355
+ values: [''],
356
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; },
357
+ } }, options),
358
+ _a);
359
+ };
360
+ exports.monthColumn = monthColumn;
361
+ var numberColumn = function (key, title, decimals, options) {
362
+ var _a;
363
+ if (decimals === void 0) { decimals = 2; }
364
+ return (_a = {},
365
+ _a[key] = __assign({ name: title, render: function (col, row) { var _a; return (_a = (0, numbers_1.formatNumber)(row[key], decimals)) !== null && _a !== void 0 ? _a : ''; }, excelFormatter: function () { return '#'; }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
366
+ type: 'number',
367
+ operator: 'equals',
368
+ values: [0],
369
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : 0; },
370
+ } }, options),
371
+ _a);
372
+ };
373
+ exports.numberColumn = numberColumn;
374
+ var moneyColumn = function (key, title, decimals, options) {
375
+ var _a;
376
+ if (decimals === void 0) { decimals = 2; }
377
+ return (_a = {},
378
+ _a[key] = __assign({ name: title, render: function (col, row) { var _a; return (_a = (0, numbers_1.formatMoney)(row[key], decimals)) !== null && _a !== void 0 ? _a : ''; }, excelFormatter: function () { return '#0.00'; }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
379
+ type: 'number',
380
+ operator: 'equals',
381
+ values: [0],
382
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : 0; },
383
+ } }, options),
384
+ _a);
385
+ };
386
+ exports.moneyColumn = moneyColumn;
387
+ var percentageColumn = function (key, title, options) {
388
+ var _a;
389
+ return (_a = {},
390
+ _a[key] = __assign({ name: title, render: function (col, row) { var _a; return (_a = (0, numbers_1.formatPercentage)(row[key])) !== null && _a !== void 0 ? _a : ''; }, excelFormatter: function () { return '#0.00'; }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
391
+ type: 'number',
392
+ operator: 'equals',
393
+ values: [0],
394
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : 0; },
395
+ } }, options),
396
+ _a);
397
+ };
398
+ exports.percentageColumn = percentageColumn;
399
+ var checkboxColumn = function (key, title, options) {
400
+ var _a;
401
+ return (_a = {},
402
+ _a[key] = __assign({ name: title, render: function (col, row) { return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: row[key] }), (0, jsx_runtime_1.jsx)("span", { children: row[key] ? ' Oui' : ' Non' })] })); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
403
+ type: 'number',
404
+ operator: 'equals',
405
+ values: [0],
406
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : 0; },
407
+ } }, options),
408
+ _a);
409
+ };
410
+ exports.checkboxColumn = checkboxColumn;
411
+ var colorColumn = function (key, title, options) {
412
+ var _a;
413
+ return (_a = {},
414
+ _a[key] = __assign({ name: title, render: function (col, row) {
415
+ var _a;
416
+ return ((0, jsx_runtime_1.jsx)("div", { style: { backgroundColor: row[key] }, children: (_a = row[key]) !== null && _a !== void 0 ? _a : '' }));
417
+ }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: {
418
+ type: 'text',
419
+ operator: 'contains',
420
+ values: [''],
421
+ getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; },
422
+ } }, options),
423
+ _a);
424
+ };
425
+ exports.colorColumn = colorColumn;
426
+ var getCheckboxes = function (values, formatter, groups, level) {
427
+ if (level === void 0) { level = 0; }
428
+ return __spreadArray(__spreadArray([], (groups !== null && groups !== void 0 ? groups : [])
429
+ .map(function (group) { var _a; return (0, exports.getCheckboxes)((_a = group.values) !== null && _a !== void 0 ? _a : [], formatter, group.groups, level + 1); })
430
+ .flat(), true), values.map(function (value) { return ({
431
+ displayValue: formatter(value),
432
+ values: [value],
433
+ level: level,
434
+ }); }), true);
435
+ };
436
+ exports.getCheckboxes = getCheckboxes;
@@ -0,0 +1,20 @@
1
+ import { ColumnDTO, ConditionDTO } from '../../../../services/smartQueries';
2
+ import { SmartQueryDataGridColumn, SmartQueryDataGridColumns } from '../types';
3
+ export declare const smartTextColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
4
+ /**
5
+ * Creates a column with a composed value from multiple fields,
6
+ * and filtered by a text filter on the first field
7
+ */
8
+ export declare const smartComposedColumn: <R extends Record<string, any>>(key: string, title: string, fields: string[], options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
9
+ export declare const smartMailColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
10
+ export declare const smartPhoneColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
11
+ export declare const smartDateColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
12
+ export declare const smartDateTimeColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
13
+ export declare const smartMonthColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
14
+ export declare const smartNumberColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
15
+ export declare const smartMoneyColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
16
+ export declare const smartPercentageColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
17
+ export declare const smartCheckboxColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
18
+ export declare const smartColorColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
19
+ export declare const getColumnsConditions: (columns: ColumnDTO[]) => ConditionDTO[];
20
+ export declare const getFooterColumn: (column: ColumnDTO) => ColumnDTO;