@jk-core/utils
Version:
utils for jk
1 lines • 3.57 kB
Source Map (JSON)
{"version":3,"file":"index.cjs","sources":["../src/cn/index.ts","../src/roundNum/index.ts","../src/formatTime/index.ts","../src/checkIsMobilePlatform/index.ts","../src/isDefined/index.ts"],"sourcesContent":["interface Classname {\n [key: string]: boolean;\n}\n\n/** 여러 개의 className을 합치는 함수 */\nexport default function cn(classes: Classname) {\n return Object.entries(classes)\n .filter(([, value]) => value)\n .map(([key]) => key)\n .join(' ');\n}\n","const roundNum = (num: number | null | undefined, scale: number = 2): number => {\n if (num === null || num === undefined || Number.isNaN(Number(num))) {\n return 0;\n }\n\n const numStr = `${num}`;\n if (!numStr.includes('e')) {\n return +(`${Math.round(parseFloat(`${num}e+${scale}`))}e-${scale}`);\n }\n\n const arr = numStr.split('e');\n let sig = '';\n if (+arr[1] + scale > 0) {\n sig = '+';\n }\n return +(`${Math.round(parseFloat(`${+arr[0]}e${sig}${+arr[1] + scale}`))}e-${scale}`);\n};\n\nconst displayRoundNum = (num: number | null | undefined, scale: number = 2): number | string => {\n if (num === null || num === undefined || Number.isNaN(num)) {\n return '-';\n }\n return roundNum(num, scale);\n};\n\nexport { roundNum, displayRoundNum };\n","const formatTime = (time:number | null | undefined = 0) => {\n const validTime = time ?? 0;\n const hour = Math.trunc(validTime) || 0;\n const minute = Math.floor(((validTime - hour)) * 60) || 0;\n const fullTime = `${hour !== 0 ? `${hour}시간` : ''}${minute !== 0 ? ` ${minute}분` : ''}` || '0분';\n\n return {\n fullTime,\n hour,\n minute,\n };\n};\n\nexport default formatTime;\n","const checkIsMobile = () => {\n const { userAgent } = navigator;\n\n if (userAgent.match(/Android/i) || userAgent.match(/iPhone|iPad|iPod/i)) {\n return true;\n }\n\n if (userAgent.match(/Windows/i) || userAgent.match(/Macintosh/i)) {\n return false;\n }\n\n return true;\n};\n\nexport default checkIsMobile;\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst isDefined = <T>(value: T | undefined | null): value is T =>\n value !== undefined && value !== null;\n\nexport default isDefined;\n"],"names":["cn","classes","value","key","roundNum","num","scale","numStr","arr","sig","displayRoundNum","formatTime","time","validTime","hour","minute","checkIsMobile","userAgent","isDefined"],"mappings":"gFAKA,SAAwBA,EAAGC,EAAoB,CACtC,OAAA,OAAO,QAAQA,CAAO,EAC1B,OAAO,CAAC,CAAA,CAAGC,CAAK,IAAMA,CAAK,EAC3B,IAAI,CAAC,CAACC,CAAG,IAAMA,CAAG,EAClB,KAAK,GAAG,CACb,CCVA,MAAMC,EAAW,CAACC,EAAgCC,EAAgB,IAAc,CAC1E,GAAAD,GAAQ,MAA6B,OAAO,MAAM,OAAOA,CAAG,CAAC,EACxD,MAAA,GAGH,MAAAE,EAAS,GAAGF,CAAG,GACrB,GAAI,CAACE,EAAO,SAAS,GAAG,EACtB,MAAO,CAAE,GAAG,KAAK,MAAM,WAAW,GAAGF,CAAG,KAAKC,CAAK,EAAE,CAAC,CAAC,KAAKA,CAAK,GAG5D,MAAAE,EAAMD,EAAO,MAAM,GAAG,EAC5B,IAAIE,EAAM,GACV,MAAI,CAACD,EAAI,CAAC,EAAIF,EAAQ,IACdG,EAAA,KAED,CAAE,GAAG,KAAK,MAAM,WAAW,GAAG,CAACD,EAAI,CAAC,CAAC,IAAIC,CAAG,GAAG,CAACD,EAAI,CAAC,EAAIF,CAAK,EAAE,CAAC,CAAC,KAAKA,CAAK,EACrF,EAEMI,EAAkB,CAACL,EAAgCC,EAAgB,IACnED,GAAQ,MAA6B,OAAO,MAAMA,CAAG,EAChD,IAEFD,EAASC,EAAKC,CAAK,ECtBtBK,EAAa,CAACC,EAAiC,IAAM,CACzD,MAAMC,EAAYD,GAAQ,EACpBE,EAAO,KAAK,MAAMD,CAAS,GAAK,EAChCE,EAAS,KAAK,OAAQF,EAAYC,GAAS,EAAE,GAAK,EAGjD,MAAA,CACL,SAHe,GAAGA,IAAS,EAAI,GAAGA,CAAI,KAAO,EAAE,GAAGC,IAAW,EAAI,IAAIA,CAAM,IAAM,EAAE,IAAM,KAIzF,KAAAD,EACA,OAAAC,CACF,CACF,ECXMC,EAAgB,IAAM,CACpB,KAAA,CAAE,UAAAC,GAAc,UAEtB,OAAIA,EAAU,MAAM,UAAU,GAAKA,EAAU,MAAM,mBAAmB,EAC7D,GAGL,EAAAA,EAAU,MAAM,UAAU,GAAKA,EAAU,MAAM,YAAY,EAKjE,ECXMC,EAAgBhB,GACGA,GAAU"}