Skip to content

feat(hotkeys): Add hotkey scopes, chord and sequence naming, and new guides - #189

Merged
KevinVandy merged 4 commits into
mainfrom
feat/hotkey-scopes
Oct 18, 2026
Merged

KevinVandy merged 4 commits into
mainfrom
feat/hotkey-scopes

Conversation

@KevinVandy

@KevinVandy KevinVandy commented Oct 17, 2026 •

Copy link
Copy Markdown
Member

🎯 Changes

Hotkey scopes

  • Every hotkey belongs to a scope. 'global' is the default and is always active. Pass scope to put a hotkey in another scope.
  • HotkeyManager.activateScope(scope, { exclusive, parent }) activates a scope until you call the function it returns. When two active scopes match the same key, a nested scope beats the scopes around it, and otherwise the newest scope wins.
  • Exclusive scopes suspend every other scope, including 'global'. exclusive: { allow: [...] } keeps some scopes working.
  • HotkeyManager.scopes publishes active, suspended, allowed, and exclusive scopes. isScopeActive(scope) reports whether a scope can fire.
  • HotkeysProvider takes scope, exclusive, and enabled in React, Preact, Solid, Vue, Svelte, and Octane. Angular's provideHotkeys, Vue's provideHotkeysContext, and Svelte's setHotkeysContext take the same options. Lit, Alpine, and Ember activate scopes through the manager.
  • App hotkeys can declare a scope. App hotkeys in different scopes can share a key, and the app hotkey list reports 'suspended' for app hotkeys whose registrations are all in inactive scopes.
  • Devtools group registrations by scope and show scope state.
  • New scopes examples for React, Preact, Solid, Vue, Svelte, Angular, and Octane.

Chord and sequence naming (breaking, beta)

  • A hotkey is a chord or a sequence. Types and functions follow that rule: RawHotkey → RawHotkeyChord, ParsedHotkey → ParsedHotkeyChord, parsedHotkey → parsedChord, and the handler helpers gain Chord in their names.
  • Callbacks get { kind: 'chord', hotkey, parsedChord } or { kind: 'sequence', hotkey, parsedSequence }. Single-hotkey APIs type the context from the hotkey you pass. The recorder's validate context is split the same way.
  • parseHotkey, normalizeHotkey, and formatHotkey accept chords and sequences, replacing several near-duplicate functions.
  • Sequence steps can be chord objects.

Sequence behavior

  • Every step that advances a sequence calls preventDefault, so Mod+K in ['Mod+K', 'Mod+C'] no longer reaches the browser. stopPropagation still applies only on the last step.
  • Sequence progress clears when its timeout passes, and registration subscribers are notified.

Docs

  • Guides are restructured the same way for all ten frameworks:
    • Hotkeys
    • Sequences
    • Sensible Defaults
    • Formatting & Display
    • HotkeysProvider and Scopes (not in Lit, Alpine, or Ember, which have no provider)
    • App Hotkeys
    • Cheat Sheet UI Helpers
    • Custom Hotkey Recording
    • Held Key State Helpers
    • Hotkey Hints
    • Hotkey Manager
  • Guide file names match their sidebar labels. hotkey-recording and key-state-tracking are now custom-hotkey-recording and held-key-state-helpers, with redirect_from for the old URLs.
  • Docs and examples show maxSteps as 1 (chord) or Infinity (sequence).
  • Reference docs are regenerated.

Changesets: chord-and-sequence-naming.md and hotkey-scopes.md.

✅ Checklist

  • I have followed the steps in the Contributing guide.
  • I have tested code changes locally with pnpm run test:pr, or these tests do not apply to this pull request.
  • I fully understand the code in this pull request, including any code generated with AI assistance.

🚀 Release Impact

  • This change affects published code, and I have generated a changeset.
  • This change is docs/CI/dev-only (no release).

…guides

- Add hotkey scopes: HotkeyManager.activateScope, exclusive scopes,
  scope state, and scope props on every framework provider.
- Name types and functions by chord or sequence, and give callbacks a
  chord or sequence context.
- Sequences call preventDefault on every step and clear their progress
  when the timeout passes.
- Restructure the guides for every framework, add Hotkey Manager, Cheat
  Sheet UI Helpers, Hotkey Hints, and provider and scopes guides, and
  rename guide files to match their sidebar labels.
@changeset-bot

changeset-bot Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: cd950eb

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 18 packages
Name Type
@tanstack/hotkeys Minor
@tanstack/react-hotkeys Minor
@tanstack/preact-hotkeys Minor
@tanstack/solid-hotkeys Minor
@tanstack/vue-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
@tanstack/hotkeys-devtools Minor
@tanstack/angular-hotkeys-devtools Patch
@tanstack/preact-hotkeys-devtools Patch
@tanstack/react-hotkeys-devtools Patch
@tanstack/solid-hotkeys-devtools Patch
@tanstack/svelte-hotkeys-devtools Patch
@tanstack/vue-hotkeys-devtools Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@coderabbitai

coderabbitai Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 357 files, which is 207 over the limit of 150.

To get a review, reduce the PR to 150 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

Usage-priced reviews support at most 300 files.

⚙️ Run configuration
  • Configuration used: Repository: TanStack/hotkeys/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 277e484b-9a91-4a17-9129-f4c08fc0dedc
📥 Commits

Reviewing files that changed from the base of the PR and between 2a5a38a and cd950eb.

⛔ Files ignored due to path filters: 252
  • docs/framework/alpine/reference/interfaces/AlpineCreateHotkey.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/interfaces/AlpineCreateHotkeyRecorder.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/interfaces/AlpineCustomHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/interfaces/AlpineHotkeyRecorder.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/interfaces/AlpineHotkeyState.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/interfaces/AlpineHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/interfaces/DefaultHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/interfaces/HotkeyRegistrationsResult.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/type-aliases/AlpineAppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/type-aliases/AlpineHotkeyCommonOptions.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/type-aliases/AlpineHotkeyDefinition.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/type-aliases/AlpineHotkeyOptionsFor.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/type-aliases/AlpineHotkeyTarget.md is excluded by !docs/**/reference/**
  • docs/framework/alpine/reference/type-aliases/MaybeGetter.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/functions/injectAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/functions/injectDefaultHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/functions/injectHotkey.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/functions/injectHotkeysContext.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/functions/provideHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/index.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/interfaces/HotkeysContextValue.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/interfaces/HotkeysProviderOptions.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/interfaces/ProvideHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/type-aliases/InjectAppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/type-aliases/InjectHotkeyChordOptions.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/type-aliases/InjectHotkeyCommonOptions.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/type-aliases/InjectHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/type-aliases/InjectHotkeyOptionsFor.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/type-aliases/InjectHotkeySequenceOptions.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/type-aliases/InjectHotkeyTarget.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/type-aliases/MaybeGetter.md is excluded by !docs/**/reference/**
  • docs/framework/angular/reference/variables/HOTKEYS_INJECTION_TOKEN.md is excluded by !docs/**/reference/**
  • docs/framework/lit/reference/functions/hotkey.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/functions/HotkeysProvider.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/functions/useDefaultHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/functions/useHotkey.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/functions/useHotkeysContext.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/interfaces/DefaultHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/interfaces/HotkeysProviderProps.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/type-aliases/HotkeysProviderOptions.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/type-aliases/UseAppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/type-aliases/UseHotkeyChordOptions.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/type-aliases/UseHotkeyCommonOptions.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/type-aliases/UseHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/type-aliases/UseHotkeyOptionsFor.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/type-aliases/UseHotkeySequenceOptions.md is excluded by !docs/**/reference/**
  • docs/framework/octane/reference/type-aliases/UseHotkeyTarget.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/functions/HotkeysProvider.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/functions/useAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/functions/useCustomHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/functions/useDefaultHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/functions/useHotkey.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/functions/useHotkeyRecorder.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/functions/useHotkeysContext.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/interfaces/HotkeysProviderOptions.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/interfaces/HotkeysProviderProps.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/type-aliases/UseAppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/type-aliases/UseHotkeyChordOptions.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/type-aliases/UseHotkeyCommonOptions.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/type-aliases/UseHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/type-aliases/UseHotkeyOptionsFor.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/type-aliases/UseHotkeySequenceOptions.md is excluded by !docs/**/reference/**
  • docs/framework/preact/reference/type-aliases/UseHotkeyTarget.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/functions/HotkeysProvider.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/functions/useAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/functions/useCustomHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/functions/useDefaultHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/functions/useHotkey.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/functions/useHotkeyRecorder.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/functions/useHotkeysContext.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/interfaces/HotkeysProviderOptions.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/interfaces/HotkeysProviderProps.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/type-aliases/UseAppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/type-aliases/UseHotkeyChordOptions.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/type-aliases/UseHotkeyCommonOptions.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/type-aliases/UseHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/type-aliases/UseHotkeyOptionsFor.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/type-aliases/UseHotkeySequenceOptions.md is excluded by !docs/**/reference/**
  • docs/framework/react/reference/type-aliases/UseHotkeyTarget.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/functions/createHotkey.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/functions/createHotkeyRecorder.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/functions/useAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/functions/useDefaultHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/functions/useHotkeysContext.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/interfaces/HotkeysProviderOptions.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/interfaces/HotkeysProviderProps.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/type-aliases/CreateAppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/type-aliases/CreateHotkeyChordOptions.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/type-aliases/CreateHotkeyCommonOptions.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/type-aliases/CreateHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/type-aliases/CreateHotkeyOptionsFor.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/type-aliases/CreateHotkeySequenceOptions.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/type-aliases/CreateHotkeyTarget.md is excluded by !docs/**/reference/**
  • docs/framework/solid/reference/variables/HotkeysProvider.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/functions/createHotkey.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/functions/createHotkeyAttachment.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/functions/createHotkeyRecorder.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/functions/getAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/functions/getDefaultHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/functions/getHotkeysContext.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/functions/setHotkeysContext.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/interfaces/HotkeysContextOptions.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/interfaces/HotkeysProviderOptions.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/interfaces/HotkeysProviderProps.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/type-aliases/CreateAppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/type-aliases/CreateHotkeyChordOptions.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/type-aliases/CreateHotkeyCommonOptions.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/type-aliases/CreateHotkeyDefinition.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/type-aliases/CreateHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/type-aliases/CreateHotkeyOptionsFor.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/type-aliases/CreateHotkeySequenceOptions.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/type-aliases/CreateHotkeyTarget.md is excluded by !docs/**/reference/**
  • docs/framework/svelte/reference/variables/DEFAULT_OPTIONS.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/functions/provideHotkeysContext.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/functions/useAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/functions/useDefaultHotkeysOptions.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/functions/useHotkey.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/functions/useHotkeyRecorder.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/functions/useHotkeysContext.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/interfaces/HotkeysProviderOptions.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/interfaces/ProvideHotkeysContextOptions.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/type-aliases/UseAppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/type-aliases/UseHotkeyChordOptions.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/type-aliases/UseHotkeyCommonOptions.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/type-aliases/UseHotkeyDefinition.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/type-aliases/UseHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/type-aliases/UseHotkeyOptionsFor.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/type-aliases/UseHotkeySequenceOptions.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/type-aliases/UseHotkeyTarget.md is excluded by !docs/**/reference/**
  • docs/framework/vue/reference/variables/HotkeysProvider.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/functions/activateHotkeysProviderScope.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/functions/createHotkeyBindings.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/functions/getHotkeysProviderScopeKey.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/functions/mergeHotkeysProviderDefaults.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/functions/prepareHotkeyDefinitions.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/functions/subscribePublishedAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/index.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/interfaces/HotkeysProviderScopeProps.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/interfaces/PrepareHotkeyDefinitionsOptions.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/AdapterAppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/AdapterChordOptions.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/AdapterCommonOptions.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/AdapterHotkeyDefinition.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/AdapterHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/AdapterOptionsFor.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/AdapterSequenceOptions.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/HotkeyBindingsCommonOptions.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/HotkeyDefinition.md is excluded by !docs/**/reference/**
  • docs/reference/adapter/type-aliases/WithTarget.md is excluded by !docs/**/reference/**
  • docs/reference/classes/AppHotkeysStore.md is excluded by !docs/**/reference/**
  • docs/reference/classes/HotkeyManager.md is excluded by !docs/**/reference/**
  • docs/reference/classes/HotkeyRecorder.md is excluded by !docs/**/reference/**
  • docs/reference/functions/areHotkeysEqual.md is excluded by !docs/**/reference/**
  • docs/reference/functions/createHotkeyChordHandler.md is excluded by !docs/**/reference/**
  • docs/reference/functions/createHotkeyHandler.md is excluded by !docs/**/reference/**
  • docs/reference/functions/createMultiHotkeyChordHandler.md is excluded by !docs/**/reference/**
  • docs/reference/functions/createMultiHotkeyHandler.md is excluded by !docs/**/reference/**
  • docs/reference/functions/createSequenceMatcher.md is excluded by !docs/**/reference/**
  • docs/reference/functions/defineAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/reference/functions/formatForDisplay.md is excluded by !docs/**/reference/**
  • docs/reference/functions/formatHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/getAppHotkeyRegistrationOptions.md is excluded by !docs/**/reference/**
  • docs/reference/functions/getHotkeyManager.md is excluded by !docs/**/reference/**
  • docs/reference/functions/hasNonModifierKey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/isAppHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/isCustomHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/isHotkeySequence.md is excluded by !docs/**/reference/**
  • docs/reference/functions/isModifierKey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/matchesKeyboardEvent.md is excluded by !docs/**/reference/**
  • docs/reference/functions/normalizeHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/normalizeHotkeyFromEvent.md is excluded by !docs/**/reference/**
  • docs/reference/functions/normalizeHotkeyFromParsed.md is excluded by !docs/**/reference/**
  • docs/reference/functions/normalizeRegisterableHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/parseHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/parseKeyboardEvent.md is excluded by !docs/**/reference/**
  • docs/reference/functions/parseRegisterableHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/provideAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/reference/functions/publishAppHotkeysStore.md is excluded by !docs/**/reference/**
  • docs/reference/functions/rawHotkeyToParsedHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/resolveAppHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/simplifyHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/functions/toHotkeyRegistrationView.md is excluded by !docs/**/reference/**
  • docs/reference/index.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/ActivateHotkeyScopeOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/AppHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/AppHotkeyInput.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/AppHotkeyListItem.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/AppHotkeysState.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/AppHotkeysStoreOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/CreateHotkeyChordHandlerOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/CreateHotkeyHandlerOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/FormatDisplayOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyCallbackContext.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyChordCallbackContext.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyChordOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyChordRecorderOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyChordRecorderValidationContext.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyChordRegistration.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyChordRegistrationView.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyMeta.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyRecorderState.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyRecorderValidationContext.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyRegistrationHandle.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeyScopesState.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeySequenceCallbackContext.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeySequenceOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeySequenceRecorderOptions.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeySequenceRecorderValidationContext.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeySequenceRegistration.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/HotkeySequenceRegistrationView.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/KeyboardEventMatch.md is excluded by !docs/**/reference/**
  • docs/reference/interfaces/Register.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/AppHotkeyChordOptions.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/AppHotkeyDefaultKind.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/AppHotkeyId.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/AppHotkeyOptions.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/AppHotkeySequenceOptions.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/AppHotkeyStatus.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/AppHotkeys.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/ConflictBehavior.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/CustomHotkeys.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/DefinedAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/DisplayHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/DisplayHotkeyChord.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/FourModifierHotkeyChord.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/Hotkey.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyCallback.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyCallbackContext.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyCallbackContextFor.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyChord.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyOptionsFor.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyRecorderCommitKeys.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyRecorderOptions.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyRecorderValidationContext.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyRegistration.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeyRegistrationView.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/HotkeySequence.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/MultiHotkeyChordHandler.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/MultiHotkeyHandler.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/ParsedHotkeyChord.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/RawHotkeyChord.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/RegisterableHotkey.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/RegisterableHotkeyChord.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/RegisterableHotkeySequence.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/RegisteredAppHotkeys.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/SingleModifierHotkeyChord.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/Target.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/ThreeModifierHotkeyChord.md is excluded by !docs/**/reference/**
  • docs/reference/type-aliases/TwoModifierHotkeyChord.md is excluded by !docs/**/reference/**
  • docs/reference/variables/DEFAULT_SEQUENCE_TIMEOUT.md is excluded by !docs/**/reference/**
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml, !**/pnpm-lock.yaml
📒 Files selected for processing: 357
  • .changeset/chord-and-sequence-naming.md
  • .changeset/hotkey-scopes.md
  • README.md
  • docs/config.json
  • docs/devtools.md
  • docs/framework/alpine/guides/app-hotkeys.md
  • docs/framework/alpine/guides/cheat-sheet-ui-helpers.md
  • docs/framework/alpine/guides/custom-hotkey-recording.md
  • docs/framework/alpine/guides/formatting-display.md
  • docs/framework/alpine/guides/held-key-state-helpers.md
  • docs/framework/alpine/guides/hotkey-hints.md
  • docs/framework/alpine/guides/hotkey-manager.md
  • docs/framework/alpine/guides/hotkey-recording.md
  • docs/framework/alpine/guides/hotkeys.md
  • docs/framework/alpine/guides/key-state-tracking.md
  • docs/framework/alpine/guides/sequences.md
  • docs/framework/alpine/quick-start.md
  • docs/framework/angular/guides/app-hotkeys.md
  • docs/framework/angular/guides/cheat-sheet-ui-helpers.md
  • docs/framework/angular/guides/custom-hotkey-recording.md
  • docs/framework/angular/guides/formatting-display.md
  • docs/framework/angular/guides/held-key-state-helpers.md
  • docs/framework/angular/guides/hotkey-hints.md
  • docs/framework/angular/guides/hotkey-manager.md
  • docs/framework/angular/guides/hotkey-recording.md
  • docs/framework/angular/guides/hotkeys.md
  • docs/framework/angular/guides/key-state-tracking.md
  • docs/framework/angular/guides/provide-hotkeys-and-scopes.md
  • docs/framework/angular/guides/sequences.md
  • docs/framework/angular/quick-start.md
  • docs/framework/ember/guides/app-hotkeys.md
  • docs/framework/ember/guides/cheat-sheet-ui-helpers.md
  • docs/framework/ember/guides/custom-hotkey-recording.md
  • docs/framework/ember/guides/formatting-display.md
  • docs/framework/ember/guides/held-key-state-helpers.md
  • docs/framework/ember/guides/hotkey-hints.md
  • docs/framework/ember/guides/hotkey-manager.md
  • docs/framework/ember/guides/hotkey-recording.md
  • docs/framework/ember/guides/hotkeys.md
  • docs/framework/ember/guides/key-state-tracking.md
  • docs/framework/ember/guides/sequences.md
  • docs/framework/ember/quick-start.md
  • docs/framework/lit/guides/app-hotkeys.md
  • docs/framework/lit/guides/cheat-sheet-ui-helpers.md
  • docs/framework/lit/guides/custom-hotkey-recording.md
  • docs/framework/lit/guides/formatting-display.md
  • docs/framework/lit/guides/held-key-state-helpers.md
  • docs/framework/lit/guides/hotkey-hints.md
  • docs/framework/lit/guides/hotkey-manager.md
  • docs/framework/lit/guides/hotkey-recording.md
  • docs/framework/lit/guides/hotkeys.md
  • docs/framework/lit/guides/key-state-tracking.md
  • docs/framework/lit/guides/sequences.md
  • docs/framework/lit/quick-start.md
  • docs/framework/octane/guides/app-hotkeys.md
  • docs/framework/octane/guides/cheat-sheet-ui-helpers.md
  • docs/framework/octane/guides/custom-hotkey-recording.md
  • docs/framework/octane/guides/formatting-display.md
  • docs/framework/octane/guides/held-key-state-helpers.md
  • docs/framework/octane/guides/hotkey-hints.md
  • docs/framework/octane/guides/hotkey-manager.md
  • docs/framework/octane/guides/hotkey-recording.md
  • docs/framework/octane/guides/hotkeys-provider-and-scopes.md
  • docs/framework/octane/guides/hotkeys.md
  • docs/framework/octane/guides/key-state-tracking.md
  • docs/framework/octane/guides/sequences.md
  • docs/framework/octane/quick-start.md
  • docs/framework/preact/guides/app-hotkeys.md
  • docs/framework/preact/guides/cheat-sheet-ui-helpers.md
  • docs/framework/preact/guides/custom-hotkey-recording.md
  • docs/framework/preact/guides/formatting-display.md
  • docs/framework/preact/guides/held-key-state-helpers.md
  • docs/framework/preact/guides/hotkey-hints.md
  • docs/framework/preact/guides/hotkey-manager.md
  • docs/framework/preact/guides/hotkey-recording.md
  • docs/framework/preact/guides/hotkeys-provider-and-scopes.md
  • docs/framework/preact/guides/hotkeys.md
  • docs/framework/preact/guides/key-state-tracking.md
  • docs/framework/preact/guides/sequences.md
  • docs/framework/preact/quick-start.md
  • docs/framework/react/guides/app-hotkeys.md
  • docs/framework/react/guides/cheat-sheet-ui-helpers.md
  • docs/framework/react/guides/custom-hotkey-recording.md
  • docs/framework/react/guides/formatting-display.md
  • docs/framework/react/guides/held-key-state-helpers.md
  • docs/framework/react/guides/hotkey-hints.md
  • docs/framework/react/guides/hotkey-manager.md
  • docs/framework/react/guides/hotkey-recording.md
  • docs/framework/react/guides/hotkeys-provider-and-scopes.md
  • docs/framework/react/guides/hotkeys.md
  • docs/framework/react/guides/key-state-tracking.md
  • docs/framework/react/guides/sequences.md
  • docs/framework/react/quick-start.md
  • docs/framework/solid/guides/app-hotkeys.md
  • docs/framework/solid/guides/cheat-sheet-ui-helpers.md
  • docs/framework/solid/guides/custom-hotkey-recording.md
  • docs/framework/solid/guides/formatting-display.md
  • docs/framework/solid/guides/held-key-state-helpers.md
  • docs/framework/solid/guides/hotkey-hints.md
  • docs/framework/solid/guides/hotkey-manager.md
  • docs/framework/solid/guides/hotkey-recording.md
  • docs/framework/solid/guides/hotkeys-provider-and-scopes.md
  • docs/framework/solid/guides/hotkeys.md
  • docs/framework/solid/guides/key-state-tracking.md
  • docs/framework/solid/guides/sequences.md
  • docs/framework/solid/quick-start.md
  • docs/framework/svelte/guides/app-hotkeys.md
  • docs/framework/svelte/guides/cheat-sheet-ui-helpers.md
  • docs/framework/svelte/guides/custom-hotkey-recording.md
  • docs/framework/svelte/guides/formatting-display.md
  • docs/framework/svelte/guides/held-key-state-helpers.md
  • docs/framework/svelte/guides/hotkey-hints.md
  • docs/framework/svelte/guides/hotkey-manager.md
  • docs/framework/svelte/guides/hotkey-recording.md
  • docs/framework/svelte/guides/hotkeys-provider-and-scopes.md
  • docs/framework/svelte/guides/hotkeys.md
  • docs/framework/svelte/guides/key-state-tracking.md
  • docs/framework/svelte/guides/sequences.md
  • docs/framework/svelte/quick-start.md
  • docs/framework/vue/guides/app-hotkeys.md
  • docs/framework/vue/guides/cheat-sheet-ui-helpers.md
  • docs/framework/vue/guides/custom-hotkey-recording.md
  • docs/framework/vue/guides/formatting-display.md
  • docs/framework/vue/guides/held-key-state-helpers.md
  • docs/framework/vue/guides/hotkey-hints.md
  • docs/framework/vue/guides/hotkey-manager.md
  • docs/framework/vue/guides/hotkey-recording.md
  • docs/framework/vue/guides/hotkeys-provider-and-scopes.md
  • docs/framework/vue/guides/hotkeys.md
  • docs/framework/vue/guides/key-state-tracking.md
  • docs/framework/vue/guides/sequences.md
  • docs/framework/vue/quick-start.md
  • docs/guides/sensible-defaults.md
  • docs/installation.md
  • docs/overview.md
  • examples/alpine/createHotkey/src/main.ts
  • examples/alpine/kitchen-sink/index.html
  • examples/alpine/kitchen-sink/src/main.ts
  • examples/angular/injectHotkey/src/app/app.component.html
  • examples/angular/kitchen-sink/src/app/app.component.ts
  • examples/angular/scopes/angular.json
  • examples/angular/scopes/package.json
  • examples/angular/scopes/src/app/app.component.ts
  • examples/angular/scopes/src/app/app.config.ts
  • examples/angular/scopes/src/index.html
  • examples/angular/scopes/src/main.ts
  • examples/angular/scopes/src/styles.css
  • examples/angular/scopes/tsconfig.json
  • examples/ember/kitchen-sink/app/templates/application.gts
  • examples/ember/useHotkey/app/templates/application.gts
  • examples/lit/hotkey/src/app.ts
  • examples/lit/kitchen-sink/src/app.ts
  • examples/octane/kitchen-sink/src/main.tsrx
  • examples/octane/scopes/index.html
  • examples/octane/scopes/package.json
  • examples/octane/scopes/src/index.css
  • examples/octane/scopes/src/main.tsrx
  • examples/octane/scopes/tsconfig.json
  • examples/octane/scopes/vite.config.ts
  • examples/octane/useHotkey/src/main.tsrx
  • examples/preact/kitchen-sink/src/index.tsx
  • examples/preact/scopes/eslint.config.js
  • examples/preact/scopes/index.html
  • examples/preact/scopes/package.json
  • examples/preact/scopes/src/index.css
  • examples/preact/scopes/src/index.tsx
  • examples/preact/scopes/tsconfig.json
  • examples/preact/scopes/vite.config.ts
  • examples/preact/useHotkey/src/index.tsx
  • examples/react/kitchen-sink/src/app-hotkeys.ts
  • examples/react/kitchen-sink/src/index.tsx
  • examples/react/kitchen-sink/src/routes/editor.tsx
  • examples/react/kitchen-sink/src/routes/scopes.tsx
  • examples/react/kitchen-sink/src/routes/sequences.tsx
  • examples/react/kitchen-sink/src/routes/shortcuts.tsx
  • examples/react/kitchen-sink/src/routes/tickets.tsx
  • examples/react/kitchen-sink/src/shared.tsx
  • examples/react/kitchen-sink/src/styles.css
  • examples/react/scopes/eslint.config.js
  • examples/react/scopes/index.html
  • examples/react/scopes/package.json
  • examples/react/scopes/src/index.css
  • examples/react/scopes/src/index.tsx
  • examples/react/scopes/tsconfig.json
  • examples/react/scopes/vite.config.ts
  • examples/react/useHotkey/src/index.tsx
  • examples/react/useHotkeyRecorder-sequences/src/index.tsx
  • examples/solid/createHotkey/src/index.tsx
  • examples/solid/kitchen-sink/src/index.tsx
  • examples/solid/scopes/eslint.config.js
  • examples/solid/scopes/index.html
  • examples/solid/scopes/package.json
  • examples/solid/scopes/src/index.css
  • examples/solid/scopes/src/index.tsx
  • examples/solid/scopes/tsconfig.json
  • examples/solid/scopes/vite.config.ts
  • examples/svelte/create-hotkey/src/App.svelte
  • examples/svelte/kitchen-sink/src/App.svelte
  • examples/svelte/kitchen-sink/src/Editor.svelte
  • examples/svelte/kitchen-sink/src/Recording.svelte
  • examples/svelte/scopes/.gitignore
  • examples/svelte/scopes/eslint.config.js
  • examples/svelte/scopes/index.html
  • examples/svelte/scopes/package.json
  • examples/svelte/scopes/src/ActivityLog.svelte
  • examples/svelte/scopes/src/App.svelte
  • examples/svelte/scopes/src/CommentBox.svelte
  • examples/svelte/scopes/src/DialogDemo.svelte
  • examples/svelte/scopes/src/ExclusiveDialog.svelte
  • examples/svelte/scopes/src/FolderPane.svelte
  • examples/svelte/scopes/src/Key.svelte
  • examples/svelte/scopes/src/NestedDemo.svelte
  • examples/svelte/scopes/src/Palette.svelte
  • examples/svelte/scopes/src/Root.svelte
  • examples/svelte/scopes/src/Scope.svelte
  • examples/svelte/scopes/src/ScopeFrame.svelte
  • examples/svelte/scopes/src/Steps.svelte
  • examples/svelte/scopes/src/TabsDemo.svelte
  • examples/svelte/scopes/src/activity.svelte.ts
  • examples/svelte/scopes/src/index.css
  • examples/svelte/scopes/src/main.ts
  • examples/svelte/scopes/static/robots.txt
  • examples/svelte/scopes/svelte.config.js
  • examples/svelte/scopes/tsconfig.json
  • examples/svelte/scopes/vite.config.ts
  • examples/vanilla/formatForDisplay/src/main.ts
  • examples/vue/kitchen-sink/src/App.vue
  • examples/vue/kitchen-sink/src/Editor.vue
  • examples/vue/kitchen-sink/src/Recording.vue
  • examples/vue/scopes/eslint.config.js
  • examples/vue/scopes/index.html
  • examples/vue/scopes/package.json
  • examples/vue/scopes/src/ActivityLog.vue
  • examples/vue/scopes/src/App.vue
  • examples/vue/scopes/src/CommentBox.vue
  • examples/vue/scopes/src/DialogDemo.vue
  • examples/vue/scopes/src/ExclusiveDialog.vue
  • examples/vue/scopes/src/FolderPane.vue
  • examples/vue/scopes/src/Key.vue
  • examples/vue/scopes/src/NestedDemo.vue
  • examples/vue/scopes/src/Palette.vue
  • examples/vue/scopes/src/Scope.vue
  • examples/vue/scopes/src/ScopeFrame.vue
  • examples/vue/scopes/src/Steps.vue
  • examples/vue/scopes/src/TabsDemo.vue
  • examples/vue/scopes/src/activity.ts
  • examples/vue/scopes/src/index.css
  • examples/vue/scopes/src/index.ts
  • examples/vue/scopes/src/vue.d.ts
  • examples/vue/scopes/tsconfig.json
  • examples/vue/scopes/vite.config.ts
  • examples/vue/useHotkey/src/App.vue
  • packages/alpine-hotkeys/README.md
  • packages/alpine-hotkeys/src/types.ts
  • packages/angular-hotkeys-devtools/README.md
  • packages/angular-hotkeys/README.md
  • packages/angular-hotkeys/src/hotkeys-provider.ts
  • packages/angular-hotkeys/src/injectAppHotkeys.ts
  • packages/angular-hotkeys/src/injectHotkey.ts
  • packages/angular-hotkeys/tests/scopes.test.ts
  • packages/ember-hotkeys/README.md
  • packages/ember-hotkeys/tests/integration/hotkeys.test.gts
  • packages/hotkeys-devtools/README.md
  • packages/hotkeys-devtools/src/HotkeysContextProvider.tsx
  • packages/hotkeys-devtools/src/_registrations.ts
  • packages/hotkeys-devtools/src/_scopes.ts
  • packages/hotkeys-devtools/src/components/DetailsPanel.tsx
  • packages/hotkeys-devtools/src/components/HotkeyList.tsx
  • packages/hotkeys-devtools/src/components/Shell.tsx
  • packages/hotkeys-devtools/src/styles/use-styles.ts
  • packages/hotkeys-devtools/tests/registrations.test.tsx
  • packages/hotkeys-devtools/tests/scopes.test.ts
  • packages/hotkeys/README.md
  • packages/hotkeys/src/_keyboard-event.ts
  • packages/hotkeys/src/_match.ts
  • packages/hotkeys/src/_recorder-chord.ts
  • packages/hotkeys/src/_registration.ts
  • packages/hotkeys/src/adapter.ts
  • packages/hotkeys/src/app-hotkeys.ts
  • packages/hotkeys/src/conflicts.ts
  • packages/hotkeys/src/format.ts
  • packages/hotkeys/src/hint.ts
  • packages/hotkeys/src/hotkey-manager.ts
  • packages/hotkeys/src/hotkey-recorder.ts
  • packages/hotkeys/src/hotkey.types.ts
  • packages/hotkeys/src/match.ts
  • packages/hotkeys/src/parse.ts
  • packages/hotkeys/src/validate.ts
  • packages/hotkeys/tests/app-hotkeys.test.ts
  • packages/hotkeys/tests/capture.test.ts
  • packages/hotkeys/tests/format.test.ts
  • packages/hotkeys/tests/hotkey-manager.test.ts
  • packages/hotkeys/tests/match.test.ts
  • packages/hotkeys/tests/parse.test.ts
  • packages/hotkeys/tests/parsed-identity.test.ts
  • packages/hotkeys/tests/public-api.test.ts
  • packages/hotkeys/tests/recorder-options.test.ts
  • packages/hotkeys/tests/recording-and-display.test.ts
  • packages/hotkeys/tests/registration-and-target.test.ts
  • packages/hotkeys/tests/review-regressions.test.ts
  • packages/hotkeys/tests/scopes.test.ts
  • packages/hotkeys/tests/sequence-regressions.test.ts
  • packages/hotkeys/tests/unified-hotkeys.test.ts
  • packages/lit-hotkeys/README.md
  • packages/lit-hotkeys/src/decorators/hotkey.ts
  • packages/lit-hotkeys/tests/decorator-types.test.ts
  • packages/octane-hotkeys/README.md
  • packages/octane-hotkeys/src/HotkeysProvider.ts
  • packages/octane-hotkeys/src/useHotkey.ts
  • packages/octane-hotkeys/tests/fixture.tsrx
  • packages/octane-hotkeys/tests/octane-hotkeys.test.ts
  • packages/preact-hotkeys-devtools/README.md
  • packages/preact-hotkeys/README.md
  • packages/preact-hotkeys/src/HotkeysProvider.tsx
  • packages/preact-hotkeys/src/useAppHotkeys.ts
  • packages/preact-hotkeys/src/useHotkey.ts
  • packages/preact-hotkeys/src/useHotkeyRecorder.ts
  • packages/preact-hotkeys/tests/scopes.test.tsx
  • packages/react-hotkeys-devtools/README.md
  • packages/react-hotkeys/README.md
  • packages/react-hotkeys/src/HotkeysProvider.tsx
  • packages/react-hotkeys/src/useAppHotkeys.ts
  • packages/react-hotkeys/src/useHotkey.ts
  • packages/react-hotkeys/src/useHotkeyRecorder.ts
  • packages/react-hotkeys/tests/scopes.test.tsx
  • packages/react-hotkeys/tests/useHotkey.test.tsx
  • packages/react-hotkeys/tests/useHotkeyRegistrations.test.tsx
  • packages/solid-hotkeys-devtools/README.md
  • packages/solid-hotkeys/README.md
  • packages/solid-hotkeys/src/HotkeysProvider.tsx
  • packages/solid-hotkeys/src/appHotkeys.ts
  • packages/solid-hotkeys/src/createHotkey.ts
  • packages/solid-hotkeys/src/createHotkeyRecorder.ts
  • packages/solid-hotkeys/tests/scopes.test.tsx
  • packages/svelte-hotkeys-devtools/README.md
  • packages/svelte-hotkeys/README.md
  • packages/svelte-hotkeys/src/HotkeysCtx.ts
  • packages/svelte-hotkeys/src/HotkeysProvider.svelte
  • packages/svelte-hotkeys/src/createHotkey.svelte.ts
  • packages/svelte-hotkeys/src/createHotkeyRecorder.svelte.ts
  • packages/svelte-hotkeys/src/createHotkeys.svelte.ts
  • packages/svelte-hotkeys/src/getAppHotkeys.svelte.ts
  • packages/svelte-hotkeys/src/internal.svelte.ts
  • packages/svelte-hotkeys/tests/ScopesAppHotkeys.svelte
  • packages/svelte-hotkeys/tests/ScopesHarness.svelte
  • packages/svelte-hotkeys/tests/ScopesHotkey.svelte
  • packages/svelte-hotkeys/tests/scopes-controls.svelte.ts
  • packages/svelte-hotkeys/tests/scopes.test.ts
  • packages/vue-hotkeys-devtools/README.md
  • packages/vue-hotkeys/README.md
  • packages/vue-hotkeys/src/HotkeysProvider.tsx
  • packages/vue-hotkeys/src/HotkeysProviderContext.ts
  • packages/vue-hotkeys/src/useAppHotkeys.ts
  • packages/vue-hotkeys/src/useHotkey.ts
  • packages/vue-hotkeys/src/useHotkeyRecorder.ts
  • packages/vue-hotkeys/src/useHotkeys.ts
  • packages/vue-hotkeys/tests/scopes.test.ts

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

🚀 Changeset Version Preview

12 package(s) bumped directly, 6 bumped as dependents.

🟥 Major bumps

Package Version Reason
@tanstack/hotkeys-devtools 1.3.6 → 2.0.0 Changeset

🟨 Minor bumps

Package Version Reason
@tanstack/alpine-hotkeys 0.3.5 → 0.4.0 Changeset
@tanstack/angular-hotkeys 0.14.5 → 0.15.0 Changeset
@tanstack/ember-hotkeys 0.3.5 → 0.4.0 Changeset
@tanstack/hotkeys 0.15.1 → 0.16.0 Changeset
@tanstack/lit-hotkeys 0.15.5 → 0.16.0 Changeset
@tanstack/octane-hotkeys 0.4.5 → 0.5.0 Changeset
@tanstack/preact-hotkeys 0.14.5 → 0.15.0 Changeset
@tanstack/react-hotkeys 0.14.5 → 0.15.0 Changeset
@tanstack/solid-hotkeys 0.14.5 → 0.15.0 Changeset
@tanstack/svelte-hotkeys 0.14.5 → 0.15.0 Changeset
@tanstack/vue-hotkeys 0.14.5 → 0.15.0 Changeset

🟩 Patch bumps

Package Version Reason
@tanstack/angular-hotkeys-devtools 0.2.7 → 0.2.8 Dependent
@tanstack/preact-hotkeys-devtools 0.10.7 → 0.10.8 Dependent
@tanstack/react-hotkeys-devtools 0.10.7 → 0.10.8 Dependent
@tanstack/solid-hotkeys-devtools 0.10.7 → 0.10.8 Dependent
@tanstack/svelte-hotkeys-devtools 0.2.7 → 0.2.8 Dependent
@tanstack/vue-hotkeys-devtools 0.10.7 → 0.10.8 Dependent

@pkg-pr-new

pkg-pr-new Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

Open in StackBlitz

@tanstack/alpine-hotkeys

npm i https://pkg.pr.new/@tanstack/alpine-hotkeys@189

@tanstack/angular-hotkeys

npm i https://pkg.pr.new/@tanstack/angular-hotkeys@189

@tanstack/angular-hotkeys-devtools

npm i https://pkg.pr.new/@tanstack/angular-hotkeys-devtools@189

@tanstack/ember-hotkeys

npm i https://pkg.pr.new/@tanstack/ember-hotkeys@189

@tanstack/hotkeys

npm i https://pkg.pr.new/@tanstack/hotkeys@189

@tanstack/hotkeys-devtools

npm i https://pkg.pr.new/@tanstack/hotkeys-devtools@189

@tanstack/lit-hotkeys

npm i https://pkg.pr.new/@tanstack/lit-hotkeys@189

@tanstack/octane-hotkeys

npm i https://pkg.pr.new/@tanstack/octane-hotkeys@189

@tanstack/preact-hotkeys

npm i https://pkg.pr.new/@tanstack/preact-hotkeys@189

@tanstack/preact-hotkeys-devtools

npm i https://pkg.pr.new/@tanstack/preact-hotkeys-devtools@189

@tanstack/react-hotkeys

npm i https://pkg.pr.new/@tanstack/react-hotkeys@189

@tanstack/react-hotkeys-devtools

npm i https://pkg.pr.new/@tanstack/react-hotkeys-devtools@189

@tanstack/solid-hotkeys

npm i https://pkg.pr.new/@tanstack/solid-hotkeys@189

@tanstack/solid-hotkeys-devtools

npm i https://pkg.pr.new/@tanstack/solid-hotkeys-devtools@189

@tanstack/svelte-hotkeys

npm i https://pkg.pr.new/@tanstack/svelte-hotkeys@189

@tanstack/svelte-hotkeys-devtools

npm i https://pkg.pr.new/@tanstack/svelte-hotkeys-devtools@189

@tanstack/vue-hotkeys

npm i https://pkg.pr.new/@tanstack/vue-hotkeys@189

@tanstack/vue-hotkeys-devtools

npm i https://pkg.pr.new/@tanstack/vue-hotkeys-devtools@189

commit: cd950eb

autofix-ci Bot and others added 3 commits October 17, 2026 22:42
- Bump the scopes examples to the hotkeys and devtools versions the other examples use, so sherif passes after merging main.
- Change "alpha" to "beta" in the README status notes and the docs overview.
@KevinVandy
KevinVandy merged commit dd1f39d into main Oct 18, 2026
9 checks passed
@KevinVandy
KevinVandy deleted the feat/hotkey-scopes branch October 18, 2026 01:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant