diff --git a/CHANGELOG.md b/CHANGELOG.md index a4db6db..1cb8ac8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,20 @@ All notable changes to BareDOM will be documented in this file. +## [2.6.0] - 2026-04-30 + +### Added + +- **Cancelable change-request events** — Seven input components now fire a cancelable `change-request` event before applying user-initiated value changes. Call `preventDefault()` to block the update (enables controlled component patterns in framework adapters). Components: x-slider, x-text-area, x-select, x-combobox, x-currency-field, x-tabs, x-pagination. + +### Fixed + +- **x-context-menu** — Escape key and click-outside now correctly dismiss the menu. Handlers moved from the overlay layer (which has `pointer-events: none`) to document-level listeners. +- **x-button** — Fixed missing press events on mobile Safari. Added `touch-action: manipulation` and `-webkit-tap-highlight-color: transparent` to the internal button element (reset by `all: unset`). +- **x-carousel demo** — Control panel now uses correct BareDOM event names (`x-switch-change`, `x-form-field-input`, `select-change`, `press`) instead of native DOM events. +- **x-welcome-tour test** — Added missing `^js` type hint to fix Closure Advanced compilation warning. +- **x-combobox** — Fixed undefined category in demo gallery (changed from `"input"` to `"form"`). + ## [2.5.0] - 2026-04-29 ### Added diff --git a/build.clj b/build.clj index 1b87e4e..2b3a40a 100644 --- a/build.clj +++ b/build.clj @@ -2,7 +2,7 @@ (:require [clojure.tools.build.api :as b])) (def lib 'com.github.avanelsas/baredom) -(def version "2.5.0") +(def version "2.6.0") (def class-dir "target/classes") (def jar-file (format "target/%s-%s.jar" (name lib) version)) (def pom-file (format "target/classes/META-INF/maven/%s/%s/pom.xml" diff --git a/deps.edn b/deps.edn index c2148da..63622de 100644 --- a/deps.edn +++ b/deps.edn @@ -6,5 +6,5 @@ :deploy {:deps {slipset/deps-deploy {:mvn/version "0.2.1"}} :mvn/repos {"clojars" {:url "https://repo.clojars.org/"}} :exec-fn deps-deploy.deps-deploy/deploy - :exec-args {:artifact "target/baredom-2.5.0.jar" + :exec-args {:artifact "target/baredom-2.6.0.jar" :installer :remote}}}} diff --git a/docs/installation.md b/docs/installation.md index b70ae76..db9f7fd 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -9,13 +9,13 @@ BareDOM can be consumed three ways: as a **ClojureScript source dependency** (Cl Add BareDOM to your `deps.edn`: ```clojure -{:deps {com.github.avanelsas/baredom {:mvn/version "2.5.0"}}} +{:deps {com.github.avanelsas/baredom {:mvn/version "2.6.0"}}} ``` Or in your `shadow-cljs.edn` dependencies: ```clojure -:dependencies [[com.github.avanelsas/baredom "2.5.0"]] +:dependencies [[com.github.avanelsas/baredom "2.6.0"]] ``` Then require component namespaces directly and call their `init!` function once at startup: @@ -76,7 +76,7 @@ Add the npm package to your `package.json`: ```json { "dependencies": { - "@vanelsas/baredom": "^2.5.0" + "@vanelsas/baredom": "^2.6.0" } } ``` diff --git a/package.json b/package.json index 4d6c1cb..77d893c 100644 --- a/package.json +++ b/package.json @@ -498,7 +498,7 @@ "bugs": { "url": "https://github.com/avanelsas/baredom/issues" }, - "version": "2.5.0", + "version": "2.6.0", "sideEffects": [ "./dist/*.js" ],