@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
@@ -1 +1 @@
1
- {"version":3,"sources":["CheckboxRow.tsx"],"names":["React","StyleSheet","View","Platform","Checkbox","CheckboxStatus","Text","useCheckboxGroupContext","createTextProp","createTextStyle","createRowDirectionProp","createFieldNameProp","COMPONENT_TYPES","Triggers","createColorProp","Direction","GroupDirection","Touchable","extractStyles","getCheckboxAlignment","parentDirection","direction","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","Checked","includes","handlePress","textStyles","viewStyles","styles","mainParent","flexDirection","alignItems","flex","Unchecked","create","justifyContent","paddingStart","minHeight","paddingEnd","select","web","cursor","userSelect","SEED_DATA","name","tag","category","input","layout","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":["React","StyleSheet","View","Platform","Checkbox","Text","useCheckboxGroupContext","createTextProp","createTextStyle","createRowDirectionProp","createFieldNameProp","COMPONENT_TYPES","Triggers","createColorProp","Direction","GroupDirection","Touchable","extractStyles","getCheckboxAlignment","parentDirection","direction","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","create","justifyContent","paddingStart","minHeight","paddingEnd","select","web","cursor","userSelect","SEED_DATA","name","tag","category","input","layout","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 } 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"]}
@@ -68,6 +68,7 @@ function Row({
68
68
  direction = RowDirection.Row,
69
69
  style,
70
70
  value,
71
+ defaultValue,
71
72
  disabled,
72
73
  onValueChange,
73
74
  activeTrackColor,
@@ -77,7 +78,7 @@ function Row({
77
78
  theme,
78
79
  ...rest
79
80
  }) {
80
- const [checked, setChecked] = React.useState(value);
81
+ const [checked, setChecked] = React.useState(value || defaultValue);
81
82
  React.useEffect(() => {
82
83
  if (value !== checked) {
83
84
  setChecked(value);
@@ -1 +1 @@
1
- {"version":3,"sources":["Switch.tsx"],"names":["React","Switch","NativeSwitch","withTheme","FormRow","RowDirection","usePrevious","value","initialValue","defaultValue","disabled","onValueChange","activeTrackColor","inactiveTrackColor","activeThumbColor","inactiveThumbColor","theme","style","rest","activeTrackThemeColor","colors","primary","inactiveTrackThemeColor","activeThumbThemeColor","inactiveThumbThemeColor","checked","setChecked","useState","useEffect","booleanInitialValue","Boolean","previousInitialValue","false","true","bool","Row","label","direction","SwitchRow"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n Switch as NativeSwitch,\n SwitchProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport FormRow from \"./FormRow\";\nimport { RowDirection } from \"@draftbit/types\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport { usePrevious } from \"../hooks\";\n\ntype Props = {\n value?: boolean;\n disabled?: boolean;\n onValueChange?: (value: boolean) => void;\n 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":["React","Switch","NativeSwitch","withTheme","FormRow","RowDirection","usePrevious","value","initialValue","defaultValue","disabled","onValueChange","activeTrackColor","inactiveTrackColor","activeThumbColor","inactiveThumbColor","theme","style","rest","activeTrackThemeColor","colors","primary","inactiveTrackThemeColor","activeThumbThemeColor","inactiveThumbThemeColor","checked","setChecked","useState","useEffect","booleanInitialValue","Boolean","previousInitialValue","false","true","bool","Row","label","direction","SwitchRow"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n Switch as NativeSwitch,\n SwitchProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport FormRow from \"./FormRow\";\nimport { RowDirection } from \"@draftbit/types\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport { usePrevious } from \"../hooks\";\n\ntype Props = {\n value?: boolean;\n disabled?: boolean;\n onValueChange?: (value: boolean) => void;\n 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"]}
@@ -22,12 +22,6 @@ export const SEED_DATA = {
22
22
  description: "Color for the button when the checkbox is unchecked",
23
23
  defaultValue: null
24
24
  }),
25
- indeterminateColor: createColorProp({
26
- group: GROUPS.basic,
27
- label: "Indeterminate Color",
28
- description: "Color for the button when the checkbox is indeterminate",
29
- defaultValue: null
30
- }),
31
25
  disabled: createBoolProp({
32
26
  label: "Disabled",
33
27
  description: "Whether the checkbox is disabled"
@@ -46,11 +40,6 @@ export const SEED_DATA = {
46
40
  label: "Unchecked Icon",
47
41
  description: 'Icon to show when the checkbox status is "unchecked"',
48
42
  defaultValue: null
49
- }),
50
- indeterminateIcon: createIconProp({
51
- label: "Indeterminate Icon",
52
- description: 'Icon to show when the checkbox status is "indeterminate"',
53
- defaultValue: null
54
43
  })
55
44
  }
56
45
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.js"],"names":["COMPONENT_TYPES","createBoolProp","createIconProp","createStaticNumberProp","createColorProp","createFieldNameProp","GROUPS","Triggers","SEED_DATA","name","tag","category","input","triggers","OnPress","props","fieldName","defaultValue","valuePropName","handlerPropName","color","group","basic","label","description","uncheckedColor","indeterminateColor","disabled","size","checkedIcon","uncheckedIcon","indeterminateIcon"],"mappings":"AAAA,SACEA,eADF,EAEEC,cAFF,EAGEC,cAHF,EAIEC,sBAJF,EAKEC,eALF,EAMEC,mBANF,EAOEC,MAPF,EAQEC,QARF,QASO,iBATP;AAWA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,UADiB;AAEvBC,EAAAA,GAAG,EAAE,UAFkB;AAGvBC,EAAAA,QAAQ,EAAEX,eAAe,CAACY,KAHH;AAIvBC,EAAAA,QAAQ,EAAE,CAACN,QAAQ,CAACO,OAAV,CAJa;AAKvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,SAAS,EAAEX,mBAAmB,CAAC;AAC7BY,MAAAA,YAAY,EAAE,eADe;AAE7BC,MAAAA,aAAa,EAAE,QAFc;AAG7BC,MAAAA,eAAe,EAAE;AAHY,KAAD,CADzB;AAMLC,IAAAA,KAAK,EAAEhB,eAAe,CAAC;AACrBiB,MAAAA,KAAK,EAAEf,MAAM,CAACgB,KADO;AAErBC,MAAAA,KAAK,EAAE,OAFc;AAGrBC,MAAAA,WAAW,EAAE,0DAHQ;AAIrBP,MAAAA,YAAY,EAAE;AAJO,KAAD,CANjB;AAYLQ,IAAAA,cAAc,EAAErB,eAAe,CAAC;AAC9BiB,MAAAA,KAAK,EAAEf,MAAM,CAACgB,KADgB;AAE9BC,MAAAA,KAAK,EAAE,kBAFuB;AAG9BC,MAAAA,WAAW,EAAE,qDAHiB;AAI9BP,MAAAA,YAAY,EAAE;AAJgB,KAAD,CAZ1B;AAkBLS,IAAAA,kBAAkB,EAAEtB,eAAe,CAAC;AAClCiB,MAAAA,KAAK,EAAEf,MAAM,CAACgB,KADoB;AAElCC,MAAAA,KAAK,EAAE,qBAF2B;AAGlCC,MAAAA,WAAW,EAAE,yDAHqB;AAIlCP,MAAAA,YAAY,EAAE;AAJoB,KAAD,CAlB9B;AAwBLU,IAAAA,QAAQ,EAAE1B,cAAc,CAAC;AACvBsB,MAAAA,KAAK,EAAE,UADgB;AAEvBC,MAAAA,WAAW,EAAE;AAFU,KAAD,CAxBnB;AA4BLI,IAAAA,IAAI,EAAEzB,sBAAsB,CAAC;AAC3BoB,MAAAA,KAAK,EAAE,MADoB;AAE3BC,MAAAA,WAAW,EAAE,gCAFc;AAG3BP,MAAAA,YAAY,EAAE;AAHa,KAAD,CA5BvB;AAiCLY,IAAAA,WAAW,EAAE3B,cAAc,CAAC;AAC1BqB,MAAAA,KAAK,EAAE,cADmB;AAE1BC,MAAAA,WAAW,EAAE,oDAFa;AAG1BP,MAAAA,YAAY,EAAE;AAHY,KAAD,CAjCtB;AAsCLa,IAAAA,aAAa,EAAE5B,cAAc,CAAC;AAC5BqB,MAAAA,KAAK,EAAE,gBADqB;AAE5BC,MAAAA,WAAW,EAAE,sDAFe;AAG5BP,MAAAA,YAAY,EAAE;AAHc,KAAD,CAtCxB;AA2CLc,IAAAA,iBAAiB,EAAE7B,cAAc,CAAC;AAChCqB,MAAAA,KAAK,EAAE,oBADyB;AAEhCC,MAAAA,WAAW,EAAE,0DAFmB;AAGhCP,MAAAA,YAAY,EAAE;AAHkB,KAAD;AA3C5B;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":["COMPONENT_TYPES","createBoolProp","createIconProp","createStaticNumberProp","createColorProp","createFieldNameProp","GROUPS","Triggers","SEED_DATA","name","tag","category","input","triggers","OnPress","props","fieldName","defaultValue","valuePropName","handlerPropName","color","group","basic","label","description","uncheckedColor","disabled","size","checkedIcon","uncheckedIcon"],"mappings":"AAAA,SACEA,eADF,EAEEC,cAFF,EAGEC,cAHF,EAIEC,sBAJF,EAKEC,eALF,EAMEC,mBANF,EAOEC,MAPF,EAQEC,QARF,QASO,iBATP;AAWA,OAAO,MAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,UADiB;AAEvBC,EAAAA,GAAG,EAAE,UAFkB;AAGvBC,EAAAA,QAAQ,EAAEX,eAAe,CAACY,KAHH;AAIvBC,EAAAA,QAAQ,EAAE,CAACN,QAAQ,CAACO,OAAV,CAJa;AAKvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,SAAS,EAAEX,mBAAmB,CAAC;AAC7BY,MAAAA,YAAY,EAAE,eADe;AAE7BC,MAAAA,aAAa,EAAE,QAFc;AAG7BC,MAAAA,eAAe,EAAE;AAHY,KAAD,CADzB;AAMLC,IAAAA,KAAK,EAAEhB,eAAe,CAAC;AACrBiB,MAAAA,KAAK,EAAEf,MAAM,CAACgB,KADO;AAErBC,MAAAA,KAAK,EAAE,OAFc;AAGrBC,MAAAA,WAAW,EAAE,0DAHQ;AAIrBP,MAAAA,YAAY,EAAE;AAJO,KAAD,CANjB;AAYLQ,IAAAA,cAAc,EAAErB,eAAe,CAAC;AAC9BiB,MAAAA,KAAK,EAAEf,MAAM,CAACgB,KADgB;AAE9BC,MAAAA,KAAK,EAAE,kBAFuB;AAG9BC,MAAAA,WAAW,EAAE,qDAHiB;AAI9BP,MAAAA,YAAY,EAAE;AAJgB,KAAD,CAZ1B;AAkBLS,IAAAA,QAAQ,EAAEzB,cAAc,CAAC;AACvBsB,MAAAA,KAAK,EAAE,UADgB;AAEvBC,MAAAA,WAAW,EAAE;AAFU,KAAD,CAlBnB;AAsBLG,IAAAA,IAAI,EAAExB,sBAAsB,CAAC;AAC3BoB,MAAAA,KAAK,EAAE,MADoB;AAE3BC,MAAAA,WAAW,EAAE,gCAFc;AAG3BP,MAAAA,YAAY,EAAE;AAHa,KAAD,CAtBvB;AA2BLW,IAAAA,WAAW,EAAE1B,cAAc,CAAC;AAC1BqB,MAAAA,KAAK,EAAE,cADmB;AAE1BC,MAAAA,WAAW,EAAE,oDAFa;AAG1BP,MAAAA,YAAY,EAAE;AAHY,KAAD,CA3BtB;AAgCLY,IAAAA,aAAa,EAAE3B,cAAc,CAAC;AAC5BqB,MAAAA,KAAK,EAAE,gBADqB;AAE5BC,MAAAA,WAAW,EAAE,sDAFe;AAG5BP,MAAAA,YAAY,EAAE;AAHc,KAAD;AAhCxB;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"]}
@@ -165,10 +165,7 @@ export const SEED_DATA = [{
165
165
  },
166
166
  triggers: [Triggers.OnChangeText],
167
167
  props: { ...NUMBER_INPUT_PROPS,
168
- ...SEED_DATA_PROPS,
169
- placeholder: { ...NUMBER_INPUT_PROPS.placeholder,
170
- defaultValue: "Input a number… "
171
- }
168
+ ...SEED_DATA_PROPS
172
169
  }
173
170
  }];
174
171
  //# sourceMappingURL=TextInput.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["TextInput.js"],"names":["GROUPS","COMPONENT_TYPES","FORM_TYPES","PROP_TYPES","FIELD_NAME","TEXT_INPUT_PROPS","NUMBER_INPUT_PROPS","Triggers","SEED_DATA_PROPS","style","group","basic","label","description","editable","required","formType","typeStyle","propType","THEME","defaultValue","clearButtonMode","options","flatArray","STRING","clearTextOnFocus","boolean","BOOLEAN","enablesReturnKeyAutomatically","underlineColorAndroid","color","fieldName","handlerPropName","SEED_DATA","name","tag","category","input","preview_image_url","supports_list_render","layout","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","borderColor","paddingLeft","paddingRight","paddingTop","paddingBottom","borderRadius","triggers","OnChangeText","props","multiline","numberOfLines","min","step","precision","number","NUMBER","scrollEnabled","spellcheck","textContentType","advanced","textBreakStrategy","placeholder"],"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 placeholder: {\n ...NUMBER_INPUT_PROPS.placeholder,\n defaultValue: \"Input a number… \",\n },\n },\n },\n];\n"]}
1
+ {"version":3,"sources":["TextInput.js"],"names":["GROUPS","COMPONENT_TYPES","FORM_TYPES","PROP_TYPES","FIELD_NAME","TEXT_INPUT_PROPS","NUMBER_INPUT_PROPS","Triggers","SEED_DATA_PROPS","style","group","basic","label","description","editable","required","formType","typeStyle","propType","THEME","defaultValue","clearButtonMode","options","flatArray","STRING","clearTextOnFocus","boolean","BOOLEAN","enablesReturnKeyAutomatically","underlineColorAndroid","color","fieldName","handlerPropName","SEED_DATA","name","tag","category","input","preview_image_url","supports_list_render","layout","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","borderColor","paddingLeft","paddingRight","paddingTop","paddingBottom","borderRadius","triggers","OnChangeText","props","multiline","numberOfLines","min","step","precision","number","NUMBER","scrollEnabled","spellcheck","textContentType","advanced","textBreakStrategy"],"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"]}
@@ -1,23 +1,16 @@
1
1
  import * as React from "react";
2
2
  import { TouchableHighlightProps, StyleProp, ViewStyle } from "react-native";
3
3
  import type { IconSlot } from "../../interfaces/Icon";
4
- export declare enum CheckboxStatus {
5
- Checked = "checked",
6
- Unchecked = "unchecked",
7
- Indeterminate = "indeterminate"
8
- }
9
4
  export interface CheckboxProps {
10
- status?: CheckboxStatus;
5
+ status?: boolean;
11
6
  disabled?: boolean;
12
7
  onPress?: (checked: boolean) => void;
13
8
  color?: string;
14
9
  uncheckedColor?: string;
15
- indeterminateColor?: string;
16
10
  checkedIcon?: string;
17
11
  uncheckedIcon?: string;
18
- indeterminateIcon?: string;
19
12
  initialValue?: boolean;
20
- defaultValue?: CheckboxStatus;
13
+ defaultValue?: boolean;
21
14
  size?: number;
22
15
  style?: StyleProp<ViewStyle>;
23
16
  }
@@ -12,11 +12,10 @@ export interface CheckboxRowProps extends Omit<CheckboxProps, "onPress"> {
12
12
  labelContainerStyle: StyleProp<ViewStyle>;
13
13
  checkboxStyle?: StyleProp<ViewStyle>;
14
14
  labelStyle?: StyleProp<TextStyle>;
15
- onPress?: (value: string) => void;
15
+ onPress?: (status: boolean) => void;
16
16
  direction?: Direction;
17
17
  color: string;
18
18
  unselectedColor: string;
19
- indeterminateColor: string;
20
19
  }
21
20
  declare const CheckboxRow: React.FC<CheckboxRowProps & IconSlot>;
22
21
  export default CheckboxRow;
@@ -83,15 +82,5 @@ export declare const SEED_DATA: {
83
82
  formType: string;
84
83
  propType: string;
85
84
  };
86
- indeterminateColor: {
87
- group: string;
88
- label: string;
89
- description: string;
90
- editable: boolean;
91
- required: boolean;
92
- defaultValue: null;
93
- formType: string;
94
- propType: string;
95
- };
96
85
  };
97
86
  };
@@ -20,7 +20,7 @@ declare type RowProps = {
20
20
  direction: RowDirection;
21
21
  style?: StyleProp<ViewStyle>;
22
22
  };
23
- declare function Row({ label, direction, style, value, disabled, onValueChange, activeTrackColor, inactiveTrackColor, activeThumbColor, inactiveThumbColor, theme, ...rest }: Props & RowProps): JSX.Element;
23
+ declare function Row({ label, direction, style, value, defaultValue, disabled, onValueChange, activeTrackColor, inactiveTrackColor, activeThumbColor, inactiveThumbColor, theme, ...rest }: Props & RowProps): JSX.Element;
24
24
  declare const SwitchRow: React.ComponentType<import("@draftbit/react-theme-provider").$Without<{
25
25
  value?: boolean | undefined;
26
26
  disabled?: boolean | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@draftbit/core",
3
- "version": "42.4.6-75ef33.0+75ef33f2",
3
+ "version": "42.4.6-7e6a42.0+7e6a42fd",
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": "75ef33f25c394d76c052b5546ffcd871e8d9cb40"
98
+ "gitHead": "7e6a42fdb0152df913abdf0fd3963116ded6f2f9"
99
99
  }
@@ -3,14 +3,8 @@ import { View, StyleSheet, } from "react-native";
3
3
  import { useTheme } from "../../theming";
4
4
  import Touchable from "../Touchable";
5
5
  import { usePrevious } from "../../hooks";
6
- export var CheckboxStatus;
7
- (function (CheckboxStatus) {
8
- CheckboxStatus["Checked"] = "checked";
9
- CheckboxStatus["Unchecked"] = "unchecked";
10
- CheckboxStatus["Indeterminate"] = "indeterminate";
11
- })(CheckboxStatus || (CheckboxStatus = {}));
12
- const Checkbox = ({ Icon, status, disabled = false, onPress = () => { }, color, uncheckedColor, indeterminateColor, initialValue, defaultValue, checkedIcon = "MaterialCommunityIcons/checkbox-marked", uncheckedIcon = "MaterialCommunityIcons/checkbox-blank-outline", indeterminateIcon = "AntDesign/minussquareo", size = 24, style, ...rest }) => {
13
- const [internalValue, setInternalValue] = React.useState(status || defaultValue || CheckboxStatus.Unchecked);
6
+ const Checkbox = ({ Icon, status, disabled = false, onPress = () => { }, color, uncheckedColor, initialValue, defaultValue, checkedIcon = "MaterialCommunityIcons/checkbox-marked", uncheckedIcon = "MaterialCommunityIcons/checkbox-blank-outline", size = 24, style, ...rest }) => {
7
+ const [internalValue, setInternalValue] = React.useState(status || defaultValue || false);
14
8
  React.useEffect(() => {
15
9
  if (status != null) {
16
10
  setInternalValue(status);
@@ -28,25 +22,15 @@ const Checkbox = ({ Icon, status, disabled = false, onPress = () => { }, color,
28
22
  }
29
23
  }, [initialValue, previousInitialValue, onPress]);
30
24
  const { colors } = useTheme();
31
- const colorsMap = {
32
- [CheckboxStatus.Checked]: color || colors.primary,
33
- [CheckboxStatus.Unchecked]: uncheckedColor || colors.primary,
34
- [CheckboxStatus.Indeterminate]: indeterminateColor || colors.light,
35
- };
36
- const iconsMap = {
37
- [CheckboxStatus.Checked]: checkedIcon,
38
- [CheckboxStatus.Unchecked]: uncheckedIcon,
39
- [CheckboxStatus.Indeterminate]: indeterminateIcon,
40
- };
41
- const checkboxColor = colorsMap[internalValue];
25
+ const checkboxColor = internalValue
26
+ ? color || colors.primary
27
+ : uncheckedColor || colors.primary;
42
28
  const handlePress = () => {
43
- setInternalValue(internalValue === CheckboxStatus.Unchecked
44
- ? CheckboxStatus.Checked
45
- : CheckboxStatus.Unchecked);
46
- onPress(internalValue === CheckboxStatus.Unchecked);
29
+ setInternalValue(!internalValue);
30
+ onPress(!internalValue);
47
31
  };
48
32
  return (React.createElement(Touchable, { ...rest, onPress: handlePress, disabled: disabled, accessibilityState: { disabled }, accessibilityRole: "button", accessibilityLiveRegion: "polite", style: [styles.container, style, { width: size, height: size }] },
49
- React.createElement(Icon, { style: styles.icon, name: iconsMap[internalValue], size: size, color: checkboxColor }),
33
+ React.createElement(Icon, { style: styles.icon, name: internalValue ? checkedIcon : uncheckedIcon, size: size, color: checkboxColor }),
50
34
  React.createElement(View, { style: [StyleSheet.absoluteFill, styles.fillContainer] },
51
35
  React.createElement(View, { style: [
52
36
  styles.fill,
@@ -12,24 +12,16 @@ import type { IconSlot } from "../../interfaces/Icon";
12
12
  import Touchable from "../Touchable";
13
13
  import { usePrevious } from "../../hooks";
14
14
 
15
- export enum CheckboxStatus {
16
- Checked = "checked",
17
- Unchecked = "unchecked",
18
- Indeterminate = "indeterminate",
19
- }
20
-
21
15
  export interface CheckboxProps {
22
- status?: CheckboxStatus;
16
+ status?: boolean;
23
17
  disabled?: boolean;
24
18
  onPress?: (checked: boolean) => void;
25
19
  color?: string;
26
20
  uncheckedColor?: string;
27
- indeterminateColor?: string;
28
21
  checkedIcon?: string;
29
22
  uncheckedIcon?: string;
30
- indeterminateIcon?: string;
31
23
  initialValue?: boolean; // deprecated
32
- defaultValue?: CheckboxStatus;
24
+ defaultValue?: boolean;
33
25
  size?: number;
34
26
  style?: StyleProp<ViewStyle>;
35
27
  }
@@ -42,18 +34,16 @@ const Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =
42
34
  onPress = () => {},
43
35
  color,
44
36
  uncheckedColor,
45
- indeterminateColor,
46
37
  initialValue,
47
38
  defaultValue,
48
39
  checkedIcon = "MaterialCommunityIcons/checkbox-marked",
49
40
  uncheckedIcon = "MaterialCommunityIcons/checkbox-blank-outline",
50
- indeterminateIcon = "AntDesign/minussquareo",
51
41
  size = 24,
52
42
  style,
53
43
  ...rest
54
44
  }) => {
55
- const [internalValue, setInternalValue] = React.useState<CheckboxStatus>(
56
- status || defaultValue || CheckboxStatus.Unchecked
45
+ const [internalValue, setInternalValue] = React.useState<boolean>(
46
+ status || defaultValue || false
57
47
  );
58
48
 
59
49
  React.useEffect(() => {
@@ -76,27 +66,13 @@ const Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =
76
66
  }, [initialValue, previousInitialValue, onPress]);
77
67
  const { colors } = useTheme();
78
68
 
79
- const colorsMap = {
80
- [CheckboxStatus.Checked]: color || colors.primary,
81
- [CheckboxStatus.Unchecked]: uncheckedColor || colors.primary,
82
- [CheckboxStatus.Indeterminate]: indeterminateColor || colors.light,
83
- };
84
-
85
- const iconsMap = {
86
- [CheckboxStatus.Checked]: checkedIcon,
87
- [CheckboxStatus.Unchecked]: uncheckedIcon,
88
- [CheckboxStatus.Indeterminate]: indeterminateIcon,
89
- };
90
-
91
- const checkboxColor = colorsMap[internalValue];
69
+ const checkboxColor = internalValue
70
+ ? color || colors.primary
71
+ : uncheckedColor || colors.primary;
92
72
 
93
73
  const handlePress = () => {
94
- setInternalValue(
95
- internalValue === CheckboxStatus.Unchecked
96
- ? CheckboxStatus.Checked
97
- : CheckboxStatus.Unchecked
98
- );
99
- onPress(internalValue === CheckboxStatus.Unchecked);
74
+ setInternalValue(!internalValue);
75
+ onPress(!internalValue);
100
76
  };
101
77
 
102
78
  return (
@@ -111,7 +87,7 @@ const Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =
111
87
  >
112
88
  <Icon
113
89
  style={styles.icon}
114
- name={iconsMap[internalValue]}
90
+ name={internalValue ? checkedIcon : uncheckedIcon}
115
91
  size={size}
116
92
  color={checkboxColor}
117
93
  />
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  import { StyleSheet, View, Platform, } from "react-native";
3
- import Checkbox, { CheckboxStatus } from "./Checkbox";
3
+ import Checkbox from "./Checkbox";
4
4
  import Text from "../Text";
5
5
  import { useCheckboxGroupContext } from "./context";
6
6
  import { createTextProp, createTextStyle, createRowDirectionProp, createFieldNameProp, COMPONENT_TYPES, Triggers, createColorProp, } from "@draftbit/types";
@@ -31,13 +31,13 @@ const renderLabel = (value, labelStyle, textStyle) => {
31
31
  return React.createElement(React.Fragment, null, value);
32
32
  }
33
33
  };
34
- const CheckboxRow = ({ Icon, label = "Label", value, onPress = () => { }, labelContainerStyle, labelStyle, checkboxStyle, direction = Direction.Row, status, disabled, style, color, uncheckedColor, indeterminateColor, ...rest }) => {
34
+ const CheckboxRow = ({ Icon, label = "Label", value, onPress = () => { }, labelContainerStyle, labelStyle, checkboxStyle, direction = Direction.Row, status, disabled, style, color, uncheckedColor, ...rest }) => {
35
35
  const { values: selectedValues, onValueChange, direction: parentDirection, } = useCheckboxGroupContext();
36
36
  const values = Array.isArray(selectedValues) ? selectedValues : [];
37
- const isChecked = status === CheckboxStatus.Checked || values.includes(value);
37
+ const isChecked = status || values.includes(value);
38
38
  const handlePress = () => {
39
39
  if (!disabled) {
40
- onPress(value);
40
+ onPress(!isChecked);
41
41
  onValueChange && onValueChange(value, !isChecked);
42
42
  }
43
43
  };
@@ -54,9 +54,7 @@ const CheckboxRow = ({ Icon, label = "Label", value, onPress = () => { }, labelC
54
54
  flex: 1,
55
55
  alignItems: getCheckboxAlignment(parentDirection, direction),
56
56
  } },
57
- React.createElement(Checkbox, { Icon: Icon, status: status || values.includes(value)
58
- ? CheckboxStatus.Checked
59
- : CheckboxStatus.Unchecked, onPress: handlePress, style: checkboxStyle, disabled: disabled, color: color, uncheckedColor: uncheckedColor, indeterminateColor: indeterminateColor }))));
57
+ React.createElement(Checkbox, { Icon: Icon, status: status || values.includes(value), onPress: handlePress, style: checkboxStyle, disabled: disabled, color: color, uncheckedColor: uncheckedColor }))));
60
58
  };
61
59
  const styles = StyleSheet.create({
62
60
  mainParent: {
@@ -101,8 +99,8 @@ export const SEED_DATA = {
101
99
  }),
102
100
  direction: createRowDirectionProp(),
103
101
  fieldName: createFieldNameProp({
104
- defaultValue: "unchecked",
105
- valuePropName: "status",
102
+ defaultValue: "checkboxValue",
103
+ valuePropName: "value",
106
104
  handlerPropName: "onPress",
107
105
  }),
108
106
  color: createColorProp({
@@ -112,9 +110,5 @@ export const SEED_DATA = {
112
110
  label: "Unselected Color",
113
111
  description: "Color for the button when the checkbox is unchecked",
114
112
  }),
115
- indeterminateColor: createColorProp({
116
- label: "Indeterminate Color",
117
- description: "Color for the button when the checkbox is indeterminate",
118
- }),
119
113
  },
120
114
  };
@@ -7,7 +7,7 @@ import {
7
7
  View,
8
8
  Platform,
9
9
  } from "react-native";
10
- import Checkbox, { CheckboxProps, CheckboxStatus } from "./Checkbox";
10
+ import Checkbox, { CheckboxProps } from "./Checkbox";
11
11
  import Text from "../Text";
12
12
  import { useCheckboxGroupContext } from "./context";
13
13
  import {
@@ -31,15 +31,14 @@ export enum Direction {
31
31
 
32
32
  export interface CheckboxRowProps extends Omit<CheckboxProps, "onPress"> {
33
33
  label: string | React.ReactNode;
34
- value: string;
34
+ value: string; // A string that this checkbox represents
35
35
  labelContainerStyle: StyleProp<ViewStyle>;
36
36
  checkboxStyle?: StyleProp<ViewStyle>;
37
37
  labelStyle?: StyleProp<TextStyle>;
38
- onPress?: (value: string) => void;
38
+ onPress?: (status: boolean) => void;
39
39
  direction?: Direction;
40
40
  color: string;
41
41
  unselectedColor: string;
42
- indeterminateColor: string;
43
42
  }
44
43
 
45
44
  const getCheckboxAlignment = (
@@ -81,7 +80,6 @@ const CheckboxRow: React.FC<CheckboxRowProps & IconSlot> = ({
81
80
  style,
82
81
  color,
83
82
  uncheckedColor,
84
- indeterminateColor,
85
83
  ...rest
86
84
  }) => {
87
85
  const {
@@ -91,11 +89,11 @@ const CheckboxRow: React.FC<CheckboxRowProps & IconSlot> = ({
91
89
  } = useCheckboxGroupContext();
92
90
 
93
91
  const values = Array.isArray(selectedValues) ? selectedValues : [];
94
- const isChecked = status === CheckboxStatus.Checked || values.includes(value);
92
+ const isChecked = status || values.includes(value);
95
93
 
96
94
  const handlePress = () => {
97
95
  if (!disabled) {
98
- onPress(value);
96
+ onPress(!isChecked);
99
97
  onValueChange && onValueChange(value, !isChecked);
100
98
  }
101
99
  };
@@ -128,17 +126,12 @@ const CheckboxRow: React.FC<CheckboxRowProps & IconSlot> = ({
128
126
  >
129
127
  <Checkbox
130
128
  Icon={Icon}
131
- status={
132
- status || values.includes(value)
133
- ? CheckboxStatus.Checked
134
- : CheckboxStatus.Unchecked
135
- }
129
+ status={status || values.includes(value)}
136
130
  onPress={handlePress}
137
131
  style={checkboxStyle}
138
132
  disabled={disabled}
139
133
  color={color}
140
134
  uncheckedColor={uncheckedColor}
141
- indeterminateColor={indeterminateColor}
142
135
  />
143
136
  </View>
144
137
  </Touchable>
@@ -190,8 +183,8 @@ export const SEED_DATA = {
190
183
  }),
191
184
  direction: createRowDirectionProp(),
192
185
  fieldName: createFieldNameProp({
193
- defaultValue: "unchecked",
194
- valuePropName: "status",
186
+ defaultValue: "checkboxValue",
187
+ valuePropName: "value",
195
188
  handlerPropName: "onPress",
196
189
  }),
197
190
  color: createColorProp({
@@ -201,9 +194,5 @@ export const SEED_DATA = {
201
194
  label: "Unselected Color",
202
195
  description: "Color for the button when the checkbox is unchecked",
203
196
  }),
204
- indeterminateColor: createColorProp({
205
- label: "Indeterminate Color",
206
- description: "Color for the button when the checkbox is indeterminate",
207
- }),
208
197
  },
209
198
  };
@@ -44,8 +44,8 @@ function Switch({ value, initialValue, defaultValue, disabled, onValueChange, ac
44
44
  onValueChange && onValueChange(bool);
45
45
  }, ...rest }));
46
46
  }
47
- function Row({ label = "Label", direction = RowDirection.Row, style, value, disabled, onValueChange, activeTrackColor, inactiveTrackColor, activeThumbColor, inactiveThumbColor, theme, ...rest }) {
48
- const [checked, setChecked] = React.useState(value);
47
+ function Row({ label = "Label", direction = RowDirection.Row, style, value, defaultValue, disabled, onValueChange, activeTrackColor, inactiveTrackColor, activeThumbColor, inactiveThumbColor, theme, ...rest }) {
48
+ const [checked, setChecked] = React.useState(value || defaultValue);
49
49
  React.useEffect(() => {
50
50
  if (value !== checked) {
51
51
  setChecked(value);