@sabstravtech/obtservices 0.0.0

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 (420) hide show
  1. package/.editorconfig +13 -0
  2. package/.gitmodules +0 -0
  3. package/.vscode/settings.json +4 -0
  4. package/README.md +27 -0
  5. package/angular.json +45 -0
  6. package/audit.config.json +6 -0
  7. package/codegen.yml +18 -0
  8. package/ng-package.json +7 -0
  9. package/package.json +84 -0
  10. package/projects/obtservices/README.md +24 -0
  11. package/projects/obtservices/angular/package.json +3 -0
  12. package/projects/obtservices/angular/src/classes.ts +3 -0
  13. package/projects/obtservices/angular/src/components/basket-panel.ts +139 -0
  14. package/projects/obtservices/angular/src/components/with-component.ts +40 -0
  15. package/projects/obtservices/angular/src/components.ts +2 -0
  16. package/projects/obtservices/angular/src/data.ts +5 -0
  17. package/projects/obtservices/angular/src/fetchers.ts +32 -0
  18. package/projects/obtservices/angular/src/lib/vendor/classes/environment.ts +5 -0
  19. package/projects/obtservices/angular/src/lib/vendor/classes/event-messenager.ts +11 -0
  20. package/projects/obtservices/angular/src/lib/vendor/classes/helpers.ts +87 -0
  21. package/projects/obtservices/angular/src/lib/vendor/data/airports.data.json +5508 -0
  22. package/projects/obtservices/angular/src/lib/vendor/data/animations.ts +38 -0
  23. package/projects/obtservices/angular/src/lib/vendor/data/booking-expected-responses.json +100 -0
  24. package/projects/obtservices/angular/src/lib/vendor/data/cities.data.json +31499 -0
  25. package/projects/obtservices/angular/src/lib/vendor/data/countries.json +1212 -0
  26. package/projects/obtservices/angular/src/lib/vendor/data/flight-booking.data.json +136 -0
  27. package/projects/obtservices/angular/src/lib/vendor/data/postcodes1.json +194 -0
  28. package/projects/obtservices/angular/src/lib/vendor/data/rail_addresses.json +2524 -0
  29. package/projects/obtservices/angular/src/lib/vendor/fetchers/basket-fetcher.ts +14 -0
  30. package/projects/obtservices/angular/src/lib/vendor/fetchers/cabhire-quote-fetcher.ts +15 -0
  31. package/projects/obtservices/angular/src/lib/vendor/fetchers/carhire-availability-detail.fetcher.ts +17 -0
  32. package/projects/obtservices/angular/src/lib/vendor/fetchers/carhire-quote-fetcher.ts +16 -0
  33. package/projects/obtservices/angular/src/lib/vendor/fetchers/conferma-office-names.fetcher.ts +16 -0
  34. package/projects/obtservices/angular/src/lib/vendor/fetchers/conferma-quicklist.fetcher.ts +16 -0
  35. package/projects/obtservices/angular/src/lib/vendor/fetchers/eurostar-quote.fetcher.ts +16 -0
  36. package/projects/obtservices/angular/src/lib/vendor/fetchers/flight-quote.fetcher.ts +16 -0
  37. package/projects/obtservices/angular/src/lib/vendor/fetchers/get-rail-cards.fetcher.ts +16 -0
  38. package/projects/obtservices/angular/src/lib/vendor/fetchers/get-rail-station.fetcher.ts +16 -0
  39. package/projects/obtservices/angular/src/lib/vendor/fetchers/get-risk-alerts.fetcher.ts +18 -0
  40. package/projects/obtservices/angular/src/lib/vendor/fetchers/get-user-company-offices.fetcher.ts +16 -0
  41. package/projects/obtservices/angular/src/lib/vendor/fetchers/get-user-current-carbon-allowance.fetcher.ts +16 -0
  42. package/projects/obtservices/angular/src/lib/vendor/fetchers/get-user-recent-searches.fetcher.ts +16 -0
  43. package/projects/obtservices/angular/src/lib/vendor/fetchers/get-users-baskets-fetcher.ts +16 -0
  44. package/projects/obtservices/angular/src/lib/vendor/fetchers/getMiAutoSugestions.fetcher.ts +16 -0
  45. package/projects/obtservices/angular/src/lib/vendor/fetchers/hotel-avaliability-fetcher.ts +17 -0
  46. package/projects/obtservices/angular/src/lib/vendor/fetchers/hotel-quote-fetcher.ts +16 -0
  47. package/projects/obtservices/angular/src/lib/vendor/fetchers/irl-quote-fetcher.ts +16 -0
  48. package/projects/obtservices/angular/src/lib/vendor/fetchers/lounge-quote.fetcher.ts +16 -0
  49. package/projects/obtservices/angular/src/lib/vendor/fetchers/parking-quote-fetcher.ts +16 -0
  50. package/projects/obtservices/angular/src/lib/vendor/fetchers/rail-quote-fetcher.ts +16 -0
  51. package/projects/obtservices/angular/src/lib/vendor/fetchers/search-airlines-fetcher.ts +14 -0
  52. package/projects/obtservices/angular/src/lib/vendor/fetchers/search-airports-fetcher.ts +14 -0
  53. package/projects/obtservices/angular/src/lib/vendor/fetchers/search-cities.fetcher.ts +16 -0
  54. package/projects/obtservices/angular/src/lib/vendor/fetchers/search-conferma-cities.fetcher.ts +14 -0
  55. package/projects/obtservices/angular/src/lib/vendor/fetchers/search-depots.fetcher.ts +18 -0
  56. package/projects/obtservices/angular/src/lib/vendor/fetchers/search-hotel-chains.fetcher.ts +16 -0
  57. package/projects/obtservices/angular/src/lib/vendor/fetchers/search-postcodes.fetcher.ts +16 -0
  58. package/projects/obtservices/angular/src/lib/vendor/fetchers/search-rail-stations.fetcher.ts +16 -0
  59. package/projects/obtservices/angular/src/lib/vendor/fetchers/search-users-can-book-for-fetcher.ts +16 -0
  60. package/projects/obtservices/angular/src/lib/vendor/fetchers/user-addresses.fetcher.ts +16 -0
  61. package/projects/obtservices/angular/src/lib/vendor/fetchers/user-fetcher.ts +14 -0
  62. package/projects/obtservices/angular/src/lib/vendor/fetchers/user-message.fetcher.ts +16 -0
  63. package/projects/obtservices/angular/src/lib/vendor/fetchers/user-products-fetcher.ts +16 -0
  64. package/projects/obtservices/angular/src/lib/vendor/fetchers/user-ui-configs-fetcher.ts +16 -0
  65. package/projects/obtservices/angular/src/lib/vendor/services/enterprise-basket.service.ts +133 -0
  66. package/projects/obtservices/angular/src/lib/vendor/services/hotel-avallibility.service.ts +19 -0
  67. package/projects/obtservices/angular/src/lib/vendor/services/http-call.service.ts +252 -0
  68. package/projects/obtservices/angular/src/lib/vendor/services/logon.service.ts +40 -0
  69. package/projects/obtservices/angular/src/lib/vendor/services/modal-opener.service.ts +9 -0
  70. package/projects/obtservices/angular/src/lib/vendor/services/my-bookings.service.ts +21 -0
  71. package/projects/obtservices/angular/src/lib/vendor/services/route-happy.service.ts +11 -0
  72. package/projects/obtservices/angular/src/lib/vendor/services/search.service.ts +213 -0
  73. package/projects/obtservices/angular/src/lib/vendor/services/storage.service.ts +82 -0
  74. package/projects/obtservices/angular/src/lib/vendor/services/user.service.ts +36 -0
  75. package/projects/obtservices/angular/src/lib/vendor/services/webtoken.service.ts +62 -0
  76. package/projects/obtservices/angular/src/lib/vendor/testers/postcode-validate.tester.ts +14 -0
  77. package/projects/obtservices/angular/src/lib/vendor/testers/validate-mi-free-value.tester.ts +14 -0
  78. package/projects/obtservices/angular/src/lib/vendor/types/graphql.angular.types.ts +11081 -0
  79. package/projects/obtservices/angular/src/lib/vendor/updaters/accept-new-price.updater.ts +14 -0
  80. package/projects/obtservices/angular/src/lib/vendor/updaters/add-item-to-basket.updater.ts +14 -0
  81. package/projects/obtservices/angular/src/lib/vendor/updaters/addUserToBasketItem.ts +14 -0
  82. package/projects/obtservices/angular/src/lib/vendor/updaters/book-basket-updater.ts +14 -0
  83. package/projects/obtservices/angular/src/lib/vendor/updaters/create-basket-updater.ts +14 -0
  84. package/projects/obtservices/angular/src/lib/vendor/updaters/move-basket-item-to-basket.ts +14 -0
  85. package/projects/obtservices/angular/src/lib/vendor/updaters/remove-basket-updater.ts +14 -0
  86. package/projects/obtservices/angular/src/lib/vendor/updaters/remove-item-from-basket.updater.ts +14 -0
  87. package/projects/obtservices/angular/src/lib/vendor/updaters/remove-recent-search.updater.ts +14 -0
  88. package/projects/obtservices/angular/src/lib/vendor/updaters/remove-user-address.updater.ts +14 -0
  89. package/projects/obtservices/angular/src/lib/vendor/updaters/revalidate-basket-updater.ts +14 -0
  90. package/projects/obtservices/angular/src/lib/vendor/updaters/save-recent-search.updater.ts +14 -0
  91. package/projects/obtservices/angular/src/lib/vendor/updaters/save-user-address.updater.ts +11 -0
  92. package/projects/obtservices/angular/src/lib/vendor/updaters/send-basket-for-approval.updater.ts +14 -0
  93. package/projects/obtservices/angular/src/lib/vendor/updaters/set-basket-item-lead-passenger.updater.ts +14 -0
  94. package/projects/obtservices/angular/src/lib/vendor/updaters/set-basket-item-mi-group.ts +14 -0
  95. package/projects/obtservices/angular/src/lib/vendor/updaters/set-basket-item-mi-value-updater.ts +15 -0
  96. package/projects/obtservices/angular/src/lib/vendor/updaters/set-payment-option.updater.ts +15 -0
  97. package/projects/obtservices/angular/src/lib/vendor/updaters/update-basket-notes-updater.ts +14 -0
  98. package/projects/obtservices/angular/src/lib/vendor/updaters/update-basket-title-updater.ts +14 -0
  99. package/projects/obtservices/angular/src/obtservices.module.ts +131 -0
  100. package/projects/obtservices/angular/src/public_api.ts +8 -0
  101. package/projects/obtservices/angular/src/services.ts +11 -0
  102. package/projects/obtservices/angular/src/testers.ts +2 -0
  103. package/projects/obtservices/angular/src/types.ts +1 -0
  104. package/projects/obtservices/angular/src/updaters.ts +13 -0
  105. package/projects/obtservices/base/package.json +3 -0
  106. package/projects/obtservices/base/src/classes.ts +27 -0
  107. package/projects/obtservices/base/src/custom.d.ts +3 -0
  108. package/projects/obtservices/base/src/fetchers.ts +36 -0
  109. package/projects/obtservices/base/src/interfaces.ts +29 -0
  110. package/projects/obtservices/base/src/lib/vendor/classes/base-enterprise.ts +126 -0
  111. package/projects/obtservices/base/src/lib/vendor/classes/base-network-call.ts +40 -0
  112. package/projects/obtservices/base/src/lib/vendor/classes/basket-info-mi-details.impl.ts +68 -0
  113. package/projects/obtservices/base/src/lib/vendor/classes/bookable-basket.ts +343 -0
  114. package/projects/obtservices/base/src/lib/vendor/classes/cabhire-enterprise-search.ts +907 -0
  115. package/projects/obtservices/base/src/lib/vendor/classes/carhire-enterprise-search.ts +1597 -0
  116. package/projects/obtservices/base/src/lib/vendor/classes/empty-enterprise-search.ts +75 -0
  117. package/projects/obtservices/base/src/lib/vendor/classes/enviroment.ts +25 -0
  118. package/projects/obtservices/base/src/lib/vendor/classes/eurostar-enterprise-search.ts +2126 -0
  119. package/projects/obtservices/base/src/lib/vendor/classes/eurostar-search-type.enum.ts +4 -0
  120. package/projects/obtservices/base/src/lib/vendor/classes/event-messenager.ts +23 -0
  121. package/projects/obtservices/base/src/lib/vendor/classes/flight-enterprise-search.ts +2399 -0
  122. package/projects/obtservices/base/src/lib/vendor/classes/flight-search-type.enum.ts +5 -0
  123. package/projects/obtservices/base/src/lib/vendor/classes/helpers.ts +1233 -0
  124. package/projects/obtservices/base/src/lib/vendor/classes/hotel-enterprise-search.ts +1370 -0
  125. package/projects/obtservices/base/src/lib/vendor/classes/irl-enterprise-search.ts +1380 -0
  126. package/projects/obtservices/base/src/lib/vendor/classes/limited-cache.class.ts +70 -0
  127. package/projects/obtservices/base/src/lib/vendor/classes/lounges-enterprise-search.ts +444 -0
  128. package/projects/obtservices/base/src/lib/vendor/classes/management-info-and-valid.ts +268 -0
  129. package/projects/obtservices/base/src/lib/vendor/classes/modal-types.enum.ts +28 -0
  130. package/projects/obtservices/base/src/lib/vendor/classes/parking-enterprise-search.ts +541 -0
  131. package/projects/obtservices/base/src/lib/vendor/classes/rail-direction.enum.ts +4 -0
  132. package/projects/obtservices/base/src/lib/vendor/classes/rail-enterprise-search.ts +1751 -0
  133. package/projects/obtservices/base/src/lib/vendor/classes/routehappy-request.ts +146 -0
  134. package/projects/obtservices/base/src/lib/vendor/classes/routehappy-response.ts +128 -0
  135. package/projects/obtservices/base/src/lib/vendor/classes/supplementary-booking-info-impl.ts +375 -0
  136. package/projects/obtservices/base/src/lib/vendor/classes/user-favourite.enum.ts +12 -0
  137. package/projects/obtservices/base/src/lib/vendor/classes/validator.checker.ts +7 -0
  138. package/projects/obtservices/base/src/lib/vendor/data/airports.data.json +5508 -0
  139. package/projects/obtservices/base/src/lib/vendor/data/booking-expected-responses.json +100 -0
  140. package/projects/obtservices/base/src/lib/vendor/data/cities.data.json +31499 -0
  141. package/projects/obtservices/base/src/lib/vendor/data/countries.json +1212 -0
  142. package/projects/obtservices/base/src/lib/vendor/data/euro-stations.json +30 -0
  143. package/projects/obtservices/base/src/lib/vendor/data/flight-booking.data.json +136 -0
  144. package/projects/obtservices/base/src/lib/vendor/data/postcodes1.json +194 -0
  145. package/projects/obtservices/base/src/lib/vendor/data/rail_addresses.json +2524 -0
  146. package/projects/obtservices/base/src/lib/vendor/fetchers/basket-fetcher.ts +29 -0
  147. package/projects/obtservices/base/src/lib/vendor/fetchers/cabhire-quote-fetcher.ts +34 -0
  148. package/projects/obtservices/base/src/lib/vendor/fetchers/carhire-availability-detail.fetcher.ts +35 -0
  149. package/projects/obtservices/base/src/lib/vendor/fetchers/carhire-quote-fetcher.ts +34 -0
  150. package/projects/obtservices/base/src/lib/vendor/fetchers/conferma-office-names.fetcher.ts +34 -0
  151. package/projects/obtservices/base/src/lib/vendor/fetchers/conferma-quicklist.fetcher.ts +35 -0
  152. package/projects/obtservices/base/src/lib/vendor/fetchers/eurostar-quote.fetcher.ts +35 -0
  153. package/projects/obtservices/base/src/lib/vendor/fetchers/flight-quote.fetcher.ts +35 -0
  154. package/projects/obtservices/base/src/lib/vendor/fetchers/get-rail-cards.fetcher.ts +35 -0
  155. package/projects/obtservices/base/src/lib/vendor/fetchers/get-rail-station.fetcher.ts +35 -0
  156. package/projects/obtservices/base/src/lib/vendor/fetchers/get-risk-alerts.fetcher.ts +35 -0
  157. package/projects/obtservices/base/src/lib/vendor/fetchers/get-user-company-offices.fetcher.ts +34 -0
  158. package/projects/obtservices/base/src/lib/vendor/fetchers/get-user-current-carbon-allowance.fetcher.ts +35 -0
  159. package/projects/obtservices/base/src/lib/vendor/fetchers/get-user-recent-searches.fetcher.ts +36 -0
  160. package/projects/obtservices/base/src/lib/vendor/fetchers/get-users-baskets-fetcher.ts +33 -0
  161. package/projects/obtservices/base/src/lib/vendor/fetchers/getMiAutoSugestions.fetcher.ts +35 -0
  162. package/projects/obtservices/base/src/lib/vendor/fetchers/hotel-avaliability-fetcher.ts +53 -0
  163. package/projects/obtservices/base/src/lib/vendor/fetchers/hotel-quote-fetcher.ts +35 -0
  164. package/projects/obtservices/base/src/lib/vendor/fetchers/irl-quote-fetcher.ts +34 -0
  165. package/projects/obtservices/base/src/lib/vendor/fetchers/list-fetchable-enterprise.ts +59 -0
  166. package/projects/obtservices/base/src/lib/vendor/fetchers/lounge-quote.fetcher.ts +34 -0
  167. package/projects/obtservices/base/src/lib/vendor/fetchers/object-fetchable-enterprise.ts +20 -0
  168. package/projects/obtservices/base/src/lib/vendor/fetchers/parking-quote-fetcher.ts +34 -0
  169. package/projects/obtservices/base/src/lib/vendor/fetchers/rail-quote-fetcher.ts +34 -0
  170. package/projects/obtservices/base/src/lib/vendor/fetchers/search-airlines.fetcher.ts +30 -0
  171. package/projects/obtservices/base/src/lib/vendor/fetchers/search-airports-fetcher.ts +29 -0
  172. package/projects/obtservices/base/src/lib/vendor/fetchers/search-cities.fetcher.ts +34 -0
  173. package/projects/obtservices/base/src/lib/vendor/fetchers/search-conferma-cities.fetcher.ts +32 -0
  174. package/projects/obtservices/base/src/lib/vendor/fetchers/search-depots.fetcher.ts +34 -0
  175. package/projects/obtservices/base/src/lib/vendor/fetchers/search-hotel-chains.fetcher.ts +34 -0
  176. package/projects/obtservices/base/src/lib/vendor/fetchers/search-postcodes.fetcher.ts +37 -0
  177. package/projects/obtservices/base/src/lib/vendor/fetchers/search-rail-stations.fetcher.ts +35 -0
  178. package/projects/obtservices/base/src/lib/vendor/fetchers/search-users-can-book-for-fetcher.ts +35 -0
  179. package/projects/obtservices/base/src/lib/vendor/fetchers/user-addresses.fetcher.ts +34 -0
  180. package/projects/obtservices/base/src/lib/vendor/fetchers/user-fetcher.ts +27 -0
  181. package/projects/obtservices/base/src/lib/vendor/fetchers/user-message.fetcher.ts +34 -0
  182. package/projects/obtservices/base/src/lib/vendor/fetchers/user-products-fetcher.ts +35 -0
  183. package/projects/obtservices/base/src/lib/vendor/fetchers/user-ui-configs-fetcher.ts +35 -0
  184. package/projects/obtservices/base/src/lib/vendor/interfaces/Icabhire-enterprise-search.ts +174 -0
  185. package/projects/obtservices/base/src/lib/vendor/interfaces/Icarhire-enterprise-search.ts +143 -0
  186. package/projects/obtservices/base/src/lib/vendor/interfaces/Ienterprise-basket.service.ts +127 -0
  187. package/projects/obtservices/base/src/lib/vendor/interfaces/Ieurostar-enterprise-search.ts +197 -0
  188. package/projects/obtservices/base/src/lib/vendor/interfaces/Iflight-enterprise-search.ts +196 -0
  189. package/projects/obtservices/base/src/lib/vendor/interfaces/Ihotel-enterprise-search.ts +219 -0
  190. package/projects/obtservices/base/src/lib/vendor/interfaces/Iirl-enterprise-search.ts +135 -0
  191. package/projects/obtservices/base/src/lib/vendor/interfaces/Ilounges-enterprise-search.ts +58 -0
  192. package/projects/obtservices/base/src/lib/vendor/interfaces/Imybookings.service.ts +27 -0
  193. package/projects/obtservices/base/src/lib/vendor/interfaces/Iparking-enterprise-search.ts +72 -0
  194. package/projects/obtservices/base/src/lib/vendor/interfaces/Irail-enterprise-search.ts +161 -0
  195. package/projects/obtservices/base/src/lib/vendor/interfaces/Isearch.service.ts +178 -0
  196. package/projects/obtservices/base/src/lib/vendor/interfaces/Isupplementary-booking-info-impl.ts +63 -0
  197. package/projects/obtservices/base/src/lib/vendor/interfaces/Iuser.service.ts +87 -0
  198. package/projects/obtservices/base/src/lib/vendor/interfaces/car-hire-classes.interface.ts +8 -0
  199. package/projects/obtservices/base/src/lib/vendor/interfaces/car-hire-filters.interface.ts +11 -0
  200. package/projects/obtservices/base/src/lib/vendor/interfaces/car-hire-sort.interface.ts +4 -0
  201. package/projects/obtservices/base/src/lib/vendor/interfaces/cheapest-price.ts +4 -0
  202. package/projects/obtservices/base/src/lib/vendor/interfaces/code-name.ts +4 -0
  203. package/projects/obtservices/base/src/lib/vendor/interfaces/flight-filters.interface.ts +41 -0
  204. package/projects/obtservices/base/src/lib/vendor/interfaces/flight-multi-destination.interface.ts +8 -0
  205. package/projects/obtservices/base/src/lib/vendor/interfaces/rail-airport-express-stations.interface.ts +4 -0
  206. package/projects/obtservices/base/src/lib/vendor/interfaces/rail-basket-item.interface.ts +79 -0
  207. package/projects/obtservices/base/src/lib/vendor/interfaces/rail-journey-leg.interface.ts +6 -0
  208. package/projects/obtservices/base/src/lib/vendor/interfaces/rail-recent-search-args.interface.ts +20 -0
  209. package/projects/obtservices/base/src/lib/vendor/interfaces/rail-selected-ticket.interface.ts +11 -0
  210. package/projects/obtservices/base/src/lib/vendor/interfaces/rail-ticket-group.interface.ts +29 -0
  211. package/projects/obtservices/base/src/lib/vendor/interfaces/rail-ticket-groups.interface.ts +5 -0
  212. package/projects/obtservices/base/src/lib/vendor/interfaces/search-objects.interface.ts +17 -0
  213. package/projects/obtservices/base/src/lib/vendor/interfaces/select-filter.interface.ts +5 -0
  214. package/projects/obtservices/base/src/lib/vendor/interfaces/user.data.ts +22 -0
  215. package/projects/obtservices/base/src/lib/vendor/interfaces/value-display.ts +4 -0
  216. package/projects/obtservices/base/src/lib/vendor/models/login.model.ts +97 -0
  217. package/projects/obtservices/base/src/lib/vendor/models/regexp.model.ts +13 -0
  218. package/projects/obtservices/base/src/lib/vendor/models/traveller.object.ts +61 -0
  219. package/projects/obtservices/base/src/lib/vendor/services/enterprise-basket.service.ts +1150 -0
  220. package/projects/obtservices/base/src/lib/vendor/services/hotel-avallibility.service.ts +251 -0
  221. package/projects/obtservices/base/src/lib/vendor/services/http-call.service.ts +57 -0
  222. package/projects/obtservices/base/src/lib/vendor/services/logon.service.ts +245 -0
  223. package/projects/obtservices/base/src/lib/vendor/services/modal-opener.service.ts +30 -0
  224. package/projects/obtservices/base/src/lib/vendor/services/my-bookings.service.ts +184 -0
  225. package/projects/obtservices/base/src/lib/vendor/services/routehappy.service.ts +275 -0
  226. package/projects/obtservices/base/src/lib/vendor/services/search.service.ts +2026 -0
  227. package/projects/obtservices/base/src/lib/vendor/services/storage.service.ts +15 -0
  228. package/projects/obtservices/base/src/lib/vendor/services/url.service.ts +12 -0
  229. package/projects/obtservices/base/src/lib/vendor/services/user.service.ts +354 -0
  230. package/projects/obtservices/base/src/lib/vendor/services/webtoken.service.ts +66 -0
  231. package/projects/obtservices/base/src/lib/vendor/testers/base.tester.ts +18 -0
  232. package/projects/obtservices/base/src/lib/vendor/testers/postcode-validate.tester.ts +24 -0
  233. package/projects/obtservices/base/src/lib/vendor/testers/validate-mi-free-value.tester.ts +23 -0
  234. package/projects/obtservices/base/src/lib/vendor/types/graphql.types.ts +6184 -0
  235. package/projects/obtservices/base/src/lib/vendor/types/types.ts +630 -0
  236. package/projects/obtservices/base/src/lib/vendor/updaters/accept-new-price.updater.ts +31 -0
  237. package/projects/obtservices/base/src/lib/vendor/updaters/add-item-to-basket.updater.ts +29 -0
  238. package/projects/obtservices/base/src/lib/vendor/updaters/addUserToBasketItem.ts +30 -0
  239. package/projects/obtservices/base/src/lib/vendor/updaters/book-basket-updater.ts +28 -0
  240. package/projects/obtservices/base/src/lib/vendor/updaters/create-basket-updater.ts +29 -0
  241. package/projects/obtservices/base/src/lib/vendor/updaters/move-basket-item-to-basket.ts +30 -0
  242. package/projects/obtservices/base/src/lib/vendor/updaters/object-updater-enterprise.ts +20 -0
  243. package/projects/obtservices/base/src/lib/vendor/updaters/remove-basket-updater.ts +29 -0
  244. package/projects/obtservices/base/src/lib/vendor/updaters/remove-item-from-basket.updater.ts +28 -0
  245. package/projects/obtservices/base/src/lib/vendor/updaters/remove-recent-search-updater.ts +29 -0
  246. package/projects/obtservices/base/src/lib/vendor/updaters/remove-user-address-updater.ts +29 -0
  247. package/projects/obtservices/base/src/lib/vendor/updaters/revalidate-basket-updater.ts +29 -0
  248. package/projects/obtservices/base/src/lib/vendor/updaters/save-recent-search-updater.ts +30 -0
  249. package/projects/obtservices/base/src/lib/vendor/updaters/save-user-address.updater.ts +30 -0
  250. package/projects/obtservices/base/src/lib/vendor/updaters/send-basket-for-approval.updater.ts +31 -0
  251. package/projects/obtservices/base/src/lib/vendor/updaters/set-basket-item-lead-passenger.updater.ts +30 -0
  252. package/projects/obtservices/base/src/lib/vendor/updaters/set-basket-item-mi-group.ts +32 -0
  253. package/projects/obtservices/base/src/lib/vendor/updaters/set-basket-item-mi-value-updater.ts +30 -0
  254. package/projects/obtservices/base/src/lib/vendor/updaters/set-basket-item-paymenr-option.updater.ts +28 -0
  255. package/projects/obtservices/base/src/lib/vendor/updaters/update-basket-notes-updater.ts +30 -0
  256. package/projects/obtservices/base/src/lib/vendor/updaters/update-basket-title-updater.ts +30 -0
  257. package/projects/obtservices/base/src/models.ts +3 -0
  258. package/projects/obtservices/base/src/public_api.ts +8 -0
  259. package/projects/obtservices/base/src/services.ts +12 -0
  260. package/projects/obtservices/base/src/testers.ts +2 -0
  261. package/projects/obtservices/base/src/types.ts +1 -0
  262. package/projects/obtservices/base/src/updaters.ts +20 -0
  263. package/projects/obtservices/graphQL/autogenerated/index.js +2 -0
  264. package/projects/obtservices/graphQL/autogenerated/mutations/acceptNewPrice.gql +1580 -0
  265. package/projects/obtservices/graphQL/autogenerated/mutations/addItemToBasket.gql +1580 -0
  266. package/projects/obtservices/graphQL/autogenerated/mutations/addUsersToBasketItem.gql +1580 -0
  267. package/projects/obtservices/graphQL/autogenerated/mutations/bookBasket.gql +1580 -0
  268. package/projects/obtservices/graphQL/autogenerated/mutations/cancelBooking.gql +6 -0
  269. package/projects/obtservices/graphQL/autogenerated/mutations/confermaCreateCard.gql +23 -0
  270. package/projects/obtservices/graphQL/autogenerated/mutations/confermaDeleteCard.gql +3 -0
  271. package/projects/obtservices/graphQL/autogenerated/mutations/createBasket.gql +1580 -0
  272. package/projects/obtservices/graphQL/autogenerated/mutations/deleteBasket.gql +3 -0
  273. package/projects/obtservices/graphQL/autogenerated/mutations/deleteFavouriteSearch.gql +3 -0
  274. package/projects/obtservices/graphQL/autogenerated/mutations/deleteRecentSearch.gql +3 -0
  275. package/projects/obtservices/graphQL/autogenerated/mutations/deleteUserAddress.gql +3 -0
  276. package/projects/obtservices/graphQL/autogenerated/mutations/index.js +36 -0
  277. package/projects/obtservices/graphQL/autogenerated/mutations/moveItemToADifferentBasket.gql +1580 -0
  278. package/projects/obtservices/graphQL/autogenerated/mutations/removeItemFromBasket.gql +1580 -0
  279. package/projects/obtservices/graphQL/autogenerated/mutations/removeItemsFromBasket.gql +1580 -0
  280. package/projects/obtservices/graphQL/autogenerated/mutations/removeUserFromBasketItem.gql +1580 -0
  281. package/projects/obtservices/graphQL/autogenerated/mutations/reopenBasket.gql +1580 -0
  282. package/projects/obtservices/graphQL/autogenerated/mutations/revalidateBasket.gql +1580 -0
  283. package/projects/obtservices/graphQL/autogenerated/mutations/revalidateBasketItem.gql +1580 -0
  284. package/projects/obtservices/graphQL/autogenerated/mutations/saveFavouriteSearch.gql +348 -0
  285. package/projects/obtservices/graphQL/autogenerated/mutations/saveRecentSearch.gql +348 -0
  286. package/projects/obtservices/graphQL/autogenerated/mutations/saveUserAddress.gql +14 -0
  287. package/projects/obtservices/graphQL/autogenerated/mutations/sendBasketForApproval.gql +1580 -0
  288. package/projects/obtservices/graphQL/autogenerated/mutations/setAddressAsUserPrimary.gql +14 -0
  289. package/projects/obtservices/graphQL/autogenerated/mutations/setBasketItemLeadPassenger.gql +1580 -0
  290. package/projects/obtservices/graphQL/autogenerated/mutations/setBasketItemMIGroup.gql +1580 -0
  291. package/projects/obtservices/graphQL/autogenerated/mutations/setBasketItemMIValue.gql +1580 -0
  292. package/projects/obtservices/graphQL/autogenerated/mutations/setBasketItemPaymentMethod.gql +1580 -0
  293. package/projects/obtservices/graphQL/autogenerated/mutations/setMIDefaultValue.gql +3 -0
  294. package/projects/obtservices/graphQL/autogenerated/mutations/setUserLanguage.gql +339 -0
  295. package/projects/obtservices/graphQL/autogenerated/mutations/updateBasketNotes.gql +1580 -0
  296. package/projects/obtservices/graphQL/autogenerated/mutations/updateBasketTitle.gql +1580 -0
  297. package/projects/obtservices/graphQL/autogenerated/queries/alive.gql +3 -0
  298. package/projects/obtservices/graphQL/autogenerated/queries/carHireAvailabilityDetailRequest.gql +42 -0
  299. package/projects/obtservices/graphQL/autogenerated/queries/confermaBlockClientHotels.gql +23 -0
  300. package/projects/obtservices/graphQL/autogenerated/queries/confermaBlockConsumerHotels.gql +23 -0
  301. package/projects/obtservices/graphQL/autogenerated/queries/confermaListCards.gql +11 -0
  302. package/projects/obtservices/graphQL/autogenerated/queries/confermaUnblockClientHotels.gql +23 -0
  303. package/projects/obtservices/graphQL/autogenerated/queries/confermaUnblockConsumerHotels.gql +23 -0
  304. package/projects/obtservices/graphQL/autogenerated/queries/getCOVIDMicrositeToken.gql +3 -0
  305. package/projects/obtservices/graphQL/autogenerated/queries/getCancellationInfo.gql +7 -0
  306. package/projects/obtservices/graphQL/autogenerated/queries/getCarHireDepots.gql +13 -0
  307. package/projects/obtservices/graphQL/autogenerated/queries/getConfermaOffice.gql +50 -0
  308. package/projects/obtservices/graphQL/autogenerated/queries/getConfermaOfficeNames.gql +26 -0
  309. package/projects/obtservices/graphQL/autogenerated/queries/getConfermaQuicklist.gql +131 -0
  310. package/projects/obtservices/graphQL/autogenerated/queries/getCountries.gql +8 -0
  311. package/projects/obtservices/graphQL/autogenerated/queries/getHotelAvailability.gql +78 -0
  312. package/projects/obtservices/graphQL/autogenerated/queries/getHotelChains.gql +3 -0
  313. package/projects/obtservices/graphQL/autogenerated/queries/getIRLSupplierStation.gql +28 -0
  314. package/projects/obtservices/graphQL/autogenerated/queries/getMultipleHotelsAvailability.gql +78 -0
  315. package/projects/obtservices/graphQL/autogenerated/queries/getPostcodeDetails.gql +25 -0
  316. package/projects/obtservices/graphQL/autogenerated/queries/getRailStation.gql +27 -0
  317. package/projects/obtservices/graphQL/autogenerated/queries/getRailcards.gql +6 -0
  318. package/projects/obtservices/graphQL/autogenerated/queries/getRiskAlerts.gql +17 -0
  319. package/projects/obtservices/graphQL/autogenerated/queries/getUser.gql +339 -0
  320. package/projects/obtservices/graphQL/autogenerated/queries/getUserAddresses.gql +14 -0
  321. package/projects/obtservices/graphQL/autogenerated/queries/getUserBasket.gql +1580 -0
  322. package/projects/obtservices/graphQL/autogenerated/queries/getUserBaskets.gql +1580 -0
  323. package/projects/obtservices/graphQL/autogenerated/queries/getUserCompanyOffices.gql +88 -0
  324. package/projects/obtservices/graphQL/autogenerated/queries/getUserCurrentCarbonAllowance.gql +524 -0
  325. package/projects/obtservices/graphQL/autogenerated/queries/getUserFavouriteSearches.gql +348 -0
  326. package/projects/obtservices/graphQL/autogenerated/queries/getUserMIAutoSuggestValues.gql +10 -0
  327. package/projects/obtservices/graphQL/autogenerated/queries/getUserMessages.gql +10 -0
  328. package/projects/obtservices/graphQL/autogenerated/queries/getUserPhoneNumbers.gql +13 -0
  329. package/projects/obtservices/graphQL/autogenerated/queries/getUserRecentSearches.gql +348 -0
  330. package/projects/obtservices/graphQL/autogenerated/queries/getUserServices.gql +16 -0
  331. package/projects/obtservices/graphQL/autogenerated/queries/getUserTravelRules.gql +111 -0
  332. package/projects/obtservices/graphQL/autogenerated/queries/getUserUIConfigs.gql +52 -0
  333. package/projects/obtservices/graphQL/autogenerated/queries/index.js +64 -0
  334. package/projects/obtservices/graphQL/autogenerated/queries/isPostcodeValid.gql +3 -0
  335. package/projects/obtservices/graphQL/autogenerated/queries/postcodeAutoSuggest.gql +3 -0
  336. package/projects/obtservices/graphQL/autogenerated/queries/searchAirlines.gql +32 -0
  337. package/projects/obtservices/graphQL/autogenerated/queries/searchAirports.gql +60 -0
  338. package/projects/obtservices/graphQL/autogenerated/queries/searchCabHire.gql +63 -0
  339. package/projects/obtservices/graphQL/autogenerated/queries/searchCarHire.gql +104 -0
  340. package/projects/obtservices/graphQL/autogenerated/queries/searchCities.gql +14 -0
  341. package/projects/obtservices/graphQL/autogenerated/queries/searchConfermaCities.gql +11 -0
  342. package/projects/obtservices/graphQL/autogenerated/queries/searchEurostar.gql +833 -0
  343. package/projects/obtservices/graphQL/autogenerated/queries/searchFastTrack.gql +46 -0
  344. package/projects/obtservices/graphQL/autogenerated/queries/searchFlights.gql +23 -0
  345. package/projects/obtservices/graphQL/autogenerated/queries/searchFlightsV2.gql +833 -0
  346. package/projects/obtservices/graphQL/autogenerated/queries/searchHotelChains.gql +3 -0
  347. package/projects/obtservices/graphQL/autogenerated/queries/searchHotels.gql +131 -0
  348. package/projects/obtservices/graphQL/autogenerated/queries/searchIRL.gql +514 -0
  349. package/projects/obtservices/graphQL/autogenerated/queries/searchIRLSupplierStations.gql +28 -0
  350. package/projects/obtservices/graphQL/autogenerated/queries/searchLounges.gql +89 -0
  351. package/projects/obtservices/graphQL/autogenerated/queries/searchParking.gql +70 -0
  352. package/projects/obtservices/graphQL/autogenerated/queries/searchPostcodes.gql +25 -0
  353. package/projects/obtservices/graphQL/autogenerated/queries/searchRail.gql +840 -0
  354. package/projects/obtservices/graphQL/autogenerated/queries/searchRailStations.gql +27 -0
  355. package/projects/obtservices/graphQL/autogenerated/queries/searchUserCanBookFor.gql +339 -0
  356. package/projects/obtservices/graphQL/autogenerated/queries/validateBasketItemMI.gql +3 -0
  357. package/projects/obtservices/graphQL/autogenerated/queries/validateUserMIFreeValue.gql +3 -0
  358. package/projects/obtservices/graphQL/documents/acceptNewPrice.graphql +5 -0
  359. package/projects/obtservices/graphQL/documents/addUserToBasketItem.graphql +9 -0
  360. package/projects/obtservices/graphQL/documents/basket.fragments.graphql +171 -0
  361. package/projects/obtservices/graphQL/documents/baskets.graphql +111 -0
  362. package/projects/obtservices/graphQL/documents/bookBasket.graphql +9 -0
  363. package/projects/obtservices/graphQL/documents/cabhire.graphql +66 -0
  364. package/projects/obtservices/graphQL/documents/carHireAvailabilityDetailRequest.graphql +44 -0
  365. package/projects/obtservices/graphQL/documents/carhire.graphql +117 -0
  366. package/projects/obtservices/graphQL/documents/deleteRecentSearch.graphql +3 -0
  367. package/projects/obtservices/graphQL/documents/deleteUserAddress.graphql +3 -0
  368. package/projects/obtservices/graphQL/documents/error.fragments.graphql +10 -0
  369. package/projects/obtservices/graphQL/documents/flights.graphql +830 -0
  370. package/projects/obtservices/graphQL/documents/getCarHireDepots.graphql +13 -0
  371. package/projects/obtservices/graphQL/documents/getConfermaOfficeNames.graphql +11 -0
  372. package/projects/obtservices/graphQL/documents/getConfermaQuicklist.graphql +108 -0
  373. package/projects/obtservices/graphQL/documents/getRailStation.graphql +31 -0
  374. package/projects/obtservices/graphQL/documents/getRailcards.graphql +6 -0
  375. package/projects/obtservices/graphQL/documents/getRiskAlerts.graphql +24 -0
  376. package/projects/obtservices/graphQL/documents/getUserAddresses.graphql +14 -0
  377. package/projects/obtservices/graphQL/documents/getUserCompanyOffices.graphql +18 -0
  378. package/projects/obtservices/graphQL/documents/getUserCurrentCarbonAllowance.graphql +29 -0
  379. package/projects/obtservices/graphQL/documents/getUserMIAutoSuggestValues.graphql +10 -0
  380. package/projects/obtservices/graphQL/documents/getUserPhoneNumbers.graphql +13 -0
  381. package/projects/obtservices/graphQL/documents/getUserRecentSearches.graphql +20 -0
  382. package/projects/obtservices/graphQL/documents/hotels.graphql +242 -0
  383. package/projects/obtservices/graphQL/documents/isPostcodeValid.graphql +3 -0
  384. package/projects/obtservices/graphQL/documents/lookups.graphql +54 -0
  385. package/projects/obtservices/graphQL/documents/lounges.graphql +88 -0
  386. package/projects/obtservices/graphQL/documents/moveItemToADifferentBasket.graphql +9 -0
  387. package/projects/obtservices/graphQL/documents/parking.graphql +79 -0
  388. package/projects/obtservices/graphQL/documents/rail.graphql +645 -0
  389. package/projects/obtservices/graphQL/documents/saveRecentSearch.graphql +5 -0
  390. package/projects/obtservices/graphQL/documents/saveUserAddress.graphql +14 -0
  391. package/projects/obtservices/graphQL/documents/searchAirlines.graphql +32 -0
  392. package/projects/obtservices/graphQL/documents/searchCities.graphql +14 -0
  393. package/projects/obtservices/graphQL/documents/searchConfermaCities.graphql +11 -0
  394. package/projects/obtservices/graphQL/documents/searchEurostar.graphql +810 -0
  395. package/projects/obtservices/graphQL/documents/searchHotelChains.graphql +3 -0
  396. package/projects/obtservices/graphQL/documents/searchIRL.graphql +521 -0
  397. package/projects/obtservices/graphQL/documents/searchPostcodes.graphql +7 -0
  398. package/projects/obtservices/graphQL/documents/searchRailStations.graphql +27 -0
  399. package/projects/obtservices/graphQL/documents/searchUserAddresses.graphql +14 -0
  400. package/projects/obtservices/graphQL/documents/set-basker-item-mi-group.graphql +9 -0
  401. package/projects/obtservices/graphQL/documents/setBasketItemLeadPassenger.graphql +5 -0
  402. package/projects/obtservices/graphQL/documents/setBasketItemMIValue.graphql +16 -0
  403. package/projects/obtservices/graphQL/documents/setBasketItemPaymentMethod.graphql +12 -0
  404. package/projects/obtservices/graphQL/documents/updateBasketNotes.graphql +10 -0
  405. package/projects/obtservices/graphQL/documents/updateBasketTitle.graphql +10 -0
  406. package/projects/obtservices/graphQL/documents/user.fragments.graphql +65 -0
  407. package/projects/obtservices/graphQL/documents/user.graphql +95 -0
  408. package/projects/obtservices/graphQL/documents/validateUserMIFreeValue.graphql +3 -0
  409. package/projects/obtservices/graphQL/schema/schema.graphql +2635 -0
  410. package/projects/obtservices/karma.conf.js +32 -0
  411. package/projects/obtservices/ng-package.json +7 -0
  412. package/projects/obtservices/package-lock.json +5 -0
  413. package/projects/obtservices/package.json +12 -0
  414. package/projects/obtservices/src/obtservices.ts +0 -0
  415. package/projects/obtservices/src/public_api.ts +1 -0
  416. package/projects/obtservices/tsconfig.lib.json +30 -0
  417. package/projects/obtservices/tsconfig.spec.json +17 -0
  418. package/projects/obtservices/tslint.json +17 -0
  419. package/tsconfig.json +36 -0
  420. package/tslint.json +62 -0
@@ -0,0 +1,133 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as moment_ from 'moment';
3
+ import { GetUserBasketsFetcher } from '../fetchers/get-users-baskets-fetcher';
4
+ import { AddItemToBasketUpdater } from '../updaters/add-item-to-basket.updater';
5
+ import { RemoveItemFromBasketUpdater } from '../updaters/remove-item-from-basket.updater';
6
+ import { UserService } from './user.service';
7
+ import { CreateBasketUpdater } from '../updaters/create-basket-updater';
8
+ import { SetBasketItemMiGroupUpdater } from '../updaters/set-basket-item-mi-group';
9
+ import { AddUserToBasketItemUpdater } from '../updaters/addUserToBasketItem';
10
+ import { DeleteBasketUpdater } from '../updaters/remove-basket-updater';
11
+ import { AcceptNewPriceUpdater } from '../updaters/accept-new-price.updater';
12
+ import { ValidateMiFreeValueTester } from '../testers/validate-mi-free-value.tester';
13
+ import { GetBasketFetcher } from '../fetchers/basket-fetcher';
14
+ import { RevalidateBasketUpdater } from '../updaters/revalidate-basket-updater';
15
+ import { SetBasketItemMiValueUpdater } from '../updaters/set-basket-item-mi-value-updater';
16
+ import { SendBasketForApprovalUpdater } from '../updaters/send-basket-for-approval.updater';
17
+ import { GetMiAutoSugestionFetcher } from '../fetchers/getMiAutoSugestions.fetcher';
18
+ import { GetUserFetcher } from '../fetchers/user-fetcher';
19
+ import { BookBasketUpdater } from '../updaters/book-basket-updater';
20
+ import { SetBasketItemLeadPassengerUpdater } from '../updaters/set-basket-item-lead-passenger.updater';
21
+
22
+ import { BaseEnterpriseBasketService } from 'obtservices/base';
23
+ import { HelperRoutines } from '../classes/helpers';
24
+ import {
25
+ AcceptNewPriceGQL,
26
+ AddItemToBasketGQL,
27
+ AddUsersToBasketItemGQL,
28
+ BookBasketGQL,
29
+ CreateBasketGQL,
30
+ DeleteBasketGQL,
31
+ GetUserBasketGQL,
32
+ GetUserBasketsGQL,
33
+ GetUserGQL,
34
+ GetUserMiAutoSuggestValuesGQL,
35
+ MoveItemToADifferentBasketGQL,
36
+ RemoveItemFromBasketGQL,
37
+ RevalidateBasketGQL,
38
+ SendBasketForApprovalGQL,
39
+ SetBasketItemLeadPassengerGQL,
40
+ SetBasketItemMiGroupGQL,
41
+ SetBasketItemMiValueGQL,
42
+ SetBasketItemPaymentMethodGQL,
43
+ UpdateBasketNotesGQL,
44
+ UpdateBasketTitleGQL,
45
+ ValidateUserMiFreeValueGQL
46
+ } from '../types/graphql.angular.types';
47
+ import { ModalOpenerService } from './modal-opener.service';
48
+ import { MoveBasketItemToBasketUpdater } from '../updaters/move-basket-item-to-basket';
49
+ import { UpdateBasketTitleUpdater } from '../updaters/update-basket-title-updater';
50
+ import { UpdateBasketNotesUpdater } from '../updaters/update-basket-notes-updater';
51
+ import { SetPaymentOptionUpdater } from '../updaters/set-payment-option.updater';
52
+
53
+ const moment = moment_;
54
+ const TEMPID = 'TEMPID_';
55
+
56
+ @Injectable({ providedIn: 'root' })
57
+ export class EnterpriseBasketService extends BaseEnterpriseBasketService<
58
+ AcceptNewPriceGQL,
59
+ AddItemToBasketGQL,
60
+ AddUsersToBasketItemGQL,
61
+ CreateBasketGQL,
62
+ GetUserBasketGQL,
63
+ BookBasketGQL,
64
+ DeleteBasketGQL,
65
+ GetUserMiAutoSuggestValuesGQL,
66
+ RemoveItemFromBasketGQL,
67
+ RevalidateBasketGQL,
68
+ SetBasketItemMiGroupGQL,
69
+ SetBasketItemMiValueGQL,
70
+ ValidateUserMiFreeValueGQL,
71
+ SendBasketForApprovalGQL,
72
+ GetUserGQL,
73
+ GetUserBasketsGQL,
74
+ SetBasketItemLeadPassengerGQL,
75
+ MoveItemToADifferentBasketGQL,
76
+ UpdateBasketNotesGQL,
77
+ UpdateBasketTitleGQL,
78
+ SetBasketItemPaymentMethodGQL
79
+ > {
80
+ constructor(
81
+ acceptNewPriceUpdater: AcceptNewPriceUpdater,
82
+ addItemToBasketUpdater: AddItemToBasketUpdater,
83
+ addUserToBasketItem: AddUserToBasketItemUpdater,
84
+ basketCreator: CreateBasketUpdater,
85
+ basketFetcher: GetBasketFetcher,
86
+ bookBasketUpdater: BookBasketUpdater,
87
+ deleteBasketUpdater: DeleteBasketUpdater,
88
+ getMiAutoSugestionFetcher: GetMiAutoSugestionFetcher,
89
+ helpers: HelperRoutines,
90
+ removeItemFromBasketUpdater: RemoveItemFromBasketUpdater,
91
+ revalidateBasketUpdater: RevalidateBasketUpdater,
92
+ setBasketItemMiGroupUpdater: SetBasketItemMiGroupUpdater,
93
+ setBasketItemMiValueUpdater: SetBasketItemMiValueUpdater,
94
+ validateMiFreeValue: ValidateMiFreeValueTester,
95
+ sendBasketForApprovalUpdater: SendBasketForApprovalUpdater,
96
+ getUserFetcher: GetUserFetcher,
97
+ getUserBasketsFetcher: GetUserBasketsFetcher,
98
+ setBasketItemLeadPassengerUpdater: SetBasketItemLeadPassengerUpdater,
99
+ moveItemToADifferentBasket: MoveBasketItemToBasketUpdater,
100
+ updateBasketNotes: UpdateBasketNotesUpdater,
101
+ updateBasketTitle: UpdateBasketTitleUpdater,
102
+ userService: UserService,
103
+ modalService: ModalOpenerService,
104
+ setBasketItemPaymentOption: SetPaymentOptionUpdater
105
+ ) {
106
+ super(
107
+ acceptNewPriceUpdater,
108
+ addItemToBasketUpdater,
109
+ addUserToBasketItem,
110
+ basketCreator,
111
+ basketFetcher,
112
+ bookBasketUpdater,
113
+ deleteBasketUpdater,
114
+ getMiAutoSugestionFetcher,
115
+ helpers,
116
+ removeItemFromBasketUpdater,
117
+ revalidateBasketUpdater,
118
+ setBasketItemMiGroupUpdater,
119
+ setBasketItemMiValueUpdater,
120
+ validateMiFreeValue,
121
+ sendBasketForApprovalUpdater,
122
+ getUserFetcher,
123
+ getUserBasketsFetcher,
124
+ setBasketItemLeadPassengerUpdater,
125
+ moveItemToADifferentBasket,
126
+ updateBasketNotes,
127
+ updateBasketTitle,
128
+ setBasketItemPaymentOption,
129
+ userService,
130
+ modalService
131
+ );
132
+ }
133
+ }
@@ -0,0 +1,19 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Environment } from '../classes/environment';
3
+ import { HelperRoutines } from '../classes/helpers';
4
+ import { HotelAvalibilityQuoteFetcher } from '../fetchers/hotel-avaliability-fetcher';
5
+ import { StorageService } from './storage.service';
6
+ import { BaseHotelAvalibilityService } from 'obtservices/base';
7
+ import { GetMultipleHotelsAvailabilityGQL } from '../../../types';
8
+
9
+ @Injectable({ providedIn: 'root' })
10
+ export class HotelAvalibilityService extends BaseHotelAvalibilityService<GetMultipleHotelsAvailabilityGQL> {
11
+ constructor(
12
+ avalibilityFethcer: HotelAvalibilityQuoteFetcher,
13
+ sessionStorage: StorageService,
14
+ helpers: HelperRoutines,
15
+ environment: Environment
16
+ ) {
17
+ super(avalibilityFethcer, sessionStorage, helpers, environment);
18
+ }
19
+ }
@@ -0,0 +1,252 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { map, timeout, catchError } from 'rxjs/operators';
3
+ import jwt_decode from 'jwt-decode';
4
+ import { WebTokenService } from './webtoken.service';
5
+ import { StorageService } from './storage.service';
6
+ import { AbstractHttpCallService, URLS } from 'obtservices/base';
7
+ import { Observable, of, throwError } from 'rxjs';
8
+ import { Environment } from '../classes/environment';
9
+ import { HttpClient, HttpHeaders } from '@angular/common/http';
10
+ import { Router } from '@angular/router';
11
+
12
+ @Injectable({ providedIn: 'root' })
13
+ abstract class BaseHttpCallService extends AbstractHttpCallService {
14
+ constructor(
15
+ private http: HttpClient,
16
+ private router: Router,
17
+ private storageSession: StorageService,
18
+ protected environment: Environment
19
+ ) {
20
+ super();
21
+ }
22
+
23
+ formEncodedPost(url: URLS, body: any = null, responseType = 'json'): Observable<any> {
24
+ // console.log('--- Form Encoded Posting: ', body);
25
+
26
+ return this.http
27
+ .post(this.makeUrl(url), body, {
28
+ headers: this.getHeaders(),
29
+ withCredentials: true,
30
+ responseType: responseType as 'json'
31
+ })
32
+ .pipe(
33
+ timeout(this.environment.httpCallTimeout),
34
+ map((data) => {
35
+ return this.handleResponse(data);
36
+ }),
37
+ catchError((error: any) => {
38
+ return this.handleError(error);
39
+ })
40
+ );
41
+ }
42
+
43
+ /*
44
+ * @desc - form encoded post, but with a timeout - default 30 seconds
45
+ * if timeout occurs it is handled like a normal error (caught in the catch block)
46
+ **/
47
+ timeoutFormEncodedPost(
48
+ url: URLS,
49
+ body: any = null,
50
+ reTimeout = 300
51
+ ): Observable<any> {
52
+ return this.http
53
+ .post(this.makeUrl(url), body, {
54
+ headers: this.getHeaders(),
55
+ withCredentials: true
56
+ })
57
+ .pipe(
58
+ timeout(reTimeout * 1000),
59
+ map(
60
+ (data) => {
61
+ return this.handleResponse(data);
62
+ }
63
+ /*(error) => {console.log(error);return false;}*/
64
+ ),
65
+ catchError((error: any) => {
66
+ console.log(error);
67
+ return this.handleError(error, true);
68
+ })
69
+ );
70
+ }
71
+
72
+ formEncodedPostNoErrorHandling(url: URLS, body: any = null): Observable<any> {
73
+ return this.http
74
+ .post(this.makeUrl(url), body, {
75
+ headers: this.getHeaders(),
76
+ withCredentials: true
77
+ })
78
+ .pipe(
79
+ timeout(this.environment.httpCallTimeout),
80
+ map(
81
+ (data) => {
82
+ return this.handleResponse(data);
83
+ }
84
+ /*(error) => {console.log(error);return false;}*/
85
+ ),
86
+ catchError((error: any) => {
87
+ console.log(error);
88
+ return throwError(error);
89
+ })
90
+ );
91
+ }
92
+
93
+ /*
94
+ @desc - call a url through post, with a Json Object as data (angular default)
95
+ **/
96
+ post(url: URLS, data: any = null): Observable<any> {
97
+ return this.http
98
+ .post(this.makeUrl(url), data, {
99
+ headers: this.getHeaders(),
100
+ withCredentials: true
101
+ })
102
+ .pipe(
103
+ timeout(this.environment.httpCallTimeout),
104
+ map(
105
+ (response) => {
106
+ return this.handleResponse(response);
107
+ }
108
+ /*(error) => {console.log(error);return false;}*/
109
+ ),
110
+ catchError((error: any) => {
111
+ return this.handleError(error);
112
+ })
113
+ );
114
+ }
115
+
116
+ /*
117
+ @desc - call a Angular standard get request (application/json headers)
118
+ **/
119
+ get(url: URLS, params = {}): Observable<any> {
120
+ console.log('+++ Get Called With Params +++', params);
121
+ return this.http.get(this.makeUrl(url), params).pipe(
122
+ timeout(this.environment.httpCallTimeout),
123
+ map((response) => {
124
+ return this.handleResponse(response);
125
+ }),
126
+ catchError((error: any) => {
127
+ return throwError(error);
128
+ })
129
+ );
130
+ }
131
+
132
+ /*
133
+ @desc - this will determine if there is a login error for the request or not, since this is a potential error for every call
134
+ **/
135
+ handleResponse(data: any): any {
136
+ // console.log('Handle Response Called');
137
+ /*console.log('received %O', data);*/
138
+ return data;
139
+ }
140
+
141
+ resetLogout() {
142
+ this.storageSession.clearSessionData();
143
+ this.router.navigate(['logon']);
144
+ }
145
+ /*
146
+ @desc - handle any fatal errors 404's 500's other generic http errors
147
+ **/
148
+ handleError(errorVal: any, skipTimeoutMessage: boolean = false): any {
149
+ console.log('Handle Error Called');
150
+ return throwError(errorVal);
151
+ }
152
+
153
+ /*
154
+ * Using the keys of the given object as parameter names create a parameter string url encoding the values.
155
+ * The function expects the values to be strings.
156
+ * @param obj
157
+ */
158
+ public serialize(obj: { [key: string]: string }): string {
159
+ return Object.keys(obj).reduce((toReturn: string, key: string) => {
160
+ return (
161
+ (toReturn.length ? toReturn + '&' : '') +
162
+ key +
163
+ '=' +
164
+ encodeURIComponent(
165
+ typeof obj[key] === 'object' ? JSON.stringify(obj[key]) : obj[key]
166
+ )
167
+ );
168
+ }, '');
169
+ }
170
+
171
+ abstract getHeaders(): HttpHeaders;
172
+ abstract makeUrl(url: URLS): string;
173
+ }
174
+
175
+ /*
176
+ TODO REMOVE HttpCallService, as it's only used to let the system compile during transition.
177
+ */
178
+
179
+ @Injectable({ providedIn: 'root' })
180
+ export class HttpCallService extends BaseHttpCallService {
181
+ getHeaders(): HttpHeaders {
182
+ return new HttpHeaders().set(
183
+ 'Content-Type',
184
+ 'application/x-www-form-urlencoded'
185
+ );
186
+ }
187
+ makeUrl(url: URLS): string {
188
+ return url.toString();
189
+ }
190
+ get(url: string, params = {}): Observable<any> {
191
+ return of({});
192
+ }
193
+ post(url: string, data: any = null): Observable<any> {
194
+ return of({});
195
+ }
196
+ formEncodedPostNoErrorHandling(url: URLS, body: any = null): Observable<any> {
197
+ return of({});
198
+ }
199
+ timeoutFormEncodedPost(
200
+ url: URLS,
201
+ body: any = null,
202
+ reTimeout = 300
203
+ ): Observable<any> {
204
+ return of({});
205
+ }
206
+ formEncodedPost(url: URLS, body: any = null): Observable<any> {
207
+ return of({});
208
+ }
209
+ }
210
+
211
+ @Injectable({ providedIn: 'root' })
212
+ export class ExternalHttpService extends BaseHttpCallService {
213
+ getHeaders() {
214
+ return new HttpHeaders().set(
215
+ 'Content-Type',
216
+ 'application/x-www-form-urlencoded'
217
+ );
218
+ }
219
+ makeUrl(url: URLS): string {
220
+ return url.toString();
221
+ }
222
+ }
223
+
224
+ @Injectable({ providedIn: 'root' })
225
+ export class AuthHttpService extends BaseHttpCallService {
226
+ constructor(
227
+ http: HttpClient,
228
+ router: Router,
229
+ storageSession: StorageService,
230
+ @Inject(Environment) environment: Environment,
231
+ private webTokenService: WebTokenService
232
+ ) {
233
+ super(http, router, storageSession, environment);
234
+ }
235
+ getHeaders() {
236
+ return new HttpHeaders().set('Content-Type', 'application/json');
237
+ }
238
+ makeUrl(url: URLS): string {
239
+ return this.environment.authURL + url.toString();
240
+ }
241
+
242
+ /*
243
+ @desc - this will determine if there is a login error for the request or not, since this is a potential error for every call
244
+ **/
245
+ handleResponse(data: any): any {
246
+ if (typeof data === 'object' && data.jwt) {
247
+ this.webTokenService.jwtToken = data.jwt;
248
+ data.jwtObject = jwt_decode(data.jwt);
249
+ }
250
+ return data;
251
+ }
252
+ }
@@ -0,0 +1,40 @@
1
+ import { Router } from '@angular/router';
2
+ import { AuthHttpService } from './http-call.service';
3
+ import { Injectable } from '@angular/core';
4
+ import { UserService } from './user.service';
5
+ import { ModalOpenerService } from './modal-opener.service';
6
+ import { StorageService } from './storage.service';
7
+ import { AuthInfo, LoginResponse, BaseLogonService } from 'obtservices/base';
8
+ import { Environment } from '../classes/environment';
9
+ import { EventMessenager } from '../classes/event-messenager';
10
+
11
+ @Injectable({ providedIn: 'root' })
12
+ export class LogonService extends BaseLogonService {
13
+ loading = false;
14
+ isLoggedIn = false;
15
+ redirectUrl = '';
16
+ authInfo: AuthInfo;
17
+ loginResponse: LoginResponse;
18
+ timeoutSubscription: number;
19
+ refreshPromise: Promise<boolean> = null;
20
+
21
+ constructor(
22
+ userService: UserService,
23
+ modalService: ModalOpenerService,
24
+ http: AuthHttpService,
25
+ router: Router,
26
+ eventMessenager: EventMessenager,
27
+ storageService: StorageService,
28
+ environment: Environment
29
+ ) {
30
+ super(
31
+ userService,
32
+ modalService,
33
+ http,
34
+ router,
35
+ eventMessenager,
36
+ storageService,
37
+ environment
38
+ );
39
+ }
40
+ }
@@ -0,0 +1,9 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BaseModalOpenerService } from 'obtservices/base';
3
+
4
+ @Injectable({ providedIn: 'root' })
5
+ export class ModalOpenerService extends BaseModalOpenerService {
6
+ constructor() {
7
+ super();
8
+ }
9
+ }
@@ -0,0 +1,21 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { GetUserBasketsGQL, SearchUserCanBookForGQL } from '../types/graphql.angular.types';
3
+ import { GetUserBasketsFetcher } from '../fetchers/get-users-baskets-fetcher';
4
+ import { SearchUsersCanBookForFetcher } from '../fetchers/search-users-can-book-for-fetcher';
5
+ import { BaseEnterpriseMyBookingsService } from 'obtservices/base';
6
+
7
+ @Injectable({ providedIn: 'root' })
8
+ export class EnterpriseMyBookingsService extends BaseEnterpriseMyBookingsService<
9
+ GetUserBasketsGQL,
10
+ SearchUserCanBookForGQL
11
+ > {
12
+ constructor(
13
+ getUserBasketsFetcher: GetUserBasketsFetcher,
14
+ searchUsersCanBookForFetcher: SearchUsersCanBookForFetcher
15
+ ) {
16
+ super(
17
+ getUserBasketsFetcher,
18
+ searchUsersCanBookForFetcher
19
+ );
20
+ }
21
+ }
@@ -0,0 +1,11 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BaseRouteHappyService } from 'obtservices/base';
3
+ import { HelperRoutines } from '../classes/helpers';
4
+ import { HttpCallService } from './http-call.service';
5
+
6
+ @Injectable({ providedIn: 'root' })
7
+ export class RouteHappyService extends BaseRouteHappyService {
8
+ constructor(httpService: HttpCallService, helpers: HelperRoutines) {
9
+ super(httpService, helpers);
10
+ }
11
+ }