@dhis2-ui/transfer 8.1.11 → 8.2.2

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 (125) hide show
  1. package/build/cjs/__e2e__/add_remove-highlighted-options.stories.e2e.js +30 -21
  2. package/build/cjs/__e2e__/common/stateful-decorator.js +26 -19
  3. package/build/cjs/__e2e__/disabled-transfer-buttons.stories.e2e.js +70 -49
  4. package/build/cjs/__e2e__/disabled-transfer-options.stories.e2e.js +14 -11
  5. package/build/cjs/__e2e__/display-order.stories.e2e.js +29 -20
  6. package/build/cjs/__e2e__/filter-options-list.stories.e2e.js +97 -73
  7. package/build/cjs/__e2e__/highlight-range-of-options.stories.e2e.js +49 -34
  8. package/build/cjs/__e2e__/loading_lists.stories.e2e.js +1 -1
  9. package/build/cjs/__e2e__/notify_at_end_of_list.stories.e2e.js +61 -43
  10. package/build/cjs/__e2e__/reorder-with-buttons.stories.e2e.js +19 -13
  11. package/build/cjs/__e2e__/set_unset-highlighted-option.stories.e2e.js +30 -21
  12. package/build/cjs/__e2e__/transferring-items.stories.e2e.js +29 -20
  13. package/build/cjs/__tests__/helper/use-highlighted-option/toggle-add.test.js +6 -3
  14. package/build/cjs/__tests__/helper/use-highlighted-option/toggle-range.test.js +48 -24
  15. package/build/cjs/__tests__/transfer.test.js +18 -10
  16. package/build/cjs/actions.js +13 -10
  17. package/build/cjs/add-all.js +17 -14
  18. package/build/cjs/add-individual.js +16 -13
  19. package/build/cjs/common/get-mode-by-modifier-key.js +7 -6
  20. package/build/cjs/common/modes.js +1 -1
  21. package/build/cjs/container.js +15 -12
  22. package/build/cjs/end-intersection-detector.js +21 -15
  23. package/build/cjs/features/disabled-transfer-options/index.js +4 -2
  24. package/build/cjs/features/display-order/index.js +47 -26
  25. package/build/cjs/features/filter-options-list/index.js +6 -3
  26. package/build/cjs/features/highlight-range-of-options/index.js +10 -5
  27. package/build/cjs/features/loading_lists/index.js +2 -2
  28. package/build/cjs/features/notify_at_end_of_list/index.js +5 -3
  29. package/build/cjs/features/set_unset-highlighted-option/index.js +6 -3
  30. package/build/cjs/features/transferring-items/index.js +77 -42
  31. package/build/cjs/filter.js +26 -23
  32. package/build/cjs/icons.js +134 -116
  33. package/build/cjs/left-footer.js +13 -10
  34. package/build/cjs/left-header.js +13 -10
  35. package/build/cjs/left-side.js +19 -16
  36. package/build/cjs/options-container.js +17 -16
  37. package/build/cjs/picked-options.js +22 -19
  38. package/build/cjs/remove-all.js +16 -13
  39. package/build/cjs/remove-individual.js +16 -13
  40. package/build/cjs/reordering-actions.js +34 -31
  41. package/build/cjs/right-footer.js +13 -10
  42. package/build/cjs/right-header.js +13 -10
  43. package/build/cjs/right-side.js +19 -16
  44. package/build/cjs/source-options.js +22 -19
  45. package/build/cjs/transfer/add-all-selectable-source-options.js +13 -9
  46. package/build/cjs/transfer/add-individual-source-options.js +11 -9
  47. package/build/cjs/transfer/create-double-click-handlers.js +17 -13
  48. package/build/cjs/transfer/default-filter-callback.js +6 -3
  49. package/build/cjs/transfer/is-reorder-down-disabled.js +10 -6
  50. package/build/cjs/transfer/is-reorder-up-disabled.js +10 -6
  51. package/build/cjs/transfer/move-highlighted-picked-option-down.js +6 -5
  52. package/build/cjs/transfer/move-highlighted-picked-option-up.js +6 -5
  53. package/build/cjs/transfer/remove-all-picked-options.js +5 -4
  54. package/build/cjs/transfer/remove-individual-picked-options.js +10 -8
  55. package/build/cjs/transfer/use-filter.js +8 -7
  56. package/build/cjs/transfer/use-highlighted-options/create-toggle-highlighted-option.js +45 -40
  57. package/build/cjs/transfer/use-highlighted-options/toggle-add.js +7 -6
  58. package/build/cjs/transfer/use-highlighted-options/toggle-range.js +16 -11
  59. package/build/cjs/transfer/use-highlighted-options/toggle-replace.js +7 -5
  60. package/build/cjs/transfer/use-highlighted-options.js +7 -5
  61. package/build/cjs/transfer-option.js +12 -11
  62. package/build/cjs/transfer.js +86 -72
  63. package/build/cjs/transfer.stories.js +127 -131
  64. package/build/es/__e2e__/add_remove-highlighted-options.stories.e2e.js +29 -20
  65. package/build/es/__e2e__/common/stateful-decorator.js +26 -19
  66. package/build/es/__e2e__/disabled-transfer-buttons.stories.e2e.js +69 -48
  67. package/build/es/__e2e__/disabled-transfer-options.stories.e2e.js +13 -10
  68. package/build/es/__e2e__/display-order.stories.e2e.js +28 -19
  69. package/build/es/__e2e__/filter-options-list.stories.e2e.js +96 -72
  70. package/build/es/__e2e__/highlight-range-of-options.stories.e2e.js +48 -33
  71. package/build/es/__e2e__/notify_at_end_of_list.stories.e2e.js +60 -42
  72. package/build/es/__e2e__/reorder-with-buttons.stories.e2e.js +18 -12
  73. package/build/es/__e2e__/set_unset-highlighted-option.stories.e2e.js +29 -20
  74. package/build/es/__e2e__/transferring-items.stories.e2e.js +28 -19
  75. package/build/es/__tests__/helper/use-highlighted-option/toggle-add.test.js +6 -3
  76. package/build/es/__tests__/helper/use-highlighted-option/toggle-range.test.js +48 -24
  77. package/build/es/__tests__/transfer.test.js +18 -10
  78. package/build/es/actions.js +13 -10
  79. package/build/es/add-all.js +17 -14
  80. package/build/es/add-individual.js +16 -13
  81. package/build/es/common/get-mode-by-modifier-key.js +7 -6
  82. package/build/es/container.js +15 -12
  83. package/build/es/end-intersection-detector.js +21 -15
  84. package/build/es/features/disabled-transfer-options/index.js +4 -2
  85. package/build/es/features/display-order/index.js +47 -26
  86. package/build/es/features/filter-options-list/index.js +6 -3
  87. package/build/es/features/highlight-range-of-options/index.js +10 -5
  88. package/build/es/features/loading_lists/index.js +2 -2
  89. package/build/es/features/notify_at_end_of_list/index.js +5 -3
  90. package/build/es/features/set_unset-highlighted-option/index.js +6 -3
  91. package/build/es/features/transferring-items/index.js +77 -42
  92. package/build/es/filter.js +26 -23
  93. package/build/es/icons.js +133 -115
  94. package/build/es/left-footer.js +13 -10
  95. package/build/es/left-header.js +13 -10
  96. package/build/es/left-side.js +19 -16
  97. package/build/es/options-container.js +17 -16
  98. package/build/es/picked-options.js +22 -19
  99. package/build/es/remove-all.js +16 -13
  100. package/build/es/remove-individual.js +16 -13
  101. package/build/es/reordering-actions.js +34 -31
  102. package/build/es/right-footer.js +13 -10
  103. package/build/es/right-header.js +13 -10
  104. package/build/es/right-side.js +19 -16
  105. package/build/es/source-options.js +22 -19
  106. package/build/es/transfer/add-all-selectable-source-options.js +13 -9
  107. package/build/es/transfer/add-individual-source-options.js +11 -9
  108. package/build/es/transfer/create-double-click-handlers.js +17 -13
  109. package/build/es/transfer/default-filter-callback.js +6 -3
  110. package/build/es/transfer/is-reorder-down-disabled.js +10 -6
  111. package/build/es/transfer/is-reorder-up-disabled.js +10 -6
  112. package/build/es/transfer/move-highlighted-picked-option-down.js +6 -5
  113. package/build/es/transfer/move-highlighted-picked-option-up.js +6 -5
  114. package/build/es/transfer/remove-all-picked-options.js +5 -4
  115. package/build/es/transfer/remove-individual-picked-options.js +10 -8
  116. package/build/es/transfer/use-filter.js +8 -7
  117. package/build/es/transfer/use-highlighted-options/create-toggle-highlighted-option.js +45 -40
  118. package/build/es/transfer/use-highlighted-options/toggle-add.js +7 -6
  119. package/build/es/transfer/use-highlighted-options/toggle-range.js +16 -11
  120. package/build/es/transfer/use-highlighted-options/toggle-replace.js +7 -5
  121. package/build/es/transfer/use-highlighted-options.js +7 -5
  122. package/build/es/transfer-option.js +12 -11
  123. package/build/es/transfer.js +86 -72
  124. package/build/es/transfer.stories.js +126 -130
  125. package/package.json +7 -7
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.LoadingPicked = exports.LoadingSource = exports.InfiniteLoading = exports.CustomFilteringWithoutFilterInput = exports.CustomFilteringWithFilterInput = exports.DifferentWidths = exports.IncreasedOptionsHeight = exports.Reordering = exports.PickedEmptyComponent = exports.SourceEmptyPlaceholder = exports.CustomButtonText = exports.IndividualCustomOption = exports.CustomListOptions = exports.FilteredPlaceholder = exports.FilteredPicked = exports.Filtered = exports.OptionsFooter = exports.Header = exports.Multiple = exports.SingleSelection = exports.default = void 0;
6
+ exports.default = exports.SourceEmptyPlaceholder = exports.SingleSelection = exports.Reordering = exports.PickedEmptyComponent = exports.OptionsFooter = exports.Multiple = exports.LoadingSource = exports.LoadingPicked = exports.InfiniteLoading = exports.IndividualCustomOption = exports.IncreasedOptionsHeight = exports.Header = exports.FilteredPlaceholder = exports.FilteredPicked = exports.Filtered = exports.DifferentWidths = exports.CustomListOptions = exports.CustomFilteringWithoutFilterInput = exports.CustomFilteringWithFilterInput = exports.CustomButtonText = void 0;
7
7
 
8
8
  var _select = require("@dhis2-ui/select");
9
9
 
@@ -26,37 +26,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
26
26
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
27
27
 
28
28
  const subtitle = 'Allows users to select options from a list';
29
- const description = `
30
- #### Usage
31
-
32
- Use a transfer component wherever a user needs to make a complex selection. Simple selections can be achieved with checkboxes, radio buttons or a select.
33
-
34
- There are use-cases that are particularly suitable for a transfer component:
35
-
36
- - when a user needs to select some options from several different groups at the same time
37
- - if the selection needs to have a defined order
38
- - when the user will be interacting with and editing the selection often
39
- - if a user needs to easily compare non-selected and selected options
40
- - if a user is making selections as part of a complex flow, especially where there are many options to choose from
41
-
42
- #### Terminology
43
-
44
- This component has to differentiate between different types of options,
45
- here's an explanation of their meaning:
46
-
47
- - source options: These are options listed on the left and are available for selection
48
- - picked options: These options have been selected by the user and are on the right side
49
- - highlighted option: These are visually highlighted options than can be on either side and are ready for transferral with the action buttons to the other side
50
- - filtered options: These are the displayed source options filtered by a search term or a custom search algorithm. The api surface uses "selected" for "picked" to be consistent with the rest of the library
51
-
52
- #### More details
53
-
54
- See more about the options available for Transfers at [Design System: Transfer](https://github.com/dhis2/design-system/blob/master/organisms/transfer.md#transfer).
55
-
56
- \`\`\`js
57
- import { Transfer, TransferOption } from '@dhis2/ui'
58
- \`\`\`
59
- `;
29
+ const description = "\n#### Usage\n\nUse a transfer component wherever a user needs to make a complex selection. Simple selections can be achieved with checkboxes, radio buttons or a select.\n\nThere are use-cases that are particularly suitable for a transfer component:\n\n- when a user needs to select some options from several different groups at the same time\n- if the selection needs to have a defined order\n- when the user will be interacting with and editing the selection often\n- if a user needs to easily compare non-selected and selected options\n- if a user is making selections as part of a complex flow, especially where there are many options to choose from\n\n#### Terminology\n\nThis component has to differentiate between different types of options,\nhere's an explanation of their meaning:\n\n- source options: These are options listed on the left and are available for selection\n- picked options: These options have been selected by the user and are on the right side\n- highlighted option: These are visually highlighted options than can be on either side and are ready for transferral with the action buttons to the other side\n- filtered options: These are the displayed source options filtered by a search term or a custom search algorithm. The api surface uses \"selected\" for \"picked\" to be consistent with the rest of the library\n\n#### More details\n\nSee more about the options available for Transfers at [Design System: Transfer](https://github.com/dhis2/design-system/blob/master/organisms/transfer.md#transfer).\n\n```js\nimport { Transfer, TransferOption } from '@dhis2/ui'\n```\n";
60
30
  const options = [{
61
31
  label: 'ANC 1st visit',
62
32
  value: 'anc_1st_visit'
@@ -134,7 +104,7 @@ const options = [{
134
104
  */
135
105
 
136
106
  var _default = {
137
- title: 'Forms/Transfer',
107
+ title: 'Transfer',
138
108
  component: _transfer.Transfer,
139
109
  parameters: {
140
110
  componentSubtitle: subtitle,
@@ -154,10 +124,11 @@ var _default = {
154
124
  };
155
125
  exports.default = _default;
156
126
 
157
- const StatefulTemplate = ({
158
- initiallySelected,
159
- ...args
160
- }) => {
127
+ const StatefulTemplate = _ref => {
128
+ let {
129
+ initiallySelected,
130
+ ...args
131
+ } = _ref;
161
132
  const [selected, setSelected] = (0, _react.useState)(initiallySelected);
162
133
 
163
134
  const onChange = payload => setSelected(payload.selected);
@@ -213,9 +184,12 @@ exports.FilteredPicked = FilteredPicked;
213
184
  FilteredPicked.args = {
214
185
  filterablePicked: true,
215
186
  initialSearchTermPicked: 'ANC',
216
- initiallySelected: options.map(({
217
- value
218
- }) => value)
187
+ initiallySelected: options.map(_ref2 => {
188
+ let {
189
+ value
190
+ } = _ref2;
191
+ return value;
192
+ })
219
193
  };
220
194
  const FilteredPlaceholder = StatefulTemplate.bind({});
221
195
  exports.FilteredPlaceholder = FilteredPlaceholder;
@@ -225,39 +199,33 @@ FilteredPlaceholder.args = {
225
199
  filterPlaceholder: 'Search'
226
200
  };
227
201
 
228
- const renderOption = ({
229
- label,
230
- value,
231
- onClick,
232
- highlighted,
233
- selected
234
- }) => /*#__PURE__*/_react.default.createElement("p", {
235
- onClick: event => onClick({
202
+ const renderOption = _ref3 => {
203
+ let {
236
204
  label,
237
- value
238
- }, event),
239
- style: {
240
- background: highlighted ? 'green' : 'blue',
241
- color: selected ? 'orange' : 'white'
242
- }
243
- }, "Custom: ", label, " (label), ", value, " (value)");
244
-
245
- const RenderOptionCode = () => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("strong", null, "Custom option code:"), /*#__PURE__*/_react.default.createElement("code", null, /*#__PURE__*/_react.default.createElement("pre", null, `const renderOption = ({ label, value, onClick, highlighted, selected }) => (
246
- <p
247
- onClick={event => onClick({ label, value }, event)}
248
- style={{
249
- background: highlighted ? 'green' : 'blue',
250
- color: selected ? 'orange' : 'white',
251
- }}
252
- >
253
- Custom: {label} (label), {value} (value)
254
- </p>
255
- )`)));
256
-
257
- const StatefulTemplateCustomRenderOption = ({
258
- initiallySelected,
259
- ...args
260
- }) => {
205
+ value,
206
+ onClick,
207
+ highlighted,
208
+ selected
209
+ } = _ref3;
210
+ return /*#__PURE__*/_react.default.createElement("p", {
211
+ onClick: event => onClick({
212
+ label,
213
+ value
214
+ }, event),
215
+ style: {
216
+ background: highlighted ? 'green' : 'blue',
217
+ color: selected ? 'orange' : 'white'
218
+ }
219
+ }, "Custom: ", label, " (label), ", value, " (value)");
220
+ };
221
+
222
+ const RenderOptionCode = () => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("strong", null, "Custom option code:"), /*#__PURE__*/_react.default.createElement("code", null, /*#__PURE__*/_react.default.createElement("pre", null, "const renderOption = ({ label, value, onClick, highlighted, selected }) => (\n <p\n onClick={event => onClick({ label, value }, event)}\n style={{\n background: highlighted ? 'green' : 'blue',\n color: selected ? 'orange' : 'white',\n }}\n >\n Custom: {label} (label), {value} (value)\n </p>\n )")));
223
+
224
+ const StatefulTemplateCustomRenderOption = _ref4 => {
225
+ let {
226
+ initiallySelected,
227
+ ...args
228
+ } = _ref4;
261
229
  const [selected, setSelected] = (0, _react.useState)(initiallySelected);
262
230
 
263
231
  const onChange = payload => setSelected(payload.selected);
@@ -281,9 +249,12 @@ exports.CustomListOptions = CustomListOptions;
281
249
  CustomListOptions.args = {
282
250
  renderOption,
283
251
  options: options.slice(0, 2),
284
- initiallySelected: options.slice(0, 2).map(({
285
- value
286
- }) => value)
252
+ initiallySelected: options.slice(0, 2).map(_ref5 => {
253
+ let {
254
+ value
255
+ } = _ref5;
256
+ return value;
257
+ })
287
258
  };
288
259
  const IndividualCustomOption = StatefulTemplateCustomRenderOption.bind({});
289
260
  exports.IndividualCustomOption = IndividualCustomOption;
@@ -337,9 +308,12 @@ exports.Reordering = Reordering;
337
308
  Reordering.args = {
338
309
  enableOrderChange: true,
339
310
  options: options.slice(0, 4),
340
- initiallySelected: options.slice(0, 4).map(({
341
- value
342
- }) => value)
311
+ initiallySelected: options.slice(0, 4).map(_ref6 => {
312
+ let {
313
+ value
314
+ } = _ref6;
315
+ return value;
316
+ })
343
317
  };
344
318
  const IncreasedOptionsHeight = StatefulTemplate.bind({});
345
319
  exports.IncreasedOptionsHeight = IncreasedOptionsHeight;
@@ -366,37 +340,40 @@ const createCustomFilteringInHeader = hideFilterInput => {
366
340
  }));
367
341
  const allOptions = [...relativePeriods, ...fixedPeriods];
368
342
 
369
- const Header = ({
370
- onClick,
371
- relativePeriod,
372
- selectedYear,
373
- onSelectedYearChange
374
- }) => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_tab.TabBar, null, /*#__PURE__*/_react.default.createElement(_tab.Tab, {
375
- selected: relativePeriod,
376
- onClick: () => onClick({
377
- relativePeriod: true
378
- })
379
- }, "Relative periods"), /*#__PURE__*/_react.default.createElement(_tab.Tab, {
380
- selected: !relativePeriod,
381
- onClick: () => onClick({
382
- relativePeriod: false
383
- })
384
- }, "Fixed periods")), /*#__PURE__*/_react.default.createElement("p", {
385
- style: {
386
- margin: 0,
387
- height: 10
388
- }
389
- }), /*#__PURE__*/_react.default.createElement(_select.SingleSelectField, {
390
- label: "Year",
391
- selected: selectedYear,
392
- onChange: onSelectedYearChange
393
- }, /*#__PURE__*/_react.default.createElement(_select.SingleSelectOption, {
394
- value: "2020",
395
- label: "2020"
396
- }), /*#__PURE__*/_react.default.createElement(_select.SingleSelectOption, {
397
- value: "2019",
398
- label: "2019"
399
- })));
343
+ const Header = _ref7 => {
344
+ let {
345
+ onClick,
346
+ relativePeriod,
347
+ selectedYear,
348
+ onSelectedYearChange
349
+ } = _ref7;
350
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_tab.TabBar, null, /*#__PURE__*/_react.default.createElement(_tab.Tab, {
351
+ selected: relativePeriod,
352
+ onClick: () => onClick({
353
+ relativePeriod: true
354
+ })
355
+ }, "Relative periods"), /*#__PURE__*/_react.default.createElement(_tab.Tab, {
356
+ selected: !relativePeriod,
357
+ onClick: () => onClick({
358
+ relativePeriod: false
359
+ })
360
+ }, "Fixed periods")), /*#__PURE__*/_react.default.createElement("p", {
361
+ style: {
362
+ margin: 0,
363
+ height: 10
364
+ }
365
+ }), /*#__PURE__*/_react.default.createElement(_select.SingleSelectField, {
366
+ label: "Year",
367
+ selected: selectedYear,
368
+ onChange: onSelectedYearChange
369
+ }, /*#__PURE__*/_react.default.createElement(_select.SingleSelectOption, {
370
+ value: "2020",
371
+ label: "2020"
372
+ }), /*#__PURE__*/_react.default.createElement(_select.SingleSelectOption, {
373
+ value: "2019",
374
+ label: "2019"
375
+ })));
376
+ };
400
377
  /* eslint-enable react/prop-types */
401
378
 
402
379
 
@@ -413,20 +390,29 @@ const createCustomFilteringInHeader = hideFilterInput => {
413
390
  return optionsWithPeriod;
414
391
  }
415
392
 
416
- return optionsWithPeriod.filter(({
417
- label
418
- }) => label.indexOf(filter) !== -1);
393
+ return optionsWithPeriod.filter(_ref8 => {
394
+ let {
395
+ label
396
+ } = _ref8;
397
+ return label.indexOf(filter) !== -1;
398
+ });
419
399
  };
420
400
 
421
401
  const header = /*#__PURE__*/_react.default.createElement(Header, {
422
402
  relativePeriod: relativePeriod,
423
403
  selectedYear: year,
424
- onSelectedYearChange: ({
425
- selected
426
- }) => setYear(selected),
427
- onClick: ({
428
- relativePeriod: newRelativePeriod
429
- }) => setRelativePeriod(newRelativePeriod)
404
+ onSelectedYearChange: _ref9 => {
405
+ let {
406
+ selected
407
+ } = _ref9;
408
+ return setYear(selected);
409
+ },
410
+ onClick: _ref10 => {
411
+ let {
412
+ relativePeriod: newRelativePeriod
413
+ } = _ref10;
414
+ return setRelativePeriod(newRelativePeriod);
415
+ }
430
416
  });
431
417
 
432
418
  return /*#__PURE__*/_react.default.createElement(_transfer.Transfer, _extends({}, props, {
@@ -437,19 +423,23 @@ const createCustomFilteringInHeader = hideFilterInput => {
437
423
  filterCallback: filterCallback,
438
424
  leftHeader: header,
439
425
  rightHeader: /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("b", null, "Selected Periods")),
440
- onFilterChange: ({
441
- value
442
- }) => setFilter(value),
426
+ onFilterChange: _ref11 => {
427
+ let {
428
+ value
429
+ } = _ref11;
430
+ return setFilter(value);
431
+ },
443
432
  height: "400px",
444
433
  filterLabel: "Filter options",
445
434
  filterPlaceholder: "Search"
446
435
  }));
447
436
  };
448
437
 
449
- return ({
450
- initiallySelected,
451
- ...args
452
- }) => {
438
+ return _ref12 => {
439
+ let {
440
+ initiallySelected,
441
+ ...args
442
+ } = _ref12;
453
443
  const [selected, setSelected] = (0, _react.useState)(initiallySelected);
454
444
 
455
445
  const onChange = payload => setSelected(payload.selected);
@@ -485,9 +475,12 @@ const InfiniteLoading = args => {
485
475
  const [options, setOptions] = (0, _react.useState)([]); // selected options
486
476
 
487
477
  const [selected] = (0, _react.useState)( // second page is already selected
488
- optionsPool.slice(pageSize, pageSize * 2).map(({
489
- value
490
- }) => value));
478
+ optionsPool.slice(pageSize, pageSize * 2).map(_ref13 => {
479
+ let {
480
+ value
481
+ } = _ref13;
482
+ return value;
483
+ }));
491
484
 
492
485
  const onEndReached = () => {
493
486
  // do nothing when loading already
@@ -550,7 +543,10 @@ exports.LoadingPicked = LoadingPicked;
550
543
  LoadingPicked.args = {
551
544
  loadingPicked: true,
552
545
  options: options.slice(0, 3),
553
- initiallySelected: options.slice(0, 2).map(({
554
- value
555
- }) => value)
546
+ initiallySelected: options.slice(0, 2).map(_ref14 => {
547
+ let {
548
+ value
549
+ } = _ref14;
550
+ return value;
551
+ })
556
552
  };
@@ -6,27 +6,36 @@ export default {
6
6
  title: 'Transfer add & remove highlighted options',
7
7
  decorators: [statefulDecorator()]
8
8
  };
9
- export const HasOptions = (_, {
10
- onChange,
11
- selected
12
- }) => /*#__PURE__*/React.createElement(Transfer, {
13
- filterable: true,
14
- selected: selected,
15
- onChange: onChange,
16
- options: options
17
- });
18
- export const HasSelected = (_, {
19
- onChange,
20
- selected
21
- }) => /*#__PURE__*/React.createElement(Transfer, {
22
- onChange: onChange,
23
- selected: selected,
24
- options: options
25
- });
9
+ export const HasOptions = (_, _ref) => {
10
+ let {
11
+ onChange,
12
+ selected
13
+ } = _ref;
14
+ return /*#__PURE__*/React.createElement(Transfer, {
15
+ filterable: true,
16
+ selected: selected,
17
+ onChange: onChange,
18
+ options: options
19
+ });
20
+ };
21
+ export const HasSelected = (_, _ref2) => {
22
+ let {
23
+ onChange,
24
+ selected
25
+ } = _ref2;
26
+ return /*#__PURE__*/React.createElement(Transfer, {
27
+ onChange: onChange,
28
+ selected: selected,
29
+ options: options
30
+ });
31
+ };
26
32
  HasSelected.story = {
27
33
  decorators: [statefulDecorator({
28
- initialState: options.slice(0, 4).map(({
29
- value
30
- }) => value)
34
+ initialState: options.slice(0, 4).map(_ref3 => {
35
+ let {
36
+ value
37
+ } = _ref3;
38
+ return value;
39
+ })
31
40
  })]
32
41
  };
@@ -1,31 +1,38 @@
1
1
  /* eslint-disable react/display-name */
2
2
  import React, { useState } from 'react';
3
3
 
4
- const WithState = ({
5
- fn,
6
- initialState,
7
- initialSearchTerm,
8
- controlFilter
9
- }) => {
4
+ const WithState = _ref => {
5
+ let {
6
+ fn,
7
+ initialState,
8
+ initialSearchTerm,
9
+ controlFilter
10
+ } = _ref;
10
11
  const [selected, setSelected] = useState(initialState);
11
12
  const [searchTerm, setSearchTerm] = useState(initialSearchTerm);
12
13
  return fn({
13
14
  selected,
14
15
  searchTerm: controlFilter ? searchTerm : undefined,
15
16
  onChange: payload => setSelected(payload.selected),
16
- onFilterChange: controlFilter ? ({
17
- value
18
- }) => setSearchTerm(value) : undefined
17
+ onFilterChange: controlFilter ? _ref2 => {
18
+ let {
19
+ value
20
+ } = _ref2;
21
+ return setSearchTerm(value);
22
+ } : undefined
19
23
  });
20
24
  };
21
25
 
22
- export const statefulDecorator = ({
23
- initialState = [],
24
- controlFilter = false,
25
- initialSearchTerm = ''
26
- } = {}) => fn => /*#__PURE__*/React.createElement(WithState, {
27
- initialState: initialState,
28
- initialSearchTerm: initialSearchTerm,
29
- controlFilter: controlFilter,
30
- fn: fn
31
- });
26
+ export const statefulDecorator = function () {
27
+ let {
28
+ initialState = [],
29
+ controlFilter = false,
30
+ initialSearchTerm = ''
31
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
32
+ return fn => /*#__PURE__*/React.createElement(WithState, {
33
+ initialState: initialState,
34
+ initialSearchTerm: initialSearchTerm,
35
+ controlFilter: controlFilter,
36
+ fn: fn
37
+ });
38
+ };
@@ -6,59 +6,80 @@ export default {
6
6
  title: 'Transfer Disabled Transfer Buttons',
7
7
  decorators: [statefulDecorator()]
8
8
  };
9
- export const NoOptions = (_, {
10
- selected,
11
- onChange
12
- }) => /*#__PURE__*/React.createElement(Transfer, {
13
- selected: selected,
14
- onChange: onChange,
15
- options: []
16
- });
17
- export const HasOptions = (_, {
18
- selected,
19
- onChange
20
- }) => /*#__PURE__*/React.createElement(Transfer, {
21
- selected: selected,
22
- onChange: onChange,
23
- options: options
24
- });
25
- export const SomeOptionsSelected = (_, {
26
- selected,
27
- onChange
28
- }) => /*#__PURE__*/React.createElement(Transfer, {
29
- selected: selected,
30
- onChange: onChange,
31
- options: options
32
- });
33
- export const OnlyDisabledSourceOptions = (_, {
34
- selected,
35
- onChange
36
- }) => /*#__PURE__*/React.createElement(Transfer, {
37
- selected: selected,
38
- onChange: onChange,
39
- options: [{ ...options[0],
40
- disabled: true
41
- }]
42
- });
9
+ export const NoOptions = (_, _ref) => {
10
+ let {
11
+ selected,
12
+ onChange
13
+ } = _ref;
14
+ return /*#__PURE__*/React.createElement(Transfer, {
15
+ selected: selected,
16
+ onChange: onChange,
17
+ options: []
18
+ });
19
+ };
20
+ export const HasOptions = (_, _ref2) => {
21
+ let {
22
+ selected,
23
+ onChange
24
+ } = _ref2;
25
+ return /*#__PURE__*/React.createElement(Transfer, {
26
+ selected: selected,
27
+ onChange: onChange,
28
+ options: options
29
+ });
30
+ };
31
+ export const SomeOptionsSelected = (_, _ref3) => {
32
+ let {
33
+ selected,
34
+ onChange
35
+ } = _ref3;
36
+ return /*#__PURE__*/React.createElement(Transfer, {
37
+ selected: selected,
38
+ onChange: onChange,
39
+ options: options
40
+ });
41
+ };
42
+ export const OnlyDisabledSourceOptions = (_, _ref4) => {
43
+ let {
44
+ selected,
45
+ onChange
46
+ } = _ref4;
47
+ return /*#__PURE__*/React.createElement(Transfer, {
48
+ selected: selected,
49
+ onChange: onChange,
50
+ options: [{ ...options[0],
51
+ disabled: true
52
+ }]
53
+ });
54
+ };
43
55
  SomeOptionsSelected.story = {
44
56
  decorators: [statefulDecorator({
45
- initialState: options.slice(0, 4).map(({
46
- value
47
- }) => value)
57
+ initialState: options.slice(0, 4).map(_ref5 => {
58
+ let {
59
+ value
60
+ } = _ref5;
61
+ return value;
62
+ })
48
63
  })]
49
64
  };
50
- export const AllOptionsSelected = (_, {
51
- selected,
52
- onChange
53
- }) => /*#__PURE__*/React.createElement(Transfer, {
54
- selected: selected,
55
- onChange: onChange,
56
- options: options
57
- });
65
+ export const AllOptionsSelected = (_, _ref6) => {
66
+ let {
67
+ selected,
68
+ onChange
69
+ } = _ref6;
70
+ return /*#__PURE__*/React.createElement(Transfer, {
71
+ selected: selected,
72
+ onChange: onChange,
73
+ options: options
74
+ });
75
+ };
58
76
  AllOptionsSelected.story = {
59
77
  decorators: [statefulDecorator({
60
- initialState: options.map(({
61
- value
62
- }) => value)
78
+ initialState: options.map(_ref7 => {
79
+ let {
80
+ value
81
+ } = _ref7;
82
+ return value;
83
+ })
63
84
  })]
64
85
  };
@@ -6,13 +6,16 @@ export default {
6
6
  title: 'Disabled Source Options',
7
7
  decorators: [statefulDecorator()]
8
8
  };
9
- export const OneDisabled = (_, {
10
- selected,
11
- onChange
12
- }) => /*#__PURE__*/React.createElement(Transfer, {
13
- selected: selected,
14
- onChange: onChange,
15
- options: [...options.slice(0, 3), { ...options[3],
16
- disabled: true
17
- }, ...options.slice(4)]
18
- });
9
+ export const OneDisabled = (_, _ref) => {
10
+ let {
11
+ selected,
12
+ onChange
13
+ } = _ref;
14
+ return /*#__PURE__*/React.createElement(Transfer, {
15
+ selected: selected,
16
+ onChange: onChange,
17
+ options: [...options.slice(0, 3), { ...options[3],
18
+ disabled: true
19
+ }, ...options.slice(4)]
20
+ });
21
+ };