@bigbinary/neeto-filters-frontend 4.3.33 → 4.3.34
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.
- package/dist/.ready +1 -1
- package/dist/Bar.js +11 -9
- package/dist/Bar.js.map +1 -1
- package/dist/Filters.js +8 -4
- package/dist/Filters.js.map +1 -1
- package/dist/Segments.js +7 -5
- package/dist/Segments.js.map +1 -1
- package/dist/cjs/Bar.js +11 -9
- package/dist/cjs/Bar.js.map +1 -1
- package/dist/cjs/Filters.js +6 -2
- package/dist/cjs/Filters.js.map +1 -1
- package/dist/cjs/Segments.js +4 -2
- package/dist/cjs/Segments.js.map +1 -1
- package/dist/cjs/index.js +5 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/v2/Bar.js +21 -33
- package/dist/cjs/v2/Bar.js.map +1 -1
- package/dist/cjs/v2/Filters.js +10 -956
- package/dist/cjs/v2/Filters.js.map +1 -1
- package/dist/cjs/v2/Segments.js +10 -22
- package/dist/cjs/v2/Segments.js.map +1 -1
- package/dist/cjs/v2/index.js +11 -23
- package/dist/cjs/v2/index.js.map +1 -1
- package/dist/{constants-8DtAPJaA.js → constants-BaYBNRZa.js} +2 -2
- package/dist/{constants-8DtAPJaA.js.map → constants-BaYBNRZa.js.map} +1 -1
- package/dist/hooks.js +2 -2
- package/dist/{index-00KCfktU.js → index-BCnobjnZ.js} +4 -17
- package/dist/index-BCnobjnZ.js.map +1 -0
- package/dist/index-BD5y7_BW.js +969 -0
- package/dist/index-BD5y7_BW.js.map +1 -0
- package/dist/index-BxEtpFbP.js +301 -0
- package/dist/index-BxEtpFbP.js.map +1 -0
- package/dist/{index-BiqUQPwR.js → index-Bzw5oKqg.js} +39 -158
- package/dist/index-Bzw5oKqg.js.map +1 -0
- package/dist/index-C4AC0OfA.js +967 -0
- package/dist/index-C4AC0OfA.js.map +1 -0
- package/dist/{index-4MKjSNsp.js → index-Cdvbpy-b.js} +7 -125
- package/dist/index-Cdvbpy-b.js.map +1 -0
- package/dist/index-CpgjbwJP.js +299 -0
- package/dist/index-CpgjbwJP.js.map +1 -0
- package/dist/{index-D5wjkRUM.js → index-aOxl-IeV.js} +4 -36
- package/dist/index-aOxl-IeV.js.map +1 -0
- package/dist/index.js +8 -6
- package/dist/index.js.map +1 -1
- package/dist/inject-css-B6qYtOJe.js +6 -0
- package/dist/inject-css-B6qYtOJe.js.map +1 -0
- package/dist/inject-css-C2dztUxs.js +4 -0
- package/dist/inject-css-C2dztUxs.js.map +1 -0
- package/dist/{useSegmentsApi-0Le3BZOo.js → useSegmentsApi-C6mffm-a.js} +2 -2
- package/dist/{useSegmentsApi-0Le3BZOo.js.map → useSegmentsApi-C6mffm-a.js.map} +1 -1
- package/dist/utils-B3464cET.js +126 -0
- package/dist/utils-B3464cET.js.map +1 -0
- package/dist/{utils-Dqmvcb8M.js → utils-BUFBOQlR.js} +3 -3
- package/dist/{utils-Dqmvcb8M.js.map → utils-BUFBOQlR.js.map} +1 -1
- package/dist/utils-Cj2MY2tu.js +38 -0
- package/dist/utils-Cj2MY2tu.js.map +1 -0
- package/dist/utils-CwKBnC3c.js +17 -0
- package/dist/utils-CwKBnC3c.js.map +1 -0
- package/dist/utils-Dh5ByFPA.js +138 -0
- package/dist/utils-Dh5ByFPA.js.map +1 -0
- package/dist/{utils-l0QK_DBo.js → utils-Q-OTPVjq.js} +3 -3
- package/dist/{utils-l0QK_DBo.js.map → utils-Q-OTPVjq.js.map} +1 -1
- package/dist/utils.js +2 -2
- package/dist/v2/Bar.js +13 -25
- package/dist/v2/Bar.js.map +1 -1
- package/dist/v2/Filters.js +17 -963
- package/dist/v2/Filters.js.map +1 -1
- package/dist/v2/Segments.js +13 -25
- package/dist/v2/Segments.js.map +1 -1
- package/dist/v2/index.js +15 -27
- package/dist/v2/index.js.map +1 -1
- package/dist/v2/utils.js +2 -2
- package/package.json +9 -9
- package/dist/index-00KCfktU.js.map +0 -1
- package/dist/index-4MKjSNsp.js.map +0 -1
- package/dist/index-BiqUQPwR.js.map +0 -1
- package/dist/index-BzkSk3Jh.js +0 -5
- package/dist/index-BzkSk3Jh.js.map +0 -1
- package/dist/index-D5wjkRUM.js.map +0 -1
- package/dist/index-DX0qF4mf.js +0 -7
- package/dist/index-DX0qF4mf.js.map +0 -1
|
@@ -7,134 +7,16 @@ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
|
7
7
|
var Select = require('@bigbinary/neetoui/Select');
|
|
8
8
|
var reactI18next = require('react-i18next');
|
|
9
9
|
var utils = require('./utils-CzRCzZ3I.js');
|
|
10
|
-
var
|
|
11
|
-
require('./dayjs-9rsrbiYS.js');
|
|
12
|
-
var utils$1 = require('@bigbinary/neeto-commons-frontend/utils');
|
|
10
|
+
var utils$1 = require('./utils-Dh5ByFPA.js');
|
|
13
11
|
var jsxRuntime = require('react/jsx-runtime');
|
|
14
12
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
15
13
|
var DatePicker = require('@bigbinary/neetoui/DatePicker');
|
|
14
|
+
var constants = require('./constants-DoHD7obf.js');
|
|
16
15
|
var TimePicker = require('@bigbinary/neetoui/TimePicker');
|
|
17
16
|
var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
18
17
|
var Input = require('@bigbinary/neetoui/Input');
|
|
19
18
|
var NeetoUITreeSelect = require('@bigbinary/neetoui/TreeSelect');
|
|
20
19
|
|
|
21
|
-
var buildDropdownValue = function buildDropdownValue(_ref) {
|
|
22
|
-
var defaultType = _ref.defaultType,
|
|
23
|
-
filter = _ref.filter,
|
|
24
|
-
options = _ref.options;
|
|
25
|
-
if (!filter) return null;
|
|
26
|
-
if (utils.isMulti(defaultType) || utils.isTreeSelect(defaultType)) {
|
|
27
|
-
return options.filter(function (_ref2) {
|
|
28
|
-
var value = _ref2.value;
|
|
29
|
-
return filter.value.includes(value);
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
return neetoCist.findBy({
|
|
33
|
-
value: filter.value
|
|
34
|
-
}, options);
|
|
35
|
-
};
|
|
36
|
-
var buildSingleTimeValue = function buildSingleTimeValue(filter) {
|
|
37
|
-
var _findBy2;
|
|
38
|
-
if (!filter) return null;
|
|
39
|
-
return (_findBy2 = neetoCist.findBy({
|
|
40
|
-
value: filter.value
|
|
41
|
-
}, constants.TIME_OPTIONS)) !== null && _findBy2 !== void 0 ? _findBy2 : ramda.last(constants.TIME_OPTIONS);
|
|
42
|
-
};
|
|
43
|
-
var getOtherProps = function getOtherProps(props) {
|
|
44
|
-
return ramda.omit(["key", "node", "label", "type", "values", "model", "showRuleSelector"], props);
|
|
45
|
-
};
|
|
46
|
-
var buildDropdownOptions = function buildDropdownOptions(_ref3) {
|
|
47
|
-
var defaultType = _ref3.defaultType,
|
|
48
|
-
filter = _ref3.filter,
|
|
49
|
-
_ref3$options = _ref3.options,
|
|
50
|
-
options = _ref3$options === void 0 ? [] : _ref3$options;
|
|
51
|
-
if (ramda.isEmpty(options)) {
|
|
52
|
-
if (utils.isDateRange(defaultType)) {
|
|
53
|
-
options = constants.DATE_RANGE_OPTIONS;
|
|
54
|
-
} else if (utils.isTimeRange(defaultType)) {
|
|
55
|
-
options = constants.TIME_RANGE_OPTIONS;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
options = options.map(ramda.modify("value", function (value) {
|
|
59
|
-
return value === null || value === void 0 ? void 0 : value.toString();
|
|
60
|
-
}));
|
|
61
|
-
if (!filter) return options;
|
|
62
|
-
if (utils.isMulti(defaultType)) {
|
|
63
|
-
var selectedOptions = filter.value.map(function (value) {
|
|
64
|
-
return neetoCist.findBy({
|
|
65
|
-
value: value
|
|
66
|
-
}, options) || neetoCist.toLabelAndValue(value);
|
|
67
|
-
});
|
|
68
|
-
var nonSelectedOptions = options.filter(function (option) {
|
|
69
|
-
return !filter.value.includes(option.value);
|
|
70
|
-
});
|
|
71
|
-
return ramda.concat(selectedOptions, nonSelectedOptions);
|
|
72
|
-
}
|
|
73
|
-
if (!neetoCist.findBy({
|
|
74
|
-
value: filter.value
|
|
75
|
-
}, options)) {
|
|
76
|
-
return ramda.append(neetoCist.toLabelAndValue(filter.value), options);
|
|
77
|
-
}
|
|
78
|
-
return options;
|
|
79
|
-
};
|
|
80
|
-
var initializeDateRule = function initializeDateRule(filter) {
|
|
81
|
-
return filter ? neetoCist.findBy({
|
|
82
|
-
value: filter === null || filter === void 0 ? void 0 : filter.value
|
|
83
|
-
}, constants.DATE_OPTIONS) || findDateOption(filter, constants.DATE_OPTIONS) : {};
|
|
84
|
-
};
|
|
85
|
-
var getDateValue = function getDateValue(value, rule) {
|
|
86
|
-
if (ramda.isEmpty(value) || ramda.isNil(value)) {
|
|
87
|
-
return null;
|
|
88
|
-
}
|
|
89
|
-
if (rule.value === "custom-date-range") {
|
|
90
|
-
return value;
|
|
91
|
-
}
|
|
92
|
-
return rule.value === "before" ? utils$1.dayjs(value[1]).add(1, "day") : utils$1.dayjs(value[0]).subtract(1, "day");
|
|
93
|
-
};
|
|
94
|
-
var findDateOption = function findDateOption(filter, options) {
|
|
95
|
-
var value = filter.value;
|
|
96
|
-
var isBeforeOrAfter = utils$1.dayjs(value[1]).diff(utils$1.dayjs(value[0]), "year") >= 90;
|
|
97
|
-
if (ramda.not(isBeforeOrAfter)) {
|
|
98
|
-
return ramda.last(options);
|
|
99
|
-
}
|
|
100
|
-
var currentMoment = utils$1.dayjs();
|
|
101
|
-
var diffWithStart = Math.abs(currentMoment.diff(utils$1.dayjs(value[0]), "year"));
|
|
102
|
-
var diffWithEnd = Math.abs(currentMoment.diff(utils$1.dayjs(value[1]), "year"));
|
|
103
|
-
return diffWithStart < diffWithEnd ? neetoCist.findBy({
|
|
104
|
-
value: "after"
|
|
105
|
-
}, options) : neetoCist.findBy({
|
|
106
|
-
value: "before"
|
|
107
|
-
}, options);
|
|
108
|
-
};
|
|
109
|
-
var buildDateValues = function buildDateValues(dates, selectedRule) {
|
|
110
|
-
if (selectedRule.value === "after") {
|
|
111
|
-
return [dates.add(1, "day"), dates.add(100, "year")];
|
|
112
|
-
} else if (selectedRule.value === "before") {
|
|
113
|
-
return [dates.subtract(100, "year"), dates.subtract(1, "day")];
|
|
114
|
-
}
|
|
115
|
-
return dates;
|
|
116
|
-
};
|
|
117
|
-
var buildHelpIconProps = function buildHelpIconProps(helpIconProps) {
|
|
118
|
-
return ramda.mergeDeepRight(utils.DEFAULT_HELP_ICON_PROPS, helpIconProps);
|
|
119
|
-
};
|
|
120
|
-
var hasInvalidTimes = function hasInvalidTimes(times) {
|
|
121
|
-
if (neetoCist.isNotPresent(times)) return false;
|
|
122
|
-
if (Array.isArray(times)) {
|
|
123
|
-
return times.some(function (time) {
|
|
124
|
-
return time.isValid();
|
|
125
|
-
}) === false;
|
|
126
|
-
}
|
|
127
|
-
return !times.isValid();
|
|
128
|
-
};
|
|
129
|
-
var areCustomTimeRangeValuesNotValid = function areCustomTimeRangeValuesNotValid(times) {
|
|
130
|
-
return !times.every(function (time) {
|
|
131
|
-
return time.isValid();
|
|
132
|
-
});
|
|
133
|
-
};
|
|
134
|
-
var isRuleEmpty = function isRuleEmpty(rule) {
|
|
135
|
-
return ramda.equals(rule, "is_unknown");
|
|
136
|
-
};
|
|
137
|
-
|
|
138
20
|
function ownKeys$7(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
139
21
|
function _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$7(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$7(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
140
22
|
var Boolean = function Boolean(_ref) {
|
|
@@ -150,8 +32,8 @@ var Boolean = function Boolean(_ref) {
|
|
|
150
32
|
_column$helpIconProps = column.helpIconProps,
|
|
151
33
|
helpIconProps = _column$helpIconProps === void 0 ? {} : _column$helpIconProps;
|
|
152
34
|
var options = neetoCist.isNotPresent(values) ? utils.isCheckbox(defaultType) ? utils.CHECKBOX_OPTIONS : utils.DEFAULT_BOOLEAN_OPTIONS : values;
|
|
153
|
-
var otherProps = getOtherProps(column);
|
|
154
|
-
var value = buildDropdownValue({
|
|
35
|
+
var otherProps = utils$1.getOtherProps(column);
|
|
36
|
+
var value = utils$1.buildDropdownValue({
|
|
155
37
|
defaultType: defaultType,
|
|
156
38
|
filter: filter,
|
|
157
39
|
options: options
|
|
@@ -182,7 +64,7 @@ var Boolean = function Boolean(_ref) {
|
|
|
182
64
|
isClearable: true
|
|
183
65
|
}, neetoCist.isNotEmpty(helpIconProps) && {
|
|
184
66
|
labelProps: {
|
|
185
|
-
helpIconProps: buildHelpIconProps(helpIconProps)
|
|
67
|
+
helpIconProps: utils$1.buildHelpIconProps(helpIconProps)
|
|
186
68
|
}
|
|
187
69
|
}), {}, {
|
|
188
70
|
"data-testid": "neeto-filters-".concat(neetoCist.hyphenate(key), "-filter"),
|
|
@@ -203,7 +85,7 @@ var Datetime = function Datetime(_ref) {
|
|
|
203
85
|
filter = _ref.filter,
|
|
204
86
|
handleApplyFilter = _ref.handleApplyFilter,
|
|
205
87
|
autoFocus = _ref.autoFocus;
|
|
206
|
-
var _useState = react.useState(initializeDateRule(filter)),
|
|
88
|
+
var _useState = react.useState(utils$1.initializeDateRule(filter)),
|
|
207
89
|
_useState2 = _slicedToArray(_useState, 2),
|
|
208
90
|
selectedRule = _useState2[0],
|
|
209
91
|
setSelectedRule = _useState2[1];
|
|
@@ -216,7 +98,7 @@ var Datetime = function Datetime(_ref) {
|
|
|
216
98
|
_column$helpIconProps = column.helpIconProps,
|
|
217
99
|
helpIconProps = _column$helpIconProps === void 0 ? {} : _column$helpIconProps;
|
|
218
100
|
var isDatePickerShown = filter && utils.isCustomDateRange(filter.value);
|
|
219
|
-
var otherProps = getOtherProps(column);
|
|
101
|
+
var otherProps = utils$1.getOtherProps(column);
|
|
220
102
|
var handleChange = function handleChange(option) {
|
|
221
103
|
if (ramda.isEmpty(option) || ramda.isNil(option)) {
|
|
222
104
|
handleApplyFilter({
|
|
@@ -245,7 +127,7 @@ var Datetime = function Datetime(_ref) {
|
|
|
245
127
|
column: column,
|
|
246
128
|
defaultType: defaultType,
|
|
247
129
|
option: {
|
|
248
|
-
value: buildDateValues(dates, selectedRule).map(function (date) {
|
|
130
|
+
value: utils$1.buildDateValues(dates, selectedRule).map(function (date) {
|
|
249
131
|
return date.toISOString();
|
|
250
132
|
})
|
|
251
133
|
}
|
|
@@ -270,7 +152,7 @@ var Datetime = function Datetime(_ref) {
|
|
|
270
152
|
})
|
|
271
153
|
}, neetoCist.isNotEmpty(helpIconProps) && {
|
|
272
154
|
labelProps: {
|
|
273
|
-
helpIconProps: buildHelpIconProps(helpIconProps)
|
|
155
|
+
helpIconProps: utils$1.buildHelpIconProps(helpIconProps)
|
|
274
156
|
}
|
|
275
157
|
}), {}, {
|
|
276
158
|
onChange: handleChange
|
|
@@ -278,7 +160,7 @@ var Datetime = function Datetime(_ref) {
|
|
|
278
160
|
"data-testid": "neeto-filters-".concat(neetoCist.hyphenate(key), "-date-range"),
|
|
279
161
|
getPopupContainer: ramda.prop("parentNode"),
|
|
280
162
|
type: (selectedRule === null || selectedRule === void 0 ? void 0 : selectedRule.value) === "custom-date-range" ? "range" : "date",
|
|
281
|
-
value: getDateValue(filter === null || filter === void 0 ? void 0 : filter.value, selectedRule),
|
|
163
|
+
value: utils$1.getDateValue(filter === null || filter === void 0 ? void 0 : filter.value, selectedRule),
|
|
282
164
|
onChange: handleDateRangeChange
|
|
283
165
|
}, otherProps))]
|
|
284
166
|
});
|
|
@@ -305,14 +187,14 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
305
187
|
isClearable = _column$isClearable === void 0 ? true : _column$isClearable,
|
|
306
188
|
_column$helpIconProps = column.helpIconProps,
|
|
307
189
|
helpIconProps = _column$helpIconProps === void 0 ? {} : _column$helpIconProps;
|
|
308
|
-
var otherProps = getOtherProps(column);
|
|
309
|
-
var options = buildDropdownOptions({
|
|
190
|
+
var otherProps = utils$1.getOtherProps(column);
|
|
191
|
+
var options = utils$1.buildDropdownOptions({
|
|
310
192
|
defaultType: defaultType,
|
|
311
193
|
filter: filter,
|
|
312
194
|
options: values
|
|
313
195
|
});
|
|
314
196
|
var dropdownRules = utils.isMulti(defaultType) ? utils.MULTI_DROPDOWN_RULES : utils.SINGLE_DROPDOWN_RULES;
|
|
315
|
-
var value = buildDropdownValue({
|
|
197
|
+
var value = utils$1.buildDropdownValue({
|
|
316
198
|
defaultType: defaultType,
|
|
317
199
|
filter: filter,
|
|
318
200
|
options: options
|
|
@@ -332,8 +214,8 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
332
214
|
return value;
|
|
333
215
|
};
|
|
334
216
|
var handleRuleChange = function handleRuleChange(rule) {
|
|
335
|
-
var isPreviousRuleEmpty = isRuleEmpty(selectedRule.value);
|
|
336
|
-
var isNewRuleEmpty = isRuleEmpty(rule.value);
|
|
217
|
+
var isPreviousRuleEmpty = utils$1.isRuleEmpty(selectedRule.value);
|
|
218
|
+
var isNewRuleEmpty = utils$1.isRuleEmpty(rule.value);
|
|
337
219
|
setSelectedRule(rule);
|
|
338
220
|
if (isPreviousRuleEmpty || !isNewRuleEmpty && neetoCist.isNotPresent(filter === null || filter === void 0 ? void 0 : filter.value)) {
|
|
339
221
|
handleApplyFilter({
|
|
@@ -366,7 +248,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
366
248
|
};
|
|
367
249
|
react.useEffect(function () {
|
|
368
250
|
if (!ramda.isEmpty(filters)) return;
|
|
369
|
-
isRuleEmpty(selectedRule.value) && setSelectedRule(dropdownRules[0]);
|
|
251
|
+
utils$1.isRuleEmpty(selectedRule.value) && setSelectedRule(dropdownRules[0]);
|
|
370
252
|
}, [filters]);
|
|
371
253
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
372
254
|
className: "neeto-filters-pane-filter__item-wrapper",
|
|
@@ -376,7 +258,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
376
258
|
options: dropdownRules,
|
|
377
259
|
value: selectedRule,
|
|
378
260
|
onChange: handleRuleChange
|
|
379
|
-
}), !isRuleEmpty(selectedRule.value) && /*#__PURE__*/jsxRuntime.jsx(Select, _objectSpread$5(_objectSpread$5({
|
|
261
|
+
}), !utils$1.isRuleEmpty(selectedRule.value) && /*#__PURE__*/jsxRuntime.jsx(Select, _objectSpread$5(_objectSpread$5({
|
|
380
262
|
autoFocus: autoFocus,
|
|
381
263
|
options: options,
|
|
382
264
|
value: value,
|
|
@@ -390,7 +272,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
390
272
|
})
|
|
391
273
|
}, neetoCist.isNotEmpty(helpIconProps) && {
|
|
392
274
|
labelProps: {
|
|
393
|
-
helpIconProps: buildHelpIconProps(helpIconProps)
|
|
275
|
+
helpIconProps: utils$1.buildHelpIconProps(helpIconProps)
|
|
394
276
|
}
|
|
395
277
|
}), {}, {
|
|
396
278
|
onChange: handleChange
|
|
@@ -421,7 +303,7 @@ var SingleDatetime = function SingleDatetime(_ref) {
|
|
|
421
303
|
label = column.label,
|
|
422
304
|
_column$helpIconProps = column.helpIconProps,
|
|
423
305
|
helpIconProps = _column$helpIconProps === void 0 ? {} : _column$helpIconProps;
|
|
424
|
-
var otherProps = getOtherProps(column);
|
|
306
|
+
var otherProps = utils$1.getOtherProps(column);
|
|
425
307
|
var datePickerType = selectedRule.value === "between" ? "range" : "date";
|
|
426
308
|
var value = filter === null || filter === void 0 ? void 0 : filter.value;
|
|
427
309
|
|
|
@@ -477,7 +359,7 @@ var SingleDatetime = function SingleDatetime(_ref) {
|
|
|
477
359
|
value: selectedRule
|
|
478
360
|
}, neetoCist.isNotEmpty(helpIconProps) && {
|
|
479
361
|
labelProps: {
|
|
480
|
-
helpIconProps: buildHelpIconProps(helpIconProps)
|
|
362
|
+
helpIconProps: utils$1.buildHelpIconProps(helpIconProps)
|
|
481
363
|
}
|
|
482
364
|
}), {}, {
|
|
483
365
|
onChange: handleRuleChange
|
|
@@ -514,7 +396,7 @@ var SingleTime = function SingleTime(_ref) {
|
|
|
514
396
|
label = column.label,
|
|
515
397
|
_column$helpIconProps = column.helpIconProps,
|
|
516
398
|
helpIconProps = _column$helpIconProps === void 0 ? {} : _column$helpIconProps;
|
|
517
|
-
var otherProps = getOtherProps(column);
|
|
399
|
+
var otherProps = utils$1.getOtherProps(column);
|
|
518
400
|
var timePickerType = selectedRule.value === "between" ? "range" : "time";
|
|
519
401
|
var value = filter === null || filter === void 0 ? void 0 : filter.value;
|
|
520
402
|
react.useEffect(function () {
|
|
@@ -539,13 +421,13 @@ var SingleTime = function SingleTime(_ref) {
|
|
|
539
421
|
handleApplyFilter(updatedFilter);
|
|
540
422
|
};
|
|
541
423
|
var handleChange = function handleChange(times) {
|
|
542
|
-
if (hasInvalidTimes(times)) {
|
|
424
|
+
if (utils$1.hasInvalidTimes(times)) {
|
|
543
425
|
handleApplyFilter({
|
|
544
426
|
_delete: true
|
|
545
427
|
});
|
|
546
428
|
return;
|
|
547
429
|
}
|
|
548
|
-
if (timePickerType === "range" && areCustomTimeRangeValuesNotValid(times)) {
|
|
430
|
+
if (timePickerType === "range" && utils$1.areCustomTimeRangeValuesNotValid(times)) {
|
|
549
431
|
return;
|
|
550
432
|
}
|
|
551
433
|
var value = timePickerType === "range" ? times === null || times === void 0 ? void 0 : times.map(function (time) {
|
|
@@ -570,7 +452,7 @@ var SingleTime = function SingleTime(_ref) {
|
|
|
570
452
|
value: selectedRule
|
|
571
453
|
}, neetoCist.isNotEmpty(helpIconProps) && {
|
|
572
454
|
labelProps: {
|
|
573
|
-
helpIconProps: buildHelpIconProps(helpIconProps)
|
|
455
|
+
helpIconProps: utils$1.buildHelpIconProps(helpIconProps)
|
|
574
456
|
}
|
|
575
457
|
}), {}, {
|
|
576
458
|
onChange: handleRuleChange
|
|
@@ -603,7 +485,7 @@ var Text = function Text(_ref) {
|
|
|
603
485
|
showRuleSelector = _column$showRuleSelec === void 0 ? false : _column$showRuleSelec,
|
|
604
486
|
_column$helpIconProps = column.helpIconProps,
|
|
605
487
|
helpIconProps = _column$helpIconProps === void 0 ? {} : _column$helpIconProps;
|
|
606
|
-
var otherProps = getOtherProps(column);
|
|
488
|
+
var otherProps = utils$1.getOtherProps(column);
|
|
607
489
|
var ruleOptions = utils.buildRuleOptions({
|
|
608
490
|
defaultType: defaultType
|
|
609
491
|
});
|
|
@@ -672,7 +554,7 @@ var Text = function Text(_ref) {
|
|
|
672
554
|
onChange: handleRuleChange
|
|
673
555
|
}, neetoCist.isNotEmpty(helpIconProps) && {
|
|
674
556
|
labelProps: {
|
|
675
|
-
helpIconProps: buildHelpIconProps(helpIconProps)
|
|
557
|
+
helpIconProps: utils$1.buildHelpIconProps(helpIconProps)
|
|
676
558
|
}
|
|
677
559
|
})), /*#__PURE__*/jsxRuntime.jsx(Input, _objectSpread$2(_objectSpread$2({
|
|
678
560
|
autoFocus: autoFocus,
|
|
@@ -682,7 +564,7 @@ var Text = function Text(_ref) {
|
|
|
682
564
|
value: inputValue
|
|
683
565
|
}, neetoCist.isNotEmpty(helpIconProps) && {
|
|
684
566
|
labelProps: {
|
|
685
|
-
helpIconProps: buildHelpIconProps(helpIconProps)
|
|
567
|
+
helpIconProps: utils$1.buildHelpIconProps(helpIconProps)
|
|
686
568
|
}
|
|
687
569
|
}), {}, {
|
|
688
570
|
placeholder: t("neetoFilters.messages.enterResource", {
|
|
@@ -709,8 +591,8 @@ var Time = function Time(_ref) {
|
|
|
709
591
|
label = column.label,
|
|
710
592
|
_column$helpIconProps = column.helpIconProps,
|
|
711
593
|
helpIconProps = _column$helpIconProps === void 0 ? {} : _column$helpIconProps;
|
|
712
|
-
var otherProps = getOtherProps(column);
|
|
713
|
-
var value = buildSingleTimeValue(filter);
|
|
594
|
+
var otherProps = utils$1.getOtherProps(column);
|
|
595
|
+
var value = utils$1.buildSingleTimeValue(filter);
|
|
714
596
|
var isCustomTimeRangeShown = filter && utils.isCustomTimeRange(filter.value);
|
|
715
597
|
var _useTranslation = reactI18next.useTranslation(),
|
|
716
598
|
t = _useTranslation.t;
|
|
@@ -729,13 +611,13 @@ var Time = function Time(_ref) {
|
|
|
729
611
|
handleApplyFilter(updatedFilter);
|
|
730
612
|
};
|
|
731
613
|
var handleTimeRangeChange = function handleTimeRangeChange(times) {
|
|
732
|
-
if (hasInvalidTimes(times)) {
|
|
614
|
+
if (utils$1.hasInvalidTimes(times)) {
|
|
733
615
|
handleApplyFilter({
|
|
734
616
|
_delete: true
|
|
735
617
|
});
|
|
736
618
|
return;
|
|
737
619
|
}
|
|
738
|
-
if (isCustomTimeRangeShown && areCustomTimeRangeValuesNotValid(times)) {
|
|
620
|
+
if (isCustomTimeRangeShown && utils$1.areCustomTimeRangeValuesNotValid(times)) {
|
|
739
621
|
return;
|
|
740
622
|
}
|
|
741
623
|
var updatedFilter = utils.buildUpdatedFilter({
|
|
@@ -764,7 +646,7 @@ var Time = function Time(_ref) {
|
|
|
764
646
|
})
|
|
765
647
|
}, neetoCist.isNotEmpty(helpIconProps) && {
|
|
766
648
|
labelProps: {
|
|
767
|
-
helpIconProps: buildHelpIconProps(helpIconProps)
|
|
649
|
+
helpIconProps: utils$1.buildHelpIconProps(helpIconProps)
|
|
768
650
|
}
|
|
769
651
|
}), {}, {
|
|
770
652
|
onChange: handleChange
|
|
@@ -809,7 +691,7 @@ var TreeSelect = function TreeSelect(_ref) {
|
|
|
809
691
|
setSelectedRule = _useState2[1];
|
|
810
692
|
var _useTranslation = reactI18next.useTranslation(),
|
|
811
693
|
t = _useTranslation.t;
|
|
812
|
-
var selectedOption = buildDropdownValue({
|
|
694
|
+
var selectedOption = utils$1.buildDropdownValue({
|
|
813
695
|
defaultType: defaultType,
|
|
814
696
|
filter: filter,
|
|
815
697
|
options: options
|
|
@@ -827,8 +709,8 @@ var TreeSelect = function TreeSelect(_ref) {
|
|
|
827
709
|
return handleApplyFilter(updatedFilter);
|
|
828
710
|
};
|
|
829
711
|
var handleRuleChange = function handleRuleChange(rule) {
|
|
830
|
-
var isPreviousRuleEmpty = isRuleEmpty(selectedRule.value);
|
|
831
|
-
var isNewRuleEmpty = isRuleEmpty(rule.value);
|
|
712
|
+
var isPreviousRuleEmpty = utils$1.isRuleEmpty(selectedRule.value);
|
|
713
|
+
var isNewRuleEmpty = utils$1.isRuleEmpty(rule.value);
|
|
832
714
|
setSelectedRule(rule);
|
|
833
715
|
if (isPreviousRuleEmpty || !isNewRuleEmpty && neetoCist.isNotPresent(filter === null || filter === void 0 ? void 0 : filter.value)) {
|
|
834
716
|
return handleApplyFilter({
|
|
@@ -851,7 +733,7 @@ var TreeSelect = function TreeSelect(_ref) {
|
|
|
851
733
|
options: utils.TREE_SELECT_RULES,
|
|
852
734
|
value: selectedRule,
|
|
853
735
|
onChange: handleRuleChange
|
|
854
|
-
}), !isRuleEmpty(selectedRule.value) &&
|
|
736
|
+
}), !utils$1.isRuleEmpty(selectedRule.value) &&
|
|
855
737
|
/*#__PURE__*/
|
|
856
738
|
// eslint-disable-next-line @bigbinary/neeto/merge-spread-attributes
|
|
857
739
|
jsxRuntime.jsx(NeetoUITreeSelect, _objectSpread(_objectSpread({
|
|
@@ -870,9 +752,9 @@ var TreeSelect = function TreeSelect(_ref) {
|
|
|
870
752
|
onChange: handleChange
|
|
871
753
|
}, neetoCist.isNotEmpty(helpIconProps) && {
|
|
872
754
|
labelProps: {
|
|
873
|
-
helpIconProps: buildHelpIconProps(helpIconProps)
|
|
755
|
+
helpIconProps: utils$1.buildHelpIconProps(helpIconProps)
|
|
874
756
|
}
|
|
875
|
-
}), getOtherProps(column)))]
|
|
757
|
+
}), utils$1.getOtherProps(column)))]
|
|
876
758
|
});
|
|
877
759
|
};
|
|
878
760
|
var TreeSelect$1 = /*#__PURE__*/react.memo(TreeSelect);
|
|
@@ -970,5 +852,4 @@ var Item = function Item(_ref) {
|
|
|
970
852
|
};
|
|
971
853
|
|
|
972
854
|
exports.Item = Item;
|
|
973
|
-
|
|
974
|
-
//# sourceMappingURL=index-BiqUQPwR.js.map
|
|
855
|
+
//# sourceMappingURL=index-Bzw5oKqg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-Bzw5oKqg.js","sources":["../app/javascript/src/components/Pane/Item/Boolean.jsx","../app/javascript/src/components/Pane/Item/Datetime.jsx","../app/javascript/src/components/Pane/Item/Dropdown.jsx","../app/javascript/src/components/Pane/Item/SingleDatetime.jsx","../app/javascript/src/components/Pane/Item/SingleTime.jsx","../app/javascript/src/components/Pane/Item/Text.jsx","../app/javascript/src/components/Pane/Item/Time.jsx","../app/javascript/src/components/Pane/Item/TreeSelect.jsx","../app/javascript/src/components/Pane/Item/index.jsx"],"sourcesContent":["// type: boolean\n\nimport { memo } from \"react\";\n\nimport { hyphenate, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { Select } from \"neetoui\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { buildUpdatedFilter, isCheckbox } from \"components/utils\";\n\nimport { DEFAULT_BOOLEAN_OPTIONS, CHECKBOX_OPTIONS } from \"./constants\";\nimport { buildDropdownValue, buildHelpIconProps, getOtherProps } from \"./utils\";\n\nconst Boolean = ({ column, filter, handleApplyFilter, autoFocus }) => {\n const {\n key,\n defaultType = column.type,\n label,\n values,\n helpIconProps = {},\n } = column;\n\n const options = isNotPresent(values)\n ? isCheckbox(defaultType)\n ? CHECKBOX_OPTIONS\n : DEFAULT_BOOLEAN_OPTIONS\n : values;\n const otherProps = getOtherProps(column);\n const value = buildDropdownValue({ defaultType, filter, options });\n const { t } = useTranslation();\n\n const handleChange = option => {\n if (isEmpty(option) || isNil(option)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({ column, defaultType, option });\n handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ autoFocus, label, options, value }}\n isClearable\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n data-testid={`neeto-filters-${hyphenate(key)}-filter`}\n strategy=\"fixed\"\n placeholder={t(\"neetoFilters.messages.selectOption\", {\n resource: label,\n })}\n onChange={handleChange}\n {...otherProps}\n />\n </div>\n );\n};\n\nexport default memo(Boolean);\n","// type: date\n\nimport { memo, useState, useEffect } from \"react\";\n\nimport { hyphenate, isNotEmpty } from \"neetocist\";\nimport { DatePicker, Select } from \"neetoui\";\nimport { isEmpty, isNil, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DATE_OPTIONS } from \"common/constants\";\nimport { buildUpdatedFilter, isCustomDateRange } from \"components/utils\";\n\nimport {\n buildDateValues,\n buildHelpIconProps,\n getDateValue,\n getOtherProps,\n initializeDateRule,\n} from \"./utils\";\n\nconst Datetime = ({ column, filter, handleApplyFilter, autoFocus }) => {\n const [selectedRule, setSelectedRule] = useState(initializeDateRule(filter));\n\n const { t } = useTranslation();\n\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const isDatePickerShown = filter && isCustomDateRange(filter.value);\n const otherProps = getOtherProps(column);\n\n const handleChange = option => {\n if (isEmpty(option) || isNil(option)) {\n handleApplyFilter({ _delete: true });\n setSelectedRule({});\n\n return;\n }\n setSelectedRule(option);\n\n const updatedFilter = buildUpdatedFilter({ column, defaultType, option });\n handleApplyFilter(updatedFilter);\n };\n\n const handleDateRangeChange = dates => {\n if (isEmpty(dates) || isNil(dates)) {\n handleApplyFilter({ _delete: true });\n setSelectedRule({});\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {\n value: buildDateValues(dates, selectedRule).map(date =>\n date.toISOString()\n ),\n },\n });\n handleApplyFilter(updatedFilter);\n };\n\n useEffect(() => {\n isNil(filter) && setSelectedRule({});\n }, [filter]);\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ autoFocus, label }}\n isClearable\n data-testid={`neeto-filters-${hyphenate(key)}-filter`}\n options={DATE_OPTIONS}\n strategy=\"fixed\"\n value={selectedRule}\n placeholder={t(\"neetoFilters.messages.selectResource\", {\n resource: label,\n })}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleChange}\n />\n {isDatePickerShown && (\n <DatePicker\n data-testid={`neeto-filters-${hyphenate(key)}-date-range`}\n getPopupContainer={prop(\"parentNode\")}\n type={selectedRule?.value === \"custom-date-range\" ? \"range\" : \"date\"}\n value={getDateValue(filter?.value, selectedRule)}\n onChange={handleDateRangeChange}\n {...otherProps}\n />\n )}\n </div>\n );\n};\n\nexport default memo(Datetime);\n","// type: single_option, multi_option\n\nimport { memo, useEffect, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { Select } from \"neetoui\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { MULTI_DROPDOWN_RULES, SINGLE_DROPDOWN_RULES } from \"./constants\";\nimport {\n buildDropdownValue,\n buildDropdownOptions,\n getOtherProps,\n buildHelpIconProps,\n isRuleEmpty,\n} from \"./utils\";\n\nimport { buildUpdatedFilter, isMulti } from \"../../utils\";\n\nconst Dropdown = ({\n column,\n filter,\n handleApplyFilter,\n autoFocus,\n filters,\n}) => {\n const {\n key,\n label,\n values,\n defaultValue,\n defaultType = column.type,\n showRuleSelector = false,\n isClearable = true,\n helpIconProps = {},\n } = column;\n const otherProps = getOtherProps(column);\n const options = buildDropdownOptions({\n defaultType,\n filter,\n options: values,\n });\n\n const dropdownRules = isMulti(defaultType)\n ? MULTI_DROPDOWN_RULES\n : SINGLE_DROPDOWN_RULES;\n const value = buildDropdownValue({ defaultType, filter, options });\n const [selectedRule, setSelectedRule] = useState(\n findBy({ value: filter?.rule }, dropdownRules) || dropdownRules[0]\n );\n const { t } = useTranslation();\n\n const getOption = (isSelectedRuleEmpty, options, value) => {\n if (isSelectedRuleEmpty) {\n return isMulti(defaultType) ? [options[0]] : options[0];\n }\n\n return value;\n };\n\n const handleRuleChange = rule => {\n const isPreviousRuleEmpty = isRuleEmpty(selectedRule.value);\n const isNewRuleEmpty = isRuleEmpty(rule.value);\n setSelectedRule(rule);\n\n if (\n isPreviousRuleEmpty ||\n (!isNewRuleEmpty && isNotPresent(filter?.value))\n ) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n rule: rule.value,\n option: getOption(isNewRuleEmpty, options, value),\n });\n\n handleApplyFilter(updatedFilter);\n };\n\n const handleChange = option => {\n if (isEmpty(option) || isNil(option)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option,\n rule: selectedRule.value,\n });\n\n handleApplyFilter(updatedFilter);\n };\n\n useEffect(() => {\n if (!isEmpty(filters)) return;\n isRuleEmpty(selectedRule.value) && setSelectedRule(dropdownRules[0]);\n }, [filters]);\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n {showRuleSelector && (\n <Select\n {...{ label }}\n defaultValue={dropdownRules[0]}\n options={dropdownRules}\n value={selectedRule}\n onChange={handleRuleChange}\n />\n )}\n {!isRuleEmpty(selectedRule.value) && (\n <Select\n {...{ autoFocus, options, value }}\n data-testid={`neeto-filters-${hyphenate(key)}-filter`}\n isClearable={!defaultValue && isClearable}\n isMulti={isMulti(defaultType)}\n label={!showRuleSelector && label}\n strategy=\"fixed\"\n placeholder={t(\"neetoFilters.messages.selectResource\", {\n resource: label,\n })}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleChange}\n {...otherProps}\n />\n )}\n </div>\n );\n};\n\nexport default memo(Dropdown);\n","// type: single_date\n\nimport { useEffect, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\nimport { DatePicker, Select } from \"neetoui\";\nimport { isEmpty, isNil, prop } from \"ramda\";\n\nimport { SINGLE_DATE_OPTIONS } from \"common/constants\";\nimport { buildUpdatedFilter } from \"components/utils\";\n\nimport { buildHelpIconProps, getOtherProps } from \"./utils\";\n\nconst SingleDatetime = ({\n column,\n filter,\n filters,\n handleApplyFilter,\n autoFocus,\n}) => {\n const [selectedRule, setSelectedRule] = useState(\n () =>\n findBy({ value: filter?.rule }, SINGLE_DATE_OPTIONS) ||\n SINGLE_DATE_OPTIONS[0]\n );\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const otherProps = getOtherProps(column);\n const datePickerType = selectedRule.value === \"between\" ? \"range\" : \"date\";\n const value = filter?.value;\n\n // Reset states when \"Clear filters\" button is clicked.\n useEffect(() => {\n if (!isEmpty(filters)) return;\n setSelectedRule(SINGLE_DATE_OPTIONS[0]);\n }, [filters]);\n\n const handleRuleChange = ruleOption => {\n setSelectedRule(ruleOption);\n\n // Clear value if switched between incompatable types\n let updateValue = value;\n if (\n (datePickerType === \"range\" && ruleOption.value !== \"between\") ||\n (datePickerType === \"date\" && ruleOption.value === \"between\")\n ) {\n updateValue = \"\";\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: ruleOption.value,\n value: updateValue,\n });\n handleApplyFilter(updatedFilter);\n };\n\n const handleChange = dates => {\n if (isEmpty(dates) || isNil(dates)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const value =\n datePickerType === \"range\"\n ? dates.map(date => date.toISOString())\n : dates;\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: selectedRule.value,\n value,\n });\n handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ label }}\n data-testid={`neeto-filters-${hyphenate(key)}-filter-rule`}\n defaultValue={SINGLE_DATE_OPTIONS[0]}\n options={SINGLE_DATE_OPTIONS}\n strategy=\"fixed\"\n value={selectedRule}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleRuleChange}\n />\n <DatePicker\n {...{ autoFocus, value }}\n data-testid={`neeto-filters-${hyphenate(key)}-filter`}\n getPopupContainer={prop(\"parentNode\")}\n type={datePickerType}\n onChange={handleChange}\n {...otherProps}\n />\n </div>\n );\n};\n\nexport default SingleDatetime;\n","import { useEffect, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\nimport { Select, TimePicker } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport { SINGLE_TIME_OPTIONS } from \"common/constants\";\nimport { buildUpdatedFilter } from \"components/utils\";\n\nimport { TIME_FORMAT } from \"./constants\";\nimport {\n areCustomTimeRangeValuesNotValid,\n buildHelpIconProps,\n getOtherProps,\n hasInvalidTimes,\n} from \"./utils\";\n\nconst SingleTime = ({\n column,\n filter,\n filters,\n handleApplyFilter,\n autoFocus,\n}) => {\n const [selectedRule, setSelectedRule] = useState(\n () =>\n findBy({ value: filter?.rule }, SINGLE_TIME_OPTIONS) ||\n SINGLE_TIME_OPTIONS[0]\n );\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const otherProps = getOtherProps(column);\n const timePickerType = selectedRule.value === \"between\" ? \"range\" : \"time\";\n const value = filter?.value;\n\n useEffect(() => {\n if (!isEmpty(filters)) return;\n setSelectedRule(SINGLE_TIME_OPTIONS[0]);\n }, [filters]);\n\n const handleRuleChange = ruleOption => {\n setSelectedRule(ruleOption);\n\n // Clear value if switched between incompatible types\n let updateValue = value;\n if (\n (timePickerType === \"range\" && ruleOption.value !== \"between\") ||\n (timePickerType === \"time\" && ruleOption.value === \"between\")\n ) {\n updateValue = \"\";\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: ruleOption.value,\n value: updateValue,\n });\n handleApplyFilter(updatedFilter);\n };\n\n const handleChange = times => {\n if (hasInvalidTimes(times)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n if (timePickerType === \"range\" && areCustomTimeRangeValuesNotValid(times)) {\n return;\n }\n\n const value =\n timePickerType === \"range\"\n ? times?.map(time => time.toISOString())\n : times?.toISOString();\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: selectedRule.value,\n value,\n });\n handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ label }}\n defaultValue={SINGLE_TIME_OPTIONS[0]}\n options={SINGLE_TIME_OPTIONS}\n strategy=\"fixed\"\n value={selectedRule}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleRuleChange}\n />\n <TimePicker\n {...{ autoFocus, value }}\n className=\"w-full\"\n data-testid={`neeto-filters-${hyphenate(key)}-filter`}\n format={TIME_FORMAT}\n type={timePickerType}\n onChange={handleChange}\n {...otherProps}\n />\n </div>\n );\n};\n\nexport default SingleTime;\n","// type: text, number, decimal\nimport { useEffect, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { Input, Select } from \"neetoui\";\nimport { equals, isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n buildRuleOptions,\n buildUpdatedFilter,\n isUndefinedOrEmpty,\n} from \"components/utils\";\n\nimport { buildHelpIconProps, getOtherProps } from \"./utils\";\n\nconst Text = ({\n column,\n filter,\n filters,\n handleApplyFilter,\n autoFocus,\n onClose,\n}) => {\n const {\n key,\n defaultType = column.type,\n label,\n showRuleSelector = false,\n helpIconProps = {},\n } = column;\n const otherProps = getOtherProps(column);\n const ruleOptions = buildRuleOptions({ defaultType });\n const inputType =\n defaultType === \"text\" || defaultType === \"custom.text\" ? \"text\" : \"number\";\n\n const [inputValue, setInputValue] = useState(filter?.value);\n const [selectedRule, setSelectedRule] = useState(\n () => findBy({ value: filter?.rule }, ruleOptions) || ruleOptions[0]\n );\n const debouncedInputValue = useDebounce(inputValue);\n const { t } = useTranslation();\n\n const handleUpdateAndApplyFilter = (\n value = debouncedInputValue,\n rule = selectedRule\n ) => {\n if (equals(filter?.value, value) && equals(selectedRule, rule)) return;\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: rule.value,\n value: value.trim(),\n });\n handleApplyFilter(updatedFilter);\n };\n\n const handleKeydown = e => {\n if (!(e.key === \"Enter\")) return;\n handleUpdateAndApplyFilter(inputValue);\n onClose();\n };\n\n const handleRuleChange = ruleOption => {\n setSelectedRule(ruleOption);\n if (!debouncedInputValue) return;\n handleUpdateAndApplyFilter(debouncedInputValue, ruleOption);\n };\n\n // Reset states when \"Clear filters\" button is clicked.\n useEffect(() => {\n (isEmpty(filters) || isNil(filter)) && setInputValue(\"\");\n }, [filter]);\n\n useEffect(() => {\n if (!debouncedInputValue) {\n !isUndefinedOrEmpty(filter) && handleApplyFilter({ _delete: true });\n\n return;\n }\n\n handleUpdateAndApplyFilter();\n }, [debouncedInputValue]);\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n {showRuleSelector && (\n <Select\n {...{ label }}\n data-testid={`neeto-filters-${hyphenate(key)}-filter-rule`}\n defaultValue={ruleOptions[0]}\n options={ruleOptions}\n strategy=\"fixed\"\n value={selectedRule}\n onChange={handleRuleChange}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n />\n )}\n <Input\n {...{ autoFocus }}\n data-testid={`neeto-filters-${hyphenate(key)}-filter`}\n label={!showRuleSelector && label}\n type={inputType}\n value={inputValue}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n placeholder={t(\"neetoFilters.messages.enterResource\", {\n resource: label,\n })}\n onChange={event => setInputValue(event.target.value)}\n onKeyDown={handleKeydown}\n {...otherProps}\n />\n </div>\n );\n};\n\nexport default Text;\n","// type: time\n\nimport { memo } from \"react\";\n\nimport { hyphenate, isNotEmpty } from \"neetocist\";\nimport { Select, TimePicker } from \"neetoui\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { TIME_OPTIONS } from \"common/constants\";\nimport { buildUpdatedFilter, isCustomTimeRange } from \"components/utils\";\n\nimport { TIME_FORMAT } from \"./constants\";\nimport {\n areCustomTimeRangeValuesNotValid,\n buildHelpIconProps,\n buildSingleTimeValue,\n getOtherProps,\n hasInvalidTimes,\n} from \"./utils\";\n\nconst Time = ({ column, filter, handleApplyFilter, autoFocus }) => {\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const otherProps = getOtherProps(column);\n const value = buildSingleTimeValue(filter);\n const isCustomTimeRangeShown = filter && isCustomTimeRange(filter.value);\n\n const { t } = useTranslation();\n\n const handleChange = option => {\n if (isEmpty(option) || isNil(option)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({ column, defaultType, option });\n handleApplyFilter(updatedFilter);\n };\n\n const handleTimeRangeChange = times => {\n if (hasInvalidTimes(times)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n if (isCustomTimeRangeShown && areCustomTimeRangeValuesNotValid(times)) {\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: { value: times.map(time => time.toISOString()) },\n });\n handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ autoFocus, label, value }}\n isClearable\n data-testid={`neeto-filters-${hyphenate(key)}-filter`}\n options={TIME_OPTIONS}\n strategy=\"fixed\"\n placeholder={t(\"neetoFilters.messages.selectResource\", {\n resource: label,\n })}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleChange}\n />\n {isCustomTimeRangeShown && (\n <TimePicker\n className=\"w-full\"\n data-testid={`neeto-filters-${hyphenate(key)}-date-range`}\n format={TIME_FORMAT}\n type=\"range\"\n value={filter.value}\n onChange={handleTimeRangeChange}\n {...otherProps}\n />\n )}\n </div>\n );\n};\n\nexport default memo(Time);\n","// type: tree_select\n\nimport { memo, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { Select, TreeSelect as NeetoUITreeSelect } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { buildUpdatedFilter } from \"components/utils\";\n\nimport { TREE_SELECT_RULES } from \"./constants\";\nimport {\n buildDropdownValue,\n buildHelpIconProps,\n getOtherProps,\n isRuleEmpty,\n} from \"./utils\";\n\nconst TreeSelect = ({ autoFocus, column, filter, handleApplyFilter }) => {\n const {\n key,\n label,\n defaultType = column.type,\n defaultValue,\n helpIconProps = {},\n isClearable = true,\n showRuleSelector = false,\n values: options,\n } = column;\n\n const initialRule =\n findBy({ value: filter?.rule }, TREE_SELECT_RULES) ?? TREE_SELECT_RULES[0];\n const [selectedRule, setSelectedRule] = useState(initialRule);\n\n const { t } = useTranslation();\n\n const selectedOption = buildDropdownValue({ defaultType, filter, options });\n\n const handleChange = option => {\n if (isNotPresent(option)) return handleApplyFilter({ _delete: true });\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option,\n rule: selectedRule.value,\n });\n\n return handleApplyFilter(updatedFilter);\n };\n\n const handleRuleChange = rule => {\n const isPreviousRuleEmpty = isRuleEmpty(selectedRule.value);\n const isNewRuleEmpty = isRuleEmpty(rule.value);\n setSelectedRule(rule);\n\n if (\n isPreviousRuleEmpty ||\n (!isNewRuleEmpty && isNotPresent(filter?.value))\n ) {\n return handleApplyFilter({ _delete: true });\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: isNewRuleEmpty ? [options[0]] : selectedOption,\n rule: rule.value,\n });\n\n return handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n {showRuleSelector && (\n <Select\n {...{ label }}\n defaultValue={TREE_SELECT_RULES[0]}\n options={TREE_SELECT_RULES}\n value={selectedRule}\n onChange={handleRuleChange}\n />\n )}\n {!isRuleEmpty(selectedRule.value) && (\n // eslint-disable-next-line @bigbinary/neeto/merge-spread-attributes\n <NeetoUITreeSelect\n {...{ autoFocus }}\n multiple\n showSearch\n treeDataSimpleMode\n allowClear={!defaultValue && isClearable}\n data-testid={`neeto-filters-${hyphenate(key)}-filter`}\n label={!showRuleSelector && label}\n treeData={options}\n value={selectedOption}\n placeholder={t(\"neetoFilters.messages.selectResource\", {\n resource: label,\n })}\n onChange={handleChange}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n {...getOtherProps(column)}\n />\n )}\n </div>\n );\n};\n\nexport default memo(TreeSelect);\n","import { useMemo } from \"react\";\n\nimport { findBy, removeBy, replaceBy, noop } from \"neetocist\";\nimport { append } from \"ramda\";\n\nimport Boolean from \"./Boolean\";\nimport Datetime from \"./Datetime\";\nimport Dropdown from \"./Dropdown\";\nimport SingleDatetime from \"./SingleDatetime\";\nimport SingleTime from \"./SingleTime\";\nimport Text from \"./Text\";\nimport Time from \"./Time\";\nimport TreeSelect from \"./TreeSelect\";\n\nimport {\n isBoolean,\n isCheckbox,\n isDate,\n isDigit,\n isSingleDate,\n isSingleTime,\n isText,\n isTime,\n isTreeSelect,\n} from \"../../utils\";\n\nconst Item = ({ column, filters, onChange, autoFocus, onClose = noop }) => {\n const { key, defaultType = column.type } = column;\n\n const filter = useMemo(() => findBy({ key }, filters), [filters, key]);\n\n const handleApplyFilter = updatedFilter => {\n if (updatedFilter._delete) onChange(removeBy({ key }, filters));\n else if (!filter) onChange(append(updatedFilter, filters));\n else onChange(replaceBy({ key }, updatedFilter, filters));\n };\n\n if (isText(defaultType) || isDigit(defaultType)) {\n return (\n <Text\n {...{ autoFocus, column, filter, filters, handleApplyFilter, onClose }}\n />\n );\n }\n\n if (isDate(defaultType)) {\n return <Datetime {...{ autoFocus, column, filter, handleApplyFilter }} />;\n }\n\n if (isTime(defaultType)) {\n return <Time {...{ autoFocus, column, filter, handleApplyFilter }} />;\n }\n\n if (isSingleDate(defaultType)) {\n return (\n <SingleDatetime\n {...{ autoFocus, column, filter, filters, handleApplyFilter }}\n />\n );\n }\n\n if (isSingleTime(defaultType)) {\n return (\n <SingleTime\n {...{ autoFocus, column, filter, filters, handleApplyFilter }}\n />\n );\n }\n\n if (isBoolean(defaultType) || isCheckbox(defaultType)) {\n return (\n <Boolean\n {...{ autoFocus, column, defaultType, filter, handleApplyFilter }}\n />\n );\n }\n\n if (isTreeSelect(defaultType)) {\n return <TreeSelect {...{ autoFocus, column, filter, handleApplyFilter }} />;\n }\n\n return (\n <Dropdown {...{ autoFocus, column, filter, filters, handleApplyFilter }} />\n );\n};\n\nexport default Item;\n"],"names":["Boolean","_ref","column","filter","handleApplyFilter","autoFocus","key","_column$defaultType","defaultType","type","label","values","_column$helpIconProps","helpIconProps","options","isNotPresent","isCheckbox","CHECKBOX_OPTIONS","DEFAULT_BOOLEAN_OPTIONS","otherProps","getOtherProps","value","buildDropdownValue","_useTranslation","useTranslation","t","handleChange","option","isEmpty","isNil","_delete","updatedFilter","buildUpdatedFilter","_jsx","className","children","Select","_objectSpread","isClearable","isNotEmpty","labelProps","buildHelpIconProps","concat","hyphenate","strategy","placeholder","resource","onChange","memo","Datetime","_useState","useState","initializeDateRule","_useState2","_slicedToArray","selectedRule","setSelectedRule","isDatePickerShown","isCustomDateRange","handleDateRangeChange","dates","buildDateValues","map","date","toISOString","useEffect","_jsxs","DATE_OPTIONS","DatePicker","getPopupContainer","prop","getDateValue","Dropdown","filters","defaultValue","_column$showRuleSelec","showRuleSelector","_column$isClearable","buildDropdownOptions","dropdownRules","isMulti","MULTI_DROPDOWN_RULES","SINGLE_DROPDOWN_RULES","findBy","rule","getOption","isSelectedRuleEmpty","handleRuleChange","isPreviousRuleEmpty","isRuleEmpty","isNewRuleEmpty","SingleDatetime","SINGLE_DATE_OPTIONS","datePickerType","ruleOption","updateValue","SingleTime","SINGLE_TIME_OPTIONS","timePickerType","times","hasInvalidTimes","areCustomTimeRangeValuesNotValid","time","TimePicker","format","TIME_FORMAT","Text","onClose","ruleOptions","buildRuleOptions","inputType","inputValue","setInputValue","_useState3","_useState4","debouncedInputValue","useDebounce","handleUpdateAndApplyFilter","arguments","length","undefined","equals","trim","handleKeydown","e","isUndefinedOrEmpty","Input","event","target","onKeyDown","Time","buildSingleTimeValue","isCustomTimeRangeShown","isCustomTimeRange","handleTimeRangeChange","TIME_OPTIONS","TreeSelect","_findBy","initialRule","TREE_SELECT_RULES","selectedOption","NeetoUITreeSelect","multiple","showSearch","treeDataSimpleMode","allowClear","treeData","Item","_ref$onClose","noop","useMemo","removeBy","append","replaceBy","isText","isDigit","isDate","isTime","isSingleDate","isSingleTime","isBoolean","isTreeSelect"],"mappings":"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"}
|