import { cloneDeep, defaults as _defaults, pick } from 'lodash'; function equivalentStrokes (a: number[] | undefined, b: number[] | undefined): boolean { if (a === undefined && b === undefined) return true; if (a === undefined || b === undefined) return false; return a.length === b.length && a.every((value, index) => b[index] === value); } function defaults (target: any, source: any, paths: string[]) { _defaults(target, pick(cloneDeep(source), paths)); } export { defaults, equivalentStrokes }