@gojinko/cli 1.3.0 → 2.1.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-dates.d.ts +25 -0
- package/dist/commands/find-dates.d.ts.map +1 -0
- package/dist/commands/find-dates.js +88 -0
- package/dist/commands/find-dates.js.map +1 -0
- 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 +65 -46
- 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 +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +29 -29
- 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,5 +1,5 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
-
import { withClient, output } from './shared.js';
|
|
2
|
+
import { withClient, output, resolveDeprecatedFlag } from './shared.js';
|
|
3
3
|
function isLowConfidenceError(body) {
|
|
4
4
|
if (!body || typeof body !== 'object')
|
|
5
5
|
return false;
|
|
@@ -33,43 +33,61 @@ function formatLowConfidenceError(body, format) {
|
|
|
33
33
|
console.error(` ${chalk.cyan('destination=')}${dest}`);
|
|
34
34
|
}
|
|
35
35
|
else {
|
|
36
|
-
console.error(chalk.dim('No suggested_retry — provide --city and --country to narrow the lookup, or try a different name.'));
|
|
36
|
+
console.error(chalk.dim('No suggested_retry — provide --city-name and --country-code to narrow the lookup, or try a different name.'));
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
export function registerHotelSearchCommand(program) {
|
|
40
40
|
program
|
|
41
41
|
.command('hotel-search')
|
|
42
42
|
.description('Search live hotel inventory and rates by destination, dates, and occupancy.')
|
|
43
|
-
.option('--query <text>', 'free-text destination (city, region, POI) — Mode B')
|
|
44
|
-
.option('--city <name>', 'city name (e.g. "Paris") — Mode B destination, or Mode A lookup scope when combined with --hotel-name')
|
|
45
|
-
.option('--country <code>', 'ISO 3166-1 alpha-2 country code (e.g. fr) — Mode B destination, or Mode A lookup scope when combined with --hotel-name')
|
|
46
|
-
.option('--
|
|
47
|
-
.option('--
|
|
48
|
-
.option('--radius <km>', 'search radius in km (default 5, max 50) — Mode B')
|
|
49
|
-
.option('--place-id <id>', 'Google Places ID or upstream place identifier — Mode B')
|
|
50
|
-
.option('--hotel-ids <ids...>', 're-shop specific hotel IDs — Mode A')
|
|
51
|
-
.option('--hotel-name <name>', 'look up a specific hotel by name — Mode A. Pair with --city and --country to narrow the lookup scope.')
|
|
52
|
-
.option('--checkin <date>', 'check-in date (YYYY-MM-DD)', undefined)
|
|
53
|
-
.option('--checkout <date>', 'check-out date (YYYY-MM-DD)', undefined)
|
|
54
|
-
.option('--adults <n>', 'number of adults (shorthand)', '2')
|
|
55
|
-
.option('--children <ages...>', 'children ages (shorthand, e.g. 5 7)')
|
|
56
|
-
.option('--rooms <n>', 'number of rooms (shorthand)')
|
|
57
|
-
.option('--currency <code>', 'ISO 4217 currency code (default USD)')
|
|
58
|
-
.option('--nationality <code>', 'guest nationality (ISO 3166-1 alpha-2)')
|
|
59
|
-
.option('--min-rating <n>', 'minimum guest review rating (0-10)')
|
|
60
|
-
.option('--
|
|
61
|
-
.option('--max-
|
|
62
|
-
.option('--min-reviews <n>', 'minimum number of reviews')
|
|
63
|
-
.option('--max-results <n>', 'maximum hotels to return (default 50)')
|
|
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.')
|
|
64
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');
|
|
65
83
|
if (!opts.checkin || !opts.checkout) {
|
|
66
84
|
console.error('Error: --checkin and --checkout are required.');
|
|
67
85
|
process.exit(3);
|
|
68
86
|
}
|
|
69
|
-
const hasDestination = opts.query ||
|
|
87
|
+
const hasDestination = opts.query || cityName || latitude || opts.placeId || opts.hotelIds || opts.hotelName;
|
|
70
88
|
if (!hasDestination) {
|
|
71
|
-
console.error('Error: provide a destination — Mode A: --hotel-name (optionally + --city/--country) or --hotel-ids; ' +
|
|
72
|
-
'Mode B: --query, --city, --
|
|
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.');
|
|
73
91
|
process.exit(3);
|
|
74
92
|
}
|
|
75
93
|
// Mode A signal: --hotel-name or --hotel-ids. In Mode A the server
|
|
@@ -77,9 +95,9 @@ export function registerHotelSearchCommand(program) {
|
|
|
77
95
|
// happen (server-side behavior is lenient-with-warnings for now per
|
|
78
96
|
// JIN-639 Phase 4 plan; may become a 422 in a future version).
|
|
79
97
|
const isModeA = Boolean(opts.hotelName || opts.hotelIds);
|
|
80
|
-
const hasFilters = Boolean(opts.minRating ||
|
|
98
|
+
const hasFilters = Boolean(opts.minRating || starRating || maxStarRating || opts.minReviews || opts.maxResults);
|
|
81
99
|
if (isModeA && hasFilters) {
|
|
82
|
-
console.warn('Warning: filters (--min-rating / --
|
|
100
|
+
console.warn('Warning: filters (--min-rating / --star-rating / --max-star-rating / --min-reviews / --max-results) ' +
|
|
83
101
|
'are ignored when --hotel-name or --hotel-ids is set (rate-lookup mode). ' +
|
|
84
102
|
'The server will return a warnings entry in the response.');
|
|
85
103
|
}
|
|
@@ -91,16 +109,16 @@ export function registerHotelSearchCommand(program) {
|
|
|
91
109
|
// Destination
|
|
92
110
|
if (opts.query)
|
|
93
111
|
body.query = opts.query;
|
|
94
|
-
if (
|
|
95
|
-
body.city_name =
|
|
96
|
-
if (
|
|
97
|
-
body.country_code =
|
|
98
|
-
if (
|
|
99
|
-
body.latitude = Number(
|
|
100
|
-
if (
|
|
101
|
-
body.longitude = Number(
|
|
102
|
-
if (
|
|
103
|
-
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);
|
|
104
122
|
if (opts.placeId)
|
|
105
123
|
body.place_id = opts.placeId;
|
|
106
124
|
if (opts.hotelIds)
|
|
@@ -115,20 +133,21 @@ export function registerHotelSearchCommand(program) {
|
|
|
115
133
|
// Context
|
|
116
134
|
if (opts.currency)
|
|
117
135
|
body.currency = opts.currency;
|
|
118
|
-
if (
|
|
119
|
-
body.guest_nationality =
|
|
120
|
-
// Filters (Mode B only — Mode A warned above)
|
|
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).
|
|
121
140
|
if (opts.minRating)
|
|
122
141
|
body.min_rating = Number(opts.minRating);
|
|
123
|
-
if (
|
|
124
|
-
body.min_star_rating = Number(
|
|
125
|
-
if (
|
|
126
|
-
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);
|
|
127
146
|
if (opts.minReviews)
|
|
128
147
|
body.min_reviews = Number(opts.minReviews);
|
|
129
148
|
if (opts.maxResults)
|
|
130
149
|
body.max_results = Number(opts.maxResults);
|
|
131
|
-
const response = await client.raw.POST('/
|
|
150
|
+
const response = await client.raw.POST('/v1/hotel_search', {
|
|
132
151
|
body,
|
|
133
152
|
});
|
|
134
153
|
// 422 HOTEL_NAME_LOW_CONFIDENCE is actionable, not fatal — pretty-print
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hotel-search.js","sourceRoot":"","sources":["../../src/commands/hotel-search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
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
CHANGED
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;AA8BpC,wBAAgB,aAAa,IAAI,OAAO,CA4CvC"}
|
package/dist/index.js
CHANGED
|
@@ -1,42 +1,43 @@
|
|
|
1
|
-
import { readFileSync } from
|
|
2
|
-
import { fileURLToPath } from
|
|
3
|
-
import { dirname, join } from
|
|
4
|
-
import { Command } from
|
|
5
|
-
import { registerFindFlightCommand } from
|
|
6
|
-
import { registerFindDestinationCommand } from
|
|
7
|
-
import { registerFlightSearchCommand } from
|
|
8
|
-
import { registerFlightCalendarCommand } from
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import { registerHotelCancelCommand } from
|
|
21
|
-
import { registerAuthCommands } from
|
|
22
|
-
import { registerSchemaCommand } from
|
|
23
|
-
import { registerConfigCommands } from
|
|
1
|
+
import { readFileSync } from "node:fs";
|
|
2
|
+
import { fileURLToPath } from "node:url";
|
|
3
|
+
import { dirname, join } from "node:path";
|
|
4
|
+
import { Command } from "commander";
|
|
5
|
+
import { registerFindFlightCommand } from "./commands/find-flight.js";
|
|
6
|
+
import { registerFindDestinationCommand } from "./commands/find-destination.js";
|
|
7
|
+
import { registerFlightSearchCommand } from "./commands/flight-search.js";
|
|
8
|
+
import { registerFlightCalendarCommand } from "./commands/flight-calendar.js";
|
|
9
|
+
import { registerFindDatesCommand } from "./commands/find-dates.js";
|
|
10
|
+
import { registerPriceMonitoringCommand } from "./commands/price-monitoring.js";
|
|
11
|
+
import { registerHotelSearchCommand } from "./commands/hotel-search.js";
|
|
12
|
+
import { registerHotelDetailsCommand } from "./commands/hotel-details.js";
|
|
13
|
+
import { registerTripCommand } from "./commands/trip.js";
|
|
14
|
+
import { registerBookCommand } from "./commands/checkout.js";
|
|
15
|
+
import { registerTripStatusCommand } from "./commands/trip-status.js";
|
|
16
|
+
import { registerSelectAncillariesCommand } from "./commands/select-ancillaries.js";
|
|
17
|
+
import { registerRefundCommand } from "./commands/refund.js";
|
|
18
|
+
import { registerExchangeCommand } from "./commands/exchange.js";
|
|
19
|
+
import { registerGetBookingCommand } from "./commands/get-booking.js";
|
|
20
|
+
import { registerHotelCancelCommand } from "./commands/hotel-cancel.js";
|
|
21
|
+
import { registerAuthCommands } from "./commands/auth/index.js";
|
|
22
|
+
import { registerSchemaCommand } from "./commands/schema.js";
|
|
23
|
+
import { registerConfigCommands } from "./commands/config/index.js";
|
|
24
24
|
// Read version dynamically from package.json so it never drifts.
|
|
25
25
|
// Compiled file lives at dist/index.js; package.json is one level up.
|
|
26
|
-
const pkg = JSON.parse(readFileSync(join(dirname(fileURLToPath(import.meta.url)),
|
|
26
|
+
const pkg = JSON.parse(readFileSync(join(dirname(fileURLToPath(import.meta.url)), "..", "package.json"), "utf-8"));
|
|
27
27
|
export function createProgram() {
|
|
28
28
|
const program = new Command();
|
|
29
29
|
program
|
|
30
|
-
.name(
|
|
31
|
-
.description(
|
|
30
|
+
.name("jinko")
|
|
31
|
+
.description("Jinko CLI — search flights, manage trips, and book travel from the terminal.")
|
|
32
32
|
.version(pkg.version)
|
|
33
|
-
.option(
|
|
34
|
-
.option(
|
|
33
|
+
.option("--format <format>", "output format: json (default) or table", "json")
|
|
34
|
+
.option("--api-key <key>", "API key (jnk_...) — overrides env/config");
|
|
35
35
|
// Discovery
|
|
36
36
|
registerFindFlightCommand(program);
|
|
37
37
|
registerFindDestinationCommand(program);
|
|
38
38
|
registerFlightSearchCommand(program);
|
|
39
39
|
registerFlightCalendarCommand(program);
|
|
40
|
+
registerFindDatesCommand(program);
|
|
40
41
|
registerPriceMonitoringCommand(program);
|
|
41
42
|
registerHotelSearchCommand(program);
|
|
42
43
|
registerHotelDetailsCommand(program);
|
|
@@ -47,7 +48,6 @@ export function createProgram() {
|
|
|
47
48
|
registerTripStatusCommand(program);
|
|
48
49
|
// Post-booking
|
|
49
50
|
registerGetBookingCommand(program);
|
|
50
|
-
registerHotelLookupBookingCommand(program);
|
|
51
51
|
registerHotelCancelCommand(program);
|
|
52
52
|
registerRefundCommand(program);
|
|
53
53
|
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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"}
|