@pagopa/io-app-design-system 5.11.1 → 5.11.3

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.
Files changed (38) hide show
  1. package/lib/commonjs/components/layout/index.js +0 -22
  2. package/lib/commonjs/components/layout/index.js.map +1 -1
  3. package/lib/commonjs/components/templates/ForceScrollDownView.js +13 -5
  4. package/lib/commonjs/components/templates/ForceScrollDownView.js.map +1 -1
  5. package/lib/commonjs/components/templates/__test__/__snapshots__/ForceScrollDownView.test.tsx.snap +1 -0
  6. package/lib/commonjs/components/typography/BodySmall.js +3 -1
  7. package/lib/commonjs/components/typography/BodySmall.js.map +1 -1
  8. package/lib/module/components/layout/index.js +0 -2
  9. package/lib/module/components/layout/index.js.map +1 -1
  10. package/lib/module/components/templates/ForceScrollDownView.js +15 -7
  11. package/lib/module/components/templates/ForceScrollDownView.js.map +1 -1
  12. package/lib/module/components/templates/__test__/__snapshots__/ForceScrollDownView.test.tsx.snap +1 -0
  13. package/lib/module/components/typography/BodySmall.js +3 -1
  14. package/lib/module/components/typography/BodySmall.js.map +1 -1
  15. package/lib/typescript/components/layout/index.d.ts +0 -2
  16. package/lib/typescript/components/layout/index.d.ts.map +1 -1
  17. package/lib/typescript/components/templates/ForceScrollDownView.d.ts +7 -1
  18. package/lib/typescript/components/templates/ForceScrollDownView.d.ts.map +1 -1
  19. package/lib/typescript/components/typography/BodySmall.d.ts.map +1 -1
  20. package/package.json +1 -1
  21. package/src/components/layout/index.tsx +0 -2
  22. package/src/components/templates/ForceScrollDownView.tsx +23 -8
  23. package/src/components/templates/__test__/__snapshots__/ForceScrollDownView.test.tsx.snap +1 -0
  24. package/src/components/typography/BodySmall.tsx +7 -2
  25. package/lib/commonjs/components/layout/GradientBottomActions.js +0 -121
  26. package/lib/commonjs/components/layout/GradientBottomActions.js.map +0 -1
  27. package/lib/commonjs/components/layout/GradientScrollView.js +0 -116
  28. package/lib/commonjs/components/layout/GradientScrollView.js.map +0 -1
  29. package/lib/module/components/layout/GradientBottomActions.js +0 -114
  30. package/lib/module/components/layout/GradientBottomActions.js.map +0 -1
  31. package/lib/module/components/layout/GradientScrollView.js +0 -109
  32. package/lib/module/components/layout/GradientScrollView.js.map +0 -1
  33. package/lib/typescript/components/layout/GradientBottomActions.d.ts +0 -33
  34. package/lib/typescript/components/layout/GradientBottomActions.d.ts.map +0 -1
  35. package/lib/typescript/components/layout/GradientScrollView.d.ts +0 -19
  36. package/lib/typescript/components/layout/GradientScrollView.d.ts.map +0 -1
  37. package/src/components/layout/GradientBottomActions.tsx +0 -143
  38. package/src/components/layout/GradientScrollView.tsx +0 -173
@@ -47,28 +47,6 @@ Object.keys(_FooterActionsInline).forEach(function (key) {
47
47
  }
48
48
  });
49
49
  });
50
- var _GradientBottomActions = require("./GradientBottomActions");
51
- Object.keys(_GradientBottomActions).forEach(function (key) {
52
- if (key === "default" || key === "__esModule") return;
53
- if (key in exports && exports[key] === _GradientBottomActions[key]) return;
54
- Object.defineProperty(exports, key, {
55
- enumerable: true,
56
- get: function () {
57
- return _GradientBottomActions[key];
58
- }
59
- });
60
- });
61
- var _GradientScrollView = require("./GradientScrollView");
62
- Object.keys(_GradientScrollView).forEach(function (key) {
63
- if (key === "default" || key === "__esModule") return;
64
- if (key in exports && exports[key] === _GradientScrollView[key]) return;
65
- Object.defineProperty(exports, key, {
66
- enumerable: true,
67
- get: function () {
68
- return _GradientScrollView[key];
69
- }
70
- });
71
- });
72
50
  var _hooks = require("./hooks");
73
51
  Object.keys(_hooks).forEach(function (key) {
74
52
  if (key === "default" || key === "__esModule") return;
@@ -1 +1 @@
1
- {"version":3,"names":["_ContentWrapper","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Divider","_FooterActions","_FooterActionsInline","_GradientBottomActions","_GradientScrollView","_hooks","_Spacer","_Stack"],"sourceRoot":"../../../../src","sources":["components/layout/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_ContentWrapper","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Divider","_FooterActions","_FooterActionsInline","_hooks","_Spacer","_Stack"],"sourceRoot":"../../../../src","sources":["components/layout/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.ForceScrollDownView = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
9
10
  var _core = require("../../core");
10
11
  var _buttons = require("../buttons");
11
12
  var _ScaleInOutAnimation = require("../common/ScaleInOutAnimation");
@@ -25,9 +26,11 @@ const ForceScrollDownView = ({
25
26
  style,
26
27
  contentContainerStyle,
27
28
  scrollEnabled = true,
28
- onThresholdCrossed
29
+ onThresholdCrossed,
30
+ animatedRef
29
31
  }) => {
30
- const scrollViewRef = (0, _react.useRef)(null);
32
+ const internalAnimatedRef = (0, _reactNativeReanimated.useAnimatedRef)();
33
+ const scrollViewRef = animatedRef ?? internalAnimatedRef;
31
34
  const {
32
35
  footerActionsInlineMeasurements,
33
36
  handleFooterActionsInlineMeasurements
@@ -104,8 +107,13 @@ const ForceScrollDownView = ({
104
107
  */
105
108
  const handleScrollDownPress = (0, _react.useCallback)(() => {
106
109
  setButtonVisible(false);
107
- scrollViewRef.current?.scrollToEnd();
108
- }, [scrollViewRef]);
110
+ const targetY = Math.max(0, contentHeight - scrollViewHeight);
111
+ (0, _reactNativeReanimated.runOnUI)(y => {
112
+ "worklet";
113
+
114
+ (0, _reactNativeReanimated.scrollTo)(scrollViewRef, 0, y, true);
115
+ })(targetY);
116
+ }, [scrollViewRef, contentHeight, scrollViewHeight]);
109
117
 
110
118
  /**
111
119
  * Whether or not the "scroll to bottom" button needs to be displayed. It is only displayed
@@ -136,7 +144,7 @@ const ForceScrollDownView = ({
136
144
  })
137
145
  });
138
146
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
139
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.ScrollView, {
147
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.ScrollView, {
140
148
  testID: "ScrollView",
141
149
  ref: scrollViewRef,
142
150
  scrollEnabled: scrollEnabled,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_core","_buttons","_ScaleInOutAnimation","_layout","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ForceScrollDownView","footerActions","children","threshold","customThreshold","style","contentContainerStyle","scrollEnabled","onThresholdCrossed","scrollViewRef","useRef","footerActionsInlineMeasurements","handleFooterActionsInlineMeasurements","useFooterActionsInlineMeasurements","safeBottomAreaHeight","scrollViewHeight","setScrollViewHeight","useState","contentHeight","setContentHeight","isThresholdCrossed","setThresholdCrossed","isButtonVisible","setButtonVisible","handleScroll","useCallback","event","layoutMeasurement","contentOffset","contentSize","nativeEvent","thresholdCrossed","height","y","useEffect","handleContentSizeChange","_contentWidth","handleLayout","layout","handleScrollDownPress","current","scrollToEnd","needsScroll","useMemo","shouldRenderScrollButton","scrollDownButton","jsx","ScaleInOutAnimation","springConfig","IOSpringValues","button","styles","visible","IconButtonSolid","testID","accessibilityLabel","icon","onPress","jsxs","Fragment","ScrollView","ref","onScroll","scrollEventThrottle","onLayout","onContentSizeChange","FooterActions","onMeasure","fixed","exports","StyleSheet","create","position","zIndex","right","IOVisualCostants","scrollDownButtonRight","bottom","scrollDownButtonBottom"],"sourceRoot":"../../../../src","sources":["components/templates/ForceScrollDownView.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AASA,IAAAC,YAAA,GAAAD,OAAA;AAQA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,oBAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAA8E,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAD,wBAAAQ,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAQ,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AA0C9E;AACA;AACA;AACA;AACA;AACA;AACA,MAAMkB,mBAAmB,GAAGA,CAAC;EAC3BC,aAAa;EACbC,QAAQ;EACRC,SAAS,EAAEC,eAAe;EAC1BC,KAAK;EACLC,qBAAqB;EACrBC,aAAa,GAAG,IAAI;EACpBC;AACmB,CAAC,KAAK;EACzB,MAAMC,aAAa,GAAG,IAAAC,aAAM,EAAa,IAAI,CAAC;EAE9C,MAAM;IACJC,+BAA+B;IAC/BC;EACF,CAAC,GAAG,IAAAC,0CAAkC,EAAC,CAAC;EAExC,MAAMV,SAAS,GAAGF,aAAa,GAC3BU,+BAA+B,CAACG,oBAAoB,GACpDV,eAAe;;EAEnB;AACF;AACA;AACA;EACE,MAAM,CAACW,gBAAgB,EAAEC,mBAAmB,CAAC,GAAG,IAAAC,eAAQ,EAAS,CAAC,CAAC;;EAEnE;AACF;AACA;AACA;EACE,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAF,eAAQ,EAAS,CAAC,CAAC;;EAE7D;AACF;AACA;EACE,MAAM,CAACG,kBAAkB,EAAEC,mBAAmB,CAAC,GAAG,IAAAJ,eAAQ,EAAC,KAAK,CAAC;;EAEjE;AACF;AACA;AACA;EACE,MAAM,CAACK,eAAe,EAAEC,gBAAgB,CAAC,GAAG,IAAAN,eAAQ,EAAC,IAAI,CAAC;;EAE1D;AACF;AACA;AACA;AACA;EACE,MAAMO,YAAY,GAAG,IAAAC,kBAAW,EAC7BC,KAA8C,IAAK;IAClD,MAAM;MAAEC,iBAAiB;MAAEC,aAAa;MAAEC;IAAY,CAAC,GACrDH,KAAK,CAACI,WAAW;IAEnB,MAAMC,gBAAgB,GACpBJ,iBAAiB,CAACK,MAAM,GAAGJ,aAAa,CAACK,CAAC,IAC1CJ,WAAW,CAACG,MAAM,IAAI7B,SAAS,IAAI,CAAC,CAAC;IAEvC,IAAIiB,kBAAkB,KAAKW,gBAAgB,EAAE;MAC3CV,mBAAmB,CAACU,gBAAgB,CAAC;MACrCR,gBAAgB,CAAC,CAACQ,gBAAgB,CAAC;IACrC;EACF,CAAC,EACD,CAAC5B,SAAS,EAAEiB,kBAAkB,CAChC,CAAC;;EAED;AACF;AACA;EACE,IAAAc,gBAAS,EAAC,MAAM;IACd1B,kBAAkB,GAAGY,kBAAkB,CAAC;EAC1C,CAAC,EAAE,CAACZ,kBAAkB,EAAEY,kBAAkB,CAAC,CAAC;;EAE5C;AACF;AACA;AACA;EACE,MAAMe,uBAAuB,GAAG,IAAAV,kBAAW,EACzC,CAACW,aAAqB,EAAElB,aAAqB,KAAK;IAChDC,gBAAgB,CAACD,aAAa,CAAC;EACjC,CAAC,EACD,EACF,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAMmB,YAAY,GAAG,IAAAZ,kBAAW,EAAEC,KAAwB,IAAK;IAC7DV,mBAAmB,CAACU,KAAK,CAACI,WAAW,CAACQ,MAAM,CAACN,MAAM,CAAC;EACtD,CAAC,EAAE,EAAE,CAAC;;EAEN;AACF;AACA;AACA;EACE,MAAMO,qBAAqB,GAAG,IAAAd,kBAAW,EAAC,MAAM;IAC9CF,gBAAgB,CAAC,KAAK,CAAC;IACvBd,aAAa,CAAC+B,OAAO,EAAEC,WAAW,CAAC,CAAC;EACtC,CAAC,EAAE,CAAChC,aAAa,CAAC,CAAC;;EAEnB;AACF;AACA;AACA;AACA;EACE,MAAMiC,WAAW,GAAG,IAAAC,cAAO,EACzB,MACE5B,gBAAgB,GAAG,CAAC,IACpBG,aAAa,GAAG,CAAC,IACjBH,gBAAgB,GAAGG,aAAa,EAClC,CAACH,gBAAgB,EAAEG,aAAa,CAClC,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAM0B,wBAAwB,GAC5BrC,aAAa,IAAImC,WAAW,IAAIpB,eAAe;;EAEjD;AACF;AACA;AACA;EACE,MAAMuB,gBAAgB,gBACpB,IAAAjE,WAAA,CAAAkE,GAAA,EAACpE,oBAAA,CAAAqE,mBAAmB;IAClBC,YAAY,EAAEC,oBAAc,CAACC,MAAO;IACpC7C,KAAK,EAAE8C,MAAM,CAACN,gBAAiB;IAC/BO,OAAO,EAAER,wBAAyB;IAAA1C,QAAA,eAElC,IAAAtB,WAAA,CAAAkE,GAAA,EAACrE,QAAA,CAAA4E,eAAe;MACdC,MAAM,EAAE,kBAAmB;MAC3BC,kBAAkB,EAAC,kBAAkB;MACrCC,IAAI,EAAC,aAAa;MAClBC,OAAO,EAAElB;IAAsB,CAChC;EAAC,CACiB,CACtB;EAED,oBACE,IAAA3D,WAAA,CAAA8E,IAAA,EAAA9E,WAAA,CAAA+E,QAAA;IAAAzD,QAAA,gBACE,IAAAtB,WAAA,CAAA8E,IAAA,EAACnF,YAAA,CAAAqF,UAAU;MACTN,MAAM,EAAE,YAAa;MACrBO,GAAG,EAAEpD,aAAc;MACnBF,aAAa,EAAEA,aAAc;MAC7BF,KAAK,EAAEA,KAAM;MACbyD,QAAQ,EAAEtC,YAAa;MACvBuC,mBAAmB,EAAE,CAAE;MACvBC,QAAQ,EAAE3B,YAAa;MACvB4B,mBAAmB,EAAE9B,uBAAwB;MAC7C7B,qBAAqB,EAAEA,qBAAsB;MAAAJ,QAAA,GAE5CA,QAAQ,EACRD,aAAa,iBACZ,IAAArB,WAAA,CAAAkE,GAAA,EAACnE,OAAA,CAAAuF,aAAa;QAAA,GACRjE,aAAa;QACjBkE,SAAS,EAAEvD,qCAAsC;QACjDwD,KAAK,EAAE;MAAM,CACd,CACF;IAAA,CACS,CAAC,EACZvB,gBAAgB;EAAA,CACjB,CAAC;AAEP,CAAC;AAACwB,OAAA,CAAArE,mBAAA,GAAAA,mBAAA;AAEF,MAAMmD,MAAM,GAAGmB,uBAAU,CAACC,MAAM,CAAC;EAC/B1B,gBAAgB,EAAE;IAChB2B,QAAQ,EAAE,UAAU;IACpBC,MAAM,EAAE,EAAE;IACVC,KAAK,EAAEC,sBAAgB,CAACC,qBAAqB;IAC7CC,MAAM,EAAEF,sBAAgB,CAACG;EAC3B;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_core","_buttons","_ScaleInOutAnimation","_layout","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ForceScrollDownView","footerActions","children","threshold","customThreshold","style","contentContainerStyle","scrollEnabled","onThresholdCrossed","animatedRef","internalAnimatedRef","useAnimatedRef","scrollViewRef","footerActionsInlineMeasurements","handleFooterActionsInlineMeasurements","useFooterActionsInlineMeasurements","safeBottomAreaHeight","scrollViewHeight","setScrollViewHeight","useState","contentHeight","setContentHeight","isThresholdCrossed","setThresholdCrossed","isButtonVisible","setButtonVisible","handleScroll","useCallback","event","layoutMeasurement","contentOffset","contentSize","nativeEvent","thresholdCrossed","height","y","useEffect","handleContentSizeChange","_contentWidth","handleLayout","layout","handleScrollDownPress","targetY","Math","max","runOnUI","scrollTo","needsScroll","useMemo","shouldRenderScrollButton","scrollDownButton","jsx","ScaleInOutAnimation","springConfig","IOSpringValues","button","styles","visible","IconButtonSolid","testID","accessibilityLabel","icon","onPress","jsxs","Fragment","ScrollView","ref","onScroll","scrollEventThrottle","onLayout","onContentSizeChange","FooterActions","onMeasure","fixed","exports","StyleSheet","create","position","zIndex","right","IOVisualCostants","scrollDownButtonRight","bottom","scrollDownButtonBottom"],"sourceRoot":"../../../../src","sources":["components/templates/ForceScrollDownView.tsx"],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@
2
2
 
3
3
  exports[`ForceScrollDownView should match snapshot 1`] = `
4
4
  <RCTScrollView
5
+ collapsable={false}
5
6
  onContentSizeChange={[Function]}
6
7
  onLayout={[Function]}
7
8
  onScroll={[Function]}
@@ -20,6 +20,7 @@ const BodySmall = exports.BodySmall = /*#__PURE__*/(0, _react.forwardRef)(({
20
20
  weight: customWeight,
21
21
  color: customColor,
22
22
  asLink,
23
+ avoidPressable,
23
24
  accessibilityRole = "link",
24
25
  textStyle: customTextStyle,
25
26
  onPress,
@@ -45,7 +46,7 @@ const BodySmall = exports.BodySmall = /*#__PURE__*/(0, _react.forwardRef)(({
45
46
  }
46
47
  } : {})
47
48
  };
48
- if (asLink) {
49
+ if (asLink && !avoidPressable) {
49
50
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
50
51
  onPress: onPress,
51
52
  ref: ref,
@@ -59,6 +60,7 @@ const BodySmall = exports.BodySmall = /*#__PURE__*/(0, _react.forwardRef)(({
59
60
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_IOText.IOText, {
60
61
  ref: ref,
61
62
  ...BodySmallProps,
63
+ onPress: asLink && avoidPressable ? onPress : undefined,
62
64
  children: props.children
63
65
  });
64
66
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_context","_IOText","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","fontName","legacyFontName","BodySmall","exports","forwardRef","weight","customWeight","color","customColor","asLink","accessibilityRole","textStyle","customTextStyle","onPress","props","ref","theme","useIOTheme","newTypefaceEnabled","useIONewTypeface","defaultColor","BodySmallProps","dynamicTypeRamp","font","size","lineHeight","textDecorationLine","jsx","Pressable","children","IOText"],"sourceRoot":"../../../../src","sources":["components/typography/BodySmall.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_context","_IOText","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","fontName","legacyFontName","BodySmall","exports","forwardRef","weight","customWeight","color","customColor","asLink","avoidPressable","accessibilityRole","textStyle","customTextStyle","onPress","props","ref","theme","useIOTheme","newTypefaceEnabled","useIONewTypeface","defaultColor","BodySmallProps","dynamicTypeRamp","font","size","lineHeight","textDecorationLine","jsx","Pressable","children","IOText","undefined"],"sourceRoot":"../../../../src","sources":["components/typography/BodySmall.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAH,OAAA;AAKkB,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,wBAAAM,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAR,uBAAA,YAAAA,CAAAM,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAMlB,MAAMkB,QAAsB,GAAG,UAAU;AACzC,MAAMC,cAA4B,GAAG,kBAAkB;;AAEvD;AACA;AACA;AACO,MAAMC,SAAS,GAAAC,OAAA,CAAAD,SAAA,gBAAG,IAAAE,iBAAU,EACjC,CACE;EACEC,MAAM,EAAEC,YAAY;EACpBC,KAAK,EAAEC,WAAW;EAClBC,MAAM;EACNC,cAAc;EACdC,iBAAiB,GAAG,MAAM;EAC1BC,SAAS,EAAEC,eAAe;EAC1BC,OAAO;EACP,GAAGC;AACL,CAAC,EACDC,GAAwB,KACrB;EACH,MAAMC,KAAK,GAAG,IAAAC,mBAAU,EAAC,CAAC;EAC1B,MAAM;IAAEC;EAAmB,CAAC,GAAG,IAAAC,yBAAgB,EAAC,CAAC;EAEjD,MAAMC,YAAY,GAAGZ,MAAM,GACvBQ,KAAK,CAAC,yBAAyB,CAAC,GAChCA,KAAK,CAAC,mBAAmB,CAAC;EAE9B,MAAMK,cAA2B,GAAG;IAClC,GAAGP,KAAK;IACRQ,eAAe,EAAE,UAAU,CAAC;IAC5BC,IAAI,EAAEL,kBAAkB,GAAGnB,QAAQ,GAAGC,cAAc;IACpDI,MAAM,EAAEC,YAAY,IAAI,SAAS;IACjCmB,IAAI,EAAE,EAAE;IACRC,UAAU,EAAE,EAAE;IACdnB,KAAK,EAAEC,WAAW,IAAIa,YAAY;IAClC,IAAIZ,MAAM,GACN;MACEE,iBAAiB;MACjBC,SAAS,EAAEC,eAAe,IAAI;QAAEc,kBAAkB,EAAE;MAAY;IAClE,CAAC,GACD,CAAC,CAAC;EACR,CAAC;EAED,IAAIlB,MAAM,IAAI,CAACC,cAAc,EAAE;IAC7B,oBACE,IAAA9B,WAAA,CAAAgD,GAAA,EAACnD,YAAA,CAAAoD,SAAS;MACRf,OAAO,EAAEA,OAAQ;MACjBE,GAAG,EAAEA,GAAI;MACTL,iBAAiB,EAAEA,iBAAkB;MAAAmB,QAAA,eAErC,IAAAlD,WAAA,CAAAgD,GAAA,EAACjD,OAAA,CAAAoD,MAAM;QAAA,GAAKT,cAAc;QAAAQ,QAAA,EAAGf,KAAK,CAACe;MAAQ,CAAS;IAAC,CAC5C,CAAC;EAEhB;EAEA,oBACE,IAAAlD,WAAA,CAAAgD,GAAA,EAACjD,OAAA,CAAAoD,MAAM;IACLf,GAAG,EAAEA,GAAI;IAAA,GACLM,cAAc;IAClBR,OAAO,EAAEL,MAAM,IAAIC,cAAc,GAAGI,OAAO,GAAGkB,SAAU;IAAAF,QAAA,EAEvDf,KAAK,CAACe;EAAQ,CACT,CAAC;AAEb,CACF,CAAC","ignoreList":[]}
@@ -4,8 +4,6 @@ export * from "./ContentWrapper";
4
4
  export * from "./Divider";
5
5
  export * from "./FooterActions";
6
6
  export * from "./FooterActionsInline";
7
- export * from "./GradientBottomActions";
8
- export * from "./GradientScrollView";
9
7
  export * from "./hooks";
10
8
  export * from "./Spacer";
11
9
  export * from "./Stack";
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["components/layout/index.tsx"],"mappings":";;AAAA,cAAc,kBAAkB;AAChC,cAAc,WAAW;AACzB,cAAc,iBAAiB;AAC/B,cAAc,uBAAuB;AACrC,cAAc,yBAAyB;AACvC,cAAc,sBAAsB;AACpC,cAAc,SAAS;AACvB,cAAc,UAAU;AACxB,cAAc,SAAS","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["components/layout/index.tsx"],"mappings":";;AAAA,cAAc,kBAAkB;AAChC,cAAc,WAAW;AACzB,cAAc,iBAAiB;AAC/B,cAAc,uBAAuB;AACrC,cAAc,SAAS;AACvB,cAAc,UAAU;AACxB,cAAc,SAAS","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
 
3
- import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
4
- import { ScrollView, StyleSheet } from "react-native";
3
+ import React, { useCallback, useEffect, useMemo, useState } from "react";
4
+ import { StyleSheet } from "react-native";
5
+ import Animated, { runOnUI, scrollTo, useAnimatedRef } from "react-native-reanimated";
5
6
  import { IOSpringValues, IOVisualCostants } from "../../core";
6
7
  import { IconButtonSolid } from "../buttons";
7
8
  import { ScaleInOutAnimation } from "../common/ScaleInOutAnimation";
@@ -20,9 +21,11 @@ const ForceScrollDownView = ({
20
21
  style,
21
22
  contentContainerStyle,
22
23
  scrollEnabled = true,
23
- onThresholdCrossed
24
+ onThresholdCrossed,
25
+ animatedRef
24
26
  }) => {
25
- const scrollViewRef = useRef(null);
27
+ const internalAnimatedRef = useAnimatedRef();
28
+ const scrollViewRef = animatedRef ?? internalAnimatedRef;
26
29
  const {
27
30
  footerActionsInlineMeasurements,
28
31
  handleFooterActionsInlineMeasurements
@@ -99,8 +102,13 @@ const ForceScrollDownView = ({
99
102
  */
100
103
  const handleScrollDownPress = useCallback(() => {
101
104
  setButtonVisible(false);
102
- scrollViewRef.current?.scrollToEnd();
103
- }, [scrollViewRef]);
105
+ const targetY = Math.max(0, contentHeight - scrollViewHeight);
106
+ runOnUI(y => {
107
+ "worklet";
108
+
109
+ scrollTo(scrollViewRef, 0, y, true);
110
+ })(targetY);
111
+ }, [scrollViewRef, contentHeight, scrollViewHeight]);
104
112
 
105
113
  /**
106
114
  * Whether or not the "scroll to bottom" button needs to be displayed. It is only displayed
@@ -131,7 +139,7 @@ const ForceScrollDownView = ({
131
139
  })
132
140
  });
133
141
  return /*#__PURE__*/_jsxs(_Fragment, {
134
- children: [/*#__PURE__*/_jsxs(ScrollView, {
142
+ children: [/*#__PURE__*/_jsxs(Animated.ScrollView, {
135
143
  testID: "ScrollView",
136
144
  ref: scrollViewRef,
137
145
  scrollEnabled: scrollEnabled,
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","ScrollView","StyleSheet","IOSpringValues","IOVisualCostants","IconButtonSolid","ScaleInOutAnimation","FooterActions","useFooterActionsInlineMeasurements","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ForceScrollDownView","footerActions","children","threshold","customThreshold","style","contentContainerStyle","scrollEnabled","onThresholdCrossed","scrollViewRef","footerActionsInlineMeasurements","handleFooterActionsInlineMeasurements","safeBottomAreaHeight","scrollViewHeight","setScrollViewHeight","contentHeight","setContentHeight","isThresholdCrossed","setThresholdCrossed","isButtonVisible","setButtonVisible","handleScroll","event","layoutMeasurement","contentOffset","contentSize","nativeEvent","thresholdCrossed","height","y","handleContentSizeChange","_contentWidth","handleLayout","layout","handleScrollDownPress","current","scrollToEnd","needsScroll","shouldRenderScrollButton","scrollDownButton","springConfig","button","styles","visible","testID","accessibilityLabel","icon","onPress","ref","onScroll","scrollEventThrottle","onLayout","onContentSizeChange","onMeasure","fixed","create","position","zIndex","right","scrollDownButtonRight","bottom","scrollDownButtonBottom"],"sourceRoot":"../../../../src","sources":["components/templates/ForceScrollDownView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useMemo","useState","StyleSheet","Animated","runOnUI","scrollTo","useAnimatedRef","IOSpringValues","IOVisualCostants","IconButtonSolid","ScaleInOutAnimation","FooterActions","useFooterActionsInlineMeasurements","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ForceScrollDownView","footerActions","children","threshold","customThreshold","style","contentContainerStyle","scrollEnabled","onThresholdCrossed","animatedRef","internalAnimatedRef","scrollViewRef","footerActionsInlineMeasurements","handleFooterActionsInlineMeasurements","safeBottomAreaHeight","scrollViewHeight","setScrollViewHeight","contentHeight","setContentHeight","isThresholdCrossed","setThresholdCrossed","isButtonVisible","setButtonVisible","handleScroll","event","layoutMeasurement","contentOffset","contentSize","nativeEvent","thresholdCrossed","height","y","handleContentSizeChange","_contentWidth","handleLayout","layout","handleScrollDownPress","targetY","Math","max","needsScroll","shouldRenderScrollButton","scrollDownButton","springConfig","button","styles","visible","testID","accessibilityLabel","icon","onPress","ScrollView","ref","onScroll","scrollEventThrottle","onLayout","onContentSizeChange","onMeasure","fixed","create","position","zIndex","right","scrollDownButtonRight","bottom","scrollDownButtonBottom"],"sourceRoot":"../../../../src","sources":["components/templates/ForceScrollDownView.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAGVC,WAAW,EACXC,SAAS,EACTC,OAAO,EACPC,QAAQ,QACH,OAAO;AACd,SAKEC,UAAU,QACL,cAAc;AACrB,OAAOC,QAAQ,IACbC,OAAO,EACPC,QAAQ,EACRC,cAAc,QAET,yBAAyB;AAChC,SAASC,cAAc,EAAEC,gBAAgB,QAAQ,YAAY;AAC7D,SAASC,eAAe,QAAQ,YAAY;AAC5C,SAASC,mBAAmB,QAAQ,+BAA+B;AACnE,SAASC,aAAa,EAAEC,kCAAkC,QAAQ,WAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AA+C9E;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,mBAAmB,GAAGA,CAAC;EAC3BC,aAAa;EACbC,QAAQ;EACRC,SAAS,EAAEC,eAAe;EAC1BC,KAAK;EACLC,qBAAqB;EACrBC,aAAa,GAAG,IAAI;EACpBC,kBAAkB;EAClBC;AACmB,CAAC,KAAK;EACzB,MAAMC,mBAAmB,GAAGvB,cAAc,CAAsB,CAAC;EACjE,MAAMwB,aAAa,GAAGF,WAAW,IAAIC,mBAAmB;EAExD,MAAM;IACJE,+BAA+B;IAC/BC;EACF,CAAC,GAAGpB,kCAAkC,CAAC,CAAC;EAExC,MAAMU,SAAS,GAAGF,aAAa,GAC3BW,+BAA+B,CAACE,oBAAoB,GACpDV,eAAe;;EAEnB;AACF;AACA;AACA;EACE,MAAM,CAACW,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGlC,QAAQ,CAAS,CAAC,CAAC;;EAEnE;AACF;AACA;AACA;EACE,MAAM,CAACmC,aAAa,EAAEC,gBAAgB,CAAC,GAAGpC,QAAQ,CAAS,CAAC,CAAC;;EAE7D;AACF;AACA;EACE,MAAM,CAACqC,kBAAkB,EAAEC,mBAAmB,CAAC,GAAGtC,QAAQ,CAAC,KAAK,CAAC;;EAEjE;AACF;AACA;AACA;EACE,MAAM,CAACuC,eAAe,EAAEC,gBAAgB,CAAC,GAAGxC,QAAQ,CAAC,IAAI,CAAC;;EAE1D;AACF;AACA;AACA;AACA;EACE,MAAMyC,YAAY,GAAG5C,WAAW,CAC7B6C,KAA8C,IAAK;IAClD,MAAM;MAAEC,iBAAiB;MAAEC,aAAa;MAAEC;IAAY,CAAC,GACrDH,KAAK,CAACI,WAAW;IAEnB,MAAMC,gBAAgB,GACpBJ,iBAAiB,CAACK,MAAM,GAAGJ,aAAa,CAACK,CAAC,IAC1CJ,WAAW,CAACG,MAAM,IAAI3B,SAAS,IAAI,CAAC,CAAC;IAEvC,IAAIgB,kBAAkB,KAAKU,gBAAgB,EAAE;MAC3CT,mBAAmB,CAACS,gBAAgB,CAAC;MACrCP,gBAAgB,CAAC,CAACO,gBAAgB,CAAC;IACrC;EACF,CAAC,EACD,CAAC1B,SAAS,EAAEgB,kBAAkB,CAChC,CAAC;;EAED;AACF;AACA;EACEvC,SAAS,CAAC,MAAM;IACd4B,kBAAkB,GAAGW,kBAAkB,CAAC;EAC1C,CAAC,EAAE,CAACX,kBAAkB,EAAEW,kBAAkB,CAAC,CAAC;;EAE5C;AACF;AACA;AACA;EACE,MAAMa,uBAAuB,GAAGrD,WAAW,CACzC,CAACsD,aAAqB,EAAEhB,aAAqB,KAAK;IAChDC,gBAAgB,CAACD,aAAa,CAAC;EACjC,CAAC,EACD,EACF,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAMiB,YAAY,GAAGvD,WAAW,CAAE6C,KAAwB,IAAK;IAC7DR,mBAAmB,CAACQ,KAAK,CAACI,WAAW,CAACO,MAAM,CAACL,MAAM,CAAC;EACtD,CAAC,EAAE,EAAE,CAAC;;EAEN;AACF;AACA;AACA;EACE,MAAMM,qBAAqB,GAAGzD,WAAW,CAAC,MAAM;IAC9C2C,gBAAgB,CAAC,KAAK,CAAC;IACvB,MAAMe,OAAO,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEtB,aAAa,GAAGF,gBAAgB,CAAC;IAC7D9B,OAAO,CAAE8C,CAAS,IAAK;MACrB,SAAS;;MACT7C,QAAQ,CAACyB,aAAa,EAAE,CAAC,EAAEoB,CAAC,EAAE,IAAI,CAAC;IACrC,CAAC,CAAC,CAACM,OAAO,CAAC;EACb,CAAC,EAAE,CAAC1B,aAAa,EAAEM,aAAa,EAAEF,gBAAgB,CAAC,CAAC;;EAEpD;AACF;AACA;AACA;AACA;EACE,MAAMyB,WAAW,GAAG3D,OAAO,CACzB,MACEkC,gBAAgB,GAAG,CAAC,IACpBE,aAAa,GAAG,CAAC,IACjBF,gBAAgB,GAAGE,aAAa,EAClC,CAACF,gBAAgB,EAAEE,aAAa,CAClC,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAMwB,wBAAwB,GAC5BlC,aAAa,IAAIiC,WAAW,IAAInB,eAAe;;EAEjD;AACF;AACA;AACA;EACE,MAAMqB,gBAAgB,gBACpB/C,IAAA,CAACJ,mBAAmB;IAClBoD,YAAY,EAAEvD,cAAc,CAACwD,MAAO;IACpCvC,KAAK,EAAEwC,MAAM,CAACH,gBAAiB;IAC/BI,OAAO,EAAEL,wBAAyB;IAAAvC,QAAA,eAElCP,IAAA,CAACL,eAAe;MACdyD,MAAM,EAAE,kBAAmB;MAC3BC,kBAAkB,EAAC,kBAAkB;MACrCC,IAAI,EAAC,aAAa;MAClBC,OAAO,EAAEd;IAAsB,CAChC;EAAC,CACiB,CACtB;EAED,oBACEvC,KAAA,CAAAE,SAAA;IAAAG,QAAA,gBACEL,KAAA,CAACb,QAAQ,CAACmE,UAAU;MAClBJ,MAAM,EAAE,YAAa;MACrBK,GAAG,EAAEzC,aAAc;MACnBJ,aAAa,EAAEA,aAAc;MAC7BF,KAAK,EAAEA,KAAM;MACbgD,QAAQ,EAAE9B,YAAa;MACvB+B,mBAAmB,EAAE,CAAE;MACvBC,QAAQ,EAAErB,YAAa;MACvBsB,mBAAmB,EAAExB,uBAAwB;MAC7C1B,qBAAqB,EAAEA,qBAAsB;MAAAJ,QAAA,GAE5CA,QAAQ,EACRD,aAAa,iBACZN,IAAA,CAACH,aAAa;QAAA,GACRS,aAAa;QACjBwD,SAAS,EAAE5C,qCAAsC;QACjD6C,KAAK,EAAE;MAAM,CACd,CACF;IAAA,CACkB,CAAC,EACrBhB,gBAAgB;EAAA,CACjB,CAAC;AAEP,CAAC;AAED,MAAMG,MAAM,GAAG9D,UAAU,CAAC4E,MAAM,CAAC;EAC/BjB,gBAAgB,EAAE;IAChBkB,QAAQ,EAAE,UAAU;IACpBC,MAAM,EAAE,EAAE;IACVC,KAAK,EAAEzE,gBAAgB,CAAC0E,qBAAqB;IAC7CC,MAAM,EAAE3E,gBAAgB,CAAC4E;EAC3B;AACF,CAAC,CAAC;AAEF,SAASjE,mBAAmB","ignoreList":[]}
@@ -2,6 +2,7 @@
2
2
 
3
3
  exports[`ForceScrollDownView should match snapshot 1`] = `
4
4
  <RCTScrollView
5
+ collapsable={false}
5
6
  onContentSizeChange={[Function]}
6
7
  onLayout={[Function]}
7
8
  onScroll={[Function]}
@@ -15,6 +15,7 @@ export const BodySmall = /*#__PURE__*/forwardRef(({
15
15
  weight: customWeight,
16
16
  color: customColor,
17
17
  asLink,
18
+ avoidPressable,
18
19
  accessibilityRole = "link",
19
20
  textStyle: customTextStyle,
20
21
  onPress,
@@ -40,7 +41,7 @@ export const BodySmall = /*#__PURE__*/forwardRef(({
40
41
  }
41
42
  } : {})
42
43
  };
43
- if (asLink) {
44
+ if (asLink && !avoidPressable) {
44
45
  return /*#__PURE__*/_jsx(Pressable, {
45
46
  onPress: onPress,
46
47
  ref: ref,
@@ -54,6 +55,7 @@ export const BodySmall = /*#__PURE__*/forwardRef(({
54
55
  return /*#__PURE__*/_jsx(IOText, {
55
56
  ref: ref,
56
57
  ...BodySmallProps,
58
+ onPress: asLink && avoidPressable ? onPress : undefined,
57
59
  children: props.children
58
60
  });
59
61
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","forwardRef","Pressable","useIONewTypeface","useIOTheme","IOText","jsx","_jsx","fontName","legacyFontName","BodySmall","weight","customWeight","color","customColor","asLink","accessibilityRole","textStyle","customTextStyle","onPress","props","ref","theme","newTypefaceEnabled","defaultColor","BodySmallProps","dynamicTypeRamp","font","size","lineHeight","textDecorationLine","children"],"sourceRoot":"../../../../src","sources":["components/typography/BodySmall.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAkBC,UAAU,QAAQ,OAAO;AACvD,SAAeC,SAAS,QAAQ,cAAc;AAC9C,SAASC,gBAAgB,EAAEC,UAAU,QAAQ,eAAe;AAE5D,SACEC,MAAM,QAID,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMlB,MAAMC,QAAsB,GAAG,UAAU;AACzC,MAAMC,cAA4B,GAAG,kBAAkB;;AAEvD;AACA;AACA;AACA,OAAO,MAAMC,SAAS,gBAAGT,UAAU,CACjC,CACE;EACEU,MAAM,EAAEC,YAAY;EACpBC,KAAK,EAAEC,WAAW;EAClBC,MAAM;EACNC,iBAAiB,GAAG,MAAM;EAC1BC,SAAS,EAAEC,eAAe;EAC1BC,OAAO;EACP,GAAGC;AACL,CAAC,EACDC,GAAwB,KACrB;EACH,MAAMC,KAAK,GAAGlB,UAAU,CAAC,CAAC;EAC1B,MAAM;IAAEmB;EAAmB,CAAC,GAAGpB,gBAAgB,CAAC,CAAC;EAEjD,MAAMqB,YAAY,GAAGT,MAAM,GACvBO,KAAK,CAAC,yBAAyB,CAAC,GAChCA,KAAK,CAAC,mBAAmB,CAAC;EAE9B,MAAMG,cAA2B,GAAG;IAClC,GAAGL,KAAK;IACRM,eAAe,EAAE,UAAU,CAAC;IAC5BC,IAAI,EAAEJ,kBAAkB,GAAGf,QAAQ,GAAGC,cAAc;IACpDE,MAAM,EAAEC,YAAY,IAAI,SAAS;IACjCgB,IAAI,EAAE,EAAE;IACRC,UAAU,EAAE,EAAE;IACdhB,KAAK,EAAEC,WAAW,IAAIU,YAAY;IAClC,IAAIT,MAAM,GACN;MACEC,iBAAiB;MACjBC,SAAS,EAAEC,eAAe,IAAI;QAAEY,kBAAkB,EAAE;MAAY;IAClE,CAAC,GACD,CAAC,CAAC;EACR,CAAC;EAED,IAAIf,MAAM,EAAE;IACV,oBACER,IAAA,CAACL,SAAS;MACRiB,OAAO,EAAEA,OAAQ;MACjBE,GAAG,EAAEA,GAAI;MACTL,iBAAiB,EAAEA,iBAAkB;MAAAe,QAAA,eAErCxB,IAAA,CAACF,MAAM;QAAA,GAAKoB,cAAc;QAAAM,QAAA,EAAGX,KAAK,CAACW;MAAQ,CAAS;IAAC,CAC5C,CAAC;EAEhB;EAEA,oBACExB,IAAA,CAACF,MAAM;IAACgB,GAAG,EAAEA,GAAI;IAAA,GAAKI,cAAc;IAAAM,QAAA,EACjCX,KAAK,CAACW;EAAQ,CACT,CAAC;AAEb,CACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","forwardRef","Pressable","useIONewTypeface","useIOTheme","IOText","jsx","_jsx","fontName","legacyFontName","BodySmall","weight","customWeight","color","customColor","asLink","avoidPressable","accessibilityRole","textStyle","customTextStyle","onPress","props","ref","theme","newTypefaceEnabled","defaultColor","BodySmallProps","dynamicTypeRamp","font","size","lineHeight","textDecorationLine","children","undefined"],"sourceRoot":"../../../../src","sources":["components/typography/BodySmall.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAkBC,UAAU,QAAQ,OAAO;AACvD,SAAeC,SAAS,QAAQ,cAAc;AAC9C,SAASC,gBAAgB,EAAEC,UAAU,QAAQ,eAAe;AAE5D,SACEC,MAAM,QAID,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMlB,MAAMC,QAAsB,GAAG,UAAU;AACzC,MAAMC,cAA4B,GAAG,kBAAkB;;AAEvD;AACA;AACA;AACA,OAAO,MAAMC,SAAS,gBAAGT,UAAU,CACjC,CACE;EACEU,MAAM,EAAEC,YAAY;EACpBC,KAAK,EAAEC,WAAW;EAClBC,MAAM;EACNC,cAAc;EACdC,iBAAiB,GAAG,MAAM;EAC1BC,SAAS,EAAEC,eAAe;EAC1BC,OAAO;EACP,GAAGC;AACL,CAAC,EACDC,GAAwB,KACrB;EACH,MAAMC,KAAK,GAAGnB,UAAU,CAAC,CAAC;EAC1B,MAAM;IAAEoB;EAAmB,CAAC,GAAGrB,gBAAgB,CAAC,CAAC;EAEjD,MAAMsB,YAAY,GAAGV,MAAM,GACvBQ,KAAK,CAAC,yBAAyB,CAAC,GAChCA,KAAK,CAAC,mBAAmB,CAAC;EAE9B,MAAMG,cAA2B,GAAG;IAClC,GAAGL,KAAK;IACRM,eAAe,EAAE,UAAU,CAAC;IAC5BC,IAAI,EAAEJ,kBAAkB,GAAGhB,QAAQ,GAAGC,cAAc;IACpDE,MAAM,EAAEC,YAAY,IAAI,SAAS;IACjCiB,IAAI,EAAE,EAAE;IACRC,UAAU,EAAE,EAAE;IACdjB,KAAK,EAAEC,WAAW,IAAIW,YAAY;IAClC,IAAIV,MAAM,GACN;MACEE,iBAAiB;MACjBC,SAAS,EAAEC,eAAe,IAAI;QAAEY,kBAAkB,EAAE;MAAY;IAClE,CAAC,GACD,CAAC,CAAC;EACR,CAAC;EAED,IAAIhB,MAAM,IAAI,CAACC,cAAc,EAAE;IAC7B,oBACET,IAAA,CAACL,SAAS;MACRkB,OAAO,EAAEA,OAAQ;MACjBE,GAAG,EAAEA,GAAI;MACTL,iBAAiB,EAAEA,iBAAkB;MAAAe,QAAA,eAErCzB,IAAA,CAACF,MAAM;QAAA,GAAKqB,cAAc;QAAAM,QAAA,EAAGX,KAAK,CAACW;MAAQ,CAAS;IAAC,CAC5C,CAAC;EAEhB;EAEA,oBACEzB,IAAA,CAACF,MAAM;IACLiB,GAAG,EAAEA,GAAI;IAAA,GACLI,cAAc;IAClBN,OAAO,EAAEL,MAAM,IAAIC,cAAc,GAAGI,OAAO,GAAGa,SAAU;IAAAD,QAAA,EAEvDX,KAAK,CAACW;EAAQ,CACT,CAAC;AAEb,CACF,CAAC","ignoreList":[]}
@@ -2,8 +2,6 @@ export * from "./ContentWrapper";
2
2
  export * from "./Divider";
3
3
  export * from "./FooterActions";
4
4
  export * from "./FooterActionsInline";
5
- export * from "./GradientBottomActions";
6
- export * from "./GradientScrollView";
7
5
  export * from "./hooks";
8
6
  export * from "./Spacer";
9
7
  export * from "./Stack";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/index.tsx"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/index.tsx"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import React, { ComponentProps, ReactNode } from "react";
2
2
  import { ScrollViewProps } from "react-native";
3
+ import Animated, { type AnimatedRef } from "react-native-reanimated";
3
4
  import { FooterActions } from "../layout";
4
5
  type ForceScrollDownViewActions = {
5
6
  /**
@@ -27,6 +28,11 @@ export type ForceScrollDownView = {
27
28
  * is passed a boolean indicating whether the threshold has been crossed (`true`) or not (`false`).
28
29
  */
29
30
  onThresholdCrossed?: (crossed: boolean) => void;
31
+ /**
32
+ * Optional Animated ref to be used with `useScrollViewOffset`
33
+ * (outside this component)
34
+ */
35
+ animatedRef?: AnimatedRef<Animated.ScrollView>;
30
36
  } & ForceScrollDownViewSlot & Pick<ScrollViewProps, "style" | "contentContainerStyle" | "scrollEnabled" | "testID">;
31
37
  /**
32
38
  * A React Native component that displays a scroll view with a button that scrolls to the bottom of the content
@@ -34,6 +40,6 @@ export type ForceScrollDownView = {
34
40
  * configurable by the `threshold` prop. The button, and the scrolling, can also be disabled by setting the
35
41
  * `scrollEnabled` prop to `false`.
36
42
  */
37
- declare const ForceScrollDownView: ({ footerActions, children, threshold: customThreshold, style, contentContainerStyle, scrollEnabled, onThresholdCrossed }: ForceScrollDownView) => React.JSX.Element;
43
+ declare const ForceScrollDownView: ({ footerActions, children, threshold: customThreshold, style, contentContainerStyle, scrollEnabled, onThresholdCrossed, animatedRef }: ForceScrollDownView) => React.JSX.Element;
38
44
  export { ForceScrollDownView };
39
45
  //# sourceMappingURL=ForceScrollDownView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ForceScrollDownView.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/ForceScrollDownView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,cAAc,EACd,SAAS,EAMV,MAAM,OAAO,CAAC;AACf,OAAO,EAKL,eAAe,EAEhB,MAAM,cAAc,CAAC;AAItB,OAAO,EAAE,aAAa,EAAsC,MAAM,WAAW,CAAC;AAE9E,KAAK,0BAA0B,GAAG;IAChC;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,aAAa,EAAE,IAAI,CACjB,cAAc,CAAC,OAAO,aAAa,CAAC,EACpC,OAAO,GAAG,WAAW,CACtB,CAAC;CACH,CAAC;AAEF,KAAK,6BAA6B,GAAG;IACnC;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,KAAK,CAAC;CACvB,CAAC;AAEF,KAAK,uBAAuB,GACxB,0BAA0B,GAC1B,6BAA6B,CAAC;AAElC,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CACjD,GAAG,uBAAuB,GACzB,IAAI,CACF,eAAe,EACf,OAAO,GAAG,uBAAuB,GAAG,eAAe,GAAG,QAAQ,CAC/D,CAAC;AAEJ;;;;;GAKG;AACH,QAAA,MAAM,mBAAmB,GAAI,0HAQ1B,mBAAmB,sBA4JrB,CAAC;AAWF,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"ForceScrollDownView.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/ForceScrollDownView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,cAAc,EACd,SAAS,EAKV,MAAM,OAAO,CAAC;AACf,OAAO,EAIL,eAAe,EAEhB,MAAM,cAAc,CAAC;AACtB,OAAO,QAAQ,EAAE,EAIf,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,aAAa,EAAsC,MAAM,WAAW,CAAC;AAE9E,KAAK,0BAA0B,GAAG;IAChC;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,aAAa,EAAE,IAAI,CACjB,cAAc,CAAC,OAAO,aAAa,CAAC,EACpC,OAAO,GAAG,WAAW,CACtB,CAAC;CACH,CAAC;AAEF,KAAK,6BAA6B,GAAG;IACnC;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,KAAK,CAAC;CACvB,CAAC;AAEF,KAAK,uBAAuB,GACxB,0BAA0B,GAC1B,6BAA6B,CAAC;AAElC,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;CAChD,GAAG,uBAAuB,GACzB,IAAI,CACF,eAAe,EACf,OAAO,GAAG,uBAAuB,GAAG,eAAe,GAAG,QAAQ,CAC/D,CAAC;AAEJ;;;;;GAKG;AACH,QAAA,MAAM,mBAAmB,GAAI,uIAS1B,mBAAmB,sBAiKrB,CAAC;AAWF,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"BodySmall.d.ts","sourceRoot":"","sources":["../../../../src/components/typography/BodySmall.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAC;AACxD,OAAO,EAAE,IAAI,EAAa,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAgB,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAGL,2BAA2B,EAC3B,qBAAqB,EACtB,MAAM,UAAU,CAAC;AAElB,KAAK,cAAc,GAAG,qBAAqB,GAAG;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;CACxD,GAAG,2BAA2B,CAAC;AAKhC;;GAEG;AACH,eAAO,MAAM,SAAS,6EAsDrB,CAAC"}
1
+ {"version":3,"file":"BodySmall.d.ts","sourceRoot":"","sources":["../../../../src/components/typography/BodySmall.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAC;AACxD,OAAO,EAAE,IAAI,EAAa,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAgB,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAGL,2BAA2B,EAC3B,qBAAqB,EACtB,MAAM,UAAU,CAAC;AAElB,KAAK,cAAc,GAAG,qBAAqB,GAAG;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;CACxD,GAAG,2BAA2B,CAAC;AAKhC;;GAEG;AACH,eAAO,MAAM,SAAS,6EA2DrB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pagopa/io-app-design-system",
3
- "version": "5.11.1",
3
+ "version": "5.11.3",
4
4
  "description": "The library defining the core components of the design system of @pagopa/io-app",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -2,8 +2,6 @@ export * from "./ContentWrapper";
2
2
  export * from "./Divider";
3
3
  export * from "./FooterActions";
4
4
  export * from "./FooterActionsInline";
5
- export * from "./GradientBottomActions";
6
- export * from "./GradientScrollView";
7
5
  export * from "./hooks";
8
6
  export * from "./Spacer";
9
7
  export * from "./Stack";
@@ -4,17 +4,21 @@ import React, {
4
4
  useCallback,
5
5
  useEffect,
6
6
  useMemo,
7
- useRef,
8
7
  useState
9
8
  } from "react";
10
9
  import {
11
10
  LayoutChangeEvent,
12
11
  NativeScrollEvent,
13
12
  NativeSyntheticEvent,
14
- ScrollView,
15
13
  ScrollViewProps,
16
14
  StyleSheet
17
15
  } from "react-native";
16
+ import Animated, {
17
+ runOnUI,
18
+ scrollTo,
19
+ useAnimatedRef,
20
+ type AnimatedRef
21
+ } from "react-native-reanimated";
18
22
  import { IOSpringValues, IOVisualCostants } from "../../core";
19
23
  import { IconButtonSolid } from "../buttons";
20
24
  import { ScaleInOutAnimation } from "../common/ScaleInOutAnimation";
@@ -54,6 +58,11 @@ export type ForceScrollDownView = {
54
58
  * is passed a boolean indicating whether the threshold has been crossed (`true`) or not (`false`).
55
59
  */
56
60
  onThresholdCrossed?: (crossed: boolean) => void;
61
+ /**
62
+ * Optional Animated ref to be used with `useScrollViewOffset`
63
+ * (outside this component)
64
+ */
65
+ animatedRef?: AnimatedRef<Animated.ScrollView>;
57
66
  } & ForceScrollDownViewSlot &
58
67
  Pick<
59
68
  ScrollViewProps,
@@ -73,9 +82,11 @@ const ForceScrollDownView = ({
73
82
  style,
74
83
  contentContainerStyle,
75
84
  scrollEnabled = true,
76
- onThresholdCrossed
85
+ onThresholdCrossed,
86
+ animatedRef
77
87
  }: ForceScrollDownView) => {
78
- const scrollViewRef = useRef<ScrollView>(null);
88
+ const internalAnimatedRef = useAnimatedRef<Animated.ScrollView>();
89
+ const scrollViewRef = animatedRef ?? internalAnimatedRef;
79
90
 
80
91
  const {
81
92
  footerActionsInlineMeasurements,
@@ -163,8 +174,12 @@ const ForceScrollDownView = ({
163
174
  */
164
175
  const handleScrollDownPress = useCallback(() => {
165
176
  setButtonVisible(false);
166
- scrollViewRef.current?.scrollToEnd();
167
- }, [scrollViewRef]);
177
+ const targetY = Math.max(0, contentHeight - scrollViewHeight);
178
+ runOnUI((y: number) => {
179
+ "worklet";
180
+ scrollTo(scrollViewRef, 0, y, true);
181
+ })(targetY);
182
+ }, [scrollViewRef, contentHeight, scrollViewHeight]);
168
183
 
169
184
  /**
170
185
  * Whether or not the "scroll to bottom" button needs to be displayed. It is only displayed
@@ -207,7 +222,7 @@ const ForceScrollDownView = ({
207
222
 
208
223
  return (
209
224
  <>
210
- <ScrollView
225
+ <Animated.ScrollView
211
226
  testID={"ScrollView"}
212
227
  ref={scrollViewRef}
213
228
  scrollEnabled={scrollEnabled}
@@ -226,7 +241,7 @@ const ForceScrollDownView = ({
226
241
  fixed={false}
227
242
  />
228
243
  )}
229
- </ScrollView>
244
+ </Animated.ScrollView>
230
245
  {scrollDownButton}
231
246
  </>
232
247
  );
@@ -2,6 +2,7 @@
2
2
 
3
3
  exports[`ForceScrollDownView should match snapshot 1`] = `
4
4
  <RCTScrollView
5
+ collapsable={false}
5
6
  onContentSizeChange={[Function]}
6
7
  onLayout={[Function]}
7
8
  onScroll={[Function]}
@@ -25,6 +25,7 @@ export const BodySmall = forwardRef<View, BodySmallProps>(
25
25
  weight: customWeight,
26
26
  color: customColor,
27
27
  asLink,
28
+ avoidPressable,
28
29
  accessibilityRole = "link",
29
30
  textStyle: customTextStyle,
30
31
  onPress,
@@ -55,7 +56,7 @@ export const BodySmall = forwardRef<View, BodySmallProps>(
55
56
  : {})
56
57
  };
57
58
 
58
- if (asLink) {
59
+ if (asLink && !avoidPressable) {
59
60
  return (
60
61
  <Pressable
61
62
  onPress={onPress}
@@ -68,7 +69,11 @@ export const BodySmall = forwardRef<View, BodySmallProps>(
68
69
  }
69
70
 
70
71
  return (
71
- <IOText ref={ref} {...BodySmallProps}>
72
+ <IOText
73
+ ref={ref}
74
+ {...BodySmallProps}
75
+ onPress={asLink && avoidPressable ? onPress : undefined}
76
+ >
72
77
  {props.children}
73
78
  </IOText>
74
79
  );