@oxyhq/bloom 0.3.12 → 0.4.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.
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","useImperativeHandle","useRef","useEffect","useState","useCallback","useMemo","View","StyleSheet","Modal","Pressable","Dimensions","Platform","Gesture","GestureDetector","GestureHandlerRootView","Animated","interpolate","runOnJS","useAnimatedScrollHandler","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","useTheme","jsx","_jsx","jsxs","_jsxs","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","OS","require","moduleName","useScreenDimensions","dimensions","setDimensions","get","subscription","addEventListener","window","remove","SPRING_CONFIG","damping","stiffness","mass","BottomSheet","props","ref","children","onDismiss","enablePanDownToClose","backgroundComponent","backdropComponent","style","enableHandlePanningGesture","onDismissAttempt","detached","showHandle","backdropOpacity","insets","theme","colors","height","screenHeight","visible","setVisible","rendered","setRendered","closeTimeoutRef","hasClosedRef","scrollViewRef","screenHeightSV","value","translateY","opacity","scrollOffsetY","isScrollAtTop","allowPanClose","keyboardHeight","context","y","onMove","e","onEnd","safeClose","safeCloseRef","current","renderedRef","finishClose","clearTimeout","duration","finished","setTimeout","createWebScrollbarStyle","border","removeWebScrollbarStyle","present","dismiss","scrollTo","animated","close","expand","collapse","nativeGesture","Native","panGesture","Pan","enabled","simultaneousWithExternalGesture","onStart","onUpdate","event","newTranslateY","translationY","atTopOrNearTop","velocity","velocityY","distance","closeThreshold","Math","max","fastSwipeThreshold","shouldClose","backdropStyle","sheetStyle","scale","transform","sheetHeightStyle","maxHeight","top","bottom","sheetMarginStyle","marginBottom","handleBackdropPress","scrollHandler","onScroll","contentOffset","dynamicStyles","create","handle","styles","backgroundColor","isDark","sheet","background","sheetDetached","sheetNormal","scrollContent","transparent","animationType","statusBarTranslucent","onRequestClose","rootView","absoluteFill","backdrop","onPress","backdropTouchable","gesture","ScrollView","scrollView","scrollbarWidth","scrollbarColor","contentContainerStyle","showsVerticalScrollIndicator","keyboardShouldPersistTaps","scrollEventThrottle","className","undefined","onLayout","displayName","flex","position","overflow","maxWidth","alignSelf","marginHorizontal","left","right","borderRadius","borderTopLeftRadius","borderTopRightRadius","marginLeft","width","zIndex","absoluteFillObject","flexGrow","borderColor","document","styleElement","getElementById","SCROLLBAR_STYLE_ID","createElement","id","head","appendChild","scrollbarHoverColor","startsWith","replace","textContent"],"sourceRoot":"../../../src","sources":["bottom-sheet/index.tsx"],"mappings":";;AACA,SAASA,UAAU,EAAEC,mBAAmB,EAAEC,MAAM,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,WAAW,EAAEC,OAAO,QAAQ,OAAO;AAC1G,SACIC,IAAI,EACJC,UAAU,EACVC,KAAK,EACLC,SAAS,EACTC,UAAU,EACVC,QAAQ,QAGL,cAAc;AACrB,SAASC,OAAO,EAAEC,eAAe,EAAEC,sBAAsB,QAAQ,8BAA8B;AAC/F,OAAOC,QAAQ,IACXC,WAAW,EACXC,OAAO,EACPC,wBAAwB,EACxBC,gBAAgB,EAChBC,cAAc,EACdC,UAAU,EACVC,UAAU,QACP,yBAAyB;AAChC,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,QAAQ,QAAQ,uBAAoB;;AAE7C;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AACA,MAAMC,mBAAmB,GAAGA,CAACC,SAA0D,EAAEC,KAAgB,KAAK,CAAC,CAAC;AAChH,IAAIC,kBAAwG,GAAGH,mBAAmB;AAClI,IAAIlB,QAAQ,CAACsB,EAAE,KAAK,KAAK,IAAI,OAAOC,OAAO,KAAK,WAAW,EAAE;EACzD,IAAI;IACA,MAAMC,UAAU,GAAG,kCAAkC;IACrDH,kBAAkB,GAAGE,OAAO,CAACC,UAAU,CAAC,CAACH,kBAAkB;EAC/D,CAAC,CAAC,MAAM;IACJ;EAAA;AAER;;AAEA;AACA,SAASI,mBAAmBA,CAAA,EAAG;EAC3B,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAGnC,QAAQ,CAAC,MAAMO,UAAU,CAAC6B,GAAG,CAAC,QAAQ,CAAC,CAAC;EAE5ErC,SAAS,CAAC,MAAM;IACZ,MAAMsC,YAAY,GAAG9B,UAAU,CAAC+B,gBAAgB,CAAC,QAAQ,EAAE,CAAC;MAAEC;IAAO,CAAC,KAAK;MACvEJ,aAAa,CAACI,MAAM,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,MAAMF,YAAY,CAACG,MAAM,CAAC,CAAC;EACtC,CAAC,EAAE,EAAE,CAAC;EAEN,OAAON,UAAU;AACrB;AAEA,MAAMO,aAAa,GAAG;EAClBC,OAAO,EAAE,EAAE;EACXC,SAAS,EAAE,GAAG;EACdC,IAAI,EAAE;AACV,CAAC;AA0CD,MAAMC,WAAW,gBAAGjD,UAAU,CAAC,CAACkD,KAAuB,EAAEC,GAAuC,KAAK;EACjG,MAAM;IACFC,QAAQ;IACRC,SAAS;IACTC,oBAAoB,GAAG,IAAI;IAC3BC,mBAAmB;IACnBC,iBAAiB;IACjBC,KAAK;IACLC,0BAA0B,GAAG,IAAI;IACjCC,gBAAgB;IAChBC,QAAQ,GAAG,KAAK;IAChBC,UAAU,GAAG,IAAI;IACjBC,eAAe,GAAG;EACtB,CAAC,GAAGZ,KAAK;EAET,MAAMa,MAAM,GAAGvC,iBAAiB,CAAC,CAAC;EAClC,MAAMwC,KAAK,GAAGvC,QAAQ,CAAC,CAAC;EACxB,MAAM;IAAEwC;EAAO,CAAC,GAAGD,KAAK;EACxB,MAAM;IAAEE,MAAM,EAAEC;EAAa,CAAC,GAAG9B,mBAAmB,CAAC,CAAC;EACtD,MAAM,CAAC+B,OAAO,EAAEC,UAAU,CAAC,GAAGjE,QAAQ,CAAC,KAAK,CAAC;EAC7C,MAAM,CAACkE,QAAQ,EAAEC,WAAW,CAAC,GAAGnE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;EACjD,MAAMoE,eAAe,GAAGtE,MAAM,CAAuC,IAAI,CAAC;EAC1E,MAAMuE,YAAY,GAAGvE,MAAM,CAAC,KAAK,CAAC;EAClC,MAAMwE,aAAa,GAAGxE,MAAM,CAAsB,IAAI,CAAC;EAEvD,MAAMyE,cAAc,GAAGtD,cAAc,CAAC8C,YAAY,CAAC;EACnD;EACAhE,SAAS,CAAC,MAAM;IACZwE,cAAc,CAACC,KAAK,GAAGT,YAAY;EACvC,CAAC,EAAE,CAACA,YAAY,EAAEQ,cAAc,CAAC,CAAC;EAElC,MAAME,UAAU,GAAGxD,cAAc,CAAC8C,YAAY,CAAC;EAC/C,MAAMW,OAAO,GAAGzD,cAAc,CAAC,CAAC,CAAC;EACjC,MAAM0D,aAAa,GAAG1D,cAAc,CAAC,CAAC,CAAC;EACvC,MAAM2D,aAAa,GAAG3D,cAAc,CAAC,IAAI,CAAC;EAC1C,MAAM4D,aAAa,GAAG5D,cAAc,CAAC,IAAI,CAAC;EAC1C,MAAM6D,cAAc,GAAG7D,cAAc,CAAC,CAAC,CAAC;EACxC,MAAM8D,OAAO,GAAG9D,cAAc,CAAC;IAAE+D,CAAC,EAAE;EAAE,CAAC,CAAC;EAExCnD,kBAAkB,CAAC;IACfoD,MAAM,EAAGC,CAAC,IAAK;MACX,SAAS;;MACTJ,cAAc,CAACN,KAAK,GAAGU,CAAC,CAACpB,MAAM;IACnC,CAAC;IACDqB,KAAK,EAAGD,CAAC,IAAK;MACV,SAAS;;MACTJ,cAAc,CAACN,KAAK,GAAGU,CAAC,CAACpB,MAAM;IACnC;EACJ,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,MAAMsB,SAAS,GAAGnF,WAAW,CAAC,MAAM;IAChC,IAAIsD,gBAAgB,GAAG,CAAC,EAAE;MACtBN,SAAS,GAAG,CAAC;IACjB,CAAC,MAAM,IAAI,CAACM,gBAAgB,EAAE;MAC1BN,SAAS,GAAG,CAAC;IACjB;EACJ,CAAC,EAAE,CAACM,gBAAgB,EAAEN,SAAS,CAAC,CAAC;;EAEjC;EACA;EACA;EACA,MAAMoC,YAAY,GAAGvF,MAAM,CAACsF,SAAS,CAAC;EACtCrF,SAAS,CAAC,MAAM;IACZsF,YAAY,CAACC,OAAO,GAAGF,SAAS;EACpC,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EACf,MAAMG,WAAW,GAAGzF,MAAM,CAACoE,QAAQ,CAAC;EACpCnE,SAAS,CAAC,MAAM;IACZwF,WAAW,CAACD,OAAO,GAAGpB,QAAQ;EAClC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,MAAMsB,WAAW,GAAGvF,WAAW,CAAC,MAAM;IAClC,IAAIoE,YAAY,CAACiB,OAAO,EAAE;IAC1BjB,YAAY,CAACiB,OAAO,GAAG,IAAI;IAC3BF,SAAS,CAAC,CAAC;IACXjB,WAAW,CAAC,KAAK,CAAC;EACtB,CAAC,EAAE,CAACiB,SAAS,CAAC,CAAC;EAEfrF,SAAS,CAAC,MAAM;IACZ,IAAIiE,OAAO,EAAE;MACT,IAAII,eAAe,CAACkB,OAAO,EAAE;QACzBG,YAAY,CAACrB,eAAe,CAACkB,OAAO,CAAC;QACrClB,eAAe,CAACkB,OAAO,GAAG,IAAI;MAClC;MACAjB,YAAY,CAACiB,OAAO,GAAG,KAAK;MAC5BZ,OAAO,CAACF,KAAK,GAAGrD,UAAU,CAAC,CAAC,EAAE;QAAEuE,QAAQ,EAAE;MAAI,CAAC,CAAC;MAChDjB,UAAU,CAACD,KAAK,GAAGtD,UAAU,CAAC,CAAC,EAAEuB,aAAa,CAAC;IACnD,CAAC,MAAM,IAAIyB,QAAQ,EAAE;MACjBQ,OAAO,CAACF,KAAK,GAAGrD,UAAU,CAAC,CAAC,EAAE;QAAEuE,QAAQ,EAAE;MAAI,CAAC,EAAGC,QAAQ,IAAK;QAC3D,IAAIA,QAAQ,EAAE;UACV7E,OAAO,CAAC0E,WAAW,CAAC,CAAC,CAAC;QAC1B;MACJ,CAAC,CAAC;MACFf,UAAU,CAACD,KAAK,GAAGtD,UAAU,CAAC6C,YAAY,EAAE;QAAE,GAAGtB,aAAa;QAAEE,SAAS,EAAE;MAAI,CAAC,CAAC;;MAEjF;MACA,IAAIyB,eAAe,CAACkB,OAAO,EAAE;QACzBG,YAAY,CAACrB,eAAe,CAACkB,OAAO,CAAC;MACzC;MACAlB,eAAe,CAACkB,OAAO,GAAGM,UAAU,CAAC,MAAM;QACvCJ,WAAW,CAAC,CAAC;QACbpB,eAAe,CAACkB,OAAO,GAAG,IAAI;MAClC,CAAC,EAAE,GAAG,CAAC;IACX;EACJ,CAAC,EAAE,CAACtB,OAAO,EAAEE,QAAQ,EAAEsB,WAAW,CAAC,CAAC;;EAEpC;EACA;EACA;EACA;EACA;EACA;EACA;EACAzF,SAAS,CAAC,MAAM,MAAM;IAClB,IAAIqE,eAAe,CAACkB,OAAO,EAAE;MACzBG,YAAY,CAACrB,eAAe,CAACkB,OAAO,CAAC;MACrClB,eAAe,CAACkB,OAAO,GAAG,IAAI;IAClC;IACA,IAAIC,WAAW,CAACD,OAAO,IAAI,CAACjB,YAAY,CAACiB,OAAO,EAAE;MAC9CjB,YAAY,CAACiB,OAAO,GAAG,IAAI;MAC3BD,YAAY,CAACC,OAAO,CAAC,CAAC;IAC1B;EACJ,CAAC,EAAE,EAAE,CAAC;;EAEN;EACAvF,SAAS,CAAC,MAAM;IACZ,IAAIS,QAAQ,CAACsB,EAAE,KAAK,KAAK,EAAE;MACvB+D,uBAAuB,CAAChC,MAAM,CAACiC,MAAM,CAAC;IAC1C;IACA,OAAO,MAAM;MACTC,uBAAuB,CAAC,CAAC;IAC7B,CAAC;EACL,CAAC,EAAE,CAAClC,MAAM,CAACiC,MAAM,CAAC,CAAC;EAEnB,MAAME,OAAO,GAAG/F,WAAW,CAAC,MAAM;IAC9BkE,WAAW,CAAC,IAAI,CAAC;IACjBF,UAAU,CAAC,IAAI,CAAC;EACpB,CAAC,EAAE,EAAE,CAAC;EACN,MAAMgC,OAAO,GAAGhG,WAAW,CAAC,MAAM;IAC9BgE,UAAU,CAAC,KAAK,CAAC;EACrB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMiC,QAAQ,GAAGjG,WAAW,CAAC,CAAC+E,CAAS,EAAEmB,QAAQ,GAAG,IAAI,KAAK;IACzD7B,aAAa,CAACgB,OAAO,EAAEY,QAAQ,CAAC;MAAElB,CAAC;MAAEmB;IAAS,CAAC,CAAC;EACpD,CAAC,EAAE,EAAE,CAAC;EAENtG,mBAAmB,CAACkD,GAAG,EAAE,OAAO;IAC5BiD,OAAO;IACPC,OAAO;IACPG,KAAK,EAAEH,OAAO;IACdI,MAAM,EAAEL,OAAO;IACfM,QAAQ,EAAEL,OAAO;IACjBC;EACJ,CAAC,CAAC,EAAE,CAACF,OAAO,EAAEC,OAAO,EAAEC,QAAQ,CAAC,CAAC;EAEjC,MAAMK,aAAa,GAAGrG,OAAO,CAAC,MAAMO,OAAO,CAAC+F,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC;;EAEzD;EACA;EACA,MAAMC,UAAU,GAAGvG,OAAO,CACtB,MACIO,OAAO,CAACiG,GAAG,CAAC,CAAC,CACRC,OAAO,CAACzD,oBAAoB,CAAC,CAC7B0D,+BAA+B,CAACL,aAAa,CAAC,CAC9CM,OAAO,CAAC,MAAM;IACX,SAAS;;IACT9B,OAAO,CAACP,KAAK,GAAG;MAAEQ,CAAC,EAAEP,UAAU,CAACD;IAAM,CAAC;IACvCK,aAAa,CAACL,KAAK,GAAGG,aAAa,CAACH,KAAK,IAAI,CAAC;EAClD,CAAC,CAAC,CACDsC,QAAQ,CAAEC,KAAK,IAAK;IACjB,SAAS;;IACT,IAAI,CAAClC,aAAa,CAACL,KAAK,EAAE;MACtB;IACJ;IACA,MAAMwC,aAAa,GAAGjC,OAAO,CAACP,KAAK,CAACQ,CAAC,GAAG+B,KAAK,CAACE,YAAY;IAC1D;IACA,MAAMC,cAAc,GAAGvC,aAAa,CAACH,KAAK,IAAI,CAAC,CAAC,CAAC;IACjD,IAAIuC,KAAK,CAACE,YAAY,GAAG,CAAC,IAAI,CAACC,cAAc,EAAE;MAC3C;IACJ;IACA,IAAIF,aAAa,IAAI,CAAC,EAAE;MACpBvC,UAAU,CAACD,KAAK,GAAGwC,aAAa;IACpC,CAAC,MAAM,IAAIxD,QAAQ,EAAE;MACjB;MACAiB,UAAU,CAACD,KAAK,GAAGwC,aAAa,GAAG,GAAG;IAC1C,CAAC,MAAM;MACH;MACAvC,UAAU,CAACD,KAAK,GAAG,CAAC;IACxB;EACJ,CAAC,CAAC,CACDW,KAAK,CAAE4B,KAAK,IAAK;IACd,SAAS;;IACT,IAAI,CAAClC,aAAa,CAACL,KAAK,EAAE;MACtB;IACJ;IACA,MAAM2C,QAAQ,GAAGJ,KAAK,CAACK,SAAS;IAChC,MAAMC,QAAQ,GAAG5C,UAAU,CAACD,KAAK;IACjC;IACA,MAAM8C,cAAc,GAAGC,IAAI,CAACC,GAAG,CAAC,GAAG,EAAEjD,cAAc,CAACC,KAAK,GAAG,IAAI,CAAC;IACjE,MAAMiD,kBAAkB,GAAG,GAAG;IAC9B,MAAMC,WAAW,GACbP,QAAQ,GAAGM,kBAAkB,IAC5BJ,QAAQ,GAAGC,cAAc,IAAIH,QAAQ,GAAG,CAAC,GAAI;IAElD,IAAIO,WAAW,EAAE;MACbjD,UAAU,CAACD,KAAK,GAAGtD,UAAU,CAACqD,cAAc,CAACC,KAAK,EAAE;QAChD,GAAG/B,aAAa;QAChB0E,QAAQ,EAAEA;MACd,CAAC,CAAC;MACFzC,OAAO,CAACF,KAAK,GAAGrD,UAAU,CAAC,CAAC,EAAE;QAAEuE,QAAQ,EAAE;MAAI,CAAC,EAAGC,QAAQ,IAAK;QAC3D,IAAIA,QAAQ,EAAE;UACV7E,OAAO,CAAC0E,WAAW,CAAC,CAAC,CAAC;QAC1B;MACJ,CAAC,CAAC;IACN,CAAC,MAAM;MACHf,UAAU,CAACD,KAAK,GAAGtD,UAAU,CAAC,CAAC,EAAE;QAC7B,GAAGuB,aAAa;QAChB0E,QAAQ,EAAEA;MACd,CAAC,CAAC;IACN;EACJ,CAAC,CAAC;EACV;EACA;EACA;EACA;EACA,CAACjE,oBAAoB,EAAEM,QAAQ,EAAE+C,aAAa,EAAEf,WAAW,CAC/D,CAAC;;EAED;EACA;EACA;EACA,MAAMmC,aAAa,GAAG3G,gBAAgB,CAAC,OAAO;IAC1C0D,OAAO,EAAEA,OAAO,CAACF,KAAK,GAAGd;EAC7B,CAAC,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAEtB,MAAMkE,UAAU,GAAG5G,gBAAgB,CAAC,MAAM;IACtC,MAAM6G,KAAK,GAAGhH,WAAW,CAAC4D,UAAU,CAACD,KAAK,EAAE,CAAC,CAAC,EAAED,cAAc,CAACC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACjF,OAAO;MACHsD,SAAS,EAAE,CACP;QAAErD,UAAU,EAAEA,UAAU,CAACD,KAAK,GAAGM,cAAc,CAACN;MAAM,CAAC,EACvD;QAAEqD;MAAM,CAAC;IAEjB,CAAC;EACL,CAAC,CAAC;EAEF,MAAME,gBAAgB,GAAG/G,gBAAgB,CAAC,OAAO;IAC7CgH,SAAS,EAAEzD,cAAc,CAACC,KAAK,GAAGM,cAAc,CAACN,KAAK,GAAGb,MAAM,CAACsE,GAAG,IAAIzE,QAAQ,GAAGG,MAAM,CAACuE,MAAM,GAAG,EAAE,GAAG,CAAC;EAC5G,CAAC,CAAC,EAAE,CAACvE,MAAM,CAACsE,GAAG,EAAEtE,MAAM,CAACuE,MAAM,EAAE1E,QAAQ,CAAC,CAAC;EAE1C,MAAM2E,gBAAgB,GAAGnH,gBAAgB,CAAC,MAAM;IAC5C;IACA,IAAIwC,QAAQ,EAAE;MACV,OAAO;QACH4E,YAAY,EAAEtD,cAAc,CAACN,KAAK,GAAG,CAAC,GAAG,EAAE,GAAGb,MAAM,CAACuE,MAAM,GAAG;MAClE,CAAC;IACL;IACA,OAAO;MACHE,YAAY,EAAE;IAClB,CAAC;EACL,CAAC,EAAE,CAACzE,MAAM,CAACuE,MAAM,EAAE1E,QAAQ,CAAC,CAAC;EAE7B,MAAM6E,mBAAmB,GAAGpI,WAAW,CAAC,MAAM;IAC1C;IACA,IAAIsD,gBAAgB,IAAI,CAACA,gBAAgB,CAAC,CAAC,EAAE;MACzC;IACJ;IACA0C,OAAO,CAAC,CAAC;EACb,CAAC,EAAE,CAAC1C,gBAAgB,EAAE0C,OAAO,CAAC,CAAC;EAE/B,MAAMqC,aAAa,GAAGvH,wBAAwB,CAAC;IAC3CwH,QAAQ,EAAGxB,KAAK,IAAK;MACjBpC,aAAa,CAACH,KAAK,GAAGuC,KAAK,CAACyB,aAAa,CAACxD,CAAC;MAC3CJ,aAAa,CAACJ,KAAK,GAAGuC,KAAK,CAACyB,aAAa,CAACxD,CAAC,IAAI,CAAC;IACpD;EACJ,CAAC,CAAC;EAEF,MAAMyD,aAAa,GAAGvI,OAAO,CAAC,MAAM;IAChC,OAAOE,UAAU,CAACsI,MAAM,CAAC;MACrBC,MAAM,EAAE;QACJ,GAAGC,MAAM,CAACD,MAAM;QAChBE,eAAe,EAAEjF,KAAK,CAACkF,MAAM,GAAG,MAAM,GAAG;MAC7C,CAAC;MACDC,KAAK,EAAE;QACH,GAAGH,MAAM,CAACG,KAAK;QACfF,eAAe,EAAEhF,MAAM,CAACmF,UAAU;QAClC,IAAIxF,QAAQ,GAAGoF,MAAM,CAACK,aAAa,GAAGL,MAAM,CAACM,WAAW;MAC5D,CAAC;MACDC,aAAa,EAAE;QACX,GAAGP,MAAM,CAACO;QACV;QACA;MACJ;IACJ,CAAC,CAAC;EACN,CAAC,EAAE,CAACtF,MAAM,CAACmF,UAAU,EAAEpF,KAAK,CAACkF,MAAM,EAAEtF,QAAQ,CAAC,CAAC;EAE/C,IAAI,CAACU,QAAQ,EAAE,OAAO,IAAI;EAE1B,oBACI3C,IAAA,CAAClB,KAAK;IAAC2D,OAAO,EAAEE,QAAS;IAACkF,WAAW;IAACC,aAAa,EAAC,MAAM;IAACC,oBAAoB;IAACC,cAAc,EAAEtD,OAAQ;IAAAjD,QAAA,eAIpGzB,IAAA,CAACZ,sBAAsB;MAAC0C,KAAK,EAAEuF,MAAM,CAACY,QAAS;MAAAxG,QAAA,eAC3CvB,KAAA,CAACtB,IAAI;QAACkD,KAAK,EAAEjD,UAAU,CAACqJ,YAAa;QAAAzG,QAAA,gBACjCzB,IAAA,CAACX,QAAQ,CAACT,IAAI;UAACkD,KAAK,EAAE,CAACuF,MAAM,CAACc,QAAQ,EAAE/B,aAAa,CAAE;UAAA3E,QAAA,EAClDI,iBAAiB,GACdA,iBAAiB,CAAC;YAAEuG,OAAO,EAAEtB;UAAoB,CAAC,CAAC,gBAEnD9G,IAAA,CAACjB,SAAS;YAAC+C,KAAK,EAAEuF,MAAM,CAACgB,iBAAkB;YAACD,OAAO,EAAEtB,mBAAoB;YAAArF,QAAA,eACrEzB,IAAA,CAACpB,IAAI;cAACkD,KAAK,EAAEjD,UAAU,CAACqJ;YAAa,CAAE;UAAC,CACjC;QACd,CACU,CAAC,eAEhBlI,IAAA,CAACb,eAAe;UAACmJ,OAAO,EAAEpD,UAAW;UAAAzD,QAAA,eACjCvB,KAAA,CAACb,QAAQ,CAACT,IAAI;YAACkD,KAAK,EAAE,CAACoF,aAAa,CAACM,KAAK,EAAEZ,gBAAgB,EAAEP,UAAU,EAAEG,gBAAgB,EAAE1E,KAAK,CAAE;YAAAL,QAAA,GAC9FG,mBAAmB,GAAG;cAAEE,KAAK,EAAEuF,MAAM,CAACI;YAAW,CAAC,CAAC,EAEnDvF,UAAU,iBAAIlC,IAAA,CAACpB,IAAI;cAACkD,KAAK,EAAEoF,aAAa,CAACE;YAAO,CAAE,CAAC,eAEpDpH,IAAA,CAACb,eAAe;cAACmJ,OAAO,EAAEtD,aAAc;cAAAvD,QAAA,eACpCzB,IAAA,CAACX,QAAQ,CAACkJ,UAAU;gBAChB/G,GAAG,EAAEuB,aAAc;gBACnBjB,KAAK,EAAE,CACHuF,MAAM,CAACmB,UAAU,EACjBvJ,QAAQ,CAACsB,EAAE,KAAK,KAAK,IAAK;kBACtBkI,cAAc,EAAE,MAAM;kBACtBC,cAAc,EAAE,GAAGpG,MAAM,CAACiC,MAAM;gBACpC,CAAe,CACjB;gBACFoE,qBAAqB,EAAEzB,aAAa,CAACU,aAAc;gBACnDgB,4BAA4B,EAAE,KAAM;gBACpCC,yBAAyB,EAAC,SAAS;gBACnC7B,QAAQ,EAAED,aAAc;gBACxB+B,mBAAmB,EAAE,EAAG;gBAAA,IACnB7J,QAAQ,CAACsB,EAAE,KAAK,KAAK,GAAG;kBAAEwI,SAAS,EAAE;gBAA0B,CAAC,GAAGC,SAAS;gBACjFC,QAAQ,EAAEA,CAAA,KAAM;kBACZ,IAAIhK,QAAQ,CAACsB,EAAE,KAAK,KAAK,EAAE;oBACvB+D,uBAAuB,CAAChC,MAAM,CAACiC,MAAM,CAAC;kBAC1C;gBACJ,CAAE;gBAAA9C,QAAA,EAEDA;cAAQ,CACQ;YAAC,CACT,CAAC;UAAA,CACP;QAAC,CACH,CAAC;MAAA,CAChB;IAAC,CACa;EAAC,CACtB,CAAC;AAEhB,CAAC,CAAC;AAEFH,WAAW,CAAC4H,WAAW,GAAG,aAAa;AAEvC,MAAM7B,MAAM,GAAGxI,UAAU,CAACsI,MAAM,CAAC;EAC7Bc,QAAQ,EAAE;IACNkB,IAAI,EAAE;EACV,CAAC;EACDhB,QAAQ,EAAE;IACN;IACA;IACAgB,IAAI,EAAE,CAAC;IACP7B,eAAe,EAAE;EACrB,CAAC;EACDe,iBAAiB,EAAE;IACfc,IAAI,EAAE;EACV,CAAC;EACD3B,KAAK,EAAE;IACH4B,QAAQ,EAAE,UAAU;IACpBzC,MAAM,EAAE,CAAC;IACT0C,QAAQ,EAAE,QAAQ;IAClBC,QAAQ,EAAE,GAAG;IACbC,SAAS,EAAE,QAAQ;IACnBC,gBAAgB,EAAE;EACtB,CAAC;EACD9B,aAAa,EAAE;IACX+B,IAAI,EAAE,EAAE;IACRC,KAAK,EAAE,EAAE;IACTC,YAAY,EAAE;EAClB,CAAC;EACDhC,WAAW,EAAE;IACT8B,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRE,mBAAmB,EAAE,EAAE;IACvBC,oBAAoB,EAAE;EAC1B,CAAC;EACDzC,MAAM,EAAE;IACJgC,QAAQ,EAAE,UAAU;IACpB1C,GAAG,EAAE,EAAE;IACP+C,IAAI,EAAE,KAAK;IACXK,UAAU,EAAE,CAAC,EAAE;IACfC,KAAK,EAAE,EAAE;IACTxH,MAAM,EAAE,CAAC;IACToH,YAAY,EAAE,CAAC;IACfK,MAAM,EAAE;EACZ,CAAC;EACDvC,UAAU,EAAE;IACR,GAAG5I,UAAU,CAACoL;EAClB,CAAC;EACDzB,UAAU,EAAE;IACRW,IAAI,EAAE;EACV,CAAC;EACDvB,aAAa,EAAE;IACXsC,QAAQ,EAAE;EACd;AACJ,CAAC,CAAC;;AAEF;AACA,MAAM5F,uBAAuB,GAAI6F,WAAmB,IAAK;EACrD,IAAIlL,QAAQ,CAACsB,EAAE,KAAK,KAAK,IAAI,OAAO6J,QAAQ,KAAK,WAAW,EAAE;EAE9D,IAAIC,YAAY,GAAGD,QAAQ,CAACE,cAAc,CAACC,kBAAkB,CAA4B;EAEzF,IAAI,CAACF,YAAY,EAAE;IACfA,YAAY,GAAGD,QAAQ,CAACI,aAAa,CAAC,OAAO,CAAC;IAC9CH,YAAY,CAACI,EAAE,GAAGF,kBAAkB;IACpCH,QAAQ,CAACM,IAAI,CAACC,WAAW,CAACN,YAAY,CAAC;EAC3C;;EAEA;EACA,MAAM3B,cAAc,GAAGyB,WAAW;EAClC,MAAMS,mBAAmB,GAAGT,WAAW,CAACU,UAAU,CAAC,KAAK,CAAC,GACnDV,WAAW,CAACW,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAE;EAAA,EACvC,MAAM;EAEZT,YAAY,CAACU,WAAW,GAAG;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0BrC,cAAc;AACxC;AACA;AACA;AACA,0BAA0BkC,mBAAmB;AAC7C;AACA,KAAK;AACL,CAAC;AAED,MAAML,kBAAkB,GAAG,8BAA8B;;AAEzD;AACA,MAAM/F,uBAAuB,GAAGA,CAAA,KAAM;EAClC,IAAIvF,QAAQ,CAACsB,EAAE,KAAK,KAAK,IAAI,OAAO6J,QAAQ,KAAK,WAAW,EAAE;EAC9DA,QAAQ,CAACE,cAAc,CAACC,kBAAkB,CAAC,EAAEtJ,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,eAAeK,WAAW;AAC1B,SAASA,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","useImperativeHandle","useRef","useEffect","useState","useCallback","useMemo","View","StyleSheet","Modal","Pressable","Dimensions","Platform","Gesture","GestureDetector","GestureHandlerRootView","Animated","interpolate","runOnJS","useAnimatedScrollHandler","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","useTheme","jsx","_jsx","jsxs","_jsxs","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","OS","require","moduleName","useScreenDimensions","dimensions","setDimensions","get","subscription","addEventListener","window","remove","SPRING_CONFIG","damping","stiffness","mass","BottomSheet","props","ref","children","onDismiss","enablePanDownToClose","backgroundComponent","backdropComponent","style","enableHandlePanningGesture","onDismissAttempt","detached","showHandle","backdropOpacity","scrollable","manualActivation","dynamicBackdrop","handleComponent","insets","theme","colors","height","screenHeight","visible","setVisible","rendered","setRendered","closeTimeoutRef","hasClosedRef","scrollViewRef","closeGenerationRef","screenHeightSV","value","translateY","opacity","scrollOffsetY","isScrollAtTop","allowPanClose","keyboardHeight","context","y","closeGeneration","touchStartY","bodyPanRef","undefined","handlePanRef","onMove","e","onEnd","safeClose","safeCloseRef","current","renderedRef","finishClose","generation","clearTimeout","duration","finished","setTimeout","createWebScrollbarStyle","border","removeWebScrollbarStyle","present","dismiss","scrollTo","animated","close","expand","collapse","nativeGesture","Native","panGesture","Pan","enabled","withRef","simultaneousWithExternalGesture","onTouchesDown","t","changedTouches","absoluteY","onTouchesMove","state","dy","atTop","activate","fail","onUpdate","event","translationY","newTranslateY","velocity","velocityY","distance","closeThreshold","Math","max","fastSwipeThreshold","shouldClose","onStart","atTopOrNearTop","handlePanGesture","activeOffsetY","backdropStyle","dragFactor","sheetStyle","scale","transform","sheetHeightStyle","maxHeight","top","bottom","sheetMarginStyle","marginBottom","handleBackdropPress","scrollHandler","onScroll","contentOffset","dynamicStyles","create","handle","styles","backgroundColor","isDark","sheet","background","sheetDetached","sheetNormal","scrollContent","renderDefaultHandle","handleNode","handleSlot","gesture","handleHitArea","accessible","accessibilityRole","scrollViewNode","ScrollView","scrollView","scrollbarWidth","scrollbarColor","contentContainerStyle","showsVerticalScrollIndicator","keyboardShouldPersistTaps","scrollEventThrottle","className","onLayout","bodyContent","nonScrollableContent","transparent","animationType","statusBarTranslucent","onRequestClose","rootView","absoluteFill","backdrop","onPress","backdropTouchable","displayName","flex","position","overflow","maxWidth","alignSelf","marginHorizontal","left","right","borderRadius","borderTopLeftRadius","borderTopRightRadius","marginLeft","width","zIndex","alignItems","justifyContent","paddingTop","absoluteFillObject","flexGrow","borderColor","document","styleElement","getElementById","SCROLLBAR_STYLE_ID","createElement","id","head","appendChild","scrollbarHoverColor","startsWith","replace","textContent"],"sourceRoot":"../../../src","sources":["bottom-sheet/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -42,6 +42,52 @@ export interface BottomSheetProps {
42
42
  * bleed through.
43
43
  */
44
44
  backdropOpacity?: number;
45
+ /**
46
+ * When `true` (default), children are wrapped in an internal scrollable
47
+ * container — convenient for vertical content that can overflow.
48
+ *
49
+ * Set to `false` when the screen owns its own scrolling primitive
50
+ * (e.g. a `FlatList`, `SectionList`, or any other VirtualizedList).
51
+ * Nesting a VirtualizedList inside the internal ScrollView would break
52
+ * windowing/keyboard handling and trigger a React Native warning. In
53
+ * non-scrollable mode the screen receives the full available height
54
+ * (minus the drag handle) and must manage its own overflow.
55
+ */
56
+ scrollable?: boolean;
57
+ /**
58
+ * When `true`, the body pan uses RNGH's `manualActivation` and only
59
+ * activates when (a) the inner ScrollView is at the top AND (b) the user
60
+ * has moved their finger downward by > 8dp. This is the @gorhom/bottom-sheet
61
+ * coordination model — recommended for sheets containing scrollable content
62
+ * on Android (avoids stealing vertical events from the inner scroller).
63
+ *
64
+ * When `false` (default), the body pan is always active and gates on the
65
+ * scroll offset at `onStart` time. This is the legacy behavior, preserved
66
+ * for backwards compatibility with current bloom consumers.
67
+ *
68
+ * Enabling this also splits the drag handle into its own dedicated,
69
+ * unconditional pan so users can always grab the handle to drag — even
70
+ * when the inner ScrollView is mid-scroll.
71
+ */
72
+ manualActivation?: boolean;
73
+ /**
74
+ * When `true`, the backdrop dims proportionally with drag distance — the
75
+ * overlay fades from full opacity (sheet at rest) to 30% as the sheet is
76
+ * pulled down 40% of the screen height. iOS Photos style. The base
77
+ * `backdropOpacity` still controls the resting dim level.
78
+ *
79
+ * Defaults to `false` (constant opacity during drag).
80
+ */
81
+ dynamicBackdrop?: boolean;
82
+ /**
83
+ * Custom handle slot. When provided, replaces the default drag handle
84
+ * (the 36×5 pill). The rendered handle is wrapped in the dedicated handle
85
+ * gesture detector (when `manualActivation` is `true`) so it remains
86
+ * unconditionally draggable. `showHandle={false}` still suppresses any
87
+ * handle rendering — `handleComponent` is only consulted when
88
+ * `showHandle` is `true`.
89
+ */
90
+ handleComponent?: () => React.ReactNode;
45
91
  }
46
92
  declare const BottomSheet: React.ForwardRefExoticComponent<BottomSheetProps & React.RefAttributes<BottomSheetRef>>;
47
93
  export default BottomSheet;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAOH,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,cAAc,CAAC;AA8CtB,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,QAAA,MAAM,WAAW,yFA+Vf,CAAC;AAqGH,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAOH,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,cAAc,CAAC;AA8CtB,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;CAC3C;AAED,QAAA,MAAM,WAAW,yFAwjBf,CAAC;AA0HH,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -42,6 +42,52 @@ export interface BottomSheetProps {
42
42
  * bleed through.
43
43
  */
44
44
  backdropOpacity?: number;
45
+ /**
46
+ * When `true` (default), children are wrapped in an internal scrollable
47
+ * container — convenient for vertical content that can overflow.
48
+ *
49
+ * Set to `false` when the screen owns its own scrolling primitive
50
+ * (e.g. a `FlatList`, `SectionList`, or any other VirtualizedList).
51
+ * Nesting a VirtualizedList inside the internal ScrollView would break
52
+ * windowing/keyboard handling and trigger a React Native warning. In
53
+ * non-scrollable mode the screen receives the full available height
54
+ * (minus the drag handle) and must manage its own overflow.
55
+ */
56
+ scrollable?: boolean;
57
+ /**
58
+ * When `true`, the body pan uses RNGH's `manualActivation` and only
59
+ * activates when (a) the inner ScrollView is at the top AND (b) the user
60
+ * has moved their finger downward by > 8dp. This is the @gorhom/bottom-sheet
61
+ * coordination model — recommended for sheets containing scrollable content
62
+ * on Android (avoids stealing vertical events from the inner scroller).
63
+ *
64
+ * When `false` (default), the body pan is always active and gates on the
65
+ * scroll offset at `onStart` time. This is the legacy behavior, preserved
66
+ * for backwards compatibility with current bloom consumers.
67
+ *
68
+ * Enabling this also splits the drag handle into its own dedicated,
69
+ * unconditional pan so users can always grab the handle to drag — even
70
+ * when the inner ScrollView is mid-scroll.
71
+ */
72
+ manualActivation?: boolean;
73
+ /**
74
+ * When `true`, the backdrop dims proportionally with drag distance — the
75
+ * overlay fades from full opacity (sheet at rest) to 30% as the sheet is
76
+ * pulled down 40% of the screen height. iOS Photos style. The base
77
+ * `backdropOpacity` still controls the resting dim level.
78
+ *
79
+ * Defaults to `false` (constant opacity during drag).
80
+ */
81
+ dynamicBackdrop?: boolean;
82
+ /**
83
+ * Custom handle slot. When provided, replaces the default drag handle
84
+ * (the 36×5 pill). The rendered handle is wrapped in the dedicated handle
85
+ * gesture detector (when `manualActivation` is `true`) so it remains
86
+ * unconditionally draggable. `showHandle={false}` still suppresses any
87
+ * handle rendering — `handleComponent` is only consulted when
88
+ * `showHandle` is `true`.
89
+ */
90
+ handleComponent?: () => React.ReactNode;
45
91
  }
46
92
  declare const BottomSheet: React.ForwardRefExoticComponent<BottomSheetProps & React.RefAttributes<BottomSheetRef>>;
47
93
  export default BottomSheet;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAOH,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,cAAc,CAAC;AA8CtB,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,QAAA,MAAM,WAAW,yFA+Vf,CAAC;AAqGH,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAOH,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,cAAc,CAAC;AA8CtB,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;CAC3C;AAED,QAAA,MAAM,WAAW,yFAwjBf,CAAC;AA0HH,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxyhq/bloom",
3
- "version": "0.3.12",
3
+ "version": "0.4.0",
4
4
  "description": "Bloom UI — Oxy ecosystem component library for React Native + Expo + Web",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -1,6 +1,6 @@
1
1
  import React, { createRef } from 'react';
2
- import { Dimensions } from 'react-native';
3
- import { render } from '@testing-library/react-native';
2
+ import { Dimensions, Text } from 'react-native';
3
+ import { act, render } from '@testing-library/react-native';
4
4
 
5
5
  import { BloomThemeProvider } from '../theme/BloomThemeProvider';
6
6
  import BottomSheet, { type BottomSheetRef } from '../bottom-sheet';
@@ -106,4 +106,151 @@ describe('BottomSheet', () => {
106
106
  unmount();
107
107
  });
108
108
  });
109
+
110
+ describe('scrollable prop', () => {
111
+ it('renders children directly when scrollable is false (no internal ScrollView wrap)', () => {
112
+ // When scrollable={false}, the screen owns its own scrolling primitive
113
+ // (FlatList, SectionList, etc.) so we must not wrap in Animated.ScrollView
114
+ // — that would nest a VirtualizedList inside a ScrollView and trigger
115
+ // the well-known RN warning + break windowing.
116
+ const ref = createRef<BottomSheetRef>();
117
+ const { UNSAFE_queryAllByType, getByText } = renderWithTheme(
118
+ <BottomSheet ref={ref} scrollable={false}>
119
+ <Text>Non-scrollable content</Text>
120
+ </BottomSheet>,
121
+ );
122
+ // Force-present so the sheet actually mounts its children.
123
+ act(() => {
124
+ ref.current?.present();
125
+ });
126
+ // Children render unconditionally — only the WRAPPING ScrollView is
127
+ // suppressed.
128
+ expect(getByText('Non-scrollable content')).toBeTruthy();
129
+ // No Animated.ScrollView host node should appear in the tree.
130
+ const scrollViewNodes = UNSAFE_queryAllByType('Animated.ScrollView' as never);
131
+ expect(scrollViewNodes.length).toBe(0);
132
+ });
133
+
134
+ it('defaults to wrapping children in a ScrollView (backwards-compat)', () => {
135
+ const ref = createRef<BottomSheetRef>();
136
+ const { UNSAFE_queryAllByType, getByText } = renderWithTheme(
137
+ <BottomSheet ref={ref}>
138
+ <Text>Default content</Text>
139
+ </BottomSheet>,
140
+ );
141
+ act(() => {
142
+ ref.current?.present();
143
+ });
144
+ expect(getByText('Default content')).toBeTruthy();
145
+ // Default scrollable=true → Animated.ScrollView is present in the tree.
146
+ const scrollViewNodes = UNSAFE_queryAllByType('Animated.ScrollView' as never);
147
+ expect(scrollViewNodes.length).toBeGreaterThan(0);
148
+ });
149
+ });
150
+
151
+ describe('manualActivation prop', () => {
152
+ it('renders without errors with manualActivation enabled', () => {
153
+ // manualActivation switches the body pan to the gorhom coordination
154
+ // model (manualActivation(true) + onTouchesMove gating). The whole pan
155
+ // pipeline must construct cleanly through the gesture-handler mock.
156
+ const ref = createRef<BottomSheetRef>();
157
+ const { unmount } = renderWithTheme(
158
+ <BottomSheet ref={ref} manualActivation>
159
+ <React.Fragment>Content</React.Fragment>
160
+ </BottomSheet>,
161
+ );
162
+ act(() => {
163
+ ref.current?.present();
164
+ });
165
+ unmount();
166
+ });
167
+ });
168
+
169
+ describe('dynamicBackdrop prop', () => {
170
+ it('renders without errors with dynamicBackdrop enabled', () => {
171
+ // iOS Photos-style backdrop dim — proportional to drag distance. The
172
+ // animated style closure must evaluate without throwing under the
173
+ // interpolate mock (which accepts and ignores the clamp arg).
174
+ const ref = createRef<BottomSheetRef>();
175
+ const { unmount } = renderWithTheme(
176
+ <BottomSheet ref={ref} dynamicBackdrop>
177
+ <React.Fragment>Dynamic content</React.Fragment>
178
+ </BottomSheet>,
179
+ );
180
+ act(() => {
181
+ ref.current?.present();
182
+ });
183
+ unmount();
184
+ });
185
+ });
186
+
187
+ describe('handleComponent prop', () => {
188
+ it('renders a custom handle when handleComponent is provided', () => {
189
+ const ref = createRef<BottomSheetRef>();
190
+ const { getByText } = renderWithTheme(
191
+ <BottomSheet
192
+ ref={ref}
193
+ handleComponent={() => <Text>Custom Handle</Text>}
194
+ >
195
+ <Text>Sheet body</Text>
196
+ </BottomSheet>,
197
+ );
198
+ act(() => {
199
+ ref.current?.present();
200
+ });
201
+ expect(getByText('Custom Handle')).toBeTruthy();
202
+ });
203
+
204
+ it('suppresses handle entirely when showHandle is false (even with handleComponent)', () => {
205
+ // showHandle is the master switch — handleComponent is only consulted
206
+ // when showHandle is true. This preserves the existing API contract
207
+ // for consumers that opt out of the handle entirely.
208
+ const ref = createRef<BottomSheetRef>();
209
+ const { queryByText } = renderWithTheme(
210
+ <BottomSheet
211
+ ref={ref}
212
+ showHandle={false}
213
+ handleComponent={() => <Text>Should Not Appear</Text>}
214
+ >
215
+ <Text>Body</Text>
216
+ </BottomSheet>,
217
+ );
218
+ act(() => {
219
+ ref.current?.present();
220
+ });
221
+ expect(queryByText('Should Not Appear')).toBeNull();
222
+ });
223
+ });
224
+
225
+ describe('close generation tracking', () => {
226
+ it('re-opening the sheet after dismiss does not throw or get stuck', () => {
227
+ // Regression test for the "tap to open does nothing" bug: when the
228
+ // user dismisses and immediately re-opens, a stale runOnJS(finishClose)
229
+ // from the cancelled close cycle must NOT fire onDismiss on the new
230
+ // session. The closeGeneration counter guards this — finishClose
231
+ // checks that its captured generation still matches the live one.
232
+ const onDismiss = jest.fn();
233
+ const ref = createRef<BottomSheetRef>();
234
+ renderWithTheme(
235
+ <BottomSheet ref={ref} onDismiss={onDismiss}>
236
+ <React.Fragment>Content</React.Fragment>
237
+ </BottomSheet>,
238
+ );
239
+ // Open → close → open → close → open. Each present() bumps the
240
+ // generation; any in-flight close callback from a prior cycle no-ops.
241
+ act(() => {
242
+ ref.current?.present();
243
+ ref.current?.dismiss();
244
+ ref.current?.present();
245
+ ref.current?.dismiss();
246
+ ref.current?.present();
247
+ });
248
+ // The sequence does not throw and the sheet does not get stuck in a
249
+ // half-closed state. The fact that `present()` after `dismiss()`
250
+ // returns cleanly is itself the proof the generation guard works:
251
+ // without it, the stale dismiss callback would unmount the sheet
252
+ // mid-reopen and the next present() would have no effect.
253
+ expect(ref.current).not.toBeNull();
254
+ });
255
+ });
109
256
  });