@bash-app/bash-common 30.157.0 → 30.159.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/definitions.d.ts +6 -6
- package/dist/definitions.d.ts.map +1 -1
- package/dist/extendedSchemas.d.ts +2 -2
- package/dist/extendedSchemas.d.ts.map +1 -1
- package/dist/extendedSchemas.js +1 -1
- package/dist/extendedSchemas.js.map +1 -1
- package/dist/index.d.ts +45 -45
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +44 -44
- package/dist/index.js.map +1 -1
- package/dist/utils/blogUtils.js +1 -1
- package/dist/utils/blogUtils.js.map +1 -1
- package/dist/utils/discountEngine/bestPriceResolver.d.ts +1 -1
- package/dist/utils/discountEngine/bestPriceResolver.d.ts.map +1 -1
- package/dist/utils/discountEngine/bestPriceResolver.js +1 -1
- package/dist/utils/discountEngine/bestPriceResolver.js.map +1 -1
- package/dist/utils/discountEngine/index.d.ts +3 -3
- package/dist/utils/discountEngine/index.d.ts.map +1 -1
- package/dist/utils/discountEngine/index.js +3 -3
- package/dist/utils/discountEngine/index.js.map +1 -1
- package/dist/utils/index.d.ts +41 -41
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +41 -41
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/luxonUtils.d.ts +1 -1
- package/dist/utils/luxonUtils.d.ts.map +1 -1
- package/dist/utils/luxonUtils.js +2 -2
- package/dist/utils/luxonUtils.js.map +1 -1
- package/dist/utils/qrCodeUtils.js +1 -1
- package/dist/utils/qrCodeUtils.js.map +1 -1
- package/dist/utils/recurrenceUtils.js +2 -2
- package/dist/utils/recurrenceUtils.js.map +1 -1
- package/dist/utils/service/apiServiceBookingApiUtils.d.ts +2 -2
- package/dist/utils/service/apiServiceBookingApiUtils.d.ts.map +1 -1
- package/dist/utils/service/apiServiceBookingApiUtils.js +1 -1
- package/dist/utils/service/apiServiceBookingApiUtils.js.map +1 -1
- package/dist/utils/service/frontendServiceBookingUtils.d.ts +3 -3
- package/dist/utils/service/frontendServiceBookingUtils.d.ts.map +1 -1
- package/dist/utils/service/frontendServiceBookingUtils.js +1 -1
- package/dist/utils/service/frontendServiceBookingUtils.js.map +1 -1
- package/dist/utils/service/serviceRateUtils.d.ts +2 -2
- package/dist/utils/service/serviceRateUtils.d.ts.map +1 -1
- package/dist/utils/ticketListUtils.d.ts.map +1 -1
- package/dist/utils/ticketListUtils.js +5 -1
- package/dist/utils/ticketListUtils.js.map +1 -1
- package/dist/utils/urlUtils.js +2 -2
- package/dist/utils/urlUtils.js.map +1 -1
- package/package.json +1 -1
- package/prisma/migrations/add_event_group_allow_auto_join.sql +17 -0
- package/prisma/migrations/add_group_member_status_not_going_maybe.sql +5 -0
- package/prisma/schema.prisma +13 -10
- package/src/definitions.ts +6 -6
- package/src/extendedSchemas.ts +2 -2
- package/src/index.ts +45 -45
- package/src/utils/blogUtils.ts +1 -1
- package/src/utils/discountEngine/bestPriceResolver.ts +1 -1
- package/src/utils/discountEngine/index.ts +3 -3
- package/src/utils/index.ts +41 -41
- package/src/utils/luxonUtils.ts +2 -2
- package/src/utils/qrCodeUtils.ts +1 -1
- package/src/utils/recurrenceUtils.ts +3 -3
- package/src/utils/service/apiServiceBookingApiUtils.ts +3 -3
- package/src/utils/service/frontendServiceBookingUtils.ts +3 -3
- package/src/utils/service/serviceBookingTypes.ts +1 -1
- package/src/utils/service/serviceRateUtils.ts +2 -2
- package/src/utils/ticketListUtils.ts +5 -1
- package/src/utils/urlUtils.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ticketListUtils.js","sourceRoot":"","sources":["../../src/utils/ticketListUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAEL,+CAA+C,EAC/C,4BAA4B,EAC5B,sDAAsD,EACtD,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,gBAAgB,GAGjB,MAAM,
|
|
1
|
+
{"version":3,"file":"ticketListUtils.js","sourceRoot":"","sources":["../../src/utils/ticketListUtils.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/urlUtils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { isProduction } from "./apiUtils";
|
|
1
|
+
import { isProduction } from "./apiUtils.js";
|
|
2
2
|
import { BASH_DETAIL_URL, STRIPE_CHECKOUT_TIMEOUT_MS, STRIPE_REDIRECT_TIMEOUT_MS } from "../definitions";
|
|
3
|
-
import { generateBashDetailUrl } from "./slugUtils";
|
|
3
|
+
import { generateBashDetailUrl } from "./slugUtils.js";
|
|
4
4
|
const API_HOST = process.env.REACT_APP_API ?? "http://localhost:3500";
|
|
5
5
|
export function getFrontendHost() {
|
|
6
6
|
const host = isProduction()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urlUtils.js","sourceRoot":"","sources":["../../src/utils/urlUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"urlUtils.js","sourceRoot":"","sources":["../../src/utils/urlUtils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
-- Add allowAutoJoin to EventGroup: when true, anyone can join instantly; when false (default), join requests require owner approval.
|
|
2
|
+
-- Idempotent — safe to run multiple times.
|
|
3
|
+
|
|
4
|
+
DO $$ BEGIN
|
|
5
|
+
|
|
6
|
+
IF NOT EXISTS (
|
|
7
|
+
SELECT 1 FROM information_schema.columns
|
|
8
|
+
WHERE table_name = 'EventGroup' AND column_name = 'allowAutoJoin'
|
|
9
|
+
) THEN
|
|
10
|
+
ALTER TABLE "EventGroup"
|
|
11
|
+
ADD COLUMN "allowAutoJoin" BOOLEAN NOT NULL DEFAULT false;
|
|
12
|
+
RAISE NOTICE 'Added EventGroup.allowAutoJoin';
|
|
13
|
+
ELSE
|
|
14
|
+
RAISE NOTICE 'EventGroup.allowAutoJoin already exists — skipping';
|
|
15
|
+
END IF;
|
|
16
|
+
|
|
17
|
+
END $$;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
-- Add NotGoing and Maybe to GroupMemberStatus enum (aligns with Invitation RSVP: rejectedDate, maybeDate).
|
|
2
|
+
-- Run once. If values already exist, this will error — safe to ignore on re-run.
|
|
3
|
+
|
|
4
|
+
ALTER TYPE "GroupMemberStatus" ADD VALUE IF NOT EXISTS 'NotGoing';
|
|
5
|
+
ALTER TYPE "GroupMemberStatus" ADD VALUE IF NOT EXISTS 'Maybe';
|
package/prisma/schema.prisma
CHANGED
|
@@ -6877,22 +6877,25 @@ enum GroupVisibility {
|
|
|
6877
6877
|
}
|
|
6878
6878
|
|
|
6879
6879
|
enum GroupMemberStatus {
|
|
6880
|
-
Going // Ticket purchased
|
|
6880
|
+
Going // Ticket purchased / attending
|
|
6881
6881
|
WantsToGo // Interested, no ticket yet
|
|
6882
|
+
Maybe // Maybe attending (aligns with Invitation maybeDate)
|
|
6883
|
+
NotGoing // Not attending (aligns with Invitation rejectedDate)
|
|
6882
6884
|
Invited // Invited by owner, not yet responded
|
|
6883
6885
|
}
|
|
6884
6886
|
|
|
6885
6887
|
// A group of attendees for a specific event
|
|
6886
6888
|
model EventGroup {
|
|
6887
|
-
id
|
|
6888
|
-
bashEventId
|
|
6889
|
-
ownerId
|
|
6890
|
-
name
|
|
6891
|
-
maxMembers
|
|
6892
|
-
visibility
|
|
6893
|
-
|
|
6894
|
-
|
|
6895
|
-
|
|
6889
|
+
id String @id @default(cuid())
|
|
6890
|
+
bashEventId String
|
|
6891
|
+
ownerId String
|
|
6892
|
+
name String? // e.g. "Steve's Birthday Group", "Weber State Crew"
|
|
6893
|
+
maxMembers Int? // null = unlimited
|
|
6894
|
+
visibility GroupVisibility @default(Private)
|
|
6895
|
+
allowAutoJoin Boolean @default(false) // When true, anyone can join instantly; when false, requests require approval
|
|
6896
|
+
promoterId String? // Optional: links to event promoter for display context
|
|
6897
|
+
createdAt DateTime @default(now())
|
|
6898
|
+
updatedAt DateTime @updatedAt
|
|
6896
6899
|
|
|
6897
6900
|
bashEvent BashEvent @relation(fields: [bashEventId], references: [id], onDelete: Cascade)
|
|
6898
6901
|
owner User @relation("OwnedGroups", fields: [ownerId], references: [id], onDelete: Cascade)
|
package/src/definitions.ts
CHANGED
|
@@ -15,12 +15,12 @@ import {
|
|
|
15
15
|
YearsOfExperience,
|
|
16
16
|
} from "@prisma/client";
|
|
17
17
|
import type { BashEventDressTags, BashEventVibeTags } from "@prisma/client";
|
|
18
|
-
import { CheckoutExt, PublicUser, ServiceBookingExt } from "./extendedSchemas";
|
|
19
|
-
import { LuxonDateRange } from "./utils/luxonUtils";
|
|
20
|
-
import { ApiServiceCantBookReason } from "./utils/service/apiServiceBookingApiUtils";
|
|
21
|
-
import { ServiceAttendeeOption } from "./utils/service/attendeeOptionUtils";
|
|
22
|
-
import { FrontendServiceGetPriceToBookResult } from "./utils/service/frontendServiceBookingUtils";
|
|
23
|
-
import { ServiceSubscriptionTier } from "./utils/userSubscriptionUtils";
|
|
18
|
+
import { CheckoutExt, PublicUser, ServiceBookingExt } from "./extendedSchemas.js";
|
|
19
|
+
import { LuxonDateRange } from "./utils/luxonUtils.js";
|
|
20
|
+
import { ApiServiceCantBookReason } from "./utils/service/apiServiceBookingApiUtils.js";
|
|
21
|
+
import { ServiceAttendeeOption } from "./utils/service/attendeeOptionUtils.js";
|
|
22
|
+
import { FrontendServiceGetPriceToBookResult } from "./utils/service/frontendServiceBookingUtils.js";
|
|
23
|
+
import { ServiceSubscriptionTier } from "./utils/userSubscriptionUtils.js";
|
|
24
24
|
|
|
25
25
|
export const PASSWORD_MIN_LENGTH = 8 as const;
|
|
26
26
|
export const PASSWORD_REQUIREMENTS_REGEX = new RegExp(
|
package/src/extendedSchemas.ts
CHANGED
|
@@ -74,8 +74,8 @@ import {
|
|
|
74
74
|
Venue,
|
|
75
75
|
VolunteerService
|
|
76
76
|
} from "@prisma/client";
|
|
77
|
-
import { BlogStatus, SERVICE_LINK_DATA_TO_INCLUDE } from "./definitions";
|
|
78
|
-
import { RemoveCommonProperties, UnionFromArray } from "./utils/typeUtils";
|
|
77
|
+
import { BlogStatus, SERVICE_LINK_DATA_TO_INCLUDE } from "./definitions.js";
|
|
78
|
+
import { RemoveCommonProperties, UnionFromArray } from "./utils/typeUtils.js";
|
|
79
79
|
|
|
80
80
|
export interface ApiResponse<T> {
|
|
81
81
|
data: T;
|
package/src/index.ts
CHANGED
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
export * from "./definitions";
|
|
2
|
-
export * from "./extendedSchemas";
|
|
3
|
-
export * from "./membershipDefinitions";
|
|
1
|
+
export * from "./definitions.js";
|
|
2
|
+
export * from "./extendedSchemas.js";
|
|
3
|
+
export * from "./membershipDefinitions.js";
|
|
4
4
|
|
|
5
5
|
// Re-export commonly used Prisma types
|
|
6
6
|
export type { Service, Organization, User, BashEvent } from '@prisma/client';
|
|
7
7
|
|
|
8
|
-
export * from "./utils/addressUtils";
|
|
9
|
-
export * from "./utils/apiUtils";
|
|
10
|
-
export * from "./utils/arrayUtils";
|
|
11
|
-
export * from "./utils/awsS3Utils";
|
|
12
|
-
export * from "./utils/bashPointsPaymentUtils";
|
|
13
|
-
export * from "./utils/contentFilterUtils";
|
|
14
|
-
export * from "./utils/dateTimeUtils";
|
|
15
|
-
export * from "./utils/displayDateUtils";
|
|
16
|
-
export * from "./utils/discountEngine/bestPriceResolver";
|
|
17
|
-
export * from "./utils/discountEngine/eligibilityValidator";
|
|
18
|
-
export * from "./utils/objUtils";
|
|
19
|
-
export * from "./utils/paymentUtils";
|
|
20
|
-
export * from "./utils/promoCodesUtils";
|
|
21
|
-
export * from "./utils/qrCodeUtils";
|
|
22
|
-
export * from "./utils/recurrenceUtils";
|
|
23
|
-
export * from "./utils/service/attendeeOptionUtils";
|
|
24
|
-
export * from "./utils/service/regexUtils";
|
|
25
|
-
export * from "./utils/service/serviceUtils";
|
|
8
|
+
export * from "./utils/addressUtils.js";
|
|
9
|
+
export * from "./utils/apiUtils.js";
|
|
10
|
+
export * from "./utils/arrayUtils.js";
|
|
11
|
+
export * from "./utils/awsS3Utils.js";
|
|
12
|
+
export * from "./utils/bashPointsPaymentUtils.js";
|
|
13
|
+
export * from "./utils/contentFilterUtils.js";
|
|
14
|
+
export * from "./utils/dateTimeUtils.js";
|
|
15
|
+
export * from "./utils/displayDateUtils.js";
|
|
16
|
+
export * from "./utils/discountEngine/bestPriceResolver.js";
|
|
17
|
+
export * from "./utils/discountEngine/eligibilityValidator.js";
|
|
18
|
+
export * from "./utils/objUtils.js";
|
|
19
|
+
export * from "./utils/paymentUtils.js";
|
|
20
|
+
export * from "./utils/promoCodesUtils.js";
|
|
21
|
+
export * from "./utils/qrCodeUtils.js";
|
|
22
|
+
export * from "./utils/recurrenceUtils.js";
|
|
23
|
+
export * from "./utils/service/attendeeOptionUtils.js";
|
|
24
|
+
export * from "./utils/service/regexUtils.js";
|
|
25
|
+
export * from "./utils/service/serviceUtils.js";
|
|
26
26
|
// Venue utils moved to paymentUtils.ts for better organization
|
|
27
|
-
export * from "./utils/slugUtils";
|
|
28
|
-
export * from "./utils/sortUtils";
|
|
29
|
-
export * from "./utils/stringUtils";
|
|
30
|
-
export * from "./utils/ticketListUtils";
|
|
31
|
-
export * from "./utils/urlUtils";
|
|
32
|
-
export * from "./utils/userPromoCodeUtils";
|
|
33
|
-
export * from "./utils/userSubscriptionUtils";
|
|
34
|
-
export * from "./utils/blog/blogDbUtils";
|
|
35
|
-
export * from "./utils/blogUtils";
|
|
36
|
-
export * from "./utils/entityUtils";
|
|
37
|
-
export * from "./utils/generalDateTimeUtils";
|
|
38
|
-
export * from "./utils/luxonUtils";
|
|
39
|
-
export * from "./utils/mathUtils";
|
|
40
|
-
export * from "./utils/service/apiServiceBookingApiUtils";
|
|
41
|
-
export * from "./utils/service/frontendServiceBookingUtils";
|
|
42
|
-
export * from "./utils/service/serviceBookingStatusUtils";
|
|
43
|
-
export * from "./utils/service/serviceDBUtils";
|
|
44
|
-
export * from "./utils/service/serviceRateUtils";
|
|
45
|
-
export * from "./utils/stripeAccountUtils";
|
|
46
|
-
export * from "./utils/userUtils";
|
|
47
|
-
export * from "./utils/venueTypeFormatter";
|
|
27
|
+
export * from "./utils/slugUtils.js";
|
|
28
|
+
export * from "./utils/sortUtils.js";
|
|
29
|
+
export * from "./utils/stringUtils.js";
|
|
30
|
+
export * from "./utils/ticketListUtils.js";
|
|
31
|
+
export * from "./utils/urlUtils.js";
|
|
32
|
+
export * from "./utils/userPromoCodeUtils.js";
|
|
33
|
+
export * from "./utils/userSubscriptionUtils.js";
|
|
34
|
+
export * from "./utils/blog/blogDbUtils.js";
|
|
35
|
+
export * from "./utils/blogUtils.js";
|
|
36
|
+
export * from "./utils/entityUtils.js";
|
|
37
|
+
export * from "./utils/generalDateTimeUtils.js";
|
|
38
|
+
export * from "./utils/luxonUtils.js";
|
|
39
|
+
export * from "./utils/mathUtils.js";
|
|
40
|
+
export * from "./utils/service/apiServiceBookingApiUtils.js";
|
|
41
|
+
export * from "./utils/service/frontendServiceBookingUtils.js";
|
|
42
|
+
export * from "./utils/service/serviceBookingStatusUtils.js";
|
|
43
|
+
export * from "./utils/service/serviceDBUtils.js";
|
|
44
|
+
export * from "./utils/service/serviceRateUtils.js";
|
|
45
|
+
export * from "./utils/stripeAccountUtils.js";
|
|
46
|
+
export * from "./utils/userUtils.js";
|
|
47
|
+
export * from "./utils/venueTypeFormatter.js";
|
|
48
48
|
|
|
49
49
|
// Export typeUtils types individually to avoid ValueOf conflict with definitions
|
|
50
|
-
export { createAllTrueObject } from "./utils/typeUtils";
|
|
50
|
+
export { createAllTrueObject } from "./utils/typeUtils.js";
|
|
51
51
|
export type {
|
|
52
52
|
DeepPartial, MakeOptional,
|
|
53
53
|
MakeRequired, Override, RemoveCommonProperties, UnionFromArray
|
|
54
|
-
} from "./utils/typeUtils";
|
|
54
|
+
} from "./utils/typeUtils.js";
|
|
55
55
|
|
|
56
56
|
// Event Templates
|
|
57
|
-
export * from "./templates/eventTemplates";
|
|
57
|
+
export * from "./templates/eventTemplates.js";
|
|
58
58
|
|
package/src/utils/blogUtils.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Unified Discount Engine - All discount calculation and validation logic
|
|
2
|
-
export * from './discountCalculator';
|
|
3
|
-
export * from './bestPriceResolver';
|
|
4
|
-
export * from './eligibilityValidator';
|
|
2
|
+
export * from './discountCalculator.js';
|
|
3
|
+
export * from './bestPriceResolver.js';
|
|
4
|
+
export * from './eligibilityValidator.js';
|
|
5
5
|
|
package/src/utils/index.ts
CHANGED
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
export * from './addressUtils';
|
|
2
|
-
export * from './apiUtils';
|
|
3
|
-
export * from './arrayUtils';
|
|
4
|
-
export * from './awsS3Utils';
|
|
5
|
-
export * from './badgeUtils';
|
|
6
|
-
export * from './bashPointsPaymentUtils';
|
|
7
|
-
export * from './blog/blogDbUtils';
|
|
8
|
-
export * from './blogUtils';
|
|
9
|
-
export * from './contentFilterUtils';
|
|
10
|
-
export * from './dateTimeUtils';
|
|
11
|
-
export * from './entityUtils';
|
|
12
|
-
export * from './generalDateTimeUtils';
|
|
13
|
-
export * from './luxonUtils';
|
|
14
|
-
export * from './mathUtils';
|
|
15
|
-
export * from './objUtils';
|
|
16
|
-
export * from './paymentUtils';
|
|
17
|
-
export * from './promoCodesUtils';
|
|
18
|
-
export * from './qrCodeUtils';
|
|
19
|
-
export * from './recurrenceUtils';
|
|
20
|
-
export * from './reviewUtils';
|
|
21
|
-
export * from './service/apiServiceBookingApiUtils';
|
|
22
|
-
export * from './service/attendeeOptionUtils';
|
|
23
|
-
export * from './service/frontendServiceBookingUtils';
|
|
24
|
-
export * from './service/regexUtils';
|
|
25
|
-
export * from './service/serviceBookingStatusUtils';
|
|
26
|
-
export * from './service/serviceBookingTypes';
|
|
27
|
-
export * from './service/serviceDBUtils';
|
|
28
|
-
export * from './service/serviceRateTypes';
|
|
29
|
-
export * from './service/serviceRateUtils';
|
|
30
|
-
export * from './service/serviceUtils';
|
|
31
|
-
export * from './slugUtils';
|
|
32
|
-
export * from './sortUtils';
|
|
33
|
-
export * from './stringUtils';
|
|
34
|
-
export * from './stripeAccountUtils';
|
|
35
|
-
export * from './ticketListUtils';
|
|
36
|
-
export * from './typeUtils';
|
|
37
|
-
export * from './urlUtils';
|
|
38
|
-
export * from './userPromoCodeUtils';
|
|
39
|
-
export * from './userSubscriptionUtils';
|
|
40
|
-
export * from './userUtils';
|
|
41
|
-
export * from './venueTypeFormatter';
|
|
1
|
+
export * from './addressUtils.js';
|
|
2
|
+
export * from './apiUtils.js';
|
|
3
|
+
export * from './arrayUtils.js';
|
|
4
|
+
export * from './awsS3Utils.js';
|
|
5
|
+
export * from './badgeUtils.js';
|
|
6
|
+
export * from './bashPointsPaymentUtils.js';
|
|
7
|
+
export * from './blog/blogDbUtils.js';
|
|
8
|
+
export * from './blogUtils.js';
|
|
9
|
+
export * from './contentFilterUtils.js';
|
|
10
|
+
export * from './dateTimeUtils.js';
|
|
11
|
+
export * from './entityUtils.js';
|
|
12
|
+
export * from './generalDateTimeUtils.js';
|
|
13
|
+
export * from './luxonUtils.js';
|
|
14
|
+
export * from './mathUtils.js';
|
|
15
|
+
export * from './objUtils.js';
|
|
16
|
+
export * from './paymentUtils.js';
|
|
17
|
+
export * from './promoCodesUtils.js';
|
|
18
|
+
export * from './qrCodeUtils.js';
|
|
19
|
+
export * from './recurrenceUtils.js';
|
|
20
|
+
export * from './reviewUtils.js';
|
|
21
|
+
export * from './service/apiServiceBookingApiUtils.js';
|
|
22
|
+
export * from './service/attendeeOptionUtils.js';
|
|
23
|
+
export * from './service/frontendServiceBookingUtils.js';
|
|
24
|
+
export * from './service/regexUtils.js';
|
|
25
|
+
export * from './service/serviceBookingStatusUtils.js';
|
|
26
|
+
export * from './service/serviceBookingTypes.js';
|
|
27
|
+
export * from './service/serviceDBUtils.js';
|
|
28
|
+
export * from './service/serviceRateTypes.js';
|
|
29
|
+
export * from './service/serviceRateUtils.js';
|
|
30
|
+
export * from './service/serviceUtils.js';
|
|
31
|
+
export * from './slugUtils.js';
|
|
32
|
+
export * from './sortUtils.js';
|
|
33
|
+
export * from './stringUtils.js';
|
|
34
|
+
export * from './stripeAccountUtils.js';
|
|
35
|
+
export * from './ticketListUtils.js';
|
|
36
|
+
export * from './typeUtils.js';
|
|
37
|
+
export * from './urlUtils.js';
|
|
38
|
+
export * from './userPromoCodeUtils.js';
|
|
39
|
+
export * from './userSubscriptionUtils.js';
|
|
40
|
+
export * from './userUtils.js';
|
|
41
|
+
export * from './venueTypeFormatter.js';
|
|
42
42
|
|
package/src/utils/luxonUtils.ts
CHANGED
|
@@ -5,8 +5,8 @@ import {
|
|
|
5
5
|
dayOfWeekIdxToDay,
|
|
6
6
|
dayOfWeekIdxToDayOfWeek,
|
|
7
7
|
dayOfWeekToIdx,
|
|
8
|
-
} from "./generalDateTimeUtils";
|
|
9
|
-
import { roundToNearestDivisor } from "./mathUtils";
|
|
8
|
+
} from "./generalDateTimeUtils.js";
|
|
9
|
+
import { roundToNearestDivisor } from "./mathUtils.js";
|
|
10
10
|
|
|
11
11
|
// export const LUXON_DATETIME_FORMAT_STANDARD = "MM/dd/yyyy - hh:mm a";
|
|
12
12
|
export const LUXON_DATETIME_FORMAT_STANDARD = "D t";
|
package/src/utils/qrCodeUtils.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import QRCode from "qrcode";
|
|
2
2
|
import { TICKET_DETAILS } from "../definitions";
|
|
3
|
-
import { generateBashDetailUrl } from "./slugUtils";
|
|
3
|
+
import { generateBashDetailUrl } from "./slugUtils.js";
|
|
4
4
|
|
|
5
5
|
export function bashEventPrismaCheckoutQrCodeUrl(bashEventId: string | undefined | null, prismaCheckoutId: string | undefined | null): string {
|
|
6
6
|
return `${TICKET_DETAILS}/${bashEventId}/${prismaCheckoutId}`;
|
|
@@ -6,9 +6,9 @@ import {
|
|
|
6
6
|
dateTimeSetTime,
|
|
7
7
|
dayOfWeekGetIdx,
|
|
8
8
|
LUXON_DATETIME_FORMAT_ISO_LIKE,
|
|
9
|
-
} from "./luxonUtils";
|
|
10
|
-
import { compareDateTime } from "./dateTimeUtils";
|
|
11
|
-
import { dayOfWeekToIdx } from "./generalDateTimeUtils";
|
|
9
|
+
} from "./luxonUtils.js";
|
|
10
|
+
import { compareDateTime } from "./dateTimeUtils.js";
|
|
11
|
+
import { dayOfWeekToIdx } from "./generalDateTimeUtils.js";
|
|
12
12
|
|
|
13
13
|
export function getRecurringBashEventPossibleDateTimes(
|
|
14
14
|
startDateTime: DateTimeArgType,
|
|
@@ -17,16 +17,16 @@ import {
|
|
|
17
17
|
ServiceExt,
|
|
18
18
|
} from "../../extendedSchemas";
|
|
19
19
|
import { dateTimeFromString, dateTimeRangeFromDates } from "../luxonUtils";
|
|
20
|
-
import { serviceAttendeeOptions } from "./attendeeOptionUtils";
|
|
20
|
+
import { serviceAttendeeOptions } from "./attendeeOptionUtils.js";
|
|
21
21
|
import {
|
|
22
22
|
FrontendServiceBookingDayInfo,
|
|
23
23
|
FrontendServiceGetPriceToBookResult,
|
|
24
24
|
ServiceAddonInput,
|
|
25
|
-
} from "./frontendServiceBookingUtils";
|
|
25
|
+
} from "./frontendServiceBookingUtils.js";
|
|
26
26
|
import {
|
|
27
27
|
ServiceBookingPriceBreakdownBaseT,
|
|
28
28
|
ServiceBookingRequiredData,
|
|
29
|
-
} from "./serviceBookingTypes";
|
|
29
|
+
} from "./serviceBookingTypes.js";
|
|
30
30
|
|
|
31
31
|
export type ApiServiceCantBookReason = {
|
|
32
32
|
type: string;
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
ServiceRatesAssociationExt,
|
|
14
14
|
ServiceSpecialRatesExt,
|
|
15
15
|
} from "../../extendedSchemas";
|
|
16
|
-
import { ServiceAttendeeOption } from "./attendeeOptionUtils";
|
|
16
|
+
import { ServiceAttendeeOption } from "./attendeeOptionUtils.js";
|
|
17
17
|
import {
|
|
18
18
|
getServiceRatePricingInfo,
|
|
19
19
|
SERVICE_DAILY_RATE_HOURS_MIN,
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
serviceRatesFilter,
|
|
22
22
|
serviceRatesHasRates,
|
|
23
23
|
ServiceRatesLuxon,
|
|
24
|
-
} from "./serviceRateUtils";
|
|
24
|
+
} from "./serviceRateUtils.js";
|
|
25
25
|
import {
|
|
26
26
|
dateTimeDiffHours,
|
|
27
27
|
dateTimeRangeHours,
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
ServiceBookingFeeBase,
|
|
32
32
|
ServiceBookingPriceBreakdownBaseT,
|
|
33
33
|
ServiceBookingAddOnBase,
|
|
34
|
-
} from "./serviceBookingTypes";
|
|
34
|
+
} from "./serviceBookingTypes.js";
|
|
35
35
|
import { convertDollarsToCents } from "../paymentUtils";
|
|
36
36
|
import { SERVICE_BOOKING_FEES } from "../../membershipDefinitions";
|
|
37
37
|
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
ServiceBookingExt,
|
|
10
10
|
} from "../../extendedSchemas";
|
|
11
11
|
import { LuxonDateRange } from "../luxonUtils";
|
|
12
|
-
import { FrontendServiceGetPriceToBookResult } from "./frontendServiceBookingUtils";
|
|
12
|
+
import { FrontendServiceGetPriceToBookResult } from "./frontendServiceBookingUtils.js";
|
|
13
13
|
import { MakeNullablePropsOptional, MakeOptional } from "../typeUtils";
|
|
14
14
|
|
|
15
15
|
export type ServiceBookingAddOnBase = Omit<
|
|
@@ -15,11 +15,11 @@ import {
|
|
|
15
15
|
dateTimeFromDate,
|
|
16
16
|
dateTimeRangeIntersection,
|
|
17
17
|
} from "../luxonUtils";
|
|
18
|
-
import { ServiceBookingPriceBreakdownBaseT } from "./serviceBookingTypes";
|
|
18
|
+
import { ServiceBookingPriceBreakdownBaseT } from "./serviceBookingTypes.js";
|
|
19
19
|
import {
|
|
20
20
|
ServiceDailyRatesExtT,
|
|
21
21
|
ServiceSpecialRatesExtT,
|
|
22
|
-
} from "./serviceRateTypes";
|
|
22
|
+
} from "./serviceRateTypes.js";
|
|
23
23
|
|
|
24
24
|
export const SERVICE_DAILY_RATE_HOURS_MIN = 8;
|
|
25
25
|
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
dateTimeFromDate,
|
|
12
12
|
dateTimeFromString,
|
|
13
13
|
LUXON_DATETIME_FORMAT_ISO_LIKE,
|
|
14
|
-
} from "./luxonUtils";
|
|
14
|
+
} from "./luxonUtils.js";
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
17
|
* Encodes a string to Base64 URL-safe format
|
|
@@ -135,6 +135,10 @@ export function ticketListStrToTicketList(
|
|
|
135
135
|
`Could not parse ticketListStr. Maybe it is just an amount?`
|
|
136
136
|
);
|
|
137
137
|
}
|
|
138
|
+
// Skip entries missing the delimiter (malformed input, e.g. a bare tierId)
|
|
139
|
+
if (ticketNumAndDatesStr === undefined) {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
138
142
|
// ~~[numberOfTickets];;[date]~~[numberOfTickets];;[date]~~...
|
|
139
143
|
const ticketNumAndDates = ticketNumAndDatesStr
|
|
140
144
|
.split(URL_PARAMS_NUMBER_OF_TICKETS_TICKETS_DATE_DELIM)
|
package/src/utils/urlUtils.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { isProduction } from "./apiUtils";
|
|
1
|
+
import { isProduction } from "./apiUtils.js";
|
|
2
2
|
import { BASH_DETAIL_URL, STRIPE_CHECKOUT_TIMEOUT_MS, STRIPE_REDIRECT_TIMEOUT_MS } from "../definitions";
|
|
3
|
-
import { generateBashDetailUrl } from "./slugUtils";
|
|
3
|
+
import { generateBashDetailUrl } from "./slugUtils.js";
|
|
4
4
|
|
|
5
5
|
const API_HOST = process.env.REACT_APP_API ?? "http://localhost:3500";
|
|
6
6
|
|