@draftbit/core 42.4.6-75ef33.0 → 42.4.6-7e6a42.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.
Files changed (32) hide show
  1. package/lib/commonjs/components/Checkbox/Checkbox.js +6 -27
  2. package/lib/commonjs/components/Checkbox/Checkbox.js.map +1 -1
  3. package/lib/commonjs/components/Checkbox/CheckboxRow.js +7 -13
  4. package/lib/commonjs/components/Checkbox/CheckboxRow.js.map +1 -1
  5. package/lib/commonjs/components/Switch.js +2 -1
  6. package/lib/commonjs/components/Switch.js.map +1 -1
  7. package/lib/commonjs/mappings/Checkbox.js +0 -11
  8. package/lib/commonjs/mappings/Checkbox.js.map +1 -1
  9. package/lib/commonjs/mappings/TextInput.js +1 -4
  10. package/lib/commonjs/mappings/TextInput.js.map +1 -1
  11. package/lib/module/components/Checkbox/Checkbox.js +5 -24
  12. package/lib/module/components/Checkbox/Checkbox.js.map +1 -1
  13. package/lib/module/components/Checkbox/CheckboxRow.js +7 -13
  14. package/lib/module/components/Checkbox/CheckboxRow.js.map +1 -1
  15. package/lib/module/components/Switch.js +2 -1
  16. package/lib/module/components/Switch.js.map +1 -1
  17. package/lib/module/mappings/Checkbox.js +0 -11
  18. package/lib/module/mappings/Checkbox.js.map +1 -1
  19. package/lib/module/mappings/TextInput.js +1 -4
  20. package/lib/module/mappings/TextInput.js.map +1 -1
  21. package/lib/typescript/src/components/Checkbox/Checkbox.d.ts +2 -9
  22. package/lib/typescript/src/components/Checkbox/CheckboxRow.d.ts +1 -12
  23. package/lib/typescript/src/components/Switch.d.ts +1 -1
  24. package/package.json +2 -2
  25. package/src/components/Checkbox/Checkbox.js +8 -24
  26. package/src/components/Checkbox/Checkbox.tsx +10 -34
  27. package/src/components/Checkbox/CheckboxRow.js +7 -13
  28. package/src/components/Checkbox/CheckboxRow.tsx +8 -19
  29. package/src/components/Switch.js +2 -2
  30. package/src/components/Switch.tsx +2 -1
  31. package/src/mappings/Checkbox.js +0 -11
  32. package/src/mappings/TextInput.js +0 -4
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = exports.CheckboxStatus = void 0;
6
+ exports.default = void 0;
7
7
 
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
 
@@ -23,15 +23,6 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
23
23
 
24
24
  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); }
25
25
 
26
- let CheckboxStatus;
27
- exports.CheckboxStatus = CheckboxStatus;
28
-
29
- (function (CheckboxStatus) {
30
- CheckboxStatus["Checked"] = "checked";
31
- CheckboxStatus["Unchecked"] = "unchecked";
32
- CheckboxStatus["Indeterminate"] = "indeterminate";
33
- })(CheckboxStatus || (exports.CheckboxStatus = CheckboxStatus = {}));
34
-
35
26
  const Checkbox = ({
36
27
  Icon,
37
28
  status,
@@ -39,17 +30,15 @@ const Checkbox = ({
39
30
  onPress = () => {},
40
31
  color,
41
32
  uncheckedColor,
42
- indeterminateColor,
43
33
  initialValue,
44
34
  defaultValue,
45
35
  checkedIcon = "MaterialCommunityIcons/checkbox-marked",
46
36
  uncheckedIcon = "MaterialCommunityIcons/checkbox-blank-outline",
47
- indeterminateIcon = "AntDesign/minussquareo",
48
37
  size = 24,
49
38
  style,
50
39
  ...rest
51
40
  }) => {
52
- const [internalValue, setInternalValue] = React.useState(status || defaultValue || CheckboxStatus.Unchecked);
41
+ const [internalValue, setInternalValue] = React.useState(status || defaultValue || false);
53
42
  React.useEffect(() => {
54
43
  if (status != null) {
55
44
  setInternalValue(status);
@@ -69,21 +58,11 @@ const Checkbox = ({
69
58
  const {
70
59
  colors
71
60
  } = (0, _theming.useTheme)();
72
- const colorsMap = {
73
- [CheckboxStatus.Checked]: color || colors.primary,
74
- [CheckboxStatus.Unchecked]: uncheckedColor || colors.primary,
75
- [CheckboxStatus.Indeterminate]: indeterminateColor || colors.light
76
- };
77
- const iconsMap = {
78
- [CheckboxStatus.Checked]: checkedIcon,
79
- [CheckboxStatus.Unchecked]: uncheckedIcon,
80
- [CheckboxStatus.Indeterminate]: indeterminateIcon
81
- };
82
- const checkboxColor = colorsMap[internalValue];
61
+ const checkboxColor = internalValue ? color || colors.primary : uncheckedColor || colors.primary;
83
62
 
84
63
  const handlePress = () => {
85
- setInternalValue(internalValue === CheckboxStatus.Unchecked ? CheckboxStatus.Checked : CheckboxStatus.Unchecked);
86
- onPress(internalValue === CheckboxStatus.Unchecked);
64
+ setInternalValue(!internalValue);
65
+ onPress(!internalValue);
87
66
  };
88
67
 
89
68
  return /*#__PURE__*/React.createElement(_Touchable.default, _extends({}, rest, {
@@ -100,7 +79,7 @@ const Checkbox = ({
100
79
  }]
101
80
  }), /*#__PURE__*/React.createElement(Icon, {
102
81
  style: styles.icon,
103
- name: iconsMap[internalValue],
82
+ name: internalValue ? checkedIcon : uncheckedIcon,
104
83
  size: size,
105
84
  color: checkboxColor
106
85
  }), /*#__PURE__*/React.createElement(_reactNative.View, {
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.tsx"],"names":["CheckboxStatus","Checkbox","Icon","status","disabled","onPress","color","uncheckedColor","indeterminateColor","initialValue","defaultValue","checkedIcon","uncheckedIcon","indeterminateIcon","size","style","rest","internalValue","setInternalValue","React","useState","Unchecked","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"],"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 { 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,\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 || CheckboxStatus.Unchecked\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\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[internalValue];\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"]}
1
+ {"version":3,"sources":["Checkbox.tsx"],"names":["Checkbox","Icon","status","disabled","onPress","color","uncheckedColor","initialValue","defaultValue","checkedIcon","uncheckedIcon","size","style","rest","internalValue","setInternalValue","React","useState","useEffect","previousInitialValue","colors","checkboxColor","primary","handlePress","styles","container","width","height","icon","StyleSheet","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf"],"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 { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport interface CheckboxProps {\n status?: boolean;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n initialValue?: boolean; // deprecated\n defaultValue?: boolean;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status,\n disabled = false,\n onPress = () => {},\n color,\n uncheckedColor,\n initialValue,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<boolean>(\n status || defaultValue || false\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\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 checkboxColor = internalValue\n ? color || colors.primary\n : uncheckedColor || colors.primary;\n\n const handlePress = () => {\n setInternalValue(!internalValue);\n onPress(!internalValue);\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={internalValue ? checkedIcon : uncheckedIcon}\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"]}
@@ -9,7 +9,7 @@ var React = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _reactNative = require("react-native");
11
11
 
12
- var _Checkbox = _interopRequireWildcard(require("./Checkbox"));
12
+ var _Checkbox = _interopRequireDefault(require("./Checkbox"));
13
13
 
14
14
  var _Text = _interopRequireDefault(require("../Text"));
15
15
 
@@ -71,7 +71,6 @@ const CheckboxRow = ({
71
71
  style,
72
72
  color,
73
73
  uncheckedColor,
74
- indeterminateColor,
75
74
  ...rest
76
75
  }) => {
77
76
  const {
@@ -80,11 +79,11 @@ const CheckboxRow = ({
80
79
  direction: parentDirection
81
80
  } = (0, _context.useCheckboxGroupContext)();
82
81
  const values = Array.isArray(selectedValues) ? selectedValues : [];
83
- const isChecked = status === _Checkbox.CheckboxStatus.Checked || values.includes(value);
82
+ const isChecked = status || values.includes(value);
84
83
 
85
84
  const handlePress = () => {
86
85
  if (!disabled) {
87
- onPress(value);
86
+ onPress(!isChecked);
88
87
  onValueChange && onValueChange(value, !isChecked);
89
88
  }
90
89
  };
@@ -110,13 +109,12 @@ const CheckboxRow = ({
110
109
  }
111
110
  }, /*#__PURE__*/React.createElement(_Checkbox.default, {
112
111
  Icon: Icon,
113
- status: status || values.includes(value) ? _Checkbox.CheckboxStatus.Checked : _Checkbox.CheckboxStatus.Unchecked,
112
+ status: status || values.includes(value),
114
113
  onPress: handlePress,
115
114
  style: checkboxStyle,
116
115
  disabled: disabled,
117
116
  color: color,
118
- uncheckedColor: uncheckedColor,
119
- indeterminateColor: indeterminateColor
117
+ uncheckedColor: uncheckedColor
120
118
  })));
121
119
  };
122
120
 
@@ -165,8 +163,8 @@ const SEED_DATA = {
165
163
  }),
166
164
  direction: (0, _types.createRowDirectionProp)(),
167
165
  fieldName: (0, _types.createFieldNameProp)({
168
- defaultValue: "unchecked",
169
- valuePropName: "status",
166
+ defaultValue: "checkboxValue",
167
+ valuePropName: "value",
170
168
  handlerPropName: "onPress"
171
169
  }),
172
170
  color: (0, _types.createColorProp)({
@@ -175,10 +173,6 @@ const SEED_DATA = {
175
173
  uncheckedColor: (0, _types.createColorProp)({
176
174
  label: "Unselected Color",
177
175
  description: "Color for the button when the checkbox is unchecked"
178
- }),
179
- indeterminateColor: (0, _types.createColorProp)({
180
- label: "Indeterminate Color",
181
- description: "Color for the button when the checkbox is indeterminate"
182
176
  })
183
177
  }
184
178
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["CheckboxRow.tsx"],"names":["Direction","getCheckboxAlignment","parentDirection","direction","GroupDirection","Horizontal","Row","RowReverse","renderLabel","value","labelStyle","textStyle","CheckboxRow","Icon","label","onPress","labelContainerStyle","checkboxStyle","status","disabled","style","color","uncheckedColor","indeterminateColor","rest","values","selectedValues","onValueChange","Array","isArray","isChecked","CheckboxStatus","Checked","includes","handlePress","textStyles","viewStyles","styles","mainParent","flexDirection","alignItems","flex","Unchecked","StyleSheet","create","justifyContent","paddingStart","minHeight","paddingEnd","Platform","select","web","cursor","userSelect","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","layout","triggers","Triggers","OnPress","props","description","required","defaultValue","editable","fieldName","valuePropName","handlerPropName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n StyleProp,\n ViewStyle,\n StyleSheet,\n TextStyle,\n View,\n Platform,\n} from \"react-native\";\nimport Checkbox, { CheckboxProps, CheckboxStatus } from \"./Checkbox\";\nimport Text from \"../Text\";\nimport { useCheckboxGroupContext } from \"./context\";\nimport {\n createTextProp,\n createTextStyle,\n createRowDirectionProp,\n createFieldNameProp,\n COMPONENT_TYPES,\n Triggers,\n createColorProp,\n} from \"@draftbit/types\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport { Direction as GroupDirection } from \"./context\";\nimport Touchable from \"../Touchable\";\nimport { extractStyles } from \"../../utilities\";\n\nexport enum Direction {\n Row = \"row\",\n RowReverse = \"row-reverse\",\n}\n\nexport interface CheckboxRowProps extends Omit<CheckboxProps, \"onPress\"> {\n label: string | React.ReactNode;\n value: string;\n labelContainerStyle: StyleProp<ViewStyle>;\n checkboxStyle?: StyleProp<ViewStyle>;\n labelStyle?: StyleProp<TextStyle>;\n onPress?: (value: string) => void;\n direction?: Direction;\n color: string;\n unselectedColor: string;\n indeterminateColor: string;\n}\n\nconst getCheckboxAlignment = (\n parentDirection: GroupDirection | undefined,\n direction: Direction\n) => {\n if (parentDirection === GroupDirection.Horizontal) {\n return direction === Direction.Row ? \"flex-start\" : \"flex-end\";\n } else if (direction === Direction.RowReverse) {\n return \"flex-start\";\n } else {\n return \"flex-end\";\n }\n};\n\nconst renderLabel = (\n value: string | React.ReactNode,\n labelStyle: StyleProp<TextStyle>,\n textStyle: StyleProp<TextStyle>\n) => {\n if (typeof value === \"string\") {\n return <Text style={[labelStyle, textStyle]}>{value}</Text>;\n } else {\n return <>{value}</>;\n }\n};\n\nconst CheckboxRow: React.FC<CheckboxRowProps & IconSlot> = ({\n Icon,\n label = \"Label\",\n value,\n onPress = () => {},\n labelContainerStyle,\n labelStyle,\n checkboxStyle,\n direction = Direction.Row,\n status,\n disabled,\n style,\n color,\n uncheckedColor,\n indeterminateColor,\n ...rest\n}) => {\n const {\n values: selectedValues,\n onValueChange,\n direction: parentDirection,\n } = useCheckboxGroupContext();\n\n const values = Array.isArray(selectedValues) ? selectedValues : [];\n const isChecked = status === CheckboxStatus.Checked || values.includes(value);\n\n const handlePress = () => {\n if (!disabled) {\n onPress(value);\n onValueChange && onValueChange(value, !isChecked);\n }\n };\n\n const { textStyles, viewStyles } = extractStyles(style);\n\n return (\n <Touchable\n onPress={handlePress}\n style={[styles.mainParent, { flexDirection: direction }, viewStyles]}\n disabled={disabled}\n {...rest}\n >\n <View\n style={[\n styles.label,\n {\n alignItems: direction === Direction.Row ? \"flex-start\" : \"flex-end\",\n },\n labelContainerStyle,\n ]}\n >\n {renderLabel(label, labelStyle, textStyles)}\n </View>\n <View\n style={{\n flex: 1,\n alignItems: getCheckboxAlignment(parentDirection, direction),\n }}\n >\n <Checkbox\n Icon={Icon}\n status={\n status || values.includes(value)\n ? CheckboxStatus.Checked\n : CheckboxStatus.Unchecked\n }\n onPress={handlePress}\n style={checkboxStyle}\n disabled={disabled}\n color={color}\n uncheckedColor={uncheckedColor}\n indeterminateColor={indeterminateColor}\n />\n </View>\n </Touchable>\n );\n};\n\nconst styles = StyleSheet.create({\n mainParent: {\n alignItems: \"center\",\n justifyContent: \"space-around\",\n paddingStart: 20,\n minHeight: 50,\n paddingEnd: 20,\n flex: 1,\n ...Platform.select({\n web: {\n cursor: \"pointer\",\n userSelect: \"none\",\n },\n }),\n },\n label: {\n flex: 3,\n },\n});\n\nexport default CheckboxRow;\n\nexport const SEED_DATA = {\n name: \"Checkbox Row\",\n tag: \"CheckboxRow\",\n category: COMPONENT_TYPES.input,\n layout: {\n minHeight: 50,\n },\n triggers: [Triggers.OnPress],\n props: {\n label: createTextProp({\n label: \"Label\",\n description: \"Label to show with the checkbox\",\n required: true,\n defaultValue: \"First Option\",\n }),\n labelStyle: createTextStyle({\n label: \"Label Style\",\n description: \"Change the styles of the label\",\n required: false,\n editable: false,\n }),\n direction: createRowDirectionProp(),\n fieldName: createFieldNameProp({\n defaultValue: \"unchecked\",\n valuePropName: \"status\",\n handlerPropName: \"onPress\",\n }),\n color: createColorProp({\n description: \"Color for the button (used when the checkbox is checked)\",\n }),\n uncheckedColor: createColorProp({\n label: \"Unselected Color\",\n description: \"Color for the button when the checkbox is unchecked\",\n }),\n indeterminateColor: createColorProp({\n label: \"Indeterminate Color\",\n description: \"Color for the button when the checkbox is indeterminate\",\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["CheckboxRow.tsx"],"names":["Direction","getCheckboxAlignment","parentDirection","direction","GroupDirection","Horizontal","Row","RowReverse","renderLabel","value","labelStyle","textStyle","CheckboxRow","Icon","label","onPress","labelContainerStyle","checkboxStyle","status","disabled","style","color","uncheckedColor","rest","values","selectedValues","onValueChange","Array","isArray","isChecked","includes","handlePress","textStyles","viewStyles","styles","mainParent","flexDirection","alignItems","flex","StyleSheet","create","justifyContent","paddingStart","minHeight","paddingEnd","Platform","select","web","cursor","userSelect","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","layout","triggers","Triggers","OnPress","props","description","required","defaultValue","editable","fieldName","valuePropName","handlerPropName"],"mappings":";;;;;;;AAAA;;AACA;;AAQA;;AACA;;AACA;;AACA;;AAWA;;AACA;;;;;;;;;;IAEYA,S;;;WAAAA,S;AAAAA,EAAAA,S;AAAAA,EAAAA,S;GAAAA,S,yBAAAA,S;;AAiBZ,MAAMC,oBAAoB,GAAG,CAC3BC,eAD2B,EAE3BC,SAF2B,KAGxB;AACH,MAAID,eAAe,KAAKE,mBAAeC,UAAvC,EAAmD;AACjD,WAAOF,SAAS,KAAKH,SAAS,CAACM,GAAxB,GAA8B,YAA9B,GAA6C,UAApD;AACD,GAFD,MAEO,IAAIH,SAAS,KAAKH,SAAS,CAACO,UAA5B,EAAwC;AAC7C,WAAO,YAAP;AACD,GAFM,MAEA;AACL,WAAO,UAAP;AACD;AACF,CAXD;;AAaA,MAAMC,WAAW,GAAG,CAClBC,KADkB,EAElBC,UAFkB,EAGlBC,SAHkB,KAIf;AACH,MAAI,OAAOF,KAAP,KAAiB,QAArB,EAA+B;AAC7B,wBAAO,oBAAC,aAAD;AAAM,MAAA,KAAK,EAAE,CAACC,UAAD,EAAaC,SAAb;AAAb,OAAuCF,KAAvC,CAAP;AACD,GAFD,MAEO;AACL,wBAAO,0CAAGA,KAAH,CAAP;AACD;AACF,CAVD;;AAYA,MAAMG,WAAkD,GAAG,CAAC;AAC1DC,EAAAA,IAD0D;AAE1DC,EAAAA,KAAK,GAAG,OAFkD;AAG1DL,EAAAA,KAH0D;AAI1DM,EAAAA,OAAO,GAAG,MAAM,CAAE,CAJwC;AAK1DC,EAAAA,mBAL0D;AAM1DN,EAAAA,UAN0D;AAO1DO,EAAAA,aAP0D;AAQ1Dd,EAAAA,SAAS,GAAGH,SAAS,CAACM,GARoC;AAS1DY,EAAAA,MAT0D;AAU1DC,EAAAA,QAV0D;AAW1DC,EAAAA,KAX0D;AAY1DC,EAAAA,KAZ0D;AAa1DC,EAAAA,cAb0D;AAc1D,KAAGC;AAduD,CAAD,KAerD;AACJ,QAAM;AACJC,IAAAA,MAAM,EAAEC,cADJ;AAEJC,IAAAA,aAFI;AAGJvB,IAAAA,SAAS,EAAED;AAHP,MAIF,uCAJJ;AAMA,QAAMsB,MAAM,GAAGG,KAAK,CAACC,OAAN,CAAcH,cAAd,IAAgCA,cAAhC,GAAiD,EAAhE;AACA,QAAMI,SAAS,GAAGX,MAAM,IAAIM,MAAM,CAACM,QAAP,CAAgBrB,KAAhB,CAA5B;;AAEA,QAAMsB,WAAW,GAAG,MAAM;AACxB,QAAI,CAACZ,QAAL,EAAe;AACbJ,MAAAA,OAAO,CAAC,CAACc,SAAF,CAAP;AACAH,MAAAA,aAAa,IAAIA,aAAa,CAACjB,KAAD,EAAQ,CAACoB,SAAT,CAA9B;AACD;AACF,GALD;;AAOA,QAAM;AAAEG,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAA6B,8BAAcb,KAAd,CAAnC;AAEA,sBACE,oBAAC,kBAAD;AACE,IAAA,OAAO,EAAEW,WADX;AAEE,IAAA,KAAK,EAAE,CAACG,MAAM,CAACC,UAAR,EAAoB;AAAEC,MAAAA,aAAa,EAAEjC;AAAjB,KAApB,EAAkD8B,UAAlD,CAFT;AAGE,IAAA,QAAQ,EAAEd;AAHZ,KAIMI,IAJN,gBAME,oBAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACLW,MAAM,CAACpB,KADF,EAEL;AACEuB,MAAAA,UAAU,EAAElC,SAAS,KAAKH,SAAS,CAACM,GAAxB,GAA8B,YAA9B,GAA6C;AAD3D,KAFK,EAKLU,mBALK;AADT,KASGR,WAAW,CAACM,KAAD,EAAQJ,UAAR,EAAoBsB,UAApB,CATd,CANF,eAiBE,oBAAC,iBAAD;AACE,IAAA,KAAK,EAAE;AACLM,MAAAA,IAAI,EAAE,CADD;AAELD,MAAAA,UAAU,EAAEpC,oBAAoB,CAACC,eAAD,EAAkBC,SAAlB;AAF3B;AADT,kBAME,oBAAC,iBAAD;AACE,IAAA,IAAI,EAAEU,IADR;AAEE,IAAA,MAAM,EAAEK,MAAM,IAAIM,MAAM,CAACM,QAAP,CAAgBrB,KAAhB,CAFpB;AAGE,IAAA,OAAO,EAAEsB,WAHX;AAIE,IAAA,KAAK,EAAEd,aAJT;AAKE,IAAA,QAAQ,EAAEE,QALZ;AAME,IAAA,KAAK,EAAEE,KANT;AAOE,IAAA,cAAc,EAAEC;AAPlB,IANF,CAjBF,CADF;AAoCD,CAtED;;AAwEA,MAAMY,MAAM,GAAGK,wBAAWC,MAAX,CAAkB;AAC/BL,EAAAA,UAAU,EAAE;AACVE,IAAAA,UAAU,EAAE,QADF;AAEVI,IAAAA,cAAc,EAAE,cAFN;AAGVC,IAAAA,YAAY,EAAE,EAHJ;AAIVC,IAAAA,SAAS,EAAE,EAJD;AAKVC,IAAAA,UAAU,EAAE,EALF;AAMVN,IAAAA,IAAI,EAAE,CANI;AAOV,OAAGO,sBAASC,MAAT,CAAgB;AACjBC,MAAAA,GAAG,EAAE;AACHC,QAAAA,MAAM,EAAE,SADL;AAEHC,QAAAA,UAAU,EAAE;AAFT;AADY,KAAhB;AAPO,GADmB;AAe/BnC,EAAAA,KAAK,EAAE;AACLwB,IAAAA,IAAI,EAAE;AADD;AAfwB,CAAlB,CAAf;;eAoBe1B,W;;AAER,MAAMsC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,cADiB;AAEvBC,EAAAA,GAAG,EAAE,aAFkB;AAGvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAHH;AAIvBC,EAAAA,MAAM,EAAE;AACNb,IAAAA,SAAS,EAAE;AADL,GAJe;AAOvBc,EAAAA,QAAQ,EAAE,CAACC,gBAASC,OAAV,CAPa;AAQvBC,EAAAA,KAAK,EAAE;AACL9C,IAAAA,KAAK,EAAE,2BAAe;AACpBA,MAAAA,KAAK,EAAE,OADa;AAEpB+C,MAAAA,WAAW,EAAE,iCAFO;AAGpBC,MAAAA,QAAQ,EAAE,IAHU;AAIpBC,MAAAA,YAAY,EAAE;AAJM,KAAf,CADF;AAOLrD,IAAAA,UAAU,EAAE,4BAAgB;AAC1BI,MAAAA,KAAK,EAAE,aADmB;AAE1B+C,MAAAA,WAAW,EAAE,gCAFa;AAG1BC,MAAAA,QAAQ,EAAE,KAHgB;AAI1BE,MAAAA,QAAQ,EAAE;AAJgB,KAAhB,CAPP;AAaL7D,IAAAA,SAAS,EAAE,oCAbN;AAcL8D,IAAAA,SAAS,EAAE,gCAAoB;AAC7BF,MAAAA,YAAY,EAAE,eADe;AAE7BG,MAAAA,aAAa,EAAE,OAFc;AAG7BC,MAAAA,eAAe,EAAE;AAHY,KAApB,CAdN;AAmBL9C,IAAAA,KAAK,EAAE,4BAAgB;AACrBwC,MAAAA,WAAW,EAAE;AADQ,KAAhB,CAnBF;AAsBLvC,IAAAA,cAAc,EAAE,4BAAgB;AAC9BR,MAAAA,KAAK,EAAE,kBADuB;AAE9B+C,MAAAA,WAAW,EAAE;AAFiB,KAAhB;AAtBX;AARgB,CAAlB","sourcesContent":["import * as React from \"react\";\nimport {\n StyleProp,\n ViewStyle,\n StyleSheet,\n TextStyle,\n View,\n Platform,\n} from \"react-native\";\nimport Checkbox, { CheckboxProps } from \"./Checkbox\";\nimport Text from \"../Text\";\nimport { useCheckboxGroupContext } from \"./context\";\nimport {\n createTextProp,\n createTextStyle,\n createRowDirectionProp,\n createFieldNameProp,\n COMPONENT_TYPES,\n Triggers,\n createColorProp,\n} from \"@draftbit/types\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport { Direction as GroupDirection } from \"./context\";\nimport Touchable from \"../Touchable\";\nimport { extractStyles } from \"../../utilities\";\n\nexport enum Direction {\n Row = \"row\",\n RowReverse = \"row-reverse\",\n}\n\nexport interface CheckboxRowProps extends Omit<CheckboxProps, \"onPress\"> {\n label: string | React.ReactNode;\n value: string; // A string that this checkbox represents\n labelContainerStyle: StyleProp<ViewStyle>;\n checkboxStyle?: StyleProp<ViewStyle>;\n labelStyle?: StyleProp<TextStyle>;\n onPress?: (status: boolean) => void;\n direction?: Direction;\n color: string;\n unselectedColor: string;\n}\n\nconst getCheckboxAlignment = (\n parentDirection: GroupDirection | undefined,\n direction: Direction\n) => {\n if (parentDirection === GroupDirection.Horizontal) {\n return direction === Direction.Row ? \"flex-start\" : \"flex-end\";\n } else if (direction === Direction.RowReverse) {\n return \"flex-start\";\n } else {\n return \"flex-end\";\n }\n};\n\nconst renderLabel = (\n value: string | React.ReactNode,\n labelStyle: StyleProp<TextStyle>,\n textStyle: StyleProp<TextStyle>\n) => {\n if (typeof value === \"string\") {\n return <Text style={[labelStyle, textStyle]}>{value}</Text>;\n } else {\n return <>{value}</>;\n }\n};\n\nconst CheckboxRow: React.FC<CheckboxRowProps & IconSlot> = ({\n Icon,\n label = \"Label\",\n value,\n onPress = () => {},\n labelContainerStyle,\n labelStyle,\n checkboxStyle,\n direction = Direction.Row,\n status,\n disabled,\n style,\n color,\n uncheckedColor,\n ...rest\n}) => {\n const {\n values: selectedValues,\n onValueChange,\n direction: parentDirection,\n } = useCheckboxGroupContext();\n\n const values = Array.isArray(selectedValues) ? selectedValues : [];\n const isChecked = status || values.includes(value);\n\n const handlePress = () => {\n if (!disabled) {\n onPress(!isChecked);\n onValueChange && onValueChange(value, !isChecked);\n }\n };\n\n const { textStyles, viewStyles } = extractStyles(style);\n\n return (\n <Touchable\n onPress={handlePress}\n style={[styles.mainParent, { flexDirection: direction }, viewStyles]}\n disabled={disabled}\n {...rest}\n >\n <View\n style={[\n styles.label,\n {\n alignItems: direction === Direction.Row ? \"flex-start\" : \"flex-end\",\n },\n labelContainerStyle,\n ]}\n >\n {renderLabel(label, labelStyle, textStyles)}\n </View>\n <View\n style={{\n flex: 1,\n alignItems: getCheckboxAlignment(parentDirection, direction),\n }}\n >\n <Checkbox\n Icon={Icon}\n status={status || values.includes(value)}\n onPress={handlePress}\n style={checkboxStyle}\n disabled={disabled}\n color={color}\n uncheckedColor={uncheckedColor}\n />\n </View>\n </Touchable>\n );\n};\n\nconst styles = StyleSheet.create({\n mainParent: {\n alignItems: \"center\",\n justifyContent: \"space-around\",\n paddingStart: 20,\n minHeight: 50,\n paddingEnd: 20,\n flex: 1,\n ...Platform.select({\n web: {\n cursor: \"pointer\",\n userSelect: \"none\",\n },\n }),\n },\n label: {\n flex: 3,\n },\n});\n\nexport default CheckboxRow;\n\nexport const SEED_DATA = {\n name: \"Checkbox Row\",\n tag: \"CheckboxRow\",\n category: COMPONENT_TYPES.input,\n layout: {\n minHeight: 50,\n },\n triggers: [Triggers.OnPress],\n props: {\n label: createTextProp({\n label: \"Label\",\n description: \"Label to show with the checkbox\",\n required: true,\n defaultValue: \"First Option\",\n }),\n labelStyle: createTextStyle({\n label: \"Label Style\",\n description: \"Change the styles of the label\",\n required: false,\n editable: false,\n }),\n direction: createRowDirectionProp(),\n fieldName: createFieldNameProp({\n defaultValue: \"checkboxValue\",\n valuePropName: \"value\",\n handlerPropName: \"onPress\",\n }),\n color: createColorProp({\n description: \"Color for the button (used when the checkbox is checked)\",\n }),\n uncheckedColor: createColorProp({\n label: \"Unselected Color\",\n description: \"Color for the button when the checkbox is unchecked\",\n }),\n },\n};\n"]}
@@ -86,6 +86,7 @@ function Row({
86
86
  direction = _types.RowDirection.Row,
87
87
  style,
88
88
  value,
89
+ defaultValue,
89
90
  disabled,
90
91
  onValueChange,
91
92
  activeTrackColor,
@@ -95,7 +96,7 @@ function Row({
95
96
  theme,
96
97
  ...rest
97
98
  }) {
98
- const [checked, setChecked] = React.useState(value);
99
+ const [checked, setChecked] = React.useState(value || defaultValue);
99
100
  React.useEffect(() => {
100
101
  if (value !== checked) {
101
102
  setChecked(value);
@@ -1 +1 @@
1
- {"version":3,"sources":["Switch.tsx"],"names":["Switch","value","initialValue","defaultValue","disabled","onValueChange","activeTrackColor","inactiveTrackColor","activeThumbColor","inactiveThumbColor","theme","style","rest","activeTrackThemeColor","colors","primary","inactiveTrackThemeColor","activeThumbThemeColor","inactiveThumbThemeColor","checked","setChecked","React","useState","useEffect","booleanInitialValue","Boolean","previousInitialValue","false","true","bool","Row","label","direction","RowDirection","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 initialValue?: boolean; // deprecated\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 initialValue,\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 React.useEffect(() => {\n if (defaultValue != null) {\n setChecked(defaultValue);\n }\n }, [defaultValue]);\n\n const booleanInitialValue = Boolean(initialValue);\n const previousInitialValue = usePrevious(booleanInitialValue);\n\n React.useEffect(() => {\n if (initialValue != null && booleanInitialValue !== previousInitialValue) {\n setChecked(booleanInitialValue);\n onValueChange && onValueChange(booleanInitialValue);\n }\n }, [\n initialValue,\n booleanInitialValue,\n previousInitialValue,\n setChecked,\n onValueChange,\n ]);\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 disabled,\n onValueChange,\n activeTrackColor,\n inactiveTrackColor,\n activeThumbColor,\n inactiveThumbColor,\n theme,\n ...rest\n}: Props & RowProps) {\n const [checked, setChecked] = React.useState(value);\n\n React.useEffect(() => {\n if (value !== checked) {\n setChecked(value);\n }\n }, [value, checked]);\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\n/* README: SEED_DATA lives inside mappings/Switch.js since there were weird issues taking place with sourceMaps being\n * generated */\n"]}
1
+ {"version":3,"sources":["Switch.tsx"],"names":["Switch","value","initialValue","defaultValue","disabled","onValueChange","activeTrackColor","inactiveTrackColor","activeThumbColor","inactiveThumbColor","theme","style","rest","activeTrackThemeColor","colors","primary","inactiveTrackThemeColor","activeThumbThemeColor","inactiveThumbThemeColor","checked","setChecked","React","useState","useEffect","booleanInitialValue","Boolean","previousInitialValue","false","true","bool","Row","label","direction","RowDirection","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 initialValue?: boolean; // deprecated\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 initialValue,\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 React.useEffect(() => {\n if (defaultValue != null) {\n setChecked(defaultValue);\n }\n }, [defaultValue]);\n\n const booleanInitialValue = Boolean(initialValue);\n const previousInitialValue = usePrevious(booleanInitialValue);\n\n React.useEffect(() => {\n if (initialValue != null && booleanInitialValue !== previousInitialValue) {\n setChecked(booleanInitialValue);\n onValueChange && onValueChange(booleanInitialValue);\n }\n }, [\n initialValue,\n booleanInitialValue,\n previousInitialValue,\n setChecked,\n onValueChange,\n ]);\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(value || defaultValue);\n\n React.useEffect(() => {\n if (value !== checked) {\n setChecked(value);\n }\n }, [value, checked]);\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\n/* README: SEED_DATA lives inside mappings/Switch.js since there were weird issues taking place with sourceMaps being\n * generated */\n"]}
@@ -30,12 +30,6 @@ const SEED_DATA = {
30
30
  description: "Color for the button when the checkbox is unchecked",
31
31
  defaultValue: null
32
32
  }),
33
- indeterminateColor: (0, _types.createColorProp)({
34
- group: _types.GROUPS.basic,
35
- label: "Indeterminate Color",
36
- description: "Color for the button when the checkbox is indeterminate",
37
- defaultValue: null
38
- }),
39
33
  disabled: (0, _types.createBoolProp)({
40
34
  label: "Disabled",
41
35
  description: "Whether the checkbox is disabled"
@@ -54,11 +48,6 @@ const SEED_DATA = {
54
48
  label: "Unchecked Icon",
55
49
  description: 'Icon to show when the checkbox status is "unchecked"',
56
50
  defaultValue: null
57
- }),
58
- indeterminateIcon: (0, _types.createIconProp)({
59
- label: "Indeterminate Icon",
60
- description: 'Icon to show when the checkbox status is "indeterminate"',
61
- defaultValue: null
62
51
  })
63
52
  }
64
53
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.js"],"names":["SEED_DATA","name","tag","category","COMPONENT_TYPES","input","triggers","Triggers","OnPress","props","fieldName","defaultValue","valuePropName","handlerPropName","color","group","GROUPS","basic","label","description","uncheckedColor","indeterminateColor","disabled","size","checkedIcon","uncheckedIcon","indeterminateIcon"],"mappings":";;;;;;;AAAA;;AAWO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,UADiB;AAEvBC,EAAAA,GAAG,EAAE,UAFkB;AAGvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAHH;AAIvBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,OAAV,CAJa;AAKvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,SAAS,EAAE,gCAAoB;AAC7BC,MAAAA,YAAY,EAAE,eADe;AAE7BC,MAAAA,aAAa,EAAE,QAFc;AAG7BC,MAAAA,eAAe,EAAE;AAHY,KAApB,CADN;AAMLC,IAAAA,KAAK,EAAE,4BAAgB;AACrBC,MAAAA,KAAK,EAAEC,cAAOC,KADO;AAErBC,MAAAA,KAAK,EAAE,OAFc;AAGrBC,MAAAA,WAAW,EAAE,0DAHQ;AAIrBR,MAAAA,YAAY,EAAE;AAJO,KAAhB,CANF;AAYLS,IAAAA,cAAc,EAAE,4BAAgB;AAC9BL,MAAAA,KAAK,EAAEC,cAAOC,KADgB;AAE9BC,MAAAA,KAAK,EAAE,kBAFuB;AAG9BC,MAAAA,WAAW,EAAE,qDAHiB;AAI9BR,MAAAA,YAAY,EAAE;AAJgB,KAAhB,CAZX;AAkBLU,IAAAA,kBAAkB,EAAE,4BAAgB;AAClCN,MAAAA,KAAK,EAAEC,cAAOC,KADoB;AAElCC,MAAAA,KAAK,EAAE,qBAF2B;AAGlCC,MAAAA,WAAW,EAAE,yDAHqB;AAIlCR,MAAAA,YAAY,EAAE;AAJoB,KAAhB,CAlBf;AAwBLW,IAAAA,QAAQ,EAAE,2BAAe;AACvBJ,MAAAA,KAAK,EAAE,UADgB;AAEvBC,MAAAA,WAAW,EAAE;AAFU,KAAf,CAxBL;AA4BLI,IAAAA,IAAI,EAAE,mCAAuB;AAC3BL,MAAAA,KAAK,EAAE,MADoB;AAE3BC,MAAAA,WAAW,EAAE,gCAFc;AAG3BR,MAAAA,YAAY,EAAE;AAHa,KAAvB,CA5BD;AAiCLa,IAAAA,WAAW,EAAE,2BAAe;AAC1BN,MAAAA,KAAK,EAAE,cADmB;AAE1BC,MAAAA,WAAW,EAAE,oDAFa;AAG1BR,MAAAA,YAAY,EAAE;AAHY,KAAf,CAjCR;AAsCLc,IAAAA,aAAa,EAAE,2BAAe;AAC5BP,MAAAA,KAAK,EAAE,gBADqB;AAE5BC,MAAAA,WAAW,EAAE,sDAFe;AAG5BR,MAAAA,YAAY,EAAE;AAHc,KAAf,CAtCV;AA2CLe,IAAAA,iBAAiB,EAAE,2BAAe;AAChCR,MAAAA,KAAK,EAAE,oBADyB;AAEhCC,MAAAA,WAAW,EAAE,0DAFmB;AAGhCR,MAAAA,YAAY,EAAE;AAHkB,KAAf;AA3Cd;AALgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\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.js"],"names":["SEED_DATA","name","tag","category","COMPONENT_TYPES","input","triggers","Triggers","OnPress","props","fieldName","defaultValue","valuePropName","handlerPropName","color","group","GROUPS","basic","label","description","uncheckedColor","disabled","size","checkedIcon","uncheckedIcon"],"mappings":";;;;;;;AAAA;;AAWO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,UADiB;AAEvBC,EAAAA,GAAG,EAAE,UAFkB;AAGvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAHH;AAIvBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,OAAV,CAJa;AAKvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,SAAS,EAAE,gCAAoB;AAC7BC,MAAAA,YAAY,EAAE,eADe;AAE7BC,MAAAA,aAAa,EAAE,QAFc;AAG7BC,MAAAA,eAAe,EAAE;AAHY,KAApB,CADN;AAMLC,IAAAA,KAAK,EAAE,4BAAgB;AACrBC,MAAAA,KAAK,EAAEC,cAAOC,KADO;AAErBC,MAAAA,KAAK,EAAE,OAFc;AAGrBC,MAAAA,WAAW,EAAE,0DAHQ;AAIrBR,MAAAA,YAAY,EAAE;AAJO,KAAhB,CANF;AAYLS,IAAAA,cAAc,EAAE,4BAAgB;AAC9BL,MAAAA,KAAK,EAAEC,cAAOC,KADgB;AAE9BC,MAAAA,KAAK,EAAE,kBAFuB;AAG9BC,MAAAA,WAAW,EAAE,qDAHiB;AAI9BR,MAAAA,YAAY,EAAE;AAJgB,KAAhB,CAZX;AAkBLU,IAAAA,QAAQ,EAAE,2BAAe;AACvBH,MAAAA,KAAK,EAAE,UADgB;AAEvBC,MAAAA,WAAW,EAAE;AAFU,KAAf,CAlBL;AAsBLG,IAAAA,IAAI,EAAE,mCAAuB;AAC3BJ,MAAAA,KAAK,EAAE,MADoB;AAE3BC,MAAAA,WAAW,EAAE,gCAFc;AAG3BR,MAAAA,YAAY,EAAE;AAHa,KAAvB,CAtBD;AA2BLY,IAAAA,WAAW,EAAE,2BAAe;AAC1BL,MAAAA,KAAK,EAAE,cADmB;AAE1BC,MAAAA,WAAW,EAAE,oDAFa;AAG1BR,MAAAA,YAAY,EAAE;AAHY,KAAf,CA3BR;AAgCLa,IAAAA,aAAa,EAAE,2BAAe;AAC5BN,MAAAA,KAAK,EAAE,gBADqB;AAE5BC,MAAAA,WAAW,EAAE,sDAFe;AAG5BR,MAAAA,YAAY,EAAE;AAHc,KAAf;AAhCV;AALgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\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 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 },\n};\n"]}
@@ -174,10 +174,7 @@ const SEED_DATA = [{
174
174
  },
175
175
  triggers: [_types.Triggers.OnChangeText],
176
176
  props: { ..._types.NUMBER_INPUT_PROPS,
177
- ...SEED_DATA_PROPS,
178
- placeholder: { ..._types.NUMBER_INPUT_PROPS.placeholder,
179
- defaultValue: "Input a number… "
180
- }
177
+ ...SEED_DATA_PROPS
181
178
  }
182
179
  }];
183
180
  exports.SEED_DATA = SEED_DATA;
@@ -1 +1 @@
1
- {"version":3,"sources":["TextInput.js"],"names":["SEED_DATA_PROPS","style","group","GROUPS","basic","label","description","editable","required","formType","FORM_TYPES","typeStyle","propType","PROP_TYPES","THEME","defaultValue","clearButtonMode","options","flatArray","STRING","clearTextOnFocus","boolean","BOOLEAN","enablesReturnKeyAutomatically","underlineColorAndroid","color","fieldName","FIELD_NAME","handlerPropName","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","preview_image_url","supports_list_render","layout","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","borderColor","paddingLeft","paddingRight","paddingTop","paddingBottom","borderRadius","triggers","Triggers","OnChangeText","props","TEXT_INPUT_PROPS","multiline","numberOfLines","min","step","precision","number","NUMBER","scrollEnabled","spellcheck","textContentType","advanced","textBreakStrategy","NUMBER_INPUT_PROPS","placeholder"],"mappings":";;;;;;;AAAA;;AAWO,MAAMA,eAAe,GAAG;AAC7BC,EAAAA,KAAK,EAAE;AACLC,IAAAA,KAAK,EAAEC,cAAOC,KADT;AAELC,IAAAA,KAAK,EAAE,OAFF;AAGLC,IAAAA,WAAW,EAAE,YAHR;AAILC,IAAAA,QAAQ,EAAE,KAJL;AAKLC,IAAAA,QAAQ,EAAE,KALL;AAMLC,IAAAA,QAAQ,EAAEC,kBAAWC,SANhB;AAOLC,IAAAA,QAAQ,EAAEC,kBAAWC,KAPhB;AAQLC,IAAAA,YAAY,EAAE;AART,GADsB;AAW7BC,EAAAA,eAAe,EAAE;AACfd,IAAAA,KAAK,EAAEC,cAAOC,KADC;AAEfC,IAAAA,KAAK,EAAE,mBAFQ;AAGfC,IAAAA,WAAW,EACT,iEAJa;AAKfC,IAAAA,QAAQ,EAAE,IALK;AAMfC,IAAAA,QAAQ,EAAE,KANK;AAOfS,IAAAA,OAAO,EAAE,CAAC,OAAD,EAAU,eAAV,EAA2B,gBAA3B,EAA6C,QAA7C,CAPM;AAQfF,IAAAA,YAAY,EAAE,IARC;AASfN,IAAAA,QAAQ,EAAEC,kBAAWQ,SATN;AAUfN,IAAAA,QAAQ,EAAEC,kBAAWM;AAVN,GAXY;AAuB7BC,EAAAA,gBAAgB,EAAE;AAChBlB,IAAAA,KAAK,EAAEC,cAAOC,KADE;AAEhBC,IAAAA,KAAK,EAAE,qBAFS;AAGhBC,IAAAA,WAAW,EACT,gEAJc;AAKhBC,IAAAA,QAAQ,EAAE,IALM;AAMhBC,IAAAA,QAAQ,EAAE,KANM;AAOhBO,IAAAA,YAAY,EAAE,IAPE;AAQhBN,IAAAA,QAAQ,EAAEC,kBAAWW,OARL;AAShBT,IAAAA,QAAQ,EAAEC,kBAAWS;AATL,GAvBW;AAkC7BC,EAAAA,6BAA6B,EAAE;AAC7BrB,IAAAA,KAAK,EAAEC,cAAOC,KADe;AAE7BC,IAAAA,KAAK,EAAE,kCAFsB;AAG7BC,IAAAA,WAAW,EACT,iIAJ2B;AAK7BC,IAAAA,QAAQ,EAAE,IALmB;AAM7BC,IAAAA,QAAQ,EAAE,KANmB;AAO7BO,IAAAA,YAAY,EAAE,IAPe;AAQ7BN,IAAAA,QAAQ,EAAEC,kBAAWW,OARQ;AAS7BT,IAAAA,QAAQ,EAAEC,kBAAWS;AATQ,GAlCF;AA6C7BE,EAAAA,qBAAqB,EAAE;AACrBtB,IAAAA,KAAK,EAAEC,cAAOC,KADO;AAErBC,IAAAA,KAAK,EAAE,iBAFc;AAGrBC,IAAAA,WAAW,EACT,8FAJmB;AAKrBC,IAAAA,QAAQ,EAAE,IALW;AAMrBC,IAAAA,QAAQ,EAAE,KANW;AAOrBO,IAAAA,YAAY,EAAE,IAPO;AAQrBN,IAAAA,QAAQ,EAAEC,kBAAWe,KARA;AASrBb,IAAAA,QAAQ,EAAEC,kBAAWC;AATA,GA7CM;AAwD7BY,EAAAA,SAAS,EAAE,EACT,GAAGC,iBADM;AAETZ,IAAAA,YAAY,EAAE,gBAFL;AAGTa,IAAAA,eAAe,EAAE;AAHR;AAxDkB,CAAxB;;AA+DA,MAAMC,SAAS,GAAG,CACvB;AACEC,EAAAA,IAAI,EAAE,YADR;AAEEC,EAAAA,GAAG,EAAE,WAFP;AAGEzB,EAAAA,WAAW,EAAE,mDAHf;AAIE0B,EAAAA,QAAQ,EAAEC,uBAAgBC,KAJ5B;AAKEC,EAAAA,iBAAiB,EACf,6EANJ;AAOEC,EAAAA,oBAAoB,EAAE,KAPxB;AAQEC,EAAAA,MAAM,EAAE;AACNC,IAAAA,eAAe,EAAE,CADX;AAENC,IAAAA,gBAAgB,EAAE,CAFZ;AAGNC,IAAAA,cAAc,EAAE,CAHV;AAINC,IAAAA,iBAAiB,EAAE,CAJb;AAKNC,IAAAA,WAAW,EAAE,SALP;AAMNC,IAAAA,WAAW,EAAE,CANP;AAONC,IAAAA,YAAY,EAAE,CAPR;AAQNC,IAAAA,UAAU,EAAE,CARN;AASNC,IAAAA,aAAa,EAAE,CATT;AAUNC,IAAAA,YAAY,EAAE;AAVR,GARV;AAoBEC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,YAAV,CApBZ;AAqBEC,EAAAA,KAAK,EAAE,EACL,GAAGC,uBADE;AAEL,OAAGpD,eAFE;AAGLqD,IAAAA,SAAS,EAAE;AACTnD,MAAAA,KAAK,EAAEC,cAAOC,KADL;AAETC,MAAAA,KAAK,EAAE,gBAFE;AAGTC,MAAAA,WAAW,EACT,sGAJO;AAKTC,MAAAA,QAAQ,EAAE,IALD;AAMTC,MAAAA,QAAQ,EAAE,KAND;AAOTO,MAAAA,YAAY,EAAE,IAPL;AAQTN,MAAAA,QAAQ,EAAEC,kBAAWW,OARZ;AASTT,MAAAA,QAAQ,EAAEC,kBAAWS;AATZ,KAHN;AAcLgC,IAAAA,aAAa,EAAE;AACbpD,MAAAA,KAAK,EAAEC,cAAOC,KADD;AAEbC,MAAAA,KAAK,EAAE,iBAFM;AAGbC,MAAAA,WAAW,EACT,0EAJW;AAKbC,MAAAA,QAAQ,EAAE,IALG;AAMbC,MAAAA,QAAQ,EAAE,KANG;AAObO,MAAAA,YAAY,EAAE,IAPD;AAQbwC,MAAAA,GAAG,EAAE,CARQ;AASbC,MAAAA,IAAI,EAAE,CATO;AAUbC,MAAAA,SAAS,EAAE,CAVE;AAWbhD,MAAAA,QAAQ,EAAEC,kBAAWgD,MAXR;AAYb9C,MAAAA,QAAQ,EAAEC,kBAAW8C;AAZR,KAdV;AA4BLC,IAAAA,aAAa,EAAE;AACb1D,MAAAA,KAAK,EAAEC,cAAOC,KADD;AAEbC,MAAAA,KAAK,EAAE,gBAFM;AAGbC,MAAAA,WAAW,EACT,2FAJW;AAKbC,MAAAA,QAAQ,EAAE,IALG;AAMbC,MAAAA,QAAQ,EAAE,KANG;AAObO,MAAAA,YAAY,EAAE,IAPD;AAQbN,MAAAA,QAAQ,EAAEC,kBAAWW,OARR;AASbT,MAAAA,QAAQ,EAAEC,kBAAWS;AATR,KA5BV;AAuCLuC,IAAAA,UAAU,EAAE;AACV3D,MAAAA,KAAK,EAAEC,cAAOC,KADJ;AAEVC,MAAAA,KAAK,EAAE,qBAFG;AAGVC,MAAAA,WAAW,EACT,wFAJQ;AAKVC,MAAAA,QAAQ,EAAE,IALA;AAMVC,MAAAA,QAAQ,EAAE,KANA;AAOVO,MAAAA,YAAY,EAAE,IAPJ;AAQVN,MAAAA,QAAQ,EAAEC,kBAAWW,OARX;AASVT,MAAAA,QAAQ,EAAEC,kBAAWS;AATX,KAvCP;AAkDLwC,IAAAA,eAAe,EAAE;AACf5D,MAAAA,KAAK,EAAEC,cAAO4D,QADC;AAEf1D,MAAAA,KAAK,EAAE,mBAFQ;AAGfC,MAAAA,WAAW,EACT,iIAJa;AAKfC,MAAAA,QAAQ,EAAE,IALK;AAMfC,MAAAA,QAAQ,EAAE,KANK;AAOfO,MAAAA,YAAY,EAAE,IAPC;AAQfE,MAAAA,OAAO,EAAE,CACP,MADO,EAEP,KAFO,EAGP,aAHO,EAIP,qBAJO,EAKP,cALO,EAMP,aANO,EAOP,kBAPO,EAQP,cARO,EASP,YATO,EAUP,mBAVO,EAWP,WAXO,EAYP,UAZO,EAaP,UAbO,EAcP,YAdO,EAeP,MAfO,EAgBP,YAhBO,EAiBP,YAjBO,EAkBP,UAlBO,EAmBP,kBAnBO,EAoBP,YApBO,EAqBP,oBArBO,EAsBP,oBAtBO,EAuBP,aAvBO,EAwBP,iBAxBO,EAyBP,UAzBO,EA0BP,UA1BO,CARM;AAoCfR,MAAAA,QAAQ,EAAEC,kBAAWQ,SApCN;AAqCfN,MAAAA,QAAQ,EAAEC,kBAAWM;AArCN,KAlDZ;AAyFL6C,IAAAA,iBAAiB,EAAE;AACjB9D,MAAAA,KAAK,EAAEC,cAAO4D,QADG;AAEjB1D,MAAAA,KAAK,EAAE,qBAFU;AAGjBC,MAAAA,WAAW,EACT,+DAJe;AAKjBC,MAAAA,QAAQ,EAAE,IALO;AAMjBC,MAAAA,QAAQ,EAAE,KANO;AAOjBO,MAAAA,YAAY,EAAE,IAPG;AAQjBE,MAAAA,OAAO,EAAE,CAAC,QAAD,EAAW,aAAX,EAA0B,UAA1B,CARQ;AASjBR,MAAAA,QAAQ,EAAEC,kBAAWQ,SATJ;AAUjBN,MAAAA,QAAQ,EAAEC,kBAAWM;AAVJ;AAzFd;AArBT,CADuB,EA6HvB;AACEW,EAAAA,IAAI,EAAE,cADR;AAEEC,EAAAA,GAAG,EAAE,aAFP;AAGEzB,EAAAA,WAAW,EAAE,mDAHf;AAIE0B,EAAAA,QAAQ,EAAEC,uBAAgBC,KAJ5B;AAKEC,EAAAA,iBAAiB,EACf,6EANJ;AAOEC,EAAAA,oBAAoB,EAAE,KAPxB;AAQEC,EAAAA,MAAM,EAAE;AACNC,IAAAA,eAAe,EAAE,CADX;AAENC,IAAAA,gBAAgB,EAAE,CAFZ;AAGNC,IAAAA,cAAc,EAAE,CAHV;AAINC,IAAAA,iBAAiB,EAAE,CAJb;AAKNC,IAAAA,WAAW,EAAE,SALP;AAMNC,IAAAA,WAAW,EAAE,CANP;AAONC,IAAAA,YAAY,EAAE,CAPR;AAQNC,IAAAA,UAAU,EAAE,CARN;AASNC,IAAAA,aAAa,EAAE,CATT;AAUNC,IAAAA,YAAY,EAAE;AAVR,GARV;AAoBEC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,YAAV,CApBZ;AAqBEC,EAAAA,KAAK,EAAE,EACL,GAAGc,yBADE;AAEL,OAAGjE,eAFE;AAGLkE,IAAAA,WAAW,EAAE,EACX,GAAGD,0BAAmBC,WADX;AAEXnD,MAAAA,YAAY,EAAE;AAFH;AAHR;AArBT,CA7HuB,CAAlB","sourcesContent":["import {\n GROUPS,\n COMPONENT_TYPES,\n FORM_TYPES,\n PROP_TYPES,\n FIELD_NAME,\n TEXT_INPUT_PROPS,\n NUMBER_INPUT_PROPS,\n Triggers,\n} from \"@draftbit/types\";\n\nexport const SEED_DATA_PROPS = {\n style: {\n group: GROUPS.basic,\n label: \"Style\",\n description: \"Text Style\",\n editable: false,\n required: false,\n formType: FORM_TYPES.typeStyle,\n propType: PROP_TYPES.THEME,\n defaultValue: null,\n },\n clearButtonMode: {\n group: GROUPS.basic,\n label: \"Clear Button Mode\",\n description:\n \"Enables a button within the textInput to clear the data entered\",\n editable: true,\n required: false,\n options: [\"never\", \"while-editing\", \"unless-editing\", \"always\"],\n defaultValue: null,\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n },\n clearTextOnFocus: {\n group: GROUPS.basic,\n label: \"Clear Text on Focus\",\n description:\n \"If true, clears the text field automatically when its focused.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n enablesReturnKeyAutomatically: {\n group: GROUPS.basic,\n label: \"Enables Return Key Automatically\",\n description:\n \"If true, the keyboard disables the return key when there is no text and automatically enables it when there is (Default: false)\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n underlineColorAndroid: {\n group: GROUPS.basic,\n label: \"Underline color\",\n description:\n \"(Android Only) The color of the underline(the line underneath the text when finished typing.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.color,\n propType: PROP_TYPES.THEME,\n },\n fieldName: {\n ...FIELD_NAME,\n defaultValue: \"textInputValue\",\n handlerPropName: \"onChangeText\",\n },\n};\n\nexport const SEED_DATA = [\n {\n name: \"Text Input\",\n tag: \"TextInput\",\n description: \"An input field that allows users to type in data.\",\n category: COMPONENT_TYPES.input,\n preview_image_url:\n \"https://res.cloudinary.com/altos/image/upload/draftbit/Jigsaw/TextInput.png\",\n supports_list_render: false,\n layout: {\n borderLeftWidth: 1,\n borderRightWidth: 1,\n borderTopWidth: 1,\n borderBottomWidth: 1,\n borderColor: \"divider\",\n paddingLeft: 8,\n paddingRight: 8,\n paddingTop: 8,\n paddingBottom: 8,\n borderRadius: 8,\n },\n triggers: [Triggers.OnChangeText],\n props: {\n ...TEXT_INPUT_PROPS,\n ...SEED_DATA_PROPS,\n multiline: {\n group: GROUPS.basic,\n label: \"Multiple Lines\",\n description:\n \"Allows multiple lines of input, useful for situations where the user may be typing in a lot of data.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n numberOfLines: {\n group: GROUPS.basic,\n label: \"Number of Lines\",\n description:\n \"Sets the number of lines for the input (Multiple Lines needs to be true)\",\n editable: true,\n required: false,\n defaultValue: null,\n min: 0,\n step: 1,\n precision: 0,\n formType: FORM_TYPES.number,\n propType: PROP_TYPES.NUMBER,\n },\n scrollEnabled: {\n group: GROUPS.basic,\n label: \"Scroll Enabled\",\n description:\n \"If false, scrolling of the input will be disabled. Only works when Multiple Lines is true\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n spellcheck: {\n group: GROUPS.basic,\n label: \"Disable Spell Check\",\n description:\n \"If false, disables spell-check style (red underlines). Default comes from Auto Correct\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n textContentType: {\n group: GROUPS.advanced,\n label: \"Text Content Type\",\n description:\n \"Give the keyboard and system about what it should do with the input. For example, if its an address, autofill from address book\",\n editable: true,\n required: false,\n defaultValue: null,\n options: [\n \"none\",\n \"URL\",\n \"addressCity\",\n \"addressCityAndState\",\n \"addressState\",\n \"countryName\",\n \"creditCardNumber\",\n \"emailAddress\",\n \"familyName\",\n \"fullStreetAddress\",\n \"givenName\",\n \"jobTitle\",\n \"location\",\n \"middleName\",\n \"name\",\n \"namePrefix\",\n \"nameSuffix\",\n \"nickname\",\n \"organizationName\",\n \"postalCode\",\n \"streetAddressLine1\",\n \"streetAddressLine2\",\n \"sublocality\",\n \"telephoneNumber\",\n \"username\",\n \"password\",\n ],\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n },\n textBreakStrategy: {\n group: GROUPS.advanced,\n label: \"Text Break Strategy\",\n description:\n \"(Android Only) Set the text break strategy. (Default: simple)\",\n editable: true,\n required: false,\n defaultValue: null,\n options: [\"simple\", \"highQuality\", \"balanced\"],\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n },\n },\n },\n {\n name: \"Number Input\",\n tag: \"NumberInput\",\n description: \"An input field that allows users to type in data.\",\n category: COMPONENT_TYPES.input,\n preview_image_url:\n \"https://res.cloudinary.com/altos/image/upload/draftbit/Jigsaw/TextInput.png\",\n supports_list_render: false,\n layout: {\n borderLeftWidth: 1,\n borderRightWidth: 1,\n borderTopWidth: 1,\n borderBottomWidth: 1,\n borderColor: \"divider\",\n paddingLeft: 8,\n paddingRight: 8,\n paddingTop: 8,\n paddingBottom: 8,\n borderRadius: 8,\n },\n triggers: [Triggers.OnChangeText],\n props: {\n ...NUMBER_INPUT_PROPS,\n ...SEED_DATA_PROPS,\n placeholder: {\n ...NUMBER_INPUT_PROPS.placeholder,\n defaultValue: \"Input a number… \",\n },\n },\n },\n];\n"]}
1
+ {"version":3,"sources":["TextInput.js"],"names":["SEED_DATA_PROPS","style","group","GROUPS","basic","label","description","editable","required","formType","FORM_TYPES","typeStyle","propType","PROP_TYPES","THEME","defaultValue","clearButtonMode","options","flatArray","STRING","clearTextOnFocus","boolean","BOOLEAN","enablesReturnKeyAutomatically","underlineColorAndroid","color","fieldName","FIELD_NAME","handlerPropName","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","preview_image_url","supports_list_render","layout","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","borderColor","paddingLeft","paddingRight","paddingTop","paddingBottom","borderRadius","triggers","Triggers","OnChangeText","props","TEXT_INPUT_PROPS","multiline","numberOfLines","min","step","precision","number","NUMBER","scrollEnabled","spellcheck","textContentType","advanced","textBreakStrategy","NUMBER_INPUT_PROPS"],"mappings":"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","sourcesContent":["import {\n GROUPS,\n COMPONENT_TYPES,\n FORM_TYPES,\n PROP_TYPES,\n FIELD_NAME,\n TEXT_INPUT_PROPS,\n NUMBER_INPUT_PROPS,\n Triggers,\n} from \"@draftbit/types\";\n\nexport const SEED_DATA_PROPS = {\n style: {\n group: GROUPS.basic,\n label: \"Style\",\n description: \"Text Style\",\n editable: false,\n required: false,\n formType: FORM_TYPES.typeStyle,\n propType: PROP_TYPES.THEME,\n defaultValue: null,\n },\n clearButtonMode: {\n group: GROUPS.basic,\n label: \"Clear Button Mode\",\n description:\n \"Enables a button within the textInput to clear the data entered\",\n editable: true,\n required: false,\n options: [\"never\", \"while-editing\", \"unless-editing\", \"always\"],\n defaultValue: null,\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n },\n clearTextOnFocus: {\n group: GROUPS.basic,\n label: \"Clear Text on Focus\",\n description:\n \"If true, clears the text field automatically when its focused.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n enablesReturnKeyAutomatically: {\n group: GROUPS.basic,\n label: \"Enables Return Key Automatically\",\n description:\n \"If true, the keyboard disables the return key when there is no text and automatically enables it when there is (Default: false)\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n underlineColorAndroid: {\n group: GROUPS.basic,\n label: \"Underline color\",\n description:\n \"(Android Only) The color of the underline(the line underneath the text when finished typing.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.color,\n propType: PROP_TYPES.THEME,\n },\n fieldName: {\n ...FIELD_NAME,\n defaultValue: \"textInputValue\",\n handlerPropName: \"onChangeText\",\n },\n};\n\nexport const SEED_DATA = [\n {\n name: \"Text Input\",\n tag: \"TextInput\",\n description: \"An input field that allows users to type in data.\",\n category: COMPONENT_TYPES.input,\n preview_image_url:\n \"https://res.cloudinary.com/altos/image/upload/draftbit/Jigsaw/TextInput.png\",\n supports_list_render: false,\n layout: {\n borderLeftWidth: 1,\n borderRightWidth: 1,\n borderTopWidth: 1,\n borderBottomWidth: 1,\n borderColor: \"divider\",\n paddingLeft: 8,\n paddingRight: 8,\n paddingTop: 8,\n paddingBottom: 8,\n borderRadius: 8,\n },\n triggers: [Triggers.OnChangeText],\n props: {\n ...TEXT_INPUT_PROPS,\n ...SEED_DATA_PROPS,\n multiline: {\n group: GROUPS.basic,\n label: \"Multiple Lines\",\n description:\n \"Allows multiple lines of input, useful for situations where the user may be typing in a lot of data.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n numberOfLines: {\n group: GROUPS.basic,\n label: \"Number of Lines\",\n description:\n \"Sets the number of lines for the input (Multiple Lines needs to be true)\",\n editable: true,\n required: false,\n defaultValue: null,\n min: 0,\n step: 1,\n precision: 0,\n formType: FORM_TYPES.number,\n propType: PROP_TYPES.NUMBER,\n },\n scrollEnabled: {\n group: GROUPS.basic,\n label: \"Scroll Enabled\",\n description:\n \"If false, scrolling of the input will be disabled. Only works when Multiple Lines is true\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n spellcheck: {\n group: GROUPS.basic,\n label: \"Disable Spell Check\",\n description:\n \"If false, disables spell-check style (red underlines). Default comes from Auto Correct\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n },\n textContentType: {\n group: GROUPS.advanced,\n label: \"Text Content Type\",\n description:\n \"Give the keyboard and system about what it should do with the input. For example, if its an address, autofill from address book\",\n editable: true,\n required: false,\n defaultValue: null,\n options: [\n \"none\",\n \"URL\",\n \"addressCity\",\n \"addressCityAndState\",\n \"addressState\",\n \"countryName\",\n \"creditCardNumber\",\n \"emailAddress\",\n \"familyName\",\n \"fullStreetAddress\",\n \"givenName\",\n \"jobTitle\",\n \"location\",\n \"middleName\",\n \"name\",\n \"namePrefix\",\n \"nameSuffix\",\n \"nickname\",\n \"organizationName\",\n \"postalCode\",\n \"streetAddressLine1\",\n \"streetAddressLine2\",\n \"sublocality\",\n \"telephoneNumber\",\n \"username\",\n \"password\",\n ],\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n },\n textBreakStrategy: {\n group: GROUPS.advanced,\n label: \"Text Break Strategy\",\n description:\n \"(Android Only) Set the text break strategy. (Default: simple)\",\n editable: true,\n required: false,\n defaultValue: null,\n options: [\"simple\", \"highQuality\", \"balanced\"],\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n },\n },\n },\n {\n name: \"Number Input\",\n tag: \"NumberInput\",\n description: \"An input field that allows users to type in data.\",\n category: COMPONENT_TYPES.input,\n preview_image_url:\n \"https://res.cloudinary.com/altos/image/upload/draftbit/Jigsaw/TextInput.png\",\n supports_list_render: false,\n layout: {\n borderLeftWidth: 1,\n borderRightWidth: 1,\n borderTopWidth: 1,\n borderBottomWidth: 1,\n borderColor: \"divider\",\n paddingLeft: 8,\n paddingRight: 8,\n paddingTop: 8,\n paddingBottom: 8,\n borderRadius: 8,\n },\n triggers: [Triggers.OnChangeText],\n props: {\n ...NUMBER_INPUT_PROPS,\n ...SEED_DATA_PROPS,\n },\n },\n];\n"]}
@@ -5,13 +5,6 @@ import { View, StyleSheet } from "react-native";
5
5
  import { useTheme } from "../../theming";
6
6
  import Touchable from "../Touchable";
7
7
  import { usePrevious } from "../../hooks";
8
- export let CheckboxStatus;
9
-
10
- (function (CheckboxStatus) {
11
- CheckboxStatus["Checked"] = "checked";
12
- CheckboxStatus["Unchecked"] = "unchecked";
13
- CheckboxStatus["Indeterminate"] = "indeterminate";
14
- })(CheckboxStatus || (CheckboxStatus = {}));
15
8
 
16
9
  const Checkbox = ({
17
10
  Icon,
@@ -20,17 +13,15 @@ const Checkbox = ({
20
13
  onPress = () => {},
21
14
  color,
22
15
  uncheckedColor,
23
- indeterminateColor,
24
16
  initialValue,
25
17
  defaultValue,
26
18
  checkedIcon = "MaterialCommunityIcons/checkbox-marked",
27
19
  uncheckedIcon = "MaterialCommunityIcons/checkbox-blank-outline",
28
- indeterminateIcon = "AntDesign/minussquareo",
29
20
  size = 24,
30
21
  style,
31
22
  ...rest
32
23
  }) => {
33
- const [internalValue, setInternalValue] = React.useState(status || defaultValue || CheckboxStatus.Unchecked);
24
+ const [internalValue, setInternalValue] = React.useState(status || defaultValue || false);
34
25
  React.useEffect(() => {
35
26
  if (status != null) {
36
27
  setInternalValue(status);
@@ -50,21 +41,11 @@ const Checkbox = ({
50
41
  const {
51
42
  colors
52
43
  } = useTheme();
53
- const colorsMap = {
54
- [CheckboxStatus.Checked]: color || colors.primary,
55
- [CheckboxStatus.Unchecked]: uncheckedColor || colors.primary,
56
- [CheckboxStatus.Indeterminate]: indeterminateColor || colors.light
57
- };
58
- const iconsMap = {
59
- [CheckboxStatus.Checked]: checkedIcon,
60
- [CheckboxStatus.Unchecked]: uncheckedIcon,
61
- [CheckboxStatus.Indeterminate]: indeterminateIcon
62
- };
63
- const checkboxColor = colorsMap[internalValue];
44
+ const checkboxColor = internalValue ? color || colors.primary : uncheckedColor || colors.primary;
64
45
 
65
46
  const handlePress = () => {
66
- setInternalValue(internalValue === CheckboxStatus.Unchecked ? CheckboxStatus.Checked : CheckboxStatus.Unchecked);
67
- onPress(internalValue === CheckboxStatus.Unchecked);
47
+ setInternalValue(!internalValue);
48
+ onPress(!internalValue);
68
49
  };
69
50
 
70
51
  return /*#__PURE__*/React.createElement(Touchable, _extends({}, rest, {
@@ -81,7 +62,7 @@ const Checkbox = ({
81
62
  }]
82
63
  }), /*#__PURE__*/React.createElement(Icon, {
83
64
  style: styles.icon,
84
- name: iconsMap[internalValue],
65
+ name: internalValue ? checkedIcon : uncheckedIcon,
85
66
  size: size,
86
67
  color: checkboxColor
87
68
  }), /*#__PURE__*/React.createElement(View, {
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.tsx"],"names":["React","View","StyleSheet","useTheme","Touchable","usePrevious","CheckboxStatus","Checkbox","Icon","status","disabled","onPress","color","uncheckedColor","indeterminateColor","initialValue","defaultValue","checkedIcon","uncheckedIcon","indeterminateIcon","size","style","rest","internalValue","setInternalValue","useState","Unchecked","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"],"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 { 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,\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 || CheckboxStatus.Unchecked\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\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[internalValue];\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"]}
1
+ {"version":3,"sources":["Checkbox.tsx"],"names":["React","View","StyleSheet","useTheme","Touchable","usePrevious","Checkbox","Icon","status","disabled","onPress","color","uncheckedColor","initialValue","defaultValue","checkedIcon","uncheckedIcon","size","style","rest","internalValue","setInternalValue","useState","useEffect","previousInitialValue","colors","checkboxColor","primary","handlePress","styles","container","width","height","icon","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SACEC,IADF,EAEEC,UAFF,QAMO,cANP;AAOA,SAASC,QAAT,QAAyB,eAAzB;AAGA,OAAOC,SAAP,MAAsB,cAAtB;AACA,SAASC,WAAT,QAA4B,aAA5B;;AAgBA,MAAMC,QAAsE,GAC1E,CAAC;AACCC,EAAAA,IADD;AAECC,EAAAA,MAFD;AAGCC,EAAAA,QAAQ,GAAG,KAHZ;AAICC,EAAAA,OAAO,GAAG,MAAM,CAAE,CAJnB;AAKCC,EAAAA,KALD;AAMCC,EAAAA,cAND;AAOCC,EAAAA,YAPD;AAQCC,EAAAA,YARD;AASCC,EAAAA,WAAW,GAAG,wCATf;AAUCC,EAAAA,aAAa,GAAG,+CAVjB;AAWCC,EAAAA,IAAI,GAAG,EAXR;AAYCC,EAAAA,KAZD;AAaC,KAAGC;AAbJ,CAAD,KAcM;AACJ,QAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCrB,KAAK,CAACsB,QAAN,CACxCd,MAAM,IAAIM,YAAV,IAA0B,KADc,CAA1C;AAIAd,EAAAA,KAAK,CAACuB,SAAN,CAAgB,MAAM;AACpB,QAAIf,MAAM,IAAI,IAAd,EAAoB;AAClBa,MAAAA,gBAAgB,CAACb,MAAD,CAAhB;AACD;AACF,GAJD,EAIG,CAACA,MAAD,CAJH;AAMAR,EAAAA,KAAK,CAACuB,SAAN,CAAgB,MAAM;AACpB,QAAIT,YAAY,IAAI,IAApB,EAA0B;AACxBO,MAAAA,gBAAgB,CAACP,YAAD,CAAhB;AACD;AACF,GAJD,EAIG,CAACA,YAAD,CAJH;AAMA,QAAMU,oBAAoB,GAAGnB,WAAW,CAACQ,YAAD,CAAxC;AACAb,EAAAA,KAAK,CAACuB,SAAN,CAAgB,MAAM;AACpB,QAAIV,YAAY,KAAKW,oBAArB,EAA2C;AACzCd,MAAAA,OAAO,CAACG,YAAD,CAAP;AACD;AACF,GAJD,EAIG,CAACA,YAAD,EAAeW,oBAAf,EAAqCd,OAArC,CAJH;AAKA,QAAM;AAAEe,IAAAA;AAAF,MAAatB,QAAQ,EAA3B;AAEA,QAAMuB,aAAa,GAAGN,aAAa,GAC/BT,KAAK,IAAIc,MAAM,CAACE,OADe,GAE/Bf,cAAc,IAAIa,MAAM,CAACE,OAF7B;;AAIA,QAAMC,WAAW,GAAG,MAAM;AACxBP,IAAAA,gBAAgB,CAAC,CAACD,aAAF,CAAhB;AACAV,IAAAA,OAAO,CAAC,CAACU,aAAF,CAAP;AACD,GAHD;;AAKA,sBACE,oBAAC,SAAD,eACMD,IADN;AAEE,IAAA,OAAO,EAAES,WAFX;AAGE,IAAA,QAAQ,EAAEnB,QAHZ;AAIE,IAAA,kBAAkB,EAAE;AAAEA,MAAAA;AAAF,KAJtB;AAKE,IAAA,iBAAiB,EAAC,QALpB;AAME,IAAA,uBAAuB,EAAC,QAN1B;AAOE,IAAA,KAAK,EAAE,CAACoB,MAAM,CAACC,SAAR,EAAmBZ,KAAnB,EAA0B;AAAEa,MAAAA,KAAK,EAAEd,IAAT;AAAee,MAAAA,MAAM,EAAEf;AAAvB,KAA1B;AAPT,mBASE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAEY,MAAM,CAACI,IADhB;AAEE,IAAA,IAAI,EAAEb,aAAa,GAAGL,WAAH,GAAiBC,aAFtC;AAGE,IAAA,IAAI,EAAEC,IAHR;AAIE,IAAA,KAAK,EAAES;AAJT,IATF,eAeE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAACxB,UAAU,CAACgC,YAAZ,EAA0BL,MAAM,CAACM,aAAjC;AAAb,kBACE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CACLN,MAAM,CAACO,IADF,EAEL;AAAEC,MAAAA,OAAO,EAAE5B,QAAQ,GAAG,GAAH,GAAS;AAA5B,KAFK,EAGL;AAAE6B,MAAAA,WAAW,EAAEZ;AAAf,KAHK;AADT,IADF,CAfF,CADF;AA2BD,CA5EH;;AA8EA,MAAMG,MAAM,GAAG3B,UAAU,CAACqC,MAAX,CAAkB;AAC/BT,EAAAA,SAAS,EAAE;AACTU,IAAAA,YAAY,EAAE;AADL,GADoB;AAI/BL,EAAAA,aAAa,EAAE;AACbM,IAAAA,UAAU,EAAE,QADC;AAEbC,IAAAA,cAAc,EAAE;AAFH,GAJgB;AAQ/BT,EAAAA,IAAI,EAAE;AACJU,IAAAA,SAAS,EAAE;AADP,GARyB;AAW/BP,EAAAA,IAAI,EAAE;AACJI,IAAAA,YAAY,EAAE,CADV;AAEJT,IAAAA,KAAK,EAAE,EAFH;AAGJC,IAAAA,MAAM,EAAE,EAHJ;AAIJW,IAAAA,SAAS,EAAE;AAJP;AAXyB,CAAlB,CAAf;AAmBA,eAAerC,QAAf","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport interface CheckboxProps {\n status?: boolean;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n initialValue?: boolean; // deprecated\n defaultValue?: boolean;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status,\n disabled = false,\n onPress = () => {},\n color,\n uncheckedColor,\n initialValue,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<boolean>(\n status || defaultValue || false\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\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 checkboxColor = internalValue\n ? color || colors.primary\n : uncheckedColor || colors.primary;\n\n const handlePress = () => {\n setInternalValue(!internalValue);\n onPress(!internalValue);\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={internalValue ? checkedIcon : uncheckedIcon}\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"]}
@@ -2,7 +2,7 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
2
2
 
3
3
  import * as React from "react";
4
4
  import { StyleSheet, View, Platform } from "react-native";
5
- import Checkbox, { CheckboxStatus } from "./Checkbox";
5
+ import Checkbox from "./Checkbox";
6
6
  import Text from "../Text";
7
7
  import { useCheckboxGroupContext } from "./context";
8
8
  import { createTextProp, createTextStyle, createRowDirectionProp, createFieldNameProp, COMPONENT_TYPES, Triggers, createColorProp } from "@draftbit/types";
@@ -50,7 +50,6 @@ const CheckboxRow = ({
50
50
  style,
51
51
  color,
52
52
  uncheckedColor,
53
- indeterminateColor,
54
53
  ...rest
55
54
  }) => {
56
55
  const {
@@ -59,11 +58,11 @@ const CheckboxRow = ({
59
58
  direction: parentDirection
60
59
  } = useCheckboxGroupContext();
61
60
  const values = Array.isArray(selectedValues) ? selectedValues : [];
62
- const isChecked = status === CheckboxStatus.Checked || values.includes(value);
61
+ const isChecked = status || values.includes(value);
63
62
 
64
63
  const handlePress = () => {
65
64
  if (!disabled) {
66
- onPress(value);
65
+ onPress(!isChecked);
67
66
  onValueChange && onValueChange(value, !isChecked);
68
67
  }
69
68
  };
@@ -89,13 +88,12 @@ const CheckboxRow = ({
89
88
  }
90
89
  }, /*#__PURE__*/React.createElement(Checkbox, {
91
90
  Icon: Icon,
92
- status: status || values.includes(value) ? CheckboxStatus.Checked : CheckboxStatus.Unchecked,
91
+ status: status || values.includes(value),
93
92
  onPress: handlePress,
94
93
  style: checkboxStyle,
95
94
  disabled: disabled,
96
95
  color: color,
97
- uncheckedColor: uncheckedColor,
98
- indeterminateColor: indeterminateColor
96
+ uncheckedColor: uncheckedColor
99
97
  })));
100
98
  };
101
99
 
@@ -142,8 +140,8 @@ export const SEED_DATA = {
142
140
  }),
143
141
  direction: createRowDirectionProp(),
144
142
  fieldName: createFieldNameProp({
145
- defaultValue: "unchecked",
146
- valuePropName: "status",
143
+ defaultValue: "checkboxValue",
144
+ valuePropName: "value",
147
145
  handlerPropName: "onPress"
148
146
  }),
149
147
  color: createColorProp({
@@ -152,10 +150,6 @@ export const SEED_DATA = {
152
150
  uncheckedColor: createColorProp({
153
151
  label: "Unselected Color",
154
152
  description: "Color for the button when the checkbox is unchecked"
155
- }),
156
- indeterminateColor: createColorProp({
157
- label: "Indeterminate Color",
158
- description: "Color for the button when the checkbox is indeterminate"
159
153
  })
160
154
  }
161
155
  };