@draftbit/core 49.2.1-ae444f.2 → 49.2.2-2c6f20.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/Picker/dropdown/DropDownPicker.js +1 -1
- package/lib/typescript/src/components/Picker/dropdown/DropDownPicker.js +3 -3
- package/lib/typescript/src/components/Picker/dropdown/DropDownPicker.js.map +1 -1
- package/lib/typescript/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/src/components/Picker/dropdown/DropDownPicker.js +3 -3
- package/src/components/Picker/dropdown/DropDownPicker.js.map +1 -1
- package/src/components/Picker/dropdown/DropDownPicker.tsx +4 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@draftbit/core",
|
|
3
|
-
"version": "49.2.
|
|
3
|
+
"version": "49.2.2-2c6f20.2+2c6f20e",
|
|
4
4
|
"description": "Core (non-native) Components",
|
|
5
5
|
"main": "lib/commonjs/index.js",
|
|
6
6
|
"types": "lib/typescript/src/index.d.ts",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"@date-io/date-fns": "^1.3.13",
|
|
43
43
|
"@draftbit/react-theme-provider": "^2.1.1",
|
|
44
|
-
"@draftbit/types": "^49.2.
|
|
44
|
+
"@draftbit/types": "^49.2.2-2c6f20.2+2c6f20e",
|
|
45
45
|
"@expo/vector-icons": "^13.0.0",
|
|
46
46
|
"@gorhom/bottom-sheet": "^5.0.0-alpha.4",
|
|
47
47
|
"@material-ui/core": "^4.11.0",
|
|
@@ -112,5 +112,5 @@
|
|
|
112
112
|
],
|
|
113
113
|
"testEnvironment": "node"
|
|
114
114
|
},
|
|
115
|
-
"gitHead": "
|
|
115
|
+
"gitHead": "2c6f20ee84f324799ab659e60133cdf581b540be"
|
|
116
116
|
}
|
|
@@ -6,9 +6,10 @@ import PickerInputContainer from "../PickerInputContainer";
|
|
|
6
6
|
import DropDownPickerComponent from "react-native-dropdown-picker";
|
|
7
7
|
import { withTheme } from "../../../theming";
|
|
8
8
|
import PickerItem from "./PickerItem";
|
|
9
|
+
import { useOnUpdate } from "../../../hooks";
|
|
9
10
|
const DropDownPicker = ({ theme, options: optionsProp = [], onValueChange, Icon, placeholder, value, autoDismissKeyboard = true, selectedIconName = "Feather/check", selectedIconColor = theme.colors.strong, selectedIconSize = 20, dropDownBackgroundColor = theme.colors.background, dropDownBorderColor = theme.colors.divider, dropDownTextColor = theme.colors.strong, dropDownBorderWidth = 1, dropDownBorderRadius = 8, children: childrenProp, disabled, ...rest }) => {
|
|
10
11
|
const [pickerVisible, setPickerVisible] = React.useState(false);
|
|
11
|
-
const [internalValue, setInternalValue] = React.useState();
|
|
12
|
+
const [internalValue, setInternalValue] = React.useState(value);
|
|
12
13
|
const isMultiSelect = Array.isArray(value);
|
|
13
14
|
const pickerItemProps = React.useMemo(() => {
|
|
14
15
|
const children = flattenReactFragments(React.Children.toArray(childrenProp));
|
|
@@ -21,11 +22,10 @@ const DropDownPicker = ({ theme, options: optionsProp = [], onValueChange, Icon,
|
|
|
21
22
|
label: option.label.toString(),
|
|
22
23
|
value: option.value,
|
|
23
24
|
})), [optionsProp]);
|
|
24
|
-
|
|
25
|
+
useOnUpdate(() => {
|
|
25
26
|
onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange((isMultiSelect ? internalValue !== null && internalValue !== void 0 ? internalValue : [] : internalValue !== null && internalValue !== void 0 ? internalValue : "") // cannot determine if multiselect or not on compile time
|
|
26
27
|
);
|
|
27
28
|
// onValueChange excluded to prevent running on every re-render when using an anoymous function, which is the common case
|
|
28
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
29
29
|
}, [internalValue]);
|
|
30
30
|
React.useEffect(() => {
|
|
31
31
|
if (pickerVisible && autoDismissKeyboard) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropDownPicker.js","sourceRoot":"","sources":["DropDownPicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAIL,wBAAwB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,oBAAoB,MAAM,yBAAyB,CAAC;AAC3D,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,UAA+B,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"DropDownPicker.js","sourceRoot":"","sources":["DropDownPicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAIL,wBAAwB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,oBAAoB,MAAM,yBAAyB,CAAC;AAC3D,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,UAA+B,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,cAAc,GAIhB,CAAC,EACH,KAAK,EACL,OAAO,EAAE,WAAW,GAAG,EAAE,EACzB,aAAa,EACb,IAAI,EACJ,WAAW,EACX,KAAK,EACL,mBAAmB,GAAG,IAAI,EAC1B,gBAAgB,GAAG,eAAe,EAClC,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EACvC,gBAAgB,GAAG,EAAE,EACrB,uBAAuB,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,EACjD,mBAAmB,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,EAC1C,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EACvC,mBAAmB,GAAG,CAAC,EACvB,oBAAoB,GAAG,CAAC,EACxB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,EAAE;IACH,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAEtD,KAAK,CAAC,CAAC;IAET,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAE3C,MAAM,eAAe,GAAoB,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC1D,MAAM,QAAQ,GAAG,qBAAqB,CACpC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAyB,CAC7D,CAAC;QAEF,0EAA0E;QAC1E,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QAE5E,OAAO,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,KAAI,EAAE,CAAC;IACtC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,EAAE,UAAU,EAAE,oBAAoB,EAAE,UAAU,EAAE,oBAAoB,EAAE,GAC1E,aAAa,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IAEvC,MAAM,OAAO,GAAG,kBAAkB,CAChC,GAAG,EAAE,CACH,wBAAwB,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE;QAC9B,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,CAAC,CAAC,EACL,CAAC,WAAW,CAAC,CACd,CAAC;IAEF,WAAW,CAAC,GAAG,EAAE;QACf,aAAa,aAAb,aAAa,uBAAb,aAAa,CACX,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,EAAE,CAAC,CAAC,CAAC,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,EAAE,CAAQ,CAAC,yDAAyD;SAC7H,CAAC;QACF,yHAAyH;IAC3H,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,aAAa,IAAI,mBAAmB,EAAE;YACxC,QAAQ,CAAC,OAAO,EAAE,CAAC;SACpB;IACH,CAAC,EAAE,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAEzC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,QAAQ,EAAE;YACZ,gBAAgB,CAAC,KAAK,CAAC,CAAC;SACzB;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,CACL,oBAAC,oBAAoB,IACnB,MAAM,EAAC,iBAAiB,EACxB,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,KAAK,EACpB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC,aAAa,CAAC,EAC/C,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EACvC,QAAQ,EAAE,QAAQ,KACd,IAAI;QAER,oBAAC,uBAAuB,IACtB,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,CAAC,KAAK,IAAI,IAAI,CAAQ,EAC7B,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAC,YAAY,EACrB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAC1B,kBAAkB,EAAE;gBAClB,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,EAAE,EAAE;gBAC1C,oBAAoB;aACrB,EACD,sBAAsB,EAAE;gBACtB,eAAe,CAAC,iBAAiB;oBAC/B,CAAC,CAAC;wBACE,KAAK,EAAE,eAAe,CAAC,iBAAiB;qBACzC;oBACH,CAAC,CAAC,EAAE;gBACN,eAAe,CAAC,gBAAgB;oBAC9B,CAAC,CAAC;wBACE,QAAQ,EAAE,eAAe,CAAC,gBAAgB;qBAC3C;oBACH,CAAC,CAAC,EAAE;aACP,EACD,sBAAsB,EAAE,oBAAoB,EAC5C,0BAA0B,EACxB,eAAe,CAAC,uBAAuB;gBACrC,CAAC,CAAC;oBACE,eAAe,EAAE,eAAe,CAAC,uBAAuB;iBACzD;gBACH,CAAC,CAAC,EAAE,EAER,sBAAsB,EAAE;gBACtB,WAAW,EAAE,mBAAmB;gBAChC,WAAW,EAAE,mBAAmB;gBAChC,YAAY,EAAE,oBAAoB;gBAClC,eAAe,EAAE,uBAAuB;aACzC,EACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,CACvB,oBAAC,IAAI,IACH,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,iBAAiB,GACxB,CACH,GACD,CACmB,CACxB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC,cAAc,CAAC,CAAC"}
|
|
@@ -15,6 +15,7 @@ import PickerInputContainer from "../PickerInputContainer";
|
|
|
15
15
|
import DropDownPickerComponent from "react-native-dropdown-picker";
|
|
16
16
|
import { withTheme } from "../../../theming";
|
|
17
17
|
import PickerItem, { PickerItemProps } from "./PickerItem";
|
|
18
|
+
import { useOnUpdate } from "../../../hooks";
|
|
18
19
|
|
|
19
20
|
const DropDownPicker: React.FC<
|
|
20
21
|
React.PropsWithChildren<
|
|
@@ -42,8 +43,8 @@ const DropDownPicker: React.FC<
|
|
|
42
43
|
}) => {
|
|
43
44
|
const [pickerVisible, setPickerVisible] = React.useState(false);
|
|
44
45
|
const [internalValue, setInternalValue] = React.useState<
|
|
45
|
-
string | number | (string | number)[]
|
|
46
|
-
>();
|
|
46
|
+
string | number | (string | number)[] | undefined
|
|
47
|
+
>(value);
|
|
47
48
|
|
|
48
49
|
const isMultiSelect = Array.isArray(value);
|
|
49
50
|
|
|
@@ -70,12 +71,11 @@ const DropDownPicker: React.FC<
|
|
|
70
71
|
[optionsProp]
|
|
71
72
|
);
|
|
72
73
|
|
|
73
|
-
|
|
74
|
+
useOnUpdate(() => {
|
|
74
75
|
onValueChange?.(
|
|
75
76
|
(isMultiSelect ? internalValue ?? [] : internalValue ?? "") as any // cannot determine if multiselect or not on compile time
|
|
76
77
|
);
|
|
77
78
|
// onValueChange excluded to prevent running on every re-render when using an anoymous function, which is the common case
|
|
78
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
79
79
|
}, [internalValue]);
|
|
80
80
|
|
|
81
81
|
React.useEffect(() => {
|