zcw-shared 1.25.1 → 1.26.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.
@@ -0,0 +1,18 @@
1
+ import type { Window } from '../../../references/browser.d';
2
+ import type { KeyboardEvent } from '../../../references/dom.d';
3
+ import type { Console } from '../../../references/console.d';
4
+ export type KeyboardEventListener = (event: KeyboardEvent) => void;
5
+ export interface KeyboardCenterDeps {
6
+ addEventListener: Window['addEventListener'];
7
+ removeEventListener: Window['removeEventListener'];
8
+ log: Console['log'];
9
+ error: Console['error'];
10
+ warn: Console['warn'];
11
+ }
12
+ export interface KeyboardCenter {
13
+ subscribe(listener: KeyboardEventListener): () => void;
14
+ unsubscribe(listener: KeyboardEventListener): void;
15
+ getListenerCount(): number;
16
+ isInitialized(): boolean;
17
+ }
18
+ export declare function createSharedKeyboardCenter(deps: KeyboardCenterDeps): KeyboardCenter;
@@ -0,0 +1,58 @@
1
+ import { createEventEmitter } from '../patterns/EventEmitter';
2
+ let globalCenter = null;
3
+ export function createSharedKeyboardCenter(deps) {
4
+ if (globalCenter) {
5
+ return globalCenter;
6
+ }
7
+ const emitter = createEventEmitter({ log: deps.log, error: deps.error, warn: deps.warn }, { maxListeners: 50 });
8
+ let isListenerAdded = false;
9
+ const listeners = new Set();
10
+ const globalKeyboardHandler = (event) => {
11
+ if (listeners.size === 0) {
12
+ return;
13
+ }
14
+ listeners.forEach(listener => {
15
+ try {
16
+ listener(event);
17
+ }
18
+ catch (error) {
19
+ deps.error('[KeyboardCenter] 监听器执行错误:', error);
20
+ }
21
+ });
22
+ };
23
+ const center = {
24
+ subscribe(listener) {
25
+ listeners.add(listener);
26
+ emitter.on('keyboard', listener);
27
+ if (!isListenerAdded) {
28
+ deps.addEventListener('keydown', globalKeyboardHandler, {
29
+ passive: true
30
+ });
31
+ deps.addEventListener('keyup', globalKeyboardHandler, {
32
+ passive: true
33
+ });
34
+ isListenerAdded = true;
35
+ deps.log('[KeyboardCenter] 已添加全局键盘监听');
36
+ }
37
+ return () => {
38
+ center.unsubscribe(listener);
39
+ };
40
+ },
41
+ unsubscribe(listener) {
42
+ listeners.delete(listener);
43
+ emitter.off('keyboard', listener);
44
+ if (listeners.size === 0) {
45
+ deps.log('[KeyboardCenter] 所有订阅者已移除,但保持全局监听');
46
+ }
47
+ },
48
+ getListenerCount() {
49
+ return listeners.size;
50
+ },
51
+ isInitialized() {
52
+ return isListenerAdded;
53
+ }
54
+ };
55
+ globalCenter = center;
56
+ return center;
57
+ }
58
+ //# sourceMappingURL=createSharedKeyboardCenter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSharedKeyboardCenter.js","sourceRoot":"","sources":["../../../src/functions/dom/createSharedKeyboardCenter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAsD3E,IAAI,YAAY,GAA0B,IAAI,CAAA;AAiC9C,MAAM,UAAU,0BAA0B,CAAC,IAAwB;IAEjE,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAA;IACrB,CAAC;IAGD,MAAM,OAAO,GAAG,kBAAkB,CAChC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EACrD,EAAE,YAAY,EAAE,EAAE,EAAE,CACrB,CAAA;IAED,IAAI,eAAe,GAAG,KAAK,CAAA;IAC3B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAyB,CAAA;IAKlD,MAAM,qBAAqB,GAAG,CAAC,KAAoB,EAAE,EAAE;QAErD,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACzB,OAAM;QACR,CAAC;QAGD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,IAAI,CAAC;gBACH,QAAQ,CAAC,KAAK,CAAC,CAAA;YACjB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAA;YAChD,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,MAAM,MAAM,GAAmB;QAI7B,SAAS,CAAC,QAA+B;YACvC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACvB,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;YAGhC,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,qBAAsC,EAAE;oBACvE,OAAO,EAAE,IAAI;iBACd,CAAC,CAAA;gBACF,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,qBAAsC,EAAE;oBACrE,OAAO,EAAE,IAAI;iBACd,CAAC,CAAA;gBACF,eAAe,GAAG,IAAI,CAAA;gBACtB,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;YACxC,CAAC;YAGD,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;YAC9B,CAAC,CAAA;QACH,CAAC;QAKD,WAAW,CAAC,QAA+B;YACzC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAC1B,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;YAIjC,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAA;YAC/C,CAAC;QACH,CAAC;QAKD,gBAAgB;YACd,OAAO,SAAS,CAAC,IAAI,CAAA;QACvB,CAAC;QAKD,aAAa;YACX,OAAO,eAAe,CAAA;QACxB,CAAC;KACF,CAAA;IAGD,YAAY,GAAG,MAAM,CAAA;IAErB,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { Ref } from '../../../references/vue.d';
2
2
  import type { KeyboardEvent } from '../../../references/dom.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
+ import { Window } from 'references/browser';
4
5
  export type KeyboardEventType = 'keydown' | 'keyup';
5
6
  export type KeyboardCallback = (event: KeyboardEvent) => void;
6
7
  export type Unsubscribe = () => void;
@@ -20,5 +21,9 @@ export interface UseKeyboardReturn {
20
21
  }
21
22
  export interface UseKeyboardDeps {
22
23
  vue: Pick<Required<VueCompositionAPI>, 'ref' | 'onMounted' | 'onUnmounted'>;
24
+ window: {
25
+ addEventListener: Window['addEventListener'];
26
+ removeEventListener: Window['removeEventListener'];
27
+ };
23
28
  }
24
29
  export declare function useKeyboard(options: UseKeyboardOptions | undefined, deps: UseKeyboardDeps): UseKeyboardReturn;
@@ -6,32 +6,32 @@ class KeyboardManager {
6
6
  idCounter = 0;
7
7
  sortedListenersCache = new Map();
8
8
  sortedExclusiveCache = new Map();
9
+ windowDeps = null;
10
+ setWindowDeps(windowDeps) {
11
+ if (!this.windowDeps) {
12
+ this.windowDeps = windowDeps;
13
+ }
14
+ }
9
15
  start() {
10
- if (this.isListening)
16
+ if (this.isListening || !this.windowDeps)
11
17
  return;
12
18
  if (!this.boundHandler) {
13
19
  this.boundHandler = this.handleEvent.bind(this);
14
20
  }
15
21
  try {
16
- const win = globalThis;
17
- if (win && typeof win.addEventListener === 'function') {
18
- win.addEventListener('keydown', this.boundHandler);
19
- win.addEventListener('keyup', this.boundHandler);
20
- this.isListening = true;
21
- }
22
+ this.windowDeps.addEventListener('keydown', this.boundHandler);
23
+ this.windowDeps.addEventListener('keyup', this.boundHandler);
24
+ this.isListening = true;
22
25
  }
23
26
  catch (e) {
24
27
  }
25
28
  }
26
29
  stop() {
27
- if (!this.isListening || !this.boundHandler)
30
+ if (!this.isListening || !this.boundHandler || !this.windowDeps)
28
31
  return;
29
32
  try {
30
- const win = globalThis;
31
- if (win && typeof win.removeEventListener === 'function') {
32
- win.removeEventListener('keydown', this.boundHandler);
33
- win.removeEventListener('keyup', this.boundHandler);
34
- }
33
+ this.windowDeps.removeEventListener('keydown', this.boundHandler);
34
+ this.windowDeps.removeEventListener('keyup', this.boundHandler);
35
35
  }
36
36
  catch (e) {
37
37
  }
@@ -106,6 +106,7 @@ class KeyboardManager {
106
106
  const keyboardManager = new KeyboardManager();
107
107
  export function useKeyboard(options = {}, deps) {
108
108
  const { onKeyDown, exclusive = false, priority = 0, eventType = 'keydown' } = options;
109
+ keyboardManager.setWindowDeps(deps.window);
109
110
  const pressedKey = deps.vue.ref(null);
110
111
  const isCtrlKey = deps.vue.ref(false);
111
112
  const isMetaKey = deps.vue.ref(false);
@@ -1 +1 @@
1
- {"version":3,"file":"useKeyboard.js","sourceRoot":"","sources":["../../../src/vue-hooks/dom/useKeyboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useKeyboard.js","sourceRoot":"","sources":["../../../src/vue-hooks/dom/useKeyboard.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zcw-shared",
3
- "version": "1.25.1",
3
+ "version": "1.26.0",
4
4
  "files": [
5
5
  "references",
6
6
  "dist",
@@ -120,6 +120,7 @@
120
120
  "./functions/design-tokens/mixColors": "./dist/functions/design-tokens/mixColors.js",
121
121
  "./functions/design-tokens/parseDesignTokens": "./dist/functions/design-tokens/parseDesignTokens.js",
122
122
  "./functions/dom/computePosition": "./dist/functions/dom/computePosition.js",
123
+ "./functions/dom/createSharedKeyboardCenter": "./dist/functions/dom/createSharedKeyboardCenter.js",
123
124
  "./functions/dom/createThrottledEventListener": "./dist/functions/dom/createThrottledEventListener.js",
124
125
  "./functions/dom/demonstrateResourceLoading": "./dist/functions/dom/demonstrateResourceLoading.js",
125
126
  "./functions/dom/detectOverflow": "./dist/functions/dom/detectOverflow.js",
@@ -269,7 +270,6 @@
269
270
  "./vue-hooks/dom/useClickOutside": "./dist/vue-hooks/dom/useClickOutside.js",
270
271
  "./vue-hooks/dom/useDraggable": "./dist/vue-hooks/dom/useDraggable.js",
271
272
  "./vue-hooks/dom/useEventListener": "./dist/vue-hooks/dom/useEventListener.js",
272
- "./vue-hooks/dom/useKeyboard": "./dist/vue-hooks/dom/useKeyboard.js",
273
273
  "./vue-hooks/dom/useResizable": "./dist/vue-hooks/dom/useResizable.js",
274
274
  "./vue-hooks/history/useDebouncedRefHistory": "./dist/vue-hooks/history/useDebouncedRefHistory.js",
275
275
  "./vue-hooks/history/useManualRefHistory": "./dist/vue-hooks/history/useManualRefHistory.js",