@draftbit/core 42.3.3-4b2ae5.0 → 42.4.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.
@@ -51,9 +51,9 @@ const Checkbox = ({
51
51
  style,
52
52
  ...rest
53
53
  }) => {
54
- const [value, setValue] = React.useState(status || defaultValue);
54
+ const [internalValue, setInternalValue] = React.useState(status || defaultValue);
55
55
  React.useEffect(() => {
56
- setValue(status);
56
+ setInternalValue(status);
57
57
  }, [status]);
58
58
  const previousInitialValue = (0, _hooks.usePrevious)(initialValue);
59
59
  React.useEffect(() => {
@@ -77,8 +77,8 @@ const Checkbox = ({
77
77
  const checkboxColor = colorsMap[status];
78
78
 
79
79
  const handlePress = () => {
80
- setValue(value === CheckboxStatus.Unchecked ? CheckboxStatus.Checked : CheckboxStatus.Unchecked);
81
- onPress(value === CheckboxStatus.Unchecked ? true : false);
80
+ setInternalValue(internalValue === CheckboxStatus.Unchecked ? CheckboxStatus.Checked : CheckboxStatus.Unchecked);
81
+ onPress(internalValue === CheckboxStatus.Unchecked);
82
82
  };
83
83
 
84
84
  return /*#__PURE__*/React.createElement(_Touchable.default, _extends({}, rest, {
@@ -95,7 +95,7 @@ const Checkbox = ({
95
95
  }]
96
96
  }), /*#__PURE__*/React.createElement(Icon, {
97
97
  style: styles.icon,
98
- name: iconsMap[value],
98
+ name: iconsMap[internalValue],
99
99
  size: size,
100
100
  color: checkboxColor
101
101
  }), /*#__PURE__*/React.createElement(_reactNative.View, {
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.tsx"],"names":["CheckboxStatus","Checkbox","Icon","status","Unchecked","disabled","onPress","color","uncheckedColor","indeterminateColor","initialValue","defaultValue","checkedIcon","uncheckedIcon","indeterminateIcon","size","style","rest","value","setValue","React","useState","useEffect","previousInitialValue","colors","colorsMap","Checked","primary","Indeterminate","light","iconsMap","checkboxColor","handlePress","styles","container","width","height","icon","StyleSheet","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","triggers","Triggers","OnPress","props","fieldName","valuePropName","handlerPropName","group","GROUPS","basic","label","description"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport enum CheckboxStatus {\n Checked = \"checked\",\n Unchecked = \"unchecked\",\n Indeterminate = \"indeterminate\",\n}\n\nexport interface CheckboxProps {\n status?: CheckboxStatus;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n indeterminateColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n indeterminateIcon?: string;\n initialValue?: boolean; // deprecated\n defaultValue?: CheckboxStatus;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status = CheckboxStatus.Unchecked,\n disabled = false,\n onPress = () => {},\n color,\n uncheckedColor,\n indeterminateColor,\n initialValue,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n indeterminateIcon = \"AntDesign/minussquareo\",\n size = 24,\n style,\n ...rest\n }) => {\n const [value, setValue] = React.useState<CheckboxStatus>(\n status || defaultValue\n );\n\n React.useEffect(() => {\n setValue(status);\n }, [status]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onPress(initialValue);\n }\n }, [initialValue, previousInitialValue, onPress]);\n const { colors } = useTheme();\n\n const colorsMap = {\n [CheckboxStatus.Checked]: color || colors.primary,\n [CheckboxStatus.Unchecked]: uncheckedColor || colors.primary,\n [CheckboxStatus.Indeterminate]: indeterminateColor || colors.light,\n };\n\n const iconsMap = {\n [CheckboxStatus.Checked]: checkedIcon,\n [CheckboxStatus.Unchecked]: uncheckedIcon,\n [CheckboxStatus.Indeterminate]: indeterminateIcon,\n };\n\n const checkboxColor = colorsMap[status];\n\n const handlePress = () => {\n setValue(\n value === CheckboxStatus.Unchecked\n ? CheckboxStatus.Checked\n : CheckboxStatus.Unchecked\n );\n onPress(value === CheckboxStatus.Unchecked ? true : false);\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={iconsMap[value]}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n\nexport const SEED_DATA = {\n name: \"Checkbox\",\n tag: \"Checkbox\",\n category: COMPONENT_TYPES.input,\n triggers: [Triggers.OnPress],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"checkboxValue\",\n valuePropName: \"status\",\n handlerPropName: \"onPress\",\n }),\n color: createColorProp({\n group: GROUPS.basic,\n label: \"Color\",\n description: \"Color for the button (used when the checkbox is checked)\",\n defaultValue: null,\n }),\n uncheckedColor: createColorProp({\n group: GROUPS.basic,\n label: \"Unselected Color\",\n description: \"Color for the button when the checkbox is unchecked\",\n defaultValue: null,\n }),\n indeterminateColor: createColorProp({\n group: GROUPS.basic,\n label: \"Indeterminate Color\",\n description: \"Color for the button when the checkbox is indeterminate\",\n defaultValue: null,\n }),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Whether the checkbox is disabled\",\n }),\n size: createStaticNumberProp({\n label: \"Size\",\n description: \"Specifies the size of the icon\",\n defaultValue: null,\n }),\n checkedIcon: createIconProp({\n label: \"Checked Icon\",\n description: 'Icon to show when the checkbox status is \"checked\"',\n defaultValue: null,\n }),\n uncheckedIcon: createIconProp({\n label: \"Unchecked Icon\",\n description: 'Icon to show when the checkbox status is \"unchecked\"',\n defaultValue: null,\n }),\n indeterminateIcon: createIconProp({\n label: \"Indeterminate Icon\",\n description: 'Icon to show when the checkbox status is \"indeterminate\"',\n defaultValue: null,\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["Checkbox.tsx"],"names":["CheckboxStatus","Checkbox","Icon","status","Unchecked","disabled","onPress","color","uncheckedColor","indeterminateColor","initialValue","defaultValue","checkedIcon","uncheckedIcon","indeterminateIcon","size","style","rest","internalValue","setInternalValue","React","useState","useEffect","previousInitialValue","colors","colorsMap","Checked","primary","Indeterminate","light","iconsMap","checkboxColor","handlePress","styles","container","width","height","icon","StyleSheet","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","triggers","Triggers","OnPress","props","fieldName","valuePropName","handlerPropName","group","GROUPS","basic","label","description"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport enum CheckboxStatus {\n Checked = \"checked\",\n Unchecked = \"unchecked\",\n Indeterminate = \"indeterminate\",\n}\n\nexport interface CheckboxProps {\n status?: CheckboxStatus;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n indeterminateColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n indeterminateIcon?: string;\n initialValue?: boolean; // deprecated\n defaultValue?: CheckboxStatus;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status = CheckboxStatus.Unchecked,\n disabled = false,\n onPress = () => {},\n color,\n uncheckedColor,\n indeterminateColor,\n initialValue,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n indeterminateIcon = \"AntDesign/minussquareo\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<CheckboxStatus>(\n status || defaultValue\n );\n\n React.useEffect(() => {\n setInternalValue(status);\n }, [status]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onPress(initialValue);\n }\n }, [initialValue, previousInitialValue, onPress]);\n const { colors } = useTheme();\n\n const colorsMap = {\n [CheckboxStatus.Checked]: color || colors.primary,\n [CheckboxStatus.Unchecked]: uncheckedColor || colors.primary,\n [CheckboxStatus.Indeterminate]: indeterminateColor || colors.light,\n };\n\n const iconsMap = {\n [CheckboxStatus.Checked]: checkedIcon,\n [CheckboxStatus.Unchecked]: uncheckedIcon,\n [CheckboxStatus.Indeterminate]: indeterminateIcon,\n };\n\n const checkboxColor = colorsMap[status];\n\n const handlePress = () => {\n setInternalValue(\n internalValue === CheckboxStatus.Unchecked\n ? CheckboxStatus.Checked\n : CheckboxStatus.Unchecked\n );\n onPress(internalValue === CheckboxStatus.Unchecked);\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={iconsMap[internalValue]}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n\nexport const SEED_DATA = {\n name: \"Checkbox\",\n tag: \"Checkbox\",\n category: COMPONENT_TYPES.input,\n triggers: [Triggers.OnPress],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"checkboxValue\",\n valuePropName: \"status\",\n handlerPropName: \"onPress\",\n }),\n color: createColorProp({\n group: GROUPS.basic,\n label: \"Color\",\n description: \"Color for the button (used when the checkbox is checked)\",\n defaultValue: null,\n }),\n uncheckedColor: createColorProp({\n group: GROUPS.basic,\n label: \"Unselected Color\",\n description: \"Color for the button when the checkbox is unchecked\",\n defaultValue: null,\n }),\n indeterminateColor: createColorProp({\n group: GROUPS.basic,\n label: \"Indeterminate Color\",\n description: \"Color for the button when the checkbox is indeterminate\",\n defaultValue: null,\n }),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Whether the checkbox is disabled\",\n }),\n size: createStaticNumberProp({\n label: \"Size\",\n description: \"Specifies the size of the icon\",\n defaultValue: null,\n }),\n checkedIcon: createIconProp({\n label: \"Checked Icon\",\n description: 'Icon to show when the checkbox status is \"checked\"',\n defaultValue: null,\n }),\n uncheckedIcon: createIconProp({\n label: \"Unchecked Icon\",\n description: 'Icon to show when the checkbox status is \"unchecked\"',\n defaultValue: null,\n }),\n indeterminateIcon: createIconProp({\n label: \"Indeterminate Icon\",\n description: 'Icon to show when the checkbox status is \"indeterminate\"',\n defaultValue: null,\n }),\n },\n};\n"]}
@@ -31,9 +31,9 @@ const Checkbox = ({
31
31
  style,
32
32
  ...rest
33
33
  }) => {
34
- const [value, setValue] = React.useState(status || defaultValue);
34
+ const [internalValue, setInternalValue] = React.useState(status || defaultValue);
35
35
  React.useEffect(() => {
36
- setValue(status);
36
+ setInternalValue(status);
37
37
  }, [status]);
38
38
  const previousInitialValue = usePrevious(initialValue);
39
39
  React.useEffect(() => {
@@ -57,8 +57,8 @@ const Checkbox = ({
57
57
  const checkboxColor = colorsMap[status];
58
58
 
59
59
  const handlePress = () => {
60
- setValue(value === CheckboxStatus.Unchecked ? CheckboxStatus.Checked : CheckboxStatus.Unchecked);
61
- onPress(value === CheckboxStatus.Unchecked ? true : false);
60
+ setInternalValue(internalValue === CheckboxStatus.Unchecked ? CheckboxStatus.Checked : CheckboxStatus.Unchecked);
61
+ onPress(internalValue === CheckboxStatus.Unchecked);
62
62
  };
63
63
 
64
64
  return /*#__PURE__*/React.createElement(Touchable, _extends({}, rest, {
@@ -75,7 +75,7 @@ const Checkbox = ({
75
75
  }]
76
76
  }), /*#__PURE__*/React.createElement(Icon, {
77
77
  style: styles.icon,
78
- name: iconsMap[value],
78
+ name: iconsMap[internalValue],
79
79
  size: size,
80
80
  color: checkboxColor
81
81
  }), /*#__PURE__*/React.createElement(View, {
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.tsx"],"names":["React","View","StyleSheet","COMPONENT_TYPES","createBoolProp","createIconProp","createStaticNumberProp","createColorProp","createFieldNameProp","GROUPS","Triggers","useTheme","Touchable","usePrevious","CheckboxStatus","Checkbox","Icon","status","Unchecked","disabled","onPress","color","uncheckedColor","indeterminateColor","initialValue","defaultValue","checkedIcon","uncheckedIcon","indeterminateIcon","size","style","rest","value","setValue","useState","useEffect","previousInitialValue","colors","colorsMap","Checked","primary","Indeterminate","light","iconsMap","checkboxColor","handlePress","styles","container","width","height","icon","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf","SEED_DATA","name","tag","category","input","triggers","OnPress","props","fieldName","valuePropName","handlerPropName","group","basic","label","description"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport enum CheckboxStatus {\n Checked = \"checked\",\n Unchecked = \"unchecked\",\n Indeterminate = \"indeterminate\",\n}\n\nexport interface CheckboxProps {\n status?: CheckboxStatus;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n indeterminateColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n indeterminateIcon?: string;\n initialValue?: boolean; // deprecated\n defaultValue?: CheckboxStatus;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status = CheckboxStatus.Unchecked,\n disabled = false,\n onPress = () => {},\n color,\n uncheckedColor,\n indeterminateColor,\n initialValue,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n indeterminateIcon = \"AntDesign/minussquareo\",\n size = 24,\n style,\n ...rest\n }) => {\n const [value, setValue] = React.useState<CheckboxStatus>(\n status || defaultValue\n );\n\n React.useEffect(() => {\n setValue(status);\n }, [status]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onPress(initialValue);\n }\n }, [initialValue, previousInitialValue, onPress]);\n const { colors } = useTheme();\n\n const colorsMap = {\n [CheckboxStatus.Checked]: color || colors.primary,\n [CheckboxStatus.Unchecked]: uncheckedColor || colors.primary,\n [CheckboxStatus.Indeterminate]: indeterminateColor || colors.light,\n };\n\n const iconsMap = {\n [CheckboxStatus.Checked]: checkedIcon,\n [CheckboxStatus.Unchecked]: uncheckedIcon,\n [CheckboxStatus.Indeterminate]: indeterminateIcon,\n };\n\n const checkboxColor = colorsMap[status];\n\n const handlePress = () => {\n setValue(\n value === CheckboxStatus.Unchecked\n ? CheckboxStatus.Checked\n : CheckboxStatus.Unchecked\n );\n onPress(value === CheckboxStatus.Unchecked ? true : false);\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={iconsMap[value]}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n\nexport const SEED_DATA = {\n name: \"Checkbox\",\n tag: \"Checkbox\",\n category: COMPONENT_TYPES.input,\n triggers: [Triggers.OnPress],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"checkboxValue\",\n valuePropName: \"status\",\n handlerPropName: \"onPress\",\n }),\n color: createColorProp({\n group: GROUPS.basic,\n label: \"Color\",\n description: \"Color for the button (used when the checkbox is checked)\",\n defaultValue: null,\n }),\n uncheckedColor: createColorProp({\n group: GROUPS.basic,\n label: \"Unselected Color\",\n description: \"Color for the button when the checkbox is unchecked\",\n defaultValue: null,\n }),\n indeterminateColor: createColorProp({\n group: GROUPS.basic,\n label: \"Indeterminate Color\",\n description: \"Color for the button when the checkbox is indeterminate\",\n defaultValue: null,\n }),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Whether the checkbox is disabled\",\n }),\n size: createStaticNumberProp({\n label: \"Size\",\n description: \"Specifies the size of the icon\",\n defaultValue: null,\n }),\n checkedIcon: createIconProp({\n label: \"Checked Icon\",\n description: 'Icon to show when the checkbox status is \"checked\"',\n defaultValue: null,\n }),\n uncheckedIcon: createIconProp({\n label: \"Unchecked Icon\",\n description: 'Icon to show when the checkbox status is \"unchecked\"',\n defaultValue: null,\n }),\n indeterminateIcon: createIconProp({\n label: \"Indeterminate Icon\",\n description: 'Icon to show when the checkbox status is \"indeterminate\"',\n defaultValue: null,\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["Checkbox.tsx"],"names":["React","View","StyleSheet","COMPONENT_TYPES","createBoolProp","createIconProp","createStaticNumberProp","createColorProp","createFieldNameProp","GROUPS","Triggers","useTheme","Touchable","usePrevious","CheckboxStatus","Checkbox","Icon","status","Unchecked","disabled","onPress","color","uncheckedColor","indeterminateColor","initialValue","defaultValue","checkedIcon","uncheckedIcon","indeterminateIcon","size","style","rest","internalValue","setInternalValue","useState","useEffect","previousInitialValue","colors","colorsMap","Checked","primary","Indeterminate","light","iconsMap","checkboxColor","handlePress","styles","container","width","height","icon","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf","SEED_DATA","name","tag","category","input","triggers","OnPress","props","fieldName","valuePropName","handlerPropName","group","basic","label","description"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport enum CheckboxStatus {\n Checked = \"checked\",\n Unchecked = \"unchecked\",\n Indeterminate = \"indeterminate\",\n}\n\nexport interface CheckboxProps {\n status?: CheckboxStatus;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n indeterminateColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n indeterminateIcon?: string;\n initialValue?: boolean; // deprecated\n defaultValue?: CheckboxStatus;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status = CheckboxStatus.Unchecked,\n disabled = false,\n onPress = () => {},\n color,\n uncheckedColor,\n indeterminateColor,\n initialValue,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n indeterminateIcon = \"AntDesign/minussquareo\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<CheckboxStatus>(\n status || defaultValue\n );\n\n React.useEffect(() => {\n setInternalValue(status);\n }, [status]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onPress(initialValue);\n }\n }, [initialValue, previousInitialValue, onPress]);\n const { colors } = useTheme();\n\n const colorsMap = {\n [CheckboxStatus.Checked]: color || colors.primary,\n [CheckboxStatus.Unchecked]: uncheckedColor || colors.primary,\n [CheckboxStatus.Indeterminate]: indeterminateColor || colors.light,\n };\n\n const iconsMap = {\n [CheckboxStatus.Checked]: checkedIcon,\n [CheckboxStatus.Unchecked]: uncheckedIcon,\n [CheckboxStatus.Indeterminate]: indeterminateIcon,\n };\n\n const checkboxColor = colorsMap[status];\n\n const handlePress = () => {\n setInternalValue(\n internalValue === CheckboxStatus.Unchecked\n ? CheckboxStatus.Checked\n : CheckboxStatus.Unchecked\n );\n onPress(internalValue === CheckboxStatus.Unchecked);\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={iconsMap[internalValue]}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n\nexport const SEED_DATA = {\n name: \"Checkbox\",\n tag: \"Checkbox\",\n category: COMPONENT_TYPES.input,\n triggers: [Triggers.OnPress],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"checkboxValue\",\n valuePropName: \"status\",\n handlerPropName: \"onPress\",\n }),\n color: createColorProp({\n group: GROUPS.basic,\n label: \"Color\",\n description: \"Color for the button (used when the checkbox is checked)\",\n defaultValue: null,\n }),\n uncheckedColor: createColorProp({\n group: GROUPS.basic,\n label: \"Unselected Color\",\n description: \"Color for the button when the checkbox is unchecked\",\n defaultValue: null,\n }),\n indeterminateColor: createColorProp({\n group: GROUPS.basic,\n label: \"Indeterminate Color\",\n description: \"Color for the button when the checkbox is indeterminate\",\n defaultValue: null,\n }),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Whether the checkbox is disabled\",\n }),\n size: createStaticNumberProp({\n label: \"Size\",\n description: \"Specifies the size of the icon\",\n defaultValue: null,\n }),\n checkedIcon: createIconProp({\n label: \"Checked Icon\",\n description: 'Icon to show when the checkbox status is \"checked\"',\n defaultValue: null,\n }),\n uncheckedIcon: createIconProp({\n label: \"Unchecked Icon\",\n description: 'Icon to show when the checkbox status is \"unchecked\"',\n defaultValue: null,\n }),\n indeterminateIcon: createIconProp({\n label: \"Indeterminate Icon\",\n description: 'Icon to show when the checkbox status is \"indeterminate\"',\n defaultValue: null,\n }),\n },\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["Swiper.js"],"names":["COMPONENT_TYPES","createBoolProp","createNumberProp","createTextProp","GROUPS","React","View","SwiperComponent","Swiper","vertical","loop","timeout","from","prevTitle","nextTitle","dotsTouchable","children","style","createElement","controlsProps","SEED_DATA","name","tag","description","category","container","layout","height","width","props","group","basic","label","defaultValue"],"mappings":"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","sourcesContent":["import { COMPONENT_TYPES, createBoolProp, createNumberProp, createTextProp, GROUPS, } from \"@draftbit/types\";\nimport React from \"react\";\nimport { View } from \"react-native\";\nimport SwiperComponent from \"react-native-web-swiper\";\nconst Swiper = ({ vertical = false, loop = false, timeout = 0, from = 0, prevTitle = \"\", nextTitle = \"\", dotsTouchable = true, children, style, }) => (React.createElement(View, { style: style },\n React.createElement(SwiperComponent, { from: from, loop: loop, timeout: timeout, vertical: vertical, controlsProps: {\n prevTitle,\n nextTitle,\n dotsTouchable,\n } }, children)));\nexport default Swiper;\nexport const SEED_DATA = {\n name: \"Swiper\",\n tag: \"Swiper\",\n description: \"Swiper container\",\n category: COMPONENT_TYPES.container,\n layout: {\n height: 300,\n width: \"100%\",\n },\n props: {\n from: createNumberProp({\n group: GROUPS.basic,\n label: \"Initial Slide\",\n }),\n loop: createBoolProp({\n group: GROUPS.basic,\n label: \"Loop\",\n }),\n timeout: createNumberProp({\n group: GROUPS.basic,\n label: \"Timeout\",\n defaultValue: 0,\n }),\n vertical: createBoolProp({\n group: GROUPS.basic,\n label: \"Vertical\",\n defaultValue: false,\n }),\n prevTitle: createTextProp({\n group: GROUPS.basic,\n label: \"Previous Title\",\n defaultValue: \"\",\n }),\n nextTitle: createTextProp({\n group: GROUPS.basic,\n label: \"Next Title\",\n defaultValue: \"\",\n }),\n dotsTouchable: createBoolProp({\n group: GROUPS.basic,\n label: \"Dots Touchable\",\n defaultValue: true,\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["Swiper.tsx"],"names":["COMPONENT_TYPES","createBoolProp","createNumberProp","createTextProp","GROUPS","React","View","SwiperComponent","Swiper","vertical","loop","timeout","from","prevTitle","nextTitle","dotsTouchable","children","style","SEED_DATA","name","tag","description","category","container","layout","height","width","props","group","basic","label","defaultValue"],"mappings":"AAAA,SACEA,eADF,EAEEC,cAFF,EAGEC,gBAHF,EAIEC,cAJF,EAKEC,MALF,QAMO,iBANP;AAOA,OAAOC,KAAP,MAAkB,OAAlB;AACA,SAASC,IAAT,QAA2C,cAA3C;AACA,OAAOC,eAAP,MAA4B,yBAA5B;;AAcA,MAAMC,MAAM,GAAG,CAAC;AACdC,EAAAA,QAAQ,GAAG,KADG;AAEdC,EAAAA,IAAI,GAAG,KAFO;AAGdC,EAAAA,OAAO,GAAG,CAHI;AAIdC,EAAAA,IAAI,GAAG,CAJO;AAKdC,EAAAA,SAAS,GAAG,EALE;AAMdC,EAAAA,SAAS,GAAG,EANE;AAOdC,EAAAA,aAAa,GAAG,IAPF;AAQdC,EAAAA,QARc;AASdC,EAAAA;AATc,CAAD,kBAWb,oBAAC,IAAD;AAAM,EAAA,KAAK,EAAEA;AAAb,gBACE,oBAAC,eAAD;AACE,EAAA,IAAI,EAAEL,IADR;AAEE,EAAA,IAAI,EAAEF,IAFR;AAGE,EAAA,OAAO,EAAEC,OAHX;AAIE,EAAA,QAAQ,EAAEF,QAJZ;AAKE,EAAA,aAAa,EAAE;AACbI,IAAAA,SADa;AAEbC,IAAAA,SAFa;AAGbC,IAAAA;AAHa;AALjB,GAWGC,QAXH,CADF,CAXF;;AA4BA,eAAeR,MAAf;AAEA,OAAO,MAAMU,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,QADiB;AAEvBC,EAAAA,GAAG,EAAE,QAFkB;AAGvBC,EAAAA,WAAW,EAAE,kBAHU;AAIvBC,EAAAA,QAAQ,EAAEtB,eAAe,CAACuB,SAJH;AAKvBC,EAAAA,MAAM,EAAE;AACNC,IAAAA,MAAM,EAAE,GADF;AAENC,IAAAA,KAAK,EAAE;AAFD,GALe;AASvBC,EAAAA,KAAK,EAAE;AACLf,IAAAA,IAAI,EAAEV,gBAAgB,CAAC;AACrB0B,MAAAA,KAAK,EAAExB,MAAM,CAACyB,KADO;AAErBC,MAAAA,KAAK,EAAE;AAFc,KAAD,CADjB;AAKLpB,IAAAA,IAAI,EAAET,cAAc,CAAC;AACnB2B,MAAAA,KAAK,EAAExB,MAAM,CAACyB,KADK;AAEnBC,MAAAA,KAAK,EAAE;AAFY,KAAD,CALf;AASLnB,IAAAA,OAAO,EAAET,gBAAgB,CAAC;AACxB0B,MAAAA,KAAK,EAAExB,MAAM,CAACyB,KADU;AAExBC,MAAAA,KAAK,EAAE,SAFiB;AAGxBC,MAAAA,YAAY,EAAE;AAHU,KAAD,CATpB;AAcLtB,IAAAA,QAAQ,EAAER,cAAc,CAAC;AACvB2B,MAAAA,KAAK,EAAExB,MAAM,CAACyB,KADS;AAEvBC,MAAAA,KAAK,EAAE,UAFgB;AAGvBC,MAAAA,YAAY,EAAE;AAHS,KAAD,CAdnB;AAmBLlB,IAAAA,SAAS,EAAEV,cAAc,CAAC;AACxByB,MAAAA,KAAK,EAAExB,MAAM,CAACyB,KADU;AAExBC,MAAAA,KAAK,EAAE,gBAFiB;AAGxBC,MAAAA,YAAY,EAAE;AAHU,KAAD,CAnBpB;AAwBLjB,IAAAA,SAAS,EAAEX,cAAc,CAAC;AACxByB,MAAAA,KAAK,EAAExB,MAAM,CAACyB,KADU;AAExBC,MAAAA,KAAK,EAAE,YAFiB;AAGxBC,MAAAA,YAAY,EAAE;AAHU,KAAD,CAxBpB;AA6BLhB,IAAAA,aAAa,EAAEd,cAAc,CAAC;AAC5B2B,MAAAA,KAAK,EAAExB,MAAM,CAACyB,KADc;AAE5BC,MAAAA,KAAK,EAAE,gBAFqB;AAG5BC,MAAAA,YAAY,EAAE;AAHc,KAAD;AA7BxB;AATgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createBoolProp,\n createNumberProp,\n createTextProp,\n GROUPS,\n} from \"@draftbit/types\";\nimport React from \"react\";\nimport { View, StyleProp, ViewStyle } from \"react-native\";\nimport SwiperComponent from \"react-native-web-swiper\";\n\nexport interface SwiperProps {\n vertical?: boolean;\n loop?: boolean;\n from?: number;\n timeout?: number;\n prevTitle?: string;\n nextTitle?: string;\n dotsTouchable?: boolean;\n children: React.ReactNode;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Swiper = ({\n vertical = false,\n loop = false,\n timeout = 0,\n from = 0,\n prevTitle = \"\",\n nextTitle = \"\",\n dotsTouchable = true,\n children,\n style,\n}: SwiperProps) => (\n <View style={style}>\n <SwiperComponent\n from={from}\n loop={loop}\n timeout={timeout}\n vertical={vertical}\n controlsProps={{\n prevTitle,\n nextTitle,\n dotsTouchable,\n }}\n >\n {children}\n </SwiperComponent>\n </View>\n);\n\nexport default Swiper;\n\nexport const SEED_DATA = {\n name: \"Swiper\",\n tag: \"Swiper\",\n description: \"Swiper container\",\n category: COMPONENT_TYPES.container,\n layout: {\n height: 300,\n width: \"100%\",\n },\n props: {\n from: createNumberProp({\n group: GROUPS.basic,\n label: \"Initial Slide\",\n }),\n loop: createBoolProp({\n group: GROUPS.basic,\n label: \"Loop\",\n }),\n timeout: createNumberProp({\n group: GROUPS.basic,\n label: \"Timeout\",\n defaultValue: 0,\n }),\n vertical: createBoolProp({\n group: GROUPS.basic,\n label: \"Vertical\",\n defaultValue: false,\n }),\n prevTitle: createTextProp({\n group: GROUPS.basic,\n label: \"Previous Title\",\n defaultValue: \"\",\n }),\n nextTitle: createTextProp({\n group: GROUPS.basic,\n label: \"Next Title\",\n defaultValue: \"\",\n }),\n dotsTouchable: createBoolProp({\n group: GROUPS.basic,\n label: \"Dots Touchable\",\n defaultValue: true,\n }),\n },\n};\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@draftbit/core",
3
- "version": "42.3.3-4b2ae5.0+4b2ae53e",
3
+ "version": "42.4.0",
4
4
  "description": "Core (non-native) Components",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -95,5 +95,5 @@
95
95
  ]
96
96
  ]
97
97
  },
98
- "gitHead": "4b2ae53e1ad9080375e6a0f641e131c5cfc94303"
98
+ "gitHead": "d011caaeccc55707cfa48c4264240a9a05b2c67a"
99
99
  }
@@ -11,9 +11,9 @@ export var CheckboxStatus;
11
11
  CheckboxStatus["Indeterminate"] = "indeterminate";
12
12
  })(CheckboxStatus || (CheckboxStatus = {}));
13
13
  const Checkbox = ({ Icon, status = CheckboxStatus.Unchecked, disabled = false, onPress = () => { }, color, uncheckedColor, indeterminateColor, initialValue, defaultValue, checkedIcon = "MaterialCommunityIcons/checkbox-marked", uncheckedIcon = "MaterialCommunityIcons/checkbox-blank-outline", indeterminateIcon = "AntDesign/minussquareo", size = 24, style, ...rest }) => {
14
- const [value, setValue] = React.useState(status || defaultValue);
14
+ const [internalValue, setInternalValue] = React.useState(status || defaultValue);
15
15
  React.useEffect(() => {
16
- setValue(status);
16
+ setInternalValue(status);
17
17
  }, [status]);
18
18
  const previousInitialValue = usePrevious(initialValue);
19
19
  React.useEffect(() => {
@@ -34,13 +34,13 @@ const Checkbox = ({ Icon, status = CheckboxStatus.Unchecked, disabled = false, o
34
34
  };
35
35
  const checkboxColor = colorsMap[status];
36
36
  const handlePress = () => {
37
- setValue(value === CheckboxStatus.Unchecked
37
+ setInternalValue(internalValue === CheckboxStatus.Unchecked
38
38
  ? CheckboxStatus.Checked
39
39
  : CheckboxStatus.Unchecked);
40
- onPress(value === CheckboxStatus.Unchecked ? true : false);
40
+ onPress(internalValue === CheckboxStatus.Unchecked);
41
41
  };
42
42
  return (React.createElement(Touchable, { ...rest, onPress: handlePress, disabled: disabled, accessibilityState: { disabled }, accessibilityRole: "button", accessibilityLiveRegion: "polite", style: [styles.container, style, { width: size, height: size }] },
43
- React.createElement(Icon, { style: styles.icon, name: iconsMap[value], size: size, color: checkboxColor }),
43
+ React.createElement(Icon, { style: styles.icon, name: iconsMap[internalValue], size: size, color: checkboxColor }),
44
44
  React.createElement(View, { style: [StyleSheet.absoluteFill, styles.fillContainer] },
45
45
  React.createElement(View, { style: [
46
46
  styles.fill,
@@ -62,12 +62,12 @@ const Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =
62
62
  style,
63
63
  ...rest
64
64
  }) => {
65
- const [value, setValue] = React.useState<CheckboxStatus>(
65
+ const [internalValue, setInternalValue] = React.useState<CheckboxStatus>(
66
66
  status || defaultValue
67
67
  );
68
68
 
69
69
  React.useEffect(() => {
70
- setValue(status);
70
+ setInternalValue(status);
71
71
  }, [status]);
72
72
 
73
73
  const previousInitialValue = usePrevious(initialValue);
@@ -93,12 +93,12 @@ const Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =
93
93
  const checkboxColor = colorsMap[status];
94
94
 
95
95
  const handlePress = () => {
96
- setValue(
97
- value === CheckboxStatus.Unchecked
96
+ setInternalValue(
97
+ internalValue === CheckboxStatus.Unchecked
98
98
  ? CheckboxStatus.Checked
99
99
  : CheckboxStatus.Unchecked
100
100
  );
101
- onPress(value === CheckboxStatus.Unchecked ? true : false);
101
+ onPress(internalValue === CheckboxStatus.Unchecked);
102
102
  };
103
103
 
104
104
  return (
@@ -113,7 +113,7 @@ const Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =
113
113
  >
114
114
  <Icon
115
115
  style={styles.icon}
116
- name={iconsMap[value]}
116
+ name={iconsMap[internalValue]}
117
117
  size={size}
118
118
  color={checkboxColor}
119
119
  />