@draftbit/core 42.2.0 → 42.2.3-428e28.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 (63) hide show
  1. package/lib/commonjs/components/ActionSheet/ActionSheet.js +1 -1
  2. package/lib/commonjs/components/ActionSheet/ActionSheet.js.map +1 -1
  3. package/lib/commonjs/components/DeprecatedFAB.js +15 -4
  4. package/lib/commonjs/components/DeprecatedFAB.js.map +1 -1
  5. package/lib/commonjs/components/Picker/Picker.js +11 -6
  6. package/lib/commonjs/components/Picker/Picker.js.map +1 -1
  7. package/lib/commonjs/components/Picker/PickerComponent.android.js +24 -9
  8. package/lib/commonjs/components/Picker/PickerComponent.android.js.map +1 -1
  9. package/lib/commonjs/components/Picker/PickerComponent.ios.js +9 -2
  10. package/lib/commonjs/components/Picker/PickerComponent.ios.js.map +1 -1
  11. package/lib/commonjs/components/Picker/PickerComponent.web.js +8 -5
  12. package/lib/commonjs/components/Picker/PickerComponent.web.js.map +1 -1
  13. package/lib/commonjs/components/StarRating.js +1 -0
  14. package/lib/commonjs/components/StarRating.js.map +1 -1
  15. package/lib/commonjs/components/Swiper/Swiper.js +12 -7
  16. package/lib/commonjs/components/Swiper/Swiper.js.map +1 -1
  17. package/lib/commonjs/components/TextField.js +5 -2
  18. package/lib/commonjs/components/TextField.js.map +1 -1
  19. package/lib/commonjs/mappings/TextArea.js +47 -0
  20. package/lib/commonjs/mappings/TextArea.js.map +1 -0
  21. package/lib/commonjs/mappings/TextInput.js +1 -1
  22. package/lib/commonjs/mappings/TextInput.js.map +1 -1
  23. package/lib/module/components/ActionSheet/ActionSheet.js +1 -1
  24. package/lib/module/components/ActionSheet/ActionSheet.js.map +1 -1
  25. package/lib/module/components/Picker/Picker.js +11 -6
  26. package/lib/module/components/Picker/Picker.js.map +1 -1
  27. package/lib/module/components/Picker/PickerComponent.android.js +4 -3
  28. package/lib/module/components/Picker/PickerComponent.android.js.map +1 -1
  29. package/lib/module/components/Picker/PickerComponent.ios.js +9 -2
  30. package/lib/module/components/Picker/PickerComponent.ios.js.map +1 -1
  31. package/lib/module/components/Picker/PickerComponent.web.js +6 -4
  32. package/lib/module/components/Picker/PickerComponent.web.js.map +1 -1
  33. package/lib/module/components/StarRating.js +2 -1
  34. package/lib/module/components/StarRating.js.map +1 -1
  35. package/lib/module/components/Swiper/Swiper.js +14 -8
  36. package/lib/module/components/Swiper/Swiper.js.map +1 -1
  37. package/lib/module/components/TextField.js +6 -3
  38. package/lib/module/components/TextField.js.map +1 -1
  39. package/lib/module/mappings/TextArea.js +38 -0
  40. package/lib/module/mappings/TextArea.js.map +1 -0
  41. package/lib/module/mappings/TextInput.js +2 -2
  42. package/lib/module/mappings/TextInput.js.map +1 -1
  43. package/lib/typescript/src/components/Swiper/Swiper.d.ts +4 -0
  44. package/lib/typescript/src/components/TextField.d.ts +12 -32
  45. package/package.json +6 -5
  46. package/src/components/ActionSheet/ActionSheet.js +1 -1
  47. package/src/components/ActionSheet/ActionSheet.tsx +1 -1
  48. package/src/components/Picker/Picker.js +12 -6
  49. package/src/components/Picker/Picker.tsx +12 -6
  50. package/src/components/Picker/PickerComponent.android.js +3 -3
  51. package/src/components/Picker/PickerComponent.android.tsx +3 -5
  52. package/src/components/Picker/PickerComponent.ios.js +9 -3
  53. package/src/components/Picker/PickerComponent.ios.tsx +12 -5
  54. package/src/components/Picker/PickerComponent.web.js +5 -4
  55. package/src/components/Picker/PickerComponent.web.tsx +5 -6
  56. package/src/components/StarRating.js +2 -1
  57. package/src/components/StarRating.tsx +2 -0
  58. package/src/components/Swiper/Swiper.js +14 -8
  59. package/src/components/Swiper/Swiper.tsx +14 -8
  60. package/src/components/TextField.js +6 -3
  61. package/src/components/TextField.tsx +6 -2
  62. package/src/mappings/TextArea.js +46 -0
  63. package/src/mappings/TextInput.js +2 -1
@@ -81,7 +81,7 @@ const SEED_DATA = {
81
81
  category: _types.COMPONENT_TYPES.container,
82
82
  props: {
83
83
  visible: (0, _types.createStaticBoolProp)({
84
- group: _types.GROUPS.basic,
84
+ group: _types.GROUPS.data,
85
85
  label: "Show Action Sheet"
86
86
  })
87
87
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["ActionSheet.tsx"],"names":["ActionSheet","visible","onClose","children","styles","wrapper","overlay","groupWrapper","group","React","Children","toArray","filter","child","type","name","StyleSheet","create","flex","display","flexDirection","position","top","left","right","bottom","backgroundColor","opacity","justifyContent","marginBottom","borderRadius","marginHorizontal","marginVertical","overflow","SEED_DATA","tag","description","category","COMPONENT_TYPES","container","props","GROUPS","basic","label"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAQA,MAAMA,WAAW,GAAG,CAAC;AAAEC,EAAAA,OAAO,GAAG,KAAZ;AAAmBC,EAAAA,OAAnB;AAA4BC,EAAAA;AAA5B,CAAD,KAAmD;AACrE,SAAOF,OAAO,gBACZ,6BAAC,eAAD,qBACE,6BAAC,kBAAD;AAAW,IAAA,KAAK,EAAEG,MAAM,CAACC,OAAzB;AAAkC,IAAA,OAAO,EAAEH;AAA3C,kBACE,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEE,MAAM,CAACE;AAApB,IADF,eAEE,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEF,MAAM,CAACG;AAApB,kBACE,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEH,MAAM,CAACI;AAApB,KACGC,eAAMC,QAAN,CAAeC,OAAf,CAAuBR,QAAvB,EAAiCS,MAAjC,CACEC,KAAD;AAAA;;AAAA,WAAgB,CAAAA,KAAK,SAAL,IAAAA,KAAK,WAAL,2BAAAA,KAAK,CAAEC,IAAP,4DAAaC,IAAb,MAAsB,mBAAtC;AAAA,GADD,CADH,CADF,eAME,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEX,MAAM,CAACI;AAApB,KACGC,eAAMC,QAAN,CAAeC,OAAf,CAAuBR,QAAvB,EAAiCS,MAAjC,CACEC,KAAD,IAAgBA,KAAK,CAACC,IAAN,CAAWC,IAAX,KAAoB,mBADrC,CADH,CANF,CAFF,CADF,CADY,gBAmBZ,2DAnBF;AAqBD,CAtBD;;AAwBA,MAAMX,MAAM,GAAGY,wBAAWC,MAAX,CAAkB;AAC/BZ,EAAAA,OAAO,EAAE;AACPa,IAAAA,IAAI,EAAE,CADC;AAEPC,IAAAA,OAAO,EAAE,MAFF;AAGPC,IAAAA,aAAa,EAAE;AAHR,GADsB;AAM/Bd,EAAAA,OAAO,EAAE;AACPe,IAAAA,QAAQ,EAAE,UADH;AAEPC,IAAAA,GAAG,EAAE,CAFE;AAGPC,IAAAA,IAAI,EAAE,CAHC;AAIPC,IAAAA,KAAK,EAAE,CAJA;AAKPC,IAAAA,MAAM,EAAE,CALD;AAMPC,IAAAA,eAAe,EAAE,SANV;AAOPC,IAAAA,OAAO,EAAE;AAPF,GANsB;AAe/BpB,EAAAA,YAAY,EAAE;AACZW,IAAAA,IAAI,EAAE,CADM;AAEZE,IAAAA,aAAa,EAAE,QAFH;AAGZQ,IAAAA,cAAc,EAAE,UAHJ;AAIZT,IAAAA,OAAO,EAAE,MAJG;AAKZU,IAAAA,YAAY,EAAE;AALF,GAfiB;AAsB/BrB,EAAAA,KAAK,EAAE;AACLW,IAAAA,OAAO,EAAE,MADJ;AAELC,IAAAA,aAAa,EAAE,QAFV;AAGLU,IAAAA,YAAY,EAAE,EAHT;AAILC,IAAAA,gBAAgB,EAAE,CAJb;AAKLC,IAAAA,cAAc,EAAE,GALX;AAMLC,IAAAA,QAAQ,EAAE;AANL;AAtBwB,CAAlB,CAAf;;eAgCejC,W;;AAER,MAAMkC,SAAS,GAAG;AACvBnB,EAAAA,IAAI,EAAE,cADiB;AAEvBoB,EAAAA,GAAG,EAAE,aAFkB;AAGvBC,EAAAA,WAAW,EAAE,wBAHU;AAIvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,SAJH;AAKvBC,EAAAA,KAAK,EAAE;AACLvC,IAAAA,OAAO,EAAE,iCAAqB;AAC5BO,MAAAA,KAAK,EAAEiC,cAAOC,KADc;AAE5BC,MAAAA,KAAK,EAAE;AAFqB,KAArB;AADJ;AALgB,CAAlB","sourcesContent":["import React from \"react\";\nimport { View, StyleSheet } from \"react-native\";\nimport Portal from \"../Portal/Portal\";\nimport Touchable from \"../Touchable\";\nimport { COMPONENT_TYPES, createStaticBoolProp, GROUPS } from \"@draftbit/types\";\n\ninterface Props {\n visible: boolean;\n onClose: () => void;\n children: React.ReactNode;\n}\n\nconst ActionSheet = ({ visible = false, onClose, children }: Props) => {\n return visible ? (\n <Portal>\n <Touchable style={styles.wrapper} onPress={onClose}>\n <View style={styles.overlay} />\n <View style={styles.groupWrapper}>\n <View style={styles.group}>\n {React.Children.toArray(children).filter(\n (child: any) => child?.type?.name !== \"ActionSheetCancel\"\n )}\n </View>\n <View style={styles.group}>\n {React.Children.toArray(children).filter(\n (child: any) => child.type.name === \"ActionSheetCancel\"\n )}\n </View>\n </View>\n </Touchable>\n </Portal>\n ) : (\n <></>\n );\n};\n\nconst styles = StyleSheet.create({\n wrapper: {\n flex: 1,\n display: \"flex\",\n flexDirection: \"column\",\n },\n overlay: {\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"#000000\",\n opacity: 0.3,\n },\n groupWrapper: {\n flex: 1,\n flexDirection: \"column\",\n justifyContent: \"flex-end\",\n display: \"flex\",\n marginBottom: 25,\n },\n group: {\n display: \"flex\",\n flexDirection: \"column\",\n borderRadius: 10,\n marginHorizontal: 7,\n marginVertical: 2.5,\n overflow: \"hidden\",\n },\n});\n\nexport default ActionSheet;\n\nexport const SEED_DATA = {\n name: \"Action Sheet\",\n tag: \"ActionSheet\",\n description: \"Action Sheet container\",\n category: COMPONENT_TYPES.container,\n props: {\n visible: createStaticBoolProp({\n group: GROUPS.basic,\n label: \"Show Action Sheet\",\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["ActionSheet.tsx"],"names":["ActionSheet","visible","onClose","children","styles","wrapper","overlay","groupWrapper","group","React","Children","toArray","filter","child","type","name","StyleSheet","create","flex","display","flexDirection","position","top","left","right","bottom","backgroundColor","opacity","justifyContent","marginBottom","borderRadius","marginHorizontal","marginVertical","overflow","SEED_DATA","tag","description","category","COMPONENT_TYPES","container","props","GROUPS","data","label"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAQA,MAAMA,WAAW,GAAG,CAAC;AAAEC,EAAAA,OAAO,GAAG,KAAZ;AAAmBC,EAAAA,OAAnB;AAA4BC,EAAAA;AAA5B,CAAD,KAAmD;AACrE,SAAOF,OAAO,gBACZ,6BAAC,eAAD,qBACE,6BAAC,kBAAD;AAAW,IAAA,KAAK,EAAEG,MAAM,CAACC,OAAzB;AAAkC,IAAA,OAAO,EAAEH;AAA3C,kBACE,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEE,MAAM,CAACE;AAApB,IADF,eAEE,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEF,MAAM,CAACG;AAApB,kBACE,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEH,MAAM,CAACI;AAApB,KACGC,eAAMC,QAAN,CAAeC,OAAf,CAAuBR,QAAvB,EAAiCS,MAAjC,CACEC,KAAD;AAAA;;AAAA,WAAgB,CAAAA,KAAK,SAAL,IAAAA,KAAK,WAAL,2BAAAA,KAAK,CAAEC,IAAP,4DAAaC,IAAb,MAAsB,mBAAtC;AAAA,GADD,CADH,CADF,eAME,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEX,MAAM,CAACI;AAApB,KACGC,eAAMC,QAAN,CAAeC,OAAf,CAAuBR,QAAvB,EAAiCS,MAAjC,CACEC,KAAD,IAAgBA,KAAK,CAACC,IAAN,CAAWC,IAAX,KAAoB,mBADrC,CADH,CANF,CAFF,CADF,CADY,gBAmBZ,2DAnBF;AAqBD,CAtBD;;AAwBA,MAAMX,MAAM,GAAGY,wBAAWC,MAAX,CAAkB;AAC/BZ,EAAAA,OAAO,EAAE;AACPa,IAAAA,IAAI,EAAE,CADC;AAEPC,IAAAA,OAAO,EAAE,MAFF;AAGPC,IAAAA,aAAa,EAAE;AAHR,GADsB;AAM/Bd,EAAAA,OAAO,EAAE;AACPe,IAAAA,QAAQ,EAAE,UADH;AAEPC,IAAAA,GAAG,EAAE,CAFE;AAGPC,IAAAA,IAAI,EAAE,CAHC;AAIPC,IAAAA,KAAK,EAAE,CAJA;AAKPC,IAAAA,MAAM,EAAE,CALD;AAMPC,IAAAA,eAAe,EAAE,SANV;AAOPC,IAAAA,OAAO,EAAE;AAPF,GANsB;AAe/BpB,EAAAA,YAAY,EAAE;AACZW,IAAAA,IAAI,EAAE,CADM;AAEZE,IAAAA,aAAa,EAAE,QAFH;AAGZQ,IAAAA,cAAc,EAAE,UAHJ;AAIZT,IAAAA,OAAO,EAAE,MAJG;AAKZU,IAAAA,YAAY,EAAE;AALF,GAfiB;AAsB/BrB,EAAAA,KAAK,EAAE;AACLW,IAAAA,OAAO,EAAE,MADJ;AAELC,IAAAA,aAAa,EAAE,QAFV;AAGLU,IAAAA,YAAY,EAAE,EAHT;AAILC,IAAAA,gBAAgB,EAAE,CAJb;AAKLC,IAAAA,cAAc,EAAE,GALX;AAMLC,IAAAA,QAAQ,EAAE;AANL;AAtBwB,CAAlB,CAAf;;eAgCejC,W;;AAER,MAAMkC,SAAS,GAAG;AACvBnB,EAAAA,IAAI,EAAE,cADiB;AAEvBoB,EAAAA,GAAG,EAAE,aAFkB;AAGvBC,EAAAA,WAAW,EAAE,wBAHU;AAIvBC,EAAAA,QAAQ,EAAEC,uBAAgBC,SAJH;AAKvBC,EAAAA,KAAK,EAAE;AACLvC,IAAAA,OAAO,EAAE,iCAAqB;AAC5BO,MAAAA,KAAK,EAAEiC,cAAOC,IADc;AAE5BC,MAAAA,KAAK,EAAE;AAFqB,KAArB;AADJ;AALgB,CAAlB","sourcesContent":["import React from \"react\";\nimport { View, StyleSheet } from \"react-native\";\nimport Portal from \"../Portal/Portal\";\nimport Touchable from \"../Touchable\";\nimport { COMPONENT_TYPES, createStaticBoolProp, GROUPS } from \"@draftbit/types\";\n\ninterface Props {\n visible: boolean;\n onClose: () => void;\n children: React.ReactNode;\n}\n\nconst ActionSheet = ({ visible = false, onClose, children }: Props) => {\n return visible ? (\n <Portal>\n <Touchable style={styles.wrapper} onPress={onClose}>\n <View style={styles.overlay} />\n <View style={styles.groupWrapper}>\n <View style={styles.group}>\n {React.Children.toArray(children).filter(\n (child: any) => child?.type?.name !== \"ActionSheetCancel\"\n )}\n </View>\n <View style={styles.group}>\n {React.Children.toArray(children).filter(\n (child: any) => child.type.name === \"ActionSheetCancel\"\n )}\n </View>\n </View>\n </Touchable>\n </Portal>\n ) : (\n <></>\n );\n};\n\nconst styles = StyleSheet.create({\n wrapper: {\n flex: 1,\n display: \"flex\",\n flexDirection: \"column\",\n },\n overlay: {\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"#000000\",\n opacity: 0.3,\n },\n groupWrapper: {\n flex: 1,\n flexDirection: \"column\",\n justifyContent: \"flex-end\",\n display: \"flex\",\n marginBottom: 25,\n },\n group: {\n display: \"flex\",\n flexDirection: \"column\",\n borderRadius: 10,\n marginHorizontal: 7,\n marginVertical: 2.5,\n overflow: \"hidden\",\n },\n});\n\nexport default ActionSheet;\n\nexport const SEED_DATA = {\n name: \"Action Sheet\",\n tag: \"ActionSheet\",\n description: \"Action Sheet container\",\n category: COMPONENT_TYPES.container,\n props: {\n visible: createStaticBoolProp({\n group: GROUPS.data,\n label: \"Show Action Sheet\",\n }),\n },\n};\n"]}
@@ -29,8 +29,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
29
29
 
30
30
  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; }
31
31
 
32
- 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); }
33
-
34
32
  const FAB = ({
35
33
  Icon,
36
34
  icon,
@@ -131,7 +129,7 @@ const FAB = ({
131
129
  style: [{
132
130
  elevation
133
131
  }, style]
134
- }, /*#__PURE__*/React.createElement(_Touchable.default, _extends({}, rest, {
132
+ }, /*#__PURE__*/React.createElement(_Touchable.default, { ...rest,
135
133
  onPress: onPress,
136
134
  accessibilityState: {
137
135
  disabled
@@ -139,7 +137,7 @@ const FAB = ({
139
137
  accessibilityRole: "button",
140
138
  disabled: disabled || loading,
141
139
  style: buttonStyles
142
- }), /*#__PURE__*/React.createElement(_reactNative.View, {
140
+ }, /*#__PURE__*/React.createElement(_reactNative.View, {
143
141
  style: styles.content
144
142
  }, icon && loading !== true ? /*#__PURE__*/React.createElement(_reactNative.View, {
145
143
  style: iconStyle
@@ -320,4 +318,17 @@ const SEED_DATA = [{
320
318
  layout: {}
321
319
  }];
322
320
  exports.SEED_DATA = SEED_DATA;
321
+ //# sourceMappingURL=DeprecatedFAB.js.mapPS.uncategorized,
322
+ label: "Type",
323
+ description: "Button type",
324
+ editable: false,
325
+ required: true,
326
+ formType: _types.FORM_TYPES.string,
327
+ propType: _types.PROP_TYPES.STRING,
328
+ defaultValue: "fixed"
329
+ }
330
+ },
331
+ layout: {}
332
+ }];
333
+ exports.SEED_DATA = SEED_DATA;
323
334
  //# sourceMappingURL=DeprecatedFAB.js.map
@@ -1 +1 @@
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","SEED_DATA_PROPS","group","GROUPS","basic","description","editable","required","formType","FORM_TYPES","propType","PROP_TYPES","ASSET","defaultValue","STRING","THEME","action","SEED_DATA","name","tag","category","COMPONENT_TYPES","deprecated","preview_image_url","props","uncategorized","data","layout"],"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 {\n GROUPS,\n FORM_TYPES,\n PROP_TYPES,\n COMPONENT_TYPES,\n} from \"@draftbit/types\";\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\nconst SEED_DATA_PROPS = {\n icon: {\n group: GROUPS.basic,\n label: \"Icon Name\",\n description: \"Name of the icon\",\n editable: true,\n required: true,\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n },\n label: {\n group: GROUPS.basic,\n label: \"Label\",\n description: \"Button label\",\n required: true,\n editable: true,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"GET STARTED\",\n },\n color: {\n group: GROUPS.basic,\n label: \"Color Override\",\n description: \"Override the background color of the button\",\n editable: true,\n required: false,\n formType: FORM_TYPES.color,\n propType: PROP_TYPES.THEME,\n defaultValue: null,\n },\n onPress: {\n group: GROUPS.basic,\n label: \"Action\",\n description: \"Action to execute when button pressed\",\n editable: true,\n required: false,\n formType: FORM_TYPES.action,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n },\n};\n\nexport const SEED_DATA = [\n {\n name: \"FAB Mini\",\n tag: \"FAB\",\n category: COMPONENT_TYPES.deprecated,\n description: \"A round, mini FAB\",\n preview_image_url: \"{CLOUDINARY_URL}/Button_FABMini.png\",\n props: {\n ...SEED_DATA_PROPS,\n type: {\n group: GROUPS.uncategorized,\n label: \"Type\",\n description: \"Button type\",\n editable: false,\n required: true,\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.STRING,\n defaultValue: \"standard\",\n },\n label: {\n group: GROUPS.data,\n label: \"Label\",\n description: \"Button label\",\n required: false,\n editable: false,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n },\n },\n layout: {},\n },\n {\n name: \"FAB Outline\",\n tag: \"FAB\",\n category: COMPONENT_TYPES.deprecated,\n preview_image_url: \"{CLOUDINARY_URL}/Button_FABMini.png\",\n props: {\n ...SEED_DATA_PROPS,\n type: {\n group: GROUPS.uncategorized,\n label: \"Type\",\n description: \"Button type\",\n editable: false,\n required: true,\n propType: PROP_TYPES.STRING,\n formType: FORM_TYPES.string,\n defaultValue: \"outline\",\n },\n label: {\n group: GROUPS.uncategorized,\n label: \"Label\",\n description: \"Button label\",\n required: false,\n editable: false,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n },\n },\n layout: {},\n },\n {\n name: \"FAB Extended\",\n tag: \"FAB\",\n category: COMPONENT_TYPES.deprecated,\n preview_image_url: \"{CLOUDINARY_URL}/Button_FABExtended.png\",\n props: {\n ...SEED_DATA_PROPS,\n type: {\n group: GROUPS.uncategorized,\n label: \"Type\",\n description: \"Button type\",\n editable: false,\n required: true,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"extended\",\n },\n },\n layout: {},\n },\n {\n name: \"FAB Fixed\",\n tag: \"FAB\",\n category: COMPONENT_TYPES.deprecated,\n preview_image_url: \"{CLOUDINARY_URL}/Button_FABFixed.png\",\n props: {\n ...SEED_DATA_PROPS,\n type: {\n group: GROUPS.uncategorized,\n label: \"Type\",\n description: \"Button type\",\n editable: false,\n required: true,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"fixed\",\n },\n },\n layout: {},\n },\n];\n"]}
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","SEED_DATA_PROPS","group","GROUPS","basic","description","editable","required","formType","FORM_TYPES","propType","PROP_TYPES","ASSET","defaultValue","STRING","THEME","action","SEED_DATA","tag","category","COMPONENT_TYPES","deprecated","preview_image_url","props","uncategorized","data","layout"],"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\";\nimport { GROUPS, FORM_TYPES, PROP_TYPES, COMPONENT_TYPES, } from \"@draftbit/types\";\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);\nconst SEED_DATA_PROPS = {\n icon: {\n group: GROUPS.basic,\n label: \"Icon Name\",\n description: \"Name of the icon\",\n editable: true,\n required: true,\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n },\n label: {\n group: GROUPS.basic,\n label: \"Label\",\n description: \"Button label\",\n required: true,\n editable: true,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"GET STARTED\",\n },\n color: {\n group: GROUPS.basic,\n label: \"Color Override\",\n description: \"Override the background color of the button\",\n editable: true,\n required: false,\n formType: FORM_TYPES.color,\n propType: PROP_TYPES.THEME,\n defaultValue: null,\n },\n onPress: {\n group: GROUPS.basic,\n label: \"Action\",\n description: \"Action to execute when button pressed\",\n editable: true,\n required: false,\n formType: FORM_TYPES.action,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n },\n};\nexport const SEED_DATA = [\n {\n name: \"FAB Mini\",\n tag: \"FAB\",\n category: COMPONENT_TYPES.deprecated,\n description: \"A round, mini FAB\",\n preview_image_url: \"{CLOUDINARY_URL}/Button_FABMini.png\",\n props: {\n ...SEED_DATA_PROPS,\n type: {\n group: GROUPS.uncategorized,\n label: \"Type\",\n description: \"Button type\",\n editable: false,\n required: true,\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.STRING,\n defaultValue: \"standard\",\n },\n label: {\n group: GROUPS.data,\n label: \"Label\",\n description: \"Button label\",\n required: false,\n editable: false,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n },\n },\n layout: {},\n },\n {\n name: \"FAB Outline\",\n tag: \"FAB\",\n category: COMPONENT_TYPES.deprecated,\n preview_image_url: \"{CLOUDINARY_URL}/Button_FABMini.png\",\n props: {\n ...SEED_DATA_PROPS,\n type: {\n group: GROUPS.uncategorized,\n label: \"Type\",\n description: \"Button type\",\n editable: false,\n required: true,\n propType: PROP_TYPES.STRING,\n formType: FORM_TYPES.string,\n defaultValue: \"outline\",\n },\n label: {\n group: GROUPS.uncategorized,\n label: \"Label\",\n description: \"Button label\",\n required: false,\n editable: false,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n },\n },\n layout: {},\n },\n {\n name: \"FAB Extended\",\n tag: \"FAB\",\n category: COMPONENT_TYPES.deprecated,\n preview_image_url: \"{CLOUDINARY_URL}/Button_FABExtended.png\",\n props: {\n ...SEED_DATA_PROPS,\n type: {\n group: GROUPS.uncategorized,\n label: \"Type\",\n description: \"Button type\",\n editable: false,\n required: true,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"extended\",\n },\n },\n layout: {},\n },\n {\n name: \"FAB Fixed\",\n tag: \"FAB\",\n category: COMPONENT_TYPES.deprecated,\n preview_image_url: \"{CLOUDINARY_URL}/Button_FABFixed.png\",\n props: {\n ...SEED_DATA_PROPS,\n type: {\n group: GROUPS.uncategorized,\n label: \"Type\",\n description: \"Button type\",\n editable: false,\n required: true,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"fixed\",\n },\n },\n layout: {},\n },\n];\n"]}
@@ -31,12 +31,17 @@ function normalizeOptions(options) {
31
31
  if (typeof options[0] === "string") {
32
32
  return options.map(option => ({
33
33
  label: option,
34
- value: option
34
+ value: String(option)
35
35
  }));
36
36
  }
37
37
 
38
38
  if (options[0].label && options[0].value) {
39
- return options;
39
+ return options.map(option => {
40
+ return {
41
+ label: option.label,
42
+ value: String(option.value)
43
+ };
44
+ });
40
45
  }
41
46
 
42
47
  throw new Error('Picker options must be either an array of strings or array of { "label": string; "value": string; } objects.');
@@ -55,19 +60,19 @@ const Picker = ({
55
60
  return;
56
61
  }
57
62
 
58
- onValueChangeOverride && onValueChangeOverride(itemValue, itemIndex);
63
+ onValueChangeOverride && onValueChangeOverride(String(itemValue), itemIndex);
59
64
  }, [placeholder, onValueChangeOverride]);
60
65
  const normalizedOptions = normalizeOptions(options);
61
66
  const previousInitialValue = (0, _hooks.usePrevious)(initialValue);
62
67
  React.useEffect(() => {
63
- if (initialValue !== previousInitialValue) {
68
+ if (String(initialValue) !== String(previousInitialValue)) {
64
69
  const index = normalizedOptions.findIndex(opt => opt.value === initialValue);
65
70
 
66
71
  if (index == null) {
67
72
  return;
68
73
  }
69
74
 
70
- onValueChange(initialValue, index);
75
+ onValueChange(String(initialValue), index);
71
76
  }
72
77
  }, [initialValue, previousInitialValue, normalizedOptions, onValueChange]);
73
78
  const pickerOptions = placeholder ? [{
@@ -75,7 +80,7 @@ const Picker = ({
75
80
  label: placeholder
76
81
  }, ...normalizedOptions] : normalizedOptions;
77
82
  return /*#__PURE__*/React.createElement(_PickerComponent.default, _extends({}, props, {
78
- selectedValue: value,
83
+ selectedValue: String(value),
79
84
  placeholder: placeholder,
80
85
  options: pickerOptions,
81
86
  onValueChange: onValueChange
@@ -1 +1 @@
1
- {"version":3,"sources":["Picker.tsx"],"names":["normalizeOptions","options","length","map","option","label","value","Error","Picker","placeholder","onValueChange","onValueChangeOverride","initialValue","props","React","useCallback","itemValue","itemIndex","normalizedOptions","previousInitialValue","useEffect","index","findIndex","opt","pickerOptions","SEED_DATA_PROPS","group","GROUPS","data","description","formType","FORM_TYPES","string","propType","PROP_TYPES","STRING","defaultValue","editable","required","basic","placeholderTextColor","color","assistiveText","array","OBJECT","disabled","boolean","BOOLEAN","error","leftIconName","icon","ASSET","leftIconMode","flatArray","rightIconName","fieldName","FIELD_NAME","handlerPropName","SEED_DATA_TRIGGERS","Triggers","OnValueChange","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","preview_image_url","supports_list_render","triggers","type","layout","uncategorized"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { withTheme } from \"../../theming\";\n//@ts-ignore\nimport PickerComponent from \"./PickerComponent\"; //unable to find file due to using .android/.web/.ios\nimport { PickerComponentProps, PickerOption } from \"./PickerTypes\";\n\nimport {\n GROUPS,\n COMPONENT_TYPES,\n FORM_TYPES,\n PROP_TYPES,\n FIELD_NAME,\n Triggers,\n} from \"@draftbit/types\";\nimport { usePrevious } from \"../../hooks\";\n\ntype Props = PickerComponentProps & {\n placeholder?: string;\n value: string;\n options: PickerOption[] | string[];\n};\n\nfunction normalizeOptions(options: Props[\"options\"]): PickerOption[] {\n if (options.length === 0) {\n return [];\n }\n\n if (typeof options[0] === \"string\") {\n return (options as string[]).map((option) => ({\n label: option,\n value: option,\n }));\n }\n\n if (options[0].label && options[0].value) {\n return options as PickerOption[];\n }\n\n throw new Error(\n 'Picker options must be either an array of strings or array of { \"label\": string; \"value\": string; } objects.'\n );\n}\n\nconst Picker: React.FC<Props> = ({\n options = [],\n placeholder,\n onValueChange: onValueChangeOverride,\n value,\n initialValue,\n ...props\n}) => {\n const onValueChange = React.useCallback(\n (itemValue: string, itemIndex: number) => {\n if (placeholder && itemIndex === 0) {\n return;\n }\n onValueChangeOverride && onValueChangeOverride(itemValue, itemIndex);\n },\n [placeholder, onValueChangeOverride]\n );\n\n const normalizedOptions = normalizeOptions(options);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (initialValue !== previousInitialValue) {\n const index = normalizedOptions.findIndex(\n (opt) => opt.value === initialValue\n );\n\n if (index == null) {\n return;\n }\n\n onValueChange(initialValue, index);\n }\n }, [initialValue, previousInitialValue, normalizedOptions, onValueChange]);\n\n const pickerOptions = placeholder\n ? [{ value: placeholder, label: placeholder }, ...normalizedOptions]\n : normalizedOptions;\n\n return (\n <PickerComponent\n {...props}\n selectedValue={value}\n placeholder={placeholder}\n options={pickerOptions}\n onValueChange={onValueChange}\n />\n );\n};\n\nexport default withTheme(Picker);\n\nconst SEED_DATA_PROPS = {\n label: {\n group: GROUPS.data,\n label: \"Label\",\n description: \"The label to be displayed on the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n editable: true,\n required: true,\n },\n placeholder: {\n group: GROUPS.basic,\n label: \"Placeholder\",\n description: \"The placeholder text of the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"Select an option\",\n editable: true,\n required: false,\n },\n placeholderTextColor: {\n group: GROUPS.basic,\n label: \"Placeholder Text Color\",\n description: \"The color of the placeholder text.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.color,\n propType: PROP_TYPES.STRING,\n },\n assistiveText: {\n group: GROUPS.basic,\n label: \"Assistive text\",\n description: \"Helper text to display below the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n editable: true,\n required: false,\n },\n options: {\n group: GROUPS.data,\n label: \"Options\",\n description:\n \"Array of picker options. An array of objects containing a label and value.\",\n editable: true,\n required: false,\n formType: FORM_TYPES.array,\n propType: PROP_TYPES.OBJECT,\n options: [],\n defaultValue: null,\n },\n disabled: {\n group: GROUPS.basic,\n label: \"Disabled\",\n description:\n \"Whether the picker should be disabled. Will prevent selection and show a greyed out state.\",\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n defaultValue: false,\n editable: true,\n required: false,\n },\n error: {\n group: GROUPS.data,\n label: \"Error\",\n description: \"Whether the picker should display the error state\",\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n defaultValue: false,\n editable: true,\n required: false,\n },\n leftIconName: {\n group: GROUPS.basic,\n label: \"Left icon name\",\n description: \"The icon to display on the left\",\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n editable: true,\n required: false,\n },\n leftIconMode: {\n group: GROUPS.basic,\n label: \"Left icon mode\",\n description:\n \"The mode of the icon to display on the left. 'inset' or 'outset'.\",\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n defaultValue: \"inset\",\n options: [\"inset\", \"outset\"],\n editable: true,\n required: true,\n },\n rightIconName: {\n group: GROUPS.basic,\n label: \"Right icon name\",\n description: \"The icon to display on the right\",\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n editable: true,\n required: false,\n },\n fieldName: {\n ...FIELD_NAME,\n defaultValue: \"pickerValue\",\n handlerPropName: \"onValueChange\",\n },\n};\n\nconst SEED_DATA_TRIGGERS = [Triggers.OnValueChange];\nexport const SEED_DATA = [\n {\n name: \"Picker\",\n tag: \"Picker\",\n description: \"A component used to pick a value from a set of options\",\n category: COMPONENT_TYPES.input,\n preview_image_url: \"{CLOUDINARY_URL}/Picker.png\",\n supports_list_render: false,\n triggers: SEED_DATA_TRIGGERS,\n props: {\n ...SEED_DATA_PROPS,\n type: {\n label: \"Appearance\",\n description: \"Type of Picker\",\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n defaultValue: \"solid\",\n options: [\"solid\", \"underline\"],\n editable: true,\n required: true,\n group: GROUPS.basic,\n },\n },\n layout: {},\n },\n {\n name: \"Picker - Underline\",\n tag: \"Picker\",\n description: \"A picker with an underline\",\n category: COMPONENT_TYPES.input,\n preview_image_url: \"{CLOUDINARY_URL}/Picker.png\",\n supports_list_render: false,\n triggers: SEED_DATA_TRIGGERS,\n props: {\n ...SEED_DATA_PROPS,\n type: {\n label: \"Type\",\n description: \"Type\",\n group: GROUPS.uncategorized,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"underline\",\n editable: false,\n required: false,\n },\n },\n layout: {},\n },\n];\n"]}
1
+ {"version":3,"sources":["Picker.tsx"],"names":["normalizeOptions","options","length","map","option","label","value","String","Error","Picker","placeholder","onValueChange","onValueChangeOverride","initialValue","props","React","useCallback","itemValue","itemIndex","normalizedOptions","previousInitialValue","useEffect","index","findIndex","opt","pickerOptions","SEED_DATA_PROPS","group","GROUPS","data","description","formType","FORM_TYPES","string","propType","PROP_TYPES","STRING","defaultValue","editable","required","basic","placeholderTextColor","color","assistiveText","array","OBJECT","disabled","boolean","BOOLEAN","error","leftIconName","icon","ASSET","leftIconMode","flatArray","rightIconName","fieldName","FIELD_NAME","handlerPropName","SEED_DATA_TRIGGERS","Triggers","OnValueChange","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","preview_image_url","supports_list_render","triggers","type","layout","uncategorized"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { withTheme } from \"../../theming\";\n//@ts-ignore\nimport PickerComponent from \"./PickerComponent\"; //unable to find file due to using .android/.web/.ios\nimport { PickerComponentProps, PickerOption } from \"./PickerTypes\";\n\nimport {\n GROUPS,\n COMPONENT_TYPES,\n FORM_TYPES,\n PROP_TYPES,\n FIELD_NAME,\n Triggers,\n} from \"@draftbit/types\";\nimport { usePrevious } from \"../../hooks\";\n\ntype Props = PickerComponentProps & {\n placeholder?: string;\n value: string;\n options: PickerOption[] | string[];\n};\n\nfunction normalizeOptions(options: Props[\"options\"]): PickerOption[] {\n if (options.length === 0) {\n return [];\n }\n\n if (typeof options[0] === \"string\") {\n return (options as string[]).map((option) => ({\n label: option,\n value: String(option),\n }));\n }\n\n if (options[0].label && options[0].value) {\n return options.map((option) => {\n return {\n label: option.label,\n value: String(option.value),\n };\n });\n }\n\n throw new Error(\n 'Picker options must be either an array of strings or array of { \"label\": string; \"value\": string; } objects.'\n );\n}\n\nconst Picker: React.FC<Props> = ({\n options = [],\n placeholder,\n onValueChange: onValueChangeOverride,\n value,\n initialValue,\n ...props\n}) => {\n const onValueChange = React.useCallback(\n (itemValue: string, itemIndex: number) => {\n if (placeholder && itemIndex === 0) {\n return;\n }\n onValueChangeOverride &&\n onValueChangeOverride(String(itemValue), itemIndex);\n },\n [placeholder, onValueChangeOverride]\n );\n\n const normalizedOptions = normalizeOptions(options);\n\n const previousInitialValue = usePrevious(initialValue);\n React.useEffect(() => {\n if (String(initialValue) !== String(previousInitialValue)) {\n const index = normalizedOptions.findIndex(\n (opt) => opt.value === initialValue\n );\n\n if (index == null) {\n return;\n }\n\n onValueChange(String(initialValue), index);\n }\n }, [initialValue, previousInitialValue, normalizedOptions, onValueChange]);\n\n const pickerOptions = placeholder\n ? [{ value: placeholder, label: placeholder }, ...normalizedOptions]\n : normalizedOptions;\n\n return (\n <PickerComponent\n {...props}\n selectedValue={String(value)}\n placeholder={placeholder}\n options={pickerOptions}\n onValueChange={onValueChange}\n />\n );\n};\n\nexport default withTheme(Picker);\n\nconst SEED_DATA_PROPS = {\n label: {\n group: GROUPS.data,\n label: \"Label\",\n description: \"The label to be displayed on the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n editable: true,\n required: true,\n },\n placeholder: {\n group: GROUPS.basic,\n label: \"Placeholder\",\n description: \"The placeholder text of the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"Select an option\",\n editable: true,\n required: false,\n },\n placeholderTextColor: {\n group: GROUPS.basic,\n label: \"Placeholder Text Color\",\n description: \"The color of the placeholder text.\",\n editable: true,\n required: false,\n defaultValue: null,\n formType: FORM_TYPES.color,\n propType: PROP_TYPES.STRING,\n },\n assistiveText: {\n group: GROUPS.basic,\n label: \"Assistive text\",\n description: \"Helper text to display below the picker\",\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: null,\n editable: true,\n required: false,\n },\n options: {\n group: GROUPS.data,\n label: \"Options\",\n description:\n \"Array of picker options. An array of objects containing a label and value.\",\n editable: true,\n required: false,\n formType: FORM_TYPES.array,\n propType: PROP_TYPES.OBJECT,\n options: [],\n defaultValue: null,\n },\n disabled: {\n group: GROUPS.basic,\n label: \"Disabled\",\n description:\n \"Whether the picker should be disabled. Will prevent selection and show a greyed out state.\",\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n defaultValue: false,\n editable: true,\n required: false,\n },\n error: {\n group: GROUPS.data,\n label: \"Error\",\n description: \"Whether the picker should display the error state\",\n formType: FORM_TYPES.boolean,\n propType: PROP_TYPES.BOOLEAN,\n defaultValue: false,\n editable: true,\n required: false,\n },\n leftIconName: {\n group: GROUPS.basic,\n label: \"Left icon name\",\n description: \"The icon to display on the left\",\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n editable: true,\n required: false,\n },\n leftIconMode: {\n group: GROUPS.basic,\n label: \"Left icon mode\",\n description:\n \"The mode of the icon to display on the left. 'inset' or 'outset'.\",\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n defaultValue: \"inset\",\n options: [\"inset\", \"outset\"],\n editable: true,\n required: true,\n },\n rightIconName: {\n group: GROUPS.basic,\n label: \"Right icon name\",\n description: \"The icon to display on the right\",\n formType: FORM_TYPES.icon,\n propType: PROP_TYPES.ASSET,\n defaultValue: null,\n editable: true,\n required: false,\n },\n fieldName: {\n ...FIELD_NAME,\n defaultValue: \"pickerValue\",\n handlerPropName: \"onValueChange\",\n },\n};\n\nconst SEED_DATA_TRIGGERS = [Triggers.OnValueChange];\nexport const SEED_DATA = [\n {\n name: \"Picker\",\n tag: \"Picker\",\n description: \"A component used to pick a value from a set of options\",\n category: COMPONENT_TYPES.input,\n preview_image_url: \"{CLOUDINARY_URL}/Picker.png\",\n supports_list_render: false,\n triggers: SEED_DATA_TRIGGERS,\n props: {\n ...SEED_DATA_PROPS,\n type: {\n label: \"Appearance\",\n description: \"Type of Picker\",\n formType: FORM_TYPES.flatArray,\n propType: PROP_TYPES.STRING,\n defaultValue: \"solid\",\n options: [\"solid\", \"underline\"],\n editable: true,\n required: true,\n group: GROUPS.basic,\n },\n },\n layout: {},\n },\n {\n name: \"Picker - Underline\",\n tag: \"Picker\",\n description: \"A picker with an underline\",\n category: COMPONENT_TYPES.input,\n preview_image_url: \"{CLOUDINARY_URL}/Picker.png\",\n supports_list_render: false,\n triggers: SEED_DATA_TRIGGERS,\n props: {\n ...SEED_DATA_PROPS,\n type: {\n label: \"Type\",\n description: \"Type\",\n group: GROUPS.uncategorized,\n formType: FORM_TYPES.string,\n propType: PROP_TYPES.STRING,\n defaultValue: \"underline\",\n editable: false,\n required: false,\n },\n },\n layout: {},\n },\n];\n"]}
@@ -27,8 +27,6 @@ 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
-
32
30
  const Picker = ({
33
31
  style,
34
32
  options,
@@ -86,7 +84,7 @@ const Picker = ({
86
84
  };
87
85
 
88
86
  const stylesWithoutMargin = style && (0, _lodash.default)(_reactNative.StyleSheet.flatten(style), ["margin", "marginTop", "marginRight", "marginBottom", "marginLeft"]);
89
- const selectedLabel = selectedValue && ((_options$find$label = (_options$find = options.find(opt => opt.value === selectedValue)) === null || _options$find === void 0 ? void 0 : _options$find.label) !== null && _options$find$label !== void 0 ? _options$find$label : selectedValue);
87
+ const selectedLabel = selectedValue && ((_options$find$label = (_options$find = options.find(o => o.value === selectedValue)) === null || _options$find === void 0 ? void 0 : _options$find.label) !== null && _options$find$label !== void 0 ? _options$find$label : selectedValue);
90
88
  return /*#__PURE__*/React.createElement(_Touchable.default, {
91
89
  disabled: disabled,
92
90
  onPress: toggleFocus,
@@ -94,14 +92,15 @@ const Picker = ({
94
92
  }, /*#__PURE__*/React.createElement(_reactNative.View, null, /*#__PURE__*/React.createElement(_picker.Picker, {
95
93
  enabled: !disabled,
96
94
  selectedValue: selectedValue,
97
- onValueChange: (value, index) => onValueChange(value.toString(), index),
95
+ onValueChange: onValueChange,
98
96
  style: {
99
97
  opacity: 0,
100
98
  position: "absolute",
101
99
  top: 0,
102
100
  left: 0,
103
101
  right: 0,
104
- bottom: 0
102
+ bottom: 0,
103
+ width: "100%"
105
104
  }
106
105
  }, options.map(o => /*#__PURE__*/React.createElement(_picker.Picker.Item, {
107
106
  label: o.label,
@@ -109,11 +108,27 @@ const Picker = ({
109
108
  key: o.value
110
109
  }))), /*#__PURE__*/React.createElement(_reactNative.View, {
111
110
  pointerEvents: "none"
112
- }, /*#__PURE__*/React.createElement(_TextField.default, _extends({}, props, {
111
+ }, /*#__PURE__*/React.createElement(_TextField.default, { ...props,
113
112
  value: selectedLabel,
114
- placeholder: placeholder // @ts-ignore
115
- ,
116
- ref: textField // cannot determine if ref is of correct type due to component being wrapped in a withTheme()
113
+ placeholder: placeholder,
114
+ // @ts-ignore
115
+ ref: textField,
116
+ disabled: disabled,
117
+ // @ts-expect-error
118
+ style: stylesWithoutMargin
119
+ }))));
120
+ };
121
+
122
+ const styles = _reactNative.StyleSheet.create({
123
+ container: {
124
+ alignSelf: "stretch"
125
+ }
126
+ });
127
+
128
+ var _default = (0, _theming.withTheme)(Picker);
129
+
130
+ exports.default = _default;
131
+ //# sourceMappingURL=PickerComponent.android.js.map: textField // cannot determine if ref is of correct type due to component being wrapped in a withTheme()
117
132
  ,
118
133
  disabled: disabled // @ts-expect-error
119
134
  ,
@@ -1 +1 @@
1
- {"version":3,"sources":["PickerComponent.android.tsx"],"names":["Picker","style","options","placeholder","selectedValue","disabled","onValueChange","onValueChangeOverride","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","React","useRef","undefined","itemValue","itemIndex","toggleFocus","current","stylesWithoutMargin","StyleSheet","flatten","selectedLabel","find","opt","value","label","styles","container","index","toString","opacity","position","top","left","right","bottom","map","o","create","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet } from \"react-native\";\nimport omit from \"lodash.omit\";\nimport { withTheme } from \"../../theming\";\nimport { Picker as NativePicker } from \"@react-native-picker/picker\";\nimport { extractStyles } from \"../../utilities\";\n\nimport TextField from \"../TextField\";\nimport Touchable from \"../Touchable\";\nimport { PickerComponentProps } from \"./PickerTypes\";\n\nconst Picker: React.FC<PickerComponentProps> = ({\n style,\n options,\n placeholder,\n selectedValue,\n disabled = false,\n onValueChange: onValueChangeOverride = () => {},\n ...props\n}) => {\n const {\n viewStyles: {\n borderRadius, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderTopWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderRightWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderBottomWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderLeftWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n backgroundColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n padding, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingTop, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingRight, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingBottom, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingLeft, // eslint-disable-line @typescript-eslint/no-unused-vars\n ...viewStyles\n },\n } = extractStyles(style);\n\n const textField = React.useRef<typeof TextField | undefined>(undefined);\n\n const onValueChange = (itemValue: string, itemIndex: number) => {\n toggleFocus();\n onValueChangeOverride(itemValue, itemIndex);\n };\n\n const toggleFocus = () => {\n if (!disabled) {\n // @ts-ignore\n textField.current.toggleFocus(); // cannot determine if method exists due to component being wrapped in a withTheme()\n }\n };\n\n const stylesWithoutMargin =\n style &&\n omit(StyleSheet.flatten(style), [\n \"margin\",\n \"marginTop\",\n \"marginRight\",\n \"marginBottom\",\n \"marginLeft\",\n ]);\n\n const selectedLabel =\n selectedValue &&\n (options.find((opt) => opt.value === selectedValue)?.label ??\n selectedValue);\n\n return (\n <Touchable\n disabled={disabled}\n onPress={toggleFocus}\n style={[styles.container, viewStyles]}\n >\n <View>\n <NativePicker\n enabled={!disabled}\n selectedValue={selectedValue}\n onValueChange={(value, index) =>\n onValueChange(value.toString(), index)\n }\n style={{\n opacity: 0,\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n }}\n >\n {options.map((o) => (\n <NativePicker.Item label={o.label} value={o.value} key={o.value} />\n ))}\n </NativePicker>\n <View pointerEvents=\"none\">\n <TextField\n {...props}\n value={selectedLabel}\n placeholder={placeholder}\n // @ts-ignore\n ref={textField} // cannot determine if ref is of correct type due to component being wrapped in a withTheme()\n disabled={disabled}\n // @ts-expect-error\n style={stylesWithoutMargin}\n />\n </View>\n </View>\n </Touchable>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n});\n\nexport default withTheme(Picker);\n"]}
1
+ {"version":3,"sources":["PickerComponent.android.js"],"names":["Picker","style","options","placeholder","selectedValue","disabled","onValueChange","onValueChangeOverride","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","React","useRef","undefined","itemValue","itemIndex","toggleFocus","current","stylesWithoutMargin","StyleSheet","flatten","selectedLabel","find","o","value","label","createElement","Touchable","onPress","styles","container","View","NativePicker","enabled","opacity","position","top","left","right","bottom","width","map","Item","key","pointerEvents","TextField","ref","create","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet } from \"react-native\";\nimport omit from \"lodash.omit\";\nimport { withTheme } from \"../../theming\";\nimport { Picker as NativePicker } from \"@react-native-picker/picker\";\nimport { extractStyles } from \"../../utilities\";\nimport TextField from \"../TextField\";\nimport Touchable from \"../Touchable\";\nconst Picker = ({ style, options, placeholder, selectedValue, disabled = false, onValueChange: onValueChangeOverride = () => { }, ...props }) => {\n const { viewStyles: { borderRadius, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderTopWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderRightWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderBottomWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderLeftWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n backgroundColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n padding, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingTop, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingRight, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingBottom, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingLeft, // eslint-disable-line @typescript-eslint/no-unused-vars\n ...viewStyles }, } = extractStyles(style);\n const textField = React.useRef(undefined);\n const onValueChange = (itemValue, itemIndex) => {\n toggleFocus();\n onValueChangeOverride(itemValue, itemIndex);\n };\n const toggleFocus = () => {\n if (!disabled) {\n // @ts-ignore\n textField.current.toggleFocus(); // cannot determine if method exists due to component being wrapped in a withTheme()\n }\n };\n const stylesWithoutMargin = style &&\n omit(StyleSheet.flatten(style), [\n \"margin\",\n \"marginTop\",\n \"marginRight\",\n \"marginBottom\",\n \"marginLeft\",\n ]);\n const selectedLabel = selectedValue &&\n (options.find((o) => o.value === selectedValue)?.label ?? selectedValue);\n return (React.createElement(Touchable, { disabled: disabled, onPress: toggleFocus, style: [styles.container, viewStyles] },\n React.createElement(View, null,\n React.createElement(NativePicker, { enabled: !disabled, selectedValue: selectedValue, onValueChange: onValueChange, style: {\n opacity: 0,\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n width: \"100%\",\n } }, options.map((o) => (React.createElement(NativePicker.Item, { label: o.label, value: o.value, key: o.value })))),\n React.createElement(View, { pointerEvents: \"none\" },\n React.createElement(TextField, { ...props, value: selectedLabel, placeholder: placeholder, \n // @ts-ignore\n ref: textField, disabled: disabled, \n // @ts-expect-error\n style: stylesWithoutMargin })))));\n};\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n});\nexport default withTheme(Picker);\n"]}
@@ -48,6 +48,8 @@ const Picker = ({
48
48
  },
49
49
  ...props
50
50
  }) => {
51
+ var _options$find$label, _options$find;
52
+
51
53
  const {
52
54
  viewStyles: {
53
55
  borderRadius,
@@ -89,13 +91,14 @@ const Picker = ({
89
91
  };
90
92
 
91
93
  const stylesWithoutMargin = style && (0, _lodash.default)(_reactNative.StyleSheet.flatten(style), ["margin", "marginTop", "marginRight", "marginBottom", "marginLeft"]);
94
+ const selectedLabel = selectedValue && ((_options$find$label = (_options$find = options.find(o => o.value === selectedValue)) === null || _options$find === void 0 ? void 0 : _options$find.label) !== null && _options$find$label !== void 0 ? _options$find$label : selectedValue);
92
95
  return /*#__PURE__*/React.createElement(_reactNative.View, {
93
96
  style: [styles.container, viewStyles]
94
97
  }, /*#__PURE__*/React.createElement(_Touchable.default, {
95
98
  disabled: disabled,
96
99
  onPress: toggleVisibility
97
100
  }, /*#__PURE__*/React.createElement(_TextField.default, _extends({}, props, {
98
- value: selectedValue,
101
+ value: String(selectedLabel),
99
102
  placeholder: placeholder // @ts-ignore
100
103
  ,
101
104
  ref: textField // cannot determine if ref is of correct type due to component being wrapped in a withTheme()
@@ -116,8 +119,11 @@ const Picker = ({
116
119
  onPress: toggleVisibility,
117
120
  style: styles.closeButton
118
121
  }, "Close"), /*#__PURE__*/React.createElement(_picker.Picker, {
122
+ style: {
123
+ backgroundColor: "white"
124
+ },
119
125
  selectedValue: selectedValue,
120
- onValueChange: (value, index) => onValueChange(value.toString(), index)
126
+ onValueChange: onValueChange
121
127
  }, options.map(o => /*#__PURE__*/React.createElement(_picker.Picker.Item, {
122
128
  label: o.label,
123
129
  value: o.value,
@@ -138,6 +144,7 @@ const styles = _reactNative.StyleSheet.create({
138
144
  justifyContent: "center"
139
145
  },
140
146
  pickerContainer: {
147
+ backgroundColor: "white",
141
148
  flexDirection: "column",
142
149
  width: "100%"
143
150
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["PickerComponent.ios.tsx"],"names":["Picker","Icon","style","options","placeholder","selectedValue","disabled","onValueChange","theme","colors","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","React","useRef","undefined","pickerVisible","setIsPickerVisible","useState","toggleVisibility","current","toggleFocus","stylesWithoutMargin","StyleSheet","flatten","styles","container","picker","divider","pickerContainer","closeButton","value","index","toString","map","o","label","create","alignSelf","position","bottom","left","right","flexDirection","justifyContent","width"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet } from \"react-native\";\nimport { SafeAreaView } from \"react-native-safe-area-context\";\nimport omit from \"lodash.omit\";\n\nimport { Picker as NativePicker } from \"@react-native-picker/picker\";\n\nimport { withTheme } from \"../../theming\";\n\nimport Portal from \"../Portal/Portal\";\nimport Button from \"../DeprecatedButton\";\nimport TextField from \"../TextField\";\nimport Touchable from \"../Touchable\";\nimport { PickerComponentProps } from \"./PickerTypes\";\nimport { extractStyles } from \"../../utilities\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nconst Picker: React.FC<PickerComponentProps & IconSlot> = ({\n Icon,\n style,\n options,\n placeholder,\n selectedValue,\n disabled = false,\n onValueChange = () => {},\n theme: { colors },\n ...props\n}) => {\n const {\n viewStyles: {\n borderRadius, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderTopWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderRightWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderBottomWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderLeftWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n backgroundColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n padding, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingTop, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingRight, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingBottom, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingLeft, // eslint-disable-line @typescript-eslint/no-unused-vars\n ...viewStyles\n },\n } = extractStyles(style);\n\n const textField = React.useRef<typeof TextField | undefined>(undefined);\n const [pickerVisible, setIsPickerVisible] = React.useState(false);\n\n const toggleVisibility = () => {\n setIsPickerVisible(!pickerVisible);\n // @ts-ignore\n textField.current.toggleFocus(); // cannot determine if method exists due to component being wrapped in a withTheme()\n };\n\n const stylesWithoutMargin =\n style &&\n omit(StyleSheet.flatten(style), [\n \"margin\",\n \"marginTop\",\n \"marginRight\",\n \"marginBottom\",\n \"marginLeft\",\n ]);\n\n return (\n <View style={[styles.container, viewStyles]}>\n <Touchable disabled={disabled} onPress={toggleVisibility}>\n <TextField\n {...props}\n value={selectedValue}\n placeholder={placeholder}\n // @ts-ignore\n ref={textField} // cannot determine if ref is of correct type due to component being wrapped in a withTheme()\n disabled={disabled}\n pointerEvents=\"none\"\n // @ts-expect-error\n style={stylesWithoutMargin}\n />\n </Touchable>\n {pickerVisible && (\n <Portal>\n <View style={[styles.picker, { backgroundColor: colors.divider }]}>\n <SafeAreaView style={styles.pickerContainer}>\n <Button\n Icon={Icon}\n type=\"text\"\n onPress={toggleVisibility}\n style={styles.closeButton}\n >\n Close\n </Button>\n <NativePicker\n selectedValue={selectedValue}\n onValueChange={(value, index) =>\n onValueChange(value.toString(), index)\n }\n >\n {options.map((o: any) => (\n <NativePicker.Item\n label={o.label}\n value={o.value}\n key={o.value}\n />\n ))}\n </NativePicker>\n </SafeAreaView>\n </View>\n </Portal>\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n picker: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n flexDirection: \"row\",\n justifyContent: \"center\",\n },\n pickerContainer: { flexDirection: \"column\", width: \"100%\" },\n closeButton: {\n alignSelf: \"flex-end\",\n },\n});\n\nexport default withTheme(Picker);\n"]}
1
+ {"version":3,"sources":["PickerComponent.ios.tsx"],"names":["Picker","Icon","style","options","placeholder","selectedValue","disabled","onValueChange","theme","colors","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","React","useRef","undefined","pickerVisible","setIsPickerVisible","useState","toggleVisibility","current","toggleFocus","stylesWithoutMargin","StyleSheet","flatten","selectedLabel","find","o","value","label","styles","container","String","picker","divider","pickerContainer","closeButton","map","create","alignSelf","position","bottom","left","right","flexDirection","justifyContent","width"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;AAEA;;;;;;;;;;AAGA,MAAMA,MAAiD,GAAG,CAAC;AACzDC,EAAAA,IADyD;AAEzDC,EAAAA,KAFyD;AAGzDC,EAAAA,OAHyD;AAIzDC,EAAAA,WAJyD;AAKzDC,EAAAA,aALyD;AAMzDC,EAAAA,QAAQ,GAAG,KAN8C;AAOzDC,EAAAA,aAAa,GAAG,MAAM,CAAE,CAPiC;AAQzDC,EAAAA,KAAK,EAAE;AAAEC,IAAAA;AAAF,GARkD;AASzD,KAAGC;AATsD,CAAD,KAUpD;AAAA;;AACJ,QAAM;AACJC,IAAAA,UAAU,EAAE;AACVC,MAAAA,YADU;AACI;AACdC,MAAAA,WAFU;AAEG;AACbC,MAAAA,cAHU;AAGM;AAChBC,MAAAA,gBAJU;AAIQ;AAClBC,MAAAA,iBALU;AAKS;AACnBC,MAAAA,eANU;AAMO;AACjBC,MAAAA,WAPU;AAOG;AACbC,MAAAA,eARU;AAQO;AACjBC,MAAAA,OATU;AASD;AACTC,MAAAA,UAVU;AAUE;AACZC,MAAAA,YAXU;AAWI;AACdC,MAAAA,aAZU;AAYK;AACfC,MAAAA,WAbU;AAaG;AACb,SAAGb;AAdO;AADR,MAiBF,8BAAcT,KAAd,CAjBJ;AAmBA,QAAMuB,SAAS,GAAGC,KAAK,CAACC,MAAN,CAA2CC,SAA3C,CAAlB;AACA,QAAM,CAACC,aAAD,EAAgBC,kBAAhB,IAAsCJ,KAAK,CAACK,QAAN,CAAe,KAAf,CAA5C;;AAEA,QAAMC,gBAAgB,GAAG,MAAM;AAC7BF,IAAAA,kBAAkB,CAAC,CAACD,aAAF,CAAlB,CAD6B,CAE7B;;AACAJ,IAAAA,SAAS,CAACQ,OAAV,CAAkBC,WAAlB,GAH6B,CAGI;AAClC,GAJD;;AAMA,QAAMC,mBAAmB,GACvBjC,KAAK,IACL,qBAAKkC,wBAAWC,OAAX,CAAmBnC,KAAnB,CAAL,EAAgC,CAC9B,QAD8B,EAE9B,WAF8B,EAG9B,aAH8B,EAI9B,cAJ8B,EAK9B,YAL8B,CAAhC,CAFF;AAUA,QAAMoC,aAAa,GACjBjC,aAAa,6CACZF,OAAO,CAACoC,IAAR,CAAcC,CAAD,IAAOA,CAAC,CAACC,KAAF,KAAYpC,aAAhC,CADY,kDACZ,cAAgDqC,KADpC,qEAC6CrC,aAD7C,CADf;AAIA,sBACE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACsC,MAAM,CAACC,SAAR,EAAmBjC,UAAnB;AAAb,kBACE,oBAAC,kBAAD;AAAW,IAAA,QAAQ,EAAEL,QAArB;AAA+B,IAAA,OAAO,EAAE0B;AAAxC,kBACE,oBAAC,kBAAD,eACMtB,KADN;AAEE,IAAA,KAAK,EAAEmC,MAAM,CAACP,aAAD,CAFf;AAGE,IAAA,WAAW,EAAElC,WAHf,CAIE;AAJF;AAKE,IAAA,GAAG,EAAEqB,SALP,CAKkB;AALlB;AAME,IAAA,QAAQ,EAAEnB,QANZ;AAOE,IAAA,aAAa,EAAC,MAPhB,CAQE;AARF;AASE,IAAA,KAAK,EAAE6B;AATT,KADF,CADF,EAcGN,aAAa,iBACZ,oBAAC,eAAD,qBACE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACc,MAAM,CAACG,MAAR,EAAgB;AAAE3B,MAAAA,eAAe,EAAEV,MAAM,CAACsC;AAA1B,KAAhB;AAAb,kBACE,oBAAC,wCAAD;AAAc,IAAA,KAAK,EAAEJ,MAAM,CAACK;AAA5B,kBACE,oBAAC,yBAAD;AACE,IAAA,IAAI,EAAE/C,IADR;AAEE,IAAA,IAAI,EAAC,MAFP;AAGE,IAAA,OAAO,EAAE+B,gBAHX;AAIE,IAAA,KAAK,EAAEW,MAAM,CAACM;AAJhB,aADF,eASE,oBAAC,cAAD;AACE,IAAA,KAAK,EAAE;AAAE9B,MAAAA,eAAe,EAAE;AAAnB,KADT;AAEE,IAAA,aAAa,EAAEd,aAFjB;AAGE,IAAA,aAAa,EAAEE;AAHjB,KAKGJ,OAAO,CAAC+C,GAAR,CAAaV,CAAD,iBACX,oBAAC,cAAD,CAAc,IAAd;AACE,IAAA,KAAK,EAAEA,CAAC,CAACE,KADX;AAEE,IAAA,KAAK,EAAEF,CAAC,CAACC,KAFX;AAGE,IAAA,GAAG,EAAED,CAAC,CAACC;AAHT,IADD,CALH,CATF,CADF,CADF,CAfJ,CADF;AA8CD,CAnGD;;AAqGA,MAAME,MAAM,GAAGP,wBAAWe,MAAX,CAAkB;AAC/BP,EAAAA,SAAS,EAAE;AACTQ,IAAAA,SAAS,EAAE;AADF,GADoB;AAI/BN,EAAAA,MAAM,EAAE;AACNO,IAAAA,QAAQ,EAAE,UADJ;AAENC,IAAAA,MAAM,EAAE,CAFF;AAGNC,IAAAA,IAAI,EAAE,CAHA;AAINC,IAAAA,KAAK,EAAE,CAJD;AAKNC,IAAAA,aAAa,EAAE,KALT;AAMNC,IAAAA,cAAc,EAAE;AANV,GAJuB;AAY/BV,EAAAA,eAAe,EAAE;AACf7B,IAAAA,eAAe,EAAE,OADF;AAEfsC,IAAAA,aAAa,EAAE,QAFA;AAGfE,IAAAA,KAAK,EAAE;AAHQ,GAZc;AAiB/BV,EAAAA,WAAW,EAAE;AACXG,IAAAA,SAAS,EAAE;AADA;AAjBkB,CAAlB,CAAf;;eAsBe,wBAAUpD,MAAV,C","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet } from \"react-native\";\nimport { SafeAreaView } from \"react-native-safe-area-context\";\nimport omit from \"lodash.omit\";\n\nimport { Picker as NativePicker } from \"@react-native-picker/picker\";\n\nimport { withTheme } from \"../../theming\";\n\nimport Portal from \"../Portal/Portal\";\nimport Button from \"../DeprecatedButton\";\nimport TextField from \"../TextField\";\nimport Touchable from \"../Touchable\";\nimport { PickerComponentProps } from \"./PickerTypes\";\nimport { extractStyles } from \"../../utilities\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nconst Picker: React.FC<PickerComponentProps & IconSlot> = ({\n Icon,\n style,\n options,\n placeholder,\n selectedValue,\n disabled = false,\n onValueChange = () => {},\n theme: { colors },\n ...props\n}) => {\n const {\n viewStyles: {\n borderRadius, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderTopWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderRightWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderBottomWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderLeftWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n backgroundColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n padding, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingTop, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingRight, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingBottom, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingLeft, // eslint-disable-line @typescript-eslint/no-unused-vars\n ...viewStyles\n },\n } = extractStyles(style);\n\n const textField = React.useRef<typeof TextField | undefined>(undefined);\n const [pickerVisible, setIsPickerVisible] = React.useState(false);\n\n const toggleVisibility = () => {\n setIsPickerVisible(!pickerVisible);\n // @ts-ignore\n textField.current.toggleFocus(); // cannot determine if method exists due to component being wrapped in a withTheme()\n };\n\n const stylesWithoutMargin =\n style &&\n omit(StyleSheet.flatten(style), [\n \"margin\",\n \"marginTop\",\n \"marginRight\",\n \"marginBottom\",\n \"marginLeft\",\n ]);\n\n const selectedLabel =\n selectedValue &&\n (options.find((o) => o.value === selectedValue)?.label ?? selectedValue);\n\n return (\n <View style={[styles.container, viewStyles]}>\n <Touchable disabled={disabled} onPress={toggleVisibility}>\n <TextField\n {...props}\n value={String(selectedLabel)}\n placeholder={placeholder}\n // @ts-ignore\n ref={textField} // cannot determine if ref is of correct type due to component being wrapped in a withTheme()\n disabled={disabled}\n pointerEvents=\"none\"\n // @ts-expect-error\n style={stylesWithoutMargin}\n />\n </Touchable>\n {pickerVisible && (\n <Portal>\n <View style={[styles.picker, { backgroundColor: colors.divider }]}>\n <SafeAreaView style={styles.pickerContainer}>\n <Button\n Icon={Icon}\n type=\"text\"\n onPress={toggleVisibility}\n style={styles.closeButton}\n >\n Close\n </Button>\n <NativePicker\n style={{ backgroundColor: \"white\" }}\n selectedValue={selectedValue}\n onValueChange={onValueChange}\n >\n {options.map((o: any) => (\n <NativePicker.Item\n label={o.label}\n value={o.value}\n key={o.value}\n />\n ))}\n </NativePicker>\n </SafeAreaView>\n </View>\n </Portal>\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n picker: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n flexDirection: \"row\",\n justifyContent: \"center\",\n },\n pickerContainer: {\n backgroundColor: \"white\",\n flexDirection: \"column\",\n width: \"100%\",\n },\n closeButton: {\n alignSelf: \"flex-end\",\n },\n});\n\nexport default withTheme(Picker);\n"]}
@@ -9,6 +9,8 @@ var React = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _reactNative = require("react-native");
11
11
 
12
+ var _picker = require("@react-native-picker/picker");
13
+
12
14
  var _lodash = _interopRequireDefault(require("lodash.omit"));
13
15
 
14
16
  var _theming = require("../../theming");
@@ -84,15 +86,15 @@ const Picker = ({
84
86
  };
85
87
 
86
88
  const stylesWithoutMargin = style && (0, _lodash.default)(_reactNative.StyleSheet.flatten(style), ["margin", "marginTop", "marginRight", "marginBottom", "marginLeft"]);
87
- const selectedLabel = selectedValue && ((_options$find$label = (_options$find = options.find(opt => opt.value === selectedValue)) === null || _options$find === void 0 ? void 0 : _options$find.label) !== null && _options$find$label !== void 0 ? _options$find$label : selectedValue);
89
+ const selectedLabel = selectedValue && ((_options$find$label = (_options$find = options.find(o => o.value === selectedValue)) === null || _options$find === void 0 ? void 0 : _options$find.label) !== null && _options$find$label !== void 0 ? _options$find$label : selectedValue);
88
90
  return /*#__PURE__*/React.createElement(_Touchable.default, {
89
91
  disabled: disabled,
90
92
  onPress: toggleFocus,
91
93
  style: [styles.container, viewStyles]
92
- }, /*#__PURE__*/React.createElement(_reactNative.View, null, /*#__PURE__*/React.createElement(_reactNative.Picker, {
94
+ }, /*#__PURE__*/React.createElement(_reactNative.View, null, /*#__PURE__*/React.createElement(_picker.Picker, {
93
95
  enabled: !disabled,
94
96
  selectedValue: selectedValue,
95
- onValueChange: (value, index) => onValueChange(value.toString(), index),
97
+ onValueChange: onValueChange,
96
98
  style: {
97
99
  flex: 1,
98
100
  opacity: 0,
@@ -100,9 +102,10 @@ const Picker = ({
100
102
  top: 0,
101
103
  left: 0,
102
104
  right: 0,
103
- bottom: 0
105
+ bottom: 0,
106
+ width: "100%"
104
107
  }
105
- }, options.map(o => /*#__PURE__*/React.createElement(_reactNative.Picker.Item, {
108
+ }, options.map(o => /*#__PURE__*/React.createElement(_picker.Picker.Item, {
106
109
  label: o.label,
107
110
  value: o.value,
108
111
  key: o.value
@@ -1 +1 @@
1
- {"version":3,"sources":["PickerComponent.web.tsx"],"names":["Picker","style","options","placeholder","selectedValue","disabled","onValueChange","onValueChangeOverride","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","React","useRef","undefined","itemValue","itemIndex","toggleFocus","current","stylesWithoutMargin","StyleSheet","flatten","selectedLabel","find","opt","value","label","styles","container","index","toString","flex","opacity","position","top","left","right","bottom","map","o","create","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet, Picker as NativePicker } from \"react-native\";\nimport omit from \"lodash.omit\";\nimport { withTheme } from \"../../theming\";\nimport { extractStyles } from \"../../utilities\";\n\nimport TextField from \"../TextField\";\nimport Touchable from \"../Touchable\";\nimport { PickerComponentProps } from \"./PickerTypes\";\n\nconst Picker: React.FC<PickerComponentProps> = ({\n style,\n options,\n placeholder,\n selectedValue,\n disabled = false,\n onValueChange: onValueChangeOverride = () => {},\n ...props\n}) => {\n const {\n viewStyles: {\n borderRadius, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderTopWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderRightWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderBottomWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderLeftWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n backgroundColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n padding, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingTop, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingRight, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingBottom, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingLeft, // eslint-disable-line @typescript-eslint/no-unused-vars\n ...viewStyles\n },\n } = extractStyles(style);\n\n const textField = React.useRef<typeof TextField | undefined>(undefined);\n\n const onValueChange = (itemValue: string, itemIndex: number) => {\n toggleFocus();\n onValueChangeOverride(itemValue, itemIndex);\n };\n\n const toggleFocus = () => {\n if (!disabled) {\n // @ts-ignore\n textField.current.toggleFocus(); // cannot determine if method exists due to component being wrapped in a withTheme()\n }\n };\n\n const stylesWithoutMargin =\n style &&\n omit(StyleSheet.flatten(style), [\n \"margin\",\n \"marginTop\",\n \"marginRight\",\n \"marginBottom\",\n \"marginLeft\",\n ]);\n\n const selectedLabel =\n selectedValue &&\n (options.find((opt) => opt.value === selectedValue)?.label ??\n selectedValue);\n\n return (\n <Touchable\n disabled={disabled}\n onPress={toggleFocus}\n style={[styles.container, viewStyles]}\n >\n <View>\n <NativePicker\n enabled={!disabled}\n selectedValue={selectedValue}\n onValueChange={(value, index) =>\n onValueChange(value.toString(), index)\n }\n style={{\n flex: 1,\n opacity: 0,\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n }}\n >\n {options.map((o) => (\n <NativePicker.Item label={o.label} value={o.value} key={o.value} />\n ))}\n </NativePicker>\n <View pointerEvents=\"none\">\n <TextField\n {...props}\n value={selectedLabel}\n placeholder={placeholder}\n // @ts-ignore\n ref={textField} // cannot determine if ref is of correct type due to component being wrapped in a withTheme()\n disabled={disabled}\n // @ts-expect-error\n style={stylesWithoutMargin}\n />\n </View>\n </View>\n </Touchable>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n});\n\nexport default withTheme(Picker);\n"]}
1
+ {"version":3,"sources":["PickerComponent.web.tsx"],"names":["Picker","style","options","placeholder","selectedValue","disabled","onValueChange","onValueChangeOverride","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","React","useRef","undefined","itemValue","itemIndex","toggleFocus","current","stylesWithoutMargin","StyleSheet","flatten","selectedLabel","find","o","value","label","styles","container","flex","opacity","position","top","left","right","bottom","width","map","create","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { View, StyleSheet } from \"react-native\";\nimport { Picker as NativePicker } from \"@react-native-picker/picker\";\nimport omit from \"lodash.omit\";\nimport { withTheme } from \"../../theming\";\nimport { extractStyles } from \"../../utilities\";\n\nimport TextField from \"../TextField\";\nimport Touchable from \"../Touchable\";\nimport { PickerComponentProps } from \"./PickerTypes\";\n\nconst Picker: React.FC<PickerComponentProps> = ({\n style,\n options,\n placeholder,\n selectedValue,\n disabled = false,\n onValueChange: onValueChangeOverride = () => {},\n ...props\n}) => {\n const {\n viewStyles: {\n borderRadius, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderTopWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderRightWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderBottomWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderLeftWidth, // eslint-disable-line @typescript-eslint/no-unused-vars\n borderColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n backgroundColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n padding, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingTop, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingRight, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingBottom, // eslint-disable-line @typescript-eslint/no-unused-vars\n paddingLeft, // eslint-disable-line @typescript-eslint/no-unused-vars\n ...viewStyles\n },\n } = extractStyles(style);\n\n const textField = React.useRef<typeof TextField | undefined>(undefined);\n\n const onValueChange = (itemValue: string, itemIndex: number) => {\n toggleFocus();\n onValueChangeOverride(itemValue, itemIndex);\n };\n\n const toggleFocus = () => {\n if (!disabled) {\n // @ts-ignore\n textField.current.toggleFocus(); // cannot determine if method exists due to component being wrapped in a withTheme()\n }\n };\n\n const stylesWithoutMargin =\n style &&\n omit(StyleSheet.flatten(style), [\n \"margin\",\n \"marginTop\",\n \"marginRight\",\n \"marginBottom\",\n \"marginLeft\",\n ]);\n\n const selectedLabel =\n selectedValue &&\n (options.find((o) => o.value === selectedValue)?.label ?? selectedValue);\n\n return (\n <Touchable\n disabled={disabled}\n onPress={toggleFocus}\n style={[styles.container, viewStyles]}\n >\n <View>\n <NativePicker\n enabled={!disabled}\n selectedValue={selectedValue}\n onValueChange={onValueChange}\n style={{\n flex: 1,\n opacity: 0,\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n width: \"100%\",\n }}\n >\n {options.map((o) => (\n <NativePicker.Item label={o.label} value={o.value} key={o.value} />\n ))}\n </NativePicker>\n <View pointerEvents=\"none\">\n <TextField\n {...props}\n value={selectedLabel}\n placeholder={placeholder}\n // @ts-ignore\n ref={textField} // cannot determine if ref is of correct type due to component being wrapped in a withTheme()\n disabled={disabled}\n // @ts-expect-error\n style={stylesWithoutMargin}\n />\n </View>\n </View>\n </Touchable>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n alignSelf: \"stretch\",\n },\n});\n\nexport default withTheme(Picker);\n"]}