{"version":3,"sources":["jsdelivr-header.js","/npm/timerel@5.8.7/dist/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACLA,MAAM,aAAe,CACpB,CACC,IACA,IACA,OAED,CACC,IACA,KACA,OAED,CACC,KACA,MACA,QAED,CACC,MACA,OACA,OAED,CACC,OACA,OACA,QAED,CACC,OACA,QACA,SAED,CACC,QACA,IACA,SAGI,kBAAoB,CACzB,YAAa,YACb,aAAc,YACd,cAAe,aACf,aAAc,YACd,WAAY,WACZ,YAAa,YACb,aAAc,aACd,YAAa,aAER,aAAe,CACpB,IAAK,SACL,IAAK,UAEN,SAAS,MAAM,GACd,OAAI,aAAgB,KAAa,EAAK,UAClB,iBAAT,EAA0B,KAAK,MAAM,GACzC,CACR,CAEA,SAAS,QAAQ,GAAM,IAAE,EAAG,QAAE,GAAU,EAAK,MAAE,EAAQ,aAAY,aAAE,EAAe,IAAG,UAAE,EAAY,MAAK,cAAE,EAAgB,GAAE,QAAE,GAAU,EAAK,WAAE,EAAa,kBAAiB,UAAE,GAAY,GAAU,CAAC,GACvM,MAAM,EAAU,MAAM,GAChB,OAAgB,IAAR,EAAiB,MAAM,GAAO,KAAK,MACjD,GAAI,GAAY,EAAS,OAAO,GAAiB,OAAO,GACxD,IAAI,EAAO,EAAQ,EACnB,MAAM,EAAS,EAAO,EAEtB,GADI,IAAQ,GAAQ,GAChB,EAAO,EAAc,OAAO,EAChC,IAAI,EAAM,EACN,EAAS,GACb,IAAK,IAAI,EAAI,EAAG,EAAM,EAAM,OAAQ,EAAI,EAAK,IAAK,CACjD,MAAM,EAAO,EAAM,GACnB,KAAI,GAAQ,EAAK,IAAjB,CACA,EAAM,EAAO,EAAK,GAAK,EACvB,GAAU,GAAY,aAAa,EAAK,KAAiB,EAAK,KAAO,EAAM,EAAI,IAAM,IACrF,KAH6B,CAI9B,CACA,MAAM,EAAO,GAAG,KAAO,IACvB,IAAI,EAIJ,OAHa,EAAT,EAAkB,EACb,EAAiB,MAAM,IAClB,GAAG,QACV,EAAU,EAAW,IAAW,EAAS,CACjD,QAGS","file":"/npm/timerel@5.8.7/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/timerel@5.8.7/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","//#region index.ts\nconst defaultTimes = [\n\t[\n\t\t1e3,\n\t\t6e4,\n\t\t\"sec\"\n\t],\n\t[\n\t\t6e4,\n\t\t36e5,\n\t\t\"min\"\n\t],\n\t[\n\t\t36e5,\n\t\t864e5,\n\t\t\"hour\"\n\t],\n\t[\n\t\t864e5,\n\t\t6048e5,\n\t\t\"day\"\n\t],\n\t[\n\t\t6048e5,\n\t\t2628e6,\n\t\t\"week\"\n\t],\n\t[\n\t\t2628e6,\n\t\t31536e6,\n\t\t\"month\"\n\t],\n\t[\n\t\t31536e6,\n\t\tInfinity,\n\t\t\"year\"\n\t]\n];\nconst defaultAliasesMap = {\n\t\"1 day ago\": \"yesterday\",\n\t\"1 week ago\": \"last week\",\n\t\"1 month ago\": \"last month\",\n\t\"1 year ago\": \"last year\",\n\t\"in 1 day\": \"tomorrow\",\n\t\"in 1 week\": \"next week\",\n\t\"in 1 month\": \"next month\",\n\t\"in 1 year\": \"next year\"\n};\nconst longUnitsMap = {\n\tsec: \"second\",\n\tmin: \"minute\"\n};\nfunction toNum(date) {\n\tif (date instanceof Date) return date.getTime();\n\tif (typeof date === \"string\") return Date.parse(date);\n\treturn date;\n}\n/** Format a date to a relative time format */\nfunction timerel(date, { now, noAffix = false, times = defaultTimes, nowThreshold = 2e3, nowString = \"now\", unknownString = \"\", aliases = false, aliasesMap = defaultAliasesMap, longUnits = false } = {}) {\n\tconst dateObj = toNum(date);\n\tconst nowMs = now !== void 0 ? toNum(now) : Date.now();\n\tif (dateObj !== dateObj) return unknownString || String(date);\n\tlet diff = nowMs - dateObj;\n\tconst future = diff < 0;\n\tif (future) diff = -diff;\n\tif (diff < nowThreshold) return nowString;\n\tlet num = 0;\n\tlet suffix = \"\";\n\tfor (let i = 0, len = times.length; i < len; i++) {\n\t\tconst time = times[i];\n\t\tif (diff >= time[1]) continue;\n\t\tnum = diff / time[0] | 0;\n\t\tsuffix = (longUnits ? longUnitsMap[time[2]] || time[2] : time[2]) + (num > 1 ? \"s\" : \"\");\n\t\tbreak;\n\t}\n\tconst base = `${num} ${suffix}`;\n\tlet result;\n\tif (noAffix) result = base;\n\telse if (future) result = `in ${base}`;\n\telse result = `${base} ago`;\n\treturn aliases ? aliasesMap[result] ?? result : result;\n}\n\n//#endregion\nexport { timerel };"]}