UNPKG

execli

Version:

Generate task-oriented CLIs declaratively

46 lines 1.49 kB
export const getUserContext = (context) => { const { // @ts-expect-error: Private. $0: _0, // @ts-expect-error: Private. _: _1, // @ts-expect-error: Private. "dry-run": _2, dryRun, from, only, secrets, skip, tag, until, ...userContext } = context; // @ts-expect-error: The context has been stripped of the private properties. return userContext; }; export const createContextHolder = (initialContext) => { let context = { ...initialContext, secrets: initialContext.secrets || [] }; const contextHolder = { add(addedContext) { const { debug: _debug, ...cleanedAddedContext } = getUserContext( // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-expect-error addedContext); context = { ...context, ...cleanedAddedContext, }; }, addSecret(secret) { context = { ...context, secrets: [...context.secrets, secret] }; }, copy() { return createContextHolder(context); }, get() { return context; }, }; return contextHolder; }; export const hideSecrets = ({ secrets }, text) => { let safeText = text; for (const secret of secrets) { safeText = safeText .split(secret) .join("*".repeat(Math.min(20, secret.length))); } return safeText; }; //# sourceMappingURL=context.js.map