@prototyp/skeletor 1.1.5 → 1.1.6

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.
@@ -41,6 +41,7 @@ const InputFocusScrollView = ({
41
41
  const scrollTarget = (0, _react.useRef)(null);
42
42
  const elementOffset = (0, _react.useRef)(0);
43
43
  const contentHeight = (0, _react.useRef)(0);
44
+ const containerHeight = (0, _react.useRef)(0);
44
45
  /** Cached scroll position to keep focus on input if layout shifts. */
45
46
  const scrollPosition = (0, _react.useRef)(0);
46
47
  const focusOffset = (0, _react.useRef)(0);
@@ -57,21 +58,21 @@ const InputFocusScrollView = ({
57
58
  ref.current?.scrollTo({
58
59
  y: scrollY
59
60
  });
60
- }, () => console.error("failed to measure layout"));
61
+ }, () => console.warn("failed to measure layout"));
61
62
  }
62
63
  (0, _react.useEffect)(() => {
63
64
  const listener = _reactNative.Keyboard.addListener("keyboardWillHide", () => {
64
- const keyboardHeight = _reactNative.Keyboard.metrics()?.height || 0;
65
65
  if (scrollPosition.current < 0) ref.current?.scrollTo({
66
66
  y: 0
67
67
  });else {
68
- const leftoverSpace = contentHeight.current - elementOffset.current;
69
- // If we haven't reached scroll view overflow yet, do nothing
70
- if (leftoverSpace < keyboardHeight) ref.current?.scrollToEnd();
68
+ const remainingSpace = contentHeight.current - scrollPosition.current;
69
+ if (remainingSpace < containerHeight.current) {
70
+ ref.current?.scrollToEnd();
71
+ }
71
72
  }
72
73
  });
73
74
  return listener.remove;
74
- });
75
+ }, []);
75
76
  const gapProps = (0, _react.useMemo)(() => (0, _index.extractGapProperties)({
76
77
  gap
77
78
  }), [gap]);
@@ -84,9 +85,11 @@ const InputFocusScrollView = ({
84
85
  scrollToOverflowEnabled: true,
85
86
  scrollEventThrottle: 33,
86
87
  onLayout: ({
87
- currentTarget
88
+ currentTarget,
89
+ nativeEvent
88
90
  }) => {
89
91
  scrollTarget.current = currentTarget;
92
+ containerHeight.current = nativeEvent.layout.height;
90
93
  },
91
94
  onContentSizeChange: (_, height) => {
92
95
  contentHeight.current = height;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_index","_jsxRuntime","InputFocusScrollView","children","style","contentContainerStyle","height","focusPositionOffset","margins","paddings","gap","showsVerticalScrollIndicator","showsHorizontalScrollIndicator","bounces","rest","ref","useRef","scrollTarget","elementOffset","contentHeight","scrollPosition","focusOffset","onInputFocus","e","Platform","OS","current","currentTarget","measureLayout","_nope","top","_nuuh","elementHeight","undefined","Dimensions","get","scrollY","scrollTo","y","console","error","useEffect","listener","Keyboard","addListener","keyboardHeight","metrics","leftoverSpace","scrollToEnd","remove","gapProps","useMemo","extractGapProperties","normalizedMargins","normalizeMarginValues","normalizedPaddings","normalizePaddingValues","containerStyles","StyleSheet","flatten","styles","contentStyles","content","jsx","ScrollView","scrollToOverflowEnabled","scrollEventThrottle","onLayout","onContentSizeChange","_","exports","create","full","auto","flexGrow"],"sourceRoot":"../../../../src","sources":["components/InputFocusScrollView/InputFocusScrollView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_index","_jsxRuntime","InputFocusScrollView","children","style","contentContainerStyle","height","focusPositionOffset","margins","paddings","gap","showsVerticalScrollIndicator","showsHorizontalScrollIndicator","bounces","rest","ref","useRef","scrollTarget","elementOffset","contentHeight","containerHeight","scrollPosition","focusOffset","onInputFocus","e","Platform","OS","current","currentTarget","measureLayout","_nope","top","_nuuh","elementHeight","undefined","Dimensions","get","scrollY","scrollTo","y","console","warn","useEffect","listener","Keyboard","addListener","remainingSpace","scrollToEnd","remove","gapProps","useMemo","extractGapProperties","normalizedMargins","normalizeMarginValues","normalizedPaddings","normalizePaddingValues","containerStyles","StyleSheet","flatten","styles","contentStyles","content","jsx","ScrollView","scrollToOverflowEnabled","scrollEventThrottle","onLayout","nativeEvent","layout","onContentSizeChange","_","exports","create","full","auto","flexGrow"],"sourceRoot":"../../../../src","sources":["components/InputFocusScrollView/InputFocusScrollView.tsx"],"mappings":"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","ignoreList":[]}
@@ -37,6 +37,7 @@ export const InputFocusScrollView = ({
37
37
  const scrollTarget = useRef(null);
38
38
  const elementOffset = useRef(0);
39
39
  const contentHeight = useRef(0);
40
+ const containerHeight = useRef(0);
40
41
  /** Cached scroll position to keep focus on input if layout shifts. */
41
42
  const scrollPosition = useRef(0);
42
43
  const focusOffset = useRef(0);
@@ -53,21 +54,21 @@ export const InputFocusScrollView = ({
53
54
  ref.current?.scrollTo({
54
55
  y: scrollY
55
56
  });
56
- }, () => console.error("failed to measure layout"));
57
+ }, () => console.warn("failed to measure layout"));
57
58
  }
58
59
  useEffect(() => {
59
60
  const listener = Keyboard.addListener("keyboardWillHide", () => {
60
- const keyboardHeight = Keyboard.metrics()?.height || 0;
61
61
  if (scrollPosition.current < 0) ref.current?.scrollTo({
62
62
  y: 0
63
63
  });else {
64
- const leftoverSpace = contentHeight.current - elementOffset.current;
65
- // If we haven't reached scroll view overflow yet, do nothing
66
- if (leftoverSpace < keyboardHeight) ref.current?.scrollToEnd();
64
+ const remainingSpace = contentHeight.current - scrollPosition.current;
65
+ if (remainingSpace < containerHeight.current) {
66
+ ref.current?.scrollToEnd();
67
+ }
67
68
  }
68
69
  });
69
70
  return listener.remove;
70
- });
71
+ }, []);
71
72
  const gapProps = useMemo(() => extractGapProperties({
72
73
  gap
73
74
  }), [gap]);
@@ -80,9 +81,11 @@ export const InputFocusScrollView = ({
80
81
  scrollToOverflowEnabled: true,
81
82
  scrollEventThrottle: 33,
82
83
  onLayout: ({
83
- currentTarget
84
+ currentTarget,
85
+ nativeEvent
84
86
  }) => {
85
87
  scrollTarget.current = currentTarget;
88
+ containerHeight.current = nativeEvent.layout.height;
86
89
  },
87
90
  onContentSizeChange: (_, height) => {
88
91
  contentHeight.current = height;
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useMemo","useRef","Dimensions","Keyboard","Platform","ScrollView","StyleSheet","extractGapProperties","normalizeMarginValues","normalizePaddingValues","jsx","_jsx","InputFocusScrollView","children","style","contentContainerStyle","height","focusPositionOffset","margins","paddings","gap","showsVerticalScrollIndicator","showsHorizontalScrollIndicator","bounces","rest","ref","scrollTarget","elementOffset","contentHeight","scrollPosition","focusOffset","onInputFocus","e","OS","current","currentTarget","measureLayout","_nope","top","_nuuh","elementHeight","undefined","get","scrollY","scrollTo","y","console","error","listener","addListener","keyboardHeight","metrics","leftoverSpace","scrollToEnd","remove","gapProps","normalizedMargins","normalizedPaddings","containerStyles","flatten","styles","contentStyles","content","scrollToOverflowEnabled","scrollEventThrottle","onLayout","onContentSizeChange","_","create","full","auto","flexGrow"],"sourceRoot":"../../../../src","sources":["components/InputFocusScrollView/InputFocusScrollView.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,OAAO,EAAEC,MAAM,QAAQ,OAAO;AAClD,SACCC,UAAU,EACVC,QAAQ,EAGRC,QAAQ,EACRC,UAAU,EAEVC,UAAU,QAEJ,cAAc;AAGrB,SACCC,oBAAoB,EACpBC,qBAAqB,EACrBC,sBAAsB,QAChB,sBAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAcrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,oBAAyD,GAAGA,CAAC;EACzEC,QAAQ;EACRC,KAAK;EACLC,qBAAqB;EACrBC,MAAM,GAAG,MAAM;EACfC,mBAAmB,GAAG,GAAG;EACzBC,OAAO;EACPC,QAAQ;EACRC,GAAG;EACHC,4BAA4B,GAAG,KAAK;EACpCC,8BAA8B,GAAG,KAAK;EACtCC,OAAO,GAAG,KAAK;EACf,GAAGC;AACJ,CAAC,KAAK;EACL,MAAMC,GAAG,GAAGxB,MAAM,CAAa,IAAI,CAAC;EACpC,MAAMyB,YAAY,GAAGzB,MAAM,CAAgB,IAAI,CAAC;EAEhD,MAAM0B,aAAa,GAAG1B,MAAM,CAAC,CAAC,CAAC;EAC/B,MAAM2B,aAAa,GAAG3B,MAAM,CAAC,CAAC,CAAC;EAC/B;EACA,MAAM4B,cAAc,GAAG5B,MAAM,CAAC,CAAC,CAAC;EAChC,MAAM6B,WAAW,GAAG7B,MAAM,CAAC,CAAC,CAAC;EAE7B,SAAS8B,YAAYA,CAACC,CAAsC,EAAE;IAC7D,IAAI5B,QAAQ,CAAC6B,EAAE,KAAK,KAAK,IAAI,CAACP,YAAY,CAACQ,OAAO,EAAE;MACnD;IACD;IAEAF,CAAC,CAACG,aAAa,CAACC,aAAa,CAC5BV,YAAY,CAACQ,OAAO,EACpB,CAACG,KAAK,EAAEC,GAAG,EAAEC,KAAK,EAAEC,aAAa,KAAK;MACrCV,WAAW,CAACI,OAAO,GAClBjB,mBAAmB,KAAKwB,SAAS,GAC9BvC,UAAU,CAACwC,GAAG,CAAC,QAAQ,CAAC,CAAC1B,MAAM,GAAGC,mBAAmB,GACrD,CAAC;MACL;MACAU,aAAa,CAACO,OAAO,GAAGI,GAAG,GAAGE,aAAa;MAC3C,MAAMG,OAAO,GAAGhB,aAAa,CAACO,OAAO,GAAGJ,WAAW,CAACI,OAAO;MAC3DL,cAAc,CAACK,OAAO,GAAGS,OAAO;MAChClB,GAAG,CAACS,OAAO,EAAEU,QAAQ,CAAC;QAAEC,CAAC,EAAEF;MAAQ,CAAC,CAAC;IACtC,CAAC,EACD,MAAMG,OAAO,CAACC,KAAK,CAAC,0BAA0B,CAC/C,CAAC;EACF;EAEAhD,SAAS,CAAC,MAAM;IACf,MAAMiD,QAAQ,GAAG7C,QAAQ,CAAC8C,WAAW,CAAC,kBAAkB,EAAE,MAAM;MAC/D,MAAMC,cAAc,GAAG/C,QAAQ,CAACgD,OAAO,CAAC,CAAC,EAAEnC,MAAM,IAAI,CAAC;MACtD,IAAIa,cAAc,CAACK,OAAO,GAAG,CAAC,EAAET,GAAG,CAACS,OAAO,EAAEU,QAAQ,CAAC;QAAEC,CAAC,EAAE;MAAE,CAAC,CAAC,CAAC,KAC3D;QACJ,MAAMO,aAAa,GAAGxB,aAAa,CAACM,OAAO,GAAGP,aAAa,CAACO,OAAO;QACnE;QACA,IAAIkB,aAAa,GAAGF,cAAc,EAAEzB,GAAG,CAACS,OAAO,EAAEmB,WAAW,CAAC,CAAC;MAC/D;IACD,CAAC,CAAC;IAEF,OAAOL,QAAQ,CAACM,MAAM;EACvB,CAAC,CAAC;EAEF,MAAMC,QAAQ,GAAGvD,OAAO,CAAC,MAAMO,oBAAoB,CAAC;IAAEa;EAAI,CAAC,CAAC,EAAE,CAACA,GAAG,CAAC,CAAC;EACpE,MAAMoC,iBAAiB,GAAGxD,OAAO,CAChC,MAAMQ,qBAAqB,CAACU,OAAO,CAAC,EACpC,CAACA,OAAO,CACT,CAAC;EACD,MAAMuC,kBAAkB,GAAGzD,OAAO,CACjC,MAAMS,sBAAsB,CAACU,QAAQ,CAAC,EACtC,CAACA,QAAQ,CACV,CAAC;EAED,MAAMuC,eAAe,GAAGpD,UAAU,CAACqD,OAAO,CAAC,CAC1CC,MAAM,CAAC5C,MAAM,CAAC,EACdwC,iBAAiB,EACjB1C,KAAK,CACL,CAAC;EAEF,MAAM+C,aAAa,GAAGvD,UAAU,CAACqD,OAAO,CAAC,CACxCC,MAAM,CAACE,OAAO,EACdL,kBAAkB,EAClBF,QAAQ,EACRxC,qBAAqB,CACrB,CAAC;EAEF,oBACCJ,IAAA,CAACN,UAAU;IACVoB,GAAG,EAAEA,GAAI;IACTsC,uBAAuB;IACvBC,mBAAmB,EAAE,EAAG;IACxBC,QAAQ,EAAEA,CAAC;MAAE9B;IAAc,CAAC,KAAK;MAChCT,YAAY,CAACQ,OAAO,GAAGC,aAAa;IACrC,CAAE;IACF+B,mBAAmB,EAAEA,CAACC,CAAC,EAAEnD,MAAM,KAAK;MACnCY,aAAa,CAACM,OAAO,GAAGlB,MAAM;IAC/B,CAAE;IACFK,4BAA4B,EAAEA,4BAA6B;IAC3DC,8BAA8B,EAAEA,8BAA+B;IAC/DC,OAAO,EAAEA,OAAQ;IACjBT,KAAK,EAAE4C,eAAgB;IACvB3C,qBAAqB,EAAE8C,aAAc;IAAA,GACjCrC,IAAI;IAAAX,QAAA,EAEPA,QAAQ,CAACkB,YAAY;EAAC,CACZ,CAAC;AAEf,CAAC;AAED,MAAM6B,MAAM,GAAGtD,UAAU,CAAC8D,MAAM,CAAC;EAChCC,IAAI,EAAE;IAAErD,MAAM,EAAE;EAAO,CAAC;EACxBsD,IAAI,EAAE;IAAEtD,MAAM,EAAE;EAAO,CAAC;EACxB8C,OAAO,EAAE;IAAES,QAAQ,EAAE;EAAE;AACxB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useMemo","useRef","Dimensions","Keyboard","Platform","ScrollView","StyleSheet","extractGapProperties","normalizeMarginValues","normalizePaddingValues","jsx","_jsx","InputFocusScrollView","children","style","contentContainerStyle","height","focusPositionOffset","margins","paddings","gap","showsVerticalScrollIndicator","showsHorizontalScrollIndicator","bounces","rest","ref","scrollTarget","elementOffset","contentHeight","containerHeight","scrollPosition","focusOffset","onInputFocus","e","OS","current","currentTarget","measureLayout","_nope","top","_nuuh","elementHeight","undefined","get","scrollY","scrollTo","y","console","warn","listener","addListener","remainingSpace","scrollToEnd","remove","gapProps","normalizedMargins","normalizedPaddings","containerStyles","flatten","styles","contentStyles","content","scrollToOverflowEnabled","scrollEventThrottle","onLayout","nativeEvent","layout","onContentSizeChange","_","create","full","auto","flexGrow"],"sourceRoot":"../../../../src","sources":["components/InputFocusScrollView/InputFocusScrollView.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,6 @@ import type { Spacing } from "../../models";
3
3
  export interface InputFocusScrollViewProps extends Omit<ScrollViewProps, "children">, Spacing {
4
4
  /** Percentage of screen to add to element position. Values between 0 and 1. Use this if you want to position the input focus somewhere other than the top of the screen. Defaults to 0.3 */
5
5
  focusPositionOffset?: number;
6
- offsetFromKeyboard?: number;
7
6
  height?: "full" | "auto";
8
7
  children: (onInputFocus: (e: NativeSyntheticEvent<TargetedEvent>) => void) => React.ReactNode;
9
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InputFocusScrollView.d.ts","sourceRoot":"","sources":["../../../../../src/components/InputFocusScrollView/InputFocusScrollView.tsx"],"names":[],"mappings":"AACA,OAAO,EAIN,KAAK,oBAAoB,EAGzB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAClB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAO5C,MAAM,WAAW,yBAChB,SAAQ,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,EACxC,OAAO;IACR,4LAA4L;IAC5L,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,QAAQ,EAAE,CACT,YAAY,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,aAAa,CAAC,KAAK,IAAI,KAC1D,KAAK,CAAC,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAuGpE,CAAC"}
1
+ {"version":3,"file":"InputFocusScrollView.d.ts","sourceRoot":"","sources":["../../../../../src/components/InputFocusScrollView/InputFocusScrollView.tsx"],"names":[],"mappings":"AACA,OAAO,EAIN,KAAK,oBAAoB,EAGzB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAClB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAO5C,MAAM,WAAW,yBAChB,SAAQ,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,EACxC,OAAO;IACR,4LAA4L;IAC5L,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,QAAQ,EAAE,CACT,YAAY,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,aAAa,CAAC,KAAK,IAAI,KAC1D,KAAK,CAAC,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAyGpE,CAAC"}
@@ -3,7 +3,6 @@ import type { Spacing } from "../../models";
3
3
  export interface InputFocusScrollViewProps extends Omit<ScrollViewProps, "children">, Spacing {
4
4
  /** Percentage of screen to add to element position. Values between 0 and 1. Use this if you want to position the input focus somewhere other than the top of the screen. Defaults to 0.3 */
5
5
  focusPositionOffset?: number;
6
- offsetFromKeyboard?: number;
7
6
  height?: "full" | "auto";
8
7
  children: (onInputFocus: (e: NativeSyntheticEvent<TargetedEvent>) => void) => React.ReactNode;
9
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InputFocusScrollView.d.ts","sourceRoot":"","sources":["../../../../../src/components/InputFocusScrollView/InputFocusScrollView.tsx"],"names":[],"mappings":"AACA,OAAO,EAIN,KAAK,oBAAoB,EAGzB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAClB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAO5C,MAAM,WAAW,yBAChB,SAAQ,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,EACxC,OAAO;IACR,4LAA4L;IAC5L,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,QAAQ,EAAE,CACT,YAAY,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,aAAa,CAAC,KAAK,IAAI,KAC1D,KAAK,CAAC,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAuGpE,CAAC"}
1
+ {"version":3,"file":"InputFocusScrollView.d.ts","sourceRoot":"","sources":["../../../../../src/components/InputFocusScrollView/InputFocusScrollView.tsx"],"names":[],"mappings":"AACA,OAAO,EAIN,KAAK,oBAAoB,EAGzB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAClB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAO5C,MAAM,WAAW,yBAChB,SAAQ,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,EACxC,OAAO;IACR,4LAA4L;IAC5L,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,QAAQ,EAAE,CACT,YAAY,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,aAAa,CAAC,KAAK,IAAI,KAC1D,KAAK,CAAC,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAyGpE,CAAC"}
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "Luka Buljan <luka@prototyp.digital>",
7
7
  "Vlatko Vlahek <vlatko@prototyp.digital>"
8
8
  ],
9
- "version": "1.1.5",
9
+ "version": "1.1.6",
10
10
  "license": "MIT",
11
11
  "main": "./lib/commonjs/index.js",
12
12
  "module": "./lib/module/index.js",