emilsoftware-utilities 2.0.0-dev.5 → 2.0.0-dev.51

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 (638) hide show
  1. package/README.MD +199 -38
  2. package/dist/ContractGenerator.d.ts +4 -3
  3. package/dist/ContractGenerator.js +15 -5
  4. package/dist/ContractGenerator.js.map +1 -1
  5. package/dist/DailyFileTransport.d.ts +21 -0
  6. package/dist/DailyFileTransport.js +74 -0
  7. package/dist/DailyFileTransport.js.map +1 -0
  8. package/dist/DatabaseUpdater.d.ts +1 -1
  9. package/dist/DatabaseUpdater.js +32 -29
  10. package/dist/DatabaseUpdater.js.map +1 -1
  11. package/dist/EmilsoftwareModule.d.ts +6 -0
  12. package/dist/EmilsoftwareModule.js.map +1 -1
  13. package/dist/ExecutionTimeLogger.d.ts +2 -2
  14. package/dist/ExecutionTimeLogger.js +5 -4
  15. package/dist/ExecutionTimeLogger.js.map +1 -1
  16. package/dist/Logger.d.ts +22 -11
  17. package/dist/Logger.js +132 -119
  18. package/dist/Logger.js.map +1 -1
  19. package/dist/Orm.d.ts +32 -12
  20. package/dist/Orm.js +194 -153
  21. package/dist/Orm.js.map +1 -1
  22. package/dist/RoutesLoggerMiddleware.js.map +1 -1
  23. package/dist/Utilities.d.ts +18 -8
  24. package/dist/Utilities.js +143 -38
  25. package/dist/Utilities.js.map +1 -1
  26. package/dist/accessi-module/AccessiModule.d.ts +116 -1
  27. package/dist/accessi-module/AccessiModule.js +38 -5
  28. package/dist/accessi-module/AccessiModule.js.map +1 -1
  29. package/dist/accessi-module/Console/accessiFetch.d.ts +16 -0
  30. package/dist/accessi-module/Console/accessiFetch.js +87 -0
  31. package/dist/accessi-module/Console/accessiFetch.js.map +1 -0
  32. package/dist/accessi-module/Console/console.css +735 -0
  33. package/dist/accessi-module/Console/console.d.ts +1 -0
  34. package/dist/accessi-module/Console/console.js +3569 -0
  35. package/dist/accessi-module/Console/console.js.map +1 -0
  36. package/dist/accessi-module/Console/generated/accessiApi.d.ts +638 -0
  37. package/dist/accessi-module/Console/generated/accessiApi.js +589 -0
  38. package/dist/accessi-module/Console/generated/accessiApi.js.map +1 -0
  39. package/dist/accessi-module/Console/generated/model/abilitazioneMenu.d.ts +39 -0
  40. package/dist/accessi-module/Console/generated/model/abilitazioneMenu.js +3 -0
  41. package/dist/accessi-module/Console/generated/model/abilitazioneMenu.js.map +1 -0
  42. package/dist/accessi-module/Console/generated/model/abilitazioneMenuTipoAbilitazione.d.ts +16 -0
  43. package/dist/accessi-module/Console/generated/model/abilitazioneMenuTipoAbilitazione.js +17 -0
  44. package/dist/accessi-module/Console/generated/model/abilitazioneMenuTipoAbilitazione.js.map +1 -0
  45. package/dist/accessi-module/Console/generated/model/actionResponse.d.ts +12 -0
  46. package/dist/accessi-module/Console/generated/model/actionResponse.js +9 -0
  47. package/dist/accessi-module/Console/generated/model/actionResponse.js.map +1 -0
  48. package/dist/accessi-module/Console/generated/model/adminBootstrapStatusResponse.d.ts +14 -0
  49. package/dist/accessi-module/Console/generated/model/adminBootstrapStatusResponse.js +3 -0
  50. package/dist/accessi-module/Console/generated/model/adminBootstrapStatusResponse.js.map +1 -0
  51. package/dist/accessi-module/Console/generated/model/adminBootstrapStatusResult.d.ts +10 -0
  52. package/dist/accessi-module/Console/generated/model/adminBootstrapStatusResult.js +9 -0
  53. package/dist/accessi-module/Console/generated/model/adminBootstrapStatusResult.js.map +1 -0
  54. package/dist/accessi-module/Console/generated/model/assignPermissionsToUserRequest.d.ts +11 -0
  55. package/dist/accessi-module/Console/generated/model/assignPermissionsToUserRequest.js +3 -0
  56. package/dist/accessi-module/Console/generated/model/assignPermissionsToUserRequest.js.map +1 -0
  57. package/dist/accessi-module/Console/generated/model/assignRolesToUserRequest.d.ts +10 -0
  58. package/dist/accessi-module/Console/generated/model/assignRolesToUserRequest.js +9 -0
  59. package/dist/accessi-module/Console/generated/model/assignRolesToUserRequest.js.map +1 -0
  60. package/dist/accessi-module/Console/generated/model/authenticatedTokenPayloadDto.d.ts +10 -0
  61. package/dist/accessi-module/Console/generated/model/authenticatedTokenPayloadDto.js +3 -0
  62. package/dist/accessi-module/Console/generated/model/authenticatedTokenPayloadDto.js.map +1 -0
  63. package/dist/accessi-module/Console/generated/model/authenticatedUserPayloadDto.d.ts +19 -0
  64. package/dist/accessi-module/Console/generated/model/authenticatedUserPayloadDto.js +9 -0
  65. package/dist/accessi-module/Console/generated/model/authenticatedUserPayloadDto.js.map +1 -0
  66. package/dist/accessi-module/Console/generated/model/bootstrapAdminRequest.d.ts +17 -0
  67. package/dist/accessi-module/Console/generated/model/bootstrapAdminRequest.js +9 -0
  68. package/dist/accessi-module/Console/generated/model/bootstrapAdminRequest.js.map +1 -0
  69. package/dist/accessi-module/Console/generated/model/bootstrapAdminResponse.d.ts +14 -0
  70. package/dist/accessi-module/Console/generated/model/bootstrapAdminResponse.js +3 -0
  71. package/dist/accessi-module/Console/generated/model/bootstrapAdminResponse.js.map +1 -0
  72. package/dist/accessi-module/Console/generated/model/bootstrapAdminResultDto.d.ts +13 -0
  73. package/dist/accessi-module/Console/generated/model/bootstrapAdminResultDto.js +9 -0
  74. package/dist/accessi-module/Console/generated/model/bootstrapAdminResultDto.js.map +1 -0
  75. package/dist/accessi-module/Console/generated/model/confirmResetPasswordRequest.d.ts +14 -0
  76. package/dist/accessi-module/Console/generated/model/confirmResetPasswordRequest.js +9 -0
  77. package/dist/accessi-module/Console/generated/model/confirmResetPasswordRequest.js.map +1 -0
  78. package/dist/accessi-module/Console/generated/model/consoleEntryExchangeRequest.d.ts +10 -0
  79. package/dist/accessi-module/Console/generated/model/consoleEntryExchangeRequest.js +9 -0
  80. package/dist/accessi-module/Console/generated/model/consoleEntryExchangeRequest.js.map +1 -0
  81. package/dist/accessi-module/Console/generated/model/consoleEntrySessionResponse.d.ts +14 -0
  82. package/dist/accessi-module/Console/generated/model/consoleEntrySessionResponse.js +3 -0
  83. package/dist/accessi-module/Console/generated/model/consoleEntrySessionResponse.js.map +1 -0
  84. package/dist/accessi-module/Console/generated/model/consoleEntrySessionResult.d.ts +10 -0
  85. package/dist/accessi-module/Console/generated/model/consoleEntrySessionResult.js +3 -0
  86. package/dist/accessi-module/Console/generated/model/consoleEntrySessionResult.js.map +1 -0
  87. package/dist/accessi-module/Console/generated/model/consoleEntryTicketResponse.d.ts +14 -0
  88. package/dist/accessi-module/Console/generated/model/consoleEntryTicketResponse.js +3 -0
  89. package/dist/accessi-module/Console/generated/model/consoleEntryTicketResponse.js.map +1 -0
  90. package/dist/accessi-module/Console/generated/model/consoleEntryTicketResult.d.ts +12 -0
  91. package/dist/accessi-module/Console/generated/model/consoleEntryTicketResult.js +9 -0
  92. package/dist/accessi-module/Console/generated/model/consoleEntryTicketResult.js.map +1 -0
  93. package/dist/accessi-module/Console/generated/model/consoleEntryTokenResult.d.ts +12 -0
  94. package/dist/accessi-module/Console/generated/model/consoleEntryTokenResult.js +9 -0
  95. package/dist/accessi-module/Console/generated/model/consoleEntryTokenResult.js.map +1 -0
  96. package/dist/accessi-module/Console/generated/model/createFederatedIdentityRequest.d.ts +13 -0
  97. package/dist/accessi-module/Console/generated/model/createFederatedIdentityRequest.js +9 -0
  98. package/dist/accessi-module/Console/generated/model/createFederatedIdentityRequest.js.map +1 -0
  99. package/dist/accessi-module/Console/generated/model/createFederatedProviderRequest.d.ts +13 -0
  100. package/dist/accessi-module/Console/generated/model/createFederatedProviderRequest.js +9 -0
  101. package/dist/accessi-module/Console/generated/model/createFederatedProviderRequest.js.map +1 -0
  102. package/dist/accessi-module/Console/generated/model/createFederatedUserRequest.d.ts +18 -0
  103. package/dist/accessi-module/Console/generated/model/createFederatedUserRequest.js +3 -0
  104. package/dist/accessi-module/Console/generated/model/createFederatedUserRequest.js.map +1 -0
  105. package/dist/accessi-module/Console/generated/model/createFilterTypeRequest.d.ts +23 -0
  106. package/dist/accessi-module/Console/generated/model/createFilterTypeRequest.js +3 -0
  107. package/dist/accessi-module/Console/generated/model/createFilterTypeRequest.js.map +1 -0
  108. package/dist/accessi-module/Console/generated/model/createFilterTypeRequestFlgEnabled.d.ts +14 -0
  109. package/dist/accessi-module/Console/generated/model/createFilterTypeRequestFlgEnabled.js +15 -0
  110. package/dist/accessi-module/Console/generated/model/createFilterTypeRequestFlgEnabled.js.map +1 -0
  111. package/dist/accessi-module/Console/generated/model/createMenuGroupRequest.d.ts +22 -0
  112. package/dist/accessi-module/Console/generated/model/createMenuGroupRequest.js +9 -0
  113. package/dist/accessi-module/Console/generated/model/createMenuGroupRequest.js.map +1 -0
  114. package/dist/accessi-module/Console/generated/model/createMenuRequest.d.ts +52 -0
  115. package/dist/accessi-module/Console/generated/model/createMenuRequest.js +9 -0
  116. package/dist/accessi-module/Console/generated/model/createMenuRequest.js.map +1 -0
  117. package/dist/accessi-module/Console/generated/model/createMenuTypeRequest.d.ts +18 -0
  118. package/dist/accessi-module/Console/generated/model/createMenuTypeRequest.js +9 -0
  119. package/dist/accessi-module/Console/generated/model/createMenuTypeRequest.js.map +1 -0
  120. package/dist/accessi-module/Console/generated/model/createServiceTokenRequest.d.ts +16 -0
  121. package/dist/accessi-module/Console/generated/model/createServiceTokenRequest.js +9 -0
  122. package/dist/accessi-module/Console/generated/model/createServiceTokenRequest.js.map +1 -0
  123. package/dist/accessi-module/Console/generated/model/createServiceTokenResponse.d.ts +14 -0
  124. package/dist/accessi-module/Console/generated/model/createServiceTokenResponse.js +3 -0
  125. package/dist/accessi-module/Console/generated/model/createServiceTokenResponse.js.map +1 -0
  126. package/dist/accessi-module/Console/generated/model/errorResponse.d.ts +18 -0
  127. package/dist/accessi-module/Console/generated/model/errorResponse.js +9 -0
  128. package/dist/accessi-module/Console/generated/model/errorResponse.js.map +1 -0
  129. package/dist/accessi-module/Console/generated/model/federatedIdentityListResponse.d.ts +14 -0
  130. package/dist/accessi-module/Console/generated/model/federatedIdentityListResponse.js +3 -0
  131. package/dist/accessi-module/Console/generated/model/federatedIdentityListResponse.js.map +1 -0
  132. package/dist/accessi-module/Console/generated/model/federatedIdentityResponse.d.ts +14 -0
  133. package/dist/accessi-module/Console/generated/model/federatedIdentityResponse.js +3 -0
  134. package/dist/accessi-module/Console/generated/model/federatedIdentityResponse.js.map +1 -0
  135. package/dist/accessi-module/Console/generated/model/federatedIdentityResponseDto.d.ts +23 -0
  136. package/dist/accessi-module/Console/generated/model/federatedIdentityResponseDto.js +9 -0
  137. package/dist/accessi-module/Console/generated/model/federatedIdentityResponseDto.js.map +1 -0
  138. package/dist/accessi-module/Console/generated/model/federatedProviderListResponse.d.ts +14 -0
  139. package/dist/accessi-module/Console/generated/model/federatedProviderListResponse.js +3 -0
  140. package/dist/accessi-module/Console/generated/model/federatedProviderListResponse.js.map +1 -0
  141. package/dist/accessi-module/Console/generated/model/federatedProviderResponse.d.ts +14 -0
  142. package/dist/accessi-module/Console/generated/model/federatedProviderResponse.js +3 -0
  143. package/dist/accessi-module/Console/generated/model/federatedProviderResponse.js.map +1 -0
  144. package/dist/accessi-module/Console/generated/model/federatedProviderResponseDto.d.ts +13 -0
  145. package/dist/accessi-module/Console/generated/model/federatedProviderResponseDto.js +9 -0
  146. package/dist/accessi-module/Console/generated/model/federatedProviderResponseDto.js.map +1 -0
  147. package/dist/accessi-module/Console/generated/model/filtriUtente.d.ts +32 -0
  148. package/dist/accessi-module/Console/generated/model/filtriUtente.js +9 -0
  149. package/dist/accessi-module/Console/generated/model/filtriUtente.js.map +1 -0
  150. package/dist/accessi-module/Console/generated/model/getFiltriResponse.d.ts +14 -0
  151. package/dist/accessi-module/Console/generated/model/getFiltriResponse.js +3 -0
  152. package/dist/accessi-module/Console/generated/model/getFiltriResponse.js.map +1 -0
  153. package/dist/accessi-module/Console/generated/model/getFiltriUtenteParams.d.ts +12 -0
  154. package/dist/accessi-module/Console/generated/model/getFiltriUtenteParams.js +9 -0
  155. package/dist/accessi-module/Console/generated/model/getFiltriUtenteParams.js.map +1 -0
  156. package/dist/accessi-module/Console/generated/model/getFiltriUtenteResponse.d.ts +14 -0
  157. package/dist/accessi-module/Console/generated/model/getFiltriUtenteResponse.js +3 -0
  158. package/dist/accessi-module/Console/generated/model/getFiltriUtenteResponse.js.map +1 -0
  159. package/dist/accessi-module/Console/generated/model/getGroupsWithMenusParams.d.ts +12 -0
  160. package/dist/accessi-module/Console/generated/model/getGroupsWithMenusParams.js +9 -0
  161. package/dist/accessi-module/Console/generated/model/getGroupsWithMenusParams.js.map +1 -0
  162. package/dist/accessi-module/Console/generated/model/getGroupsWithMenusResponse.d.ts +14 -0
  163. package/dist/accessi-module/Console/generated/model/getGroupsWithMenusResponse.js +3 -0
  164. package/dist/accessi-module/Console/generated/model/getGroupsWithMenusResponse.js.map +1 -0
  165. package/dist/accessi-module/Console/generated/model/getMenuTypesResponse.d.ts +14 -0
  166. package/dist/accessi-module/Console/generated/model/getMenuTypesResponse.js +3 -0
  167. package/dist/accessi-module/Console/generated/model/getMenuTypesResponse.js.map +1 -0
  168. package/dist/accessi-module/Console/generated/model/getMenusResponse.d.ts +14 -0
  169. package/dist/accessi-module/Console/generated/model/getMenusResponse.js +3 -0
  170. package/dist/accessi-module/Console/generated/model/getMenusResponse.js.map +1 -0
  171. package/dist/accessi-module/Console/generated/model/getRolesResponse.d.ts +14 -0
  172. package/dist/accessi-module/Console/generated/model/getRolesResponse.js +3 -0
  173. package/dist/accessi-module/Console/generated/model/getRolesResponse.js.map +1 -0
  174. package/dist/accessi-module/Console/generated/model/getSchemaResponse.d.ts +14 -0
  175. package/dist/accessi-module/Console/generated/model/getSchemaResponse.js +3 -0
  176. package/dist/accessi-module/Console/generated/model/getSchemaResponse.js.map +1 -0
  177. package/dist/accessi-module/Console/generated/model/getServiceTokensParams.d.ts +12 -0
  178. package/dist/accessi-module/Console/generated/model/getServiceTokensParams.js +9 -0
  179. package/dist/accessi-module/Console/generated/model/getServiceTokensParams.js.map +1 -0
  180. package/dist/accessi-module/Console/generated/model/getServiceTokensResponse.d.ts +14 -0
  181. package/dist/accessi-module/Console/generated/model/getServiceTokensResponse.js +3 -0
  182. package/dist/accessi-module/Console/generated/model/getServiceTokensResponse.js.map +1 -0
  183. package/dist/accessi-module/Console/generated/model/getUserByTokenRequest.d.ts +10 -0
  184. package/dist/accessi-module/Console/generated/model/getUserByTokenRequest.js +9 -0
  185. package/dist/accessi-module/Console/generated/model/getUserByTokenRequest.js.map +1 -0
  186. package/dist/accessi-module/Console/generated/model/getUserByTokenResponse.d.ts +14 -0
  187. package/dist/accessi-module/Console/generated/model/getUserByTokenResponse.js +3 -0
  188. package/dist/accessi-module/Console/generated/model/getUserByTokenResponse.js.map +1 -0
  189. package/dist/accessi-module/Console/generated/model/getUsersParams.d.ts +32 -0
  190. package/dist/accessi-module/Console/generated/model/getUsersParams.js +9 -0
  191. package/dist/accessi-module/Console/generated/model/getUsersParams.js.map +1 -0
  192. package/dist/accessi-module/Console/generated/model/getUsersResponse.d.ts +14 -0
  193. package/dist/accessi-module/Console/generated/model/getUsersResponse.js +3 -0
  194. package/dist/accessi-module/Console/generated/model/getUsersResponse.js.map +1 -0
  195. package/dist/accessi-module/Console/generated/model/getUsersResult.d.ts +17 -0
  196. package/dist/accessi-module/Console/generated/model/getUsersResult.js +3 -0
  197. package/dist/accessi-module/Console/generated/model/getUsersResult.js.map +1 -0
  198. package/dist/accessi-module/Console/generated/model/getUsersResultExtensionFields.d.ts +12 -0
  199. package/dist/accessi-module/Console/generated/model/getUsersResultExtensionFields.js +9 -0
  200. package/dist/accessi-module/Console/generated/model/getUsersResultExtensionFields.js.map +1 -0
  201. package/dist/accessi-module/Console/generated/model/groupWithMenusEntity.d.ts +19 -0
  202. package/dist/accessi-module/Console/generated/model/groupWithMenusEntity.js +3 -0
  203. package/dist/accessi-module/Console/generated/model/groupWithMenusEntity.js.map +1 -0
  204. package/dist/accessi-module/Console/generated/model/index.d.ts +108 -0
  205. package/dist/accessi-module/Console/generated/model/index.js +125 -0
  206. package/dist/accessi-module/Console/generated/model/index.js.map +1 -0
  207. package/dist/accessi-module/Console/generated/model/issuedServiceTokenDto.d.ts +30 -0
  208. package/dist/accessi-module/Console/generated/model/issuedServiceTokenDto.js +9 -0
  209. package/dist/accessi-module/Console/generated/model/issuedServiceTokenDto.js.map +1 -0
  210. package/dist/accessi-module/Console/generated/model/loginRequest.d.ts +12 -0
  211. package/dist/accessi-module/Console/generated/model/loginRequest.js +9 -0
  212. package/dist/accessi-module/Console/generated/model/loginRequest.js.map +1 -0
  213. package/dist/accessi-module/Console/generated/model/loginResponse.d.ts +14 -0
  214. package/dist/accessi-module/Console/generated/model/loginResponse.js +3 -0
  215. package/dist/accessi-module/Console/generated/model/loginResponse.js.map +1 -0
  216. package/dist/accessi-module/Console/generated/model/loginResult.d.ts +32 -0
  217. package/dist/accessi-module/Console/generated/model/loginResult.js +3 -0
  218. package/dist/accessi-module/Console/generated/model/loginResult.js.map +1 -0
  219. package/dist/accessi-module/Console/generated/model/loginResultExtensionFields.d.ts +12 -0
  220. package/dist/accessi-module/Console/generated/model/loginResultExtensionFields.js +9 -0
  221. package/dist/accessi-module/Console/generated/model/loginResultExtensionFields.js.map +1 -0
  222. package/dist/accessi-module/Console/generated/model/loginResultPasswordRequired.d.ts +13 -0
  223. package/dist/accessi-module/Console/generated/model/loginResultPasswordRequired.js +14 -0
  224. package/dist/accessi-module/Console/generated/model/loginResultPasswordRequired.js.map +1 -0
  225. package/dist/accessi-module/Console/generated/model/menuEntity.d.ts +32 -0
  226. package/dist/accessi-module/Console/generated/model/menuEntity.js +9 -0
  227. package/dist/accessi-module/Console/generated/model/menuEntity.js.map +1 -0
  228. package/dist/accessi-module/Console/generated/model/menuTypeEntity.d.ts +12 -0
  229. package/dist/accessi-module/Console/generated/model/menuTypeEntity.js +9 -0
  230. package/dist/accessi-module/Console/generated/model/menuTypeEntity.js.map +1 -0
  231. package/dist/accessi-module/Console/generated/model/passwordExpiredResponse.d.ts +12 -0
  232. package/dist/accessi-module/Console/generated/model/passwordExpiredResponse.js +9 -0
  233. package/dist/accessi-module/Console/generated/model/passwordExpiredResponse.js.map +1 -0
  234. package/dist/accessi-module/Console/generated/model/permission.d.ts +12 -0
  235. package/dist/accessi-module/Console/generated/model/permission.js +9 -0
  236. package/dist/accessi-module/Console/generated/model/permission.js.map +1 -0
  237. package/dist/accessi-module/Console/generated/model/publicRegisterRequest.d.ts +51 -0
  238. package/dist/accessi-module/Console/generated/model/publicRegisterRequest.js +9 -0
  239. package/dist/accessi-module/Console/generated/model/publicRegisterRequest.js.map +1 -0
  240. package/dist/accessi-module/Console/generated/model/registerRequest.d.ts +62 -0
  241. package/dist/accessi-module/Console/generated/model/registerRequest.js +3 -0
  242. package/dist/accessi-module/Console/generated/model/registerRequest.js.map +1 -0
  243. package/dist/accessi-module/Console/generated/model/registerResponse.d.ts +14 -0
  244. package/dist/accessi-module/Console/generated/model/registerResponse.js +3 -0
  245. package/dist/accessi-module/Console/generated/model/registerResponse.js.map +1 -0
  246. package/dist/accessi-module/Console/generated/model/resendTwoFactorRequest.d.ts +13 -0
  247. package/dist/accessi-module/Console/generated/model/resendTwoFactorRequest.js +9 -0
  248. package/dist/accessi-module/Console/generated/model/resendTwoFactorRequest.js.map +1 -0
  249. package/dist/accessi-module/Console/generated/model/role.d.ts +15 -0
  250. package/dist/accessi-module/Console/generated/model/role.js +3 -0
  251. package/dist/accessi-module/Console/generated/model/role.js.map +1 -0
  252. package/dist/accessi-module/Console/generated/model/ruoliMenu.d.ts +15 -0
  253. package/dist/accessi-module/Console/generated/model/ruoliMenu.js +3 -0
  254. package/dist/accessi-module/Console/generated/model/ruoliMenu.js.map +1 -0
  255. package/dist/accessi-module/Console/generated/model/ruoliMenuTipoAbilitazione.d.ts +16 -0
  256. package/dist/accessi-module/Console/generated/model/ruoliMenuTipoAbilitazione.js +17 -0
  257. package/dist/accessi-module/Console/generated/model/ruoliMenuTipoAbilitazione.js.map +1 -0
  258. package/dist/accessi-module/Console/generated/model/schemaDdlResult.d.ts +20 -0
  259. package/dist/accessi-module/Console/generated/model/schemaDdlResult.js +3 -0
  260. package/dist/accessi-module/Console/generated/model/schemaDdlResult.js.map +1 -0
  261. package/dist/accessi-module/Console/generated/model/schemaDdlSection.d.ts +12 -0
  262. package/dist/accessi-module/Console/generated/model/schemaDdlSection.js +9 -0
  263. package/dist/accessi-module/Console/generated/model/schemaDdlSection.js.map +1 -0
  264. package/dist/accessi-module/Console/generated/model/sendResetPasswordEmailRequest.d.ts +12 -0
  265. package/dist/accessi-module/Console/generated/model/sendResetPasswordEmailRequest.js +9 -0
  266. package/dist/accessi-module/Console/generated/model/sendResetPasswordEmailRequest.js.map +1 -0
  267. package/dist/accessi-module/Console/generated/model/serveResetPasswordPageParams.d.ts +12 -0
  268. package/dist/accessi-module/Console/generated/model/serveResetPasswordPageParams.js +9 -0
  269. package/dist/accessi-module/Console/generated/model/serveResetPasswordPageParams.js.map +1 -0
  270. package/dist/accessi-module/Console/generated/model/serviceTokenDto.d.ts +28 -0
  271. package/dist/accessi-module/Console/generated/model/serviceTokenDto.js +9 -0
  272. package/dist/accessi-module/Console/generated/model/serviceTokenDto.js.map +1 -0
  273. package/dist/accessi-module/Console/generated/model/setPasswordLoginPolicyRequest.d.ts +10 -0
  274. package/dist/accessi-module/Console/generated/model/setPasswordLoginPolicyRequest.js +9 -0
  275. package/dist/accessi-module/Console/generated/model/setPasswordLoginPolicyRequest.js.map +1 -0
  276. package/dist/accessi-module/Console/generated/model/setStatoRegistrazioneDto.d.ts +13 -0
  277. package/dist/accessi-module/Console/generated/model/setStatoRegistrazioneDto.js +3 -0
  278. package/dist/accessi-module/Console/generated/model/setStatoRegistrazioneDto.js.map +1 -0
  279. package/dist/accessi-module/Console/generated/model/setStatoRegistrazioneDtoStatoRegistrazione.d.ts +18 -0
  280. package/dist/accessi-module/Console/generated/model/setStatoRegistrazioneDtoStatoRegistrazione.js +19 -0
  281. package/dist/accessi-module/Console/generated/model/setStatoRegistrazioneDtoStatoRegistrazione.js.map +1 -0
  282. package/dist/accessi-module/Console/generated/model/setUserPasswordRequest.d.ts +14 -0
  283. package/dist/accessi-module/Console/generated/model/setUserPasswordRequest.js +9 -0
  284. package/dist/accessi-module/Console/generated/model/setUserPasswordRequest.js.map +1 -0
  285. package/dist/accessi-module/Console/generated/model/status.d.ts +12 -0
  286. package/dist/accessi-module/Console/generated/model/status.js +9 -0
  287. package/dist/accessi-module/Console/generated/model/status.js.map +1 -0
  288. package/dist/accessi-module/Console/generated/model/tipoFiltro.d.ts +23 -0
  289. package/dist/accessi-module/Console/generated/model/tipoFiltro.js +3 -0
  290. package/dist/accessi-module/Console/generated/model/tipoFiltro.js.map +1 -0
  291. package/dist/accessi-module/Console/generated/model/tipoFiltroFlgEnabled.d.ts +14 -0
  292. package/dist/accessi-module/Console/generated/model/tipoFiltroFlgEnabled.js +15 -0
  293. package/dist/accessi-module/Console/generated/model/tipoFiltroFlgEnabled.js.map +1 -0
  294. package/dist/accessi-module/Console/generated/model/tokenResult.d.ts +15 -0
  295. package/dist/accessi-module/Console/generated/model/tokenResult.js +3 -0
  296. package/dist/accessi-module/Console/generated/model/tokenResult.js.map +1 -0
  297. package/dist/accessi-module/Console/generated/model/tokenResultType.d.ts +14 -0
  298. package/dist/accessi-module/Console/generated/model/tokenResultType.js +15 -0
  299. package/dist/accessi-module/Console/generated/model/tokenResultType.js.map +1 -0
  300. package/dist/accessi-module/Console/generated/model/twoFactorChallengeDto.d.ts +18 -0
  301. package/dist/accessi-module/Console/generated/model/twoFactorChallengeDto.js +3 -0
  302. package/dist/accessi-module/Console/generated/model/twoFactorChallengeDto.js.map +1 -0
  303. package/dist/accessi-module/Console/generated/model/twoFactorChallengeDtoMethod.d.ts +10 -0
  304. package/dist/accessi-module/Console/generated/model/twoFactorChallengeDtoMethod.js +14 -0
  305. package/dist/accessi-module/Console/generated/model/twoFactorChallengeDtoMethod.js.map +1 -0
  306. package/dist/accessi-module/Console/generated/model/twoFactorChallengeDtoTwoFactorRequired.d.ts +13 -0
  307. package/dist/accessi-module/Console/generated/model/twoFactorChallengeDtoTwoFactorRequired.js +14 -0
  308. package/dist/accessi-module/Console/generated/model/twoFactorChallengeDtoTwoFactorRequired.js.map +1 -0
  309. package/dist/accessi-module/Console/generated/model/updateEnabledStatusRequest.d.ts +10 -0
  310. package/dist/accessi-module/Console/generated/model/updateEnabledStatusRequest.js +9 -0
  311. package/dist/accessi-module/Console/generated/model/updateEnabledStatusRequest.js.map +1 -0
  312. package/dist/accessi-module/Console/generated/model/updateFederatedIdentityRequest.d.ts +11 -0
  313. package/dist/accessi-module/Console/generated/model/updateFederatedIdentityRequest.js +9 -0
  314. package/dist/accessi-module/Console/generated/model/updateFederatedIdentityRequest.js.map +1 -0
  315. package/dist/accessi-module/Console/generated/model/updateFederatedProviderRequest.d.ts +12 -0
  316. package/dist/accessi-module/Console/generated/model/updateFederatedProviderRequest.js +9 -0
  317. package/dist/accessi-module/Console/generated/model/updateFederatedProviderRequest.js.map +1 -0
  318. package/dist/accessi-module/Console/generated/model/updateFilterTypeRequest.d.ts +21 -0
  319. package/dist/accessi-module/Console/generated/model/updateFilterTypeRequest.js +3 -0
  320. package/dist/accessi-module/Console/generated/model/updateFilterTypeRequest.js.map +1 -0
  321. package/dist/accessi-module/Console/generated/model/updateFilterTypeRequestFlgEnabled.d.ts +14 -0
  322. package/dist/accessi-module/Console/generated/model/updateFilterTypeRequestFlgEnabled.js +15 -0
  323. package/dist/accessi-module/Console/generated/model/updateFilterTypeRequestFlgEnabled.js.map +1 -0
  324. package/dist/accessi-module/Console/generated/model/updateMenuGroupRequest.d.ts +17 -0
  325. package/dist/accessi-module/Console/generated/model/updateMenuGroupRequest.js +9 -0
  326. package/dist/accessi-module/Console/generated/model/updateMenuGroupRequest.js.map +1 -0
  327. package/dist/accessi-module/Console/generated/model/updateMenuRequest.d.ts +47 -0
  328. package/dist/accessi-module/Console/generated/model/updateMenuRequest.js +9 -0
  329. package/dist/accessi-module/Console/generated/model/updateMenuRequest.js.map +1 -0
  330. package/dist/accessi-module/Console/generated/model/updateMenuTypeRequest.d.ts +13 -0
  331. package/dist/accessi-module/Console/generated/model/updateMenuTypeRequest.js +9 -0
  332. package/dist/accessi-module/Console/generated/model/updateMenuTypeRequest.js.map +1 -0
  333. package/dist/accessi-module/Console/generated/model/userDto.d.ts +88 -0
  334. package/dist/accessi-module/Console/generated/model/userDto.js +3 -0
  335. package/dist/accessi-module/Console/generated/model/userDto.js.map +1 -0
  336. package/dist/accessi-module/Console/generated/model/userDtoStatoRegistrazione.d.ts +18 -0
  337. package/dist/accessi-module/Console/generated/model/userDtoStatoRegistrazione.js +19 -0
  338. package/dist/accessi-module/Console/generated/model/userDtoStatoRegistrazione.js.map +1 -0
  339. package/dist/accessi-module/Console/generated/model/userGrantsDto.d.ts +16 -0
  340. package/dist/accessi-module/Console/generated/model/userGrantsDto.js +3 -0
  341. package/dist/accessi-module/Console/generated/model/userGrantsDto.js.map +1 -0
  342. package/dist/accessi-module/Console/generated/model/userGrantsResponse.d.ts +14 -0
  343. package/dist/accessi-module/Console/generated/model/userGrantsResponse.js +3 -0
  344. package/dist/accessi-module/Console/generated/model/userGrantsResponse.js.map +1 -0
  345. package/dist/accessi-module/Console/generated/model/verifyTwoFactorRequest.d.ts +18 -0
  346. package/dist/accessi-module/Console/generated/model/verifyTwoFactorRequest.js +9 -0
  347. package/dist/accessi-module/Console/generated/model/verifyTwoFactorRequest.js.map +1 -0
  348. package/dist/accessi-module/Console/help.d.ts +13 -0
  349. package/dist/accessi-module/Console/help.js +399 -0
  350. package/dist/accessi-module/Console/help.js.map +1 -0
  351. package/dist/accessi-module/Console/index.html +140 -0
  352. package/dist/accessi-module/Console/wiki.d.ts +52 -0
  353. package/dist/accessi-module/Console/wiki.js +722 -0
  354. package/dist/accessi-module/Console/wiki.js.map +1 -0
  355. package/dist/accessi-module/Controllers/AccessiConsoleController.d.ts +18 -0
  356. package/dist/accessi-module/Controllers/AccessiConsoleController.js +111 -0
  357. package/dist/accessi-module/Controllers/AccessiConsoleController.js.map +1 -0
  358. package/dist/accessi-module/Controllers/AuthController.d.ts +13 -6
  359. package/dist/accessi-module/Controllers/AuthController.js +185 -82
  360. package/dist/accessi-module/Controllers/AuthController.js.map +1 -1
  361. package/dist/accessi-module/Controllers/ConfiguratorController.d.ts +1 -5
  362. package/dist/accessi-module/Controllers/ConfiguratorController.js +26 -44
  363. package/dist/accessi-module/Controllers/ConfiguratorController.js.map +1 -1
  364. package/dist/accessi-module/Controllers/ConsoleEntryController.d.ts +14 -0
  365. package/dist/accessi-module/Controllers/ConsoleEntryController.js +128 -0
  366. package/dist/accessi-module/Controllers/ConsoleEntryController.js.map +1 -0
  367. package/dist/accessi-module/Controllers/EmailController.d.ts +4 -6
  368. package/dist/accessi-module/Controllers/EmailController.js +12 -14
  369. package/dist/accessi-module/Controllers/EmailController.js.map +1 -1
  370. package/dist/accessi-module/Controllers/FiltriController.d.ts +12 -4
  371. package/dist/accessi-module/Controllers/FiltriController.js +153 -6
  372. package/dist/accessi-module/Controllers/FiltriController.js.map +1 -1
  373. package/dist/accessi-module/Controllers/PermissionController.d.ts +20 -2
  374. package/dist/accessi-module/Controllers/PermissionController.js +344 -53
  375. package/dist/accessi-module/Controllers/PermissionController.js.map +1 -1
  376. package/dist/accessi-module/Controllers/SchemaController.d.ts +9 -0
  377. package/dist/accessi-module/Controllers/SchemaController.js +79 -0
  378. package/dist/accessi-module/Controllers/SchemaController.js.map +1 -0
  379. package/dist/accessi-module/Controllers/ServiceTokenController.d.ts +23 -0
  380. package/dist/accessi-module/Controllers/ServiceTokenController.js +176 -0
  381. package/dist/accessi-module/Controllers/ServiceTokenController.js.map +1 -0
  382. package/dist/accessi-module/Controllers/UserController.d.ts +20 -5
  383. package/dist/accessi-module/Controllers/UserController.js +331 -32
  384. package/dist/accessi-module/Controllers/UserController.js.map +1 -1
  385. package/dist/accessi-module/Dtos/Abilitazione.js.map +1 -1
  386. package/dist/accessi-module/Dtos/AbilitazioneMenu.js +16 -8
  387. package/dist/accessi-module/Dtos/AbilitazioneMenu.js.map +1 -1
  388. package/dist/accessi-module/Dtos/AdminBootstrapDtos.d.ts +26 -0
  389. package/dist/accessi-module/Dtos/AdminBootstrapDtos.js +100 -0
  390. package/dist/accessi-module/Dtos/AdminBootstrapDtos.js.map +1 -0
  391. package/dist/accessi-module/Dtos/AssignPermissionsToUserRequest.js +0 -1
  392. package/dist/accessi-module/Dtos/AssignPermissionsToUserRequest.js.map +1 -1
  393. package/dist/accessi-module/Dtos/AssignRolesToUserRequest.js +1 -2
  394. package/dist/accessi-module/Dtos/AssignRolesToUserRequest.js.map +1 -1
  395. package/dist/accessi-module/Dtos/AuthenticatedUserPayloadDto.d.ts +13 -0
  396. package/dist/accessi-module/Dtos/AuthenticatedUserPayloadDto.js +70 -0
  397. package/dist/accessi-module/Dtos/AuthenticatedUserPayloadDto.js.map +1 -0
  398. package/dist/accessi-module/Dtos/BaseResponse.d.ts +22 -0
  399. package/dist/accessi-module/Dtos/BaseResponse.js +106 -1
  400. package/dist/accessi-module/Dtos/BaseResponse.js.map +1 -1
  401. package/dist/accessi-module/Dtos/CatalogDtos.d.ts +64 -0
  402. package/dist/accessi-module/Dtos/CatalogDtos.js +322 -0
  403. package/dist/accessi-module/Dtos/CatalogDtos.js.map +1 -0
  404. package/dist/accessi-module/Dtos/ConfirmResetPasswordRequest.d.ts +3 -0
  405. package/dist/accessi-module/Dtos/ConfirmResetPasswordRequest.js +31 -0
  406. package/dist/accessi-module/Dtos/ConfirmResetPasswordRequest.js.map +1 -0
  407. package/dist/accessi-module/Dtos/ConsoleEntryDtos.d.ts +24 -0
  408. package/dist/accessi-module/Dtos/ConsoleEntryDtos.js +77 -0
  409. package/dist/accessi-module/Dtos/ConsoleEntryDtos.js.map +1 -0
  410. package/dist/accessi-module/Dtos/FederatedIdentityDtos.d.ts +69 -0
  411. package/dist/accessi-module/Dtos/FederatedIdentityDtos.js +236 -0
  412. package/dist/accessi-module/Dtos/FederatedIdentityDtos.js.map +1 -0
  413. package/dist/accessi-module/Dtos/FiltriUtente.js +5 -1
  414. package/dist/accessi-module/Dtos/FiltriUtente.js.map +1 -1
  415. package/dist/accessi-module/Dtos/GetGroupsWithMenusResponse.js.map +1 -1
  416. package/dist/accessi-module/Dtos/GetMenusResponse.js +1 -1
  417. package/dist/accessi-module/Dtos/GetMenusResponse.js.map +1 -1
  418. package/dist/accessi-module/Dtos/GetRolesResponse.js.map +1 -1
  419. package/dist/accessi-module/Dtos/GetUserByTokenRequest.d.ts +3 -0
  420. package/dist/accessi-module/Dtos/GetUserByTokenRequest.js +26 -0
  421. package/dist/accessi-module/Dtos/GetUserByTokenRequest.js.map +1 -0
  422. package/dist/accessi-module/Dtos/GetUserByTokenResponse.d.ts +5 -0
  423. package/dist/accessi-module/Dtos/GetUserByTokenResponse.js +27 -0
  424. package/dist/accessi-module/Dtos/GetUserByTokenResponse.js.map +1 -0
  425. package/dist/accessi-module/Dtos/GetUsersResponse.d.ts +1 -1
  426. package/dist/accessi-module/Dtos/GetUsersResponse.js.map +1 -1
  427. package/dist/accessi-module/Dtos/LoginRequest.d.ts +1 -1
  428. package/dist/accessi-module/Dtos/LoginRequest.js +3 -2
  429. package/dist/accessi-module/Dtos/LoginRequest.js.map +1 -1
  430. package/dist/accessi-module/Dtos/LoginResponse.d.ts +6 -2
  431. package/dist/accessi-module/Dtos/LoginResponse.js +20 -7
  432. package/dist/accessi-module/Dtos/LoginResponse.js.map +1 -1
  433. package/dist/accessi-module/Dtos/MenuItem.js +1 -0
  434. package/dist/accessi-module/Dtos/Permission.d.ts +1 -0
  435. package/dist/accessi-module/Dtos/Permission.js +1 -0
  436. package/dist/accessi-module/Dtos/Permission.js.map +1 -1
  437. package/dist/accessi-module/Dtos/PublicRegisterRequest.d.ts +5 -0
  438. package/dist/accessi-module/Dtos/PublicRegisterRequest.js +15 -0
  439. package/dist/accessi-module/Dtos/PublicRegisterRequest.js.map +1 -0
  440. package/dist/accessi-module/Dtos/RegisterRequest.d.ts +2 -4
  441. package/dist/accessi-module/Dtos/RegisterRequest.js +17 -27
  442. package/dist/accessi-module/Dtos/RegisterRequest.js.map +1 -1
  443. package/dist/accessi-module/Dtos/RegisterResponse.d.ts +1 -1
  444. package/dist/accessi-module/Dtos/RegisterResponse.js +3 -3
  445. package/dist/accessi-module/Dtos/RegisterResponse.js.map +1 -1
  446. package/dist/accessi-module/Dtos/Role.d.ts +4 -0
  447. package/dist/accessi-module/Dtos/Role.js +4 -0
  448. package/dist/accessi-module/Dtos/Role.js.map +1 -1
  449. package/dist/accessi-module/Dtos/RuoliMenu.js.map +1 -1
  450. package/dist/accessi-module/Dtos/SchemaDtos.d.ts +19 -0
  451. package/dist/accessi-module/Dtos/SchemaDtos.js +84 -0
  452. package/dist/accessi-module/Dtos/SchemaDtos.js.map +1 -0
  453. package/dist/accessi-module/Dtos/SendResetPasswordEmailRequest.d.ts +4 -0
  454. package/dist/accessi-module/Dtos/SendResetPasswordEmailRequest.js +36 -0
  455. package/dist/accessi-module/Dtos/SendResetPasswordEmailRequest.js.map +1 -0
  456. package/dist/accessi-module/Dtos/ServiceToken.d.ts +34 -0
  457. package/dist/accessi-module/Dtos/ServiceToken.js +128 -0
  458. package/dist/accessi-module/Dtos/ServiceToken.js.map +1 -0
  459. package/dist/accessi-module/Dtos/SetStatoRegistrazione.js.map +1 -1
  460. package/dist/accessi-module/Dtos/SetUserPasswordRequest.d.ts +4 -0
  461. package/dist/accessi-module/Dtos/SetUserPasswordRequest.js +32 -0
  462. package/dist/accessi-module/Dtos/SetUserPasswordRequest.js.map +1 -0
  463. package/dist/accessi-module/Dtos/StatoRegistrazione.js.map +1 -1
  464. package/dist/accessi-module/Dtos/TipoAbilitazione.d.ts +4 -0
  465. package/dist/accessi-module/Dtos/TipoAbilitazione.js +4 -0
  466. package/dist/accessi-module/Dtos/TipoAbilitazione.js.map +1 -1
  467. package/dist/accessi-module/Dtos/TipoFiltro.js.map +1 -1
  468. package/dist/accessi-module/Dtos/TokenResult.js.map +1 -1
  469. package/dist/accessi-module/Dtos/TwoFactorDtos.d.ts +13 -0
  470. package/dist/accessi-module/Dtos/TwoFactorDtos.js +60 -0
  471. package/dist/accessi-module/Dtos/TwoFactorDtos.js.map +1 -0
  472. package/dist/accessi-module/Dtos/UpdateEnabledStatusRequest.js.map +1 -1
  473. package/dist/accessi-module/Dtos/UserDto.d.ts +9 -4
  474. package/dist/accessi-module/Dtos/UserDto.js +37 -22
  475. package/dist/accessi-module/Dtos/UserDto.js.map +1 -1
  476. package/dist/accessi-module/Dtos/UserGrantsDto.js.map +1 -1
  477. package/dist/accessi-module/Dtos/UserGrantsResponse.d.ts +5 -0
  478. package/dist/accessi-module/Dtos/UserGrantsResponse.js +27 -0
  479. package/dist/accessi-module/Dtos/UserGrantsResponse.js.map +1 -0
  480. package/dist/accessi-module/Dtos/index.d.ts +13 -0
  481. package/dist/accessi-module/Dtos/index.js +13 -0
  482. package/dist/accessi-module/Dtos/index.js.map +1 -1
  483. package/dist/accessi-module/Services/AdminBootstrapService/AdminBootstrapService.d.ts +33 -0
  484. package/dist/accessi-module/Services/AdminBootstrapService/AdminBootstrapService.js +106 -0
  485. package/dist/accessi-module/Services/AdminBootstrapService/AdminBootstrapService.js.map +1 -0
  486. package/dist/accessi-module/Services/AuthService/AuthService.d.ts +46 -5
  487. package/dist/accessi-module/Services/AuthService/AuthService.js +204 -50
  488. package/dist/accessi-module/Services/AuthService/AuthService.js.map +1 -1
  489. package/dist/accessi-module/Services/ConfiguratorService/ConfiguratorService.d.ts +3 -1
  490. package/dist/accessi-module/Services/ConfiguratorService/ConfiguratorService.js +5 -1
  491. package/dist/accessi-module/Services/ConfiguratorService/ConfiguratorService.js.map +1 -1
  492. package/dist/accessi-module/Services/EmailService/EmailService.d.ts +9 -2
  493. package/dist/accessi-module/Services/EmailService/EmailService.js +47 -22
  494. package/dist/accessi-module/Services/EmailService/EmailService.js.map +1 -1
  495. package/dist/accessi-module/Services/FiltriService/FiltriService.d.ts +18 -3
  496. package/dist/accessi-module/Services/FiltriService/FiltriService.js +92 -16
  497. package/dist/accessi-module/Services/FiltriService/FiltriService.js.map +1 -1
  498. package/dist/accessi-module/Services/PermissionService/PermissionService.d.ts +77 -2
  499. package/dist/accessi-module/Services/PermissionService/PermissionService.js +603 -206
  500. package/dist/accessi-module/Services/PermissionService/PermissionService.js.map +1 -1
  501. package/dist/accessi-module/Services/SchemaExportService/SchemaExportService.d.ts +36 -0
  502. package/dist/accessi-module/Services/SchemaExportService/SchemaExportService.js +125 -0
  503. package/dist/accessi-module/Services/SchemaExportService/SchemaExportService.js.map +1 -0
  504. package/dist/accessi-module/Services/ServiceTokenService/ServiceTokenService.d.ts +75 -0
  505. package/dist/accessi-module/Services/ServiceTokenService/ServiceTokenService.js +265 -0
  506. package/dist/accessi-module/Services/ServiceTokenService/ServiceTokenService.js.map +1 -0
  507. package/dist/accessi-module/Services/TwoFactorService/TwoFactorService.d.ts +27 -0
  508. package/dist/accessi-module/Services/TwoFactorService/TwoFactorService.js +175 -0
  509. package/dist/accessi-module/Services/TwoFactorService/TwoFactorService.js.map +1 -0
  510. package/dist/accessi-module/Services/UserService/UserService.d.ts +66 -5
  511. package/dist/accessi-module/Services/UserService/UserService.js +520 -335
  512. package/dist/accessi-module/Services/UserService/UserService.js.map +1 -1
  513. package/dist/accessi-module/Views/reset-password.html +229 -213
  514. package/dist/accessi-module/accessiRuntime.d.ts +45 -0
  515. package/dist/accessi-module/accessiRuntime.js +39 -0
  516. package/dist/accessi-module/accessiRuntime.js.map +1 -0
  517. package/dist/accessi-module/database-updates/AccessiCatalogMigrator.d.ts +83 -0
  518. package/dist/accessi-module/database-updates/AccessiCatalogMigrator.js +360 -0
  519. package/dist/accessi-module/database-updates/AccessiCatalogMigrator.js.map +1 -0
  520. package/dist/accessi-module/database-updates/AccessiDatabaseUpdater.d.ts +58 -10
  521. package/dist/accessi-module/database-updates/AccessiDatabaseUpdater.js +506 -179
  522. package/dist/accessi-module/database-updates/AccessiDatabaseUpdater.js.map +1 -1
  523. package/dist/accessi-module/database-updates/accessiOptionsFromEnv.d.ts +5 -0
  524. package/dist/accessi-module/database-updates/accessiOptionsFromEnv.js +79 -0
  525. package/dist/accessi-module/database-updates/accessiOptionsFromEnv.js.map +1 -0
  526. package/dist/accessi-module/database-updates/accessiSchema.d.ts +67 -0
  527. package/dist/accessi-module/database-updates/accessiSchema.js +124 -0
  528. package/dist/accessi-module/database-updates/accessiSchema.js.map +1 -0
  529. package/dist/accessi-module/database-updates/optionalColumns.d.ts +7 -0
  530. package/dist/accessi-module/database-updates/optionalColumns.js +58 -0
  531. package/dist/accessi-module/database-updates/optionalColumns.js.map +1 -0
  532. package/dist/accessi-module/database-updates/runAccessiCatalogMigrations.d.ts +1 -0
  533. package/dist/accessi-module/database-updates/runAccessiCatalogMigrations.js +69 -0
  534. package/dist/accessi-module/database-updates/runAccessiCatalogMigrations.js.map +1 -0
  535. package/dist/accessi-module/database-updates/runAccessiDbUpdate.js +15 -53
  536. package/dist/accessi-module/database-updates/runAccessiDbUpdate.js.map +1 -1
  537. package/dist/accessi-module/federated-auth/FederatedAuthController.d.ts +33 -0
  538. package/dist/accessi-module/federated-auth/FederatedAuthController.js +373 -0
  539. package/dist/accessi-module/federated-auth/FederatedAuthController.js.map +1 -0
  540. package/dist/accessi-module/federated-auth/FederatedAuthService.d.ts +102 -0
  541. package/dist/accessi-module/federated-auth/FederatedAuthService.js +461 -0
  542. package/dist/accessi-module/federated-auth/FederatedAuthService.js.map +1 -0
  543. package/dist/accessi-module/federated-auth/FederatedAuthTypes.d.ts +53 -0
  544. package/dist/accessi-module/federated-auth/FederatedAuthTypes.js +3 -0
  545. package/dist/accessi-module/federated-auth/FederatedAuthTypes.js.map +1 -0
  546. package/dist/accessi-module/index.d.ts +29 -0
  547. package/dist/accessi-module/index.js +90 -20
  548. package/dist/accessi-module/index.js.map +1 -1
  549. package/dist/accessi-module/jwt/jwt.strategy.d.ts +1 -1
  550. package/dist/accessi-module/jwt/jwt.strategy.js +16 -7
  551. package/dist/accessi-module/jwt/jwt.strategy.js.map +1 -1
  552. package/dist/accessi-module/middleware/accessiRequirements.d.ts +23 -1
  553. package/dist/accessi-module/middleware/accessiRequirements.js +7 -0
  554. package/dist/accessi-module/middleware/accessiRequirements.js.map +1 -1
  555. package/dist/accessi-module/middleware/authenticateGen.d.ts +16 -1
  556. package/dist/accessi-module/middleware/authenticateGen.js +63 -25
  557. package/dist/accessi-module/middleware/authenticateGen.js.map +1 -1
  558. package/dist/accessi-module/security/AccessiHttpExceptionFilter.d.ts +12 -0
  559. package/dist/accessi-module/security/AccessiHttpExceptionFilter.js +77 -0
  560. package/dist/accessi-module/security/AccessiHttpExceptionFilter.js.map +1 -0
  561. package/dist/accessi-module/security/accessControl.d.ts +48 -2
  562. package/dist/accessi-module/security/accessControl.js +84 -8
  563. package/dist/accessi-module/security/accessControl.js.map +1 -1
  564. package/dist/accessi-module/security/accessiValidation.d.ts +9 -0
  565. package/dist/accessi-module/security/accessiValidation.js +41 -0
  566. package/dist/accessi-module/security/accessiValidation.js.map +1 -0
  567. package/dist/accessi-module/security/adminBootstrap.d.ts +8 -0
  568. package/dist/accessi-module/security/adminBootstrap.js +41 -0
  569. package/dist/accessi-module/security/adminBootstrap.js.map +1 -0
  570. package/dist/accessi-module/security/authenticatedToken.d.ts +16 -2
  571. package/dist/accessi-module/security/authenticatedToken.js +31 -4
  572. package/dist/accessi-module/security/authenticatedToken.js.map +1 -1
  573. package/dist/accessi-module/security/consoleEntry.d.ts +16 -0
  574. package/dist/accessi-module/security/consoleEntry.js +50 -0
  575. package/dist/accessi-module/security/consoleEntry.js.map +1 -0
  576. package/dist/accessi-module/security/emailConfiguration.d.ts +20 -0
  577. package/dist/accessi-module/security/emailConfiguration.js +41 -0
  578. package/dist/accessi-module/security/emailConfiguration.js.map +1 -0
  579. package/dist/accessi-module/security/passwordPolicy.d.ts +21 -0
  580. package/dist/accessi-module/security/passwordPolicy.js +71 -0
  581. package/dist/accessi-module/security/passwordPolicy.js.map +1 -0
  582. package/dist/accessi-module/security/passwordResetToken.d.ts +13 -3
  583. package/dist/accessi-module/security/passwordResetToken.js +13 -5
  584. package/dist/accessi-module/security/passwordResetToken.js.map +1 -1
  585. package/dist/accessi-module/security/publicAuthRateLimit.d.ts +3 -3
  586. package/dist/accessi-module/security/publicAuthRateLimit.js +32 -8
  587. package/dist/accessi-module/security/publicAuthRateLimit.js.map +1 -1
  588. package/dist/accessi-module/security/serviceTokenGuard.d.ts +25 -0
  589. package/dist/accessi-module/security/serviceTokenGuard.js +85 -0
  590. package/dist/accessi-module/security/serviceTokenGuard.js.map +1 -0
  591. package/dist/accessi-module/security/serviceTokenRateLimit.d.ts +8 -0
  592. package/dist/accessi-module/security/serviceTokenRateLimit.js +49 -0
  593. package/dist/accessi-module/security/serviceTokenRateLimit.js.map +1 -0
  594. package/dist/accessi-module/startupLog.d.ts +6 -0
  595. package/dist/accessi-module/startupLog.js +25 -0
  596. package/dist/accessi-module/startupLog.js.map +1 -0
  597. package/dist/allegati-module/AllegatiModule.d.ts +12 -1
  598. package/dist/allegati-module/AllegatiModule.js +11 -1
  599. package/dist/allegati-module/AllegatiModule.js.map +1 -1
  600. package/dist/allegati-module/Controllers/AllegatiController.d.ts +2 -1
  601. package/dist/allegati-module/Controllers/AllegatiController.js +23 -15
  602. package/dist/allegati-module/Controllers/AllegatiController.js.map +1 -1
  603. package/dist/allegati-module/Dtos/AllegatoDto.js.map +1 -1
  604. package/dist/allegati-module/Dtos/BaseResponse.js.map +1 -1
  605. package/dist/allegati-module/Dtos/UploadSingleFileRequest.js.map +1 -1
  606. package/dist/allegati-module/Dtos/index.js.map +1 -1
  607. package/dist/allegati-module/Dtos/responses/DownloadAllegatoResponseDto.js.map +1 -1
  608. package/dist/allegati-module/Dtos/responses/GetListResponse.js.map +1 -1
  609. package/dist/allegati-module/Dtos/responses/UploadAllegatoResponseDto.js.map +1 -1
  610. package/dist/allegati-module/Services/AllegatiService/AllegatiService.d.ts +10 -3
  611. package/dist/allegati-module/Services/AllegatiService/AllegatiService.js +150 -101
  612. package/dist/allegati-module/Services/AllegatiService/AllegatiService.js.map +1 -1
  613. package/dist/allegati-module/index.js.map +1 -1
  614. package/dist/allegati-module/security/allegatiAuthorizationGuard.d.ts +14 -0
  615. package/dist/allegati-module/security/allegatiAuthorizationGuard.js +70 -0
  616. package/dist/allegati-module/security/allegatiAuthorizationGuard.js.map +1 -0
  617. package/dist/autobind.d.ts +10 -3
  618. package/dist/autobind.js +24 -9
  619. package/dist/autobind.js.map +1 -1
  620. package/dist/emilsoftware-utilities-2.0.0-dev.51.tgz +0 -0
  621. package/dist/firebird-compat.d.ts +27 -6
  622. package/dist/firebird-compat.js +150 -135
  623. package/dist/firebird-compat.js.map +1 -1
  624. package/dist/index.d.ts +2 -2
  625. package/dist/index.js +2 -2
  626. package/dist/index.js.map +1 -1
  627. package/dist/initEmilsoftwareModule.js +35 -9
  628. package/dist/initEmilsoftwareModule.js.map +1 -1
  629. package/dist/scripts/generateAccessiOpenApi.d.ts +1 -0
  630. package/dist/scripts/generateAccessiOpenApi.js +57 -0
  631. package/dist/scripts/generateAccessiOpenApi.js.map +1 -0
  632. package/dist/scripts/generateAccessiWiki.d.ts +1 -0
  633. package/dist/scripts/generateAccessiWiki.js +131 -0
  634. package/dist/scripts/generateAccessiWiki.js.map +1 -0
  635. package/dist/swagger/SwaggerConfig.d.ts +7 -1
  636. package/dist/swagger/SwaggerConfig.js +23 -8
  637. package/dist/swagger/SwaggerConfig.js.map +1 -1
  638. package/package.json +105 -83
package/dist/Orm.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Orm.js","sourceRoot":"","sources":["../src/Orm.ts"],"names":[],"mappings":"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","sourcesContent":["import * as Firebird from \"es-node-firebird\";\nimport { Logger } from \"./Logger\";\nimport { Database, Options, Transaction } from \"es-node-firebird\";\nimport { RestUtilities } from \"./Utilities\";\nimport {\n buildFirebirdCompatibilityCandidates,\n describeFirebirdCompatibilityOptions,\n ensureEsNodeFirebirdCompatibilityPatch,\n FirebirdOptions,\n shouldRetryFirebirdCompatibility,\n} from \"./firebird-compat\";\n\nensureEsNodeFirebirdCompatibilityPatch();\n\nexport class Orm {\n private static logger: Logger = new Logger(Orm.name);\n private static compatibilityProfileCache: Map<string, FirebirdOptions> = new Map<string, FirebirdOptions>();\n\n public static quote(value: string): string {\n return \"\\\"\" + value + \"\\\"\";\n }\n\n private static getTimeoutMs(options: Options): number {\n const candidate = (options as FirebirdOptions).connectTimeoutMs\n ?? (options as FirebirdOptions).compatibilityTotalTimeoutMs\n ?? (options as FirebirdOptions).connectTimeout\n ?? 15000;\n\n return Number.isFinite(candidate) && candidate > 0 ? Math.trunc(candidate) : 15000;\n }\n\n private static createTimeoutError(stage: string, timeoutMs: number, options: Options, query?: string): Error {\n const target = `${options.host ?? \"?\"}:${options.port ?? \"?\"} -> ${options.database ?? \"?\"}`;\n const suffix = query ? ` | sql=${query.replace(/\\s+/g, \" \").trim()}` : \"\";\n return new Error(`Timeout during Firebird ${stage} after ${timeoutMs} ms on ${target}${suffix}`);\n }\n\n private static createCompatibilityCacheKey(options: Options): string {\n return [\n options.host ?? \"?\",\n options.port ?? \"?\",\n options.database ?? \"?\",\n options.user ?? \"?\",\n ].join(\"|\");\n }\n\n private static getProbeTimeoutMs(options: Options, candidateCount: number): number {\n const configured = (options as FirebirdOptions).compatibilityProbeTimeoutMs;\n if (Number.isFinite(configured) && configured! > 0) {\n return Math.trunc(configured!);\n }\n\n const totalTimeoutMs = this.getTimeoutMs(options);\n if (candidateCount <= 1) {\n return totalTimeoutMs;\n }\n\n return Math.max(2500, Math.min(5000, Math.trunc(totalTimeoutMs / candidateCount)));\n }\n\n private static reorderCandidatesWithCache(options: Options, candidates: FirebirdOptions[]): FirebirdOptions[] {\n const cacheKey = this.createCompatibilityCacheKey(options);\n const cachedCandidate = this.compatibilityProfileCache.get(cacheKey);\n if (!cachedCandidate) {\n return candidates;\n }\n\n const ordered = [...candidates];\n const cachedDescription = describeFirebirdCompatibilityOptions(cachedCandidate);\n const cachedIndex = ordered.findIndex((candidate) => describeFirebirdCompatibilityOptions(candidate) === cachedDescription);\n\n if (cachedIndex <= 0) {\n return ordered;\n }\n\n const [matchedCandidate] = ordered.splice(cachedIndex, 1);\n ordered.unshift(matchedCandidate);\n return ordered;\n }\n\n private static createCompatibilitySummaryError(options: Options, attempts: { candidate: FirebirdOptions, error: unknown }[]): Error {\n const target = `${options.host ?? \"?\"}:${options.port ?? \"?\"} -> ${options.database ?? \"?\"}`;\n const attemptsSummary = attempts\n .map(({ candidate, error }) => {\n const errorMessage = String((error as { message?: unknown })?.message ?? error ?? \"Unknown error\");\n return `[${describeFirebirdCompatibilityOptions(candidate)} => ${errorMessage}]`;\n })\n .join(\"; \");\n\n return new Error(`Unable to attach Firebird database after compatibility probing on ${target}. Attempts: ${attemptsSummary}`);\n }\n\n private static async detachQuietly(db: Database | undefined): Promise<void> {\n if (!db) {\n return;\n }\n\n await new Promise<void>((resolve) => {\n try {\n db.detach(() => resolve());\n } catch {\n resolve();\n }\n });\n }\n\n private static attachOnceWithTimeout(options: Options, timeoutMs = this.getTimeoutMs(options)): Promise<Database> {\n return new Promise((resolve, reject): void => {\n let settled = false;\n const timeoutId = setTimeout(() => {\n if (settled) {\n return;\n }\n\n settled = true;\n reject(this.createTimeoutError(\"attach\", timeoutMs, options));\n }, timeoutMs);\n\n Firebird.attach(options, async (err: any, db: Database): Promise<void> => {\n if (settled) {\n await this.detachQuietly(db);\n return;\n }\n\n settled = true;\n clearTimeout(timeoutId);\n\n if (err) {\n this.logger.error(err);\n return reject(err);\n }\n\n return resolve(db);\n });\n });\n }\n\n private static async attachWithTimeout(options: Options): Promise<Database> {\n const totalTimeoutMs = this.getTimeoutMs(options);\n const candidates = this.reorderCandidatesWithCache(options, buildFirebirdCompatibilityCandidates(options));\n const probeTimeoutMs = this.getProbeTimeoutMs(options, candidates.length);\n const startedAt = Date.now();\n const attempts: { candidate: FirebirdOptions, error: unknown }[] = [];\n const cacheKey = this.createCompatibilityCacheKey(options);\n\n for (let index = 0; index < candidates.length; index++) {\n const candidate = candidates[index];\n const elapsedMs = Date.now() - startedAt;\n const remainingMs = totalTimeoutMs - elapsedMs;\n\n if (remainingMs <= 0) {\n break;\n }\n\n const attemptTimeoutMs = index === 0 && candidates.length === 1\n ? remainingMs\n : Math.min(probeTimeoutMs, remainingMs);\n\n try {\n if (candidates.length > 1) {\n this.logger.info(\n `Firebird compatibility probe ${index + 1}/${candidates.length}: ${describeFirebirdCompatibilityOptions(candidate)} (timeout ${attemptTimeoutMs} ms)`\n );\n }\n\n const db = await this.attachOnceWithTimeout(candidate, attemptTimeoutMs);\n this.compatibilityProfileCache.set(cacheKey, candidate);\n\n if (candidates.length > 1) {\n this.logger.info(\n `Firebird compatibility profile selected: ${describeFirebirdCompatibilityOptions(candidate)}`\n );\n }\n\n return db;\n } catch (error) {\n attempts.push({ candidate, error });\n\n if (!shouldRetryFirebirdCompatibility(error) || index === candidates.length - 1) {\n throw this.createCompatibilitySummaryError(options, attempts);\n }\n\n this.logger.warning(\n `Firebird attach failed with ${describeFirebirdCompatibilityOptions(candidate)}. Trying next compatibility profile. Error: ${String((error as { message?: unknown })?.message ?? error)}`\n );\n }\n }\n\n throw this.createCompatibilitySummaryError(options, attempts);\n }\n\n public static async testConnection(options: Options): Promise<boolean> {\n return new Promise((resolve): void => {\n this.attachWithTimeout(options)\n .then(async (db: Database): Promise<void> => {\n this.logger.info(\"DATABASE connesso.\");\n await this.detachQuietly(db);\n resolve(true);\n })\n .catch((err: Error): void => {\n this.logger.error(\"La connessione con il DATABASE non e andata a buon fine.\");\n this.logger.error(err);\n resolve(false);\n });\n });\n }\n\n public static async query(options: Options, query: string, parameters: any[] = [], logQuery = true): Promise<any> {\n try {\n const db = await this.attachWithTimeout(options);\n\n return await new Promise((resolve, reject): void => {\n const timeoutMs = this.getTimeoutMs(options);\n let settled = false;\n const timeoutId = setTimeout(async () => {\n if (settled) {\n return;\n }\n\n settled = true;\n await this.detachQuietly(db);\n reject(this.createTimeoutError(\"query\", timeoutMs, options, query));\n }, timeoutMs);\n\n if (logQuery) {\n this.logger.info(RestUtilities.printQueryWithParams(query, parameters));\n }\n\n db.query(query, parameters, async (error: any, result: any) => {\n if (settled) {\n await this.detachQuietly(db);\n return;\n }\n\n settled = true;\n clearTimeout(timeoutId);\n await this.detachQuietly(db);\n\n if (error) {\n this.logger.error(error);\n return reject(error);\n }\n\n return resolve(result);\n });\n });\n } catch (error) {\n this.logger.error(error as object);\n throw error;\n }\n }\n\n public static async execute(options: Options, query: string, parameters: any = [], logQuery = true): Promise<any> {\n try {\n const db = await this.attachWithTimeout(options);\n\n return await new Promise((resolve, reject): void => {\n const timeoutMs = this.getTimeoutMs(options);\n let settled = false;\n const timeoutId = setTimeout(async () => {\n if (settled) {\n return;\n }\n\n settled = true;\n await this.detachQuietly(db);\n reject(this.createTimeoutError(\"execute\", timeoutMs, options, query));\n }, timeoutMs);\n\n if (logQuery) {\n this.logger.info(RestUtilities.printQueryWithParams(query, parameters));\n }\n\n db.execute(query, parameters, async (error: any, result: any) => {\n if (settled) {\n await this.detachQuietly(db);\n return;\n }\n\n settled = true;\n clearTimeout(timeoutId);\n await this.detachQuietly(db);\n\n if (error) {\n this.logger.error(error);\n return reject(error);\n }\n\n return resolve(result);\n });\n });\n } catch (error) {\n this.logger.error(error as object);\n throw error;\n }\n }\n\n public static trimParam(param: any): string {\n if (typeof param === \"string\" || param instanceof String) {\n return param.trim();\n }\n return param;\n }\n\n public static async connect(options: Options): Promise<Database> {\n return this.attachWithTimeout(options);\n }\n\n public static async startTransaction(db: Database): Promise<Transaction> {\n return new Promise((resolve, reject): void => {\n db.transaction(Firebird.ISOLATION_READ_COMMITTED, function (err: any, transaction: Transaction): void {\n if (err) return reject(err); else return resolve(transaction);\n });\n });\n }\n\n public static async commitTransaction(transaction: Transaction): Promise<string> {\n return new Promise((resolve, reject): void => {\n transaction.commit((err: any): void => {\n if (err) return reject(err); else return resolve(\"Transaction committed successfully.\");\n });\n });\n }\n\n public static async rollbackTransaction(transaction: Transaction): Promise<string> {\n return new Promise((resolve, reject): void => {\n transaction.rollback((err: any): void => {\n if (err) return reject(err); else return resolve(\"Transaction rolled back successfully.\");\n });\n });\n }\n\n public static async executeMultiple(options: Options, queriesWithParams: { query: string, params: any[] }[]): Promise<string> {\n let db: Database | undefined;\n let transaction: Transaction | undefined;\n\n try {\n db = await Orm.connect(options);\n transaction = await Orm.startTransaction(db);\n\n for (const qwp of queriesWithParams) {\n await new Promise((resolve, reject) => {\n transaction.query(qwp.query, qwp.params, (err: any, result: any): void => {\n if (err) return reject(err);\n else return resolve(result);\n });\n });\n }\n\n await Orm.commitTransaction(transaction);\n await Orm.detachQuietly(db);\n return \"OK\";\n\n } catch (error) {\n if (transaction) {\n await Orm.rollbackTransaction(transaction);\n }\n await Orm.detachQuietly(db);\n throw error;\n }\n }\n\n public static async executeQueries(transaction: Transaction, queries: string[], params: any[]): Promise<any> {\n try {\n return await queries.reduce((promiseChain: Promise<any>, currentQuery: string, index: number) => {\n return promiseChain.then(() => new Promise((resolve, reject) => {\n transaction.query(currentQuery, params[index], (err: any, result: any): void => {\n if (err) return reject(err);\n else return resolve(result);\n });\n }));\n }, Promise.resolve());\n } catch (error) {\n return await new Promise((resolve, reject) => {\n transaction.rollback((rollbackErr: any): void => {\n if (rollbackErr) {\n return reject(rollbackErr);\n } else {\n return reject(error);\n }\n });\n });\n }\n }\n}\n"]}
1
+ {"version":3,"file":"Orm.js","sourceRoot":"","sources":["../src/Orm.ts"],"names":[],"mappings":"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","sourcesContent":["import * as Firebird from \"node-firebird\";\nimport { ConnectionPool, Database, Options, QueryParams, Transaction } from \"node-firebird\";\nimport { Logger } from \"./Logger\";\nimport { RestUtilities } from \"./Utilities\";\nimport {\n describeFirebirdCompatibilityOptions,\n enhanceFirebirdError,\n FirebirdOptions,\n normalizeFirebirdOptions,\n} from \"./firebird-compat\";\n\n/** Valore scalare di una colonna Firebird (riga flat). */\nexport type DbValue = string | number | boolean | Date | Buffer | null | undefined;\n\n/** Riga generica restituita da `Orm.query`/`Orm.execute` quando non si specifica un tipo. */\nexport type Row = Record<string, DbValue>;\n\nexport class Orm {\n private static logger: Logger = new Logger(Orm.name);\n private static pools: Map<string, ConnectionPool> = new Map();\n\n public static quote(value: string): string {\n return \"\\\"\" + value + \"\\\"\";\n }\n\n /** Dimensione pool: default 5 (pool attivo); `poolSize: 0` disabilita e torna all'attach per query. */\n private static getPoolSize(options: Options): number {\n const raw = (options as FirebirdOptions).poolSize;\n if (raw === 0) {\n return 0;\n }\n const size = raw === undefined ? 5 : Number(raw);\n return Number.isFinite(size) && size > 0 ? Math.trunc(size) : 0;\n }\n\n private static shouldLogQueryParameters(options: Options): boolean {\n return (options as FirebirdOptions).logQueryParameters === true;\n }\n\n private static formatQueryForLog(query: string, parameters: QueryParams, includeValues: boolean): string {\n const parameterList = Array.isArray(parameters) ? parameters : Object.values(parameters ?? {});\n if (includeValues) {\n return RestUtilities.printQueryWithParams(query, parameterList);\n }\n return `${query.replace(/\\s+/g, \" \").trim()} [params=${parameterList.length}]`;\n }\n\n private static buildPoolKey(options: Options, size: number): string {\n const normalized = normalizeFirebirdOptions(options);\n return [\n size,\n normalized.host ?? \"\",\n normalized.port ?? \"\",\n normalized.database ?? \"\",\n normalized.user ?? \"\",\n normalized.pluginName ?? \"\",\n String(normalized.wireCrypt ?? \"\"),\n ].join(\"|\");\n }\n\n /**\n * Chiude tutti i pool creati (opt-in `poolSize`). Utile a fine processo o nei test,\n * perché i pool mantengono connessioni e timer attivi.\n */\n public static async closePools(): Promise<void> {\n const pools = Array.from(this.pools.values());\n this.pools.clear();\n await Promise.all(pools.map((pool) => new Promise<void>((resolve) => {\n try {\n pool.destroy(() => resolve());\n } catch {\n resolve();\n }\n })));\n }\n\n private static getPool(options: Options, size: number): ConnectionPool {\n const normalized = normalizeFirebirdOptions(options);\n const key = this.buildPoolKey(normalized, size);\n let pool = this.pools.get(key);\n if (!pool) {\n this.logger.info(`Firebird pool created (max=${size}) using ${describeFirebirdCompatibilityOptions(normalized)}`);\n pool = Firebird.pool(size, normalized);\n pool.on(\"error\", (error: Error) => {\n this.logger.error(`Firebird pool error: ${error.message}`);\n });\n this.pools.set(key, pool);\n }\n return pool;\n }\n\n private static getTimeoutMs(options: Options): number {\n const candidate = (options as FirebirdOptions).connectTimeout ?? 15000;\n return Number.isFinite(candidate) && candidate > 0 ? Math.trunc(candidate) : 15000;\n }\n\n private static createTimeoutError(stage: string, timeoutMs: number, options: Options, query?: string): Error {\n const target = `${options.host ?? \"?\"}:${options.port ?? \"?\"} -> ${options.database ?? \"?\"}`;\n const suffix = query ? ` | sql=${query.replace(/\\s+/g, \" \").trim()}` : \"\";\n return new Error(`Timeout during Firebird ${stage} after ${timeoutMs} ms on ${target}${suffix}`);\n }\n\n private static async detachQuietly(db: Database | undefined): Promise<void> {\n if (!db) {\n return;\n }\n\n await new Promise<void>((resolve) => {\n try {\n db.detach(() => resolve());\n } catch {\n resolve();\n }\n });\n }\n\n private static shouldTrimStringResults(options: FirebirdOptions): boolean {\n return options.trimStringResults !== false;\n }\n\n private static normalizeResultValue(value: unknown, trimStringResults: boolean): unknown {\n if (!trimStringResults || value === undefined || value === null) {\n return value;\n }\n\n if (typeof value === \"string\" || value instanceof String) {\n return String(value).trimEnd();\n }\n\n if (Array.isArray(value)) {\n return value.map((item) => this.normalizeResultValue(item, trimStringResults));\n }\n\n if (value instanceof Date || Buffer.isBuffer(value)) {\n return value;\n }\n\n if (typeof value === \"object\") {\n const source = value as Record<string, unknown>;\n return Object.keys(source).reduce((normalized: Record<string, unknown>, key: string) => {\n normalized[key] = this.normalizeResultValue(source[key], trimStringResults);\n return normalized;\n }, {});\n }\n\n return value;\n }\n\n private static attachWithTimeout(options: Options): Promise<Database> {\n return new Promise((resolve, reject): void => {\n const normalizedOptions = normalizeFirebirdOptions(options);\n const timeoutMs = this.getTimeoutMs(normalizedOptions);\n const poolSize = this.getPoolSize(options);\n let settled = false;\n const timeoutId = setTimeout(() => {\n if (settled) {\n return;\n }\n\n settled = true;\n reject(\n enhanceFirebirdError(\n this.createTimeoutError(\"attach\", timeoutMs, normalizedOptions),\n normalizedOptions,\n { stage: \"attach\" },\n ),\n );\n }, timeoutMs);\n\n const handle = async (err: unknown, db: Database): Promise<void> => {\n if (settled) {\n await this.detachQuietly(db);\n return;\n }\n\n settled = true;\n clearTimeout(timeoutId);\n\n if (err) {\n return reject(enhanceFirebirdError(err, normalizedOptions, { stage: \"attach\" }));\n }\n\n return resolve(db);\n };\n\n try {\n if (poolSize > 0) {\n this.getPool(options, poolSize).get(handle);\n return;\n }\n\n this.logger.info(`Firebird attach using ${describeFirebirdCompatibilityOptions(normalizedOptions)}`);\n\n Firebird.attach(normalizedOptions, handle);\n } catch (error) {\n // Attach/get sincrono fallito: evita di lasciare il timer di timeout pendente.\n if (!settled) {\n settled = true;\n clearTimeout(timeoutId);\n reject(enhanceFirebirdError(error, normalizedOptions, { stage: \"attach\" }));\n }\n }\n });\n }\n\n public static async testConnection(options: Options): Promise<boolean> {\n return new Promise((resolve): void => {\n this.attachWithTimeout(options)\n .then(async (db: Database): Promise<void> => {\n this.logger.info(\"DATABASE connesso.\");\n await this.detachQuietly(db);\n resolve(true);\n })\n .catch((err: Error): void => {\n this.logger.error(\"La connessione con il DATABASE non e andata a buon fine.\");\n this.logger.error(err);\n resolve(false);\n });\n });\n }\n\n public static async query<T = Row>(\n options: Options,\n query: string,\n parameters: QueryParams = [],\n logQuery = true,\n ): Promise<T[]> {\n try {\n const normalizedOptions = normalizeFirebirdOptions(options);\n const db = await this.attachWithTimeout(options);\n\n return await new Promise<T[]>((resolve, reject): void => {\n const timeoutMs = this.getTimeoutMs(normalizedOptions);\n let settled = false;\n const timeoutId = setTimeout(async () => {\n if (settled) {\n return;\n }\n\n settled = true;\n await this.detachQuietly(db);\n reject(\n enhanceFirebirdError(\n this.createTimeoutError(\"query\", timeoutMs, normalizedOptions, query),\n normalizedOptions,\n { stage: \"query\", sql: query },\n ),\n );\n }, timeoutMs);\n\n if (logQuery) {\n this.logger.info(this.formatQueryForLog(query, parameters, this.shouldLogQueryParameters(options)));\n }\n\n db.query<unknown>(query, parameters, async (error: unknown, result: unknown[]) => {\n if (settled) {\n await this.detachQuietly(db);\n return;\n }\n\n settled = true;\n clearTimeout(timeoutId);\n await this.detachQuietly(db);\n\n if (error) {\n return reject(enhanceFirebirdError(error, normalizedOptions, { stage: \"query\", sql: query }));\n }\n\n return resolve(this.normalizeResultValue(result, this.shouldTrimStringResults(normalizedOptions)) as T[]);\n });\n });\n } catch (error) {\n const normalizedError = enhanceFirebirdError(error, options, { stage: \"query\", sql: query });\n this.logger.error(normalizedError);\n throw normalizedError;\n }\n }\n\n public static async execute<T = Row>(\n options: Options,\n query: string,\n parameters: QueryParams = [],\n logQuery = true,\n ): Promise<T[]> {\n try {\n const normalizedOptions = normalizeFirebirdOptions(options);\n const db = await this.attachWithTimeout(options);\n\n return await new Promise<T[]>((resolve, reject): void => {\n const timeoutMs = this.getTimeoutMs(normalizedOptions);\n let settled = false;\n const timeoutId = setTimeout(async () => {\n if (settled) {\n return;\n }\n\n settled = true;\n await this.detachQuietly(db);\n reject(\n enhanceFirebirdError(\n this.createTimeoutError(\"execute\", timeoutMs, normalizedOptions, query),\n normalizedOptions,\n { stage: \"execute\", sql: query },\n ),\n );\n }, timeoutMs);\n\n if (logQuery) {\n this.logger.info(this.formatQueryForLog(query, parameters, this.shouldLogQueryParameters(options)));\n }\n\n db.execute<unknown>(query, parameters, async (error: unknown, result: unknown[]) => {\n if (settled) {\n await this.detachQuietly(db);\n return;\n }\n\n settled = true;\n clearTimeout(timeoutId);\n await this.detachQuietly(db);\n\n if (error) {\n return reject(enhanceFirebirdError(error, normalizedOptions, { stage: \"execute\", sql: query }));\n }\n\n return resolve(this.normalizeResultValue(result, this.shouldTrimStringResults(normalizedOptions)) as T[]);\n });\n });\n } catch (error) {\n const normalizedError = enhanceFirebirdError(error, options, { stage: \"execute\", sql: query });\n this.logger.error(normalizedError);\n throw normalizedError;\n }\n }\n\n public static trimParam<T>(param: T): string | T {\n if (typeof param === \"string\" || param instanceof String) {\n return String(param).trim();\n }\n return param;\n }\n\n public static async connect(options: Options): Promise<Database> {\n return this.attachWithTimeout(options);\n }\n\n /**\n * Runs `operation` inside a single Firebird transaction: commit on success,\n * rollback on failure, detach in every case. Use it to make multi-statement\n * writes atomic instead of relying on auto-commit per statement.\n */\n public static async withTransaction<T>(\n options: Options,\n operation: (transaction: Transaction) => Promise<T>,\n ): Promise<T> {\n const db = await this.connect(options);\n let transaction: Transaction | undefined;\n\n try {\n transaction = await this.startTransaction(db);\n const result = await operation(transaction);\n await this.commitTransaction(transaction);\n return result;\n } catch (error) {\n if (transaction) {\n try {\n await this.rollbackTransaction(transaction);\n } catch {\n // Se la rollback fallisce (connessione persa) l'errore originale resta quello rilevante.\n }\n }\n throw error;\n } finally {\n await this.detachQuietly(db);\n }\n }\n\n /** Esegue una query su una transazione esistente e ne restituisce il risultato. */\n public static transactionQuery<T = Row[]>(\n transaction: Transaction,\n query: string,\n parameters: QueryParams = [],\n ): Promise<T> {\n return new Promise<T>((resolve, reject): void => {\n transaction.query(query, parameters, (error: unknown, result: unknown[]): void => {\n if (error) {\n reject(error);\n return;\n }\n\n resolve(result as T);\n });\n });\n }\n\n public static async startTransaction(db: Database): Promise<Transaction> {\n return new Promise((resolve, reject): void => {\n db.transaction(Firebird.ISOLATION_READ_COMMITTED, function (err: unknown, transaction: Transaction): void {\n if (err) {\n return reject(err);\n }\n\n return resolve(transaction);\n });\n });\n }\n\n public static async commitTransaction(transaction: Transaction): Promise<string> {\n return new Promise((resolve, reject): void => {\n transaction.commit((err: unknown): void => {\n if (err) {\n return reject(err);\n }\n\n return resolve(\"Transaction committed successfully.\");\n });\n });\n }\n\n public static async rollbackTransaction(transaction: Transaction): Promise<string> {\n return new Promise((resolve, reject): void => {\n transaction.rollback((err: unknown): void => {\n if (err) {\n return reject(err);\n }\n\n return resolve(\"Transaction rolled back successfully.\");\n });\n });\n }\n\n public static async executeMultiple(options: Options, queriesWithParams: { query: string, params: QueryParams }[]): Promise<string> {\n await Orm.withTransaction(options, async (transaction) => {\n for (const qwp of queriesWithParams) {\n await Orm.transactionQuery(transaction, qwp.query, qwp.params);\n }\n });\n\n return \"OK\";\n }\n\n public static async executeQueries(transaction: Transaction, queries: string[], params: QueryParams[]): Promise<unknown> {\n try {\n return await queries.reduce((promiseChain: Promise<unknown>, currentQuery: string, index: number) => {\n return promiseChain.then(() => new Promise((resolve, reject) => {\n transaction.query(currentQuery, params[index] ?? [], (err: unknown, result: unknown[]): void => {\n if (err) {\n return reject(err);\n }\n\n return resolve(result);\n });\n }));\n }, Promise.resolve());\n } catch (error) {\n return await new Promise((_resolve, reject) => {\n transaction.rollback((rollbackErr: unknown): void => {\n if (rollbackErr) {\n return reject(rollbackErr);\n }\n\n return reject(error);\n });\n });\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"RoutesLoggerMiddleware.js","sourceRoot":"","sources":["../src/RoutesLoggerMiddleware.ts"],"names":[],"mappings":";;;AAGA;;GAEG;AACH,MAAa,sBAAsB;IAG/B;;;OAGG;IACH,YAAY,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;QAC5D,MAAM,KAAK,GAAS,IAAI,IAAI,EAAE,CAAC,CAAC,wCAAwC;QAExE,0EAA0E;QAC1E,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAS,EAAE;YACxB,MAAM,GAAG,GAAS,IAAI,IAAI,EAAE,CAAC,CAAC,sCAAsC;YACpE,MAAM,OAAO,GAAW,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,8CAA8C;YAEvG,gDAAgD;YAChD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,WAAW,KAAK,OAAO,KAAK,CAAC,CAAC;QAC3F,CAAC,CAAC,CAAC;QAEH,yDAAyD;QACzD,IAAI,EAAE,CAAC;IACX,CAAC;CACJ;AAhCD,wDAgCC","sourcesContent":["import { NextFunction, Request, Response } from \"express\";\r\nimport { Logger } from \".\";\r\n\r\n/**\r\n * Middleware class for logging the execution time of routes.\r\n */\r\nexport class RoutesLoggerMiddleware {\r\n private logger: Logger;\r\n\r\n /**\r\n * Initializes the logger instance to be used.\r\n * @param logger - The logger instance.\r\n */\r\n constructor(logger: Logger) {\r\n this.logger = logger;\r\n }\r\n\r\n /**\r\n * Middleware function to log the execution time of each route.\r\n * @param req - The incoming HTTP request.\r\n * @param res - The HTTP response.\r\n * @param next - The next middleware function in the chain.\r\n */\r\n logExecutionTime(req: Request, res: Response, next: NextFunction): void {\r\n const start: Date = new Date(); // Record the start time of the request.\r\n\r\n // Attach a listener to the response object to calculate the elapsed time.\r\n res.on(\"finish\", (): void => {\r\n const end: Date = new Date(); // Record the end time of the request.\r\n const elapsed: number = end.getTime() - start.getTime(); // Calculate the elapsed time in milliseconds.\r\n\r\n // Log the HTTP method, URL, and execution time.\r\n this.logger.info(`Execution time for ${req.method} ${req.originalUrl}: ${elapsed} ms`);\r\n });\r\n\r\n // Continue to the next middleware function in the chain.\r\n next();\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"RoutesLoggerMiddleware.js","sourceRoot":"","sources":["../src/RoutesLoggerMiddleware.ts"],"names":[],"mappings":";;;AAGA;;GAEG;AACH,MAAa,sBAAsB;IAG/B;;;OAGG;IACH,YAAY,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;QAC5D,MAAM,KAAK,GAAS,IAAI,IAAI,EAAE,CAAC,CAAC,wCAAwC;QAExE,0EAA0E;QAC1E,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAS,EAAE;YACxB,MAAM,GAAG,GAAS,IAAI,IAAI,EAAE,CAAC,CAAC,sCAAsC;YACpE,MAAM,OAAO,GAAW,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,8CAA8C;YAEvG,gDAAgD;YAChD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,WAAW,KAAK,OAAO,KAAK,CAAC,CAAC;QAC3F,CAAC,CAAC,CAAC;QAEH,yDAAyD;QACzD,IAAI,EAAE,CAAC;IACX,CAAC;CACJ;AAhCD,wDAgCC","sourcesContent":["import { NextFunction, Request, Response } from \"express\";\nimport { Logger } from \".\";\n\n/**\n * Middleware class for logging the execution time of routes.\n */\nexport class RoutesLoggerMiddleware {\n private logger: Logger;\n\n /**\n * Initializes the logger instance to be used.\n * @param logger - The logger instance.\n */\n constructor(logger: Logger) {\n this.logger = logger;\n }\n\n /**\n * Middleware function to log the execution time of each route.\n * @param req - The incoming HTTP request.\n * @param res - The HTTP response.\n * @param next - The next middleware function in the chain.\n */\n logExecutionTime(req: Request, res: Response, next: NextFunction): void {\n const start: Date = new Date(); // Record the start time of the request.\n\n // Attach a listener to the response object to calculate the elapsed time.\n res.on(\"finish\", (): void => {\n const end: Date = new Date(); // Record the end time of the request.\n const elapsed: number = end.getTime() - start.getTime(); // Calculate the elapsed time in milliseconds.\n\n // Log the HTTP method, URL, and execution time.\n this.logger.info(`Execution time for ${req.method} ${req.originalUrl}: ${elapsed} ms`);\n });\n\n // Continue to the next middleware function in the chain.\n next();\n }\n}\n"]}
@@ -50,9 +50,10 @@ export declare class RestUtilities {
50
50
  * Sends an OK message as a response.
51
51
  * @param res - Express Response object.
52
52
  * @param message - The success message.
53
+ * @param status - HTTP success status. Defaults to 200; pass 201 only after creating a resource.
53
54
  * @returns The Response object.
54
55
  */
55
- static sendOKMessage(res: Response, message: string): Response;
56
+ static sendOKMessage(res: Response, message: string, status?: number): Response;
56
57
  /**
57
58
  * Sends an error message as a response.
58
59
  * @param res - Express Response object.
@@ -61,7 +62,9 @@ export declare class RestUtilities {
61
62
  * @param status - HTTP status code (default: 500).
62
63
  * @returns The Response object.
63
64
  */
64
- static sendErrorMessage(res: Response, error: any, tag?: string, status?: number): Response;
65
+ static sendErrorMessage(res: Response, error: unknown, tag?: string, status?: number): Response;
66
+ /** Riconosce errori di metadata Firebird che richiedono una migrazione. */
67
+ static isDatabaseSchemaError(error: unknown): boolean;
65
68
  static sendUnauthorized(res: Response): Response;
66
69
  static sendInvalidCredentials(res: Response): Response;
67
70
  static sendPasswordExpired(res: Response): Response;
@@ -69,27 +72,32 @@ export declare class RestUtilities {
69
72
  * Sends a base response with a payload.
70
73
  * @param res - Express Response object.
71
74
  * @param payload - The payload to include in the response.
75
+ * @param status - HTTP success status. Defaults to 200; pass 201 only after creating a resource.
72
76
  * @returns The Response object.
73
77
  */
74
- static sendBaseResponse(res: Response, payload: any): Response;
78
+ static sendBaseResponse(res: Response, payload: unknown, statusOrTag?: number | string, status?: number): Response;
75
79
  /**
76
80
  * Sends an execution message as a response.
77
81
  * @param res - Express Response object.
78
82
  * @param executionObject - The execution data.
79
83
  * @param title - The title of the response.
84
+ * @param status - HTTP success status. Defaults to 200.
80
85
  * @returns The Response object.
81
86
  */
82
- static sendExecMessage(res: Response, executionObject: any, title: string): Response;
87
+ static sendExecMessage(res: Response, executionObject: unknown, title: string, status?: number): Response;
83
88
  /**
84
- * Prints a SQL query with parameters replaced.
89
+ * Prints a SQL query with parameters replaced. Replacement is literal: values
90
+ * containing `?` or `$&` no longer corrupt the output as in the legacy
91
+ * `String.replace` implementation.
85
92
  * @param query - The SQL query.
86
93
  * @param params - The parameters to replace.
87
94
  * @returns The formatted query.
88
95
  */
89
- static printQueryWithParams(query: string, params: any[]): string;
90
- static convertKeysToCamelCase(obj: any): any;
96
+ static printQueryWithParams(query?: string, params?: unknown[]): string;
97
+ static convertKeysToCamelCase<T = Record<string, unknown>>(obj: unknown): T;
91
98
  }
92
99
  export declare class CryptUtilities {
100
+ private static readonly logger;
93
101
  /**
94
102
  * Cifra un testo in chiaro usando l'algoritmo AES-128 in modalità ECB.
95
103
  *
@@ -124,6 +132,8 @@ export declare class PasswordUtilities {
124
132
  static hashLegacyEncryptedPassword(legacyEncryptedPassword: string): string;
125
133
  static isPasswordHash(value: string): boolean;
126
134
  static isLegacyPasswordHash(value: string): boolean;
135
+ /** Confronto a tempo costante tra due stringhe (per dati legacy non hashati). */
136
+ static timingSafeStringEquals(value: string, candidate: string): boolean;
127
137
  static verifyPassword(plainPassword: string, storedPassword: string): boolean;
128
138
  static verifyLegacyEncryptedPassword(legacyEncryptedPassword: string, storedPassword: string): boolean;
129
139
  }
@@ -154,4 +164,4 @@ export declare class DatabaseUtilities {
154
164
  */
155
165
  static createOption(host: string, port: number, database: string, username?: string, password?: string): FirebirdOptions;
156
166
  }
157
- export declare function Deprecated(message: string): (target: any, key?: string, descriptor?: PropertyDescriptor) => void;
167
+ export declare function Deprecated(message: string): (target: object, key?: string, descriptor?: PropertyDescriptor) => void;
package/dist/Utilities.js CHANGED
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.DatabaseUtilities = exports.PasswordUtilities = exports.CryptUtilities = exports.RestUtilities = exports.DateUtilities = exports.StatusCode = void 0;
7
7
  exports.Deprecated = Deprecated;
8
+ const Logger_1 = require("./Logger");
8
9
  const crypto_1 = __importDefault(require("crypto"));
9
10
  var StatusCode;
10
11
  (function (StatusCode) {
@@ -97,12 +98,13 @@ class RestUtilities {
97
98
  * Sends an OK message as a response.
98
99
  * @param res - Express Response object.
99
100
  * @param message - The success message.
101
+ * @param status - HTTP success status. Defaults to 200; pass 201 only after creating a resource.
100
102
  * @returns The Response object.
101
103
  */
102
- static sendOKMessage(res, message) {
103
- return res.send({
104
+ static sendOKMessage(res, message, status = 200) {
105
+ return res.status(status).send({
104
106
  severity: "success",
105
- status: 200,
107
+ status,
106
108
  statusCode: StatusCode.Ok,
107
109
  message,
108
110
  });
@@ -116,33 +118,103 @@ class RestUtilities {
116
118
  * @returns The Response object.
117
119
  */
118
120
  static sendErrorMessage(res, error, tag = "[BASE ERROR]", status = 500) {
119
- return res.status(status).send({
120
- severity: "error",
121
- status,
122
- statusCode: StatusCode.Error,
123
- message: "An error occurred",
124
- error: `${tag}: ${error}`,
125
- });
121
+ var _a, _b;
122
+ const rawMessage = error instanceof Error ? error.message : String(error !== null && error !== void 0 ? error : "");
123
+ // Logga SEMPRE l'errore reale lato server (con stack) per la diagnosi.
124
+ const errorStack = error instanceof Error ? error.stack : undefined;
125
+ new Logger_1.Logger(tag || "[BASE ERROR]").error(rawMessage, ...(errorStack ? [errorStack] : []));
126
+ const errorWithResponse = error;
127
+ const exceptionResponse = typeof (errorWithResponse === null || errorWithResponse === void 0 ? void 0 : errorWithResponse.getResponse) === "function"
128
+ ? errorWithResponse.getResponse()
129
+ : undefined;
130
+ const exceptionPayload = exceptionResponse && typeof exceptionResponse === "object"
131
+ ? exceptionResponse
132
+ : undefined;
133
+ const explicitCode = typeof (exceptionPayload === null || exceptionPayload === void 0 ? void 0 : exceptionPayload.code) === "string" ? exceptionPayload.code : undefined;
134
+ const explicitMessage = typeof (exceptionPayload === null || exceptionPayload === void 0 ? void 0 : exceptionPayload.message) === "string" ? exceptionPayload.message : undefined;
135
+ const explicitDetails = Array.isArray(exceptionPayload === null || exceptionPayload === void 0 ? void 0 : exceptionPayload.details)
136
+ ? exceptionPayload.details.filter((detail) => typeof detail === "string")
137
+ : undefined;
138
+ const schemaError = this.isDatabaseSchemaError(error);
139
+ // Per le HttpException lo status corretto e quello dell'eccezione (es. 400 di validazione),
140
+ // anche quando il chiamante non lo passa esplicitamente. Lo status esplicito vale per gli altri errori.
141
+ const exceptionStatus = typeof (errorWithResponse === null || errorWithResponse === void 0 ? void 0 : errorWithResponse.getResponse) === "function"
142
+ ? Number((_b = (_a = error).getStatus) === null || _b === void 0 ? void 0 : _b.call(_a))
143
+ : undefined;
144
+ const hasExceptionStatus = Number.isInteger(exceptionStatus) && exceptionStatus >= 400;
145
+ // Molti controller chiamano `sendErrorMessage(res, err)` anche per errori di input:
146
+ // riconosciamo i casi di validazione per non rispondere 500.
147
+ const looksLikeValidation = !hasExceptionStatus && !schemaError
148
+ && /obbligatorio|obbligatoria|mancante|manca il parametro|non valido|non valida|required|missing|invalid input/i.test(rawMessage);
149
+ const effectiveStatus = schemaError
150
+ ? 503
151
+ : hasExceptionStatus
152
+ ? exceptionStatus
153
+ : looksLikeValidation
154
+ ? 400
155
+ : status;
156
+ // Codici GENERICI (questo helper non appartiene al modulo Accessi): i codici
157
+ // ACCESSI_* restano di competenza esclusiva del modulo Accessi.
158
+ const code = explicitCode !== null && explicitCode !== void 0 ? explicitCode : (schemaError
159
+ ? "DATABASE_SCHEMA_OUTDATED"
160
+ : effectiveStatus === 401
161
+ ? "UNAUTHORIZED"
162
+ : effectiveStatus === 403
163
+ ? "FORBIDDEN"
164
+ : effectiveStatus === 400
165
+ ? "VALIDATION_ERROR"
166
+ : effectiveStatus >= 500
167
+ ? "INTERNAL_ERROR"
168
+ : "REQUEST_ERROR");
169
+ // Messaggio SEMPRE specifico: prima quello esplicito dell'eccezione, altrimenti il
170
+ // messaggio reale dell'errore. Il generico resta solo se non c'e' alcun testo.
171
+ const fallbackMessage = schemaError
172
+ ? "Schema del database non aggiornato; eseguire la migrazione e riprovare."
173
+ : effectiveStatus === 401
174
+ ? "Autenticazione non valida o scaduta."
175
+ : effectiveStatus === 403
176
+ ? "Operazione non autorizzata."
177
+ : effectiveStatus >= 500
178
+ ? "Errore interno del server."
179
+ : "Richiesta non valida.";
180
+ const message = explicitMessage !== null && explicitMessage !== void 0 ? explicitMessage : (rawMessage.trim() || fallbackMessage);
181
+ return res.status(effectiveStatus).send(Object.assign({ severity: "error", status: effectiveStatus, statusCode: StatusCode.Error, code,
182
+ message,
183
+ // Compatibilita: il campo storico resta presente, ma non espone SQL, stack o dati sensibili.
184
+ error: code }, ((explicitDetails === null || explicitDetails === void 0 ? void 0 : explicitDetails.length) ? { details: explicitDetails } : {})));
185
+ }
186
+ /** Riconosce errori di metadata Firebird che richiedono una migrazione. */
187
+ static isDatabaseSchemaError(error) {
188
+ const message = error instanceof Error ? error.message : String(error !== null && error !== void 0 ? error : "");
189
+ return /column unknown|table unknown|dynamic sql error|unsuccessful metadata update|invalid request blr/i.test(message);
126
190
  }
127
191
  static sendUnauthorized(res) {
128
192
  return res.status(401).send({
129
193
  severity: "error",
194
+ status: 401,
130
195
  statusCode: StatusCode.Error,
131
- message: "Non sei autorizzato",
196
+ code: "ACCESSI_UNAUTHORIZED",
197
+ error: "ACCESSI_UNAUTHORIZED",
198
+ message: "Autenticazione non valida o scaduta.",
132
199
  });
133
200
  }
134
201
  static sendInvalidCredentials(res) {
135
202
  return res.status(401).send({
136
203
  severity: "error",
204
+ status: 401,
137
205
  statusCode: StatusCode.Error,
138
- message: "Credenziali non valide"
206
+ code: "ACCESSI_INVALID_CREDENTIALS",
207
+ error: "ACCESSI_INVALID_CREDENTIALS",
208
+ message: "Credenziali non valide",
139
209
  });
140
210
  }
141
211
  static sendPasswordExpired(res) {
142
212
  return res.status(403).send({
143
213
  severity: "warning",
214
+ status: 403,
144
215
  statusCode: StatusCode.Warning,
145
216
  code: "PASSWORD_EXPIRED",
217
+ error: "PASSWORD_EXPIRED",
146
218
  message: "Password scaduta. E' necessario aggiornarla"
147
219
  });
148
220
  }
@@ -150,23 +222,31 @@ class RestUtilities {
150
222
  * Sends a base response with a payload.
151
223
  * @param res - Express Response object.
152
224
  * @param payload - The payload to include in the response.
225
+ * @param status - HTTP success status. Defaults to 200; pass 201 only after creating a resource.
153
226
  * @returns The Response object.
154
227
  */
155
- static sendBaseResponse(res, payload) {
228
+ static sendBaseResponse(res, payload, statusOrTag, status = 200) {
229
+ // Retro-compatibilita: molti controller passano un "tag" come terzo
230
+ // argomento (es. sendBaseResponse(res, dati, 'clienti')). Il tag NON e uno
231
+ // status HTTP: veniva ignorato nella firma storica e non deve rompere la risposta.
232
+ const httpStatus = typeof statusOrTag === 'number'
233
+ ? statusOrTag
234
+ : (Number.isInteger(status) ? status : 200);
235
+ const tag = typeof statusOrTag === 'string' ? statusOrTag : "[UTILITIES]";
156
236
  try {
157
- payload = JSON.parse(JSON.stringify(payload));
237
+ const normalizedPayload = JSON.parse(JSON.stringify(payload, (_key, value) => typeof value === 'bigint' ? value.toString() : value));
158
238
  const response = {
159
239
  Status: {
160
240
  errorCode: "0",
161
241
  errorDescription: "",
162
242
  },
163
- Result: payload,
243
+ Result: normalizedPayload,
164
244
  Message: "Dati recuperati con successo.",
165
245
  };
166
- return res.send(response);
246
+ return res.status(httpStatus).send(response);
167
247
  }
168
248
  catch (error) {
169
- return this.sendErrorMessage(res, `Error sending response: ${error}`, "[UTILITIES]", 500);
249
+ return this.sendErrorMessage(res, error, tag, 500);
170
250
  }
171
251
  }
172
252
  /**
@@ -174,9 +254,10 @@ class RestUtilities {
174
254
  * @param res - Express Response object.
175
255
  * @param executionObject - The execution data.
176
256
  * @param title - The title of the response.
257
+ * @param status - HTTP success status. Defaults to 200.
177
258
  * @returns The Response object.
178
259
  */
179
- static sendExecMessage(res, executionObject, title) {
260
+ static sendExecMessage(res, executionObject, title, status = 200) {
180
261
  try {
181
262
  const response = {
182
263
  Status: {
@@ -188,36 +269,39 @@ class RestUtilities {
188
269
  data: executionObject,
189
270
  Title: title,
190
271
  };
191
- return res.send(response);
272
+ return res.status(status).send(response);
192
273
  }
193
274
  catch (error) {
194
275
  return this.sendErrorMessage(res, `Error sending execution message: ${error}`, title, 500);
195
276
  }
196
277
  }
197
278
  /**
198
- * Prints a SQL query with parameters replaced.
279
+ * Prints a SQL query with parameters replaced. Replacement is literal: values
280
+ * containing `?` or `$&` no longer corrupt the output as in the legacy
281
+ * `String.replace` implementation.
199
282
  * @param query - The SQL query.
200
283
  * @param params - The parameters to replace.
201
284
  * @returns The formatted query.
202
285
  */
203
- static printQueryWithParams(query = "", params) {
204
- try {
205
- params.forEach(param => {
206
- query = query.replace("?", param);
207
- });
208
- return query;
209
- }
210
- catch (error) {
211
- throw error;
212
- }
286
+ static printQueryWithParams(query = "", params = []) {
287
+ let index = 0;
288
+ return query.replace(/\?/g, () => {
289
+ if (index >= params.length) {
290
+ return "?";
291
+ }
292
+ const param = params[index++];
293
+ return param === undefined || param === null ? "NULL" : String(param);
294
+ });
213
295
  }
214
296
  static convertKeysToCamelCase(obj) {
215
- if (obj !== null && obj.constructor === Object) {
216
- return Object.keys(obj).reduce((acc, key) => {
217
- const camelCaseKey = key.toLowerCase().replace(/_([a-z])/g, g => g[1].toUpperCase());
218
- acc[camelCaseKey] = obj[key];
297
+ if (obj !== null && typeof obj === "object" && obj.constructor === Object) {
298
+ const source = obj;
299
+ const converted = Object.keys(source).reduce((acc, key) => {
300
+ const camelCaseKey = key.toLowerCase().replace(/_([a-z])/g, g => { var _a; return ((_a = g[1]) !== null && _a !== void 0 ? _a : '').toUpperCase(); });
301
+ acc[camelCaseKey] = source[key];
219
302
  return acc;
220
303
  }, {});
304
+ return converted;
221
305
  }
222
306
  return obj;
223
307
  }
@@ -247,7 +331,8 @@ class CryptUtilities {
247
331
  }
248
332
  catch (error) {
249
333
  // Gestisce eventuali errori di cifratura
250
- throw new Error(`Errore durante la cifratura: ${error.message}`);
334
+ const message = error instanceof Error ? error.message : String(error);
335
+ throw new Error(`Errore durante la cifratura: ${message}`);
251
336
  }
252
337
  }
253
338
  /**
@@ -271,12 +356,13 @@ class CryptUtilities {
271
356
  return decoded;
272
357
  }
273
358
  catch (error) {
274
- console.error("Errore durante la decifratura:", error);
359
+ CryptUtilities.logger.error("Errore durante la decifratura:", error);
275
360
  return null;
276
361
  }
277
362
  }
278
363
  }
279
364
  exports.CryptUtilities = CryptUtilities;
365
+ CryptUtilities.logger = new Logger_1.Logger(CryptUtilities.name);
280
366
  class PasswordUtilities {
281
367
  static hashSecret(secretValue, prefix) {
282
368
  if (typeof secretValue !== "string" || secretValue.length === 0) {
@@ -352,6 +438,20 @@ class PasswordUtilities {
352
438
  static isLegacyPasswordHash(value) {
353
439
  return this.hasPrefix(value, this.LEGACY_HASH_PREFIX);
354
440
  }
441
+ /** Confronto a tempo costante tra due stringhe (per dati legacy non hashati). */
442
+ static timingSafeStringEquals(value, candidate) {
443
+ if (typeof value !== "string" || typeof candidate !== "string") {
444
+ return false;
445
+ }
446
+ const valueBuffer = Buffer.from(value, "utf8");
447
+ const candidateBuffer = Buffer.from(candidate, "utf8");
448
+ if (valueBuffer.length !== candidateBuffer.length) {
449
+ // Confronta comunque per non rivelare la lunghezza tramite timing.
450
+ crypto_1.default.timingSafeEqual(valueBuffer, valueBuffer);
451
+ return false;
452
+ }
453
+ return crypto_1.default.timingSafeEqual(valueBuffer, candidateBuffer);
454
+ }
355
455
  static verifyPassword(plainPassword, storedPassword) {
356
456
  return this.verifySecret(plainPassword, storedPassword, this.HASH_PREFIX);
357
457
  }
@@ -403,15 +503,20 @@ class DatabaseUtilities {
403
503
  pageSize: 100000, // The page size for database transactions. Default: 100,000.
404
504
  retryConnectionInterval: 1000, // The interval (in ms) to retry a failed connection. Default: 1,000 ms.
405
505
  blobAsText: true, // Determines if BLOB fields should be treated as text. Default: true.
406
- authPlugins: ['Srp256', 'Srp', 'Legacy_Auth'],
506
+ connectTimeout: 15000,
407
507
  connectTimeoutMs: 15000,
508
+ trimStringResults: true,
408
509
  };
409
510
  }
410
511
  }
411
512
  exports.DatabaseUtilities = DatabaseUtilities;
513
+ const deprecationLogger = new Logger_1.Logger('Deprecated');
412
514
  function Deprecated(message) {
413
515
  return function (target, key, descriptor) {
414
- console.warn(`[DEPRECATED] ${message}`);
516
+ void target;
517
+ void key;
518
+ void descriptor;
519
+ deprecationLogger.warning(`[DEPRECATED] ${message}`);
415
520
  };
416
521
  }
417
522
  //# sourceMappingURL=Utilities.js.map