@axiumine/koa-utils 3.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (524) hide show
  1. package/LICENSE +236 -0
  2. package/dist/dataSources/MariaDB.d.mts +4 -0
  3. package/dist/dataSources/MariaDB.mjs +74 -0
  4. package/dist/dataSources/MariaDB.mjs.map +1 -0
  5. package/dist/dataSources/MongoDB.d.mts +2 -0
  6. package/dist/dataSources/MongoDB.mjs +35 -0
  7. package/dist/dataSources/MongoDB.mjs.map +1 -0
  8. package/dist/dataSources/PostgreSQL.d.mts +17 -0
  9. package/dist/dataSources/PostgreSQL.mjs +109 -0
  10. package/dist/dataSources/PostgreSQL.mjs.map +1 -0
  11. package/dist/dataSources/Redis.d.mts +4629 -0
  12. package/dist/dataSources/Redis.mjs +44 -0
  13. package/dist/dataSources/Redis.mjs.map +1 -0
  14. package/dist/email/SocketLabsLib.d.mts +109 -0
  15. package/dist/email/SocketLabsLib.mjs +500 -0
  16. package/dist/email/SocketLabsLib.mjs.map +1 -0
  17. package/dist/files/IUploadTemp.d.mts +4 -0
  18. package/dist/files/IUploadTemp.mjs +2 -0
  19. package/dist/files/IUploadTemp.mjs.map +1 -0
  20. package/dist/files/checkForNSFW.d.mts +1 -0
  21. package/dist/files/checkForNSFW.mjs +22 -0
  22. package/dist/files/checkForNSFW.mjs.map +1 -0
  23. package/dist/files/fileConst.d.mts +7 -0
  24. package/dist/files/fileConst.mjs +4 -0
  25. package/dist/files/fileConst.mjs.map +1 -0
  26. package/dist/files/moveFileStaticDomain.d.mts +8 -0
  27. package/dist/files/moveFileStaticDomain.mjs +13 -0
  28. package/dist/files/moveFileStaticDomain.mjs.map +1 -0
  29. package/dist/files/moveImageFile.d.mts +1 -0
  30. package/dist/files/moveImageFile.mjs +7 -0
  31. package/dist/files/moveImageFile.mjs.map +1 -0
  32. package/dist/files/moveTempFile.d.mts +7 -0
  33. package/dist/files/moveTempFile.mjs +18 -0
  34. package/dist/files/moveTempFile.mjs.map +1 -0
  35. package/dist/files/reEncodeToJpeg.d.mts +1 -0
  36. package/dist/files/reEncodeToJpeg.mjs +5 -0
  37. package/dist/files/reEncodeToJpeg.mjs.map +1 -0
  38. package/dist/files/reEncodeToPng.d.mts +1 -0
  39. package/dist/files/reEncodeToPng.mjs +5 -0
  40. package/dist/files/reEncodeToPng.mjs.map +1 -0
  41. package/dist/files/reEncodeToWebp.d.mts +1 -0
  42. package/dist/files/reEncodeToWebp.mjs +5 -0
  43. package/dist/files/reEncodeToWebp.mjs.map +1 -0
  44. package/dist/files/scanVirus.d.mts +6 -0
  45. package/dist/files/scanVirus.mjs +56 -0
  46. package/dist/files/scanVirus.mjs.map +1 -0
  47. package/dist/files/storeUploadAsTemp.d.mts +3 -0
  48. package/dist/files/storeUploadAsTemp.mjs +54 -0
  49. package/dist/files/storeUploadAsTemp.mjs.map +1 -0
  50. package/dist/files/uploadTempImage.d.mts +8 -0
  51. package/dist/files/uploadTempImage.mjs +42 -0
  52. package/dist/files/uploadTempImage.mjs.map +1 -0
  53. package/dist/files/uploadTempPdf.d.mts +8 -0
  54. package/dist/files/uploadTempPdf.mjs +42 -0
  55. package/dist/files/uploadTempPdf.mjs.map +1 -0
  56. package/dist/files/validateExtension.d.mts +6 -0
  57. package/dist/files/validateExtension.mjs +11 -0
  58. package/dist/files/validateExtension.mjs.map +1 -0
  59. package/dist/files/validateJpgPngExtension.d.mts +1 -0
  60. package/dist/files/validateJpgPngExtension.mjs +9 -0
  61. package/dist/files/validateJpgPngExtension.mjs.map +1 -0
  62. package/dist/files/validateMimeType.d.mts +6 -0
  63. package/dist/files/validateMimeType.mjs +18 -0
  64. package/dist/files/validateMimeType.mjs.map +1 -0
  65. package/dist/files/validateMimeTypeImages.d.mts +5 -0
  66. package/dist/files/validateMimeTypeImages.mjs +9 -0
  67. package/dist/files/validateMimeTypeImages.mjs.map +1 -0
  68. package/dist/files/validateMimeTypePdf.d.mts +5 -0
  69. package/dist/files/validateMimeTypePdf.mjs +9 -0
  70. package/dist/files/validateMimeTypePdf.mjs.map +1 -0
  71. package/dist/files/validatePdfExtension.d.mts +1 -0
  72. package/dist/files/validatePdfExtension.mjs +9 -0
  73. package/dist/files/validatePdfExtension.mjs.map +1 -0
  74. package/dist/graphQL/models/MongoDB/UserBase.d.mts +61 -0
  75. package/dist/graphQL/models/MongoDB/UserBase.mjs +112 -0
  76. package/dist/graphQL/models/MongoDB/UserBase.mjs.map +1 -0
  77. package/dist/graphQL/models/MongoDB/log/DevStatsGraphQLCalls.d.mts +25 -0
  78. package/dist/graphQL/models/MongoDB/log/DevStatsGraphQLCalls.mjs +36 -0
  79. package/dist/graphQL/models/MongoDB/log/DevStatsGraphQLCalls.mjs.map +1 -0
  80. package/dist/graphQL/models/MongoDB/log/LogGlobalError.d.mts +16 -0
  81. package/dist/graphQL/models/MongoDB/log/LogGlobalError.mjs +25 -0
  82. package/dist/graphQL/models/MongoDB/log/LogGlobalError.mjs.map +1 -0
  83. package/dist/graphQL/models/MongoDB/log/LogStatsGraphql.d.mts +18 -0
  84. package/dist/graphQL/models/MongoDB/log/LogStatsGraphql.mjs +33 -0
  85. package/dist/graphQL/models/MongoDB/log/LogStatsGraphql.mjs.map +1 -0
  86. package/dist/graphQL/models/MongoDB/log/LogThrow.d.mts +17 -0
  87. package/dist/graphQL/models/MongoDB/log/LogThrow.mjs +28 -0
  88. package/dist/graphQL/models/MongoDB/log/LogThrow.mjs.map +1 -0
  89. package/dist/graphQL/schema/GraphQLInput/GraphQLInputLogin.d.mts +2 -0
  90. package/dist/graphQL/schema/GraphQLInput/GraphQLInputLogin.mjs +9 -0
  91. package/dist/graphQL/schema/GraphQLInput/GraphQLInputLogin.mjs.map +1 -0
  92. package/dist/graphQL/schema/context/IContextAuthenticatedResource.d.mts +16 -0
  93. package/dist/graphQL/schema/context/IContextAuthenticatedResource.mjs +2 -0
  94. package/dist/graphQL/schema/context/IContextAuthenticatedResource.mjs.map +1 -0
  95. package/dist/graphQL/schema/context/IContextKoaErrorHandler.d.mts +11 -0
  96. package/dist/graphQL/schema/context/IContextKoaErrorHandler.mjs +2 -0
  97. package/dist/graphQL/schema/context/IContextKoaErrorHandler.mjs.map +1 -0
  98. package/dist/graphQL/schema/context/IContextLogin.d.mts +4 -0
  99. package/dist/graphQL/schema/context/IContextLogin.mjs +2 -0
  100. package/dist/graphQL/schema/context/IContextLogin.mjs.map +1 -0
  101. package/dist/graphQL/schema/context/IContextLogout.d.mts +18 -0
  102. package/dist/graphQL/schema/context/IContextLogout.mjs +2 -0
  103. package/dist/graphQL/schema/context/IContextLogout.mjs.map +1 -0
  104. package/dist/graphQL/schema/context/IContextRefresh.d.mts +19 -0
  105. package/dist/graphQL/schema/context/IContextRefresh.mjs +2 -0
  106. package/dist/graphQL/schema/context/IContextRefresh.mjs.map +1 -0
  107. package/dist/graphQL/schema/context/TCommonHeaders.d.mts +15 -0
  108. package/dist/graphQL/schema/context/TCommonHeaders.mjs +2 -0
  109. package/dist/graphQL/schema/context/TCommonHeaders.mjs.map +1 -0
  110. package/dist/graphQL/schema/interfaces/IFindAndUpdate.d.mts +16 -0
  111. package/dist/graphQL/schema/interfaces/IFindAndUpdate.mjs +2 -0
  112. package/dist/graphQL/schema/interfaces/IFindAndUpdate.mjs.map +1 -0
  113. package/dist/graphQL/schema/mutations/emailChangeHashVerify.d.mts +22 -0
  114. package/dist/graphQL/schema/mutations/emailChangeHashVerify.mjs +94 -0
  115. package/dist/graphQL/schema/mutations/emailChangeHashVerify.mjs.map +1 -0
  116. package/dist/graphQL/schema/mutations/login4Ever.d.mts +22 -0
  117. package/dist/graphQL/schema/mutations/login4Ever.mjs +60 -0
  118. package/dist/graphQL/schema/mutations/login4Ever.mjs.map +1 -0
  119. package/dist/graphQL/schema/mutations/loginAdmin.d.mts +29 -0
  120. package/dist/graphQL/schema/mutations/loginAdmin.mjs +59 -0
  121. package/dist/graphQL/schema/mutations/loginAdmin.mjs.map +1 -0
  122. package/dist/graphQL/schema/mutations/loginRememberme.d.mts +26 -0
  123. package/dist/graphQL/schema/mutations/loginRememberme.mjs +54 -0
  124. package/dist/graphQL/schema/mutations/loginRememberme.mjs.map +1 -0
  125. package/dist/graphQL/schema/mutations/logout.d.mts +7 -0
  126. package/dist/graphQL/schema/mutations/logout.mjs +28 -0
  127. package/dist/graphQL/schema/mutations/logout.mjs.map +1 -0
  128. package/dist/graphQL/schema/mutations/refresh.d.mts +10 -0
  129. package/dist/graphQL/schema/mutations/refresh.mjs +59 -0
  130. package/dist/graphQL/schema/mutations/refresh.mjs.map +1 -0
  131. package/dist/graphQL/schema/mutations/resetPwd.d.mts +19 -0
  132. package/dist/graphQL/schema/mutations/resetPwd.mjs +91 -0
  133. package/dist/graphQL/schema/mutations/resetPwd.mjs.map +1 -0
  134. package/dist/graphQL/schema/mutations/signUp.d.mts +19 -0
  135. package/dist/graphQL/schema/mutations/signUp.mjs +55 -0
  136. package/dist/graphQL/schema/mutations/signUp.mjs.map +1 -0
  137. package/dist/graphQL/schema/mutations/updatePassword.d.mts +23 -0
  138. package/dist/graphQL/schema/mutations/updatePassword.mjs +70 -0
  139. package/dist/graphQL/schema/mutations/updatePassword.mjs.map +1 -0
  140. package/dist/graphQL/schema/types/DeleteType.d.mts +6 -0
  141. package/dist/graphQL/schema/types/DeleteType.mjs +13 -0
  142. package/dist/graphQL/schema/types/DeleteType.mjs.map +1 -0
  143. package/dist/graphQL/schema/types/DoneType.d.mts +2 -0
  144. package/dist/graphQL/schema/types/DoneType.mjs +10 -0
  145. package/dist/graphQL/schema/types/DoneType.mjs.map +1 -0
  146. package/dist/graphQL/schema/types/FindOneAndUpdateType.d.mts +2 -0
  147. package/dist/graphQL/schema/types/FindOneAndUpdateType.mjs +15 -0
  148. package/dist/graphQL/schema/types/FindOneAndUpdateType.mjs.map +1 -0
  149. package/dist/graphQL/schema/types/LoginAppType.d.mts +2 -0
  150. package/dist/graphQL/schema/types/LoginAppType.mjs +11 -0
  151. package/dist/graphQL/schema/types/LoginAppType.mjs.map +1 -0
  152. package/dist/graphQL/schema/types/LoginType.d.mts +2 -0
  153. package/dist/graphQL/schema/types/LoginType.mjs +9 -0
  154. package/dist/graphQL/schema/types/LoginType.mjs.map +1 -0
  155. package/dist/graphQL/schema/types/MidNameType.d.mts +5 -0
  156. package/dist/graphQL/schema/types/MidNameType.mjs +12 -0
  157. package/dist/graphQL/schema/types/MidNameType.mjs.map +1 -0
  158. package/dist/graphQL/schema/types/OnlyIdType.d.mts +2 -0
  159. package/dist/graphQL/schema/types/OnlyIdType.mjs +8 -0
  160. package/dist/graphQL/schema/types/OnlyIdType.mjs.map +1 -0
  161. package/dist/graphQL/schema/types/RefreshType.d.mts +2 -0
  162. package/dist/graphQL/schema/types/RefreshType.mjs +10 -0
  163. package/dist/graphQL/schema/types/RefreshType.mjs.map +1 -0
  164. package/dist/graphQL/schema/types/RetStatusMexType.d.mts +2 -0
  165. package/dist/graphQL/schema/types/RetStatusMexType.mjs +9 -0
  166. package/dist/graphQL/schema/types/RetStatusMexType.mjs.map +1 -0
  167. package/dist/graphQL/schema/types/RetStatusType.d.mts +2 -0
  168. package/dist/graphQL/schema/types/RetStatusType.mjs +8 -0
  169. package/dist/graphQL/schema/types/RetStatusType.mjs.map +1 -0
  170. package/dist/graphQL/schema/types/SaveType.d.mts +2 -0
  171. package/dist/graphQL/schema/types/SaveType.mjs +9 -0
  172. package/dist/graphQL/schema/types/SaveType.mjs.map +1 -0
  173. package/dist/graphQL/schema/types/SidNameType.d.mts +5 -0
  174. package/dist/graphQL/schema/types/SidNameType.mjs +12 -0
  175. package/dist/graphQL/schema/types/SidNameType.mjs.map +1 -0
  176. package/dist/graphQL/schema/types/SidNomeType.d.mts +5 -0
  177. package/dist/graphQL/schema/types/SidNomeType.mjs +12 -0
  178. package/dist/graphQL/schema/types/SidNomeType.mjs.map +1 -0
  179. package/dist/graphQL/schema/types/UpdateResultType.d.mts +2 -0
  180. package/dist/graphQL/schema/types/UpdateResultType.mjs +9 -0
  181. package/dist/graphQL/schema/types/UpdateResultType.mjs.map +1 -0
  182. package/dist/graphQL/status.d.mts +7 -0
  183. package/dist/graphQL/status.mjs +8 -0
  184. package/dist/graphQL/status.mjs.map +1 -0
  185. package/dist/graphQL/throw/throwAccessTokenExpiredOrDeleted.d.mts +1 -0
  186. package/dist/graphQL/throw/throwAccessTokenExpiredOrDeleted.mjs +5 -0
  187. package/dist/graphQL/throw/throwAccessTokenExpiredOrDeleted.mjs.map +1 -0
  188. package/dist/graphQL/throw/throwAccessTokenRequired.d.mts +1 -0
  189. package/dist/graphQL/throw/throwAccessTokenRequired.mjs +5 -0
  190. package/dist/graphQL/throw/throwAccessTokenRequired.mjs.map +1 -0
  191. package/dist/graphQL/throw/throwAlreadyDone.d.mts +4 -0
  192. package/dist/graphQL/throw/throwAlreadyDone.mjs +8 -0
  193. package/dist/graphQL/throw/throwAlreadyDone.mjs.map +1 -0
  194. package/dist/graphQL/throw/throwAlreadyTakenError.d.mts +1 -0
  195. package/dist/graphQL/throw/throwAlreadyTakenError.mjs +6 -0
  196. package/dist/graphQL/throw/throwAlreadyTakenError.mjs.map +1 -0
  197. package/dist/graphQL/throw/throwConflictError.d.mts +1 -0
  198. package/dist/graphQL/throw/throwConflictError.mjs +6 -0
  199. package/dist/graphQL/throw/throwConflictError.mjs.map +1 -0
  200. package/dist/graphQL/throw/throwErrorWrongUserInput.d.mts +1 -0
  201. package/dist/graphQL/throw/throwErrorWrongUserInput.mjs +5 -0
  202. package/dist/graphQL/throw/throwErrorWrongUserInput.mjs.map +1 -0
  203. package/dist/graphQL/throw/throwForbiddenError.d.mts +1 -0
  204. package/dist/graphQL/throw/throwForbiddenError.mjs +5 -0
  205. package/dist/graphQL/throw/throwForbiddenError.mjs.map +1 -0
  206. package/dist/graphQL/throw/throwGoneError.d.mts +1 -0
  207. package/dist/graphQL/throw/throwGoneError.mjs +6 -0
  208. package/dist/graphQL/throw/throwGoneError.mjs.map +1 -0
  209. package/dist/graphQL/throw/throwGraphQLError.d.mts +1 -0
  210. package/dist/graphQL/throw/throwGraphQLError.mjs +10 -0
  211. package/dist/graphQL/throw/throwGraphQLError.mjs.map +1 -0
  212. package/dist/graphQL/throw/throwInternalError.d.mts +1 -0
  213. package/dist/graphQL/throw/throwInternalError.mjs +5 -0
  214. package/dist/graphQL/throw/throwInternalError.mjs.map +1 -0
  215. package/dist/graphQL/throw/throwMethodNotAllowedError.d.mts +1 -0
  216. package/dist/graphQL/throw/throwMethodNotAllowedError.mjs +6 -0
  217. package/dist/graphQL/throw/throwMethodNotAllowedError.mjs.map +1 -0
  218. package/dist/graphQL/throw/throwMissingMalformedInvalidToken.d.mts +1 -0
  219. package/dist/graphQL/throw/throwMissingMalformedInvalidToken.mjs +5 -0
  220. package/dist/graphQL/throw/throwMissingMalformedInvalidToken.mjs.map +1 -0
  221. package/dist/graphQL/throw/throwNotAcceptableError.d.mts +1 -0
  222. package/dist/graphQL/throw/throwNotAcceptableError.mjs +6 -0
  223. package/dist/graphQL/throw/throwNotAcceptableError.mjs.map +1 -0
  224. package/dist/graphQL/throw/throwNotFoundError.d.mts +1 -0
  225. package/dist/graphQL/throw/throwNotFoundError.mjs +6 -0
  226. package/dist/graphQL/throw/throwNotFoundError.mjs.map +1 -0
  227. package/dist/graphQL/throw/throwNotImplementedError.d.mts +1 -0
  228. package/dist/graphQL/throw/throwNotImplementedError.mjs +6 -0
  229. package/dist/graphQL/throw/throwNotImplementedError.mjs.map +1 -0
  230. package/dist/graphQL/throw/throwPaymentRequiredError.d.mts +1 -0
  231. package/dist/graphQL/throw/throwPaymentRequiredError.mjs +5 -0
  232. package/dist/graphQL/throw/throwPaymentRequiredError.mjs.map +1 -0
  233. package/dist/graphQL/throw/throwPreconditionFailedNoAuthCookie.d.mts +1 -0
  234. package/dist/graphQL/throw/throwPreconditionFailedNoAuthCookie.mjs +5 -0
  235. package/dist/graphQL/throw/throwPreconditionFailedNoAuthCookie.mjs.map +1 -0
  236. package/dist/graphQL/throw/throwPreconditionFailedNoAuthHeader.d.mts +1 -0
  237. package/dist/graphQL/throw/throwPreconditionFailedNoAuthHeader.mjs +5 -0
  238. package/dist/graphQL/throw/throwPreconditionFailedNoAuthHeader.mjs.map +1 -0
  239. package/dist/graphQL/throw/throwRefreshTokenExpiredOrDeleted.d.mts +1 -0
  240. package/dist/graphQL/throw/throwRefreshTokenExpiredOrDeleted.mjs +5 -0
  241. package/dist/graphQL/throw/throwRefreshTokenExpiredOrDeleted.mjs.map +1 -0
  242. package/dist/graphQL/throw/throwRefreshTokenRequired.d.mts +1 -0
  243. package/dist/graphQL/throw/throwRefreshTokenRequired.mjs +5 -0
  244. package/dist/graphQL/throw/throwRefreshTokenRequired.mjs.map +1 -0
  245. package/dist/graphQL/throw/throwRefreshTokenSignatureRequired.d.mts +1 -0
  246. package/dist/graphQL/throw/throwRefreshTokenSignatureRequired.mjs +5 -0
  247. package/dist/graphQL/throw/throwRefreshTokenSignatureRequired.mjs.map +1 -0
  248. package/dist/graphQL/throw/throwTooManyRequestsError.d.mts +1 -0
  249. package/dist/graphQL/throw/throwTooManyRequestsError.mjs +5 -0
  250. package/dist/graphQL/throw/throwTooManyRequestsError.mjs.map +1 -0
  251. package/dist/graphQL/throw/throwUnauthorizedError.d.mts +1 -0
  252. package/dist/graphQL/throw/throwUnauthorizedError.mjs +5 -0
  253. package/dist/graphQL/throw/throwUnauthorizedError.mjs.map +1 -0
  254. package/dist/graphQL/throw/throwUnprocessableContentError.d.mts +1 -0
  255. package/dist/graphQL/throw/throwUnprocessableContentError.mjs +5 -0
  256. package/dist/graphQL/throw/throwUnprocessableContentError.mjs.map +1 -0
  257. package/dist/graphQL/throw/throwUnsupportedMediaTypeError.d.mts +1 -0
  258. package/dist/graphQL/throw/throwUnsupportedMediaTypeError.mjs +5 -0
  259. package/dist/graphQL/throw/throwUnsupportedMediaTypeError.mjs.map +1 -0
  260. package/dist/koa/IFileUpload.d.mts +6 -0
  261. package/dist/koa/IFileUpload.mjs +2 -0
  262. package/dist/koa/IFileUpload.mjs.map +1 -0
  263. package/dist/koa/IKoaError.d.mts +15 -0
  264. package/dist/koa/IKoaError.mjs +2 -0
  265. package/dist/koa/IKoaError.mjs.map +1 -0
  266. package/dist/koa/customFormatErrorFn.d.mts +2 -0
  267. package/dist/koa/customFormatErrorFn.mjs +10 -0
  268. package/dist/koa/customFormatErrorFn.mjs.map +1 -0
  269. package/dist/koa/logRequestToDb.d.mts +3 -0
  270. package/dist/koa/logRequestToDb.mjs +16 -0
  271. package/dist/koa/logRequestToDb.mjs.map +1 -0
  272. package/dist/koa/middleware/authenticatedAuthorizationHandler/TCookieRefreshToken.d.mts +4 -0
  273. package/dist/koa/middleware/authenticatedAuthorizationHandler/TCookieRefreshToken.mjs +2 -0
  274. package/dist/koa/middleware/authenticatedAuthorizationHandler/TCookieRefreshToken.mjs.map +1 -0
  275. package/dist/koa/middleware/authenticatedAuthorizationHandler/index.d.mts +4 -0
  276. package/dist/koa/middleware/authenticatedAuthorizationHandler/index.mjs +35 -0
  277. package/dist/koa/middleware/authenticatedAuthorizationHandler/index.mjs.map +1 -0
  278. package/dist/koa/middleware/authenticatedAuthorizationHandler/verifySignedRefreshToken.d.mts +3 -0
  279. package/dist/koa/middleware/authenticatedAuthorizationHandler/verifySignedRefreshToken.mjs +41 -0
  280. package/dist/koa/middleware/authenticatedAuthorizationHandler/verifySignedRefreshToken.mjs.map +1 -0
  281. package/dist/koa/middleware/authenticatedLogoutHandler/index.d.mts +4 -0
  282. package/dist/koa/middleware/authenticatedLogoutHandler/index.mjs +65 -0
  283. package/dist/koa/middleware/authenticatedLogoutHandler/index.mjs.map +1 -0
  284. package/dist/koa/middleware/authenticatedResourceHandler/index.d.mts +6 -0
  285. package/dist/koa/middleware/authenticatedResourceHandler/index.mjs +47 -0
  286. package/dist/koa/middleware/authenticatedResourceHandler/index.mjs.map +1 -0
  287. package/dist/koa/middleware/debug/index.d.mts +3 -0
  288. package/dist/koa/middleware/debug/index.mjs +9 -0
  289. package/dist/koa/middleware/debug/index.mjs.map +1 -0
  290. package/dist/koa/router/verifyEmail.d.mts +2 -0
  291. package/dist/koa/router/verifyEmail.mjs +46 -0
  292. package/dist/koa/router/verifyEmail.mjs.map +1 -0
  293. package/dist/koa/tdwKoaErrorHandler.d.mts +3 -0
  294. package/dist/koa/tdwKoaErrorHandler.mjs +40 -0
  295. package/dist/koa/tdwKoaErrorHandler.mjs.map +1 -0
  296. package/dist/lib/ArrayLib.d.mts +4 -0
  297. package/dist/lib/ArrayLib.mjs +10 -0
  298. package/dist/lib/ArrayLib.mjs.map +1 -0
  299. package/dist/lib/Constants.d.mts +7 -0
  300. package/dist/lib/Constants.mjs +8 -0
  301. package/dist/lib/Constants.mjs.map +1 -0
  302. package/dist/lib/DateLib.d.mts +9 -0
  303. package/dist/lib/DateLib.mjs +36 -0
  304. package/dist/lib/DateLib.mjs.map +1 -0
  305. package/dist/lib/IAuthorizationDisDel.d.mts +4 -0
  306. package/dist/lib/IAuthorizationDisDel.mjs +2 -0
  307. package/dist/lib/IAuthorizationDisDel.mjs.map +1 -0
  308. package/dist/lib/ICookies.d.mts +13 -0
  309. package/dist/lib/ICookies.mjs +2 -0
  310. package/dist/lib/ICookies.mjs.map +1 -0
  311. package/dist/lib/MariaDB/IMariaDBErr.d.mts +6 -0
  312. package/dist/lib/MariaDB/IMariaDBErr.mjs +2 -0
  313. package/dist/lib/MariaDB/IMariaDBErr.mjs.map +1 -0
  314. package/dist/lib/MariaDB/MariaDBErrType.d.mts +3 -0
  315. package/dist/lib/MariaDB/MariaDBErrType.mjs +6 -0
  316. package/dist/lib/MariaDB/MariaDBErrType.mjs.map +1 -0
  317. package/dist/lib/MariaDB/throwSqlErrors.d.mts +2 -0
  318. package/dist/lib/MariaDB/throwSqlErrors.mjs +22 -0
  319. package/dist/lib/MariaDB/throwSqlErrors.mjs.map +1 -0
  320. package/dist/lib/MongoDB/IMongoDBError.d.mts +12 -0
  321. package/dist/lib/MongoDB/IMongoDBError.mjs +2 -0
  322. package/dist/lib/MongoDB/IMongoDBError.mjs.map +1 -0
  323. package/dist/lib/MongoDB/IOnboarding.d.mts +4 -0
  324. package/dist/lib/MongoDB/IOnboarding.mjs +2 -0
  325. package/dist/lib/MongoDB/IOnboarding.mjs.map +1 -0
  326. package/dist/lib/MongoDB/MongoDBErrType.d.mts +3 -0
  327. package/dist/lib/MongoDB/MongoDBErrType.mjs +5 -0
  328. package/dist/lib/MongoDB/MongoDBErrType.mjs.map +1 -0
  329. package/dist/lib/MongoDB/throwIfMongoErr.d.mts +2 -0
  330. package/dist/lib/MongoDB/throwIfMongoErr.mjs +16 -0
  331. package/dist/lib/MongoDB/throwIfMongoErr.mjs.map +1 -0
  332. package/dist/lib/MongoDB/throwMongoErrors.d.mts +2 -0
  333. package/dist/lib/MongoDB/throwMongoErrors.mjs +10 -0
  334. package/dist/lib/MongoDB/throwMongoErrors.mjs.map +1 -0
  335. package/dist/lib/NumLib.d.mts +10 -0
  336. package/dist/lib/NumLib.mjs +14 -0
  337. package/dist/lib/NumLib.mjs.map +1 -0
  338. package/dist/lib/PostgreSQL/IPostgresError.d.mts +6 -0
  339. package/dist/lib/PostgreSQL/IPostgresError.mjs +2 -0
  340. package/dist/lib/PostgreSQL/IPostgresError.mjs.map +1 -0
  341. package/dist/lib/PostgreSQL/IPostgresErrorCodes.d.mts +3 -0
  342. package/dist/lib/PostgreSQL/IPostgresErrorCodes.mjs +5 -0
  343. package/dist/lib/PostgreSQL/IPostgresErrorCodes.mjs.map +1 -0
  344. package/dist/lib/PostgreSQL/makePostgreSqlLogError.d.mts +2 -0
  345. package/dist/lib/PostgreSQL/makePostgreSqlLogError.mjs +4 -0
  346. package/dist/lib/PostgreSQL/makePostgreSqlLogError.mjs.map +1 -0
  347. package/dist/lib/Redis/RedisBoolean.d.mts +4 -0
  348. package/dist/lib/Redis/RedisBoolean.mjs +6 -0
  349. package/dist/lib/Redis/RedisBoolean.mjs.map +1 -0
  350. package/dist/lib/Redis/fromRedisBooleanValue.d.mts +2 -0
  351. package/dist/lib/Redis/fromRedisBooleanValue.mjs +5 -0
  352. package/dist/lib/Redis/fromRedisBooleanValue.mjs.map +1 -0
  353. package/dist/lib/Redis/toRedisBooleanValue.d.mts +2 -0
  354. package/dist/lib/Redis/toRedisBooleanValue.mjs +5 -0
  355. package/dist/lib/Redis/toRedisBooleanValue.mjs.map +1 -0
  356. package/dist/lib/StringLib.d.mts +16 -0
  357. package/dist/lib/StringLib.mjs +58 -0
  358. package/dist/lib/StringLib.mjs.map +1 -0
  359. package/dist/lib/checkEmailLen.d.mts +1 -0
  360. package/dist/lib/checkEmailLen.mjs +11 -0
  361. package/dist/lib/checkEmailLen.mjs.map +1 -0
  362. package/dist/lib/checkPwdLen.d.mts +1 -0
  363. package/dist/lib/checkPwdLen.mjs +13 -0
  364. package/dist/lib/checkPwdLen.mjs.map +1 -0
  365. package/dist/lib/db/log/hitStat.d.mts +1 -0
  366. package/dist/lib/db/log/hitStat.mjs +13 -0
  367. package/dist/lib/db/log/hitStat.mjs.map +1 -0
  368. package/dist/lib/db/log/logGlobalError.d.mts +6 -0
  369. package/dist/lib/db/log/logGlobalError.mjs +12 -0
  370. package/dist/lib/db/log/logGlobalError.mjs.map +1 -0
  371. package/dist/lib/db/log/logGraphql.d.mts +9 -0
  372. package/dist/lib/db/log/logGraphql.mjs +27 -0
  373. package/dist/lib/db/log/logGraphql.mjs.map +1 -0
  374. package/dist/lib/db/log/logThrow.d.mts +1 -0
  375. package/dist/lib/db/log/logThrow.mjs +15 -0
  376. package/dist/lib/db/log/logThrow.mjs.map +1 -0
  377. package/dist/lib/db/login/ILoginSet.d.mts +7 -0
  378. package/dist/lib/db/login/ILoginSet.mjs +2 -0
  379. package/dist/lib/db/login/ILoginSet.mjs.map +1 -0
  380. package/dist/lib/db/login/ILoginUnset.d.mts +5 -0
  381. package/dist/lib/db/login/ILoginUnset.mjs +2 -0
  382. package/dist/lib/db/login/ILoginUnset.mjs.map +1 -0
  383. package/dist/lib/db/registerNewUser.d.mts +2 -0
  384. package/dist/lib/db/registerNewUser.mjs +33 -0
  385. package/dist/lib/db/registerNewUser.mjs.map +1 -0
  386. package/dist/lib/db/userExist.d.mts +2 -0
  387. package/dist/lib/db/userExist.mjs +8 -0
  388. package/dist/lib/db/userExist.mjs.map +1 -0
  389. package/dist/lib/emailHash.d.mts +1 -0
  390. package/dist/lib/emailHash.mjs +7 -0
  391. package/dist/lib/emailHash.mjs.map +1 -0
  392. package/dist/lib/encryptPassword.d.mts +1 -0
  393. package/dist/lib/encryptPassword.mjs +6 -0
  394. package/dist/lib/encryptPassword.mjs.map +1 -0
  395. package/dist/lib/hash.d.mts +6 -0
  396. package/dist/lib/hash.mjs +15 -0
  397. package/dist/lib/hash.mjs.map +1 -0
  398. package/dist/lib/makeOnboardingData.d.mts +2 -0
  399. package/dist/lib/makeOnboardingData.mjs +4 -0
  400. package/dist/lib/makeOnboardingData.mjs.map +1 -0
  401. package/dist/lib/setLoginCookies.d.mts +2 -0
  402. package/dist/lib/setLoginCookies.mjs +10 -0
  403. package/dist/lib/setLoginCookies.mjs.map +1 -0
  404. package/dist/lib/sleepMs.d.mts +1 -0
  405. package/dist/lib/sleepMs.mjs +2 -0
  406. package/dist/lib/sleepMs.mjs.map +1 -0
  407. package/dist/lib/throwIfNotValidEnumValue.d.mts +1 -0
  408. package/dist/lib/throwIfNotValidEnumValue.mjs +8 -0
  409. package/dist/lib/throwIfNotValidEnumValue.mjs.map +1 -0
  410. package/dist/lib/tokenOptions.d.mts +12 -0
  411. package/dist/lib/tokenOptions.mjs +17 -0
  412. package/dist/lib/tokenOptions.mjs.map +1 -0
  413. package/dist/lib/tokens.d.mts +4 -0
  414. package/dist/lib/tokens.mjs +22 -0
  415. package/dist/lib/tokens.mjs.map +1 -0
  416. package/dist/lib/tryCatchRethrow.d.mts +2 -0
  417. package/dist/lib/tryCatchRethrow.mjs +20 -0
  418. package/dist/lib/tryCatchRethrow.mjs.map +1 -0
  419. package/dist/private/files/_validateMimeType.d.mts +6 -0
  420. package/dist/private/files/_validateMimeType.mjs +21 -0
  421. package/dist/private/files/_validateMimeType.mjs.map +1 -0
  422. package/dist/private/files/reEncode.d.mts +10 -0
  423. package/dist/private/files/reEncode.mjs +61 -0
  424. package/dist/private/files/reEncode.mjs.map +1 -0
  425. package/dist/private/graphQL/Consts.d.mts +2 -0
  426. package/dist/private/graphQL/Consts.mjs +3 -0
  427. package/dist/private/graphQL/Consts.mjs.map +1 -0
  428. package/dist/private/graphQL/models/MongoDB/private/UserAdminKoaUtils.d.mts +58 -0
  429. package/dist/private/graphQL/models/MongoDB/private/UserAdminKoaUtils.mjs +107 -0
  430. package/dist/private/graphQL/models/MongoDB/private/UserAdminKoaUtils.mjs.map +1 -0
  431. package/dist/private/graphQL/schema/context/IContextLog.d.mts +15 -0
  432. package/dist/private/graphQL/schema/context/IContextLog.mjs +2 -0
  433. package/dist/private/graphQL/schema/context/IContextLog.mjs.map +1 -0
  434. package/dist/private/graphQL/schema/context/IContextVerifyEmail.d.mts +7 -0
  435. package/dist/private/graphQL/schema/context/IContextVerifyEmail.mjs +2 -0
  436. package/dist/private/graphQL/schema/context/IContextVerifyEmail.mjs.map +1 -0
  437. package/dist/private/graphQL/schema/mutations/checkUserAdminLoginAuthorization.d.mts +5 -0
  438. package/dist/private/graphQL/schema/mutations/checkUserAdminLoginAuthorization.mjs +30 -0
  439. package/dist/private/graphQL/schema/mutations/checkUserAdminLoginAuthorization.mjs.map +1 -0
  440. package/dist/private/graphQL/schema/mutations/checkUserLoginAuthorization.d.mts +5 -0
  441. package/dist/private/graphQL/schema/mutations/checkUserLoginAuthorization.mjs +32 -0
  442. package/dist/private/graphQL/schema/mutations/checkUserLoginAuthorization.mjs.map +1 -0
  443. package/dist/private/graphQL/schema/mutations/infoUserAdminForLogin.d.mts +3 -0
  444. package/dist/private/graphQL/schema/mutations/infoUserAdminForLogin.mjs +14 -0
  445. package/dist/private/graphQL/schema/mutations/infoUserAdminForLogin.mjs.map +1 -0
  446. package/dist/private/graphQL/schema/mutations/infoUserForLogin.d.mts +3 -0
  447. package/dist/private/graphQL/schema/mutations/infoUserForLogin.mjs +14 -0
  448. package/dist/private/graphQL/schema/mutations/infoUserForLogin.mjs.map +1 -0
  449. package/dist/private/graphQL/schema/mutations/infoUserForLoginSQL.d.mts +8 -0
  450. package/dist/private/graphQL/schema/mutations/infoUserForLoginSQL.mjs +16 -0
  451. package/dist/private/graphQL/schema/mutations/infoUserForLoginSQL.mjs.map +1 -0
  452. package/dist/private/graphQL/schema/mutations/setLastLoginSQL.d.mts +1 -0
  453. package/dist/private/graphQL/schema/mutations/setLastLoginSQL.mjs +25 -0
  454. package/dist/private/graphQL/schema/mutations/setLastLoginSQL.mjs.map +1 -0
  455. package/dist/private/graphQL/schema/mutations/setRedisLoginSession.d.mts +2 -0
  456. package/dist/private/graphQL/schema/mutations/setRedisLoginSession.mjs +33 -0
  457. package/dist/private/graphQL/schema/mutations/setRedisLoginSession.mjs.map +1 -0
  458. package/dist/private/graphQL/schema/mutations/updateAdminLoginStats.d.mts +2 -0
  459. package/dist/private/graphQL/schema/mutations/updateAdminLoginStats.mjs +27 -0
  460. package/dist/private/graphQL/schema/mutations/updateAdminLoginStats.mjs.map +1 -0
  461. package/dist/private/graphQL/schema/mutations/updateLoginStats4ever.d.mts +2 -0
  462. package/dist/private/graphQL/schema/mutations/updateLoginStats4ever.mjs +18 -0
  463. package/dist/private/graphQL/schema/mutations/updateLoginStats4ever.mjs.map +1 -0
  464. package/dist/private/graphQL/schema/mutations/updateLoginStatsRememberme.d.mts +2 -0
  465. package/dist/private/graphQL/schema/mutations/updateLoginStatsRememberme.mjs +27 -0
  466. package/dist/private/graphQL/schema/mutations/updateLoginStatsRememberme.mjs.map +1 -0
  467. package/dist/private/lib/access/Constants.d.mts +2 -0
  468. package/dist/private/lib/access/Constants.mjs +4 -0
  469. package/dist/private/lib/access/Constants.mjs.map +1 -0
  470. package/dist/private/lib/access/db/confirmNewEmail.d.mts +2 -0
  471. package/dist/private/lib/access/db/confirmNewEmail.mjs +13 -0
  472. package/dist/private/lib/access/db/confirmNewEmail.mjs.map +1 -0
  473. package/dist/private/lib/access/db/deleteUserByEmail.d.mts +1 -0
  474. package/dist/private/lib/access/db/deleteUserByEmail.mjs +8 -0
  475. package/dist/private/lib/access/db/deleteUserByEmail.mjs.map +1 -0
  476. package/dist/private/lib/access/db/enableEmailAccess.d.mts +2 -0
  477. package/dist/private/lib/access/db/enableEmailAccess.mjs +17 -0
  478. package/dist/private/lib/access/db/enableEmailAccess.mjs.map +1 -0
  479. package/dist/private/lib/access/db/getResetPwd.d.mts +7 -0
  480. package/dist/private/lib/access/db/getResetPwd.mjs +24 -0
  481. package/dist/private/lib/access/db/getResetPwd.mjs.map +1 -0
  482. package/dist/private/lib/access/db/incReqTimes.d.mts +2 -0
  483. package/dist/private/lib/access/db/incReqTimes.mjs +5 -0
  484. package/dist/private/lib/access/db/incReqTimes.mjs.map +1 -0
  485. package/dist/private/lib/access/db/removeResetReq.d.mts +2 -0
  486. package/dist/private/lib/access/db/removeResetReq.mjs +7 -0
  487. package/dist/private/lib/access/db/removeResetReq.mjs.map +1 -0
  488. package/dist/private/lib/access/db/saveResetReq.d.mts +2 -0
  489. package/dist/private/lib/access/db/saveResetReq.mjs +17 -0
  490. package/dist/private/lib/access/db/saveResetReq.mjs.map +1 -0
  491. package/dist/private/lib/access/db/setEmailHash.d.mts +2 -0
  492. package/dist/private/lib/access/db/setEmailHash.mjs +16 -0
  493. package/dist/private/lib/access/db/setEmailHash.mjs.map +1 -0
  494. package/dist/private/lib/access/db/updatePasswordDb.d.mts +2 -0
  495. package/dist/private/lib/access/db/updatePasswordDb.mjs +8 -0
  496. package/dist/private/lib/access/db/updatePasswordDb.mjs.map +1 -0
  497. package/dist/private/lib/access/db/userData4VerifyEmail.d.mts +3 -0
  498. package/dist/private/lib/access/db/userData4VerifyEmail.mjs +16 -0
  499. package/dist/private/lib/access/db/userData4VerifyEmail.mjs.map +1 -0
  500. package/dist/private/lib/access/handleBadDB.d.mts +1 -0
  501. package/dist/private/lib/access/handleBadDB.mjs +9 -0
  502. package/dist/private/lib/access/handleBadDB.mjs.map +1 -0
  503. package/dist/private/lib/access/handleIfAccountDeleted.d.mts +1 -0
  504. package/dist/private/lib/access/handleIfAccountDeleted.mjs +10 -0
  505. package/dist/private/lib/access/handleIfAccountDeleted.mjs.map +1 -0
  506. package/dist/private/lib/access/handleIfAccountDisabled.d.mts +1 -0
  507. package/dist/private/lib/access/handleIfAccountDisabled.mjs +10 -0
  508. package/dist/private/lib/access/handleIfAccountDisabled.mjs.map +1 -0
  509. package/dist/private/lib/access/handleIfEmailAlreadyValid.d.mts +1 -0
  510. package/dist/private/lib/access/handleIfEmailAlreadyValid.mjs +10 -0
  511. package/dist/private/lib/access/handleIfEmailAlreadyValid.mjs.map +1 -0
  512. package/dist/private/lib/access/handleIfHashBad.d.mts +11 -0
  513. package/dist/private/lib/access/handleIfHashBad.mjs +22 -0
  514. package/dist/private/lib/access/handleIfHashBad.mjs.map +1 -0
  515. package/dist/private/lib/access/handleIfMoreThan3DaysPassed.d.mts +1 -0
  516. package/dist/private/lib/access/handleIfMoreThan3DaysPassed.mjs +23 -0
  517. package/dist/private/lib/access/handleIfMoreThan3DaysPassed.mjs.map +1 -0
  518. package/dist/private/lib/access/handleIfTooMuchRequestsTimes.d.mts +1 -0
  519. package/dist/private/lib/access/handleIfTooMuchRequestsTimes.mjs +13 -0
  520. package/dist/private/lib/access/handleIfTooMuchRequestsTimes.mjs.map +1 -0
  521. package/dist/private/lib/makeBodyJson.d.mts +1 -0
  522. package/dist/private/lib/makeBodyJson.mjs +7 -0
  523. package/dist/private/lib/makeBodyJson.mjs.map +1 -0
  524. package/package.json +656 -0
@@ -0,0 +1,44 @@
1
+ import * as Sentry from '@sentry/node';
2
+ import * as dotenv from 'dotenv';
3
+ import { createClient, createCluster } from 'redis';
4
+ dotenv.config();
5
+ export const redisClient = process.env.REDIS_IS_CLUSTER === '1'
6
+ ? createCluster({
7
+ rootNodes: [
8
+ { url: `redis://${process.env.REDIS_DB1_HOST}:${process.env.REDIS_DB1_PORT}` },
9
+ { url: `redis://${process.env.REDIS_DB2_HOST}:${process.env.REDIS_DB2_PORT}` },
10
+ { url: `redis://${process.env.REDIS_DB3_HOST}:${process.env.REDIS_DB3_PORT}` }
11
+ ],
12
+ defaults: {
13
+ username: process.env.REDIS_USERNAME,
14
+ password: process.env.REDIS_PASSWORD
15
+ }
16
+ })
17
+ : createClient({ url: process.env.REDIS_URL });
18
+ export const RedisConnect = async () => {
19
+ console.info('[Redis] Try connect to database... ');
20
+ redisClient.on('error', e => {
21
+ console.error('Redis Client Error');
22
+ Sentry.captureException(e);
23
+ });
24
+ await redisClient.connect();
25
+ console.info('[Redis] OK: Redis connection has been established successfully. ');
26
+ };
27
+ export async function RedisDisconnect() {
28
+ console.info('[Redis] Try close connection to database... ');
29
+ try {
30
+ await redisClient.quit(); // Gracefully close a client's connection to Redis
31
+ console.info('[Redis] OK: Redis connection has been closed successfully.');
32
+ }
33
+ catch (e) {
34
+ if (e instanceof Error && e.message === 'The client is closed') {
35
+ console.info('[Redis] Client was already closed');
36
+ return; // Continue execution if client is already closed
37
+ }
38
+ // For any other errors, log and re-throw
39
+ console.error('[Redis] Error during disconnection');
40
+ Sentry.captureException(e);
41
+ throw e;
42
+ }
43
+ }
44
+ //# sourceMappingURL=Redis.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Redis.mjs","sourceRoot":"","sources":["../../../src/dataSources/Redis.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAChC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAEnD,MAAM,CAAC,MAAM,EAAE,CAAA;AAEf,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,GAAG;IAC9D,CAAC,CAAC,aAAa,CAAC;QACf,SAAS,EAAE;YACV,EAAE,GAAG,EAAE,WAAW,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE;YAC9E,EAAE,GAAG,EAAE,WAAW,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE;YAC9E,EAAE,GAAG,EAAE,WAAW,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE;SAC9E;QACD,QAAQ,EAAE;YACT,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;YACpC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;SACpC;KACD,CAAC;IACF,CAAC,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAA;AAE/C,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE;IACtC,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAA;IAEnD,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE;QAC3B,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;QACnC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IACF,MAAM,WAAW,CAAC,OAAO,EAAE,CAAA;IAC3B,OAAO,CAAC,IAAI,CACX,kEAAkE,CAClE,CAAA;AACF,CAAC,CAAA;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACpC,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAA;IAC5D,IAAI,CAAC;QACJ,MAAM,WAAW,CAAC,IAAI,EAAE,CAAA,CAAC,kDAAkD;QAC3E,OAAO,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAA;IAC3E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,KAAK,sBAAsB,EAAE,CAAC;YAChE,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAA;YACjD,OAAM,CAAC,iDAAiD;QACzD,CAAC;QACD,yCAAyC;QACzC,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAA;QACnD,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;QAC1B,MAAM,CAAC,CAAA;IACR,CAAC;AACF,CAAC"}
@@ -0,0 +1,109 @@
1
+ interface IInfoUtente {
2
+ _id: string;
3
+ personalData: {
4
+ name: string;
5
+ surname: string;
6
+ };
7
+ }
8
+ export declare class SocketLabsLib {
9
+ private StringObj;
10
+ private readonly platformName;
11
+ private readonly linkBase;
12
+ private readonly emailFrom;
13
+ private client;
14
+ private readonly emailHtmlHeader1;
15
+ private readonly emailHtmlHeader2;
16
+ private readonly emailHtmlFooter;
17
+ constructor(htmlHeader1?: string, htmlHeader2?: string, htmlFooter?: string);
18
+ sendEmailVerify(emailTo: string, hash: string, name?: string): Promise<boolean>;
19
+ /**
20
+ * @fixme gestire retry
21
+ *
22
+ statusCode: ECONNABORTED
23
+ Error in sending the email
24
+ SendResponse {
25
+ transactionReceipt: null,
26
+ addressResults: null,
27
+ result: {
28
+ name: 'Timeout',
29
+ value: 1,
30
+ message: 'A timeout occurred sending the message'
31
+ },
32
+ responseMessage: 'A timeout occurred sending the message'
33
+ }
34
+ */
35
+ sendEmailChangeVerify(emailTo: string, hash: string, name?: string): Promise<boolean>;
36
+ sendWelcome(emailTo: string): Promise<boolean>;
37
+ /**
38
+ * Send account disabled notification
39
+ * @param emailTo
40
+ */
41
+ accountDisabled(emailTo: string): Promise<boolean>;
42
+ /**
43
+ * Send account disabled notification
44
+ * @param emailTo
45
+ */
46
+ accountBanned(emailTo: string): Promise<boolean>;
47
+ /**
48
+ * alertDevTeam
49
+ * @param err
50
+ */
51
+ alertDevTeam(err: string): Promise<boolean>;
52
+ /**
53
+ *
54
+ * @param emailTo
55
+ * @param times
56
+ */
57
+ wrongHash(emailTo: string, times: number): Promise<boolean>;
58
+ /*****************
59
+ * Too much verify requests
60
+ * @param emailTo
61
+ * @returns {Promise<string|null>}
62
+ */
63
+ tooMuchVerifyRequests(emailTo: string): Promise<boolean>;
64
+ /*****************
65
+ * @param emailTo
66
+ * @returns {Promise<string|null>}
67
+ */
68
+ hashReqTooOld(emailTo: string): Promise<boolean>;
69
+ /*****************
70
+ * @param emailTo
71
+ * @returns {Promise<string|null>}
72
+ */
73
+ emailAlreadyValid(emailTo: string): Promise<boolean>;
74
+ /**
75
+ * Send subscription email
76
+ * @param emailTo
77
+ * @param otp
78
+ */
79
+ sendSubscriptionEmail(emailTo: string, otp: string): Promise<boolean>;
80
+ sendConfermaResetPwd(emailTo: string, name?: string): Promise<boolean>;
81
+ sendConfermaResetPwdHash(email: string, name: string, hash: string): Promise<true | null>;
82
+ sendEmailReset(emailTo: string, hash: string, name?: string): Promise<boolean>;
83
+ /**
84
+ * fallback footer
85
+ */
86
+ htmlFooter(): string;
87
+ /**
88
+ * send OTP
89
+ * @param emailTo
90
+ * @param otp
91
+ */
92
+ sendOTP(emailTo: string, otp: string): Promise<null>;
93
+ sendEmailPostSegnalato(infoUtente: IInfoUtente, idPost: number | string): Promise<boolean>;
94
+ getHtmlHeader(title: string): string;
95
+ getHtmlFooter(): string;
96
+ private sendEmail;
97
+ /**
98
+ * fallback header
99
+ * @private
100
+ */
101
+ private htmlHeader1;
102
+ /**
103
+ * fallback header
104
+ * @private
105
+ */
106
+ private htmlHeader2;
107
+ private fixName;
108
+ }
109
+ export {};
@@ -0,0 +1,500 @@
1
+ import { StringLib } from "../lib/StringLib.mjs";
2
+ import * as Sentry from '@sentry/node';
3
+ import { BasicMessage, SocketLabsClient } from '@socketlabs/email';
4
+ import { throwInternalError } from "../graphQL/throw/throwInternalError.mjs";
5
+ import * as dotenv from 'dotenv';
6
+ dotenv.config();
7
+ export class SocketLabsLib {
8
+ StringObj;
9
+ platformName;
10
+ linkBase;
11
+ emailFrom;
12
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
+ client;
14
+ emailHtmlHeader1;
15
+ emailHtmlHeader2;
16
+ emailHtmlFooter;
17
+ constructor(htmlHeader1 = '', htmlHeader2 = '', htmlFooter = '') {
18
+ this.client = new SocketLabsClient(parseInt(process.env.SOCKETLABS_SERVER_ID || '0'), `${process.env.SOCKETLABS_SERVER_APIKEY}`, { requestTimeout: 120, numberOfRetries: 3 });
19
+ this.StringObj = new StringLib();
20
+ this.platformName = `${process.env.PLATFORM_NAME}`;
21
+ this.linkBase = `${process.env.APP_DOMAIN}`;
22
+ this.emailFrom = `${process.env.EMAIL_FROM}`;
23
+ this.emailHtmlHeader1 =
24
+ htmlHeader1 === '' ? this.htmlHeader1() : htmlHeader1;
25
+ this.emailHtmlHeader2 =
26
+ htmlHeader2 === '' ? this.htmlHeader2() : htmlHeader2;
27
+ this.emailHtmlFooter = htmlFooter === '' ? this.htmlFooter() : htmlFooter;
28
+ }
29
+ async sendEmailVerify(emailTo, hash, name = '') {
30
+ const subject = `Conferma l'email per ${this.platformName}`;
31
+ const encodedEmail = encodeURI(emailTo);
32
+ const nameFixed = this.fixName(name);
33
+ const link = `${this.linkBase}/check/verify-email/${encodedEmail}/${hash}`;
34
+ const linkHtml = this.StringObj.makeLink(link);
35
+ const messaggioTxt = `Ciao${nameFixed}, tu o qualcuno ti sta registrando su ${this.platformName}.
36
+ Puoi confermare la registrazione copiando questo link ${link} nel browser. Lo staff`;
37
+ const messaggioHtml = `Ciao${nameFixed},<br>tu o qualcuno ti sta registrando su ${this.platformName}.<br><br>
38
+ Puoi confermare la registrazione visitando questo link ${linkHtml}<br><br>
39
+ <br><br>Lo staff`;
40
+ const message = {
41
+ emailFrom: this.emailFrom,
42
+ emailFromName: this.platformName,
43
+ emailTo,
44
+ subject,
45
+ textBody: messaggioTxt,
46
+ htmlBody: messaggioHtml
47
+ };
48
+ return await this.sendEmail(message);
49
+ }
50
+ /*
51
+ async sendEmailPostSegnalato(infoUtente, idPost) {
52
+ const subject = 'Post ' + idPost + ' segnalato'
53
+
54
+ const messaggioTxt =
55
+ 'Ciao, il post ' +
56
+ idPost +
57
+ ' è stato segnalato da ' +
58
+ infoUtente.personalData.name +
59
+ ' ' +
60
+ infoUtente.personalData.surname +
61
+ ' (id: ' +
62
+ infoUtente._id +
63
+ ').'
64
+
65
+ const messaggioHtml =
66
+ this.getHtmlHeader(subject) +
67
+ 'Ciao, il post ' +
68
+ idPost +
69
+ ' è stato segnalato da ' +
70
+ infoUtente.personalData.name +
71
+ ' ' +
72
+ infoUtente.personalData.surname +
73
+ ' (id: ' +
74
+ infoUtente._id +
75
+ ').' +
76
+ this.getHtmlFooter()
77
+
78
+ const message = {
79
+ emailFrom: this.emailFrom,
80
+ emailFromName: this.platformName,
81
+ emailTo: 'giovannimanzoni87@gmail.com',
82
+ subject,
83
+ textBody: messaggioTxt,
84
+ htmlBody: messaggioHtml
85
+ }
86
+ return await this.sendEmail(message)
87
+ }
88
+ */
89
+ /**
90
+ * @fixme gestire retry
91
+ *
92
+ statusCode: ECONNABORTED
93
+ Error in sending the email
94
+ SendResponse {
95
+ transactionReceipt: null,
96
+ addressResults: null,
97
+ result: {
98
+ name: 'Timeout',
99
+ value: 1,
100
+ message: 'A timeout occurred sending the message'
101
+ },
102
+ responseMessage: 'A timeout occurred sending the message'
103
+ }
104
+ */
105
+ async sendEmailChangeVerify(emailTo, hash, name = '') {
106
+ const encodedEmail = encodeURI(emailTo);
107
+ const subject = `Conferma l'email per ${this.platformName}`;
108
+ const nameFixed = this.fixName(name);
109
+ const link = `${this.linkBase}/check/verify-change-email/${encodedEmail}/${hash}`;
110
+ const linkHtml = this.StringObj.makeLink(link);
111
+ const messaggioTxt = `Ciao${nameFixed}, tu o qualcuno ha modificato l'email con cui accedi.
112
+ Puoi confermare copiando questo link ${link} nel browser. Lo staff.`;
113
+ const messaggioHtml = `Ciao${nameFixed},<br>tu o qualcuno ha modificato l'email con cui accedi.<br><br>" +
114
+ 'Puoi confermare la registrazione visitando questo link ${linkHtml}
115
+ <br><br>Lo staff.`;
116
+ const message = {
117
+ emailFrom: this.emailFrom,
118
+ emailFromName: this.platformName,
119
+ emailTo,
120
+ subject,
121
+ textBody: messaggioTxt,
122
+ htmlBody: messaggioHtml
123
+ };
124
+ return await this.sendEmail(message);
125
+ }
126
+ async sendWelcome(emailTo) {
127
+ const subject = `Benvenuto su ${this.platformName}`;
128
+ const linkHtml = this.StringObj.makeLink(this.linkBase, this.platformName);
129
+ const messaggioTxt = `Benvenuto su ${this.platformName}`;
130
+ const messaggioHtml = `Benvenuto su ${linkHtml}`;
131
+ const message = {
132
+ emailFrom: this.emailFrom,
133
+ emailFromName: this.platformName,
134
+ emailTo,
135
+ subject,
136
+ textBody: messaggioTxt,
137
+ htmlBody: messaggioHtml
138
+ };
139
+ return await this.sendEmail(message);
140
+ }
141
+ /**
142
+ * Send account disabled notification
143
+ * @param emailTo
144
+ */
145
+ async accountDisabled(emailTo) {
146
+ const subject = 'Il tuo account è stato disabilitato';
147
+ const textBody = 'Ciao, ci spiace ma il tuo account è stato disabilitato. Contattaci per maggiori informazioni.';
148
+ const htmlBody = `<p>${textBody}</p>`;
149
+ const message = {
150
+ emailFrom: this.emailFrom,
151
+ emailFromName: this.platformName,
152
+ emailTo,
153
+ subject,
154
+ textBody,
155
+ htmlBody
156
+ };
157
+ return await this.sendEmail(message);
158
+ }
159
+ /**
160
+ * Send account disabled notification
161
+ * @param emailTo
162
+ */
163
+ async accountBanned(emailTo) {
164
+ const subject = 'Il tuo account è stato bannato';
165
+ const textBody = 'Ciao, ci spiace ma il tuo account è stato bannato. Contattaci per maggiori informazioni.';
166
+ const htmlBody = `<p>${textBody}</p>`;
167
+ const message = {
168
+ emailFrom: this.emailFrom,
169
+ emailFromName: this.platformName,
170
+ emailTo,
171
+ subject,
172
+ textBody,
173
+ htmlBody
174
+ };
175
+ return await this.sendEmail(message);
176
+ }
177
+ /**
178
+ * alertDevTeam
179
+ * @param err
180
+ */
181
+ async alertDevTeam(err) {
182
+ const textBody = 'errore 500 ' + err;
183
+ const htmlBody = '<p>errore 500 <br><br>' + err + '</p>';
184
+ const message = {
185
+ emailFrom: this.emailFrom,
186
+ emailFromName: this.platformName,
187
+ emailTo: `${process.env.DEV_TEAM_EMAIL}`,
188
+ subject: `${this.platformName} errore 500`,
189
+ textBody,
190
+ htmlBody
191
+ };
192
+ return await this.sendEmail(message);
193
+ }
194
+ /**
195
+ *
196
+ * @param emailTo
197
+ * @param times
198
+ */
199
+ async wrongHash(emailTo, times) {
200
+ if (times > 5)
201
+ throwInternalError();
202
+ const remainingTimes = 5 - times;
203
+ const subject = 'Link di attivazione errato';
204
+ const textBody = `Ciao, tu o qualcuno sta cercando di verificare la tua email con un link errato. Ti rimangono altri ${remainingTimes} tentativi.`;
205
+ const htmlBody = `<p>${textBody}</p>`;
206
+ const message = {
207
+ emailFrom: this.emailFrom,
208
+ emailFromName: this.platformName,
209
+ emailTo,
210
+ subject,
211
+ textBody,
212
+ htmlBody
213
+ };
214
+ return await this.sendEmail(message);
215
+ }
216
+ /*****************
217
+ * Too much verify requests
218
+ * @param emailTo
219
+ * @returns {Promise<string|null>}
220
+ */
221
+ async tooMuchVerifyRequests(emailTo) {
222
+ const subject = 'Troppi tentativi di verifica della tua email';
223
+ const textBody = 'Ciao, hai fatto più di 5 o più tentativi di verifica della tua email. Devi ripetere la richiesta di registrazione.';
224
+ const htmlBody = '<p>Ciao, hai fatto 5 o più tentativi di verifica della tua email. Devi ripetere la richiesta di registrazione.</p>';
225
+ const message = {
226
+ emailFrom: this.emailFrom,
227
+ emailFromName: this.platformName,
228
+ emailTo,
229
+ subject,
230
+ textBody,
231
+ htmlBody
232
+ };
233
+ return await this.sendEmail(message);
234
+ }
235
+ /*****************
236
+ * @param emailTo
237
+ * @returns {Promise<string|null>}
238
+ */
239
+ async hashReqTooOld(emailTo) {
240
+ const subject = 'Link di attivazione scaduto';
241
+ const textBody = 'Ciao, il link di attivazione che stai tentando di usare è più vecchio di 3 giorni ed è scaduto. Devi ripetere la richiesta di registrazione.';
242
+ const htmlBody = '<p>Ciao, il link di attivazione che stai tentando di usare è più vecchio di 3 giorni ed è scaduto. Devi ripetere la richiesta di registrazione.</p>';
243
+ const message = {
244
+ emailFrom: this.emailFrom,
245
+ emailFromName: this.platformName,
246
+ emailTo,
247
+ subject,
248
+ textBody,
249
+ htmlBody
250
+ };
251
+ return await this.sendEmail(message);
252
+ }
253
+ /*****************
254
+ * @param emailTo
255
+ * @returns {Promise<string|null>}
256
+ */
257
+ async emailAlreadyValid(emailTo) {
258
+ const subject = 'Account già valido';
259
+ const textBody = 'Ciao, il tuo account è già valido, puoi eseguire il login.';
260
+ const htmlBody = `<p>${textBody}</p>`;
261
+ const message = {
262
+ emailFrom: this.emailFrom,
263
+ emailFromName: this.platformName,
264
+ emailTo,
265
+ subject,
266
+ textBody,
267
+ htmlBody
268
+ };
269
+ return await this.sendEmail(message);
270
+ }
271
+ /**
272
+ * Send subscription email
273
+ * @param emailTo
274
+ * @param otp
275
+ */
276
+ async sendSubscriptionEmail(emailTo, otp) {
277
+ const subject = `Attiva il tuo account ${this.platformName}}`;
278
+ const url = `${this.linkBase}'/x/emailVerify`;
279
+ const urlHtml = this.StringObj.makeLink(url);
280
+ const linkHomeHtml = this.StringObj.makeLink(this.linkBase, this.platformName);
281
+ const textBody = `Per confermare la tua iscrizione su ${this.platformName}, apri nel browser il seguente link
282
+ ${url} ed inserisci il seguente codice di attivazione: ${otp}`;
283
+ const htmlBody = `<p>Per confermare la tua iscrizione su ${linkHomeHtml}, apri nel browser il seguente link
284
+ ${urlHtml} ed inserisci il seguente codice di attivazione: ${otp}</p>`;
285
+ const message = {
286
+ emailFrom: this.emailFrom,
287
+ emailFromName: this.platformName,
288
+ emailTo,
289
+ subject,
290
+ textBody,
291
+ htmlBody
292
+ };
293
+ return await this.sendEmail(message);
294
+ }
295
+ async sendConfermaResetPwd(emailTo, name = '') {
296
+ const subject = `Reset della password per ${this.platformName}`;
297
+ const link = this.linkBase;
298
+ const linkHtml = this.StringObj.makeLink(link, this.platformName);
299
+ const nameFixed = this.fixName(name);
300
+ const textBody = `Ciao${nameFixed}, hai confermato la nuova password. Ora puoi accedere a: ${link}. Lo Staff.`;
301
+ const htmlBody = `Ciao${nameFixed},<br>hai confermato la nuova password.<br><br>Ora puoi accedere a:<br>${linkHtml}<br><br>Lo staff.`;
302
+ const message = {
303
+ emailFrom: this.emailFrom,
304
+ emailFromName: this.platformName,
305
+ emailTo,
306
+ subject,
307
+ textBody,
308
+ htmlBody
309
+ };
310
+ return await this.sendEmail(message);
311
+ }
312
+ async sendConfermaResetPwdHash(email, name, hash) {
313
+ const encodedEmail = encodeURI(email);
314
+ const subject = 'Reset della password per Polis24.it';
315
+ const linkReset = this.linkBase + '/index.php?q=reset&hash=' + hash + '&email=' + encodedEmail;
316
+ const textBody = 'Ciao ' + name + ', hai confermato la nuova password. Ora puoi accedere a: ' + this.linkBase + ' . ';
317
+ const htmlBody = this.getHtmlHeader(subject) +
318
+ 'Ciao ' +
319
+ name +
320
+ ',<br>hai confermato la nuova password.<br><br>Ora puoi accedere a:<br> ' +
321
+ this.StringObj.makeLink(linkReset) +
322
+ '<br><br>Lo staff' +
323
+ this.getHtmlFooter();
324
+ const message = {
325
+ emailFrom: this.emailFrom,
326
+ emailFromName: this.platformName,
327
+ emailTo: email,
328
+ subject: 'Conferma cambio password per Polis24.it',
329
+ textBody: textBody,
330
+ htmlBody: htmlBody
331
+ };
332
+ let ret;
333
+ try {
334
+ ret = await this.sendEmail(message);
335
+ }
336
+ catch (e) {
337
+ Sentry.captureException(e);
338
+ ret = null;
339
+ }
340
+ return ret ? ret : null; // se invio va a buon fine, ritorna l'hash, altrimenti null
341
+ }
342
+ async sendEmailReset(emailTo, hash, name = '') {
343
+ const subject = `Reset della password per ${this.platformName}`;
344
+ const encodedEmail = encodeURI(emailTo);
345
+ const link = `${this.linkBase}/x/reset/${encodedEmail}/${hash}`;
346
+ const linkHtml = this.StringObj.makeLink(link);
347
+ const nameFixed = this.fixName(name);
348
+ const textBody = `Ciao${nameFixed}, tu o qualcuno ha richiesto un reset della password. Puoi cambiare la password di accesso
349
+ copiando questo link ${link} nel browser. Lo staff.`;
350
+ const htmlBody = `Ciao${nameFixed},<br>tu o qualcuno ha richiesto un reset della password.<br><br>
351
+ Puoi cambiare la password cliccando il link:<br>${linkHtml}
352
+ <br><br>Lo staff.`;
353
+ const message = {
354
+ emailFrom: this.emailFrom,
355
+ emailFromName: this.platformName,
356
+ emailTo,
357
+ subject,
358
+ textBody,
359
+ htmlBody
360
+ };
361
+ return await this.sendEmail(message);
362
+ }
363
+ /**
364
+ * fallback footer
365
+ */
366
+ htmlFooter() {
367
+ return '</p></td>' + ' </tr>' + ' </table>' + '</body>';
368
+ }
369
+ /**
370
+ * send OTP
371
+ * @param emailTo
372
+ * @param otp
373
+ */
374
+ async sendOTP(emailTo, otp) {
375
+ let textBody = 'Per confermare la tua iscrizione su Polis24, inserisci il seguente codice OTP: ' + otp;
376
+ let htmlBody = '<p>Per confermare la tua iscrizione su Polis24, inserisci il seguente codice OTP: ' + otp + '</p>';
377
+ const message = {
378
+ emailFrom: this.emailFrom,
379
+ emailFromName: this.platformName,
380
+ emailTo: emailTo,
381
+ subject: 'Codice OTP per Polis24',
382
+ textBody: textBody,
383
+ htmlBody: htmlBody
384
+ };
385
+ let ret;
386
+ try {
387
+ await this.sendEmail(message);
388
+ ret = null;
389
+ }
390
+ catch (e) {
391
+ Sentry.captureException(e);
392
+ ret = null;
393
+ }
394
+ return ret ? ret : null; // se invio va a buon fine, ritorna l'hash, altrimenti null
395
+ }
396
+ async sendEmailPostSegnalato(infoUtente, idPost) {
397
+ const subject = 'Post ' + idPost + ' segnalato';
398
+ const messaggioTxt = 'Ciao, il post ' +
399
+ idPost +
400
+ ' è stato segnalato da ' +
401
+ infoUtente.personalData.name +
402
+ ' ' +
403
+ infoUtente.personalData.surname +
404
+ ' (id: ' +
405
+ infoUtente._id +
406
+ ').';
407
+ const messaggioHtml = this.getHtmlHeader(subject) +
408
+ 'Ciao, il post ' +
409
+ idPost +
410
+ ' è stato segnalato da ' +
411
+ infoUtente.personalData.name +
412
+ ' ' +
413
+ infoUtente.personalData.surname +
414
+ ' (id: ' +
415
+ infoUtente._id +
416
+ ').' +
417
+ this.getHtmlFooter();
418
+ const message = {
419
+ emailFrom: this.emailFrom,
420
+ emailFromName: this.platformName,
421
+ emailTo: 'giovannimanzoni87@gmail.com',
422
+ subject,
423
+ textBody: messaggioTxt,
424
+ htmlBody: messaggioHtml
425
+ };
426
+ return await this.sendEmail(message);
427
+ }
428
+ getHtmlHeader(title) {
429
+ return ('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">' +
430
+ '<html xmlns="http://www.w3.org/1999/xhtml">' +
431
+ ' <head>' +
432
+ ' <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />' +
433
+ ' <title>' +
434
+ title +
435
+ '</title>' +
436
+ ' <meta name="viewport" content="width=device-width, initial-scale=1.0"/>' +
437
+ '</head>' +
438
+ '</html>' +
439
+ '<body style="margin: 0; padding: 0;">' +
440
+ ' <table align="center" border="0" cellpadding="0" cellspacing="0" width="600">' +
441
+ ' <tr>' +
442
+ ' <td bgcolor="#ffffff" style="padding: 40px 30px 40px 30px;"><p style="color: #000000; font-family: Verdana, sans-serif; font-size: 12pt;">');
443
+ }
444
+ getHtmlFooter() {
445
+ return '</p></td>' + ' </tr>' + ' </table>' + '</body>';
446
+ }
447
+ async sendEmail(args) {
448
+ const { emailFrom, emailFromName, emailTo, subject, textBody, htmlBody } = args;
449
+ const basicMessage = new BasicMessage();
450
+ basicMessage.setFromAddress(emailFrom, emailFromName);
451
+ basicMessage.setSubject(subject);
452
+ basicMessage.setTextBody(textBody);
453
+ basicMessage.setHtmlBody(this.emailHtmlHeader1 +
454
+ subject +
455
+ this.emailHtmlHeader2 +
456
+ htmlBody +
457
+ this.emailHtmlFooter);
458
+ basicMessage.setTo(emailTo);
459
+ return this.client.send(basicMessage).then(() => {
460
+ //Handle successful API call
461
+ // console.debug('[sendEmail] Email sent correctly')
462
+ //console. // console.debug('[sendEmail] Email sent correctly')(res);
463
+ return true;
464
+ }, (e) => {
465
+ Sentry.captureException(e, {
466
+ extra: { detail: 'Error in sending the email' }
467
+ });
468
+ return false;
469
+ });
470
+ }
471
+ /**
472
+ * fallback header
473
+ * @private
474
+ */
475
+ htmlHeader1() {
476
+ return ('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">' +
477
+ '<html lang="it" xmlns="http://www.w3.org/1999/xhtml">' +
478
+ ' <head>' +
479
+ ' <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />' +
480
+ ' <title>');
481
+ }
482
+ /**
483
+ * fallback header
484
+ * @private
485
+ */
486
+ htmlHeader2() {
487
+ return ('</title>' +
488
+ ' <meta name="viewport" content="width=device-width, initial-scale=1.0"/>' +
489
+ '</head>' +
490
+ '</html>' +
491
+ '<body style="margin: 0; padding: 0;">' +
492
+ ' <table align="center" border="0" cellpadding="0" cellspacing="0" width="600">' +
493
+ ' <tr>' +
494
+ ' <td bgcolor="#ffffff" style="padding: 40px 30px 40px 30px;"><p style="color: #000000; font-family: Verdana, sans-serif; font-size: 12pt;">');
495
+ }
496
+ fixName(name) {
497
+ return name !== '' ? ` ${name}` : '';
498
+ }
499
+ }
500
+ //# sourceMappingURL=SocketLabsLib.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SocketLabsLib.mjs","sourceRoot":"","sources":["../../../src/email/SocketLabsLib.mts"],"names":[],"mappings":"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"}