Untitled

 avatar
unknown
plain_text
4 months ago
1.5 kB
5
Indexable
/**
 * @license
 * Copyright (c) ECS FIN. All rights reserved.
 *
 * Unauthorized copying or reproduction of this file, in any form,
 * including file content and design, is strictly prohibited. This source code is
 * confidential and proprietary to ECS FIN.
 */

import { useState } from "react";
import { useRouter } from "next/router";

function usePaymentsListMenu(defaultMenu, defaultSubMenu, setPageNo, menus) {
  const router = useRouter();

  const [selectedMenu, setSelectedMenu] = useState(defaultMenu);
  const [selectedSubMenu, setSelectedSubMenu] = useState(defaultSubMenu);
 

  const getMenuType = ( menuKey, subMenuKey) => {
   
    const menu = menus?.find((item) => item.key === menuKey);
    const subMenu = menu.subMenus?.find((item) => item.key === subMenuKey);

    return subMenu.type || "transactions";
  };
  const [selectedType, setSelectedType] = useState(getMenuType(defaultMenu, defaultSubMenu));
  const onMenuChange = (menu, subMenu) => {
    const type = getMenuType(menu, subMenu);
    setSelectedType(type??transactions)
    setSelectedMenu(menu);
    setSelectedSubMenu(subMenu || "");
    setPageNo(0);

    router.push({
      pathname: router.pathname,
      query: {
        ...router.query,
        menu: menu,
        subMenu: subMenu,
        // type: type || "transactions",
      },
    });
  };

  return {
    selectedMenu,
    selectedSubMenu,
    onMenuChange,
    selectedType
  };
}

export default usePaymentsListMenu;
Editor is loading...
Leave a Comment