Comparing version 2.12.0 to 2.12.1
{ | ||
"name": "swiss-ak", | ||
"version": "2.12.0", | ||
"version": "2.12.1", | ||
"author": "Jack Cannon <jackc@annon.co.uk> (http://c.annon.co.uk/)", | ||
@@ -5,0 +5,0 @@ "license": "MIT", |
import { ms } from './times'; | ||
import { KeysOnly, Numbered, OfType } from './types'; | ||
import { noChalk, noWrap } from './fakeChalk'; | ||
import { TimeTools } from './TimeTools'; | ||
import { safe } from './safe'; | ||
import { fn } from './fn'; | ||
// ANSI escape codes work in both the terminal and the browser console | ||
const dim = (text: string) => `\u001b[2m${text}\u001b[22m`; | ||
const bold = (text: string) => `"\u001b[1m${text}\u001b[22m"`; | ||
//<!-- DOCS: 900 --> | ||
@@ -185,3 +189,3 @@ /**<!-- DOCS: timer ##! --> | ||
* ```typescript | ||
* const timer = getTimer('Example', false, chalk.red, chalk, { | ||
* const timer = getTimer('Example', false, colr.red, { | ||
* TOTAL: 'TOTAL', | ||
@@ -213,4 +217,3 @@ * INTRO: 'Action 1', | ||
* @param {boolean} [verbose=false] | ||
* @param {any} [wrapperFn=noWrap] | ||
* @param {any} [chalk=noChalk] | ||
* @param {any} [wrapperFn=fn.noact] | ||
* @param {TName} [displayNames] | ||
@@ -222,4 +225,3 @@ * @returns {any} | ||
verbose: boolean = false, | ||
wrapperFn: any = noWrap, | ||
chalk: any = noChalk, | ||
wrapperFn: any = fn.noact, | ||
displayNames?: TName | ||
@@ -230,17 +232,3 @@ ): ITimer<TName> & KeysOnly<TName> => { | ||
verbose: safe.bool(verbose, false), | ||
wrapperFn: safe.func(wrapperFn, noWrap), | ||
chalk: safe.objWith( | ||
chalk, | ||
{ | ||
bold: { | ||
fallback: noWrap, | ||
safeFn: (v, f) => safe.func(v, f) | ||
}, | ||
dim: { | ||
fallback: noWrap, | ||
safeFn: (v, f) => safe.func(v, f) | ||
} | ||
}, | ||
false | ||
), | ||
wrapperFn: safe.func(wrapperFn, fn.noact), | ||
displayNames: safe.obj(displayNames) | ||
@@ -273,3 +261,3 @@ }; | ||
const line = args.chalk.bold(prefix + lineStart) + lineEnd; | ||
const line = bold(prefix + lineStart) + lineEnd; | ||
return { | ||
@@ -335,3 +323,3 @@ line: args.wrapperFn(line), | ||
addOutput(''); | ||
addOutput(args.wrapperFn(args.chalk.bold([args2.prefix, args.name, 'Times:'].filter((x) => x && x.trim()).join(' ')))); | ||
addOutput(args.wrapperFn(bold([args2.prefix, args.name, 'Times:'].filter((x) => x && x.trim()).join(' ')))); | ||
@@ -363,3 +351,3 @@ const displayNames = [...labels, ...Object.keys(names)].map((label) => dispNames[label] || label); | ||
if (cEntries.length) { | ||
addOutput(args.wrapperFn(args.chalk.dim(' ' + '⎯'.repeat(longest)))); | ||
addOutput(args.wrapperFn(dim(' ' + '⎯'.repeat(longest)))); | ||
for (let { label, duration } of cEntries) { | ||
@@ -371,3 +359,3 @@ addLogLine(label, ' ', nameColLength, duration); | ||
addOutput(args.wrapperFn(args.chalk.dim(' ' + '⎯'.repeat(longest)))); | ||
addOutput(args.wrapperFn(dim(' ' + '⎯'.repeat(longest)))); | ||
addLogLine('TOTAL', ' ', nameColLength); | ||
@@ -374,0 +362,0 @@ |
@@ -142,32 +142,32 @@ import { safe as safeOriginal } from '../'; | ||
num: | ||
(defaultValue: number, isInt: boolean = false, min?: number, max?: number, fallback: number = 0) => | ||
(input: number = defaultValue): number => | ||
(defaultValue?: number, isInt: boolean = false, min?: number, max?: number, fallback: number = 0) => | ||
(input: number = defaultValue || (undefined as unknown as number)): number => | ||
safeOriginal.num(input, isInt, min, max, fallback), | ||
str: | ||
(defaultValue: string, allowBasicStringify: boolean = false, fallback: string = '') => | ||
(input: string = defaultValue): string => | ||
(defaultValue?: string, allowBasicStringify: boolean = false, fallback: string = '') => | ||
(input: string = defaultValue || (undefined as unknown as string)): string => | ||
safeOriginal.str(input, allowBasicStringify, fallback), | ||
bool: | ||
(defaultValue: boolean, fallback: boolean = false) => | ||
(input: boolean = defaultValue): boolean => | ||
(defaultValue?: boolean, fallback: boolean = false) => | ||
(input: boolean = defaultValue || (undefined as unknown as boolean)): boolean => | ||
safeOriginal.bool(input, fallback), | ||
func: | ||
<T extends Function>(defaultValue: T, fallback: T = (() => {}) as unknown as T) => | ||
(input: T = defaultValue): T => | ||
<T extends Function>(defaultValue?: T, fallback: T = (() => {}) as unknown as T) => | ||
(input: T = defaultValue || (undefined as unknown as T)): T => | ||
safeOriginal.func(input, fallback), | ||
obj: | ||
<T extends unknown>(defaultValue: T, allowArrays: boolean = false, fallback: T = {} as T) => | ||
(input: T = defaultValue): T => | ||
<T extends unknown>(defaultValue?: T, allowArrays: boolean = false, fallback: T = {} as T) => | ||
(input: T = defaultValue || (undefined as unknown as T)): T => | ||
safeOriginal.obj(input, allowArrays, fallback), | ||
objWith: | ||
<T extends unknown>(defaultValue: T, objConfig: safeOriginal.ObjWithConfig<T>, allowComposition: boolean = true) => | ||
(input: T = defaultValue): T => | ||
<T extends unknown>(defaultValue?: T, objConfig: safeOriginal.ObjWithConfig<T> = {}, allowComposition: boolean = true) => | ||
(input: T = defaultValue || (undefined as unknown as T)): T => | ||
safeOriginal.objWith(input, objConfig, allowComposition), | ||
arr: | ||
<T extends unknown>(defaultValue: T[], fallback: T[] = []) => | ||
(input: T[] = defaultValue): T[] => | ||
<T extends unknown>(defaultValue?: T[], fallback: T[] = []) => | ||
(input: T[] = defaultValue || (undefined as unknown as T[])): T[] => | ||
safeOriginal.arr(input, fallback), | ||
prop: | ||
(defaultValue: string | number, fallback: string | number = '') => | ||
(input: string | number = defaultValue): string | number => | ||
(defaultValue?: string | number, fallback: string | number = '') => | ||
(input: string | number = defaultValue || (undefined as unknown as string | number)): string | number => | ||
safeOriginal.prop(input, fallback), | ||
@@ -178,3 +178,3 @@ | ||
( | ||
defaultValue: number[], | ||
defaultValue?: number[], | ||
isInt: boolean = false, | ||
@@ -188,7 +188,7 @@ min?: number, | ||
) => | ||
(input: number[] = defaultValue): number[] => | ||
(input: number[] = defaultValue || (undefined as unknown as number[])): number[] => | ||
safeOriginal.arrOf.num(input, isInt, min, max, fallback, fallbackArr, arrMinLength, arrMaxLength), | ||
str: | ||
( | ||
defaultValue: string[], | ||
defaultValue?: string[], | ||
allowStringify: boolean = false, | ||
@@ -200,15 +200,15 @@ fallback?: string, | ||
) => | ||
(input: string[] = defaultValue): string[] => | ||
(input: string[] = defaultValue || (undefined as unknown as string[])): string[] => | ||
safeOriginal.arrOf.str(input, allowStringify, fallback, fallbackArr, arrMinLength, arrMaxLength), | ||
bool: | ||
(defaultValue: boolean[], fallback?: boolean, fallbackArr: boolean[] = [], arrMinLength: number = 0, arrMaxLength: number = Infinity) => | ||
(input: boolean[] = defaultValue): boolean[] => | ||
(defaultValue?: boolean[], fallback?: boolean, fallbackArr: boolean[] = [], arrMinLength: number = 0, arrMaxLength: number = Infinity) => | ||
(input: boolean[] = defaultValue || (undefined as unknown as boolean[])): boolean[] => | ||
safeOriginal.arrOf.bool(input, fallback, fallbackArr, arrMinLength, arrMaxLength), | ||
func: | ||
<T extends Function>(defaultValue: T[], fallback?: T, fallbackArr: T[] = [], arrMinLength: number = 0, arrMaxLength: number = Infinity) => | ||
(input: T[] = defaultValue): T[] => | ||
<T extends Function>(defaultValue?: T[], fallback?: T, fallbackArr: T[] = [], arrMinLength: number = 0, arrMaxLength: number = Infinity) => | ||
(input: T[] = defaultValue || (undefined as unknown as T[])): T[] => | ||
safeOriginal.arrOf.func(input, fallback, fallbackArr, arrMinLength, arrMaxLength), | ||
obj: | ||
<T extends unknown>( | ||
defaultValue: T[], | ||
defaultValue?: T[], | ||
allowArrays: boolean = false, | ||
@@ -220,8 +220,8 @@ fallback?: T, | ||
) => | ||
(input: T[] = defaultValue): T[] => | ||
(input: T[] = defaultValue || (undefined as unknown as T[])): T[] => | ||
safeOriginal.arrOf.obj(input, allowArrays, fallback, fallbackArr, arrMinLength, arrMaxLength), | ||
objWith: | ||
<T extends unknown>( | ||
defaultValue: T[], | ||
objConfig: safeOriginal.ObjWithConfig<T>, | ||
defaultValue?: T[], | ||
objConfig: safeOriginal.ObjWithConfig<T> = {}, | ||
allowComposition: boolean = true, | ||
@@ -232,11 +232,11 @@ fallbackArr: T[] = [], | ||
) => | ||
(input: T[] = defaultValue): T[] => | ||
(input: T[] = defaultValue || (undefined as unknown as T[])): T[] => | ||
safeOriginal.arrOf.objWith(input, objConfig, allowComposition, fallbackArr, arrMinLength, arrMaxLength), | ||
arr: | ||
<T extends unknown>(defaultValue: T[][], fallback?: T[], fallbackArr: T[][] = [], arrMinLength: number = 0, arrMaxLength: number = Infinity) => | ||
(input: T[][] = defaultValue): T[][] => | ||
<T extends unknown>(defaultValue?: T[][], fallback?: T[], fallbackArr: T[][] = [], arrMinLength: number = 0, arrMaxLength: number = Infinity) => | ||
(input: T[][] = defaultValue || (undefined as unknown as T[][])): T[][] => | ||
safeOriginal.arrOf.arr(input, fallback, fallbackArr, arrMinLength, arrMaxLength), | ||
prop: | ||
( | ||
defaultValue: (string | number)[], | ||
defaultValue?: (string | number)[], | ||
fallback?: string | number, | ||
@@ -247,3 +247,3 @@ fallbackArr: (string | number)[] = [], | ||
) => | ||
(input: (string | number)[] = defaultValue): (string | number)[] => | ||
(input: (string | number)[] = defaultValue || (undefined as unknown as (string | number)[])): (string | number)[] => | ||
safeOriginal.arrOf.prop(input, fallback, fallbackArr, arrMinLength, arrMaxLength) | ||
@@ -250,0 +250,0 @@ } |
@@ -69,23 +69,4 @@ import * as swissak from '../'; | ||
kitchenSink.toEqual( | ||
'chalk', | ||
'displayNames', | ||
(v) => getTimer(undefined, undefined, undefined, v as any).names, | ||
kitchenSink.safe.objWith( | ||
undefined, | ||
{ | ||
bold: { | ||
fallback: (x) => x, | ||
safeFn: (v, f) => kitchenSink.safe.func(undefined, f)(v) | ||
}, | ||
dim: { | ||
fallback: (x) => x, | ||
safeFn: (v, f) => kitchenSink.safe.func(undefined, f)(v) | ||
} | ||
}, | ||
false | ||
), | ||
kitchenSink.samples.general | ||
); | ||
kitchenSink.toEqual( | ||
'displayNames', | ||
(v) => getTimer(undefined, undefined, undefined, undefined, v as any).names, | ||
kitchenSink.safe.obj(undefined, false, {} as any), | ||
@@ -331,5 +312,5 @@ kitchenSink.samples.general | ||
const normalised = result.substring(0, 6); | ||
const normalised = result.substring(0, 12); | ||
expect(JSON.stringify(normalised)).toEqual('"\\nTimes"'); | ||
expect(JSON.stringify(normalised)).toEqual('"\\n\\"\\u001b[1mTimes:"'); | ||
}); | ||
@@ -336,0 +317,0 @@ |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
1415059
46
33417
6408