@bash-app/bash-common 30.119.0 → 30.120.1
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/utils/paymentUtils.d.ts +9 -1
- package/dist/utils/paymentUtils.d.ts.map +1 -1
- package/dist/utils/paymentUtils.js +28 -5
- package/dist/utils/paymentUtils.js.map +1 -1
- package/package.json +1 -1
- package/prisma/schema.prisma +5 -5
- package/src/definitions.ts +1 -1
- package/src/utils/paymentUtils.ts +32 -5
|
@@ -7,11 +7,19 @@ import { NumberOfTicketsForDate } from "../definitions";
|
|
|
7
7
|
*/
|
|
8
8
|
export declare function calculateDiscountFromPromoCode(totalInDollars: number, promoCode: BashEventPromoCode | undefined): number;
|
|
9
9
|
/**
|
|
10
|
-
* Returns the total price based on a map where the keys are the ticketTierIds
|
|
10
|
+
* Returns the total price in USD cents based on a map where the keys are the ticketTierIds
|
|
11
|
+
* Only counts USD-priced tickets. BashPoints tickets are excluded (they have price=0).
|
|
11
12
|
* @param ticketTiers
|
|
12
13
|
* @param ticketList
|
|
13
14
|
*/
|
|
14
15
|
export declare function calculateTotalPriceWithoutTax(ticketTiers: TicketTier[], ticketList: Map<string, NumberOfTicketsForDate[]>): number;
|
|
16
|
+
/**
|
|
17
|
+
* Returns the total BashPoints cost for BashPoints-priced tickets
|
|
18
|
+
* Only counts BASHPOINTS-priced tickets. USD tickets are excluded.
|
|
19
|
+
* @param ticketTiers
|
|
20
|
+
* @param ticketList
|
|
21
|
+
*/
|
|
22
|
+
export declare function calculateTotalBashPoints(ticketTiers: TicketTier[], ticketList: Map<string, NumberOfTicketsForDate[]>): number;
|
|
15
23
|
export declare function convertCentsToDollars(price: number | undefined | null): number;
|
|
16
24
|
export declare function convertDollarsToCents(price: number | undefined | null): number;
|
|
17
25
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paymentUtils.d.ts","sourceRoot":"","sources":["../../src/utils/paymentUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,IAAI,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAM5H,OAAO,EACL,sBAAsB,EAEvB,MAAM,gBAAgB,CAAC;AAExB;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,kBAAkB,GAAG,SAAS,GACxC,MAAM,CAeR;AAED
|
|
1
|
+
{"version":3,"file":"paymentUtils.d.ts","sourceRoot":"","sources":["../../src/utils/paymentUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,IAAI,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAM5H,OAAO,EACL,sBAAsB,EAEvB,MAAM,gBAAgB,CAAC;AAExB;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,kBAAkB,GAAG,SAAS,GACxC,MAAM,CAeR;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,UAAU,EAAE,EACzB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAAC,GAChD,MAAM,CAYR;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,UAAU,EAAE,EACzB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAAC,GAChD,MAAM,CAYR;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAC/B,MAAM,CAKR;AACD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAC/B,MAAM,CAKR;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED;;;;;GAKG;AACH,wBAAgB,yCAAyC,CACvD,KAAK,EAAE,MAAM,EACb,cAAc,CAAC,EAAE,cAAc,GAAG,IAAI,GACrC,MAAM,CAkBR;AAED;;;;;;GAMG;AACH,wBAAgB,yCAAyC,CACvD,KAAK,EAAE,MAAM,EACb,cAAc,CAAC,EAAE,cAAc,GAAG,IAAI,GACrC,MAAM,CAeR;AAED;;;;;;GAMG;AACH,wBAAgB,yCAAyC,CACvD,KAAK,EAAE,MAAM,EACb,cAAc,CAAC,EAAE,cAAc,GAAG,IAAI,GACrC,MAAM,CAeR;AAMD,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;KAC/B,GAAG,IAAI,sBAAsB,GAAG,oBAAoB;CACtD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,EAAE,mBAe5B,CAAC"}
|
|
@@ -20,17 +20,40 @@ export function calculateDiscountFromPromoCode(totalInDollars, promoCode) {
|
|
|
20
20
|
return 0;
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
|
-
* Returns the total price based on a map where the keys are the ticketTierIds
|
|
23
|
+
* Returns the total price in USD cents based on a map where the keys are the ticketTierIds
|
|
24
|
+
* Only counts USD-priced tickets. BashPoints tickets are excluded (they have price=0).
|
|
24
25
|
* @param ticketTiers
|
|
25
26
|
* @param ticketList
|
|
26
27
|
*/
|
|
27
28
|
export function calculateTotalPriceWithoutTax(ticketTiers, ticketList) {
|
|
28
29
|
let total = 0;
|
|
29
30
|
ticketTiers.forEach((tier) => {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
// Only calculate USD prices - BashPoints tickets should have price=0
|
|
32
|
+
if (tier.pricingType !== "BASHPOINTS") {
|
|
33
|
+
const ticketListNumAndDate = ticketList.get(tier.id);
|
|
34
|
+
ticketListNumAndDate?.forEach((numAndDate) => {
|
|
35
|
+
total += tier.price * (numAndDate.numberOfTickets ?? 0);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
return total;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Returns the total BashPoints cost for BashPoints-priced tickets
|
|
43
|
+
* Only counts BASHPOINTS-priced tickets. USD tickets are excluded.
|
|
44
|
+
* @param ticketTiers
|
|
45
|
+
* @param ticketList
|
|
46
|
+
*/
|
|
47
|
+
export function calculateTotalBashPoints(ticketTiers, ticketList) {
|
|
48
|
+
let total = 0;
|
|
49
|
+
ticketTiers.forEach((tier) => {
|
|
50
|
+
// Only calculate BashPoints prices
|
|
51
|
+
if (tier.pricingType === "BASHPOINTS" && tier.priceBashPoints) {
|
|
52
|
+
const ticketListNumAndDate = ticketList.get(tier.id);
|
|
53
|
+
ticketListNumAndDate?.forEach((numAndDate) => {
|
|
54
|
+
total += tier.priceBashPoints * (numAndDate.numberOfTickets ?? 0);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
34
57
|
});
|
|
35
58
|
return total;
|
|
36
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paymentUtils.js","sourceRoot":"","sources":["../../src/utils/paymentUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,gBAAgB,IAAI,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC5H,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAEL,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC;AAExB;;;;GAIG;AACH,MAAM,UAAU,8BAA8B,CAC5C,cAAsB,EACtB,SAAyC;IAEzC,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,SAAS,CAAC,qBAAqB,EAAE,CAAC;YACpC,MAAM,iBAAiB,GAAG,qBAAqB,CAC7C,SAAS,CAAC,qBAAqB,CAChC,CAAC;YACF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,0CAA0C;QACnF,CAAC;QACD,IAAI,SAAS,CAAC,wBAAwB,EAAE,CAAC;YACvC,MAAM,iBAAiB,GACrB,cAAc,GAAG,CAAC,SAAS,CAAC,wBAAwB,GAAG,GAAG,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC,CAAC,0CAA0C;QAChG,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"paymentUtils.js","sourceRoot":"","sources":["../../src/utils/paymentUtils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/prisma/schema.prisma
CHANGED
|
@@ -2857,8 +2857,8 @@ model ServiceBooking {
|
|
|
2857
2857
|
isVendorBid Boolean @default(false)
|
|
2858
2858
|
vendorBidAmountCents Int?
|
|
2859
2859
|
vendorEventDetails String?
|
|
2860
|
-
|
|
2861
|
-
|
|
2860
|
+
bashPointsApplied Int? // BashPoints credits applied to this booking
|
|
2861
|
+
bashPointsTransactionId String? // Link to BashCreditTransaction
|
|
2862
2862
|
notification Notification[]
|
|
2863
2863
|
bashEvent BashEvent? @relation(fields: [bashEventId], references: [id])
|
|
2864
2864
|
creator User @relation("BookingCreator", fields: [creatorId], references: [id])
|
|
@@ -3817,7 +3817,7 @@ enum PrizeType {
|
|
|
3817
3817
|
}
|
|
3818
3818
|
|
|
3819
3819
|
enum PrizePaymentMethod {
|
|
3820
|
-
|
|
3820
|
+
BashPoints
|
|
3821
3821
|
Venmo
|
|
3822
3822
|
ZelleEmail
|
|
3823
3823
|
ZellePhone
|
|
@@ -5509,7 +5509,7 @@ enum AuditAction {
|
|
|
5509
5509
|
REFUND_ISSUED
|
|
5510
5510
|
REFUND_FAILED
|
|
5511
5511
|
|
|
5512
|
-
//
|
|
5512
|
+
// BashPoints
|
|
5513
5513
|
CREDITS_EARNED
|
|
5514
5514
|
CREDITS_REDEEMED
|
|
5515
5515
|
CREDITS_EXPIRED
|
|
@@ -5554,7 +5554,7 @@ enum AuditCategory {
|
|
|
5554
5554
|
Authorization
|
|
5555
5555
|
UserManagement
|
|
5556
5556
|
Payment
|
|
5557
|
-
|
|
5557
|
+
BashPoints
|
|
5558
5558
|
Events
|
|
5559
5559
|
Tickets
|
|
5560
5560
|
AdminAction
|
package/src/definitions.ts
CHANGED
|
@@ -363,7 +363,7 @@ export type ApiEntityApproval = {
|
|
|
363
363
|
|
|
364
364
|
export type TicketTierWherePriceIsAString = Omit<TicketTier, "price"> & {
|
|
365
365
|
price: string;
|
|
366
|
-
pricingType?: string; // 'USD' or '
|
|
366
|
+
pricingType?: string; // 'USD' or 'BASHPOINTS'
|
|
367
367
|
priceBashPoints?: string; // Price in BashPoints credits (string for form input)
|
|
368
368
|
} & { cannotDelete: boolean };
|
|
369
369
|
|
|
@@ -35,7 +35,8 @@ export function calculateDiscountFromPromoCode(
|
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
/**
|
|
38
|
-
* Returns the total price based on a map where the keys are the ticketTierIds
|
|
38
|
+
* Returns the total price in USD cents based on a map where the keys are the ticketTierIds
|
|
39
|
+
* Only counts USD-priced tickets. BashPoints tickets are excluded (they have price=0).
|
|
39
40
|
* @param ticketTiers
|
|
40
41
|
* @param ticketList
|
|
41
42
|
*/
|
|
@@ -45,10 +46,36 @@ export function calculateTotalPriceWithoutTax(
|
|
|
45
46
|
): number {
|
|
46
47
|
let total = 0;
|
|
47
48
|
ticketTiers.forEach((tier: TicketTier) => {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
// Only calculate USD prices - BashPoints tickets should have price=0
|
|
50
|
+
if (tier.pricingType !== "BASHPOINTS") {
|
|
51
|
+
const ticketListNumAndDate = ticketList.get(tier.id);
|
|
52
|
+
ticketListNumAndDate?.forEach((numAndDate: NumberOfTicketsForDate) => {
|
|
53
|
+
total += tier.price * (numAndDate.numberOfTickets ?? 0);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
return total;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Returns the total BashPoints cost for BashPoints-priced tickets
|
|
62
|
+
* Only counts BASHPOINTS-priced tickets. USD tickets are excluded.
|
|
63
|
+
* @param ticketTiers
|
|
64
|
+
* @param ticketList
|
|
65
|
+
*/
|
|
66
|
+
export function calculateTotalBashPoints(
|
|
67
|
+
ticketTiers: TicketTier[],
|
|
68
|
+
ticketList: Map<string, NumberOfTicketsForDate[]>
|
|
69
|
+
): number {
|
|
70
|
+
let total = 0;
|
|
71
|
+
ticketTiers.forEach((tier: TicketTier) => {
|
|
72
|
+
// Only calculate BashPoints prices
|
|
73
|
+
if (tier.pricingType === "BASHPOINTS" && tier.priceBashPoints) {
|
|
74
|
+
const ticketListNumAndDate = ticketList.get(tier.id);
|
|
75
|
+
ticketListNumAndDate?.forEach((numAndDate: NumberOfTicketsForDate) => {
|
|
76
|
+
total += tier.priceBashPoints! * (numAndDate.numberOfTickets ?? 0);
|
|
77
|
+
});
|
|
78
|
+
}
|
|
52
79
|
});
|
|
53
80
|
return total;
|
|
54
81
|
}
|