|
10 | 10 | use Illuminate\Support\Facades\Http; |
11 | 11 | use Illuminate\Support\Facades\Log; |
12 | 12 | use ProcessMaker\Events\ScriptResponseEvent; |
| 13 | +use ProcessMaker\Exception\ScriptException; |
13 | 14 | use ProcessMaker\Jobs\CompleteActivity; |
14 | 15 | use ProcessMaker\Models\Process as Definitions; |
15 | 16 | use ProcessMaker\Models\ProcessRequest; |
@@ -280,43 +281,19 @@ private function formatPreviewResponse(array $response): array |
280 | 281 | */ |
281 | 282 | private function formatPreviewOutput(array $response): array |
282 | 283 | { |
283 | | - // For successful responses, return just the output array |
| 284 | + $output = $response; |
284 | 285 | if (($response['status'] ?? '') === 'success') { |
285 | | - return [ |
286 | | - 'output' => $response['output'], |
| 286 | + $output = ['output' => $response['output']]; |
| 287 | + } elseif ($response['status'] === 'error') { |
| 288 | + $output = [ |
| 289 | + 'exception' => $response['exception'] ?? ScriptException::class, |
| 290 | + 'message' => $response['error'], |
287 | 291 | ]; |
288 | 292 | } |
289 | 293 |
|
290 | | - // For error responses, include error details |
291 | | - $output = $response; |
292 | | - |
293 | | - if (($response['status'] ?? '') === 'error') { |
294 | | - $output['exception'] = $this->extractErrorDetails($response); |
295 | | - $output['status'] = 'error'; |
296 | | - } |
297 | | - |
298 | 294 | return $output; |
299 | 295 | } |
300 | 296 |
|
301 | | - /** |
302 | | - * Extract error details from response |
303 | | - * |
304 | | - * @param array $response |
305 | | - * @return string |
306 | | - */ |
307 | | - private function extractErrorDetails(array $response): string |
308 | | - { |
309 | | - if (isset($response['output']['error'])) { |
310 | | - return $response['output']['error']; |
311 | | - } |
312 | | - |
313 | | - if (isset($response['message'])) { |
314 | | - return $response['message']; |
315 | | - } |
316 | | - |
317 | | - return 'Unknown error occurred'; |
318 | | - } |
319 | | - |
320 | 297 | public function getInstanceUuid(): string |
321 | 298 | { |
322 | 299 | return Uuid::uuid5( |
|
0 commit comments