{
  "version": 3,
  "sources": ["../Source/Npm/Index.Effect.ts", "../Source/Npm/Npm.Effect.ts", "../Source/Npm/Npm.Effect.Internal.ts", "../Source/Effect/Platform/Platform.ts"],
  "sourcesContent": ["/**\n * @file      Index.Effect.ts\n * @author    Gage Sorrell <gage@sorrell.sh>\n * @copyright (c) 2026 Gage Sorrell\n * @license   MIT\n */\nexport * from \"./Npm.Effect.ts\";\nexport * from \"./Npm.Effect.Types.ts\";\n", "/**\n * @file      Npm.Effect.ts\n * @author    Gage Sorrell <gage@sorrell.sh>\n * @copyright (c) 2026 Gage Sorrell\n * @license   MIT\n */\nimport * as Platform from \"@effect/platform\";\nimport { BadArgument, SystemError } from \"@effect/platform/Error\";\nimport type { EGetDependencies, EGetDependencyPackage, EGetNodeModulesPath, EGetPackageJson, EGetPackageRootDirectory, PackageDependency } from \"./Npm.Effect.Types.ts\";\nimport { Array, Effect, pipe, Predicate, Record, Schema } from \"effect\";\nimport { FindNearestNodeModulesDirectory, FindNearestPackageDirectory, GetPathType } from \"./Npm.Effect.Internal.ts\";\nimport type { IDependencyMap, IPackageJson } from \"package-json-type\";\nimport { SearchExhaustedError } from \"../Effect/Platform/Platform.ts\";\nimport process from \"process\";\n/**\n * Get the `package.json` of the Node.js project in which the\n * given path, or the current working directory, resides.\n *\n * @param SearchStart - The given path from which to look for a root directory.\n *\n * @returns {EGetPackageJson} An Effect that succeeds with the parsed `package.json`, or fails\n * with {@link RootDirectoryNotFoundError} or {@link PackageJsonParseError}.\n *\n * @example\n * Suppose `process.cwd() === \"./MyPackage\"`,\n * ```typescript\n * Effect.gen(function* ()\n * {\n *     const PackageJson: IPackageJson = yield* GetPackageJson();\n *     // `PackageJson` <- *The parsed `package.json` of `MyPackage`.*\n * }\n * ```\n */\nexport function GetPackageJson(SearchStart?: string): EGetPackageJson {\n    return Effect.gen(function* () {\n        const Fs: Platform.FileSystem.FileSystem = yield* Platform.FileSystem.FileSystem;\n        const Path: Platform.Path.Path = yield* Platform.Path.Path;\n        const RootDirectory: string = yield* GetPackageRootDirectory(SearchStart);\n        const PackageJsonPath: string = Path.join(RootDirectory, \"package.json\");\n        const FileContents: string = yield* Fs.readFileString(PackageJsonPath);\n        return Schema.decodeUnknownSync(Schema.parseJson())(FileContents) as IPackageJson;\n    });\n}\n/**\n * Get the root directory of the Node.js project in which the\n * current working directory resides.\n *\n * @param SearchStart - If specified, this is the given path from which to look for a root directory.\n * Otherwise, the search is started from {@link process.cwd}.\n *\n * @returns {EGetPackageRootDirectory} An Effect that succeeds with the package root\n * directory, or fails with {@link RootDirectoryNotFoundError}.\n *\n * @example\n * Suppose `process.cwd()` is any one of the following,\n *   - `/home/alex/myPackage`,\n *   - `/home/alex/myPackage/src/MyModule`,\n *   - `/home/alex/myPackage/resource/Images`,\n *\n * then,\n *\n * ```typescript\n * import { Effect } from \"effect\";\n * const Root: string = await Effect.runPromise(GetPackageRootDirectory());\n * // `Root` <- `\"/home/alex/myPackage\"`\n * ```\n *\n * @example\n * Suppose `TestPath === \"/home/alex/Documents\"` is *not* a NodeJS package root\n * (of course, neither are `/home/alex` or `/home`).  Then,\n *\n * ```typescript\n * import { Effect } from \"effect\";\n * const TestPath: string = \"/home/alex/Documents\";\n * let Root: string | undefined = undefined;\n * try\n * {\n *     Root = await Effect.runPromise(\n *         GetPackageRootDirectory(TestPath)\n *     );\n * }\n * catch (Error: unknown)\n * {\n *      // `Error instanceof RootDirectoryNotFound`\n * }\n *\n * // `Root` <- `undefined`\n * ```\n *\n * @example\n * Suppose `process.cwd() === /home/alex/Downloads`, which is *not* a NodeJS package\n * (of course, neither are `/home/alex` or `/home`).  Then,\n *\n * ```typescript\n * import { Effect } from \"effect\";\n * let Root: string | undefined = undefined;\n * try\n * {\n *     Root = await Effect.runPromise(GetPackageRootDirectory());\n * }\n * catch (Error: unknown)\n * {\n *      // `Error instanceof RootDirectoryNotFound`\n * }\n * // `Root` <- `undefined`\n * ```\n */\nexport function GetPackageRootDirectory(SearchStart?: string): EGetPackageRootDirectory {\n    return Effect.gen(function* () {\n        const Fs: Platform.FileSystem.FileSystem = yield* Platform.FileSystem.FileSystem;\n        const Path: Platform.Path.Path = yield* Platform.Path.Path;\n        const StartPath: string = yield* Fs.realPath(SearchStart ?? process.cwd());\n        let CurrentDirectory: string = StartPath;\n        while (true) {\n            const PackageJsonPath: string = Path.join(CurrentDirectory, \"package.json\");\n            const PackageJsonExists: boolean = yield* Fs.exists(PackageJsonPath);\n            if (PackageJsonExists) {\n                return CurrentDirectory;\n            }\n            const ParentDirectory: string = Path.dirname(CurrentDirectory);\n            if (ParentDirectory === CurrentDirectory) {\n                return yield* Effect.fail(new SearchExhaustedError({\n                    Criteria: (\"A directory containing a package.json file, of which the given SearchStart \" +\n                        `parameter was \"${SearchStart}\".`),\n                    Kind: \"Directory\",\n                    LastSearchResult: CurrentDirectory\n                }));\n            }\n            CurrentDirectory = ParentDirectory;\n        }\n    });\n}\n/* eslint-disable jsdoc/require-example */\n/**\n * For a given `npm` package, identified by a {@link Cwd} path contained by the `npm` package,\n * get the path to the `node_modules` directory that contains the dependencies of the package.\n *\n * @note This supports `npm` workspaces, and has not been tested with packages that are workspaces\n * of packages handled by *other* package managers.\n *\n * @param Cwd - The path of a directory within an `npm` package (possibly\n * the root directory of the package).\n *\n * @returns {EGetNodeModulesPath} An {@link Effect.Effect | effect} that finds the\n * `node_modules` directory of an `npm` package that contains the given {@link Cwd}.\n */\nexport function GetNodeModulesDirectory(Cwd?: string): EGetNodeModulesPath {\n    return Effect.gen(function* () {\n        const Fs: Platform.FileSystem.FileSystem = yield* Platform.FileSystem.FileSystem;\n        const Path: Platform.Path.Path = yield* Platform.Path.Path;\n        const ResolvedDirectory: string = Path.resolve(Cwd ?? process.cwd());\n        const ResolvedDirectoryType: Platform.FileSystem.File.Type | undefined = yield* GetPathType(Fs, ResolvedDirectory);\n        if (ResolvedDirectoryType !== \"Directory\") {\n            return yield* Effect.fail(new BadArgument({\n                description: `Expected a directory path, but received \"${ResolvedDirectory}\"`,\n                method: \"GetNodeModulesDirectory\",\n                module: \"FileSystem\"\n            }));\n        }\n        const RealDirectory: string = yield* Fs.realPath(ResolvedDirectory);\n        const PackageDirectory: string | undefined = yield* FindNearestPackageDirectory(Fs, Path, RealDirectory);\n        if (PackageDirectory === undefined) {\n            return yield* Effect.fail(new SystemError({\n                description: \"Could not find a package.json in this directory or any ancestor directory.\",\n                method: \"GetNodeModulesDirectory\",\n                module: \"FileSystem\",\n                pathOrDescriptor: RealDirectory,\n                reason: \"NotFound\"\n            }));\n        }\n        const NodeModulesDirectory: string | undefined = yield* FindNearestNodeModulesDirectory(Fs, Path, PackageDirectory);\n        if (NodeModulesDirectory === undefined) {\n            return yield* Effect.fail(new SystemError({\n                description: \"Could not find a node_modules directory for this package \" +\n                    \"or any ancestor workspace/package directory.\",\n                method: \"GetNodeModulesDirectory\",\n                module: \"FileSystem\",\n                pathOrDescriptor: PackageDirectory,\n                reason: \"NotFound\"\n            }));\n        }\n        return NodeModulesDirectory;\n    });\n}\n/**\n * For a given `npm` package, identified by a {@link Directory} path contained by the `npm` package\n * and whose dependencies are installed on the current file system, and for a given {@link Dependency}\n * of that package, get the {@link IPackageJson | package.json} of the given dependency in the `node_modules`\n * directory that contains the dependencies of the given package.\n *\n * @note This supports `npm` workspaces, and has not been tested with packages that are workspaces\n * of packages handled by *other* package managers.\n *\n * @param Dependency - The name of the dependency whose {@link IPackageJson | package.json} is returned\n * by this.\n *\n * @param Directory - The path of a directory within an `npm` package (possibly\n * the root directory of the package).\n *\n * @returns {EGetDependencyPackage} An {@link Effect.Effect | effect} that returns\n * the {@link IPackageJson | package.json} of the given {@link Dependency}, for\n * the `npm` package identified by the given {@link Directory}.\n */\nexport function GetDependencyPackage(Dependency: string, Directory: string = process.cwd()): EGetDependencyPackage {\n    return Effect.gen(function* () {\n        const Fs: Platform.FileSystem.FileSystem = yield* Platform.FileSystem.FileSystem;\n        const Path: Platform.Path.Path = yield* Platform.Path.Path;\n        const NodeModulesPath: string = yield* GetNodeModulesDirectory(Directory);\n        const PackageJsonPath: string = Path.resolve(NodeModulesPath, \"package.json\");\n        const PackageJsonContents: string = yield* Fs.readFileString(PackageJsonPath);\n        return (yield* Schema.decodeUnknown(Schema.parseJson())(PackageJsonContents)) as IPackageJson;\n    });\n}\n/**\n * For a NodeJS project containing {@link SearchStart | a given directory}, get the names of its dependencies.\n *\n * @param Dependencies - If specified, then the \"types\" of dependencies to include, where each \"type\"\n * is identified by its key in the `package.json` file.  Otherwise, this is `\"dependencies\"` and\n * `\"devDependencies\"`.\n *\n * @param SearchStart - If specified, the path from which the search for the `package.json` will begin.\n * Otherwise, it is {@link process!cwd}.\n *\n * @returns {EGetDependencies} An {@link Effect!Effect | effect} that returns the dependencies\n * of the package containing the given {@link SearchStart}\n */\nexport function GetDependencies(Dependencies: ReadonlyArray<PackageDependency> = [\"dependencies\", \"devDependencies\"] as const, SearchStart: string = process.cwd()): EGetDependencies {\n    return Effect.gen(function* () {\n        const PackageJson: IPackageJson = yield* GetPackageJson(SearchStart);\n        function IsInDependencies(Key: string): Key is PackageDependency {\n            return Dependencies.includes(Key as PackageDependency);\n        }\n        function GetNamesFromProperty(Value: IDependencyMap | ReadonlyArray<string>, _Index: number): ReadonlyArray<string> {\n            if (Array.isArray(Value)) {\n                return Value as ReadonlyArray<string>;\n            }\n            else {\n                return Record.keys(Value as Record<string, string>);\n            }\n        }\n        function IsDependencyProperty(Value: unknown, Key: string): Value is ReadonlyArray<string> | IDependencyMap {\n            return (IsInDependencies(Key) &&\n                (Predicate.isRecord(Value) ||\n                    Array.isArray(Value)));\n        }\n        return pipe(PackageJson, Record.filter(IsDependencyProperty), Record.values, Array.flatMap(GetNamesFromProperty));\n    });\n}\n/* eslint-enable jsdoc/require-example */\n", "/**\n * @file      Npm.Effect.Internal.ts\n * @author    Gage Sorrell <gage@sorrell.sh>\n * @copyright (c) 2026 Gage Sorrell\n * @license   MIT\n */\nimport type { Path as EffectPath, FileSystem } from \"@effect/platform\";\nimport type { PlatformError, SystemError } from \"@effect/platform/Error\";\nimport { Effect } from \"effect\";\n/* eslint-disable jsdoc/require-example */\n/**\n * Returns whether a given {@link Value} contains a `readonly` `string` `\"code\"`.\n *\n * @param Value - The value to test.\n * @returns {Value is { readonly code: string }} Whether {@link Value} is a\n * `{ readonly code: string }`.\n */\nexport function HasErrorCode(Value: unknown): Value is {\n    readonly code: string;\n} {\n    return typeof Value === \"object\"\n        && Value !== null\n        && \"code\" in Value\n        && typeof (Value as {\n            readonly code: unknown;\n        }).code === \"string\";\n}\n/**\n * Starting at {@link Directory}, traverse upward until the root directory of a NodeJS package is found,\n * then return the path to that directory.\n *\n * @param Fs - The {@link FileSystem.FileSystem} service.\n * @param Path - The {@link EffectPath.Path | Path} service.\n * @param Directory - The path of the directory from which this begins to search.\n * @returns {Effect.Effect<string | undefined, PlatformError>} An {@link Effect.Effect | effect} which\n * finds the nearest package directory.\n */\nexport function FindNearestPackageDirectory(Fs: FileSystem.FileSystem, Path: EffectPath.Path, Directory: string): Effect.Effect<string | undefined, PlatformError> {\n    return Effect.gen(function* () {\n        let CurrentDirectory: string | undefined = Directory;\n        while (CurrentDirectory !== undefined) {\n            const PackageManifestPath: string = Path.join(CurrentDirectory, \"package.json\");\n            const PackageManifestType: FileSystem.File.Type | undefined = yield* GetPathType(Fs, PackageManifestPath);\n            if (PackageManifestType === \"File\") {\n                return CurrentDirectory;\n            }\n            CurrentDirectory = GetParentDirectory(Path, CurrentDirectory);\n        }\n        return undefined;\n    });\n}\n/**\n * Starting at {@link Directory} within a given `npm` package, traverse upward until\n * the `node_modules` directory containing the dependencies of the given `npm` package is found.\n *\n * @param Fs - The {@link FileSystem.FileSystem} service.\n * @param Path - The {@link EffectPath.Path | Path} service.\n * @param Directory - The path of the directory from which this begins to search.\n * @returns {Effect.Effect<string | undefined, PlatformError>} An {@link Effect.Effect | effect} which\n * finds the nearest `node_modules` directory.\n */\nexport function FindNearestNodeModulesDirectory(Fs: FileSystem.FileSystem, Path: EffectPath.Path, Directory: string): Effect.Effect<string | undefined, PlatformError> {\n    return Effect.gen(function* () {\n        let CurrentDirectory: string | undefined = Directory;\n        while (CurrentDirectory !== undefined) {\n            const CandidateNodeModulesDirectory: string = Path.join(CurrentDirectory, \"node_modules\");\n            const CandidateNodeModulesType: FileSystem.File.Type | undefined = yield* GetPathType(Fs, CandidateNodeModulesDirectory);\n            if (CandidateNodeModulesType === \"Directory\") {\n                return CandidateNodeModulesDirectory;\n            }\n            CurrentDirectory = GetParentDirectory(Path, CurrentDirectory);\n        }\n        return undefined;\n    });\n}\n/**\n * For a given {@link Path}, get the {@link FileSystem.File.Type | type} of the object at that path.\n *\n * @param Fs - The {@link FileSystem.FileSystem | FileSystem} service.\n * @param Path - The path whose type is returned by this.\n * @returns {Effect.Effect<FileSystem.File.Type | undefined, PlatformError>} An\n * {@link Effect.Effect | effect} that finds the {@link FileSystem.File.Type | type} of the\n * given {@link Path}.\n */\nexport function GetPathType(Fs: FileSystem.FileSystem, Path: string): Effect.Effect<FileSystem.File.Type | undefined, PlatformError> {\n    return Fs.stat(Path).pipe(Effect.map((FileInformation: FileSystem.File.Info) => FileInformation.type), Effect.catchTag(\"SystemError\", (ErrorValue: SystemError) => {\n        if (ErrorValue.reason === \"NotFound\") {\n            return Effect.succeed(undefined);\n        }\n        return Effect.fail(ErrorValue);\n    }));\n}\n/**\n * For a given {@link Directory}, if that directory has a parent directory, then return\n * the path to the parent directory, otherwise return `undefined`.\n *\n * @param Path - The {@link EffectPath.Path | Path} service.\n * @param Directory - The path of the directory whose parent path is found, if it exists.\n * @returns {string | undefined} The path of the parent directory of the given {@link Directory},\n * if it has a parent directory (otherwise `undefined`).\n */\nexport function GetParentDirectory(Path: EffectPath.Path, Directory: string): string | undefined {\n    const ParentDirectory: string = Path.dirname(Directory);\n    if (ParentDirectory === Directory) {\n        return undefined;\n    }\n    return ParentDirectory;\n}\n;\n/* eslint-enable jsdoc/require-example */\n", "/**\n * @file      Platform.ts\n * @author    Gage Sorrell <gage@sorrell.sh>\n * @copyright (c) 2026 Gage Sorrell\n * @license   MIT\n */\nimport { Data } from \"effect\";\nimport type { Kind } from \"../../FileSystem/FileSystem.Types.ts\";\n/**\n * An error in which a given {@link Kind | filesystem object} was expected to exist\n * at a given {@link Path}, but the object was not found.\n *\n * @property {string} Path - The path where an object of the given {@link Kind} was expected,\n * but was not found.\n *\n * @property {Kind} Kind - The kind of object that was expected at the given {@link Path},\n * but was not found.\n */\nexport class PathNotFoundError extends Data.TaggedError(\"PathNotFoundError\")<Readonly<{\n    Path: string;\n    Kind: Kind;\n}>> {\n}\n/**\n * An error in which a {@link Kind | filesystem object} meeting a given\n * {@link Criteria | set of criteria} could not be found.\n *\n * @property {string} LastSearchResult - The last path that was tested when searching for\n * a {@link Kind | filesystem object} of a given {@link Criteria | set of criteria}.\n * but was not found.\n *\n * @property {string} Criteria - A human-readable description of the criteria defining the search\n * from which an error of this type originated.\n *\n * @property {Kind} Kind - The kind of object that was expected at the given {@link Path},\n * but was not found.\n */\nexport class SearchExhaustedError extends Data.TaggedError(\"SearchExhaustedError\")<Readonly<{\n    LastSearchResult?: string;\n    Criteria: string;\n    Kind: Kind;\n}>> {\n}\n"],
  "mappings": "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",
  "names": ["import_effect", "Path", "import_effect", "Path", "process"]
}
