Releases: mr-ema/onepage-js
OnePageJS v0.1.0-alpha.1
Release Notes: v0.1.0-alpha.1
🚀 New Features
-
Integrated Happydom for DOM-based testing
Added support for Happydom, providing a robust DOM-like environment for testing, ensuring better test reliability and compatibility with DOM APIs. -
Comprehensive Unit Tests
- Element Class Checks & Sibling Comparisons: Enhanced test coverage for validating element class and sibling order logic.
- Wrapper & Element Selection Functions: Verified proper behavior of utility functions for selecting elements and wrappers.
- Scrollable Element & Parent Detection: Introduced tests to ensure reliable detection of scrollable elements and their parent containers.
- Custom Event Handlers: Added detailed tests for DOM events, swipe gestures, keyboard interactions, wheel scrolling, and mutation observers.
- Deep Merge Functionality: Expanded test cases for the
deepMerge
function, ensuring accurate merging of objects. - Utility Functions: Included new test cases for various helper functions like debounce utilities.
- SectionList & Slider Objects: Added targeted unit tests for these objects.
keyup
Event in KeyEventHandler: Included support and tests forkeyup
in custom event handlers.
-
ESM Support
Updated Rollup configuration andpackage.json
to support ECMAScript modules, enabling seamless use withimport
statements in modern JavaScript environments. -
Event Listener Cleanup
Implemented a cleanup function to remove event listeners and observers, preventing memory leaks during teardown.
✨ Improvements
-
Swipe Scroll Compatibility Across Browsers
Enhanced swipe scroll functionality to work across multiple browsers, ensuring a smooth experience beyond Firefox. -
Scroll Detection Accuracy
Introduced tolerance values to mitigate rounding errors, improving scroll start/end detection consistency.
🐛 Bug Fixes
-
Position Logic in
isElementBeforeOrAfter
Resolved issues with position comparisons for DOM elements. -
Depth Handling in Utility Functions
Fixed issues with managing nested structures in utility functions. -
Standalone Slide Validation
Ensured proper parent validation before adding standalone slides to the slider. -
Regex Fix in
extractClassName
Corrected the regular expression logic to handle various class name cases accurately. -
deepMerge
Function Logic
Fixed bugs in deep merging functionality, ensuring robust handling of objects. -
Scroll Direction Reset
Updated scroll event handling to reset direction tracking correctly, avoiding persistent outdated axis data. -
Optimized Scroll Axis Logic
Improved the efficiency of scroll axis detection, reducing redundant calls and ensuring reliability.
OnePageJS v0.1.0-alpha
Release Notes: OnePageJS v0.1.0-alpha
Key Features:
- Smooth Scrolling: Navigate between sections with fluid transitions for an enhanced user experience.
- Customizable Options: Configure scroll speed, easing functions, and navigation controls effortlessly.
- Swipe Support: Allows users to click and drag to navigate between sections on PCs and swipe on touch devices.
- Zero Dependencies: No external libraries required for basic usage.
Known Limitations:
- Early Development Stage: While fully functional, this release focuses on the basic features. Expect future updates to include more advanced features and optimizations.
- Bun Required for Contributions: If contributing to development, ensure you have Bun installed for tasks like testing and bundling.