triplinkclient 1.1.0 → 2.0.1

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.
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Generated by the protoc-gen-ts. DO NOT EDIT!
3
- * compiler version: 6.33.4
3
+ * compiler version: 5.29.6
4
4
  * source: common.proto
5
5
  * git: https://github.com/thesayyn/protoc-gen-ts */
6
6
  import * as pb_1 from "google-protobuf";
@@ -42,7 +42,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.EchoResponse = exports.EchoRequest = exports.ResultStatus = void 0;
43
43
  /**
44
44
  * Generated by the protoc-gen-ts. DO NOT EDIT!
45
- * compiler version: 6.33.4
45
+ * compiler version: 5.29.6
46
46
  * source: common.proto
47
47
  * git: https://github.com/thesayyn/protoc-gen-ts */
48
48
  const pb_1 = __importStar(require("google-protobuf"));
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Generated by the protoc-gen-ts. DO NOT EDIT!
3
- * compiler version: 6.33.4
3
+ * compiler version: 5.29.6
4
4
  * source: hotel.proto
5
5
  * git: https://github.com/thesayyn/protoc-gen-ts */
6
6
  import * as dependency_1 from "./common";
@@ -42,7 +42,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.TripLinkHotelServiceClient = exports.UnimplementedTripLinkHotelServiceService = exports.GetCancellationStatusResponse = exports.GetCancellationStatusRequest = exports.CancelHotelBookingResponse = exports.CancelHotelBookingRequest = exports.GetHotelBookingDetailsResponse = exports.GetHotelBookingDetailsRequest = exports.BookHotelResponse = exports.HotelPassenger = exports.HotelRoomPassenger = exports.BookHotelRequest = exports.PreBookHotelResponse = exports.PreBookHotelRequest = exports.GetHotelRoomsResponse = exports.GetHotelRoomsRequest = exports.GetHotelInfoResponse = exports.GetHotelInfoRequest = exports.HotelSearchRoom = exports.HotelSearchResult = exports.SearchHotelResponse = exports.SearchHotelRequest = exports.RoomGuests = exports.SearchCityResponse = exports.SearchCityRequest = exports.SearchCountryResponse = exports.HotelCity = exports.HotelCountry = exports.SearchCountryRequest = exports.ChangeHotelRequestStatus = exports.HotelBookingStatus = void 0;
43
43
  /**
44
44
  * Generated by the protoc-gen-ts. DO NOT EDIT!
45
- * compiler version: 6.33.4
45
+ * compiler version: 5.29.6
46
46
  * source: hotel.proto
47
47
  * git: https://github.com/thesayyn/protoc-gen-ts */
48
48
  const dependency_1 = __importStar(require("./common"));
package/dist/index.d.ts CHANGED
@@ -1,8 +1,11 @@
1
1
  import { TripLinkAirClient } from "./triplinkairclient";
2
2
  import { TripLinkHotelClient } from "./triplinkhotelclient";
3
+ import { TripLinkAirRestClient, RestApiError } from "./triplinkairclientrest";
4
+ import type { TripLinkAirRestClientOptions } from "./triplinkairclientrest";
3
5
  import * as common from "./generated/common";
4
6
  import * as air from "./generated/air";
5
7
  import * as agency from "./generated/agency";
6
8
  import * as hotel from "./generated/hotel";
7
9
  import { MetricsConfig, MetricEvent } from "./metrics";
8
- export { TripLinkAirClient, TripLinkHotelClient, hotel, agency, air, common, MetricsConfig, MetricEvent, };
10
+ export { TripLinkAirClient, TripLinkHotelClient, TripLinkAirRestClient, RestApiError, hotel, agency, air, common, MetricsConfig, MetricEvent, };
11
+ export type { TripLinkAirRestClientOptions };
package/dist/index.js CHANGED
@@ -33,11 +33,14 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.common = exports.air = exports.agency = exports.hotel = exports.TripLinkHotelClient = exports.TripLinkAirClient = void 0;
36
+ exports.common = exports.air = exports.agency = exports.hotel = exports.RestApiError = exports.TripLinkAirRestClient = exports.TripLinkHotelClient = exports.TripLinkAirClient = void 0;
37
37
  const triplinkairclient_1 = require("./triplinkairclient");
38
38
  Object.defineProperty(exports, "TripLinkAirClient", { enumerable: true, get: function () { return triplinkairclient_1.TripLinkAirClient; } });
39
39
  const triplinkhotelclient_1 = require("./triplinkhotelclient");
40
40
  Object.defineProperty(exports, "TripLinkHotelClient", { enumerable: true, get: function () { return triplinkhotelclient_1.TripLinkHotelClient; } });
41
+ const triplinkairclientrest_1 = require("./triplinkairclientrest");
42
+ Object.defineProperty(exports, "TripLinkAirRestClient", { enumerable: true, get: function () { return triplinkairclientrest_1.TripLinkAirRestClient; } });
43
+ Object.defineProperty(exports, "RestApiError", { enumerable: true, get: function () { return triplinkairclientrest_1.RestApiError; } });
41
44
  const common = __importStar(require("./generated/common"));
42
45
  exports.common = common;
43
46
  const air = __importStar(require("./generated/air"));
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAAwD;AASpD,kGATK,qCAAiB,OASL;AARrB,+DAA4D;AASxD,oGATK,yCAAmB,OASL;AARvB,2DAA6C;AAYzC,wBAAM;AAXV,qDAAuC;AAUnC,kBAAG;AATP,2DAA6C;AAQzC,wBAAM;AAPV,yDAA2C;AAMvC,sBAAK"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAAwD;AAWpD,kGAXK,qCAAiB,OAWL;AAVrB,+DAA4D;AAWxD,oGAXK,yCAAmB,OAWL;AAVvB,mEAA8E;AAW1E,sGAXK,6CAAqB,OAWL;AACrB,6FAZ4B,oCAAY,OAY5B;AAVhB,2DAA6C;AAczC,wBAAM;AAbV,qDAAuC;AAYnC,kBAAG;AAXP,2DAA6C;AAUzC,wBAAM;AATV,yDAA2C;AAQvC,sBAAK"}
@@ -1,4 +1,4 @@
1
- import { BookRequest, BookResponse, CancelRequest, CancelResponse, GetCancellationChargesRequest, GetCancellationChargesResponse, GetTicketCancellationStatusRequest, GetTicketCancellationStatusResponse, FareQuoteRequest, FareQuoteResponse, FareRulesRequest, FareRulesResponse, GetBookingRequest, GetBookingResponse, IssueTicketRequest, IssueTicketResponse, PlaceOrderRequest, PlaceOrderResponse, SSRRequest, SSRResponse, SearchRequest, SearchResponse, ReleaseBookingRequest, ReleaseBookingResponse } from "./generated/air";
1
+ import { BookRequest, BookResponse, CancelRequest, CancelResponse, GetCancellationChargesRequest, GetCancellationChargesResponse, GetTicketCancellationStatusRequest, GetTicketCancellationStatusResponse, FareQuoteRequest, FareQuoteResponse, FareRulesRequest, FareRulesResponse, GetBookingRequest, GetBookingResponse, IssueTicketRequest, IssueTicketResponse, SubmitOrderRequest, SubmitOrderResponse, SSRRequest, SSRResponse, SearchRequest, SearchResponse, ReleaseBookingRequest, ReleaseBookingResponse } from "./generated/air";
2
2
  import { EchoRequest, EchoResponse } from "./generated/common";
3
3
  import { BalanceResponse } from "./generated/agency";
4
4
  import { MetricsConfig } from "./metrics/types";
@@ -28,7 +28,7 @@ export declare class TripLinkAirClient {
28
28
  releaseBooking: (request: ReleaseBookingRequest) => Promise<ReleaseBookingResponse>;
29
29
  issueTicket: (request: IssueTicketRequest) => Promise<IssueTicketResponse>;
30
30
  getBooking: (request: GetBookingRequest) => Promise<GetBookingResponse>;
31
- placeOrder: (request: PlaceOrderRequest) => Promise<PlaceOrderResponse>;
31
+ submitOrder: (request: SubmitOrderRequest) => Promise<SubmitOrderResponse>;
32
32
  getCancellationCharges: (request: GetCancellationChargesRequest) => Promise<GetCancellationChargesResponse>;
33
33
  cancel: (request: CancelRequest) => Promise<CancelResponse>;
34
34
  submitCancelTicket: (request: CancelRequest) => Promise<CancelResponse>;
@@ -57,7 +57,7 @@ class TripLinkAirClient {
57
57
  this.releaseBooking = (0, retry_1.withRetry)(async (request) => this.client.releaseBooking(request, this.metadata));
58
58
  this.issueTicket = (0, retry_1.withRetry)(async (request) => this.client.issueTicket(request, this.metadata));
59
59
  this.getBooking = (0, retry_1.withRetry)(async (request) => this.client.getBooking(request, this.metadata));
60
- this.placeOrder = (0, retry_1.withRetry)(async (request) => this.client.placeOrder(request, this.metadata));
60
+ this.submitOrder = (0, retry_1.withRetry)(async (request) => this.client.submitOrder(request, this.metadata));
61
61
  this.getCancellationCharges = (0, retry_1.withRetry)(async (request) => this.client.getCancellationCharges(request, this.metadata));
62
62
  this.cancel = (0, retry_1.withRetry)(async (request) => this.client.submitCancelTicket(request, this.metadata));
63
63
  this.submitCancelTicket = (0, retry_1.withRetry)(async (request) => this.client.submitCancelTicket(request, this.metadata));
@@ -99,7 +99,7 @@ class TripLinkAirClient {
99
99
  // Standard unary methods — delegate to this.client
100
100
  const unaryMethods = [
101
101
  'echo', 'search', 'fareRules', 'fareQuote', 'ssr',
102
- 'releaseBooking', 'issueTicket', 'getBooking', 'placeOrder',
102
+ 'releaseBooking', 'issueTicket', 'getBooking', 'submitOrder',
103
103
  'getCancellationCharges',
104
104
  ];
105
105
  for (const method of unaryMethods) {
@@ -1 +1 @@
1
- {"version":3,"file":"triplinkairclient.js","sourceRoot":"","sources":["../src/triplinkairclient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"triplinkairclient.js","sourceRoot":"","sources":["../src/triplinkairclient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * TripLinkAirRestClient — HTTP/REST counterpart of TripLinkAirClient.
3
+ *
4
+ * Connects to the REST API layer (port 8080 by default) added in Phase 3.
5
+ * The server serialises all proto messages as protobuf JSON (field names in
6
+ * camelCase, enum values as integers). Requests are also sent as protobuf JSON.
7
+ *
8
+ * The client exposes the same method signatures as TripLinkAirClient so that
9
+ * callers can swap implementations with minimal code changes.
10
+ *
11
+ * Requires Node 18+ (native fetch) or a browser environment.
12
+ */
13
+ import { BookRequest, BookResponse, CancelRequest, CancelResponse, FareQuoteRequest, FareQuoteResponse, FareRulesRequest, FareRulesResponse, GetBookingRequest, GetBookingResponse, GetCancellationChargesRequest, GetCancellationChargesResponse, GetTicketCancellationStatusRequest, GetTicketCancellationStatusResponse, IssueTicketRequest, IssueTicketResponse, SearchRequest, SearchResponse, SSRRequest, SSRResponse, SubmitOrderRequest, SubmitOrderResponse } from "./generated/air";
14
+ import { EchoResponse } from "./generated/common";
15
+ import { BalanceResponse } from "./generated/agency";
16
+ export type TripLinkAirRestClientOptions = {
17
+ /** Hostname of the REST API server. Default: tlapi.buycoins.targetagency.org */
18
+ host?: string;
19
+ /** Port of the REST API server. Default: 8080 */
20
+ port?: number;
21
+ /** Client ID (sent as X-Client-Id header) */
22
+ clientId: string;
23
+ /** Client token (sent as X-Client-Token header) */
24
+ clientToken: string;
25
+ /** Max retry attempts on network errors / 503 responses. Default: 2 */
26
+ maxRetries?: number;
27
+ /** Initial retry back-off delay in ms. Default: 200 */
28
+ retryBaseDelayMs?: number;
29
+ };
30
+ export declare class RestApiError extends Error {
31
+ readonly statusCode: number;
32
+ constructor(statusCode: number, message: string);
33
+ }
34
+ export declare class TripLinkAirRestClient {
35
+ private readonly options;
36
+ private readonly baseUrl;
37
+ private readonly headers;
38
+ private readonly maxRetries;
39
+ private readonly retryBaseDelayMs;
40
+ constructor(options: TripLinkAirRestClientOptions);
41
+ echo: () => Promise<EchoResponse>;
42
+ getBalance: () => Promise<BalanceResponse>;
43
+ search: (req: SearchRequest) => Promise<SearchResponse>;
44
+ fareRules: (req: FareRulesRequest) => Promise<FareRulesResponse>;
45
+ fareQuote: (req: FareQuoteRequest) => Promise<FareQuoteResponse>;
46
+ ssr: (req: SSRRequest) => Promise<SSRResponse>;
47
+ submitOrder: (req: SubmitOrderRequest) => Promise<SubmitOrderResponse>;
48
+ book: (req: BookRequest) => Promise<BookResponse>;
49
+ issueTicket: (req: IssueTicketRequest) => Promise<IssueTicketResponse>;
50
+ getBooking: (req: GetBookingRequest) => Promise<GetBookingResponse>;
51
+ cancel: (req: CancelRequest) => Promise<CancelResponse>;
52
+ getCancellationCharges: (req: GetCancellationChargesRequest) => Promise<GetCancellationChargesResponse>;
53
+ getCancellationStatus: (req: GetTicketCancellationStatusRequest) => Promise<GetTicketCancellationStatusResponse>;
54
+ /**
55
+ * Streaming flight search via Server-Sent Events.
56
+ *
57
+ * The server streams one SearchResponse event per supplier batch.
58
+ * The stream terminates when all suppliers have responded.
59
+ *
60
+ * Compatible callback signature matches TripLinkAirClient.searchFlights().
61
+ */
62
+ searchFlights(request: SearchRequest, { onResponse, onComplete, onError, }?: {
63
+ onResponse?: (response: SearchResponse) => void;
64
+ onComplete?: () => void;
65
+ onError?: (error: Error) => void;
66
+ }): void;
67
+ private get;
68
+ private post;
69
+ private httpDelete;
70
+ private parseResponse;
71
+ private withRetry;
72
+ }
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ /**
3
+ * TripLinkAirRestClient — HTTP/REST counterpart of TripLinkAirClient.
4
+ *
5
+ * Connects to the REST API layer (port 8080 by default) added in Phase 3.
6
+ * The server serialises all proto messages as protobuf JSON (field names in
7
+ * camelCase, enum values as integers). Requests are also sent as protobuf JSON.
8
+ *
9
+ * The client exposes the same method signatures as TripLinkAirClient so that
10
+ * callers can swap implementations with minimal code changes.
11
+ *
12
+ * Requires Node 18+ (native fetch) or a browser environment.
13
+ */
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.TripLinkAirRestClient = exports.RestApiError = void 0;
16
+ const air_1 = require("./generated/air");
17
+ const common_1 = require("./generated/common");
18
+ const agency_1 = require("./generated/agency");
19
+ class RestApiError extends Error {
20
+ constructor(statusCode, message) {
21
+ super(`HTTP ${statusCode}: ${message}`);
22
+ this.statusCode = statusCode;
23
+ this.name = "RestApiError";
24
+ }
25
+ }
26
+ exports.RestApiError = RestApiError;
27
+ // ── Client ────────────────────────────────────────────────────────────────────
28
+ class TripLinkAirRestClient {
29
+ constructor(options) {
30
+ this.options = options;
31
+ // ── Air endpoints ─────────────────────────────────────────────────────────
32
+ this.echo = async () => this.get("/air/echo", common_1.EchoResponse);
33
+ this.getBalance = async () => this.get("/air/balance", agency_1.BalanceResponse);
34
+ this.search = async (req) => this.post("/air/search", req, air_1.SearchResponse);
35
+ this.fareRules = async (req) => this.post("/air/fare-rules", req, air_1.FareRulesResponse);
36
+ this.fareQuote = async (req) => this.post("/air/fare-quote", req, air_1.FareQuoteResponse);
37
+ this.ssr = async (req) => this.post("/air/ssr", req, air_1.SSRResponse);
38
+ this.submitOrder = async (req) => this.post("/air/orders", req, air_1.SubmitOrderResponse);
39
+ this.book = async (req) => this.post("/air/bookings", req, air_1.BookResponse);
40
+ this.issueTicket = async (req) => this.post("/air/tickets", req, air_1.IssueTicketResponse);
41
+ this.getBooking = async (req) => this.get(`/air/bookings/${req.bookingId}`, air_1.GetBookingResponse);
42
+ this.cancel = async (req) => this.httpDelete(`/air/bookings/${req.bookingId}`, air_1.CancelResponse);
43
+ this.getCancellationCharges = async (req) => this.post("/air/cancellations/charges", req, air_1.GetCancellationChargesResponse);
44
+ this.getCancellationStatus = async (req) => this.get(`/air/cancellations/${req.bookingId}/status`, air_1.GetTicketCancellationStatusResponse);
45
+ const host = options.host ?? "tlapi.buycoins.targetagency.org";
46
+ const port = options.port ?? 8080;
47
+ const scheme = host === "localhost" || host === "127.0.0.1" ? "http" : "https";
48
+ this.baseUrl = `${scheme}://${host}:${port}`;
49
+ this.headers = {
50
+ "Content-Type": "application/json",
51
+ "X-Client-Id": options.clientId,
52
+ "X-Client-Token": options.clientToken,
53
+ };
54
+ this.maxRetries = options.maxRetries ?? 2;
55
+ this.retryBaseDelayMs = options.retryBaseDelayMs ?? 200;
56
+ }
57
+ /**
58
+ * Streaming flight search via Server-Sent Events.
59
+ *
60
+ * The server streams one SearchResponse event per supplier batch.
61
+ * The stream terminates when all suppliers have responded.
62
+ *
63
+ * Compatible callback signature matches TripLinkAirClient.searchFlights().
64
+ */
65
+ searchFlights(request, { onResponse = (_r) => { }, onComplete = () => { }, onError = (_e) => { }, } = {}) {
66
+ const body = serializeRequest(request);
67
+ fetch(`${this.baseUrl}/air/flights/search`, {
68
+ method: "POST",
69
+ headers: { ...this.headers, Accept: "text/event-stream" },
70
+ body,
71
+ }).then(async (response) => {
72
+ if (!response.ok) {
73
+ const text = await response.text().catch(() => response.statusText);
74
+ throw new RestApiError(response.status, text);
75
+ }
76
+ const reader = response.body.getReader();
77
+ const decoder = new TextDecoder();
78
+ let buffer = "";
79
+ while (true) {
80
+ const { done, value } = await reader.read();
81
+ if (done)
82
+ break;
83
+ buffer += decoder.decode(value, { stream: true });
84
+ // SSE frames are separated by double newlines
85
+ const frames = buffer.split("\n\n");
86
+ buffer = frames.pop() ?? "";
87
+ for (const frame of frames) {
88
+ const dataLine = frame.split("\n").find((l) => l.startsWith("data:"));
89
+ if (!dataLine)
90
+ continue;
91
+ try {
92
+ const json = JSON.parse(dataLine.slice(5).trim());
93
+ onResponse(air_1.SearchResponse.fromObject(json));
94
+ }
95
+ catch (parseErr) {
96
+ onError(parseErr instanceof Error ? parseErr : new Error(String(parseErr)));
97
+ }
98
+ }
99
+ }
100
+ onComplete();
101
+ }).catch((err) => {
102
+ onError(err instanceof Error ? err : new Error(String(err)));
103
+ });
104
+ }
105
+ // ── HTTP helpers ──────────────────────────────────────────────────────────
106
+ async get(path, ResponseClass) {
107
+ return this.withRetry(() => fetch(`${this.baseUrl}${path}`, { method: "GET", headers: this.headers })
108
+ .then((r) => this.parseResponse(r, ResponseClass)));
109
+ }
110
+ async post(path, req, ResponseClass) {
111
+ return this.withRetry(() => fetch(`${this.baseUrl}${path}`, {
112
+ method: "POST",
113
+ headers: this.headers,
114
+ body: serializeRequest(req),
115
+ }).then((r) => this.parseResponse(r, ResponseClass)));
116
+ }
117
+ async httpDelete(path, ResponseClass) {
118
+ return this.withRetry(() => fetch(`${this.baseUrl}${path}`, { method: "DELETE", headers: this.headers })
119
+ .then((r) => this.parseResponse(r, ResponseClass)));
120
+ }
121
+ async parseResponse(response, ResponseClass) {
122
+ const text = await response.text();
123
+ if (!response.ok) {
124
+ throw new RestApiError(response.status, text);
125
+ }
126
+ const json = JSON.parse(text);
127
+ return ResponseClass.fromObject(json);
128
+ }
129
+ async withRetry(fn) {
130
+ let lastErr;
131
+ for (let attempt = 0; attempt <= this.maxRetries; attempt++) {
132
+ try {
133
+ return await fn();
134
+ }
135
+ catch (err) {
136
+ lastErr = err;
137
+ const isRetryable = !(err instanceof RestApiError) || // network error
138
+ err.statusCode === 503 || // service unavailable
139
+ err.statusCode === 429; // rate limited
140
+ if (!isRetryable || attempt === this.maxRetries)
141
+ throw err;
142
+ await sleep(this.retryBaseDelayMs * Math.pow(2, attempt));
143
+ }
144
+ }
145
+ throw lastErr;
146
+ }
147
+ }
148
+ exports.TripLinkAirRestClient = TripLinkAirRestClient;
149
+ // ── Helpers ───────────────────────────────────────────────────────────────────
150
+ function serializeRequest(req) {
151
+ return JSON.stringify(req.toObject());
152
+ }
153
+ function sleep(ms) {
154
+ return new Promise((resolve) => setTimeout(resolve, ms));
155
+ }
156
+ //# sourceMappingURL=triplinkairclientrest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"triplinkairclientrest.js","sourceRoot":"","sources":["../src/triplinkairclientrest.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "triplinkclient",
3
3
  "description": "TripLink Client",
4
- "version": "1.1.0",
4
+ "version": "2.0.1",
5
5
  "license": "ISC",
6
6
  "keywords": [
7
7
  "triplink"
@@ -27,12 +27,8 @@
27
27
  "types": "./dist/index.d.ts",
28
28
  "exports": {
29
29
  ".": {
30
- "types": {
31
- "default": "./dist/index.d.ts"
32
- },
33
- "default": {
34
- "default": "./dist/index.js"
35
- }
30
+ "types": "./dist/index.d.ts",
31
+ "default": "./dist/index.js"
36
32
  },
37
33
  "./*": "./dist/*",
38
34
  "./package.json": "./package.json"