- Updated scrollTo() and Scroller to allow for improved context handling.
- Updated tabFocusLock() to respect disabled or elements with data-focus set to "no-auto".
- Updated EventDispatcher to allow for parent override.
- Added extended behavior for strAccess() to allow reading of not "own prototype property" values.
- Added hex2rgb() for color conversion.
- Updated simpleReplace() with additional argument to allow for custom value conversion.
- Added strCamel2Dash() for string conversion.
- Added strStyle() convert css style object to style string.
- Added objectEmpty to check if an object has empty properties.
- Added measureText() to measure the size of a text block.
- Added hasTouch() for a basic touch support check.
- Updated debounce() to handle variable number of arguments and added an "always callback" that may cancel the delayed execution.
- Added copyToClipboard() and copyToClipboardFallback() for clipboard copy handling.
- Added saveBlobAs() to trigger browsers download "save as" of a generated file blob.
- Added LStorage acting as a localStorage wrapper.
- Added orientation() helper to resolve values to an orientation string.
- Added snapValue() to snap a number to an interval using a tolerance.
- Added eventPrefix option to AsyncRequest class.
- Added position option to Draggable to allow diabling of automatic position calculation.
- Added parent property to Draggable referring to the Draggables parent instance.
- Fixed deprecated substr calls with substring function.
- Improved bindNodeList() arguments and errors.
- Added Draggables override option to override event target position and size.
- Added poll() polling helper, for those rare and hated situations where there is no event or callback.
- Improved Draggables handler, now returns the compiled draggables to allow modifying of options at runtime, primarily the axis and offset, modifying other options might cause unforeseen effects.
- Added additional alignment naming variants, left, right, top and bottom to Draggables.
- Added drag overflow options to Draggables
- Added basic Easing static class for a bunch of easing functions.
- Fixed EventDispatcher.#runSimulated() internal method issues with binding and unbind within listeners.
- Added Draggables class handler for draggable dom elements.
- Added TestRunner class for simple frontend based tests.
- Added afterPaint function callback handler, for precision dom manipulation.
- Improved cssTransition helper with afterPaint handler and updates arguments.
- Added cssTransition helper for handling transitions.
- Added colorand() for generating a random color hex value.
- Changed/fixed slide functions forcing a display: block to only removing a possible hidden state.
- Added getPropertyValues() for fetching custom property values of a given context.
- Fixed getFocusable() NodeList does not support array methods.
- Added path normalize for Scroller.event_scrollToClick() path comparison.
- Added normalizePath() function, to normalize path strings for comparison.
- Added bindMultiClick() method, for clean single and double click binding on same element without conflicts.
- Extended Scroller binding option to include all links that start or contain a hash.
- Extended Scroller click handler to handle root path links with hashes if the path matches the current path.
- Fixed Tracker api and internal arguments to be consistent.
- Added Tracker constructor argument executor to allow customization of the actual tracking event firing.
- Added Tracker class a tracking helper class to run tracking events with conditions and dynamic data assignment.
- Removed devDependencies from package.json.
- Added location.pop, location.before.update, location.replace and location.push events to LocationManager class.
- Updated docs.
- Updated LocationManager with some improved debug information.
- Updated LocationManager.update() method to only throw on push if same url.
- Added isValidFunctionName function to check string assignments.
- Added CallbackEvents class prototype to handle callback responses via events.
- Added LocationManager class to handle url changes and easy state setting and detection.
- Moved getScrollbarWidth and getVisibility internally, only direct imports require a path change.
- Updated docs and hopefully fixed all hash links.
- Added third boolean argument unbind with default false to bindNodeList function.
- Added third boolean argument loop to tabFocusLock function and moved optional selector to fourth argument.
- Added tabFocusLock and getFocusable functions for focus handling and context restrictions.
- Added Scroller config initial option as Array to allow custom target and event binding.
- Cleanup isEmpty function.
- Improved documentation, code and readme.
- Set cloneObject() argument recursive explicitly to default false, causes no change in behaviour.
- Fixed Slide functions instant animation speed 0 not triggering complete since no transition event was fired.
- Added Ratio value class for ratio calculations and expression.
- Added autoTop config option to Scroller class utility.
- Made Scroller.bind() public for binding async contexts at own convenience.
- Link bound by Scroller.bind() will now be marked by attribute
<a data-scrollto="true">
and the scrollTo action may be disabled by setting the attribute to false after the listener is bound.
- Fixed/changed Scroller default offset option from null to 0.
- Updated EventDispatcher.dispatchEvent return value to mimic native dispatchEvent return value.
- Updated Scroller.scrollTo and made scroll.before event cancellable and added scrollTo params to event data.
- Remove withTop argument for scrollTo function.
- Allow scrollTo argument offset as function returning a number.
- Slide function argument speed only accepts number in ms.
- Improved Plugins context debug logging origin.
- Added CustomEvent return to EventDispatcher.dispatchEvent() method.
- Added event dispatch scroll.after to Scoller.scrollTo() method.
- Added hijack option to scroll.before event for Scroller.scrollTo() to allow preventing/hijacking the scroll action.
- Fixed Plugins.runAsync() method internals.
- Updated documentation.
- Added options.complete for Scroller class to provide a default complete callback option.
- Fixed Scroller.event_scrollToClick() event target, should be currentTarget.
- Fixed scrollTo functions withTop option to respect scroll position.
- Added Plugins.require() to check for and fetch required plugins or throw an error.
- Minor improvements.
- Added Exception.previousToStack() fallback for none string stacks.
- Improved docs nav and some minor typos.
- Added detach method to ConsoleInterceptor for global use, change default constructor argument host from document to window.
- Improved Scroller options offset can be arguments array and added Scroller.scrollTo() method, removed scrollComplete( delay ) option.
- Restructured package separated from @squirrel-forge/ui-core@0.7.2 module.