// Copyright 2021-2022 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only import React, { useState } from 'react'; import { action } from '@storybook/addon-actions'; import { text } from '@storybook/addon-knobs'; import type { Props } from './MessageBodyReadMore'; import { MessageBodyReadMore } from './MessageBodyReadMore'; import { setupI18n } from '../../util/setupI18n'; import enMessages from '../../../_locales/en/messages.json'; const i18n = setupI18n('en', enMessages); export default { title: 'Components/Conversation/MessageBodyReadMore', }; const createProps = (overrideProps: Partial = {}): Props => ({ bodyRanges: overrideProps.bodyRanges, direction: 'incoming', displayLimit: overrideProps.displayLimit, i18n, id: 'some-id', messageExpanded: action('messageExpanded'), text: text('text', overrideProps.text || ''), }); function MessageBodyReadMoreTest({ text: messageBodyText, }: { text: string; }): JSX.Element { const [displayLimit, setDisplayLimit] = useState(); return ( setDisplayLimit(newDisplayLimit)} /> ); } export function LongText100More(): JSX.Element { return ( ); } LongText100More.story = { name: 'Long text + 100 more', }; export function LotsOfCakeWithSomeCherriesOnTop(): JSX.Element { return ( ); } LotsOfCakeWithSomeCherriesOnTop.story = { name: 'Lots of cake with some cherries on top', }; export function LeafyNotBuffered(): JSX.Element { return ; } LeafyNotBuffered.story = { name: 'Leafy not buffered', }; export function Links(): JSX.Element { return ( ); } export function ExcessiveAmountsOfCake(): JSX.Element { return ; } ExcessiveAmountsOfCake.story = { name: 'Excessive amounts of cake', }; export function LongText(): JSX.Element { return ( ); } LongText.story = { name: 'Long text', };