ts-buildkit
Version:
Typescript Build Kit, this is generic build kit package created by Ahsan Mahmood (https://aoneahsan.com), this package is generic and contains code which will work both on frontend (ReactJs/typescript/etc) as well as on backend (nodejs/typescript/etc). pl
1 lines • 5.44 kB
Source Map (JSON)
{"version":3,"sources":["../src/privateModule/index.ts","../src/require-package/crypto-js/index.ts"],"names":["_cryptoSecret","getCryptoSecret","_a","setCryptoSecret","val","encryptData","cryptoJs","error","decryptData","encryptWithSecretKey","data","secretKey","encJson","decryptWithSecretKey","encryptedData","_b","decData","bytes","aesDecrypt"],"mappings":"yBAAIA,IAAAA,CAAAA,CAA+B,KAQtBC,CAAkB,CAAA,IAAc,CAR7C,IAAAC,CASE,CAAA,GAAI,CAACF,CAAiBE,EAAAA,CAAAA,CAAAA,CAAAA,CAAAF,CAAA,EAAA,IAAA,CAAA,MAAA,CAAAA,CAAe,CAAA,IAAA,EAAA,GAAf,YAAAE,CAAuB,CAAA,MAAA,GAAU,CACrD,CAAA,MAAM,IAAI,KAAA,CACR,yEACF,CAGF,CAAA,OAAOF,CACT,CAOaG,CAAAA,CAAAA,CAAmBC,GAAsB,CACpDJ,CAAAA,CAAgBI,EAClB,EChBaC,IAAAA,CAAAA,CAAeD,GAAgC,CAT5D,IAAAF,CAUE,CAAA,IAAMF,CAAgBC,CAAAA,CAAAA,GACtB,GAAI,CACF,OAAOC,CAAAA,CAAAA,CAAAI,CAAS,CAAA,GAAA,CAAI,QAAQ,IAAK,CAAA,SAAA,CAAUF,CAAG,CAAGJ,CAAAA,CAAa,IAAvD,IAAAE,CAAAA,KAAAA,CAAAA,CAAAA,CAAAA,CAA0D,QACnE,EAAA,CAAA,MAASK,CAAO,CAAA,CACd,OAAO,IACT,CACF,CAQaC,CAAAA,CAAAA,CAAkBJ,CAA0B,EAAA,CAxBzD,IAAAF,CAyBE,CAAA,IAAMF,CAAgBC,CAAAA,CAAAA,EACtB,CAAA,GAAI,CACF,OAAO,IAAA,CAAK,OACVC,CAAAI,CAAAA,CAAAA,CAAS,IAAI,OAAQF,CAAAA,CAAAA,CAAKJ,CAAa,CAAA,GAAvC,IAAAE,CAAAA,KAAAA,CAAAA,CAAAA,CAAAA,CAA0C,SAASI,CAAS,CAAA,GAAA,CAAI,IAClE,CAAA,CACF,CAASC,MAAAA,CAAAA,CAAO,CACd,OAAO,IACT,CACF,CAAA,CASaE,CAAuB,CAAA,CAClCC,EACAC,CACW,GAAA,CA7Cb,IAAAT,CA8CE,CAAA,IAAMU,GAAUV,CAAAI,CAAAA,CAAAA,CAAS,GAAI,CAAA,OAAA,CAC3B,IAAK,CAAA,SAAA,CAAUI,CAAI,CACnBC,CAAAA,CACF,CAHgB,GAAA,IAAA,CAAA,MAAA,CAAAT,CAGb,CAAA,QAAA,EAAA,CAKH,OAJgBI,CAAS,CAAA,GAAA,CAAI,MAAO,CAAA,SAAA,CAClCA,CAAS,CAAA,GAAA,CAAI,KAAK,KAAMM,CAAAA,CAAO,CACjC,CAGF,CAAA,CASaC,EAAuB,CAClCC,CAAAA,CACAH,CACM,GAAA,CAnER,IAAAT,CAAAA,CAAAa,EAoEE,IAAMC,CAAAA,CAAAA,CAAUd,CAAAI,CAAAA,CAAAA,CAAS,GAAI,CAAA,MAAA,CAAO,MAAMQ,CAAa,CAAA,GAAvC,IAAAZ,CAAAA,MAAAA,CAAAA,CAAAA,CAA0C,QACxDI,CAAAA,CAAAA,CAAS,IAAI,IAETW,CAAAA,CAAAA,CAAAA,CAAAA,CAAQF,EAAAT,CAAS,CAAA,GAAA,CAAI,QAAQU,CAASL,CAAAA,CAAS,CAAvC,GAAA,IAAA,CAAA,MAAA,CAAAI,CAA0C,CAAA,QAAA,CACtDT,EAAS,GAAI,CAAA,IAAA,CAAA,CAGf,OAAO,IAAA,CAAK,KAAMW,CAAAA,CAAK,CACzB,CASaC,CAAAA,CAAAA,CAAa,CACxBR,CAAAA,CACAC,CACa,GAAA,CACb,IAAMM,CAAQX,CAAAA,CAAAA,CAAS,GAAI,CAAA,OAAA,CAAQI,CAAMC,CAAAA,CAAS,EAClD,GAAI,CACF,OAAO,IAAA,CAAK,KAAMM,CAAAA,CAAAA,EAAA,YAAAA,CAAO,CAAA,QAAA,CAASX,CAAS,CAAA,GAAA,CAAI,IAAK,CAAA,CACtD,OAASC,CAAO,CAAA,CACd,OAAO,IACT,CACF","file":"chunk-3IX3N4QW.mjs","sourcesContent":["let _cryptoSecret: string | null = null;\n\n/**\n * Get the crypto secret value.\n *\n * @returns {string} The crypto secret value.\n * @throws {Error} If the crypto secret is not set.\n */\nexport const getCryptoSecret = (): string => {\n if (!_cryptoSecret || _cryptoSecret?.trim()?.length <= 0) {\n throw new Error(\n 'ts-buildkit needs \"cryptoSecret\" value, call \"configureZTK\" to set that'\n );\n }\n\n return _cryptoSecret;\n};\n\n/**\n * Set the crypto secret value.\n *\n * @param {string} val - The crypto secret value.\n */\nexport const setCryptoSecret = (val: string): void => {\n _cryptoSecret = val;\n};\n","import cryptoJs from 'crypto-js';\nimport { getCryptoSecret } from 'src/privateModule';\n\n/**\n * Encrypt data using the crypto secret.\n *\n * @param {unknown} val - The data to encrypt.\n * @returns {string | null} The encrypted data.\n */\nexport const encryptData = (val: unknown): string | null => {\n const _cryptoSecret = getCryptoSecret();\n try {\n return cryptoJs.AES.encrypt(JSON.stringify(val), _cryptoSecret)?.toString();\n } catch (error) {\n return null;\n }\n};\n\n/**\n * Decrypt data using the crypto secret.\n *\n * @param {string} val - The data to decrypt.\n * @returns {T | null} The decrypted data.\n */\nexport const decryptData = <T>(val: string): T | null => {\n const _cryptoSecret = getCryptoSecret();\n try {\n return JSON.parse(\n cryptoJs.AES.decrypt(val, _cryptoSecret)?.toString(cryptoJs.enc.Utf8)\n ) as T;\n } catch (error) {\n return null;\n }\n};\n\n/**\n * Encrypt data using a secret key.\n *\n * @param {unknown} data - The data to encrypt.\n * @param {string} secretKey - The secret key.\n * @returns {string} The encrypted data.\n */\nexport const encryptWithSecretKey = (\n data: unknown,\n secretKey: string\n): string => {\n const encJson = cryptoJs.AES.encrypt(\n JSON.stringify(data),\n secretKey\n )?.toString();\n const encData = cryptoJs.enc.Base64.stringify(\n cryptoJs.enc.Utf8.parse(encJson)\n );\n\n return encData;\n};\n\n/**\n * Decrypt data using a secret key.\n *\n * @param {string} encryptedData - The data to decrypt.\n * @param {string} secretKey - The secret key.\n * @returns {T} The decrypted data.\n */\nexport const decryptWithSecretKey = <T = any>(\n encryptedData: string,\n secretKey: string\n): T => {\n const decData = cryptoJs.enc.Base64.parse(encryptedData)?.toString(\n cryptoJs.enc.Utf8\n );\n const bytes = cryptoJs.AES.decrypt(decData, secretKey)?.toString(\n cryptoJs.enc.Utf8\n );\n\n return JSON.parse(bytes) as T;\n};\n\n/**\n * Decrypt data using a secret key.\n *\n * @param {string} data - The data to decrypt.\n * @param {string} secretKey - The secret key.\n * @returns {T | null} The decrypted data.\n */\nexport const aesDecrypt = <T = any>(\n data: string,\n secretKey: string\n): T | null => {\n const bytes = cryptoJs.AES.decrypt(data, secretKey);\n try {\n return JSON.parse(bytes?.toString(cryptoJs.enc.Utf8)) as T;\n } catch (error) {\n return null;\n }\n};\n"]}