@bothub-chat/ui
Version:
Bothub UI Components
2 lines (1 loc) • 1.73 kB
JavaScript
import{__rest as t}from"tslib";import{jsxs as o,jsx as e}from"react/jsx-runtime";import{useState as i,useLayoutEffect as r}from"react";import{SelectFieldCollapseOptionStyled as s,SelectFieldCollapseOptionHead as n,SelectFieldCollapseOptionHeadSide as l,SelectFieldCollapseOptionText as c,SelectFieldCollapseIconSide as p,SelectFieldCollapseOptionArrow as m,SelectFieldCollapseOptionBody as d}from"./styled.js";import{IconProvider as a}from"../../../../icon/context.js";import"../../../../icon/styled.js";import"@react-spring/web";import"react-markdown";import"react-dom";import"../../../../portal/styled.js";import"../../../../tooltip/styled.js";import"../../../../tooltip/arrow/styled.js";import"../../../../../theme/index.js";import"../../../../tooltip/context.js";import{useTheme as f}from"../../../../../theme/hook.js";const h=h=>{var j,y,{size:g,item:b,children:z,onClick:$,icon:k}=h,u=t(h,["size","item","children","onClick","icon"]);const x=f(),[v,w]=i("string"!=typeof b&&(null!==(j=b.open)&&void 0!==j&&j));let C;C="string"!=typeof b&&!!b.disabled,r(()=>{"string"!=typeof b&&w(Boolean(b.open))},[b]);const O="string"==typeof b?b:null!==(y=b.label)&&void 0!==y?y:b.value;return o(s,Object.assign({},u,{$size:g,"data-test":O,children:[o(n,Object.assign({$disabled:C,$size:g},!C&&{onClick:()=>{w(t=>!t),$&&$(b)}},{children:[o(l,{$size:g,children:["object"==typeof b&&b.icon&&e(a,{size:"large"===g?24:16,fill:x.colors.base.white,children:b.icon}),"string"==typeof O&&O&&O.length&&e(c,{$size:g,$bold:"object"==typeof b&&b.bold,children:O}),"string"!=typeof O&&O&&O]}),e(p,{$size:g,children:k||e(m,{style:{transform:v?"rotateZ(180deg)":"rotateZ(0deg)"}})})]})),v&&e(d,{children:z})]}))};export{h as SelectFieldCollapseOption};