@cimplify/sdk 0.89.0 → 0.92.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/advanced.d.mts +3 -3
- package/dist/advanced.d.ts +3 -3
- package/dist/advanced.js +20 -20
- package/dist/advanced.mjs +1 -1
- package/dist/{chunk-JHJTXAPS.js → chunk-3MBMIEWT.js} +4 -4
- package/dist/{chunk-DENWOZEA.mjs → chunk-3XD2FVP4.mjs} +163 -43
- package/dist/{chunk-M4ALCELT.mjs → chunk-54H2YYIW.mjs} +2 -2
- package/dist/{chunk-T2CJ67QV.js → chunk-DCRN67NO.js} +201 -78
- package/dist/{chunk-T7Z25EY4.js → chunk-HKN3YG76.js} +84 -0
- package/dist/{chunk-GHFDYM5K.js → chunk-IVJEUGWF.js} +10 -1
- package/dist/{chunk-ROBTTS3Q.js → chunk-OAHSF542.js} +40 -1
- package/dist/{chunk-APBLFZ2I.mjs → chunk-PYBFTMHI.mjs} +40 -1
- package/dist/{chunk-OZDDHSIB.mjs → chunk-RRBY35TJ.mjs} +80 -1
- package/dist/{chunk-ZU4ZRYUR.mjs → chunk-T7LDBZZZ.mjs} +10 -1
- package/dist/chunk-U4MW6PYU.mjs +23 -0
- package/dist/chunk-XREIZ56K.js +26 -0
- package/dist/{client-CqZgdUtw.d.ts → client-BQbSKlHS.d.mts} +165 -11
- package/dist/{client-CAY2NbRG.d.mts → client-Bw4HtLP1.d.mts} +2 -2
- package/dist/{client-D8ZFs-sq.d.mts → client-CeW3acve.d.ts} +165 -11
- package/dist/{client-CUbwb6Om.d.ts → client-Otzv_rgP.d.ts} +2 -2
- package/dist/{index-CmWOz9bi.d.mts → index-CmIboQjl.d.mts} +3 -3
- package/dist/{index-Bc5qUxAt.d.ts → index-DgoRwz8l.d.ts} +3 -3
- package/dist/index.d.mts +49 -7
- package/dist/index.d.ts +49 -7
- package/dist/index.js +109 -82
- package/dist/index.mjs +11 -5
- package/dist/mock/cli.mjs +61 -1
- package/dist/mock/library.js +61 -1
- package/dist/mock/library.mjs +61 -1
- package/dist/mock/msw.js +61 -1
- package/dist/mock/msw.mjs +61 -1
- package/dist/{payment-Dcgb9n1n.d.mts → payment-BFtLqiG2.d.mts} +1 -1
- package/dist/{payment-Xq0WDZXh.d.ts → payment-Cq8FT1B6.d.ts} +1 -1
- package/dist/{price-DAAjKgAp.d.ts → price-DaFXT-Lr.d.ts} +1 -1
- package/dist/{price--Ma_WO5_.d.mts → price-DleDWk_s.d.mts} +1 -1
- package/dist/{product-BakHcsP2.d.ts → product-bZ8G5Z8D.d.mts} +95 -2
- package/dist/{product-BakHcsP2.d.mts → product-bZ8G5Z8D.d.ts} +95 -2
- package/dist/react.d.mts +471 -8
- package/dist/react.d.ts +471 -8
- package/dist/react.js +2787 -402
- package/dist/react.mjs +2699 -337
- package/dist/{server-Bk_hlefX.d.mts → server-D-iK-bNt.d.mts} +8 -1
- package/dist/{server-Bei5lBrc.d.ts → server-DwsY9hlX.d.ts} +8 -1
- package/dist/server.d.mts +4 -4
- package/dist/server.d.ts +4 -4
- package/dist/server.js +7 -7
- package/dist/server.mjs +2 -2
- package/dist/styles.css +1 -1
- package/dist/testing/msw.d.mts +2 -2
- package/dist/testing/msw.d.ts +2 -2
- package/dist/testing/msw.js +3 -2
- package/dist/testing/msw.mjs +2 -1
- package/dist/testing/suite.d.mts +6 -6
- package/dist/testing/suite.d.ts +6 -6
- package/dist/testing/suite.js +24 -23
- package/dist/testing/suite.mjs +5 -4
- package/dist/testing.d.mts +5 -5
- package/dist/testing.d.ts +5 -5
- package/dist/testing.js +80 -79
- package/dist/testing.mjs +6 -5
- package/dist/utils.d.mts +4 -4
- package/dist/utils.d.ts +4 -4
- package/package.json +4 -1
- package/registry/booking-page.json +1 -1
- package/registry/chat-widget.json +1 -1
- package/registry/customer-input-fields.json +1 -1
- package/registry/date-slot-picker.json +1 -1
- package/registry/product-customizer.json +1 -1
- package/registry/rental-service-card.json +1 -1
|
@@ -310,6 +310,9 @@ type LineConfiguration = {
|
|
|
310
310
|
primary_staff_id?: string;
|
|
311
311
|
primary_resource_id?: string;
|
|
312
312
|
scheduling_metadata?: Record<string, unknown>;
|
|
313
|
+
price_basis?: "flat" | "per_person" | "per_duration_unit";
|
|
314
|
+
units?: number;
|
|
315
|
+
duration_unit?: DurationUnit;
|
|
313
316
|
} | {
|
|
314
317
|
type: "bundle";
|
|
315
318
|
variant?: VariantDetails;
|
|
@@ -551,6 +554,7 @@ interface CartItemDetails {
|
|
|
551
554
|
confirmation_code?: string;
|
|
552
555
|
service_status?: string;
|
|
553
556
|
staff_id?: string;
|
|
557
|
+
units?: number;
|
|
554
558
|
scheduling_metadata?: Record<string, unknown>;
|
|
555
559
|
bundle_selections?: BundleSelectionInput[];
|
|
556
560
|
bundle_resolved?: BundleSelectionData;
|
|
@@ -609,6 +613,7 @@ interface AddToCartInput {
|
|
|
609
613
|
scheduled_end?: string;
|
|
610
614
|
staff_id?: string;
|
|
611
615
|
resource_id?: string;
|
|
616
|
+
units?: number;
|
|
612
617
|
billing_plan_id?: string;
|
|
613
618
|
customer_inputs?: Array<{
|
|
614
619
|
field_id: string;
|
|
@@ -1554,6 +1559,11 @@ interface components {
|
|
|
1554
1559
|
staff_id?: string | null;
|
|
1555
1560
|
/** @description Assigned or selected primary resource ID (services only) */
|
|
1556
1561
|
resource_id?: string | null;
|
|
1562
|
+
/**
|
|
1563
|
+
* Format: int32
|
|
1564
|
+
* @description Interchangeable whole units reserved (services only)
|
|
1565
|
+
*/
|
|
1566
|
+
units?: number | null;
|
|
1557
1567
|
scheduling_metadata?: null | components["schemas"]["SchedulingMetadata"];
|
|
1558
1568
|
/** @description Customer's bundle component selections (bundles only) */
|
|
1559
1569
|
bundle_selections?: components["schemas"]["BundleSelectionInput"][] | null;
|
|
@@ -1686,12 +1696,18 @@ interface components {
|
|
|
1686
1696
|
id: string;
|
|
1687
1697
|
status: string;
|
|
1688
1698
|
ai_enabled: boolean;
|
|
1699
|
+
needs_human_review: boolean;
|
|
1689
1700
|
/** Format: int32 */
|
|
1690
1701
|
message_count: number;
|
|
1691
1702
|
/** Format: date-time */
|
|
1692
1703
|
created_at: string;
|
|
1693
1704
|
/** Format: date-time */
|
|
1694
1705
|
last_message_at?: string | null;
|
|
1706
|
+
/**
|
|
1707
|
+
* Format: date-time
|
|
1708
|
+
* @description Team-wide read watermark; which agent read is not on this wire.
|
|
1709
|
+
*/
|
|
1710
|
+
team_read_at?: string | null;
|
|
1695
1711
|
};
|
|
1696
1712
|
ChatConversationResponse: {
|
|
1697
1713
|
conversation: components["schemas"]["ChatConversation"];
|
|
@@ -1704,9 +1720,20 @@ interface components {
|
|
|
1704
1720
|
content_type: components["schemas"]["ContentType"];
|
|
1705
1721
|
attachments: Record<string, never>;
|
|
1706
1722
|
metadata: Record<string, never>;
|
|
1723
|
+
reply_to?: null | components["schemas"]["ChatReplyContext"];
|
|
1707
1724
|
/** Format: date-time */
|
|
1708
1725
|
created_at: string;
|
|
1709
1726
|
};
|
|
1727
|
+
/**
|
|
1728
|
+
* @description Server-resolved quote context. Self-contained on purpose: the widget's
|
|
1729
|
+
* local id space doesn't survive reloads, so a bare reference would only
|
|
1730
|
+
* resolve for same-session messages.
|
|
1731
|
+
*/
|
|
1732
|
+
ChatReplyContext: {
|
|
1733
|
+
id: string;
|
|
1734
|
+
sender_type: components["schemas"]["SenderType"];
|
|
1735
|
+
preview: string;
|
|
1736
|
+
};
|
|
1710
1737
|
CheckoutApiResponse: {
|
|
1711
1738
|
order_id: string;
|
|
1712
1739
|
order_number: string;
|
|
@@ -1791,6 +1818,14 @@ interface components {
|
|
|
1791
1818
|
tax_info?: null | components["schemas"]["PricePathTaxInfo"];
|
|
1792
1819
|
pre_tax_price?: string | null;
|
|
1793
1820
|
};
|
|
1821
|
+
ClaimConversationBody: {
|
|
1822
|
+
access_token: string;
|
|
1823
|
+
};
|
|
1824
|
+
ClaimConversationResponse: {
|
|
1825
|
+
session_token: string;
|
|
1826
|
+
thread_id?: string | null;
|
|
1827
|
+
customer_name: string;
|
|
1828
|
+
};
|
|
1794
1829
|
CollectionDetailView: {
|
|
1795
1830
|
collection: components["schemas"]["CollectionView"];
|
|
1796
1831
|
products: components["schemas"]["ProductView"][];
|
|
@@ -2738,6 +2773,10 @@ interface components {
|
|
|
2738
2773
|
primary_staff_id?: string | null;
|
|
2739
2774
|
primary_resource_id?: string | null;
|
|
2740
2775
|
scheduling_metadata?: null | components["schemas"]["SchedulingMetadata"];
|
|
2776
|
+
price_basis?: null | components["schemas"]["PriceBasis"];
|
|
2777
|
+
/** Format: int32 */
|
|
2778
|
+
units?: number | null;
|
|
2779
|
+
duration_unit?: null | components["schemas"]["DurationUnit"];
|
|
2741
2780
|
customer_inputs?: components["schemas"]["CustomerInputValue"][];
|
|
2742
2781
|
/** @enum {string} */
|
|
2743
2782
|
type: "service";
|
|
@@ -2778,6 +2817,19 @@ interface components {
|
|
|
2778
2817
|
logo?: string | null;
|
|
2779
2818
|
currency: string;
|
|
2780
2819
|
is_open: boolean;
|
|
2820
|
+
description?: string | null;
|
|
2821
|
+
phone?: string | null;
|
|
2822
|
+
/**
|
|
2823
|
+
* Format: date-time
|
|
2824
|
+
* @description Next opening moment; present when the store is closed.
|
|
2825
|
+
*/
|
|
2826
|
+
opens_at?: string | null;
|
|
2827
|
+
/**
|
|
2828
|
+
* Format: date-time
|
|
2829
|
+
* @description Current closing moment; present when the store is open.
|
|
2830
|
+
*/
|
|
2831
|
+
closes_at?: string | null;
|
|
2832
|
+
hours: components["schemas"]["LiteDayHoursView"][];
|
|
2781
2833
|
};
|
|
2782
2834
|
LiteBootstrapCategoryView: {
|
|
2783
2835
|
id: string;
|
|
@@ -2785,11 +2837,27 @@ interface components {
|
|
|
2785
2837
|
};
|
|
2786
2838
|
LiteBootstrapLocationView: {
|
|
2787
2839
|
id: string;
|
|
2840
|
+
name?: string | null;
|
|
2841
|
+
area?: string | null;
|
|
2788
2842
|
};
|
|
2789
2843
|
LiteBootstrapView: {
|
|
2790
2844
|
business: components["schemas"]["LiteBootstrapBusinessView"];
|
|
2791
2845
|
categories: components["schemas"]["LiteBootstrapCategoryView"][];
|
|
2792
2846
|
location?: null | components["schemas"]["LiteBootstrapLocationView"];
|
|
2847
|
+
/** @description Every active branch — more than one means the customer can switch. */
|
|
2848
|
+
locations: components["schemas"]["LiteBootstrapLocationView"][];
|
|
2849
|
+
};
|
|
2850
|
+
LiteDayHoursView: {
|
|
2851
|
+
/**
|
|
2852
|
+
* Format: int32
|
|
2853
|
+
* @description Day of week, 0 = Sunday.
|
|
2854
|
+
*/
|
|
2855
|
+
day: number;
|
|
2856
|
+
ranges: components["schemas"]["LiteHoursRangeView"][];
|
|
2857
|
+
};
|
|
2858
|
+
LiteHoursRangeView: {
|
|
2859
|
+
start: string;
|
|
2860
|
+
end: string;
|
|
2793
2861
|
};
|
|
2794
2862
|
LiteResourceResponseView: {
|
|
2795
2863
|
resource: components["schemas"]["LiteResourceView"];
|
|
@@ -3144,6 +3212,8 @@ interface components {
|
|
|
3144
3212
|
confirmation_code?: string | null;
|
|
3145
3213
|
primary_staff_id?: string | null;
|
|
3146
3214
|
primary_resource_id?: string | null;
|
|
3215
|
+
/** Format: int32 */
|
|
3216
|
+
units?: number | null;
|
|
3147
3217
|
service_status?: string | null;
|
|
3148
3218
|
base_price: string;
|
|
3149
3219
|
add_ons_price: string;
|
|
@@ -3350,6 +3420,15 @@ interface components {
|
|
|
3350
3420
|
/** Format: date-time */
|
|
3351
3421
|
applied_at: string;
|
|
3352
3422
|
};
|
|
3423
|
+
/**
|
|
3424
|
+
* @description What a service's price is quoted against, which decides the line-total
|
|
3425
|
+
* multiplier: `Flat` charges once, `PerPerson` scales by party size,
|
|
3426
|
+
* `PerDurationUnit` by the periods stayed (nights, weeks, months — whichever
|
|
3427
|
+
* the service's `duration_unit` counts). Absent falls back to
|
|
3428
|
+
* [`PriceBasis::default_for`] the service's scheduling mode.
|
|
3429
|
+
* @enum {string}
|
|
3430
|
+
*/
|
|
3431
|
+
PriceBasis: "flat" | "per_person" | "per_duration_unit";
|
|
3353
3432
|
PriceDecisionPath: {
|
|
3354
3433
|
base_price_source: components["schemas"]["PriceSource"];
|
|
3355
3434
|
adjustments: components["schemas"]["PriceAdjustment"][];
|
|
@@ -3507,6 +3586,7 @@ interface components {
|
|
|
3507
3586
|
/** Format: int32 */
|
|
3508
3587
|
duration_minutes?: number | null;
|
|
3509
3588
|
duration_unit?: null | components["schemas"]["DurationUnit"];
|
|
3589
|
+
price_basis?: null | components["schemas"]["PriceBasis"];
|
|
3510
3590
|
/** Format: int32 */
|
|
3511
3591
|
preparation_time_minutes?: number | null;
|
|
3512
3592
|
/** Format: int32 */
|
|
@@ -3543,6 +3623,7 @@ interface components {
|
|
|
3543
3623
|
boundary_kind?: null | components["schemas"]["BoundaryKind"];
|
|
3544
3624
|
boundary_start_label?: string | null;
|
|
3545
3625
|
boundary_end_label?: string | null;
|
|
3626
|
+
subject_entity_type?: string | null;
|
|
3546
3627
|
hs_code?: string | null;
|
|
3547
3628
|
mid_code?: string | null;
|
|
3548
3629
|
material?: string | null;
|
|
@@ -4063,10 +4144,19 @@ interface components {
|
|
|
4063
4144
|
* `client_id` is a widget-supplied idempotency key; passed through to
|
|
4064
4145
|
* `CreateMessage.external_id`, so a retried POST with the same id
|
|
4065
4146
|
* returns the originally created message instead of inserting twice.
|
|
4147
|
+
* `reply_to_message_id` quotes another message by the id the customer
|
|
4148
|
+
* actually has — `ChatMessageResponse.id`.
|
|
4066
4149
|
*/
|
|
4067
4150
|
SendMessageBody: {
|
|
4068
4151
|
content: string;
|
|
4069
4152
|
client_id?: string | null;
|
|
4153
|
+
reply_to_message_id?: string | null;
|
|
4154
|
+
/**
|
|
4155
|
+
* @description Ids of image uploads made via `/api/v1/uploads` — the only way to
|
|
4156
|
+
* attach media. The server stores the durable storage reference and
|
|
4157
|
+
* presigns at read time.
|
|
4158
|
+
*/
|
|
4159
|
+
upload_ids?: string[];
|
|
4070
4160
|
};
|
|
4071
4161
|
/** @enum {string} */
|
|
4072
4162
|
SenderType: "customer" | "agent" | "system" | "bot";
|
|
@@ -4752,6 +4842,10 @@ interface Product {
|
|
|
4752
4842
|
type: ProductType;
|
|
4753
4843
|
render_hint?: ProductRenderHint;
|
|
4754
4844
|
display_mode?: DisplayMode;
|
|
4845
|
+
/** Present on list payloads too — the menu serializes these on every item. */
|
|
4846
|
+
variants?: VariantView[];
|
|
4847
|
+
variant_axes?: VariantAxisWithValues[];
|
|
4848
|
+
add_on_ids?: string[];
|
|
4755
4849
|
inventory_type: InventoryType;
|
|
4756
4850
|
variant_strategy: VariantStrategy;
|
|
4757
4851
|
inventory_status?: {
|
|
@@ -4828,6 +4922,7 @@ interface Product {
|
|
|
4828
4922
|
max_stay?: number;
|
|
4829
4923
|
check_in_time?: string;
|
|
4830
4924
|
check_out_time?: string;
|
|
4925
|
+
price_basis?: "flat" | "per_person" | "per_duration_unit";
|
|
4831
4926
|
boundary_kind?: BoundaryKind | null;
|
|
4832
4927
|
boundary_start_label?: string | null;
|
|
4833
4928
|
boundary_end_label?: string | null;
|
|
@@ -4962,9 +5057,7 @@ interface RelatedProductView {
|
|
|
4962
5057
|
}
|
|
4963
5058
|
interface ProductWithDetails extends Product {
|
|
4964
5059
|
category?: Category;
|
|
4965
|
-
variants?: VariantView[];
|
|
4966
5060
|
add_ons?: AddOnWithOptions[];
|
|
4967
|
-
variant_axes?: VariantAxisWithValues[];
|
|
4968
5061
|
location_prices?: LocationProductPrice[];
|
|
4969
5062
|
location_availability?: ProductAvailability[];
|
|
4970
5063
|
time_profiles?: ProductTimeProfile[];
|
|
@@ -310,6 +310,9 @@ type LineConfiguration = {
|
|
|
310
310
|
primary_staff_id?: string;
|
|
311
311
|
primary_resource_id?: string;
|
|
312
312
|
scheduling_metadata?: Record<string, unknown>;
|
|
313
|
+
price_basis?: "flat" | "per_person" | "per_duration_unit";
|
|
314
|
+
units?: number;
|
|
315
|
+
duration_unit?: DurationUnit;
|
|
313
316
|
} | {
|
|
314
317
|
type: "bundle";
|
|
315
318
|
variant?: VariantDetails;
|
|
@@ -551,6 +554,7 @@ interface CartItemDetails {
|
|
|
551
554
|
confirmation_code?: string;
|
|
552
555
|
service_status?: string;
|
|
553
556
|
staff_id?: string;
|
|
557
|
+
units?: number;
|
|
554
558
|
scheduling_metadata?: Record<string, unknown>;
|
|
555
559
|
bundle_selections?: BundleSelectionInput[];
|
|
556
560
|
bundle_resolved?: BundleSelectionData;
|
|
@@ -609,6 +613,7 @@ interface AddToCartInput {
|
|
|
609
613
|
scheduled_end?: string;
|
|
610
614
|
staff_id?: string;
|
|
611
615
|
resource_id?: string;
|
|
616
|
+
units?: number;
|
|
612
617
|
billing_plan_id?: string;
|
|
613
618
|
customer_inputs?: Array<{
|
|
614
619
|
field_id: string;
|
|
@@ -1554,6 +1559,11 @@ interface components {
|
|
|
1554
1559
|
staff_id?: string | null;
|
|
1555
1560
|
/** @description Assigned or selected primary resource ID (services only) */
|
|
1556
1561
|
resource_id?: string | null;
|
|
1562
|
+
/**
|
|
1563
|
+
* Format: int32
|
|
1564
|
+
* @description Interchangeable whole units reserved (services only)
|
|
1565
|
+
*/
|
|
1566
|
+
units?: number | null;
|
|
1557
1567
|
scheduling_metadata?: null | components["schemas"]["SchedulingMetadata"];
|
|
1558
1568
|
/** @description Customer's bundle component selections (bundles only) */
|
|
1559
1569
|
bundle_selections?: components["schemas"]["BundleSelectionInput"][] | null;
|
|
@@ -1686,12 +1696,18 @@ interface components {
|
|
|
1686
1696
|
id: string;
|
|
1687
1697
|
status: string;
|
|
1688
1698
|
ai_enabled: boolean;
|
|
1699
|
+
needs_human_review: boolean;
|
|
1689
1700
|
/** Format: int32 */
|
|
1690
1701
|
message_count: number;
|
|
1691
1702
|
/** Format: date-time */
|
|
1692
1703
|
created_at: string;
|
|
1693
1704
|
/** Format: date-time */
|
|
1694
1705
|
last_message_at?: string | null;
|
|
1706
|
+
/**
|
|
1707
|
+
* Format: date-time
|
|
1708
|
+
* @description Team-wide read watermark; which agent read is not on this wire.
|
|
1709
|
+
*/
|
|
1710
|
+
team_read_at?: string | null;
|
|
1695
1711
|
};
|
|
1696
1712
|
ChatConversationResponse: {
|
|
1697
1713
|
conversation: components["schemas"]["ChatConversation"];
|
|
@@ -1704,9 +1720,20 @@ interface components {
|
|
|
1704
1720
|
content_type: components["schemas"]["ContentType"];
|
|
1705
1721
|
attachments: Record<string, never>;
|
|
1706
1722
|
metadata: Record<string, never>;
|
|
1723
|
+
reply_to?: null | components["schemas"]["ChatReplyContext"];
|
|
1707
1724
|
/** Format: date-time */
|
|
1708
1725
|
created_at: string;
|
|
1709
1726
|
};
|
|
1727
|
+
/**
|
|
1728
|
+
* @description Server-resolved quote context. Self-contained on purpose: the widget's
|
|
1729
|
+
* local id space doesn't survive reloads, so a bare reference would only
|
|
1730
|
+
* resolve for same-session messages.
|
|
1731
|
+
*/
|
|
1732
|
+
ChatReplyContext: {
|
|
1733
|
+
id: string;
|
|
1734
|
+
sender_type: components["schemas"]["SenderType"];
|
|
1735
|
+
preview: string;
|
|
1736
|
+
};
|
|
1710
1737
|
CheckoutApiResponse: {
|
|
1711
1738
|
order_id: string;
|
|
1712
1739
|
order_number: string;
|
|
@@ -1791,6 +1818,14 @@ interface components {
|
|
|
1791
1818
|
tax_info?: null | components["schemas"]["PricePathTaxInfo"];
|
|
1792
1819
|
pre_tax_price?: string | null;
|
|
1793
1820
|
};
|
|
1821
|
+
ClaimConversationBody: {
|
|
1822
|
+
access_token: string;
|
|
1823
|
+
};
|
|
1824
|
+
ClaimConversationResponse: {
|
|
1825
|
+
session_token: string;
|
|
1826
|
+
thread_id?: string | null;
|
|
1827
|
+
customer_name: string;
|
|
1828
|
+
};
|
|
1794
1829
|
CollectionDetailView: {
|
|
1795
1830
|
collection: components["schemas"]["CollectionView"];
|
|
1796
1831
|
products: components["schemas"]["ProductView"][];
|
|
@@ -2738,6 +2773,10 @@ interface components {
|
|
|
2738
2773
|
primary_staff_id?: string | null;
|
|
2739
2774
|
primary_resource_id?: string | null;
|
|
2740
2775
|
scheduling_metadata?: null | components["schemas"]["SchedulingMetadata"];
|
|
2776
|
+
price_basis?: null | components["schemas"]["PriceBasis"];
|
|
2777
|
+
/** Format: int32 */
|
|
2778
|
+
units?: number | null;
|
|
2779
|
+
duration_unit?: null | components["schemas"]["DurationUnit"];
|
|
2741
2780
|
customer_inputs?: components["schemas"]["CustomerInputValue"][];
|
|
2742
2781
|
/** @enum {string} */
|
|
2743
2782
|
type: "service";
|
|
@@ -2778,6 +2817,19 @@ interface components {
|
|
|
2778
2817
|
logo?: string | null;
|
|
2779
2818
|
currency: string;
|
|
2780
2819
|
is_open: boolean;
|
|
2820
|
+
description?: string | null;
|
|
2821
|
+
phone?: string | null;
|
|
2822
|
+
/**
|
|
2823
|
+
* Format: date-time
|
|
2824
|
+
* @description Next opening moment; present when the store is closed.
|
|
2825
|
+
*/
|
|
2826
|
+
opens_at?: string | null;
|
|
2827
|
+
/**
|
|
2828
|
+
* Format: date-time
|
|
2829
|
+
* @description Current closing moment; present when the store is open.
|
|
2830
|
+
*/
|
|
2831
|
+
closes_at?: string | null;
|
|
2832
|
+
hours: components["schemas"]["LiteDayHoursView"][];
|
|
2781
2833
|
};
|
|
2782
2834
|
LiteBootstrapCategoryView: {
|
|
2783
2835
|
id: string;
|
|
@@ -2785,11 +2837,27 @@ interface components {
|
|
|
2785
2837
|
};
|
|
2786
2838
|
LiteBootstrapLocationView: {
|
|
2787
2839
|
id: string;
|
|
2840
|
+
name?: string | null;
|
|
2841
|
+
area?: string | null;
|
|
2788
2842
|
};
|
|
2789
2843
|
LiteBootstrapView: {
|
|
2790
2844
|
business: components["schemas"]["LiteBootstrapBusinessView"];
|
|
2791
2845
|
categories: components["schemas"]["LiteBootstrapCategoryView"][];
|
|
2792
2846
|
location?: null | components["schemas"]["LiteBootstrapLocationView"];
|
|
2847
|
+
/** @description Every active branch — more than one means the customer can switch. */
|
|
2848
|
+
locations: components["schemas"]["LiteBootstrapLocationView"][];
|
|
2849
|
+
};
|
|
2850
|
+
LiteDayHoursView: {
|
|
2851
|
+
/**
|
|
2852
|
+
* Format: int32
|
|
2853
|
+
* @description Day of week, 0 = Sunday.
|
|
2854
|
+
*/
|
|
2855
|
+
day: number;
|
|
2856
|
+
ranges: components["schemas"]["LiteHoursRangeView"][];
|
|
2857
|
+
};
|
|
2858
|
+
LiteHoursRangeView: {
|
|
2859
|
+
start: string;
|
|
2860
|
+
end: string;
|
|
2793
2861
|
};
|
|
2794
2862
|
LiteResourceResponseView: {
|
|
2795
2863
|
resource: components["schemas"]["LiteResourceView"];
|
|
@@ -3144,6 +3212,8 @@ interface components {
|
|
|
3144
3212
|
confirmation_code?: string | null;
|
|
3145
3213
|
primary_staff_id?: string | null;
|
|
3146
3214
|
primary_resource_id?: string | null;
|
|
3215
|
+
/** Format: int32 */
|
|
3216
|
+
units?: number | null;
|
|
3147
3217
|
service_status?: string | null;
|
|
3148
3218
|
base_price: string;
|
|
3149
3219
|
add_ons_price: string;
|
|
@@ -3350,6 +3420,15 @@ interface components {
|
|
|
3350
3420
|
/** Format: date-time */
|
|
3351
3421
|
applied_at: string;
|
|
3352
3422
|
};
|
|
3423
|
+
/**
|
|
3424
|
+
* @description What a service's price is quoted against, which decides the line-total
|
|
3425
|
+
* multiplier: `Flat` charges once, `PerPerson` scales by party size,
|
|
3426
|
+
* `PerDurationUnit` by the periods stayed (nights, weeks, months — whichever
|
|
3427
|
+
* the service's `duration_unit` counts). Absent falls back to
|
|
3428
|
+
* [`PriceBasis::default_for`] the service's scheduling mode.
|
|
3429
|
+
* @enum {string}
|
|
3430
|
+
*/
|
|
3431
|
+
PriceBasis: "flat" | "per_person" | "per_duration_unit";
|
|
3353
3432
|
PriceDecisionPath: {
|
|
3354
3433
|
base_price_source: components["schemas"]["PriceSource"];
|
|
3355
3434
|
adjustments: components["schemas"]["PriceAdjustment"][];
|
|
@@ -3507,6 +3586,7 @@ interface components {
|
|
|
3507
3586
|
/** Format: int32 */
|
|
3508
3587
|
duration_minutes?: number | null;
|
|
3509
3588
|
duration_unit?: null | components["schemas"]["DurationUnit"];
|
|
3589
|
+
price_basis?: null | components["schemas"]["PriceBasis"];
|
|
3510
3590
|
/** Format: int32 */
|
|
3511
3591
|
preparation_time_minutes?: number | null;
|
|
3512
3592
|
/** Format: int32 */
|
|
@@ -3543,6 +3623,7 @@ interface components {
|
|
|
3543
3623
|
boundary_kind?: null | components["schemas"]["BoundaryKind"];
|
|
3544
3624
|
boundary_start_label?: string | null;
|
|
3545
3625
|
boundary_end_label?: string | null;
|
|
3626
|
+
subject_entity_type?: string | null;
|
|
3546
3627
|
hs_code?: string | null;
|
|
3547
3628
|
mid_code?: string | null;
|
|
3548
3629
|
material?: string | null;
|
|
@@ -4063,10 +4144,19 @@ interface components {
|
|
|
4063
4144
|
* `client_id` is a widget-supplied idempotency key; passed through to
|
|
4064
4145
|
* `CreateMessage.external_id`, so a retried POST with the same id
|
|
4065
4146
|
* returns the originally created message instead of inserting twice.
|
|
4147
|
+
* `reply_to_message_id` quotes another message by the id the customer
|
|
4148
|
+
* actually has — `ChatMessageResponse.id`.
|
|
4066
4149
|
*/
|
|
4067
4150
|
SendMessageBody: {
|
|
4068
4151
|
content: string;
|
|
4069
4152
|
client_id?: string | null;
|
|
4153
|
+
reply_to_message_id?: string | null;
|
|
4154
|
+
/**
|
|
4155
|
+
* @description Ids of image uploads made via `/api/v1/uploads` — the only way to
|
|
4156
|
+
* attach media. The server stores the durable storage reference and
|
|
4157
|
+
* presigns at read time.
|
|
4158
|
+
*/
|
|
4159
|
+
upload_ids?: string[];
|
|
4070
4160
|
};
|
|
4071
4161
|
/** @enum {string} */
|
|
4072
4162
|
SenderType: "customer" | "agent" | "system" | "bot";
|
|
@@ -4752,6 +4842,10 @@ interface Product {
|
|
|
4752
4842
|
type: ProductType;
|
|
4753
4843
|
render_hint?: ProductRenderHint;
|
|
4754
4844
|
display_mode?: DisplayMode;
|
|
4845
|
+
/** Present on list payloads too — the menu serializes these on every item. */
|
|
4846
|
+
variants?: VariantView[];
|
|
4847
|
+
variant_axes?: VariantAxisWithValues[];
|
|
4848
|
+
add_on_ids?: string[];
|
|
4755
4849
|
inventory_type: InventoryType;
|
|
4756
4850
|
variant_strategy: VariantStrategy;
|
|
4757
4851
|
inventory_status?: {
|
|
@@ -4828,6 +4922,7 @@ interface Product {
|
|
|
4828
4922
|
max_stay?: number;
|
|
4829
4923
|
check_in_time?: string;
|
|
4830
4924
|
check_out_time?: string;
|
|
4925
|
+
price_basis?: "flat" | "per_person" | "per_duration_unit";
|
|
4831
4926
|
boundary_kind?: BoundaryKind | null;
|
|
4832
4927
|
boundary_start_label?: string | null;
|
|
4833
4928
|
boundary_end_label?: string | null;
|
|
@@ -4962,9 +5057,7 @@ interface RelatedProductView {
|
|
|
4962
5057
|
}
|
|
4963
5058
|
interface ProductWithDetails extends Product {
|
|
4964
5059
|
category?: Category;
|
|
4965
|
-
variants?: VariantView[];
|
|
4966
5060
|
add_ons?: AddOnWithOptions[];
|
|
4967
|
-
variant_axes?: VariantAxisWithValues[];
|
|
4968
5061
|
location_prices?: LocationProductPrice[];
|
|
4969
5062
|
location_availability?: ProductAvailability[];
|
|
4970
5063
|
time_profiles?: ProductTimeProfile[];
|