• v1.8.0 4be5bad8ef

    1.8.0 Stable

    danieljsummers released this 2022-07-14 13:24:49 +00:00 | 41 commits to main since this release

    This release brings support for new headers and attributes added in htmx v1.8.0.

    Giraffe.Htmx (server-side)

    • Adds withHxReplaceUrl to send an HX-Replace-Url response header; this takes either a specific URL, the string true to replace with the response's URL, or the string false to explicitly not replace the browser's URL
    • Adds withHxNoReplaceUrl to send an HX-Replace-Url response header with the value of false
    • Adds withHxReswap to send an HX-Reswap response header; valid values are in the HxSwap module, which is visible when Giraffe.Htmx is opened
    • Adds withHxPushUrl to send an HX-Push-Url response header; this works as withHxReplaceUrl does, but for pushing a new URL into the history stack instead of replacing the current one
    • Adds withHxNoPushUrl to send an HX-Push-Url response header with the value of false
    • Obsoletes withHxPush and withHxNoPush, as these were changed to withHxPushUrl and withHxNoPushUrl. The former functions will set the new header, so they will continue to function without breaking; however, they should be replaced, as they will eventually be removed from this library (likely at v2).

    Giraffe.ViewEngine.Htmx (client-side views)

    • Updates Script.minified and Script.unminified nodes to load version 1.8.0.
    • Adds _hxReplaceUrl to generate an hx-replace-url attribute; valid values are "true", "false", or a URL
    • Adds _hxSelectOob to generate an hx-select-oob attribute; it takes a string with the selector for the content you wish to select from the out-of-band response
    • BREAKING CHANGE: Changed _hxPushUrl to be a standard attribute rather than a flag (attribute with no value); it now takes "true", "false", or a URL. To get the same functionality as v1.7.0, change _hxPushUrl to _hxPushUrl "true".
    • BREAKING CHANGE: The HxSwap support module now requires you to open Giraffe.Htmx before it is accessible. (It was moved to a common project, so that the same values could be visible from server-side and client-side. You do not need to install the Giraffe.Htmx package, just open the namespace.)
    Downloads