@draftbit/core 46.0.1-eb73d2.0 → 46.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/Carousel.js +1 -3
- package/lib/commonjs/components/Carousel.js.map +1 -1
- package/lib/commonjs/components/Checkbox/Checkbox.js.map +1 -1
- package/lib/commonjs/components/DatePicker/DatePickerComponent.web.js +3 -3
- package/lib/commonjs/components/DatePicker/DatePickerComponent.web.js.map +1 -1
- package/lib/commonjs/components/DeprecatedButton.js +4 -20
- package/lib/commonjs/components/DeprecatedButton.js.map +1 -1
- package/lib/commonjs/components/DeprecatedCardWrapper.js +2 -14
- package/lib/commonjs/components/DeprecatedCardWrapper.js.map +1 -1
- package/lib/commonjs/components/Justification.js +0 -3
- package/lib/commonjs/components/Picker/Picker.js +3 -3
- package/lib/commonjs/components/Picker/Picker.js.map +1 -1
- package/lib/commonjs/components/Picker/PickerComponent.android.js +2 -2
- package/lib/commonjs/components/Picker/PickerComponent.android.js.map +1 -1
- package/lib/commonjs/components/Picker/PickerComponent.ios.js +2 -2
- package/lib/commonjs/components/Picker/PickerComponent.ios.js.map +1 -1
- package/lib/commonjs/components/Picker/PickerComponent.web.js +2 -2
- package/lib/commonjs/components/Picker/PickerComponent.web.js.map +1 -1
- package/lib/commonjs/components/RadioButton/RadioButton.js +1 -1
- package/lib/commonjs/components/RadioButton/RadioButton.js.map +1 -1
- package/lib/commonjs/components/RadioButton/RadioButtonRow.js +1 -1
- package/lib/commonjs/components/RadioButton/RadioButtonRow.js.map +1 -1
- package/lib/commonjs/components/ResizeMode.js +0 -3
- package/lib/commonjs/components/Stepper.js +1 -1
- package/lib/commonjs/components/Stepper.js.map +1 -1
- package/lib/commonjs/mappings/KeyboardAvoidingView.js +2 -2
- package/lib/commonjs/mappings/KeyboardAvoidingView.js.map +1 -1
- package/lib/commonjs/mappings/RadioButtonGroup.js.map +1 -1
- package/lib/commonjs/mappings/RadioButtonRow.js.map +1 -1
- package/lib/module/components/Button.js +11 -32
- package/lib/module/components/Button.js.map +1 -1
- package/lib/module/components/Card.js.map +1 -1
- package/lib/module/components/Carousel.js +1 -3
- package/lib/module/components/Carousel.js.map +1 -1
- package/lib/module/components/Checkbox/Checkbox.js.map +1 -1
- package/lib/module/components/Checkbox/index.js.map +1 -1
- package/lib/module/components/CircleImage.js +2 -16
- package/lib/module/components/CircleImage.js.map +1 -1
- package/lib/module/components/DatePicker/DatePickerComponent.web.js +3 -3
- package/lib/module/components/DatePicker/DatePickerComponent.web.js.map +1 -1
- package/lib/module/components/DatePicker/DatePickerComponentType.js.map +1 -1
- package/lib/module/components/DeprecatedFAB.js +4 -20
- package/lib/module/components/DeprecatedFAB.js.map +1 -1
- package/lib/module/components/Justification.js +1 -1
- package/lib/module/components/NumberInput.js +2 -13
- package/lib/module/components/NumberInput.js.map +1 -1
- package/lib/module/components/Picker/Picker.js +3 -3
- package/lib/module/components/Picker/Picker.js.map +1 -1
- package/lib/module/components/Picker/PickerComponent.android.js +2 -2
- package/lib/module/components/Picker/PickerComponent.android.js.map +1 -1
- package/lib/module/components/Picker/PickerComponent.ios.js +2 -2
- package/lib/module/components/Picker/PickerComponent.ios.js.map +1 -1
- package/lib/module/components/Picker/PickerComponent.web.js +2 -2
- package/lib/module/components/Picker/PickerComponent.web.js.map +1 -1
- package/lib/module/components/Portal/PortalManager.js +1 -1
- package/lib/module/components/Portal/PortalManager.js.map +1 -1
- package/lib/module/components/RadioButton/RadioButton.js +1 -1
- package/lib/module/components/RadioButton/RadioButton.js.map +1 -1
- package/lib/module/components/RadioButton/RadioButtonGroup.js +4 -16
- package/lib/module/components/RadioButton/RadioButtonGroup.js.map +1 -1
- package/lib/module/components/RadioButton/RadioButtonRow.js +7 -24
- package/lib/module/components/RadioButton/RadioButtonRow.js.map +1 -1
- package/lib/module/components/ResizeMode.js +1 -1
- package/lib/module/components/ScreenContainer.js +5 -21
- package/lib/module/components/ScreenContainer.js.map +1 -1
- package/lib/module/components/Stepper.js +1 -1
- package/lib/module/components/Stepper.js.map +1 -1
- package/lib/module/mappings/KeyboardAvoidingView.js +2 -2
- package/lib/module/mappings/KeyboardAvoidingView.js.map +1 -1
- package/package.json +2 -2
- package/src/components/Checkbox/Checkbox.tsx +76 -77
- package/src/mappings/KeyboardAvoidingView.ts +2 -2
- package/src/Provider.js +0 -9
- package/src/components/Accordion/AccordionGroup.js +0 -44
- package/src/components/Accordion/AccordionItem.js +0 -32
- package/src/components/Accordion/index.js +0 -2
- package/src/components/ActionSheet/ActionSheet.js +0 -45
- package/src/components/ActionSheet/ActionSheetCancel.js +0 -6
- package/src/components/ActionSheet/ActionSheetItem.js +0 -30
- package/src/components/ActionSheet/index.js +0 -3
- package/src/components/AnimatedCircularProgress.js +0 -43
- package/src/components/AspectRatio.js +0 -18
- package/src/components/AvatarEdit.js +0 -30
- package/src/components/Banner.js +0 -109
- package/src/components/Button.js +0 -112
- package/src/components/Card.js +0 -57
- package/src/components/CardBlock.js +0 -54
- package/src/components/CardContainer.js +0 -69
- package/src/components/CardContainerRating.js +0 -79
- package/src/components/CardContainerShortImage.js +0 -33
- package/src/components/CardInline.js +0 -36
- package/src/components/Carousel.js +0 -66
- package/src/components/Checkbox/Checkbox.js +0 -63
- package/src/components/Checkbox/CheckboxGroup.js +0 -21
- package/src/components/Checkbox/CheckboxGroupRow.js +0 -77
- package/src/components/Checkbox/CheckboxRow.js +0 -78
- package/src/components/Checkbox/context.js +0 -14
- package/src/components/Checkbox/index.js +0 -3
- package/src/components/CircleImage.js +0 -8
- package/src/components/CircularProgress.js +0 -78
- package/src/components/Config.js +0 -63
- package/src/components/Container.js +0 -43
- package/src/components/DatePicker/DatePicker.js +0 -368
- package/src/components/DatePicker/DatePickerComponent.js +0 -13
- package/src/components/DatePicker/DatePickerComponent.web.js +0 -30
- package/src/components/DatePicker/DatePickerComponentType.js +0 -1
- package/src/components/DeprecatedButton.js +0 -95
- package/src/components/DeprecatedCardWrapper.js +0 -18
- package/src/components/DeprecatedFAB.js +0 -115
- package/src/components/Divider.js +0 -13
- package/src/components/Elevation.js +0 -20
- package/src/components/FAB.js +0 -46
- package/src/components/FieldSearchBarFull.js +0 -53
- package/src/components/FormRow.js +0 -19
- package/src/components/Header.js +0 -44
- package/src/components/HeaderLarge.js +0 -7
- package/src/components/HeaderMedium.js +0 -7
- package/src/components/HeaderOverline.js +0 -7
- package/src/components/IconButton.js +0 -35
- package/src/components/Image.js +0 -47
- package/src/components/Justification.js +0 -1
- package/src/components/Layout.js +0 -50
- package/src/components/NumberInput.js +0 -49
- package/src/components/Picker/Picker.js +0 -266
- package/src/components/Picker/PickerComponent.android.js +0 -68
- package/src/components/Picker/PickerComponent.ios.js +0 -78
- package/src/components/Picker/PickerComponent.web.js +0 -69
- package/src/components/Picker/PickerTypes.js +0 -1
- package/src/components/Portal/Portal.js +0 -35
- package/src/components/Portal/PortalConsumer.js +0 -28
- package/src/components/Portal/PortalHost.js +0 -105
- package/src/components/Portal/PortalManager.js +0 -29
- package/src/components/ProgressBar.js +0 -118
- package/src/components/ProgressCircle.js +0 -13
- package/src/components/ProgressIndicator.js +0 -27
- package/src/components/RadioButton/RadioButton.js +0 -17
- package/src/components/RadioButton/RadioButtonFieldGroup.js +0 -17
- package/src/components/RadioButton/RadioButtonGroup.js +0 -43
- package/src/components/RadioButton/RadioButtonRow.js +0 -76
- package/src/components/RadioButton/context.js +0 -14
- package/src/components/RadioButton/index.js +0 -4
- package/src/components/ResizeMode.js +0 -1
- package/src/components/Row.js +0 -48
- package/src/components/RowBodyIcon.js +0 -8
- package/src/components/RowHeadlineImageCaption.js +0 -12
- package/src/components/RowHeadlineImageIcon.js +0 -14
- package/src/components/ScreenContainer.js +0 -34
- package/src/components/Slider.js +0 -63
- package/src/components/StarRating.js +0 -50
- package/src/components/StepIndicator.js +0 -346
- package/src/components/Stepper.js +0 -39
- package/src/components/Surface.js +0 -32
- package/src/components/Swiper/Swiper.js +0 -29
- package/src/components/Swiper/SwiperItem.js +0 -9
- package/src/components/Swiper/index.js +0 -2
- package/src/components/Switch.js +0 -56
- package/src/components/Text.js +0 -28
- package/src/components/TextField.js +0 -420
- package/src/components/ToggleButton.js +0 -39
- package/src/components/Touchable.js +0 -12
- package/src/components/Touchable.web.js +0 -2
- package/src/components/Typography.js +0 -36
- package/src/components/useAuthState.js +0 -31
- package/src/constants.js +0 -10
- package/src/hooks.js +0 -12
- package/src/index.js +0 -52
- package/src/interfaces/Icon.js +0 -8
- package/src/mappings/Accordion.js +0 -41
- package/src/mappings/AccordionItem.js +0 -16
- package/src/mappings/ActionSheet.js +0 -13
- package/src/mappings/ActionSheetCancel.js +0 -19
- package/src/mappings/ActionSheetItem.js +0 -23
- package/src/mappings/ActivityIndicator.js +0 -53
- package/src/mappings/AudioPlayer.js +0 -20
- package/src/mappings/AvatarEdit.js +0 -37
- package/src/mappings/Banner.js +0 -32
- package/src/mappings/BlurView.js +0 -41
- package/src/mappings/Button.js +0 -56
- package/src/mappings/Card.js +0 -52
- package/src/mappings/CardBlock.js +0 -122
- package/src/mappings/CardContainer.js +0 -102
- package/src/mappings/CardContainerRating.js +0 -124
- package/src/mappings/CardContainerShortImage.js +0 -118
- package/src/mappings/CardInline.js +0 -51
- package/src/mappings/Carousel.js +0 -18
- package/src/mappings/Checkbox.js +0 -45
- package/src/mappings/CheckboxGroup.js +0 -25
- package/src/mappings/CheckboxRow.js +0 -56
- package/src/mappings/CircleImage.js +0 -24
- package/src/mappings/Container.js +0 -29
- package/src/mappings/CustomCode.js +0 -8
- package/src/mappings/DatePicker.js +0 -147
- package/src/mappings/Divider.js +0 -26
- package/src/mappings/FAB.js +0 -36
- package/src/mappings/Fetch.js +0 -12
- package/src/mappings/FieldSearchBarFull.js +0 -49
- package/src/mappings/FlatList.js +0 -19
- package/src/mappings/HeaderLarge.js +0 -28
- package/src/mappings/HeaderMedium.js +0 -54
- package/src/mappings/HeaderOverline.js +0 -54
- package/src/mappings/Icon.js +0 -25
- package/src/mappings/IconButton.js +0 -30
- package/src/mappings/Image.js +0 -15
- package/src/mappings/ImageBackground.js +0 -28
- package/src/mappings/KeyboardAvoidingView.js +0 -40
- package/src/mappings/KeyboardAwareScrollView.js +0 -49
- package/src/mappings/Layout.js +0 -195
- package/src/mappings/LinearGradient.js +0 -77
- package/src/mappings/MapCallout.js +0 -21
- package/src/mappings/MapMarker.js +0 -47
- package/src/mappings/MapView.js +0 -138
- package/src/mappings/Modal.js +0 -41
- package/src/mappings/Picker.js +0 -139
- package/src/mappings/ProgressBar.js +0 -100
- package/src/mappings/ProgressCircle.js +0 -108
- package/src/mappings/ProgressIndicator.js +0 -180
- package/src/mappings/RadioButton.js +0 -50
- package/src/mappings/RadioButtonGroup.js +0 -16
- package/src/mappings/RadioButtonRow.js +0 -37
- package/src/mappings/RowBodyIcon.js +0 -75
- package/src/mappings/RowHeadlineImageCaption.js +0 -167
- package/src/mappings/RowHeadlineImageIcon.js +0 -99
- package/src/mappings/SafeAreaView.js +0 -33
- package/src/mappings/ScrollView.js +0 -30
- package/src/mappings/Slider.js +0 -59
- package/src/mappings/StarRating.js +0 -42
- package/src/mappings/Stepper.js +0 -28
- package/src/mappings/Surface.js +0 -13
- package/src/mappings/Swiper.js +0 -60
- package/src/mappings/SwiperItem.js +0 -8
- package/src/mappings/Switch.js +0 -75
- package/src/mappings/Text.js +0 -232
- package/src/mappings/TextArea.js +0 -52
- package/src/mappings/TextField.js +0 -158
- package/src/mappings/TextInput.js +0 -208
- package/src/mappings/ToggleButton.js +0 -45
- package/src/mappings/Touchable.js +0 -12
- package/src/mappings/Video.js +0 -74
- package/src/mappings/View.js +0 -206
- package/src/mappings/WebView.js +0 -18
- package/src/styles/DarkTheme.js +0 -26
- package/src/styles/DefaultTheme.js +0 -111
- package/src/styles/fonts.js +0 -62
- package/src/styles/overlay.js +0 -60
- package/src/styles/shadow.js +0 -51
- package/src/theming.js +0 -3
- package/src/utilities.js +0 -102
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
|
|
1
3
|
import * as React from "react";
|
|
2
4
|
import { Image } from "react-native";
|
|
3
5
|
import Config from "./Config";
|
|
@@ -10,22 +12,6 @@ const CircleImage = _ref => {
|
|
|
10
12
|
...props
|
|
11
13
|
} = _ref;
|
|
12
14
|
const borderRadius = size / 2;
|
|
13
|
-
return /*#__PURE__*/React.createElement(Image, {
|
|
14
|
-
style: [{
|
|
15
|
-
width: size,
|
|
16
|
-
height: size,
|
|
17
|
-
borderRadius
|
|
18
|
-
}, style],
|
|
19
|
-
source: typeof source === "string" ? {
|
|
20
|
-
uri: source
|
|
21
|
-
} : source,
|
|
22
|
-
resizeMode: "cover",
|
|
23
|
-
...props
|
|
24
|
-
});
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
export default CircleImage;
|
|
28
|
-
//# sourceMappingURL=CircleImage.js.map size / 2;
|
|
29
15
|
return /*#__PURE__*/React.createElement(Image, _extends({
|
|
30
16
|
style: [{
|
|
31
17
|
width: size,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Image","Config","CircleImage","source","placeholderImageURL","size","style","props","borderRadius","
|
|
1
|
+
{"version":3,"names":["React","Image","Config","CircleImage","source","placeholderImageURL","size","style","props","borderRadius","width","height","uri"],"sources":["CircleImage.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n Image,\n ImageSourcePropType,\n StyleProp,\n ImageStyle,\n} from \"react-native\";\nimport Config from \"./Config\";\ninterface Props {\n source?: string | ImageSourcePropType;\n size?: number;\n style?: StyleProp<ImageStyle>;\n}\n\nconst CircleImage: React.FC<React.PropsWithChildren<Props>> = ({\n source = Config.placeholderImageURL,\n size = 60,\n style,\n ...props\n}) => {\n const borderRadius = size / 2;\n\n return (\n <Image\n style={[{ width: size, height: size, borderRadius }, style]}\n source={typeof source === \"string\" ? { uri: source } : source}\n resizeMode=\"cover\"\n {...props}\n />\n );\n};\n\nexport default CircleImage;\n"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SACEC,KADF,QAKO,cALP;AAMA,OAAOC,MAAP,MAAmB,UAAnB;;AAOA,MAAMC,WAAqD,GAAG,QAKxD;EAAA,IALyD;IAC7DC,MAAM,GAAGF,MAAM,CAACG,mBAD6C;IAE7DC,IAAI,GAAG,EAFsD;IAG7DC,KAH6D;IAI7D,GAAGC;EAJ0D,CAKzD;EACJ,MAAMC,YAAY,GAAGH,IAAI,GAAG,CAA5B;EAEA,oBACE,oBAAC,KAAD;IACE,KAAK,EAAE,CAAC;MAAEI,KAAK,EAAEJ,IAAT;MAAeK,MAAM,EAAEL,IAAvB;MAA6BG;IAA7B,CAAD,EAA8CF,KAA9C,CADT;IAEE,MAAM,EAAE,OAAOH,MAAP,KAAkB,QAAlB,GAA6B;MAAEQ,GAAG,EAAER;IAAP,CAA7B,GAA+CA,MAFzD;IAGE,UAAU,EAAC;EAHb,GAIMI,KAJN,EADF;AAQD,CAhBD;;AAkBA,eAAeL,WAAf"}
|
|
@@ -6,7 +6,7 @@ import { withTheme } from "../../theming";
|
|
|
6
6
|
import Theme from "../../styles/DefaultTheme";
|
|
7
7
|
|
|
8
8
|
const DatePickerComponent = _ref => {
|
|
9
|
-
var _theme$colors
|
|
9
|
+
var _theme$colors, _theme$colors2;
|
|
10
10
|
|
|
11
11
|
let {
|
|
12
12
|
value,
|
|
@@ -19,10 +19,10 @@ const DatePickerComponent = _ref => {
|
|
|
19
19
|
const internalTheme = createMuiTheme({
|
|
20
20
|
palette: {
|
|
21
21
|
primary: {
|
|
22
|
-
main: (
|
|
22
|
+
main: (theme === null || theme === void 0 ? void 0 : (_theme$colors = theme.colors) === null || _theme$colors === void 0 ? void 0 : _theme$colors.primary) ?? Theme.colors.primary
|
|
23
23
|
},
|
|
24
24
|
secondary: {
|
|
25
|
-
main: (
|
|
25
|
+
main: (theme === null || theme === void 0 ? void 0 : (_theme$colors2 = theme.colors) === null || _theme$colors2 === void 0 ? void 0 : _theme$colors2.secondary) ?? Theme.colors.secondary
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","DateFnsUtils","MuiPickersUtilsProvider","DatePicker","TimePicker","DateTimePicker","createMuiTheme","ThemeProvider","withTheme","Theme","DatePickerComponent","value","onChange","mode","toggleVisibility","isVisible","theme","internalTheme","palette","primary","main","colors","secondary","Picker","d"],"sources":["DatePickerComponent.web.tsx"],"sourcesContent":["import React from \"react\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport {\n MuiPickersUtilsProvider,\n DatePicker,\n TimePicker,\n DateTimePicker,\n} from \"@material-ui/pickers\";\nimport { createMuiTheme, ThemeProvider } from \"@material-ui/core/styles\";\nimport { DatePickerComponentProps as Props } from \"./DatePickerComponentType\";\nimport { withTheme } from \"../../theming\";\nimport Theme from \"../../styles/DefaultTheme\";\n\nconst DatePickerComponent: React.FC<Props & { theme: typeof Theme }> = ({\n value,\n onChange,\n mode,\n toggleVisibility,\n isVisible,\n theme,\n}) => {\n const internalTheme = createMuiTheme({\n palette: {\n primary: {\n main: theme?.colors?.primary ?? Theme.colors.primary,\n },\n secondary: {\n main: theme?.colors?.secondary ?? Theme.colors.secondary,\n },\n },\n });\n\n const Picker =\n mode === \"date\"\n ? DatePicker\n : mode === \"time\"\n ? TimePicker\n : DateTimePicker;\n\n return (\n <MuiPickersUtilsProvider utils={DateFnsUtils}>\n <ThemeProvider theme={internalTheme}>\n <Picker\n value={value}\n open={isVisible}\n onChange={(d) => {\n toggleVisibility();\n onChange(null, d);\n }}\n onClose={() => toggleVisibility()}\n variant=\"dialog\"\n TextFieldComponent={() => null}\n />\n </ThemeProvider>\n </MuiPickersUtilsProvider>\n );\n};\n\nexport default withTheme(DatePickerComponent);\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,YAAP,MAAyB,mBAAzB;AACA,SACEC,uBADF,EAEEC,UAFF,EAGEC,UAHF,EAIEC,cAJF,QAKO,sBALP;AAMA,SAASC,cAAT,EAAyBC,aAAzB,QAA8C,0BAA9C;AAEA,SAASC,SAAT,QAA0B,eAA1B;AACA,OAAOC,KAAP,MAAkB,2BAAlB;;AAEA,MAAMC,mBAA8D,GAAG,QAOjE;EAAA;;EAAA,IAPkE;IACtEC,KADsE;IAEtEC,QAFsE;IAGtEC,IAHsE;IAItEC,gBAJsE;IAKtEC,SALsE;IAMtEC;EANsE,CAOlE;EACJ,MAAMC,aAAa,GAAGX,cAAc,CAAC;IACnCY,OAAO,EAAE;MACPC,OAAO,EAAE;QACPC,IAAI,
|
|
1
|
+
{"version":3,"names":["React","DateFnsUtils","MuiPickersUtilsProvider","DatePicker","TimePicker","DateTimePicker","createMuiTheme","ThemeProvider","withTheme","Theme","DatePickerComponent","value","onChange","mode","toggleVisibility","isVisible","theme","internalTheme","palette","primary","main","colors","secondary","Picker","d"],"sources":["DatePickerComponent.web.tsx"],"sourcesContent":["import React from \"react\";\nimport DateFnsUtils from \"@date-io/date-fns\";\nimport {\n MuiPickersUtilsProvider,\n DatePicker,\n TimePicker,\n DateTimePicker,\n} from \"@material-ui/pickers\";\nimport { createMuiTheme, ThemeProvider } from \"@material-ui/core/styles\";\nimport { DatePickerComponentProps as Props } from \"./DatePickerComponentType\";\nimport { withTheme } from \"../../theming\";\nimport Theme from \"../../styles/DefaultTheme\";\n\nconst DatePickerComponent: React.FC<Props & { theme: typeof Theme }> = ({\n value,\n onChange,\n mode,\n toggleVisibility,\n isVisible,\n theme,\n}) => {\n const internalTheme = createMuiTheme({\n palette: {\n primary: {\n main: theme?.colors?.primary ?? Theme.colors.primary,\n },\n secondary: {\n main: theme?.colors?.secondary ?? Theme.colors.secondary,\n },\n },\n });\n\n const Picker =\n mode === \"date\"\n ? DatePicker\n : mode === \"time\"\n ? TimePicker\n : DateTimePicker;\n\n return (\n <MuiPickersUtilsProvider utils={DateFnsUtils}>\n <ThemeProvider theme={internalTheme}>\n <Picker\n value={value}\n open={isVisible}\n onChange={(d) => {\n toggleVisibility();\n onChange(null, d);\n }}\n onClose={() => toggleVisibility()}\n variant=\"dialog\"\n TextFieldComponent={() => null}\n />\n </ThemeProvider>\n </MuiPickersUtilsProvider>\n );\n};\n\nexport default withTheme(DatePickerComponent);\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,YAAP,MAAyB,mBAAzB;AACA,SACEC,uBADF,EAEEC,UAFF,EAGEC,UAHF,EAIEC,cAJF,QAKO,sBALP;AAMA,SAASC,cAAT,EAAyBC,aAAzB,QAA8C,0BAA9C;AAEA,SAASC,SAAT,QAA0B,eAA1B;AACA,OAAOC,KAAP,MAAkB,2BAAlB;;AAEA,MAAMC,mBAA8D,GAAG,QAOjE;EAAA;;EAAA,IAPkE;IACtEC,KADsE;IAEtEC,QAFsE;IAGtEC,IAHsE;IAItEC,gBAJsE;IAKtEC,SALsE;IAMtEC;EANsE,CAOlE;EACJ,MAAMC,aAAa,GAAGX,cAAc,CAAC;IACnCY,OAAO,EAAE;MACPC,OAAO,EAAE;QACPC,IAAI,EAAE,CAAAJ,KAAK,SAAL,IAAAA,KAAK,WAAL,6BAAAA,KAAK,CAAEK,MAAP,gEAAeF,OAAf,KAA0BV,KAAK,CAACY,MAAN,CAAaF;MADtC,CADF;MAIPG,SAAS,EAAE;QACTF,IAAI,EAAE,CAAAJ,KAAK,SAAL,IAAAA,KAAK,WAAL,8BAAAA,KAAK,CAAEK,MAAP,kEAAeC,SAAf,KAA4Bb,KAAK,CAACY,MAAN,CAAaC;MADtC;IAJJ;EAD0B,CAAD,CAApC;EAWA,MAAMC,MAAM,GACVV,IAAI,KAAK,MAAT,GACIV,UADJ,GAEIU,IAAI,KAAK,MAAT,GACAT,UADA,GAEAC,cALN;EAOA,oBACE,oBAAC,uBAAD;IAAyB,KAAK,EAAEJ;EAAhC,gBACE,oBAAC,aAAD;IAAe,KAAK,EAAEgB;EAAtB,gBACE,oBAAC,MAAD;IACE,KAAK,EAAEN,KADT;IAEE,IAAI,EAAEI,SAFR;IAGE,QAAQ,EAAGS,CAAD,IAAO;MACfV,gBAAgB;MAChBF,QAAQ,CAAC,IAAD,EAAOY,CAAP,CAAR;IACD,CANH;IAOE,OAAO,EAAE,MAAMV,gBAAgB,EAPjC;IAQE,OAAO,EAAC,QARV;IASE,kBAAkB,EAAE,MAAM;EAT5B,EADF,CADF,CADF;AAiBD,CA3CD;;AA6CA,eAAeN,SAAS,CAACE,mBAAD,CAAxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["DatePickerComponentType.
|
|
1
|
+
{"version":3,"names":[],"sources":["DatePickerComponentType.ts"],"sourcesContent":["import theme from \"../../styles/DefaultTheme\";\n\nexport interface DatePickerComponentProps {\n value: Date;\n onChange: (e: any, data?: any) => void;\n mode: \"date\" | \"time\" | \"datetime\";\n toggleVisibility: () => void;\n isVisible?: boolean;\n theme?: typeof theme;\n}\n"],"mappings":""}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
|
|
1
3
|
import * as React from "react";
|
|
2
4
|
import { ActivityIndicator, View, StyleSheet } from "react-native";
|
|
3
5
|
import color from "color";
|
|
@@ -108,7 +110,7 @@ const FAB = _ref => {
|
|
|
108
110
|
style: [{
|
|
109
111
|
elevation
|
|
110
112
|
}, style]
|
|
111
|
-
}, /*#__PURE__*/React.createElement(Touchable, {
|
|
113
|
+
}, /*#__PURE__*/React.createElement(Touchable, _extends({}, rest, {
|
|
112
114
|
onPress: onPress,
|
|
113
115
|
accessibilityState: {
|
|
114
116
|
disabled
|
|
@@ -116,7 +118,7 @@ const FAB = _ref => {
|
|
|
116
118
|
accessibilityRole: "button",
|
|
117
119
|
disabled: disabled || loading,
|
|
118
120
|
style: buttonStyles
|
|
119
|
-
}, /*#__PURE__*/React.createElement(View, {
|
|
121
|
+
}), /*#__PURE__*/React.createElement(View, {
|
|
120
122
|
style: styles.content
|
|
121
123
|
}, icon && loading !== true ? /*#__PURE__*/React.createElement(View, {
|
|
122
124
|
style: iconStyle
|
|
@@ -157,22 +159,4 @@ const styles = StyleSheet.create({
|
|
|
157
159
|
}
|
|
158
160
|
});
|
|
159
161
|
export default withTheme(FAB);
|
|
160
|
-
//# sourceMappingURL=DeprecatedFAB.js.mapxDirection: "row",
|
|
161
|
-
alignItems: "center",
|
|
162
|
-
justifyContent: "center"
|
|
163
|
-
},
|
|
164
|
-
icon: {
|
|
165
|
-
alignItems: "center",
|
|
166
|
-
justifyContent: "center",
|
|
167
|
-
width: Config.buttonIconSize
|
|
168
|
-
},
|
|
169
|
-
fixed: {
|
|
170
|
-
left: 0,
|
|
171
|
-
right: 0,
|
|
172
|
-
bottom: 0,
|
|
173
|
-
height: 64,
|
|
174
|
-
borderRadius: 0
|
|
175
|
-
}
|
|
176
|
-
});
|
|
177
|
-
export default withTheme(FAB);
|
|
178
162
|
//# sourceMappingURL=DeprecatedFAB.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ActivityIndicator","View","StyleSheet","color","Config","Text","Touchable","Elevation","withTheme","FAB","Icon","icon","disabled","type","loading","colorOverride","label","onPress","elevation","style","theme","colors","disabledOpacity","roundness","typography","rest","backgroundColor","borderColor","textColor","borderWidth","buttonColor","primary","surface","alpha","rgb","string","hairlineWidth","buttonStyle","borderRadius","alignItems","justifyContent","buttonStyles","styles","button","contentStyle","content","textStyle","textAlign","iconStyle","width","buttonIconSize","FABSize","height","FABBorderRadius","push","marginLeft","marginRight","margin","FABFixedHeight","alignSelf","createElement","accessibilityState","accessibilityRole","name","size","numberOfLines","create","borderStyle","flexDirection","fixed","left","right","bottom"],"sources":["DeprecatedFAB.js"],"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"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","ActivityIndicator","View","StyleSheet","color","Config","Text","Touchable","Elevation","withTheme","FAB","Icon","icon","disabled","type","loading","colorOverride","label","onPress","elevation","style","theme","colors","disabledOpacity","roundness","typography","rest","backgroundColor","borderColor","textColor","borderWidth","buttonColor","primary","surface","alpha","rgb","string","hairlineWidth","buttonStyle","borderRadius","alignItems","justifyContent","buttonStyles","styles","button","contentStyle","content","textStyle","textAlign","iconStyle","width","buttonIconSize","FABSize","height","FABBorderRadius","push","marginLeft","marginRight","margin","FABFixedHeight","alignSelf","create","borderStyle","flexDirection","fixed","left","right","bottom"],"sources":["DeprecatedFAB.tsx"],"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<React.PropsWithChildren<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"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
//# sourceMappingURL=Justification.js.
|
|
2
|
+
//# sourceMappingURL=Justification.js.map
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
|
|
1
3
|
import React, { useEffect, useState } from "react";
|
|
2
4
|
import { TextInput } from "react-native";
|
|
3
5
|
import { isString, isNumber, isNaN } from "lodash";
|
|
@@ -54,19 +56,6 @@ const NumberInput = _ref => {
|
|
|
54
56
|
handleChangeText(nextStringNumberValue);
|
|
55
57
|
} // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
56
58
|
|
|
57
|
-
}, [value]);
|
|
58
|
-
return /*#__PURE__*/React.createElement(TextInput, {
|
|
59
|
-
keyboardType: "numeric",
|
|
60
|
-
value: currentStringNumberValue,
|
|
61
|
-
onChangeText: handleChangeText,
|
|
62
|
-
...props
|
|
63
|
-
});
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
export default NumberInput;
|
|
67
|
-
//# sourceMappingURL=NumberInput.js.mapngNumberValue);
|
|
68
|
-
} // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
69
|
-
|
|
70
59
|
}, [value]);
|
|
71
60
|
return /*#__PURE__*/React.createElement(TextInput, _extends({
|
|
72
61
|
keyboardType: "numeric",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useState","TextInput","isString","isNumber","isNaN","NumberInput","onChangeText","value","defaultValue","props","currentStringNumberValue","setCurrentStringNumberValue","formatValueToStringNumber","valueToFormat","test","slice","toString","defaultStringNumberValue","handleChangeText","newValue","newStringNumberValue","number","parseFloat","nextStringNumberValue"
|
|
1
|
+
{"version":3,"names":["React","useEffect","useState","TextInput","isString","isNumber","isNaN","NumberInput","onChangeText","value","defaultValue","props","currentStringNumberValue","setCurrentStringNumberValue","formatValueToStringNumber","valueToFormat","test","slice","toString","defaultStringNumberValue","handleChangeText","newValue","newStringNumberValue","number","parseFloat","nextStringNumberValue"],"sources":["NumberInput.tsx"],"sourcesContent":["import React, { FC, useEffect, useState } from \"react\";\nimport { TextInput } from \"react-native\";\nimport { isString, isNumber, isNaN } from \"lodash\";\n\ninterface Props {\n value?: number | string;\n defaultValue?: number | string;\n onChangeText?: (value?: number) => void;\n}\n\nconst NumberInput: FC<Props> = ({\n onChangeText,\n value,\n defaultValue,\n ...props\n}) => {\n const [currentStringNumberValue, setCurrentStringNumberValue] = useState(\"0\");\n\n const formatValueToStringNumber = (valueToFormat?: number | string) => {\n if (valueToFormat != null) {\n if (isString(valueToFormat) && valueToFormat !== \"\") {\n if (/^0[1-9]$/.test(valueToFormat)) {\n return valueToFormat.slice(1);\n } else if (/^[+-]?([0-9]+\\.?[0-9]*|\\.[0-9]+)$/.test(valueToFormat)) {\n return valueToFormat;\n } else {\n return currentStringNumberValue;\n }\n } else if (isNumber(valueToFormat) && !isNaN(valueToFormat)) {\n return valueToFormat.toString();\n }\n }\n\n return \"0\";\n };\n\n // set currentStringNumberValue as defaultValue prop if there is a differnce on first render only\n useEffect(() => {\n const defaultStringNumberValue = formatValueToStringNumber(defaultValue);\n\n if (currentStringNumberValue !== defaultStringNumberValue) {\n setCurrentStringNumberValue(defaultStringNumberValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleChangeText = (newValue: string) => {\n const newStringNumberValue = formatValueToStringNumber(newValue);\n const number = parseFloat(newStringNumberValue);\n\n setCurrentStringNumberValue(newStringNumberValue);\n onChangeText?.(number);\n };\n\n // run handleChangeText with value prop only when value prop changes (and first render to reset currentStringNumberValue)\n useEffect(() => {\n const nextStringNumberValue = formatValueToStringNumber(value);\n\n if (currentStringNumberValue !== nextStringNumberValue) {\n handleChangeText(nextStringNumberValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n return (\n <TextInput\n keyboardType=\"numeric\"\n value={currentStringNumberValue}\n onChangeText={handleChangeText}\n {...props}\n />\n );\n};\n\nexport default NumberInput;\n"],"mappings":";;AAAA,OAAOA,KAAP,IAAoBC,SAApB,EAA+BC,QAA/B,QAA+C,OAA/C;AACA,SAASC,SAAT,QAA0B,cAA1B;AACA,SAASC,QAAT,EAAmBC,QAAnB,EAA6BC,KAA7B,QAA0C,QAA1C;;AAQA,MAAMC,WAAsB,GAAG,QAKzB;EAAA,IAL0B;IAC9BC,YAD8B;IAE9BC,KAF8B;IAG9BC,YAH8B;IAI9B,GAAGC;EAJ2B,CAK1B;EACJ,MAAM,CAACC,wBAAD,EAA2BC,2BAA3B,IAA0DX,QAAQ,CAAC,GAAD,CAAxE;;EAEA,MAAMY,yBAAyB,GAAIC,aAAD,IAAqC;IACrE,IAAIA,aAAa,IAAI,IAArB,EAA2B;MACzB,IAAIX,QAAQ,CAACW,aAAD,CAAR,IAA2BA,aAAa,KAAK,EAAjD,EAAqD;QACnD,IAAI,WAAWC,IAAX,CAAgBD,aAAhB,CAAJ,EAAoC;UAClC,OAAOA,aAAa,CAACE,KAAd,CAAoB,CAApB,CAAP;QACD,CAFD,MAEO,IAAI,oCAAoCD,IAApC,CAAyCD,aAAzC,CAAJ,EAA6D;UAClE,OAAOA,aAAP;QACD,CAFM,MAEA;UACL,OAAOH,wBAAP;QACD;MACF,CARD,MAQO,IAAIP,QAAQ,CAACU,aAAD,CAAR,IAA2B,CAACT,KAAK,CAACS,aAAD,CAArC,EAAsD;QAC3D,OAAOA,aAAa,CAACG,QAAd,EAAP;MACD;IACF;;IAED,OAAO,GAAP;EACD,CAhBD,CAHI,CAqBJ;;;EACAjB,SAAS,CAAC,MAAM;IACd,MAAMkB,wBAAwB,GAAGL,yBAAyB,CAACJ,YAAD,CAA1D;;IAEA,IAAIE,wBAAwB,KAAKO,wBAAjC,EAA2D;MACzDN,2BAA2B,CAACM,wBAAD,CAA3B;IACD,CALa,CAMd;;EACD,CAPQ,EAON,EAPM,CAAT;;EASA,MAAMC,gBAAgB,GAAIC,QAAD,IAAsB;IAC7C,MAAMC,oBAAoB,GAAGR,yBAAyB,CAACO,QAAD,CAAtD;IACA,MAAME,MAAM,GAAGC,UAAU,CAACF,oBAAD,CAAzB;IAEAT,2BAA2B,CAACS,oBAAD,CAA3B;IACAd,YAAY,SAAZ,IAAAA,YAAY,WAAZ,YAAAA,YAAY,CAAGe,MAAH,CAAZ;EACD,CAND,CA/BI,CAuCJ;;;EACAtB,SAAS,CAAC,MAAM;IACd,MAAMwB,qBAAqB,GAAGX,yBAAyB,CAACL,KAAD,CAAvD;;IAEA,IAAIG,wBAAwB,KAAKa,qBAAjC,EAAwD;MACtDL,gBAAgB,CAACK,qBAAD,CAAhB;IACD,CALa,CAMd;;EACD,CAPQ,EAON,CAAChB,KAAD,CAPM,CAAT;EASA,oBACE,oBAAC,SAAD;IACE,YAAY,EAAC,SADf;IAEE,KAAK,EAAEG,wBAFT;IAGE,YAAY,EAAEQ;EAHhB,GAIMT,KAJN,EADF;AAQD,CA9DD;;AAgEA,eAAeJ,WAAf"}
|
|
@@ -43,7 +43,7 @@ const disabledColor = "rgb(240, 240, 240)";
|
|
|
43
43
|
const errorColor = "rgba(255, 69, 100, 1)";
|
|
44
44
|
|
|
45
45
|
const Picker = _ref => {
|
|
46
|
-
var _find
|
|
46
|
+
var _find;
|
|
47
47
|
|
|
48
48
|
let {
|
|
49
49
|
error,
|
|
@@ -136,7 +136,7 @@ const Picker = _ref => {
|
|
|
136
136
|
...extractedMarginStyles
|
|
137
137
|
};
|
|
138
138
|
const stylesWithoutBordersAndMargins = omit(viewStyles, [...borderStyleNames, ...marginStyleNames, ...additionalBorderStyles, ...additionalMarginStyles]);
|
|
139
|
-
const selectedLabel = internalValue && ((
|
|
139
|
+
const selectedLabel = internalValue && (((_find = pickerOptions.find(option => option.value === internalValue)) === null || _find === void 0 ? void 0 : _find.label) ?? internalValue);
|
|
140
140
|
const labelText = label ? /*#__PURE__*/React.createElement(Text, {
|
|
141
141
|
style: {
|
|
142
142
|
textAlign: textStyles.textAlign,
|
|
@@ -227,7 +227,7 @@ const Picker = _ref => {
|
|
|
227
227
|
style: styles.primaryTextContainer
|
|
228
228
|
}, labelText, /*#__PURE__*/React.createElement(Text, {
|
|
229
229
|
style: primaryTextStyle
|
|
230
|
-
}, String(selectedLabel
|
|
230
|
+
}, String(selectedLabel ?? placeholder))), rightIcon)), assistiveTextLabel), isIos && pickerVisible ? /*#__PURE__*/React.createElement(Portal, null, /*#__PURE__*/React.createElement(View, {
|
|
231
231
|
style: [styles.iosPicker, {
|
|
232
232
|
backgroundColor: colors.divider
|
|
233
233
|
}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","Text","Platform","Dimensions","omit","pickBy","identity","isObject","SafeAreaView","Picker","NativePicker","withTheme","Portal","Button","Touchable","extractStyles","extractBorderAndMarginStyles","borderStyleNames","marginStyleNames","normalizeOptions","options","length","map","option","label","String","value","Error","width","deviceWidth","height","deviceHeight","get","isIos","OS","unstyledColor","disabledColor","errorColor","error","onValueChange","defaultValue","Icon","style","placeholder","disabled","theme","assistiveText","iconColor","iconSize","leftIconMode","leftIconName","placeholderTextColor","rightIconName","type","androidPickerRef","useRef","undefined","internalValue","setInternalValue","useState","pickerVisible","setPickerVisible","togglePickerVisible","useEffect","current","focus","normalizedOptions","pickerOptions","colors","viewStyles","textStyles","additionalBorderStyles","additionalMarginStyles","borderStyles","extractedBorderStyles","marginStyles","extractedMarginStyles","borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius","borderTopWidth","borderRightWidth","borderLeftWidth","borderBottomWidth","borderColor","borderStyle","backgroundColor","stylesWithoutBordersAndMargins","selectedLabel","find","labelText","textAlign","color","fontSize","paddingBottom","leftIconOutset","leftIcon","marginRight","marginLeft","rightIcon","calculateLeftPadding","Math","abs","assistiveTextLabel","paddingLeft","paddingTop","primaryTextStyle","handleValueChange","newValue","itemIndex","styles","marginsContainer","touchableContainer","outsetContainer","insetContainer","primaryTextContainer","iosPicker","divider","iosSafeArea","iosButton","iosNativePicker","nonIosPicker","create","alignSelf","alignItems","maxWidth","flex","flexDirection","justifyContent","paddingRight","position","bottom","left","right","maxHeight","opacity","top"],"sources":["Picker.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n Text,\n Platform,\n ViewStyle,\n StyleProp,\n Dimensions,\n} from \"react-native\";\nimport { omit, pickBy, identity, isObject } from \"lodash\";\nimport { SafeAreaView } from \"react-native-safe-area-context\";\nimport { Picker as NativePicker } from \"@react-native-picker/picker\";\n\nimport { withTheme } from \"../../theming\";\nimport Portal from \"../Portal/Portal\";\nimport Button from \"../DeprecatedButton\";\nimport Touchable from \"../Touchable\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport {\n extractStyles,\n extractBorderAndMarginStyles,\n borderStyleNames,\n marginStyleNames,\n} from \"../../utilities\";\n\nexport interface PickerOption {\n value: string;\n label: string;\n}\n\nexport type PickerProps = {\n error?: any;\n placeholder?: string;\n disabled?: boolean;\n style?: StyleProp<ViewStyle> & { height?: number };\n value?: string;\n options: PickerOption[] | string[];\n onValueChange: (value: string, index: number) => void;\n defaultValue?: string;\n assistiveText?: string;\n label?: string;\n iconColor?: string;\n iconSize?: number;\n leftIconMode?: \"inset\" | \"outset\";\n leftIconName?: string;\n placeholderTextColor?: string;\n rightIconName?: string;\n type?: \"solid\" | \"underline\";\n theme: Theme;\n Icon: IconSlot[\"Icon\"];\n};\n\nfunction normalizeOptions(options: PickerProps[\"options\"]): PickerOption[] {\n if (options.length === 0) {\n return [];\n }\n\n if (typeof options[0] === (\"string\" || \"number\")) {\n return (options as string[]).map((option) => ({\n label: String(option),\n value: String(option),\n }));\n }\n\n if (\n isObject(options[0]) &&\n options[0].value !== null &&\n options[0].label !== null\n ) {\n return (options as PickerOption[]).map((option) => {\n return {\n label: String(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 { width: deviceWidth, height: deviceHeight } = Dimensions.get(\"screen\");\nconst isIos = Platform.OS === \"ios\";\nconst unstyledColor = \"rgba(165, 173, 183, 1)\";\nconst disabledColor = \"rgb(240, 240, 240)\";\nconst errorColor = \"rgba(255, 69, 100, 1)\";\n\nconst Picker: React.FC<PickerProps> = ({\n error,\n options = [],\n onValueChange,\n defaultValue,\n Icon,\n style,\n placeholder,\n value,\n disabled = false,\n theme,\n assistiveText,\n label,\n iconColor = unstyledColor,\n iconSize = 24,\n leftIconMode = \"inset\",\n leftIconName,\n placeholderTextColor = unstyledColor,\n rightIconName,\n type = \"solid\",\n}) => {\n const androidPickerRef = React.useRef<any | undefined>(undefined);\n\n const [internalValue, setInternalValue] = React.useState<string | undefined>(\n value || defaultValue\n );\n\n const [pickerVisible, setPickerVisible] = React.useState(false);\n\n const togglePickerVisible = () => {\n setPickerVisible(!pickerVisible);\n };\n\n React.useEffect(() => {\n if (value != null) {\n setInternalValue(value);\n }\n }, [value]);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\n\n React.useEffect(() => {\n if (pickerVisible && androidPickerRef.current) {\n androidPickerRef?.current?.focus();\n }\n }, [pickerVisible, androidPickerRef]);\n\n const normalizedOptions = normalizeOptions(options);\n\n const pickerOptions = placeholder\n ? [{ value: placeholder, label: placeholder }, ...normalizedOptions]\n : normalizedOptions;\n\n const { colors } = theme;\n\n const { viewStyles, textStyles } = extractStyles(style);\n\n const additionalBorderStyles = [\"backgroundColor\"];\n\n const additionalMarginStyles = [\n \"bottom\",\n \"height\",\n \"left\",\n \"maxHeight\",\n \"maxWidth\",\n \"minHeight\",\n \"minWidth\",\n \"overflow\",\n \"position\",\n \"right\",\n \"top\",\n \"width\",\n \"zIndex\",\n ];\n\n const {\n borderStyles: extractedBorderStyles,\n marginStyles: extractedMarginStyles,\n } = extractBorderAndMarginStyles(\n viewStyles,\n additionalBorderStyles,\n additionalMarginStyles\n );\n\n const borderStyles = {\n ...{\n ...(type === \"solid\"\n ? {\n borderTopLeftRadius: 5,\n borderTopRightRadius: 5,\n borderBottomRightRadius: 5,\n borderBottomLeftRadius: 5,\n borderTopWidth: 1,\n borderRightWidth: 1,\n borderLeftWidth: 1,\n }\n : {}),\n borderBottomWidth: 1,\n borderColor: unstyledColor,\n borderStyle: \"solid\",\n },\n ...extractedBorderStyles,\n ...(error ? { borderColor: errorColor } : {}),\n ...(disabled\n ? { borderColor: \"transparent\", backgroundColor: disabledColor }\n : {}),\n };\n\n const marginStyles = {\n height: 60,\n ...extractedMarginStyles,\n };\n\n const stylesWithoutBordersAndMargins = omit(viewStyles, [\n ...borderStyleNames,\n ...marginStyleNames,\n ...additionalBorderStyles,\n ...additionalMarginStyles,\n ]);\n\n const selectedLabel =\n internalValue &&\n ((pickerOptions as unknown as PickerOption[]).find(\n (option) => option.value === internalValue\n )?.label ??\n internalValue);\n\n const labelText = label ? (\n <Text\n style={{\n textAlign: textStyles.textAlign,\n color: unstyledColor,\n fontSize: 12,\n paddingBottom: 4,\n }}\n >\n {label}\n </Text>\n ) : null;\n\n const leftIconOutset = leftIconMode === \"outset\";\n\n const leftIcon = leftIconName ? (\n <Icon\n name={leftIconName}\n color={disabled ? unstyledColor : iconColor}\n size={iconSize}\n style={{\n marginRight: 4,\n marginLeft: 4,\n }}\n />\n ) : null;\n\n const rightIcon = rightIconName ? (\n <Icon\n name={rightIconName}\n color={disabled ? unstyledColor : iconColor}\n size={iconSize}\n style={{\n marginRight: -10,\n marginLeft: 8,\n }}\n />\n ) : null;\n\n const textAlign = textStyles?.textAlign;\n\n const calculateLeftPadding = () => {\n if (leftIconOutset) {\n if (textAlign === \"center\") {\n return iconSize - Math.abs(8 - iconSize);\n }\n\n return iconSize + 8;\n }\n\n return 0;\n };\n\n const assistiveTextLabel = assistiveText ? (\n <Text\n style={{\n textAlign,\n width: \"100%\",\n paddingLeft: calculateLeftPadding(),\n color: unstyledColor,\n fontSize: 12,\n paddingTop: 4,\n }}\n >\n {assistiveText}\n </Text>\n ) : null;\n\n const primaryTextStyle = {\n color: unstyledColor,\n fontSize: 14,\n ...pickBy(textStyles, identity),\n ...(placeholder === internalValue ? { color: placeholderTextColor } : {}),\n ...(disabled ? { color: unstyledColor } : {}),\n };\n\n const handleValueChange = (newValue: string, itemIndex: number) => {\n if (!placeholder || itemIndex > 0) {\n onValueChange?.(newValue, itemIndex);\n }\n setInternalValue(newValue);\n };\n\n return (\n /* marginsContainer */\n <View style={[styles.marginsContainer, marginStyles]}>\n {/* touchableContainer */}\n <Touchable\n disabled={disabled}\n onPress={togglePickerVisible}\n style={styles.touchableContainer}\n >\n {/* outsetContainer */}\n <View\n pointerEvents=\"none\"\n style={[\n styles.outsetContainer,\n stylesWithoutBordersAndMargins,\n !leftIconOutset ? (borderStyles as PickerProps[\"style\"]) : {},\n ]}\n >\n {leftIcon}\n\n {/* insetContainer */}\n <View\n style={[\n styles.insetContainer,\n leftIconOutset ? (borderStyles as PickerProps[\"style\"]) : {},\n ]}\n >\n {/* primaryTextContainer */}\n <View style={styles.primaryTextContainer}>\n {labelText}\n\n <Text style={primaryTextStyle}>\n {String(selectedLabel ?? placeholder)}\n </Text>\n </View>\n\n {rightIcon}\n </View>\n </View>\n {assistiveTextLabel}\n </Touchable>\n\n {/* iosPicker */}\n {isIos && pickerVisible ? (\n <Portal>\n <View\n style={[\n styles.iosPicker,\n {\n backgroundColor: colors.divider,\n },\n ]}\n >\n <SafeAreaView style={styles.iosSafeArea}>\n <Button\n Icon={Icon}\n type=\"text\"\n onPress={togglePickerVisible}\n style={styles.iosButton}\n >\n {\"Close\"}\n </Button>\n\n <NativePicker\n style={styles.iosNativePicker}\n selectedValue={internalValue}\n onValueChange={handleValueChange}\n >\n {(pickerOptions as unknown as PickerOption[]).map((option) => (\n <NativePicker.Item\n label={option.label}\n value={option.value}\n key={option.value}\n />\n ))}\n </NativePicker>\n </SafeAreaView>\n </View>\n </Portal>\n ) : null}\n\n {/* nonIosPicker */}\n {!isIos && pickerVisible ? (\n <NativePicker\n enabled={pickerVisible}\n selectedValue={internalValue}\n onValueChange={handleValueChange}\n style={styles.nonIosPicker}\n ref={androidPickerRef}\n onBlur={() => setPickerVisible(false)}\n >\n {(pickerOptions as unknown as PickerOption[]).map((option) => (\n <NativePicker.Item\n label={option.label}\n value={option.value}\n key={option.value}\n />\n ))}\n </NativePicker>\n ) : null}\n </View>\n );\n};\n\nexport default withTheme(Picker);\n\nconst styles = StyleSheet.create({\n marginsContainer: {\n alignSelf: \"stretch\",\n alignItems: \"center\",\n width: \"100%\",\n maxWidth: deviceWidth,\n },\n touchableContainer: {\n flex: 1,\n height: \"100%\",\n width: \"100%\",\n alignSelf: \"stretch\",\n alignItems: \"center\",\n },\n outsetContainer: {\n flex: 1,\n height: \"100%\",\n width: \"100%\",\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n },\n insetContainer: {\n flex: 1,\n height: \"100%\",\n width: \"100%\",\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n paddingLeft: 12,\n paddingRight: 12,\n },\n primaryTextContainer: {\n flex: 1,\n },\n iosPicker: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n flexDirection: \"row\",\n justifyContent: \"center\",\n width: \"100%\",\n maxWidth: deviceWidth,\n maxHeight: deviceHeight,\n },\n iosSafeArea: {\n backgroundColor: \"white\",\n flexDirection: \"column\",\n width: \"100%\",\n maxWidth: deviceWidth,\n },\n iosButton: {\n alignSelf: \"flex-end\",\n },\n iosNativePicker: {\n backgroundColor: \"white\",\n },\n nonIosPicker: {\n opacity: 0,\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n width: \"100%\",\n maxWidth: deviceWidth,\n maxHeight: deviceHeight,\n },\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","Text","Platform","Dimensions","omit","pickBy","identity","isObject","SafeAreaView","Picker","NativePicker","withTheme","Portal","Button","Touchable","extractStyles","extractBorderAndMarginStyles","borderStyleNames","marginStyleNames","normalizeOptions","options","length","map","option","label","String","value","Error","width","deviceWidth","height","deviceHeight","get","isIos","OS","unstyledColor","disabledColor","errorColor","error","onValueChange","defaultValue","Icon","style","placeholder","disabled","theme","assistiveText","iconColor","iconSize","leftIconMode","leftIconName","placeholderTextColor","rightIconName","type","androidPickerRef","useRef","undefined","internalValue","setInternalValue","useState","pickerVisible","setPickerVisible","togglePickerVisible","useEffect","current","focus","normalizedOptions","pickerOptions","colors","viewStyles","textStyles","additionalBorderStyles","additionalMarginStyles","borderStyles","extractedBorderStyles","marginStyles","extractedMarginStyles","borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius","borderTopWidth","borderRightWidth","borderLeftWidth","borderBottomWidth","borderColor","borderStyle","backgroundColor","stylesWithoutBordersAndMargins","selectedLabel","find","labelText","textAlign","color","fontSize","paddingBottom","leftIconOutset","leftIcon","marginRight","marginLeft","rightIcon","calculateLeftPadding","Math","abs","assistiveTextLabel","paddingLeft","paddingTop","primaryTextStyle","handleValueChange","newValue","itemIndex","styles","marginsContainer","touchableContainer","outsetContainer","insetContainer","primaryTextContainer","iosPicker","divider","iosSafeArea","iosButton","iosNativePicker","nonIosPicker","create","alignSelf","alignItems","maxWidth","flex","flexDirection","justifyContent","paddingRight","position","bottom","left","right","maxHeight","opacity","top"],"sources":["Picker.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n Text,\n Platform,\n ViewStyle,\n StyleProp,\n Dimensions,\n} from \"react-native\";\nimport { omit, pickBy, identity, isObject } from \"lodash\";\nimport { SafeAreaView } from \"react-native-safe-area-context\";\nimport { Picker as NativePicker } from \"@react-native-picker/picker\";\n\nimport { withTheme } from \"../../theming\";\nimport Portal from \"../Portal/Portal\";\nimport Button from \"../DeprecatedButton\";\nimport Touchable from \"../Touchable\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport {\n extractStyles,\n extractBorderAndMarginStyles,\n borderStyleNames,\n marginStyleNames,\n} from \"../../utilities\";\n\nexport interface PickerOption {\n value: string;\n label: string;\n}\n\nexport type PickerProps = {\n error?: any;\n placeholder?: string;\n disabled?: boolean;\n style?: StyleProp<ViewStyle> & { height?: number };\n value?: string;\n options: PickerOption[] | string[];\n onValueChange: (value: string, index: number) => void;\n defaultValue?: string;\n assistiveText?: string;\n label?: string;\n iconColor?: string;\n iconSize?: number;\n leftIconMode?: \"inset\" | \"outset\";\n leftIconName?: string;\n placeholderTextColor?: string;\n rightIconName?: string;\n type?: \"solid\" | \"underline\";\n theme: Theme;\n Icon: IconSlot[\"Icon\"];\n};\n\nfunction normalizeOptions(options: PickerProps[\"options\"]): PickerOption[] {\n if (options.length === 0) {\n return [];\n }\n\n if (typeof options[0] === (\"string\" || \"number\")) {\n return (options as string[]).map((option) => ({\n label: String(option),\n value: String(option),\n }));\n }\n\n if (\n isObject(options[0]) &&\n options[0].value !== null &&\n options[0].label !== null\n ) {\n return (options as PickerOption[]).map((option) => {\n return {\n label: String(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 { width: deviceWidth, height: deviceHeight } = Dimensions.get(\"screen\");\nconst isIos = Platform.OS === \"ios\";\nconst unstyledColor = \"rgba(165, 173, 183, 1)\";\nconst disabledColor = \"rgb(240, 240, 240)\";\nconst errorColor = \"rgba(255, 69, 100, 1)\";\n\nconst Picker: React.FC<PickerProps> = ({\n error,\n options = [],\n onValueChange,\n defaultValue,\n Icon,\n style,\n placeholder,\n value,\n disabled = false,\n theme,\n assistiveText,\n label,\n iconColor = unstyledColor,\n iconSize = 24,\n leftIconMode = \"inset\",\n leftIconName,\n placeholderTextColor = unstyledColor,\n rightIconName,\n type = \"solid\",\n}) => {\n const androidPickerRef = React.useRef<any | undefined>(undefined);\n\n const [internalValue, setInternalValue] = React.useState<string | undefined>(\n value || defaultValue\n );\n\n const [pickerVisible, setPickerVisible] = React.useState(false);\n\n const togglePickerVisible = () => {\n setPickerVisible(!pickerVisible);\n };\n\n React.useEffect(() => {\n if (value != null) {\n setInternalValue(value);\n }\n }, [value]);\n\n React.useEffect(() => {\n if (defaultValue != null) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\n\n React.useEffect(() => {\n if (pickerVisible && androidPickerRef.current) {\n androidPickerRef?.current?.focus();\n }\n }, [pickerVisible, androidPickerRef]);\n\n const normalizedOptions = normalizeOptions(options);\n\n const pickerOptions = placeholder\n ? [{ value: placeholder, label: placeholder }, ...normalizedOptions]\n : normalizedOptions;\n\n const { colors } = theme;\n\n const { viewStyles, textStyles } = extractStyles(style);\n\n const additionalBorderStyles = [\"backgroundColor\"];\n\n const additionalMarginStyles = [\n \"bottom\",\n \"height\",\n \"left\",\n \"maxHeight\",\n \"maxWidth\",\n \"minHeight\",\n \"minWidth\",\n \"overflow\",\n \"position\",\n \"right\",\n \"top\",\n \"width\",\n \"zIndex\",\n ];\n\n const {\n borderStyles: extractedBorderStyles,\n marginStyles: extractedMarginStyles,\n } = extractBorderAndMarginStyles(\n viewStyles,\n additionalBorderStyles,\n additionalMarginStyles\n );\n\n const borderStyles = {\n ...{\n ...(type === \"solid\"\n ? {\n borderTopLeftRadius: 5,\n borderTopRightRadius: 5,\n borderBottomRightRadius: 5,\n borderBottomLeftRadius: 5,\n borderTopWidth: 1,\n borderRightWidth: 1,\n borderLeftWidth: 1,\n }\n : {}),\n borderBottomWidth: 1,\n borderColor: unstyledColor,\n borderStyle: \"solid\",\n },\n ...extractedBorderStyles,\n ...(error ? { borderColor: errorColor } : {}),\n ...(disabled\n ? { borderColor: \"transparent\", backgroundColor: disabledColor }\n : {}),\n };\n\n const marginStyles = {\n height: 60,\n ...extractedMarginStyles,\n };\n\n const stylesWithoutBordersAndMargins = omit(viewStyles, [\n ...borderStyleNames,\n ...marginStyleNames,\n ...additionalBorderStyles,\n ...additionalMarginStyles,\n ]);\n\n const selectedLabel =\n internalValue &&\n ((pickerOptions as unknown as PickerOption[]).find(\n (option) => option.value === internalValue\n )?.label ??\n internalValue);\n\n const labelText = label ? (\n <Text\n style={{\n textAlign: textStyles.textAlign,\n color: unstyledColor,\n fontSize: 12,\n paddingBottom: 4,\n }}\n >\n {label}\n </Text>\n ) : null;\n\n const leftIconOutset = leftIconMode === \"outset\";\n\n const leftIcon = leftIconName ? (\n <Icon\n name={leftIconName}\n color={disabled ? unstyledColor : iconColor}\n size={iconSize}\n style={{\n marginRight: 4,\n marginLeft: 4,\n }}\n />\n ) : null;\n\n const rightIcon = rightIconName ? (\n <Icon\n name={rightIconName}\n color={disabled ? unstyledColor : iconColor}\n size={iconSize}\n style={{\n marginRight: -10,\n marginLeft: 8,\n }}\n />\n ) : null;\n\n const textAlign = textStyles?.textAlign;\n\n const calculateLeftPadding = () => {\n if (leftIconOutset) {\n if (textAlign === \"center\") {\n return iconSize - Math.abs(8 - iconSize);\n }\n\n return iconSize + 8;\n }\n\n return 0;\n };\n\n const assistiveTextLabel = assistiveText ? (\n <Text\n style={{\n textAlign,\n width: \"100%\",\n paddingLeft: calculateLeftPadding(),\n color: unstyledColor,\n fontSize: 12,\n paddingTop: 4,\n }}\n >\n {assistiveText}\n </Text>\n ) : null;\n\n const primaryTextStyle = {\n color: unstyledColor,\n fontSize: 14,\n ...pickBy(textStyles, identity),\n ...(placeholder === internalValue ? { color: placeholderTextColor } : {}),\n ...(disabled ? { color: unstyledColor } : {}),\n };\n\n const handleValueChange = (newValue: string, itemIndex: number) => {\n if (!placeholder || itemIndex > 0) {\n onValueChange?.(newValue, itemIndex);\n }\n setInternalValue(newValue);\n };\n\n return (\n /* marginsContainer */\n <View style={[styles.marginsContainer, marginStyles]}>\n {/* touchableContainer */}\n <Touchable\n disabled={disabled}\n onPress={togglePickerVisible}\n style={styles.touchableContainer}\n >\n {/* outsetContainer */}\n <View\n pointerEvents=\"none\"\n style={[\n styles.outsetContainer,\n stylesWithoutBordersAndMargins,\n !leftIconOutset ? (borderStyles as PickerProps[\"style\"]) : {},\n ]}\n >\n {leftIcon}\n\n {/* insetContainer */}\n <View\n style={[\n styles.insetContainer,\n leftIconOutset ? (borderStyles as PickerProps[\"style\"]) : {},\n ]}\n >\n {/* primaryTextContainer */}\n <View style={styles.primaryTextContainer}>\n {labelText}\n\n <Text style={primaryTextStyle}>\n {String(selectedLabel ?? placeholder)}\n </Text>\n </View>\n\n {rightIcon}\n </View>\n </View>\n {assistiveTextLabel}\n </Touchable>\n\n {/* iosPicker */}\n {isIos && pickerVisible ? (\n <Portal>\n <View\n style={[\n styles.iosPicker,\n {\n backgroundColor: colors.divider,\n },\n ]}\n >\n <SafeAreaView style={styles.iosSafeArea}>\n <Button\n Icon={Icon}\n type=\"text\"\n onPress={togglePickerVisible}\n style={styles.iosButton}\n >\n {\"Close\"}\n </Button>\n\n <NativePicker\n style={styles.iosNativePicker}\n selectedValue={internalValue}\n onValueChange={handleValueChange}\n >\n {(pickerOptions as unknown as PickerOption[]).map((option) => (\n <NativePicker.Item\n label={option.label}\n value={option.value}\n key={option.value}\n />\n ))}\n </NativePicker>\n </SafeAreaView>\n </View>\n </Portal>\n ) : null}\n\n {/* nonIosPicker */}\n {!isIos && pickerVisible ? (\n <NativePicker\n enabled={pickerVisible}\n selectedValue={internalValue}\n onValueChange={handleValueChange}\n style={styles.nonIosPicker}\n ref={androidPickerRef}\n onBlur={() => setPickerVisible(false)}\n >\n {(pickerOptions as unknown as PickerOption[]).map((option) => (\n <NativePicker.Item\n label={option.label}\n value={option.value}\n key={option.value}\n />\n ))}\n </NativePicker>\n ) : null}\n </View>\n );\n};\n\nexport default withTheme(Picker);\n\nconst styles = StyleSheet.create({\n marginsContainer: {\n alignSelf: \"stretch\",\n alignItems: \"center\",\n width: \"100%\",\n maxWidth: deviceWidth,\n },\n touchableContainer: {\n flex: 1,\n height: \"100%\",\n width: \"100%\",\n alignSelf: \"stretch\",\n alignItems: \"center\",\n },\n outsetContainer: {\n flex: 1,\n height: \"100%\",\n width: \"100%\",\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n },\n insetContainer: {\n flex: 1,\n height: \"100%\",\n width: \"100%\",\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n paddingLeft: 12,\n paddingRight: 12,\n },\n primaryTextContainer: {\n flex: 1,\n },\n iosPicker: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n flexDirection: \"row\",\n justifyContent: \"center\",\n width: \"100%\",\n maxWidth: deviceWidth,\n maxHeight: deviceHeight,\n },\n iosSafeArea: {\n backgroundColor: \"white\",\n flexDirection: \"column\",\n width: \"100%\",\n maxWidth: deviceWidth,\n },\n iosButton: {\n alignSelf: \"flex-end\",\n },\n iosNativePicker: {\n backgroundColor: \"white\",\n },\n nonIosPicker: {\n opacity: 0,\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n width: \"100%\",\n maxWidth: deviceWidth,\n maxHeight: deviceHeight,\n },\n});\n"],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ import TextField from "../TextField";
|
|
|
10
10
|
import Touchable from "../Touchable";
|
|
11
11
|
|
|
12
12
|
const Picker = _ref => {
|
|
13
|
-
var _options$find
|
|
13
|
+
var _options$find;
|
|
14
14
|
|
|
15
15
|
let {
|
|
16
16
|
style,
|
|
@@ -67,7 +67,7 @@ const Picker = _ref => {
|
|
|
67
67
|
};
|
|
68
68
|
|
|
69
69
|
const stylesWithoutMargin = style && omit(StyleSheet.flatten(style), ["margin", "marginTop", "marginRight", "marginBottom", "marginLeft"]);
|
|
70
|
-
const selectedLabel = selectedValue && ((
|
|
70
|
+
const selectedLabel = selectedValue && (((_options$find = options.find(o => o.value === selectedValue)) === null || _options$find === void 0 ? void 0 : _options$find.label) ?? selectedValue);
|
|
71
71
|
return /*#__PURE__*/React.createElement(Touchable, {
|
|
72
72
|
disabled: disabled,
|
|
73
73
|
onPress: toggleFocus,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","omit","withTheme","Picker","NativePicker","extractStyles","TextField","Touchable","style","options","placeholder","selectedValue","disabled","onValueChange","onValueChangeOverride","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","useRef","undefined","itemValue","itemIndex","toggleFocus","current","stylesWithoutMargin","flatten","selectedLabel","find","o","value","label","styles","container","opacity","position","top","left","right","bottom","width","map","create","alignSelf"],"sources":["PickerComponent.android.tsx"],"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((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 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"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,cAAjC;AACA,OAAOC,IAAP,MAAiB,aAAjB;AACA,SAASC,SAAT,QAA0B,eAA1B;AACA,SAASC,MAAM,IAAIC,YAAnB,QAAuC,6BAAvC;AACA,SAASC,aAAT,QAA8B,iBAA9B;AAEA,OAAOC,SAAP,MAAsB,cAAtB;AACA,OAAOC,SAAP,MAAsB,cAAtB;;AAGA,MAAMJ,MAAsC,GAAG,QAQzC;EAAA;;EAAA,IAR0C;IAC9CK,KAD8C;IAE9CC,OAF8C;IAG9CC,WAH8C;IAI9CC,aAJ8C;IAK9CC,QAAQ,GAAG,KALmC;IAM9CC,aAAa,EAAEC,qBAAqB,GAAG,MAAM,CAAE,CAND;IAO9C,GAAGC;EAP2C,CAQ1C;EACJ,MAAM;IACJC,UAAU,EAAE;MACVC,YADU;MACI;MACdC,WAFU;MAEG;MACbC,cAHU;MAGM;MAChBC,gBAJU;MAIQ;MAClBC,iBALU;MAKS;MACnBC,eANU;MAMO;MACjBC,WAPU;MAOG;MACbC,eARU;MAQO;MACjBC,OATU;MASD;MACTC,UAVU;MAUE;MACZC,YAXU;MAWI;MACdC,aAZU;MAYK;MACfC,WAbU;MAaG;MACb,GAAGb;IAdO;EADR,IAiBFX,aAAa,CAACG,KAAD,CAjBjB;EAmBA,MAAMsB,SAAS,GAAGhC,KAAK,CAACiC,MAAN,CAA2CC,SAA3C,CAAlB;;EAEA,MAAMnB,aAAa,GAAG,CAACoB,SAAD,EAAoBC,SAApB,KAA0C;IAC9DC,WAAW;IACXrB,qBAAqB,CAACmB,SAAD,EAAYC,SAAZ,CAArB;EACD,CAHD;;EAKA,MAAMC,WAAW,GAAG,MAAM;IACxB,IAAI,CAACvB,QAAL,EAAe;MACb;MACAkB,SAAS,CAACM,OAAV,CAAkBD,WAAlB,GAFa,CAEoB;IAClC;EACF,CALD;;EAOA,MAAME,mBAAmB,GACvB7B,KAAK,IACLP,IAAI,CAACD,UAAU,CAACsC,OAAX,CAAmB9B,KAAnB,CAAD,EAA4B,CAC9B,QAD8B,EAE9B,WAF8B,EAG9B,aAH8B,EAI9B,cAJ8B,EAK9B,YAL8B,CAA5B,CAFN;EAUA,MAAM+B,aAAa,GACjB5B,aAAa,
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","omit","withTheme","Picker","NativePicker","extractStyles","TextField","Touchable","style","options","placeholder","selectedValue","disabled","onValueChange","onValueChangeOverride","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","useRef","undefined","itemValue","itemIndex","toggleFocus","current","stylesWithoutMargin","flatten","selectedLabel","find","o","value","label","styles","container","opacity","position","top","left","right","bottom","width","map","create","alignSelf"],"sources":["PickerComponent.android.tsx"],"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((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 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"],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ import Touchable from "../Touchable";
|
|
|
13
13
|
import { extractStyles } from "../../utilities";
|
|
14
14
|
|
|
15
15
|
const Picker = _ref => {
|
|
16
|
-
var _options$find
|
|
16
|
+
var _options$find;
|
|
17
17
|
|
|
18
18
|
let {
|
|
19
19
|
Icon,
|
|
@@ -69,7 +69,7 @@ const Picker = _ref => {
|
|
|
69
69
|
};
|
|
70
70
|
|
|
71
71
|
const stylesWithoutMargin = style && omit(StyleSheet.flatten(style), ["margin", "marginTop", "marginRight", "marginBottom", "marginLeft"]);
|
|
72
|
-
const selectedLabel = selectedValue && ((
|
|
72
|
+
const selectedLabel = selectedValue && (((_options$find = options.find(o => o.value === selectedValue)) === null || _options$find === void 0 ? void 0 : _options$find.label) ?? selectedValue);
|
|
73
73
|
return /*#__PURE__*/React.createElement(View, {
|
|
74
74
|
style: [styles.container, viewStyles]
|
|
75
75
|
}, /*#__PURE__*/React.createElement(Touchable, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","SafeAreaView","omit","Picker","NativePicker","withTheme","Portal","Button","TextField","Touchable","extractStyles","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","useRef","undefined","pickerVisible","setIsPickerVisible","useState","toggleVisibility","current","toggleFocus","stylesWithoutMargin","flatten","selectedLabel","find","o","value","label","styles","container","String","picker","divider","pickerContainer","closeButton","map","create","alignSelf","position","bottom","left","right","flexDirection","justifyContent","width"],"sources":["PickerComponent.ios.tsx"],"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 Icon={Icon}\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"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,cAAjC;AACA,SAASC,YAAT,QAA6B,gCAA7B;AACA,OAAOC,IAAP,MAAiB,aAAjB;AAEA,SAASC,MAAM,IAAIC,YAAnB,QAAuC,6BAAvC;AAEA,SAASC,SAAT,QAA0B,eAA1B;AAEA,OAAOC,MAAP,MAAmB,kBAAnB;AACA,OAAOC,MAAP,MAAmB,qBAAnB;AACA,OAAOC,SAAP,MAAsB,cAAtB;AACA,OAAOC,SAAP,MAAsB,cAAtB;AAEA,SAASC,aAAT,QAA8B,iBAA9B;;AAGA,MAAMP,MAAiD,GAAG,QAUpD;EAAA;;EAAA,IAVqD;IACzDQ,IADyD;IAEzDC,KAFyD;IAGzDC,OAHyD;IAIzDC,WAJyD;IAKzDC,aALyD;IAMzDC,QAAQ,GAAG,KAN8C;IAOzDC,aAAa,GAAG,MAAM,CAAE,CAPiC;IAQzDC,KAAK,EAAE;MAAEC;IAAF,CARkD;IASzD,GAAGC;EATsD,CAUrD;EACJ,MAAM;IACJC,UAAU,EAAE;MACVC,YADU;MACI;MACdC,WAFU;MAEG;MACbC,cAHU;MAGM;MAChBC,gBAJU;MAIQ;MAClBC,iBALU;MAKS;MACnBC,eANU;MAMO;MACjBC,WAPU;MAOG;MACbC,eARU;MAQO;MACjBC,OATU;MASD;MACTC,UAVU;MAUE;MACZC,YAXU;MAWI;MACdC,aAZU;MAYK;MACfC,WAbU;MAaG;MACb,GAAGb;IAdO;EADR,IAiBFX,aAAa,CAACE,KAAD,CAjBjB;EAmBA,MAAMuB,SAAS,GAAGrC,KAAK,CAACsC,MAAN,CAA2CC,SAA3C,CAAlB;EACA,MAAM,CAACC,aAAD,EAAgBC,kBAAhB,IAAsCzC,KAAK,CAAC0C,QAAN,CAAe,KAAf,CAA5C;;EAEA,MAAMC,gBAAgB,GAAG,MAAM;IAC7BF,kBAAkB,CAAC,CAACD,aAAF,CAAlB,CAD6B,CAE7B;;IACAH,SAAS,CAACO,OAAV,CAAkBC,WAAlB,GAH6B,CAGI;EAClC,CAJD;;EAMA,MAAMC,mBAAmB,GACvBhC,KAAK,IACLV,IAAI,CAACF,UAAU,CAAC6C,OAAX,CAAmBjC,KAAnB,CAAD,EAA4B,CAC9B,QAD8B,EAE9B,WAF8B,EAG9B,aAH8B,EAI9B,cAJ8B,EAK9B,YAL8B,CAA5B,CAFN;EAUA,MAAMkC,aAAa,GACjB/B,aAAa,
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","SafeAreaView","omit","Picker","NativePicker","withTheme","Portal","Button","TextField","Touchable","extractStyles","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","useRef","undefined","pickerVisible","setIsPickerVisible","useState","toggleVisibility","current","toggleFocus","stylesWithoutMargin","flatten","selectedLabel","find","o","value","label","styles","container","String","picker","divider","pickerContainer","closeButton","map","create","alignSelf","position","bottom","left","right","flexDirection","justifyContent","width"],"sources":["PickerComponent.ios.tsx"],"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 Icon={Icon}\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"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,cAAjC;AACA,SAASC,YAAT,QAA6B,gCAA7B;AACA,OAAOC,IAAP,MAAiB,aAAjB;AAEA,SAASC,MAAM,IAAIC,YAAnB,QAAuC,6BAAvC;AAEA,SAASC,SAAT,QAA0B,eAA1B;AAEA,OAAOC,MAAP,MAAmB,kBAAnB;AACA,OAAOC,MAAP,MAAmB,qBAAnB;AACA,OAAOC,SAAP,MAAsB,cAAtB;AACA,OAAOC,SAAP,MAAsB,cAAtB;AAEA,SAASC,aAAT,QAA8B,iBAA9B;;AAGA,MAAMP,MAAiD,GAAG,QAUpD;EAAA;;EAAA,IAVqD;IACzDQ,IADyD;IAEzDC,KAFyD;IAGzDC,OAHyD;IAIzDC,WAJyD;IAKzDC,aALyD;IAMzDC,QAAQ,GAAG,KAN8C;IAOzDC,aAAa,GAAG,MAAM,CAAE,CAPiC;IAQzDC,KAAK,EAAE;MAAEC;IAAF,CARkD;IASzD,GAAGC;EATsD,CAUrD;EACJ,MAAM;IACJC,UAAU,EAAE;MACVC,YADU;MACI;MACdC,WAFU;MAEG;MACbC,cAHU;MAGM;MAChBC,gBAJU;MAIQ;MAClBC,iBALU;MAKS;MACnBC,eANU;MAMO;MACjBC,WAPU;MAOG;MACbC,eARU;MAQO;MACjBC,OATU;MASD;MACTC,UAVU;MAUE;MACZC,YAXU;MAWI;MACdC,aAZU;MAYK;MACfC,WAbU;MAaG;MACb,GAAGb;IAdO;EADR,IAiBFX,aAAa,CAACE,KAAD,CAjBjB;EAmBA,MAAMuB,SAAS,GAAGrC,KAAK,CAACsC,MAAN,CAA2CC,SAA3C,CAAlB;EACA,MAAM,CAACC,aAAD,EAAgBC,kBAAhB,IAAsCzC,KAAK,CAAC0C,QAAN,CAAe,KAAf,CAA5C;;EAEA,MAAMC,gBAAgB,GAAG,MAAM;IAC7BF,kBAAkB,CAAC,CAACD,aAAF,CAAlB,CAD6B,CAE7B;;IACAH,SAAS,CAACO,OAAV,CAAkBC,WAAlB,GAH6B,CAGI;EAClC,CAJD;;EAMA,MAAMC,mBAAmB,GACvBhC,KAAK,IACLV,IAAI,CAACF,UAAU,CAAC6C,OAAX,CAAmBjC,KAAnB,CAAD,EAA4B,CAC9B,QAD8B,EAE9B,WAF8B,EAG9B,aAH8B,EAI9B,cAJ8B,EAK9B,YAL8B,CAA5B,CAFN;EAUA,MAAMkC,aAAa,GACjB/B,aAAa,KACZ,kBAAAF,OAAO,CAACkC,IAAR,CAAcC,CAAD,IAAOA,CAAC,CAACC,KAAF,KAAYlC,aAAhC,iEAAgDmC,KAAhD,KAAyDnC,aAD7C,CADf;EAIA,oBACE,oBAAC,IAAD;IAAM,KAAK,EAAE,CAACoC,MAAM,CAACC,SAAR,EAAmB/B,UAAnB;EAAb,gBACE,oBAAC,SAAD;IAAW,QAAQ,EAAEL,QAArB;IAA+B,OAAO,EAAEyB;EAAxC,gBACE,oBAAC,SAAD,eACMrB,KADN;IAEE,KAAK,EAAEiC,MAAM,CAACP,aAAD,CAFf;IAGE,WAAW,EAAEhC,WAHf,CAIE;IAJF;IAKE,GAAG,EAAEqB,SALP,CAKkB;IALlB;IAME,QAAQ,EAAEnB,QANZ;IAOE,aAAa,EAAC,MAPhB,CAQE;IARF;IASE,KAAK,EAAE4B,mBATT;IAUE,IAAI,EAAEjC;EAVR,GADF,CADF,EAeG2B,aAAa,iBACZ,oBAAC,MAAD,qBACE,oBAAC,IAAD;IAAM,KAAK,EAAE,CAACa,MAAM,CAACG,MAAR,EAAgB;MAAEzB,eAAe,EAAEV,MAAM,CAACoC;IAA1B,CAAhB;EAAb,gBACE,oBAAC,YAAD;IAAc,KAAK,EAAEJ,MAAM,CAACK;EAA5B,gBACE,oBAAC,MAAD;IACE,IAAI,EAAE7C,IADR;IAEE,IAAI,EAAC,MAFP;IAGE,OAAO,EAAE8B,gBAHX;IAIE,KAAK,EAAEU,MAAM,CAACM;EAJhB,WADF,eASE,oBAAC,YAAD;IACE,KAAK,EAAE;MAAE5B,eAAe,EAAE;IAAnB,CADT;IAEE,aAAa,EAAEd,aAFjB;IAGE,aAAa,EAAEE;EAHjB,GAKGJ,OAAO,CAAC6C,GAAR,CAAaV,CAAD,iBACX,oBAAC,YAAD,CAAc,IAAd;IACE,KAAK,EAAEA,CAAC,CAACE,KADX;IAEE,KAAK,EAAEF,CAAC,CAACC,KAFX;IAGE,GAAG,EAAED,CAAC,CAACC;EAHT,EADD,CALH,CATF,CADF,CADF,CAhBJ,CADF;AA+CD,CApGD;;AAsGA,MAAME,MAAM,GAAGnD,UAAU,CAAC2D,MAAX,CAAkB;EAC/BP,SAAS,EAAE;IACTQ,SAAS,EAAE;EADF,CADoB;EAI/BN,MAAM,EAAE;IACNO,QAAQ,EAAE,UADJ;IAENC,MAAM,EAAE,CAFF;IAGNC,IAAI,EAAE,CAHA;IAINC,KAAK,EAAE,CAJD;IAKNC,aAAa,EAAE,KALT;IAMNC,cAAc,EAAE;EANV,CAJuB;EAY/BV,eAAe,EAAE;IACf3B,eAAe,EAAE,OADF;IAEfoC,aAAa,EAAE,QAFA;IAGfE,KAAK,EAAE;EAHQ,CAZc;EAiB/BV,WAAW,EAAE;IACXG,SAAS,EAAE;EADA;AAjBkB,CAAlB,CAAf;AAsBA,eAAevD,SAAS,CAACF,MAAD,CAAxB"}
|
|
@@ -10,7 +10,7 @@ import TextField from "../TextField";
|
|
|
10
10
|
import Touchable from "../Touchable";
|
|
11
11
|
|
|
12
12
|
const Picker = _ref => {
|
|
13
|
-
var _options$find
|
|
13
|
+
var _options$find;
|
|
14
14
|
|
|
15
15
|
let {
|
|
16
16
|
style,
|
|
@@ -67,7 +67,7 @@ const Picker = _ref => {
|
|
|
67
67
|
};
|
|
68
68
|
|
|
69
69
|
const stylesWithoutMargin = style && omit(StyleSheet.flatten(style), ["margin", "marginTop", "marginRight", "marginBottom", "marginLeft"]);
|
|
70
|
-
const selectedLabel = selectedValue && ((
|
|
70
|
+
const selectedLabel = selectedValue && (((_options$find = options.find(o => o.value === selectedValue)) === null || _options$find === void 0 ? void 0 : _options$find.label) ?? selectedValue);
|
|
71
71
|
return /*#__PURE__*/React.createElement(Touchable, {
|
|
72
72
|
disabled: disabled,
|
|
73
73
|
onPress: toggleFocus,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","Picker","NativePicker","omit","withTheme","extractStyles","TextField","Touchable","style","options","placeholder","selectedValue","disabled","onValueChange","onValueChangeOverride","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","useRef","undefined","itemValue","itemIndex","toggleFocus","current","stylesWithoutMargin","flatten","selectedLabel","find","o","value","label","styles","container","flex","opacity","position","top","left","right","bottom","width","map","create","alignSelf"],"sources":["PickerComponent.web.tsx"],"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"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,cAAjC;AACA,SAASC,MAAM,IAAIC,YAAnB,QAAuC,6BAAvC;AACA,OAAOC,IAAP,MAAiB,aAAjB;AACA,SAASC,SAAT,QAA0B,eAA1B;AACA,SAASC,aAAT,QAA8B,iBAA9B;AAEA,OAAOC,SAAP,MAAsB,cAAtB;AACA,OAAOC,SAAP,MAAsB,cAAtB;;AAGA,MAAMN,MAAsC,GAAG,QAQzC;EAAA;;EAAA,IAR0C;IAC9CO,KAD8C;IAE9CC,OAF8C;IAG9CC,WAH8C;IAI9CC,aAJ8C;IAK9CC,QAAQ,GAAG,KALmC;IAM9CC,aAAa,EAAEC,qBAAqB,GAAG,MAAM,CAAE,CAND;IAO9C,GAAGC;EAP2C,CAQ1C;EACJ,MAAM;IACJC,UAAU,EAAE;MACVC,YADU;MACI;MACdC,WAFU;MAEG;MACbC,cAHU;MAGM;MAChBC,gBAJU;MAIQ;MAClBC,iBALU;MAKS;MACnBC,eANU;MAMO;MACjBC,WAPU;MAOG;MACbC,eARU;MAQO;MACjBC,OATU;MASD;MACTC,UAVU;MAUE;MACZC,YAXU;MAWI;MACdC,aAZU;MAYK;MACfC,WAbU;MAaG;MACb,GAAGb;IAdO;EADR,IAiBFX,aAAa,CAACG,KAAD,CAjBjB;EAmBA,MAAMsB,SAAS,GAAGhC,KAAK,CAACiC,MAAN,CAA2CC,SAA3C,CAAlB;;EAEA,MAAMnB,aAAa,GAAG,CAACoB,SAAD,EAAoBC,SAApB,KAA0C;IAC9DC,WAAW;IACXrB,qBAAqB,CAACmB,SAAD,EAAYC,SAAZ,CAArB;EACD,CAHD;;EAKA,MAAMC,WAAW,GAAG,MAAM;IACxB,IAAI,CAACvB,QAAL,EAAe;MACb;MACAkB,SAAS,CAACM,OAAV,CAAkBD,WAAlB,GAFa,CAEoB;IAClC;EACF,CALD;;EAOA,MAAME,mBAAmB,GACvB7B,KAAK,IACLL,IAAI,CAACH,UAAU,CAACsC,OAAX,CAAmB9B,KAAnB,CAAD,EAA4B,CAC9B,QAD8B,EAE9B,WAF8B,EAG9B,aAH8B,EAI9B,cAJ8B,EAK9B,YAL8B,CAA5B,CAFN;EAUA,MAAM+B,aAAa,GACjB5B,aAAa,
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","Picker","NativePicker","omit","withTheme","extractStyles","TextField","Touchable","style","options","placeholder","selectedValue","disabled","onValueChange","onValueChangeOverride","props","viewStyles","borderRadius","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderColor","backgroundColor","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","textField","useRef","undefined","itemValue","itemIndex","toggleFocus","current","stylesWithoutMargin","flatten","selectedLabel","find","o","value","label","styles","container","flex","opacity","position","top","left","right","bottom","width","map","create","alignSelf"],"sources":["PickerComponent.web.tsx"],"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"],"mappings":"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"}
|