UNPKG

vuestic-ui

Version:
1 lines 2.12 kB
{"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;"}