Skip to content

Releases: mr-ema/onepage-js

OnePageJS v0.1.0-alpha.1

23 Nov 16:56
Compare
Choose a tag to compare
Pre-release

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 for keyup in custom event handlers.
  • ESM Support
    Updated Rollup configuration and package.json to support ECMAScript modules, enabling seamless use with import 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

18 Nov 18:58
Compare
Choose a tag to compare
Pre-release

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.