@synerise/ds-manageable-list 1.7.11 → 1.7.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 (82) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/AddBlankItem/AddBlankItem.d.ts +2 -2
  3. package/dist/AddBlankItem/AddBlankItem.js +19 -22
  4. package/dist/AddBlankItem/AddBlankItem.styles.d.ts +2 -2
  5. package/dist/AddBlankItem/AddBlankItem.styles.js +9 -5
  6. package/dist/AddBlankItem/AddBlankItem.types.d.ts +1 -1
  7. package/dist/AddBlankItem/AddBlankItem.types.js +1 -1
  8. package/dist/AddItem/AddItem.d.ts +3 -3
  9. package/dist/AddItem/AddItem.js +14 -18
  10. package/dist/AddItem/AddItem.styles.d.ts +1 -1
  11. package/dist/AddItem/AddItem.styles.js +6 -3
  12. package/dist/AddItem/AddItem.types.d.ts +1 -1
  13. package/dist/AddItem/AddItem.types.js +1 -1
  14. package/dist/AddItemWithName/AddItemWithName.d.ts +2 -2
  15. package/dist/AddItemWithName/AddItemWithName.js +30 -43
  16. package/dist/AddItemWithName/AddItemWithName.styles.d.ts +2 -2
  17. package/dist/AddItemWithName/AddItemWithName.styles.js +9 -5
  18. package/dist/AddItemWithName/AddItemWithName.types.d.ts +1 -1
  19. package/dist/AddItemWithName/AddItemWithName.types.js +1 -1
  20. package/dist/Item/BlankItem/BlankItem.d.ts +2 -2
  21. package/dist/Item/BlankItem/BlankItem.js +43 -61
  22. package/dist/Item/BlankItem/BlankItem.styles.d.ts +4 -4
  23. package/dist/Item/BlankItem/BlankItem.styles.js +26 -21
  24. package/dist/Item/BlankItem/BlankItem.types.d.ts +3 -3
  25. package/dist/Item/BlankItem/BlankItem.types.js +1 -1
  26. package/dist/Item/ContentItem/ContentItem.d.ts +43 -43
  27. package/dist/Item/ContentItem/ContentItem.js +58 -99
  28. package/dist/Item/ContentItem/ContentItem.styles.d.ts +45 -45
  29. package/dist/Item/ContentItem/ContentItem.styles.js +76 -85
  30. package/dist/Item/ContentItem/ContentItem.types.d.ts +4 -4
  31. package/dist/Item/ContentItem/ContentItem.types.js +1 -1
  32. package/dist/Item/ContentItem/ContentItemHeader.d.ts +2 -2
  33. package/dist/Item/ContentItem/ContentItemHeader.js +88 -134
  34. package/dist/Item/DraggableItem.d.ts +2 -2
  35. package/dist/Item/DraggableItem.js +26 -27
  36. package/dist/Item/FilterItem/FilterItem.d.ts +43 -43
  37. package/dist/Item/FilterItem/FilterItem.js +74 -140
  38. package/dist/Item/FilterItem/FilterItem.styles.d.ts +3 -3
  39. package/dist/Item/FilterItem/FilterItem.styles.js +17 -27
  40. package/dist/Item/FilterItem/FilterItem.types.d.ts +2 -2
  41. package/dist/Item/FilterItem/FilterItem.types.js +1 -1
  42. package/dist/Item/Item.d.ts +2 -2
  43. package/dist/Item/Item.js +39 -90
  44. package/dist/Item/Item.styles.d.ts +9 -9
  45. package/dist/Item/Item.styles.js +50 -48
  46. package/dist/Item/Item.types.d.ts +1 -1
  47. package/dist/Item/Item.types.js +1 -1
  48. package/dist/Item/ItemActions/ItemActions.d.ts +2 -2
  49. package/dist/Item/ItemActions/ItemActions.js +41 -43
  50. package/dist/Item/ItemActions/ItemActions.styles.d.ts +1 -1
  51. package/dist/Item/ItemActions/ItemActions.styles.js +9 -7
  52. package/dist/Item/ItemActions/ItemActions.types.d.ts +2 -2
  53. package/dist/Item/ItemActions/ItemActions.types.js +1 -1
  54. package/dist/Item/ItemMeta/ItemMeta.d.ts +2 -2
  55. package/dist/Item/ItemMeta/ItemMeta.js +27 -22
  56. package/dist/Item/ItemMeta/ItemMeta.styles.d.ts +2 -2
  57. package/dist/Item/ItemMeta/ItemMeta.styles.js +9 -7
  58. package/dist/Item/ItemMeta/ItemMeta.types.js +1 -1
  59. package/dist/Item/ItemName/ItemName.d.ts +2 -2
  60. package/dist/Item/ItemName/ItemName.js +36 -55
  61. package/dist/Item/ItemName/ItemName.types.d.ts +2 -2
  62. package/dist/Item/ItemName/ItemName.types.js +1 -1
  63. package/dist/Item/ItemNameLarge/ItemNameLarge.d.ts +2 -2
  64. package/dist/Item/ItemNameLarge/ItemNameLarge.js +17 -13
  65. package/dist/Item/ItemNameLarge/ItemNameLarge.types.d.ts +1 -1
  66. package/dist/Item/ItemNameLarge/ItemNameLarge.types.js +1 -1
  67. package/dist/Item/SimpleItem/SimpleItem.d.ts +7 -7
  68. package/dist/Item/SimpleItem/SimpleItem.js +34 -56
  69. package/dist/Item/SimpleItem/SimpleItem.types.d.ts +2 -2
  70. package/dist/Item/SimpleItem/SimpleItem.types.js +1 -1
  71. package/dist/ManageableList.d.ts +4 -4
  72. package/dist/ManageableList.js +106 -164
  73. package/dist/ManageableList.styles.d.ts +2 -2
  74. package/dist/ManageableList.styles.js +12 -11
  75. package/dist/ManageableList.types.d.ts +2 -2
  76. package/dist/ManageableList.types.js +18 -14
  77. package/dist/hooks/useTexts.d.ts +1 -1
  78. package/dist/hooks/useTexts.js +31 -89
  79. package/dist/index.js +12 -5
  80. package/dist/modules.d.js +1 -1
  81. package/dist/modules.d.ts +0 -0
  82. package/package.json +21 -21
@@ -1,15 +1,15 @@
1
- import React from 'react';
2
- import { type Props } from './SimpleItem.types';
1
+ import { default as React } from 'react';
2
+ import { Props } from './SimpleItem.types';
3
3
  declare const SimpleItem: (({ item, onRemove, onSelect, onUpdate, texts, additionalActions, selected, }: Props) => React.JSX.Element) & {
4
- ItemContainer: import("styled-components").StyledComponent<"div", any, {
4
+ ItemContainer: import('styled-components').StyledComponent<"div", any, {
5
5
  isSelected: boolean;
6
6
  isDisabled: boolean;
7
7
  }, never>;
8
- ItemLabelWrapper: import("styled-components").StyledComponent<"div", any, {
8
+ ItemLabelWrapper: import('styled-components').StyledComponent<"div", any, {
9
9
  largeSize?: boolean;
10
10
  }, never>;
11
- ItemLabelWithIcon: import("styled-components").StyledComponent<"span", any, {}, never>;
12
- ItemLabel: import("styled-components").StyledComponent<"span", any, {}, never>;
13
- DescriptionIcon: import("styled-components").StyledComponent<React.ForwardRefExoticComponent<import("@synerise/ds-icon").BaseIconProps & Omit<React.HTMLAttributes<HTMLDivElement>, keyof import("@synerise/ds-icon").BaseIconProps> & import("@synerise/ds-utils").DataAttributes & React.RefAttributes<HTMLDivElement>>, any, {}, never>;
11
+ ItemLabelWithIcon: import('styled-components').StyledComponent<"span", any, {}, never>;
12
+ ItemLabel: import('styled-components').StyledComponent<"span", any, {}, never>;
13
+ DescriptionIcon: import('styled-components').StyledComponent<React.ForwardRefExoticComponent<import('@synerise/ds-icon').BaseIconProps & Omit<React.HTMLAttributes<HTMLDivElement>, keyof import('@synerise/ds-icon').BaseIconProps> & import('@synerise/ds-utils').DataAttributes & React.RefAttributes<HTMLDivElement>>, any, {}, never>;
14
14
  };
15
15
  export default SimpleItem;
@@ -1,65 +1,43 @@
1
- import React, { useCallback, useState } from 'react';
2
- import Icon from '@synerise/ds-icon';
3
- import List from '@synerise/ds-list';
4
- import { useTexts } from '../../hooks/useTexts';
5
- import * as S from '../Item.styles';
6
- import ItemActions from '../ItemActions/ItemActions';
7
- import ItemName from '../ItemName/ItemName';
8
- var SimpleItemComponent = function SimpleItemComponent(_ref) {
9
- var item = _ref.item,
10
- onRemove = _ref.onRemove,
11
- onSelect = _ref.onSelect,
12
- onUpdate = _ref.onUpdate,
13
- texts = _ref.texts,
14
- additionalActions = _ref.additionalActions,
15
- selected = _ref.selected;
16
- var _useState = useState(false),
17
- editMode = _useState[0],
18
- setEditMode = _useState[1];
19
- var allTexts = useTexts(texts);
20
- var updateName = useCallback(function (updateParams) {
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useState, useCallback } from "react";
3
+ import Icon from "@synerise/ds-icon";
4
+ import List from "@synerise/ds-list";
5
+ import { useTexts } from "../../hooks/useTexts.js";
6
+ import { DescriptionIcon, ItemLabel, ItemLabelWithIcon, ItemLabelWrapper, ItemContainer } from "../Item.styles.js";
7
+ import ItemActions from "../ItemActions/ItemActions.js";
8
+ import ItemName from "../ItemName/ItemName.js";
9
+ const SimpleItemComponent = ({
10
+ item,
11
+ onRemove,
12
+ onSelect,
13
+ onUpdate,
14
+ texts,
15
+ additionalActions,
16
+ selected
17
+ }) => {
18
+ const [editMode, setEditMode] = useState(false);
19
+ const allTexts = useTexts(texts);
20
+ const updateName = useCallback((updateParams) => {
21
21
  setEditMode(false);
22
22
  onUpdate && onUpdate(updateParams);
23
23
  }, [onUpdate]);
24
- var handleSelect = useCallback(function () {
25
- !editMode && (onSelect == null ? void 0 : onSelect({
24
+ const handleSelect = useCallback(() => {
25
+ !editMode && onSelect?.({
26
26
  id: item.id
27
- }));
27
+ });
28
28
  }, [onSelect, item.id, editMode]);
29
- var enterEditMode = useCallback(function () {
29
+ const enterEditMode = useCallback(() => {
30
30
  setEditMode(true);
31
31
  }, []);
32
- return /*#__PURE__*/React.createElement(S.ItemContainer, {
33
- isDisabled: !!item.disabled,
34
- "data-active": !!selected,
35
- isSelected: !!selected
36
- }, /*#__PURE__*/React.createElement(List.Item, {
37
- icon: /*#__PURE__*/React.createElement(Icon, {
38
- className: "ds-manageable-list-item-icon",
39
- component: item.icon,
40
- size: 24
41
- }),
42
- onSelect: handleSelect,
43
- actions: /*#__PURE__*/React.createElement(ItemActions, {
44
- item: item,
45
- editAction: enterEditMode,
46
- removeAction: onRemove,
47
- editActionTooltip: allTexts.itemActionRenameTooltip,
48
- duplicateActionTooltip: allTexts.itemActionDuplicateTooltip,
49
- removeActionTooltip: allTexts.itemActionDeleteTooltip,
50
- additionalActions: additionalActions
51
- })
52
- }, /*#__PURE__*/React.createElement(ItemName, {
53
- item: item,
54
- editMode: editMode,
55
- onUpdate: updateName
56
- })));
32
+ return /* @__PURE__ */ jsx(ItemContainer, { isDisabled: !!item.disabled, "data-active": !!selected, isSelected: !!selected, children: /* @__PURE__ */ jsx(List.Item, { icon: /* @__PURE__ */ jsx(Icon, { className: "ds-manageable-list-item-icon", component: item.icon, size: 24 }), onSelect: handleSelect, actions: /* @__PURE__ */ jsx(ItemActions, { item, editAction: enterEditMode, removeAction: onRemove, editActionTooltip: allTexts.itemActionRenameTooltip, duplicateActionTooltip: allTexts.itemActionDuplicateTooltip, removeActionTooltip: allTexts.itemActionDeleteTooltip, additionalActions }), children: /* @__PURE__ */ jsx(ItemName, { item, editMode, onUpdate: updateName }) }) });
57
33
  };
58
- var SimpleItem = Object.assign(SimpleItemComponent, {
59
- ItemContainer: S.ItemContainer,
60
- ItemLabelWrapper: S.ItemLabelWrapper,
61
- ItemLabelWithIcon: S.ItemLabelWithIcon,
62
- ItemLabel: S.ItemLabel,
63
- DescriptionIcon: S.DescriptionIcon
34
+ const SimpleItem = Object.assign(SimpleItemComponent, {
35
+ ItemContainer,
36
+ ItemLabelWrapper,
37
+ ItemLabelWithIcon,
38
+ ItemLabel,
39
+ DescriptionIcon
64
40
  });
65
- export default SimpleItem;
41
+ export {
42
+ SimpleItem as default
43
+ };
@@ -1,5 +1,5 @@
1
- import type { ReactText } from 'react';
2
- import { type AdditionalAction, type ItemProps, type Texts } from '../../ManageableList.types';
1
+ import { ReactText } from 'react';
2
+ import { AdditionalAction, ItemProps, Texts } from '../../ManageableList.types';
3
3
  export type Props = {
4
4
  item: ItemProps;
5
5
  onRemove?: (removeParams: {
@@ -1 +1 @@
1
- export {};
1
+
@@ -1,10 +1,10 @@
1
- import React from 'react';
2
- import { type ManageableListProps } from './ManageableList.types';
1
+ import { default as React } from 'react';
2
+ import { ManageableListProps } from './ManageableList.types';
3
3
  declare const ManageableList: (<T extends object>({ className, onItemAdd, onItemSelect, onItemDuplicate, onItemRemove, onItemEdit, onChangeOrder, items, maxToShowItems, visibleItemsLimit, loading, type, addButtonDisabled, changeOrderDisabled, greyBackground, placeholder, selectedItemId, searchQuery, expanderDisabled, onExpand, expandedIds, texts, changeOrderByButtons, additionalActions, style, renderItem, renderCustomToggleButton, }: ManageableListProps<T>) => React.JSX.Element) & {
4
- ManageableListContainer: import("styled-components").StyledComponent<"div", any, {
4
+ ManageableListContainer: import('styled-components').StyledComponent<"div", any, {
5
5
  listType: string;
6
6
  greyBackground: boolean;
7
7
  }, never>;
8
- ShowMoreButton: import("styled-components").StyledComponent<"div", any, {}, never>;
8
+ ShowMoreButton: import('styled-components').StyledComponent<"div", any, {}, never>;
9
9
  };
10
10
  export default ManageableList;
@@ -1,190 +1,132 @@
1
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
- import React, { useCallback, useEffect, useMemo, useState } from 'react';
3
- import List from '@synerise/ds-list';
4
- import { DragOverlay, SortableContainer } from '@synerise/ds-sortable';
5
- import AddBlankItem from './AddBlankItem/AddBlankItem';
6
- import AddItem from './AddItem/AddItem';
7
- import AddItemWithName from './AddItemWithName/AddItemWithName';
8
- import { DraggableItem } from './Item/DraggableItem';
9
- import Item from './Item/Item';
10
- import * as S from './ManageableList.styles';
11
- import { ListType } from './ManageableList.types';
12
- import { useTexts } from './hooks/useTexts';
13
- var ManageableListComponent = function ManageableListComponent(_ref) {
14
- var className = _ref.className,
15
- onItemAdd = _ref.onItemAdd,
16
- onItemSelect = _ref.onItemSelect,
17
- onItemDuplicate = _ref.onItemDuplicate,
18
- onItemRemove = _ref.onItemRemove,
19
- onItemEdit = _ref.onItemEdit,
20
- onChangeOrder = _ref.onChangeOrder,
21
- items = _ref.items,
22
- maxToShowItems = _ref.maxToShowItems,
23
- visibleItemsLimit = _ref.visibleItemsLimit,
24
- loading = _ref.loading,
25
- _ref$type = _ref.type,
26
- type = _ref$type === void 0 ? ListType.DEFAULT : _ref$type,
27
- _ref$addButtonDisable = _ref.addButtonDisabled,
28
- addButtonDisabled = _ref$addButtonDisable === void 0 ? false : _ref$addButtonDisable,
29
- _ref$changeOrderDisab = _ref.changeOrderDisabled,
30
- changeOrderDisabled = _ref$changeOrderDisab === void 0 ? false : _ref$changeOrderDisab,
31
- _ref$greyBackground = _ref.greyBackground,
32
- greyBackground = _ref$greyBackground === void 0 ? false : _ref$greyBackground,
33
- placeholder = _ref.placeholder,
34
- selectedItemId = _ref.selectedItemId,
35
- searchQuery = _ref.searchQuery,
36
- expanderDisabled = _ref.expanderDisabled,
37
- onExpand = _ref.onExpand,
38
- expandedIds = _ref.expandedIds,
39
- texts = _ref.texts,
40
- _ref$changeOrderByBut = _ref.changeOrderByButtons,
41
- changeOrderByButtons = _ref$changeOrderByBut === void 0 ? false : _ref$changeOrderByBut,
42
- additionalActions = _ref.additionalActions,
43
- style = _ref.style,
44
- _ref$renderItem = _ref.renderItem,
45
- renderItem = _ref$renderItem === void 0 ? function () {
46
- return /*#__PURE__*/React.createElement(React.Fragment, null);
47
- } : _ref$renderItem,
48
- renderCustomToggleButton = _ref.renderCustomToggleButton;
49
- var _useState = useState(false),
50
- allItemsVisible = _useState[0],
51
- setAllItemsVisible = _useState[1];
52
- var _useState2 = useState(),
53
- draggedItem = _useState2[0],
54
- setDraggedItem = _useState2[1];
55
- var allTexts = useTexts(texts);
56
- var visibleLimit = visibleItemsLimit || maxToShowItems;
57
- var getExpandedIds = useCallback(function () {
58
- return expandedIds !== undefined ? expandedIds : items.filter(function (item) {
59
- return item.expanded;
60
- }).map(function (item) {
61
- return item.id;
62
- });
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { useState, useCallback, useEffect, useMemo } from "react";
3
+ import List from "@synerise/ds-list";
4
+ import { SortableContainer, DragOverlay } from "@synerise/ds-sortable";
5
+ import AddBlankItem from "./AddBlankItem/AddBlankItem.js";
6
+ import AddItem from "./AddItem/AddItem.js";
7
+ import AddItemWithName from "./AddItemWithName/AddItemWithName.js";
8
+ import { DraggableItem } from "./Item/DraggableItem.js";
9
+ import Item from "./Item/Item.js";
10
+ import { ShowMoreButton, ManageableListContainer } from "./ManageableList.styles.js";
11
+ import { ListType } from "./ManageableList.types.js";
12
+ import { useTexts } from "./hooks/useTexts.js";
13
+ const ManageableListComponent = ({
14
+ className,
15
+ onItemAdd,
16
+ onItemSelect,
17
+ onItemDuplicate,
18
+ onItemRemove,
19
+ onItemEdit,
20
+ onChangeOrder,
21
+ items,
22
+ maxToShowItems,
23
+ visibleItemsLimit,
24
+ loading,
25
+ type = ListType.DEFAULT,
26
+ addButtonDisabled = false,
27
+ changeOrderDisabled = false,
28
+ greyBackground = false,
29
+ placeholder,
30
+ selectedItemId,
31
+ searchQuery,
32
+ expanderDisabled,
33
+ onExpand,
34
+ expandedIds,
35
+ texts,
36
+ changeOrderByButtons = false,
37
+ additionalActions,
38
+ style,
39
+ renderItem = () => /* @__PURE__ */ jsx(Fragment, {}),
40
+ renderCustomToggleButton
41
+ }) => {
42
+ const [allItemsVisible, setAllItemsVisible] = useState(false);
43
+ const [draggedItem, setDraggedItem] = useState();
44
+ const allTexts = useTexts(texts);
45
+ const visibleLimit = visibleItemsLimit || maxToShowItems;
46
+ const getExpandedIds = useCallback(() => {
47
+ return expandedIds !== void 0 ? expandedIds : items.filter((item) => item.expanded).map((item) => item.id);
63
48
  }, [expandedIds, items]);
64
- var _useState3 = useState(getExpandedIds()),
65
- allExpandedIds = _useState3[0],
66
- setAllExpandedIds = _useState3[1];
67
- useEffect(function () {
49
+ const [allExpandedIds, setAllExpandedIds] = useState(getExpandedIds());
50
+ useEffect(() => {
68
51
  setAllExpandedIds(getExpandedIds());
69
52
  }, [expandedIds, items, getExpandedIds]);
70
- var getItemsOverLimit = useMemo(function () {
53
+ const getItemsOverLimit = useMemo(() => {
71
54
  if (visibleLimit) {
72
55
  return items.length - visibleLimit;
73
56
  }
74
57
  return 0;
75
58
  }, [items, visibleLimit]);
76
- var visibleItems = useMemo(function () {
59
+ const visibleItems = useMemo(() => {
77
60
  return allItemsVisible ? items : items.slice(0, visibleLimit);
78
61
  }, [allItemsVisible, visibleLimit, items]);
79
- var buttonLabel = useMemo(function () {
80
- return allItemsVisible ? allTexts.showLessLabel : allTexts.showMoreLabel;
81
- }, [allItemsVisible, allTexts.showLessLabel, allTexts.showMoreLabel]);
82
- var buttonLabelDiff = useMemo(function () {
83
- return allItemsVisible ? /*#__PURE__*/React.createElement(React.Fragment, null, "- ", getItemsOverLimit, " ", allTexts.less, ' ') : /*#__PURE__*/React.createElement(React.Fragment, null, "+ ", getItemsOverLimit, " ", allTexts.more, ' ');
84
- }, [allItemsVisible, getItemsOverLimit, allTexts.less, allTexts.more]);
85
- var toggleAllItems = useCallback(function () {
62
+ const buttonLabel = useMemo(() => allItemsVisible ? allTexts.showLessLabel : allTexts.showMoreLabel, [allItemsVisible, allTexts.showLessLabel, allTexts.showMoreLabel]);
63
+ const buttonLabelDiff = useMemo(() => allItemsVisible ? /* @__PURE__ */ jsxs(Fragment, { children: [
64
+ "- ",
65
+ getItemsOverLimit,
66
+ " ",
67
+ allTexts.less,
68
+ " "
69
+ ] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
70
+ "+ ",
71
+ getItemsOverLimit,
72
+ " ",
73
+ allTexts.more,
74
+ " "
75
+ ] }), [allItemsVisible, getItemsOverLimit, allTexts.less, allTexts.more]);
76
+ const toggleAllItems = useCallback(() => {
86
77
  setAllItemsVisible(!allItemsVisible);
87
78
  }, [allItemsVisible]);
88
- var createItem = useCallback(function () {
79
+ const createItem = useCallback(() => {
89
80
  onItemAdd && onItemAdd();
90
81
  }, [onItemAdd]);
91
- var onMoveTop = useCallback(function (item) {
92
- var newOrder = [item].concat(items.filter(function (i) {
93
- return i.id !== item.id;
94
- }));
82
+ const onMoveTop = useCallback((item) => {
83
+ const newOrder = [item, ...items.filter((i) => i.id !== item.id)];
95
84
  onChangeOrder && onChangeOrder(newOrder);
96
85
  }, [items, onChangeOrder]);
97
- var onMoveBottom = useCallback(function (item) {
98
- var newOrder = [].concat(items.filter(function (i) {
99
- return i.id !== item.id;
100
- }), [item]);
86
+ const onMoveBottom = useCallback((item) => {
87
+ const newOrder = [...items.filter((i) => i.id !== item.id), item];
101
88
  onChangeOrder && onChangeOrder(newOrder);
102
89
  }, [items, onChangeOrder]);
103
- var getItem = useCallback(function (item, index, draggable) {
104
- var Component = draggable ? DraggableItem : Item;
105
- return /*#__PURE__*/React.createElement(Component, {
106
- key: item.id,
107
- isDragOverlay: index === -1,
108
- isDragPlaceholder: (draggedItem == null ? void 0 : draggedItem.id) === item.id && index > -1,
109
- isFirst: index === 0,
110
- isLast: index + 1 === items.length,
111
- listType: type,
112
- onSelect: onItemSelect,
113
- onUpdate: onItemEdit,
114
- onRemove: onItemRemove,
115
- onDuplicate: onItemDuplicate,
116
- onExpand: onExpand,
117
- onMoveTop: changeOrderByButtons ? onMoveTop : undefined,
118
- onMoveBottom: changeOrderByButtons ? onMoveBottom : undefined,
119
- item: item,
120
- draggable: draggable,
121
- changeOrderDisabled: changeOrderDisabled,
122
- greyBackground: greyBackground,
123
- selected: Boolean(item.id === selectedItemId),
124
- texts: allTexts,
125
- searchQuery: searchQuery,
126
- hideExpander: expanderDisabled,
127
- expanded: allExpandedIds && allExpandedIds.includes(item.id),
128
- additionalActions: additionalActions,
129
- renderItem: renderItem
130
- });
131
- }, [draggedItem == null ? void 0 : draggedItem.id, items.length, type, onItemSelect, onItemEdit, onItemRemove, onItemDuplicate, onExpand, changeOrderByButtons, onMoveTop, onMoveBottom, changeOrderDisabled, greyBackground, selectedItemId, allTexts, searchQuery, expanderDisabled, allExpandedIds, additionalActions, renderItem]);
132
- var toggleMoreItemsButton = visibleLimit && items.length > visibleLimit ? renderCustomToggleButton && renderCustomToggleButton({
90
+ const getItem = useCallback((item, index, draggable) => {
91
+ const Component = draggable ? DraggableItem : Item;
92
+ return /* @__PURE__ */ jsx(Component, { isDragOverlay: index === -1, isDragPlaceholder: draggedItem?.id === item.id && index > -1, isFirst: index === 0, isLast: index + 1 === items.length, listType: type, onSelect: onItemSelect, onUpdate: onItemEdit, onRemove: onItemRemove, onDuplicate: onItemDuplicate, onExpand, onMoveTop: changeOrderByButtons ? onMoveTop : void 0, onMoveBottom: changeOrderByButtons ? onMoveBottom : void 0, item, draggable, changeOrderDisabled, greyBackground, selected: Boolean(item.id === selectedItemId), texts: allTexts, searchQuery, hideExpander: expanderDisabled, expanded: allExpandedIds && allExpandedIds.includes(item.id), additionalActions, renderItem }, item.id);
93
+ }, [draggedItem?.id, items.length, type, onItemSelect, onItemEdit, onItemRemove, onItemDuplicate, onExpand, changeOrderByButtons, onMoveTop, onMoveBottom, changeOrderDisabled, greyBackground, selectedItemId, allTexts, searchQuery, expanderDisabled, allExpandedIds, additionalActions, renderItem]);
94
+ const toggleMoreItemsButton = visibleLimit && items.length > visibleLimit ? renderCustomToggleButton && renderCustomToggleButton({
133
95
  onClick: toggleAllItems,
134
- allItemsVisible: allItemsVisible,
96
+ allItemsVisible,
135
97
  total: items.length,
136
98
  limit: visibleLimit
137
- }) || /*#__PURE__*/React.createElement(S.ShowMoreButton, {
138
- onClick: toggleAllItems,
139
- "data-testid": "show-more-button"
140
- }, /*#__PURE__*/React.createElement("span", null, buttonLabelDiff), /*#__PURE__*/React.createElement("strong", null, buttonLabel)) : null;
141
- var handleDragStart = useCallback(function (_ref2) {
142
- var active = _ref2.active;
143
- var stepIndex = visibleItems.findIndex(function (item) {
144
- return item.id === active.id;
145
- });
146
- setDraggedItem(_extends({}, visibleItems[stepIndex], {
99
+ }) || /* @__PURE__ */ jsxs(ShowMoreButton, { onClick: toggleAllItems, "data-testid": "show-more-button", children: [
100
+ /* @__PURE__ */ jsx("span", { children: buttonLabelDiff }),
101
+ /* @__PURE__ */ jsx("strong", { children: buttonLabel })
102
+ ] }) : null;
103
+ const handleDragStart = useCallback(({
104
+ active
105
+ }) => {
106
+ const stepIndex = visibleItems.findIndex((item) => item.id === active.id);
107
+ setDraggedItem({
108
+ ...visibleItems[stepIndex],
147
109
  index: stepIndex
148
- }));
110
+ });
149
111
  }, [visibleItems]);
150
- var handleDragEnd = useCallback(function () {
151
- setDraggedItem(undefined);
112
+ const handleDragEnd = useCallback(() => {
113
+ setDraggedItem(void 0);
152
114
  }, []);
153
- return /*#__PURE__*/React.createElement(S.ManageableListContainer, {
154
- className: "ds-manageable-list " + (className || ''),
155
- listType: type,
156
- greyBackground: greyBackground,
157
- style: style
158
- }, type === ListType.DEFAULT && Boolean(onItemAdd) && /*#__PURE__*/React.createElement(AddItemWithName, {
159
- addItemLabel: allTexts.addItemLabel,
160
- onItemAdd: onItemAdd,
161
- disabled: addButtonDisabled,
162
- placeholder: placeholder
163
- }), onChangeOrder && !changeOrderDisabled ? /*#__PURE__*/React.createElement(SortableContainer, {
164
- axis: "y",
165
- onDragStart: handleDragStart,
166
- onDragEnd: handleDragEnd,
167
- onDragCancel: handleDragEnd,
168
- onOrderChange: onChangeOrder,
169
- items: visibleItems
170
- }, visibleItems.map(function (item, index) {
171
- return getItem(item, index, true);
172
- }), /*#__PURE__*/React.createElement(DragOverlay, null, draggedItem && /*#__PURE__*/React.createElement(React.Fragment, null, getItem(draggedItem, -1, false)))) : /*#__PURE__*/React.createElement(List, {
173
- loading: loading,
174
- dataSource: visibleItems,
175
- renderItem: getItem
176
- }), toggleMoreItemsButton, (type === ListType.CONTENT || type === ListType.CONTENT_LARGE) && Boolean(onItemAdd) && /*#__PURE__*/React.createElement(AddItem, {
177
- addItemLabel: allTexts.addItemLabel,
178
- onItemAdd: createItem,
179
- disabled: addButtonDisabled
180
- }), type === ListType.BLANK && Boolean(onItemAdd) && /*#__PURE__*/React.createElement(AddBlankItem, {
181
- addItemLabel: allTexts.addItemLabel,
182
- onItemAdd: createItem,
183
- disabled: addButtonDisabled
184
- }));
115
+ return /* @__PURE__ */ jsxs(ManageableListContainer, { className: `ds-manageable-list ${className || ""}`, listType: type, greyBackground, style, children: [
116
+ type === ListType.DEFAULT && Boolean(onItemAdd) && /* @__PURE__ */ jsx(AddItemWithName, { addItemLabel: allTexts.addItemLabel, onItemAdd, disabled: addButtonDisabled, placeholder }),
117
+ onChangeOrder && !changeOrderDisabled ? /* @__PURE__ */ jsxs(SortableContainer, { axis: "y", onDragStart: handleDragStart, onDragEnd: handleDragEnd, onDragCancel: handleDragEnd, onOrderChange: onChangeOrder, items: visibleItems, children: [
118
+ visibleItems.map((item, index) => getItem(item, index, true)),
119
+ /* @__PURE__ */ jsx(DragOverlay, { children: draggedItem && /* @__PURE__ */ jsx(Fragment, { children: getItem(draggedItem, -1, false) }) })
120
+ ] }) : /* @__PURE__ */ jsx(List, { loading, dataSource: visibleItems, renderItem: getItem }),
121
+ toggleMoreItemsButton,
122
+ (type === ListType.CONTENT || type === ListType.CONTENT_LARGE) && Boolean(onItemAdd) && /* @__PURE__ */ jsx(AddItem, { addItemLabel: allTexts.addItemLabel, onItemAdd: createItem, disabled: addButtonDisabled }),
123
+ type === ListType.BLANK && Boolean(onItemAdd) && /* @__PURE__ */ jsx(AddBlankItem, { addItemLabel: allTexts.addItemLabel, onItemAdd: createItem, disabled: addButtonDisabled })
124
+ ] });
185
125
  };
186
- var ManageableList = Object.assign(ManageableListComponent, {
187
- ManageableListContainer: S.ManageableListContainer,
188
- ShowMoreButton: S.ShowMoreButton
126
+ const ManageableList = Object.assign(ManageableListComponent, {
127
+ ManageableListContainer,
128
+ ShowMoreButton
189
129
  });
190
- export default ManageableList;
130
+ export {
131
+ ManageableList as default
132
+ };
@@ -2,6 +2,6 @@ type ManageableListProps = {
2
2
  listType: string;
3
3
  greyBackground: boolean;
4
4
  };
5
- export declare const ManageableListContainer: import("styled-components").StyledComponent<"div", any, ManageableListProps, never>;
6
- export declare const ShowMoreButton: import("styled-components").StyledComponent<"div", any, {}, never>;
5
+ export declare const ManageableListContainer: import('styled-components').StyledComponent<"div", any, ManageableListProps, never>;
6
+ export declare const ShowMoreButton: import('styled-components').StyledComponent<"div", any, {}, never>;
7
7
  export {};
@@ -1,15 +1,16 @@
1
- import styled from 'styled-components';
2
- import { ListType } from './ManageableList.types';
3
- export var ManageableListContainer = styled.div.withConfig({
1
+ import styled from "styled-components";
2
+ import { ListType } from "./ManageableList.types.js";
3
+ const ManageableListContainer = /* @__PURE__ */ styled.div.withConfig({
4
4
  displayName: "ManageableListstyles__ManageableListContainer",
5
5
  componentId: "sc-1pshmn-0"
6
- })(["display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:", ";& > div{width:100%;padding:0;}.ant-list{width:100%;padding:0;}.ant-spin-nested-loading{width:100%;}"], function (_ref) {
7
- var listType = _ref.listType;
8
- return listType === ListType.CONTENT ? '24px' : '0';
9
- });
10
- export var ShowMoreButton = styled.div.withConfig({
6
+ })(["display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:", ";& > div{width:100%;padding:0;}.ant-list{width:100%;padding:0;}.ant-spin-nested-loading{width:100%;}"], ({
7
+ listType
8
+ }) => listType === ListType.CONTENT ? "24px" : "0");
9
+ const ShowMoreButton = /* @__PURE__ */ styled.div.withConfig({
11
10
  displayName: "ManageableListstyles__ShowMoreButton",
12
11
  componentId: "sc-1pshmn-1"
13
- })(["background:transparent;outline:0;cursor:pointer;&&{padding:16px 8px;margin:0;}&:hover{color:", ";}strong{font-weight:500;}"], function (props) {
14
- return props.theme.palette['blue-600'];
15
- });
12
+ })(["background:transparent;outline:0;cursor:pointer;&&{padding:16px 8px;margin:0;}&:hover{color:", ";}strong{font-weight:500;}"], (props) => props.theme.palette["blue-600"]);
13
+ export {
14
+ ManageableListContainer,
15
+ ShowMoreButton
16
+ };
@@ -1,5 +1,5 @@
1
- import type { CSSProperties, HTMLAttributes, ReactElement, ReactNode, ReactText } from 'react';
2
- import type { ExactlyOne } from '@synerise/ds-utils';
1
+ import { CSSProperties, HTMLAttributes, ReactElement, ReactNode, ReactText } from 'react';
2
+ import { ExactlyOne } from '@synerise/ds-utils';
3
3
  export declare enum ExpansionBehaviour {
4
4
  DEFAULT = "default",
5
5
  ACCORDION = "accordion",
@@ -1,14 +1,18 @@
1
- export var ExpansionBehaviour = /*#__PURE__*/function (ExpansionBehaviour) {
2
- ExpansionBehaviour["DEFAULT"] = "default";
3
- ExpansionBehaviour["ACCORDION"] = "accordion";
4
- ExpansionBehaviour["CUSTOM"] = "custom";
5
- return ExpansionBehaviour;
6
- }({});
7
- export var ListType = /*#__PURE__*/function (ListType) {
8
- ListType["DEFAULT"] = "default";
9
- ListType["BLANK"] = "blank";
10
- ListType["CONTENT"] = "content";
11
- ListType["CONTENT_LARGE"] = "content-large";
12
- ListType["FILTER"] = "filter";
13
- return ListType;
14
- }({});
1
+ var ExpansionBehaviour = /* @__PURE__ */ ((ExpansionBehaviour2) => {
2
+ ExpansionBehaviour2["DEFAULT"] = "default";
3
+ ExpansionBehaviour2["ACCORDION"] = "accordion";
4
+ ExpansionBehaviour2["CUSTOM"] = "custom";
5
+ return ExpansionBehaviour2;
6
+ })(ExpansionBehaviour || {});
7
+ var ListType = /* @__PURE__ */ ((ListType2) => {
8
+ ListType2["DEFAULT"] = "default";
9
+ ListType2["BLANK"] = "blank";
10
+ ListType2["CONTENT"] = "content";
11
+ ListType2["CONTENT_LARGE"] = "content-large";
12
+ ListType2["FILTER"] = "filter";
13
+ return ListType2;
14
+ })(ListType || {});
15
+ export {
16
+ ExpansionBehaviour,
17
+ ListType
18
+ };
@@ -1,2 +1,2 @@
1
- import { type Texts } from '../ManageableList.types';
1
+ import { Texts } from '../ManageableList.types';
2
2
  export declare const useTexts: (defaultTexts?: Partial<Texts>) => Texts;