diff --git a/.changeset/hint-active-registrations.md b/.changeset/hint-active-registrations.md deleted file mode 100644 index 09c7cc18..00000000 --- a/.changeset/hint-active-registrations.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -'@tanstack/hotkeys': minor -'@tanstack/hotkeys-devtools': minor -'@tanstack/react-hotkeys': minor -'@tanstack/preact-hotkeys': minor -'@tanstack/vue-hotkeys': minor -'@tanstack/solid-hotkeys': minor -'@tanstack/svelte-hotkeys': minor -'@tanstack/angular-hotkeys': minor -'@tanstack/lit-hotkeys': minor -'@tanstack/alpine-hotkeys': minor -'@tanstack/ember-hotkeys': minor -'@tanstack/octane-hotkeys': minor ---- - -Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. - -Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. - -Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. - -Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. diff --git a/examples/angular/injectHeldKeys/package.json b/examples/angular/injectHeldKeys/package.json index 29a0064e..888fca79 100644 --- a/examples/angular/injectHeldKeys/package.json +++ b/examples/angular/injectHeldKeys/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/angular/injectHotkey-sequences/package.json b/examples/angular/injectHotkey-sequences/package.json index e1d0457f..25e5ef61 100644 --- a/examples/angular/injectHotkey-sequences/package.json +++ b/examples/angular/injectHotkey-sequences/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/angular/injectHotkey/package.json b/examples/angular/injectHotkey/package.json index 97a343ab..6c01101e 100644 --- a/examples/angular/injectHotkey/package.json +++ b/examples/angular/injectHotkey/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/angular/injectHotkeyRecorder-sequences/package.json b/examples/angular/injectHotkeyRecorder-sequences/package.json index 7c3ebef4..3194425b 100644 --- a/examples/angular/injectHotkeyRecorder-sequences/package.json +++ b/examples/angular/injectHotkeyRecorder-sequences/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/angular/injectHotkeyRecorder/package.json b/examples/angular/injectHotkeyRecorder/package.json index 133a16d6..59c5e667 100644 --- a/examples/angular/injectHotkeyRecorder/package.json +++ b/examples/angular/injectHotkeyRecorder/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/angular/injectHotkeys-sequences/package.json b/examples/angular/injectHotkeys-sequences/package.json index adb06977..fbebffd2 100644 --- a/examples/angular/injectHotkeys-sequences/package.json +++ b/examples/angular/injectHotkeys-sequences/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/angular/injectHotkeys/package.json b/examples/angular/injectHotkeys/package.json index fc4a6dcb..bb934068 100644 --- a/examples/angular/injectHotkeys/package.json +++ b/examples/angular/injectHotkeys/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/angular/injectKeyHold/package.json b/examples/angular/injectKeyHold/package.json index 485b61ba..185224bb 100644 --- a/examples/angular/injectKeyHold/package.json +++ b/examples/angular/injectKeyHold/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/angular/kitchen-sink/package.json b/examples/angular/kitchen-sink/package.json index d6e6e9ca..1dc67226 100644 --- a/examples/angular/kitchen-sink/package.json +++ b/examples/angular/kitchen-sink/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/angular/scopes/package.json b/examples/angular/scopes/package.json index 60a053db..58b7a049 100644 --- a/examples/angular/scopes/package.json +++ b/examples/angular/scopes/package.json @@ -18,8 +18,8 @@ "@angular/platform-browser-dynamic": "^22.2.1", "@angular/router": "^22.2.1", "@tanstack/angular-devtools": "^0.0.12", - "@tanstack/angular-hotkeys": "^0.16.0", - "@tanstack/angular-hotkeys-devtools": "^0.3.0", + "@tanstack/angular-hotkeys": "^0.17.0", + "@tanstack/angular-hotkeys-devtools": "^0.3.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", "zone.js": "~0.16.3" diff --git a/examples/lit/held-keys/package.json b/examples/lit/held-keys/package.json index 68bbc860..286875d0 100644 --- a/examples/lit/held-keys/package.json +++ b/examples/lit/held-keys/package.json @@ -11,7 +11,7 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/lit-hotkeys": "0.17.0", + "@tanstack/lit-hotkeys": "0.18.0", "lit": "^3.3.3" }, "devDependencies": { diff --git a/examples/lit/hotkey-recorder-sequences/package.json b/examples/lit/hotkey-recorder-sequences/package.json index 6c619f9b..c732f29d 100644 --- a/examples/lit/hotkey-recorder-sequences/package.json +++ b/examples/lit/hotkey-recorder-sequences/package.json @@ -11,7 +11,7 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/lit-hotkeys": "0.17.0", + "@tanstack/lit-hotkeys": "0.18.0", "lit": "^3.3.3" }, "devDependencies": { diff --git a/examples/lit/hotkey-recorder/package.json b/examples/lit/hotkey-recorder/package.json index 677db59c..4b5c1885 100644 --- a/examples/lit/hotkey-recorder/package.json +++ b/examples/lit/hotkey-recorder/package.json @@ -11,7 +11,7 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/lit-hotkeys": "0.17.0", + "@tanstack/lit-hotkeys": "0.18.0", "lit": "^3.3.3" }, "devDependencies": { diff --git a/examples/lit/hotkey-sequences/package.json b/examples/lit/hotkey-sequences/package.json index f6e2c586..09c18c5e 100644 --- a/examples/lit/hotkey-sequences/package.json +++ b/examples/lit/hotkey-sequences/package.json @@ -11,7 +11,7 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/lit-hotkeys": "0.17.0", + "@tanstack/lit-hotkeys": "0.18.0", "lit": "^3.3.3" }, "devDependencies": { diff --git a/examples/lit/hotkey/package.json b/examples/lit/hotkey/package.json index 7041193e..4670e1da 100644 --- a/examples/lit/hotkey/package.json +++ b/examples/lit/hotkey/package.json @@ -11,7 +11,7 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/lit-hotkeys": "0.17.0", + "@tanstack/lit-hotkeys": "0.18.0", "lit": "^3.3.3" }, "devDependencies": { diff --git a/examples/lit/key-hold/package.json b/examples/lit/key-hold/package.json index 03b7fafa..8e3393ef 100644 --- a/examples/lit/key-hold/package.json +++ b/examples/lit/key-hold/package.json @@ -11,7 +11,7 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/lit-hotkeys": "0.17.0", + "@tanstack/lit-hotkeys": "0.18.0", "lit": "^3.3.3" }, "devDependencies": { diff --git a/examples/lit/kitchen-sink/package.json b/examples/lit/kitchen-sink/package.json index 8b216333..f9c6f5ea 100644 --- a/examples/lit/kitchen-sink/package.json +++ b/examples/lit/kitchen-sink/package.json @@ -11,7 +11,7 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/lit-hotkeys": "0.17.0", + "@tanstack/lit-hotkeys": "0.18.0", "lit": "^3.3.3" }, "devDependencies": { diff --git a/examples/preact/kitchen-sink/package.json b/examples/preact/kitchen-sink/package.json index 72979ba1..144be446 100644 --- a/examples/preact/kitchen-sink/package.json +++ b/examples/preact/kitchen-sink/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/preact/scopes/package.json b/examples/preact/scopes/package.json index ea7a0493..34792f91 100644 --- a/examples/preact/scopes/package.json +++ b/examples/preact/scopes/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/preact/useHeldKeys/package.json b/examples/preact/useHeldKeys/package.json index b600e3b9..619e80cc 100644 --- a/examples/preact/useHeldKeys/package.json +++ b/examples/preact/useHeldKeys/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/preact/useHotkey-sequences/package.json b/examples/preact/useHotkey-sequences/package.json index c178e6cb..a6bc4a5d 100644 --- a/examples/preact/useHotkey-sequences/package.json +++ b/examples/preact/useHotkey-sequences/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/preact/useHotkey/package.json b/examples/preact/useHotkey/package.json index bd800ace..a88cee0e 100644 --- a/examples/preact/useHotkey/package.json +++ b/examples/preact/useHotkey/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/preact/useHotkeyRecorder-sequences/package.json b/examples/preact/useHotkeyRecorder-sequences/package.json index 312a9cbf..a8c5a892 100644 --- a/examples/preact/useHotkeyRecorder-sequences/package.json +++ b/examples/preact/useHotkeyRecorder-sequences/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/preact/useHotkeyRecorder/package.json b/examples/preact/useHotkeyRecorder/package.json index 91a1ce66..3148390f 100644 --- a/examples/preact/useHotkeyRecorder/package.json +++ b/examples/preact/useHotkeyRecorder/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/preact/useHotkeys-sequences/package.json b/examples/preact/useHotkeys-sequences/package.json index e5d7b132..26130dd5 100644 --- a/examples/preact/useHotkeys-sequences/package.json +++ b/examples/preact/useHotkeys-sequences/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/preact/useHotkeys/package.json b/examples/preact/useHotkeys/package.json index 57e2fb51..59e744ad 100644 --- a/examples/preact/useHotkeys/package.json +++ b/examples/preact/useHotkeys/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/preact/useKeyhold/package.json b/examples/preact/useKeyhold/package.json index f8240fe6..7d27e618 100644 --- a/examples/preact/useKeyhold/package.json +++ b/examples/preact/useKeyhold/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/preact-hotkeys": "^0.16.0", + "@tanstack/preact-hotkeys": "^0.17.0", "preact": "^11.0.1" }, "devDependencies": { "@preact/preset-vite": "^2.10.6", "@tanstack/preact-devtools": "0.10.13", - "@tanstack/preact-hotkeys-devtools": "^0.11.0", + "@tanstack/preact-hotkeys-devtools": "^0.11.1", "typescript": "6.0.3", "vite": "^8.3.2" } diff --git a/examples/react/kitchen-sink/package.json b/examples/react/kitchen-sink/package.json index 39dd920f..019f6de8 100644 --- a/examples/react/kitchen-sink/package.json +++ b/examples/react/kitchen-sink/package.json @@ -11,14 +11,14 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "@tanstack/react-router": "^1.170.41", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/react/scopes/package.json b/examples/react/scopes/package.json index 74a5f598..18a45dac 100644 --- a/examples/react/scopes/package.json +++ b/examples/react/scopes/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/react/useHeldKeys/package.json b/examples/react/useHeldKeys/package.json index 1286b2fe..7c03c7d3 100644 --- a/examples/react/useHeldKeys/package.json +++ b/examples/react/useHeldKeys/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/react/useHotkey-sequences/package.json b/examples/react/useHotkey-sequences/package.json index 405029eb..ab994036 100644 --- a/examples/react/useHotkey-sequences/package.json +++ b/examples/react/useHotkey-sequences/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/react/useHotkey/package.json b/examples/react/useHotkey/package.json index 12715a7c..3bf95190 100644 --- a/examples/react/useHotkey/package.json +++ b/examples/react/useHotkey/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/react/useHotkeyRecorder-sequences/package.json b/examples/react/useHotkeyRecorder-sequences/package.json index 05992cb3..53754469 100644 --- a/examples/react/useHotkeyRecorder-sequences/package.json +++ b/examples/react/useHotkeyRecorder-sequences/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/react/useHotkeyRecorder/package.json b/examples/react/useHotkeyRecorder/package.json index 8b9ec4d3..7207b4bb 100644 --- a/examples/react/useHotkeyRecorder/package.json +++ b/examples/react/useHotkeyRecorder/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/react/useHotkeys-sequences/package.json b/examples/react/useHotkeys-sequences/package.json index df5cf6d1..2ce9146d 100644 --- a/examples/react/useHotkeys-sequences/package.json +++ b/examples/react/useHotkeys-sequences/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/react/useHotkeys/package.json b/examples/react/useHotkeys/package.json index f34867e7..398bc2b2 100644 --- a/examples/react/useHotkeys/package.json +++ b/examples/react/useHotkeys/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/react/useKeyhold/package.json b/examples/react/useKeyhold/package.json index 8513c4c7..a8ee76f6 100644 --- a/examples/react/useKeyhold/package.json +++ b/examples/react/useKeyhold/package.json @@ -11,13 +11,13 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/react-hotkeys": "^0.16.0", + "@tanstack/react-hotkeys": "^0.17.0", "react": "^19.3.0", "react-dom": "^19.3.0" }, "devDependencies": { "@tanstack/react-devtools": "0.10.13", - "@tanstack/react-hotkeys-devtools": "^0.11.0", + "@tanstack/react-hotkeys-devtools": "^0.11.1", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@vitejs/plugin-react": "^6.1.1", diff --git a/examples/solid/createHeldKeys/package.json b/examples/solid/createHeldKeys/package.json index cda124ce..6c7b6bbb 100644 --- a/examples/solid/createHeldKeys/package.json +++ b/examples/solid/createHeldKeys/package.json @@ -9,8 +9,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/solid/createHotkey-sequences/package.json b/examples/solid/createHotkey-sequences/package.json index c0b15678..4be819fb 100644 --- a/examples/solid/createHotkey-sequences/package.json +++ b/examples/solid/createHotkey-sequences/package.json @@ -9,8 +9,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/solid/createHotkey/package.json b/examples/solid/createHotkey/package.json index e1998794..17670dae 100644 --- a/examples/solid/createHotkey/package.json +++ b/examples/solid/createHotkey/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/solid/createHotkeyRecorder-sequences/package.json b/examples/solid/createHotkeyRecorder-sequences/package.json index cedb5e50..ef3307bf 100644 --- a/examples/solid/createHotkeyRecorder-sequences/package.json +++ b/examples/solid/createHotkeyRecorder-sequences/package.json @@ -9,8 +9,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/solid/createHotkeyRecorder/package.json b/examples/solid/createHotkeyRecorder/package.json index 821a4028..43b1970a 100644 --- a/examples/solid/createHotkeyRecorder/package.json +++ b/examples/solid/createHotkeyRecorder/package.json @@ -9,8 +9,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/solid/createHotkeys-sequences/package.json b/examples/solid/createHotkeys-sequences/package.json index 0dccf83f..9da443ec 100644 --- a/examples/solid/createHotkeys-sequences/package.json +++ b/examples/solid/createHotkeys-sequences/package.json @@ -9,8 +9,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/solid/createHotkeys/package.json b/examples/solid/createHotkeys/package.json index f5b524b5..bcbe9284 100644 --- a/examples/solid/createHotkeys/package.json +++ b/examples/solid/createHotkeys/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/solid/createKeyHold/package.json b/examples/solid/createKeyHold/package.json index f16d717e..38e75dcf 100644 --- a/examples/solid/createKeyHold/package.json +++ b/examples/solid/createKeyHold/package.json @@ -9,8 +9,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/solid/kitchen-sink/package.json b/examples/solid/kitchen-sink/package.json index 302ddf4e..0776f047 100644 --- a/examples/solid/kitchen-sink/package.json +++ b/examples/solid/kitchen-sink/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/solid/scopes/package.json b/examples/solid/scopes/package.json index 2bb6a865..fb5ea8ab 100644 --- a/examples/solid/scopes/package.json +++ b/examples/solid/scopes/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "@tanstack/solid-devtools": "0.8.13", - "@tanstack/solid-hotkeys": "^0.16.0", - "@tanstack/solid-hotkeys-devtools": "^0.11.0", + "@tanstack/solid-hotkeys": "^0.17.0", + "@tanstack/solid-hotkeys-devtools": "^0.11.1", "solid-js": "^1.9.15" }, "devDependencies": { diff --git a/examples/svelte/create-hotkey-recorder-sequences/package.json b/examples/svelte/create-hotkey-recorder-sequences/package.json index 34fadbfc..623abdbe 100644 --- a/examples/svelte/create-hotkey-recorder-sequences/package.json +++ b/examples/svelte/create-hotkey-recorder-sequences/package.json @@ -7,8 +7,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/svelte/create-hotkey-recorder/package.json b/examples/svelte/create-hotkey-recorder/package.json index 474280f8..d1125fe3 100644 --- a/examples/svelte/create-hotkey-recorder/package.json +++ b/examples/svelte/create-hotkey-recorder/package.json @@ -7,8 +7,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/svelte/create-hotkey-sequences/package.json b/examples/svelte/create-hotkey-sequences/package.json index b841b9d0..baf829d0 100644 --- a/examples/svelte/create-hotkey-sequences/package.json +++ b/examples/svelte/create-hotkey-sequences/package.json @@ -7,8 +7,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/svelte/create-hotkey/package.json b/examples/svelte/create-hotkey/package.json index 661dcd30..916d3f27 100644 --- a/examples/svelte/create-hotkey/package.json +++ b/examples/svelte/create-hotkey/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/svelte/create-hotkeys-sequences/package.json b/examples/svelte/create-hotkeys-sequences/package.json index 0fa05bc1..0cf4dd93 100644 --- a/examples/svelte/create-hotkeys-sequences/package.json +++ b/examples/svelte/create-hotkeys-sequences/package.json @@ -7,8 +7,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/svelte/create-hotkeys/package.json b/examples/svelte/create-hotkeys/package.json index 0981ae9f..b1909d67 100644 --- a/examples/svelte/create-hotkeys/package.json +++ b/examples/svelte/create-hotkeys/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/svelte/get-held-keys/package.json b/examples/svelte/get-held-keys/package.json index 2de86817..a948d4e9 100644 --- a/examples/svelte/get-held-keys/package.json +++ b/examples/svelte/get-held-keys/package.json @@ -7,8 +7,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/svelte/get-is-key-held/package.json b/examples/svelte/get-is-key-held/package.json index 2f045d92..61eb4491 100644 --- a/examples/svelte/get-is-key-held/package.json +++ b/examples/svelte/get-is-key-held/package.json @@ -7,8 +7,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/svelte/kitchen-sink/package.json b/examples/svelte/kitchen-sink/package.json index 12aacf56..047430d6 100644 --- a/examples/svelte/kitchen-sink/package.json +++ b/examples/svelte/kitchen-sink/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/svelte/scopes/package.json b/examples/svelte/scopes/package.json index 4d301618..eca848e7 100644 --- a/examples/svelte/scopes/package.json +++ b/examples/svelte/scopes/package.json @@ -12,8 +12,8 @@ }, "dependencies": { "@tanstack/svelte-devtools": "^0.1.7", - "@tanstack/svelte-hotkeys": "0.16.0", - "@tanstack/svelte-hotkeys-devtools": "^0.3.0", + "@tanstack/svelte-hotkeys": "0.17.0", + "@tanstack/svelte-hotkeys-devtools": "^0.3.1", "svelte": "^5.57.1" }, "devDependencies": { diff --git a/examples/vanilla/formatForDisplay/package.json b/examples/vanilla/formatForDisplay/package.json index fbd3f8bb..f0d1289e 100644 --- a/examples/vanilla/formatForDisplay/package.json +++ b/examples/vanilla/formatForDisplay/package.json @@ -11,7 +11,7 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/hotkeys": "^0.17.0" + "@tanstack/hotkeys": "^0.18.0" }, "devDependencies": { "typescript": "6.0.3", diff --git a/examples/vue/kitchen-sink/package.json b/examples/vue/kitchen-sink/package.json index b9e03da7..c1311740 100644 --- a/examples/vue/kitchen-sink/package.json +++ b/examples/vue/kitchen-sink/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/examples/vue/scopes/package.json b/examples/vue/scopes/package.json index 390b04a3..581eeaec 100644 --- a/examples/vue/scopes/package.json +++ b/examples/vue/scopes/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/examples/vue/useHeldKeys/package.json b/examples/vue/useHeldKeys/package.json index e7b36ec3..efdbd738 100644 --- a/examples/vue/useHeldKeys/package.json +++ b/examples/vue/useHeldKeys/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/examples/vue/useHotkey-sequences/package.json b/examples/vue/useHotkey-sequences/package.json index 54b92f81..ab75f849 100644 --- a/examples/vue/useHotkey-sequences/package.json +++ b/examples/vue/useHotkey-sequences/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/examples/vue/useHotkey/package.json b/examples/vue/useHotkey/package.json index 3275e84d..09537a87 100644 --- a/examples/vue/useHotkey/package.json +++ b/examples/vue/useHotkey/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/examples/vue/useHotkeyRecorder-sequences/package.json b/examples/vue/useHotkeyRecorder-sequences/package.json index 20c1d0f1..2a3cfdbe 100644 --- a/examples/vue/useHotkeyRecorder-sequences/package.json +++ b/examples/vue/useHotkeyRecorder-sequences/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/examples/vue/useHotkeyRecorder/package.json b/examples/vue/useHotkeyRecorder/package.json index d2a56307..5bb94050 100644 --- a/examples/vue/useHotkeyRecorder/package.json +++ b/examples/vue/useHotkeyRecorder/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/examples/vue/useHotkeys-sequences/package.json b/examples/vue/useHotkeys-sequences/package.json index 986d3f0c..13b998bf 100644 --- a/examples/vue/useHotkeys-sequences/package.json +++ b/examples/vue/useHotkeys-sequences/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/examples/vue/useHotkeys/package.json b/examples/vue/useHotkeys/package.json index f202bb76..9e46cebf 100644 --- a/examples/vue/useHotkeys/package.json +++ b/examples/vue/useHotkeys/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/examples/vue/useKeyhold/package.json b/examples/vue/useKeyhold/package.json index 3906844e..1b3a5825 100644 --- a/examples/vue/useKeyhold/package.json +++ b/examples/vue/useKeyhold/package.json @@ -11,12 +11,12 @@ "test:types": "tsc" }, "dependencies": { - "@tanstack/vue-hotkeys": "^0.16.0", + "@tanstack/vue-hotkeys": "^0.17.0", "vue": "^3.5.43" }, "devDependencies": { "@tanstack/vue-devtools": "^0.2.27", - "@tanstack/vue-hotkeys-devtools": "^0.11.0", + "@tanstack/vue-hotkeys-devtools": "^0.11.1", "@typescript-eslint/parser": "^8.71.0", "@vitejs/plugin-vue": "^6.0.9", "typescript": "6.0.3", diff --git a/packages/alpine-hotkeys/CHANGELOG.md b/packages/alpine-hotkeys/CHANGELOG.md index bd175b6a..b7f678f9 100644 --- a/packages/alpine-hotkeys/CHANGELOG.md +++ b/packages/alpine-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/alpine-hotkeys +## 0.6.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.5.0 ### Minor Changes diff --git a/packages/alpine-hotkeys/package.json b/packages/alpine-hotkeys/package.json index 6eb2da76..a2438052 100644 --- a/packages/alpine-hotkeys/package.json +++ b/packages/alpine-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/alpine-hotkeys", - "version": "0.5.0", + "version": "0.6.0", "description": "Alpine adapter for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/angular-hotkeys-devtools/CHANGELOG.md b/packages/angular-hotkeys-devtools/CHANGELOG.md index 31808168..5256a5d1 100644 --- a/packages/angular-hotkeys-devtools/CHANGELOG.md +++ b/packages/angular-hotkeys-devtools/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/angular-hotkeys-devtools +## 0.3.1 + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys-devtools@1.6.0 + ## 0.3.0 ### Minor Changes diff --git a/packages/angular-hotkeys-devtools/package.json b/packages/angular-hotkeys-devtools/package.json index da3d2c51..8a01fe04 100644 --- a/packages/angular-hotkeys-devtools/package.json +++ b/packages/angular-hotkeys-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/angular-hotkeys-devtools", - "version": "0.3.0", + "version": "0.3.1", "description": "Angular devtools for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/angular-hotkeys/CHANGELOG.md b/packages/angular-hotkeys/CHANGELOG.md index 8511e348..4b6202f9 100644 --- a/packages/angular-hotkeys/CHANGELOG.md +++ b/packages/angular-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/angular-hotkeys +## 0.17.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.16.0 ### Minor Changes diff --git a/packages/angular-hotkeys/package.json b/packages/angular-hotkeys/package.json index 2a89afeb..6b0b5c49 100644 --- a/packages/angular-hotkeys/package.json +++ b/packages/angular-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/angular-hotkeys", - "version": "0.16.0", + "version": "0.17.0", "description": "Angular adapter for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ember-hotkeys/CHANGELOG.md b/packages/ember-hotkeys/CHANGELOG.md index f17a2dee..7805af61 100644 --- a/packages/ember-hotkeys/CHANGELOG.md +++ b/packages/ember-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/ember-hotkeys +## 0.6.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.5.0 ### Minor Changes diff --git a/packages/ember-hotkeys/package.json b/packages/ember-hotkeys/package.json index 01400af0..e6aece08 100644 --- a/packages/ember-hotkeys/package.json +++ b/packages/ember-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ember-hotkeys", - "version": "0.5.0", + "version": "0.6.0", "description": "Ember adapter for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/hotkeys-devtools/CHANGELOG.md b/packages/hotkeys-devtools/CHANGELOG.md index 649f0b10..4d2a79b8 100644 --- a/packages/hotkeys-devtools/CHANGELOG.md +++ b/packages/hotkeys-devtools/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/hotkeys-devtools +## 1.6.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 1.5.0 ### Minor Changes diff --git a/packages/hotkeys-devtools/package.json b/packages/hotkeys-devtools/package.json index 6256132f..ed83bae1 100644 --- a/packages/hotkeys-devtools/package.json +++ b/packages/hotkeys-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/hotkeys-devtools", - "version": "1.5.0", + "version": "1.6.0", "description": "Devtools for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/hotkeys/CHANGELOG.md b/packages/hotkeys/CHANGELOG.md index c38a1763..a98670e3 100644 --- a/packages/hotkeys/CHANGELOG.md +++ b/packages/hotkeys/CHANGELOG.md @@ -1,5 +1,17 @@ # @tanstack/hotkeys +## 0.18.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + ## 0.17.0 ### Minor Changes diff --git a/packages/hotkeys/package.json b/packages/hotkeys/package.json index 103e4240..7f606d17 100644 --- a/packages/hotkeys/package.json +++ b/packages/hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/hotkeys", - "version": "0.17.0", + "version": "0.18.0", "description": "Type-safe, framework-agnostic keyboard hotkey management for the browser", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/lit-hotkeys/CHANGELOG.md b/packages/lit-hotkeys/CHANGELOG.md index 06aff546..5d2907ce 100644 --- a/packages/lit-hotkeys/CHANGELOG.md +++ b/packages/lit-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/react-hotkeys +## 0.18.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.17.0 ### Minor Changes diff --git a/packages/lit-hotkeys/package.json b/packages/lit-hotkeys/package.json index 72e26af5..7153c35f 100644 --- a/packages/lit-hotkeys/package.json +++ b/packages/lit-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/lit-hotkeys", - "version": "0.17.0", + "version": "0.18.0", "description": "Lit adapter for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/octane-hotkeys/CHANGELOG.md b/packages/octane-hotkeys/CHANGELOG.md index 208c7102..1b51a3a9 100644 --- a/packages/octane-hotkeys/CHANGELOG.md +++ b/packages/octane-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/octane-hotkeys +## 0.7.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.6.0 ### Minor Changes diff --git a/packages/octane-hotkeys/package.json b/packages/octane-hotkeys/package.json index de828602..742b7ea6 100644 --- a/packages/octane-hotkeys/package.json +++ b/packages/octane-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/octane-hotkeys", - "version": "0.6.0", + "version": "0.7.0", "description": "Octane adapter for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/preact-hotkeys-devtools/CHANGELOG.md b/packages/preact-hotkeys-devtools/CHANGELOG.md index 37d190ba..f3ba58f8 100644 --- a/packages/preact-hotkeys-devtools/CHANGELOG.md +++ b/packages/preact-hotkeys-devtools/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/preact-hotkeys-devtools +## 0.11.1 + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys-devtools@1.6.0 + ## 0.11.0 ### Minor Changes diff --git a/packages/preact-hotkeys-devtools/package.json b/packages/preact-hotkeys-devtools/package.json index 747bced4..07d54258 100644 --- a/packages/preact-hotkeys-devtools/package.json +++ b/packages/preact-hotkeys-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/preact-hotkeys-devtools", - "version": "0.11.0", + "version": "0.11.1", "description": "Preact devtools for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/preact-hotkeys/CHANGELOG.md b/packages/preact-hotkeys/CHANGELOG.md index 8e9b912e..34a77eab 100644 --- a/packages/preact-hotkeys/CHANGELOG.md +++ b/packages/preact-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/preact-hotkeys +## 0.17.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.16.0 ### Minor Changes diff --git a/packages/preact-hotkeys/package.json b/packages/preact-hotkeys/package.json index 4afd3576..b2d15949 100644 --- a/packages/preact-hotkeys/package.json +++ b/packages/preact-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/preact-hotkeys", - "version": "0.16.0", + "version": "0.17.0", "description": "Preact adapter for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/react-hotkeys-devtools/CHANGELOG.md b/packages/react-hotkeys-devtools/CHANGELOG.md index 3358eb08..38a63807 100644 --- a/packages/react-hotkeys-devtools/CHANGELOG.md +++ b/packages/react-hotkeys-devtools/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/react-hotkeys-devtools +## 0.11.1 + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys-devtools@1.6.0 + ## 0.11.0 ### Minor Changes diff --git a/packages/react-hotkeys-devtools/package.json b/packages/react-hotkeys-devtools/package.json index 13766a25..25a0e128 100644 --- a/packages/react-hotkeys-devtools/package.json +++ b/packages/react-hotkeys-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/react-hotkeys-devtools", - "version": "0.11.0", + "version": "0.11.1", "description": "React devtools for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/react-hotkeys/CHANGELOG.md b/packages/react-hotkeys/CHANGELOG.md index 5a60dcbb..74d207ac 100644 --- a/packages/react-hotkeys/CHANGELOG.md +++ b/packages/react-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/react-hotkeys +## 0.17.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.16.0 ### Minor Changes diff --git a/packages/react-hotkeys/package.json b/packages/react-hotkeys/package.json index 1de1fea6..056cdf97 100644 --- a/packages/react-hotkeys/package.json +++ b/packages/react-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/react-hotkeys", - "version": "0.16.0", + "version": "0.17.0", "description": "React adapter for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/solid-hotkeys-devtools/CHANGELOG.md b/packages/solid-hotkeys-devtools/CHANGELOG.md index 39da0126..0a5dbbc6 100644 --- a/packages/solid-hotkeys-devtools/CHANGELOG.md +++ b/packages/solid-hotkeys-devtools/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/solid-hotkeys-devtools +## 0.11.1 + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys-devtools@1.6.0 + ## 0.11.0 ### Minor Changes diff --git a/packages/solid-hotkeys-devtools/package.json b/packages/solid-hotkeys-devtools/package.json index fed20d82..65d815c7 100644 --- a/packages/solid-hotkeys-devtools/package.json +++ b/packages/solid-hotkeys-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/solid-hotkeys-devtools", - "version": "0.11.0", + "version": "0.11.1", "description": "SolidJS devtools for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/solid-hotkeys/CHANGELOG.md b/packages/solid-hotkeys/CHANGELOG.md index cfc5e62a..b515eab4 100644 --- a/packages/solid-hotkeys/CHANGELOG.md +++ b/packages/solid-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/solid-hotkeys +## 0.17.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.16.0 ### Minor Changes diff --git a/packages/solid-hotkeys/package.json b/packages/solid-hotkeys/package.json index d193462d..a738ebcb 100644 --- a/packages/solid-hotkeys/package.json +++ b/packages/solid-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/solid-hotkeys", - "version": "0.16.0", + "version": "0.17.0", "description": "SolidJS adapter for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/svelte-hotkeys-devtools/CHANGELOG.md b/packages/svelte-hotkeys-devtools/CHANGELOG.md index 4c34d1ba..88822941 100644 --- a/packages/svelte-hotkeys-devtools/CHANGELOG.md +++ b/packages/svelte-hotkeys-devtools/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/svelte-hotkeys-devtools +## 0.3.1 + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys-devtools@1.6.0 + ## 0.3.0 ### Minor Changes diff --git a/packages/svelte-hotkeys-devtools/package.json b/packages/svelte-hotkeys-devtools/package.json index 39672140..38926476 100644 --- a/packages/svelte-hotkeys-devtools/package.json +++ b/packages/svelte-hotkeys-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/svelte-hotkeys-devtools", - "version": "0.3.0", + "version": "0.3.1", "description": "Svelte devtools for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/svelte-hotkeys/CHANGELOG.md b/packages/svelte-hotkeys/CHANGELOG.md index 017779d4..1da58e75 100644 --- a/packages/svelte-hotkeys/CHANGELOG.md +++ b/packages/svelte-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/svelte-hotkeys +## 0.17.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.16.0 ### Minor Changes diff --git a/packages/svelte-hotkeys/package.json b/packages/svelte-hotkeys/package.json index 636657ec..b1a3d734 100644 --- a/packages/svelte-hotkeys/package.json +++ b/packages/svelte-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/svelte-hotkeys", - "version": "0.16.0", + "version": "0.17.0", "description": "Svelte adapter for TanStack Hotkeys", "author": "Kunal Rao", "license": "MIT", diff --git a/packages/vue-hotkeys-devtools/CHANGELOG.md b/packages/vue-hotkeys-devtools/CHANGELOG.md index 0e89e98a..929ecc1a 100644 --- a/packages/vue-hotkeys-devtools/CHANGELOG.md +++ b/packages/vue-hotkeys-devtools/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/vue-hotkeys-devtools +## 0.11.1 + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys-devtools@1.6.0 + ## 0.11.0 ### Minor Changes diff --git a/packages/vue-hotkeys-devtools/package.json b/packages/vue-hotkeys-devtools/package.json index 2c8fa71e..023503d6 100644 --- a/packages/vue-hotkeys-devtools/package.json +++ b/packages/vue-hotkeys-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/vue-hotkeys-devtools", - "version": "0.11.0", + "version": "0.11.1", "description": "Vue devtools for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/vue-hotkeys/CHANGELOG.md b/packages/vue-hotkeys/CHANGELOG.md index 8bae4e72..55fceadc 100644 --- a/packages/vue-hotkeys/CHANGELOG.md +++ b/packages/vue-hotkeys/CHANGELOG.md @@ -1,5 +1,22 @@ # @tanstack/vue-hotkeys +## 0.17.0 + +### Minor Changes + +- [#199](https://github.com/TanStack/hotkeys/pull/199) [`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e) - Hotkey hints now show only for hotkeys that can fire. `useHotkeyHint` and the other adapters' hint helpers return `false` unless a registration of the hotkey can fire: it's enabled, in an active scope, and, for a hotkey on an element, focus is inside that element. Hotkeys registered with `enabled: false`, hotkeys suspended by an exclusive scope, hotkeys on an element that doesn't have focus, and hotkeys that nothing registered no longer show hints. App hotkeys match their registrations by id, so custom hotkeys still work. To keep the old behavior, call `matchesHeldModifiers`, which still checks only held keys. The new `HotkeyManager.hasActiveRegistration(hotkey)` reports whether a hotkey or app hotkey has a registration that can fire. + + Add `preventDefault: 'always'`. A chord with this option still prevents the browser's action while it can't fire, because it's disabled or its scope is inactive or suspended. For example, a disabled `Mod+S` no longer opens the browser's Save dialog. It doesn't stop propagation, and it still skips typing in text fields. When another hotkey handles the key, that hotkey's options apply instead. Sequences treat `'always'` as `true`. Set it in default options to apply it to every hotkey. We recommend it for most hotkeys; the sensible defaults guide explains when to leave it off, such as for `Mod+C` or `Tab` hotkeys you turn off to hand the key back to the browser. Devtools show `always` for these hotkeys. + + Registration views now have a `status`: `'active'` when the hotkey is enabled and its scope is active, `'suspended'` when its scope is inactive or suspended by an exclusive scope, and `'disabled'` when it has `enabled: false`. To list only the hotkeys that are on, filter by `status === 'active'` instead of checking `enabled` and `isScopeActive` yourself. + + Each adapter has a new API that reads the hotkey manager's scope state and updates when scopes activate or release: `useHotkeyScopesState` in React, Preact, Vue, Ember, and Octane, `createHotkeyScopesState` in Solid and on Alpine's `createHotkeysScope` owner, `injectHotkeyScopesState` in Angular, `getHotkeyScopesState` in Svelte, and `HotkeyScopesStateController` in Lit. + +### Patch Changes + +- Updated dependencies [[`431094a`](https://github.com/TanStack/hotkeys/commit/431094a5a5b61a7fd91002fc1cc799373ef54e6e)]: + - @tanstack/hotkeys@0.18.0 + ## 0.16.0 ### Minor Changes diff --git a/packages/vue-hotkeys/package.json b/packages/vue-hotkeys/package.json index 2487bbb6..1c140951 100644 --- a/packages/vue-hotkeys/package.json +++ b/packages/vue-hotkeys/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/vue-hotkeys", - "version": "0.16.0", + "version": "0.17.0", "description": "Vue adapter for TanStack Hotkeys", "author": "Tanner Linsley", "license": "MIT",