@draftbit/core 43.4.9 → 43.4.11-2f015a.5
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/lib/commonjs/components/Accordion/AccordionGroup.js +2 -2
- package/lib/commonjs/components/Accordion/AccordionGroup.js.map +1 -1
- package/lib/commonjs/components/DatePicker/DatePicker.js +2 -9
- package/lib/commonjs/components/DatePicker/DatePicker.js.map +1 -1
- package/lib/commonjs/components/Elevation.js +14 -3
- package/lib/commonjs/components/Elevation.js.map +1 -1
- package/lib/commonjs/components/FieldSearchBarFull.js.map +1 -1
- package/lib/commonjs/components/NumberInput.js +15 -17
- package/lib/commonjs/components/NumberInput.js.map +1 -1
- package/lib/commonjs/components/TextField.js +8 -5
- package/lib/commonjs/components/TextField.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/mappings/HeaderLarge.js.map +1 -1
- package/lib/commonjs/mappings/Icon.js +3 -1
- package/lib/commonjs/mappings/Icon.js.map +1 -1
- package/lib/commonjs/mappings/Image.js.map +1 -1
- package/lib/commonjs/mappings/KeyboardAwareScrollView.js +48 -0
- package/lib/commonjs/mappings/KeyboardAwareScrollView.js.map +1 -0
- package/lib/commonjs/mappings/MapCallout.js.map +1 -1
- package/lib/commonjs/mappings/RowBodyIcon.js.map +1 -1
- package/lib/commonjs/mappings/RowHeadlineImageCaption.js.map +1 -1
- package/lib/commonjs/mappings/RowHeadlineImageIcon.js.map +1 -1
- package/lib/module/components/Accordion/AccordionGroup.js +2 -2
- package/lib/module/components/Accordion/AccordionGroup.js.map +1 -1
- package/lib/module/components/DatePicker/DatePicker.js +3 -9
- package/lib/module/components/DatePicker/DatePicker.js.map +1 -1
- package/lib/module/components/NumberInput.js +15 -17
- package/lib/module/components/NumberInput.js.map +1 -1
- package/lib/module/components/RadioButton/index.js.map +1 -1
- package/lib/module/components/Switch.js +10 -21
- package/lib/module/components/Switch.js.map +1 -1
- package/lib/module/components/TextField.js +8 -5
- package/lib/module/components/TextField.js.map +1 -1
- package/lib/module/mappings/HeaderMedium.js.map +1 -1
- package/lib/module/mappings/Icon.js +3 -1
- package/lib/module/mappings/Icon.js.map +1 -1
- package/lib/module/mappings/KeyboardAwareScrollView.js +39 -0
- package/lib/module/mappings/KeyboardAwareScrollView.js.map +1 -0
- package/lib/typescript/src/mappings/Icon.d.ts +1 -1
- package/lib/typescript/src/mappings/KeyboardAwareScrollView.d.ts +82 -0
- package/package.json +3 -3
- package/src/components/Accordion/AccordionGroup.js +1 -1
- package/src/components/Accordion/AccordionGroup.tsx +1 -1
- package/src/components/DatePicker/DatePicker.js +2 -4
- package/src/components/DatePicker/DatePicker.tsx +1 -14
- package/src/components/NumberInput.js +13 -14
- package/src/components/NumberInput.tsx +16 -31
- package/src/components/TextField.js +5 -4
- package/src/components/TextField.tsx +6 -5
- package/src/mappings/Icon.js +4 -1
- package/src/mappings/Icon.ts +4 -1
- package/src/mappings/KeyboardAwareScrollView.js +38 -0
- package/src/mappings/KeyboardAwareScrollView.ts +48 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePicker.tsx"],"names":["React","View","Animated","Text","StyleSheet","Platform","I18nManager","TextInput","NativeTextInput","useSafeAreaInsets","dateFormat","withTheme","Portal","Button","Touchable","DateTimePicker","AnimatedText","createAnimatedComponent","FOCUS_ANIMATION_DURATION","BLUR_ANIMATION_DURATION","ICON_SIZE","MONTHS","DatePicker","Icon","style","theme","colors","typography","roundness","disabledOpacity","date","onDateChange","defaultValue","disabled","mode","format","type","leftIconName","rightIconName","leftIconMode","label","placeholder","props","value","setValue","useState","useEffect","pickerVisible","setPickerVisible","labeled","Value","placeholder1","setPlaceholder1","focused","setFocused","labelLayout","setLabelLayout","measured","width","getValidDate","Date","getMonth","formatDate","newDate","toLocaleTimeString","toLocaleString","getDate","getFullYear","toggleVisibility","_handleBlur","_handleFocus","insets","_hidePlaceholder","timing","toValue","duration","useNativeDriver","start","_showPlaceholder","setTimeout","clearTimeout","MINIMIZED_LABEL_Y_OFFSET","caption","lineHeight","OUTLINE_MINIMIZED_LABEL_Y_OFFSET","MAXIMIZED_LABEL_FONT_SIZE","subtitle1","fontSize","MINIMIZED_LABEL_FONT_SIZE","hasActiveOutline","inputTextColor","activeColor","underlineColor","borderColor","placeholderColor","containerStyle","backgroundColor","inputStyle","strong","light","divider","primary","background","paddingVertical","color","paddingLeft","paddingRight","height","borderTopLeftRadius","borderTopRightRadius","paddingBottom","marginTop","borderRadius","borderWidth","paddingTop","opacity","paddingHorizontal","marginLeft","leftIconColor","leftIconProps","size","name","leftIconStyle","position","labelStyle","top","left","transform","translateY","interpolate","inputRange","outputRange","scale","translateX","inputStyles","styles","input","marginHorizontal","container","underline","scaleY","absoluteFill","e","nativeEvent","layout","right","picker","pickerContainer","bottom","OS","closeButton","_event","data","create","alignSelf","flexDirection","justifyContent","flexGrow","textAlignVertical","margin","textAlign","isRTL"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n Animated,\n Text,\n StyleSheet,\n StyleProp,\n ViewStyle,\n TextStyle,\n Platform,\n TextInputProps,\n ImageStyle,\n I18nManager,\n LayoutChangeEvent,\n TextInput as NativeTextInput,\n} from \"react-native\";\nimport { useSafeAreaInsets } from \"react-native-safe-area-context\";\n\nimport dateFormat from \"dateformat\";\nimport { withTheme } from \"../../theming\";\nimport Portal from \"../Portal/Portal\";\nimport Button from \"../DeprecatedButton\";\nimport Touchable from \"../Touchable\";\nimport DateTimePicker from \"./DatePickerComponent\";\n\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nconst AnimatedText = Animated.createAnimatedComponent(Text);\n\nconst FOCUS_ANIMATION_DURATION = 150;\nconst BLUR_ANIMATION_DURATION = 180;\nconst ICON_SIZE = 24;\n\ntype Props = {\n style?: StyleProp<ViewStyle> & { height?: number };\n theme: Theme;\n // initialDate?: string;\n // locale?: string;\n // minuteInterval?: number;\n // timeZoneOffsetInMinutes?: number;\n // error?: boolean;\n // type?: string;\n date?: Date;\n format?: string;\n onDateChange?: (data?: Date) => void;\n defaultValue?: Date;\n disabled?: boolean;\n mode?: \"date\" | \"time\" | \"datetime\";\n type?: \"solid\" | \"underline\";\n label?: string;\n placeholder?: string;\n leftIconName?: string;\n leftIconMode?: \"outset\" | \"inset\";\n rightIconName?: string;\n} & IconSlot &\n TextInputProps;\n\nconst MONTHS = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n];\n\nconst DatePicker: React.FC<Props> = ({\n Icon,\n style,\n theme: { colors, typography, roundness, disabledOpacity },\n date,\n onDateChange = () => {},\n defaultValue,\n disabled = false,\n mode = \"date\",\n format,\n type = \"underline\",\n leftIconName,\n rightIconName,\n leftIconMode = \"inset\",\n label,\n placeholder,\n ...props\n}) => {\n const [value, setValue] = React.useState<any>(date || defaultValue);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setValue(defaultValue);\n }\n }, [defaultValue]);\n\n const [pickerVisible, setPickerVisible] = React.useState(false);\n const [labeled] = React.useState<Animated.Value>(\n new Animated.Value(date ? 0 : 1)\n );\n const [placeholder1, setPlaceholder1] = React.useState(\"\");\n const [focused, setFocused] = React.useState<boolean>(false);\n const [labelLayout, setLabelLayout] = React.useState<{\n measured: Boolean;\n width: number;\n }>({ measured: false, width: 0 });\n\n const getValidDate = (): Date => {\n if (!value) {\n return new Date();\n }\n return typeof value?.getMonth === \"function\" ? value : new Date();\n };\n\n const formatDate = (): string => {\n if (!value) return \"\";\n let newDate = getValidDate();\n\n if (format) return dateFormat(newDate, format);\n\n if (mode === \"time\") {\n return `${newDate.toLocaleTimeString()}`;\n }\n\n if (mode === \"datetime\") {\n return `${newDate.toLocaleString()}`;\n }\n\n return `${\n MONTHS[newDate.getMonth()]\n } ${newDate.getDate()}, ${newDate.getFullYear()}`;\n };\n\n const toggleVisibility = async () => {\n setPickerVisible(!pickerVisible);\n focused ? _handleBlur() : _handleFocus();\n };\n const insets = useSafeAreaInsets();\n\n // const _restoreLabel = () =>\n // Animated.timing(labeled, {\n // toValue: 1,\n // duration: FOCUS_ANIMATION_DURATION,\n // useNativeDriver: true,\n // }).start();\n\n // const _minmizeLabel = () =>\n // Animated.timing(labeled, {\n // toValue: 0,\n // duration: BLUR_ANIMATION_DURATION,\n // useNativeDriver: true,\n // }).start();\n\n // const _showPlaceholder = () =>\n // setTimeout(() => setPlaceholder1(placeholder || \"\"), 50);\n\n const _hidePlaceholder = () => {\n setPlaceholder1(\"\");\n };\n\n React.useEffect(() => {\n setValue(date);\n }, [date]);\n\n React.useEffect(() => {\n if (value || focused || placeholder1) {\n // _minmizeLabel();\n Animated.timing(labeled, {\n toValue: 0,\n duration: BLUR_ANIMATION_DURATION,\n useNativeDriver: true,\n }).start();\n } else {\n // _restoreLabel();\n Animated.timing(labeled, {\n toValue: 1,\n duration: FOCUS_ANIMATION_DURATION,\n useNativeDriver: true,\n }).start();\n }\n }, [value, focused, placeholder1, labeled]);\n\n React.useEffect(() => {\n const _showPlaceholder = () =>\n setTimeout(() => setPlaceholder1(placeholder || \"\"), 50);\n if (focused || !label) {\n _showPlaceholder();\n } else {\n _hidePlaceholder();\n }\n return () => {\n clearTimeout(_showPlaceholder());\n };\n }, [focused, label, placeholder]);\n\n const _handleFocus = () => {\n if (disabled) {\n return;\n }\n\n setFocused(true);\n };\n\n const _handleBlur = () => {\n if (disabled) {\n return;\n }\n setFocused(false);\n };\n\n const MINIMIZED_LABEL_Y_OFFSET = -(typography.caption.lineHeight + 4);\n const OUTLINE_MINIMIZED_LABEL_Y_OFFSET = -(16 * 0.5 + 4);\n const MAXIMIZED_LABEL_FONT_SIZE = typography.subtitle1.fontSize;\n const MINIMIZED_LABEL_FONT_SIZE = typography.caption.fontSize;\n\n const hasActiveOutline = focused;\n\n let inputTextColor,\n activeColor,\n underlineColor,\n borderColor,\n placeholderColor,\n containerStyle: StyleProp<ViewStyle>,\n backgroundColor,\n inputStyle: StyleProp<TextStyle>;\n\n inputTextColor = colors.strong;\n if (disabled) {\n activeColor = colors.light;\n placeholderColor = colors.light;\n borderColor = \"transparent\";\n underlineColor = \"transparent\";\n backgroundColor = colors.divider;\n } else {\n activeColor = colors.primary;\n placeholderColor = borderColor = colors.light;\n underlineColor = colors.light;\n backgroundColor = colors.background;\n }\n\n const { lineHeight, ...subtitle1 } = typography.subtitle1;\n\n inputStyle = {\n paddingVertical: 0,\n color: inputTextColor,\n paddingLeft:\n leftIconName && leftIconMode === \"inset\"\n ? ICON_SIZE + (type === \"solid\" ? 16 : 12)\n : 0,\n paddingRight: rightIconName ? ICON_SIZE + 16 + 4 : 12,\n ...subtitle1,\n height: lineHeight,\n };\n\n if (type === \"underline\") {\n containerStyle = {\n borderTopLeftRadius: roundness,\n borderTopRightRadius: roundness,\n paddingBottom: 12,\n marginTop: 16,\n };\n } else {\n containerStyle = {\n borderRadius: roundness,\n borderColor: hasActiveOutline ? activeColor : borderColor,\n borderWidth: 1,\n paddingTop: labeled ? 16 * 1.5 : 16,\n paddingBottom: labeled ? 16 * 0.5 : 16,\n opacity: disabled ? disabledOpacity : 1,\n backgroundColor,\n };\n\n inputStyle.paddingHorizontal = 12;\n }\n\n if (leftIconName && leftIconMode === \"outset\") {\n containerStyle.marginLeft = ICON_SIZE + 8;\n }\n\n let leftIconColor;\n if (focused) {\n leftIconColor = colors.primary;\n } else {\n leftIconColor = colors.light;\n }\n\n const leftIconProps = {\n size: 24,\n color: leftIconColor,\n name: leftIconName || \"\",\n };\n\n const leftIconStyle: ImageStyle = {\n position: \"absolute\",\n marginTop:\n type === \"solid\"\n ? leftIconMode === \"inset\"\n ? MINIMIZED_LABEL_FONT_SIZE + 4\n : 16\n : leftIconMode === \"outset\"\n ? 16\n : 0,\n };\n\n const labelStyle = {\n ...typography.subtitle1,\n top: type === \"solid\" ? 16 : 0,\n left:\n leftIconName && leftIconMode === \"inset\"\n ? ICON_SIZE + (type === \"solid\" ? 16 : 12)\n : 0,\n transform: [\n {\n // Move label to top\n translateY: labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n type === \"solid\"\n ? OUTLINE_MINIMIZED_LABEL_Y_OFFSET\n : MINIMIZED_LABEL_Y_OFFSET,\n 0,\n ],\n }),\n },\n {\n // Make label smaller\n scale: labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n MINIMIZED_LABEL_FONT_SIZE / MAXIMIZED_LABEL_FONT_SIZE,\n 1,\n ],\n }),\n },\n {\n // Offset label scale since RN doesn't support transform origin\n translateX: labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n -(1 - MINIMIZED_LABEL_FONT_SIZE / MAXIMIZED_LABEL_FONT_SIZE) *\n (labelLayout.width / 2),\n 0,\n ],\n }),\n },\n ],\n };\n\n const inputStyles = [\n styles.input,\n inputStyle,\n type === \"solid\" ? { marginHorizontal: 12 } : {},\n ];\n\n // const render = (props) => <NativeTextInput {...props} />;\n\n return (\n <View style={[styles.container, style]}>\n <Touchable disabled={disabled} onPress={toggleVisibility}>\n <View pointerEvents=\"none\">\n <View style={[styles.container, style]}>\n {leftIconName && leftIconMode === \"outset\" ? (\n <Icon {...leftIconProps} style={leftIconStyle} />\n ) : null}\n <View\n style={[containerStyle, style ? { height: style.height } : {}]}\n >\n {type === \"underline\" ? (\n // When type === 'flat', render an underline\n <Animated.View\n style={[\n styles.underline,\n {\n backgroundColor: focused ? activeColor : underlineColor,\n // Underlines is thinner when input is not focused\n transform: [{ scaleY: focused ? 1 : 0.5 }],\n },\n ]}\n />\n ) : null}\n\n {label ? (\n // Position colored placeholder and gray placeholder on top of each other and crossfade them\n // This gives the effect of animating the color, but allows us to use native driver\n <View\n pointerEvents=\"none\"\n style={[\n StyleSheet.absoluteFill,\n {\n opacity:\n // Hide the label in minimized state until we measure its width\n date || focused ? (labelLayout.measured ? 1 : 0) : 1,\n },\n ]}\n >\n <AnimatedText\n onLayout={(e: LayoutChangeEvent) =>\n setLabelLayout({\n width: e.nativeEvent.layout.width,\n measured: true,\n })\n }\n style={[\n styles.placeholder,\n type === \"solid\" ? { paddingHorizontal: 12 } : {},\n labelStyle,\n {\n color: colors.light,\n opacity: labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [hasActiveOutline ? 1 : 0, 0],\n }),\n },\n ]}\n numberOfLines={1}\n >\n {label}\n </AnimatedText>\n <AnimatedText\n style={[\n styles.placeholder,\n type === \"solid\" ? { paddingHorizontal: 12 } : {},\n labelStyle,\n {\n color: placeholderColor,\n opacity: hasActiveOutline ? labeled : 1,\n },\n ]}\n numberOfLines={1}\n >\n {label}\n </AnimatedText>\n </View>\n ) : null}\n\n {leftIconName && leftIconMode === \"inset\" ? (\n <Icon\n {...leftIconProps}\n style={{\n ...leftIconStyle,\n marginLeft: type === \"solid\" ? 16 : 0,\n }}\n />\n ) : null}\n\n <NativeTextInput\n value={formatDate()}\n placeholder={label ? placeholder1 : placeholder}\n editable={!disabled}\n placeholderTextColor={placeholderColor}\n selectionColor={activeColor}\n onFocus={_handleFocus}\n onBlur={_handleBlur}\n underlineColorAndroid={\"transparent\"}\n style={inputStyles}\n {...props}\n />\n </View>\n {rightIconName ? (\n <Icon\n name={rightIconName}\n size={ICON_SIZE}\n color={colors.light}\n style={{\n position: \"absolute\",\n right: 16,\n marginTop:\n type === \"solid\" ? MINIMIZED_LABEL_FONT_SIZE + 4 : 16,\n }}\n />\n ) : null}\n </View>\n </View>\n </Touchable>\n {pickerVisible && (\n <Portal>\n <View\n style={[\n styles.picker,\n {\n backgroundColor: colors.divider,\n },\n ]}\n >\n <View\n style={[\n styles.pickerContainer,\n {\n paddingTop: insets.top,\n paddingBottom: insets.bottom,\n paddingLeft: insets.left,\n paddingRight: insets.right,\n },\n ]}\n >\n {Platform.OS === \"ios\" && (\n <Button\n Icon={Icon}\n type=\"text\"\n onPress={toggleVisibility}\n style={styles.closeButton}\n >\n Close\n </Button>\n )}\n\n <DateTimePicker\n value={getValidDate()}\n mode={mode}\n isVisible={pickerVisible}\n toggleVisibility={toggleVisibility}\n onChange={(_event: any, data: any) => {\n Platform.OS === \"ios\" ? null : toggleVisibility();\n setValue(data);\n onDateChange(data);\n }}\n />\n </View>\n </View>\n </Portal>\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n picker: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n flexDirection: \"row\",\n justifyContent: \"center\",\n },\n underline: {\n position: \"absolute\",\n left: 0,\n right: 0,\n bottom: 0,\n height: 2,\n },\n input: {\n flexGrow: 1,\n justifyContent: \"center\",\n textAlignVertical: \"center\",\n margin: 0,\n textAlign: I18nManager.isRTL ? \"right\" : \"left\",\n },\n placeholder: {\n position: \"absolute\",\n left: 0,\n },\n pickerContainer: { flexDirection: \"column\", width: \"100%\" },\n closeButton: {\n alignSelf: \"flex-end\",\n },\n});\n\nexport default withTheme(DatePicker);\n"]}
|
|
1
|
+
{"version":3,"sources":["DatePicker.tsx"],"names":["React","View","Animated","Text","StyleSheet","I18nManager","TextInput","NativeTextInput","useSafeAreaInsets","dateFormat","withTheme","Portal","Touchable","DateTimePicker","AnimatedText","createAnimatedComponent","FOCUS_ANIMATION_DURATION","BLUR_ANIMATION_DURATION","ICON_SIZE","MONTHS","DatePicker","Icon","style","theme","colors","typography","roundness","disabledOpacity","date","onDateChange","defaultValue","disabled","mode","format","type","leftIconName","rightIconName","leftIconMode","label","placeholder","props","value","setValue","useState","useEffect","pickerVisible","setPickerVisible","labeled","Value","placeholder1","setPlaceholder1","focused","setFocused","labelLayout","setLabelLayout","measured","width","getValidDate","Date","getMonth","formatDate","newDate","toLocaleTimeString","toLocaleString","getDate","getFullYear","toggleVisibility","_handleBlur","_handleFocus","insets","_hidePlaceholder","timing","toValue","duration","useNativeDriver","start","_showPlaceholder","setTimeout","clearTimeout","MINIMIZED_LABEL_Y_OFFSET","caption","lineHeight","OUTLINE_MINIMIZED_LABEL_Y_OFFSET","MAXIMIZED_LABEL_FONT_SIZE","subtitle1","fontSize","MINIMIZED_LABEL_FONT_SIZE","hasActiveOutline","inputTextColor","activeColor","underlineColor","borderColor","placeholderColor","containerStyle","backgroundColor","inputStyle","strong","light","divider","primary","background","paddingVertical","color","paddingLeft","paddingRight","height","borderTopLeftRadius","borderTopRightRadius","paddingBottom","marginTop","borderRadius","borderWidth","paddingTop","opacity","paddingHorizontal","marginLeft","leftIconColor","leftIconProps","size","name","leftIconStyle","position","labelStyle","top","left","transform","translateY","interpolate","inputRange","outputRange","scale","translateX","inputStyles","styles","input","marginHorizontal","container","underline","scaleY","absoluteFill","e","nativeEvent","layout","right","picker","pickerContainer","bottom","_event","data","create","alignSelf","flexDirection","justifyContent","flexGrow","textAlignVertical","margin","textAlign","isRTL","closeButton"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n Animated,\n Text,\n StyleSheet,\n StyleProp,\n ViewStyle,\n TextStyle,\n TextInputProps,\n ImageStyle,\n I18nManager,\n LayoutChangeEvent,\n TextInput as NativeTextInput,\n} from \"react-native\";\nimport { useSafeAreaInsets } from \"react-native-safe-area-context\";\n\nimport dateFormat from \"dateformat\";\nimport { withTheme } from \"../../theming\";\nimport Portal from \"../Portal/Portal\";\nimport Touchable from \"../Touchable\";\nimport DateTimePicker from \"./DatePickerComponent\";\n\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nconst AnimatedText = Animated.createAnimatedComponent(Text);\n\nconst FOCUS_ANIMATION_DURATION = 150;\nconst BLUR_ANIMATION_DURATION = 180;\nconst ICON_SIZE = 24;\n\ntype Props = {\n style?: StyleProp<ViewStyle> & { height?: number };\n theme: Theme;\n // initialDate?: string;\n // locale?: string;\n // minuteInterval?: number;\n // timeZoneOffsetInMinutes?: number;\n // error?: boolean;\n // type?: string;\n date?: Date;\n format?: string;\n onDateChange?: (data?: Date) => void;\n defaultValue?: Date;\n disabled?: boolean;\n mode?: \"date\" | \"time\" | \"datetime\";\n type?: \"solid\" | \"underline\";\n label?: string;\n placeholder?: string;\n leftIconName?: string;\n leftIconMode?: \"outset\" | \"inset\";\n rightIconName?: string;\n} & IconSlot &\n TextInputProps;\n\nconst MONTHS = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n];\n\nconst DatePicker: React.FC<Props> = ({\n Icon,\n style,\n theme: { colors, typography, roundness, disabledOpacity },\n date,\n onDateChange = () => {},\n defaultValue,\n disabled = false,\n mode = \"date\",\n format,\n type = \"underline\",\n leftIconName,\n rightIconName,\n leftIconMode = \"inset\",\n label,\n placeholder,\n ...props\n}) => {\n const [value, setValue] = React.useState<any>(date || defaultValue);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setValue(defaultValue);\n }\n }, [defaultValue]);\n\n const [pickerVisible, setPickerVisible] = React.useState(false);\n const [labeled] = React.useState<Animated.Value>(\n new Animated.Value(date ? 0 : 1)\n );\n const [placeholder1, setPlaceholder1] = React.useState(\"\");\n const [focused, setFocused] = React.useState<boolean>(false);\n const [labelLayout, setLabelLayout] = React.useState<{\n measured: Boolean;\n width: number;\n }>({ measured: false, width: 0 });\n\n const getValidDate = (): Date => {\n if (!value) {\n return new Date();\n }\n return typeof value?.getMonth === \"function\" ? value : new Date();\n };\n\n const formatDate = (): string => {\n if (!value) return \"\";\n let newDate = getValidDate();\n\n if (format) return dateFormat(newDate, format);\n\n if (mode === \"time\") {\n return `${newDate.toLocaleTimeString()}`;\n }\n\n if (mode === \"datetime\") {\n return `${newDate.toLocaleString()}`;\n }\n\n return `${\n MONTHS[newDate.getMonth()]\n } ${newDate.getDate()}, ${newDate.getFullYear()}`;\n };\n\n const toggleVisibility = async () => {\n setPickerVisible(!pickerVisible);\n focused ? _handleBlur() : _handleFocus();\n };\n const insets = useSafeAreaInsets();\n\n // const _restoreLabel = () =>\n // Animated.timing(labeled, {\n // toValue: 1,\n // duration: FOCUS_ANIMATION_DURATION,\n // useNativeDriver: true,\n // }).start();\n\n // const _minmizeLabel = () =>\n // Animated.timing(labeled, {\n // toValue: 0,\n // duration: BLUR_ANIMATION_DURATION,\n // useNativeDriver: true,\n // }).start();\n\n // const _showPlaceholder = () =>\n // setTimeout(() => setPlaceholder1(placeholder || \"\"), 50);\n\n const _hidePlaceholder = () => {\n setPlaceholder1(\"\");\n };\n\n React.useEffect(() => {\n setValue(date);\n }, [date]);\n\n React.useEffect(() => {\n if (value || focused || placeholder1) {\n // _minmizeLabel();\n Animated.timing(labeled, {\n toValue: 0,\n duration: BLUR_ANIMATION_DURATION,\n useNativeDriver: true,\n }).start();\n } else {\n // _restoreLabel();\n Animated.timing(labeled, {\n toValue: 1,\n duration: FOCUS_ANIMATION_DURATION,\n useNativeDriver: true,\n }).start();\n }\n }, [value, focused, placeholder1, labeled]);\n\n React.useEffect(() => {\n const _showPlaceholder = () =>\n setTimeout(() => setPlaceholder1(placeholder || \"\"), 50);\n if (focused || !label) {\n _showPlaceholder();\n } else {\n _hidePlaceholder();\n }\n return () => {\n clearTimeout(_showPlaceholder());\n };\n }, [focused, label, placeholder]);\n\n const _handleFocus = () => {\n if (disabled) {\n return;\n }\n\n setFocused(true);\n };\n\n const _handleBlur = () => {\n if (disabled) {\n return;\n }\n setFocused(false);\n };\n\n const MINIMIZED_LABEL_Y_OFFSET = -(typography.caption.lineHeight + 4);\n const OUTLINE_MINIMIZED_LABEL_Y_OFFSET = -(16 * 0.5 + 4);\n const MAXIMIZED_LABEL_FONT_SIZE = typography.subtitle1.fontSize;\n const MINIMIZED_LABEL_FONT_SIZE = typography.caption.fontSize;\n\n const hasActiveOutline = focused;\n\n let inputTextColor,\n activeColor,\n underlineColor,\n borderColor,\n placeholderColor,\n containerStyle: StyleProp<ViewStyle>,\n backgroundColor,\n inputStyle: StyleProp<TextStyle>;\n\n inputTextColor = colors.strong;\n if (disabled) {\n activeColor = colors.light;\n placeholderColor = colors.light;\n borderColor = \"transparent\";\n underlineColor = \"transparent\";\n backgroundColor = colors.divider;\n } else {\n activeColor = colors.primary;\n placeholderColor = borderColor = colors.light;\n underlineColor = colors.light;\n backgroundColor = colors.background;\n }\n\n const { lineHeight, ...subtitle1 } = typography.subtitle1;\n\n inputStyle = {\n paddingVertical: 0,\n color: inputTextColor,\n paddingLeft:\n leftIconName && leftIconMode === \"inset\"\n ? ICON_SIZE + (type === \"solid\" ? 16 : 12)\n : 0,\n paddingRight: rightIconName ? ICON_SIZE + 16 + 4 : 12,\n ...subtitle1,\n height: lineHeight,\n };\n\n if (type === \"underline\") {\n containerStyle = {\n borderTopLeftRadius: roundness,\n borderTopRightRadius: roundness,\n paddingBottom: 12,\n marginTop: 16,\n };\n } else {\n containerStyle = {\n borderRadius: roundness,\n borderColor: hasActiveOutline ? activeColor : borderColor,\n borderWidth: 1,\n paddingTop: labeled ? 16 * 1.5 : 16,\n paddingBottom: labeled ? 16 * 0.5 : 16,\n opacity: disabled ? disabledOpacity : 1,\n backgroundColor,\n };\n\n inputStyle.paddingHorizontal = 12;\n }\n\n if (leftIconName && leftIconMode === \"outset\") {\n containerStyle.marginLeft = ICON_SIZE + 8;\n }\n\n let leftIconColor;\n if (focused) {\n leftIconColor = colors.primary;\n } else {\n leftIconColor = colors.light;\n }\n\n const leftIconProps = {\n size: 24,\n color: leftIconColor,\n name: leftIconName || \"\",\n };\n\n const leftIconStyle: ImageStyle = {\n position: \"absolute\",\n marginTop:\n type === \"solid\"\n ? leftIconMode === \"inset\"\n ? MINIMIZED_LABEL_FONT_SIZE + 4\n : 16\n : leftIconMode === \"outset\"\n ? 16\n : 0,\n };\n\n const labelStyle = {\n ...typography.subtitle1,\n top: type === \"solid\" ? 16 : 0,\n left:\n leftIconName && leftIconMode === \"inset\"\n ? ICON_SIZE + (type === \"solid\" ? 16 : 12)\n : 0,\n transform: [\n {\n // Move label to top\n translateY: labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n type === \"solid\"\n ? OUTLINE_MINIMIZED_LABEL_Y_OFFSET\n : MINIMIZED_LABEL_Y_OFFSET,\n 0,\n ],\n }),\n },\n {\n // Make label smaller\n scale: labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n MINIMIZED_LABEL_FONT_SIZE / MAXIMIZED_LABEL_FONT_SIZE,\n 1,\n ],\n }),\n },\n {\n // Offset label scale since RN doesn't support transform origin\n translateX: labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n -(1 - MINIMIZED_LABEL_FONT_SIZE / MAXIMIZED_LABEL_FONT_SIZE) *\n (labelLayout.width / 2),\n 0,\n ],\n }),\n },\n ],\n };\n\n const inputStyles = [\n styles.input,\n inputStyle,\n type === \"solid\" ? { marginHorizontal: 12 } : {},\n ];\n\n // const render = (props) => <NativeTextInput {...props} />;\n\n return (\n <View style={[styles.container, style]}>\n <Touchable disabled={disabled} onPress={toggleVisibility}>\n <View pointerEvents=\"none\">\n <View style={[styles.container, style]}>\n {leftIconName && leftIconMode === \"outset\" ? (\n <Icon {...leftIconProps} style={leftIconStyle} />\n ) : null}\n <View\n style={[containerStyle, style ? { height: style.height } : {}]}\n >\n {type === \"underline\" ? (\n // When type === 'flat', render an underline\n <Animated.View\n style={[\n styles.underline,\n {\n backgroundColor: focused ? activeColor : underlineColor,\n // Underlines is thinner when input is not focused\n transform: [{ scaleY: focused ? 1 : 0.5 }],\n },\n ]}\n />\n ) : null}\n\n {label ? (\n // Position colored placeholder and gray placeholder on top of each other and crossfade them\n // This gives the effect of animating the color, but allows us to use native driver\n <View\n pointerEvents=\"none\"\n style={[\n StyleSheet.absoluteFill,\n {\n opacity:\n // Hide the label in minimized state until we measure its width\n date || focused ? (labelLayout.measured ? 1 : 0) : 1,\n },\n ]}\n >\n <AnimatedText\n onLayout={(e: LayoutChangeEvent) =>\n setLabelLayout({\n width: e.nativeEvent.layout.width,\n measured: true,\n })\n }\n style={[\n styles.placeholder,\n type === \"solid\" ? { paddingHorizontal: 12 } : {},\n labelStyle,\n {\n color: colors.light,\n opacity: labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [hasActiveOutline ? 1 : 0, 0],\n }),\n },\n ]}\n numberOfLines={1}\n >\n {label}\n </AnimatedText>\n <AnimatedText\n style={[\n styles.placeholder,\n type === \"solid\" ? { paddingHorizontal: 12 } : {},\n labelStyle,\n {\n color: placeholderColor,\n opacity: hasActiveOutline ? labeled : 1,\n },\n ]}\n numberOfLines={1}\n >\n {label}\n </AnimatedText>\n </View>\n ) : null}\n\n {leftIconName && leftIconMode === \"inset\" ? (\n <Icon\n {...leftIconProps}\n style={{\n ...leftIconStyle,\n marginLeft: type === \"solid\" ? 16 : 0,\n }}\n />\n ) : null}\n\n <NativeTextInput\n value={formatDate()}\n placeholder={label ? placeholder1 : placeholder}\n editable={!disabled}\n placeholderTextColor={placeholderColor}\n selectionColor={activeColor}\n onFocus={_handleFocus}\n onBlur={_handleBlur}\n underlineColorAndroid={\"transparent\"}\n style={inputStyles}\n {...props}\n />\n </View>\n {rightIconName ? (\n <Icon\n name={rightIconName}\n size={ICON_SIZE}\n color={colors.light}\n style={{\n position: \"absolute\",\n right: 16,\n marginTop:\n type === \"solid\" ? MINIMIZED_LABEL_FONT_SIZE + 4 : 16,\n }}\n />\n ) : null}\n </View>\n </View>\n </Touchable>\n {pickerVisible && (\n <Portal>\n <View\n style={[\n styles.picker,\n {\n backgroundColor: colors.divider,\n },\n ]}\n >\n <View\n style={[\n styles.pickerContainer,\n {\n paddingTop: insets.top,\n paddingBottom: insets.bottom,\n paddingLeft: insets.left,\n paddingRight: insets.right,\n },\n ]}\n >\n <DateTimePicker\n value={getValidDate()}\n mode={mode}\n isVisible={pickerVisible}\n toggleVisibility={toggleVisibility}\n onChange={(_event: any, data: any) => {\n toggleVisibility();\n setValue(data);\n onDateChange(data);\n }}\n />\n </View>\n </View>\n </Portal>\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n picker: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n flexDirection: \"row\",\n justifyContent: \"center\",\n },\n underline: {\n position: \"absolute\",\n left: 0,\n right: 0,\n bottom: 0,\n height: 2,\n },\n input: {\n flexGrow: 1,\n justifyContent: \"center\",\n textAlignVertical: \"center\",\n margin: 0,\n textAlign: I18nManager.isRTL ? \"right\" : \"left\",\n },\n placeholder: {\n position: \"absolute\",\n left: 0,\n },\n pickerContainer: { flexDirection: \"column\", width: \"100%\" },\n closeButton: {\n alignSelf: \"flex-end\",\n },\n});\n\nexport default withTheme(DatePicker);\n"]}
|
|
@@ -11,15 +11,16 @@ const NumberInput = _ref => {
|
|
|
11
11
|
defaultValue,
|
|
12
12
|
...props
|
|
13
13
|
} = _ref;
|
|
14
|
+
const [currentStringNumberValue, setCurrentStringNumberValue] = useState("0");
|
|
14
15
|
|
|
15
|
-
const formatValueToStringNumber =
|
|
16
|
+
const formatValueToStringNumber = valueToFormat => {
|
|
16
17
|
if (valueToFormat != null) {
|
|
17
18
|
if (isString(valueToFormat) && valueToFormat !== "") {
|
|
18
19
|
if (/^0[1-9]$/.test(valueToFormat)) {
|
|
19
20
|
return valueToFormat.slice(1);
|
|
20
21
|
} else if (/^[+-]?([0-9]+\.?[0-9]*|\.[0-9]+)$/.test(valueToFormat)) {
|
|
21
22
|
return valueToFormat;
|
|
22
|
-
} else
|
|
23
|
+
} else {
|
|
23
24
|
return currentStringNumberValue;
|
|
24
25
|
}
|
|
25
26
|
} else if (isNumber(valueToFormat) && !isNaN(valueToFormat)) {
|
|
@@ -28,31 +29,28 @@ const NumberInput = _ref => {
|
|
|
28
29
|
}
|
|
29
30
|
|
|
30
31
|
return "0";
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
const [currentStringNumberValue, setCurrentStringNumberValue] = useState(formatValueToStringNumber("0"));
|
|
34
|
-
|
|
35
|
-
const handleChangeText = newValue => {
|
|
36
|
-
const newStringNumberValue = formatValueToStringNumber(newValue, currentStringNumberValue);
|
|
37
|
-
const number = parseFloat(newStringNumberValue);
|
|
38
|
-
setCurrentStringNumberValue(newStringNumberValue);
|
|
39
|
-
onChangeText === null || onChangeText === void 0 ? void 0 : onChangeText(number);
|
|
40
|
-
};
|
|
41
|
-
/* set currentStringNumberValue directly to defaultValue if it exists on load
|
|
42
|
-
( no need to use TextInput's defaultValue because its value is always controlled & set ) */
|
|
32
|
+
}; // set currentStringNumberValue as defaultValue prop if there is a differnce on first render only
|
|
43
33
|
|
|
44
34
|
|
|
45
35
|
useEffect(() => {
|
|
46
|
-
const defaultStringNumberValue = formatValueToStringNumber(defaultValue
|
|
36
|
+
const defaultStringNumberValue = formatValueToStringNumber(defaultValue);
|
|
47
37
|
|
|
48
38
|
if (currentStringNumberValue !== defaultStringNumberValue) {
|
|
49
39
|
setCurrentStringNumberValue(defaultStringNumberValue);
|
|
50
40
|
} // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
51
41
|
|
|
52
|
-
}, []);
|
|
42
|
+
}, []);
|
|
43
|
+
|
|
44
|
+
const handleChangeText = newValue => {
|
|
45
|
+
const newStringNumberValue = formatValueToStringNumber(newValue);
|
|
46
|
+
const number = parseFloat(newStringNumberValue);
|
|
47
|
+
setCurrentStringNumberValue(newStringNumberValue);
|
|
48
|
+
onChangeText === null || onChangeText === void 0 ? void 0 : onChangeText(number);
|
|
49
|
+
}; // run handleChangeText with value prop only when value prop changes (and first render to reset currentStringNumberValue)
|
|
50
|
+
|
|
53
51
|
|
|
54
52
|
useEffect(() => {
|
|
55
|
-
const nextStringNumberValue = formatValueToStringNumber(value
|
|
53
|
+
const nextStringNumberValue = formatValueToStringNumber(value);
|
|
56
54
|
|
|
57
55
|
if (currentStringNumberValue !== nextStringNumberValue) {
|
|
58
56
|
handleChangeText(nextStringNumberValue);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["NumberInput.tsx"],"names":["React","useEffect","useState","TextInput","isString","isNumber","isNaN","NumberInput","onChangeText","value","defaultValue","props","
|
|
1
|
+
{"version":3,"sources":["NumberInput.tsx"],"names":["React","useEffect","useState","TextInput","isString","isNumber","isNaN","NumberInput","onChangeText","value","defaultValue","props","currentStringNumberValue","setCurrentStringNumberValue","formatValueToStringNumber","valueToFormat","test","slice","toString","defaultStringNumberValue","handleChangeText","newValue","newStringNumberValue","number","parseFloat","nextStringNumberValue"],"mappings":";;AAAA,OAAOA,KAAP,IAAoBC,SAApB,EAA+BC,QAA/B,QAA+C,OAA/C;AACA,SAASC,SAAT,QAA0B,cAA1B;AACA,SAASC,QAAT,EAAmBC,QAAnB,EAA6BC,KAA7B,QAA0C,QAA1C;;AAQA,MAAMC,WAAsB,GAAG,QAKzB;AAAA,MAL0B;AAC9BC,IAAAA,YAD8B;AAE9BC,IAAAA,KAF8B;AAG9BC,IAAAA,YAH8B;AAI9B,OAAGC;AAJ2B,GAK1B;AACJ,QAAM,CAACC,wBAAD,EAA2BC,2BAA3B,IAA0DX,QAAQ,CAAC,GAAD,CAAxE;;AAEA,QAAMY,yBAAyB,GAAIC,aAAD,IAAqC;AACrE,QAAIA,aAAa,IAAI,IAArB,EAA2B;AACzB,UAAIX,QAAQ,CAACW,aAAD,CAAR,IAA2BA,aAAa,KAAK,EAAjD,EAAqD;AACnD,YAAI,WAAWC,IAAX,CAAgBD,aAAhB,CAAJ,EAAoC;AAClC,iBAAOA,aAAa,CAACE,KAAd,CAAoB,CAApB,CAAP;AACD,SAFD,MAEO,IAAI,oCAAoCD,IAApC,CAAyCD,aAAzC,CAAJ,EAA6D;AAClE,iBAAOA,aAAP;AACD,SAFM,MAEA;AACL,iBAAOH,wBAAP;AACD;AACF,OARD,MAQO,IAAIP,QAAQ,CAACU,aAAD,CAAR,IAA2B,CAACT,KAAK,CAACS,aAAD,CAArC,EAAsD;AAC3D,eAAOA,aAAa,CAACG,QAAd,EAAP;AACD;AACF;;AAED,WAAO,GAAP;AACD,GAhBD,CAHI,CAqBJ;;;AACAjB,EAAAA,SAAS,CAAC,MAAM;AACd,UAAMkB,wBAAwB,GAAGL,yBAAyB,CAACJ,YAAD,CAA1D;;AAEA,QAAIE,wBAAwB,KAAKO,wBAAjC,EAA2D;AACzDN,MAAAA,2BAA2B,CAACM,wBAAD,CAA3B;AACD,KALa,CAMd;;AACD,GAPQ,EAON,EAPM,CAAT;;AASA,QAAMC,gBAAgB,GAAIC,QAAD,IAAsB;AAC7C,UAAMC,oBAAoB,GAAGR,yBAAyB,CAACO,QAAD,CAAtD;AACA,UAAME,MAAM,GAAGC,UAAU,CAACF,oBAAD,CAAzB;AAEAT,IAAAA,2BAA2B,CAACS,oBAAD,CAA3B;AACAd,IAAAA,YAAY,SAAZ,IAAAA,YAAY,WAAZ,YAAAA,YAAY,CAAGe,MAAH,CAAZ;AACD,GAND,CA/BI,CAuCJ;;;AACAtB,EAAAA,SAAS,CAAC,MAAM;AACd,UAAMwB,qBAAqB,GAAGX,yBAAyB,CAACL,KAAD,CAAvD;;AAEA,QAAIG,wBAAwB,KAAKa,qBAAjC,EAAwD;AACtDL,MAAAA,gBAAgB,CAACK,qBAAD,CAAhB;AACD,KALa,CAMd;;AACD,GAPQ,EAON,CAAChB,KAAD,CAPM,CAAT;AASA,sBACE,oBAAC,SAAD;AACE,IAAA,YAAY,EAAC,SADf;AAEE,IAAA,KAAK,EAAEG,wBAFT;AAGE,IAAA,YAAY,EAAEQ;AAHhB,KAIMT,KAJN,EADF;AAQD,CA9DD;;AAgEA,eAAeJ,WAAf","sourcesContent":["import React, { FC, useEffect, useState } from \"react\";\nimport { TextInput } from \"react-native\";\nimport { isString, isNumber, isNaN } from \"lodash\";\n\ninterface Props {\n value?: number | string;\n defaultValue?: number | string;\n onChangeText?: (value?: number) => void;\n}\n\nconst NumberInput: FC<Props> = ({\n onChangeText,\n value,\n defaultValue,\n ...props\n}) => {\n const [currentStringNumberValue, setCurrentStringNumberValue] = useState(\"0\");\n\n const formatValueToStringNumber = (valueToFormat?: number | string) => {\n if (valueToFormat != null) {\n if (isString(valueToFormat) && valueToFormat !== \"\") {\n if (/^0[1-9]$/.test(valueToFormat)) {\n return valueToFormat.slice(1);\n } else if (/^[+-]?([0-9]+\\.?[0-9]*|\\.[0-9]+)$/.test(valueToFormat)) {\n return valueToFormat;\n } else {\n return currentStringNumberValue;\n }\n } else if (isNumber(valueToFormat) && !isNaN(valueToFormat)) {\n return valueToFormat.toString();\n }\n }\n\n return \"0\";\n };\n\n // set currentStringNumberValue as defaultValue prop if there is a differnce on first render only\n useEffect(() => {\n const defaultStringNumberValue = formatValueToStringNumber(defaultValue);\n\n if (currentStringNumberValue !== defaultStringNumberValue) {\n setCurrentStringNumberValue(defaultStringNumberValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleChangeText = (newValue: string) => {\n const newStringNumberValue = formatValueToStringNumber(newValue);\n const number = parseFloat(newStringNumberValue);\n\n setCurrentStringNumberValue(newStringNumberValue);\n onChangeText?.(number);\n };\n\n // run handleChangeText with value prop only when value prop changes (and first render to reset currentStringNumberValue)\n useEffect(() => {\n const nextStringNumberValue = formatValueToStringNumber(value);\n\n if (currentStringNumberValue !== nextStringNumberValue) {\n handleChangeText(nextStringNumberValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n return (\n <TextInput\n keyboardType=\"numeric\"\n value={currentStringNumberValue}\n onChangeText={handleChangeText}\n {...props}\n />\n );\n};\n\nexport default NumberInput;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.
|
|
1
|
+
{"version":3,"sources":["index.tsx"],"names":["default","RadioButton","RadioButtonGroup","RadioButtonRow","RadioButtonFieldGroup"],"mappings":"AAAA,SAASA,OAAO,IAAIC,WAApB,QAAuC,eAAvC;AACA,SAASD,OAAO,IAAIE,gBAApB,QAA4C,oBAA5C;AACA,SAASF,OAAO,IAAIG,cAApB,QAA0C,kBAA1C;AACA,SAASH,OAAO,IAAII,qBAApB,QAAiD,yBAAjD","sourcesContent":["export { default as RadioButton } from \"./RadioButton\";\nexport { default as RadioButtonGroup } from \"./RadioButtonGroup\";\nexport { default as RadioButtonRow } from \"./RadioButtonRow\";\nexport { default as RadioButtonFieldGroup } from \"./RadioButtonFieldGroup\";\n"]}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
|
|
1
3
|
import * as React from "react";
|
|
2
4
|
import { Switch as NativeSwitch } from "react-native";
|
|
3
5
|
import { withTheme } from "../theming";
|
|
@@ -37,24 +39,23 @@ function Switch(_ref) {
|
|
|
37
39
|
setChecked(Boolean(defaultValue));
|
|
38
40
|
}
|
|
39
41
|
}, [defaultValue, previousDefaultValue]);
|
|
40
|
-
return /*#__PURE__*/React.createElement(NativeSwitch, {
|
|
42
|
+
return /*#__PURE__*/React.createElement(NativeSwitch, _extends({
|
|
41
43
|
value: checked,
|
|
42
44
|
disabled: disabled,
|
|
43
45
|
trackColor: {
|
|
44
46
|
false: inactiveTrackThemeColor,
|
|
45
47
|
true: activeTrackThemeColor
|
|
46
48
|
},
|
|
47
|
-
thumbColor: value ? activeThumbThemeColor : inactiveThumbThemeColor
|
|
48
|
-
|
|
49
|
+
thumbColor: value ? activeThumbThemeColor : inactiveThumbThemeColor // @ts-ignore react-native-web only
|
|
50
|
+
,
|
|
49
51
|
activeThumbColor: activeThumbThemeColor,
|
|
50
52
|
ios_backgroundColor: inactiveTrackThemeColor,
|
|
51
53
|
style: style,
|
|
52
54
|
onValueChange: bool => {
|
|
53
55
|
setChecked(bool);
|
|
54
56
|
onValueChange && onValueChange(bool);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
});
|
|
57
|
+
}
|
|
58
|
+
}, rest));
|
|
58
59
|
}
|
|
59
60
|
|
|
60
61
|
function Row(_ref2) {
|
|
@@ -84,7 +85,7 @@ function Row(_ref2) {
|
|
|
84
85
|
setChecked(defaultValue);
|
|
85
86
|
}
|
|
86
87
|
}, [defaultValue]);
|
|
87
|
-
return /*#__PURE__*/React.createElement(FormRow, {
|
|
88
|
+
return /*#__PURE__*/React.createElement(FormRow, _extends({
|
|
88
89
|
disabled: disabled,
|
|
89
90
|
onPress: () => {
|
|
90
91
|
setChecked(!checked);
|
|
@@ -92,9 +93,8 @@ function Row(_ref2) {
|
|
|
92
93
|
},
|
|
93
94
|
label: label,
|
|
94
95
|
direction: direction,
|
|
95
|
-
style: style
|
|
96
|
-
|
|
97
|
-
}, /*#__PURE__*/React.createElement(Switch, {
|
|
96
|
+
style: style
|
|
97
|
+
}, rest), /*#__PURE__*/React.createElement(Switch, {
|
|
98
98
|
theme: theme,
|
|
99
99
|
value: checked,
|
|
100
100
|
disabled: disabled,
|
|
@@ -106,17 +106,6 @@ function Row(_ref2) {
|
|
|
106
106
|
}));
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
const SwitchRow = withTheme(Row);
|
|
110
|
-
export { SwitchRow };
|
|
111
|
-
export default withTheme(Switch);
|
|
112
|
-
//# sourceMappingURL=Switch.js.mapueChange: onValueChange,
|
|
113
|
-
activeTrackColor: activeTrackColor,
|
|
114
|
-
inactiveTrackColor: inactiveTrackColor,
|
|
115
|
-
activeThumbColor: activeThumbColor,
|
|
116
|
-
inactiveThumbColor: inactiveThumbColor
|
|
117
|
-
}));
|
|
118
|
-
}
|
|
119
|
-
|
|
120
109
|
const SwitchRow = withTheme(Row);
|
|
121
110
|
export { SwitchRow };
|
|
122
111
|
export default withTheme(Switch);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Switch.
|
|
1
|
+
{"version":3,"sources":["Switch.tsx"],"names":["React","Switch","NativeSwitch","withTheme","FormRow","RowDirection","usePrevious","value","defaultValue","disabled","onValueChange","activeTrackColor","inactiveTrackColor","activeThumbColor","inactiveThumbColor","theme","style","rest","activeTrackThemeColor","colors","primary","inactiveTrackThemeColor","activeThumbThemeColor","inactiveThumbThemeColor","checked","setChecked","useState","useEffect","previousDefaultValue","Boolean","false","true","bool","Row","label","direction","SwitchRow"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n Switch as NativeSwitch,\n SwitchProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport FormRow from \"./FormRow\";\nimport { RowDirection } from \"@draftbit/types\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport { usePrevious } from \"../hooks\";\n\ntype Props = {\n value?: boolean;\n disabled?: boolean;\n onValueChange?: (value: boolean) => void;\n defaultValue?: boolean;\n theme: Theme;\n activeTrackColor: string;\n inactiveTrackColor: string;\n activeThumbColor: string;\n inactiveThumbColor: string;\n} & SwitchProps;\n\nfunction Switch({\n value,\n defaultValue,\n disabled,\n onValueChange,\n activeTrackColor,\n inactiveTrackColor,\n activeThumbColor,\n inactiveThumbColor,\n theme,\n style,\n ...rest\n}: Props) {\n const activeTrackThemeColor = activeTrackColor || theme.colors.primary;\n const inactiveTrackThemeColor = inactiveTrackColor || \"#EEE\";\n\n const activeThumbThemeColor = activeThumbColor || \"#FFF\";\n const inactiveThumbThemeColor = inactiveThumbColor || \"#FFF\";\n\n const [checked, setChecked] = React.useState(value || defaultValue);\n\n React.useEffect(() => {\n if (value != null && value !== checked) {\n setChecked(value);\n }\n }, [value, checked]);\n\n // This special logic is to handle weird APIs like Airtable that return\n // true or undefined for a boolean\n const previousDefaultValue = usePrevious(defaultValue) as boolean | undefined;\n React.useEffect(() => {\n if (defaultValue !== previousDefaultValue) {\n setChecked(Boolean(defaultValue));\n }\n }, [defaultValue, previousDefaultValue]);\n\n return (\n <NativeSwitch\n value={checked}\n disabled={disabled}\n trackColor={{\n false: inactiveTrackThemeColor,\n true: activeTrackThemeColor,\n }}\n thumbColor={value ? activeThumbThemeColor : inactiveThumbThemeColor}\n // @ts-ignore react-native-web only\n activeThumbColor={activeThumbThemeColor}\n ios_backgroundColor={inactiveTrackThemeColor}\n style={style}\n onValueChange={(bool) => {\n setChecked(bool);\n onValueChange && onValueChange(bool);\n }}\n {...rest}\n />\n );\n}\n\ntype RowProps = {\n label: string;\n direction: RowDirection;\n style?: StyleProp<ViewStyle>;\n};\n\nfunction Row({\n label = \"Label\",\n direction = RowDirection.Row,\n style,\n value,\n defaultValue,\n disabled,\n onValueChange,\n activeTrackColor,\n inactiveTrackColor,\n activeThumbColor,\n inactiveThumbColor,\n theme,\n ...rest\n}: Props & RowProps) {\n const [checked, setChecked] = React.useState(\n value != null ? value : defaultValue\n );\n\n React.useEffect(() => {\n if (value != null) {\n setChecked(value);\n }\n }, [value]);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setChecked(defaultValue);\n }\n }, [defaultValue]);\n\n return (\n <FormRow\n disabled={disabled}\n onPress={() => {\n setChecked(!checked);\n onValueChange && onValueChange(!checked);\n }}\n label={label}\n direction={direction}\n style={style}\n {...rest}\n >\n <Switch\n theme={theme}\n value={checked}\n disabled={disabled}\n onValueChange={onValueChange}\n activeTrackColor={activeTrackColor}\n inactiveTrackColor={inactiveTrackColor}\n activeThumbColor={activeThumbColor}\n inactiveThumbColor={inactiveThumbColor}\n />\n </FormRow>\n );\n}\n\nconst SwitchRow = withTheme(Row);\nexport { SwitchRow };\nexport default withTheme(Switch);\n"]}
|
|
@@ -288,7 +288,8 @@ class TextField extends React.Component {
|
|
|
288
288
|
};
|
|
289
289
|
const leftIconStyle = {
|
|
290
290
|
position: "absolute",
|
|
291
|
-
marginTop: type === "solid" ? MINIMIZED_LABEL_FONT_SIZE + 4 : leftIconMode === "outset" ? 16 : 0
|
|
291
|
+
marginTop: type === "solid" ? MINIMIZED_LABEL_FONT_SIZE + 4 : leftIconMode === "outset" ? 16 : 0,
|
|
292
|
+
marginLeft: leftIconMode === "inset" && type === "solid" ? 16 : 0
|
|
292
293
|
};
|
|
293
294
|
const labelStyle = { ...typography.subtitle1,
|
|
294
295
|
top: type === "solid" ? 16 : 0,
|
|
@@ -402,11 +403,13 @@ class TextField extends React.Component {
|
|
|
402
403
|
opacity: hasActiveOutline ? this.state.labeled : 1
|
|
403
404
|
}],
|
|
404
405
|
numberOfLines: 1
|
|
405
|
-
}, label)) : null, leftIconName && leftIconMode === "inset" ? /*#__PURE__*/React.createElement(
|
|
406
|
-
style: {
|
|
407
|
-
|
|
406
|
+
}, label)) : null, leftIconName && leftIconMode === "inset" ? /*#__PURE__*/React.createElement(View, {
|
|
407
|
+
style: {
|
|
408
|
+
justifyContent: type === "solid" ? "center" : undefined
|
|
408
409
|
}
|
|
409
|
-
}
|
|
410
|
+
}, /*#__PURE__*/React.createElement(Icon, _extends({}, leftIconProps, {
|
|
411
|
+
style: leftIconStyle
|
|
412
|
+
}))) : null, render({
|
|
410
413
|
ref: c => {
|
|
411
414
|
this._root = c;
|
|
412
415
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["TextField.tsx"],"names":["React","View","Animated","TextInput","NativeTextInput","StyleSheet","Text","I18nManager","withTheme","applyStyles","extractStyles","AnimatedText","createAnimatedComponent","FOCUS_ANIMATION_DURATION","BLUR_ANIMATION_DURATION","ICON_SIZE","TextField","Component","labeled","Value","props","value","error","focused","placeholder","labelLayout","measured","width","setTimeout","clearTimeout","_timer","setState","timing","state","toValue","duration","useNativeDriver","start","disabled","onChangeText","nativeEvent","text","undefined","getDerivedStateFromProps","nextProps","prevState","componentDidMount","defaultValue","_handleChangeText","_minmizeLabel","componentDidUpdate","prevProps","_restoreLabel","label","_showPlaceholder","_hidePlaceholder","componentWillUnmount","toggleFocus","setNativeProps","args","_root","isFocused","clear","focus","blur","render","Icon","type","leftIconName","leftIconMode","rightIconName","assistiveText","underlineColor","underlineColorProp","multiline","numberOfLines","style","theme","colors","typography","roundness","disabledOpacity","rest","MINIMIZED_LABEL_Y_OFFSET","caption","lineHeight","OUTLINE_MINIMIZED_LABEL_Y_OFFSET","MAXIMIZED_LABEL_FONT_SIZE","subtitle1","fontSize","MINIMIZED_LABEL_FONT_SIZE","hasActiveOutline","inputTextColor","activeColor","borderColor","placeholderColor","containerStyle","backgroundColor","inputStyle","strong","light","divider","primary","background","placeholderTextColor","paddingVertical","color","paddingLeft","paddingRight","height","assistiveTextLeftMargin","borderTopLeftRadius","borderTopRightRadius","paddingBottom","marginTop","borderRadius","borderWidth","paddingTop","opacity","paddingHorizontal","marginLeft","leftIconColor","leftIconProps","size","name","leftIconStyle","position","labelStyle","top","left","transform","translateY","interpolate","inputRange","outputRange","scale","translateX","textStyles","inputStyles","styles","input","marginHorizontal","bgColor","padding","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderCol","styleProp","flatten","container","underline","scaleY","absoluteFill","e","layout","ref","c","onChange","editable","selectionColor","onFocus","_handleFocus","onBlur","_handleBlur","underlineColorAndroid","right","create","alignSelf","bottom","flexGrow","justifyContent","textAlignVertical","margin","textAlign","isRTL"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n Animated,\n TextInput as NativeTextInput,\n StyleSheet,\n Text,\n I18nManager,\n StyleProp,\n TextInputProps,\n NativeSyntheticEvent,\n TextInputChangeEventData,\n ViewStyle,\n TextStyle,\n LayoutChangeEvent,\n ImageStyle,\n} from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\nimport { applyStyles, extractStyles } from \"../utilities\";\n\nconst AnimatedText = Animated.createAnimatedComponent(Text);\n\nconst FOCUS_ANIMATION_DURATION = 150;\nconst BLUR_ANIMATION_DURATION = 180;\nconst ICON_SIZE = 24;\n\nexport type Props = {\n type?: \"solid\" | \"underline\";\n defaultValue?: string;\n disabled?: boolean;\n label?: string;\n error?: boolean;\n leftIconName?: string;\n leftIconMode?: \"inset\" | \"outset\";\n onChangeText: (\n text: string | NativeSyntheticEvent<TextInputChangeEventData>\n ) => void;\n rightIconName?: string;\n assistiveText?: string;\n multiline?: boolean;\n numberOfLines: number;\n underlineColor?: string;\n style?: StyleProp<ViewStyle> & { height?: number };\n theme: Theme;\n render?: (\n props: TextInputProps & { ref: (c: NativeTextInput) => void }\n ) => React.ReactNode;\n} & TextInputProps &\n IconSlot;\n\ninterface State {\n labeled: Animated.Value;\n focused?: boolean;\n placeholder?: string | undefined;\n labelLayout: {\n measured: boolean;\n width: number;\n };\n value?: string;\n}\n\nclass TextField extends React.Component<Props, State> {\n static getDerivedStateFromProps(nextProps: Props, prevState: State) {\n return {\n value:\n typeof nextProps.value !== \"undefined\"\n ? nextProps.value\n : prevState.value,\n };\n }\n\n state: State = {\n labeled: new Animated.Value(this.props.value || this.props.error ? 0 : 1),\n focused: false,\n placeholder: this.props.error ? this.props.placeholder : \"\",\n labelLayout: {\n measured: false,\n width: 0,\n },\n };\n\n componentDidMount() {\n if (this.props.defaultValue) {\n this._handleChangeText(this.props.defaultValue);\n }\n\n if (this.props.placeholder) {\n this._minmizeLabel();\n }\n }\n\n componentDidUpdate(prevProps: Props, prevState: State) {\n if (\n prevState.focused !== this.state.focused ||\n prevState.value !== this.state.value\n ) {\n // The label should be minimized if the text input is focused, or has text\n // In minimized mode, the label moves up and becomes small\n if (\n this.state.value ||\n this.state.focused ||\n this.props.error ||\n this.props.placeholder\n ) {\n this._minmizeLabel();\n } else {\n this._restoreLabel();\n }\n }\n\n if (\n prevState.focused !== this.state.focused ||\n prevProps.label !== this.props.label\n ) {\n // Show placeholder text only if the input is focused, or has error, or there's no label\n // We don't show placeholder if there's a label because the label acts as placeholder\n // When focused, the label moves up, so we can show a placeholder\n if (this.state.focused || this.props.error || !this.props.label) {\n this._showPlaceholder();\n } else {\n this._hidePlaceholder();\n }\n }\n }\n\n _timer = setTimeout(() => {}, 0);\n\n componentWillUnmount() {\n clearTimeout(this._timer);\n }\n\n _showPlaceholder = () => {\n clearTimeout(this._timer);\n\n // Set the placeholder in a delay to offset the label animation\n // If we show it immediately, they'll overlap and look ugly\n this._timer = setTimeout(\n () =>\n this.setState({\n placeholder: this.props.placeholder,\n }),\n 50\n );\n };\n\n _hidePlaceholder = () =>\n this.setState({\n placeholder: \"\",\n });\n\n _restoreLabel = () =>\n Animated.timing(this.state.labeled, {\n toValue: 1,\n duration: FOCUS_ANIMATION_DURATION,\n useNativeDriver: true,\n }).start();\n\n _minmizeLabel = () =>\n Animated.timing(this.state.labeled, {\n toValue: 0,\n duration: BLUR_ANIMATION_DURATION,\n useNativeDriver: true,\n }).start();\n\n _handleFocus = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ focused: true });\n };\n\n _handleBlur = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ focused: false });\n };\n\n _handleChangeText = (\n value: NativeSyntheticEvent<TextInputChangeEventData> | string\n ) => {\n if (this.props.disabled) {\n return;\n }\n\n if (typeof value === \"string\") {\n this.setState({ value });\n this.props.onChangeText && this.props.onChangeText(value);\n } else {\n this.setState({ value: value.nativeEvent.text });\n this.props.onChangeText &&\n this.props.onChangeText(value.nativeEvent.text);\n }\n };\n\n toggleFocus() {\n this.setState((prevState: State) => ({ focused: !prevState.focused }));\n }\n\n _root: NativeTextInput | undefined = undefined;\n /**\n * @internal\n */\n setNativeProps(args: Props) {\n return this._root && this._root.setNativeProps(args);\n }\n\n isFocused() {\n return this._root && this._root.isFocused();\n }\n\n clear() {\n return this._root && this._root.clear();\n }\n\n focus() {\n return this._root && this._root.focus();\n }\n\n blur() {\n return this._root && this._root.blur();\n }\n\n render() {\n const {\n Icon,\n type = \"underline\",\n disabled = false,\n label,\n error = false,\n leftIconName,\n leftIconMode,\n rightIconName,\n assistiveText,\n underlineColor: underlineColorProp,\n multiline = false,\n numberOfLines = 4,\n style,\n theme: { colors, typography, roundness, disabledOpacity },\n render = (props) => <NativeTextInput {...props} />,\n ...rest\n } = this.props;\n\n const MINIMIZED_LABEL_Y_OFFSET = -(typography.caption.lineHeight + 4);\n const OUTLINE_MINIMIZED_LABEL_Y_OFFSET = -(16 * 0.5 + 4);\n const MAXIMIZED_LABEL_FONT_SIZE = typography.subtitle1.fontSize;\n const MINIMIZED_LABEL_FONT_SIZE = typography.caption.fontSize;\n\n const hasActiveOutline = this.state.focused || error;\n\n let inputTextColor,\n activeColor,\n underlineColor,\n borderColor,\n placeholderColor,\n containerStyle: StyleProp<ViewStyle>,\n backgroundColor,\n inputStyle: StyleProp<TextStyle>;\n\n inputTextColor = colors.strong;\n if (disabled) {\n activeColor = colors.light;\n placeholderColor = colors.light;\n borderColor = \"transparent\";\n underlineColor = \"transparent\";\n backgroundColor = colors.divider;\n } else {\n activeColor = error ? colors.error : colors.primary;\n placeholderColor = borderColor = colors.light;\n underlineColor = underlineColorProp;\n backgroundColor = colors.background;\n }\n\n if (rest.placeholderTextColor) {\n placeholderColor = rest.placeholderTextColor;\n }\n\n const { lineHeight, ...subtitle1 } = typography.subtitle1;\n\n inputStyle = {\n paddingVertical: 0,\n color: inputTextColor,\n paddingLeft:\n leftIconName && leftIconMode === \"inset\"\n ? ICON_SIZE + 12 + (type === \"solid\" ? 16 : 0)\n : 0,\n paddingRight: rightIconName ? ICON_SIZE + 16 + 4 : 12,\n ...subtitle1,\n };\n\n if (!multiline) {\n inputStyle.height = lineHeight;\n }\n\n let assistiveTextLeftMargin;\n if (type === \"underline\") {\n containerStyle = {\n borderTopLeftRadius: roundness,\n borderTopRightRadius: roundness,\n paddingBottom: 12,\n marginTop: 16,\n };\n\n if (leftIconName && leftIconMode === \"outset\") {\n assistiveTextLeftMargin = ICON_SIZE + 8;\n } else {\n assistiveTextLeftMargin = 0;\n }\n } else {\n containerStyle = {\n borderRadius: roundness,\n borderColor: hasActiveOutline ? activeColor : borderColor,\n borderWidth: 1,\n paddingTop: label ? 16 * 1.5 : 16,\n paddingBottom: label ? 16 * 0.5 : 16,\n opacity: disabled ? disabledOpacity : 1,\n backgroundColor,\n };\n\n if (leftIconName && leftIconMode === \"inset\") {\n assistiveTextLeftMargin = 16 + 4;\n } else if (leftIconName && leftIconMode === \"outset\") {\n assistiveTextLeftMargin = ICON_SIZE + 8 + 12;\n } else {\n assistiveTextLeftMargin = 12;\n }\n\n inputStyle.paddingHorizontal = 12;\n }\n\n if (leftIconName && leftIconMode === \"outset\") {\n containerStyle.marginLeft = ICON_SIZE + 8;\n }\n\n let leftIconColor;\n if (error) {\n leftIconColor = colors.error;\n } else if (this.state.focused) {\n leftIconColor = colors.primary;\n } else {\n leftIconColor = colors.light;\n }\n\n const leftIconProps = {\n size: 24,\n color: leftIconColor,\n name: leftIconName || \"\",\n };\n\n const leftIconStyle: ImageStyle = {\n position: \"absolute\",\n marginTop:\n type === \"solid\"\n ? MINIMIZED_LABEL_FONT_SIZE + 4\n : leftIconMode === \"outset\"\n ? 16\n : 0,\n };\n\n const labelStyle = {\n ...typography.subtitle1,\n top: type === \"solid\" ? 16 : 0,\n left:\n leftIconName && leftIconMode === \"inset\"\n ? ICON_SIZE + (type === \"solid\" ? 16 : 12)\n : 0,\n transform: [\n {\n // Move label to top\n translateY: this.state.labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n type === \"solid\"\n ? OUTLINE_MINIMIZED_LABEL_Y_OFFSET\n : MINIMIZED_LABEL_Y_OFFSET,\n 0,\n ],\n }),\n },\n {\n // Make label smaller\n scale: this.state.labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n MINIMIZED_LABEL_FONT_SIZE / MAXIMIZED_LABEL_FONT_SIZE,\n 1,\n ],\n }),\n },\n {\n // Offset label scale since RN doesn't support transform origin\n translateX: this.state.labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n -(1 - MINIMIZED_LABEL_FONT_SIZE / MAXIMIZED_LABEL_FONT_SIZE) *\n (this.state.labelLayout.width / 2),\n 0,\n ],\n }),\n },\n ],\n };\n\n const { textStyles } = extractStyles(style);\n const inputStyles = applyStyles(\n [\n styles.input,\n inputStyle,\n type === \"solid\" ? { marginHorizontal: 12 } : {},\n ],\n textStyles\n );\n\n const {\n backgroundColor: bgColor,\n padding,\n paddingTop,\n paddingBottom,\n paddingLeft,\n paddingRight,\n borderRadius,\n borderWidth,\n borderTopWidth,\n borderRightWidth,\n borderBottomWidth,\n borderLeftWidth,\n borderColor: borderCol,\n ...styleProp\n } = StyleSheet.flatten(style || {}) as ViewStyle & { height?: number };\n\n return (\n <View style={[styles.container, styleProp]}>\n {leftIconName && leftIconMode === \"outset\" ? (\n <Icon {...leftIconProps} style={leftIconStyle} />\n ) : null}\n <View\n style={applyStyles([containerStyle], {\n height: style?.height,\n backgroundColor: bgColor,\n padding,\n paddingTop,\n paddingBottom,\n paddingLeft,\n paddingRight,\n borderRadius,\n borderWidth,\n borderTopWidth,\n borderRightWidth,\n borderBottomWidth,\n borderLeftWidth,\n borderColor: borderCol,\n })}\n >\n {type === \"underline\" ? (\n // When type === 'flat', render an underline\n <Animated.View\n style={[\n styles.underline,\n {\n backgroundColor:\n bgColor ||\n (error\n ? colors.error\n : this.state.focused\n ? activeColor\n : underlineColor),\n // Underlines is thinner when input is not focused\n transform: [{ scaleY: this.state.focused ? 1 : 0.5 }],\n },\n ]}\n />\n ) : null}\n\n {label ? (\n // Position colored placeholder and gray placeholder on top of each other and crossfade them\n // This gives the effect of animating the color, but allows us to use native driver\n <View\n pointerEvents=\"none\"\n style={[\n StyleSheet.absoluteFill,\n {\n opacity:\n // Hide the label in minimized state until we measure its width\n this.state.value || this.state.focused\n ? this.state.labelLayout.measured\n ? 1\n : 0\n : 1,\n },\n ]}\n >\n <AnimatedText\n onLayout={(e: LayoutChangeEvent) =>\n this.setState({\n labelLayout: {\n width: e.nativeEvent.layout.width,\n measured: true,\n },\n })\n }\n style={[\n styles.placeholder,\n type === \"solid\" ? { paddingHorizontal: 12 } : {},\n labelStyle,\n {\n color: placeholderColor,\n opacity: this.state.labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [hasActiveOutline ? 1 : 0, 0],\n }),\n },\n ]}\n numberOfLines={1}\n >\n {label}\n </AnimatedText>\n <AnimatedText\n style={[\n styles.placeholder,\n type === \"solid\" ? { paddingHorizontal: 12 } : {},\n labelStyle,\n {\n color: placeholderColor,\n opacity: hasActiveOutline ? this.state.labeled : 1,\n },\n ]}\n numberOfLines={1}\n >\n {label}\n </AnimatedText>\n </View>\n ) : null}\n\n {leftIconName && leftIconMode === \"inset\" ? (\n <Icon\n {...leftIconProps}\n style={{\n ...leftIconStyle,\n marginLeft: type === \"solid\" ? 16 : 0,\n }}\n />\n ) : null}\n\n {render({\n ref: (c: NativeTextInput) => {\n this._root = c;\n },\n onChange: this._handleChangeText,\n placeholder: label\n ? this.state.placeholder\n : this.props.placeholder,\n placeholderTextColor: placeholderColor,\n editable: !disabled,\n selectionColor: activeColor,\n multiline,\n numberOfLines,\n onFocus: this._handleFocus,\n onBlur: this._handleBlur,\n underlineColorAndroid: \"transparent\",\n style: inputStyles,\n ...rest,\n value: this.state.value,\n })}\n </View>\n {rightIconName ? (\n <Icon\n name={rightIconName}\n size={ICON_SIZE}\n color={colors.light}\n style={{\n position: \"absolute\",\n right: 16,\n marginTop: type === \"solid\" ? MINIMIZED_LABEL_FONT_SIZE + 4 : 16,\n }}\n />\n ) : null}\n\n {assistiveText ? (\n <Text\n style={[\n {\n color: error ? colors.error : colors.light,\n marginTop: 8,\n marginLeft: assistiveTextLeftMargin,\n },\n ]}\n >\n {assistiveText}\n </Text>\n ) : null}\n </View>\n );\n }\n}\n\nexport default withTheme(TextField);\n\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n placeholder: {\n position: \"absolute\",\n left: 0,\n },\n underline: {\n position: \"absolute\",\n left: 0,\n right: 0,\n bottom: 0,\n height: 2,\n },\n input: {\n flexGrow: 1,\n justifyContent: \"center\",\n textAlignVertical: \"center\",\n margin: 0,\n textAlign: I18nManager.isRTL ? \"right\" : \"left\",\n },\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["TextField.tsx"],"names":["React","View","Animated","TextInput","NativeTextInput","StyleSheet","Text","I18nManager","withTheme","applyStyles","extractStyles","AnimatedText","createAnimatedComponent","FOCUS_ANIMATION_DURATION","BLUR_ANIMATION_DURATION","ICON_SIZE","TextField","Component","labeled","Value","props","value","error","focused","placeholder","labelLayout","measured","width","setTimeout","clearTimeout","_timer","setState","timing","state","toValue","duration","useNativeDriver","start","disabled","onChangeText","nativeEvent","text","undefined","getDerivedStateFromProps","nextProps","prevState","componentDidMount","defaultValue","_handleChangeText","_minmizeLabel","componentDidUpdate","prevProps","_restoreLabel","label","_showPlaceholder","_hidePlaceholder","componentWillUnmount","toggleFocus","setNativeProps","args","_root","isFocused","clear","focus","blur","render","Icon","type","leftIconName","leftIconMode","rightIconName","assistiveText","underlineColor","underlineColorProp","multiline","numberOfLines","style","theme","colors","typography","roundness","disabledOpacity","rest","MINIMIZED_LABEL_Y_OFFSET","caption","lineHeight","OUTLINE_MINIMIZED_LABEL_Y_OFFSET","MAXIMIZED_LABEL_FONT_SIZE","subtitle1","fontSize","MINIMIZED_LABEL_FONT_SIZE","hasActiveOutline","inputTextColor","activeColor","borderColor","placeholderColor","containerStyle","backgroundColor","inputStyle","strong","light","divider","primary","background","placeholderTextColor","paddingVertical","color","paddingLeft","paddingRight","height","assistiveTextLeftMargin","borderTopLeftRadius","borderTopRightRadius","paddingBottom","marginTop","borderRadius","borderWidth","paddingTop","opacity","paddingHorizontal","marginLeft","leftIconColor","leftIconProps","size","name","leftIconStyle","position","labelStyle","top","left","transform","translateY","interpolate","inputRange","outputRange","scale","translateX","textStyles","inputStyles","styles","input","marginHorizontal","bgColor","padding","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderCol","styleProp","flatten","container","underline","scaleY","absoluteFill","e","layout","justifyContent","ref","c","onChange","editable","selectionColor","onFocus","_handleFocus","onBlur","_handleBlur","underlineColorAndroid","right","create","alignSelf","bottom","flexGrow","textAlignVertical","margin","textAlign","isRTL"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n Animated,\n TextInput as NativeTextInput,\n StyleSheet,\n Text,\n I18nManager,\n StyleProp,\n TextInputProps,\n NativeSyntheticEvent,\n TextInputChangeEventData,\n ViewStyle,\n TextStyle,\n LayoutChangeEvent,\n ImageStyle,\n} from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\nimport { applyStyles, extractStyles } from \"../utilities\";\n\nconst AnimatedText = Animated.createAnimatedComponent(Text);\n\nconst FOCUS_ANIMATION_DURATION = 150;\nconst BLUR_ANIMATION_DURATION = 180;\nconst ICON_SIZE = 24;\n\nexport type Props = {\n type?: \"solid\" | \"underline\";\n defaultValue?: string;\n disabled?: boolean;\n label?: string;\n error?: boolean;\n leftIconName?: string;\n leftIconMode?: \"inset\" | \"outset\";\n onChangeText: (\n text: string | NativeSyntheticEvent<TextInputChangeEventData>\n ) => void;\n rightIconName?: string;\n assistiveText?: string;\n multiline?: boolean;\n numberOfLines: number;\n underlineColor?: string;\n style?: StyleProp<ViewStyle> & { height?: number };\n theme: Theme;\n render?: (\n props: TextInputProps & { ref: (c: NativeTextInput) => void }\n ) => React.ReactNode;\n} & TextInputProps &\n IconSlot;\n\ninterface State {\n labeled: Animated.Value;\n focused?: boolean;\n placeholder?: string | undefined;\n labelLayout: {\n measured: boolean;\n width: number;\n };\n value?: string;\n}\n\nclass TextField extends React.Component<Props, State> {\n static getDerivedStateFromProps(nextProps: Props, prevState: State) {\n return {\n value:\n typeof nextProps.value !== \"undefined\"\n ? nextProps.value\n : prevState.value,\n };\n }\n\n state: State = {\n labeled: new Animated.Value(this.props.value || this.props.error ? 0 : 1),\n focused: false,\n placeholder: this.props.error ? this.props.placeholder : \"\",\n labelLayout: {\n measured: false,\n width: 0,\n },\n };\n\n componentDidMount() {\n if (this.props.defaultValue) {\n this._handleChangeText(this.props.defaultValue);\n }\n\n if (this.props.placeholder) {\n this._minmizeLabel();\n }\n }\n\n componentDidUpdate(prevProps: Props, prevState: State) {\n if (\n prevState.focused !== this.state.focused ||\n prevState.value !== this.state.value\n ) {\n // The label should be minimized if the text input is focused, or has text\n // In minimized mode, the label moves up and becomes small\n if (\n this.state.value ||\n this.state.focused ||\n this.props.error ||\n this.props.placeholder\n ) {\n this._minmizeLabel();\n } else {\n this._restoreLabel();\n }\n }\n\n if (\n prevState.focused !== this.state.focused ||\n prevProps.label !== this.props.label\n ) {\n // Show placeholder text only if the input is focused, or has error, or there's no label\n // We don't show placeholder if there's a label because the label acts as placeholder\n // When focused, the label moves up, so we can show a placeholder\n if (this.state.focused || this.props.error || !this.props.label) {\n this._showPlaceholder();\n } else {\n this._hidePlaceholder();\n }\n }\n }\n\n _timer = setTimeout(() => {}, 0);\n\n componentWillUnmount() {\n clearTimeout(this._timer);\n }\n\n _showPlaceholder = () => {\n clearTimeout(this._timer);\n\n // Set the placeholder in a delay to offset the label animation\n // If we show it immediately, they'll overlap and look ugly\n this._timer = setTimeout(\n () =>\n this.setState({\n placeholder: this.props.placeholder,\n }),\n 50\n );\n };\n\n _hidePlaceholder = () =>\n this.setState({\n placeholder: \"\",\n });\n\n _restoreLabel = () =>\n Animated.timing(this.state.labeled, {\n toValue: 1,\n duration: FOCUS_ANIMATION_DURATION,\n useNativeDriver: true,\n }).start();\n\n _minmizeLabel = () =>\n Animated.timing(this.state.labeled, {\n toValue: 0,\n duration: BLUR_ANIMATION_DURATION,\n useNativeDriver: true,\n }).start();\n\n _handleFocus = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ focused: true });\n };\n\n _handleBlur = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ focused: false });\n };\n\n _handleChangeText = (\n value: NativeSyntheticEvent<TextInputChangeEventData> | string\n ) => {\n if (this.props.disabled) {\n return;\n }\n\n if (typeof value === \"string\") {\n this.setState({ value });\n this.props.onChangeText && this.props.onChangeText(value);\n } else {\n this.setState({ value: value.nativeEvent.text });\n this.props.onChangeText &&\n this.props.onChangeText(value.nativeEvent.text);\n }\n };\n\n toggleFocus() {\n this.setState((prevState: State) => ({ focused: !prevState.focused }));\n }\n\n _root: NativeTextInput | undefined = undefined;\n /**\n * @internal\n */\n setNativeProps(args: Props) {\n return this._root && this._root.setNativeProps(args);\n }\n\n isFocused() {\n return this._root && this._root.isFocused();\n }\n\n clear() {\n return this._root && this._root.clear();\n }\n\n focus() {\n return this._root && this._root.focus();\n }\n\n blur() {\n return this._root && this._root.blur();\n }\n\n render() {\n const {\n Icon,\n type = \"underline\",\n disabled = false,\n label,\n error = false,\n leftIconName,\n leftIconMode,\n rightIconName,\n assistiveText,\n underlineColor: underlineColorProp,\n multiline = false,\n numberOfLines = 4,\n style,\n theme: { colors, typography, roundness, disabledOpacity },\n render = (props) => <NativeTextInput {...props} />,\n ...rest\n } = this.props;\n\n const MINIMIZED_LABEL_Y_OFFSET = -(typography.caption.lineHeight + 4);\n const OUTLINE_MINIMIZED_LABEL_Y_OFFSET = -(16 * 0.5 + 4);\n const MAXIMIZED_LABEL_FONT_SIZE = typography.subtitle1.fontSize;\n const MINIMIZED_LABEL_FONT_SIZE = typography.caption.fontSize;\n\n const hasActiveOutline = this.state.focused || error;\n\n let inputTextColor,\n activeColor,\n underlineColor,\n borderColor,\n placeholderColor,\n containerStyle: StyleProp<ViewStyle>,\n backgroundColor,\n inputStyle: StyleProp<TextStyle>;\n\n inputTextColor = colors.strong;\n if (disabled) {\n activeColor = colors.light;\n placeholderColor = colors.light;\n borderColor = \"transparent\";\n underlineColor = \"transparent\";\n backgroundColor = colors.divider;\n } else {\n activeColor = error ? colors.error : colors.primary;\n placeholderColor = borderColor = colors.light;\n underlineColor = underlineColorProp;\n backgroundColor = colors.background;\n }\n\n if (rest.placeholderTextColor) {\n placeholderColor = rest.placeholderTextColor;\n }\n\n const { lineHeight, ...subtitle1 } = typography.subtitle1;\n\n inputStyle = {\n paddingVertical: 0,\n color: inputTextColor,\n paddingLeft:\n leftIconName && leftIconMode === \"inset\"\n ? ICON_SIZE + 12 + (type === \"solid\" ? 16 : 0)\n : 0,\n paddingRight: rightIconName ? ICON_SIZE + 16 + 4 : 12,\n ...subtitle1,\n };\n\n if (!multiline) {\n inputStyle.height = lineHeight;\n }\n\n let assistiveTextLeftMargin;\n if (type === \"underline\") {\n containerStyle = {\n borderTopLeftRadius: roundness,\n borderTopRightRadius: roundness,\n paddingBottom: 12,\n marginTop: 16,\n };\n\n if (leftIconName && leftIconMode === \"outset\") {\n assistiveTextLeftMargin = ICON_SIZE + 8;\n } else {\n assistiveTextLeftMargin = 0;\n }\n } else {\n containerStyle = {\n borderRadius: roundness,\n borderColor: hasActiveOutline ? activeColor : borderColor,\n borderWidth: 1,\n paddingTop: label ? 16 * 1.5 : 16,\n paddingBottom: label ? 16 * 0.5 : 16,\n opacity: disabled ? disabledOpacity : 1,\n backgroundColor,\n };\n\n if (leftIconName && leftIconMode === \"inset\") {\n assistiveTextLeftMargin = 16 + 4;\n } else if (leftIconName && leftIconMode === \"outset\") {\n assistiveTextLeftMargin = ICON_SIZE + 8 + 12;\n } else {\n assistiveTextLeftMargin = 12;\n }\n\n inputStyle.paddingHorizontal = 12;\n }\n\n if (leftIconName && leftIconMode === \"outset\") {\n containerStyle.marginLeft = ICON_SIZE + 8;\n }\n\n let leftIconColor;\n if (error) {\n leftIconColor = colors.error;\n } else if (this.state.focused) {\n leftIconColor = colors.primary;\n } else {\n leftIconColor = colors.light;\n }\n\n const leftIconProps = {\n size: 24,\n color: leftIconColor,\n name: leftIconName || \"\",\n };\n\n const leftIconStyle: ImageStyle = {\n position: \"absolute\",\n marginTop:\n type === \"solid\"\n ? MINIMIZED_LABEL_FONT_SIZE + 4\n : leftIconMode === \"outset\"\n ? 16\n : 0,\n marginLeft: leftIconMode === \"inset\" && type === \"solid\" ? 16 : 0,\n };\n\n const labelStyle = {\n ...typography.subtitle1,\n top: type === \"solid\" ? 16 : 0,\n left:\n leftIconName && leftIconMode === \"inset\"\n ? ICON_SIZE + (type === \"solid\" ? 16 : 12)\n : 0,\n transform: [\n {\n // Move label to top\n translateY: this.state.labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n type === \"solid\"\n ? OUTLINE_MINIMIZED_LABEL_Y_OFFSET\n : MINIMIZED_LABEL_Y_OFFSET,\n 0,\n ],\n }),\n },\n {\n // Make label smaller\n scale: this.state.labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n MINIMIZED_LABEL_FONT_SIZE / MAXIMIZED_LABEL_FONT_SIZE,\n 1,\n ],\n }),\n },\n {\n // Offset label scale since RN doesn't support transform origin\n translateX: this.state.labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [\n -(1 - MINIMIZED_LABEL_FONT_SIZE / MAXIMIZED_LABEL_FONT_SIZE) *\n (this.state.labelLayout.width / 2),\n 0,\n ],\n }),\n },\n ],\n };\n\n const { textStyles } = extractStyles(style);\n const inputStyles = applyStyles(\n [\n styles.input,\n inputStyle,\n type === \"solid\" ? { marginHorizontal: 12 } : {},\n ],\n textStyles\n );\n\n const {\n backgroundColor: bgColor,\n padding,\n paddingTop,\n paddingBottom,\n paddingLeft,\n paddingRight,\n borderRadius,\n borderWidth,\n borderTopWidth,\n borderRightWidth,\n borderBottomWidth,\n borderLeftWidth,\n borderColor: borderCol,\n ...styleProp\n } = StyleSheet.flatten(style || {}) as ViewStyle & { height?: number };\n\n return (\n <View style={[styles.container, styleProp]}>\n {leftIconName && leftIconMode === \"outset\" ? (\n <Icon {...leftIconProps} style={leftIconStyle} />\n ) : null}\n <View\n style={applyStyles([containerStyle], {\n height: style?.height,\n backgroundColor: bgColor,\n padding,\n paddingTop,\n paddingBottom,\n paddingLeft,\n paddingRight,\n borderRadius,\n borderWidth,\n borderTopWidth,\n borderRightWidth,\n borderBottomWidth,\n borderLeftWidth,\n borderColor: borderCol,\n })}\n >\n {type === \"underline\" ? (\n // When type === 'flat', render an underline\n <Animated.View\n style={[\n styles.underline,\n {\n backgroundColor:\n bgColor ||\n (error\n ? colors.error\n : this.state.focused\n ? activeColor\n : underlineColor),\n // Underlines is thinner when input is not focused\n transform: [{ scaleY: this.state.focused ? 1 : 0.5 }],\n },\n ]}\n />\n ) : null}\n\n {label ? (\n // Position colored placeholder and gray placeholder on top of each other and crossfade them\n // This gives the effect of animating the color, but allows us to use native driver\n <View\n pointerEvents=\"none\"\n style={[\n StyleSheet.absoluteFill,\n {\n opacity:\n // Hide the label in minimized state until we measure its width\n this.state.value || this.state.focused\n ? this.state.labelLayout.measured\n ? 1\n : 0\n : 1,\n },\n ]}\n >\n <AnimatedText\n onLayout={(e: LayoutChangeEvent) =>\n this.setState({\n labelLayout: {\n width: e.nativeEvent.layout.width,\n measured: true,\n },\n })\n }\n style={[\n styles.placeholder,\n type === \"solid\" ? { paddingHorizontal: 12 } : {},\n labelStyle,\n {\n color: placeholderColor,\n opacity: this.state.labeled.interpolate({\n inputRange: [0, 1],\n outputRange: [hasActiveOutline ? 1 : 0, 0],\n }),\n },\n ]}\n numberOfLines={1}\n >\n {label}\n </AnimatedText>\n <AnimatedText\n style={[\n styles.placeholder,\n type === \"solid\" ? { paddingHorizontal: 12 } : {},\n labelStyle,\n {\n color: placeholderColor,\n opacity: hasActiveOutline ? this.state.labeled : 1,\n },\n ]}\n numberOfLines={1}\n >\n {label}\n </AnimatedText>\n </View>\n ) : null}\n\n {leftIconName && leftIconMode === \"inset\" ? (\n <View\n style={{\n justifyContent: type === \"solid\" ? \"center\" : undefined,\n }}\n >\n <Icon {...leftIconProps} style={leftIconStyle} />\n </View>\n ) : null}\n\n {render({\n ref: (c: NativeTextInput) => {\n this._root = c;\n },\n onChange: this._handleChangeText,\n placeholder: label\n ? this.state.placeholder\n : this.props.placeholder,\n placeholderTextColor: placeholderColor,\n editable: !disabled,\n selectionColor: activeColor,\n multiline,\n numberOfLines,\n onFocus: this._handleFocus,\n onBlur: this._handleBlur,\n underlineColorAndroid: \"transparent\",\n style: inputStyles,\n ...rest,\n value: this.state.value,\n })}\n </View>\n {rightIconName ? (\n <Icon\n name={rightIconName}\n size={ICON_SIZE}\n color={colors.light}\n style={{\n position: \"absolute\",\n right: 16,\n marginTop: type === \"solid\" ? MINIMIZED_LABEL_FONT_SIZE + 4 : 16,\n }}\n />\n ) : null}\n\n {assistiveText ? (\n <Text\n style={[\n {\n color: error ? colors.error : colors.light,\n marginTop: 8,\n marginLeft: assistiveTextLeftMargin,\n },\n ]}\n >\n {assistiveText}\n </Text>\n ) : null}\n </View>\n );\n }\n}\n\nexport default withTheme(TextField);\n\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n placeholder: {\n position: \"absolute\",\n left: 0,\n },\n underline: {\n position: \"absolute\",\n left: 0,\n right: 0,\n bottom: 0,\n height: 2,\n },\n input: {\n flexGrow: 1,\n justifyContent: \"center\",\n textAlignVertical: \"center\",\n margin: 0,\n textAlign: I18nManager.isRTL ? \"right\" : \"left\",\n },\n});\n"]}
|