catalyst-relay 0.5.7 → 0.5.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/index.js +52 -73
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +52 -73
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -2472,45 +2472,37 @@ async function createTransport(client, config) {
|
|
|
2472
2472
|
return ok(transportId);
|
|
2473
2473
|
}
|
|
2474
2474
|
|
|
2475
|
-
// src/core/adt/transports/
|
|
2476
|
-
|
|
2477
|
-
|
|
2478
|
-
const
|
|
2479
|
-
|
|
2480
|
-
|
|
2481
|
-
|
|
2482
|
-
|
|
2475
|
+
// src/core/adt/transports/parseTransportTasks.ts
|
|
2476
|
+
function parseTransportTasks(doc) {
|
|
2477
|
+
const tasks = [];
|
|
2478
|
+
const taskElements = doc.getElementsByTagName("tm:task");
|
|
2479
|
+
for (let i = 0; i < taskElements.length; i++) {
|
|
2480
|
+
const taskEl = taskElements[i];
|
|
2481
|
+
if (!taskEl) continue;
|
|
2482
|
+
const taskId = taskEl.getAttribute("tm:number");
|
|
2483
|
+
if (!taskId) continue;
|
|
2484
|
+
const objects = [];
|
|
2485
|
+
const objectElements = taskEl.getElementsByTagName("tm:abap_object");
|
|
2486
|
+
for (let j = 0; j < objectElements.length; j++) {
|
|
2487
|
+
const el = objectElements[j];
|
|
2488
|
+
if (!el) continue;
|
|
2489
|
+
const name = el.getAttribute("tm:name");
|
|
2490
|
+
if (!name) continue;
|
|
2491
|
+
objects.push({
|
|
2492
|
+
name,
|
|
2493
|
+
description: el.getAttribute("tm:obj_desc") || el.getAttribute("tm:obj_info") || "",
|
|
2494
|
+
pgmid: el.getAttribute("tm:pgmid") || "",
|
|
2495
|
+
type: el.getAttribute("tm:type") || "",
|
|
2496
|
+
position: el.getAttribute("tm:position") || ""
|
|
2497
|
+
});
|
|
2483
2498
|
}
|
|
2484
|
-
|
|
2485
|
-
if (requestErr) return err(requestErr);
|
|
2486
|
-
if (!response.ok) {
|
|
2487
|
-
const text2 = await response.text();
|
|
2488
|
-
const errorMsg = extractError(text2);
|
|
2489
|
-
return err(new Error(`Failed to read transport ${transportId}: ${errorMsg}`));
|
|
2490
|
-
}
|
|
2491
|
-
const text = await response.text();
|
|
2492
|
-
const [doc, parseErr] = safeParseXml(text);
|
|
2493
|
-
if (parseErr) return err(parseErr);
|
|
2494
|
-
const objects = [];
|
|
2495
|
-
const elements = doc.getElementsByTagName("tm:abap_object");
|
|
2496
|
-
for (let i = 0; i < elements.length; i++) {
|
|
2497
|
-
const el = elements[i];
|
|
2498
|
-
if (!el) continue;
|
|
2499
|
-
const name = el.getAttribute("tm:name");
|
|
2500
|
-
if (!name) continue;
|
|
2501
|
-
objects.push({
|
|
2502
|
-
name,
|
|
2503
|
-
description: el.getAttribute("tm:obj_desc") || el.getAttribute("tm:obj_info") || "",
|
|
2504
|
-
pgmid: el.getAttribute("tm:pgmid") || "",
|
|
2505
|
-
type: el.getAttribute("tm:type") || "",
|
|
2506
|
-
position: el.getAttribute("tm:position") || ""
|
|
2507
|
-
});
|
|
2499
|
+
tasks.push({ taskId, objects });
|
|
2508
2500
|
}
|
|
2509
|
-
return
|
|
2501
|
+
return tasks;
|
|
2510
2502
|
}
|
|
2511
2503
|
|
|
2512
2504
|
// src/core/adt/transports/removeFromTransport.ts
|
|
2513
|
-
var
|
|
2505
|
+
var ACCEPT_HEADER = "application/vnd.sap.adt.transportorganizer.v1+xml";
|
|
2514
2506
|
async function removeTransportEntry(client, transportId, object) {
|
|
2515
2507
|
const body = [
|
|
2516
2508
|
'<?xml version="1.0" encoding="ASCII"?>',
|
|
@@ -2524,7 +2516,7 @@ async function removeTransportEntry(client, transportId, object) {
|
|
|
2524
2516
|
method: "PUT",
|
|
2525
2517
|
path: `/sap/bc/adt/cts/transportrequests/${transportId}`,
|
|
2526
2518
|
headers: {
|
|
2527
|
-
"Accept":
|
|
2519
|
+
"Accept": ACCEPT_HEADER,
|
|
2528
2520
|
"Content-Type": "text/plain"
|
|
2529
2521
|
},
|
|
2530
2522
|
body
|
|
@@ -2538,49 +2530,36 @@ async function removeTransportEntry(client, transportId, object) {
|
|
|
2538
2530
|
return ok(void 0);
|
|
2539
2531
|
}
|
|
2540
2532
|
async function removeFromTransport(client, transportId, objectName) {
|
|
2541
|
-
const [
|
|
2542
|
-
|
|
2543
|
-
|
|
2544
|
-
|
|
2545
|
-
|
|
2533
|
+
const [response, requestErr] = await client.request({
|
|
2534
|
+
method: "GET",
|
|
2535
|
+
path: `/sap/bc/adt/cts/transportrequests/${transportId}`,
|
|
2536
|
+
headers: { "Accept": ACCEPT_HEADER }
|
|
2537
|
+
});
|
|
2538
|
+
if (requestErr) return err(requestErr);
|
|
2539
|
+
if (!response.ok) {
|
|
2540
|
+
const text2 = await response.text();
|
|
2541
|
+
const errorMsg = extractError(text2);
|
|
2542
|
+
return err(new Error(`Failed to read transport ${transportId}: ${errorMsg}`));
|
|
2543
|
+
}
|
|
2544
|
+
const text = await response.text();
|
|
2545
|
+
const [doc, parseErr] = safeParseXml(text);
|
|
2546
|
+
if (parseErr) return err(parseErr);
|
|
2547
|
+
const tasks = parseTransportTasks(doc);
|
|
2548
|
+
for (const task of tasks) {
|
|
2549
|
+
const object = task.objects.find((o) => o.name === objectName);
|
|
2550
|
+
if (!object) continue;
|
|
2551
|
+
return removeTransportEntry(client, task.taskId, object);
|
|
2546
2552
|
}
|
|
2547
|
-
return
|
|
2553
|
+
return err(new Error(`Object '${objectName}' not found on transport ${transportId}`));
|
|
2548
2554
|
}
|
|
2549
2555
|
|
|
2550
2556
|
// src/core/adt/transports/deleteTransport.ts
|
|
2551
|
-
var
|
|
2552
|
-
function parseTransportTasks(doc) {
|
|
2553
|
-
const tasks = [];
|
|
2554
|
-
const taskElements = doc.getElementsByTagName("tm:task");
|
|
2555
|
-
for (let i = 0; i < taskElements.length; i++) {
|
|
2556
|
-
const taskEl = taskElements[i];
|
|
2557
|
-
if (!taskEl) continue;
|
|
2558
|
-
const taskId = taskEl.getAttribute("tm:number");
|
|
2559
|
-
if (!taskId) continue;
|
|
2560
|
-
const objects = [];
|
|
2561
|
-
const objectElements = taskEl.getElementsByTagName("tm:abap_object");
|
|
2562
|
-
for (let j = 0; j < objectElements.length; j++) {
|
|
2563
|
-
const el = objectElements[j];
|
|
2564
|
-
if (!el) continue;
|
|
2565
|
-
const name = el.getAttribute("tm:name");
|
|
2566
|
-
if (!name) continue;
|
|
2567
|
-
objects.push({
|
|
2568
|
-
name,
|
|
2569
|
-
description: el.getAttribute("tm:obj_desc") || el.getAttribute("tm:obj_info") || "",
|
|
2570
|
-
pgmid: el.getAttribute("tm:pgmid") || "",
|
|
2571
|
-
type: el.getAttribute("tm:type") || "",
|
|
2572
|
-
position: el.getAttribute("tm:position") || ""
|
|
2573
|
-
});
|
|
2574
|
-
}
|
|
2575
|
-
tasks.push({ taskId, objects });
|
|
2576
|
-
}
|
|
2577
|
-
return tasks;
|
|
2578
|
-
}
|
|
2557
|
+
var ACCEPT_HEADER2 = "application/vnd.sap.adt.transportorganizer.v1+xml";
|
|
2579
2558
|
async function sortAndCompress(client, taskId) {
|
|
2580
2559
|
const [response, requestErr] = await client.request({
|
|
2581
2560
|
method: "POST",
|
|
2582
2561
|
path: `/sap/bc/adt/cts/transportrequests/${taskId}/sortandcompress`,
|
|
2583
|
-
headers: { "Accept":
|
|
2562
|
+
headers: { "Accept": ACCEPT_HEADER2 }
|
|
2584
2563
|
});
|
|
2585
2564
|
if (requestErr) return err(requestErr);
|
|
2586
2565
|
if (!response.ok) {
|
|
@@ -2594,7 +2573,7 @@ async function deleteRequest(client, id) {
|
|
|
2594
2573
|
const [response, requestErr] = await client.request({
|
|
2595
2574
|
method: "DELETE",
|
|
2596
2575
|
path: `/sap/bc/adt/cts/transportrequests/${id}`,
|
|
2597
|
-
headers: { "Accept":
|
|
2576
|
+
headers: { "Accept": ACCEPT_HEADER2 }
|
|
2598
2577
|
});
|
|
2599
2578
|
if (requestErr) return err(requestErr);
|
|
2600
2579
|
if (!response.ok) {
|
|
@@ -2608,7 +2587,7 @@ async function deleteTransport(client, transportId, removeObjects = false) {
|
|
|
2608
2587
|
const [response, requestErr] = await client.request({
|
|
2609
2588
|
method: "GET",
|
|
2610
2589
|
path: `/sap/bc/adt/cts/transportrequests/${transportId}`,
|
|
2611
|
-
headers: { "Accept":
|
|
2590
|
+
headers: { "Accept": ACCEPT_HEADER2 }
|
|
2612
2591
|
});
|
|
2613
2592
|
if (requestErr) return err(requestErr);
|
|
2614
2593
|
if (!response.ok) {
|
|
@@ -2627,7 +2606,7 @@ async function deleteTransport(client, transportId, removeObjects = false) {
|
|
|
2627
2606
|
const [taskResponse, taskReadErr] = await client.request({
|
|
2628
2607
|
method: "GET",
|
|
2629
2608
|
path: `/sap/bc/adt/cts/transportrequests/${task.taskId}`,
|
|
2630
|
-
headers: { "Accept":
|
|
2609
|
+
headers: { "Accept": ACCEPT_HEADER2 }
|
|
2631
2610
|
});
|
|
2632
2611
|
if (taskReadErr) return err(taskReadErr);
|
|
2633
2612
|
const taskText = await taskResponse.text();
|