{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,IAAI,IAAI,EAAE,MAAM,WAAW,CAAA;AAEzD,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAW,EAAE,CAAW;IACnD,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACpD,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE;YAAE,MAAM,CAAC,CAAA;;YACvB,MAAK;IACZ,CAAC;AACH,CAAC;AAED,MAAM,GAAG,GAAG,CAAC,CAAgB,EAAE,CAAgB,EAAE,EAAE,CACjD,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACX,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QACjB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;YACxC,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAClE,GAAG,CACJ,CAAA;AAEL,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAG,KAAwB,EAAE,EAAE,CAChE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA","sourcesContent":["import { parse, sep, normalize as norm } from 'node:path'\n\nfunction* commonArrayMembers(a: string[], b: string[]) {\n  const [l, s] = a.length > b.length ? [a, b] : [b, a]\n  for (const x of s) {\n    if (x === l.shift()) yield x\n    else break\n  }\n}\n\nconst cap = (a: string | null, b: string | null) =>\n  a === b ? a\n  : !a || !b ? null\n  : parse(a).root !== parse(b).root ? null\n  : [...commonArrayMembers(norm(a).split(sep), norm(b).split(sep))].join(\n      sep,\n    )\n\nexport const commonAncestorPath = (...paths: (string | null)[]) =>\n  paths.reduce(cap)\n"]}