* Handle not preventing link when inside htmx enabled element
* Simplify shouldCancel and pass in eltToListenOn to solve from: issue without regressions
* move regex to local variable format
* Added regression test for swap=outerHTML unexpected behavior, checked it failes, implemented initial fix in htmx.js that makes (all) test(s) run and pass.
* Renamed variable in my regression test to be more clear.
* I noticed I wasn't using the copies of the attributes I introduced.Tests were passing and I know why, though. This means I miss one more regression test for the bug in cloneAttributes.
* Added one more regression test for the fix in cloneAttributes.
* Made preservation of htmx- prefixed classes more robust in cloneAttributes after I noted they could as well be removed by mergeTo.setAttribute in the second forEach loop.
* Started as a typo-fix, ended up renaming regression tests to be more explicit.
* Started as a typo-fix, ended up renaming regression tests to be more explicit.
* Removed space that I accidentally added before.
* Applied changes as requested by MichaelWest22.
---------
Co-authored-by: Matteo Smaila <matteo.smaila@314softwaresolutions.com>
Co-authored-by: 1cg <469183+1cg@users.noreply.github.com>
* Move History storage to sessionStorage and history path to window
* Fix type warnings
* Revert currentPathForHistory to move it to its own PR
* fix test
* Improve history support and events
* Improve history event overrides
* Improve history support and events
* Improve history event overrides
* Update Documentation of new event changes
* Add event testing for updated events
* update event doco and rename to historyElt to be consistent
* Improve history support and events
* Improve history event overrides
* Update Documentation of new event changes
* Add event testing for updated events
* update event doco and rename to historyElt to be consistent
* Fix loc coverage test coverage
* Standardize history restore functions to use proper htmx swap functions
* Add test for hx-history-elt attribute
* Fix broken merge conflict resolution
* move delay and view transitions to inside swap function
* Fix indenting and add tests
* move delay and view transitions to inside swap function
* Fix indenting and add tests
* revert rollback of feat: handle 'unset'for HX-Reselect in swap function
* Fixes issue 1537 - OOB does not escape query selector
* Adds test cases for oob swaps where the id contains special characters
* Updated oob multiple elements with the same ID test
* fix(issue-1537): resolved conflicts with master
* fix(issue-1537): fixed codestyle issues
---------
Co-authored-by: Fraser Chapman <fraser.chapman@gmail.com>
Co-authored-by: David Martiník <david.martinik@powerflow.cz>
* Remove old IE support
* don't need regex in normalizePath
* fix verifyPath to handle about: situations like some iframes now that there is no fallback
* improve diff
* fix logic mistake in last diff improvment
* Update url normlization test post testing upgrade
* remove un-needed document
* Improve loc coverage by removing dead paths caused by bad type checks and add some tests for other paths
* removed exception for https://github.com/microsoft/playwright/issues/5894 that was fixed in 2022 with webkit 16.0
* Fix old npm dependencies
* implement web-test-runner tests for headless alongside Mocha browser tests
* Increase test and code coverage
* update to 100% coverage and impove eslint
* Update testing Doco
* revert all htmx changes and updates/disable tests needed
* fix browser mocha test
* Default testing to use playwrite only instead of puppeter
* playwright install fix
* Imporve test summary reporting
* flatten false looks closer to original
* Initial suggestion (squashed)
Support multiple extended selectors for hx-include
Additional test for nested standard selector
Add @MichaelWest22 hx-disabled-elt multiple selector test
Add hx-trigger `from` test with multiple extended selectors
Simplify
Include #2915 fix
Update htmx.js
Split for readability
Don't apply global to previous selectors
Rewrite loop, restore global recursive call, minimize diff
Use break for better readability
Co-Authored-By: MichaelWest22 <12867972+MichaelWest22@users.noreply.github.com>
* Keep global as a first-position-only keyword
* Wrapped selector syntax
* Replace substring check by individual chars check
* Fix format
---------
Co-authored-by: MichaelWest22 <12867972+MichaelWest22@users.noreply.github.com>
boosted forms that issue a `GET` (and only a `GET`) and have no `action` attribute or an empty `action` attribute should clear the existing parameters of the current path when submitting lmao
* Failing test for oob-swap within web components
* hx-swap-oob respects shadow roots
* Lint and type fixes
* fix jsdoc types for rootNode parameter
* Fix for linter issue I was confused about before
* oob swaps handle global correctly
* swap uses contextElement if available, document if not
Previous a commit made swapOptions.contextElement a required field. This
could have harmful ramifications for extensions and users, so instead,
the old behavior of assuming document as a root will be used if the
contextElement is not provided.
* rootNode parameter is optional in oobSwap
If not provided, it will fall back to using document as rootNode. jsdocs
have been updated for oobSwap and findAndSwapElements accordingly.