UNPKG

@chief-editor/ui

Version:

UI Component for chief editor

1 lines 1.57 kB
var __assign=this&&this.__assign||function(){return(__assign=Object.assign||function(e){for(var t,r=1,s=arguments.length;r<s;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},__rest=this&&this.__rest||function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(e);n<s.length;n++)t.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(e,s[n])&&(r[s[n]]=e[s[n]])}return r};import{RcOptionGroup,useSelect}from"@rc-hooks/select";import{classnames,guid}from"@co-hooks/util";import React,{useEffect,useMemo,useState}from"react";import{usePrefixCls}from"../../hooks";export function OptionGroup(e){var t=e.children,r=e.title,s=e.renderTitle,n=e.className,o=e.style,i=void 0===o?{}:o,a=__rest(e,["children","title","renderTitle","className","style"]),c=useSelect(),l=useState(!0),u=l[0],p=l[1],f=useMemo((function(){return guid()}),[]),m=classnames(usePrefixCls("select-option-group"),n),y=usePrefixCls("select-option-group-title");return useEffect((function(){var e=function(e){p((function(t){return!(!e[f]||t)||!(!e[f]&&t)&&t}))};return c.addListener("search-query",e),function(){c.removeListener("search-query",e)}}),[]),React.createElement(RcOptionGroup,{title:r,groupId:f},React.createElement("div",__assign({},a,{className:m,style:__assign(__assign({},i),{display:u?void 0:"none"})}),React.createElement("div",{className:y},s?s(r):r),t))}