@voyantjs/bookings 0.6.8 → 0.6.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/index.d.ts +7 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/pii.d.ts +10 -9
- package/dist/pii.d.ts.map +1 -1
- package/dist/pii.js +33 -33
- package/dist/routes-groups.d.ts +25 -5
- package/dist/routes-groups.d.ts.map +1 -1
- package/dist/routes-groups.js +3 -3
- package/dist/routes-public.d.ts +19 -21
- package/dist/routes-public.d.ts.map +1 -1
- package/dist/routes-public.js +1 -1
- package/dist/routes-shared.d.ts +1 -1
- package/dist/routes-shared.d.ts.map +1 -1
- package/dist/routes.d.ts +200 -187
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +65 -95
- package/dist/schema/travel-details.d.ts +27 -27
- package/dist/schema/travel-details.d.ts.map +1 -1
- package/dist/schema/travel-details.js +19 -14
- package/dist/schema-core.d.ts +194 -305
- package/dist/schema-core.d.ts.map +1 -1
- package/dist/schema-core.js +19 -10
- package/dist/schema-items.d.ts +15 -15
- package/dist/schema-items.d.ts.map +1 -1
- package/dist/schema-items.js +12 -12
- package/dist/schema-operations.d.ts +1 -1
- package/dist/schema-operations.js +3 -3
- package/dist/schema-relations.d.ts +26 -9
- package/dist/schema-relations.d.ts.map +1 -1
- package/dist/schema-relations.js +36 -21
- package/dist/schema-shared.d.ts +3 -2
- package/dist/schema-shared.d.ts.map +1 -1
- package/dist/schema-shared.js +4 -5
- package/dist/schema-staff.d.ts +267 -0
- package/dist/schema-staff.d.ts.map +1 -0
- package/dist/schema-staff.js +31 -0
- package/dist/schema.d.ts +1 -0
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +1 -0
- package/dist/service-groups.d.ts +3 -7
- package/dist/service-groups.d.ts.map +1 -1
- package/dist/service-groups.js +6 -10
- package/dist/service-public.d.ts +49 -55
- package/dist/service-public.d.ts.map +1 -1
- package/dist/service-public.js +106 -53
- package/dist/service.d.ts +227 -99
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +321 -108
- package/dist/transactions-ref.d.ts +930 -66
- package/dist/transactions-ref.d.ts.map +1 -1
- package/dist/transactions-ref.js +56 -2
- package/dist/validation-public.d.ts +29 -69
- package/dist/validation-public.d.ts.map +1 -1
- package/dist/validation-public.js +21 -20
- package/dist/validation-shared.d.ts +4 -5
- package/dist/validation-shared.d.ts.map +1 -1
- package/dist/validation-shared.js +2 -10
- package/dist/validation.d.ts +229 -44
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +84 -28
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @voyantjs/bookings
|
|
2
2
|
|
|
3
|
-
Bookings module for Voyant. Manages booking lifecycle with
|
|
3
|
+
Bookings module for Voyant. Manages booking lifecycle with travelers, supplier statuses, activity log, and notes. Uses `personId` + `organizationId` from CRM as client snapshot.
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
@@ -37,7 +37,7 @@ room/unit selection back onto the booking session totals.
|
|
|
37
37
|
## Entities
|
|
38
38
|
|
|
39
39
|
- **Bookings** (`book`)
|
|
40
|
-
- **Booking
|
|
40
|
+
- **Booking travelers** (`bkps`)
|
|
41
41
|
- **Booking supplier statuses** (`bkss`)
|
|
42
42
|
- **Booking activity log** (`bkal`)
|
|
43
43
|
- **Booking notes** (`bnot`)
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { LinkableDefinition, Module } from "@voyantjs/core";
|
|
2
2
|
import type { HonoModule } from "@voyantjs/hono/module";
|
|
3
3
|
export { bookingsSupplierExtension } from "./extensions/suppliers.js";
|
|
4
|
-
export { type BookingPiiAuditEvent, type BookingPiiServiceOptions, createBookingPiiService, type
|
|
4
|
+
export { type BookingPiiAuditEvent, type BookingPiiService, type BookingPiiServiceOptions, createBookingPiiService, type UpsertBookingTravelerTravelDetailInput, } from "./pii.js";
|
|
5
5
|
export type { ConvertProductData } from "./service.js";
|
|
6
6
|
export { bookingsService } from "./service.js";
|
|
7
|
-
export { type AddBookingGroupMemberInput, type BookingGroupListQuery, type BookingGroupMemberWithBooking, bookingGroupsService, type CreateBookingGroupInput, type UpdateBookingGroupInput, } from "./service-groups.js";
|
|
7
|
+
export { type AddBookingGroupMemberInput, type BookingGroupListQuery, type BookingGroupMemberWithBooking, bookingGroupsService, type CreateBookingGroupInput, listGroupBookingTravelers, type UpdateBookingGroupInput, } from "./service-groups.js";
|
|
8
8
|
export { type ExpireStaleBookingHoldsInput, type ExpireStaleBookingHoldsResult, expireStaleBookingHolds, } from "./tasks/index.js";
|
|
9
9
|
export declare const bookingLinkable: LinkableDefinition;
|
|
10
10
|
export declare const bookingsLinkable: {
|
|
@@ -18,10 +18,10 @@ export { BOOKING_ROUTE_RUNTIME_CONTAINER_KEY, buildBookingRouteRuntime, } from "
|
|
|
18
18
|
export type { BookingRoutes } from "./routes.js";
|
|
19
19
|
export type { PublicBookingRoutes } from "./routes-public.js";
|
|
20
20
|
export { publicBookingRoutes } from "./routes-public.js";
|
|
21
|
-
export type {
|
|
22
|
-
export {
|
|
23
|
-
export type { Booking, BookingActivity, BookingAllocation, BookingDocument, BookingFulfillment, BookingGroup, BookingGroupMember, BookingItem,
|
|
24
|
-
export { bookingActivityLog, bookingAllocations, bookingDocuments, bookingFulfillments, bookingGroupKindEnum, bookingGroupMemberRoleEnum, bookingGroupMembers, bookingGroups,
|
|
21
|
+
export type { BookingTravelerDietary, BookingTravelerIdentity, BookingTravelerTravelDetail, DecryptedBookingTravelerTravelDetail, NewBookingTravelerTravelDetail, } from "./schema/travel-details.js";
|
|
22
|
+
export { bookingTravelerDietarySchema, bookingTravelerIdentitySchema, bookingTravelerTravelDetailInsertSchema, bookingTravelerTravelDetailSelectSchema, bookingTravelerTravelDetails, bookingTravelerTravelDetailUpdateSchema, decryptedBookingTravelerTravelDetailSchema, } from "./schema/travel-details.js";
|
|
23
|
+
export type { Booking, BookingActivity, BookingAllocation, BookingDocument, BookingFulfillment, BookingGroup, BookingGroupMember, BookingItem, BookingItemTraveler, BookingNote, BookingPiiAccessLog, BookingRedemptionEvent, BookingSessionState, BookingStaffAssignment, BookingSupplierStatus, BookingTraveler, NewBooking, NewBookingActivity, NewBookingAllocation, NewBookingDocument, NewBookingFulfillment, NewBookingGroup, NewBookingGroupMember, NewBookingItem, NewBookingItemTraveler, NewBookingNote, NewBookingPiiAccessLog, NewBookingRedemptionEvent, NewBookingSessionState, NewBookingStaffAssignment, NewBookingSupplierStatus, NewBookingTraveler, } from "./schema.js";
|
|
24
|
+
export { bookingActivityLog, bookingAllocations, bookingDocuments, bookingFulfillments, bookingGroupKindEnum, bookingGroupMemberRoleEnum, bookingGroupMembers, bookingGroups, bookingItems, bookingItemTravelers, bookingNotes, bookingPiiAccessLog, bookingRedemptionEvents, bookingSessionStates, bookingStaffAssignments, bookingSupplierStatuses, bookings, bookingTravelers, } from "./schema.js";
|
|
25
25
|
export { publicBookingsService } from "./service-public.js";
|
|
26
|
-
export { addBookingGroupMemberSchema, bookingGroupKindSchema, bookingGroupListQuerySchema, bookingGroupMemberRoleSchema, bookingListQuerySchema, cancelBookingSchema, confirmBookingSchema, convertProductSchema, createBookingSchema, expireBookingSchema, expireStaleBookingsSchema, extendBookingHoldSchema, insertBookingAllocationSchema, insertBookingDocumentSchema, insertBookingFulfillmentSchema, insertBookingGroupSchema,
|
|
26
|
+
export { addBookingGroupMemberSchema, bookingGroupKindSchema, bookingGroupListQuerySchema, bookingGroupMemberRoleSchema, bookingListQuerySchema, cancelBookingSchema, confirmBookingSchema, convertProductSchema, createBookingSchema, expireBookingSchema, expireStaleBookingsSchema, extendBookingHoldSchema, insertBookingAllocationSchema, insertBookingDocumentSchema, insertBookingFulfillmentSchema, insertBookingGroupSchema, insertBookingItemSchema, insertBookingItemTravelerSchema, insertBookingNoteSchema, insertBookingSchema, insertBookingTravelerDocumentSchema, insertSupplierStatusSchema, insertTravelerSchema, internalBookingOverviewLookupQuerySchema, publicBookingOverviewLookupQuerySchema, publicBookingSessionMutationSchema, publicBookingSessionRepriceItemSchema, publicBookingSessionRepriceResultSchema, publicBookingSessionRepriceSummarySchema, publicBookingSessionStateSchema, publicCreateBookingSessionSchema, publicRepriceBookingSessionSchema, publicUpdateBookingSessionSchema, publicUpsertBookingSessionStateSchema, recordBookingRedemptionSchema, reserveBookingFromTransactionSchema, reserveBookingSchema, updateBookingAllocationSchema, updateBookingFulfillmentSchema, updateBookingGroupSchema, updateBookingItemSchema, updateBookingSchema, updateBookingStatusSchema, updateSupplierStatusSchema, updateTravelerSchema, upsertTravelerTravelDetailsSchema, } from "./validation.js";
|
|
27
27
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAMvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;AACrE,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,uBAAuB,EACvB,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -4,7 +4,7 @@ import { publicBookingRoutes } from "./routes-public.js";
|
|
|
4
4
|
export { bookingsSupplierExtension } from "./extensions/suppliers.js";
|
|
5
5
|
export { createBookingPiiService, } from "./pii.js";
|
|
6
6
|
export { bookingsService } from "./service.js";
|
|
7
|
-
export { bookingGroupsService, } from "./service-groups.js";
|
|
7
|
+
export { bookingGroupsService, listGroupBookingTravelers, } from "./service-groups.js";
|
|
8
8
|
export { expireStaleBookingHolds, } from "./tasks/index.js";
|
|
9
9
|
export const bookingLinkable = {
|
|
10
10
|
module: "bookings",
|
|
@@ -36,7 +36,7 @@ export function createBookingsHonoModule() {
|
|
|
36
36
|
export const bookingsHonoModule = createBookingsHonoModule();
|
|
37
37
|
export { BOOKING_ROUTE_RUNTIME_CONTAINER_KEY, buildBookingRouteRuntime, } from "./route-runtime.js";
|
|
38
38
|
export { publicBookingRoutes } from "./routes-public.js";
|
|
39
|
-
export {
|
|
40
|
-
export { bookingActivityLog, bookingAllocations, bookingDocuments, bookingFulfillments, bookingGroupKindEnum, bookingGroupMemberRoleEnum, bookingGroupMembers, bookingGroups,
|
|
39
|
+
export { bookingTravelerDietarySchema, bookingTravelerIdentitySchema, bookingTravelerTravelDetailInsertSchema, bookingTravelerTravelDetailSelectSchema, bookingTravelerTravelDetails, bookingTravelerTravelDetailUpdateSchema, decryptedBookingTravelerTravelDetailSchema, } from "./schema/travel-details.js";
|
|
40
|
+
export { bookingActivityLog, bookingAllocations, bookingDocuments, bookingFulfillments, bookingGroupKindEnum, bookingGroupMemberRoleEnum, bookingGroupMembers, bookingGroups, bookingItems, bookingItemTravelers, bookingNotes, bookingPiiAccessLog, bookingRedemptionEvents, bookingSessionStates, bookingStaffAssignments, bookingSupplierStatuses, bookings, bookingTravelers, } from "./schema.js";
|
|
41
41
|
export { publicBookingsService } from "./service-public.js";
|
|
42
|
-
export { addBookingGroupMemberSchema, bookingGroupKindSchema, bookingGroupListQuerySchema, bookingGroupMemberRoleSchema, bookingListQuerySchema, cancelBookingSchema, confirmBookingSchema, convertProductSchema, createBookingSchema, expireBookingSchema, expireStaleBookingsSchema, extendBookingHoldSchema, insertBookingAllocationSchema, insertBookingDocumentSchema, insertBookingFulfillmentSchema, insertBookingGroupSchema,
|
|
42
|
+
export { addBookingGroupMemberSchema, bookingGroupKindSchema, bookingGroupListQuerySchema, bookingGroupMemberRoleSchema, bookingListQuerySchema, cancelBookingSchema, confirmBookingSchema, convertProductSchema, createBookingSchema, expireBookingSchema, expireStaleBookingsSchema, extendBookingHoldSchema, insertBookingAllocationSchema, insertBookingDocumentSchema, insertBookingFulfillmentSchema, insertBookingGroupSchema, insertBookingItemSchema, insertBookingItemTravelerSchema, insertBookingNoteSchema, insertBookingSchema, insertBookingTravelerDocumentSchema, insertSupplierStatusSchema, insertTravelerSchema, internalBookingOverviewLookupQuerySchema, publicBookingOverviewLookupQuerySchema, publicBookingSessionMutationSchema, publicBookingSessionRepriceItemSchema, publicBookingSessionRepriceResultSchema, publicBookingSessionRepriceSummarySchema, publicBookingSessionStateSchema, publicCreateBookingSessionSchema, publicRepriceBookingSessionSchema, publicUpdateBookingSessionSchema, publicUpsertBookingSessionStateSchema, recordBookingRedemptionSchema, reserveBookingFromTransactionSchema, reserveBookingSchema, updateBookingAllocationSchema, updateBookingFulfillmentSchema, updateBookingGroupSchema, updateBookingItemSchema, updateBookingSchema, updateBookingStatusSchema, updateSupplierStatusSchema, updateTravelerSchema, upsertTravelerTravelDetailsSchema, } from "./validation.js";
|
package/dist/pii.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { KeyRef, KmsProvider } from "@voyantjs/utils";
|
|
2
2
|
import type { PostgresJsDatabase } from "drizzle-orm/postgres-js";
|
|
3
|
-
import { type
|
|
4
|
-
export interface
|
|
3
|
+
import { type DecryptedBookingTravelerTravelDetail } from "./schema/travel-details.js";
|
|
4
|
+
export interface UpsertBookingTravelerTravelDetailInput {
|
|
5
5
|
nationality?: string | null;
|
|
6
6
|
passportNumber?: string | null;
|
|
7
7
|
passportExpiry?: string | null;
|
|
@@ -11,7 +11,7 @@ export interface UpsertBookingParticipantTravelDetailInput {
|
|
|
11
11
|
}
|
|
12
12
|
export interface BookingPiiAuditEvent {
|
|
13
13
|
action: "encrypt" | "decrypt" | "delete";
|
|
14
|
-
|
|
14
|
+
travelerId: string;
|
|
15
15
|
actorId?: string | null;
|
|
16
16
|
}
|
|
17
17
|
export interface BookingPiiServiceOptions {
|
|
@@ -19,11 +19,12 @@ export interface BookingPiiServiceOptions {
|
|
|
19
19
|
keyRef?: KeyRef;
|
|
20
20
|
onAudit?: (event: BookingPiiAuditEvent) => void | Promise<void>;
|
|
21
21
|
}
|
|
22
|
-
export
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
export interface BookingPiiService {
|
|
23
|
+
getTravelerTravelDetails(db: PostgresJsDatabase, travelerId: string, actorId?: string | null): Promise<DecryptedBookingTravelerTravelDetail | null>;
|
|
24
|
+
upsertTravelerTravelDetails(db: PostgresJsDatabase, travelerId: string, input: UpsertBookingTravelerTravelDetailInput, actorId?: string | null): Promise<DecryptedBookingTravelerTravelDetail | null>;
|
|
25
|
+
deleteTravelerTravelDetails(db: PostgresJsDatabase, travelerId: string, actorId?: string | null): Promise<{
|
|
26
|
+
travelerId: string;
|
|
27
27
|
} | null>;
|
|
28
|
-
}
|
|
28
|
+
}
|
|
29
|
+
export declare function createBookingPiiService(options: BookingPiiServiceOptions): BookingPiiService;
|
|
29
30
|
//# sourceMappingURL=pii.d.ts.map
|
package/dist/pii.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pii.d.ts","sourceRoot":"","sources":["../src/pii.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAG1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EAIL,KAAK,
|
|
1
|
+
{"version":3,"file":"pii.d.ts","sourceRoot":"","sources":["../src/pii.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAG1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EAIL,KAAK,oCAAoC,EAC1C,MAAM,4BAA4B,CAAA;AAGnC,MAAM,WAAW,sCAAsC;IACrD,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;CAChC;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAA;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,WAAW,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAChE;AAED,MAAM,WAAW,iBAAiB;IAChC,wBAAwB,CACtB,EAAE,EAAE,kBAAkB,EACtB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GACtB,OAAO,CAAC,oCAAoC,GAAG,IAAI,CAAC,CAAA;IACvD,2BAA2B,CACzB,EAAE,EAAE,kBAAkB,EACtB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,sCAAsC,EAC7C,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GACtB,OAAO,CAAC,oCAAoC,GAAG,IAAI,CAAC,CAAA;IACvD,2BAA2B,CACzB,EAAE,EAAE,kBAAkB,EACtB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GACtB,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAA;CAC1C;AAqGD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,wBAAwB,GAAG,iBAAiB,CAuH5F"}
|
package/dist/pii.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { decryptOptionalJsonEnvelope, encryptOptionalJsonEnvelope } from "@voyantjs/utils";
|
|
2
2
|
import { eq } from "drizzle-orm";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { bookingTravelerDietarySchema, bookingTravelerIdentitySchema, bookingTravelerTravelDetails, } from "./schema/travel-details.js";
|
|
4
|
+
import { bookingTravelers } from "./schema.js";
|
|
5
5
|
function buildIdentityPayload(input) {
|
|
6
|
-
const payload =
|
|
6
|
+
const payload = bookingTravelerIdentitySchema.parse({
|
|
7
7
|
nationality: input.nationality ?? null,
|
|
8
8
|
passportNumber: input.passportNumber ?? null,
|
|
9
9
|
passportExpiry: input.passportExpiry ?? null,
|
|
@@ -18,7 +18,7 @@ function buildIdentityPayload(input) {
|
|
|
18
18
|
return payload;
|
|
19
19
|
}
|
|
20
20
|
function buildDietaryPayload(input) {
|
|
21
|
-
const payload =
|
|
21
|
+
const payload = bookingTravelerDietarySchema.parse({
|
|
22
22
|
dietaryRequirements: input.dietaryRequirements ?? null,
|
|
23
23
|
});
|
|
24
24
|
if (!payload.dietaryRequirements) {
|
|
@@ -26,17 +26,17 @@ function buildDietaryPayload(input) {
|
|
|
26
26
|
}
|
|
27
27
|
return payload;
|
|
28
28
|
}
|
|
29
|
-
async function loadExistingTravelDetails(db,
|
|
29
|
+
async function loadExistingTravelDetails(db, travelerId, options, keyRef) {
|
|
30
30
|
const [row] = await db
|
|
31
31
|
.select()
|
|
32
|
-
.from(
|
|
33
|
-
.where(eq(
|
|
32
|
+
.from(bookingTravelerTravelDetails)
|
|
33
|
+
.where(eq(bookingTravelerTravelDetails.travelerId, travelerId))
|
|
34
34
|
.limit(1);
|
|
35
35
|
if (!row) {
|
|
36
36
|
return null;
|
|
37
37
|
}
|
|
38
|
-
const identity = await decryptOptionalJsonEnvelope(options.kms, keyRef, row.identityEncrypted,
|
|
39
|
-
const dietary = await decryptOptionalJsonEnvelope(options.kms, keyRef, row.dietaryEncrypted,
|
|
38
|
+
const identity = await decryptOptionalJsonEnvelope(options.kms, keyRef, row.identityEncrypted, bookingTravelerIdentitySchema);
|
|
39
|
+
const dietary = await decryptOptionalJsonEnvelope(options.kms, keyRef, row.dietaryEncrypted, bookingTravelerDietarySchema);
|
|
40
40
|
return {
|
|
41
41
|
nationality: identity?.nationality ?? null,
|
|
42
42
|
passportNumber: identity?.passportNumber ?? null,
|
|
@@ -67,20 +67,20 @@ function mergeTravelDetailInput(existing, input) {
|
|
|
67
67
|
export function createBookingPiiService(options) {
|
|
68
68
|
const keyRef = options.keyRef ?? { keyType: "people" };
|
|
69
69
|
return {
|
|
70
|
-
async
|
|
70
|
+
async getTravelerTravelDetails(db, travelerId, actorId) {
|
|
71
71
|
const [row] = await db
|
|
72
72
|
.select()
|
|
73
|
-
.from(
|
|
74
|
-
.where(eq(
|
|
73
|
+
.from(bookingTravelerTravelDetails)
|
|
74
|
+
.where(eq(bookingTravelerTravelDetails.travelerId, travelerId))
|
|
75
75
|
.limit(1);
|
|
76
76
|
if (!row) {
|
|
77
77
|
return null;
|
|
78
78
|
}
|
|
79
|
-
const identity = await decryptOptionalJsonEnvelope(options.kms, keyRef, row.identityEncrypted,
|
|
80
|
-
const dietary = await decryptOptionalJsonEnvelope(options.kms, keyRef, row.dietaryEncrypted,
|
|
81
|
-
await options.onAudit?.({ action: "decrypt",
|
|
79
|
+
const identity = await decryptOptionalJsonEnvelope(options.kms, keyRef, row.identityEncrypted, bookingTravelerIdentitySchema);
|
|
80
|
+
const dietary = await decryptOptionalJsonEnvelope(options.kms, keyRef, row.dietaryEncrypted, bookingTravelerDietarySchema);
|
|
81
|
+
await options.onAudit?.({ action: "decrypt", travelerId, actorId });
|
|
82
82
|
return {
|
|
83
|
-
|
|
83
|
+
travelerId: row.travelerId,
|
|
84
84
|
nationality: identity?.nationality ?? null,
|
|
85
85
|
passportNumber: identity?.passportNumber ?? null,
|
|
86
86
|
passportExpiry: identity?.passportExpiry ?? null,
|
|
@@ -91,31 +91,31 @@ export function createBookingPiiService(options) {
|
|
|
91
91
|
updatedAt: row.updatedAt,
|
|
92
92
|
};
|
|
93
93
|
},
|
|
94
|
-
async
|
|
95
|
-
const [
|
|
96
|
-
.select({ id:
|
|
97
|
-
.from(
|
|
98
|
-
.where(eq(
|
|
94
|
+
async upsertTravelerTravelDetails(db, travelerId, input, actorId) {
|
|
95
|
+
const [traveler] = await db
|
|
96
|
+
.select({ id: bookingTravelers.id })
|
|
97
|
+
.from(bookingTravelers)
|
|
98
|
+
.where(eq(bookingTravelers.id, travelerId))
|
|
99
99
|
.limit(1);
|
|
100
|
-
if (!
|
|
100
|
+
if (!traveler) {
|
|
101
101
|
return null;
|
|
102
102
|
}
|
|
103
|
-
const existing = await loadExistingTravelDetails(db,
|
|
103
|
+
const existing = await loadExistingTravelDetails(db, travelerId, options, keyRef);
|
|
104
104
|
const mergedInput = mergeTravelDetailInput(existing, input);
|
|
105
105
|
const identityEncrypted = await encryptOptionalJsonEnvelope(options.kms, keyRef, buildIdentityPayload(mergedInput));
|
|
106
106
|
const dietaryEncrypted = await encryptOptionalJsonEnvelope(options.kms, keyRef, buildDietaryPayload(mergedInput));
|
|
107
107
|
const now = new Date();
|
|
108
108
|
await db
|
|
109
|
-
.insert(
|
|
109
|
+
.insert(bookingTravelerTravelDetails)
|
|
110
110
|
.values({
|
|
111
|
-
|
|
111
|
+
travelerId,
|
|
112
112
|
identityEncrypted,
|
|
113
113
|
dietaryEncrypted,
|
|
114
114
|
isLeadTraveler: mergedInput.isLeadTraveler ?? false,
|
|
115
115
|
updatedAt: now,
|
|
116
116
|
})
|
|
117
117
|
.onConflictDoUpdate({
|
|
118
|
-
target:
|
|
118
|
+
target: bookingTravelerTravelDetails.travelerId,
|
|
119
119
|
set: {
|
|
120
120
|
identityEncrypted,
|
|
121
121
|
dietaryEncrypted,
|
|
@@ -123,16 +123,16 @@ export function createBookingPiiService(options) {
|
|
|
123
123
|
updatedAt: now,
|
|
124
124
|
},
|
|
125
125
|
});
|
|
126
|
-
await options.onAudit?.({ action: "encrypt",
|
|
127
|
-
return this.
|
|
126
|
+
await options.onAudit?.({ action: "encrypt", travelerId, actorId });
|
|
127
|
+
return this.getTravelerTravelDetails(db, travelerId, actorId);
|
|
128
128
|
},
|
|
129
|
-
async
|
|
129
|
+
async deleteTravelerTravelDetails(db, travelerId, actorId) {
|
|
130
130
|
const [row] = await db
|
|
131
|
-
.delete(
|
|
132
|
-
.where(eq(
|
|
133
|
-
.returning({
|
|
131
|
+
.delete(bookingTravelerTravelDetails)
|
|
132
|
+
.where(eq(bookingTravelerTravelDetails.travelerId, travelerId))
|
|
133
|
+
.returning({ travelerId: bookingTravelerTravelDetails.travelerId });
|
|
134
134
|
if (row) {
|
|
135
|
-
await options.onAudit?.({ action: "delete",
|
|
135
|
+
await options.onAudit?.({ action: "delete", travelerId, actorId });
|
|
136
136
|
}
|
|
137
137
|
return row ?? null;
|
|
138
138
|
},
|
package/dist/routes-groups.d.ts
CHANGED
|
@@ -87,6 +87,7 @@ export declare const bookingGroupRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
87
87
|
createdAt: string;
|
|
88
88
|
updatedAt: string;
|
|
89
89
|
organizationId: string | null;
|
|
90
|
+
redeemedAt: string | null;
|
|
90
91
|
startDate: string | null;
|
|
91
92
|
endDate: string | null;
|
|
92
93
|
bookingNumber: string;
|
|
@@ -94,6 +95,16 @@ export declare const bookingGroupRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
94
95
|
sourceType: "internal" | "reseller" | "direct" | "manual" | "affiliate" | "ota" | "api_partner";
|
|
95
96
|
externalBookingRef: string | null;
|
|
96
97
|
communicationLanguage: string | null;
|
|
98
|
+
contactFirstName: string | null;
|
|
99
|
+
contactLastName: string | null;
|
|
100
|
+
contactEmail: string | null;
|
|
101
|
+
contactPhone: string | null;
|
|
102
|
+
contactPreferredLanguage: string | null;
|
|
103
|
+
contactCountry: string | null;
|
|
104
|
+
contactRegion: string | null;
|
|
105
|
+
contactCity: string | null;
|
|
106
|
+
contactAddressLine1: string | null;
|
|
107
|
+
contactPostalCode: string | null;
|
|
97
108
|
sellCurrency: string;
|
|
98
109
|
baseCurrency: string | null;
|
|
99
110
|
sellAmountCents: number | null;
|
|
@@ -108,7 +119,6 @@ export declare const bookingGroupRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
108
119
|
expiredAt: string | null;
|
|
109
120
|
cancelledAt: string | null;
|
|
110
121
|
completedAt: string | null;
|
|
111
|
-
redeemedAt: string | null;
|
|
112
122
|
} | null;
|
|
113
123
|
}[];
|
|
114
124
|
id: string;
|
|
@@ -213,6 +223,7 @@ export declare const bookingGroupRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
213
223
|
createdAt: string;
|
|
214
224
|
updatedAt: string;
|
|
215
225
|
organizationId: string | null;
|
|
226
|
+
redeemedAt: string | null;
|
|
216
227
|
startDate: string | null;
|
|
217
228
|
endDate: string | null;
|
|
218
229
|
bookingNumber: string;
|
|
@@ -220,6 +231,16 @@ export declare const bookingGroupRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
220
231
|
sourceType: "internal" | "reseller" | "direct" | "manual" | "affiliate" | "ota" | "api_partner";
|
|
221
232
|
externalBookingRef: string | null;
|
|
222
233
|
communicationLanguage: string | null;
|
|
234
|
+
contactFirstName: string | null;
|
|
235
|
+
contactLastName: string | null;
|
|
236
|
+
contactEmail: string | null;
|
|
237
|
+
contactPhone: string | null;
|
|
238
|
+
contactPreferredLanguage: string | null;
|
|
239
|
+
contactCountry: string | null;
|
|
240
|
+
contactRegion: string | null;
|
|
241
|
+
contactCity: string | null;
|
|
242
|
+
contactAddressLine1: string | null;
|
|
243
|
+
contactPostalCode: string | null;
|
|
223
244
|
sellCurrency: string;
|
|
224
245
|
baseCurrency: string | null;
|
|
225
246
|
sellAmountCents: number | null;
|
|
@@ -234,7 +255,6 @@ export declare const bookingGroupRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
234
255
|
expiredAt: string | null;
|
|
235
256
|
cancelledAt: string | null;
|
|
236
257
|
completedAt: string | null;
|
|
237
|
-
redeemedAt: string | null;
|
|
238
258
|
} | null;
|
|
239
259
|
}[];
|
|
240
260
|
};
|
|
@@ -317,7 +337,7 @@ export declare const bookingGroupRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
317
337
|
};
|
|
318
338
|
};
|
|
319
339
|
} & {
|
|
320
|
-
"/:id/
|
|
340
|
+
"/:id/travelers": {
|
|
321
341
|
$get: {
|
|
322
342
|
input: {
|
|
323
343
|
param: {
|
|
@@ -335,7 +355,7 @@ export declare const bookingGroupRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
335
355
|
lastName: string;
|
|
336
356
|
personId: string | null;
|
|
337
357
|
bookingId: string;
|
|
338
|
-
participantType: "
|
|
358
|
+
participantType: "other" | "traveler" | "occupant";
|
|
339
359
|
travelerCategory: "other" | "adult" | "child" | "infant" | "senior" | null;
|
|
340
360
|
phone: string | null;
|
|
341
361
|
preferredLanguage: string | null;
|
|
@@ -348,7 +368,7 @@ export declare const bookingGroupRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
348
368
|
status: import("hono/utils/http-status").ContentfulStatusCode;
|
|
349
369
|
};
|
|
350
370
|
};
|
|
351
|
-
}, "/", "/:id/
|
|
371
|
+
}, "/", "/:id/travelers">;
|
|
352
372
|
export type BookingGroupRoutes = typeof bookingGroupRoutes;
|
|
353
373
|
export {};
|
|
354
374
|
//# sourceMappingURL=routes-groups.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes-groups.d.ts","sourceRoot":"","sources":["../src/routes-groups.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAQ1D,KAAK,GAAG,GAAG;IACT,SAAS,EAAE;QACT,EAAE,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAA;QAChE,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,CAAA;AAED,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"routes-groups.d.ts","sourceRoot":"","sources":["../src/routes-groups.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAQ1D,KAAK,GAAG,GAAG;IACT,SAAS,EAAE;QACT,EAAE,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAA;QAChE,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,CAAA;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA0E3B,CAAA;AAEJ,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAA"}
|
package/dist/routes-groups.js
CHANGED
|
@@ -56,7 +56,7 @@ export const bookingGroupRoutes = new Hono()
|
|
|
56
56
|
return c.json({ error: "Membership not found" }, 404);
|
|
57
57
|
return c.json({ success: true });
|
|
58
58
|
})
|
|
59
|
-
.get("/:id/
|
|
60
|
-
const
|
|
61
|
-
return c.json({ data:
|
|
59
|
+
.get("/:id/travelers", async (c) => {
|
|
60
|
+
const travelers = await bookingGroupsService.listGroupBookingTravelers(c.get("db"), c.req.param("id"));
|
|
61
|
+
return c.json({ data: travelers });
|
|
62
62
|
});
|
package/dist/routes-public.d.ts
CHANGED
|
@@ -60,9 +60,9 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
60
60
|
expiredAt: string | null;
|
|
61
61
|
cancelledAt: string | null;
|
|
62
62
|
completedAt: string | null;
|
|
63
|
-
|
|
63
|
+
travelers: {
|
|
64
64
|
id: string;
|
|
65
|
-
participantType: "
|
|
65
|
+
participantType: "other" | "traveler" | "occupant";
|
|
66
66
|
travelerCategory: "other" | "adult" | "child" | "infant" | "senior" | null;
|
|
67
67
|
firstName: string;
|
|
68
68
|
lastName: string;
|
|
@@ -95,9 +95,9 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
95
95
|
optionId: string | null;
|
|
96
96
|
optionUnitId: string | null;
|
|
97
97
|
pricingCategoryId: string | null;
|
|
98
|
-
|
|
98
|
+
travelerLinks: {
|
|
99
99
|
id: string;
|
|
100
|
-
|
|
100
|
+
travelerId: string;
|
|
101
101
|
role: string;
|
|
102
102
|
isPrimary: boolean;
|
|
103
103
|
}[];
|
|
@@ -118,9 +118,8 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
118
118
|
releasedAt: string | null;
|
|
119
119
|
}[];
|
|
120
120
|
checklist: {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
hasPrimaryParticipant: boolean;
|
|
121
|
+
hasTravelers: boolean;
|
|
122
|
+
hasPrimaryTraveler: boolean;
|
|
124
123
|
hasItems: boolean;
|
|
125
124
|
hasAllocations: boolean;
|
|
126
125
|
readyForConfirmation: boolean;
|
|
@@ -248,7 +247,7 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
248
247
|
version: number;
|
|
249
248
|
createdAt: string;
|
|
250
249
|
updatedAt: string;
|
|
251
|
-
}
|
|
250
|
+
};
|
|
252
251
|
};
|
|
253
252
|
outputFormat: "json";
|
|
254
253
|
status: import("hono/utils/http-status").ContentfulStatusCode;
|
|
@@ -336,9 +335,9 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
336
335
|
expiredAt: string | null;
|
|
337
336
|
cancelledAt: string | null;
|
|
338
337
|
completedAt: string | null;
|
|
339
|
-
|
|
338
|
+
travelers: {
|
|
340
339
|
id: string;
|
|
341
|
-
participantType: "
|
|
340
|
+
participantType: "other" | "traveler" | "occupant";
|
|
342
341
|
travelerCategory: "other" | "adult" | "child" | "infant" | "senior" | null;
|
|
343
342
|
firstName: string;
|
|
344
343
|
lastName: string;
|
|
@@ -371,9 +370,9 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
371
370
|
optionId: string | null;
|
|
372
371
|
optionUnitId: string | null;
|
|
373
372
|
pricingCategoryId: string | null;
|
|
374
|
-
|
|
373
|
+
travelerLinks: {
|
|
375
374
|
id: string;
|
|
376
|
-
|
|
375
|
+
travelerId: string;
|
|
377
376
|
role: string;
|
|
378
377
|
isPrimary: boolean;
|
|
379
378
|
}[];
|
|
@@ -394,9 +393,8 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
394
393
|
releasedAt: string | null;
|
|
395
394
|
}[];
|
|
396
395
|
checklist: {
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
hasPrimaryParticipant: boolean;
|
|
396
|
+
hasTravelers: boolean;
|
|
397
|
+
hasPrimaryTraveler: boolean;
|
|
400
398
|
hasItems: boolean;
|
|
401
399
|
hasAllocations: boolean;
|
|
402
400
|
readyForConfirmation: boolean;
|
|
@@ -518,9 +516,9 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
518
516
|
confirmedAt: string | null;
|
|
519
517
|
cancelledAt: string | null;
|
|
520
518
|
completedAt: string | null;
|
|
521
|
-
|
|
519
|
+
travelers: {
|
|
522
520
|
id: string;
|
|
523
|
-
participantType: "
|
|
521
|
+
participantType: "other" | "traveler" | "occupant";
|
|
524
522
|
firstName: string;
|
|
525
523
|
lastName: string;
|
|
526
524
|
isPrimary: boolean;
|
|
@@ -546,16 +544,16 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
546
544
|
optionId: string | null;
|
|
547
545
|
optionUnitId: string | null;
|
|
548
546
|
pricingCategoryId: string | null;
|
|
549
|
-
|
|
547
|
+
travelerLinks: {
|
|
550
548
|
id: string;
|
|
551
|
-
|
|
549
|
+
travelerId: string;
|
|
552
550
|
role: string;
|
|
553
551
|
isPrimary: boolean;
|
|
554
552
|
}[];
|
|
555
553
|
}[];
|
|
556
554
|
documents: {
|
|
557
555
|
id: string;
|
|
558
|
-
|
|
556
|
+
travelerId: string | null;
|
|
559
557
|
type: "visa" | "other" | "insurance" | "health" | "passport_copy";
|
|
560
558
|
fileName: string;
|
|
561
559
|
fileUrl: string;
|
|
@@ -563,7 +561,7 @@ export declare const publicBookingRoutes: import("hono/hono-base").HonoBase<Env,
|
|
|
563
561
|
fulfillments: {
|
|
564
562
|
id: string;
|
|
565
563
|
bookingItemId: string | null;
|
|
566
|
-
|
|
564
|
+
travelerId: string | null;
|
|
567
565
|
fulfillmentType: "other" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile";
|
|
568
566
|
deliveryChannel: "email" | "other" | "download" | "api" | "wallet";
|
|
569
567
|
status: "pending" | "issued" | "reissued" | "revoked" | "failed";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes-public.d.ts","sourceRoot":"","sources":["../src/routes-public.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,GAAG,EAAY,MAAM,oBAAoB,CAAA;AAsCvD,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"routes-public.d.ts","sourceRoot":"","sources":["../src/routes-public.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,GAAG,EAAY,MAAM,oBAAoB,CAAA;AAsCvD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAmI5B,CAAA;AAEJ,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAA"}
|
package/dist/routes-public.js
CHANGED
|
@@ -17,7 +17,7 @@ function sessionConflictError(status) {
|
|
|
17
17
|
case "hold_expired":
|
|
18
18
|
return "Booking session hold has expired";
|
|
19
19
|
case "participant_not_found":
|
|
20
|
-
return "Booking session
|
|
20
|
+
return "Booking session traveler not found";
|
|
21
21
|
case "pricing_unavailable":
|
|
22
22
|
return "Pricing is not available for the selected booking session items";
|
|
23
23
|
case "quantity_change_requires_reallocation":
|
package/dist/routes-shared.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes-shared.d.ts","sourceRoot":"","sources":["../src/routes-shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC;IAChC,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,yBAAyB,EAAE,MAAM,CAAA;IACjC,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,uBAAuB,EAAE,MAAM,CAAA;IAC/B,6BAA6B,EAAE,MAAM,CAAA;IACrC,UAAU,EAAE,MAAM,CAAA;IAClB,iBAAiB,EAAE,MAAM,CAAA;IACzB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,iBAAiB,EAAE,MAAM,CAAA;IACzB,gBAAgB,EAAE,MAAM,CAAA;IACxB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,2BAA2B,EAAE,MAAM,CAAA;CACpC,CAAC,CAAA;AAEF,MAAM,MAAM,GAAG,GAAG;IAChB,QAAQ,EAAE,WAAW,CAAA;IACrB,SAAS,EAAE;QACT,SAAS,CAAC,EAAE,eAAe,CAAA;QAC3B,EAAE,EAAE,kBAAkB,CAAA;QACtB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,KAAK,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAA;QACrD,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,CAAA;QAC/C,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACxB,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE;YAC3B,EAAE,EAAE,kBAAkB,CAAA;YACtB,MAAM,CAAC,EAAE,MAAM,CAAA;YACf,KAAK,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAA;YACrD,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,CAAA;YAC/C,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;YACxB,iBAAiB,CAAC,EAAE,OAAO,CAAA;YAC3B,SAAS,EAAE,MAAM,CAAA;YACjB,
|
|
1
|
+
{"version":3,"file":"routes-shared.d.ts","sourceRoot":"","sources":["../src/routes-shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC;IAChC,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,yBAAyB,EAAE,MAAM,CAAA;IACjC,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,uBAAuB,EAAE,MAAM,CAAA;IAC/B,6BAA6B,EAAE,MAAM,CAAA;IACrC,UAAU,EAAE,MAAM,CAAA;IAClB,iBAAiB,EAAE,MAAM,CAAA;IACzB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,iBAAiB,EAAE,MAAM,CAAA;IACzB,gBAAgB,EAAE,MAAM,CAAA;IACxB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,2BAA2B,EAAE,MAAM,CAAA;CACpC,CAAC,CAAA;AAEF,MAAM,MAAM,GAAG,GAAG;IAChB,QAAQ,EAAE,WAAW,CAAA;IACrB,SAAS,EAAE;QACT,SAAS,CAAC,EAAE,eAAe,CAAA;QAC3B,EAAE,EAAE,kBAAkB,CAAA;QACtB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,KAAK,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAA;QACrD,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,CAAA;QAC/C,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACxB,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE;YAC3B,EAAE,EAAE,kBAAkB,CAAA;YACtB,MAAM,CAAC,EAAE,MAAM,CAAA;YACf,KAAK,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAA;YACrD,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,CAAA;YAC/C,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;YACxB,iBAAiB,CAAC,EAAE,OAAO,CAAA;YAC3B,SAAS,EAAE,MAAM,CAAA;YACjB,UAAU,EAAE,MAAM,CAAA;YAClB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;SACrC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;KACjC,CAAA;CACF,CAAA;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;EAY5C;AAED,wBAAgB,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;;gBAEnE"}
|