@justanarthur/payload-www 0.3.3 → 0.3.5

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/metadata.js CHANGED
@@ -26,6 +26,11 @@ function getImageUrl(doc, siteUrl) {
26
26
  return img.url.startsWith("http") ? img.url : `${siteUrl}${img.url}`;
27
27
  return null;
28
28
  }
29
+ function getImageUrlWithLog(doc, siteUrl) {
30
+ const result = getImageUrl(doc, siteUrl);
31
+ console.log("[WWW] render/metadata:jsonld:getImageUrl ->", result);
32
+ return result;
33
+ }
29
34
  function resolveLocalizedField(value, locale) {
30
35
  if (value == null)
31
36
  return "";
@@ -47,6 +52,13 @@ function resolveLocalizedField(value, locale) {
47
52
  }
48
53
  return Object.values(obj).filter((v) => typeof v === "string" && v.length > 0).join(" / ");
49
54
  }
55
+ function resolveLocalizedFieldWithLog(value, locale) {
56
+ const result = resolveLocalizedField(value, locale);
57
+ if (value && typeof value === "object") {
58
+ console.log("[WWW] render/metadata:jsonld:resolveLocalizedField locale=", locale, "->", JSON.stringify(result));
59
+ }
60
+ return result;
61
+ }
50
62
  function buildArticleLd({
51
63
  doc,
52
64
  url,
@@ -57,12 +69,13 @@ function buildArticleLd({
57
69
  publisherLogo
58
70
  }) {
59
71
  const name = publisherName ?? new URL(siteUrl).hostname;
72
+ console.log("[WWW] render/metadata:buildArticleLd url=", url, "locale=", locale, "type=", type, "publisherName=", name);
60
73
  const ld = {
61
74
  "@context": "https://schema.org",
62
75
  "@type": type,
63
76
  "@id": `${url}#article`,
64
- headline: resolveLocalizedField(doc.title, locale),
65
- description: resolveLocalizedField(doc.meta?.description ?? doc.description ?? doc.excerpt, locale),
77
+ headline: resolveLocalizedFieldWithLog(doc.title, locale),
78
+ description: resolveLocalizedFieldWithLog(doc.meta?.description ?? doc.description ?? doc.excerpt, locale),
66
79
  inLanguage: locale,
67
80
  url,
68
81
  dateModified: doc.updatedAt ? new Date(doc.updatedAt).toISOString() : undefined
@@ -70,7 +83,7 @@ function buildArticleLd({
70
83
  const datePublished = doc.publishedAt ?? doc.createdAt;
71
84
  if (datePublished)
72
85
  ld.datePublished = new Date(datePublished).toISOString();
73
- const imgUrl = getImageUrl(doc, siteUrl);
86
+ const imgUrl = getImageUrlWithLog(doc, siteUrl);
74
87
  if (imgUrl)
75
88
  ld.image = imgUrl;
76
89
  ld.author = { "@type": "Organization", name, url: siteUrl };
@@ -86,6 +99,7 @@ function buildBreadcrumbsLd({
86
99
  items,
87
100
  currentUrl
88
101
  }) {
102
+ console.log("[WWW] render/metadata:buildBreadcrumbsLd items=", items.length, "currentUrl=", currentUrl);
89
103
  return {
90
104
  "@context": "https://schema.org",
91
105
  "@type": "BreadcrumbList",
@@ -103,6 +117,7 @@ function buildOrganizationLd({
103
117
  logo,
104
118
  sameAs
105
119
  }) {
120
+ console.log("[WWW] render/metadata:buildOrganizationLd siteUrl=", siteUrl, "name=", name, "logo?", Boolean(logo), "sameAs?", Boolean(sameAs));
106
121
  const org = {
107
122
  "@context": "https://schema.org",
108
123
  "@type": "Organization",
@@ -129,6 +144,7 @@ async function buildHreflangAlternates({
129
144
  localePrefix = "always"
130
145
  }) {
131
146
  const allLocaleSlugs = await queryAllLocaleSlugs(storedSlug, locale);
147
+ console.log("[WWW] render/metadata:buildHreflangAlternates storedSlug=", storedSlug, "locale=", locale, "allLocaleSlugs=", JSON.stringify(allLocaleSlugs));
132
148
  const languages = {};
133
149
  const urlFor = (l, slug) => {
134
150
  const trimmedPrefix = urlPrefix.replace(/^\/|\/$/g, "");
@@ -146,29 +162,36 @@ async function buildHreflangAlternates({
146
162
  if (allLocaleSlugs?.[defaultLocale]) {
147
163
  languages["x-default"] = urlFor(defaultLocale, allLocaleSlugs[defaultLocale]);
148
164
  }
165
+ console.log("[WWW] render/metadata:buildHreflangAlternates ->", JSON.stringify(languages));
149
166
  return languages;
150
167
  }
151
168
 
152
169
  // src/render/metadata/slug.ts
153
170
  var SLUG_NESTED_DIVIDER = "_";
154
171
  function segmentsToStoredSlug(segments, nested) {
155
- if (!Array.isArray(segments))
172
+ if (!Array.isArray(segments)) {
173
+ console.log("[WWW] render/metadata:segmentsToStoredSlug string passthrough:", JSON.stringify(segments));
156
174
  return segments;
157
- if (nested)
158
- return segments.join(SLUG_NESTED_DIVIDER);
159
- return segments[0] ?? "";
175
+ }
176
+ const result = nested ? segments.join(SLUG_NESTED_DIVIDER) : segments[0] ?? "";
177
+ console.log("[WWW] render/metadata:segmentsToStoredSlug nested=", nested, "segments=", JSON.stringify(segments), "->", result);
178
+ return result;
160
179
  }
161
180
  function segmentsToUrlPath(segments, nested) {
181
+ let result;
162
182
  if (!Array.isArray(segments))
163
- return "/" + segments;
164
- if (nested)
165
- return "/" + segments.join("/");
166
- return "/" + (segments[0] ?? "");
183
+ result = "/" + segments;
184
+ else if (nested)
185
+ result = "/" + segments.join("/");
186
+ else
187
+ result = "/" + (segments[0] ?? "");
188
+ console.log("[WWW] render/metadata:segmentsToUrlPath nested=", nested, "segments=", JSON.stringify(segments), "->", result);
189
+ return result;
167
190
  }
168
191
  function storedSlugToSegments(storedSlug, nested) {
169
- if (nested)
170
- return storedSlug.split(SLUG_NESTED_DIVIDER);
171
- return storedSlug;
192
+ const result = nested ? storedSlug.split(SLUG_NESTED_DIVIDER) : storedSlug;
193
+ console.log("[WWW] render/metadata:storedSlugToSegments nested=", nested, "storedSlug=", storedSlug, "->", JSON.stringify(result));
194
+ return result;
172
195
  }
173
196
  function buildCanonicalUrl({
174
197
  siteUrl,
@@ -178,7 +201,9 @@ function buildCanonicalUrl({
178
201
  }) {
179
202
  const trimmedPrefix = urlPrefix.replace(/^\/|\/$/g, "");
180
203
  const prefixSegment = trimmedPrefix ? `/${trimmedPrefix}` : "";
181
- return `${siteUrl}/${locale}${prefixSegment}${urlPath}`;
204
+ const result = `${siteUrl}/${locale}${prefixSegment}${urlPath}`;
205
+ console.log("[WWW] render/metadata:buildCanonicalUrl siteUrl=", siteUrl, "locale=", locale, "urlPrefix=", urlPrefix, "urlPath=", urlPath, "->", result);
206
+ return result;
182
207
  }
183
208
  function getUrlPath(segments, nested, homeSlug) {
184
209
  const urlPath = segmentsToUrlPath(segments, nested);
@@ -211,6 +236,7 @@ var queryDocBySlug = cache(async function queryDocBySlug2({
211
236
  draft = false,
212
237
  config
213
238
  }) {
239
+ console.log("[WWW] render/metadata:queryDocBySlug collection=", collectionSlug, "slug=", slug, "slugField=", slugField, "locale=", locale, "draft=", draft);
214
240
  const payload = await getPayload({ config });
215
241
  const result = await payload.find({
216
242
  collection: collectionSlug,
@@ -221,7 +247,9 @@ var queryDocBySlug = cache(async function queryDocBySlug2({
221
247
  where: { [slugField]: { equals: slug } },
222
248
  locale
223
249
  });
224
- return result.docs?.[0] ?? null;
250
+ const doc = result.docs?.[0] ?? null;
251
+ console.log("[WWW] render/metadata:queryDocBySlug ->", doc ? "hit" : "miss");
252
+ return doc;
225
253
  });
226
254
  var queryAllDocs = cache(async function queryAllDocs2({
227
255
  collectionSlug,
@@ -229,6 +257,7 @@ var queryAllDocs = cache(async function queryAllDocs2({
229
257
  locale,
230
258
  config
231
259
  }) {
260
+ console.log("[WWW] render/metadata:queryAllDocs collection=", collectionSlug, "locale=", locale);
232
261
  const payload = await getPayload({ config });
233
262
  const result = await payload.find({
234
263
  collection: collectionSlug,
@@ -239,7 +268,9 @@ var queryAllDocs = cache(async function queryAllDocs2({
239
268
  select: { [slugField]: true },
240
269
  locale
241
270
  });
242
- return result.docs ?? [];
271
+ const docs = result.docs ?? [];
272
+ console.log("[WWW] render/metadata:queryAllDocs -> count=", docs.length);
273
+ return docs;
243
274
  });
244
275
  var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
245
276
  collectionSlug,
@@ -248,6 +279,7 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
248
279
  locale,
249
280
  config
250
281
  }) {
282
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs collection=", collectionSlug, "slug=", slug, "locale=", locale);
251
283
  const payload = await getPayload({ config });
252
284
  const result = await payload.find({
253
285
  collection: collectionSlug,
@@ -260,8 +292,10 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
260
292
  select: { [slugField]: true }
261
293
  });
262
294
  const doc = result.docs?.[0];
263
- if (!doc)
295
+ if (!doc) {
296
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs -> undefined (no doc)");
264
297
  return;
298
+ }
265
299
  let fieldValue = doc[slugField];
266
300
  if (doc.id != null) {
267
301
  const allLocales = await payload.findByID({
@@ -276,6 +310,7 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
276
310
  fieldValue = allLocales[slugField];
277
311
  }
278
312
  if (fieldValue && typeof fieldValue === "object") {
313
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs -> localized map=", JSON.stringify(fieldValue));
279
314
  return fieldValue;
280
315
  }
281
316
  const resolved = await config;
@@ -283,6 +318,7 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
283
318
  const out = {};
284
319
  for (const l of rawLocales)
285
320
  out[l] = String(fieldValue ?? slug);
321
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs -> flat-fanout locales=", rawLocales.length, "slug=", JSON.stringify(fieldValue ?? slug));
286
322
  return out;
287
323
  });
288
324
  var queryGlobal = cache(async function queryGlobal2({
@@ -292,6 +328,7 @@ var queryGlobal = cache(async function queryGlobal2({
292
328
  draft = false,
293
329
  config
294
330
  }) {
331
+ console.log("[WWW] render/metadata:queryGlobal global=", globalSlug, "locale=", locale, "depth=", depth, "draft=", draft);
295
332
  const payload = await getPayload({ config });
296
333
  try {
297
334
  const global = await payload.findGlobal({
@@ -300,17 +337,23 @@ var queryGlobal = cache(async function queryGlobal2({
300
337
  draft,
301
338
  locale
302
339
  });
340
+ console.log("[WWW] render/metadata:queryGlobal -> hit");
303
341
  return global;
304
- } catch {
342
+ } catch (error) {
343
+ console.warn("[WWW] render/metadata:queryGlobal failed for slug=", globalSlug, "err=", String(error));
305
344
  return null;
306
345
  }
307
346
  });
308
347
  function getRenderModuleExports(exportName, collection, importMap) {
309
348
  const path = collection?.custom?.path;
310
- if (!path)
349
+ if (!path) {
350
+ console.log("[WWW] render/metadata:getRenderModuleExports no custom.path exportName=", exportName);
311
351
  return;
352
+ }
312
353
  const mod = getFromImportMap(path, importMap);
313
- return mod?.[exportName];
354
+ const value = mod?.[exportName];
355
+ console.log("[WWW] render/metadata:getRenderModuleExports exportName=", exportName, "path=", path, "hit=", Boolean(value));
356
+ return value;
314
357
  }
315
358
 
316
359
  // src/exports/metadata.ts