optionkit 0.0.7 → 0.8.1
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/LICENSE +0 -2
- package/dist/_generated/catalog.d.ts.map +1 -1
- package/dist/_generated/catalog.js +1 -1
- package/dist/_generated/catalog.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/optionkit.js +16 -8
- package/dist/optionkit.js.map +1 -1
- package/dist/resolve.js.map +1 -1
- package/package.json +62 -60
package/LICENSE
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/_generated/catalog.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/_generated/catalog.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO;;;;CAIV,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/_generated/catalog.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/_generated/catalog.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,aAAa,EAAE,QAAQ;IACvB,UAAU,EAAE,QAAQ;IACpB,KAAK,EAAE,QAAQ;CACP,CAAC","sourcesContent":["// Generated from the monorepo catalog by scripts/generate-catalog.ts.\nexport const catalog = {\n \"clean-stack\": \"^7.0.0\",\n \"fireargs\": \"^0.6.2\",\n \"zod\": \"^4.6.7\"\n} as const;\n"]}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,GAchB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,GAchB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC","sourcesContent":["export {\n createOptionKit,\n type ArgumentConfiguration,\n type CliCommand,\n type CliParseOptions,\n type CliProgram,\n type CliRoute,\n type CommandConfiguration,\n type CreateOptionKitSettings,\n type FieldBuilder,\n type OptionConfiguration,\n type OptionKit,\n type OptionKitAdapter,\n type OptionKitLogger,\n type ProgramConfiguration,\n} from './optionkit.js';\nexport { importPackageIfAvailable, resolvePackage } from './resolve.js';\n"]}
|
package/dist/optionkit.js
CHANGED
|
@@ -223,14 +223,7 @@ async function installWithoutSaving(packages, installRoot, packageManager) {
|
|
|
223
223
|
const snapshots = new Map();
|
|
224
224
|
for (const name of INSTALL_STATE_FILES) {
|
|
225
225
|
const filename = path.join(installRoot, name);
|
|
226
|
-
|
|
227
|
-
snapshots.set(filename, await readFile(filename));
|
|
228
|
-
}
|
|
229
|
-
catch (error) {
|
|
230
|
-
if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
|
|
231
|
-
throw error;
|
|
232
|
-
snapshots.set(filename, undefined);
|
|
233
|
-
}
|
|
226
|
+
snapshots.set(filename, await readFileIfPresent(filename));
|
|
234
227
|
}
|
|
235
228
|
try {
|
|
236
229
|
await installPackage(packages, {
|
|
@@ -243,6 +236,11 @@ async function installWithoutSaving(packages, installRoot, packageManager) {
|
|
|
243
236
|
}
|
|
244
237
|
finally {
|
|
245
238
|
for (const [filename, content] of snapshots) {
|
|
239
|
+
const current = await readFileIfPresent(filename);
|
|
240
|
+
if (content && current?.equals(content))
|
|
241
|
+
continue;
|
|
242
|
+
if (!content && !current)
|
|
243
|
+
continue;
|
|
246
244
|
if (content)
|
|
247
245
|
await writeFile(filename, content);
|
|
248
246
|
else
|
|
@@ -250,6 +248,16 @@ async function installWithoutSaving(packages, installRoot, packageManager) {
|
|
|
250
248
|
}
|
|
251
249
|
}
|
|
252
250
|
}
|
|
251
|
+
async function readFileIfPresent(filename) {
|
|
252
|
+
try {
|
|
253
|
+
return await readFile(filename);
|
|
254
|
+
}
|
|
255
|
+
catch (error) {
|
|
256
|
+
if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
|
|
257
|
+
return undefined;
|
|
258
|
+
throw error;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
253
261
|
function noSaveArguments(agent) {
|
|
254
262
|
if (agent === 'bun')
|
|
255
263
|
return ['--no-save'];
|
package/dist/optionkit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optionkit.js","sourceRoot":"","sources":["../src/optionkit.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"optionkit.js","sourceRoot":"","sources":["../src/optionkit.ts"],"names":[],"mappings":"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","sourcesContent":["import { constants } from 'node:fs';\nimport { access, mkdir, readFile, realpath, rm, stat, writeFile } from 'node:fs/promises';\nimport path from 'node:path';\nimport { fileURLToPath } from 'node:url';\nimport { detectPackageManager, installPackage } from '@antfu/install-pkg';\nimport type {\n ZodArray,\n ZodBoolean,\n ZodNumber,\n ZodObject,\n ZodReadonly,\n ZodString,\n ZodType,\n} from 'zod';\nimport { catalog } from './_generated/catalog.js';\nimport { importPackageIfAvailable, resolvePackage } from './resolve.js';\n\ntype CleanStack = typeof import('clean-stack').default;\ntype CliAdapterModule = typeof import('fireargs');\ntype ZodNamespace = typeof import('zod').z;\ntype ZodShape = Record<string, ZodType>;\ntype StructuredValueKind = 'array' | 'object';\ntype InternalValueParser = (value: string) => never;\ntype ObjectSchema = ZodObject<ZodShape> | ZodReadonly<ZodObject<ZodShape>>;\ntype SchemaInput<Schema extends ZodType> = import('zod').input<Schema>;\ntype SchemaOutput<Schema extends ZodType> = import('zod').output<Schema>;\n\nexport interface OptionConfiguration<Value = unknown> {\n /** Long flag without dashes. Defaults to the kebab-case field key. */\n name?: string;\n /** Override the generated environment variable, or disable it for this field. */\n env?: string | false;\n /** Override the generated short flag, or disable it for this field. */\n short?: string | false;\n conflicts?: string | string[];\n implies?: Record<string, unknown>;\n hidden?: boolean;\n preset?: unknown;\n helpGroup?: string;\n defaultDescription?: string;\n /** Fireargs parser for one CLI or environment string; disables automatic decoding. */\n parse?: (value: string) => Value;\n}\n\nexport interface ArgumentConfiguration<Value = unknown> {\n name?: string;\n defaultDescription?: string;\n parse?: (value: string) => Value;\n}\n\nexport interface PassThroughArgumentsConfiguration {\n /** Help text for the generated trailing `args` positional. */\n description?: string;\n}\n\nexport interface CommandConfiguration extends Record<string, unknown> {\n /** Add a typed trailing `args` array and the Fireargs pass-through switches. */\n passThroughArguments?: boolean | PassThroughArgumentsConfiguration;\n}\nexport type ProgramConfiguration = Record<string, unknown>;\n\nexport interface CliParseOptions {\n from?: 'electron' | 'node' | 'user';\n}\n\nexport interface CliRoute {\n readonly type: 'command' | 'program';\n helpInformation(): string;\n parseAsync(argv?: readonly string[], options?: CliParseOptions): Promise<unknown>;\n}\n\nexport interface CliCommand extends CliRoute {\n readonly type: 'command';\n}\n\nexport interface CliProgram extends CliRoute {\n readonly type: 'program';\n}\n\nexport interface CommandContext {\n readonly command: CliCommand;\n readonly json: boolean;\n}\n\nexport interface RenderContext<Input> {\n readonly command: CliCommand;\n readonly input: Input;\n readonly json: false;\n}\n\nexport interface FieldBuilder<Value = never> {\n string(): ZodString;\n number(): ZodNumber;\n boolean(): ZodBoolean;\n enum<const Values extends readonly [string, ...string[]]>(values: Values): ZodType<Values[number]>;\n array<Inner extends ZodType>(inner: Inner): ZodArray<Inner>;\n schema<Schema extends ZodType>(schema: Schema): Schema;\n}\n\ninterface HandlerBuilder<Input, Output extends ZodType> {\n handler(\n handler: (\n input: Input,\n context: CommandContext,\n ) => SchemaInput<Output> | Promise<SchemaInput<Output>>,\n ): CliCommand;\n}\n\ninterface OutputBuilder<Input, Output extends ZodType>\n extends HandlerBuilder<Input, Output> {\n render(\n render: (\n output: SchemaOutput<Output>,\n context: RenderContext<Input>,\n ) => string | void | Promise<string | void>,\n ): HandlerBuilder<Input, Output>;\n}\n\ninterface CommandBuilder<PassThrough extends boolean> {\n input<Input extends ObjectSchema>(schema: Input): {\n output<Output extends ZodType>(schema: Output): OutputBuilder<\n PassThrough extends true\n ? SchemaOutput<Input> & { args: string[] }\n : SchemaOutput<Input>,\n Output\n >;\n };\n}\n\nexport interface OptionKitAdapter {\n argument<Value = never>(configuration?: ArgumentConfiguration<Value>): FieldBuilder<Value>;\n command(\n configuration: CommandConfiguration & {\n passThroughArguments: true | PassThroughArgumentsConfiguration;\n },\n ): CommandBuilder<true>;\n command(configuration?: CommandConfiguration): CommandBuilder<false>;\n option<Value = never>(configuration?: OptionConfiguration<Value>): FieldBuilder<Value>;\n program(configuration?: ProgramConfiguration): {\n router(routes: Readonly<Record<string, CliRoute>>): CliProgram;\n };\n}\n\ntype ResolvedOptionConfiguration = Omit<OptionConfiguration<never>, 'env' | 'short'> & {\n env?: string;\n /** Internal compatibility parser for structured values carried by one env string. */\n parse?: InternalValueParser;\n short?: string;\n};\n\ninterface StructuredEnvironmentBinding {\n readonly env: string;\n readonly name: string;\n readonly short?: string;\n}\n\ninterface OptionNegation {\n readonly name: string;\n}\n\ninterface RuntimeOption {\n readonly long?: string;\n}\n\ninterface RuntimeCliCommand extends CliCommand {\n readonly options?: readonly RuntimeOption[];\n configureOutput?: () => { writeErr?: (value: string) => void };\n option?: (flags: string, description?: string) => RuntimeCliCommand;\n}\n\ninterface RuntimeRoute extends CliRoute {\n readonly commands?: readonly RuntimeRoute[];\n name?: () => string;\n aliases?: () => string[];\n}\n\nexport type OptionKitLogger = (\n message: string,\n details?: Readonly<Record<string, unknown>>,\n) => void;\n\nexport interface CreateOptionKitSettings {\n /** Module URL for the consuming CLI; used to find its nearest package.json. */\n moduleUrl?: string | URL;\n /** Explicit consuming package root when moduleUrl discovery is not appropriate. */\n packageRoot?: string;\n /** Override the consuming package name used to derive the environment prefix. */\n projectName?: string;\n /** Override the generated prefix, or disable environment bindings. */\n environmentPrefix?: string | false;\n /** Generate non-conflicting single-letter flags. Defaults to true. */\n shortFlags?: boolean;\n /** Add `--no-*` twins for boolean options. Defaults to true. */\n booleanNegations?: boolean;\n /** Letters that automatic short-flag generation must not use. */\n reservedShortFlags?: readonly string[];\n /** Per-field CLI metadata applied after generated values. */\n fields?: Readonly<Record<string, OptionConfiguration>>;\n /** Working directory used to detect the caller's package manager. */\n invocationDirectory?: string;\n /** Explicit isolated install directory. By default, missing packages install at packageRoot. */\n cacheDirectory?: string;\n /** Optional diagnostics sink. optionkit never writes install progress itself. */\n log?: OptionKitLogger;\n /** Format rejected handlers and renderers at the parse boundary. Defaults to true. */\n formatErrors?: boolean;\n}\n\nexport interface OptionKit {\n /** CLI builder namespace, loaded from the project or the lazy cache. */\n f: OptionKitAdapter;\n /** Zod from the same dependency location as the CLI adapter. */\n z: ZodNamespace;\n /** Prefix used for generated environment variables, including its trailing underscore. */\n environmentPrefix: string | false;\n /** The consuming package root discovered for this CLI. */\n packageRoot: string;\n /** Where the CLI dependencies were resolved or installed. */\n dependencySource: 'cache' | 'package-root' | 'project';\n /** Render an error with clean-stack when the optional dependency is available. */\n formatError: (error: unknown) => string;\n}\n\nconst REQUIRED_CLI_DEPENDENCY_SPECIFIERS = [\n `fireargs@${catalog.fireargs}`,\n `zod@${catalog.zod}`,\n];\nconst CLEAN_STACK_SPECIFIER = `clean-stack@${catalog['clean-stack']}`;\nconst installPromises = new Map<string, Promise<LoadedDependencies>>();\nconst cleanStackPromises = new Map<string, Promise<CleanStack | undefined>>();\n\n/**\n * Load the CLI adapter on demand. Every command input is transparently augmented\n * with environment bindings and conflict-free short flags.\n */\nexport async function createOptionKit(\n settings: CreateOptionKitSettings = {},\n): Promise<OptionKit> {\n const packageInfo = await consumingPackage(settings);\n const loaded = await loadDependencies(packageInfo.root, settings);\n const environmentPrefix = resolveEnvironmentPrefix(\n settings.environmentPrefix,\n settings.projectName ?? packageInfo.name,\n );\n const errorFormatter = (error: unknown) => formatError(error, loaded.cleanStack);\n\n return {\n f: createAdapter(loaded.f, loaded.z, environmentPrefix, settings, errorFormatter),\n z: loaded.z,\n environmentPrefix,\n packageRoot: packageInfo.root,\n dependencySource: loaded.source,\n formatError: errorFormatter,\n };\n}\n\ninterface PackageInfo {\n name: string;\n root: string;\n}\n\ninterface LoadedDependencies {\n cleanStack?: CleanStack;\n f: CliAdapterModule['f'];\n z: ZodNamespace;\n source: 'cache' | 'package-root' | 'project';\n}\n\nasync function consumingPackage(\n settings: CreateOptionKitSettings,\n): Promise<PackageInfo> {\n const root = settings.packageRoot\n ? path.resolve(settings.packageRoot)\n : await findPackageRoot(await discoveryStart(settings.moduleUrl));\n const manifest = JSON.parse(\n await readFile(path.join(root, 'package.json'), 'utf8'),\n ) as { name?: unknown };\n const name = settings.projectName ?? manifest.name;\n if (typeof name !== 'string' || name.trim() === '') {\n throw new TypeError('The consuming package must have a name or set projectName.');\n }\n return { name, root };\n}\n\nasync function discoveryStart(moduleUrl: string | URL | undefined): Promise<string> {\n const candidate = moduleUrl === undefined\n ? process.argv[1] ?? process.cwd()\n : moduleUrl instanceof URL || moduleUrl.startsWith('file:')\n ? fileURLToPath(moduleUrl)\n : moduleUrl;\n const absolute = path.resolve(candidate);\n try {\n return await realpath(absolute);\n } catch {\n return absolute;\n }\n}\n\nasync function findPackageRoot(start: string): Promise<string> {\n let current: string;\n try {\n current = (await stat(start)).isDirectory() ? start : path.dirname(start);\n } catch {\n current = path.extname(start) === '' ? start : path.dirname(start);\n }\n\n while (true) {\n const manifest = path.join(current, 'package.json');\n try {\n await access(manifest, constants.R_OK);\n return current;\n } catch {\n const parent = path.dirname(current);\n if (parent === current) {\n throw new Error(`Could not find a package.json above ${JSON.stringify(start)}.`);\n }\n current = parent;\n }\n }\n}\n\nasync function loadDependencies(\n packageRoot: string,\n settings: CreateOptionKitSettings,\n): Promise<LoadedDependencies> {\n const project = await importDependencies(packageRoot);\n const invocationDirectory = path.resolve(settings.invocationDirectory ?? process.cwd());\n const detected = await detectPackageManager(invocationDirectory);\n const packageManager = detected ?? 'npm';\n const installRoot = path.resolve(settings.cacheDirectory ?? packageRoot);\n const installSource = settings.cacheDirectory ? 'cache' : 'package-root';\n if (settings.cacheDirectory) await ensureCachePackage(installRoot);\n if (project) {\n const projectCleanStack = await importCleanStack(packageRoot, settings.log);\n const cleanStack = projectCleanStack ?? await cachedCleanStack(\n installRoot,\n packageManager,\n settings.log,\n );\n return { ...project, cleanStack, source: 'project' };\n }\n\n let installation = installPromises.get(installRoot);\n if (!installation) {\n installation = installAndImport(\n installRoot,\n packageManager,\n installSource,\n settings.log,\n );\n installPromises.set(installRoot, installation);\n }\n try {\n return await installation;\n } catch (error) {\n installPromises.delete(installRoot);\n throw error;\n }\n}\n\nasync function installAndImport(\n installRoot: string,\n packageManager: string,\n source: 'cache' | 'package-root',\n log: OptionKitLogger | undefined,\n): Promise<LoadedDependencies> {\n const cleanStack = await cachedCleanStack(installRoot, packageManager, log);\n const existing = await importDependencies(installRoot);\n if (existing) return { ...existing, cleanStack, source };\n\n log?.('Installing required CLI dependencies.', {\n installDirectory: installRoot,\n packages: REQUIRED_CLI_DEPENDENCY_SPECIFIERS,\n packageManager,\n });\n try {\n await installWithoutSaving(REQUIRED_CLI_DEPENDENCY_SPECIFIERS, installRoot, packageManager);\n } catch (error) {\n log?.('Could not install required CLI dependencies.', {\n error: formatError(error, cleanStack),\n });\n throw error;\n }\n const installed = await importDependencies(installRoot);\n if (!installed) {\n const unresolved = ['fireargs', 'zod'].filter(name => !resolvePackage(name, installRoot));\n throw new Error(\n `CLI dependencies were installed but ${unresolved.join(' and ') || 'their exports'} could not be resolved from ${installRoot}.`,\n );\n }\n log?.('Required CLI dependencies are ready.', { installDirectory: installRoot });\n return { ...installed, cleanStack, source };\n}\n\nasync function importDependencies(\n root: string,\n): Promise<Omit<LoadedDependencies, 'source'> | undefined> {\n const [adapter, zod] = await Promise.all([\n importPackageIfAvailable<CliAdapterModule>('fireargs', root),\n importPackageIfAvailable<typeof import('zod')>('zod', root),\n ]);\n if (!adapter || !zod) return undefined;\n const requiredBuilders = ['argument', 'command', 'option', 'program'] as const;\n if (!adapter.f || requiredBuilders.some(name => typeof adapter.f[name] !== 'function')) {\n throw new TypeError('The resolved CLI adapter does not expose its required builder functions.');\n }\n if (!zod.z || typeof zod.z.object !== 'function') {\n throw new TypeError('The resolved Zod package does not expose z.object().');\n }\n return { f: adapter.f, z: zod.z };\n}\n\nasync function cachedCleanStack(\n cacheRoot: string,\n packageManager: string,\n log: OptionKitLogger | undefined,\n): Promise<CleanStack | undefined> {\n let installation = cleanStackPromises.get(cacheRoot);\n if (!installation) {\n installation = installCleanStack(cacheRoot, packageManager, log);\n cleanStackPromises.set(cacheRoot, installation);\n }\n return installation;\n}\n\nasync function installCleanStack(\n installRoot: string,\n packageManager: string,\n log: OptionKitLogger | undefined,\n): Promise<CleanStack | undefined> {\n const existing = await importCleanStack(installRoot, log);\n if (existing) return existing;\n\n log?.('Installing optional stack cleaner.', {\n installDirectory: installRoot,\n package: CLEAN_STACK_SPECIFIER,\n packageManager,\n });\n try {\n await installWithoutSaving(CLEAN_STACK_SPECIFIER, installRoot, packageManager);\n const installed = await importCleanStack(installRoot, log);\n if (installed) log?.('Optional stack cleaner is ready.', { installDirectory: installRoot });\n return installed;\n } catch (error) {\n log?.('Optional stack cleaner is unavailable.', { error: formatError(error) });\n return undefined;\n }\n}\n\nasync function importCleanStack(\n root: string,\n log: OptionKitLogger | undefined,\n): Promise<CleanStack | undefined> {\n try {\n return (await importPackageIfAvailable<typeof import('clean-stack')>('clean-stack', root))\n ?.default;\n } catch (error) {\n log?.('Optional stack cleaner could not be loaded.', { error: formatError(error) });\n return undefined;\n }\n}\n\nfunction formatError(error: unknown, cleanStack?: CleanStack): string {\n const stack = error instanceof Error\n ? error.stack ?? `${error.name}: ${error.message}`\n : String(error);\n if (!cleanStack) return stack;\n try {\n return cleanStack(stack, { pretty: true });\n } catch {\n return stack;\n }\n}\n\nasync function ensureCachePackage(cacheRoot: string): Promise<void> {\n await mkdir(cacheRoot, { recursive: true });\n const manifest = path.join(cacheRoot, 'package.json');\n try {\n await writeFile(\n manifest,\n `${JSON.stringify({ name: 'optionkit-cli-cache', private: true, type: 'module' }, null, 2)}\\n`,\n { encoding: 'utf8', flag: 'wx' },\n );\n } catch (error) {\n if (!(error instanceof Error && 'code' in error && error.code === 'EEXIST')) throw error;\n }\n}\n\nconst INSTALL_STATE_FILES = [\n 'package.json',\n 'bun.lock',\n 'bun.lockb',\n 'package-lock.json',\n 'pnpm-lock.yaml',\n 'yarn.lock',\n] as const;\n\nasync function installWithoutSaving(\n packages: string | string[],\n installRoot: string,\n packageManager: string,\n): Promise<void> {\n const snapshots = new Map<string, Buffer | undefined>();\n for (const name of INSTALL_STATE_FILES) {\n const filename = path.join(installRoot, name);\n snapshots.set(filename, await readFileIfPresent(filename));\n }\n try {\n await installPackage(packages, {\n additionalArgs: agent => noSaveArguments(agent),\n cwd: installRoot,\n packageManager,\n preferOffline: true,\n silent: true,\n });\n } finally {\n for (const [filename, content] of snapshots) {\n const current = await readFileIfPresent(filename);\n if (content && current?.equals(content)) continue;\n if (!content && !current) continue;\n if (content) await writeFile(filename, content);\n else await rm(filename, { force: true });\n }\n }\n}\n\nasync function readFileIfPresent(filename: string): Promise<Buffer | undefined> {\n try {\n return await readFile(filename);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'ENOENT') return undefined;\n throw error;\n }\n}\n\nfunction noSaveArguments(agent: string): string[] {\n if (agent === 'bun') return ['--no-save'];\n if (agent === 'npm') return ['--no-save', '--package-lock=false'];\n if (agent === 'pnpm') return ['--lockfile=false'];\n if (agent === 'yarn') return ['--no-lockfile'];\n return [];\n}\n\nfunction createAdapter(\n adapter: CliAdapterModule['f'],\n zod: ZodNamespace,\n environmentPrefix: string | false,\n settings: CreateOptionKitSettings,\n errorFormatter: (error: unknown) => string,\n): OptionKitAdapter {\n const environmentBindings = new WeakMap<CliRoute, readonly StructuredEnvironmentBinding[]>();\n return {\n ...adapter,\n command(configuration: CommandConfiguration = {}) {\n const { passThroughArguments, ...fireargsConfiguration } = configuration;\n const passThrough = passThroughArguments === true ||\n (typeof passThroughArguments === 'object' && passThroughArguments !== null);\n const builder = adapter.command(passThrough\n ? {\n allowExcessArguments: true,\n allowUnknownOption: true,\n enablePositionalOptions: true,\n jsonOption: false,\n llmsOption: false,\n passThroughOptions: true,\n ...fireargsConfiguration,\n }\n : fireargsConfiguration);\n return {\n input<Input extends ObjectSchema>(schema: Input) {\n const commandInput = passThrough\n ? addPassThroughArgument(schema, adapter, zod, passThroughArguments)\n : schema;\n const { adapted, bindings, negations } = adaptInputSchema(\n commandInput,\n adapter,\n zod,\n environmentPrefix,\n settings,\n );\n const inputBuilder = builder.input(adapted);\n return {\n output(output: ZodType) {\n const outputBuilder = inputBuilder.output(output);\n const attach = (route: CliCommand): CliCommand => {\n addBooleanNegations(route, negations);\n environmentBindings.set(route, bindings);\n wrapParseBoundary(\n route,\n () => bindings,\n settings.formatErrors === false ? undefined : errorFormatter,\n );\n return route;\n };\n return {\n handler(handler: never) {\n return attach(outputBuilder.handler(handler));\n },\n render(render: never) {\n const handlerBuilder = outputBuilder.render(render);\n return {\n handler(handler: never) {\n return attach(handlerBuilder.handler(handler));\n },\n };\n },\n };\n },\n };\n },\n };\n },\n program(configuration: ProgramConfiguration = {}) {\n const builder = adapter.program(configuration);\n return {\n router(routes: Readonly<Record<string, CliRoute>>) {\n const program = builder.router(routes as never);\n wrapParseBoundary(\n program,\n (argv, options) => {\n const selected = selectedLeaf(program as unknown as RuntimeRoute, argv, options);\n return selected ? environmentBindings.get(selected) ?? [] : [];\n },\n settings.formatErrors === false ? undefined : errorFormatter,\n );\n return program;\n },\n };\n },\n } as OptionKitAdapter;\n}\n\nfunction addPassThroughArgument(\n schema: ObjectSchema,\n adapter: CliAdapterModule['f'],\n zod: ZodNamespace,\n configuration: true | PassThroughArgumentsConfiguration,\n): ZodObject<ZodShape> {\n const object = objectSchema(schema);\n if ('args' in object.shape) {\n throw new TypeError('passThroughArguments reserves the input field \"args\".');\n }\n const description = typeof configuration === 'object'\n ? configuration.description\n : undefined;\n const args = adapter.argument().schema(\n zod.array(zod.string()).default([]).describe(\n description ?? 'Arguments passed to the executable.',\n ),\n );\n return object.safeExtend({ args }) as ZodObject<ZodShape>;\n}\n\ntype RegisteredFieldConfiguration =\n | ({ kind: 'argument' } & ArgumentConfiguration)\n | ({ kind: 'option' } & OptionConfiguration);\n\nfunction adaptInputSchema(\n schema: ObjectSchema,\n adapter: CliAdapterModule['f'],\n zod: ZodNamespace,\n environmentPrefix: string | false,\n settings: CreateOptionKitSettings,\n): {\n readonly adapted: ZodObject<ZodShape>;\n readonly bindings: readonly StructuredEnvironmentBinding[];\n readonly negations: readonly OptionNegation[];\n} {\n const object = objectSchema(schema);\n const shape = object.shape as ZodShape;\n const registered = Object.fromEntries(Object.entries(shape).flatMap(([key, field]) => {\n const configuration = registeredFieldConfiguration(field, zod);\n return configuration ? [[key, configuration]] : [];\n })) as Record<string, RegisteredFieldConfiguration | undefined>;\n const configurations = optionConfigurations(\n shape,\n environmentPrefix,\n zod,\n settings,\n registered,\n );\n const fields = Object.fromEntries(Object.entries(shape).map(([key, field]) => {\n if (registered[key]?.kind === 'argument') return [key, field];\n return [key, adapter.option(configurations[key]).schema(field)];\n })) as ZodShape;\n const bindings = Object.entries(configurations).flatMap(([key, configuration]) => {\n if (\n configuration.env === undefined ||\n configuration.parse !== undefined ||\n structuredValueKind(shape[key], zod) !== 'array'\n ) return [];\n return [{\n env: configuration.env,\n name: configuration.name ?? toCliKey(key),\n short: configuration.short,\n }];\n });\n const optionNames = new Set(Object.entries(configurations).map(([key, configuration]) => (\n configuration.name ?? toCliKey(key)\n )));\n const negations = settings.booleanNegations === false\n ? []\n : Object.entries(configurations).flatMap(([key, configuration]) => {\n const name = configuration.name ?? toCliKey(key);\n if (\n configuration.parse !== undefined ||\n name.startsWith('no-') ||\n optionNames.has(`no-${name}`) ||\n !negatableValue(shape[key], zod)\n ) return [];\n return [{ name }];\n });\n return {\n adapted: object.safeExtend(fields) as ZodObject<ZodShape>,\n bindings,\n negations,\n };\n}\n\nfunction addBooleanNegations(\n route: CliCommand,\n negations: readonly OptionNegation[],\n): void {\n const command = route as RuntimeCliCommand;\n if (typeof command.option !== 'function') return;\n for (const negation of negations) {\n const flag = `--no-${negation.name}`;\n if (command.options?.some(option => option.long === flag)) continue;\n command.option(flag, `Negate --${negation.name}.`);\n }\n}\n\nfunction negatableValue(\n schema: ZodType | undefined,\n zod: ZodNamespace,\n seen = new Set<ZodType>(),\n): boolean {\n if (!schema || seen.has(schema)) return false;\n seen.add(schema);\n if (schema instanceof zod.ZodBoolean) return true;\n if (schema instanceof zod.ZodLiteral) return schema.values.has(false);\n if (schema instanceof zod.ZodUnion) {\n return (schema.options as readonly ZodType[])\n .some(option => negatableValue(option, zod, seen));\n }\n if (schema instanceof zod.ZodPipe) {\n return negatableValue(schema.in as ZodType, zod, seen);\n }\n const wrapper = schema as ZodType & { unwrap?: () => ZodType };\n return typeof wrapper.unwrap === 'function'\n ? negatableValue(wrapper.unwrap(), zod, seen)\n : false;\n}\n\nfunction objectSchema(schema: ObjectSchema): ZodObject<ZodShape> {\n let candidate: unknown = schema;\n while (candidate && typeof candidate === 'object') {\n if ('shape' in candidate) {\n const shape = candidate.shape;\n if (shape && typeof shape === 'object') return candidate as ZodObject<ZodShape>;\n }\n if (!('unwrap' in candidate) || typeof candidate.unwrap !== 'function') break;\n candidate = candidate.unwrap();\n }\n throw new TypeError('createOptionKit requires a Zod object schema, optionally wrapped as readonly.');\n}\n\nfunction resolveEnvironmentPrefix(\n configured: string | false | undefined,\n projectName: string,\n): string | false {\n if (configured === false) return false;\n const translated = toEnvironmentKey(configured ?? projectName);\n if (!translated) throw new TypeError('The environment prefix must contain a letter or number.');\n return `${translated}_`;\n}\n\nfunction toCliKey(value: string): string {\n return value\n .replace(/([a-z0-9])([A-Z])/gu, '$1-$2')\n .replace(/([A-Z])([A-Z][a-z])/gu, '$1-$2')\n .toLowerCase();\n}\n\nfunction optionConfigurations<Schema extends ObjectSchema>(\n shape: ZodShape,\n environmentPrefix: string | false,\n zod: ZodNamespace,\n settings: CreateOptionKitSettings,\n registered: Readonly<Record<string, RegisteredFieldConfiguration | undefined>> = {},\n): Record<string, ResolvedOptionConfiguration> {\n const keys = Object.keys(shape).filter(key => registered[key]?.kind !== 'argument');\n const overrides = Object.fromEntries(keys.map(key => {\n const existing = registered[key];\n const existingOption = existing?.kind === 'option'\n ? Object.fromEntries(Object.entries(existing).filter(([name]) => name !== 'kind'))\n : {};\n return [key, { ...settings.fields?.[key], ...existingOption }];\n })) as Record<string, OptionConfiguration | undefined>;\n const shorts = generatedShortFlags(keys, overrides, settings);\n\n return Object.fromEntries(keys.map(key => {\n const override = overrides?.[key];\n const generated: ResolvedOptionConfiguration = {};\n if (environmentPrefix !== false && override?.env !== false) {\n generated.env = override?.env ?? `${environmentPrefix}${toEnvironmentKey(key)}`;\n const kind = structuredValueKind(shape[key], zod);\n if (kind === 'object' && !override?.parse) generated.parse = structuredValueParser(kind);\n }\n if (override?.short !== false && (override?.short ?? shorts[key])) {\n generated.short = typeof override?.short === 'string'\n ? normalizeShort(override.short, key)\n : shorts[key];\n }\n if (override) {\n const { env: _env, short: _short, parse, ...rest } = override;\n Object.assign(generated, rest);\n if (parse) generated.parse = parse as InternalValueParser;\n }\n return [key, generated];\n }));\n}\n\nfunction registeredFieldConfiguration(\n schema: ZodType,\n zod: ZodNamespace,\n seen = new Set<ZodType>(),\n): RegisteredFieldConfiguration | undefined {\n if (seen.has(schema)) return undefined;\n seen.add(schema);\n const metadata = zod.globalRegistry.get(schema) as Record<string, unknown> | undefined;\n const registered = metadata?.fireargs;\n if (registered && typeof registered === 'object' && 'kind' in registered) {\n const kind = (registered as { kind?: unknown }).kind;\n if (kind === 'argument' || kind === 'option') {\n return registered as RegisteredFieldConfiguration;\n }\n }\n if (schema instanceof zod.ZodPipe) {\n return registeredFieldConfiguration(schema.in as ZodType, zod, seen);\n }\n const wrapper = schema as ZodType & { unwrap?: () => ZodType };\n return typeof wrapper.unwrap === 'function'\n ? registeredFieldConfiguration(wrapper.unwrap(), zod, seen)\n : undefined;\n}\n\n/**\n * Fireargs handles structured argv values, but an environment variable reaches\n * Commander as one string. Detect only unambiguous JSON containers so scalar\n * coercion and Fireargs' native parsing remain untouched.\n */\nfunction structuredValueKind(\n schema: ZodType | undefined,\n zod: ZodNamespace,\n seen = new Set<ZodType>(),\n): StructuredValueKind | undefined {\n if (!schema || seen.has(schema)) return undefined;\n seen.add(schema);\n\n if (schema instanceof zod.ZodArray || schema instanceof zod.ZodTuple) return 'array';\n if (schema instanceof zod.ZodObject || schema instanceof zod.ZodRecord) return 'object';\n if (schema instanceof zod.ZodUnion) {\n const kinds = schema.options.map(option => (\n structuredValueKind(option as ZodType, zod, new Set(seen))\n )).filter((kind): kind is StructuredValueKind => kind !== undefined);\n const unique = new Set(kinds);\n return unique.size === 1 ? kinds[0] : undefined;\n }\n if (schema instanceof zod.ZodPipe) {\n return structuredValueKind(schema.in as ZodType, zod, seen);\n }\n\n const wrapper = schema as ZodType & { unwrap?: () => ZodType };\n return typeof wrapper.unwrap === 'function'\n ? structuredValueKind(wrapper.unwrap(), zod, seen)\n : undefined;\n}\n\nfunction structuredValueParser(kind: StructuredValueKind): InternalValueParser {\n return ((value: string): unknown => decodeStructuredValue(value, kind)) as InternalValueParser;\n}\n\nfunction decodeStructuredValue(value: string, kind: StructuredValueKind): unknown {\n try {\n return JSON.parse(value) as unknown;\n } catch {\n // A non-JSON string may still be useful to an array schema or a union.\n }\n return kind === 'array' ? splitArrayValue(value) ?? value : value;\n}\n\nfunction wrapParseBoundary(\n route: CliRoute,\n bindings: (\n argv: readonly string[] | undefined,\n options: CliParseOptions | undefined,\n ) => readonly StructuredEnvironmentBinding[],\n errorFormatter: ((error: unknown) => string) | undefined,\n): void {\n const parse = route.parseAsync.bind(route);\n route.parseAsync = async (argv, options) => {\n const active = bindings(argv, options);\n try {\n if (!active.length) return await parse(argv, options);\n\n const effectiveArgv = [...(argv ?? process.argv)];\n const userOffset = argvOffset(options);\n const userArguments = effectiveArgv.slice(userOffset);\n const insertion = effectiveArgv.indexOf('--', userOffset);\n const injected: string[] = [];\n const previous = new Map<string, string>();\n\n for (const binding of active) {\n const value = process.env[binding.env];\n if (value === undefined) continue;\n previous.set(binding.env, value);\n delete process.env[binding.env];\n if (hasOption(userArguments, binding)) continue;\n const decoded = decodeStructuredValue(value, 'array');\n const values = Array.isArray(decoded) ? decoded : [decoded];\n for (const item of values) injected.push(`--${binding.name}=${stringifyCliValue(item)}`);\n }\n\n effectiveArgv.splice(insertion === -1 ? effectiveArgv.length : insertion, 0, ...injected);\n try {\n return await parse(effectiveArgv, options);\n } finally {\n for (const [name, value] of previous) process.env[name] = value;\n }\n } catch (error) {\n if (!errorFormatter) throw error;\n const command = route as RuntimeCliCommand;\n const writer = command.configureOutput?.().writeErr ?? (value => process.stderr.write(value));\n writer(`${errorFormatter(error)}\\n`);\n process.exitCode = 1;\n return undefined;\n }\n };\n}\n\nfunction selectedLeaf(\n program: RuntimeRoute,\n argv: readonly string[] | undefined,\n options: CliParseOptions | undefined,\n): CliRoute | undefined {\n const args = (argv ?? process.argv).slice(argvOffset(options));\n let current = program;\n let offset = 0;\n while (current.commands?.length) {\n let selected: RuntimeRoute | undefined;\n let selectedAt = -1;\n for (let index = offset; index < args.length; index += 1) {\n const token = args[index];\n if (!token || token.startsWith('-')) continue;\n selected = current.commands.find(command => (\n command.name?.() === token || command.aliases?.().includes(token)\n ));\n if (selected) {\n selectedAt = index;\n break;\n }\n }\n if (!selected) return undefined;\n current = selected;\n offset = selectedAt + 1;\n }\n return current;\n}\n\nfunction argvOffset(options: CliParseOptions | undefined): number {\n if (options?.from === 'user') return 0;\n if (options?.from === 'electron') return 1;\n return 2;\n}\n\nfunction hasOption(\n args: readonly string[],\n binding: StructuredEnvironmentBinding,\n): boolean {\n const long = `--${binding.name}`;\n const short = binding.short ? `-${binding.short}` : undefined;\n return args.some(argument => (\n argument === long ||\n argument.startsWith(`${long}=`) ||\n (short !== undefined && (argument === short || argument.startsWith(`${short}=`)))\n ));\n}\n\nfunction stringifyCliValue(value: unknown): string {\n if (typeof value === 'string') return value;\n if (value === null || typeof value !== 'object') return String(value);\n return JSON.stringify(value);\n}\n\n/** Split comma- or whitespace-delimited shell words without interpreting operators. */\nfunction splitArrayValue(value: string): string[] | undefined {\n const result: string[] = [];\n let token = '';\n let quote: '\"' | \"'\" | undefined;\n let escaped = false;\n let started = false;\n\n for (const character of value) {\n if (escaped) {\n token += character;\n escaped = false;\n started = true;\n } else if (character === '\\\\') {\n escaped = true;\n started = true;\n } else if (quote) {\n if (character === quote) quote = undefined;\n else token += character;\n started = true;\n } else if (character === '\"' || character === \"'\") {\n quote = character;\n started = true;\n } else if (character === ',' || /\\s/u.test(character)) {\n if (started) result.push(token);\n token = '';\n started = false;\n } else {\n token += character;\n started = true;\n }\n }\n\n if (quote || escaped) return undefined;\n if (started) result.push(token);\n return result;\n}\n\nfunction generatedShortFlags(\n keys: readonly string[],\n overrides: Record<string, OptionConfiguration | undefined> | undefined,\n settings: CreateOptionKitSettings,\n): Record<string, string | undefined> {\n if (settings.shortFlags === false) return {};\n const reserved = new Set(['h', ...(settings.reservedShortFlags ?? [])].map(value => value.toLowerCase()));\n const explicit = new Map<string, string>();\n\n for (const key of keys) {\n const value = overrides?.[key]?.short;\n if (typeof value !== 'string') continue;\n const normalized = normalizeShort(value, key);\n const owner = explicit.get(normalized);\n if (owner) throw new TypeError(`Short flag -${normalized} is configured for both ${owner} and ${key}.`);\n if (reserved.has(normalized)) throw new TypeError(`Short flag -${normalized} is reserved.`);\n explicit.set(normalized, key);\n }\n\n const candidates = new Map<string, string[]>();\n for (const key of keys) {\n if (overrides?.[key]?.short !== undefined) continue;\n const longName = overrides?.[key]?.name ?? key;\n const candidate = toEnvironmentKey(longName).charAt(0).toLowerCase();\n if (!candidate || reserved.has(candidate) || explicit.has(candidate)) continue;\n candidates.set(candidate, [...(candidates.get(candidate) ?? []), key]);\n }\n\n const result: Record<string, string | undefined> = {};\n for (const [candidate, owners] of candidates) {\n if (owners.length === 1) result[owners[0] as string] = candidate;\n }\n return result;\n}\n\nfunction normalizeShort(value: string, key: string): string {\n const normalized = value.replace(/^-+/u, '').toLowerCase();\n if (!/^[a-z0-9]$/u.test(normalized)) {\n throw new TypeError(`Short flag for ${key} must be one letter or digit.`);\n }\n return normalized;\n}\n\nfunction toEnvironmentKey(value: string): string {\n return value\n .replace(/([a-z0-9])([A-Z])/gu, '$1_$2')\n .replace(/^@/u, '')\n .replace(/[^a-zA-Z0-9]+/gu, '_')\n .replace(/^_+|_+$/gu, '')\n .toUpperCase();\n}\n"]}
|
package/dist/resolve.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,4EAA4E;AAC5E,MAAM,UAAU,cAAc,CAAC,WAAmB,EAAE,WAAmB;IACrE,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IACrF,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,eAAe,CAAC,KAAK,CAAC;YAAE,OAAO,uBAAuB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACrF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,0FAA0F;AAC1F,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,WAAmB,EACnB,WAAmB;IAEnB,MAAM,QAAQ,GAAG,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAC1D,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,OAAO,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAoB,CAAC;AACjE,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,CAAC;AACxF,CAAC;AAED,mFAAmF;AACnF,SAAS,uBAAuB,CAAC,WAAmB,EAAE,WAAmB;IACvE,IAAI,CAAC,wCAAwC,CAAC,IAAI,CAAC,WAAW,CAAC;QAAE,OAAO,SAAS,CAAC;IAClF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAClG,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC1D,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAI7D,CAAC;IACF,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;WACrC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;WAC5B,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC;WAC1B,YAAY,CAAC;IAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAChD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACrD,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC1D,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS;QAAE,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9D,KAAK,MAAM,SAAS,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC;QACjE,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/C,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;IAChC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC","sourcesContent":["import { existsSync, readFileSync } from 'node:fs';\nimport { createRequire } from 'node:module';\nimport path from 'node:path';\nimport { pathToFileURL } from 'node:url';\n\n/** Resolve a package from an explicit package root without importing it. */\nexport function resolvePackage(packageName: string, packageRoot: string): string | undefined {\n const resolver = createRequire(path.join(path.resolve(packageRoot), 'package.json'));\n try {\n return resolver.resolve(packageName);\n } catch (error) {\n if (isMissingModule(error)) return resolveInstalledPackage(packageName, packageRoot);\n throw error;\n }\n}\n\n/** Import a package only when it is already resolvable from the supplied package root. */\nexport async function importPackageIfAvailable<Module = unknown>(\n packageName: string,\n packageRoot: string,\n): Promise<Module | undefined> {\n const resolved = resolvePackage(packageName, packageRoot);\n if (!resolved) return undefined;\n return import(pathToFileURL(resolved).href) as Promise<Module>;\n}\n\nfunction isMissingModule(error: unknown): boolean {\n return error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND';\n}\n\n/** Bypass Node's cached miss after a package was installed during this process. */\nfunction resolveInstalledPackage(packageName: string, packageRoot: string): string | undefined {\n if (!/^(?:@[a-z0-9._~-]+\\/)?[a-z0-9._~-]+$/iu.test(packageName)) return undefined;\n const directory = path.join(path.resolve(packageRoot), 'node_modules', ...packageName.split('/'));\n const manifestPath = path.join(directory, 'package.json');\n if (!existsSync(manifestPath)) return undefined;\n const manifest = JSON.parse(readFileSync(manifestPath, 'utf8')) as {\n exports?: unknown;\n main?: unknown;\n module?: unknown;\n };\n const entry = rootExport(manifest.exports)\n ?? stringValue(manifest.module)\n ?? stringValue(manifest.main)\n ?? './index.js';\n const resolved = path.resolve(directory, entry);\n return existsSync(resolved) ? resolved : undefined;\n}\n\nfunction rootExport(value: unknown): string | undefined {\n if (typeof value === 'string') return value;\n if (!value || typeof value !== 'object') return undefined;\n const record = value as Record<string, unknown>;\n if (record['.'] !== undefined) return rootExport(record['.']);\n for (const condition of ['import', 'node', 'default', 'require']) {\n const resolved = rootExport(record[condition]);\n if (resolved) return resolved;\n }\n return undefined;\n}\n\nfunction stringValue(value: unknown): string | undefined {\n return typeof value === 'string' ? value : undefined;\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,32 +1,45 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "optionkit",
|
|
3
|
-
"version": "0.0.7",
|
|
4
3
|
"description": "Turn Zod configuration schemas into zero-setup CLI options.",
|
|
5
|
-
"
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
".": {
|
|
10
|
-
"types": "./dist/index.d.ts",
|
|
11
|
-
"import": "./dist/index.js",
|
|
12
|
-
"default": "./dist/index.js"
|
|
13
|
-
}
|
|
4
|
+
"repository": {
|
|
5
|
+
"type": "git",
|
|
6
|
+
"url": "https://github.com/regbo/lfp-js.git",
|
|
7
|
+
"directory": "packages/optionkit"
|
|
14
8
|
},
|
|
15
|
-
"files": [
|
|
16
|
-
"dist/",
|
|
17
|
-
"LICENSE",
|
|
18
|
-
"README.md"
|
|
19
|
-
],
|
|
20
9
|
"scripts": {
|
|
21
|
-
"build": "
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
10
|
+
"build": "projen build",
|
|
11
|
+
"compile": "projen compile",
|
|
12
|
+
"default": "projen default",
|
|
13
|
+
"package": "projen package",
|
|
14
|
+
"post-compile": "projen post-compile",
|
|
15
|
+
"pre-compile": "projen pre-compile",
|
|
16
|
+
"test": "projen test",
|
|
17
|
+
"test:packed": "projen test:packed",
|
|
18
|
+
"typecheck": "projen typecheck",
|
|
19
|
+
"verify": "projen verify",
|
|
20
|
+
"watch": "projen watch",
|
|
21
|
+
"projen": "projen",
|
|
22
|
+
"pack:release": "bun pm pack --ignore-scripts --destination ../../dist/packages --quiet",
|
|
23
|
+
"publish:release": "npm publish ../../dist/packages/optionkit-0.8.1.tgz --access public --tag latest --provenance"
|
|
24
|
+
},
|
|
25
|
+
"author": {
|
|
26
|
+
"name": "optionkit contributors",
|
|
27
|
+
"organization": false
|
|
28
|
+
},
|
|
29
|
+
"devDependencies": {
|
|
30
|
+
"@types/bun": "^1.4.4",
|
|
31
|
+
"@types/node": "^26.6.6",
|
|
32
|
+
"clean-stack": "^7.0.0",
|
|
33
|
+
"fireargs": "^0.6.2",
|
|
34
|
+
"typescript": "^5.9.3",
|
|
35
|
+
"zod": "^4.6.7"
|
|
36
|
+
},
|
|
37
|
+
"peerDependencies": {
|
|
38
|
+
"fireargs": "^0.6.2",
|
|
39
|
+
"zod": "^4.6.7"
|
|
40
|
+
},
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"@antfu/install-pkg": "^2.1.0"
|
|
30
43
|
},
|
|
31
44
|
"keywords": [
|
|
32
45
|
"args",
|
|
@@ -36,34 +49,36 @@
|
|
|
36
49
|
"fireargs",
|
|
37
50
|
"zod"
|
|
38
51
|
],
|
|
52
|
+
"engines": {
|
|
53
|
+
"node": ">=18"
|
|
54
|
+
},
|
|
55
|
+
"main": "./dist/index.js",
|
|
39
56
|
"license": "MIT",
|
|
40
|
-
"
|
|
41
|
-
|
|
42
|
-
"
|
|
57
|
+
"homepage": "https://github.com/regbo/lfp-js/tree/main/packages/optionkit#readme",
|
|
58
|
+
"publishConfig": {
|
|
59
|
+
"access": "public",
|
|
60
|
+
"provenance": true,
|
|
61
|
+
"registry": "https://registry.npmjs.org"
|
|
43
62
|
},
|
|
63
|
+
"version": "0.8.1",
|
|
44
64
|
"bugs": {
|
|
45
|
-
"url": "https://github.com/regbo/
|
|
46
|
-
},
|
|
47
|
-
"homepage": "https://github.com/regbo/optionkit#readme",
|
|
48
|
-
"workspaces": [
|
|
49
|
-
"."
|
|
50
|
-
],
|
|
51
|
-
"catalog": {
|
|
52
|
-
"clean-stack": "^7.0.0",
|
|
53
|
-
"fireargs": "^0.6.2",
|
|
54
|
-
"zod": "^4.6.7"
|
|
65
|
+
"url": "https://github.com/regbo/lfp-js/issues"
|
|
55
66
|
},
|
|
67
|
+
"types": "./dist/index.d.ts",
|
|
56
68
|
"sideEffects": false,
|
|
57
|
-
"
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
"fireargs": "catalog:",
|
|
65
|
-
"zod": "catalog:"
|
|
69
|
+
"type": "module",
|
|
70
|
+
"exports": {
|
|
71
|
+
".": {
|
|
72
|
+
"types": "./dist/index.d.ts",
|
|
73
|
+
"import": "./dist/index.js",
|
|
74
|
+
"default": "./dist/index.js"
|
|
75
|
+
}
|
|
66
76
|
},
|
|
77
|
+
"files": [
|
|
78
|
+
"dist/",
|
|
79
|
+
"LICENSE",
|
|
80
|
+
"README.md"
|
|
81
|
+
],
|
|
67
82
|
"peerDependenciesMeta": {
|
|
68
83
|
"fireargs": {
|
|
69
84
|
"optional": true
|
|
@@ -72,18 +87,5 @@
|
|
|
72
87
|
"optional": true
|
|
73
88
|
}
|
|
74
89
|
},
|
|
75
|
-
"
|
|
76
|
-
"@types/bun": "^1.4.4",
|
|
77
|
-
"@types/node": "^26.6.6",
|
|
78
|
-
"clean-stack": "catalog:",
|
|
79
|
-
"fireargs": "catalog:",
|
|
80
|
-
"typescript": "^7.0.2",
|
|
81
|
-
"zod": "catalog:"
|
|
82
|
-
},
|
|
83
|
-
"packageManager": "bun@1.4.4",
|
|
84
|
-
"publishConfig": {
|
|
85
|
-
"access": "public",
|
|
86
|
-
"provenance": true,
|
|
87
|
-
"registry": "https://registry.npmjs.org"
|
|
88
|
-
}
|
|
90
|
+
"//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"bunx projen\"."
|
|
89
91
|
}
|