@bash-app/bash-common 30.424.0 → 30.427.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/__tests__/agePolicy.test.js +6 -6
- package/dist/__tests__/agePolicy.test.js.map +1 -1
- package/dist/__tests__/bashEventCancellationPolicy.test.js +2 -2
- package/dist/__tests__/bashEventCancellationPolicy.test.js.map +1 -1
- package/dist/__tests__/bashSectionTitleForBashType.test.js +3 -3
- package/dist/__tests__/definitionsHelpers.test.js +1 -1
- package/dist/__tests__/definitionsHelpers.test.js.map +1 -1
- package/dist/__tests__/entertainmentNotableVenues.test.js +1 -1
- package/dist/__tests__/entertainmentNotableVenues.test.js.map +1 -1
- package/dist/__tests__/hostCrmCrowdPulse.test.js +1 -1
- package/dist/__tests__/hostCrmSegments.test.js +2 -2
- package/dist/__tests__/hostCrmSegments.test.js.map +1 -1
- package/dist/__tests__/hostPromoter.test.js +1 -1
- package/dist/__tests__/influencerAudience.test.js +1 -1
- package/dist/__tests__/influencerAudience.test.js.map +1 -1
- package/dist/__tests__/promoterCompetitionUtils.test.js +3 -3
- package/dist/__tests__/promoterCompetitionUtils.test.js.map +1 -1
- package/dist/__tests__/scenePulse.test.js +1 -1
- package/dist/__tests__/seatMap.test.js +1 -1
- package/dist/__tests__/seatMap.test.js.map +1 -1
- package/dist/__tests__/ticketAdmission.test.d.ts +1 -1
- package/dist/__tests__/ticketAdmission.test.js +1 -1
- package/dist/accessScreening.js +1 -1
- package/dist/aiApproval.d.ts +3 -3
- package/dist/aiApproval.js +3 -3
- package/dist/appleIapProducts.d.ts +1 -1
- package/dist/appleIapProducts.d.ts.map +1 -1
- package/dist/appleIapProducts.js +1 -1
- package/dist/appleIapProducts.js.map +1 -1
- package/dist/applicationFunnel.d.ts +1 -1
- package/dist/applicationFunnel.js +1 -1
- package/dist/audienceImport.d.ts +2 -2
- package/dist/audienceImport.d.ts.map +1 -1
- package/dist/audienceImport.js +2 -2
- package/dist/audienceImport.js.map +1 -1
- package/dist/bashEventCancellationPolicy.js +3 -3
- package/dist/bashEventCancellationPolicy.js.map +1 -1
- package/dist/budgetApproval.d.ts +1 -1
- package/dist/budgetApproval.js +1 -1
- package/dist/causeTags.js +4 -4
- package/dist/causeTags.js.map +1 -1
- package/dist/competitionIdeas.js +12 -12
- package/dist/competitionIdeas.js.map +1 -1
- package/dist/competitionValidation.d.ts +1 -1
- package/dist/competitionValidation.d.ts.map +1 -1
- package/dist/competitionValidation.js +1 -1
- package/dist/competitionValidation.js.map +1 -1
- package/dist/definitions.d.ts +35 -35
- package/dist/definitions.d.ts.map +1 -1
- package/dist/definitions.js +30 -30
- package/dist/definitions.js.map +1 -1
- package/dist/discoveryScope.d.ts +2 -2
- package/dist/discoveryScope.js +2 -2
- package/dist/entertainmentNotableVenues.js +1 -1
- package/dist/entertainmentNotableVenues.js.map +1 -1
- package/dist/extendedSchemas.d.ts +150 -150
- package/dist/extendedSchemas.d.ts.map +1 -1
- package/dist/extendedSchemas.js +11 -11
- package/dist/extendedSchemas.js.map +1 -1
- package/dist/fundingMeter.d.ts +1 -1
- package/dist/fundingMeter.js +1 -1
- package/dist/giveaway.d.ts +2 -2
- package/dist/giveaway.d.ts.map +1 -1
- package/dist/giveaway.js +2 -2
- package/dist/giveaway.js.map +1 -1
- package/dist/guestPartySize.js +3 -3
- package/dist/guestPartySize.js.map +1 -1
- package/dist/home.d.ts +1 -1
- package/dist/homepageSyntheticRows.d.ts +2 -2
- package/dist/homepageSyntheticRows.d.ts.map +1 -1
- package/dist/homepageSyntheticRows.js +2 -2
- package/dist/homepageSyntheticRows.js.map +1 -1
- package/dist/hostCrmAutomation.d.ts +11 -11
- package/dist/hostCrmAutomation.d.ts.map +1 -1
- package/dist/hostCrmAutomation.js +9 -9
- package/dist/hostCrmAutomation.js.map +1 -1
- package/dist/hostCrmConstants.d.ts +1 -1
- package/dist/hostCrmConstants.d.ts.map +1 -1
- package/dist/hostCrmConstants.js +1 -1
- package/dist/hostCrmConstants.js.map +1 -1
- package/dist/hostCrmCrowdPulse.d.ts +2 -2
- package/dist/hostCrmCrowdPulse.d.ts.map +1 -1
- package/dist/hostCrmCrowdPulse.js +1 -1
- package/dist/hostCrmInsights.d.ts +3 -3
- package/dist/hostCrmLastBashProof.d.ts +2 -2
- package/dist/hostCrmLastBashProof.d.ts.map +1 -1
- package/dist/hostCrmLastBashProof.js +1 -1
- package/dist/hostCrmSegments.d.ts +10 -10
- package/dist/hostCrmSegments.d.ts.map +1 -1
- package/dist/hostCrmSegments.js +2 -2
- package/dist/hostCrmSegments.js.map +1 -1
- package/dist/hostPromoter.d.ts +1 -1
- package/dist/hostPromoter.d.ts.map +1 -1
- package/dist/hostPromoter.js +1 -1
- package/dist/hostPromoter.js.map +1 -1
- package/dist/icebreakerPrompts.js +2 -2
- package/dist/icebreakerPrompts.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/influencerAudience.js +3 -3
- package/dist/influencerAudience.js.map +1 -1
- package/dist/liveActivity/liveActivityTypes.d.ts +10 -10
- package/dist/liveActivity/liveActivityTypes.d.ts.map +1 -1
- package/dist/liveActivity/liveActivityTypes.js +2 -2
- package/dist/liveActivity/liveActivityTypes.js.map +1 -1
- package/dist/locationShare.d.ts +2 -2
- package/dist/locationShare.d.ts.map +1 -1
- package/dist/locationShare.js +2 -2
- package/dist/locationShare.js.map +1 -1
- package/dist/membershipDefinitions.d.ts +5 -5
- package/dist/membershipDefinitions.d.ts.map +1 -1
- package/dist/membershipDefinitions.js +21 -21
- package/dist/membershipDefinitions.js.map +1 -1
- package/dist/mirroredPrismaEnums.d.ts +6 -6
- package/dist/mirroredPrismaEnums.js +6 -6
- package/dist/onSaleCapabilityRecommendations.d.ts +1 -1
- package/dist/onSaleCapabilityRecommendations.js +1 -1
- package/dist/partnerStoreTypes.d.ts +1 -1
- package/dist/partnerStoreTypes.d.ts.map +1 -1
- package/dist/productLaunch.d.ts +2 -2
- package/dist/productLaunch.d.ts.map +1 -1
- package/dist/productLaunch.js +2 -2
- package/dist/productLaunch.js.map +1 -1
- package/dist/relationshipHealth.d.ts +3 -3
- package/dist/relationshipHealth.d.ts.map +1 -1
- package/dist/relationshipHealth.js +3 -3
- package/dist/relationshipHealth.js.map +1 -1
- package/dist/scenePulse.d.ts +2 -2
- package/dist/scenePulse.js +1 -1
- package/dist/seatMap.d.ts +1 -1
- package/dist/seatMap.d.ts.map +1 -1
- package/dist/seatMap.js +2 -2
- package/dist/seatMap.js.map +1 -1
- package/dist/seatMapBestAvailable.js +2 -2
- package/dist/seatMapBestAvailable.js.map +1 -1
- package/dist/serviceTypeLabels.d.ts +3 -3
- package/dist/serviceTypeLabels.js +3 -3
- package/dist/sideQuestIdeas.js +8 -8
- package/dist/sideQuestIdeas.js.map +1 -1
- package/dist/sideQuestTypes.js +2 -2
- package/dist/sideQuestTypes.js.map +1 -1
- package/dist/sms/smsTemplates.d.ts +1 -1
- package/dist/sms/smsTemplates.js +1 -1
- package/dist/stripeListingSubscriptionMessages.d.ts +1 -1
- package/dist/stripeListingSubscriptionMessages.js +1 -1
- package/dist/targetAudienceLabels.d.ts +1 -1
- package/dist/targetAudienceLabels.js +1 -1
- package/dist/ticketBnplPaymentMethods.d.ts +3 -3
- package/dist/ticketBnplPaymentMethods.d.ts.map +1 -1
- package/dist/ticketBnplPaymentMethods.js +2 -2
- package/dist/userReportTypes.d.ts +1 -1
- package/dist/userReportTypes.d.ts.map +1 -1
- package/dist/userReportTypes.js +1 -1
- package/dist/userReportTypes.js.map +1 -1
- package/dist/userTaste.d.ts +2 -2
- package/dist/userTaste.d.ts.map +1 -1
- package/dist/userTaste.js +2 -2
- package/dist/userTaste.js.map +1 -1
- package/dist/utils/__tests__/badgeUtils.test.js +5 -5
- package/dist/utils/__tests__/badgeUtils.test.js.map +1 -1
- package/dist/utils/__tests__/bashPointsPaymentUtils.test.js +4 -4
- package/dist/utils/__tests__/bashPointsPaymentUtils.test.js.map +1 -1
- package/dist/utils/__tests__/contentFilterUtils.test.js +23 -23
- package/dist/utils/__tests__/contentFilterUtils.test.js.map +1 -1
- package/dist/utils/__tests__/dateTimeUtils.test.js +1 -1
- package/dist/utils/__tests__/displayDateUtils.test.js +1 -1
- package/dist/utils/__tests__/flyerUtils.test.js +1 -1
- package/dist/utils/__tests__/flyerUtils.test.js.map +1 -1
- package/dist/utils/__tests__/getBackendHost.test.js +8 -8
- package/dist/utils/__tests__/getBackendHost.test.js.map +1 -1
- package/dist/utils/__tests__/getFrontendHost.native.test.js +1 -1
- package/dist/utils/__tests__/getFrontendHost.native.test.js.map +1 -1
- package/dist/utils/__tests__/getFrontendHost.test.js +9 -9
- package/dist/utils/__tests__/getFrontendHost.test.js.map +1 -1
- package/dist/utils/__tests__/guestSurface.test.js +1 -0
- package/dist/utils/__tests__/guestSurface.test.js.map +1 -1
- package/dist/utils/__tests__/organizationEntitlements.test.js +1 -1
- package/dist/utils/__tests__/organizationEntitlements.test.js.map +1 -1
- package/dist/utils/__tests__/paymentUtils.test.js +7 -7
- package/dist/utils/__tests__/paymentUtils.test.js.map +1 -1
- package/dist/utils/__tests__/promoCodesUtils.test.js +2 -2
- package/dist/utils/__tests__/promoCodesUtils.test.js.map +1 -1
- package/dist/utils/__tests__/qrCodeUtils.test.js +4 -4
- package/dist/utils/__tests__/qrCodeUtils.test.js.map +1 -1
- package/dist/utils/__tests__/recurrenceUtils.test.js +18 -0
- package/dist/utils/__tests__/recurrenceUtils.test.js.map +1 -1
- package/dist/utils/__tests__/reviewDimensionUtils.test.js +1 -1
- package/dist/utils/__tests__/reviewDimensionUtils.test.js.map +1 -1
- package/dist/utils/__tests__/stripeAccountUtils.test.js +1 -1
- package/dist/utils/__tests__/ticketPrintPostageUtils.test.js +1 -1
- package/dist/utils/__tests__/ticketPrintPostageUtils.test.js.map +1 -1
- package/dist/utils/addressUtils.js +1 -1
- package/dist/utils/addressUtils.js.map +1 -1
- package/dist/utils/apiUtils.js +1 -1
- package/dist/utils/apiUtils.js.map +1 -1
- package/dist/utils/birthdayExperienceQuality.d.ts +1 -1
- package/dist/utils/birthdayExperienceQuality.js +4 -4
- package/dist/utils/birthdayExperienceQuality.js.map +1 -1
- package/dist/utils/blogUtils.d.ts +1 -1
- package/dist/utils/blogUtils.d.ts.map +1 -1
- package/dist/utils/blogUtils.js +2 -2
- package/dist/utils/blogUtils.js.map +1 -1
- package/dist/utils/discountEngine/discountCalculator.js +1 -1
- package/dist/utils/discountEngine/discountCalculator.js.map +1 -1
- package/dist/utils/displayDateUtils.d.ts +2 -2
- package/dist/utils/displayDateUtils.d.ts.map +1 -1
- package/dist/utils/displayDateUtils.js +2 -2
- package/dist/utils/displayDateUtils.js.map +1 -1
- package/dist/utils/entertainmentDrawFit.d.ts +1 -1
- package/dist/utils/entertainmentDrawFit.js +1 -1
- package/dist/utils/eventTimezoneIana.d.ts +1 -1
- package/dist/utils/eventTimezoneIana.js +4 -4
- package/dist/utils/eventTimezoneIana.js.map +1 -1
- package/dist/utils/flyerUtils.d.ts +2 -2
- package/dist/utils/flyerUtils.d.ts.map +1 -1
- package/dist/utils/flyerUtils.js +3 -3
- package/dist/utils/flyerUtils.js.map +1 -1
- package/dist/utils/groupTicketCartUtils.js +1 -1
- package/dist/utils/groupTicketCartUtils.js.map +1 -1
- package/dist/utils/guestSurface.d.ts +2 -2
- package/dist/utils/guestSurface.d.ts.map +1 -1
- package/dist/utils/guestSurface.js +8 -5
- package/dist/utils/guestSurface.js.map +1 -1
- package/dist/utils/lobFlyerUtils.d.ts +2 -2
- package/dist/utils/lobFlyerUtils.js +2 -2
- package/dist/utils/luxonUtils.d.ts +4 -4
- package/dist/utils/luxonUtils.js +5 -5
- package/dist/utils/luxonUtils.js.map +1 -1
- package/dist/utils/moodTrackUtils.d.ts +1 -1
- package/dist/utils/moodTrackUtils.js +1 -1
- package/dist/utils/nonprofitUtils.d.ts +3 -3
- package/dist/utils/nonprofitUtils.js +2 -2
- package/dist/utils/orgPromotionalPackageUtils.d.ts +1 -1
- package/dist/utils/orgPromotionalPackageUtils.js +1 -1
- package/dist/utils/organizationEntitlements.d.ts +4 -4
- package/dist/utils/organizationEntitlements.js +3 -3
- package/dist/utils/paymentUtils.d.ts +10 -10
- package/dist/utils/paymentUtils.js +9 -9
- package/dist/utils/promoterCompetitionUtils.d.ts +4 -4
- package/dist/utils/promoterCompetitionUtils.d.ts.map +1 -1
- package/dist/utils/promoterCompetitionUtils.js +7 -7
- package/dist/utils/promoterCompetitionUtils.js.map +1 -1
- package/dist/utils/promotionBlastUtils.d.ts +1 -1
- package/dist/utils/promotionBlastUtils.js +4 -4
- package/dist/utils/promotionBlastUtils.js.map +1 -1
- package/dist/utils/qrCodeUtils.d.ts +3 -3
- package/dist/utils/qrCodeUtils.d.ts.map +1 -1
- package/dist/utils/qrCodeUtils.js +3 -3
- package/dist/utils/qrCodeUtils.js.map +1 -1
- package/dist/utils/recurrenceUtils.d.ts +7 -4
- package/dist/utils/recurrenceUtils.d.ts.map +1 -1
- package/dist/utils/recurrenceUtils.js +32 -5
- package/dist/utils/recurrenceUtils.js.map +1 -1
- package/dist/utils/reputationUtils.d.ts +2 -2
- package/dist/utils/reputationUtils.d.ts.map +1 -1
- package/dist/utils/reputationUtils.js +1 -1
- package/dist/utils/reputationUtils.js.map +1 -1
- package/dist/utils/reviewDimensionUtils.d.ts +2 -2
- package/dist/utils/reviewDimensionUtils.d.ts.map +1 -1
- package/dist/utils/reviewDimensionUtils.js +1 -1
- package/dist/utils/reviewDimensionUtils.js.map +1 -1
- package/dist/utils/service/__tests__/billingCapUtils.test.js +3 -3
- package/dist/utils/service/__tests__/billingCapUtils.test.js.map +1 -1
- package/dist/utils/service/__tests__/eventPromoterPhase3.test.js +1 -1
- package/dist/utils/service/__tests__/eventPromoterUtils.test.js +1 -1
- package/dist/utils/service/__tests__/eventPromoterUtils.test.js.map +1 -1
- package/dist/utils/service/__tests__/frontendServiceBookingUtils.test.js +2 -2
- package/dist/utils/service/__tests__/frontendServiceBookingUtils.test.js.map +1 -1
- package/dist/utils/service/__tests__/serviceBookingExposureUtils.test.js +1 -1
- package/dist/utils/service/__tests__/serviceBookingExposureUtils.test.js.map +1 -1
- package/dist/utils/service/__tests__/serviceBookingStatusUtils.test.js +2 -2
- package/dist/utils/service/__tests__/serviceBookingStatusUtils.test.js.map +1 -1
- package/dist/utils/service/__tests__/serviceRateUtils.test.js +6 -6
- package/dist/utils/service/__tests__/serviceRateUtils.test.js.map +1 -1
- package/dist/utils/service/apiServiceBookingApiUtils.js +1 -1
- package/dist/utils/service/apiServiceBookingApiUtils.js.map +1 -1
- package/dist/utils/service/billingCapUtils.d.ts +5 -5
- package/dist/utils/service/billingCapUtils.js +5 -5
- package/dist/utils/service/cancellationPolicyRefundResolver.d.ts +1 -1
- package/dist/utils/service/cancellationPolicyRefundResolver.d.ts.map +1 -1
- package/dist/utils/service/eventPromoterUtils.d.ts +17 -17
- package/dist/utils/service/eventPromoterUtils.d.ts.map +1 -1
- package/dist/utils/service/eventPromoterUtils.js +11 -11
- package/dist/utils/service/eventPromoterUtils.js.map +1 -1
- package/dist/utils/service/foodAndBeverageQuote.d.ts +8 -8
- package/dist/utils/service/foodAndBeverageQuote.js +8 -8
- package/dist/utils/service/offerAllowListUtils.d.ts +1 -1
- package/dist/utils/service/offerComparisonUtils.d.ts +6 -6
- package/dist/utils/service/offerComparisonUtils.js +2 -2
- package/dist/utils/service/offerComparisonUtils.js.map +1 -1
- package/dist/utils/service/serviceBookingExposureUtils.d.ts +7 -7
- package/dist/utils/service/serviceBookingExposureUtils.js +5 -5
- package/dist/utils/service/serviceBookingExposureUtils.js.map +1 -1
- package/dist/utils/service/serviceFeaturedSortUtils.js +2 -2
- package/dist/utils/service/serviceFeaturedSortUtils.js.map +1 -1
- package/dist/utils/service/serviceListingMediaUtils.d.ts +2 -2
- package/dist/utils/service/serviceListingMediaUtils.d.ts.map +1 -1
- package/dist/utils/service/serviceListingMediaUtils.js +2 -2
- package/dist/utils/service/serviceListingMediaUtils.js.map +1 -1
- package/dist/utils/service/serviceUtils.js +2 -2
- package/dist/utils/service/serviceUtils.js.map +1 -1
- package/dist/utils/service/unifiedPricingResolver.d.ts +5 -5
- package/dist/utils/service/unifiedPricingResolver.d.ts.map +1 -1
- package/dist/utils/service/venueSettlementUtils.d.ts +2 -2
- package/dist/utils/service/venueSettlementUtils.js +3 -3
- package/dist/utils/service/venueSettlementUtils.js.map +1 -1
- package/dist/utils/service/volunteerCompensationUtils.d.ts +2 -2
- package/dist/utils/service/volunteerCompensationUtils.js +1 -1
- package/dist/utils/service/volunteerCompensationUtils.js.map +1 -1
- package/dist/utils/slugUtils.d.ts +1 -1
- package/dist/utils/slugUtils.js +1 -1
- package/dist/utils/ticketPrintPostageUtils.d.ts +4 -4
- package/dist/utils/ticketPrintPostageUtils.js +5 -5
- package/dist/utils/ticketPrintPostageUtils.js.map +1 -1
- package/dist/utils/ticketTierSchedule.d.ts +1 -1
- package/dist/utils/ticketTierSchedule.js +4 -4
- package/dist/utils/ticketTierSchedule.js.map +1 -1
- package/dist/utils/trustScoreUtils.d.ts +1 -1
- package/dist/utils/trustScoreUtils.js +1 -1
- package/dist/utils/urlUtils.d.ts +2 -2
- package/dist/utils/urlUtils.js +2 -2
- package/dist/utils/userUtils.d.ts +4 -4
- package/dist/utils/userUtils.js +3 -3
- package/dist/utils/venueLoyalty/__tests__/eligibilityUtils.test.js +1 -1
- package/dist/utils/venueLoyalty/__tests__/redemptionCodeUtils.test.js +1 -1
- package/dist/utils/venueLoyalty/redemptionCodeUtils.d.ts +3 -3
- package/dist/utils/venueLoyalty/redemptionCodeUtils.js +3 -3
- package/dist/venueLoyaltyRedemption.d.ts +2 -2
- package/dist/venueLoyaltyRedemption.js +1 -1
- package/dist/venueMatch.d.ts +4 -4
- package/dist/venueMatch.d.ts.map +1 -1
- package/dist/venueMatch.js +1 -1
- package/dist/venueMatch.js.map +1 -1
- package/package.json +1 -1
- package/prisma/schema.prisma +3 -3
- package/src/__tests__/agePolicy.test.ts +6 -6
- package/src/__tests__/bashEventCancellationPolicy.test.ts +2 -2
- package/src/__tests__/bashSectionTitleForBashType.test.ts +3 -3
- package/src/__tests__/definitionsHelpers.test.ts +1 -1
- package/src/__tests__/entertainmentNotableVenues.test.ts +1 -1
- package/src/__tests__/hostCrmCrowdPulse.test.ts +1 -1
- package/src/__tests__/hostCrmSegments.test.ts +2 -2
- package/src/__tests__/hostPromoter.test.ts +1 -1
- package/src/__tests__/influencerAudience.test.ts +1 -1
- package/src/__tests__/promoterCompetitionUtils.test.ts +3 -3
- package/src/__tests__/scenePulse.test.ts +1 -1
- package/src/__tests__/seatMap.test.ts +1 -1
- package/src/__tests__/ticketAdmission.test.ts +1 -1
- package/src/accessScreening.ts +1 -1
- package/src/aiApproval.ts +3 -3
- package/src/appleIapProducts.ts +1 -1
- package/src/applicationFunnel.ts +1 -1
- package/src/audienceImport.ts +2 -2
- package/src/bashEventCancellationPolicy.ts +3 -3
- package/src/budgetApproval.ts +1 -1
- package/src/causeTags.ts +4 -4
- package/src/competitionIdeas.ts +12 -12
- package/src/competitionValidation.ts +1 -1
- package/src/definitions.ts +42 -42
- package/src/discoveryScope.ts +2 -2
- package/src/entertainmentNotableVenues.ts +1 -1
- package/src/extendedSchemas.ts +41 -41
- package/src/fundingMeter.ts +1 -1
- package/src/giveaway.ts +2 -2
- package/src/guestPartySize.ts +3 -3
- package/src/home.ts +1 -1
- package/src/homepageSyntheticRows.ts +2 -2
- package/src/hostCrmAutomation.ts +11 -11
- package/src/hostCrmConstants.ts +1 -1
- package/src/hostCrmCrowdPulse.ts +2 -2
- package/src/hostCrmInsights.ts +3 -3
- package/src/hostCrmLastBashProof.ts +2 -2
- package/src/hostCrmSegments.ts +12 -12
- package/src/hostPromoter.ts +1 -1
- package/src/icebreakerPrompts.ts +2 -2
- package/src/index.ts +1 -1
- package/src/influencerAudience.ts +3 -3
- package/src/liveActivity/liveActivityTypes.ts +10 -10
- package/src/locationShare.ts +2 -2
- package/src/membershipDefinitions.ts +21 -21
- package/src/mirroredPrismaEnums.ts +6 -6
- package/src/onSaleCapabilityRecommendations.ts +1 -1
- package/src/partnerStoreTypes.ts +1 -1
- package/src/productLaunch.ts +2 -2
- package/src/relationshipHealth.ts +5 -5
- package/src/scenePulse.ts +2 -2
- package/src/seatMap.ts +3 -3
- package/src/seatMapBestAvailable.ts +2 -2
- package/src/serviceTypeLabels.ts +3 -3
- package/src/sideQuestIdeas.ts +8 -8
- package/src/sideQuestTypes.ts +2 -2
- package/src/sms/smsTemplates.ts +1 -1
- package/src/stripeListingSubscriptionMessages.ts +1 -1
- package/src/targetAudienceLabels.ts +1 -1
- package/src/ticketBnplPaymentMethods.ts +3 -3
- package/src/userReportTypes.ts +1 -1
- package/src/userTaste.ts +2 -2
- package/src/utils/__tests__/badgeUtils.test.ts +5 -5
- package/src/utils/__tests__/bashPointsPaymentUtils.test.ts +4 -4
- package/src/utils/__tests__/contentFilterUtils.test.ts +23 -23
- package/src/utils/__tests__/dateTimeUtils.test.ts +1 -1
- package/src/utils/__tests__/displayDateUtils.test.ts +1 -1
- package/src/utils/__tests__/flyerUtils.test.ts +1 -1
- package/src/utils/__tests__/getBackendHost.test.ts +8 -8
- package/src/utils/__tests__/getFrontendHost.native.test.ts +1 -1
- package/src/utils/__tests__/getFrontendHost.test.ts +9 -9
- package/src/utils/__tests__/guestSurface.test.ts +1 -0
- package/src/utils/__tests__/organizationEntitlements.test.ts +1 -1
- package/src/utils/__tests__/paymentUtils.test.ts +7 -7
- package/src/utils/__tests__/promoCodesUtils.test.ts +2 -2
- package/src/utils/__tests__/qrCodeUtils.test.ts +4 -4
- package/src/utils/__tests__/recurrenceUtils.test.ts +26 -0
- package/src/utils/__tests__/reviewDimensionUtils.test.ts +1 -1
- package/src/utils/__tests__/stripeAccountUtils.test.ts +1 -1
- package/src/utils/__tests__/ticketPrintPostageUtils.test.ts +1 -1
- package/src/utils/addressUtils.ts +1 -1
- package/src/utils/apiUtils.ts +1 -1
- package/src/utils/birthdayExperienceQuality.ts +4 -4
- package/src/utils/blogUtils.ts +2 -2
- package/src/utils/discountEngine/discountCalculator.ts +1 -1
- package/src/utils/displayDateUtils.ts +2 -2
- package/src/utils/entertainmentDrawFit.ts +1 -1
- package/src/utils/eventTimezoneIana.ts +4 -4
- package/src/utils/flyerUtils.ts +3 -3
- package/src/utils/groupTicketCartUtils.ts +1 -1
- package/src/utils/guestSurface.ts +8 -6
- package/src/utils/lobFlyerUtils.ts +2 -2
- package/src/utils/luxonUtils.ts +5 -5
- package/src/utils/moodTrackUtils.ts +1 -1
- package/src/utils/nonprofitUtils.ts +3 -3
- package/src/utils/orgPromotionalPackageUtils.ts +1 -1
- package/src/utils/organizationEntitlements.ts +4 -4
- package/src/utils/paymentUtils.ts +10 -10
- package/src/utils/promoterCompetitionUtils.ts +8 -8
- package/src/utils/promotionBlastUtils.ts +4 -4
- package/src/utils/qrCodeUtils.ts +3 -3
- package/src/utils/recurrenceUtils.ts +33 -5
- package/src/utils/reputationUtils.ts +3 -3
- package/src/utils/reviewDimensionUtils.ts +2 -2
- package/src/utils/service/__tests__/billingCapUtils.test.ts +3 -3
- package/src/utils/service/__tests__/eventPromoterPhase3.test.ts +1 -1
- package/src/utils/service/__tests__/eventPromoterUtils.test.ts +1 -1
- package/src/utils/service/__tests__/frontendServiceBookingUtils.test.ts +2 -2
- package/src/utils/service/__tests__/serviceBookingExposureUtils.test.ts +1 -1
- package/src/utils/service/__tests__/serviceBookingStatusUtils.test.ts +2 -2
- package/src/utils/service/__tests__/serviceRateUtils.test.ts +6 -6
- package/src/utils/service/apiServiceBookingApiUtils.ts +1 -1
- package/src/utils/service/billingCapUtils.ts +5 -5
- package/src/utils/service/cancellationPolicyRefundResolver.ts +1 -1
- package/src/utils/service/eventPromoterUtils.ts +27 -27
- package/src/utils/service/foodAndBeverageQuote.ts +8 -8
- package/src/utils/service/offerAllowListUtils.ts +1 -1
- package/src/utils/service/offerComparisonUtils.ts +8 -8
- package/src/utils/service/serviceBookingExposureUtils.ts +8 -8
- package/src/utils/service/serviceBookingTypes.ts +2 -2
- package/src/utils/service/serviceFeaturedSortUtils.ts +2 -2
- package/src/utils/service/serviceListingMediaUtils.ts +2 -2
- package/src/utils/service/serviceUtils.ts +2 -2
- package/src/utils/service/unifiedPricingResolver.ts +5 -5
- package/src/utils/service/venueSettlementUtils.ts +3 -3
- package/src/utils/service/volunteerCompensationUtils.ts +3 -3
- package/src/utils/slugUtils.ts +1 -1
- package/src/utils/ticketPrintPostageUtils.ts +5 -5
- package/src/utils/ticketTierSchedule.ts +4 -4
- package/src/utils/trustScoreUtils.ts +1 -1
- package/src/utils/urlUtils.ts +2 -2
- package/src/utils/userUtils.ts +4 -4
- package/src/utils/venueLoyalty/__tests__/eligibilityUtils.test.ts +1 -1
- package/src/utils/venueLoyalty/__tests__/redemptionCodeUtils.test.ts +1 -1
- package/src/utils/venueLoyalty/redemptionCodeUtils.ts +3 -3
- package/src/venueLoyaltyRedemption.ts +2 -2
- package/src/venueMatch.ts +4 -4
package/src/extendedSchemas.ts
CHANGED
|
@@ -109,7 +109,7 @@ import {
|
|
|
109
109
|
SERVICE_LINK_DATA_TO_INCLUDE,
|
|
110
110
|
} from "./definitions.js";
|
|
111
111
|
|
|
112
|
-
/** Prisma model
|
|
112
|
+
/** Prisma model. Re-exported for homepage filters and custom event type pickers. */
|
|
113
113
|
export type { CustomBashEventType } from "@prisma/client";
|
|
114
114
|
|
|
115
115
|
import {
|
|
@@ -193,7 +193,7 @@ export const FRONT_END_USER_DATA_TO_SELECT = {
|
|
|
193
193
|
// documentID: true,
|
|
194
194
|
/** Set when Stripe Identity verification completes (hosted flow). */
|
|
195
195
|
idVerified: true,
|
|
196
|
-
/** $1 card verification (Stripe PaymentIntent)
|
|
196
|
+
/** $1 card verification (Stripe PaymentIntent). Unlocks publish gate + 2x earn multiplier */
|
|
197
197
|
paymentVerified: true,
|
|
198
198
|
reviews: true,
|
|
199
199
|
contacts: true,
|
|
@@ -225,7 +225,7 @@ export const FRONT_END_USER_DATA_TO_SELECT = {
|
|
|
225
225
|
totalEventsHosted: true,
|
|
226
226
|
/** Whether this account is suspended (superuser admin visibility). */
|
|
227
227
|
isSuspended: true,
|
|
228
|
-
/** Subscription summary for public surfaces
|
|
228
|
+
/** Subscription summary for public surfaces. Omit Stripe linkage fields (see PUBLIC_USER_SUBSCRIPTION_DATA_TO_SELECT). */
|
|
229
229
|
userSubscription: {
|
|
230
230
|
select: PUBLIC_USER_SUBSCRIPTION_DATA_TO_SELECT,
|
|
231
231
|
},
|
|
@@ -276,9 +276,9 @@ export type PublicTeaserUser = Prisma.UserGetPayload<{
|
|
|
276
276
|
|
|
277
277
|
export const PRIVATE_USER_ACCOUNT_TO_SELECT = {
|
|
278
278
|
...FRONT_END_USER_DATA_TO_SELECT,
|
|
279
|
-
/** Self session only
|
|
279
|
+
/** Self session only. Preferred payment rail (Stripe vs Square). */
|
|
280
280
|
paymentProvider: true,
|
|
281
|
-
// Self-only sensitive demographics
|
|
281
|
+
// Self-only sensitive demographics. Re-added so /me can populate edit forms.
|
|
282
282
|
gender: true,
|
|
283
283
|
genderIdentity: true,
|
|
284
284
|
sex: true,
|
|
@@ -290,9 +290,9 @@ export const PRIVATE_USER_ACCOUNT_TO_SELECT = {
|
|
|
290
290
|
zipCode: true,
|
|
291
291
|
country: true,
|
|
292
292
|
phone: true,
|
|
293
|
-
/** SMS verification
|
|
293
|
+
/** SMS verification. Self account only. */
|
|
294
294
|
phoneVerifiedAt: true,
|
|
295
|
-
/** Opt-in SMS login codes
|
|
295
|
+
/** Opt-in SMS login codes. Self account only. */
|
|
296
296
|
smsMfaEnabled: true,
|
|
297
297
|
membershipExpiresAt: true,
|
|
298
298
|
bashPassStripeSubscriptionId: true,
|
|
@@ -399,7 +399,7 @@ export interface PromoterMilestoneBase {
|
|
|
399
399
|
competitionId: string;
|
|
400
400
|
threshold: number | null;
|
|
401
401
|
rank: number | null;
|
|
402
|
-
rewardType: string; // PromoterRewardType
|
|
402
|
+
rewardType: string; // PromoterRewardType. String union until client is regenerated
|
|
403
403
|
rewardAmountCents: number | null;
|
|
404
404
|
rewardDescription: string | null;
|
|
405
405
|
ticketTierId: string | null;
|
|
@@ -423,7 +423,7 @@ export interface PromoterRewardBase {
|
|
|
423
423
|
milestoneId: string | null;
|
|
424
424
|
rank: number | null;
|
|
425
425
|
qualifiedSalesSnapshot: number;
|
|
426
|
-
status: string; // PromoterRewardStatus
|
|
426
|
+
status: string; // PromoterRewardStatus. String union until client is regenerated
|
|
427
427
|
earnedAt: Date | null;
|
|
428
428
|
fulfilledAt: Date | null;
|
|
429
429
|
revokedAt: Date | null;
|
|
@@ -490,9 +490,9 @@ export type BashEventHostMerchItem = {
|
|
|
490
490
|
|
|
491
491
|
/** Host-controlled visibility of purchase options shown in the merch modal on the event detail page. */
|
|
492
492
|
export type BashEventHostMerchSettings = {
|
|
493
|
-
/** Show "Buy now
|
|
493
|
+
/** Show "Buy now. Get it shipped" option in merch modal (default: true) */
|
|
494
494
|
showShipping: boolean;
|
|
495
|
-
/** Show "Pay in advance
|
|
495
|
+
/** Show "Pay in advance. Pick up at event" option in merch modal (default: true) */
|
|
496
496
|
showPreOrder: boolean;
|
|
497
497
|
/** Show "Add to ticket checkout" option in merch modal (default: true) */
|
|
498
498
|
showAddToCheckout: boolean;
|
|
@@ -558,7 +558,7 @@ export type BashEventMerchOrderExt = {
|
|
|
558
558
|
export type ServiceMerchSettings = {
|
|
559
559
|
showShipping: boolean;
|
|
560
560
|
showPreOrder: boolean;
|
|
561
|
-
/** Stripe ticket-cart bundle option for host merch flows
|
|
561
|
+
/** Stripe ticket-cart bundle option for host merch flows. Not used for hired-service Square checkout. */
|
|
562
562
|
showAddToCheckout: boolean;
|
|
563
563
|
purchaseNote?: string | null;
|
|
564
564
|
};
|
|
@@ -573,7 +573,7 @@ export type BashEventHiredServicePublic = {
|
|
|
573
573
|
coverPhoto: string | null;
|
|
574
574
|
/** When true, standalone Square checkout is available for merchandise SKUs below. */
|
|
575
575
|
squareMerchCheckoutEnabled: boolean;
|
|
576
|
-
/** Merch options from provider profile
|
|
576
|
+
/** Merch options from provider profile. Square hired-service checkout reads ship + pickup only. */
|
|
577
577
|
merchSettings: ServiceMerchSettings | null;
|
|
578
578
|
merchandiseAddons: Array<{
|
|
579
579
|
id: string;
|
|
@@ -588,7 +588,7 @@ export type BashEventHiredServicePublic = {
|
|
|
588
588
|
|
|
589
589
|
/**
|
|
590
590
|
* API/app bash shape. Declared as a `type` (not `interface extends Override`) so
|
|
591
|
-
* Prisma scalar redeclares stay `T` rather than `T | undefined
|
|
591
|
+
* Prisma scalar redeclares stay `T` rather than `T | undefined`. A TypeScript
|
|
592
592
|
* quirk when interfaces extend intersection/mapped types.
|
|
593
593
|
*
|
|
594
594
|
* Policy fields are applied in a final `Omit & { ... }` intersection so they stay
|
|
@@ -625,7 +625,7 @@ type BashEventExtBase = Override<
|
|
|
625
625
|
ideaExpiresAt: Date | null;
|
|
626
626
|
isAutoApprovable: boolean;
|
|
627
627
|
ideaInterestThreshold: number | null;
|
|
628
|
-
/** Venue seat chart JSON
|
|
628
|
+
/** Venue seat chart JSON. Typed for wizard/checkout (Prisma stores Json). */
|
|
629
629
|
seatMap: import("./seatMap.js").SeatMapDocument | null;
|
|
630
630
|
}
|
|
631
631
|
> & {
|
|
@@ -641,7 +641,7 @@ type BashEventExtBase = Override<
|
|
|
641
641
|
amountOfGuests?: AmountOfGuests;
|
|
642
642
|
recurrence?: Recurrence;
|
|
643
643
|
creator?: PublicUser;
|
|
644
|
-
/** Co-hosts / organizers (AssociatedBash.isOrganizer), excluding the creator
|
|
644
|
+
/** Co-hosts / organizers (AssociatedBash.isOrganizer), excluding the creator. GET /event/:id and public-event/:id when loaded */
|
|
645
645
|
organizers?: PublicUser[];
|
|
646
646
|
/** Service bookings for this bash + enabled merchandise rows (public detail) */
|
|
647
647
|
hiredServices?: BashEventHiredServicePublic[];
|
|
@@ -665,16 +665,16 @@ type BashEventExtBase = Override<
|
|
|
665
665
|
competitions?: CompetitionExt[];
|
|
666
666
|
interests?: (IdeaInterest & { responses?: IdeaInterestResponse[] })[];
|
|
667
667
|
configurations?: IdeaConfiguration[];
|
|
668
|
-
/** GET /event/:id when status=Idea and ideaDatePollEnabled
|
|
668
|
+
/** GET /event/:id when status=Idea and ideaDatePollEnabled. Candidate datetimes for guest voting */
|
|
669
669
|
dateOptions?: IdeaDateOption[];
|
|
670
670
|
/** Public aggregate when poll enabled (no PII) */
|
|
671
671
|
datePollPublicSummary?: IdeaDatePollPublicSummary;
|
|
672
672
|
hideCancellationPolicy?: boolean;
|
|
673
673
|
hideGroupUp?: boolean;
|
|
674
674
|
hideServicesOpenTo?: boolean;
|
|
675
|
-
/** GET /event/:id
|
|
675
|
+
/** GET /event/:id. Tickets sold (non-cancelled), for social proof */
|
|
676
676
|
goingCount?: number;
|
|
677
|
-
/** GET /event/:id
|
|
677
|
+
/** GET /event/:id. True when at least one Budget line has `showOnBashDetailPage` set. Drives the "View budget" reveal on the public bash page; never carries dollar amounts. */
|
|
678
678
|
hasVisibleBudget?: boolean;
|
|
679
679
|
/** Public funding meter: value coming in toward included budget lines. */
|
|
680
680
|
showFundingMeter?: boolean;
|
|
@@ -682,11 +682,11 @@ type BashEventExtBase = Override<
|
|
|
682
682
|
showHostOnBashPage?: boolean;
|
|
683
683
|
fundingAllowCommitments?: boolean;
|
|
684
684
|
fundingShowPledgesOnMeter?: boolean;
|
|
685
|
-
/** GET /event/:id when status=Idea
|
|
685
|
+
/** GET /event/:id when status=Idea. Total IdeaInterest rows */
|
|
686
686
|
ideaInterestCount?: number;
|
|
687
687
|
/** Feed/card alias for idea interest (some list payloads use this name). */
|
|
688
688
|
interestedCount?: number;
|
|
689
|
-
/** GET /event/:id
|
|
689
|
+
/** GET /event/:id. PublicBashRsvp counts (published / presale) */
|
|
690
690
|
publicRsvpCounts?: { going: number; interested: number; notGoing: number };
|
|
691
691
|
/** Current viewer's soft RSVP (PublicBashRsvp), if any */
|
|
692
692
|
myPublicRsvpStatus?: string | null;
|
|
@@ -708,15 +708,15 @@ type BashEventExtBase = Override<
|
|
|
708
708
|
rsvpsDeclined: number;
|
|
709
709
|
rsvpsPending: number;
|
|
710
710
|
};
|
|
711
|
-
/** GET /event/:id and GET /public-event/:id (authenticated) when accessScreeningEnabled
|
|
711
|
+
/** GET /event/:id and GET /public-event/:id (authenticated) when accessScreeningEnabled. Viewer's latest access request status */
|
|
712
712
|
myAccessRequestStatus?: "None" | "Pending" | "Approved" | "Denied" | null;
|
|
713
713
|
/** Public pending + approved application / RSVP totals when Application is on. Hidden at 0. */
|
|
714
714
|
applicationApplicantCount?: number;
|
|
715
|
-
/** GET /event/:id when status=Idea
|
|
715
|
+
/** GET /event/:id when status=Idea. Viewer's IdeaInterest row (matched by email) */
|
|
716
716
|
myIdeaInterest?:
|
|
717
717
|
| (IdeaInterest & { responses: IdeaInterestResponse[] })
|
|
718
718
|
| null;
|
|
719
|
-
/** GET /event/:id when status=Idea
|
|
719
|
+
/** GET /event/:id when status=Idea. Distinct service providers who sent a service-offer notification */
|
|
720
720
|
ideaServiceProviderInterestCount?: number;
|
|
721
721
|
// Event page visual customisation (stored as scalar columns on BashEvent)
|
|
722
722
|
backgroundImage: string | null;
|
|
@@ -725,7 +725,7 @@ type BashEventExtBase = Override<
|
|
|
725
725
|
backgroundBlurEnabled: boolean;
|
|
726
726
|
/**
|
|
727
727
|
* Computed at request time from the host Organization's nonprofit verification.
|
|
728
|
-
* Drives the buyer-facing fee breakdown ("Nonprofit
|
|
728
|
+
* Drives the buyer-facing fee breakdown ("Nonprofit. No Bash platform fee").
|
|
729
729
|
* Optional because not every endpoint that returns BashEventExt resolves the host org.
|
|
730
730
|
*/
|
|
731
731
|
isVerifiedNonprofitHost?: boolean;
|
|
@@ -831,7 +831,7 @@ export type BashEventUpsertWireInput = Override<
|
|
|
831
831
|
}
|
|
832
832
|
>;
|
|
833
833
|
|
|
834
|
-
/** Minimal ticket-holder identity
|
|
834
|
+
/** Minimal ticket-holder identity. Narrower than PublicUser/PublicTeaserUser; used wherever a ticket
|
|
835
835
|
* relation just needs to identify who owns/holds it (not a full public profile). */
|
|
836
836
|
export const TICKET_HOLDER_USER_SELECT = {
|
|
837
837
|
id: true,
|
|
@@ -997,7 +997,7 @@ export const VENUE_DATA_TO_REMOVE: RemoveCommonProperties<
|
|
|
997
997
|
// 'bashEvents',
|
|
998
998
|
] as const;
|
|
999
999
|
|
|
1000
|
-
/** Shared by Vendor/EventService/EntertainmentService/Exhibitor/Sponsor includes
|
|
1000
|
+
/** Shared by Vendor/EventService/EntertainmentService/Exhibitor/Sponsor includes. Each model has
|
|
1001
1001
|
* its own identically-shaped `crowdSize`/`serviceRange` relations (attendance preferences). */
|
|
1002
1002
|
export const SERVICE_SUBTYPE_CROWD_RANGE_INCLUDE = {
|
|
1003
1003
|
crowdSize: true,
|
|
@@ -1236,7 +1236,7 @@ export const SERVICE_DATA_TO_INCLUDE = {
|
|
|
1236
1236
|
sportsProfile: true,
|
|
1237
1237
|
},
|
|
1238
1238
|
}, // Include organization data with member counts
|
|
1239
|
-
// Lightweight
|
|
1239
|
+
// Lightweight. Just enough for the UI to know a complementary Vendor <-> EventServices
|
|
1240
1240
|
// profile already exists (see Part B "also list as" flow) without a second fetch.
|
|
1241
1241
|
complementaryProfiles: {
|
|
1242
1242
|
select: { id: true, serviceType: true },
|
|
@@ -1428,7 +1428,7 @@ export const SERVICE_BOOKING_PRIVATE_DATA_TO_INCLUDE = {
|
|
|
1428
1428
|
},
|
|
1429
1429
|
} satisfies Prisma.ServiceBookingInclude;
|
|
1430
1430
|
|
|
1431
|
-
// Narrowed reference types
|
|
1431
|
+
// Narrowed reference types. Match exactly what SERVICE_BOOKING_PRIVATE_DATA_TO_INCLUDE selects,
|
|
1432
1432
|
// so call sites can cast prisma.upsert/findUnique results without needing `as unknown`.
|
|
1433
1433
|
export type ServiceBookingBashEventRef = Pick<
|
|
1434
1434
|
BashEvent,
|
|
@@ -1490,7 +1490,7 @@ export interface ServiceExt extends Service {
|
|
|
1490
1490
|
|
|
1491
1491
|
stripeAccount?: PublicStripeAccount | null;
|
|
1492
1492
|
|
|
1493
|
-
/** Geo anchor
|
|
1493
|
+
/** Geo anchor. Explicit on ext type for consumers before Prisma client catches up */
|
|
1494
1494
|
latitude: number | null;
|
|
1495
1495
|
longitude: number | null;
|
|
1496
1496
|
|
|
@@ -1515,7 +1515,7 @@ export interface ServiceExt extends Service {
|
|
|
1515
1515
|
associatedBashesReferencingMe?: AssociatedBashExt[];
|
|
1516
1516
|
associatedServicesReferencingMe?: AssociatedServiceExt[];
|
|
1517
1517
|
|
|
1518
|
-
/** Reverse side of `complementaryOfServiceId
|
|
1518
|
+
/** Reverse side of `complementaryOfServiceId`. The "also list as" profile(s) this service already spawned. */
|
|
1519
1519
|
complementaryProfiles?: Pick<Service, "id" | "serviceType">[];
|
|
1520
1520
|
|
|
1521
1521
|
// googleReviews: GoogleReview[];
|
|
@@ -1580,7 +1580,7 @@ export type ServiceExtNoIds = Omit<
|
|
|
1580
1580
|
| "serviceRatesAssociationId"
|
|
1581
1581
|
| "serviceId"
|
|
1582
1582
|
>;
|
|
1583
|
-
/** Attendance-preference overlay shared by every bookable service subtype
|
|
1583
|
+
/** Attendance-preference overlay shared by every bookable service subtype. Mirrors
|
|
1584
1584
|
* SERVICE_SUBTYPE_CROWD_RANGE_INCLUDE so the type and the select/include it's derived from stay in sync. */
|
|
1585
1585
|
export interface ServiceSubtypeCrowdRange {
|
|
1586
1586
|
crowdSize?: AmountOfGuests;
|
|
@@ -1616,7 +1616,7 @@ export interface VendorExt extends Vendor, ServiceSubtypeCrowdRange {
|
|
|
1616
1616
|
// Partner (Vendor/Exhibitor/Sponsor) booking requests
|
|
1617
1617
|
//
|
|
1618
1618
|
// VendorBookingRequest/ExhibitorBookingRequest/SponsorBookingRequest are three separate Prisma
|
|
1619
|
-
// models (a real merge into one polymorphic table is a future schema migration
|
|
1619
|
+
// models (a real merge into one polymorphic table is a future schema migration. See the
|
|
1620
1620
|
// bash-common schema/type consolidation plan). Until then, these GetPayload-derived types give
|
|
1621
1621
|
// the API and app a single shared, real contract instead of hand-typed hand-drift per package.
|
|
1622
1622
|
//-------------------------------------------------------------------------------------------------------------------------------
|
|
@@ -1683,7 +1683,7 @@ export type SponsorBookingRequestExt = Prisma.SponsorBookingRequestGetPayload<{
|
|
|
1683
1683
|
}>;
|
|
1684
1684
|
|
|
1685
1685
|
/** Fields common to all three partner booking request models (same name + type on every model).
|
|
1686
|
-
* `status` is intentionally excluded
|
|
1686
|
+
* `status` is intentionally excluded. Vendor/Exhibitor/SponsorBookingStatus are separate (if
|
|
1687
1687
|
* byte-identical) enums, so each Ext type keeps its own nominal status field. */
|
|
1688
1688
|
export type PartnerBookingRequestBase = Pick<
|
|
1689
1689
|
VendorBookingRequestExt,
|
|
@@ -1714,7 +1714,7 @@ export type PartnerBookingRequestBase = Pick<
|
|
|
1714
1714
|
| "bashEvent"
|
|
1715
1715
|
>;
|
|
1716
1716
|
|
|
1717
|
-
/** Discriminated union of the three partner booking request types
|
|
1717
|
+
/** Discriminated union of the three partner booking request types. `partnerType` is attached
|
|
1718
1718
|
* by the API (it isn't a DB column) so callers can narrow without checking which service-ref key is present. */
|
|
1719
1719
|
export type PartnerBookingRequest =
|
|
1720
1720
|
| ({ partnerType: "vendor" } & VendorBookingRequestExt)
|
|
@@ -1987,7 +1987,7 @@ export type TicketFlexible = Ticket & {
|
|
|
1987
1987
|
|
|
1988
1988
|
/**
|
|
1989
1989
|
* Ticket row when `owner` and `forUser` were selected (host/admin / full ticket APIs).
|
|
1990
|
-
* Strict refinement of {@link TicketFlexible}
|
|
1990
|
+
* Strict refinement of {@link TicketFlexible}. Prefer narrowing with {@link isTicketExt}.
|
|
1991
1991
|
*/
|
|
1992
1992
|
export type TicketExt = TicketFlexible & {
|
|
1993
1993
|
owner: PublicUser;
|
|
@@ -2023,7 +2023,7 @@ export const CHECKOUT_DATA_TO_INCLUDE = {
|
|
|
2023
2023
|
},
|
|
2024
2024
|
} satisfies Prisma.CheckoutInclude;
|
|
2025
2025
|
|
|
2026
|
-
/** Checkout list for non-privileged viewers
|
|
2026
|
+
/** Checkout list for non-privileged viewers. Buyer email omitted on `owner`. */
|
|
2027
2027
|
export const CHECKOUT_DATA_TO_INCLUDE_TEASER_OWNER = {
|
|
2028
2028
|
owner: {
|
|
2029
2029
|
select: PUBLIC_TEASER_USER_DATA_TO_SELECT,
|
|
@@ -2142,11 +2142,11 @@ type PublicUserBase = Prisma.UserGetPayload<{
|
|
|
2142
2142
|
select: typeof FRONT_END_USER_DATA_TO_SELECT;
|
|
2143
2143
|
}>;
|
|
2144
2144
|
|
|
2145
|
-
/** Real `User` select shape for public profile surfaces
|
|
2145
|
+
/** Real `User` select shape for public profile surfaces. Derived via `GetPayload` (like `PublicTeaserUser`)
|
|
2146
2146
|
* so relation/computed fields (e.g. `reviews`, `contacts`) can't silently drift from what
|
|
2147
2147
|
* `FRONT_END_USER_DATA_TO_SELECT` actually queries. The four relation fields below stay optional (not
|
|
2148
|
-
* required-but-nullable, as a strict `GetPayload` would make them) because some call sites
|
|
2149
|
-
* flows
|
|
2148
|
+
* required-but-nullable, as a strict `GetPayload` would make them) because some call sites. E.g. auth/session
|
|
2149
|
+
* flows. Legitimately pass a scalar-only `User` row through this type without ever including them.
|
|
2150
2150
|
* `reviews` is additionally re-widened to a union since some call sites merge in
|
|
2151
2151
|
* `USER_DATA_SELECT_REVIEWS_COMMENTS` for nested review comments. */
|
|
2152
2152
|
export type PublicUser = Omit<
|
|
@@ -2162,7 +2162,7 @@ export type PublicUser = Omit<
|
|
|
2162
2162
|
reviews?: (PublicUserPlainReview | PublicUserReviewWithComments)[] | null;
|
|
2163
2163
|
};
|
|
2164
2164
|
|
|
2165
|
-
/** Self-account (`/me`) select shape
|
|
2165
|
+
/** Self-account (`/me`) select shape. Derived via `GetPayload` the same way `PublicUser` is. */
|
|
2166
2166
|
export type PrivateUser = Prisma.UserGetPayload<{
|
|
2167
2167
|
select: typeof PRIVATE_USER_ACCOUNT_TO_SELECT;
|
|
2168
2168
|
}>;
|
package/src/fundingMeter.ts
CHANGED
package/src/giveaway.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Event giveaways
|
|
2
|
+
* Event giveaways. Shared types, attendee identity, and guest-facing copy.
|
|
3
3
|
* Qualifying does not guarantee inventory (first-come among eligible people).
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -173,7 +173,7 @@ export function matchesCompetitionParticipant(input: {
|
|
|
173
173
|
});
|
|
174
174
|
}
|
|
175
175
|
|
|
176
|
-
/** Active outstanding inventory
|
|
176
|
+
/** Active outstanding inventory. Not historical "ever distributed". */
|
|
177
177
|
export function giveawayActiveDistributedCount(
|
|
178
178
|
quantityTotal: number,
|
|
179
179
|
quantityRemaining: number
|
package/src/guestPartySize.ts
CHANGED
|
@@ -60,7 +60,7 @@ export function guestPartyPolicyLabel(
|
|
|
60
60
|
export function rsvpPartyPolicyGuestCopy(
|
|
61
61
|
maxAdditionalGuests: number | null | undefined
|
|
62
62
|
): string {
|
|
63
|
-
if (maxAdditionalGuests === 0) return "Just you
|
|
63
|
+
if (maxAdditionalGuests === 0) return "Just you. No plus-ones";
|
|
64
64
|
if (maxAdditionalGuests === 1) return "You can bring up to 1 guest";
|
|
65
65
|
if (maxAdditionalGuests === 2) return "You can bring up to 2 guests";
|
|
66
66
|
return `You can bring up to ${RSVP_PLUS_ONES_UI_SOFT_CAP} guests`;
|
|
@@ -78,6 +78,6 @@ export function ticketPartyPolicyGuestCopy(
|
|
|
78
78
|
|
|
79
79
|
export function nearCapacityPartyError(spotsLeft: number): string {
|
|
80
80
|
if (spotsLeft <= 0) return "This bash is at capacity.";
|
|
81
|
-
if (spotsLeft === 1) return "Only 1 spot left
|
|
82
|
-
return `Only ${spotsLeft} spots left
|
|
81
|
+
if (spotsLeft === 1) return "Only 1 spot left. You can’t bring that many guests.";
|
|
82
|
+
return `Only ${spotsLeft} spots left. You can’t bring that many guests.`;
|
|
83
83
|
}
|
package/src/home.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Lightweight entry for homepage / event card surfaces
|
|
2
|
+
* Lightweight entry for homepage / event card surfaces. Avoids pulling the full
|
|
3
3
|
* bash-common barrel (and its Prisma enum surface) into the mobile critical path.
|
|
4
4
|
*
|
|
5
5
|
* Re-exports only from canonical modules (definitions, extendedSchemas, geo utils),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DISCOVERY_SCOPE_ROW_KEYS } from "./discoveryScope.js";
|
|
2
2
|
|
|
3
|
-
/** Algorithm / geo / social rows
|
|
3
|
+
/** Algorithm / geo / social rows. Not host-picked `BashEventType` values. */
|
|
4
4
|
export const HOMEPAGE_DISCOVERY_SYNTHETIC_ROW_KEYS = [
|
|
5
5
|
"Featured",
|
|
6
6
|
"Popular",
|
|
@@ -27,5 +27,5 @@ export function isHomepageSyntheticSectionRowKey(key: string): boolean {
|
|
|
27
27
|
);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
/** @deprecated Prefer `HOMEPAGE_DISCOVERY_SYNTHETIC_ROW_KEYS
|
|
30
|
+
/** @deprecated Prefer `HOMEPAGE_DISCOVERY_SYNTHETIC_ROW_KEYS`. Kept for app imports. */
|
|
31
31
|
export const HOMEPAGE_DISCOVERY_ROW_KEYS = HOMEPAGE_DISCOVERY_SYNTHETIC_ROW_KEYS;
|
package/src/hostCrmAutomation.ts
CHANGED
|
@@ -4,7 +4,7 @@ import type {
|
|
|
4
4
|
HostCrmAutomationTrigger as HostCrmAutomationTriggerEnum,
|
|
5
5
|
} from "@prisma/client";
|
|
6
6
|
|
|
7
|
-
/** Mirrors Prisma `HostCrmAutomationTrigger
|
|
7
|
+
/** Mirrors Prisma `HostCrmAutomationTrigger`. `@prisma/client` browser bundle omits runtime enum exports. */
|
|
8
8
|
export const HostCrmAutomationTrigger = {
|
|
9
9
|
Recurring: "Recurring",
|
|
10
10
|
NewlyAtRisk: "NewlyAtRisk",
|
|
@@ -13,7 +13,7 @@ export const HostCrmAutomationTrigger = {
|
|
|
13
13
|
|
|
14
14
|
export type HostCrmAutomationTrigger = HostCrmAutomationTriggerEnum;
|
|
15
15
|
|
|
16
|
-
/** Mirrors Prisma `HostCrmAutomationChannel
|
|
16
|
+
/** Mirrors Prisma `HostCrmAutomationChannel`. `@prisma/client` browser bundle omits runtime enum exports. */
|
|
17
17
|
export const HostCrmAutomationChannel = {
|
|
18
18
|
Email: "Email",
|
|
19
19
|
Sms: "Sms",
|
|
@@ -21,7 +21,7 @@ export const HostCrmAutomationChannel = {
|
|
|
21
21
|
|
|
22
22
|
export type HostCrmAutomationChannel = HostCrmAutomationChannelEnum;
|
|
23
23
|
|
|
24
|
-
/** Mirrors Prisma `HostCrmAutomationAudienceType
|
|
24
|
+
/** Mirrors Prisma `HostCrmAutomationAudienceType`. `@prisma/client` browser bundle omits runtime enum exports. */
|
|
25
25
|
export const HostCrmAutomationAudienceType = {
|
|
26
26
|
Preset: "Preset",
|
|
27
27
|
Segment: "Segment",
|
|
@@ -38,7 +38,7 @@ export const HOST_CRM_AUTOMATION_MIN_CADENCE_DAYS = 1;
|
|
|
38
38
|
export const HOST_CRM_AUTOMATION_DEFAULT_CADENCE_DAYS = 30;
|
|
39
39
|
|
|
40
40
|
/**
|
|
41
|
-
* API/client shape of a `HostCrmAutomation` row
|
|
41
|
+
* API/client shape of a `HostCrmAutomation` row. Dates are ISO strings (as
|
|
42
42
|
* returned by the JSON API), not the raw Prisma `Date` type. See
|
|
43
43
|
* `api/src/api/user/privateUser/hostCrmAutomationApi.ts` for the endpoints
|
|
44
44
|
* that produce this shape and `bash-app/src/dataLayer/user/attendeeAudienceFetcher.ts`
|
|
@@ -50,7 +50,7 @@ export type HostCrmAutomation = {
|
|
|
50
50
|
name: string;
|
|
51
51
|
trigger: HostCrmAutomationTrigger;
|
|
52
52
|
channel: HostCrmAutomationChannel;
|
|
53
|
-
/** Ignored for PostEvent
|
|
53
|
+
/** Ignored for PostEvent. Audience there is implicit (that event's ticket holders). */
|
|
54
54
|
audienceType: HostCrmAutomationAudienceType | null;
|
|
55
55
|
audiencePresetId: string | null;
|
|
56
56
|
audienceSegmentId: string | null;
|
|
@@ -79,7 +79,7 @@ export type HostCrmAutomationInput = {
|
|
|
79
79
|
};
|
|
80
80
|
|
|
81
81
|
/**
|
|
82
|
-
* "Growth pack"
|
|
82
|
+
* "Growth pack". The one-click Host CRM automation pair (win-back + post-event
|
|
83
83
|
* thank-you). Specs live here so API enable, legacy backfill, and UI detection
|
|
84
84
|
* cannot drift apart.
|
|
85
85
|
*/
|
|
@@ -87,9 +87,9 @@ export const HOST_CRM_GROWTH_PACK_WINBACK_PRESET_ID = "lapsed_180";
|
|
|
87
87
|
export const HOST_CRM_GROWTH_PACK_WINBACK_NAME = "Win-back email";
|
|
88
88
|
export const HOST_CRM_GROWTH_PACK_POST_EVENT_NAME = "Post-event thank-you";
|
|
89
89
|
|
|
90
|
-
/** Shared with the live win-back blast defaults
|
|
90
|
+
/** Shared with the live win-back blast defaults. Keep in lockstep. */
|
|
91
91
|
export const HOST_CRM_WINBACK_DEFAULT_SUBJECT =
|
|
92
|
-
"We miss you
|
|
92
|
+
"We miss you. Come back out with us";
|
|
93
93
|
export const HOST_CRM_WINBACK_DEFAULT_BODY =
|
|
94
94
|
"It's been a while since your last bash with us. We'd love to see you again.";
|
|
95
95
|
|
|
@@ -100,15 +100,15 @@ export const HOST_CRM_WINBACK_DEFAULT_BODY =
|
|
|
100
100
|
export const HOST_CRM_GROWTH_PACK_POST_EVENT_SUBJECT =
|
|
101
101
|
"Thank you for coming to {{eventTitle}}";
|
|
102
102
|
export const HOST_CRM_GROWTH_PACK_POST_EVENT_BODY =
|
|
103
|
-
"Hi {{firstName}},\n\nThanks so much for being part of {{eventTitle}}
|
|
103
|
+
"Hi {{firstName}},\n\nThanks so much for being part of {{eventTitle}}. It wouldn't have been the same without you. Got photos from the night? Save them to Memories, then post on BashFeed or drop them in the album:\n\nMemories: {{memoriesUrl}}\nBashFeed: {{bashFeedUrl}}\n\nHope to see you at the next one!";
|
|
104
104
|
|
|
105
105
|
/** Recurring email to last-minute buyers (paid within 48h of start). */
|
|
106
106
|
export const HOST_CRM_GROWTH_PACK_LATE_BUYER_PRESET_ID = "last_minute_buyer";
|
|
107
107
|
export const HOST_CRM_GROWTH_PACK_LATE_BUYER_NAME = "Late-buyer logistics nudge";
|
|
108
108
|
export const HOST_CRM_GROWTH_PACK_LATE_BUYER_SUBJECT =
|
|
109
|
-
"You're in
|
|
109
|
+
"You're in. Here's how to make door day smooth";
|
|
110
110
|
export const HOST_CRM_GROWTH_PACK_LATE_BUYER_BODY =
|
|
111
|
-
"Hi {{firstName}},\n\nGlad you're coming. Since you grabbed tickets close to showtime, leave a few extra minutes for parking and check-in
|
|
111
|
+
"Hi {{firstName}},\n\nGlad you're coming. Since you grabbed tickets close to showtime, leave a few extra minutes for parking and check-in. Doors can get busy.\n\nSee you there!";
|
|
112
112
|
|
|
113
113
|
type GrowthPackAutomationShape = {
|
|
114
114
|
trigger: string;
|
package/src/hostCrmConstants.ts
CHANGED
package/src/hostCrmCrowdPulse.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Community Builder Crowd Pulse
|
|
2
|
+
* Community Builder Crowd Pulse. Overall + per-bash glance metrics.
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
/** Upcoming / live / past
|
|
5
|
+
/** Upcoming / live / past. Same decision order as My Bashes guest phases. */
|
|
6
6
|
export type HostCrmCrowdPulseHorizon = "upcoming" | "live" | "past";
|
|
7
7
|
|
|
8
8
|
/** Same fallback as schedule rendering when end is missing or invalid. */
|
package/src/hostCrmInsights.ts
CHANGED
|
@@ -3,8 +3,8 @@ import type { MembershipTier } from "./membershipDefinitions.js";
|
|
|
3
3
|
/**
|
|
4
4
|
* One curated predictive-insight observation for the Attendee CRM's
|
|
5
5
|
* Recommended-actions accordion. Deliberately a discriminated union of
|
|
6
|
-
* discrete, computed facts (not prose)
|
|
7
|
-
* `HostCrmTimelineEntry
|
|
6
|
+
* discrete, computed facts (not prose). Same design choice already made for
|
|
7
|
+
* `HostCrmTimelineEntry`. So the drawer/card renders each fact directly and
|
|
8
8
|
* a future AI layer can consume the same structured data without re-deriving it.
|
|
9
9
|
*/
|
|
10
10
|
export type HostCrmInsight =
|
|
@@ -30,7 +30,7 @@ export type HostCrmInsight =
|
|
|
30
30
|
};
|
|
31
31
|
|
|
32
32
|
/**
|
|
33
|
-
* Response shape for the Predictive Insights card. Gated server-side
|
|
33
|
+
* Response shape for the Predictive Insights card. Gated server-side.
|
|
34
34
|
* `locked: true` hosts never receive computed `insights`, so a Basic-tier
|
|
35
35
|
* host can't see real data even by inspecting the network response.
|
|
36
36
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Last-bash proof
|
|
2
|
+
* Last-bash proof. Afterglow metrics for the host's most recently ended bash.
|
|
3
3
|
* Composed on the Monday Morning response (no separate analytics product).
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -19,7 +19,7 @@ export type HostCrmLastBashProof = {
|
|
|
19
19
|
ticketPeopleCount: number;
|
|
20
20
|
checkedInCount: number;
|
|
21
21
|
reachable: HostCrmLastBashProofReachable;
|
|
22
|
-
/** 0
|
|
22
|
+
/** 0 to 100 among CRM members tied to that bash with eventCount >= 2. */
|
|
23
23
|
repeatMemberRate: number;
|
|
24
24
|
postEventMessageSent: boolean;
|
|
25
25
|
postEventMessageSentAt: string | null;
|
package/src/hostCrmSegments.ts
CHANGED
|
@@ -29,17 +29,17 @@ export type HostCrmSegmentRules = {
|
|
|
29
29
|
minTotalSpendCents?: number;
|
|
30
30
|
/** Bought a ticket but never checked in to an ended bash */
|
|
31
31
|
noShow?: boolean;
|
|
32
|
-
/** UI label: "Uses Promo Codes"
|
|
32
|
+
/** UI label: "Uses Promo Codes". Redeemed a promo code on a host bash */
|
|
33
33
|
discountResponsive?: boolean;
|
|
34
|
-
/** UI label: "Last-Minute Buyer"
|
|
34
|
+
/** UI label: "Last-Minute Buyer". Typically buys within 48h of the event */
|
|
35
35
|
fastDecider?: boolean;
|
|
36
|
-
/** UI label: "Series Regular"
|
|
36
|
+
/** UI label: "Series Regular". Attended 2+ events in the same EventSeries */
|
|
37
37
|
seriesLoyalist?: boolean;
|
|
38
38
|
/** Refunded/cancelled a ticket and hasn't been back since */
|
|
39
39
|
refundChurn?: boolean;
|
|
40
|
-
/** UI label: "Brings Friends"
|
|
40
|
+
/** UI label: "Brings Friends". Buys multiple tickets per checkout or brings plus-ones */
|
|
41
41
|
bringsGuests?: boolean;
|
|
42
|
-
/** Ticket buyers for any of these bash event ids (e.g. the host's 3 most recently ended bashes
|
|
42
|
+
/** Ticket buyers for any of these bash event ids (e.g. the host's 3 most recently ended bashes. See the last3Events preset) */
|
|
43
43
|
sourceEventIdIn?: string[];
|
|
44
44
|
/** Guest taste: EventType value (own audience + hostsMayTargetTaste only). */
|
|
45
45
|
tasteEventType?: string;
|
|
@@ -271,13 +271,13 @@ export type HostCrmAudienceMember = {
|
|
|
271
271
|
noShowCount: number;
|
|
272
272
|
/** UI label: "Uses Promo Codes" */
|
|
273
273
|
discountResponsive: boolean;
|
|
274
|
-
/** UI label: "Last-Minute Buyer"
|
|
274
|
+
/** UI label: "Last-Minute Buyer". Majority of purchases within 48h of the event start */
|
|
275
275
|
fastDecider: boolean;
|
|
276
|
-
/** UI label: "Series Regular"
|
|
276
|
+
/** UI label: "Series Regular". Attended 2+ events sharing an EventSeries */
|
|
277
277
|
seriesLoyalist: boolean;
|
|
278
278
|
/** Refunded/cancelled a ticket on a host bash and hasn't bought again since */
|
|
279
279
|
refundChurn: boolean;
|
|
280
|
-
/** UI label: "Brings Friends"
|
|
280
|
+
/** UI label: "Brings Friends". Multi-ticket checkouts, group tiers, or RSVP plus-ones */
|
|
281
281
|
bringsGuests: boolean;
|
|
282
282
|
/** How this attendee was attributed to the host's audience, when known. */
|
|
283
283
|
discoverySource: HostCrmDiscoverySource;
|
|
@@ -291,7 +291,7 @@ export type HostCrmAudienceMember = {
|
|
|
291
291
|
associationBreakdown: HostCrmAssociationBreakdown;
|
|
292
292
|
communityStrengthScore: number;
|
|
293
293
|
communityStrengthTier: CommunityStrengthTier;
|
|
294
|
-
/** Rule-based suggested tags
|
|
294
|
+
/** Rule-based suggested tags. Never merged into host-editable `tags`. */
|
|
295
295
|
systemTags: string[];
|
|
296
296
|
};
|
|
297
297
|
|
|
@@ -434,7 +434,7 @@ export const HOST_CRM_PRESET_SEGMENTS: Array<{
|
|
|
434
434
|
id: "top_spenders",
|
|
435
435
|
label: "Top spenders",
|
|
436
436
|
description: "Your top quartile of attendees by lifetime spend",
|
|
437
|
-
// Computed at query time from the full audience
|
|
437
|
+
// Computed at query time from the full audience. See filterHostCrmAudience's presetId branch.
|
|
438
438
|
rules: {},
|
|
439
439
|
},
|
|
440
440
|
{
|
|
@@ -477,7 +477,7 @@ export const HOST_CRM_PRESET_SEGMENTS: Array<{
|
|
|
477
477
|
id: "last3Events",
|
|
478
478
|
label: "Last 3 events",
|
|
479
479
|
description: "People who came to any of your 3 most recently ended bashes",
|
|
480
|
-
// Computed at query time from the host's finished events
|
|
480
|
+
// Computed at query time from the host's finished events. See filterHostCrmAudience's presetId branch.
|
|
481
481
|
rules: {},
|
|
482
482
|
},
|
|
483
483
|
];
|
|
@@ -520,7 +520,7 @@ export type HostCrmAttendeeDetailBadges = {
|
|
|
520
520
|
};
|
|
521
521
|
|
|
522
522
|
/**
|
|
523
|
-
* Full detail payload for one attendee's drawer
|
|
523
|
+
* Full detail payload for one attendee's drawer. The response shape for
|
|
524
524
|
* `GET /attendee-audience/:attendeeUserId/detail`, built by the shared
|
|
525
525
|
* `buildAttendeeCrmContext` function so a future AI compose endpoint can
|
|
526
526
|
* reuse the same assembly without refactoring this contract.
|
package/src/hostPromoter.ts
CHANGED
|
@@ -62,7 +62,7 @@ export function hostPromoterKindFromEventServiceSubType(
|
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
/** Inverse of sync mapping
|
|
65
|
+
/** Inverse of sync mapping. PromoCode has no hireable EventService subtype. */
|
|
66
66
|
export function eventServiceSubTypeFromHostPromoterKind(
|
|
67
67
|
kind: HostPromoterKind | string | null | undefined
|
|
68
68
|
): HostPromoterSyncServiceSubType | null {
|
package/src/icebreakerPrompts.ts
CHANGED
|
@@ -20,7 +20,7 @@ export const ICEBREAKER_PROMPTS: string[] = [
|
|
|
20
20
|
"What are you most looking forward to at this event?",
|
|
21
21
|
"If this bash had a theme song, what would it be?",
|
|
22
22
|
"What’s one thing you hope to take away from tonight?",
|
|
23
|
-
"Who here do you already know
|
|
23
|
+
"Who here do you already know. And how did you meet?",
|
|
24
24
|
"What’s your favorite thing about gatherings like this?",
|
|
25
25
|
"If you could add one activity to this event, what would it be?",
|
|
26
26
|
"What’s a memory from a past party you still think about?",
|
|
@@ -36,7 +36,7 @@ export const ICEBREAKER_PROMPTS: string[] = [
|
|
|
36
36
|
"What’s a trend you don’t get but respect?",
|
|
37
37
|
"What’s your go-to karaoke song (or what would it be)?",
|
|
38
38
|
"What’s something everyone likes but you’re lukewarm on?",
|
|
39
|
-
"What’s a nickname you’ve had
|
|
39
|
+
"What’s a nickname you’ve had. Or wish you had?",
|
|
40
40
|
// Nostalgia
|
|
41
41
|
"What’s a childhood snack or meal you still crave?",
|
|
42
42
|
"What’s the first concert or live event you remember?",
|
package/src/index.ts
CHANGED
|
@@ -471,7 +471,7 @@ export type {
|
|
|
471
471
|
MakeRequired, Override, RemoveCommonProperties, UnionFromArray
|
|
472
472
|
} from "./utils/typeUtils.js";
|
|
473
473
|
|
|
474
|
-
// Promoter Competition utilities (pure
|
|
474
|
+
// Promoter Competition utilities (pure. Safe to import in bash-app and api)
|
|
475
475
|
export {
|
|
476
476
|
computePromoterCompetitionEconomics,
|
|
477
477
|
formatPromoterRewardLabel,
|