@tamagui/demos 1.11.2 → 1.12.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/AddThemeDemo.js +1 -1
- package/dist/cjs/AddThemeDemo.js.map +2 -2
- package/dist/cjs/AlertDialogDemo.js +4 -4
- package/dist/cjs/AlertDialogDemo.js.map +2 -2
- package/dist/cjs/AnimationsDemo.js +7 -7
- package/dist/cjs/AnimationsDemo.js.map +2 -2
- package/dist/cjs/AnimationsEnterDemo.js +3 -3
- package/dist/cjs/AnimationsEnterDemo.js.map +2 -2
- package/dist/cjs/AnimationsHoverDemo.js +2 -2
- package/dist/cjs/AnimationsHoverDemo.js.map +2 -2
- package/dist/cjs/AnimationsPresenceDemo.js +6 -6
- package/dist/cjs/AnimationsPresenceDemo.js.map +2 -2
- package/dist/cjs/AnimationsTimingDemo.js +2 -2
- package/dist/cjs/AnimationsTimingDemo.js.map +2 -2
- package/dist/cjs/AvatarDemo.js +1 -1
- package/dist/cjs/AvatarDemo.js.map +2 -2
- package/dist/cjs/ButtonDemo.js +6 -6
- package/dist/cjs/ButtonDemo.js.map +2 -2
- package/dist/cjs/CardDemo.js +7 -7
- package/dist/cjs/CardDemo.js.map +2 -2
- package/dist/cjs/CheckboxDemo.js +2 -2
- package/dist/cjs/CheckboxDemo.js.map +2 -2
- package/dist/cjs/ColorsDemo.js +18 -18
- package/dist/cjs/ColorsDemo.js.map +2 -2
- package/dist/cjs/DialogDemo.js +8 -8
- package/dist/cjs/DialogDemo.js.map +2 -2
- package/dist/cjs/FormsDemo.js +7 -7
- package/dist/cjs/FormsDemo.js.map +2 -2
- package/dist/cjs/GroupDemo.js +1 -1
- package/dist/cjs/GroupDemo.js.map +2 -2
- package/dist/cjs/HeadingsDemo.js +1 -1
- package/dist/cjs/HeadingsDemo.js.map +2 -2
- package/dist/cjs/InputsDemo.js +4 -4
- package/dist/cjs/InputsDemo.js.map +2 -2
- package/dist/cjs/LabelDemo.js +6 -6
- package/dist/cjs/LabelDemo.js.map +2 -2
- package/dist/cjs/LinearGradientDemo.js +2 -2
- package/dist/cjs/LinearGradientDemo.js.map +2 -2
- package/dist/cjs/ListItemDemo.js +3 -3
- package/dist/cjs/ListItemDemo.js.map +2 -2
- package/dist/cjs/LucideIconsDemo.js +3 -3
- package/dist/cjs/LucideIconsDemo.js.map +2 -2
- package/dist/cjs/PopoverDemo.js +7 -7
- package/dist/cjs/PopoverDemo.js.map +2 -2
- package/dist/cjs/ProgressDemo.js +5 -5
- package/dist/cjs/ProgressDemo.js.map +2 -2
- package/dist/cjs/RadioGroupDemo.js +2 -2
- package/dist/cjs/RadioGroupDemo.js.map +2 -2
- package/dist/cjs/ScrollViewDemo.js +9 -9
- package/dist/cjs/ScrollViewDemo.js.map +2 -2
- package/dist/cjs/SelectDemo.js +8 -8
- package/dist/cjs/SelectDemo.js.map +2 -2
- package/dist/cjs/SeparatorDemo.js +5 -5
- package/dist/cjs/SeparatorDemo.js.map +2 -2
- package/dist/cjs/ShapesDemo.js +3 -3
- package/dist/cjs/ShapesDemo.js.map +2 -2
- package/dist/cjs/SheetDemo.js +4 -4
- package/dist/cjs/SheetDemo.js.map +2 -2
- package/dist/cjs/SliderDemo.js +1 -1
- package/dist/cjs/SliderDemo.js.map +2 -2
- package/dist/cjs/SpinnerDemo.js +1 -1
- package/dist/cjs/SpinnerDemo.js.map +2 -2
- package/dist/cjs/StacksDemo.js +48 -15
- package/dist/cjs/StacksDemo.js.map +2 -2
- package/dist/cjs/SwitchDemo.js +14 -4
- package/dist/cjs/SwitchDemo.js.map +2 -2
- package/dist/cjs/TabsAdvancedDemo.js +118 -23
- package/dist/cjs/TabsAdvancedDemo.js.map +3 -3
- package/dist/cjs/TabsDemo.js +94 -14
- package/dist/cjs/TabsDemo.js.map +2 -2
- package/dist/cjs/TextDemo.js +2 -2
- package/dist/cjs/TextDemo.js.map +2 -2
- package/dist/cjs/ThemeInverseDemo.js +1 -1
- package/dist/cjs/ThemeInverseDemo.js.map +2 -2
- package/dist/cjs/ToastDemo.js +30 -29
- package/dist/cjs/ToastDemo.js.map +2 -2
- package/dist/cjs/ToastDuplicateDemo.js +2 -2
- package/dist/cjs/ToastDuplicateDemo.js.map +2 -2
- package/dist/cjs/ToggleGroupDemo.js +7 -7
- package/dist/cjs/ToggleGroupDemo.js.map +2 -2
- package/dist/cjs/TokensDemo.js +9 -9
- package/dist/cjs/TokensDemo.js.map +2 -2
- package/dist/cjs/TooltipDemo.js +5 -5
- package/dist/cjs/TooltipDemo.js.map +2 -2
- package/dist/cjs/UpdateThemeDemo.js +1 -1
- package/dist/cjs/UpdateThemeDemo.js.map +2 -2
- package/dist/esm/AddThemeDemo.js +1 -1
- package/dist/esm/AddThemeDemo.js.map +2 -2
- package/dist/esm/AddThemeDemo.mjs +1 -1
- package/dist/esm/AddThemeDemo.mjs.map +2 -2
- package/dist/esm/AlertDialogDemo.js +4 -4
- package/dist/esm/AlertDialogDemo.js.map +2 -2
- package/dist/esm/AlertDialogDemo.mjs +4 -4
- package/dist/esm/AlertDialogDemo.mjs.map +2 -2
- package/dist/esm/AnimationsDemo.js +7 -7
- package/dist/esm/AnimationsDemo.js.map +2 -2
- package/dist/esm/AnimationsDemo.mjs +7 -7
- package/dist/esm/AnimationsDemo.mjs.map +2 -2
- package/dist/esm/AnimationsEnterDemo.js +3 -3
- package/dist/esm/AnimationsEnterDemo.js.map +2 -2
- package/dist/esm/AnimationsEnterDemo.mjs +3 -3
- package/dist/esm/AnimationsEnterDemo.mjs.map +2 -2
- package/dist/esm/AnimationsHoverDemo.js +2 -2
- package/dist/esm/AnimationsHoverDemo.js.map +2 -2
- package/dist/esm/AnimationsHoverDemo.mjs +2 -2
- package/dist/esm/AnimationsHoverDemo.mjs.map +2 -2
- package/dist/esm/AnimationsPresenceDemo.js +6 -6
- package/dist/esm/AnimationsPresenceDemo.js.map +2 -2
- package/dist/esm/AnimationsPresenceDemo.mjs +6 -6
- package/dist/esm/AnimationsPresenceDemo.mjs.map +2 -2
- package/dist/esm/AnimationsTimingDemo.js +2 -2
- package/dist/esm/AnimationsTimingDemo.js.map +2 -2
- package/dist/esm/AnimationsTimingDemo.mjs +2 -2
- package/dist/esm/AnimationsTimingDemo.mjs.map +2 -2
- package/dist/esm/AvatarDemo.js +1 -1
- package/dist/esm/AvatarDemo.js.map +2 -2
- package/dist/esm/AvatarDemo.mjs +1 -1
- package/dist/esm/AvatarDemo.mjs.map +2 -2
- package/dist/esm/ButtonDemo.js +6 -6
- package/dist/esm/ButtonDemo.js.map +2 -2
- package/dist/esm/ButtonDemo.mjs +6 -6
- package/dist/esm/ButtonDemo.mjs.map +2 -2
- package/dist/esm/CardDemo.js +7 -7
- package/dist/esm/CardDemo.js.map +2 -2
- package/dist/esm/CardDemo.mjs +7 -7
- package/dist/esm/CardDemo.mjs.map +2 -2
- package/dist/esm/CheckboxDemo.js +2 -2
- package/dist/esm/CheckboxDemo.js.map +2 -2
- package/dist/esm/CheckboxDemo.mjs +2 -2
- package/dist/esm/CheckboxDemo.mjs.map +2 -2
- package/dist/esm/ColorsDemo.js +18 -18
- package/dist/esm/ColorsDemo.js.map +2 -2
- package/dist/esm/ColorsDemo.mjs +18 -18
- package/dist/esm/ColorsDemo.mjs.map +2 -2
- package/dist/esm/DialogDemo.js +8 -8
- package/dist/esm/DialogDemo.js.map +2 -2
- package/dist/esm/DialogDemo.mjs +8 -8
- package/dist/esm/DialogDemo.mjs.map +2 -2
- package/dist/esm/FormsDemo.js +7 -7
- package/dist/esm/FormsDemo.js.map +2 -2
- package/dist/esm/FormsDemo.mjs +7 -7
- package/dist/esm/FormsDemo.mjs.map +2 -2
- package/dist/esm/GroupDemo.js +1 -1
- package/dist/esm/GroupDemo.js.map +2 -2
- package/dist/esm/GroupDemo.mjs +1 -1
- package/dist/esm/GroupDemo.mjs.map +2 -2
- package/dist/esm/HeadingsDemo.js +1 -1
- package/dist/esm/HeadingsDemo.js.map +2 -2
- package/dist/esm/HeadingsDemo.mjs +1 -1
- package/dist/esm/HeadingsDemo.mjs.map +2 -2
- package/dist/esm/InputsDemo.js +4 -4
- package/dist/esm/InputsDemo.js.map +2 -2
- package/dist/esm/InputsDemo.mjs +4 -4
- package/dist/esm/InputsDemo.mjs.map +2 -2
- package/dist/esm/LabelDemo.js +6 -6
- package/dist/esm/LabelDemo.js.map +2 -2
- package/dist/esm/LabelDemo.mjs +6 -6
- package/dist/esm/LabelDemo.mjs.map +2 -2
- package/dist/esm/LinearGradientDemo.js +2 -2
- package/dist/esm/LinearGradientDemo.js.map +2 -2
- package/dist/esm/LinearGradientDemo.mjs +2 -2
- package/dist/esm/LinearGradientDemo.mjs.map +2 -2
- package/dist/esm/ListItemDemo.js +3 -3
- package/dist/esm/ListItemDemo.js.map +2 -2
- package/dist/esm/ListItemDemo.mjs +3 -3
- package/dist/esm/ListItemDemo.mjs.map +2 -2
- package/dist/esm/LucideIconsDemo.js +3 -3
- package/dist/esm/LucideIconsDemo.js.map +2 -2
- package/dist/esm/LucideIconsDemo.mjs +3 -3
- package/dist/esm/LucideIconsDemo.mjs.map +2 -2
- package/dist/esm/PopoverDemo.js +7 -7
- package/dist/esm/PopoverDemo.js.map +2 -2
- package/dist/esm/PopoverDemo.mjs +7 -7
- package/dist/esm/PopoverDemo.mjs.map +2 -2
- package/dist/esm/ProgressDemo.js +5 -5
- package/dist/esm/ProgressDemo.js.map +2 -2
- package/dist/esm/ProgressDemo.mjs +5 -5
- package/dist/esm/ProgressDemo.mjs.map +2 -2
- package/dist/esm/RadioGroupDemo.js +2 -2
- package/dist/esm/RadioGroupDemo.js.map +2 -2
- package/dist/esm/RadioGroupDemo.mjs +2 -2
- package/dist/esm/RadioGroupDemo.mjs.map +2 -2
- package/dist/esm/ScrollViewDemo.js +9 -9
- package/dist/esm/ScrollViewDemo.js.map +2 -2
- package/dist/esm/ScrollViewDemo.mjs +9 -9
- package/dist/esm/ScrollViewDemo.mjs.map +2 -2
- package/dist/esm/SelectDemo.js +8 -8
- package/dist/esm/SelectDemo.js.map +2 -2
- package/dist/esm/SelectDemo.mjs +8 -8
- package/dist/esm/SelectDemo.mjs.map +2 -2
- package/dist/esm/SeparatorDemo.js +5 -5
- package/dist/esm/SeparatorDemo.js.map +2 -2
- package/dist/esm/SeparatorDemo.mjs +5 -5
- package/dist/esm/SeparatorDemo.mjs.map +2 -2
- package/dist/esm/ShapesDemo.js +3 -3
- package/dist/esm/ShapesDemo.js.map +2 -2
- package/dist/esm/ShapesDemo.mjs +3 -3
- package/dist/esm/ShapesDemo.mjs.map +2 -2
- package/dist/esm/SheetDemo.js +4 -4
- package/dist/esm/SheetDemo.js.map +2 -2
- package/dist/esm/SheetDemo.mjs +4 -4
- package/dist/esm/SheetDemo.mjs.map +2 -2
- package/dist/esm/SliderDemo.js +1 -1
- package/dist/esm/SliderDemo.js.map +2 -2
- package/dist/esm/SliderDemo.mjs +1 -1
- package/dist/esm/SliderDemo.mjs.map +2 -2
- package/dist/esm/SpinnerDemo.js +1 -1
- package/dist/esm/SpinnerDemo.js.map +2 -2
- package/dist/esm/SpinnerDemo.mjs +1 -1
- package/dist/esm/SpinnerDemo.mjs.map +2 -2
- package/dist/esm/StacksDemo.js +48 -15
- package/dist/esm/StacksDemo.js.map +2 -2
- package/dist/esm/StacksDemo.mjs +48 -15
- package/dist/esm/StacksDemo.mjs.map +2 -2
- package/dist/esm/SwitchDemo.js +14 -4
- package/dist/esm/SwitchDemo.js.map +2 -2
- package/dist/esm/SwitchDemo.mjs +14 -4
- package/dist/esm/SwitchDemo.mjs.map +2 -2
- package/dist/esm/TabsAdvancedDemo.js +122 -25
- package/dist/esm/TabsAdvancedDemo.js.map +3 -3
- package/dist/esm/TabsAdvancedDemo.mjs +122 -25
- package/dist/esm/TabsAdvancedDemo.mjs.map +3 -3
- package/dist/esm/TabsDemo.js +97 -17
- package/dist/esm/TabsDemo.js.map +2 -2
- package/dist/esm/TabsDemo.mjs +97 -17
- package/dist/esm/TabsDemo.mjs.map +2 -2
- package/dist/esm/TextDemo.js +2 -2
- package/dist/esm/TextDemo.js.map +2 -2
- package/dist/esm/TextDemo.mjs +2 -2
- package/dist/esm/TextDemo.mjs.map +2 -2
- package/dist/esm/ThemeInverseDemo.js +1 -1
- package/dist/esm/ThemeInverseDemo.js.map +2 -2
- package/dist/esm/ThemeInverseDemo.mjs +1 -1
- package/dist/esm/ThemeInverseDemo.mjs.map +2 -2
- package/dist/esm/ToastDemo.js +31 -39
- package/dist/esm/ToastDemo.js.map +2 -2
- package/dist/esm/ToastDemo.mjs +31 -39
- package/dist/esm/ToastDemo.mjs.map +2 -2
- package/dist/esm/ToastDuplicateDemo.js +2 -2
- package/dist/esm/ToastDuplicateDemo.js.map +2 -2
- package/dist/esm/ToastDuplicateDemo.mjs +2 -2
- package/dist/esm/ToastDuplicateDemo.mjs.map +2 -2
- package/dist/esm/ToggleGroupDemo.js +7 -7
- package/dist/esm/ToggleGroupDemo.js.map +2 -2
- package/dist/esm/ToggleGroupDemo.mjs +7 -7
- package/dist/esm/ToggleGroupDemo.mjs.map +2 -2
- package/dist/esm/TokensDemo.js +9 -9
- package/dist/esm/TokensDemo.js.map +2 -2
- package/dist/esm/TokensDemo.mjs +9 -9
- package/dist/esm/TokensDemo.mjs.map +2 -2
- package/dist/esm/TooltipDemo.js +5 -5
- package/dist/esm/TooltipDemo.js.map +2 -2
- package/dist/esm/TooltipDemo.mjs +5 -5
- package/dist/esm/TooltipDemo.mjs.map +2 -2
- package/dist/esm/UpdateThemeDemo.js +1 -1
- package/dist/esm/UpdateThemeDemo.js.map +2 -2
- package/dist/esm/UpdateThemeDemo.mjs +1 -1
- package/dist/esm/UpdateThemeDemo.mjs.map +2 -2
- package/dist/jsx/AddThemeDemo.js +1 -1
- package/dist/jsx/AddThemeDemo.js.map +2 -2
- package/dist/jsx/AddThemeDemo.mjs +1 -1
- package/dist/jsx/AddThemeDemo.mjs.map +2 -2
- package/dist/jsx/AlertDialogDemo.js +4 -4
- package/dist/jsx/AlertDialogDemo.js.map +2 -2
- package/dist/jsx/AlertDialogDemo.mjs +4 -4
- package/dist/jsx/AlertDialogDemo.mjs.map +2 -2
- package/dist/jsx/AnimationsDemo.js +7 -7
- package/dist/jsx/AnimationsDemo.js.map +2 -2
- package/dist/jsx/AnimationsDemo.mjs +7 -7
- package/dist/jsx/AnimationsDemo.mjs.map +2 -2
- package/dist/jsx/AnimationsEnterDemo.js +3 -3
- package/dist/jsx/AnimationsEnterDemo.js.map +2 -2
- package/dist/jsx/AnimationsEnterDemo.mjs +3 -3
- package/dist/jsx/AnimationsEnterDemo.mjs.map +2 -2
- package/dist/jsx/AnimationsHoverDemo.js +2 -2
- package/dist/jsx/AnimationsHoverDemo.js.map +2 -2
- package/dist/jsx/AnimationsHoverDemo.mjs +2 -2
- package/dist/jsx/AnimationsHoverDemo.mjs.map +2 -2
- package/dist/jsx/AnimationsPresenceDemo.js +6 -6
- package/dist/jsx/AnimationsPresenceDemo.js.map +2 -2
- package/dist/jsx/AnimationsPresenceDemo.mjs +6 -6
- package/dist/jsx/AnimationsPresenceDemo.mjs.map +2 -2
- package/dist/jsx/AnimationsTimingDemo.js +2 -2
- package/dist/jsx/AnimationsTimingDemo.js.map +2 -2
- package/dist/jsx/AnimationsTimingDemo.mjs +2 -2
- package/dist/jsx/AnimationsTimingDemo.mjs.map +2 -2
- package/dist/jsx/AvatarDemo.js +1 -1
- package/dist/jsx/AvatarDemo.js.map +2 -2
- package/dist/jsx/AvatarDemo.mjs +1 -1
- package/dist/jsx/AvatarDemo.mjs.map +2 -2
- package/dist/jsx/ButtonDemo.js +6 -6
- package/dist/jsx/ButtonDemo.js.map +2 -2
- package/dist/jsx/ButtonDemo.mjs +6 -6
- package/dist/jsx/ButtonDemo.mjs.map +2 -2
- package/dist/jsx/CardDemo.js +7 -7
- package/dist/jsx/CardDemo.js.map +2 -2
- package/dist/jsx/CardDemo.mjs +7 -7
- package/dist/jsx/CardDemo.mjs.map +2 -2
- package/dist/jsx/CheckboxDemo.js +2 -2
- package/dist/jsx/CheckboxDemo.js.map +2 -2
- package/dist/jsx/CheckboxDemo.mjs +2 -2
- package/dist/jsx/CheckboxDemo.mjs.map +2 -2
- package/dist/jsx/ColorsDemo.js +18 -18
- package/dist/jsx/ColorsDemo.js.map +2 -2
- package/dist/jsx/ColorsDemo.mjs +18 -18
- package/dist/jsx/ColorsDemo.mjs.map +2 -2
- package/dist/jsx/DialogDemo.js +8 -8
- package/dist/jsx/DialogDemo.js.map +2 -2
- package/dist/jsx/DialogDemo.mjs +8 -8
- package/dist/jsx/DialogDemo.mjs.map +2 -2
- package/dist/jsx/FormsDemo.js +7 -7
- package/dist/jsx/FormsDemo.js.map +2 -2
- package/dist/jsx/FormsDemo.mjs +7 -7
- package/dist/jsx/FormsDemo.mjs.map +2 -2
- package/dist/jsx/GroupDemo.js +1 -1
- package/dist/jsx/GroupDemo.js.map +2 -2
- package/dist/jsx/GroupDemo.mjs +1 -1
- package/dist/jsx/GroupDemo.mjs.map +2 -2
- package/dist/jsx/HeadingsDemo.js +1 -1
- package/dist/jsx/HeadingsDemo.js.map +2 -2
- package/dist/jsx/HeadingsDemo.mjs +1 -1
- package/dist/jsx/HeadingsDemo.mjs.map +2 -2
- package/dist/jsx/InputsDemo.js +4 -4
- package/dist/jsx/InputsDemo.js.map +2 -2
- package/dist/jsx/InputsDemo.mjs +4 -4
- package/dist/jsx/InputsDemo.mjs.map +2 -2
- package/dist/jsx/LabelDemo.js +6 -6
- package/dist/jsx/LabelDemo.js.map +2 -2
- package/dist/jsx/LabelDemo.mjs +6 -6
- package/dist/jsx/LabelDemo.mjs.map +2 -2
- package/dist/jsx/LinearGradientDemo.js +2 -2
- package/dist/jsx/LinearGradientDemo.js.map +2 -2
- package/dist/jsx/LinearGradientDemo.mjs +2 -2
- package/dist/jsx/LinearGradientDemo.mjs.map +2 -2
- package/dist/jsx/ListItemDemo.js +3 -3
- package/dist/jsx/ListItemDemo.js.map +2 -2
- package/dist/jsx/ListItemDemo.mjs +3 -3
- package/dist/jsx/ListItemDemo.mjs.map +2 -2
- package/dist/jsx/LucideIconsDemo.js +3 -3
- package/dist/jsx/LucideIconsDemo.js.map +2 -2
- package/dist/jsx/LucideIconsDemo.mjs +3 -3
- package/dist/jsx/LucideIconsDemo.mjs.map +2 -2
- package/dist/jsx/PopoverDemo.js +7 -7
- package/dist/jsx/PopoverDemo.js.map +2 -2
- package/dist/jsx/PopoverDemo.mjs +7 -7
- package/dist/jsx/PopoverDemo.mjs.map +2 -2
- package/dist/jsx/ProgressDemo.js +5 -5
- package/dist/jsx/ProgressDemo.js.map +2 -2
- package/dist/jsx/ProgressDemo.mjs +5 -5
- package/dist/jsx/ProgressDemo.mjs.map +2 -2
- package/dist/jsx/RadioGroupDemo.js +2 -2
- package/dist/jsx/RadioGroupDemo.js.map +2 -2
- package/dist/jsx/RadioGroupDemo.mjs +2 -2
- package/dist/jsx/RadioGroupDemo.mjs.map +2 -2
- package/dist/jsx/ScrollViewDemo.js +9 -9
- package/dist/jsx/ScrollViewDemo.js.map +2 -2
- package/dist/jsx/ScrollViewDemo.mjs +9 -9
- package/dist/jsx/ScrollViewDemo.mjs.map +2 -2
- package/dist/jsx/SelectDemo.js +8 -8
- package/dist/jsx/SelectDemo.js.map +2 -2
- package/dist/jsx/SelectDemo.mjs +8 -8
- package/dist/jsx/SelectDemo.mjs.map +2 -2
- package/dist/jsx/SeparatorDemo.js +5 -5
- package/dist/jsx/SeparatorDemo.js.map +2 -2
- package/dist/jsx/SeparatorDemo.mjs +5 -5
- package/dist/jsx/SeparatorDemo.mjs.map +2 -2
- package/dist/jsx/ShapesDemo.js +3 -3
- package/dist/jsx/ShapesDemo.js.map +2 -2
- package/dist/jsx/ShapesDemo.mjs +3 -3
- package/dist/jsx/ShapesDemo.mjs.map +2 -2
- package/dist/jsx/SheetDemo.js +4 -4
- package/dist/jsx/SheetDemo.js.map +2 -2
- package/dist/jsx/SheetDemo.mjs +4 -4
- package/dist/jsx/SheetDemo.mjs.map +2 -2
- package/dist/jsx/SliderDemo.js +1 -1
- package/dist/jsx/SliderDemo.js.map +2 -2
- package/dist/jsx/SliderDemo.mjs +1 -1
- package/dist/jsx/SliderDemo.mjs.map +2 -2
- package/dist/jsx/SpinnerDemo.js +1 -1
- package/dist/jsx/SpinnerDemo.js.map +2 -2
- package/dist/jsx/SpinnerDemo.mjs +1 -1
- package/dist/jsx/SpinnerDemo.mjs.map +2 -2
- package/dist/jsx/StacksDemo.js +35 -13
- package/dist/jsx/StacksDemo.js.map +2 -2
- package/dist/jsx/StacksDemo.mjs +35 -13
- package/dist/jsx/StacksDemo.mjs.map +2 -2
- package/dist/jsx/SwitchDemo.js +10 -4
- package/dist/jsx/SwitchDemo.js.map +2 -2
- package/dist/jsx/SwitchDemo.mjs +10 -4
- package/dist/jsx/SwitchDemo.mjs.map +2 -2
- package/dist/jsx/TabsAdvancedDemo.js +103 -24
- package/dist/jsx/TabsAdvancedDemo.js.map +3 -3
- package/dist/jsx/TabsAdvancedDemo.mjs +103 -24
- package/dist/jsx/TabsAdvancedDemo.mjs.map +3 -3
- package/dist/jsx/TabsDemo.js +68 -16
- package/dist/jsx/TabsDemo.js.map +2 -2
- package/dist/jsx/TabsDemo.mjs +68 -16
- package/dist/jsx/TabsDemo.mjs.map +2 -2
- package/dist/jsx/TextDemo.js +2 -2
- package/dist/jsx/TextDemo.js.map +2 -2
- package/dist/jsx/TextDemo.mjs +2 -2
- package/dist/jsx/TextDemo.mjs.map +2 -2
- package/dist/jsx/ThemeInverseDemo.js +1 -1
- package/dist/jsx/ThemeInverseDemo.js.map +2 -2
- package/dist/jsx/ThemeInverseDemo.mjs +1 -1
- package/dist/jsx/ThemeInverseDemo.mjs.map +2 -2
- package/dist/jsx/ToastDemo.js +28 -39
- package/dist/jsx/ToastDemo.js.map +2 -2
- package/dist/jsx/ToastDemo.mjs +28 -39
- package/dist/jsx/ToastDemo.mjs.map +2 -2
- package/dist/jsx/ToastDuplicateDemo.js +2 -2
- package/dist/jsx/ToastDuplicateDemo.js.map +2 -2
- package/dist/jsx/ToastDuplicateDemo.mjs +2 -2
- package/dist/jsx/ToastDuplicateDemo.mjs.map +2 -2
- package/dist/jsx/ToggleGroupDemo.js +7 -7
- package/dist/jsx/ToggleGroupDemo.js.map +2 -2
- package/dist/jsx/ToggleGroupDemo.mjs +7 -7
- package/dist/jsx/ToggleGroupDemo.mjs.map +2 -2
- package/dist/jsx/TokensDemo.js +9 -9
- package/dist/jsx/TokensDemo.js.map +2 -2
- package/dist/jsx/TokensDemo.mjs +9 -9
- package/dist/jsx/TokensDemo.mjs.map +2 -2
- package/dist/jsx/TooltipDemo.js +5 -5
- package/dist/jsx/TooltipDemo.js.map +2 -2
- package/dist/jsx/TooltipDemo.mjs +5 -5
- package/dist/jsx/TooltipDemo.mjs.map +2 -2
- package/dist/jsx/UpdateThemeDemo.js +1 -1
- package/dist/jsx/UpdateThemeDemo.js.map +2 -2
- package/dist/jsx/UpdateThemeDemo.mjs +1 -1
- package/dist/jsx/UpdateThemeDemo.mjs.map +2 -2
- package/package.json +17 -17
- package/src/AddThemeDemo.tsx +1 -1
- package/src/AlertDialogDemo.tsx +4 -4
- package/src/AnimationsDemo.tsx +7 -7
- package/src/AnimationsEnterDemo.tsx +3 -3
- package/src/AnimationsHoverDemo.tsx +2 -2
- package/src/AnimationsPresenceDemo.tsx +6 -6
- package/src/AnimationsTimingDemo.tsx +2 -2
- package/src/AvatarDemo.tsx +1 -1
- package/src/ButtonDemo.tsx +6 -6
- package/src/CardDemo.tsx +7 -7
- package/src/CheckboxDemo.tsx +2 -2
- package/src/ColorsDemo.tsx +18 -18
- package/src/DialogDemo.tsx +8 -8
- package/src/FormsDemo.tsx +7 -7
- package/src/GroupDemo.tsx +1 -1
- package/src/HeadingsDemo.tsx +1 -1
- package/src/InputsDemo.tsx +4 -4
- package/src/LabelDemo.tsx +6 -6
- package/src/LinearGradientDemo.tsx +2 -2
- package/src/ListItemDemo.tsx +3 -3
- package/src/LucideIconsDemo.tsx +3 -3
- package/src/PopoverDemo.tsx +7 -7
- package/src/ProgressDemo.tsx +5 -5
- package/src/RadioGroupDemo.tsx +2 -2
- package/src/ScrollViewDemo.tsx +10 -10
- package/src/SelectDemo.tsx +8 -8
- package/src/SeparatorDemo.tsx +5 -5
- package/src/ShapesDemo.tsx +3 -3
- package/src/SheetDemo.tsx +5 -5
- package/src/SliderDemo.tsx +1 -1
- package/src/SpinnerDemo.tsx +1 -1
- package/src/StacksDemo.tsx +35 -13
- package/src/SwitchDemo.tsx +10 -4
- package/src/TabsAdvancedDemo.tsx +175 -31
- package/src/TabsDemo.tsx +68 -18
- package/src/TextDemo.tsx +2 -2
- package/src/ThemeInverseDemo.tsx +1 -1
- package/src/ToastDemo.tsx +32 -45
- package/src/ToastDuplicateDemo.tsx +2 -2
- package/src/ToggleGroupDemo.tsx +15 -13
- package/src/TokensDemo.tsx +9 -9
- package/src/TooltipDemo.tsx +5 -5
- package/src/UpdateThemeDemo.tsx +1 -1
- package/types/StacksDemo.d.ts.map +1 -1
- package/types/TabsAdvancedDemo.d.ts.map +1 -1
- package/types/TabsDemo.d.ts.map +1 -1
- package/types/ToastDemo.d.ts.map +1 -1
- package/types/ToggleGroupDemo.d.ts.map +1 -1
package/src/SheetDemo.tsx
CHANGED
|
@@ -33,9 +33,9 @@ export const SheetDemo = () => {
|
|
|
33
33
|
>
|
|
34
34
|
<Sheet.Overlay />
|
|
35
35
|
<Sheet.Handle />
|
|
36
|
-
<Sheet.Frame
|
|
36
|
+
<Sheet.Frame flex={1} padding="$4" justifyContent="center" alignItems="center" space="$5">
|
|
37
37
|
<Button size="$6" circular icon={ChevronDown} onPress={() => setOpen(false)} />
|
|
38
|
-
<Input
|
|
38
|
+
<Input width={200} />
|
|
39
39
|
{modal && (
|
|
40
40
|
<>
|
|
41
41
|
<InnerSheet open={innerOpen} onOpenChange={setInnerOpen} />
|
|
@@ -58,12 +58,12 @@ function InnerSheet(props: SheetProps) {
|
|
|
58
58
|
<Sheet modal snapPoints={[90]} dismissOnSnapToBottom {...props}>
|
|
59
59
|
<Sheet.Overlay />
|
|
60
60
|
<Sheet.Handle />
|
|
61
|
-
<Sheet.Frame
|
|
62
|
-
<Sheet.ScrollView
|
|
61
|
+
<Sheet.Frame flex={1} justifyContent="center" alignItems="center" space="$5">
|
|
62
|
+
<Sheet.ScrollView padding="$4" space>
|
|
63
63
|
<Button
|
|
64
64
|
size="$8"
|
|
65
65
|
circular
|
|
66
|
-
|
|
66
|
+
alignSelf="center"
|
|
67
67
|
icon={ChevronDown}
|
|
68
68
|
onPress={() => props.onOpenChange?.(false)}
|
|
69
69
|
/>
|
package/src/SliderDemo.tsx
CHANGED
|
@@ -2,7 +2,7 @@ import { Slider, SliderProps, Spacer, XStack } from 'tamagui'
|
|
|
2
2
|
|
|
3
3
|
export function SliderDemo() {
|
|
4
4
|
return (
|
|
5
|
-
<XStack height={200}
|
|
5
|
+
<XStack height={200} alignItems="center" space="$8">
|
|
6
6
|
<SimpleSlider height={200} orientation="vertical" />
|
|
7
7
|
<SimpleSlider width={200} />
|
|
8
8
|
</XStack>
|
package/src/SpinnerDemo.tsx
CHANGED
|
@@ -2,7 +2,7 @@ import { Spinner, YStack } from 'tamagui'
|
|
|
2
2
|
|
|
3
3
|
export function SpinnerDemo() {
|
|
4
4
|
return (
|
|
5
|
-
<YStack
|
|
5
|
+
<YStack padding="$3" space="$4" alignItems="center">
|
|
6
6
|
<Spinner size="small" color="$green10" />
|
|
7
7
|
<Spinner size="large" color="$orange10" />
|
|
8
8
|
</YStack>
|
package/src/StacksDemo.tsx
CHANGED
|
@@ -3,23 +3,45 @@ import { XStack, YStack, ZStack } from 'tamagui'
|
|
|
3
3
|
|
|
4
4
|
export function StacksDemo() {
|
|
5
5
|
return (
|
|
6
|
-
<XStack
|
|
7
|
-
<YStack
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
<XStack maxWidth={250} padding="$2" alignSelf="center" space>
|
|
7
|
+
<YStack
|
|
8
|
+
flex={1}
|
|
9
|
+
space="$2"
|
|
10
|
+
borderWidth={2}
|
|
11
|
+
borderColor="$color"
|
|
12
|
+
borderRadius="$4"
|
|
13
|
+
padding="$2"
|
|
14
|
+
>
|
|
15
|
+
<YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
|
|
16
|
+
<YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
|
|
17
|
+
<YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
|
|
11
18
|
</YStack>
|
|
12
19
|
|
|
13
|
-
<XStack
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
20
|
+
<XStack
|
|
21
|
+
flex={1}
|
|
22
|
+
space="$2"
|
|
23
|
+
borderWidth={2}
|
|
24
|
+
borderColor="$color"
|
|
25
|
+
borderRadius="$4"
|
|
26
|
+
padding="$2"
|
|
27
|
+
>
|
|
28
|
+
<YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
|
|
29
|
+
<YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
|
|
30
|
+
<YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
|
|
17
31
|
</XStack>
|
|
18
32
|
|
|
19
|
-
<ZStack
|
|
20
|
-
<YStack fullscreen
|
|
21
|
-
<YStack fullscreen y={10} x={10}
|
|
22
|
-
<YStack
|
|
33
|
+
<ZStack maxWidth={50} maxHeight={85} width={100} flex={1}>
|
|
34
|
+
<YStack fullscreen borderWidth={2} borderRadius="$4" padding="$2" />
|
|
35
|
+
<YStack fullscreen y={10} x={10} borderWidth={2} borderRadius="$4" padding="$2" />
|
|
36
|
+
<YStack
|
|
37
|
+
fullscreen
|
|
38
|
+
y={20}
|
|
39
|
+
x={20}
|
|
40
|
+
borderWidth={2}
|
|
41
|
+
backgroundColor="$color"
|
|
42
|
+
borderRadius="$4"
|
|
43
|
+
padding="$2"
|
|
44
|
+
/>
|
|
23
45
|
</ZStack>
|
|
24
46
|
</XStack>
|
|
25
47
|
)
|
package/src/SwitchDemo.tsx
CHANGED
|
@@ -2,7 +2,7 @@ import { Label, Separator, SizeTokens, Switch, XStack, YStack, styled } from 'ta
|
|
|
2
2
|
|
|
3
3
|
export function SwitchDemo() {
|
|
4
4
|
return (
|
|
5
|
-
<YStack
|
|
5
|
+
<YStack width={200} alignItems="center" space="$3">
|
|
6
6
|
<SwitchWithLabel size="$2" />
|
|
7
7
|
<SwitchWithLabel size="$3" />
|
|
8
8
|
<SwitchWithLabel size="$4" />
|
|
@@ -14,11 +14,17 @@ export function SwitchDemo() {
|
|
|
14
14
|
function SwitchWithLabel(props: { size: SizeTokens }) {
|
|
15
15
|
const id = `switch-${props.size.toString().slice(1)}`
|
|
16
16
|
return (
|
|
17
|
-
<XStack
|
|
18
|
-
<Label
|
|
17
|
+
<XStack width={200} alignItems="center" space="$4">
|
|
18
|
+
<Label
|
|
19
|
+
paddingRight="$0"
|
|
20
|
+
minWidth={90}
|
|
21
|
+
justifyContent="flex-end"
|
|
22
|
+
size={props.size}
|
|
23
|
+
htmlFor={id}
|
|
24
|
+
>
|
|
19
25
|
Dark mode
|
|
20
26
|
</Label>
|
|
21
|
-
<Separator
|
|
27
|
+
<Separator minHeight={20} vertical />
|
|
22
28
|
<Switch id={id} size={props.size}>
|
|
23
29
|
<Switch.Thumb animation="quick" />
|
|
24
30
|
</Switch>
|
package/src/TabsAdvancedDemo.tsx
CHANGED
|
@@ -1,45 +1,188 @@
|
|
|
1
1
|
import { useRef, useState } from 'react'
|
|
2
2
|
import {
|
|
3
3
|
AnimatePresence,
|
|
4
|
+
Button,
|
|
4
5
|
H5,
|
|
5
6
|
SizableText,
|
|
6
7
|
Stack,
|
|
7
8
|
TabTriggerLayout,
|
|
8
9
|
Tabs,
|
|
9
10
|
TabsTriggerProps,
|
|
11
|
+
XStack,
|
|
10
12
|
YStack,
|
|
11
13
|
styled,
|
|
12
14
|
} from 'tamagui'
|
|
13
15
|
|
|
16
|
+
const demos = ['background', 'underline'] as const
|
|
17
|
+
|
|
14
18
|
export const TabsAdvancedDemo = () => {
|
|
15
|
-
const [
|
|
19
|
+
const [demoIndex, setDemoIndex] = useState(0)
|
|
20
|
+
const demo = demos[demoIndex]
|
|
21
|
+
return (
|
|
22
|
+
<>
|
|
23
|
+
{demo === 'underline' ? <TabsAdvancedUnderline /> : <TabsAdvancedBackground />}
|
|
24
|
+
|
|
25
|
+
<XStack alignItems="center" space position="absolute" bottom="$3" left="$4" $xxs={{ display: 'none' }}>
|
|
26
|
+
<Button size="$2" onPress={() => setDemoIndex((x) => (x + 1) % demos.length)}>
|
|
27
|
+
{demo}
|
|
28
|
+
</Button>
|
|
29
|
+
</XStack>
|
|
30
|
+
</>
|
|
31
|
+
)
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const TabsAdvancedBackground = () => {
|
|
35
|
+
const [tabState, setTabState] = useState<{
|
|
36
|
+
currentTab: string
|
|
37
|
+
/**
|
|
38
|
+
* Layout of the trigger user might intend to select (hovering / focusing)
|
|
39
|
+
*/
|
|
40
|
+
intentAt: TabTriggerLayout | null
|
|
41
|
+
/**
|
|
42
|
+
* Layout of the trigger user selected
|
|
43
|
+
*/
|
|
44
|
+
activeAt: TabTriggerLayout | null
|
|
45
|
+
/**
|
|
46
|
+
* Used to get the direction of activation for animating the active indicator
|
|
47
|
+
*/
|
|
48
|
+
prevActiveAt: TabTriggerLayout | null
|
|
49
|
+
}>({
|
|
50
|
+
activeAt: null,
|
|
51
|
+
currentTab: 'tab1',
|
|
52
|
+
intentAt: null,
|
|
53
|
+
prevActiveAt: null,
|
|
54
|
+
})
|
|
55
|
+
|
|
56
|
+
const setCurrentTab = (currentTab: string) => setTabState({ ...tabState, currentTab })
|
|
57
|
+
const setIntentIndicator = (intentAt) => setTabState({ ...tabState, intentAt })
|
|
58
|
+
const setActiveIndicator = (activeAt) =>
|
|
59
|
+
setTabState({ ...tabState, prevActiveAt: tabState.activeAt, activeAt })
|
|
60
|
+
const { activeAt, intentAt, prevActiveAt, currentTab } = tabState
|
|
16
61
|
|
|
17
|
-
|
|
18
|
-
|
|
62
|
+
/**
|
|
63
|
+
* -1: from left
|
|
64
|
+
* 0: n/a
|
|
65
|
+
* 1: from right
|
|
66
|
+
*/
|
|
67
|
+
const direction = (() => {
|
|
68
|
+
if (!activeAt || !prevActiveAt || activeAt.x === prevActiveAt.x) {
|
|
69
|
+
return 0
|
|
70
|
+
}
|
|
71
|
+
return activeAt.x > prevActiveAt.x ? -1 : 1
|
|
72
|
+
})()
|
|
19
73
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const
|
|
74
|
+
const enterVariant =
|
|
75
|
+
direction === 1 ? 'isLeft' : direction === -1 ? 'isRight' : 'defaultFade'
|
|
76
|
+
const exitVariant =
|
|
77
|
+
direction === 1 ? 'isRight' : direction === -1 ? 'isLeft' : 'defaultFade'
|
|
23
78
|
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
79
|
+
const handleOnInteraction: TabsTriggerProps['onInteraction'] = (type, layout) => {
|
|
80
|
+
if (type === 'select') {
|
|
81
|
+
setActiveIndicator(layout)
|
|
82
|
+
} else {
|
|
83
|
+
setIntentIndicator(layout)
|
|
84
|
+
}
|
|
27
85
|
}
|
|
28
86
|
|
|
87
|
+
return (
|
|
88
|
+
<Tabs
|
|
89
|
+
value={currentTab}
|
|
90
|
+
onValueChange={setCurrentTab}
|
|
91
|
+
orientation="horizontal"
|
|
92
|
+
size="$3"
|
|
93
|
+
padding="$2"
|
|
94
|
+
height={150}
|
|
95
|
+
flexDirection="column"
|
|
96
|
+
activationMode="manual"
|
|
97
|
+
>
|
|
98
|
+
<Tabs.List
|
|
99
|
+
loop={false}
|
|
100
|
+
aria-label="Manage your account"
|
|
101
|
+
disablePassBorderRadius
|
|
102
|
+
>
|
|
103
|
+
{intentAt && (
|
|
104
|
+
<TabsRovingIndicator
|
|
105
|
+
width={intentAt.width}
|
|
106
|
+
height={intentAt.height}
|
|
107
|
+
x={intentAt.x}
|
|
108
|
+
y={intentAt.y}
|
|
109
|
+
/>
|
|
110
|
+
)}
|
|
111
|
+
|
|
112
|
+
{activeAt && (
|
|
113
|
+
<TabsRovingIndicator
|
|
114
|
+
theme="active"
|
|
115
|
+
width={activeAt.width}
|
|
116
|
+
height={activeAt.height}
|
|
117
|
+
x={activeAt.x}
|
|
118
|
+
y={activeAt.y}
|
|
119
|
+
/>
|
|
120
|
+
)}
|
|
121
|
+
|
|
122
|
+
<Tabs.Trigger value="tab1" onInteraction={handleOnInteraction}>
|
|
123
|
+
<SizableText>Profile</SizableText>
|
|
124
|
+
</Tabs.Trigger>
|
|
125
|
+
<Tabs.Trigger value="tab2" onInteraction={handleOnInteraction}>
|
|
126
|
+
<SizableText>Connections</SizableText>
|
|
127
|
+
</Tabs.Trigger>
|
|
128
|
+
<Tabs.Trigger value="tab3" onInteraction={handleOnInteraction}>
|
|
129
|
+
<SizableText>Notifications</SizableText>
|
|
130
|
+
</Tabs.Trigger>
|
|
131
|
+
</Tabs.List>
|
|
132
|
+
|
|
133
|
+
<AnimatePresence
|
|
134
|
+
exitBeforeEnter
|
|
135
|
+
enterVariant={enterVariant}
|
|
136
|
+
exitVariant={exitVariant}
|
|
137
|
+
>
|
|
138
|
+
<AnimatedYStack key={currentTab} animation="100ms" x={0} opacity={1} flex={1}>
|
|
139
|
+
<Tabs.Content value={currentTab} forceMount flex={1} justifyContent="center">
|
|
140
|
+
<H5 textAlign="center">{currentTab}</H5>
|
|
141
|
+
</Tabs.Content>
|
|
142
|
+
</AnimatedYStack>
|
|
143
|
+
</AnimatePresence>
|
|
144
|
+
</Tabs>
|
|
145
|
+
)
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
const TabsAdvancedUnderline = () => {
|
|
149
|
+
const [tabState, setTabState] = useState<{
|
|
150
|
+
currentTab: string
|
|
151
|
+
/**
|
|
152
|
+
* Layout of the trigger user might intend to select (hovering / focusing)
|
|
153
|
+
*/
|
|
154
|
+
intentAt: TabTriggerLayout | null
|
|
155
|
+
/**
|
|
156
|
+
* Layout of the trigger user selected
|
|
157
|
+
*/
|
|
158
|
+
activeAt: TabTriggerLayout | null
|
|
159
|
+
/**
|
|
160
|
+
* Used to get the direction of activation for animating the active indicator
|
|
161
|
+
*/
|
|
162
|
+
prevActiveAt: TabTriggerLayout | null
|
|
163
|
+
}>({
|
|
164
|
+
activeAt: null,
|
|
165
|
+
currentTab: 'tab1',
|
|
166
|
+
intentAt: null,
|
|
167
|
+
prevActiveAt: null,
|
|
168
|
+
})
|
|
169
|
+
|
|
170
|
+
const setCurrentTab = (currentTab: string) => setTabState({ ...tabState, currentTab })
|
|
171
|
+
const setIntentIndicator = (intentAt) => setTabState({ ...tabState, intentAt })
|
|
172
|
+
const setActiveIndicator = (activeAt) =>
|
|
173
|
+
setTabState({ ...tabState, prevActiveAt: tabState.activeAt, activeAt })
|
|
174
|
+
const { activeAt, intentAt, prevActiveAt, currentTab } = tabState
|
|
175
|
+
|
|
29
176
|
/**
|
|
30
177
|
* -1: from left
|
|
31
178
|
* 0: n/a
|
|
32
179
|
* 1: from right
|
|
33
180
|
*/
|
|
34
181
|
const direction = (() => {
|
|
35
|
-
if (
|
|
36
|
-
!selectIndicator ||
|
|
37
|
-
!prevSelectionIndicatorLayout.current ||
|
|
38
|
-
selectIndicator.x === prevSelectionIndicatorLayout.current.x
|
|
39
|
-
) {
|
|
182
|
+
if (!activeAt || !prevActiveAt || activeAt.x === prevActiveAt.x) {
|
|
40
183
|
return 0
|
|
41
184
|
}
|
|
42
|
-
return
|
|
185
|
+
return activeAt.x > prevActiveAt.x ? -1 : 1
|
|
43
186
|
})()
|
|
44
187
|
|
|
45
188
|
const enterVariant =
|
|
@@ -49,7 +192,7 @@ export const TabsAdvancedDemo = () => {
|
|
|
49
192
|
|
|
50
193
|
const handleOnInteraction: TabsTriggerProps['onInteraction'] = (type, layout) => {
|
|
51
194
|
if (type === 'select') {
|
|
52
|
-
|
|
195
|
+
setActiveIndicator(layout)
|
|
53
196
|
} else {
|
|
54
197
|
setIntentIndicator(layout)
|
|
55
198
|
}
|
|
@@ -60,9 +203,8 @@ export const TabsAdvancedDemo = () => {
|
|
|
60
203
|
value={currentTab}
|
|
61
204
|
onValueChange={setCurrentTab}
|
|
62
205
|
orientation="horizontal"
|
|
63
|
-
br="$4"
|
|
64
206
|
size="$3"
|
|
65
|
-
|
|
207
|
+
padding="$2"
|
|
66
208
|
height={150}
|
|
67
209
|
flexDirection="column"
|
|
68
210
|
activationMode="manual"
|
|
@@ -72,25 +214,27 @@ export const TabsAdvancedDemo = () => {
|
|
|
72
214
|
loop={false}
|
|
73
215
|
aria-label="Manage your account"
|
|
74
216
|
disablePassBorderRadius
|
|
75
|
-
|
|
76
|
-
|
|
217
|
+
borderBottomLeftRadius={0}
|
|
218
|
+
borderBottomRightRadius={0}
|
|
219
|
+
paddingBottom="$1.5"
|
|
77
220
|
>
|
|
78
|
-
{
|
|
221
|
+
{intentAt && (
|
|
79
222
|
<TabsRovingIndicator
|
|
80
|
-
width={
|
|
81
|
-
height=
|
|
82
|
-
x={
|
|
83
|
-
|
|
223
|
+
width={intentAt.width}
|
|
224
|
+
height="$0.25"
|
|
225
|
+
x={intentAt.x}
|
|
226
|
+
borderRadius={0}
|
|
227
|
+
bottom={-3}
|
|
84
228
|
/>
|
|
85
229
|
)}
|
|
86
230
|
|
|
87
|
-
{
|
|
231
|
+
{activeAt && (
|
|
88
232
|
<TabsRovingIndicator
|
|
89
233
|
theme="active"
|
|
90
234
|
active
|
|
91
|
-
width={
|
|
235
|
+
width={activeAt.width}
|
|
92
236
|
height="$0.25"
|
|
93
|
-
x={
|
|
237
|
+
x={activeAt.x}
|
|
94
238
|
borderRadius={0}
|
|
95
239
|
bottom={-3}
|
|
96
240
|
/>
|
|
@@ -113,9 +257,9 @@ export const TabsAdvancedDemo = () => {
|
|
|
113
257
|
enterVariant={enterVariant}
|
|
114
258
|
exitVariant={exitVariant}
|
|
115
259
|
>
|
|
116
|
-
<AnimatedYStack key={currentTab} animation="100ms" x={0}
|
|
117
|
-
<Tabs.Content value={currentTab} forceMount
|
|
118
|
-
<H5
|
|
260
|
+
<AnimatedYStack key={currentTab} animation="100ms" x={0} opacity={1} flex={1}>
|
|
261
|
+
<Tabs.Content value={currentTab} forceMount flex={1} justifyContent="center">
|
|
262
|
+
<H5 textAlign="center">{currentTab}</H5>
|
|
119
263
|
</Tabs.Content>
|
|
120
264
|
</AnimatedYStack>
|
|
121
265
|
</AnimatePresence>
|
package/src/TabsDemo.tsx
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useState } from 'react'
|
|
2
|
-
import { Button, H5, SizableText, Tabs, XStack } from 'tamagui'
|
|
2
|
+
import { Button, H5, SizableText, Tabs, XStack, YStack } from 'tamagui'
|
|
3
3
|
|
|
4
4
|
const demos = ['horizontal', 'vertical'] as const
|
|
5
5
|
|
|
@@ -8,15 +8,23 @@ export function TabsDemo() {
|
|
|
8
8
|
const demo = demos[demoIndex]
|
|
9
9
|
|
|
10
10
|
return (
|
|
11
|
-
|
|
11
|
+
// web only fix for position relative
|
|
12
|
+
<YStack paddingHorizontal="$4" position={'unset' as any}>
|
|
12
13
|
{demo === 'horizontal' ? <HorizontalTabs /> : <VerticalTabs />}
|
|
13
14
|
|
|
14
|
-
<XStack
|
|
15
|
+
<XStack
|
|
16
|
+
alignItems="center"
|
|
17
|
+
space
|
|
18
|
+
position="absolute"
|
|
19
|
+
bottom="$3"
|
|
20
|
+
left="$4"
|
|
21
|
+
$xxs={{ display: 'none' }}
|
|
22
|
+
>
|
|
15
23
|
<Button size="$2" onPress={() => setDemoIndex((x) => (x + 1) % demos.length)}>
|
|
16
24
|
{demo}
|
|
17
25
|
</Button>
|
|
18
26
|
</XStack>
|
|
19
|
-
|
|
27
|
+
</YStack>
|
|
20
28
|
)
|
|
21
29
|
}
|
|
22
30
|
|
|
@@ -28,29 +36,50 @@ const HorizontalTabs = () => {
|
|
|
28
36
|
flexDirection="column"
|
|
29
37
|
width={400}
|
|
30
38
|
height={150}
|
|
31
|
-
|
|
39
|
+
borderRadius="$4"
|
|
32
40
|
>
|
|
33
41
|
<Tabs.List disablePassBorderRadius="bottom" aria-label="Manage your account">
|
|
34
|
-
<Tabs.Trigger theme="Button"
|
|
42
|
+
<Tabs.Trigger theme="Button" flex={1} value="tab1">
|
|
35
43
|
<SizableText fontFamily="$body">Profile</SizableText>
|
|
36
44
|
</Tabs.Trigger>
|
|
37
|
-
<Tabs.Trigger theme="Button"
|
|
45
|
+
<Tabs.Trigger theme="Button" flex={1} value="tab2">
|
|
38
46
|
<SizableText fontFamily="$body">Connections</SizableText>
|
|
39
47
|
</Tabs.Trigger>
|
|
40
|
-
<Tabs.Trigger theme="Button"
|
|
48
|
+
<Tabs.Trigger theme="Button" flex={1} value="tab3">
|
|
41
49
|
<SizableText fontFamily="$body">Notifications</SizableText>
|
|
42
50
|
</Tabs.Trigger>
|
|
43
51
|
</Tabs.List>
|
|
44
52
|
|
|
45
|
-
<Tabs.Content
|
|
53
|
+
<Tabs.Content
|
|
54
|
+
value="tab1"
|
|
55
|
+
key="tab1"
|
|
56
|
+
padding="$5"
|
|
57
|
+
alignItems="center"
|
|
58
|
+
justifyContent="center"
|
|
59
|
+
flex={1}
|
|
60
|
+
>
|
|
46
61
|
<H5>Profile</H5>
|
|
47
62
|
</Tabs.Content>
|
|
48
63
|
|
|
49
|
-
<Tabs.Content
|
|
64
|
+
<Tabs.Content
|
|
65
|
+
value="tab2"
|
|
66
|
+
key="tab2"
|
|
67
|
+
padding="$5"
|
|
68
|
+
alignItems="center"
|
|
69
|
+
justifyContent="center"
|
|
70
|
+
flex={1}
|
|
71
|
+
>
|
|
50
72
|
<H5>Connections</H5>
|
|
51
73
|
</Tabs.Content>
|
|
52
74
|
|
|
53
|
-
<Tabs.Content
|
|
75
|
+
<Tabs.Content
|
|
76
|
+
value="tab3"
|
|
77
|
+
key="tab3"
|
|
78
|
+
padding="$5"
|
|
79
|
+
alignItems="center"
|
|
80
|
+
justifyContent="center"
|
|
81
|
+
flex={1}
|
|
82
|
+
>
|
|
54
83
|
<H5>Notifications</H5>
|
|
55
84
|
</Tabs.Content>
|
|
56
85
|
</Tabs>
|
|
@@ -64,7 +93,7 @@ const VerticalTabs = () => {
|
|
|
64
93
|
flexDirection="row"
|
|
65
94
|
orientation="vertical"
|
|
66
95
|
width={400}
|
|
67
|
-
|
|
96
|
+
borderRadius="$4"
|
|
68
97
|
>
|
|
69
98
|
<Tabs.List disablePassBorderRadius="end" aria-label="Manage your account">
|
|
70
99
|
<Tabs.Trigger theme="Button" value="tab1">
|
|
@@ -77,14 +106,35 @@ const VerticalTabs = () => {
|
|
|
77
106
|
<SizableText>Notifications</SizableText>
|
|
78
107
|
</Tabs.Trigger>
|
|
79
108
|
</Tabs.List>
|
|
80
|
-
<Tabs.Content
|
|
81
|
-
|
|
109
|
+
<Tabs.Content
|
|
110
|
+
value="tab1"
|
|
111
|
+
key="tab1"
|
|
112
|
+
padding="$2"
|
|
113
|
+
alignItems="center"
|
|
114
|
+
justifyContent="center"
|
|
115
|
+
flex={1}
|
|
116
|
+
>
|
|
117
|
+
<H5 textAlign="center">Profile</H5>
|
|
82
118
|
</Tabs.Content>
|
|
83
|
-
<Tabs.Content
|
|
84
|
-
|
|
119
|
+
<Tabs.Content
|
|
120
|
+
value="tab2"
|
|
121
|
+
key="tab2"
|
|
122
|
+
padding="$2"
|
|
123
|
+
alignItems="center"
|
|
124
|
+
justifyContent="center"
|
|
125
|
+
flex={1}
|
|
126
|
+
>
|
|
127
|
+
<H5 textAlign="center">Connections</H5>
|
|
85
128
|
</Tabs.Content>
|
|
86
|
-
<Tabs.Content
|
|
87
|
-
|
|
129
|
+
<Tabs.Content
|
|
130
|
+
value="tab3"
|
|
131
|
+
key="tab3"
|
|
132
|
+
padding="$2"
|
|
133
|
+
alignItems="center"
|
|
134
|
+
justifyContent="center"
|
|
135
|
+
flex={1}
|
|
136
|
+
>
|
|
137
|
+
<H5 textAlign="center">Notifications</H5>
|
|
88
138
|
</Tabs.Content>
|
|
89
139
|
</Tabs>
|
|
90
140
|
)
|
package/src/TextDemo.tsx
CHANGED
|
@@ -3,7 +3,7 @@ import { Paragraph, SizableText, Text, XStack, YStack } from 'tamagui'
|
|
|
3
3
|
|
|
4
4
|
export function TextDemo() {
|
|
5
5
|
return (
|
|
6
|
-
<YStack space="$2"
|
|
6
|
+
<YStack space="$2" alignItems="center">
|
|
7
7
|
<SizableText size="$3">SizableText</SizableText>
|
|
8
8
|
<XStack space>
|
|
9
9
|
<SizableText theme="alt1" size="$3">
|
|
@@ -13,7 +13,7 @@ export function TextDemo() {
|
|
|
13
13
|
alt2
|
|
14
14
|
</SizableText>
|
|
15
15
|
</XStack>
|
|
16
|
-
<Paragraph size="$2"
|
|
16
|
+
<Paragraph size="$2" fontWeight="800">
|
|
17
17
|
Paragraph
|
|
18
18
|
</Paragraph>
|
|
19
19
|
</YStack>
|
package/src/ThemeInverseDemo.tsx
CHANGED
|
@@ -13,7 +13,7 @@ export function ThemeInverseDemo() {
|
|
|
13
13
|
|
|
14
14
|
function Buttons() {
|
|
15
15
|
return (
|
|
16
|
-
<YStack
|
|
16
|
+
<YStack backgroundColor="$background" padding="$3" borderRadius="$3" space>
|
|
17
17
|
<Button>Dark</Button>
|
|
18
18
|
<Button themeInverse>Inversed</Button>
|
|
19
19
|
<Button theme="alt1">Alt1 Dark</Button>
|