@tamagui/demos 1.63.0 → 1.64.0
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/cjs/SheetDemo.js +4 -1
- package/dist/cjs/SheetDemo.js.map +1 -1
- package/dist/cjs/SheetDemo.native.js +4 -1
- package/dist/cjs/SheetDemo.native.js.map +1 -1
- package/dist/cjs/TokensDemo.js +29 -26
- package/dist/cjs/TokensDemo.js.map +1 -1
- package/dist/cjs/TokensDemo.native.js +29 -26
- package/dist/cjs/TokensDemo.native.js.map +1 -1
- package/dist/cjs/useOnIntersecting.js +4 -4
- package/dist/cjs/useOnIntersecting.js.map +1 -1
- package/dist/cjs/useOnIntersecting.native.js +4 -4
- package/dist/cjs/useOnIntersecting.native.js.map +1 -1
- package/dist/esm/AccordionDemo.mjs +25 -0
- package/dist/esm/AccordionDemo.mjs.map +6 -0
- package/dist/esm/AddThemeDemo.mjs +35 -0
- package/dist/esm/AddThemeDemo.mjs.map +1 -1
- package/dist/esm/AlertDialogDemo.mjs +53 -0
- package/dist/esm/AlertDialogDemo.mjs.map +1 -1
- package/dist/esm/AnimationsDemo.mjs +86 -0
- package/dist/esm/AnimationsDemo.mjs.map +1 -1
- package/dist/esm/AnimationsEnterDemo.mjs +35 -0
- package/dist/esm/AnimationsEnterDemo.mjs.map +1 -1
- package/dist/esm/AnimationsHoverDemo.mjs +27 -0
- package/dist/esm/AnimationsHoverDemo.mjs.map +1 -1
- package/dist/esm/AnimationsPresenceDemo.mjs +68 -0
- package/dist/esm/AnimationsPresenceDemo.mjs.map +1 -1
- package/dist/esm/AnimationsTimingDemo.mjs +26 -0
- package/dist/esm/AnimationsTimingDemo.mjs.map +1 -1
- package/dist/esm/AvatarDemo.mjs +30 -0
- package/dist/esm/AvatarDemo.mjs.map +1 -1
- package/dist/esm/BuildAButtonDemo.mjs +43 -0
- package/dist/esm/BuildAButtonDemo.mjs.map +6 -0
- package/dist/esm/ButtonDemo.mjs +25 -0
- package/dist/esm/ButtonDemo.mjs.map +1 -1
- package/dist/esm/CardDemo.mjs +48 -0
- package/dist/esm/CardDemo.mjs.map +1 -1
- package/dist/esm/CheckboxDemo.mjs +22 -0
- package/dist/esm/CheckboxDemo.mjs.map +1 -1
- package/dist/esm/ColorsDemo.mjs +89 -0
- package/dist/esm/ColorsDemo.mjs.map +1 -1
- package/dist/esm/DialogDemo.mjs +109 -0
- package/dist/esm/DialogDemo.mjs.map +2 -2
- package/dist/esm/FormsDemo.mjs +35 -0
- package/dist/esm/FormsDemo.mjs.map +1 -1
- package/dist/esm/Grid.mjs +37 -0
- package/dist/esm/Grid.mjs.map +6 -0
- package/dist/esm/GroupDemo.mjs +25 -0
- package/dist/esm/GroupDemo.mjs.map +1 -1
- package/dist/esm/HeadingsDemo.mjs +16 -0
- package/dist/esm/HeadingsDemo.mjs.map +1 -1
- package/dist/esm/ImageDemo.mjs +18 -0
- package/dist/esm/ImageDemo.mjs.map +1 -1
- package/dist/esm/InputsDemo.mjs +31 -0
- package/dist/esm/InputsDemo.mjs.map +1 -1
- package/dist/esm/LabelDemo.mjs +18 -0
- package/dist/esm/LabelDemo.mjs.map +1 -1
- package/dist/esm/LinearGradientDemo.mjs +33 -0
- package/dist/esm/LinearGradientDemo.mjs.map +1 -1
- package/dist/esm/ListItemDemo.mjs +47 -0
- package/dist/esm/ListItemDemo.mjs.map +1 -1
- package/dist/esm/LucideIconsDemo.mjs +53 -0
- package/dist/esm/LucideIconsDemo.mjs.map +1 -1
- package/dist/esm/PopoverDemo.mjs +82 -0
- package/dist/esm/PopoverDemo.mjs.map +1 -1
- package/dist/esm/ProgressDemo.mjs +56 -0
- package/dist/esm/ProgressDemo.mjs.map +1 -1
- package/dist/esm/RadioGroupDemo.mjs +21 -0
- package/dist/esm/RadioGroupDemo.mjs.map +1 -1
- package/dist/esm/ReplaceThemeDemo.mjs +45 -0
- package/dist/esm/ReplaceThemeDemo.mjs.map +1 -1
- package/dist/esm/ScrollViewDemo.mjs +28 -0
- package/dist/esm/ScrollViewDemo.mjs.map +1 -1
- package/dist/esm/SelectDemo.mjs +173 -0
- package/dist/esm/SelectDemo.mjs.map +1 -1
- package/dist/esm/SeparatorDemo.mjs +20 -0
- package/dist/esm/SeparatorDemo.mjs.map +1 -1
- package/dist/esm/ShapesDemo.mjs +12 -0
- package/dist/esm/ShapesDemo.mjs.map +1 -1
- package/dist/esm/SheetDemo.mjs +100 -0
- package/dist/esm/SheetDemo.mjs.map +1 -1
- package/dist/esm/SliderDemo.mjs +19 -0
- package/dist/esm/SliderDemo.mjs.map +1 -1
- package/dist/esm/SpinnerDemo.mjs +12 -0
- package/dist/esm/SpinnerDemo.mjs.map +1 -1
- package/dist/esm/StacksDemo.mjs +78 -0
- package/dist/esm/StacksDemo.mjs.map +1 -1
- package/dist/esm/SwitchDemo.mjs +45 -0
- package/dist/esm/SwitchDemo.mjs.map +1 -1
- package/dist/esm/TabsAdvancedDemo.mjs +239 -0
- package/dist/esm/TabsAdvancedDemo.mjs.map +1 -1
- package/dist/esm/TabsDemo.mjs +131 -0
- package/dist/esm/TabsDemo.mjs.map +1 -1
- package/dist/esm/TextDemo.mjs +16 -0
- package/dist/esm/TextDemo.mjs.map +1 -1
- package/dist/esm/ThemeBuilderDemo.mjs +134 -0
- package/dist/esm/ThemeBuilderDemo.mjs.map +6 -0
- package/dist/esm/ThemeInverseDemo.mjs +41 -0
- package/dist/esm/ThemeInverseDemo.mjs.map +1 -1
- package/dist/esm/ToastDemo.mjs +91 -0
- package/dist/esm/ToastDemo.mjs.map +1 -1
- package/dist/esm/ToastDuplicateDemo.mjs +44 -0
- package/dist/esm/ToastDuplicateDemo.mjs.map +1 -1
- package/dist/esm/ToggleGroupDemo.mjs +49 -0
- package/dist/esm/ToggleGroupDemo.mjs.map +1 -1
- package/dist/esm/TokensDemo.mjs +77 -0
- package/dist/esm/TokensDemo.mjs.map +1 -1
- package/dist/esm/TooltipDemo.mjs +67 -0
- package/dist/esm/TooltipDemo.mjs.map +1 -1
- package/dist/esm/UpdateThemeDemo.mjs +51 -0
- package/dist/esm/UpdateThemeDemo.mjs.map +1 -1
- package/dist/esm/index.mjs +50 -0
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/tamagui.config.mjs +8 -0
- package/dist/esm/tamagui.config.mjs.map +2 -2
- package/dist/esm/useOnIntersecting.mjs +50 -0
- package/dist/esm/useOnIntersecting.mjs.map +1 -1
- package/dist/jsx/SheetDemo.native.js +4 -1
- package/dist/jsx/SheetDemo.native.js.map +1 -1
- package/dist/jsx/TokensDemo.native.js +27 -24
- package/dist/jsx/TokensDemo.native.js.map +1 -1
- package/dist/jsx/useOnIntersecting.native.js +4 -4
- package/dist/jsx/useOnIntersecting.native.js.map +1 -1
- package/package.json +19 -18
|
@@ -0,0 +1,82 @@
|
|
|
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
|
+
YStack
|
|
10
|
+
} from "tamagui";
|
|
11
|
+
import { SelectDemoItem } from "./SelectDemo";
|
|
12
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
|
+
function PopoverDemo() {
|
|
14
|
+
return /* @__PURE__ */ jsxs(XStack, { space: "$2", flex: 1, justifyContent: "center", alignItems: "center", children: [
|
|
15
|
+
/* @__PURE__ */ jsx(Demo, { placement: "left", Icon: ChevronLeft, Name: "left-popover" }),
|
|
16
|
+
/* @__PURE__ */ jsx(Demo, { placement: "bottom", Icon: ChevronDown, Name: "bottom-popover" }),
|
|
17
|
+
/* @__PURE__ */ jsx(Demo, { placement: "top", Icon: ChevronUp, Name: "top-popover" }),
|
|
18
|
+
/* @__PURE__ */ jsx(Demo, { placement: "right", Icon: ChevronRight, Name: "right-popover" })
|
|
19
|
+
] });
|
|
20
|
+
}
|
|
21
|
+
function Demo({
|
|
22
|
+
Icon,
|
|
23
|
+
Name,
|
|
24
|
+
...props
|
|
25
|
+
}) {
|
|
26
|
+
return /* @__PURE__ */ jsxs(Popover, { size: "$5", allowFlip: !0, ...props, children: [
|
|
27
|
+
/* @__PURE__ */ jsx(Popover.Trigger, { asChild: !0, children: /* @__PURE__ */ jsx(Button, { icon: Icon }) }),
|
|
28
|
+
/* @__PURE__ */ jsx(Adapt, { when: "sm", platform: "touch", children: /* @__PURE__ */ jsxs(Popover.Sheet, { modal: !0, dismissOnSnapToBottom: !0, children: [
|
|
29
|
+
/* @__PURE__ */ jsx(Popover.Sheet.Frame, { padding: "$4", children: /* @__PURE__ */ jsx(Adapt.Contents, {}) }),
|
|
30
|
+
/* @__PURE__ */ jsx(
|
|
31
|
+
Popover.Sheet.Overlay,
|
|
32
|
+
{
|
|
33
|
+
animation: "lazy",
|
|
34
|
+
enterStyle: { opacity: 0 },
|
|
35
|
+
exitStyle: { opacity: 0 }
|
|
36
|
+
}
|
|
37
|
+
)
|
|
38
|
+
] }) }),
|
|
39
|
+
/* @__PURE__ */ jsxs(
|
|
40
|
+
Popover.Content,
|
|
41
|
+
{
|
|
42
|
+
borderWidth: 1,
|
|
43
|
+
borderColor: "$borderColor",
|
|
44
|
+
enterStyle: { y: -10, opacity: 0 },
|
|
45
|
+
exitStyle: { y: -10, opacity: 0 },
|
|
46
|
+
elevate: !0,
|
|
47
|
+
animation: [
|
|
48
|
+
"quick",
|
|
49
|
+
{
|
|
50
|
+
opacity: {
|
|
51
|
+
overshootClamping: !0
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
],
|
|
55
|
+
children: [
|
|
56
|
+
/* @__PURE__ */ jsx(Popover.Arrow, { borderWidth: 1, borderColor: "$borderColor" }),
|
|
57
|
+
/* @__PURE__ */ jsxs(YStack, { space: "$3", children: [
|
|
58
|
+
/* @__PURE__ */ jsxs(XStack, { space: "$3", children: [
|
|
59
|
+
/* @__PURE__ */ jsx(Label, { size: "$3", htmlFor: Name, children: "Name" }),
|
|
60
|
+
/* @__PURE__ */ jsx(Input, { size: "$3", id: Name })
|
|
61
|
+
] }),
|
|
62
|
+
/* @__PURE__ */ jsx(SelectDemoItem, {}),
|
|
63
|
+
/* @__PURE__ */ jsx(Popover.Close, { asChild: !0, children: /* @__PURE__ */ jsx(
|
|
64
|
+
Button,
|
|
65
|
+
{
|
|
66
|
+
size: "$3",
|
|
67
|
+
onPress: () => {
|
|
68
|
+
},
|
|
69
|
+
children: "Submit"
|
|
70
|
+
}
|
|
71
|
+
) })
|
|
72
|
+
] })
|
|
73
|
+
]
|
|
74
|
+
}
|
|
75
|
+
)
|
|
76
|
+
] });
|
|
77
|
+
}
|
|
78
|
+
export {
|
|
79
|
+
Demo,
|
|
80
|
+
PopoverDemo
|
|
81
|
+
};
|
|
82
|
+
//# sourceMappingURL=PopoverDemo.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/PopoverDemo.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "AAAA,SAAS,aAAa,aAAa,cAAc,iBAAiB;AAClE;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,sBAAsB;AAI3B,SACE,KADF;AAFG,SAAS,cAAc;AAC5B,SACE,qBAAC,UAAO,OAAM,MAAK,MAAM,GAAG,gBAAe,UAAS,YAAW,UAC7D;AAAA,wBAAC,QAAK,WAAU,QAAO,MAAM,aAAa,MAAK,gBAAe;AAAA,IAC9D,oBAAC,QAAK,WAAU,UAAS,MAAM,aAAa,MAAK,kBAAiB;AAAA,IAClE,oBAAC,QAAK,WAAU,OAAM,MAAM,WAAW,MAAK,eAAc;AAAA,IAC1D,oBAAC,QAAK,WAAU,SAAQ,MAAM,cAAc,MAAK,iBAAgB;AAAA,KACnE;AAEJ;AAEO,SAAS,KAAK;AAAA,EACnB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAiD;AAC/C,SACE,qBAAC,WAAQ,MAAK,MAAK,WAAS,IAAE,GAAG,OAC/B;AAAA,wBAAC,QAAQ,SAAR,EAAgB,SAAO,IACtB,8BAAC,UAAO,MAAM,MAAM,GACtB;AAAA,IAEA,oBAAC,SAAM,MAAK,MAAK,UAAS,SACxB,+BAAC,QAAQ,OAAR,EAAc,OAAK,IAAC,uBAAqB,IACxC;AAAA,0BAAC,QAAQ,MAAM,OAAd,EAAoB,SAAQ,MAC3B,8BAAC,MAAM,UAAN,EAAe,GAClB;AAAA,MACA;AAAA,QAAC,QAAQ,MAAM;AAAA,QAAd;AAAA,UACC,WAAU;AAAA,UACV,YAAY,EAAE,SAAS,EAAE;AAAA,UACzB,WAAW,EAAE,SAAS,EAAE;AAAA;AAAA,MAC1B;AAAA,OACF,GACF;AAAA,IAEA;AAAA,MAAC,QAAQ;AAAA,MAAR;AAAA,QACC,aAAa;AAAA,QACb,aAAY;AAAA,QACZ,YAAY,EAAE,GAAG,KAAK,SAAS,EAAE;AAAA,QACjC,WAAW,EAAE,GAAG,KAAK,SAAS,EAAE;AAAA,QAChC,SAAO;AAAA,QACP,WAAW;AAAA,UACT;AAAA,UACA;AAAA,YACE,SAAS;AAAA,cACP,mBAAmB;AAAA,YACrB;AAAA,UACF;AAAA,QACF;AAAA,QAEA;AAAA,8BAAC,QAAQ,OAAR,EAAc,aAAa,GAAG,aAAY,gBAAe;AAAA,UAE1D,qBAAC,UAAO,OAAM,MACZ;AAAA,iCAAC,UAAO,OAAM,MACZ;AAAA,kCAAC,SAAM,MAAK,MAAK,SAAS,MAAM,kBAEhC;AAAA,cACA,oBAAC,SAAM,MAAK,MAAK,IAAI,MAAM;AAAA,eAC7B;AAAA,YAEA,oBAAC,kBAAe;AAAA,YAEhB,oBAAC,QAAQ,OAAR,EAAc,SAAO,IACpB;AAAA,cAAC;AAAA;AAAA,gBACC,MAAK;AAAA,gBACL,SAAS,MAAM;AAAA,gBAEf;AAAA,gBACD;AAAA;AAAA,YAED,GACF;AAAA,aACF;AAAA;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { useEffect, useState } from "react";
|
|
2
|
+
import { Button, Paragraph, Progress, Slider, XStack, YStack } from "tamagui";
|
|
3
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
function ProgressDemo() {
|
|
5
|
+
const [size, setSize] = useState(4), [progress, setProgress] = useState(20), sizeProp = `$${size}`;
|
|
6
|
+
return useEffect(() => {
|
|
7
|
+
const timer = setTimeout(() => setProgress(60), 1e3);
|
|
8
|
+
return () => {
|
|
9
|
+
clearTimeout(timer);
|
|
10
|
+
};
|
|
11
|
+
}, []), /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
12
|
+
/* @__PURE__ */ jsxs(YStack, { height: 60, alignItems: "center", space: !0, children: [
|
|
13
|
+
/* @__PURE__ */ jsxs(Paragraph, { height: 30, opacity: 0.5, children: [
|
|
14
|
+
"Size: ",
|
|
15
|
+
size
|
|
16
|
+
] }),
|
|
17
|
+
/* @__PURE__ */ jsx(Progress, { size: sizeProp, value: progress, children: /* @__PURE__ */ jsx(Progress.Indicator, { animation: "bouncy" }) })
|
|
18
|
+
] }),
|
|
19
|
+
/* @__PURE__ */ jsxs(
|
|
20
|
+
XStack,
|
|
21
|
+
{
|
|
22
|
+
alignItems: "center",
|
|
23
|
+
space: !0,
|
|
24
|
+
position: "absolute",
|
|
25
|
+
bottom: "$3",
|
|
26
|
+
left: "$4",
|
|
27
|
+
$xxs: { display: "none" },
|
|
28
|
+
children: [
|
|
29
|
+
/* @__PURE__ */ jsxs(
|
|
30
|
+
Slider,
|
|
31
|
+
{
|
|
32
|
+
size: "$2",
|
|
33
|
+
width: 130,
|
|
34
|
+
defaultValue: [4],
|
|
35
|
+
min: 2,
|
|
36
|
+
max: 6,
|
|
37
|
+
step: 1,
|
|
38
|
+
onValueChange: ([val]) => {
|
|
39
|
+
setSize(val);
|
|
40
|
+
},
|
|
41
|
+
children: [
|
|
42
|
+
/* @__PURE__ */ jsx(Slider.Track, { borderWidth: 1, borderColor: "$color5", children: /* @__PURE__ */ jsx(Slider.TrackActive, {}) }),
|
|
43
|
+
/* @__PURE__ */ jsx(Slider.Thumb, { circular: !0, index: 0 })
|
|
44
|
+
]
|
|
45
|
+
}
|
|
46
|
+
),
|
|
47
|
+
/* @__PURE__ */ jsx(Button, { size: "$2", onPress: () => setProgress((prev) => (prev + 20) % 100), children: "Load" })
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
)
|
|
51
|
+
] });
|
|
52
|
+
}
|
|
53
|
+
export {
|
|
54
|
+
ProgressDemo
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=ProgressDemo.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ProgressDemo.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "AAAA,SAAS,WAAW,gBAAgB;AACpC,SAAS,QAAQ,WAAW,UAAsB,QAAQ,QAAQ,cAAc;AAe5E,mBAMM,KAJF,YAFJ;AAbG,SAAS,eAAe;AAC7B,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,CAAC,GAC5B,CAAC,UAAU,WAAW,IAAI,SAAS,EAAE,GACrC,WAAW,IAAI,IAAI;AAEzB,mBAAU,MAAM;AACd,UAAM,QAAQ,WAAW,MAAM,YAAY,EAAE,GAAG,GAAI;AACpD,WAAO,MAAM;AACX,mBAAa,KAAK;AAAA,IACpB;AAAA,EACF,GAAG,CAAC,CAAC,GAGH,iCACE;AAAA,yBAAC,UAAO,QAAQ,IAAI,YAAW,UAAS,OAAK,IAC3C;AAAA,2BAAC,aAAU,QAAQ,IAAI,SAAS,KAAK;AAAA;AAAA,QAC5B;AAAA,SACT;AAAA,MACA,oBAAC,YAAS,MAAM,UAAU,OAAO,UAC/B,8BAAC,SAAS,WAAT,EAAmB,WAAU,UAAS,GACzC;AAAA,OACF;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,YAAW;AAAA,QACX,OAAK;AAAA,QACL,UAAS;AAAA,QACT,QAAO;AAAA,QACP,MAAK;AAAA,QACL,MAAM,EAAE,SAAS,OAAO;AAAA,QAExB;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,OAAO;AAAA,cACP,cAAc,CAAC,CAAC;AAAA,cAChB,KAAK;AAAA,cACL,KAAK;AAAA,cACL,MAAM;AAAA,cACN,eAAe,CAAC,CAAC,GAAG,MAAM;AACxB,wBAAQ,GAAG;AAAA,cACb;AAAA,cAEA;AAAA,oCAAC,OAAO,OAAP,EAAa,aAAa,GAAG,aAAY,WACxC,8BAAC,OAAO,aAAP,EAAmB,GACtB;AAAA,gBACA,oBAAC,OAAO,OAAP,EAAa,UAAQ,IAAC,OAAO,GAAG;AAAA;AAAA;AAAA,UACnC;AAAA,UAEA,oBAAC,UAAO,MAAK,MAAK,SAAS,MAAM,YAAY,CAAC,UAAU,OAAO,MAAM,GAAG,GAAG,kBAE3E;AAAA;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Label, RadioGroup, XStack, YStack } from "tamagui";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
function RadioGroupDemo() {
|
|
4
|
+
return /* @__PURE__ */ jsx(RadioGroup, { defaultValue: "3", name: "form", children: /* @__PURE__ */ jsxs(YStack, { width: 300, alignItems: "center", space: "$2", children: [
|
|
5
|
+
/* @__PURE__ */ jsx(RadioGroupItemWithLabel, { size: "$3", value: "2", label: "Second value" }),
|
|
6
|
+
/* @__PURE__ */ jsx(RadioGroupItemWithLabel, { size: "$4", value: "3", label: "Third value" }),
|
|
7
|
+
/* @__PURE__ */ jsx(RadioGroupItemWithLabel, { size: "$5", value: "4", label: "Fourth value" })
|
|
8
|
+
] }) });
|
|
9
|
+
}
|
|
10
|
+
function RadioGroupItemWithLabel(props) {
|
|
11
|
+
const id = `radiogroup-${props.value}`;
|
|
12
|
+
return /* @__PURE__ */ jsxs(XStack, { width: 300, alignItems: "center", space: "$4", children: [
|
|
13
|
+
/* @__PURE__ */ jsx(RadioGroup.Item, { value: props.value, id, size: props.size, children: /* @__PURE__ */ jsx(RadioGroup.Indicator, {}) }),
|
|
14
|
+
/* @__PURE__ */ jsx(Label, { size: props.size, htmlFor: id, children: props.label })
|
|
15
|
+
] });
|
|
16
|
+
}
|
|
17
|
+
export {
|
|
18
|
+
RadioGroupDemo,
|
|
19
|
+
RadioGroupItemWithLabel
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=RadioGroupDemo.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/RadioGroupDemo.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "AAAA,SAAS,OAAO,YAAwC,QAAQ,cAAc;AAKxE,SACE,KADF;AAHC,SAAS,iBAAiB;AAC/B,SACE,oBAAC,cAAW,cAAa,KAAI,MAAK,QAChC,+BAAC,UAAO,OAAO,KAAK,YAAW,UAAS,OAAM,MAC5C;AAAA,wBAAC,2BAAwB,MAAK,MAAK,OAAM,KAAI,OAAM,gBAAe;AAAA,IAClE,oBAAC,2BAAwB,MAAK,MAAK,OAAM,KAAI,OAAM,eAAc;AAAA,IACjE,oBAAC,2BAAwB,MAAK,MAAK,OAAM,KAAI,OAAM,gBAAe;AAAA,KACpE,GACF;AAEJ;AAEO,SAAS,wBAAwB,OAIrC;AACD,QAAM,KAAK,cAAc,MAAM,KAAK;AACpC,SACE,qBAAC,UAAO,OAAO,KAAK,YAAW,UAAS,OAAM,MAC5C;AAAA,wBAAC,WAAW,MAAX,EAAgB,OAAO,MAAM,OAAO,IAAQ,MAAM,MAAM,MACvD,8BAAC,WAAW,WAAX,EAAqB,GACxB;AAAA,IAEA,oBAAC,SAAM,MAAM,MAAM,MAAM,SAAS,IAC/B,gBAAM,OACT;AAAA,KACF;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { addTheme, replaceTheme } from "@tamagui/theme";
|
|
2
|
+
import { useState } from "react";
|
|
3
|
+
import {
|
|
4
|
+
Button,
|
|
5
|
+
Square,
|
|
6
|
+
Theme,
|
|
7
|
+
XStack,
|
|
8
|
+
YStack,
|
|
9
|
+
useForceUpdate,
|
|
10
|
+
useIsomorphicLayoutEffect
|
|
11
|
+
} from "tamagui";
|
|
12
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
|
+
function ReplaceThemeDemo() {
|
|
14
|
+
const [theme, setTheme] = useState(), update = useForceUpdate();
|
|
15
|
+
return useIsomorphicLayoutEffect(() => {
|
|
16
|
+
addTheme({
|
|
17
|
+
name: "mytheme",
|
|
18
|
+
insertCSS: !0,
|
|
19
|
+
theme: {
|
|
20
|
+
color: "red",
|
|
21
|
+
color2: "green"
|
|
22
|
+
}
|
|
23
|
+
}), setTheme("mytheme");
|
|
24
|
+
}, []), /* @__PURE__ */ jsxs(YStack, { alignItems: "center", space: !0, children: [
|
|
25
|
+
/* @__PURE__ */ jsx(XStack, { gap: "$5", children: /* @__PURE__ */ jsx(Theme, { name: theme ?? null, children: /* @__PURE__ */ jsx(Square, { borderRadius: "$8", size: 100, backgroundColor: "$color" }) }) }),
|
|
26
|
+
/* @__PURE__ */ jsx(
|
|
27
|
+
Button,
|
|
28
|
+
{
|
|
29
|
+
onPress: () => {
|
|
30
|
+
replaceTheme({
|
|
31
|
+
name: "mytheme",
|
|
32
|
+
theme: {
|
|
33
|
+
color: "blue"
|
|
34
|
+
}
|
|
35
|
+
}), update();
|
|
36
|
+
},
|
|
37
|
+
children: "Replace theme to only have $color: blue"
|
|
38
|
+
}
|
|
39
|
+
)
|
|
40
|
+
] });
|
|
41
|
+
}
|
|
42
|
+
export {
|
|
43
|
+
ReplaceThemeDemo
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=ReplaceThemeDemo.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ReplaceThemeDemo.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "AAAA,SAAS,UAAU,oBAAoB;AACvC,SAAS,gBAAgB;AACzB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAmBH,SAGM,KAHN;AAjBG,SAAS,mBAAmB;AACjC,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAc,GAClC,SAAS,eAAe;AAE9B,mCAA0B,MAAM;AAC9B,aAAS;AAAA,MACP,MAAM;AAAA,MACN,WAAW;AAAA,MACX,OAAO;AAAA,QACL,OAAO;AAAA,QACP,QAAQ;AAAA,MACV;AAAA,IACF,CAAC,GACD,SAAS,SAAS;AAAA,EACpB,GAAG,CAAC,CAAC,GAGH,qBAAC,UAAO,YAAW,UAAS,OAAK,IAC/B;AAAA,wBAAC,UAAO,KAAI,MACV,8BAAC,SAAM,MAAM,SAAS,MACpB,8BAAC,UAAO,cAAa,MAAK,MAAM,KAAK,iBAAgB,UAAS,GAChE,GACF;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,SAAS,MAAM;AACb,uBAAa;AAAA,YACX,MAAM;AAAA,YACN,OAAO;AAAA,cACL,OAAO;AAAA,YACT;AAAA,UACF,CAAC,GACD,OAAO;AAAA,QACT;AAAA,QACD;AAAA;AAAA,IAED;AAAA,KACF;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Circle, ScrollView, Square, XStack } from "tamagui";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
function ScrollViewDemo() {
|
|
4
|
+
return /* @__PURE__ */ jsx(
|
|
5
|
+
ScrollView,
|
|
6
|
+
{
|
|
7
|
+
maxHeight: 250,
|
|
8
|
+
width: "75%",
|
|
9
|
+
backgroundColor: "$background",
|
|
10
|
+
padding: "$4",
|
|
11
|
+
borderRadius: "$4",
|
|
12
|
+
children: /* @__PURE__ */ jsxs(XStack, { flexWrap: "wrap", alignItems: "center", justifyContent: "center", children: [
|
|
13
|
+
/* @__PURE__ */ jsx(Square, { margin: "$4", size: 120, backgroundColor: "$red9" }),
|
|
14
|
+
/* @__PURE__ */ jsx(Circle, { margin: "$4", size: 120, backgroundColor: "$orange9" }),
|
|
15
|
+
/* @__PURE__ */ jsx(Square, { margin: "$4", size: 120, backgroundColor: "$yellow9" }),
|
|
16
|
+
/* @__PURE__ */ jsx(Circle, { margin: "$4", size: 120, backgroundColor: "$green9" }),
|
|
17
|
+
/* @__PURE__ */ jsx(Square, { margin: "$4", size: 120, backgroundColor: "$blue9" }),
|
|
18
|
+
/* @__PURE__ */ jsx(Circle, { margin: "$4", size: 120, backgroundColor: "$purple9" }),
|
|
19
|
+
/* @__PURE__ */ jsx(Square, { margin: "$4", size: 120, backgroundColor: "$pink9" }),
|
|
20
|
+
/* @__PURE__ */ jsx(Circle, { margin: "$4", size: 120, backgroundColor: "$red9" })
|
|
21
|
+
] })
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
export {
|
|
26
|
+
ScrollViewDemo
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=ScrollViewDemo.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ScrollViewDemo.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "AAAA,SAAS,QAAQ,YAAY,QAAQ,cAAc;AAW7C,SACE,KADF;AATC,SAAS,iBAAiB;AAC/B,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,MACX,OAAM;AAAA,MACN,iBAAgB;AAAA,MAChB,SAAQ;AAAA,MACR,cAAa;AAAA,MAEb,+BAAC,UAAO,UAAS,QAAO,YAAW,UAAS,gBAAe,UACzD;AAAA,4BAAC,UAAO,QAAO,MAAK,MAAM,KAAK,iBAAgB,SAAQ;AAAA,QACvD,oBAAC,UAAO,QAAO,MAAK,MAAM,KAAK,iBAAgB,YAAW;AAAA,QAC1D,oBAAC,UAAO,QAAO,MAAK,MAAM,KAAK,iBAAgB,YAAW;AAAA,QAC1D,oBAAC,UAAO,QAAO,MAAK,MAAM,KAAK,iBAAgB,WAAU;AAAA,QACzD,oBAAC,UAAO,QAAO,MAAK,MAAM,KAAK,iBAAgB,UAAS;AAAA,QACxD,oBAAC,UAAO,QAAO,MAAK,MAAM,KAAK,iBAAgB,YAAW;AAAA,QAC1D,oBAAC,UAAO,QAAO,MAAK,MAAM,KAAK,iBAAgB,UAAS;AAAA,QACxD,oBAAC,UAAO,QAAO,MAAK,MAAM,KAAK,iBAAgB,SAAQ;AAAA,SACzD;AAAA;AAAA,EACF;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { Check, ChevronDown, ChevronUp } from "@tamagui/lucide-icons";
|
|
2
|
+
import { useMemo, useState } from "react";
|
|
3
|
+
import {
|
|
4
|
+
Adapt,
|
|
5
|
+
Label,
|
|
6
|
+
Select,
|
|
7
|
+
Sheet,
|
|
8
|
+
XStack,
|
|
9
|
+
YStack,
|
|
10
|
+
getFontSize
|
|
11
|
+
} from "tamagui";
|
|
12
|
+
import { LinearGradient } from "tamagui/linear-gradient";
|
|
13
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
14
|
+
function SelectDemo() {
|
|
15
|
+
return /* @__PURE__ */ jsxs(YStack, { space: !0, children: [
|
|
16
|
+
/* @__PURE__ */ jsxs(XStack, { ai: "center", space: !0, children: [
|
|
17
|
+
/* @__PURE__ */ jsx(Label, { f: 1, fb: 0, children: "Custom" }),
|
|
18
|
+
/* @__PURE__ */ jsx(SelectDemoItem, {})
|
|
19
|
+
] }),
|
|
20
|
+
/* @__PURE__ */ jsxs(XStack, { ai: "center", space: !0, children: [
|
|
21
|
+
/* @__PURE__ */ jsx(Label, { f: 1, fb: 0, children: "Native" }),
|
|
22
|
+
/* @__PURE__ */ jsx(SelectDemoItem, { native: !0 })
|
|
23
|
+
] })
|
|
24
|
+
] });
|
|
25
|
+
}
|
|
26
|
+
function SelectDemoItem(props) {
|
|
27
|
+
const [val, setVal] = useState("apple");
|
|
28
|
+
return /* @__PURE__ */ jsxs(Select, { id: "food", value: val, onValueChange: setVal, ...props, children: [
|
|
29
|
+
/* @__PURE__ */ jsx(Select.Trigger, { width: 220, iconAfter: ChevronDown, children: /* @__PURE__ */ jsx(Select.Value, { placeholder: "Something" }) }),
|
|
30
|
+
/* @__PURE__ */ jsx(Adapt, { when: "sm", platform: "touch", children: /* @__PURE__ */ jsxs(
|
|
31
|
+
Sheet,
|
|
32
|
+
{
|
|
33
|
+
native: !!props.native,
|
|
34
|
+
modal: !0,
|
|
35
|
+
dismissOnSnapToBottom: !0,
|
|
36
|
+
animationConfig: {
|
|
37
|
+
type: "spring",
|
|
38
|
+
damping: 20,
|
|
39
|
+
mass: 1.2,
|
|
40
|
+
stiffness: 250
|
|
41
|
+
},
|
|
42
|
+
children: [
|
|
43
|
+
/* @__PURE__ */ jsx(Sheet.Frame, { children: /* @__PURE__ */ jsx(Sheet.ScrollView, { children: /* @__PURE__ */ jsx(Adapt.Contents, {}) }) }),
|
|
44
|
+
/* @__PURE__ */ jsx(
|
|
45
|
+
Sheet.Overlay,
|
|
46
|
+
{
|
|
47
|
+
animation: "lazy",
|
|
48
|
+
enterStyle: { opacity: 0 },
|
|
49
|
+
exitStyle: { opacity: 0 }
|
|
50
|
+
}
|
|
51
|
+
)
|
|
52
|
+
]
|
|
53
|
+
}
|
|
54
|
+
) }),
|
|
55
|
+
/* @__PURE__ */ jsxs(Select.Content, { zIndex: 2e5, children: [
|
|
56
|
+
/* @__PURE__ */ jsxs(
|
|
57
|
+
Select.ScrollUpButton,
|
|
58
|
+
{
|
|
59
|
+
alignItems: "center",
|
|
60
|
+
justifyContent: "center",
|
|
61
|
+
position: "relative",
|
|
62
|
+
width: "100%",
|
|
63
|
+
height: "$3",
|
|
64
|
+
children: [
|
|
65
|
+
/* @__PURE__ */ jsx(YStack, { zIndex: 10, children: /* @__PURE__ */ jsx(ChevronUp, { size: 20 }) }),
|
|
66
|
+
/* @__PURE__ */ jsx(
|
|
67
|
+
LinearGradient,
|
|
68
|
+
{
|
|
69
|
+
start: [0, 0],
|
|
70
|
+
end: [0, 1],
|
|
71
|
+
fullscreen: !0,
|
|
72
|
+
colors: ["$background", "$backgroundTransparent"],
|
|
73
|
+
borderRadius: "$4"
|
|
74
|
+
}
|
|
75
|
+
)
|
|
76
|
+
]
|
|
77
|
+
}
|
|
78
|
+
),
|
|
79
|
+
/* @__PURE__ */ jsxs(
|
|
80
|
+
Select.Viewport,
|
|
81
|
+
{
|
|
82
|
+
minWidth: 200,
|
|
83
|
+
children: [
|
|
84
|
+
/* @__PURE__ */ jsxs(Select.Group, { children: [
|
|
85
|
+
/* @__PURE__ */ jsx(Select.Label, { children: "Fruits" }),
|
|
86
|
+
useMemo(
|
|
87
|
+
() => items.map((item, i) => /* @__PURE__ */ jsxs(
|
|
88
|
+
Select.Item,
|
|
89
|
+
{
|
|
90
|
+
index: i,
|
|
91
|
+
value: item.name.toLowerCase(),
|
|
92
|
+
children: [
|
|
93
|
+
/* @__PURE__ */ jsx(Select.ItemText, { children: item.name }),
|
|
94
|
+
/* @__PURE__ */ jsx(Select.ItemIndicator, { marginLeft: "auto", children: /* @__PURE__ */ jsx(Check, { size: 16 }) })
|
|
95
|
+
]
|
|
96
|
+
},
|
|
97
|
+
item.name
|
|
98
|
+
)),
|
|
99
|
+
[items]
|
|
100
|
+
)
|
|
101
|
+
] }),
|
|
102
|
+
props.native && /* @__PURE__ */ jsx(
|
|
103
|
+
YStack,
|
|
104
|
+
{
|
|
105
|
+
position: "absolute",
|
|
106
|
+
right: 0,
|
|
107
|
+
top: 0,
|
|
108
|
+
bottom: 0,
|
|
109
|
+
alignItems: "center",
|
|
110
|
+
justifyContent: "center",
|
|
111
|
+
width: "$4",
|
|
112
|
+
pointerEvents: "none",
|
|
113
|
+
children: /* @__PURE__ */ jsx(ChevronDown, { size: getFontSize(props.size ?? "$true") })
|
|
114
|
+
}
|
|
115
|
+
)
|
|
116
|
+
]
|
|
117
|
+
}
|
|
118
|
+
),
|
|
119
|
+
/* @__PURE__ */ jsxs(
|
|
120
|
+
Select.ScrollDownButton,
|
|
121
|
+
{
|
|
122
|
+
alignItems: "center",
|
|
123
|
+
justifyContent: "center",
|
|
124
|
+
position: "relative",
|
|
125
|
+
width: "100%",
|
|
126
|
+
height: "$3",
|
|
127
|
+
children: [
|
|
128
|
+
/* @__PURE__ */ jsx(YStack, { zIndex: 10, children: /* @__PURE__ */ jsx(ChevronDown, { size: 20 }) }),
|
|
129
|
+
/* @__PURE__ */ jsx(
|
|
130
|
+
LinearGradient,
|
|
131
|
+
{
|
|
132
|
+
start: [0, 0],
|
|
133
|
+
end: [0, 1],
|
|
134
|
+
fullscreen: !0,
|
|
135
|
+
colors: ["$backgroundTransparent", "$background"],
|
|
136
|
+
borderRadius: "$4"
|
|
137
|
+
}
|
|
138
|
+
)
|
|
139
|
+
]
|
|
140
|
+
}
|
|
141
|
+
)
|
|
142
|
+
] })
|
|
143
|
+
] });
|
|
144
|
+
}
|
|
145
|
+
const items = [
|
|
146
|
+
{ name: "Apple" },
|
|
147
|
+
{ name: "Pear" },
|
|
148
|
+
{ name: "Blackberry" },
|
|
149
|
+
{ name: "Peach" },
|
|
150
|
+
{ name: "Apricot" },
|
|
151
|
+
{ name: "Melon" },
|
|
152
|
+
{ name: "Honeydew" },
|
|
153
|
+
{ name: "Starfruit" },
|
|
154
|
+
{ name: "Blueberry" },
|
|
155
|
+
{ name: "Raspberry" },
|
|
156
|
+
{ name: "Strawberry" },
|
|
157
|
+
{ name: "Mango" },
|
|
158
|
+
{ name: "Pineapple" },
|
|
159
|
+
{ name: "Lime" },
|
|
160
|
+
{ name: "Lemon" },
|
|
161
|
+
{ name: "Coconut" },
|
|
162
|
+
{ name: "Guava" },
|
|
163
|
+
{ name: "Papaya" },
|
|
164
|
+
{ name: "Orange" },
|
|
165
|
+
{ name: "Grape" },
|
|
166
|
+
{ name: "Jackfruit" },
|
|
167
|
+
{ name: "Durian" }
|
|
168
|
+
];
|
|
169
|
+
export {
|
|
170
|
+
SelectDemo,
|
|
171
|
+
SelectDemoItem
|
|
172
|
+
};
|
|
173
|
+
//# sourceMappingURL=SelectDemo.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/SelectDemo.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Paragraph, Separator, XStack, YStack } from "tamagui";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
function SeparatorDemo() {
|
|
4
|
+
return /* @__PURE__ */ jsxs(YStack, { width: "100%", maxWidth: 300, marginHorizontal: 15, children: [
|
|
5
|
+
/* @__PURE__ */ jsx(Paragraph, { fontWeight: "800", children: "Tamagui" }),
|
|
6
|
+
/* @__PURE__ */ jsx(Paragraph, { children: "A cross-platform component library." }),
|
|
7
|
+
/* @__PURE__ */ jsx(Separator, { marginVertical: 15 }),
|
|
8
|
+
/* @__PURE__ */ jsxs(XStack, { height: 20, alignItems: "center", children: [
|
|
9
|
+
/* @__PURE__ */ jsx(Paragraph, { children: "Blog" }),
|
|
10
|
+
/* @__PURE__ */ jsx(Separator, { alignSelf: "stretch", vertical: !0, marginHorizontal: 15 }),
|
|
11
|
+
/* @__PURE__ */ jsx(Paragraph, { children: "Docs" }),
|
|
12
|
+
/* @__PURE__ */ jsx(Separator, { alignSelf: "stretch", vertical: !0, marginHorizontal: 15 }),
|
|
13
|
+
/* @__PURE__ */ jsx(Paragraph, { children: "Source" })
|
|
14
|
+
] })
|
|
15
|
+
] });
|
|
16
|
+
}
|
|
17
|
+
export {
|
|
18
|
+
SeparatorDemo
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=SeparatorDemo.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/SeparatorDemo.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "AACA,SAAS,WAAW,WAAW,QAAQ,cAAc;AAK/C,cAGA,YAHA;AAHC,SAAS,gBAAgB;AAC9B,SACE,qBAAC,UAAO,OAAM,QAAO,UAAU,KAAK,kBAAkB,IACpD;AAAA,wBAAC,aAAU,YAAW,OAAM,qBAAO;AAAA,IACnC,oBAAC,aAAU,iDAAmC;AAAA,IAC9C,oBAAC,aAAU,gBAAgB,IAAI;AAAA,IAC/B,qBAAC,UAAO,QAAQ,IAAI,YAAW,UAC7B;AAAA,0BAAC,aAAU,kBAAI;AAAA,MACf,oBAAC,aAAU,WAAU,WAAU,UAAQ,IAAC,kBAAkB,IAAI;AAAA,MAC9D,oBAAC,aAAU,kBAAI;AAAA,MACf,oBAAC,aAAU,WAAU,WAAU,UAAQ,IAAC,kBAAkB,IAAI;AAAA,MAC9D,oBAAC,aAAU,oBAAM;AAAA,OACnB;AAAA,KACF;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Circle, Square, XStack } from "tamagui";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
function ShapesDemo() {
|
|
4
|
+
return /* @__PURE__ */ jsxs(XStack, { padding: "$2", space: "$4", children: [
|
|
5
|
+
/* @__PURE__ */ jsx(Square, { size: 100, backgroundColor: "$color", elevation: "$4" }),
|
|
6
|
+
/* @__PURE__ */ jsx(Circle, { size: 100, backgroundColor: "$color", elevation: "$4" })
|
|
7
|
+
] });
|
|
8
|
+
}
|
|
9
|
+
export {
|
|
10
|
+
ShapesDemo
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=ShapesDemo.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ShapesDemo.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "AAAA,SAAS,QAAQ,QAAQ,cAAc;AAInC,SACE,KADF;AAFG,SAAS,aAAa;AAC3B,SACE,qBAAC,UAAO,SAAQ,MAAK,OAAM,MACzB;AAAA,wBAAC,UAAO,MAAM,KAAK,iBAAgB,UAAS,WAAU,MAAK;AAAA,IAC3D,oBAAC,UAAO,MAAM,KAAK,iBAAgB,UAAS,WAAU,MAAK;AAAA,KAC7D;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { ChevronDown, ChevronUp } from "@tamagui/lucide-icons";
|
|
2
|
+
import { Sheet } from "@tamagui/sheet";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
import { Button, H2, Input, Paragraph, XStack, YStack } from "tamagui";
|
|
5
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
const spModes = ["percent", "constant", "fit", "mixed"], SheetDemo = () => {
|
|
7
|
+
const [position, setPosition] = useState(0), [open, setOpen] = useState(!1), [modal, setModal] = useState(!0), [innerOpen, setInnerOpen] = useState(!1), [snapPointsMode, setSnapPointsMode] = useState("percent"), [mixedFitDemo, setMixedFitDemo] = useState(!1), isPercent = snapPointsMode === "percent", isConstant = snapPointsMode === "constant", isFit = snapPointsMode === "fit", isMixed = snapPointsMode === "mixed", hasFit = isFit || isMixed && mixedFitDemo, snapPoints = isPercent ? [85, 50, 25] : isConstant ? [256, 190] : isFit ? void 0 : mixedFitDemo ? ["fit", 110] : ["80%", 256, 190];
|
|
8
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
9
|
+
/* @__PURE__ */ jsxs(YStack, { space: !0, children: [
|
|
10
|
+
/* @__PURE__ */ jsxs(XStack, { space: !0, $sm: { flexDirection: "column", alignItems: "center" }, children: [
|
|
11
|
+
/* @__PURE__ */ jsx(Button, { onPress: () => setOpen(!0), children: "Open" }),
|
|
12
|
+
/* @__PURE__ */ jsx(Button, { onPress: () => setModal((x) => !x), children: modal ? "Type: Modal" : "Type: Inline" }),
|
|
13
|
+
/* @__PURE__ */ jsx(
|
|
14
|
+
Button,
|
|
15
|
+
{
|
|
16
|
+
onPress: () => setSnapPointsMode(
|
|
17
|
+
(prev) => spModes[(spModes.indexOf(prev) + 1) % spModes.length]
|
|
18
|
+
),
|
|
19
|
+
children: `Mode: ${{ percent: "Percentage", constant: "Constant", fit: "Fit", mixed: "Mixed" }[snapPointsMode]}`
|
|
20
|
+
}
|
|
21
|
+
)
|
|
22
|
+
] }),
|
|
23
|
+
isMixed ? /* @__PURE__ */ jsx(Button, { onPress: () => setMixedFitDemo((x) => !x), children: `Snap Points: ${JSON.stringify(snapPoints)}` }) : /* @__PURE__ */ jsx(XStack, { paddingVertical: "$2.5", justifyContent: "center", children: /* @__PURE__ */ jsx(Paragraph, { children: `Snap Points: ${isFit ? "(none)" : JSON.stringify(snapPoints)}` }) })
|
|
24
|
+
] }),
|
|
25
|
+
/* @__PURE__ */ jsxs(
|
|
26
|
+
Sheet,
|
|
27
|
+
{
|
|
28
|
+
forceRemoveScrollEnabled: open,
|
|
29
|
+
modal,
|
|
30
|
+
open,
|
|
31
|
+
onOpenChange: setOpen,
|
|
32
|
+
snapPoints,
|
|
33
|
+
snapPointsMode,
|
|
34
|
+
dismissOnSnapToBottom: !0,
|
|
35
|
+
position,
|
|
36
|
+
onPositionChange: setPosition,
|
|
37
|
+
zIndex: 1e5,
|
|
38
|
+
animation: "medium",
|
|
39
|
+
children: [
|
|
40
|
+
/* @__PURE__ */ jsx(
|
|
41
|
+
Sheet.Overlay,
|
|
42
|
+
{
|
|
43
|
+
animation: "lazy",
|
|
44
|
+
enterStyle: { opacity: 0 },
|
|
45
|
+
exitStyle: { opacity: 0 }
|
|
46
|
+
}
|
|
47
|
+
),
|
|
48
|
+
/* @__PURE__ */ jsx(Sheet.Handle, {}),
|
|
49
|
+
/* @__PURE__ */ jsxs(Sheet.Frame, { padding: "$4", justifyContent: "center", alignItems: "center", space: "$5", children: [
|
|
50
|
+
/* @__PURE__ */ jsx(Button, { size: "$6", circular: !0, icon: ChevronDown, onPress: () => setOpen(!1) }),
|
|
51
|
+
/* @__PURE__ */ jsx(Input, { width: 200 }),
|
|
52
|
+
modal && isPercent && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
53
|
+
/* @__PURE__ */ jsx(InnerSheet, { open: innerOpen, onOpenChange: setInnerOpen }),
|
|
54
|
+
/* @__PURE__ */ jsx(
|
|
55
|
+
Button,
|
|
56
|
+
{
|
|
57
|
+
size: "$6",
|
|
58
|
+
circular: !0,
|
|
59
|
+
icon: ChevronUp,
|
|
60
|
+
onPress: () => setInnerOpen(!0)
|
|
61
|
+
}
|
|
62
|
+
)
|
|
63
|
+
] })
|
|
64
|
+
] })
|
|
65
|
+
]
|
|
66
|
+
}
|
|
67
|
+
)
|
|
68
|
+
] });
|
|
69
|
+
};
|
|
70
|
+
function InnerSheet(props) {
|
|
71
|
+
return /* @__PURE__ */ jsxs(Sheet, { animation: "medium", modal: !0, snapPoints: [90], dismissOnSnapToBottom: !0, ...props, children: [
|
|
72
|
+
/* @__PURE__ */ jsx(
|
|
73
|
+
Sheet.Overlay,
|
|
74
|
+
{
|
|
75
|
+
animation: "medium",
|
|
76
|
+
enterStyle: { opacity: 0 },
|
|
77
|
+
exitStyle: { opacity: 0 }
|
|
78
|
+
}
|
|
79
|
+
),
|
|
80
|
+
/* @__PURE__ */ jsx(Sheet.Handle, {}),
|
|
81
|
+
/* @__PURE__ */ jsx(Sheet.Frame, { flex: 1, justifyContent: "center", alignItems: "center", space: "$5", children: /* @__PURE__ */ jsx(Sheet.ScrollView, { children: /* @__PURE__ */ jsxs(YStack, { p: "$5", gap: "$8", children: [
|
|
82
|
+
/* @__PURE__ */ jsx(
|
|
83
|
+
Button,
|
|
84
|
+
{
|
|
85
|
+
size: "$6",
|
|
86
|
+
circular: !0,
|
|
87
|
+
alignSelf: "center",
|
|
88
|
+
icon: ChevronDown,
|
|
89
|
+
onPress: () => props.onOpenChange?.(!1)
|
|
90
|
+
}
|
|
91
|
+
),
|
|
92
|
+
/* @__PURE__ */ jsx(H2, { children: "Hello world" }),
|
|
93
|
+
[1, 2, 3, 4, 5, 6, 7, 8].map((i) => /* @__PURE__ */ jsx(Paragraph, { size: "$8", children: "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." }, i))
|
|
94
|
+
] }) }) })
|
|
95
|
+
] });
|
|
96
|
+
}
|
|
97
|
+
export {
|
|
98
|
+
SheetDemo
|
|
99
|
+
};
|
|
100
|
+
//# sourceMappingURL=SheetDemo.mjs.map
|