Skip to content

Commit fb85e14

Browse files
committed
refactor: move combineAbortSignals to dbtIntegration module
1 parent 7154667 commit fb85e14

File tree

2 files changed

+31
-32
lines changed

2 files changed

+31
-32
lines changed

src/dbt_integration/dbtIntegration.ts

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,37 @@ import { DBTConfiguration } from "./configuration";
1313
import path from "path";
1414
import { parse } from "yaml";
1515
import * as crypto from "crypto";
16-
import { combineAbortSignals } from "../utils";
16+
17+
function combineAbortSignals(
18+
...signals: (AbortSignal | undefined)[]
19+
): AbortSignal | undefined {
20+
// Filter out undefined signals
21+
const validSignals = signals.filter(
22+
(signal): signal is AbortSignal => signal !== undefined,
23+
);
24+
25+
if (validSignals.length === 0) {
26+
return undefined;
27+
}
28+
29+
if (validSignals.length === 1) {
30+
return validSignals[0];
31+
}
32+
33+
// Create a combined signal if multiple signals are provided
34+
const controller = new AbortController();
35+
const combinedSignal = controller.signal;
36+
37+
validSignals.forEach((signal) => {
38+
if (signal.aborted) {
39+
controller.abort();
40+
} else {
41+
signal.addEventListener("abort", () => controller.abort());
42+
}
43+
});
44+
45+
return combinedSignal;
46+
}
1747

1848
export const DBT_PROJECT_FILE = "dbt_project.yml";
1949
export const MANIFEST_FILE = "manifest.json";

src/utils.ts

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -429,37 +429,6 @@ export function removeProtocol(input: string): string {
429429
return input.replace(/^[^:]+:\/\//, "");
430430
}
431431

432-
export function combineAbortSignals(
433-
...signals: (AbortSignal | undefined)[]
434-
): AbortSignal | undefined {
435-
// Filter out undefined signals
436-
const validSignals = signals.filter(
437-
(signal): signal is AbortSignal => signal !== undefined,
438-
);
439-
440-
if (validSignals.length === 0) {
441-
return undefined;
442-
}
443-
444-
if (validSignals.length === 1) {
445-
return validSignals[0];
446-
}
447-
448-
// Create a combined signal if multiple signals are provided
449-
const controller = new AbortController();
450-
const combinedSignal = controller.signal;
451-
452-
validSignals.forEach((signal) => {
453-
if (signal.aborted) {
454-
controller.abort();
455-
} else {
456-
signal.addEventListener("abort", () => controller.abort());
457-
}
458-
});
459-
460-
return combinedSignal;
461-
}
462-
463432
export function getDepthColor(depth: number): string {
464433
const mediumDepthThreshold = workspace
465434
.getConfiguration("dbt")

0 commit comments

Comments
 (0)