@qite/tide-client 1.1.54 → 1.1.56

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 (537) hide show
  1. package/build/index.d.ts +27 -15
  2. package/build/index.js +4958 -4837
  3. package/build/index.js.map +1 -1
  4. package/build/services/odata.service.d.ts +8 -2
  5. package/build/types/{offer/booking-v2 → booking-v2}/index.d.ts +3 -3
  6. package/build/types/booking-v2/request/available-countries-request.d.ts +4 -0
  7. package/build/types/booking-v2/request/available-flights-request.d.ts +8 -0
  8. package/build/types/booking-v2/request/bookable-dates-request.d.ts +4 -0
  9. package/{src/types/offer/address.ts → build/types/booking-v2/request/booking-package-address.d.ts} +14 -11
  10. package/build/types/booking-v2/request/booking-package-book-request.d.ts +24 -0
  11. package/build/types/{offer/booking-v2 → booking-v2}/request/booking-package-customer-request.d.ts +4 -4
  12. package/build/types/booking-v2/request/booking-package-destination.d.ts +9 -0
  13. package/build/types/booking-v2/request/booking-package-details-request.d.ts +21 -0
  14. package/build/types/booking-v2/request/booking-package-flight-pool-request.d.ts +12 -0
  15. package/build/types/booking-v2/request/booking-package-request.d.ts +5 -0
  16. package/build/types/booking-v2/request/booking-package-search-request.d.ts +27 -0
  17. package/build/types/{offer/booking-v2 → booking-v2}/request/booking-package-update-request.d.ts +4 -4
  18. package/build/types/{offer/booking-v2 → booking-v2}/request/booking-package-voucher-request.d.ts +4 -4
  19. package/build/types/{offer/booking-v2 → booking-v2}/request/index.d.ts +18 -14
  20. package/build/types/booking-v2/request/prices-request.d.ts +17 -0
  21. package/build/types/booking-v2/request/selected-flight.d.ts +6 -0
  22. package/build/types/booking-v2/request/selected-hotel.d.ts +5 -0
  23. package/build/types/{offer/booking-v2/request/tour-codes-request.d.ts → booking-v2/request/tour-codes.request.d.ts} +3 -3
  24. package/build/types/booking-v2/request/transport-dates-request.d.ts +14 -0
  25. package/build/types/booking-v2/response/available-country.d.ts +5 -0
  26. package/build/types/booking-v2/response/available-flight.d.ts +4 -0
  27. package/build/types/booking-v2/response/base-price.d.ts +7 -0
  28. package/build/types/booking-v2/response/bookable-dates.d.ts +4 -0
  29. package/build/types/booking-v2/response/booking-package-allotment-info.d.ts +17 -0
  30. package/build/types/booking-v2/response/booking-package-dossier.d.ts +6 -0
  31. package/build/types/{offer/booking-v2 → booking-v2}/response/booking-package-flight-pool.d.ts +5 -5
  32. package/build/types/{offer/booking-v2 → booking-v2}/response/booking-package-hotel-pool.d.ts +4 -4
  33. package/build/types/booking-v2/response/booking-package-item.d.ts +39 -0
  34. package/build/types/booking-v2/response/booking-price-detail.d.ts +17 -0
  35. package/build/types/{offer/booking-v2 → booking-v2}/response/booking-price-details.d.ts +14 -14
  36. package/build/types/booking-v2/response/booking-price-per-pax.d.ts +4 -0
  37. package/build/types/booking-v2/response/booking-product-notification.d.ts +7 -0
  38. package/build/types/booking-v2/response/booking-room-status-option.d.ts +5 -0
  39. package/build/types/{offer/booking-v2 → booking-v2}/response/booking-room-status.d.ts +5 -5
  40. package/build/types/booking-v2/response/booking-travel-agent.d.ts +7 -0
  41. package/build/types/booking-v2/response/booking-validity-line.d.ts +4 -0
  42. package/build/types/{offer/booking-v2 → booking-v2}/response/booking-voucher-result.d.ts +3 -3
  43. package/build/types/booking-v2/response/changed-line.d.ts +4 -0
  44. package/build/types/{offer/booking-v2 → booking-v2}/response/index.d.ts +20 -16
  45. package/build/types/booking-v2/response/tide-response.d.ts +8 -0
  46. package/build/types/{offer/booking-v2 → booking-v2}/response/tour-codes-response.d.ts +3 -3
  47. package/build/types/booking-v2/response/transport-dates-response.d.ts +4 -0
  48. package/build/types/{offer/booking-v2 → booking-v2}/shared/airline-booking-package-option.d.ts +2 -3
  49. package/build/types/{offer/booking-v2 → booking-v2}/shared/airport-booking-package-option.d.ts +2 -3
  50. package/build/types/{offer/booking-v2 → booking-v2}/shared/booking-airline-group.d.ts +6 -6
  51. package/build/types/{offer/booking-v2 → booking-v2}/shared/booking-airport-group.d.ts +6 -6
  52. package/build/types/booking-v2/shared/booking-option-group.d.ts +5 -0
  53. package/build/types/{offer/booking-v2 → booking-v2}/shared/booking-option-pax.d.ts +13 -13
  54. package/build/types/{offer/booking-v2 → booking-v2}/shared/booking-option-unit.d.ts +12 -12
  55. package/build/types/booking-v2/shared/booking-package-availability.d.ts +9 -0
  56. package/build/types/booking-v2/shared/booking-package-flight-meta-data-line.d.ts +18 -0
  57. package/build/types/booking-v2/shared/booking-package-flight-meta-data.d.ts +10 -0
  58. package/build/types/booking-v2/shared/booking-package-flight.d.ts +15 -0
  59. package/build/types/{package-room-option.d.ts → booking-v2/shared/booking-package-hotel-option.d.ts} +10 -8
  60. package/build/types/{offer/booking-v2 → booking-v2}/shared/booking-package-hotel-room.d.ts +5 -5
  61. package/build/types/booking-v2/shared/booking-package-hotel.d.ts +22 -0
  62. package/build/types/booking-v2/shared/booking-package-line.d.ts +16 -0
  63. package/build/types/booking-v2/shared/booking-package-option.d.ts +47 -0
  64. package/build/types/booking-v2/shared/booking-package-pax.d.ts +17 -0
  65. package/build/types/{offer/booking-v2 → booking-v2}/shared/booking-package-request-room.d.ts +5 -5
  66. package/build/types/booking-v2/shared/booking-package-room-option.d.ts +21 -0
  67. package/build/types/{offer/booking-v2 → booking-v2}/shared/booking-package-room.d.ts +5 -5
  68. package/build/types/booking-v2/shared/booking-package-tag.d.ts +5 -0
  69. package/build/types/booking-v2/shared/booking-package.d.ts +11 -0
  70. package/build/types/{offer/booking-v2 → booking-v2}/shared/index.d.ts +24 -23
  71. package/build/types/{offer/booking-v2 → booking-v2}/shared/per-booking-package-option.d.ts +9 -9
  72. package/build/types/booking-v2/shared/per-package-option.d.ts +9 -0
  73. package/build/types/{offer/booking-v2 → booking-v2}/shared/per-pax-package-option.d.ts +5 -5
  74. package/build/types/{offer/booking-v2 → booking-v2}/shared/per-unit-package-option.d.ts +7 -7
  75. package/build/types/{offer/booking-v2 → booking-v2}/shared/room-option-pax-type.d.ts +4 -4
  76. package/build/types/company/agent/agent-invoice-item.d.ts +9 -9
  77. package/build/types/company/agent/change-entry-agent-surcharge-action.model.d.ts +5 -5
  78. package/build/types/company/agent/entry-totals.d.ts +7 -7
  79. package/build/types/company/agent/index.d.ts +3 -3
  80. package/build/types/company/agent-print-action-request.d.ts +11 -11
  81. package/build/types/company/agent-print-action.d.ts +6 -6
  82. package/build/types/company/custom-entry-status-item.d.ts +6 -6
  83. package/build/types/company/index.d.ts +5 -5
  84. package/build/types/company/number-string-pair.d.ts +4 -4
  85. package/build/types/enums/allotment-type.d.ts +5 -5
  86. package/build/types/enums/availability-search-type.d.ts +4 -4
  87. package/build/types/enums/data-type.d.ts +14 -14
  88. package/build/types/enums/dossier-type.d.ts +6 -6
  89. package/build/types/enums/entry-line-flag.d.ts +6 -6
  90. package/build/types/enums/entry-line-status.d.ts +19 -19
  91. package/build/types/enums/entry-status.d.ts +8 -8
  92. package/build/types/enums/export-status.d.ts +5 -5
  93. package/build/types/enums/gender.d.ts +5 -5
  94. package/build/types/enums/index.d.ts +17 -17
  95. package/build/types/enums/meta-data-type.d.ts +10 -10
  96. package/build/types/enums/payment-type.d.ts +6 -6
  97. package/build/types/enums/price-chart-type.d.ts +4 -4
  98. package/build/types/enums/print-action-group.d.ts +10 -10
  99. package/build/types/enums/requirement-type.d.ts +5 -5
  100. package/build/types/enums/room-type.d.ts +8 -8
  101. package/build/types/enums/sale-type.d.ts +4 -4
  102. package/build/types/enums/service-type.d.ts +31 -31
  103. package/build/types/index.d.ts +8 -6
  104. package/build/types/mollie/index.d.ts +2 -0
  105. package/build/types/mollie/mollie-payment-request.d.ts +6 -0
  106. package/build/types/{aapi → mollie}/mollie-payment.d.ts +3 -3
  107. package/build/types/odata/column.d.ts +8 -8
  108. package/build/types/odata/filter-item.d.ts +14 -14
  109. package/build/types/odata/index.d.ts +3 -3
  110. package/build/types/odata/odata-params.d.ts +3 -3
  111. package/build/types/offer/additional-services.d.ts +6 -6
  112. package/build/types/offer/confirmed-dossier-check.d.ts +6 -6
  113. package/build/types/offer/country-item.d.ts +5 -5
  114. package/build/types/offer/crm-contact-request.d.ts +36 -28
  115. package/build/types/offer/customer-request.d.ts +5 -5
  116. package/build/types/offer/dossier-default-product.d.ts +14 -14
  117. package/build/types/offer/dossier-pax-item.d.ts +4 -4
  118. package/build/types/offer/dossier-view-result.d.ts +48 -48
  119. package/build/types/offer/entry-check-response.d.ts +8 -8
  120. package/build/types/offer/entry-line-meta-data.d.ts +5 -5
  121. package/build/types/offer/entry-line-pax.d.ts +8 -8
  122. package/build/types/offer/entry-line.d.ts +73 -67
  123. package/build/types/offer/entry-price-line.d.ts +40 -40
  124. package/build/types/offer/entry-room2.d.ts +5 -5
  125. package/build/types/offer/entry.d.ts +65 -55
  126. package/build/types/offer/flight-meta-data-line.d.ts +16 -16
  127. package/build/types/offer/flight-meta-data.d.ts +14 -14
  128. package/build/types/offer/flight-pool.d.ts +5 -5
  129. package/build/types/offer/index.d.ts +40 -76
  130. package/build/types/offer/item-tag.d.ts +3 -3
  131. package/build/types/offer/language.d.ts +5 -5
  132. package/build/types/offer/member-confirmation-request.d.ts +5 -5
  133. package/build/types/offer/member-forgot-password-request.d.ts +4 -4
  134. package/build/types/offer/member-info.d.ts +10 -10
  135. package/build/types/offer/member-login-request.d.ts +4 -4
  136. package/build/types/offer/member-login-response.d.ts +3 -3
  137. package/build/types/offer/member-reset-password-request.d.ts +4 -4
  138. package/build/types/offer/note.d.ts +16 -16
  139. package/build/types/offer/page-result.d.ts +5 -5
  140. package/build/types/offer/pax.d.ts +29 -29
  141. package/build/types/offer/payment.d.ts +20 -20
  142. package/build/types/offer/person-country-preference.d.ts +7 -7
  143. package/build/types/offer/person-location-preference.d.ts +7 -7
  144. package/build/types/offer/person-oord-preference.d.ts +7 -7
  145. package/build/types/offer/person-period-date-range-preference.d.ts +6 -6
  146. package/build/types/offer/person-period-preference.d.ts +7 -7
  147. package/build/types/offer/person-region-preference.d.ts +7 -7
  148. package/build/types/offer/person-tour-group-preference.d.ts +7 -7
  149. package/build/types/offer/product-notification-result.d.ts +9 -9
  150. package/build/types/offer/web-contact-form-request.d.ts +13 -13
  151. package/build/types/offer/web-contact-has-tag-request.d.ts +4 -4
  152. package/build/types/tide-client-config.d.ts +5 -5
  153. package/build/types/{offer/affiliates.d.ts → web/affiliate.d.ts} +5 -5
  154. package/build/types/web/generate-booking-accommodation-request.d.ts +6 -0
  155. package/build/types/web/index.d.ts +2 -0
  156. package/build/utils/api.d.ts +23 -2
  157. package/build/utils/booking-v2-client.d.ts +139 -18
  158. package/build/utils/common-client.d.ts +26 -2
  159. package/build/utils/json.d.ts +2 -2
  160. package/build/utils/member-client.d.ts +32 -7
  161. package/build/utils/mollie-client.d.ts +15 -7
  162. package/build/utils/search-client.d.ts +12 -9
  163. package/build/utils/web-agent-client.d.ts +72 -23
  164. package/build/utils/web-client.d.ts +44 -22
  165. package/build/utils/web-contact-client.d.ts +23 -11
  166. package/build/utils/web-file.d.ts +14 -10
  167. package/package.json +64 -64
  168. package/rollup.config.js +20 -20
  169. package/src/index.ts +43 -71
  170. package/src/services/odata.service.ts +158 -158
  171. package/src/types/{offer/booking-v2 → booking-v2}/index.ts +3 -3
  172. package/src/types/booking-v2/request/available-countries-request.ts +4 -0
  173. package/src/types/booking-v2/request/available-flights-request.ts +8 -0
  174. package/src/types/{offer/booking-v2 → booking-v2}/request/bookable-dates-request.ts +4 -4
  175. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-address.ts +14 -14
  176. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-book-request.ts +26 -26
  177. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-customer-request.ts +4 -4
  178. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-destination.ts +9 -9
  179. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-details-request.ts +24 -24
  180. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-flight-pool-request.ts +13 -13
  181. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-request.ts +5 -5
  182. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-search-request.ts +30 -30
  183. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-update-request.ts +5 -5
  184. package/src/types/{offer/booking-v2 → booking-v2}/request/booking-package-voucher-request.ts +4 -4
  185. package/src/types/{offer/booking-v2 → booking-v2}/request/index.ts +18 -14
  186. package/src/types/booking-v2/request/prices-request.ts +19 -0
  187. package/src/types/{offer/booking-v2 → booking-v2}/request/selected-flight.ts +6 -6
  188. package/src/types/{offer/booking-v2 → booking-v2}/request/selected-hotel.ts +5 -5
  189. package/src/types/{offer/booking-v2 → booking-v2}/request/tour-codes.request.ts +3 -3
  190. package/src/types/booking-v2/request/transport-dates-request.ts +14 -0
  191. package/src/types/booking-v2/response/available-country.ts +5 -0
  192. package/src/types/booking-v2/response/available-flight.ts +4 -0
  193. package/src/types/{offer → booking-v2/response}/base-price.ts +7 -6
  194. package/src/types/{offer/booking-v2 → booking-v2}/response/bookable-dates.ts +4 -4
  195. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-package-allotment-info.ts +17 -17
  196. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-package-dossier.ts +6 -6
  197. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-package-flight-pool.ts +6 -6
  198. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-package-hotel-pool.ts +5 -5
  199. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-package-item.ts +40 -40
  200. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-price-detail.ts +20 -20
  201. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-price-details.ts +15 -15
  202. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-price-per-pax.ts +4 -4
  203. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-product-notification.ts +7 -7
  204. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-room-status-option.ts +5 -5
  205. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-room-status.ts +6 -6
  206. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-travel-agent.ts +7 -7
  207. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-validity-line.ts +4 -4
  208. package/src/types/{offer/booking-v2 → booking-v2}/response/booking-voucher-result.ts +3 -3
  209. package/src/types/{offer/booking-v2 → booking-v2}/response/changed-line.ts +4 -4
  210. package/src/types/{offer/booking-v2 → booking-v2}/response/index.ts +20 -16
  211. package/src/types/{offer/booking-v2 → booking-v2}/response/tide-response.ts +6 -6
  212. package/src/types/{offer/booking-v2 → booking-v2}/response/tour-codes-response.ts +3 -3
  213. package/src/types/booking-v2/response/transport-dates-response.ts +4 -0
  214. package/src/types/{offer/booking-v2 → booking-v2}/shared/airline-booking-package-option.ts +3 -3
  215. package/src/types/{offer/booking-v2 → booking-v2}/shared/airport-booking-package-option.ts +3 -3
  216. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-airline-group.ts +7 -7
  217. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-airport-group.ts +7 -7
  218. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-option-group.ts +5 -5
  219. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-option-pax.ts +14 -14
  220. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-option-unit.ts +13 -13
  221. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-availability.ts +9 -9
  222. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-flight-meta-data-line.ts +18 -17
  223. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-flight-meta-data.ts +11 -11
  224. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-flight.ts +16 -15
  225. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-hotel-option.ts +10 -10
  226. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-hotel-room.ts +6 -6
  227. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-hotel.ts +27 -27
  228. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-line.ts +17 -17
  229. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-option.ts +55 -55
  230. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-pax.ts +19 -19
  231. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-request-room.ts +6 -6
  232. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-room-option.ts +22 -22
  233. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-room.ts +6 -6
  234. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package-tag.ts +5 -5
  235. package/src/types/{offer/booking-v2 → booking-v2}/shared/booking-package.ts +13 -13
  236. package/src/types/{offer/booking-v2 → booking-v2}/shared/index.ts +24 -23
  237. package/src/types/{offer/booking-v2 → booking-v2}/shared/per-booking-package-option.ts +10 -10
  238. package/src/types/{offer/booking-v2 → booking-v2}/shared/per-package-option.ts +10 -10
  239. package/src/types/{offer/booking-v2 → booking-v2}/shared/per-pax-package-option.ts +6 -6
  240. package/src/types/{offer/booking-v2 → booking-v2}/shared/per-unit-package-option.ts +8 -8
  241. package/src/types/{offer/booking-v2 → booking-v2}/shared/room-option-pax-type.ts +4 -4
  242. package/src/types/company/agent/agent-invoice-item.ts +9 -9
  243. package/src/types/company/agent/change-entry-agent-surcharge-action.model.ts +5 -5
  244. package/src/types/company/agent/entry-totals.ts +7 -7
  245. package/src/types/company/agent/index.ts +3 -3
  246. package/src/types/company/agent-print-action-request.ts +11 -11
  247. package/src/types/company/agent-print-action.ts +7 -7
  248. package/src/types/company/custom-entry-status-item.ts +6 -6
  249. package/src/types/company/index.ts +5 -5
  250. package/src/types/company/number-string-pair.ts +4 -4
  251. package/src/types/enums/allotment-type.ts +5 -5
  252. package/src/types/enums/availability-search-type.ts +4 -4
  253. package/src/types/enums/data-type.ts +14 -14
  254. package/src/types/enums/dossier-type.ts +6 -6
  255. package/src/types/enums/entry-line-flag.ts +6 -6
  256. package/src/types/enums/entry-line-status.ts +19 -19
  257. package/src/types/enums/entry-status.ts +8 -8
  258. package/src/types/enums/export-status.ts +5 -5
  259. package/src/types/enums/gender.ts +5 -5
  260. package/src/types/enums/index.ts +17 -17
  261. package/src/types/enums/meta-data-type.ts +10 -10
  262. package/src/types/enums/payment-type.ts +6 -6
  263. package/src/types/enums/price-chart-type.ts +4 -4
  264. package/src/types/enums/print-action-group.ts +10 -10
  265. package/src/types/enums/requirement-type.ts +5 -5
  266. package/src/types/enums/room-type.ts +8 -8
  267. package/src/types/enums/sale-type.ts +4 -4
  268. package/src/types/enums/service-type.ts +31 -31
  269. package/src/types/index.ts +8 -28
  270. package/src/types/mollie/index.ts +2 -0
  271. package/src/types/{aapi → mollie}/mollie-payment-request.ts +6 -6
  272. package/src/types/{aapi → mollie}/mollie-payment.ts +3 -3
  273. package/src/types/odata/column.ts +8 -8
  274. package/src/types/odata/filter-item.ts +14 -14
  275. package/src/types/odata/index.ts +3 -3
  276. package/src/types/odata/odata-params.ts +3 -3
  277. package/src/types/offer/additional-services.ts +6 -6
  278. package/src/types/offer/confirmed-dossier-check.ts +6 -6
  279. package/src/types/offer/country-item.ts +5 -5
  280. package/src/types/offer/crm-contact-request.ts +37 -37
  281. package/src/types/offer/customer-request.ts +5 -5
  282. package/src/types/offer/dossier-default-product.ts +14 -14
  283. package/src/types/offer/dossier-view-result.ts +49 -49
  284. package/src/types/offer/entry-check-response.ts +5 -5
  285. package/src/types/offer/entry-line-meta-data.ts +5 -5
  286. package/src/types/offer/entry-line-pax.ts +9 -9
  287. package/src/types/offer/entry-line.ts +74 -74
  288. package/src/types/offer/entry-price-line.ts +40 -40
  289. package/src/types/offer/entry-room2.ts +5 -5
  290. package/src/types/offer/entry.ts +66 -66
  291. package/src/types/offer/flight-meta-data-line.ts +16 -16
  292. package/src/types/offer/flight-meta-data.ts +15 -15
  293. package/src/types/offer/flight-pool.ts +6 -6
  294. package/src/types/offer/index.ts +40 -76
  295. package/src/types/offer/item-tag.ts +3 -3
  296. package/src/types/offer/language.ts +5 -5
  297. package/src/types/offer/member-confirmation-request.ts +5 -5
  298. package/src/types/offer/member-forgot-password-request.ts +4 -4
  299. package/src/types/offer/member-info.ts +10 -10
  300. package/src/types/offer/member-login-request.ts +4 -4
  301. package/src/types/offer/member-login-response.ts +3 -3
  302. package/src/types/offer/member-reset-password-request.ts +4 -4
  303. package/src/types/offer/note.ts +16 -16
  304. package/src/types/offer/page-result.ts +5 -5
  305. package/src/types/offer/pax.ts +30 -30
  306. package/src/types/offer/payment.ts +20 -20
  307. package/src/types/offer/person-country-preference.ts +7 -7
  308. package/src/types/offer/person-location-preference.ts +7 -7
  309. package/src/types/offer/person-oord-preference.ts +7 -7
  310. package/src/types/offer/person-period-date-range-preference.ts +6 -6
  311. package/src/types/offer/person-period-preference.ts +7 -7
  312. package/src/types/offer/person-region-preference.ts +7 -7
  313. package/src/types/offer/person-tour-group-preference.ts +7 -7
  314. package/src/types/offer/product-notification-result.ts +9 -9
  315. package/src/types/offer/web-contact-form-request.ts +13 -13
  316. package/src/types/offer/web-contact-has-tag-request.ts +4 -4
  317. package/src/types/tide-client-config.ts +5 -5
  318. package/src/types/{offer → web}/affiliate.ts +5 -5
  319. package/src/types/web/generate-booking-accommodation-request.ts +6 -0
  320. package/src/types/web/index.ts +2 -0
  321. package/src/utils/api.ts +82 -54
  322. package/src/utils/booking-v2-client.ts +318 -224
  323. package/src/utils/common-client.ts +69 -44
  324. package/src/utils/json.ts +26 -26
  325. package/src/utils/member-client.ts +76 -76
  326. package/src/utils/mollie-client.ts +27 -27
  327. package/src/utils/search-client.ts +22 -22
  328. package/src/utils/web-agent-client.ts +176 -176
  329. package/src/utils/web-client.ts +74 -58
  330. package/src/utils/web-contact-client.ts +43 -43
  331. package/src/utils/web-file.ts +24 -24
  332. package/tests/webClient.test.ts +38 -38
  333. package/tests/webContactClient.test.ts +61 -61
  334. package/tsconfig.json +23 -23
  335. package/build/types/aapi/accommodation-occupancy.d.ts +0 -9
  336. package/build/types/aapi/accommodation-with-available-places.d.ts +0 -14
  337. package/build/types/aapi/accommodation.d.ts +0 -7
  338. package/build/types/aapi/additional-services.d.ts +0 -6
  339. package/build/types/aapi/alternative-flight-data.d.ts +0 -10
  340. package/build/types/aapi/alternative-flight-leg.d.ts +0 -18
  341. package/build/types/aapi/alternative-flight.d.ts +0 -12
  342. package/build/types/aapi/availability-request.d.ts +0 -12
  343. package/build/types/aapi/availability.d.ts +0 -5
  344. package/build/types/aapi/available-products-request.d.ts +0 -32
  345. package/build/types/aapi/duration.d.ts +0 -4
  346. package/build/types/aapi/flight-leg.d.ts +0 -18
  347. package/build/types/aapi/flight.d.ts +0 -23
  348. package/build/types/aapi/hotel.d.ts +0 -35
  349. package/build/types/aapi/index.d.ts +0 -22
  350. package/build/types/aapi/mollie-payment-request.d.ts +0 -6
  351. package/build/types/aapi/option-pax.d.ts +0 -4
  352. package/build/types/aapi/option.d.ts +0 -21
  353. package/build/types/aapi/pax.d.ts +0 -4
  354. package/build/types/aapi/price-detail.d.ts +0 -8
  355. package/build/types/aapi/regime.d.ts +0 -5
  356. package/build/types/aapi/traveler-grouping.d.ts +0 -5
  357. package/build/types/accommodation-occupancy.d.ts +0 -9
  358. package/build/types/accommodation-with-available-places.d.ts +0 -15
  359. package/build/types/accommodation.d.ts +0 -7
  360. package/build/types/additional-services.d.ts +0 -5
  361. package/build/types/alternative-flight-data.d.ts +0 -10
  362. package/build/types/alternative-flight-leg.d.ts +0 -18
  363. package/build/types/alternative-flight.d.ts +0 -12
  364. package/build/types/availability-request.d.ts +0 -11
  365. package/build/types/availability.d.ts +0 -5
  366. package/build/types/available-products-request.d.ts +0 -28
  367. package/build/types/availablility-request.d.ts +0 -11
  368. package/build/types/duration.d.ts +0 -4
  369. package/build/types/entry-line-meta-data.d.ts +0 -5
  370. package/build/types/enums/online-payment-type.d.ts +0 -3
  371. package/build/types/enums/print-action-group.enum.d.ts +0 -10
  372. package/build/types/flight-leg.d.ts +0 -18
  373. package/build/types/flight.d.ts +0 -23
  374. package/build/types/hotel.d.ts +0 -34
  375. package/build/types/offer/address.d.ts +0 -11
  376. package/build/types/offer/affiliate.d.ts +0 -5
  377. package/build/types/offer/alternative-flight-data.d.ts +0 -10
  378. package/build/types/offer/alternative-flight-leg.d.ts +0 -18
  379. package/build/types/offer/alternative-flight.d.ts +0 -14
  380. package/build/types/offer/available-package-accommodation.d.ts +0 -7
  381. package/build/types/offer/available-package-flight.d.ts +0 -9
  382. package/build/types/offer/available-package-option.d.ts +0 -12
  383. package/build/types/offer/available-package-pax-price.d.ts +0 -6
  384. package/build/types/offer/available-package-regime.d.ts +0 -4
  385. package/build/types/offer/available-package.d.ts +0 -7
  386. package/build/types/offer/base-price.d.ts +0 -6
  387. package/build/types/offer/base-prices-from-date-request.d.ts +0 -12
  388. package/build/types/offer/base-prices-request.d.ts +0 -12
  389. package/build/types/offer/book-request.d.ts +0 -36
  390. package/build/types/offer/booking-response.d.ts +0 -4
  391. package/build/types/offer/booking-v2/request/bookable-dates-request.d.ts +0 -4
  392. package/build/types/offer/booking-v2/request/booking-package-address.d.ts +0 -14
  393. package/build/types/offer/booking-v2/request/booking-package-book-request.d.ts +0 -24
  394. package/build/types/offer/booking-v2/request/booking-package-destination.d.ts +0 -9
  395. package/build/types/offer/booking-v2/request/booking-package-details-request.d.ts +0 -21
  396. package/build/types/offer/booking-v2/request/booking-package-flight-pool-request.d.ts +0 -12
  397. package/build/types/offer/booking-v2/request/booking-package-request.d.ts +0 -5
  398. package/build/types/offer/booking-v2/request/booking-package-search-request.d.ts +0 -27
  399. package/build/types/offer/booking-v2/request/selected-flight.d.ts +0 -6
  400. package/build/types/offer/booking-v2/request/selected-hotel.d.ts +0 -5
  401. package/build/types/offer/booking-v2/request/tour-codes.request.d.ts +0 -3
  402. package/build/types/offer/booking-v2/response/bookable-dates.d.ts +0 -4
  403. package/build/types/offer/booking-v2/response/booking-package-allotment-info.d.ts +0 -17
  404. package/build/types/offer/booking-v2/response/booking-package-dossier.d.ts +0 -6
  405. package/build/types/offer/booking-v2/response/booking-package-item.d.ts +0 -39
  406. package/build/types/offer/booking-v2/response/booking-price-detail.d.ts +0 -17
  407. package/build/types/offer/booking-v2/response/booking-price-per-pax.d.ts +0 -4
  408. package/build/types/offer/booking-v2/response/booking-product-notification.d.ts +0 -7
  409. package/build/types/offer/booking-v2/response/booking-room-status-option.d.ts +0 -5
  410. package/build/types/offer/booking-v2/response/booking-travel-agent.d.ts +0 -7
  411. package/build/types/offer/booking-v2/response/booking-validity-line.d.ts +0 -4
  412. package/build/types/offer/booking-v2/response/changed-line.d.ts +0 -4
  413. package/build/types/offer/booking-v2/response/tide-response.d.ts +0 -8
  414. package/build/types/offer/booking-v2/shared/booking-option-group.d.ts +0 -5
  415. package/build/types/offer/booking-v2/shared/booking-package-availability.d.ts +0 -9
  416. package/build/types/offer/booking-v2/shared/booking-package-flight-meta-data-line.d.ts +0 -17
  417. package/build/types/offer/booking-v2/shared/booking-package-flight-meta-data.d.ts +0 -10
  418. package/build/types/offer/booking-v2/shared/booking-package-flight.d.ts +0 -14
  419. package/build/types/offer/booking-v2/shared/booking-package-hotel-option.d.ts +0 -10
  420. package/build/types/offer/booking-v2/shared/booking-package-hotel.d.ts +0 -22
  421. package/build/types/offer/booking-v2/shared/booking-package-line.d.ts +0 -16
  422. package/build/types/offer/booking-v2/shared/booking-package-option.d.ts +0 -47
  423. package/build/types/offer/booking-v2/shared/booking-package-pax.d.ts +0 -17
  424. package/build/types/offer/booking-v2/shared/booking-package-room-option.d.ts +0 -21
  425. package/build/types/offer/booking-v2/shared/booking-package-tag.d.ts +0 -5
  426. package/build/types/offer/booking-v2/shared/booking-package.d.ts +0 -11
  427. package/build/types/offer/booking-v2/shared/per-package-option.d.ts +0 -9
  428. package/build/types/offer/cached-package-search-result.d.ts +0 -5
  429. package/build/types/offer/multiroom-book-request.d.ts +0 -10
  430. package/build/types/offer/other-product.d.ts +0 -13
  431. package/build/types/offer/package-book-request-room.d.ts +0 -5
  432. package/build/types/offer/package-book-request.d.ts +0 -12
  433. package/build/types/offer/package-flight.d.ts +0 -13
  434. package/build/types/offer/package-flights.d.ts +0 -5
  435. package/build/types/offer/package-option.d.ts +0 -22
  436. package/build/types/offer/package-price-details-request-room.d.ts +0 -4
  437. package/build/types/offer/package-price-details-request.d.ts +0 -8
  438. package/build/types/offer/package-room-option.d.ts +0 -10
  439. package/build/types/offer/package-room.d.ts +0 -7
  440. package/build/types/offer/package-search-destination.d.ts +0 -9
  441. package/build/types/offer/package-search-request-date.d.ts +0 -4
  442. package/build/types/offer/package-search-request-room.d.ts +0 -5
  443. package/build/types/offer/package-search-request.d.ts +0 -18
  444. package/build/types/offer/package-search-response.d.ts +0 -4
  445. package/build/types/offer/package-search-result.d.ts +0 -12
  446. package/build/types/offer/package-sub-option.d.ts +0 -6
  447. package/build/types/offer/price-detail.d.ts +0 -18
  448. package/build/types/offer/price-per-pax.d.ts +0 -6
  449. package/build/types/option-pax.d.ts +0 -4
  450. package/build/types/option.d.ts +0 -26
  451. package/build/types/package-details-request.d.ts +0 -12
  452. package/build/types/package-flight.d.ts +0 -11
  453. package/build/types/package-flights.d.ts +0 -5
  454. package/build/types/package-option.d.ts +0 -19
  455. package/build/types/package-room.d.ts +0 -7
  456. package/build/types/package-search-destination.d.ts +0 -9
  457. package/build/types/package-search-request-date.d.ts +0 -4
  458. package/build/types/package-search-request-room.d.ts +0 -5
  459. package/build/types/package-search-request.d.ts +0 -21
  460. package/build/types/package-search-response.d.ts +0 -4
  461. package/build/types/package-search-result.d.ts +0 -12
  462. package/build/types/package-sub-option.d.ts +0 -6
  463. package/build/types/pax.d.ts +0 -4
  464. package/build/types/regime.d.ts +0 -5
  465. package/build/types/traveler-grouping.d.ts +0 -5
  466. package/build/utils/booking-client.d.ts +0 -114
  467. package/build/utils/bookingClient.d.ts +0 -9
  468. package/build/utils/client.d.ts +0 -4
  469. package/src/types/aapi/accommodation-occupancy.ts +0 -9
  470. package/src/types/aapi/accommodation-with-available-places.ts +0 -15
  471. package/src/types/aapi/accommodation.ts +0 -8
  472. package/src/types/aapi/additional-services.ts +0 -6
  473. package/src/types/aapi/alternative-flight-data.ts +0 -11
  474. package/src/types/aapi/alternative-flight-leg.ts +0 -18
  475. package/src/types/aapi/alternative-flight.ts +0 -13
  476. package/src/types/aapi/availability-request.ts +0 -12
  477. package/src/types/aapi/availability.ts +0 -6
  478. package/src/types/aapi/available-products-request.ts +0 -33
  479. package/src/types/aapi/duration.ts +0 -4
  480. package/src/types/aapi/flight-leg.ts +0 -18
  481. package/src/types/aapi/flight.ts +0 -24
  482. package/src/types/aapi/hotel.ts +0 -36
  483. package/src/types/aapi/index.ts +0 -22
  484. package/src/types/aapi/option-pax.ts +0 -4
  485. package/src/types/aapi/option.ts +0 -29
  486. package/src/types/aapi/pax.ts +0 -4
  487. package/src/types/aapi/price-detail.ts +0 -8
  488. package/src/types/aapi/regime.ts +0 -5
  489. package/src/types/aapi/traveler-grouping.ts +0 -5
  490. package/src/types/offer/alternative-flight-data.ts +0 -11
  491. package/src/types/offer/alternative-flight-leg.ts +0 -18
  492. package/src/types/offer/alternative-flight.ts +0 -15
  493. package/src/types/offer/available-package-accommodation.ts +0 -8
  494. package/src/types/offer/available-package-flight.ts +0 -10
  495. package/src/types/offer/available-package-option.ts +0 -18
  496. package/src/types/offer/available-package-pax-price.ts +0 -6
  497. package/src/types/offer/available-package-regime.ts +0 -4
  498. package/src/types/offer/available-package.ts +0 -8
  499. package/src/types/offer/base-prices-from-date-request.ts +0 -12
  500. package/src/types/offer/base-prices-request.ts +0 -12
  501. package/src/types/offer/book-request.ts +0 -38
  502. package/src/types/offer/booking-response.ts +0 -4
  503. package/src/types/offer/cached-package-search-result.ts +0 -6
  504. package/src/types/offer/multiroom-book-request.ts +0 -11
  505. package/src/types/offer/other-product.ts +0 -14
  506. package/src/types/offer/package-book-request-room.ts +0 -6
  507. package/src/types/offer/package-book-request.ts +0 -13
  508. package/src/types/offer/package-flight.ts +0 -14
  509. package/src/types/offer/package-flights.ts +0 -6
  510. package/src/types/offer/package-option.ts +0 -23
  511. package/src/types/offer/package-price-details-request-room.ts +0 -4
  512. package/src/types/offer/package-price-details-request.ts +0 -9
  513. package/src/types/offer/package-room-option.ts +0 -10
  514. package/src/types/offer/package-room.ts +0 -8
  515. package/src/types/offer/package-search-destination.ts +0 -9
  516. package/src/types/offer/package-search-request-date.ts +0 -4
  517. package/src/types/offer/package-search-request-room.ts +0 -5
  518. package/src/types/offer/package-search-request.ts +0 -23
  519. package/src/types/offer/package-search-result.ts +0 -13
  520. package/src/types/offer/package-sub-option.ts +0 -6
  521. package/src/types/offer/price-detail.ts +0 -19
  522. package/src/types/offer/price-per-pax.ts +0 -6
  523. package/src/utils/booking-client.ts +0 -310
  524. package/tests/bookingClient.test.ts +0 -728
  525. package/tests/mocks/available-products.json +0 -183
  526. package/tests/mocks/base-prices-from-date.json +0 -74
  527. package/tests/mocks/base-prices.json +0 -236
  528. package/tests/mocks/entry-multiroom.json +0 -2043
  529. package/tests/mocks/entry-multiroom.short.json +0 -4
  530. package/tests/mocks/offer-entry.json +0 -2043
  531. package/tests/mocks/offer-entry.short.json +0 -4
  532. package/tests/mocks/package-entry.json +0 -2043
  533. package/tests/mocks/package-entry.short.json +0 -4
  534. package/tests/mocks/package-offer-entry.json +0 -2043
  535. package/tests/mocks/package-offer-entry.short.json +0 -4
  536. package/tests/mocks/package-price-details.json +0 -176
  537. package/tests/mocks/package-search.json +0 -179
@@ -1,224 +1,318 @@
1
- import { PackageSearchRequest, TideClientConfig } from "..";
2
-
3
- import {
4
- AvailablePackage,
5
- BookableDates,
6
- BookableDatesRequest,
7
- BookingPackage,
8
- BookingPackageBookRequest,
9
- BookingPackageDetailsRequest,
10
- BookingPackageDossier,
11
- BookingPackageFlightPool,
12
- BookingPackageFlightPoolRequest,
13
- BookingPackageHotelPool,
14
- BookingPackageItem,
15
- BookingPackageRequest,
16
- BookingPackageSearchRequest,
17
- BookingPackageUpdateRequest,
18
- BookingPackageVoucherRequest,
19
- BookingPriceDetails,
20
- BookingTravelAgent,
21
- BookingVoucherResult,
22
- TideResponse,
23
- TourCodesRequest,
24
- TourCodesResponse,
25
- } from "../types";
26
- import { BookingPackageAvailability } from "../types/offer/booking-v2/shared/booking-package-availability";
27
- import { get, post } from "./common-client";
28
-
29
- const ENDPOINT = "/api/web/booking/v2";
30
- const ENDPOINT_PACKAGE_SEARCH_LIST = `${ENDPOINT}/package-search-list`;
31
- const ENDPOINT_SEARCH = `${ENDPOINT}/search`;
32
- const ENDPOINT_SEARCH_WITH_ERROR_MAPPING = `${ENDPOINT}/search-with-error-mapping`;
33
- const ENDPOINT_DETAILS = `${ENDPOINT}/details`;
34
- const ENDPOINT_VALIDATE_VOUCHER = `${ENDPOINT}/validate-voucher`;
35
- const ENDPOINT_ALTERNATE_HOTELS = `/alternate-hotels`;
36
- const ENDPOINT_ALTERNATE_FLIGHTS = `/alternate-flights`;
37
- const ENDPOINT_PRICE_DETAILS = `${ENDPOINT}/price-details`;
38
- const ENDPOINT_BOOK = `${ENDPOINT}/book`;
39
- const ENDPOINT_UPDATE = `${ENDPOINT}/update`;
40
- const ENDPOINT_AGENTS = `${ENDPOINT}/agents`;
41
- const ENDPOINT_AVAILABLE_ALLOTMENTS = `${ENDPOINT}/get-allotment-availability`;
42
- const ENDPOINT_FLIGHT_POOL = `${ENDPOINT}/flight-pool`;
43
- const ENDPOINT_BOOKABLE_DATES = `${ENDPOINT}/bookable-dates`;
44
- const ENDPOINT_TOUR_CODES = `${ENDPOINT}/tourcodes`;
45
-
46
- export const readPackageSearchList = (
47
- config: TideClientConfig,
48
- request: PackageSearchRequest,
49
- signal?: AbortSignal
50
- ): Promise<AvailablePackage[]> => {
51
- const url = `${config.host}${ENDPOINT_PACKAGE_SEARCH_LIST}`;
52
- const apiKey = config.apiKey;
53
- const body = JSON.stringify(request);
54
-
55
- return post(url, apiKey, body, config.token, signal);
56
- };
57
-
58
- // PACKAGE SEARCH
59
- export const search = (
60
- config: TideClientConfig,
61
- request: BookingPackageRequest<BookingPackageSearchRequest>,
62
- signal?: AbortSignal
63
- ): Promise<BookingPackageItem[]> => {
64
- const url = `${config.host}${ENDPOINT_SEARCH}`;
65
- const apiKey = config.apiKey;
66
- const body = JSON.stringify(request);
67
-
68
- return post(url, apiKey, body, config.token, signal, true);
69
- };
70
-
71
- export const searchWithErrorMapping = (
72
- config: TideClientConfig,
73
- request: BookingPackageRequest<BookingPackageSearchRequest>,
74
- signal?: AbortSignal
75
- ): Promise<TideResponse<BookingPackageItem[]>> => {
76
- const url = `${config.host}${ENDPOINT_SEARCH_WITH_ERROR_MAPPING}`;
77
- const apiKey = config.apiKey;
78
- const body = JSON.stringify(request);
79
-
80
- return post(url, apiKey, body, config.token, signal, true);
81
- };
82
-
83
- export const details = (
84
- config: TideClientConfig,
85
- request: BookingPackageRequest<BookingPackageDetailsRequest>,
86
- signal?: AbortSignal,
87
- languageCode?: string
88
- ): Promise<TideResponse<BookingPackage>> => {
89
- const url = `${config.host}${ENDPOINT_DETAILS}`;
90
- const apiKey = config.apiKey;
91
- const body = JSON.stringify(request);
92
-
93
- return post(url, apiKey, body, config.token, signal, true, languageCode);
94
- };
95
-
96
- export const validateVoucher = (
97
- config: TideClientConfig,
98
- request: BookingPackageRequest<BookingPackageVoucherRequest>,
99
- signal?: AbortSignal
100
- ): Promise<BookingVoucherResult> => {
101
- const url = `${config.host}${ENDPOINT_VALIDATE_VOUCHER}`;
102
- const apiKey = config.apiKey;
103
- const body = JSON.stringify(request);
104
-
105
- return post(url, apiKey, body, config.token, signal, true);
106
- };
107
-
108
- export const alternateHotels = (
109
- config: TideClientConfig,
110
- transactionId: string,
111
- signal?: AbortSignal
112
- ): Promise<BookingPackageHotelPool> => {
113
- const url = `${config.host}${ENDPOINT_DETAILS}/${transactionId}${ENDPOINT_ALTERNATE_HOTELS}`;
114
- const apiKey = config.apiKey;
115
-
116
- return get(url, apiKey, config.token, signal, true);
117
- };
118
-
119
- export const alternateFlights = (
120
- config: TideClientConfig,
121
- transactionId: string,
122
- signal?: AbortSignal
123
- ): Promise<BookingPackageFlightPool> => {
124
- const url = `${config.host}${ENDPOINT_DETAILS}/${transactionId}${ENDPOINT_ALTERNATE_FLIGHTS}`;
125
- const apiKey = config.apiKey;
126
-
127
- return get(url, apiKey, config.token, signal, true);
128
- };
129
-
130
- export const priceDetails = (
131
- config: TideClientConfig,
132
- request: BookingPackageRequest<BookingPackageBookRequest>,
133
- signal?: AbortSignal,
134
- languageCode?: string
135
- ): Promise<BookingPriceDetails> => {
136
- const url = `${config.host}${ENDPOINT_PRICE_DETAILS}`;
137
- const apiKey = config.apiKey;
138
- const body = JSON.stringify(request);
139
-
140
- return post(url, apiKey, body, config.token, signal, true, languageCode);
141
- };
142
-
143
- export const book = (
144
- config: TideClientConfig,
145
- request: BookingPackageRequest<BookingPackageBookRequest>,
146
- signal?: AbortSignal,
147
- languageCode?: string
148
- ): Promise<BookingPackageDossier> => {
149
- const url = `${config.host}${ENDPOINT_BOOK}`;
150
- const apiKey = config.apiKey;
151
- const body = JSON.stringify(request);
152
-
153
- return post(url, apiKey, body, config.token, signal, true, languageCode);
154
- };
155
-
156
- export const update = (
157
- config: TideClientConfig,
158
- request: BookingPackageRequest<BookingPackageUpdateRequest>,
159
- signal?: AbortSignal
160
- ): Promise<BookingPackageDossier> => {
161
- const url = `${config.host}${ENDPOINT_UPDATE}`;
162
- const apiKey = config.apiKey;
163
- const body = JSON.stringify(request);
164
-
165
- return post(url, apiKey, body, config.token, signal, true);
166
- };
167
-
168
- export const agents = (
169
- config: TideClientConfig,
170
- signal?: AbortSignal
171
- ): Promise<BookingTravelAgent[]> => {
172
- const url = `${config.host}${ENDPOINT_AGENTS}`;
173
- const apiKey = config.apiKey;
174
-
175
- return get(url, apiKey, config.token, signal, true);
176
- };
177
-
178
- export const getAllotmentAvailability = (
179
- config: TideClientConfig,
180
- eventId: string,
181
- productCode: string,
182
- signal?: AbortSignal
183
- ): Promise<BookingPackageAvailability[]> => {
184
- const url = `${config.host}${ENDPOINT_AVAILABLE_ALLOTMENTS}/${eventId}/${productCode}`;
185
- const apiKey = config.apiKey;
186
-
187
- return get(url, apiKey, config.token, signal, true);
188
- };
189
-
190
- export const searchFlightPool = (
191
- config: TideClientConfig,
192
- request: BookingPackageRequest<BookingPackageFlightPoolRequest>,
193
- signal?: AbortSignal
194
- ): Promise<BookingPackageFlightPool> => {
195
- const url = `${config.host}${ENDPOINT_FLIGHT_POOL}`;
196
- const apiKey = config.apiKey;
197
- const body = JSON.stringify(request);
198
-
199
- return post(url, apiKey, body, config.token, signal, true);
200
- };
201
-
202
- export const bookableDates = (
203
- config: TideClientConfig,
204
- request: BookableDatesRequest,
205
- signal?: AbortSignal
206
- ): Promise<BookableDates> => {
207
- const url = `${config.host}${ENDPOINT_BOOKABLE_DATES}`;
208
- const apiKey = config.apiKey;
209
- const body = JSON.stringify(request);
210
-
211
- return post(url, apiKey, body, config.token, signal, true);
212
- };
213
-
214
- export const tourCodes = (
215
- config: TideClientConfig,
216
- request: TourCodesRequest,
217
- signal?: AbortSignal
218
- ): Promise<TourCodesResponse> => {
219
- const url = `${config.host}${ENDPOINT_TOUR_CODES}`;
220
- const apiKey = config.apiKey;
221
- const body = JSON.stringify(request);
222
-
223
- return post(url, apiKey, body, config.token, signal, true);
224
- };
1
+ import { TideClientConfig } from "..";
2
+
3
+ import {
4
+ AvailableCountriesRequest,
5
+ AvailableCountry,
6
+ AvailableFlight,
7
+ AvailableFlightsRequest,
8
+ BasePrice,
9
+ BookableDates,
10
+ BookableDatesRequest,
11
+ BookingPackage,
12
+ BookingPackageAvailability,
13
+ BookingPackageBookRequest,
14
+ BookingPackageDetailsRequest,
15
+ BookingPackageDossier,
16
+ BookingPackageFlightPool,
17
+ BookingPackageFlightPoolRequest,
18
+ BookingPackageHotelPool,
19
+ BookingPackageItem,
20
+ BookingPackageRequest,
21
+ BookingPackageSearchRequest,
22
+ BookingPackageUpdateRequest,
23
+ BookingPackageVoucherRequest,
24
+ BookingPriceDetails,
25
+ BookingTravelAgent,
26
+ BookingVoucherResult,
27
+ EntryStatus,
28
+ PricesRequest,
29
+ TideResponse,
30
+ TourCodesRequest,
31
+ TourCodesResponse,
32
+ TransportDatesRequest,
33
+ TransportDatesResponse,
34
+ } from "../types";
35
+ import { get, patch, post } from "./common-client";
36
+
37
+ const ENDPOINT = "/api/web/booking/v2";
38
+ const ENDPOINT_AVAILABLE_FLIGHTS = `${ENDPOINT}/available-flights`;
39
+ const ENDPOINT_TRANSPORT_DATES = `${ENDPOINT}/transport-dates`;
40
+ const ENDPOINT_PRICES = `${ENDPOINT}/prices`;
41
+ const ENDPOINT_AVAILABLE_COUNTRIES = `${ENDPOINT}/available-countries`;
42
+ const ENDPOINT_SEARCH = `${ENDPOINT}/search`;
43
+ const ENDPOINT_SEARCH_WITH_ERROR_MAPPING = `${ENDPOINT}/search-with-error-mapping`;
44
+ // const ENDPOINT_ELASTIC = `${ENDPOINT}/elastic`; // TODO
45
+ const ENDPOINT_DETAILS = `${ENDPOINT}/details`;
46
+ const ENDPOINT_VALIDATE_VOUCHER = `${ENDPOINT}/validate-voucher`;
47
+ const ENDPOINT_ALTERNATE_HOTELS = (transactionId: string, optionId: string) =>
48
+ `${ENDPOINT}/details/${transactionId}/alternate-hotels/${optionId}`;
49
+ const ENDPOINT_ALTERNATE_FLIGHTS = (transactionId: string) =>
50
+ `${ENDPOINT}/details/${transactionId}/alternate-flights`;
51
+ const ENDPOINT_BOOKABLE_DATES = `${ENDPOINT}/bookable-dates`;
52
+ const ENDPOINT_PRICE_DETAILS = `${ENDPOINT}/price-details`;
53
+ const ENDPOINT_BOOK = `${ENDPOINT}/book`;
54
+ const ENDPOINT_UPDATE = `${ENDPOINT}/update`;
55
+ const ENDPOINT_AGENTS = `${ENDPOINT}/agents`;
56
+ const ENDPOINT_AVAILABLE_ALLOTMENTS = (eventId: string, productCode: string) =>
57
+ `${ENDPOINT}/get-allotment-availability/${eventId}/${productCode}`;
58
+ const ENDPOINT_FLIGHT_POOL = `${ENDPOINT}/flight-pool`;
59
+ const ENDPOINT_TOUR_CODES = `${ENDPOINT}/tourcodes`;
60
+ const ENDPOINT_CUSTOM_ENTRY_STATUS = (
61
+ dossierNumber: string,
62
+ customEntryStatusId: number
63
+ ) => `${ENDPOINT}/custom-entry-status/${dossierNumber}/${customEntryStatusId}`;
64
+ const ENDPOINT_ENTRY_STATUS = (dossierNumber: string, entryStatus: number) =>
65
+ `${ENDPOINT}/custom-entry-status/${dossierNumber}/${entryStatus}`;
66
+
67
+ export const availableFlights = (
68
+ config: TideClientConfig,
69
+ request: AvailableFlightsRequest,
70
+ signal?: AbortSignal
71
+ ): Promise<AvailableFlight[]> => {
72
+ const url = `${config.host}${ENDPOINT_AVAILABLE_FLIGHTS}`;
73
+ const apiKey = config.apiKey;
74
+ const body = JSON.stringify(request);
75
+
76
+ return post(url, apiKey, body, config.token, signal, true);
77
+ };
78
+
79
+ export const transportDates = (
80
+ config: TideClientConfig,
81
+ request: TransportDatesRequest,
82
+ signal?: AbortSignal
83
+ ): Promise<TransportDatesResponse> => {
84
+ const url = `${config.host}${ENDPOINT_TRANSPORT_DATES}`;
85
+ const apiKey = config.apiKey;
86
+ const body = JSON.stringify(request);
87
+
88
+ return post(url, apiKey, body, config.token, signal, true);
89
+ };
90
+
91
+ export const prices = (
92
+ config: TideClientConfig,
93
+ request: PricesRequest,
94
+ signal?: AbortSignal
95
+ ): Promise<BasePrice[]> => {
96
+ const url = `${config.host}${ENDPOINT_PRICES}`;
97
+ const apiKey = config.apiKey;
98
+ const body = JSON.stringify(request);
99
+
100
+ return post(url, apiKey, body, config.token, signal, true);
101
+ };
102
+
103
+ export const availableCountries = (
104
+ config: TideClientConfig,
105
+ request: AvailableCountriesRequest,
106
+ signal?: AbortSignal
107
+ ): Promise<AvailableCountry[]> => {
108
+ const url = `${config.host}${ENDPOINT_AVAILABLE_COUNTRIES}`;
109
+ const apiKey = config.apiKey;
110
+ const body = JSON.stringify(request);
111
+
112
+ return post(url, apiKey, body, config.token, signal, true);
113
+ };
114
+
115
+ // PACKAGE SEARCH
116
+ export const search = (
117
+ config: TideClientConfig,
118
+ request: BookingPackageRequest<BookingPackageSearchRequest>,
119
+ signal?: AbortSignal
120
+ ): Promise<BookingPackageItem[]> => {
121
+ const url = `${config.host}${ENDPOINT_SEARCH}`;
122
+ const apiKey = config.apiKey;
123
+ const body = JSON.stringify(request);
124
+
125
+ return post(url, apiKey, body, config.token, signal, true);
126
+ };
127
+
128
+ export const searchWithErrorMapping = (
129
+ config: TideClientConfig,
130
+ request: BookingPackageRequest<BookingPackageSearchRequest>,
131
+ signal?: AbortSignal
132
+ ): Promise<TideResponse<BookingPackageItem[]>> => {
133
+ const url = `${config.host}${ENDPOINT_SEARCH_WITH_ERROR_MAPPING}`;
134
+ const apiKey = config.apiKey;
135
+ const body = JSON.stringify(request);
136
+
137
+ return post(url, apiKey, body, config.token, signal, true);
138
+ };
139
+
140
+ export const details = (
141
+ config: TideClientConfig,
142
+ request: BookingPackageRequest<BookingPackageDetailsRequest>,
143
+ signal?: AbortSignal,
144
+ languageCode?: string
145
+ ): Promise<TideResponse<BookingPackage>> => {
146
+ const url = `${config.host}${ENDPOINT_DETAILS}`;
147
+ const apiKey = config.apiKey;
148
+ const body = JSON.stringify(request);
149
+
150
+ return post(url, apiKey, body, config.token, signal, true, languageCode);
151
+ };
152
+
153
+ export const validateVoucher = (
154
+ config: TideClientConfig,
155
+ request: BookingPackageRequest<BookingPackageVoucherRequest>,
156
+ signal?: AbortSignal
157
+ ): Promise<BookingVoucherResult> => {
158
+ const url = `${config.host}${ENDPOINT_VALIDATE_VOUCHER}`;
159
+ const apiKey = config.apiKey;
160
+ const body = JSON.stringify(request);
161
+
162
+ return post(url, apiKey, body, config.token, signal, true);
163
+ };
164
+
165
+ export const alternateHotels = (
166
+ config: TideClientConfig,
167
+ transactionId: string,
168
+ optionId: string,
169
+ signal?: AbortSignal
170
+ ): Promise<BookingPackageHotelPool> => {
171
+ const url = `${config.host}${ENDPOINT_ALTERNATE_HOTELS(
172
+ transactionId,
173
+ optionId
174
+ )}`;
175
+ const apiKey = config.apiKey;
176
+
177
+ return get(url, apiKey, config.token, signal, true);
178
+ };
179
+
180
+ export const alternateFlights = (
181
+ config: TideClientConfig,
182
+ transactionId: string,
183
+ signal?: AbortSignal
184
+ ): Promise<BookingPackageFlightPool> => {
185
+ const url = `${config.host}${ENDPOINT_ALTERNATE_FLIGHTS(transactionId)}`;
186
+ const apiKey = config.apiKey;
187
+
188
+ return get(url, apiKey, config.token, signal, true);
189
+ };
190
+
191
+ export const bookableDates = (
192
+ config: TideClientConfig,
193
+ request: BookableDatesRequest,
194
+ signal?: AbortSignal
195
+ ): Promise<BookableDates> => {
196
+ const url = `${config.host}${ENDPOINT_BOOKABLE_DATES}`;
197
+ const apiKey = config.apiKey;
198
+ const body = JSON.stringify(request);
199
+
200
+ return post(url, apiKey, body, config.token, signal, true);
201
+ };
202
+
203
+ export const priceDetails = (
204
+ config: TideClientConfig,
205
+ request: BookingPackageRequest<BookingPackageBookRequest>,
206
+ signal?: AbortSignal,
207
+ languageCode?: string
208
+ ): Promise<BookingPriceDetails> => {
209
+ const url = `${config.host}${ENDPOINT_PRICE_DETAILS}`;
210
+ const apiKey = config.apiKey;
211
+ const body = JSON.stringify(request);
212
+
213
+ return post(url, apiKey, body, config.token, signal, true, languageCode);
214
+ };
215
+
216
+ export const book = (
217
+ config: TideClientConfig,
218
+ request: BookingPackageRequest<BookingPackageBookRequest>,
219
+ signal?: AbortSignal,
220
+ languageCode?: string
221
+ ): Promise<BookingPackageDossier> => {
222
+ const url = `${config.host}${ENDPOINT_BOOK}`;
223
+ const apiKey = config.apiKey;
224
+ const body = JSON.stringify(request);
225
+
226
+ return post(url, apiKey, body, config.token, signal, true, languageCode);
227
+ };
228
+
229
+ export const update = (
230
+ config: TideClientConfig,
231
+ request: BookingPackageRequest<BookingPackageUpdateRequest>,
232
+ signal?: AbortSignal
233
+ ): Promise<BookingPackageDossier> => {
234
+ const url = `${config.host}${ENDPOINT_UPDATE}`;
235
+ const apiKey = config.apiKey;
236
+ const body = JSON.stringify(request);
237
+
238
+ return post(url, apiKey, body, config.token, signal, true);
239
+ };
240
+
241
+ export const agents = (
242
+ config: TideClientConfig,
243
+ signal?: AbortSignal
244
+ ): Promise<BookingTravelAgent[]> => {
245
+ const url = `${config.host}${ENDPOINT_AGENTS}`;
246
+ const apiKey = config.apiKey;
247
+
248
+ return get(url, apiKey, config.token, signal, true);
249
+ };
250
+
251
+ export const getAllotmentAvailability = (
252
+ config: TideClientConfig,
253
+ eventId: string,
254
+ productCode: string,
255
+ signal?: AbortSignal
256
+ ): Promise<BookingPackageAvailability[]> => {
257
+ const url = `${config.host}${ENDPOINT_AVAILABLE_ALLOTMENTS(
258
+ eventId,
259
+ productCode
260
+ )}`;
261
+ const apiKey = config.apiKey;
262
+
263
+ return get(url, apiKey, config.token, signal, true);
264
+ };
265
+
266
+ export const searchFlightPool = (
267
+ config: TideClientConfig,
268
+ request: BookingPackageRequest<BookingPackageFlightPoolRequest>,
269
+ signal?: AbortSignal
270
+ ): Promise<BookingPackageFlightPool> => {
271
+ const url = `${config.host}${ENDPOINT_FLIGHT_POOL}`;
272
+ const apiKey = config.apiKey;
273
+ const body = JSON.stringify(request);
274
+
275
+ return post(url, apiKey, body, config.token, signal, true);
276
+ };
277
+
278
+ export const tourCodes = (
279
+ config: TideClientConfig,
280
+ request: TourCodesRequest,
281
+ signal?: AbortSignal
282
+ ): Promise<TourCodesResponse> => {
283
+ const url = `${config.host}${ENDPOINT_TOUR_CODES}`;
284
+ const apiKey = config.apiKey;
285
+ const body = JSON.stringify(request);
286
+
287
+ return post(url, apiKey, body, config.token, signal, true);
288
+ };
289
+
290
+ export const setCustomEntryStatus = (
291
+ config: TideClientConfig,
292
+ dossierNumber: string,
293
+ customEntryStatusId: number,
294
+ signal?: AbortSignal
295
+ ): Promise<BookingPackageAvailability[]> => {
296
+ const url = `${config.host}${ENDPOINT_CUSTOM_ENTRY_STATUS(
297
+ dossierNumber,
298
+ customEntryStatusId
299
+ )}`;
300
+ const apiKey = config.apiKey;
301
+
302
+ return get(url, apiKey, config.token, signal, true);
303
+ };
304
+
305
+ export const setEntryStatus = (
306
+ config: TideClientConfig,
307
+ dossierNumber: string,
308
+ entryStatus: EntryStatus,
309
+ signal?: AbortSignal
310
+ ): Promise<BookingPackageAvailability[]> => {
311
+ const url = `${config.host}${ENDPOINT_ENTRY_STATUS(
312
+ dossierNumber,
313
+ entryStatus
314
+ )}`;
315
+ const apiKey = config.apiKey;
316
+
317
+ return patch(url, apiKey, null, config.token, signal, true);
318
+ };
@@ -1,44 +1,69 @@
1
- import { post as apiPost, get as apiGet } from "./api";
2
- import { reviver } from "./json";
3
-
4
- export const post = async <T>(
5
- url: string,
6
- apiKey: string,
7
- body: string,
8
- token?: string,
9
- signal?: AbortSignal,
10
- skipReviver?: boolean,
11
- languageCode?: string
12
- ): Promise<T> => {
13
- const response = await apiPost(
14
- url,
15
- apiKey,
16
- body,
17
- token,
18
- signal,
19
- languageCode
20
- );
21
- const responseBody = await response.text();
22
-
23
- const result: T = skipReviver
24
- ? JSON.parse(responseBody ?? "")
25
- : JSON.parse(responseBody ?? "", reviver);
26
- return result;
27
- };
28
-
29
- export const get = async <T>(
30
- url: string,
31
- apiKey: string,
32
- token?: string,
33
- signal?: AbortSignal,
34
- skipReviver?: boolean,
35
- languageCode?: string
36
- ): Promise<T> => {
37
- const response = await apiGet(url, apiKey, token, signal, languageCode);
38
- const responseBody = await response.text();
39
-
40
- const result: T = skipReviver
41
- ? JSON.parse(responseBody)
42
- : JSON.parse(responseBody, reviver);
43
- return result;
44
- };
1
+ import { post as apiPost, get as apiGet, patch as apiPatch } from "./api";
2
+ import { reviver } from "./json";
3
+
4
+ export const post = async <T>(
5
+ url: string,
6
+ apiKey: string,
7
+ body?: string | null,
8
+ token?: string,
9
+ signal?: AbortSignal,
10
+ skipReviver?: boolean,
11
+ languageCode?: string
12
+ ): Promise<T> => {
13
+ const response = await apiPost(
14
+ url,
15
+ apiKey,
16
+ body,
17
+ token,
18
+ signal,
19
+ languageCode
20
+ );
21
+ const responseBody = await response.text();
22
+
23
+ const result: T = skipReviver
24
+ ? JSON.parse(responseBody)
25
+ : JSON.parse(responseBody, reviver);
26
+ return result;
27
+ };
28
+
29
+ export const patch = async <T>(
30
+ url: string,
31
+ apiKey: string,
32
+ body?: string | null,
33
+ token?: string,
34
+ signal?: AbortSignal,
35
+ skipReviver?: boolean,
36
+ languageCode?: string
37
+ ): Promise<T> => {
38
+ const response = await apiPatch(
39
+ url,
40
+ apiKey,
41
+ body,
42
+ token,
43
+ signal,
44
+ languageCode
45
+ );
46
+ const responseBody = await response.text();
47
+
48
+ const result: T = skipReviver
49
+ ? JSON.parse(responseBody)
50
+ : JSON.parse(responseBody, reviver);
51
+ return result;
52
+ };
53
+
54
+ export const get = async <T>(
55
+ url: string,
56
+ apiKey: string,
57
+ token?: string,
58
+ signal?: AbortSignal,
59
+ skipReviver?: boolean,
60
+ languageCode?: string
61
+ ): Promise<T> => {
62
+ const response = await apiGet(url, apiKey, token, signal, languageCode);
63
+ const responseBody = await response.text();
64
+
65
+ const result: T = skipReviver
66
+ ? JSON.parse(responseBody)
67
+ : JSON.parse(responseBody, reviver);
68
+ return result;
69
+ };