spawn-term 0.2.6 → 0.2.8
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/cjs/createApp.js
CHANGED
|
@@ -81,8 +81,10 @@ function createApp() {
|
|
|
81
81
|
store.renders = 0;
|
|
82
82
|
store.waiting = [];
|
|
83
83
|
store.onRender = function() {
|
|
84
|
-
store.renders
|
|
85
|
-
|
|
84
|
+
store.renders++;
|
|
85
|
+
if (store.renders === store.nextRenders) {
|
|
86
|
+
while(store === null || store === void 0 ? void 0 : store.waiting.length)store.waiting.pop()();
|
|
87
|
+
}
|
|
86
88
|
};
|
|
87
89
|
inkApp = (0, _ink.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_Store.default.Provider, {
|
|
88
90
|
value: store,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/node/spawn-term/src/createApp.tsx"],"sourcesContent":["import { createStore } from 'zustand';\nimport App from './components/App.js';\nimport StoreContext from './contexts/Store.js';\n\n// @ts-ignore\nimport { type Instance, initialize, render } from './ink.js';\nimport type { AppState, ReleaseCallback, RetainCallback } from './types.js';\n\nexport default function createApp() {\n let refCount = 0;\n let store = null;\n let inkApp: Instance | null = null;\n\n return {\n retain(fn: RetainCallback): undefined {\n initialize(() => {\n if (++refCount > 1) return fn(store);\n if (store) throw new Error('Not expecting store');\n store = createStore<AppState>()((set) => ({\n processes: [],\n addProcess: (process) => {\n store.nextRenders = store.renders + 1;\n set((state) => ({ processes: [...state.processes, process] }));\n },\n updateProcess: (process) => {\n store.nextRenders = store.renders + 1;\n set((state) => ({ processes: state.processes.map((x) => (x.id === process.id ? process : x)) }));\n },\n }));\n store.nextRenders = 0;\n store.renders = 0;\n store.waiting = [];\n store.onRender = () => {\n store.renders
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/node/spawn-term/src/createApp.tsx"],"sourcesContent":["import { createStore } from 'zustand';\nimport App from './components/App.js';\nimport StoreContext from './contexts/Store.js';\n\n// @ts-ignore\nimport { type Instance, initialize, render } from './ink.js';\nimport type { AppState, ReleaseCallback, RetainCallback } from './types.js';\n\nexport default function createApp() {\n let refCount = 0;\n let store = null;\n let inkApp: Instance | null = null;\n\n return {\n retain(fn: RetainCallback): undefined {\n initialize(() => {\n if (++refCount > 1) return fn(store);\n if (store) throw new Error('Not expecting store');\n store = createStore<AppState>()((set) => ({\n processes: [],\n addProcess: (process) => {\n store.nextRenders = store.renders + 1;\n set((state) => ({ processes: [...state.processes, process] }));\n },\n updateProcess: (process) => {\n store.nextRenders = store.renders + 1;\n set((state) => ({ processes: state.processes.map((x) => (x.id === process.id ? process : x)) }));\n },\n }));\n store.nextRenders = 0;\n store.renders = 0;\n store.waiting = [];\n store.onRender = () => {\n store.renders++;\n if (store.renders === store.nextRenders) {\n while (store?.waiting.length) store.waiting.pop()();\n }\n };\n inkApp = render(\n <StoreContext.Provider value={store}>\n <App />\n </StoreContext.Provider>,\n { patchConsole: false }\n );\n return fn(store);\n });\n },\n release(cb: ReleaseCallback): undefined {\n if (--refCount > 0) {\n if (store.renders === store.nextRenders) cb();\n else store.waiting.push(cb);\n return;\n }\n if (!store) throw new Error('Expecting store');\n\n function done() {\n inkApp.unmount();\n inkApp = null;\n store = null;\n process.stdout.write('\\x1b[?25h'); // show cursor\n cb();\n }\n if (store.renders === store.nextRenders) done();\n else store.waiting.push(done);\n },\n };\n}\n"],"names":["createApp","refCount","store","inkApp","retain","fn","initialize","Error","createStore","set","processes","addProcess","process","nextRenders","renders","state","updateProcess","map","x","id","waiting","onRender","length","pop","render","StoreContext","Provider","value","App","patchConsole","release","cb","push","done","unmount","stdout","write"],"mappings":";;;;+BAQA;;;eAAwBA;;;;uBARI;0DACZ;4DACS;mBAGyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGnC,SAASA;IACtB,IAAIC,WAAW;IACf,IAAIC,QAAQ;IACZ,IAAIC,SAA0B;IAE9B,OAAO;QACLC,QAAAA,SAAAA,OAAOC,EAAkB;YACvBC,IAAAA,eAAU,EAAC;gBACT,IAAI,EAAEL,WAAW,GAAG,OAAOI,GAAGH;gBAC9B,IAAIA,OAAO,MAAM,IAAIK,MAAM;gBAC3BL,QAAQM,IAAAA,oBAAW,IAAa,SAACC;2BAAS;wBACxCC,WAAW,EAAE;wBACbC,YAAY,SAACC;4BACXV,MAAMW,WAAW,GAAGX,MAAMY,OAAO,GAAG;4BACpCL,IAAI,SAACM;uCAAW;oCAAEL,WAAW,AAAC,qBAAGK,MAAML,SAAS,SAAnB;wCAAqBE;qCAAQ;gCAAC;;wBAC7D;wBACAI,eAAe,SAACJ;4BACdV,MAAMW,WAAW,GAAGX,MAAMY,OAAO,GAAG;4BACpCL,IAAI,SAACM;uCAAW;oCAAEL,WAAWK,MAAML,SAAS,CAACO,GAAG,CAAC,SAACC;+CAAOA,EAAEC,EAAE,KAAKP,SAAQO,EAAE,GAAGP,WAAUM;;gCAAI;;wBAC/F;oBACF;;gBACAhB,MAAMW,WAAW,GAAG;gBACpBX,MAAMY,OAAO,GAAG;gBAChBZ,MAAMkB,OAAO,GAAG,EAAE;gBAClBlB,MAAMmB,QAAQ,GAAG;oBACfnB,MAAMY,OAAO;oBACb,IAAIZ,MAAMY,OAAO,KAAKZ,MAAMW,WAAW,EAAE;wBACvC,MAAOX,kBAAAA,4BAAAA,MAAOkB,OAAO,CAACE,MAAM,CAAEpB,MAAMkB,OAAO,CAACG,GAAG;oBACjD;gBACF;gBACApB,SAASqB,IAAAA,WAAM,gBACb,qBAACC,cAAY,CAACC,QAAQ;oBAACC,OAAOzB;8BAC5B,cAAA,qBAAC0B,YAAG;oBAEN;oBAAEC,cAAc;gBAAM;gBAExB,OAAOxB,GAAGH;YACZ;QACF;QACA4B,SAAAA,SAAAA,QAAQC,EAAmB;YACzB,IAAI,EAAE9B,WAAW,GAAG;gBAClB,IAAIC,MAAMY,OAAO,KAAKZ,MAAMW,WAAW,EAAEkB;qBACpC7B,MAAMkB,OAAO,CAACY,IAAI,CAACD;gBACxB;YACF;YACA,IAAI,CAAC7B,OAAO,MAAM,IAAIK,MAAM;YAE5B,SAAS0B;gBACP9B,OAAO+B,OAAO;gBACd/B,SAAS;gBACTD,QAAQ;gBACRU,QAAQuB,MAAM,CAACC,KAAK,CAAC,cAAc,cAAc;gBACjDL;YACF;YACA,IAAI7B,MAAMY,OAAO,KAAKZ,MAAMW,WAAW,EAAEoB;iBACpC/B,MAAMkB,OAAO,CAACY,IAAI,CAACC;QAC1B;IACF;AACF"}
|
package/dist/esm/createApp.js
CHANGED
|
@@ -35,8 +35,10 @@ export default function createApp() {
|
|
|
35
35
|
store.renders = 0;
|
|
36
36
|
store.waiting = [];
|
|
37
37
|
store.onRender = ()=>{
|
|
38
|
-
store.renders
|
|
39
|
-
|
|
38
|
+
store.renders++;
|
|
39
|
+
if (store.renders === store.nextRenders) {
|
|
40
|
+
while(store === null || store === void 0 ? void 0 : store.waiting.length)store.waiting.pop()();
|
|
41
|
+
}
|
|
40
42
|
};
|
|
41
43
|
inkApp = render(/*#__PURE__*/ _jsx(StoreContext.Provider, {
|
|
42
44
|
value: store,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/node/spawn-term/src/createApp.tsx"],"sourcesContent":["import { createStore } from 'zustand';\nimport App from './components/App.js';\nimport StoreContext from './contexts/Store.js';\n\n// @ts-ignore\nimport { type Instance, initialize, render } from './ink.js';\nimport type { AppState, ReleaseCallback, RetainCallback } from './types.js';\n\nexport default function createApp() {\n let refCount = 0;\n let store = null;\n let inkApp: Instance | null = null;\n\n return {\n retain(fn: RetainCallback): undefined {\n initialize(() => {\n if (++refCount > 1) return fn(store);\n if (store) throw new Error('Not expecting store');\n store = createStore<AppState>()((set) => ({\n processes: [],\n addProcess: (process) => {\n store.nextRenders = store.renders + 1;\n set((state) => ({ processes: [...state.processes, process] }));\n },\n updateProcess: (process) => {\n store.nextRenders = store.renders + 1;\n set((state) => ({ processes: state.processes.map((x) => (x.id === process.id ? process : x)) }));\n },\n }));\n store.nextRenders = 0;\n store.renders = 0;\n store.waiting = [];\n store.onRender = () => {\n store.renders
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/node/spawn-term/src/createApp.tsx"],"sourcesContent":["import { createStore } from 'zustand';\nimport App from './components/App.js';\nimport StoreContext from './contexts/Store.js';\n\n// @ts-ignore\nimport { type Instance, initialize, render } from './ink.js';\nimport type { AppState, ReleaseCallback, RetainCallback } from './types.js';\n\nexport default function createApp() {\n let refCount = 0;\n let store = null;\n let inkApp: Instance | null = null;\n\n return {\n retain(fn: RetainCallback): undefined {\n initialize(() => {\n if (++refCount > 1) return fn(store);\n if (store) throw new Error('Not expecting store');\n store = createStore<AppState>()((set) => ({\n processes: [],\n addProcess: (process) => {\n store.nextRenders = store.renders + 1;\n set((state) => ({ processes: [...state.processes, process] }));\n },\n updateProcess: (process) => {\n store.nextRenders = store.renders + 1;\n set((state) => ({ processes: state.processes.map((x) => (x.id === process.id ? process : x)) }));\n },\n }));\n store.nextRenders = 0;\n store.renders = 0;\n store.waiting = [];\n store.onRender = () => {\n store.renders++;\n if (store.renders === store.nextRenders) {\n while (store?.waiting.length) store.waiting.pop()();\n }\n };\n inkApp = render(\n <StoreContext.Provider value={store}>\n <App />\n </StoreContext.Provider>,\n { patchConsole: false }\n );\n return fn(store);\n });\n },\n release(cb: ReleaseCallback): undefined {\n if (--refCount > 0) {\n if (store.renders === store.nextRenders) cb();\n else store.waiting.push(cb);\n return;\n }\n if (!store) throw new Error('Expecting store');\n\n function done() {\n inkApp.unmount();\n inkApp = null;\n store = null;\n process.stdout.write('\\x1b[?25h'); // show cursor\n cb();\n }\n if (store.renders === store.nextRenders) done();\n else store.waiting.push(done);\n },\n };\n}\n"],"names":["createStore","App","StoreContext","initialize","render","createApp","refCount","store","inkApp","retain","fn","Error","set","processes","addProcess","process","nextRenders","renders","state","updateProcess","map","x","id","waiting","onRender","length","pop","Provider","value","patchConsole","release","cb","push","done","unmount","stdout","write"],"mappings":";AAAA,SAASA,WAAW,QAAQ,UAAU;AACtC,OAAOC,SAAS,sBAAsB;AACtC,OAAOC,kBAAkB,sBAAsB;AAE/C,aAAa;AACb,SAAwBC,UAAU,EAAEC,MAAM,QAAQ,WAAW;AAG7D,eAAe,SAASC;IACtB,IAAIC,WAAW;IACf,IAAIC,QAAQ;IACZ,IAAIC,SAA0B;IAE9B,OAAO;QACLC,QAAOC,EAAkB;YACvBP,WAAW;gBACT,IAAI,EAAEG,WAAW,GAAG,OAAOI,GAAGH;gBAC9B,IAAIA,OAAO,MAAM,IAAII,MAAM;gBAC3BJ,QAAQP,cAAwB,CAACY,MAAS,CAAA;wBACxCC,WAAW,EAAE;wBACbC,YAAY,CAACC;4BACXR,MAAMS,WAAW,GAAGT,MAAMU,OAAO,GAAG;4BACpCL,IAAI,CAACM,QAAW,CAAA;oCAAEL,WAAW;2CAAIK,MAAML,SAAS;wCAAEE;qCAAQ;gCAAC,CAAA;wBAC7D;wBACAI,eAAe,CAACJ;4BACdR,MAAMS,WAAW,GAAGT,MAAMU,OAAO,GAAG;4BACpCL,IAAI,CAACM,QAAW,CAAA;oCAAEL,WAAWK,MAAML,SAAS,CAACO,GAAG,CAAC,CAACC,IAAOA,EAAEC,EAAE,KAAKP,SAAQO,EAAE,GAAGP,WAAUM;gCAAI,CAAA;wBAC/F;oBACF,CAAA;gBACAd,MAAMS,WAAW,GAAG;gBACpBT,MAAMU,OAAO,GAAG;gBAChBV,MAAMgB,OAAO,GAAG,EAAE;gBAClBhB,MAAMiB,QAAQ,GAAG;oBACfjB,MAAMU,OAAO;oBACb,IAAIV,MAAMU,OAAO,KAAKV,MAAMS,WAAW,EAAE;wBACvC,MAAOT,kBAAAA,4BAAAA,MAAOgB,OAAO,CAACE,MAAM,CAAElB,MAAMgB,OAAO,CAACG,GAAG;oBACjD;gBACF;gBACAlB,SAASJ,qBACP,KAACF,aAAayB,QAAQ;oBAACC,OAAOrB;8BAC5B,cAAA,KAACN;oBAEH;oBAAE4B,cAAc;gBAAM;gBAExB,OAAOnB,GAAGH;YACZ;QACF;QACAuB,SAAQC,EAAmB;YACzB,IAAI,EAAEzB,WAAW,GAAG;gBAClB,IAAIC,MAAMU,OAAO,KAAKV,MAAMS,WAAW,EAAEe;qBACpCxB,MAAMgB,OAAO,CAACS,IAAI,CAACD;gBACxB;YACF;YACA,IAAI,CAACxB,OAAO,MAAM,IAAII,MAAM;YAE5B,SAASsB;gBACPzB,OAAO0B,OAAO;gBACd1B,SAAS;gBACTD,QAAQ;gBACRQ,QAAQoB,MAAM,CAACC,KAAK,CAAC,cAAc,cAAc;gBACjDL;YACF;YACA,IAAIxB,MAAMU,OAAO,KAAKV,MAAMS,WAAW,EAAEiB;iBACpC1B,MAAMgB,OAAO,CAACS,IAAI,CAACC;QAC1B;IACF;AACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "spawn-term",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.8",
|
|
4
4
|
"description": "Formats spawn with for terminal grouping",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"spawn",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"ansi-colors": "^4.1.3",
|
|
44
44
|
"core-js": "^3.43.0",
|
|
45
|
-
"cross-spawn-cb": "^2.2.
|
|
45
|
+
"cross-spawn-cb": "^2.2.8",
|
|
46
46
|
"lil-uuid": "^0.1.1",
|
|
47
47
|
"on-one": "^0.1.7",
|
|
48
48
|
"queue-cb": "^1.5.2",
|