ferns-ui 0.4.3 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/TapToEdit.js CHANGED
@@ -1,32 +1,82 @@
1
- import React from "react";
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import React, { useState } from "react";
2
13
  import { Box } from "./Box";
3
14
  import { Button } from "./Button";
15
+ import { Field } from "./Field";
4
16
  import { Icon } from "./Icon";
5
17
  import { Text } from "./Text";
6
- import { TextField } from "./TextField";
7
- export class TapToEdit extends React.Component {
8
- constructor() {
9
- super(...arguments);
10
- this.state = { showEdit: false };
18
+ export const TapToEdit = (props) => {
19
+ const [editing, setEditing] = useState(false);
20
+ const [value, setValue] = useState(props.initialValue);
21
+ const { title, editable = true, rowBoxProps, transform, fieldComponent } = props, fieldProps = __rest(props, ["title", "editable", "rowBoxProps", "transform", "fieldComponent"]);
22
+ if (editing) {
23
+ return (React.createElement(Box, { direction: "column", maxWidth: "100%", paddingX: 3, paddingY: 2, width: "100%" },
24
+ fieldComponent ? (fieldComponent(setValue)) : (React.createElement(Field, Object.assign({ handleChange: (_, val) => setValue(val), label: props.title }, fieldProps))),
25
+ React.createElement(Box, { direction: "row" },
26
+ React.createElement(Button, { color: "blue", inline: true, text: "Save", onClick: async () => {
27
+ if (!props.onSave) {
28
+ console.error("No onSave provided for editable TapToEdit");
29
+ }
30
+ else {
31
+ await props.onSave(value);
32
+ }
33
+ setEditing(false);
34
+ } }),
35
+ React.createElement(Box, { marginLeft: 2 },
36
+ React.createElement(Button, { color: "red", inline: true, text: "Cancel", onClick: () => {
37
+ setEditing(false);
38
+ } })))));
11
39
  }
12
- render() {
13
- if (!this.state.showEdit) {
14
- return (React.createElement(Box, { direction: "row", display: "flex", onClick: () => this.setState({ showEdit: true }) },
15
- React.createElement(Box, { marginRight: 2 },
16
- React.createElement(Icon, { color: "primaryDark", name: "edit", prefix: "far", size: "lg" })),
17
- React.createElement(Text, null, this.props.children)));
40
+ else {
41
+ let displayValue = value;
42
+ // If transform is present, that takes priority
43
+ if (transform) {
44
+ displayValue = transform(value);
18
45
  }
19
46
  else {
20
- return (React.createElement(Box, null,
21
- React.createElement(TextField, Object.assign({}, this.props)),
22
- React.createElement(Box, { paddingY: 1, width: 100 },
23
- React.createElement(Button, { color: "primary", inline: true, text: "Save", onClick: () => {
24
- this.setState({ showEdit: false });
25
- if (this.props.onSubmitEditing) {
26
- this.props.onSubmitEditing();
27
- }
28
- } }))));
47
+ // If no transform, try and display the value reasonably.
48
+ if ((fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.type) === "boolean") {
49
+ displayValue = value ? "Yes" : "No";
50
+ }
51
+ else if ((fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.type) === "percent") {
52
+ // Prevent floating point errors from showing up by using parseFloat and precision. Pass through parseFloat again
53
+ // to trim off insignificant zeroes.
54
+ displayValue = `${parseFloat(parseFloat(String(value * 100)).toPrecision(7))}%`;
55
+ }
56
+ else if ((fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.type) === "currency") {
57
+ // TODO: support currencies other than USD in Field and related components.
58
+ const formatter = new Intl.NumberFormat("en-US", {
59
+ style: "currency",
60
+ currency: "USD",
61
+ minimumFractionDigits: 2,
62
+ });
63
+ displayValue = formatter.format(value);
64
+ }
65
+ else if ((fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.type) === "multiselect") {
66
+ // ???
67
+ displayValue = value.join(", ");
68
+ }
29
69
  }
70
+ return (React.createElement(Box, Object.assign({ direction: "row", justifyContent: "between", maxWidth: "100%", paddingX: 3, paddingY: 2, width: "100%" }, rowBoxProps),
71
+ React.createElement(Box, null,
72
+ React.createElement(Text, { weight: "bold" },
73
+ title,
74
+ ":")),
75
+ React.createElement(Box, { direction: "row", flex: "shrink", marginLeft: 2 },
76
+ React.createElement(Box, { flex: "shrink" },
77
+ React.createElement(Text, { overflow: "breakWord" }, displayValue)),
78
+ editable && (React.createElement(Box, { marginLeft: 2, onClick: () => setEditing(true) },
79
+ React.createElement(Icon, { color: "darkGray", name: "edit", size: "lg" }))))));
30
80
  }
31
- }
81
+ };
32
82
  //# sourceMappingURL=TapToEdit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TapToEdit.js","sourceRoot":"","sources":["../src/TapToEdit.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAMtC,MAAM,OAAO,SAAU,SAAQ,KAAK,CAAC,SAAyC;IAA9E;;QACE,UAAK,GAAG,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAC;IAiC5B,CAAC;IA/BC,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACxB,OAAO,CACL,oBAAC,GAAG,IAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;gBAChF,oBAAC,GAAG,IAAC,WAAW,EAAE,CAAC;oBACjB,oBAAC,IAAI,IAAC,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,GAAG,CAC3D;gBACN,oBAAC,IAAI,QAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAQ,CAC9B,CACP,CAAC;SACH;aAAM;YACL,OAAO,CACL,oBAAC,GAAG;gBACF,oBAAC,SAAS,oBAAK,IAAI,CAAC,KAAK,EAAI;gBAC7B,oBAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG;oBAC1B,oBAAC,MAAM,IACL,KAAK,EAAC,SAAS,EACf,MAAM,QACN,IAAI,EAAC,MAAM,EACX,OAAO,EAAE,GAAG,EAAE;4BACZ,IAAI,CAAC,QAAQ,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAC,CAAC;4BACjC,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;gCAC9B,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;6BAC9B;wBACH,CAAC,GACD,CACE,CACF,CACP,CAAC;SACH;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"TapToEdit.js","sourceRoot":"","sources":["../src/TapToEdit.tsx"],"names":[],"mappings":"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"}
package/dist/Unifier.js CHANGED
@@ -280,6 +280,5 @@ class UnifierClass {
280
280
  DefaultTheme.secondaryBoldFont, buttonFont: ((_23 = this._theme) === null || _23 === void 0 ? void 0 : _23.buttonFont) || ((_24 = this._theme) === null || _24 === void 0 ? void 0 : _24.primaryFont) || DefaultTheme.buttonFont, accentFont: ((_25 = this._theme) === null || _25 === void 0 ? void 0 : _25.accentFont) || ((_26 = this._theme) === null || _26 === void 0 ? void 0 : _26.primaryFont) || DefaultTheme.accentFont, accentBoldFont: ((_27 = this._theme) === null || _27 === void 0 ? void 0 : _27.accentBoldFont) || ((_28 = this._theme) === null || _28 === void 0 ? void 0 : _28.primaryFont) || DefaultTheme.accentBoldFont, titleFont: ((_29 = this._theme) === null || _29 === void 0 ? void 0 : _29.titleFont) || ((_30 = this._theme) === null || _30 === void 0 ? void 0 : _30.primaryFont) || DefaultTheme.titleFont });
281
281
  }
282
282
  }
283
- const NOTIFICATION_TAB_KEY = "@unifier/tabNotifications";
284
283
  export const Unifier = new UnifierClass();
285
284
  //# sourceMappingURL=Unifier.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Unifier.js","sourceRoot":"","sources":["../src/Unifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Unifier.js","sourceRoot":"","sources":["../src/Unifier.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ferns-ui",
3
- "version": "0.4.3",
3
+ "version": "0.6.0",
4
4
  "main": "dist/index.js",
5
5
  "license": "Apache-2.0",
6
6
  "scripts": {
@@ -120,21 +120,21 @@
120
120
  "tsc-watch": "^5.0.3"
121
121
  },
122
122
  "devDependencies": {
123
- "@expo/vector-icons": "^12.0.0",
124
- "@react-native-async-storage/async-storage": "^1.15.0",
123
+ "@expo/vector-icons": "^13.0.0",
124
+ "@react-native-async-storage/async-storage": "^1.17.7",
125
125
  "@react-native-community/blur": "^3.6.0",
126
- "@react-native-community/datetimepicker": "^5.1.0",
127
- "@react-native-picker/picker": "^2.2.1",
128
- "@sentry/browser": "^6.19.7",
129
- "@sentry/react": "^6.19.7",
130
- "@sentry/react-native": "^3.4.2",
126
+ "@react-native-community/datetimepicker": "^6.2.0",
127
+ "@react-native-picker/picker": "2.4.2",
128
+ "@sentry/browser": "^7.3.1",
129
+ "@sentry/react": "^7.3.1",
130
+ "@sentry/react-native": "^4.1.0",
131
131
  "@types/lodash": "^4.14.182",
132
132
  "@types/mdurl": "^1.0.2",
133
- "@types/react-native": "^0.67.7",
133
+ "@types/react-native": "^0.69.1",
134
134
  "@typescript-eslint/eslint-plugin": "^5.23.0",
135
135
  "@typescript-eslint/parser": "^5.23.0",
136
136
  "eslint": "^8.15.0",
137
- "eslint-config-ferns": "^0.3.2",
137
+ "eslint-config-ferns": "^0.4.0",
138
138
  "eslint-config-prettier": "^8.5.0",
139
139
  "eslint-plugin-import": "^2.26.0",
140
140
  "eslint-plugin-lodash": "^7.1.0",
@@ -143,6 +143,7 @@
143
143
  "eslint-plugin-react-hooks": "^4.5.0",
144
144
  "eslint-plugin-react-native": "^4.0.0",
145
145
  "eslint-plugin-simple-import-sort": "^7.0.0",
146
+ "eslint-plugin-unused-imports": "2.0.0",
146
147
  "expo-font": "^10.0.5",
147
148
  "lodash": "^4.17.21",
148
149
  "mixpanel-browser": "^2.38.0",
@@ -150,10 +151,10 @@
150
151
  "prettier": "^2.6.2",
151
152
  "react": "^17.0.0",
152
153
  "react-app-polyfill": "^1.0.6",
153
- "react-date-picker": "^7.10.0",
154
- "react-dev-utils": "^11.0.4",
154
+ "react-date-picker": "^8.4.0",
155
+ "react-dev-utils": "^12.0.1",
155
156
  "react-dom": "17.0.2",
156
- "react-native": "^0.64.3",
157
+ "react-native": "0.68.2",
157
158
  "react-native-gesture-handler": "^2.1.0",
158
159
  "react-native-haptic-feedback": "^1.10.0",
159
160
  "react-native-modalize": "^2.0.12",
@@ -164,27 +165,27 @@
164
165
  "react-native-svg": "^12.1.0",
165
166
  "react-router": "^5.2.0",
166
167
  "react-router-dom": "^5.2.0",
167
- "typescript": "~4.1.5"
168
+ "typescript": "4.1.5"
168
169
  },
169
170
  "peerDependencies": {
170
- "@expo/vector-icons": "^12.0.0",
171
- "@react-native-async-storage/async-storage": "^1.15.0",
171
+ "@expo/vector-icons": "^13.0.0",
172
+ "@react-native-async-storage/async-storage": "^1.17.7",
172
173
  "@react-native-community/blur": "^3.6.0",
173
- "@react-native-community/datetimepicker": "^5.1.0",
174
- "@react-native-picker/picker": "^2.2.1",
175
- "@sentry/browser": "^6.19.7",
176
- "@sentry/react": "^6.19.7",
177
- "@sentry/react-native": "^3.4.2",
174
+ "@react-native-community/datetimepicker": "^6.2.0",
175
+ "@react-native-picker/picker": "2.4.2",
176
+ "@sentry/browser": "^7.3.1",
177
+ "@sentry/react": "^7.3.1",
178
+ "@sentry/react-native": "^4.1.0",
178
179
  "expo-font": "^10.0.5",
179
180
  "lodash": "^4.17.21",
180
181
  "mixpanel-browser": "^2.38.0",
181
182
  "moment-timezone": "^0.5.34",
182
183
  "react": "^17.0.0",
183
184
  "react-app-polyfill": "^1.0.6",
184
- "react-date-picker": "^7.10.0",
185
- "react-dev-utils": "^11.0.4",
185
+ "react-date-picker": "^8.4.0",
186
+ "react-dev-utils": "^12.0.1",
186
187
  "react-dom": "17.0.2",
187
- "react-native": "^0.64.3",
188
+ "react-native": "0.68.2",
188
189
  "react-native-gesture-handler": "^2.1.0",
189
190
  "react-native-haptic-feedback": "^1.10.0",
190
191
  "react-native-modalize": "^2.0.12",
package/src/Box.tsx CHANGED
@@ -54,13 +54,13 @@ export class Box extends React.Component<BoxProps, {}> {
54
54
  color: (value: keyof UnifiedTheme) => ({backgroundColor: Unifier.theme[value]}),
55
55
  direction: (value: any) => ({flexDirection: value, display: "flex"}),
56
56
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
57
- smDirection: (value: any, all: any) =>
57
+ smDirection: (value: any) =>
58
58
  mediaQueryLargerThan("sm") ? {flexDirection: value, display: "flex"} : {},
59
59
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
60
- mdDirection: (value: any, all: any) =>
60
+ mdDirection: (value: any) =>
61
61
  mediaQueryLargerThan("md") ? {flexDirection: value, display: "flex"} : {},
62
62
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
63
- lgDirection: (value: any, all: any) =>
63
+ lgDirection: (value: any) =>
64
64
  mediaQueryLargerThan("lg") ? {flexDirection: value, display: "flex"} : {},
65
65
  display: (value: any) => {
66
66
  return value === "flex" ? {flex: undefined} : {flex: 0, flexDirection: "row"};
package/src/Button.tsx CHANGED
@@ -4,7 +4,7 @@ import {ActivityIndicator, TouchableOpacity} from "react-native";
4
4
 
5
5
  import {UnifiedTheme} from ".";
6
6
  import {Box} from "./Box";
7
- import {ButtonProps, Color, iconSizeToNumber} from "./Common";
7
+ import {ButtonProps, Color} from "./Common";
8
8
  import {Icon} from "./Icon";
9
9
  // import {Icon} from "./Icon";
10
10
  import {Text} from "./Text";
package/src/Common.ts CHANGED
@@ -1,8 +1,5 @@
1
- import {FontSource} from "expo-font";
2
1
  import {SyntheticEvent} from "react";
3
2
 
4
- import {SelectListOptions} from "./SelectList";
5
-
6
3
  export interface BaseProfile {
7
4
  email: string;
8
5
  id: string;
@@ -680,33 +677,6 @@ export interface FieldWithLabelsProps {
680
677
  children?: React.ReactNode;
681
678
  }
682
679
 
683
- export interface FieldProps extends FieldWithLabelsProps {
684
- name: string;
685
- label?: string;
686
- subLabel?: string;
687
- initialValue?: any;
688
- handleChange: any;
689
- // Additional validation
690
- validate?: (value: any) => boolean;
691
- validateErrorMessage?: string;
692
- type?:
693
- | "boolean"
694
- | "email"
695
- | "text"
696
- | "textarea"
697
- | "number"
698
- | "currency"
699
- | "percent"
700
- | "select"
701
- | "password"
702
- | "url"
703
- | "date";
704
- rows?: number;
705
- options?: SelectListOptions;
706
- placeholder?: string;
707
- disabled?: boolean;
708
- }
709
-
710
680
  export interface TextFieldProps extends FieldWithLabelsProps {
711
681
  id?: string;
712
682
  onChange: OnChangeCallback;
package/src/Field.tsx CHANGED
@@ -1,18 +1,41 @@
1
- import isDate from "lodash/isDate";
2
- import isNumber from "lodash/isNumber";
3
1
  import moment from "moment-timezone";
4
2
  import React, {useState} from "react";
5
3
 
6
4
  import {Box} from "./Box";
7
- import {FieldProps, TextFieldType} from "./Common";
5
+ import {FieldWithLabelsProps, TextFieldType} from "./Common";
8
6
  import {FieldWithLabels} from "./FieldWithLabels";
9
- import {SelectList} from "./SelectList";
7
+ import {SelectList, SelectListOptions} from "./SelectList";
10
8
  import {Switch} from "./Switch";
9
+ import {Text} from "./Text";
11
10
  import {TextArea} from "./TextArea";
12
11
  import {TextField} from "./TextField";
13
12
 
14
- interface State {
15
- value: any;
13
+ export interface FieldProps extends FieldWithLabelsProps {
14
+ name: string;
15
+ label?: string;
16
+ subLabel?: string;
17
+ initialValue?: any;
18
+ handleChange: any;
19
+ // Additional validation
20
+ validate?: (value: any) => boolean;
21
+ validateErrorMessage?: string;
22
+ type?:
23
+ | "boolean"
24
+ | "email"
25
+ | "text"
26
+ | "textarea"
27
+ | "number"
28
+ | "currency"
29
+ | "percent"
30
+ | "select"
31
+ | "password"
32
+ | "url"
33
+ | "date"
34
+ | "multiselect";
35
+ rows?: number;
36
+ options?: SelectListOptions;
37
+ placeholder?: string;
38
+ disabled?: boolean;
16
39
  }
17
40
 
18
41
  /**
@@ -27,6 +50,7 @@ interface State {
27
50
  */
28
51
  export function Field(props: FieldProps) {
29
52
  const [value, setValue] = useState(props.initialValue || "");
53
+ const [multiselectValue, setMultiselectValue] = useState(props.initialValue ?? []);
30
54
 
31
55
  const handleChange = (newValue: string) => {
32
56
  if (props.type === "currency") {
@@ -47,40 +71,6 @@ export function Field(props: FieldProps) {
47
71
  }
48
72
  };
49
73
 
50
- const validate = () => {
51
- // console.log("VALIDATE", props.validate && props.validate(value));
52
- if (props.validate && !props.validate(value)) {
53
- return false;
54
- }
55
- switch (props.type) {
56
- case "boolean":
57
- return true;
58
- case "currency":
59
- return true;
60
- case "date":
61
- return !value || isDate(value);
62
- case "email":
63
- return !value || (value.search("@") > -1 && value.search(".") > -1);
64
- case "number":
65
- return !value || isNumber(value);
66
- case "password":
67
- return true;
68
- case "percent":
69
- return !value || isNumber(value.replace("%", ""));
70
- case "select":
71
- return true;
72
- case "text":
73
- case undefined: // text is default
74
- return true;
75
- case "textarea":
76
- return true;
77
- case "url":
78
- return true;
79
- default:
80
- return true;
81
- }
82
- };
83
-
84
74
  const renderField = () => {
85
75
  if (props.type === "select") {
86
76
  if (!props.options) {
@@ -96,6 +86,47 @@ export function Field(props: FieldProps) {
96
86
  onChange={handleChange}
97
87
  />
98
88
  );
89
+ } else if (props.type === "multiselect") {
90
+ if (!props.options) {
91
+ console.error("Field with type=multiselect require options");
92
+ return null;
93
+ }
94
+ return (
95
+ <Box width="100%">
96
+ {props.options.map((o) => (
97
+ <Box key={o.label + o.value} direction="row" justifyContent="between" width="100%">
98
+ <Box flex="shrink" marginRight={2}>
99
+ <Text weight="bold">{o.label}</Text>
100
+ </Box>
101
+ <Box>
102
+ <Switch
103
+ key={o.label + o.value}
104
+ disabled={props.disabled}
105
+ id={props.name}
106
+ name={props.name}
107
+ switched={(multiselectValue ?? []).includes(o.value)}
108
+ onChange={(result) => {
109
+ let newValue;
110
+ if (result) {
111
+ if (multiselectValue.includes(o.value)) {
112
+ console.warn(`Tried to add value that already exists: ${o.value}`);
113
+ return;
114
+ }
115
+ newValue = [...multiselectValue, o.value];
116
+ } else {
117
+ newValue = multiselectValue.filter((v: string) => v !== o.value);
118
+ }
119
+ setMultiselectValue(newValue);
120
+ if (props.handleChange) {
121
+ props.handleChange(props.name, newValue);
122
+ }
123
+ }}
124
+ />
125
+ </Box>
126
+ </Box>
127
+ ))}
128
+ </Box>
129
+ );
99
130
  } else if (props.type === "textarea") {
100
131
  return (
101
132
  <TextArea
package/src/Icon.tsx CHANGED
@@ -1,15 +1,13 @@
1
1
  import {FontAwesome} from "@expo/vector-icons";
2
2
  import React from "react";
3
3
 
4
- import {iconNumberToSize, IconProps, iconSizeToNumber} from "./Common";
4
+ import {IconProps, iconSizeToNumber} from "./Common";
5
5
  import {Unifier} from "./Unifier";
6
6
 
7
7
  export function initIcons() {
8
8
  console.debug("Initializing icons");
9
9
  }
10
10
 
11
- const iconSet = new Set();
12
-
13
11
  // TODO: Update <Icon /> to be closer to Expo's Vector Icon, letting multiple icon packs be used, etc.
14
12
  export class Icon extends React.Component<IconProps, {}> {
15
13
  render() {
@@ -1,4 +1,4 @@
1
- /* eslint-disable @typescript-eslint/no-unused-vars */
1
+ /* eslint-disable unused-imports/no-unused-vars */
2
2
  // import {Tracking} from "./Tracking";
3
3
  // import capitalize from "lodash/capitalize";
4
4
  // import Permissions from "react-native-permissions";
@@ -289,10 +289,8 @@ export default class RNPickerSelect extends PureComponent<any, any> {
289
289
 
290
290
  onValueChange(value, index);
291
291
 
292
- this.setState((prevState: any) => {
293
- return {
294
- selectedItem: prevState.items[index],
295
- };
292
+ this.setState({
293
+ selectedItem: this.props.items[index],
296
294
  });
297
295
  }
298
296
 
@@ -639,7 +637,7 @@ export default class RNPickerSelect extends PureComponent<any, any> {
639
637
  <Picker
640
638
  enabled={!disabled}
641
639
  selectedValue={selectedItem.value}
642
- style={style.inputWeb}
640
+ style={[{width: "100%", height: "100%", border: "none"}, style.inputWeb]}
643
641
  testID="web_picker"
644
642
  onValueChange={this.onValueChange}
645
643
  {...pickerProps}