@v-office/website-sdk 2.4.3 → 2.5.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/dist/cli.mjs +34 -14
- package/dist/{client-BORwUo4_.mjs → client-Cnf-pbry.mjs} +4 -2
- package/dist/index.d.mts +18 -4
- package/dist/index.mjs +3 -3
- package/dist/instructions/CHANGELOG.md +1 -0
- package/dist/instructions/MIGRATION.md +1 -0
- package/dist/instructions/README.md +5 -2
- package/dist/instructions/availability.md +2 -1
- package/dist/instructions/booking.md +1 -1
- package/dist/instructions/contact.md +1 -1
- package/dist/instructions/creation.md +44 -0
- package/dist/instructions/filter.md +2 -1
- package/dist/instructions/quote.md +1 -1
- package/dist/instructions/rentals.md +2 -1
- package/dist/instructions/search.md +115 -2
- package/dist/instructions/versions/2.5.0/CHANGELOG.md +43 -0
- package/dist/instructions/versions/2.5.0/MIGRATION.md +135 -0
- package/dist/{search-Ckz48lwV.mjs → search-D1_b2t11.mjs} +14 -3
- package/instructions/CHANGELOG.md +1 -0
- package/instructions/MIGRATION.md +1 -0
- package/instructions/README.md +5 -2
- package/instructions/availability.md +2 -1
- package/instructions/booking.md +1 -1
- package/instructions/contact.md +1 -1
- package/instructions/creation.md +44 -0
- package/instructions/filter.md +2 -1
- package/instructions/quote.md +1 -1
- package/instructions/rentals.md +2 -1
- package/instructions/search.md +115 -2
- package/instructions/versions/2.5.0/CHANGELOG.md +43 -0
- package/instructions/versions/2.5.0/MIGRATION.md +135 -0
- package/package.json +2 -2
package/dist/cli.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { Pt as defineWebsiteSDKOptions, t as createWebsiteSDK } from "./client-
|
|
2
|
+
import { Pt as defineWebsiteSDKOptions, t as createWebsiteSDK } from "./client-Cnf-pbry.mjs";
|
|
3
|
+
import { SearchSearchSortSchema } from "@v-office/sdk-core";
|
|
3
4
|
import { Console, Effect, FileSystem, Layer, Option, Path, Schema, Stdio, Terminal } from "effect";
|
|
4
5
|
import { Command, Flag } from "effect/unstable/cli";
|
|
5
6
|
import { inspect } from "node:util";
|
|
@@ -15,7 +16,7 @@ var CLICheckFailed = class extends Error {
|
|
|
15
16
|
const toCLIError = (message, cause) => cause instanceof Error ? new CLICheckFailed(`${message}: ${cause.message}`, { cause }) : new CLICheckFailed(message, { cause });
|
|
16
17
|
//#endregion
|
|
17
18
|
//#region package.json
|
|
18
|
-
var version = "2.
|
|
19
|
+
var version = "2.5.0";
|
|
19
20
|
//#endregion
|
|
20
21
|
//#region src/cli/output.ts
|
|
21
22
|
const toJson = (value) => Effect.try({
|
|
@@ -72,6 +73,7 @@ const WebsiteV9CLIConfigSchema = Schema.Struct({
|
|
|
72
73
|
const WebsiteV10CLIConfigSchema = Schema.Struct({
|
|
73
74
|
backend: Schema.optionalKey(Schema.Literal("v10")),
|
|
74
75
|
apiEndpoint: NonBlankStringSchema,
|
|
76
|
+
searchEndpoint: NonBlankStringSchema,
|
|
75
77
|
accessToken: NonBlankStringSchema,
|
|
76
78
|
imageBaseUrl: NonBlankStringSchema
|
|
77
79
|
});
|
|
@@ -110,6 +112,7 @@ const fromEnvironment = (root) => Effect.gen(function* () {
|
|
|
110
112
|
config: {
|
|
111
113
|
backend: "v10",
|
|
112
114
|
apiEndpoint: yield* getRequiredEnv("VOFFICE_API_ENDPOINT"),
|
|
115
|
+
searchEndpoint: yield* getRequiredEnv("VOFFICE_SEARCH_ENDPOINT"),
|
|
113
116
|
accessToken: yield* getRequiredEnv("VOFFICE_LOCAL_DEV_ACCESS_TOKEN"),
|
|
114
117
|
imageBaseUrl: yield* getRequiredEnv("VOFFICE_IMAGE_BASE_URL")
|
|
115
118
|
},
|
|
@@ -193,6 +196,7 @@ const env = Command.make("env", {}, Effect.fn(function* () {
|
|
|
193
196
|
"IMAGE_PROXY_BASE_URL"
|
|
194
197
|
] : [
|
|
195
198
|
"VOFFICE_API_ENDPOINT",
|
|
199
|
+
"VOFFICE_SEARCH_ENDPOINT",
|
|
196
200
|
"VOFFICE_LOCAL_DEV_ACCESS_TOKEN",
|
|
197
201
|
"VOFFICE_IMAGE_BASE_URL"
|
|
198
202
|
],
|
|
@@ -251,6 +255,9 @@ const liveCommands = [
|
|
|
251
255
|
Command.make("booking").pipe(Command.withDescription("Run live booking operations."), Command.withSubcommands([bookingBook])),
|
|
252
256
|
Command.make("contact").pipe(Command.withDescription("Run live contact operations."), Command.withSubcommands([contactSubmit]))
|
|
253
257
|
];
|
|
258
|
+
//#endregion
|
|
259
|
+
//#region src/cli/commands/static.ts
|
|
260
|
+
const parseSearchSort = (input) => parseJson(input, "--sort").pipe(Effect.flatMap((value) => Schema.decodeUnknownEffect(SearchSearchSortSchema, { onExcessProperty: "error" })(value).pipe(Effect.mapError((cause) => toCLIError("Invalid --sort value", cause)))));
|
|
254
261
|
const staticCommands = [
|
|
255
262
|
Command.make("filters", { locale: localeFlag }, ({ locale }) => websiteSdkCommand.pipe(Effect.flatMap((root) => withSDK(root, (sdk) => sdk.static.filter.getFilters({ locale })).pipe(Effect.flatMap((result) => printOutput(root, result)))))).pipe(Command.withDescription("Fetch unified filter definitions."), Command.withExamples([{
|
|
256
263
|
command: "website-sdk --backend v10 filters --locale de-DE",
|
|
@@ -266,21 +273,34 @@ const staticCommands = [
|
|
|
266
273
|
limit: Flag.integer("limit").pipe(Flag.optional, Flag.withDescription("Optional positive result limit.")),
|
|
267
274
|
cursor: Flag.string("cursor").pipe(Flag.optional, Flag.withDescription("Optional pagination cursor.")),
|
|
268
275
|
rentalIdsIn: Flag.string("rental-ids-in").pipe(Flag.optional, Flag.withDescription("Optional comma-separated rental IDs to restrict v10 search results.")),
|
|
269
|
-
voucher: Flag.string("voucher").pipe(Flag.optional, Flag.withDescription("Optional voucher code for v10 search pricing."))
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
276
|
+
voucher: Flag.string("voucher").pipe(Flag.optional, Flag.withDescription("Optional voucher code for v10 search pricing.")),
|
|
277
|
+
sort: Flag.string("sort").pipe(Flag.optional, Flag.withDescription("Optional SearchSearchSort JSON, for example '{\"by\":\"price\",\"direction\":\"ASC\"}'."))
|
|
278
|
+
}, ({ locale, query, limit, cursor, rentalIdsIn, voucher, sort }) => websiteSdkCommand.pipe(Effect.flatMap((root) => {
|
|
279
|
+
return Effect.gen(function* () {
|
|
280
|
+
const parsedRentalIdsIn = Option.isSome(rentalIdsIn) ? rentalIdsIn.value.split(",").map((rentalId) => rentalId.trim()).filter((rentalId) => rentalId.length > 0) : [];
|
|
281
|
+
const parsedSort = Option.isSome(sort) ? yield* parseSearchSort(sort.value) : void 0;
|
|
282
|
+
if (root.backend === "v9" && parsedSort?.by === "field") return yield* Effect.fail(toCLIError("Invalid --sort value", /* @__PURE__ */ new Error("Field sorting requires v10.")));
|
|
283
|
+
const v9Sort = parsedSort?.by === "field" ? void 0 : parsedSort;
|
|
284
|
+
const input = {
|
|
285
|
+
locale,
|
|
286
|
+
query,
|
|
287
|
+
...Option.isSome(limit) ? { limit: limit.value } : {},
|
|
288
|
+
...Option.isSome(cursor) ? { cursor: cursor.value } : {},
|
|
289
|
+
...v9Sort === void 0 ? {} : { sort: v9Sort }
|
|
290
|
+
};
|
|
291
|
+
return yield* withSDK(root, (sdk) => sdk.backend === "v9" ? sdk.live.search.search(input) : sdk.live.search.search({
|
|
292
|
+
...input,
|
|
293
|
+
...parsedRentalIdsIn.length > 0 ? { rentalIdsIn: parsedRentalIdsIn } : {},
|
|
294
|
+
...Option.isSome(voucher) ? { voucher: voucher.value } : {},
|
|
295
|
+
...parsedSort === void 0 ? {} : { sort: parsedSort }
|
|
296
|
+
})).pipe(Effect.flatMap((result) => printOutput(root, result)));
|
|
297
|
+
});
|
|
281
298
|
}))).pipe(Command.withDescription("Run a live rental search."), Command.withExamples([{
|
|
282
299
|
command: "website-sdk --backend v10 search --locale de-DE --query \"adults=2\"",
|
|
283
300
|
description: "Search v10 rentals with a query string."
|
|
301
|
+
}, {
|
|
302
|
+
command: "website-sdk --backend v9 search --locale de-DE --query \"adults=2\" --sort '{\"by\":\"random\"}'",
|
|
303
|
+
description: "Search v9 rentals in random order."
|
|
284
304
|
}]))
|
|
285
305
|
];
|
|
286
306
|
//#endregion
|
|
@@ -6,6 +6,7 @@ import { print } from "graphql";
|
|
|
6
6
|
const normalizeWebsiteSDKOptions = (options = {}) => ({
|
|
7
7
|
...options.translationOverrides === void 0 ? {} : { translationOverrides: options.translationOverrides },
|
|
8
8
|
customAttributeFilterDefinitions: options.customAttributeFilterDefinitions ?? [],
|
|
9
|
+
...options.customAttributeDefinitionManifest === void 0 ? {} : { customAttributeDefinitionManifest: options.customAttributeDefinitionManifest },
|
|
9
10
|
rentalHighlightPrioritization: options.rentalHighlightPrioritization ?? DEFAULT_RENTAL_HIGHLIGHT_PRIORITIZATION,
|
|
10
11
|
rentalPropertyHighlightPrioritization: options.rentalPropertyHighlightPrioritization ?? DEFAULT_RENTAL_PROPERTY_HIGHLIGHT_PRIORITIZATION,
|
|
11
12
|
rentalScope: options.rentalScope ?? {},
|
|
@@ -4672,7 +4673,7 @@ const parseV9SearchCursor = (cursor) => Effect.gen(function* () {
|
|
|
4672
4673
|
return page;
|
|
4673
4674
|
});
|
|
4674
4675
|
const loadV9SearchRuntime = Effect.tryPromise({
|
|
4675
|
-
try: () => import("./search-
|
|
4676
|
+
try: () => import("./search-D1_b2t11.mjs"),
|
|
4676
4677
|
catch: (cause) => new CoreSDKError({
|
|
4677
4678
|
source: "v10",
|
|
4678
4679
|
operation: "v9.search.runtime",
|
|
@@ -4705,7 +4706,8 @@ const makeV9SearchApi = ({ config, options }) => {
|
|
|
4705
4706
|
locale: input.locale,
|
|
4706
4707
|
translations,
|
|
4707
4708
|
customAttributeFilterDefinitions: options.customAttributeFilterDefinitions,
|
|
4708
|
-
query: input.query
|
|
4709
|
+
query: input.query,
|
|
4710
|
+
sort: input.sort
|
|
4709
4711
|
});
|
|
4710
4712
|
const scopedQueryInput = applyV9RentalScopeToSearchQueryInput(queryInput, options.rentalScope);
|
|
4711
4713
|
if (scopedQueryInput === void 0) return {
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AdditionalServiceLimitExceeded, AvailabilityGetInitialAvailabilityInput, AvailabilityGetInitialAvailabilityInput as AvailabilityGetInitialAvailabilityInput$1, AvailabilityGetInitialAvailabilityOutput, AvailabilityGetInitialAvailabilityOutput as AvailabilityGetInitialAvailabilityOutput$1, AvailabilityGetStartDateSelectedAvailabilityInput, AvailabilityGetStartDateSelectedAvailabilityInput as AvailabilityGetStartDateSelectedAvailabilityInput$1, AvailabilityGetStartDateSelectedAvailabilityOutput, AvailabilityGetStartDateSelectedAvailabilityOutput as AvailabilityGetStartDateSelectedAvailabilityOutput$1, AvailabilityService, BackendKind, BookingBookInput, BookingBookInput as BookingBookInput$1, BookingBookOutput, BookingBookOutput as BookingBookOutput$1, BookingPaymentOption, BookingService, ContactService, ContactSubmitInput, ContactSubmitInput as ContactSubmitInput$1, ContactSubmitOutput, ContactSubmitOutput as ContactSubmitOutput$1, ContactSubmitValidationIssue, ContactSubmitValidationIssueCode, CoreSDKError, CoreSDKError as CMSError, CoreSDKError as CoreSDKError$1, CustomAttributeDefinition, CustomAttributeFilterCategoryKey, CustomAttributeFilterDefinition, CustomAttributeFilterDefinition as CustomAttributeFilterDefinition$1, CustomAttributeFilterExpression, CustomAttributeFilterLabel, CustomAttributeFilterNumericBounds, CustomAttributeFilterOption, DocumentsGetTermsAndPrivacyPolicyInput, DocumentsGetTermsAndPrivacyPolicyInput as DocumentsGetTermsAndPrivacyPolicyInput$1, DocumentsGetTermsAndPrivacyPolicyOutput, DocumentsGetTermsAndPrivacyPolicyOutput as DocumentsGetTermsAndPrivacyPolicyOutput$1, DocumentsService, FilterGetFiltersInput, FilterGetFiltersInput as FilterGetFiltersInput$1, FilterGetFiltersOutput, FilterGetFiltersOutput as FilterGetFiltersOutput$1, FilterService, GuestQuote, GuestQuoteInput, GuestQuoteInsurance, GuestQuoteResult, GuestQuoteSchema, GuestQuoteSelectionResult, GuestQuoteVoucher, InsuranceBookingOutput, InsuranceCustomerInformationInput, InsurancePaymentInformationInput, InsurancePaymentOptionOutput, InsurancePreContractOutput, InvalidAdditionalServiceQuantity, Locale, LocaleSchema, QuoteAddAdditionalServiceInput, QuoteAddAdditionalServiceOutput, QuoteBookInsuranceInput, QuoteBookInsuranceOutput, QuoteClearAdditionalServicesInput, QuoteClearAdditionalServicesOutput, QuoteCreateInsurancePreContractInput, QuoteCreateInsurancePreContractOutput, QuoteQuoteInput, QuoteQuoteInput as QuoteQuoteInput$1, QuoteQuoteOutput, QuoteQuoteOutput as QuoteQuoteOutput$1, QuoteRemoveAdditionalServiceInput, QuoteRemoveAdditionalServiceOutput, QuoteSelectCancellationPolicyInput, QuoteSelectCancellationPolicyOutput, QuoteSelectInsuranceInput, QuoteSelectInsuranceOutput, QuoteSelectInsurancePaymentInput, QuoteSelectInsurancePaymentOutput, QuoteService as QuoteService$1, RentalGetRentalsInput, RentalGetRentalsInput as RentalGetRentalsInput$1, RentalGetRentalsOutput, RentalGetRentalsOutput as RentalGetRentalsOutput$1, RentalHighlightPrioritizationKey, RentalHighlightPrioritizationKey as RentalHighlightPrioritizationKey$1, RentalPropertyHighlightPrioritizationKey, RentalPropertyHighlightPrioritizationKey as RentalPropertyHighlightPrioritizationKey$1, RentalScope, RentalService, SearchSearchInput, SearchSearchInput as SearchSearchInput$1, SearchSearchInputSchema, SearchSearchOutput, SearchSearchOutput as SearchSearchOutput$1, SearchSearchOutputSchema, SearchService, SelectableInsuranceOptionOutput, SelectedInsuranceInformationInput, SubmittableBookingPaymentOption, SubmittableBookingPaymentOption as SubmittableBookingPaymentOption$1, TranslationOverrides, TranslationOverrides as TranslationOverrides$1, UnknownAdditionalService, V10CoreConfig, validateContactSubmitInput } from "@v-office/sdk-core";
|
|
1
|
+
import { AdditionalServiceLimitExceeded, AvailabilityGetInitialAvailabilityInput, AvailabilityGetInitialAvailabilityInput as AvailabilityGetInitialAvailabilityInput$1, AvailabilityGetInitialAvailabilityOutput, AvailabilityGetInitialAvailabilityOutput as AvailabilityGetInitialAvailabilityOutput$1, AvailabilityGetStartDateSelectedAvailabilityInput, AvailabilityGetStartDateSelectedAvailabilityInput as AvailabilityGetStartDateSelectedAvailabilityInput$1, AvailabilityGetStartDateSelectedAvailabilityOutput, AvailabilityGetStartDateSelectedAvailabilityOutput as AvailabilityGetStartDateSelectedAvailabilityOutput$1, AvailabilityService, BackendKind, BookingBookInput, BookingBookInput as BookingBookInput$1, BookingBookOutput, BookingBookOutput as BookingBookOutput$1, BookingPaymentOption, BookingService, ContactService, ContactSubmitInput, ContactSubmitInput as ContactSubmitInput$1, ContactSubmitOutput, ContactSubmitOutput as ContactSubmitOutput$1, ContactSubmitValidationIssue, ContactSubmitValidationIssueCode, CoreSDKError, CoreSDKError as CMSError, CoreSDKError as CoreSDKError$1, CustomAttributeDefinition, CustomAttributeDefinitionManifest, CustomAttributeDefinitionManifest as CustomAttributeDefinitionManifest$1, CustomAttributeDefinitionManifestEntry, CustomAttributeFilterCategoryKey, CustomAttributeFilterDefinition, CustomAttributeFilterDefinition as CustomAttributeFilterDefinition$1, CustomAttributeFilterExpression, CustomAttributeFilterLabel, CustomAttributeFilterNumericBounds, CustomAttributeFilterOption, DocumentsGetTermsAndPrivacyPolicyInput, DocumentsGetTermsAndPrivacyPolicyInput as DocumentsGetTermsAndPrivacyPolicyInput$1, DocumentsGetTermsAndPrivacyPolicyOutput, DocumentsGetTermsAndPrivacyPolicyOutput as DocumentsGetTermsAndPrivacyPolicyOutput$1, DocumentsService, FilterGetFiltersInput, FilterGetFiltersInput as FilterGetFiltersInput$1, FilterGetFiltersOutput, FilterGetFiltersOutput as FilterGetFiltersOutput$1, FilterService, GuestQuote, GuestQuoteInput, GuestQuoteInsurance, GuestQuoteResult, GuestQuoteSchema, GuestQuoteSelectionResult, GuestQuoteVoucher, InsuranceBookingOutput, InsuranceCustomerInformationInput, InsurancePaymentInformationInput, InsurancePaymentOptionOutput, InsurancePreContractOutput, InvalidAdditionalServiceQuantity, Locale, LocaleSchema, QuoteAddAdditionalServiceInput, QuoteAddAdditionalServiceOutput, QuoteBookInsuranceInput, QuoteBookInsuranceOutput, QuoteClearAdditionalServicesInput, QuoteClearAdditionalServicesOutput, QuoteCreateInsurancePreContractInput, QuoteCreateInsurancePreContractOutput, QuoteQuoteInput, QuoteQuoteInput as QuoteQuoteInput$1, QuoteQuoteOutput, QuoteQuoteOutput as QuoteQuoteOutput$1, QuoteRemoveAdditionalServiceInput, QuoteRemoveAdditionalServiceOutput, QuoteSelectCancellationPolicyInput, QuoteSelectCancellationPolicyOutput, QuoteSelectInsuranceInput, QuoteSelectInsuranceOutput, QuoteSelectInsurancePaymentInput, QuoteSelectInsurancePaymentOutput, QuoteService as QuoteService$1, RentalGetRentalsInput, RentalGetRentalsInput as RentalGetRentalsInput$1, RentalGetRentalsOutput, RentalGetRentalsOutput as RentalGetRentalsOutput$1, RentalHighlightPrioritizationKey, RentalHighlightPrioritizationKey as RentalHighlightPrioritizationKey$1, RentalPropertyHighlightPrioritizationKey, RentalPropertyHighlightPrioritizationKey as RentalPropertyHighlightPrioritizationKey$1, RentalScope, RentalService, SearchSearchFieldOrderBy, SearchSearchFieldOrderBySchema, SearchSearchFieldSort, SearchSearchFieldSort as SearchSearchFieldSort$1, SearchSearchFieldSortSchema, SearchSearchInput, SearchSearchInput as SearchSearchInput$1, SearchSearchInputSchema, SearchSearchOutput, SearchSearchOutput as SearchSearchOutput$1, SearchSearchOutputSchema, SearchSearchPriceSort, SearchSearchPriceSortSchema, SearchSearchRandomSort, SearchSearchRandomSortSchema, SearchSearchRatingSort, SearchSearchRatingSortSchema, SearchSearchSort, SearchSearchSort as SearchSearchSort$1, SearchSearchSortSchema, SearchService, SearchSortDirection, SearchSortDirectionSchema, SelectableInsuranceOptionOutput, SelectedInsuranceInformationInput, SubmittableBookingPaymentOption, SubmittableBookingPaymentOption as SubmittableBookingPaymentOption$1, TranslationOverrides, TranslationOverrides as TranslationOverrides$1, UnknownAdditionalService, V10CoreConfig, validateContactSubmitInput } from "@v-office/sdk-core";
|
|
2
2
|
import { Context, Effect, Layer, Schema } from "effect";
|
|
3
3
|
import { HttpClient } from "effect/unstable/http";
|
|
4
4
|
|
|
@@ -21,6 +21,7 @@ type WebsiteSDKConfig = WebsiteV10Config | WebsiteV9Config;
|
|
|
21
21
|
type WebsiteSDKOptions = {
|
|
22
22
|
readonly translationOverrides?: TranslationOverrides$1;
|
|
23
23
|
readonly customAttributeFilterDefinitions?: readonly CustomAttributeFilterDefinition$1[];
|
|
24
|
+
readonly customAttributeDefinitionManifest?: CustomAttributeDefinitionManifest$1;
|
|
24
25
|
readonly rentalHighlightPrioritization?: readonly RentalHighlightPrioritizationKey$1[];
|
|
25
26
|
readonly rentalPropertyHighlightPrioritization?: readonly RentalPropertyHighlightPrioritizationKey$1[];
|
|
26
27
|
readonly rentalScope?: RentalScope;
|
|
@@ -28,6 +29,14 @@ type WebsiteSDKOptions = {
|
|
|
28
29
|
};
|
|
29
30
|
declare const defineWebsiteSDKOptions: <Options extends WebsiteSDKOptions>(options: Options) => Options;
|
|
30
31
|
//#endregion
|
|
32
|
+
//#region src/legacy-v9/search-input.d.ts
|
|
33
|
+
type V9SearchSearchSort = Exclude<SearchSearchSort$1, SearchSearchFieldSort$1>;
|
|
34
|
+
type V9SearchSearchInput = Omit<SearchSearchInput$1, "rentalIdsIn" | "voucher" | "sort"> & {
|
|
35
|
+
readonly rentalIdsIn?: never;
|
|
36
|
+
readonly voucher?: never;
|
|
37
|
+
readonly sort?: V9SearchSearchSort;
|
|
38
|
+
};
|
|
39
|
+
//#endregion
|
|
31
40
|
//#region src/client.d.ts
|
|
32
41
|
type WebsiteSDKSharedStatic = {
|
|
33
42
|
readonly rentals: {
|
|
@@ -70,12 +79,17 @@ type WebsiteSDKSharedLive = {
|
|
|
70
79
|
};
|
|
71
80
|
};
|
|
72
81
|
type WebsiteSDKV10Live = WebsiteSDKSharedLive;
|
|
73
|
-
type
|
|
82
|
+
type WebsiteSDKV9Live = Omit<WebsiteSDKSharedLive, "search"> & {
|
|
83
|
+
readonly search: {
|
|
84
|
+
readonly search: (input: V9SearchSearchInput) => Promise<SearchSearchOutput$1>;
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
type WebsiteSDKBase<Static extends WebsiteSDKSharedStatic, Live> = {
|
|
74
88
|
readonly static: Static;
|
|
75
89
|
readonly live: Live;
|
|
76
90
|
readonly dispose: () => Promise<void>;
|
|
77
91
|
};
|
|
78
|
-
type WebsiteSDKV9 = WebsiteSDKBase<WebsiteSDKSharedStatic,
|
|
92
|
+
type WebsiteSDKV9 = WebsiteSDKBase<WebsiteSDKSharedStatic, WebsiteSDKV9Live> & {
|
|
79
93
|
readonly backend: "v9";
|
|
80
94
|
};
|
|
81
95
|
type WebsiteSDKV10 = WebsiteSDKBase<WebsiteSDKV10Static, WebsiteSDKV10Live> & {
|
|
@@ -7166,4 +7180,4 @@ type RentalRentalsOutput = RentalGetRentalsOutput$1[number];
|
|
|
7166
7180
|
type RentalSearchInput = SearchSearchInput$1;
|
|
7167
7181
|
type RentalSearchOutput = SearchSearchOutput$1;
|
|
7168
7182
|
//#endregion
|
|
7169
|
-
export { AdditionalServiceLimitExceeded, ApiEnvelopeBase, ApiEnvelopeBaseSchema, type AvailabilityGetInitialAvailabilityInput, type AvailabilityGetInitialAvailabilityOutput, type AvailabilityGetStartDateSelectedAvailabilityInput, type AvailabilityGetStartDateSelectedAvailabilityOutput, type BackendKind, type BookingBookInput, type BookingBookOutput, BookingInput, BookingOutput, type BookingPaymentOption, CMSError, CalendarDay, CalendarDaySchema, CalendarResponse, CalendarResponseSchema, ContactInput, type ContactSubmitInput, type ContactSubmitOutput, type ContactSubmitValidationIssue, type ContactSubmitValidationIssueCode, CoreSDKError, CurrentMemberResponse, CurrentMemberResponseSchema, type CustomAttributeDefinition, type CustomAttributeFilterCategoryKey, type CustomAttributeFilterDefinition, type CustomAttributeFilterExpression, type CustomAttributeFilterLabel, type CustomAttributeFilterNumericBounds, type CustomAttributeFilterOption, type CustomDataAttribute, CustomerUnitSummary, CustomerUnitSummarySchema, type DataAttribute, DefineDataAttributes, DocumentCollectionResponse, DocumentCollectionResponseSchema, DocumentResource, DocumentResourceResponse, DocumentResourceResponseSchema, DocumentResourceSchema, DocumentStatus, DocumentStatusSchema, DocumentStatusUpdateRequest, DocumentStatusUpdateRequestSchema, DocumentSummary, DocumentSummarySchema, DocumentType, DocumentTypeSchema, type DocumentsGetTermsAndPrivacyPolicyInput, type DocumentsGetTermsAndPrivacyPolicyOutput, ErgoAddress, ErgoAddressSchema, ErgoBank, ErgoBankSchema, ErgoBookRequest, ErgoBookRequestSchema, ErgoCommonFields, ErgoCommonFieldsSchema, ErgoCreatePreContractRequest, ErgoCreatePreContractRequestSchema, ErgoPerson, ErgoPersonSchema, ErgoPlanSearchRequest, ErgoPlanSearchRequestSchema, ErgoPolicyNumberRequest, ErgoPolicyNumberRequestSchema, ErgoReadPreContractRequest, ErgoReadPreContractRequestSchema, ErgoTripAndCustomerRequest, ErgoTripAndCustomerRequestSchema, FacilityListResponse, FacilityListResponseSchema, type FilterGetFiltersInput, type FilterGetFiltersOutput, type GeoLocation, type GuestQuote, type GuestQuoteInput, type GuestQuoteInsurance, type GuestQuoteResult, GuestQuoteSchema, type GuestQuoteSelectionResult, type GuestQuoteVoucher, type ImageData, InitialAvailabilityInput, InitialAvailabilityOutput, type InsuranceBookingOutput, type InsuranceCustomerInformationInput, type InsurancePaymentInformationInput, type InsurancePaymentOptionOutput, type InsurancePreContractOutput, InvalidAdditionalServiceQuantity, type KnownVofficeFacilityData, type KnownVofficeFacilityDataAttribute, type KnownVofficeFeedbackData, type KnownVofficeFeedbackDataAttribute, type KnownVofficeImageData, type KnownVofficeImageDataAttribute, type KnownVofficeOfferData, type KnownVofficeOfferDataAttribute, type KnownVofficePriceData, type KnownVofficePriceDataAttribute, type KnownVofficeRatingData, type KnownVofficeRatingDataAttribute, type KnownVofficeServiceData, type KnownVofficeServiceDataAttribute, type KnownVofficeTotalRatingData, type KnownVofficeTotalRatingDataAttribute, type KnownVofficeUnitData, type KnownVofficeUnitDataAttribute, type Locale, LocaleSchema, OnOfficeUnit, OnOfficeUnitCollectionResponse, OnOfficeUnitCollectionResponseSchema, OnOfficeUnitSchema, type ParsedJsonData, type ParsedVofficeFacilityData, type ParsedVofficeFeedbackData, type ParsedVofficeImageData, type ParsedVofficeOfferData, type ParsedVofficePriceData, type ParsedVofficeRatingData, type ParsedVofficeServiceData, type ParsedVofficeTotalRatingData, type ParsedVofficeUnitData, PaymentSchedule, PaymentScheduleItem, PaymentScheduleItemSchema, PaymentScheduleSchema, Quote, QuoteLine, QuoteLineSchema, QuotePricesPayload, QuotePricesPayloadSchema, QuotePricesResponse, QuotePricesResponseSchema, type QuoteQuoteInput, type QuoteQuoteOutput, QuoteSchema, QuoteService, QuoteServiceSchema, RawObjectResponse, RawObjectResponseSchema, RawVofficeObject, RawVofficeObjectSchema, RegionListResponse, RegionListResponseSchema, type RentalGetRentalsInput, type RentalGetRentalsOutput, type RentalHighlightPrioritizationKey, type RentalPropertyHighlightPrioritizationKey, RentalRentalsInput, RentalRentalsOutput, RentalSearchInput, RentalSearchOutput, RoomImage, RoomImageSchema, SearchPropertiesResponse, SearchPropertiesResponseSchema, type SearchSearchInput, SearchSearchInputSchema, type SearchSearchOutput, SearchSearchOutputSchema, type SelectableInsuranceOptionOutput, type SelectedInsuranceInformationInput, ServiceBeonData, ServiceBeonDataSchema, ServiceImage, ServiceImageSchema, ServiceLimit, ServiceLimitSchema, ServiceListResponse, ServiceListResponseSchema, SetupData, SetupDataSchema, SetupResponse, SetupResponseSchema, StartDateSelectedAvailabilityInput, StartDateSelectedAvailabilityOutput, type SubmittableBookingPaymentOption, Tile, TileCollectionResponse, TileCollectionResponseSchema, TileSchema, TileTag, TileTagSchema, type TranslationOverrides, TravelInsuranceBooking, TravelInsuranceBookingSchema, TravelInsuranceBookingStoreRequest, TravelInsuranceBookingStoreRequestSchema, UnitIdsResponse, UnitIdsResponseSchema, UnitListItem, UnitListItemSchema, UnitListResponse, UnitListResponseSchema, UnitOffer, UnitOfferSchema, UnitResponse, UnitResponseSchema, UnitServicePrice, UnitServicePriceSchema, UnknownAdditionalService, V0OpenApiClient, V0OpenApiClientError, type V0OpenApiClientOptions, type V0OpenApiOperationId, type V0OpenApiOperationRequest, type V0OpenApiOperationResponse, V1DecodedResponse, V1HttpMethod, V1OpenApiClient, V1OpenApiClientError, type V1OpenApiClientOptions, type components as V1OpenApiComponents, type V1OpenApiOperationId, type V1OpenApiOperationRequest, type V1OpenApiOperationResponse, type operations as V1OpenApiOperations, type paths as V1OpenApiPaths, V1OperationId, V1OperationRuntime, V1OperationSchema, V1SchemaDecodeError, V1_BASE_URL, V1_OPERATIONS, VideoResponse, VideoResponseSchema, type VofficeFacilityDataAttribute, type VofficeFacilityDataAttributes, type VofficeFeedbackDataAttribute, type VofficeFeedbackDataAttributes, type VofficeImageDataAttribute, type VofficeImageDataAttributes, type VofficeOfferDataAttribute, type VofficeOfferDataAttributes, type VofficePriceDataAttribute, type VofficePriceDataAttributes, type VofficeRatingDataAttribute, type VofficeRatingDataAttributes, type VofficeServiceDataAttribute, type VofficeServiceDataAttributes, type VofficeTotalRatingDataAttribute, type VofficeTotalRatingDataAttributes, type VofficeUnitDataAttribute, type VofficeUnitDataAttributes, type WebsiteSDK, type WebsiteSDKConfig, type WebsiteSDKOptions, type WebsiteSDKSharedLive, type WebsiteSDKSharedStatic, type WebsiteSDKV10, type WebsiteSDKV10Live, type WebsiteSDKV10Static, type WebsiteSDKV9, addAdditionalServiceEffect, bookEffect, bookInsuranceEffect, clearAdditionalServicesEffect, createInsurancePreContractEffect, createWebsiteSDK, customDataAttribute, decodeV1OperationResponse, defineWebsiteSDKOptions as defineCMSSDKOptions, defineWebsiteSDKOptions, defineDataAttributes, defineVofficeFacilityDataAttributes, defineVofficeFeedbackDataAttributes, defineVofficeImageDataAttributes, defineVofficeOfferDataAttributes, defineVofficePriceDataAttributes, defineVofficeRatingDataAttributes, defineVofficeServiceDataAttributes, defineVofficeTotalRatingDataAttributes, defineVofficeUnitDataAttributes, getFiltersEffect, getInitialAvailabilityEffect, getRentalsEffect, getStartDateSelectedAvailabilityEffect, getTermsAndPrivacyPolicyEffect, makeV0OpenApiClientFetchLive, makeV0OpenApiClientLive, makeV1OpenApiClientFetchLive, makeV1OpenApiClientLive, quoteEffect, removeAdditionalServiceEffect, searchEffect, selectCancellationPolicyEffect, selectInsuranceEffect, selectInsurancePaymentEffect, submitContactEffect, submitPaymentOption, submitPaymentOptionEffect, validateContactSubmitInput };
|
|
7183
|
+
export { AdditionalServiceLimitExceeded, ApiEnvelopeBase, ApiEnvelopeBaseSchema, type AvailabilityGetInitialAvailabilityInput, type AvailabilityGetInitialAvailabilityOutput, type AvailabilityGetStartDateSelectedAvailabilityInput, type AvailabilityGetStartDateSelectedAvailabilityOutput, type BackendKind, type BookingBookInput, type BookingBookOutput, BookingInput, BookingOutput, type BookingPaymentOption, CMSError, CalendarDay, CalendarDaySchema, CalendarResponse, CalendarResponseSchema, ContactInput, type ContactSubmitInput, type ContactSubmitOutput, type ContactSubmitValidationIssue, type ContactSubmitValidationIssueCode, CoreSDKError, CurrentMemberResponse, CurrentMemberResponseSchema, type CustomAttributeDefinition, type CustomAttributeDefinitionManifest, type CustomAttributeDefinitionManifestEntry, type CustomAttributeFilterCategoryKey, type CustomAttributeFilterDefinition, type CustomAttributeFilterExpression, type CustomAttributeFilterLabel, type CustomAttributeFilterNumericBounds, type CustomAttributeFilterOption, type CustomDataAttribute, CustomerUnitSummary, CustomerUnitSummarySchema, type DataAttribute, DefineDataAttributes, DocumentCollectionResponse, DocumentCollectionResponseSchema, DocumentResource, DocumentResourceResponse, DocumentResourceResponseSchema, DocumentResourceSchema, DocumentStatus, DocumentStatusSchema, DocumentStatusUpdateRequest, DocumentStatusUpdateRequestSchema, DocumentSummary, DocumentSummarySchema, DocumentType, DocumentTypeSchema, type DocumentsGetTermsAndPrivacyPolicyInput, type DocumentsGetTermsAndPrivacyPolicyOutput, ErgoAddress, ErgoAddressSchema, ErgoBank, ErgoBankSchema, ErgoBookRequest, ErgoBookRequestSchema, ErgoCommonFields, ErgoCommonFieldsSchema, ErgoCreatePreContractRequest, ErgoCreatePreContractRequestSchema, ErgoPerson, ErgoPersonSchema, ErgoPlanSearchRequest, ErgoPlanSearchRequestSchema, ErgoPolicyNumberRequest, ErgoPolicyNumberRequestSchema, ErgoReadPreContractRequest, ErgoReadPreContractRequestSchema, ErgoTripAndCustomerRequest, ErgoTripAndCustomerRequestSchema, FacilityListResponse, FacilityListResponseSchema, type FilterGetFiltersInput, type FilterGetFiltersOutput, type GeoLocation, type GuestQuote, type GuestQuoteInput, type GuestQuoteInsurance, type GuestQuoteResult, GuestQuoteSchema, type GuestQuoteSelectionResult, type GuestQuoteVoucher, type ImageData, InitialAvailabilityInput, InitialAvailabilityOutput, type InsuranceBookingOutput, type InsuranceCustomerInformationInput, type InsurancePaymentInformationInput, type InsurancePaymentOptionOutput, type InsurancePreContractOutput, InvalidAdditionalServiceQuantity, type KnownVofficeFacilityData, type KnownVofficeFacilityDataAttribute, type KnownVofficeFeedbackData, type KnownVofficeFeedbackDataAttribute, type KnownVofficeImageData, type KnownVofficeImageDataAttribute, type KnownVofficeOfferData, type KnownVofficeOfferDataAttribute, type KnownVofficePriceData, type KnownVofficePriceDataAttribute, type KnownVofficeRatingData, type KnownVofficeRatingDataAttribute, type KnownVofficeServiceData, type KnownVofficeServiceDataAttribute, type KnownVofficeTotalRatingData, type KnownVofficeTotalRatingDataAttribute, type KnownVofficeUnitData, type KnownVofficeUnitDataAttribute, type Locale, LocaleSchema, OnOfficeUnit, OnOfficeUnitCollectionResponse, OnOfficeUnitCollectionResponseSchema, OnOfficeUnitSchema, type ParsedJsonData, type ParsedVofficeFacilityData, type ParsedVofficeFeedbackData, type ParsedVofficeImageData, type ParsedVofficeOfferData, type ParsedVofficePriceData, type ParsedVofficeRatingData, type ParsedVofficeServiceData, type ParsedVofficeTotalRatingData, type ParsedVofficeUnitData, PaymentSchedule, PaymentScheduleItem, PaymentScheduleItemSchema, PaymentScheduleSchema, Quote, QuoteLine, QuoteLineSchema, QuotePricesPayload, QuotePricesPayloadSchema, QuotePricesResponse, QuotePricesResponseSchema, type QuoteQuoteInput, type QuoteQuoteOutput, QuoteSchema, QuoteService, QuoteServiceSchema, RawObjectResponse, RawObjectResponseSchema, RawVofficeObject, RawVofficeObjectSchema, RegionListResponse, RegionListResponseSchema, type RentalGetRentalsInput, type RentalGetRentalsOutput, type RentalHighlightPrioritizationKey, type RentalPropertyHighlightPrioritizationKey, RentalRentalsInput, RentalRentalsOutput, RentalSearchInput, RentalSearchOutput, RoomImage, RoomImageSchema, SearchPropertiesResponse, SearchPropertiesResponseSchema, type SearchSearchFieldOrderBy, SearchSearchFieldOrderBySchema, type SearchSearchFieldSort, SearchSearchFieldSortSchema, type SearchSearchInput, SearchSearchInputSchema, type SearchSearchOutput, SearchSearchOutputSchema, type SearchSearchPriceSort, SearchSearchPriceSortSchema, type SearchSearchRandomSort, SearchSearchRandomSortSchema, type SearchSearchRatingSort, SearchSearchRatingSortSchema, type SearchSearchSort, SearchSearchSortSchema, type SearchSortDirection, SearchSortDirectionSchema, type SelectableInsuranceOptionOutput, type SelectedInsuranceInformationInput, ServiceBeonData, ServiceBeonDataSchema, ServiceImage, ServiceImageSchema, ServiceLimit, ServiceLimitSchema, ServiceListResponse, ServiceListResponseSchema, SetupData, SetupDataSchema, SetupResponse, SetupResponseSchema, StartDateSelectedAvailabilityInput, StartDateSelectedAvailabilityOutput, type SubmittableBookingPaymentOption, Tile, TileCollectionResponse, TileCollectionResponseSchema, TileSchema, TileTag, TileTagSchema, type TranslationOverrides, TravelInsuranceBooking, TravelInsuranceBookingSchema, TravelInsuranceBookingStoreRequest, TravelInsuranceBookingStoreRequestSchema, UnitIdsResponse, UnitIdsResponseSchema, UnitListItem, UnitListItemSchema, UnitListResponse, UnitListResponseSchema, UnitOffer, UnitOfferSchema, UnitResponse, UnitResponseSchema, UnitServicePrice, UnitServicePriceSchema, UnknownAdditionalService, V0OpenApiClient, V0OpenApiClientError, type V0OpenApiClientOptions, type V0OpenApiOperationId, type V0OpenApiOperationRequest, type V0OpenApiOperationResponse, V1DecodedResponse, V1HttpMethod, V1OpenApiClient, V1OpenApiClientError, type V1OpenApiClientOptions, type components as V1OpenApiComponents, type V1OpenApiOperationId, type V1OpenApiOperationRequest, type V1OpenApiOperationResponse, type operations as V1OpenApiOperations, type paths as V1OpenApiPaths, V1OperationId, V1OperationRuntime, V1OperationSchema, V1SchemaDecodeError, V1_BASE_URL, V1_OPERATIONS, type V9SearchSearchInput, type V9SearchSearchSort, VideoResponse, VideoResponseSchema, type VofficeFacilityDataAttribute, type VofficeFacilityDataAttributes, type VofficeFeedbackDataAttribute, type VofficeFeedbackDataAttributes, type VofficeImageDataAttribute, type VofficeImageDataAttributes, type VofficeOfferDataAttribute, type VofficeOfferDataAttributes, type VofficePriceDataAttribute, type VofficePriceDataAttributes, type VofficeRatingDataAttribute, type VofficeRatingDataAttributes, type VofficeServiceDataAttribute, type VofficeServiceDataAttributes, type VofficeTotalRatingDataAttribute, type VofficeTotalRatingDataAttributes, type VofficeUnitDataAttribute, type VofficeUnitDataAttributes, type WebsiteSDK, type WebsiteSDKConfig, type WebsiteSDKOptions, type WebsiteSDKSharedLive, type WebsiteSDKSharedStatic, type WebsiteSDKV10, type WebsiteSDKV10Live, type WebsiteSDKV10Static, type WebsiteSDKV9, type WebsiteSDKV9Live, addAdditionalServiceEffect, bookEffect, bookInsuranceEffect, clearAdditionalServicesEffect, createInsurancePreContractEffect, createWebsiteSDK, customDataAttribute, decodeV1OperationResponse, defineWebsiteSDKOptions as defineCMSSDKOptions, defineWebsiteSDKOptions, defineDataAttributes, defineVofficeFacilityDataAttributes, defineVofficeFeedbackDataAttributes, defineVofficeImageDataAttributes, defineVofficeOfferDataAttributes, defineVofficePriceDataAttributes, defineVofficeRatingDataAttributes, defineVofficeServiceDataAttributes, defineVofficeTotalRatingDataAttributes, defineVofficeUnitDataAttributes, getFiltersEffect, getInitialAvailabilityEffect, getRentalsEffect, getStartDateSelectedAvailabilityEffect, getTermsAndPrivacyPolicyEffect, makeV0OpenApiClientFetchLive, makeV0OpenApiClientLive, makeV1OpenApiClientFetchLive, makeV1OpenApiClientLive, quoteEffect, removeAdditionalServiceEffect, searchEffect, selectCancellationPolicyEffect, selectInsuranceEffect, selectInsurancePaymentEffect, submitContactEffect, submitPaymentOption, submitPaymentOptionEffect, validateContactSubmitInput };
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { $ as SetupResponseSchema, A as ErgoPolicyNumberRequestSchema, At as selectInsurancePaymentEffect, B as QuotePricesResponseSchema, C as ErgoAddressSchema, Ct as getStartDateSelectedAvailabilityEffect, D as ErgoCreatePreContractRequestSchema, Dt as searchEffect, E as ErgoCommonFieldsSchema, Et as removeAdditionalServiceEffect, F as OnOfficeUnitSchema, G as RegionListResponseSchema, H as QuoteServiceSchema, I as PaymentScheduleItemSchema, J as ServiceBeonDataSchema, K as RoomImageSchema, L as PaymentScheduleSchema, M as ErgoTripAndCustomerRequestSchema, Mt as submitPaymentOption, N as FacilityListResponseSchema, Nt as submitPaymentOptionEffect, O as ErgoPersonSchema, Ot as selectCancellationPolicyEffect, P as OnOfficeUnitCollectionResponseSchema, Pt as defineWebsiteSDKOptions, Q as SetupDataSchema, R as QuoteLineSchema, S as DocumentTypeSchema, St as getRentalsEffect, T as ErgoBookRequestSchema, Tt as quoteEffect, U as RawObjectResponseSchema, V as QuoteSchema, W as RawVofficeObjectSchema, X as ServiceLimitSchema, Y as ServiceImageSchema, Z as ServiceListResponseSchema, _ as DocumentResourceResponseSchema, _t as bookInsuranceEffect, a as makeV0OpenApiClientFetchLive, at as UnitIdsResponseSchema, b as DocumentStatusUpdateRequestSchema, bt as getFiltersEffect, c as V1OpenApiClientError, ct as UnitOfferSchema, d as ApiEnvelopeBaseSchema, dt as V1_BASE_URL, et as TileCollectionResponseSchema, f as CalendarDaySchema, ft as V1_OPERATIONS, g as DocumentCollectionResponseSchema, gt as bookEffect, h as CustomerUnitSummarySchema, ht as addAdditionalServiceEffect, i as V0OpenApiClientError, it as TravelInsuranceBookingStoreRequestSchema, j as ErgoReadPreContractRequestSchema, jt as submitContactEffect, k as ErgoPlanSearchRequestSchema, kt as selectInsuranceEffect, l as makeV1OpenApiClientFetchLive, lt as UnitResponseSchema, m as CurrentMemberResponseSchema, mt as decodeV1OperationResponse, nt as TileTagSchema, o as makeV0OpenApiClientLive, ot as UnitListItemSchema, p as CalendarResponseSchema, pt as VideoResponseSchema, q as SearchPropertiesResponseSchema, r as V0OpenApiClient, rt as TravelInsuranceBookingSchema, s as V1OpenApiClient, st as UnitListResponseSchema, t as createWebsiteSDK, tt as TileSchema, u as makeV1OpenApiClientLive, ut as UnitServicePriceSchema, v as DocumentResourceSchema, vt as clearAdditionalServicesEffect, w as ErgoBankSchema, wt as getTermsAndPrivacyPolicyEffect, x as DocumentSummarySchema, xt as getInitialAvailabilityEffect, y as DocumentStatusSchema, yt as createInsurancePreContractEffect, z as QuotePricesPayloadSchema } from "./client-
|
|
2
|
-
import { AdditionalServiceLimitExceeded, CoreSDKError, CoreSDKError as CMSError, GuestQuoteSchema, InvalidAdditionalServiceQuantity, LocaleSchema, SearchSearchInputSchema, SearchSearchOutputSchema, UnknownAdditionalService, validateContactSubmitInput } from "@v-office/sdk-core";
|
|
1
|
+
import { $ as SetupResponseSchema, A as ErgoPolicyNumberRequestSchema, At as selectInsurancePaymentEffect, B as QuotePricesResponseSchema, C as ErgoAddressSchema, Ct as getStartDateSelectedAvailabilityEffect, D as ErgoCreatePreContractRequestSchema, Dt as searchEffect, E as ErgoCommonFieldsSchema, Et as removeAdditionalServiceEffect, F as OnOfficeUnitSchema, G as RegionListResponseSchema, H as QuoteServiceSchema, I as PaymentScheduleItemSchema, J as ServiceBeonDataSchema, K as RoomImageSchema, L as PaymentScheduleSchema, M as ErgoTripAndCustomerRequestSchema, Mt as submitPaymentOption, N as FacilityListResponseSchema, Nt as submitPaymentOptionEffect, O as ErgoPersonSchema, Ot as selectCancellationPolicyEffect, P as OnOfficeUnitCollectionResponseSchema, Pt as defineWebsiteSDKOptions, Q as SetupDataSchema, R as QuoteLineSchema, S as DocumentTypeSchema, St as getRentalsEffect, T as ErgoBookRequestSchema, Tt as quoteEffect, U as RawObjectResponseSchema, V as QuoteSchema, W as RawVofficeObjectSchema, X as ServiceLimitSchema, Y as ServiceImageSchema, Z as ServiceListResponseSchema, _ as DocumentResourceResponseSchema, _t as bookInsuranceEffect, a as makeV0OpenApiClientFetchLive, at as UnitIdsResponseSchema, b as DocumentStatusUpdateRequestSchema, bt as getFiltersEffect, c as V1OpenApiClientError, ct as UnitOfferSchema, d as ApiEnvelopeBaseSchema, dt as V1_BASE_URL, et as TileCollectionResponseSchema, f as CalendarDaySchema, ft as V1_OPERATIONS, g as DocumentCollectionResponseSchema, gt as bookEffect, h as CustomerUnitSummarySchema, ht as addAdditionalServiceEffect, i as V0OpenApiClientError, it as TravelInsuranceBookingStoreRequestSchema, j as ErgoReadPreContractRequestSchema, jt as submitContactEffect, k as ErgoPlanSearchRequestSchema, kt as selectInsuranceEffect, l as makeV1OpenApiClientFetchLive, lt as UnitResponseSchema, m as CurrentMemberResponseSchema, mt as decodeV1OperationResponse, nt as TileTagSchema, o as makeV0OpenApiClientLive, ot as UnitListItemSchema, p as CalendarResponseSchema, pt as VideoResponseSchema, q as SearchPropertiesResponseSchema, r as V0OpenApiClient, rt as TravelInsuranceBookingSchema, s as V1OpenApiClient, st as UnitListResponseSchema, t as createWebsiteSDK, tt as TileSchema, u as makeV1OpenApiClientLive, ut as UnitServicePriceSchema, v as DocumentResourceSchema, vt as clearAdditionalServicesEffect, w as ErgoBankSchema, wt as getTermsAndPrivacyPolicyEffect, x as DocumentSummarySchema, xt as getInitialAvailabilityEffect, y as DocumentStatusSchema, yt as createInsurancePreContractEffect, z as QuotePricesPayloadSchema } from "./client-Cnf-pbry.mjs";
|
|
2
|
+
import { AdditionalServiceLimitExceeded, CoreSDKError, CoreSDKError as CMSError, GuestQuoteSchema, InvalidAdditionalServiceQuantity, LocaleSchema, SearchSearchFieldOrderBySchema, SearchSearchFieldSortSchema, SearchSearchInputSchema, SearchSearchOutputSchema, SearchSearchPriceSortSchema, SearchSearchRandomSortSchema, SearchSearchRatingSortSchema, SearchSearchSortSchema, SearchSortDirectionSchema, UnknownAdditionalService, validateContactSubmitInput } from "@v-office/sdk-core";
|
|
3
3
|
//#region codegen/v9/heuristic-generation/public-api.ts
|
|
4
4
|
const customDataAttribute = (name) => name;
|
|
5
5
|
const defineDataAttributes = () => (attributes) => attributes;
|
|
@@ -13,4 +13,4 @@ const defineVofficeOfferDataAttributes = defineDataAttributes();
|
|
|
13
13
|
const defineVofficeRatingDataAttributes = defineDataAttributes();
|
|
14
14
|
const defineVofficeTotalRatingDataAttributes = defineDataAttributes();
|
|
15
15
|
//#endregion
|
|
16
|
-
export { AdditionalServiceLimitExceeded, ApiEnvelopeBaseSchema, CMSError, CalendarDaySchema, CalendarResponseSchema, CoreSDKError, CurrentMemberResponseSchema, CustomerUnitSummarySchema, DocumentCollectionResponseSchema, DocumentResourceResponseSchema, DocumentResourceSchema, DocumentStatusSchema, DocumentStatusUpdateRequestSchema, DocumentSummarySchema, DocumentTypeSchema, ErgoAddressSchema, ErgoBankSchema, ErgoBookRequestSchema, ErgoCommonFieldsSchema, ErgoCreatePreContractRequestSchema, ErgoPersonSchema, ErgoPlanSearchRequestSchema, ErgoPolicyNumberRequestSchema, ErgoReadPreContractRequestSchema, ErgoTripAndCustomerRequestSchema, FacilityListResponseSchema, GuestQuoteSchema, InvalidAdditionalServiceQuantity, LocaleSchema, OnOfficeUnitCollectionResponseSchema, OnOfficeUnitSchema, PaymentScheduleItemSchema, PaymentScheduleSchema, QuoteLineSchema, QuotePricesPayloadSchema, QuotePricesResponseSchema, QuoteSchema, QuoteServiceSchema, RawObjectResponseSchema, RawVofficeObjectSchema, RegionListResponseSchema, RoomImageSchema, SearchPropertiesResponseSchema, SearchSearchInputSchema, SearchSearchOutputSchema, ServiceBeonDataSchema, ServiceImageSchema, ServiceLimitSchema, ServiceListResponseSchema, SetupDataSchema, SetupResponseSchema, TileCollectionResponseSchema, TileSchema, TileTagSchema, TravelInsuranceBookingSchema, TravelInsuranceBookingStoreRequestSchema, UnitIdsResponseSchema, UnitListItemSchema, UnitListResponseSchema, UnitOfferSchema, UnitResponseSchema, UnitServicePriceSchema, UnknownAdditionalService, V0OpenApiClient, V0OpenApiClientError, V1OpenApiClient, V1OpenApiClientError, V1_BASE_URL, V1_OPERATIONS, VideoResponseSchema, addAdditionalServiceEffect, bookEffect, bookInsuranceEffect, clearAdditionalServicesEffect, createInsurancePreContractEffect, createWebsiteSDK, customDataAttribute, decodeV1OperationResponse, defineWebsiteSDKOptions as defineCMSSDKOptions, defineWebsiteSDKOptions, defineDataAttributes, defineVofficeFacilityDataAttributes, defineVofficeFeedbackDataAttributes, defineVofficeImageDataAttributes, defineVofficeOfferDataAttributes, defineVofficePriceDataAttributes, defineVofficeRatingDataAttributes, defineVofficeServiceDataAttributes, defineVofficeTotalRatingDataAttributes, defineVofficeUnitDataAttributes, getFiltersEffect, getInitialAvailabilityEffect, getRentalsEffect, getStartDateSelectedAvailabilityEffect, getTermsAndPrivacyPolicyEffect, makeV0OpenApiClientFetchLive, makeV0OpenApiClientLive, makeV1OpenApiClientFetchLive, makeV1OpenApiClientLive, quoteEffect, removeAdditionalServiceEffect, searchEffect, selectCancellationPolicyEffect, selectInsuranceEffect, selectInsurancePaymentEffect, submitContactEffect, submitPaymentOption, submitPaymentOptionEffect, validateContactSubmitInput };
|
|
16
|
+
export { AdditionalServiceLimitExceeded, ApiEnvelopeBaseSchema, CMSError, CalendarDaySchema, CalendarResponseSchema, CoreSDKError, CurrentMemberResponseSchema, CustomerUnitSummarySchema, DocumentCollectionResponseSchema, DocumentResourceResponseSchema, DocumentResourceSchema, DocumentStatusSchema, DocumentStatusUpdateRequestSchema, DocumentSummarySchema, DocumentTypeSchema, ErgoAddressSchema, ErgoBankSchema, ErgoBookRequestSchema, ErgoCommonFieldsSchema, ErgoCreatePreContractRequestSchema, ErgoPersonSchema, ErgoPlanSearchRequestSchema, ErgoPolicyNumberRequestSchema, ErgoReadPreContractRequestSchema, ErgoTripAndCustomerRequestSchema, FacilityListResponseSchema, GuestQuoteSchema, InvalidAdditionalServiceQuantity, LocaleSchema, OnOfficeUnitCollectionResponseSchema, OnOfficeUnitSchema, PaymentScheduleItemSchema, PaymentScheduleSchema, QuoteLineSchema, QuotePricesPayloadSchema, QuotePricesResponseSchema, QuoteSchema, QuoteServiceSchema, RawObjectResponseSchema, RawVofficeObjectSchema, RegionListResponseSchema, RoomImageSchema, SearchPropertiesResponseSchema, SearchSearchFieldOrderBySchema, SearchSearchFieldSortSchema, SearchSearchInputSchema, SearchSearchOutputSchema, SearchSearchPriceSortSchema, SearchSearchRandomSortSchema, SearchSearchRatingSortSchema, SearchSearchSortSchema, SearchSortDirectionSchema, ServiceBeonDataSchema, ServiceImageSchema, ServiceLimitSchema, ServiceListResponseSchema, SetupDataSchema, SetupResponseSchema, TileCollectionResponseSchema, TileSchema, TileTagSchema, TravelInsuranceBookingSchema, TravelInsuranceBookingStoreRequestSchema, UnitIdsResponseSchema, UnitListItemSchema, UnitListResponseSchema, UnitOfferSchema, UnitResponseSchema, UnitServicePriceSchema, UnknownAdditionalService, V0OpenApiClient, V0OpenApiClientError, V1OpenApiClient, V1OpenApiClientError, V1_BASE_URL, V1_OPERATIONS, VideoResponseSchema, addAdditionalServiceEffect, bookEffect, bookInsuranceEffect, clearAdditionalServicesEffect, createInsurancePreContractEffect, createWebsiteSDK, customDataAttribute, decodeV1OperationResponse, defineWebsiteSDKOptions as defineCMSSDKOptions, defineWebsiteSDKOptions, defineDataAttributes, defineVofficeFacilityDataAttributes, defineVofficeFeedbackDataAttributes, defineVofficeImageDataAttributes, defineVofficeOfferDataAttributes, defineVofficePriceDataAttributes, defineVofficeRatingDataAttributes, defineVofficeServiceDataAttributes, defineVofficeTotalRatingDataAttributes, defineVofficeUnitDataAttributes, getFiltersEffect, getInitialAvailabilityEffect, getRentalsEffect, getStartDateSelectedAvailabilityEffect, getTermsAndPrivacyPolicyEffect, makeV0OpenApiClientFetchLive, makeV0OpenApiClientLive, makeV1OpenApiClientFetchLive, makeV1OpenApiClientLive, quoteEffect, removeAdditionalServiceEffect, searchEffect, selectCancellationPolicyEffect, selectInsuranceEffect, selectInsurancePaymentEffect, submitContactEffect, submitPaymentOption, submitPaymentOptionEffect, validateContactSubmitInput };
|
|
@@ -4,6 +4,7 @@ This file is the versioned changelog index for the website SDK instructions.
|
|
|
4
4
|
|
|
5
5
|
## Versions
|
|
6
6
|
|
|
7
|
+
- `versions/2.5.0/CHANGELOG.md`: `@v-office/website-sdk` 2.5.0 release notes.
|
|
7
8
|
- `versions/2.4.3/CHANGELOG.md`: `@v-office/website-sdk` 2.4.3 documentation release notes.
|
|
8
9
|
- `versions/2.4.2/CHANGELOG.md`: `@v-office/website-sdk` 2.4.2 release notes.
|
|
9
10
|
- `versions/2.4.0/CHANGELOG.md`: `@v-office/website-sdk` 2.4.0 release notes.
|
|
@@ -4,6 +4,7 @@ This file is the versioned migration index for the website SDK instructions.
|
|
|
4
4
|
|
|
5
5
|
## Available Guides
|
|
6
6
|
|
|
7
|
+
- `versions/2.5.0/MIGRATION.md`: migrate from `@v-office/website-sdk` 2.4.3 to 2.5.0.
|
|
7
8
|
- `versions/2.4.3/MIGRATION.md`: migrate from `@v-office/website-sdk` 2.4.2 to 2.4.3.
|
|
8
9
|
- `versions/2.4.2/MIGRATION.md`: migrate from `@v-office/website-sdk` 2.4.1 to 2.4.2.
|
|
9
10
|
- `versions/2.4.0/MIGRATION.md`: migrate from `@v-office/website-sdk` 2.3.x to 2.4.0.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Website SDK Instructions
|
|
2
2
|
|
|
3
|
-
These instructions describe `@v-office/website-sdk` 2.
|
|
3
|
+
These instructions describe `@v-office/website-sdk` 2.5.0.
|
|
4
4
|
|
|
5
5
|
Use this directory as the consumer-facing reference for the package:
|
|
6
6
|
|
|
@@ -15,6 +15,7 @@ Use this directory as the consumer-facing reference for the package:
|
|
|
15
15
|
- `document-structured-json.md`: `sdk.static.documents.getTermsAndPrivacyPolicy` and structured document JSON rendering rules.
|
|
16
16
|
- `CHANGELOG.md`: versioned changelog index.
|
|
17
17
|
- `MIGRATION.md`: versioned migration index.
|
|
18
|
+
- `versions/2.5.0/`: 2.5.0 release notes and 2.4.3-to-2.5.0 migration guide.
|
|
18
19
|
- `versions/2.4.3/`: 2.4.3 documentation release notes and migration guide.
|
|
19
20
|
- `versions/2.4.2/`: 2.4.2 release notes and 2.4.1-to-2.4.2 migration guide.
|
|
20
21
|
- `versions/2.4.0/`: 2.4.0 release notes and 2.3.x-to-2.4.0 migration guide.
|
|
@@ -39,6 +40,7 @@ const sdk = createWebsiteSDK({
|
|
|
39
40
|
config: {
|
|
40
41
|
backend: "v10",
|
|
41
42
|
apiEndpoint: "https://api.example.com/graphql",
|
|
43
|
+
searchEndpoint: "https://search.example.com/search",
|
|
42
44
|
accessToken: "...",
|
|
43
45
|
imageBaseUrl: "https://images.example.com",
|
|
44
46
|
},
|
|
@@ -63,6 +65,7 @@ try {
|
|
|
63
65
|
website-sdk --backend v10 rentals --locale de-DE
|
|
64
66
|
website-sdk --backend v9 filters --locale en-US
|
|
65
67
|
website-sdk --backend v10 search --locale de-DE --query "adults=2"
|
|
68
|
+
website-sdk --backend v10 search --locale de-DE --query "adults=2" --sort '{"by":"field","orderBy":{"label":"ASC"}}'
|
|
66
69
|
```
|
|
67
70
|
|
|
68
|
-
Config file examples in these docs use the flat `WebsiteSDKConfig` shape introduced in 2.0.0 and kept in 2.
|
|
71
|
+
Config file examples in these docs use the flat `WebsiteSDKConfig` shape introduced in 2.0.0 and kept in 2.5.0. v10 config additionally requires `searchEndpoint` as of 2.5.0.
|
|
@@ -118,6 +118,7 @@ Use flat `WebsiteSDKConfig` files.
|
|
|
118
118
|
{
|
|
119
119
|
"backend": "v10",
|
|
120
120
|
"apiEndpoint": "https://api.example.com/graphql",
|
|
121
|
+
"searchEndpoint": "https://search.example.com/search",
|
|
121
122
|
"accessToken": "...",
|
|
122
123
|
"imageBaseUrl": "https://images.example.com"
|
|
123
124
|
}
|
|
@@ -154,4 +155,4 @@ website-sdk --backend v10 availability initial --rental-id 123 --calculate-from-
|
|
|
154
155
|
Environment variables:
|
|
155
156
|
|
|
156
157
|
- `v9`: `HUB_GRAPHQL_URL`, `HUB_V1_API_BASE_URL`, optional `HUB_V0_API_BASE_URL`, `HUB_API_KEY`, `IMAGE_PROXY_BASE_URL`.
|
|
157
|
-
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
158
|
+
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_SEARCH_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
@@ -162,4 +162,4 @@ website-sdk --backend v10 --config ./website-sdk-config.json booking book --quot
|
|
|
162
162
|
Environment variables:
|
|
163
163
|
|
|
164
164
|
- `v9`: `HUB_GRAPHQL_URL`, `HUB_V1_API_BASE_URL`, optional `HUB_V0_API_BASE_URL`, `HUB_API_KEY`, `IMAGE_PROXY_BASE_URL`.
|
|
165
|
-
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
165
|
+
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_SEARCH_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
@@ -107,4 +107,4 @@ Without `--yes`, the command fails before submitting because contact requests se
|
|
|
107
107
|
Environment variables:
|
|
108
108
|
|
|
109
109
|
- `v9`: `HUB_GRAPHQL_URL`, `HUB_V1_API_BASE_URL`, optional `HUB_V0_API_BASE_URL`, `HUB_API_KEY`, `IMAGE_PROXY_BASE_URL`.
|
|
110
|
-
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
110
|
+
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_SEARCH_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
@@ -11,6 +11,7 @@ const sdk = createWebsiteSDK({
|
|
|
11
11
|
config: {
|
|
12
12
|
backend: "v10",
|
|
13
13
|
apiEndpoint: "https://api.example.com/graphql",
|
|
14
|
+
searchEndpoint: "https://search.example.com/search",
|
|
14
15
|
accessToken: "...",
|
|
15
16
|
imageBaseUrl: "https://images.example.com",
|
|
16
17
|
},
|
|
@@ -58,6 +59,7 @@ const sdk = createWebsiteSDK({
|
|
|
58
59
|
config: {
|
|
59
60
|
backend: "v10",
|
|
60
61
|
apiEndpoint: "https://api.example.com/graphql",
|
|
62
|
+
searchEndpoint: "https://search.example.com/search",
|
|
61
63
|
accessToken: "...",
|
|
62
64
|
imageBaseUrl: "https://images.example.com",
|
|
63
65
|
},
|
|
@@ -66,6 +68,8 @@ const sdk = createWebsiteSDK({
|
|
|
66
68
|
|
|
67
69
|
For v10, `backend: "v10"` is optional in TypeScript, but including it is clearer when config files are shared with the CLI.
|
|
68
70
|
|
|
71
|
+
For v10, `searchEndpoint` is required as of 2.5.0. It is the full REST search URL including the `/search` path and is a separate host from `apiEndpoint` (which still serves rentals, filters, quote, availability, booking, and contact over GraphQL). Configure it explicitly rather than deriving it from `apiEndpoint`.
|
|
72
|
+
|
|
69
73
|
## WebsiteSDKOptions
|
|
70
74
|
|
|
71
75
|
`options` is optional and is passed separately from backend config:
|
|
@@ -88,6 +92,7 @@ const options = defineWebsiteSDKOptions({
|
|
|
88
92
|
type WebsiteSDKOptions = {
|
|
89
93
|
translationOverrides?: TranslationOverrides;
|
|
90
94
|
customAttributeFilterDefinitions?: readonly CustomAttributeFilterDefinition[];
|
|
95
|
+
customAttributeDefinitionManifest?: CustomAttributeDefinitionManifest;
|
|
91
96
|
rentalHighlightPrioritization?: readonly RentalHighlightPrioritizationKey[];
|
|
92
97
|
rentalPropertyHighlightPrioritization?: readonly RentalPropertyHighlightPrioritizationKey[];
|
|
93
98
|
rentalScope?: RentalScope;
|
|
@@ -98,6 +103,7 @@ type WebsiteSDKOptions = {
|
|
|
98
103
|
Unset options are normalized by the SDK:
|
|
99
104
|
|
|
100
105
|
- `customAttributeFilterDefinitions` defaults to `[]`.
|
|
106
|
+
- `customAttributeDefinitionManifest` is omitted unless provided; an absent manifest is treated as empty.
|
|
101
107
|
- `rentalHighlightPrioritization` defaults to the SDK default rental highlight order.
|
|
102
108
|
- `rentalPropertyHighlightPrioritization` defaults to the SDK default property highlight order.
|
|
103
109
|
- `rentalScope` defaults to `{}`.
|
|
@@ -176,6 +182,43 @@ Visibility:
|
|
|
176
182
|
- `internal: true` keeps filters usable by search and compositions but hides them from `getFilters`.
|
|
177
183
|
- `searchable: false` keeps custom attributes as display metadata only.
|
|
178
184
|
|
|
185
|
+
## Custom Attribute Definition Manifest
|
|
186
|
+
|
|
187
|
+
The v10 REST search backend filters and returns custom attributes by definition ID, while SDK configuration and query strings use keys. Because definition IDs are workspace/environment specific, use `customAttributeDefinitionManifest` to give the SDK a key-to-ID and ID-to-key mapping:
|
|
188
|
+
|
|
189
|
+
```ts
|
|
190
|
+
const options = defineWebsiteSDKOptions({
|
|
191
|
+
customAttributeDefinitionManifest: {
|
|
192
|
+
byKey: {
|
|
193
|
+
region: { id: "def-1", key: "region", type: "OPTION", visibility: "PUBLIC" },
|
|
194
|
+
},
|
|
195
|
+
byId: {
|
|
196
|
+
"def-1": { id: "def-1", key: "region", type: "OPTION", visibility: "PUBLIC" },
|
|
197
|
+
},
|
|
198
|
+
},
|
|
199
|
+
});
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
```ts
|
|
203
|
+
type CustomAttributeDefinitionManifestEntry = {
|
|
204
|
+
id: string;
|
|
205
|
+
key: string;
|
|
206
|
+
type: "BOOLEAN" | "INT" | "STRING" | "OPTION";
|
|
207
|
+
visibility: "PUBLIC" | string | null;
|
|
208
|
+
options?: readonly { value: string; label?: Record<string, string> }[];
|
|
209
|
+
};
|
|
210
|
+
|
|
211
|
+
type CustomAttributeDefinitionManifest = {
|
|
212
|
+
byKey: Record<string, CustomAttributeDefinitionManifestEntry>;
|
|
213
|
+
byId: Record<string, CustomAttributeDefinitionManifestEntry>;
|
|
214
|
+
};
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
- Generate the manifest at build time from your definitions source, and pass a separate manifest per workspace/environment because IDs are not portable.
|
|
218
|
+
- Custom-attribute keys that have no manifest entry are left in `unusedFilterKeys` instead of being applied as filters.
|
|
219
|
+
- Only definitions with `visibility` of `PUBLIC` (or `null`) are surfaced as v10 search highlights; others are ignored.
|
|
220
|
+
- The manifest is only used by v10 search. v9 and the non-search v10 endpoints ignore it.
|
|
221
|
+
|
|
179
222
|
## Translation Overrides
|
|
180
223
|
|
|
181
224
|
Use `translationOverrides` to override SDK translation keys:
|
|
@@ -206,6 +249,7 @@ Example `website-sdk-config.v10.json`:
|
|
|
206
249
|
{
|
|
207
250
|
"backend": "v10",
|
|
208
251
|
"apiEndpoint": "https://api.example.com/graphql",
|
|
252
|
+
"searchEndpoint": "https://search.example.com/search",
|
|
209
253
|
"accessToken": "...",
|
|
210
254
|
"imageBaseUrl": "https://images.example.com"
|
|
211
255
|
}
|
|
@@ -91,6 +91,7 @@ Filter variants:
|
|
|
91
91
|
{
|
|
92
92
|
"backend": "v10",
|
|
93
93
|
"apiEndpoint": "https://api.example.com/graphql",
|
|
94
|
+
"searchEndpoint": "https://search.example.com/search",
|
|
94
95
|
"accessToken": "...",
|
|
95
96
|
"imageBaseUrl": "https://images.example.com"
|
|
96
97
|
}
|
|
@@ -155,4 +156,4 @@ website-sdk --backend v10 filters --locale de-DE --output pretty
|
|
|
155
156
|
Environment variables:
|
|
156
157
|
|
|
157
158
|
- `v9`: `HUB_GRAPHQL_URL`, `HUB_V1_API_BASE_URL`, optional `HUB_V0_API_BASE_URL`, `HUB_API_KEY`, `IMAGE_PROXY_BASE_URL`.
|
|
158
|
-
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
159
|
+
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_SEARCH_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
@@ -344,4 +344,4 @@ The CLI only creates the initial quote. Additional service, cancellation policy,
|
|
|
344
344
|
Environment variables:
|
|
345
345
|
|
|
346
346
|
- `v9`: `HUB_GRAPHQL_URL`, `HUB_V1_API_BASE_URL`, optional `HUB_V0_API_BASE_URL`, `HUB_API_KEY`, `IMAGE_PROXY_BASE_URL`.
|
|
347
|
-
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
347
|
+
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_SEARCH_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
@@ -137,6 +137,7 @@ For v10, public answers with the same form-response ID are combined into one rev
|
|
|
137
137
|
{
|
|
138
138
|
"backend": "v10",
|
|
139
139
|
"apiEndpoint": "https://api.example.com/graphql",
|
|
140
|
+
"searchEndpoint": "https://search.example.com/search",
|
|
140
141
|
"accessToken": "...",
|
|
141
142
|
"imageBaseUrl": "https://images.example.com"
|
|
142
143
|
}
|
|
@@ -179,4 +180,4 @@ website-sdk --backend v10 rentals --locale de-DE --output pretty
|
|
|
179
180
|
Environment variables:
|
|
180
181
|
|
|
181
182
|
- `v9`: `HUB_GRAPHQL_URL`, `HUB_V1_API_BASE_URL`, optional `HUB_V0_API_BASE_URL`, `HUB_API_KEY`, `IMAGE_PROXY_BASE_URL`.
|
|
182
|
-
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
183
|
+
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_SEARCH_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
@@ -23,9 +23,38 @@ type RentalSearchInput = {
|
|
|
23
23
|
voucher?: string;
|
|
24
24
|
limit?: number;
|
|
25
25
|
cursor?: string;
|
|
26
|
+
sort?: SearchSearchSort;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
type SearchSearchSort =
|
|
30
|
+
| { by: "price"; direction: "ASC" | "DESC" }
|
|
31
|
+
| { by: "random" }
|
|
32
|
+
| { by: "rating" }
|
|
33
|
+
| { by: "field"; orderBy: SearchSearchFieldOrderBy };
|
|
34
|
+
|
|
35
|
+
type SearchSearchFieldOrderBy = {
|
|
36
|
+
label?: "ASC" | "DESC";
|
|
37
|
+
name?: "ASC" | "DESC";
|
|
38
|
+
roomSummary?: {
|
|
39
|
+
bathrooms?: "ASC" | "DESC";
|
|
40
|
+
bedrooms?: "ASC" | "DESC";
|
|
41
|
+
livingrooms?: "ASC" | "DESC";
|
|
42
|
+
maxAdults?: "ASC" | "DESC";
|
|
43
|
+
maxPersons?: "ASC" | "DESC";
|
|
44
|
+
rooms?: "ASC" | "DESC";
|
|
45
|
+
};
|
|
46
|
+
attributes?: {
|
|
47
|
+
squareMeters?: "ASC" | "DESC";
|
|
48
|
+
};
|
|
49
|
+
vicinity?: {
|
|
50
|
+
beachdistance?: "ASC" | "DESC";
|
|
51
|
+
citydistance?: "ASC" | "DESC";
|
|
52
|
+
};
|
|
26
53
|
};
|
|
27
54
|
```
|
|
28
55
|
|
|
56
|
+
The v9 facade narrows `sort` to price, random, or rating. The closed field-sorting contract is v10-only. The SDK also exports the corresponding `SearchSearchSortSchema`, variant schemas, types, and `V9SearchSearchSort`.
|
|
57
|
+
|
|
29
58
|
Sample:
|
|
30
59
|
|
|
31
60
|
```json
|
|
@@ -34,7 +63,11 @@ Sample:
|
|
|
34
63
|
"query": "start=01-07-2026&end=08-07-2026&adults=2&children=1&wifi=true",
|
|
35
64
|
"rentalIdsIn": ["123", "456"],
|
|
36
65
|
"voucher": "SUMMER26",
|
|
37
|
-
"limit": 20
|
|
66
|
+
"limit": 20,
|
|
67
|
+
"sort": {
|
|
68
|
+
"by": "price",
|
|
69
|
+
"direction": "ASC"
|
|
70
|
+
}
|
|
38
71
|
}
|
|
39
72
|
```
|
|
40
73
|
|
|
@@ -130,6 +163,66 @@ For v10, `pets` is a mapped BooleanFilter exposed by `getFilters` and maps to on
|
|
|
130
163
|
|
|
131
164
|
`limit` defaults to `20`. Treat `cursor` as opaque and pass back `pageInfo.nextCursor` unchanged.
|
|
132
165
|
|
|
166
|
+
## Sorting
|
|
167
|
+
|
|
168
|
+
Sorting is optional. The discriminated `sort` union allows exactly one ordering mode per request.
|
|
169
|
+
|
|
170
|
+
Price, random, and rating use the same input in v9 and v10:
|
|
171
|
+
|
|
172
|
+
```ts
|
|
173
|
+
await sdk.live.search.search({
|
|
174
|
+
locale: "de-DE",
|
|
175
|
+
query: "start=01-08-2026&end=08-08-2026&adults=2",
|
|
176
|
+
sort: { by: "price", direction: "ASC" },
|
|
177
|
+
});
|
|
178
|
+
|
|
179
|
+
await sdk.live.search.search({
|
|
180
|
+
locale: "de-DE",
|
|
181
|
+
query: "adults=2",
|
|
182
|
+
sort: { by: "random" },
|
|
183
|
+
});
|
|
184
|
+
|
|
185
|
+
await sdk.live.search.search({
|
|
186
|
+
locale: "de-DE",
|
|
187
|
+
query: "adults=2",
|
|
188
|
+
sort: { by: "rating" },
|
|
189
|
+
});
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
Backend behavior:
|
|
193
|
+
|
|
194
|
+
- `price`: v9 maps to `price_asc` or `price_desc`. v10 orders priced alternatives by total and direction. v10 price sorting requires a fixed-period or flexible-date query with occupancy; the SDK rejects incomplete requests before transport.
|
|
195
|
+
- `random`: v9 requests the backend's random ordering. v10 currently keeps the default backend ordering.
|
|
196
|
+
- `rating`: v9 requests the backend's rating ordering. v10 currently keeps the default backend ordering until rating ordering is implemented.
|
|
197
|
+
- v9 may retain backend-promoted results ahead of the requested business order, and its random ordering may be deterministic.
|
|
198
|
+
- v10 price ordering follows the backend's boost-first, total-second behavior, so different boost groups are not globally ordered only by price.
|
|
199
|
+
|
|
200
|
+
v10 additionally supports a stable subset of rental-summary field ordering:
|
|
201
|
+
|
|
202
|
+
```ts
|
|
203
|
+
await sdk.live.search.search({
|
|
204
|
+
locale: "de-DE",
|
|
205
|
+
query: "adults=2",
|
|
206
|
+
sort: {
|
|
207
|
+
by: "field",
|
|
208
|
+
orderBy: {
|
|
209
|
+
label: "ASC",
|
|
210
|
+
roomSummary: {
|
|
211
|
+
bedrooms: "DESC",
|
|
212
|
+
},
|
|
213
|
+
attributes: {
|
|
214
|
+
squareMeters: "DESC",
|
|
215
|
+
},
|
|
216
|
+
vicinity: {
|
|
217
|
+
beachdistance: "ASC",
|
|
218
|
+
},
|
|
219
|
+
},
|
|
220
|
+
},
|
|
221
|
+
});
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
The supported fields are `label`, `name`, all six `roomSummary` counters, `attributes.squareMeters`, `vicinity.beachdistance`, and `vicinity.citydistance`. Unknown fields and nesting are not part of the public type and are rejected before transport by the SDK and CLI. The field variant is excluded from `V9SearchSearchSort` and rejected by the CLI when `--backend v9` is selected.
|
|
225
|
+
|
|
133
226
|
## Output
|
|
134
227
|
|
|
135
228
|
Returns `Promise<RentalSearchOutput>`.
|
|
@@ -192,10 +285,22 @@ Sample:
|
|
|
192
285
|
|
|
193
286
|
Search items share the rental base fields and may include `scope`, `address`, `property`, `highlights`, and `formattedTotal`. Exact-period results are returned in `items`; alternative-period suggestions are returned in root-level `alternatives`.
|
|
194
287
|
|
|
288
|
+
## v10 Backend
|
|
289
|
+
|
|
290
|
+
v10 search runs against the dedicated REST search backend (`POST` to the configured `searchEndpoint`). Existing calls and the output type remain compatible, while the input additionally supports optional sorting. v10 results reflect the REST projection:
|
|
291
|
+
|
|
292
|
+
- At most five images per item, and no image `category`.
|
|
293
|
+
- `property` is the minimal `{ id, nameOrLabel }` shape. Hydrate `property.location`, `property.images`, or `property.address` from `sdk.static.rentals.getRentals(...)` when a card needs them.
|
|
294
|
+
- Custom-attribute search filters and highlights require a `customAttributeDefinitionManifest`; without it, custom-attribute query keys are left in `unusedFilterKeys` and no custom-attribute highlights are added.
|
|
295
|
+
- Fixed-period and flexible searches are priced by the REST backend and require occupancy.
|
|
296
|
+
- Pagination uses the backend `from`/`size` window behind the same opaque `cursor`, capped at 1,000 results.
|
|
297
|
+
|
|
195
298
|
## Configuration
|
|
196
299
|
|
|
197
300
|
Use flat `WebsiteSDKConfig` files and optional `WebsiteSDKOptions`.
|
|
198
301
|
|
|
302
|
+
For v10, config requires `searchEndpoint` (the full REST search URL) as of 2.5.0. See `creation.md` for `searchEndpoint` and the `customAttributeDefinitionManifest` option.
|
|
303
|
+
|
|
199
304
|
Custom filter definitions can extend accepted search query keys. Search requests are rate-limited to one backend request per second with a queue size of five.
|
|
200
305
|
|
|
201
306
|
## CLI Usage
|
|
@@ -220,6 +325,14 @@ website-sdk --backend v10 search --locale de-DE --query "adults=2" --rental-ids-
|
|
|
220
325
|
website-sdk --backend v10 search --locale de-DE --query "adults=2" --voucher SUMMER26
|
|
221
326
|
```
|
|
222
327
|
|
|
328
|
+
Pass sorting as schema-validated JSON:
|
|
329
|
+
|
|
330
|
+
```sh
|
|
331
|
+
website-sdk --backend v9 search --locale de-DE --query "adults=2" --sort '{"by":"random"}'
|
|
332
|
+
website-sdk --backend v10 search --locale de-DE --query "start=01-08-2026&end=08-08-2026&adults=2" --sort '{"by":"price","direction":"ASC"}'
|
|
333
|
+
website-sdk --backend v10 search --locale de-DE --query "adults=2" --sort '{"by":"field","orderBy":{"label":"ASC"}}'
|
|
334
|
+
```
|
|
335
|
+
|
|
223
336
|
Use files instead of environment variables:
|
|
224
337
|
|
|
225
338
|
```sh
|
|
@@ -235,4 +348,4 @@ website-sdk --backend v10 search --locale de-DE --query "adults=2" --output pret
|
|
|
235
348
|
Environment variables:
|
|
236
349
|
|
|
237
350
|
- `v9`: `HUB_GRAPHQL_URL`, `HUB_V1_API_BASE_URL`, optional `HUB_V0_API_BASE_URL`, `HUB_API_KEY`, `IMAGE_PROXY_BASE_URL`.
|
|
238
|
-
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|
|
351
|
+
- `v10`: `VOFFICE_API_ENDPOINT`, `VOFFICE_SEARCH_ENDPOINT`, `VOFFICE_LOCAL_DEV_ACCESS_TOKEN`, `VOFFICE_IMAGE_BASE_URL`.
|