@commercetools-uikit/data-table-manager 19.8.0 → 19.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -35
- package/column-settings-manager/dist/commercetools-uikit-data-table-manager-column-settings-manager.cjs.d.ts +2 -0
- package/column-settings-manager/dist/commercetools-uikit-data-table-manager-column-settings-manager.cjs.dev.js +43 -0
- package/column-settings-manager/dist/commercetools-uikit-data-table-manager-column-settings-manager.cjs.js +7 -0
- package/column-settings-manager/dist/commercetools-uikit-data-table-manager-column-settings-manager.cjs.prod.js +43 -0
- package/column-settings-manager/dist/commercetools-uikit-data-table-manager-column-settings-manager.esm.js +35 -0
- package/column-settings-manager/package.json +4 -0
- package/data-table-manager-provider/dist/commercetools-uikit-data-table-manager-data-table-manager-provider.cjs.dev.js +6 -4
- package/data-table-manager-provider/dist/commercetools-uikit-data-table-manager-data-table-manager-provider.cjs.prod.js +6 -4
- package/data-table-manager-provider/dist/commercetools-uikit-data-table-manager-data-table-manager-provider.esm.js +6 -4
- package/dist/column-settings-manager-1430ee4f.esm.js +463 -0
- package/dist/column-settings-manager-92b54563.cjs.dev.js +494 -0
- package/dist/column-settings-manager-b08669e8.cjs.prod.js +407 -0
- package/dist/commercetools-uikit-data-table-manager.cjs.dev.js +139 -461
- package/dist/commercetools-uikit-data-table-manager.cjs.prod.js +134 -380
- package/dist/commercetools-uikit-data-table-manager.esm.js +141 -452
- package/dist/{data-table-manager-provider-3f60b85b.esm.js → data-table-manager-provider-32eb58dd.esm.js} +41 -9
- package/dist/{data-table-manager-provider-6c690fc1.cjs.dev.js → data-table-manager-provider-c64c81aa.cjs.prod.js} +43 -10
- package/dist/{data-table-manager-provider-ddf7fb63.cjs.prod.js → data-table-manager-provider-fc238633.cjs.dev.js} +43 -10
- package/dist/declarations/src/column-settings-manager/column-settings-manager.d.ts +26 -0
- package/dist/declarations/src/column-settings-manager/export-types.d.ts +3 -0
- package/dist/declarations/src/column-settings-manager/index.d.ts +2 -0
- package/dist/declarations/src/constants.d.ts +2 -0
- package/dist/declarations/src/data-table-manager-provider/data-table-manager-provider.d.ts +11 -2
- package/dist/declarations/src/data-table-manager-provider/types.d.ts +62 -0
- package/dist/declarations/src/export-types.d.ts +2 -0
- package/dist/declarations/src/index.d.ts +1 -0
- package/dist/declarations/src/settings-container/index.d.ts +2 -0
- package/dist/declarations/src/settings-container/settings-container.d.ts +23 -0
- package/dist/declarations/src/types.d.ts +203 -2
- package/package.json +29 -25
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
5
6
|
var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
6
7
|
var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
|
|
7
8
|
var _Object$keys = require('@babel/runtime-corejs3/core-js-stable/object/keys');
|
|
@@ -16,8 +17,8 @@ var react = require('react');
|
|
|
16
17
|
var Spacings = require('@commercetools-uikit/spacings');
|
|
17
18
|
var dataTableManagerProvider$1 = require('@commercetools-uikit/data-table-manager/data-table-manager-provider');
|
|
18
19
|
var jsxRuntime = require('@emotion/react/jsx-runtime');
|
|
19
|
-
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
20
20
|
var _styled = require('@emotion/styled/base');
|
|
21
|
+
var _Object$entries = require('@babel/runtime-corejs3/core-js-stable/object/entries');
|
|
21
22
|
var _reduceInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
|
|
22
23
|
require('@commercetools-uikit/utils');
|
|
23
24
|
var reactIntl = require('react-intl');
|
|
@@ -31,21 +32,22 @@ var Grid = require('@commercetools-uikit/grid');
|
|
|
31
32
|
var RadioInput = require('@commercetools-uikit/radio-input');
|
|
32
33
|
var AccessibleHidden = require('@commercetools-uikit/accessible-hidden');
|
|
33
34
|
var designSystem = require('@commercetools-uikit/design-system');
|
|
34
|
-
var
|
|
35
|
-
var CollapsibleMotion = require('@commercetools-uikit/collapsible-motion');
|
|
36
|
-
var Card = require('@commercetools-uikit/card');
|
|
37
|
-
var Text = require('@commercetools-uikit/text');
|
|
38
|
-
var _Promise = require('@babel/runtime-corejs3/core-js-stable/promise');
|
|
39
|
-
var _sliceInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/slice');
|
|
40
|
-
var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
41
|
-
var reactBeautifulDnd = require('react-beautiful-dnd');
|
|
42
|
-
var debounce = require('debounce-promise');
|
|
43
|
-
var differenceWith = require('lodash/differenceWith');
|
|
44
|
-
var AsyncSelectInput = require('@commercetools-uikit/async-select-input');
|
|
45
|
-
var _concatInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/concat');
|
|
46
|
-
var Tag = require('@commercetools-uikit/tag');
|
|
35
|
+
var columnSettingsManager = require('./column-settings-manager-b08669e8.cjs.prod.js');
|
|
47
36
|
var hooks = require('@commercetools-uikit/hooks');
|
|
48
|
-
var dataTableManagerProvider = require('./data-table-manager-provider-
|
|
37
|
+
var dataTableManagerProvider = require('./data-table-manager-provider-c64c81aa.cjs.prod.js');
|
|
38
|
+
require('@babel/runtime-corejs3/core-js-stable/promise');
|
|
39
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/slice');
|
|
40
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
41
|
+
require('react-beautiful-dnd');
|
|
42
|
+
require('debounce-promise');
|
|
43
|
+
require('lodash/differenceWith');
|
|
44
|
+
require('@commercetools-uikit/async-select-input');
|
|
45
|
+
require('@commercetools-uikit/accessible-button');
|
|
46
|
+
require('@commercetools-uikit/collapsible-motion');
|
|
47
|
+
require('@commercetools-uikit/card');
|
|
48
|
+
require('@commercetools-uikit/text');
|
|
49
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/concat');
|
|
50
|
+
require('@commercetools-uikit/tag');
|
|
49
51
|
|
|
50
52
|
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
51
53
|
|
|
@@ -60,6 +62,7 @@ var _Object$defineProperties__default = /*#__PURE__*/_interopDefault(_Object$def
|
|
|
60
62
|
var _Object$defineProperty__default = /*#__PURE__*/_interopDefault(_Object$defineProperty);
|
|
61
63
|
var Spacings__default = /*#__PURE__*/_interopDefault(Spacings);
|
|
62
64
|
var _styled__default = /*#__PURE__*/_interopDefault(_styled);
|
|
65
|
+
var _Object$entries__default = /*#__PURE__*/_interopDefault(_Object$entries);
|
|
63
66
|
var _reduceInstanceProperty__default = /*#__PURE__*/_interopDefault(_reduceInstanceProperty);
|
|
64
67
|
var DropdownMenu__default = /*#__PURE__*/_interopDefault(DropdownMenu);
|
|
65
68
|
var IconButton__default = /*#__PURE__*/_interopDefault(IconButton);
|
|
@@ -68,92 +71,18 @@ var FieldLabel__default = /*#__PURE__*/_interopDefault(FieldLabel);
|
|
|
68
71
|
var Grid__default = /*#__PURE__*/_interopDefault(Grid);
|
|
69
72
|
var RadioInput__default = /*#__PURE__*/_interopDefault(RadioInput);
|
|
70
73
|
var AccessibleHidden__default = /*#__PURE__*/_interopDefault(AccessibleHidden);
|
|
71
|
-
var AccessibleButton__default = /*#__PURE__*/_interopDefault(AccessibleButton);
|
|
72
|
-
var CollapsibleMotion__default = /*#__PURE__*/_interopDefault(CollapsibleMotion);
|
|
73
|
-
var Card__default = /*#__PURE__*/_interopDefault(Card);
|
|
74
|
-
var Text__default = /*#__PURE__*/_interopDefault(Text);
|
|
75
|
-
var _Promise__default = /*#__PURE__*/_interopDefault(_Promise);
|
|
76
|
-
var _sliceInstanceProperty__default = /*#__PURE__*/_interopDefault(_sliceInstanceProperty);
|
|
77
|
-
var _findInstanceProperty__default = /*#__PURE__*/_interopDefault(_findInstanceProperty);
|
|
78
|
-
var debounce__default = /*#__PURE__*/_interopDefault(debounce);
|
|
79
|
-
var differenceWith__default = /*#__PURE__*/_interopDefault(differenceWith);
|
|
80
|
-
var AsyncSelectInput__default = /*#__PURE__*/_interopDefault(AsyncSelectInput);
|
|
81
|
-
var _concatInstanceProperty__default = /*#__PURE__*/_interopDefault(_concatInstanceProperty);
|
|
82
|
-
var Tag__default = /*#__PURE__*/_interopDefault(Tag);
|
|
83
74
|
|
|
84
75
|
const UPDATE_ACTIONS = {
|
|
85
76
|
COLUMNS_UPDATE: 'columnsUpdate',
|
|
77
|
+
CUSTOM_SETTINGS_UPDATE: 'customSettingsUpdate',
|
|
78
|
+
CUSTOM_COLUMNS_UPDATE: 'customColumnsUpdate',
|
|
86
79
|
IS_TABLE_CONDENSED_UPDATE: 'isTableCondensedUpdate',
|
|
87
80
|
IS_TABLE_WRAPPING_TEXT_UPDATE: 'isTableWrappingTextUpdate'
|
|
88
81
|
};
|
|
89
82
|
const COLUMN_MANAGER = 'columnManager';
|
|
90
83
|
const DISPLAY_SETTINGS = 'displaySettings';
|
|
91
84
|
|
|
92
|
-
|
|
93
|
-
target: "e6ezr101"
|
|
94
|
-
} )({
|
|
95
|
-
name: "1bhm8h2",
|
|
96
|
-
styles: "display:flex;flex:1;justify-content:space-between"
|
|
97
|
-
} );
|
|
98
|
-
const CardContentWrapper = /*#__PURE__*/_styled__default["default"]("div", {
|
|
99
|
-
target: "e6ezr100"
|
|
100
|
-
} )("padding:", designSystem.designTokens.spacing40, " ", designSystem.designTokens.spacing50, ";" + ("" ));
|
|
101
|
-
const SettingsContainer = props => {
|
|
102
|
-
const intl = reactIntl.useIntl();
|
|
103
|
-
return jsxRuntime.jsx(CollapsibleMotion__default["default"], {
|
|
104
|
-
isDefaultClosed: false,
|
|
105
|
-
children: _ref => {
|
|
106
|
-
let registerContentNode = _ref.registerContentNode,
|
|
107
|
-
containerStyles = _ref.containerStyles;
|
|
108
|
-
return jsxRuntime.jsx(Card__default["default"], {
|
|
109
|
-
type: "raised",
|
|
110
|
-
insetScale: "none",
|
|
111
|
-
theme: props.containerTheme,
|
|
112
|
-
children: jsxRuntime.jsx(CardContentWrapper, {
|
|
113
|
-
children: jsxRuntime.jsxs(Spacings__default["default"].Stack, {
|
|
114
|
-
scale: "xl",
|
|
115
|
-
children: [jsxRuntime.jsxs(HeaderContainer, {
|
|
116
|
-
children: [jsxRuntime.jsx(Text__default["default"].Headline, {
|
|
117
|
-
as: "h2",
|
|
118
|
-
intlMessage: props.title
|
|
119
|
-
}), jsxRuntime.jsx(AccessibleButton__default["default"], {
|
|
120
|
-
onClick: props.onClose,
|
|
121
|
-
label: intl.formatMessage(props.closeButtonLabel),
|
|
122
|
-
children: jsxRuntime.jsx(icons.CloseIcon, {
|
|
123
|
-
size: "medium"
|
|
124
|
-
})
|
|
125
|
-
})]
|
|
126
|
-
}), jsxRuntime.jsxs(Spacings__default["default"].Stack, {
|
|
127
|
-
scale: "l",
|
|
128
|
-
children: [jsxRuntime.jsx(Spacings__default["default"].Inset, {
|
|
129
|
-
scale: "s",
|
|
130
|
-
children: jsxRuntime.jsx("div", {
|
|
131
|
-
style: containerStyles,
|
|
132
|
-
children: jsxRuntime.jsx("div", {
|
|
133
|
-
ref: registerContentNode,
|
|
134
|
-
children: props.children
|
|
135
|
-
})
|
|
136
|
-
})
|
|
137
|
-
}), (props.secondaryButton || props.primaryButton) && jsxRuntime.jsxs(Spacings__default["default"].Inline, {
|
|
138
|
-
justifyContent: "flex-end",
|
|
139
|
-
children: [props.secondaryButton, props.primaryButton]
|
|
140
|
-
})]
|
|
141
|
-
})]
|
|
142
|
-
})
|
|
143
|
-
})
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
});
|
|
147
|
-
};
|
|
148
|
-
SettingsContainer.propTypes = {};
|
|
149
|
-
SettingsContainer.displayName = 'SettingsContainer';
|
|
150
|
-
const defaultProps$2 = {
|
|
151
|
-
containerTheme: 'dark'
|
|
152
|
-
};
|
|
153
|
-
SettingsContainer.defaultProps = defaultProps$2;
|
|
154
|
-
var SettingsContainer$1 = SettingsContainer;
|
|
155
|
-
|
|
156
|
-
var messages$3 = reactIntl.defineMessages({
|
|
85
|
+
var messages$2 = reactIntl.defineMessages({
|
|
157
86
|
title: {
|
|
158
87
|
id: 'UIKit.DataTableManager.DensityManager.title',
|
|
159
88
|
description: 'Title for the density manager component.',
|
|
@@ -205,9 +134,10 @@ const DensityManager = props => {
|
|
|
205
134
|
const intl = reactIntl.useIntl();
|
|
206
135
|
const textWrappingOption = props.isWrappingText ? SHOW_HIDE_ON_DEMAND : WRAPPED_TEXT_VISIBLE;
|
|
207
136
|
const densityDisplayOption = props.isCondensed ? DENSITY_COMPACT : DENSITY_COMFORTABLE;
|
|
208
|
-
return jsxRuntime.jsx(SettingsContainer
|
|
209
|
-
|
|
210
|
-
|
|
137
|
+
return jsxRuntime.jsx(columnSettingsManager.SettingsContainer, {
|
|
138
|
+
customSettingsTitle: props.title,
|
|
139
|
+
title: messages$2.title,
|
|
140
|
+
closeButtonLabel: messages$2.closeButtonLabel,
|
|
211
141
|
onClose: props.onClose,
|
|
212
142
|
primaryButton: props.primaryButton,
|
|
213
143
|
secondaryButton: props.secondaryButton,
|
|
@@ -219,7 +149,7 @@ const DensityManager = props => {
|
|
|
219
149
|
children: jsxRuntime.jsxs(Spacings__default["default"].Stack, {
|
|
220
150
|
scale: 'l',
|
|
221
151
|
children: [jsxRuntime.jsx(FieldLabel__default["default"], {
|
|
222
|
-
title: intl.formatMessage(messages$
|
|
152
|
+
title: intl.formatMessage(messages$2.textWrappingSubtitle)
|
|
223
153
|
}), jsxRuntime.jsxs(AccessibleHidden__default["default"], {
|
|
224
154
|
children: [jsxRuntime.jsx("label", {
|
|
225
155
|
htmlFor: "text-wrapping-0",
|
|
@@ -235,10 +165,10 @@ const DensityManager = props => {
|
|
|
235
165
|
onChange: props.onTextWrappingChange,
|
|
236
166
|
children: [jsxRuntime.jsx(RadioInput__default["default"].Option, {
|
|
237
167
|
value: WRAPPED_TEXT_VISIBLE,
|
|
238
|
-
children: intl.formatMessage(messages$
|
|
168
|
+
children: intl.formatMessage(messages$2.textWrappingAllWrapVisibleOption)
|
|
239
169
|
}), jsxRuntime.jsx(RadioInput__default["default"].Option, {
|
|
240
170
|
value: SHOW_HIDE_ON_DEMAND,
|
|
241
|
-
children: intl.formatMessage(messages$
|
|
171
|
+
children: intl.formatMessage(messages$2.textWrappingShowHideOnDemandOption)
|
|
242
172
|
})]
|
|
243
173
|
})]
|
|
244
174
|
})
|
|
@@ -246,7 +176,7 @@ const DensityManager = props => {
|
|
|
246
176
|
children: jsxRuntime.jsxs(Spacings__default["default"].Stack, {
|
|
247
177
|
scale: 'l',
|
|
248
178
|
children: [jsxRuntime.jsx(FieldLabel__default["default"], {
|
|
249
|
-
title: intl.formatMessage(messages$
|
|
179
|
+
title: intl.formatMessage(messages$2.densityDisplaySubtitle)
|
|
250
180
|
}), jsxRuntime.jsxs(AccessibleHidden__default["default"], {
|
|
251
181
|
children: [jsxRuntime.jsx("label", {
|
|
252
182
|
htmlFor: "density-display-0",
|
|
@@ -262,10 +192,10 @@ const DensityManager = props => {
|
|
|
262
192
|
onChange: props.onDensityDisplayChange,
|
|
263
193
|
children: [jsxRuntime.jsx(RadioInput__default["default"].Option, {
|
|
264
194
|
value: DENSITY_COMFORTABLE,
|
|
265
|
-
children: intl.formatMessage(messages$
|
|
195
|
+
children: intl.formatMessage(messages$2.densityDisplayComfortableOption)
|
|
266
196
|
}), jsxRuntime.jsx(RadioInput__default["default"].Option, {
|
|
267
197
|
value: DENSITY_COMPACT,
|
|
268
|
-
children: intl.formatMessage(messages$
|
|
198
|
+
children: intl.formatMessage(messages$2.densityDisplayCompactOption)
|
|
269
199
|
})]
|
|
270
200
|
})]
|
|
271
201
|
})
|
|
@@ -275,286 +205,35 @@ const DensityManager = props => {
|
|
|
275
205
|
};
|
|
276
206
|
DensityManager.propTypes = {};
|
|
277
207
|
DensityManager.displayName = 'DensityManager';
|
|
278
|
-
const defaultProps
|
|
208
|
+
const defaultProps = {
|
|
279
209
|
isCondensed: true,
|
|
280
210
|
isWrappingText: false
|
|
281
211
|
};
|
|
282
|
-
DensityManager.defaultProps = defaultProps
|
|
212
|
+
DensityManager.defaultProps = defaultProps;
|
|
283
213
|
var DisplaySettingsManager = DensityManager;
|
|
284
214
|
|
|
285
|
-
const DraggingSmall = /*#__PURE__*/_styled__default["default"]("small", {
|
|
286
|
-
target: "e1mp438g1"
|
|
287
|
-
} )({
|
|
288
|
-
name: "1fhyj3b",
|
|
289
|
-
styles: "&:hover{cursor:grab;}"
|
|
290
|
-
} );
|
|
291
|
-
const DraggingContainer = /*#__PURE__*/_styled__default["default"]("div", {
|
|
292
|
-
target: "e1mp438g0"
|
|
293
|
-
} )(DraggingSmall, ";" + ("" ));
|
|
294
|
-
var DraggingContainer$1 = DraggingContainer;
|
|
295
|
-
|
|
296
|
-
function ownKeys$3(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
297
|
-
function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$3(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$3(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
|
|
298
|
-
const DraggableTagWrapper = /*#__PURE__*/_styled__default["default"]("div", {
|
|
299
|
-
target: "emzjy4n0"
|
|
300
|
-
} )("padding:", designSystem.designTokens.spacing10, " 0;" + ("" ));
|
|
301
|
-
const DraggableTag = props => {
|
|
302
|
-
const handleRemoveColumn = () => {
|
|
303
|
-
var _props$onRemove;
|
|
304
|
-
return (_props$onRemove = props.onRemove) === null || _props$onRemove === void 0 ? void 0 : _props$onRemove.call(props, props.index);
|
|
305
|
-
};
|
|
306
|
-
return jsxRuntime.jsx(reactBeautifulDnd.Draggable, {
|
|
307
|
-
draggableId: props.column.key,
|
|
308
|
-
index: props.index,
|
|
309
|
-
isDragDisabled: props.isDisabled,
|
|
310
|
-
children: provided => {
|
|
311
|
-
return jsxRuntime.jsx(DraggableTagWrapper, {
|
|
312
|
-
children: jsxRuntime.jsx(DraggingContainer$1, _objectSpread$3(_objectSpread$3(_objectSpread$3({
|
|
313
|
-
ref: provided.innerRef
|
|
314
|
-
}, provided.draggableProps), provided.dragHandleProps), {}, {
|
|
315
|
-
children: jsxRuntime.jsx(Tag__default["default"], {
|
|
316
|
-
onRemove: props.onRemove ? handleRemoveColumn : undefined,
|
|
317
|
-
isDisabled: props.isDisabled,
|
|
318
|
-
isDraggable: true,
|
|
319
|
-
children: props.column.label
|
|
320
|
-
})
|
|
321
|
-
}))
|
|
322
|
-
});
|
|
323
|
-
}
|
|
324
|
-
});
|
|
325
|
-
};
|
|
326
|
-
DraggableTag.propTypes = {};
|
|
327
|
-
DraggableTag.displayName = 'DraggableTag';
|
|
328
|
-
var DraggableTag$1 = DraggableTag;
|
|
329
|
-
|
|
330
|
-
const TagContainerEditable = /*#__PURE__*/_styled__default["default"]("div", {
|
|
331
|
-
target: "e7rakq0"
|
|
332
|
-
} )("background-color:", designSystem.designTokens.colorSurface, ";border:1px solid ", designSystem.designTokens.colorNeutral, ";border-radius:", designSystem.designTokens.borderRadius4, ";padding:", designSystem.designTokens.spacing30, ";height:", designSystem.designTokens.constraint7, ";overflow:auto;" + ("" ));
|
|
333
|
-
var TagContainerEditable$1 = TagContainerEditable;
|
|
334
|
-
|
|
335
|
-
var messages$2 = reactIntl.defineMessages({
|
|
336
|
-
loadMoreAttributesHint: {
|
|
337
|
-
id: 'UIKit.DataTableManager.ColumnManager.DroppablePanel.loadMoreAttributesHint',
|
|
338
|
-
description: 'Indicate that the user can use the search input to load more attributes',
|
|
339
|
-
defaultMessage: 'Load more attributes by using the search input above'
|
|
340
|
-
}
|
|
341
|
-
});
|
|
342
|
-
|
|
343
|
-
const DroppablePanel = props => {
|
|
344
|
-
return jsxRuntime.jsx(reactBeautifulDnd.Droppable, {
|
|
345
|
-
droppableId: props.droppableId,
|
|
346
|
-
children: provided => {
|
|
347
|
-
var _context;
|
|
348
|
-
return jsxRuntime.jsxs(TagContainerEditable$1, {
|
|
349
|
-
"data-testid": props.droppableId,
|
|
350
|
-
ref: provided.innerRef,
|
|
351
|
-
children: [props.columns.length === 0 ? jsxRuntime.jsx(Spacings__default["default"].Inset, {
|
|
352
|
-
scale: "s",
|
|
353
|
-
children: jsxRuntime.jsx(Text__default["default"].Detail, {
|
|
354
|
-
tone: "secondary",
|
|
355
|
-
children: props.noColumnsText
|
|
356
|
-
})
|
|
357
|
-
}) : jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
358
|
-
children: [_mapInstanceProperty__default["default"](_context = props.columns).call(_context, (column, index) => {
|
|
359
|
-
var _context2;
|
|
360
|
-
return jsxRuntime.jsx(DraggableTag$1, {
|
|
361
|
-
column: column,
|
|
362
|
-
index: index,
|
|
363
|
-
onRemove: props.onRemove ? () => {
|
|
364
|
-
var _context3, _context4;
|
|
365
|
-
return props.onRemove([..._sliceInstanceProperty__default["default"](_context3 = props.columns).call(_context3, 0, index), ..._sliceInstanceProperty__default["default"](_context4 = props.columns).call(_context4, index + 1)]);
|
|
366
|
-
} : undefined,
|
|
367
|
-
isDisabled: props.isDisabled
|
|
368
|
-
}, _concatInstanceProperty__default["default"](_context2 = "".concat(column.key, "-")).call(_context2, index));
|
|
369
|
-
}), props.isSearchable && jsxRuntime.jsx(Spacings__default["default"].Inset, {
|
|
370
|
-
scale: "xs",
|
|
371
|
-
children: jsxRuntime.jsx(Text__default["default"].Detail, {
|
|
372
|
-
tone: "secondary",
|
|
373
|
-
intlMessage: messages$2.loadMoreAttributesHint
|
|
374
|
-
})
|
|
375
|
-
})]
|
|
376
|
-
}), provided.placeholder]
|
|
377
|
-
});
|
|
378
|
-
}
|
|
379
|
-
});
|
|
380
|
-
};
|
|
381
|
-
DroppablePanel.propTypes = {};
|
|
382
|
-
DroppablePanel.displayName = 'DroppablePanel';
|
|
383
|
-
var DroppablePanel$1 = DroppablePanel;
|
|
384
|
-
|
|
385
215
|
var messages$1 = reactIntl.defineMessages({
|
|
386
|
-
title: {
|
|
387
|
-
id: 'UIKit.DataTableManager.ColumnManager.title',
|
|
388
|
-
description: 'Title for the column manager component.',
|
|
389
|
-
defaultMessage: 'Column Manager'
|
|
390
|
-
},
|
|
391
|
-
visibleColumns: {
|
|
392
|
-
id: 'UIKit.DataTableManager.ColumnSelectorGroups.visible',
|
|
393
|
-
description: 'Message for the visible columns section.',
|
|
394
|
-
defaultMessage: 'Visible columns'
|
|
395
|
-
},
|
|
396
|
-
hiddenColumns: {
|
|
397
|
-
id: 'UIKit.DataTableManager.ColumnManager.hiddenColumns',
|
|
398
|
-
description: 'Message for the hidden columns section',
|
|
399
|
-
defaultMessage: 'Hidden columns'
|
|
400
|
-
},
|
|
401
|
-
noSelectedColumnsToShow: {
|
|
402
|
-
id: 'UIKit.DataTableManager.ColumnManager.noSelectedColumnsToShow',
|
|
403
|
-
description: 'Label when there are no selected columns to show',
|
|
404
|
-
defaultMessage: 'There are no selected columns to show.'
|
|
405
|
-
},
|
|
406
|
-
noHiddenColumnsToShow: {
|
|
407
|
-
id: 'UIKit.DataTableManager.ColumnManager.noHiddenColumnsToShow',
|
|
408
|
-
description: 'Label when there are no hidden columns to show',
|
|
409
|
-
defaultMessage: 'There are no hidden columns to show.'
|
|
410
|
-
},
|
|
411
216
|
closeButtonLabel: {
|
|
412
|
-
id: 'UIKit.DataTableManager.
|
|
413
|
-
description: 'Label for
|
|
217
|
+
id: 'UIKit.DataTableManager.CustomSettingsManager.closeButtonLabel',
|
|
218
|
+
description: 'Label for custom settings manager close button.',
|
|
414
219
|
defaultMessage: 'Close'
|
|
415
220
|
}
|
|
416
221
|
});
|
|
417
222
|
|
|
418
|
-
const
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
const DroppableContainer = /*#__PURE__*/_styled__default["default"]("div", {
|
|
427
|
-
target: "en01od20"
|
|
428
|
-
} )("width:100%;position:relative;max-width:", designSystem.designTokens.constraint10, ";cursor:", props => props.isDragging ? 'grabbing' : 'auto', ";" + ("" ));
|
|
429
|
-
const handleColumnsUpdate = (dragResult, onUpdateColumns, selectedColumns, availableColumns, setIsDragging) => {
|
|
430
|
-
setIsDragging(false);
|
|
431
|
-
// Invalid drop destination, do nothing
|
|
432
|
-
if (!dragResult.destination) return;
|
|
433
|
-
if (dragResult.destination.droppableId === HIDDEN_COLUMNS_PANEL) {
|
|
434
|
-
if (dragResult.source.droppableId === HIDDEN_COLUMNS_PANEL) return;
|
|
435
|
-
onUpdateColumns([..._sliceInstanceProperty__default["default"](selectedColumns).call(selectedColumns, 0, dragResult.source.index), ..._sliceInstanceProperty__default["default"](selectedColumns).call(selectedColumns, dragResult.source.index + 1)]);
|
|
436
|
-
} else {
|
|
437
|
-
// the destination is the selected columns panel
|
|
438
|
-
|
|
439
|
-
// it's a swap when the source and the destination are the same
|
|
440
|
-
const isSwap = dragResult.source.droppableId === SELECTED_COLUMNS_PANEL;
|
|
441
|
-
const items = isSwap ?
|
|
442
|
-
// remove the dragged item from its position if it is not coming from
|
|
443
|
-
// the hidden section (it is a swap)
|
|
444
|
-
[..._sliceInstanceProperty__default["default"](selectedColumns).call(selectedColumns, 0, dragResult.source.index), ..._sliceInstanceProperty__default["default"](selectedColumns).call(selectedColumns, dragResult.source.index + 1)] : selectedColumns;
|
|
445
|
-
const columns = isSwap ? selectedColumns : availableColumns;
|
|
446
|
-
const draggedColumn = _findInstanceProperty__default["default"](columns).call(columns, col => col.key === dragResult.draggableId);
|
|
447
|
-
|
|
448
|
-
// push the column in the new position if draggedColumn is found
|
|
449
|
-
if (draggedColumn) {
|
|
450
|
-
onUpdateColumns([..._sliceInstanceProperty__default["default"](items).call(items, 0, dragResult.destination.index), draggedColumn, ..._sliceInstanceProperty__default["default"](items).call(items, dragResult.destination.index)]);
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
-
};
|
|
454
|
-
const DropdownIndicator = () => jsxRuntime.jsx(Spacings__default["default"].Inline, {
|
|
455
|
-
alignItems: "center",
|
|
456
|
-
children: jsxRuntime.jsx(icons.SearchIcon, {
|
|
457
|
-
size: "medium",
|
|
458
|
-
color: "primary"
|
|
459
|
-
})
|
|
460
|
-
});
|
|
461
|
-
DropdownIndicator.displayName = 'DropdownIndicator';
|
|
462
|
-
const Nothing = () => null;
|
|
463
|
-
const selectInputComponents = {
|
|
464
|
-
Option: Nothing,
|
|
465
|
-
Menu: Nothing,
|
|
466
|
-
DropdownIndicator
|
|
467
|
-
};
|
|
468
|
-
const ColumnSettingsManager = props => {
|
|
469
|
-
if (props.areHiddenColumnsSearchable) ;
|
|
470
|
-
const intl = reactIntl.useIntl();
|
|
471
|
-
const _useState = react.useState(false),
|
|
472
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
473
|
-
isDragging = _useState2[0],
|
|
474
|
-
setIsDragging = _useState2[1];
|
|
475
|
-
const searchHiddenColumns = props.searchHiddenColumns;
|
|
476
|
-
const handleDragStart = () => {
|
|
477
|
-
setIsDragging(true);
|
|
478
|
-
};
|
|
479
|
-
const hiddenColumns = react.useMemo(() => differenceWith__default["default"](props.availableColumns, props.selectedColumns, (a, b) => a.key === b.key), [props.availableColumns, props.selectedColumns]);
|
|
480
|
-
const handleDragEnd = react.useCallback(dragResult => handleColumnsUpdate(dragResult, props.onUpdateColumns, props.selectedColumns, props.availableColumns, setIsDragging), [props.onUpdateColumns, props.selectedColumns, props.availableColumns]);
|
|
481
|
-
const debouncedSearchHiddenColumns = react.useMemo(() => debounce__default["default"](searchHiddenColumns !== null && searchHiddenColumns !== void 0 ? searchHiddenColumns : noSearch, 300), [searchHiddenColumns]);
|
|
482
|
-
const handleInputChange = react.useCallback(inputValue => debouncedSearchHiddenColumns(inputValue), [debouncedSearchHiddenColumns]);
|
|
483
|
-
return jsxRuntime.jsx(SettingsContainer$1, {
|
|
484
|
-
title: messages$1.title,
|
|
485
|
-
closeButtonLabel: messages$1.closeButtonLabel,
|
|
486
|
-
onClose: props.onClose,
|
|
487
|
-
primaryButton: props.primaryButton,
|
|
488
|
-
secondaryButton: props.secondaryButton,
|
|
489
|
-
containerTheme: props.managerTheme,
|
|
490
|
-
children: jsxRuntime.jsx(reactBeautifulDnd.DragDropContext, {
|
|
491
|
-
onDragEnd: handleDragEnd,
|
|
492
|
-
onDragStart: handleDragStart,
|
|
493
|
-
children: jsxRuntime.jsxs(Spacings__default["default"].Inline, {
|
|
494
|
-
scale: "l",
|
|
495
|
-
children: [jsxRuntime.jsx(DroppableContainer, {
|
|
496
|
-
isDragging: isDragging,
|
|
497
|
-
"aria-labelledby": "hidden-columns",
|
|
498
|
-
children: jsxRuntime.jsxs(Spacings__default["default"].Stack, {
|
|
499
|
-
scale: "m",
|
|
500
|
-
children: [jsxRuntime.jsxs(Spacings__default["default"].Inline, {
|
|
501
|
-
scale: "s",
|
|
502
|
-
alignItems: "center",
|
|
503
|
-
children: [jsxRuntime.jsx(icons.EyeCrossedIcon, {
|
|
504
|
-
size: "big"
|
|
505
|
-
}), jsxRuntime.jsx(FieldLabel__default["default"], {
|
|
506
|
-
id: "hidden-columns",
|
|
507
|
-
title: intl.formatMessage(messages$1.hiddenColumns)
|
|
508
|
-
})]
|
|
509
|
-
}), props.areHiddenColumnsSearchable && jsxRuntime.jsx(AsyncSelectInput__default["default"], _objectSpread$2(_objectSpread$2({}, props.searchHiddenColumnsPlaceholder ? {
|
|
510
|
-
placeholder: props.searchHiddenColumnsPlaceholder
|
|
511
|
-
} : undefined), {}, {
|
|
512
|
-
onChange: voidChangeHandler,
|
|
513
|
-
loadOptions: noSearch,
|
|
514
|
-
onInputChange: handleInputChange,
|
|
515
|
-
components: selectInputComponents
|
|
516
|
-
})), jsxRuntime.jsx(DroppablePanel$1, {
|
|
517
|
-
droppableId: HIDDEN_COLUMNS_PANEL,
|
|
518
|
-
"data-testid": HIDDEN_COLUMNS_PANEL,
|
|
519
|
-
noColumnsText: intl.formatMessage(messages$1.noHiddenColumnsToShow),
|
|
520
|
-
columns: hiddenColumns,
|
|
521
|
-
isSearchable: props.areHiddenColumnsSearchable
|
|
522
|
-
})]
|
|
523
|
-
})
|
|
524
|
-
}), jsxRuntime.jsx(DroppableContainer, {
|
|
525
|
-
isDragging: isDragging,
|
|
526
|
-
"aria-labelledby": "visible-columns",
|
|
527
|
-
children: jsxRuntime.jsxs(Spacings__default["default"].Stack, {
|
|
528
|
-
scale: "m",
|
|
529
|
-
children: [jsxRuntime.jsxs(Spacings__default["default"].Inline, {
|
|
530
|
-
scale: "xs",
|
|
531
|
-
alignItems: "center",
|
|
532
|
-
children: [jsxRuntime.jsx(icons.EyeIcon, {
|
|
533
|
-
size: "medium"
|
|
534
|
-
}), jsxRuntime.jsx(FieldLabel__default["default"], {
|
|
535
|
-
id: "visible-columns",
|
|
536
|
-
title: intl.formatMessage(messages$1.visibleColumns)
|
|
537
|
-
})]
|
|
538
|
-
}), jsxRuntime.jsx(DroppablePanel$1, {
|
|
539
|
-
droppableId: SELECTED_COLUMNS_PANEL,
|
|
540
|
-
"data-testid": SELECTED_COLUMNS_PANEL,
|
|
541
|
-
noColumnsText: intl.formatMessage(messages$1.noSelectedColumnsToShow),
|
|
542
|
-
columns: props.selectedColumns,
|
|
543
|
-
onRemove: props.onUpdateColumns
|
|
544
|
-
})]
|
|
545
|
-
})
|
|
546
|
-
})]
|
|
547
|
-
})
|
|
223
|
+
const CustomSettingsManager = props => {
|
|
224
|
+
return jsxRuntime.jsx(jsxRuntime.Fragment, {
|
|
225
|
+
children: jsxRuntime.jsx(columnSettingsManager.SettingsContainer, {
|
|
226
|
+
customSettingsTitle: props.customPanelTitle,
|
|
227
|
+
closeButtonLabel: messages$1.closeButtonLabel,
|
|
228
|
+
onClose: props.onClose,
|
|
229
|
+
containerTheme: props.managerTheme,
|
|
230
|
+
children: props.children
|
|
548
231
|
})
|
|
549
232
|
});
|
|
550
233
|
};
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
availableColumns: []
|
|
555
|
-
};
|
|
556
|
-
ColumnSettingsManager.defaultProps = defaultProps;
|
|
557
|
-
var ColumnSettingsManager$1 = ColumnSettingsManager;
|
|
234
|
+
CustomSettingsManager.propTypes = {};
|
|
235
|
+
CustomSettingsManager.displayName = 'CustomSettingsManager';
|
|
236
|
+
var CustomSettingsManager$1 = CustomSettingsManager;
|
|
558
237
|
|
|
559
238
|
var messages = reactIntl.defineMessages({
|
|
560
239
|
placeholder: {
|
|
@@ -575,7 +254,7 @@ var messages = reactIntl.defineMessages({
|
|
|
575
254
|
});
|
|
576
255
|
|
|
577
256
|
function ownKeys$1(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
578
|
-
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var
|
|
257
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var _context4, _context5; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context4 = ownKeys$1(Object(t), !0)).call(_context4, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context5 = ownKeys$1(Object(t))).call(_context5, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
|
|
579
258
|
const TopBarContainer = /*#__PURE__*/_styled__default["default"]("div", {
|
|
580
259
|
target: "e3i1gnv0"
|
|
581
260
|
} )({
|
|
@@ -583,16 +262,29 @@ const TopBarContainer = /*#__PURE__*/_styled__default["default"]("div", {
|
|
|
583
262
|
styles: "flex-grow:1"
|
|
584
263
|
} );
|
|
585
264
|
const getDropdownOptions = _ref => {
|
|
586
|
-
|
|
265
|
+
var _context, _context2;
|
|
266
|
+
let areCustomColumnSettingsEnabled = _ref.areCustomColumnSettingsEnabled,
|
|
267
|
+
areColumnSettingsEnabled = _ref.areColumnSettingsEnabled,
|
|
587
268
|
areDisplaySettingsEnabled = _ref.areDisplaySettingsEnabled,
|
|
269
|
+
customSettings = _ref.customSettings,
|
|
270
|
+
columnManagerLabel = _ref.columnManagerLabel,
|
|
271
|
+
displaySettingsLabel = _ref.displaySettingsLabel,
|
|
588
272
|
formatMessage = _ref.formatMessage;
|
|
589
|
-
return [...(areColumnSettingsEnabled ? [{
|
|
273
|
+
return _filterInstanceProperty__default["default"](_context = [...(areColumnSettingsEnabled ? [{
|
|
590
274
|
value: COLUMN_MANAGER,
|
|
591
|
-
label: formatMessage(messages.columnManagerOption)
|
|
592
|
-
}] : []), ...(
|
|
275
|
+
label: columnManagerLabel ? columnManagerLabel : formatMessage(messages.columnManagerOption)
|
|
276
|
+
}] : []), ...(customSettings ? _mapInstanceProperty__default["default"](_context2 = _Object$entries__default["default"](customSettings)).call(_context2, _ref2 => {
|
|
277
|
+
let _ref3 = _slicedToArray(_ref2, 2),
|
|
278
|
+
key = _ref3[0],
|
|
279
|
+
customSetting = _ref3[1];
|
|
280
|
+
return customSetting.type === COLUMN_MANAGER && !areCustomColumnSettingsEnabled ? undefined : {
|
|
281
|
+
value: key,
|
|
282
|
+
label: customSetting.customPanelTitle
|
|
283
|
+
};
|
|
284
|
+
}) : []), ...(areDisplaySettingsEnabled ? [{
|
|
593
285
|
value: DISPLAY_SETTINGS,
|
|
594
|
-
label: formatMessage(messages.displaySettingsOption)
|
|
595
|
-
}] : [])];
|
|
286
|
+
label: displaySettingsLabel ? displaySettingsLabel : formatMessage(messages.displaySettingsOption)
|
|
287
|
+
}] : [])]).call(_context, option => option !== undefined);
|
|
596
288
|
};
|
|
597
289
|
const getMappedColumns = function () {
|
|
598
290
|
let columns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
@@ -605,17 +297,22 @@ const getSelectedColumns = function (mappedColumns) {
|
|
|
605
297
|
return _mapInstanceProperty__default["default"](visibleColumnsKeys).call(visibleColumnsKeys, columnKey => mappedColumns[columnKey]);
|
|
606
298
|
};
|
|
607
299
|
const DataTableSettings = props => {
|
|
608
|
-
var _props$columnManager$, _props$
|
|
300
|
+
var _props$customColumnMa, _props$columnManager, _props$displaySetting, _props$displaySetting2, _props$columnManager2, _props$columnManager$, _props$columnManager3, _context3;
|
|
609
301
|
const areDisplaySettingsEnabled = Boolean(props.displaySettings && !props.displaySettings.disableDisplaySettings);
|
|
610
302
|
const areColumnSettingsEnabled = Boolean(props.columnManager && !props.columnManager.disableColumnManager);
|
|
303
|
+
const areCustomColumnSettingsEnabled = Boolean(props.customColumnManager && !((_props$customColumnMa = props.customColumnManager) !== null && _props$customColumnMa !== void 0 && _props$customColumnMa.disableCustomColumnManager));
|
|
611
304
|
const intl = reactIntl.useIntl();
|
|
612
305
|
const _useState = react.useState(null),
|
|
613
306
|
_useState2 = _slicedToArray(_useState, 2),
|
|
614
307
|
openedPanelId = _useState2[0],
|
|
615
308
|
setOpenedPanelId = _useState2[1];
|
|
616
309
|
const dropdownOptions = getDropdownOptions({
|
|
310
|
+
areCustomColumnSettingsEnabled,
|
|
617
311
|
areDisplaySettingsEnabled,
|
|
618
312
|
areColumnSettingsEnabled,
|
|
313
|
+
customSettings: props.customSettings,
|
|
314
|
+
columnManagerLabel: (_props$columnManager = props.columnManager) === null || _props$columnManager === void 0 ? void 0 : _props$columnManager.columnManagerLabel,
|
|
315
|
+
displaySettingsLabel: (_props$displaySetting = props.displaySettings) === null || _props$displaySetting === void 0 ? void 0 : _props$displaySetting.displaySettingsLabel,
|
|
619
316
|
formatMessage: intl.formatMessage
|
|
620
317
|
});
|
|
621
318
|
const mappedColumns = getMappedColumns(areColumnSettingsEnabled ? props.columnManager.hideableColumns : undefined);
|
|
@@ -648,6 +345,7 @@ const DataTableSettings = props => {
|
|
|
648
345
|
})
|
|
649
346
|
})]
|
|
650
347
|
}), openedPanelId === DISPLAY_SETTINGS && jsxRuntime.jsx(DisplaySettingsManager, _objectSpread$1(_objectSpread$1({}, props.displaySettings || {}), {}, {
|
|
348
|
+
title: (_props$displaySetting2 = props.displaySettings) === null || _props$displaySetting2 === void 0 ? void 0 : _props$displaySetting2.displaySettingsLabel,
|
|
651
349
|
onClose: handleSettingsPanelChange,
|
|
652
350
|
onDensityDisplayChange: event => {
|
|
653
351
|
var _props$onSettingsChan;
|
|
@@ -658,8 +356,9 @@ const DataTableSettings = props => {
|
|
|
658
356
|
(_props$onSettingsChan2 = props.onSettingsChange) === null || _props$onSettingsChan2 === void 0 || _props$onSettingsChan2.call(props, UPDATE_ACTIONS.IS_TABLE_WRAPPING_TEXT_UPDATE, event.target.value === SHOW_HIDE_ON_DEMAND);
|
|
659
357
|
},
|
|
660
358
|
managerTheme: props.managerTheme
|
|
661
|
-
})), openedPanelId === COLUMN_MANAGER && jsxRuntime.jsx(ColumnSettingsManager
|
|
662
|
-
|
|
359
|
+
})), openedPanelId === COLUMN_MANAGER && jsxRuntime.jsx(columnSettingsManager.ColumnSettingsManager, _objectSpread$1(_objectSpread$1({}, props.columnManager || {}), {}, {
|
|
360
|
+
title: (_props$columnManager2 = props.columnManager) === null || _props$columnManager2 === void 0 ? void 0 : _props$columnManager2.columnManagerLabel,
|
|
361
|
+
availableColumns: (_props$columnManager$ = (_props$columnManager3 = props.columnManager) === null || _props$columnManager3 === void 0 ? void 0 : _props$columnManager3.hideableColumns) !== null && _props$columnManager$ !== void 0 ? _props$columnManager$ : [],
|
|
663
362
|
selectedColumns: selectedColumns,
|
|
664
363
|
onClose: handleSettingsPanelChange,
|
|
665
364
|
onUpdateColumns: nextVisibleColumns => {
|
|
@@ -668,7 +367,40 @@ const DataTableSettings = props => {
|
|
|
668
367
|
(_props$onSettingsChan3 = props.onSettingsChange) === null || _props$onSettingsChan3 === void 0 || _props$onSettingsChan3.call(props, UPDATE_ACTIONS.COLUMNS_UPDATE, keysOfVisibleColumns);
|
|
669
368
|
},
|
|
670
369
|
managerTheme: props.managerTheme
|
|
671
|
-
}))]
|
|
370
|
+
})), props.customSettings && _mapInstanceProperty__default["default"](_context3 = _Object$entries__default["default"](props.customSettings)).call(_context3, _ref4 => {
|
|
371
|
+
var _props$customColumnMa2;
|
|
372
|
+
let _ref5 = _slicedToArray(_ref4, 2),
|
|
373
|
+
key = _ref5[0],
|
|
374
|
+
customSetting = _ref5[1];
|
|
375
|
+
if (!customSetting.key) {
|
|
376
|
+
throw new Error('ui-kit/DataTableManager: missing: `key` prop, `customSettings` must be a JSON in the format Record<string, Object>.');
|
|
377
|
+
}
|
|
378
|
+
const CustomComponent = customSetting.customComponent;
|
|
379
|
+
return key === openedPanelId && jsxRuntime.jsx("div", {
|
|
380
|
+
children: customSetting.type === COLUMN_MANAGER ? CustomComponent && jsxRuntime.jsx(CustomComponent, _objectSpread$1(_objectSpread$1({}, customSetting || {}), {}, {
|
|
381
|
+
additionalSettings: _objectSpread$1(_objectSpread$1({}, customSetting), props.additionalSettings),
|
|
382
|
+
onClose: handleSettingsPanelChange,
|
|
383
|
+
managerTheme: props.managerTheme,
|
|
384
|
+
selectedColumns: props.selectedColumns,
|
|
385
|
+
availableColumns: (_props$customColumnMa2 = props.customColumnManager) !== null && _props$customColumnMa2 !== void 0 ? _props$customColumnMa2 : undefined,
|
|
386
|
+
onUpdateColumns: (nextVisibleColumns, key) => {
|
|
387
|
+
var _props$onSettingsChan4;
|
|
388
|
+
const keysOfVisibleColumns = _mapInstanceProperty__default["default"](nextVisibleColumns).call(nextVisibleColumns, visibleColumn => visibleColumn.key);
|
|
389
|
+
(_props$onSettingsChan4 = props.onSettingsChange) === null || _props$onSettingsChan4 === void 0 || _props$onSettingsChan4.call(props, UPDATE_ACTIONS.CUSTOM_COLUMNS_UPDATE, keysOfVisibleColumns, key);
|
|
390
|
+
}
|
|
391
|
+
})) : jsxRuntime.jsx(CustomSettingsManager$1, _objectSpread$1(_objectSpread$1({}, customSetting || {}), {}, {
|
|
392
|
+
onClose: handleSettingsPanelChange,
|
|
393
|
+
managerTheme: props.managerTheme,
|
|
394
|
+
children: CustomComponent && jsxRuntime.jsx(CustomComponent, {
|
|
395
|
+
updateCustomSettings: settings => {
|
|
396
|
+
var _props$onSettingsChan5;
|
|
397
|
+
(_props$onSettingsChan5 = props.onSettingsChange) === null || _props$onSettingsChan5 === void 0 || _props$onSettingsChan5.call(props, UPDATE_ACTIONS.CUSTOM_SETTINGS_UPDATE, settings);
|
|
398
|
+
},
|
|
399
|
+
additionalSettings: _objectSpread$1(_objectSpread$1({}, customSetting), props.additionalSettings)
|
|
400
|
+
})
|
|
401
|
+
}))
|
|
402
|
+
}, customSetting.key);
|
|
403
|
+
})]
|
|
672
404
|
});
|
|
673
405
|
};
|
|
674
406
|
DataTableSettings.displayName = 'DataTableSettings';
|
|
@@ -683,6 +415,10 @@ const DataTableManager = props => {
|
|
|
683
415
|
const topBar = props.topBar || dataTableManagerContext.topBar;
|
|
684
416
|
const onSettingsChange = props.onSettingsChange || dataTableManagerContext.onSettingsChange;
|
|
685
417
|
const columnManager = props.columnManager || dataTableManagerContext.columnManager;
|
|
418
|
+
const customSettings = props.customSettings || dataTableManagerContext.customSettings;
|
|
419
|
+
const selectedColumns = props.selectedColumns || dataTableManagerContext.selectedColumns;
|
|
420
|
+
const customColumnManager = props.customColumnManager || dataTableManagerContext.customColumnManager;
|
|
421
|
+
const customColumns = props.customColumns || dataTableManagerContext.customColumns;
|
|
686
422
|
const areDisplaySettingsEnabled = Boolean(displaySettings && !displaySettings.disableDisplaySettings);
|
|
687
423
|
const isWrappingText = areDisplaySettingsEnabled && displaySettings.isWrappingText;
|
|
688
424
|
if (!dataTableColumns) {
|
|
@@ -691,15 +427,32 @@ const DataTableManager = props => {
|
|
|
691
427
|
const columns = react.useMemo(() => _mapInstanceProperty__default["default"](dataTableColumns).call(dataTableColumns, column => _objectSpread(_objectSpread({}, column), {}, {
|
|
692
428
|
isTruncated: areDisplaySettingsEnabled ? isWrappingText : column.isTruncated
|
|
693
429
|
})), [dataTableColumns, areDisplaySettingsEnabled, isWrappingText]);
|
|
430
|
+
const _useState = react.useState({
|
|
431
|
+
key: ''
|
|
432
|
+
}),
|
|
433
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
434
|
+
additionalSettings = _useState2[0],
|
|
435
|
+
setAdditionalSettings = _useState2[1];
|
|
436
|
+
const additionalCustomSetting = dataTableManagerContext.additionalSettings || additionalSettings;
|
|
437
|
+
const updateSettings = additionalCustomSettings => {
|
|
438
|
+
setAdditionalSettings(additionalCustomSettings);
|
|
439
|
+
};
|
|
440
|
+
const updateCustomSettings = dataTableManagerContext.updateCustomSettings || updateSettings;
|
|
694
441
|
return jsxRuntime.jsxs(Spacings__default["default"].Stack, {
|
|
695
442
|
children: [jsxRuntime.jsx(DataTableSettings$1, {
|
|
696
443
|
topBar: topBar,
|
|
697
444
|
onSettingsChange: onSettingsChange,
|
|
698
445
|
columnManager: columnManager,
|
|
699
446
|
displaySettings: displaySettings,
|
|
700
|
-
|
|
447
|
+
customSettings: customSettings,
|
|
448
|
+
managerTheme: "light",
|
|
449
|
+
additionalSettings: additionalCustomSetting,
|
|
450
|
+
updateCustomSettings: settings => updateCustomSettings(settings),
|
|
451
|
+
selectedColumns: selectedColumns !== null && selectedColumns !== void 0 ? selectedColumns : [],
|
|
452
|
+
customColumnManager: customColumnManager !== null && customColumnManager !== void 0 ? customColumnManager : undefined
|
|
701
453
|
}), props.children ? /*#__PURE__*/react.cloneElement(props.children, {
|
|
702
454
|
columns,
|
|
455
|
+
customColumns,
|
|
703
456
|
isCondensed: areDisplaySettingsEnabled && props.displaySettings.isCondensed
|
|
704
457
|
}) : null]
|
|
705
458
|
});
|
|
@@ -708,8 +461,9 @@ DataTableManager.displayName = 'DataTableManager';
|
|
|
708
461
|
var DataTableManager$1 = DataTableManager;
|
|
709
462
|
|
|
710
463
|
// NOTE: This string will be replaced on build time with the package version.
|
|
711
|
-
var version = "19.
|
|
464
|
+
var version = "19.10.0";
|
|
712
465
|
|
|
466
|
+
exports.ColumnSettingsManager = columnSettingsManager.ColumnSettingsManager;
|
|
713
467
|
Object.defineProperty(exports, 'useRowSelection', {
|
|
714
468
|
enumerable: true,
|
|
715
469
|
get: function () { return hooks.useRowSelection; }
|