{"version":3,"file":"utils/string.mjs","sources":["../../src/utils/string.ts"],"sourcesContent":["export function ensurePrefix(str: string, prefix: string): string {\n  return str.slice(0, prefix.length) === prefix ? str : `${str}${prefix}`;\n}\n\nexport function removePrefix(str: string, prefix: string): string {\n  let res = str;\n\n  while (res.slice(0, prefix.length) === prefix) {\n    res = res.slice(prefix.length);\n  }\n\n  return res;\n}\n\nexport function truncateMiddle(text: string, maxLength = 60): string {\n  if (text.length <= maxLength) return text;\n  const half = Math.floor((maxLength - 3) / 2);\n  return `${text.slice(0, half)}...${text.slice(-half)}`;\n}\n"],"names":["ensurePrefix","str","prefix","removePrefix","res","truncateMiddle","text","maxLength","half","Math"],"mappings":"AAAO,SAASA,aAAaC,GAAW,EAAEC,MAAc;IACtD,OAAOD,IAAI,KAAK,CAAC,GAAGC,OAAO,MAAM,MAAMA,SAASD,MAAM,GAAGA,MAAMC,QAAQ;AACzE;AAEO,SAASC,aAAaF,GAAW,EAAEC,MAAc;IACtD,IAAIE,MAAMH;IAEV,MAAOG,IAAI,KAAK,CAAC,GAAGF,OAAO,MAAM,MAAMA,OACrCE,MAAMA,IAAI,KAAK,CAACF,OAAO,MAAM;IAG/B,OAAOE;AACT;AAEO,SAASC,eAAeC,IAAY,EAAEC,YAAY,EAAE;IACzD,IAAID,KAAK,MAAM,IAAIC,WAAW,OAAOD;IACrC,MAAME,OAAOC,KAAK,KAAK,CAAEF,AAAAA,CAAAA,YAAY,KAAK;IAC1C,OAAO,GAAGD,KAAK,KAAK,CAAC,GAAGE,MAAM,GAAG,EAAEF,KAAK,KAAK,CAAC,CAACE,OAAO;AACxD"}