@burdenoff/website-sdk 2026.1031.2 → 2026.1031.3
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/analytics/index.d.mts +41 -1
- package/dist/analytics/index.d.ts +41 -1
- package/dist/analytics/index.js +40 -0
- package/dist/analytics/index.js.map +1 -1
- package/dist/analytics/index.mjs +38 -1
- package/dist/analytics/index.mjs.map +1 -1
- package/dist/components/waitlist.js +39 -0
- package/dist/components/waitlist.js.map +1 -1
- package/dist/components/waitlist.mjs +39 -0
- package/dist/components/waitlist.mjs.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +40 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -3827,6 +3827,43 @@ function PricingPage(props) {
|
|
|
3827
3827
|
/* @__PURE__ */ jsx(PricingSection, { ...props })
|
|
3828
3828
|
] });
|
|
3829
3829
|
}
|
|
3830
|
+
|
|
3831
|
+
// src/analytics/events.ts
|
|
3832
|
+
var MAX_PROPERTY_LENGTH = 64;
|
|
3833
|
+
var EMAIL_LIKE = /[^\s@]+@[^\s@]+/;
|
|
3834
|
+
function sanitizeWebsiteEventProperties(properties) {
|
|
3835
|
+
const safe = {};
|
|
3836
|
+
if (!properties) return safe;
|
|
3837
|
+
for (const [key, value] of Object.entries(properties)) {
|
|
3838
|
+
if (typeof value === "boolean") {
|
|
3839
|
+
safe[key] = value;
|
|
3840
|
+
} else if (typeof value === "number") {
|
|
3841
|
+
if (Number.isFinite(value)) safe[key] = value;
|
|
3842
|
+
} else if (typeof value === "string") {
|
|
3843
|
+
const trimmed = value.trim();
|
|
3844
|
+
if (trimmed.length > 0 && trimmed.length <= MAX_PROPERTY_LENGTH && !EMAIL_LIKE.test(trimmed)) {
|
|
3845
|
+
safe[key] = trimmed;
|
|
3846
|
+
}
|
|
3847
|
+
}
|
|
3848
|
+
}
|
|
3849
|
+
return safe;
|
|
3850
|
+
}
|
|
3851
|
+
function trackWebsiteEvent(name, properties) {
|
|
3852
|
+
if (typeof window === "undefined") return false;
|
|
3853
|
+
try {
|
|
3854
|
+
const rybbit = window.rybbit;
|
|
3855
|
+
if (typeof rybbit?.event !== "function") return false;
|
|
3856
|
+
const safe = sanitizeWebsiteEventProperties(properties);
|
|
3857
|
+
if (Object.keys(safe).length > 0) {
|
|
3858
|
+
rybbit.event(name, safe);
|
|
3859
|
+
} else {
|
|
3860
|
+
rybbit.event(name);
|
|
3861
|
+
}
|
|
3862
|
+
return true;
|
|
3863
|
+
} catch {
|
|
3864
|
+
return false;
|
|
3865
|
+
}
|
|
3866
|
+
}
|
|
3830
3867
|
var waitlistPageSchema = z.object({
|
|
3831
3868
|
name: z.string().min(1, "Name is required"),
|
|
3832
3869
|
email: z.string().email("Please enter a valid email address"),
|
|
@@ -4098,6 +4135,7 @@ function WaitlistPage({
|
|
|
4098
4135
|
product?.id || config.productId
|
|
4099
4136
|
);
|
|
4100
4137
|
if (result.success) {
|
|
4138
|
+
trackWebsiteEvent("waitlist.signed_up", { form: "page" });
|
|
4101
4139
|
toast.success(result.message ?? successMessage);
|
|
4102
4140
|
reset();
|
|
4103
4141
|
} else {
|
|
@@ -4248,6 +4286,7 @@ function WaitlistForm({
|
|
|
4248
4286
|
product?.id || config.productId
|
|
4249
4287
|
);
|
|
4250
4288
|
if (result.success) {
|
|
4289
|
+
trackWebsiteEvent("waitlist.signed_up", { form: "inline" });
|
|
4251
4290
|
toast.success(result.message ?? "You have been added to the waitlist!");
|
|
4252
4291
|
setEmail("");
|
|
4253
4292
|
setName("");
|
|
@@ -20924,6 +20963,6 @@ function formatFreshnessReport(issues) {
|
|
|
20924
20963
|
].join("\n");
|
|
20925
20964
|
}
|
|
20926
20965
|
|
|
20927
|
-
export { ANSWERS_PATH, ANSWER_HEADING_SHIFT, ANSWER_PATH_PREFIX, AnswerDetailPage, AnswersPage, BlogListPage, BlogPostPage, Button, CONCEPTS_PATH, CONCEPT_ILLUSTRATION_NOTICE, CONCEPT_PATH_PREFIX, CONCEPT_WORKFLOW_NOTICE, CareersApplyForm, CareersSubmissionForm, CaseStudiesListPage, CaseStudyPage, ChangelogPage, ConceptDetailPage, ConceptsPage, ContactPage, ContentRenderer, ContractsPage, DEFAULT_COMPARISON_MAX_AGE_DAYS, DEFAULT_CONTACT_CATEGORIES, DEFAULT_EXPLORE_EXAMPLE_PROMPTS, DOMAINS_URL, ECOSYSTEM_PRODUCTS, ESCALATE_EXPLORE_CONVERSATION_MUTATION, EXPLORE_CATALOG_QUERY, EXPLORE_CATALOG_QUERY_WITHOUT_HIGHLIGHTS, EXPLORE_ESCALATION_NOTE_SOFT_MAX, EXPLORE_LOCALES, EXPLORE_MESSAGE_QUERY, EXPLORE_PREFILL_MAX_LENGTH, EXPLORE_RECAPTCHA_ACTION, ElectronDownloadLink, ExploreAnswerBody, ExploreAnswerStyles, ExploreChatProvider, ExploreCta, ExplorePage, ExplorePanel, FALLBACK_EXPLORE_LIMITS, FOOTERLESS_ROUTES, Input, LEGAL_DOCUMENTS, LEGAL_DOCUMENT_KEYS, Label, LaunchCountdown, LegalPage, Markdown, NewsletterForm, NewsletterPage, PRODUCT_SLUG_ALIASES, PRODUCT_SLUG_EMIT, PRODUCT_SLUG_RENAMES, PUBLISHED_ANSWER_FIELDS, PageHead, PartnersPage, PressKitPage, PricingPage, PricingProductKeyError, PricingSection, ProblemsSolvedSection, ProductCard, ProductProvider, ResourceLinks, RybbitAnalytics, SEND_EXPLORE_MESSAGE_MUTATION, Select, SocialLinks, StarRating, StoreBrowsePage, StoreHomePage, StoreProductDetailPage, Textarea, TypeBadge, UnsubscribePage, WaitlistForm, WaitlistPage, WebSDKClient, WebSDKProvider, WebsiteSwitcher, answerPath, answerPlainText, answerSourceHost, answerSpeechText, answerStrings, availablePlanCurrencies, buttonVariants, checkComparisonFreshness, classifyExploreError, cleanPlanDisplayName, cn, conceptPath, detectElectronPlatform, emitProductSlug, exploreQuestionHref, fetchLegalContent, fetchLegalContentPage, fetchPublicJobPosting, fetchPublicJobPostings, fetchPublicJobPostingsForSubmission, fetchPublicProduct, findLegalDocument, formatAnswerDate, formatDownloads, formatFreshnessReport, formatLegalDate, formatPrice2 as formatPrice, getAnswerBySlug, getConceptBySlug, getRecaptchaV3Token, hasCustomerSignOff, inlineImageOrigins, isFooterlessPath, isInlineImageAllowed, isInlineVideoAllowed, isPublishedSourceUrl, isSameProductSlug, isUuidLike, isValidUrl, latestVerification, legacyProductSlug, loadRecaptchaV3, looksLikeDeliverableEmail, normalizeProductSlug, normalizeRoutePath, oldestVerification, parseVerifiedAt, planPriceIn, productSlugVariants, productSlugsByOrigin, resolvePricingProductKey, shouldRenderSiteFooter, speechLocaleOf, splitLeadingHeading, stopSpeaking, useContentPage, useContentPages, useExploreChat, useExploreConversation, useProduct, useProductConfig, useProgressiveReveal, usePublicJobPosting, usePublicJobPostings, usePublicJobPostingsForSubmission, useSpeechOutput, useWebSDK, useWebSDKConfig };
|
|
20966
|
+
export { ANSWERS_PATH, ANSWER_HEADING_SHIFT, ANSWER_PATH_PREFIX, AnswerDetailPage, AnswersPage, BlogListPage, BlogPostPage, Button, CONCEPTS_PATH, CONCEPT_ILLUSTRATION_NOTICE, CONCEPT_PATH_PREFIX, CONCEPT_WORKFLOW_NOTICE, CareersApplyForm, CareersSubmissionForm, CaseStudiesListPage, CaseStudyPage, ChangelogPage, ConceptDetailPage, ConceptsPage, ContactPage, ContentRenderer, ContractsPage, DEFAULT_COMPARISON_MAX_AGE_DAYS, DEFAULT_CONTACT_CATEGORIES, DEFAULT_EXPLORE_EXAMPLE_PROMPTS, DOMAINS_URL, ECOSYSTEM_PRODUCTS, ESCALATE_EXPLORE_CONVERSATION_MUTATION, EXPLORE_CATALOG_QUERY, EXPLORE_CATALOG_QUERY_WITHOUT_HIGHLIGHTS, EXPLORE_ESCALATION_NOTE_SOFT_MAX, EXPLORE_LOCALES, EXPLORE_MESSAGE_QUERY, EXPLORE_PREFILL_MAX_LENGTH, EXPLORE_RECAPTCHA_ACTION, ElectronDownloadLink, ExploreAnswerBody, ExploreAnswerStyles, ExploreChatProvider, ExploreCta, ExplorePage, ExplorePanel, FALLBACK_EXPLORE_LIMITS, FOOTERLESS_ROUTES, Input, LEGAL_DOCUMENTS, LEGAL_DOCUMENT_KEYS, Label, LaunchCountdown, LegalPage, Markdown, NewsletterForm, NewsletterPage, PRODUCT_SLUG_ALIASES, PRODUCT_SLUG_EMIT, PRODUCT_SLUG_RENAMES, PUBLISHED_ANSWER_FIELDS, PageHead, PartnersPage, PressKitPage, PricingPage, PricingProductKeyError, PricingSection, ProblemsSolvedSection, ProductCard, ProductProvider, ResourceLinks, RybbitAnalytics, SEND_EXPLORE_MESSAGE_MUTATION, Select, SocialLinks, StarRating, StoreBrowsePage, StoreHomePage, StoreProductDetailPage, Textarea, TypeBadge, UnsubscribePage, WaitlistForm, WaitlistPage, WebSDKClient, WebSDKProvider, WebsiteSwitcher, answerPath, answerPlainText, answerSourceHost, answerSpeechText, answerStrings, availablePlanCurrencies, buttonVariants, checkComparisonFreshness, classifyExploreError, cleanPlanDisplayName, cn, conceptPath, detectElectronPlatform, emitProductSlug, exploreQuestionHref, fetchLegalContent, fetchLegalContentPage, fetchPublicJobPosting, fetchPublicJobPostings, fetchPublicJobPostingsForSubmission, fetchPublicProduct, findLegalDocument, formatAnswerDate, formatDownloads, formatFreshnessReport, formatLegalDate, formatPrice2 as formatPrice, getAnswerBySlug, getConceptBySlug, getRecaptchaV3Token, hasCustomerSignOff, inlineImageOrigins, isFooterlessPath, isInlineImageAllowed, isInlineVideoAllowed, isPublishedSourceUrl, isSameProductSlug, isUuidLike, isValidUrl, latestVerification, legacyProductSlug, loadRecaptchaV3, looksLikeDeliverableEmail, normalizeProductSlug, normalizeRoutePath, oldestVerification, parseVerifiedAt, planPriceIn, productSlugVariants, productSlugsByOrigin, resolvePricingProductKey, shouldRenderSiteFooter, speechLocaleOf, splitLeadingHeading, stopSpeaking, trackWebsiteEvent, useContentPage, useContentPages, useExploreChat, useExploreConversation, useProduct, useProductConfig, useProgressiveReveal, usePublicJobPosting, usePublicJobPostings, usePublicJobPostingsForSubmission, useSpeechOutput, useWebSDK, useWebSDKConfig };
|
|
20928
20967
|
//# sourceMappingURL=index.mjs.map
|
|
20929
20968
|
//# sourceMappingURL=index.mjs.map
|