@tamagui/demos 1.2.9 → 1.2.10
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/dist/esm/AddThemeDemo.mjs +35 -0
- package/dist/esm/AddThemeDemo.mjs.map +7 -0
- package/dist/esm/AlertDialogDemo.mjs +53 -0
- package/dist/esm/AlertDialogDemo.mjs.map +7 -0
- package/dist/esm/AnimationsDemo.mjs +89 -0
- package/dist/esm/AnimationsDemo.mjs.map +7 -0
- package/dist/esm/AnimationsEnterDemo.mjs +40 -0
- package/dist/esm/AnimationsEnterDemo.mjs.map +7 -0
- package/dist/esm/AnimationsHoverDemo.mjs +26 -0
- package/dist/esm/AnimationsHoverDemo.mjs.map +7 -0
- package/dist/esm/AnimationsPresenceDemo.mjs +62 -0
- package/dist/esm/AnimationsPresenceDemo.mjs.map +7 -0
- package/dist/esm/AnimationsTimingDemo.mjs +26 -0
- package/dist/esm/AnimationsTimingDemo.mjs.map +7 -0
- package/dist/esm/AvatarDemo.mjs +30 -0
- package/dist/esm/AvatarDemo.mjs.map +7 -0
- package/dist/esm/ButtonDemo.mjs +25 -0
- package/dist/esm/ButtonDemo.mjs.map +7 -0
- package/dist/esm/CardDemo.mjs +46 -0
- package/dist/esm/CardDemo.mjs.map +7 -0
- package/dist/esm/ColorsDemo.mjs +96 -0
- package/dist/esm/ColorsDemo.mjs.map +7 -0
- package/dist/esm/DialogDemo.mjs +72 -0
- package/dist/esm/DialogDemo.mjs.map +7 -0
- package/dist/esm/FeatherIconsDemo.mjs +33 -0
- package/dist/esm/FeatherIconsDemo.mjs.map +7 -0
- package/dist/esm/FormsDemo.mjs +20 -0
- package/dist/esm/FormsDemo.mjs.map +7 -0
- package/dist/esm/GroupDemo.mjs +25 -0
- package/dist/esm/GroupDemo.mjs.map +7 -0
- package/dist/esm/HeadingsDemo.mjs +16 -0
- package/dist/esm/HeadingsDemo.mjs.map +7 -0
- package/dist/esm/ImageDemo.mjs +9 -0
- package/dist/esm/ImageDemo.mjs.map +7 -0
- package/dist/esm/LabelDemo.mjs +18 -0
- package/dist/esm/LabelDemo.mjs.map +7 -0
- package/dist/esm/LinearGradientDemo.mjs +33 -0
- package/dist/esm/LinearGradientDemo.mjs.map +7 -0
- package/dist/esm/ListItemDemo.mjs +47 -0
- package/dist/esm/ListItemDemo.mjs.map +7 -0
- package/dist/esm/LucideIconsDemo.mjs +33 -0
- package/dist/esm/LucideIconsDemo.mjs.map +7 -0
- package/dist/esm/PopoverDemo.mjs +76 -0
- package/dist/esm/PopoverDemo.mjs.map +7 -0
- package/dist/esm/ProgressDemo.mjs +55 -0
- package/dist/esm/ProgressDemo.mjs.map +7 -0
- package/dist/esm/ScrollViewDemo.mjs +18 -0
- package/dist/esm/ScrollViewDemo.mjs.map +7 -0
- package/dist/esm/SelectDemo.mjs +80 -0
- package/dist/esm/SelectDemo.mjs.map +7 -0
- package/dist/esm/SeparatorDemo.mjs +20 -0
- package/dist/esm/SeparatorDemo.mjs.map +7 -0
- package/dist/esm/ShapesDemo.mjs +12 -0
- package/dist/esm/ShapesDemo.mjs.map +7 -0
- package/dist/esm/SheetDemo.mjs +78 -0
- package/dist/esm/SheetDemo.mjs.map +7 -0
- package/dist/esm/SliderDemo.mjs +19 -0
- package/dist/esm/SliderDemo.mjs.map +7 -0
- package/dist/esm/SpinnerDemo.mjs +12 -0
- package/dist/esm/SpinnerDemo.mjs.map +7 -0
- package/dist/esm/StacksDemo.mjs +25 -0
- package/dist/esm/StacksDemo.mjs.map +7 -0
- package/dist/esm/SwitchDemo.mjs +22 -0
- package/dist/esm/SwitchDemo.mjs.map +7 -0
- package/dist/esm/TextDemo.mjs +17 -0
- package/dist/esm/TextDemo.mjs.map +7 -0
- package/dist/esm/ThemeInverseDemo.mjs +20 -0
- package/dist/esm/ThemeInverseDemo.mjs.map +7 -0
- package/dist/esm/TokensDemo.mjs +100 -0
- package/dist/esm/TokensDemo.mjs.map +7 -0
- package/dist/esm/TooltipDemo.mjs +69 -0
- package/dist/esm/TooltipDemo.mjs.map +7 -0
- package/dist/esm/UpdateThemeDemo.mjs +55 -0
- package/dist/esm/UpdateThemeDemo.mjs.map +7 -0
- package/dist/esm/conf.mjs +5 -0
- package/dist/esm/conf.mjs.map +7 -0
- package/dist/esm/index.mjs +78 -0
- package/dist/esm/index.mjs.map +7 -0
- package/dist/esm/tamagui.config.mjs +6 -0
- package/dist/esm/tamagui.config.mjs.map +7 -0
- package/dist/esm/useOnIntersecting.mjs +68 -0
- package/dist/esm/useOnIntersecting.mjs.map +7 -0
- package/dist/jsx/AddThemeDemo.mjs +30 -0
- package/dist/jsx/AddThemeDemo.mjs.map +7 -0
- package/dist/jsx/AlertDialogDemo.mjs +45 -0
- package/dist/jsx/AlertDialogDemo.mjs.map +7 -0
- package/dist/jsx/AnimationsDemo.mjs +81 -0
- package/dist/jsx/AnimationsDemo.mjs.map +7 -0
- package/dist/jsx/AnimationsEnterDemo.mjs +35 -0
- package/dist/jsx/AnimationsEnterDemo.mjs.map +7 -0
- package/dist/jsx/AnimationsHoverDemo.mjs +21 -0
- package/dist/jsx/AnimationsHoverDemo.mjs.map +7 -0
- package/dist/jsx/AnimationsPresenceDemo.mjs +55 -0
- package/dist/jsx/AnimationsPresenceDemo.mjs.map +7 -0
- package/dist/jsx/AnimationsTimingDemo.mjs +21 -0
- package/dist/jsx/AnimationsTimingDemo.mjs.map +7 -0
- package/dist/jsx/AvatarDemo.mjs +23 -0
- package/dist/jsx/AvatarDemo.mjs.map +7 -0
- package/dist/jsx/ButtonDemo.mjs +24 -0
- package/dist/jsx/ButtonDemo.mjs.map +7 -0
- package/dist/jsx/CardDemo.mjs +39 -0
- package/dist/jsx/CardDemo.mjs.map +7 -0
- package/dist/jsx/ColorsDemo.mjs +84 -0
- package/dist/jsx/ColorsDemo.mjs.map +7 -0
- package/dist/jsx/DialogDemo.mjs +64 -0
- package/dist/jsx/DialogDemo.mjs.map +7 -0
- package/dist/jsx/FeatherIconsDemo.mjs +32 -0
- package/dist/jsx/FeatherIconsDemo.mjs.map +7 -0
- package/dist/jsx/FormsDemo.mjs +19 -0
- package/dist/jsx/FormsDemo.mjs.map +7 -0
- package/dist/jsx/GroupDemo.mjs +24 -0
- package/dist/jsx/GroupDemo.mjs.map +7 -0
- package/dist/jsx/HeadingsDemo.mjs +15 -0
- package/dist/jsx/HeadingsDemo.mjs.map +7 -0
- package/dist/jsx/ImageDemo.mjs +8 -0
- package/dist/jsx/ImageDemo.mjs.map +7 -0
- package/dist/jsx/LabelDemo.mjs +17 -0
- package/dist/jsx/LabelDemo.mjs.map +7 -0
- package/dist/jsx/LinearGradientDemo.mjs +26 -0
- package/dist/jsx/LinearGradientDemo.mjs.map +7 -0
- package/dist/jsx/ListItemDemo.mjs +40 -0
- package/dist/jsx/ListItemDemo.mjs.map +7 -0
- package/dist/jsx/LucideIconsDemo.mjs +32 -0
- package/dist/jsx/LucideIconsDemo.mjs.map +7 -0
- package/dist/jsx/PopoverDemo.mjs +67 -0
- package/dist/jsx/PopoverDemo.mjs.map +7 -0
- package/dist/jsx/ProgressDemo.mjs +50 -0
- package/dist/jsx/ProgressDemo.mjs.map +7 -0
- package/dist/jsx/ScrollViewDemo.mjs +17 -0
- package/dist/jsx/ScrollViewDemo.mjs.map +7 -0
- package/dist/jsx/SelectDemo.mjs +73 -0
- package/dist/jsx/SelectDemo.mjs.map +7 -0
- package/dist/jsx/SeparatorDemo.mjs +19 -0
- package/dist/jsx/SeparatorDemo.mjs.map +7 -0
- package/dist/jsx/ShapesDemo.mjs +11 -0
- package/dist/jsx/ShapesDemo.mjs.map +7 -0
- package/dist/jsx/SheetDemo.mjs +64 -0
- package/dist/jsx/SheetDemo.mjs.map +7 -0
- package/dist/jsx/SliderDemo.mjs +18 -0
- package/dist/jsx/SliderDemo.mjs.map +7 -0
- package/dist/jsx/SpinnerDemo.mjs +11 -0
- package/dist/jsx/SpinnerDemo.mjs.map +7 -0
- package/dist/jsx/StacksDemo.mjs +24 -0
- package/dist/jsx/StacksDemo.mjs.map +7 -0
- package/dist/jsx/SwitchDemo.mjs +21 -0
- package/dist/jsx/SwitchDemo.mjs.map +7 -0
- package/dist/jsx/TextDemo.mjs +16 -0
- package/dist/jsx/TextDemo.mjs.map +7 -0
- package/dist/jsx/ThemeInverseDemo.mjs +19 -0
- package/dist/jsx/ThemeInverseDemo.mjs.map +7 -0
- package/dist/jsx/TokensDemo.mjs +91 -0
- package/dist/jsx/TokensDemo.mjs.map +7 -0
- package/dist/jsx/TooltipDemo.mjs +64 -0
- package/dist/jsx/TooltipDemo.mjs.map +7 -0
- package/dist/jsx/UpdateThemeDemo.mjs +50 -0
- package/dist/jsx/UpdateThemeDemo.mjs.map +7 -0
- package/dist/jsx/conf.mjs +5 -0
- package/dist/jsx/conf.mjs.map +7 -0
- package/dist/jsx/index.mjs +78 -0
- package/dist/jsx/index.mjs.map +7 -0
- package/dist/jsx/tamagui.config.mjs +6 -0
- package/dist/jsx/tamagui.config.mjs.map +7 -0
- package/dist/jsx/useOnIntersecting.mjs +68 -0
- package/dist/jsx/useOnIntersecting.mjs.map +7 -0
- package/package.json +17 -17
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Activity, Airplay } from "@tamagui/lucide-icons";
|
|
2
|
+
import { Button, ListItem, Separator, XGroup, YGroup, YStack } from "tamagui";
|
|
3
|
+
function GroupDemo() {
|
|
4
|
+
return <YStack p="$3" space="$2" ai="center">
|
|
5
|
+
<XGroup>
|
|
6
|
+
<Button>First</Button>
|
|
7
|
+
<Button>Second</Button>
|
|
8
|
+
<Button>Third</Button>
|
|
9
|
+
</XGroup>
|
|
10
|
+
<XGroup size="$3" $gtSm={{ size: "$5" }}>
|
|
11
|
+
<Button size="$3" icon={Activity}>First</Button>
|
|
12
|
+
<Button size="$3" icon={Airplay}>Second</Button>
|
|
13
|
+
</XGroup>
|
|
14
|
+
<YGroup separator={<Separator />}>
|
|
15
|
+
<ListItem title="First" />
|
|
16
|
+
<ListItem title="Second" subTitle="Second subtitle" />
|
|
17
|
+
<ListItem>Third</ListItem>
|
|
18
|
+
</YGroup>
|
|
19
|
+
</YStack>;
|
|
20
|
+
}
|
|
21
|
+
export {
|
|
22
|
+
GroupDemo
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=GroupDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/GroupDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import { Activity, Airplay } from '@tamagui/lucide-icons'\nimport { Button, ListItem, Separator, XGroup, YGroup, YStack } from 'tamagui'\n\nexport function GroupDemo() {\n return (\n <YStack p=\"$3\" space=\"$2\" ai=\"center\">\n <XGroup>\n <Button>First</Button>\n <Button>Second</Button>\n <Button>Third</Button>\n </XGroup>\n\n {/* responsive + size */}\n <XGroup size=\"$3\" $gtSm={{ size: '$5' }}>\n <Button size=\"$3\" icon={Activity}>\n First\n </Button>\n <Button size=\"$3\" icon={Airplay}>\n Second\n </Button>\n </XGroup>\n\n <YGroup separator={<Separator />}>\n <ListItem title=\"First\" />\n <ListItem title=\"Second\" subTitle=\"Second subtitle\" />\n <ListItem>Third</ListItem>\n </YGroup>\n </YStack>\n )\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,UAAU,eAAe;AAClC,SAAS,QAAQ,UAAU,WAAW,QAAQ,QAAQ,cAAc;AAE7D,SAAS,YAAY;AAC1B,SACE,CAAC,OAAO,EAAE,KAAK,MAAM,KAAK,GAAG;AAAA,IAC3B,CAAC;AAAA,MACC,CAAC,OAAO,KAAK,EAAZ;AAAA,MACD,CAAC,OAAO,MAAM,EAAb;AAAA,MACD,CAAC,OAAO,KAAK,EAAZ;AAAA,IACH,EAJC;AAAA,IAOD,CAAC,OAAO,KAAK,KAAK,OAAO,EAAE,MAAM,KAAK;AAAA,MACpC,CAAC,OAAO,KAAK,KAAK,MAAM,UAAU,KAElC,EAFC;AAAA,MAGD,CAAC,OAAO,KAAK,KAAK,MAAM,SAAS,MAEjC,EAFC;AAAA,IAGH,EAPC;AAAA,IASD,CAAC,OAAO,WAAW,CAAC,UAAU;AAAA,MAC5B,CAAC,SAAS,MAAM,QAAQ;AAAA,MACxB,CAAC,SAAS,MAAM,SAAS,SAAS,kBAAkB;AAAA,MACpD,CAAC,SAAS,KAAK,EAAd;AAAA,IACH,EAJC;AAAA,EAKH,EAtBC;AAwBL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { H1, H2, H3, H4, H5, H6, YStack } from "tamagui";
|
|
2
|
+
function HeadingsDemo() {
|
|
3
|
+
return <YStack als="center">
|
|
4
|
+
<H1>Heading 1</H1>
|
|
5
|
+
<H2>Heading 2</H2>
|
|
6
|
+
<H3>Heading 3</H3>
|
|
7
|
+
<H4>Heading 4</H4>
|
|
8
|
+
<H5>Heading 5</H5>
|
|
9
|
+
<H6>Heading 6</H6>
|
|
10
|
+
</YStack>;
|
|
11
|
+
}
|
|
12
|
+
export {
|
|
13
|
+
HeadingsDemo
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=HeadingsDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/HeadingsDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import React from 'react'\nimport { H1, H2, H3, H4, H5, H6, YStack } from 'tamagui'\n\nexport function HeadingsDemo() {\n return (\n <YStack als=\"center\">\n <H1>Heading 1</H1>\n <H2>Heading 2</H2>\n <H3>Heading 3</H3>\n <H4>Heading 4</H4>\n <H5>Heading 5</H5>\n <H6>Heading 6</H6>\n </YStack>\n )\n}\n"],
|
|
5
|
+
"mappings": "AACA,SAAS,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,cAAc;AAExC,SAAS,eAAe;AAC7B,SACE,CAAC,OAAO,IAAI;AAAA,IACV,CAAC,GAAG,SAAS,EAAZ;AAAA,IACD,CAAC,GAAG,SAAS,EAAZ;AAAA,IACD,CAAC,GAAG,SAAS,EAAZ;AAAA,IACD,CAAC,GAAG,SAAS,EAAZ;AAAA,IACD,CAAC,GAAG,SAAS,EAAZ;AAAA,IACD,CAAC,GAAG,SAAS,EAAZ;AAAA,EACH,EAPC;AASL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/ImageDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import { Image } from 'tamagui'\n\nexport function ImageDemo() {\n return <Image src=\"https://placekitten.com/200/300\" width={200} height={300} />\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,aAAa;AAEf,SAAS,YAAY;AAC1B,SAAO,CAAC,MAAM,IAAI,kCAAkC,OAAO,KAAK,QAAQ,KAAK;AAC/E;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Input, Label, Switch, XStack, YStack } from "tamagui";
|
|
2
|
+
function LabelDemo() {
|
|
3
|
+
return <YStack p="$3" miw={300} space="$4">
|
|
4
|
+
<XStack ai="center" space="$4">
|
|
5
|
+
<Label w={90} htmlFor="name">Name</Label>
|
|
6
|
+
<Input f={1} id="name" defaultValue="Nate Wienert" />
|
|
7
|
+
</XStack>
|
|
8
|
+
<XStack ai="center" space="$4">
|
|
9
|
+
<Label w={90} htmlFor="notify">Notifications</Label>
|
|
10
|
+
<Switch id="notify"><Switch.Thumb animation="quick" /></Switch>
|
|
11
|
+
</XStack>
|
|
12
|
+
</YStack>;
|
|
13
|
+
}
|
|
14
|
+
export {
|
|
15
|
+
LabelDemo
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=LabelDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/LabelDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import { Input, Label, Switch, XStack, YStack } from 'tamagui'\n\nexport function LabelDemo() {\n return (\n <YStack p=\"$3\" miw={300} space=\"$4\">\n <XStack ai=\"center\" space=\"$4\">\n <Label w={90} htmlFor=\"name\">\n Name\n </Label>\n <Input f={1} id=\"name\" defaultValue=\"Nate Wienert\" />\n </XStack>\n\n <XStack ai=\"center\" space=\"$4\">\n <Label w={90} htmlFor=\"notify\">\n Notifications\n </Label>\n <Switch id=\"notify\">\n <Switch.Thumb animation=\"quick\" />\n </Switch>\n </XStack>\n </YStack>\n )\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,OAAO,OAAO,QAAQ,QAAQ,cAAc;AAE9C,SAAS,YAAY;AAC1B,SACE,CAAC,OAAO,EAAE,KAAK,KAAK,KAAK,MAAM;AAAA,IAC7B,CAAC,OAAO,GAAG,SAAS,MAAM;AAAA,MACxB,CAAC,MAAM,GAAG,IAAI,QAAQ,OAAO,IAE7B,EAFC;AAAA,MAGD,CAAC,MAAM,GAAG,GAAG,GAAG,OAAO,aAAa,eAAe;AAAA,IACrD,EALC;AAAA,IAOD,CAAC,OAAO,GAAG,SAAS,MAAM;AAAA,MACxB,CAAC,MAAM,GAAG,IAAI,QAAQ,SAAS,aAE/B,EAFC;AAAA,MAGD,CAAC,OAAO,GAAG,SACT,CAAC,OAAO,MAAM,UAAU,QAAQ,EAClC,EAFC;AAAA,IAGH,EAPC;AAAA,EAQH,EAhBC;AAkBL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { XStack } from "tamagui";
|
|
2
|
+
import { LinearGradient } from "tamagui/linear-gradient";
|
|
3
|
+
function LinearGradientDemo() {
|
|
4
|
+
return <XStack space>
|
|
5
|
+
<LinearGradient
|
|
6
|
+
width="$6"
|
|
7
|
+
height="$6"
|
|
8
|
+
br="$4"
|
|
9
|
+
colors={["$red10", "$yellow10"]}
|
|
10
|
+
start={[0, 1]}
|
|
11
|
+
end={[0, 0]}
|
|
12
|
+
/>
|
|
13
|
+
<LinearGradient
|
|
14
|
+
width="$6"
|
|
15
|
+
height="$6"
|
|
16
|
+
br="$4"
|
|
17
|
+
colors={["$background", "$color"]}
|
|
18
|
+
start={[1, 1]}
|
|
19
|
+
end={[0, 0]}
|
|
20
|
+
/>
|
|
21
|
+
</XStack>;
|
|
22
|
+
}
|
|
23
|
+
export {
|
|
24
|
+
LinearGradientDemo
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=LinearGradientDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/LinearGradientDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import { XStack } from 'tamagui'\nimport { LinearGradient } from 'tamagui/linear-gradient'\n\nexport function LinearGradientDemo() {\n return (\n <XStack space>\n {/* tokens */}\n <LinearGradient\n width=\"$6\"\n height=\"$6\"\n br=\"$4\"\n colors={['$red10', '$yellow10']}\n start={[0, 1]}\n end={[0, 0]}\n />\n\n {/* theme values */}\n <LinearGradient\n width=\"$6\"\n height=\"$6\"\n br=\"$4\"\n colors={['$background', '$color']}\n start={[1, 1]}\n end={[0, 0]}\n />\n </XStack>\n )\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,cAAc;AACvB,SAAS,sBAAsB;AAExB,SAAS,qBAAqB;AACnC,SACE,CAAC,OAAO;AAAA,IAEN,CAAC;AAAA,MACC,MAAM;AAAA,MACN,OAAO;AAAA,MACP,GAAG;AAAA,MACH,QAAQ,CAAC,UAAU,WAAW;AAAA,MAC9B,OAAO,CAAC,GAAG,CAAC;AAAA,MACZ,KAAK,CAAC,GAAG,CAAC;AAAA,IACZ;AAAA,IAGA,CAAC;AAAA,MACC,MAAM;AAAA,MACN,OAAO;AAAA,MACP,GAAG;AAAA,MACH,QAAQ,CAAC,eAAe,QAAQ;AAAA,MAChC,OAAO,CAAC,GAAG,CAAC;AAAA,MACZ,KAAK,CAAC,GAAG,CAAC;AAAA,IACZ;AAAA,EACF,EApBC;AAsBL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { ChevronRight, Cloud, Moon, Star, Sun } from "@tamagui/lucide-icons";
|
|
2
|
+
import { ListItem, Separator, XStack, YGroup } from "tamagui";
|
|
3
|
+
function ListItemDemo() {
|
|
4
|
+
return <XStack $sm={{ flexDirection: "column" }} px="$4" space>
|
|
5
|
+
<ListItemDemo1 />
|
|
6
|
+
<ListItemDemo2 />
|
|
7
|
+
</XStack>;
|
|
8
|
+
}
|
|
9
|
+
function ListItemDemo1() {
|
|
10
|
+
return <YGroup als="center" bordered w={240} size="$4">
|
|
11
|
+
<ListItem hoverTheme icon={Star} title="Star" subTitle="Twinkles" />
|
|
12
|
+
<ListItem hoverTheme icon={Moon}>Moon</ListItem>
|
|
13
|
+
<ListItem hoverTheme icon={Sun}>Sun</ListItem>
|
|
14
|
+
<ListItem hoverTheme icon={Cloud}>Cloud</ListItem>
|
|
15
|
+
</YGroup>;
|
|
16
|
+
}
|
|
17
|
+
function ListItemDemo2() {
|
|
18
|
+
return <YGroup als="center" bordered w={240} size="$5" separator={<Separator />}>
|
|
19
|
+
<ListItem
|
|
20
|
+
hoverTheme
|
|
21
|
+
pressTheme
|
|
22
|
+
title="Star"
|
|
23
|
+
subTitle="Subtitle"
|
|
24
|
+
icon={Star}
|
|
25
|
+
iconAfter={ChevronRight}
|
|
26
|
+
/>
|
|
27
|
+
<ListItem
|
|
28
|
+
hoverTheme
|
|
29
|
+
pressTheme
|
|
30
|
+
title="Moon"
|
|
31
|
+
subTitle="Subtitle"
|
|
32
|
+
icon={Moon}
|
|
33
|
+
iconAfter={ChevronRight}
|
|
34
|
+
/>
|
|
35
|
+
</YGroup>;
|
|
36
|
+
}
|
|
37
|
+
export {
|
|
38
|
+
ListItemDemo
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=ListItemDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/ListItemDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import { ChevronRight, Cloud, Moon, Star, Sun } from '@tamagui/lucide-icons'\nimport React from 'react'\nimport { ListItem, Separator, XStack, YGroup } from 'tamagui'\n\nexport function ListItemDemo() {\n return (\n <XStack $sm={{ flexDirection: 'column' }} px=\"$4\" space>\n <ListItemDemo1 />\n <ListItemDemo2 />\n </XStack>\n )\n}\n\nfunction ListItemDemo1() {\n return (\n <YGroup als=\"center\" bordered w={240} size=\"$4\">\n <ListItem hoverTheme icon={Star} title=\"Star\" subTitle=\"Twinkles\" />\n <ListItem hoverTheme icon={Moon}>\n Moon\n </ListItem>\n <ListItem hoverTheme icon={Sun}>\n Sun\n </ListItem>\n <ListItem hoverTheme icon={Cloud}>\n Cloud\n </ListItem>\n </YGroup>\n )\n}\n\nfunction ListItemDemo2() {\n return (\n <YGroup als=\"center\" bordered w={240} size=\"$5\" separator={<Separator />}>\n <ListItem\n hoverTheme\n pressTheme\n title=\"Star\"\n subTitle=\"Subtitle\"\n icon={Star}\n iconAfter={ChevronRight}\n />\n <ListItem\n hoverTheme\n pressTheme\n title=\"Moon\"\n subTitle=\"Subtitle\"\n icon={Moon}\n iconAfter={ChevronRight}\n />\n </YGroup>\n )\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,cAAc,OAAO,MAAM,MAAM,WAAW;AAErD,SAAS,UAAU,WAAW,QAAQ,cAAc;AAE7C,SAAS,eAAe;AAC7B,SACE,CAAC,OAAO,KAAK,EAAE,eAAe,SAAS,GAAG,GAAG,KAAK;AAAA,IAChD,CAAC,cAAc;AAAA,IACf,CAAC,cAAc;AAAA,EACjB,EAHC;AAKL;AAEA,SAAS,gBAAgB;AACvB,SACE,CAAC,OAAO,IAAI,SAAS,SAAS,GAAG,KAAK,KAAK;AAAA,IACzC,CAAC,SAAS,WAAW,MAAM,MAAM,MAAM,OAAO,SAAS,WAAW;AAAA,IAClE,CAAC,SAAS,WAAW,MAAM,MAAM,IAEjC,EAFC;AAAA,IAGD,CAAC,SAAS,WAAW,MAAM,KAAK,GAEhC,EAFC;AAAA,IAGD,CAAC,SAAS,WAAW,MAAM,OAAO,KAElC,EAFC;AAAA,EAGH,EAXC;AAaL;AAEA,SAAS,gBAAgB;AACvB,SACE,CAAC,OAAO,IAAI,SAAS,SAAS,GAAG,KAAK,KAAK,KAAK,WAAW,CAAC,UAAU;AAAA,IACpE,CAAC;AAAA,MACC;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,SAAS;AAAA,MACT,MAAM;AAAA,MACN,WAAW;AAAA,IACb;AAAA,IACA,CAAC;AAAA,MACC;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,SAAS;AAAA,MACT,MAAM;AAAA,MACN,WAAW;AAAA,IACb;AAAA,EACF,EAjBC;AAmBL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as LucideIcons from "@tamagui/lucide-icons";
|
|
2
|
+
import { useMemo, useState } from "react";
|
|
3
|
+
import { ScrollView } from "react-native";
|
|
4
|
+
import { Grid, Input, Paragraph, Spacer, YStack, useDebounceValue } from "tamagui";
|
|
5
|
+
const lucideIcons = Object.keys(LucideIcons).map((name) => ({
|
|
6
|
+
key: name.toLowerCase(),
|
|
7
|
+
name,
|
|
8
|
+
Icon: LucideIcons[name]
|
|
9
|
+
}));
|
|
10
|
+
function LucideIconsDemo() {
|
|
11
|
+
const [searchRaw, setSearch] = useState("");
|
|
12
|
+
const search = useDebounceValue(searchRaw, 400);
|
|
13
|
+
const size = 100;
|
|
14
|
+
const iconsMemo = useMemo(() => {
|
|
15
|
+
const icons = lucideIcons.filter((x) => x.key.startsWith(search.toLowerCase()));
|
|
16
|
+
return icons.slice(0, 835).map(({ Icon, name }) => {
|
|
17
|
+
return <YStack h={size} ai="center" jc="center" key={name}>
|
|
18
|
+
<Icon size={size * 0.25} />
|
|
19
|
+
<Spacer />
|
|
20
|
+
<Paragraph size="$2" o={0.5}>{name}</Paragraph>
|
|
21
|
+
</YStack>;
|
|
22
|
+
});
|
|
23
|
+
}, [search]);
|
|
24
|
+
return <YStack als="stretch" p="$4" pb="$0" space>
|
|
25
|
+
<Input value={searchRaw} onChangeText={setSearch} placeholder="Search..." />
|
|
26
|
+
<YStack h={420}><ScrollView><Grid itemMinWidth={size}>{iconsMemo}</Grid></ScrollView></YStack>
|
|
27
|
+
</YStack>;
|
|
28
|
+
}
|
|
29
|
+
export {
|
|
30
|
+
LucideIconsDemo
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=LucideIconsDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/LucideIconsDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as LucideIcons from '@tamagui/lucide-icons'\nimport { useMemo, useState } from 'react'\nimport { ScrollView } from 'react-native'\nimport { Grid, Input, Paragraph, Spacer, YStack, useDebounceValue } from 'tamagui'\n\nconst lucideIcons = Object.keys(LucideIcons).map((name) => ({\n key: name.toLowerCase(),\n name,\n Icon: LucideIcons[name],\n}))\n\nexport function LucideIconsDemo() {\n const [searchRaw, setSearch] = useState('')\n const search = useDebounceValue(searchRaw, 400)\n\n const size = 100\n\n const iconsMemo = useMemo(() => {\n const icons = lucideIcons.filter((x) => x.key.startsWith(search.toLowerCase()))\n return icons.slice(0, 835).map(({ Icon, name }) => {\n return (\n <YStack h={size} ai=\"center\" jc=\"center\" key={name}>\n <Icon size={size * 0.25} />\n <Spacer />\n <Paragraph size=\"$2\" o={0.5}>\n {name}\n </Paragraph>\n </YStack>\n )\n })\n }, [search])\n\n return (\n <YStack als=\"stretch\" p=\"$4\" pb=\"$0\" space>\n <Input value={searchRaw} onChangeText={setSearch} placeholder=\"Search...\" />\n\n <YStack h={420}>\n <ScrollView>\n <Grid itemMinWidth={size}>{iconsMemo}</Grid>\n </ScrollView>\n </YStack>\n </YStack>\n )\n}\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,iBAAiB;AAC7B,SAAS,SAAS,gBAAgB;AAClC,SAAS,kBAAkB;AAC3B,SAAS,MAAM,OAAO,WAAW,QAAQ,QAAQ,wBAAwB;AAEzE,MAAM,cAAc,OAAO,KAAK,WAAW,EAAE,IAAI,CAAC,UAAU;AAAA,EAC1D,KAAK,KAAK,YAAY;AAAA,EACtB;AAAA,EACA,MAAM,YAAY,IAAI;AACxB,EAAE;AAEK,SAAS,kBAAkB;AAChC,QAAM,CAAC,WAAW,SAAS,IAAI,SAAS,EAAE;AAC1C,QAAM,SAAS,iBAAiB,WAAW,GAAG;AAE9C,QAAM,OAAO;AAEb,QAAM,YAAY,QAAQ,MAAM;AAC9B,UAAM,QAAQ,YAAY,OAAO,CAAC,MAAM,EAAE,IAAI,WAAW,OAAO,YAAY,CAAC,CAAC;AAC9E,WAAO,MAAM,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,MAAM;AACjD,aACE,CAAC,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,KAAK;AAAA,QAC5C,CAAC,KAAK,MAAM,OAAO,MAAM;AAAA,QACzB,CAAC,OAAO;AAAA,QACR,CAAC,UAAU,KAAK,KAAK,GAAG,MACrB,KACH,EAFC;AAAA,MAGH,EANC;AAAA,IAQL,CAAC;AAAA,EACH,GAAG,CAAC,MAAM,CAAC;AAEX,SACE,CAAC,OAAO,IAAI,UAAU,EAAE,KAAK,GAAG,KAAK;AAAA,IACnC,CAAC,MAAM,OAAO,WAAW,cAAc,WAAW,YAAY,YAAY;AAAA,IAE1E,CAAC,OAAO,GAAG,KACT,CAAC,WACC,CAAC,KAAK,cAAc,OAAO,UAAU,EAApC,KACH,EAFC,WAGH,EAJC;AAAA,EAKH,EARC;AAUL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { ChevronDown, ChevronLeft, ChevronRight, ChevronUp } from "@tamagui/lucide-icons";
|
|
2
|
+
import {
|
|
3
|
+
Adapt,
|
|
4
|
+
Button,
|
|
5
|
+
Input,
|
|
6
|
+
Label,
|
|
7
|
+
Popover,
|
|
8
|
+
XStack,
|
|
9
|
+
YGroup
|
|
10
|
+
} from "tamagui";
|
|
11
|
+
function PopoverDemo() {
|
|
12
|
+
return <XStack space="$2" f={1} jc="center" ai="center">
|
|
13
|
+
<Demo placement="left" Icon={ChevronLeft} Name="left-popover" />
|
|
14
|
+
<Demo placement="bottom" Icon={ChevronDown} Name="bottom-popover" />
|
|
15
|
+
<Demo placement="top" Icon={ChevronUp} Name="top-popover" />
|
|
16
|
+
<Demo placement="right" Icon={ChevronRight} Name="right-popover" />
|
|
17
|
+
</XStack>;
|
|
18
|
+
}
|
|
19
|
+
function Demo({
|
|
20
|
+
Icon,
|
|
21
|
+
Name,
|
|
22
|
+
...props
|
|
23
|
+
}) {
|
|
24
|
+
return <Popover size="$5" {...props}>
|
|
25
|
+
<Popover.Trigger asChild><Button icon={Icon} /></Popover.Trigger>
|
|
26
|
+
<Adapt when="sm" platform="web"><Popover.Sheet modal dismissOnSnapToBottom>
|
|
27
|
+
<Popover.Sheet.Frame padding="$4"><Adapt.Contents /></Popover.Sheet.Frame>
|
|
28
|
+
<Popover.Sheet.Overlay />
|
|
29
|
+
</Popover.Sheet></Adapt>
|
|
30
|
+
<Popover.Content
|
|
31
|
+
bw={1}
|
|
32
|
+
boc="$borderColor"
|
|
33
|
+
enterStyle={{ x: 0, y: -10, o: 0 }}
|
|
34
|
+
exitStyle={{ x: 0, y: -10, o: 0 }}
|
|
35
|
+
x={0}
|
|
36
|
+
y={0}
|
|
37
|
+
o={1}
|
|
38
|
+
animation={[
|
|
39
|
+
"quick",
|
|
40
|
+
{
|
|
41
|
+
opacity: {
|
|
42
|
+
overshootClamping: true
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
]}
|
|
46
|
+
elevate
|
|
47
|
+
>
|
|
48
|
+
<Popover.Arrow bw={1} boc="$borderColor" />
|
|
49
|
+
<YGroup space="$3">
|
|
50
|
+
<XStack space="$3">
|
|
51
|
+
<Label size="$3" htmlFor={Name}>Name</Label>
|
|
52
|
+
<Input size="$3" id={Name} />
|
|
53
|
+
</XStack>
|
|
54
|
+
<Popover.Close asChild><Button
|
|
55
|
+
size="$3"
|
|
56
|
+
onPress={() => {
|
|
57
|
+
}}
|
|
58
|
+
>Submit</Button></Popover.Close>
|
|
59
|
+
</YGroup>
|
|
60
|
+
</Popover.Content>
|
|
61
|
+
</Popover>;
|
|
62
|
+
}
|
|
63
|
+
export {
|
|
64
|
+
Demo,
|
|
65
|
+
PopoverDemo
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=PopoverDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/PopoverDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import { ChevronDown, ChevronLeft, ChevronRight, ChevronUp } from '@tamagui/lucide-icons'\nimport {\n Adapt,\n Button,\n Input,\n Label,\n Popover,\n PopoverProps,\n XStack,\n YGroup,\n} from 'tamagui'\n\nexport function PopoverDemo() {\n return (\n <XStack space=\"$2\" f={1} jc=\"center\" ai=\"center\">\n <Demo placement=\"left\" Icon={ChevronLeft} Name=\"left-popover\" />\n <Demo placement=\"bottom\" Icon={ChevronDown} Name=\"bottom-popover\" />\n <Demo placement=\"top\" Icon={ChevronUp} Name=\"top-popover\" />\n <Demo placement=\"right\" Icon={ChevronRight} Name=\"right-popover\" />\n </XStack>\n )\n}\n\nexport function Demo({\n Icon,\n Name,\n ...props\n}: PopoverProps & { Icon?: any; Name?: string }) {\n return (\n <Popover size=\"$5\" {...props}>\n <Popover.Trigger asChild>\n <Button icon={Icon} />\n </Popover.Trigger>\n\n <Adapt when=\"sm\" platform=\"web\">\n <Popover.Sheet modal dismissOnSnapToBottom>\n <Popover.Sheet.Frame padding=\"$4\">\n <Adapt.Contents />\n </Popover.Sheet.Frame>\n <Popover.Sheet.Overlay />\n </Popover.Sheet>\n </Adapt>\n\n <Popover.Content\n bw={1}\n boc=\"$borderColor\"\n enterStyle={{ x: 0, y: -10, o: 0 }}\n exitStyle={{ x: 0, y: -10, o: 0 }}\n x={0}\n y={0}\n o={1}\n animation={[\n 'quick',\n {\n opacity: {\n overshootClamping: true,\n },\n },\n ]}\n elevate\n >\n <Popover.Arrow bw={1} boc=\"$borderColor\" />\n\n <YGroup space=\"$3\">\n <XStack space=\"$3\">\n <Label size=\"$3\" htmlFor={Name}>\n Name\n </Label>\n <Input size=\"$3\" id={Name} />\n </XStack>\n <Popover.Close asChild>\n <Button\n size=\"$3\"\n onPress={() => {\n /* Custom code goes here, does not interfere with popover closure */\n }}\n >\n Submit\n </Button>\n </Popover.Close>\n </YGroup>\n </Popover.Content>\n </Popover>\n )\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,aAAa,aAAa,cAAc,iBAAiB;AAClE;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,OACK;AAEA,SAAS,cAAc;AAC5B,SACE,CAAC,OAAO,MAAM,KAAK,GAAG,GAAG,GAAG,SAAS,GAAG;AAAA,IACtC,CAAC,KAAK,UAAU,OAAO,MAAM,aAAa,KAAK,eAAe;AAAA,IAC9D,CAAC,KAAK,UAAU,SAAS,MAAM,aAAa,KAAK,iBAAiB;AAAA,IAClE,CAAC,KAAK,UAAU,MAAM,MAAM,WAAW,KAAK,cAAc;AAAA,IAC1D,CAAC,KAAK,UAAU,QAAQ,MAAM,cAAc,KAAK,gBAAgB;AAAA,EACnE,EALC;AAOL;AAEO,SAAS,KAAK;AAAA,EACnB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAiD;AAC/C,SACE,CAAC,QAAQ,KAAK,SAAS;AAAA,IACrB,CAAC,QAAQ,QAAQ,QACf,CAAC,OAAO,MAAM,MAAM,EACtB,EAFC,QAAQ;AAAA,IAIT,CAAC,MAAM,KAAK,KAAK,SAAS,MACxB,CAAC,QAAQ,MAAM,MAAM;AAAA,MACnB,CAAC,QAAQ,MAAM,MAAM,QAAQ,KAC3B,CAAC,MAAM,SAAS,EAClB,EAFC,QAAQ,MAAM;AAAA,MAGf,CAAC,QAAQ,MAAM,QAAQ;AAAA,IACzB,EALC,QAAQ,MAMX,EAPC;AAAA,IASD,CAAC,QAAQ;AAAA,MACP,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,YAAY,EAAE,GAAG,GAAG,GAAG,KAAK,GAAG,EAAE;AAAA,MACjC,WAAW,EAAE,GAAG,GAAG,GAAG,KAAK,GAAG,EAAE;AAAA,MAChC,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,WAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,SAAS;AAAA,YACP,mBAAmB;AAAA,UACrB;AAAA,QACF;AAAA,MACF;AAAA,MACA;AAAA;AAAA,MAEA,CAAC,QAAQ,MAAM,IAAI,GAAG,IAAI,eAAe;AAAA,MAEzC,CAAC,OAAO,MAAM;AAAA,QACZ,CAAC,OAAO,MAAM;AAAA,UACZ,CAAC,MAAM,KAAK,KAAK,SAAS,MAAM,IAEhC,EAFC;AAAA,UAGD,CAAC,MAAM,KAAK,KAAK,IAAI,MAAM;AAAA,QAC7B,EALC;AAAA,QAMD,CAAC,QAAQ,MAAM,QACb,CAAC;AAAA,UACC,KAAK;AAAA,UACL,SAAS,MAAM;AAAA,UAEf;AAAA,SACD,MAED,EAPC,OAQH,EATC,QAAQ;AAAA,MAUX,EAjBC;AAAA,IAkBH,EAtCC,QAAQ;AAAA,EAuCX,EArDC;AAuDL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { useEffect, useState } from "react";
|
|
2
|
+
import {
|
|
3
|
+
Button,
|
|
4
|
+
Paragraph,
|
|
5
|
+
Progress,
|
|
6
|
+
Slider,
|
|
7
|
+
XStack,
|
|
8
|
+
YStack
|
|
9
|
+
} from "tamagui";
|
|
10
|
+
function ProgressDemo() {
|
|
11
|
+
const [size, setSize] = useState(4);
|
|
12
|
+
const [progress, setProgress] = useState(20);
|
|
13
|
+
const sizeProp = `$${size}`;
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
const timer = setTimeout(() => setProgress(60), 1e3);
|
|
16
|
+
return () => {
|
|
17
|
+
clearTimeout(timer);
|
|
18
|
+
};
|
|
19
|
+
}, []);
|
|
20
|
+
return <>
|
|
21
|
+
<YStack h={60} ai="center" space>
|
|
22
|
+
<Paragraph h={30} o={0.5}>
|
|
23
|
+
{"Size: "}
|
|
24
|
+
{size}
|
|
25
|
+
</Paragraph>
|
|
26
|
+
<Progress size={sizeProp} value={progress}><Progress.Indicator animation="bouncy" /></Progress>
|
|
27
|
+
</YStack>
|
|
28
|
+
<XStack ai="center" space pos="absolute" b={10} l={20} $xxs={{ dsp: "none" }}>
|
|
29
|
+
<Slider
|
|
30
|
+
size="$2"
|
|
31
|
+
w={130}
|
|
32
|
+
defaultValue={[4]}
|
|
33
|
+
min={2}
|
|
34
|
+
max={6}
|
|
35
|
+
step={1}
|
|
36
|
+
onValueChange={([val]) => {
|
|
37
|
+
setSize(val);
|
|
38
|
+
}}
|
|
39
|
+
>
|
|
40
|
+
<Slider.Track><Slider.TrackActive /></Slider.Track>
|
|
41
|
+
<Slider.Thumb circular index={0} />
|
|
42
|
+
</Slider>
|
|
43
|
+
<Button size="$2" onPress={() => setProgress((prev) => (prev + 20) % 100)}>Load</Button>
|
|
44
|
+
</XStack>
|
|
45
|
+
</>;
|
|
46
|
+
}
|
|
47
|
+
export {
|
|
48
|
+
ProgressDemo
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=ProgressDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/ProgressDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import React from 'react'\nimport { useEffect, useState } from 'react'\nimport {\n Button,\n Paragraph,\n Progress,\n SizeTokens,\n Slider,\n XStack,\n YStack,\n} from 'tamagui'\n\nexport function ProgressDemo() {\n const [size, setSize] = useState(4)\n const [progress, setProgress] = useState(20)\n const sizeProp = `$${size}` as SizeTokens\n\n useEffect(() => {\n const timer = setTimeout(() => setProgress(60), 1000)\n return () => {\n clearTimeout(timer)\n }\n }, [])\n\n return (\n <>\n <YStack h={60} ai=\"center\" space>\n <Paragraph h={30} o={0.5}>\n Size: {size}\n </Paragraph>\n <Progress size={sizeProp} value={progress}>\n <Progress.Indicator animation=\"bouncy\" />\n </Progress>\n </YStack>\n\n <XStack ai=\"center\" space pos=\"absolute\" b={10} l={20} $xxs={{ dsp: 'none' }}>\n <Slider\n size=\"$2\"\n w={130}\n defaultValue={[4]}\n min={2}\n max={6}\n step={1}\n onValueChange={([val]) => {\n setSize(val)\n }}\n >\n <Slider.Track>\n <Slider.TrackActive />\n </Slider.Track>\n <Slider.Thumb circular index={0} />\n </Slider>\n\n <Button size=\"$2\" onPress={() => setProgress((prev) => (prev + 20) % 100)}>\n Load\n </Button>\n </XStack>\n </>\n )\n}\n"],
|
|
5
|
+
"mappings": "AACA,SAAS,WAAW,gBAAgB;AACpC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEA,SAAS,eAAe;AAC7B,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,CAAC;AAClC,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,EAAE;AAC3C,QAAM,WAAW,IAAI;AAErB,YAAU,MAAM;AACd,UAAM,QAAQ,WAAW,MAAM,YAAY,EAAE,GAAG,GAAI;AACpD,WAAO,MAAM;AACX,mBAAa,KAAK;AAAA,IACpB;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,SACE;AAAA,IACE,CAAC,OAAO,GAAG,IAAI,GAAG,SAAS;AAAA,MACzB,CAAC,UAAU,GAAG,IAAI,GAAG;AAAA,SAAK;AAAA,SACjB;AAAA,MACT,EAFC;AAAA,MAGD,CAAC,SAAS,MAAM,UAAU,OAAO,UAC/B,CAAC,SAAS,UAAU,UAAU,SAAS,EACzC,EAFC;AAAA,IAGH,EAPC;AAAA,IASD,CAAC,OAAO,GAAG,SAAS,MAAM,IAAI,WAAW,GAAG,IAAI,GAAG,IAAI,MAAM,EAAE,KAAK,OAAO;AAAA,MACzE,CAAC;AAAA,QACC,KAAK;AAAA,QACL,GAAG;AAAA,QACH,cAAc,CAAC,CAAC;AAAA,QAChB,KAAK;AAAA,QACL,KAAK;AAAA,QACL,MAAM;AAAA,QACN,eAAe,CAAC,CAAC,GAAG,MAAM;AACxB,kBAAQ,GAAG;AAAA,QACb;AAAA;AAAA,QAEA,CAAC,OAAO,MACN,CAAC,OAAO,YAAY,EACtB,EAFC,OAAO;AAAA,QAGR,CAAC,OAAO,MAAM,SAAS,OAAO,GAAG;AAAA,MACnC,EAfC;AAAA,MAiBD,CAAC,OAAO,KAAK,KAAK,SAAS,MAAM,YAAY,CAAC,UAAU,OAAO,MAAM,GAAG,GAAG,IAE3E,EAFC;AAAA,IAGH,EArBC;AAAA,EAsBH;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Circle, ScrollView, Square, XStack } from "tamagui";
|
|
2
|
+
function ScrollViewDemo() {
|
|
3
|
+
return <ScrollView maxHeight={250} w="75%" bc="$background" p="$4" br="$4"><XStack flexWrap="wrap" ai="center" jc="center">
|
|
4
|
+
<Square m="$4" size={120} bc="$red9" />
|
|
5
|
+
<Circle m="$4" size={120} bc="$orange9" />
|
|
6
|
+
<Square m="$4" size={120} bc="$yellow9" />
|
|
7
|
+
<Circle m="$4" size={120} bc="$green9" />
|
|
8
|
+
<Square m="$4" size={120} bc="$blue9" />
|
|
9
|
+
<Circle m="$4" size={120} bc="$purple9" />
|
|
10
|
+
<Square m="$4" size={120} bc="$pink9" />
|
|
11
|
+
<Circle m="$4" size={120} bc="$red9" />
|
|
12
|
+
</XStack></ScrollView>;
|
|
13
|
+
}
|
|
14
|
+
export {
|
|
15
|
+
ScrollViewDemo
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=ScrollViewDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/ScrollViewDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import { Circle, ScrollView, Square, XStack } from 'tamagui'\n\nexport function ScrollViewDemo() {\n return (\n <ScrollView maxHeight={250} w=\"75%\" bc=\"$background\" p=\"$4\" br=\"$4\">\n <XStack flexWrap=\"wrap\" ai=\"center\" jc=\"center\">\n <Square m=\"$4\" size={120} bc=\"$red9\" />\n <Circle m=\"$4\" size={120} bc=\"$orange9\" />\n <Square m=\"$4\" size={120} bc=\"$yellow9\" />\n <Circle m=\"$4\" size={120} bc=\"$green9\" />\n <Square m=\"$4\" size={120} bc=\"$blue9\" />\n <Circle m=\"$4\" size={120} bc=\"$purple9\" />\n <Square m=\"$4\" size={120} bc=\"$pink9\" />\n <Circle m=\"$4\" size={120} bc=\"$red9\" />\n </XStack>\n </ScrollView>\n )\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,QAAQ,YAAY,QAAQ,cAAc;AAE5C,SAAS,iBAAiB;AAC/B,SACE,CAAC,WAAW,WAAW,KAAK,EAAE,MAAM,GAAG,cAAc,EAAE,KAAK,GAAG,KAC7D,CAAC,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG;AAAA,IACrC,CAAC,OAAO,EAAE,KAAK,MAAM,KAAK,GAAG,QAAQ;AAAA,IACrC,CAAC,OAAO,EAAE,KAAK,MAAM,KAAK,GAAG,WAAW;AAAA,IACxC,CAAC,OAAO,EAAE,KAAK,MAAM,KAAK,GAAG,WAAW;AAAA,IACxC,CAAC,OAAO,EAAE,KAAK,MAAM,KAAK,GAAG,UAAU;AAAA,IACvC,CAAC,OAAO,EAAE,KAAK,MAAM,KAAK,GAAG,SAAS;AAAA,IACtC,CAAC,OAAO,EAAE,KAAK,MAAM,KAAK,GAAG,WAAW;AAAA,IACxC,CAAC,OAAO,EAAE,KAAK,MAAM,KAAK,GAAG,SAAS;AAAA,IACtC,CAAC,OAAO,EAAE,KAAK,MAAM,KAAK,GAAG,QAAQ;AAAA,EACvC,EATC,OAUH,EAXC;AAaL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { Check, ChevronDown, ChevronUp } from "@tamagui/lucide-icons";
|
|
2
|
+
import { useState } from "react";
|
|
3
|
+
import { Adapt, Select, Sheet, YStack } from "tamagui";
|
|
4
|
+
import { LinearGradient } from "tamagui/linear-gradient";
|
|
5
|
+
function SelectDemo() {
|
|
6
|
+
const [val, setVal] = useState("apple");
|
|
7
|
+
return <Select id="food" value={val} onValueChange={setVal}>
|
|
8
|
+
<Select.Trigger w={180} iconAfter={ChevronDown}><Select.Value placeholder="Something" /></Select.Trigger>
|
|
9
|
+
<Adapt when="sm" platform="touch"><Sheet modal dismissOnSnapToBottom>
|
|
10
|
+
<Sheet.Frame><Sheet.ScrollView><Adapt.Contents /></Sheet.ScrollView></Sheet.Frame>
|
|
11
|
+
<Sheet.Overlay />
|
|
12
|
+
</Sheet></Adapt>
|
|
13
|
+
<Select.Content zIndex={2e5}>
|
|
14
|
+
<Select.ScrollUpButton ai="center" jc="center" pos="relative" w="100%" h="$3">
|
|
15
|
+
<YStack zi={10}><ChevronUp size={20} /></YStack>
|
|
16
|
+
<LinearGradient
|
|
17
|
+
start={[0, 0]}
|
|
18
|
+
end={[0, 1]}
|
|
19
|
+
fullscreen
|
|
20
|
+
colors={["$background", "$backgroundTransparent"]}
|
|
21
|
+
br="$4"
|
|
22
|
+
/>
|
|
23
|
+
</Select.ScrollUpButton>
|
|
24
|
+
<Select.Viewport minWidth={200}><Select.Group space="$-0">
|
|
25
|
+
<Select.Label>Fruits</Select.Label>
|
|
26
|
+
{items.map((item, i) => {
|
|
27
|
+
return <Select.Item index={i} key={item.name} value={item.name.toLowerCase()}>
|
|
28
|
+
<Select.ItemText>{item.name}</Select.ItemText>
|
|
29
|
+
<Select.ItemIndicator ml="auto"><Check size={16} /></Select.ItemIndicator>
|
|
30
|
+
</Select.Item>;
|
|
31
|
+
})}
|
|
32
|
+
</Select.Group></Select.Viewport>
|
|
33
|
+
<Select.ScrollDownButton ai="center" jc="center" pos="relative" w="100%" h="$3">
|
|
34
|
+
<YStack zi={10}><ChevronDown size={20} /></YStack>
|
|
35
|
+
<LinearGradient
|
|
36
|
+
start={[0, 0]}
|
|
37
|
+
end={[0, 1]}
|
|
38
|
+
fullscreen
|
|
39
|
+
colors={["$backgroundTransparent", "$background"]}
|
|
40
|
+
br="$4"
|
|
41
|
+
/>
|
|
42
|
+
</Select.ScrollDownButton>
|
|
43
|
+
</Select.Content>
|
|
44
|
+
</Select>;
|
|
45
|
+
}
|
|
46
|
+
const items = [
|
|
47
|
+
{ name: "Apple" },
|
|
48
|
+
{ name: "Pear" },
|
|
49
|
+
{ name: "Blackberry" },
|
|
50
|
+
{ name: "Peach" },
|
|
51
|
+
{ name: "Apricot" },
|
|
52
|
+
{ name: "Melon" },
|
|
53
|
+
{ name: "Honeydew" },
|
|
54
|
+
{ name: "Starfruit" },
|
|
55
|
+
{ name: "Blueberry" },
|
|
56
|
+
{ name: "Rasberry" },
|
|
57
|
+
{ name: "Strawberry" },
|
|
58
|
+
{ name: "Mango" },
|
|
59
|
+
{ name: "Pineapple" },
|
|
60
|
+
{ name: "Lime" },
|
|
61
|
+
{ name: "Lemon" },
|
|
62
|
+
{ name: "Coconut" },
|
|
63
|
+
{ name: "Guava" },
|
|
64
|
+
{ name: "Papaya" },
|
|
65
|
+
{ name: "Orange" },
|
|
66
|
+
{ name: "Grape" },
|
|
67
|
+
{ name: "Jackfruit" },
|
|
68
|
+
{ name: "Durian" }
|
|
69
|
+
];
|
|
70
|
+
export {
|
|
71
|
+
SelectDemo
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=SelectDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/SelectDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import { Check, ChevronDown, ChevronUp } from '@tamagui/lucide-icons'\nimport { useState } from 'react'\nimport { Adapt, Select, Sheet, YStack } from 'tamagui'\nimport { LinearGradient } from 'tamagui/linear-gradient'\n\nexport function SelectDemo() {\n const [val, setVal] = useState('apple')\n return (\n <Select id=\"food\" value={val} onValueChange={setVal}>\n <Select.Trigger w={180} iconAfter={ChevronDown}>\n <Select.Value placeholder=\"Something\" />\n </Select.Trigger>\n\n <Adapt when=\"sm\" platform=\"touch\">\n <Sheet modal dismissOnSnapToBottom>\n <Sheet.Frame>\n <Sheet.ScrollView>\n <Adapt.Contents />\n </Sheet.ScrollView>\n </Sheet.Frame>\n <Sheet.Overlay />\n </Sheet>\n </Adapt>\n\n <Select.Content zIndex={200000}>\n <Select.ScrollUpButton ai=\"center\" jc=\"center\" pos=\"relative\" w=\"100%\" h=\"$3\">\n <YStack zi={10}>\n <ChevronUp size={20} />\n </YStack>\n <LinearGradient\n start={[0, 0]}\n end={[0, 1]}\n fullscreen\n colors={['$background', '$backgroundTransparent']}\n br=\"$4\"\n />\n </Select.ScrollUpButton>\n\n <Select.Viewport minWidth={200}>\n <Select.Group space=\"$-0\">\n <Select.Label>Fruits</Select.Label>\n {items.map((item, i) => {\n return (\n <Select.Item index={i} key={item.name} value={item.name.toLowerCase()}>\n <Select.ItemText>{item.name}</Select.ItemText>\n <Select.ItemIndicator ml=\"auto\">\n <Check size={16} />\n </Select.ItemIndicator>\n </Select.Item>\n )\n })}\n </Select.Group>\n </Select.Viewport>\n\n <Select.ScrollDownButton ai=\"center\" jc=\"center\" pos=\"relative\" w=\"100%\" h=\"$3\">\n <YStack zi={10}>\n <ChevronDown size={20} />\n </YStack>\n <LinearGradient\n start={[0, 0]}\n end={[0, 1]}\n fullscreen\n colors={['$backgroundTransparent', '$background']}\n br=\"$4\"\n />\n </Select.ScrollDownButton>\n </Select.Content>\n </Select>\n )\n}\n\nconst items = [\n { name: 'Apple' },\n { name: 'Pear' },\n { name: 'Blackberry' },\n { name: 'Peach' },\n { name: 'Apricot' },\n { name: 'Melon' },\n { name: 'Honeydew' },\n { name: 'Starfruit' },\n { name: 'Blueberry' },\n { name: 'Rasberry' },\n { name: 'Strawberry' },\n { name: 'Mango' },\n { name: 'Pineapple' },\n { name: 'Lime' },\n { name: 'Lemon' },\n { name: 'Coconut' },\n { name: 'Guava' },\n { name: 'Papaya' },\n { name: 'Orange' },\n { name: 'Grape' },\n { name: 'Jackfruit' },\n { name: 'Durian' },\n]\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Paragraph, Separator, XStack, YStack } from "tamagui";
|
|
2
|
+
function SeparatorDemo() {
|
|
3
|
+
return <YStack w="100%" maw={300} mx={15}>
|
|
4
|
+
<Paragraph fontWeight="800">Tamagui</Paragraph>
|
|
5
|
+
<Paragraph>A cross-platform component library.</Paragraph>
|
|
6
|
+
<Separator my={15} />
|
|
7
|
+
<XStack h={20} ai="center">
|
|
8
|
+
<Paragraph>Blog</Paragraph>
|
|
9
|
+
<Separator als="stretch" vertical mx={15} />
|
|
10
|
+
<Paragraph>Docs</Paragraph>
|
|
11
|
+
<Separator als="stretch" vertical mx={15} />
|
|
12
|
+
<Paragraph>Source</Paragraph>
|
|
13
|
+
</XStack>
|
|
14
|
+
</YStack>;
|
|
15
|
+
}
|
|
16
|
+
export {
|
|
17
|
+
SeparatorDemo
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=SeparatorDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/SeparatorDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import React from 'react'\nimport { Paragraph, Separator, XStack, YStack } from 'tamagui'\n\nexport function SeparatorDemo() {\n return (\n <YStack w=\"100%\" maw={300} mx={15}>\n <Paragraph fontWeight=\"800\">Tamagui</Paragraph>\n <Paragraph>A cross-platform component library.</Paragraph>\n <Separator my={15} />\n <XStack h={20} ai=\"center\">\n <Paragraph>Blog</Paragraph>\n <Separator als=\"stretch\" vertical mx={15} />\n <Paragraph>Docs</Paragraph>\n <Separator als=\"stretch\" vertical mx={15} />\n <Paragraph>Source</Paragraph>\n </XStack>\n </YStack>\n )\n}\n"],
|
|
5
|
+
"mappings": "AACA,SAAS,WAAW,WAAW,QAAQ,cAAc;AAE9C,SAAS,gBAAgB;AAC9B,SACE,CAAC,OAAO,EAAE,OAAO,KAAK,KAAK,IAAI;AAAA,IAC7B,CAAC,UAAU,WAAW,MAAM,OAAO,EAAlC;AAAA,IACD,CAAC,UAAU,mCAAmC,EAA7C;AAAA,IACD,CAAC,UAAU,IAAI,IAAI;AAAA,IACnB,CAAC,OAAO,GAAG,IAAI,GAAG;AAAA,MAChB,CAAC,UAAU,IAAI,EAAd;AAAA,MACD,CAAC,UAAU,IAAI,UAAU,SAAS,IAAI,IAAI;AAAA,MAC1C,CAAC,UAAU,IAAI,EAAd;AAAA,MACD,CAAC,UAAU,IAAI,UAAU,SAAS,IAAI,IAAI;AAAA,MAC1C,CAAC,UAAU,MAAM,EAAhB;AAAA,IACH,EANC;AAAA,EAOH,EAXC;AAaL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Circle, Square, XStack } from "tamagui";
|
|
2
|
+
function ShapesDemo() {
|
|
3
|
+
return <XStack p="$2" space="$4">
|
|
4
|
+
<Square size={100} bc="$color" elevation="$4" />
|
|
5
|
+
<Circle size={100} bc="$color" elevation="$4" />
|
|
6
|
+
</XStack>;
|
|
7
|
+
}
|
|
8
|
+
export {
|
|
9
|
+
ShapesDemo
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=ShapesDemo.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/ShapesDemo.tsx"],
|
|
4
|
+
"sourcesContent": ["import { Circle, Square, XStack } from 'tamagui'\n\nexport function ShapesDemo() {\n return (\n <XStack p=\"$2\" space=\"$4\">\n <Square size={100} bc=\"$color\" elevation=\"$4\" />\n <Circle size={100} bc=\"$color\" elevation=\"$4\" />\n </XStack>\n )\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,QAAQ,QAAQ,cAAc;AAEhC,SAAS,aAAa;AAC3B,SACE,CAAC,OAAO,EAAE,KAAK,MAAM;AAAA,IACnB,CAAC,OAAO,MAAM,KAAK,GAAG,SAAS,UAAU,KAAK;AAAA,IAC9C,CAAC,OAAO,MAAM,KAAK,GAAG,SAAS,UAAU,KAAK;AAAA,EAChD,EAHC;AAKL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { ChevronDown, ChevronUp } from "@tamagui/lucide-icons";
|
|
2
|
+
import { Sheet } from "@tamagui/sheet";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
import { Button, H1, H2, Paragraph, XStack } from "tamagui";
|
|
5
|
+
const SheetDemo = () => {
|
|
6
|
+
const [position, setPosition] = useState(0);
|
|
7
|
+
const [open, setOpen] = useState(false);
|
|
8
|
+
const [modal, setModal] = useState(false);
|
|
9
|
+
const [innerOpen, setInnerOpen] = useState(false);
|
|
10
|
+
return <>
|
|
11
|
+
<XStack space>
|
|
12
|
+
<Button onPress={() => setOpen(true)}>Open</Button>
|
|
13
|
+
<Button onPress={() => setModal((x) => !x)}>{modal ? "Type: Modal" : "Type: Inline"}</Button>
|
|
14
|
+
</XStack>
|
|
15
|
+
<Sheet
|
|
16
|
+
forceRemoveScrollEnabled={open}
|
|
17
|
+
modal={modal}
|
|
18
|
+
open={open}
|
|
19
|
+
onOpenChange={setOpen}
|
|
20
|
+
snapPoints={[85, 50, 25]}
|
|
21
|
+
dismissOnSnapToBottom
|
|
22
|
+
position={position}
|
|
23
|
+
onPositionChange={setPosition}
|
|
24
|
+
zIndex={1e5}
|
|
25
|
+
>
|
|
26
|
+
<Sheet.Overlay />
|
|
27
|
+
<Sheet.Handle />
|
|
28
|
+
<Sheet.Frame f={1} p="$4" jc="center" ai="center" space="$5">
|
|
29
|
+
<Button size="$6" circular icon={ChevronDown} onPress={() => setOpen(false)} />
|
|
30
|
+
{modal && <>
|
|
31
|
+
<InnerSheet open={innerOpen} onOpenChange={setInnerOpen} />
|
|
32
|
+
<Button
|
|
33
|
+
size="$6"
|
|
34
|
+
circular
|
|
35
|
+
icon={ChevronUp}
|
|
36
|
+
onPress={() => setInnerOpen(true)}
|
|
37
|
+
/>
|
|
38
|
+
</>}
|
|
39
|
+
</Sheet.Frame>
|
|
40
|
+
</Sheet>
|
|
41
|
+
</>;
|
|
42
|
+
};
|
|
43
|
+
function InnerSheet(props) {
|
|
44
|
+
return <Sheet modal snapPoints={[90]} dismissOnSnapToBottom {...props}>
|
|
45
|
+
<Sheet.Overlay />
|
|
46
|
+
<Sheet.Handle />
|
|
47
|
+
<Sheet.Frame f={1} jc="center" ai="center" space="$5"><Sheet.ScrollView p="$4" space>
|
|
48
|
+
<Button
|
|
49
|
+
size="$8"
|
|
50
|
+
circular
|
|
51
|
+
als="center"
|
|
52
|
+
icon={ChevronDown}
|
|
53
|
+
onPress={() => props.onOpenChange?.(false)}
|
|
54
|
+
/>
|
|
55
|
+
<H1>Hello world</H1>
|
|
56
|
+
<H2>You can scroll me</H2>
|
|
57
|
+
{[1, 2, 3].map((i) => <Paragraph key={i} size="$10">Eu officia sunt ipsum nisi dolore labore est laborum laborum in esse ad pariatur. Dolor excepteur esse deserunt voluptate labore ea. Exercitation ipsum deserunt occaecat cupidatat consequat est adipisicing velit cupidatat ullamco veniam aliquip reprehenderit officia. Officia labore culpa ullamco velit. In sit occaecat velit ipsum fugiat esse aliqua dolor sint.</Paragraph>)}
|
|
58
|
+
</Sheet.ScrollView></Sheet.Frame>
|
|
59
|
+
</Sheet>;
|
|
60
|
+
}
|
|
61
|
+
export {
|
|
62
|
+
SheetDemo
|
|
63
|
+
};
|
|
64
|
+
//# sourceMappingURL=SheetDemo.mjs.map
|