@draftbit/core 43.2.5 → 43.2.6-afba6e.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 (56) hide show
  1. package/lib/commonjs/components/Accordion/AccordionItem.js +21 -5
  2. package/lib/commonjs/components/Accordion/AccordionItem.js.map +1 -1
  3. package/lib/commonjs/components/AnimatedCircularProgress.js +11 -3
  4. package/lib/commonjs/components/AnimatedCircularProgress.js.map +1 -1
  5. package/lib/commonjs/components/Checkbox/Checkbox.js +13 -2
  6. package/lib/commonjs/components/Checkbox/Checkbox.js.map +1 -1
  7. package/lib/commonjs/components/DeprecatedFAB.js +4 -20
  8. package/lib/commonjs/components/DeprecatedFAB.js.map +1 -1
  9. package/lib/commonjs/components/Divider.js +3 -13
  10. package/lib/commonjs/components/Divider.js.map +1 -1
  11. package/lib/commonjs/components/Elevation.js +14 -3
  12. package/lib/commonjs/components/Elevation.js.map +1 -1
  13. package/lib/commonjs/index.js +0 -8
  14. package/lib/commonjs/index.js.map +1 -1
  15. package/lib/commonjs/mappings/Card.js +1 -2
  16. package/lib/commonjs/mappings/Card.js.map +1 -1
  17. package/lib/commonjs/mappings/Checkbox.js +1 -1
  18. package/lib/commonjs/mappings/Checkbox.js.map +1 -1
  19. package/lib/module/components/Accordion/index.js.map +1 -1
  20. package/lib/module/components/Checkbox/Checkbox.js +13 -2
  21. package/lib/module/components/Checkbox/Checkbox.js.map +1 -1
  22. package/lib/module/components/Portal/PortalConsumer.js.map +1 -1
  23. package/lib/module/components/Portal/PortalManager.js +1 -1
  24. package/lib/module/components/Portal/PortalManager.js.map +1 -1
  25. package/lib/module/components/RowBodyIcon.js.map +1 -1
  26. package/lib/module/index.js +0 -1
  27. package/lib/module/index.js.map +1 -1
  28. package/lib/module/mappings/Card.js +1 -2
  29. package/lib/module/mappings/Card.js.map +1 -1
  30. package/lib/module/mappings/Checkbox.js +1 -1
  31. package/lib/module/mappings/Checkbox.js.map +1 -1
  32. package/lib/typescript/src/components/Checkbox/Checkbox.d.ts +2 -0
  33. package/lib/typescript/src/index.d.ts +0 -1
  34. package/package.json +3 -3
  35. package/src/components/Checkbox/Checkbox.js +10 -3
  36. package/src/components/Checkbox/Checkbox.tsx +15 -2
  37. package/src/index.js +0 -1
  38. package/src/index.tsx +0 -1
  39. package/src/mappings/Card.js +1 -1
  40. package/src/mappings/Card.ts +1 -1
  41. package/src/mappings/Checkbox.js +1 -1
  42. package/src/mappings/Checkbox.ts +1 -1
  43. package/lib/commonjs/components/ToggleButton.js +0 -86
  44. package/lib/commonjs/components/ToggleButton.js.map +0 -1
  45. package/lib/commonjs/mappings/ToggleButton.js +0 -60
  46. package/lib/commonjs/mappings/ToggleButton.js.map +0 -1
  47. package/lib/module/components/ToggleButton.js +0 -67
  48. package/lib/module/components/ToggleButton.js.map +0 -1
  49. package/lib/module/mappings/ToggleButton.js +0 -51
  50. package/lib/module/mappings/ToggleButton.js.map +0 -1
  51. package/lib/typescript/src/components/ToggleButton.d.ts +0 -24
  52. package/lib/typescript/src/mappings/ToggleButton.d.ts +0 -124
  53. package/src/components/ToggleButton.js +0 -39
  54. package/src/components/ToggleButton.tsx +0 -94
  55. package/src/mappings/ToggleButton.js +0 -50
  56. package/src/mappings/ToggleButton.ts +0 -62
@@ -21,8 +21,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
21
21
 
22
22
  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; }
23
23
 
24
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
25
-
26
24
  const AccordionItem = _ref => {
27
25
  let {
28
26
  Icon,
@@ -37,9 +35,10 @@ const AccordionItem = _ref => {
37
35
  textStyles,
38
36
  viewStyles
39
37
  } = (0, _utilities.extractStyles)(style);
40
- return /*#__PURE__*/React.createElement(_reactNative.Pressable, _extends({
41
- style: [styles.container, viewStyles]
42
- }, rest), /*#__PURE__*/React.createElement(_reactNative.View, {
38
+ return /*#__PURE__*/React.createElement(_reactNative.Pressable, {
39
+ style: [styles.container, viewStyles],
40
+ ...rest
41
+ }, /*#__PURE__*/React.createElement(_reactNative.View, {
43
42
  style: styles.row
44
43
  }, icon ? /*#__PURE__*/React.createElement(Icon, {
45
44
  name: icon,
@@ -74,5 +73,22 @@ const styles = _reactNative.StyleSheet.create({
74
73
 
75
74
  var _default = (0, _theming.withTheme)(AccordionItem);
76
75
 
76
+ exports.default = _default;
77
+ //# sourceMappingURL=AccordionItem.js.map flexDirection: "row",
78
+ alignItems: "center",
79
+ paddingLeft: 8
80
+ },
81
+ item: {
82
+ marginVertical: 6,
83
+ paddingLeft: 8
84
+ },
85
+ content: {
86
+ flex: 1,
87
+ justifyContent: "center"
88
+ }
89
+ });
90
+
91
+ var _default = (0, _theming.withTheme)(AccordionItem);
92
+
77
93
  exports.default = _default;
78
94
  //# sourceMappingURL=AccordionItem.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["AccordionItem.tsx"],"names":["AccordionItem","Icon","icon","label","style","iconColor","theme","rest","textStyles","viewStyles","styles","container","row","colors","primary","item","content","StyleSheet","create","padding","flexDirection","alignItems","paddingLeft","marginVertical","flex","justifyContent"],"mappings":";;;;;;;AAAA;;AACA;;AAQA;;AAEA;;AACA;;;;;;;;;;AAWA,MAAMA,aAAa,GAAG,QAQT;AAAA,MARU;AACrBC,IAAAA,IADqB;AAErBC,IAAAA,IAFqB;AAGrBC,IAAAA,KAHqB;AAIrBC,IAAAA,KAJqB;AAKrBC,IAAAA,SALqB;AAMrBC,IAAAA,KANqB;AAOrB,OAAGC;AAPkB,GAQV;AACX,QAAM;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAA6B,8BAAcL,KAAd,CAAnC;AACA,sBACE,oBAAC,sBAAD;AAAW,IAAA,KAAK,EAAE,CAACM,MAAM,CAACC,SAAR,EAAmBF,UAAnB;AAAlB,KAAsDF,IAAtD,gBACE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAEG,MAAM,CAACE;AAApB,KACGV,IAAI,gBACH,oBAAC,IAAD;AACE,IAAA,IAAI,EAAEA,IADR;AAEE,IAAA,IAAI,EAAE,EAFR;AAGE,IAAA,KAAK,EAAEG,SAAS,IAAIC,KAAK,CAACO,MAAN,CAAaC;AAHnC,IADG,GAMD,IAPN,eAQE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACJ,MAAM,CAACK,IAAR,EAAcL,MAAM,CAACM,OAArB;AAAb,kBACE,oBAAC,aAAD;AAAM,IAAA,UAAU,EAAE,KAAlB;AAAyB,IAAA,KAAK,EAAER;AAAhC,KACGL,KADH,CADF,CARF,CADF,CADF;AAkBD,CA5BD;;AA8BA,MAAMO,MAAM,GAAGO,wBAAWC,MAAX,CAAkB;AAC/BP,EAAAA,SAAS,EAAE;AACTQ,IAAAA,OAAO,EAAE;AADA,GADoB;AAI/BP,EAAAA,GAAG,EAAE;AACHQ,IAAAA,aAAa,EAAE,KADZ;AAEHC,IAAAA,UAAU,EAAE,QAFT;AAGHC,IAAAA,WAAW,EAAE;AAHV,GAJ0B;AAS/BP,EAAAA,IAAI,EAAE;AACJQ,IAAAA,cAAc,EAAE,CADZ;AAEJD,IAAAA,WAAW,EAAE;AAFT,GATyB;AAa/BN,EAAAA,OAAO,EAAE;AACPQ,IAAAA,IAAI,EAAE,CADC;AAEPC,IAAAA,cAAc,EAAE;AAFT;AAbsB,CAAlB,CAAf;;eAmBe,wBAAUzB,aAAV,C","sourcesContent":["import * as React from \"react\";\nimport {\n Pressable,\n StyleSheet,\n View,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\n\nimport Text from \"../Text\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport { extractStyles } from \"../../utilities\";\nimport { withTheme } from \"../../theming\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\n\ntype Props = {\n icon?: string;\n label: string;\n iconColor?: string;\n style?: StyleProp<ViewStyle>;\n theme: Theme;\n} & IconSlot;\n\nconst AccordionItem = ({\n Icon,\n icon,\n label,\n style,\n iconColor,\n theme,\n ...rest\n}: Props) => {\n const { textStyles, viewStyles } = extractStyles(style);\n return (\n <Pressable style={[styles.container, viewStyles]} {...rest}>\n <View style={styles.row}>\n {icon ? (\n <Icon\n name={icon}\n size={24}\n color={iconColor || theme.colors.primary}\n />\n ) : null}\n <View style={[styles.item, styles.content]}>\n <Text selectable={false} style={textStyles}>\n {label}\n </Text>\n </View>\n </View>\n </Pressable>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n padding: 8,\n },\n row: {\n flexDirection: \"row\",\n alignItems: \"center\",\n paddingLeft: 8,\n },\n item: {\n marginVertical: 6,\n paddingLeft: 8,\n },\n content: {\n flex: 1,\n justifyContent: \"center\",\n },\n});\n\nexport default withTheme(AccordionItem);\n"]}
1
+ {"version":3,"sources":["AccordionItem.js"],"names":["AccordionItem","Icon","icon","label","style","iconColor","theme","rest","textStyles","viewStyles","React","createElement","Pressable","styles","container","View","row","name","size","color","colors","primary","item","content","Text","selectable","StyleSheet","create","padding","flexDirection","alignItems","paddingLeft","marginVertical","flex","justifyContent"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AACA,MAAMA,aAAa,GAAG,QAA6D;AAAA,MAA5D;AAAEC,IAAAA,IAAF;AAAQC,IAAAA,IAAR;AAAcC,IAAAA,KAAd;AAAqBC,IAAAA,KAArB;AAA4BC,IAAAA,SAA5B;AAAuCC,IAAAA,KAAvC;AAA8C,OAAGC;AAAjD,GAA4D;AAC/E,QAAM;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAA6B,8BAAcL,KAAd,CAAnC;AACA,sBAAQM,KAAK,CAACC,aAAN,CAAoBC,sBAApB,EAA+B;AAAER,IAAAA,KAAK,EAAE,CAACS,MAAM,CAACC,SAAR,EAAmBL,UAAnB,CAAT;AAAyC,OAAGF;AAA5C,GAA/B,eACJG,KAAK,CAACC,aAAN,CAAoBI,iBAApB,EAA0B;AAAEX,IAAAA,KAAK,EAAES,MAAM,CAACG;AAAhB,GAA1B,EACId,IAAI,gBAAIQ,KAAK,CAACC,aAAN,CAAoBV,IAApB,EAA0B;AAAEgB,IAAAA,IAAI,EAAEf,IAAR;AAAcgB,IAAAA,IAAI,EAAE,EAApB;AAAwBC,IAAAA,KAAK,EAAEd,SAAS,IAAIC,KAAK,CAACc,MAAN,CAAaC;AAAzD,GAA1B,CAAJ,GAAqG,IAD7G,eAEIX,KAAK,CAACC,aAAN,CAAoBI,iBAApB,EAA0B;AAAEX,IAAAA,KAAK,EAAE,CAACS,MAAM,CAACS,IAAR,EAAcT,MAAM,CAACU,OAArB;AAAT,GAA1B,eACIb,KAAK,CAACC,aAAN,CAAoBa,aAApB,EAA0B;AAAEC,IAAAA,UAAU,EAAE,KAAd;AAAqBrB,IAAAA,KAAK,EAAEI;AAA5B,GAA1B,EAAoEL,KAApE,CADJ,CAFJ,CADI,CAAR;AAKH,CAPD;;AAQA,MAAMU,MAAM,GAAGa,wBAAWC,MAAX,CAAkB;AAC7Bb,EAAAA,SAAS,EAAE;AACPc,IAAAA,OAAO,EAAE;AADF,GADkB;AAI7BZ,EAAAA,GAAG,EAAE;AACDa,IAAAA,aAAa,EAAE,KADd;AAEDC,IAAAA,UAAU,EAAE,QAFX;AAGDC,IAAAA,WAAW,EAAE;AAHZ,GAJwB;AAS7BT,EAAAA,IAAI,EAAE;AACFU,IAAAA,cAAc,EAAE,CADd;AAEFD,IAAAA,WAAW,EAAE;AAFX,GATuB;AAa7BR,EAAAA,OAAO,EAAE;AACLU,IAAAA,IAAI,EAAE,CADD;AAELC,IAAAA,cAAc,EAAE;AAFX;AAboB,CAAlB,CAAf;;eAkBe,wBAAUlC,aAAV,C","sourcesContent":["import * as React from \"react\";\nimport { Pressable, StyleSheet, View, } from \"react-native\";\nimport Text from \"../Text\";\nimport { extractStyles } from \"../../utilities\";\nimport { withTheme } from \"../../theming\";\nconst AccordionItem = ({ Icon, icon, label, style, iconColor, theme, ...rest }) => {\n const { textStyles, viewStyles } = extractStyles(style);\n return (React.createElement(Pressable, { style: [styles.container, viewStyles], ...rest },\n React.createElement(View, { style: styles.row },\n icon ? (React.createElement(Icon, { name: icon, size: 24, color: iconColor || theme.colors.primary })) : null,\n React.createElement(View, { style: [styles.item, styles.content] },\n React.createElement(Text, { selectable: false, style: textStyles }, label)))));\n};\nconst styles = StyleSheet.create({\n container: {\n padding: 8,\n },\n row: {\n flexDirection: \"row\",\n alignItems: \"center\",\n paddingLeft: 8,\n },\n item: {\n marginVertical: 6,\n paddingLeft: 8,\n },\n content: {\n flex: 1,\n justifyContent: \"center\",\n },\n});\nexport default withTheme(AccordionItem);\n"]}
@@ -17,8 +17,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
17
17
 
18
18
  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; }
19
19
 
20
- 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); }
21
-
22
20
  const AnimatedProgress = _reactNative.Animated.createAnimatedComponent(_CircularProgress.default);
23
21
 
24
22
  const AnimatedCircularProgress = _ref => {
@@ -69,7 +67,17 @@ const AnimatedCircularProgress = _ref => {
69
67
  React.useEffect(() => {
70
68
  animate();
71
69
  }, [fill, animate]);
72
- return /*#__PURE__*/React.createElement(AnimatedProgress, _extends({}, other, {
70
+ return /*#__PURE__*/React.createElement(AnimatedProgress, { ...other,
71
+ style: other.style,
72
+ childrenContainerStyle: other.childrenContainerStyle,
73
+ fill: fillAnimation,
74
+ tintColor: animateColor()
75
+ });
76
+ };
77
+
78
+ var _default = AnimatedCircularProgress;
79
+ exports.default = _default;
80
+ //# sourceMappingURL=AnimatedCircularProgress.js.map/React.createElement(AnimatedProgress, _extends({}, other, {
73
81
  style: other.style,
74
82
  childrenContainerStyle: other.childrenContainerStyle,
75
83
  fill: fillAnimation,
@@ -1 +1 @@
1
- {"version":3,"sources":["AnimatedCircularProgress.tsx"],"names":["AnimatedProgress","Animated","createAnimatedComponent","CircularProgress","AnimatedCircularProgress","duration","easing","Easing","out","ease","fill","prefill","useNativeDriver","tintColorSecondary","onAnimationComplete","tintColor","other","fillAnimation","React","useState","Value","animate","useCallback","toVal","dur","toValue","dura","eas","useNative","anim","timing","start","animateColor","tintAnimation","interpolate","inputRange","outputRange","useEffect","style","childrenContainerStyle"],"mappings":";;;;;;;AAAA;;AACA;;AAOA;;;;;;;;;;AAGA,MAAMA,gBAAgB,GAAGC,sBAASC,uBAAT,CAAiCC,yBAAjC,CAAzB;;AAWA,MAAMC,wBAAyC,GAAG,QAU5C;AAAA,MAV6C;AACjDC,IAAAA,QAAQ,GAAG,GADsC;AAEjDC,IAAAA,MAAM,GAAGC,oBAAOC,GAAP,CAAWD,oBAAOE,IAAlB,CAFwC;AAGjDC,IAAAA,IAHiD;AAIjDC,IAAAA,OAAO,GAAG,CAJuC;AAKjDC,IAAAA,eAAe,GAAG,KAL+B;AAMjDC,IAAAA,kBANiD;AAOjDC,IAAAA,mBAPiD;AAQjDC,IAAAA,SAAS,GAAG,OARqC;AASjD,OAAGC;AAT8C,GAU7C;AACJ,QAAM,CAACC,aAAD,IAAkBC,KAAK,CAACC,QAAN,CACtB,IAAIlB,sBAASmB,KAAb,CAAmBT,OAAnB,CADsB,CAAxB;AAIA,QAAMU,OAAO,GAAGH,KAAK,CAACI,WAAN,CACd,YAIkC;AAAA,QAHhCC,KAGgC,uEAHhB,CAAC,CAGe;AAAA,QAFhCC,GAEgC;AAAA,QADhCf,IACgC;AAChC,UAAMgB,OAAO,GAAGF,KAAK,IAAI,CAAT,GAAaA,KAAb,GAAqBb,IAArC;AACA,UAAMgB,IAAI,GAAGF,GAAG,IAAInB,QAApB;AACA,UAAMsB,GAAG,GAAGlB,IAAI,IAAIH,MAApB;AACA,UAAMsB,SAAS,GAAGhB,eAAlB;;AAEA,UAAMiB,IAAI,GAAG5B,sBAAS6B,MAAT,CAAgBb,aAAhB,EAA+B;AAC1CL,MAAAA,eAAe,EAAEgB,SADyB;AAE1CH,MAAAA,OAF0C;AAG1CnB,MAAAA,MAAM,EAAEqB,GAHkC;AAI1CtB,MAAAA,QAAQ,EAAEqB;AAJgC,KAA/B,CAAb;;AAMAG,IAAAA,IAAI,CAACE,KAAL,CAAWjB,mBAAX;AAEA,WAAOe,IAAP;AACD,GApBa,EAqBd,CACExB,QADF,EAEEC,MAFF,EAGEI,IAHF,EAIEE,eAJF,EAKEK,aALF,EAMEH,mBANF,CArBc,CAAhB;;AA+BA,QAAMkB,YAAY,GAAG,MAAM;AACzB,QAAI,CAACnB,kBAAL,EAAyB;AACvB,aAAOE,SAAP;AACD;;AAED,UAAMkB,aAAa,GAAGhB,aAAa,CAACiB,WAAd,CAA0B;AAC9CC,MAAAA,UAAU,EAAE,CAAC,CAAD,EAAI,GAAJ,CADkC;AAE9CC,MAAAA,WAAW,EAAE,CAACrB,SAAD,EAAYF,kBAAZ;AAFiC,KAA1B,CAAtB;AAKA,WAAOoB,aAAP;AACD,GAXD;;AAaAf,EAAAA,KAAK,CAACmB,SAAN,CAAgB,MAAM;AACpBhB,IAAAA,OAAO;AACR,GAFD,EAEG,CAACX,IAAD,EAAOW,OAAP,CAFH;AAIA,sBACE,oBAAC,gBAAD,eACML,KADN;AAEE,IAAA,KAAK,EAAEA,KAAK,CAACsB,KAFf;AAGE,IAAA,sBAAsB,EACpBtB,KAAK,CAACuB,sBAJV;AAQE,IAAA,IAAI,EAAEtB,aARR;AASE,IAAA,SAAS,EAAEe,YAAY;AATzB,KADF;AAaD,CA5ED;;eA8Ee5B,wB","sourcesContent":["import * as React from \"react\";\nimport {\n Animated,\n Easing,\n EasingFunction,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport CircularProgress, {\n Props as CircularProgressProps,\n} from \"./CircularProgress\";\nconst AnimatedProgress = Animated.createAnimatedComponent(CircularProgress);\n\ntype Props = {\n duration?: number;\n easing?: EasingFunction;\n prefill?: number;\n useNativeDriver?: boolean;\n tintColorSecondary?: string;\n onAnimationComplete?: Animated.EndCallback | undefined;\n} & CircularProgressProps;\n\nconst AnimatedCircularProgress: React.FC<Props> = ({\n duration = 500,\n easing = Easing.out(Easing.ease),\n fill,\n prefill = 0,\n useNativeDriver = false,\n tintColorSecondary,\n onAnimationComplete,\n tintColor = \"black\",\n ...other\n}) => {\n const [fillAnimation] = React.useState<Animated.Value>(\n new Animated.Value(prefill)\n );\n\n const animate = React.useCallback(\n (\n toVal: number = -1,\n dur?: number,\n ease?: EasingFunction\n ): Animated.CompositeAnimation => {\n const toValue = toVal >= 0 ? toVal : fill;\n const dura = dur || duration;\n const eas = ease || easing;\n const useNative = useNativeDriver;\n\n const anim = Animated.timing(fillAnimation, {\n useNativeDriver: useNative,\n toValue,\n easing: eas,\n duration: dura,\n });\n anim.start(onAnimationComplete);\n\n return anim;\n },\n [\n duration,\n easing,\n fill,\n useNativeDriver,\n fillAnimation,\n onAnimationComplete,\n ]\n );\n\n const animateColor = () => {\n if (!tintColorSecondary) {\n return tintColor;\n }\n\n const tintAnimation = fillAnimation.interpolate({\n inputRange: [0, 100],\n outputRange: [tintColor, tintColorSecondary],\n });\n\n return tintAnimation;\n };\n\n React.useEffect(() => {\n animate();\n }, [fill, animate]);\n\n return (\n <AnimatedProgress\n {...other}\n style={other.style as Animated.WithAnimatedValue<StyleProp<ViewStyle>>}\n childrenContainerStyle={\n other.childrenContainerStyle as Animated.WithAnimatedValue<\n StyleProp<ViewStyle>\n >\n }\n fill={fillAnimation}\n tintColor={animateColor()}\n />\n );\n};\n\nexport default AnimatedCircularProgress;\n"]}
1
+ {"version":3,"sources":["AnimatedCircularProgress.js"],"names":["AnimatedProgress","Animated","createAnimatedComponent","CircularProgress","AnimatedCircularProgress","duration","easing","Easing","out","ease","fill","prefill","useNativeDriver","tintColorSecondary","onAnimationComplete","tintColor","other","fillAnimation","React","useState","Value","animate","useCallback","toVal","dur","toValue","dura","eas","useNative","anim","timing","start","animateColor","tintAnimation","interpolate","inputRange","outputRange","useEffect","createElement","style","childrenContainerStyle"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;;;AACA,MAAMA,gBAAgB,GAAGC,sBAASC,uBAAT,CAAiCC,yBAAjC,CAAzB;;AACA,MAAMC,wBAAwB,GAAG,QAA8K;AAAA,MAA7K;AAAEC,IAAAA,QAAQ,GAAG,GAAb;AAAkBC,IAAAA,MAAM,GAAGC,oBAAOC,GAAP,CAAWD,oBAAOE,IAAlB,CAA3B;AAAoDC,IAAAA,IAApD;AAA0DC,IAAAA,OAAO,GAAG,CAApE;AAAuEC,IAAAA,eAAe,GAAG,KAAzF;AAAgGC,IAAAA,kBAAhG;AAAoHC,IAAAA,mBAApH;AAAyIC,IAAAA,SAAS,GAAG,OAArJ;AAA8J,OAAGC;AAAjK,GAA6K;AAC3M,QAAM,CAACC,aAAD,IAAkBC,KAAK,CAACC,QAAN,CAAe,IAAIlB,sBAASmB,KAAb,CAAmBT,OAAnB,CAAf,CAAxB;AACA,QAAMU,OAAO,GAAGH,KAAK,CAACI,WAAN,CAAkB,YAA2B;AAAA,QAA1BC,KAA0B,uEAAlB,CAAC,CAAiB;AAAA,QAAdC,GAAc;AAAA,QAATf,IAAS;AACzD,UAAMgB,OAAO,GAAGF,KAAK,IAAI,CAAT,GAAaA,KAAb,GAAqBb,IAArC;AACA,UAAMgB,IAAI,GAAGF,GAAG,IAAInB,QAApB;AACA,UAAMsB,GAAG,GAAGlB,IAAI,IAAIH,MAApB;AACA,UAAMsB,SAAS,GAAGhB,eAAlB;;AACA,UAAMiB,IAAI,GAAG5B,sBAAS6B,MAAT,CAAgBb,aAAhB,EAA+B;AACxCL,MAAAA,eAAe,EAAEgB,SADuB;AAExCH,MAAAA,OAFwC;AAGxCnB,MAAAA,MAAM,EAAEqB,GAHgC;AAIxCtB,MAAAA,QAAQ,EAAEqB;AAJ8B,KAA/B,CAAb;;AAMAG,IAAAA,IAAI,CAACE,KAAL,CAAWjB,mBAAX;AACA,WAAOe,IAAP;AACH,GAbe,EAab,CACCxB,QADD,EAECC,MAFD,EAGCI,IAHD,EAICE,eAJD,EAKCK,aALD,EAMCH,mBAND,CAba,CAAhB;;AAqBA,QAAMkB,YAAY,GAAG,MAAM;AACvB,QAAI,CAACnB,kBAAL,EAAyB;AACrB,aAAOE,SAAP;AACH;;AACD,UAAMkB,aAAa,GAAGhB,aAAa,CAACiB,WAAd,CAA0B;AAC5CC,MAAAA,UAAU,EAAE,CAAC,CAAD,EAAI,GAAJ,CADgC;AAE5CC,MAAAA,WAAW,EAAE,CAACrB,SAAD,EAAYF,kBAAZ;AAF+B,KAA1B,CAAtB;AAIA,WAAOoB,aAAP;AACH,GATD;;AAUAf,EAAAA,KAAK,CAACmB,SAAN,CAAgB,MAAM;AAClBhB,IAAAA,OAAO;AACV,GAFD,EAEG,CAACX,IAAD,EAAOW,OAAP,CAFH;AAGA,sBAAQH,KAAK,CAACoB,aAAN,CAAoBtC,gBAApB,EAAsC,EAAE,GAAGgB,KAAL;AAAYuB,IAAAA,KAAK,EAAEvB,KAAK,CAACuB,KAAzB;AAAgCC,IAAAA,sBAAsB,EAAExB,KAAK,CAACwB,sBAA9D;AAAsF9B,IAAAA,IAAI,EAAEO,aAA5F;AAA2GF,IAAAA,SAAS,EAAEiB,YAAY;AAAlI,GAAtC,CAAR;AACH,CArCD;;eAsCe5B,wB","sourcesContent":["import * as React from \"react\";\nimport { Animated, Easing, } from \"react-native\";\nimport CircularProgress from \"./CircularProgress\";\nconst AnimatedProgress = Animated.createAnimatedComponent(CircularProgress);\nconst AnimatedCircularProgress = ({ duration = 500, easing = Easing.out(Easing.ease), fill, prefill = 0, useNativeDriver = false, tintColorSecondary, onAnimationComplete, tintColor = \"black\", ...other }) => {\n const [fillAnimation] = React.useState(new Animated.Value(prefill));\n const animate = React.useCallback((toVal = -1, dur, ease) => {\n const toValue = toVal >= 0 ? toVal : fill;\n const dura = dur || duration;\n const eas = ease || easing;\n const useNative = useNativeDriver;\n const anim = Animated.timing(fillAnimation, {\n useNativeDriver: useNative,\n toValue,\n easing: eas,\n duration: dura,\n });\n anim.start(onAnimationComplete);\n return anim;\n }, [\n duration,\n easing,\n fill,\n useNativeDriver,\n fillAnimation,\n onAnimationComplete,\n ]);\n const animateColor = () => {\n if (!tintColorSecondary) {\n return tintColor;\n }\n const tintAnimation = fillAnimation.interpolate({\n inputRange: [0, 100],\n outputRange: [tintColor, tintColorSecondary],\n });\n return tintAnimation;\n };\n React.useEffect(() => {\n animate();\n }, [fill, animate]);\n return (React.createElement(AnimatedProgress, { ...other, style: other.style, childrenContainerStyle: other.childrenContainerStyle, fill: fillAnimation, tintColor: animateColor() }));\n};\nexport default AnimatedCircularProgress;\n"]}
@@ -29,6 +29,8 @@ const Checkbox = _ref => {
29
29
  status,
30
30
  disabled = false,
31
31
  onPress = () => {},
32
+ onCheck,
33
+ onUncheck,
32
34
  color,
33
35
  uncheckedColor,
34
36
  defaultValue,
@@ -58,8 +60,17 @@ const Checkbox = _ref => {
58
60
  const checkboxColor = internalValue ? color || colors.primary : uncheckedColor || colors.primary;
59
61
 
60
62
  const handlePress = () => {
61
- setInternalValue(!internalValue);
62
- onPress(!internalValue);
63
+ const newValue = !internalValue;
64
+ setInternalValue(newValue);
65
+ onPress(newValue);
66
+
67
+ if (onCheck && newValue) {
68
+ onCheck();
69
+ }
70
+
71
+ if (onUncheck && !newValue) {
72
+ onUncheck();
73
+ }
63
74
  };
64
75
 
65
76
  return /*#__PURE__*/React.createElement(_Touchable.default, _extends({}, rest, {
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.tsx"],"names":["Checkbox","Icon","status","disabled","onPress","color","uncheckedColor","defaultValue","checkedIcon","uncheckedIcon","size","style","rest","internalValue","setInternalValue","React","useState","useEffect","previousDefaultValue","Boolean","colors","checkboxColor","primary","handlePress","styles","container","width","height","icon","StyleSheet","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport interface CheckboxProps {\n status?: boolean;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n defaultValue?: boolean;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status,\n disabled = false,\n onPress = () => {},\n color,\n uncheckedColor,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<boolean>(\n status || defaultValue || false\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n // This special logic is to handle weird APIs like Airtable that return\n // true or undefined for a boolean\n const previousDefaultValue = usePrevious(defaultValue) as\n | boolean\n | undefined;\n React.useEffect(() => {\n if (defaultValue !== previousDefaultValue) {\n setInternalValue(Boolean(defaultValue));\n }\n }, [defaultValue, previousDefaultValue]);\n\n const { colors } = useTheme();\n\n const checkboxColor = internalValue\n ? color || colors.primary\n : uncheckedColor || colors.primary;\n\n const handlePress = () => {\n setInternalValue(!internalValue);\n onPress(!internalValue);\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={internalValue ? checkedIcon : uncheckedIcon}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n"]}
1
+ {"version":3,"sources":["Checkbox.tsx"],"names":["Checkbox","Icon","status","disabled","onPress","onCheck","onUncheck","color","uncheckedColor","defaultValue","checkedIcon","uncheckedIcon","size","style","rest","internalValue","setInternalValue","React","useState","useEffect","previousDefaultValue","Boolean","colors","checkboxColor","primary","handlePress","newValue","styles","container","width","height","icon","StyleSheet","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport interface CheckboxProps {\n status?: boolean;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n onCheck?: () => void;\n onUncheck?: () => void;\n color?: string;\n uncheckedColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n defaultValue?: boolean;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status,\n disabled = false,\n onPress = () => {},\n onCheck,\n onUncheck,\n color,\n uncheckedColor,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<boolean>(\n status || defaultValue || false\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n // This special logic is to handle weird APIs like Airtable that return\n // true or undefined for a boolean\n const previousDefaultValue = usePrevious(defaultValue) as\n | boolean\n | undefined;\n React.useEffect(() => {\n if (defaultValue !== previousDefaultValue) {\n setInternalValue(Boolean(defaultValue));\n }\n }, [defaultValue, previousDefaultValue]);\n\n const { colors } = useTheme();\n\n const checkboxColor = internalValue\n ? color || colors.primary\n : uncheckedColor || colors.primary;\n\n const handlePress = () => {\n const newValue = !internalValue;\n setInternalValue(newValue);\n onPress(newValue);\n\n if (onCheck && newValue) {\n onCheck();\n }\n\n if (onUncheck && !newValue) {\n onUncheck();\n }\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={internalValue ? checkedIcon : uncheckedIcon}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n"]}
@@ -27,6 +27,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
27
27
 
28
28
  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; }
29
29
 
30
+ 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); }
31
+
30
32
  const FAB = _ref => {
31
33
  let {
32
34
  Icon,
@@ -128,7 +130,7 @@ const FAB = _ref => {
128
130
  style: [{
129
131
  elevation
130
132
  }, style]
131
- }, /*#__PURE__*/React.createElement(_Touchable.default, { ...rest,
133
+ }, /*#__PURE__*/React.createElement(_Touchable.default, _extends({}, rest, {
132
134
  onPress: onPress,
133
135
  accessibilityState: {
134
136
  disabled
@@ -136,7 +138,7 @@ const FAB = _ref => {
136
138
  accessibilityRole: "button",
137
139
  disabled: disabled || loading,
138
140
  style: buttonStyles
139
- }, /*#__PURE__*/React.createElement(_reactNative.View, {
141
+ }), /*#__PURE__*/React.createElement(_reactNative.View, {
140
142
  style: styles.content
141
143
  }, icon && loading !== true ? /*#__PURE__*/React.createElement(_reactNative.View, {
142
144
  style: iconStyle
@@ -179,23 +181,5 @@ const styles = _reactNative.StyleSheet.create({
179
181
 
180
182
  var _default = (0, _theming.withTheme)(FAB);
181
183
 
182
- exports.default = _default;
183
- //# sourceMappingURL=DeprecatedFAB.js.map },
184
- icon: {
185
- alignItems: "center",
186
- justifyContent: "center",
187
- width: _Config.default.buttonIconSize
188
- },
189
- fixed: {
190
- left: 0,
191
- right: 0,
192
- bottom: 0,
193
- height: 64,
194
- borderRadius: 0
195
- }
196
- });
197
-
198
- var _default = (0, _theming.withTheme)(FAB);
199
-
200
184
  exports.default = _default;
201
185
  //# sourceMappingURL=DeprecatedFAB.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["DeprecatedFAB.js"],"names":["FAB","Icon","icon","disabled","type","loading","color","colorOverride","label","onPress","elevation","style","theme","colors","disabledOpacity","roundness","typography","rest","backgroundColor","borderColor","textColor","borderWidth","buttonColor","primary","surface","alpha","rgb","string","StyleSheet","hairlineWidth","buttonStyle","borderRadius","alignItems","justifyContent","buttonStyles","styles","button","contentStyle","content","textStyle","textAlign","iconStyle","width","Config","buttonIconSize","FABSize","height","FABBorderRadius","push","marginLeft","marginRight","margin","FABFixedHeight","alignSelf","React","createElement","Elevation","Touchable","accessibilityState","accessibilityRole","View","name","size","ActivityIndicator","Text","numberOfLines","create","borderStyle","flexDirection","fixed","left","right","bottom"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { ActivityIndicator, View, StyleSheet, } from \"react-native\";\nimport color from \"color\";\nimport Config from \"./Config\";\nimport Text from \"./Text\";\nimport Touchable from \"./Touchable\";\nimport Elevation from \"./Elevation\";\nimport { withTheme } from \"../theming\";\nconst FAB = ({ Icon, icon, disabled = false, type = \"solid\", loading = false, color: colorOverride, label, onPress, elevation = 0, style, theme: { colors, disabledOpacity, roundness, typography }, ...rest }) => {\n let backgroundColor, borderColor, textColor, borderWidth;\n const buttonColor = colorOverride || colors.primary;\n if (type === \"standard\" || type === \"extended\" || type === \"fixed\") {\n backgroundColor = buttonColor;\n if (disabled) {\n textColor = color(colors.surface).alpha(disabledOpacity).rgb().string();\n }\n else {\n textColor = colors.surface;\n }\n }\n else {\n backgroundColor = \"transparent\";\n if (disabled) {\n textColor = color(buttonColor).alpha(disabledOpacity).rgb().string();\n }\n else {\n textColor = buttonColor;\n }\n }\n if (type === \"outline\") {\n if (disabled) {\n borderColor = color(buttonColor).alpha(disabledOpacity).rgb().string();\n }\n else {\n borderColor = buttonColor;\n }\n borderWidth = StyleSheet.hairlineWidth;\n }\n else {\n borderColor = \"transparent\";\n borderWidth = 0;\n }\n const buttonStyle = {\n backgroundColor,\n borderColor,\n borderWidth,\n borderRadius: roundness,\n alignItems: \"center\",\n justifyContent: \"center\",\n };\n const buttonStyles = [styles.button, buttonStyle];\n const contentStyle = [styles.content];\n const textStyle = {\n textAlign: \"center\",\n color: textColor,\n };\n const iconStyle = [\n styles.icon,\n {\n width: Config.buttonIconSize,\n },\n ];\n if (type === \"standard\" || type === \"outline\") {\n buttonStyle.width = Config.FABSize;\n buttonStyle.height = Config.FABSize;\n buttonStyle.borderRadius = Config.FABBorderRadius;\n contentStyle.push({\n width: Config.FABSize,\n height: Config.FABSize,\n });\n }\n if (type === \"extended\" || type === \"fixed\") {\n iconStyle.push({\n marginLeft: 16,\n marginRight: -8,\n });\n textStyle.margin = 16;\n }\n if (type === \"fixed\") {\n buttonStyles.push({\n height: Config.FABFixedHeight,\n alignSelf: \"stretch\",\n });\n }\n return (React.createElement(Elevation, { style: [{ elevation }, style] },\n React.createElement(Touchable, { ...rest, onPress: onPress, accessibilityState: { disabled }, accessibilityRole: \"button\", disabled: disabled || loading, style: buttonStyles },\n React.createElement(View, { style: styles.content },\n icon && loading !== true ? (React.createElement(View, { style: iconStyle },\n React.createElement(Icon, { name: icon, size: Config.buttonIconSize, color: textColor }))) : null,\n loading ? (React.createElement(ActivityIndicator, { size: \"small\", color: textColor, style: iconStyle })) : null,\n label ? (React.createElement(Text, { numberOfLines: 1, style: [textStyle, typography.button] }, label)) : null))));\n};\nconst styles = StyleSheet.create({\n button: {\n borderStyle: \"solid\",\n },\n content: {\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignItems: \"center\",\n justifyContent: \"center\",\n width: Config.buttonIconSize,\n },\n fixed: {\n left: 0,\n right: 0,\n bottom: 0,\n height: 64,\n borderRadius: 0,\n },\n});\nexport default withTheme(FAB);\n"]}
1
+ {"version":3,"sources":["DeprecatedFAB.tsx"],"names":["FAB","Icon","icon","disabled","type","loading","color","colorOverride","label","onPress","elevation","style","theme","colors","disabledOpacity","roundness","typography","rest","backgroundColor","borderColor","textColor","borderWidth","buttonColor","primary","surface","alpha","rgb","string","StyleSheet","hairlineWidth","buttonStyle","borderRadius","alignItems","justifyContent","buttonStyles","styles","button","contentStyle","content","textStyle","textAlign","iconStyle","width","Config","buttonIconSize","FABSize","height","FABBorderRadius","push","marginLeft","marginRight","margin","FABFixedHeight","alignSelf","create","borderStyle","flexDirection","fixed","left","right","bottom"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n ActivityIndicator,\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n TextStyle,\n} from \"react-native\";\nimport color from \"color\";\nimport Config from \"./Config\";\nimport Text from \"./Text\";\nimport Touchable from \"./Touchable\";\nimport Elevation from \"./Elevation\";\nimport { withTheme } from \"../theming\";\n\nimport type { Theme } from \"../styles/DefaultTheme\";\nimport type { IconSlot } from \"../interfaces/Icon\";\n\n/**\n * A floating action button represents the primary action in an application.\n *\n * <div class=\"screenshots\">\n * <img src=\"screenshots/fab-1.png\" />\n * <img src=\"screenshots/fab-2.png\" />\n * </div>\n *\n * ## Usage\n * ```js\n * import * as React from 'react';\n * import { StyleSheet } from 'react-native';\n * import { FAB } from '@draftbit/ui';\n *\n * const MyComponent = () => (\n * <FAB\n * style={styles.fab}\n * type=\"outline\"\n * icon=\"add\"\n * onPress={() => console.log('Pressed')}\n * />\n * );\n *\n * const styles = StyleSheet.create({\n * fab: {\n * position: 'absolute',\n * margin: 16,\n * right: 0,\n * bottom: 0,\n * },\n * })\n *\n * export default MyComponent;\n * ```\n */\n\ntype Props = {\n disabled?: boolean;\n type?: \"solid\" | \"extended\" | \"outline\" | \"fixed\" | \"standard\";\n loading?: boolean;\n icon?: string;\n color?: string;\n label?: string;\n onPress: () => void;\n elevation?: number;\n theme: Theme;\n style?: StyleProp<ViewStyle>;\n} & TouchableHighlightProps &\n IconSlot;\n\nconst FAB: React.FC<Props> = ({\n Icon,\n icon,\n disabled = false,\n type = \"solid\",\n loading = false,\n color: colorOverride,\n label,\n onPress,\n elevation = 0,\n style,\n theme: { colors, disabledOpacity, roundness, typography },\n ...rest\n}) => {\n let backgroundColor, borderColor, textColor, borderWidth;\n const buttonColor = colorOverride || colors.primary;\n\n if (type === \"standard\" || type === \"extended\" || type === \"fixed\") {\n backgroundColor = buttonColor;\n\n if (disabled) {\n textColor = color(colors.surface).alpha(disabledOpacity).rgb().string();\n } else {\n textColor = colors.surface;\n }\n } else {\n backgroundColor = \"transparent\";\n\n if (disabled) {\n textColor = color(buttonColor).alpha(disabledOpacity).rgb().string();\n } else {\n textColor = buttonColor;\n }\n }\n\n if (type === \"outline\") {\n if (disabled) {\n borderColor = color(buttonColor).alpha(disabledOpacity).rgb().string();\n } else {\n borderColor = buttonColor;\n }\n borderWidth = StyleSheet.hairlineWidth;\n } else {\n borderColor = \"transparent\";\n borderWidth = 0;\n }\n\n const buttonStyle: StyleProp<ViewStyle> = {\n backgroundColor,\n borderColor,\n borderWidth,\n borderRadius: roundness,\n alignItems: \"center\",\n justifyContent: \"center\",\n };\n\n const buttonStyles: StyleProp<ViewStyle>[] = [styles.button, buttonStyle];\n\n const contentStyle: StyleProp<ViewStyle>[] = [styles.content];\n\n const textStyle: StyleProp<TextStyle> = {\n textAlign: \"center\",\n color: textColor,\n };\n\n const iconStyle: StyleProp<ViewStyle>[] = [\n styles.icon,\n {\n width: Config.buttonIconSize,\n },\n ];\n\n if (type === \"standard\" || type === \"outline\") {\n buttonStyle.width = Config.FABSize;\n buttonStyle.height = Config.FABSize;\n buttonStyle.borderRadius = Config.FABBorderRadius;\n\n contentStyle.push({\n width: Config.FABSize,\n height: Config.FABSize,\n });\n }\n\n if (type === \"extended\" || type === \"fixed\") {\n iconStyle.push({\n marginLeft: 16,\n marginRight: -8,\n });\n\n textStyle.margin = 16;\n }\n\n if (type === \"fixed\") {\n buttonStyles.push({\n height: Config.FABFixedHeight,\n alignSelf: \"stretch\",\n });\n }\n\n return (\n <Elevation style={[{ elevation }, style]}>\n <Touchable\n {...rest}\n onPress={onPress}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n disabled={disabled || loading}\n style={buttonStyles}\n >\n <View style={styles.content}>\n {icon && loading !== true ? (\n <View style={iconStyle}>\n <Icon\n name={icon}\n size={Config.buttonIconSize}\n color={textColor}\n />\n </View>\n ) : null}\n {loading ? (\n <ActivityIndicator\n size=\"small\"\n color={textColor}\n style={iconStyle}\n />\n ) : null}\n {label ? (\n <Text numberOfLines={1} style={[textStyle, typography.button]}>\n {label}\n </Text>\n ) : null}\n </View>\n </Touchable>\n </Elevation>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n borderStyle: \"solid\",\n },\n content: {\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignItems: \"center\",\n justifyContent: \"center\",\n width: Config.buttonIconSize,\n },\n fixed: {\n left: 0,\n right: 0,\n bottom: 0,\n height: 64,\n borderRadius: 0,\n },\n});\n\nexport default withTheme(FAB);\n"]}
@@ -15,6 +15,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
15
15
 
16
16
  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; }
17
17
 
18
+ 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); }
19
+
18
20
  const Divider = _ref => {
19
21
  let {
20
22
  style,
@@ -24,19 +26,7 @@ const Divider = _ref => {
24
26
  },
25
27
  ...rest
26
28
  } = _ref;
27
- return /*#__PURE__*/React.createElement(_reactNative.View, {
28
- style: [{
29
- backgroundColor: color || colors.divider,
30
- height: _reactNative.StyleSheet.hairlineWidth
31
- }, style],
32
- ...rest
33
- });
34
- };
35
-
36
- var _default = (0, _theming.withTheme)(Divider);
37
-
38
- exports.default = _default;
39
- //# sourceMappingURL=Divider.js.map /*#__PURE__*/React.createElement(_reactNative.View, _extends({
29
+ return /*#__PURE__*/React.createElement(_reactNative.View, _extends({
40
30
  style: [{
41
31
  backgroundColor: color || colors.divider,
42
32
  height: _reactNative.StyleSheet.hairlineWidth
@@ -1 +1 @@
1
- {"version":3,"sources":["Divider.js"],"names":["Divider","style","color","theme","colors","rest","React","createElement","View","backgroundColor","divider","height","StyleSheet","hairlineWidth"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;AACA,MAAMA,OAAO,GAAG,QAAkD;AAAA,MAAjD;AAAEC,IAAAA,KAAF;AAASC,IAAAA,KAAT;AAAgBC,IAAAA,KAAK,EAAE;AAAEC,MAAAA;AAAF,KAAvB;AAAmC,OAAGC;AAAtC,GAAiD;AAC9D,sBAAQC,KAAK,CAACC,aAAN,CAAoBC,iBAApB,EAA0B;AAAEP,IAAAA,KAAK,EAAE,CACnC;AACIQ,MAAAA,eAAe,EAAEP,KAAK,IAAIE,MAAM,CAACM,OADrC;AAEIC,MAAAA,MAAM,EAAEC,wBAAWC;AAFvB,KADmC,EAKnCZ,KALmC,CAAT;AAM3B,OAAGI;AANwB,GAA1B,CAAR;AAOH,CARD;;eASe,wBAAUL,OAAV,C","sourcesContent":["import * as React from \"react\";\nimport { StyleSheet, View } from \"react-native\";\nimport { withTheme } from \"../theming\";\nconst Divider = ({ style, color, theme: { colors }, ...rest }) => {\n return (React.createElement(View, { style: [\n {\n backgroundColor: color || colors.divider,\n height: StyleSheet.hairlineWidth,\n },\n style,\n ], ...rest }));\n};\nexport default withTheme(Divider);\n"]}
1
+ {"version":3,"sources":["Divider.tsx"],"names":["Divider","style","color","theme","colors","rest","backgroundColor","divider","height","StyleSheet","hairlineWidth"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;;;AASA,MAAMA,OAAwB,GAAG,QAK3B;AAAA,MAL4B;AAChCC,IAAAA,KADgC;AAEhCC,IAAAA,KAFgC;AAGhCC,IAAAA,KAAK,EAAE;AAAEC,MAAAA;AAAF,KAHyB;AAIhC,OAAGC;AAJ6B,GAK5B;AACJ,sBACE,oBAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL;AACEC,MAAAA,eAAe,EAAEJ,KAAK,IAAIE,MAAM,CAACG,OADnC;AAEEC,MAAAA,MAAM,EAAEC,wBAAWC;AAFrB,KADK,EAKLT,KALK;AADT,KAQMI,IARN,EADF;AAYD,CAlBD;;eAoBe,wBAAUL,OAAV,C","sourcesContent":["import * as React from \"react\";\nimport { StyleSheet, View, StyleProp, ViewStyle } from \"react-native\";\nimport { withTheme } from \"../theming\";\nimport theme from \"../styles/DefaultTheme\";\n\ntype Props = {\n style?: StyleProp<ViewStyle>;\n color?: string;\n theme: typeof theme;\n};\n\nconst Divider: React.FC<Props> = ({\n style,\n color,\n theme: { colors },\n ...rest\n}) => {\n return (\n <View\n style={[\n {\n backgroundColor: color || colors.divider,\n height: StyleSheet.hairlineWidth,\n },\n style,\n ]}\n {...rest}\n />\n );\n};\n\nexport default withTheme(Divider);\n"]}
@@ -19,8 +19,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
19
19
 
20
20
  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; }
21
21
 
22
- 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); }
23
-
24
22
  /* directly copied from https://github.com/callstack/react-native-paper/blob/main/src/components/Surface.tsx#L62 */
25
23
  const Elevation = _ref => {
26
24
  let {
@@ -37,11 +35,24 @@ const Elevation = _ref => {
37
35
  colors
38
36
  } = theme;
39
37
  const borderRadius = radius;
40
- return /*#__PURE__*/React.createElement(_reactNative.Animated.View, _extends({}, rest, {
38
+ return /*#__PURE__*/React.createElement(_reactNative.Animated.View, { ...rest,
41
39
  style: [{
42
40
  borderRadius,
43
41
  backgroundColor: colors.surface
44
42
  }, elevation ? (0, _shadow.default)(elevation) : null, style]
43
+ }, /*#__PURE__*/React.createElement(_reactNative.View, {
44
+ style: {
45
+ overflow: "hidden",
46
+ borderRadius
47
+ }
48
+ }, children));
49
+ };
50
+
51
+ var _default = (0, _theming.withTheme)(Elevation);
52
+
53
+ exports.default = _default;
54
+ //# sourceMappingURL=Elevation.js.mape
55
+ }, elevation ? (0, _shadow.default)(elevation) : null, style]
45
56
  }), /*#__PURE__*/React.createElement(_reactNative.View, {
46
57
  style: {
47
58
  overflow: "hidden",
@@ -1 +1 @@
1
- {"version":3,"sources":["Elevation.tsx"],"names":["Elevation","style","theme","children","rest","elevation","borderRadius","radius","StyleSheet","flatten","colors","backgroundColor","surface","overflow"],"mappings":";;;;;;;AAAA;;AACA;;AAQA;;AACA;;;;;;;;;;AAQA;AACA,MAAMA,SAA0B,GAAG,QAAyC;AAAA,MAAxC;AAAEC,IAAAA,KAAF;AAASC,IAAAA,KAAT;AAAgBC,IAAAA,QAAhB;AAA0B,OAAGC;AAA7B,GAAwC;AAC1E,QAAM;AAAEC,IAAAA,SAAS,GAAG,CAAd;AAAiBC,IAAAA,YAAY,EAAEC;AAA/B,MACJC,wBAAWC,OAAX,CAAmBR,KAAnB,KAA6B,EAD/B;AAEA,QAAM;AAAES,IAAAA;AAAF,MAAaR,KAAnB;AACA,QAAMI,YAAY,GAAGC,MAArB;AAEA,sBACE,oBAAC,qBAAD,CAAU,IAAV,eACMH,IADN;AAEE,IAAA,KAAK,EAAE,CACL;AACEE,MAAAA,YADF;AAEEK,MAAAA,eAAe,EAAED,MAAM,CAACE;AAF1B,KADK,EAKLP,SAAS,GAAG,qBAAOA,SAAP,CAAH,GAAuB,IAL3B,EAMLJ,KANK;AAFT,mBAWE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAE;AAAEY,MAAAA,QAAQ,EAAE,QAAZ;AAAsBP,MAAAA;AAAtB;AAAb,KAAoDH,QAApD,CAXF,CADF;AAeD,CArBD;;eAuBe,wBAAUH,SAAV,C","sourcesContent":["import * as React from \"react\";\nimport {\n Animated,\n StyleSheet,\n ViewProps,\n StyleProp,\n ViewStyle,\n View,\n} from \"react-native\";\nimport shadow from \"../styles/shadow\";\nimport { withTheme } from \"../theming\";\nimport type { Theme } from \"../styles/DefaultTheme\";\n\ntype Props = {\n style?: StyleProp<ViewStyle>;\n theme: Theme;\n} & ViewProps;\n\n/* directly copied from https://github.com/callstack/react-native-paper/blob/main/src/components/Surface.tsx#L62 */\nconst Elevation: React.FC<Props> = ({ style, theme, children, ...rest }) => {\n const { elevation = 4, borderRadius: radius } =\n StyleSheet.flatten(style) || {};\n const { colors } = theme;\n const borderRadius = radius;\n\n return (\n <Animated.View\n {...rest}\n style={[\n {\n borderRadius,\n backgroundColor: colors.surface,\n },\n elevation ? shadow(elevation) : null,\n style,\n ]}\n >\n <View style={{ overflow: \"hidden\", borderRadius }}>{children}</View>\n </Animated.View>\n );\n};\n\nexport default withTheme(Elevation);\n"]}
1
+ {"version":3,"sources":["Elevation.js"],"names":["Elevation","style","theme","children","rest","elevation","borderRadius","radius","StyleSheet","flatten","colors","React","createElement","Animated","View","backgroundColor","surface","overflow"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;AACA;AACA,MAAMA,SAAS,GAAG,QAAyC;AAAA,MAAxC;AAAEC,IAAAA,KAAF;AAASC,IAAAA,KAAT;AAAgBC,IAAAA,QAAhB;AAA0B,OAAGC;AAA7B,GAAwC;AACvD,QAAM;AAAEC,IAAAA,SAAS,GAAG,CAAd;AAAiBC,IAAAA,YAAY,EAAEC;AAA/B,MAA0CC,wBAAWC,OAAX,CAAmBR,KAAnB,KAA6B,EAA7E;AACA,QAAM;AAAES,IAAAA;AAAF,MAAaR,KAAnB;AACA,QAAMI,YAAY,GAAGC,MAArB;AACA,sBAAQI,KAAK,CAACC,aAAN,CAAoBC,sBAASC,IAA7B,EAAmC,EAAE,GAAGV,IAAL;AAAWH,IAAAA,KAAK,EAAE,CACrD;AACIK,MAAAA,YADJ;AAEIS,MAAAA,eAAe,EAAEL,MAAM,CAACM;AAF5B,KADqD,EAKrDX,SAAS,GAAG,qBAAOA,SAAP,CAAH,GAAuB,IALqB,EAMrDJ,KANqD;AAAlB,GAAnC,eAQJU,KAAK,CAACC,aAAN,CAAoBE,iBAApB,EAA0B;AAAEb,IAAAA,KAAK,EAAE;AAAEgB,MAAAA,QAAQ,EAAE,QAAZ;AAAsBX,MAAAA;AAAtB;AAAT,GAA1B,EAA2EH,QAA3E,CARI,CAAR;AASH,CAbD;;eAce,wBAAUH,SAAV,C","sourcesContent":["import * as React from \"react\";\nimport { Animated, StyleSheet, View, } from \"react-native\";\nimport shadow from \"../styles/shadow\";\nimport { withTheme } from \"../theming\";\n/* directly copied from https://github.com/callstack/react-native-paper/blob/main/src/components/Surface.tsx#L62 */\nconst Elevation = ({ style, theme, children, ...rest }) => {\n const { elevation = 4, borderRadius: radius } = StyleSheet.flatten(style) || {};\n const { colors } = theme;\n const borderRadius = radius;\n return (React.createElement(Animated.View, { ...rest, style: [\n {\n borderRadius,\n backgroundColor: colors.surface,\n },\n elevation ? shadow(elevation) : null,\n style,\n ] },\n React.createElement(View, { style: { overflow: \"hidden\", borderRadius } }, children)));\n};\nexport default withTheme(Elevation);\n"]}
@@ -369,12 +369,6 @@ Object.defineProperty(exports, "ThemeProvider", {
369
369
  return _theming.ThemeProvider;
370
370
  }
371
371
  });
372
- Object.defineProperty(exports, "ToggleButton", {
373
- enumerable: true,
374
- get: function () {
375
- return _ToggleButton.default;
376
- }
377
- });
378
372
  Object.defineProperty(exports, "Touchable", {
379
373
  enumerable: true,
380
374
  get: function () {
@@ -446,8 +440,6 @@ var _Switch = _interopRequireWildcard(require("./components/Switch"));
446
440
 
447
441
  var _TextField = _interopRequireDefault(require("./components/TextField"));
448
442
 
449
- var _ToggleButton = _interopRequireDefault(require("./components/ToggleButton"));
450
-
451
443
  var _Touchable = _interopRequireDefault(require("./components/Touchable"));
452
444
 
453
445
  var _Accordion = require("./components/Accordion");
@@ -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;;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 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
+ {"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;;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 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"]}
@@ -12,8 +12,7 @@ const SEED_DATA = {
12
12
  tag: "Card",
13
13
  description: "A card you can customize however you'd like",
14
14
  category: _types.COMPONENT_TYPES.card,
15
- triggers: [_types.Triggers.OnPress],
16
- //TODO: when we support multiple triggers, add Triggers.OnPressIcon
15
+ triggers: [_types.Triggers.OnPress, _types.Triggers.OnPressIcon],
17
16
  props: {
18
17
  onPress: (0, _types.createActionProp)(),
19
18
  onPressIcon: (0, _types.createActionProp)({
@@ -1 +1 @@
1
- {"version":3,"sources":["Card.ts"],"names":["SEED_DATA","name","tag","description","category","COMPONENT_TYPES","card","triggers","Triggers","OnPress","props","onPress","onPressIcon","handlerPropName","elevation","image","title","label","defaultValue","titleStyle","subtitle","subtitleStyle","descriptionStyle","icon","aspectRatio","textCentered"],"mappings":";;;;;;;AAAA;;AAaO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,MADiB;AAEvBC,EAAAA,GAAG,EAAE,MAFkB;AAGvBC,EAAAA,WAAW,EAAE,6CAHU;AAIvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,IAJH;AAKvBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,OAAV,CALa;AAKO;AAC9BC,EAAAA,KAAK,EAAE;AACLC,IAAAA,OAAO,EAAE,8BADJ;AAELC,IAAAA,WAAW,EAAE,6BAAiB;AAC5BC,MAAAA,eAAe,EAAE;AADW,KAAjB,CAFR;AAKLC,IAAAA,SAAS,EAAE,gCAAoB,CAApB,CALN;AAMLC,IAAAA,KAAK,EAAE,6BANF;AAOLC,IAAAA,KAAK,EAAE,2BAAe;AACpBC,MAAAA,KAAK,EAAE,OADa;AAEpBd,MAAAA,WAAW,EAAE,kBAFO;AAGpB;AACAe,MAAAA,YAAY,EAAE;AAJM,KAAf,CAPF;AAaLC,IAAAA,UAAU,EAAE,4BAAgB;AAC1BF,MAAAA,KAAK,EAAE;AADmB,KAAhB,CAbP;AAgBLG,IAAAA,QAAQ,EAAE,2BAAe;AACvBH,MAAAA,KAAK,EAAE,UADgB;AAEvBd,MAAAA,WAAW,EAAE,2BAFU;AAGvBe,MAAAA,YAAY,EAAE,IAHS,CAIvB;;AAJuB,KAAf,CAhBL;AAsBLG,IAAAA,aAAa,EAAE,4BAAgB;AAC7BJ,MAAAA,KAAK,EAAE;AADsB,KAAhB,CAtBV;AAyBLd,IAAAA,WAAW,EAAE,2BAAe;AAC1Bc,MAAAA,KAAK,EAAE,aADmB;AAE1Bd,MAAAA,WAAW,EAAE,mCAFa;AAG1B;AACA;AACAe,MAAAA,YAAY,EAAE;AALY,KAAf,CAzBR;AAgCLI,IAAAA,gBAAgB,EAAE,4BAAgB;AAChCL,MAAAA,KAAK,EAAE;AADyB,KAAhB,CAhCb;AAmCLM,IAAAA,IAAI,EAAE,4BAnCD;AAoCLC,IAAAA,WAAW,EAAE,kCAAsB;AACjCN,MAAAA,YAAY,EAAE;AADmB,KAAtB,CApCR;AAuCLO,IAAAA,YAAY,EAAE,iCAAqB;AACjCR,MAAAA,KAAK,EAAE,eAD0B;AAEjCd,MAAAA,WAAW,EAAE;AAFoB,KAArB;AAvCT;AANgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createElevationType,\n createTextProp,\n createImageProp,\n createIconProp,\n createAspectRatioProp,\n createStaticBoolProp,\n createTextStyle,\n createActionProp,\n Triggers,\n} from \"@draftbit/types\";\n\nexport const SEED_DATA = {\n name: \"Card\",\n tag: \"Card\",\n description: \"A card you can customize however you'd like\",\n category: COMPONENT_TYPES.card,\n triggers: [Triggers.OnPress], //TODO: when we support multiple triggers, add Triggers.OnPressIcon\n props: {\n onPress: createActionProp(),\n onPressIcon: createActionProp({\n handlerPropName: \"onPressIcon\",\n }),\n elevation: createElevationType(3),\n image: createImageProp(),\n title: createTextProp({\n label: \"Title\",\n description: \"Large title text\",\n // defaultValue: \"Title\",\n defaultValue: null,\n }),\n titleStyle: createTextStyle({\n label: \"Title Style\",\n }),\n subtitle: createTextProp({\n label: \"Subtitle\",\n description: \"Text underneath the title\",\n defaultValue: null,\n // defaultValue: \"Edit me in the props panel on the right\",\n }),\n subtitleStyle: createTextStyle({\n label: \"Subtitle Style\",\n }),\n description: createTextProp({\n label: \"Description\",\n description: \"Smallest text underneath subtitle\",\n // defaultValue:\n // \"This bottom text is optional, but shows up to make your life a little easier!\",\n defaultValue: null,\n }),\n descriptionStyle: createTextStyle({\n label: \"Description Style\",\n }),\n icon: createIconProp(),\n aspectRatio: createAspectRatioProp({\n defaultValue: 1.5,\n }),\n textCentered: createStaticBoolProp({\n label: \"Centered Text\",\n description: \"Places your title and subtitle in the center\",\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["Card.ts"],"names":["SEED_DATA","name","tag","description","category","COMPONENT_TYPES","card","triggers","Triggers","OnPress","OnPressIcon","props","onPress","onPressIcon","handlerPropName","elevation","image","title","label","defaultValue","titleStyle","subtitle","subtitleStyle","descriptionStyle","icon","aspectRatio","textCentered"],"mappings":";;;;;;;AAAA;;AAaO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,MADiB;AAEvBC,EAAAA,GAAG,EAAE,MAFkB;AAGvBC,EAAAA,WAAW,EAAE,6CAHU;AAIvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,IAJH;AAKvBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,OAAV,EAAmBD,gBAASE,WAA5B,CALa;AAMvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,OAAO,EAAE,8BADJ;AAELC,IAAAA,WAAW,EAAE,6BAAiB;AAC5BC,MAAAA,eAAe,EAAE;AADW,KAAjB,CAFR;AAKLC,IAAAA,SAAS,EAAE,gCAAoB,CAApB,CALN;AAMLC,IAAAA,KAAK,EAAE,6BANF;AAOLC,IAAAA,KAAK,EAAE,2BAAe;AACpBC,MAAAA,KAAK,EAAE,OADa;AAEpBf,MAAAA,WAAW,EAAE,kBAFO;AAGpB;AACAgB,MAAAA,YAAY,EAAE;AAJM,KAAf,CAPF;AAaLC,IAAAA,UAAU,EAAE,4BAAgB;AAC1BF,MAAAA,KAAK,EAAE;AADmB,KAAhB,CAbP;AAgBLG,IAAAA,QAAQ,EAAE,2BAAe;AACvBH,MAAAA,KAAK,EAAE,UADgB;AAEvBf,MAAAA,WAAW,EAAE,2BAFU;AAGvBgB,MAAAA,YAAY,EAAE,IAHS,CAIvB;;AAJuB,KAAf,CAhBL;AAsBLG,IAAAA,aAAa,EAAE,4BAAgB;AAC7BJ,MAAAA,KAAK,EAAE;AADsB,KAAhB,CAtBV;AAyBLf,IAAAA,WAAW,EAAE,2BAAe;AAC1Be,MAAAA,KAAK,EAAE,aADmB;AAE1Bf,MAAAA,WAAW,EAAE,mCAFa;AAG1B;AACA;AACAgB,MAAAA,YAAY,EAAE;AALY,KAAf,CAzBR;AAgCLI,IAAAA,gBAAgB,EAAE,4BAAgB;AAChCL,MAAAA,KAAK,EAAE;AADyB,KAAhB,CAhCb;AAmCLM,IAAAA,IAAI,EAAE,4BAnCD;AAoCLC,IAAAA,WAAW,EAAE,kCAAsB;AACjCN,MAAAA,YAAY,EAAE;AADmB,KAAtB,CApCR;AAuCLO,IAAAA,YAAY,EAAE,iCAAqB;AACjCR,MAAAA,KAAK,EAAE,eAD0B;AAEjCf,MAAAA,WAAW,EAAE;AAFoB,KAArB;AAvCT;AANgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createElevationType,\n createTextProp,\n createImageProp,\n createIconProp,\n createAspectRatioProp,\n createStaticBoolProp,\n createTextStyle,\n createActionProp,\n Triggers,\n} from \"@draftbit/types\";\n\nexport const SEED_DATA = {\n name: \"Card\",\n tag: \"Card\",\n description: \"A card you can customize however you'd like\",\n category: COMPONENT_TYPES.card,\n triggers: [Triggers.OnPress, Triggers.OnPressIcon],\n props: {\n onPress: createActionProp(),\n onPressIcon: createActionProp({\n handlerPropName: \"onPressIcon\",\n }),\n elevation: createElevationType(3),\n image: createImageProp(),\n title: createTextProp({\n label: \"Title\",\n description: \"Large title text\",\n // defaultValue: \"Title\",\n defaultValue: null,\n }),\n titleStyle: createTextStyle({\n label: \"Title Style\",\n }),\n subtitle: createTextProp({\n label: \"Subtitle\",\n description: \"Text underneath the title\",\n defaultValue: null,\n // defaultValue: \"Edit me in the props panel on the right\",\n }),\n subtitleStyle: createTextStyle({\n label: \"Subtitle Style\",\n }),\n description: createTextProp({\n label: \"Description\",\n description: \"Smallest text underneath subtitle\",\n // defaultValue:\n // \"This bottom text is optional, but shows up to make your life a little easier!\",\n defaultValue: null,\n }),\n descriptionStyle: createTextStyle({\n label: \"Description Style\",\n }),\n icon: createIconProp(),\n aspectRatio: createAspectRatioProp({\n defaultValue: 1.5,\n }),\n textCentered: createStaticBoolProp({\n label: \"Centered Text\",\n description: \"Places your title and subtitle in the center\",\n }),\n },\n};\n"]}
@@ -11,7 +11,7 @@ const SEED_DATA = {
11
11
  name: "Checkbox",
12
12
  tag: "Checkbox",
13
13
  category: _types.COMPONENT_TYPES.input,
14
- triggers: [_types.Triggers.OnPress],
14
+ triggers: [_types.Triggers.OnPress, _types.Triggers.OnCheck, _types.Triggers.OnUncheck],
15
15
  props: {
16
16
  fieldName: (0, _types.createFieldNameProp)({
17
17
  defaultValue: "checkboxValue",
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.ts"],"names":["SEED_DATA","name","tag","category","COMPONENT_TYPES","input","triggers","Triggers","OnPress","props","fieldName","defaultValue","valuePropName","handlerPropName","color","group","GROUPS","basic","label","description","uncheckedColor","disabled","size","checkedIcon","uncheckedIcon"],"mappings":";;;;;;;AAAA;;AAWO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,UADiB;AAEvBC,EAAAA,GAAG,EAAE,UAFkB;AAGvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAHH;AAIvBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,OAAV,CAJa;AAKvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,SAAS,EAAE,gCAAoB;AAC7BC,MAAAA,YAAY,EAAE,eADe;AAE7BC,MAAAA,aAAa,EAAE,QAFc;AAG7BC,MAAAA,eAAe,EAAE;AAHY,KAApB,CADN;AAMLC,IAAAA,KAAK,EAAE,4BAAgB;AACrBC,MAAAA,KAAK,EAAEC,cAAOC,KADO;AAErBC,MAAAA,KAAK,EAAE,OAFc;AAGrBC,MAAAA,WAAW,EAAE,0DAHQ;AAIrBR,MAAAA,YAAY,EAAE;AAJO,KAAhB,CANF;AAYLS,IAAAA,cAAc,EAAE,4BAAgB;AAC9BL,MAAAA,KAAK,EAAEC,cAAOC,KADgB;AAE9BC,MAAAA,KAAK,EAAE,kBAFuB;AAG9BC,MAAAA,WAAW,EAAE,qDAHiB;AAI9BR,MAAAA,YAAY,EAAE;AAJgB,KAAhB,CAZX;AAkBLU,IAAAA,QAAQ,EAAE,2BAAe;AACvBH,MAAAA,KAAK,EAAE,UADgB;AAEvBC,MAAAA,WAAW,EAAE;AAFU,KAAf,CAlBL;AAsBLG,IAAAA,IAAI,EAAE,mCAAuB;AAC3BJ,MAAAA,KAAK,EAAE,MADoB;AAE3BC,MAAAA,WAAW,EAAE,gCAFc;AAG3BR,MAAAA,YAAY,EAAE;AAHa,KAAvB,CAtBD;AA2BLY,IAAAA,WAAW,EAAE,2BAAe;AAC1BL,MAAAA,KAAK,EAAE,cADmB;AAE1BC,MAAAA,WAAW,EAAE,oDAFa;AAG1BR,MAAAA,YAAY,EAAE;AAHY,KAAf,CA3BR;AAgCLa,IAAAA,aAAa,EAAE,2BAAe;AAC5BN,MAAAA,KAAK,EAAE,gBADqB;AAE5BC,MAAAA,WAAW,EAAE,sDAFe;AAG5BR,MAAAA,YAAY,EAAE;AAHc,KAAf;AAhCV;AALgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\n\nexport const SEED_DATA = {\n name: \"Checkbox\",\n tag: \"Checkbox\",\n category: COMPONENT_TYPES.input,\n triggers: [Triggers.OnPress],\n props: {\n fieldName: createFieldNameProp({\n defaultValue: \"checkboxValue\",\n valuePropName: \"status\",\n handlerPropName: \"onPress\",\n }),\n color: createColorProp({\n group: GROUPS.basic,\n label: \"Color\",\n description: \"Color for the button (used when the checkbox is checked)\",\n defaultValue: null,\n }),\n uncheckedColor: createColorProp({\n group: GROUPS.basic,\n label: \"Unselected Color\",\n description: \"Color for the button when the checkbox is unchecked\",\n defaultValue: null,\n }),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Whether the checkbox is disabled\",\n }),\n size: createStaticNumberProp({\n label: \"Size\",\n description: \"Specifies the size of the icon\",\n defaultValue: null,\n }),\n checkedIcon: createIconProp({\n label: \"Checked Icon\",\n description: 'Icon to show when the checkbox status is \"checked\"',\n defaultValue: null,\n }),\n uncheckedIcon: createIconProp({\n label: \"Unchecked Icon\",\n description: 'Icon to show when the checkbox status is \"unchecked\"',\n defaultValue: null,\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["Checkbox.ts"],"names":["SEED_DATA","name","tag","category","COMPONENT_TYPES","input","triggers","Triggers","OnPress","OnCheck","OnUncheck","props","fieldName","defaultValue","valuePropName","handlerPropName","color","group","GROUPS","basic","label","description","uncheckedColor","disabled","size","checkedIcon","uncheckedIcon"],"mappings":";;;;;;;AAAA;;AAWO,MAAMA,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAE,UADiB;AAEvBC,EAAAA,GAAG,EAAE,UAFkB;AAGvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAHH;AAIvBC,EAAAA,QAAQ,EAAE,CAACC,gBAASC,OAAV,EAAmBD,gBAASE,OAA5B,EAAqCF,gBAASG,SAA9C,CAJa;AAKvBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,SAAS,EAAE,gCAAoB;AAC7BC,MAAAA,YAAY,EAAE,eADe;AAE7BC,MAAAA,aAAa,EAAE,QAFc;AAG7BC,MAAAA,eAAe,EAAE;AAHY,KAApB,CADN;AAMLC,IAAAA,KAAK,EAAE,4BAAgB;AACrBC,MAAAA,KAAK,EAAEC,cAAOC,KADO;AAErBC,MAAAA,KAAK,EAAE,OAFc;AAGrBC,MAAAA,WAAW,EAAE,0DAHQ;AAIrBR,MAAAA,YAAY,EAAE;AAJO,KAAhB,CANF;AAYLS,IAAAA,cAAc,EAAE,4BAAgB;AAC9BL,MAAAA,KAAK,EAAEC,cAAOC,KADgB;AAE9BC,MAAAA,KAAK,EAAE,kBAFuB;AAG9BC,MAAAA,WAAW,EAAE,qDAHiB;AAI9BR,MAAAA,YAAY,EAAE;AAJgB,KAAhB,CAZX;AAkBLU,IAAAA,QAAQ,EAAE,2BAAe;AACvBH,MAAAA,KAAK,EAAE,UADgB;AAEvBC,MAAAA,WAAW,EAAE;AAFU,KAAf,CAlBL;AAsBLG,IAAAA,IAAI,EAAE,mCAAuB;AAC3BJ,MAAAA,KAAK,EAAE,MADoB;AAE3BC,MAAAA,WAAW,EAAE,gCAFc;AAG3BR,MAAAA,YAAY,EAAE;AAHa,KAAvB,CAtBD;AA2BLY,IAAAA,WAAW,EAAE,2BAAe;AAC1BL,MAAAA,KAAK,EAAE,cADmB;AAE1BC,MAAAA,WAAW,EAAE,oDAFa;AAG1BR,MAAAA,YAAY,EAAE;AAHY,KAAf,CA3BR;AAgCLa,IAAAA,aAAa,EAAE,2BAAe;AAC5BN,MAAAA,KAAK,EAAE,gBADqB;AAE5BC,MAAAA,WAAW,EAAE,sDAFe;AAG5BR,MAAAA,YAAY,EAAE;AAHc,KAAf;AAhCV;AALgB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n createBoolProp,\n createIconProp,\n createStaticNumberProp,\n createColorProp,\n createFieldNameProp,\n GROUPS,\n Triggers,\n} from \"@draftbit/types\";\n\nexport const SEED_DATA = {\n name: \"Checkbox\",\n tag: \"Checkbox\",\n category: COMPONENT_TYPES.input,\n triggers: [Triggers.OnPress, Triggers.OnCheck, Triggers.OnUncheck],\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"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.js"],"names":["default","AccordionGroup","AccordionItem"],"mappings":"AAAA,SAASA,OAAO,IAAIC,cAApB,QAA0C,kBAA1C;AACA,SAASD,OAAO,IAAIE,aAApB,QAAyC,iBAAzC","sourcesContent":["export { default as AccordionGroup } from \"./AccordionGroup\";\nexport { default as AccordionItem } from \"./AccordionItem\";\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":["default","AccordionGroup","AccordionItem"],"mappings":"AAAA,SAASA,OAAO,IAAIC,cAApB,QAA0C,kBAA1C;AACA,SAASD,OAAO,IAAIE,aAApB,QAAyC,iBAAzC","sourcesContent":["export { default as AccordionGroup } from \"./AccordionGroup\";\nexport { default as AccordionItem } from \"./AccordionItem\";\n"]}
@@ -12,6 +12,8 @@ const Checkbox = _ref => {
12
12
  status,
13
13
  disabled = false,
14
14
  onPress = () => {},
15
+ onCheck,
16
+ onUncheck,
15
17
  color,
16
18
  uncheckedColor,
17
19
  defaultValue,
@@ -41,8 +43,17 @@ const Checkbox = _ref => {
41
43
  const checkboxColor = internalValue ? color || colors.primary : uncheckedColor || colors.primary;
42
44
 
43
45
  const handlePress = () => {
44
- setInternalValue(!internalValue);
45
- onPress(!internalValue);
46
+ const newValue = !internalValue;
47
+ setInternalValue(newValue);
48
+ onPress(newValue);
49
+
50
+ if (onCheck && newValue) {
51
+ onCheck();
52
+ }
53
+
54
+ if (onUncheck && !newValue) {
55
+ onUncheck();
56
+ }
46
57
  };
47
58
 
48
59
  return /*#__PURE__*/React.createElement(Touchable, _extends({}, rest, {
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.tsx"],"names":["React","View","StyleSheet","useTheme","Touchable","usePrevious","Checkbox","Icon","status","disabled","onPress","color","uncheckedColor","defaultValue","checkedIcon","uncheckedIcon","size","style","rest","internalValue","setInternalValue","useState","useEffect","previousDefaultValue","Boolean","colors","checkboxColor","primary","handlePress","styles","container","width","height","icon","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport interface CheckboxProps {\n status?: boolean;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n color?: string;\n uncheckedColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n defaultValue?: boolean;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status,\n disabled = false,\n onPress = () => {},\n color,\n uncheckedColor,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<boolean>(\n status || defaultValue || false\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n // This special logic is to handle weird APIs like Airtable that return\n // true or undefined for a boolean\n const previousDefaultValue = usePrevious(defaultValue) as\n | boolean\n | undefined;\n React.useEffect(() => {\n if (defaultValue !== previousDefaultValue) {\n setInternalValue(Boolean(defaultValue));\n }\n }, [defaultValue, previousDefaultValue]);\n\n const { colors } = useTheme();\n\n const checkboxColor = internalValue\n ? color || colors.primary\n : uncheckedColor || colors.primary;\n\n const handlePress = () => {\n setInternalValue(!internalValue);\n onPress(!internalValue);\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={internalValue ? checkedIcon : uncheckedIcon}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n"]}
1
+ {"version":3,"sources":["Checkbox.tsx"],"names":["React","View","StyleSheet","useTheme","Touchable","usePrevious","Checkbox","Icon","status","disabled","onPress","onCheck","onUncheck","color","uncheckedColor","defaultValue","checkedIcon","uncheckedIcon","size","style","rest","internalValue","setInternalValue","useState","useEffect","previousDefaultValue","Boolean","colors","checkboxColor","primary","handlePress","newValue","styles","container","width","height","icon","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport interface CheckboxProps {\n status?: boolean;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n onCheck?: () => void;\n onUncheck?: () => void;\n color?: string;\n uncheckedColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n defaultValue?: boolean;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status,\n disabled = false,\n onPress = () => {},\n onCheck,\n onUncheck,\n color,\n uncheckedColor,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<boolean>(\n status || defaultValue || false\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n // This special logic is to handle weird APIs like Airtable that return\n // true or undefined for a boolean\n const previousDefaultValue = usePrevious(defaultValue) as\n | boolean\n | undefined;\n React.useEffect(() => {\n if (defaultValue !== previousDefaultValue) {\n setInternalValue(Boolean(defaultValue));\n }\n }, [defaultValue, previousDefaultValue]);\n\n const { colors } = useTheme();\n\n const checkboxColor = internalValue\n ? color || colors.primary\n : uncheckedColor || colors.primary;\n\n const handlePress = () => {\n const newValue = !internalValue;\n setInternalValue(newValue);\n onPress(newValue);\n\n if (onCheck && newValue) {\n onCheck();\n }\n\n if (onUncheck && !newValue) {\n onUncheck();\n }\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={internalValue ? checkedIcon : uncheckedIcon}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n"]}