From 9aa6c73df0817c6e1fb2381887088fad777334d4 Mon Sep 17 00:00:00 2001 From: fraxken Date: Tue, 2 Dec 2025 14:22:50 +0100 Subject: [PATCH] refactor(scanner/extractors): revamp imports to ensure web compatibility --- .changeset/bumpy-nails-call.md | 5 +++++ workspaces/scanner/src/extractors/payload.ts | 18 +++++++++++------- .../extractors/probes/FlagsExtractor.class.ts | 2 +- 3 files changed, 17 insertions(+), 8 deletions(-) create mode 100644 .changeset/bumpy-nails-call.md diff --git a/.changeset/bumpy-nails-call.md b/.changeset/bumpy-nails-call.md new file mode 100644 index 00000000..890d974a --- /dev/null +++ b/.changeset/bumpy-nails-call.md @@ -0,0 +1,5 @@ +--- +"@nodesecure/scanner": minor +--- + +Refactor extractors imports to ensure web compatibility diff --git a/workspaces/scanner/src/extractors/payload.ts b/workspaces/scanner/src/extractors/payload.ts index 00379dc8..1561faa4 100644 --- a/workspaces/scanner/src/extractors/payload.ts +++ b/workspaces/scanner/src/extractors/payload.ts @@ -4,8 +4,12 @@ import type { Simplify } from "type-fest"; import deepmerge from "@fastify/deepmerge"; // Import Internal Dependencies -import * as Scanner from "../types.js"; -import { isNodesecurePayload } from "../utils/index.js"; +import type { + Dependency, + DependencyVersion, + Payload as NodesecurePayload +} from "../types.js"; +import { isNodesecurePayload } from "../utils/isNodesecurePayload.js"; // CONSTANTS const kFastMerge = deepmerge({ all: true }); @@ -25,13 +29,13 @@ export type MergedExtractProbeResult< export type ProbeExtractorLevel = "packument" | "manifest"; export type ProbeExtractorManifestParent = { name: string; - dependency: Scanner.Dependency; + dependency: Dependency; }; -export type PackumentProbeNextCallback = (name: string, dependency: Scanner.Dependency) => void; +export type PackumentProbeNextCallback = (name: string, dependency: Dependency) => void; export type ManifestProbeNextCallback = ( spec: string, - dependencyVersion: Scanner.DependencyVersion, + dependencyVersion: DependencyVersion, parent: ProbeExtractorManifestParent) => void; export interface ProbeExtractor { @@ -51,12 +55,12 @@ export interface ManifestProbeExtractor extends ProbeExtractor { } export class Payload[]> extends EventTarget { - private dependencies: Scanner.Payload["dependencies"]; + private dependencies: NodesecurePayload["dependencies"]; private probes: Record; private cachedResult: ExtractProbeResult; constructor( - data: Scanner.Payload | Scanner.Payload["dependencies"], + data: NodesecurePayload | NodesecurePayload["dependencies"], probes: [...T] ) { super(); diff --git a/workspaces/scanner/src/extractors/probes/FlagsExtractor.class.ts b/workspaces/scanner/src/extractors/probes/FlagsExtractor.class.ts index d153f0a4..1895109a 100644 --- a/workspaces/scanner/src/extractors/probes/FlagsExtractor.class.ts +++ b/workspaces/scanner/src/extractors/probes/FlagsExtractor.class.ts @@ -1,6 +1,6 @@ // Import Third-party Dependencies import FrequencySet from "frequency-set"; -import { getFlags } from "@nodesecure/flags"; +import { getFlags } from "@nodesecure/flags/web"; // Import Internal Dependencies import type {