@v-office/website-sdk 2.12.0 → 2.14.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 +3 -2
- package/dist/capabilities/search.d.mts +2 -0
- package/dist/capabilities/search.mjs +2 -0
- package/dist/cli.mjs +2 -2
- package/dist/{client-Bmxh2SAu.mjs → client-BvQRpzYY.mjs} +807 -305
- package/dist/index.d.mts +3 -56
- package/dist/index.mjs +1 -1
- package/dist/instructions/CHANGELOG.md +2 -0
- package/dist/instructions/MIGRATION.md +2 -0
- package/dist/instructions/README.md +11 -3
- package/dist/instructions/booking.md +56 -40
- package/dist/instructions/quote.md +5 -3
- package/dist/instructions/rentals.md +46 -1
- package/dist/instructions/search.md +22 -0
- package/dist/instructions/versions/2.13.0/CHANGELOG.md +87 -0
- package/dist/instructions/versions/2.13.0/MIGRATION.md +315 -0
- package/dist/instructions/versions/2.14.0/CHANGELOG.md +72 -0
- package/dist/instructions/versions/2.14.0/MIGRATION.md +148 -0
- package/dist/{rentals-BG1diZoo.mjs → rentals-CN01jEkv.mjs} +8 -12
- package/dist/{search-BlL8vSPY.mjs → search-uXcReJdL.mjs} +2 -2
- package/dist/{to-rental-highlights-BVikT4Iz.mjs → to-rental-highlights-D_VRHaaC.mjs} +1355 -7
- package/dist/translations/shared/de-DE/booking.json +7 -0
- package/dist/translations/shared/en-US/booking.json +7 -0
- package/dist/translations/v9/de-DE/filter.json +4 -4
- package/dist/translations/v9/de-DE/rental-attribute-options.json +174 -0
- package/dist/translations/v9/de-DE/rental-attributes.json +95 -45
- package/dist/translations/v9/en-US/core.json +1 -1
- package/dist/translations/v9/en-US/filter.json +2 -2
- package/dist/translations/v9/en-US/rental-attribute-options.json +174 -0
- package/dist/translations/v9/en-US/rental-attributes.json +262 -212
- package/instructions/CHANGELOG.md +2 -0
- package/instructions/MIGRATION.md +2 -0
- package/instructions/README.md +11 -3
- package/instructions/booking.md +56 -40
- package/instructions/quote.md +5 -3
- package/instructions/rentals.md +46 -1
- package/instructions/search.md +22 -0
- package/instructions/versions/2.13.0/CHANGELOG.md +87 -0
- package/instructions/versions/2.13.0/MIGRATION.md +315 -0
- package/instructions/versions/2.14.0/CHANGELOG.md +72 -0
- package/instructions/versions/2.14.0/MIGRATION.md +148 -0
- package/package.json +7 -4
|
@@ -4,6 +4,8 @@ This file is the versioned changelog index for the website SDK instructions.
|
|
|
4
4
|
|
|
5
5
|
## Versions
|
|
6
6
|
|
|
7
|
+
- `versions/2.14.0/CHANGELOG.md`: `@v-office/website-sdk` 2.14.0 release notes.
|
|
8
|
+
- `versions/2.13.0/CHANGELOG.md`: `@v-office/website-sdk` 2.13.0 release notes.
|
|
7
9
|
- `versions/2.12.0/CHANGELOG.md`: `@v-office/website-sdk` 2.12.0 release notes.
|
|
8
10
|
- `versions/2.11.0/CHANGELOG.md`: `@v-office/website-sdk` 2.11.0 release notes.
|
|
9
11
|
- `versions/2.10.0/CHANGELOG.md`: `@v-office/website-sdk` 2.10.0 release notes.
|
|
@@ -4,6 +4,8 @@ This file is the versioned migration index for the website SDK instructions.
|
|
|
4
4
|
|
|
5
5
|
## Available Guides
|
|
6
6
|
|
|
7
|
+
- `versions/2.14.0/MIGRATION.md`: migrate from `@v-office/website-sdk` 2.13.0 to 2.14.0.
|
|
8
|
+
- `versions/2.13.0/MIGRATION.md`: migrate from `@v-office/website-sdk` 2.12.0 to 2.13.0.
|
|
7
9
|
- `versions/2.12.0/MIGRATION.md`: migrate from `@v-office/website-sdk` 2.11.0 to 2.12.0.
|
|
8
10
|
- `versions/2.11.0/MIGRATION.md`: migrate from `@v-office/website-sdk` 2.10.0 to 2.11.0.
|
|
9
11
|
- `versions/2.10.0/MIGRATION.md`: migrate from `@v-office/website-sdk` 2.9.0 to 2.10.0.
|
package/instructions/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Website SDK Instructions
|
|
2
2
|
|
|
3
3
|
These instructions describe the current source targeted for
|
|
4
|
-
`@v-office/website-sdk` 2.
|
|
4
|
+
`@v-office/website-sdk` 2.14.0. Package versions remain unchanged until the release
|
|
5
5
|
workflow performs the coordinated core and website bumps.
|
|
6
6
|
|
|
7
7
|
Use this directory as the consumer-facing reference for the package:
|
|
@@ -18,6 +18,12 @@ Use this directory as the consumer-facing reference for the package:
|
|
|
18
18
|
- `document-structured-json.md`: `sdk.static.documents.getTermsAndPrivacyPolicy` and structured document JSON rendering rules.
|
|
19
19
|
- `CHANGELOG.md`: versioned changelog index.
|
|
20
20
|
- `MIGRATION.md`: versioned migration index.
|
|
21
|
+
- `versions/2.14.0/`: 2.14.0 catalog-backed v9 property types and options,
|
|
22
|
+
corrected option/count rendering and translations, and the 2.13.0-to-2.14.0
|
|
23
|
+
migration guide.
|
|
24
|
+
- `versions/2.13.0/`: 2.13.0 static search capability discovery, shared v9/v10
|
|
25
|
+
booking-payment output, corrected remaining-payment deadlines, opaque booking
|
|
26
|
+
credentials, and the 2.12.0-to-2.13.0 migration guide.
|
|
21
27
|
- `versions/2.12.0/`: 2.12.0 legacy-v9 search discounts, empty-query browsing,
|
|
22
28
|
and flexible-period rejection; quote booking-card cleanup; and v10 modifier
|
|
23
29
|
guidance, plus the 2.11.0-to-2.12.0 migration guide.
|
|
@@ -42,7 +48,9 @@ Use this directory as the consumer-facing reference for the package:
|
|
|
42
48
|
pnpm add @v-office/website-sdk
|
|
43
49
|
```
|
|
44
50
|
|
|
45
|
-
The package is ESM-only
|
|
51
|
+
The package is ESM-only. It exports the SDK facade from `@v-office/website-sdk`
|
|
52
|
+
and instance-independent search capability helpers from
|
|
53
|
+
`@v-office/website-sdk/capabilities/search`.
|
|
46
54
|
|
|
47
55
|
## Quick Start
|
|
48
56
|
|
|
@@ -82,5 +90,5 @@ website-sdk --backend v10 search --locale de-DE --query "adults=2" --sort '{"by"
|
|
|
82
90
|
```
|
|
83
91
|
|
|
84
92
|
Config file examples in these docs use the flat `WebsiteSDKConfig` shape introduced
|
|
85
|
-
in 2.0.0 and kept in 2.
|
|
93
|
+
in 2.0.0 and kept in 2.14.0. v10 config additionally requires `searchEndpoint` as
|
|
86
94
|
of 2.5.0.
|
package/instructions/booking.md
CHANGED
|
@@ -78,47 +78,63 @@ Sample:
|
|
|
78
78
|
```json
|
|
79
79
|
{
|
|
80
80
|
"bookingNumber": "B-2026-0001",
|
|
81
|
-
"
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
81
|
+
"payment": {
|
|
82
|
+
"schedule": [
|
|
83
|
+
{
|
|
84
|
+
"kind": "prepayment",
|
|
85
|
+
"label": "Down payment",
|
|
86
|
+
"amount": "€76.00",
|
|
87
|
+
"dueOn": "Payable until August 19, 2026",
|
|
88
|
+
"paymentOptions": [
|
|
89
|
+
{
|
|
90
|
+
"kind": "bank_transfer",
|
|
91
|
+
"label": "Bank transfer",
|
|
92
|
+
"holder": "Example GmbH",
|
|
93
|
+
"iban": "DE02120300000000202051",
|
|
94
|
+
"swiftOrBic": "BYLADEM1001",
|
|
95
|
+
"remittanceText": "Booking number: B-2026-0001"
|
|
96
|
+
}
|
|
97
|
+
]
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"kind": "remaining_payment",
|
|
101
|
+
"label": "Remaining payment",
|
|
102
|
+
"amount": "€304.00",
|
|
103
|
+
"dueOn": "Payable until February 6, 2027"
|
|
104
|
+
}
|
|
105
|
+
],
|
|
106
|
+
"alternatives": [
|
|
107
|
+
{
|
|
108
|
+
"kind": "full_amount",
|
|
109
|
+
"label": "Total payment",
|
|
110
|
+
"amount": "€380.00",
|
|
111
|
+
"paymentOptions": [
|
|
112
|
+
{
|
|
113
|
+
"kind": "bank_transfer",
|
|
114
|
+
"label": "Bank transfer",
|
|
115
|
+
"holder": "Example GmbH",
|
|
116
|
+
"iban": "DE02120300000000202051",
|
|
117
|
+
"swiftOrBic": "BYLADEM1001",
|
|
118
|
+
"remittanceText": "Booking number: B-2026-0001"
|
|
119
|
+
}
|
|
120
|
+
]
|
|
121
|
+
}
|
|
122
|
+
]
|
|
123
|
+
}
|
|
119
124
|
}
|
|
120
125
|
```
|
|
121
126
|
|
|
127
|
+
`payment.schedule` contains the remaining contractual payment steps known to the backend. Its `kind` is one of `prepayment`, `remaining_payment`, `installment`, or `deposit`. `v9` emits named prepayment and remaining-payment steps; `v10` emits its backend-provided installment and deposit steps.
|
|
128
|
+
|
|
129
|
+
`payment.alternatives` contains ways to settle the complete outstanding balance. A `full_amount` alternative has no inferred deadline. `dueOn`, `paymentAt`, labels, amounts, and line amounts are already translated and formatted for the booking locale.
|
|
130
|
+
|
|
131
|
+
`paymentOptions` is present only when the SDK can currently perform that payment. Future or on-site steps remain visible without payment options.
|
|
132
|
+
|
|
133
|
+
An optional `insurancePaymentOptions` array is returned only when post-booking insurance payment is available.
|
|
134
|
+
|
|
135
|
+
Sites upgrading from 2.12.0 must replace the former `paymentSchedules` output. See
|
|
136
|
+
`versions/2.13.0/MIGRATION.md`.
|
|
137
|
+
|
|
122
138
|
Payment option variants:
|
|
123
139
|
|
|
124
140
|
- `bank_transfer`: display-only payment details.
|
|
@@ -153,13 +169,13 @@ try {
|
|
|
153
169
|
|
|
154
170
|
Online payment providers return the guest to a URL derived from `relativeRedirectUrl`. Stripe returns to that path with `payment=stripe&success=true` after payment and `payment=stripe&cancel=true` after cancellation, so the path must exist in your site and should read those query parameters.
|
|
155
171
|
|
|
156
|
-
`relativeRedirectUrl` is supplied before the reservation exists, so the return URL cannot carry the booking number
|
|
172
|
+
`relativeRedirectUrl` is supplied before the reservation exists, so the return URL cannot carry the booking number. Persist whatever the return page needs, for example in `sessionStorage`, before submitting a payment option.
|
|
157
173
|
|
|
158
174
|
A successful return means the provider sent the browser back, not that the payment has settled. Confirmation reaches vOffice through the provider's webhook.
|
|
159
175
|
|
|
160
176
|
## Configuration
|
|
161
177
|
|
|
162
|
-
Booking requests are rate-limited to one backend request per second with a queue size of five. `v9` books through the v0 `book` action and initializes
|
|
178
|
+
Booking requests are rate-limited to one backend request per second with a queue size of five. `v9` books through the v0 `book` action and initializes Stripe only for currently payable choices when the property has Stripe enabled. `v10` books through GraphQL, preserves all remaining payment steps for display, and initializes Adyen for the next payable online step and the full-outstanding alternative.
|
|
163
179
|
|
|
164
180
|
## CLI Usage
|
|
165
181
|
|
package/instructions/quote.md
CHANGED
|
@@ -393,16 +393,18 @@ quote = await sdk.live.quote.selectInsurancePayment({
|
|
|
393
393
|
});
|
|
394
394
|
```
|
|
395
395
|
|
|
396
|
-
After the rental booking is created, complete insurance booking with the booking
|
|
396
|
+
After the rental booking is created, complete insurance booking with the opaque booking result. Keep the live result object; its private backend credentials are intentionally not serialized:
|
|
397
397
|
|
|
398
398
|
```ts
|
|
399
399
|
const insuranceBooking = await sdk.live.quote.bookInsurance({
|
|
400
400
|
quote,
|
|
401
|
-
|
|
402
|
-
guestToken: booking.guestToken,
|
|
401
|
+
booking,
|
|
403
402
|
});
|
|
404
403
|
```
|
|
405
404
|
|
|
405
|
+
This is a breaking change in 2.13.0. The former public `guestToken` input is no
|
|
406
|
+
longer used; see `versions/2.13.0/MIGRATION.md`.
|
|
407
|
+
|
|
406
408
|
`v9` supports real insurance option refresh, pre-contract, payment selection, and booking. `v10` currently returns a no-insurance placeholder and insurance actions resolve as not required.
|
|
407
409
|
|
|
408
410
|
## Configuration
|
package/instructions/rentals.md
CHANGED
|
@@ -54,7 +54,7 @@ Sample item:
|
|
|
54
54
|
"headline": "Holiday apartment near the sea",
|
|
55
55
|
"description": "Short localized rental description."
|
|
56
56
|
},
|
|
57
|
-
"highlights": ["2 bedrooms", "
|
|
57
|
+
"highlights": ["2 bedrooms", "Wi-Fi", "Parking"],
|
|
58
58
|
"attributes": [
|
|
59
59
|
{
|
|
60
60
|
"label": "Amenities",
|
|
@@ -87,6 +87,51 @@ Sample item:
|
|
|
87
87
|
|
|
88
88
|
Optional fields include `scope`, `address`, `property`, `rooms`, `roomSummary`, `vicinity`, and `reviews`.
|
|
89
89
|
|
|
90
|
+
### Legacy v9 Built-In Attributes
|
|
91
|
+
|
|
92
|
+
From 2.14.0, built-in v9 property types and ordered option values come from the
|
|
93
|
+
vOffice property catalog rather than example-value inference. The SDK keeps
|
|
94
|
+
observed-only fields for compatibility, but examples do not redefine catalog
|
|
95
|
+
fields.
|
|
96
|
+
|
|
97
|
+
v9 `OPT` values are zero-based numeric indexes. The SDK resolves them to
|
|
98
|
+
localized display text before adding them to `attributes`, `highlights`, or
|
|
99
|
+
`vicinity`. For example:
|
|
100
|
+
|
|
101
|
+
```text
|
|
102
|
+
youthgroups = 0 → Jugendgruppen: willkommen
|
|
103
|
+
youthgroups = 1 → Jugendgruppen: nicht erlaubt
|
|
104
|
+
youthgroups = 2 → Jugendgruppen: auf Anfrage
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
An option index of `0` is a valid value, not Boolean `false`. Invalid,
|
|
108
|
+
fractional, negative, and out-of-range indexes are omitted.
|
|
109
|
+
|
|
110
|
+
Source-defined v9 `INT` values retain their numeric value, including `1`. Known
|
|
111
|
+
count attributes use localized singular and plural nouns:
|
|
112
|
+
|
|
113
|
+
```text
|
|
114
|
+
bedrooms = 1 → 1 Schlafzimmer
|
|
115
|
+
bedrooms = 2 → 2 Schlafzimmer
|
|
116
|
+
bedrooms = 1 → 1 bedroom
|
|
117
|
+
bedrooms = 2 → 2 bedrooms
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Boolean behavior is unchanged: disabled values are omitted and enabled values
|
|
121
|
+
are rendered as the localized label.
|
|
122
|
+
|
|
123
|
+
Translation overrides use these key forms:
|
|
124
|
+
|
|
125
|
+
```text
|
|
126
|
+
RentalAttributes.<attribute>.label
|
|
127
|
+
RentalAttributes.<attribute>.option.<zero-based-index>
|
|
128
|
+
RentalAttributes.<attribute>.count.one
|
|
129
|
+
RentalAttributes.<attribute>.count.other
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
See `versions/2.14.0/CHANGELOG.md` and
|
|
133
|
+
`versions/2.14.0/MIGRATION.md`.
|
|
134
|
+
|
|
90
135
|
### Review Items
|
|
91
136
|
|
|
92
137
|
Each review item contains at least `rating` or `text`. `id`, `author`, `label`, and `createdAt` are optional:
|
package/instructions/search.md
CHANGED
|
@@ -77,6 +77,28 @@ Common stable query keys:
|
|
|
77
77
|
- Occupancy: `adults`, `children`, `childrenAges`, `babies`, `pets`, `petsCount`.
|
|
78
78
|
- Filters: use `searchParameterQueryKey` values from `sdk.static.filter.getFilters(...)`.
|
|
79
79
|
|
|
80
|
+
### Static Backend Capabilities
|
|
81
|
+
|
|
82
|
+
Search capabilities that only depend on a backend name are available without
|
|
83
|
+
constructing an SDK:
|
|
84
|
+
|
|
85
|
+
```ts
|
|
86
|
+
import {
|
|
87
|
+
getSupportedPeriodQueryKeys,
|
|
88
|
+
supportsFlexiblePeriodSearch,
|
|
89
|
+
} from "@v-office/website-sdk/capabilities/search";
|
|
90
|
+
|
|
91
|
+
supportsFlexiblePeriodSearch("v9"); // false
|
|
92
|
+
supportsFlexiblePeriodSearch("v10"); // true
|
|
93
|
+
|
|
94
|
+
getSupportedPeriodQueryKeys("v9").has("month"); // false
|
|
95
|
+
getSupportedPeriodQueryKeys("v10").has("month"); // true
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
The returned read-only set contains the stable period query keys accepted by the
|
|
99
|
+
selected backend, including aliases such as `from` and `till`. Key support does
|
|
100
|
+
not replace validation of complete query combinations.
|
|
101
|
+
|
|
80
102
|
## Query Structure
|
|
81
103
|
|
|
82
104
|
The `query` field is a URL query-string style value without a leading `?`.
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# Changelog: 2.13.0
|
|
2
|
+
|
|
3
|
+
This release adds static backend search capability discovery and replaces the
|
|
4
|
+
ambiguous flat booking payment schedule with a shared, presentation-ready payment
|
|
5
|
+
model for v9 and v10. It preserves every known remaining payment step, separates
|
|
6
|
+
contractual steps from full-payment alternatives, and keeps backend credentials
|
|
7
|
+
out of the public booking output.
|
|
8
|
+
|
|
9
|
+
## Added
|
|
10
|
+
|
|
11
|
+
- `@v-office/website-sdk/capabilities/search` exposes pure, instance-independent
|
|
12
|
+
helpers for checking flexible-period support and the supported period query keys
|
|
13
|
+
for a backend.
|
|
14
|
+
- `BookingOutput.payment.schedule` contains the remaining contractual payment
|
|
15
|
+
steps known after booking.
|
|
16
|
+
- `BookingOutput.payment.alternatives` contains optional ways to settle the
|
|
17
|
+
complete outstanding balance.
|
|
18
|
+
- Schedule entries have a stable `kind`: `prepayment`, `remaining_payment`,
|
|
19
|
+
`installment`, or `deposit`.
|
|
20
|
+
- Full-payment alternatives use `kind: "full_amount"`.
|
|
21
|
+
- v10 booking output includes all remaining online, on-site, and external payment
|
|
22
|
+
steps instead of exposing only the next online step.
|
|
23
|
+
- v10 schedule entries can include translated `paymentAt` text derived from the
|
|
24
|
+
backend payment location and recipient.
|
|
25
|
+
- Legacy v9 now preserves its independently supplied remaining-payment amount and
|
|
26
|
+
deadline.
|
|
27
|
+
|
|
28
|
+
## Changed
|
|
29
|
+
|
|
30
|
+
- `dueOn` is now a complete translated, long-form display string such as
|
|
31
|
+
`Zahlbar bis zum 6. Februar 2027`.
|
|
32
|
+
- Schedule and alternative amounts use the `amount` field and remain
|
|
33
|
+
locale-formatted display strings.
|
|
34
|
+
- `paymentOptions` is present on a schedule entry only when the SDK can currently
|
|
35
|
+
perform that payment. Informational future, on-site, and external steps remain
|
|
36
|
+
visible without payment options.
|
|
37
|
+
- A synthesized v9 full-payment alternative no longer copies the prepayment
|
|
38
|
+
deadline. An explicit backend total deadline can still be retained.
|
|
39
|
+
- v10 initializes Adyen only for the next payable online step and the
|
|
40
|
+
full-outstanding alternative.
|
|
41
|
+
- v9 initializes Stripe only for currently payable choices.
|
|
42
|
+
- Post-booking insurance now receives the opaque booking result:
|
|
43
|
+
|
|
44
|
+
```ts
|
|
45
|
+
await sdk.live.quote.bookInsurance({ quote, booking });
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Removed
|
|
49
|
+
|
|
50
|
+
- `BookingOutput.paymentSchedules`
|
|
51
|
+
- Public `BookingOutput.guestToken`
|
|
52
|
+
- ISO-like or locale-short date assumptions for booking payment output
|
|
53
|
+
|
|
54
|
+
The private v9 guest token remains attached to the live opaque booking object and
|
|
55
|
+
is used internally when completing insurance. It is not enumerable or
|
|
56
|
+
serializable.
|
|
57
|
+
|
|
58
|
+
## Backend Mapping
|
|
59
|
+
|
|
60
|
+
- v9 `prepayment` becomes `kind: "prepayment"`.
|
|
61
|
+
- v9 `rest` becomes `kind: "remaining_payment"`.
|
|
62
|
+
- v9 `total` becomes a `full_amount` alternative.
|
|
63
|
+
- v10 `INSTALLMENT` becomes `kind: "installment"`.
|
|
64
|
+
- v10 `DEPOSIT` becomes `kind: "deposit"`.
|
|
65
|
+
- v10 `financials.outstanding` becomes a `full_amount` alternative when it is a
|
|
66
|
+
distinct payable choice.
|
|
67
|
+
|
|
68
|
+
## Migration Impact
|
|
69
|
+
|
|
70
|
+
This is a breaking output and insurance-input change. Consumers must:
|
|
71
|
+
|
|
72
|
+
1. Replace reads of `paymentSchedules` with `payment.schedule` and
|
|
73
|
+
`payment.alternatives`.
|
|
74
|
+
2. Read `amount` instead of the former schedule `total`.
|
|
75
|
+
3. Treat schedule `paymentOptions` as optional.
|
|
76
|
+
4. Render `dueOn`, `paymentAt`, labels, amounts, and line amounts directly without
|
|
77
|
+
reparsing or reformatting them.
|
|
78
|
+
5. Pass the live `booking` object to `bookInsurance` instead of passing
|
|
79
|
+
`bookingNumber` and `guestToken`.
|
|
80
|
+
6. Keep the booking object in memory until optional v9 insurance booking is
|
|
81
|
+
complete; private credentials do not survive JSON serialization.
|
|
82
|
+
|
|
83
|
+
The search capability API is additive. Consumers with hardcoded backend period-key
|
|
84
|
+
tables can replace them with the new helpers.
|
|
85
|
+
|
|
86
|
+
See `versions/2.13.0/MIGRATION.md`, `../../search.md`, `../../booking.md`, and
|
|
87
|
+
`../../quote.md`.
|