diff options
Diffstat (limited to 'src/view/screens')
-rw-r--r-- | src/view/screens/Storybook/Buttons.tsx | 89 | ||||
-rw-r--r-- | src/view/screens/Storybook/Forms.tsx | 17 | ||||
-rw-r--r-- | src/view/screens/Storybook/Links.tsx | 46 | ||||
-rw-r--r-- | src/view/screens/Storybook/Typography.tsx | 11 |
4 files changed, 148 insertions, 15 deletions
diff --git a/src/view/screens/Storybook/Buttons.tsx b/src/view/screens/Storybook/Buttons.tsx index fbdc84eb4..320db13ff 100644 --- a/src/view/screens/Storybook/Buttons.tsx +++ b/src/view/screens/Storybook/Buttons.tsx @@ -11,6 +11,7 @@ import { } from '#/components/Button' import {H1} from '#/components/Typography' import {ArrowTopRight_Stroke2_Corner0_Rounded as ArrowTopRight} from '#/components/icons/ArrowTopRight' +import {ChevronLeft_Stroke2_Corner0_Rounded as ChevronLeft} from '#/components/icons/Chevron' import {Globe_Stroke2_Corner0_Rounded as Globe} from '#/components/icons/Globe' export function Buttons() { @@ -91,14 +92,16 @@ export function Buttons() { )} </View> </View> + </View> + <View style={[a.flex_wrap, a.gap_md, a.align_start]}> <Button variant="gradient" color="gradient_sky" size="large" label="Link out"> <ButtonText>Link out</ButtonText> - <ButtonIcon icon={ArrowTopRight} /> + <ButtonIcon icon={ArrowTopRight} position="right" /> </Button> <Button @@ -107,7 +110,15 @@ export function Buttons() { size="small" label="Link out"> <ButtonText>Link out</ButtonText> - <ButtonIcon icon={ArrowTopRight} /> + <ButtonIcon icon={ArrowTopRight} position="right" /> + </Button> + + <Button + variant="gradient" + color="gradient_sky" + size="small" + label="Link out"> + <ButtonText>Link xxxxxx</ButtonText> </Button> <Button @@ -115,8 +126,78 @@ export function Buttons() { color="gradient_sky" size="small" label="Link out"> - <ButtonIcon icon={Globe} /> - <ButtonText>See the world</ButtonText> + <ButtonIcon icon={Globe} position="left" /> + <ButtonText>Link out</ButtonText> + </Button> + </View> + + <View style={[a.flex_row, a.gap_md, a.align_start]}> + <Button + variant="solid" + color="primary" + size="large" + shape="round" + label="Link out"> + <ButtonIcon icon={ChevronLeft} /> + </Button> + <Button + variant="gradient" + color="gradient_sunset" + size="small" + shape="round" + label="Link out"> + <ButtonIcon icon={ChevronLeft} /> + </Button> + <Button + variant="outline" + color="primary" + size="large" + shape="round" + label="Link out"> + <ButtonIcon icon={ChevronLeft} /> + </Button> + <Button + variant="ghost" + color="primary" + size="small" + shape="round" + label="Link out"> + <ButtonIcon icon={ChevronLeft} /> + </Button> + </View> + + <View style={[a.flex_row, a.gap_md, a.align_start]}> + <Button + variant="solid" + color="primary" + size="large" + shape="square" + label="Link out"> + <ButtonIcon icon={ChevronLeft} /> + </Button> + <Button + variant="gradient" + color="gradient_sunset" + size="small" + shape="square" + label="Link out"> + <ButtonIcon icon={ChevronLeft} /> + </Button> + <Button + variant="outline" + color="primary" + size="large" + shape="square" + label="Link out"> + <ButtonIcon icon={ChevronLeft} /> + </Button> + <Button + variant="ghost" + color="primary" + size="small" + shape="square" + label="Link out"> + <ButtonIcon icon={ChevronLeft} /> </Button> </View> </View> diff --git a/src/view/screens/Storybook/Forms.tsx b/src/view/screens/Storybook/Forms.tsx index 9396cca67..2d5495d70 100644 --- a/src/view/screens/Storybook/Forms.tsx +++ b/src/view/screens/Storybook/Forms.tsx @@ -209,6 +209,23 @@ export function Forms() { Show </ToggleButton.Button> </ToggleButton.Group> + + <View> + <ToggleButton.Group + label="Preferences" + values={toggleGroupDValues} + onChange={setToggleGroupDValues}> + <ToggleButton.Button name="hide" label="Hide"> + Hide + </ToggleButton.Button> + <ToggleButton.Button name="warn" label="Warn"> + Warn + </ToggleButton.Button> + <ToggleButton.Button name="show" label="Show"> + Show + </ToggleButton.Button> + </ToggleButton.Group> + </View> </View> </View> ) diff --git a/src/view/screens/Storybook/Links.tsx b/src/view/screens/Storybook/Links.tsx index c3b1c0e0f..245a61a05 100644 --- a/src/view/screens/Storybook/Links.tsx +++ b/src/view/screens/Storybook/Links.tsx @@ -1,38 +1,39 @@ import React from 'react' import {View} from 'react-native' -import {atoms as a} from '#/alf' +import {useTheme, atoms as a} from '#/alf' import {ButtonText} from '#/components/Button' -import {Link} from '#/components/Link' -import {H1, H3} from '#/components/Typography' +import {InlineLink, Link} from '#/components/Link' +import {H1, H3, Text} from '#/components/Typography' export function Links() { + const t = useTheme() return ( <View style={[a.gap_md, a.align_start]}> <H1>Links</H1> <View style={[a.gap_md, a.align_start]}> - <Link + <InlineLink to="https://blueskyweb.xyz" warnOnMismatchingTextChild style={[a.text_md]}> External - </Link> - <Link to="https://blueskyweb.xyz" style={[a.text_md]}> + </InlineLink> + <InlineLink to="https://blueskyweb.xyz" style={[a.text_md]}> <H3>External with custom children</H3> - </Link> - <Link + </InlineLink> + <InlineLink to="https://blueskyweb.xyz" warnOnMismatchingTextChild style={[a.text_lg]}> https://blueskyweb.xyz - </Link> - <Link + </InlineLink> + <InlineLink to="https://bsky.app/profile/bsky.app" warnOnMismatchingTextChild style={[a.text_md]}> Internal - </Link> + </InlineLink> <Link variant="solid" @@ -42,6 +43,29 @@ export function Links() { to="https://bsky.app/profile/bsky.app"> <ButtonText>Link as a button</ButtonText> </Link> + + <Link + label="View @bsky.app's profile" + to="https://bsky.app/profile/bsky.app"> + <View + style={[ + a.flex_row, + a.align_center, + a.gap_md, + a.rounded_md, + a.p_md, + t.atoms.bg_contrast_25, + ]}> + <View + style={[ + {width: 32, height: 32}, + a.rounded_full, + t.atoms.bg_contrast_200, + ]} + /> + <Text>View @bsky.app's profile</Text> + </View> + </Link> </View> </View> ) diff --git a/src/view/screens/Storybook/Typography.tsx b/src/view/screens/Storybook/Typography.tsx index 2e1f04a66..ecd6ec888 100644 --- a/src/view/screens/Storybook/Typography.tsx +++ b/src/view/screens/Storybook/Typography.tsx @@ -3,6 +3,7 @@ import {View} from 'react-native' import {atoms as a} from '#/alf' import {Text, H1, H2, H3, H4, H5, H6, P} from '#/components/Typography' +import {RichText} from '#/components/RichText' export function Typography() { return ( @@ -25,6 +26,16 @@ export function Typography() { <Text style={[a.text_sm]}>atoms.text_sm</Text> <Text style={[a.text_xs]}>atoms.text_xs</Text> <Text style={[a.text_2xs]}>atoms.text_2xs</Text> + + <RichText + resolveFacets + value={`This is rich text. It can have mentions like @bsky.app or links like https://blueskyweb.xyz`} + /> + <RichText + resolveFacets + value={`This is rich text. It can have mentions like @bsky.app or links like https://blueskyweb.xyz`} + style={[a.text_xl]} + /> </View> ) } |