@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.
@@ -27,6 +27,7 @@ function LocaleSwitcher({
27
27
  labels
28
28
  }) {
29
29
  const locales = Object.keys(hreflangAlternates).filter((k) => k !== "x-default");
30
+ console.log("[WWW] render/components:LocaleSwitcher currentLocale=", currentLocale, "locales=", JSON.stringify(locales), "hasXDefault=", Boolean(hreflangAlternates["x-default"]));
30
31
  return /* @__PURE__ */ jsx("nav", {
31
32
  "aria-label": "Language",
32
33
  className: "locale-switcher",
@@ -73,11 +74,14 @@ function createPreviewHandler(options) {
73
74
  const url = new URL(req.url);
74
75
  const path = url.searchParams.get("path") ?? "/";
75
76
  const previewSecret = url.searchParams.get("previewSecret");
77
+ console.log("[WWW] render/preview:createPreviewHandler:GET path=", path, "hasSecret=", Boolean(previewSecret), "enableDraftMode=", enableDraftMode);
76
78
  if (!previewSecret || previewSecret !== secret) {
79
+ console.warn("[WWW] render/preview:createPreviewHandler:GET invalid preview secret (401)");
77
80
  return new Response("Invalid preview secret", { status: 401 });
78
81
  }
79
82
  if (enableDraftMode) {
80
83
  (await draftMode()).enable();
84
+ console.log("[WWW] render/preview:createPreviewHandler:GET draftMode enabled");
81
85
  }
82
86
  redirect(path);
83
87
  return new Response(null, { status: 204 });
@@ -86,30 +90,45 @@ function createPreviewHandler(options) {
86
90
 
87
91
  // src/render/_locale.ts
88
92
  function prefixFor(locale, defaultLocale, mode) {
93
+ let result;
89
94
  if (mode === "never")
90
- return "";
91
- if (mode === "as-needed" && locale === defaultLocale)
92
- return "";
93
- return `/${locale}`;
95
+ result = "";
96
+ else if (mode === "as-needed" && locale === defaultLocale)
97
+ result = "";
98
+ else
99
+ result = `/${locale}`;
100
+ console.log("[WWW] render/_locale:prefixFor locale=", locale, "default=", defaultLocale, "mode=", mode, "->", JSON.stringify(result));
101
+ return result;
94
102
  }
95
103
  function resolveLocale(req) {
96
- if (!req || typeof req !== "object")
104
+ if (!req || typeof req !== "object") {
105
+ console.log('[WWW] render/_locale:resolveLocale -> "" (no req)');
97
106
  return "";
107
+ }
98
108
  const r = req;
99
- if (typeof r.locale === "string" && r.locale.length > 0)
109
+ if (typeof r.locale === "string" && r.locale.length > 0) {
110
+ console.log("[WWW] render/_locale:resolveLocale ->", r.locale, "(from req.locale)");
100
111
  return r.locale;
112
+ }
101
113
  const fallback = r.payload?.config?.localization?.defaultLocale;
102
- if (typeof fallback === "string" && fallback.length > 0)
114
+ if (typeof fallback === "string" && fallback.length > 0) {
115
+ console.log("[WWW] render/_locale:resolveLocale ->", fallback, "(from config.localization.defaultLocale)");
103
116
  return fallback;
117
+ }
118
+ console.log('[WWW] render/_locale:resolveLocale -> "" (no locale anywhere)');
104
119
  return "";
105
120
  }
106
121
  function allLocales(req) {
107
- if (!req || typeof req !== "object")
122
+ if (!req || typeof req !== "object") {
123
+ console.log("[WWW] render/_locale:allLocales -> [] (no req)");
108
124
  return [];
125
+ }
109
126
  const r = req;
110
127
  const list = r.payload?.config?.localization?.locales;
111
- if (!Array.isArray(list) || list.length === 0)
128
+ if (!Array.isArray(list) || list.length === 0) {
129
+ console.log("[WWW] render/_locale:allLocales -> [] (no locales declared)");
112
130
  return [];
131
+ }
113
132
  const out = [];
114
133
  for (const entry of list) {
115
134
  if (typeof entry === "string" && entry.length > 0) {
@@ -120,6 +139,7 @@ function allLocales(req) {
120
139
  out.push(code);
121
140
  }
122
141
  }
142
+ console.log("[WWW] render/_locale:allLocales ->", JSON.stringify(out));
123
143
  return out;
124
144
  }
125
145
 
@@ -137,6 +157,7 @@ async function buildHreflangAlternates({
137
157
  localePrefix = "always"
138
158
  }) {
139
159
  const allLocaleSlugs = await queryAllLocaleSlugs(storedSlug, locale);
160
+ console.log("[WWW] render/metadata:buildHreflangAlternates storedSlug=", storedSlug, "locale=", locale, "allLocaleSlugs=", JSON.stringify(allLocaleSlugs));
140
161
  const languages = {};
141
162
  const urlFor = (l, slug) => {
142
163
  const trimmedPrefix = urlPrefix.replace(/^\/|\/$/g, "");
@@ -154,6 +175,7 @@ async function buildHreflangAlternates({
154
175
  if (allLocaleSlugs?.[defaultLocale]) {
155
176
  languages["x-default"] = urlFor(defaultLocale, allLocaleSlugs[defaultLocale]);
156
177
  }
178
+ console.log("[WWW] render/metadata:buildHreflangAlternates ->", JSON.stringify(languages));
157
179
  return languages;
158
180
  }
159
181
 
@@ -175,6 +197,7 @@ var queryDocBySlug = cache(async function queryDocBySlug2({
175
197
  draft = false,
176
198
  config
177
199
  }) {
200
+ console.log("[WWW] render/metadata:queryDocBySlug collection=", collectionSlug, "slug=", slug, "slugField=", slugField, "locale=", locale, "draft=", draft);
178
201
  const payload = await getPayload({ config });
179
202
  const result = await payload.find({
180
203
  collection: collectionSlug,
@@ -185,7 +208,9 @@ var queryDocBySlug = cache(async function queryDocBySlug2({
185
208
  where: { [slugField]: { equals: slug } },
186
209
  locale
187
210
  });
188
- return result.docs?.[0] ?? null;
211
+ const doc = result.docs?.[0] ?? null;
212
+ console.log("[WWW] render/metadata:queryDocBySlug ->", doc ? "hit" : "miss");
213
+ return doc;
189
214
  });
190
215
  var queryAllDocs = cache(async function queryAllDocs2({
191
216
  collectionSlug,
@@ -193,6 +218,7 @@ var queryAllDocs = cache(async function queryAllDocs2({
193
218
  locale,
194
219
  config
195
220
  }) {
221
+ console.log("[WWW] render/metadata:queryAllDocs collection=", collectionSlug, "locale=", locale);
196
222
  const payload = await getPayload({ config });
197
223
  const result = await payload.find({
198
224
  collection: collectionSlug,
@@ -203,7 +229,9 @@ var queryAllDocs = cache(async function queryAllDocs2({
203
229
  select: { [slugField]: true },
204
230
  locale
205
231
  });
206
- return result.docs ?? [];
232
+ const docs = result.docs ?? [];
233
+ console.log("[WWW] render/metadata:queryAllDocs -> count=", docs.length);
234
+ return docs;
207
235
  });
208
236
  var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
209
237
  collectionSlug,
@@ -212,6 +240,7 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
212
240
  locale,
213
241
  config
214
242
  }) {
243
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs collection=", collectionSlug, "slug=", slug, "locale=", locale);
215
244
  const payload = await getPayload({ config });
216
245
  const result = await payload.find({
217
246
  collection: collectionSlug,
@@ -224,8 +253,10 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
224
253
  select: { [slugField]: true }
225
254
  });
226
255
  const doc = result.docs?.[0];
227
- if (!doc)
256
+ if (!doc) {
257
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs -> undefined (no doc)");
228
258
  return;
259
+ }
229
260
  let fieldValue = doc[slugField];
230
261
  if (doc.id != null) {
231
262
  const allLocales2 = await payload.findByID({
@@ -240,6 +271,7 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
240
271
  fieldValue = allLocales2[slugField];
241
272
  }
242
273
  if (fieldValue && typeof fieldValue === "object") {
274
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs -> localized map=", JSON.stringify(fieldValue));
243
275
  return fieldValue;
244
276
  }
245
277
  const resolved = await config;
@@ -247,6 +279,7 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
247
279
  const out = {};
248
280
  for (const l of rawLocales)
249
281
  out[l] = String(fieldValue ?? slug);
282
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs -> flat-fanout locales=", rawLocales.length, "slug=", JSON.stringify(fieldValue ?? slug));
250
283
  return out;
251
284
  });
252
285
  var queryGlobal = cache(async function queryGlobal2({
@@ -256,6 +289,7 @@ var queryGlobal = cache(async function queryGlobal2({
256
289
  draft = false,
257
290
  config
258
291
  }) {
292
+ console.log("[WWW] render/metadata:queryGlobal global=", globalSlug, "locale=", locale, "depth=", depth, "draft=", draft);
259
293
  const payload = await getPayload({ config });
260
294
  try {
261
295
  const global = await payload.findGlobal({
@@ -264,27 +298,35 @@ var queryGlobal = cache(async function queryGlobal2({
264
298
  draft,
265
299
  locale
266
300
  });
301
+ console.log("[WWW] render/metadata:queryGlobal -> hit");
267
302
  return global;
268
- } catch {
303
+ } catch (error) {
304
+ console.warn("[WWW] render/metadata:queryGlobal failed for slug=", globalSlug, "err=", String(error));
269
305
  return null;
270
306
  }
271
307
  });
272
308
  function getRenderModuleExports(exportName, collection, importMap) {
273
309
  const path = collection?.custom?.path;
274
- if (!path)
310
+ if (!path) {
311
+ console.log("[WWW] render/metadata:getRenderModuleExports no custom.path exportName=", exportName);
275
312
  return;
313
+ }
276
314
  const mod = getFromImportMap(path, importMap);
277
- return mod?.[exportName];
315
+ const value = mod?.[exportName];
316
+ console.log("[WWW] render/metadata:getRenderModuleExports exportName=", exportName, "path=", path, "hit=", Boolean(value));
317
+ return value;
278
318
  }
279
319
 
280
320
  // src/render/sitemap/createSitemapFile.ts
281
321
  function createSitemapFile(options) {
282
322
  const { collections } = options;
283
323
  return async function sitemap() {
324
+ console.log("[WWW] render/sitemap:createSitemapFile:sitemap collections=", JSON.stringify(options.collections), "localePrefix=", options.localePrefix ?? "always");
284
325
  const cfg = await options.config;
285
326
  const allLocales2 = Array.isArray(cfg.localization?.locales) ? cfg.localization.locales.map((l) => typeof l === "string" ? l : l.code) : [cfg.localization?.defaultLocale ?? "en"];
286
327
  const defaultLocale = cfg.localization?.defaultLocale ?? allLocales2[0];
287
328
  const activeLocales = Array.isArray(options.locales) && options.locales.length > 0 ? options.locales.filter((l) => allLocales2.includes(l)) : allLocales2;
329
+ console.log("[WWW] render/sitemap:createSitemapFile:sitemap allLocales=", JSON.stringify(allLocales2), "default=", defaultLocale, "active=", JSON.stringify(activeLocales));
288
330
  const entries = [];
289
331
  const seen = new Set;
290
332
  for (const collectionSlug of collections) {
@@ -340,6 +382,7 @@ function createSitemapFile(options) {
340
382
  }
341
383
  }
342
384
  }
385
+ console.log("[WWW] render/sitemap:createSitemapFile:sitemap -> entries=", entries.length);
343
386
  return entries;
344
387
  };
345
388
  }