UNPKG

advanced-js-kit

Version:

Modern TypeScript utility library with tree-shaking support - Array, String, Number, Network, Sleep, and JWT utilities for JavaScript and TypeScript projects

1 lines 2.53 kB
{"version":3,"sources":["../../../src/universal/time/index.ts"],"names":[],"mappings":";;;AAWO,SAAS,gBAAA,CAAiB,OAAA,GAO7B,EAAC,EAAW;AACd,EAAA,MAAM;AAAA,IACJ,OAAA,GAAU,CAAA;AAAA,IACV,OAAA,GAAU,CAAA;AAAA,IACV,KAAA,GAAQ,CAAA;AAAA,IACR,IAAA,GAAO,CAAA;AAAA,IACP,MAAA,GAAS,CAAA;AAAA,IACT,KAAA,GAAQ;AAAA,GACV,GAAI,OAAA;AAGJ,EAAA,MAAM,kBAAA,GAAqB,EAAA;AAC3B,EAAA,MAAM,mBAAmB,EAAA,GAAK,EAAA;AAC9B,EAAA,MAAM,eAAA,GAAkB,KAAK,EAAA,GAAK,EAAA;AAClC,EAAA,MAAM,iBAAA,GAAoB,EAAA,GAAK,EAAA,GAAK,EAAA,GAAK,EAAA;AACzC,EAAA,MAAM,gBAAA,GAAmB,EAAA,GAAK,EAAA,GAAK,EAAA,GAAK,GAAA;AAExC,EAAA,OACE,OAAA,GACC,UAAU,kBAAA,GACV,KAAA,GAAQ,mBACR,IAAA,GAAO,eAAA,GACP,MAAA,GAAS,iBAAA,GACT,KAAA,GAAQ,gBAAA;AAEb;AAGO,IAAM,qBAAqB,MAAc;AAC9C,EAAA,OAAO,KAAK,GAAA,EAAI;AAClB;AAEO,IAAM,mBAAmB,MAAc;AAC5C,EAAA,OAAO,IAAA,CAAK,KAAA,CAAM,kBAAA,EAAmB,GAAI,GAAI,CAAA;AAC/C","file":"index.cjs","sourcesContent":["/**\r\n * Converts various time units to total seconds\r\n * @param options - Object containing optional time units\r\n * @param options.seconds - Number of seconds (default: 0)\r\n * @param options.minutes - Number of minutes (default: 0)\r\n * @param options.hours - Number of hours (default: 0)\r\n * @param options.days - Number of days (default: 0)\r\n * @param options.months - Number of months (default: 0, assumes 30 days per month)\r\n * @param options.years - Number of years (default: 0, assumes 365 days per year)\r\n * @returns Total time in seconds\r\n */\r\nexport function convertToSeconds(options: {\r\n seconds?: number;\r\n minutes?: number;\r\n hours?: number;\r\n days?: number;\r\n months?: number;\r\n years?: number;\r\n} = {}): number {\r\n const {\r\n seconds = 0,\r\n minutes = 0,\r\n hours = 0,\r\n days = 0,\r\n months = 0,\r\n years = 0,\r\n } = options;\r\n\r\n // Time conversion constants\r\n const SECONDS_PER_MINUTE = 60;\r\n const SECONDS_PER_HOUR = 60 * 60;\r\n const SECONDS_PER_DAY = 60 * 60 * 24;\r\n const SECONDS_PER_MONTH = 60 * 60 * 24 * 30; // Assuming 30 days per month\r\n const SECONDS_PER_YEAR = 60 * 60 * 24 * 365; // Assuming 365 days per year\r\n\r\n return (\r\n seconds +\r\n ( minutes * SECONDS_PER_MINUTE) +\r\n (hours * SECONDS_PER_HOUR) +\r\n ( days * SECONDS_PER_DAY) +\r\n (months * SECONDS_PER_MONTH )+\r\n (years * SECONDS_PER_YEAR)\r\n );\r\n}\r\n\r\n\r\nexport const getUnixTimestampMs = (): number => {\r\n return Date.now();\r\n};\r\n\r\nexport const getUnixTimestamp = (): number => {\r\n return Math.floor(getUnixTimestampMs() / 1000);\r\n};"]}