@draftbit/core 42.4.1-3e3daf.0 → 42.4.2

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 (61) hide show
  1. package/lib/commonjs/components/Accordion/index.js.map +1 -1
  2. package/lib/commonjs/components/Checkbox/Checkbox.js +6 -4
  3. package/lib/commonjs/components/Checkbox/Checkbox.js.map +1 -1
  4. package/lib/commonjs/components/RadioButton/RadioButtonGroup.js +3 -1
  5. package/lib/commonjs/components/RadioButton/RadioButtonGroup.js.map +1 -1
  6. package/lib/commonjs/components/Slider.js +3 -1
  7. package/lib/commonjs/components/Slider.js.map +1 -1
  8. package/lib/commonjs/components/StarRating.js +3 -1
  9. package/lib/commonjs/components/StarRating.js.map +1 -1
  10. package/lib/commonjs/components/Stepper.js +4 -2
  11. package/lib/commonjs/components/Stepper.js.map +1 -1
  12. package/lib/commonjs/components/Switch.js +1 -4
  13. package/lib/commonjs/components/Switch.js.map +1 -1
  14. package/lib/commonjs/components/ToggleButton.js +3 -1
  15. package/lib/commonjs/components/ToggleButton.js.map +1 -1
  16. package/lib/commonjs/index.js +0 -8
  17. package/lib/commonjs/index.js.map +1 -1
  18. package/lib/module/components/ActionSheet/ActionSheetCancel.js.map +1 -1
  19. package/lib/module/components/Carousel.js +5 -4
  20. package/lib/module/components/Carousel.js.map +1 -1
  21. package/lib/module/components/Checkbox/Checkbox.js +6 -4
  22. package/lib/module/components/Checkbox/Checkbox.js.map +1 -1
  23. package/lib/module/components/RadioButton/RadioButtonGroup.js +3 -1
  24. package/lib/module/components/RadioButton/RadioButtonGroup.js.map +1 -1
  25. package/lib/module/components/Slider.js +3 -1
  26. package/lib/module/components/Slider.js.map +1 -1
  27. package/lib/module/components/StarRating.js +3 -1
  28. package/lib/module/components/StarRating.js.map +1 -1
  29. package/lib/module/components/Stepper.js +4 -2
  30. package/lib/module/components/Stepper.js.map +1 -1
  31. package/lib/module/components/Switch.js +1 -4
  32. package/lib/module/components/Switch.js.map +1 -1
  33. package/lib/module/components/ToggleButton.js +3 -1
  34. package/lib/module/components/ToggleButton.js.map +1 -1
  35. package/lib/module/index.js +0 -1
  36. package/lib/module/index.js.map +1 -1
  37. package/lib/typescript/src/index.d.ts +0 -1
  38. package/package.json +3 -5
  39. package/src/components/Checkbox/Checkbox.js +6 -4
  40. package/src/components/Checkbox/Checkbox.tsx +6 -4
  41. package/src/components/RadioButton/RadioButtonGroup.js +3 -1
  42. package/src/components/RadioButton/RadioButtonGroup.tsx +3 -1
  43. package/src/components/Slider.js +3 -1
  44. package/src/components/Slider.tsx +3 -1
  45. package/src/components/StarRating.js +3 -1
  46. package/src/components/StarRating.tsx +3 -1
  47. package/src/components/Stepper.js +4 -2
  48. package/src/components/Stepper.tsx +4 -2
  49. package/src/components/Switch.js +1 -4
  50. package/src/components/Switch.tsx +1 -5
  51. package/src/components/ToggleButton.js +3 -1
  52. package/src/components/ToggleButton.tsx +3 -1
  53. package/src/index.js +0 -1
  54. package/src/index.tsx +0 -1
  55. package/lib/commonjs/components/Youtube.js +0 -73
  56. package/lib/commonjs/components/Youtube.js.map +0 -1
  57. package/lib/module/components/Youtube.js +0 -59
  58. package/lib/module/components/Youtube.js.map +0 -1
  59. package/lib/typescript/src/components/Youtube.d.ts +0 -43
  60. package/src/components/Youtube.js +0 -38
  61. package/src/components/Youtube.tsx +0 -66
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;AACA","sourcesContent":["export { default as AccordionGroup } from \"./AccordionGroup\";\nexport { default as AccordionItem } from \"./AccordionItem\";\n"]}
1
+ {"version":3,"sources":["index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;AACA","sourcesContent":["export { default as AccordionGroup } from \"./AccordionGroup\";\nexport { default as AccordionItem } from \"./AccordionItem\";\n"]}
@@ -36,7 +36,7 @@ exports.CheckboxStatus = CheckboxStatus;
36
36
 
37
37
  const Checkbox = ({
38
38
  Icon,
39
- status = CheckboxStatus.Unchecked,
39
+ status,
40
40
  disabled = false,
41
41
  onPress = () => {},
42
42
  color,
@@ -51,9 +51,11 @@ const Checkbox = ({
51
51
  style,
52
52
  ...rest
53
53
  }) => {
54
- const [internalValue, setInternalValue] = React.useState(status || defaultValue);
54
+ const [internalValue, setInternalValue] = React.useState(status || defaultValue || CheckboxStatus.Unchecked);
55
55
  React.useEffect(() => {
56
- setInternalValue(status);
56
+ if (status != null) {
57
+ setInternalValue(status);
58
+ }
57
59
  }, [status]);
58
60
  const previousInitialValue = (0, _hooks.usePrevious)(initialValue);
59
61
  React.useEffect(() => {
@@ -74,7 +76,7 @@ const Checkbox = ({
74
76
  [CheckboxStatus.Unchecked]: uncheckedIcon,
75
77
  [CheckboxStatus.Indeterminate]: indeterminateIcon
76
78
  };
77
- const checkboxColor = colorsMap[status];
79
+ const checkboxColor = colorsMap[internalValue];
78
80
 
79
81
  const handlePress = () => {
80
82
  setInternalValue(internalValue === CheckboxStatus.Unchecked ? CheckboxStatus.Checked : CheckboxStatus.Unchecked);
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.tsx"],"names":["CheckboxStatus","Checkbox","Icon","status","Unchecked","disabled","onPress","color","uncheckedColor","indeterminateColor","initialValue","defaultValue","checkedIcon","uncheckedIcon","indeterminateIcon","size","style","rest","internalValue","setInternalValue","React","useState","useEffect","previousInitialValue","colors","colorsMap","Checked","primary","Indeterminate","light","iconsMap","checkboxColor","handlePress","styles","container","width","height","icon","StyleSheet","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","triggers","Triggers","OnPress","props","fieldName","valuePropName","handlerPropName","group","GROUPS","basic","label","description"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport enum CheckboxStatus {\n Checked = \"checked\",\n Unchecked = \"unchecked\",\n Indeterminate = \"indeterminate\",\n}\n\nexport interface CheckboxProps {\n status?: CheckboxStatus;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n indeterminateColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n indeterminateIcon?: string;\n initialValue?: boolean; // deprecated\n defaultValue?: CheckboxStatus;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status = CheckboxStatus.Unchecked,\n disabled = false,\n onPress = () => {},\n color,\n uncheckedColor,\n indeterminateColor,\n initialValue,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n indeterminateIcon = \"AntDesign/minussquareo\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<CheckboxStatus>(\n status || defaultValue\n );\n\n React.useEffect(() => {\n setInternalValue(status);\n }, [status]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onPress(initialValue);\n }\n }, [initialValue, previousInitialValue, onPress]);\n const { colors } = useTheme();\n\n const colorsMap = {\n [CheckboxStatus.Checked]: color || colors.primary,\n [CheckboxStatus.Unchecked]: uncheckedColor || colors.primary,\n [CheckboxStatus.Indeterminate]: indeterminateColor || colors.light,\n };\n\n const iconsMap = {\n [CheckboxStatus.Checked]: checkedIcon,\n [CheckboxStatus.Unchecked]: uncheckedIcon,\n [CheckboxStatus.Indeterminate]: indeterminateIcon,\n };\n\n const checkboxColor = colorsMap[status];\n\n const handlePress = () => {\n setInternalValue(\n internalValue === CheckboxStatus.Unchecked\n ? CheckboxStatus.Checked\n : CheckboxStatus.Unchecked\n );\n onPress(internalValue === CheckboxStatus.Unchecked);\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={iconsMap[internalValue]}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n\nexport const SEED_DATA = {\n name: \"Checkbox\",\n tag: \"Checkbox\",\n category: COMPONENT_TYPES.input,\n triggers: [Triggers.OnPress],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"checkboxValue\",\n valuePropName: \"status\",\n handlerPropName: \"onPress\",\n }),\n color: createColorProp({\n group: GROUPS.basic,\n label: \"Color\",\n description: \"Color for the button (used when the checkbox is checked)\",\n defaultValue: null,\n }),\n uncheckedColor: createColorProp({\n group: GROUPS.basic,\n label: \"Unselected Color\",\n description: \"Color for the button when the checkbox is unchecked\",\n defaultValue: null,\n }),\n indeterminateColor: createColorProp({\n group: GROUPS.basic,\n label: \"Indeterminate Color\",\n description: \"Color for the button when the checkbox is indeterminate\",\n defaultValue: null,\n }),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Whether the checkbox is disabled\",\n }),\n size: createStaticNumberProp({\n label: \"Size\",\n description: \"Specifies the size of the icon\",\n defaultValue: null,\n }),\n checkedIcon: createIconProp({\n label: \"Checked Icon\",\n description: 'Icon to show when the checkbox status is \"checked\"',\n defaultValue: null,\n }),\n uncheckedIcon: createIconProp({\n label: \"Unchecked Icon\",\n description: 'Icon to show when the checkbox status is \"unchecked\"',\n defaultValue: null,\n }),\n indeterminateIcon: createIconProp({\n label: \"Indeterminate Icon\",\n description: 'Icon to show when the checkbox status is \"indeterminate\"',\n defaultValue: null,\n }),\n },\n};\n"]}
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","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","triggers","Triggers","OnPress","props","fieldName","valuePropName","handlerPropName","group","GROUPS","basic","label","description"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport enum CheckboxStatus {\n Checked = \"checked\",\n Unchecked = \"unchecked\",\n Indeterminate = \"indeterminate\",\n}\n\nexport interface CheckboxProps {\n status?: CheckboxStatus;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n indeterminateColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n indeterminateIcon?: string;\n initialValue?: boolean; // deprecated\n defaultValue?: CheckboxStatus;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status,\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 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\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"]}
@@ -37,7 +37,9 @@ const RadioButtonGroup = ({
37
37
  }) => {
38
38
  const [internalValue, setIntervalValue] = React.useState(value || defaultValue);
39
39
  React.useEffect(() => {
40
- setIntervalValue(value);
40
+ if (value != null) {
41
+ setIntervalValue(value);
42
+ }
41
43
  }, [value]);
42
44
  const previousInitialValue = (0, _hooks.usePrevious)(initialValue);
43
45
  React.useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"sources":["RadioButtonGroup.tsx"],"names":["Provider","radioButtonGroupContext","RadioButtonGroup","direction","Direction","Vertical","value","onValueChange","initialValue","defaultValue","style","children","rest","internalValue","setIntervalValue","React","useState","useEffect","previousInitialValue","_containerStyle","flexDirection","Horizontal","push","alignItems","minHeight","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","layout","triggers","Triggers","OnValueChange","props","fieldName","handlerPropName","valuePropName"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAOA;;AACA;;;;;;;;AAYA,MAAM;AAAEA,EAAAA;AAAF,IAAeC,gCAArB;;AAEA,MAAMC,gBAAiD,GAAG,CAAC;AACzDC,EAAAA,SAAS,GAAGC,mBAAUC,QADmC;AAEzDC,EAAAA,KAFyD;AAGzDC,EAAAA,aAAa,GAAG,MAAM,CAAE,CAHiC;AAIzDC,EAAAA,YAJyD;AAKzDC,EAAAA,YALyD;AAMzDC,EAAAA,KANyD;AAOzDC,EAAAA,QAPyD;AAQzD,KAAGC;AARsD,CAAD,KASpD;AACJ,QAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCC,KAAK,CAACC,QAAN,CACxCV,KAAK,IAAIG,YAD+B,CAA1C;AAIAM,EAAAA,KAAK,CAACE,SAAN,CAAgB,MAAM;AACpBH,IAAAA,gBAAgB,CAACR,KAAD,CAAhB;AACD,GAFD,EAEG,CAACA,KAAD,CAFH;AAIA,QAAMY,oBAAoB,GAAG,wBAAYV,YAAZ,CAA7B;AACAO,EAAAA,KAAK,CAACE,SAAN,CAAgB,MAAM;AACpB,QAAIT,YAAY,KAAKU,oBAArB,EAA2C;AACzCX,MAAAA,aAAa,CAACC,YAAD,CAAb;AACD;AACF,GAJD,EAIG,CAACA,YAAD,EAAeU,oBAAf,EAAqCX,aAArC,CAJH;AAMA,QAAMY,eAAqC,GAAG,CAC5C;AACEC,IAAAA,aAAa,EAAEjB,SAAS,KAAKC,mBAAUiB,UAAxB,GAAqC,KAArC,GAA6C;AAD9D,GAD4C,CAA9C;;AAMA,MAAIlB,SAAS,KAAKC,mBAAUC,QAA5B,EAAsC;AACpCc,IAAAA,eAAe,CAACG,IAAhB,CAAqB;AACnBC,MAAAA,UAAU,EAAE;AADO,KAArB;AAGD;;AAED,sBACE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAAC;AAAEC,MAAAA,SAAS,EAAE;AAAb,KAAD,EAAoBd,KAApB;AAAb,KAA6CE,IAA7C,gBACE,oBAAC,QAAD;AACE,IAAA,KAAK,EAAE;AACLN,MAAAA,KAAK,EAAEO,aAAa,IAAI,EADnB;AAELN,MAAAA,aAAa,EAAEO,gBAFV;AAGLX,MAAAA;AAHK;AADT,kBAOE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAEgB;AAAb,KAA+BR,QAA/B,CAPF,CADF,CADF;AAaD,CAlDD;;eAoDeT,gB;;AAER,MAAMuB,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,oBADiB;AAEvBC,EAAAA,GAAG,EAAE,kBAFkB;AAGvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAHH;AAIvBC,EAAAA,MAAM,EAAE,EAJe;AAKvBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,aAAV,CALa;AAMvBC,EAAAA,KAAK,EAAE;AACLhC,IAAAA,SAAS,EAAE,iCADN;AAELiC,IAAAA,SAAS,EAAE,gCAAoB;AAC7BC,MAAAA,eAAe,EAAE,eADY;AAE7BC,MAAAA,aAAa,EAAE,OAFc;AAG7B7B,MAAAA,YAAY,EAAE;AAHe,KAApB;AAFN;AANgB,CAAlB","sourcesContent":["import * as React from \"react\";\nimport { View, StyleProp, ViewStyle } from \"react-native\";\nimport {\n COMPONENT_TYPES,\n createFieldNameProp,\n createDirectionProp,\n Triggers,\n} from \"@draftbit/types\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport { radioButtonGroupContext, Direction } from \"./context\";\nimport { usePrevious } from \"../../hooks\";\nexport interface RadioButtonGroupProps {\n direction?: Direction;\n style?: StyleProp<ViewStyle>;\n value?: string;\n onValueChange: (value: string) => void;\n initialValue?: string; // deprecated\n defaultValue?: string;\n theme: Theme;\n children: React.ReactNode;\n}\n\nconst { Provider } = radioButtonGroupContext;\n\nconst RadioButtonGroup: React.FC<RadioButtonGroupProps> = ({\n direction = Direction.Vertical,\n value,\n onValueChange = () => {},\n initialValue,\n defaultValue,\n style,\n children,\n ...rest\n}) => {\n const [internalValue, setIntervalValue] = React.useState<string | undefined>(\n value || defaultValue\n );\n\n React.useEffect(() => {\n setIntervalValue(value);\n }, [value]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onValueChange(initialValue);\n }\n }, [initialValue, previousInitialValue, onValueChange]);\n\n const _containerStyle: StyleProp<ViewStyle> = [\n {\n flexDirection: direction === Direction.Horizontal ? \"row\" : \"column\",\n },\n ];\n\n if (direction !== Direction.Vertical) {\n _containerStyle.push({\n alignItems: \"center\",\n });\n }\n\n return (\n <View style={[{ minHeight: 40 }, style]} {...rest}>\n <Provider\n value={{\n value: internalValue || \"\",\n onValueChange: setIntervalValue,\n direction,\n }}\n >\n <View style={_containerStyle}>{children}</View>\n </Provider>\n </View>\n );\n};\n\nexport default RadioButtonGroup;\n\nexport const SEED_DATA = {\n name: \"Radio Button Group\",\n tag: \"RadioButtonGroup\",\n category: COMPONENT_TYPES.input,\n layout: {},\n triggers: [Triggers.OnValueChange],\n props: {\n direction: createDirectionProp(),\n fieldName: createFieldNameProp({\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n defaultValue: \"radioButtonGroupValue\",\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["RadioButtonGroup.tsx"],"names":["Provider","radioButtonGroupContext","RadioButtonGroup","direction","Direction","Vertical","value","onValueChange","initialValue","defaultValue","style","children","rest","internalValue","setIntervalValue","React","useState","useEffect","previousInitialValue","_containerStyle","flexDirection","Horizontal","push","alignItems","minHeight","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","layout","triggers","Triggers","OnValueChange","props","fieldName","handlerPropName","valuePropName"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAOA;;AACA;;;;;;;;AAYA,MAAM;AAAEA,EAAAA;AAAF,IAAeC,gCAArB;;AAEA,MAAMC,gBAAiD,GAAG,CAAC;AACzDC,EAAAA,SAAS,GAAGC,mBAAUC,QADmC;AAEzDC,EAAAA,KAFyD;AAGzDC,EAAAA,aAAa,GAAG,MAAM,CAAE,CAHiC;AAIzDC,EAAAA,YAJyD;AAKzDC,EAAAA,YALyD;AAMzDC,EAAAA,KANyD;AAOzDC,EAAAA,QAPyD;AAQzD,KAAGC;AARsD,CAAD,KASpD;AACJ,QAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCC,KAAK,CAACC,QAAN,CACxCV,KAAK,IAAIG,YAD+B,CAA1C;AAIAM,EAAAA,KAAK,CAACE,SAAN,CAAgB,MAAM;AACpB,QAAIX,KAAK,IAAI,IAAb,EAAmB;AACjBQ,MAAAA,gBAAgB,CAACR,KAAD,CAAhB;AACD;AACF,GAJD,EAIG,CAACA,KAAD,CAJH;AAMA,QAAMY,oBAAoB,GAAG,wBAAYV,YAAZ,CAA7B;AACAO,EAAAA,KAAK,CAACE,SAAN,CAAgB,MAAM;AACpB,QAAIT,YAAY,KAAKU,oBAArB,EAA2C;AACzCX,MAAAA,aAAa,CAACC,YAAD,CAAb;AACD;AACF,GAJD,EAIG,CAACA,YAAD,EAAeU,oBAAf,EAAqCX,aAArC,CAJH;AAMA,QAAMY,eAAqC,GAAG,CAC5C;AACEC,IAAAA,aAAa,EAAEjB,SAAS,KAAKC,mBAAUiB,UAAxB,GAAqC,KAArC,GAA6C;AAD9D,GAD4C,CAA9C;;AAMA,MAAIlB,SAAS,KAAKC,mBAAUC,QAA5B,EAAsC;AACpCc,IAAAA,eAAe,CAACG,IAAhB,CAAqB;AACnBC,MAAAA,UAAU,EAAE;AADO,KAArB;AAGD;;AAED,sBACE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAAC;AAAEC,MAAAA,SAAS,EAAE;AAAb,KAAD,EAAoBd,KAApB;AAAb,KAA6CE,IAA7C,gBACE,oBAAC,QAAD;AACE,IAAA,KAAK,EAAE;AACLN,MAAAA,KAAK,EAAEO,aAAa,IAAI,EADnB;AAELN,MAAAA,aAAa,EAAEO,gBAFV;AAGLX,MAAAA;AAHK;AADT,kBAOE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAEgB;AAAb,KAA+BR,QAA/B,CAPF,CADF,CADF;AAaD,CApDD;;eAsDeT,gB;;AAER,MAAMuB,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,oBADiB;AAEvBC,EAAAA,GAAG,EAAE,kBAFkB;AAGvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAHH;AAIvBC,EAAAA,MAAM,EAAE,EAJe;AAKvBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,aAAV,CALa;AAMvBC,EAAAA,KAAK,EAAE;AACLhC,IAAAA,SAAS,EAAE,iCADN;AAELiC,IAAAA,SAAS,EAAE,gCAAoB;AAC7BC,MAAAA,eAAe,EAAE,eADY;AAE7BC,MAAAA,aAAa,EAAE,OAFc;AAG7B7B,MAAAA,YAAY,EAAE;AAHe,KAApB;AAFN;AANgB,CAAlB","sourcesContent":["import * as React from \"react\";\nimport { View, StyleProp, ViewStyle } from \"react-native\";\nimport {\n COMPONENT_TYPES,\n createFieldNameProp,\n createDirectionProp,\n Triggers,\n} from \"@draftbit/types\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport { radioButtonGroupContext, Direction } from \"./context\";\nimport { usePrevious } from \"../../hooks\";\nexport interface RadioButtonGroupProps {\n direction?: Direction;\n style?: StyleProp<ViewStyle>;\n value?: string;\n onValueChange: (value: string) => void;\n initialValue?: string; // deprecated\n defaultValue?: string;\n theme: Theme;\n children: React.ReactNode;\n}\n\nconst { Provider } = radioButtonGroupContext;\n\nconst RadioButtonGroup: React.FC<RadioButtonGroupProps> = ({\n direction = Direction.Vertical,\n value,\n onValueChange = () => {},\n initialValue,\n defaultValue,\n style,\n children,\n ...rest\n}) => {\n const [internalValue, setIntervalValue] = React.useState<string | undefined>(\n value || defaultValue\n );\n\n React.useEffect(() => {\n if (value != null) {\n setIntervalValue(value);\n }\n }, [value]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onValueChange(initialValue);\n }\n }, [initialValue, previousInitialValue, onValueChange]);\n\n const _containerStyle: StyleProp<ViewStyle> = [\n {\n flexDirection: direction === Direction.Horizontal ? \"row\" : \"column\",\n },\n ];\n\n if (direction !== Direction.Vertical) {\n _containerStyle.push({\n alignItems: \"center\",\n });\n }\n\n return (\n <View style={[{ minHeight: 40 }, style]} {...rest}>\n <Provider\n value={{\n value: internalValue || \"\",\n onValueChange: setIntervalValue,\n direction,\n }}\n >\n <View style={_containerStyle}>{children}</View>\n </Provider>\n </View>\n );\n};\n\nexport default RadioButtonGroup;\n\nexport const SEED_DATA = {\n name: \"Radio Button Group\",\n tag: \"RadioButtonGroup\",\n category: COMPONENT_TYPES.input,\n layout: {},\n triggers: [Triggers.OnValueChange],\n props: {\n direction: createDirectionProp(),\n fieldName: createFieldNameProp({\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n defaultValue: \"radioButtonGroupValue\",\n }),\n },\n};\n"]}
@@ -80,7 +80,9 @@ function Slider({
80
80
  }, [initialValue, previousInitialValue, onValueChange]);
81
81
  const [internalValue, setIntervalValue] = React.useState(value || defaultValue);
82
82
  React.useEffect(() => {
83
- setIntervalValue(value);
83
+ if (value != null) {
84
+ setIntervalValue(value);
85
+ }
84
86
  }, [value]);
85
87
  const minTrackColor = minimumTrackTintColor || theme.colors.primary;
86
88
  const maxTrackColor = maximumTrackTintColor || theme.colors.light;
@@ -1 +1 @@
1
- {"version":3,"sources":["Slider.tsx"],"names":["maybeParseValue","value","undefined","maybe","Slider","Icon","leftIcon","rightIcon","leftIconColor","rightIconColor","initialValue","defaultValue","minimumTrackTintColor","maximumTrackTintColor","thumbTintColor","minimumValue","maximumValue","tapToSeek","step","onValueChange","style","theme","rest","previousInitialValue","React","useEffect","internalValue","setIntervalValue","useState","minTrackColor","colors","primary","maxTrackColor","light","thumbColor","leftIconThemeColor","rightIconThemeColor","parsedValue","handleSlidingComplete","newValue","styles","container","slider","StyleSheet","create","height","flexDirection","alignItems","flex","marginHorizontal","SEED_DATA","name","tag","description","category","COMPONENT_TYPES","input","layout","marginLeft","marginRight","triggers","Triggers","OnValueChange","props","fieldName","handlerPropName","valuePropName","group","GROUPS","basic","label","min","max","precision"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet, StyleProp, ViewStyle } from \"react-native\";\nimport NativeSlider from \"@react-native-community/slider\";\nimport isNumber from \"lodash.isnumber\";\nimport toNumber from \"lodash.tonumber\";\n\nimport {\n COMPONENT_TYPES,\n GROUPS,\n createNumberProp,\n createColorProp,\n createFieldNameProp,\n createIconProp,\n Triggers,\n} from \"@draftbit/types\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\nimport { usePrevious } from \"../hooks\";\n\nexport type Props = {\n style?: StyleProp<ViewStyle>;\n value?: number;\n initialValue?: number; // deprecated\n defaultValue?: number;\n minimumTrackTintColor: string;\n maximumTrackTintColor: string;\n leftIcon?: string;\n rightIcon?: string;\n leftIconColor?: string;\n rightIconColor?: string;\n thumbTintColor?: string;\n tapToSeek?: boolean;\n minimumValue: number;\n maximumValue: number;\n step: number;\n onValueChange?: (value: number) => void;\n theme: Theme;\n} & IconSlot;\n\nfunction maybeParseValue(value: any) {\n if (value === undefined) {\n return undefined;\n }\n\n if (isNumber(value)) {\n return value;\n }\n\n try {\n const maybe = toNumber(value);\n if (isNumber(maybe)) {\n return maybe;\n }\n } catch {\n return undefined;\n }\n\n return undefined;\n}\n\nfunction Slider({\n Icon,\n leftIcon,\n rightIcon,\n leftIconColor,\n rightIconColor,\n value,\n initialValue,\n defaultValue,\n minimumTrackTintColor,\n maximumTrackTintColor,\n thumbTintColor,\n minimumValue = 0,\n maximumValue = 100,\n tapToSeek,\n step = 1,\n onValueChange = () => {},\n style,\n theme,\n ...rest\n}: Props) {\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onValueChange(initialValue);\n }\n }, [initialValue, previousInitialValue, onValueChange]);\n\n const [internalValue, setIntervalValue] = React.useState<number | undefined>(\n value || defaultValue\n );\n\n React.useEffect(() => {\n setIntervalValue(value);\n }, [value]);\n\n const minTrackColor = minimumTrackTintColor || theme.colors.primary;\n const maxTrackColor = maximumTrackTintColor || theme.colors.light;\n const thumbColor = thumbTintColor || theme.colors.primary;\n\n const leftIconThemeColor = leftIconColor || theme.colors.light;\n const rightIconThemeColor = rightIconColor || theme.colors.light;\n\n const parsedValue = maybeParseValue(internalValue);\n\n const handleSlidingComplete = (newValue: number) => {\n setIntervalValue(newValue);\n onValueChange(newValue);\n };\n\n return (\n <View style={[styles.container, style]} {...rest}>\n {leftIcon ? (\n <Icon color={leftIconThemeColor} name={leftIcon} size={24} />\n ) : null}\n <NativeSlider\n value={parsedValue}\n step={step}\n minimumValue={minimumValue}\n maximumValue={maximumValue}\n tapToSeek={tapToSeek}\n minimumTrackTintColor={minTrackColor}\n maximumTrackTintColor={maxTrackColor}\n thumbTintColor={thumbColor}\n onSlidingComplete={handleSlidingComplete}\n style={styles.slider}\n />\n {rightIcon ? (\n <Icon color={rightIconThemeColor} name={rightIcon} size={24} />\n ) : null}\n </View>\n );\n}\n\nconst styles = StyleSheet.create({\n container: {\n height: 40,\n flexDirection: \"row\",\n alignItems: \"center\",\n },\n slider: {\n flex: 1,\n marginHorizontal: 12,\n },\n});\n\nexport default withTheme(Slider);\n\nexport const SEED_DATA = {\n name: \"Slider\",\n tag: \"Slider\",\n description: \"A component used to set a value in a range\",\n category: COMPONENT_TYPES.input,\n layout: {\n marginLeft: 12,\n marginRight: 12,\n },\n triggers: [Triggers.OnValueChange],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"sliderValue\",\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n }),\n minimumValue: createNumberProp({\n group: GROUPS.basic,\n label: \"Min Value\",\n min: 0,\n max: 1000,\n }),\n maximumValue: createNumberProp({\n group: GROUPS.basic,\n label: \"Max Value\",\n min: 1,\n max: 10000,\n }),\n step: createNumberProp({\n group: GROUPS.basic,\n label: \"Step\",\n min: 0,\n max: 100,\n step: 0.01,\n precision: 2,\n }),\n leftIcon: createIconProp({\n label: \"Left Icon\",\n defaultValue: null,\n }),\n rightIcon: createIconProp({\n label: \"Right Icon\",\n defaultValue: null,\n }),\n minimumTrackTintColor: createColorProp({\n label: \"Min Track Color\",\n defaultValue: null,\n }),\n maximumTrackTintColor: createColorProp({\n label: \"Max Track Color\",\n defaultValue: null,\n }),\n thumbTintColor: createColorProp({\n label: \"Thumb Color\",\n defaultValue: null,\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["Slider.tsx"],"names":["maybeParseValue","value","undefined","maybe","Slider","Icon","leftIcon","rightIcon","leftIconColor","rightIconColor","initialValue","defaultValue","minimumTrackTintColor","maximumTrackTintColor","thumbTintColor","minimumValue","maximumValue","tapToSeek","step","onValueChange","style","theme","rest","previousInitialValue","React","useEffect","internalValue","setIntervalValue","useState","minTrackColor","colors","primary","maxTrackColor","light","thumbColor","leftIconThemeColor","rightIconThemeColor","parsedValue","handleSlidingComplete","newValue","styles","container","slider","StyleSheet","create","height","flexDirection","alignItems","flex","marginHorizontal","SEED_DATA","name","tag","description","category","COMPONENT_TYPES","input","layout","marginLeft","marginRight","triggers","Triggers","OnValueChange","props","fieldName","handlerPropName","valuePropName","group","GROUPS","basic","label","min","max","precision"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet, StyleProp, ViewStyle } from \"react-native\";\nimport NativeSlider from \"@react-native-community/slider\";\nimport isNumber from \"lodash.isnumber\";\nimport toNumber from \"lodash.tonumber\";\n\nimport {\n COMPONENT_TYPES,\n GROUPS,\n createNumberProp,\n createColorProp,\n createFieldNameProp,\n createIconProp,\n Triggers,\n} from \"@draftbit/types\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\nimport { usePrevious } from \"../hooks\";\n\nexport type Props = {\n style?: StyleProp<ViewStyle>;\n value?: number;\n initialValue?: number; // deprecated\n defaultValue?: number;\n minimumTrackTintColor: string;\n maximumTrackTintColor: string;\n leftIcon?: string;\n rightIcon?: string;\n leftIconColor?: string;\n rightIconColor?: string;\n thumbTintColor?: string;\n tapToSeek?: boolean;\n minimumValue: number;\n maximumValue: number;\n step: number;\n onValueChange?: (value: number) => void;\n theme: Theme;\n} & IconSlot;\n\nfunction maybeParseValue(value: any) {\n if (value === undefined) {\n return undefined;\n }\n\n if (isNumber(value)) {\n return value;\n }\n\n try {\n const maybe = toNumber(value);\n if (isNumber(maybe)) {\n return maybe;\n }\n } catch {\n return undefined;\n }\n\n return undefined;\n}\n\nfunction Slider({\n Icon,\n leftIcon,\n rightIcon,\n leftIconColor,\n rightIconColor,\n value,\n initialValue,\n defaultValue,\n minimumTrackTintColor,\n maximumTrackTintColor,\n thumbTintColor,\n minimumValue = 0,\n maximumValue = 100,\n tapToSeek,\n step = 1,\n onValueChange = () => {},\n style,\n theme,\n ...rest\n}: Props) {\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onValueChange(initialValue);\n }\n }, [initialValue, previousInitialValue, onValueChange]);\n\n const [internalValue, setIntervalValue] = React.useState<number | undefined>(\n value || defaultValue\n );\n\n React.useEffect(() => {\n if (value != null) {\n setIntervalValue(value);\n }\n }, [value]);\n\n const minTrackColor = minimumTrackTintColor || theme.colors.primary;\n const maxTrackColor = maximumTrackTintColor || theme.colors.light;\n const thumbColor = thumbTintColor || theme.colors.primary;\n\n const leftIconThemeColor = leftIconColor || theme.colors.light;\n const rightIconThemeColor = rightIconColor || theme.colors.light;\n\n const parsedValue = maybeParseValue(internalValue);\n\n const handleSlidingComplete = (newValue: number) => {\n setIntervalValue(newValue);\n onValueChange(newValue);\n };\n\n return (\n <View style={[styles.container, style]} {...rest}>\n {leftIcon ? (\n <Icon color={leftIconThemeColor} name={leftIcon} size={24} />\n ) : null}\n <NativeSlider\n value={parsedValue}\n step={step}\n minimumValue={minimumValue}\n maximumValue={maximumValue}\n tapToSeek={tapToSeek}\n minimumTrackTintColor={minTrackColor}\n maximumTrackTintColor={maxTrackColor}\n thumbTintColor={thumbColor}\n onSlidingComplete={handleSlidingComplete}\n style={styles.slider}\n />\n {rightIcon ? (\n <Icon color={rightIconThemeColor} name={rightIcon} size={24} />\n ) : null}\n </View>\n );\n}\n\nconst styles = StyleSheet.create({\n container: {\n height: 40,\n flexDirection: \"row\",\n alignItems: \"center\",\n },\n slider: {\n flex: 1,\n marginHorizontal: 12,\n },\n});\n\nexport default withTheme(Slider);\n\nexport const SEED_DATA = {\n name: \"Slider\",\n tag: \"Slider\",\n description: \"A component used to set a value in a range\",\n category: COMPONENT_TYPES.input,\n layout: {\n marginLeft: 12,\n marginRight: 12,\n },\n triggers: [Triggers.OnValueChange],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"sliderValue\",\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n }),\n minimumValue: createNumberProp({\n group: GROUPS.basic,\n label: \"Min Value\",\n min: 0,\n max: 1000,\n }),\n maximumValue: createNumberProp({\n group: GROUPS.basic,\n label: \"Max Value\",\n min: 1,\n max: 10000,\n }),\n step: createNumberProp({\n group: GROUPS.basic,\n label: \"Step\",\n min: 0,\n max: 100,\n step: 0.01,\n precision: 2,\n }),\n leftIcon: createIconProp({\n label: \"Left Icon\",\n defaultValue: null,\n }),\n rightIcon: createIconProp({\n label: \"Right Icon\",\n defaultValue: null,\n }),\n minimumTrackTintColor: createColorProp({\n label: \"Min Track Color\",\n defaultValue: null,\n }),\n maximumTrackTintColor: createColorProp({\n label: \"Max Track Color\",\n defaultValue: null,\n }),\n thumbTintColor: createColorProp({\n label: \"Thumb Color\",\n defaultValue: null,\n }),\n },\n};\n"]}
@@ -34,7 +34,9 @@ const StarRating = ({
34
34
  }) => {
35
35
  const [localRating, setLocalRating] = React.useState(rating || defaultValue || 0);
36
36
  React.useEffect(() => {
37
- setLocalRating(rating);
37
+ if (rating != null) {
38
+ setLocalRating(rating);
39
+ }
38
40
  }, [rating]);
39
41
  const ratingHandler = React.useCallback(r => {
40
42
  setLocalRating(r);
@@ -1 +1 @@
1
- {"version":3,"sources":["StarRating.tsx"],"names":["StarRating","Icon","starSize","maxStars","rating","defaultValue","isEditable","activeColor","inactiveColor","style","onPress","rest","localRating","setLocalRating","React","useState","useEffect","ratingHandler","useCallback","r","ratingRounded","Math","round","styles","container","Array","map","_","i","display","touchContainer","pressable","StyleSheet","create","flexDirection","alignItems","position","top","right","left","bottom","zIndex","flex","height","width","SEED_DATA","name","tag","description","category","COMPONENT_TYPES","button","triggers","Triggers","OnPress","props","label","min","max","step","fieldName","handlerPropName","valuePropName","group","GROUPS","data"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n StyleProp,\n ViewStyle,\n Pressable,\n} from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\n\nimport {\n COMPONENT_TYPES,\n createStaticNumberProp,\n createFieldNameProp,\n createStaticBoolProp,\n Triggers,\n createColorProp,\n GROUPS,\n} from \"@draftbit/types\";\n\ntype Props = {\n starSize?: number;\n maxStars?: number;\n rating?: number;\n defaultValue?: number;\n isEditable?: boolean;\n activeColor?: string;\n inactiveColor?: string;\n theme: Theme;\n style?: StyleProp<ViewStyle>;\n onPress?: (newValue: number) => void;\n} & IconSlot;\n\nconst StarRating: React.FC<Props> = ({\n Icon,\n starSize = 16,\n maxStars = 5,\n rating = 0,\n defaultValue,\n isEditable = false,\n activeColor,\n inactiveColor,\n style,\n onPress,\n ...rest\n}) => {\n const [localRating, setLocalRating] = React.useState<number>(\n rating || defaultValue || 0\n );\n\n React.useEffect(() => {\n setLocalRating(rating);\n }, [rating]);\n\n const ratingHandler = React.useCallback(\n (r) => {\n setLocalRating(r);\n !!onPress && onPress(r);\n },\n [onPress]\n );\n\n const ratingRounded = Math.round(localRating * 2) / 2;\n\n return (\n <View style={[styles.container, style]} {...rest}>\n {[...Array(maxStars)].map((_, i) => (\n <View key={i} style={{ display: \"flex\" }}>\n <Icon\n name={\n ratingRounded - i === 0.5\n ? \"MaterialIcons/star-half\"\n : \"MaterialIcons/star\"\n }\n size={starSize}\n color={ratingRounded > i ? activeColor : inactiveColor}\n />\n {isEditable && (\n <View style={styles.touchContainer}>\n <Pressable\n style={styles.pressable}\n onPress={() => ratingHandler(i + 0.5)}\n />\n <Pressable\n style={styles.pressable}\n onPress={() => ratingHandler(i + 1)}\n />\n </View>\n )}\n </View>\n ))}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flexDirection: \"row\",\n alignItems: \"center\",\n },\n touchContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n position: \"absolute\",\n top: 0,\n right: 0,\n left: 0,\n bottom: 0,\n zIndex: 1,\n },\n pressable: {\n flex: 1,\n height: \"100%\",\n width: \"50%\",\n },\n});\n\nexport default withTheme(StarRating);\n\nexport const SEED_DATA = {\n name: \"Star Rating\",\n tag: \"StarRating\",\n description: \"A star rating component\",\n category: COMPONENT_TYPES.button,\n triggers: [Triggers.OnPress],\n props: {\n starSize: createStaticNumberProp({\n label: \"Star size\",\n description: \"Size of each individual star\",\n defaultValue: 16,\n min: 8,\n max: 36,\n step: 1,\n }),\n fieldName: createFieldNameProp({\n defaultValue: \"ratingValue\", // this is the name of the variable declared on the screen in Draftbit\n handlerPropName: \"onPress\", // the change handler prop in this component\n valuePropName: \"rating\", // the value prop in this component\n }),\n maxStars: createStaticNumberProp({\n label: \"Max stars\",\n description: \"The max number of stars\",\n defaultValue: 5,\n min: 0,\n max: 10,\n step: 1,\n }),\n rating: createStaticNumberProp({\n group: GROUPS.data,\n label: \"Rating\",\n }),\n isEditable: createStaticBoolProp({\n label: \"Editable\",\n }),\n activeColor: createColorProp({\n label: \"Active Color\",\n defaultValue: \"primary\",\n }),\n inactiveColor: createColorProp({\n label: \"Inactive Color\",\n defaultValue: \"divider\",\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["StarRating.tsx"],"names":["StarRating","Icon","starSize","maxStars","rating","defaultValue","isEditable","activeColor","inactiveColor","style","onPress","rest","localRating","setLocalRating","React","useState","useEffect","ratingHandler","useCallback","r","ratingRounded","Math","round","styles","container","Array","map","_","i","display","touchContainer","pressable","StyleSheet","create","flexDirection","alignItems","position","top","right","left","bottom","zIndex","flex","height","width","SEED_DATA","name","tag","description","category","COMPONENT_TYPES","button","triggers","Triggers","OnPress","props","label","min","max","step","fieldName","handlerPropName","valuePropName","group","GROUPS","data"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n StyleProp,\n ViewStyle,\n Pressable,\n} from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\n\nimport {\n COMPONENT_TYPES,\n createStaticNumberProp,\n createFieldNameProp,\n createStaticBoolProp,\n Triggers,\n createColorProp,\n GROUPS,\n} from \"@draftbit/types\";\n\ntype Props = {\n starSize?: number;\n maxStars?: number;\n rating?: number;\n defaultValue?: number;\n isEditable?: boolean;\n activeColor?: string;\n inactiveColor?: string;\n theme: Theme;\n style?: StyleProp<ViewStyle>;\n onPress?: (newValue: number) => void;\n} & IconSlot;\n\nconst StarRating: React.FC<Props> = ({\n Icon,\n starSize = 16,\n maxStars = 5,\n rating = 0,\n defaultValue,\n isEditable = false,\n activeColor,\n inactiveColor,\n style,\n onPress,\n ...rest\n}) => {\n const [localRating, setLocalRating] = React.useState<number>(\n rating || defaultValue || 0\n );\n\n React.useEffect(() => {\n if (rating != null) {\n setLocalRating(rating);\n }\n }, [rating]);\n\n const ratingHandler = React.useCallback(\n (r) => {\n setLocalRating(r);\n !!onPress && onPress(r);\n },\n [onPress]\n );\n\n const ratingRounded = Math.round(localRating * 2) / 2;\n\n return (\n <View style={[styles.container, style]} {...rest}>\n {[...Array(maxStars)].map((_, i) => (\n <View key={i} style={{ display: \"flex\" }}>\n <Icon\n name={\n ratingRounded - i === 0.5\n ? \"MaterialIcons/star-half\"\n : \"MaterialIcons/star\"\n }\n size={starSize}\n color={ratingRounded > i ? activeColor : inactiveColor}\n />\n {isEditable && (\n <View style={styles.touchContainer}>\n <Pressable\n style={styles.pressable}\n onPress={() => ratingHandler(i + 0.5)}\n />\n <Pressable\n style={styles.pressable}\n onPress={() => ratingHandler(i + 1)}\n />\n </View>\n )}\n </View>\n ))}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flexDirection: \"row\",\n alignItems: \"center\",\n },\n touchContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n position: \"absolute\",\n top: 0,\n right: 0,\n left: 0,\n bottom: 0,\n zIndex: 1,\n },\n pressable: {\n flex: 1,\n height: \"100%\",\n width: \"50%\",\n },\n});\n\nexport default withTheme(StarRating);\n\nexport const SEED_DATA = {\n name: \"Star Rating\",\n tag: \"StarRating\",\n description: \"A star rating component\",\n category: COMPONENT_TYPES.button,\n triggers: [Triggers.OnPress],\n props: {\n starSize: createStaticNumberProp({\n label: \"Star size\",\n description: \"Size of each individual star\",\n defaultValue: 16,\n min: 8,\n max: 36,\n step: 1,\n }),\n fieldName: createFieldNameProp({\n defaultValue: \"ratingValue\", // this is the name of the variable declared on the screen in Draftbit\n handlerPropName: \"onPress\", // the change handler prop in this component\n valuePropName: \"rating\", // the value prop in this component\n }),\n maxStars: createStaticNumberProp({\n label: \"Max stars\",\n description: \"The max number of stars\",\n defaultValue: 5,\n min: 0,\n max: 10,\n step: 1,\n }),\n rating: createStaticNumberProp({\n group: GROUPS.data,\n label: \"Rating\",\n }),\n isEditable: createStaticBoolProp({\n label: \"Editable\",\n }),\n activeColor: createColorProp({\n label: \"Active Color\",\n defaultValue: \"primary\",\n }),\n inactiveColor: createColorProp({\n label: \"Inactive Color\",\n defaultValue: \"divider\",\n }),\n },\n};\n"]}
@@ -25,7 +25,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
25
25
 
26
26
  const Stepper = ({
27
27
  Icon,
28
- value = 0,
28
+ value,
29
29
  style,
30
30
  onChange,
31
31
  initialValue,
@@ -42,7 +42,9 @@ const Stepper = ({
42
42
  }) => {
43
43
  const [stateValue, setStateValue] = React.useState(value || defaultValue || 0);
44
44
  React.useEffect(() => {
45
- setStateValue(value);
45
+ if (value != null) {
46
+ setStateValue(value);
47
+ }
46
48
  }, [value]);
47
49
  const previousInitialValue = (0, _hooks.usePrevious)(initialValue);
48
50
  React.useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"sources":["Stepper.tsx"],"names":["Stepper","Icon","value","style","onChange","initialValue","defaultValue","theme","colors","typography","roundness","iconSize","iconColor","strong","borderRadius","typeStyle","stateValue","setStateValue","React","useState","useEffect","previousInitialValue","handleMinus","handlePlus","flexDirection","body1","textAlign","alignSelf","color","medium","marginHorizontal","SEED_DATA","name","tag","description","category","COMPONENT_TYPES","input","layout","triggers","Triggers","OnChange","props","fieldName","handlerPropName","valuePropName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, Text, StyleProp, ViewStyle, TextStyle } from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport {\n COMPONENT_TYPES,\n createIconSizeProp,\n createColorProp,\n createFieldNameProp,\n Triggers,\n} from \"@draftbit/types\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\n\nimport IconButton from \"./IconButton\";\nimport { usePrevious } from \"../hooks\";\n\ntype Props = {\n value?: number;\n theme: Theme;\n style?: StyleProp<ViewStyle>;\n onChange?: (value: number) => void;\n initialValue?: number; // deprecated\n defaultValue?: number;\n iconSize?: number;\n iconColor?: string;\n borderRadius?: number;\n typeStyle?: StyleProp<TextStyle>;\n} & IconSlot;\n\nconst Stepper: React.FC<Props> = ({\n Icon,\n value = 0,\n style,\n onChange,\n initialValue,\n defaultValue,\n theme: { colors, typography, roundness },\n iconSize = 24,\n iconColor = colors.strong,\n borderRadius = roundness,\n typeStyle,\n}) => {\n const [stateValue, setStateValue] = React.useState(\n value || defaultValue || 0\n );\n\n React.useEffect(() => {\n setStateValue(value);\n }, [value]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n setStateValue(initialValue);\n onChange && onChange(initialValue);\n }\n }, [initialValue, previousInitialValue, onChange, setStateValue]);\n\n const handleMinus = () => {\n if (value || value === 0) {\n onChange && onChange(value - 1);\n } else {\n setStateValue(stateValue - 1);\n }\n };\n\n const handlePlus = () => {\n if (value || value === 0) {\n onChange && onChange(value + 1);\n } else {\n setStateValue(stateValue + 1);\n }\n };\n\n return (\n <View\n style={[\n { flexDirection: \"row\" },\n style,\n borderRadius ? { borderRadius } : {},\n ]}\n >\n <IconButton\n Icon={Icon}\n icon=\"MaterialIcons/remove\"\n onPress={handleMinus}\n size={iconSize}\n color={iconColor}\n disabled={value ? value === 0 : stateValue === 0}\n />\n <Text\n style={[\n typography.body1,\n {\n textAlign: \"center\",\n alignSelf: \"center\",\n color: colors.medium,\n marginHorizontal: 8,\n },\n typeStyle,\n ]}\n >\n {value || stateValue}\n </Text>\n <IconButton\n Icon={Icon}\n icon=\"MaterialIcons/add\"\n onPress={handlePlus}\n size={iconSize}\n color={iconColor}\n />\n </View>\n );\n};\n\nexport default withTheme(Stepper);\n\nexport const SEED_DATA = [\n {\n name: \"Stepper\",\n tag: \"Stepper\",\n description: \"A component used to control the quantity of something\",\n category: COMPONENT_TYPES.input,\n layout: {},\n triggers: [Triggers.OnChange],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"stepperValue\",\n handlerPropName: \"onChange\",\n valuePropName: \"value\",\n }),\n iconSize: createIconSizeProp({ defaultValue: 24 }),\n iconColor: createColorProp({ defaultValue: \"strong\" }),\n },\n },\n];\n"]}
1
+ {"version":3,"sources":["Stepper.tsx"],"names":["Stepper","Icon","value","style","onChange","initialValue","defaultValue","theme","colors","typography","roundness","iconSize","iconColor","strong","borderRadius","typeStyle","stateValue","setStateValue","React","useState","useEffect","previousInitialValue","handleMinus","handlePlus","flexDirection","body1","textAlign","alignSelf","color","medium","marginHorizontal","SEED_DATA","name","tag","description","category","COMPONENT_TYPES","input","layout","triggers","Triggers","OnChange","props","fieldName","handlerPropName","valuePropName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, Text, StyleProp, ViewStyle, TextStyle } from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport {\n COMPONENT_TYPES,\n createIconSizeProp,\n createColorProp,\n createFieldNameProp,\n Triggers,\n} from \"@draftbit/types\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\n\nimport IconButton from \"./IconButton\";\nimport { usePrevious } from \"../hooks\";\n\ntype Props = {\n value?: number;\n theme: Theme;\n style?: StyleProp<ViewStyle>;\n onChange?: (value: number) => void;\n initialValue?: number; // deprecated\n defaultValue?: number;\n iconSize?: number;\n iconColor?: string;\n borderRadius?: number;\n typeStyle?: StyleProp<TextStyle>;\n} & IconSlot;\n\nconst Stepper: React.FC<Props> = ({\n Icon,\n value,\n style,\n onChange,\n initialValue,\n defaultValue,\n theme: { colors, typography, roundness },\n iconSize = 24,\n iconColor = colors.strong,\n borderRadius = roundness,\n typeStyle,\n}) => {\n const [stateValue, setStateValue] = React.useState(\n value || defaultValue || 0\n );\n\n React.useEffect(() => {\n if (value != null) {\n setStateValue(value);\n }\n }, [value]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n setStateValue(initialValue);\n onChange && onChange(initialValue);\n }\n }, [initialValue, previousInitialValue, onChange, setStateValue]);\n\n const handleMinus = () => {\n if (value || value === 0) {\n onChange && onChange(value - 1);\n } else {\n setStateValue(stateValue - 1);\n }\n };\n\n const handlePlus = () => {\n if (value || value === 0) {\n onChange && onChange(value + 1);\n } else {\n setStateValue(stateValue + 1);\n }\n };\n\n return (\n <View\n style={[\n { flexDirection: \"row\" },\n style,\n borderRadius ? { borderRadius } : {},\n ]}\n >\n <IconButton\n Icon={Icon}\n icon=\"MaterialIcons/remove\"\n onPress={handleMinus}\n size={iconSize}\n color={iconColor}\n disabled={value ? value === 0 : stateValue === 0}\n />\n <Text\n style={[\n typography.body1,\n {\n textAlign: \"center\",\n alignSelf: \"center\",\n color: colors.medium,\n marginHorizontal: 8,\n },\n typeStyle,\n ]}\n >\n {value || stateValue}\n </Text>\n <IconButton\n Icon={Icon}\n icon=\"MaterialIcons/add\"\n onPress={handlePlus}\n size={iconSize}\n color={iconColor}\n />\n </View>\n );\n};\n\nexport default withTheme(Stepper);\n\nexport const SEED_DATA = [\n {\n name: \"Stepper\",\n tag: \"Stepper\",\n description: \"A component used to control the quantity of something\",\n category: COMPONENT_TYPES.input,\n layout: {},\n triggers: [Triggers.OnChange],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"stepperValue\",\n handlerPropName: \"onChange\",\n valuePropName: \"value\",\n }),\n iconSize: createIconSizeProp({ defaultValue: 24 }),\n iconColor: createColorProp({ defaultValue: \"strong\" }),\n },\n },\n];\n"]}
@@ -44,9 +44,6 @@ function Switch({
44
44
  const activeThumbThemeColor = activeThumbColor || "#FFF";
45
45
  const inactiveThumbThemeColor = inactiveThumbColor || "#FFF";
46
46
  const [checked, setChecked] = React.useState(value || defaultValue);
47
- React.useEffect(() => {
48
- setChecked(value);
49
- }, [value]);
50
47
  React.useEffect(() => {
51
48
  if (value != null && value !== checked) {
52
49
  setChecked(value);
@@ -83,7 +80,7 @@ function Row({
83
80
  label = "Label",
84
81
  direction = _types.RowDirection.Row,
85
82
  style,
86
- value = false,
83
+ value,
87
84
  disabled,
88
85
  onValueChange,
89
86
  activeTrackColor,
@@ -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 setChecked(value);\n }, [value]);\n\n React.useEffect(() => {\n if (value != null && value !== checked) {\n setChecked(value);\n }\n }, [value, checked]);\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 = false,\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 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"]}
@@ -47,7 +47,9 @@ const ToggleButton = ({
47
47
  }) => {
48
48
  const [internalValue, setIntervalValue] = React.useState(toggled || defaultValue || false);
49
49
  React.useEffect(() => {
50
- setIntervalValue(toggled);
50
+ if (toggled != null) {
51
+ setIntervalValue(toggled);
52
+ }
51
53
  }, [toggled]);
52
54
  const previousInitialValue = (0, _hooks.usePrevious)(initialValue);
53
55
  React.useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"sources":["ToggleButton.tsx"],"names":["ToggleButton","Icon","icon","toggled","onPress","initialValue","defaultValue","disabled","color","colorSecondary","borderColor","iconSize","width","height","theme","colors","style","rest","internalValue","setIntervalValue","React","useState","useEffect","previousInitialValue","handlePress","styles","mainContainer","backgroundColor","StyleSheet","create","borderWidth","SEED_DATA","name","tag","category","COMPONENT_TYPES","button","layout","triggers","Triggers","OnPress","props","required","fieldName","valuePropName","label","description","group","GROUPS","basic"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { withTheme } from \"../theming\";\nimport { colorTypes, GROUPS } from \"@draftbit/types\";\nimport { StyleProp, StyleSheet, ViewStyle } from \"react-native\";\nimport IconButton from \"./IconButton\";\nimport {\n COMPONENT_TYPES,\n createIconProp,\n createBoolProp,\n createColorProp,\n createStaticNumberProp,\n createFieldNameProp,\n createIconSizeProp,\n createActionProp,\n Triggers,\n} from \"@draftbit/types\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\nimport { usePrevious } from \"../hooks\";\n\ntype Props = {\n icon: string;\n toggled?: boolean;\n onPress?: (toggled: boolean) => void;\n initialValue?: boolean; // deprecated\n defaultValue?: boolean;\n disabled?: boolean;\n color?: colorTypes;\n colorSecondary?: colorTypes;\n borderColor?: colorTypes;\n iconSize?: number;\n width?: number;\n height?: number;\n style?: StyleProp<ViewStyle>;\n theme: Theme;\n} & IconSlot;\n\nconst ToggleButton: React.FC<Props> = ({\n Icon,\n icon,\n toggled = false,\n onPress = () => {},\n initialValue,\n defaultValue,\n disabled = false,\n color = \"primary\",\n colorSecondary = \"surface\",\n borderColor = \"divider\",\n iconSize = 25,\n width = 50,\n height = 50,\n theme: { colors },\n style,\n ...rest\n}) => {\n const [internalValue, setIntervalValue] = React.useState<boolean>(\n toggled || defaultValue || false\n );\n\n React.useEffect(() => {\n setIntervalValue(toggled);\n }, [toggled]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onPress(initialValue);\n }\n }, [initialValue, previousInitialValue, onPress]);\n\n const handlePress = () => {\n setIntervalValue(!toggled);\n onPress(!toggled);\n };\n\n return (\n <IconButton\n Icon={Icon}\n icon={icon}\n size={iconSize}\n color={internalValue ? colors[color] : colors[colorSecondary]}\n onPress={handlePress}\n disabled={disabled}\n style={[\n styles.mainContainer,\n {\n width,\n height,\n backgroundColor: toggled ? colors[colorSecondary] : colors[color],\n borderColor: colors[borderColor],\n },\n style,\n ]}\n {...rest}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n mainContainer: {\n borderWidth: 1,\n },\n});\n\nexport default withTheme(ToggleButton);\n\nexport const SEED_DATA = {\n name: \"Toggle Button\",\n tag: \"ToggleButton\",\n category: COMPONENT_TYPES.button,\n layout: {},\n triggers: [Triggers.OnPress],\n props: {\n onPress: createActionProp(),\n icon: createIconProp({\n required: true,\n }),\n iconSize: createIconSizeProp(),\n fieldName: createFieldNameProp({\n defaultValue: false,\n valuePropName: \"toggled\",\n }),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Whether the button should be disabled\",\n group: GROUPS.basic,\n }),\n color: createColorProp({\n group: GROUPS.basic,\n }),\n colorSecondary: createColorProp({\n label: \"Secondary Color\",\n group: GROUPS.basic,\n }),\n borderColor: createColorProp({\n label: \"Border Color\",\n group: GROUPS.basic,\n }),\n width: createStaticNumberProp({\n label: \"Width\",\n description: \"Width\",\n defaultValue: 50,\n }),\n height: createStaticNumberProp({\n label: \"Height\",\n description: \"Height\",\n defaultValue: 50,\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["ToggleButton.tsx"],"names":["ToggleButton","Icon","icon","toggled","onPress","initialValue","defaultValue","disabled","color","colorSecondary","borderColor","iconSize","width","height","theme","colors","style","rest","internalValue","setIntervalValue","React","useState","useEffect","previousInitialValue","handlePress","styles","mainContainer","backgroundColor","StyleSheet","create","borderWidth","SEED_DATA","name","tag","category","COMPONENT_TYPES","button","layout","triggers","Triggers","OnPress","props","required","fieldName","valuePropName","label","description","group","GROUPS","basic"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { withTheme } from \"../theming\";\nimport { colorTypes, GROUPS } from \"@draftbit/types\";\nimport { StyleProp, StyleSheet, ViewStyle } from \"react-native\";\nimport IconButton from \"./IconButton\";\nimport {\n COMPONENT_TYPES,\n createIconProp,\n createBoolProp,\n createColorProp,\n createStaticNumberProp,\n createFieldNameProp,\n createIconSizeProp,\n createActionProp,\n Triggers,\n} from \"@draftbit/types\";\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\nimport { usePrevious } from \"../hooks\";\n\ntype Props = {\n icon: string;\n toggled?: boolean;\n onPress?: (toggled: boolean) => void;\n initialValue?: boolean; // deprecated\n defaultValue?: boolean;\n disabled?: boolean;\n color?: colorTypes;\n colorSecondary?: colorTypes;\n borderColor?: colorTypes;\n iconSize?: number;\n width?: number;\n height?: number;\n style?: StyleProp<ViewStyle>;\n theme: Theme;\n} & IconSlot;\n\nconst ToggleButton: React.FC<Props> = ({\n Icon,\n icon,\n toggled = false,\n onPress = () => {},\n initialValue,\n defaultValue,\n disabled = false,\n color = \"primary\",\n colorSecondary = \"surface\",\n borderColor = \"divider\",\n iconSize = 25,\n width = 50,\n height = 50,\n theme: { colors },\n style,\n ...rest\n}) => {\n const [internalValue, setIntervalValue] = React.useState<boolean>(\n toggled || defaultValue || false\n );\n\n React.useEffect(() => {\n if (toggled != null) {\n setIntervalValue(toggled);\n }\n }, [toggled]);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n onPress(initialValue);\n }\n }, [initialValue, previousInitialValue, onPress]);\n\n const handlePress = () => {\n setIntervalValue(!toggled);\n onPress(!toggled);\n };\n\n return (\n <IconButton\n Icon={Icon}\n icon={icon}\n size={iconSize}\n color={internalValue ? colors[color] : colors[colorSecondary]}\n onPress={handlePress}\n disabled={disabled}\n style={[\n styles.mainContainer,\n {\n width,\n height,\n backgroundColor: toggled ? colors[colorSecondary] : colors[color],\n borderColor: colors[borderColor],\n },\n style,\n ]}\n {...rest}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n mainContainer: {\n borderWidth: 1,\n },\n});\n\nexport default withTheme(ToggleButton);\n\nexport const SEED_DATA = {\n name: \"Toggle Button\",\n tag: \"ToggleButton\",\n category: COMPONENT_TYPES.button,\n layout: {},\n triggers: [Triggers.OnPress],\n props: {\n onPress: createActionProp(),\n icon: createIconProp({\n required: true,\n }),\n iconSize: createIconSizeProp(),\n fieldName: createFieldNameProp({\n defaultValue: false,\n valuePropName: \"toggled\",\n }),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Whether the button should be disabled\",\n group: GROUPS.basic,\n }),\n color: createColorProp({\n group: GROUPS.basic,\n }),\n colorSecondary: createColorProp({\n label: \"Secondary Color\",\n group: GROUPS.basic,\n }),\n borderColor: createColorProp({\n label: \"Border Color\",\n group: GROUPS.basic,\n }),\n width: createStaticNumberProp({\n label: \"Width\",\n description: \"Width\",\n defaultValue: 50,\n }),\n height: createStaticNumberProp({\n label: \"Height\",\n description: \"Height\",\n defaultValue: 50,\n }),\n },\n};\n"]}
@@ -405,12 +405,6 @@ Object.defineProperty(exports, "useAuthState", {
405
405
  return _useAuthState.useAuthState;
406
406
  }
407
407
  });
408
- Object.defineProperty(exports, "Youtube", {
409
- enumerable: true,
410
- get: function () {
411
- return _Youtube.default;
412
- }
413
- });
414
408
 
415
409
  var _Icon = require("./interfaces/Icon");
416
410
 
@@ -510,8 +504,6 @@ var _Stepper = _interopRequireDefault(require("./components/Stepper"));
510
504
 
511
505
  var _useAuthState = require("./components/useAuthState");
512
506
 
513
- var _Youtube = _interopRequireDefault(require("./components/Youtube"));
514
-
515
507
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
516
508
 
517
509
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AAEA;;AASA;;AAQA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["export { injectIcon } from \"./interfaces/Icon\";\nexport { withTheme, ThemeProvider } from \"./theming\";\nexport { default as Provider } from \"./Provider\";\nexport { default as DefaultTheme } from \"./styles/DefaultTheme\";\n\nexport { Link } from \"./components/Text\";\nexport { ButtonSolid, ButtonOutline } from \"./components/Button\";\nexport { default as Avatar } from \"./components/CircleImage\";\nexport { default as AvatarEdit } from \"./components/AvatarEdit\";\nexport { default as Card } from \"./components/Card\";\nexport { default as Carousel } from \"./components/Carousel\";\nexport { Checkbox, CheckboxGroup, CheckboxRow } from \"./components/Checkbox\";\nexport { default as CircleImage } from \"./components/CircleImage\";\nexport { default as Container } from \"./components/Container\";\nexport { default as Divider } from \"./components/Divider\";\nexport { default as FAB } from \"./components/FAB\";\nexport { default as FieldSearchBarFull } from \"./components/FieldSearchBarFull\";\nexport { default as IconButton } from \"./components/IconButton\";\nexport { default as Image } from \"./components/Image\";\nexport { default as NumberInput } from \"./components/NumberInput\";\nexport { default as ScreenContainer } from \"./components/ScreenContainer\";\nexport { default as StarRating } from \"./components/StarRating\";\nexport { default as Surface } from \"./components/Surface\";\nexport { default as Switch, SwitchRow } from \"./components/Switch\";\nexport { default as TextField } from \"./components/TextField\";\nexport { default as TextInput } from \"./components/TextInput\";\nexport { default as ToggleButton } from \"./components/ToggleButton\";\nexport { default as Touchable } from \"./components/Touchable\";\nexport { AccordionGroup, AccordionItem } from \"./components/Accordion\";\nexport {\n ActionSheet,\n ActionSheetItem,\n ActionSheetCancel,\n} from \"./components/ActionSheet\";\nexport { Swiper, SwiperItem } from \"./components/Swiper\";\n\nexport {\n Center,\n Circle,\n Square,\n Row,\n Stack,\n Spacer,\n} from \"./components/Layout\";\n\nexport {\n RadioButton,\n RadioButtonGroup,\n RadioButtonRow,\n RadioButtonFieldGroup,\n} from \"./components/RadioButton/index\";\n\n/* Deprecated: Fix or Delete! */\nexport { default as Button } from \"./components/DeprecatedButton\";\nexport { default as CardBlock } from \"./components/CardBlock\";\nexport { default as CardContainer } from \"./components/CardContainer\";\nexport { default as CardContainerRating } from \"./components/CardContainerRating\";\nexport { default as CardInline } from \"./components/CardInline\";\nexport { default as DatePicker } from \"./components/DatePicker/DatePicker\";\nexport { default as HeaderLarge } from \"./components/HeaderLarge\";\nexport { default as HeaderMedium } from \"./components/HeaderMedium\";\nexport { default as HeaderOverline } from \"./components/HeaderOverline\";\nexport { default as Picker } from \"./components/Picker/Picker\";\nexport { default as ProgressBar } from \"./components/ProgressBar\";\nexport { default as ProgressCircle } from \"./components/ProgressCircle\";\nexport { default as RowBodyIcon } from \"./components/RowBodyIcon\";\nexport { default as RowHeadlineImageCaption } from \"./components/RowHeadlineImageCaption\";\nexport { default as RowHeadlineImageIcon } from \"./components/RowHeadlineImageIcon\";\nexport { default as Slider } from \"./components/Slider\";\nexport { default as Stepper } from \"./components/Stepper\";\nexport { useAuthState } from \"./components/useAuthState\";\nexport { default as Youtube } from \"./components/Youtube\";\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AAEA;;AASA;;AAQA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["export { injectIcon } from \"./interfaces/Icon\";\nexport { withTheme, ThemeProvider } from \"./theming\";\nexport { default as Provider } from \"./Provider\";\nexport { default as DefaultTheme } from \"./styles/DefaultTheme\";\n\nexport { Link } from \"./components/Text\";\nexport { ButtonSolid, ButtonOutline } from \"./components/Button\";\nexport { default as Avatar } from \"./components/CircleImage\";\nexport { default as AvatarEdit } from \"./components/AvatarEdit\";\nexport { default as Card } from \"./components/Card\";\nexport { default as Carousel } from \"./components/Carousel\";\nexport { Checkbox, CheckboxGroup, CheckboxRow } from \"./components/Checkbox\";\nexport { default as CircleImage } from \"./components/CircleImage\";\nexport { default as Container } from \"./components/Container\";\nexport { default as Divider } from \"./components/Divider\";\nexport { default as FAB } from \"./components/FAB\";\nexport { default as FieldSearchBarFull } from \"./components/FieldSearchBarFull\";\nexport { default as IconButton } from \"./components/IconButton\";\nexport { default as Image } from \"./components/Image\";\nexport { default as NumberInput } from \"./components/NumberInput\";\nexport { default as ScreenContainer } from \"./components/ScreenContainer\";\nexport { default as StarRating } from \"./components/StarRating\";\nexport { default as Surface } from \"./components/Surface\";\nexport { default as Switch, SwitchRow } from \"./components/Switch\";\nexport { default as TextField } from \"./components/TextField\";\nexport { default as TextInput } from \"./components/TextInput\";\nexport { default as ToggleButton } from \"./components/ToggleButton\";\nexport { default as Touchable } from \"./components/Touchable\";\nexport { AccordionGroup, AccordionItem } from \"./components/Accordion\";\nexport {\n ActionSheet,\n ActionSheetItem,\n ActionSheetCancel,\n} from \"./components/ActionSheet\";\nexport { Swiper, SwiperItem } from \"./components/Swiper\";\n\nexport {\n Center,\n Circle,\n Square,\n Row,\n Stack,\n Spacer,\n} from \"./components/Layout\";\n\nexport {\n RadioButton,\n RadioButtonGroup,\n RadioButtonRow,\n RadioButtonFieldGroup,\n} from \"./components/RadioButton/index\";\n\n/* Deprecated: Fix or Delete! */\nexport { default as Button } from \"./components/DeprecatedButton\";\nexport { default as CardBlock } from \"./components/CardBlock\";\nexport { default as CardContainer } from \"./components/CardContainer\";\nexport { default as CardContainerRating } from \"./components/CardContainerRating\";\nexport { default as CardInline } from \"./components/CardInline\";\nexport { default as DatePicker } from \"./components/DatePicker/DatePicker\";\nexport { default as HeaderLarge } from \"./components/HeaderLarge\";\nexport { default as HeaderMedium } from \"./components/HeaderMedium\";\nexport { default as HeaderOverline } from \"./components/HeaderOverline\";\nexport { default as Picker } from \"./components/Picker/Picker\";\nexport { default as ProgressBar } from \"./components/ProgressBar\";\nexport { default as ProgressCircle } from \"./components/ProgressCircle\";\nexport { default as RowBodyIcon } from \"./components/RowBodyIcon\";\nexport { default as RowHeadlineImageCaption } from \"./components/RowHeadlineImageCaption\";\nexport { default as RowHeadlineImageIcon } from \"./components/RowHeadlineImageIcon\";\nexport { default as Slider } from \"./components/Slider\";\nexport { default as Stepper } from \"./components/Stepper\";\nexport { useAuthState } from \"./components/useAuthState\";\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["ActionSheetCancel.js"],"names":["React","COMPONENT_TYPES","createActionProp","createColorProp","createTextProp","GROUPS","Triggers","ActionSheetItem","ActionSheetCancel","label","color","style","onPress","createElement","SEED_DATA","name","tag","description","category","button","triggers","OnPress","props","group","basic","defaultValue"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,eAAT,EAA0BC,gBAA1B,EAA4CC,eAA5C,EAA6DC,cAA7D,EAA6EC,MAA7E,EAAqFC,QAArF,QAAsG,iBAAtG;AACA,OAAOC,eAAP,MAA4B,mBAA5B;;AACA,MAAMC,iBAAiB,GAAG,CAAC;AAAEC,EAAAA,KAAK,GAAG,QAAV;AAAoBC,EAAAA,KAApB;AAA2BC,EAAAA,KAA3B;AAAkCC,EAAAA;AAAlC,CAAD,KAAkD;AACxE,sBAAQZ,KAAK,CAACa,aAAN,CAAoBN,eAApB,EAAqC;AAAEE,IAAAA,KAAK,EAAEA,KAAT;AAAgBC,IAAAA,KAAK,EAAEA,KAAK,IAAI,SAAhC;AAA2CC,IAAAA,KAAK,EAAE,CAACA,KAAD,CAAlD;AAA2DC,IAAAA,OAAO,EAAEA;AAApE,GAArC,CAAR;AACH,CAFD;;AAGA,eAAeJ,iBAAf;AACA,OAAO,MAAMM,SAAS,GAAG;AACrBC,EAAAA,IAAI,EAAE,qBADe;AAErBC,EAAAA,GAAG,EAAE,mBAFgB;AAGrBC,EAAAA,WAAW,EAAE,qBAHQ;AAIrBC,EAAAA,QAAQ,EAAEjB,eAAe,CAACkB,MAJL;AAKrBC,EAAAA,QAAQ,EAAE,CAACd,QAAQ,CAACe,OAAV,CALW;AAMrBC,EAAAA,KAAK,EAAE;AACHV,IAAAA,OAAO,EAAEV,gBAAgB,EADtB;AAEHO,IAAAA,KAAK,EAAEL,cAAc,CAAC;AAClBmB,MAAAA,KAAK,EAAElB,MAAM,CAACmB,KADI;AAElBf,MAAAA,KAAK,EAAE,OAFW;AAGlBgB,MAAAA,YAAY,EAAE;AAHI,KAAD,CAFlB;AAOHf,IAAAA,KAAK,EAAEP,eAAe,CAAC;AACnBM,MAAAA,KAAK,EAAE;AADY,KAAD;AAPnB;AANc,CAAlB","sourcesContent":["import React from \"react\";\nimport { COMPONENT_TYPES, createActionProp, createColorProp, createTextProp, GROUPS, Triggers, } from \"@draftbit/types\";\nimport ActionSheetItem from \"./ActionSheetItem\";\nconst ActionSheetCancel = ({ label = \"Cancel\", color, style, onPress, }) => {\n return (React.createElement(ActionSheetItem, { label: label, color: color || \"#FF453A\", style: [style], onPress: onPress }));\n};\nexport default ActionSheetCancel;\nexport const SEED_DATA = {\n name: \"Action Sheet Cancel\",\n tag: \"ActionSheetCancel\",\n description: \"Action Sheet cancel\",\n category: COMPONENT_TYPES.button,\n triggers: [Triggers.OnPress],\n props: {\n onPress: createActionProp(),\n label: createTextProp({\n group: GROUPS.basic,\n label: \"Label\",\n defaultValue: \"Cancel\",\n }),\n color: createColorProp({\n label: \"Font Color\",\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["ActionSheetCancel.tsx"],"names":["React","COMPONENT_TYPES","createActionProp","createColorProp","createTextProp","GROUPS","Triggers","ActionSheetItem","ActionSheetCancel","label","color","style","onPress","SEED_DATA","name","tag","description","category","button","triggers","OnPress","props","group","basic","defaultValue"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,SACEC,eADF,EAEEC,gBAFF,EAGEC,eAHF,EAIEC,cAJF,EAKEC,MALF,EAMEC,QANF,QAOO,iBAPP;AAQA,OAAOC,eAAP,MAA4B,mBAA5B;;AASA,MAAMC,iBAAkC,GAAG,CAAC;AAC1CC,EAAAA,KAAK,GAAG,QADkC;AAE1CC,EAAAA,KAF0C;AAG1CC,EAAAA,KAH0C;AAI1CC,EAAAA;AAJ0C,CAAD,KAKrC;AACJ,sBACE,oBAAC,eAAD;AACE,IAAA,KAAK,EAAEH,KADT;AAEE,IAAA,KAAK,EAAEC,KAAK,IAAI,SAFlB;AAGE,IAAA,KAAK,EAAE,CAACC,KAAD,CAHT;AAIE,IAAA,OAAO,EAAEC;AAJX,IADF;AAQD,CAdD;;AAgBA,eAAeJ,iBAAf;AAEA,OAAO,MAAMK,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,qBADiB;AAEvBC,EAAAA,GAAG,EAAE,mBAFkB;AAGvBC,EAAAA,WAAW,EAAE,qBAHU;AAIvBC,EAAAA,QAAQ,EAAEhB,eAAe,CAACiB,MAJH;AAKvBC,EAAAA,QAAQ,EAAE,CAACb,QAAQ,CAACc,OAAV,CALa;AAMvBC,EAAAA,KAAK,EAAE;AACLT,IAAAA,OAAO,EAAEV,gBAAgB,EADpB;AAELO,IAAAA,KAAK,EAAEL,cAAc,CAAC;AACpBkB,MAAAA,KAAK,EAAEjB,MAAM,CAACkB,KADM;AAEpBd,MAAAA,KAAK,EAAE,OAFa;AAGpBe,MAAAA,YAAY,EAAE;AAHM,KAAD,CAFhB;AAOLd,IAAAA,KAAK,EAAEP,eAAe,CAAC;AACrBM,MAAAA,KAAK,EAAE;AADc,KAAD;AAPjB;AANgB,CAAlB","sourcesContent":["import React from \"react\";\nimport { StyleProp, ViewStyle, TextStyle } from \"react-native\";\nimport {\n COMPONENT_TYPES,\n createActionProp,\n createColorProp,\n createTextProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\nimport ActionSheetItem from \"./ActionSheetItem\";\n\ntype Props = {\n label: string;\n color: string;\n style?: StyleProp<ViewStyle | TextStyle>;\n onPress?: () => void;\n};\n\nconst ActionSheetCancel: React.FC<Props> = ({\n label = \"Cancel\",\n color,\n style,\n onPress,\n}) => {\n return (\n <ActionSheetItem\n label={label}\n color={color || \"#FF453A\"}\n style={[style]}\n onPress={onPress}\n />\n );\n};\n\nexport default ActionSheetCancel;\n\nexport const SEED_DATA = {\n name: \"Action Sheet Cancel\",\n tag: \"ActionSheetCancel\",\n description: \"Action Sheet cancel\",\n category: COMPONENT_TYPES.button,\n triggers: [Triggers.OnPress],\n props: {\n onPress: createActionProp(),\n label: createTextProp({\n group: GROUPS.basic,\n label: \"Label\",\n defaultValue: \"Cancel\",\n }),\n color: createColorProp({\n label: \"Font Color\",\n }),\n },\n};\n"]}
@@ -1,3 +1,5 @@
1
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
1
3
  import * as React from "react";
2
4
  import { withTheme } from "../theming";
3
5
  import { ScrollView, View, StyleSheet, Dimensions } from "react-native";
@@ -49,10 +51,9 @@ function Carousel({
49
51
  } = StyleSheet.flatten(style || {});
50
52
  const slideWidth = width || screenWidth;
51
53
  const slideHeight = height || 250;
52
- return /*#__PURE__*/React.createElement(View, {
53
- style: [styles.container, style],
54
- ...rest
55
- }, /*#__PURE__*/React.createElement(ScrollView, {
54
+ return /*#__PURE__*/React.createElement(View, _extends({
55
+ style: [styles.container, style]
56
+ }, rest), /*#__PURE__*/React.createElement(ScrollView, {
56
57
  pagingEnabled: true,
57
58
  horizontal: true,
58
59
  decelerationRate: "fast",