@bothub-chat/ui 2.56.0 → 2.57.1-develop-8da3792f-a74c-4232-9d38-ca27dc6afede
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -23
- package/dist/components/accordion/styled.js +2 -2
- package/dist/components/adaptive-button/styled.d.ts +1 -0
- package/dist/components/avatar/index.js +1 -1
- package/dist/components/bookmark/card/styled.d.ts +3 -0
- package/dist/components/bookmark/list/styled.d.ts +1 -0
- package/dist/components/bookmark/styled.d.ts +1 -0
- package/dist/components/button/index.d.ts +2 -0
- package/dist/components/button/index.js +1 -1
- package/dist/components/checkbox/index.d.ts +0 -2
- package/dist/components/checkbox/index.js +1 -1
- package/dist/components/checkbox/styled.d.ts +9 -4
- package/dist/components/checkbox/styled.js +3 -6
- package/dist/components/chip/styled.d.ts +1 -0
- package/dist/components/color-picker/menu/styled.d.ts +1 -0
- package/dist/components/color-picker/menu/styled.js +1 -1
- package/dist/components/datepicker/types.d.ts +1 -1
- package/dist/components/datepicker/ui/calendar/styled.d.ts +2 -0
- package/dist/components/datepicker/ui/datepicker.js +1 -1
- package/dist/components/description/card/styled.d.ts +1 -0
- package/dist/components/developer-key/list/styled.d.ts +1 -0
- package/dist/components/dropzone-field/styled.js +1 -1
- package/dist/components/file-field/index.js +1 -1
- package/dist/components/file-field/styled.d.ts +1 -0
- package/dist/components/file-icon/index.js +1 -1
- package/dist/components/footer/index.js +1 -1
- package/dist/components/footer/mobile/index.js +1 -1
- package/dist/components/header/index.js +1 -1
- package/dist/components/header/menu/toggle-button/styled.d.ts +1 -0
- package/dist/components/header/menu-nav/config.js +1 -1
- package/dist/components/header/menu-nav/index.js +1 -1
- package/dist/components/header/menu-nav/styled.js +2 -2
- package/dist/components/header/multi-level-menu/multi-level-menu-accordion/ui/styled.js +1 -1
- package/dist/components/header/multi-level-menu/multi-level-menu-first-level/ui/styled.js +1 -1
- package/dist/components/header/multi-level-menu/styled.js +1 -1
- package/dist/components/header/styled.js +1 -1
- package/dist/components/header/user/button/styled.d.ts +1 -0
- package/dist/components/image-fullscreen/index.js +1 -1
- package/dist/components/image-fullscreen/styled.d.ts +2 -0
- package/dist/components/input-message/index.d.ts +7 -5
- package/dist/components/input-message/index.js +1 -1
- package/dist/components/input-message/styled.d.ts +4010 -5710
- package/dist/components/input-message/styled.js +6 -26
- package/dist/components/input-message/types.d.ts +0 -10
- package/dist/components/input-message/utils.d.ts +0 -1
- package/dist/components/input-message/utils.js +1 -1
- package/dist/components/lang-switcher/styled.d.ts +1 -0
- package/dist/components/lang-switcher/styled.js +1 -1
- package/dist/components/loader/index.js +1 -1
- package/dist/components/main/index.js +1 -1
- package/dist/components/menu-dropdown/styled.d.ts +1 -0
- package/dist/components/message/actions/index.d.ts +3 -1
- package/dist/components/message/actions/index.js +1 -1
- package/dist/components/message/actions/styled.js +1 -1
- package/dist/components/message/button/styled.d.ts +1 -0
- package/dist/components/message/components/code/multiline/content/highlight.d.ts +3 -1
- package/dist/components/message/components/code/multiline/content/highlight.js +1 -1
- package/dist/components/message/components/code/multiline/content/index.js +1 -1
- package/dist/components/message/components/code/multiline/content/styled.d.ts +1 -1
- package/dist/components/message/components/code/multiline/content/styled.js +1 -1
- package/dist/components/message/components/code/multiline/copy/styled.d.ts +1 -0
- package/dist/components/message/components/image/button/styled.d.ts +1 -0
- package/dist/components/message/components/pre/styled.js +1 -1
- package/dist/components/message/copy/styled.d.ts +1 -0
- package/dist/components/message/file/index.js +1 -1
- package/dist/components/message/file/styled.d.ts +3 -3
- package/dist/components/message/file/styled.js +1 -1
- package/dist/components/message/index.d.ts +0 -1
- package/dist/components/message/index.js +1 -1
- package/dist/components/message/list/index.js +1 -1
- package/dist/components/message/list/styled.js +4 -4
- package/dist/components/message/markdown/index.js +1 -1
- package/dist/components/message/reasoning-block/index.js +1 -1
- package/dist/components/message/scroll-button/styled.js +1 -1
- package/dist/components/message/search-results/index.js +1 -1
- package/dist/components/message/styled.d.ts +6 -0
- package/dist/components/message/styled.js +1 -1
- package/dist/components/message/timestamp/styled.js +1 -1
- package/dist/components/message/video/index.js +1 -1
- package/dist/components/message/video/styled.d.ts +1 -0
- package/dist/components/message/voice/index.js +1 -1
- package/dist/components/message/voice/styled.d.ts +2 -1
- package/dist/components/message/voice/styled.js +2 -2
- package/dist/components/notification/styled.d.ts +1 -0
- package/dist/components/pagination/paginator.d.ts +1 -1
- package/dist/components/pagination/paginator.js +1 -1
- package/dist/components/pagination/styled.d.ts +0 -972
- package/dist/components/pagination/styled.js +5 -5
- package/dist/components/pagination/types.d.ts +0 -1
- package/dist/components/portal/styled.js +1 -1
- package/dist/components/preset/card/styled.d.ts +4 -0
- package/dist/components/referral/card/styled.d.ts +1 -0
- package/dist/components/referral/list/styled.d.ts +1 -0
- package/dist/components/scrollable-tabs/styled.js +1 -1
- package/dist/components/scrollbar/index.d.ts +1 -0
- package/dist/components/scrollbar/index.js +1 -1
- package/dist/components/select-field/index.d.ts +1 -2
- package/dist/components/select-field/index.js +1 -1
- package/dist/components/select-field/select-modal/filterData.js +1 -1
- package/dist/components/select-field/select-modal/index.d.ts +2 -3
- package/dist/components/select-field/select-modal/index.js +1 -1
- package/dist/components/select-field/select-modal/option/collapse/index.d.ts +1 -1
- package/dist/components/select-field/select-modal/option/list/index.d.ts +10 -1
- package/dist/components/select-field/select-modal/option/list/index.js +1 -1
- package/dist/components/select-field/select-modal/option/list/styled.d.ts +0 -1432
- package/dist/components/select-field/select-modal/option/list/styled.js +1 -1
- package/dist/components/select-field/select-modal/option/select-field-option/styled.js +1 -1
- package/dist/components/select-field/styled.d.ts +1 -486
- package/dist/components/select-field/styled.js +15 -15
- package/dist/components/select-field/types.d.ts +1 -5
- package/dist/components/select-field/useSelectField.js +1 -1
- package/dist/components/sidebar/buttons/index.d.ts +1835 -6
- package/dist/components/sidebar/buttons/index.js +26 -1
- package/dist/components/sidebar/chat/index.d.ts +1 -13
- package/dist/components/sidebar/chat/index.js +1 -1
- package/dist/components/sidebar/chat/skeleton.d.ts +1 -0
- package/dist/components/sidebar/chat/skeleton.js +1 -0
- package/dist/components/sidebar/chat/styled.d.ts +399 -3836
- package/dist/components/sidebar/chat/styled.js +3 -77
- package/dist/components/sidebar/context.d.ts +2 -3
- package/dist/components/sidebar/context.js +1 -1
- package/dist/components/sidebar/dropdown/context.js +1 -1
- package/dist/components/sidebar/dropdown/index.d.ts +2 -3
- package/dist/components/sidebar/dropdown/index.js +1 -1
- package/dist/components/sidebar/dropdown/item/index.d.ts +4 -5
- package/dist/components/sidebar/dropdown/item/index.js +1 -1
- package/dist/components/sidebar/dropdown/styled.d.ts +2640 -1121
- package/dist/components/sidebar/dropdown/styled.js +1 -1
- package/dist/components/sidebar/group/index.d.ts +6 -12
- package/dist/components/sidebar/group/index.js +1 -1
- package/dist/components/sidebar/group/skeleton.d.ts +2 -0
- package/dist/components/sidebar/group/skeleton.js +1 -0
- package/dist/components/sidebar/group/styled.d.ts +1288 -2505
- package/dist/components/sidebar/group/styled.js +1 -32
- package/dist/components/sidebar/index.d.ts +7 -12
- package/dist/components/sidebar/index.js +1 -1
- package/dist/components/sidebar/lang/index.d.ts +0 -1
- package/dist/components/sidebar/lang/styled.js +1 -1
- package/dist/components/sidebar/list/index.d.ts +4 -0
- package/dist/components/sidebar/list/index.js +1 -0
- package/dist/components/sidebar/list/styled.d.ts +4 -0
- package/dist/components/sidebar/list/styled.js +1 -0
- package/dist/components/sidebar/menu/context.d.ts +9 -7
- package/dist/components/sidebar/menu/context.js +1 -1
- package/dist/components/sidebar/menu/index.d.ts +4 -8
- package/dist/components/sidebar/menu/index.js +1 -1
- package/dist/components/sidebar/menu/item/index.d.ts +9 -0
- package/dist/components/sidebar/menu/item/index.js +1 -0
- package/dist/components/sidebar/menu/item/tooltip.d.ts +6 -0
- package/dist/components/sidebar/menu/item/tooltip.js +1 -0
- package/dist/components/sidebar/menu/styled.d.ts +1311 -836
- package/dist/components/sidebar/menu/styled.js +1 -36
- package/dist/components/sidebar/styled.d.ts +37 -3795
- package/dist/components/sidebar/styled.js +1 -225
- package/dist/components/sidebar/toggle-button/index.js +1 -1
- package/dist/components/sidebar/toggle-button/styled.d.ts +304 -1
- package/dist/components/sidebar/toggle-button/styled.js +2 -2
- package/dist/components/sidebar/user-info/avatar/index.js +1 -1
- package/dist/components/sidebar/user-info/index.d.ts +2 -3
- package/dist/components/sidebar/user-info/index.js +1 -1
- package/dist/components/sidebar/user-info/skeleton.d.ts +2 -0
- package/dist/components/sidebar/user-info/skeleton.js +1 -0
- package/dist/components/sidebar/user-info/styled.d.ts +17 -23
- package/dist/components/sidebar/user-info/styled.js +1 -95
- package/dist/components/slider/index.d.ts +2 -3
- package/dist/components/slider/index.js +1 -1
- package/dist/components/slider/useSlider.d.ts +1 -4
- package/dist/components/slider/useSlider.js +1 -1
- package/dist/components/stepper/styled.js +1 -1
- package/dist/components/tariff/card/styled.d.ts +1 -0
- package/dist/components/tariff/card/styled.js +3 -3
- package/dist/components/text-field/index.js +1 -1
- package/dist/components/text-field/styled.d.ts +1 -0
- package/dist/components/theme-schemes/theme-button/styled.d.ts +2 -0
- package/dist/components/tooltip/styled.js +1 -1
- package/dist/components/uploaded-file/index.js +1 -1
- package/dist/components/uploaded-file/styled.d.ts +1 -0
- package/dist/components/uploaded-file/styled.js +1 -1
- package/dist/icons/chats/index.js +1 -1
- package/dist/icons/check-small/index.js +1 -1
- package/dist/icons/index.d.ts +1 -7
- package/dist/icons/pause-button/index.js +1 -1
- package/dist/icons/play-button/index.js +1 -1
- package/dist/icons/simple-gear/index.js +1 -1
- package/dist/index.js +1 -1
- package/dist/theme/index.d.ts +1 -1
- package/dist/theme/themes.js +1 -1
- package/dist/utils/index.d.ts +0 -2
- package/package.json +71 -71
- package/dist/components/input-message/input-files.d.ts +0 -7
- package/dist/components/input-message/input-files.js +0 -1
- package/dist/components/input-message/use-files.d.ts +0 -19
- package/dist/components/input-message/use-files.js +0 -1
- package/dist/components/input-message/use-input.d.ts +0 -31
- package/dist/components/input-message/use-input.js +0 -1
- package/dist/components/input-message/use-voice.d.ts +0 -17
- package/dist/components/input-message/use-voice.js +0 -1
- package/dist/components/select-field/select-modal/option/checkbox-group/index.d.ts +0 -14
- package/dist/components/select-field/select-modal/option/checkbox-group/index.js +0 -1
- package/dist/components/select-field/select-modal/option/checkbox-group/styled.d.ts +0 -2779
- package/dist/components/select-field/select-modal/option/checkbox-group/styled.js +0 -14
- package/dist/components/select-field/select-modal/option/types.d.ts +0 -13
- package/dist/components/sidebar/buttons/create-chat/index.d.ts +0 -4
- package/dist/components/sidebar/buttons/create-chat/index.js +0 -1
- package/dist/components/sidebar/buttons/styled.d.ts +0 -1526
- package/dist/components/sidebar/buttons/styled.js +0 -31
- package/dist/components/sidebar/dropdown/item/styled.d.ts +0 -584
- package/dist/components/sidebar/dropdown/item/styled.js +0 -1
- package/dist/components/sidebar/empty/index.d.ts +0 -3
- package/dist/components/sidebar/empty/index.js +0 -1
- package/dist/components/sidebar/empty/styled.d.ts +0 -1063
- package/dist/components/sidebar/empty/styled.js +0 -3
- package/dist/components/sidebar/group-empty/index.d.ts +0 -5
- package/dist/components/sidebar/group-empty/index.js +0 -1
- package/dist/components/sidebar/group-empty/styled.d.ts +0 -1060
- package/dist/components/sidebar/group-empty/styled.js +0 -9
- package/dist/components/sidebar/menu/nav/index.d.ts +0 -1
- package/dist/components/sidebar/menu/nav/link/index.d.ts +0 -9
- package/dist/components/sidebar/menu/nav/link/index.js +0 -1
- package/dist/components/sidebar/menu/nav/link/styled.d.ts +0 -299
- package/dist/components/sidebar/menu/nav/link/styled.js +0 -39
- package/dist/components/sidebar/user-info/context.d.ts +0 -8
- package/dist/components/sidebar/user-info/context.js +0 -1
- package/dist/components/sidebar/user-info/skeleton/index.d.ts +0 -1
- package/dist/components/sidebar/user-info/skeleton/index.js +0 -1
- package/dist/components/sidebar/user-info/skeleton/styled.d.ts +0 -290
- package/dist/components/sidebar/user-info/skeleton/styled.js +0 -1
- package/dist/icons/bulb/index.d.ts +0 -1
- package/dist/icons/bulb/index.js +0 -1
- package/dist/icons/double-image/index.d.ts +0 -1
- package/dist/icons/double-image/index.js +0 -1
- package/dist/icons/history/index.d.ts +0 -1
- package/dist/icons/history/index.js +0 -1
- package/dist/icons/money-plus/index.d.ts +0 -1
- package/dist/icons/money-plus/index.js +0 -1
- package/dist/icons/money-stack/index.d.ts +0 -1
- package/dist/icons/money-stack/index.js +0 -1
- package/dist/icons/sort-numeric-bottom/index.d.ts +0 -1
- package/dist/icons/sort-numeric-bottom/index.js +0 -1
- package/dist/icons/sort-numeric-top/index.d.ts +0 -1
- package/dist/icons/sort-numeric-top/index.js +0 -1
- package/dist/utils/audio/index.d.ts +0 -1
- /package/dist/{utils/formatSeconds.d.ts → components/message/voice/utils/index.d.ts} +0 -0
- /package/dist/{utils/formatSeconds.js → components/message/voice/utils/index.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useRef as e,useState as t,useCallback as l,useEffect as n}from"react";import{isMobileDevice as r}from"./utils.js";const s=({initialMessage:s,disabled:a,autoFocus:o,altKeyDefaultValue:u,onChange:c,onSendMessage:i,onTextAreaChange:h,onSetAlternativeKeyValue:f,onFocus:y,onBlur:d})=>{var v;const g=e(null),p=e(null),[K,m]=t(null!==(v=!a&&o)&&void 0!==v&&v),[b,x]=t("calc(var(--bothub-scale, 1) * 22px)"),[E,k]="string"==typeof s?[s,c]:t(""),[A,S]=t(null!=u&&u),[M,w]=t(!1),C=l(()=>{S(!1),null==f||f(!1),w(!1)},[]),D=l(()=>{S(!0),null==f||f(!0),w(!1)},[]),F=l(e=>{m(!0),null==y||y(e)},[y]),$=l(e=>{m(!1),null==d||d(e)},[d]),B=l(()=>{var e;a||null===(e=g.current)||void 0===e||e.focus()},[a,o]),H=l(e=>{null==k||k(e.target.value),null==h||h(e)},[k,h]);return n(()=>{const e=g.current;if(!e||a)return;const t=!a&&!!o;m(t),t?e.focus():document.activeElement===e&&e.blur()},[a,o]),n(()=>{const e=g.current;if(null===e)return;const t=e=>{e.stopPropagation();if(r()&&"Enter"===e.key)return;const t=A?"enter":"ctrl/shift+enter";let l="";if("Enter"===e.key&&(e.shiftKey||e.ctrlKey))l="ctrl/shift+enter";else{if("Enter"!==e.key)return;l="enter"}if(K&&"Enter"===e.key){if(l===t&&e.ctrlKey){e.preventDefault();const t=g.current;if(!t)return;const l=t.value,r=t.selectionStart,a=l.slice(0,r),o=l.slice(r);null==k||k(`${a}\n${o}`),n=t,s=r+1,setTimeout(()=>{n.selectionStart=s,n.selectionEnd=s},1)}t!==l&&""!==l&&(e.preventDefault(),null==i||i(),x("calc(var(--bothub-scale, 1) * 22px)"))}var n,s};return e.addEventListener("keydown",t),()=>{e.removeEventListener("keydown",t)}},[K,E,i,k]),n(()=>{const e=g.current;null!==e&&(e.style.height="calc(var(--bothub-scale, 1) * 22px)",e.style.height=`${e.scrollHeight}px`,x(`${e.scrollHeight}px`))},[E,o]),{textareaRef:g,altKeyButtonRef:p,isFocus:K,isAltKey:A,height:b,message:E,isAltKeyModalShown:M,setHeight:x,setMessage:k,setAltKeyModalShown:w,handleDefaultKey:C,handleAlternativeKey:D,handleFocus:F,handleBlur:$,handleClick:B,handleChange:H}};export{s as useInput};
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { IInputMessageVoiceFile } from './types';
|
|
2
|
-
interface UseVoiceProps {
|
|
3
|
-
onVoiceFilesChange?: (files: IInputMessageVoiceFile[]) => unknown;
|
|
4
|
-
}
|
|
5
|
-
export declare const useVoice: ({ onVoiceFilesChange }: UseVoiceProps) => {
|
|
6
|
-
voiceFiles: IInputMessageVoiceFile[];
|
|
7
|
-
setVoiceFiles: import("react").Dispatch<import("react").SetStateAction<IInputMessageVoiceFile[]>>;
|
|
8
|
-
isVoiceRecording: boolean;
|
|
9
|
-
isVoicePaused: boolean;
|
|
10
|
-
voiceRecordingTime: number | null;
|
|
11
|
-
handleVoiceRecordStart: import("react").ReactEventHandler<Element>;
|
|
12
|
-
handleVoiceRecordEnd: () => Promise<void>;
|
|
13
|
-
handleVoicePause: () => void;
|
|
14
|
-
handleVoiceResume: () => void;
|
|
15
|
-
handleVoiceFileDelete: (file: IInputMessageVoiceFile) => void;
|
|
16
|
-
};
|
|
17
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{__awaiter as e}from"tslib";import{useRef as r,useState as t,useCallback as n,useEffect as o}from"react";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import{getSupportedAudioMimeType as i}from"../../utils/getSupportedAudioMimeType.js";import"../../utils/colors/calculateGrayScale.js";import"../../utils/colors/calculateAccentColors.js";import{getWaveData as c}from"../../utils/audio/getWaveData.js";const a=({onVoiceFilesChange:a})=>{const u=r(null),l=r(null),s=r([]),d=r(null),m=r(!1),[v,p]=t([]),[f,w]=t(!1),[g,V]=t(!1),[R,b]=t(null),h=n(r=>e(void 0,void 0,void 0,function*(){if(f)return;m.current=!0,r.stopPropagation();const e=yield navigator.mediaDevices.getUserMedia({audio:!0}),t=new MediaRecorder(e,{mimeType:i()});m.current&&(t.start(1e3),u.current=t,l.current=e,d.current=window.setInterval(()=>{b(e=>(null!=e?e:0)+.1)},100),w(!0),b(0),V(!1))}),[m.current,s.current,f]),y=n(()=>{const e=u.current,r=l.current,t=d.current;if(f&&e&&r&&t){e.stop();for(const e of r.getTracks())e.stop();window.clearInterval(t)}},[f,u.current,l.current,d.current]),L=n(()=>e(void 0,void 0,void 0,function*(){m.current=!1,f&&y()}),[f,y]),j=n(()=>{const e=u.current,r=d.current;f&&e&&r&&(e.pause(),window.clearInterval(r),V(!0))},[f]),D=n(()=>{const e=u.current;f&&e&&(e.resume(),d.current=window.setInterval(()=>{b(e=>(null!=e?e:0)+.1)},100),V(!1))},[f,b]),E=n(e=>{p(v.filter(r=>r.src!==e.src))},[v,p]);return o(()=>{const r=u.current,t=e=>{e.data.size>0&&s.current.push(e.data)},n=()=>e(void 0,void 0,void 0,function*(){const e=new Blob(s.current,{type:i()}),{waveData:r,duration:t}=yield c(e),n={src:URL.createObjectURL(e),duration:t,blob:e,waveData:r};p([...v,n]),u.current=null,l.current=null,s.current=[],d.current=null,w(!1),b(null)});return r&&(r.addEventListener("dataavailable",t),r.addEventListener("stop",n)),()=>{r&&(r.removeEventListener("dataavailable",t),r.removeEventListener("stop",n)),y()}},[u.current]),o(()=>{null==a||a(v)},[v]),{voiceFiles:v,setVoiceFiles:p,isVoiceRecording:f,isVoicePaused:g,voiceRecordingTime:R,handleVoiceRecordStart:h,handleVoiceRecordEnd:L,handleVoicePause:j,handleVoiceResume:D,handleVoiceFileDelete:E}};export{a as useVoice};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { SelectFieldDataItem, SelectFieldGroupCheckboxClickEventHandler, SelectFieldSize } from '@/ui/components/select-field';
|
|
3
|
-
import { SelectFieldOptionClickEventHandler, SelectFieldOptionsProps } from '../types';
|
|
4
|
-
export type SelectFieldCheckboxGroupOptionProps = {
|
|
5
|
-
value: SelectFieldDataItem | SelectFieldDataItem[] | null;
|
|
6
|
-
size: SelectFieldSize;
|
|
7
|
-
item: SelectFieldDataItem;
|
|
8
|
-
data: SelectFieldDataItem[];
|
|
9
|
-
onGroupCheckboxClick?: SelectFieldGroupCheckboxClickEventHandler;
|
|
10
|
-
onOptionClick: SelectFieldOptionClickEventHandler | undefined;
|
|
11
|
-
icon?: React.ReactNode;
|
|
12
|
-
SelectFieldOptions: React.FC<SelectFieldOptionsProps>;
|
|
13
|
-
};
|
|
14
|
-
export declare const SelectFieldCheckboxGroupOption: ({ item, value, size, data, onOptionClick, onGroupCheckboxClick, icon, SelectFieldOptions, }: SelectFieldCheckboxGroupOptionProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useState as o,useLayoutEffect as i}from"react";import"tslib";import{IconProvider as n}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{Checkbox as r}from"../../../../checkbox/index.js";import{SelectFieldCheckboxGroupOptionStyled as l,SelectFieldCheckboxGroupOptionHead as c,SelectFieldCheckboxGroupOptionHeadLeftSide as s,SelectFieldCheckboxGroupOptionHeadTextWrapper as d,SelectFieldCheckboxGroupOptionHeadText as p,SelectFieldCheckboxGroupOptionHeadCounter as m,SelectFieldCheckboxGroupOptionHeadRightSide as a,SelectFieldCheckboxGroupOptionArrow as h,SelectFieldCheckboxGroupOptionContent as f,ShowMoreButton as g}from"./styled.js";import{useTheme as y}from"../../../../../theme/hook.js";const k=({item:k,value:u,size:j,data:b,onOptionClick:x,onGroupCheckboxClick:v,icon:C,SelectFieldOptions:w})=>{var z,O;const I=y(),[F,Z]=o(!1),[$,B]=o("string"!=typeof k&&(null!==(z=k.open)&&void 0!==z&&z));let G;G="string"!=typeof k&&!!k.disabled;const P="string"!=typeof k?k.open:void 0;i(()=>{"string"!=typeof k&&B(Boolean(k.open))},[P]);const S="string"==typeof k?k:null!==(O=k.label)&&void 0!==O?O:k.value,q=b.length>5,A=F?b:b.slice(0,5),D=()=>{if(!b||0===b.length)return null;const e=b.filter(e=>"string"!=typeof e),t=e.filter(e=>"selected"in e&&!0===e.selected).length,o=e.length;return 0===t?null:t===o&&o>0?"все":t},E="string"!=typeof k&&"selected"in k&&k.selected,H="string"!=typeof k&&"checkedIcon"in k&&k.checkedIcon;return e(l,{children:[e(c,Object.assign({$disabled:G},!G&&{onClick:()=>{B(e=>!e)}},{children:[e(s,{children:["object"==typeof k&&k.icon&&t(n,{size:16,fill:I.colors.base.white,children:k.icon}),e(d,{children:[t(p,{children:S}),t(m,{children:null!==D()&&`(${D()})`})]})]}),e(a,{children:[C||t(h,{style:{transform:$?"rotateZ(180deg)":"rotateZ(0deg)"}}),t("div",{onClick:e=>{e.stopPropagation(),null==v||v(k)},children:t(r,{displayFlex:!0,checkedIcon:H,checked:E,size:16})})]})]})),$&&e(f,{children:[t(w,{value:u,data:A,size:j,onOptionClick:x}),q&&t(g,{onClick:()=>{Z(e=>!e)},children:F?"Скрыть ":"Показать "})]})]})};export{k as SelectFieldCheckboxGroupOption};
|