@hyper.software/common-helpers 2.2.24 → 2.2.27

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 (311) hide show
  1. package/README.md +0 -0
  2. package/lib/errors/CriticalError.d.ts +0 -0
  3. package/lib/errors/CriticalError.js +0 -0
  4. package/lib/errors/CriticalError.js.map +0 -0
  5. package/lib/errors/ValidationError.d.ts +0 -0
  6. package/lib/errors/ValidationError.js +0 -0
  7. package/lib/errors/ValidationError.js.map +0 -0
  8. package/lib/errors/ValidationErrorSilent.d.ts +0 -0
  9. package/lib/errors/ValidationErrorSilent.js +0 -0
  10. package/lib/errors/ValidationErrorSilent.js.map +0 -0
  11. package/lib/errors/ValidationErrorWithStatus.d.ts +0 -0
  12. package/lib/errors/ValidationErrorWithStatus.js +0 -0
  13. package/lib/errors/ValidationErrorWithStatus.js.map +0 -0
  14. package/lib/errors/ValidationErrorWithStatusSilent.d.ts +0 -0
  15. package/lib/errors/ValidationErrorWithStatusSilent.js +0 -0
  16. package/lib/errors/ValidationErrorWithStatusSilent.js.map +0 -0
  17. package/lib/errors/__mocks__/errors.mock.d.ts +0 -0
  18. package/lib/errors/__mocks__/errors.mock.js +0 -0
  19. package/lib/errors/__mocks__/errors.mock.js.map +0 -0
  20. package/lib/errors/__tests__/errorMappers.test.d.ts +0 -0
  21. package/lib/errors/__tests__/errorMappers.test.js +0 -0
  22. package/lib/errors/__tests__/errorMappers.test.js.map +0 -0
  23. package/lib/errors/__tests__/errors.test.d.ts +0 -0
  24. package/lib/errors/__tests__/errors.test.js +0 -0
  25. package/lib/errors/__tests__/errors.test.js.map +0 -0
  26. package/lib/errors/errorMappers.d.ts +0 -0
  27. package/lib/errors/errorMappers.js +0 -0
  28. package/lib/errors/errorMappers.js.map +0 -0
  29. package/lib/errors/errors.types.d.ts +0 -0
  30. package/lib/errors/errors.types.js +0 -0
  31. package/lib/errors/errors.types.js.map +0 -0
  32. package/lib/errors/index.d.ts +0 -0
  33. package/lib/errors/index.js +0 -0
  34. package/lib/errors/index.js.map +0 -0
  35. package/lib/express/__tests__/swaggerHelpers.test.d.ts +0 -0
  36. package/lib/express/__tests__/swaggerHelpers.test.js +0 -0
  37. package/lib/express/__tests__/swaggerHelpers.test.js.map +0 -0
  38. package/lib/express/middleware/aliveMiddleware/index.d.ts +0 -0
  39. package/lib/express/middleware/aliveMiddleware/index.js +0 -0
  40. package/lib/express/middleware/aliveMiddleware/index.js.map +0 -0
  41. package/lib/express/middleware/companyMiddleware/company.d.ts +0 -0
  42. package/lib/express/middleware/companyMiddleware/company.js +0 -0
  43. package/lib/express/middleware/companyMiddleware/company.js.map +0 -0
  44. package/lib/express/middleware/companyMiddleware/companyApiRequest.d.ts +0 -0
  45. package/lib/express/middleware/companyMiddleware/companyApiRequest.js +0 -0
  46. package/lib/express/middleware/companyMiddleware/companyApiRequest.js.map +0 -0
  47. package/lib/express/middleware/companyMiddleware/index.d.ts +0 -0
  48. package/lib/express/middleware/companyMiddleware/index.js +0 -0
  49. package/lib/express/middleware/companyMiddleware/index.js.map +0 -0
  50. package/lib/express/middleware/companyMiddleware/index.types.d.ts +0 -0
  51. package/lib/express/middleware/companyMiddleware/index.types.js +0 -0
  52. package/lib/express/middleware/companyMiddleware/index.types.js.map +0 -0
  53. package/lib/express/middleware/expressErrorHandlerMiddleware/__tests__/expressErrorHandlerMiddleware.test.d.ts +0 -0
  54. package/lib/express/middleware/expressErrorHandlerMiddleware/__tests__/expressErrorHandlerMiddleware.test.js +0 -0
  55. package/lib/express/middleware/expressErrorHandlerMiddleware/__tests__/expressErrorHandlerMiddleware.test.js.map +0 -0
  56. package/lib/express/middleware/expressErrorHandlerMiddleware/index.d.ts +0 -0
  57. package/lib/express/middleware/expressErrorHandlerMiddleware/index.js +0 -0
  58. package/lib/express/middleware/expressErrorHandlerMiddleware/index.js.map +0 -0
  59. package/lib/express/middleware/index.d.ts +0 -0
  60. package/lib/express/middleware/index.js +0 -0
  61. package/lib/express/middleware/index.js.map +0 -0
  62. package/lib/express/middleware/languageMiddleware/index.d.ts +0 -0
  63. package/lib/express/middleware/languageMiddleware/index.js +0 -0
  64. package/lib/express/middleware/languageMiddleware/index.js.map +0 -0
  65. package/lib/express/middleware/partnerMiddleware/index.d.ts +0 -0
  66. package/lib/express/middleware/partnerMiddleware/index.js +0 -0
  67. package/lib/express/middleware/partnerMiddleware/index.js.map +0 -0
  68. package/lib/express/middleware/partnerMiddleware/index.types.d.ts +0 -0
  69. package/lib/express/middleware/partnerMiddleware/index.types.js +0 -0
  70. package/lib/express/middleware/partnerMiddleware/index.types.js.map +0 -0
  71. package/lib/express/middleware/partnerMiddleware/partner.d.ts +0 -0
  72. package/lib/express/middleware/partnerMiddleware/partner.js +0 -0
  73. package/lib/express/middleware/partnerMiddleware/partner.js.map +0 -0
  74. package/lib/express/middleware/partnerMiddleware/partnerServiceRequest.d.ts +0 -0
  75. package/lib/express/middleware/partnerMiddleware/partnerServiceRequest.js +0 -0
  76. package/lib/express/middleware/partnerMiddleware/partnerServiceRequest.js.map +0 -0
  77. package/lib/express/middleware/responseHelpersMiddleware/index.d.ts +0 -0
  78. package/lib/express/middleware/responseHelpersMiddleware/index.js +0 -0
  79. package/lib/express/middleware/responseHelpersMiddleware/index.js.map +0 -0
  80. package/lib/express/middleware/responseHelpersMiddleware/types.d.ts +0 -0
  81. package/lib/express/middleware/responseHelpersMiddleware/types.js +0 -0
  82. package/lib/express/middleware/responseHelpersMiddleware/types.js.map +0 -0
  83. package/lib/express/middleware/translationsMiddleware/index.d.ts +0 -0
  84. package/lib/express/middleware/translationsMiddleware/index.js +0 -0
  85. package/lib/express/middleware/translationsMiddleware/index.js.map +0 -0
  86. package/lib/express/swaggerControllersConfig.d.ts +0 -0
  87. package/lib/express/swaggerControllersConfig.js +0 -0
  88. package/lib/express/swaggerControllersConfig.js.map +0 -0
  89. package/lib/express/swaggerHelpers.d.ts +0 -0
  90. package/lib/express/swaggerHelpers.js +0 -0
  91. package/lib/express/swaggerHelpers.js.map +0 -0
  92. package/lib/express/swaggerUiController.d.ts +0 -0
  93. package/lib/express/swaggerUiController.js +0 -0
  94. package/lib/express/swaggerUiController.js.map +0 -0
  95. package/lib/express/swaggerUiTemplate.d.ts +0 -0
  96. package/lib/express/swaggerUiTemplate.js +0 -0
  97. package/lib/express/swaggerUiTemplate.js.map +0 -0
  98. package/lib/helpers/ExecuteOnce.d.ts +0 -0
  99. package/lib/helpers/ExecuteOnce.js +0 -0
  100. package/lib/helpers/ExecuteOnce.js.map +0 -0
  101. package/lib/helpers/UniversalConfig.d.ts +0 -0
  102. package/lib/helpers/UniversalConfig.js +0 -0
  103. package/lib/helpers/UniversalConfig.js.map +0 -0
  104. package/lib/helpers/__tests__/arrays.test.d.ts +0 -0
  105. package/lib/helpers/__tests__/arrays.test.js +0 -0
  106. package/lib/helpers/__tests__/arrays.test.js.map +0 -0
  107. package/lib/helpers/__tests__/emptyValues.test.d.ts +0 -0
  108. package/lib/helpers/__tests__/emptyValues.test.js +0 -0
  109. package/lib/helpers/__tests__/emptyValues.test.js.map +0 -0
  110. package/lib/helpers/__tests__/formatters.formatCurrency.test.d.ts +0 -0
  111. package/lib/helpers/__tests__/formatters.formatCurrency.test.js +0 -0
  112. package/lib/helpers/__tests__/formatters.formatCurrency.test.js.map +0 -0
  113. package/lib/helpers/__tests__/formatters.formatDate.test.d.ts +0 -0
  114. package/lib/helpers/__tests__/formatters.formatDate.test.js +0 -0
  115. package/lib/helpers/__tests__/formatters.formatDate.test.js.map +0 -0
  116. package/lib/helpers/__tests__/formatters.formatDouble.test.d.ts +0 -0
  117. package/lib/helpers/__tests__/formatters.formatDouble.test.js +0 -0
  118. package/lib/helpers/__tests__/formatters.formatDouble.test.js.map +0 -0
  119. package/lib/helpers/__tests__/navigation.getUrlWithSubdomain.test.d.ts +0 -0
  120. package/lib/helpers/__tests__/navigation.getUrlWithSubdomain.test.js +0 -0
  121. package/lib/helpers/__tests__/navigation.getUrlWithSubdomain.test.js.map +0 -0
  122. package/lib/helpers/__tests__/navigation.test.d.ts +0 -0
  123. package/lib/helpers/__tests__/navigation.test.js +0 -0
  124. package/lib/helpers/__tests__/navigation.test.js.map +0 -0
  125. package/lib/helpers/__tests__/strings.test.d.ts +0 -0
  126. package/lib/helpers/__tests__/strings.test.js +0 -0
  127. package/lib/helpers/__tests__/strings.test.js.map +0 -0
  128. package/lib/helpers/__tests__/validation.test.d.ts +0 -0
  129. package/lib/helpers/__tests__/validation.test.js +0 -0
  130. package/lib/helpers/__tests__/validation.test.js.map +0 -0
  131. package/lib/helpers/arrays.d.ts +0 -0
  132. package/lib/helpers/arrays.js +0 -0
  133. package/lib/helpers/arrays.js.map +0 -0
  134. package/lib/helpers/clientLogger.d.ts +0 -0
  135. package/lib/helpers/clientLogger.js +0 -0
  136. package/lib/helpers/clientLogger.js.map +0 -0
  137. package/lib/helpers/constants/common.d.ts +0 -0
  138. package/lib/helpers/constants/common.js +0 -0
  139. package/lib/helpers/constants/common.js.map +0 -0
  140. package/lib/helpers/constants/fileUploads.d.ts +0 -0
  141. package/lib/helpers/constants/fileUploads.js +0 -0
  142. package/lib/helpers/constants/fileUploads.js.map +0 -0
  143. package/lib/helpers/constants/index.d.ts +0 -0
  144. package/lib/helpers/constants/index.js +0 -0
  145. package/lib/helpers/constants/index.js.map +0 -0
  146. package/lib/helpers/constants/integrations.d.ts +0 -0
  147. package/lib/helpers/constants/integrations.js +0 -0
  148. package/lib/helpers/constants/integrations.js.map +0 -0
  149. package/lib/helpers/constants/language.d.ts +0 -0
  150. package/lib/helpers/constants/language.js +0 -0
  151. package/lib/helpers/constants/language.js.map +0 -0
  152. package/lib/helpers/constants/supportUsers.d.ts +0 -0
  153. package/lib/helpers/constants/supportUsers.js +0 -0
  154. package/lib/helpers/constants/supportUsers.js.map +0 -0
  155. package/lib/helpers/constants/swagger.d.ts +0 -0
  156. package/lib/helpers/constants/swagger.js +0 -0
  157. package/lib/helpers/constants/swagger.js.map +0 -0
  158. package/lib/helpers/constants/urls.d.ts +0 -0
  159. package/lib/helpers/constants/urls.js +0 -0
  160. package/lib/helpers/constants/urls.js.map +0 -0
  161. package/lib/helpers/constants/user.d.ts +0 -0
  162. package/lib/helpers/constants/user.js +0 -0
  163. package/lib/helpers/constants/user.js.map +0 -0
  164. package/lib/helpers/constants/validators.d.ts +0 -0
  165. package/lib/helpers/constants/validators.js +0 -0
  166. package/lib/helpers/constants/validators.js.map +0 -0
  167. package/lib/helpers/emptyValues.d.ts +0 -0
  168. package/lib/helpers/emptyValues.js +0 -0
  169. package/lib/helpers/emptyValues.js.map +0 -0
  170. package/lib/helpers/formatters.d.ts +0 -0
  171. package/lib/helpers/formatters.js +0 -0
  172. package/lib/helpers/formatters.js.map +0 -0
  173. package/lib/helpers/guards.d.ts +0 -0
  174. package/lib/helpers/guards.js +0 -0
  175. package/lib/helpers/guards.js.map +0 -0
  176. package/lib/helpers/index.d.ts +0 -0
  177. package/lib/helpers/index.js +0 -0
  178. package/lib/helpers/index.js.map +0 -0
  179. package/lib/helpers/isBrowser.d.ts +0 -0
  180. package/lib/helpers/isBrowser.js +0 -0
  181. package/lib/helpers/isBrowser.js.map +0 -0
  182. package/lib/helpers/math.d.ts +0 -0
  183. package/lib/helpers/math.js +0 -0
  184. package/lib/helpers/math.js.map +0 -0
  185. package/lib/helpers/moment.d.ts +0 -0
  186. package/lib/helpers/moment.js +0 -0
  187. package/lib/helpers/moment.js.map +0 -0
  188. package/lib/helpers/navigation.d.ts +0 -0
  189. package/lib/helpers/navigation.js +0 -0
  190. package/lib/helpers/navigation.js.map +0 -0
  191. package/lib/helpers/stringifySafe.d.ts +0 -0
  192. package/lib/helpers/stringifySafe.js +0 -0
  193. package/lib/helpers/stringifySafe.js.map +0 -0
  194. package/lib/helpers/strings.d.ts +0 -0
  195. package/lib/helpers/strings.js +0 -0
  196. package/lib/helpers/strings.js.map +0 -0
  197. package/lib/helpers/validation.d.ts +0 -0
  198. package/lib/helpers/validation.js +0 -0
  199. package/lib/helpers/validation.js.map +0 -0
  200. package/lib/index.d.ts +0 -0
  201. package/lib/index.js +0 -0
  202. package/lib/index.js.map +0 -0
  203. package/lib/interfaces.d.ts +17 -0
  204. package/lib/interfaces.js +6 -1
  205. package/lib/interfaces.js.map +1 -1
  206. package/lib/redux/analyticsMiddleware.d.ts +0 -0
  207. package/lib/redux/analyticsMiddleware.js +0 -0
  208. package/lib/redux/analyticsMiddleware.js.map +0 -0
  209. package/lib/redux/clientMiddleware.d.ts +0 -0
  210. package/lib/redux/clientMiddleware.js +0 -0
  211. package/lib/redux/clientMiddleware.js.map +0 -0
  212. package/lib/redux/emptyMiddleware.d.ts +0 -0
  213. package/lib/redux/emptyMiddleware.js +0 -0
  214. package/lib/redux/emptyMiddleware.js.map +0 -0
  215. package/lib/redux/index.d.ts +0 -0
  216. package/lib/redux/index.js +0 -0
  217. package/lib/redux/index.js.map +0 -0
  218. package/lib/services/bookingService/__tests__/bookingInvoiceService.getAdultAndChildrenCount.test.d.ts +0 -0
  219. package/lib/services/bookingService/__tests__/bookingInvoiceService.getAdultAndChildrenCount.test.js +0 -0
  220. package/lib/services/bookingService/__tests__/bookingInvoiceService.getAdultAndChildrenCount.test.js.map +0 -0
  221. package/lib/services/bookingService/__tests__/bookingInvoiceService.test.d.ts +0 -0
  222. package/lib/services/bookingService/__tests__/bookingInvoiceService.test.js +0 -0
  223. package/lib/services/bookingService/__tests__/bookingInvoiceService.test.js.map +0 -0
  224. package/lib/services/bookingService/__tests__/bookingService.calculateDynamic.test.d.ts +1 -0
  225. package/lib/services/bookingService/__tests__/bookingService.calculateDynamic.test.js +280 -0
  226. package/lib/services/bookingService/__tests__/bookingService.calculateDynamic.test.js.map +1 -0
  227. package/lib/services/bookingService/__tests__/bookingService.initialiseProducts.test.d.ts +0 -0
  228. package/lib/services/bookingService/__tests__/bookingService.initialiseProducts.test.js +0 -0
  229. package/lib/services/bookingService/__tests__/bookingService.initialiseProducts.test.js.map +0 -0
  230. package/lib/services/bookingService/__tests__/bookingServicesService.getBookingServiceTotalCost.test.d.ts +0 -0
  231. package/lib/services/bookingService/__tests__/bookingServicesService.getBookingServiceTotalCost.test.js +0 -0
  232. package/lib/services/bookingService/__tests__/bookingServicesService.getBookingServiceTotalCost.test.js.map +0 -0
  233. package/lib/services/bookingService/__tests__/bookingsService.getAccommodationCost.test.d.ts +0 -0
  234. package/lib/services/bookingService/__tests__/bookingsService.getAccommodationCost.test.js +0 -0
  235. package/lib/services/bookingService/__tests__/bookingsService.getAccommodationCost.test.js.map +0 -0
  236. package/lib/services/bookingService/__tests__/bookingsService.getBookingServiceQuantity.test.d.ts +0 -0
  237. package/lib/services/bookingService/__tests__/bookingsService.getBookingServiceQuantity.test.js +0 -0
  238. package/lib/services/bookingService/__tests__/bookingsService.getBookingServiceQuantity.test.js.map +0 -0
  239. package/lib/services/bookingService/__tests__/bookingsService.getChildrenCost.test.d.ts +0 -0
  240. package/lib/services/bookingService/__tests__/bookingsService.getChildrenCost.test.js +0 -0
  241. package/lib/services/bookingService/__tests__/bookingsService.getChildrenCost.test.js.map +0 -0
  242. package/lib/services/bookingService/__tests__/bookingsService.getLengthOfStay.test.d.ts +0 -0
  243. package/lib/services/bookingService/__tests__/bookingsService.getLengthOfStay.test.js +0 -0
  244. package/lib/services/bookingService/__tests__/bookingsService.getLengthOfStay.test.js.map +0 -0
  245. package/lib/services/bookingService/__tests__/bookingsService.getSeasonalNights.test.d.ts +0 -0
  246. package/lib/services/bookingService/__tests__/bookingsService.getSeasonalNights.test.js +0 -0
  247. package/lib/services/bookingService/__tests__/bookingsService.getSeasonalNights.test.js.map +0 -0
  248. package/lib/services/bookingService/__tests__/bookingsService.getServicesCost.test.d.ts +0 -0
  249. package/lib/services/bookingService/__tests__/bookingsService.getServicesCost.test.js +0 -0
  250. package/lib/services/bookingService/__tests__/bookingsService.getServicesCost.test.js.map +0 -0
  251. package/lib/services/bookingService/__tests__/bookingsService.getTotalCost.test.d.ts +0 -0
  252. package/lib/services/bookingService/__tests__/bookingsService.getTotalCost.test.js +0 -0
  253. package/lib/services/bookingService/__tests__/bookingsService.getTotalCost.test.js.map +0 -0
  254. package/lib/services/bookingService/__tests__/bookingsService.manualComputeTotalCost.test.d.ts +0 -0
  255. package/lib/services/bookingService/__tests__/bookingsService.manualComputeTotalCost.test.js +0 -0
  256. package/lib/services/bookingService/__tests__/bookingsService.manualComputeTotalCost.test.js.map +0 -0
  257. package/lib/services/bookingService/bookingInvoiceService.d.ts +0 -0
  258. package/lib/services/bookingService/bookingInvoiceService.js +0 -0
  259. package/lib/services/bookingService/bookingInvoiceService.js.map +0 -0
  260. package/lib/services/bookingService/bookingServicesService.d.ts +0 -0
  261. package/lib/services/bookingService/bookingServicesService.js +0 -0
  262. package/lib/services/bookingService/bookingServicesService.js.map +0 -0
  263. package/lib/services/bookingService/bookingsService.d.ts +0 -0
  264. package/lib/services/bookingService/bookingsService.js +0 -0
  265. package/lib/services/bookingService/bookingsService.js.map +0 -0
  266. package/lib/services/cookieService/cookieService.d.ts +0 -0
  267. package/lib/services/cookieService/cookieService.js +0 -0
  268. package/lib/services/cookieService/cookieService.js.map +0 -0
  269. package/lib/services/dateService/dateService.d.ts +0 -0
  270. package/lib/services/dateService/dateService.js +0 -0
  271. package/lib/services/dateService/dateService.js.map +0 -0
  272. package/lib/services/dynamicPricingService/dynamicPricingService.d.ts +22 -0
  273. package/lib/services/dynamicPricingService/dynamicPricingService.js +136 -0
  274. package/lib/services/dynamicPricingService/dynamicPricingService.js.map +1 -0
  275. package/lib/services/googleAnalyticsService/googleAnalyticsService.d.ts +0 -0
  276. package/lib/services/googleAnalyticsService/googleAnalyticsService.js +0 -0
  277. package/lib/services/googleAnalyticsService/googleAnalyticsService.js.map +0 -0
  278. package/lib/services/imageService/imageService.d.ts +0 -0
  279. package/lib/services/imageService/imageService.js +0 -0
  280. package/lib/services/imageService/imageService.js.map +0 -0
  281. package/lib/services/index.d.ts +0 -0
  282. package/lib/services/index.js +0 -0
  283. package/lib/services/index.js.map +0 -0
  284. package/lib/services/languageService/languageService.d.ts +0 -0
  285. package/lib/services/languageService/languageService.js +0 -0
  286. package/lib/services/languageService/languageService.js.map +0 -0
  287. package/lib/services/localstorageService/localstorageService.d.ts +0 -0
  288. package/lib/services/localstorageService/localstorageService.js +0 -0
  289. package/lib/services/localstorageService/localstorageService.js.map +0 -0
  290. package/lib/services/roomBookingService/__tests__/roomBookingService.distributeGuests.test.d.ts +0 -0
  291. package/lib/services/roomBookingService/__tests__/roomBookingService.distributeGuests.test.js +0 -0
  292. package/lib/services/roomBookingService/__tests__/roomBookingService.distributeGuests.test.js.map +0 -0
  293. package/lib/services/roomBookingService/index.d.ts +0 -0
  294. package/lib/services/roomBookingService/index.js +0 -0
  295. package/lib/services/roomBookingService/index.js.map +0 -0
  296. package/lib/services/sessionStorageService/index.d.ts +0 -0
  297. package/lib/services/sessionStorageService/index.js +0 -0
  298. package/lib/services/sessionStorageService/index.js.map +0 -0
  299. package/lib/testingData/bookingData.d.ts +0 -0
  300. package/lib/testingData/bookingData.js +0 -0
  301. package/lib/testingData/bookingData.js.map +0 -0
  302. package/lib/testingData/companyData.d.ts +0 -0
  303. package/lib/testingData/companyData.js +0 -0
  304. package/lib/testingData/companyData.js.map +0 -0
  305. package/lib/testingData/roomsData.d.ts +0 -0
  306. package/lib/testingData/roomsData.js +0 -0
  307. package/lib/testingData/roomsData.js.map +0 -0
  308. package/lib/translations/getAllTranslations.d.ts +0 -0
  309. package/lib/translations/getAllTranslations.js +0 -0
  310. package/lib/translations/getAllTranslations.js.map +0 -0
  311. package/package.json +1 -1
@@ -0,0 +1,136 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ exports.getDynamicMultiplier = exports.calculateDynamicPricing = void 0;
54
+ var moment_1 = __importDefault(require("moment"));
55
+ var dateService_1 = require("../dateService/dateService");
56
+ var calculateDynamicPricing = function (_a) { return __awaiter(void 0, [_a], void 0, function (_b) {
57
+ var basePriceMap, resultPricing, period, _c, roomTypesAvailability, roomsData, roomTypeAvailability, totalRooms, holidayDateSet, today, _i, period_1, dateStr, date, current, base, availableRooms, availabilityRatio, leadTimeDays, isNearHoliday, isNearFuture, isAffectedHoliday, baseForToday, occupancyMultiplier, leadTimeMultiplier, rawPrice, cappedPrice, expected;
58
+ var _d, _e, _f, _g, _h;
59
+ var currentPricing = _b.currentPricing, dynamicPricing = _b.dynamicPricing, existingBasePriceMap = _b.existingBasePriceMap, company = _b.company, roomTypeId = _b.roomTypeId, companyId = _b.companyId, getRoomTypesAvailability = _b.getRoomTypesAvailability, getRoomsByCompanyId = _b.getRoomsByCompanyId;
60
+ return __generator(this, function (_j) {
61
+ switch (_j.label) {
62
+ case 0:
63
+ basePriceMap = __assign(__assign({}, dynamicPricing.basePrice), existingBasePriceMap);
64
+ resultPricing = {};
65
+ period = Object.keys(currentPricing);
66
+ return [4 /*yield*/, Promise.all([
67
+ getRoomTypesAvailability(companyId, [roomTypeId], { period: period }),
68
+ getRoomsByCompanyId(companyId),
69
+ ])];
70
+ case 1:
71
+ _c = _j.sent(), roomTypesAvailability = _c[0], roomsData = _c[1];
72
+ roomTypeAvailability = (_e = (_d = roomTypesAvailability === null || roomTypesAvailability === void 0 ? void 0 : roomTypesAvailability[roomTypeId]) === null || _d === void 0 ? void 0 : _d.availability) !== null && _e !== void 0 ? _e : {};
73
+ totalRooms = ((_f = roomsData === null || roomsData === void 0 ? void 0 : roomsData.list) === null || _f === void 0 ? void 0 : _f.filter(function (r) { return (r === null || r === void 0 ? void 0 : r.roomTypeId) === roomTypeId; }).length) || 1;
74
+ holidayDateSet = new Set((company.holidays || [])
75
+ .filter(function (h) { return h.enableDynamicPricing; })
76
+ .flatMap(function (h) { return [
77
+ (0, moment_1.default)(h.date).subtract(1, 'day').format('YYYY-MM-DD'),
78
+ (0, moment_1.default)(h.date).format('YYYY-MM-DD'),
79
+ (0, moment_1.default)(h.date).add(1, 'day').format('YYYY-MM-DD'),
80
+ ]; }));
81
+ today = (0, moment_1.default)();
82
+ for (_i = 0, period_1 = period; _i < period_1.length; _i++) {
83
+ dateStr = period_1[_i];
84
+ date = (0, moment_1.default)((0, dateService_1.normalizeDate)(dateStr));
85
+ if (!date.isValid())
86
+ continue;
87
+ current = currentPricing[dateStr];
88
+ base = (_g = basePriceMap[dateStr]) !== null && _g !== void 0 ? _g : current;
89
+ availableRooms = (_h = roomTypeAvailability[dateStr]) !== null && _h !== void 0 ? _h : 0;
90
+ availabilityRatio = availableRooms / totalRooms;
91
+ leadTimeDays = date.diff(today, 'days');
92
+ isNearHoliday = leadTimeDays <= 7;
93
+ isNearFuture = leadTimeDays < 30;
94
+ isAffectedHoliday = holidayDateSet.has(dateStr);
95
+ if (isAffectedHoliday) {
96
+ if (!(dateStr in basePriceMap)) {
97
+ basePriceMap[dateStr] = base;
98
+ }
99
+ baseForToday = basePriceMap[dateStr];
100
+ occupancyMultiplier = (0, exports.getDynamicMultiplier)({ availabilityRatio: availabilityRatio, isNearFuture: isNearFuture });
101
+ leadTimeMultiplier = leadTimeDays >= 60 ? 1.0 : 1 + (60 - leadTimeDays) * 0.005;
102
+ rawPrice = baseForToday * occupancyMultiplier * leadTimeMultiplier;
103
+ cappedPrice = isNearHoliday && availableRooms <= 1
104
+ ? Math.min(rawPrice, baseForToday + 70)
105
+ : Math.min(rawPrice, baseForToday * 1.45);
106
+ resultPricing[dateStr] = Math.round(cappedPrice);
107
+ }
108
+ else if (!dynamicPricing.isActive && base !== undefined) {
109
+ resultPricing[dateStr] = base;
110
+ }
111
+ else {
112
+ expected = base ? Math.round(base * (0, exports.getDynamicMultiplier)({ availabilityRatio: availabilityRatio, isNearFuture: isNearFuture })) : current;
113
+ resultPricing[dateStr] =
114
+ current === expected || current === Math.round((base !== null && base !== void 0 ? base : 0) * 1.2) ? (base !== null && base !== void 0 ? base : current) : current;
115
+ }
116
+ }
117
+ return [2 /*return*/, {
118
+ updatedPricing: resultPricing,
119
+ updatedBasePriceMap: basePriceMap,
120
+ }];
121
+ }
122
+ });
123
+ }); };
124
+ exports.calculateDynamicPricing = calculateDynamicPricing;
125
+ var getDynamicMultiplier = function (_a) {
126
+ var availabilityRatio = _a.availabilityRatio, isNearFuture = _a.isNearFuture;
127
+ if (availabilityRatio <= 0.02)
128
+ return isNearFuture ? 1.5 : 1.4;
129
+ if (availabilityRatio <= 0.5)
130
+ return isNearFuture ? 1.4 : 1.2;
131
+ if (availabilityRatio < 1)
132
+ return isNearFuture ? 1.2 : 1.05;
133
+ return isNearFuture ? 1.1 : 1.0;
134
+ };
135
+ exports.getDynamicMultiplier = getDynamicMultiplier;
136
+ //# sourceMappingURL=dynamicPricingService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamicPricingService.js","sourceRoot":"","sources":["../../../src/services/dynamicPricingService/dynamicPricingService.ts"],"names":[],"mappings":"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"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hyper.software/common-helpers",
3
- "version": "2.2.24",
3
+ "version": "2.2.27",
4
4
  "author": "Raul Tomescu <tomescu.raul+hyper@gmail.com>",
5
5
  "description": "Hyper Software Common Javascript Helpers",
6
6
  "main": "lib/index.js",