@bigbinary/neeto-molecules 4.1.50 → 4.1.52
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/CalendarView.js +2 -1
- package/dist/CalendarView.js.map +1 -1
- package/dist/{Columns-BB50-jks.js → Columns-D68XA-e7.js} +2 -53
- package/dist/Columns-D68XA-e7.js.map +1 -0
- package/dist/Columns-cUgR6NTO.js +502 -0
- package/dist/Columns-cUgR6NTO.js.map +1 -0
- package/dist/Columns.js +2 -1
- package/dist/Columns.js.map +1 -1
- package/dist/StatusDropdown.js +1 -0
- package/dist/StatusDropdown.js.map +1 -1
- package/dist/SubHeader.js +2 -1
- package/dist/SubHeader.js.map +1 -1
- package/dist/Taxonomy.js +2 -1
- package/dist/Taxonomy.js.map +1 -1
- package/dist/circle-question-mark-Dib48f5Z.js +19 -0
- package/dist/circle-question-mark-Dib48f5Z.js.map +1 -0
- package/dist/cjs/CalendarView.js +2 -1
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/{Columns-jm_CUnLP.js → Columns-BACqpEQU.js} +3 -54
- package/dist/cjs/Columns-BACqpEQU.js.map +1 -0
- package/dist/cjs/Columns-D3eocaeY.js +508 -0
- package/dist/cjs/Columns-D3eocaeY.js.map +1 -0
- package/dist/cjs/Columns.js +2 -1
- package/dist/cjs/Columns.js.map +1 -1
- package/dist/cjs/StatusDropdown.js +1 -0
- package/dist/cjs/StatusDropdown.js.map +1 -1
- package/dist/cjs/SubHeader.js +2 -1
- package/dist/cjs/SubHeader.js.map +1 -1
- package/dist/cjs/Taxonomy.js +2 -1
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/dist/cjs/circle-question-mark-kxBMPyWQ.js +21 -0
- package/dist/cjs/circle-question-mark-kxBMPyWQ.js.map +1 -0
- package/dist/cjs/ellipsis-BcfLTtl5.js +21 -0
- package/dist/cjs/ellipsis-BcfLTtl5.js.map +1 -0
- package/dist/cjs/utilities.esm-jwIHISzF.js +58 -0
- package/dist/cjs/utilities.esm-jwIHISzF.js.map +1 -0
- package/dist/cjs/v2/Breadcrumbs.js +50 -0
- package/dist/cjs/v2/Breadcrumbs.js.map +1 -0
- package/dist/cjs/v2/Columns.js +34 -0
- package/dist/cjs/v2/Columns.js.map +1 -0
- package/dist/cjs/v2/Container.js +34 -0
- package/dist/cjs/v2/Container.js.map +1 -0
- package/dist/cjs/v2/FloatingActionMenu.js +10 -24
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/Header.js +128 -0
- package/dist/cjs/v2/Header.js.map +1 -0
- package/dist/cjs/v2/HelpPopover.js +93 -0
- package/dist/cjs/v2/HelpPopover.js.map +1 -0
- package/dist/cjs/v2/MoreDropdown.js +201 -0
- package/dist/cjs/v2/MoreDropdown.js.map +1 -0
- package/dist/cjs/v2/Search.js +129 -0
- package/dist/cjs/v2/Search.js.map +1 -0
- package/dist/cjs/v2/Sidebar.js +3 -17
- package/dist/cjs/v2/Sidebar.js.map +1 -1
- package/dist/cjs/v2/SubHeader.js +246 -0
- package/dist/cjs/v2/SubHeader.js.map +1 -0
- package/dist/ellipsis-DpI9xqUK.js +19 -0
- package/dist/ellipsis-DpI9xqUK.js.map +1 -0
- package/dist/utilities.esm-CS21Daln.js +56 -0
- package/dist/utilities.esm-CS21Daln.js.map +1 -0
- package/dist/v2/Breadcrumbs.js +48 -0
- package/dist/v2/Breadcrumbs.js.map +1 -0
- package/dist/v2/Columns.js +22 -0
- package/dist/v2/Columns.js.map +1 -0
- package/dist/v2/Container.js +32 -0
- package/dist/v2/Container.js.map +1 -0
- package/dist/v2/FloatingActionMenu.js +8 -22
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/Header.js +126 -0
- package/dist/v2/Header.js.map +1 -0
- package/dist/v2/HelpPopover.js +91 -0
- package/dist/v2/HelpPopover.js.map +1 -0
- package/dist/v2/MoreDropdown.js +199 -0
- package/dist/v2/MoreDropdown.js.map +1 -0
- package/dist/v2/Search.js +127 -0
- package/dist/v2/Search.js.map +1 -0
- package/dist/v2/Sidebar.js +2 -16
- package/dist/v2/Sidebar.js.map +1 -1
- package/dist/v2/SubHeader.js +244 -0
- package/dist/v2/SubHeader.js.map +1 -0
- package/package.json +1 -1
- package/types/v2/Breadcrumbs.d.ts +12 -0
- package/types/v2/Columns.d.ts +42 -0
- package/types/v2/Container.d.ts +8 -0
- package/types/v2/Header.d.ts +22 -0
- package/types/v2/HelpPopover.d.ts +23 -0
- package/types/v2/MoreDropdown.d.ts +42 -0
- package/types/v2/Search.d.ts +16 -0
- package/types/v2/SubHeader.d.ts +51 -0
- package/dist/Columns-BB50-jks.js.map +0 -1
- package/dist/cjs/Columns-jm_CUnLP.js.map +0 -1
|
@@ -0,0 +1,502 @@
|
|
|
1
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
|
+
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
4
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
5
|
+
import { useCallback, useMemo, useEffect, useState, createElement } from 'react';
|
|
6
|
+
import { Label, Checkbox, Popover, PopoverTrigger, Button, PopoverContent, Input, Separator } from '@bigbinary/neeto-atoms';
|
|
7
|
+
import { DndContext, closestCenter } from '@dnd-kit/core';
|
|
8
|
+
import { useSortable, SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable';
|
|
9
|
+
import i18next from 'i18next';
|
|
10
|
+
import { isNotEqualDeep, isNotEmpty, noop, removeBy, findIndexBy } from '@bigbinary/neeto-cist';
|
|
11
|
+
import { isEmpty, prop, pluck, filter, includes, trim, toLower, assoc } from 'ramda';
|
|
12
|
+
import { useTranslation } from 'react-i18next';
|
|
13
|
+
import { C as CSS } from './utilities.esm-CS21Daln.js';
|
|
14
|
+
import classnames from 'classnames';
|
|
15
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
16
|
+
import { c as createLucideIcon } from './createLucideIcon-mNMhCCpf.js';
|
|
17
|
+
import { useQuery } from '@tanstack/react-query';
|
|
18
|
+
import useMutationWithInvalidation from '@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation';
|
|
19
|
+
import axios from 'axios';
|
|
20
|
+
import { S as Search } from './search-DCgpNjip.js';
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* @license lucide-react v1.7.0 - ISC
|
|
24
|
+
*
|
|
25
|
+
* This source code is licensed under the ISC license.
|
|
26
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
const __iconNode = [
|
|
31
|
+
["circle", { cx: "9", cy: "12", r: "1", key: "1vctgf" }],
|
|
32
|
+
["circle", { cx: "9", cy: "5", r: "1", key: "hp0tcf" }],
|
|
33
|
+
["circle", { cx: "9", cy: "19", r: "1", key: "fkjjf6" }],
|
|
34
|
+
["circle", { cx: "15", cy: "12", r: "1", key: "1tmaij" }],
|
|
35
|
+
["circle", { cx: "15", cy: "5", r: "1", key: "19l28e" }],
|
|
36
|
+
["circle", { cx: "15", cy: "19", r: "1", key: "f4zoj3" }]
|
|
37
|
+
];
|
|
38
|
+
const GripVertical = createLucideIcon("grip-vertical", __iconNode);
|
|
39
|
+
|
|
40
|
+
function ownKeys$3(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; }
|
|
41
|
+
function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
42
|
+
var Item = function Item(_ref) {
|
|
43
|
+
var _active$data, _over$data;
|
|
44
|
+
var column = _ref.column,
|
|
45
|
+
hiddenColumns = _ref.hiddenColumns,
|
|
46
|
+
checkboxProps = _ref.checkboxProps,
|
|
47
|
+
onToggle = _ref.onToggle,
|
|
48
|
+
isTableConfigurationFetching = _ref.isTableConfigurationFetching;
|
|
49
|
+
var key = column.key,
|
|
50
|
+
title = column.title;
|
|
51
|
+
var _useSortable = useSortable({
|
|
52
|
+
id: key
|
|
53
|
+
}),
|
|
54
|
+
attributes = _useSortable.attributes,
|
|
55
|
+
listeners = _useSortable.listeners,
|
|
56
|
+
setNodeRef = _useSortable.setNodeRef,
|
|
57
|
+
transform = _useSortable.transform,
|
|
58
|
+
transition = _useSortable.transition,
|
|
59
|
+
isDragging = _useSortable.isDragging,
|
|
60
|
+
isOver = _useSortable.isOver,
|
|
61
|
+
over = _useSortable.over,
|
|
62
|
+
active = _useSortable.active;
|
|
63
|
+
var dragStyle = {
|
|
64
|
+
transform: isDragging ? CSS.Transform.toString(transform) : undefined,
|
|
65
|
+
transition: transition,
|
|
66
|
+
opacity: isDragging ? 0.5 : 1
|
|
67
|
+
};
|
|
68
|
+
var isIndicatorVisible = !isDragging && isOver;
|
|
69
|
+
var draggedIndex = active === null || active === void 0 || (_active$data = active.data) === null || _active$data === void 0 || (_active$data = _active$data.current) === null || _active$data === void 0 || (_active$data = _active$data.sortable) === null || _active$data === void 0 ? void 0 : _active$data.index;
|
|
70
|
+
var targetIndex = over === null || over === void 0 || (_over$data = over.data) === null || _over$data === void 0 || (_over$data = _over$data.current) === null || _over$data === void 0 || (_over$data = _over$data.sortable) === null || _over$data === void 0 ? void 0 : _over$data.index;
|
|
71
|
+
var isChecked = !hiddenColumns.includes(key);
|
|
72
|
+
return /*#__PURE__*/jsxs("div", {
|
|
73
|
+
children: [/*#__PURE__*/jsx("div", {
|
|
74
|
+
className: classnames({
|
|
75
|
+
"bg-muted h-1 w-full": isIndicatorVisible && targetIndex < draggedIndex
|
|
76
|
+
})
|
|
77
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
78
|
+
className: "hover:bg-accent relative flex items-center px-5 py-2",
|
|
79
|
+
"data-testid": "column-sortable-item",
|
|
80
|
+
ref: setNodeRef,
|
|
81
|
+
style: dragStyle,
|
|
82
|
+
children: [/*#__PURE__*/jsx("div", _objectSpread$3(_objectSpread$3(_objectSpread$3({}, attributes), listeners), {}, {
|
|
83
|
+
className: "absolute top-1/2 left-0.5 flex -translate-y-1/2 cursor-grab items-center active:cursor-grabbing",
|
|
84
|
+
"data-testid": "column-drag-handle",
|
|
85
|
+
children: /*#__PURE__*/jsx(GripVertical, {
|
|
86
|
+
className: "text-muted-foreground/50 hover:text-foreground transition-all duration-300 ease-in-out",
|
|
87
|
+
size: 16
|
|
88
|
+
})
|
|
89
|
+
})), /*#__PURE__*/jsxs(Label, {
|
|
90
|
+
className: "flex w-full cursor-pointer items-center",
|
|
91
|
+
htmlFor: key,
|
|
92
|
+
children: [/*#__PURE__*/jsx(Checkbox, _objectSpread$3({
|
|
93
|
+
checked: isChecked,
|
|
94
|
+
"data-testid": "neeto-ui-columns-checkbox",
|
|
95
|
+
disabled: isTableConfigurationFetching,
|
|
96
|
+
id: key,
|
|
97
|
+
name: key,
|
|
98
|
+
onCheckedChange: function onCheckedChange(checked) {
|
|
99
|
+
onToggle({
|
|
100
|
+
target: {
|
|
101
|
+
name: key,
|
|
102
|
+
checked: checked
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
}, checkboxProps)), /*#__PURE__*/jsx("span", {
|
|
107
|
+
className: "ml-2 text-sm",
|
|
108
|
+
children: title
|
|
109
|
+
})]
|
|
110
|
+
})]
|
|
111
|
+
}), /*#__PURE__*/jsx("div", {
|
|
112
|
+
className: classnames({
|
|
113
|
+
"bg-muted h-1 w-full": isIndicatorVisible && targetIndex > draggedIndex
|
|
114
|
+
})
|
|
115
|
+
})]
|
|
116
|
+
});
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
var baseUrl = "api/v1/table_configurations";
|
|
120
|
+
var fetch = function fetch(tableKey) {
|
|
121
|
+
return axios.get("".concat(baseUrl, "/").concat(tableKey));
|
|
122
|
+
};
|
|
123
|
+
var create = function create(payload) {
|
|
124
|
+
return axios.post(baseUrl, {
|
|
125
|
+
tableConfiguration: payload
|
|
126
|
+
});
|
|
127
|
+
};
|
|
128
|
+
var update = function update(_ref) {
|
|
129
|
+
var tableKey = _ref.tableKey,
|
|
130
|
+
payload = _ref.payload;
|
|
131
|
+
return axios.patch("".concat(baseUrl, "/").concat(tableKey), {
|
|
132
|
+
tableConfiguration: payload
|
|
133
|
+
});
|
|
134
|
+
};
|
|
135
|
+
var destroy = function destroy(tableKey) {
|
|
136
|
+
return axios["delete"]("".concat(baseUrl, "/").concat(tableKey));
|
|
137
|
+
};
|
|
138
|
+
var tableConfigurationApi = {
|
|
139
|
+
fetch: fetch,
|
|
140
|
+
create: create,
|
|
141
|
+
update: update,
|
|
142
|
+
destroy: destroy
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
var HIDDEN_COLUMNS_STORAGE_KEY = "neeto-molecules-hidden-columns";
|
|
146
|
+
var COLUMNS_ORDER_STORAGE_KEY = "neeto-molecules-columns-order";
|
|
147
|
+
var TABLE_CONFIGURATION_QUERY_KEY = "table-configuration";
|
|
148
|
+
|
|
149
|
+
function ownKeys$2(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; }
|
|
150
|
+
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
151
|
+
var useFetchTableConfiguration = function useFetchTableConfiguration(_ref) {
|
|
152
|
+
var tableKey = _ref.tableKey,
|
|
153
|
+
_ref$options = _ref.options,
|
|
154
|
+
options = _ref$options === void 0 ? {} : _ref$options;
|
|
155
|
+
return useQuery(_objectSpread$2({
|
|
156
|
+
queryKey: [TABLE_CONFIGURATION_QUERY_KEY, tableKey],
|
|
157
|
+
enabled: !!tableKey,
|
|
158
|
+
queryFn: function queryFn() {
|
|
159
|
+
return tableConfigurationApi.fetch(tableKey);
|
|
160
|
+
}
|
|
161
|
+
}, options));
|
|
162
|
+
};
|
|
163
|
+
var useUpdateTableConfiguration = function useUpdateTableConfiguration(tableKey) {
|
|
164
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
165
|
+
return useMutationWithInvalidation(tableConfigurationApi.update, _objectSpread$2({
|
|
166
|
+
keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
|
|
167
|
+
}, options));
|
|
168
|
+
};
|
|
169
|
+
var useDestroyTableConfiguration = function useDestroyTableConfiguration(tableKey) {
|
|
170
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
171
|
+
return useMutationWithInvalidation(tableConfigurationApi.destroy, _objectSpread$2({
|
|
172
|
+
keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
|
|
173
|
+
}, options));
|
|
174
|
+
};
|
|
175
|
+
|
|
176
|
+
function ownKeys$1(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; }
|
|
177
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
178
|
+
var useTableConfigurations = function useTableConfigurations(tableKey, columnData) {
|
|
179
|
+
var onMutationSuccess = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : noop;
|
|
180
|
+
var allowConfigurationResetOnUpdate = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
|
|
181
|
+
var defaultHiddenColumns = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
|
|
182
|
+
var _useFetchTableConfigu = useFetchTableConfiguration({
|
|
183
|
+
tableKey: tableKey
|
|
184
|
+
}),
|
|
185
|
+
tableConfiguration = _useFetchTableConfigu.data,
|
|
186
|
+
isLoading = _useFetchTableConfigu.isLoading,
|
|
187
|
+
isFetching = _useFetchTableConfigu.isFetching;
|
|
188
|
+
var _useUpdateTableConfig = useUpdateTableConfiguration(tableKey, {
|
|
189
|
+
onSuccess: onMutationSuccess
|
|
190
|
+
}),
|
|
191
|
+
updateConfiguration = _useUpdateTableConfig.mutate;
|
|
192
|
+
var _useDestroyTableConfi = useDestroyTableConfiguration(tableKey, {
|
|
193
|
+
onSuccess: onMutationSuccess
|
|
194
|
+
}),
|
|
195
|
+
destroyConfiguration = _useDestroyTableConfi.mutate;
|
|
196
|
+
var processColumnsWithConfiguration = useCallback(function () {
|
|
197
|
+
var originalColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
198
|
+
var existingColumnConfiguration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
199
|
+
if (isEmpty(existingColumnConfiguration)) {
|
|
200
|
+
return originalColumns;
|
|
201
|
+
}
|
|
202
|
+
var originalColumnsByKey = new Map(originalColumns === null || originalColumns === void 0 ? void 0 : originalColumns.filter(prop("key")).map(function (column) {
|
|
203
|
+
return [column.key, column];
|
|
204
|
+
}));
|
|
205
|
+
var configurationByKey = new Map(existingColumnConfiguration.map(function (config) {
|
|
206
|
+
return [config.key, config];
|
|
207
|
+
}));
|
|
208
|
+
var orderedConfiguredColumns = existingColumnConfiguration.map(function (config) {
|
|
209
|
+
return originalColumnsByKey.get(config.key);
|
|
210
|
+
}).filter(Boolean);
|
|
211
|
+
var unconfiguredOriginalColumns = originalColumns.filter(function (column) {
|
|
212
|
+
return column.key && !configurationByKey.has(column.key);
|
|
213
|
+
});
|
|
214
|
+
return [].concat(_toConsumableArray(orderedConfiguredColumns), _toConsumableArray(unconfiguredOriginalColumns));
|
|
215
|
+
}, []);
|
|
216
|
+
var hasAdditionalColumns = useMemo(function () {
|
|
217
|
+
if (!(tableConfiguration !== null && tableConfiguration !== void 0 && tableConfiguration.columns) || !columnData) {
|
|
218
|
+
return false;
|
|
219
|
+
}
|
|
220
|
+
var configurationKeys = pluck("key", tableConfiguration.columns).sort();
|
|
221
|
+
var dataKeys = pluck("key", columnData).sort();
|
|
222
|
+
return isNotEqualDeep(configurationKeys, dataKeys);
|
|
223
|
+
}, [tableConfiguration, columnData]);
|
|
224
|
+
var shouldApplyTableConfiguration = useMemo(function () {
|
|
225
|
+
return !isLoading && (tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns) && isNotEmpty(tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns) && !hasAdditionalColumns;
|
|
226
|
+
}, [tableConfiguration, isLoading, hasAdditionalColumns]);
|
|
227
|
+
useEffect(function () {
|
|
228
|
+
if (hasAdditionalColumns && tableConfiguration && allowConfigurationResetOnUpdate) {
|
|
229
|
+
destroyConfiguration(tableKey);
|
|
230
|
+
}
|
|
231
|
+
}, [hasAdditionalColumns, tableKey, allowConfigurationResetOnUpdate]);
|
|
232
|
+
var allProcessedColumns = useMemo(function () {
|
|
233
|
+
if (!isLoading && isNotEmpty(tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns) && !hasAdditionalColumns) {
|
|
234
|
+
return processColumnsWithConfiguration(columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns);
|
|
235
|
+
}
|
|
236
|
+
return columnData || [];
|
|
237
|
+
}, [isLoading, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns, hasAdditionalColumns, columnData, processColumnsWithConfiguration]);
|
|
238
|
+
var existingColumnConfiguration = useMemo(function () {
|
|
239
|
+
if (shouldApplyTableConfiguration) {
|
|
240
|
+
return tableConfiguration.columns;
|
|
241
|
+
}
|
|
242
|
+
if (!columnData || isEmpty(columnData)) {
|
|
243
|
+
return [];
|
|
244
|
+
}
|
|
245
|
+
return columnData.map(function (column) {
|
|
246
|
+
return {
|
|
247
|
+
key: column.key,
|
|
248
|
+
isShown: !defaultHiddenColumns.includes(column.key)
|
|
249
|
+
};
|
|
250
|
+
});
|
|
251
|
+
}, [shouldApplyTableConfiguration, columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns, defaultHiddenColumns]);
|
|
252
|
+
var customizedColumns = useMemo(function () {
|
|
253
|
+
var visibleColumnsConfig = existingColumnConfiguration.filter(prop("isShown"));
|
|
254
|
+
var visibleColumnKeys = pluck("key", visibleColumnsConfig);
|
|
255
|
+
return allProcessedColumns.filter(function (column) {
|
|
256
|
+
return visibleColumnKeys.includes(column.key);
|
|
257
|
+
});
|
|
258
|
+
}, [allProcessedColumns, existingColumnConfiguration]);
|
|
259
|
+
var updateColumns = function updateColumns(updatedColumns) {
|
|
260
|
+
updateConfiguration({
|
|
261
|
+
tableKey: tableKey,
|
|
262
|
+
payload: {
|
|
263
|
+
table_key: tableKey,
|
|
264
|
+
columns: updatedColumns
|
|
265
|
+
}
|
|
266
|
+
});
|
|
267
|
+
};
|
|
268
|
+
var hideColumn = function hideColumn(columnKey) {
|
|
269
|
+
updateColumns(existingColumnConfiguration.map(function (column) {
|
|
270
|
+
return column.key === columnKey ? _objectSpread$1(_objectSpread$1({}, column), {}, {
|
|
271
|
+
isShown: false
|
|
272
|
+
}) : column;
|
|
273
|
+
}));
|
|
274
|
+
};
|
|
275
|
+
var showColumn = function showColumn(columnKey) {
|
|
276
|
+
updateColumns(existingColumnConfiguration.map(function (column) {
|
|
277
|
+
return column.key === columnKey ? _objectSpread$1(_objectSpread$1({}, column), {}, {
|
|
278
|
+
isShown: true
|
|
279
|
+
}) : column;
|
|
280
|
+
}));
|
|
281
|
+
};
|
|
282
|
+
return {
|
|
283
|
+
customizedColumns: customizedColumns,
|
|
284
|
+
allProcessedColumns: allProcessedColumns,
|
|
285
|
+
isTableConfigurationLoading: isLoading,
|
|
286
|
+
isTableConfigurationFetching: isFetching,
|
|
287
|
+
existingColumnConfiguration: existingColumnConfiguration,
|
|
288
|
+
hideColumn: hideColumn,
|
|
289
|
+
showColumn: showColumn,
|
|
290
|
+
updateColumns: updateColumns,
|
|
291
|
+
destroyConfiguration: destroyConfiguration
|
|
292
|
+
};
|
|
293
|
+
};
|
|
294
|
+
|
|
295
|
+
var getHidableColumns = function getHidableColumns(columnData) {
|
|
296
|
+
return removeBy({
|
|
297
|
+
isHidable: false
|
|
298
|
+
}, columnData);
|
|
299
|
+
};
|
|
300
|
+
var filterBySearchTerm = function filterBySearchTerm(searchTerm, columns) {
|
|
301
|
+
return filter(function (_ref) {
|
|
302
|
+
var _ref$title = _ref.title,
|
|
303
|
+
title = _ref$title === void 0 ? "" : _ref$title;
|
|
304
|
+
return includes(trim(toLower(searchTerm)), trim(toLower(title)));
|
|
305
|
+
}, columns);
|
|
306
|
+
};
|
|
307
|
+
|
|
308
|
+
var _excluded = ["icon", "data-testid", "label"];
|
|
309
|
+
function ownKeys(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; }
|
|
310
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
311
|
+
var Columns = function Columns(_ref) {
|
|
312
|
+
var actionBlock = _ref.actionBlock,
|
|
313
|
+
_ref$checkboxProps = _ref.checkboxProps,
|
|
314
|
+
checkboxProps = _ref$checkboxProps === void 0 ? {} : _ref$checkboxProps,
|
|
315
|
+
_ref$columnData = _ref.columnData,
|
|
316
|
+
columnData = _ref$columnData === void 0 ? [] : _ref$columnData,
|
|
317
|
+
_ref$isSearchable = _ref.isSearchable,
|
|
318
|
+
isSearchable = _ref$isSearchable === void 0 ? false : _ref$isSearchable,
|
|
319
|
+
_ref$tableKey = _ref.tableKey,
|
|
320
|
+
tableKey = _ref$tableKey === void 0 ? "" : _ref$tableKey,
|
|
321
|
+
_ref$noColumnMessage = _ref.noColumnMessage,
|
|
322
|
+
noColumnMessage = _ref$noColumnMessage === void 0 ? i18next.t("neetoMolecules.columns.noColumns") : _ref$noColumnMessage,
|
|
323
|
+
_ref$searchProps = _ref.searchProps,
|
|
324
|
+
searchProps = _ref$searchProps === void 0 ? {} : _ref$searchProps,
|
|
325
|
+
_ref$allowConfigurati = _ref.allowConfigurationResetOnUpdate,
|
|
326
|
+
allowConfigurationResetOnUpdate = _ref$allowConfigurati === void 0 ? true : _ref$allowConfigurati,
|
|
327
|
+
_ref$onMutationSucces = _ref.onMutationSuccess,
|
|
328
|
+
onMutationSuccess = _ref$onMutationSucces === void 0 ? noop : _ref$onMutationSucces,
|
|
329
|
+
_ref$defaultHiddenCol = _ref.defaultHiddenColumns,
|
|
330
|
+
defaultHiddenColumns = _ref$defaultHiddenCol === void 0 ? [] : _ref$defaultHiddenCol,
|
|
331
|
+
_ref$buttonProps = _ref.buttonProps,
|
|
332
|
+
buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps;
|
|
333
|
+
var _useState = useState(""),
|
|
334
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
335
|
+
searchTerm = _useState2[0],
|
|
336
|
+
setSearchTerm = _useState2[1];
|
|
337
|
+
var _useState3 = useState(false),
|
|
338
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
339
|
+
open = _useState4[0],
|
|
340
|
+
setOpen = _useState4[1];
|
|
341
|
+
var _useTranslation = useTranslation(),
|
|
342
|
+
t = _useTranslation.t;
|
|
343
|
+
var _useTableConfiguratio = useTableConfigurations(tableKey, columnData, onMutationSuccess, allowConfigurationResetOnUpdate, defaultHiddenColumns),
|
|
344
|
+
allProcessedColumns = _useTableConfiguratio.allProcessedColumns,
|
|
345
|
+
existingColumnConfiguration = _useTableConfiguratio.existingColumnConfiguration,
|
|
346
|
+
hideColumn = _useTableConfiguratio.hideColumn,
|
|
347
|
+
showColumn = _useTableConfiguratio.showColumn,
|
|
348
|
+
updateColumns = _useTableConfiguratio.updateColumns,
|
|
349
|
+
destroyConfiguration = _useTableConfiguratio.destroyConfiguration,
|
|
350
|
+
isTableConfigurationFetching = _useTableConfiguratio.isTableConfigurationFetching;
|
|
351
|
+
var hiddenColumns = pluck("key", existingColumnConfiguration.filter(function (column) {
|
|
352
|
+
return column.isShown === false;
|
|
353
|
+
}));
|
|
354
|
+
var handleDragEnd = function handleDragEnd(event) {
|
|
355
|
+
var active = event.active,
|
|
356
|
+
over = event.over;
|
|
357
|
+
if (!over || active.id === over.id) return;
|
|
358
|
+
var oldIndex = findIndexBy({
|
|
359
|
+
key: active.id
|
|
360
|
+
}, existingColumnConfiguration);
|
|
361
|
+
var newIndex = findIndexBy({
|
|
362
|
+
key: over.id
|
|
363
|
+
}, existingColumnConfiguration);
|
|
364
|
+
if (oldIndex === -1 || newIndex === -1) return;
|
|
365
|
+
var newOrder = _toConsumableArray(existingColumnConfiguration);
|
|
366
|
+
var _newOrder$splice = newOrder.splice(oldIndex, 1),
|
|
367
|
+
_newOrder$splice2 = _slicedToArray(_newOrder$splice, 1),
|
|
368
|
+
movedItem = _newOrder$splice2[0];
|
|
369
|
+
newOrder.splice(newIndex, 0, movedItem);
|
|
370
|
+
updateColumns(newOrder);
|
|
371
|
+
};
|
|
372
|
+
var columns = getHidableColumns(allProcessedColumns);
|
|
373
|
+
var filteredColumns = filterBySearchTerm(searchTerm, columns);
|
|
374
|
+
var handleHideAllColumns = function handleHideAllColumns() {
|
|
375
|
+
var columnsToHideKeys = pluck("key", columns);
|
|
376
|
+
updateColumns(existingColumnConfiguration.map(function (column) {
|
|
377
|
+
return includes(column.key, columnsToHideKeys) ? assoc("isShown", false, column) : column;
|
|
378
|
+
}));
|
|
379
|
+
};
|
|
380
|
+
var handleChange = function handleChange(_ref2) {
|
|
381
|
+
var _ref2$target = _ref2.target,
|
|
382
|
+
dataIndex = _ref2$target.name,
|
|
383
|
+
checked = _ref2$target.checked;
|
|
384
|
+
if (checked) showColumn(dataIndex);else hideColumn(dataIndex);
|
|
385
|
+
};
|
|
386
|
+
var handleSearch = function handleSearch(_ref3) {
|
|
387
|
+
var value = _ref3.target.value;
|
|
388
|
+
return setSearchTerm(value);
|
|
389
|
+
};
|
|
390
|
+
var Icon = buttonProps.icon,
|
|
391
|
+
_buttonProps$dataTes = buttonProps["data-testid"],
|
|
392
|
+
dataTestId = _buttonProps$dataTes === void 0 ? "columns-dropdown-button" : _buttonProps$dataTes,
|
|
393
|
+
buttonLabel = buttonProps.label,
|
|
394
|
+
restButtonProps = _objectWithoutProperties(buttonProps, _excluded);
|
|
395
|
+
return /*#__PURE__*/jsxs(Popover, {
|
|
396
|
+
open: open,
|
|
397
|
+
onOpenChange: function onOpenChange(isOpen) {
|
|
398
|
+
setOpen(isOpen);
|
|
399
|
+
if (!isOpen) setSearchTerm("");
|
|
400
|
+
},
|
|
401
|
+
children: [/*#__PURE__*/jsx(PopoverTrigger, {
|
|
402
|
+
asChild: true,
|
|
403
|
+
children: /*#__PURE__*/jsxs(Button, _objectSpread(_objectSpread({
|
|
404
|
+
"data-testid": dataTestId,
|
|
405
|
+
size: "icon",
|
|
406
|
+
variant: "ghost"
|
|
407
|
+
}, restButtonProps), {}, {
|
|
408
|
+
children: [Icon && /*#__PURE__*/jsx(Icon, {
|
|
409
|
+
size: 16
|
|
410
|
+
}), buttonLabel && /*#__PURE__*/jsx("span", {
|
|
411
|
+
children: buttonLabel
|
|
412
|
+
})]
|
|
413
|
+
}))
|
|
414
|
+
}), /*#__PURE__*/jsx(PopoverContent, {
|
|
415
|
+
align: "end",
|
|
416
|
+
className: "max-h-[calc(100dvh-200px)] w-80 max-w-[31.25rem] overflow-y-auto p-0",
|
|
417
|
+
children: /*#__PURE__*/jsxs("div", {
|
|
418
|
+
"data-testid": "customize-columns-dropdown-container",
|
|
419
|
+
children: [isSearchable && /*#__PURE__*/jsxs("div", {
|
|
420
|
+
className: "relative p-3",
|
|
421
|
+
children: [/*#__PURE__*/jsx(Search, {
|
|
422
|
+
className: "text-muted-foreground pointer-events-none absolute top-1/2 left-6 size-4 -translate-y-1/2"
|
|
423
|
+
}), /*#__PURE__*/jsx(Input, _objectSpread({
|
|
424
|
+
className: "pl-9",
|
|
425
|
+
"data-testid": "neeto-ui-columns-search",
|
|
426
|
+
placeholder: t("neetoMolecules.columns.search"),
|
|
427
|
+
type: "search",
|
|
428
|
+
value: searchTerm,
|
|
429
|
+
onChange: handleSearch
|
|
430
|
+
}, searchProps))]
|
|
431
|
+
}), isEmpty(filteredColumns) && /*#__PURE__*/jsx("span", {
|
|
432
|
+
className: "flex flex-col items-center p-2",
|
|
433
|
+
children: noColumnMessage
|
|
434
|
+
}), isNotEmpty(filteredColumns) && !searchTerm && /*#__PURE__*/jsx(DndContext, {
|
|
435
|
+
collisionDetection: closestCenter,
|
|
436
|
+
onDragEnd: handleDragEnd,
|
|
437
|
+
children: /*#__PURE__*/jsx(SortableContext, {
|
|
438
|
+
items: pluck("key", filteredColumns),
|
|
439
|
+
strategy: verticalListSortingStrategy,
|
|
440
|
+
children: filteredColumns.map(function (column) {
|
|
441
|
+
return /*#__PURE__*/createElement(Item, {
|
|
442
|
+
checkboxProps: checkboxProps,
|
|
443
|
+
column: column,
|
|
444
|
+
hiddenColumns: hiddenColumns,
|
|
445
|
+
isTableConfigurationFetching: isTableConfigurationFetching,
|
|
446
|
+
key: column.key,
|
|
447
|
+
onToggle: handleChange
|
|
448
|
+
});
|
|
449
|
+
})
|
|
450
|
+
})
|
|
451
|
+
}), isNotEmpty(filteredColumns) && searchTerm && filteredColumns.map(function (_ref4) {
|
|
452
|
+
var key = _ref4.key,
|
|
453
|
+
title = _ref4.title;
|
|
454
|
+
return /*#__PURE__*/jsxs(Label, {
|
|
455
|
+
className: "hover:bg-accent flex w-full cursor-pointer items-center px-5 py-2",
|
|
456
|
+
htmlFor: key,
|
|
457
|
+
children: [/*#__PURE__*/jsx(Checkbox, _objectSpread({
|
|
458
|
+
checked: !hiddenColumns.includes(key),
|
|
459
|
+
"data-testid": "neeto-ui-columns-checkbox",
|
|
460
|
+
id: key,
|
|
461
|
+
name: key,
|
|
462
|
+
onCheckedChange: function onCheckedChange(checked) {
|
|
463
|
+
handleChange({
|
|
464
|
+
target: {
|
|
465
|
+
name: key,
|
|
466
|
+
checked: checked
|
|
467
|
+
}
|
|
468
|
+
});
|
|
469
|
+
}
|
|
470
|
+
}, checkboxProps)), /*#__PURE__*/jsx("span", {
|
|
471
|
+
className: "ml-2 text-sm",
|
|
472
|
+
children: title
|
|
473
|
+
})]
|
|
474
|
+
}, key);
|
|
475
|
+
}), /*#__PURE__*/jsx(Separator, {}), !!actionBlock && /*#__PURE__*/jsxs(Fragment, {
|
|
476
|
+
children: [actionBlock, /*#__PURE__*/jsx(Separator, {})]
|
|
477
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
478
|
+
className: "flex justify-end gap-2 px-3 py-2",
|
|
479
|
+
children: [/*#__PURE__*/jsx(Button, {
|
|
480
|
+
"data-testid": "column-visibility-hide-all-button",
|
|
481
|
+
size: "sm",
|
|
482
|
+
variant: "ghost",
|
|
483
|
+
onClick: handleHideAllColumns,
|
|
484
|
+
children: t("neetoMolecules.columns.hideAll")
|
|
485
|
+
}), /*#__PURE__*/jsx(Button, {
|
|
486
|
+
"data-testid": "column-visibility-reset-button",
|
|
487
|
+
size: "sm",
|
|
488
|
+
variant: "outline",
|
|
489
|
+
onClick: function onClick() {
|
|
490
|
+
return destroyConfiguration(tableKey);
|
|
491
|
+
},
|
|
492
|
+
children: t("neetoMolecules.columns.reset")
|
|
493
|
+
})]
|
|
494
|
+
})]
|
|
495
|
+
})
|
|
496
|
+
})]
|
|
497
|
+
});
|
|
498
|
+
};
|
|
499
|
+
Columns.displayName = "Columns";
|
|
500
|
+
|
|
501
|
+
export { COLUMNS_ORDER_STORAGE_KEY as C, HIDDEN_COLUMNS_STORAGE_KEY as H, TABLE_CONFIGURATION_QUERY_KEY as T, Columns as a, useTableConfigurations as u };
|
|
502
|
+
//# sourceMappingURL=Columns-cUgR6NTO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Columns-cUgR6NTO.js","sources":["../node_modules/lucide-react/dist/esm/icons/grip-vertical.js","../src/v2/components/Columns/Item.jsx","../src/v2/components/Columns/api.js","../src/v2/components/Columns/constants.js","../src/v2/components/Columns/useTableConfigurationsApi.js","../src/v2/components/Columns/useTableConfigurations.js","../src/v2/components/Columns/utils.js","../src/v2/components/Columns/Columns.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"9\", cy: \"12\", r: \"1\", key: \"1vctgf\" }],\n [\"circle\", { cx: \"9\", cy: \"5\", r: \"1\", key: \"hp0tcf\" }],\n [\"circle\", { cx: \"9\", cy: \"19\", r: \"1\", key: \"fkjjf6\" }],\n [\"circle\", { cx: \"15\", cy: \"12\", r: \"1\", key: \"1tmaij\" }],\n [\"circle\", { cx: \"15\", cy: \"5\", r: \"1\", key: \"19l28e\" }],\n [\"circle\", { cx: \"15\", cy: \"19\", r: \"1\", key: \"f4zoj3\" }]\n];\nconst GripVertical = createLucideIcon(\"grip-vertical\", __iconNode);\n\nexport { __iconNode, GripVertical as default };\n//# sourceMappingURL=grip-vertical.js.map\n","import { Checkbox, Label } from \"@bigbinary/neeto-atoms\";\nimport { useSortable } from \"@dnd-kit/sortable\";\nimport { CSS } from \"@dnd-kit/utilities\";\nimport classNames from \"classnames\";\nimport { GripVertical } from \"lucide-react\";\n\nconst Item = ({\n column,\n hiddenColumns,\n checkboxProps,\n onToggle,\n isTableConfigurationFetching,\n}) => {\n const { key, title } = column;\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n isOver,\n over,\n active,\n } = useSortable({ id: key });\n\n const dragStyle = {\n transform: isDragging ? CSS.Transform.toString(transform) : undefined,\n transition,\n opacity: isDragging ? 0.5 : 1,\n };\n\n const isIndicatorVisible = !isDragging && isOver;\n const draggedIndex = active?.data?.current?.sortable?.index;\n const targetIndex = over?.data?.current?.sortable?.index;\n\n const isChecked = !hiddenColumns.includes(key);\n\n return (\n <div>\n <div\n className={classNames({\n \"bg-muted h-1 w-full\":\n isIndicatorVisible && targetIndex < draggedIndex,\n })}\n />\n <div\n className=\"hover:bg-accent relative flex items-center px-5 py-2\"\n data-testid=\"column-sortable-item\"\n ref={setNodeRef}\n style={dragStyle}\n >\n <div\n {...attributes}\n {...listeners}\n className=\"absolute top-1/2 left-0.5 flex -translate-y-1/2 cursor-grab items-center active:cursor-grabbing\"\n data-testid=\"column-drag-handle\"\n >\n <GripVertical\n className=\"text-muted-foreground/50 hover:text-foreground transition-all duration-300 ease-in-out\"\n size={16}\n />\n </div>\n <Label\n className=\"flex w-full cursor-pointer items-center\"\n htmlFor={key}\n >\n <Checkbox\n checked={isChecked}\n data-testid=\"neeto-ui-columns-checkbox\"\n disabled={isTableConfigurationFetching}\n id={key}\n name={key}\n onCheckedChange={checked => {\n onToggle({ target: { name: key, checked } });\n }}\n {...checkboxProps}\n />\n <span className=\"ml-2 text-sm\">{title}</span>\n </Label>\n </div>\n <div\n className={classNames({\n \"bg-muted h-1 w-full\":\n isIndicatorVisible && targetIndex > draggedIndex,\n })}\n />\n </div>\n );\n};\n\nexport default Item;\n","import axios from \"axios\";\n\nconst baseUrl = \"api/v1/table_configurations\";\n\nconst fetch = tableKey => axios.get(`${baseUrl}/${tableKey}`);\n\nconst create = payload => axios.post(baseUrl, { tableConfiguration: payload });\n\nconst update = ({ tableKey, payload }) =>\n axios.patch(`${baseUrl}/${tableKey}`, { tableConfiguration: payload });\n\nconst destroy = tableKey => axios.delete(`${baseUrl}/${tableKey}`);\n\nconst tableConfigurationApi = { fetch, create, update, destroy };\n\nexport default tableConfigurationApi;\n","export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\nexport const COLUMNS_ORDER_STORAGE_KEY = \"neeto-molecules-columns-order\";\nexport const TABLE_CONFIGURATION_QUERY_KEY = \"table-configuration\";\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/react-utils/useMutationWithInvalidation\";\n\nimport tableConfigurationApi from \"./api\";\nimport { TABLE_CONFIGURATION_QUERY_KEY } from \"./constants.js\";\n\nconst useFetchTableConfiguration = ({ tableKey, options = {} }) =>\n useQuery({\n queryKey: [TABLE_CONFIGURATION_QUERY_KEY, tableKey],\n enabled: !!tableKey,\n queryFn: () => tableConfigurationApi.fetch(tableKey),\n ...options,\n });\n\nconst useUpdateTableConfiguration = (tableKey, options = {}) =>\n useMutationWithInvalidation(tableConfigurationApi.update, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n ...options,\n });\n\nconst useDestroyTableConfiguration = (tableKey, options = {}) =>\n useMutationWithInvalidation(tableConfigurationApi.destroy, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n ...options,\n });\n\nexport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n};\n","import { useEffect, useMemo, useCallback } from \"react\";\n\nimport { isNotEqualDeep, isNotEmpty, noop } from \"neetocist\";\nimport { isEmpty, pluck, prop } from \"ramda\";\n\nimport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n} from \"./useTableConfigurationsApi.js\";\n\nconst useTableConfigurations = (\n tableKey,\n columnData,\n onMutationSuccess = noop,\n allowConfigurationResetOnUpdate = true,\n defaultHiddenColumns = []\n) => {\n const {\n data: tableConfiguration,\n isLoading,\n isFetching,\n } = useFetchTableConfiguration({ tableKey });\n\n const { mutate: updateConfiguration } = useUpdateTableConfiguration(\n tableKey,\n { onSuccess: onMutationSuccess }\n );\n\n const { mutate: destroyConfiguration } = useDestroyTableConfiguration(\n tableKey,\n { onSuccess: onMutationSuccess }\n );\n\n const processColumnsWithConfiguration = useCallback(\n (originalColumns = [], existingColumnConfiguration = []) => {\n if (isEmpty(existingColumnConfiguration)) {\n return originalColumns;\n }\n\n const originalColumnsByKey = new Map(\n originalColumns?.filter(prop(\"key\")).map(column => [column.key, column])\n );\n\n const configurationByKey = new Map(\n existingColumnConfiguration.map(config => [config.key, config])\n );\n\n const orderedConfiguredColumns = existingColumnConfiguration\n .map(config => originalColumnsByKey.get(config.key))\n .filter(Boolean);\n\n const unconfiguredOriginalColumns = originalColumns.filter(\n column => column.key && !configurationByKey.has(column.key)\n );\n\n return [...orderedConfiguredColumns, ...unconfiguredOriginalColumns];\n },\n []\n );\n\n const hasAdditionalColumns = useMemo(() => {\n if (!tableConfiguration?.columns || !columnData) {\n return false;\n }\n\n const configurationKeys = pluck(\"key\", tableConfiguration.columns).sort();\n const dataKeys = pluck(\"key\", columnData).sort();\n\n return isNotEqualDeep(configurationKeys, dataKeys);\n }, [tableConfiguration, columnData]);\n\n const shouldApplyTableConfiguration = useMemo(\n () =>\n !isLoading &&\n tableConfiguration?.columns &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns,\n [tableConfiguration, isLoading, hasAdditionalColumns]\n );\n\n useEffect(() => {\n if (\n hasAdditionalColumns &&\n tableConfiguration &&\n allowConfigurationResetOnUpdate\n ) {\n destroyConfiguration(tableKey);\n }\n }, [hasAdditionalColumns, tableKey, allowConfigurationResetOnUpdate]);\n\n const allProcessedColumns = useMemo(() => {\n if (\n !isLoading &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns\n ) {\n return processColumnsWithConfiguration(\n columnData,\n tableConfiguration?.columns\n );\n }\n\n return columnData || [];\n }, [\n isLoading,\n tableConfiguration?.columns,\n hasAdditionalColumns,\n columnData,\n processColumnsWithConfiguration,\n ]);\n\n const existingColumnConfiguration = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n return tableConfiguration.columns;\n }\n\n if (!columnData || isEmpty(columnData)) {\n return [];\n }\n\n return columnData.map(column => ({\n key: column.key,\n isShown: !defaultHiddenColumns.includes(column.key),\n }));\n }, [\n shouldApplyTableConfiguration,\n columnData,\n tableConfiguration?.columns,\n defaultHiddenColumns,\n ]);\n\n const customizedColumns = useMemo(() => {\n const visibleColumnsConfig = existingColumnConfiguration.filter(\n prop(\"isShown\")\n );\n const visibleColumnKeys = pluck(\"key\", visibleColumnsConfig);\n\n return allProcessedColumns.filter(column =>\n visibleColumnKeys.includes(column.key)\n );\n }, [allProcessedColumns, existingColumnConfiguration]);\n\n const updateColumns = updatedColumns => {\n updateConfiguration({\n tableKey,\n payload: { table_key: tableKey, columns: updatedColumns },\n });\n };\n\n const hideColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: false } : column\n )\n );\n };\n\n const showColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: true } : column\n )\n );\n };\n\n return {\n customizedColumns,\n allProcessedColumns,\n isTableConfigurationLoading: isLoading,\n isTableConfigurationFetching: isFetching,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n updateColumns,\n destroyConfiguration,\n };\n};\n\nexport default useTableConfigurations;\n","import { existsBy, removeBy } from \"neetocist\";\nimport { filter, includes, toLower, trim } from \"ramda\";\n\nexport const getHidableColumns = columnData =>\n removeBy({ isHidable: false }, columnData);\n\nexport const filterBySearchTerm = (searchTerm, columns) =>\n filter(\n ({ title = \"\" }) =>\n includes(trim(toLower(searchTerm)), trim(toLower(title))),\n columns\n );\n\nexport const removeDeletedColumns = (hiddenColumns, columnData) =>\n hiddenColumns.filter(hiddenColumn =>\n existsBy({ dataIndex: hiddenColumn }, columnData)\n );\n","import { useState } from \"react\";\n\nimport {\n Button,\n Checkbox,\n Input,\n Label,\n Popover,\n PopoverContent,\n PopoverTrigger,\n Separator,\n} from \"@bigbinary/neeto-atoms\";\nimport { DndContext, closestCenter } from \"@dnd-kit/core\";\nimport {\n SortableContext,\n verticalListSortingStrategy,\n} from \"@dnd-kit/sortable\";\nimport i18next from \"i18next\";\nimport { Search } from \"lucide-react\";\nimport { isNotEmpty, findIndexBy, noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { assoc, isEmpty, pluck, includes } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Item from \"./Item\";\nimport useTableConfigurations from \"./useTableConfigurations.js\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils.js\";\n\nconst Columns = ({\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n tableKey = \"\",\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n searchProps = {},\n allowConfigurationResetOnUpdate = true,\n onMutationSuccess = noop,\n defaultHiddenColumns = [],\n buttonProps = {},\n}) => {\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [open, setOpen] = useState(false);\n const { t } = useTranslation();\n\n const {\n allProcessedColumns,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n updateColumns,\n destroyConfiguration,\n isTableConfigurationFetching,\n } = useTableConfigurations(\n tableKey,\n columnData,\n onMutationSuccess,\n allowConfigurationResetOnUpdate,\n defaultHiddenColumns\n );\n\n const hiddenColumns = pluck(\n \"key\",\n existingColumnConfiguration.filter(column => column.isShown === false)\n );\n\n const handleDragEnd = event => {\n const { active, over } = event;\n if (!over || active.id === over.id) return;\n\n const oldIndex = findIndexBy(\n { key: active.id },\n existingColumnConfiguration\n );\n\n const newIndex = findIndexBy({ key: over.id }, existingColumnConfiguration);\n\n if (oldIndex === -1 || newIndex === -1) return;\n\n const newOrder = [...existingColumnConfiguration];\n const [movedItem] = newOrder.splice(oldIndex, 1);\n newOrder.splice(newIndex, 0, movedItem);\n updateColumns(newOrder);\n };\n\n const columns = getHidableColumns(allProcessedColumns);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n const handleHideAllColumns = () => {\n const columnsToHideKeys = pluck(\"key\", columns);\n\n updateColumns(\n existingColumnConfiguration.map(column =>\n includes(column.key, columnsToHideKeys)\n ? assoc(\"isShown\", false, column)\n : column\n )\n );\n };\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n const {\n icon: Icon,\n \"data-testid\": dataTestId = \"columns-dropdown-button\",\n label: buttonLabel,\n ...restButtonProps\n } = buttonProps;\n\n return (\n <Popover\n {...{ open }}\n onOpenChange={isOpen => {\n setOpen(isOpen);\n if (!isOpen) setSearchTerm(\"\");\n }}\n >\n <PopoverTrigger asChild>\n <Button\n data-testid={dataTestId}\n size=\"icon\"\n variant=\"ghost\"\n {...restButtonProps}\n >\n {Icon && <Icon size={16} />}\n {buttonLabel && <span>{buttonLabel}</span>}\n </Button>\n </PopoverTrigger>\n <PopoverContent\n align=\"end\"\n className=\"max-h-[calc(100dvh-200px)] w-80 max-w-[31.25rem] overflow-y-auto p-0\"\n >\n <div data-testid=\"customize-columns-dropdown-container\">\n {isSearchable && (\n <div className=\"relative p-3\">\n <Search className=\"text-muted-foreground pointer-events-none absolute top-1/2 left-6 size-4 -translate-y-1/2\" />\n <Input\n className=\"pl-9\"\n data-testid=\"neeto-ui-columns-search\"\n placeholder={t(\"neetoMolecules.columns.search\")}\n type=\"search\"\n value={searchTerm}\n onChange={handleSearch}\n {...searchProps}\n />\n </div>\n )}\n {isEmpty(filteredColumns) && (\n <span className=\"flex flex-col items-center p-2\">\n {noColumnMessage}\n </span>\n )}\n {isNotEmpty(filteredColumns) && !searchTerm && (\n <DndContext\n collisionDetection={closestCenter}\n onDragEnd={handleDragEnd}\n >\n <SortableContext\n items={pluck(\"key\", filteredColumns)}\n strategy={verticalListSortingStrategy}\n >\n {filteredColumns.map(column => (\n <Item\n {...{\n checkboxProps,\n column,\n hiddenColumns,\n isTableConfigurationFetching,\n }}\n key={column.key}\n onToggle={handleChange}\n />\n ))}\n </SortableContext>\n </DndContext>\n )}\n {isNotEmpty(filteredColumns) &&\n searchTerm &&\n filteredColumns.map(({ key, title }) => (\n <Label\n className=\"hover:bg-accent flex w-full cursor-pointer items-center px-5 py-2\"\n htmlFor={key}\n key={key}\n >\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-testid=\"neeto-ui-columns-checkbox\"\n id={key}\n name={key}\n onCheckedChange={checked => {\n handleChange({ target: { name: key, checked } });\n }}\n {...checkboxProps}\n />\n <span className=\"ml-2 text-sm\">{title}</span>\n </Label>\n ))}\n <Separator />\n {!!actionBlock && (\n <>\n {actionBlock}\n <Separator />\n </>\n )}\n <div className=\"flex justify-end gap-2 px-3 py-2\">\n <Button\n data-testid=\"column-visibility-hide-all-button\"\n size=\"sm\"\n variant=\"ghost\"\n onClick={handleHideAllColumns}\n >\n {t(\"neetoMolecules.columns.hideAll\")}\n </Button>\n <Button\n data-testid=\"column-visibility-reset-button\"\n size=\"sm\"\n variant=\"outline\"\n onClick={() => destroyConfiguration(tableKey)}\n >\n {t(\"neetoMolecules.columns.reset\")}\n </Button>\n </div>\n </div>\n </PopoverContent>\n </Popover>\n );\n};\n\nColumns.propTypes = {\n allowConfigurationResetOnUpdate: PropTypes.bool,\n actionBlock: PropTypes.element,\n checkboxProps: PropTypes.object,\n columnData: PropTypes.array,\n isSearchable: PropTypes.bool,\n tableKey: PropTypes.string,\n noColumnMessage: PropTypes.string,\n searchProps: PropTypes.object,\n onMutationSuccess: PropTypes.func,\n};\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n"],"names":["Item","_ref","_active$data","_over$data","column","hiddenColumns","checkboxProps","onToggle","isTableConfigurationFetching","key","title","_useSortable","useSortable","id","attributes","listeners","setNodeRef","transform","transition","isDragging","isOver","over","active","dragStyle","CSS","Transform","toString","undefined","opacity","isIndicatorVisible","draggedIndex","data","current","sortable","index","targetIndex","isChecked","includes","_jsxs","children","_jsx","className","classNames","ref","style","_objectSpread","GripVertical","size","Label","htmlFor","Checkbox","checked","disabled","name","onCheckedChange","target","baseUrl","fetch","tableKey","axios","get","concat","create","payload","post","tableConfiguration","update","patch","destroy","tableConfigurationApi","HIDDEN_COLUMNS_STORAGE_KEY","COLUMNS_ORDER_STORAGE_KEY","TABLE_CONFIGURATION_QUERY_KEY","useFetchTableConfiguration","_ref$options","options","useQuery","queryKey","enabled","queryFn","useUpdateTableConfiguration","arguments","length","useMutationWithInvalidation","keysToInvalidate","useDestroyTableConfiguration","useTableConfigurations","columnData","onMutationSuccess","noop","allowConfigurationResetOnUpdate","defaultHiddenColumns","_useFetchTableConfigu","isLoading","isFetching","_useUpdateTableConfig","onSuccess","updateConfiguration","mutate","_useDestroyTableConfi","destroyConfiguration","processColumnsWithConfiguration","useCallback","originalColumns","existingColumnConfiguration","isEmpty","originalColumnsByKey","Map","filter","prop","map","configurationByKey","config","orderedConfiguredColumns","Boolean","unconfiguredOriginalColumns","has","_toConsumableArray","hasAdditionalColumns","useMemo","columns","configurationKeys","pluck","sort","dataKeys","isNotEqualDeep","shouldApplyTableConfiguration","isNotEmpty","useEffect","allProcessedColumns","isShown","customizedColumns","visibleColumnsConfig","visibleColumnKeys","updateColumns","updatedColumns","table_key","hideColumn","columnKey","showColumn","isTableConfigurationLoading","getHidableColumns","removeBy","isHidable","filterBySearchTerm","searchTerm","_ref$title","trim","toLower","Columns","actionBlock","_ref$checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$tableKey","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$searchProps","searchProps","_ref$allowConfigurati","_ref$onMutationSucces","_ref$defaultHiddenCol","_ref$buttonProps","buttonProps","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useState3","_useState4","open","setOpen","_useTranslation","useTranslation","_useTableConfiguratio","handleDragEnd","event","oldIndex","findIndexBy","newIndex","newOrder","_newOrder$splice","splice","_newOrder$splice2","movedItem","filteredColumns","handleHideAllColumns","columnsToHideKeys","assoc","handleChange","_ref2","_ref2$target","dataIndex","handleSearch","_ref3","value","Icon","icon","_buttonProps$dataTes","dataTestId","buttonLabel","label","restButtonProps","_objectWithoutProperties","_excluded","Popover","onOpenChange","isOpen","PopoverTrigger","asChild","Button","variant","PopoverContent","align","Search","Input","placeholder","type","onChange","DndContext","collisionDetection","closestCenter","onDragEnd","SortableContext","items","strategy","verticalListSortingStrategy","_createElement","_ref4","Separator","_Fragment","onClick","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAM,UAAU,GAAG;AACnB,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC1D,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AACzD,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC1D,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC3D,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC1D,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE;AAC1D,CAAC;AACD,MAAM,YAAY,GAAG,gBAAgB,CAAC,eAAe,EAAE,UAAU,CAAC;;;;ACXlE,IAAMA,IAAI,GAAG,SAAPA,IAAIA,CAAAC,IAAA,EAMJ;EAAA,IAAAC,YAAA,EAAAC,UAAA;AAAA,EAAA,IALJC,MAAM,GAAAH,IAAA,CAANG,MAAM;IACNC,aAAa,GAAAJ,IAAA,CAAbI,aAAa;IACbC,aAAa,GAAAL,IAAA,CAAbK,aAAa;IACbC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;IACRC,4BAA4B,GAAAP,IAAA,CAA5BO,4BAA4B;AAE5B,EAAA,IAAQC,GAAG,GAAYL,MAAM,CAArBK,GAAG;IAAEC,KAAK,GAAKN,MAAM,CAAhBM,KAAK;EAClB,IAAAC,YAAA,GAUIC,WAAW,CAAC;AAAEC,MAAAA,EAAE,EAAEJ;AAAI,KAAC,CAAC;IAT1BK,UAAU,GAAAH,YAAA,CAAVG,UAAU;IACVC,SAAS,GAAAJ,YAAA,CAATI,SAAS;IACTC,UAAU,GAAAL,YAAA,CAAVK,UAAU;IACVC,SAAS,GAAAN,YAAA,CAATM,SAAS;IACTC,UAAU,GAAAP,YAAA,CAAVO,UAAU;IACVC,UAAU,GAAAR,YAAA,CAAVQ,UAAU;IACVC,MAAM,GAAAT,YAAA,CAANS,MAAM;IACNC,IAAI,GAAAV,YAAA,CAAJU,IAAI;IACJC,MAAM,GAAAX,YAAA,CAANW,MAAM;AAGR,EAAA,IAAMC,SAAS,GAAG;AAChBN,IAAAA,SAAS,EAAEE,UAAU,GAAGK,GAAG,CAACC,SAAS,CAACC,QAAQ,CAACT,SAAS,CAAC,GAAGU,SAAS;AACrET,IAAAA,UAAU,EAAVA,UAAU;AACVU,IAAAA,OAAO,EAAET,UAAU,GAAG,GAAG,GAAG;GAC7B;AAED,EAAA,IAAMU,kBAAkB,GAAG,CAACV,UAAU,IAAIC,MAAM;AAChD,EAAA,IAAMU,YAAY,GAAGR,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,IAAA,CAAApB,YAAA,GAANoB,MAAM,CAAES,IAAI,MAAA,IAAA,IAAA7B,YAAA,gBAAAA,YAAA,GAAZA,YAAA,CAAc8B,OAAO,MAAA,IAAA,IAAA9B,YAAA,KAAA,MAAA,IAAA,CAAAA,YAAA,GAArBA,YAAA,CAAuB+B,QAAQ,MAAA,IAAA,IAAA/B,YAAA,KAAA,MAAA,GAAA,MAAA,GAA/BA,YAAA,CAAiCgC,KAAK;AAC3D,EAAA,IAAMC,WAAW,GAAGd,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,IAAA,CAAAlB,UAAA,GAAJkB,IAAI,CAAEU,IAAI,MAAA,IAAA,IAAA5B,UAAA,gBAAAA,UAAA,GAAVA,UAAA,CAAY6B,OAAO,MAAA,IAAA,IAAA7B,UAAA,KAAA,MAAA,IAAA,CAAAA,UAAA,GAAnBA,UAAA,CAAqB8B,QAAQ,MAAA,IAAA,IAAA9B,UAAA,KAAA,MAAA,GAAA,MAAA,GAA7BA,UAAA,CAA+B+B,KAAK;EAExD,IAAME,SAAS,GAAG,CAAC/B,aAAa,CAACgC,QAAQ,CAAC5B,GAAG,CAAC;AAE9C,EAAA,oBACE6B,IAAA,CAAA,KAAA,EAAA;AAAAC,IAAAA,QAAA,gBACEC,GAAA,CAAA,KAAA,EAAA;MACEC,SAAS,EAAEC,UAAU,CAAC;AACpB,QAAA,qBAAqB,EACnBb,kBAAkB,IAAIM,WAAW,GAAGL;OACvC;KACF,CAAC,eACFQ,IAAA,CAAA,KAAA,EAAA;AACEG,MAAAA,SAAS,EAAC,sDAAsD;AAChE,MAAA,aAAA,EAAY,sBAAsB;AAClCE,MAAAA,GAAG,EAAE3B,UAAW;AAChB4B,MAAAA,KAAK,EAAErB,SAAU;MAAAgB,QAAA,EAAA,cAEjBC,GAAA,CAAA,KAAA,EAAAK,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EACM/B,UAAU,CAAA,EACVC,SAAS,CAAA,EAAA,EAAA,EAAA;AACb0B,QAAAA,SAAS,EAAC,iGAAiG;AAC3G,QAAA,aAAA,EAAY,oBAAoB;QAAAF,QAAA,eAEhCC,GAAA,CAACM,YAAY,EAAA;AACXL,UAAAA,SAAS,EAAC,wFAAwF;AAClGM,UAAAA,IAAI,EAAE;SACP;AAAC,OAAA,CACC,CAAC,eACNT,IAAA,CAACU,KAAK,EAAA;AACJP,QAAAA,SAAS,EAAC,yCAAyC;AACnDQ,QAAAA,OAAO,EAAExC,GAAI;AAAA8B,QAAAA,QAAA,EAAA,cAEbC,GAAA,CAACU,QAAQ,EAAAL,eAAA,CAAA;AACPM,UAAAA,OAAO,EAAEf,SAAU;AACnB,UAAA,aAAA,EAAY,2BAA2B;AACvCgB,UAAAA,QAAQ,EAAE5C,4BAA6B;AACvCK,UAAAA,EAAE,EAAEJ,GAAI;AACR4C,UAAAA,IAAI,EAAE5C,GAAI;AACV6C,UAAAA,eAAe,EAAE,SAAjBA,eAAeA,CAAEH,OAAO,EAAI;AAC1B5C,YAAAA,QAAQ,CAAC;AAAEgD,cAAAA,MAAM,EAAE;AAAEF,gBAAAA,IAAI,EAAE5C,GAAG;AAAE0C,gBAAAA,OAAO,EAAPA;AAAQ;AAAE,aAAC,CAAC;AAC9C,UAAA;AAAE,SAAA,EACE7C,aAAa,CAClB,CAAC,eACFkC,GAAA,CAAA,MAAA,EAAA;AAAMC,UAAAA,SAAS,EAAC,cAAc;AAAAF,UAAAA,QAAA,EAAE7B;AAAK,SAAO,CAAC;AAAA,OACxC,CAAC;KACL,CAAC,eACN8B,GAAA,CAAA,KAAA,EAAA;MACEC,SAAS,EAAEC,UAAU,CAAC;AACpB,QAAA,qBAAqB,EACnBb,kBAAkB,IAAIM,WAAW,GAAGL;OACvC;AAAE,KACJ,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;ACvFD,IAAM0B,OAAO,GAAG,6BAA6B;AAE7C,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAGC,QAAQ,EAAA;AAAA,EAAA,OAAIC,KAAK,CAACC,GAAG,CAAA,EAAA,CAAAC,MAAA,CAAIL,OAAO,EAAA,GAAA,CAAA,CAAAK,MAAA,CAAIH,QAAQ,CAAE,CAAC;AAAA,CAAA;AAE7D,IAAMI,MAAM,GAAG,SAATA,MAAMA,CAAGC,OAAO,EAAA;AAAA,EAAA,OAAIJ,KAAK,CAACK,IAAI,CAACR,OAAO,EAAE;AAAES,IAAAA,kBAAkB,EAAEF;AAAQ,GAAC,CAAC;AAAA,CAAA;AAE9E,IAAMG,MAAM,GAAG,SAATA,MAAMA,CAAAjE,IAAA,EAAA;AAAA,EAAA,IAAMyD,QAAQ,GAAAzD,IAAA,CAARyD,QAAQ;IAAEK,OAAO,GAAA9D,IAAA,CAAP8D,OAAO;EAAA,OACjCJ,KAAK,CAACQ,KAAK,CAAA,EAAA,CAAAN,MAAA,CAAIL,OAAO,EAAA,GAAA,CAAA,CAAAK,MAAA,CAAIH,QAAQ,CAAA,EAAI;AAAEO,IAAAA,kBAAkB,EAAEF;AAAQ,GAAC,CAAC;AAAA,CAAA;AAExE,IAAMK,OAAO,GAAG,SAAVA,OAAOA,CAAGV,QAAQ,EAAA;EAAA,OAAIC,KAAK,CAAA,QAAA,CAAO,CAAA,EAAA,CAAAE,MAAA,CAAIL,OAAO,EAAA,GAAA,CAAA,CAAAK,MAAA,CAAIH,QAAQ,CAAE,CAAC;AAAA,CAAA;AAElE,IAAMW,qBAAqB,GAAG;AAAEZ,EAAAA,KAAK,EAALA,KAAK;AAAEK,EAAAA,MAAM,EAANA,MAAM;AAAEI,EAAAA,MAAM,EAANA,MAAM;AAAEE,EAAAA,OAAO,EAAPA;AAAQ,CAAC;;ACbzD,IAAME,0BAA0B,GAAG;AACnC,IAAMC,yBAAyB,GAAG;AAClC,IAAMC,6BAA6B,GAAG;;;;ACI7C,IAAMC,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAAxE,IAAA,EAAA;AAAA,EAAA,IAAMyD,QAAQ,GAAAzD,IAAA,CAARyD,QAAQ;IAAAgB,YAAA,GAAAzE,IAAA,CAAE0E,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;EAAA,OAC1DE,QAAQ,CAAA/B,eAAA,CAAA;AACNgC,IAAAA,QAAQ,EAAE,CAACL,6BAA6B,EAAEd,QAAQ,CAAC;IACnDoB,OAAO,EAAE,CAAC,CAACpB,QAAQ;IACnBqB,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,MAAA,OAAQV,qBAAqB,CAACZ,KAAK,CAACC,QAAQ,CAAC;AAAA,IAAA;GAAA,EACjDiB,OAAO,CACX,CAAC;AAAA,CAAA;AAEJ,IAAMK,2BAA2B,GAAG,SAA9BA,2BAA2BA,CAAItB,QAAQ,EAAA;AAAA,EAAA,IAAEiB,OAAO,GAAAM,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAtD,SAAA,GAAAsD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE;AAAA,EAAA,OACzDE,2BAA2B,CAACd,qBAAqB,CAACH,MAAM,EAAArB,eAAA,CAAA;AACtDuC,IAAAA,gBAAgB,EAAE,CAAC,CAACZ,6BAA6B,EAAEd,QAAQ,CAAC;GAAC,EAC1DiB,OAAO,CACX,CAAC;AAAA,CAAA;AAEJ,IAAMU,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAI3B,QAAQ,EAAA;AAAA,EAAA,IAAEiB,OAAO,GAAAM,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAtD,SAAA,GAAAsD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE;AAAA,EAAA,OAC1DE,2BAA2B,CAACd,qBAAqB,CAACD,OAAO,EAAAvB,eAAA,CAAA;AACvDuC,IAAAA,gBAAgB,EAAE,CAAC,CAACZ,6BAA6B,EAAEd,QAAQ,CAAC;GAAC,EAC1DiB,OAAO,CACX,CAAC;AAAA,CAAA;;;;ACbJ,IAAMW,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAC1B5B,QAAQ,EACR6B,UAAU,EAIP;AAAA,EAAA,IAHHC,iBAAiB,GAAAP,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAtD,SAAA,GAAAsD,SAAA,CAAA,CAAA,CAAA,GAAGQ,IAAI;AAAA,EAAA,IACxBC,+BAA+B,GAAAT,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAtD,SAAA,GAAAsD,SAAA,CAAA,CAAA,CAAA,GAAG,IAAI;AAAA,EAAA,IACtCU,oBAAoB,GAAAV,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAtD,SAAA,GAAAsD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE;EAEzB,IAAAW,qBAAA,GAIInB,0BAA0B,CAAC;AAAEf,MAAAA,QAAQ,EAARA;AAAS,KAAC,CAAC;IAHpCO,kBAAkB,GAAA2B,qBAAA,CAAxB7D,IAAI;IACJ8D,SAAS,GAAAD,qBAAA,CAATC,SAAS;IACTC,UAAU,GAAAF,qBAAA,CAAVE,UAAU;AAGZ,EAAA,IAAAC,qBAAA,GAAwCf,2BAA2B,CACjEtB,QAAQ,EACR;AAAEsC,MAAAA,SAAS,EAAER;AAAkB,KACjC,CAAC;IAHeS,mBAAmB,GAAAF,qBAAA,CAA3BG,MAAM;AAKd,EAAA,IAAAC,qBAAA,GAAyCd,4BAA4B,CACnE3B,QAAQ,EACR;AAAEsC,MAAAA,SAAS,EAAER;AAAkB,KACjC,CAAC;IAHeY,oBAAoB,GAAAD,qBAAA,CAA5BD,MAAM;AAKd,EAAA,IAAMG,+BAA+B,GAAGC,WAAW,CACjD,YAA4D;AAAA,IAAA,IAA3DC,eAAe,GAAAtB,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAtD,SAAA,GAAAsD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE;AAAA,IAAA,IAAEuB,2BAA2B,GAAAvB,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAtD,SAAA,GAAAsD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE;AACrD,IAAA,IAAIwB,OAAO,CAACD,2BAA2B,CAAC,EAAE;AACxC,MAAA,OAAOD,eAAe;AACxB,IAAA;IAEA,IAAMG,oBAAoB,GAAG,IAAIC,GAAG,CAClCJ,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,MAAA,GAAA,MAAA,GAAfA,eAAe,CAAEK,MAAM,CAACC,IAAI,CAAC,KAAK,CAAC,CAAC,CAACC,GAAG,CAAC,UAAA1G,MAAM,EAAA;AAAA,MAAA,OAAI,CAACA,MAAM,CAACK,GAAG,EAAEL,MAAM,CAAC;AAAA,IAAA,CAAA,CACzE,CAAC;IAED,IAAM2G,kBAAkB,GAAG,IAAIJ,GAAG,CAChCH,2BAA2B,CAACM,GAAG,CAAC,UAAAE,MAAM,EAAA;AAAA,MAAA,OAAI,CAACA,MAAM,CAACvG,GAAG,EAAEuG,MAAM,CAAC;AAAA,IAAA,CAAA,CAChE,CAAC;AAED,IAAA,IAAMC,wBAAwB,GAAGT,2BAA2B,CACzDM,GAAG,CAAC,UAAAE,MAAM,EAAA;AAAA,MAAA,OAAIN,oBAAoB,CAAC9C,GAAG,CAACoD,MAAM,CAACvG,GAAG,CAAC;AAAA,IAAA,CAAA,CAAC,CACnDmG,MAAM,CAACM,OAAO,CAAC;AAElB,IAAA,IAAMC,2BAA2B,GAAGZ,eAAe,CAACK,MAAM,CACxD,UAAAxG,MAAM,EAAA;AAAA,MAAA,OAAIA,MAAM,CAACK,GAAG,IAAI,CAACsG,kBAAkB,CAACK,GAAG,CAAChH,MAAM,CAACK,GAAG,CAAC;AAAA,IAAA,CAC7D,CAAC;IAED,OAAA,EAAA,CAAAoD,MAAA,CAAAwD,kBAAA,CAAWJ,wBAAwB,CAAA,EAAAI,kBAAA,CAAKF,2BAA2B,CAAA,CAAA;EACrE,CAAC,EACD,EACF,CAAC;AAED,EAAA,IAAMG,oBAAoB,GAAGC,OAAO,CAAC,YAAM;IACzC,IAAI,EAACtD,kBAAkB,KAAA,IAAA,IAAlBA,kBAAkB,KAAA,MAAA,IAAlBA,kBAAkB,CAAEuD,OAAO,CAAA,IAAI,CAACjC,UAAU,EAAE;AAC/C,MAAA,OAAO,KAAK;AACd,IAAA;AAEA,IAAA,IAAMkC,iBAAiB,GAAGC,KAAK,CAAC,KAAK,EAAEzD,kBAAkB,CAACuD,OAAO,CAAC,CAACG,IAAI,EAAE;IACzE,IAAMC,QAAQ,GAAGF,KAAK,CAAC,KAAK,EAAEnC,UAAU,CAAC,CAACoC,IAAI,EAAE;AAEhD,IAAA,OAAOE,cAAc,CAACJ,iBAAiB,EAAEG,QAAQ,CAAC;AACpD,EAAA,CAAC,EAAE,CAAC3D,kBAAkB,EAAEsB,UAAU,CAAC,CAAC;EAEpC,IAAMuC,6BAA6B,GAAGP,OAAO,CAC3C,YAAA;IAAA,OACE,CAAC1B,SAAS,KACV5B,kBAAkB,aAAlBA,kBAAkB,KAAA,MAAA,GAAA,MAAA,GAAlBA,kBAAkB,CAAEuD,OAAO,CAAA,IAC3BO,UAAU,CAAC9D,kBAAkB,KAAA,IAAA,IAAlBA,kBAAkB,KAAA,MAAA,GAAA,MAAA,GAAlBA,kBAAkB,CAAEuD,OAAO,CAAC,IACvC,CAACF,oBAAoB;AAAA,EAAA,CAAA,EACvB,CAACrD,kBAAkB,EAAE4B,SAAS,EAAEyB,oBAAoB,CACtD,CAAC;AAEDU,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IACEV,oBAAoB,IACpBrD,kBAAkB,IAClByB,+BAA+B,EAC/B;MACAU,oBAAoB,CAAC1C,QAAQ,CAAC;AAChC,IAAA;EACF,CAAC,EAAE,CAAC4D,oBAAoB,EAAE5D,QAAQ,EAAEgC,+BAA+B,CAAC,CAAC;AAErE,EAAA,IAAMuC,mBAAmB,GAAGV,OAAO,CAAC,YAAM;AACxC,IAAA,IACE,CAAC1B,SAAS,IACVkC,UAAU,CAAC9D,kBAAkB,KAAA,IAAA,IAAlBA,kBAAkB,KAAA,MAAA,GAAA,MAAA,GAAlBA,kBAAkB,CAAEuD,OAAO,CAAC,IACvC,CAACF,oBAAoB,EACrB;MACA,OAAOjB,+BAA+B,CACpCd,UAAU,EACVtB,kBAAkB,KAAA,IAAA,IAAlBA,kBAAkB,KAAA,MAAA,GAAA,MAAA,GAAlBA,kBAAkB,CAAEuD,OACtB,CAAC;AACH,IAAA;IAEA,OAAOjC,UAAU,IAAI,EAAE;AACzB,EAAA,CAAC,EAAE,CACDM,SAAS,EACT5B,kBAAkB,KAAA,IAAA,IAAlBA,kBAAkB,KAAA,MAAA,GAAA,MAAA,GAAlBA,kBAAkB,CAAEuD,OAAO,EAC3BF,oBAAoB,EACpB/B,UAAU,EACVc,+BAA+B,CAChC,CAAC;AAEF,EAAA,IAAMG,2BAA2B,GAAGe,OAAO,CAAC,YAAM;AAChD,IAAA,IAAIO,6BAA6B,EAAE;MACjC,OAAO7D,kBAAkB,CAACuD,OAAO;AACnC,IAAA;AAEA,IAAA,IAAI,CAACjC,UAAU,IAAIkB,OAAO,CAAClB,UAAU,CAAC,EAAE;AACtC,MAAA,OAAO,EAAE;AACX,IAAA;AAEA,IAAA,OAAOA,UAAU,CAACuB,GAAG,CAAC,UAAA1G,MAAM,EAAA;MAAA,OAAK;QAC/BK,GAAG,EAAEL,MAAM,CAACK,GAAG;QACfyH,OAAO,EAAE,CAACvC,oBAAoB,CAACtD,QAAQ,CAACjC,MAAM,CAACK,GAAG;OACnD;AAAA,IAAA,CAAC,CAAC;AACL,EAAA,CAAC,EAAE,CACDqH,6BAA6B,EAC7BvC,UAAU,EACVtB,kBAAkB,KAAA,IAAA,IAAlBA,kBAAkB,KAAA,MAAA,GAAA,MAAA,GAAlBA,kBAAkB,CAAEuD,OAAO,EAC3B7B,oBAAoB,CACrB,CAAC;AAEF,EAAA,IAAMwC,iBAAiB,GAAGZ,OAAO,CAAC,YAAM;IACtC,IAAMa,oBAAoB,GAAG5B,2BAA2B,CAACI,MAAM,CAC7DC,IAAI,CAAC,SAAS,CAChB,CAAC;AACD,IAAA,IAAMwB,iBAAiB,GAAGX,KAAK,CAAC,KAAK,EAAEU,oBAAoB,CAAC;AAE5D,IAAA,OAAOH,mBAAmB,CAACrB,MAAM,CAAC,UAAAxG,MAAM,EAAA;AAAA,MAAA,OACtCiI,iBAAiB,CAAChG,QAAQ,CAACjC,MAAM,CAACK,GAAG,CAAC;AAAA,IAAA,CACxC,CAAC;AACH,EAAA,CAAC,EAAE,CAACwH,mBAAmB,EAAEzB,2BAA2B,CAAC,CAAC;AAEtD,EAAA,IAAM8B,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,cAAc,EAAI;AACtCtC,IAAAA,mBAAmB,CAAC;AAClBvC,MAAAA,QAAQ,EAARA,QAAQ;AACRK,MAAAA,OAAO,EAAE;AAAEyE,QAAAA,SAAS,EAAE9E,QAAQ;AAAE8D,QAAAA,OAAO,EAAEe;AAAe;AAC1D,KAAC,CAAC;EACJ,CAAC;AAED,EAAA,IAAME,UAAU,GAAG,SAAbA,UAAUA,CAAGC,SAAS,EAAI;AAC9BJ,IAAAA,aAAa,CACX9B,2BAA2B,CAACM,GAAG,CAAC,UAAA1G,MAAM,EAAA;MAAA,OACpCA,MAAM,CAACK,GAAG,KAAKiI,SAAS,GAAA7F,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAQzC,MAAM,CAAA,EAAA,EAAA,EAAA;AAAE8H,QAAAA,OAAO,EAAE;AAAK,OAAA,CAAA,GAAK9H,MAAM;AAAA,IAAA,CACnE,CACF,CAAC;EACH,CAAC;AAED,EAAA,IAAMuI,UAAU,GAAG,SAAbA,UAAUA,CAAGD,SAAS,EAAI;AAC9BJ,IAAAA,aAAa,CACX9B,2BAA2B,CAACM,GAAG,CAAC,UAAA1G,MAAM,EAAA;MAAA,OACpCA,MAAM,CAACK,GAAG,KAAKiI,SAAS,GAAA7F,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAQzC,MAAM,CAAA,EAAA,EAAA,EAAA;AAAE8H,QAAAA,OAAO,EAAE;AAAI,OAAA,CAAA,GAAK9H,MAAM;AAAA,IAAA,CAClE,CACF,CAAC;EACH,CAAC;EAED,OAAO;AACL+H,IAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBF,IAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBW,IAAAA,2BAA2B,EAAE/C,SAAS;AACtCrF,IAAAA,4BAA4B,EAAEsF,UAAU;AACxCU,IAAAA,2BAA2B,EAA3BA,2BAA2B;AAC3BiC,IAAAA,UAAU,EAAVA,UAAU;AACVE,IAAAA,UAAU,EAAVA,UAAU;AACVL,IAAAA,aAAa,EAAbA,aAAa;AACblC,IAAAA,oBAAoB,EAApBA;GACD;AACH;;AC9KO,IAAMyC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGtD,UAAU,EAAA;AAAA,EAAA,OACzCuD,QAAQ,CAAC;AAAEC,IAAAA,SAAS,EAAE;GAAO,EAAExD,UAAU,CAAC;AAAA,CAAA;AAErC,IAAMyD,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,UAAU,EAAEzB,OAAO,EAAA;EAAA,OACpDZ,MAAM,CACJ,UAAA3G,IAAA,EAAA;AAAA,IAAA,IAAAiJ,UAAA,GAAAjJ,IAAA,CAAGS,KAAK;AAALA,MAAAA,KAAK,GAAAwI,UAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,UAAA;AAAA,IAAA,OACX7G,QAAQ,CAAC8G,IAAI,CAACC,OAAO,CAACH,UAAU,CAAC,CAAC,EAAEE,IAAI,CAACC,OAAO,CAAC1I,KAAK,CAAC,CAAC,CAAC;AAAA,EAAA,CAAA,EAC3D8G,OACF,CAAC;AAAA,CAAA;;;;;ACiBH,IAAM6B,OAAO,GAAG,SAAVA,OAAOA,CAAApJ,IAAA,EAYP;AAAA,EAAA,IAXJqJ,WAAW,GAAArJ,IAAA,CAAXqJ,WAAW;IAAAC,kBAAA,GAAAtJ,IAAA,CACXK,aAAa;AAAbA,IAAAA,aAAa,GAAAiJ,kBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,kBAAA;IAAAC,eAAA,GAAAvJ,IAAA,CAClBsF,UAAU;AAAVA,IAAAA,UAAU,GAAAiE,eAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,eAAA;IAAAC,iBAAA,GAAAxJ,IAAA,CACfyJ,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,iBAAA;IAAAE,aAAA,GAAA1J,IAAA,CACpByD,QAAQ;AAARA,IAAAA,QAAQ,GAAAiG,aAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,aAAA;IAAAC,oBAAA,GAAA3J,IAAA,CACb4J,eAAe;IAAfA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAGE,OAAO,CAACC,CAAC,CAAC,kCAAkC,CAAC,GAAAH,oBAAA;IAAAI,gBAAA,GAAA/J,IAAA,CAC/DgK,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;IAAAE,qBAAA,GAAAjK,IAAA,CAChByF,+BAA+B;AAA/BA,IAAAA,+BAA+B,GAAAwE,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IAAAC,qBAAA,GAAAlK,IAAA,CACtCuF,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAA2E,qBAAA,KAAA,MAAA,GAAG1E,IAAI,GAAA0E,qBAAA;IAAAC,qBAAA,GAAAnK,IAAA,CACxB0F,oBAAoB;AAApBA,IAAAA,oBAAoB,GAAAyE,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,gBAAA,GAAApK,IAAA,CACzBqK,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;AAEhB,EAAA,IAAAE,SAAA,GAAoCC,QAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzCtB,IAAAA,UAAU,GAAAwB,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,aAAa,GAAAF,UAAA,CAAA,CAAA,CAAA;AAChC,EAAA,IAAAG,UAAA,GAAwBJ,QAAQ,CAAC,KAAK,CAAC;IAAAK,UAAA,GAAAH,cAAA,CAAAE,UAAA,EAAA,CAAA,CAAA;AAAhCE,IAAAA,IAAI,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,OAAO,GAAAF,UAAA,CAAA,CAAA,CAAA;AACpB,EAAA,IAAAG,eAAA,GAAcC,cAAc,EAAE;IAAtBlB,CAAC,GAAAiB,eAAA,CAADjB,CAAC;AAET,EAAA,IAAAmB,qBAAA,GAQI5F,sBAAsB,CACxB5B,QAAQ,EACR6B,UAAU,EACVC,iBAAiB,EACjBE,+BAA+B,EAC/BC,oBACF,CAAC;IAbCsC,mBAAmB,GAAAiD,qBAAA,CAAnBjD,mBAAmB;IACnBzB,2BAA2B,GAAA0E,qBAAA,CAA3B1E,2BAA2B;IAC3BiC,UAAU,GAAAyC,qBAAA,CAAVzC,UAAU;IACVE,UAAU,GAAAuC,qBAAA,CAAVvC,UAAU;IACVL,aAAa,GAAA4C,qBAAA,CAAb5C,aAAa;IACblC,oBAAoB,GAAA8E,qBAAA,CAApB9E,oBAAoB;IACpB5F,4BAA4B,GAAA0K,qBAAA,CAA5B1K,4BAA4B;EAS9B,IAAMH,aAAa,GAAGqH,KAAK,CACzB,KAAK,EACLlB,2BAA2B,CAACI,MAAM,CAAC,UAAAxG,MAAM,EAAA;AAAA,IAAA,OAAIA,MAAM,CAAC8H,OAAO,KAAK,KAAK;AAAA,EAAA,CAAA,CACvE,CAAC;AAED,EAAA,IAAMiD,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,KAAK,EAAI;AAC7B,IAAA,IAAQ9J,MAAM,GAAW8J,KAAK,CAAtB9J,MAAM;MAAED,IAAI,GAAK+J,KAAK,CAAd/J,IAAI;IACpB,IAAI,CAACA,IAAI,IAAIC,MAAM,CAACT,EAAE,KAAKQ,IAAI,CAACR,EAAE,EAAE;IAEpC,IAAMwK,QAAQ,GAAGC,WAAW,CAC1B;MAAE7K,GAAG,EAAEa,MAAM,CAACT;KAAI,EAClB2F,2BACF,CAAC;IAED,IAAM+E,QAAQ,GAAGD,WAAW,CAAC;MAAE7K,GAAG,EAAEY,IAAI,CAACR;KAAI,EAAE2F,2BAA2B,CAAC;IAE3E,IAAI6E,QAAQ,KAAK,EAAE,IAAIE,QAAQ,KAAK,EAAE,EAAE;AAExC,IAAA,IAAMC,QAAQ,GAAAnE,kBAAA,CAAOb,2BAA2B,CAAC;IACjD,IAAAiF,gBAAA,GAAoBD,QAAQ,CAACE,MAAM,CAACL,QAAQ,EAAE,CAAC,CAAC;MAAAM,iBAAA,GAAAjB,cAAA,CAAAe,gBAAA,EAAA,CAAA,CAAA;AAAzCG,MAAAA,SAAS,GAAAD,iBAAA,CAAA,CAAA,CAAA;IAChBH,QAAQ,CAACE,MAAM,CAACH,QAAQ,EAAE,CAAC,EAAEK,SAAS,CAAC;IACvCtD,aAAa,CAACkD,QAAQ,CAAC;EACzB,CAAC;AAED,EAAA,IAAMhE,OAAO,GAAGqB,iBAAiB,CAACZ,mBAAmB,CAAC;AACtD,EAAA,IAAM4D,eAAe,GAAG7C,kBAAkB,CAACC,UAAU,EAAEzB,OAAO,CAAC;AAE/D,EAAA,IAAMsE,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAS;AACjC,IAAA,IAAMC,iBAAiB,GAAGrE,KAAK,CAAC,KAAK,EAAEF,OAAO,CAAC;AAE/Cc,IAAAA,aAAa,CACX9B,2BAA2B,CAACM,GAAG,CAAC,UAAA1G,MAAM,EAAA;AAAA,MAAA,OACpCiC,QAAQ,CAACjC,MAAM,CAACK,GAAG,EAAEsL,iBAAiB,CAAC,GACnCC,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE5L,MAAM,CAAC,GAC/BA,MAAM;AAAA,IAAA,CACZ,CACF,CAAC;EACH,CAAC;AAED,EAAA,IAAM6L,YAAY,GAAG,SAAfA,YAAYA,CAAAC,KAAA,EAAiD;AAAA,IAAA,IAAAC,YAAA,GAAAD,KAAA,CAA3C3I,MAAM;MAAU6I,SAAS,GAAAD,YAAA,CAAf9I,IAAI;MAAaF,OAAO,GAAAgJ,YAAA,CAAPhJ,OAAO;IACxD,IAAIA,OAAO,EAAEwF,UAAU,CAACyD,SAAS,CAAC,CAAC,KAC9B3D,UAAU,CAAC2D,SAAS,CAAC;EAC5B,CAAC;AAED,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAAC,KAAA,EAAA;AAAA,IAAA,IAAgBC,KAAK,GAAAD,KAAA,CAAf/I,MAAM,CAAIgJ,KAAK;IAAA,OAAS5B,aAAa,CAAC4B,KAAK,CAAC;AAAA,EAAA,CAAA;AAEpE,EAAA,IACQC,IAAI,GAIRlC,WAAW,CAJbmC,IAAI;IAAAC,oBAAA,GAIFpC,WAAW,CAHb,aAAa,CAAA;AAAEqC,IAAAA,UAAU,GAAAD,oBAAA,KAAA,MAAA,GAAG,yBAAyB,GAAAA,oBAAA;IAC9CE,WAAW,GAEhBtC,WAAW,CAFbuC,KAAK;AACFC,IAAAA,eAAe,GAAAC,wBAAA,CAChBzC,WAAW,EAAA0C,SAAA,CAAA;EAEf,oBACE1K,IAAA,CAAC2K,OAAO,EAAA;AACAnC,IAAAA,IAAI,EAAJA,IAAI;AACVoC,IAAAA,YAAY,EAAE,SAAdA,YAAYA,CAAEC,MAAM,EAAI;MACtBpC,OAAO,CAACoC,MAAM,CAAC;AACf,MAAA,IAAI,CAACA,MAAM,EAAExC,aAAa,CAAC,EAAE,CAAC;IAChC,CAAE;IAAApI,QAAA,EAAA,cAEFC,GAAA,CAAC4K,cAAc,EAAA;MAACC,OAAO,EAAA,IAAA;AAAA9K,MAAAA,QAAA,eACrBD,IAAA,CAACgL,MAAM,EAAAzK,aAAA,CAAAA,aAAA,CAAA;AACL,QAAA,aAAA,EAAa8J,UAAW;AACxB5J,QAAAA,IAAI,EAAC,MAAM;AACXwK,QAAAA,OAAO,EAAC;AAAO,OAAA,EACXT,eAAe,CAAA,EAAA,EAAA,EAAA;AAAAvK,QAAAA,QAAA,EAAA,CAElBiK,IAAI,iBAAIhK,GAAA,CAACgK,IAAI,EAAA;AAACzJ,UAAAA,IAAI,EAAE;AAAG,SAAE,CAAC,EAC1B6J,WAAW,iBAAIpK,GAAA,CAAA,MAAA,EAAA;AAAAD,UAAAA,QAAA,EAAOqK;AAAW,SAAO,CAAC;OAAA,CACpC;AAAC,KACK,CAAC,eACjBpK,GAAA,CAACgL,cAAc,EAAA;AACbC,MAAAA,KAAK,EAAC,KAAK;AACXhL,MAAAA,SAAS,EAAC,sEAAsE;AAAAF,MAAAA,QAAA,eAEhFD,IAAA,CAAA,KAAA,EAAA;AAAK,QAAA,aAAA,EAAY,sCAAsC;QAAAC,QAAA,EAAA,CACpDmH,YAAY,iBACXpH,IAAA,CAAA,KAAA,EAAA;AAAKG,UAAAA,SAAS,EAAC,cAAc;UAAAF,QAAA,EAAA,cAC3BC,GAAA,CAACkL,MAAM,EAAA;AAACjL,YAAAA,SAAS,EAAC;AAA2F,WAAE,CAAC,eAChHD,GAAA,CAACmL,KAAK,EAAA9K,aAAA,CAAA;AACJJ,YAAAA,SAAS,EAAC,MAAM;AAChB,YAAA,aAAA,EAAY,yBAAyB;AACrCmL,YAAAA,WAAW,EAAE7D,CAAC,CAAC,+BAA+B,CAAE;AAChD8D,YAAAA,IAAI,EAAC,QAAQ;AACbtB,YAAAA,KAAK,EAAEtD,UAAW;AAClB6E,YAAAA,QAAQ,EAAEzB;WAAa,EACnBpC,WAAW,CAChB,CAAC;AAAA,SACC,CACN,EACAxD,OAAO,CAACoF,eAAe,CAAC,iBACvBrJ,GAAA,CAAA,MAAA,EAAA;AAAMC,UAAAA,SAAS,EAAC,gCAAgC;AAAAF,UAAAA,QAAA,EAC7CsH;AAAe,SACZ,CACP,EACA9B,UAAU,CAAC8D,eAAe,CAAC,IAAI,CAAC5C,UAAU,iBACzCzG,GAAA,CAACuL,UAAU,EAAA;AACTC,UAAAA,kBAAkB,EAAEC,aAAc;AAClCC,UAAAA,SAAS,EAAE/C,aAAc;UAAA5I,QAAA,eAEzBC,GAAA,CAAC2L,eAAe,EAAA;AACdC,YAAAA,KAAK,EAAE1G,KAAK,CAAC,KAAK,EAAEmE,eAAe,CAAE;AACrCwC,YAAAA,QAAQ,EAAEC,2BAA4B;AAAA/L,YAAAA,QAAA,EAErCsJ,eAAe,CAAC/E,GAAG,CAAC,UAAA1G,MAAM,EAAA;cAAA,oBACzBmO,aAAA,CAACvO,IAAI,EAAA;AAEDM,gBAAAA,aAAa,EAAbA,aAAa;AACbF,gBAAAA,MAAM,EAANA,MAAM;AACNC,gBAAAA,aAAa,EAAbA,aAAa;AACbG,gBAAAA,4BAA4B,EAA5BA,4BAA4B;gBAE9BC,GAAG,EAAEL,MAAM,CAACK,GAAI;AAChBF,gBAAAA,QAAQ,EAAE0L;AAAa,eACxB,CAAC;YAAA,CACH;WACc;AAAC,SACR,CACb,EACAlE,UAAU,CAAC8D,eAAe,CAAC,IAC1B5C,UAAU,IACV4C,eAAe,CAAC/E,GAAG,CAAC,UAAA0H,KAAA,EAAA;AAAA,UAAA,IAAG/N,GAAG,GAAA+N,KAAA,CAAH/N,GAAG;YAAEC,KAAK,GAAA8N,KAAA,CAAL9N,KAAK;UAAA,oBAC/B4B,IAAA,CAACU,KAAK,EAAA;AACJP,YAAAA,SAAS,EAAC,mEAAmE;AAC7EQ,YAAAA,OAAO,EAAExC,GAAI;AAAA8B,YAAAA,QAAA,EAAA,cAGbC,GAAA,CAACU,QAAQ,EAAAL,aAAA,CAAA;AACPM,cAAAA,OAAO,EAAE,CAAC9C,aAAa,CAACgC,QAAQ,CAAC5B,GAAG,CAAE;AACtC,cAAA,aAAA,EAAY,2BAA2B;AACvCI,cAAAA,EAAE,EAAEJ,GAAI;AACR4C,cAAAA,IAAI,EAAE5C,GAAI;AACV6C,cAAAA,eAAe,EAAE,SAAjBA,eAAeA,CAAEH,OAAO,EAAI;AAC1B8I,gBAAAA,YAAY,CAAC;AAAE1I,kBAAAA,MAAM,EAAE;AAAEF,oBAAAA,IAAI,EAAE5C,GAAG;AAAE0C,oBAAAA,OAAO,EAAPA;AAAQ;AAAE,iBAAC,CAAC;AAClD,cAAA;AAAE,aAAA,EACE7C,aAAa,CAClB,CAAC,eACFkC,GAAA,CAAA,MAAA,EAAA;AAAMC,cAAAA,SAAS,EAAC,cAAc;AAAAF,cAAAA,QAAA,EAAE7B;AAAK,aAAO,CAAC;AAAA,WAAA,EAZxCD,GAaA,CAAC;AAAA,QAAA,CACT,CAAC,eACJ+B,GAAA,CAACiM,SAAS,EAAA,EAAE,CAAC,EACZ,CAAC,CAACnF,WAAW,iBACZhH,IAAA,CAAAoM,QAAA,EAAA;AAAAnM,UAAAA,QAAA,GACG+G,WAAW,eACZ9G,GAAA,CAACiM,SAAS,IAAE,CAAC;SACb,CACH,eACDnM,IAAA,CAAA,KAAA,EAAA;AAAKG,UAAAA,SAAS,EAAC,kCAAkC;UAAAF,QAAA,EAAA,cAC/CC,GAAA,CAAC8K,MAAM,EAAA;AACL,YAAA,aAAA,EAAY,mCAAmC;AAC/CvK,YAAAA,IAAI,EAAC,IAAI;AACTwK,YAAAA,OAAO,EAAC,OAAO;AACfoB,YAAAA,OAAO,EAAE7C,oBAAqB;YAAAvJ,QAAA,EAE7BwH,CAAC,CAAC,gCAAgC;AAAC,WAC9B,CAAC,eACTvH,GAAA,CAAC8K,MAAM,EAAA;AACL,YAAA,aAAA,EAAY,gCAAgC;AAC5CvK,YAAAA,IAAI,EAAC,IAAI;AACTwK,YAAAA,OAAO,EAAC,SAAS;YACjBoB,OAAO,EAAE,SAATA,OAAOA,GAAA;cAAA,OAAQvI,oBAAoB,CAAC1C,QAAQ,CAAC;YAAA,CAAC;YAAAnB,QAAA,EAE7CwH,CAAC,CAAC,8BAA8B;AAAC,WAC5B,CAAC;AAAA,SACN,CAAC;OACH;AAAC,KACQ,CAAC;AAAA,GACV,CAAC;AAEd;AAcAV,OAAO,CAACuF,WAAW,GAAG,SAAS;;;;","x_google_ignoreList":[0]}
|
package/dist/Columns.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { C as COLUMNS_ORDER_STORAGE_KEY, H as HIDDEN_COLUMNS_STORAGE_KEY, T as TABLE_CONFIGURATION_QUERY_KEY, a as default, u as useTableConfigurations } from './Columns-
|
|
1
|
+
export { C as COLUMNS_ORDER_STORAGE_KEY, H as HIDDEN_COLUMNS_STORAGE_KEY, T as TABLE_CONFIGURATION_QUERY_KEY, a as default, u as useTableConfigurations } from './Columns-D68XA-e7.js';
|
|
2
2
|
import '@babel/runtime/helpers/defineProperty';
|
|
3
3
|
import '@babel/runtime/helpers/toConsumableArray';
|
|
4
4
|
import '@babel/runtime/helpers/slicedToArray';
|
|
@@ -17,6 +17,7 @@ import '@bigbinary/neetoui/Button';
|
|
|
17
17
|
import 'ramda';
|
|
18
18
|
import 'react-i18next';
|
|
19
19
|
import './inject-css-C2dztUxs.js';
|
|
20
|
+
import './utilities.esm-CS21Daln.js';
|
|
20
21
|
import 'classnames';
|
|
21
22
|
import '@bigbinary/neeto-icons/Drag';
|
|
22
23
|
import 'react/jsx-runtime';
|
package/dist/Columns.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Columns.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Columns.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/StatusDropdown.js
CHANGED