Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});

const exotic_1 = require("exotic");

const persistence_1 = require("@skava/persistence");

let reOrderedProducts = [];

const isValidProduct = item => {
  reOrderedProducts.push(item.id);
  return exotic_1.isObj(item) && item.id;
};

const reArrangeProducts = (collisionProductId, currentDragId, products) => {
  const temporaryProducts = [];

  const findDrag = item => item.id === currentDragId;

  if (collisionProductId !== currentDragId && collisionProductId !== 'none') {
    products.forEach((item, index, array) => {
      if (collisionProductId === item.id) {
        const draggedItem = array.find(findDrag) || {};
        const dragItemIndex = array.findIndex(findDrag);

        if (index < dragItemIndex) {
          temporaryProducts.push(draggedItem);
          temporaryProducts.push(item);
        } else {
          temporaryProducts.push(item);
          temporaryProducts.push(draggedItem);
        }
      } else if (currentDragId !== item.id) {
        temporaryProducts.push(item);
      }
    });
    reOrderedProducts = [];
    const reArrangedProducts = temporaryProducts.filter(isValidProduct);
    persistence_1.oneStorage.set('productPosition', reOrderedProducts);
    return reArrangedProducts;
  }

  return products;
};

exports.reArrangeProducts = reArrangeProducts; //# sourceMappingURL=deps.js.map