orn-ui 0.2.9 → 0.3.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/AGENTS.md +67 -52
- package/README.md +5 -9
- package/lib/commonjs/atoms/Avatar.js +77 -5
- package/lib/commonjs/atoms/Avatar.js.map +1 -1
- package/lib/commonjs/atoms/Badge.js +17 -8
- package/lib/commonjs/atoms/Badge.js.map +1 -1
- package/lib/commonjs/atoms/Button.js +108 -39
- package/lib/commonjs/atoms/Button.js.map +1 -1
- package/lib/commonjs/atoms/Card.js +24 -2
- package/lib/commonjs/atoms/Card.js.map +1 -1
- package/lib/commonjs/atoms/Checkbox.js +41 -10
- package/lib/commonjs/atoms/Checkbox.js.map +1 -1
- package/lib/commonjs/atoms/Divider.js +30 -5
- package/lib/commonjs/atoms/Divider.js.map +1 -1
- package/lib/commonjs/atoms/EmptyState.js +58 -20
- package/lib/commonjs/atoms/EmptyState.js.map +1 -1
- package/lib/commonjs/atoms/Fab.js +32 -12
- package/lib/commonjs/atoms/Fab.js.map +1 -1
- package/lib/commonjs/atoms/Gradient.js +102 -36
- package/lib/commonjs/atoms/Gradient.js.map +1 -1
- package/lib/commonjs/atoms/IconButton.js +25 -4
- package/lib/commonjs/atoms/IconButton.js.map +1 -1
- package/lib/commonjs/atoms/Image.js +61 -25
- package/lib/commonjs/atoms/Image.js.map +1 -1
- package/lib/commonjs/atoms/Input.js +105 -17
- package/lib/commonjs/atoms/Input.js.map +1 -1
- package/lib/commonjs/atoms/KeyValueRow.js +37 -9
- package/lib/commonjs/atoms/KeyValueRow.js.map +1 -1
- package/lib/commonjs/atoms/PressableScale.js +25 -5
- package/lib/commonjs/atoms/PressableScale.js.map +1 -1
- package/lib/commonjs/atoms/ShinyText.js +29 -29
- package/lib/commonjs/atoms/Skeleton.js +28 -13
- package/lib/commonjs/atoms/Skeleton.js.map +1 -1
- package/lib/commonjs/atoms/Spinner.js +81 -22
- package/lib/commonjs/atoms/Spinner.js.map +1 -1
- package/lib/commonjs/atoms/Text.js +56 -5
- package/lib/commonjs/atoms/Text.js.map +1 -1
- package/lib/commonjs/atoms/Transition.js +46 -43
- package/lib/commonjs/atoms/Transition.js.map +1 -1
- package/lib/commonjs/atoms/index.js +6 -0
- package/lib/commonjs/atoms/index.js.map +1 -1
- package/lib/commonjs/atoms/inputValidation.js +56 -0
- package/lib/commonjs/atoms/inputValidation.js.map +1 -0
- package/lib/commonjs/icons/Icon.js +4 -4
- package/lib/commonjs/icons/defaultIcons.js +576 -24
- package/lib/commonjs/icons/defaultIcons.js.map +1 -1
- package/lib/commonjs/icons/index.js +6 -0
- package/lib/commonjs/icons/index.js.map +1 -1
- package/lib/commonjs/molecules/AvatarHeader.js +47 -14
- package/lib/commonjs/molecules/AvatarHeader.js.map +1 -1
- package/lib/commonjs/molecules/FormActions.js +25 -9
- package/lib/commonjs/molecules/FormActions.js.map +1 -1
- package/lib/commonjs/molecules/InfoRow.js +30 -14
- package/lib/commonjs/molecules/InfoRow.js.map +1 -1
- package/lib/commonjs/molecules/OptionCard.js +37 -22
- package/lib/commonjs/molecules/OptionCard.js.map +1 -1
- package/lib/commonjs/molecules/SegmentedControl.js +103 -14
- package/lib/commonjs/molecules/SegmentedControl.js.map +1 -1
- package/lib/commonjs/molecules/Stepper.js +61 -16
- package/lib/commonjs/molecules/Stepper.js.map +1 -1
- package/lib/commonjs/molecules/Steps.js +105 -41
- package/lib/commonjs/molecules/Steps.js.map +1 -1
- package/lib/commonjs/molecules/SymmetricGrid.js +26 -18
- package/lib/commonjs/molecules/SymmetricGrid.js.map +1 -1
- package/lib/commonjs/organisms/Alert.js +49 -35
- package/lib/commonjs/organisms/Alert.js.map +1 -1
- package/lib/commonjs/organisms/AlertProvider.js +10 -10
- package/lib/commonjs/organisms/BottomSheet.js +137 -85
- package/lib/commonjs/organisms/BottomSheet.js.map +1 -1
- package/lib/commonjs/organisms/Chart.js +197 -156
- package/lib/commonjs/organisms/Chart.js.map +1 -1
- package/lib/commonjs/organisms/DateField.js +36 -20
- package/lib/commonjs/organisms/DateField.js.map +1 -1
- package/lib/commonjs/organisms/DatePicker.js +56 -33
- package/lib/commonjs/organisms/DatePicker.js.map +1 -1
- package/lib/commonjs/organisms/List.js +62 -34
- package/lib/commonjs/organisms/List.js.map +1 -1
- package/lib/commonjs/organisms/Modal.js +120 -82
- package/lib/commonjs/organisms/Modal.js.map +1 -1
- package/lib/commonjs/organisms/NavigationBar.js +63 -24
- package/lib/commonjs/organisms/NavigationBar.js.map +1 -1
- package/lib/commonjs/organisms/OptionWheel.js +64 -64
- package/lib/commonjs/organisms/OptionWheel.js.map +1 -1
- package/lib/commonjs/organisms/ReorderableList.js +48 -27
- package/lib/commonjs/organisms/ReorderableList.js.map +1 -1
- package/lib/commonjs/organisms/Screen.js +68 -35
- package/lib/commonjs/organisms/Screen.js.map +1 -1
- package/lib/commonjs/organisms/SearchList.js +56 -26
- package/lib/commonjs/organisms/SearchList.js.map +1 -1
- package/lib/commonjs/organisms/Select.js +45 -24
- package/lib/commonjs/organisms/Select.js.map +1 -1
- package/lib/commonjs/organisms/Slides.js +36 -23
- package/lib/commonjs/organisms/Slides.js.map +1 -1
- package/lib/commonjs/organisms/ThemeToggle.js +10 -9
- package/lib/commonjs/organisms/ThemeToggle.js.map +1 -1
- package/lib/commonjs/organisms/Timeline.js +73 -56
- package/lib/commonjs/organisms/Timeline.js.map +1 -1
- package/lib/commonjs/organisms/Toast.js +46 -15
- package/lib/commonjs/organisms/Toast.js.map +1 -1
- package/lib/commonjs/organisms/ToastProvider.js +14 -10
- package/lib/commonjs/organisms/ToastProvider.js.map +1 -1
- package/lib/commonjs/organisms/Wizard.js +40 -15
- package/lib/commonjs/organisms/Wizard.js.map +1 -1
- package/lib/commonjs/organisms/chart/frame.js +25 -25
- package/lib/commonjs/organisms/chart/frame.js.map +1 -1
- package/lib/commonjs/organisms/chart/marks.js +42 -42
- package/lib/commonjs/organisms/chart/math.js +84 -85
- package/lib/commonjs/organisms/chart/math.js.map +1 -1
- package/lib/commonjs/organisms/chart/palette.js +28 -28
- package/lib/commonjs/organisms/imperativeBridge.js +5 -5
- package/lib/commonjs/organisms/imperativeBridge.js.map +1 -1
- package/lib/commonjs/organisms/useSlides.js +53 -21
- package/lib/commonjs/organisms/useSlides.js.map +1 -1
- package/lib/commonjs/safe-area/SafeAreaUIProvider.js +9 -66
- package/lib/commonjs/safe-area/SafeAreaUIProvider.js.map +1 -1
- package/lib/commonjs/safe-area/index.js.map +1 -1
- package/lib/commonjs/theme/KeyboardAvoidance.js +206 -0
- package/lib/commonjs/theme/KeyboardAvoidance.js.map +1 -0
- package/lib/commonjs/theme/NativeOverlay.js +263 -0
- package/lib/commonjs/theme/NativeOverlay.js.map +1 -0
- package/lib/commonjs/theme/UIProvider.js +86 -33
- package/lib/commonjs/theme/UIProvider.js.map +1 -1
- package/lib/commonjs/theme/colors.js +17 -17
- package/lib/commonjs/theme/colors.js.map +1 -1
- package/lib/commonjs/theme/createStyles.js +19 -16
- package/lib/commonjs/theme/createStyles.js.map +1 -1
- package/lib/commonjs/theme/createTheme.js +6 -6
- package/lib/commonjs/theme/index.js +6 -0
- package/lib/commonjs/theme/index.js.map +1 -1
- package/lib/commonjs/theme/insets.js +1 -1
- package/lib/commonjs/theme/labels.js +29 -1
- package/lib/commonjs/theme/labels.js.map +1 -1
- package/lib/commonjs/theme/palettes.js +25 -23
- package/lib/commonjs/theme/palettes.js.map +1 -1
- package/lib/commonjs/theme/tokens.js +28 -14
- package/lib/commonjs/theme/tokens.js.map +1 -1
- package/lib/commonjs/theme/useKeyboardField.js +36 -0
- package/lib/commonjs/theme/useKeyboardField.js.map +1 -0
- package/lib/commonjs/theme/useReduceMotion.js +31 -0
- package/lib/commonjs/theme/useReduceMotion.js.map +1 -0
- package/lib/module/atoms/Avatar.js +79 -8
- package/lib/module/atoms/Avatar.js.map +1 -1
- package/lib/module/atoms/Badge.js +17 -8
- package/lib/module/atoms/Badge.js.map +1 -1
- package/lib/module/atoms/Button.js +110 -41
- package/lib/module/atoms/Button.js.map +1 -1
- package/lib/module/atoms/Card.js +24 -2
- package/lib/module/atoms/Card.js.map +1 -1
- package/lib/module/atoms/Checkbox.js +42 -11
- package/lib/module/atoms/Checkbox.js.map +1 -1
- package/lib/module/atoms/Divider.js +31 -6
- package/lib/module/atoms/Divider.js.map +1 -1
- package/lib/module/atoms/EmptyState.js +58 -20
- package/lib/module/atoms/EmptyState.js.map +1 -1
- package/lib/module/atoms/Fab.js +33 -13
- package/lib/module/atoms/Fab.js.map +1 -1
- package/lib/module/atoms/Gradient.js +103 -37
- package/lib/module/atoms/Gradient.js.map +1 -1
- package/lib/module/atoms/IconButton.js +25 -4
- package/lib/module/atoms/IconButton.js.map +1 -1
- package/lib/module/atoms/Image.js +61 -25
- package/lib/module/atoms/Image.js.map +1 -1
- package/lib/module/atoms/Input.js +108 -20
- package/lib/module/atoms/Input.js.map +1 -1
- package/lib/module/atoms/KeyValueRow.js +37 -9
- package/lib/module/atoms/KeyValueRow.js.map +1 -1
- package/lib/module/atoms/PressableScale.js +25 -5
- package/lib/module/atoms/PressableScale.js.map +1 -1
- package/lib/module/atoms/ShinyText.js +29 -29
- package/lib/module/atoms/Skeleton.js +30 -13
- package/lib/module/atoms/Skeleton.js.map +1 -1
- package/lib/module/atoms/Spinner.js +82 -23
- package/lib/module/atoms/Spinner.js.map +1 -1
- package/lib/module/atoms/Text.js +56 -5
- package/lib/module/atoms/Text.js.map +1 -1
- package/lib/module/atoms/Transition.js +41 -42
- package/lib/module/atoms/Transition.js.map +1 -1
- package/lib/module/atoms/index.js +1 -1
- package/lib/module/atoms/index.js.map +1 -1
- package/lib/module/atoms/inputValidation.js +52 -0
- package/lib/module/atoms/inputValidation.js.map +1 -0
- package/lib/module/icons/Icon.js +4 -4
- package/lib/module/icons/defaultIcons.js +574 -24
- package/lib/module/icons/defaultIcons.js.map +1 -1
- package/lib/module/icons/index.js +1 -1
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/molecules/AvatarHeader.js +47 -14
- package/lib/module/molecules/AvatarHeader.js.map +1 -1
- package/lib/module/molecules/FormActions.js +25 -9
- package/lib/module/molecules/FormActions.js.map +1 -1
- package/lib/module/molecules/InfoRow.js +30 -14
- package/lib/module/molecules/InfoRow.js.map +1 -1
- package/lib/module/molecules/OptionCard.js +37 -22
- package/lib/module/molecules/OptionCard.js.map +1 -1
- package/lib/module/molecules/SegmentedControl.js +107 -18
- package/lib/module/molecules/SegmentedControl.js.map +1 -1
- package/lib/module/molecules/Stepper.js +63 -18
- package/lib/module/molecules/Stepper.js.map +1 -1
- package/lib/module/molecules/Steps.js +107 -43
- package/lib/module/molecules/Steps.js.map +1 -1
- package/lib/module/molecules/SymmetricGrid.js +26 -18
- package/lib/module/molecules/SymmetricGrid.js.map +1 -1
- package/lib/module/organisms/Alert.js +51 -37
- package/lib/module/organisms/Alert.js.map +1 -1
- package/lib/module/organisms/AlertProvider.js +10 -10
- package/lib/module/organisms/BottomSheet.js +142 -88
- package/lib/module/organisms/BottomSheet.js.map +1 -1
- package/lib/module/organisms/Chart.js +199 -158
- package/lib/module/organisms/Chart.js.map +1 -1
- package/lib/module/organisms/DateField.js +36 -20
- package/lib/module/organisms/DateField.js.map +1 -1
- package/lib/module/organisms/DatePicker.js +56 -33
- package/lib/module/organisms/DatePicker.js.map +1 -1
- package/lib/module/organisms/List.js +62 -34
- package/lib/module/organisms/List.js.map +1 -1
- package/lib/module/organisms/Modal.js +122 -84
- package/lib/module/organisms/Modal.js.map +1 -1
- package/lib/module/organisms/NavigationBar.js +64 -25
- package/lib/module/organisms/NavigationBar.js.map +1 -1
- package/lib/module/organisms/OptionWheel.js +64 -64
- package/lib/module/organisms/OptionWheel.js.map +1 -1
- package/lib/module/organisms/ReorderableList.js +48 -27
- package/lib/module/organisms/ReorderableList.js.map +1 -1
- package/lib/module/organisms/Screen.js +70 -37
- package/lib/module/organisms/Screen.js.map +1 -1
- package/lib/module/organisms/SearchList.js +56 -26
- package/lib/module/organisms/SearchList.js.map +1 -1
- package/lib/module/organisms/Select.js +46 -25
- package/lib/module/organisms/Select.js.map +1 -1
- package/lib/module/organisms/Slides.js +37 -24
- package/lib/module/organisms/Slides.js.map +1 -1
- package/lib/module/organisms/ThemeToggle.js +11 -10
- package/lib/module/organisms/ThemeToggle.js.map +1 -1
- package/lib/module/organisms/Timeline.js +73 -56
- package/lib/module/organisms/Timeline.js.map +1 -1
- package/lib/module/organisms/Toast.js +47 -16
- package/lib/module/organisms/Toast.js.map +1 -1
- package/lib/module/organisms/ToastProvider.js +15 -11
- package/lib/module/organisms/ToastProvider.js.map +1 -1
- package/lib/module/organisms/Wizard.js +41 -16
- package/lib/module/organisms/Wizard.js.map +1 -1
- package/lib/module/organisms/chart/frame.js +25 -25
- package/lib/module/organisms/chart/frame.js.map +1 -1
- package/lib/module/organisms/chart/marks.js +42 -42
- package/lib/module/organisms/chart/math.js +84 -85
- package/lib/module/organisms/chart/math.js.map +1 -1
- package/lib/module/organisms/chart/palette.js +28 -28
- package/lib/module/organisms/imperativeBridge.js +5 -5
- package/lib/module/organisms/imperativeBridge.js.map +1 -1
- package/lib/module/organisms/useSlides.js +53 -21
- package/lib/module/organisms/useSlides.js.map +1 -1
- package/lib/module/safe-area/SafeAreaUIProvider.js +10 -65
- package/lib/module/safe-area/SafeAreaUIProvider.js.map +1 -1
- package/lib/module/safe-area/index.js +1 -0
- package/lib/module/safe-area/index.js.map +1 -1
- package/lib/module/theme/KeyboardAvoidance.js +198 -0
- package/lib/module/theme/KeyboardAvoidance.js.map +1 -0
- package/lib/module/theme/NativeOverlay.js +257 -0
- package/lib/module/theme/NativeOverlay.js.map +1 -0
- package/lib/module/theme/UIProvider.js +88 -35
- package/lib/module/theme/UIProvider.js.map +1 -1
- package/lib/module/theme/colors.js +17 -17
- package/lib/module/theme/colors.js.map +1 -1
- package/lib/module/theme/createStyles.js +20 -16
- package/lib/module/theme/createStyles.js.map +1 -1
- package/lib/module/theme/createTheme.js +6 -6
- package/lib/module/theme/index.js +1 -1
- package/lib/module/theme/index.js.map +1 -1
- package/lib/module/theme/insets.js +1 -1
- package/lib/module/theme/labels.js +29 -1
- package/lib/module/theme/labels.js.map +1 -1
- package/lib/module/theme/palettes.js +25 -23
- package/lib/module/theme/palettes.js.map +1 -1
- package/lib/module/theme/tokens.js +27 -13
- package/lib/module/theme/tokens.js.map +1 -1
- package/lib/module/theme/useKeyboardField.js +33 -0
- package/lib/module/theme/useKeyboardField.js.map +1 -0
- package/lib/module/theme/useReduceMotion.js +28 -0
- package/lib/module/theme/useReduceMotion.js.map +1 -0
- package/lib/typescript/atoms/Avatar.d.ts +35 -5
- package/lib/typescript/atoms/Avatar.d.ts.map +1 -1
- package/lib/typescript/atoms/Badge.d.ts +14 -3
- package/lib/typescript/atoms/Badge.d.ts.map +1 -1
- package/lib/typescript/atoms/Button.d.ts +34 -3
- package/lib/typescript/atoms/Button.d.ts.map +1 -1
- package/lib/typescript/atoms/Card.d.ts +13 -2
- package/lib/typescript/atoms/Card.d.ts.map +1 -1
- package/lib/typescript/atoms/Checkbox.d.ts +26 -1
- package/lib/typescript/atoms/Checkbox.d.ts.map +1 -1
- package/lib/typescript/atoms/Divider.d.ts +18 -1
- package/lib/typescript/atoms/Divider.d.ts.map +1 -1
- package/lib/typescript/atoms/EmptyState.d.ts +30 -3
- package/lib/typescript/atoms/EmptyState.d.ts.map +1 -1
- package/lib/typescript/atoms/Fab.d.ts +24 -4
- package/lib/typescript/atoms/Fab.d.ts.map +1 -1
- package/lib/typescript/atoms/Gradient.d.ts +21 -15
- package/lib/typescript/atoms/Gradient.d.ts.map +1 -1
- package/lib/typescript/atoms/IconButton.d.ts +18 -4
- package/lib/typescript/atoms/IconButton.d.ts.map +1 -1
- package/lib/typescript/atoms/Image.d.ts +39 -17
- package/lib/typescript/atoms/Image.d.ts.map +1 -1
- package/lib/typescript/atoms/Input.d.ts +57 -7
- package/lib/typescript/atoms/Input.d.ts.map +1 -1
- package/lib/typescript/atoms/KeyValueRow.d.ts +16 -4
- package/lib/typescript/atoms/KeyValueRow.d.ts.map +1 -1
- package/lib/typescript/atoms/PressableScale.d.ts +12 -5
- package/lib/typescript/atoms/PressableScale.d.ts.map +1 -1
- package/lib/typescript/atoms/ShinyText.d.ts +17 -17
- package/lib/typescript/atoms/ShinyText.d.ts.map +1 -1
- package/lib/typescript/atoms/Skeleton.d.ts +12 -7
- package/lib/typescript/atoms/Skeleton.d.ts.map +1 -1
- package/lib/typescript/atoms/Spinner.d.ts +29 -1
- package/lib/typescript/atoms/Spinner.d.ts.map +1 -1
- package/lib/typescript/atoms/Text.d.ts +46 -0
- package/lib/typescript/atoms/Text.d.ts.map +1 -1
- package/lib/typescript/atoms/Transition.d.ts +19 -15
- package/lib/typescript/atoms/Transition.d.ts.map +1 -1
- package/lib/typescript/atoms/index.d.ts +3 -3
- package/lib/typescript/atoms/index.d.ts.map +1 -1
- package/lib/typescript/atoms/inputValidation.d.ts +29 -0
- package/lib/typescript/atoms/inputValidation.d.ts.map +1 -0
- package/lib/typescript/icons/Icon.d.ts +4 -4
- package/lib/typescript/icons/defaultIcons.d.ts +19 -2
- package/lib/typescript/icons/defaultIcons.d.ts.map +1 -1
- package/lib/typescript/icons/index.d.ts +2 -2
- package/lib/typescript/icons/index.d.ts.map +1 -1
- package/lib/typescript/icons/types.d.ts +13 -3
- package/lib/typescript/icons/types.d.ts.map +1 -1
- package/lib/typescript/molecules/AvatarHeader.d.ts +23 -4
- package/lib/typescript/molecules/AvatarHeader.d.ts.map +1 -1
- package/lib/typescript/molecules/FormActions.d.ts +21 -4
- package/lib/typescript/molecules/FormActions.d.ts.map +1 -1
- package/lib/typescript/molecules/InfoRow.d.ts +17 -3
- package/lib/typescript/molecules/InfoRow.d.ts.map +1 -1
- package/lib/typescript/molecules/OptionCard.d.ts +20 -5
- package/lib/typescript/molecules/OptionCard.d.ts.map +1 -1
- package/lib/typescript/molecules/SegmentedControl.d.ts +18 -2
- package/lib/typescript/molecules/SegmentedControl.d.ts.map +1 -1
- package/lib/typescript/molecules/Stepper.d.ts +23 -7
- package/lib/typescript/molecules/Stepper.d.ts.map +1 -1
- package/lib/typescript/molecules/Steps.d.ts +18 -4
- package/lib/typescript/molecules/Steps.d.ts.map +1 -1
- package/lib/typescript/molecules/SymmetricGrid.d.ts +15 -5
- package/lib/typescript/molecules/SymmetricGrid.d.ts.map +1 -1
- package/lib/typescript/organisms/Alert.d.ts +28 -2
- package/lib/typescript/organisms/Alert.d.ts.map +1 -1
- package/lib/typescript/organisms/AlertProvider.d.ts +10 -10
- package/lib/typescript/organisms/AlertProvider.d.ts.map +1 -1
- package/lib/typescript/organisms/BottomSheet.d.ts +20 -5
- package/lib/typescript/organisms/BottomSheet.d.ts.map +1 -1
- package/lib/typescript/organisms/Chart.d.ts +86 -75
- package/lib/typescript/organisms/Chart.d.ts.map +1 -1
- package/lib/typescript/organisms/DateField.d.ts +17 -3
- package/lib/typescript/organisms/DateField.d.ts.map +1 -1
- package/lib/typescript/organisms/DatePicker.d.ts +7 -11
- package/lib/typescript/organisms/DatePicker.d.ts.map +1 -1
- package/lib/typescript/organisms/List.d.ts +30 -3
- package/lib/typescript/organisms/List.d.ts.map +1 -1
- package/lib/typescript/organisms/Modal.d.ts +30 -3
- package/lib/typescript/organisms/Modal.d.ts.map +1 -1
- package/lib/typescript/organisms/NavigationBar.d.ts +26 -7
- package/lib/typescript/organisms/NavigationBar.d.ts.map +1 -1
- package/lib/typescript/organisms/OptionWheel.d.ts +20 -16
- package/lib/typescript/organisms/OptionWheel.d.ts.map +1 -1
- package/lib/typescript/organisms/ReorderableList.d.ts +20 -11
- package/lib/typescript/organisms/ReorderableList.d.ts.map +1 -1
- package/lib/typescript/organisms/Screen.d.ts +27 -8
- package/lib/typescript/organisms/Screen.d.ts.map +1 -1
- package/lib/typescript/organisms/SearchList.d.ts +46 -3
- package/lib/typescript/organisms/SearchList.d.ts.map +1 -1
- package/lib/typescript/organisms/Select.d.ts +26 -6
- package/lib/typescript/organisms/Select.d.ts.map +1 -1
- package/lib/typescript/organisms/Slides.d.ts +44 -26
- package/lib/typescript/organisms/Slides.d.ts.map +1 -1
- package/lib/typescript/organisms/ThemeToggle.d.ts +6 -2
- package/lib/typescript/organisms/ThemeToggle.d.ts.map +1 -1
- package/lib/typescript/organisms/Timeline.d.ts +26 -9
- package/lib/typescript/organisms/Timeline.d.ts.map +1 -1
- package/lib/typescript/organisms/Toast.d.ts +19 -4
- package/lib/typescript/organisms/Toast.d.ts.map +1 -1
- package/lib/typescript/organisms/ToastProvider.d.ts +8 -8
- package/lib/typescript/organisms/ToastProvider.d.ts.map +1 -1
- package/lib/typescript/organisms/Wizard.d.ts +24 -6
- package/lib/typescript/organisms/Wizard.d.ts.map +1 -1
- package/lib/typescript/organisms/chart/frame.d.ts +21 -21
- package/lib/typescript/organisms/chart/frame.d.ts.map +1 -1
- package/lib/typescript/organisms/chart/marks.d.ts +28 -28
- package/lib/typescript/organisms/chart/marks.d.ts.map +1 -1
- package/lib/typescript/organisms/chart/math.d.ts +69 -70
- package/lib/typescript/organisms/chart/math.d.ts.map +1 -1
- package/lib/typescript/organisms/chart/palette.d.ts +2 -2
- package/lib/typescript/organisms/chart/palette.d.ts.map +1 -1
- package/lib/typescript/organisms/imperativeBridge.d.ts +4 -4
- package/lib/typescript/organisms/useSlides.d.ts +8 -16
- package/lib/typescript/organisms/useSlides.d.ts.map +1 -1
- package/lib/typescript/safe-area/SafeAreaUIProvider.d.ts +9 -7
- package/lib/typescript/safe-area/SafeAreaUIProvider.d.ts.map +1 -1
- package/lib/typescript/safe-area/index.d.ts.map +1 -1
- package/lib/typescript/theme/KeyboardAvoidance.d.ts +62 -0
- package/lib/typescript/theme/KeyboardAvoidance.d.ts.map +1 -0
- package/lib/typescript/theme/NativeOverlay.d.ts +43 -0
- package/lib/typescript/theme/NativeOverlay.d.ts.map +1 -0
- package/lib/typescript/theme/UIProvider.d.ts +38 -20
- package/lib/typescript/theme/UIProvider.d.ts.map +1 -1
- package/lib/typescript/theme/colors.d.ts +13 -13
- package/lib/typescript/theme/colors.d.ts.map +1 -1
- package/lib/typescript/theme/createStyles.d.ts +20 -14
- package/lib/typescript/theme/createStyles.d.ts.map +1 -1
- package/lib/typescript/theme/createTheme.d.ts +5 -5
- package/lib/typescript/theme/index.d.ts +1 -1
- package/lib/typescript/theme/index.d.ts.map +1 -1
- package/lib/typescript/theme/insets.d.ts +1 -1
- package/lib/typescript/theme/insets.d.ts.map +1 -1
- package/lib/typescript/theme/labels.d.ts +57 -2
- package/lib/typescript/theme/labels.d.ts.map +1 -1
- package/lib/typescript/theme/palettes.d.ts +25 -19
- package/lib/typescript/theme/palettes.d.ts.map +1 -1
- package/lib/typescript/theme/tokens.d.ts +15 -8
- package/lib/typescript/theme/tokens.d.ts.map +1 -1
- package/lib/typescript/theme/types.d.ts +7 -7
- package/lib/typescript/theme/types.d.ts.map +1 -1
- package/lib/typescript/theme/useKeyboardField.d.ts +17 -0
- package/lib/typescript/theme/useKeyboardField.d.ts.map +1 -0
- package/lib/typescript/theme/useReduceMotion.d.ts +7 -0
- package/lib/typescript/theme/useReduceMotion.d.ts.map +1 -0
- package/llms.txt +4 -4
- package/package.json +15 -14
- package/registry/alert-provider.json +4 -3
- package/registry/alert.json +3 -2
- package/registry/avatar-header.json +1 -1
- package/registry/avatar.json +3 -2
- package/registry/badge.json +1 -1
- package/registry/bottom-sheet.json +1 -1
- package/registry/button.json +3 -2
- package/registry/card.json +1 -1
- package/registry/chart.json +5 -5
- package/registry/checkbox.json +3 -2
- package/registry/core.json +31 -15
- package/registry/date-field.json +1 -1
- package/registry/date-picker.json +3 -2
- package/registry/divider.json +1 -1
- package/registry/empty-state.json +4 -2
- package/registry/fab.json +3 -2
- package/registry/form-actions.json +3 -2
- package/registry/gradient.json +1 -1
- package/registry/icon-button.json +3 -2
- package/registry/image.json +1 -1
- package/registry/index.json +79 -61
- package/registry/info-row.json +1 -1
- package/registry/input.json +5 -1
- package/registry/key-value-row.json +1 -1
- package/registry/list.json +3 -1
- package/registry/manifest.json +3 -1
- package/registry/modal.json +1 -1
- package/registry/navigation-bar.json +1 -1
- package/registry/option-card.json +3 -2
- package/registry/option-wheel.json +1 -1
- package/registry/pressable-scale.json +3 -2
- package/registry/reorderable-list.json +1 -1
- package/registry/screen.json +1 -1
- package/registry/search-list.json +7 -1
- package/registry/segmented-control.json +1 -1
- package/registry/select.json +1 -1
- package/registry/shiny-text.json +1 -1
- package/registry/skeleton.json +3 -2
- package/registry/slides.json +2 -2
- package/registry/spinner.json +1 -1
- package/registry/stepper.json +1 -1
- package/registry/steps.json +1 -1
- package/registry/symmetric-grid.json +1 -1
- package/registry/theme-toggle.json +1 -1
- package/registry/timeline.json +1 -1
- package/registry/title.json +1 -1
- package/registry/toast-provider.json +2 -2
- package/registry/toast.json +1 -1
- package/registry/transition.json +1 -1
- package/registry/wizard.json +1 -1
- package/src/atoms/Avatar.tsx +117 -26
- package/src/atoms/Badge.tsx +20 -9
- package/src/atoms/Button.tsx +102 -30
- package/src/atoms/Card.tsx +23 -3
- package/src/atoms/Checkbox.tsx +49 -12
- package/src/atoms/Divider.tsx +34 -4
- package/src/atoms/EmptyState.tsx +63 -16
- package/src/atoms/Fab.tsx +56 -9
- package/src/atoms/Gradient.tsx +92 -41
- package/src/atoms/IconButton.tsx +27 -4
- package/src/atoms/Image.tsx +74 -28
- package/src/atoms/Input.tsx +129 -19
- package/src/atoms/KeyValueRow.tsx +72 -28
- package/src/atoms/PressableScale.tsx +31 -7
- package/src/atoms/ShinyText.tsx +31 -31
- package/src/atoms/Skeleton.tsx +37 -17
- package/src/atoms/Spinner.tsx +87 -24
- package/src/atoms/Text.tsx +66 -6
- package/src/atoms/Transition.tsx +40 -44
- package/src/atoms/index.ts +3 -3
- package/src/atoms/inputValidation.ts +59 -0
- package/src/icons/Icon.tsx +4 -4
- package/src/icons/defaultIcons.tsx +445 -22
- package/src/icons/index.ts +2 -2
- package/src/icons/types.ts +26 -4
- package/src/molecules/AvatarHeader.tsx +88 -34
- package/src/molecules/FormActions.tsx +36 -6
- package/src/molecules/InfoRow.tsx +39 -12
- package/src/molecules/OptionCard.tsx +55 -20
- package/src/molecules/SegmentedControl.tsx +135 -15
- package/src/molecules/Stepper.tsx +73 -19
- package/src/molecules/Steps.tsx +121 -39
- package/src/molecules/SymmetricGrid.tsx +28 -12
- package/src/organisms/Alert.tsx +97 -26
- package/src/organisms/AlertProvider.tsx +13 -13
- package/src/organisms/BottomSheet.tsx +115 -43
- package/src/organisms/Chart.tsx +223 -165
- package/src/organisms/DateField.tsx +40 -15
- package/src/organisms/DatePicker.tsx +53 -32
- package/src/organisms/List.tsx +64 -15
- package/src/organisms/Modal.tsx +122 -63
- package/src/organisms/NavigationBar.tsx +73 -23
- package/src/organisms/OptionWheel.tsx +70 -66
- package/src/organisms/ReorderableList.tsx +49 -27
- package/src/organisms/Screen.tsx +79 -42
- package/src/organisms/SearchList.tsx +84 -20
- package/src/organisms/Select.tsx +63 -29
- package/src/organisms/Slides.tsx +63 -44
- package/src/organisms/ThemeToggle.tsx +15 -6
- package/src/organisms/Timeline.tsx +79 -62
- package/src/organisms/Toast.tsx +50 -15
- package/src/organisms/ToastProvider.tsx +17 -13
- package/src/organisms/Wizard.tsx +58 -21
- package/src/organisms/chart/frame.tsx +35 -35
- package/src/organisms/chart/marks.tsx +53 -53
- package/src/organisms/chart/math.ts +93 -94
- package/src/organisms/chart/palette.ts +28 -28
- package/src/organisms/imperativeBridge.ts +5 -5
- package/src/organisms/useSlides.ts +66 -31
- package/src/safe-area/SafeAreaUIProvider.tsx +9 -70
- package/src/safe-area/index.ts +1 -0
- package/src/theme/KeyboardAvoidance.tsx +216 -0
- package/src/theme/NativeOverlay.tsx +269 -0
- package/src/theme/UIProvider.tsx +109 -46
- package/src/theme/colors.ts +21 -21
- package/src/theme/createStyles.ts +23 -19
- package/src/theme/createTheme.ts +6 -6
- package/src/theme/index.ts +1 -1
- package/src/theme/insets.ts +1 -1
- package/src/theme/labels.ts +85 -2
- package/src/theme/palettes.ts +33 -25
- package/src/theme/tokens.ts +27 -13
- package/src/theme/types.ts +7 -7
- package/src/theme/useKeyboardField.ts +33 -0
- package/src/theme/useReduceMotion.ts +27 -0
|
@@ -6,14 +6,21 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.Steps = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
|
+
var _useReduceMotion = require("../theme/useReduceMotion");
|
|
9
10
|
var _createStyles = require("../theme/createStyles");
|
|
10
11
|
var _UIProvider = require("../theme/UIProvider");
|
|
11
12
|
var _Icon = require("../icons/Icon");
|
|
12
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
14
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
14
15
|
const CIRCLE = 32;
|
|
15
|
-
|
|
16
|
+
const CIRCLE_BORDER = 2;
|
|
17
|
+
const CHECK_SIZE = 18;
|
|
18
|
+
const CONNECTOR = 2;
|
|
19
|
+
/** Minimum width of a horizontal column: below it, labels break mid-word. */
|
|
16
20
|
const STEP_MIN_WIDTH = 76;
|
|
21
|
+
/** Share of the row a horizontal connector takes next to a step (flex: 1). */
|
|
22
|
+
const CONNECTOR_FLEX = 0.3;
|
|
23
|
+
const PRESSED_OPACITY = 0.7;
|
|
17
24
|
const useStyles = (0, _createStyles.createStyles)(theme => ({
|
|
18
25
|
rowContainer: {
|
|
19
26
|
flexDirection: 'row',
|
|
@@ -23,8 +30,8 @@ const useStyles = (0, _createStyles.createStyles)(theme => ({
|
|
|
23
30
|
flexDirection: 'column'
|
|
24
31
|
},
|
|
25
32
|
// horizontal
|
|
26
|
-
// ScrollView
|
|
27
|
-
//
|
|
33
|
+
// ScrollView ships with flexGrow: 1 and was eating all the available height
|
|
34
|
+
// of the container, leaving the steps stuck to the top of a huge box.
|
|
28
35
|
hScrollView: {
|
|
29
36
|
flexGrow: 0,
|
|
30
37
|
flexShrink: 0
|
|
@@ -34,9 +41,9 @@ const useStyles = (0, _createStyles.createStyles)(theme => ({
|
|
|
34
41
|
flexDirection: 'row',
|
|
35
42
|
alignItems: 'flex-start'
|
|
36
43
|
},
|
|
37
|
-
// `minWidth`
|
|
38
|
-
// ("Almacé / n"):
|
|
39
|
-
//
|
|
44
|
+
// `minWidth` is what keeps RN from breaking words in half
|
|
45
|
+
// ("Almacé / n"): rather than squeezing the column below a regular
|
|
46
|
+
// word, the row becomes scrollable.
|
|
40
47
|
hStep: {
|
|
41
48
|
flex: 1,
|
|
42
49
|
minWidth: STEP_MIN_WIDTH,
|
|
@@ -45,23 +52,25 @@ const useStyles = (0, _createStyles.createStyles)(theme => ({
|
|
|
45
52
|
},
|
|
46
53
|
hLabels: {
|
|
47
54
|
alignItems: 'center',
|
|
48
|
-
gap:
|
|
49
|
-
paddingHorizontal:
|
|
55
|
+
gap: theme.tokens.spacing.xxs,
|
|
56
|
+
paddingHorizontal: theme.tokens.spacing.xs
|
|
50
57
|
},
|
|
51
|
-
//
|
|
52
|
-
//
|
|
58
|
+
// The connector takes a small fraction of the width: competing on equal
|
|
59
|
+
// terms with the steps (flex: 1), each label ended up with 1/(2n-1) of the
|
|
53
60
|
// total.
|
|
54
61
|
hConnector: {
|
|
55
|
-
height:
|
|
56
|
-
flex:
|
|
57
|
-
minWidth:
|
|
58
|
-
marginTop: CIRCLE / 2 -
|
|
62
|
+
height: CONNECTOR,
|
|
63
|
+
flex: CONNECTOR_FLEX,
|
|
64
|
+
minWidth: theme.tokens.spacing.md,
|
|
65
|
+
marginTop: CIRCLE / 2 - CONNECTOR / 2
|
|
59
66
|
},
|
|
60
67
|
hLabel: {
|
|
61
|
-
fontSize: theme.tokens.fontSize.sm
|
|
68
|
+
fontSize: theme.tokens.fontSize.sm,
|
|
69
|
+
lineHeight: theme.tokens.lineHeight.sm
|
|
62
70
|
},
|
|
63
71
|
hDescription: {
|
|
64
|
-
fontSize: theme.tokens.fontSize.xs
|
|
72
|
+
fontSize: theme.tokens.fontSize.xs,
|
|
73
|
+
lineHeight: theme.tokens.lineHeight.sm
|
|
65
74
|
},
|
|
66
75
|
// vertical
|
|
67
76
|
vStep: {
|
|
@@ -72,21 +81,25 @@ const useStyles = (0, _createStyles.createStyles)(theme => ({
|
|
|
72
81
|
alignItems: 'center'
|
|
73
82
|
},
|
|
74
83
|
vConnector: {
|
|
75
|
-
width:
|
|
84
|
+
width: CONNECTOR,
|
|
76
85
|
flex: 1,
|
|
77
|
-
minHeight:
|
|
78
|
-
marginVertical:
|
|
86
|
+
minHeight: theme.tokens.spacing.xl,
|
|
87
|
+
marginVertical: theme.tokens.spacing.xs
|
|
79
88
|
},
|
|
80
89
|
vLabels: {
|
|
81
90
|
flex: 1,
|
|
82
|
-
gap:
|
|
91
|
+
gap: theme.tokens.spacing.xxs,
|
|
83
92
|
paddingBottom: theme.tokens.spacing.lg
|
|
84
93
|
},
|
|
94
|
+
// The last step has no connector below: no trailing space either.
|
|
95
|
+
vLabelsLast: {
|
|
96
|
+
paddingBottom: 0
|
|
97
|
+
},
|
|
85
98
|
circle: {
|
|
86
99
|
width: CIRCLE,
|
|
87
100
|
height: CIRCLE,
|
|
88
101
|
borderRadius: CIRCLE / 2,
|
|
89
|
-
borderWidth:
|
|
102
|
+
borderWidth: CIRCLE_BORDER,
|
|
90
103
|
alignItems: 'center',
|
|
91
104
|
justifyContent: 'center'
|
|
92
105
|
},
|
|
@@ -96,14 +109,23 @@ const useStyles = (0, _createStyles.createStyles)(theme => ({
|
|
|
96
109
|
},
|
|
97
110
|
label: {
|
|
98
111
|
fontSize: theme.tokens.fontSize.md,
|
|
112
|
+
lineHeight: theme.tokens.lineHeight.md,
|
|
99
113
|
fontWeight: theme.tokens.fontWeight.semibold,
|
|
100
114
|
color: theme.colors.text
|
|
101
115
|
},
|
|
116
|
+
labelCurrent: {
|
|
117
|
+
color: theme.colors.primaryText
|
|
118
|
+
},
|
|
119
|
+
labelPending: {
|
|
120
|
+
color: theme.colors.textLight,
|
|
121
|
+
fontWeight: theme.tokens.fontWeight.medium
|
|
122
|
+
},
|
|
102
123
|
labelCentered: {
|
|
103
124
|
textAlign: 'center'
|
|
104
125
|
},
|
|
105
126
|
description: {
|
|
106
127
|
fontSize: theme.tokens.fontSize.sm,
|
|
128
|
+
lineHeight: theme.tokens.lineHeight.sm,
|
|
107
129
|
color: theme.colors.textLight
|
|
108
130
|
},
|
|
109
131
|
descriptionCentered: {
|
|
@@ -118,8 +140,17 @@ function statusOf(index, current) {
|
|
|
118
140
|
|
|
119
141
|
/**
|
|
120
142
|
* Steps
|
|
121
|
-
*
|
|
122
|
-
*
|
|
143
|
+
* Multi-step progress indicator. The visual base of `Wizard`, but usable on
|
|
144
|
+
* its own to show progress through a flow that is navigated some other way.
|
|
145
|
+
*
|
|
146
|
+
* Gestalt, continuity: a connector line runs through the circles, so the steps
|
|
147
|
+
* read as one path; the stretch already walked is filled with the accent.
|
|
148
|
+
* Similarity: every step is the same circle + label, and the state only
|
|
149
|
+
* changes fill and color (done = filled, current = outlined accent, pending =
|
|
150
|
+
* grey). Von Restorff: the current step is the only accent-colored label.
|
|
151
|
+
*
|
|
152
|
+
* Accessibility: each step announces "Step 2 of 3: Payment, current", with
|
|
153
|
+
* every word from `labels`.
|
|
123
154
|
*/
|
|
124
155
|
const Steps = exports.Steps = /*#__PURE__*/(0, _react.memo)(({
|
|
125
156
|
steps,
|
|
@@ -127,12 +158,34 @@ const Steps = exports.Steps = /*#__PURE__*/(0, _react.memo)(({
|
|
|
127
158
|
orientation = 'horizontal',
|
|
128
159
|
completedIndicator = 'check',
|
|
129
160
|
onStepPress,
|
|
130
|
-
style
|
|
161
|
+
style,
|
|
162
|
+
testID
|
|
131
163
|
}) => {
|
|
132
164
|
const colors = (0, _UIProvider.useColors)();
|
|
165
|
+
const labels = (0, _UIProvider.useLabels)();
|
|
133
166
|
const styles = useStyles();
|
|
134
167
|
const allowFontScaling = (0, _UIProvider.useAllowFontScaling)();
|
|
135
168
|
const isVertical = orientation === 'vertical';
|
|
169
|
+
const reduceMotion = (0, _useReduceMotion.useReduceMotion)();
|
|
170
|
+
|
|
171
|
+
// Horizontal overflow: when the steps don't fit, the row scrolls. A hidden
|
|
172
|
+
// step gave no hint of existing, so the current step is brought into view
|
|
173
|
+
// and the scroll bar flashes once (visibility of system status).
|
|
174
|
+
const scrollRef = (0, _react.useRef)(null);
|
|
175
|
+
const [viewportWidth, setViewportWidth] = (0, _react.useState)(0);
|
|
176
|
+
const [contentWidth, setContentWidth] = (0, _react.useState)(0);
|
|
177
|
+
const stepX = (0, _react.useRef)([]);
|
|
178
|
+
const overflows = !isVertical && viewportWidth > 0 && contentWidth > viewportWidth + 1;
|
|
179
|
+
(0, _react.useEffect)(() => {
|
|
180
|
+
if (!overflows) return;
|
|
181
|
+
const x = stepX.current[current] ?? 0;
|
|
182
|
+
// A quarter of the row of lead-in: the previous step stays partly visible.
|
|
183
|
+
scrollRef.current?.scrollTo({
|
|
184
|
+
x: Math.max(0, x - viewportWidth / 4),
|
|
185
|
+
animated: !reduceMotion
|
|
186
|
+
});
|
|
187
|
+
scrollRef.current?.flashScrollIndicators();
|
|
188
|
+
}, [overflows, current, viewportWidth, reduceMotion]);
|
|
136
189
|
const colorsFor = status => {
|
|
137
190
|
if (status === 'completed') return {
|
|
138
191
|
bg: colors.primary,
|
|
@@ -160,7 +213,7 @@ const Steps = exports.Steps = /*#__PURE__*/(0, _react.memo)(({
|
|
|
160
213
|
}],
|
|
161
214
|
children: showCheck ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.Icon, {
|
|
162
215
|
name: "check",
|
|
163
|
-
size:
|
|
216
|
+
size: CHECK_SIZE,
|
|
164
217
|
color: c.fg
|
|
165
218
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
166
219
|
allowFontScaling: allowFontScaling,
|
|
@@ -171,13 +224,11 @@ const Steps = exports.Steps = /*#__PURE__*/(0, _react.memo)(({
|
|
|
171
224
|
})
|
|
172
225
|
});
|
|
173
226
|
};
|
|
174
|
-
const renderLabels = (step, status, centered) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
175
|
-
style: centered ? styles.hLabels : styles.vLabels,
|
|
227
|
+
const renderLabels = (step, status, centered, isLast = false) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
228
|
+
style: centered ? styles.hLabels : [styles.vLabels, isLast && styles.vLabelsLast],
|
|
176
229
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
177
230
|
allowFontScaling: allowFontScaling,
|
|
178
|
-
style: [styles.label, centered && styles.labelCentered, centered && styles.hLabel, status === 'pending' &&
|
|
179
|
-
color: colors.textLight
|
|
180
|
-
}],
|
|
231
|
+
style: [styles.label, centered && styles.labelCentered, centered && styles.hLabel, status === 'current' && styles.labelCurrent, status === 'pending' && styles.labelPending],
|
|
181
232
|
children: step.label
|
|
182
233
|
}), !!step.description && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
183
234
|
allowFontScaling: allowFontScaling,
|
|
@@ -185,26 +236,33 @@ const Steps = exports.Steps = /*#__PURE__*/(0, _react.memo)(({
|
|
|
185
236
|
children: step.description
|
|
186
237
|
})]
|
|
187
238
|
});
|
|
239
|
+
const statusLabel = {
|
|
240
|
+
completed: labels.stepCompleted,
|
|
241
|
+
current: labels.stepCurrent,
|
|
242
|
+
pending: labels.stepPending
|
|
243
|
+
};
|
|
188
244
|
const stepAccessibility = (index, step, status) => ({
|
|
189
245
|
accessibilityRole: onStepPress ? 'button' : 'text',
|
|
190
|
-
accessibilityLabel:
|
|
246
|
+
accessibilityLabel: `${labels.stepOf.replace('{n}', String(index + 1)).replace('{total}', String(steps.length)).replace('{label}', step.label)}, ${statusLabel[status]}`,
|
|
191
247
|
accessibilityState: {
|
|
192
248
|
selected: status === 'current',
|
|
193
249
|
disabled: false
|
|
194
|
-
}
|
|
250
|
+
},
|
|
251
|
+
testID: testID && `${testID}-${index}`
|
|
195
252
|
});
|
|
196
253
|
if (isVertical) {
|
|
197
254
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
198
255
|
style: [styles.columnContainer, style],
|
|
256
|
+
testID: testID,
|
|
199
257
|
children: steps.map((step, index) => {
|
|
200
258
|
const status = statusOf(index, current);
|
|
201
259
|
const isLast = index === steps.length - 1;
|
|
202
260
|
const Wrapper = onStepPress ? _reactNative.TouchableOpacity : _reactNative.View;
|
|
203
|
-
//
|
|
204
|
-
// a
|
|
261
|
+
// Only touchable when there is onStepPress: passing onPress/activeOpacity
|
|
262
|
+
// to a plain View doesn't crash, but leaves them as silent noise.
|
|
205
263
|
const interactiveProps = onStepPress ? {
|
|
206
264
|
onPress: () => onStepPress(index),
|
|
207
|
-
activeOpacity:
|
|
265
|
+
activeOpacity: PRESSED_OPACITY
|
|
208
266
|
} : undefined;
|
|
209
267
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Wrapper, {
|
|
210
268
|
style: styles.vStep,
|
|
@@ -217,17 +275,20 @@ const Steps = exports.Steps = /*#__PURE__*/(0, _react.memo)(({
|
|
|
217
275
|
backgroundColor: index < current ? colors.primary : colors.border
|
|
218
276
|
}]
|
|
219
277
|
})]
|
|
220
|
-
}), renderLabels(step, status, false)]
|
|
278
|
+
}), renderLabels(step, status, false, isLast)]
|
|
221
279
|
}, `${step.label}-${index}`);
|
|
222
280
|
})
|
|
223
281
|
});
|
|
224
282
|
}
|
|
225
283
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ScrollView, {
|
|
226
|
-
|
|
284
|
+
ref: scrollRef,
|
|
285
|
+
testID: testID,
|
|
227
286
|
horizontal: true,
|
|
228
|
-
showsHorizontalScrollIndicator:
|
|
229
|
-
|
|
230
|
-
|
|
287
|
+
showsHorizontalScrollIndicator: overflows,
|
|
288
|
+
onLayout: e => setViewportWidth(e.nativeEvent.layout.width),
|
|
289
|
+
onContentSizeChange: width => setContentWidth(width)
|
|
290
|
+
// With room to spare the steps share the row just like before
|
|
291
|
+
// (flexGrow); when they don't fit, it scrolls instead of squeezing the text.
|
|
231
292
|
,
|
|
232
293
|
style: [styles.hScrollView, style],
|
|
233
294
|
contentContainerStyle: styles.hScroll,
|
|
@@ -237,11 +298,14 @@ const Steps = exports.Steps = /*#__PURE__*/(0, _react.memo)(({
|
|
|
237
298
|
const Wrapper = onStepPress ? _reactNative.TouchableOpacity : _reactNative.View;
|
|
238
299
|
const interactiveProps = onStepPress ? {
|
|
239
300
|
onPress: () => onStepPress(index),
|
|
240
|
-
activeOpacity:
|
|
301
|
+
activeOpacity: PRESSED_OPACITY
|
|
241
302
|
} : undefined;
|
|
242
303
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.default.Fragment, {
|
|
243
304
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(Wrapper, {
|
|
244
305
|
style: styles.hStep,
|
|
306
|
+
onLayout: e => {
|
|
307
|
+
stepX.current[index] = e.nativeEvent.layout.x;
|
|
308
|
+
},
|
|
245
309
|
...interactiveProps,
|
|
246
310
|
...stepAccessibility(index, step, status),
|
|
247
311
|
children: [renderCircle(index, status), renderLabels(step, status, true)]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_createStyles","_UIProvider","_Icon","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","CIRCLE","STEP_MIN_WIDTH","useStyles","createStyles","theme","rowContainer","flexDirection","alignItems","columnContainer","hScrollView","flexGrow","flexShrink","hScroll","hStep","flex","minWidth","gap","tokens","spacing","sm","hLabels","paddingHorizontal","hConnector","height","marginTop","hLabel","fontSize","hDescription","xs","vStep","md","vIndicatorColumn","vConnector","width","minHeight","marginVertical","vLabels","paddingBottom","lg","circle","borderRadius","borderWidth","justifyContent","circleNumber","fontWeight","semibold","label","color","colors","text","labelCentered","textAlign","description","textLight","descriptionCentered","statusOf","index","current","Steps","exports","memo","steps","orientation","completedIndicator","onStepPress","style","useColors","styles","allowFontScaling","useAllowFontScaling","isVertical","colorsFor","status","bg","primary","border","fg","onPrimary","primaryText","renderCircle","c","showCheck","jsx","View","backgroundColor","borderColor","children","Icon","name","size","Text","renderLabels","step","centered","jsxs","stepAccessibility","accessibilityRole","accessibilityLabel","accessibilityState","selected","disabled","map","isLast","length","Wrapper","TouchableOpacity","interactiveProps","onPress","activeOpacity","undefined","ScrollView","testID","horizontal","showsHorizontalScrollIndicator","contentContainerStyle","Fragment","displayName"],"sourceRoot":"../../../src","sources":["molecules/Steps.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useReduceMotion","_createStyles","_UIProvider","_Icon","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","CIRCLE","CIRCLE_BORDER","CHECK_SIZE","CONNECTOR","STEP_MIN_WIDTH","CONNECTOR_FLEX","PRESSED_OPACITY","useStyles","createStyles","theme","rowContainer","flexDirection","alignItems","columnContainer","hScrollView","flexGrow","flexShrink","hScroll","hStep","flex","minWidth","gap","tokens","spacing","sm","hLabels","xxs","paddingHorizontal","xs","hConnector","height","md","marginTop","hLabel","fontSize","lineHeight","hDescription","vStep","vIndicatorColumn","vConnector","width","minHeight","xl","marginVertical","vLabels","paddingBottom","lg","vLabelsLast","circle","borderRadius","borderWidth","justifyContent","circleNumber","fontWeight","semibold","label","color","colors","text","labelCurrent","primaryText","labelPending","textLight","medium","labelCentered","textAlign","description","descriptionCentered","statusOf","index","current","Steps","exports","memo","steps","orientation","completedIndicator","onStepPress","style","testID","useColors","labels","useLabels","styles","allowFontScaling","useAllowFontScaling","isVertical","reduceMotion","useReduceMotion","scrollRef","useRef","viewportWidth","setViewportWidth","useState","contentWidth","setContentWidth","stepX","overflows","useEffect","x","scrollTo","Math","max","animated","flashScrollIndicators","colorsFor","status","bg","primary","border","fg","onPrimary","renderCircle","c","showCheck","jsx","View","backgroundColor","borderColor","children","Icon","name","size","Text","renderLabels","step","centered","isLast","jsxs","statusLabel","completed","stepCompleted","stepCurrent","pending","stepPending","stepAccessibility","accessibilityRole","accessibilityLabel","stepOf","replace","String","length","accessibilityState","selected","disabled","map","Wrapper","TouchableOpacity","interactiveProps","onPress","activeOpacity","undefined","ScrollView","ref","horizontal","showsHorizontalScrollIndicator","onLayout","nativeEvent","layout","onContentSizeChange","contentContainerStyle","Fragment","displayName"],"sourceRoot":"../../../src","sources":["molecules/Steps.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AASA,IAAAE,gBAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AAAqC,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAD,wBAAAQ,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAQ,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AA8BrC,MAAMkB,MAAM,GAAG,EAAE;AACjB,MAAMC,aAAa,GAAG,CAAC;AACvB,MAAMC,UAAU,GAAG,EAAE;AACrB,MAAMC,SAAS,GAAG,CAAC;AACnB;AACA,MAAMC,cAAc,GAAG,EAAE;AACzB;AACA,MAAMC,cAAc,GAAG,GAAG;AAC1B,MAAMC,eAAe,GAAG,GAAG;AAE3B,MAAMC,SAAS,GAAG,IAAAC,0BAAY,EAAEC,KAAK,KAAM;EACzCC,YAAY,EAAE;IAAEC,aAAa,EAAE,KAAK;IAAEC,UAAU,EAAE;EAAa,CAAC;EAChEC,eAAe,EAAE;IAAEF,aAAa,EAAE;EAAS,CAAC;EAE5C;EACA;EACA;EACAG,WAAW,EAAE;IAAEC,QAAQ,EAAE,CAAC;IAAEC,UAAU,EAAE;EAAE,CAAC;EAC3CC,OAAO,EAAE;IAAEF,QAAQ,EAAE,CAAC;IAAEJ,aAAa,EAAE,KAAK;IAAEC,UAAU,EAAE;EAAa,CAAC;EACxE;EACA;EACA;EACAM,KAAK,EAAE;IAAEC,IAAI,EAAE,CAAC;IAAEC,QAAQ,EAAEhB,cAAc;IAAEQ,UAAU,EAAE,QAAQ;IAAES,GAAG,EAAEZ,KAAK,CAACa,MAAM,CAACC,OAAO,CAACC;EAAG,CAAC;EAChGC,OAAO,EAAE;IAAEb,UAAU,EAAE,QAAQ;IAAES,GAAG,EAAEZ,KAAK,CAACa,MAAM,CAACC,OAAO,CAACG,GAAG;IAAEC,iBAAiB,EAAElB,KAAK,CAACa,MAAM,CAACC,OAAO,CAACK;EAAG,CAAC;EAC5G;EACA;EACA;EACAC,UAAU,EAAE;IACVC,MAAM,EAAE3B,SAAS;IACjBgB,IAAI,EAAEd,cAAc;IACpBe,QAAQ,EAAEX,KAAK,CAACa,MAAM,CAACC,OAAO,CAACQ,EAAE;IACjCC,SAAS,EAAEhC,MAAM,GAAG,CAAC,GAAGG,SAAS,GAAG;EACtC,CAAC;EACD8B,MAAM,EAAE;IAAEC,QAAQ,EAAEzB,KAAK,CAACa,MAAM,CAACY,QAAQ,CAACV,EAAE;IAAEW,UAAU,EAAE1B,KAAK,CAACa,MAAM,CAACa,UAAU,CAACX;EAAG,CAAC;EACtFY,YAAY,EAAE;IAAEF,QAAQ,EAAEzB,KAAK,CAACa,MAAM,CAACY,QAAQ,CAACN,EAAE;IAAEO,UAAU,EAAE1B,KAAK,CAACa,MAAM,CAACa,UAAU,CAACX;EAAG,CAAC;EAE5F;EACAa,KAAK,EAAE;IAAE1B,aAAa,EAAE,KAAK;IAAEU,GAAG,EAAEZ,KAAK,CAACa,MAAM,CAACC,OAAO,CAACQ;EAAG,CAAC;EAC7DO,gBAAgB,EAAE;IAAE1B,UAAU,EAAE;EAAS,CAAC;EAC1C2B,UAAU,EAAE;IAAEC,KAAK,EAAErC,SAAS;IAAEgB,IAAI,EAAE,CAAC;IAAEsB,SAAS,EAAEhC,KAAK,CAACa,MAAM,CAACC,OAAO,CAACmB,EAAE;IAAEC,cAAc,EAAElC,KAAK,CAACa,MAAM,CAACC,OAAO,CAACK;EAAG,CAAC;EACtHgB,OAAO,EAAE;IAAEzB,IAAI,EAAE,CAAC;IAAEE,GAAG,EAAEZ,KAAK,CAACa,MAAM,CAACC,OAAO,CAACG,GAAG;IAAEmB,aAAa,EAAEpC,KAAK,CAACa,MAAM,CAACC,OAAO,CAACuB;EAAG,CAAC;EAC3F;EACAC,WAAW,EAAE;IAAEF,aAAa,EAAE;EAAE,CAAC;EAEjCG,MAAM,EAAE;IACNR,KAAK,EAAExC,MAAM;IACb8B,MAAM,EAAE9B,MAAM;IACdiD,YAAY,EAAEjD,MAAM,GAAG,CAAC;IACxBkD,WAAW,EAAEjD,aAAa;IAC1BW,UAAU,EAAE,QAAQ;IACpBuC,cAAc,EAAE;EAClB,CAAC;EACDC,YAAY,EAAE;IAAElB,QAAQ,EAAEzB,KAAK,CAACa,MAAM,CAACY,QAAQ,CAACH,EAAE;IAAEsB,UAAU,EAAE5C,KAAK,CAACa,MAAM,CAAC+B,UAAU,CAACC;EAAS,CAAC;EAClGC,KAAK,EAAE;IACLrB,QAAQ,EAAEzB,KAAK,CAACa,MAAM,CAACY,QAAQ,CAACH,EAAE;IAClCI,UAAU,EAAE1B,KAAK,CAACa,MAAM,CAACa,UAAU,CAACJ,EAAE;IACtCsB,UAAU,EAAE5C,KAAK,CAACa,MAAM,CAAC+B,UAAU,CAACC,QAAQ;IAC5CE,KAAK,EAAE/C,KAAK,CAACgD,MAAM,CAACC;EACtB,CAAC;EACDC,YAAY,EAAE;IAAEH,KAAK,EAAE/C,KAAK,CAACgD,MAAM,CAACG;EAAY,CAAC;EACjDC,YAAY,EAAE;IAAEL,KAAK,EAAE/C,KAAK,CAACgD,MAAM,CAACK,SAAS;IAAET,UAAU,EAAE5C,KAAK,CAACa,MAAM,CAAC+B,UAAU,CAACU;EAAO,CAAC;EAC3FC,aAAa,EAAE;IAAEC,SAAS,EAAE;EAAS,CAAC;EACtCC,WAAW,EAAE;IAAEhC,QAAQ,EAAEzB,KAAK,CAACa,MAAM,CAACY,QAAQ,CAACV,EAAE;IAAEW,UAAU,EAAE1B,KAAK,CAACa,MAAM,CAACa,UAAU,CAACX,EAAE;IAAEgC,KAAK,EAAE/C,KAAK,CAACgD,MAAM,CAACK;EAAU,CAAC;EAC1HK,mBAAmB,EAAE;IAAEF,SAAS,EAAE;EAAS;AAC7C,CAAC,CAAC,CAAC;AAEH,SAASG,QAAQA,CAACC,KAAa,EAAEC,OAAe,EAAc;EAC5D,IAAID,KAAK,GAAGC,OAAO,EAAE,OAAO,WAAW;EACvC,IAAID,KAAK,KAAKC,OAAO,EAAE,OAAO,SAAS;EACvC,OAAO,SAAS;AAClB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,KAAK,GAAAC,OAAA,CAAAD,KAAA,gBAAG,IAAAE,WAAI,EACvB,CAAC;EACCC,KAAK;EACLJ,OAAO;EACPK,WAAW,GAAG,YAAY;EAC1BC,kBAAkB,GAAG,OAAO;EAC5BC,WAAW;EACXC,KAAK;EACLC;AACU,CAAC,KAAK;EAChB,MAAMtB,MAAM,GAAG,IAAAuB,qBAAS,EAAC,CAAC;EAC1B,MAAMC,MAAM,GAAG,IAAAC,qBAAS,EAAC,CAAC;EAC1B,MAAMC,MAAM,GAAG5E,SAAS,CAAC,CAAC;EAC1B,MAAM6E,gBAAgB,GAAG,IAAAC,+BAAmB,EAAC,CAAC;EAC9C,MAAMC,UAAU,GAAGX,WAAW,KAAK,UAAU;EAC7C,MAAMY,YAAY,GAAG,IAAAC,gCAAe,EAAC,CAAC;;EAEtC;EACA;EACA;EACA,MAAMC,SAAS,GAAG,IAAAC,aAAM,EAAkC,IAAI,CAAC;EAC/D,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC,CAAC;EACrD,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAF,eAAQ,EAAC,CAAC,CAAC;EACnD,MAAMG,KAAK,GAAG,IAAAN,aAAM,EAAW,EAAE,CAAC;EAClC,MAAMO,SAAS,GAAG,CAACX,UAAU,IAAIK,aAAa,GAAG,CAAC,IAAIG,YAAY,GAAGH,aAAa,GAAG,CAAC;EAEtF,IAAAO,gBAAS,EAAC,MAAM;IACd,IAAI,CAACD,SAAS,EAAE;IAChB,MAAME,CAAC,GAAGH,KAAK,CAAC1B,OAAO,CAACA,OAAO,CAAC,IAAI,CAAC;IACrC;IACAmB,SAAS,CAACnB,OAAO,EAAE8B,QAAQ,CAAC;MAAED,CAAC,EAAEE,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEH,CAAC,GAAGR,aAAa,GAAG,CAAC,CAAC;MAAEY,QAAQ,EAAE,CAAChB;IAAa,CAAC,CAAC;IAC/FE,SAAS,CAACnB,OAAO,EAAEkC,qBAAqB,CAAC,CAAC;EAC5C,CAAC,EAAE,CAACP,SAAS,EAAE3B,OAAO,EAAEqB,aAAa,EAAEJ,YAAY,CAAC,CAAC;EAErD,MAAMkB,SAAS,GAAIC,MAAkB,IAAK;IACxC,IAAIA,MAAM,KAAK,WAAW,EAAE,OAAO;MAAEC,EAAE,EAAElD,MAAM,CAACmD,OAAO;MAAEC,MAAM,EAAEpD,MAAM,CAACmD,OAAO;MAAEE,EAAE,EAAErD,MAAM,CAACsD;IAAU,CAAC;IACvG,IAAIL,MAAM,KAAK,SAAS,EAAE,OAAO;MAAEC,EAAE,EAAE,aAAa;MAAEE,MAAM,EAAEpD,MAAM,CAACmD,OAAO;MAAEE,EAAE,EAAErD,MAAM,CAACG;IAAY,CAAC;IACtG,OAAO;MAAE+C,EAAE,EAAE,aAAa;MAAEE,MAAM,EAAEpD,MAAM,CAACoD,MAAM;MAAEC,EAAE,EAAErD,MAAM,CAACK;IAAU,CAAC;EAC3E,CAAC;EAED,MAAMkD,YAAY,GAAGA,CAAC3C,KAAa,EAAEqC,MAAkB,KAAK;IAC1D,MAAMO,CAAC,GAAGR,SAAS,CAACC,MAAM,CAAC;IAC3B,MAAMQ,SAAS,GAAGR,MAAM,KAAK,WAAW,IAAI9B,kBAAkB,KAAK,OAAO;IAC1E,oBACE,IAAAhG,WAAA,CAAAuI,GAAA,EAAC5I,YAAA,CAAA6I,IAAI;MAACtC,KAAK,EAAE,CAACK,MAAM,CAACnC,MAAM,EAAE;QAAEqE,eAAe,EAAEJ,CAAC,CAACN,EAAE;QAAEW,WAAW,EAAEL,CAAC,CAACJ;MAAO,CAAC,CAAE;MAAAU,QAAA,EAC5EL,SAAS,gBACR,IAAAtI,WAAA,CAAAuI,GAAA,EAACxI,KAAA,CAAA6I,IAAI;QAACC,IAAI,EAAC,OAAO;QAACC,IAAI,EAAExH,UAAW;QAACsD,KAAK,EAAEyD,CAAC,CAACH;MAAG,CAAE,CAAC,gBAEpD,IAAAlI,WAAA,CAAAuI,GAAA,EAAC5I,YAAA,CAAAoJ,IAAI;QAACvC,gBAAgB,EAAEA,gBAAiB;QAACN,KAAK,EAAE,CAACK,MAAM,CAAC/B,YAAY,EAAE;UAAEI,KAAK,EAAEyD,CAAC,CAACH;QAAG,CAAC,CAAE;QAAAS,QAAA,EACrFlD,KAAK,GAAG;MAAC,CACN;IACP,CACG,CAAC;EAEX,CAAC;EAED,MAAMuD,YAAY,GAAGA,CAACC,IAAc,EAAEnB,MAAkB,EAAEoB,QAAiB,EAAEC,MAAM,GAAG,KAAK,kBACzF,IAAAnJ,WAAA,CAAAoJ,IAAA,EAACzJ,YAAA,CAAA6I,IAAI;IAACtC,KAAK,EAAEgD,QAAQ,GAAG3C,MAAM,CAAC1D,OAAO,GAAG,CAAC0D,MAAM,CAACvC,OAAO,EAAEmF,MAAM,IAAI5C,MAAM,CAACpC,WAAW,CAAE;IAAAwE,QAAA,gBACtF,IAAA3I,WAAA,CAAAuI,GAAA,EAAC5I,YAAA,CAAAoJ,IAAI;MACHvC,gBAAgB,EAAEA,gBAAiB;MACnCN,KAAK,EAAE,CACLK,MAAM,CAAC5B,KAAK,EACZuE,QAAQ,IAAI3C,MAAM,CAACnB,aAAa,EAChC8D,QAAQ,IAAI3C,MAAM,CAAClD,MAAM,EACzByE,MAAM,KAAK,SAAS,IAAIvB,MAAM,CAACxB,YAAY,EAC3C+C,MAAM,KAAK,SAAS,IAAIvB,MAAM,CAACtB,YAAY,CAC3C;MAAA0D,QAAA,EAEDM,IAAI,CAACtE;IAAK,CACP,CAAC,EACN,CAAC,CAACsE,IAAI,CAAC3D,WAAW,iBACjB,IAAAtF,WAAA,CAAAuI,GAAA,EAAC5I,YAAA,CAAAoJ,IAAI;MACHvC,gBAAgB,EAAEA,gBAAiB;MACnCN,KAAK,EAAE,CAACK,MAAM,CAACjB,WAAW,EAAE4D,QAAQ,IAAI3C,MAAM,CAAChB,mBAAmB,EAAE2D,QAAQ,IAAI3C,MAAM,CAAC/C,YAAY,CAAE;MAAAmF,QAAA,EAEpGM,IAAI,CAAC3D;IAAW,CACb,CACP;EAAA,CACG,CACP;EAED,MAAM+D,WAAW,GAAG;IAAEC,SAAS,EAAEjD,MAAM,CAACkD,aAAa;IAAE7D,OAAO,EAAEW,MAAM,CAACmD,WAAW;IAAEC,OAAO,EAAEpD,MAAM,CAACqD;EAAY,CAAC;EACjH,MAAMC,iBAAiB,GAAGA,CAAClE,KAAa,EAAEwD,IAAc,EAAEnB,MAAkB,MAAM;IAChF8B,iBAAiB,EAAG3D,WAAW,GAAG,QAAQ,GAAG,MAA4B;IACzE4D,kBAAkB,EAAE,GAAGxD,MAAM,CAACyD,MAAM,CACjCC,OAAO,CAAC,KAAK,EAAEC,MAAM,CAACvE,KAAK,GAAG,CAAC,CAAC,CAAC,CACjCsE,OAAO,CAAC,SAAS,EAAEC,MAAM,CAAClE,KAAK,CAACmE,MAAM,CAAC,CAAC,CACxCF,OAAO,CAAC,SAAS,EAAEd,IAAI,CAACtE,KAAK,CAAC,KAAK0E,WAAW,CAACvB,MAAM,CAAC,EAAE;IAC3DoC,kBAAkB,EAAE;MAAEC,QAAQ,EAAErC,MAAM,KAAK,SAAS;MAAEsC,QAAQ,EAAE;IAAM,CAAC;IACvEjE,MAAM,EAAEA,MAAM,IAAI,GAAGA,MAAM,IAAIV,KAAK;EACtC,CAAC,CAAC;EAEF,IAAIiB,UAAU,EAAE;IACd,oBACE,IAAA1G,WAAA,CAAAuI,GAAA,EAAC5I,YAAA,CAAA6I,IAAI;MAACtC,KAAK,EAAE,CAACK,MAAM,CAACtE,eAAe,EAAEiE,KAAK,CAAE;MAACC,MAAM,EAAEA,MAAO;MAAAwC,QAAA,EAC1D7C,KAAK,CAACuE,GAAG,CAAC,CAACpB,IAAI,EAAExD,KAAK,KAAK;QAC1B,MAAMqC,MAAM,GAAGtC,QAAQ,CAACC,KAAK,EAAEC,OAAO,CAAC;QACvC,MAAMyD,MAAM,GAAG1D,KAAK,KAAKK,KAAK,CAACmE,MAAM,GAAG,CAAC;QACzC,MAAMK,OAAO,GAAGrE,WAAW,GAAGsE,6BAAgB,GAAG/B,iBAAI;QACrD;QACA;QACA,MAAMgC,gBAAgB,GAAGvE,WAAW,GAChC;UAAEwE,OAAO,EAAEA,CAAA,KAAMxE,WAAW,CAACR,KAAK,CAAC;UAAEiF,aAAa,EAAEhJ;QAAgB,CAAC,GACrEiJ,SAAS;QACb,oBACE,IAAA3K,WAAA,CAAAoJ,IAAA,EAACkB,OAAO;UAENpE,KAAK,EAAEK,MAAM,CAAC9C,KAAM;UAAA,GAChB+G,gBAAgB;UAAA,GAChBb,iBAAiB,CAAClE,KAAK,EAAEwD,IAAI,EAAEnB,MAAM,CAAC;UAAAa,QAAA,gBAE1C,IAAA3I,WAAA,CAAAoJ,IAAA,EAACzJ,YAAA,CAAA6I,IAAI;YAACtC,KAAK,EAAEK,MAAM,CAAC7C,gBAAiB;YAAAiF,QAAA,GAClCP,YAAY,CAAC3C,KAAK,EAAEqC,MAAM,CAAC,EAC3B,CAACqB,MAAM,iBACN,IAAAnJ,WAAA,CAAAuI,GAAA,EAAC5I,YAAA,CAAA6I,IAAI;cACHtC,KAAK,EAAE,CACLK,MAAM,CAAC5C,UAAU,EACjB;gBAAE8E,eAAe,EAAEhD,KAAK,GAAGC,OAAO,GAAGb,MAAM,CAACmD,OAAO,GAAGnD,MAAM,CAACoD;cAAO,CAAC;YACrE,CACH,CACF;UAAA,CACG,CAAC,EACNe,YAAY,CAACC,IAAI,EAAEnB,MAAM,EAAE,KAAK,EAAEqB,MAAM,CAAC;QAAA,GAhBrC,GAAGF,IAAI,CAACtE,KAAK,IAAIc,KAAK,EAiBpB,CAAC;MAEd,CAAC;IAAC,CACE,CAAC;EAEX;EAEA,oBACE,IAAAzF,WAAA,CAAAuI,GAAA,EAAC5I,YAAA,CAAAiL,UAAU;IACTC,GAAG,EAAEhE,SAAU;IACfV,MAAM,EAAEA,MAAO;IACf2E,UAAU;IACVC,8BAA8B,EAAE1D,SAAU;IAC1C2D,QAAQ,EAAG/K,CAAoB,IAAK+G,gBAAgB,CAAC/G,CAAC,CAACgL,WAAW,CAACC,MAAM,CAACtH,KAAK,CAAE;IACjFuH,mBAAmB,EAAGvH,KAAa,IAAKuD,eAAe,CAACvD,KAAK;IAC7D;IACA;IAAA;IACAsC,KAAK,EAAE,CAACK,MAAM,CAACrE,WAAW,EAAEgE,KAAK,CAAE;IACnCkF,qBAAqB,EAAE7E,MAAM,CAAClE,OAAQ;IAAAsG,QAAA,EAErC7C,KAAK,CAACuE,GAAG,CAAC,CAACpB,IAAI,EAAExD,KAAK,KAAK;MAC1B,MAAMqC,MAAM,GAAGtC,QAAQ,CAACC,KAAK,EAAEC,OAAO,CAAC;MACvC,MAAMyD,MAAM,GAAG1D,KAAK,KAAKK,KAAK,CAACmE,MAAM,GAAG,CAAC;MACzC,MAAMK,OAAO,GAAGrE,WAAW,GAAGsE,6BAAgB,GAAG/B,iBAAI;MACrD,MAAMgC,gBAAgB,GAAGvE,WAAW,GAChC;QAAEwE,OAAO,EAAEA,CAAA,KAAMxE,WAAW,CAACR,KAAK,CAAC;QAAEiF,aAAa,EAAEhJ;MAAgB,CAAC,GACrEiJ,SAAS;MACb,oBACE,IAAA3K,WAAA,CAAAoJ,IAAA,EAAC5J,MAAA,CAAAmB,OAAK,CAAC0K,QAAQ;QAAA1C,QAAA,gBACb,IAAA3I,WAAA,CAAAoJ,IAAA,EAACkB,OAAO;UACNpE,KAAK,EAAEK,MAAM,CAACjE,KAAM;UACpB0I,QAAQ,EAAG/K,CAAoB,IAAK;YAClCmH,KAAK,CAAC1B,OAAO,CAACD,KAAK,CAAC,GAAGxF,CAAC,CAACgL,WAAW,CAACC,MAAM,CAAC3D,CAAC;UAC/C,CAAE;UAAA,GACEiD,gBAAgB;UAAA,GAChBb,iBAAiB,CAAClE,KAAK,EAAEwD,IAAI,EAAEnB,MAAM,CAAC;UAAAa,QAAA,GAEzCP,YAAY,CAAC3C,KAAK,EAAEqC,MAAM,CAAC,EAC3BkB,YAAY,CAACC,IAAI,EAAEnB,MAAM,EAAE,IAAI,CAAC;QAAA,CAC1B,CAAC,EACT,CAACqB,MAAM,iBACN,IAAAnJ,WAAA,CAAAuI,GAAA,EAAC5I,YAAA,CAAA6I,IAAI;UACHtC,KAAK,EAAE,CAACK,MAAM,CAACtD,UAAU,EAAE;YAAEwF,eAAe,EAAEhD,KAAK,GAAGC,OAAO,GAAGb,MAAM,CAACmD,OAAO,GAAGnD,MAAM,CAACoD;UAAO,CAAC;QAAE,CACnG,CACF;MAAA,GAhBkB,GAAGgB,IAAI,CAACtE,KAAK,IAAIc,KAAK,EAiB3B,CAAC;IAErB,CAAC;EAAC,CACQ,CAAC;AAEjB,CACF,CAAC;AACDE,KAAK,CAAC2F,WAAW,GAAG,OAAO","ignoreList":[]}
|
|
@@ -7,15 +7,12 @@ exports.SymmetricGrid = SymmetricGrid;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
9
|
var _createStyles = require("../theme/createStyles");
|
|
10
|
+
var _UIProvider = require("../theme/UIProvider");
|
|
10
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
12
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
12
|
-
const useStyles = (0, _createStyles.createStyles)(
|
|
13
|
-
grid: {
|
|
14
|
-
gap: theme.tokens.spacing.md
|
|
15
|
-
},
|
|
13
|
+
const useStyles = (0, _createStyles.createStyles)(() => ({
|
|
16
14
|
row: {
|
|
17
|
-
flexDirection: 'row'
|
|
18
|
-
gap: theme.tokens.spacing.md
|
|
15
|
+
flexDirection: 'row'
|
|
19
16
|
},
|
|
20
17
|
rowBalanced: {
|
|
21
18
|
justifyContent: 'center'
|
|
@@ -36,10 +33,16 @@ function chunk(data, size) {
|
|
|
36
33
|
|
|
37
34
|
/**
|
|
38
35
|
* SymmetricGrid
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
36
|
+
* Law of Prägnanz (good form): groups items into even rows of N columns.
|
|
37
|
+
* The last row, when incomplete, is centered by default instead of sticking
|
|
38
|
+
* to one edge — that is what makes it read as a "short row" and not as a
|
|
39
|
+
* broken layout with a gap on one side.
|
|
40
|
+
*
|
|
41
|
+
* Gestalt, similarity: every cell has exactly the same width, also in the
|
|
42
|
+
* centered short row, so items read as peers. The horizontal gap is padding
|
|
43
|
+
* inside each cell (and a negative margin on the row), not flex `gap`: a
|
|
44
|
+
* `100 / columns %` width plus a gap made every row wider than the grid and
|
|
45
|
+
* pushed the right column out of the container.
|
|
43
46
|
*/
|
|
44
47
|
function SymmetricGrid({
|
|
45
48
|
data,
|
|
@@ -48,31 +51,36 @@ function SymmetricGrid({
|
|
|
48
51
|
columns = 2,
|
|
49
52
|
gap,
|
|
50
53
|
balanceLastRow = true,
|
|
51
|
-
style
|
|
54
|
+
style,
|
|
55
|
+
testID
|
|
52
56
|
}) {
|
|
57
|
+
const theme = (0, _UIProvider.useTheme)();
|
|
53
58
|
const styles = useStyles();
|
|
54
59
|
const rows = (0, _react.useMemo)(() => chunk(data, columns), [data, columns]);
|
|
60
|
+
const space = gap ?? theme.tokens.spacing.md;
|
|
55
61
|
const cellWidth = `${100 / columns}%`;
|
|
56
62
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
57
|
-
style: [
|
|
58
|
-
gap
|
|
63
|
+
style: [{
|
|
64
|
+
gap: space
|
|
59
65
|
}, style],
|
|
66
|
+
testID: testID,
|
|
60
67
|
children: rows.map((row, rowIndex) => {
|
|
61
68
|
const isLastRow = rowIndex === rows.length - 1;
|
|
62
69
|
const isIncomplete = row.length < columns;
|
|
63
70
|
const centered = isLastRow && isIncomplete && balanceLastRow;
|
|
64
71
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View
|
|
65
|
-
// `columns`
|
|
66
|
-
//
|
|
72
|
+
// `columns` in the key: if it changes, rows don't reuse DOM nodes
|
|
73
|
+
// from a row built with a different number of columns.
|
|
67
74
|
, {
|
|
68
|
-
style: [styles.row, centered ? styles.rowBalanced : styles.rowFull,
|
|
69
|
-
|
|
75
|
+
style: [styles.row, centered ? styles.rowBalanced : styles.rowFull, {
|
|
76
|
+
marginHorizontal: -space / 2
|
|
70
77
|
}],
|
|
71
78
|
children: row.map((item, colIndex) => {
|
|
72
79
|
const index = rowIndex * columns + colIndex;
|
|
73
80
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
74
81
|
style: [styles.cell, {
|
|
75
|
-
width: cellWidth
|
|
82
|
+
width: cellWidth,
|
|
83
|
+
paddingHorizontal: space / 2
|
|
76
84
|
}],
|
|
77
85
|
children: renderItem(item, index)
|
|
78
86
|
}, keyExtractor(item, index));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_createStyles","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useStyles","createStyles","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_createStyles","_UIProvider","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useStyles","createStyles","row","flexDirection","rowBalanced","justifyContent","rowFull","cell","flexGrow","flexShrink","chunk","data","size","rows","length","push","slice","SymmetricGrid","renderItem","keyExtractor","columns","gap","balanceLastRow","style","testID","theme","useTheme","styles","useMemo","space","tokens","spacing","md","cellWidth","jsx","View","children","map","rowIndex","isLastRow","isIncomplete","centered","marginHorizontal","item","colIndex","index","width","paddingHorizontal"],"sourceRoot":"../../../src","sources":["molecules/SymmetricGrid.tsx"],"mappings":"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","ignoreList":[]}
|