import * as Context from "effect/Context";import * as Effect from "effect/Effect";import * as NodeOS from "node:os"; export const HostProcessPlatform = Context.Reference<NodeJS.Platform>( "@t3tools/shared/hostProcess/HostProcessPlatform", { defaultValue: () => process.platform, },); export const HostProcessArchitecture = Context.Reference<NodeJS.Architecture>( "@t3tools/shared/hostProcess/HostProcessArchitecture", { defaultValue: () => process.arch, },); export const HostProcessHostname = Context.Reference<string>( "@t3tools/shared/hostProcess/HostProcessHostname", { defaultValue: () => NodeOS.hostname(), },); export const HostProcessEnvironment = Context.Reference<NodeJS.ProcessEnv>( "@t3tools/shared/hostProcess/HostProcessEnvironment", { defaultValue: () => process.env, },); export const HostProcessWorkingDirectory = Context.Reference<string>( "@t3tools/shared/hostProcess/HostProcessWorkingDirectory", { defaultValue: () => process.cwd(), },); export const HostProcessExecutablePath = Context.Reference<string>( "@t3tools/shared/hostProcess/HostProcessExecutablePath", { defaultValue: () => process.execPath, },); export const HostProcessArguments = Context.Reference<ReadonlyArray<string>>( "@t3tools/shared/hostProcess/HostProcessArguments", { defaultValue: () => process.argv, },); export const isHostWindows = Effect.map(HostProcessPlatform, (platform) => platform === "win32");
import * as Context from "effect/Context";
import * as Effect from "effect/Effect";
import * as NodeOS from "node:os";
export const HostProcessPlatform = Context.Reference<NodeJS.Platform>(
"@t3tools/shared/hostProcess/HostProcessPlatform",
{
defaultValue: () => process.platform,
},
);
export const HostProcessArchitecture = Context.Reference<NodeJS.Architecture>(
"@t3tools/shared/hostProcess/HostProcessArchitecture",
{
defaultValue: () => process.arch,
},
);
export const HostProcessHostname = Context.Reference<string>(
"@t3tools/shared/hostProcess/HostProcessHostname",
{
defaultValue: () => NodeOS.hostname(),
},
);
export const HostProcessEnvironment = Context.Reference<NodeJS.ProcessEnv>(
"@t3tools/shared/hostProcess/HostProcessEnvironment",
{
defaultValue: () => process.env,
},
);
export const HostProcessWorkingDirectory = Context.Reference<string>(
"@t3tools/shared/hostProcess/HostProcessWorkingDirectory",
{
defaultValue: () => process.cwd(),
},
);
export const HostProcessExecutablePath = Context.Reference<string>(
"@t3tools/shared/hostProcess/HostProcessExecutablePath",
{
defaultValue: () => process.execPath,
},
);
export const HostProcessArguments = Context.Reference<ReadonlyArray<string>>(
"@t3tools/shared/hostProcess/HostProcessArguments",
{
defaultValue: () => process.argv,
},
);
export const isHostWindows = Effect.map(HostProcessPlatform, (platform) => platform === "win32");