@lodev09/react-native-true-sheet 1.1.0 → 2.0.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 (33) hide show
  1. package/android/build.gradle +11 -18
  2. package/android/gradle.properties +5 -5
  3. package/android/src/main/java/com/lodev09/truesheet/TrueSheetDialog.kt +31 -8
  4. package/android/src/main/java/com/lodev09/truesheet/TrueSheetEvent.kt +22 -0
  5. package/android/src/main/java/com/lodev09/truesheet/TrueSheetView.kt +133 -53
  6. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewManager.kt +11 -13
  7. package/android/src/main/java/com/lodev09/truesheet/core/RootSheetView.kt +4 -13
  8. package/ios/Extensions/UIView+pinTo.swift +5 -0
  9. package/ios/TrueSheetEvent.swift +48 -0
  10. package/ios/TrueSheetView.swift +109 -69
  11. package/ios/TrueSheetViewController.swift +96 -31
  12. package/ios/TrueSheetViewManager.m +3 -0
  13. package/lib/commonjs/TrueSheet.js +17 -2
  14. package/lib/commonjs/TrueSheet.js.map +1 -1
  15. package/lib/module/TrueSheet.js +17 -2
  16. package/lib/module/TrueSheet.js.map +1 -1
  17. package/lib/typescript/commonjs/src/TrueSheet.d.ts +8 -0
  18. package/lib/typescript/commonjs/src/TrueSheet.d.ts.map +1 -1
  19. package/lib/typescript/commonjs/src/TrueSheet.types.d.ts +33 -5
  20. package/lib/typescript/commonjs/src/TrueSheet.types.d.ts.map +1 -1
  21. package/lib/typescript/module/src/TrueSheet.d.ts +8 -0
  22. package/lib/typescript/module/src/TrueSheet.d.ts.map +1 -1
  23. package/lib/typescript/module/src/TrueSheet.types.d.ts +33 -5
  24. package/lib/typescript/module/src/TrueSheet.types.d.ts.map +1 -1
  25. package/package.json +8 -6
  26. package/react-native-true-sheet.podspec +1 -1
  27. package/src/TrueSheet.tsx +31 -10
  28. package/src/TrueSheet.types.ts +43 -5
  29. package/android/src/main/java/com/lodev09/truesheet/events/ContainerSizeChangeEvent.kt +0 -23
  30. package/android/src/main/java/com/lodev09/truesheet/events/DismissEvent.kt +0 -16
  31. package/android/src/main/java/com/lodev09/truesheet/events/MountEvent.kt +0 -16
  32. package/android/src/main/java/com/lodev09/truesheet/events/PresentEvent.kt +0 -23
  33. package/android/src/main/java/com/lodev09/truesheet/events/SizeChangeEvent.kt +0 -23
@@ -28,6 +28,9 @@ export class TrueSheet extends PureComponent {
28
28
  this.onDismiss = this.onDismiss.bind(this);
29
29
  this.onPresent = this.onPresent.bind(this);
30
30
  this.onSizeChange = this.onSizeChange.bind(this);
31
+ this.onDragBegin = this.onDragBegin.bind(this);
32
+ this.onDragChange = this.onDragChange.bind(this);
33
+ this.onDragEnd = this.onDragEnd.bind(this);
31
34
  this.onContentLayout = this.onContentLayout.bind(this);
32
35
  this.onFooterLayout = this.onFooterLayout.bind(this);
33
36
  this.onContainerSizeChange = this.onContainerSizeChange.bind(this);
@@ -92,7 +95,7 @@ export class TrueSheet extends PureComponent {
92
95
  });
93
96
  }
94
97
  onSizeChange(event) {
95
- this.props.onSizeChange?.(event.nativeEvent);
98
+ this.props.onSizeChange?.(event);
96
99
  }
97
100
  onContainerSizeChange(event) {
98
101
  this.setState({
@@ -101,7 +104,7 @@ export class TrueSheet extends PureComponent {
101
104
  });
102
105
  }
103
106
  onPresent(event) {
104
- this.props.onPresent?.(event.nativeEvent);
107
+ this.props.onPresent?.(event);
105
108
  }
106
109
  onFooterLayout(event) {
107
110
  this.setState({
@@ -119,6 +122,15 @@ export class TrueSheet extends PureComponent {
119
122
  onMount() {
120
123
  this.props.onMount?.();
121
124
  }
125
+ onDragBegin(event) {
126
+ this.props.onDragBegin?.(event);
127
+ }
128
+ onDragChange(event) {
129
+ this.props.onDragChange?.(event);
130
+ }
131
+ onDragEnd(event) {
132
+ this.props.onDragEnd?.(event);
133
+ }
122
134
 
123
135
  /**
124
136
  * Present the sheet. Optionally accepts a size `index`.
@@ -196,6 +208,9 @@ export class TrueSheet extends PureComponent {
196
208
  onPresent: this.onPresent,
197
209
  onDismiss: this.onDismiss,
198
210
  onSizeChange: this.onSizeChange,
211
+ onDragBegin: this.onDragBegin,
212
+ onDragChange: this.onDragChange,
213
+ onDragEnd: this.onDragEnd,
199
214
  onContainerSizeChange: this.onContainerSizeChange,
200
215
  children: /*#__PURE__*/_jsxs(View, {
201
216
  collapsable: false,
@@ -1 +1 @@
1
- {"version":3,"names":["PureComponent","createRef","requireNativeComponent","Platform","findNodeHandle","View","processColor","TrueSheetModule","TrueSheetGrabber","TrueSheetFooter","jsx","_jsx","jsxs","_jsxs","NATIVE_COMPONENT_NAME","LINKING_ERROR","select","ios","default","TrueSheetNativeView","Error","TrueSheet","displayName","handles","constructor","props","ref","onMount","bind","onDismiss","onPresent","onSizeChange","onContentLayout","onFooterLayout","onContainerSizeChange","state","containerWidth","undefined","containerHeight","contentHeight","footerHeight","scrollableHandle","getHandle","name","handle","console","warn","present","index","dismiss","resize","nodeHandle","current","updateState","scrollRef","setState","event","nativeEvent","width","height","layout","componentDidMount","sizes","length","componentDidUpdate","render","backgroundColor","dismissible","grabber","dimmed","initialIndexAnimated","edgeToEdge","keyboardMode","initialIndex","dimmedIndex","grabberProps","blurTint","cornerRadius","maxHeight","FooterComponent","style","contentContainerStyle","children","rest","$nativeSheet","background","collapsable","overflow","android","onLayout","Component","OS","visible","position","left","zIndex"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PureComponent","createRef","requireNativeComponent","Platform","findNodeHandle","View","processColor","TrueSheetModule","TrueSheetGrabber","TrueSheetFooter","jsx","_jsx","jsxs","_jsxs","NATIVE_COMPONENT_NAME","LINKING_ERROR","select","ios","default","TrueSheetNativeView","Error","TrueSheet","displayName","handles","constructor","props","ref","onMount","bind","onDismiss","onPresent","onSizeChange","onDragBegin","onDragChange","onDragEnd","onContentLayout","onFooterLayout","onContainerSizeChange","state","containerWidth","undefined","containerHeight","contentHeight","footerHeight","scrollableHandle","getHandle","name","handle","console","warn","present","index","dismiss","resize","nodeHandle","current","updateState","scrollRef","setState","event","nativeEvent","width","height","layout","componentDidMount","sizes","length","componentDidUpdate","render","backgroundColor","dismissible","grabber","dimmed","initialIndexAnimated","edgeToEdge","keyboardMode","initialIndex","dimmedIndex","grabberProps","blurTint","cornerRadius","maxHeight","FooterComponent","style","contentContainerStyle","children","rest","$nativeSheet","background","collapsable","overflow","android","onLayout","Component","OS","visible","position","left","zIndex"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAA6BC,SAAS,QAAwB,OAAO;AAC3F,SACEC,sBAAsB,EACtBC,QAAQ,EACRC,cAAc,EACdC,IAAI,EAMJC,YAAY,QACP,cAAc;AAUrB,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,eAAe,QAAQ,sBAAmB;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAEnD,MAAMC,qBAAqB,GAAG,eAAe;AAC7C,MAAMC,aAAa,GACjB,2FAA2F,GAC3FZ,QAAQ,CAACa,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAsBjC,MAAMC,mBAAmB,GAAGjB,sBAAsB,CAA2BY,qBAAqB,CAAC;AAEnG,IAAI,CAACK,mBAAmB,EAAE;EACxB,MAAM,IAAIC,KAAK,CAACL,aAAa,CAAC;AAChC;AAEA,OAAO,MAAMM,SAAS,SAASrB,aAAa,CAAiC;EAC3EsB,WAAW,GAAG,WAAW;EAIzB;AACF;AACA;EACE,OAAwBC,OAAO,GAA+B,CAAC,CAAC;EAEhEC,WAAWA,CAACC,KAAqB,EAAE;IACjC,KAAK,CAACA,KAAK,CAAC;IAEZ,IAAI,CAACC,GAAG,gBAAGzB,SAAS,CAAY,CAAC;IAEjC,IAAI,CAAC0B,OAAO,GAAG,IAAI,CAACA,OAAO,CAACC,IAAI,CAAC,IAAI,CAAC;IACtC,IAAI,CAACC,SAAS,GAAG,IAAI,CAACA,SAAS,CAACD,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,CAACE,SAAS,GAAG,IAAI,CAACA,SAAS,CAACF,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,CAACG,YAAY,GAAG,IAAI,CAACA,YAAY,CAACH,IAAI,CAAC,IAAI,CAAC;IAChD,IAAI,CAACI,WAAW,GAAG,IAAI,CAACA,WAAW,CAACJ,IAAI,CAAC,IAAI,CAAC;IAC9C,IAAI,CAACK,YAAY,GAAG,IAAI,CAACA,YAAY,CAACL,IAAI,CAAC,IAAI,CAAC;IAChD,IAAI,CAACM,SAAS,GAAG,IAAI,CAACA,SAAS,CAACN,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,CAACO,eAAe,GAAG,IAAI,CAACA,eAAe,CAACP,IAAI,CAAC,IAAI,CAAC;IACtD,IAAI,CAACQ,cAAc,GAAG,IAAI,CAACA,cAAc,CAACR,IAAI,CAAC,IAAI,CAAC;IACpD,IAAI,CAACS,qBAAqB,GAAG,IAAI,CAACA,qBAAqB,CAACT,IAAI,CAAC,IAAI,CAAC;IAElE,IAAI,CAACU,KAAK,GAAG;MACXC,cAAc,EAAEC,SAAS;MACzBC,eAAe,EAAED,SAAS;MAC1BE,aAAa,EAAEF,SAAS;MACxBG,YAAY,EAAEH,SAAS;MACvBI,gBAAgB,EAAE;IACpB,CAAC;EACH;EAEA,OAAeC,SAASA,CAACC,IAAY,EAAE;IACrC,MAAMC,MAAM,GAAG1B,SAAS,CAACE,OAAO,CAACuB,IAAI,CAAC;IACtC,IAAI,CAACC,MAAM,EAAE;MACXC,OAAO,CAACC,IAAI,CAAC,uCAAuCH,IAAI,0BAA0B,CAAC;MACnF;IACF;IAEA,OAAOC,MAAM;EACf;;EAEA;AACF;AACA;AACA;EACE,aAAoBG,OAAOA,CAACJ,IAAY,EAAEK,KAAa,GAAG,CAAC,EAAE;IAC3D,MAAMJ,MAAM,GAAG1B,SAAS,CAACwB,SAAS,CAACC,IAAI,CAAC;IACxC,IAAI,CAACC,MAAM,EAAE;IAEb,MAAMxC,eAAe,CAAC2C,OAAO,CAACH,MAAM,EAAEI,KAAK,CAAC;EAC9C;;EAEA;AACF;AACA;AACA;EACE,aAAoBC,OAAOA,CAACN,IAAY,EAAE;IACxC,MAAMC,MAAM,GAAG1B,SAAS,CAACwB,SAAS,CAACC,IAAI,CAAC;IACxC,IAAI,CAACC,MAAM,EAAE;IAEb,MAAMxC,eAAe,CAAC6C,OAAO,CAACL,MAAM,CAAC;EACvC;;EAEA;AACF;AACA;AACA;EACE,aAAoBM,MAAMA,CAACP,IAAY,EAAEK,KAAa,EAAE;IACtD,MAAM9B,SAAS,CAAC6B,OAAO,CAACJ,IAAI,EAAEK,KAAK,CAAC;EACtC;EAEA,IAAYJ,MAAMA,CAAA,EAAW;IAC3B,MAAMO,UAAU,GAAGlD,cAAc,CAAC,IAAI,CAACsB,GAAG,CAAC6B,OAAO,CAAC;IACnD,IAAID,UAAU,IAAI,IAAI,IAAIA,UAAU,KAAK,CAAC,CAAC,EAAE;MAC3C,MAAM,IAAIlC,KAAK,CAAC,+BAA+B,CAAC;IAClD;IAEA,OAAOkC,UAAU;EACnB;EAEQE,WAAWA,CAAA,EAAS;IAC1B,MAAMZ,gBAAgB,GAAG,IAAI,CAACnB,KAAK,CAACgC,SAAS,EAAEF,OAAO,GAClDnD,cAAc,CAAC,IAAI,CAACqB,KAAK,CAACgC,SAAS,CAACF,OAAO,CAAC,GAC5C,IAAI;IAER,IAAI,IAAI,CAAC9B,KAAK,CAACqB,IAAI,EAAE;MACnBzB,SAAS,CAACE,OAAO,CAAC,IAAI,CAACE,KAAK,CAACqB,IAAI,CAAC,GAAG,IAAI,CAACC,MAAM;IAClD;IAEA,IAAI,CAACW,QAAQ,CAAC;MACZd;IACF,CAAC,CAAC;EACJ;EAEQb,YAAYA,CAAC4B,KAAsB,EAAQ;IACjD,IAAI,CAAClC,KAAK,CAACM,YAAY,GAAG4B,KAAK,CAAC;EAClC;EAEQtB,qBAAqBA,CAACsB,KAA+B,EAAQ;IACnE,IAAI,CAACD,QAAQ,CAAC;MACZnB,cAAc,EAAEoB,KAAK,CAACC,WAAW,CAACC,KAAK;MACvCpB,eAAe,EAAEkB,KAAK,CAACC,WAAW,CAACE;IACrC,CAAC,CAAC;EACJ;EAEQhC,SAASA,CAAC6B,KAAmB,EAAQ;IAC3C,IAAI,CAAClC,KAAK,CAACK,SAAS,GAAG6B,KAAK,CAAC;EAC/B;EAEQvB,cAAcA,CAACuB,KAAwB,EAAQ;IACrD,IAAI,CAACD,QAAQ,CAAC;MACZf,YAAY,EAAEgB,KAAK,CAACC,WAAW,CAACG,MAAM,CAACD;IACzC,CAAC,CAAC;EACJ;EAEQ3B,eAAeA,CAACwB,KAAwB,EAAQ;IACtD,IAAI,CAACD,QAAQ,CAAC;MACZhB,aAAa,EAAEiB,KAAK,CAACC,WAAW,CAACG,MAAM,CAACD;IAC1C,CAAC,CAAC;EACJ;EAEQjC,SAASA,CAAA,EAAS;IACxB,IAAI,CAACJ,KAAK,CAACI,SAAS,GAAG,CAAC;EAC1B;EAEQF,OAAOA,CAAA,EAAS;IACtB,IAAI,CAACF,KAAK,CAACE,OAAO,GAAG,CAAC;EACxB;EAEQK,WAAWA,CAAC2B,KAAqB,EAAQ;IAC/C,IAAI,CAAClC,KAAK,CAACO,WAAW,GAAG2B,KAAK,CAAC;EACjC;EAEQ1B,YAAYA,CAAC0B,KAAsB,EAAQ;IACjD,IAAI,CAAClC,KAAK,CAACQ,YAAY,GAAG0B,KAAK,CAAC;EAClC;EAEQzB,SAASA,CAACyB,KAAmB,EAAQ;IAC3C,IAAI,CAAClC,KAAK,CAACS,SAAS,GAAGyB,KAAK,CAAC;EAC/B;;EAEA;AACF;AACA;AACA;EACE,MAAaT,OAAOA,CAACC,KAAa,GAAG,CAAC,EAAiB;IACrD,MAAM5C,eAAe,CAAC2C,OAAO,CAAC,IAAI,CAACH,MAAM,EAAEI,KAAK,CAAC;EACnD;;EAEA;AACF;AACA;AACA;EACE,MAAaE,MAAMA,CAACF,KAAa,EAAiB;IAChD,MAAM,IAAI,CAACD,OAAO,CAACC,KAAK,CAAC;EAC3B;;EAEA;AACF;AACA;EACE,MAAaC,OAAOA,CAAA,EAAkB;IACpC,MAAM7C,eAAe,CAAC6C,OAAO,CAAC,IAAI,CAACL,MAAM,CAAC;EAC5C;EAEAiB,iBAAiBA,CAAA,EAAS;IACxB,IAAI,IAAI,CAACvC,KAAK,CAACwC,KAAK,IAAI,IAAI,CAACxC,KAAK,CAACwC,KAAK,CAACC,MAAM,GAAG,CAAC,EAAE;MACnDlB,OAAO,CAACC,IAAI,CACV,+GACF,CAAC;IACH;IAEA,IAAI,CAACO,WAAW,CAAC,CAAC;EACpB;EAEAW,kBAAkBA,CAAA,EAAS;IACzB,IAAI,CAACX,WAAW,CAAC,CAAC;EACpB;EAEAY,MAAMA,CAAA,EAAc;IAClB,MAAM;MACJH,KAAK,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC;MAC3BI,eAAe,GAAG,OAAO;MACzBC,WAAW,GAAG,IAAI;MAClBC,OAAO,GAAG,IAAI;MACdC,MAAM,GAAG,IAAI;MACbC,oBAAoB,GAAG,IAAI;MAC3BC,UAAU,GAAG,KAAK;MAClBC,YAAY,GAAG,QAAQ;MACvBC,YAAY;MACZC,WAAW;MACXC,YAAY;MACZC,QAAQ;MACRC,YAAY;MACZC,SAAS;MACTC,eAAe;MACfC,KAAK;MACLC,qBAAqB;MACrBC,QAAQ;MACR,GAAGC;IACL,CAAC,GAAG,IAAI,CAAC7D,KAAK;IAEd,oBACEd,IAAA,CAACQ,mBAAmB;MAClBO,GAAG,EAAE,IAAI,CAACA,GAAI;MACdyD,KAAK,EAAEI,YAAa;MACpB3C,gBAAgB,EAAE,IAAI,CAACN,KAAK,CAACM,gBAAiB;MAC9CqB,KAAK,EAAEA,KAAM;MACbc,QAAQ,EAAEA,QAAS;MACnBS,UAAU,EAAElF,YAAY,CAAC+D,eAAe,CAAE;MAC1CW,YAAY,EAAEA,YAAa;MAC3BtC,aAAa,EAAE,IAAI,CAACJ,KAAK,CAACI,aAAc;MACxCC,YAAY,EAAE,IAAI,CAACL,KAAK,CAACK,YAAa;MACtC4B,OAAO,EAAEA,OAAQ;MACjBC,MAAM,EAAEA,MAAO;MACfK,WAAW,EAAEA,WAAY;MACzBH,UAAU,EAAEA,UAAW;MACvBE,YAAY,EAAEA,YAAa;MAC3BH,oBAAoB,EAAEA,oBAAqB;MAC3CE,YAAY,EAAEA,YAAa;MAC3BL,WAAW,EAAEA,WAAY;MACzBW,SAAS,EAAEA,SAAU;MACrBtD,OAAO,EAAE,IAAI,CAACA,OAAQ;MACtBG,SAAS,EAAE,IAAI,CAACA,SAAU;MAC1BD,SAAS,EAAE,IAAI,CAACA,SAAU;MAC1BE,YAAY,EAAE,IAAI,CAACA,YAAa;MAChCC,WAAW,EAAE,IAAI,CAACA,WAAY;MAC9BC,YAAY,EAAE,IAAI,CAACA,YAAa;MAChCC,SAAS,EAAE,IAAI,CAACA,SAAU;MAC1BG,qBAAqB,EAAE,IAAI,CAACA,qBAAsB;MAAAgD,QAAA,eAElDxE,KAAA,CAACR,IAAI;QACHoF,WAAW,EAAE,KAAM;QACnBN,KAAK,EAAE,CACL;UACEO,QAAQ,EAAEvF,QAAQ,CAACa,MAAM,CAAC;YAAEC,GAAG,EAAEuB,SAAS;YAAEmD,OAAO,EAAE;UAAS,CAAC,CAAC;UAEhE;UACA;UACA9B,KAAK,EAAE,IAAI,CAACvB,KAAK,CAACC,cAAc;UAChCuB,MAAM,EAAE,IAAI,CAACxB,KAAK,CAACG;QACrB,CAAC,EACD0C,KAAK,CACL;QAAA,GACEG,IAAI;QAAAD,QAAA,gBAER1E,IAAA,CAACN,IAAI;UAACoF,WAAW,EAAE,KAAM;UAACG,QAAQ,EAAE,IAAI,CAACzD,eAAgB;UAACgD,KAAK,EAAEC,qBAAsB;UAAAC,QAAA,EACpFA;QAAQ,CACL,CAAC,eACP1E,IAAA,CAACN,IAAI;UAACoF,WAAW,EAAE,KAAM;UAACG,QAAQ,EAAE,IAAI,CAACxD,cAAe;UAAAiD,QAAA,eACtD1E,IAAA,CAACF,eAAe;YAACoF,SAAS,EAAEX;UAAgB,CAAE;QAAC,CAC3C,CAAC,EACN/E,QAAQ,CAAC2F,EAAE,KAAK,SAAS,iBAAInF,IAAA,CAACH,gBAAgB;UAACuF,OAAO,EAAExB,OAAQ;UAAA,GAAKO;QAAY,CAAG,CAAC;MAAA,CAClF;IAAC,CACY,CAAC;EAE1B;AACF;AAEA,MAAMS,YAAuB,GAAG;EAC9BS,QAAQ,EAAE,UAAU;EACpBnC,KAAK,EAAE,MAAM;EACboC,IAAI,EAAE,CAAC,IAAI;EACXC,MAAM,EAAE,CAAC;AACX,CAAC","ignoreList":[]}
@@ -1,5 +1,10 @@
1
1
  import { PureComponent, type ReactNode } from 'react';
2
+ import { type NativeSyntheticEvent } from 'react-native';
2
3
  import type { TrueSheetProps } from './TrueSheet.types';
4
+ export type ContainerSizeChangeEvent = NativeSyntheticEvent<{
5
+ width: number;
6
+ height: number;
7
+ }>;
3
8
  interface TrueSheetState {
4
9
  containerWidth?: number;
5
10
  containerHeight?: number;
@@ -40,6 +45,9 @@ export declare class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetSt
40
45
  private onContentLayout;
41
46
  private onDismiss;
42
47
  private onMount;
48
+ private onDragBegin;
49
+ private onDragChange;
50
+ private onDragEnd;
43
51
  /**
44
52
  * Present the sheet. Optionally accepts a size `index`.
45
53
  * See `sizes` prop
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAc3F,OAAO,KAAK,EAAE,cAAc,EAAY,MAAM,mBAAmB,CAAA;AA4BjE,UAAU,cAAc;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;CAChC;AAQD,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAc;IAEzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAsB;IAE1C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAiC;gBAEpD,KAAK,EAAE,cAAc;IAsBjC,OAAO,CAAC,MAAM,CAAC,SAAS;IAUxB;;;OAGG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU;IAO3D;;;OAGG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM;IAOxC;;;OAGG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAItD,OAAO,KAAK,MAAM,GAOjB;IAED,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,OAAO;IAIf;;;OAGG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,iBAAiB,IAAI,IAAI;IAUzB,kBAAkB,IAAI,IAAI;IAI1B,MAAM,IAAI,SAAS;CA2EpB"}
1
+ {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAC3F,OAAO,EAOL,KAAK,oBAAoB,EAI1B,MAAM,cAAc,CAAA;AAErB,OAAO,KAAK,EACV,cAAc,EAMf,MAAM,mBAAmB,CAAA;AAY1B,MAAM,MAAM,wBAAwB,GAAG,oBAAoB,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAY9F,UAAU,cAAc;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;CAChC;AAQD,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAc;IAEzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAsB;IAE1C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAiC;gBAEpD,KAAK,EAAE,cAAc;IAyBjC,OAAO,CAAC,MAAM,CAAC,SAAS;IAUxB;;;OAGG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU;IAO3D;;;OAGG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM;IAOxC;;;OAGG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAItD,OAAO,KAAK,MAAM,GAOjB;IAED,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAIjB;;;OAGG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,iBAAiB,IAAI,IAAI;IAUzB,kBAAkB,IAAI,IAAI;IAI1B,MAAM,IAAI,SAAS;CA8EpB"}
@@ -1,10 +1,15 @@
1
1
  import type { Component, ComponentType, ReactElement, RefObject } from 'react';
2
- import type { ColorValue, StyleProp, ViewProps, ViewStyle } from 'react-native';
2
+ import type { ColorValue, NativeSyntheticEvent, StyleProp, ViewProps, ViewStyle } from 'react-native';
3
3
  import type { TrueSheetGrabberProps } from './TrueSheetGrabber';
4
4
  export interface SizeInfo {
5
5
  index: number;
6
6
  value: number;
7
7
  }
8
+ export type SizeChangeEvent = NativeSyntheticEvent<SizeInfo>;
9
+ export type PresentEvent = NativeSyntheticEvent<SizeInfo>;
10
+ export type DragBeginEvent = NativeSyntheticEvent<SizeInfo>;
11
+ export type DragChangeEvent = NativeSyntheticEvent<SizeInfo>;
12
+ export type DragEndEvent = NativeSyntheticEvent<SizeInfo>;
8
13
  /**
9
14
  * Blur style mapped to native values in IOS.
10
15
  *
@@ -126,8 +131,7 @@ export interface TrueSheetProps extends ViewProps {
126
131
  dismissible?: boolean;
127
132
  /**
128
133
  * Main sheet background color.
129
- * This prop only supports HEX and named colors. Example: `#282e37ff`, `blue`.
130
- *
134
+
131
135
  * @default white
132
136
  */
133
137
  backgroundColor?: ColorValue;
@@ -199,7 +203,7 @@ export interface TrueSheetProps extends ViewProps {
199
203
  * Called when the Sheet has been presented.
200
204
  * Comes with the size info.
201
205
  */
202
- onPresent?: (info: SizeInfo) => void;
206
+ onPresent?: (event: PresentEvent) => void;
203
207
  /**
204
208
  * Called when the Sheet has been dismissed
205
209
  */
@@ -208,6 +212,30 @@ export interface TrueSheetProps extends ViewProps {
208
212
  * Called when the size of the sheet has changed.
209
213
  * Either by dragging or programatically.
210
214
  */
211
- onSizeChange?: (info: SizeInfo) => void;
215
+ onSizeChange?: (event: SizeChangeEvent) => void;
216
+ /**
217
+ * Called when the sheet has began dragging.
218
+ * Comes with the size info.
219
+ *
220
+ * @platform android
221
+ * @platform ios 15+
222
+ */
223
+ onDragBegin?: (event: DragBeginEvent) => void;
224
+ /**
225
+ * Called when the sheet is being dragged.
226
+ * Comes with the size info.
227
+ *
228
+ * @platform android
229
+ * @platform ios 15+
230
+ */
231
+ onDragChange?: (event: DragChangeEvent) => void;
232
+ /**
233
+ * Called when the sheet dragging has ended.
234
+ * Comes with the size info.
235
+ *
236
+ * @platform android
237
+ * @platform ios 15+
238
+ */
239
+ onDragEnd?: (event: DragEndEvent) => void;
212
240
  }
213
241
  //# sourceMappingURL=TrueSheet.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.types.d.ts","sourceRoot":"","sources":["../../../../src/TrueSheet.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAE/D,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,MAAM,GACN,SAAS,GACT,YAAY,GACZ,SAAS,GACT,WAAW,GACX,yBAAyB,GACzB,oBAAoB,GACpB,gBAAgB,GAChB,qBAAqB,GACrB,sBAAsB,GACtB,8BAA8B,GAC9B,yBAAyB,GACzB,qBAAqB,GACrB,0BAA0B,GAC1B,2BAA2B,GAC3B,6BAA6B,GAC7B,wBAAwB,GACxB,oBAAoB,GACpB,yBAAyB,GACzB,0BAA0B,CAAA;AAE9B;;;;;GAKG;AACH,MAAM,MAAM,SAAS;AACnB;;;;;GAKG;AACD,MAAM;AAER;;;;;GAKG;GACD,MAAM;AAER;;;;;GAKG;GACD,GAAG,MAAM,GAAG;AAEd;;;;;GAKG;GACD,OAAO;AAET;;;;;GAKG;GACD,QAAQ;AAEV;;;;;GAKG;GACD,OAAO,CAAA;AAEX,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,SAAS,EAAE,CAAA;IAEnB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAE9B;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,UAAU,CAAA;IAE5B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,qBAAqB,CAAA;IAEpC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAEnB;;OAEG;IACH,qBAAqB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAE5C;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;IAEzC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,eAAe,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,YAAY,CAAA;IAEvD;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAA;IAE/B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAEpB;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAA;IAEpC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IAEtB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAA;CACxC"}
1
+ {"version":3,"file":"TrueSheet.types.d.ts","sourceRoot":"","sources":["../../../../src/TrueSheet.types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,10 @@
1
1
  import { PureComponent, type ReactNode } from 'react';
2
+ import { type NativeSyntheticEvent } from 'react-native';
2
3
  import type { TrueSheetProps } from './TrueSheet.types';
4
+ export type ContainerSizeChangeEvent = NativeSyntheticEvent<{
5
+ width: number;
6
+ height: number;
7
+ }>;
3
8
  interface TrueSheetState {
4
9
  containerWidth?: number;
5
10
  containerHeight?: number;
@@ -40,6 +45,9 @@ export declare class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetSt
40
45
  private onContentLayout;
41
46
  private onDismiss;
42
47
  private onMount;
48
+ private onDragBegin;
49
+ private onDragChange;
50
+ private onDragEnd;
43
51
  /**
44
52
  * Present the sheet. Optionally accepts a size `index`.
45
53
  * See `sizes` prop
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAc3F,OAAO,KAAK,EAAE,cAAc,EAAY,MAAM,mBAAmB,CAAA;AA4BjE,UAAU,cAAc;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;CAChC;AAQD,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAc;IAEzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAsB;IAE1C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAiC;gBAEpD,KAAK,EAAE,cAAc;IAsBjC,OAAO,CAAC,MAAM,CAAC,SAAS;IAUxB;;;OAGG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU;IAO3D;;;OAGG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM;IAOxC;;;OAGG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAItD,OAAO,KAAK,MAAM,GAOjB;IAED,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,OAAO;IAIf;;;OAGG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,iBAAiB,IAAI,IAAI;IAUzB,kBAAkB,IAAI,IAAI;IAI1B,MAAM,IAAI,SAAS;CA2EpB"}
1
+ {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAC3F,OAAO,EAOL,KAAK,oBAAoB,EAI1B,MAAM,cAAc,CAAA;AAErB,OAAO,KAAK,EACV,cAAc,EAMf,MAAM,mBAAmB,CAAA;AAY1B,MAAM,MAAM,wBAAwB,GAAG,oBAAoB,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAY9F,UAAU,cAAc;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;CAChC;AAQD,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAc;IAEzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAsB;IAE1C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAiC;gBAEpD,KAAK,EAAE,cAAc;IAyBjC,OAAO,CAAC,MAAM,CAAC,SAAS;IAUxB;;;OAGG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU;IAO3D;;;OAGG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM;IAOxC;;;OAGG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAItD,OAAO,KAAK,MAAM,GAOjB;IAED,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAIjB;;;OAGG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,iBAAiB,IAAI,IAAI;IAUzB,kBAAkB,IAAI,IAAI;IAI1B,MAAM,IAAI,SAAS;CA8EpB"}
@@ -1,10 +1,15 @@
1
1
  import type { Component, ComponentType, ReactElement, RefObject } from 'react';
2
- import type { ColorValue, StyleProp, ViewProps, ViewStyle } from 'react-native';
2
+ import type { ColorValue, NativeSyntheticEvent, StyleProp, ViewProps, ViewStyle } from 'react-native';
3
3
  import type { TrueSheetGrabberProps } from './TrueSheetGrabber';
4
4
  export interface SizeInfo {
5
5
  index: number;
6
6
  value: number;
7
7
  }
8
+ export type SizeChangeEvent = NativeSyntheticEvent<SizeInfo>;
9
+ export type PresentEvent = NativeSyntheticEvent<SizeInfo>;
10
+ export type DragBeginEvent = NativeSyntheticEvent<SizeInfo>;
11
+ export type DragChangeEvent = NativeSyntheticEvent<SizeInfo>;
12
+ export type DragEndEvent = NativeSyntheticEvent<SizeInfo>;
8
13
  /**
9
14
  * Blur style mapped to native values in IOS.
10
15
  *
@@ -126,8 +131,7 @@ export interface TrueSheetProps extends ViewProps {
126
131
  dismissible?: boolean;
127
132
  /**
128
133
  * Main sheet background color.
129
- * This prop only supports HEX and named colors. Example: `#282e37ff`, `blue`.
130
- *
134
+
131
135
  * @default white
132
136
  */
133
137
  backgroundColor?: ColorValue;
@@ -199,7 +203,7 @@ export interface TrueSheetProps extends ViewProps {
199
203
  * Called when the Sheet has been presented.
200
204
  * Comes with the size info.
201
205
  */
202
- onPresent?: (info: SizeInfo) => void;
206
+ onPresent?: (event: PresentEvent) => void;
203
207
  /**
204
208
  * Called when the Sheet has been dismissed
205
209
  */
@@ -208,6 +212,30 @@ export interface TrueSheetProps extends ViewProps {
208
212
  * Called when the size of the sheet has changed.
209
213
  * Either by dragging or programatically.
210
214
  */
211
- onSizeChange?: (info: SizeInfo) => void;
215
+ onSizeChange?: (event: SizeChangeEvent) => void;
216
+ /**
217
+ * Called when the sheet has began dragging.
218
+ * Comes with the size info.
219
+ *
220
+ * @platform android
221
+ * @platform ios 15+
222
+ */
223
+ onDragBegin?: (event: DragBeginEvent) => void;
224
+ /**
225
+ * Called when the sheet is being dragged.
226
+ * Comes with the size info.
227
+ *
228
+ * @platform android
229
+ * @platform ios 15+
230
+ */
231
+ onDragChange?: (event: DragChangeEvent) => void;
232
+ /**
233
+ * Called when the sheet dragging has ended.
234
+ * Comes with the size info.
235
+ *
236
+ * @platform android
237
+ * @platform ios 15+
238
+ */
239
+ onDragEnd?: (event: DragEndEvent) => void;
212
240
  }
213
241
  //# sourceMappingURL=TrueSheet.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.types.d.ts","sourceRoot":"","sources":["../../../../src/TrueSheet.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAE/D,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,MAAM,GACN,SAAS,GACT,YAAY,GACZ,SAAS,GACT,WAAW,GACX,yBAAyB,GACzB,oBAAoB,GACpB,gBAAgB,GAChB,qBAAqB,GACrB,sBAAsB,GACtB,8BAA8B,GAC9B,yBAAyB,GACzB,qBAAqB,GACrB,0BAA0B,GAC1B,2BAA2B,GAC3B,6BAA6B,GAC7B,wBAAwB,GACxB,oBAAoB,GACpB,yBAAyB,GACzB,0BAA0B,CAAA;AAE9B;;;;;GAKG;AACH,MAAM,MAAM,SAAS;AACnB;;;;;GAKG;AACD,MAAM;AAER;;;;;GAKG;GACD,MAAM;AAER;;;;;GAKG;GACD,GAAG,MAAM,GAAG;AAEd;;;;;GAKG;GACD,OAAO;AAET;;;;;GAKG;GACD,QAAQ;AAEV;;;;;GAKG;GACD,OAAO,CAAA;AAEX,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,SAAS,EAAE,CAAA;IAEnB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAE9B;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,UAAU,CAAA;IAE5B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,qBAAqB,CAAA;IAEpC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAEnB;;OAEG;IACH,qBAAqB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAE5C;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;IAEzC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,eAAe,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,YAAY,CAAA;IAEvD;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAA;IAE/B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAEpB;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAA;IAEpC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IAEtB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAA;CACxC"}
1
+ {"version":3,"file":"TrueSheet.types.d.ts","sourceRoot":"","sources":["../../../../src/TrueSheet.types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodev09/react-native-true-sheet",
3
- "version": "1.1.0",
3
+ "version": "2.0.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/commonjs/index.js",
@@ -44,7 +44,7 @@
44
44
  "lint": "eslint --fix \"**/*.{js,ts,tsx}\"",
45
45
  "format": "prettier --write \"**/*.{js,ts,tsx}\"",
46
46
  "tidy": "yarn typecheck && yarn lint && yarn format && scripts/swiftlint.sh && scripts/ktlint.sh",
47
- "clean": "del-cli android/build example/android/build example/android/app/build example/ios/build lib",
47
+ "clean": "scripts/clean.sh",
48
48
  "prepare": "bob build",
49
49
  "release": "yarn tidy && release-it"
50
50
  },
@@ -74,6 +74,7 @@
74
74
  "@evilmartians/lefthook": "^1.5.0",
75
75
  "@react-native-community/cli": "15.0.1",
76
76
  "@react-native/eslint-config": "^0.73.1",
77
+ "@release-it/conventional-changelog": "^9.0.2",
77
78
  "@types/jest": "^29.5.5",
78
79
  "@types/react": "^18.2.44",
79
80
  "commitlint": "^17.0.2",
@@ -84,9 +85,10 @@
84
85
  "jest": "^29.7.0",
85
86
  "prettier": "^3.0.3",
86
87
  "react": "18.3.1",
87
- "react-native": "0.76.3",
88
- "react-native-builder-bob": "^0.33.3",
88
+ "react-native": "0.77.1",
89
+ "react-native-builder-bob": "^0.37.0",
89
90
  "release-it": "^17.10.0",
91
+ "turbo": "^1.10.7",
90
92
  "typescript": "^5.2.2"
91
93
  },
92
94
  "resolutions": {
@@ -194,8 +196,8 @@
194
196
  ]
195
197
  },
196
198
  "create-react-native-library": {
197
- "type": "view-legacy",
199
+ "type": "legacy-view",
198
200
  "languages": "kotlin-swift",
199
- "version": "0.44.3"
201
+ "version": "0.47.0"
200
202
  }
201
203
  }
@@ -11,7 +11,7 @@ Pod::Spec.new do |s|
11
11
  s.license = package["license"]
12
12
  s.authors = package["author"]
13
13
 
14
- s.platforms = { :ios => min_ios_version_supported }
14
+ s.platforms = { :ios => "13.4" }
15
15
  s.source = { :git => "https://github.com/lodev09/react-native-true-sheet.git", :tag => "#{s.version}" }
16
16
 
17
17
  s.source_files = "ios/**/*.{h,m,mm,swift}"
package/src/TrueSheet.tsx CHANGED
@@ -12,7 +12,14 @@ import {
12
12
  processColor,
13
13
  } from 'react-native'
14
14
 
15
- import type { TrueSheetProps, SizeInfo } from './TrueSheet.types'
15
+ import type {
16
+ TrueSheetProps,
17
+ DragBeginEvent,
18
+ DragChangeEvent,
19
+ DragEndEvent,
20
+ SizeChangeEvent,
21
+ PresentEvent,
22
+ } from './TrueSheet.types'
16
23
  import { TrueSheetModule } from './TrueSheetModule'
17
24
  import { TrueSheetGrabber } from './TrueSheetGrabber'
18
25
  import { TrueSheetFooter } from './TrueSheetFooter'
@@ -24,17 +31,13 @@ const LINKING_ERROR =
24
31
  '- You rebuilt the app after installing the package\n' +
25
32
  '- You are not using Expo Go\n'
26
33
 
27
- type ContainerSizeChangeEvent = NativeSyntheticEvent<{ width: number; height: number }>
28
- type SizeChangeEvent = NativeSyntheticEvent<SizeInfo>
34
+ export type ContainerSizeChangeEvent = NativeSyntheticEvent<{ width: number; height: number }>
29
35
 
30
- interface TrueSheetNativeViewProps
31
- extends Omit<TrueSheetProps, 'onPresent' | 'onSizeChange' | 'backgroundColor'> {
36
+ interface TrueSheetNativeViewProps extends Omit<TrueSheetProps, 'backgroundColor'> {
32
37
  contentHeight?: number
33
38
  footerHeight?: number
34
39
  background?: ProcessedColorValue | null
35
40
  scrollableHandle: number | null
36
- onPresent: (event: SizeChangeEvent) => void
37
- onSizeChange: (event: SizeChangeEvent) => void
38
41
  onContainerSizeChange: (event: ContainerSizeChangeEvent) => void
39
42
  }
40
43
 
@@ -73,6 +76,9 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
73
76
  this.onDismiss = this.onDismiss.bind(this)
74
77
  this.onPresent = this.onPresent.bind(this)
75
78
  this.onSizeChange = this.onSizeChange.bind(this)
79
+ this.onDragBegin = this.onDragBegin.bind(this)
80
+ this.onDragChange = this.onDragChange.bind(this)
81
+ this.onDragEnd = this.onDragEnd.bind(this)
76
82
  this.onContentLayout = this.onContentLayout.bind(this)
77
83
  this.onFooterLayout = this.onFooterLayout.bind(this)
78
84
  this.onContainerSizeChange = this.onContainerSizeChange.bind(this)
@@ -150,7 +156,7 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
150
156
  }
151
157
 
152
158
  private onSizeChange(event: SizeChangeEvent): void {
153
- this.props.onSizeChange?.(event.nativeEvent)
159
+ this.props.onSizeChange?.(event)
154
160
  }
155
161
 
156
162
  private onContainerSizeChange(event: ContainerSizeChangeEvent): void {
@@ -160,8 +166,8 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
160
166
  })
161
167
  }
162
168
 
163
- private onPresent(event: SizeChangeEvent): void {
164
- this.props.onPresent?.(event.nativeEvent)
169
+ private onPresent(event: PresentEvent): void {
170
+ this.props.onPresent?.(event)
165
171
  }
166
172
 
167
173
  private onFooterLayout(event: LayoutChangeEvent): void {
@@ -184,6 +190,18 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
184
190
  this.props.onMount?.()
185
191
  }
186
192
 
193
+ private onDragBegin(event: DragBeginEvent): void {
194
+ this.props.onDragBegin?.(event)
195
+ }
196
+
197
+ private onDragChange(event: DragChangeEvent): void {
198
+ this.props.onDragChange?.(event)
199
+ }
200
+
201
+ private onDragEnd(event: DragEndEvent): void {
202
+ this.props.onDragEnd?.(event)
203
+ }
204
+
187
205
  /**
188
206
  * Present the sheet. Optionally accepts a size `index`.
189
207
  * See `sizes` prop
@@ -268,6 +286,9 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
268
286
  onPresent={this.onPresent}
269
287
  onDismiss={this.onDismiss}
270
288
  onSizeChange={this.onSizeChange}
289
+ onDragBegin={this.onDragBegin}
290
+ onDragChange={this.onDragChange}
291
+ onDragEnd={this.onDragEnd}
271
292
  onContainerSizeChange={this.onContainerSizeChange}
272
293
  >
273
294
  <View
@@ -1,5 +1,11 @@
1
1
  import type { Component, ComponentType, ReactElement, RefObject } from 'react'
2
- import type { ColorValue, StyleProp, ViewProps, ViewStyle } from 'react-native'
2
+ import type {
3
+ ColorValue,
4
+ NativeSyntheticEvent,
5
+ StyleProp,
6
+ ViewProps,
7
+ ViewStyle,
8
+ } from 'react-native'
3
9
 
4
10
  import type { TrueSheetGrabberProps } from './TrueSheetGrabber'
5
11
 
@@ -8,6 +14,12 @@ export interface SizeInfo {
8
14
  value: number
9
15
  }
10
16
 
17
+ export type SizeChangeEvent = NativeSyntheticEvent<SizeInfo>
18
+ export type PresentEvent = NativeSyntheticEvent<SizeInfo>
19
+ export type DragBeginEvent = NativeSyntheticEvent<SizeInfo>
20
+ export type DragChangeEvent = NativeSyntheticEvent<SizeInfo>
21
+ export type DragEndEvent = NativeSyntheticEvent<SizeInfo>
22
+
11
23
  /**
12
24
  * Blur style mapped to native values in IOS.
13
25
  *
@@ -163,8 +175,7 @@ export interface TrueSheetProps extends ViewProps {
163
175
 
164
176
  /**
165
177
  * Main sheet background color.
166
- * This prop only supports HEX and named colors. Example: `#282e37ff`, `blue`.
167
- *
178
+
168
179
  * @default white
169
180
  */
170
181
  backgroundColor?: ColorValue
@@ -248,7 +259,7 @@ export interface TrueSheetProps extends ViewProps {
248
259
  * Called when the Sheet has been presented.
249
260
  * Comes with the size info.
250
261
  */
251
- onPresent?: (info: SizeInfo) => void
262
+ onPresent?: (event: PresentEvent) => void
252
263
 
253
264
  /**
254
265
  * Called when the Sheet has been dismissed
@@ -259,5 +270,32 @@ export interface TrueSheetProps extends ViewProps {
259
270
  * Called when the size of the sheet has changed.
260
271
  * Either by dragging or programatically.
261
272
  */
262
- onSizeChange?: (info: SizeInfo) => void
273
+ onSizeChange?: (event: SizeChangeEvent) => void
274
+
275
+ /**
276
+ * Called when the sheet has began dragging.
277
+ * Comes with the size info.
278
+ *
279
+ * @platform android
280
+ * @platform ios 15+
281
+ */
282
+ onDragBegin?: (event: DragBeginEvent) => void
283
+
284
+ /**
285
+ * Called when the sheet is being dragged.
286
+ * Comes with the size info.
287
+ *
288
+ * @platform android
289
+ * @platform ios 15+
290
+ */
291
+ onDragChange?: (event: DragChangeEvent) => void
292
+
293
+ /**
294
+ * Called when the sheet dragging has ended.
295
+ * Comes with the size info.
296
+ *
297
+ * @platform android
298
+ * @platform ios 15+
299
+ */
300
+ onDragEnd?: (event: DragEndEvent) => void
263
301
  }
@@ -1,23 +0,0 @@
1
- package com.lodev09.truesheet.events
2
-
3
- import com.facebook.react.bridge.Arguments
4
- import com.facebook.react.bridge.WritableMap
5
- import com.facebook.react.uimanager.events.Event
6
-
7
- // onContainerSizeChange
8
- class ContainerSizeChangeEvent(surfaceId: Int, viewId: Int, private val width: Float, private val height: Float) :
9
- Event<ContainerSizeChangeEvent>(surfaceId, viewId) {
10
- override fun getEventName() = EVENT_NAME
11
-
12
- override fun getEventData(): WritableMap {
13
- val data = Arguments.createMap()
14
- data.putDouble("width", width.toDouble())
15
- data.putDouble("height", height.toDouble())
16
-
17
- return data
18
- }
19
-
20
- companion object {
21
- const val EVENT_NAME = "containerSizeChange"
22
- }
23
- }
@@ -1,16 +0,0 @@
1
- package com.lodev09.truesheet.events
2
-
3
- import com.facebook.react.bridge.Arguments
4
- import com.facebook.react.bridge.WritableMap
5
- import com.facebook.react.uimanager.events.Event
6
-
7
- // onDismiss
8
- class DismissEvent(surfaceId: Int, viewId: Int) : Event<DismissEvent>(surfaceId, viewId) {
9
- override fun getEventName() = EVENT_NAME
10
-
11
- override fun getEventData(): WritableMap = Arguments.createMap()
12
-
13
- companion object {
14
- const val EVENT_NAME = "dismiss"
15
- }
16
- }
@@ -1,16 +0,0 @@
1
- package com.lodev09.truesheet.events
2
-
3
- import com.facebook.react.bridge.Arguments
4
- import com.facebook.react.bridge.WritableMap
5
- import com.facebook.react.uimanager.events.Event
6
-
7
- // onMount
8
- class MountEvent(surfaceId: Int, viewId: Int) : Event<MountEvent>(surfaceId, viewId) {
9
- override fun getEventName() = EVENT_NAME
10
-
11
- override fun getEventData(): WritableMap = Arguments.createMap()
12
-
13
- companion object {
14
- const val EVENT_NAME = "ready"
15
- }
16
- }
@@ -1,23 +0,0 @@
1
- package com.lodev09.truesheet.events
2
-
3
- import com.facebook.react.bridge.Arguments
4
- import com.facebook.react.bridge.WritableMap
5
- import com.facebook.react.uimanager.events.Event
6
- import com.lodev09.truesheet.SizeInfo
7
-
8
- // onPresent
9
- class PresentEvent(surfaceId: Int, viewId: Int, private val sizeInfo: SizeInfo) : Event<PresentEvent>(surfaceId, viewId) {
10
- override fun getEventName() = EVENT_NAME
11
-
12
- override fun getEventData(): WritableMap {
13
- val data = Arguments.createMap()
14
- data.putInt("index", sizeInfo.index)
15
- data.putDouble("value", sizeInfo.value.toDouble())
16
-
17
- return data
18
- }
19
-
20
- companion object {
21
- const val EVENT_NAME = "present"
22
- }
23
- }