@rnative/ui 0.0.0-stage → 1.0.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/README.md +1 -3
- package/dist/components/accordion/Accordion.d.ts +31 -0
- package/dist/components/accordion/Accordion.d.ts.map +1 -0
- package/dist/components/accordion/Accordion.js +121 -0
- package/dist/components/accordion/Accordion.js.map +1 -0
- package/dist/components/accordion/Accordion.styles.d.ts +8 -0
- package/dist/components/accordion/Accordion.styles.d.ts.map +1 -0
- package/dist/components/accordion/Accordion.styles.js +48 -0
- package/dist/components/accordion/Accordion.styles.js.map +1 -0
- package/dist/components/accordion/Accordion.types.d.ts +45 -0
- package/dist/components/accordion/Accordion.types.d.ts.map +1 -0
- package/dist/components/accordion/Accordion.types.js +9 -0
- package/dist/components/accordion/Accordion.types.js.map +1 -0
- package/dist/components/accordion/index.d.ts +6 -0
- package/dist/components/accordion/index.d.ts.map +1 -0
- package/dist/components/accordion/index.js +12 -0
- package/dist/components/accordion/index.js.map +1 -0
- package/dist/components/alert/Alert.d.ts +16 -0
- package/dist/components/alert/Alert.d.ts.map +1 -0
- package/dist/components/alert/Alert.js +28 -0
- package/dist/components/alert/Alert.js.map +1 -0
- package/dist/components/alert/Alert.styles.d.ts +8 -0
- package/dist/components/alert/Alert.styles.d.ts.map +1 -0
- package/dist/components/alert/Alert.styles.js +36 -0
- package/dist/components/alert/Alert.styles.js.map +1 -0
- package/dist/components/alert/Alert.types.d.ts +22 -0
- package/dist/components/alert/Alert.types.d.ts.map +1 -0
- package/dist/components/alert/Alert.types.js +9 -0
- package/dist/components/alert/Alert.types.js.map +1 -0
- package/dist/components/alert/Alert.variants.d.ts +19 -0
- package/dist/components/alert/Alert.variants.d.ts.map +1 -0
- package/dist/components/alert/Alert.variants.js +51 -0
- package/dist/components/alert/Alert.variants.js.map +1 -0
- package/dist/components/alert/index.d.ts +6 -0
- package/dist/components/alert/index.d.ts.map +1 -0
- package/dist/components/alert/index.js +9 -0
- package/dist/components/alert/index.js.map +1 -0
- package/dist/components/avatar/Avatar.d.ts +13 -0
- package/dist/components/avatar/Avatar.d.ts.map +1 -0
- package/dist/components/avatar/Avatar.js +31 -0
- package/dist/components/avatar/Avatar.js.map +1 -0
- package/dist/components/avatar/Avatar.styles.d.ts +8 -0
- package/dist/components/avatar/Avatar.styles.d.ts.map +1 -0
- package/dist/components/avatar/Avatar.styles.js +22 -0
- package/dist/components/avatar/Avatar.styles.js.map +1 -0
- package/dist/components/avatar/Avatar.types.d.ts +21 -0
- package/dist/components/avatar/Avatar.types.d.ts.map +1 -0
- package/dist/components/avatar/Avatar.types.js +9 -0
- package/dist/components/avatar/Avatar.types.js.map +1 -0
- package/dist/components/avatar/Avatar.variants.d.ts +23 -0
- package/dist/components/avatar/Avatar.variants.d.ts.map +1 -0
- package/dist/components/avatar/Avatar.variants.js +48 -0
- package/dist/components/avatar/Avatar.variants.js.map +1 -0
- package/dist/components/avatar/index.d.ts +6 -0
- package/dist/components/avatar/index.d.ts.map +1 -0
- package/dist/components/avatar/index.js +9 -0
- package/dist/components/avatar/index.js.map +1 -0
- package/dist/components/badge/Badge.d.ts +12 -0
- package/dist/components/badge/Badge.d.ts.map +1 -0
- package/dist/components/badge/Badge.js +25 -0
- package/dist/components/badge/Badge.js.map +1 -0
- package/dist/components/badge/Badge.styles.d.ts +8 -0
- package/dist/components/badge/Badge.styles.d.ts.map +1 -0
- package/dist/components/badge/Badge.styles.js +32 -0
- package/dist/components/badge/Badge.styles.js.map +1 -0
- package/dist/components/badge/Badge.types.d.ts +16 -0
- package/dist/components/badge/Badge.types.d.ts.map +1 -0
- package/dist/components/badge/Badge.types.js +8 -0
- package/dist/components/badge/Badge.types.js.map +1 -0
- package/dist/components/badge/Badge.variants.d.ts +23 -0
- package/dist/components/badge/Badge.variants.d.ts.map +1 -0
- package/dist/components/badge/Badge.variants.js +48 -0
- package/dist/components/badge/Badge.variants.js.map +1 -0
- package/dist/components/badge/index.d.ts +6 -0
- package/dist/components/badge/index.d.ts.map +1 -0
- package/dist/components/badge/index.js +9 -0
- package/dist/components/badge/index.js.map +1 -0
- package/dist/components/button/Button.d.ts +16 -0
- package/dist/components/button/Button.d.ts.map +1 -0
- package/dist/components/button/Button.js +61 -0
- package/dist/components/button/Button.js.map +1 -0
- package/dist/components/button/Button.styles.d.ts +8 -0
- package/dist/components/button/Button.styles.d.ts.map +1 -0
- package/dist/components/button/Button.styles.js +18 -0
- package/dist/components/button/Button.styles.js.map +1 -0
- package/dist/components/button/Button.types.d.ts +23 -0
- package/dist/components/button/Button.types.d.ts.map +1 -0
- package/dist/components/button/Button.types.js +6 -0
- package/dist/components/button/Button.types.js.map +1 -0
- package/dist/components/button/Button.variants.d.ts +11 -0
- package/dist/components/button/Button.variants.d.ts.map +1 -0
- package/dist/components/button/Button.variants.js +65 -0
- package/dist/components/button/Button.variants.js.map +1 -0
- package/dist/components/button/index.d.ts +6 -0
- package/dist/components/button/index.d.ts.map +1 -0
- package/dist/components/button/index.js +9 -0
- package/dist/components/button/index.js.map +1 -0
- package/dist/components/card/Card.d.ts +36 -0
- package/dist/components/card/Card.d.ts.map +1 -0
- package/dist/components/card/Card.js +53 -0
- package/dist/components/card/Card.js.map +1 -0
- package/dist/components/card/Card.styles.d.ts +8 -0
- package/dist/components/card/Card.styles.d.ts.map +1 -0
- package/dist/components/card/Card.styles.js +30 -0
- package/dist/components/card/Card.styles.js.map +1 -0
- package/dist/components/card/Card.types.d.ts +22 -0
- package/dist/components/card/Card.types.d.ts.map +1 -0
- package/dist/components/card/Card.types.js +9 -0
- package/dist/components/card/Card.types.js.map +1 -0
- package/dist/components/card/Card.variants.d.ts +14 -0
- package/dist/components/card/Card.variants.d.ts.map +1 -0
- package/dist/components/card/Card.variants.js +32 -0
- package/dist/components/card/Card.variants.js.map +1 -0
- package/dist/components/card/index.d.ts +6 -0
- package/dist/components/card/index.d.ts.map +1 -0
- package/dist/components/card/index.js +14 -0
- package/dist/components/card/index.js.map +1 -0
- package/dist/components/checkbox/CheckBox.d.ts +14 -0
- package/dist/components/checkbox/CheckBox.d.ts.map +1 -0
- package/dist/components/checkbox/CheckBox.js +40 -0
- package/dist/components/checkbox/CheckBox.js.map +1 -0
- package/dist/components/checkbox/CheckBox.styles.d.ts +8 -0
- package/dist/components/checkbox/CheckBox.styles.d.ts.map +1 -0
- package/dist/components/checkbox/CheckBox.styles.js +32 -0
- package/dist/components/checkbox/CheckBox.styles.js.map +1 -0
- package/dist/components/checkbox/CheckBox.types.d.ts +24 -0
- package/dist/components/checkbox/CheckBox.types.d.ts.map +1 -0
- package/dist/components/checkbox/CheckBox.types.js +9 -0
- package/dist/components/checkbox/CheckBox.types.js.map +1 -0
- package/dist/components/checkbox/CheckBox.variants.d.ts +14 -0
- package/dist/components/checkbox/CheckBox.variants.d.ts.map +1 -0
- package/dist/components/checkbox/CheckBox.variants.js +19 -0
- package/dist/components/checkbox/CheckBox.variants.js.map +1 -0
- package/dist/components/checkbox/index.d.ts +6 -0
- package/dist/components/checkbox/index.d.ts.map +1 -0
- package/dist/components/checkbox/index.js +9 -0
- package/dist/components/checkbox/index.js.map +1 -0
- package/dist/components/combobox/ComboBox.d.ts +16 -0
- package/dist/components/combobox/ComboBox.d.ts.map +1 -0
- package/dist/components/combobox/ComboBox.js +79 -0
- package/dist/components/combobox/ComboBox.js.map +1 -0
- package/dist/components/combobox/ComboBox.styles.d.ts +8 -0
- package/dist/components/combobox/ComboBox.styles.d.ts.map +1 -0
- package/dist/components/combobox/ComboBox.styles.js +57 -0
- package/dist/components/combobox/ComboBox.styles.js.map +1 -0
- package/dist/components/combobox/ComboBox.types.d.ts +46 -0
- package/dist/components/combobox/ComboBox.types.d.ts.map +1 -0
- package/dist/components/combobox/ComboBox.types.js +9 -0
- package/dist/components/combobox/ComboBox.types.js.map +1 -0
- package/dist/components/combobox/ComboBox.variants.d.ts +22 -0
- package/dist/components/combobox/ComboBox.variants.d.ts.map +1 -0
- package/dist/components/combobox/ComboBox.variants.js +68 -0
- package/dist/components/combobox/ComboBox.variants.js.map +1 -0
- package/dist/components/combobox/index.d.ts +6 -0
- package/dist/components/combobox/index.d.ts.map +1 -0
- package/dist/components/combobox/index.js +9 -0
- package/dist/components/combobox/index.js.map +1 -0
- package/dist/components/dialog/Dialog.d.ts +36 -0
- package/dist/components/dialog/Dialog.d.ts.map +1 -0
- package/dist/components/dialog/Dialog.js +84 -0
- package/dist/components/dialog/Dialog.js.map +1 -0
- package/dist/components/dialog/Dialog.styles.d.ts +8 -0
- package/dist/components/dialog/Dialog.styles.d.ts.map +1 -0
- package/dist/components/dialog/Dialog.styles.js +52 -0
- package/dist/components/dialog/Dialog.styles.js.map +1 -0
- package/dist/components/dialog/Dialog.types.d.ts +48 -0
- package/dist/components/dialog/Dialog.types.d.ts.map +1 -0
- package/dist/components/dialog/Dialog.types.js +10 -0
- package/dist/components/dialog/Dialog.types.js.map +1 -0
- package/dist/components/dialog/Dialog.variants.d.ts +13 -0
- package/dist/components/dialog/Dialog.variants.d.ts.map +1 -0
- package/dist/components/dialog/Dialog.variants.js +19 -0
- package/dist/components/dialog/Dialog.variants.js.map +1 -0
- package/dist/components/dialog/index.d.ts +6 -0
- package/dist/components/dialog/index.d.ts.map +1 -0
- package/dist/components/dialog/index.js +14 -0
- package/dist/components/dialog/index.js.map +1 -0
- package/dist/components/fab/FAB.d.ts +14 -0
- package/dist/components/fab/FAB.d.ts.map +1 -0
- package/dist/components/fab/FAB.js +46 -0
- package/dist/components/fab/FAB.js.map +1 -0
- package/dist/components/fab/FAB.styles.d.ts +8 -0
- package/dist/components/fab/FAB.styles.d.ts.map +1 -0
- package/dist/components/fab/FAB.styles.js +51 -0
- package/dist/components/fab/FAB.styles.js.map +1 -0
- package/dist/components/fab/FAB.types.d.ts +23 -0
- package/dist/components/fab/FAB.types.d.ts.map +1 -0
- package/dist/components/fab/FAB.types.js +8 -0
- package/dist/components/fab/FAB.types.js.map +1 -0
- package/dist/components/fab/FAB.variants.d.ts +48 -0
- package/dist/components/fab/FAB.variants.d.ts.map +1 -0
- package/dist/components/fab/FAB.variants.js +43 -0
- package/dist/components/fab/FAB.variants.js.map +1 -0
- package/dist/components/fab/index.d.ts +6 -0
- package/dist/components/fab/index.d.ts.map +1 -0
- package/dist/components/fab/index.js +9 -0
- package/dist/components/fab/index.js.map +1 -0
- package/dist/components/index.d.ts +30 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +46 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/input/Input.d.ts +17 -0
- package/dist/components/input/Input.d.ts.map +1 -0
- package/dist/components/input/Input.js +59 -0
- package/dist/components/input/Input.js.map +1 -0
- package/dist/components/input/Input.styles.d.ts +8 -0
- package/dist/components/input/Input.styles.d.ts.map +1 -0
- package/dist/components/input/Input.styles.js +25 -0
- package/dist/components/input/Input.styles.js.map +1 -0
- package/dist/components/input/Input.types.d.ts +25 -0
- package/dist/components/input/Input.types.d.ts.map +1 -0
- package/dist/components/input/Input.types.js +9 -0
- package/dist/components/input/Input.types.js.map +1 -0
- package/dist/components/input/Input.variants.d.ts +23 -0
- package/dist/components/input/Input.variants.d.ts.map +1 -0
- package/dist/components/input/Input.variants.js +61 -0
- package/dist/components/input/Input.variants.js.map +1 -0
- package/dist/components/input/index.d.ts +6 -0
- package/dist/components/input/index.d.ts.map +1 -0
- package/dist/components/input/index.js +9 -0
- package/dist/components/input/index.js.map +1 -0
- package/dist/components/separator/Separator.d.ts +17 -0
- package/dist/components/separator/Separator.d.ts.map +1 -0
- package/dist/components/separator/Separator.js +46 -0
- package/dist/components/separator/Separator.js.map +1 -0
- package/dist/components/separator/Separator.styles.d.ts +8 -0
- package/dist/components/separator/Separator.styles.d.ts.map +1 -0
- package/dist/components/separator/Separator.styles.js +25 -0
- package/dist/components/separator/Separator.styles.js.map +1 -0
- package/dist/components/separator/Separator.types.d.ts +25 -0
- package/dist/components/separator/Separator.types.d.ts.map +1 -0
- package/dist/components/separator/Separator.types.js +8 -0
- package/dist/components/separator/Separator.types.js.map +1 -0
- package/dist/components/separator/index.d.ts +6 -0
- package/dist/components/separator/index.d.ts.map +1 -0
- package/dist/components/separator/index.js +9 -0
- package/dist/components/separator/index.js.map +1 -0
- package/dist/components/text/Text.d.ts +18 -0
- package/dist/components/text/Text.d.ts.map +1 -0
- package/dist/components/text/Text.js +45 -0
- package/dist/components/text/Text.js.map +1 -0
- package/dist/components/text/Text.types.d.ts +14 -0
- package/dist/components/text/Text.types.d.ts.map +1 -0
- package/dist/components/text/Text.types.js +10 -0
- package/dist/components/text/Text.types.js.map +1 -0
- package/dist/components/text/Text.variants.d.ts +23 -0
- package/dist/components/text/Text.variants.d.ts.map +1 -0
- package/dist/components/text/Text.variants.js +32 -0
- package/dist/components/text/Text.variants.js.map +1 -0
- package/dist/components/text/index.d.ts +6 -0
- package/dist/components/text/index.d.ts.map +1 -0
- package/dist/components/text/index.js +9 -0
- package/dist/components/text/index.js.map +1 -0
- package/dist/design-tokens/animation.d.ts +22 -0
- package/dist/design-tokens/animation.d.ts.map +1 -0
- package/dist/design-tokens/animation.js +23 -0
- package/dist/design-tokens/animation.js.map +1 -0
- package/dist/design-tokens/border-radius.d.ts +15 -0
- package/dist/design-tokens/border-radius.d.ts.map +1 -0
- package/dist/design-tokens/border-radius.js +17 -0
- package/dist/design-tokens/border-radius.js.map +1 -0
- package/dist/design-tokens/colors.d.ts +179 -0
- package/dist/design-tokens/colors.d.ts.map +1 -0
- package/dist/design-tokens/colors.js +109 -0
- package/dist/design-tokens/colors.js.map +1 -0
- package/dist/design-tokens/index.d.ts +16 -0
- package/dist/design-tokens/index.d.ts.map +1 -0
- package/dist/design-tokens/index.js +32 -0
- package/dist/design-tokens/index.js.map +1 -0
- package/dist/design-tokens/shadows.d.ts +103 -0
- package/dist/design-tokens/shadows.d.ts.map +1 -0
- package/dist/design-tokens/shadows.js +75 -0
- package/dist/design-tokens/shadows.js.map +1 -0
- package/dist/design-tokens/spacing.d.ts +30 -0
- package/dist/design-tokens/spacing.d.ts.map +1 -0
- package/dist/design-tokens/spacing.js +32 -0
- package/dist/design-tokens/spacing.js.map +1 -0
- package/dist/design-tokens/typography.d.ts +40 -0
- package/dist/design-tokens/typography.d.ts.map +1 -0
- package/dist/design-tokens/typography.js +40 -0
- package/dist/design-tokens/typography.js.map +1 -0
- package/dist/primitives/Box.d.ts +38 -0
- package/dist/primitives/Box.d.ts.map +1 -0
- package/dist/primitives/Box.js +70 -0
- package/dist/primitives/Box.js.map +1 -0
- package/dist/primitives/Pressable.d.ts +30 -0
- package/dist/primitives/Pressable.d.ts.map +1 -0
- package/dist/primitives/Pressable.js +48 -0
- package/dist/primitives/Pressable.js.map +1 -0
- package/dist/primitives/Text.d.ts +23 -0
- package/dist/primitives/Text.d.ts.map +1 -0
- package/dist/primitives/Text.js +42 -0
- package/dist/primitives/Text.js.map +1 -0
- package/dist/primitives/index.d.ts +14 -0
- package/dist/primitives/index.d.ts.map +1 -0
- package/dist/primitives/index.js +16 -0
- package/dist/primitives/index.js.map +1 -0
- package/dist/theme/ThemeContext.d.ts +10 -0
- package/dist/theme/ThemeContext.d.ts.map +1 -0
- package/dist/theme/ThemeContext.js +19 -0
- package/dist/theme/ThemeContext.js.map +1 -0
- package/dist/theme/ThemeProvider.d.ts +23 -0
- package/dist/theme/ThemeProvider.d.ts.map +1 -0
- package/dist/theme/ThemeProvider.js +87 -0
- package/dist/theme/ThemeProvider.js.map +1 -0
- package/dist/theme/index.d.ts +9 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +14 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/theme/themes.d.ts +20 -0
- package/dist/theme/themes.d.ts.map +1 -0
- package/dist/theme/themes.js +65 -0
- package/dist/theme/themes.js.map +1 -0
- package/dist/theme/types.d.ts +92 -0
- package/dist/theme/types.d.ts.map +1 -0
- package/dist/theme/types.js +9 -0
- package/dist/theme/types.js.map +1 -0
- package/dist/theme/useTheme.d.ts +7 -0
- package/dist/theme/useTheme.d.ts.map +1 -0
- package/dist/theme/useTheme.js +9 -0
- package/dist/theme/useTheme.js.map +1 -0
- package/dist/utils/cn.d.ts +16 -0
- package/dist/utils/cn.d.ts.map +1 -0
- package/dist/utils/cn.js +33 -0
- package/dist/utils/cn.js.map +1 -0
- package/dist/utils/createVariants.d.ts +32 -0
- package/dist/utils/createVariants.d.ts.map +1 -0
- package/dist/utils/createVariants.js +26 -0
- package/dist/utils/createVariants.js.map +1 -0
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +13 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/mergeProps.d.ts +10 -0
- package/dist/utils/mergeProps.d.ts.map +1 -0
- package/dist/utils/mergeProps.js +31 -0
- package/dist/utils/mergeProps.js.map +1 -0
- package/package.json +46 -3
- package/src/components/accordion/Accordion.styles.ts +46 -0
- package/src/components/accordion/Accordion.tsx +247 -0
- package/src/components/accordion/Accordion.types.ts +52 -0
- package/src/components/accordion/index.ts +17 -0
- package/src/components/alert/Alert.styles.ts +34 -0
- package/src/components/alert/Alert.tsx +87 -0
- package/src/components/alert/Alert.types.ts +24 -0
- package/src/components/alert/Alert.variants.ts +57 -0
- package/src/components/alert/index.ts +6 -0
- package/src/components/avatar/Avatar.styles.ts +20 -0
- package/src/components/avatar/Avatar.tsx +74 -0
- package/src/components/avatar/Avatar.types.ts +24 -0
- package/src/components/avatar/Avatar.variants.ts +55 -0
- package/src/components/avatar/index.ts +6 -0
- package/src/components/badge/Badge.styles.ts +30 -0
- package/src/components/badge/Badge.tsx +47 -0
- package/src/components/badge/Badge.types.ts +24 -0
- package/src/components/badge/Badge.variants.ts +62 -0
- package/src/components/badge/index.ts +6 -0
- package/src/components/button/Button.styles.ts +16 -0
- package/src/components/button/Button.tsx +108 -0
- package/src/components/button/Button.types.ts +30 -0
- package/src/components/button/Button.variants.ts +68 -0
- package/src/components/button/index.ts +6 -0
- package/src/components/card/Card.styles.ts +28 -0
- package/src/components/card/Card.tsx +112 -0
- package/src/components/card/Card.types.ts +26 -0
- package/src/components/card/Card.variants.ts +38 -0
- package/src/components/card/index.ts +18 -0
- package/src/components/checkbox/CheckBox.styles.ts +30 -0
- package/src/components/checkbox/CheckBox.tsx +98 -0
- package/src/components/checkbox/CheckBox.types.ts +26 -0
- package/src/components/checkbox/CheckBox.variants.ts +25 -0
- package/src/components/checkbox/index.ts +6 -0
- package/src/components/combobox/ComboBox.styles.ts +55 -0
- package/src/components/combobox/ComboBox.tsx +224 -0
- package/src/components/combobox/ComboBox.types.ts +51 -0
- package/src/components/combobox/ComboBox.variants.ts +82 -0
- package/src/components/combobox/index.ts +6 -0
- package/src/components/dialog/Dialog.styles.ts +50 -0
- package/src/components/dialog/Dialog.tsx +221 -0
- package/src/components/dialog/Dialog.types.ts +55 -0
- package/src/components/dialog/Dialog.variants.ts +24 -0
- package/src/components/dialog/index.ts +20 -0
- package/src/components/fab/FAB.styles.ts +49 -0
- package/src/components/fab/FAB.tsx +84 -0
- package/src/components/fab/FAB.types.ts +31 -0
- package/src/components/fab/FAB.variants.ts +55 -0
- package/src/components/fab/index.ts +6 -0
- package/src/components/index.ts +88 -0
- package/src/components/input/Input.styles.ts +23 -0
- package/src/components/input/Input.tsx +139 -0
- package/src/components/input/Input.types.ts +28 -0
- package/src/components/input/Input.variants.ts +71 -0
- package/src/components/input/index.ts +6 -0
- package/src/components/separator/Separator.styles.ts +23 -0
- package/src/components/separator/Separator.tsx +70 -0
- package/src/components/separator/Separator.types.ts +28 -0
- package/src/components/separator/index.ts +10 -0
- package/src/components/text/Text.tsx +75 -0
- package/src/components/text/Text.types.ts +27 -0
- package/src/components/text/Text.variants.ts +44 -0
- package/src/components/text/index.ts +6 -0
- package/src/design-tokens/animation.ts +23 -0
- package/src/design-tokens/border-radius.ts +16 -0
- package/src/design-tokens/colors.ts +120 -0
- package/src/design-tokens/index.ts +21 -0
- package/src/design-tokens/shadows.ts +78 -0
- package/src/design-tokens/spacing.ts +31 -0
- package/src/design-tokens/typography.ts +45 -0
- package/src/primitives/Box.tsx +121 -0
- package/src/primitives/Pressable.tsx +106 -0
- package/src/primitives/Text.tsx +84 -0
- package/src/primitives/index.ts +15 -0
- package/src/theme/ThemeContext.ts +20 -0
- package/src/theme/ThemeProvider.tsx +152 -0
- package/src/theme/index.ts +9 -0
- package/src/theme/themes.ts +71 -0
- package/src/theme/types.ts +89 -0
- package/src/theme/useTheme.ts +7 -0
- package/src/utils/cn.ts +37 -0
- package/src/utils/createVariants.ts +47 -0
- package/src/utils/index.ts +7 -0
- package/src/utils/mergeProps.ts +35 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/checkbox/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ANAN-UI — Component: CheckBox Barrel Export
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.CheckBox = void 0;
|
|
7
|
+
var CheckBox_1 = require("./CheckBox");
|
|
8
|
+
Object.defineProperty(exports, "CheckBox", { enumerable: true, get: function () { return CheckBox_1.CheckBox; } });
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/checkbox/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ANAN-UI — Component: ComboBox
|
|
3
|
+
*
|
|
4
|
+
* A combobox (select) with a dropdown presented in a Modal. The trigger field
|
|
5
|
+
* mirrors Input's variant/size/error API. Options are shown in a modal card
|
|
6
|
+
* anchored to the bottom of the screen (reliable across platforms without
|
|
7
|
+
* measuring the trigger). The trigger exposes `accessibilityRole="combobox"`
|
|
8
|
+
* with `accessibilityState={{ expanded, disabled }}`; options are `menuitem`s
|
|
9
|
+
* with a `selected` state.
|
|
10
|
+
*/
|
|
11
|
+
import type { ComboBoxProps } from './ComboBox.types';
|
|
12
|
+
export declare function ComboBox({ options, placeholder, value: valueProp, defaultValue, onValueChange, error, label, hint, variant: variantProp, size: sizeProp, disabled, style, fieldStyle, dropdownStyle, optionStyle, ...rest }: ComboBoxProps): import("react").JSX.Element;
|
|
13
|
+
export declare namespace ComboBox {
|
|
14
|
+
var displayName: string;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=ComboBox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,OAAO,KAAK,EACV,aAAa,EAId,MAAM,kBAAkB,CAAC;AAE1B,wBAAgB,QAAQ,CAAC,EACvB,OAAO,EACP,WAAsB,EACtB,KAAK,EAAE,SAAS,EAChB,YAAY,EACZ,aAAa,EACb,KAAK,EACL,KAAK,EACL,IAAI,EACJ,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,QAAQ,EACd,QAAgB,EAChB,KAAK,EACL,UAAU,EACV,aAAa,EACb,WAAW,EACX,GAAG,IAAI,EACR,EAAE,aAAa,+BAmLf;yBApMe,QAAQ"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ComboBox = ComboBox;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
/**
|
|
6
|
+
* ANAN-UI — Component: ComboBox
|
|
7
|
+
*
|
|
8
|
+
* A combobox (select) with a dropdown presented in a Modal. The trigger field
|
|
9
|
+
* mirrors Input's variant/size/error API. Options are shown in a modal card
|
|
10
|
+
* anchored to the bottom of the screen (reliable across platforms without
|
|
11
|
+
* measuring the trigger). The trigger exposes `accessibilityRole="combobox"`
|
|
12
|
+
* with `accessibilityState={{ expanded, disabled }}`; options are `menuitem`s
|
|
13
|
+
* with a `selected` state.
|
|
14
|
+
*/
|
|
15
|
+
const react_1 = require("react");
|
|
16
|
+
const react_native_1 = require("react-native");
|
|
17
|
+
const theme_1 = require("../../theme");
|
|
18
|
+
const cn_1 = require("../../utils/cn");
|
|
19
|
+
const Text_1 = require("../../primitives/Text");
|
|
20
|
+
const ComboBox_variants_1 = require("./ComboBox.variants");
|
|
21
|
+
const ComboBox_styles_1 = require("./ComboBox.styles");
|
|
22
|
+
function ComboBox({ options, placeholder = 'Select', value: valueProp, defaultValue, onValueChange, error, label, hint, variant: variantProp, size: sizeProp, disabled = false, style, fieldStyle, dropdownStyle, optionStyle, ...rest }) {
|
|
23
|
+
const { theme } = (0, theme_1.useTheme)();
|
|
24
|
+
const isControlled = valueProp !== undefined;
|
|
25
|
+
const [internal, setInternal] = (0, react_1.useState)(defaultValue ?? '');
|
|
26
|
+
const value = isControlled ? valueProp ?? '' : internal;
|
|
27
|
+
const [open, setOpen] = (0, react_1.useState)(false);
|
|
28
|
+
const { variant, size, textSize, defaultVariant, defaultSize } = (0, ComboBox_variants_1.getComboBoxVariants)(theme);
|
|
29
|
+
const variantKey = variantProp ?? defaultVariant;
|
|
30
|
+
const sizeKey = sizeProp ?? defaultSize;
|
|
31
|
+
const hasError = error !== undefined && error.length > 0;
|
|
32
|
+
const message = hasError ? error : hint;
|
|
33
|
+
// Close on Android hardware back.
|
|
34
|
+
(0, react_1.useEffect)(() => {
|
|
35
|
+
if (!open)
|
|
36
|
+
return;
|
|
37
|
+
const sub = react_native_1.BackHandler.addEventListener('hardwareBackPress', () => {
|
|
38
|
+
setOpen(false);
|
|
39
|
+
return true;
|
|
40
|
+
});
|
|
41
|
+
return () => sub.remove();
|
|
42
|
+
}, [open]);
|
|
43
|
+
const selectedOption = options.find((o) => o.value === value);
|
|
44
|
+
const displayText = selectedOption?.label ?? placeholder;
|
|
45
|
+
const isPlaceholder = selectedOption === undefined;
|
|
46
|
+
const handleOpen = (0, react_1.useCallback)(() => {
|
|
47
|
+
if (!disabled)
|
|
48
|
+
setOpen(true);
|
|
49
|
+
}, [disabled]);
|
|
50
|
+
const handleClose = (0, react_1.useCallback)(() => setOpen(false), []);
|
|
51
|
+
const handleSelect = (0, react_1.useCallback)((opt) => {
|
|
52
|
+
if (opt.disabled)
|
|
53
|
+
return;
|
|
54
|
+
if (!isControlled)
|
|
55
|
+
setInternal(opt.value);
|
|
56
|
+
onValueChange?.(opt.value);
|
|
57
|
+
setOpen(false);
|
|
58
|
+
}, [isControlled, onValueChange]);
|
|
59
|
+
const baseBorder = variant[variantKey].container.borderColor ?? 'transparent';
|
|
60
|
+
const borderColor = hasError
|
|
61
|
+
? theme.colors.destructive
|
|
62
|
+
: open
|
|
63
|
+
? theme.colors.ring
|
|
64
|
+
: baseBorder;
|
|
65
|
+
return ((0, jsx_runtime_1.jsxs)(react_native_1.View, { ...rest, style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.container, style), children: [label !== undefined && ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: disabled ? 'mutedForeground' : 'foreground', fontSize: "sm", fontWeight: "medium", style: ComboBox_styles_1.comboBoxStyles.label, children: label })), (0, jsx_runtime_1.jsxs)(react_native_1.Pressable, { onPress: handleOpen, disabled: disabled, accessibilityRole: "combobox", accessibilityState: { expanded: open, disabled }, accessibilityLabel: label ?? placeholder, style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.fieldContainer, variant[variantKey].container, size[sizeKey], { borderColor }, disabled && { opacity: 0.5 }, fieldStyle), children: [(0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: isPlaceholder ? 'mutedForeground' : 'foreground', numberOfLines: 1, style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.fieldText, textSize[sizeKey]), children: displayText }), (0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "mutedForeground", fontSize: sizeKey === 'sm' ? 'xs' : sizeKey === 'lg' ? 'lg' : 'base', accessibilityElementsHidden: true, importantForAccessibility: "no-hide-descendants", children: '\u25BC' })] }), message !== undefined && ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: hasError ? 'destructive' : 'mutedForeground', fontSize: "sm", style: ComboBox_styles_1.comboBoxStyles.message, accessibilityRole: hasError ? 'alert' : 'text', children: message })), (0, jsx_runtime_1.jsx)(react_native_1.Modal, { visible: open, animationType: "fade", transparent: true, onRequestClose: handleClose, supportedOrientations: [
|
|
66
|
+
'portrait',
|
|
67
|
+
'landscape-left',
|
|
68
|
+
'landscape-right',
|
|
69
|
+
'portrait-upside-down',
|
|
70
|
+
], children: (0, jsx_runtime_1.jsx)(react_native_1.Pressable, { style: ComboBox_styles_1.comboBoxStyles.backdrop, onPress: handleClose, accessibilityLabel: "Close options", accessibilityRole: "button", children: (0, jsx_runtime_1.jsx)(react_native_1.View, { style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.dropdown, {
|
|
71
|
+
backgroundColor: theme.colors.card,
|
|
72
|
+
borderColor: theme.colors.border,
|
|
73
|
+
}, dropdownStyle), children: options.map((opt) => {
|
|
74
|
+
const selected = opt.value === value;
|
|
75
|
+
return ((0, jsx_runtime_1.jsxs)(react_native_1.Pressable, { onPress: () => handleSelect(opt), disabled: opt.disabled, accessibilityRole: "menuitem", accessibilityState: { selected, disabled: opt.disabled }, style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.option, selected && { backgroundColor: theme.colors.muted }, opt.disabled && { opacity: 0.4 }, optionStyle), children: [(0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { fontSize: "base", color: opt.disabled ? 'mutedForeground' : 'foreground', style: ComboBox_styles_1.comboBoxStyles.optionText, children: opt.label }), selected && ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "primary", fontSize: "sm", fontWeight: "bold", accessibilityElementsHidden: true, importantForAccessibility: "no-hide-descendants", children: '\u2713' }))] }, opt.value));
|
|
76
|
+
}) }) }) })] }));
|
|
77
|
+
}
|
|
78
|
+
ComboBox.displayName = 'ComboBox';
|
|
79
|
+
//# sourceMappingURL=ComboBox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.js","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ANAN-UI — Component: ComboBox Styles
|
|
3
|
+
*
|
|
4
|
+
* Static styles created with StyleSheet.create. The trigger field and
|
|
5
|
+
* dropdown colors are resolved from the theme at render time.
|
|
6
|
+
*/
|
|
7
|
+
export declare const comboBoxStyles: any;
|
|
8
|
+
//# sourceMappingURL=ComboBox.styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.styles.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,eAAO,MAAM,cAAc,KA4CzB,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ANAN-UI — Component: ComboBox Styles
|
|
4
|
+
*
|
|
5
|
+
* Static styles created with StyleSheet.create. The trigger field and
|
|
6
|
+
* dropdown colors are resolved from the theme at render time.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.comboBoxStyles = void 0;
|
|
10
|
+
const react_native_1 = require("react-native");
|
|
11
|
+
const design_tokens_1 = require("../../design-tokens");
|
|
12
|
+
exports.comboBoxStyles = react_native_1.StyleSheet.create({
|
|
13
|
+
container: {
|
|
14
|
+
width: '100%',
|
|
15
|
+
},
|
|
16
|
+
fieldContainer: {
|
|
17
|
+
flexDirection: 'row',
|
|
18
|
+
alignItems: 'center',
|
|
19
|
+
justifyContent: 'space-between',
|
|
20
|
+
gap: design_tokens_1.spacing[2],
|
|
21
|
+
width: '100%',
|
|
22
|
+
},
|
|
23
|
+
fieldText: {
|
|
24
|
+
flex: 1,
|
|
25
|
+
},
|
|
26
|
+
label: {
|
|
27
|
+
marginBottom: design_tokens_1.spacing[1],
|
|
28
|
+
},
|
|
29
|
+
message: {
|
|
30
|
+
marginTop: design_tokens_1.spacing[1],
|
|
31
|
+
},
|
|
32
|
+
backdrop: {
|
|
33
|
+
flex: 1,
|
|
34
|
+
justifyContent: 'flex-end',
|
|
35
|
+
padding: design_tokens_1.spacing[4],
|
|
36
|
+
backgroundColor: 'rgba(0, 0, 0, 0.4)',
|
|
37
|
+
},
|
|
38
|
+
dropdown: {
|
|
39
|
+
width: '100%',
|
|
40
|
+
borderRadius: design_tokens_1.borderRadius.lg,
|
|
41
|
+
borderWidth: 1,
|
|
42
|
+
overflow: 'hidden',
|
|
43
|
+
...(0, design_tokens_1.resolveShadow)('md'),
|
|
44
|
+
},
|
|
45
|
+
option: {
|
|
46
|
+
flexDirection: 'row',
|
|
47
|
+
alignItems: 'center',
|
|
48
|
+
justifyContent: 'space-between',
|
|
49
|
+
paddingHorizontal: design_tokens_1.spacing[4],
|
|
50
|
+
paddingVertical: design_tokens_1.spacing[3],
|
|
51
|
+
minHeight: 44,
|
|
52
|
+
},
|
|
53
|
+
optionText: {
|
|
54
|
+
flex: 1,
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
//# sourceMappingURL=ComboBox.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.styles.js","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.styles.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,+CAA0C;AAC1C,uDAA2E;AAE9D,QAAA,cAAc,GAAG,yBAAU,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE;QACT,KAAK,EAAE,MAAM;KACd;IACD,cAAc,EAAE;QACd,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,eAAe;QAC/B,GAAG,EAAE,uBAAO,CAAC,CAAC,CAAC;QACf,KAAK,EAAE,MAAM;KACd;IACD,SAAS,EAAE;QACT,IAAI,EAAE,CAAC;KACR;IACD,KAAK,EAAE;QACL,YAAY,EAAE,uBAAO,CAAC,CAAC,CAAC;KACzB;IACD,OAAO,EAAE;QACP,SAAS,EAAE,uBAAO,CAAC,CAAC,CAAC;KACtB;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,CAAC;QACP,cAAc,EAAE,UAAU;QAC1B,OAAO,EAAE,uBAAO,CAAC,CAAC,CAAC;QACnB,eAAe,EAAE,oBAAoB;KACtC;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,4BAAY,CAAC,EAAE;QAC7B,WAAW,EAAE,CAAC;QACd,QAAQ,EAAE,QAAQ;QAClB,GAAG,IAAA,6BAAa,EAAC,IAAI,CAAC;KACvB;IACD,MAAM,EAAE;QACN,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,eAAe;QAC/B,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;QAC7B,eAAe,EAAE,uBAAO,CAAC,CAAC,CAAC;QAC3B,SAAS,EAAE,EAAE;KACd;IACD,UAAU,EAAE;QACV,IAAI,EAAE,CAAC;KACR;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ANAN-UI — Component: ComboBox Types
|
|
3
|
+
*
|
|
4
|
+
* A combobox (select) with dropdown rendered in a Modal. Mirrors Input's
|
|
5
|
+
* variant/size/error API for the trigger field.
|
|
6
|
+
*/
|
|
7
|
+
import type { ViewProps, StyleProp, ViewStyle, TextStyle } from 'react-native';
|
|
8
|
+
export interface ComboBoxOption {
|
|
9
|
+
/** Unique value for this option. */
|
|
10
|
+
value: string;
|
|
11
|
+
/** Visible label. */
|
|
12
|
+
label: string;
|
|
13
|
+
/** Disables this option. */
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export type ComboBoxVariant = 'outline' | 'filled' | 'ghost';
|
|
17
|
+
export type ComboBoxSize = 'sm' | 'default' | 'lg';
|
|
18
|
+
export interface ComboBoxProps extends Omit<ViewProps, 'style' | 'onChange'> {
|
|
19
|
+
/** List of options. */
|
|
20
|
+
options: ComboBoxOption[];
|
|
21
|
+
/** Placeholder shown when no value is selected. */
|
|
22
|
+
placeholder?: string;
|
|
23
|
+
/** Controlled selected value. */
|
|
24
|
+
value?: string;
|
|
25
|
+
/** Uncontrolled default selected value. */
|
|
26
|
+
defaultValue?: string;
|
|
27
|
+
/** Called when the selection changes. */
|
|
28
|
+
onValueChange?: (value: string) => void;
|
|
29
|
+
/** Error message; shows destructive border and announces error. */
|
|
30
|
+
error?: string;
|
|
31
|
+
/** Optional label above the trigger field. */
|
|
32
|
+
label?: string;
|
|
33
|
+
/** Optional hint below the trigger field (hidden when error is set). */
|
|
34
|
+
hint?: string;
|
|
35
|
+
variant?: ComboBoxVariant;
|
|
36
|
+
size?: ComboBoxSize;
|
|
37
|
+
disabled?: boolean;
|
|
38
|
+
style?: StyleProp<ViewStyle>;
|
|
39
|
+
/** Style applied to the trigger field container. */
|
|
40
|
+
fieldStyle?: StyleProp<ViewStyle>;
|
|
41
|
+
/** Style applied to the dropdown container. */
|
|
42
|
+
dropdownStyle?: StyleProp<ViewStyle>;
|
|
43
|
+
/** Style applied to each option text. */
|
|
44
|
+
optionStyle?: StyleProp<TextStyle>;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=ComboBox.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.types.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG/E,MAAM,WAAW,cAAc;IAC7B,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;AAEnD,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,UAAU,CAAC;IAC1E,uBAAuB;IACvB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,oDAAoD;IACpD,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,+CAA+C;IAC/C,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACrC,yCAAyC;IACzC,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CACpC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ANAN-UI — Component: ComboBox Types
|
|
4
|
+
*
|
|
5
|
+
* A combobox (select) with dropdown rendered in a Modal. Mirrors Input's
|
|
6
|
+
* variant/size/error API for the trigger field.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
//# sourceMappingURL=ComboBox.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.types.js","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ANAN-UI — Component: ComboBox Variants
|
|
3
|
+
*
|
|
4
|
+
* Variant/size style definitions for the trigger field, resolved against the
|
|
5
|
+
* active theme at render time.
|
|
6
|
+
*/
|
|
7
|
+
import type { TextStyle, ViewStyle } from 'react-native';
|
|
8
|
+
import type { Theme } from '../../theme/types';
|
|
9
|
+
import type { ComboBoxVariant, ComboBoxSize } from './ComboBox.types';
|
|
10
|
+
export interface ComboBoxFieldVariantEntry {
|
|
11
|
+
container: ViewStyle;
|
|
12
|
+
text: TextStyle;
|
|
13
|
+
}
|
|
14
|
+
export interface ComboBoxVariantsConfig {
|
|
15
|
+
variant: Record<ComboBoxVariant, ComboBoxFieldVariantEntry>;
|
|
16
|
+
size: Record<ComboBoxSize, ViewStyle>;
|
|
17
|
+
textSize: Record<ComboBoxSize, TextStyle>;
|
|
18
|
+
defaultVariant: ComboBoxVariant;
|
|
19
|
+
defaultSize: ComboBoxSize;
|
|
20
|
+
}
|
|
21
|
+
export declare function getComboBoxVariants(theme: Theme): ComboBoxVariantsConfig;
|
|
22
|
+
//# sourceMappingURL=ComboBox.variants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.variants.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.variants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGtE,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC,eAAe,EAAE,yBAAyB,CAAC,CAAC;IAC5D,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACtC,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC1C,cAAc,EAAE,eAAe,CAAC;IAChC,WAAW,EAAE,YAAY,CAAC;CAC3B;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,sBAAsB,CAwDxE"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ANAN-UI — Component: ComboBox Variants
|
|
4
|
+
*
|
|
5
|
+
* Variant/size style definitions for the trigger field, resolved against the
|
|
6
|
+
* active theme at render time.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.getComboBoxVariants = getComboBoxVariants;
|
|
10
|
+
const design_tokens_1 = require("../../design-tokens");
|
|
11
|
+
function getComboBoxVariants(theme) {
|
|
12
|
+
return {
|
|
13
|
+
variant: {
|
|
14
|
+
outline: {
|
|
15
|
+
container: {
|
|
16
|
+
borderWidth: 1,
|
|
17
|
+
borderColor: theme.colors.border,
|
|
18
|
+
backgroundColor: theme.colors.card,
|
|
19
|
+
},
|
|
20
|
+
text: { color: theme.colors.foreground },
|
|
21
|
+
},
|
|
22
|
+
filled: {
|
|
23
|
+
container: {
|
|
24
|
+
borderWidth: 1,
|
|
25
|
+
borderColor: 'transparent',
|
|
26
|
+
backgroundColor: theme.colors.muted,
|
|
27
|
+
},
|
|
28
|
+
text: { color: theme.colors.foreground },
|
|
29
|
+
},
|
|
30
|
+
ghost: {
|
|
31
|
+
container: {
|
|
32
|
+
borderWidth: 1,
|
|
33
|
+
borderColor: 'transparent',
|
|
34
|
+
backgroundColor: 'transparent',
|
|
35
|
+
},
|
|
36
|
+
text: { color: theme.colors.foreground },
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
size: {
|
|
40
|
+
sm: {
|
|
41
|
+
minHeight: 32,
|
|
42
|
+
paddingHorizontal: design_tokens_1.spacing[2],
|
|
43
|
+
paddingVertical: design_tokens_1.spacing[1],
|
|
44
|
+
borderRadius: design_tokens_1.borderRadius.md,
|
|
45
|
+
},
|
|
46
|
+
default: {
|
|
47
|
+
minHeight: 40,
|
|
48
|
+
paddingHorizontal: design_tokens_1.spacing[3],
|
|
49
|
+
paddingVertical: design_tokens_1.spacing[2],
|
|
50
|
+
borderRadius: design_tokens_1.borderRadius.md,
|
|
51
|
+
},
|
|
52
|
+
lg: {
|
|
53
|
+
minHeight: 48,
|
|
54
|
+
paddingHorizontal: design_tokens_1.spacing[4],
|
|
55
|
+
paddingVertical: design_tokens_1.spacing[3],
|
|
56
|
+
borderRadius: design_tokens_1.borderRadius.lg,
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
textSize: {
|
|
60
|
+
sm: { fontSize: theme.typography.fontSize.sm },
|
|
61
|
+
default: { fontSize: theme.typography.fontSize.base },
|
|
62
|
+
lg: { fontSize: theme.typography.fontSize.lg },
|
|
63
|
+
},
|
|
64
|
+
defaultVariant: 'outline',
|
|
65
|
+
defaultSize: 'default',
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=ComboBox.variants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.variants.js","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.variants.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAoBH,kDAwDC;AAvED,uDAA4D;AAe5D,SAAgB,mBAAmB,CAAC,KAAY;IAC9C,OAAO;QACL,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,SAAS,EAAE;oBACT,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;oBAChC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;iBACnC;gBACD,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE;aACzC;YACD,MAAM,EAAE;gBACN,SAAS,EAAE;oBACT,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,aAAa;oBAC1B,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;iBACpC;gBACD,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE;aACzC;YACD,KAAK,EAAE;gBACL,SAAS,EAAE;oBACT,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,aAAa;oBAC1B,eAAe,EAAE,aAAa;iBAC/B;gBACD,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE;aACzC;SACF;QACD,IAAI,EAAE;YACJ,EAAE,EAAE;gBACF,SAAS,EAAE,EAAE;gBACb,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC7B,eAAe,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC3B,YAAY,EAAE,4BAAY,CAAC,EAAE;aAC9B;YACD,OAAO,EAAE;gBACP,SAAS,EAAE,EAAE;gBACb,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC7B,eAAe,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC3B,YAAY,EAAE,4BAAY,CAAC,EAAE;aAC9B;YACD,EAAE,EAAE;gBACF,SAAS,EAAE,EAAE;gBACb,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC7B,eAAe,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC3B,YAAY,EAAE,4BAAY,CAAC,EAAE;aAC9B;SACF;QACD,QAAQ,EAAE;YACR,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE;YAC9C,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE;YACrD,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE;SAC/C;QACD,cAAc,EAAE,SAAS;QACzB,WAAW,EAAE,SAAS;KACvB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ANAN-UI — Component: ComboBox Barrel Export
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ComboBox = void 0;
|
|
7
|
+
var ComboBox_1 = require("./ComboBox");
|
|
8
|
+
Object.defineProperty(exports, "ComboBox", { enumerable: true, get: function () { return ComboBox_1.ComboBox; } });
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/combobox/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ANAN-UI — Component: Dialog
|
|
3
|
+
*
|
|
4
|
+
* A modal dialog with composable sub-components. Controlled via `open` /
|
|
5
|
+
* `onOpenChange`. Supports backdrop dismiss and Android hardware back.
|
|
6
|
+
*
|
|
7
|
+
* The content exposes `accessibilityViewIsModal` so screen readers trap
|
|
8
|
+
* focus within the dialog. The overlay is a semi-transparent backdrop that
|
|
9
|
+
* captures taps to dismiss when `dismissible` is true.
|
|
10
|
+
*/
|
|
11
|
+
import type { DialogProps, DialogContentProps, DialogTitleProps, DialogDescriptionProps, DialogFooterProps, DialogCloseProps } from './Dialog.types';
|
|
12
|
+
export declare function Dialog({ open, onOpenChange, dismissible, animationType, overlayColor, overlayOpacity, style, children, ...rest }: DialogProps): import("react").JSX.Element | null;
|
|
13
|
+
export declare namespace Dialog {
|
|
14
|
+
var displayName: string;
|
|
15
|
+
}
|
|
16
|
+
export declare function DialogContent({ style, children, ...rest }: DialogContentProps): import("react").JSX.Element;
|
|
17
|
+
export declare namespace DialogContent {
|
|
18
|
+
var displayName: string;
|
|
19
|
+
}
|
|
20
|
+
export declare function DialogTitle({ style, children, ...rest }: DialogTitleProps): import("react").JSX.Element;
|
|
21
|
+
export declare namespace DialogTitle {
|
|
22
|
+
var displayName: string;
|
|
23
|
+
}
|
|
24
|
+
export declare function DialogDescription({ style, children, ...rest }: DialogDescriptionProps): import("react").JSX.Element;
|
|
25
|
+
export declare namespace DialogDescription {
|
|
26
|
+
var displayName: string;
|
|
27
|
+
}
|
|
28
|
+
export declare function DialogFooter({ style, children, ...rest }: DialogFooterProps): import("react").JSX.Element;
|
|
29
|
+
export declare namespace DialogFooter {
|
|
30
|
+
var displayName: string;
|
|
31
|
+
}
|
|
32
|
+
export declare function DialogClose({ label, style, ...rest }: DialogCloseProps): import("react").JSX.Element;
|
|
33
|
+
export declare namespace DialogClose {
|
|
34
|
+
var displayName: string;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=Dialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAeH,OAAO,KAAK,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAgBxB,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,YAAY,EACZ,WAAkB,EAClB,aAAsB,EACtB,YAAY,EACZ,cAAoB,EACpB,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,WAAW,sCA2Db;yBArEe,MAAM;;;AAyEtB,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,kBAAkB,+BAMpB;yBAVe,aAAa;;;AAc7B,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,gBAAgB,+BAalB;yBAjBe,WAAW;;;AAqB3B,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,sBAAsB,+BAWxB;yBAfe,iBAAiB;;;AAmBjC,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,iBAAiB,+BAMnB;yBAVe,YAAY;;;AAc5B,wBAAgB,WAAW,CAAC,EAC1B,KAAe,EACf,KAAK,EACL,GAAG,IAAI,EACR,EAAE,gBAAgB,+BA0BlB;yBA9Be,WAAW"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Dialog = Dialog;
|
|
4
|
+
exports.DialogContent = DialogContent;
|
|
5
|
+
exports.DialogTitle = DialogTitle;
|
|
6
|
+
exports.DialogDescription = DialogDescription;
|
|
7
|
+
exports.DialogFooter = DialogFooter;
|
|
8
|
+
exports.DialogClose = DialogClose;
|
|
9
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
10
|
+
/**
|
|
11
|
+
* ANAN-UI — Component: Dialog
|
|
12
|
+
*
|
|
13
|
+
* A modal dialog with composable sub-components. Controlled via `open` /
|
|
14
|
+
* `onOpenChange`. Supports backdrop dismiss and Android hardware back.
|
|
15
|
+
*
|
|
16
|
+
* The content exposes `accessibilityViewIsModal` so screen readers trap
|
|
17
|
+
* focus within the dialog. The overlay is a semi-transparent backdrop that
|
|
18
|
+
* captures taps to dismiss when `dismissible` is true.
|
|
19
|
+
*/
|
|
20
|
+
const react_1 = require("react");
|
|
21
|
+
const react_native_1 = require("react-native");
|
|
22
|
+
const theme_1 = require("../../theme");
|
|
23
|
+
const cn_1 = require("../../utils/cn");
|
|
24
|
+
const Text_1 = require("../../primitives/Text");
|
|
25
|
+
const Dialog_variants_1 = require("./Dialog.variants");
|
|
26
|
+
const Dialog_styles_1 = require("./Dialog.styles");
|
|
27
|
+
const DialogContext = (0, react_1.createContext)(null);
|
|
28
|
+
function useDialogContext() {
|
|
29
|
+
const ctx = (0, react_1.useContext)(DialogContext);
|
|
30
|
+
if (ctx === null) {
|
|
31
|
+
throw new Error('Dialog sub-components must be used within a <Dialog>');
|
|
32
|
+
}
|
|
33
|
+
return ctx;
|
|
34
|
+
}
|
|
35
|
+
function Dialog({ open, onOpenChange, dismissible = true, animationType = 'fade', overlayColor, overlayOpacity = 0.5, style, children, ...rest }) {
|
|
36
|
+
const { theme } = (0, theme_1.useTheme)();
|
|
37
|
+
const { content: contentVariant, overlay: overlayVariant } = (0, Dialog_variants_1.getDialogVariants)(theme);
|
|
38
|
+
// Android hardware back dismiss
|
|
39
|
+
(0, react_1.useEffect)(() => {
|
|
40
|
+
if (!open || !dismissible)
|
|
41
|
+
return;
|
|
42
|
+
const sub = react_native_1.BackHandler.addEventListener('hardwareBackPress', () => {
|
|
43
|
+
onOpenChange(false);
|
|
44
|
+
return true;
|
|
45
|
+
});
|
|
46
|
+
return () => sub.remove();
|
|
47
|
+
}, [open, dismissible, onOpenChange]);
|
|
48
|
+
if (!open)
|
|
49
|
+
return null;
|
|
50
|
+
const backdropColor = overlayColor ?? `rgba(0, 0, 0, ${overlayOpacity})`;
|
|
51
|
+
const context = {
|
|
52
|
+
onClose: () => onOpenChange(false),
|
|
53
|
+
};
|
|
54
|
+
return ((0, jsx_runtime_1.jsx)(DialogContext.Provider, { value: context, children: (0, jsx_runtime_1.jsx)(react_native_1.Modal, { visible: open, animationType: animationType, transparent: true, onRequestClose: dismissible ? () => onOpenChange(false) : undefined, supportedOrientations: [
|
|
55
|
+
'portrait',
|
|
56
|
+
'landscape-left',
|
|
57
|
+
'landscape-right',
|
|
58
|
+
'portrait-upside-down',
|
|
59
|
+
], children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { accessibilityElementsHidden: !open, importantForAccessibility: open ? 'auto' : 'no-hide-descendants', style: (0, cn_1.cn)(Dialog_styles_1.dialogStyles.overlay, overlayVariant, { backgroundColor: backdropColor }), children: [(0, jsx_runtime_1.jsx)(react_native_1.Pressable, { onPress: dismissible ? () => onOpenChange(false) : undefined, style: react_native_1.StyleSheet.absoluteFill, accessibilityElementsHidden: true, importantForAccessibility: "no-hide-descendants" }), (0, jsx_runtime_1.jsx)(react_native_1.View, { accessibilityViewIsModal: true, ...rest, style: (0, cn_1.cn)(Dialog_styles_1.dialogStyles.content, contentVariant, style), children: children })] }) }) }));
|
|
60
|
+
}
|
|
61
|
+
Dialog.displayName = 'Dialog';
|
|
62
|
+
function DialogContent({ style, children, ...rest }) {
|
|
63
|
+
return ((0, jsx_runtime_1.jsx)(react_native_1.View, { ...rest, style: style, children: children }));
|
|
64
|
+
}
|
|
65
|
+
DialogContent.displayName = 'DialogContent';
|
|
66
|
+
function DialogTitle({ style, children, ...rest }) {
|
|
67
|
+
return ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "foreground", fontSize: "lg", fontWeight: "semibold", accessibilityRole: "header", ...rest, style: style, children: children }));
|
|
68
|
+
}
|
|
69
|
+
DialogTitle.displayName = 'DialogTitle';
|
|
70
|
+
function DialogDescription({ style, children, ...rest }) {
|
|
71
|
+
return ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "mutedForeground", fontSize: "sm", ...rest, style: style, children: children }));
|
|
72
|
+
}
|
|
73
|
+
DialogDescription.displayName = 'DialogDescription';
|
|
74
|
+
function DialogFooter({ style, children, ...rest }) {
|
|
75
|
+
return ((0, jsx_runtime_1.jsx)(react_native_1.View, { ...rest, style: (0, cn_1.cn)(Dialog_styles_1.dialogStyles.footer, style), children: children }));
|
|
76
|
+
}
|
|
77
|
+
DialogFooter.displayName = 'DialogFooter';
|
|
78
|
+
function DialogClose({ label = 'Close', style, ...rest }) {
|
|
79
|
+
const { theme } = (0, theme_1.useTheme)();
|
|
80
|
+
const { onClose } = useDialogContext();
|
|
81
|
+
return ((0, jsx_runtime_1.jsx)(react_native_1.Pressable, { ...rest, onPress: onClose, accessibilityRole: "button", accessibilityLabel: label, hitSlop: 8, style: (0, cn_1.cn)(Dialog_styles_1.dialogStyles.closeButton, { backgroundColor: theme.colors.muted }, style), children: (0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "mutedForeground", fontSize: "sm", fontWeight: "bold", children: '\u00D7' }) }));
|
|
82
|
+
}
|
|
83
|
+
DialogClose.displayName = 'DialogClose';
|
|
84
|
+
//# sourceMappingURL=Dialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ANAN-UI — Component: Dialog Styles
|
|
3
|
+
*
|
|
4
|
+
* Static styles created with StyleSheet.create. The content surface and
|
|
5
|
+
* shadows are resolved from the theme at render time via Dialog.variants.
|
|
6
|
+
*/
|
|
7
|
+
export declare const dialogStyles: any;
|
|
8
|
+
//# sourceMappingURL=Dialog.styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dialog.styles.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,eAAO,MAAM,YAAY,KAuCvB,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ANAN-UI — Component: Dialog Styles
|
|
4
|
+
*
|
|
5
|
+
* Static styles created with StyleSheet.create. The content surface and
|
|
6
|
+
* shadows are resolved from the theme at render time via Dialog.variants.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.dialogStyles = void 0;
|
|
10
|
+
const react_native_1 = require("react-native");
|
|
11
|
+
const design_tokens_1 = require("../../design-tokens");
|
|
12
|
+
exports.dialogStyles = react_native_1.StyleSheet.create({
|
|
13
|
+
overlay: {
|
|
14
|
+
...react_native_1.StyleSheet.absoluteFillObject,
|
|
15
|
+
alignItems: 'center',
|
|
16
|
+
justifyContent: 'center',
|
|
17
|
+
padding: design_tokens_1.spacing[4],
|
|
18
|
+
},
|
|
19
|
+
content: {
|
|
20
|
+
width: '100%',
|
|
21
|
+
maxWidth: 400,
|
|
22
|
+
borderRadius: design_tokens_1.borderRadius.lg,
|
|
23
|
+
overflow: 'hidden',
|
|
24
|
+
},
|
|
25
|
+
header: {
|
|
26
|
+
padding: design_tokens_1.spacing[5],
|
|
27
|
+
gap: design_tokens_1.spacing[1],
|
|
28
|
+
},
|
|
29
|
+
body: {
|
|
30
|
+
paddingHorizontal: design_tokens_1.spacing[5],
|
|
31
|
+
paddingBottom: design_tokens_1.spacing[4],
|
|
32
|
+
},
|
|
33
|
+
footer: {
|
|
34
|
+
flexDirection: 'row',
|
|
35
|
+
alignItems: 'center',
|
|
36
|
+
justifyContent: 'flex-end',
|
|
37
|
+
gap: design_tokens_1.spacing[2],
|
|
38
|
+
padding: design_tokens_1.spacing[4],
|
|
39
|
+
paddingTop: 0,
|
|
40
|
+
},
|
|
41
|
+
closeButton: {
|
|
42
|
+
position: 'absolute',
|
|
43
|
+
top: design_tokens_1.spacing[3],
|
|
44
|
+
right: design_tokens_1.spacing[3],
|
|
45
|
+
width: 32,
|
|
46
|
+
height: 32,
|
|
47
|
+
alignItems: 'center',
|
|
48
|
+
justifyContent: 'center',
|
|
49
|
+
borderRadius: 9999,
|
|
50
|
+
},
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=Dialog.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dialog.styles.js","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.styles.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,+CAA0C;AAC1C,uDAA4D;AAE/C,QAAA,YAAY,GAAG,yBAAU,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE;QACP,GAAG,yBAAU,CAAC,kBAAkB;QAChC,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,QAAQ;QACxB,OAAO,EAAE,uBAAO,CAAC,CAAC,CAAC;KACpB;IACD,OAAO,EAAE;QACP,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,GAAG;QACb,YAAY,EAAE,4BAAY,CAAC,EAAE;QAC7B,QAAQ,EAAE,QAAQ;KACnB;IACD,MAAM,EAAE;QACN,OAAO,EAAE,uBAAO,CAAC,CAAC,CAAC;QACnB,GAAG,EAAE,uBAAO,CAAC,CAAC,CAAC;KAChB;IACD,IAAI,EAAE;QACJ,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;QAC7B,aAAa,EAAE,uBAAO,CAAC,CAAC,CAAC;KAC1B;IACD,MAAM,EAAE;QACN,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,UAAU;QAC1B,GAAG,EAAE,uBAAO,CAAC,CAAC,CAAC;QACf,OAAO,EAAE,uBAAO,CAAC,CAAC,CAAC;QACnB,UAAU,EAAE,CAAC;KACd;IACD,WAAW,EAAE;QACX,QAAQ,EAAE,UAAU;QACpB,GAAG,EAAE,uBAAO,CAAC,CAAC,CAAC;QACf,KAAK,EAAE,uBAAO,CAAC,CAAC,CAAC;QACjB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,QAAQ;QACxB,YAAY,EAAE,IAAI;KACnB;CACF,CAAC,CAAC"}
|