@bigbinary/neeto-filters-frontend 2.11.20 → 2.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.
- package/README.md +29 -0
- package/dist/index.cjs.js +40 -9
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +41 -11
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/types.d.ts +16 -0
package/README.md
CHANGED
|
@@ -188,6 +188,35 @@ const [filters, setFilters] = useState(() => buildFiltersFromURL([...SAMPLE_FIL
|
|
|
188
188
|
const [selectors, setSelectors] = useState(() => buildSelectorsFromURL(FILTER_COLUMNS));
|
|
189
189
|
```
|
|
190
190
|
|
|
191
|
+
### 5. `buildFilterColumnsFromFields` function
|
|
192
|
+
|
|
193
|
+
The `buildFilterColumnsFromFields` function is used to generate an array of filter columns based on the provided fields and selected field names.
|
|
194
|
+
|
|
195
|
+
#### Parameters
|
|
196
|
+
|
|
197
|
+
- `fields` (array): An array of field objects representing the available fields.
|
|
198
|
+
- `selectedFields` (array, optional): An array of strings representing the selected field names. Defaults to an empty array.
|
|
199
|
+
|
|
200
|
+
```js
|
|
201
|
+
const fields = [
|
|
202
|
+
{
|
|
203
|
+
id: '1',
|
|
204
|
+
name: 'name',
|
|
205
|
+
kind: 'text',
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
id: '2',
|
|
209
|
+
name: 'age',
|
|
210
|
+
kind: 'number',
|
|
211
|
+
},
|
|
212
|
+
// Add more field objects as needed
|
|
213
|
+
];
|
|
214
|
+
|
|
215
|
+
const selectedFields = ['name', 'age'];
|
|
216
|
+
|
|
217
|
+
const filterColumns = buildFilterColumnsFromFields(fields, selectedFields);
|
|
218
|
+
```
|
|
219
|
+
|
|
191
220
|
## Development
|
|
192
221
|
|
|
193
222
|
Install all the dependencies by executing the following command
|
package/dist/index.cjs.js
CHANGED
|
@@ -3545,28 +3545,28 @@ var groupByGroup = ramda.groupBy(function (_ref) {
|
|
|
3545
3545
|
return group || "individual";
|
|
3546
3546
|
});
|
|
3547
3547
|
var isBoolean = function isBoolean(type) {
|
|
3548
|
-
return type === "boolean";
|
|
3548
|
+
return type === "boolean" || type === "custom.boolean";
|
|
3549
3549
|
};
|
|
3550
3550
|
var isDate = function isDate(type) {
|
|
3551
|
-
return type === "date";
|
|
3551
|
+
return type === "date" || type === "custom.date";
|
|
3552
3552
|
};
|
|
3553
3553
|
var isSingleDate = function isSingleDate(type) {
|
|
3554
|
-
return type === "single_date";
|
|
3554
|
+
return type === "single_date" || type === "custom.single_date";
|
|
3555
3555
|
};
|
|
3556
3556
|
var isSingleTime = function isSingleTime(type) {
|
|
3557
|
-
return type === "single_time";
|
|
3557
|
+
return type === "single_time" || type === "custom.single_time";
|
|
3558
3558
|
};
|
|
3559
3559
|
var isTime = function isTime(type) {
|
|
3560
|
-
return type === "time";
|
|
3560
|
+
return type === "time" || type === "custom.time";
|
|
3561
3561
|
};
|
|
3562
3562
|
var isMulti = function isMulti(type) {
|
|
3563
|
-
return type === "multi_option";
|
|
3563
|
+
return type === "multi_option" || type === "custom.multi_option";
|
|
3564
3564
|
};
|
|
3565
3565
|
var isText = function isText(type) {
|
|
3566
|
-
return type === "text";
|
|
3566
|
+
return type === "text" || type === "custom.text";
|
|
3567
3567
|
};
|
|
3568
3568
|
var isDigit = function isDigit(type) {
|
|
3569
|
-
return type === "number" || type === "decimal";
|
|
3569
|
+
return type === "number" || type === "decimal" || type === "custom.number";
|
|
3570
3570
|
};
|
|
3571
3571
|
var isCustomDateRange = function isCustomDateRange(value) {
|
|
3572
3572
|
return !ramda.pluck("value", DATE_OPTIONS).includes(value);
|
|
@@ -4079,6 +4079,36 @@ var buildUrlFromSegment = function buildUrlFromSegment(_ref19) {
|
|
|
4079
4079
|
var getKeywordValueFromUrl = function getKeywordValueFromUrl() {
|
|
4080
4080
|
return utils.getQueryParams()["keyword"] || "";
|
|
4081
4081
|
};
|
|
4082
|
+
var buildFilterColumnsFromFields = function buildFilterColumnsFromFields(fields) {
|
|
4083
|
+
var selectedFields = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
4084
|
+
if (ramda.isEmpty(selectedFields)) {
|
|
4085
|
+
return fields.map(function (field) {
|
|
4086
|
+
var id = field.id,
|
|
4087
|
+
name = field.name,
|
|
4088
|
+
kind = field.kind;
|
|
4089
|
+
return {
|
|
4090
|
+
key: name,
|
|
4091
|
+
node: "".concat(name, ":").concat(id),
|
|
4092
|
+
label: pure.capitalize(name),
|
|
4093
|
+
type: "custom.".concat(kind)
|
|
4094
|
+
};
|
|
4095
|
+
});
|
|
4096
|
+
}
|
|
4097
|
+
return fields.reduce(function (columns, field) {
|
|
4098
|
+
if (selectedFields.includes(field.name)) {
|
|
4099
|
+
var id = field.id,
|
|
4100
|
+
name = field.name,
|
|
4101
|
+
kind = field.kind;
|
|
4102
|
+
columns.push({
|
|
4103
|
+
key: name,
|
|
4104
|
+
node: "".concat(name, ":").concat(id),
|
|
4105
|
+
label: pure.capitalize(name),
|
|
4106
|
+
type: "custom.".concat(kind)
|
|
4107
|
+
});
|
|
4108
|
+
}
|
|
4109
|
+
return columns;
|
|
4110
|
+
}, []);
|
|
4111
|
+
};
|
|
4082
4112
|
|
|
4083
4113
|
var buildCustomDateValue = function buildCustomDateValue(value) {
|
|
4084
4114
|
var isBeforeOrAfter = Math.abs(dayjs__default["default"](value[1]).diff(dayjs__default["default"](value[0]), "year")) >= 90;
|
|
@@ -7594,7 +7624,7 @@ var Text = function Text(_ref) {
|
|
|
7594
7624
|
var ruleOptions = buildRuleOptions({
|
|
7595
7625
|
defaultType: defaultType
|
|
7596
7626
|
});
|
|
7597
|
-
var inputType = defaultType === "text" ? "text" : "number";
|
|
7627
|
+
var inputType = defaultType === "text" || defaultType === "custom.text" ? "text" : "number";
|
|
7598
7628
|
var _useState = React.useState(filter === null || filter === void 0 ? void 0 : filter.value),
|
|
7599
7629
|
_useState2 = _slicedToArray(_useState, 2),
|
|
7600
7630
|
inputValue = _useState2[0],
|
|
@@ -8452,6 +8482,7 @@ instance.use(initReactI18next).init({
|
|
|
8452
8482
|
exports.Bar = Bar;
|
|
8453
8483
|
exports.Filters = Filters;
|
|
8454
8484
|
exports.Segments = index;
|
|
8485
|
+
exports.buildFilterColumnsFromFields = buildFilterColumnsFromFields;
|
|
8455
8486
|
exports.buildFiltersFromURL = buildFiltersFromURL;
|
|
8456
8487
|
exports.buildSelectorsFromURL = buildSelectorsFromURL;
|
|
8457
8488
|
//# sourceMappingURL=index.cjs.js.map
|