/ src / components / tasks / ShellProgress.tsx
ShellProgress.tsx
 1  import { c as _c } from "react/compiler-runtime";
 2  import type { ReactNode } from 'react';
 3  import React from 'react';
 4  import { Text } from 'src/ink.js';
 5  import type { TaskStatus } from 'src/Task.js';
 6  import type { LocalShellTaskState } from 'src/tasks/LocalShellTask/guards.js';
 7  import type { DeepImmutable } from 'src/types/utils.js';
 8  type TaskStatusTextProps = {
 9    status: TaskStatus;
10    label?: string;
11    suffix?: string;
12  };
13  export function TaskStatusText(t0) {
14    const $ = _c(4);
15    const {
16      status,
17      label,
18      suffix
19    } = t0;
20    const displayLabel = label ?? status;
21    const color = status === "completed" ? "success" : status === "failed" ? "error" : status === "killed" ? "warning" : undefined;
22    let t1;
23    if ($[0] !== color || $[1] !== displayLabel || $[2] !== suffix) {
24      t1 = <Text color={color} dimColor={true}>({displayLabel}{suffix})</Text>;
25      $[0] = color;
26      $[1] = displayLabel;
27      $[2] = suffix;
28      $[3] = t1;
29    } else {
30      t1 = $[3];
31    }
32    return t1;
33  }
34  export function ShellProgress(t0) {
35    const $ = _c(4);
36    const {
37      shell
38    } = t0;
39    switch (shell.status) {
40      case "completed":
41        {
42          let t1;
43          if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
44            t1 = <TaskStatusText status="completed" label="done" />;
45            $[0] = t1;
46          } else {
47            t1 = $[0];
48          }
49          return t1;
50        }
51      case "failed":
52        {
53          let t1;
54          if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
55            t1 = <TaskStatusText status="failed" label="error" />;
56            $[1] = t1;
57          } else {
58            t1 = $[1];
59          }
60          return t1;
61        }
62      case "killed":
63        {
64          let t1;
65          if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
66            t1 = <TaskStatusText status="killed" label="stopped" />;
67            $[2] = t1;
68          } else {
69            t1 = $[2];
70          }
71          return t1;
72        }
73      case "running":
74      case "pending":
75        {
76          let t1;
77          if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
78            t1 = <TaskStatusText status="running" />;
79            $[3] = t1;
80          } else {
81            t1 = $[3];
82          }
83          return t1;
84        }
85    }
86  }
87  //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdE5vZGUiLCJSZWFjdCIsIlRleHQiLCJUYXNrU3RhdHVzIiwiTG9jYWxTaGVsbFRhc2tTdGF0ZSIsIkRlZXBJbW11dGFibGUiLCJUYXNrU3RhdHVzVGV4dFByb3BzIiwic3RhdHVzIiwibGFiZWwiLCJzdWZmaXgiLCJUYXNrU3RhdHVzVGV4dCIsInQwIiwiJCIsIl9jIiwiZGlzcGxheUxhYmVsIiwiY29sb3IiLCJ1bmRlZmluZWQiLCJ0MSIsIlNoZWxsUHJvZ3Jlc3MiLCJzaGVsbCIsIlN5bWJvbCIsImZvciJdLCJzb3VyY2VzIjpbIlNoZWxsUHJvZ3Jlc3MudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnc3JjL2luay5qcydcbmltcG9ydCB0eXBlIHsgVGFza1N0YXR1cyB9IGZyb20gJ3NyYy9UYXNrLmpzJ1xuaW1wb3J0IHR5cGUgeyBMb2NhbFNoZWxsVGFza1N0YXRlIH0gZnJvbSAnc3JjL3Rhc2tzL0xvY2FsU2hlbGxUYXNrL2d1YXJkcy5qcydcbmltcG9ydCB0eXBlIHsgRGVlcEltbXV0YWJsZSB9IGZyb20gJ3NyYy90eXBlcy91dGlscy5qcydcblxudHlwZSBUYXNrU3RhdHVzVGV4dFByb3BzID0ge1xuICBzdGF0dXM6IFRhc2tTdGF0dXNcbiAgbGFiZWw/OiBzdHJpbmdcbiAgc3VmZml4Pzogc3RyaW5nXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBUYXNrU3RhdHVzVGV4dCh7XG4gIHN0YXR1cyxcbiAgbGFiZWwsXG4gIHN1ZmZpeCxcbn06IFRhc2tTdGF0dXNUZXh0UHJvcHMpOiBSZWFjdE5vZGUge1xuICBjb25zdCBkaXNwbGF5TGFiZWwgPSBsYWJlbCA/PyBzdGF0dXNcbiAgY29uc3QgY29sb3IgPVxuICAgIHN0YXR1cyA9PT0gJ2NvbXBsZXRlZCdcbiAgICAgID8gJ3N1Y2Nlc3MnXG4gICAgICA6IHN0YXR1cyA9PT0gJ2ZhaWxlZCdcbiAgICAgICAgPyAnZXJyb3InXG4gICAgICAgIDogc3RhdHVzID09PSAna2lsbGVkJ1xuICAgICAgICAgID8gJ3dhcm5pbmcnXG4gICAgICAgICAgOiB1bmRlZmluZWRcbiAgcmV0dXJuIChcbiAgICA8VGV4dCBjb2xvcj17Y29sb3J9IGRpbUNvbG9yPlxuICAgICAgKHtkaXNwbGF5TGFiZWx9XG4gICAgICB7c3VmZml4fSlcbiAgICA8L1RleHQ+XG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFNoZWxsUHJvZ3Jlc3Moe1xuICBzaGVsbCxcbn06IHtcbiAgc2hlbGw6IERlZXBJbW11dGFibGU8TG9jYWxTaGVsbFRhc2tTdGF0ZT5cbn0pOiBSZWFjdE5vZGUge1xuICBzd2l0Y2ggKHNoZWxsLnN0YXR1cykge1xuICAgIGNhc2UgJ2NvbXBsZXRlZCc6XG4gICAgICByZXR1cm4gPFRhc2tTdGF0dXNUZXh0IHN0YXR1cz1cImNvbXBsZXRlZFwiIGxhYmVsPVwiZG9uZVwiIC8+XG4gICAgY2FzZSAnZmFpbGVkJzpcbiAgICAgIHJldHVybiA8VGFza1N0YXR1c1RleHQgc3RhdHVzPVwiZmFpbGVkXCIgbGFiZWw9XCJlcnJvclwiIC8+XG4gICAgY2FzZSAna2lsbGVkJzpcbiAgICAgIHJldHVybiA8VGFza1N0YXR1c1RleHQgc3RhdHVzPVwia2lsbGVkXCIgbGFiZWw9XCJzdG9wcGVkXCIgLz5cbiAgICBjYXNlICdydW5uaW5nJzpcbiAgICBjYXNlICdwZW5kaW5nJzpcbiAgICAgIHJldHVybiA8VGFza1N0YXR1c1RleHQgc3RhdHVzPVwicnVubmluZ1wiIC8+XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLGNBQWNBLFNBQVMsUUFBUSxPQUFPO0FBQ3RDLE9BQU9DLEtBQUssTUFBTSxPQUFPO0FBQ3pCLFNBQVNDLElBQUksUUFBUSxZQUFZO0FBQ2pDLGNBQWNDLFVBQVUsUUFBUSxhQUFhO0FBQzdDLGNBQWNDLG1CQUFtQixRQUFRLG9DQUFvQztBQUM3RSxjQUFjQyxhQUFhLFFBQVEsb0JBQW9CO0FBRXZELEtBQUtDLG1CQUFtQixHQUFHO0VBQ3pCQyxNQUFNLEVBQUVKLFVBQVU7RUFDbEJLLEtBQUssQ0FBQyxFQUFFLE1BQU07RUFDZEMsTUFBTSxDQUFDLEVBQUUsTUFBTTtBQUNqQixDQUFDO0FBRUQsT0FBTyxTQUFBQyxlQUFBQyxFQUFBO0VBQUEsTUFBQUMsQ0FBQSxHQUFBQyxFQUFBO0VBQXdCO0lBQUFOLE1BQUE7SUFBQUMsS0FBQTtJQUFBQztFQUFBLElBQUFFLEVBSVQ7RUFDcEIsTUFBQUcsWUFBQSxHQUFxQk4sS0FBZSxJQUFmRCxNQUFlO0VBQ3BDLE1BQUFRLEtBQUEsR0FDRVIsTUFBTSxLQUFLLFdBTU0sR0FOakIsU0FNaUIsR0FKYkEsTUFBTSxLQUFLLFFBSUUsR0FKYixPQUlhLEdBRlhBLE1BQU0sS0FBSyxRQUVBLEdBRlgsU0FFVyxHQUZYUyxTQUVXO0VBQUEsSUFBQUMsRUFBQTtFQUFBLElBQUFMLENBQUEsUUFBQUcsS0FBQSxJQUFBSCxDQUFBLFFBQUFFLFlBQUEsSUFBQUYsQ0FBQSxRQUFBSCxNQUFBO0lBRWpCUSxFQUFBLElBQUMsSUFBSSxDQUFRRixLQUFLLENBQUxBLE1BQUksQ0FBQyxDQUFFLFFBQVEsQ0FBUixLQUFPLENBQUMsQ0FBQyxDQUN6QkQsYUFBVyxDQUNaTCxPQUFLLENBQUUsQ0FDVixFQUhDLElBQUksQ0FHRTtJQUFBRyxDQUFBLE1BQUFHLEtBQUE7SUFBQUgsQ0FBQSxNQUFBRSxZQUFBO0lBQUFGLENBQUEsTUFBQUgsTUFBQTtJQUFBRyxDQUFBLE1BQUFLLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFMLENBQUE7RUFBQTtFQUFBLE9BSFBLLEVBR087QUFBQTtBQUlYLE9BQU8sU0FBQUMsY0FBQVAsRUFBQTtFQUFBLE1BQUFDLENBQUEsR0FBQUMsRUFBQTtFQUF1QjtJQUFBTTtFQUFBLElBQUFSLEVBSTdCO0VBQ0MsUUFBUVEsS0FBSyxDQUFBWixNQUFPO0lBQUEsS0FDYixXQUFXO01BQUE7UUFBQSxJQUFBVSxFQUFBO1FBQUEsSUFBQUwsQ0FBQSxRQUFBUSxNQUFBLENBQUFDLEdBQUE7VUFDUEosRUFBQSxJQUFDLGNBQWMsQ0FBUSxNQUFXLENBQVgsV0FBVyxDQUFPLEtBQU0sQ0FBTixNQUFNLEdBQUc7VUFBQUwsQ0FBQSxNQUFBSyxFQUFBO1FBQUE7VUFBQUEsRUFBQSxHQUFBTCxDQUFBO1FBQUE7UUFBQSxPQUFsREssRUFBa0Q7TUFBQTtJQUFBLEtBQ3RELFFBQVE7TUFBQTtRQUFBLElBQUFBLEVBQUE7UUFBQSxJQUFBTCxDQUFBLFFBQUFRLE1BQUEsQ0FBQUMsR0FBQTtVQUNKSixFQUFBLElBQUMsY0FBYyxDQUFRLE1BQVEsQ0FBUixRQUFRLENBQU8sS0FBTyxDQUFQLE9BQU8sR0FBRztVQUFBTCxDQUFBLE1BQUFLLEVBQUE7UUFBQTtVQUFBQSxFQUFBLEdBQUFMLENBQUE7UUFBQTtRQUFBLE9BQWhESyxFQUFnRDtNQUFBO0lBQUEsS0FDcEQsUUFBUTtNQUFBO1FBQUEsSUFBQUEsRUFBQTtRQUFBLElBQUFMLENBQUEsUUFBQVEsTUFBQSxDQUFBQyxHQUFBO1VBQ0pKLEVBQUEsSUFBQyxjQUFjLENBQVEsTUFBUSxDQUFSLFFBQVEsQ0FBTyxLQUFTLENBQVQsU0FBUyxHQUFHO1VBQUFMLENBQUEsTUFBQUssRUFBQTtRQUFBO1VBQUFBLEVBQUEsR0FBQUwsQ0FBQTtRQUFBO1FBQUEsT0FBbERLLEVBQWtEO01BQUE7SUFBQSxLQUN0RCxTQUFTO0lBQUEsS0FDVCxTQUFTO01BQUE7UUFBQSxJQUFBQSxFQUFBO1FBQUEsSUFBQUwsQ0FBQSxRQUFBUSxNQUFBLENBQUFDLEdBQUE7VUFDTEosRUFBQSxJQUFDLGNBQWMsQ0FBUSxNQUFTLENBQVQsU0FBUyxHQUFHO1VBQUFMLENBQUEsTUFBQUssRUFBQTtRQUFBO1VBQUFBLEVBQUEsR0FBQUwsQ0FBQTtRQUFBO1FBQUEsT0FBbkNLLEVBQW1DO01BQUE7RUFDOUM7QUFBQyIsImlnbm9yZUxpc3QiOltdfQ==