@curless/hotel-storefront 0.30.6 → 0.30.7

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.
@@ -28,6 +28,8 @@ export type HuazhuHotelsOptions = {
28
28
  */
29
29
  sandbox?: boolean;
30
30
  /** Offer rooms by the hour - see `ApiSource.hourly`. Off unless set. */
31
+ /** Huazhu's own test environment (test-*.huazhu.com) - where prepaid may run in test mode. */
32
+ testEnvironment?: boolean;
31
33
  hourly?: boolean;
32
34
  /**
33
35
  * Sell rates paid in advance, taking the money through the gateway's card
@@ -1 +1 @@
1
- {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/huazhu/backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/huazhu/backend.ts"],"names":[],"mappings":"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"}
@@ -352,9 +352,11 @@ export const createHuazhuHotels = (opts) => {
352
352
  const { client, catalog, store, reconciler } = opts;
353
353
  // ⚠️ NO MONEY TAKEN FOR A REAL HUAZHU YET: who takes it, the licence, a
354
354
  // partial refund, mixed trips, invoices and VCC are robin's to decide
355
- // (总线程, 2026-10-12). Prepaid runs against the simulated Huazhu only.
356
- if (opts.prepaid && !opts.sandbox)
357
- throw new Error('prepaid rates are sold against the simulated Huazhu only, until robin decides who takes the money (docs/huazhu-products-plan.md)');
355
+ // (总线程, 2026-10-12). Prepaid runs against the simulated Huazhu, or
356
+ // Huazhu's test environment in test mode (robin, 2026-10-14) - never the
357
+ // production one.
358
+ if (opts.prepaid && !opts.sandbox && !opts.testEnvironment)
359
+ throw new Error("prepaid rates are sold against the simulated Huazhu or Huazhu's test environment only, until robin decides who takes the money (docs/huazhu-products-plan.md)");
358
360
  const checkout = opts.prepaid?.checkout;
359
361
  /** Unpaid this long, the page is closed and the booking lapses - inside the card page's own ~31 minutes. */
360
362
  const payWithin = opts.prepaid?.payWithinMs ?? 30 * 60_000;
@@ -1 +1 @@
1
- {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/huazhu/backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/huazhu/backend.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,11 @@ type Line = (s: string) => void;
3
3
  export type CheckOptions = {
4
4
  /** Run Huazhu's price check (`/reservation/prebook`) at the end. */
5
5
  prebook?: boolean;
6
+ /**
7
+ * Count a rate paid in advance as sellable, as OPN - as a deployment that
8
+ * takes payment would, before its config has a merchant to name (`--prepaid`).
9
+ */
10
+ prepaid?: boolean;
6
11
  /** Milliseconds between one call to Huazhu and the next. */
7
12
  paceMs?: number;
8
13
  };
@@ -1 +1 @@
1
- {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/huazhu/check.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AA+B9C,KAAK,IAAI,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAEhC,MAAM,MAAM,YAAY,GAAG;IACzB,oEAAoE;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,KAAK,SAAS,EACd,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EACvC,MAAK,IAA4B,EACjC,YAAY,OAAO,KAAK,EACxB,OAAM,YAAiB,KACtB,OAAO,CAAC,OAAO,CAwOjB,CAAC"}
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/huazhu/check.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AA+B9C,KAAK,IAAI,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAEhC,MAAM,MAAM,YAAY,GAAG;IACzB,oEAAoE;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,KAAK,SAAS,EACd,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EACvC,MAAK,IAA4B,EACjC,YAAY,OAAO,KAAK,EACxB,OAAM,YAAiB,KACtB,OAAO,CAAC,OAAO,CAmPjB,CAAC"}
@@ -120,9 +120,11 @@ export const checkHuazhu = async (api, env, out = (s) => console.log(s), fetchIm
120
120
  if (unread.length)
121
121
  out(`✗ these cancellation codes cannot be read here - they would be shown as "the hotel decides": ${unread.join(', ')}`);
122
122
  const guarantees = new Set(offers.dailyOffers.flatMap((o) => o.guaranteePolicies.map((g) => g?.code)));
123
- out(` guarantee codes: ${[...guarantees].join(', ')} - this deployment books as ${api.paymentType ?? 'NGPL'}`);
124
- const checkIn = start;
125
- const checkOut = addDays(start, 1);
123
+ out(` guarantee codes: ${[...guarantees].join(', ')} - this deployment books as ${api.paymentType ?? 'NGPL'}${api.prepaid || opts.prepaid ? ', and a rate paid in advance as OPN' : ''}`);
124
+ // The farthest night asked about: a price check names a stay, and the one
125
+ // furthest off is the one least in anybody's way (总线程, 2026-10-09).
126
+ const checkIn = addDays(start, span);
127
+ const checkOut = addDays(checkIn, 1);
126
128
  const context = {
127
129
  checkIn,
128
130
  checkOut,
@@ -131,6 +133,8 @@ export const checkHuazhu = async (api, env, out = (s) => console.log(s), fetchIm
131
133
  today,
132
134
  clock: clockAt(Date.now(), tz),
133
135
  paymentType: api.paymentType ?? 'NGPL',
136
+ // A deployment that takes payment sells prepaid rates too, as OPN.
137
+ ...(api.prepaid || opts.prepaid ? { prepaidType: 'OPN' } : {}),
134
138
  allowTags: allow,
135
139
  };
136
140
  const key = (o) => `${o.roomTypeCode}~${o.rateCode}`;
@@ -159,6 +163,7 @@ export const checkHuazhu = async (api, env, out = (s) => console.log(s), fetchIm
159
163
  after: res.after,
160
164
  ...(res.before ? { before: res.before } : {}),
161
165
  currency: res.currency,
166
+ paymentType: res.paymentType,
162
167
  };
163
168
  }
164
169
  }
@@ -168,7 +173,7 @@ export const checkHuazhu = async (api, env, out = (s) => console.log(s), fetchIm
168
173
  out('✗ nothing here is sellable for that night - try another hotel, or check the payment type the contract allows');
169
174
  return false;
170
175
  }
171
- out(`✓ cheapest sellable: ${cheapest.product.roomTypeName} / ${cheapest.product.rateCode} at ${cheapest.after[0]} ${cheapest.currency}`);
176
+ out(`✓ cheapest sellable: ${cheapest.product.roomTypeName} / ${cheapest.product.rateCode} at ${cheapest.after[0]} ${cheapest.currency}, booked as ${cheapest.paymentType}`);
172
177
  if (!opts.prebook) {
173
178
  out(" prebook not run - add --prebook for Huazhu's own check of that price (it holds nothing)");
174
179
  out('All read-only steps passed.');
@@ -177,7 +182,7 @@ export const checkHuazhu = async (api, env, out = (s) => console.log(s), fetchIm
177
182
  const pre = await step('prebook', () => client.prebook({
178
183
  hotelId: hotel.hotelId,
179
184
  checkinType: 'DAY',
180
- paymentType: api.paymentType ?? 'NGPL',
185
+ paymentType: cheapest.paymentType,
181
186
  reservations: [
182
187
  {
183
188
  roomTypeCode: cheapest.product.roomTypeCode,
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/huazhu/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/huazhu/check.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"make.d.ts","sourceRoot":"","sources":["../../src/huazhu/make.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAY5D,eAAO,MAAM,UAAU,GAAI,KAAK,SAAS,EAAE,KAAK,eAAe,KAAG,IAmIjE,CAAC"}
1
+ {"version":3,"file":"make.d.ts","sourceRoot":"","sources":["../../src/huazhu/make.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAY5D,eAAO,MAAM,UAAU,GAAI,KAAK,SAAS,EAAE,KAAK,eAAe,KAAG,IA8IjE,CAAC"}
@@ -3,7 +3,7 @@ import { createHuazhuHotels } from './backend.js';
3
3
  import { BookingStore, Reconciler } from './bookings.js';
4
4
  import { Catalog } from './catalog.js';
5
5
  import { HuazhuClient } from './client.js';
6
- import { claimStateDir, insecureUrls, originOf } from './origin.js';
6
+ import { claimStateDir, huazhuTestEnvironment, insecureUrls, originOf } from './origin.js';
7
7
  // Huazhu, as one supplier of rooms: the client, the hotel copy, the bookings
8
8
  // on disk and their follow-up, put together - for Huazhu's own connector and,
9
9
  // with a state directory of its own, for the Otaless hotel market (see
@@ -27,15 +27,23 @@ export const makeHuazhu = (api, ctx) => {
27
27
  if (insecure.length) {
28
28
  throw new Error(`${ctx.brand}: ${insecure.join(' and ')} ${insecure.length === 1 ? 'is' : 'are'} not https - the real Huazhu is reached over https only (the simulated one is marked data.api.sandbox)`);
29
29
  }
30
- // ⚠️ MONEY ONLY AGAINST THE SIMULATED HUAZHU (总线程, 2026-10-12): who takes
31
- // a real guest's money is robin's to decide. Said before anything starts.
32
- if (api.prepaid && !api.sandbox) {
33
- throw new Error(`${ctx.brand}: data.api.prepaid is for the simulated Huazhu only (data.api.sandbox) until robin decides who takes the money - see docs/huazhu-products-plan.md`);
30
+ // ⚠️ MONEY ONLY AGAINST A HUAZHU THAT IS NOT THE REAL ONE: the simulated
31
+ // Huazhu (总线程, 2026-10-12), or Huazhu's own test environment (robin,
32
+ // 2026-10-14: its test hotel sells prepaid rates only). Who takes a real
33
+ // guest's money is robin's to decide. Said before anything starts.
34
+ const testEnvironment = huazhuTestEnvironment(api);
35
+ if (api.prepaid && !api.sandbox && !testEnvironment) {
36
+ throw new Error(`${ctx.brand}: data.api.prepaid is for the simulated Huazhu (data.api.sandbox) or Huazhu's test environment (test-*.huazhu.com) only, until robin decides who takes the money - see docs/huazhu-products-plan.md`);
34
37
  }
35
38
  const gatewayKey = `${prefix}_GATEWAY_KEY`;
36
39
  if (api.prepaid && !env[gatewayKey]) {
37
40
  throw new Error(`${ctx.brand}: ${gatewayKey} is not set - the gateway's merchant key for data.api.prepaid goes in the environment, never in the config`);
38
41
  }
42
+ // Against Huazhu's test environment the money is a test too: a live key
43
+ // there would take a real card for a booking nobody will stay in.
44
+ if (api.prepaid && testEnvironment && !String(env[gatewayKey]).startsWith('agb_test_')) {
45
+ throw new Error(`${ctx.brand}: ${gatewayKey} is not a test-mode key (agb_test_…) - against Huazhu's test environment, payment is taken in test mode only`);
46
+ }
39
47
  const checkout = api.prepaid
40
48
  ? new GatewayCheckout({
41
49
  baseUrl: api.prepaid.gatewayUrl,
@@ -94,6 +102,7 @@ export const makeHuazhu = (api, ctx) => {
94
102
  tz: api.timezone ?? 'Asia/Shanghai',
95
103
  ...(api.allowTags ? { allowTags: api.allowTags } : {}),
96
104
  ...(api.sandbox ? { sandbox: true } : {}),
105
+ ...(testEnvironment ? { testEnvironment: true } : {}),
97
106
  ...(api.hourly ? { hourly: true } : {}),
98
107
  ...(checkout ? { prepaid: { checkout } } : {}),
99
108
  ...(api.limits ? { limits: api.limits } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"make.js","sourceRoot":"","sources":["../../src/huazhu/make.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"make.js","sourceRoot":"","sources":["../../src/huazhu/make.ts"],"names":[],"mappings":"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"}
@@ -27,4 +27,14 @@ export declare const insecureUrls: (api: {
27
27
  authUrl: string;
28
28
  staticUrl?: string;
29
29
  }) => string[];
30
+ /**
31
+ * Huazhu's test environment: every host this deployment reaches Huazhu at is
32
+ * a `test-….huazhu.com` one - never a production host beside them.
33
+ */
34
+ export declare const huazhuTestEnvironment: (api: {
35
+ sandbox?: boolean;
36
+ baseUrl: string;
37
+ authUrl: string;
38
+ staticUrl?: string;
39
+ }) => boolean;
30
40
  //# sourceMappingURL=origin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"origin.d.ts","sourceRoot":"","sources":["../../src/huazhu/origin.ts"],"names":[],"mappings":"AAeA,MAAM,MAAM,MAAM,GAAG;IAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAIvE,mEAAmE;AACnE,eAAO,MAAM,QAAQ,GAAI,GAAG;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB,KAAG,MAWF,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,EAAE,QAAQ,MAAM,KAAG,IAuC3D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,KAAK;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,KAAG,MAAM,EAK4C,CAAC"}
1
+ {"version":3,"file":"origin.d.ts","sourceRoot":"","sources":["../../src/huazhu/origin.ts"],"names":[],"mappings":"AAeA,MAAM,MAAM,MAAM,GAAG;IAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAIvE,mEAAmE;AACnE,eAAO,MAAM,QAAQ,GAAI,GAAG;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB,KAAG,MAWF,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,EAAE,QAAQ,MAAM,KAAG,IAuC3D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,KAAK;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,KAAG,MAAM,EAK4C,CAAC;AAEvD;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,KAAK;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,KAAG,OAUE,CAAC"}
@@ -70,4 +70,19 @@ export const insecureUrls = (api) => api.sandbox
70
70
  : [api.baseUrl, api.authUrl, api.staticUrl]
71
71
  .filter((u) => u !== undefined)
72
72
  .filter((u) => !/^https:\/\//i.test(u.trim()));
73
+ /**
74
+ * Huazhu's test environment: every host this deployment reaches Huazhu at is
75
+ * a `test-….huazhu.com` one - never a production host beside them.
76
+ */
77
+ export const huazhuTestEnvironment = (api) => !api.sandbox &&
78
+ [api.baseUrl, api.authUrl, api.staticUrl]
79
+ .filter((u) => u !== undefined)
80
+ .every((u) => {
81
+ try {
82
+ return /^test-[a-z0-9-]+\.huazhu\.com$/.test(new URL(u.trim()).hostname.toLowerCase());
83
+ }
84
+ catch {
85
+ return false;
86
+ }
87
+ });
73
88
  //# sourceMappingURL=origin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"origin.js","sourceRoot":"","sources":["../../src/huazhu/origin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"origin.js","sourceRoot":"","sources":["../../src/huazhu/origin.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ import { VERSION, buildServer, loadConfig } from './server.js';
14
14
  const checking = process.argv[2] === '--check';
15
15
  const path = (checking ? process.argv[3] : process.argv[2]) ?? process.env.HOTEL_CONFIG;
16
16
  if (!path) {
17
- console.error('usage: curless-hotel-storefront [--check] <config.json> [--prebook] (or HOTEL_CONFIG=...)');
17
+ console.error('usage: curless-hotel-storefront [--check] <config.json> [--prebook] [--prepaid] (or HOTEL_CONFIG=...)');
18
18
  process.exit(2);
19
19
  }
20
20
  const { config, configPath } = loadConfig(path);
@@ -27,6 +27,7 @@ if (checking) {
27
27
  // One call every three seconds: it is Huazhu's environment, not ours.
28
28
  const ok = await checkHuazhu(api, process.env, undefined, undefined, {
29
29
  prebook: process.argv.includes('--prebook'),
30
+ prepaid: process.argv.includes('--prepaid'),
30
31
  paceMs: 3000,
31
32
  });
32
33
  process.exit(ok ? 0 : 1);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/server.d.ts CHANGED
@@ -28,7 +28,7 @@ export declare const INITIALIZE_PER_MINUTE = 300;
28
28
  * number. Found by reading the boot banner of a container that had just been
29
29
  * deployed (2026-09-22): seventeen tools listed, and "0.7.0" above them.
30
30
  */
31
- export declare const VERSION = "0.30.6";
31
+ export declare const VERSION = "0.30.7";
32
32
  /**
33
33
  * The card's resource URI.
34
34
  *
package/dist/server.js CHANGED
@@ -45,7 +45,7 @@ export const INITIALIZE_PER_MINUTE = 300;
45
45
  * number. Found by reading the boot banner of a container that had just been
46
46
  * deployed (2026-09-22): seventeen tools listed, and "0.7.0" above them.
47
47
  */
48
- export const VERSION = '0.30.6';
48
+ export const VERSION = '0.30.7';
49
49
  /**
50
50
  * The card's resource URI.
51
51
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@curless/hotel-storefront",
3
- "version": "0.30.6",
3
+ "version": "0.30.7",
4
4
  "type": "module",
5
5
  "description": "One hotel-booking MCP connector, driven by a config file. Brand, tool names, vocabulary and where the rooms come from live in a HotelConfig, so the second hotel group is a JSON file rather than a fork.",
6
6
  "keywords": [