crosshook 1.0.4 → 1.0.6
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.
- package/dist/index.d.mts +6 -10
- package/dist/index.d.ts +6 -10
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
interface CrosshookEvents
|
|
1
|
+
interface CrosshookEvents {
|
|
2
2
|
}
|
|
3
|
-
type EventKey = keyof CrosshookEvents
|
|
4
|
-
type EventPayload<K extends EventKey> = CrosshookEvents
|
|
5
|
-
type Handler<T =
|
|
3
|
+
type EventKey = keyof CrosshookEvents;
|
|
4
|
+
type EventPayload<K extends EventKey> = CrosshookEvents[K];
|
|
5
|
+
type Handler<T = unknown> = (payload: T) => void;
|
|
6
6
|
|
|
7
7
|
declare function register<T = any>(event: string, handler: Handler<T>): () => void;
|
|
8
8
|
|
|
@@ -11,14 +11,10 @@ declare function call<K extends EventKey>(event: K, payload: EventPayload<K>): v
|
|
|
11
11
|
/** ✅ Void payload overload */
|
|
12
12
|
declare function call<K extends EventKey>(event: K): void;
|
|
13
13
|
|
|
14
|
-
/** ✅
|
|
15
|
-
declare function useRegister<K extends EventKey>(event: K, handler:
|
|
14
|
+
/** ✅ STRICT typed overload */
|
|
15
|
+
declare function useRegister<K extends EventKey>(event: K, handler: Handler<EventPayload<K>>): void;
|
|
16
16
|
declare function useBridge(): {
|
|
17
17
|
call: typeof call;
|
|
18
18
|
};
|
|
19
19
|
|
|
20
|
-
/** 🔥 MUST export for augmentation */
|
|
21
|
-
interface CrosshookEvents {
|
|
22
|
-
}
|
|
23
|
-
|
|
24
20
|
export { type CrosshookEvents, type Handler, call, register, useBridge, useRegister };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
interface CrosshookEvents
|
|
1
|
+
interface CrosshookEvents {
|
|
2
2
|
}
|
|
3
|
-
type EventKey = keyof CrosshookEvents
|
|
4
|
-
type EventPayload<K extends EventKey> = CrosshookEvents
|
|
5
|
-
type Handler<T =
|
|
3
|
+
type EventKey = keyof CrosshookEvents;
|
|
4
|
+
type EventPayload<K extends EventKey> = CrosshookEvents[K];
|
|
5
|
+
type Handler<T = unknown> = (payload: T) => void;
|
|
6
6
|
|
|
7
7
|
declare function register<T = any>(event: string, handler: Handler<T>): () => void;
|
|
8
8
|
|
|
@@ -11,14 +11,10 @@ declare function call<K extends EventKey>(event: K, payload: EventPayload<K>): v
|
|
|
11
11
|
/** ✅ Void payload overload */
|
|
12
12
|
declare function call<K extends EventKey>(event: K): void;
|
|
13
13
|
|
|
14
|
-
/** ✅
|
|
15
|
-
declare function useRegister<K extends EventKey>(event: K, handler:
|
|
14
|
+
/** ✅ STRICT typed overload */
|
|
15
|
+
declare function useRegister<K extends EventKey>(event: K, handler: Handler<EventPayload<K>>): void;
|
|
16
16
|
declare function useBridge(): {
|
|
17
17
|
call: typeof call;
|
|
18
18
|
};
|
|
19
19
|
|
|
20
|
-
/** 🔥 MUST export for augmentation */
|
|
21
|
-
interface CrosshookEvents {
|
|
22
|
-
}
|
|
23
|
-
|
|
24
20
|
export { type CrosshookEvents, type Handler, call, register, useBridge, useRegister };
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var l=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var g=(e,r)=>{for(var t in r)l(e,t,{get:r[t],enumerable:!0})},
|
|
1
|
+
"use strict";var l=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var g=(e,r)=>{for(var t in r)l(e,t,{get:r[t],enumerable:!0})},m=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of y(r))!u.call(e,o)&&o!==t&&l(e,o,{get:()=>r[o],enumerable:!(s=f(r,o))||s.enumerable});return e};var x=e=>m(l({},"__esModule",{value:!0}),e);var E={};g(E,{call:()=>a,register:()=>i,useBridge:()=>c,useRegister:()=>d});module.exports=x(E);var n=new Map;function i(e,r){return n.has(e)||n.set(e,new Set),n.get(e).add(r),()=>{n.get(e)?.delete(r),n.get(e)?.size===0&&n.delete(e)}}function a(e,r){let t=n.get(e);if(!t){process.env.NODE_ENV!=="production"&&console.warn(`[crosshook] No listeners for "${e}"`);return}t.forEach(s=>{try{s(r)}catch(o){console.error(`[crosshook] Handler error in "${e}"`,o)}})}var p=require("react");function d(e,r){(0,p.useEffect)(()=>i(e,r),[e,r])}function c(){return{call:a}}0&&(module.exports={call,register,useBridge,useRegister});
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/bridge.ts","../src/hooks.ts"],"sourcesContent":["export { call, register } from \"./bridge\";\nexport { useBridge, useRegister } from \"./hooks\";\n\nexport type { Handler } from \"./types\";\n\n/** 🔥 MUST export for augmentation */\nexport
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/bridge.ts","../src/hooks.ts"],"sourcesContent":["export { call, register } from \"./bridge\";\nexport { useBridge, useRegister } from \"./hooks\";\n\nexport type { Handler } from \"./types\";\n\n/** 🔥 MUST export for augmentation */\nexport type { CrosshookEvents } from \"./types\";","import type { Handler } from \"./types\";\n\nconst listeners = new Map<string, Set<Handler>>();\n\nexport function register<T = any>(\n event: string,\n handler: Handler<T>\n) {\n if (!listeners.has(event)) {\n listeners.set(event, new Set());\n }\n\n listeners.get(event)!.add(handler as Handler);\n\n return () => {\n listeners.get(event)?.delete(handler as Handler);\n\n if (listeners.get(event)?.size === 0) {\n listeners.delete(event);\n }\n };\n}\n\nimport type { EventKey, EventPayload } from \"./types\";\n\n/** ✅ Typed overload */\nexport function call<K extends EventKey>(\n event: K,\n payload: EventPayload<K>\n): void;\n\n/** ✅ Void payload overload */\nexport function call<K extends EventKey>(\n event: K\n): void;\n\n/** ✅ Fallback */\nexport function call(event: string, payload?: any) {\n const handlers = listeners.get(event);\n\n if (!handlers) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(`[crosshook] No listeners for \"${event}\"`);\n }\n return;\n }\n\n handlers.forEach((handler) => {\n try {\n handler(payload);\n } catch (err) {\n console.error(\n `[crosshook] Handler error in \"${event}\"`,\n err\n );\n }\n });\n}","import { useEffect } from \"react\";\nimport { register, call } from \"./bridge\";\nimport type { Handler, EventKey, EventPayload } from \"./types\";\n\n/** ✅ STRICT typed overload */\nexport function useRegister<K extends EventKey>(\n event: K,\n handler: Handler<EventPayload<K>>\n): void;\n\n/** ✅ fallback */\nexport function useRegister(\n event: string,\n handler: Handler\n) {\n useEffect(() => {\n const unregister = register(event, handler);\n return unregister;\n }, [event, handler]);\n}\n\nexport function useBridge() {\n return { call };\n}"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,UAAAE,EAAA,aAAAC,EAAA,cAAAC,EAAA,gBAAAC,IAAA,eAAAC,EAAAN,GCEA,IAAMO,EAAY,IAAI,IAEf,SAASC,EACZC,EACAC,EACF,CACE,OAAKH,EAAU,IAAIE,CAAK,GACpBF,EAAU,IAAIE,EAAO,IAAI,GAAK,EAGlCF,EAAU,IAAIE,CAAK,EAAG,IAAIC,CAAkB,EAErC,IAAM,CACTH,EAAU,IAAIE,CAAK,GAAG,OAAOC,CAAkB,EAE3CH,EAAU,IAAIE,CAAK,GAAG,OAAS,GAC/BF,EAAU,OAAOE,CAAK,CAE9B,CACJ,CAgBO,SAASE,EAAKF,EAAeG,EAAe,CAC/C,IAAMC,EAAWN,EAAU,IAAIE,CAAK,EAEpC,GAAI,CAACI,EAAU,CACP,QAAQ,IAAI,WAAa,cACzB,QAAQ,KAAK,iCAAiCJ,CAAK,GAAG,EAE1D,MACJ,CAEAI,EAAS,QAASH,GAAY,CAC1B,GAAI,CACAA,EAAQE,CAAO,CACnB,OAASE,EAAK,CACV,QAAQ,MACJ,iCAAiCL,CAAK,IACtCK,CACJ,CACJ,CACJ,CAAC,CACL,CCzDA,IAAAC,EAA0B,iBAWnB,SAASC,EACZC,EACAC,EACF,IACE,aAAU,IACaC,EAASF,EAAOC,CAAO,EAE3C,CAACD,EAAOC,CAAO,CAAC,CACvB,CAEO,SAASE,GAAY,CACxB,MAAO,CAAE,KAAAC,CAAK,CAClB","names":["index_exports","__export","call","register","useBridge","useRegister","__toCommonJS","listeners","register","event","handler","call","payload","handlers","err","import_react","useRegister","event","handler","register","useBridge","call"]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var t=new Map;function n(e,r){return t.has(e)||t.set(e,new Set),t.get(e).add(r),()=>{t.get(e)?.delete(r),t.get(e)?.size===0&&t.delete(e)}}function s(e,r){let o=t.get(e);if(!o){process.env.NODE_ENV!=="production"&&console.warn(`[crosshook] No listeners for "${e}"`);return}o.forEach(i=>{try{i(r)}catch(a){console.error(`[crosshook] Handler error in "${e}"`,a)}})}import{useEffect as l}from"react";function
|
|
1
|
+
var t=new Map;function n(e,r){return t.has(e)||t.set(e,new Set),t.get(e).add(r),()=>{t.get(e)?.delete(r),t.get(e)?.size===0&&t.delete(e)}}function s(e,r){let o=t.get(e);if(!o){process.env.NODE_ENV!=="production"&&console.warn(`[crosshook] No listeners for "${e}"`);return}o.forEach(i=>{try{i(r)}catch(a){console.error(`[crosshook] Handler error in "${e}"`,a)}})}import{useEffect as l}from"react";function p(e,r){l(()=>n(e,r),[e,r])}function d(){return{call:s}}export{s as call,n as register,d as useBridge,p as useRegister};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/bridge.ts","../src/hooks.ts"],"sourcesContent":["import type { Handler } from \"./types\";\n\nconst listeners = new Map<string, Set<Handler>>();\n\nexport function register<T = any>(\n event: string,\n handler: Handler<T>\n) {\n if (!listeners.has(event)) {\n listeners.set(event, new Set());\n }\n\n listeners.get(event)!.add(handler as Handler);\n\n return () => {\n listeners.get(event)?.delete(handler as Handler);\n\n if (listeners.get(event)?.size === 0) {\n listeners.delete(event);\n }\n };\n}\n\nimport type { EventKey, EventPayload } from \"./types\";\n\n/** ✅ Typed overload */\nexport function call<K extends EventKey>(\n event: K,\n payload: EventPayload<K>\n): void;\n\n/** ✅ Void payload overload */\nexport function call<K extends EventKey>(\n event: K\n): void;\n\n/** ✅ Fallback */\nexport function call(event: string, payload?: any) {\n const handlers = listeners.get(event);\n\n if (!handlers) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(`[crosshook] No listeners for \"${event}\"`);\n }\n return;\n }\n\n handlers.forEach((handler) => {\n try {\n handler(payload);\n } catch (err) {\n console.error(\n `[crosshook] Handler error in \"${event}\"`,\n err\n );\n }\n });\n}","import { useEffect } from \"react\";\nimport { register, call } from \"./bridge\";\nimport type { Handler, EventKey, EventPayload } from \"./types\";\n\n/** ✅
|
|
1
|
+
{"version":3,"sources":["../src/bridge.ts","../src/hooks.ts"],"sourcesContent":["import type { Handler } from \"./types\";\n\nconst listeners = new Map<string, Set<Handler>>();\n\nexport function register<T = any>(\n event: string,\n handler: Handler<T>\n) {\n if (!listeners.has(event)) {\n listeners.set(event, new Set());\n }\n\n listeners.get(event)!.add(handler as Handler);\n\n return () => {\n listeners.get(event)?.delete(handler as Handler);\n\n if (listeners.get(event)?.size === 0) {\n listeners.delete(event);\n }\n };\n}\n\nimport type { EventKey, EventPayload } from \"./types\";\n\n/** ✅ Typed overload */\nexport function call<K extends EventKey>(\n event: K,\n payload: EventPayload<K>\n): void;\n\n/** ✅ Void payload overload */\nexport function call<K extends EventKey>(\n event: K\n): void;\n\n/** ✅ Fallback */\nexport function call(event: string, payload?: any) {\n const handlers = listeners.get(event);\n\n if (!handlers) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(`[crosshook] No listeners for \"${event}\"`);\n }\n return;\n }\n\n handlers.forEach((handler) => {\n try {\n handler(payload);\n } catch (err) {\n console.error(\n `[crosshook] Handler error in \"${event}\"`,\n err\n );\n }\n });\n}","import { useEffect } from \"react\";\nimport { register, call } from \"./bridge\";\nimport type { Handler, EventKey, EventPayload } from \"./types\";\n\n/** ✅ STRICT typed overload */\nexport function useRegister<K extends EventKey>(\n event: K,\n handler: Handler<EventPayload<K>>\n): void;\n\n/** ✅ fallback */\nexport function useRegister(\n event: string,\n handler: Handler\n) {\n useEffect(() => {\n const unregister = register(event, handler);\n return unregister;\n }, [event, handler]);\n}\n\nexport function useBridge() {\n return { call };\n}"],"mappings":"AAEA,IAAMA,EAAY,IAAI,IAEf,SAASC,EACZC,EACAC,EACF,CACE,OAAKH,EAAU,IAAIE,CAAK,GACpBF,EAAU,IAAIE,EAAO,IAAI,GAAK,EAGlCF,EAAU,IAAIE,CAAK,EAAG,IAAIC,CAAkB,EAErC,IAAM,CACTH,EAAU,IAAIE,CAAK,GAAG,OAAOC,CAAkB,EAE3CH,EAAU,IAAIE,CAAK,GAAG,OAAS,GAC/BF,EAAU,OAAOE,CAAK,CAE9B,CACJ,CAgBO,SAASE,EAAKF,EAAeG,EAAe,CAC/C,IAAMC,EAAWN,EAAU,IAAIE,CAAK,EAEpC,GAAI,CAACI,EAAU,CACP,QAAQ,IAAI,WAAa,cACzB,QAAQ,KAAK,iCAAiCJ,CAAK,GAAG,EAE1D,MACJ,CAEAI,EAAS,QAASH,GAAY,CAC1B,GAAI,CACAA,EAAQE,CAAO,CACnB,OAASE,EAAK,CACV,QAAQ,MACJ,iCAAiCL,CAAK,IACtCK,CACJ,CACJ,CACJ,CAAC,CACL,CCzDA,OAAS,aAAAC,MAAiB,QAWnB,SAASC,EACZC,EACAC,EACF,CACEC,EAAU,IACaC,EAASH,EAAOC,CAAO,EAE3C,CAACD,EAAOC,CAAO,CAAC,CACvB,CAEO,SAASG,GAAY,CACxB,MAAO,CAAE,KAAAC,CAAK,CAClB","names":["listeners","register","event","handler","call","payload","handlers","err","useEffect","useRegister","event","handler","useEffect","register","useBridge","call"]}
|