@cashub/utils 1.2.0 → 1.3.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/array/index.js CHANGED
@@ -9,5 +9,12 @@ Object.defineProperty(exports, "generateRange", {
9
9
  return _generateRange.default;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "moveItemsAfter", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _moveItemsAfter.default;
16
+ }
17
+ });
12
18
  var _generateRange = _interopRequireDefault(require("./generateRange"));
19
+ var _moveItemsAfter = _interopRequireDefault(require("./moveItemsAfter"));
13
20
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const moveItemsAfter = (arr, targetItem, itemsToMove) => {
8
+ if (!arr.includes(targetItem)) {
9
+ return;
10
+ }
11
+ const validItems = itemsToMove.filter(item => {
12
+ return arr.includes(item);
13
+ });
14
+ if (validItems.length === 0) {
15
+ return;
16
+ }
17
+
18
+ // Remove items that want to move
19
+ const remaining = arr.filter(item => {
20
+ return !validItems.includes(item);
21
+ });
22
+ const targetIndex = remaining.indexOf(targetItem);
23
+
24
+ // move items to specific position
25
+ const result = [...remaining.slice(0, targetIndex + 1), ...validItems, ...remaining.slice(targetIndex + 1)];
26
+ return result;
27
+ };
28
+ var _default = exports.default = moveItemsAfter;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cashub/utils",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "private": false,
5
5
  "author": "CasHUB Team",
6
6
  "description": "CasHUB utils library",