@burdenoff/website-sdk 2026.813.1 → 2026.813.2

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.
Files changed (41) hide show
  1. package/dist/components/contact.js +20 -3
  2. package/dist/components/contact.js.map +1 -1
  3. package/dist/components/contact.mjs +20 -3
  4. package/dist/components/contact.mjs.map +1 -1
  5. package/dist/components/newsletter.js +20 -3
  6. package/dist/components/newsletter.js.map +1 -1
  7. package/dist/components/newsletter.mjs +20 -3
  8. package/dist/components/newsletter.mjs.map +1 -1
  9. package/dist/components/partners.js +20 -3
  10. package/dist/components/partners.js.map +1 -1
  11. package/dist/components/partners.mjs +20 -3
  12. package/dist/components/partners.mjs.map +1 -1
  13. package/dist/components/pricing.js +20 -3
  14. package/dist/components/pricing.js.map +1 -1
  15. package/dist/components/pricing.mjs +20 -3
  16. package/dist/components/pricing.mjs.map +1 -1
  17. package/dist/components/unsubscribe.js +20 -3
  18. package/dist/components/unsubscribe.js.map +1 -1
  19. package/dist/components/unsubscribe.mjs +20 -3
  20. package/dist/components/unsubscribe.mjs.map +1 -1
  21. package/dist/components/waitlist.js +20 -3
  22. package/dist/components/waitlist.js.map +1 -1
  23. package/dist/components/waitlist.mjs +20 -3
  24. package/dist/components/waitlist.mjs.map +1 -1
  25. package/dist/content/index.js +20 -3
  26. package/dist/content/index.js.map +1 -1
  27. package/dist/content/index.mjs +20 -3
  28. package/dist/content/index.mjs.map +1 -1
  29. package/dist/index.js +20 -3
  30. package/dist/index.js.map +1 -1
  31. package/dist/index.mjs +20 -3
  32. package/dist/index.mjs.map +1 -1
  33. package/dist/seo/index.js +20 -3
  34. package/dist/seo/index.js.map +1 -1
  35. package/dist/seo/index.mjs +20 -3
  36. package/dist/seo/index.mjs.map +1 -1
  37. package/dist/store/index.js +20 -3
  38. package/dist/store/index.js.map +1 -1
  39. package/dist/store/index.mjs +20 -3
  40. package/dist/store/index.mjs.map +1 -1
  41. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -464,6 +464,22 @@ function useProductConfig() {
464
464
  logoUrl: product?.logoUrl ?? null
465
465
  };
466
466
  }
467
+ function canonicalFromLocation() {
468
+ if (typeof window === "undefined" || !window.location) return void 0;
469
+ const { origin, pathname } = window.location;
470
+ if (!origin || origin === "null") return void 0;
471
+ const path = pathname === "/" ? "/" : pathname.replace(/\/+$/, "");
472
+ return `${origin}${path}`;
473
+ }
474
+ function resolveImageUrl(image, base) {
475
+ if (!image || /^https?:\/\//i.test(image)) return image;
476
+ if (!base) return image;
477
+ try {
478
+ return new URL(image, base).toString();
479
+ } catch {
480
+ return image;
481
+ }
482
+ }
467
483
  function PageHead({
468
484
  title,
469
485
  description,
@@ -480,7 +496,8 @@ function PageHead({
480
496
  additionalMeta
481
497
  }) {
482
498
  const fullTitle = productName && !title.includes(productName) ? `${title} | ${productName}` : title;
483
- const fullImageUrl = image && !image.startsWith("http") && url ? `${url.replace(/\/$/, "")}${image}` : image;
499
+ const resolvedUrl = url ?? canonicalFromLocation();
500
+ const fullImageUrl = resolveImageUrl(image, resolvedUrl);
484
501
  const structuredDataItems = structuredData ? Array.isArray(structuredData) ? structuredData : [structuredData] : [];
485
502
  return /* @__PURE__ */ jsxRuntime.jsxs(reactHelmetAsync.Helmet, { children: [
486
503
  /* @__PURE__ */ jsxRuntime.jsx("title", { children: fullTitle }),
@@ -489,13 +506,13 @@ function PageHead({
489
506
  keywords && /* @__PURE__ */ jsxRuntime.jsx("meta", { name: "keywords", content: keywords }),
490
507
  /* @__PURE__ */ jsxRuntime.jsx("meta", { name: "author", content: "Burdenoff Consultancy Services Pvt Ltd" }),
491
508
  /* @__PURE__ */ jsxRuntime.jsx("meta", { name: "robots", content: robots }),
492
- url && /* @__PURE__ */ jsxRuntime.jsx("link", { rel: "canonical", href: url }),
509
+ resolvedUrl && /* @__PURE__ */ jsxRuntime.jsx("link", { rel: "canonical", href: resolvedUrl }),
493
510
  favicon && /* @__PURE__ */ jsxRuntime.jsx("link", { rel: "icon", href: favicon }),
494
511
  /* @__PURE__ */ jsxRuntime.jsx("meta", { property: "og:type", content: "website" }),
495
512
  /* @__PURE__ */ jsxRuntime.jsx("meta", { property: "og:title", content: fullTitle }),
496
513
  description && /* @__PURE__ */ jsxRuntime.jsx("meta", { property: "og:description", content: description }),
497
514
  fullImageUrl && /* @__PURE__ */ jsxRuntime.jsx("meta", { property: "og:image", content: fullImageUrl }),
498
- url && /* @__PURE__ */ jsxRuntime.jsx("meta", { property: "og:url", content: url }),
515
+ resolvedUrl && /* @__PURE__ */ jsxRuntime.jsx("meta", { property: "og:url", content: resolvedUrl }),
499
516
  /* @__PURE__ */ jsxRuntime.jsx("meta", { property: "og:locale", content: locale }),
500
517
  productName && /* @__PURE__ */ jsxRuntime.jsx("meta", { property: "og:site_name", content: productName }),
501
518
  /* @__PURE__ */ jsxRuntime.jsx("meta", { name: "twitter:card", content: "summary_large_image" }),