v0.1.0-alpha.1
Pre-releasePull-to-refresh now preserves browser scrolling more carefully: corrected directional touch-action, a session-scoped touch compatibility adapter, actual scroll-owner and nested-chain checks, and delayed-ref resolution. Root CSS no longer creates a scroll container, so Window scrolling and sticky content compose correctly.
Small thresholds now arm/disarm coherently and refresh hold never adds extra pull. Rejected or synchronously thrown application refreshes settle without core console logging. Editing controls are excluded, and custom surfaces can use data-pull-to-refresh-ignore.
Short website demos now explicitly use their local scroll surface, so desktop dragging also works when the page is scrolled.
This remains an alpha release. Physical iPhone/iPad Safari, Android Chrome, and Firefox Android QA is pending. Page-level custom PTR on iOS Safari is not guaranteed: Safari may retain native browser refresh ownership.
Validation: 71 unit tests and 103 passing Chromium, Firefox and WebKit browser tests in current CI; trusted Chromium touch traces for page and element surfaces; package/API/size checks. JavaScript is 3,042 bytes gzip, with no added runtime dependencies.
Install the alpha explicitly:
npm install @nipe-solutions/react-pull-to-refresh@0.1.0-alpha.1