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