@voyantjs/bookings-react 0.50.4 → 0.50.6
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/hooks/index.d.ts +1 -1
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -1
- package/dist/hooks/use-booking-convert-mutation.d.ts +1 -1
- package/dist/hooks/use-booking-convert-mutation.js +1 -1
- package/dist/hooks/{use-booking-quick-create-mutation.d.ts → use-booking-create-mutation.d.ts} +35 -15
- package/dist/hooks/use-booking-create-mutation.d.ts.map +1 -0
- package/dist/hooks/{use-booking-quick-create-mutation.js → use-booking-create-mutation.js} +8 -5
- package/dist/hooks/use-booking-dual-create-mutation.d.ts +5 -5
- package/dist/hooks/use-booking-dual-create-mutation.d.ts.map +1 -1
- package/dist/hooks/use-booking-dual-create-mutation.js +2 -2
- package/package.json +5 -5
- package/dist/hooks/use-booking-quick-create-mutation.d.ts.map +0 -1
package/dist/hooks/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ export { type UseBookingOptions, useBooking } from "./use-booking.js";
|
|
|
2
2
|
export { type UseBookingActivityOptions, useBookingActivity } from "./use-booking-activity.js";
|
|
3
3
|
export { type CancelBookingInput, useBookingCancelMutation, } from "./use-booking-cancel-mutation.js";
|
|
4
4
|
export { type ConvertProductToBookingInput, useBookingConvertMutation, } from "./use-booking-convert-mutation.js";
|
|
5
|
+
export { type BookingCreateGroupMembershipInput, type BookingCreateInput, type BookingCreateItemLineInput, type BookingCreatePaymentScheduleInput, type BookingCreateResult, type BookingCreateTravelerInput, type BookingCreateVoucherRedemptionInput, useBookingCreateMutation, } from "./use-booking-create-mutation.js";
|
|
5
6
|
export { type CreateBookingTravelerDocumentInput, type UseBookingTravelerDocumentsOptions, useBookingTravelerDocumentMutation, useBookingTravelerDocuments, } from "./use-booking-documents.js";
|
|
6
7
|
export { type DualCreateBookingInput, type DualCreateBookingResult, type DualCreateGroupInput, type DualCreateSubBookingInput, useBookingDualCreateMutation, } from "./use-booking-dual-create-mutation.js";
|
|
7
8
|
export { type UseBookingGroupOptions, useBookingGroup } from "./use-booking-group.js";
|
|
@@ -16,7 +17,6 @@ export { type CreateBookingInput, type UpdateBookingInput, useBookingMutation, }
|
|
|
16
17
|
export { type CreateBookingNoteInput, useBookingNoteMutation, } from "./use-booking-note-mutation.js";
|
|
17
18
|
export { type UseBookingNotesOptions, useBookingNotes } from "./use-booking-notes.js";
|
|
18
19
|
export { type UseBookingPrimaryProductOptions, type UseBookingPrimaryProductResult, useBookingPrimaryProduct, } from "./use-booking-primary-product.js";
|
|
19
|
-
export { type QuickCreateBookingInput, type QuickCreateBookingResult, type QuickCreateGroupMembershipInput, type QuickCreatePaymentScheduleInput, type QuickCreateTravelerInput, type QuickCreateVoucherRedemptionInput, useBookingQuickCreateMutation, } from "./use-booking-quick-create-mutation.js";
|
|
20
20
|
export { type UpdateBookingStatusByIdInput, type UpdateBookingStatusInput, useBookingStatusByIdMutation, useBookingStatusMutation, } from "./use-booking-status-mutation.js";
|
|
21
21
|
export { type UseBookingsOptions, useBookings } from "./use-bookings.js";
|
|
22
22
|
export { type UsePricingPreviewOptions, usePricingPreview } from "./use-pricing-preview.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AACrE,OAAO,EAAE,KAAK,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9F,OAAO,EACL,KAAK,kBAAkB,EACvB,wBAAwB,GACzB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACL,KAAK,4BAA4B,EACjC,yBAAyB,GAC1B,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EACL,KAAK,kCAAkC,EACvC,KAAK,kCAAkC,EACvC,kCAAkC,EAClC,2BAA2B,GAC5B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,4BAA4B,GAC7B,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EAAE,KAAK,sBAAsB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACrF,OAAO,EACL,KAAK,gCAAgC,EACrC,yBAAyB,GAC1B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,KAAK,0BAA0B,EAC/B,6BAA6B,GAC9B,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,uBAAuB,GACxB,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,KAAK,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AACxF,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,sBAAsB,GACvB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,8BAA8B,EACnC,8BAA8B,EAC9B,uBAAuB,GACxB,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,KAAK,sBAAsB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACrF,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,kBAAkB,GACnB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,KAAK,sBAAsB,EAC3B,sBAAsB,GACvB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,KAAK,sBAAsB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACrF,OAAO,EACL,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,EACnC,wBAAwB,GACzB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACL,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"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"}
|
package/dist/hooks/index.js
CHANGED
|
@@ -2,6 +2,7 @@ export { useBooking } from "./use-booking.js";
|
|
|
2
2
|
export { useBookingActivity } from "./use-booking-activity.js";
|
|
3
3
|
export { useBookingCancelMutation, } from "./use-booking-cancel-mutation.js";
|
|
4
4
|
export { useBookingConvertMutation, } from "./use-booking-convert-mutation.js";
|
|
5
|
+
export { useBookingCreateMutation, } from "./use-booking-create-mutation.js";
|
|
5
6
|
export { useBookingTravelerDocumentMutation, useBookingTravelerDocuments, } from "./use-booking-documents.js";
|
|
6
7
|
export { useBookingDualCreateMutation, } from "./use-booking-dual-create-mutation.js";
|
|
7
8
|
export { useBookingGroup } from "./use-booking-group.js";
|
|
@@ -16,7 +17,6 @@ export { useBookingMutation, } from "./use-booking-mutation.js";
|
|
|
16
17
|
export { useBookingNoteMutation, } from "./use-booking-note-mutation.js";
|
|
17
18
|
export { useBookingNotes } from "./use-booking-notes.js";
|
|
18
19
|
export { useBookingPrimaryProduct, } from "./use-booking-primary-product.js";
|
|
19
|
-
export { useBookingQuickCreateMutation, } from "./use-booking-quick-create-mutation.js";
|
|
20
20
|
export { useBookingStatusByIdMutation, useBookingStatusMutation, } from "./use-booking-status-mutation.js";
|
|
21
21
|
export { useBookings } from "./use-bookings.js";
|
|
22
22
|
export { usePricingPreview } from "./use-pricing-preview.js";
|
|
@@ -14,7 +14,7 @@ export interface ConvertProductToBookingInput {
|
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
16
|
* Creates a draft booking from a product via POST /v1/bookings/from-product.
|
|
17
|
-
* Purpose-built for the operator
|
|
17
|
+
* Purpose-built for the operator booking-create flow — the backend seeds items,
|
|
18
18
|
* dates, and pricing from the product definition.
|
|
19
19
|
*/
|
|
20
20
|
export declare function useBookingConvertMutation(): import("@tanstack/react-query").UseMutationResult<{
|
|
@@ -6,7 +6,7 @@ import { bookingsQueryKeys } from "../query-keys.js";
|
|
|
6
6
|
import { bookingSingleResponse } from "../schemas.js";
|
|
7
7
|
/**
|
|
8
8
|
* Creates a draft booking from a product via POST /v1/bookings/from-product.
|
|
9
|
-
* Purpose-built for the operator
|
|
9
|
+
* Purpose-built for the operator booking-create flow — the backend seeds items,
|
|
10
10
|
* dates, and pricing from the product definition.
|
|
11
11
|
*/
|
|
12
12
|
export function useBookingConvertMutation() {
|
package/dist/hooks/{use-booking-quick-create-mutation.d.ts → use-booking-create-mutation.d.ts}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
export interface
|
|
2
|
+
export interface BookingCreateTravelerInput {
|
|
3
3
|
firstName: string;
|
|
4
4
|
lastName: string;
|
|
5
5
|
email?: string | null;
|
|
@@ -19,7 +19,7 @@ export interface QuickCreateTravelerInput {
|
|
|
19
19
|
isPrimary?: boolean | null;
|
|
20
20
|
notes?: string | null;
|
|
21
21
|
}
|
|
22
|
-
export interface
|
|
22
|
+
export interface BookingCreatePaymentScheduleInput {
|
|
23
23
|
scheduleType?: "deposit" | "installment" | "balance" | "hold" | "other";
|
|
24
24
|
status?: "pending" | "due" | "paid" | "waived" | "cancelled" | "expired";
|
|
25
25
|
dueDate: string;
|
|
@@ -27,11 +27,23 @@ export interface QuickCreatePaymentScheduleInput {
|
|
|
27
27
|
amountCents: number;
|
|
28
28
|
notes?: string | null;
|
|
29
29
|
}
|
|
30
|
-
export interface
|
|
30
|
+
export interface BookingCreateDocumentGenerationInput {
|
|
31
|
+
contractDocument?: boolean;
|
|
32
|
+
invoiceDocument?: boolean;
|
|
33
|
+
}
|
|
34
|
+
export interface BookingCreateItemLineInput {
|
|
35
|
+
optionUnitId: string;
|
|
36
|
+
quantity: number;
|
|
37
|
+
title?: string | null;
|
|
38
|
+
description?: string | null;
|
|
39
|
+
unitSellAmountCents?: number | null;
|
|
40
|
+
totalSellAmountCents?: number | null;
|
|
41
|
+
}
|
|
42
|
+
export interface BookingCreateVoucherRedemptionInput {
|
|
31
43
|
voucherId: string;
|
|
32
44
|
amountCents: number;
|
|
33
45
|
}
|
|
34
|
-
export type
|
|
46
|
+
export type BookingCreateGroupMembershipInput = {
|
|
35
47
|
action: "join";
|
|
36
48
|
groupId: string;
|
|
37
49
|
role?: "primary" | "shared";
|
|
@@ -42,7 +54,7 @@ export type QuickCreateGroupMembershipInput = {
|
|
|
42
54
|
optionUnitId?: string | null;
|
|
43
55
|
makeBookingPrimary?: boolean;
|
|
44
56
|
};
|
|
45
|
-
export interface
|
|
57
|
+
export interface BookingCreateInput {
|
|
46
58
|
productId: string;
|
|
47
59
|
optionId?: string | null;
|
|
48
60
|
slotId?: string | null;
|
|
@@ -53,12 +65,14 @@ export interface QuickCreateBookingInput {
|
|
|
53
65
|
catalogSellAmountCents?: number | null;
|
|
54
66
|
confirmedSellAmountCents?: number | null;
|
|
55
67
|
priceOverrideReason?: string | null;
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
68
|
+
itemLines?: BookingCreateItemLineInput[];
|
|
69
|
+
travelers?: BookingCreateTravelerInput[];
|
|
70
|
+
paymentSchedules?: BookingCreatePaymentScheduleInput[];
|
|
71
|
+
voucherRedemption?: BookingCreateVoucherRedemptionInput;
|
|
72
|
+
groupMembership?: BookingCreateGroupMembershipInput;
|
|
73
|
+
documentGeneration?: BookingCreateDocumentGenerationInput;
|
|
60
74
|
}
|
|
61
|
-
declare const
|
|
75
|
+
declare const bookingCreateResultSchema: z.ZodObject<{
|
|
62
76
|
booking: z.ZodObject<{
|
|
63
77
|
id: z.ZodString;
|
|
64
78
|
bookingNumber: z.ZodString;
|
|
@@ -132,16 +146,19 @@ declare const quickCreateResultSchema: z.ZodObject<{
|
|
|
132
146
|
paymentSchedules: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
133
147
|
voucherRedemption: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
|
|
134
148
|
groupMembership: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
|
|
149
|
+
invoice: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
|
|
150
|
+
invoiceDocument: z.ZodOptional<z.ZodUnknown>;
|
|
151
|
+
payments: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
135
152
|
}, z.core.$strip>;
|
|
136
|
-
export type
|
|
153
|
+
export type BookingCreateResult = z.infer<typeof bookingCreateResultSchema>;
|
|
137
154
|
/**
|
|
138
|
-
* Atomic booking-create: calls `POST /v1/bookings/
|
|
155
|
+
* Atomic booking-create: calls `POST /v1/bookings/create` which wraps
|
|
139
156
|
* convert-from-product + travelers + payment schedules + voucher redemption
|
|
140
157
|
* + group membership in one transaction. Prefer this over chaining the
|
|
141
158
|
* separate create mutations (convert, group, traveler) from a single submit
|
|
142
159
|
* handler — a mid-chain failure there leaves orphan state.
|
|
143
160
|
*/
|
|
144
|
-
export declare function
|
|
161
|
+
export declare function useBookingCreateMutation(): import("@tanstack/react-query").UseMutationResult<{
|
|
145
162
|
booking: {
|
|
146
163
|
id: string;
|
|
147
164
|
bookingNumber: string;
|
|
@@ -202,6 +219,9 @@ export declare function useBookingQuickCreateMutation(): import("@tanstack/react
|
|
|
202
219
|
paymentSchedules?: unknown[] | undefined;
|
|
203
220
|
voucherRedemption?: unknown;
|
|
204
221
|
groupMembership?: unknown;
|
|
205
|
-
|
|
222
|
+
invoice?: unknown;
|
|
223
|
+
invoiceDocument?: unknown;
|
|
224
|
+
payments?: unknown[] | undefined;
|
|
225
|
+
}, Error, BookingCreateInput, unknown>;
|
|
206
226
|
export {};
|
|
207
|
-
//# sourceMappingURL=use-booking-
|
|
227
|
+
//# sourceMappingURL=use-booking-create-mutation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-booking-create-mutation.d.ts","sourceRoot":"","sources":["../../src/hooks/use-booking-create-mutation.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,27 +10,30 @@ import { bookingRecordSchema } from "../schemas.js";
|
|
|
10
10
|
// pass the rest through as-is so the surface can evolve without breaking
|
|
11
11
|
// clients. Callers who want typed assertions on the extras can narrow on the
|
|
12
12
|
// result.
|
|
13
|
-
const
|
|
13
|
+
const bookingCreateResultSchema = z.object({
|
|
14
14
|
booking: bookingRecordSchema,
|
|
15
15
|
travelers: z.array(z.unknown()).optional(),
|
|
16
16
|
paymentSchedules: z.array(z.unknown()).optional(),
|
|
17
17
|
voucherRedemption: z.unknown().nullable().optional(),
|
|
18
18
|
groupMembership: z.unknown().nullable().optional(),
|
|
19
|
+
invoice: z.unknown().nullable().optional(),
|
|
20
|
+
invoiceDocument: z.unknown().optional(),
|
|
21
|
+
payments: z.array(z.unknown()).optional(),
|
|
19
22
|
});
|
|
20
|
-
const
|
|
23
|
+
const bookingCreateResponseSchema = z.object({ data: bookingCreateResultSchema });
|
|
21
24
|
/**
|
|
22
|
-
* Atomic booking-create: calls `POST /v1/bookings/
|
|
25
|
+
* Atomic booking-create: calls `POST /v1/bookings/create` which wraps
|
|
23
26
|
* convert-from-product + travelers + payment schedules + voucher redemption
|
|
24
27
|
* + group membership in one transaction. Prefer this over chaining the
|
|
25
28
|
* separate create mutations (convert, group, traveler) from a single submit
|
|
26
29
|
* handler — a mid-chain failure there leaves orphan state.
|
|
27
30
|
*/
|
|
28
|
-
export function
|
|
31
|
+
export function useBookingCreateMutation() {
|
|
29
32
|
const { baseUrl, fetcher } = useVoyantBookingsContext();
|
|
30
33
|
const queryClient = useQueryClient();
|
|
31
34
|
return useMutation({
|
|
32
35
|
mutationFn: async (input) => {
|
|
33
|
-
const { data } = await fetchWithValidation("/v1/bookings/
|
|
36
|
+
const { data } = await fetchWithValidation("/v1/bookings/create", bookingCreateResponseSchema, { baseUrl, fetcher }, { method: "POST", body: JSON.stringify(input) });
|
|
34
37
|
return data;
|
|
35
38
|
},
|
|
36
39
|
onSuccess: () => {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import type {
|
|
2
|
+
import type { BookingCreateInput } from "./use-booking-create-mutation.js";
|
|
3
3
|
/**
|
|
4
|
-
* Sub-booking payload for dual-create. Same shape as
|
|
4
|
+
* Sub-booking payload for dual-create. Same shape as createBooking input
|
|
5
5
|
* minus `groupMembership` — the dual endpoint manages the group itself.
|
|
6
6
|
*/
|
|
7
|
-
export type DualCreateSubBookingInput = Omit<
|
|
7
|
+
export type DualCreateSubBookingInput = Omit<BookingCreateInput, "groupMembership">;
|
|
8
8
|
export interface DualCreateGroupInput {
|
|
9
9
|
kind?: "shared_room" | "other";
|
|
10
10
|
label?: string | null;
|
|
@@ -176,8 +176,8 @@ declare const dualCreateResultSchema: z.ZodObject<{
|
|
|
176
176
|
export type DualCreateBookingResult = z.infer<typeof dualCreateResultSchema>;
|
|
177
177
|
/**
|
|
178
178
|
* Atomic dual-booking (partaj) create: calls `POST /v1/bookings/dual-create`
|
|
179
|
-
* which wraps two
|
|
180
|
-
* transaction. Use this over calling
|
|
179
|
+
* which wraps two createBooking calls + one booking_group in a single
|
|
180
|
+
* transaction. Use this over calling useBookingCreateMutation twice
|
|
181
181
|
* from a submit handler — a failure on the second call there would leave
|
|
182
182
|
* the first booking orphaned.
|
|
183
183
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-booking-dual-create-mutation.d.ts","sourceRoot":"","sources":["../../src/hooks/use-booking-dual-create-mutation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"use-booking-dual-create-mutation.d.ts","sourceRoot":"","sources":["../../src/hooks/use-booking-dual-create-mutation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAE1E;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAA;AAEnF,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAA;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC7B;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,yBAAyB,CAAA;IAClC,SAAS,EAAE,yBAAyB,CAAA;IACpC,KAAK,CAAC,EAAE,oBAAoB,CAAA;CAC7B;AAED,QAAA,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAgB1B,CAAA;AAIF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE5E;;;;;;GAMG;AACH,wBAAgB,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAkB3C"}
|
|
@@ -25,8 +25,8 @@ const dualCreateResultSchema = z.object({
|
|
|
25
25
|
const dualCreateResponseSchema = z.object({ data: dualCreateResultSchema });
|
|
26
26
|
/**
|
|
27
27
|
* Atomic dual-booking (partaj) create: calls `POST /v1/bookings/dual-create`
|
|
28
|
-
* which wraps two
|
|
29
|
-
* transaction. Use this over calling
|
|
28
|
+
* which wraps two createBooking calls + one booking_group in a single
|
|
29
|
+
* transaction. Use this over calling useBookingCreateMutation twice
|
|
30
30
|
* from a submit handler — a failure on the second call there would leave
|
|
31
31
|
* the first booking orphaned.
|
|
32
32
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@voyantjs/bookings-react",
|
|
3
|
-
"version": "0.50.
|
|
3
|
+
"version": "0.50.6",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"react": "^19.0.0",
|
|
42
42
|
"react-dom": "^19.0.0",
|
|
43
43
|
"zod": "^4.0.0",
|
|
44
|
-
"@voyantjs/bookings": "0.50.
|
|
44
|
+
"@voyantjs/bookings": "0.50.6"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@tanstack/react-query": "^5.96.2",
|
|
@@ -52,12 +52,12 @@
|
|
|
52
52
|
"typescript": "^6.0.2",
|
|
53
53
|
"vitest": "^4.1.2",
|
|
54
54
|
"zod": "^4.3.6",
|
|
55
|
-
"@voyantjs/bookings": "0.50.
|
|
56
|
-
"@voyantjs/react": "0.50.
|
|
55
|
+
"@voyantjs/bookings": "0.50.6",
|
|
56
|
+
"@voyantjs/react": "0.50.6",
|
|
57
57
|
"@voyantjs/voyant-typescript-config": "0.1.0"
|
|
58
58
|
},
|
|
59
59
|
"dependencies": {
|
|
60
|
-
"@voyantjs/react": "0.50.
|
|
60
|
+
"@voyantjs/react": "0.50.6"
|
|
61
61
|
},
|
|
62
62
|
"files": [
|
|
63
63
|
"dist"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-booking-quick-create-mutation.d.ts","sourceRoot":"","sources":["../../src/hooks/use-booking-quick-create-mutation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAOvB,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,eAAe,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,OAAO,CAAA;IACnD,gBAAgB,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAA;IAC3E,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAED,MAAM,WAAW,+BAA+B;IAC9C,YAAY,CAAC,EAAE,SAAS,GAAG,aAAa,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAA;IACvE,MAAM,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAA;IACxE,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAED,MAAM,WAAW,iCAAiC;IAChD,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,MAAM,+BAA+B,GACvC;IACE,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;CAC5B,GACD;IACE,MAAM,EAAE,QAAQ,CAAA;IAChB,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAA;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAEL,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAEnC,SAAS,CAAC,EAAE,wBAAwB,EAAE,CAAA;IACtC,gBAAgB,CAAC,EAAE,+BAA+B,EAAE,CAAA;IACpD,iBAAiB,CAAC,EAAE,iCAAiC,CAAA;IACrD,eAAe,CAAC,EAAE,+BAA+B,CAAA;CAClD;AAOD,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAM3B,CAAA;AAIF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE9E;;;;;;GAMG;AACH,wBAAgB,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4CAkB5C"}
|