mts-booking-library 1.3.14 → 1.3.16
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/booking/journeyBooking.d.ts +4 -5
- package/lib/booking/journeyBooking.js +2 -3
- package/lib/booking/serviceBooking.d.ts +6 -7
- package/lib/booking/serviceBooking.js +6 -7
- package/lib/booking/subscriptionBooking.d.ts +4 -5
- package/lib/booking/subscriptionBooking.js +5 -6
- package/lib/booking/tplBooking.d.ts +12 -11
- package/lib/booking/tplBooking.js +14 -13
- package/lib/types/common/Person.d.ts +26 -23
- package/lib/types/common/Person.js +3 -1
- package/lib/types/common/Tariffs.d.ts +62 -20
- package/lib/types/tpl/TplCart.d.ts +6 -6
- package/package.json +2 -2
@@ -1,5 +1,5 @@
|
|
1
1
|
import { ErrorResponse } from "../types/ErrorResponse";
|
2
|
-
import { EditPassengersDetailsRequest, GetBuyerPassengersDetailsResponse
|
2
|
+
import { Buyer, EditPassengersDetailsRequest, GetBuyerPassengersDetailsResponse } from "../types/common/Person";
|
3
3
|
import { AddReductionRequest } from "../types/common/Reduction";
|
4
4
|
import { BusMatrix } from "../types/journeys/BusMatrix";
|
5
5
|
import { CreateJourneyCartRequest, JourneyCart } from "../types/journeys/JourneyCart";
|
@@ -96,13 +96,12 @@ export declare class JourneyBooking extends Booking {
|
|
96
96
|
getBuyerPassengersDetails(): Promise<ErrorResponse | GetBuyerPassengersDetailsResponse>;
|
97
97
|
/**
|
98
98
|
* @description This method shall be called when the user wants to retrieve information about an esisting buyer.
|
99
|
-
* @param
|
100
|
-
*
|
101
|
-
* @param {string} [phoneNumber=undefined] The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
99
|
+
* @param linkavelCard The linkavel card number of the buyer. This parameter is required if phoneNumber is not set.
|
100
|
+
* @param phoneNumber The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
102
101
|
* @returns An object of type {@link GetBuyerPassengersDetailsResponse} containing the buyer and the passengers information,
|
103
102
|
* as well as a list of the available tariffs for each trip.
|
104
103
|
*/
|
105
|
-
getBuyerFromLinkavelCard(linkavelCard?: string, phoneNumber?: string): Promise<ErrorResponse |
|
104
|
+
getBuyerFromLinkavelCard(linkavelCard?: string, phoneNumber?: string): Promise<ErrorResponse | Buyer>;
|
106
105
|
/**
|
107
106
|
* @description This methosd shall be called when the user wants to update the buyer and the passengers information.
|
108
107
|
* @param {EditPassengersDetailsRequest} passengersDetails The object containing the buyer and the passengers information.
|
@@ -349,9 +349,8 @@ var JourneyBooking = /** @class */ (function (_super) {
|
|
349
349
|
};
|
350
350
|
/**
|
351
351
|
* @description This method shall be called when the user wants to retrieve information about an esisting buyer.
|
352
|
-
* @param
|
353
|
-
*
|
354
|
-
* @param {string} [phoneNumber=undefined] The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
352
|
+
* @param linkavelCard The linkavel card number of the buyer. This parameter is required if phoneNumber is not set.
|
353
|
+
* @param phoneNumber The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
355
354
|
* @returns An object of type {@link GetBuyerPassengersDetailsResponse} containing the buyer and the passengers information,
|
356
355
|
* as well as a list of the available tariffs for each trip.
|
357
356
|
*/
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { ErrorResponse } from "../types/ErrorResponse";
|
2
|
-
import {
|
2
|
+
import { Buyer, GetBuyerPassengersDetailsResponse } from "../types/common/Person";
|
3
3
|
import { AddReductionRequest } from "../types/common/Reduction";
|
4
4
|
import { Service, ServiceTripsResponse } from "../types/services/Service";
|
5
5
|
import { CreateServiceCartRequest, ServiceCart } from "../types/services/ServiceCart";
|
@@ -98,20 +98,19 @@ export declare class ServiceBooking extends Booking {
|
|
98
98
|
getBuyerPassengersDetails(): Promise<ErrorResponse | GetBuyerPassengersDetailsResponse>;
|
99
99
|
/**
|
100
100
|
* @description This method shall be called when the user wants to retrieve information about an esisting buyer.
|
101
|
-
* @param
|
102
|
-
*
|
103
|
-
* @param {string} [linkavelCardPhoneNumber=undefined] The linkavel card phone number of the buyer. This parameter is required if linkavelCardNumber is not set.
|
101
|
+
* @param linkavelCard The linkavel card number of the buyer. This parameter is required if linkavelCardPhoneNumber is not set.
|
102
|
+
* @param phoneNumber The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
104
103
|
* @returns An object of type {@link GetBuyerPassengersDetailsResponse} containing the buyer and the passengers information,
|
105
104
|
* as well as a list of the available tariffs for each trip.
|
106
105
|
*/
|
107
|
-
getBuyerFromLinkavelCard(
|
106
|
+
getBuyerFromLinkavelCard(linkavelCard?: string, phoneNumber?: string): Promise<ErrorResponse | Buyer>;
|
108
107
|
/**
|
109
108
|
* @description This method shall be called when the user wants to update the buyer information.
|
110
|
-
* @param
|
109
|
+
* @param buyerDetails The object containing the buyer information.
|
111
110
|
* It should be null if the buyer data cannot be specified (see {@link GetBuyerPassengersDetailsResponse.buyerDataStatus}).
|
112
111
|
* @returns An {@link ErrorResponse} object in case of error, true otherwise.
|
113
112
|
*/
|
114
|
-
updateBuyerPassengersDetails(buyerDetails:
|
113
|
+
updateBuyerPassengersDetails(buyerDetails: Buyer | null): Promise<ErrorResponse | boolean>;
|
115
114
|
/**
|
116
115
|
* @description This method allows to add a reduction to the whole cart or to a single trip in the cart.
|
117
116
|
* @param {AddReductionRequest} request The information about the reduction to add
|
@@ -329,13 +329,12 @@ var ServiceBooking = /** @class */ (function (_super) {
|
|
329
329
|
};
|
330
330
|
/**
|
331
331
|
* @description This method shall be called when the user wants to retrieve information about an esisting buyer.
|
332
|
-
* @param
|
333
|
-
*
|
334
|
-
* @param {string} [linkavelCardPhoneNumber=undefined] The linkavel card phone number of the buyer. This parameter is required if linkavelCardNumber is not set.
|
332
|
+
* @param linkavelCard The linkavel card number of the buyer. This parameter is required if linkavelCardPhoneNumber is not set.
|
333
|
+
* @param phoneNumber The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
335
334
|
* @returns An object of type {@link GetBuyerPassengersDetailsResponse} containing the buyer and the passengers information,
|
336
335
|
* as well as a list of the available tariffs for each trip.
|
337
336
|
*/
|
338
|
-
ServiceBooking.prototype.getBuyerFromLinkavelCard = function (
|
337
|
+
ServiceBooking.prototype.getBuyerFromLinkavelCard = function (linkavelCard, phoneNumber) {
|
339
338
|
return __awaiter(this, void 0, void 0, function () {
|
340
339
|
var buyerPassengersDetails, searchParams, url;
|
341
340
|
return __generator(this, function (_a) {
|
@@ -347,10 +346,10 @@ var ServiceBooking = /** @class */ (function (_super) {
|
|
347
346
|
if (!buyerPassengersDetails || !buyerPassengersDetails[0]) {
|
348
347
|
throw Error("The status of the cart does not allow to call this API");
|
349
348
|
}
|
350
|
-
if (!
|
349
|
+
if (!linkavelCard && !phoneNumber) {
|
351
350
|
throw Error("At least one of the parameters linkavelCardNumber and linkavelCardPhoneNumber must be set");
|
352
351
|
}
|
353
|
-
searchParams = new URLSearchParams(__assign(__assign({}, (
|
352
|
+
searchParams = new URLSearchParams(__assign(__assign({}, (linkavelCard && { linkavelCard: linkavelCard })), (phoneNumber && { phoneNumber: phoneNumber })));
|
354
353
|
url = "".concat(this.config.API_ENDPOINT, "/v3_resources/buyers?").concat(searchParams);
|
355
354
|
return [2 /*return*/, this.callGetApi(url).then(function (response) {
|
356
355
|
// Check for errors
|
@@ -364,7 +363,7 @@ var ServiceBooking = /** @class */ (function (_super) {
|
|
364
363
|
};
|
365
364
|
/**
|
366
365
|
* @description This method shall be called when the user wants to update the buyer information.
|
367
|
-
* @param
|
366
|
+
* @param buyerDetails The object containing the buyer information.
|
368
367
|
* It should be null if the buyer data cannot be specified (see {@link GetBuyerPassengersDetailsResponse.buyerDataStatus}).
|
369
368
|
* @returns An {@link ErrorResponse} object in case of error, true otherwise.
|
370
369
|
*/
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { ErrorResponse } from "../types/ErrorResponse";
|
2
|
-
import { EditPassengersDetailsRequest, GetBuyerPassengersDetailsResponse
|
2
|
+
import { Buyer, EditPassengersDetailsRequest, GetBuyerPassengersDetailsResponse } from "../types/common/Person";
|
3
3
|
import { AddReductionRequest } from "../types/common/Reduction";
|
4
4
|
import { GetSubscriptionAvailabilityRequest, GetSubscriptionAvailabilityResponse } from "../types/subscriptions/SubscriptionAvailabilities";
|
5
5
|
import { CreateSubscriptionCartRequest, SubscriptionCart } from "../types/subscriptions/SubscriptionCart";
|
@@ -117,13 +117,12 @@ export declare class SubscriptionBooking extends Booking {
|
|
117
117
|
getBuyerPassengersDetails(): Promise<ErrorResponse | GetBuyerPassengersDetailsResponse>;
|
118
118
|
/**
|
119
119
|
* @description This method shall be called when the user wants to retrieve information about an esisting buyer.
|
120
|
-
* @param
|
121
|
-
*
|
122
|
-
* @param {string} [linkavelCardPhoneNumber=undefined] The linkavel card phone number of the buyer. This parameter is required if linkavelCardNumber is not set.
|
120
|
+
* @param linkavelCard The linkavel card number of the buyer. This parameter is required if linkavelCardPhoneNumber is not set.
|
121
|
+
* @param phoneNumber The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
123
122
|
* @returns An object of type {@link GetBuyerPassengersDetailsResponse} containing the buyer and the passengers information,
|
124
123
|
* as well as a list of the available tariffs for each trip.
|
125
124
|
*/
|
126
|
-
getBuyerFromLinkavelCard(
|
125
|
+
getBuyerFromLinkavelCard(linkavelCard?: string, phoneNumber?: string): Promise<ErrorResponse | Buyer>;
|
127
126
|
/**
|
128
127
|
* @description This methosd shall be called when the user wants to update the buyer and the passengers information.
|
129
128
|
* @param {EditPassengersDetailsRequest} passengersDetails The object containing the buyer and the passengers information.
|
@@ -408,13 +408,12 @@ var SubscriptionBooking = /** @class */ (function (_super) {
|
|
408
408
|
};
|
409
409
|
/**
|
410
410
|
* @description This method shall be called when the user wants to retrieve information about an esisting buyer.
|
411
|
-
* @param
|
412
|
-
*
|
413
|
-
* @param {string} [linkavelCardPhoneNumber=undefined] The linkavel card phone number of the buyer. This parameter is required if linkavelCardNumber is not set.
|
411
|
+
* @param linkavelCard The linkavel card number of the buyer. This parameter is required if linkavelCardPhoneNumber is not set.
|
412
|
+
* @param phoneNumber The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
414
413
|
* @returns An object of type {@link GetBuyerPassengersDetailsResponse} containing the buyer and the passengers information,
|
415
414
|
* as well as a list of the available tariffs for each trip.
|
416
415
|
*/
|
417
|
-
SubscriptionBooking.prototype.getBuyerFromLinkavelCard = function (
|
416
|
+
SubscriptionBooking.prototype.getBuyerFromLinkavelCard = function (linkavelCard, phoneNumber) {
|
418
417
|
return __awaiter(this, void 0, void 0, function () {
|
419
418
|
var buyerPassengersDetails, searchParams, url;
|
420
419
|
return __generator(this, function (_a) {
|
@@ -426,10 +425,10 @@ var SubscriptionBooking = /** @class */ (function (_super) {
|
|
426
425
|
if (!buyerPassengersDetails || !buyerPassengersDetails[0]) {
|
427
426
|
throw Error("The status of the cart does not allow to call this API");
|
428
427
|
}
|
429
|
-
if (!
|
428
|
+
if (!linkavelCard && !phoneNumber) {
|
430
429
|
throw Error("At least one of the parameters linkavelCardNumber and linkavelCardPhoneNumber must be set");
|
431
430
|
}
|
432
|
-
searchParams = new URLSearchParams(__assign(__assign({}, (
|
431
|
+
searchParams = new URLSearchParams(__assign(__assign({}, (linkavelCard && { linkavelCard: linkavelCard })), (phoneNumber && { phoneNumber: phoneNumber })));
|
433
432
|
url = "".concat(this.config.API_ENDPOINT, "/v3_resources/buyers?").concat(searchParams);
|
434
433
|
return [2 /*return*/, this.callGetApi(url).then(function (response) {
|
435
434
|
// Check for errors
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { ErrorResponse } from "../types/ErrorResponse";
|
2
2
|
import { City } from "../types/common/City";
|
3
|
-
import {
|
3
|
+
import { Buyer, GetBuyerPassengersDetailsResponse } from "../types/common/Person";
|
4
4
|
import { AddReductionRequest } from "../types/common/Reduction";
|
5
5
|
import { TariffType, TermsType } from "../types/common/Tariffs";
|
6
6
|
import { GetTariffsResponse } from "../types/tpl/GetTariffsResponse";
|
@@ -103,11 +103,13 @@ export declare class TplBooking extends Booking {
|
|
103
103
|
getTariffs(superAreaId: number, termsTypeId: number | null, onlyTickets: boolean, onlySubscriptions: boolean): Promise<ErrorResponse | GetTariffsResponse>;
|
104
104
|
/**
|
105
105
|
* This method allows to create a TPL cart.
|
106
|
-
* @param
|
107
|
-
* @param
|
108
|
-
* @param
|
106
|
+
* @param tariffIdToQuantity A map that associates a tariff id (the one chosen by the user) to the number of tickets to buy for that tariff.
|
107
|
+
* @param currency The currency in which the ticket is priced.
|
108
|
+
* @param startDate The start date of the ticket. This is optional and should be used only for subscriptions.
|
109
|
+
* @param isCurrentPeriod Whether the subscription is for the current period. This is optional and should be used only for subscriptions.
|
110
|
+
* @param renewSubscriptionTicketPNR The PNR of the subscription ticket to renew. This is optional and should be used only for subscriptions.
|
109
111
|
*/
|
110
|
-
createTplCart(tariffIdToQuantity: Map<number, number>, currency: Booking.Currencies, startDate?: string): Promise<ErrorResponse | TplCart>;
|
112
|
+
createTplCart(tariffIdToQuantity: Map<number, number>, currency: Booking.Currencies, startDate?: string, isCurrentPeriod?: boolean, renewSubscriptionTicketPNR?: string): Promise<ErrorResponse | TplCart>;
|
111
113
|
/**
|
112
114
|
* @description This method shall be called when the user wants to retrieve information about the buyer and the passengers.
|
113
115
|
* @returns An object of type {@link GetBuyerPassengersDetailsResponse} containing the buyer and the passengers information,
|
@@ -116,20 +118,19 @@ export declare class TplBooking extends Booking {
|
|
116
118
|
getBuyerPassengersDetails(): Promise<ErrorResponse | GetBuyerPassengersDetailsResponse>;
|
117
119
|
/**
|
118
120
|
* @description This method shall be called when the user wants to retrieve information about an esisting buyer.
|
119
|
-
* @param
|
120
|
-
*
|
121
|
-
* @param {string} [linkavelCardPhoneNumber=undefined] The linkavel card phone number of the buyer. This parameter is required if linkavelCardNumber is not set.
|
121
|
+
* @param linkavelCard The linkavel card number of the buyer. This parameter is required if linkavelCardPhoneNumber is not set.
|
122
|
+
* @param phoneNumber The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
122
123
|
* @returns An object of type {@link GetBuyerPassengersDetailsResponse} containing the buyer and the passengers information,
|
123
124
|
* as well as a list of the available tariffs for each trip.
|
124
125
|
*/
|
125
|
-
getBuyerFromLinkavelCard(
|
126
|
+
getBuyerFromLinkavelCard(linkavelCard?: string, phoneNumber?: string): Promise<ErrorResponse | Buyer>;
|
126
127
|
/**
|
127
128
|
* @description This method shall be called when the user wants to update the buyer information.
|
128
|
-
* @param
|
129
|
+
* @param buyerDetails The object containing the buyer information.
|
129
130
|
* It should be null if the buyer data cannot be specified (see {@link GetBuyerPassengersDetailsResponse.buyerDataStatus}).
|
130
131
|
* @returns An {@link ErrorResponse} object in case of error, true otherwise.
|
131
132
|
*/
|
132
|
-
updateBuyerPassengersDetails(buyerDetails:
|
133
|
+
updateBuyerPassengersDetails(buyerDetails: Buyer | null): Promise<ErrorResponse | boolean>;
|
133
134
|
/**
|
134
135
|
* @description This method allows to add a reduction to the whole cart or to a single trip in the cart.
|
135
136
|
* @param {AddReductionRequest} request The information about the reduction to add
|
@@ -313,11 +313,13 @@ var TplBooking = /** @class */ (function (_super) {
|
|
313
313
|
};
|
314
314
|
/**
|
315
315
|
* This method allows to create a TPL cart.
|
316
|
-
* @param
|
317
|
-
* @param
|
318
|
-
* @param
|
316
|
+
* @param tariffIdToQuantity A map that associates a tariff id (the one chosen by the user) to the number of tickets to buy for that tariff.
|
317
|
+
* @param currency The currency in which the ticket is priced.
|
318
|
+
* @param startDate The start date of the ticket. This is optional and should be used only for subscriptions.
|
319
|
+
* @param isCurrentPeriod Whether the subscription is for the current period. This is optional and should be used only for subscriptions.
|
320
|
+
* @param renewSubscriptionTicketPNR The PNR of the subscription ticket to renew. This is optional and should be used only for subscriptions.
|
319
321
|
*/
|
320
|
-
TplBooking.prototype.createTplCart = function (tariffIdToQuantity, currency, startDate) {
|
322
|
+
TplBooking.prototype.createTplCart = function (tariffIdToQuantity, currency, startDate, isCurrentPeriod, renewSubscriptionTicketPNR) {
|
321
323
|
return __awaiter(this, void 0, void 0, function () {
|
322
324
|
var url, processedTariffIdToQuantity, request;
|
323
325
|
var _this = this;
|
@@ -327,7 +329,7 @@ var TplBooking = /** @class */ (function (_super) {
|
|
327
329
|
tariffIdToQuantity.forEach(function (value, key) {
|
328
330
|
processedTariffIdToQuantity[key] = value;
|
329
331
|
});
|
330
|
-
request = __assign({ tariffIdToQuantity: processedTariffIdToQuantity, currency: currency }, (startDate && { startDate: startDate }));
|
332
|
+
request = __assign(__assign(__assign({ tariffIdToQuantity: processedTariffIdToQuantity, currency: currency }, (startDate !== undefined && { startDate: startDate })), (isCurrentPeriod !== undefined && { isCurrentPeriod: isCurrentPeriod })), (renewSubscriptionTicketPNR !== undefined && { renewSubscriptionTicketPNR: renewSubscriptionTicketPNR }));
|
331
333
|
// Call the API
|
332
334
|
return [2 /*return*/, this.callPostApi(url, request).then(function (response) {
|
333
335
|
// Check for errors
|
@@ -379,7 +381,7 @@ var TplBooking = /** @class */ (function (_super) {
|
|
379
381
|
return {
|
380
382
|
buyerDataStatus: response.buyerDataStatus,
|
381
383
|
buyer: response.buyer,
|
382
|
-
passengers:
|
384
|
+
passengers: null
|
383
385
|
};
|
384
386
|
})];
|
385
387
|
});
|
@@ -387,13 +389,12 @@ var TplBooking = /** @class */ (function (_super) {
|
|
387
389
|
};
|
388
390
|
/**
|
389
391
|
* @description This method shall be called when the user wants to retrieve information about an esisting buyer.
|
390
|
-
* @param
|
391
|
-
*
|
392
|
-
* @param {string} [linkavelCardPhoneNumber=undefined] The linkavel card phone number of the buyer. This parameter is required if linkavelCardNumber is not set.
|
392
|
+
* @param linkavelCard The linkavel card number of the buyer. This parameter is required if linkavelCardPhoneNumber is not set.
|
393
|
+
* @param phoneNumber The phone number of the buyer. This parameter is required if linkavelCard is not set.
|
393
394
|
* @returns An object of type {@link GetBuyerPassengersDetailsResponse} containing the buyer and the passengers information,
|
394
395
|
* as well as a list of the available tariffs for each trip.
|
395
396
|
*/
|
396
|
-
TplBooking.prototype.getBuyerFromLinkavelCard = function (
|
397
|
+
TplBooking.prototype.getBuyerFromLinkavelCard = function (linkavelCard, phoneNumber) {
|
397
398
|
return __awaiter(this, void 0, void 0, function () {
|
398
399
|
var buyerPassengersDetails, searchParams, url;
|
399
400
|
return __generator(this, function (_a) {
|
@@ -405,10 +406,10 @@ var TplBooking = /** @class */ (function (_super) {
|
|
405
406
|
if (!buyerPassengersDetails || !buyerPassengersDetails[0]) {
|
406
407
|
throw Error("The status of the cart does not allow to call this API");
|
407
408
|
}
|
408
|
-
if (!
|
409
|
+
if (!linkavelCard && !phoneNumber) {
|
409
410
|
throw Error("At least one of the parameters linkavelCardNumber and linkavelCardPhoneNumber must be set");
|
410
411
|
}
|
411
|
-
searchParams = new URLSearchParams(__assign(__assign({}, (
|
412
|
+
searchParams = new URLSearchParams(__assign(__assign({}, (linkavelCard && { linkavelCard: linkavelCard })), (phoneNumber && { phoneNumber: phoneNumber })));
|
412
413
|
url = "".concat(this.config.API_ENDPOINT, "/v3_resources/buyers?").concat(searchParams);
|
413
414
|
return [2 /*return*/, this.callGetApi(url).then(function (response) {
|
414
415
|
// Check for errors
|
@@ -422,7 +423,7 @@ var TplBooking = /** @class */ (function (_super) {
|
|
422
423
|
};
|
423
424
|
/**
|
424
425
|
* @description This method shall be called when the user wants to update the buyer information.
|
425
|
-
* @param
|
426
|
+
* @param buyerDetails The object containing the buyer information.
|
426
427
|
* It should be null if the buyer data cannot be specified (see {@link GetBuyerPassengersDetailsResponse.buyerDataStatus}).
|
427
428
|
* @returns An {@link ErrorResponse} object in case of error, true otherwise.
|
428
429
|
*/
|
@@ -1,22 +1,25 @@
|
|
1
1
|
import { PassengerTariff } from "./Tariffs";
|
2
2
|
/**
|
3
3
|
* @description Represents a person, that can be a passenger or the buyer.
|
4
|
-
*
|
5
|
-
* @property {number} id - The unique identifier for the person.
|
6
|
-
* @property {string} name - The name of the person.
|
7
|
-
* @property {string} lastName - The last name of the person.
|
8
|
-
* @property {string} email - The email of the person.
|
9
|
-
* @property {string} phoneNumber - The phone number of the person.
|
10
|
-
* @property {string} [notes=undefined] - The notes for this person.
|
11
4
|
*/
|
12
5
|
export type Person = {
|
6
|
+
/** The unique identifier for the person. */
|
13
7
|
id: number;
|
8
|
+
/** The name of the person. */
|
14
9
|
name: string;
|
10
|
+
/** The last name of the person. */
|
15
11
|
lastName: string;
|
12
|
+
/** The email of the person. */
|
16
13
|
email: string;
|
14
|
+
/** The phone number of the person. */
|
17
15
|
phoneNumber: string;
|
16
|
+
/** The notes for this person. */
|
18
17
|
notes?: string;
|
19
18
|
};
|
19
|
+
export type Buyer = Person & {
|
20
|
+
/** The social security number of the buyer, if provided. */
|
21
|
+
socialSecurityNumber: string | null;
|
22
|
+
};
|
20
23
|
export declare const DEFAULT_PERSON: Person;
|
21
24
|
export declare const initializePerson: (person?: Person | undefined | null) => Person;
|
22
25
|
/**
|
@@ -37,24 +40,23 @@ export type GetPassenger = Person & {
|
|
37
40
|
returnTariffs: Map<number, PassengerTariff[]> | null;
|
38
41
|
};
|
39
42
|
export declare enum BuyerDataStatus {
|
43
|
+
/** The buyer data are optional. Buyer form shall be displayed, but the user can skip it. */
|
40
44
|
OPTIONAL = 0,
|
45
|
+
/** The buyer data are required. Buyer form shall be displayed and the user cannot skip it. */
|
41
46
|
REQUIRED = 1,
|
47
|
+
/** The buyer data cannot be specified. Buyer form shall not be displayed. */
|
42
48
|
CANNOT_BE_SPECIFIED = 2
|
43
49
|
}
|
44
50
|
/**
|
45
|
-
*
|
46
|
-
*
|
47
|
-
* @property {BuyerDataStatus} buyerDataStatus - Whether the for for the buyer data are required, optional or cannot be specified.
|
48
|
-
* - `OPTIONAL`: The buyer data are optional. Buyer form shall be displayed, but the user can skip it.
|
49
|
-
* - `REQUIRED`: The buyer data are required. Buyer form shall be displayed and the user cannot skip it.
|
50
|
-
* - `CANNOT_BE_SPECIFIED`: The buyer data cannot be specified. Buyer form shall not be displayed.
|
51
|
-
* @property {Person} buyer - The {@link Person} object representing the buyer.
|
52
|
-
* @property {GetPassenger[]} passengers - An array of {@link GetPassenger} objects representing the passengers.
|
51
|
+
* Represents the response of the {@link getBuyerPassengersDetails} method.
|
53
52
|
*/
|
54
53
|
export type GetBuyerPassengersDetailsResponse = {
|
54
|
+
/** Whether the form for the buyer data is required, optional or cannot be specified. */
|
55
55
|
buyerDataStatus: BuyerDataStatus;
|
56
|
-
buyer
|
57
|
-
|
56
|
+
/** The {@link Person} object representing the buyer. */
|
57
|
+
buyer: Buyer | null;
|
58
|
+
/** An array of {@link GetPassenger} objects representing the passengers. */
|
59
|
+
passengers: GetPassenger[] | null;
|
58
60
|
};
|
59
61
|
/**
|
60
62
|
* @description Represents the type of the passengers array in {@link EditPassengersDetailsRequest}.
|
@@ -68,13 +70,14 @@ export type EditPassengerRequestType = Person & {
|
|
68
70
|
};
|
69
71
|
/**
|
70
72
|
* @description Represents the passengers details.
|
71
|
-
* This type shall be used as request for the {@link
|
72
|
-
*
|
73
|
-
* @property {EditPassengerRequestType[]} passengers - An array of {@link Person} extended by the map `tripsToTariffs` objects representing the passengers.
|
74
|
-
* @property {Person | null} buyer - The {@link Person} object representing the buyer.
|
75
|
-
* It should be null if the buyer data cannot be specified (see {@link GetBuyerPassengersDetailsResponse.buyerDataStatus}).
|
73
|
+
* This type shall be used as request for the {@link Booking.updateBuyerPassengersDetails} method.
|
76
74
|
*/
|
77
75
|
export type EditPassengersDetailsRequest = {
|
76
|
+
/** An array of {@link Person} extended by the map `tripsToTariffs` objects representing the passengers. */
|
78
77
|
passengers: EditPassengerRequestType[];
|
79
|
-
|
78
|
+
/**
|
79
|
+
* The {@link Person} object representing the buyer.
|
80
|
+
* It should be null if the buyer data cannot be specified (see {@link GetBuyerPassengersDetailsResponse.buyerDataStatus}).
|
81
|
+
*/
|
82
|
+
buyer: Buyer | null;
|
80
83
|
};
|
@@ -1,5 +1,4 @@
|
|
1
1
|
"use strict";
|
2
|
-
// This module contains the types to manage the passengers information
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
4
3
|
exports.BuyerDataStatus = exports.initializePerson = exports.DEFAULT_PERSON = void 0;
|
5
4
|
exports.DEFAULT_PERSON = {
|
@@ -18,7 +17,10 @@ var initializePerson = function (person) {
|
|
18
17
|
exports.initializePerson = initializePerson;
|
19
18
|
var BuyerDataStatus;
|
20
19
|
(function (BuyerDataStatus) {
|
20
|
+
/** The buyer data are optional. Buyer form shall be displayed, but the user can skip it. */
|
21
21
|
BuyerDataStatus[BuyerDataStatus["OPTIONAL"] = 0] = "OPTIONAL";
|
22
|
+
/** The buyer data are required. Buyer form shall be displayed and the user cannot skip it. */
|
22
23
|
BuyerDataStatus[BuyerDataStatus["REQUIRED"] = 1] = "REQUIRED";
|
24
|
+
/** The buyer data cannot be specified. Buyer form shall not be displayed. */
|
23
25
|
BuyerDataStatus[BuyerDataStatus["CANNOT_BE_SPECIFIED"] = 2] = "CANNOT_BE_SPECIFIED";
|
24
26
|
})(BuyerDataStatus || (exports.BuyerDataStatus = BuyerDataStatus = {}));
|
@@ -1,17 +1,43 @@
|
|
1
1
|
/**
|
2
2
|
* This represents a tariff, which defined the price to pay for a certain ticket.
|
3
|
-
* @param {number} id - The id of the tariff.
|
4
|
-
* @param {number} tariffTypeId - The id of the tariff type.
|
5
|
-
* @param {number} termsTypeId - The id of the terms type.
|
6
|
-
* @param {number} value - The value of the tariff (in the currency specified in the {@link Booking} object).
|
7
|
-
* @param {number} quantity - The number of passengers to which this tariff applies.
|
8
3
|
*/
|
9
4
|
export type Tariff = {
|
5
|
+
/** The id of the tariff */
|
10
6
|
id: number;
|
7
|
+
/** The id of the tariff type */
|
11
8
|
tariffTypeId: number;
|
9
|
+
/** The id of the terms type */
|
12
10
|
termsTypeId: number;
|
11
|
+
/** The id of the tariff plan */
|
12
|
+
tariffPlanId: number;
|
13
|
+
/** The id of the seller */
|
14
|
+
sellerId: number;
|
15
|
+
/** The id of the associated segment, if any */
|
16
|
+
segmentId: number | null;
|
17
|
+
/** The id of the associated super area, if any */
|
18
|
+
superAreaId: number | null;
|
19
|
+
/** The id of the associated extra, if any */
|
20
|
+
extraId: number | null;
|
21
|
+
/** The value of the tariff (in the currency specified in the {@link Booking} object) */
|
13
22
|
value: number;
|
23
|
+
/** @deprecated Use {@link Tariff.valueCurrencies} instead */
|
24
|
+
currency: null;
|
25
|
+
/** The value of the tariff in the different currencies */
|
26
|
+
valueCurrencies: {
|
27
|
+
percentage: number | null;
|
28
|
+
eur: number | null;
|
29
|
+
usd: number | null;
|
30
|
+
chf: number | null;
|
31
|
+
id: number;
|
32
|
+
};
|
33
|
+
/** The number of passengers to which this tariff applies */
|
14
34
|
quantity: number;
|
35
|
+
/** The custom code for one-way tickets */
|
36
|
+
oneWayCode: string | null;
|
37
|
+
/** The custom code for round trip tickets */
|
38
|
+
roundTripCode: string | null;
|
39
|
+
/** Whether the tariff is active */
|
40
|
+
isActive: boolean;
|
15
41
|
};
|
16
42
|
/**
|
17
43
|
* This represents a tariff matrix, returned when searching Journeys or Services.
|
@@ -22,41 +48,57 @@ export type Tariff = {
|
|
22
48
|
export type TariffsMatrix = (Tariff | undefined)[][];
|
23
49
|
/**
|
24
50
|
* This represents a tariff type (e.g. "Adult", "Child", "Over65", ...).
|
25
|
-
* @param {number} id - The id of the tariff type in the db.
|
26
|
-
* @param {string} name - The name of the tariff type.
|
27
|
-
* @param {string} description - The description of the tariff type.
|
28
|
-
* @param {boolean} requiredPassengersName - Whether the passengers' names are required for this tariff type.
|
29
|
-
* @param {number} numberOfOccupiedSeats - The number of seats occupied by this tariff type.
|
30
|
-
* @param {string} bookingProcessDescription - A message to be shown to the user during the booking process that describes the tariff type,
|
31
|
-
* including info on the rules that apply to it.
|
32
51
|
*/
|
33
52
|
export type TariffType = {
|
53
|
+
/** The id of the tariff type in the db */
|
34
54
|
id: number;
|
55
|
+
/** The name of the tariff type */
|
35
56
|
name: string;
|
57
|
+
/** The description of the tariff type */
|
36
58
|
description: string;
|
59
|
+
/** Whether the passengers' names are required for this tariff type */
|
37
60
|
requiredPassengersName: boolean;
|
61
|
+
/** The number of seats occupied by this tariff type */
|
38
62
|
numberOfOccupiedSeats: number;
|
63
|
+
/**
|
64
|
+
* A message to be shown to the user during the booking process that describes the tariff type,
|
65
|
+
* including info on the rules that apply to it
|
66
|
+
*/
|
39
67
|
bookingProcessDescription: string;
|
40
68
|
};
|
41
69
|
/**
|
42
70
|
* This represents a terms type (e.g. "Standard", "Business", ...).
|
43
|
-
* @param {number} id - The id of the terms type in the db.
|
44
|
-
* @param {string} name - The name of the terms type.
|
45
|
-
* @param {string} description - The description of the terms type.
|
46
|
-
* @param {boolean} isRefundAllowed - Whether tickets refunds are allowed for this terms type.
|
47
|
-
* @param {boolean} isChangeAllowed - Whether changing the ticket is allowed for this terms type.
|
48
|
-
* @param {string} validationRulesString - A string containing the validation rules that apply to this terms type.
|
49
|
-
* @param {string} bookingProcessDescription - A message to be shown to the user during the booking process that describes the terms type,
|
50
|
-
* including info on the rules that apply to it.
|
51
71
|
*/
|
52
72
|
export type TermsType = {
|
73
|
+
/** The id of the terms type in the db */
|
53
74
|
id: number;
|
75
|
+
/** The name of the terms type */
|
54
76
|
name: string;
|
77
|
+
/** The description of the terms type */
|
55
78
|
description: string;
|
79
|
+
/** Whether tickets refunds are allowed for this terms type */
|
56
80
|
isRefundAllowed: boolean;
|
81
|
+
/** Whether changing the ticket is allowed for this terms type */
|
57
82
|
isChangeAllowed: boolean;
|
83
|
+
/** A string containing the validation rules that apply to this terms type */
|
58
84
|
validationRulesString: string;
|
85
|
+
/**
|
86
|
+
* A message to be shown to the user during the booking process that describes the terms type,
|
87
|
+
* including info on the rules that apply to it
|
88
|
+
*/
|
59
89
|
bookingProcessDescription: string;
|
90
|
+
/** Whether these terms are the default ones */
|
91
|
+
isDefault: boolean;
|
92
|
+
/** Whether the terms are for a subscription */
|
93
|
+
isSubscription: boolean;
|
94
|
+
/** Whether a start date can be selected for this ticket */
|
95
|
+
canSelectStartDate: boolean;
|
96
|
+
/** Whether a start date is mandatory for this ticket */
|
97
|
+
isStartDateMandatory: boolean;
|
98
|
+
/** The validation rule for these terms */
|
99
|
+
validationRule: any | null;
|
100
|
+
/** The rules associated with these terms */
|
101
|
+
rules: any | null;
|
60
102
|
};
|
61
103
|
export type TariffSummary = {
|
62
104
|
quantity: number;
|
@@ -26,16 +26,16 @@ export type TplBookingType = {
|
|
26
26
|
};
|
27
27
|
/**
|
28
28
|
* @description Represents a `TplBookingInfo`, which contains general information about a tpl booking.
|
29
|
-
* @property {boolean} isSubscription - Whether the booking is a subscription or a single ticket.
|
30
|
-
* @property {number} superAreaId - The id of the super area.
|
31
|
-
* @property {number} validity - The validity of the ticket (or of the subscription).
|
32
|
-
* @property {string} startDate - The start date of the ticket (or of the subscription).
|
33
|
-
* @property {string} endDate - The end date of the ticket (or of the subscription).
|
34
29
|
*/
|
35
30
|
export type TplBookingInfo = {
|
31
|
+
/** Whether the booking is a subscription or a single ticket. */
|
36
32
|
isSubscription: boolean;
|
33
|
+
/** The id of the super area. */
|
37
34
|
superAreaId: number;
|
38
|
-
validity
|
35
|
+
/** The validity of the ticket (or of the subscription). */
|
36
|
+
validity: string;
|
37
|
+
/** The start date of the ticket (or of the subscription). */
|
39
38
|
startDate: string;
|
39
|
+
/** The end date of the ticket (or of the subscription). */
|
40
40
|
endDate: string;
|
41
41
|
};
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "mts-booking-library",
|
3
|
-
"version": "1.3.
|
3
|
+
"version": "1.3.16",
|
4
4
|
"description": "Library for using MyTicketSolution Booking API",
|
5
5
|
"main": "lib/index.js",
|
6
6
|
"types": "lib/index.d.ts",
|
@@ -20,7 +20,7 @@
|
|
20
20
|
"jest": "^29.7.0",
|
21
21
|
"prettier": "^3.3.3",
|
22
22
|
"ts-jest": "^29.2.3",
|
23
|
-
"typescript": "^5.5.
|
23
|
+
"typescript": "^5.5.4"
|
24
24
|
},
|
25
25
|
"files": [
|
26
26
|
"lib/**/*"
|