{"version":3,"file":"useUpdatableTimestamp-Bm2SlsKv.js","sources":["../../../app/javascript/controllers/mixins/useUpdatableTimestamp.js"],"sourcesContent":["// inspired by https://gist.github.com/shuber/58902\n\nexport const useUpdatableTimestamp = (controller) => {\n return Object.assign(controller, {\n timeAgoInWordsWithParsing(from) {\n const date = new Date;\n date.setTime(Date.parse(from));\n return this.timeAgoInWords(date);\n },\n\n timeAgoInWords(from) {\n return this.distanceOfTimeInWords(new Date(), from);\n },\n\n distanceOfTimeInWords(to, from) {\n const translations = window.t.datetime.distance_in_words\n const distance_in_seconds = ((to - from) / 1000);\n const distance_in_minutes = Math.floor(distance_in_seconds / 60);\n\n if (distance_in_minutes === 0) {\n return translations.less_than_x_minutes.one\n }\n\n if (distance_in_minutes === 1) {\n return translations.x_minutes.one\n }\n\n if (distance_in_minutes < 45) {\n return translations.x_minutes.other.replace(\"%{count}\", distance_in_minutes)\n }\n\n if (distance_in_minutes < 90) {\n return translations.about_x_hours.one\n }\n\n if (distance_in_minutes < 1440) {\n return translations.about_x_hours.other.replace(\"%{count}\", Math.floor(distance_in_minutes / 60))\n }\n\n if (distance_in_minutes < 2880) {\n return translations.x_days.one\n }\n\n if (distance_in_minutes < 43200) {\n return translations.x_days.other.replace(\"%{count}\", Math.floor(distance_in_minutes / 1440))\n }\n\n if (distance_in_minutes < 86400) {\n return translations.x_months.one\n }\n if (distance_in_minutes < 525960) {\n return translations.x_months.other.replace(\"%{count}\", Math.floor(distance_in_minutes / 43200))\n }\n\n if (distance_in_minutes < 1051199) {\n return translations.about_x_years.one\n }\n\n return translations.over_x_years.other.replace(\"%{count}\", Math.floor(distance_in_minutes / 525960))\n }\n })\n}\n"],"names":["useUpdatableTimestamp","controller","from","date","to","translations","distance_in_seconds","distance_in_minutes"],"mappings":"AAEY,MAACA,EAAyBC,GAC7B,OAAO,OAAOA,EAAY,CAC/B,0BAA0BC,EAAM,CAC9B,MAAMC,EAAO,IAAI,KACjB,OAAAA,EAAK,QAAQ,KAAK,MAAMD,CAAI,CAAC,EACtB,KAAK,eAAeC,CAAI,CAChC,EAED,eAAeD,EAAM,CACnB,OAAO,KAAK,sBAAsB,IAAI,KAAQA,CAAI,CACnD,EAED,sBAAsBE,EAAIF,EAAM,CAC9B,MAAMG,EAAe,OAAO,EAAE,SAAS,kBACjCC,GAAwBF,EAAKF,GAAQ,IACrCK,EAAsB,KAAK,MAAMD,EAAsB,EAAE,EAE/D,OAAIC,IAAwB,EACnBF,EAAa,oBAAoB,IAGtCE,IAAwB,EACnBF,EAAa,UAAU,IAG5BE,EAAsB,GACjBF,EAAa,UAAU,MAAM,QAAQ,WAAYE,CAAmB,EAGzEA,EAAsB,GACjBF,EAAa,cAAc,IAGhCE,EAAsB,KACjBF,EAAa,cAAc,MAAM,QAAQ,WAAY,KAAK,MAAME,EAAsB,EAAE,CAAC,EAG9FA,EAAsB,KACjBF,EAAa,OAAO,IAGzBE,EAAsB,MACjBF,EAAa,OAAO,MAAM,QAAQ,WAAY,KAAK,MAAME,EAAsB,IAAI,CAAC,EAGzFA,EAAsB,MACjBF,EAAa,SAAS,IAE3BE,EAAsB,OACjBF,EAAa,SAAS,MAAM,QAAQ,WAAY,KAAK,MAAME,EAAsB,KAAK,CAAC,EAG5FA,EAAsB,QACjBF,EAAa,cAAc,IAG7BA,EAAa,aAAa,MAAM,QAAQ,WAAa,KAAK,MAAME,EAAsB,MAAM,CAAC,CAC1G,CACG,CAAA"}