@lodev09/react-native-true-sheet 3.11.0-beta.8 → 3.11.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.
Files changed (47) hide show
  1. package/LICENSE +1 -1
  2. package/android/src/main/java/com/lodev09/truesheet/TrueSheetFooterView.kt +11 -0
  3. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewController.kt +48 -15
  4. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetCoordinatorLayout.kt +114 -1
  5. package/ios/TrueSheetContainerView.h +3 -0
  6. package/ios/TrueSheetContainerView.mm +29 -0
  7. package/ios/TrueSheetFooterView.mm +25 -0
  8. package/ios/TrueSheetView.mm +7 -0
  9. package/ios/TrueSheetViewController.h +2 -0
  10. package/ios/TrueSheetViewController.mm +151 -0
  11. package/lib/module/TrueSheet.web.js +18 -2
  12. package/lib/module/TrueSheet.web.js.map +1 -1
  13. package/lib/module/navigation/TrueSheetRouter.js +1 -1
  14. package/lib/module/navigation/TrueSheetRouter.js.map +1 -1
  15. package/lib/module/navigation/createTrueSheetNavigator.js +1 -1
  16. package/lib/module/navigation/createTrueSheetNavigator.js.map +1 -1
  17. package/lib/module/navigation/useTrueSheetNavigation.js +1 -1
  18. package/lib/module/navigation/useTrueSheetNavigation.js.map +1 -1
  19. package/lib/module/web/vaul/browser.js +1 -1
  20. package/lib/module/web/vaul/browser.js.map +1 -1
  21. package/lib/module/web/vaul/style.css.d.js +2 -0
  22. package/lib/module/web/vaul/style.css.d.js.map +1 -0
  23. package/lib/typescript/src/TrueSheet.web.d.ts.map +1 -1
  24. package/lib/typescript/src/navigation/TrueSheetRouter.d.ts +1 -1
  25. package/lib/typescript/src/navigation/TrueSheetRouter.d.ts.map +1 -1
  26. package/lib/typescript/src/navigation/TrueSheetView.d.ts +1 -1
  27. package/lib/typescript/src/navigation/TrueSheetView.d.ts.map +1 -1
  28. package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts +1 -1
  29. package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts.map +1 -1
  30. package/lib/typescript/src/navigation/screen/types.d.ts +1 -1
  31. package/lib/typescript/src/navigation/screen/types.d.ts.map +1 -1
  32. package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts +1 -1
  33. package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts.map +1 -1
  34. package/lib/typescript/src/navigation/types.d.ts +1 -1
  35. package/lib/typescript/src/navigation/types.d.ts.map +1 -1
  36. package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts +1 -1
  37. package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts.map +1 -1
  38. package/package.json +21 -19
  39. package/src/TrueSheet.web.tsx +20 -4
  40. package/src/navigation/TrueSheetRouter.ts +1 -1
  41. package/src/navigation/TrueSheetView.tsx +1 -1
  42. package/src/navigation/createTrueSheetNavigator.tsx +1 -1
  43. package/src/navigation/screen/types.ts +1 -1
  44. package/src/navigation/screen/useSheetScreenState.ts +1 -1
  45. package/src/navigation/types.ts +1 -1
  46. package/src/navigation/useTrueSheetNavigation.ts +1 -1
  47. package/src/web/vaul/style.css.d.ts +1 -0
@@ -1,4 +1,4 @@
1
- import type { DefaultNavigatorOptions, Descriptor, NavigationHelpers, NavigationProp, NavigationState, ParamListBase, RouteProp, StackActionHelpers } from '@react-navigation/native';
1
+ import type { DefaultNavigatorOptions, Descriptor, NavigationHelpers, NavigationProp, NavigationState, ParamListBase, RouteProp, StackActionHelpers } from '@react-navigation/core';
2
2
  import type { DetentInfoEventPayload, PositionChangeEventPayload, TrueSheetProps } from '../TrueSheet.types';
3
3
  export type PositionChangeHandler = (payload: PositionChangeEventPayload) => void;
4
4
  export type TrueSheetNavigationEventMap = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/navigation/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,aAAa,EACb,SAAS,EACT,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EACV,sBAAsB,EACtB,0BAA0B,EAC1B,cAAc,EACf,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE,0BAA0B,KAAK,IAAI,CAAC;AAElF,MAAM,MAAM,2BAA2B,GAAG;IACxC;;OAEG;IACH,gBAAgB,EAAE;QAAE,IAAI,EAAE,sBAAsB,CAAA;KAAE,CAAC;IACnD;;OAEG;IACH,eAAe,EAAE;QAAE,IAAI,EAAE,sBAAsB,CAAA;KAAE,CAAC;IAClD;;OAEG;IACH,gBAAgB,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACtC;;OAEG;IACH,eAAe,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACrC;;OAEG;IACH,iBAAiB,EAAE;QAAE,IAAI,EAAE,sBAAsB,CAAA;KAAE,CAAC;IACpD;;OAEG;IACH,cAAc,EAAE;QAAE,IAAI,EAAE,sBAAsB,CAAA;KAAE,CAAC;IACjD;;OAEG;IACH,eAAe,EAAE;QAAE,IAAI,EAAE,sBAAsB,CAAA;KAAE,CAAC;IAClD;;OAEG;IACH,YAAY,EAAE;QAAE,IAAI,EAAE,sBAAsB,CAAA;KAAE,CAAC;IAC/C;;OAEG;IACH,mBAAmB,EAAE;QAAE,IAAI,EAAE,0BAA0B,CAAA;KAAE,CAAC;IAC1D;;OAEG;IACH,cAAc,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACpC;;OAEG;IACH,aAAa,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACnC;;OAEG;IACH,aAAa,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACnC;;OAEG;IACH,YAAY,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,wBAAwB,CAAC,SAAS,SAAS,aAAa,IAAI,IAAI,CAC1E,eAAe,CAAC,SAAS,CAAC,EAC1B,QAAQ,CACT,GAAG;IACF,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG;QACtD,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC,EAAE,CAAC;CACN,CAAC;AAEF,MAAM,MAAM,sBAAsB,CAAC,SAAS,SAAS,aAAa,IAChE,kBAAkB,CAAC,SAAS,CAAC,GAAG;IAC9B;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC;AAEJ,MAAM,MAAM,uBAAuB,CACjC,SAAS,SAAS,aAAa,EAC/B,SAAS,SAAS,MAAM,SAAS,GAAG,MAAM,EAC1C,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,IAChD,cAAc,CAChB,SAAS,EACT,SAAS,EACT,WAAW,EACX,wBAAwB,CAAC,SAAS,CAAC,EACnC,0BAA0B,EAC1B,2BAA2B,CAC5B,GACC,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAEpC,MAAM,MAAM,oBAAoB,CAC9B,SAAS,SAAS,aAAa,EAC/B,SAAS,SAAS,MAAM,SAAS,GAAG,MAAM,EAC1C,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,IAChD;IACF,UAAU,EAAE,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACvE,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,iBAAiB,CACxD,aAAa,EACb,2BAA2B,CAC5B,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAC9C,cAAc,EACZ,SAAS,GACT,iBAAiB,GACjB,cAAc,GACd,aAAa,GACb,WAAW,GACX,SAAS,GACT,gBAAgB,GAChB,QAAQ,GACR,mBAAmB,GACnB,gBAAgB,GAChB,aAAa,GACb,kBAAkB,GAClB,iBAAiB,GACjB,YAAY,GACZ,cAAc,GACd,QAAQ,GACR,aAAa,GACb,QAAQ,GACR,aAAa,GACb,mBAAmB,GACnB,iBAAiB,GACjB,QAAQ,GACR,cAAc,GACd,WAAW,GACX,UAAU,GACV,gBAAgB,CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,6BAA6B,GAAG;IACvE;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;;;;;;;;;;;;;OAiBG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,uBAAuB,CAC3D,aAAa,EACb,MAAM,GAAG,SAAS,EAClB,wBAAwB,CAAC,aAAa,CAAC,EACvC,0BAA0B,EAC1B,2BAA2B,EAC3B,OAAO,CACR,GAAG;IACF;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAC1C,0BAA0B,EAC1B,uBAAuB,CAAC,aAAa,CAAC,EACtC,SAAS,CAAC,aAAa,CAAC,CACzB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/navigation/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type ParamListBase } from '@react-navigation/native';
1
+ import { type ParamListBase } from '@react-navigation/core';
2
2
  import type { TrueSheetNavigationProp } from './types';
3
3
  /**
4
4
  * Hook to access TrueSheet navigation with the resize helper.
@@ -1 +1 @@
1
- {"version":3,"file":"useTrueSheetNavigation.d.ts","sourceRoot":"","sources":["../../../../src/navigation/useTrueSheetNavigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE7E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAEvD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,sBAAsB,GACjC,CAAC,SAAS,aAAa,GAAG,aAAa,OACpC,uBAAuB,CAAC,CAAC,CAAgD,CAAC"}
1
+ {"version":3,"file":"useTrueSheetNavigation.d.ts","sourceRoot":"","sources":["../../../../src/navigation/useTrueSheetNavigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE3E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAEvD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,sBAAsB,GACjC,CAAC,SAAS,aAAa,GAAG,aAAa,OACpC,uBAAuB,CAAC,CAAC,CAAgD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodev09/react-native-true-sheet",
3
- "version": "3.11.0-beta.8",
3
+ "version": "3.11.0",
4
4
  "description": "The true native bottom sheet experience for your React Native Apps.",
5
5
  "source": "./src/index.ts",
6
6
  "main": "./lib/module/index.js",
@@ -90,14 +90,16 @@
90
90
  "@evilmartians/lefthook": "^2.0.4",
91
91
  "@radix-ui/react-dialog": "^1.1.1",
92
92
  "@radix-ui/react-presence": "^1",
93
- "@react-native/babel-preset": "^0.83.4",
94
- "@react-native/eslint-config": "^0.83.4",
93
+ "@react-native/babel-preset": "^0.85.3",
94
+ "@react-native/eslint-config": "^0.85.3",
95
+ "@react-native/jest-preset": "^0.85.3",
96
+ "@react-navigation/core": "^7.13.7",
95
97
  "@react-navigation/native": "^7.1.6",
96
- "@release-it/conventional-changelog": "^10.0.1",
98
+ "@release-it/conventional-changelog": "^11.0.0",
97
99
  "@testing-library/react-native": "^13.3.3",
98
100
  "@types/babel__core": "^7",
99
101
  "@types/jest": "^29.5.14",
100
- "@types/react": "~19.2.10",
102
+ "@types/react": "~19.2.14",
101
103
  "commitlint": "^19.8.1",
102
104
  "del-cli": "^6.0.0",
103
105
  "eslint": "^9.35.0",
@@ -106,25 +108,25 @@
106
108
  "jest": "^29.7.0",
107
109
  "nanoid": "^5.1.5",
108
110
  "prettier": "^3.0.3",
109
- "react": "19.2.0",
110
- "react-native": "0.83.4",
111
- "react-native-builder-bob": "^0.40.15",
112
- "react-native-reanimated": "4.2.1",
113
- "react-native-worklets": "0.7.2",
114
- "react-test-renderer": "19.2.0",
115
- "release-it": "^19.0.4",
111
+ "react": "19.2.3",
112
+ "react-native": "0.85.3",
113
+ "react-native-builder-bob": "^0.41.0",
114
+ "react-native-reanimated": "4.3.1",
115
+ "react-native-worklets": "0.8.3",
116
+ "react-test-renderer": "19.2.3",
117
+ "release-it": "^20.0.1",
116
118
  "turbo": "^2.5.6",
117
- "typescript": "^5.9.2"
119
+ "typescript": "~6.0.3"
118
120
  },
119
121
  "resolutions": {
120
- "@types/react": "~19.2.10",
121
- "react-native-reanimated": "4.2.1",
122
- "react-native-worklets": "0.7.2"
122
+ "@types/react": "~19.2.14",
123
+ "react-native-reanimated": "4.3.1",
124
+ "react-native-worklets": "0.8.3"
123
125
  },
124
126
  "peerDependencies": {
125
127
  "@radix-ui/react-dialog": ">=1",
126
128
  "@radix-ui/react-presence": ">=1",
127
- "@react-navigation/native": ">=7",
129
+ "@react-navigation/core": ">=7",
128
130
  "react": "*",
129
131
  "react-native": "*",
130
132
  "react-native-reanimated": ">=4",
@@ -137,7 +139,7 @@
137
139
  "@radix-ui/react-presence": {
138
140
  "optional": true
139
141
  },
140
- "@react-navigation/native": {
142
+ "@react-navigation/core": {
141
143
  "optional": true
142
144
  },
143
145
  "react-native-reanimated": {
@@ -155,7 +157,7 @@
155
157
  ],
156
158
  "packageManager": "yarn@4.11.0",
157
159
  "jest": {
158
- "preset": "react-native",
160
+ "preset": "@react-native/jest-preset",
159
161
  "setupFilesAfterEnv": [
160
162
  "<rootDir>/jest.setup.js"
161
163
  ],
@@ -494,6 +494,12 @@ const TrueSheetComponent = forwardRef<TrueSheetMethods, TrueSheetProps>((props,
494
494
  useEffect(() => {
495
495
  const parent = drawerContentRef.current;
496
496
  if (!parent) return;
497
+ // Skip while dismissing: this sheet's stack pop changes `descendants`,
498
+ // which would re-fire the effect and write `wrapper.style.transition =
499
+ // 'clip-path …'`, clobbering vaul's just-written `'transform …'` for the
500
+ // dismiss animation. Vaul fully owns this sheet's transitions on the way
501
+ // out — nothing to align with anymore.
502
+ if (!isOpen) return;
497
503
  const parentWrapper = parent.closest<HTMLElement>('[data-vaul-detached-wrapper]');
498
504
 
499
505
  const transition = `transform ${TRANSITIONS.DURATION}s cubic-bezier(${TRANSITIONS.EASE.join(',')})`;
@@ -598,7 +604,7 @@ const TrueSheetComponent = forwardRef<TrueSheetMethods, TrueSheetProps>((props,
598
604
  cancelAnimationFrame(raf);
599
605
  observer.disconnect();
600
606
  };
601
- }, [descendants, activeSnapPoint, cornerRadius, isFormSheet]);
607
+ }, [descendants, activeSnapPoint, cornerRadius, isFormSheet, isOpen]);
602
608
 
603
609
  // Focus/blur events fire when a descendant sheet appears on top of this one
604
610
  // (blur) or when all descendants are dismissed (focus). will-events fire
@@ -744,9 +750,19 @@ const TrueSheetComponent = forwardRef<TrueSheetMethods, TrueSheetProps>((props,
744
750
  return Math.max(min, Math.min(measuredContentHeight, max));
745
751
  }, [maxContentHeight, isFormSheet, windowHeight, detachedOffset, measuredContentHeight]);
746
752
 
747
- const effectiveDetachedOffset = isFormSheet
748
- ? Math.max(0, (windowHeight - (effectiveMaxContentHeight ?? 0)) / 2)
749
- : detachedOffset;
753
+ // Center the form sheet using the actual visible drawer height. Vaul
754
+ // auto-sizes to content (capped by `maxContentHeight`), so when content is
755
+ // shorter than `effectiveMaxContentHeight`'s min-clamped floor, using that
756
+ // for the offset would push a small sheet below the viewport center.
757
+ const effectiveDetachedOffset = useMemo(() => {
758
+ if (!isFormSheet) return detachedOffset;
759
+ const max = Math.max(0, windowHeight - 2 * detachedOffset);
760
+ const visibleHeight =
761
+ measuredContentHeight > 0
762
+ ? Math.min(measuredContentHeight, max)
763
+ : (effectiveMaxContentHeight ?? 0);
764
+ return Math.max(0, (windowHeight - visibleHeight) / 2);
765
+ }, [isFormSheet, windowHeight, detachedOffset, measuredContentHeight, effectiveMaxContentHeight]);
750
766
 
751
767
  // The wrapper holds all horizontal sizing/anchoring so its rounded-bottom
752
768
  // clip (when detached) aligns with the drawer's horizontal bounds on
@@ -7,7 +7,7 @@ import {
7
7
  type StackActionType,
8
8
  StackActions,
9
9
  type StackRouterOptions,
10
- } from '@react-navigation/native';
10
+ } from '@react-navigation/core';
11
11
 
12
12
  import type { TrueSheetNavigationState } from './types';
13
13
 
@@ -1,4 +1,4 @@
1
- import type { ParamListBase } from '@react-navigation/native';
1
+ import type { ParamListBase } from '@react-navigation/core';
2
2
 
3
3
  import type {
4
4
  TrueSheetDescriptorMap,
@@ -5,7 +5,7 @@ import {
5
5
  type StaticConfig,
6
6
  type TypedNavigator,
7
7
  useNavigationBuilder,
8
- } from '@react-navigation/native';
8
+ } from '@react-navigation/core';
9
9
 
10
10
  import { TrueSheetRouter, type TrueSheetRouterOptions } from './TrueSheetRouter';
11
11
  import { TrueSheetView } from './TrueSheetView';
@@ -1,4 +1,4 @@
1
- import type { ParamListBase } from '@react-navigation/native';
1
+ import type { ParamListBase } from '@react-navigation/core';
2
2
 
3
3
  import type { TrueSheetProps } from '../../TrueSheet.types';
4
4
  import type {
@@ -23,7 +23,7 @@ import type {
23
23
  TrueSheetNavigationProp,
24
24
  } from '../types';
25
25
  import { TrueSheetActions } from '../TrueSheetRouter';
26
- import type { ParamListBase } from '@react-navigation/native';
26
+ import type { ParamListBase } from '@react-navigation/core';
27
27
 
28
28
  type EmitFn = TrueSheetNavigationHelpers['emit'];
29
29
 
@@ -7,7 +7,7 @@ import type {
7
7
  ParamListBase,
8
8
  RouteProp,
9
9
  StackActionHelpers,
10
- } from '@react-navigation/native';
10
+ } from '@react-navigation/core';
11
11
 
12
12
  import type {
13
13
  DetentInfoEventPayload,
@@ -1,4 +1,4 @@
1
- import { useNavigation, type ParamListBase } from '@react-navigation/native';
1
+ import { useNavigation, type ParamListBase } from '@react-navigation/core';
2
2
 
3
3
  import type { TrueSheetNavigationProp } from './types';
4
4
 
@@ -0,0 +1 @@
1
+ declare module './style.css';