@qite/tide-client 1.0.20 → 1.0.21

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 (186) hide show
  1. package/build/index.d.ts +49 -10
  2. package/build/index.js +541 -437
  3. package/build/types/aapi/accommodation-occupancy.d.ts +9 -9
  4. package/build/types/aapi/accommodation-with-available-places.d.ts +14 -14
  5. package/build/types/aapi/accommodation.d.ts +7 -7
  6. package/build/types/aapi/additional-services.d.ts +6 -6
  7. package/build/types/aapi/alternative-flight-data.d.ts +10 -10
  8. package/build/types/aapi/alternative-flight-leg.d.ts +18 -18
  9. package/build/types/aapi/alternative-flight.d.ts +12 -12
  10. package/build/types/aapi/availability-request.d.ts +12 -12
  11. package/build/types/aapi/availability.d.ts +5 -5
  12. package/build/types/aapi/available-products-request.d.ts +32 -32
  13. package/build/types/aapi/duration.d.ts +4 -4
  14. package/build/types/aapi/flight-leg.d.ts +18 -18
  15. package/build/types/aapi/flight.d.ts +23 -23
  16. package/build/types/aapi/hotel.d.ts +35 -35
  17. package/build/types/aapi/index.d.ts +22 -22
  18. package/build/types/aapi/mollie-payment-request.d.ts +6 -6
  19. package/build/types/aapi/mollie-payment.d.ts +3 -3
  20. package/build/types/aapi/option-pax.d.ts +4 -4
  21. package/build/types/aapi/option.d.ts +28 -21
  22. package/build/types/aapi/pax.d.ts +4 -4
  23. package/build/types/aapi/price-detail.d.ts +8 -8
  24. package/build/types/aapi/regime.d.ts +5 -5
  25. package/build/types/aapi/traveler-grouping.d.ts +5 -5
  26. package/build/types/enums/allotment-type.d.ts +5 -5
  27. package/build/types/enums/availability-search-type.d.ts +4 -4
  28. package/build/types/enums/dossier-type.d.ts +6 -6
  29. package/build/types/enums/entry-line-flag.d.ts +6 -6
  30. package/build/types/enums/entry-line-status.d.ts +19 -19
  31. package/build/types/enums/entry-status.d.ts +8 -8
  32. package/build/types/enums/export-status.d.ts +5 -5
  33. package/build/types/enums/gender.d.ts +5 -5
  34. package/build/types/enums/index.d.ts +15 -15
  35. package/build/types/enums/meta-data-type.d.ts +10 -10
  36. package/build/types/enums/payment-type.d.ts +6 -6
  37. package/build/types/enums/price-chart-type.d.ts +4 -4
  38. package/build/types/enums/requirement-type.d.ts +5 -5
  39. package/build/types/enums/room-type.d.ts +8 -8
  40. package/build/types/enums/sale-type.d.ts +4 -4
  41. package/build/types/enums/service-type.d.ts +26 -26
  42. package/build/types/index.d.ts +26 -4
  43. package/build/types/offer/additional-services.d.ts +6 -6
  44. package/build/types/offer/address.d.ts +11 -11
  45. package/build/types/offer/alternative-flight-data.d.ts +10 -10
  46. package/build/types/offer/alternative-flight-leg.d.ts +18 -18
  47. package/build/types/offer/alternative-flight.d.ts +14 -14
  48. package/build/types/offer/available-package-accommodation.d.ts +7 -7
  49. package/build/types/offer/available-package-flight.d.ts +9 -9
  50. package/build/types/offer/available-package-option.d.ts +17 -12
  51. package/build/types/offer/available-package-pax-price.d.ts +6 -6
  52. package/build/types/offer/available-package-regime.d.ts +4 -4
  53. package/build/types/offer/available-package.d.ts +7 -7
  54. package/build/types/offer/base-price.d.ts +6 -6
  55. package/build/types/offer/base-prices-from-date-request.d.ts +12 -12
  56. package/build/types/offer/base-prices-request.d.ts +12 -12
  57. package/build/types/offer/book-request.d.ts +36 -36
  58. package/build/types/offer/booking-response.d.ts +4 -4
  59. package/build/types/offer/booking-v2/index.d.ts +3 -3
  60. package/build/types/offer/booking-v2/request/booking-package-address.d.ts +13 -13
  61. package/build/types/offer/booking-v2/request/booking-package-book-request.d.ts +12 -12
  62. package/build/types/offer/booking-v2/request/booking-package-details-request.d.ts +12 -12
  63. package/build/types/offer/booking-v2/request/booking-package-request.d.ts +5 -5
  64. package/build/types/offer/booking-v2/request/booking-package-search-request.d.ts +20 -20
  65. package/build/types/offer/booking-v2/request/index.d.ts +5 -5
  66. package/build/types/offer/booking-v2/response/booking-package-allotment-info.d.ts +13 -13
  67. package/build/types/offer/booking-v2/response/booking-package-dossier.d.ts +5 -5
  68. package/build/types/offer/booking-v2/response/booking-package-item.d.ts +12 -12
  69. package/build/types/offer/booking-v2/response/booking-price-detail.d.ts +13 -13
  70. package/build/types/offer/booking-v2/response/booking-price-details.d.ts +6 -6
  71. package/build/types/offer/booking-v2/response/booking-price-per-pax.d.ts +4 -4
  72. package/build/types/offer/booking-v2/response/changed-line.d.ts +4 -4
  73. package/build/types/offer/booking-v2/response/index.d.ts +7 -7
  74. package/build/types/offer/booking-v2/shared/booking-option-group.d.ts +5 -5
  75. package/build/types/offer/booking-v2/shared/booking-option-pax.d.ts +7 -7
  76. package/build/types/offer/booking-v2/shared/booking-option-unit.d.ts +6 -6
  77. package/build/types/offer/booking-v2/shared/booking-package-flight.d.ts +11 -11
  78. package/build/types/offer/booking-v2/shared/booking-package-hotel-option.d.ts +7 -7
  79. package/build/types/offer/booking-v2/shared/booking-package-hotel-room.d.ts +5 -5
  80. package/build/types/offer/booking-v2/shared/booking-package-hotel.d.ts +10 -10
  81. package/build/types/offer/booking-v2/shared/booking-package-line.d.ts +7 -7
  82. package/build/types/offer/booking-v2/shared/booking-package-pax.d.ts +16 -16
  83. package/build/types/offer/booking-v2/shared/booking-package-request-room.d.ts +5 -5
  84. package/build/types/offer/booking-v2/shared/booking-package-room-option.d.ts +9 -7
  85. package/build/types/offer/booking-v2/shared/booking-package-room.d.ts +5 -5
  86. package/build/types/offer/booking-v2/shared/booking-package.d.ts +29 -29
  87. package/build/types/offer/booking-v2/shared/index.d.ts +17 -17
  88. package/build/types/offer/booking-v2/shared/per-booking-package-option.d.ts +9 -9
  89. package/build/types/offer/booking-v2/shared/per-package-option.d.ts +9 -8
  90. package/build/types/offer/booking-v2/shared/per-pax-package-option.d.ts +5 -5
  91. package/build/types/offer/booking-v2/shared/per-unit-package-option.d.ts +7 -7
  92. package/build/types/offer/cached-package-search-result.d.ts +5 -5
  93. package/build/types/offer/confirmed-dossier-check.d.ts +6 -6
  94. package/build/types/offer/crm-contact-request.d.ts +36 -28
  95. package/build/types/offer/customer-request.d.ts +5 -5
  96. package/build/types/offer/dossier-default-product.d.ts +14 -14
  97. package/build/types/offer/entry-check-response.d.ts +8 -8
  98. package/build/types/offer/entry-line-meta-data.d.ts +5 -5
  99. package/build/types/offer/entry-line-pax.d.ts +8 -8
  100. package/build/types/offer/entry-line.d.ts +73 -67
  101. package/build/types/offer/entry-price-line.d.ts +40 -40
  102. package/build/types/offer/entry-room2.d.ts +5 -5
  103. package/build/types/offer/entry.d.ts +59 -49
  104. package/build/types/offer/flight-meta-data-line.d.ts +16 -16
  105. package/build/types/offer/flight-meta-data.d.ts +10 -10
  106. package/build/types/offer/flight-pool.d.ts +5 -5
  107. package/build/types/offer/index.d.ts +65 -65
  108. package/build/types/offer/language.d.ts +5 -5
  109. package/build/types/offer/multiroom-book-request.d.ts +10 -10
  110. package/build/types/offer/note.d.ts +16 -16
  111. package/build/types/offer/other-product.d.ts +13 -13
  112. package/build/types/offer/package-book-request-room.d.ts +5 -5
  113. package/build/types/offer/package-book-request.d.ts +12 -12
  114. package/build/types/offer/package-flight.d.ts +13 -13
  115. package/build/types/offer/package-flights.d.ts +5 -5
  116. package/build/types/offer/package-option.d.ts +22 -22
  117. package/build/types/offer/package-price-details-request-room.d.ts +4 -4
  118. package/build/types/offer/package-price-details-request.d.ts +8 -8
  119. package/build/types/offer/package-room-option.d.ts +10 -10
  120. package/build/types/offer/package-room.d.ts +7 -7
  121. package/build/types/offer/package-search-destination.d.ts +9 -9
  122. package/build/types/offer/package-search-request-date.d.ts +4 -4
  123. package/build/types/offer/package-search-request-room.d.ts +5 -5
  124. package/build/types/offer/package-search-request.d.ts +22 -18
  125. package/build/types/offer/package-search-result.d.ts +12 -12
  126. package/build/types/offer/package-sub-option.d.ts +6 -6
  127. package/build/types/offer/pax.d.ts +29 -29
  128. package/build/types/offer/payment.d.ts +20 -20
  129. package/build/types/offer/person-country-preference.d.ts +7 -7
  130. package/build/types/offer/person-location-preference.d.ts +7 -7
  131. package/build/types/offer/person-oord-preference.d.ts +7 -7
  132. package/build/types/offer/person-period-date-range-preference.d.ts +6 -6
  133. package/build/types/offer/person-period-preference.d.ts +7 -7
  134. package/build/types/offer/person-region-preference.d.ts +7 -7
  135. package/build/types/offer/person-tour-group-preference.d.ts +7 -7
  136. package/build/types/offer/price-detail.d.ts +18 -18
  137. package/build/types/offer/price-per-pax.d.ts +6 -6
  138. package/build/types/offer/product-notification-result.d.ts +9 -9
  139. package/build/types/offer/web-contact-form-request.d.ts +13 -13
  140. package/build/types/offer/web-contact-has-tag-request.d.ts +4 -4
  141. package/build/types/tide-client-config.d.ts +4 -4
  142. package/build/utils/api.d.ts +6 -1
  143. package/build/utils/booking-client.d.ts +169 -102
  144. package/build/utils/booking-v2-client.d.ts +37 -7
  145. package/build/utils/common-client.d.ts +6 -1
  146. package/build/utils/json.d.ts +2 -2
  147. package/build/utils/mollie-client.d.ts +15 -7
  148. package/build/utils/web-client.d.ts +14 -10
  149. package/build/utils/web-contact-client.d.ts +23 -11
  150. package/package.json +54 -54
  151. package/src/index.ts +65 -65
  152. package/src/types/offer/booking-v2/index.ts +3 -3
  153. package/src/types/offer/booking-v2/request/booking-package-address.ts +13 -13
  154. package/src/types/offer/booking-v2/request/booking-package-book-request.ts +14 -14
  155. package/src/types/offer/booking-v2/request/booking-package-details-request.ts +13 -13
  156. package/src/types/offer/booking-v2/request/booking-package-request.ts +5 -5
  157. package/src/types/offer/booking-v2/request/booking-package-search-request.ts +23 -23
  158. package/src/types/offer/booking-v2/request/index.ts +5 -5
  159. package/src/types/offer/booking-v2/response/booking-package-allotment-info.ts +13 -13
  160. package/src/types/offer/booking-v2/response/booking-package-dossier.ts +5 -5
  161. package/src/types/offer/booking-v2/response/booking-package-item.ts +14 -14
  162. package/src/types/offer/booking-v2/response/booking-price-detail.ts +15 -15
  163. package/src/types/offer/booking-v2/response/booking-price-details.ts +7 -7
  164. package/src/types/offer/booking-v2/response/booking-price-per-pax.ts +4 -4
  165. package/src/types/offer/booking-v2/response/changed-line.ts +4 -4
  166. package/src/types/offer/booking-v2/response/index.ts +7 -7
  167. package/src/types/offer/booking-v2/shared/booking-option-group.ts +5 -5
  168. package/src/types/offer/booking-v2/shared/booking-option-pax.ts +8 -8
  169. package/src/types/offer/booking-v2/shared/booking-option-unit.ts +7 -7
  170. package/src/types/offer/booking-v2/shared/booking-package-flight.ts +11 -11
  171. package/src/types/offer/booking-v2/shared/booking-package-hotel-option.ts +7 -7
  172. package/src/types/offer/booking-v2/shared/booking-package-hotel-room.ts +6 -6
  173. package/src/types/offer/booking-v2/shared/booking-package-hotel.ts +13 -13
  174. package/src/types/offer/booking-v2/shared/booking-package-line.ts +7 -7
  175. package/src/types/offer/booking-v2/shared/booking-package-pax.ts +18 -18
  176. package/src/types/offer/booking-v2/shared/booking-package-request-room.ts +6 -6
  177. package/src/types/offer/booking-v2/shared/booking-package-room-option.ts +9 -7
  178. package/src/types/offer/booking-v2/shared/booking-package-room.ts +6 -6
  179. package/src/types/offer/booking-v2/shared/booking-package.ts +36 -36
  180. package/src/types/offer/booking-v2/shared/index.ts +17 -17
  181. package/src/types/offer/booking-v2/shared/per-booking-package-option.ts +10 -10
  182. package/src/types/offer/booking-v2/shared/per-package-option.ts +10 -9
  183. package/src/types/offer/booking-v2/shared/per-pax-package-option.ts +6 -6
  184. package/src/types/offer/booking-v2/shared/per-unit-package-option.ts +8 -8
  185. package/src/types/offer/index.ts +65 -65
  186. package/src/utils/booking-v2-client.ts +81 -81
@@ -1,10 +1,10 @@
1
- import { BookingOptionGroup } from "./booking-option-group";
2
- import { BookingOptionPax } from "./booking-option-pax";
3
- import { BookingOptionUnit } from "./booking-option-unit";
4
- import { PerPackageOption } from "./per-package-option";
5
-
6
- export interface PerBookingPackageOption extends PerPackageOption {
7
- groups: BookingOptionGroup<PerBookingPackageOption>;
8
- units: BookingOptionUnit[];
9
- pax: BookingOptionPax[];
10
- }
1
+ import { BookingOptionGroup } from "./booking-option-group";
2
+ import { BookingOptionPax } from "./booking-option-pax";
3
+ import { BookingOptionUnit } from "./booking-option-unit";
4
+ import { PerPackageOption } from "./per-package-option";
5
+
6
+ export interface PerBookingPackageOption extends PerPackageOption {
7
+ groups: BookingOptionGroup<PerBookingPackageOption>;
8
+ units: BookingOptionUnit[];
9
+ pax: BookingOptionPax[];
10
+ }
@@ -1,9 +1,10 @@
1
- import { BookingPackageLine } from "./booking-package-line";
2
-
3
- export interface PerPackageOption {
4
- line: BookingPackageLine;
5
- isSelected: boolean;
6
- isDefault: boolean;
7
- requirementType?: number;
8
- alternatives: BookingPackageLine[];
9
- }
1
+ import { BookingPackageLine } from "./booking-package-line";
2
+
3
+ export interface PerPackageOption {
4
+ line: BookingPackageLine;
5
+ isSelected: boolean;
6
+ isHotelPool: boolean;
7
+ isDefault: boolean;
8
+ requirementType?: number;
9
+ alternatives: BookingPackageLine[];
10
+ }
@@ -1,6 +1,6 @@
1
- import { BookingOptionGroup } from "./booking-option-group";
2
- import { PerPackageOption } from "./per-package-option";
3
-
4
- export interface PerPaxPackageOption extends PerPackageOption {
5
- groups: BookingOptionGroup<PerPaxPackageOption>[];
6
- }
1
+ import { BookingOptionGroup } from "./booking-option-group";
2
+ import { PerPackageOption } from "./per-package-option";
3
+
4
+ export interface PerPaxPackageOption extends PerPackageOption {
5
+ groups: BookingOptionGroup<PerPaxPackageOption>[];
6
+ }
@@ -1,8 +1,8 @@
1
- import { BookingOptionGroup } from "./booking-option-group";
2
- import { BookingOptionPax } from "./booking-option-pax";
3
- import { PerPackageOption } from "./per-package-option";
4
-
5
- export interface PerUnitPackageOption extends PerPackageOption {
6
- groups: BookingOptionGroup<PerUnitPackageOption>[];
7
- pax: BookingOptionPax[];
8
- }
1
+ import { BookingOptionGroup } from "./booking-option-group";
2
+ import { BookingOptionPax } from "./booking-option-pax";
3
+ import { PerPackageOption } from "./per-package-option";
4
+
5
+ export interface PerUnitPackageOption extends PerPackageOption {
6
+ groups: BookingOptionGroup<PerUnitPackageOption>[];
7
+ pax: BookingOptionPax[];
8
+ }
@@ -1,65 +1,65 @@
1
- export * from "./additional-services";
2
- export * from "./address";
3
- export * from "./alternative-flight-data";
4
- export * from "./alternative-flight-leg";
5
- export * from "./alternative-flight";
6
- export * from "./available-package-accommodation";
7
- export * from "./available-package-flight";
8
- export * from "./available-package-option";
9
- export * from "./available-package-pax-price";
10
- export * from "./available-package-regime";
11
- export * from "./available-package";
12
- export * from "./base-price";
13
- export * from "./base-prices-from-date-request";
14
- export * from "./base-prices-request";
15
- export * from "./book-request";
16
- export * from "./booking-response";
17
- export * from "./cached-package-search-result";
18
- export * from "./confirmed-dossier-check";
19
- export * from "./crm-contact-request";
20
- export * from "./customer-request";
21
- export * from "./dossier-default-product";
22
- export * from "./entry-check-response";
23
- export * from "./entry-line-meta-data";
24
- export * from "./entry-line-pax";
25
- export * from "./entry-line";
26
- export * from "./entry-price-line";
27
- export * from "./entry-room2";
28
- export * from "./entry";
29
- export * from "./flight-meta-data-line";
30
- export * from "./flight-meta-data";
31
- export * from "./flight-pool";
32
- export * from "./language";
33
- export * from "./multiroom-book-request";
34
- export * from "./note";
35
- export * from "./other-product";
36
- export * from "./package-book-request-room";
37
- export * from "./package-book-request";
38
- export * from "./package-flight";
39
- export * from "./package-flights";
40
- export * from "./package-option";
41
- export * from "./package-price-details-request-room";
42
- export * from "./package-price-details-request";
43
- export * from "./package-room-option";
44
- export * from "./package-room";
45
- export * from "./package-search-destination";
46
- export * from "./package-search-request-date";
47
- export * from "./package-search-request-room";
48
- export * from "./package-search-request";
49
- export * from "./package-search-result";
50
- export * from "./package-sub-option";
51
- export * from "./pax";
52
- export * from "./payment";
53
- export * from "./person-country-preference";
54
- export * from "./person-location-preference";
55
- export * from "./person-oord-preference";
56
- export * from "./person-period-date-range-preference";
57
- export * from "./person-period-preference";
58
- export * from "./person-region-preference";
59
- export * from "./person-tour-group-preference";
60
- export * from "./price-detail";
61
- export * from "./price-per-pax";
62
- export * from "./product-notification-result";
63
- export * from "./web-contact-form-request";
64
- export * from "./web-contact-has-tag-request";
65
- export * from "./booking-v2";
1
+ export * from "./additional-services";
2
+ export * from "./address";
3
+ export * from "./alternative-flight-data";
4
+ export * from "./alternative-flight-leg";
5
+ export * from "./alternative-flight";
6
+ export * from "./available-package-accommodation";
7
+ export * from "./available-package-flight";
8
+ export * from "./available-package-option";
9
+ export * from "./available-package-pax-price";
10
+ export * from "./available-package-regime";
11
+ export * from "./available-package";
12
+ export * from "./base-price";
13
+ export * from "./base-prices-from-date-request";
14
+ export * from "./base-prices-request";
15
+ export * from "./book-request";
16
+ export * from "./booking-response";
17
+ export * from "./cached-package-search-result";
18
+ export * from "./confirmed-dossier-check";
19
+ export * from "./crm-contact-request";
20
+ export * from "./customer-request";
21
+ export * from "./dossier-default-product";
22
+ export * from "./entry-check-response";
23
+ export * from "./entry-line-meta-data";
24
+ export * from "./entry-line-pax";
25
+ export * from "./entry-line";
26
+ export * from "./entry-price-line";
27
+ export * from "./entry-room2";
28
+ export * from "./entry";
29
+ export * from "./flight-meta-data-line";
30
+ export * from "./flight-meta-data";
31
+ export * from "./flight-pool";
32
+ export * from "./language";
33
+ export * from "./multiroom-book-request";
34
+ export * from "./note";
35
+ export * from "./other-product";
36
+ export * from "./package-book-request-room";
37
+ export * from "./package-book-request";
38
+ export * from "./package-flight";
39
+ export * from "./package-flights";
40
+ export * from "./package-option";
41
+ export * from "./package-price-details-request-room";
42
+ export * from "./package-price-details-request";
43
+ export * from "./package-room-option";
44
+ export * from "./package-room";
45
+ export * from "./package-search-destination";
46
+ export * from "./package-search-request-date";
47
+ export * from "./package-search-request-room";
48
+ export * from "./package-search-request";
49
+ export * from "./package-search-result";
50
+ export * from "./package-sub-option";
51
+ export * from "./pax";
52
+ export * from "./payment";
53
+ export * from "./person-country-preference";
54
+ export * from "./person-location-preference";
55
+ export * from "./person-oord-preference";
56
+ export * from "./person-period-date-range-preference";
57
+ export * from "./person-period-preference";
58
+ export * from "./person-region-preference";
59
+ export * from "./person-tour-group-preference";
60
+ export * from "./price-detail";
61
+ export * from "./price-per-pax";
62
+ export * from "./product-notification-result";
63
+ export * from "./web-contact-form-request";
64
+ export * from "./web-contact-has-tag-request";
65
+ export * from "./booking-v2";
@@ -1,81 +1,81 @@
1
- import { PackageSearchRequest, TideClientConfig } from "..";
2
-
3
- import {
4
- AvailablePackage,
5
- BookingPackage,
6
- BookingPackageBookRequest,
7
- BookingPackageDetailsRequest,
8
- BookingPackageDossier,
9
- BookingPackageItem,
10
- BookingPackageRequest,
11
- BookingPackageSearchRequest,
12
- BookingPriceDetails,
13
- } from "../types";
14
- import { post } from "./common-client";
15
-
16
- const ENDPOINT = "/api/web/booking/v2";
17
- const ENDPOINT_PACKAGE_SEARCH_LIST = `${ENDPOINT}/package-search-list`;
18
- const ENDPOINT_SEARCH = `${ENDPOINT}/search`;
19
- const ENDPOINT_DETAILS = `${ENDPOINT}/details`;
20
- const ENDPOINT_PRICE_DETAILS = `${ENDPOINT}/price-details`;
21
- const ENDPOINT_BOOK = `${ENDPOINT}/book`;
22
-
23
- export const readPackageSearchList = (
24
- config: TideClientConfig,
25
- request: PackageSearchRequest,
26
- signal?: AbortSignal
27
- ): Promise<AvailablePackage[]> => {
28
- const url = `${config.host}${ENDPOINT_PACKAGE_SEARCH_LIST}`;
29
- const apiKey = config.apiKey;
30
- const body = JSON.stringify(request);
31
-
32
- return post(url, apiKey, body, signal);
33
- };
34
-
35
- export const search = (
36
- config: TideClientConfig,
37
- request: BookingPackageRequest<BookingPackageSearchRequest>,
38
- signal?: AbortSignal
39
- ): Promise<BookingPackageItem[]> => {
40
- const url = `${config.host}${ENDPOINT_SEARCH}`;
41
- const apiKey = config.apiKey;
42
- const body = JSON.stringify(request);
43
-
44
- return post(url, apiKey, body, signal);
45
- };
46
-
47
- export const details = (
48
- config: TideClientConfig,
49
- request: BookingPackageRequest<BookingPackageDetailsRequest>,
50
- signal?: AbortSignal
51
- ): Promise<BookingPackage> => {
52
- const url = `${config.host}${ENDPOINT_DETAILS}`;
53
- const apiKey = config.apiKey;
54
- const body = JSON.stringify(request);
55
-
56
- return post(url, apiKey, body, signal);
57
- };
58
-
59
- export const priceDetails = (
60
- config: TideClientConfig,
61
- request: BookingPackageRequest<BookingPackageBookRequest>,
62
- signal?: AbortSignal
63
- ): Promise<BookingPriceDetails> => {
64
- const url = `${config.host}${ENDPOINT_PRICE_DETAILS}`;
65
- const apiKey = config.apiKey;
66
- const body = JSON.stringify(request);
67
-
68
- return post(url, apiKey, body, signal);
69
- };
70
-
71
- export const book = (
72
- config: TideClientConfig,
73
- request: BookingPackageRequest<BookingPackageBookRequest>,
74
- signal?: AbortSignal
75
- ): Promise<BookingPackageDossier> => {
76
- const url = `${config.host}${ENDPOINT_BOOK}`;
77
- const apiKey = config.apiKey;
78
- const body = JSON.stringify(request);
79
-
80
- return post(url, apiKey, body, signal);
81
- };
1
+ import { PackageSearchRequest, TideClientConfig } from "..";
2
+
3
+ import {
4
+ AvailablePackage,
5
+ BookingPackage,
6
+ BookingPackageBookRequest,
7
+ BookingPackageDetailsRequest,
8
+ BookingPackageDossier,
9
+ BookingPackageItem,
10
+ BookingPackageRequest,
11
+ BookingPackageSearchRequest,
12
+ BookingPriceDetails,
13
+ } from "../types";
14
+ import { post } from "./common-client";
15
+
16
+ const ENDPOINT = "/api/web/booking/v2";
17
+ const ENDPOINT_PACKAGE_SEARCH_LIST = `${ENDPOINT}/package-search-list`;
18
+ const ENDPOINT_SEARCH = `${ENDPOINT}/search`;
19
+ const ENDPOINT_DETAILS = `${ENDPOINT}/details`;
20
+ const ENDPOINT_PRICE_DETAILS = `${ENDPOINT}/price-details`;
21
+ const ENDPOINT_BOOK = `${ENDPOINT}/book`;
22
+
23
+ export const readPackageSearchList = (
24
+ config: TideClientConfig,
25
+ request: PackageSearchRequest,
26
+ signal?: AbortSignal
27
+ ): Promise<AvailablePackage[]> => {
28
+ const url = `${config.host}${ENDPOINT_PACKAGE_SEARCH_LIST}`;
29
+ const apiKey = config.apiKey;
30
+ const body = JSON.stringify(request);
31
+
32
+ return post(url, apiKey, body, signal);
33
+ };
34
+
35
+ export const search = (
36
+ config: TideClientConfig,
37
+ request: BookingPackageRequest<BookingPackageSearchRequest>,
38
+ signal?: AbortSignal
39
+ ): Promise<BookingPackageItem[]> => {
40
+ const url = `${config.host}${ENDPOINT_SEARCH}`;
41
+ const apiKey = config.apiKey;
42
+ const body = JSON.stringify(request);
43
+
44
+ return post(url, apiKey, body, signal);
45
+ };
46
+
47
+ export const details = (
48
+ config: TideClientConfig,
49
+ request: BookingPackageRequest<BookingPackageDetailsRequest>,
50
+ signal?: AbortSignal
51
+ ): Promise<BookingPackage> => {
52
+ const url = `${config.host}${ENDPOINT_DETAILS}`;
53
+ const apiKey = config.apiKey;
54
+ const body = JSON.stringify(request);
55
+
56
+ return post(url, apiKey, body, signal);
57
+ };
58
+
59
+ export const priceDetails = (
60
+ config: TideClientConfig,
61
+ request: BookingPackageRequest<BookingPackageBookRequest>,
62
+ signal?: AbortSignal
63
+ ): Promise<BookingPriceDetails> => {
64
+ const url = `${config.host}${ENDPOINT_PRICE_DETAILS}`;
65
+ const apiKey = config.apiKey;
66
+ const body = JSON.stringify(request);
67
+
68
+ return post(url, apiKey, body, signal);
69
+ };
70
+
71
+ export const book = (
72
+ config: TideClientConfig,
73
+ request: BookingPackageRequest<BookingPackageBookRequest>,
74
+ signal?: AbortSignal
75
+ ): Promise<BookingPackageDossier> => {
76
+ const url = `${config.host}${ENDPOINT_BOOK}`;
77
+ const apiKey = config.apiKey;
78
+ const body = JSON.stringify(request);
79
+
80
+ return post(url, apiKey, body, signal);
81
+ };