@gojinko/cli 1.2.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -5
- package/dist/commands/checkout.d.ts.map +1 -1
- package/dist/commands/checkout.js +2 -4
- package/dist/commands/checkout.js.map +1 -1
- package/dist/commands/exchange.d.ts.map +1 -1
- package/dist/commands/exchange.js +2 -0
- package/dist/commands/exchange.js.map +1 -1
- package/dist/commands/find-destination.d.ts +5 -0
- package/dist/commands/find-destination.d.ts.map +1 -1
- package/dist/commands/find-destination.js +89 -90
- package/dist/commands/find-destination.js.map +1 -1
- package/dist/commands/find-flight.d.ts.map +1 -1
- package/dist/commands/find-flight.js +45 -33
- package/dist/commands/find-flight.js.map +1 -1
- package/dist/commands/flight-calendar.d.ts.map +1 -1
- package/dist/commands/flight-calendar.js +31 -25
- package/dist/commands/flight-calendar.js.map +1 -1
- package/dist/commands/flight-search.d.ts.map +1 -1
- package/dist/commands/flight-search.js +52 -48
- package/dist/commands/flight-search.js.map +1 -1
- package/dist/commands/get-booking.d.ts.map +1 -1
- package/dist/commands/get-booking.js +16 -7
- package/dist/commands/get-booking.js.map +1 -1
- package/dist/commands/hotel-cancel.d.ts +4 -2
- package/dist/commands/hotel-cancel.d.ts.map +1 -1
- package/dist/commands/hotel-cancel.js +18 -14
- package/dist/commands/hotel-cancel.js.map +1 -1
- package/dist/commands/hotel-search.d.ts.map +1 -1
- package/dist/commands/hotel-search.js +122 -42
- package/dist/commands/hotel-search.js.map +1 -1
- package/dist/commands/price-monitoring.d.ts.map +1 -1
- package/dist/commands/price-monitoring.js +48 -33
- package/dist/commands/price-monitoring.js.map +1 -1
- package/dist/commands/select-ancillaries.d.ts.map +1 -1
- package/dist/commands/select-ancillaries.js +5 -7
- package/dist/commands/select-ancillaries.js.map +1 -1
- package/dist/commands/shared.d.ts +11 -0
- package/dist/commands/shared.d.ts.map +1 -1
- package/dist/commands/shared.js +17 -0
- package/dist/commands/shared.js.map +1 -1
- package/dist/commands/trip-status.d.ts.map +1 -1
- package/dist/commands/trip-status.js +2 -4
- package/dist/commands/trip-status.js.map +1 -1
- package/dist/commands/trip.d.ts.map +1 -1
- package/dist/commands/trip.js +2 -4
- package/dist/commands/trip.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/commands/hotel-lookup-booking.d.ts +0 -7
- package/dist/commands/hotel-lookup-booking.d.ts.map +0 -1
- package/dist/commands/hotel-lookup-booking.js +0 -20
- package/dist/commands/hotel-lookup-booking.js.map +0 -1
|
@@ -1,38 +1,106 @@
|
|
|
1
|
-
import
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { withClient, output, resolveDeprecatedFlag } from './shared.js';
|
|
3
|
+
function isLowConfidenceError(body) {
|
|
4
|
+
if (!body || typeof body !== 'object')
|
|
5
|
+
return false;
|
|
6
|
+
const e = body.error;
|
|
7
|
+
return Boolean(e && typeof e === 'object' && e.code === 'HOTEL_NAME_LOW_CONFIDENCE');
|
|
8
|
+
}
|
|
9
|
+
function formatLowConfidenceError(body, format) {
|
|
10
|
+
if (format === 'json') {
|
|
11
|
+
// Agents and scripts parse the full structured body — emit it as-is.
|
|
12
|
+
console.error(JSON.stringify(body, null, 2));
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const { message, top_candidates, suggested_retry } = body.error;
|
|
16
|
+
console.error(chalk.red(`Error: ${message}`));
|
|
17
|
+
console.error('');
|
|
18
|
+
if (top_candidates.length > 0) {
|
|
19
|
+
console.error(chalk.bold('Top candidates:'));
|
|
20
|
+
for (const c of top_candidates) {
|
|
21
|
+
const score = (c.score * 100).toFixed(0).padStart(3, ' ');
|
|
22
|
+
const city = c.city ? chalk.dim(` (${c.city})`) : '';
|
|
23
|
+
console.error(` ${chalk.dim(score + '%')} ${c.hotel_id} ${c.name}${city}`);
|
|
24
|
+
}
|
|
25
|
+
console.error('');
|
|
26
|
+
}
|
|
27
|
+
if (suggested_retry) {
|
|
28
|
+
const dest = JSON.stringify(suggested_retry.destination);
|
|
29
|
+
console.error(chalk.bold('Suggested retry:'));
|
|
30
|
+
if (suggested_retry.rationale) {
|
|
31
|
+
console.error(` ${chalk.dim(suggested_retry.rationale)}`);
|
|
32
|
+
}
|
|
33
|
+
console.error(` ${chalk.cyan('destination=')}${dest}`);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
console.error(chalk.dim('No suggested_retry — provide --city-name and --country-code to narrow the lookup, or try a different name.'));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
2
39
|
export function registerHotelSearchCommand(program) {
|
|
3
40
|
program
|
|
4
41
|
.command('hotel-search')
|
|
5
42
|
.description('Search live hotel inventory and rates by destination, dates, and occupancy.')
|
|
6
|
-
.option('--query <text>', 'free-text destination (city, region, POI)')
|
|
7
|
-
.option('--city <name>', 'city name (e.g. "Paris")')
|
|
8
|
-
.option('--country <code>', 'ISO 3166-1 alpha-2 country code (e.g. fr)')
|
|
9
|
-
.option('--
|
|
10
|
-
.option('--
|
|
11
|
-
.option('--radius <km>', 'search radius in km (default 5, max 50)')
|
|
12
|
-
.option('--place-id <id>', 'Google Places ID or upstream place identifier')
|
|
13
|
-
.option('--hotel-ids <ids...>', 're-shop specific hotel IDs')
|
|
14
|
-
.option('--
|
|
15
|
-
.option('--
|
|
16
|
-
.option('--
|
|
17
|
-
.option('--
|
|
18
|
-
.option('--
|
|
19
|
-
.option('--
|
|
20
|
-
.option('--
|
|
21
|
-
.option('--
|
|
22
|
-
.option('--
|
|
23
|
-
.option('--
|
|
24
|
-
.option('--
|
|
25
|
-
.option('--
|
|
43
|
+
.option('--query <text>', 'free-text destination (city, region, POI) — Mode B. JSON: `query`.')
|
|
44
|
+
.option('--city-name <name>', 'city name (e.g. "Paris") — Mode B destination, or Mode A lookup scope when combined with --hotel-name. JSON: `city_name`.')
|
|
45
|
+
.option('--country-code <code>', 'ISO 3166-1 alpha-2 country code (e.g. fr) — Mode B destination, or Mode A lookup scope when combined with --hotel-name. JSON: `country_code`.')
|
|
46
|
+
.option('--latitude <latitude>', 'latitude for geo-radius search — Mode B. JSON: `latitude`.')
|
|
47
|
+
.option('--longitude <longitude>', 'longitude for geo-radius search — Mode B. JSON: `longitude`.')
|
|
48
|
+
.option('--radius-km <km>', 'search radius in km (default 5, max 50) — Mode B. JSON: `radius_km`.')
|
|
49
|
+
.option('--place-id <id>', 'Google Places ID or upstream place identifier — Mode B. JSON: `place_id`.')
|
|
50
|
+
.option('--hotel-ids <ids...>', 're-shop specific hotel IDs — Mode A. JSON: `hotel_ids`.')
|
|
51
|
+
.option('--hotel-name <name>', 'look up a specific hotel by name — Mode A. Pair with --city-name and --country-code to narrow the lookup scope.')
|
|
52
|
+
.option('--checkin <date>', 'check-in date (YYYY-MM-DD). JSON: `checkin`.', undefined)
|
|
53
|
+
.option('--checkout <date>', 'check-out date (YYYY-MM-DD). JSON: `checkout`.', undefined)
|
|
54
|
+
.option('--adults <n>', 'number of adults (shorthand). JSON: `adults`.', '2')
|
|
55
|
+
.option('--children <ages...>', 'children ages (shorthand, e.g. 5 7). JSON: `children`.')
|
|
56
|
+
.option('--rooms <n>', 'number of rooms (shorthand). JSON: `rooms`.')
|
|
57
|
+
.option('--currency <code>', 'ISO 4217 currency code (default USD). JSON: `currency`.')
|
|
58
|
+
.option('--guest-nationality <code>', 'guest nationality (ISO 3166-1 alpha-2). JSON: `guest_nationality`.')
|
|
59
|
+
.option('--min-rating <n>', 'minimum guest review rating (0-10). JSON: `min_rating`.')
|
|
60
|
+
.option('--star-rating <n>', 'minimum star rating (1-5). JSON: `min_star_rating`.')
|
|
61
|
+
.option('--max-star-rating <n>', 'maximum star rating (1-5). JSON: `max_star_rating`.')
|
|
62
|
+
.option('--min-reviews <n>', 'minimum number of reviews. JSON: `min_reviews`.')
|
|
63
|
+
.option('--max-results <n>', 'maximum hotels to return (default 50). JSON: `max_results`.')
|
|
64
|
+
// Deprecated aliases — Phase 1 transition (JIN-665), remove in next major.
|
|
65
|
+
.option('--city <name>', 'DEPRECATED: use --city-name.')
|
|
66
|
+
.option('--country <code>', 'DEPRECATED: use --country-code.')
|
|
67
|
+
.option('--lat <latitude>', 'DEPRECATED: use --latitude.')
|
|
68
|
+
.option('--lng <longitude>', 'DEPRECATED: use --longitude.')
|
|
69
|
+
.option('--radius <km>', 'DEPRECATED: use --radius-km.')
|
|
70
|
+
.option('--nationality <code>', 'DEPRECATED: use --guest-nationality.')
|
|
71
|
+
.option('--stars <n>', 'DEPRECATED: use --star-rating.')
|
|
72
|
+
.option('--max-stars <n>', 'DEPRECATED: use --max-star-rating.')
|
|
26
73
|
.action(withClient(async (client, globals, opts) => {
|
|
74
|
+
// Resolve deprecated aliases onto canonical flags.
|
|
75
|
+
const cityName = resolveDeprecatedFlag(opts.cityName, opts.city, '--city', '--city-name');
|
|
76
|
+
const countryCode = resolveDeprecatedFlag(opts.countryCode, opts.country, '--country', '--country-code');
|
|
77
|
+
const latitude = resolveDeprecatedFlag(opts.latitude, opts.lat, '--lat', '--latitude');
|
|
78
|
+
const longitude = resolveDeprecatedFlag(opts.longitude, opts.lng, '--lng', '--longitude');
|
|
79
|
+
const radiusKm = resolveDeprecatedFlag(opts.radiusKm, opts.radius, '--radius', '--radius-km');
|
|
80
|
+
const guestNationality = resolveDeprecatedFlag(opts.guestNationality, opts.nationality, '--nationality', '--guest-nationality');
|
|
81
|
+
const starRating = resolveDeprecatedFlag(opts.starRating, opts.stars, '--stars', '--star-rating');
|
|
82
|
+
const maxStarRating = resolveDeprecatedFlag(opts.maxStarRating, opts.maxStars, '--max-stars', '--max-star-rating');
|
|
27
83
|
if (!opts.checkin || !opts.checkout) {
|
|
28
84
|
console.error('Error: --checkin and --checkout are required.');
|
|
29
85
|
process.exit(3);
|
|
30
86
|
}
|
|
31
|
-
const hasDestination = opts.query ||
|
|
87
|
+
const hasDestination = opts.query || cityName || latitude || opts.placeId || opts.hotelIds || opts.hotelName;
|
|
32
88
|
if (!hasDestination) {
|
|
33
|
-
console.error('Error: provide a destination
|
|
89
|
+
console.error('Error: provide a destination — Mode A: --hotel-name (optionally + --city-name/--country-code) or --hotel-ids; ' +
|
|
90
|
+
'Mode B: --query, --city-name, --latitude+--longitude, or --place-id.');
|
|
34
91
|
process.exit(3);
|
|
35
92
|
}
|
|
93
|
+
// Mode A signal: --hotel-name or --hotel-ids. In Mode A the server
|
|
94
|
+
// ignores filters; warn the user locally so they know what's going to
|
|
95
|
+
// happen (server-side behavior is lenient-with-warnings for now per
|
|
96
|
+
// JIN-639 Phase 4 plan; may become a 422 in a future version).
|
|
97
|
+
const isModeA = Boolean(opts.hotelName || opts.hotelIds);
|
|
98
|
+
const hasFilters = Boolean(opts.minRating || starRating || maxStarRating || opts.minReviews || opts.maxResults);
|
|
99
|
+
if (isModeA && hasFilters) {
|
|
100
|
+
console.warn('Warning: filters (--min-rating / --star-rating / --max-star-rating / --min-reviews / --max-results) ' +
|
|
101
|
+
'are ignored when --hotel-name or --hotel-ids is set (rate-lookup mode). ' +
|
|
102
|
+
'The server will return a warnings entry in the response.');
|
|
103
|
+
}
|
|
36
104
|
const body = {
|
|
37
105
|
checkin: opts.checkin,
|
|
38
106
|
checkout: opts.checkout,
|
|
@@ -41,20 +109,22 @@ export function registerHotelSearchCommand(program) {
|
|
|
41
109
|
// Destination
|
|
42
110
|
if (opts.query)
|
|
43
111
|
body.query = opts.query;
|
|
44
|
-
if (
|
|
45
|
-
body.city_name =
|
|
46
|
-
if (
|
|
47
|
-
body.country_code =
|
|
48
|
-
if (
|
|
49
|
-
body.latitude = Number(
|
|
50
|
-
if (
|
|
51
|
-
body.longitude = Number(
|
|
52
|
-
if (
|
|
53
|
-
body.radius_km = Number(
|
|
112
|
+
if (cityName)
|
|
113
|
+
body.city_name = cityName;
|
|
114
|
+
if (countryCode)
|
|
115
|
+
body.country_code = countryCode;
|
|
116
|
+
if (latitude)
|
|
117
|
+
body.latitude = Number(latitude);
|
|
118
|
+
if (longitude)
|
|
119
|
+
body.longitude = Number(longitude);
|
|
120
|
+
if (radiusKm)
|
|
121
|
+
body.radius_km = Number(radiusKm);
|
|
54
122
|
if (opts.placeId)
|
|
55
123
|
body.place_id = opts.placeId;
|
|
56
124
|
if (opts.hotelIds)
|
|
57
125
|
body.hotel_ids = opts.hotelIds;
|
|
126
|
+
if (opts.hotelName)
|
|
127
|
+
body.hotel_name = opts.hotelName;
|
|
58
128
|
// Occupancy shorthand
|
|
59
129
|
if (opts.children)
|
|
60
130
|
body.children = opts.children.map(Number);
|
|
@@ -63,23 +133,33 @@ export function registerHotelSearchCommand(program) {
|
|
|
63
133
|
// Context
|
|
64
134
|
if (opts.currency)
|
|
65
135
|
body.currency = opts.currency;
|
|
66
|
-
if (
|
|
67
|
-
body.guest_nationality =
|
|
68
|
-
// Filters
|
|
136
|
+
if (guestNationality)
|
|
137
|
+
body.guest_nationality = guestNationality;
|
|
138
|
+
// Filters (Mode B only — Mode A warned above). `--star-rating` maps to
|
|
139
|
+
// the canonical `min_star_rating` leaf (minimum-stars semantics).
|
|
69
140
|
if (opts.minRating)
|
|
70
141
|
body.min_rating = Number(opts.minRating);
|
|
71
|
-
if (
|
|
72
|
-
body.min_star_rating = Number(
|
|
73
|
-
if (
|
|
74
|
-
body.max_star_rating = Number(
|
|
142
|
+
if (starRating)
|
|
143
|
+
body.min_star_rating = Number(starRating);
|
|
144
|
+
if (maxStarRating)
|
|
145
|
+
body.max_star_rating = Number(maxStarRating);
|
|
75
146
|
if (opts.minReviews)
|
|
76
147
|
body.min_reviews = Number(opts.minReviews);
|
|
77
148
|
if (opts.maxResults)
|
|
78
149
|
body.max_results = Number(opts.maxResults);
|
|
79
|
-
const response = await client.raw.POST('/
|
|
150
|
+
const response = await client.raw.POST('/v1/hotel_search', {
|
|
80
151
|
body,
|
|
81
152
|
});
|
|
82
|
-
|
|
153
|
+
// 422 HOTEL_NAME_LOW_CONFIDENCE is actionable, not fatal — pretty-print
|
|
154
|
+
// top_candidates and suggested_retry so the dev can see what the lookup
|
|
155
|
+
// actually matched, then exit non-zero so scripts notice. All other
|
|
156
|
+
// non-2xx responses fall through to withClient's standard error path.
|
|
157
|
+
const apiResp = response;
|
|
158
|
+
if (apiResp.response?.status === 422 && isLowConfidenceError(apiResp.error)) {
|
|
159
|
+
formatLowConfidenceError(apiResp.error, globals.format);
|
|
160
|
+
process.exit(1);
|
|
161
|
+
}
|
|
162
|
+
output(apiResp.data, { format: globals.format });
|
|
83
163
|
}));
|
|
84
164
|
}
|
|
85
165
|
//# sourceMappingURL=hotel-search.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hotel-search.js","sourceRoot":"","sources":["../../src/commands/hotel-search.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hotel-search.js","sourceRoot":"","sources":["../../src/commands/hotel-search.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"price-monitoring.d.ts","sourceRoot":"","sources":["../../src/commands/price-monitoring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"price-monitoring.d.ts","sourceRoot":"","sources":["../../src/commands/price-monitoring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA4ErE"}
|
|
@@ -1,50 +1,65 @@
|
|
|
1
|
-
import { withClient, output } from './shared.js';
|
|
1
|
+
import { withClient, output, resolveDeprecatedFlag } from './shared.js';
|
|
2
2
|
// price_monitoring — cache-only flight price snapshot for a fixed OD +
|
|
3
3
|
// dates pair. JIN-256. Intended to be wired into a cron / scheduled job
|
|
4
|
-
// so partners can track a route over time. On cache miss the
|
|
4
|
+
// so partners can track a route over time. On cache miss the surface returns
|
|
5
5
|
// status:"stale" and this command surfaces it as a non-zero-but-not-error
|
|
6
6
|
// path — the caller can use --format=json + jq to act on it.
|
|
7
|
+
//
|
|
8
|
+
// Wired to the public jinko-api surface POST /v1/price_monitoring via the SDK
|
|
9
|
+
// `priceMonitoring()` method (no longer the raw BFF path).
|
|
7
10
|
export function registerPriceMonitoringCommand(program) {
|
|
8
11
|
program
|
|
9
12
|
.command('price-monitoring')
|
|
10
13
|
.description('Cache-only flight price snapshot for a fixed OD + dates pair. Poll-friendly; never triggers a live call.')
|
|
11
|
-
|
|
12
|
-
.option('--origin
|
|
13
|
-
.option('--
|
|
14
|
-
.option('--
|
|
15
|
-
.option('--
|
|
16
|
-
.option('--
|
|
17
|
-
.option('--
|
|
18
|
-
.option('--
|
|
19
|
-
.option('--
|
|
20
|
-
.option('--
|
|
21
|
-
.option('--
|
|
14
|
+
// Canonical flat flags — match jinko-api PriceMonitoringRequest leaf names.
|
|
15
|
+
.option('--origin <code>', 'origin IATA code (e.g. PAR for city, CDG for airport). JSON: `origin`.')
|
|
16
|
+
.option('--destination <code>', 'destination IATA code (e.g. NYC for city, JFK for airport). JSON: `destination`.')
|
|
17
|
+
.option('--origin-type <type>', 'origin code type: city or airport (default: city). JSON: `origin_type`.', 'city')
|
|
18
|
+
.option('--destination-type <type>', 'destination code type: city or airport (default: city). JSON: `destination_type`.', 'city')
|
|
19
|
+
.option('--departure-date <date>', 'departure date (YYYY-MM-DD). JSON: `departure_date`.')
|
|
20
|
+
.option('--return-date <date>', 'return date for round-trip (YYYY-MM-DD). JSON: `return_date`.')
|
|
21
|
+
.option('--adults <n>', 'number of adult passengers (default: 1). JSON: `adults`.')
|
|
22
|
+
.option('--cabin-class <class>', 'cabin class: economy, premium_economy, business, first. JSON: `cabin_class`.')
|
|
23
|
+
.option('--direct-only', 'only consider direct flights. JSON: `direct_only`.')
|
|
24
|
+
.option('--max-price <amount>', 'upper bound on total fare. JSON: `max_price`.')
|
|
25
|
+
.option('--include-carriers <codes...>', 'whitelist IATA 2-letter carrier codes (e.g. AF KL). JSON: `include_carriers`.')
|
|
26
|
+
.option('--exclude-carriers <codes...>', 'blacklist IATA 2-letter carrier codes (e.g. FR U2). JSON: `exclude_carriers`.')
|
|
27
|
+
// Deprecated aliases — Phase 1 transition (JIN-665), remove in next major.
|
|
28
|
+
.option('--from <origin>', 'DEPRECATED: use --origin.')
|
|
29
|
+
.option('--to <destination>', 'DEPRECATED: use --destination.')
|
|
30
|
+
.option('--date <date>', 'DEPRECATED: use --departure-date.')
|
|
31
|
+
.option('--return <date>', 'DEPRECATED: use --return-date.')
|
|
32
|
+
.option('--cabin <class>', 'DEPRECATED: use --cabin-class.')
|
|
33
|
+
.option('--passengers <n>', 'DEPRECATED: use --adults.')
|
|
22
34
|
.action(withClient(async (client, globals, opts) => {
|
|
23
|
-
|
|
24
|
-
|
|
35
|
+
// Resolve deprecated aliases onto canonical flags.
|
|
36
|
+
const origin = resolveDeprecatedFlag(opts.origin, opts.from, '--from', '--origin');
|
|
37
|
+
const destination = resolveDeprecatedFlag(opts.destination, opts.to, '--to', '--destination');
|
|
38
|
+
const departureDate = resolveDeprecatedFlag(opts.departureDate, opts.date, '--date', '--departure-date');
|
|
39
|
+
const returnDate = resolveDeprecatedFlag(opts.returnDate, opts.return, '--return', '--return-date');
|
|
40
|
+
const cabinClass = resolveDeprecatedFlag(opts.cabinClass, opts.cabin, '--cabin', '--cabin-class');
|
|
41
|
+
const adults = resolveDeprecatedFlag(opts.adults, opts.passengers, '--passengers', '--adults');
|
|
42
|
+
if (!origin || !destination || !departureDate) {
|
|
43
|
+
console.error('Error: --origin, --destination, and --departure-date are required.');
|
|
25
44
|
process.exit(3);
|
|
26
45
|
}
|
|
27
|
-
|
|
28
|
-
|
|
46
|
+
// Canonical flat body for the public surface (POST /v1/price_monitoring).
|
|
47
|
+
const request = {
|
|
48
|
+
origin: String(origin).toUpperCase(),
|
|
29
49
|
origin_type: opts.originType ?? 'city',
|
|
30
|
-
destination: String(
|
|
50
|
+
destination: String(destination).toUpperCase(),
|
|
31
51
|
destination_type: opts.destinationType ?? 'city',
|
|
32
|
-
departure_date:
|
|
52
|
+
departure_date: departureDate,
|
|
53
|
+
adults: Number(adults) || 1,
|
|
54
|
+
...(returnDate ? { return_date: returnDate } : {}),
|
|
55
|
+
...(cabinClass ? { cabin_class: cabinClass } : {}),
|
|
56
|
+
...(opts.directOnly ? { direct_only: true } : {}),
|
|
57
|
+
...(opts.maxPrice ? { max_price: Number(opts.maxPrice) } : {}),
|
|
58
|
+
...(opts.includeCarriers ? { include_carriers: opts.includeCarriers } : {}),
|
|
59
|
+
...(opts.excludeCarriers ? { exclude_carriers: opts.excludeCarriers } : {}),
|
|
33
60
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
if (opts.cabin)
|
|
37
|
-
body.cabin_class = opts.cabin;
|
|
38
|
-
if (opts.directOnly)
|
|
39
|
-
body.direct_only = true;
|
|
40
|
-
if (opts.maxPrice)
|
|
41
|
-
body.max_price = Number(opts.maxPrice);
|
|
42
|
-
if (opts.includeCarriers)
|
|
43
|
-
body.include_carriers = opts.includeCarriers;
|
|
44
|
-
if (opts.excludeCarriers)
|
|
45
|
-
body.exclude_carriers = opts.excludeCarriers;
|
|
46
|
-
const response = await client.raw.POST('/api/v1/flights/monitor', { body });
|
|
47
|
-
output(response.data, { format: globals.format });
|
|
61
|
+
const response = await client.priceMonitoring(request);
|
|
62
|
+
output(response, { format: globals.format });
|
|
48
63
|
}));
|
|
49
64
|
}
|
|
50
65
|
//# sourceMappingURL=price-monitoring.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"price-monitoring.js","sourceRoot":"","sources":["../../src/commands/price-monitoring.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"price-monitoring.js","sourceRoot":"","sources":["../../src/commands/price-monitoring.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-ancillaries.d.ts","sourceRoot":"","sources":["../../src/commands/select-ancillaries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"select-ancillaries.d.ts","sourceRoot":"","sources":["../../src/commands/select-ancillaries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+BvE"}
|
|
@@ -20,14 +20,12 @@ export function registerSelectAncillariesCommand(program) {
|
|
|
20
20
|
...(opts.pax && { pax_ref_id: opts.pax }),
|
|
21
21
|
...(parsedQuantity !== 1 && { quantity: parsedQuantity }),
|
|
22
22
|
}));
|
|
23
|
-
const response = await client.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
selections,
|
|
28
|
-
},
|
|
23
|
+
const response = await client.selectAncillaries({
|
|
24
|
+
trip_id: opts.tripId,
|
|
25
|
+
item_id: opts.itemId,
|
|
26
|
+
selections,
|
|
29
27
|
});
|
|
30
|
-
output(response
|
|
28
|
+
output(response, { format: globals.format });
|
|
31
29
|
}));
|
|
32
30
|
}
|
|
33
31
|
//# sourceMappingURL=select-ancillaries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-ancillaries.js","sourceRoot":"","sources":["../../src/commands/select-ancillaries.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,UAAU,gCAAgC,CAAC,OAAgB;IAC/D,OAAO;SACJ,OAAO,CAAC,oBAAoB,CAAC;SAC7B,WAAW,CAAC,6DAA6D,CAAC;SAC1E,cAAc,CAAC,gBAAgB,EAAE,SAAS,CAAC;SAC3C,cAAc,CAAC,gBAAgB,EAAE,cAAc,CAAC;SAChD,cAAc,CAAC,gBAAgB,EAAE,qCAAqC,CAAC;SACvE,MAAM,CAAC,aAAa,EAAE,+CAA+C,CAAC;SACtE,MAAM,CAAC,gBAAgB,EAAE,uBAAuB,EAAE,GAAG,CAAC;SACtD,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACjD,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnD,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAC3D,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,CAAC;YAClE,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE;YACxB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;YACzC,GAAG,CAAC,cAAc,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC;SAC1D,CAAC,CAAC,CAAC;QAEJ,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"select-ancillaries.js","sourceRoot":"","sources":["../../src/commands/select-ancillaries.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,UAAU,gCAAgC,CAAC,OAAgB;IAC/D,OAAO;SACJ,OAAO,CAAC,oBAAoB,CAAC;SAC7B,WAAW,CAAC,6DAA6D,CAAC;SAC1E,cAAc,CAAC,gBAAgB,EAAE,SAAS,CAAC;SAC3C,cAAc,CAAC,gBAAgB,EAAE,cAAc,CAAC;SAChD,cAAc,CAAC,gBAAgB,EAAE,qCAAqC,CAAC;SACvE,MAAM,CAAC,aAAa,EAAE,+CAA+C,CAAC;SACtE,MAAM,CAAC,gBAAgB,EAAE,uBAAuB,EAAE,GAAG,CAAC;SACtD,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACjD,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnD,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAC3D,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,CAAC;YAClE,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE;YACxB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;YACzC,GAAG,CAAC,cAAc,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC;SAC1D,CAAC,CAAC,CAAC;QAEJ,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC;YAC9C,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,UAAU;SACX,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC,CAAC;AACR,CAAC"}
|
|
@@ -4,6 +4,17 @@ import { type GlobalOptions } from '../config/config.js';
|
|
|
4
4
|
import { output, outputError } from '../output/formatter.js';
|
|
5
5
|
export { output, outputError };
|
|
6
6
|
export type { GlobalOptions };
|
|
7
|
+
/**
|
|
8
|
+
* Promote a deprecated flag onto its canonical counterpart (JIN-665).
|
|
9
|
+
*
|
|
10
|
+
* Flag renames are ADDITIVE: the old spelling keeps working so existing user
|
|
11
|
+
* scripts don't break, but it now feeds the canonical option and prints a
|
|
12
|
+
* one-line deprecation notice to stderr (never stdout, so JSON output stays
|
|
13
|
+
* machine-parseable). The canonical value wins when both are set.
|
|
14
|
+
*
|
|
15
|
+
* Returns the resolved canonical value so callers can use it inline.
|
|
16
|
+
*/
|
|
17
|
+
export declare function resolveDeprecatedFlag<T>(canonical: T | undefined, deprecated: T | undefined, oldFlag: string, newFlag: string): T | undefined;
|
|
7
18
|
/**
|
|
8
19
|
* Wraps a command handler with standard error handling and client creation.
|
|
9
20
|
* Commander calls action with varying arg counts:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAA0C,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;AAC/B,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,CACP,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,aAAa,EAEtB,OAAO,CAAC,EAAE,GAAG,EACb,GAAG,CAAC,EAAE,OAAO,KACV,OAAO,CAAC,IAAI,CAAC,IAGK,MAAM,OAAO,EAAE,GAAG,MAAM,GAAG,EAAE,mBA2BrD"}
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAA0C,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;AAC/B,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACrC,SAAS,EAAE,CAAC,GAAG,SAAS,EACxB,UAAU,EAAE,CAAC,GAAG,SAAS,EACzB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,CAAC,GAAG,SAAS,CAMf;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,CACP,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,aAAa,EAEtB,OAAO,CAAC,EAAE,GAAG,EACb,GAAG,CAAC,EAAE,OAAO,KACV,OAAO,CAAC,IAAI,CAAC,IAGK,MAAM,OAAO,EAAE,GAAG,MAAM,GAAG,EAAE,mBA2BrD"}
|
package/dist/commands/shared.js
CHANGED
|
@@ -2,6 +2,23 @@ import { createJinkoClient, ApiError, AuthError } from '@gojinko/api-client';
|
|
|
2
2
|
import { getGlobalOptions } from '../config/config.js';
|
|
3
3
|
import { output, outputError } from '../output/formatter.js';
|
|
4
4
|
export { output, outputError };
|
|
5
|
+
/**
|
|
6
|
+
* Promote a deprecated flag onto its canonical counterpart (JIN-665).
|
|
7
|
+
*
|
|
8
|
+
* Flag renames are ADDITIVE: the old spelling keeps working so existing user
|
|
9
|
+
* scripts don't break, but it now feeds the canonical option and prints a
|
|
10
|
+
* one-line deprecation notice to stderr (never stdout, so JSON output stays
|
|
11
|
+
* machine-parseable). The canonical value wins when both are set.
|
|
12
|
+
*
|
|
13
|
+
* Returns the resolved canonical value so callers can use it inline.
|
|
14
|
+
*/
|
|
15
|
+
export function resolveDeprecatedFlag(canonical, deprecated, oldFlag, newFlag) {
|
|
16
|
+
if (deprecated !== undefined && canonical === undefined) {
|
|
17
|
+
process.stderr.write(`[jinko] DEPRECATED: ${oldFlag} is deprecated, use ${newFlag}.\n`);
|
|
18
|
+
return deprecated;
|
|
19
|
+
}
|
|
20
|
+
return canonical;
|
|
21
|
+
}
|
|
5
22
|
/**
|
|
6
23
|
* Wraps a command handler with standard error handling and client creation.
|
|
7
24
|
* Commander calls action with varying arg counts:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAoB,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAsB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;AAG/B;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CACxB,OAMkB;IAElB,8DAA8D;IAC9D,OAAO,KAAK,WAA0B,GAAG,IAAW;QAClD,uEAAuE;QACvE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAY,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAA4B,CAAC;QACjE,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;gBACrC,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;YACH,MAAM,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;gBAC/B,WAAW,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;gBACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC9B,WAAW,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC1F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,WAAW,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;gBACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAoB,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAsB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;AAG/B;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,SAAwB,EACxB,UAAyB,EACzB,OAAe,EACf,OAAe;IAEf,IAAI,UAAU,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACxD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,OAAO,uBAAuB,OAAO,KAAK,CAAC,CAAC;QACxF,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CACxB,OAMkB;IAElB,8DAA8D;IAC9D,OAAO,KAAK,WAA0B,GAAG,IAAW;QAClD,uEAAuE;QACvE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAY,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAA4B,CAAC;QACjE,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;gBACrC,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;YACH,MAAM,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;gBAC/B,WAAW,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;gBACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC9B,WAAW,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC1F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,WAAW,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;gBACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trip-status.d.ts","sourceRoot":"","sources":["../../src/commands/trip-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"trip-status.d.ts","sourceRoot":"","sources":["../../src/commands/trip-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAShE"}
|
|
@@ -5,10 +5,8 @@ export function registerTripStatusCommand(program) {
|
|
|
5
5
|
.description('Get full status of a trip: cart, quote, fulfillment, bookings.')
|
|
6
6
|
.requiredOption('--trip-id <id>', 'trip ID')
|
|
7
7
|
.action(withClient(async (client, globals, opts) => {
|
|
8
|
-
const response = await client.
|
|
9
|
-
|
|
10
|
-
});
|
|
11
|
-
output(response.data, { format: globals.format });
|
|
8
|
+
const response = await client.getTrip(opts.tripId);
|
|
9
|
+
output(response, { format: globals.format });
|
|
12
10
|
}));
|
|
13
11
|
}
|
|
14
12
|
//# sourceMappingURL=trip-status.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trip-status.js","sourceRoot":"","sources":["../../src/commands/trip-status.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,UAAU,yBAAyB,CAAC,OAAgB;IACxD,OAAO;SACJ,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,gEAAgE,CAAC;SAC7E,cAAc,CAAC,gBAAgB,EAAE,SAAS,CAAC;SAC3C,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACjD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"trip-status.js","sourceRoot":"","sources":["../../src/commands/trip-status.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,UAAU,yBAAyB,CAAC,OAAgB;IACxD,OAAO;SACJ,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,gEAAgE,CAAC;SAC7E,cAAc,CAAC,gBAAgB,EAAE,SAAS,CAAC;SAC3C,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACjD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC,CAAC;AACR,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trip.d.ts","sourceRoot":"","sources":["../../src/commands/trip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"trip.d.ts","sourceRoot":"","sources":["../../src/commands/trip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyD1D"}
|
package/dist/commands/trip.js
CHANGED
|
@@ -44,10 +44,8 @@ export function registerTripCommand(program) {
|
|
|
44
44
|
}
|
|
45
45
|
body['upsert_travelers'] = upsertTravelers;
|
|
46
46
|
}
|
|
47
|
-
const response = await client.
|
|
48
|
-
|
|
49
|
-
});
|
|
50
|
-
output(response.data, { format: globals.format });
|
|
47
|
+
const response = await client.trip(body);
|
|
48
|
+
output(response, { format: globals.format });
|
|
51
49
|
}));
|
|
52
50
|
}
|
|
53
51
|
//# sourceMappingURL=trip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trip.js","sourceRoot":"","sources":["../../src/commands/trip.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"trip.js","sourceRoot":"","sources":["../../src/commands/trip.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,4FAA4F,CAAC;SACzG,MAAM,CAAC,gBAAgB,EAAE,uCAAuC,CAAC;SACjE,MAAM,CAAC,2BAA2B,EAAE,wCAAwC,CAAC;SAC7E,MAAM,CACL,uBAAuB,EACvB,0KAA0K,CAC3K;SACA,MAAM,CAAC,oBAAoB,EAAE,sBAAsB,CAAC;SACpD,MAAM,CAAC,kBAAkB,EAAE,6BAA6B,CAAC;SACzD,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACjD,MAAM,IAAI,GAA4B,EAAE,CAAC;QAEzC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;gBAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;QACvD,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;QAC7D,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,SAAoB,CAAC;YACzB,IAAI,CAAC;gBACH,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAc,CAAC;YACtD,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;gBAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,eAAe,GAA4B,EAAE,SAAS,EAAE,CAAC;YAE/D,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,IAAI,CAAC;oBACH,eAAe,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxD,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;oBAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC;YAED,IAAI,CAAC,kBAAkB,CAAC,GAAG,eAAe,CAAC;QAC7C,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAmB,CAAC,CAAC;QACxD,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC,CAAC;AACR,CAAC"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0BpC,wBAAgB,aAAa,IAAI,OAAO,CAqCvC"}
|
package/dist/index.js
CHANGED
|
@@ -16,7 +16,6 @@ import { registerSelectAncillariesCommand } from './commands/select-ancillaries.
|
|
|
16
16
|
import { registerRefundCommand } from './commands/refund.js';
|
|
17
17
|
import { registerExchangeCommand } from './commands/exchange.js';
|
|
18
18
|
import { registerGetBookingCommand } from './commands/get-booking.js';
|
|
19
|
-
import { registerHotelLookupBookingCommand } from './commands/hotel-lookup-booking.js';
|
|
20
19
|
import { registerHotelCancelCommand } from './commands/hotel-cancel.js';
|
|
21
20
|
import { registerAuthCommands } from './commands/auth/index.js';
|
|
22
21
|
import { registerSchemaCommand } from './commands/schema.js';
|
|
@@ -47,7 +46,6 @@ export function createProgram() {
|
|
|
47
46
|
registerTripStatusCommand(program);
|
|
48
47
|
// Post-booking
|
|
49
48
|
registerGetBookingCommand(program);
|
|
50
|
-
registerHotelLookupBookingCommand(program);
|
|
51
49
|
registerHotelCancelCommand(program);
|
|
52
50
|
registerRefundCommand(program);
|
|
53
51
|
registerExchangeCommand(program);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gojinko/cli",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"jinko": "./dist/bin/jinko.js"
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"docs:gen": "tsx scripts/gen-cli-docs.ts"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@gojinko/api-client": "
|
|
20
|
+
"@gojinko/api-client": "2.0.0",
|
|
21
21
|
"commander": "^12.1.0",
|
|
22
22
|
"chalk": "^5.4.1",
|
|
23
23
|
"open": "^10.0.0"
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { Command } from 'commander';
|
|
2
|
-
/**
|
|
3
|
-
* `gojinko hotel-lookup-booking` — guest-access hotel booking retrieval.
|
|
4
|
-
* JIN-281. Wraps BFF POST /api/v1/hotels/retrieve-booking.
|
|
5
|
-
*/
|
|
6
|
-
export declare function registerHotelLookupBookingCommand(program: Command): void;
|
|
7
|
-
//# sourceMappingURL=hotel-lookup-booking.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hotel-lookup-booking.d.ts","sourceRoot":"","sources":["../../src/commands/hotel-lookup-booking.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAiBxE"}
|