@burdenoff/website-sdk 2026.805.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.
- package/dist/components/contact.js +20 -3
- package/dist/components/contact.js.map +1 -1
- package/dist/components/contact.mjs +20 -3
- package/dist/components/contact.mjs.map +1 -1
- package/dist/components/newsletter.js +20 -3
- package/dist/components/newsletter.js.map +1 -1
- package/dist/components/newsletter.mjs +20 -3
- package/dist/components/newsletter.mjs.map +1 -1
- package/dist/components/partners.js +20 -3
- package/dist/components/partners.js.map +1 -1
- package/dist/components/partners.mjs +20 -3
- package/dist/components/partners.mjs.map +1 -1
- package/dist/components/pricing.js +20 -3
- package/dist/components/pricing.js.map +1 -1
- package/dist/components/pricing.mjs +20 -3
- package/dist/components/pricing.mjs.map +1 -1
- package/dist/components/unsubscribe.js +20 -3
- package/dist/components/unsubscribe.js.map +1 -1
- package/dist/components/unsubscribe.mjs +20 -3
- package/dist/components/unsubscribe.mjs.map +1 -1
- package/dist/components/waitlist.js +20 -3
- package/dist/components/waitlist.js.map +1 -1
- package/dist/components/waitlist.mjs +20 -3
- package/dist/components/waitlist.mjs.map +1 -1
- package/dist/content/index.js +20 -3
- package/dist/content/index.js.map +1 -1
- package/dist/content/index.mjs +20 -3
- package/dist/content/index.mjs.map +1 -1
- package/dist/index.js +27 -10
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +27 -10
- package/dist/index.mjs.map +1 -1
- package/dist/seo/index.js +20 -3
- package/dist/seo/index.js.map +1 -1
- package/dist/seo/index.mjs +20 -3
- package/dist/seo/index.mjs.map +1 -1
- package/dist/store/index.js +20 -3
- package/dist/store/index.js.map +1 -1
- package/dist/store/index.mjs +20 -3
- package/dist/store/index.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -226,6 +226,22 @@ var ProductContext = createContext({
|
|
|
226
226
|
function useProduct() {
|
|
227
227
|
return useContext(ProductContext);
|
|
228
228
|
}
|
|
229
|
+
function canonicalFromLocation() {
|
|
230
|
+
if (typeof window === "undefined" || !window.location) return void 0;
|
|
231
|
+
const { origin, pathname } = window.location;
|
|
232
|
+
if (!origin || origin === "null") return void 0;
|
|
233
|
+
const path = pathname === "/" ? "/" : pathname.replace(/\/+$/, "");
|
|
234
|
+
return `${origin}${path}`;
|
|
235
|
+
}
|
|
236
|
+
function resolveImageUrl(image, base) {
|
|
237
|
+
if (!image || /^https?:\/\//i.test(image)) return image;
|
|
238
|
+
if (!base) return image;
|
|
239
|
+
try {
|
|
240
|
+
return new URL(image, base).toString();
|
|
241
|
+
} catch {
|
|
242
|
+
return image;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
229
245
|
function PageHead({
|
|
230
246
|
title,
|
|
231
247
|
description,
|
|
@@ -242,7 +258,8 @@ function PageHead({
|
|
|
242
258
|
additionalMeta
|
|
243
259
|
}) {
|
|
244
260
|
const fullTitle = productName && !title.includes(productName) ? `${title} | ${productName}` : title;
|
|
245
|
-
const
|
|
261
|
+
const resolvedUrl = url ?? canonicalFromLocation();
|
|
262
|
+
const fullImageUrl = resolveImageUrl(image, resolvedUrl);
|
|
246
263
|
const structuredDataItems = structuredData ? Array.isArray(structuredData) ? structuredData : [structuredData] : [];
|
|
247
264
|
return /* @__PURE__ */ jsxs(Helmet, { children: [
|
|
248
265
|
/* @__PURE__ */ jsx("title", { children: fullTitle }),
|
|
@@ -251,13 +268,13 @@ function PageHead({
|
|
|
251
268
|
keywords && /* @__PURE__ */ jsx("meta", { name: "keywords", content: keywords }),
|
|
252
269
|
/* @__PURE__ */ jsx("meta", { name: "author", content: "Burdenoff Consultancy Services Pvt Ltd" }),
|
|
253
270
|
/* @__PURE__ */ jsx("meta", { name: "robots", content: robots }),
|
|
254
|
-
|
|
271
|
+
resolvedUrl && /* @__PURE__ */ jsx("link", { rel: "canonical", href: resolvedUrl }),
|
|
255
272
|
favicon && /* @__PURE__ */ jsx("link", { rel: "icon", href: favicon }),
|
|
256
273
|
/* @__PURE__ */ jsx("meta", { property: "og:type", content: "website" }),
|
|
257
274
|
/* @__PURE__ */ jsx("meta", { property: "og:title", content: fullTitle }),
|
|
258
275
|
description && /* @__PURE__ */ jsx("meta", { property: "og:description", content: description }),
|
|
259
276
|
fullImageUrl && /* @__PURE__ */ jsx("meta", { property: "og:image", content: fullImageUrl }),
|
|
260
|
-
|
|
277
|
+
resolvedUrl && /* @__PURE__ */ jsx("meta", { property: "og:url", content: resolvedUrl }),
|
|
261
278
|
/* @__PURE__ */ jsx("meta", { property: "og:locale", content: locale }),
|
|
262
279
|
productName && /* @__PURE__ */ jsx("meta", { property: "og:site_name", content: productName }),
|
|
263
280
|
/* @__PURE__ */ jsx("meta", { name: "twitter:card", content: "summary_large_image" }),
|