@r0b0t3d/react-native-collapsible 1.5.0-alpha.6 → 1.5.0-alpha.7
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/CollapsibleContainer.js +34 -11
- package/lib/commonjs/components/CollapsibleContainer.js.map +1 -1
- package/lib/module/components/CollapsibleContainer.js +34 -11
- package/lib/module/components/CollapsibleContainer.js.map +1 -1
- package/lib/typescript/components/CollapsibleContainer.d.ts +1 -1
- package/lib/typescript/components/CollapsibleContainer.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/CollapsibleContainer.tsx +37 -9
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = CollapsibleContainerWrapper;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
9
|
var _useKeyboardShowEvent = _interopRequireDefault(require("../hooks/useKeyboardShowEvent"));
|
|
@@ -19,8 +19,7 @@ function CollapsibleContainer(_ref) {
|
|
|
19
19
|
children,
|
|
20
20
|
KeyboardAvoidingViewComponent = _reactNative.KeyboardAvoidingView,
|
|
21
21
|
keyboardAvoidingViewProps,
|
|
22
|
-
textInputRefs = []
|
|
23
|
-
...props
|
|
22
|
+
textInputRefs = []
|
|
24
23
|
} = _ref;
|
|
25
24
|
const {
|
|
26
25
|
containerHeight,
|
|
@@ -47,20 +46,44 @@ function CollapsibleContainer(_ref) {
|
|
|
47
46
|
return isFocused;
|
|
48
47
|
});
|
|
49
48
|
});
|
|
49
|
+
return /*#__PURE__*/_react.default.createElement(KeyboardAvoidingViewComponent, _extends({
|
|
50
|
+
style: styles.container,
|
|
51
|
+
behavior: "padding"
|
|
52
|
+
}, keyboardAvoidingViewProps), children);
|
|
53
|
+
}
|
|
54
|
+
function CollapsibleContainerWrapper(_ref2) {
|
|
55
|
+
let {
|
|
56
|
+
children,
|
|
57
|
+
textInputRefs,
|
|
58
|
+
keyboardAvoidingViewProps,
|
|
59
|
+
KeyboardAvoidingViewComponent,
|
|
60
|
+
...props
|
|
61
|
+
} = _ref2;
|
|
62
|
+
const {
|
|
63
|
+
containerHeight,
|
|
64
|
+
containerRef
|
|
65
|
+
} = (0, _useInternalCollapsibleContext.default)();
|
|
50
66
|
(0, _react.useLayoutEffect)(() => {
|
|
51
67
|
const {
|
|
52
68
|
height
|
|
53
69
|
} = containerRef.current.unstable_getBoundingClientRect();
|
|
54
70
|
containerHeight.value = height;
|
|
55
71
|
}, []);
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
72
|
+
function renderContent() {
|
|
73
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, _extends({}, props, {
|
|
74
|
+
ref: containerRef,
|
|
75
|
+
style: [styles.container, props.style],
|
|
76
|
+
collapsable: false
|
|
77
|
+
}), /*#__PURE__*/_react.default.createElement(_CollapsibleHeaderConsumer.default, null, children));
|
|
78
|
+
}
|
|
79
|
+
if (textInputRefs && textInputRefs.length > 0) {
|
|
80
|
+
return /*#__PURE__*/_react.default.createElement(CollapsibleContainer, {
|
|
81
|
+
textInputRefs: textInputRefs,
|
|
82
|
+
keyboardAvoidingViewProps: keyboardAvoidingViewProps,
|
|
83
|
+
KeyboardAvoidingViewComponent: KeyboardAvoidingViewComponent
|
|
84
|
+
}, renderContent());
|
|
85
|
+
}
|
|
86
|
+
return renderContent();
|
|
64
87
|
}
|
|
65
88
|
const styles = _reactNative.StyleSheet.create({
|
|
66
89
|
container: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useKeyboardShowEvent","_interopRequireDefault","_useInternalCollapsibleContext","_useCollapsibleContext","_CollapsibleHeaderConsumer","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","CollapsibleContainer","_ref","children","KeyboardAvoidingViewComponent","KeyboardAvoidingView","keyboardAvoidingViewProps","textInputRefs","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useKeyboardShowEvent","_interopRequireDefault","_useInternalCollapsibleContext","_useCollapsibleContext","_CollapsibleHeaderConsumer","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","CollapsibleContainer","_ref","children","KeyboardAvoidingViewComponent","KeyboardAvoidingView","keyboardAvoidingViewProps","textInputRefs","containerHeight","containerRef","useInternalCollapsibleContext","scrollY","scrollTo","useCollapsibleContext","useKeyboardShowEvent","some","ref","isFocusedFunc","current","isFocused","measureLayout","_left","top","_width","height","value","extraOffset","keyboardVerticalOffset","createElement","style","styles","container","behavior","CollapsibleContainerWrapper","_ref2","props","useLayoutEffect","unstable_getBoundingClientRect","renderContent","View","collapsable","StyleSheet","create","flex","overflow"],"sourceRoot":"../../../src","sources":["components/CollapsibleContainer.tsx"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAOA,IAAAE,qBAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,8BAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,sBAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,0BAAA,GAAAH,sBAAA,CAAAH,OAAA;AAA2E,SAAAG,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAZ,wBAAAQ,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA,KAZ3E;AAqBA,SAASI,oBAAoBA,CAAAC,IAAA,EAKnB;EAAA,IALoB;IAC5BC,QAAQ;IACRC,6BAA6B,GAAGC,iCAAoB;IACpDC,yBAAyB;IACzBC,aAAa,GAAG;EACX,CAAC,GAAAL,IAAA;EACN,MAAM;IAAEM,eAAe;IAAEC;EAAa,CAAC,GAAG,IAAAC,sCAA6B,EAAC,CAAC;EACzE,MAAM;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAG,IAAAC,8BAAqB,EAAC,CAAC;EAErD,IAAAC,6BAAoB,EAAC,MAAM;IACzBP,aAAa,CAACQ,IAAI,CAAEC,GAAG,IAAK;MAC1B,MAAMC,aAAa,GAAGD,GAAG,CAACE,OAAO,CAACC,SAAS;MAC3C,MAAMA,SAAS,GACbF,aAAa,IAAI,OAAOA,aAAa,KAAK,UAAU,GAChDA,aAAa,CAAC,CAAC,GACfA,aAAa;MACnB,IAAIE,SAAS,EAAE;QACbH,GAAG,CAACE,OAAO,CAACE,aAAa;QACvB;QACAX,YAAY,CAACS,OAAO,EACpB,CAACG,KAAa,EAAEC,GAAW,EAAEC,MAAc,EAAEC,MAAc,KAAK;UAC9D,IAAIF,GAAG,GAAGE,MAAM,GAAGb,OAAO,CAACc,KAAK,GAAGjB,eAAe,CAACiB,KAAK,EAAE;YACxD,MAAMC,WAAW,GACf,CAAApB,yBAAyB,aAAzBA,yBAAyB,uBAAzBA,yBAAyB,CAAEqB,sBAAsB,KAAI,EAAE;YACzDf,QAAQ,CAACU,GAAG,GAAGE,MAAM,GAAGE,WAAW,GAAGlB,eAAe,CAACiB,KAAK,CAAC;UAC9D;QACF,CAAC,EACD,MAAM,CAAC,CACT,CAAC;MACH;MACA,OAAON,SAAS;IAClB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,oBACE1D,MAAA,CAAAW,OAAA,CAAAwD,aAAA,CAACxB,6BAA6B,EAAAZ,QAAA;IAC5BqC,KAAK,EAAEC,MAAM,CAACC,SAAU;IACxBC,QAAQ,EAAC;EAAS,GACd1B,yBAAyB,GAE5BH,QAC4B,CAAC;AAEpC;AAEe,SAAS8B,2BAA2BA,CAAAC,KAAA,EAMzC;EAAA,IAN0C;IAClD/B,QAAQ;IACRI,aAAa;IACbD,yBAAyB;IACzBF,6BAA6B;IAC7B,GAAG+B;EACE,CAAC,GAAAD,KAAA;EACN,MAAM;IAAE1B,eAAe;IAAEC;EAAa,CAAC,GAAG,IAAAC,sCAA6B,EAAC,CAAC;EAEzE,IAAA0B,sBAAe,EAAC,MAAM;IACpB,MAAM;MAAEZ;IAAO,CAAC,GAAGf,YAAY,CAACS,OAAO,CAACmB,8BAA8B,CAAC,CAAC;IACxE7B,eAAe,CAACiB,KAAK,GAAGD,MAAM;EAChC,CAAC,EAAE,EAAE,CAAC;EAEN,SAASc,aAAaA,CAAA,EAAG;IACvB,oBACE7E,MAAA,CAAAW,OAAA,CAAAwD,aAAA,CAAChE,YAAA,CAAA2E,IAAI,EAAA/C,QAAA,KACC2C,KAAK;MACTnB,GAAG,EAAEP,YAAa;MAClBoB,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAEI,KAAK,CAACN,KAAK,CAAE;MACvCW,WAAW,EAAE;IAAM,iBAEnB/E,MAAA,CAAAW,OAAA,CAAAwD,aAAA,CAAC3D,0BAAA,CAAAG,OAAyB,QAAE+B,QAAoC,CAC5D,CAAC;EAEX;EAEA,IAAII,aAAa,IAAIA,aAAa,CAACT,MAAM,GAAG,CAAC,EAAE;IAC7C,oBACErC,MAAA,CAAAW,OAAA,CAAAwD,aAAA,CAAC3B,oBAAoB;MACnBM,aAAa,EAAEA,aAAc;MAC7BD,yBAAyB,EAAEA,yBAA0B;MACrDF,6BAA6B,EAAEA;IAA8B,GAE5DkC,aAAa,CAAC,CACK,CAAC;EAE3B;EACA,OAAOA,aAAa,CAAC,CAAC;AACxB;AAEA,MAAMR,MAAM,GAAGW,uBAAU,CAACC,MAAM,CAAC;EAC/BX,SAAS,EAAE;IACTY,IAAI,EAAE,CAAC;IACPC,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC"}
|
|
@@ -6,13 +6,12 @@ import useKeyboardShowEvent from '../hooks/useKeyboardShowEvent';
|
|
|
6
6
|
import useInternalCollapsibleContext from '../hooks/useInternalCollapsibleContext';
|
|
7
7
|
import useCollapsibleContext from '../hooks/useCollapsibleContext';
|
|
8
8
|
import CollapsibleHeaderConsumer from './header/CollapsibleHeaderConsumer';
|
|
9
|
-
|
|
9
|
+
function CollapsibleContainer(_ref) {
|
|
10
10
|
let {
|
|
11
11
|
children,
|
|
12
12
|
KeyboardAvoidingViewComponent = KeyboardAvoidingView,
|
|
13
13
|
keyboardAvoidingViewProps,
|
|
14
|
-
textInputRefs = []
|
|
15
|
-
...props
|
|
14
|
+
textInputRefs = []
|
|
16
15
|
} = _ref;
|
|
17
16
|
const {
|
|
18
17
|
containerHeight,
|
|
@@ -39,20 +38,44 @@ export default function CollapsibleContainer(_ref) {
|
|
|
39
38
|
return isFocused;
|
|
40
39
|
});
|
|
41
40
|
});
|
|
41
|
+
return /*#__PURE__*/React.createElement(KeyboardAvoidingViewComponent, _extends({
|
|
42
|
+
style: styles.container,
|
|
43
|
+
behavior: "padding"
|
|
44
|
+
}, keyboardAvoidingViewProps), children);
|
|
45
|
+
}
|
|
46
|
+
export default function CollapsibleContainerWrapper(_ref2) {
|
|
47
|
+
let {
|
|
48
|
+
children,
|
|
49
|
+
textInputRefs,
|
|
50
|
+
keyboardAvoidingViewProps,
|
|
51
|
+
KeyboardAvoidingViewComponent,
|
|
52
|
+
...props
|
|
53
|
+
} = _ref2;
|
|
54
|
+
const {
|
|
55
|
+
containerHeight,
|
|
56
|
+
containerRef
|
|
57
|
+
} = useInternalCollapsibleContext();
|
|
42
58
|
useLayoutEffect(() => {
|
|
43
59
|
const {
|
|
44
60
|
height
|
|
45
61
|
} = containerRef.current.unstable_getBoundingClientRect();
|
|
46
62
|
containerHeight.value = height;
|
|
47
63
|
}, []);
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
64
|
+
function renderContent() {
|
|
65
|
+
return /*#__PURE__*/React.createElement(View, _extends({}, props, {
|
|
66
|
+
ref: containerRef,
|
|
67
|
+
style: [styles.container, props.style],
|
|
68
|
+
collapsable: false
|
|
69
|
+
}), /*#__PURE__*/React.createElement(CollapsibleHeaderConsumer, null, children));
|
|
70
|
+
}
|
|
71
|
+
if (textInputRefs && textInputRefs.length > 0) {
|
|
72
|
+
return /*#__PURE__*/React.createElement(CollapsibleContainer, {
|
|
73
|
+
textInputRefs: textInputRefs,
|
|
74
|
+
keyboardAvoidingViewProps: keyboardAvoidingViewProps,
|
|
75
|
+
KeyboardAvoidingViewComponent: KeyboardAvoidingViewComponent
|
|
76
|
+
}, renderContent());
|
|
77
|
+
}
|
|
78
|
+
return renderContent();
|
|
56
79
|
}
|
|
57
80
|
const styles = StyleSheet.create({
|
|
58
81
|
container: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useLayoutEffect","KeyboardAvoidingView","StyleSheet","View","useKeyboardShowEvent","useInternalCollapsibleContext","useCollapsibleContext","CollapsibleHeaderConsumer","CollapsibleContainer","_ref","children","KeyboardAvoidingViewComponent","keyboardAvoidingViewProps","textInputRefs","
|
|
1
|
+
{"version":3,"names":["React","useLayoutEffect","KeyboardAvoidingView","StyleSheet","View","useKeyboardShowEvent","useInternalCollapsibleContext","useCollapsibleContext","CollapsibleHeaderConsumer","CollapsibleContainer","_ref","children","KeyboardAvoidingViewComponent","keyboardAvoidingViewProps","textInputRefs","containerHeight","containerRef","scrollY","scrollTo","some","ref","isFocusedFunc","current","isFocused","measureLayout","_left","top","_width","height","value","extraOffset","keyboardVerticalOffset","createElement","_extends","style","styles","container","behavior","CollapsibleContainerWrapper","_ref2","props","unstable_getBoundingClientRect","renderContent","collapsable","length","create","flex","overflow"],"sourceRoot":"../../../src","sources":["components/CollapsibleContainer.tsx"],"mappings":"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"}
|
|
@@ -6,6 +6,6 @@ type Props = Omit<ViewProps, 'ref' | 'onLayout'> & {
|
|
|
6
6
|
keyboardAvoidingViewProps?: KeyboardAvoidingViewProps;
|
|
7
7
|
textInputRefs?: any[];
|
|
8
8
|
};
|
|
9
|
-
export default function
|
|
9
|
+
export default function CollapsibleContainerWrapper({ children, textInputRefs, keyboardAvoidingViewProps, KeyboardAvoidingViewComponent, ...props }: Props): React.JSX.Element;
|
|
10
10
|
export {};
|
|
11
11
|
//# sourceMappingURL=CollapsibleContainer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CollapsibleContainer.d.ts","sourceRoot":"","sources":["../../../src/components/CollapsibleContainer.tsx"],"names":[],"mappings":"AACA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAC/C,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EAGzB,SAAS,EACV,MAAM,cAAc,CAAC;AAMtB,KAAK,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,UAAU,CAAC,GAAG;IACjD,QAAQ,EAAE,OAAO,CAAC;IAClB,6BAA6B,CAAC,EAAE,OAAO,oBAAoB,CAAC;IAC5D,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IACtD,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;CACvB,CAAC;
|
|
1
|
+
{"version":3,"file":"CollapsibleContainer.d.ts","sourceRoot":"","sources":["../../../src/components/CollapsibleContainer.tsx"],"names":[],"mappings":"AACA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAC/C,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EAGzB,SAAS,EACV,MAAM,cAAc,CAAC;AAMtB,KAAK,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,UAAU,CAAC,GAAG;IACjD,QAAQ,EAAE,OAAO,CAAC;IAClB,6BAA6B,CAAC,EAAE,OAAO,oBAAoB,CAAC;IAC5D,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IACtD,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;CACvB,CAAC;AA+CF,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,EAClD,QAAQ,EACR,aAAa,EACb,yBAAyB,EACzB,6BAA6B,EAC7B,GAAG,KAAK,EACT,EAAE,KAAK,qBAiCP"}
|
package/package.json
CHANGED
|
@@ -19,12 +19,11 @@ type Props = Omit<ViewProps, 'ref' | 'onLayout'> & {
|
|
|
19
19
|
textInputRefs?: any[];
|
|
20
20
|
};
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
function CollapsibleContainer({
|
|
23
23
|
children,
|
|
24
24
|
KeyboardAvoidingViewComponent = KeyboardAvoidingView,
|
|
25
25
|
keyboardAvoidingViewProps,
|
|
26
26
|
textInputRefs = [],
|
|
27
|
-
...props
|
|
28
27
|
}: Props) {
|
|
29
28
|
const { containerHeight, containerRef } = useInternalCollapsibleContext();
|
|
30
29
|
const { scrollY, scrollTo } = useCollapsibleContext();
|
|
@@ -54,17 +53,33 @@ export default function CollapsibleContainer({
|
|
|
54
53
|
});
|
|
55
54
|
});
|
|
56
55
|
|
|
57
|
-
useLayoutEffect(() => {
|
|
58
|
-
const { height } = containerRef.current.unstable_getBoundingClientRect();
|
|
59
|
-
containerHeight.value = height;
|
|
60
|
-
}, []);
|
|
61
|
-
|
|
62
56
|
return (
|
|
63
57
|
<KeyboardAvoidingViewComponent
|
|
64
58
|
style={styles.container}
|
|
65
59
|
behavior="padding"
|
|
66
60
|
{...keyboardAvoidingViewProps}
|
|
67
61
|
>
|
|
62
|
+
{children}
|
|
63
|
+
</KeyboardAvoidingViewComponent>
|
|
64
|
+
);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export default function CollapsibleContainerWrapper({
|
|
68
|
+
children,
|
|
69
|
+
textInputRefs,
|
|
70
|
+
keyboardAvoidingViewProps,
|
|
71
|
+
KeyboardAvoidingViewComponent,
|
|
72
|
+
...props
|
|
73
|
+
}: Props) {
|
|
74
|
+
const { containerHeight, containerRef } = useInternalCollapsibleContext();
|
|
75
|
+
|
|
76
|
+
useLayoutEffect(() => {
|
|
77
|
+
const { height } = containerRef.current.unstable_getBoundingClientRect();
|
|
78
|
+
containerHeight.value = height;
|
|
79
|
+
}, []);
|
|
80
|
+
|
|
81
|
+
function renderContent() {
|
|
82
|
+
return (
|
|
68
83
|
<View
|
|
69
84
|
{...props}
|
|
70
85
|
ref={containerRef}
|
|
@@ -73,8 +88,21 @@ export default function CollapsibleContainer({
|
|
|
73
88
|
>
|
|
74
89
|
<CollapsibleHeaderConsumer>{children}</CollapsibleHeaderConsumer>
|
|
75
90
|
</View>
|
|
76
|
-
|
|
77
|
-
|
|
91
|
+
);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
if (textInputRefs && textInputRefs.length > 0) {
|
|
95
|
+
return (
|
|
96
|
+
<CollapsibleContainer
|
|
97
|
+
textInputRefs={textInputRefs}
|
|
98
|
+
keyboardAvoidingViewProps={keyboardAvoidingViewProps}
|
|
99
|
+
KeyboardAvoidingViewComponent={KeyboardAvoidingViewComponent}
|
|
100
|
+
>
|
|
101
|
+
{renderContent()}
|
|
102
|
+
</CollapsibleContainer>
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
return renderContent();
|
|
78
106
|
}
|
|
79
107
|
|
|
80
108
|
const styles = StyleSheet.create({
|