@bigbinary/neeto-molecules 4.0.12 → 4.0.13

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.
@@ -6,14 +6,14 @@ import { useCallback, useMemo, useEffect, useState, createElement } from 'react'
6
6
  import { DndContext } from '@dnd-kit/core';
7
7
  import { useSortable, SortableContext } from '@dnd-kit/sortable';
8
8
  import i18next from 'i18next';
9
- import { isNotEqualDeep, isNotEmpty, noop, removeBy, existsBy, findIndexBy } from '@bigbinary/neeto-cist';
9
+ import { isNotEqualDeep, isNotEmpty, noop, removeBy, findIndexBy } from '@bigbinary/neeto-cist';
10
10
  import Search from '@bigbinary/neeto-icons/Search';
11
11
  import Checkbox from '@bigbinary/neetoui/Checkbox';
12
12
  import Dropdown from '@bigbinary/neetoui/Dropdown';
13
13
  import Input from '@bigbinary/neetoui/Input';
14
14
  import Label from '@bigbinary/neetoui/Label';
15
15
  import Button from '@bigbinary/neetoui/Button';
16
- import { isEmpty, prop, pluck, filter, includes, trim, toLower, union, without, __, equals, pipe, identity } from 'ramda';
16
+ import { isEmpty, prop, pluck, filter, includes, trim, toLower, assoc } from 'ramda';
17
17
  import { useTranslation } from 'react-i18next';
18
18
  import { n } from './inject-css-DmrvuTKK.js';
19
19
  import Drag from '@bigbinary/neeto-icons/Drag';
@@ -21,9 +21,6 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
21
21
  import { useQuery } from '@tanstack/react-query';
22
22
  import useMutationWithInvalidation from '@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation';
23
23
  import axios from 'axios';
24
- import { create as create$1 } from 'zustand';
25
- import { persist } from 'zustand/middleware';
26
- import { getFromLocalStorage, removeFromLocalStorage } from '@bigbinary/neeto-commons-frontend/utils/general';
27
24
 
28
25
  var css = ":root{--neeto-molecules-columns-menu-max-width:31.25rem}.neeto-molecules-columns__container{max-width:31.25rem;max-width:var(--neeto-molecules-columns-menu-max-width)}.neeto-molecules-columns__sortable-item .neeto-ui-cursor-grab{cursor:grab}.neeto-molecules-columns__sortable-item .neeto-ui-cursor-grab:active{cursor:grabbing}.neeto-molecules-columns__sortable-item:hover .neeto-ui-text-gray-400{color:#6b7280}";
29
26
  n(css,{});
@@ -80,8 +77,8 @@ const CSS = /*#__PURE__*/Object.freeze({
80
77
  }
81
78
  });
82
79
 
83
- function ownKeys$4(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; }
84
- function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
80
+ 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; }
81
+ 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), !0).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; }
85
82
  var Item = function Item(_ref) {
86
83
  var column = _ref.column,
87
84
  hiddenColumns = _ref.hiddenColumns,
@@ -110,13 +107,13 @@ var Item = function Item(_ref) {
110
107
  children: /*#__PURE__*/jsxs(Label, {
111
108
  className: "neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer neeto-ui-items-center px-4 py-2",
112
109
  htmlFor: key,
113
- children: [/*#__PURE__*/jsx("div", _objectSpread$4(_objectSpread$4(_objectSpread$4({}, attributes), listeners), {}, {
110
+ children: [/*#__PURE__*/jsx("div", _objectSpread$3(_objectSpread$3(_objectSpread$3({}, attributes), listeners), {}, {
114
111
  className: "neeto-ui-mr-2 neeto-ui-cursor-grab neeto-ui-flex neeto-ui-items-center",
115
112
  children: /*#__PURE__*/jsx(Drag, {
116
113
  className: "neeto-ui-text-gray-400",
117
114
  size: 16
118
115
  })
119
- })), /*#__PURE__*/jsx(Checkbox, _objectSpread$4({
116
+ })), /*#__PURE__*/jsx(Checkbox, _objectSpread$3({
120
117
  checked: !hiddenColumns.includes(key),
121
118
  "data-cy": "neeto-ui-columns-checkbox",
122
119
  id: key,
@@ -158,13 +155,13 @@ var HIDDEN_COLUMNS_STORAGE_KEY = "neeto-molecules-hidden-columns";
158
155
  var COLUMNS_ORDER_STORAGE_KEY = "neeto-molecules-columns-order";
159
156
  var TABLE_CONFIGURATION_QUERY_KEY = "table-configuration";
160
157
 
161
- 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; }
162
- 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), !0).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; }
158
+ 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; }
159
+ 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), !0).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; }
163
160
  var useFetchTableConfiguration = function useFetchTableConfiguration(_ref) {
164
161
  var tableKey = _ref.tableKey,
165
162
  _ref$options = _ref.options,
166
163
  options = _ref$options === void 0 ? {} : _ref$options;
167
- return useQuery(_objectSpread$3({
164
+ return useQuery(_objectSpread$2({
168
165
  queryKey: [TABLE_CONFIGURATION_QUERY_KEY, tableKey],
169
166
  enabled: !!tableKey,
170
167
  queryFn: function queryFn() {
@@ -174,22 +171,23 @@ var useFetchTableConfiguration = function useFetchTableConfiguration(_ref) {
174
171
  };
175
172
  var useUpdateTableConfiguration = function useUpdateTableConfiguration(tableKey) {
176
173
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
177
- return useMutationWithInvalidation(tableConfigurationApi.update, _objectSpread$3({
174
+ return useMutationWithInvalidation(tableConfigurationApi.update, _objectSpread$2({
178
175
  keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
179
176
  }, options));
180
177
  };
181
178
  var useDestroyTableConfiguration = function useDestroyTableConfiguration(tableKey) {
182
179
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
183
- return useMutationWithInvalidation(tableConfigurationApi.destroy, _objectSpread$3({
180
+ return useMutationWithInvalidation(tableConfigurationApi.destroy, _objectSpread$2({
184
181
  keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
185
182
  }, options));
186
183
  };
187
184
 
188
- 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; }
189
- 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), !0).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; }
185
+ 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; }
186
+ 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), !0).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; }
190
187
  var useTableConfigurations = function useTableConfigurations(tableKey, columnData) {
191
188
  var onMutationSuccess = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : noop;
192
189
  var allowConfigurationResetOnUpdate = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
190
+ var defaultHiddenColumns = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
193
191
  var _useFetchTableConfigu = useFetchTableConfiguration({
194
192
  tableKey: tableKey
195
193
  }),
@@ -245,15 +243,6 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
245
243
  }
246
244
  return columnData || [];
247
245
  }, [isLoading, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns, hasAdditionalColumns, columnData, processColumnsWithConfiguration]);
248
- var customizedColumns = useMemo(function () {
249
- if (shouldApplyTableConfiguration) {
250
- var visibleColumnKeys = pluck("key", tableConfiguration.columns.filter(prop("isShown")));
251
- return allProcessedColumns.filter(function (column) {
252
- return visibleColumnKeys.includes(column.key);
253
- });
254
- }
255
- return columnData || [];
256
- }, [allProcessedColumns, columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns, shouldApplyTableConfiguration]);
257
246
  var existingColumnConfiguration = useMemo(function () {
258
247
  if (shouldApplyTableConfiguration) {
259
248
  return tableConfiguration.columns;
@@ -264,10 +253,17 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
264
253
  return columnData.map(function (column) {
265
254
  return {
266
255
  key: column.key,
267
- isShown: true
256
+ isShown: !defaultHiddenColumns.includes(column.key)
268
257
  };
269
258
  });
270
- }, [shouldApplyTableConfiguration, columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns]);
259
+ }, [shouldApplyTableConfiguration, columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns, defaultHiddenColumns]);
260
+ var customizedColumns = useMemo(function () {
261
+ var visibleColumnsConfig = existingColumnConfiguration.filter(prop("isShown"));
262
+ var visibleColumnKeys = pluck("key", visibleColumnsConfig);
263
+ return allProcessedColumns.filter(function (column) {
264
+ return visibleColumnKeys.includes(column.key);
265
+ });
266
+ }, [allProcessedColumns, existingColumnConfiguration]);
271
267
  var updateColumns = function updateColumns(updatedColumns) {
272
268
  updateConfiguration({
273
269
  tableKey: tableKey,
@@ -279,21 +275,18 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
279
275
  };
280
276
  var hideColumn = function hideColumn(columnKey) {
281
277
  updateColumns(existingColumnConfiguration.map(function (column) {
282
- return column.key === columnKey ? _objectSpread$2(_objectSpread$2({}, column), {}, {
278
+ return column.key === columnKey ? _objectSpread$1(_objectSpread$1({}, column), {}, {
283
279
  isShown: false
284
280
  }) : column;
285
281
  }));
286
282
  };
287
283
  var showColumn = function showColumn(columnKey) {
288
284
  updateColumns(existingColumnConfiguration.map(function (column) {
289
- return column.key === columnKey ? _objectSpread$2(_objectSpread$2({}, column), {}, {
285
+ return column.key === columnKey ? _objectSpread$1(_objectSpread$1({}, column), {}, {
290
286
  isShown: true
291
287
  }) : column;
292
288
  }));
293
289
  };
294
- var reorderColumns = function reorderColumns(newOrder) {
295
- updateColumns(newOrder);
296
- };
297
290
  return {
298
291
  customizedColumns: customizedColumns,
299
292
  // Only visible columns (for displaying the columns in the table)
@@ -303,7 +296,7 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
303
296
  existingColumnConfiguration: existingColumnConfiguration,
304
297
  hideColumn: hideColumn,
305
298
  showColumn: showColumn,
306
- reorderColumns: reorderColumns,
299
+ updateColumns: updateColumns,
307
300
  destroyConfiguration: destroyConfiguration
308
301
  };
309
302
  };
@@ -319,17 +312,10 @@ var filterBySearchTerm = function filterBySearchTerm(searchTerm, columns) {
319
312
  return includes(trim(toLower(searchTerm)), trim(toLower(title)));
320
313
  }, columns);
321
314
  };
322
- var removeDeletedColumns = function removeDeletedColumns(hiddenColumns, columnData) {
323
- return hiddenColumns.filter(function (hiddenColumn) {
324
- return existsBy({
325
- dataIndex: hiddenColumn
326
- }, columnData);
327
- });
328
- };
329
315
 
330
- var _excluded$1 = ["actionBlock", "checkboxProps", "columnData", "isSearchable", "tableKey", "noColumnMessage", "searchProps", "allowConfigurationResetOnUpdate", "onMutationSuccess"];
331
- 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; }
332
- 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), !0).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; }
316
+ var _excluded = ["actionBlock", "checkboxProps", "columnData", "isSearchable", "tableKey", "noColumnMessage", "searchProps", "allowConfigurationResetOnUpdate", "onMutationSuccess", "defaultHiddenColumns"];
317
+ 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; }
318
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).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; }
333
319
  var Columns = function Columns(_ref) {
334
320
  var actionBlock = _ref.actionBlock,
335
321
  _ref$checkboxProps = _ref.checkboxProps,
@@ -348,7 +334,9 @@ var Columns = function Columns(_ref) {
348
334
  allowConfigurationResetOnUpdate = _ref$allowConfigurati === void 0 ? true : _ref$allowConfigurati,
349
335
  _ref$onMutationSucces = _ref.onMutationSuccess,
350
336
  onMutationSuccess = _ref$onMutationSucces === void 0 ? noop : _ref$onMutationSucces,
351
- dropdownProps = _objectWithoutProperties(_ref, _excluded$1);
337
+ _ref$defaultHiddenCol = _ref.defaultHiddenColumns,
338
+ defaultHiddenColumns = _ref$defaultHiddenCol === void 0 ? [] : _ref$defaultHiddenCol,
339
+ dropdownProps = _objectWithoutProperties(_ref, _excluded);
352
340
  var Divider = Dropdown.Divider,
353
341
  Menu = Dropdown.Menu,
354
342
  MenuItem = Dropdown.MenuItem;
@@ -358,12 +346,12 @@ var Columns = function Columns(_ref) {
358
346
  setSearchTerm = _useState2[1];
359
347
  var _useTranslation = useTranslation(),
360
348
  t = _useTranslation.t;
361
- var _useTableConfiguratio = useTableConfigurations(tableKey, columnData, onMutationSuccess, allowConfigurationResetOnUpdate),
349
+ var _useTableConfiguratio = useTableConfigurations(tableKey, columnData, onMutationSuccess, allowConfigurationResetOnUpdate, defaultHiddenColumns),
362
350
  allProcessedColumns = _useTableConfiguratio.allProcessedColumns,
363
351
  existingColumnConfiguration = _useTableConfiguratio.existingColumnConfiguration,
364
352
  hideColumn = _useTableConfiguratio.hideColumn,
365
353
  showColumn = _useTableConfiguratio.showColumn,
366
- reorderColumns = _useTableConfiguratio.reorderColumns,
354
+ updateColumns = _useTableConfiguratio.updateColumns,
367
355
  destroyConfiguration = _useTableConfiguratio.destroyConfiguration;
368
356
  var hiddenColumns = pluck("key", existingColumnConfiguration.filter(function (column) {
369
357
  return !column.isShown;
@@ -384,10 +372,16 @@ var Columns = function Columns(_ref) {
384
372
  _newOrder$splice2 = _slicedToArray(_newOrder$splice, 1),
385
373
  movedItem = _newOrder$splice2[0];
386
374
  newOrder.splice(newIndex, 0, movedItem);
387
- reorderColumns(newOrder);
375
+ updateColumns(newOrder);
388
376
  };
389
377
  var columns = getHidableColumns(allProcessedColumns);
390
378
  var filteredColumns = filterBySearchTerm(searchTerm, columns);
379
+ var handleHideAllColumns = function handleHideAllColumns() {
380
+ var columnsToHideKeys = pluck("key", columns);
381
+ updateColumns(existingColumnConfiguration.map(function (column) {
382
+ return includes(column.key, columnsToHideKeys) ? assoc("isShown", false, column) : column;
383
+ }));
384
+ };
391
385
  var handleChange = function handleChange(_ref2) {
392
386
  var _ref2$target = _ref2.target,
393
387
  dataIndex = _ref2$target.name,
@@ -398,7 +392,7 @@ var Columns = function Columns(_ref) {
398
392
  var value = _ref3.target.value;
399
393
  return setSearchTerm(value);
400
394
  };
401
- return /*#__PURE__*/jsx(Dropdown, _objectSpread$1(_objectSpread$1({
395
+ return /*#__PURE__*/jsx(Dropdown, _objectSpread(_objectSpread({
402
396
  appendTo: document.body,
403
397
  buttonSize: "medium",
404
398
  buttonStyle: "text",
@@ -412,7 +406,7 @@ var Columns = function Columns(_ref) {
412
406
  children: /*#__PURE__*/jsxs("div", {
413
407
  className: "neeto-molecules-columns__container",
414
408
  "data-cy": "customize-columns-dropdown-container",
415
- children: [isSearchable && /*#__PURE__*/jsx(Input, _objectSpread$1({
409
+ children: [isSearchable && /*#__PURE__*/jsx(Input, _objectSpread({
416
410
  className: "px-4 py-2",
417
411
  "data-cy": "neeto-ui-columns-search",
418
412
  "data-testid": "neeto-ui-columns-search",
@@ -445,7 +439,7 @@ var Columns = function Columns(_ref) {
445
439
  children: /*#__PURE__*/jsx(Label, {
446
440
  className: "neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2",
447
441
  htmlFor: key,
448
- children: /*#__PURE__*/jsx(Checkbox, _objectSpread$1({
442
+ children: /*#__PURE__*/jsx(Checkbox, _objectSpread({
449
443
  checked: !hiddenColumns.includes(key),
450
444
  "data-cy": "neeto-ui-columns-checkbox",
451
445
  id: key,
@@ -457,16 +451,21 @@ var Columns = function Columns(_ref) {
457
451
  }, key);
458
452
  }), /*#__PURE__*/jsx(Divider, {}), !!actionBlock && /*#__PURE__*/jsxs(Fragment, {
459
453
  children: [actionBlock, /*#__PURE__*/jsx(Divider, {})]
460
- }), /*#__PURE__*/jsx("div", {
461
- className: "flex justify-end p-1 pr-3",
462
- children: /*#__PURE__*/jsx(Button, {
454
+ }), /*#__PURE__*/jsxs("div", {
455
+ className: "flex justify-end gap-2 p-1 pr-3",
456
+ children: [/*#__PURE__*/jsx(Button, {
457
+ "data-cy": "column-visibility-hide-all-button",
458
+ label: t("neetoMolecules.columns.hideAll"),
459
+ style: "tertiary",
460
+ onClick: handleHideAllColumns
461
+ }), /*#__PURE__*/jsx(Button, {
463
462
  "data-cy": "column-visibility-reset-button",
464
463
  label: t("neetoMolecules.columns.reset"),
465
464
  style: "secondary",
466
465
  onClick: function onClick() {
467
466
  return destroyConfiguration(tableKey);
468
467
  }
469
- })
468
+ })]
470
469
  })]
471
470
  })
472
471
  })
@@ -474,108 +473,5 @@ var Columns = function Columns(_ref) {
474
473
  };
475
474
  Columns.displayName = "Columns";
476
475
 
477
- /** @type {import("neetocommons/react-utils").ZustandStoreHook} */
478
- var useHiddenColumnStore = create$1(persist(function () {
479
- return {};
480
- }, {
481
- name: HIDDEN_COLUMNS_STORAGE_KEY
482
- }));
483
- var useHiddenColumns = function useHiddenColumns(localStorageKey) {
484
- var initialValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
485
- var hiddenColumns = useHiddenColumnStore(function (state) {
486
- return state[localStorageKey];
487
- });
488
- var setHiddenColumns = function setHiddenColumns(columns) {
489
- return useHiddenColumnStore.setState(_defineProperty({}, localStorageKey, columns));
490
- };
491
-
492
- // Migrates values from old location to new zustand location.
493
- useEffect(function () {
494
- var oldValue = getFromLocalStorage(localStorageKey);
495
- if (oldValue) {
496
- setHiddenColumns(oldValue);
497
- removeFromLocalStorage(localStorageKey);
498
- } else if (!hiddenColumns) {
499
- setHiddenColumns(initialValue);
500
- }
501
- }, [localStorageKey]);
502
- var hideColumn = function hideColumn(columns) {
503
- return setHiddenColumns(union(hiddenColumns, Array.isArray(columns) ? columns : [columns]));
504
- };
505
- var showColumn = function showColumn(columns) {
506
- return setHiddenColumns(without(Array.isArray(columns) ? columns : [columns], hiddenColumns));
507
- };
508
- var getVisibleColumnData = function getVisibleColumnData(columnData) {
509
- return removeBy({
510
- dataIndex: includes(__, hiddenColumns || [])
511
- }, columnData);
512
- };
513
- var onColumnDataChange = function onColumnDataChange(columnData) {
514
- if (isEmpty(columnData) || !hiddenColumns) return;
515
- var newHiddenColumns = removeDeletedColumns(hiddenColumns, columnData);
516
- if (!equals(newHiddenColumns, hiddenColumns)) {
517
- setHiddenColumns(newHiddenColumns);
518
- }
519
- };
520
- return {
521
- hiddenColumns: hiddenColumns,
522
- hideColumn: hideColumn,
523
- showColumn: showColumn,
524
- getVisibleColumnData: getVisibleColumnData,
525
- onColumnDataChange: onColumnDataChange
526
- };
527
- };
528
-
529
- var _excluded = ["hiddenColumns", "getVisibleColumnData"];
530
- 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; }
531
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).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; }
532
-
533
- /** @type {import("neetocommons/react-utils").ZustandStoreHook} */
534
- var useColumnOrderStore = create$1(persist(function () {
535
- return {};
536
- }, {
537
- name: COLUMNS_ORDER_STORAGE_KEY
538
- }));
539
- var useColumns = function useColumns(_ref) {
540
- var localStorageKey = _ref.localStorageKey,
541
- initialHiddenColumns = _ref.initialHiddenColumns,
542
- _ref$initialOrder = _ref.initialOrder,
543
- initialOrder = _ref$initialOrder === void 0 ? [] : _ref$initialOrder;
544
- var columnOrder = useColumnOrderStore(function (state) {
545
- return state[localStorageKey];
546
- }) || initialOrder;
547
- var setColumnOrder = function setColumnOrder(columns) {
548
- return useColumnOrderStore.setState(_defineProperty({}, localStorageKey, columns));
549
- };
550
- var _useHiddenColumns = useHiddenColumns(localStorageKey, initialHiddenColumns),
551
- hiddenColumns = _useHiddenColumns.hiddenColumns,
552
- getVisibleColumnData = _useHiddenColumns.getVisibleColumnData,
553
- hiddenColumnHelpers = _objectWithoutProperties(_useHiddenColumns, _excluded);
554
- var orderColumns = function orderColumns(columnData) {
555
- if (isEmpty(columnOrder)) return columnData;
556
- return columnData.sort(function (a, b) {
557
- if (!columnOrder.includes(a.dataIndex) || !columnOrder.includes(b.dataIndex)) {
558
- return 0;
559
- }
560
- return columnOrder.indexOf(a.dataIndex) - columnOrder.indexOf(b.dataIndex);
561
- });
562
- };
563
- var getColumnData = function getColumnData(_ref2) {
564
- var columnData = _ref2.columnData,
565
- _ref2$isHidable = _ref2.isHidable,
566
- isHidable = _ref2$isHidable === void 0 ? true : _ref2$isHidable,
567
- _ref2$isReOrderable = _ref2.isReOrderable,
568
- isReOrderable = _ref2$isReOrderable === void 0 ? false : _ref2$isReOrderable;
569
- return pipe(isHidable ? getVisibleColumnData : identity, isReOrderable ? orderColumns : identity)(columnData);
570
- };
571
- return _objectSpread(_objectSpread({}, hiddenColumnHelpers), {}, {
572
- hiddenColumns: hiddenColumns,
573
- columnOrder: columnOrder,
574
- getVisibleColumnData: getVisibleColumnData,
575
- setColumnOrder: setColumnOrder,
576
- getColumnData: getColumnData
577
- });
578
- };
579
-
580
- export { Columns as C, HIDDEN_COLUMNS_STORAGE_KEY as H, TABLE_CONFIGURATION_QUERY_KEY as T, useHiddenColumns as a, useHiddenColumnStore as b, COLUMNS_ORDER_STORAGE_KEY as c, useColumns as d, useColumnOrderStore as e, useTableConfigurations as u };
581
- //# sourceMappingURL=useColumns-BPD5xfeZ.js.map
476
+ export { Columns as C, HIDDEN_COLUMNS_STORAGE_KEY as H, TABLE_CONFIGURATION_QUERY_KEY as T, COLUMNS_ORDER_STORAGE_KEY as a, useTableConfigurations as u };
477
+ //# sourceMappingURL=Columns-CwbG5wLv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Columns-CwbG5wLv.js","sources":["../node_modules/@dnd-kit/utilities/dist/utilities.esm.js","../src/components/Columns/Item.jsx","../src/components/Columns/api.js","../src/components/Columns/constants.js","../src/components/Columns/useTableConfigurationsApi.js","../src/components/Columns/useTableConfigurations.js","../src/components/Columns/utils.js","../src/components/Columns/Columns.jsx"],"sourcesContent":["import { useMemo, useLayoutEffect, useEffect, useRef, useCallback } from 'react';\n\nfunction useCombinedRefs() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n\n return useMemo(() => node => {\n refs.forEach(ref => ref(node));\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n refs);\n}\n\n// https://github.com/facebook/react/blob/master/packages/shared/ExecutionEnvironment.js\nconst canUseDOM = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined';\n\nfunction isWindow(element) {\n const elementString = Object.prototype.toString.call(element);\n return elementString === '[object Window]' || // In Electron context the Window object serializes to [object global]\n elementString === '[object global]';\n}\n\nfunction isNode(node) {\n return 'nodeType' in node;\n}\n\nfunction getWindow(target) {\n var _target$ownerDocument, _target$ownerDocument2;\n\n if (!target) {\n return window;\n }\n\n if (isWindow(target)) {\n return target;\n }\n\n if (!isNode(target)) {\n return window;\n }\n\n return (_target$ownerDocument = (_target$ownerDocument2 = target.ownerDocument) == null ? void 0 : _target$ownerDocument2.defaultView) != null ? _target$ownerDocument : window;\n}\n\nfunction isDocument(node) {\n const {\n Document\n } = getWindow(node);\n return node instanceof Document;\n}\n\nfunction isHTMLElement(node) {\n if (isWindow(node)) {\n return false;\n }\n\n return node instanceof getWindow(node).HTMLElement;\n}\n\nfunction isSVGElement(node) {\n return node instanceof getWindow(node).SVGElement;\n}\n\nfunction getOwnerDocument(target) {\n if (!target) {\n return document;\n }\n\n if (isWindow(target)) {\n return target.document;\n }\n\n if (!isNode(target)) {\n return document;\n }\n\n if (isDocument(target)) {\n return target;\n }\n\n if (isHTMLElement(target) || isSVGElement(target)) {\n return target.ownerDocument;\n }\n\n return document;\n}\n\n/**\r\n * A hook that resolves to useEffect on the server and useLayoutEffect on the client\r\n * @param callback {function} Callback function that is invoked when the dependencies of the hook change\r\n */\n\nconst useIsomorphicLayoutEffect = canUseDOM ? useLayoutEffect : useEffect;\n\nfunction useEvent(handler) {\n const handlerRef = useRef(handler);\n useIsomorphicLayoutEffect(() => {\n handlerRef.current = handler;\n });\n return useCallback(function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return handlerRef.current == null ? void 0 : handlerRef.current(...args);\n }, []);\n}\n\nfunction useInterval() {\n const intervalRef = useRef(null);\n const set = useCallback((listener, duration) => {\n intervalRef.current = setInterval(listener, duration);\n }, []);\n const clear = useCallback(() => {\n if (intervalRef.current !== null) {\n clearInterval(intervalRef.current);\n intervalRef.current = null;\n }\n }, []);\n return [set, clear];\n}\n\nfunction useLatestValue(value, dependencies) {\n if (dependencies === void 0) {\n dependencies = [value];\n }\n\n const valueRef = useRef(value);\n useIsomorphicLayoutEffect(() => {\n if (valueRef.current !== value) {\n valueRef.current = value;\n }\n }, dependencies);\n return valueRef;\n}\n\nfunction useLazyMemo(callback, dependencies) {\n const valueRef = useRef();\n return useMemo(() => {\n const newValue = callback(valueRef.current);\n valueRef.current = newValue;\n return newValue;\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [...dependencies]);\n}\n\nfunction useNodeRef(onChange) {\n const onChangeHandler = useEvent(onChange);\n const node = useRef(null);\n const setNodeRef = useCallback(element => {\n if (element !== node.current) {\n onChangeHandler == null ? void 0 : onChangeHandler(element, node.current);\n }\n\n node.current = element;\n }, //eslint-disable-next-line\n []);\n return [node, setNodeRef];\n}\n\nfunction usePrevious(value) {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref.current;\n}\n\nlet ids = {};\nfunction useUniqueId(prefix, value) {\n return useMemo(() => {\n if (value) {\n return value;\n }\n\n const id = ids[prefix] == null ? 0 : ids[prefix] + 1;\n ids[prefix] = id;\n return prefix + \"-\" + id;\n }, [prefix, value]);\n}\n\nfunction createAdjustmentFn(modifier) {\n return function (object) {\n for (var _len = arguments.length, adjustments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n adjustments[_key - 1] = arguments[_key];\n }\n\n return adjustments.reduce((accumulator, adjustment) => {\n const entries = Object.entries(adjustment);\n\n for (const [key, valueAdjustment] of entries) {\n const value = accumulator[key];\n\n if (value != null) {\n accumulator[key] = value + modifier * valueAdjustment;\n }\n }\n\n return accumulator;\n }, { ...object\n });\n };\n}\n\nconst add = /*#__PURE__*/createAdjustmentFn(1);\nconst subtract = /*#__PURE__*/createAdjustmentFn(-1);\n\nfunction hasViewportRelativeCoordinates(event) {\n return 'clientX' in event && 'clientY' in event;\n}\n\nfunction isKeyboardEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n KeyboardEvent\n } = getWindow(event.target);\n return KeyboardEvent && event instanceof KeyboardEvent;\n}\n\nfunction isTouchEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n TouchEvent\n } = getWindow(event.target);\n return TouchEvent && event instanceof TouchEvent;\n}\n\n/**\r\n * Returns the normalized x and y coordinates for mouse and touch events.\r\n */\n\nfunction getEventCoordinates(event) {\n if (isTouchEvent(event)) {\n if (event.touches && event.touches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.touches[0];\n return {\n x,\n y\n };\n } else if (event.changedTouches && event.changedTouches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.changedTouches[0];\n return {\n x,\n y\n };\n }\n }\n\n if (hasViewportRelativeCoordinates(event)) {\n return {\n x: event.clientX,\n y: event.clientY\n };\n }\n\n return null;\n}\n\nconst CSS = /*#__PURE__*/Object.freeze({\n Translate: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n x,\n y\n } = transform;\n return \"translate3d(\" + (x ? Math.round(x) : 0) + \"px, \" + (y ? Math.round(y) : 0) + \"px, 0)\";\n }\n\n },\n Scale: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n scaleX,\n scaleY\n } = transform;\n return \"scaleX(\" + scaleX + \") scaleY(\" + scaleY + \")\";\n }\n\n },\n Transform: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n return [CSS.Translate.toString(transform), CSS.Scale.toString(transform)].join(' ');\n }\n\n },\n Transition: {\n toString(_ref) {\n let {\n property,\n duration,\n easing\n } = _ref;\n return property + \" \" + duration + \"ms \" + easing;\n }\n\n }\n});\n\nconst SELECTOR = 'a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]';\nfunction findFirstFocusableNode(element) {\n if (element.matches(SELECTOR)) {\n return element;\n }\n\n return element.querySelector(SELECTOR);\n}\n\nexport { CSS, add, canUseDOM, findFirstFocusableNode, getEventCoordinates, getOwnerDocument, getWindow, hasViewportRelativeCoordinates, isDocument, isHTMLElement, isKeyboardEvent, isNode, isSVGElement, isTouchEvent, isWindow, subtract, useCombinedRefs, useEvent, useInterval, useIsomorphicLayoutEffect, useLatestValue, useLazyMemo, useNodeRef, usePrevious, useUniqueId };\n//# sourceMappingURL=utilities.esm.js.map\n","import { useSortable } from \"@dnd-kit/sortable\";\nimport { CSS } from \"@dnd-kit/utilities\";\nimport { Drag } from \"neetoicons\";\nimport { Checkbox, Label } from \"neetoui\";\n\nconst Item = ({ column, hiddenColumns, checkboxProps, onToggle }) => {\n const { key, title } = column;\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\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 return (\n <div\n className=\"neeto-molecules-columns__sortable-item\"\n ref={setNodeRef}\n style={dragStyle}\n >\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer neeto-ui-items-center px-4 py-2\"\n htmlFor={key}\n >\n <div\n {...attributes}\n {...listeners}\n className=\"neeto-ui-mr-2 neeto-ui-cursor-grab neeto-ui-flex neeto-ui-items-center\"\n >\n <Drag className=\"neeto-ui-text-gray-400\" size={16} />\n </div>\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={onToggle}\n {...checkboxProps}\n />\n </Label>\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 { data: tableConfiguration, isLoading } = useFetchTableConfiguration({\n tableKey,\n });\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, // Only visible columns (for displaying the columns in the table)\n allProcessedColumns, // All columns (for displaying the columns in the Subheader)\n isTableConfigurationLoading: isLoading,\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 }) => 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 { DndContext } from \"@dnd-kit/core\";\nimport { SortableContext } from \"@dnd-kit/sortable\";\nimport i18next from \"i18next\";\nimport { isNotEmpty, findIndexBy, noop } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { assoc, isEmpty, pluck, includes } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\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 ...dropdownProps\n}) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n allProcessedColumns,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n updateColumns,\n destroyConfiguration,\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)\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 return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n position=\"bottom-end\"\n onClose={() => setSearchTerm(\"\")}\n {...dropdownProps}\n >\n <Menu>\n <div\n className=\"neeto-molecules-columns__container\"\n data-cy=\"customize-columns-dropdown-container\"\n >\n {isSearchable && (\n <Input\n className=\"px-4 py-2\"\n data-cy=\"neeto-ui-columns-search\"\n data-testid=\"neeto-ui-columns-search\"\n placeholder={t(\"neetoMolecules.columns.search\")}\n prefix={<Search />}\n type=\"search\"\n value={searchTerm}\n onChange={handleSearch}\n {...searchProps}\n />\n )}\n {isEmpty(filteredColumns) && (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {isNotEmpty(filteredColumns) && !searchTerm && (\n <DndContext onDragEnd={handleDragEnd}>\n <SortableContext items={pluck(\"key\", filteredColumns)}>\n {filteredColumns.map(column => (\n <Item\n {...{ checkboxProps, column, hiddenColumns }}\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 <MenuItem key={key}>\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2\"\n htmlFor={key}\n >\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))}\n <Divider />\n {!!actionBlock && (\n <>\n {actionBlock}\n <Divider />\n </>\n )}\n <div className=\"flex justify-end gap-2 p-1 pr-3\">\n <Button\n data-cy=\"column-visibility-hide-all-button\"\n label={t(\"neetoMolecules.columns.hideAll\")}\n style=\"tertiary\"\n onClick={handleHideAllColumns}\n />\n <Button\n data-cy=\"column-visibility-reset-button\"\n label={t(\"neetoMolecules.columns.reset\")}\n style=\"secondary\"\n onClick={() => destroyConfiguration(tableKey)}\n />\n </div>\n </div>\n </Menu>\n </Dropdown>\n );\n};\n\nColumns.propTypes = {\n /**\n * Controls whether the table configuration should be reset on adding custom fields (optional).\n */\n allowConfigurationResetOnUpdate: PropTypes.bool,\n /**\n * Extra action items that can be added at the end of the dropdown (optional).\n */\n actionBlock: PropTypes.element,\n /**\n * Additional props for the checkboxes in the dropdown (optional).\n */\n checkboxProps: PropTypes.object,\n /**\n * The list of columns from which the dropdown options are built (required).\n */\n columnData: PropTypes.array,\n /**\n * Controls whether the dropdown options should be searchable (optional).\n */\n isSearchable: PropTypes.bool,\n /**\n * The table key used to identify table configuration in the API (required).\n */\n tableKey: PropTypes.string,\n /**\n * The message to be shown when there are no columns to be displayed in the dropdown (optional).\n */\n noColumnMessage: PropTypes.string,\n /**\n * Props to be passed to the search input in the column dropdown. Only works when `isSearchable` is set to `true` (optional).\n */\n searchProps: PropTypes.object,\n /**\n * The function will be called when the mutation is successful (optional).\n */\n onMutationSuccess: PropTypes.func,\n};\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n"],"names":["Item","_ref","column","hiddenColumns","checkboxProps","onToggle","key","title","_useSortable","useSortable","id","attributes","listeners","setNodeRef","transform","transition","isDragging","dragStyle","CSS","Transform","toString","undefined","opacity","_jsx","className","ref","style","children","_jsxs","Label","htmlFor","_objectSpread","Drag","size","Checkbox","checked","includes","label","name","onChange","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","data","isLoading","_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","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","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useTableConfiguratio","handleDragEnd","event","active","over","oldIndex","findIndexBy","newIndex","newOrder","_newOrder$splice","splice","_newOrder$splice2","movedItem","filteredColumns","handleHideAllColumns","columnsToHideKeys","assoc","handleChange","_ref2","_ref2$target","target","dataIndex","handleSearch","_ref3","value","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","position","onClose","Input","placeholder","prefix","Search","type","DndContext","onDragEnd","SortableContext","items","_createElement","_ref4","_Fragment","Button","onClick","displayName"],"mappings":"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","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, C as default, e as useColumnOrderStore, d as useColumns, b as useHiddenColumnStore, a as useHiddenColumns, u as useTableConfigurations } from './useColumns-BPD5xfeZ.js';
1
+ export { a as COLUMNS_ORDER_STORAGE_KEY, H as HIDDEN_COLUMNS_STORAGE_KEY, T as TABLE_CONFIGURATION_QUERY_KEY, C as default, u as useTableConfigurations } from './Columns-CwbG5wLv.js';
2
2
  import '@babel/runtime/helpers/defineProperty';
3
3
  import '@babel/runtime/helpers/toConsumableArray';
4
4
  import '@babel/runtime/helpers/slicedToArray';
@@ -22,7 +22,4 @@ import 'react/jsx-runtime';
22
22
  import '@tanstack/react-query';
23
23
  import '@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation';
24
24
  import 'axios';
25
- import 'zustand';
26
- import 'zustand/middleware';
27
- import '@bigbinary/neeto-commons-frontend/utils/general';
28
25
  //# sourceMappingURL=Columns.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Columns.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Columns.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/SubHeader.js CHANGED
@@ -6,7 +6,7 @@ import { omit, not } from 'ramda';
6
6
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
7
7
  import { withT } from '@bigbinary/neeto-commons-frontend/react-utils';
8
8
  import Column from '@bigbinary/neeto-icons/Column';
9
- import { C as Columns$1 } from './useColumns-BPD5xfeZ.js';
9
+ import { C as Columns$1 } from './Columns-CwbG5wLv.js';
10
10
  import '@babel/runtime/helpers/toConsumableArray';
11
11
  import '@tanstack/react-query';
12
12
  import '@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation';
@@ -28,9 +28,6 @@ import '@bigbinary/neetoui/Input';
28
28
  import '@bigbinary/neetoui/Label';
29
29
  import 'react-i18next';
30
30
  import '@bigbinary/neeto-icons/Drag';
31
- import 'zustand';
32
- import 'zustand/middleware';
33
- import '@bigbinary/neeto-commons-frontend/utils/general';
34
31
 
35
32
  var _excluded$1 = ["t", "buttonProps", "columnData", "onMutationSuccess", "allowConfigurationResetOnUpdate", "tableKey"];
36
33
  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; }