import React from 'react'; import { SettingsContext } from '../../contexts/SettingsContext'; import Header from './Header'; import RoomAvatar from '../avatar/RoomAvatar'; import ToolBox from '../../views/room/Header/ToolBox'; import { ToolboxProvider } from '../../views/room/providers/ToolboxProvider'; import { addAction } from '../../views/room/lib/Toolbox'; import { useRoomIcon } from '../../hooks/useRoomIcon'; export default { title: 'Chat Header', component: Header, }; const room = { t: 'c', name: 'general general general general general general general general general general general general general general general general general general general', _id: 'GENERAL', encrypted: true, autoTranslate: true, autoTranslateLanguage: 'pt-BR', }; const settings = { Favorite_Rooms: true, AutoTranslate_Enabled: true, E2E_Enable: true, }; const settingContextValue = { hasPrivateAccess: true, isLoading: false, querySetting: (setting) => ({ getCurrentValue: () => settings[setting], subscribe: () => () => undefined, }), querySettings: () => ({ getCurrentValue: () => [], subscribe: () => () => undefined, }), dispatch: async () => undefined, }; export const ChatHeader = () => { const icon = useRoomIcon(room); const avatar = ; return
{avatar} { icon && } {room.name} {room.name}
; }; const toolboxRoom = { ...room, msgs: 2, u: { username: 'rocket.cat' }, usersCount: 2, }; // const renderWithBadge = createHeaderActionRenderer(1); // const renderWithRedBadge = createHeaderActionRenderer(2); // const renderWithOrangeBadge = createHeaderActionRenderer(99); const renderWithBadge = (props, index) => 1 ; const renderWithRedBadge = (props, index) => 2 ; const renderWithOrangeBadge = (props, index) => 99 ; addAction('render-action-example-badge', { groups: ['channel'], id: 'render-action-example', title: 'Example', icon: 'phone', template: 'b', order: 0, renderAction: renderWithBadge, }); addAction('render-action-example-badge-warning', { groups: ['channel'], id: 'render-action-example', title: 'Example', icon: 'thread', template: 'a', order: 1, renderAction: renderWithOrangeBadge, }); addAction('render-action-example-badge-danger', { groups: ['channel'], id: 'render-action-example', title: 'Example', icon: 'discussion', template: 'c', order: 2, renderAction: renderWithRedBadge, }); export const WithToolboxContext = () => { const icon = useRoomIcon(room); const avatar = ; return
{avatar} { icon && } {room.name} {room.name}
; };