letsfg 2026.4.6 → 2026.4.9

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.
@@ -138,7 +138,9 @@ async function searchLocal(origin, destination, dateFrom, options = {}) {
138
138
  limit: options.limit ?? 50,
139
139
  return_date: options.returnDate,
140
140
  cabin_class: options.cabinClass,
141
- ...options.maxBrowsers != null && { max_browsers: options.maxBrowsers }
141
+ ...options.maxBrowsers != null && { max_browsers: options.maxBrowsers },
142
+ ...options.departureTimeFrom != null && { departure_time_from: options.departureTimeFrom },
143
+ ...options.departureTimeTo != null && { departure_time_to: options.departureTimeTo }
142
144
  });
143
145
  return new Promise((resolve, reject) => {
144
146
  const pythonCmd = process.platform === "win32" ? "python" : "python3";
package/dist/cli.js CHANGED
@@ -159,7 +159,9 @@ async function searchLocal(origin, destination, dateFrom, options = {}) {
159
159
  limit: options.limit ?? 50,
160
160
  return_date: options.returnDate,
161
161
  cabin_class: options.cabinClass,
162
- ...options.maxBrowsers != null && { max_browsers: options.maxBrowsers }
162
+ ...options.maxBrowsers != null && { max_browsers: options.maxBrowsers },
163
+ ...options.departureTimeFrom != null && { departure_time_from: options.departureTimeFrom },
164
+ ...options.departureTimeTo != null && { departure_time_to: options.departureTimeTo }
163
165
  });
164
166
  return new Promise((resolve, reject) => {
165
167
  const pythonCmd = process.platform === "win32" ? "python" : "python3";
package/dist/cli.mjs CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  LetsFG,
4
4
  LetsFGError,
5
5
  offerSummary
6
- } from "./chunk-RLP7MSF6.mjs";
6
+ } from "./chunk-2JOODKE2.mjs";
7
7
 
8
8
  // src/cli.ts
9
9
  function getFlag(args, flag, alias) {
package/dist/index.d.mts CHANGED
@@ -111,9 +111,13 @@ interface SearchOptions {
111
111
  maxStopovers?: number;
112
112
  currency?: string;
113
113
  limit?: number;
114
- sort?: 'price' | 'duration';
114
+ sort?: 'price' | 'duration' | 'departure_time';
115
115
  /** Max concurrent browser instances (1-32). Omit for auto-detect based on system RAM. */
116
116
  maxBrowsers?: number;
117
+ /** Earliest departure time HH:MM (e.g. '06:00' for morning flights). */
118
+ departureTimeFrom?: string;
119
+ /** Latest departure time HH:MM (e.g. '14:00' for flights before 2pm). */
120
+ departureTimeTo?: string;
117
121
  }
118
122
  interface CheckoutProgress {
119
123
  status: string;
package/dist/index.d.ts CHANGED
@@ -111,9 +111,13 @@ interface SearchOptions {
111
111
  maxStopovers?: number;
112
112
  currency?: string;
113
113
  limit?: number;
114
- sort?: 'price' | 'duration';
114
+ sort?: 'price' | 'duration' | 'departure_time';
115
115
  /** Max concurrent browser instances (1-32). Omit for auto-detect based on system RAM. */
116
116
  maxBrowsers?: number;
117
+ /** Earliest departure time HH:MM (e.g. '06:00' for morning flights). */
118
+ departureTimeFrom?: string;
119
+ /** Latest departure time HH:MM (e.g. '14:00' for flights before 2pm). */
120
+ departureTimeTo?: string;
117
121
  }
118
122
  interface CheckoutProgress {
119
123
  status: string;
package/dist/index.js CHANGED
@@ -188,7 +188,9 @@ async function searchLocal(origin, destination, dateFrom, options = {}) {
188
188
  limit: options.limit ?? 50,
189
189
  return_date: options.returnDate,
190
190
  cabin_class: options.cabinClass,
191
- ...options.maxBrowsers != null && { max_browsers: options.maxBrowsers }
191
+ ...options.maxBrowsers != null && { max_browsers: options.maxBrowsers },
192
+ ...options.departureTimeFrom != null && { departure_time_from: options.departureTimeFrom },
193
+ ...options.departureTimeTo != null && { departure_time_to: options.departureTimeTo }
192
194
  });
193
195
  return new Promise((resolve, reject) => {
194
196
  const pythonCmd = process.platform === "win32" ? "python" : "python3";
package/dist/index.mjs CHANGED
@@ -14,7 +14,7 @@ import {
14
14
  offerSummary,
15
15
  searchLocal,
16
16
  systemInfo
17
- } from "./chunk-RLP7MSF6.mjs";
17
+ } from "./chunk-2JOODKE2.mjs";
18
18
  export {
19
19
  AuthenticationError,
20
20
  BoostedTravel,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "letsfg",
3
- "version": "2026.4.6",
3
+ "version": "2026.4.9",
4
4
  "description": "Agent-native flight search & booking. 200 airline connectors run locally + enterprise GDS/NDC APIs. Built for autonomous AI agents.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",