@hyper.software/common-helpers 1.0.1

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 (296) hide show
  1. package/README.md +0 -0
  2. package/lib/errors/CriticalError.d.ts +11 -0
  3. package/lib/errors/CriticalError.js +38 -0
  4. package/lib/errors/CriticalError.js.map +1 -0
  5. package/lib/errors/ValidationError.d.ts +11 -0
  6. package/lib/errors/ValidationError.js +38 -0
  7. package/lib/errors/ValidationError.js.map +1 -0
  8. package/lib/errors/ValidationErrorSilent.d.ts +4 -0
  9. package/lib/errors/ValidationErrorSilent.js +29 -0
  10. package/lib/errors/ValidationErrorSilent.js.map +1 -0
  11. package/lib/errors/ValidationErrorWithStatus.d.ts +11 -0
  12. package/lib/errors/ValidationErrorWithStatus.js +39 -0
  13. package/lib/errors/ValidationErrorWithStatus.js.map +1 -0
  14. package/lib/errors/ValidationErrorWithStatusSilent.d.ts +4 -0
  15. package/lib/errors/ValidationErrorWithStatusSilent.js +29 -0
  16. package/lib/errors/ValidationErrorWithStatusSilent.js.map +1 -0
  17. package/lib/errors/__mocks__/errors.mock.d.ts +75 -0
  18. package/lib/errors/__mocks__/errors.mock.js +92 -0
  19. package/lib/errors/__mocks__/errors.mock.js.map +1 -0
  20. package/lib/errors/__tests__/errorMappers.test.d.ts +1 -0
  21. package/lib/errors/__tests__/errorMappers.test.js +30 -0
  22. package/lib/errors/__tests__/errorMappers.test.js.map +1 -0
  23. package/lib/errors/__tests__/errors.test.d.ts +1 -0
  24. package/lib/errors/__tests__/errors.test.js +82 -0
  25. package/lib/errors/__tests__/errors.test.js.map +1 -0
  26. package/lib/errors/errorMappers.d.ts +18 -0
  27. package/lib/errors/errorMappers.js +153 -0
  28. package/lib/errors/errorMappers.js.map +1 -0
  29. package/lib/errors/errors.types.d.ts +15 -0
  30. package/lib/errors/errors.types.js +9 -0
  31. package/lib/errors/errors.types.js.map +1 -0
  32. package/lib/errors/index.d.ts +5 -0
  33. package/lib/errors/index.js +13 -0
  34. package/lib/errors/index.js.map +1 -0
  35. package/lib/express/__tests__/swaggerHelpers.test.d.ts +1 -0
  36. package/lib/express/__tests__/swaggerHelpers.test.js +57 -0
  37. package/lib/express/__tests__/swaggerHelpers.test.js.map +1 -0
  38. package/lib/express/middleware/aliveMiddleware/index.d.ts +10 -0
  39. package/lib/express/middleware/aliveMiddleware/index.js +22 -0
  40. package/lib/express/middleware/aliveMiddleware/index.js.map +1 -0
  41. package/lib/express/middleware/companyMiddleware/company.d.ts +10 -0
  42. package/lib/express/middleware/companyMiddleware/company.js +24 -0
  43. package/lib/express/middleware/companyMiddleware/company.js.map +1 -0
  44. package/lib/express/middleware/companyMiddleware/companyApiRequest.d.ts +7 -0
  45. package/lib/express/middleware/companyMiddleware/companyApiRequest.js +18 -0
  46. package/lib/express/middleware/companyMiddleware/companyApiRequest.js.map +1 -0
  47. package/lib/express/middleware/companyMiddleware/index.d.ts +17 -0
  48. package/lib/express/middleware/companyMiddleware/index.js +28 -0
  49. package/lib/express/middleware/companyMiddleware/index.js.map +1 -0
  50. package/lib/express/middleware/companyMiddleware/index.types.d.ts +2 -0
  51. package/lib/express/middleware/companyMiddleware/index.types.js +3 -0
  52. package/lib/express/middleware/companyMiddleware/index.types.js.map +1 -0
  53. package/lib/express/middleware/expressErrorHandlerMiddleware/__tests__/expressErrorHandlerMiddleware.test.d.ts +1 -0
  54. package/lib/express/middleware/expressErrorHandlerMiddleware/__tests__/expressErrorHandlerMiddleware.test.js +97 -0
  55. package/lib/express/middleware/expressErrorHandlerMiddleware/__tests__/expressErrorHandlerMiddleware.test.js.map +1 -0
  56. package/lib/express/middleware/expressErrorHandlerMiddleware/index.d.ts +15 -0
  57. package/lib/express/middleware/expressErrorHandlerMiddleware/index.js +82 -0
  58. package/lib/express/middleware/expressErrorHandlerMiddleware/index.js.map +1 -0
  59. package/lib/express/middleware/index.d.ts +7 -0
  60. package/lib/express/middleware/index.js +18 -0
  61. package/lib/express/middleware/index.js.map +1 -0
  62. package/lib/express/middleware/languageMiddleware/index.d.ts +5 -0
  63. package/lib/express/middleware/languageMiddleware/index.js +53 -0
  64. package/lib/express/middleware/languageMiddleware/index.js.map +1 -0
  65. package/lib/express/middleware/partnerMiddleware/index.d.ts +17 -0
  66. package/lib/express/middleware/partnerMiddleware/index.js +28 -0
  67. package/lib/express/middleware/partnerMiddleware/index.js.map +1 -0
  68. package/lib/express/middleware/partnerMiddleware/index.types.d.ts +2 -0
  69. package/lib/express/middleware/partnerMiddleware/index.types.js +3 -0
  70. package/lib/express/middleware/partnerMiddleware/index.types.js.map +1 -0
  71. package/lib/express/middleware/partnerMiddleware/partner.d.ts +10 -0
  72. package/lib/express/middleware/partnerMiddleware/partner.js +24 -0
  73. package/lib/express/middleware/partnerMiddleware/partner.js.map +1 -0
  74. package/lib/express/middleware/partnerMiddleware/partnerServiceRequest.d.ts +7 -0
  75. package/lib/express/middleware/partnerMiddleware/partnerServiceRequest.js +18 -0
  76. package/lib/express/middleware/partnerMiddleware/partnerServiceRequest.js.map +1 -0
  77. package/lib/express/middleware/responseHelpersMiddleware/index.d.ts +2 -0
  78. package/lib/express/middleware/responseHelpersMiddleware/index.js +67 -0
  79. package/lib/express/middleware/responseHelpersMiddleware/index.js.map +1 -0
  80. package/lib/express/middleware/responseHelpersMiddleware/types.d.ts +18 -0
  81. package/lib/express/middleware/responseHelpersMiddleware/types.js +3 -0
  82. package/lib/express/middleware/responseHelpersMiddleware/types.js.map +1 -0
  83. package/lib/express/middleware/translationsMiddleware/index.d.ts +4 -0
  84. package/lib/express/middleware/translationsMiddleware/index.js +20 -0
  85. package/lib/express/middleware/translationsMiddleware/index.js.map +1 -0
  86. package/lib/express/swaggerControllersConfig.d.ts +13 -0
  87. package/lib/express/swaggerControllersConfig.js +112 -0
  88. package/lib/express/swaggerControllersConfig.js.map +1 -0
  89. package/lib/express/swaggerHelpers.d.ts +4 -0
  90. package/lib/express/swaggerHelpers.js +27 -0
  91. package/lib/express/swaggerHelpers.js.map +1 -0
  92. package/lib/express/swaggerUiController.d.ts +6 -0
  93. package/lib/express/swaggerUiController.js +17 -0
  94. package/lib/express/swaggerUiController.js.map +1 -0
  95. package/lib/express/swaggerUiTemplate.d.ts +5 -0
  96. package/lib/express/swaggerUiTemplate.js +9 -0
  97. package/lib/express/swaggerUiTemplate.js.map +1 -0
  98. package/lib/helpers/ExecuteOnce.d.ts +6 -0
  99. package/lib/helpers/ExecuteOnce.js +31 -0
  100. package/lib/helpers/ExecuteOnce.js.map +1 -0
  101. package/lib/helpers/UniversalConfig.d.ts +8 -0
  102. package/lib/helpers/UniversalConfig.js +31 -0
  103. package/lib/helpers/UniversalConfig.js.map +1 -0
  104. package/lib/helpers/__tests__/arrays.test.d.ts +1 -0
  105. package/lib/helpers/__tests__/arrays.test.js +17 -0
  106. package/lib/helpers/__tests__/arrays.test.js.map +1 -0
  107. package/lib/helpers/__tests__/emptyValues.test.d.ts +1 -0
  108. package/lib/helpers/__tests__/emptyValues.test.js +31 -0
  109. package/lib/helpers/__tests__/emptyValues.test.js.map +1 -0
  110. package/lib/helpers/__tests__/formatters.formatCurrency.test.d.ts +1 -0
  111. package/lib/helpers/__tests__/formatters.formatCurrency.test.js +18 -0
  112. package/lib/helpers/__tests__/formatters.formatCurrency.test.js.map +1 -0
  113. package/lib/helpers/__tests__/formatters.formatDate.test.d.ts +1 -0
  114. package/lib/helpers/__tests__/formatters.formatDate.test.js +163 -0
  115. package/lib/helpers/__tests__/formatters.formatDate.test.js.map +1 -0
  116. package/lib/helpers/__tests__/formatters.formatDouble.test.d.ts +1 -0
  117. package/lib/helpers/__tests__/formatters.formatDouble.test.js +26 -0
  118. package/lib/helpers/__tests__/formatters.formatDouble.test.js.map +1 -0
  119. package/lib/helpers/__tests__/navigation.test.d.ts +1 -0
  120. package/lib/helpers/__tests__/navigation.test.js +64 -0
  121. package/lib/helpers/__tests__/navigation.test.js.map +1 -0
  122. package/lib/helpers/__tests__/strings.test.d.ts +1 -0
  123. package/lib/helpers/__tests__/strings.test.js +46 -0
  124. package/lib/helpers/__tests__/strings.test.js.map +1 -0
  125. package/lib/helpers/__tests__/validation.test.d.ts +1 -0
  126. package/lib/helpers/__tests__/validation.test.js +193 -0
  127. package/lib/helpers/__tests__/validation.test.js.map +1 -0
  128. package/lib/helpers/arrays.d.ts +1 -0
  129. package/lib/helpers/arrays.js +10 -0
  130. package/lib/helpers/arrays.js.map +1 -0
  131. package/lib/helpers/clientLogger.d.ts +8 -0
  132. package/lib/helpers/clientLogger.js +73 -0
  133. package/lib/helpers/clientLogger.js.map +1 -0
  134. package/lib/helpers/constants/applicationForm.d.ts +59 -0
  135. package/lib/helpers/constants/applicationForm.js +68 -0
  136. package/lib/helpers/constants/applicationForm.js.map +1 -0
  137. package/lib/helpers/constants/candidates.d.ts +64 -0
  138. package/lib/helpers/constants/candidates.js +74 -0
  139. package/lib/helpers/constants/candidates.js.map +1 -0
  140. package/lib/helpers/constants/common.d.ts +93 -0
  141. package/lib/helpers/constants/common.js +111 -0
  142. package/lib/helpers/constants/common.js.map +1 -0
  143. package/lib/helpers/constants/contract.d.ts +37 -0
  144. package/lib/helpers/constants/contract.js +42 -0
  145. package/lib/helpers/constants/contract.js.map +1 -0
  146. package/lib/helpers/constants/documents.d.ts +11 -0
  147. package/lib/helpers/constants/documents.js +16 -0
  148. package/lib/helpers/constants/documents.js.map +1 -0
  149. package/lib/helpers/constants/features.d.ts +7 -0
  150. package/lib/helpers/constants/features.js +11 -0
  151. package/lib/helpers/constants/features.js.map +1 -0
  152. package/lib/helpers/constants/fileUploads.d.ts +5 -0
  153. package/lib/helpers/constants/fileUploads.js +8 -0
  154. package/lib/helpers/constants/fileUploads.js.map +1 -0
  155. package/lib/helpers/constants/index.d.ts +37 -0
  156. package/lib/helpers/constants/index.js +43 -0
  157. package/lib/helpers/constants/index.js.map +1 -0
  158. package/lib/helpers/constants/integrations.d.ts +39 -0
  159. package/lib/helpers/constants/integrations.js +47 -0
  160. package/lib/helpers/constants/integrations.js.map +1 -0
  161. package/lib/helpers/constants/language.d.ts +6 -0
  162. package/lib/helpers/constants/language.js +10 -0
  163. package/lib/helpers/constants/language.js.map +1 -0
  164. package/lib/helpers/constants/listing.d.ts +327 -0
  165. package/lib/helpers/constants/listing.js +364 -0
  166. package/lib/helpers/constants/listing.js.map +1 -0
  167. package/lib/helpers/constants/listingTemplate.d.ts +7 -0
  168. package/lib/helpers/constants/listingTemplate.js +12 -0
  169. package/lib/helpers/constants/listingTemplate.js.map +1 -0
  170. package/lib/helpers/constants/mediaTypes.d.ts +34 -0
  171. package/lib/helpers/constants/mediaTypes.js +39 -0
  172. package/lib/helpers/constants/mediaTypes.js.map +1 -0
  173. package/lib/helpers/constants/messages.d.ts +5 -0
  174. package/lib/helpers/constants/messages.js +10 -0
  175. package/lib/helpers/constants/messages.js.map +1 -0
  176. package/lib/helpers/constants/moveIn.d.ts +59 -0
  177. package/lib/helpers/constants/moveIn.js +66 -0
  178. package/lib/helpers/constants/moveIn.js.map +1 -0
  179. package/lib/helpers/constants/partner.d.ts +7 -0
  180. package/lib/helpers/constants/partner.js +12 -0
  181. package/lib/helpers/constants/partner.js.map +1 -0
  182. package/lib/helpers/constants/pictures.d.ts +2 -0
  183. package/lib/helpers/constants/pictures.js +5 -0
  184. package/lib/helpers/constants/pictures.js.map +1 -0
  185. package/lib/helpers/constants/properties.d.ts +17 -0
  186. package/lib/helpers/constants/properties.js +24 -0
  187. package/lib/helpers/constants/properties.js.map +1 -0
  188. package/lib/helpers/constants/schedule.d.ts +11 -0
  189. package/lib/helpers/constants/schedule.js +15 -0
  190. package/lib/helpers/constants/schedule.js.map +1 -0
  191. package/lib/helpers/constants/scoring.d.ts +8 -0
  192. package/lib/helpers/constants/scoring.js +13 -0
  193. package/lib/helpers/constants/scoring.js.map +1 -0
  194. package/lib/helpers/constants/screenSizes.d.ts +8 -0
  195. package/lib/helpers/constants/screenSizes.js +11 -0
  196. package/lib/helpers/constants/screenSizes.js.map +1 -0
  197. package/lib/helpers/constants/searchProfile.d.ts +5 -0
  198. package/lib/helpers/constants/searchProfile.js +9 -0
  199. package/lib/helpers/constants/searchProfile.js.map +1 -0
  200. package/lib/helpers/constants/swagger.d.ts +5 -0
  201. package/lib/helpers/constants/swagger.js +10 -0
  202. package/lib/helpers/constants/swagger.js.map +1 -0
  203. package/lib/helpers/constants/tenants.d.ts +5 -0
  204. package/lib/helpers/constants/tenants.js +10 -0
  205. package/lib/helpers/constants/tenants.js.map +1 -0
  206. package/lib/helpers/constants/units.d.ts +156 -0
  207. package/lib/helpers/constants/units.js +173 -0
  208. package/lib/helpers/constants/units.js.map +1 -0
  209. package/lib/helpers/constants/urls.d.ts +4 -0
  210. package/lib/helpers/constants/urls.js +7 -0
  211. package/lib/helpers/constants/urls.js.map +1 -0
  212. package/lib/helpers/constants/user.d.ts +5 -0
  213. package/lib/helpers/constants/user.js +10 -0
  214. package/lib/helpers/constants/user.js.map +1 -0
  215. package/lib/helpers/constants/validators.d.ts +5 -0
  216. package/lib/helpers/constants/validators.js +9 -0
  217. package/lib/helpers/constants/validators.js.map +1 -0
  218. package/lib/helpers/emptyValues.d.ts +2 -0
  219. package/lib/helpers/emptyValues.js +16 -0
  220. package/lib/helpers/emptyValues.js.map +1 -0
  221. package/lib/helpers/formatters.d.ts +13 -0
  222. package/lib/helpers/formatters.js +107 -0
  223. package/lib/helpers/formatters.js.map +1 -0
  224. package/lib/helpers/guards.d.ts +1 -0
  225. package/lib/helpers/guards.js +10 -0
  226. package/lib/helpers/guards.js.map +1 -0
  227. package/lib/helpers/index.d.ts +6 -0
  228. package/lib/helpers/index.js +13 -0
  229. package/lib/helpers/index.js.map +1 -0
  230. package/lib/helpers/isBrowser.d.ts +1 -0
  231. package/lib/helpers/isBrowser.js +4 -0
  232. package/lib/helpers/isBrowser.js.map +1 -0
  233. package/lib/helpers/math.d.ts +3 -0
  234. package/lib/helpers/math.js +41 -0
  235. package/lib/helpers/math.js.map +1 -0
  236. package/lib/helpers/moment.d.ts +40 -0
  237. package/lib/helpers/moment.js +83 -0
  238. package/lib/helpers/moment.js.map +1 -0
  239. package/lib/helpers/navigation.d.ts +19 -0
  240. package/lib/helpers/navigation.js +142 -0
  241. package/lib/helpers/navigation.js.map +1 -0
  242. package/lib/helpers/stringifySafe.d.ts +1 -0
  243. package/lib/helpers/stringifySafe.js +16 -0
  244. package/lib/helpers/stringifySafe.js.map +1 -0
  245. package/lib/helpers/strings.d.ts +4 -0
  246. package/lib/helpers/strings.js +64 -0
  247. package/lib/helpers/strings.js.map +1 -0
  248. package/lib/helpers/validation.d.ts +110 -0
  249. package/lib/helpers/validation.js +278 -0
  250. package/lib/helpers/validation.js.map +1 -0
  251. package/lib/index.d.ts +3 -0
  252. package/lib/index.js +12 -0
  253. package/lib/index.js.map +1 -0
  254. package/lib/interfaces.d.ts +16 -0
  255. package/lib/interfaces.js +22 -0
  256. package/lib/interfaces.js.map +1 -0
  257. package/lib/redux/analyticsMiddleware.d.ts +4 -0
  258. package/lib/redux/analyticsMiddleware.js +53 -0
  259. package/lib/redux/analyticsMiddleware.js.map +1 -0
  260. package/lib/redux/clientMiddleware.d.ts +1 -0
  261. package/lib/redux/clientMiddleware.js +79 -0
  262. package/lib/redux/clientMiddleware.js.map +1 -0
  263. package/lib/redux/emptyMiddleware.d.ts +1 -0
  264. package/lib/redux/emptyMiddleware.js +6 -0
  265. package/lib/redux/emptyMiddleware.js.map +1 -0
  266. package/lib/redux/index.d.ts +3 -0
  267. package/lib/redux/index.js +9 -0
  268. package/lib/redux/index.js.map +1 -0
  269. package/lib/services/applicantService.d.ts +1 -0
  270. package/lib/services/applicantService.js +8 -0
  271. package/lib/services/applicantService.js.map +1 -0
  272. package/lib/services/cookieService/cookieService.d.ts +29 -0
  273. package/lib/services/cookieService/cookieService.js +61 -0
  274. package/lib/services/cookieService/cookieService.js.map +1 -0
  275. package/lib/services/googleAnalyticsService/googleAnalyticsService.d.ts +17 -0
  276. package/lib/services/googleAnalyticsService/googleAnalyticsService.js +79 -0
  277. package/lib/services/googleAnalyticsService/googleAnalyticsService.js.map +1 -0
  278. package/lib/services/imageService/imageService.d.ts +7 -0
  279. package/lib/services/imageService/imageService.js +27 -0
  280. package/lib/services/imageService/imageService.js.map +1 -0
  281. package/lib/services/index.d.ts +10 -0
  282. package/lib/services/index.js +13 -0
  283. package/lib/services/index.js.map +1 -0
  284. package/lib/services/languageService/languageService.d.ts +16 -0
  285. package/lib/services/languageService/languageService.js +46 -0
  286. package/lib/services/languageService/languageService.js.map +1 -0
  287. package/lib/services/localstorageService/localstorageService.d.ts +2 -0
  288. package/lib/services/localstorageService/localstorageService.js +19 -0
  289. package/lib/services/localstorageService/localstorageService.js.map +1 -0
  290. package/lib/services/sessionStorageService/index.d.ts +2 -0
  291. package/lib/services/sessionStorageService/index.js +19 -0
  292. package/lib/services/sessionStorageService/index.js.map +1 -0
  293. package/lib/translations/getAllTranslations.d.ts +5 -0
  294. package/lib/translations/getAllTranslations.js +26 -0
  295. package/lib/translations/getAllTranslations.js.map +1 -0
  296. package/package.json +110 -0
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ var constants_1 = require("./../helpers/constants");
15
+ var ValidationError_1 = require("./ValidationError");
16
+ function mapErrorToString(err, req) {
17
+ if (err instanceof Error) {
18
+ return JSON.stringify(mapErrorToJSON(err, req));
19
+ }
20
+ return JSON.stringify(err);
21
+ }
22
+ exports.mapErrorToString = mapErrorToString;
23
+ function mapErrorToJSON(err, _req) {
24
+ if (isSwaggerValidationError(err)) {
25
+ return __assign(__assign({ message: 'Failed swagger validation' }, err.results), { path: err.path });
26
+ }
27
+ if (err instanceof Error) {
28
+ var propertyNames = Object.getOwnPropertyNames(err);
29
+ var errorJsonString = JSON.stringify(err, propertyNames);
30
+ var errorAsString = JSON.parse(errorJsonString);
31
+ return errorAsString;
32
+ }
33
+ return err;
34
+ }
35
+ exports.mapErrorToJSON = mapErrorToJSON;
36
+ function formatValidationErrorResponse(err) {
37
+ if (isSequelizeError(err)) {
38
+ return formatSequelizeError(err);
39
+ }
40
+ if (isJoiError(err)) {
41
+ return formatJoiValidationErrorResponse(err);
42
+ }
43
+ if (isSwaggerValidationError(err)) {
44
+ return formatSwaggerValidationError(err);
45
+ }
46
+ if (err && err.name && err.name.toLowerCase() === 'error') {
47
+ return formatValidationError(err);
48
+ }
49
+ if (isKnownError(err)) {
50
+ return err;
51
+ }
52
+ return null;
53
+ }
54
+ exports.formatValidationErrorResponse = formatValidationErrorResponse;
55
+ function formatJoiValidationErrorResponse(err) {
56
+ if (isJoiError(err)) {
57
+ var firstMessage = (err.details && err.details[0]) || {};
58
+ var locale = "any.api.validation.joi." + firstMessage.path + "." + firstMessage.type;
59
+ var message = firstMessage.message;
60
+ var validationError = new ValidationError_1.ValidationError(message, locale);
61
+ return formatValidationError(validationError);
62
+ }
63
+ return err;
64
+ }
65
+ exports.formatJoiValidationErrorResponse = formatJoiValidationErrorResponse;
66
+ function formatSwaggerValidationError(err) {
67
+ if (err.code === constants_1.ERROR_CODES.SCHEMA_VALIDATION_FAILED) {
68
+ var error = err && err.results && err.results.errors && err.results.errors.length && err.results.errors[0];
69
+ if (error && error.code) {
70
+ var locale = "any.api.validation." + error.code;
71
+ var path = (error.path || []).join('.');
72
+ if (path) {
73
+ locale = locale + "." + path;
74
+ }
75
+ var REQUIRED_ERROR_MESSAGE_PREFIX = 'Missing required property: ';
76
+ if (error.message.includes(REQUIRED_ERROR_MESSAGE_PREFIX)) {
77
+ var missingProperty = error.message.split(REQUIRED_ERROR_MESSAGE_PREFIX)[1];
78
+ locale = missingProperty ? locale + "." + missingProperty : locale;
79
+ }
80
+ return formatValidationError(new ValidationError_1.ValidationError(error.message, locale));
81
+ }
82
+ }
83
+ if (err.code === constants_1.ERROR_CODES.REQUIRED) {
84
+ return formatValidationError(new ValidationError_1.ValidationError("The parameter '" + err.paramName + "' is required.", "any.api.validation.REQUIRED." + err.paramName));
85
+ }
86
+ return formatValidationError(new ValidationError_1.ValidationError("Unknown swagger validation error", "any.api.validation.unknown"));
87
+ }
88
+ exports.formatSwaggerValidationError = formatSwaggerValidationError;
89
+ function formatSequelizeError(err) {
90
+ var errors = err.errors;
91
+ var locale = 'any.api.validation.unknown';
92
+ if (errors && errors.length && errors[0]) {
93
+ locale = "validation." + errors[0].message.replace(new RegExp(' ', 'g'), '.');
94
+ }
95
+ var sequelizeError = {
96
+ type: 'DataValidationError',
97
+ locale: locale,
98
+ name: err && err.name,
99
+ errors: (errors || []).map(function (_a) {
100
+ var message = _a.message, type = _a.type, path = _a.path;
101
+ return ({ message: message, type: type, path: path });
102
+ }),
103
+ };
104
+ return sequelizeError;
105
+ }
106
+ exports.formatSequelizeError = formatSequelizeError;
107
+ function formatValidationError(err) {
108
+ var isValidationError = err.isValidationError, errors = err.errors;
109
+ if (isValidationError) {
110
+ var error = err;
111
+ var validationError = {
112
+ isValidationError: isValidationError,
113
+ type: 'ValidationError',
114
+ locale: error.errorLocale,
115
+ error: error.errorMessage,
116
+ };
117
+ return validationError;
118
+ }
119
+ if (errors && errors.length) {
120
+ var validationError = {
121
+ type: 'ValidationError',
122
+ locale: "validation." + err.errors[0].types[0],
123
+ errors: errors.map(function (_a) {
124
+ var field = _a.field, messages = _a.messages, types = _a.types;
125
+ return ({ field: field, messages: messages, types: types });
126
+ }),
127
+ };
128
+ return validationError;
129
+ }
130
+ return err;
131
+ }
132
+ exports.formatValidationError = formatValidationError;
133
+ function isSwaggerValidationError(err) {
134
+ return err && err.code && (err.code === constants_1.ERROR_CODES.SCHEMA_VALIDATION_FAILED || err.code === constants_1.ERROR_CODES.REQUIRED);
135
+ }
136
+ exports.isSwaggerValidationError = isSwaggerValidationError;
137
+ function isSequelizeError(err) {
138
+ return err && err.name && err.name.toLowerCase().indexOf('sequelize') > -1;
139
+ }
140
+ exports.isSequelizeError = isSequelizeError;
141
+ function isJoiError(err) {
142
+ return err && err.isJoi;
143
+ }
144
+ exports.isJoiError = isJoiError;
145
+ function isCriticalError(err) {
146
+ return err && err.message && err.isCriticalError;
147
+ }
148
+ exports.isCriticalError = isCriticalError;
149
+ function isKnownError(err) {
150
+ return err && (err.isValidationError || err.isCriticalError);
151
+ }
152
+ exports.isKnownError = isKnownError;
153
+ //# sourceMappingURL=errorMappers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorMappers.js","sourceRoot":"","sources":["../../src/errors/errorMappers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ export declare enum LogLevel {
2
+ info = "info",
3
+ warn = "warn",
4
+ error = "error"
5
+ }
6
+ export interface IError {
7
+ isCriticalError?: boolean;
8
+ isValidationError?: boolean;
9
+ type: string;
10
+ errorMessage: string;
11
+ errorLocale: string;
12
+ logLevel: LogLevel;
13
+ statusCode: number;
14
+ payload: string;
15
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var LogLevel;
4
+ (function (LogLevel) {
5
+ LogLevel["info"] = "info";
6
+ LogLevel["warn"] = "warn";
7
+ LogLevel["error"] = "error";
8
+ })(LogLevel = exports.LogLevel || (exports.LogLevel = {}));
9
+ //# sourceMappingURL=errors.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.types.js","sourceRoot":"","sources":["../../src/errors/errors.types.ts"],"names":[],"mappings":";;AAAA,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;AACjB,CAAC,EAJW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAInB"}
@@ -0,0 +1,5 @@
1
+ export { CriticalError } from './CriticalError';
2
+ export { ValidationError } from './ValidationError';
3
+ export { ValidationErrorSilent } from './ValidationErrorSilent';
4
+ export { ValidationErrorWithStatus } from './ValidationErrorWithStatus';
5
+ export { ValidationErrorWithStatusSilent } from './ValidationErrorWithStatusSilent';
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var CriticalError_1 = require("./CriticalError");
4
+ exports.CriticalError = CriticalError_1.CriticalError;
5
+ var ValidationError_1 = require("./ValidationError");
6
+ exports.ValidationError = ValidationError_1.ValidationError;
7
+ var ValidationErrorSilent_1 = require("./ValidationErrorSilent");
8
+ exports.ValidationErrorSilent = ValidationErrorSilent_1.ValidationErrorSilent;
9
+ var ValidationErrorWithStatus_1 = require("./ValidationErrorWithStatus");
10
+ exports.ValidationErrorWithStatus = ValidationErrorWithStatus_1.ValidationErrorWithStatus;
11
+ var ValidationErrorWithStatusSilent_1 = require("./ValidationErrorWithStatusSilent");
12
+ exports.ValidationErrorWithStatusSilent = ValidationErrorWithStatusSilent_1.ValidationErrorWithStatusSilent;
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":";;AAAA,iDAAgD;AAAvC,wCAAA,aAAa,CAAA;AACtB,qDAAoD;AAA3C,4CAAA,eAAe,CAAA;AACxB,iEAAgE;AAAvD,wDAAA,qBAAqB,CAAA;AAC9B,yEAAwE;AAA/D,gEAAA,yBAAyB,CAAA;AAClC,qFAAoF;AAA3E,4EAAA,+BAA+B,CAAA"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ var swaggerHelpers_1 = require("../swaggerHelpers");
15
+ describe('WHEN testing swaggerSpecificationTransformer', function () {
16
+ var inputWithOauth2 = function () { return ({
17
+ securityDefinitions: {
18
+ apiKey: { type: 'apiKey', in: 'header', name: 'X-API-Key' },
19
+ visitor: {
20
+ type: 'oauth2',
21
+ authorizationUrl: 'http://dev.visitorapp.co.co:9200/accounts/dialog/authorize',
22
+ },
23
+ },
24
+ }); };
25
+ var inputWithOauth2NonVisitor = function () { return ({
26
+ securityDefinitions: {
27
+ apiKey: { type: 'apiKey', in: 'header', name: 'X-API-Key' },
28
+ facebook: {
29
+ type: 'oauth2',
30
+ authorizationUrl: 'https://facebook.com/accounts/dialog/authorize',
31
+ },
32
+ },
33
+ }); };
34
+ var inputWithoutOauth2 = function () { return ({
35
+ apiKey: { type: 'apiKey', in: 'header', name: 'X-API-Key' },
36
+ }); };
37
+ var testSandbox = function (describeText, input, config, expected) {
38
+ describe(describeText, function () {
39
+ it('SHOULD have correct returned specification', function () {
40
+ expect(swaggerHelpers_1.swaggerSpecificationTransformer(input, config)).toEqual(expected);
41
+ });
42
+ });
43
+ };
44
+ testSandbox('WHEN testing null', null, null, null);
45
+ testSandbox('WHEN testing undefined', undefined, undefined, undefined);
46
+ testSandbox('WHEN testing oauth2 and undefined config', inputWithOauth2(), undefined, inputWithOauth2());
47
+ testSandbox('WHEN testing spec with no oauth2 and config with oauth2Url', inputWithoutOauth2(), { visitorSwaggerOauth2AuthorizationUrl: 'new url' }, inputWithoutOauth2());
48
+ testSandbox('WHEN testing NON visitor oauth2 and config with oauth2Url', inputWithOauth2NonVisitor(), { visitorSwaggerOauth2AuthorizationUrl: 'new url' }, inputWithOauth2NonVisitor());
49
+ testSandbox('WHEN testing visitor oauth2 and config with oauth2Url', inputWithOauth2(), { visitorSwaggerOauth2AuthorizationUrl: 'https://qa.visitorapp.co.co/accounts/dialog/authorize' }, __assign(__assign({}, inputWithOauth2()), { securityDefinitions: {
50
+ apiKey: { type: 'apiKey', in: 'header', name: 'X-API-Key' },
51
+ visitor: {
52
+ type: 'oauth2',
53
+ authorizationUrl: 'https://qa.visitorapp.co.co/accounts/dialog/authorize',
54
+ },
55
+ } }));
56
+ });
57
+ //# sourceMappingURL=swaggerHelpers.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swaggerHelpers.test.js","sourceRoot":"","sources":["../../../src/express/__tests__/swaggerHelpers.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,oDAA4G;AAE5G,QAAQ,CAAC,8CAA8C,EAAE;IACvD,IAAM,eAAe,GAAG,cAAM,OAAA,CAAC;QAC7B,mBAAmB,EAAE;YACnB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE;YAC3D,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,gBAAgB,EAAE,4DAA4D;aAC/E;SACF;KACF,CAAC,EAR4B,CAQ5B,CAAC;IAEH,IAAM,yBAAyB,GAAG,cAAM,OAAA,CAAC;QACvC,mBAAmB,EAAE;YACnB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE;YAC3D,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,gBAAgB,EAAE,gDAAgD;aACnE;SACF;KACF,CAAC,EARsC,CAQtC,CAAC;IAEH,IAAM,kBAAkB,GAAG,cAAM,OAAA,CAAC;QAChC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE;KAC5D,CAAC,EAF+B,CAE/B,CAAC;IAEH,IAAM,WAAW,GAAG,UAAC,YAAY,EAAE,KAAK,EAAE,MAA8C,EAAE,QAAQ;QAChG,QAAQ,CAAC,YAAY,EAAE;YACrB,EAAE,CAAC,4CAA4C,EAAE;gBAC/C,MAAM,CAAC,gDAA+B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC3E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,WAAW,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAEnD,WAAW,CAAC,wBAAwB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAEvE,WAAW,CAAC,0CAA0C,EAAE,eAAe,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC;IAEzG,WAAW,CACT,4DAA4D,EAC5D,kBAAkB,EAAE,EACpB,EAAE,oCAAoC,EAAE,SAAS,EAAE,EACnD,kBAAkB,EAAE,CACrB,CAAC;IAEF,WAAW,CACT,2DAA2D,EAC3D,yBAAyB,EAAE,EAC3B,EAAE,oCAAoC,EAAE,SAAS,EAAE,EACnD,yBAAyB,EAAE,CAC5B,CAAC;IAEF,WAAW,CACT,uDAAuD,EACvD,eAAe,EAAE,EACjB,EAAE,oCAAoC,EAAE,uDAAuD,EAAE,wBAE5F,eAAe,EAAE,KACpB,mBAAmB,EAAE;YACnB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE;YAC3D,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,gBAAgB,EAAE,uDAAuD;aAC1E;SACF,IAEJ,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ export interface IMetadatada {
2
+ name?: any;
3
+ version?: any;
4
+ engines?: any;
5
+ description?: any;
6
+ }
7
+ export interface IAliveParams {
8
+ metadata?: IMetadatada;
9
+ }
10
+ export declare function aliveMiddleware({ metadata }?: IAliveParams): (req: any, res: any) => void;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function aliveMiddleware(_a) {
4
+ var _b = (_a === void 0 ? {} : _a).metadata, metadata = _b === void 0 ? {} : _b;
5
+ var name = metadata.name, version = metadata.version, engines = metadata.engines, description = metadata.description;
6
+ var startedAt = new Date();
7
+ return function (req, res) {
8
+ // tslint:disable-next-line
9
+ console.log(req.method + " on " + req.originalUrl);
10
+ res.status(200).json({
11
+ name: name,
12
+ version: version,
13
+ description: description,
14
+ alive: true,
15
+ engines: engines,
16
+ timestamp: new Date(),
17
+ startedAt: startedAt,
18
+ });
19
+ };
20
+ }
21
+ exports.aliveMiddleware = aliveMiddleware;
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/express/middleware/aliveMiddleware/index.ts"],"names":[],"mappings":";;AASA,SAAgB,eAAe,CAAC,EAAoC;QAAlC,uCAAa,EAAb,kCAAa;IACrC,IAAA,oBAAI,EAAE,0BAAO,EAAE,0BAAO,EAAE,kCAAW,CAAc;IACzD,IAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAE7B,OAAO,UAAC,GAAG,EAAE,GAAG;QACd,2BAA2B;QAC3B,OAAO,CAAC,GAAG,CAAI,GAAG,CAAC,MAAM,YAAO,GAAG,CAAC,WAAa,CAAC,CAAC;QACnD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,IAAI,MAAA;YACJ,OAAO,SAAA;YACP,WAAW,aAAA;YACX,KAAK,EAAE,IAAI;YACX,OAAO,SAAA;YACP,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,SAAS,WAAA;SACV,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAjBD,0CAiBC"}
@@ -0,0 +1,10 @@
1
+ import * as i from './index.types';
2
+ export declare const DEFAULT_TTL: number;
3
+ export declare const CHECK_CACHE_PERIOD: number;
4
+ export interface IGetCompanyOptions {
5
+ subdomain: string;
6
+ getCompanyUrl: i.GetCompanyUrl;
7
+ getCompanyFunction: i.GetCompanyFunction;
8
+ cacheTtl: number;
9
+ }
10
+ export declare function getCompany({ subdomain, getCompanyUrl, getCompanyFunction, cacheTtl }: IGetCompanyOptions): Promise<any>;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var NodeCache = require("node-cache");
4
+ var companyApiRequest_1 = require("./companyApiRequest");
5
+ exports.DEFAULT_TTL = 5 * 60; // in seconds
6
+ exports.CHECK_CACHE_PERIOD = 1 * 60; // in seconds
7
+ var companyCache = new NodeCache({ stdTTL: exports.DEFAULT_TTL, checkperiod: exports.CHECK_CACHE_PERIOD });
8
+ function getCompany(_a) {
9
+ var subdomain = _a.subdomain, getCompanyUrl = _a.getCompanyUrl, getCompanyFunction = _a.getCompanyFunction, _b = _a.cacheTtl, cacheTtl = _b === void 0 ? exports.DEFAULT_TTL : _b;
10
+ var cacheKey = "company_" + subdomain;
11
+ var cachedCompany = companyCache.get(cacheKey);
12
+ if (!subdomain) {
13
+ return Promise.resolve(null);
14
+ }
15
+ if (cachedCompany) {
16
+ return Promise.resolve(cachedCompany);
17
+ }
18
+ return companyApiRequest_1.getCompanyFromApi({ subdomain: subdomain, getCompanyUrl: getCompanyUrl, getCompanyFunction: getCompanyFunction }).then(function (company) {
19
+ companyCache.set(cacheKey, company, cacheTtl);
20
+ return company;
21
+ });
22
+ }
23
+ exports.getCompany = getCompany;
24
+ //# sourceMappingURL=company.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"company.js","sourceRoot":"","sources":["../../../../src/express/middleware/companyMiddleware/company.ts"],"names":[],"mappings":";;AAAA,sCAAwC;AACxC,yDAAwD;AAG3C,QAAA,WAAW,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,aAAa;AACnC,QAAA,kBAAkB,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,aAAa;AACvD,IAAM,YAAY,GAAG,IAAI,SAAS,CAAC,EAAE,MAAM,EAAE,mBAAW,EAAE,WAAW,EAAE,0BAAkB,EAAE,CAAC,CAAC;AAQ7F,SAAgB,UAAU,CAAC,EAA4F;QAA1F,wBAAS,EAAE,gCAAa,EAAE,0CAAkB,EAAE,gBAAsB,EAAtB,mDAAsB;IAC/F,IAAM,QAAQ,GAAG,aAAW,SAAW,CAAC;IACxC,IAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEjD,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC9B;IAED,IAAI,aAAa,EAAE;QACjB,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;KACvC;IAED,OAAO,qCAAiB,CAAC,EAAE,SAAS,WAAA,EAAE,aAAa,eAAA,EAAE,kBAAkB,oBAAA,EAAE,CAAC,CAAC,IAAI,CAAC,UAAC,OAAO;QACtF,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9C,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC;AAhBD,gCAgBC"}
@@ -0,0 +1,7 @@
1
+ import * as i from './index.types';
2
+ export interface IGetCompanyFromApiOptions {
3
+ subdomain: string;
4
+ getCompanyUrl: i.GetCompanyUrl;
5
+ getCompanyFunction: i.GetCompanyFunction;
6
+ }
7
+ export declare function getCompanyFromApi({ subdomain, getCompanyUrl, getCompanyFunction, }: IGetCompanyFromApiOptions): Promise<any>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var axios_1 = require("axios");
4
+ function getCompanyFromApi(_a) {
5
+ var subdomain = _a.subdomain, getCompanyUrl = _a.getCompanyUrl, getCompanyFunction = _a.getCompanyFunction;
6
+ if (!subdomain) {
7
+ return Promise.resolve(null);
8
+ }
9
+ if (getCompanyUrl) {
10
+ return axios_1.default.get(getCompanyUrl(subdomain)).then(function (response) { return response.data; });
11
+ }
12
+ if (getCompanyFunction) {
13
+ return getCompanyFunction(subdomain);
14
+ }
15
+ return Promise.resolve(null);
16
+ }
17
+ exports.getCompanyFromApi = getCompanyFromApi;
18
+ //# sourceMappingURL=companyApiRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"companyApiRequest.js","sourceRoot":"","sources":["../../../../src/express/middleware/companyMiddleware/companyApiRequest.ts"],"names":[],"mappings":";;AAAA,+BAA0B;AAQ1B,SAAgB,iBAAiB,CAAC,EAIN;QAH1B,wBAAS,EACT,gCAAa,EACb,0CAAkB;IAElB,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC9B;IAED,IAAI,aAAa,EAAE;QACjB,OAAO,eAAK,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAC,QAAQ,IAAK,OAAA,QAAQ,CAAC,IAAI,EAAb,CAAa,CAAC,CAAC;KAC9E;IAED,IAAI,kBAAkB,EAAE;QACtB,OAAO,kBAAkB,CAAC,SAAS,CAAC,CAAC;KACtC;IAED,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAlBD,8CAkBC"}
@@ -0,0 +1,17 @@
1
+ import * as i from './index.types';
2
+ export interface ICompanyMiddlewareOptions {
3
+ getCompanyFunction: i.GetCompanyFunction;
4
+ getCompanyUrl: i.GetCompanyUrl;
5
+ cacheTtl: number;
6
+ options?: {
7
+ subdomainExtraParts?: string[];
8
+ };
9
+ }
10
+ export declare const companyMiddleware: ({ getCompanyFunction, getCompanyUrl, cacheTtl, options: { subdomainExtraParts }, }?: {
11
+ getCompanyFunction?: any;
12
+ getCompanyUrl?: any;
13
+ cacheTtl?: number;
14
+ options?: {
15
+ subdomainExtraParts?: any[];
16
+ };
17
+ }) => (req: any, _res: any, next: any) => void;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var company_1 = require("./company");
4
+ exports.companyMiddleware = function (_a) {
5
+ var _b = _a === void 0 ? {} : _a, _c = _b.getCompanyFunction, getCompanyFunction = _c === void 0 ? null : _c, // (subdomain) => Promise.resolve(),
6
+ _d = _b.getCompanyUrl, // (subdomain) => Promise.resolve(),
7
+ getCompanyUrl = _d === void 0 ? null : _d, // (subdomain) => '',
8
+ _e = _b.cacheTtl, // (subdomain) => '',
9
+ cacheTtl = _e === void 0 ? company_1.DEFAULT_TTL : _e, // seconds
10
+ _f = _b.options, _g = (_f === void 0 ? {} : _f).subdomainExtraParts, subdomainExtraParts = _g === void 0 ? [] : _g;
11
+ return function (req, _res, next) {
12
+ req.currentCompany = null; // eslint-disable-line no-param-reassign
13
+ var subdomain = getCompanySubdomainName(req, subdomainExtraParts);
14
+ company_1.getCompany({ subdomain: subdomain, getCompanyUrl: getCompanyUrl, getCompanyFunction: getCompanyFunction, cacheTtl: cacheTtl })
15
+ .then(function (company) {
16
+ req.currentCompany = company; // eslint-disable-line no-param-reassign
17
+ return next();
18
+ })
19
+ .catch(function () {
20
+ req.currentCompany = null; // eslint-disable-line no-param-reassign
21
+ return next();
22
+ });
23
+ };
24
+ };
25
+ function getCompanySubdomainName(req, subdomainExtraParts) {
26
+ return req.subdomains.filter(function (part) { return !subdomainExtraParts.includes(part); }).join('');
27
+ }
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/express/middleware/companyMiddleware/index.ts"],"names":[],"mappings":";;AAAA,qCAAoD;AAWvC,QAAA,iBAAiB,GAAG,UAAC,EAK5B;QAL4B,4BAK5B,EAJJ,0BAAyB,EAAzB,8CAAyB,EAAE,oCAAoC;IAC/D,qBAAoB,EADO,oCAAoC;IAC/D,yCAAoB,EAAE,qBAAqB;IAC3C,gBAAsB,EADA,qBAAqB;IAC3C,qDAAsB,EAAE,UAAU;IAClC,eAA0C,EAA/B,kDAAwB,EAAxB,6CAAwB;IAC1B,OAAA,UAAC,GAAG,EAAE,IAAI,EAAE,IAAI;QACzB,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,wCAAwC;QAEnE,IAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;QACpE,oBAAU,CAAC,EAAE,SAAS,WAAA,EAAE,aAAa,eAAA,EAAE,kBAAkB,oBAAA,EAAE,QAAQ,UAAA,EAAE,CAAC;aACnE,IAAI,CAAC,UAAC,OAAO;YACZ,GAAG,CAAC,cAAc,GAAG,OAAO,CAAC,CAAC,wCAAwC;YACtE,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC;aACD,KAAK,CAAC;YACL,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,wCAAwC;YACnE,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;IACP,CAAC;AAbU,CAaV,CAAC;AAEF,SAAS,uBAAuB,CAAC,GAAG,EAAE,mBAAmB;IACvD,OAAO,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAnC,CAAmC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare type GetCompanyUrl = (subdomain?: string) => string;
2
+ export declare type GetCompanyFunction = (subdomain?: string) => Promise<any>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.types.js","sourceRoot":"","sources":["../../../../src/express/middleware/companyMiddleware/index.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var errors_1 = require("../../../../errors");
4
+ var __1 = require("../");
5
+ var httpMock = require("node-mocks-http");
6
+ var logger = {
7
+ info: jest.fn(),
8
+ warn: jest.fn(),
9
+ error: jest.fn(),
10
+ };
11
+ describe('WHEN testing expressErrorHandlerMiddleware', function () {
12
+ var res;
13
+ var req;
14
+ beforeEach(function () {
15
+ req = httpMock.createRequest({ method: 'GET', url: '/test-url' });
16
+ res = httpMock.createResponse();
17
+ res.status = jest.fn(function () { return res; });
18
+ logger.info.mockReset();
19
+ logger.warn.mockReset();
20
+ logger.error.mockReset();
21
+ });
22
+ describe('WHEN we call expressErrorHandlerMiddleware with ValidationError Error', function () {
23
+ beforeEach(function () {
24
+ var validErr = new errors_1.ValidationError('General Validation Error Message', 'api.test.message.general', {});
25
+ __1.expressErrorHandlerMiddleware({ logger: logger })(validErr, req, res, {});
26
+ });
27
+ it('SHOULD return the default 400 status', function () {
28
+ expect(res.status.mock.calls[0][0]).toBe(400);
29
+ expect(logger.warn).toBeCalled();
30
+ });
31
+ });
32
+ describe('WHEN we call expressErrorHandlerMiddleware with ValidationErrorWithStatus Error', function () {
33
+ beforeEach(function () {
34
+ var validErr = new errors_1.ValidationErrorWithStatus(123, 'Custom Error Message', 'api.test.message', {});
35
+ __1.expressErrorHandlerMiddleware({ logger: logger })(validErr, req, res, {});
36
+ });
37
+ it('SHOULD return the status sent to ValidationErrorWithStatus', function () {
38
+ expect(res.status.mock.calls[0][0]).toBe(123);
39
+ expect(logger.warn).toBeCalled();
40
+ });
41
+ });
42
+ describe('WHEN we call expressErrorHandlerMiddleware with ValidationErrorWithStatusSilent Error', function () {
43
+ beforeEach(function () {
44
+ var validErr = new errors_1.ValidationErrorWithStatusSilent(123, 'Custom Error Message', 'api.test.message', {});
45
+ __1.expressErrorHandlerMiddleware({ logger: logger })(validErr, req, res, {});
46
+ });
47
+ it('SHOULD return the status sent to ValidationErrorWithStatusSilent', function () {
48
+ expect(res.status.mock.calls[0][0]).toBe(123);
49
+ expect(logger.info).toBeCalled();
50
+ expect(logger.warn).not.toBeCalled();
51
+ expect(logger.error).not.toBeCalled();
52
+ });
53
+ });
54
+ describe('WHEN we call expressErrorHandlerMiddleware with ValidationErrorSilent Error', function () {
55
+ beforeEach(function () {
56
+ var validErr = new errors_1.ValidationErrorSilent('Custom Error Message', 'custom.error.locale', {});
57
+ __1.expressErrorHandlerMiddleware({ logger: logger })(validErr, req, res, {});
58
+ });
59
+ it('SHOULD call logger.info and not logger.warn', function () {
60
+ expect(logger.info).toBeCalled();
61
+ expect(logger.warn).not.toBeCalled();
62
+ expect(logger.error).not.toBeCalled();
63
+ });
64
+ });
65
+ describe('WHEN we call expressErrorHandlerMiddleware with sequelize error', function () {
66
+ beforeEach(function () {
67
+ var err = new Error();
68
+ err.name = 'Sequelize Error';
69
+ __1.expressErrorHandlerMiddleware({ logger: logger })(err, req, res, {});
70
+ });
71
+ it('SHOULD set statusCode 400', function () { return expect(res.status.mock.calls[0][0]).toBe(400); });
72
+ });
73
+ describe('WHEN we call expressErrorHandlerMiddleware with joi error', function () {
74
+ beforeEach(function () {
75
+ var err = new Error();
76
+ err.isJoi = true;
77
+ __1.expressErrorHandlerMiddleware({ logger: logger })(err, req, res, {});
78
+ });
79
+ it('SHOULD set statusCode 400', function () { return expect(res.status.mock.calls[0][0]).toBe(400); });
80
+ });
81
+ describe('WHEN we call expressErrorHandlerMiddleware with swagger error', function () {
82
+ beforeEach(function () {
83
+ var err = new Error();
84
+ err.code = 'SCHEMA_VALIDATION_FAILED';
85
+ __1.expressErrorHandlerMiddleware({ logger: logger })(err, req, res, {});
86
+ });
87
+ it('SHOULD set statusCode 400', function () { return expect(res.status.mock.calls[0][0]).toBe(400); });
88
+ });
89
+ describe('WHEN we call expressErrorHandlerMiddleware with unexpected error', function () {
90
+ beforeEach(function () {
91
+ var err = new Error();
92
+ __1.expressErrorHandlerMiddleware({ logger: logger })(err, req, res, {});
93
+ });
94
+ it('SHOULD set statusCode 500', function () { return expect(res.status.mock.calls[0][0]).toBe(500); });
95
+ });
96
+ });
97
+ //# sourceMappingURL=expressErrorHandlerMiddleware.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expressErrorHandlerMiddleware.test.js","sourceRoot":"","sources":["../../../../../src/express/middleware/expressErrorHandlerMiddleware/__tests__/expressErrorHandlerMiddleware.test.ts"],"names":[],"mappings":";;AAAA,6CAK4B;AAC5B,yBAAoD;AAEpD,0CAA4C;AAE5C,IAAM,MAAM,GAAG;IACb,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE;IACf,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE;IACf,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE;CACjB,CAAC;AAEF,QAAQ,CAAC,4CAA4C,EAAE;IACrD,IAAI,GAAG,CAAC;IACR,IAAI,GAAG,CAAC;IAER,UAAU,CAAC;QACT,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;QAClE,GAAG,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,GAAG,EAAH,CAAG,CAAC,CAAC;QAEhC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACxB,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACxB,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uEAAuE,EAAE;QAChF,UAAU,CAAC;YACT,IAAM,QAAQ,GAAG,IAAI,wBAAe,CAAC,kCAAkC,EAAE,0BAA0B,EAAE,EAAE,CAAC,CAAC;YACzG,iCAA6B,CAAC,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE;YACzC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iFAAiF,EAAE;QAC1F,UAAU,CAAC;YACT,IAAM,QAAQ,GAAG,IAAI,kCAAyB,CAAC,GAAG,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC;YACpG,iCAA6B,CAAC,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE;YAC/D,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uFAAuF,EAAE;QAChG,UAAU,CAAC;YACT,IAAM,QAAQ,GAAG,IAAI,wCAA+B,CAAC,GAAG,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC;YAC1G,iCAA6B,CAAC,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE;YACrE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6EAA6E,EAAE;QACtF,UAAU,CAAC;YACT,IAAM,QAAQ,GAAG,IAAI,8BAAqB,CAAC,sBAAsB,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC;YAC9F,iCAA6B,CAAC,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE;YAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iEAAiE,EAAE;QAC1E,UAAU,CAAC;YACT,IAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,GAAG,CAAC,IAAI,GAAG,iBAAiB,CAAC;YAC7B,iCAA6B,CAAC,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,cAAM,OAAA,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAA7C,CAA6C,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2DAA2D,EAAE;QACpE,UAAU,CAAC;YACT,IAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;YACvB,GAAW,CAAC,KAAK,GAAG,IAAI,CAAC;YAC1B,iCAA6B,CAAC,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,cAAM,OAAA,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAA7C,CAA6C,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+DAA+D,EAAE;QACxE,UAAU,CAAC;YACT,IAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;YACvB,GAAW,CAAC,IAAI,GAAG,0BAA0B,CAAC;YAC/C,iCAA6B,CAAC,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,cAAM,OAAA,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAA7C,CAA6C,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kEAAkE,EAAE;QAC3E,UAAU,CAAC;YACT,IAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,iCAA6B,CAAC,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,cAAM,OAAA,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAA7C,CAA6C,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ export interface IErrorHandlerOptions {
2
+ logger: any;
3
+ }
4
+ export declare const expressErrorHandlerMiddleware: (options: IErrorHandlerOptions) => (err: any, req: any, res: any, _: any) => any;
5
+ export declare const expressHttpErrorHandler: (options: IErrorHandlerOptions) => (err: any, req: any, res: any) => any;
6
+ export declare function formatErrorForLogging(req: any, error: any, prefix?: string): string;
7
+ export declare function formatUser(user?: any): {
8
+ id: any;
9
+ email: any;
10
+ };
11
+ export declare function formatPartner(partner?: any): {
12
+ id: any;
13
+ name: any;
14
+ subdomain: any;
15
+ };