@bash-app/bash-common 30.285.0 → 30.289.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__/accessScreening.test.d.ts +2 -0
- package/dist/__tests__/accessScreening.test.d.ts.map +1 -0
- package/dist/__tests__/accessScreening.test.js +19 -0
- package/dist/__tests__/accessScreening.test.js.map +1 -0
- package/dist/__tests__/bookingIntent.test.d.ts +2 -0
- package/dist/__tests__/bookingIntent.test.d.ts.map +1 -0
- package/dist/__tests__/bookingIntent.test.js +36 -0
- package/dist/__tests__/bookingIntent.test.js.map +1 -0
- package/dist/__tests__/entertainmentNotableVenues.test.d.ts +2 -0
- package/dist/__tests__/entertainmentNotableVenues.test.d.ts.map +1 -0
- package/dist/__tests__/entertainmentNotableVenues.test.js +78 -0
- package/dist/__tests__/entertainmentNotableVenues.test.js.map +1 -0
- package/dist/__tests__/influencerAudience.test.d.ts +2 -0
- package/dist/__tests__/influencerAudience.test.d.ts.map +1 -0
- package/dist/__tests__/influencerAudience.test.js +22 -0
- package/dist/__tests__/influencerAudience.test.js.map +1 -0
- package/dist/__tests__/productLaunch.test.d.ts +2 -0
- package/dist/__tests__/productLaunch.test.d.ts.map +1 -0
- package/dist/__tests__/productLaunch.test.js +39 -0
- package/dist/__tests__/productLaunch.test.js.map +1 -0
- package/dist/__typecheck_probe__.d.ts +2 -0
- package/dist/__typecheck_probe__.d.ts.map +1 -0
- package/dist/__typecheck_probe__.js +2 -0
- package/dist/__typecheck_probe__.js.map +1 -0
- package/dist/accessScreening.d.ts +8 -0
- package/dist/accessScreening.d.ts.map +1 -0
- package/dist/accessScreening.js +18 -0
- package/dist/accessScreening.js.map +1 -0
- package/dist/aiEventPlan.d.ts +18 -0
- package/dist/aiEventPlan.d.ts.map +1 -0
- package/dist/aiEventPlan.js +59 -0
- package/dist/aiEventPlan.js.map +1 -0
- package/dist/bookingIntent.d.ts +23 -0
- package/dist/bookingIntent.d.ts.map +1 -0
- package/dist/bookingIntent.js +40 -0
- package/dist/bookingIntent.js.map +1 -0
- package/dist/definitions.d.ts +2 -0
- package/dist/definitions.d.ts.map +1 -1
- package/dist/definitions.js.map +1 -1
- package/dist/dist/__tests__/accessScreening.test.d.ts +2 -0
- package/dist/dist/__tests__/accessScreening.test.d.ts.map +1 -0
- package/dist/dist/__tests__/accessScreening.test.js +16 -0
- package/dist/dist/__tests__/accessScreening.test.js.map +1 -0
- package/dist/dist/__tests__/agePolicy.test.d.ts +2 -0
- package/dist/dist/__tests__/agePolicy.test.d.ts.map +1 -0
- package/dist/dist/__tests__/agePolicy.test.js +203 -0
- package/dist/dist/__tests__/agePolicy.test.js.map +1 -0
- package/dist/dist/__tests__/bashSectionTitleForBashType.test.d.ts +2 -0
- package/dist/dist/__tests__/bashSectionTitleForBashType.test.d.ts.map +1 -0
- package/dist/dist/__tests__/bashSectionTitleForBashType.test.js +106 -0
- package/dist/dist/__tests__/bashSectionTitleForBashType.test.js.map +1 -0
- package/dist/dist/__tests__/bookingIntent.test.d.ts +2 -0
- package/dist/dist/__tests__/bookingIntent.test.d.ts.map +1 -0
- package/dist/dist/__tests__/bookingIntent.test.js +36 -0
- package/dist/dist/__tests__/bookingIntent.test.js.map +1 -0
- package/dist/dist/__tests__/definitionsHelpers.test.d.ts +2 -0
- package/dist/dist/__tests__/definitionsHelpers.test.d.ts.map +1 -0
- package/dist/dist/__tests__/definitionsHelpers.test.js +85 -0
- package/dist/dist/__tests__/definitionsHelpers.test.js.map +1 -0
- package/dist/dist/__tests__/entertainmentNotableVenues.test.d.ts +2 -0
- package/dist/dist/__tests__/entertainmentNotableVenues.test.d.ts.map +1 -0
- package/dist/dist/__tests__/entertainmentNotableVenues.test.js +78 -0
- package/dist/dist/__tests__/entertainmentNotableVenues.test.js.map +1 -0
- package/dist/dist/__tests__/extendedSchemas.test.d.ts +2 -0
- package/dist/dist/__tests__/extendedSchemas.test.d.ts.map +1 -0
- package/dist/dist/__tests__/extendedSchemas.test.js +40 -0
- package/dist/dist/__tests__/extendedSchemas.test.js.map +1 -0
- package/dist/dist/__tests__/getDisplayGender.test.d.ts +2 -0
- package/dist/dist/__tests__/getDisplayGender.test.d.ts.map +1 -0
- package/dist/dist/__tests__/getDisplayGender.test.js +34 -0
- package/dist/dist/__tests__/getDisplayGender.test.js.map +1 -0
- package/dist/dist/__tests__/groupTicketUtils.test.d.ts +2 -0
- package/dist/dist/__tests__/groupTicketUtils.test.d.ts.map +1 -0
- package/dist/dist/__tests__/groupTicketUtils.test.js +38 -0
- package/dist/dist/__tests__/groupTicketUtils.test.js.map +1 -0
- package/dist/dist/__tests__/influencerAudience.test.d.ts +2 -0
- package/dist/dist/__tests__/influencerAudience.test.d.ts.map +1 -0
- package/dist/dist/__tests__/influencerAudience.test.js +22 -0
- package/dist/dist/__tests__/influencerAudience.test.js.map +1 -0
- package/dist/dist/__tests__/membershipDefinitions.test.d.ts +2 -0
- package/dist/dist/__tests__/membershipDefinitions.test.d.ts.map +1 -0
- package/dist/dist/__tests__/membershipDefinitions.test.js +95 -0
- package/dist/dist/__tests__/membershipDefinitions.test.js.map +1 -0
- package/dist/dist/__tests__/requestAuthUser.test.d.ts +2 -0
- package/dist/dist/__tests__/requestAuthUser.test.d.ts.map +1 -0
- package/dist/dist/__tests__/requestAuthUser.test.js +84 -0
- package/dist/dist/__tests__/requestAuthUser.test.js.map +1 -0
- package/dist/dist/__tests__/serviceCheckoutPaymentMethods.test.d.ts +2 -0
- package/dist/dist/__tests__/serviceCheckoutPaymentMethods.test.d.ts.map +1 -0
- package/dist/dist/__tests__/serviceCheckoutPaymentMethods.test.js +41 -0
- package/dist/dist/__tests__/serviceCheckoutPaymentMethods.test.js.map +1 -0
- package/dist/dist/__tests__/statusEnums.test.d.ts +2 -0
- package/dist/dist/__tests__/statusEnums.test.d.ts.map +1 -0
- package/dist/dist/__tests__/statusEnums.test.js +106 -0
- package/dist/dist/__tests__/statusEnums.test.js.map +1 -0
- package/dist/dist/__tests__/storePrintArtworkUtils.test.d.ts +2 -0
- package/dist/dist/__tests__/storePrintArtworkUtils.test.d.ts.map +1 -0
- package/dist/dist/__tests__/storePrintArtworkUtils.test.js +35 -0
- package/dist/dist/__tests__/storePrintArtworkUtils.test.js.map +1 -0
- package/dist/dist/__tests__/stripeListingSubscriptionMessages.test.d.ts +2 -0
- package/dist/dist/__tests__/stripeListingSubscriptionMessages.test.d.ts.map +1 -0
- package/dist/dist/__tests__/stripeListingSubscriptionMessages.test.js +18 -0
- package/dist/dist/__tests__/stripeListingSubscriptionMessages.test.js.map +1 -0
- package/dist/dist/__tests__/ticketAdmission.test.d.ts +5 -0
- package/dist/dist/__tests__/ticketAdmission.test.d.ts.map +1 -0
- package/dist/dist/__tests__/ticketAdmission.test.js +42 -0
- package/dist/dist/__tests__/ticketAdmission.test.js.map +1 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.bankTransfer.test.d.ts +2 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.bankTransfer.test.d.ts.map +1 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.bankTransfer.test.js +30 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.bankTransfer.test.js.map +1 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.cashapp.test.d.ts +2 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.cashapp.test.d.ts.map +1 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.cashapp.test.js +33 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.cashapp.test.js.map +1 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.test.d.ts +2 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.test.d.ts.map +1 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.test.js +46 -0
- package/dist/dist/__tests__/ticketBnplPaymentMethods.test.js.map +1 -0
- package/dist/dist/__tests__/userReportTypes.test.d.ts +2 -0
- package/dist/dist/__tests__/userReportTypes.test.d.ts.map +1 -0
- package/dist/dist/__tests__/userReportTypes.test.js +81 -0
- package/dist/dist/__tests__/userReportTypes.test.js.map +1 -0
- package/dist/dist/__tests__/utmAttribution.test.d.ts +2 -0
- package/dist/dist/__tests__/utmAttribution.test.d.ts.map +1 -0
- package/dist/dist/__tests__/utmAttribution.test.js +92 -0
- package/dist/dist/__tests__/utmAttribution.test.js.map +1 -0
- package/dist/dist/accessScreening.d.ts +8 -0
- package/dist/dist/accessScreening.d.ts.map +1 -0
- package/dist/dist/accessScreening.js +18 -0
- package/dist/dist/accessScreening.js.map +1 -0
- package/dist/dist/aiApproval.d.ts +89 -0
- package/dist/dist/aiApproval.d.ts.map +1 -0
- package/dist/dist/aiApproval.js +82 -0
- package/dist/dist/aiApproval.js.map +1 -0
- package/dist/dist/aiEventPlan.d.ts +18 -0
- package/dist/dist/aiEventPlan.d.ts.map +1 -0
- package/dist/dist/aiEventPlan.js +59 -0
- package/dist/dist/aiEventPlan.js.map +1 -0
- package/dist/dist/bashFeedTypes.d.ts +208 -0
- package/dist/dist/bashFeedTypes.d.ts.map +1 -0
- package/dist/dist/bashFeedTypes.js +2 -0
- package/dist/dist/bashFeedTypes.js.map +1 -0
- package/dist/dist/bookingIntent.d.ts +23 -0
- package/dist/dist/bookingIntent.d.ts.map +1 -0
- package/dist/dist/bookingIntent.js +40 -0
- package/dist/dist/bookingIntent.js.map +1 -0
- package/dist/dist/competitionIdeas.d.ts +19 -0
- package/dist/dist/competitionIdeas.d.ts.map +1 -0
- package/dist/dist/competitionIdeas.js +405 -0
- package/dist/dist/competitionIdeas.js.map +1 -0
- package/dist/dist/competitionValidation.d.ts +10 -0
- package/dist/dist/competitionValidation.d.ts.map +1 -0
- package/dist/dist/competitionValidation.js +29 -0
- package/dist/dist/competitionValidation.js.map +1 -0
- package/dist/dist/definitions.d.ts +1045 -0
- package/dist/dist/definitions.d.ts.map +1 -0
- package/dist/dist/definitions.js +1047 -0
- package/dist/dist/definitions.js.map +1 -0
- package/dist/dist/entertainmentNotableVenues.d.ts +53 -0
- package/dist/dist/entertainmentNotableVenues.d.ts.map +1 -0
- package/dist/dist/entertainmentNotableVenues.js +101 -0
- package/dist/dist/entertainmentNotableVenues.js.map +1 -0
- package/dist/dist/extendedSchemas.d.ts +5834 -0
- package/dist/dist/extendedSchemas.d.ts.map +1 -0
- package/dist/dist/extendedSchemas.js +744 -0
- package/dist/dist/extendedSchemas.js.map +1 -0
- package/dist/dist/groupTicketUtils.d.ts +19 -0
- package/dist/dist/groupTicketUtils.d.ts.map +1 -0
- package/dist/dist/groupTicketUtils.js +74 -0
- package/dist/dist/groupTicketUtils.js.map +1 -0
- package/dist/dist/icebreakerPrompts.d.ts +9 -0
- package/dist/dist/icebreakerPrompts.d.ts.map +1 -0
- package/dist/dist/icebreakerPrompts.js +77 -0
- package/dist/dist/icebreakerPrompts.js.map +1 -0
- package/dist/dist/index.d.ts +110 -0
- package/dist/dist/index.d.ts.map +1 -0
- package/dist/dist/index.js +115 -0
- package/dist/dist/index.js.map +1 -0
- package/dist/dist/influencerAudience.d.ts +24 -0
- package/dist/dist/influencerAudience.d.ts.map +1 -0
- package/dist/dist/influencerAudience.js +112 -0
- package/dist/dist/influencerAudience.js.map +1 -0
- package/dist/dist/legalTemplates.d.ts +11 -0
- package/dist/dist/legalTemplates.d.ts.map +1 -0
- package/dist/dist/legalTemplates.js +19 -0
- package/dist/dist/legalTemplates.js.map +1 -0
- package/dist/dist/membershipDefinitions.d.ts +399 -0
- package/dist/dist/membershipDefinitions.d.ts.map +1 -0
- package/dist/dist/membershipDefinitions.js +765 -0
- package/dist/dist/membershipDefinitions.js.map +1 -0
- package/dist/dist/mirroredPrismaEnums.d.ts +160 -0
- package/dist/dist/mirroredPrismaEnums.d.ts.map +1 -0
- package/dist/dist/mirroredPrismaEnums.js +150 -0
- package/dist/dist/mirroredPrismaEnums.js.map +1 -0
- package/dist/dist/onSaleCapabilityRecommendations.d.ts +30 -0
- package/dist/dist/onSaleCapabilityRecommendations.d.ts.map +1 -0
- package/dist/dist/onSaleCapabilityRecommendations.js +92 -0
- package/dist/dist/onSaleCapabilityRecommendations.js.map +1 -0
- package/dist/dist/partnerStoreTypes.d.ts +127 -0
- package/dist/dist/partnerStoreTypes.d.ts.map +1 -0
- package/dist/dist/partnerStoreTypes.js +40 -0
- package/dist/dist/partnerStoreTypes.js.map +1 -0
- package/dist/dist/productLaunch.d.ts +17 -0
- package/dist/dist/productLaunch.d.ts.map +1 -0
- package/dist/dist/productLaunch.js +50 -0
- package/dist/dist/productLaunch.js.map +1 -0
- package/dist/dist/requestAuthUser.d.ts +36 -0
- package/dist/dist/requestAuthUser.d.ts.map +1 -0
- package/dist/dist/requestAuthUser.js +76 -0
- package/dist/dist/requestAuthUser.js.map +1 -0
- package/dist/dist/sms/smsTemplates.d.ts +27 -0
- package/dist/dist/sms/smsTemplates.d.ts.map +1 -0
- package/dist/dist/sms/smsTemplates.js +11 -0
- package/dist/dist/sms/smsTemplates.js.map +1 -0
- package/dist/dist/storePrintArtworkUtils.d.ts +22 -0
- package/dist/dist/storePrintArtworkUtils.d.ts.map +1 -0
- package/dist/dist/storePrintArtworkUtils.js +74 -0
- package/dist/dist/storePrintArtworkUtils.js.map +1 -0
- package/dist/dist/storeTypes.d.ts +81 -0
- package/dist/dist/storeTypes.d.ts.map +1 -0
- package/dist/dist/storeTypes.js +20 -0
- package/dist/dist/storeTypes.js.map +1 -0
- package/dist/dist/stripeListingSubscriptionMessages.d.ts +13 -0
- package/dist/dist/stripeListingSubscriptionMessages.d.ts.map +1 -0
- package/dist/dist/stripeListingSubscriptionMessages.js +21 -0
- package/dist/dist/stripeListingSubscriptionMessages.js.map +1 -0
- package/dist/dist/templates/eventTemplates.d.ts +45 -0
- package/dist/dist/templates/eventTemplates.d.ts.map +1 -0
- package/dist/dist/templates/eventTemplates.js +1191 -0
- package/dist/dist/templates/eventTemplates.js.map +1 -0
- package/dist/dist/ticketBnplPaymentMethods.d.ts +61 -0
- package/dist/dist/ticketBnplPaymentMethods.d.ts.map +1 -0
- package/dist/dist/ticketBnplPaymentMethods.js +83 -0
- package/dist/dist/ticketBnplPaymentMethods.js.map +1 -0
- package/dist/dist/userReportTypes.d.ts +117 -0
- package/dist/dist/userReportTypes.d.ts.map +1 -0
- package/dist/dist/userReportTypes.js +99 -0
- package/dist/dist/userReportTypes.js.map +1 -0
- package/dist/dist/utils/__tests__/addressUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/addressUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/addressUtils.test.js +138 -0
- package/dist/dist/utils/__tests__/addressUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/apiUtils.test.d.ts +5 -0
- package/dist/dist/utils/__tests__/apiUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/apiUtils.test.js +161 -0
- package/dist/dist/utils/__tests__/apiUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/arrayUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/arrayUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/arrayUtils.test.js +23 -0
- package/dist/dist/utils/__tests__/arrayUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/badgeUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/badgeUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/badgeUtils.test.js +157 -0
- package/dist/dist/utils/__tests__/badgeUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/bashPointsPaymentUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/bashPointsPaymentUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/bashPointsPaymentUtils.test.js +114 -0
- package/dist/dist/utils/__tests__/bashPointsPaymentUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/birthdayExperienceQuality.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/birthdayExperienceQuality.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/birthdayExperienceQuality.test.js +22 -0
- package/dist/dist/utils/__tests__/birthdayExperienceQuality.test.js.map +1 -0
- package/dist/dist/utils/__tests__/blogUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/blogUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/blogUtils.test.js +102 -0
- package/dist/dist/utils/__tests__/blogUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/contentFilterUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/contentFilterUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/contentFilterUtils.test.js +443 -0
- package/dist/dist/utils/__tests__/contentFilterUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/dateTimeUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/dateTimeUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/dateTimeUtils.test.js +180 -0
- package/dist/dist/utils/__tests__/dateTimeUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/discountEngine/discountCalculator.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/discountEngine/discountCalculator.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/discountEngine/discountCalculator.test.js +356 -0
- package/dist/dist/utils/__tests__/discountEngine/discountCalculator.test.js.map +1 -0
- package/dist/dist/utils/__tests__/displayDateUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/displayDateUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/displayDateUtils.test.js +105 -0
- package/dist/dist/utils/__tests__/displayDateUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/entertainmentDrawFit.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/entertainmentDrawFit.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/entertainmentDrawFit.test.js +86 -0
- package/dist/dist/utils/__tests__/entertainmentDrawFit.test.js.map +1 -0
- package/dist/dist/utils/__tests__/eventCitySlug.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/eventCitySlug.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/eventCitySlug.test.js +12 -0
- package/dist/dist/utils/__tests__/eventCitySlug.test.js.map +1 -0
- package/dist/dist/utils/__tests__/eventTimezoneIana.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/eventTimezoneIana.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/eventTimezoneIana.test.js +80 -0
- package/dist/dist/utils/__tests__/eventTimezoneIana.test.js.map +1 -0
- package/dist/dist/utils/__tests__/featuredDiscoveryGeo.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/featuredDiscoveryGeo.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/featuredDiscoveryGeo.test.js +98 -0
- package/dist/dist/utils/__tests__/featuredDiscoveryGeo.test.js.map +1 -0
- package/dist/dist/utils/__tests__/flyerUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/flyerUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/flyerUtils.test.js +109 -0
- package/dist/dist/utils/__tests__/flyerUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/generalDateTimeUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/generalDateTimeUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/generalDateTimeUtils.test.js +26 -0
- package/dist/dist/utils/__tests__/generalDateTimeUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/getBackendHost.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/getBackendHost.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/getBackendHost.test.js +167 -0
- package/dist/dist/utils/__tests__/getBackendHost.test.js.map +1 -0
- package/dist/dist/utils/__tests__/getFrontendHost.native.test.d.ts +14 -0
- package/dist/dist/utils/__tests__/getFrontendHost.native.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/getFrontendHost.native.test.js +51 -0
- package/dist/dist/utils/__tests__/getFrontendHost.native.test.js.map +1 -0
- package/dist/dist/utils/__tests__/getFrontendHost.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/getFrontendHost.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/getFrontendHost.test.js +207 -0
- package/dist/dist/utils/__tests__/getFrontendHost.test.js.map +1 -0
- package/dist/dist/utils/__tests__/guestSurface.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/guestSurface.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/guestSurface.test.js +112 -0
- package/dist/dist/utils/__tests__/guestSurface.test.js.map +1 -0
- package/dist/dist/utils/__tests__/lobFlyerUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/lobFlyerUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/lobFlyerUtils.test.js +39 -0
- package/dist/dist/utils/__tests__/lobFlyerUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/localPartnerHours.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/localPartnerHours.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/localPartnerHours.test.js +35 -0
- package/dist/dist/utils/__tests__/localPartnerHours.test.js.map +1 -0
- package/dist/dist/utils/__tests__/locationVisibility.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/locationVisibility.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/locationVisibility.test.js +183 -0
- package/dist/dist/utils/__tests__/locationVisibility.test.js.map +1 -0
- package/dist/dist/utils/__tests__/luxonUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/luxonUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/luxonUtils.test.js +139 -0
- package/dist/dist/utils/__tests__/luxonUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/mathUtils.test.d.ts +5 -0
- package/dist/dist/utils/__tests__/mathUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/mathUtils.test.js +26 -0
- package/dist/dist/utils/__tests__/mathUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/nonprofitUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/nonprofitUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/nonprofitUtils.test.js +84 -0
- package/dist/dist/utils/__tests__/nonprofitUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/objUtils.test.d.ts +5 -0
- package/dist/dist/utils/__tests__/objUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/objUtils.test.js +41 -0
- package/dist/dist/utils/__tests__/objUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/orgPromotionalPackageUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/orgPromotionalPackageUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/orgPromotionalPackageUtils.test.js +88 -0
- package/dist/dist/utils/__tests__/orgPromotionalPackageUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/organizationEntitlements.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/organizationEntitlements.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/organizationEntitlements.test.js +42 -0
- package/dist/dist/utils/__tests__/organizationEntitlements.test.js.map +1 -0
- package/dist/dist/utils/__tests__/paymentUtils.test.d.ts +6 -0
- package/dist/dist/utils/__tests__/paymentUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/paymentUtils.test.js +527 -0
- package/dist/dist/utils/__tests__/paymentUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/promoCodesUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/promoCodesUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/promoCodesUtils.test.js +183 -0
- package/dist/dist/utils/__tests__/promoCodesUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/qrCodeUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/qrCodeUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/qrCodeUtils.test.js +114 -0
- package/dist/dist/utils/__tests__/qrCodeUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/recurrenceUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/recurrenceUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/recurrenceUtils.test.js +146 -0
- package/dist/dist/utils/__tests__/recurrenceUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/reputationUtils.serviceListing.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/reputationUtils.serviceListing.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/reputationUtils.serviceListing.test.js +28 -0
- package/dist/dist/utils/__tests__/reputationUtils.serviceListing.test.js.map +1 -0
- package/dist/dist/utils/__tests__/reviewUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/reviewUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/reviewUtils.test.js +49 -0
- package/dist/dist/utils/__tests__/reviewUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/serviceAvailabilityDisplay.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/serviceAvailabilityDisplay.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/serviceAvailabilityDisplay.test.js +121 -0
- package/dist/dist/utils/__tests__/serviceAvailabilityDisplay.test.js.map +1 -0
- package/dist/dist/utils/__tests__/slugUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/slugUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/slugUtils.test.js +103 -0
- package/dist/dist/utils/__tests__/slugUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/socialEventCadence.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/socialEventCadence.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/socialEventCadence.test.js +26 -0
- package/dist/dist/utils/__tests__/socialEventCadence.test.js.map +1 -0
- package/dist/dist/utils/__tests__/sortUtils.test.d.ts +5 -0
- package/dist/dist/utils/__tests__/sortUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/sortUtils.test.js +28 -0
- package/dist/dist/utils/__tests__/sortUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/stringUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/stringUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/stringUtils.test.js +27 -0
- package/dist/dist/utils/__tests__/stringUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/stripeAccountUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/stripeAccountUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/stripeAccountUtils.test.js +75 -0
- package/dist/dist/utils/__tests__/stripeAccountUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/ticketCheckInDisplay.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/ticketCheckInDisplay.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/ticketCheckInDisplay.test.js +29 -0
- package/dist/dist/utils/__tests__/ticketCheckInDisplay.test.js.map +1 -0
- package/dist/dist/utils/__tests__/ticketListUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/ticketListUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/ticketListUtils.test.js +95 -0
- package/dist/dist/utils/__tests__/ticketListUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/ticketTierSchedule.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/ticketTierSchedule.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/ticketTierSchedule.test.js +84 -0
- package/dist/dist/utils/__tests__/ticketTierSchedule.test.js.map +1 -0
- package/dist/dist/utils/__tests__/typeUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/typeUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/typeUtils.test.js +11 -0
- package/dist/dist/utils/__tests__/typeUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/urlUtils.externalLink.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/urlUtils.externalLink.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/urlUtils.externalLink.test.js +29 -0
- package/dist/dist/utils/__tests__/urlUtils.externalLink.test.js.map +1 -0
- package/dist/dist/utils/__tests__/userSubscriptionUtils.test.d.ts +5 -0
- package/dist/dist/utils/__tests__/userSubscriptionUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/userSubscriptionUtils.test.js +66 -0
- package/dist/dist/utils/__tests__/userSubscriptionUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/userUtils.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/userUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/userUtils.test.js +34 -0
- package/dist/dist/utils/__tests__/userUtils.test.js.map +1 -0
- package/dist/dist/utils/__tests__/venueTypeFormatter.test.d.ts +2 -0
- package/dist/dist/utils/__tests__/venueTypeFormatter.test.d.ts.map +1 -0
- package/dist/dist/utils/__tests__/venueTypeFormatter.test.js +25 -0
- package/dist/dist/utils/__tests__/venueTypeFormatter.test.js.map +1 -0
- package/dist/dist/utils/addressUtils.d.ts +30 -0
- package/dist/dist/utils/addressUtils.d.ts.map +1 -0
- package/dist/dist/utils/addressUtils.js +288 -0
- package/dist/dist/utils/addressUtils.js.map +1 -0
- package/dist/dist/utils/apiUtils.d.ts +14 -0
- package/dist/dist/utils/apiUtils.d.ts.map +1 -0
- package/dist/dist/utils/apiUtils.js +97 -0
- package/dist/dist/utils/apiUtils.js.map +1 -0
- package/dist/dist/utils/arrayUtils.d.ts +2 -0
- package/dist/dist/utils/arrayUtils.d.ts.map +1 -0
- package/dist/dist/utils/arrayUtils.js +5 -0
- package/dist/dist/utils/arrayUtils.js.map +1 -0
- package/dist/dist/utils/awsS3Utils.d.ts +10 -0
- package/dist/dist/utils/awsS3Utils.d.ts.map +1 -0
- package/dist/dist/utils/awsS3Utils.js +89 -0
- package/dist/dist/utils/awsS3Utils.js.map +1 -0
- package/dist/dist/utils/badgeUtils.d.ts +33 -0
- package/dist/dist/utils/badgeUtils.d.ts.map +1 -0
- package/dist/dist/utils/badgeUtils.js +57 -0
- package/dist/dist/utils/badgeUtils.js.map +1 -0
- package/dist/dist/utils/bashPointsPaymentUtils.d.ts +55 -0
- package/dist/dist/utils/bashPointsPaymentUtils.d.ts.map +1 -0
- package/dist/dist/utils/bashPointsPaymentUtils.js +79 -0
- package/dist/dist/utils/bashPointsPaymentUtils.js.map +1 -0
- package/dist/dist/utils/birthdayExperienceQuality.d.ts +21 -0
- package/dist/dist/utils/birthdayExperienceQuality.d.ts.map +1 -0
- package/dist/dist/utils/birthdayExperienceQuality.js +33 -0
- package/dist/dist/utils/birthdayExperienceQuality.js.map +1 -0
- package/dist/dist/utils/blog/__tests__/getRelatedBlogPosts.test.d.ts +2 -0
- package/dist/dist/utils/blog/__tests__/getRelatedBlogPosts.test.d.ts.map +1 -0
- package/dist/dist/utils/blog/__tests__/getRelatedBlogPosts.test.js +233 -0
- package/dist/dist/utils/blog/__tests__/getRelatedBlogPosts.test.js.map +1 -0
- package/dist/dist/utils/blog/blogCommentDbUtils.d.ts +163 -0
- package/dist/dist/utils/blog/blogCommentDbUtils.d.ts.map +1 -0
- package/dist/dist/utils/blog/blogCommentDbUtils.js +111 -0
- package/dist/dist/utils/blog/blogCommentDbUtils.js.map +1 -0
- package/dist/dist/utils/blog/blogDbUtils.d.ts +58 -0
- package/dist/dist/utils/blog/blogDbUtils.d.ts.map +1 -0
- package/dist/dist/utils/blog/blogDbUtils.js +293 -0
- package/dist/dist/utils/blog/blogDbUtils.js.map +1 -0
- package/dist/dist/utils/blogUtils.d.ts +19 -0
- package/dist/dist/utils/blogUtils.d.ts.map +1 -0
- package/dist/dist/utils/blogUtils.js +118 -0
- package/dist/dist/utils/blogUtils.js.map +1 -0
- package/dist/dist/utils/contentFilterUtils.d.ts +46 -0
- package/dist/dist/utils/contentFilterUtils.d.ts.map +1 -0
- package/dist/dist/utils/contentFilterUtils.js +247 -0
- package/dist/dist/utils/contentFilterUtils.js.map +1 -0
- package/dist/dist/utils/dateTimeUtils.d.ts +24 -0
- package/dist/dist/utils/dateTimeUtils.d.ts.map +1 -0
- package/dist/dist/utils/dateTimeUtils.js +112 -0
- package/dist/dist/utils/dateTimeUtils.js.map +1 -0
- package/dist/dist/utils/discountEngine/__tests__/bestPriceResolver.test.d.ts +2 -0
- package/dist/dist/utils/discountEngine/__tests__/bestPriceResolver.test.d.ts.map +1 -0
- package/dist/dist/utils/discountEngine/__tests__/bestPriceResolver.test.js +458 -0
- package/dist/dist/utils/discountEngine/__tests__/bestPriceResolver.test.js.map +1 -0
- package/dist/dist/utils/discountEngine/__tests__/eligibilityValidator.test.d.ts +2 -0
- package/dist/dist/utils/discountEngine/__tests__/eligibilityValidator.test.d.ts.map +1 -0
- package/dist/dist/utils/discountEngine/__tests__/eligibilityValidator.test.js +484 -0
- package/dist/dist/utils/discountEngine/__tests__/eligibilityValidator.test.js.map +1 -0
- package/dist/dist/utils/discountEngine/bestPriceResolver.d.ts +31 -0
- package/dist/dist/utils/discountEngine/bestPriceResolver.d.ts.map +1 -0
- package/dist/dist/utils/discountEngine/bestPriceResolver.js +147 -0
- package/dist/dist/utils/discountEngine/bestPriceResolver.js.map +1 -0
- package/dist/dist/utils/discountEngine/discountCalculator.d.ts +62 -0
- package/dist/dist/utils/discountEngine/discountCalculator.d.ts.map +1 -0
- package/dist/dist/utils/discountEngine/discountCalculator.js +221 -0
- package/dist/dist/utils/discountEngine/discountCalculator.js.map +1 -0
- package/dist/dist/utils/discountEngine/eligibilityValidator.d.ts +36 -0
- package/dist/dist/utils/discountEngine/eligibilityValidator.d.ts.map +1 -0
- package/dist/dist/utils/discountEngine/eligibilityValidator.js +189 -0
- package/dist/dist/utils/discountEngine/eligibilityValidator.js.map +1 -0
- package/dist/dist/utils/discountEngine/index.d.ts +4 -0
- package/dist/dist/utils/discountEngine/index.d.ts.map +1 -0
- package/dist/dist/utils/discountEngine/index.js +5 -0
- package/dist/dist/utils/discountEngine/index.js.map +1 -0
- package/dist/dist/utils/displayDateUtils.d.ts +10 -0
- package/dist/dist/utils/displayDateUtils.d.ts.map +1 -0
- package/dist/dist/utils/displayDateUtils.js +32 -0
- package/dist/dist/utils/displayDateUtils.js.map +1 -0
- package/dist/dist/utils/entertainmentDrawFit.d.ts +27 -0
- package/dist/dist/utils/entertainmentDrawFit.d.ts.map +1 -0
- package/dist/dist/utils/entertainmentDrawFit.js +119 -0
- package/dist/dist/utils/entertainmentDrawFit.js.map +1 -0
- package/dist/dist/utils/entityUtils.d.ts +5 -0
- package/dist/dist/utils/entityUtils.d.ts.map +1 -0
- package/dist/dist/utils/entityUtils.js +5 -0
- package/dist/dist/utils/entityUtils.js.map +1 -0
- package/dist/dist/utils/eventCitySlug.d.ts +11 -0
- package/dist/dist/utils/eventCitySlug.d.ts.map +1 -0
- package/dist/dist/utils/eventCitySlug.js +20 -0
- package/dist/dist/utils/eventCitySlug.js.map +1 -0
- package/dist/dist/utils/eventTimezoneIana.d.ts +41 -0
- package/dist/dist/utils/eventTimezoneIana.d.ts.map +1 -0
- package/dist/dist/utils/eventTimezoneIana.js +282 -0
- package/dist/dist/utils/eventTimezoneIana.js.map +1 -0
- package/dist/dist/utils/featuredDiscoveryGeo.d.ts +30 -0
- package/dist/dist/utils/featuredDiscoveryGeo.d.ts.map +1 -0
- package/dist/dist/utils/featuredDiscoveryGeo.js +47 -0
- package/dist/dist/utils/featuredDiscoveryGeo.js.map +1 -0
- package/dist/dist/utils/flyerUtils.d.ts +66 -0
- package/dist/dist/utils/flyerUtils.d.ts.map +1 -0
- package/dist/dist/utils/flyerUtils.js +166 -0
- package/dist/dist/utils/flyerUtils.js.map +1 -0
- package/dist/dist/utils/generalDateTimeUtils.d.ts +15 -0
- package/dist/dist/utils/generalDateTimeUtils.d.ts.map +1 -0
- package/dist/dist/utils/generalDateTimeUtils.js +38 -0
- package/dist/dist/utils/generalDateTimeUtils.js.map +1 -0
- package/dist/dist/utils/groupTicketCartUtils.d.ts +12 -0
- package/dist/dist/utils/groupTicketCartUtils.d.ts.map +1 -0
- package/dist/dist/utils/groupTicketCartUtils.js +30 -0
- package/dist/dist/utils/groupTicketCartUtils.js.map +1 -0
- package/dist/dist/utils/guestSurface.d.ts +133 -0
- package/dist/dist/utils/guestSurface.d.ts.map +1 -0
- package/dist/dist/utils/guestSurface.js +172 -0
- package/dist/dist/utils/guestSurface.js.map +1 -0
- package/dist/dist/utils/index.d.ts +42 -0
- package/dist/dist/utils/index.d.ts.map +1 -0
- package/dist/dist/utils/index.js +42 -0
- package/dist/dist/utils/index.js.map +1 -0
- package/dist/dist/utils/lobFlyerUtils.d.ts +41 -0
- package/dist/dist/utils/lobFlyerUtils.d.ts.map +1 -0
- package/dist/dist/utils/lobFlyerUtils.js +68 -0
- package/dist/dist/utils/lobFlyerUtils.js.map +1 -0
- package/dist/dist/utils/localPartnerHours.d.ts +12 -0
- package/dist/dist/utils/localPartnerHours.d.ts.map +1 -0
- package/dist/dist/utils/localPartnerHours.js +92 -0
- package/dist/dist/utils/localPartnerHours.js.map +1 -0
- package/dist/dist/utils/locationVisibility.d.ts +71 -0
- package/dist/dist/utils/locationVisibility.d.ts.map +1 -0
- package/dist/dist/utils/locationVisibility.js +116 -0
- package/dist/dist/utils/locationVisibility.js.map +1 -0
- package/dist/dist/utils/luxonUtils.d.ts +106 -0
- package/dist/dist/utils/luxonUtils.d.ts.map +1 -0
- package/dist/dist/utils/luxonUtils.js +579 -0
- package/dist/dist/utils/luxonUtils.js.map +1 -0
- package/dist/dist/utils/mathUtils.d.ts +2 -0
- package/dist/dist/utils/mathUtils.d.ts.map +1 -0
- package/dist/dist/utils/mathUtils.js +4 -0
- package/dist/dist/utils/mathUtils.js.map +1 -0
- package/dist/dist/utils/mediaClientDefaults.d.ts +7 -0
- package/dist/dist/utils/mediaClientDefaults.d.ts.map +1 -0
- package/dist/dist/utils/mediaClientDefaults.js +7 -0
- package/dist/dist/utils/mediaClientDefaults.js.map +1 -0
- package/dist/dist/utils/nonprofitUtils.d.ts +21 -0
- package/dist/dist/utils/nonprofitUtils.d.ts.map +1 -0
- package/dist/dist/utils/nonprofitUtils.js +29 -0
- package/dist/dist/utils/nonprofitUtils.js.map +1 -0
- package/dist/dist/utils/objUtils.d.ts +3 -0
- package/dist/dist/utils/objUtils.d.ts.map +1 -0
- package/dist/dist/utils/objUtils.js +29 -0
- package/dist/dist/utils/objUtils.js.map +1 -0
- package/dist/dist/utils/orgPromotionalPackageUtils.d.ts +100 -0
- package/dist/dist/utils/orgPromotionalPackageUtils.d.ts.map +1 -0
- package/dist/dist/utils/orgPromotionalPackageUtils.js +201 -0
- package/dist/dist/utils/orgPromotionalPackageUtils.js.map +1 -0
- package/dist/dist/utils/organizationEntitlements.d.ts +20 -0
- package/dist/dist/utils/organizationEntitlements.d.ts.map +1 -0
- package/dist/dist/utils/organizationEntitlements.js +30 -0
- package/dist/dist/utils/organizationEntitlements.js.map +1 -0
- package/dist/dist/utils/paymentUtils.d.ts +234 -0
- package/dist/dist/utils/paymentUtils.d.ts.map +1 -0
- package/dist/dist/utils/paymentUtils.js +405 -0
- package/dist/dist/utils/paymentUtils.js.map +1 -0
- package/dist/dist/utils/promoCodesUtils.d.ts +6 -0
- package/dist/dist/utils/promoCodesUtils.d.ts.map +1 -0
- package/dist/dist/utils/promoCodesUtils.js +23 -0
- package/dist/dist/utils/promoCodesUtils.js.map +1 -0
- package/dist/dist/utils/promotionBlastUtils.d.ts +38 -0
- package/dist/dist/utils/promotionBlastUtils.d.ts.map +1 -0
- package/dist/dist/utils/promotionBlastUtils.js +88 -0
- package/dist/dist/utils/promotionBlastUtils.js.map +1 -0
- package/dist/dist/utils/qrCodeUtils.d.ts +5 -0
- package/dist/dist/utils/qrCodeUtils.d.ts.map +1 -0
- package/dist/dist/utils/qrCodeUtils.js +23 -0
- package/dist/dist/utils/qrCodeUtils.js.map +1 -0
- package/dist/dist/utils/recurrenceUtils.d.ts +45 -0
- package/dist/dist/utils/recurrenceUtils.d.ts.map +1 -0
- package/dist/dist/utils/recurrenceUtils.js +363 -0
- package/dist/dist/utils/recurrenceUtils.js.map +1 -0
- package/dist/dist/utils/reputationUtils.d.ts +44 -0
- package/dist/dist/utils/reputationUtils.d.ts.map +1 -0
- package/dist/dist/utils/reputationUtils.js +54 -0
- package/dist/dist/utils/reputationUtils.js.map +1 -0
- package/dist/dist/utils/reviewUtils.d.ts +29 -0
- package/dist/dist/utils/reviewUtils.d.ts.map +1 -0
- package/dist/dist/utils/reviewUtils.js +65 -0
- package/dist/dist/utils/reviewUtils.js.map +1 -0
- package/dist/dist/utils/service/__tests__/apiServiceBookingApiUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/apiServiceBookingApiUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/apiServiceBookingApiUtils.test.js +101 -0
- package/dist/dist/utils/service/__tests__/apiServiceBookingApiUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/billingCapUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/billingCapUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/billingCapUtils.test.js +120 -0
- package/dist/dist/utils/service/__tests__/billingCapUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/cancellationPolicyRefundResolver.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/cancellationPolicyRefundResolver.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/cancellationPolicyRefundResolver.test.js +125 -0
- package/dist/dist/utils/service/__tests__/cancellationPolicyRefundResolver.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/defaultOfferAmountUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/defaultOfferAmountUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/defaultOfferAmountUtils.test.js +65 -0
- package/dist/dist/utils/service/__tests__/defaultOfferAmountUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/eventPromoterPhase3.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/eventPromoterPhase3.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/eventPromoterPhase3.test.js +243 -0
- package/dist/dist/utils/service/__tests__/eventPromoterPhase3.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/eventPromoterUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/eventPromoterUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/eventPromoterUtils.test.js +333 -0
- package/dist/dist/utils/service/__tests__/eventPromoterUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/offerAllowListUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/offerAllowListUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/offerAllowListUtils.test.js +52 -0
- package/dist/dist/utils/service/__tests__/offerAllowListUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/offerComparisonUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/offerComparisonUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/offerComparisonUtils.test.js +111 -0
- package/dist/dist/utils/service/__tests__/offerComparisonUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/partnerServiceProfileWizardPaymentMethod.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/partnerServiceProfileWizardPaymentMethod.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/partnerServiceProfileWizardPaymentMethod.test.js +18 -0
- package/dist/dist/utils/service/__tests__/partnerServiceProfileWizardPaymentMethod.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/regexUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/regexUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/regexUtils.test.js +51 -0
- package/dist/dist/utils/service/__tests__/regexUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceBookingExposureUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/serviceBookingExposureUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceBookingExposureUtils.test.js +155 -0
- package/dist/dist/utils/service/__tests__/serviceBookingExposureUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceBookingStatusUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/serviceBookingStatusUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceBookingStatusUtils.test.js +226 -0
- package/dist/dist/utils/service/__tests__/serviceBookingStatusUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceDBUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/serviceDBUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceDBUtils.test.js +17 -0
- package/dist/dist/utils/service/__tests__/serviceDBUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceFeaturedSortUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/serviceFeaturedSortUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceFeaturedSortUtils.test.js +60 -0
- package/dist/dist/utils/service/__tests__/serviceFeaturedSortUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceRateUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/serviceRateUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceRateUtils.test.js +237 -0
- package/dist/dist/utils/service/__tests__/serviceRateUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/serviceUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/serviceUtils.test.js +135 -0
- package/dist/dist/utils/service/__tests__/serviceUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/unifiedPricingResolver.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/unifiedPricingResolver.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/unifiedPricingResolver.test.js +77 -0
- package/dist/dist/utils/service/__tests__/unifiedPricingResolver.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/venueFBSettlementUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/venueFBSettlementUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/venueFBSettlementUtils.test.js +157 -0
- package/dist/dist/utils/service/__tests__/venueFBSettlementUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/venueSettlementUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/venueSettlementUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/venueSettlementUtils.test.js +175 -0
- package/dist/dist/utils/service/__tests__/venueSettlementUtils.test.js.map +1 -0
- package/dist/dist/utils/service/__tests__/volunteerCompensationUtils.test.d.ts +2 -0
- package/dist/dist/utils/service/__tests__/volunteerCompensationUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/service/__tests__/volunteerCompensationUtils.test.js +118 -0
- package/dist/dist/utils/service/__tests__/volunteerCompensationUtils.test.js.map +1 -0
- package/dist/dist/utils/service/apiServiceBookingApiUtils.d.ts +33 -0
- package/dist/dist/utils/service/apiServiceBookingApiUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/apiServiceBookingApiUtils.js +170 -0
- package/dist/dist/utils/service/apiServiceBookingApiUtils.js.map +1 -0
- package/dist/dist/utils/service/attendeeOptionUtils.d.ts +11 -0
- package/dist/dist/utils/service/attendeeOptionUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/attendeeOptionUtils.js +9 -0
- package/dist/dist/utils/service/attendeeOptionUtils.js.map +1 -0
- package/dist/dist/utils/service/billingCapUtils.d.ts +86 -0
- package/dist/dist/utils/service/billingCapUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/billingCapUtils.js +96 -0
- package/dist/dist/utils/service/billingCapUtils.js.map +1 -0
- package/dist/dist/utils/service/cancellationPolicyRefundResolver.d.ts +30 -0
- package/dist/dist/utils/service/cancellationPolicyRefundResolver.d.ts.map +1 -0
- package/dist/dist/utils/service/cancellationPolicyRefundResolver.js +82 -0
- package/dist/dist/utils/service/cancellationPolicyRefundResolver.js.map +1 -0
- package/dist/dist/utils/service/defaultOfferAmountUtils.d.ts +32 -0
- package/dist/dist/utils/service/defaultOfferAmountUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/defaultOfferAmountUtils.js +115 -0
- package/dist/dist/utils/service/defaultOfferAmountUtils.js.map +1 -0
- package/dist/dist/utils/service/eventPromoterUtils.d.ts +319 -0
- package/dist/dist/utils/service/eventPromoterUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/eventPromoterUtils.js +372 -0
- package/dist/dist/utils/service/eventPromoterUtils.js.map +1 -0
- package/dist/dist/utils/service/frontendServiceBookingUtils.d.ts +60 -0
- package/dist/dist/utils/service/frontendServiceBookingUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/frontendServiceBookingUtils.js +182 -0
- package/dist/dist/utils/service/frontendServiceBookingUtils.js.map +1 -0
- package/dist/dist/utils/service/offerAllowListUtils.d.ts +42 -0
- package/dist/dist/utils/service/offerAllowListUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/offerAllowListUtils.js +49 -0
- package/dist/dist/utils/service/offerAllowListUtils.js.map +1 -0
- package/dist/dist/utils/service/offerComparisonUtils.d.ts +69 -0
- package/dist/dist/utils/service/offerComparisonUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/offerComparisonUtils.js +110 -0
- package/dist/dist/utils/service/offerComparisonUtils.js.map +1 -0
- package/dist/dist/utils/service/regexUtils.d.ts +6 -0
- package/dist/dist/utils/service/regexUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/regexUtils.js +16 -0
- package/dist/dist/utils/service/regexUtils.js.map +1 -0
- package/dist/dist/utils/service/serviceBookingExposureUtils.d.ts +111 -0
- package/dist/dist/utils/service/serviceBookingExposureUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/serviceBookingExposureUtils.js +133 -0
- package/dist/dist/utils/service/serviceBookingExposureUtils.js.map +1 -0
- package/dist/dist/utils/service/serviceBookingStatusUtils.d.ts +21 -0
- package/dist/dist/utils/service/serviceBookingStatusUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/serviceBookingStatusUtils.js +130 -0
- package/dist/dist/utils/service/serviceBookingStatusUtils.js.map +1 -0
- package/dist/dist/utils/service/serviceBookingTypes.d.ts +21 -0
- package/dist/dist/utils/service/serviceBookingTypes.d.ts.map +1 -0
- package/dist/dist/utils/service/serviceBookingTypes.js +2 -0
- package/dist/dist/utils/service/serviceBookingTypes.js.map +1 -0
- package/dist/dist/utils/service/serviceDBUtils.d.ts +12 -0
- package/dist/dist/utils/service/serviceDBUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/serviceDBUtils.js +14 -0
- package/dist/dist/utils/service/serviceDBUtils.js.map +1 -0
- package/dist/dist/utils/service/serviceFeaturedSortUtils.d.ts +26 -0
- package/dist/dist/utils/service/serviceFeaturedSortUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/serviceFeaturedSortUtils.js +65 -0
- package/dist/dist/utils/service/serviceFeaturedSortUtils.js.map +1 -0
- package/dist/dist/utils/service/serviceRateTypes.d.ts +9 -0
- package/dist/dist/utils/service/serviceRateTypes.d.ts.map +1 -0
- package/dist/dist/utils/service/serviceRateTypes.js +2 -0
- package/dist/dist/utils/service/serviceRateTypes.js.map +1 -0
- package/dist/dist/utils/service/serviceRateUtils.d.ts +24 -0
- package/dist/dist/utils/service/serviceRateUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/serviceRateUtils.js +183 -0
- package/dist/dist/utils/service/serviceRateUtils.js.map +1 -0
- package/dist/dist/utils/service/serviceUtils.d.ts +109 -0
- package/dist/dist/utils/service/serviceUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/serviceUtils.js +651 -0
- package/dist/dist/utils/service/serviceUtils.js.map +1 -0
- package/dist/dist/utils/service/unifiedPricingResolver.d.ts +67 -0
- package/dist/dist/utils/service/unifiedPricingResolver.d.ts.map +1 -0
- package/dist/dist/utils/service/unifiedPricingResolver.js +75 -0
- package/dist/dist/utils/service/unifiedPricingResolver.js.map +1 -0
- package/dist/dist/utils/service/venueFBSettlementUtils.d.ts +122 -0
- package/dist/dist/utils/service/venueFBSettlementUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/venueFBSettlementUtils.js +106 -0
- package/dist/dist/utils/service/venueFBSettlementUtils.js.map +1 -0
- package/dist/dist/utils/service/venueSettlementUtils.d.ts +107 -0
- package/dist/dist/utils/service/venueSettlementUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/venueSettlementUtils.js +117 -0
- package/dist/dist/utils/service/venueSettlementUtils.js.map +1 -0
- package/dist/dist/utils/service/volunteerCompensationUtils.d.ts +75 -0
- package/dist/dist/utils/service/volunteerCompensationUtils.d.ts.map +1 -0
- package/dist/dist/utils/service/volunteerCompensationUtils.js +88 -0
- package/dist/dist/utils/service/volunteerCompensationUtils.js.map +1 -0
- package/dist/dist/utils/serviceAvailabilityDisplay.d.ts +58 -0
- package/dist/dist/utils/serviceAvailabilityDisplay.d.ts.map +1 -0
- package/dist/dist/utils/serviceAvailabilityDisplay.js +143 -0
- package/dist/dist/utils/serviceAvailabilityDisplay.js.map +1 -0
- package/dist/dist/utils/slugUtils.d.ts +18 -0
- package/dist/dist/utils/slugUtils.d.ts.map +1 -0
- package/dist/dist/utils/slugUtils.js +67 -0
- package/dist/dist/utils/slugUtils.js.map +1 -0
- package/dist/dist/utils/sortUtils.d.ts +7 -0
- package/dist/dist/utils/sortUtils.d.ts.map +1 -0
- package/dist/dist/utils/sortUtils.js +26 -0
- package/dist/dist/utils/sortUtils.js.map +1 -0
- package/dist/dist/utils/stringUtils.d.ts +2 -0
- package/dist/dist/utils/stringUtils.d.ts.map +1 -0
- package/dist/dist/utils/stringUtils.js +6 -0
- package/dist/dist/utils/stringUtils.js.map +1 -0
- package/dist/dist/utils/stripeAccountUtils.d.ts +3 -0
- package/dist/dist/utils/stripeAccountUtils.d.ts.map +1 -0
- package/dist/dist/utils/stripeAccountUtils.js +8 -0
- package/dist/dist/utils/stripeAccountUtils.js.map +1 -0
- package/dist/dist/utils/ticketCheckInDisplay.d.ts +8 -0
- package/dist/dist/utils/ticketCheckInDisplay.d.ts.map +1 -0
- package/dist/dist/utils/ticketCheckInDisplay.js +29 -0
- package/dist/dist/utils/ticketCheckInDisplay.js.map +1 -0
- package/dist/dist/utils/ticketListUtils.d.ts +13 -0
- package/dist/dist/utils/ticketListUtils.d.ts.map +1 -0
- package/dist/dist/utils/ticketListUtils.js +145 -0
- package/dist/dist/utils/ticketListUtils.js.map +1 -0
- package/dist/dist/utils/ticketTierSchedule.d.ts +58 -0
- package/dist/dist/utils/ticketTierSchedule.d.ts.map +1 -0
- package/dist/dist/utils/ticketTierSchedule.js +279 -0
- package/dist/dist/utils/ticketTierSchedule.js.map +1 -0
- package/dist/dist/utils/typeUtils.d.ts +16 -0
- package/dist/dist/utils/typeUtils.d.ts.map +1 -0
- package/dist/dist/utils/typeUtils.js +8 -0
- package/dist/dist/utils/typeUtils.js.map +1 -0
- package/dist/dist/utils/urlUtils.d.ts +65 -0
- package/dist/dist/utils/urlUtils.d.ts.map +1 -0
- package/dist/dist/utils/urlUtils.js +255 -0
- package/dist/dist/utils/urlUtils.js.map +1 -0
- package/dist/dist/utils/userPromoCodeUtils.d.ts +21 -0
- package/dist/dist/utils/userPromoCodeUtils.d.ts.map +1 -0
- package/dist/dist/utils/userPromoCodeUtils.js +13 -0
- package/dist/dist/utils/userPromoCodeUtils.js.map +1 -0
- package/dist/dist/utils/userSubscriptionUtils.d.ts +28 -0
- package/dist/dist/utils/userSubscriptionUtils.d.ts.map +1 -0
- package/dist/dist/utils/userSubscriptionUtils.js +49 -0
- package/dist/dist/utils/userSubscriptionUtils.js.map +1 -0
- package/dist/dist/utils/userUtils.d.ts +49 -0
- package/dist/dist/utils/userUtils.d.ts.map +1 -0
- package/dist/dist/utils/userUtils.js +60 -0
- package/dist/dist/utils/userUtils.js.map +1 -0
- package/dist/dist/utils/venueLoyalty/__tests__/eligibilityUtils.test.d.ts +2 -0
- package/dist/dist/utils/venueLoyalty/__tests__/eligibilityUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/venueLoyalty/__tests__/eligibilityUtils.test.js +67 -0
- package/dist/dist/utils/venueLoyalty/__tests__/eligibilityUtils.test.js.map +1 -0
- package/dist/dist/utils/venueLoyalty/__tests__/redemptionCodeUtils.test.d.ts +2 -0
- package/dist/dist/utils/venueLoyalty/__tests__/redemptionCodeUtils.test.d.ts.map +1 -0
- package/dist/dist/utils/venueLoyalty/__tests__/redemptionCodeUtils.test.js +71 -0
- package/dist/dist/utils/venueLoyalty/__tests__/redemptionCodeUtils.test.js.map +1 -0
- package/dist/dist/utils/venueLoyalty/eligibilityUtils.d.ts +33 -0
- package/dist/dist/utils/venueLoyalty/eligibilityUtils.d.ts.map +1 -0
- package/dist/dist/utils/venueLoyalty/eligibilityUtils.js +49 -0
- package/dist/dist/utils/venueLoyalty/eligibilityUtils.js.map +1 -0
- package/dist/dist/utils/venueLoyalty/redemptionCodeUtils.d.ts +35 -0
- package/dist/dist/utils/venueLoyalty/redemptionCodeUtils.d.ts.map +1 -0
- package/dist/dist/utils/venueLoyalty/redemptionCodeUtils.js +74 -0
- package/dist/dist/utils/venueLoyalty/redemptionCodeUtils.js.map +1 -0
- package/dist/dist/utils/venueTypeFormatter.d.ts +10 -0
- package/dist/dist/utils/venueTypeFormatter.d.ts.map +1 -0
- package/dist/dist/utils/venueTypeFormatter.js +25 -0
- package/dist/dist/utils/venueTypeFormatter.js.map +1 -0
- package/dist/dist/utmAttribution.d.ts +29 -0
- package/dist/dist/utmAttribution.d.ts.map +1 -0
- package/dist/dist/utmAttribution.js +124 -0
- package/dist/dist/utmAttribution.js.map +1 -0
- package/dist/dist/venueLoyaltyRedemption.d.ts +166 -0
- package/dist/dist/venueLoyaltyRedemption.d.ts.map +1 -0
- package/dist/dist/venueLoyaltyRedemption.js +21 -0
- package/dist/dist/venueLoyaltyRedemption.js.map +1 -0
- package/dist/dist/venueMatch.d.ts +165 -0
- package/dist/dist/venueMatch.d.ts.map +1 -0
- package/dist/dist/venueMatch.js +68 -0
- package/dist/dist/venueMatch.js.map +1 -0
- package/dist/entertainmentNotableVenues.d.ts +53 -0
- package/dist/entertainmentNotableVenues.d.ts.map +1 -0
- package/dist/entertainmentNotableVenues.js +101 -0
- package/dist/entertainmentNotableVenues.js.map +1 -0
- package/dist/extendedSchemas.d.ts +293 -1
- package/dist/extendedSchemas.d.ts.map +1 -1
- package/dist/extendedSchemas.js +65 -0
- package/dist/extendedSchemas.js.map +1 -1
- package/dist/index.d.ts +15 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -2
- package/dist/index.js.map +1 -1
- package/dist/influencerAudience.d.ts +24 -0
- package/dist/influencerAudience.d.ts.map +1 -0
- package/dist/influencerAudience.js +112 -0
- package/dist/influencerAudience.js.map +1 -0
- package/dist/productLaunch.d.ts +17 -0
- package/dist/productLaunch.d.ts.map +1 -0
- package/dist/productLaunch.js +50 -0
- package/dist/productLaunch.js.map +1 -0
- package/dist/utils/__tests__/agencyBookingCheckoutCopy.test.d.ts +2 -0
- package/dist/utils/__tests__/agencyBookingCheckoutCopy.test.d.ts.map +1 -0
- package/dist/utils/__tests__/agencyBookingCheckoutCopy.test.js +25 -0
- package/dist/utils/__tests__/agencyBookingCheckoutCopy.test.js.map +1 -0
- package/dist/utils/__tests__/entertainmentDrawFit.test.d.ts +2 -0
- package/dist/utils/__tests__/entertainmentDrawFit.test.d.ts.map +1 -0
- package/dist/utils/__tests__/entertainmentDrawFit.test.js +86 -0
- package/dist/utils/__tests__/entertainmentDrawFit.test.js.map +1 -0
- package/dist/utils/__tests__/guestSurface.test.js +6 -0
- package/dist/utils/__tests__/guestSurface.test.js.map +1 -1
- package/dist/utils/__tests__/locationVisibility.test.js +11 -0
- package/dist/utils/__tests__/locationVisibility.test.js.map +1 -1
- package/dist/utils/__tests__/organizationEntitlements.test.d.ts +2 -0
- package/dist/utils/__tests__/organizationEntitlements.test.d.ts.map +1 -0
- package/dist/utils/__tests__/organizationEntitlements.test.js +42 -0
- package/dist/utils/__tests__/organizationEntitlements.test.js.map +1 -0
- package/dist/utils/__tests__/reputationUtils.bayesian.test.d.ts +2 -0
- package/dist/utils/__tests__/reputationUtils.bayesian.test.d.ts.map +1 -0
- package/dist/utils/__tests__/reputationUtils.bayesian.test.js +39 -0
- package/dist/utils/__tests__/reputationUtils.bayesian.test.js.map +1 -0
- package/dist/utils/__tests__/reputationUtils.serviceListing.test.d.ts +2 -0
- package/dist/utils/__tests__/reputationUtils.serviceListing.test.d.ts.map +1 -0
- package/dist/utils/__tests__/reputationUtils.serviceListing.test.js +28 -0
- package/dist/utils/__tests__/reputationUtils.serviceListing.test.js.map +1 -0
- package/dist/utils/__tests__/serviceAvailabilityDisplay.test.d.ts +2 -0
- package/dist/utils/__tests__/serviceAvailabilityDisplay.test.d.ts.map +1 -0
- package/dist/utils/__tests__/serviceAvailabilityDisplay.test.js +121 -0
- package/dist/utils/__tests__/serviceAvailabilityDisplay.test.js.map +1 -0
- package/dist/utils/__tests__/socialEventCadence.test.d.ts +2 -0
- package/dist/utils/__tests__/socialEventCadence.test.d.ts.map +1 -0
- package/dist/utils/__tests__/socialEventCadence.test.js +26 -0
- package/dist/utils/__tests__/socialEventCadence.test.js.map +1 -0
- package/dist/utils/__tests__/ticketCheckInDisplay.test.d.ts +2 -0
- package/dist/utils/__tests__/ticketCheckInDisplay.test.d.ts.map +1 -0
- package/dist/utils/__tests__/ticketCheckInDisplay.test.js +29 -0
- package/dist/utils/__tests__/ticketCheckInDisplay.test.js.map +1 -0
- package/dist/utils/agencyBookingCheckoutCopy.d.ts +15 -0
- package/dist/utils/agencyBookingCheckoutCopy.d.ts.map +1 -0
- package/dist/utils/agencyBookingCheckoutCopy.js +29 -0
- package/dist/utils/agencyBookingCheckoutCopy.js.map +1 -0
- package/dist/utils/blog/blogCommentDbUtils.d.ts +2 -0
- package/dist/utils/blog/blogCommentDbUtils.d.ts.map +1 -1
- package/dist/utils/entertainmentDrawFit.d.ts +27 -0
- package/dist/utils/entertainmentDrawFit.d.ts.map +1 -0
- package/dist/utils/entertainmentDrawFit.js +119 -0
- package/dist/utils/entertainmentDrawFit.js.map +1 -0
- package/dist/utils/guestSurface.d.ts +11 -1
- package/dist/utils/guestSurface.d.ts.map +1 -1
- package/dist/utils/guestSurface.js +1 -1
- package/dist/utils/guestSurface.js.map +1 -1
- package/dist/utils/locationVisibility.d.ts +5 -0
- package/dist/utils/locationVisibility.d.ts.map +1 -1
- package/dist/utils/locationVisibility.js +4 -2
- package/dist/utils/locationVisibility.js.map +1 -1
- package/dist/utils/organizationEntitlements.d.ts +20 -0
- package/dist/utils/organizationEntitlements.d.ts.map +1 -0
- package/dist/utils/organizationEntitlements.js +30 -0
- package/dist/utils/organizationEntitlements.js.map +1 -0
- package/dist/utils/reputationUtils.d.ts +44 -0
- package/dist/utils/reputationUtils.d.ts.map +1 -0
- package/dist/utils/reputationUtils.js +54 -0
- package/dist/utils/reputationUtils.js.map +1 -0
- package/dist/utils/service/serviceUtils.d.ts +4 -1
- package/dist/utils/service/serviceUtils.d.ts.map +1 -1
- package/dist/utils/service/serviceUtils.js.map +1 -1
- package/dist/utils/serviceAvailabilityDisplay.d.ts +58 -0
- package/dist/utils/serviceAvailabilityDisplay.d.ts.map +1 -0
- package/dist/utils/serviceAvailabilityDisplay.js +143 -0
- package/dist/utils/serviceAvailabilityDisplay.js.map +1 -0
- package/dist/utils/ticketCheckInDisplay.d.ts +8 -0
- package/dist/utils/ticketCheckInDisplay.d.ts.map +1 -0
- package/dist/utils/ticketCheckInDisplay.js +29 -0
- package/dist/utils/ticketCheckInDisplay.js.map +1 -0
- package/dist/utils/userUtils.d.ts +16 -1
- package/dist/utils/userUtils.d.ts.map +1 -1
- package/dist/utils/userUtils.js +31 -0
- package/dist/utils/userUtils.js.map +1 -1
- package/package.json +1 -1
- package/prisma/prisma/COMPREHENSIVE-MIGRATION-README.md +295 -0
- package/prisma/prisma/MIGRATION-CHECKLIST.md +198 -0
- package/prisma/prisma/MIGRATION-FILES-GUIDE.md +76 -0
- package/prisma/prisma/comprehensive-migration-20260120.sql +5751 -0
- package/prisma/prisma/delta-migration-20260120.sql +302 -0
- package/prisma/prisma/manual-migration-add-missing-columns.sql +182 -0
- package/prisma/prisma/migrations/competition-prize-catalog-entry-tier.sql +39 -0
- package/prisma/prisma/quick-migration.sql +47 -0
- package/prisma/prisma/schema.prisma +10850 -0
- package/prisma/prisma/verify-migration.sql +132 -0
- package/prisma/schema.prisma +980 -3
- package/src/__tests__/accessScreening.test.ts +29 -0
- package/src/__tests__/bookingIntent.test.ts +50 -0
- package/src/__tests__/entertainmentNotableVenues.test.ts +110 -0
- package/src/__tests__/influencerAudience.test.ts +38 -0
- package/src/__tests__/productLaunch.test.ts +52 -0
- package/src/accessScreening.ts +23 -0
- package/src/aiEventPlan.ts +75 -0
- package/src/bookingIntent.ts +54 -0
- package/src/definitions.ts +2 -0
- package/src/entertainmentNotableVenues.ts +137 -0
- package/src/extendedSchemas.ts +111 -1
- package/src/index.ts +44 -1
- package/src/influencerAudience.ts +156 -0
- package/src/productLaunch.ts +68 -0
- package/src/utils/__tests__/agencyBookingCheckoutCopy.test.ts +27 -0
- package/src/utils/__tests__/entertainmentDrawFit.test.ts +122 -0
- package/src/utils/__tests__/guestSurface.test.ts +9 -0
- package/src/utils/__tests__/locationVisibility.test.ts +14 -0
- package/src/utils/__tests__/organizationEntitlements.test.ts +59 -0
- package/src/utils/__tests__/reputationUtils.bayesian.test.ts +48 -0
- package/src/utils/__tests__/reputationUtils.serviceListing.test.ts +36 -0
- package/src/utils/__tests__/serviceAvailabilityDisplay.test.ts +152 -0
- package/src/utils/__tests__/socialEventCadence.test.ts +37 -0
- package/src/utils/__tests__/ticketCheckInDisplay.test.ts +49 -0
- package/src/utils/agencyBookingCheckoutCopy.ts +50 -0
- package/src/utils/entertainmentDrawFit.ts +180 -0
- package/src/utils/guestSurface.ts +20 -3
- package/src/utils/locationVisibility.ts +11 -2
- package/src/utils/organizationEntitlements.ts +37 -0
- package/src/utils/reputationUtils.ts +94 -0
- package/src/utils/service/serviceUtils.ts +6 -2
- package/src/utils/serviceAvailabilityDisplay.ts +199 -0
- package/src/utils/ticketCheckInDisplay.ts +37 -0
- package/src/utils/userUtils.ts +36 -1
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tests for shared contact/user helpers and environment detection.
|
|
3
|
+
*/
|
|
4
|
+
import { describe, expect, test, beforeEach, afterEach } from "@jest/globals";
|
|
5
|
+
import { getUserName, getUserImage, isContactAndNotUser, getContactOrUserEmail, getUserIdAndNotContactId, getBashEventDetailUrlParamsFromBashEvent, isProduction, } from "../apiUtils.js";
|
|
6
|
+
describe("apiUtils", () => {
|
|
7
|
+
describe("isContactAndNotUser", () => {
|
|
8
|
+
test("returns true when contactOwnerId is set", () => {
|
|
9
|
+
expect(isContactAndNotUser({ contactOwnerId: "owner-1", fullName: "Jane" })).toBe(true);
|
|
10
|
+
});
|
|
11
|
+
test("returns false for user-shaped objects", () => {
|
|
12
|
+
expect(isContactAndNotUser({ id: "user-1", email: "jane@example.com" })).toBe(false);
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
describe("getUserName", () => {
|
|
16
|
+
test("returns empty string for undefined", () => {
|
|
17
|
+
expect(getUserName(undefined)).toBe("");
|
|
18
|
+
});
|
|
19
|
+
test("returns contact fullName when present", () => {
|
|
20
|
+
expect(getUserName({ contactOwnerId: "owner-1", fullName: "Jane Contact", contactEmail: "j@x.com" })).toBe("Jane Contact");
|
|
21
|
+
});
|
|
22
|
+
test("falls back to contactEmail for contacts without fullName", () => {
|
|
23
|
+
expect(getUserName({ contactOwnerId: "owner-1", contactEmail: "j@x.com" })).toBe("j@x.com");
|
|
24
|
+
});
|
|
25
|
+
test("combines givenName and familyName for users", () => {
|
|
26
|
+
expect(getUserName({ givenName: "Jane", familyName: "Doe", email: "j@x.com" })).toBe("Jane Doe");
|
|
27
|
+
});
|
|
28
|
+
test("falls back to email when name parts missing", () => {
|
|
29
|
+
expect(getUserName({ email: "solo@example.com" })).toBe("solo@example.com");
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
describe("getUserImage", () => {
|
|
33
|
+
const noProfilePicture = "/noProfilePicture.svg";
|
|
34
|
+
test("returns empty string for undefined", () => {
|
|
35
|
+
expect(getUserImage(undefined)).toBe("");
|
|
36
|
+
});
|
|
37
|
+
test("returns placeholder for contacts", () => {
|
|
38
|
+
expect(getUserImage({ contactOwnerId: "owner-1", fullName: "Jane" })).toBe(noProfilePicture);
|
|
39
|
+
});
|
|
40
|
+
test("returns uploaded image when only upload exists", () => {
|
|
41
|
+
expect(getUserImage({ uploadedImage: "https://cdn.example/upload.jpg" })).toBe("https://cdn.example/upload.jpg");
|
|
42
|
+
});
|
|
43
|
+
test("returns google image when only google image exists", () => {
|
|
44
|
+
expect(getUserImage({ image: "https://lh3.google.com/photo.jpg" })).toBe("https://lh3.google.com/photo.jpg");
|
|
45
|
+
});
|
|
46
|
+
test("treats whitespace-only image URLs as missing", () => {
|
|
47
|
+
expect(getUserImage({ uploadedImage: " ", image: "https://google.com/p.jpg" })).toBe("https://google.com/p.jpg");
|
|
48
|
+
});
|
|
49
|
+
test("prefers most recently updated image when both exist", () => {
|
|
50
|
+
const older = new Date("2024-01-01");
|
|
51
|
+
const newer = new Date("2024-06-01");
|
|
52
|
+
expect(getUserImage({
|
|
53
|
+
uploadedImage: "https://cdn.example/upload.jpg",
|
|
54
|
+
uploadedImageUpdatedAt: newer,
|
|
55
|
+
image: "https://lh3.google.com/photo.jpg",
|
|
56
|
+
imageUpdatedAt: older,
|
|
57
|
+
})).toBe("https://cdn.example/upload.jpg");
|
|
58
|
+
expect(getUserImage({
|
|
59
|
+
uploadedImage: "https://cdn.example/upload.jpg",
|
|
60
|
+
uploadedImageUpdatedAt: older,
|
|
61
|
+
image: "https://lh3.google.com/photo.jpg",
|
|
62
|
+
imageUpdatedAt: newer,
|
|
63
|
+
})).toBe("https://lh3.google.com/photo.jpg");
|
|
64
|
+
});
|
|
65
|
+
test("falls back to uploadedImage when both exist without timestamps", () => {
|
|
66
|
+
expect(getUserImage({
|
|
67
|
+
uploadedImage: "https://cdn.example/upload.jpg",
|
|
68
|
+
image: "https://lh3.google.com/photo.jpg",
|
|
69
|
+
})).toBe("https://cdn.example/upload.jpg");
|
|
70
|
+
});
|
|
71
|
+
test("returns placeholder when user has no images", () => {
|
|
72
|
+
expect(getUserImage({ email: "j@x.com" })).toBe(noProfilePicture);
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
describe("getContactOrUserEmail", () => {
|
|
76
|
+
test("returns contactEmail for contacts", () => {
|
|
77
|
+
expect(getContactOrUserEmail({ contactOwnerId: "o1", contactEmail: "c@x.com" })).toBe("c@x.com");
|
|
78
|
+
});
|
|
79
|
+
test("returns email for users", () => {
|
|
80
|
+
expect(getContactOrUserEmail({ id: "u1", email: "u@x.com" })).toBe("u@x.com");
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
describe("getUserIdAndNotContactId", () => {
|
|
84
|
+
test("returns null for contacts", () => {
|
|
85
|
+
expect(getUserIdAndNotContactId({ contactOwnerId: "o1" })).toBeNull();
|
|
86
|
+
});
|
|
87
|
+
test("returns user id for users", () => {
|
|
88
|
+
expect(getUserIdAndNotContactId({ id: "user-42" })).toBe("user-42");
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
describe("getBashEventDetailUrlParamsFromBashEvent", () => {
|
|
92
|
+
test("returns empty string for undefined event", () => {
|
|
93
|
+
expect(getBashEventDetailUrlParamsFromBashEvent(undefined)).toBe("");
|
|
94
|
+
});
|
|
95
|
+
test("returns empty string when title/desc/cover are absent", () => {
|
|
96
|
+
expect(getBashEventDetailUrlParamsFromBashEvent({
|
|
97
|
+
title: "",
|
|
98
|
+
description: null,
|
|
99
|
+
coverPhoto: null,
|
|
100
|
+
})).toBe("");
|
|
101
|
+
});
|
|
102
|
+
test("truncates long descriptions before building params", () => {
|
|
103
|
+
const longDesc = "abcdefghijklmnop";
|
|
104
|
+
const result = getBashEventDetailUrlParamsFromBashEvent({ title: "Party", description: longDesc, coverPhoto: null }, "cover.jpg");
|
|
105
|
+
expect(result).toBe("");
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
describe("isProduction", () => {
|
|
109
|
+
const envKeys = ["NODE_ENV", "ENVIRONMENT", "BASH_ENV"];
|
|
110
|
+
const saved = {};
|
|
111
|
+
beforeEach(() => {
|
|
112
|
+
for (const key of envKeys) {
|
|
113
|
+
saved[key] = process.env[key];
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
afterEach(() => {
|
|
117
|
+
for (const key of envKeys) {
|
|
118
|
+
if (saved[key] === undefined) {
|
|
119
|
+
delete process.env[key];
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
process.env[key] = saved[key];
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
test("returns false when ENVIRONMENT contains qa", () => {
|
|
127
|
+
process.env.NODE_ENV = "production";
|
|
128
|
+
process.env.ENVIRONMENT = "qa-staging";
|
|
129
|
+
expect(isProduction()).toBe(false);
|
|
130
|
+
});
|
|
131
|
+
test("returns false when BASH_ENV contains qa", () => {
|
|
132
|
+
process.env.NODE_ENV = "production";
|
|
133
|
+
process.env.BASH_ENV = "QA";
|
|
134
|
+
expect(isProduction()).toBe(false);
|
|
135
|
+
});
|
|
136
|
+
test("returns true only when NODE_ENV is production and env is explicitly production", () => {
|
|
137
|
+
process.env.NODE_ENV = "production";
|
|
138
|
+
process.env.ENVIRONMENT = "production";
|
|
139
|
+
delete process.env.BASH_ENV;
|
|
140
|
+
expect(isProduction()).toBe(true);
|
|
141
|
+
});
|
|
142
|
+
test("returns true when BASH_ENV is production", () => {
|
|
143
|
+
process.env.NODE_ENV = "production";
|
|
144
|
+
delete process.env.ENVIRONMENT;
|
|
145
|
+
process.env.BASH_ENV = "production";
|
|
146
|
+
expect(isProduction()).toBe(true);
|
|
147
|
+
});
|
|
148
|
+
test("returns false in development even with production env vars", () => {
|
|
149
|
+
process.env.NODE_ENV = "development";
|
|
150
|
+
process.env.ENVIRONMENT = "production";
|
|
151
|
+
expect(isProduction()).toBe(false);
|
|
152
|
+
});
|
|
153
|
+
test("returns false when NODE_ENV is production but env vars are unset", () => {
|
|
154
|
+
process.env.NODE_ENV = "production";
|
|
155
|
+
delete process.env.ENVIRONMENT;
|
|
156
|
+
delete process.env.BASH_ENV;
|
|
157
|
+
expect(isProduction()).toBe(false);
|
|
158
|
+
});
|
|
159
|
+
});
|
|
160
|
+
});
|
|
161
|
+
//# sourceMappingURL=apiUtils.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apiUtils.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/apiUtils.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arrayUtils.test.d.ts","sourceRoot":"","sources":["../../../src/utils/__tests__/arrayUtils.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { describe, expect, test } from "@jest/globals";
|
|
2
|
+
import { asyncFilter } from "../arrayUtils.js";
|
|
3
|
+
describe("asyncFilter", () => {
|
|
4
|
+
test("keeps items where async predicate resolves true", async () => {
|
|
5
|
+
const nums = [1, 2, 3, 4];
|
|
6
|
+
const result = await asyncFilter(nums, async (n) => n % 2 === 0);
|
|
7
|
+
expect(result).toEqual([2, 4]);
|
|
8
|
+
});
|
|
9
|
+
test("returns empty array when no items match", async () => {
|
|
10
|
+
const result = await asyncFilter([1, 3, 5], async () => false);
|
|
11
|
+
expect(result).toEqual([]);
|
|
12
|
+
});
|
|
13
|
+
test("returns empty array for empty input", async () => {
|
|
14
|
+
const result = await asyncFilter([], async () => true);
|
|
15
|
+
expect(result).toEqual([]);
|
|
16
|
+
});
|
|
17
|
+
test("preserves order of matching items", async () => {
|
|
18
|
+
const items = ["a", "b", "c", "d"];
|
|
19
|
+
const result = await asyncFilter(items, async (v) => v !== "b");
|
|
20
|
+
expect(result).toEqual(["a", "c", "d"]);
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
//# sourceMappingURL=arrayUtils.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arrayUtils.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/arrayUtils.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACjE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badgeUtils.test.d.ts","sourceRoot":"","sources":["../../../src/utils/__tests__/badgeUtils.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* badgeUtils — host level / temp-badge helpers.
|
|
3
|
+
*
|
|
4
|
+
* The level-badge calculation is the public reputation signal on every host
|
|
5
|
+
* profile. A bug here either over- or under-credits a host (= unfair / loss
|
|
6
|
+
* of trust). We pin the actual ladder defined in DEFAULT_LEVEL_BADGES:
|
|
7
|
+
*
|
|
8
|
+
* novice → 1+ events
|
|
9
|
+
* regular → 5+ events, rating ≥ 4.0
|
|
10
|
+
* maverick → 15+ events, rating ≥ 4.5
|
|
11
|
+
* legend → 30+ events, rating ≥ 4.8
|
|
12
|
+
*
|
|
13
|
+
* We also pin temp-badge expiry semantics: missing expiresOn = never expires.
|
|
14
|
+
*/
|
|
15
|
+
import { getLevelBadgeById, getTemporaryBadgeById, isTemporaryBadgeExpired, filterExpiredTemporaryBadges, determineLevelBadge, } from "../badgeUtils.js";
|
|
16
|
+
// ============================================================================
|
|
17
|
+
// getLevelBadgeById / getTemporaryBadgeById — registry lookups
|
|
18
|
+
// ============================================================================
|
|
19
|
+
describe("getLevelBadgeById", () => {
|
|
20
|
+
it("returns the canonical badge object for a known id", () => {
|
|
21
|
+
const b = getLevelBadgeById("legend");
|
|
22
|
+
expect(b).toBeDefined();
|
|
23
|
+
expect(b?.id).toBe("legend");
|
|
24
|
+
expect(b?.requiredEvents).toBe(30);
|
|
25
|
+
expect(b?.requiredRating).toBe(4.8);
|
|
26
|
+
});
|
|
27
|
+
it("returns undefined for an unknown id", () => {
|
|
28
|
+
expect(getLevelBadgeById("definitely-not-a-badge")).toBeUndefined();
|
|
29
|
+
});
|
|
30
|
+
it("returns undefined for empty string", () => {
|
|
31
|
+
expect(getLevelBadgeById("")).toBeUndefined();
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
describe("getTemporaryBadgeById", () => {
|
|
35
|
+
it("returns a known temp badge", () => {
|
|
36
|
+
expect(getTemporaryBadgeById("trendingStar")?.id).toBe("trendingStar");
|
|
37
|
+
});
|
|
38
|
+
it("returns undefined for an unknown id", () => {
|
|
39
|
+
expect(getTemporaryBadgeById("nope")).toBeUndefined();
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
// ============================================================================
|
|
43
|
+
// isTemporaryBadgeExpired
|
|
44
|
+
// ============================================================================
|
|
45
|
+
describe("isTemporaryBadgeExpired", () => {
|
|
46
|
+
it("returns false when expiresOn is missing (badge never expires)", () => {
|
|
47
|
+
const badge = {
|
|
48
|
+
badgeId: "earlyAdopter",
|
|
49
|
+
earnedOn: "2020-01-01T00:00:00Z",
|
|
50
|
+
};
|
|
51
|
+
expect(isTemporaryBadgeExpired(badge)).toBe(false);
|
|
52
|
+
});
|
|
53
|
+
it("returns true for a clearly past expiresOn", () => {
|
|
54
|
+
const badge = {
|
|
55
|
+
badgeId: "trendingStar",
|
|
56
|
+
earnedOn: "2020-01-01T00:00:00Z",
|
|
57
|
+
expiresOn: "2020-02-01T00:00:00Z",
|
|
58
|
+
};
|
|
59
|
+
expect(isTemporaryBadgeExpired(badge)).toBe(true);
|
|
60
|
+
});
|
|
61
|
+
it("returns false for a clearly future expiresOn", () => {
|
|
62
|
+
const future = new Date(Date.now() + 365 * 24 * 60 * 60 * 1000)
|
|
63
|
+
.toISOString();
|
|
64
|
+
const badge = {
|
|
65
|
+
badgeId: "topHost",
|
|
66
|
+
earnedOn: new Date().toISOString(),
|
|
67
|
+
expiresOn: future,
|
|
68
|
+
};
|
|
69
|
+
expect(isTemporaryBadgeExpired(badge)).toBe(false);
|
|
70
|
+
});
|
|
71
|
+
it("returns true when expiresOn is RIGHT NOW (boundary: not strictly in the future)", () => {
|
|
72
|
+
// Source uses `expiryDate < currentDate`. A simultaneous tick = false (not expired),
|
|
73
|
+
// but Date.now() inside the function is sampled later than ours — which is enough
|
|
74
|
+
// to flip <. We pin the practical observable: "earlier than now → expired".
|
|
75
|
+
const past = new Date(Date.now() - 1).toISOString();
|
|
76
|
+
const badge = {
|
|
77
|
+
badgeId: "topHost",
|
|
78
|
+
earnedOn: "2020-01-01T00:00:00Z",
|
|
79
|
+
expiresOn: past,
|
|
80
|
+
};
|
|
81
|
+
expect(isTemporaryBadgeExpired(badge)).toBe(true);
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
// ============================================================================
|
|
85
|
+
// filterExpiredTemporaryBadges
|
|
86
|
+
// ============================================================================
|
|
87
|
+
describe("filterExpiredTemporaryBadges", () => {
|
|
88
|
+
it("returns [] for [] (no surprise allocation)", () => {
|
|
89
|
+
expect(filterExpiredTemporaryBadges([])).toEqual([]);
|
|
90
|
+
});
|
|
91
|
+
it("keeps non-expiring badges", () => {
|
|
92
|
+
const badges = [
|
|
93
|
+
{ badgeId: "earlyAdopter", earnedOn: "2020-01-01T00:00:00Z" },
|
|
94
|
+
];
|
|
95
|
+
expect(filterExpiredTemporaryBadges(badges)).toHaveLength(1);
|
|
96
|
+
});
|
|
97
|
+
it("drops expired badges and keeps the rest", () => {
|
|
98
|
+
const future = new Date(Date.now() + 86_400_000).toISOString();
|
|
99
|
+
const past = new Date(Date.now() - 86_400_000).toISOString();
|
|
100
|
+
const badges = [
|
|
101
|
+
{ badgeId: "topHost", earnedOn: "2020-01-01T00:00:00Z", expiresOn: past },
|
|
102
|
+
{ badgeId: "trendingStar", earnedOn: "2020-01-01T00:00:00Z", expiresOn: future },
|
|
103
|
+
{ badgeId: "earlyAdopter", earnedOn: "2020-01-01T00:00:00Z" },
|
|
104
|
+
];
|
|
105
|
+
const result = filterExpiredTemporaryBadges(badges);
|
|
106
|
+
expect(result.map((b) => b.badgeId)).toEqual(["trendingStar", "earlyAdopter"]);
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
// ============================================================================
|
|
110
|
+
// determineLevelBadge — the reputation ladder
|
|
111
|
+
// ============================================================================
|
|
112
|
+
describe("determineLevelBadge — host reputation ladder", () => {
|
|
113
|
+
it("returns null when the host has no events", () => {
|
|
114
|
+
expect(determineLevelBadge(0, 5)).toBeNull();
|
|
115
|
+
});
|
|
116
|
+
it("returns null when events are below the lowest threshold (1) even with high rating", () => {
|
|
117
|
+
expect(determineLevelBadge(0, 5)).toBeNull();
|
|
118
|
+
});
|
|
119
|
+
it("awards 'novice' at 1 event with no rating threshold", () => {
|
|
120
|
+
expect(determineLevelBadge(1, 0)).toBe("novice");
|
|
121
|
+
});
|
|
122
|
+
it("stays at 'novice' between 1 and 4 events", () => {
|
|
123
|
+
expect(determineLevelBadge(2, 4.9)).toBe("novice");
|
|
124
|
+
expect(determineLevelBadge(4, 4.9)).toBe("novice");
|
|
125
|
+
});
|
|
126
|
+
it("awards 'regular' at 5 events when rating ≥ 4.0", () => {
|
|
127
|
+
expect(determineLevelBadge(5, 4.0)).toBe("regular");
|
|
128
|
+
expect(determineLevelBadge(10, 4.49)).toBe("regular");
|
|
129
|
+
});
|
|
130
|
+
it("falls BACK to 'novice' when 5+ events but rating < 4.0 (rating gate failed)", () => {
|
|
131
|
+
// Rating gate failed for 'regular', so the next-best the host qualifies for is 'novice'.
|
|
132
|
+
expect(determineLevelBadge(5, 3.9)).toBe("novice");
|
|
133
|
+
expect(determineLevelBadge(20, 3.0)).toBe("novice");
|
|
134
|
+
});
|
|
135
|
+
it("awards 'maverick' at 15 events when rating ≥ 4.5", () => {
|
|
136
|
+
expect(determineLevelBadge(15, 4.5)).toBe("maverick");
|
|
137
|
+
expect(determineLevelBadge(29, 4.79)).toBe("maverick");
|
|
138
|
+
});
|
|
139
|
+
it("falls back to 'regular' at 15+ events when rating is between 4.0 and 4.5", () => {
|
|
140
|
+
expect(determineLevelBadge(15, 4.49)).toBe("regular");
|
|
141
|
+
});
|
|
142
|
+
it("awards 'legend' at 30 events when rating ≥ 4.8", () => {
|
|
143
|
+
expect(determineLevelBadge(30, 4.8)).toBe("legend");
|
|
144
|
+
expect(determineLevelBadge(1000, 5)).toBe("legend");
|
|
145
|
+
});
|
|
146
|
+
it("falls back to 'maverick' at 30+ events when rating drops below 4.8", () => {
|
|
147
|
+
expect(determineLevelBadge(30, 4.7)).toBe("maverick");
|
|
148
|
+
});
|
|
149
|
+
it("falls all the way back to 'novice' for a host with many events but a poor rating", () => {
|
|
150
|
+
// 1000 events but rating 1.0 → only the no-rating-gate 'novice' qualifies.
|
|
151
|
+
expect(determineLevelBadge(1000, 1.0)).toBe("novice");
|
|
152
|
+
});
|
|
153
|
+
it("treats fractional event counts the same as integer (>=)", () => {
|
|
154
|
+
expect(determineLevelBadge(5.5, 4.0)).toBe("regular");
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
//# sourceMappingURL=badgeUtils.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badgeUtils.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/badgeUtils.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bashPointsPaymentUtils.test.d.ts","sourceRoot":"","sources":["../../../src/utils/__tests__/bashPointsPaymentUtils.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* bashPointsPaymentUtils — earning math + display + deprecated stubs.
|
|
3
|
+
*
|
|
4
|
+
* BashPoints are loyalty cashback. The active code paths are:
|
|
5
|
+
* - calculateBashPointsCashback(amountCents, rate) → integer points
|
|
6
|
+
* - formatBashPoints(n) → "1,000 points"
|
|
7
|
+
*
|
|
8
|
+
* The "service booking" overloads were intentionally deprecated because
|
|
9
|
+
* BashPoints have no fixed dollar value and cannot pay for services. We pin
|
|
10
|
+
* the deprecated stubs here so they stay benign (return safe defaults, log a
|
|
11
|
+
* warning) — accidentally re-enabling them would cause real money loss.
|
|
12
|
+
*/
|
|
13
|
+
import { formatBashPoints, calculateBashPointsCashback, centsToBashPoints, bashPointsToCents, calculateMaxBashPointsForBooking, calculateSplitPayment, validateBashPointsPayment, } from "../bashPointsPaymentUtils.js";
|
|
14
|
+
describe("formatBashPoints", () => {
|
|
15
|
+
it("uses singular 'point' for exactly 1", () => {
|
|
16
|
+
expect(formatBashPoints(1)).toBe("1 point");
|
|
17
|
+
});
|
|
18
|
+
it("uses plural 'points' for 0", () => {
|
|
19
|
+
expect(formatBashPoints(0)).toBe("0 points");
|
|
20
|
+
});
|
|
21
|
+
it("uses plural for >1", () => {
|
|
22
|
+
expect(formatBashPoints(2)).toBe("2 points");
|
|
23
|
+
});
|
|
24
|
+
it("inserts en-US thousands separators", () => {
|
|
25
|
+
expect(formatBashPoints(1000)).toBe("1,000 points");
|
|
26
|
+
expect(formatBashPoints(28750)).toBe("28,750 points");
|
|
27
|
+
expect(formatBashPoints(1_000_000)).toBe("1,000,000 points");
|
|
28
|
+
});
|
|
29
|
+
it("formats negative values (defensive — should never happen but no throw)", () => {
|
|
30
|
+
// -1 !== 1 so it gets the plural suffix
|
|
31
|
+
expect(formatBashPoints(-5)).toBe("-5 points");
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
describe("calculateBashPointsCashback", () => {
|
|
35
|
+
it("awards 5% on a $10.00 (1000¢) purchase → 50 points", () => {
|
|
36
|
+
expect(calculateBashPointsCashback(1000, 0.05)).toBe(50);
|
|
37
|
+
});
|
|
38
|
+
it("awards 0 points on a $0 purchase", () => {
|
|
39
|
+
expect(calculateBashPointsCashback(0, 0.05)).toBe(0);
|
|
40
|
+
});
|
|
41
|
+
it("awards 0 points when the rate is 0", () => {
|
|
42
|
+
expect(calculateBashPointsCashback(10_000, 0)).toBe(0);
|
|
43
|
+
});
|
|
44
|
+
it("FLOORS fractional results (never over-awards)", () => {
|
|
45
|
+
// 333 * 0.05 = 16.65 → floor → 16
|
|
46
|
+
expect(calculateBashPointsCashback(333, 0.05)).toBe(16);
|
|
47
|
+
});
|
|
48
|
+
it("handles a 100% rebate rate", () => {
|
|
49
|
+
expect(calculateBashPointsCashback(2500, 1)).toBe(2500);
|
|
50
|
+
});
|
|
51
|
+
it("rate > 1 still floors (host can configure bonuses; trust input)", () => {
|
|
52
|
+
expect(calculateBashPointsCashback(100, 1.5)).toBe(150);
|
|
53
|
+
});
|
|
54
|
+
it("returns 0 (not negative) for negative amounts after floor", () => {
|
|
55
|
+
// Math.floor(-1) = -1; we don't bound the result to >=0 in source,
|
|
56
|
+
// so this pins the actual contract: negative inputs flow through as-is.
|
|
57
|
+
expect(calculateBashPointsCashback(-100, 0.05)).toBe(-5);
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
describe("DEPRECATED stubs — must remain safe defaults", () => {
|
|
61
|
+
let warnSpy;
|
|
62
|
+
beforeEach(() => {
|
|
63
|
+
warnSpy = jest.spyOn(console, "warn").mockImplementation(() => { });
|
|
64
|
+
});
|
|
65
|
+
afterEach(() => {
|
|
66
|
+
warnSpy.mockRestore();
|
|
67
|
+
});
|
|
68
|
+
describe("centsToBashPoints", () => {
|
|
69
|
+
it("returns the input as-is and warns", () => {
|
|
70
|
+
expect(centsToBashPoints(1234)).toBe(1234);
|
|
71
|
+
expect(warnSpy).toHaveBeenCalledWith(expect.stringContaining("DEPRECATED: centsToBashPoints"));
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
describe("bashPointsToCents", () => {
|
|
75
|
+
it("returns the input as-is and warns", () => {
|
|
76
|
+
expect(bashPointsToCents(500)).toBe(500);
|
|
77
|
+
expect(warnSpy).toHaveBeenCalledWith(expect.stringContaining("DEPRECATED: bashPointsToCents"));
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
describe("calculateMaxBashPointsForBooking", () => {
|
|
81
|
+
it("returns 0 (no BashPoints can be applied to a service booking) and warns", () => {
|
|
82
|
+
expect(calculateMaxBashPointsForBooking(10_000, 5_000)).toBe(0);
|
|
83
|
+
expect(warnSpy).toHaveBeenCalledWith(expect.stringContaining("DEPRECATED: calculateMaxBashPointsForBooking"));
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
describe("calculateSplitPayment", () => {
|
|
87
|
+
it("forces the full amount onto Stripe (BashPoints contribution = 0) and warns", () => {
|
|
88
|
+
const result = calculateSplitPayment(10_000, 9_999);
|
|
89
|
+
expect(result).toEqual({
|
|
90
|
+
bashPointsCents: 0,
|
|
91
|
+
stripeCents: 10_000,
|
|
92
|
+
bashPointsCredits: 0,
|
|
93
|
+
});
|
|
94
|
+
expect(warnSpy).toHaveBeenCalledWith(expect.stringContaining("DEPRECATED: calculateSplitPayment"));
|
|
95
|
+
});
|
|
96
|
+
it("preserves the original total on stripeCents even when called with 0", () => {
|
|
97
|
+
const result = calculateSplitPayment(0, 100);
|
|
98
|
+
expect(result.stripeCents).toBe(0);
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
describe("validateBashPointsPayment", () => {
|
|
102
|
+
it("ALWAYS returns invalid with a clear redirect-to-Stripe message", () => {
|
|
103
|
+
const result = validateBashPointsPayment(100, 1_000, 500);
|
|
104
|
+
expect(result.valid).toBe(false);
|
|
105
|
+
expect(result.errorMessage).toMatch(/credit card/i);
|
|
106
|
+
expect(result.errorMessage).toMatch(/BashPoints-priced tickets/i);
|
|
107
|
+
});
|
|
108
|
+
it("rejects even when the user has enough balance (no special-case bypass)", () => {
|
|
109
|
+
// 1_000_000 balance, 100 needed → still rejected because services can't take BashPoints.
|
|
110
|
+
expect(validateBashPointsPayment(100, 1_000_000, 100).valid).toBe(false);
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
//# sourceMappingURL=bashPointsPaymentUtils.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bashPointsPaymentUtils.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/bashPointsPaymentUtils.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"birthdayExperienceQuality.test.d.ts","sourceRoot":"","sources":["../../../src/utils/__tests__/birthdayExperienceQuality.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { averageExperienceStars, EXPERIENCE_STAR_BANDS, } from "../birthdayExperienceQuality.js";
|
|
2
|
+
describe("averageExperienceStars", () => {
|
|
3
|
+
it("returns null when there are no votes", () => {
|
|
4
|
+
expect(averageExperienceStars({ Awesome: 0, Okay: 0, Lame: 0 })).toBeNull();
|
|
5
|
+
expect(averageExperienceStars(undefined)).toBeNull();
|
|
6
|
+
});
|
|
7
|
+
it("returns midpoint when all votes are one tier", () => {
|
|
8
|
+
const awesomeMid = (EXPERIENCE_STAR_BANDS.Awesome.min +
|
|
9
|
+
EXPERIENCE_STAR_BANDS.Awesome.max) /
|
|
10
|
+
2;
|
|
11
|
+
expect(averageExperienceStars({ Awesome: 2, Okay: 0, Lame: 0 })).toBeCloseTo(awesomeMid);
|
|
12
|
+
});
|
|
13
|
+
it("blends mixed votes", () => {
|
|
14
|
+
const awesomeMid = (EXPERIENCE_STAR_BANDS.Awesome.min +
|
|
15
|
+
EXPERIENCE_STAR_BANDS.Awesome.max) /
|
|
16
|
+
2;
|
|
17
|
+
const lameMid = (EXPERIENCE_STAR_BANDS.Lame.min + EXPERIENCE_STAR_BANDS.Lame.max) / 2;
|
|
18
|
+
const a = averageExperienceStars({ Awesome: 1, Okay: 0, Lame: 1 });
|
|
19
|
+
expect(a).toBeCloseTo((awesomeMid + lameMid) / 2);
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=birthdayExperienceQuality.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"birthdayExperienceQuality.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/birthdayExperienceQuality.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AAEzC,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,CACJ,sBAAsB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CACzD,CAAC,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,UAAU,GACd,CAAC,qBAAqB,CAAC,OAAO,CAAC,GAAG;YAChC,qBAAqB,CAAC,OAAO,CAAC,GAAG,CAAC;YACpC,CAAC,CAAC;QACJ,MAAM,CACJ,sBAAsB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CACzD,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,UAAU,GACd,CAAC,qBAAqB,CAAC,OAAO,CAAC,GAAG;YAChC,qBAAqB,CAAC,OAAO,CAAC,GAAG,CAAC;YACpC,CAAC,CAAC;QACJ,MAAM,OAAO,GACX,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxE,MAAM,CAAC,GAAG,sBAAsB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACnE,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blogUtils.test.d.ts","sourceRoot":"","sources":["../../../src/utils/__tests__/blogUtils.test.ts"],"names":[],"mappings":""}
|