UNPKG

@mountainpass/hooked-cli

Version:
79 lines (78 loc) 2.64 kB
export const checkIfRecognisedAsOldScript = (script) => { // if old script type, suggest a fix... if (typeof script.$stdin === 'string') { throw new Error('Old script format detected. Please use $ask instead of $stdin.'); } }; export const hasEnvScript = (script) => { return typeof script !== 'undefined' && isDefined(script.$env); }; export const isJobsSerialScript = (script) => { return Array.isArray(script.$jobs_serial); }; export const isWritePathScript = (script) => { return typeof script.$path === 'string'; }; export const isCmdScript = (script) => { return typeof script.$cmd === 'string'; }; export const isDockerCmdScript = (script) => { return typeof script.$cmd === 'string' && typeof script.$image === 'string'; }; export const isSSHCmdScript = (script) => { return typeof script.$cmd === 'string' && typeof script.$ssh === 'string'; }; export const isEnvScript = (script) => { return typeof script.$env !== 'undefined'; }; export const isResolveScript = (script) => { return typeof script.$resolve === 'string'; }; export const isStdinScript = (script) => { return typeof script.$ask === 'string'; }; export const isInternalScript = (script) => { return typeof script.$internal === 'function'; }; export const isScript = (script) => { return (typeof script === 'object' || typeof script === 'function') && script !== null && (isWritePathScript(script) || isCmdScript(script) || isJobsSerialScript(script) || isStdinScript(script) || isEnvScript(script) || isResolveScript(script) || isInternalScript(script)); }; export const isStdinScriptFieldsMapping = (script) => { return typeof script !== 'undefined' && isString(script.name) && isString(script.value) && (isString(script.short) || typeof script.short === 'undefined'); }; export const isUndefined = (o) => typeof o === 'undefined'; export const isDefined = (o) => { return typeof o !== 'undefined' && o !== null; }; export const isDefinedAny = (o) => { return typeof o !== 'undefined' && o !== null; }; export const isString = (o) => { return typeof o === 'string'; }; export const isNumber = (o) => { return typeof o === 'number'; }; export const isBoolean = (o) => { return typeof o === 'boolean'; }; export const isObject = (o) => { return typeof o === 'object'; }; export const isFunction = (o) => { return typeof o === 'function'; }; export const sortCaseInsensitive = (a, b) => { return a.localeCompare(b, undefined, { sensitivity: 'base' }); };