@addev-be/ui 0.11.7 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) 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/up.svg +1 -1
  21. package/assets/icons/user-tie.svg +1 -1
  22. package/assets/icons/x-bar.svg +3 -3
  23. package/dist/components/auth/LoginForm.js +0 -1
  24. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.d.ts +10 -0
  25. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.js +173 -0
  26. package/dist/components/data/DataGrid/FilterValuesScroller.d.ts +13 -0
  27. package/dist/components/data/DataGrid/FilterValuesScroller.js +73 -0
  28. package/dist/components/data/DataGrid/VirtualScroller.d.ts +11 -0
  29. package/dist/components/data/DataGrid/VirtualScroller.js +41 -0
  30. package/dist/components/data/DataGrid/helpers/advancedRequests.d.ts +12 -0
  31. package/dist/components/data/DataGrid/helpers/advancedRequests.js +53 -0
  32. package/dist/components/data/DataGrid/helpers.d.ts +28 -0
  33. package/dist/components/data/DataGrid/helpers.js +436 -0
  34. package/dist/config/types.d.ts +11 -0
  35. package/dist/config/types.js +2 -0
  36. package/dist/providers/AuthenticationProvider/index.d.ts +0 -1
  37. package/dist/providers/AuthenticationProvider/index.js +14 -28
  38. package/dist/services/advancedRequests.d.ts +1 -1
  39. package/dist/services/requests/userPermissions.d.ts +4 -0
  40. package/dist/services/requests/userPermissions.js +20 -0
  41. package/dist/services/sqlRequests.d.ts +1 -1
  42. package/package.json +1 -1
  43. package/src/Icons.tsx +128 -128
  44. package/src/components/auth/LoginForm.tsx +84 -84
  45. package/src/components/auth/LoginPage.tsx +32 -32
  46. package/src/components/auth/PasswordRecoveryForm.tsx +52 -52
  47. package/src/components/auth/PasswordResetForm.tsx +112 -112
  48. package/src/components/auth/index.ts +4 -4
  49. package/src/components/auth/styles.ts +14 -14
  50. package/src/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.ts +93 -93
  51. package/src/components/data/AdvancedRequestDataGrid/helpers/columns.tsx +262 -262
  52. package/src/components/data/AdvancedRequestDataGrid/helpers/index.ts +2 -2
  53. package/src/components/data/AdvancedRequestDataGrid/index.tsx +267 -267
  54. package/src/components/data/AdvancedRequestDataGrid/types.ts +47 -47
  55. package/src/components/data/DataGrid/DataGridCell.tsx +76 -76
  56. package/src/components/data/DataGrid/DataGridColumnsModal/helpers.ts +14 -14
  57. package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +59 -59
  58. package/src/components/data/DataGrid/DataGridColumnsModal/index.tsx +181 -181
  59. package/src/components/data/DataGrid/DataGridColumnsModal/styles.ts +104 -104
  60. package/src/components/data/DataGrid/DataGridEditableCell.tsx +43 -43
  61. package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +131 -131
  62. package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +78 -78
  63. package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +378 -378
  64. package/src/components/data/DataGrid/DataGridFilterMenu/styles.ts +97 -97
  65. package/src/components/data/DataGrid/DataGridFooter.tsx +43 -43
  66. package/src/components/data/DataGrid/DataGridHeader.tsx +128 -128
  67. package/src/components/data/DataGrid/DataGridHeaderCell.tsx +101 -101
  68. package/src/components/data/DataGrid/DataGridRowTemplate.tsx +70 -70
  69. package/src/components/data/DataGrid/FilterModalContent/index.tsx +136 -136
  70. package/src/components/data/DataGrid/FilterModalContent/styles.ts +22 -22
  71. package/src/components/data/DataGrid/constants.ts +6 -6
  72. package/src/components/data/DataGrid/helpers/columns.tsx +319 -319
  73. package/src/components/data/DataGrid/helpers/filters.ts +287 -287
  74. package/src/components/data/DataGrid/helpers/index.ts +2 -2
  75. package/src/components/data/DataGrid/hooks/index.ts +30 -30
  76. package/src/components/data/DataGrid/hooks/useDataGrid.tsx +338 -338
  77. package/src/components/data/DataGrid/hooks/useDataGridCopy.ts +175 -175
  78. package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +48 -48
  79. package/src/components/data/DataGrid/index.tsx +110 -110
  80. package/src/components/data/DataGrid/styles.ts +336 -336
  81. package/src/components/data/DataGrid/types.ts +283 -283
  82. package/src/components/data/SmartQueryDataGrid/helpers/columns.tsx +333 -0
  83. package/src/components/data/SmartQueryDataGrid/helpers/hooks.ts +41 -0
  84. package/src/components/data/SmartQueryDataGrid/helpers/index.ts +2 -0
  85. package/src/components/data/SmartQueryDataGrid/helpers/smartQueries.ts +17 -0
  86. package/src/components/data/SmartQueryDataGrid/hooks.ts +75 -0
  87. package/src/components/data/SmartQueryDataGrid/index.tsx +338 -0
  88. package/src/components/data/SmartQueryDataGrid/types.ts +45 -0
  89. package/src/components/data/SqlRequestDataGrid/helpers/columns.tsx +306 -306
  90. package/src/components/data/SqlRequestDataGrid/helpers/index.ts +2 -2
  91. package/src/components/data/SqlRequestDataGrid/helpers/sqlRequests.ts +16 -16
  92. package/src/components/data/SqlRequestDataGrid/index.tsx +387 -387
  93. package/src/components/data/SqlRequestDataGrid/types.ts +48 -48
  94. package/src/components/data/SqlRequestGrid/filters/FiltersSidebar.tsx +106 -106
  95. package/src/components/data/SqlRequestGrid/filters/styles.ts +88 -88
  96. package/src/components/data/SqlRequestGrid/helpers/index.ts +1 -1
  97. package/src/components/data/SqlRequestGrid/helpers/sqlRequests.ts +16 -16
  98. package/src/components/data/SqlRequestGrid/index.tsx +310 -310
  99. package/src/components/data/SqlRequestGrid/styles.ts +20 -20
  100. package/src/components/data/SqlRequestGrid/types.ts +53 -53
  101. package/src/components/data/VirtualScroller/hooks.ts +71 -71
  102. package/src/components/data/VirtualScroller/index.tsx +89 -89
  103. package/src/components/data/VirtualScroller/styles.ts +58 -58
  104. package/src/components/data/VirtualScroller/types.ts +12 -12
  105. package/src/components/data/index.ts +21 -17
  106. package/src/components/forms/AutoTextArea.tsx +41 -41
  107. package/src/components/forms/Button.tsx +133 -133
  108. package/src/components/forms/IconButton.tsx +57 -57
  109. package/src/components/forms/IndeterminateCheckbox.tsx +46 -46
  110. package/src/components/forms/Select.tsx +40 -40
  111. package/src/components/forms/VerticalLabel.tsx +20 -20
  112. package/src/components/forms/index.ts +6 -6
  113. package/src/components/forms/styles.ts +31 -31
  114. package/src/components/index.ts +6 -6
  115. package/src/components/layout/Dropdown/index.tsx +112 -112
  116. package/src/components/layout/Dropdown/styles.ts +45 -45
  117. package/src/components/layout/Loading/index.tsx +29 -29
  118. package/src/components/layout/Loading/styles.ts +29 -29
  119. package/src/components/layout/Modal/index.tsx +51 -51
  120. package/src/components/layout/Modal/styles.ts +121 -121
  121. package/src/components/layout/index.ts +3 -3
  122. package/src/components/search/HighlightedText.tsx +37 -37
  123. package/src/components/search/QuickSearchBar.tsx +86 -86
  124. package/src/components/search/QuickSearchResults.tsx +86 -86
  125. package/src/components/search/index.ts +9 -9
  126. package/src/components/search/styles.ts +96 -96
  127. package/src/components/search/types.ts +26 -26
  128. package/src/components/ui/Avatar/index.tsx +54 -54
  129. package/src/components/ui/Card/index.tsx +14 -14
  130. package/src/components/ui/Card/styles.ts +37 -37
  131. package/src/components/ui/ContextMenu/index.tsx +79 -79
  132. package/src/components/ui/ContextMenu/styles.ts +119 -119
  133. package/src/components/ui/Label.tsx +90 -90
  134. package/src/components/ui/Message/index.tsx +57 -57
  135. package/src/components/ui/Message/styles.ts +40 -40
  136. package/src/components/ui/index.ts +5 -5
  137. package/src/config/index.ts +14 -14
  138. package/src/helpers/dates.ts +17 -17
  139. package/src/helpers/getScrollbarSize.ts +14 -14
  140. package/src/helpers/index.ts +3 -3
  141. package/src/helpers/numbers.ts +26 -26
  142. package/src/helpers/text.ts +13 -13
  143. package/src/hooks/index.ts +3 -3
  144. package/src/hooks/useElementSize.ts +24 -24
  145. package/src/hooks/useShowArchived.ts +28 -28
  146. package/src/hooks/useWindowSize.ts +20 -20
  147. package/src/index.ts +9 -9
  148. package/src/providers/AuthenticationProvider/helpers.ts +3 -3
  149. package/src/providers/AuthenticationProvider/index.tsx +243 -243
  150. package/src/providers/LoadingProvider/index.tsx +47 -47
  151. package/src/providers/PortalsProvider/index.tsx +54 -54
  152. package/src/providers/PortalsProvider/styles.ts +31 -31
  153. package/src/providers/SettingsProvider/index.tsx +70 -70
  154. package/src/providers/ThemeProvider/ThemeProvider.ts +63 -63
  155. package/src/providers/ThemeProvider/defaultTheme.ts +457 -457
  156. package/src/providers/ThemeProvider/index.ts +4 -4
  157. package/src/providers/ThemeProvider/types.ts +131 -131
  158. package/src/providers/TrackingProvider/index.tsx +71 -71
  159. package/src/providers/UiProviders/index.tsx +68 -68
  160. package/src/providers/UiProviders/styles.ts +10 -10
  161. package/src/providers/hooks.ts +12 -12
  162. package/src/providers/index.ts +8 -8
  163. package/src/services/HttpService.ts +92 -92
  164. package/src/services/WebSocketService.ts +137 -137
  165. package/src/services/advancedRequests.ts +102 -102
  166. package/src/services/base.ts +23 -23
  167. package/src/services/globalSearch.ts +29 -29
  168. package/src/services/hooks.ts +44 -44
  169. package/src/services/index.ts +20 -19
  170. package/src/services/requests/auth.ts +44 -44
  171. package/src/services/requests/generic.ts +62 -62
  172. package/src/services/requests/tracking.ts +12 -12
  173. package/src/services/requests/userProfiles.ts +35 -35
  174. package/src/services/requests/users.ts +28 -28
  175. package/src/services/smartQueries.ts +122 -0
  176. package/src/services/sqlRequests.ts +111 -111
  177. package/src/services/types/auth.ts +131 -131
  178. package/src/services/types/base.ts +10 -10
  179. package/src/services/types/generic.ts +92 -92
  180. package/src/services/types/tracking.ts +39 -39
  181. package/src/services/types/userProfiles.ts +107 -107
  182. package/src/services/types/users.ts +106 -106
  183. package/src/styles/animations.scss +30 -30
  184. package/src/styles/index.scss +42 -42
  185. package/src/typings.d.ts +13 -13
  186. package/tsconfig.json +18 -18
@@ -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,11 @@
1
+ export type EnvType = 'dev' | 'test' | 'staging' | 'prod';
2
+ export type Config = {
3
+ webSocketUrl: string;
4
+ httpServerUrl: `${string}/`;
5
+ invoicingEnabled?: boolean;
6
+ };
7
+ type DeepPartial<T> = T extends object ? {
8
+ [P in keyof T]?: DeepPartial<T[P]>;
9
+ } : T;
10
+ export type PartialConfig = DeepPartial<Config>;
11
+ export {};
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -12,7 +12,6 @@ export type AuthenticationContextProps = {
12
12
  resetPassword: (key: string, password: string) => Promise<number>;
13
13
  permissions: Record<string, string>;
14
14
  hasPermission: (permission: string) => boolean;
15
- setToken: (token?: string) => void;
16
15
  };
17
16
  export declare const AuthenticationContext: import("react").Context<AuthenticationContextProps>;
18
17
  export type AuthenticationProviderProps = PropsWithChildren<{
@@ -72,21 +72,27 @@ exports.AuthenticationContext = (0, react_1.createContext)({
72
72
  }); }); },
73
73
  permissions: {},
74
74
  hasPermission: function () { return false; },
75
- setToken: function () { },
76
75
  });
77
76
  var AuthenticationProvider = function (_a) {
78
- var _b, _c;
79
77
  var permissions = _a.permissions, LoginComponent = _a.loginComponent, children = _a.children, requestHandlerName = _a.requestHandlerName;
80
78
  var allPermissions = (0, react_1.useMemo)(function () { return (__assign(__assign({}, helpers_1.basePermissions), permissions)); }, [permissions]);
81
- var _d = (0, react_1.useState)(false), setWebSocketStatus = _d[1];
82
- var _e = (0, react_1.useState)(sessionStorage.getItem('authToken') || undefined), token = _e[0], setToken = _e[1];
83
- var _f = (0, react_1.useState)(undefined), user = _f[0], setUser = _f[1];
79
+ var _b = (0, react_1.useState)(false), setWebSocketStatus = _b[1];
80
+ var _c = (0, react_1.useState)(sessionStorage.getItem('authToken') || undefined), token = _c[0], setToken = _c[1];
81
+ var _d = (0, react_1.useState)(undefined), user = _d[0], setUser = _d[1];
84
82
  var sendAuthenticateRequest = (0, services_1.useAuthenticateRequestHandler)(requestHandlerName);
85
83
  var sendLoginRequest = (0, services_1.useLoginRequestHandler)();
86
84
  var sendLogoutRequest = (0, services_1.useLogoutRequestHandler)();
87
85
  var sendSendRecoveryKeyRequest = (0, services_1.useSendRecoveryKeyRequestHandler)();
88
86
  var sendCheckRecoveryKeyRequest = (0, services_1.useCheckRecoveryKeyRequestHandler)();
89
87
  var sendResetPasswordRequest = (0, services_1.useResetPasswordRequestHandler)();
88
+ (0, react_1.useEffect)(function () {
89
+ if (token) {
90
+ sessionStorage.setItem('authToken', token);
91
+ }
92
+ else {
93
+ sessionStorage.removeItem('authToken');
94
+ }
95
+ }, [token]);
90
96
  var authenticate = (0, react_1.useCallback)(function () {
91
97
  if (token && !user) {
92
98
  sendAuthenticateRequest({ token: token }).then(function (response) {
@@ -103,15 +109,6 @@ var AuthenticationProvider = function (_a) {
103
109
  });
104
110
  }
105
111
  }, [sendAuthenticateRequest, token, user]);
106
- (0, react_1.useEffect)(function () {
107
- if (token) {
108
- sessionStorage.setItem('authToken', token);
109
- authenticate();
110
- }
111
- else {
112
- sessionStorage.removeItem('authToken');
113
- }
114
- }, [authenticate, token]);
115
112
  var login = (0, react_1.useCallback)(function (username, password) { return __awaiter(void 0, void 0, void 0, function () {
116
113
  return __generator(this, function (_a) {
117
114
  return [2 /*return*/, sendLoginRequest({ username: username, password: password })
@@ -164,20 +161,11 @@ var AuthenticationProvider = function (_a) {
164
161
  });
165
162
  }); }, [sendCheckRecoveryKeyRequest]);
166
163
  var hasPermission = (0, react_1.useCallback)(function (permission) {
167
- var _a, _b, _c, _d, _e, _f;
164
+ var _a, _b;
168
165
  return permission in allPermissions &&
169
166
  !!allPermissions[permission] &&
170
- ((user === null || user === void 0 ? void 0 : user.isAdmin) ||
171
- ((_a = user === null || user === void 0 ? void 0 : user.profile) === null || _a === void 0 ? void 0 : _a.isAdmin) ||
172
- ((_c = (_b = user === null || user === void 0 ? void 0 : user.permissions) === null || _b === void 0 ? void 0 : _b.includes(permission)) !== null && _c !== void 0 ? _c : false) ||
173
- ((_f = (_e = (_d = user === null || user === void 0 ? void 0 : user.profile) === null || _d === void 0 ? void 0 : _d.permissions) === null || _e === void 0 ? void 0 : _e.includes(permission)) !== null && _f !== void 0 ? _f : false));
174
- }, [
175
- allPermissions,
176
- user === null || user === void 0 ? void 0 : user.isAdmin,
177
- user === null || user === void 0 ? void 0 : user.permissions,
178
- (_b = user === null || user === void 0 ? void 0 : user.profile) === null || _b === void 0 ? void 0 : _b.isAdmin,
179
- (_c = user === null || user === void 0 ? void 0 : user.profile) === null || _c === void 0 ? void 0 : _c.permissions,
180
- ]);
167
+ ((user === null || user === void 0 ? void 0 : user.isAdmin) || ((_b = (_a = user === null || user === void 0 ? void 0 : user.permissions) === null || _a === void 0 ? void 0 : _a.includes(permission)) !== null && _b !== void 0 ? _b : false));
168
+ }, [allPermissions, user === null || user === void 0 ? void 0 : user.isAdmin, user === null || user === void 0 ? void 0 : user.permissions]);
181
169
  var contextValue = (0, react_1.useMemo)(function () { return ({
182
170
  token: token,
183
171
  user: user,
@@ -190,7 +178,6 @@ var AuthenticationProvider = function (_a) {
190
178
  resetPassword: resetPassword,
191
179
  permissions: allPermissions,
192
180
  hasPermission: hasPermission,
193
- setToken: setToken,
194
181
  }); }, [
195
182
  allPermissions,
196
183
  authenticate,
@@ -202,7 +189,6 @@ var AuthenticationProvider = function (_a) {
202
189
  sendRecoveryKey,
203
190
  token,
204
191
  user,
205
- setToken,
206
192
  ]);
207
193
  (0, react_1.useEffect)(function () {
208
194
  var _a;
@@ -8,7 +8,7 @@ export type FieldDTO<T extends string = string> = {
8
8
  };
9
9
  export type ConditionDTO = {
10
10
  field: string;
11
- operator: 'lessThan' | 'lessThanOrEqual' | 'lessThanOrEquals' | 'equals' | 'notEquals' | 'greaterThanOrEqual' | 'greaterThanOrEquals' | 'greaterThan' | 'like' | 'contains' | 'notContains' | 'startsWith' | 'endsWith' | 'notLike' | 'inRange' | 'between' | 'isNull' | 'isNotNull' | 'inArray' | 'in' | 'not' | 'and' | 'or';
11
+ operator: 'lessThan' | 'lessThanOrEqual' | 'lessThanOrEquals' | 'equals' | 'notEquals' | 'greaterThanOrEqual' | 'greaterThanOrEquals' | 'greaterThan' | 'like' | 'contains' | 'notContains' | 'startsWith' | 'endsWith' | 'notLike' | 'inRange' | 'between' | 'isNull' | 'inArray' | 'in' | 'not' | 'and' | 'or';
12
12
  value?: string | number | boolean | null | (string | number | boolean | null)[];
13
13
  children?: boolean;
14
14
  };
@@ -0,0 +1,4 @@
1
+ export declare const useGetUserPermissionRequestHandler: () => (data: GetUserPermissionRequestDTO) => Promise<GetUserPermissionResponseDTO>;
2
+ export declare const useGetAllUserPermissionsRequestHandler: () => (data: GetAllUserPermissionsRequestDTO) => Promise<GetAllUserPermissionsResponseDTO>;
3
+ export declare const useSaveUserPermissionRequestHandler: () => (data: SaveUserPermissionRequestDTO) => Promise<SaveUserPermissionResponseDTO>;
4
+ export declare const useDeleteUserPermissionRequestHandler: () => (data: DeleteUserPermissionRequestDTO) => Promise<DeleteUserPermissionResponseDTO>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useDeleteUserPermissionRequestHandler = exports.useSaveUserPermissionRequestHandler = exports.useGetAllUserPermissionsRequestHandler = exports.useGetUserPermissionRequestHandler = void 0;
4
+ var hooks_1 = require("../hooks");
5
+ var useGetUserPermissionRequestHandler = function () {
6
+ return (0, hooks_1.useLoadingRequestHandler)('GetUserPermission');
7
+ };
8
+ exports.useGetUserPermissionRequestHandler = useGetUserPermissionRequestHandler;
9
+ var useGetAllUserPermissionsRequestHandler = function () {
10
+ return (0, hooks_1.useLoadingRequestHandler)('GetAllUserPermissions');
11
+ };
12
+ exports.useGetAllUserPermissionsRequestHandler = useGetAllUserPermissionsRequestHandler;
13
+ var useSaveUserPermissionRequestHandler = function () {
14
+ return (0, hooks_1.useLoadingRequestHandler)('SaveUserPermission');
15
+ };
16
+ exports.useSaveUserPermissionRequestHandler = useSaveUserPermissionRequestHandler;
17
+ var useDeleteUserPermissionRequestHandler = function () {
18
+ return (0, hooks_1.useLoadingRequestHandler)('DeleteUserPermission');
19
+ };
20
+ exports.useDeleteUserPermissionRequestHandler = useDeleteUserPermissionRequestHandler;
@@ -8,7 +8,7 @@ export type FieldDTO<T extends string = string> = {
8
8
  };
9
9
  export type ConditionDTO = {
10
10
  field: string;
11
- operator: 'lessThan' | 'lessThanOrEqual' | 'lessThanOrEquals' | 'equals' | 'notEquals' | 'greaterThanOrEqual' | 'greaterThanOrEquals' | 'greaterThan' | 'like' | 'contains' | 'notContains' | 'startsWith' | 'endsWith' | 'notLike' | 'inRange' | 'between' | 'isNull' | 'isNotNull' | 'inArray' | 'in' | 'not' | 'and' | 'or';
11
+ operator: 'lessThan' | 'lessThanOrEqual' | 'lessThanOrEquals' | 'equals' | 'notEquals' | 'greaterThanOrEqual' | 'greaterThanOrEquals' | 'greaterThan' | 'like' | 'contains' | 'notContains' | 'startsWith' | 'endsWith' | 'notLike' | 'inRange' | 'between' | 'isNull' | 'inArray' | 'in' | 'not' | 'and' | 'or';
12
12
  value?: string | number | boolean | null | (string | number | boolean | null)[];
13
13
  children?: boolean;
14
14
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@addev-be/ui",
3
- "version": "0.11.7",
3
+ "version": "0.12.0",
4
4
  "type": "module",
5
5
  "scripts": {
6
6
  "watch": "tsc -b --watch",