{"version":3,"sources":["../src/misc/parseTimeDuration.ts"],"names":["sizes","parseTimeDuration","n","integer","decimal","unit","unitSize","value"],"mappings":";;;;AAOA,IAAMA,CAAM,CAAA,CAAC,EAAG,CAAA,CAAA,CAAE,EAAE,GAAK,CAAA,CAAA,CAAE,GAAM,CAAA,CAAA,CAAE,IAAQ,CAAA,CAAA,CAAE,KAAS,CAAA,CAAA,CAAE,OAAU,CAAE,CAAA,MAAA,CAAW,CAAE,CAAA,OAAW,CAErF,CAAA,SAASC,CAAkBC,CAAAA,CAAAA,CAAuB,CACrD,GAAG,OAAOA,CAAM,EAAA,QAAA,CACZ,OAAOA,CACL,CAAA,GAAG,OAAOA,CAAAA,EAAM,SAAS,CAC3B,GAAI,CAACC,CAAAA,CAAQ,CAAEC,CAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAI,OAAO,UAAWF,CAAAA,CAAC,CAAC,CAAA,CAAE,KAAM,CAAA,GAAG,CACvDG,CAAAA,CAAAA,CAAOH,EAAE,IAAK,EAAA,CAAE,OAAQ,CAAA,WAAA,CAAY,EAAE,CAAA,CACrB,OAAQ,CAAA,cAAA,CAAe,IAAI,CAC3B,CAAA,OAAA,CAAQ,SAAU,CAAA,GAAG,EACrB,OAAQ,CAAA,SAAA,CAAU,GAAG,CAAA,CACrB,QAAQ,OAAQ,CAAA,GAAG,CACnB,CAAA,OAAA,CAAQ,MAAO,CAAA,GAAG,CAClB,CAAA,OAAA,CAAQ,IAAI,GAAG,CAAA,CACf,OAAQ,CAAA,OAAA,CAAQ,GAAG,CAAA,CACnB,OAAQ,CAAA,GAAA,CAAI,GAAG,CACf,CAAA,OAAA,CAAQ,QAAS,CAAA,GAAG,CACpB,CAAA,OAAA,CAAQ,OAAQ,CAAA,GAAG,EACnB,OAAQ,CAAA,GAAA,CAAI,GAAG,CAAA,CAGpC,GADGG,CAAM,EAAA,EAAA,GAAIA,CAAO,CAAA,IAAA,CAAA,CACjB,EAAEA,CAAQL,IAAAA,CAAAA,CAAAA,CAAQ,MAAM,IAAI,SAAU,CAAA,mDAAmD,CAC5F,CAAA,IAAMM,EAAWN,CAAMK,CAAAA,CAAI,CACvBE,CAAAA,CAAAA,CAAQ,MAAOJ,CAAAA,CAAO,CAAIG,CAAAA,CAAAA,CAC9B,OAAAF,CAAU,CAAA,MAAA,CAAOA,CAAO,CAAA,CACrBA,CAAQ,CAAA,CAAA,GACPA,CAAU,CAAA,UAAA,CAAW,KAAKA,CAAO,CAAA,CAAE,CACnCG,CAAAA,CAAAA,EAAQD,EAAWF,CAEhBG,CAAAA,CAAAA,CACX,CACI,KAAA,MAAM,IAAI,SAElB","file":"chunk-BCAQBVME.mjs","sourcesContent":["import { TimeDuration } from \"../types\";\n\n\n/**\n * 将一个TimeInterval类型的时间单位的字符转化为毫秒值\n * @param n \n */\nconst sizes={ms:1,s:1000,m:60000,h:3600000,D:86400000,W:604800000,M:2592000000,Y:31104000000} as Record<string, number>\n\nexport function parseTimeDuration(n:TimeDuration):number {\n    if(typeof n === \"number\"){\n        return n\n    }else if(typeof n === \"string\"){\n        let [integer=0,decimal=0] = String(parseFloat(n)).split(\".\")       \n        let unit = n.trim().replace(/\\d?\\.*\\d?/,\"\") \n                            .replace(\"Milliseconds\",\"ms\")\n                            .replace(\"Seconds\",\"s\") \n                            .replace(\"Minutes\",\"m\") \n                            .replace(\"Hours\",\"h\") \n                            .replace(\"Days\",\"D\") \n                            .replace(\"d\",\"D\") \n                            .replace(\"Weeks\",\"W\") \n                            .replace(\"w\",\"W\")\n                            .replace(\"Months\",\"M\") \n                            .replace(\"Years\",\"Y\") \n                            .replace(\"y\",\"Y\")\n\n        if(unit=='') unit = \"ms\"\n        if(!(unit in sizes)) throw new TypeError('Time unit must be one of [ms,s,m,h,d,D,w,W,M,y,Y]')\n        const unitSize = sizes[unit]\n        let value = Number(integer) * unitSize\n        decimal = Number(decimal)\n        if(decimal>0){\n            decimal = parseFloat(`0.${decimal}`)\n            value+= unitSize * decimal\n        }\n        return value\n    }else{\n        throw new TypeError()\n    }\n}"]}