@tanstack/angular-hotkeys 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/dist/hotkeys-provider.d.ts +7 -10
  2. package/dist/hotkeys-provider.js +1 -2
  3. package/dist/injectHeldKeyCodes.d.ts +2 -5
  4. package/dist/injectHeldKeyCodes.js +3 -3
  5. package/dist/injectHeldKeys.d.ts +2 -5
  6. package/dist/injectHeldKeys.js +3 -3
  7. package/dist/injectHotkey.d.ts +3 -6
  8. package/dist/injectHotkey.js +3 -3
  9. package/dist/injectHotkeyHint.d.ts +2 -5
  10. package/dist/injectHotkeyHint.js +1 -2
  11. package/dist/injectHotkeyRecorder.d.ts +3 -6
  12. package/dist/injectHotkeyRecorder.js +4 -4
  13. package/dist/injectHotkeyRegistrations.d.ts +3 -6
  14. package/dist/injectHotkeyRegistrations.js +1 -2
  15. package/dist/injectHotkeySequence.d.ts +3 -6
  16. package/dist/injectHotkeySequence.js +1 -2
  17. package/dist/injectHotkeySequenceRecorder.d.ts +3 -6
  18. package/dist/injectHotkeySequenceRecorder.js +4 -4
  19. package/dist/injectHotkeySequences.d.ts +3 -6
  20. package/dist/injectHotkeySequences.js +1 -2
  21. package/dist/injectHotkeys.d.ts +3 -6
  22. package/dist/injectHotkeys.js +3 -3
  23. package/dist/injectKeyHold.d.ts +2 -5
  24. package/dist/injectKeyHold.js +3 -3
  25. package/package.json +12 -17
  26. package/dist/hotkeys-provider.cjs +0 -26
  27. package/dist/hotkeys-provider.cjs.map +0 -1
  28. package/dist/hotkeys-provider.d.cts +0 -22
  29. package/dist/hotkeys-provider.js.map +0 -1
  30. package/dist/index.cjs +0 -36
  31. package/dist/index.d.cts +0 -14
  32. package/dist/injectHeldKeyCodes.cjs +0 -34
  33. package/dist/injectHeldKeyCodes.cjs.map +0 -1
  34. package/dist/injectHeldKeyCodes.d.cts +0 -30
  35. package/dist/injectHeldKeyCodes.js.map +0 -1
  36. package/dist/injectHeldKeys.cjs +0 -29
  37. package/dist/injectHeldKeys.cjs.map +0 -1
  38. package/dist/injectHeldKeys.d.cts +0 -25
  39. package/dist/injectHeldKeys.js.map +0 -1
  40. package/dist/injectHotkey.cjs +0 -122
  41. package/dist/injectHotkey.cjs.map +0 -1
  42. package/dist/injectHotkey.d.cts +0 -75
  43. package/dist/injectHotkey.js.map +0 -1
  44. package/dist/injectHotkeyHint.cjs +0 -20
  45. package/dist/injectHotkeyHint.cjs.map +0 -1
  46. package/dist/injectHotkeyHint.d.cts +0 -15
  47. package/dist/injectHotkeyHint.js.map +0 -1
  48. package/dist/injectHotkeyRecorder.cjs +0 -82
  49. package/dist/injectHotkeyRecorder.cjs.map +0 -1
  50. package/dist/injectHotkeyRecorder.d.cts +0 -49
  51. package/dist/injectHotkeyRecorder.js.map +0 -1
  52. package/dist/injectHotkeyRegistrations.cjs +0 -28
  53. package/dist/injectHotkeyRegistrations.cjs.map +0 -1
  54. package/dist/injectHotkeyRegistrations.d.cts +0 -29
  55. package/dist/injectHotkeyRegistrations.js.map +0 -1
  56. package/dist/injectHotkeySequence.cjs +0 -93
  57. package/dist/injectHotkeySequence.cjs.map +0 -1
  58. package/dist/injectHotkeySequence.d.cts +0 -48
  59. package/dist/injectHotkeySequence.js.map +0 -1
  60. package/dist/injectHotkeySequenceRecorder.cjs +0 -58
  61. package/dist/injectHotkeySequenceRecorder.cjs.map +0 -1
  62. package/dist/injectHotkeySequenceRecorder.d.cts +0 -19
  63. package/dist/injectHotkeySequenceRecorder.js.map +0 -1
  64. package/dist/injectHotkeySequences.cjs +0 -105
  65. package/dist/injectHotkeySequences.cjs.map +0 -1
  66. package/dist/injectHotkeySequences.d.cts +0 -47
  67. package/dist/injectHotkeySequences.js.map +0 -1
  68. package/dist/injectHotkeys.cjs +0 -120
  69. package/dist/injectHotkeys.cjs.map +0 -1
  70. package/dist/injectHotkeys.d.cts +0 -66
  71. package/dist/injectHotkeys.js.map +0 -1
  72. package/dist/injectKeyHold.cjs +0 -49
  73. package/dist/injectKeyHold.cjs.map +0 -1
  74. package/dist/injectKeyHold.d.cts +0 -41
  75. package/dist/injectKeyHold.js.map +0 -1
  76. package/src/hotkeys-provider.ts +0 -44
  77. package/src/index.ts +0 -18
  78. package/src/injectHeldKeyCodes.ts +0 -31
  79. package/src/injectHeldKeys.ts +0 -26
  80. package/src/injectHotkey.ts +0 -171
  81. package/src/injectHotkeyHint.ts +0 -29
  82. package/src/injectHotkeyRecorder.ts +0 -128
  83. package/src/injectHotkeyRegistrations.ts +0 -48
  84. package/src/injectHotkeySequence.ts +0 -140
  85. package/src/injectHotkeySequenceRecorder.ts +0 -103
  86. package/src/injectHotkeySequences.ts +0 -176
  87. package/src/injectHotkeys.ts +0 -189
  88. package/src/injectKeyHold.ts +0 -57
@@ -1,57 +0,0 @@
1
- import { computed } from '@angular/core'
2
- import { injectSelector } from '@tanstack/angular-store'
3
- import { getKeyStateTracker } from '@tanstack/hotkeys'
4
- import type { IndividualKey } from '@tanstack/hotkeys'
5
- import type { Signal } from '@angular/core'
6
-
7
- /**
8
- * Angular inject-based API that returns a signal that is true when the given key is held.
9
- *
10
- * Subscribes to the global KeyStateTracker and uses a computed to determine
11
- * if the specified key is held.
12
- *
13
- * @param key - The key to check (e.g. 'Shift', 'Control', 'Space') - can be a getter function
14
- * @returns Signal that returns true if the key is currently held down
15
- *
16
- * @example
17
- * ```ts
18
- * @Component({
19
- * template: `{{ isShiftHeld() ? 'Shift is pressed!' : 'Press Shift' }}`,
20
- * })
21
- * export class ShiftIndicatorComponent {
22
- * isShiftHeld = injectKeyHold('Shift')
23
- * }
24
- * ```
25
- *
26
- * @example
27
- * ```ts
28
- * @Component({
29
- * template: `
30
- * <span [style.opacity]="ctrl() ? 1 : 0.3">Ctrl</span>
31
- * <span [style.opacity]="shift() ? 1 : 0.3">Shift</span>
32
- * `,
33
- * })
34
- * export class ModifierIndicatorsComponent {
35
- * ctrl = injectKeyHold('Control')
36
- * shift = injectKeyHold('Shift')
37
- * }
38
- * ```
39
- */
40
- export function injectKeyHold(
41
- key: IndividualKey | (() => IndividualKey),
42
- ): Signal<boolean> {
43
- const tracker = getKeyStateTracker()
44
- const heldKeysSelector = injectSelector(
45
- tracker.store,
46
- (state) => state.heldKeys,
47
- )
48
-
49
- return computed(() => {
50
- const resolvedKey = typeof key === 'function' ? key() : key
51
- const normalizedKey = resolvedKey.toLowerCase()
52
-
53
- return heldKeysSelector().some(
54
- (heldKey) => heldKey.toLowerCase() === normalizedKey,
55
- )
56
- })
57
- }