UNPKG

sp-image-editor

Version:

React component version of filerobot image editor (FIE).

1 lines 1.15 kB
import React,{useCallback,useMemo}from"react";import{DrawerItem}from"@scaleflex/ui/core/drawer";import{useStore}from"../../hooks";import{SELECT_TAB}from"../../actions";import TabItem from"./TabItem";import{AVAILABLE_TABS}from"./Tabs.constants";var Tabs=function(a){var b=a.toggleMainMenu,c=a.isDrawer,d=useStore(),e=d.t,f=d.tabId,g=void 0===f?null:f,h=d.dispatch,i=d.config,j=i.defaultTabId,k=i.tabsIds,l=i.useCloudimage,m=useCallback(function(a){h({type:SELECT_TAB,payload:{tabId:a}}),b(!1)},[]),n=useMemo(function(){var a=[];return 0<Object.keys(k).length?AVAILABLE_TABS.forEach(function(b){var c=k.indexOf(b.id);-1!==c&&(a[c]=b)}):a=AVAILABLE_TABS,(0<a.length?a:AVAILABLE_TABS).filter(function(a){var b=a.hideFn;return!b||!b({useCloudimage:l})})},[k]);if(1===n.length)return null;var o=function(a){var b=a.id,c=a.labelKey,d=a.icon;return React.createElement(TabItem,{key:b,id:b,label:e(c),Icon:d,isSelected:(g||j)===b,onClick:m})};return React.createElement(React.Fragment,null,n.map(function(a){return c?React.createElement(DrawerItem,{key:a.id},o(a)):o(a)}))};Tabs.defaultProps={toggleMainMenu:function(){},isDrawer:!1};export default Tabs;