@synerise/ds-sortable 1.2.0 → 1.3.1

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/CHANGELOG.md CHANGED
@@ -3,48 +3,48 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- # [1.2.0](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.1.3...@synerise/ds-sortable@1.2.0) (2025-06-05)
6
+ ## [1.3.1](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.3.0...@synerise/ds-sortable@1.3.1) (2025-07-01)
7
7
 
8
+ **Note:** Version bump only for package @synerise/ds-sortable
8
9
 
9
- ### Features
10
10
 
11
- * **column-manager:** removed unnecessary features ([152d3c0](https://github.com/Synerise/synerise-design/commit/152d3c0d87449977f8c4264bb7abd278210470e9))
12
- * **filter:** change dnd lib and update ux ([f5a979e](https://github.com/Synerise/synerise-design/commit/f5a979e6c9e5d9c8251c3f57da8ce57c416dadab))
13
11
 
14
12
 
15
13
 
14
+ # [1.3.0](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.2.0...@synerise/ds-sortable@1.3.0) (2025-06-24)
16
15
 
17
16
 
18
- ## [1.1.3](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.1.2...@synerise/ds-sortable@1.1.3) (2025-05-26)
17
+ ### Features
19
18
 
20
- **Note:** Version bump only for package @synerise/ds-sortable
19
+ * **condition:** sortable lib ([8cbc3f5](https://github.com/Synerise/synerise-design/commit/8cbc3f5956ce9138f1a6b0a5eb0e7cd85bb7f4e7))
21
20
 
22
21
 
23
22
 
24
23
 
25
24
 
26
- ## [1.1.2](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.1.1...@synerise/ds-sortable@1.1.2) (2025-05-07)
25
+ # [1.2.0](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.1.3...@synerise/ds-sortable@1.2.0) (2025-06-05)
27
26
 
28
- **Note:** Version bump only for package @synerise/ds-sortable
27
+ ### Features
29
28
 
29
+ - **column-manager:** removed unnecessary features ([152d3c0](https://github.com/Synerise/synerise-design/commit/152d3c0d87449977f8c4264bb7abd278210470e9))
30
+ - **filter:** change dnd lib and update ux ([f5a979e](https://github.com/Synerise/synerise-design/commit/f5a979e6c9e5d9c8251c3f57da8ce57c416dadab))
30
31
 
32
+ ## [1.1.3](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.1.2...@synerise/ds-sortable@1.1.3) (2025-05-26)
31
33
 
34
+ **Note:** Version bump only for package @synerise/ds-sortable
32
35
 
36
+ ## [1.1.2](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.1.1...@synerise/ds-sortable@1.1.2) (2025-05-07)
33
37
 
34
- ## [1.1.1](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.1.0...@synerise/ds-sortable@1.1.1) (2025-04-24)
38
+ **Note:** Version bump only for package @synerise/ds-sortable
35
39
 
40
+ ## [1.1.1](https://github.com/Synerise/synerise-design/compare/@synerise/ds-sortable@1.1.0...@synerise/ds-sortable@1.1.1) (2025-04-24)
36
41
 
37
42
  ### Bug Fixes
38
43
 
39
- * **icon:** new mimetype icons ([f8b50d1](https://github.com/Synerise/synerise-design/commit/f8b50d16287e747c7c72e4c4aea660d02d54fe99))
40
-
41
-
42
-
43
-
44
+ - **icon:** new mimetype icons ([f8b50d1](https://github.com/Synerise/synerise-design/commit/f8b50d16287e747c7c72e4c4aea660d02d54fe99))
44
45
 
45
46
  # 1.1.0 (2025-03-31)
46
47
 
47
-
48
48
  ### Features
49
49
 
50
- * **sortable:** new component ([181e09f](https://github.com/Synerise/synerise-design/commit/181e09fab834c9964995d1abb81349a564e2c956))
50
+ - **sortable:** new component ([181e09f](https://github.com/Synerise/synerise-design/commit/181e09fab834c9964995d1abb81349a564e2c956))
package/README.md CHANGED
@@ -6,6 +6,7 @@ title: Sortable
6
6
  Sortable UI Component
7
7
 
8
8
  ## Installation
9
+
9
10
  ```
10
11
  npm i @synerise/ds-sortable
11
12
  or
@@ -13,6 +14,7 @@ yarn add @synerise/ds-sortable
13
14
  ```
14
15
 
15
16
  ## Usage
17
+
16
18
  ```
17
19
  import Sortable from '@synerise/ds-sortable'
18
20
 
@@ -27,4 +29,4 @@ import Sortable from '@synerise/ds-sortable'
27
29
  ## API
28
30
 
29
31
  | Property | Description | Type | Default |
30
- | --- | --- | --- | --- |
32
+ | -------- | ----------- | ---- | ------- |
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
- import { SortableProps, BaseItem } from './Sortable.types';
2
+ import { type BaseItem, type SortableProps } from './Sortable.types';
3
3
  export declare const Sortable: <ItemType extends BaseItem>({ items, onOrderChange, ItemComponent, axis, placeholderCss, }: SortableProps<ItemType>) => React.JSX.Element;
4
4
  export default Sortable;
package/dist/Sortable.js CHANGED
@@ -1,10 +1,10 @@
1
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, { useMemo, useState, useEffect } from 'react';
2
+ import React, { useEffect, useMemo, useState } from 'react';
3
3
  import { v4 as uuid } from 'uuid';
4
4
  import { DragOverlay } from '@dnd-kit/core';
5
5
  import { restrictToParentElement } from '@dnd-kit/modifiers';
6
- import { SortableItem } from './SortableItem';
7
6
  import { SortableContainer } from './SortableContainer';
7
+ import { SortableItem } from './SortableItem';
8
8
  export var Sortable = function Sortable(_ref) {
9
9
  var items = _ref.items,
10
10
  onOrderChange = _ref.onOrderChange,
@@ -28,6 +28,10 @@ export var Sortable = function Sortable(_ref) {
28
28
  return item.id === event.active.id;
29
29
  }));
30
30
  };
31
+ var handleOrderChange = function handleOrderChange(newOrder) {
32
+ onOrderChange == null || onOrderChange(newOrder);
33
+ setOrder(newOrder);
34
+ };
31
35
  useEffect(function () {
32
36
  setOrder(items);
33
37
  }, [items]);
@@ -36,7 +40,7 @@ export var Sortable = function Sortable(_ref) {
36
40
  items: items,
37
41
  onDragEnd: handleDragEnd,
38
42
  onDragStart: handleDragStart,
39
- onOrderChange: onOrderChange
43
+ onOrderChange: handleOrderChange
40
44
  }, order.map(function (item, index) {
41
45
  return /*#__PURE__*/React.createElement(SortableItem, {
42
46
  id: item.id,
@@ -1,5 +1,5 @@
1
- import { ThemeProps } from '@synerise/ds-core';
2
- import { Interpolation } from 'styled-components';
1
+ import { type Interpolation } from 'styled-components';
2
+ import { type ThemeProps } from '@synerise/ds-core';
3
3
  export declare const SortableItemContent: import("styled-components").StyledComponent<"div", any, {}, never>;
4
4
  export declare const SortableItemWrapper: import("styled-components").StyledComponent<"div", any, {
5
5
  isGrabbed: boolean;
@@ -1,8 +1,8 @@
1
- import type { ReactNode, ReactElement, ComponentType } from 'react';
2
- import type { DndContextProps, DraggableAttributes, DraggableSyntheticListeners } from '@dnd-kit/core';
1
+ import type { ComponentType, ReactElement, ReactNode } from 'react';
3
2
  import type { Interpolation } from 'styled-components';
4
- import type { WithHTMLAttributes } from '@synerise/ds-utils';
3
+ import type { DndContextProps, DraggableAttributes, DraggableSyntheticListeners } from '@dnd-kit/core';
5
4
  import type { ThemeProps } from '@synerise/ds-core';
5
+ import type { WithHTMLAttributes } from '@synerise/ds-utils';
6
6
  export type DragHandlePropType = DraggableAttributes & DraggableSyntheticListeners;
7
7
  export type RawBaseItem = {
8
8
  id: string | number;
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
- import { RawBaseItem, SortableContainerProps } from './Sortable.types';
2
+ import { type RawBaseItem, type SortableContainerProps } from './Sortable.types';
3
3
  export declare const SortableContainer: <ItemType extends RawBaseItem>({ items, onOrderChange, onDragStart, onDragEnd, axis, children, ...props }: SortableContainerProps<ItemType>) => React.JSX.Element;
4
4
  export default SortableContainer;
@@ -1,10 +1,10 @@
1
1
  var _excluded = ["items", "onOrderChange", "onDragStart", "onDragEnd", "axis", "children"];
2
2
  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); }
3
3
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
4
- import React, { useMemo, useState, useEffect } from 'react';
5
- import { DndContext, closestCenter, KeyboardSensor, PointerSensor, MouseSensor, useSensor, useSensors } from '@dnd-kit/core';
6
- import { arrayMove, SortableContext, sortableKeyboardCoordinates, verticalListSortingStrategy, horizontalListSortingStrategy, rectSortingStrategy } from '@dnd-kit/sortable';
7
- import { restrictToVerticalAxis, restrictToHorizontalAxis } from '@dnd-kit/modifiers';
4
+ import React, { useEffect, useMemo, useState } from 'react';
5
+ import { DndContext, KeyboardSensor, MouseSensor, PointerSensor, closestCenter, useSensor, useSensors } from '@dnd-kit/core';
6
+ import { restrictToHorizontalAxis, restrictToVerticalAxis } from '@dnd-kit/modifiers';
7
+ import { SortableContext, arrayMove, horizontalListSortingStrategy, rectSortingStrategy, sortableKeyboardCoordinates, verticalListSortingStrategy } from '@dnd-kit/sortable';
8
8
  export var SortableContainer = function SortableContainer(_ref) {
9
9
  var items = _ref.items,
10
10
  onOrderChange = _ref.onOrderChange,
@@ -23,17 +23,15 @@ export var SortableContainer = function SortableContainer(_ref) {
23
23
  var active = event.active,
24
24
  over = event.over;
25
25
  if (active.id !== (over == null ? void 0 : over.id)) {
26
- setOrder(function (oldOrder) {
27
- var oldIndex = oldOrder.findIndex(function (item) {
28
- return item.id === active.id;
29
- });
30
- var newIndex = oldOrder.findIndex(function (item) {
31
- return item.id === (over == null ? void 0 : over.id);
32
- });
33
- var updatedOrder = arrayMove(oldOrder, oldIndex, newIndex);
34
- onOrderChange && onOrderChange(updatedOrder);
35
- return updatedOrder;
26
+ var oldIndex = order.findIndex(function (item) {
27
+ return item.id === active.id;
36
28
  });
29
+ var newIndex = order.findIndex(function (item) {
30
+ return item.id === (over == null ? void 0 : over.id);
31
+ });
32
+ var updatedOrder = arrayMove(order, oldIndex, newIndex);
33
+ setOrder(updatedOrder);
34
+ onOrderChange == null || onOrderChange(updatedOrder);
37
35
  }
38
36
  onDragEnd && onDragEnd(event);
39
37
  };
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
- import { SortableItemProps, BaseItem } from './Sortable.types';
2
+ import { type BaseItem, type SortableItemProps } from './Sortable.types';
3
3
  export declare const SortableItem: <ItemType extends BaseItem>({ id, data, index, isDragged, component: Component, style, placeholderCss, ...htmlAttributes }: SortableItemProps<ItemType>) => React.JSX.Element;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
- export { useDndMonitor } from '@dnd-kit/core';
2
- export { arrayMove } from '@dnd-kit/sortable';
1
+ export { useDndMonitor, DragOverlay } from '@dnd-kit/core';
2
+ export { arrayMove, useSortable } from '@dnd-kit/sortable';
3
+ export { CSS } from '@dnd-kit/utilities';
3
4
  export { default } from './Sortable';
4
5
  export { SortableContainer } from './SortableContainer';
5
- export type { DragHandlePropType, SortableItemProps, SortableProps, BaseItem, WithIndex } from './Sortable.types';
6
+ export type { DragHandlePropType, SortableItemProps, SortableProps, BaseItem, WithIndex, } from './Sortable.types';
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
- export { useDndMonitor } from '@dnd-kit/core';
2
- export { arrayMove } from '@dnd-kit/sortable';
1
+ export { useDndMonitor, DragOverlay } from '@dnd-kit/core';
2
+ export { arrayMove, useSortable } from '@dnd-kit/sortable';
3
+ export { CSS } from '@dnd-kit/utilities';
3
4
  export { default } from './Sortable';
4
5
  export { SortableContainer } from './SortableContainer';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@synerise/ds-sortable",
3
- "version": "1.2.0",
3
+ "version": "1.3.1",
4
4
  "description": "Sortable UI Component for the Synerise Design System",
5
5
  "license": "ISC",
6
6
  "repository": "Synerise/synerise-design",
@@ -38,7 +38,7 @@
38
38
  "@dnd-kit/modifiers": "^7.0.0",
39
39
  "@dnd-kit/sortable": "^8.0.0",
40
40
  "@dnd-kit/utilities": "^3.2.2",
41
- "@synerise/ds-utils": "^1.2.0",
41
+ "@synerise/ds-utils": "^1.3.1",
42
42
  "uuid": "^8.3.2"
43
43
  },
44
44
  "peerDependencies": {
@@ -46,5 +46,5 @@
46
46
  "react": ">=16.9.0 <= 18.3.1",
47
47
  "styled-components": "^5.3.3"
48
48
  },
49
- "gitHead": "93bc81d59d20bc8f3bc80c5d56ae7f7c0838380d"
49
+ "gitHead": "4512641033ba3581a3df208143c547fcfed45895"
50
50
  }