diff --git a/build.mjs b/build.mjs index 54769f9..0d4843a 100644 --- a/build.mjs +++ b/build.mjs @@ -1,7 +1,7 @@ import * as esbuild from 'esbuild' await esbuild.build({ - entryPoints: ['src/index.ts', 'src/react/index.ts', 'src/preact/index.ts'], + entryPoints: ['src/index.ts', 'src/react.ts', 'src/preact.ts'], bundle: false, sourcemap: true, minify: true, diff --git a/dist/preact/index.d.ts b/dist/preact.d.ts similarity index 71% rename from dist/preact/index.d.ts rename to dist/preact.d.ts index 0e7d2b5..58eee1b 100644 --- a/dist/preact/index.d.ts +++ b/dist/preact.d.ts @@ -1,2 +1,2 @@ -import { Interpreter_T } from '../index'; +import { Interpreter_T } from './index'; export declare function useInterpreter(createInterpreter: () => Interpreter_T): Interpreter_T; diff --git a/dist/preact.js b/dist/preact.js new file mode 100644 index 0000000..262121f --- /dev/null +++ b/dist/preact.js @@ -0,0 +1,2 @@ +import{subscribeToEvents as o,unsubscribe as i}from"./index";import{useMemo as c,useState as p,useEffect as b,useCallback as g}from"preact/hooks";let n=0;function d(s){const e=c(s,[]),[a,r]=p(n),t=g(()=>{r(n++)},[r]);return b(()=>{const u=o(e,t);return()=>{i(e,u)}},[t]),e}export{d as useInterpreter}; +//# sourceMappingURL=preact.js.map diff --git a/dist/preact.js.map b/dist/preact.js.map new file mode 100644 index 0000000..6ad2d7d --- /dev/null +++ b/dist/preact.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../src/preact.ts"], + "sourcesContent": ["import { Interpreter_T, subscribeToEvents, unsubscribe } from './index';\nimport { useMemo, useState, useEffect, useCallback } from 'preact/hooks';\n\n// need to use an integer instead of toggling a boolean back and forth; probably a bug with useState():\nlet i=0;\nexport function useInterpreter(createInterpreter:()=>Interpreter_T){\n const interpreter = useMemo(createInterpreter,[]);\n // some variable whose value to switch whenever we want to trigger a re-render:\n const [triggerRenderValue, setTriggerRenderValue] = useState(i);\n const triggerRender = useCallback(()=>{ setTriggerRenderValue(i++); }, [setTriggerRenderValue]);\n // ensure only one subscription is ever made, and destroy it when the component unloads:\n useEffect(()=>{\n const subscriptionId = subscribeToEvents(interpreter, triggerRender);\n return ()=>{ unsubscribe(interpreter, subscriptionId); };\n },[triggerRender]);\n return interpreter;\n}"], + "mappings": "AAAA,OAAwB,qBAAAA,EAAmB,eAAAC,MAAmB,UAC9D,OAAS,WAAAC,EAAS,YAAAC,EAAU,aAAAC,EAAW,eAAAC,MAAmB,eAG1D,IAAIC,EAAE,EACC,SAASC,EAAkBC,EAAuC,CACvE,MAAMC,EAAcP,EAAQM,EAAkB,CAAC,CAAC,EAE1C,CAACE,EAAoBC,CAAqB,EAAIR,EAASG,CAAC,EACxDM,EAAgBP,EAAY,IAAI,CAAEM,EAAsBL,GAAG,CAAG,EAAG,CAACK,CAAqB,CAAC,EAE9F,OAAAP,EAAU,IAAI,CACZ,MAAMS,EAAiBb,EAAkBS,EAAaG,CAAa,EACnE,MAAO,IAAI,CAAEX,EAAYQ,EAAaI,CAAc,CAAG,CACzD,EAAE,CAACD,CAAa,CAAC,EACVH,CACT", + "names": ["subscribeToEvents", "unsubscribe", "useMemo", "useState", "useEffect", "useCallback", "i", "useInterpreter", "createInterpreter", "interpreter", "triggerRenderValue", "setTriggerRenderValue", "triggerRender", "subscriptionId"] +} diff --git a/dist/preact/index.js b/dist/preact/index.js deleted file mode 100644 index e451671..0000000 --- a/dist/preact/index.js +++ /dev/null @@ -1,2 +0,0 @@ -import{subscribeToEvents as o,unsubscribe as i}from"../index";import{useMemo as c,useState as p,useEffect as b,useCallback as g}from"preact/hooks";let n=0;function d(s){const e=c(s,[]),[a,r]=p(n),t=g(()=>{r(n++)},[r]);return b(()=>{const u=o(e,t);return()=>{i(e,u)}},[t]),e}export{d as useInterpreter}; -//# sourceMappingURL=index.js.map diff --git a/dist/preact/index.js.map b/dist/preact/index.js.map deleted file mode 100644 index 226b7e8..0000000 --- a/dist/preact/index.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../src/preact/index.ts"], - "sourcesContent": ["import { Interpreter_T, subscribeToEvents, unsubscribe } from '../index';\nimport { useMemo, useState, useEffect, useCallback } from 'preact/hooks';\n\n// need to use an integer instead of toggling a boolean back and forth; probably a bug with useState():\nlet i=0;\nexport function useInterpreter(createInterpreter:()=>Interpreter_T){\n const interpreter = useMemo(createInterpreter,[]);\n // some variable whose value to switch whenever we want to trigger a re-render:\n const [triggerRenderValue, setTriggerRenderValue] = useState(i);\n const triggerRender = useCallback(()=>{ setTriggerRenderValue(i++); }, [setTriggerRenderValue]);\n // ensure only one subscription is ever made, and destroy it when the component unloads:\n useEffect(()=>{\n const subscriptionId = subscribeToEvents(interpreter, triggerRender);\n return ()=>{ unsubscribe(interpreter, subscriptionId); };\n },[triggerRender]);\n return interpreter;\n}"], - "mappings": "AAAA,OAAwB,qBAAAA,EAAmB,eAAAC,MAAmB,WAC9D,OAAS,WAAAC,EAAS,YAAAC,EAAU,aAAAC,EAAW,eAAAC,MAAmB,eAG1D,IAAIC,EAAE,EACC,SAASC,EAAkBC,EAAuC,CACvE,MAAMC,EAAcP,EAAQM,EAAkB,CAAC,CAAC,EAE1C,CAACE,EAAoBC,CAAqB,EAAIR,EAASG,CAAC,EACxDM,EAAgBP,EAAY,IAAI,CAAEM,EAAsBL,GAAG,CAAG,EAAG,CAACK,CAAqB,CAAC,EAE9F,OAAAP,EAAU,IAAI,CACZ,MAAMS,EAAiBb,EAAkBS,EAAaG,CAAa,EACnE,MAAO,IAAI,CAAEX,EAAYQ,EAAaI,CAAc,CAAG,CACzD,EAAE,CAACD,CAAa,CAAC,EACVH,CACT", - "names": ["subscribeToEvents", "unsubscribe", "useMemo", "useState", "useEffect", "useCallback", "i", "useInterpreter", "createInterpreter", "interpreter", "triggerRenderValue", "setTriggerRenderValue", "triggerRender", "subscriptionId"] -} diff --git a/dist/react/index.d.ts b/dist/react.d.ts similarity index 68% rename from dist/react/index.d.ts rename to dist/react.d.ts index c11a7df..0970c3e 100644 --- a/dist/react/index.d.ts +++ b/dist/react.d.ts @@ -1,2 +1,2 @@ -import { Interpreter_T } from '../index'; +import { Interpreter_T } from './index'; export declare function useInterpreter(createInterpreter: () => Interpreter_T): any; diff --git a/dist/react.js b/dist/react.js new file mode 100644 index 0000000..af039f8 --- /dev/null +++ b/dist/react.js @@ -0,0 +1,2 @@ +import{subscribeToEvents as o,unsubscribe as i}from"./index";import{useMemo as c,useState as p,useEffect as b,useCallback as g}from"react";let n=0;function d(s){const e=c(s,[]),[a,r]=p(n),t=g(()=>{r(n++)},[r]);return b(()=>{const u=o(e,t);return()=>{i(e,u)}},[t]),e}export{d as useInterpreter}; +//# sourceMappingURL=react.js.map diff --git a/dist/react.js.map b/dist/react.js.map new file mode 100644 index 0000000..af79525 --- /dev/null +++ b/dist/react.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../src/react.ts"], + "sourcesContent": ["import { Interpreter_T, subscribeToEvents, unsubscribe } from './index';\nimport { useMemo, useState, useEffect, useCallback } from 'react';\n\n// need to use an integer instead of toggling a boolean back and forth; probably a bug with useState():\nlet i=0;\nexport function useInterpreter(createInterpreter:()=>Interpreter_T){\n const interpreter = useMemo(createInterpreter,[]);\n // some variable whose value to switch whenever we want to trigger a re-render:\n const [triggerRenderValue, setTriggerRenderValue] = useState(i);\n const triggerRender = useCallback(()=>{ setTriggerRenderValue(i++); }, [setTriggerRenderValue]);\n // ensure only one subscription is ever made, and destroy it when the component unloads:\n useEffect(()=>{\n const subscriptionId = subscribeToEvents(interpreter, triggerRender);\n return ()=>{ unsubscribe(interpreter, subscriptionId); };\n },[triggerRender]);\n return interpreter;\n}"], + "mappings": "AAAA,OAAwB,qBAAAA,EAAmB,eAAAC,MAAmB,UAC9D,OAAS,WAAAC,EAAS,YAAAC,EAAU,aAAAC,EAAW,eAAAC,MAAmB,QAG1D,IAAIC,EAAE,EACC,SAASC,EAAkBC,EAAuC,CACvE,MAAMC,EAAcP,EAAQM,EAAkB,CAAC,CAAC,EAE1C,CAACE,EAAoBC,CAAqB,EAAIR,EAASG,CAAC,EACxDM,EAAgBP,EAAY,IAAI,CAAEM,EAAsBL,GAAG,CAAG,EAAG,CAACK,CAAqB,CAAC,EAE9F,OAAAP,EAAU,IAAI,CACZ,MAAMS,EAAiBb,EAAkBS,EAAaG,CAAa,EACnE,MAAO,IAAI,CAAEX,EAAYQ,EAAaI,CAAc,CAAG,CACzD,EAAE,CAACD,CAAa,CAAC,EACVH,CACT", + "names": ["subscribeToEvents", "unsubscribe", "useMemo", "useState", "useEffect", "useCallback", "i", "useInterpreter", "createInterpreter", "interpreter", "triggerRenderValue", "setTriggerRenderValue", "triggerRender", "subscriptionId"] +} diff --git a/dist/react/index.js b/dist/react/index.js deleted file mode 100644 index 0f41ad8..0000000 --- a/dist/react/index.js +++ /dev/null @@ -1,2 +0,0 @@ -import{subscribeToEvents as o,unsubscribe as i}from"../index";import{useMemo as c,useState as p,useEffect as b,useCallback as g}from"react";let n=0;function d(s){const e=c(s,[]),[a,r]=p(n),t=g(()=>{r(n++)},[r]);return b(()=>{const u=o(e,t);return()=>{i(e,u)}},[t]),e}export{d as useInterpreter}; -//# sourceMappingURL=index.js.map diff --git a/dist/react/index.js.map b/dist/react/index.js.map deleted file mode 100644 index ca443bf..0000000 --- a/dist/react/index.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../src/react/index.ts"], - "sourcesContent": ["import { Interpreter_T, subscribeToEvents, unsubscribe } from '../index';\nimport { useMemo, useState, useEffect, useCallback } from 'react';\n\n// need to use an integer instead of toggling a boolean back and forth; probably a bug with useState():\nlet i=0;\nexport function useInterpreter(createInterpreter:()=>Interpreter_T){\n const interpreter = useMemo(createInterpreter,[]);\n // some variable whose value to switch whenever we want to trigger a re-render:\n const [triggerRenderValue, setTriggerRenderValue] = useState(i);\n const triggerRender = useCallback(()=>{ setTriggerRenderValue(i++); }, [setTriggerRenderValue]);\n // ensure only one subscription is ever made, and destroy it when the component unloads:\n useEffect(()=>{\n const subscriptionId = subscribeToEvents(interpreter, triggerRender);\n return ()=>{ unsubscribe(interpreter, subscriptionId); };\n },[triggerRender]);\n return interpreter;\n}"], - "mappings": "AAAA,OAAwB,qBAAAA,EAAmB,eAAAC,MAAmB,WAC9D,OAAS,WAAAC,EAAS,YAAAC,EAAU,aAAAC,EAAW,eAAAC,MAAmB,QAG1D,IAAIC,EAAE,EACC,SAASC,EAAkBC,EAAuC,CACvE,MAAMC,EAAcP,EAAQM,EAAkB,CAAC,CAAC,EAE1C,CAACE,EAAoBC,CAAqB,EAAIR,EAASG,CAAC,EACxDM,EAAgBP,EAAY,IAAI,CAAEM,EAAsBL,GAAG,CAAG,EAAG,CAACK,CAAqB,CAAC,EAE9F,OAAAP,EAAU,IAAI,CACZ,MAAMS,EAAiBb,EAAkBS,EAAaG,CAAa,EACnE,MAAO,IAAI,CAAEX,EAAYQ,EAAaI,CAAc,CAAG,CACzD,EAAE,CAACD,CAAa,CAAC,EACVH,CACT", - "names": ["subscribeToEvents", "unsubscribe", "useMemo", "useState", "useEffect", "useCallback", "i", "useInterpreter", "createInterpreter", "interpreter", "triggerRenderValue", "setTriggerRenderValue", "triggerRender", "subscriptionId"] -} diff --git a/package.json b/package.json index 5d369b5..6448e5f 100644 --- a/package.json +++ b/package.json @@ -10,14 +10,6 @@ ".": { "types": "./dist/index.d.ts", "import": "./dist/index.js" - }, - "./react": { - "types": "./dist/react/index.d.ts", - "import": "./dist/react/index.js" - }, - "./preact": { - "types": "./dist/preact/index.d.ts", - "import": "./dist/preact/index.js" } }, "scripts": { diff --git a/src/preact/index.ts b/src/preact.ts similarity index 98% rename from src/preact/index.ts rename to src/preact.ts index 2da59a7..b8ad654 100644 --- a/src/preact/index.ts +++ b/src/preact.ts @@ -1,4 +1,4 @@ -import { Interpreter_T, subscribeToEvents, unsubscribe } from '../index'; +import { Interpreter_T, subscribeToEvents, unsubscribe } from './index'; import { useMemo, useState, useEffect, useCallback } from 'preact/hooks'; // need to use an integer instead of toggling a boolean back and forth; probably a bug with useState(): diff --git a/src/react/index.ts b/src/react.ts similarity index 98% rename from src/react/index.ts rename to src/react.ts index 1cedc4a..181caf9 100644 --- a/src/react/index.ts +++ b/src/react.ts @@ -1,4 +1,4 @@ -import { Interpreter_T, subscribeToEvents, unsubscribe } from '../index'; +import { Interpreter_T, subscribeToEvents, unsubscribe } from './index'; import { useMemo, useState, useEffect, useCallback } from 'react'; // need to use an integer instead of toggling a boolean back and forth; probably a bug with useState():