@bigbinary/neeto-molecules 4.0.11 → 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.
Files changed (138) hide show
  1. package/dist/AuditLogs.js +1 -3
  2. package/dist/AuditLogs.js.map +1 -1
  3. package/dist/Builder.js +5 -5
  4. package/dist/Builder.js.map +1 -1
  5. package/dist/CalendarView.js +3 -6
  6. package/dist/CalendarView.js.map +1 -1
  7. package/dist/{useColumns-BPD5xfeZ.js → Columns-CwbG5wLv.js} +55 -159
  8. package/dist/Columns-CwbG5wLv.js.map +1 -0
  9. package/dist/Columns.js +1 -4
  10. package/dist/Columns.js.map +1 -1
  11. package/dist/ConfirmationModal.js +2 -2
  12. package/dist/ConfirmationModal.js.map +1 -1
  13. package/dist/EmailForm.js +1 -1
  14. package/dist/EmailForm.js.map +1 -1
  15. package/dist/EmailPreview.js +3 -3
  16. package/dist/EmailPreview.js.map +1 -1
  17. package/dist/EmojiReactions.js +1 -1
  18. package/dist/EmojiReactions.js.map +1 -1
  19. package/dist/Engagements.js +1 -1
  20. package/dist/Engagements.js.map +1 -1
  21. package/dist/FinderModal.js +1 -1
  22. package/dist/FinderModal.js.map +1 -1
  23. package/dist/IconPicker.js +1 -1
  24. package/dist/IconPicker.js.map +1 -1
  25. package/dist/IpRestriction.js +5 -5
  26. package/dist/IpRestriction.js.map +1 -1
  27. package/dist/LoginPage.js +2 -2
  28. package/dist/LoginPage.js.map +1 -1
  29. package/dist/Metadata.js +3 -3
  30. package/dist/Metadata.js.map +1 -1
  31. package/dist/NeetoWidget.js +1 -1
  32. package/dist/NeetoWidget.js.map +1 -1
  33. package/dist/Onboarding.js +4 -4
  34. package/dist/Onboarding.js.map +1 -1
  35. package/dist/OptionFields.js +1 -1
  36. package/dist/OptionFields.js.map +1 -1
  37. package/dist/PhoneNumber.js +1 -1
  38. package/dist/PhoneNumber.js.map +1 -1
  39. package/dist/ProductEmbed.js +3 -3
  40. package/dist/ProductEmbed.js.map +1 -1
  41. package/dist/PublishBlock.js +3 -3
  42. package/dist/PublishBlock.js.map +1 -1
  43. package/dist/PublishYourItem.js +1 -1
  44. package/dist/PublishYourItem.js.map +1 -1
  45. package/dist/Schedule.js +4 -4
  46. package/dist/Schedule.js.map +1 -1
  47. package/dist/SendToFields.js +5 -5
  48. package/dist/SendToFields.js.map +1 -1
  49. package/dist/Settings.js +1 -1
  50. package/dist/Settings.js.map +1 -1
  51. package/dist/ShareRecordingPane.js +1 -1
  52. package/dist/ShareRecordingPane.js.map +1 -1
  53. package/dist/ShareViaEmail.js +1 -1
  54. package/dist/ShareViaEmail.js.map +1 -1
  55. package/dist/ShareViaLink.js +8 -8
  56. package/dist/ShareViaLink.js.map +1 -1
  57. package/dist/SubHeader.js +1 -4
  58. package/dist/SubHeader.js.map +1 -1
  59. package/dist/Taxonomy.js +3 -5
  60. package/dist/Taxonomy.js.map +1 -1
  61. package/dist/TimezoneMismatchModal.js +2 -2
  62. package/dist/TimezoneMismatchModal.js.map +1 -1
  63. package/dist/ToggleFeatureCard.js +2 -2
  64. package/dist/ToggleFeatureCard.js.map +1 -1
  65. package/dist/VersionHistory.js +1 -1
  66. package/dist/VersionHistory.js.map +1 -1
  67. package/dist/cjs/AuditLogs.js +1 -3
  68. package/dist/cjs/AuditLogs.js.map +1 -1
  69. package/dist/cjs/Builder.js +5 -5
  70. package/dist/cjs/Builder.js.map +1 -1
  71. package/dist/cjs/CalendarView.js +3 -6
  72. package/dist/cjs/CalendarView.js.map +1 -1
  73. package/dist/cjs/{useColumns-CK2J7GSt.js → Columns-CZDLxh70.js} +52 -160
  74. package/dist/cjs/Columns-CZDLxh70.js.map +1 -0
  75. package/dist/cjs/Columns.js +6 -13
  76. package/dist/cjs/Columns.js.map +1 -1
  77. package/dist/cjs/ConfirmationModal.js +2 -2
  78. package/dist/cjs/ConfirmationModal.js.map +1 -1
  79. package/dist/cjs/EmailForm.js +1 -1
  80. package/dist/cjs/EmailForm.js.map +1 -1
  81. package/dist/cjs/EmailPreview.js +3 -3
  82. package/dist/cjs/EmailPreview.js.map +1 -1
  83. package/dist/cjs/EmojiReactions.js +1 -1
  84. package/dist/cjs/EmojiReactions.js.map +1 -1
  85. package/dist/cjs/Engagements.js +1 -1
  86. package/dist/cjs/Engagements.js.map +1 -1
  87. package/dist/cjs/FinderModal.js +1 -1
  88. package/dist/cjs/FinderModal.js.map +1 -1
  89. package/dist/cjs/IconPicker.js +1 -1
  90. package/dist/cjs/IconPicker.js.map +1 -1
  91. package/dist/cjs/IpRestriction.js +5 -5
  92. package/dist/cjs/IpRestriction.js.map +1 -1
  93. package/dist/cjs/LoginPage.js +2 -2
  94. package/dist/cjs/LoginPage.js.map +1 -1
  95. package/dist/cjs/Metadata.js +3 -3
  96. package/dist/cjs/Metadata.js.map +1 -1
  97. package/dist/cjs/NeetoWidget.js +1 -1
  98. package/dist/cjs/NeetoWidget.js.map +1 -1
  99. package/dist/cjs/Onboarding.js +4 -4
  100. package/dist/cjs/Onboarding.js.map +1 -1
  101. package/dist/cjs/OptionFields.js +1 -1
  102. package/dist/cjs/OptionFields.js.map +1 -1
  103. package/dist/cjs/PhoneNumber.js +1 -1
  104. package/dist/cjs/PhoneNumber.js.map +1 -1
  105. package/dist/cjs/ProductEmbed.js +3 -3
  106. package/dist/cjs/ProductEmbed.js.map +1 -1
  107. package/dist/cjs/PublishBlock.js +3 -3
  108. package/dist/cjs/PublishBlock.js.map +1 -1
  109. package/dist/cjs/PublishYourItem.js +1 -1
  110. package/dist/cjs/PublishYourItem.js.map +1 -1
  111. package/dist/cjs/Schedule.js +4 -4
  112. package/dist/cjs/Schedule.js.map +1 -1
  113. package/dist/cjs/SendToFields.js +5 -5
  114. package/dist/cjs/SendToFields.js.map +1 -1
  115. package/dist/cjs/Settings.js +1 -1
  116. package/dist/cjs/Settings.js.map +1 -1
  117. package/dist/cjs/ShareRecordingPane.js +1 -1
  118. package/dist/cjs/ShareRecordingPane.js.map +1 -1
  119. package/dist/cjs/ShareViaEmail.js +1 -1
  120. package/dist/cjs/ShareViaEmail.js.map +1 -1
  121. package/dist/cjs/ShareViaLink.js +8 -8
  122. package/dist/cjs/ShareViaLink.js.map +1 -1
  123. package/dist/cjs/SubHeader.js +2 -5
  124. package/dist/cjs/SubHeader.js.map +1 -1
  125. package/dist/cjs/Taxonomy.js +3 -5
  126. package/dist/cjs/Taxonomy.js.map +1 -1
  127. package/dist/cjs/TimezoneMismatchModal.js +2 -2
  128. package/dist/cjs/TimezoneMismatchModal.js.map +1 -1
  129. package/dist/cjs/ToggleFeatureCard.js +2 -2
  130. package/dist/cjs/ToggleFeatureCard.js.map +1 -1
  131. package/dist/cjs/VersionHistory.js +1 -1
  132. package/dist/cjs/VersionHistory.js.map +1 -1
  133. package/package.json +1 -1
  134. package/src/translations/fi.json +205 -1
  135. package/src/translations/hr.json +3 -1
  136. package/types/Columns.d.ts +1 -139
  137. package/dist/cjs/useColumns-CK2J7GSt.js.map +0 -1
  138. package/dist/useColumns-BPD5xfeZ.js.map +0 -1
@@ -23,9 +23,6 @@ var jsxRuntime = require('react/jsx-runtime');
23
23
  var reactQuery = require('@tanstack/react-query');
24
24
  var useMutationWithInvalidation = require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
25
25
  var axios = require('axios');
26
- var zustand = require('zustand');
27
- var middleware = require('zustand/middleware');
28
- var general = require('@bigbinary/neeto-commons-frontend/utils/general');
29
26
 
30
27
  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}";
31
28
  injectCss.n(css,{});
@@ -82,8 +79,8 @@ const CSS = /*#__PURE__*/Object.freeze({
82
79
  }
83
80
  });
84
81
 
85
- 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; }
86
- 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; }
82
+ 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; }
83
+ 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; }
87
84
  var Item = function Item(_ref) {
88
85
  var column = _ref.column,
89
86
  hiddenColumns = _ref.hiddenColumns,
@@ -112,13 +109,13 @@ var Item = function Item(_ref) {
112
109
  children: /*#__PURE__*/jsxRuntime.jsxs(Label, {
113
110
  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",
114
111
  htmlFor: key,
115
- children: [/*#__PURE__*/jsxRuntime.jsx("div", _objectSpread$4(_objectSpread$4(_objectSpread$4({}, attributes), listeners), {}, {
112
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", _objectSpread$3(_objectSpread$3(_objectSpread$3({}, attributes), listeners), {}, {
116
113
  className: "neeto-ui-mr-2 neeto-ui-cursor-grab neeto-ui-flex neeto-ui-items-center",
117
114
  children: /*#__PURE__*/jsxRuntime.jsx(Drag, {
118
115
  className: "neeto-ui-text-gray-400",
119
116
  size: 16
120
117
  })
121
- })), /*#__PURE__*/jsxRuntime.jsx(Checkbox, _objectSpread$4({
118
+ })), /*#__PURE__*/jsxRuntime.jsx(Checkbox, _objectSpread$3({
122
119
  checked: !hiddenColumns.includes(key),
123
120
  "data-cy": "neeto-ui-columns-checkbox",
124
121
  id: key,
@@ -160,13 +157,13 @@ var HIDDEN_COLUMNS_STORAGE_KEY = "neeto-molecules-hidden-columns";
160
157
  var COLUMNS_ORDER_STORAGE_KEY = "neeto-molecules-columns-order";
161
158
  var TABLE_CONFIGURATION_QUERY_KEY = "table-configuration";
162
159
 
163
- 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; }
164
- 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; }
160
+ 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; }
161
+ 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; }
165
162
  var useFetchTableConfiguration = function useFetchTableConfiguration(_ref) {
166
163
  var tableKey = _ref.tableKey,
167
164
  _ref$options = _ref.options,
168
165
  options = _ref$options === void 0 ? {} : _ref$options;
169
- return reactQuery.useQuery(_objectSpread$3({
166
+ return reactQuery.useQuery(_objectSpread$2({
170
167
  queryKey: [TABLE_CONFIGURATION_QUERY_KEY, tableKey],
171
168
  enabled: !!tableKey,
172
169
  queryFn: function queryFn() {
@@ -176,22 +173,23 @@ var useFetchTableConfiguration = function useFetchTableConfiguration(_ref) {
176
173
  };
177
174
  var useUpdateTableConfiguration = function useUpdateTableConfiguration(tableKey) {
178
175
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
179
- return useMutationWithInvalidation(tableConfigurationApi.update, _objectSpread$3({
176
+ return useMutationWithInvalidation(tableConfigurationApi.update, _objectSpread$2({
180
177
  keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
181
178
  }, options));
182
179
  };
183
180
  var useDestroyTableConfiguration = function useDestroyTableConfiguration(tableKey) {
184
181
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
185
- return useMutationWithInvalidation(tableConfigurationApi.destroy, _objectSpread$3({
182
+ return useMutationWithInvalidation(tableConfigurationApi.destroy, _objectSpread$2({
186
183
  keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
187
184
  }, options));
188
185
  };
189
186
 
190
- 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; }
191
- 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; }
187
+ 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; }
188
+ 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; }
192
189
  var useTableConfigurations = function useTableConfigurations(tableKey, columnData) {
193
190
  var onMutationSuccess = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : neetoCist.noop;
194
191
  var allowConfigurationResetOnUpdate = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
192
+ var defaultHiddenColumns = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
195
193
  var _useFetchTableConfigu = useFetchTableConfiguration({
196
194
  tableKey: tableKey
197
195
  }),
@@ -247,15 +245,6 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
247
245
  }
248
246
  return columnData || [];
249
247
  }, [isLoading, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns, hasAdditionalColumns, columnData, processColumnsWithConfiguration]);
250
- var customizedColumns = React.useMemo(function () {
251
- if (shouldApplyTableConfiguration) {
252
- var visibleColumnKeys = ramda.pluck("key", tableConfiguration.columns.filter(ramda.prop("isShown")));
253
- return allProcessedColumns.filter(function (column) {
254
- return visibleColumnKeys.includes(column.key);
255
- });
256
- }
257
- return columnData || [];
258
- }, [allProcessedColumns, columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns, shouldApplyTableConfiguration]);
259
248
  var existingColumnConfiguration = React.useMemo(function () {
260
249
  if (shouldApplyTableConfiguration) {
261
250
  return tableConfiguration.columns;
@@ -266,10 +255,17 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
266
255
  return columnData.map(function (column) {
267
256
  return {
268
257
  key: column.key,
269
- isShown: true
258
+ isShown: !defaultHiddenColumns.includes(column.key)
270
259
  };
271
260
  });
272
- }, [shouldApplyTableConfiguration, columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns]);
261
+ }, [shouldApplyTableConfiguration, columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns, defaultHiddenColumns]);
262
+ var customizedColumns = React.useMemo(function () {
263
+ var visibleColumnsConfig = existingColumnConfiguration.filter(ramda.prop("isShown"));
264
+ var visibleColumnKeys = ramda.pluck("key", visibleColumnsConfig);
265
+ return allProcessedColumns.filter(function (column) {
266
+ return visibleColumnKeys.includes(column.key);
267
+ });
268
+ }, [allProcessedColumns, existingColumnConfiguration]);
273
269
  var updateColumns = function updateColumns(updatedColumns) {
274
270
  updateConfiguration({
275
271
  tableKey: tableKey,
@@ -281,21 +277,18 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
281
277
  };
282
278
  var hideColumn = function hideColumn(columnKey) {
283
279
  updateColumns(existingColumnConfiguration.map(function (column) {
284
- return column.key === columnKey ? _objectSpread$2(_objectSpread$2({}, column), {}, {
280
+ return column.key === columnKey ? _objectSpread$1(_objectSpread$1({}, column), {}, {
285
281
  isShown: false
286
282
  }) : column;
287
283
  }));
288
284
  };
289
285
  var showColumn = function showColumn(columnKey) {
290
286
  updateColumns(existingColumnConfiguration.map(function (column) {
291
- return column.key === columnKey ? _objectSpread$2(_objectSpread$2({}, column), {}, {
287
+ return column.key === columnKey ? _objectSpread$1(_objectSpread$1({}, column), {}, {
292
288
  isShown: true
293
289
  }) : column;
294
290
  }));
295
291
  };
296
- var reorderColumns = function reorderColumns(newOrder) {
297
- updateColumns(newOrder);
298
- };
299
292
  return {
300
293
  customizedColumns: customizedColumns,
301
294
  // Only visible columns (for displaying the columns in the table)
@@ -305,7 +298,7 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
305
298
  existingColumnConfiguration: existingColumnConfiguration,
306
299
  hideColumn: hideColumn,
307
300
  showColumn: showColumn,
308
- reorderColumns: reorderColumns,
301
+ updateColumns: updateColumns,
309
302
  destroyConfiguration: destroyConfiguration
310
303
  };
311
304
  };
@@ -321,17 +314,10 @@ var filterBySearchTerm = function filterBySearchTerm(searchTerm, columns) {
321
314
  return ramda.includes(ramda.trim(ramda.toLower(searchTerm)), ramda.trim(ramda.toLower(title)));
322
315
  }, columns);
323
316
  };
324
- var removeDeletedColumns = function removeDeletedColumns(hiddenColumns, columnData) {
325
- return hiddenColumns.filter(function (hiddenColumn) {
326
- return neetoCist.existsBy({
327
- dataIndex: hiddenColumn
328
- }, columnData);
329
- });
330
- };
331
317
 
332
- var _excluded$1 = ["actionBlock", "checkboxProps", "columnData", "isSearchable", "tableKey", "noColumnMessage", "searchProps", "allowConfigurationResetOnUpdate", "onMutationSuccess"];
333
- 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; }
334
- 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; }
318
+ var _excluded = ["actionBlock", "checkboxProps", "columnData", "isSearchable", "tableKey", "noColumnMessage", "searchProps", "allowConfigurationResetOnUpdate", "onMutationSuccess", "defaultHiddenColumns"];
319
+ 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; }
320
+ 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; }
335
321
  var Columns = function Columns(_ref) {
336
322
  var actionBlock = _ref.actionBlock,
337
323
  _ref$checkboxProps = _ref.checkboxProps,
@@ -350,7 +336,9 @@ var Columns = function Columns(_ref) {
350
336
  allowConfigurationResetOnUpdate = _ref$allowConfigurati === void 0 ? true : _ref$allowConfigurati,
351
337
  _ref$onMutationSucces = _ref.onMutationSuccess,
352
338
  onMutationSuccess = _ref$onMutationSucces === void 0 ? neetoCist.noop : _ref$onMutationSucces,
353
- dropdownProps = _objectWithoutProperties(_ref, _excluded$1);
339
+ _ref$defaultHiddenCol = _ref.defaultHiddenColumns,
340
+ defaultHiddenColumns = _ref$defaultHiddenCol === void 0 ? [] : _ref$defaultHiddenCol,
341
+ dropdownProps = _objectWithoutProperties(_ref, _excluded);
354
342
  var Divider = Dropdown.Divider,
355
343
  Menu = Dropdown.Menu,
356
344
  MenuItem = Dropdown.MenuItem;
@@ -360,12 +348,12 @@ var Columns = function Columns(_ref) {
360
348
  setSearchTerm = _useState2[1];
361
349
  var _useTranslation = reactI18next.useTranslation(),
362
350
  t = _useTranslation.t;
363
- var _useTableConfiguratio = useTableConfigurations(tableKey, columnData, onMutationSuccess, allowConfigurationResetOnUpdate),
351
+ var _useTableConfiguratio = useTableConfigurations(tableKey, columnData, onMutationSuccess, allowConfigurationResetOnUpdate, defaultHiddenColumns),
364
352
  allProcessedColumns = _useTableConfiguratio.allProcessedColumns,
365
353
  existingColumnConfiguration = _useTableConfiguratio.existingColumnConfiguration,
366
354
  hideColumn = _useTableConfiguratio.hideColumn,
367
355
  showColumn = _useTableConfiguratio.showColumn,
368
- reorderColumns = _useTableConfiguratio.reorderColumns,
356
+ updateColumns = _useTableConfiguratio.updateColumns,
369
357
  destroyConfiguration = _useTableConfiguratio.destroyConfiguration;
370
358
  var hiddenColumns = ramda.pluck("key", existingColumnConfiguration.filter(function (column) {
371
359
  return !column.isShown;
@@ -386,10 +374,16 @@ var Columns = function Columns(_ref) {
386
374
  _newOrder$splice2 = _slicedToArray(_newOrder$splice, 1),
387
375
  movedItem = _newOrder$splice2[0];
388
376
  newOrder.splice(newIndex, 0, movedItem);
389
- reorderColumns(newOrder);
377
+ updateColumns(newOrder);
390
378
  };
391
379
  var columns = getHidableColumns(allProcessedColumns);
392
380
  var filteredColumns = filterBySearchTerm(searchTerm, columns);
381
+ var handleHideAllColumns = function handleHideAllColumns() {
382
+ var columnsToHideKeys = ramda.pluck("key", columns);
383
+ updateColumns(existingColumnConfiguration.map(function (column) {
384
+ return ramda.includes(column.key, columnsToHideKeys) ? ramda.assoc("isShown", false, column) : column;
385
+ }));
386
+ };
393
387
  var handleChange = function handleChange(_ref2) {
394
388
  var _ref2$target = _ref2.target,
395
389
  dataIndex = _ref2$target.name,
@@ -400,7 +394,7 @@ var Columns = function Columns(_ref) {
400
394
  var value = _ref3.target.value;
401
395
  return setSearchTerm(value);
402
396
  };
403
- return /*#__PURE__*/jsxRuntime.jsx(Dropdown, _objectSpread$1(_objectSpread$1({
397
+ return /*#__PURE__*/jsxRuntime.jsx(Dropdown, _objectSpread(_objectSpread({
404
398
  appendTo: document.body,
405
399
  buttonSize: "medium",
406
400
  buttonStyle: "text",
@@ -414,7 +408,7 @@ var Columns = function Columns(_ref) {
414
408
  children: /*#__PURE__*/jsxRuntime.jsxs("div", {
415
409
  className: "neeto-molecules-columns__container",
416
410
  "data-cy": "customize-columns-dropdown-container",
417
- children: [isSearchable && /*#__PURE__*/jsxRuntime.jsx(Input, _objectSpread$1({
411
+ children: [isSearchable && /*#__PURE__*/jsxRuntime.jsx(Input, _objectSpread({
418
412
  className: "px-4 py-2",
419
413
  "data-cy": "neeto-ui-columns-search",
420
414
  "data-testid": "neeto-ui-columns-search",
@@ -447,7 +441,7 @@ var Columns = function Columns(_ref) {
447
441
  children: /*#__PURE__*/jsxRuntime.jsx(Label, {
448
442
  className: "neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2",
449
443
  htmlFor: key,
450
- children: /*#__PURE__*/jsxRuntime.jsx(Checkbox, _objectSpread$1({
444
+ children: /*#__PURE__*/jsxRuntime.jsx(Checkbox, _objectSpread({
451
445
  checked: !hiddenColumns.includes(key),
452
446
  "data-cy": "neeto-ui-columns-checkbox",
453
447
  id: key,
@@ -459,16 +453,21 @@ var Columns = function Columns(_ref) {
459
453
  }, key);
460
454
  }), /*#__PURE__*/jsxRuntime.jsx(Divider, {}), !!actionBlock && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
461
455
  children: [actionBlock, /*#__PURE__*/jsxRuntime.jsx(Divider, {})]
462
- }), /*#__PURE__*/jsxRuntime.jsx("div", {
463
- className: "flex justify-end p-1 pr-3",
464
- children: /*#__PURE__*/jsxRuntime.jsx(Button, {
456
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
457
+ className: "flex justify-end gap-2 p-1 pr-3",
458
+ children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
459
+ "data-cy": "column-visibility-hide-all-button",
460
+ label: t("neetoMolecules.columns.hideAll"),
461
+ style: "tertiary",
462
+ onClick: handleHideAllColumns
463
+ }), /*#__PURE__*/jsxRuntime.jsx(Button, {
465
464
  "data-cy": "column-visibility-reset-button",
466
465
  label: t("neetoMolecules.columns.reset"),
467
466
  style: "secondary",
468
467
  onClick: function onClick() {
469
468
  return destroyConfiguration(tableKey);
470
469
  }
471
- })
470
+ })]
472
471
  })]
473
472
  })
474
473
  })
@@ -476,116 +475,9 @@ var Columns = function Columns(_ref) {
476
475
  };
477
476
  Columns.displayName = "Columns";
478
477
 
479
- /** @type {import("neetocommons/react-utils").ZustandStoreHook} */
480
- var useHiddenColumnStore = zustand.create(middleware.persist(function () {
481
- return {};
482
- }, {
483
- name: HIDDEN_COLUMNS_STORAGE_KEY
484
- }));
485
- var useHiddenColumns = function useHiddenColumns(localStorageKey) {
486
- var initialValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
487
- var hiddenColumns = useHiddenColumnStore(function (state) {
488
- return state[localStorageKey];
489
- });
490
- var setHiddenColumns = function setHiddenColumns(columns) {
491
- return useHiddenColumnStore.setState(_defineProperty({}, localStorageKey, columns));
492
- };
493
-
494
- // Migrates values from old location to new zustand location.
495
- React.useEffect(function () {
496
- var oldValue = general.getFromLocalStorage(localStorageKey);
497
- if (oldValue) {
498
- setHiddenColumns(oldValue);
499
- general.removeFromLocalStorage(localStorageKey);
500
- } else if (!hiddenColumns) {
501
- setHiddenColumns(initialValue);
502
- }
503
- }, [localStorageKey]);
504
- var hideColumn = function hideColumn(columns) {
505
- return setHiddenColumns(ramda.union(hiddenColumns, Array.isArray(columns) ? columns : [columns]));
506
- };
507
- var showColumn = function showColumn(columns) {
508
- return setHiddenColumns(ramda.without(Array.isArray(columns) ? columns : [columns], hiddenColumns));
509
- };
510
- var getVisibleColumnData = function getVisibleColumnData(columnData) {
511
- return neetoCist.removeBy({
512
- dataIndex: ramda.includes(ramda.__, hiddenColumns || [])
513
- }, columnData);
514
- };
515
- var onColumnDataChange = function onColumnDataChange(columnData) {
516
- if (ramda.isEmpty(columnData) || !hiddenColumns) return;
517
- var newHiddenColumns = removeDeletedColumns(hiddenColumns, columnData);
518
- if (!ramda.equals(newHiddenColumns, hiddenColumns)) {
519
- setHiddenColumns(newHiddenColumns);
520
- }
521
- };
522
- return {
523
- hiddenColumns: hiddenColumns,
524
- hideColumn: hideColumn,
525
- showColumn: showColumn,
526
- getVisibleColumnData: getVisibleColumnData,
527
- onColumnDataChange: onColumnDataChange
528
- };
529
- };
530
-
531
- var _excluded = ["hiddenColumns", "getVisibleColumnData"];
532
- 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; }
533
- 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; }
534
-
535
- /** @type {import("neetocommons/react-utils").ZustandStoreHook} */
536
- var useColumnOrderStore = zustand.create(middleware.persist(function () {
537
- return {};
538
- }, {
539
- name: COLUMNS_ORDER_STORAGE_KEY
540
- }));
541
- var useColumns = function useColumns(_ref) {
542
- var localStorageKey = _ref.localStorageKey,
543
- initialHiddenColumns = _ref.initialHiddenColumns,
544
- _ref$initialOrder = _ref.initialOrder,
545
- initialOrder = _ref$initialOrder === void 0 ? [] : _ref$initialOrder;
546
- var columnOrder = useColumnOrderStore(function (state) {
547
- return state[localStorageKey];
548
- }) || initialOrder;
549
- var setColumnOrder = function setColumnOrder(columns) {
550
- return useColumnOrderStore.setState(_defineProperty({}, localStorageKey, columns));
551
- };
552
- var _useHiddenColumns = useHiddenColumns(localStorageKey, initialHiddenColumns),
553
- hiddenColumns = _useHiddenColumns.hiddenColumns,
554
- getVisibleColumnData = _useHiddenColumns.getVisibleColumnData,
555
- hiddenColumnHelpers = _objectWithoutProperties(_useHiddenColumns, _excluded);
556
- var orderColumns = function orderColumns(columnData) {
557
- if (ramda.isEmpty(columnOrder)) return columnData;
558
- return columnData.sort(function (a, b) {
559
- if (!columnOrder.includes(a.dataIndex) || !columnOrder.includes(b.dataIndex)) {
560
- return 0;
561
- }
562
- return columnOrder.indexOf(a.dataIndex) - columnOrder.indexOf(b.dataIndex);
563
- });
564
- };
565
- var getColumnData = function getColumnData(_ref2) {
566
- var columnData = _ref2.columnData,
567
- _ref2$isHidable = _ref2.isHidable,
568
- isHidable = _ref2$isHidable === void 0 ? true : _ref2$isHidable,
569
- _ref2$isReOrderable = _ref2.isReOrderable,
570
- isReOrderable = _ref2$isReOrderable === void 0 ? false : _ref2$isReOrderable;
571
- return ramda.pipe(isHidable ? getVisibleColumnData : ramda.identity, isReOrderable ? orderColumns : ramda.identity)(columnData);
572
- };
573
- return _objectSpread(_objectSpread({}, hiddenColumnHelpers), {}, {
574
- hiddenColumns: hiddenColumns,
575
- columnOrder: columnOrder,
576
- getVisibleColumnData: getVisibleColumnData,
577
- setColumnOrder: setColumnOrder,
578
- getColumnData: getColumnData
579
- });
580
- };
581
-
582
478
  exports.COLUMNS_ORDER_STORAGE_KEY = COLUMNS_ORDER_STORAGE_KEY;
583
479
  exports.Columns = Columns;
584
480
  exports.HIDDEN_COLUMNS_STORAGE_KEY = HIDDEN_COLUMNS_STORAGE_KEY;
585
481
  exports.TABLE_CONFIGURATION_QUERY_KEY = TABLE_CONFIGURATION_QUERY_KEY;
586
- exports.useColumnOrderStore = useColumnOrderStore;
587
- exports.useColumns = useColumns;
588
- exports.useHiddenColumnStore = useHiddenColumnStore;
589
- exports.useHiddenColumns = useHiddenColumns;
590
482
  exports.useTableConfigurations = useTableConfigurations;
591
- //# sourceMappingURL=useColumns-CK2J7GSt.js.map
483
+ //# sourceMappingURL=Columns-CZDLxh70.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Columns-CZDLxh70.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]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var useColumns = require('./useColumns-CK2J7GSt.js');
5
+ var Columns = require('./Columns-CZDLxh70.js');
6
6
  require('@babel/runtime/helpers/defineProperty');
7
7
  require('@babel/runtime/helpers/toConsumableArray');
8
8
  require('@babel/runtime/helpers/slicedToArray');
@@ -26,19 +26,12 @@ require('react/jsx-runtime');
26
26
  require('@tanstack/react-query');
27
27
  require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
28
28
  require('axios');
29
- require('zustand');
30
- require('zustand/middleware');
31
- require('@bigbinary/neeto-commons-frontend/utils/general');
32
29
 
33
30
 
34
31
 
35
- exports.COLUMNS_ORDER_STORAGE_KEY = useColumns.COLUMNS_ORDER_STORAGE_KEY;
36
- exports.HIDDEN_COLUMNS_STORAGE_KEY = useColumns.HIDDEN_COLUMNS_STORAGE_KEY;
37
- exports.TABLE_CONFIGURATION_QUERY_KEY = useColumns.TABLE_CONFIGURATION_QUERY_KEY;
38
- exports.default = useColumns.Columns;
39
- exports.useColumnOrderStore = useColumns.useColumnOrderStore;
40
- exports.useColumns = useColumns.useColumns;
41
- exports.useHiddenColumnStore = useColumns.useHiddenColumnStore;
42
- exports.useHiddenColumns = useColumns.useHiddenColumns;
43
- exports.useTableConfigurations = useColumns.useTableConfigurations;
32
+ exports.COLUMNS_ORDER_STORAGE_KEY = Columns.COLUMNS_ORDER_STORAGE_KEY;
33
+ exports.HIDDEN_COLUMNS_STORAGE_KEY = Columns.HIDDEN_COLUMNS_STORAGE_KEY;
34
+ exports.TABLE_CONFIGURATION_QUERY_KEY = Columns.TABLE_CONFIGURATION_QUERY_KEY;
35
+ exports.default = Columns.Columns;
36
+ exports.useTableConfigurations = Columns.useTableConfigurations;
44
37
  //# 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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -88,7 +88,7 @@ var ConfirmationModal = function ConfirmationModal(_ref) {
88
88
  var values = _ref2.values;
89
89
  return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
90
90
  children: [/*#__PURE__*/jsxRuntime.jsxs(Modal.Body, {
91
- className: "space-y-4",
91
+ className: "flex flex-col gap-y-4",
92
92
  children: [ramda.type(description) === "String" ? /*#__PURE__*/jsxRuntime.jsx(Typography, {
93
93
  style: "body2",
94
94
  children: description
@@ -104,7 +104,7 @@ var ConfirmationModal = function ConfirmationModal(_ref) {
104
104
  })]
105
105
  }), /*#__PURE__*/jsxRuntime.jsx(Modal.Footer, {
106
106
  children: /*#__PURE__*/jsxRuntime.jsx(ActionBlock, {
107
- className: "space-x-2",
107
+ className: "flex items-center gap-x-2",
108
108
  cancelButtonProps: {
109
109
  label: t("neetoMolecules.common.actions.cancel"),
110
110
  style: "text",
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmationModal.js","sources":["../../src/components/ConfirmationModal/constants.js","../../src/components/ConfirmationModal/utils.js","../../src/components/ConfirmationModal/index.jsx"],"sourcesContent":["export const INITIAL_VALUES = { confirmationText: \"\" };\n","import * as yup from \"yup\";\n\nexport const deletionValidationSchema = confirmationText =>\n yup.object({\n confirmationText: yup.string().required(\"\").oneOf([confirmationText], \"\"),\n });\n","import { useRef } from \"react\";\n\nimport { Modal, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { type } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport { deletionValidationSchema } from \"./utils\";\n\nconst ConfirmationModal = ({\n buttonLabel,\n confirmationText,\n description = \"\",\n isOpen = true,\n isSubmitting = false,\n title = \"\",\n onClose,\n onSubmit,\n deleteConfirmationMessage,\n}) => {\n const { t } = useTranslation();\n const formikProps = {\n initialValues: INITIAL_VALUES,\n validationSchema: deletionValidationSchema(confirmationText),\n onSubmit,\n };\n\n const deleteInputLabel = deleteConfirmationMessage || (\n <Trans\n components={{ strong: <strong /> }}\n i18nKey=\"neetoMolecules.confirmationModal.deleteConfirmationMessage\"\n values={{ value: confirmationText }}\n />\n );\n\n const initialFocusRef = useRef(null);\n\n return (\n <Modal\n {...{ initialFocusRef, isOpen, onClose }}\n data-testid=\"confirmation-modal\"\n >\n <Modal.Header>\n <Typography data-cy=\"confirmation-modal\" style=\"h2\">\n {title}\n </Typography>\n </Modal.Header>\n <Form {...{ formikProps }}>\n {({ values }) => (\n <>\n <Modal.Body className=\"space-y-4\">\n {type(description) === \"String\" ? (\n <Typography style=\"body2\">{description}</Typography>\n ) : (\n description\n )}\n <Input\n data-testid=\"confirmation-modal-input\"\n label={deleteInputLabel}\n labelProps={{ className: \"block\" }}\n name=\"confirmationText\"\n ref={initialFocusRef}\n type=\"text\"\n />\n </Modal.Body>\n <Modal.Footer>\n <ActionBlock\n className=\"space-x-2\"\n cancelButtonProps={{\n label: t(\"neetoMolecules.common.actions.cancel\"),\n style: \"text\",\n onClick: onClose,\n disabled: false,\n type: \"button\",\n }}\n submitButtonProps={{\n \"data-cy\": \"delete-continue-button\",\n label: buttonLabel,\n loading: isSubmitting,\n style: \"danger\",\n disabled:\n isSubmitting ||\n confirmationText !== values.confirmationText,\n }}\n />\n </Modal.Footer>\n </>\n )}\n </Form>\n </Modal>\n );\n};\n\nConfirmationModal.propTypes = {\n /**\n * Label of the action button in the Modal\n */\n buttonLabel: PropTypes.string,\n /**\n * Text that is expected to be entered by the user\n */\n confirmationText: PropTypes.string,\n /**\n * Modal description\n */\n description: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n PropTypes.string,\n ]),\n /**\n * To be passed to loading prop of the action button\n */\n isSubmitting: PropTypes.bool,\n /**\n * To specify whether the modal should be opened or closed.\n */\n isOpen: PropTypes.bool,\n /**\n * Title of the modal\n */\n title: PropTypes.string,\n /**\n * Handler function that is invoked when the close button is clicked\n */\n onClose: PropTypes.func,\n /**\n * Handler function that is invoked when the action button is clicked\n */\n onSubmit: PropTypes.func,\n /**\n * Message that will be shown as the label of the confirmation input field.\n */\n deleteConfirmationMessage: PropTypes.string,\n};\n\nexport default ConfirmationModal;\n"],"names":["INITIAL_VALUES","confirmationText","deletionValidationSchema","yup","object","string","required","oneOf","ConfirmationModal","_ref","buttonLabel","_ref$description","description","_ref$isOpen","isOpen","_ref$isSubmitting","isSubmitting","_ref$title","title","onClose","onSubmit","deleteConfirmationMessage","_useTranslation","useTranslation","t","formikProps","initialValues","validationSchema","deleteInputLabel","_jsx","Trans","components","strong","i18nKey","values","value","initialFocusRef","useRef","_jsxs","Modal","children","Header","Typography","style","Form","_ref2","_Fragment","Body","className","type","Input","label","labelProps","name","ref","Footer","ActionBlock","cancelButtonProps","onClick","disabled","submitButtonProps","loading"],"mappings":"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"}
1
+ {"version":3,"file":"ConfirmationModal.js","sources":["../../src/components/ConfirmationModal/constants.js","../../src/components/ConfirmationModal/utils.js","../../src/components/ConfirmationModal/index.jsx"],"sourcesContent":["export const INITIAL_VALUES = { confirmationText: \"\" };\n","import * as yup from \"yup\";\n\nexport const deletionValidationSchema = confirmationText =>\n yup.object({\n confirmationText: yup.string().required(\"\").oneOf([confirmationText], \"\"),\n });\n","import { useRef } from \"react\";\n\nimport { Modal, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { type } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport { deletionValidationSchema } from \"./utils\";\n\nconst ConfirmationModal = ({\n buttonLabel,\n confirmationText,\n description = \"\",\n isOpen = true,\n isSubmitting = false,\n title = \"\",\n onClose,\n onSubmit,\n deleteConfirmationMessage,\n}) => {\n const { t } = useTranslation();\n const formikProps = {\n initialValues: INITIAL_VALUES,\n validationSchema: deletionValidationSchema(confirmationText),\n onSubmit,\n };\n\n const deleteInputLabel = deleteConfirmationMessage || (\n <Trans\n components={{ strong: <strong /> }}\n i18nKey=\"neetoMolecules.confirmationModal.deleteConfirmationMessage\"\n values={{ value: confirmationText }}\n />\n );\n\n const initialFocusRef = useRef(null);\n\n return (\n <Modal\n {...{ initialFocusRef, isOpen, onClose }}\n data-testid=\"confirmation-modal\"\n >\n <Modal.Header>\n <Typography data-cy=\"confirmation-modal\" style=\"h2\">\n {title}\n </Typography>\n </Modal.Header>\n <Form {...{ formikProps }}>\n {({ values }) => (\n <>\n <Modal.Body className=\"flex flex-col gap-y-4\">\n {type(description) === \"String\" ? (\n <Typography style=\"body2\">{description}</Typography>\n ) : (\n description\n )}\n <Input\n data-testid=\"confirmation-modal-input\"\n label={deleteInputLabel}\n labelProps={{ className: \"block\" }}\n name=\"confirmationText\"\n ref={initialFocusRef}\n type=\"text\"\n />\n </Modal.Body>\n <Modal.Footer>\n <ActionBlock\n className=\"flex items-center gap-x-2\"\n cancelButtonProps={{\n label: t(\"neetoMolecules.common.actions.cancel\"),\n style: \"text\",\n onClick: onClose,\n disabled: false,\n type: \"button\",\n }}\n submitButtonProps={{\n \"data-cy\": \"delete-continue-button\",\n label: buttonLabel,\n loading: isSubmitting,\n style: \"danger\",\n disabled:\n isSubmitting ||\n confirmationText !== values.confirmationText,\n }}\n />\n </Modal.Footer>\n </>\n )}\n </Form>\n </Modal>\n );\n};\n\nConfirmationModal.propTypes = {\n /**\n * Label of the action button in the Modal\n */\n buttonLabel: PropTypes.string,\n /**\n * Text that is expected to be entered by the user\n */\n confirmationText: PropTypes.string,\n /**\n * Modal description\n */\n description: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n PropTypes.string,\n ]),\n /**\n * To be passed to loading prop of the action button\n */\n isSubmitting: PropTypes.bool,\n /**\n * To specify whether the modal should be opened or closed.\n */\n isOpen: PropTypes.bool,\n /**\n * Title of the modal\n */\n title: PropTypes.string,\n /**\n * Handler function that is invoked when the close button is clicked\n */\n onClose: PropTypes.func,\n /**\n * Handler function that is invoked when the action button is clicked\n */\n onSubmit: PropTypes.func,\n /**\n * Message that will be shown as the label of the confirmation input field.\n */\n deleteConfirmationMessage: PropTypes.string,\n};\n\nexport default ConfirmationModal;\n"],"names":["INITIAL_VALUES","confirmationText","deletionValidationSchema","yup","object","string","required","oneOf","ConfirmationModal","_ref","buttonLabel","_ref$description","description","_ref$isOpen","isOpen","_ref$isSubmitting","isSubmitting","_ref$title","title","onClose","onSubmit","deleteConfirmationMessage","_useTranslation","useTranslation","t","formikProps","initialValues","validationSchema","deleteInputLabel","_jsx","Trans","components","strong","i18nKey","values","value","initialFocusRef","useRef","_jsxs","Modal","children","Header","Typography","style","Form","_ref2","_Fragment","Body","className","type","Input","label","labelProps","name","ref","Footer","ActionBlock","cancelButtonProps","onClick","disabled","submitButtonProps","loading"],"mappings":"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"}
@@ -541,7 +541,7 @@ var EmailFormComponent = function EmailFormComponent(_ref) {
541
541
  className: "px-0",
542
542
  size: "small"
543
543
  }, headerProps)), neetoCist.isNotEmpty(switchProps) && /*#__PURE__*/jsxRuntime.jsx("div", {
544
- className: "flex items-center justify-between space-y-0.5 pb-6",
544
+ className: "flex items-center justify-between gap-y-0.5 pb-6",
545
545
  children: /*#__PURE__*/jsxRuntime.jsx(Tooltip, _objectSpread$1(_objectSpread$1({
546
546
  disabled: !(switchProps !== null && switchProps !== void 0 && switchProps.disabled),
547
547
  position: "top"