spawn-term 0.1.34 → 0.1.35

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.
@@ -159,6 +159,7 @@ var Expanded = /*#__PURE__*/ (0, _react.memo)(function Expanded(param) {
159
159
  var Contracted = /*#__PURE__*/ (0, _react.memo)(function Contracted(param) {
160
160
  var item = param.item;
161
161
  var state = item.state, data = item.data;
162
+ var finished = data.length > 0 ? data[data.length - 1].text === null : false;
162
163
  var lines = useLines(data);
163
164
  // remove ansi codes when displaying single lines
164
165
  var errors = (0, _react.useMemo)(function() {
@@ -182,7 +183,7 @@ var Contracted = /*#__PURE__*/ (0, _react.memo)(function Contracted(param) {
182
183
  group: item.group,
183
184
  title: item.title,
184
185
  state: item.state
185
- }), state === 'running' && /*#__PURE__*/ _react.default.createElement(RunningSummary, {
186
+ }), state === 'running' && !finished && /*#__PURE__*/ _react.default.createElement(RunningSummary, {
186
187
  line: summary
187
188
  }), errors.length > 0 && /*#__PURE__*/ _react.default.createElement(Lines, {
188
189
  lines: errors
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node/spawn-term/src/components/ChildProcess.tsx"],"sourcesContent":["import React, { memo, useMemo } from 'react';\nimport { Box, Text } from '../ink.mjs';\nimport ansiRegex from '../lib/ansiRegex';\nimport figures from '../lib/figures';\nimport Spinner from './Spinner';\n\nimport type { ChildProcess as ChildProcessT, Data, State } from '../types';\nimport { DataType } from '../types';\n\nconst REGEX_NEW_LINE = /\\r\\n|[\\n\\v\\f\\r\\x85\\u2028\\u2029]/g;\nconst REGEX_ANSI = ansiRegex();\nconst DEFAULT_SUMMARY = { type: DataType.stdout, text: '' };\n\ntype ItemProps = {\n item: ChildProcessT;\n};\n\n// From: https://github.com/sindresorhus/cli-spinners/blob/00de8fbeee16fa49502fa4f687449f70f2c8ca2c/spinners.json#L2\nconst spinner = {\n interval: 80,\n frames: ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'],\n};\n\nconst ICONS = {\n error: <Text color=\"red\">{figures.cross}</Text>,\n success: <Text color=\"green\">{figures.tick}</Text>,\n running: <Spinner {...spinner} />,\n};\n\ntype HeaderProps = {\n group?: string;\n title: string;\n state: State;\n};\n\nconst Header = memo(\n function Header({ group, title, state }: HeaderProps) {\n const icon = ICONS[state];\n\n return (\n <Box>\n <Box marginRight={1}>{icon}</Box>\n {group && <Text bold>{`${group}${figures.pointer} `}</Text>}\n <Text>{title}</Text>\n </Box>\n );\n },\n (a, b) => a.group === b.group && a.title === b.title && a.state === b.state\n);\n\ntype RunningSummaryProps = {\n line: Data;\n};\n\nconst RunningSummary = memo(function RunningSummary({ line }: RunningSummaryProps) {\n return (\n <Box marginLeft={2}>\n <Text color=\"gray\">{line.text.replace(REGEX_ANSI, '')}</Text>\n </Box>\n );\n});\n\ntype LinesProps = {\n lines: Data[];\n};\n\nconst Lines = memo(function Lines({ lines }: LinesProps) {\n return (\n <Box flexDirection=\"column\" marginLeft={2}>\n {lines.map((line, index) => (\n // biome-ignore lint/suspicious/noArrayIndexKey: <explanation>\n <Box key={index} flexDirection=\"column\">\n {/* @ts-ignore */}\n <ink-text>{line.text}</ink-text>\n </Box>\n ))}\n </Box>\n );\n});\n\nconst useLines = (data: Data[]) =>\n useMemo(() => {\n const finished = data.length > 0 ? data[data.length - 1].text === null : false;\n if (finished) data.pop(); // null at end means done\n const lines = [];\n data.forEach((x) => {\n x.text.split(REGEX_NEW_LINE).forEach((text) => lines.push({ type: x.type, text }));\n });\n if (!finished) lines.pop(); // remove partial lines\n return lines;\n }, [data]) as Data[];\n\nconst Expanded = memo(function Expanded({ item }: ItemProps) {\n const { data } = item;\n const lines = useLines(data);\n\n return (\n <Box flexDirection=\"column\">\n <Header group={item.group} title={item.title} state={item.state} />\n <Lines lines={lines} />\n </Box>\n );\n});\n\nconst Contracted = memo(function Contracted({ item }: ItemProps) {\n const { state, data } = item;\n const lines = useLines(data);\n\n // remove ansi codes when displaying single lines\n const errors = useMemo(() => lines.filter((line) => line.type === DataType.stderr), [lines]);\n const summary = useMemo(() => lines.filter((line) => line.text.length > 0 && errors.indexOf(line) < 0).pop() || DEFAULT_SUMMARY, [lines, errors]);\n\n return (\n <Box flexDirection=\"column\">\n <Header group={item.group} title={item.title} state={item.state} />\n {state === 'running' && <RunningSummary line={summary} />}\n {errors.length > 0 && <Lines lines={errors} />}\n </Box>\n );\n});\n\nexport default memo(function ChildProcess({ item }: ItemProps) {\n const { expanded } = item;\n return expanded ? <Expanded item={item} /> : <Contracted item={item} />;\n});\n"],"names":["REGEX_NEW_LINE","REGEX_ANSI","ansiRegex","DEFAULT_SUMMARY","type","DataType","stdout","text","spinner","interval","frames","ICONS","error","Text","color","figures","cross","success","tick","running","Spinner","Header","memo","group","title","state","icon","Box","marginRight","bold","pointer","a","b","RunningSummary","line","marginLeft","replace","Lines","lines","flexDirection","map","index","key","ink-text","useLines","data","useMemo","finished","length","pop","forEach","x","split","push","Expanded","item","Contracted","errors","filter","stderr","summary","indexOf","ChildProcess","expanded"],"mappings":"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"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node/spawn-term/src/components/ChildProcess.tsx"],"sourcesContent":["import React, { memo, useMemo } from 'react';\nimport { Box, Text } from '../ink.mjs';\nimport ansiRegex from '../lib/ansiRegex';\nimport figures from '../lib/figures';\nimport Spinner from './Spinner';\n\nimport type { ChildProcess as ChildProcessT, Data, State } from '../types';\nimport { DataType } from '../types';\n\nconst REGEX_NEW_LINE = /\\r\\n|[\\n\\v\\f\\r\\x85\\u2028\\u2029]/g;\nconst REGEX_ANSI = ansiRegex();\nconst DEFAULT_SUMMARY = { type: DataType.stdout, text: '' };\n\ntype ItemProps = {\n item: ChildProcessT;\n};\n\n// From: https://github.com/sindresorhus/cli-spinners/blob/00de8fbeee16fa49502fa4f687449f70f2c8ca2c/spinners.json#L2\nconst spinner = {\n interval: 80,\n frames: ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'],\n};\n\nconst ICONS = {\n error: <Text color=\"red\">{figures.cross}</Text>,\n success: <Text color=\"green\">{figures.tick}</Text>,\n running: <Spinner {...spinner} />,\n};\n\ntype HeaderProps = {\n group?: string;\n title: string;\n state: State;\n};\n\nconst Header = memo(\n function Header({ group, title, state }: HeaderProps) {\n const icon = ICONS[state];\n\n return (\n <Box>\n <Box marginRight={1}>{icon}</Box>\n {group && <Text bold>{`${group}${figures.pointer} `}</Text>}\n <Text>{title}</Text>\n </Box>\n );\n },\n (a, b) => a.group === b.group && a.title === b.title && a.state === b.state\n);\n\ntype RunningSummaryProps = {\n line: Data;\n};\n\nconst RunningSummary = memo(function RunningSummary({ line }: RunningSummaryProps) {\n return (\n <Box marginLeft={2}>\n <Text color=\"gray\">{line.text.replace(REGEX_ANSI, '')}</Text>\n </Box>\n );\n});\n\ntype LinesProps = {\n lines: Data[];\n};\n\nconst Lines = memo(function Lines({ lines }: LinesProps) {\n return (\n <Box flexDirection=\"column\" marginLeft={2}>\n {lines.map((line, index) => (\n // biome-ignore lint/suspicious/noArrayIndexKey: <explanation>\n <Box key={index} flexDirection=\"column\">\n {/* @ts-ignore */}\n <ink-text>{line.text}</ink-text>\n </Box>\n ))}\n </Box>\n );\n});\n\nconst useLines = (data: Data[]) =>\n useMemo(() => {\n const finished = data.length > 0 ? data[data.length - 1].text === null : false;\n if (finished) data.pop(); // null at end means done\n const lines = [];\n data.forEach((x) => {\n x.text.split(REGEX_NEW_LINE).forEach((text) => lines.push({ type: x.type, text }));\n });\n if (!finished) lines.pop(); // remove partial lines\n return lines;\n }, [data]) as Data[];\n\nconst Expanded = memo(function Expanded({ item }: ItemProps) {\n const { data } = item;\n const lines = useLines(data);\n\n return (\n <Box flexDirection=\"column\">\n <Header group={item.group} title={item.title} state={item.state} />\n <Lines lines={lines} />\n </Box>\n );\n});\n\nconst Contracted = memo(function Contracted({ item }: ItemProps) {\n const { state, data } = item;\n const finished = data.length > 0 ? data[data.length - 1].text === null : false;\n const lines = useLines(data);\n\n // remove ansi codes when displaying single lines\n const errors = useMemo(() => lines.filter((line) => line.type === DataType.stderr), [lines]);\n const summary = useMemo(() => lines.filter((line) => line.text.length > 0 && errors.indexOf(line) < 0).pop() || DEFAULT_SUMMARY, [lines, errors]);\n\n return (\n <Box flexDirection=\"column\">\n <Header group={item.group} title={item.title} state={item.state} />\n {state === 'running' && !finished && <RunningSummary line={summary} />}\n {errors.length > 0 && <Lines lines={errors} />}\n </Box>\n );\n});\n\nexport default memo(function ChildProcess({ item }: ItemProps) {\n const { expanded } = item;\n return expanded ? <Expanded item={item} /> : <Contracted item={item} />;\n});\n"],"names":["REGEX_NEW_LINE","REGEX_ANSI","ansiRegex","DEFAULT_SUMMARY","type","DataType","stdout","text","spinner","interval","frames","ICONS","error","Text","color","figures","cross","success","tick","running","Spinner","Header","memo","group","title","state","icon","Box","marginRight","bold","pointer","a","b","RunningSummary","line","marginLeft","replace","Lines","lines","flexDirection","map","index","key","ink-text","useLines","data","useMemo","finished","length","pop","forEach","x","split","push","Expanded","item","Contracted","errors","filter","stderr","summary","indexOf","ChildProcess","expanded"],"mappings":";;;;+BA0HA;;;eAAA;;;6DA1HqC;mBACX;gEACJ;8DACF;8DACA;qBAGK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEzB,IAAMA,iBAAiB;AACvB,IAAMC,aAAaC,IAAAA,kBAAS;AAC5B,IAAMC,kBAAkB;IAAEC,MAAMC,eAAQ,CAACC,MAAM;IAAEC,MAAM;AAAG;AAM1D,oHAAoH;AACpH,IAAMC,UAAU;IACdC,UAAU;IACVC,QAAQ;QAAC;QAAK;QAAK;QAAK;QAAK;QAAK;QAAK;QAAK;QAAK;QAAK;KAAI;AAC5D;AAEA,IAAMC,QAAQ;IACZC,qBAAO,6BAACC,SAAI;QAACC,OAAM;OAAOC,gBAAO,CAACC,KAAK;IACvCC,uBAAS,6BAACJ,SAAI;QAACC,OAAM;OAASC,gBAAO,CAACG,IAAI;IAC1CC,uBAAS,6BAACC,gBAAO,EAAKZ;AACxB;AAQA,IAAMa,uBAASC,IAAAA,WAAI,EACjB,SAASD,OAAO,KAAoC;QAAlCE,QAAF,MAAEA,OAAOC,QAAT,MAASA,OAAOC,QAAhB,MAAgBA;IAC9B,IAAMC,OAAOf,KAAK,CAACc,MAAM;IAEzB,qBACE,6BAACE,QAAG,sBACF,6BAACA,QAAG;QAACC,aAAa;OAAIF,OACrBH,uBAAS,6BAACV,SAAI;QAACgB,MAAAA;OAAM,AAAC,GAAUd,OAARQ,OAAwB,OAAhBR,gBAAO,CAACe,OAAO,EAAC,qBACjD,6BAACjB,SAAI,QAAEW;AAGb,GACA,SAACO,GAAGC;WAAMD,EAAER,KAAK,KAAKS,EAAET,KAAK,IAAIQ,EAAEP,KAAK,KAAKQ,EAAER,KAAK,IAAIO,EAAEN,KAAK,KAAKO,EAAEP,KAAK;;AAO7E,IAAMQ,+BAAiBX,IAAAA,WAAI,EAAC,SAASW,eAAe,KAA6B;QAA7B,AAAEC,OAAF,MAAEA;IACpD,qBACE,6BAACP,QAAG;QAACQ,YAAY;qBACf,6BAACtB,SAAI;QAACC,OAAM;OAAQoB,KAAK3B,IAAI,CAAC6B,OAAO,CAACnC,YAAY;AAGxD;AAMA,IAAMoC,sBAAQf,IAAAA,WAAI,EAAC,SAASe,MAAM,KAAqB;QAArB,AAAEC,QAAF,MAAEA;IAClC,qBACE,6BAACX,QAAG;QAACY,eAAc;QAASJ,YAAY;OACrCG,MAAME,GAAG,CAAC,SAACN,MAAMO;eAChB,8DAA8D;sBAC9D,6BAACd,QAAG;YAACe,KAAKD;YAAOF,eAAc;yBAE7B,6BAACI,kBAAUT,KAAK3B,IAAI;;AAK9B;AAEA,IAAMqC,WAAW,SAACC;WAChBC,IAAAA,cAAO,EAAC;QACN,IAAMC,WAAWF,KAAKG,MAAM,GAAG,IAAIH,IAAI,CAACA,KAAKG,MAAM,GAAG,EAAE,CAACzC,IAAI,KAAK,OAAO;QACzE,IAAIwC,UAAUF,KAAKI,GAAG,IAAI,yBAAyB;QACnD,IAAMX,QAAQ,EAAE;QAChBO,KAAKK,OAAO,CAAC,SAACC;YACZA,EAAE5C,IAAI,CAAC6C,KAAK,CAACpD,gBAAgBkD,OAAO,CAAC,SAAC3C;uBAAS+B,MAAMe,IAAI,CAAC;oBAAEjD,MAAM+C,EAAE/C,IAAI;oBAAEG,MAAAA;gBAAK;;QACjF;QACA,IAAI,CAACwC,UAAUT,MAAMW,GAAG,IAAI,uBAAuB;QACnD,OAAOX;IACT,GAAG;QAACO;KAAK;;AAEX,IAAMS,yBAAWhC,IAAAA,WAAI,EAAC,SAASgC,SAAS,KAAmB;QAAnB,AAAEC,OAAF,MAAEA;IACxC,IAAM,AAAEV,OAASU,KAATV;IACR,IAAMP,QAAQM,SAASC;IAEvB,qBACE,6BAAClB,QAAG;QAACY,eAAc;qBACjB,6BAAClB;QAAOE,OAAOgC,KAAKhC,KAAK;QAAEC,OAAO+B,KAAK/B,KAAK;QAAEC,OAAO8B,KAAK9B,KAAK;sBAC/D,6BAACY;QAAMC,OAAOA;;AAGpB;AAEA,IAAMkB,2BAAalC,IAAAA,WAAI,EAAC,SAASkC,WAAW,KAAmB;QAAnB,AAAED,OAAF,MAAEA;IAC5C,IAAQ9B,QAAgB8B,KAAhB9B,OAAOoB,OAASU,KAATV;IACf,IAAME,WAAWF,KAAKG,MAAM,GAAG,IAAIH,IAAI,CAACA,KAAKG,MAAM,GAAG,EAAE,CAACzC,IAAI,KAAK,OAAO;IACzE,IAAM+B,QAAQM,SAASC;IAEvB,iDAAiD;IACjD,IAAMY,SAASX,IAAAA,cAAO,EAAC;eAAMR,MAAMoB,MAAM,CAAC,SAACxB;mBAASA,KAAK9B,IAAI,KAAKC,eAAQ,CAACsD,MAAM;;OAAG;QAACrB;KAAM;IAC3F,IAAMsB,UAAUd,IAAAA,cAAO,EAAC;eAAMR,MAAMoB,MAAM,CAAC,SAACxB;mBAASA,KAAK3B,IAAI,CAACyC,MAAM,GAAG,KAAKS,OAAOI,OAAO,CAAC3B,QAAQ;WAAGe,GAAG,MAAM9C;OAAiB;QAACmC;QAAOmB;KAAO;IAEhJ,qBACE,6BAAC9B,QAAG;QAACY,eAAc;qBACjB,6BAAClB;QAAOE,OAAOgC,KAAKhC,KAAK;QAAEC,OAAO+B,KAAK/B,KAAK;QAAEC,OAAO8B,KAAK9B,KAAK;QAC9DA,UAAU,aAAa,CAACsB,0BAAY,6BAACd;QAAeC,MAAM0B;QAC1DH,OAAOT,MAAM,GAAG,mBAAK,6BAACX;QAAMC,OAAOmB;;AAG1C;IAEA,yBAAenC,IAAAA,WAAI,EAAC,SAASwC,aAAa,KAAmB;QAAnB,AAAEP,OAAF,MAAEA;IAC1C,IAAM,AAAEQ,WAAaR,KAAbQ;IACR,OAAOA,yBAAW,6BAACT;QAASC,MAAMA;uBAAW,6BAACC;QAAWD,MAAMA;;AACjE"}
@@ -90,6 +90,7 @@ const Expanded = /*#__PURE__*/ memo(function Expanded({ item }) {
90
90
  });
91
91
  const Contracted = /*#__PURE__*/ memo(function Contracted({ item }) {
92
92
  const { state, data } = item;
93
+ const finished = data.length > 0 ? data[data.length - 1].text === null : false;
93
94
  const lines = useLines(data);
94
95
  // remove ansi codes when displaying single lines
95
96
  const errors = useMemo(()=>lines.filter((line)=>line.type === DataType.stderr), [
@@ -105,7 +106,7 @@ const Contracted = /*#__PURE__*/ memo(function Contracted({ item }) {
105
106
  group: item.group,
106
107
  title: item.title,
107
108
  state: item.state
108
- }), state === 'running' && /*#__PURE__*/ React.createElement(RunningSummary, {
109
+ }), state === 'running' && !finished && /*#__PURE__*/ React.createElement(RunningSummary, {
109
110
  line: summary
110
111
  }), errors.length > 0 && /*#__PURE__*/ React.createElement(Lines, {
111
112
  lines: errors
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node/spawn-term/src/components/ChildProcess.tsx"],"sourcesContent":["import React, { memo, useMemo } from 'react';\nimport { Box, Text } from '../ink.mjs';\nimport ansiRegex from '../lib/ansiRegex';\nimport figures from '../lib/figures';\nimport Spinner from './Spinner';\n\nimport type { ChildProcess as ChildProcessT, Data, State } from '../types';\nimport { DataType } from '../types';\n\nconst REGEX_NEW_LINE = /\\r\\n|[\\n\\v\\f\\r\\x85\\u2028\\u2029]/g;\nconst REGEX_ANSI = ansiRegex();\nconst DEFAULT_SUMMARY = { type: DataType.stdout, text: '' };\n\ntype ItemProps = {\n item: ChildProcessT;\n};\n\n// From: https://github.com/sindresorhus/cli-spinners/blob/00de8fbeee16fa49502fa4f687449f70f2c8ca2c/spinners.json#L2\nconst spinner = {\n interval: 80,\n frames: ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'],\n};\n\nconst ICONS = {\n error: <Text color=\"red\">{figures.cross}</Text>,\n success: <Text color=\"green\">{figures.tick}</Text>,\n running: <Spinner {...spinner} />,\n};\n\ntype HeaderProps = {\n group?: string;\n title: string;\n state: State;\n};\n\nconst Header = memo(\n function Header({ group, title, state }: HeaderProps) {\n const icon = ICONS[state];\n\n return (\n <Box>\n <Box marginRight={1}>{icon}</Box>\n {group && <Text bold>{`${group}${figures.pointer} `}</Text>}\n <Text>{title}</Text>\n </Box>\n );\n },\n (a, b) => a.group === b.group && a.title === b.title && a.state === b.state\n);\n\ntype RunningSummaryProps = {\n line: Data;\n};\n\nconst RunningSummary = memo(function RunningSummary({ line }: RunningSummaryProps) {\n return (\n <Box marginLeft={2}>\n <Text color=\"gray\">{line.text.replace(REGEX_ANSI, '')}</Text>\n </Box>\n );\n});\n\ntype LinesProps = {\n lines: Data[];\n};\n\nconst Lines = memo(function Lines({ lines }: LinesProps) {\n return (\n <Box flexDirection=\"column\" marginLeft={2}>\n {lines.map((line, index) => (\n // biome-ignore lint/suspicious/noArrayIndexKey: <explanation>\n <Box key={index} flexDirection=\"column\">\n {/* @ts-ignore */}\n <ink-text>{line.text}</ink-text>\n </Box>\n ))}\n </Box>\n );\n});\n\nconst useLines = (data: Data[]) =>\n useMemo(() => {\n const finished = data.length > 0 ? data[data.length - 1].text === null : false;\n if (finished) data.pop(); // null at end means done\n const lines = [];\n data.forEach((x) => {\n x.text.split(REGEX_NEW_LINE).forEach((text) => lines.push({ type: x.type, text }));\n });\n if (!finished) lines.pop(); // remove partial lines\n return lines;\n }, [data]) as Data[];\n\nconst Expanded = memo(function Expanded({ item }: ItemProps) {\n const { data } = item;\n const lines = useLines(data);\n\n return (\n <Box flexDirection=\"column\">\n <Header group={item.group} title={item.title} state={item.state} />\n <Lines lines={lines} />\n </Box>\n );\n});\n\nconst Contracted = memo(function Contracted({ item }: ItemProps) {\n const { state, data } = item;\n const lines = useLines(data);\n\n // remove ansi codes when displaying single lines\n const errors = useMemo(() => lines.filter((line) => line.type === DataType.stderr), [lines]);\n const summary = useMemo(() => lines.filter((line) => line.text.length > 0 && errors.indexOf(line) < 0).pop() || DEFAULT_SUMMARY, [lines, errors]);\n\n return (\n <Box flexDirection=\"column\">\n <Header group={item.group} title={item.title} state={item.state} />\n {state === 'running' && <RunningSummary line={summary} />}\n {errors.length > 0 && <Lines lines={errors} />}\n </Box>\n );\n});\n\nexport default memo(function ChildProcess({ item }: ItemProps) {\n const { expanded } = item;\n return expanded ? <Expanded item={item} /> : <Contracted item={item} />;\n});\n"],"names":["React","memo","useMemo","Box","Text","ansiRegex","figures","Spinner","DataType","REGEX_NEW_LINE","REGEX_ANSI","DEFAULT_SUMMARY","type","stdout","text","spinner","interval","frames","ICONS","error","color","cross","success","tick","running","Header","group","title","state","icon","marginRight","bold","pointer","a","b","RunningSummary","line","marginLeft","replace","Lines","lines","flexDirection","map","index","key","ink-text","useLines","data","finished","length","pop","forEach","x","split","push","Expanded","item","Contracted","errors","filter","stderr","summary","indexOf","ChildProcess","expanded"],"mappings":"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"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node/spawn-term/src/components/ChildProcess.tsx"],"sourcesContent":["import React, { memo, useMemo } from 'react';\nimport { Box, Text } from '../ink.mjs';\nimport ansiRegex from '../lib/ansiRegex';\nimport figures from '../lib/figures';\nimport Spinner from './Spinner';\n\nimport type { ChildProcess as ChildProcessT, Data, State } from '../types';\nimport { DataType } from '../types';\n\nconst REGEX_NEW_LINE = /\\r\\n|[\\n\\v\\f\\r\\x85\\u2028\\u2029]/g;\nconst REGEX_ANSI = ansiRegex();\nconst DEFAULT_SUMMARY = { type: DataType.stdout, text: '' };\n\ntype ItemProps = {\n item: ChildProcessT;\n};\n\n// From: https://github.com/sindresorhus/cli-spinners/blob/00de8fbeee16fa49502fa4f687449f70f2c8ca2c/spinners.json#L2\nconst spinner = {\n interval: 80,\n frames: ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'],\n};\n\nconst ICONS = {\n error: <Text color=\"red\">{figures.cross}</Text>,\n success: <Text color=\"green\">{figures.tick}</Text>,\n running: <Spinner {...spinner} />,\n};\n\ntype HeaderProps = {\n group?: string;\n title: string;\n state: State;\n};\n\nconst Header = memo(\n function Header({ group, title, state }: HeaderProps) {\n const icon = ICONS[state];\n\n return (\n <Box>\n <Box marginRight={1}>{icon}</Box>\n {group && <Text bold>{`${group}${figures.pointer} `}</Text>}\n <Text>{title}</Text>\n </Box>\n );\n },\n (a, b) => a.group === b.group && a.title === b.title && a.state === b.state\n);\n\ntype RunningSummaryProps = {\n line: Data;\n};\n\nconst RunningSummary = memo(function RunningSummary({ line }: RunningSummaryProps) {\n return (\n <Box marginLeft={2}>\n <Text color=\"gray\">{line.text.replace(REGEX_ANSI, '')}</Text>\n </Box>\n );\n});\n\ntype LinesProps = {\n lines: Data[];\n};\n\nconst Lines = memo(function Lines({ lines }: LinesProps) {\n return (\n <Box flexDirection=\"column\" marginLeft={2}>\n {lines.map((line, index) => (\n // biome-ignore lint/suspicious/noArrayIndexKey: <explanation>\n <Box key={index} flexDirection=\"column\">\n {/* @ts-ignore */}\n <ink-text>{line.text}</ink-text>\n </Box>\n ))}\n </Box>\n );\n});\n\nconst useLines = (data: Data[]) =>\n useMemo(() => {\n const finished = data.length > 0 ? data[data.length - 1].text === null : false;\n if (finished) data.pop(); // null at end means done\n const lines = [];\n data.forEach((x) => {\n x.text.split(REGEX_NEW_LINE).forEach((text) => lines.push({ type: x.type, text }));\n });\n if (!finished) lines.pop(); // remove partial lines\n return lines;\n }, [data]) as Data[];\n\nconst Expanded = memo(function Expanded({ item }: ItemProps) {\n const { data } = item;\n const lines = useLines(data);\n\n return (\n <Box flexDirection=\"column\">\n <Header group={item.group} title={item.title} state={item.state} />\n <Lines lines={lines} />\n </Box>\n );\n});\n\nconst Contracted = memo(function Contracted({ item }: ItemProps) {\n const { state, data } = item;\n const finished = data.length > 0 ? data[data.length - 1].text === null : false;\n const lines = useLines(data);\n\n // remove ansi codes when displaying single lines\n const errors = useMemo(() => lines.filter((line) => line.type === DataType.stderr), [lines]);\n const summary = useMemo(() => lines.filter((line) => line.text.length > 0 && errors.indexOf(line) < 0).pop() || DEFAULT_SUMMARY, [lines, errors]);\n\n return (\n <Box flexDirection=\"column\">\n <Header group={item.group} title={item.title} state={item.state} />\n {state === 'running' && !finished && <RunningSummary line={summary} />}\n {errors.length > 0 && <Lines lines={errors} />}\n </Box>\n );\n});\n\nexport default memo(function ChildProcess({ item }: ItemProps) {\n const { expanded } = item;\n return expanded ? <Expanded item={item} /> : <Contracted item={item} />;\n});\n"],"names":["React","memo","useMemo","Box","Text","ansiRegex","figures","Spinner","DataType","REGEX_NEW_LINE","REGEX_ANSI","DEFAULT_SUMMARY","type","stdout","text","spinner","interval","frames","ICONS","error","color","cross","success","tick","running","Header","group","title","state","icon","marginRight","bold","pointer","a","b","RunningSummary","line","marginLeft","replace","Lines","lines","flexDirection","map","index","key","ink-text","useLines","data","finished","length","pop","forEach","x","split","push","Expanded","item","Contracted","errors","filter","stderr","summary","indexOf","ChildProcess","expanded"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spawn-term",
3
- "version": "0.1.34",
3
+ "version": "0.1.35",
4
4
  "description": "Formats spawn with for terminal grouping",
5
5
  "keywords": [
6
6
  "spawn",