@chief-editor/ui
Version:
UI Component for chief editor
1 lines • 1.34 kB
JavaScript
var __assign=this&&this.__assign||function(){return(__assign=Object.assign||function(e){for(var t,r=1,a=arguments.length;r<a;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},__rest=this&&this.__rest||function(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(a=Object.getOwnPropertySymbols(e);o<a.length;o++)t.indexOf(a[o])<0&&Object.prototype.propertyIsEnumerable.call(e,a[o])&&(r[a[o]]=e[a[o]])}return r};import React from"react";import{classnames}from"@co-hooks/util";import{useRefCallback}from"@rc-hooks/use";import{usePrefixCls}from"../../hooks/usePrefixCls";import{SidebarTabItem}from"./SidebarTabItem";export function SidebarTab(e){var t=e.tabs,r=e.type,a=void 0===r?"icon":r,o=e.activeTab,i=e.onActiveTabChange,n=e.className,s=__rest(e,["tabs","type","activeTab","onActiveTabChange","className"]),c=useRefCallback(i),l=classnames(usePrefixCls("sidebar-tab",{type:a}),n);return React.createElement("div",__assign({},s,{className:l}),t.map((function(e){var t=e.id,r=e.icon,i=e.title,n=t===o;return React.createElement(SidebarTabItem,{key:t,id:t,active:n,onClick:function(){return!n&&c(t)}},"icon"===a?"function"==typeof r?r(n):r:i)})))}