@indahash/n8n-nodes-idh-argus-execute 0.1.20 → 0.1.22

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.
@@ -37,7 +37,7 @@ exports.IdhArgusSendApi = void 0;
37
37
  const path = __importStar(require("path"));
38
38
  const n8n_workflow_1 = require("n8n-workflow");
39
39
  const execScript_1 = require("../shared/execScript");
40
- const markdownStream_1 = require("../shared/markdownStream");
40
+ const parseOpenCodeJson_1 = require("../shared/parseOpenCodeJson");
41
41
  class IdhArgusSendApi {
42
42
  constructor() {
43
43
  this.description = {
@@ -120,38 +120,47 @@ class IdhArgusSendApi {
120
120
  default: 'docker.idh.cloud/ai/idh-argus:latest',
121
121
  },
122
122
  {
123
- displayName: 'Options',
124
- name: 'options',
125
- type: 'collection',
126
- default: {},
127
- placeholder: 'Add Option',
123
+ displayName: 'agent',
124
+ name: 'agent',
125
+ type: 'options',
128
126
  options: [
129
- {
130
- displayName: 'Enable Streaming',
131
- name: 'enableStreaming',
132
- type: 'boolean',
133
- default: true,
134
- description: 'Whether this node will stream the response in real-time',
135
- },
136
- {
137
- displayName: 'Thinking',
138
- name: 'thinking',
139
- type: 'boolean',
140
- default: false,
141
- description: 'Whether to enable extended thinking mode in OpenCode',
142
- },
143
- {
144
- displayName: 'Format',
145
- name: 'format',
146
- type: 'options',
147
- options: [
148
- { name: 'Default', value: 'default' },
149
- { name: 'JSON', value: 'json' },
150
- ],
151
- default: 'default',
152
- description: 'Output format for OpenCode',
153
- },
127
+ { name: 'Build', value: 'build' },
128
+ { name: 'Plan', value: 'plan' },
154
129
  ],
130
+ default: 'build',
131
+ description: 'OpenCode agent to use',
132
+ },
133
+ {
134
+ displayName: 'format',
135
+ name: 'format',
136
+ type: 'options',
137
+ options: [
138
+ { name: 'Default', value: 'default' },
139
+ { name: 'JSON', value: 'json' },
140
+ ],
141
+ default: 'default',
142
+ description: 'Output format for OpenCode',
143
+ },
144
+ {
145
+ displayName: 'Enable Streaming',
146
+ name: 'enableStreaming',
147
+ type: 'boolean',
148
+ default: true,
149
+ description: 'Whether this node will stream the response in real-time',
150
+ },
151
+ {
152
+ displayName: 'Thinking',
153
+ name: 'thinking',
154
+ type: 'boolean',
155
+ default: false,
156
+ description: 'Whether to enable extended thinking mode in OpenCode',
157
+ },
158
+ {
159
+ displayName: 'Parse Response',
160
+ name: 'parseResponse',
161
+ type: 'boolean',
162
+ default: false,
163
+ description: 'Whether to parse JSON output from OpenCode and format it as readable markdown. Only applies when Format is set to JSON.',
155
164
  },
156
165
  ],
157
166
  };
@@ -159,15 +168,31 @@ class IdhArgusSendApi {
159
168
  async execute() {
160
169
  const items = this.getInputData();
161
170
  const returnItems = [];
162
- const enableStreaming = this.getNodeParameter('options.enableStreaming', 0, true);
171
+ const enableStreaming = this.getNodeParameter('enableStreaming', 0, true);
163
172
  const isStreamingAvailable = this.isStreaming();
164
173
  this.logger.info(`[IdhArgusSendApi] enableStreaming=${enableStreaming} isStreaming=${isStreamingAvailable}`);
165
174
  for (let i = 0; i < items.length; i++) {
166
175
  const streaming = enableStreaming && isStreamingAvailable;
167
- const streamFormatter = new markdownStream_1.MarkdownStreamFormatter();
176
+ const format = this.getNodeParameter('format', i, 'default');
177
+ const parseResponse = this.getNodeParameter('parseResponse', i, false);
178
+ const shouldParse = parseResponse && format === 'json';
168
179
  try {
169
180
  if (streaming)
170
181
  this.sendChunk('begin', i);
182
+ let onData;
183
+ const parseState = shouldParse ? (0, parseOpenCodeJson_1.createParseState)() : null;
184
+ if (streaming) {
185
+ onData = (chunk) => {
186
+ if (parseState) {
187
+ const md = (0, parseOpenCodeJson_1.processChunk)(chunk, parseState);
188
+ if (md)
189
+ this.sendChunk('item', i, md);
190
+ }
191
+ else {
192
+ this.sendChunk('item', i, chunk);
193
+ }
194
+ };
195
+ }
171
196
  const result = await (0, execScript_1.execScript)(path.join(__dirname, 'idh-argus-send-api'), [
172
197
  '--session-id', this.getNodeParameter('session-id', i),
173
198
  '--model', this.getNodeParameter('model', i),
@@ -177,36 +202,27 @@ class IdhArgusSendApi {
177
202
  '--indahash-base-url', this.getNodeParameter('indahash-base-url', i),
178
203
  '--docker-api-url', this.getNodeParameter('docker-api-url', i),
179
204
  '--image', this.getNodeParameter('image', i),
180
- '--thinking', String(this.getNodeParameter('options.thinking', i, false)),
181
- '--format', this.getNodeParameter('options.format', i, 'default'),
182
- ], this.getNodeParameter('message', i), streaming
183
- ? {
184
- stdout: (chunk) => {
185
- const markdownChunk = streamFormatter.stdout(chunk);
186
- if (markdownChunk)
187
- this.sendChunk('item', i, markdownChunk);
188
- },
189
- stderr: (chunk) => {
190
- const markdownChunk = streamFormatter.stderr(chunk);
191
- if (markdownChunk)
192
- this.sendChunk('item', i, markdownChunk);
193
- },
194
- }
195
- : undefined);
196
- if (streaming) {
197
- const finalChunk = streamFormatter.end();
198
- if (finalChunk)
199
- this.sendChunk('item', i, finalChunk);
205
+ '--thinking', String(this.getNodeParameter('thinking', i, false)),
206
+ '--format', format,
207
+ '--agent', this.getNodeParameter('agent', i, 'build'),
208
+ ], this.getNodeParameter('message', i), onData);
209
+ if (streaming && parseState) {
210
+ const tail = (0, parseOpenCodeJson_1.flushBuffer)(parseState);
211
+ if (tail)
212
+ this.sendChunk('item', i, tail);
213
+ }
214
+ if (streaming)
200
215
  this.sendChunk('end', i);
216
+ const json = {
217
+ exitCode: result.exitCode,
218
+ stdout: result.stdout,
219
+ stderr: result.stderr,
220
+ };
221
+ if (shouldParse && !streaming) {
222
+ json.parsedOutput = (0, parseOpenCodeJson_1.parseFullOutput)(result.stdout);
201
223
  }
202
- const stderrMarkdown = (0, markdownStream_1.toMarkdownCodeBlock)(result.stderr);
203
224
  returnItems.push({
204
- json: {
205
- exitCode: result.exitCode,
206
- stdout: result.stdout,
207
- stderr: stderrMarkdown,
208
- stderrRaw: result.stderr,
209
- },
225
+ json,
210
226
  pairedItem: { item: i },
211
227
  });
212
228
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IdhArgusSendApi.node.js","sourceRoot":"","sources":["../../../nodes/IdhArgusSendApi/IdhArgusSendApi.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IdhArgusSendApi.node.js","sourceRoot":"","sources":["../../../nodes/IdhArgusSendApi/IdhArgusSendApi.node.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ INDAHASH_WORKSPACE_UUID=""
16
16
  INDAHASH_BASE_URL=""
17
17
  THINKING="false"
18
18
  FORMAT="default"
19
+ AGENT="build"
19
20
 
20
21
  while [ "$#" -gt 0 ]; do
21
22
  case "$1" in
@@ -59,6 +60,10 @@ while [ "$#" -gt 0 ]; do
59
60
  FORMAT="${2:?missing value for --format}"
60
61
  shift 2
61
62
  ;;
63
+ --agent)
64
+ AGENT="${2:?missing value for --agent}"
65
+ shift 2
66
+ ;;
62
67
  --help|-h)
63
68
  cat <<'EOF'
64
69
  Usage:
@@ -72,7 +77,8 @@ Usage:
72
77
  --docker-api-url DOCKER_API_URL \
73
78
  [--image IMAGE] \
74
79
  [--thinking BOOL] \
75
- [--format STRING]
80
+ [--format STRING] \
81
+ [--agent STRING]
76
82
  EOF
77
83
  exit 0
78
84
  ;;
@@ -123,7 +129,7 @@ CONTAINER="idh-argus-session-${SAFE_SESSION_ID}"
123
129
  CONTAINER_URL="$DOCKER_API_URL/containers/$CONTAINER"
124
130
 
125
131
  # Check if container exists, create if needed, validate immutable env vars, then stream
126
- { printf '%s\n%s\n%s\n%s\n' "$OPENROUTER_API_KEY" "$MODEL" "$THINKING" "$FORMAT"; cat; } | \
132
+ { printf '%s\n%s\n%s\n%s\n%s\n' "$OPENROUTER_API_KEY" "$MODEL" "$THINKING" "$FORMAT" "$AGENT"; cat; } | \
127
133
  node -e "
128
134
  const http = require('http');
129
135
  const https = require('https');
@@ -37,7 +37,7 @@ exports.IdhArgusSendCli = void 0;
37
37
  const path = __importStar(require("path"));
38
38
  const n8n_workflow_1 = require("n8n-workflow");
39
39
  const execScript_1 = require("../shared/execScript");
40
- const markdownStream_1 = require("../shared/markdownStream");
40
+ const parseOpenCodeJson_1 = require("../shared/parseOpenCodeJson");
41
41
  class IdhArgusSendCli {
42
42
  constructor() {
43
43
  this.description = {
@@ -113,38 +113,47 @@ class IdhArgusSendCli {
113
113
  default: 'docker.idh.cloud/ai/idh-argus:latest',
114
114
  },
115
115
  {
116
- displayName: 'Options',
117
- name: 'options',
118
- type: 'collection',
119
- default: {},
120
- placeholder: 'Add Option',
116
+ displayName: 'agent',
117
+ name: 'agent',
118
+ type: 'options',
121
119
  options: [
122
- {
123
- displayName: 'Enable Streaming',
124
- name: 'enableStreaming',
125
- type: 'boolean',
126
- default: true,
127
- description: 'Whether this node will stream the response in real-time',
128
- },
129
- {
130
- displayName: 'Thinking',
131
- name: 'thinking',
132
- type: 'boolean',
133
- default: false,
134
- description: 'Whether to enable extended thinking mode in OpenCode',
135
- },
136
- {
137
- displayName: 'Format',
138
- name: 'format',
139
- type: 'options',
140
- options: [
141
- { name: 'Default', value: 'default' },
142
- { name: 'JSON', value: 'json' },
143
- ],
144
- default: 'default',
145
- description: 'Output format for OpenCode',
146
- },
120
+ { name: 'Build', value: 'build' },
121
+ { name: 'Plan', value: 'plan' },
147
122
  ],
123
+ default: 'build',
124
+ description: 'OpenCode agent to use',
125
+ },
126
+ {
127
+ displayName: 'format',
128
+ name: 'format',
129
+ type: 'options',
130
+ options: [
131
+ { name: 'Default', value: 'default' },
132
+ { name: 'JSON', value: 'json' },
133
+ ],
134
+ default: 'default',
135
+ description: 'Output format for OpenCode',
136
+ },
137
+ {
138
+ displayName: 'Enable Streaming',
139
+ name: 'enableStreaming',
140
+ type: 'boolean',
141
+ default: true,
142
+ description: 'Whether this node will stream the response in real-time',
143
+ },
144
+ {
145
+ displayName: 'Thinking',
146
+ name: 'thinking',
147
+ type: 'boolean',
148
+ default: false,
149
+ description: 'Whether to enable extended thinking mode in OpenCode',
150
+ },
151
+ {
152
+ displayName: 'Parse Response',
153
+ name: 'parseResponse',
154
+ type: 'boolean',
155
+ default: false,
156
+ description: 'Whether to parse JSON output from OpenCode and format it as readable markdown. Only applies when Format is set to JSON.',
148
157
  },
149
158
  ],
150
159
  };
@@ -152,13 +161,29 @@ class IdhArgusSendCli {
152
161
  async execute() {
153
162
  const items = this.getInputData();
154
163
  const returnItems = [];
155
- const enableStreaming = this.getNodeParameter('options.enableStreaming', 0, true);
164
+ const enableStreaming = this.getNodeParameter('enableStreaming', 0, true);
156
165
  for (let i = 0; i < items.length; i++) {
157
166
  const streaming = enableStreaming && this.isStreaming();
158
- const streamFormatter = new markdownStream_1.MarkdownStreamFormatter();
167
+ const format = this.getNodeParameter('format', i, 'default');
168
+ const parseResponse = this.getNodeParameter('parseResponse', i, false);
169
+ const shouldParse = parseResponse && format === 'json';
159
170
  try {
160
171
  if (streaming)
161
172
  this.sendChunk('begin', i);
173
+ let onData;
174
+ const parseState = shouldParse ? (0, parseOpenCodeJson_1.createParseState)() : null;
175
+ if (streaming) {
176
+ onData = (chunk) => {
177
+ if (parseState) {
178
+ const md = (0, parseOpenCodeJson_1.processChunk)(chunk, parseState);
179
+ if (md)
180
+ this.sendChunk('item', i, md);
181
+ }
182
+ else {
183
+ this.sendChunk('item', i, chunk);
184
+ }
185
+ };
186
+ }
162
187
  const result = await (0, execScript_1.execScript)(path.join(__dirname, 'idh-argus-send-cli'), [
163
188
  '--session-id', this.getNodeParameter('session-id', i),
164
189
  '--model', this.getNodeParameter('model', i),
@@ -167,36 +192,27 @@ class IdhArgusSendCli {
167
192
  '--indahash-workspace-uuid', this.getNodeParameter('indahash-workspace-uuid', i),
168
193
  '--indahash-base-url', this.getNodeParameter('indahash-base-url', i),
169
194
  '--image', this.getNodeParameter('image', i),
170
- '--thinking', String(this.getNodeParameter('options.thinking', i, false)),
171
- '--format', this.getNodeParameter('options.format', i, 'default'),
172
- ], this.getNodeParameter('message', i), streaming
173
- ? {
174
- stdout: (chunk) => {
175
- const markdownChunk = streamFormatter.stdout(chunk);
176
- if (markdownChunk)
177
- this.sendChunk('item', i, markdownChunk);
178
- },
179
- stderr: (chunk) => {
180
- const markdownChunk = streamFormatter.stderr(chunk);
181
- if (markdownChunk)
182
- this.sendChunk('item', i, markdownChunk);
183
- },
184
- }
185
- : undefined);
186
- if (streaming) {
187
- const finalChunk = streamFormatter.end();
188
- if (finalChunk)
189
- this.sendChunk('item', i, finalChunk);
195
+ '--thinking', String(this.getNodeParameter('thinking', i, false)),
196
+ '--format', format,
197
+ '--agent', this.getNodeParameter('agent', i, 'build'),
198
+ ], this.getNodeParameter('message', i), onData);
199
+ if (streaming && parseState) {
200
+ const tail = (0, parseOpenCodeJson_1.flushBuffer)(parseState);
201
+ if (tail)
202
+ this.sendChunk('item', i, tail);
203
+ }
204
+ if (streaming)
190
205
  this.sendChunk('end', i);
206
+ const json = {
207
+ exitCode: result.exitCode,
208
+ stdout: result.stdout,
209
+ stderr: result.stderr,
210
+ };
211
+ if (shouldParse && !streaming) {
212
+ json.parsedOutput = (0, parseOpenCodeJson_1.parseFullOutput)(result.stdout);
191
213
  }
192
- const stderrMarkdown = (0, markdownStream_1.toMarkdownCodeBlock)(result.stderr);
193
214
  returnItems.push({
194
- json: {
195
- exitCode: result.exitCode,
196
- stdout: result.stdout,
197
- stderr: stderrMarkdown,
198
- stderrRaw: result.stderr,
199
- },
215
+ json,
200
216
  pairedItem: { item: i },
201
217
  });
202
218
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IdhArgusSendCli.node.js","sourceRoot":"","sources":["../../../nodes/IdhArgusSendCli/IdhArgusSendCli.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IdhArgusSendCli.node.js","sourceRoot":"","sources":["../../../nodes/IdhArgusSendCli/IdhArgusSendCli.node.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ INDAHASH_WORKSPACE_UUID=""
10
10
  INDAHASH_BASE_URL=""
11
11
  THINKING="false"
12
12
  FORMAT="default"
13
+ AGENT="build"
13
14
 
14
15
  while [ "$#" -gt 0 ]; do
15
16
  case "$1" in
@@ -49,6 +50,10 @@ while [ "$#" -gt 0 ]; do
49
50
  FORMAT="${2:?missing value for --format}"
50
51
  shift 2
51
52
  ;;
53
+ --agent)
54
+ AGENT="${2:?missing value for --agent}"
55
+ shift 2
56
+ ;;
52
57
  --help|-h)
53
58
  cat <<'EOF'
54
59
  Usage:
@@ -61,7 +66,8 @@ Usage:
61
66
  --model MODEL \
62
67
  [--image IMAGE] \
63
68
  [--thinking BOOL] \
64
- [--format STRING]
69
+ [--format STRING] \
70
+ [--agent STRING]
65
71
  EOF
66
72
  exit 0
67
73
  ;;
@@ -136,4 +142,4 @@ else
136
142
  fi
137
143
  fi
138
144
 
139
- { printf '%s\n%s\n%s\n%s\n' "$OPENROUTER_API_KEY" "$MODEL" "$THINKING" "$FORMAT"; cat; } | docker start -a -i "$CONTAINER"
145
+ { printf '%s\n%s\n%s\n%s\n%s\n' "$OPENROUTER_API_KEY" "$MODEL" "$THINKING" "$FORMAT" "$AGENT"; cat; } | docker start -a -i "$CONTAINER"
@@ -3,8 +3,4 @@ export interface ScriptResult {
3
3
  stdout: string;
4
4
  stderr: string;
5
5
  }
6
- export interface ScriptStreamHandlers {
7
- stdout?: (chunk: string) => void;
8
- stderr?: (chunk: string) => void;
9
- }
10
- export declare function execScript(scriptPath: string, args: string[], stdinData: string, onData?: ScriptStreamHandlers): Promise<ScriptResult>;
6
+ export declare function execScript(scriptPath: string, args: string[], stdinData: string, onData?: (chunk: string) => void): Promise<ScriptResult>;
@@ -2,30 +2,27 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.execScript = execScript;
4
4
  const child_process_1 = require("child_process");
5
- const markdownStream_1 = require("./markdownStream");
6
5
  function execScript(scriptPath, args, stdinData, onData) {
7
6
  return new Promise((resolve, reject) => {
8
7
  const proc = (0, child_process_1.spawn)('sh', [scriptPath, ...args]);
9
8
  let stdout = '';
10
9
  let stderr = '';
11
10
  proc.stdout.on('data', (data) => {
12
- var _a;
13
11
  const chunk = data.toString();
14
12
  stdout += chunk;
15
- (_a = onData === null || onData === void 0 ? void 0 : onData.stdout) === null || _a === void 0 ? void 0 : _a.call(onData, chunk);
13
+ onData === null || onData === void 0 ? void 0 : onData(chunk);
16
14
  });
17
15
  proc.stderr.on('data', (data) => {
18
- var _a;
19
16
  const chunk = data.toString();
20
17
  stderr += chunk;
21
- (_a = onData === null || onData === void 0 ? void 0 : onData.stderr) === null || _a === void 0 ? void 0 : _a.call(onData, chunk);
18
+ onData === null || onData === void 0 ? void 0 : onData(chunk);
22
19
  });
23
20
  proc.on('error', reject);
24
21
  proc.on('close', (code) => {
25
22
  resolve({
26
23
  exitCode: code !== null && code !== void 0 ? code : 1,
27
- stdout: (0, markdownStream_1.stripAnsi)(stdout).trim(),
28
- stderr: (0, markdownStream_1.stripAnsi)(stderr).trim(),
24
+ stdout: stdout.trim(),
25
+ stderr: stderr.trim(),
29
26
  });
30
27
  });
31
28
  if (proc.stdin) {
@@ -1 +1 @@
1
- {"version":3,"file":"execScript.js","sourceRoot":"","sources":["../../../nodes/shared/execScript.ts"],"names":[],"mappings":";;AAcA,gCAkCC;AAhDD,iDAAsC;AACtC,qDAA6C;AAa7C,SAAgB,UAAU,CAAC,UAAkB,EAAE,IAAc,EAAE,SAAiB,EAAE,MAA6B;IAC9G,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,IAAI,EAAE,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;QAEhD,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC;YAChB,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,uDAAG,KAAK,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC;YAChB,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,uDAAG,KAAK,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEzB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAmB,EAAE,EAAE;YACxC,OAAO,CAAC;gBACP,QAAQ,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,CAAC;gBACnB,MAAM,EAAE,IAAA,0BAAS,EAAC,MAAM,CAAC,CAAC,IAAI,EAAE;gBAChC,MAAM,EAAE,IAAA,0BAAS,EAAC,MAAM,CAAC,CAAC,IAAI,EAAE;aAChC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"execScript.js","sourceRoot":"","sources":["../../../nodes/shared/execScript.ts"],"names":[],"mappings":";;AAQA,gCAkCC;AA1CD,iDAAsC;AAQtC,SAAgB,UAAU,CAAC,UAAkB,EAAE,IAAc,EAAE,SAAiB,EAAE,MAAgC;IACjH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,IAAI,EAAE,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;QAEhD,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC;YAChB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,KAAK,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC;YAChB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,KAAK,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEzB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAmB,EAAE,EAAE;YACxC,OAAO,CAAC;gBACP,QAAQ,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,CAAC;gBACnB,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;gBACrB,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;aACrB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ export interface ParseState {
2
+ buffer: string;
3
+ }
4
+ export declare function createParseState(): ParseState;
5
+ export declare function processChunk(chunk: string, state: ParseState): string;
6
+ export declare function flushBuffer(state: ParseState): string;
7
+ export declare function parseFullOutput(output: string): string;