{"version":3,"file":"time-text-formatter.mjs","sources":["../../../../../../src/components/va-time-input/hooks/time-text-formatter.ts"],"sourcesContent":["export const useTimeFormatter = (props: {\n  ampm?: boolean,\n  view?: 'hours' | 'minutes' | 'seconds'\n  format?: (date?: Date) => string\n}) => {\n  const formatDate = (date?: Date) => {\n    if (!date) { return '' }\n\n    if (props.ampm) {\n      return date.toLocaleTimeString('en-US')\n    }\n\n    return date.toLocaleTimeString('en-GB')\n  }\n\n  const sliceTime = (time: string, start: number, end: number) => time.split(':').slice(start, end).join(':')\n\n  const formatWithView = (date?: Date) => {\n    if (props.view === 'seconds') {\n      return formatDate(date)\n    }\n\n    const [time, period] = formatDate(date).split(' ')\n\n    if (props.view === 'minutes') {\n      if (!period) { return sliceTime(time, 0, 2) }\n\n      return [sliceTime(time, 0, 2), period].join(' ')\n    }\n\n    if (props.view === 'hours') {\n      if (!period) { return sliceTime(time, 0, 1) }\n\n      return [sliceTime(time, 0, 1), period].join(' ')\n    }\n\n    return ''\n  }\n\n  return {\n    format: (date?: Date) => props.format ? props.format(date) : formatWithView(date),\n  }\n}\n"],"names":[],"mappings":"AAAa,MAAA,mBAAmB,CAAC,UAI3B;AACE,QAAA,aAAa,CAAC,SAAgB;AAClC,QAAI,CAAC,MAAM;AAAS,aAAA;AAAA,IAAG;AAEvB,QAAI,MAAM,MAAM;AACP,aAAA,KAAK,mBAAmB,OAAO;AAAA,IACxC;AAEO,WAAA,KAAK,mBAAmB,OAAO;AAAA,EAAA;AAGxC,QAAM,YAAY,CAAC,MAAc,OAAe,QAAgB,KAAK,MAAM,GAAG,EAAE,MAAM,OAAO,GAAG,EAAE,KAAK,GAAG;AAEpG,QAAA,iBAAiB,CAAC,SAAgB;AAClC,QAAA,MAAM,SAAS,WAAW;AAC5B,aAAO,WAAW,IAAI;AAAA,IACxB;AAEM,UAAA,CAAC,MAAM,MAAM,IAAI,WAAW,IAAI,EAAE,MAAM,GAAG;AAE7C,QAAA,MAAM,SAAS,WAAW;AAC5B,UAAI,CAAC,QAAQ;AAAS,eAAA,UAAU,MAAM,GAAG,CAAC;AAAA,MAAE;AAErC,aAAA,CAAC,UAAU,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,KAAK,GAAG;AAAA,IACjD;AAEI,QAAA,MAAM,SAAS,SAAS;AAC1B,UAAI,CAAC,QAAQ;AAAS,eAAA,UAAU,MAAM,GAAG,CAAC;AAAA,MAAE;AAErC,aAAA,CAAC,UAAU,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,KAAK,GAAG;AAAA,IACjD;AAEO,WAAA;AAAA,EAAA;AAGF,SAAA;AAAA,IACL,QAAQ,CAAC,SAAgB,MAAM,SAAS,MAAM,OAAO,IAAI,IAAI,eAAe,IAAI;AAAA,EAAA;AAEpF;"}