@justanarthur/payload-www 0.3.2 → 0.3.4

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/pages.js CHANGED
@@ -30,6 +30,7 @@ function PageShowcase({
30
30
  metadataHeading = "Page metadata",
31
31
  jsonLdHeading = "JSON-LD"
32
32
  }) {
33
+ console.log("[WWW] render/components:PageShowcase jsonLdEntries=", jsonLd.length, "hasOg=", Boolean(metadata.openGraph), "hasTwitter=", Boolean(metadata.twitter), "canonical=", metadata.alternates?.canonical);
33
34
  const og = metadata.openGraph;
34
35
  const twitter = metadata.twitter;
35
36
  const rows = [
@@ -147,6 +148,7 @@ function LocaleSwitcher({
147
148
  labels
148
149
  }) {
149
150
  const locales = Object.keys(hreflangAlternates).filter((k) => k !== "x-default");
151
+ console.log("[WWW] render/components:LocaleSwitcher currentLocale=", currentLocale, "locales=", JSON.stringify(locales), "hasXDefault=", Boolean(hreflangAlternates["x-default"]));
150
152
  return /* @__PURE__ */ jsx7("nav", {
151
153
  "aria-label": "Language",
152
154
  className: "locale-switcher",
@@ -186,17 +188,27 @@ var init_LocaleSwitcher = () => {};
186
188
 
187
189
  // src/core/utils/getFromImportMap.ts
188
190
  function getFromImportMap(key, importMap) {
189
- return importMap[key.includes("#") ? key : key + "#default"];
191
+ const resolvedKey = key.includes("#") ? key : key + "#default";
192
+ const value = importMap[resolvedKey];
193
+ console.log("[WWW] core/utils:getFromImportMap key=", key, "resolved=", resolvedKey, "hit=", Boolean(value));
194
+ return value;
190
195
  }
191
196
 
192
197
  // src/core/utils/generateImportName.ts
193
198
  function generateImportName(type, slug) {
194
199
  switch (type) {
195
- case "block":
196
- return `Block${slug.replace(/(^\w|-\w)/g, (m) => m.replace("-", "").toUpperCase())}#default`;
197
- case "page":
198
- return `Page${slug.replace(/(^\w|-\w)/g, (m) => m.replace("-", "").toUpperCase())}#default`;
200
+ case "block": {
201
+ const name = `Block${slug.replace(/(^\w|-\w)/g, (m) => m.replace("-", "").toUpperCase())}#default`;
202
+ console.log("[WWW] core/utils:generateImportName type=block slug=", slug, "->", name);
203
+ return name;
204
+ }
205
+ case "page": {
206
+ const name = `Page${slug.replace(/(^\w|-\w)/g, (m) => m.replace("-", "").toUpperCase())}#default`;
207
+ console.log("[WWW] core/utils:generateImportName type=page slug=", slug, "->", name);
208
+ return name;
209
+ }
199
210
  default:
211
+ console.error("[WWW] core/utils:generateImportName unknown type:", type);
200
212
  throw new Error(`Unknown type: ${type}`);
201
213
  }
202
214
  }
@@ -211,8 +223,11 @@ var RenderBlocks = ({
211
223
  locale,
212
224
  searchParams
213
225
  }) => {
214
- if (!blocks || !Array.isArray(blocks) || blocks.length === 0)
226
+ if (!blocks || !Array.isArray(blocks) || blocks.length === 0) {
227
+ console.log("[WWW] render/blocks:RenderBlocks no blocks (locale=", locale, ")");
215
228
  return null;
229
+ }
230
+ console.log("[WWW] render/blocks:RenderBlocks rendering count=", blocks.length, "locale=", locale);
216
231
  const rendered = [];
217
232
  for (let i = 0;i < blocks.length; i++) {
218
233
  const block = blocks[i];
@@ -220,9 +235,10 @@ var RenderBlocks = ({
220
235
  const importMapPath = config.admin?.dependencies?.[blockType]?.path ?? generateImportName("block", blockType);
221
236
  const Block = getFromImportMap(importMapPath, importMap);
222
237
  if (!Block) {
223
- console.warn(`No block found for type: ${blockType}, config.admin?.dependencies?.[blockType]: ${config.admin?.dependencies?.[blockType]}`);
238
+ console.warn(`[WWW] render/blocks:RenderBlocks no block for type=${blockType} importMapPath=${importMapPath} (locale=${locale})`);
224
239
  continue;
225
240
  }
241
+ console.log("[WWW] render/blocks:RenderBlocks [", i, "] blockType=", blockType, "importMapPath=", importMapPath);
226
242
  rendered.push(/* @__PURE__ */ jsx(Block, {
227
243
  index: i,
228
244
  ...blockProps,
@@ -239,9 +255,12 @@ var RenderBlocks = ({
239
255
  // src/render/pages/PagesPage.tsx
240
256
  import { jsx as jsx2, Fragment as Fragment2 } from "react/jsx-runtime";
241
257
  async function PagesPage({ doc, ...props }) {
242
- if (!doc)
258
+ if (!doc) {
259
+ console.log("[WWW] render/pages:PagesPage no doc");
243
260
  return /* @__PURE__ */ jsx2(Fragment2, {});
261
+ }
244
262
  const blocks = doc.blocks ?? [];
263
+ console.log("[WWW] render/pages:PagesPage blocks=", blocks.length, "locale=", props.locale);
245
264
  return /* @__PURE__ */ jsx2(Fragment2, {
246
265
  children: /* @__PURE__ */ jsx2(RenderBlocks, {
247
266
  blocks,
@@ -254,11 +273,14 @@ async function PagesPage({ doc, ...props }) {
254
273
  import"server-only";
255
274
  import { jsx as jsx3, jsxs, Fragment as Fragment3 } from "react/jsx-runtime";
256
275
  function HeaderPage({ data, locale: _locale }) {
257
- if (!data)
276
+ if (!data) {
277
+ console.log("[WWW] render/pages:HeaderPage no data");
258
278
  return /* @__PURE__ */ jsx3(Fragment3, {});
279
+ }
259
280
  const nav = data.nav ?? [];
260
281
  const items = nav.filter((b) => b.blockType === "navItem");
261
282
  const columns = nav.filter((b) => b.blockType === "navColumn");
283
+ console.log("[WWW] render/pages:HeaderPage items=", items.length, "columns=", columns.length, "locale=", _locale);
262
284
  const renderLink = (link, fallbackHref = "#") => {
263
285
  if (!link)
264
286
  return /* @__PURE__ */ jsx3("a", {
@@ -312,11 +334,14 @@ function HeaderPage({ data, locale: _locale }) {
312
334
  import"server-only";
313
335
  import { jsx as jsx4, jsxs as jsxs2, Fragment as Fragment4 } from "react/jsx-runtime";
314
336
  function FooterPage({ data, locale: _locale }) {
315
- if (!data)
337
+ if (!data) {
338
+ console.log("[WWW] render/pages:FooterPage no data");
316
339
  return /* @__PURE__ */ jsx4(Fragment4, {});
340
+ }
317
341
  const nav = data.nav ?? [];
318
342
  const items = nav.filter((b) => b.blockType === "navItem");
319
343
  const columns = nav.filter((b) => b.blockType === "navColumn");
344
+ console.log("[WWW] render/pages:FooterPage items=", items.length, "columns=", columns.length, "locale=", _locale);
320
345
  const renderLink = (link, fallbackHref = "#") => {
321
346
  if (!link)
322
347
  return /* @__PURE__ */ jsx4("a", {
@@ -386,13 +411,17 @@ var STATIC_PAGES_SLUG = "staticPages";
386
411
  import { jsx as jsx5 } from "react/jsx-runtime";
387
412
  function renderCollectionModule(collection = [], slug, importMap, props) {
388
413
  const renderPath = collection?.find((c) => c.slug === slug)?.custom?.path;
389
- if (!renderPath)
414
+ if (!renderPath) {
415
+ console.log("[WWW] render/utils:renderCollectionModule no custom.path slug=", slug);
390
416
  return null;
417
+ }
391
418
  const CollectionRenderModule = getFromImportMap(renderPath, importMap);
392
419
  if (!CollectionRenderModule) {
420
+ console.error("[WWW] render/utils:renderCollectionModule not found slug=", slug, "path=", renderPath);
393
421
  if (false) {}
394
422
  return null;
395
423
  }
424
+ console.log("[WWW] render/utils:renderCollectionModule rendering slug=", slug, "path=", renderPath);
396
425
  return /* @__PURE__ */ jsx5(CollectionRenderModule, {
397
426
  importMap,
398
427
  ...props
@@ -413,6 +442,7 @@ async function buildHreflangAlternates({
413
442
  localePrefix = "always"
414
443
  }) {
415
444
  const allLocaleSlugs = await queryAllLocaleSlugs(storedSlug, locale);
445
+ console.log("[WWW] render/metadata:buildHreflangAlternates storedSlug=", storedSlug, "locale=", locale, "allLocaleSlugs=", JSON.stringify(allLocaleSlugs));
416
446
  const languages = {};
417
447
  const urlFor = (l, slug) => {
418
448
  const trimmedPrefix = urlPrefix.replace(/^\/|\/$/g, "");
@@ -430,6 +460,7 @@ async function buildHreflangAlternates({
430
460
  if (allLocaleSlugs?.[defaultLocale]) {
431
461
  languages["x-default"] = urlFor(defaultLocale, allLocaleSlugs[defaultLocale]);
432
462
  }
463
+ console.log("[WWW] render/metadata:buildHreflangAlternates ->", JSON.stringify(languages));
433
464
  return languages;
434
465
  }
435
466
 
@@ -444,6 +475,11 @@ function getImageUrl(doc, siteUrl) {
444
475
  return img.url.startsWith("http") ? img.url : `${siteUrl}${img.url}`;
445
476
  return null;
446
477
  }
478
+ function getImageUrlWithLog(doc, siteUrl) {
479
+ const result = getImageUrl(doc, siteUrl);
480
+ console.log("[WWW] render/metadata:jsonld:getImageUrl ->", result);
481
+ return result;
482
+ }
447
483
  function resolveLocalizedField(value, locale) {
448
484
  if (value == null)
449
485
  return "";
@@ -465,6 +501,13 @@ function resolveLocalizedField(value, locale) {
465
501
  }
466
502
  return Object.values(obj).filter((v) => typeof v === "string" && v.length > 0).join(" / ");
467
503
  }
504
+ function resolveLocalizedFieldWithLog(value, locale) {
505
+ const result = resolveLocalizedField(value, locale);
506
+ if (value && typeof value === "object") {
507
+ console.log("[WWW] render/metadata:jsonld:resolveLocalizedField locale=", locale, "->", JSON.stringify(result));
508
+ }
509
+ return result;
510
+ }
468
511
  function buildArticleLd({
469
512
  doc,
470
513
  url,
@@ -475,12 +518,13 @@ function buildArticleLd({
475
518
  publisherLogo
476
519
  }) {
477
520
  const name = publisherName ?? new URL(siteUrl).hostname;
521
+ console.log("[WWW] render/metadata:buildArticleLd url=", url, "locale=", locale, "type=", type, "publisherName=", name);
478
522
  const ld = {
479
523
  "@context": "https://schema.org",
480
524
  "@type": type,
481
525
  "@id": `${url}#article`,
482
- headline: resolveLocalizedField(doc.title, locale),
483
- description: resolveLocalizedField(doc.meta?.description ?? doc.description ?? doc.excerpt, locale),
526
+ headline: resolveLocalizedFieldWithLog(doc.title, locale),
527
+ description: resolveLocalizedFieldWithLog(doc.meta?.description ?? doc.description ?? doc.excerpt, locale),
484
528
  inLanguage: locale,
485
529
  url,
486
530
  dateModified: doc.updatedAt ? new Date(doc.updatedAt).toISOString() : undefined
@@ -488,7 +532,7 @@ function buildArticleLd({
488
532
  const datePublished = doc.publishedAt ?? doc.createdAt;
489
533
  if (datePublished)
490
534
  ld.datePublished = new Date(datePublished).toISOString();
491
- const imgUrl = getImageUrl(doc, siteUrl);
535
+ const imgUrl = getImageUrlWithLog(doc, siteUrl);
492
536
  if (imgUrl)
493
537
  ld.image = imgUrl;
494
538
  ld.author = { "@type": "Organization", name, url: siteUrl };
@@ -504,6 +548,7 @@ function buildBreadcrumbsLd({
504
548
  items,
505
549
  currentUrl
506
550
  }) {
551
+ console.log("[WWW] render/metadata:buildBreadcrumbsLd items=", items.length, "currentUrl=", currentUrl);
507
552
  return {
508
553
  "@context": "https://schema.org",
509
554
  "@type": "BreadcrumbList",
@@ -521,6 +566,7 @@ function buildOrganizationLd({
521
566
  logo,
522
567
  sameAs
523
568
  }) {
569
+ console.log("[WWW] render/metadata:buildOrganizationLd siteUrl=", siteUrl, "name=", name, "logo?", Boolean(logo), "sameAs?", Boolean(sameAs));
524
570
  const org = {
525
571
  "@context": "https://schema.org",
526
572
  "@type": "Organization",
@@ -536,23 +582,29 @@ function buildOrganizationLd({
536
582
  // src/render/metadata/slug.ts
537
583
  var SLUG_NESTED_DIVIDER = "_";
538
584
  function segmentsToStoredSlug(segments, nested) {
539
- if (!Array.isArray(segments))
585
+ if (!Array.isArray(segments)) {
586
+ console.log("[WWW] render/metadata:segmentsToStoredSlug string passthrough:", JSON.stringify(segments));
540
587
  return segments;
541
- if (nested)
542
- return segments.join(SLUG_NESTED_DIVIDER);
543
- return segments[0] ?? "";
588
+ }
589
+ const result = nested ? segments.join(SLUG_NESTED_DIVIDER) : segments[0] ?? "";
590
+ console.log("[WWW] render/metadata:segmentsToStoredSlug nested=", nested, "segments=", JSON.stringify(segments), "->", result);
591
+ return result;
544
592
  }
545
593
  function segmentsToUrlPath(segments, nested) {
594
+ let result;
546
595
  if (!Array.isArray(segments))
547
- return "/" + segments;
548
- if (nested)
549
- return "/" + segments.join("/");
550
- return "/" + (segments[0] ?? "");
596
+ result = "/" + segments;
597
+ else if (nested)
598
+ result = "/" + segments.join("/");
599
+ else
600
+ result = "/" + (segments[0] ?? "");
601
+ console.log("[WWW] render/metadata:segmentsToUrlPath nested=", nested, "segments=", JSON.stringify(segments), "->", result);
602
+ return result;
551
603
  }
552
604
  function storedSlugToSegments(storedSlug, nested) {
553
- if (nested)
554
- return storedSlug.split(SLUG_NESTED_DIVIDER);
555
- return storedSlug;
605
+ const result = nested ? storedSlug.split(SLUG_NESTED_DIVIDER) : storedSlug;
606
+ console.log("[WWW] render/metadata:storedSlugToSegments nested=", nested, "storedSlug=", storedSlug, "->", JSON.stringify(result));
607
+ return result;
556
608
  }
557
609
  function buildCanonicalUrl({
558
610
  siteUrl,
@@ -562,7 +614,9 @@ function buildCanonicalUrl({
562
614
  }) {
563
615
  const trimmedPrefix = urlPrefix.replace(/^\/|\/$/g, "");
564
616
  const prefixSegment = trimmedPrefix ? `/${trimmedPrefix}` : "";
565
- return `${siteUrl}/${locale}${prefixSegment}${urlPath}`;
617
+ const result = `${siteUrl}/${locale}${prefixSegment}${urlPath}`;
618
+ console.log("[WWW] render/metadata:buildCanonicalUrl siteUrl=", siteUrl, "locale=", locale, "urlPrefix=", urlPrefix, "urlPath=", urlPath, "->", result);
619
+ return result;
566
620
  }
567
621
  function getUrlPath(segments, nested, homeSlug) {
568
622
  const urlPath = segmentsToUrlPath(segments, nested);
@@ -588,6 +642,7 @@ var queryDocBySlug = cache(async function queryDocBySlug2({
588
642
  draft = false,
589
643
  config
590
644
  }) {
645
+ console.log("[WWW] render/metadata:queryDocBySlug collection=", collectionSlug, "slug=", slug, "slugField=", slugField, "locale=", locale, "draft=", draft);
591
646
  const payload = await getPayload({ config });
592
647
  const result = await payload.find({
593
648
  collection: collectionSlug,
@@ -598,7 +653,9 @@ var queryDocBySlug = cache(async function queryDocBySlug2({
598
653
  where: { [slugField]: { equals: slug } },
599
654
  locale
600
655
  });
601
- return result.docs?.[0] ?? null;
656
+ const doc = result.docs?.[0] ?? null;
657
+ console.log("[WWW] render/metadata:queryDocBySlug ->", doc ? "hit" : "miss");
658
+ return doc;
602
659
  });
603
660
  var queryAllDocs = cache(async function queryAllDocs2({
604
661
  collectionSlug,
@@ -606,6 +663,7 @@ var queryAllDocs = cache(async function queryAllDocs2({
606
663
  locale,
607
664
  config
608
665
  }) {
666
+ console.log("[WWW] render/metadata:queryAllDocs collection=", collectionSlug, "locale=", locale);
609
667
  const payload = await getPayload({ config });
610
668
  const result = await payload.find({
611
669
  collection: collectionSlug,
@@ -616,7 +674,9 @@ var queryAllDocs = cache(async function queryAllDocs2({
616
674
  select: { [slugField]: true },
617
675
  locale
618
676
  });
619
- return result.docs ?? [];
677
+ const docs = result.docs ?? [];
678
+ console.log("[WWW] render/metadata:queryAllDocs -> count=", docs.length);
679
+ return docs;
620
680
  });
621
681
  var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
622
682
  collectionSlug,
@@ -625,6 +685,7 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
625
685
  locale,
626
686
  config
627
687
  }) {
688
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs collection=", collectionSlug, "slug=", slug, "locale=", locale);
628
689
  const payload = await getPayload({ config });
629
690
  const result = await payload.find({
630
691
  collection: collectionSlug,
@@ -637,8 +698,10 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
637
698
  select: { [slugField]: true }
638
699
  });
639
700
  const doc = result.docs?.[0];
640
- if (!doc)
701
+ if (!doc) {
702
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs -> undefined (no doc)");
641
703
  return;
704
+ }
642
705
  let fieldValue = doc[slugField];
643
706
  if (doc.id != null) {
644
707
  const allLocales = await payload.findByID({
@@ -653,6 +716,7 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
653
716
  fieldValue = allLocales[slugField];
654
717
  }
655
718
  if (fieldValue && typeof fieldValue === "object") {
719
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs -> localized map=", JSON.stringify(fieldValue));
656
720
  return fieldValue;
657
721
  }
658
722
  const resolved = await config;
@@ -660,6 +724,7 @@ var queryAllLocaleSlugs = cache(async function queryAllLocaleSlugs2({
660
724
  const out = {};
661
725
  for (const l of rawLocales)
662
726
  out[l] = String(fieldValue ?? slug);
727
+ console.log("[WWW] render/metadata:queryAllLocaleSlugs -> flat-fanout locales=", rawLocales.length, "slug=", JSON.stringify(fieldValue ?? slug));
663
728
  return out;
664
729
  });
665
730
  var queryGlobal = cache(async function queryGlobal2({
@@ -669,6 +734,7 @@ var queryGlobal = cache(async function queryGlobal2({
669
734
  draft = false,
670
735
  config
671
736
  }) {
737
+ console.log("[WWW] render/metadata:queryGlobal global=", globalSlug, "locale=", locale, "depth=", depth, "draft=", draft);
672
738
  const payload = await getPayload({ config });
673
739
  try {
674
740
  const global = await payload.findGlobal({
@@ -677,17 +743,23 @@ var queryGlobal = cache(async function queryGlobal2({
677
743
  draft,
678
744
  locale
679
745
  });
746
+ console.log("[WWW] render/metadata:queryGlobal -> hit");
680
747
  return global;
681
- } catch {
748
+ } catch (error) {
749
+ console.warn("[WWW] render/metadata:queryGlobal failed for slug=", globalSlug, "err=", String(error));
682
750
  return null;
683
751
  }
684
752
  });
685
753
  function getRenderModuleExports(exportName, collection, importMap) {
686
754
  const path = collection?.custom?.path;
687
- if (!path)
755
+ if (!path) {
756
+ console.log("[WWW] render/metadata:getRenderModuleExports no custom.path exportName=", exportName);
688
757
  return;
758
+ }
689
759
  const mod = getFromImportMap(path, importMap);
690
- return mod?.[exportName];
760
+ const value = mod?.[exportName];
761
+ console.log("[WWW] render/metadata:getRenderModuleExports exportName=", exportName, "path=", path, "hit=", Boolean(value));
762
+ return value;
691
763
  }
692
764
 
693
765
  // src/render/pages/createCollectionPageExports.tsx
@@ -720,11 +792,15 @@ function createCollectionPageExports({
720
792
  const localePrefixMode = typeof routing.localePrefix === "string" ? routing.localePrefix : routing.localePrefix?.mode ?? "always";
721
793
  const buildLocalePath = (locale, storedSlug) => {
722
794
  const urlPath = getUrlPath(storedSlugToSegments(storedSlug, nested), nested, HOME_SLUG);
795
+ let result;
723
796
  if (localePrefixMode === "never")
724
- return urlPath;
725
- if (localePrefixMode === "as-needed" && locale === defaultLocale)
726
- return urlPath;
727
- return `/${locale}${urlPath}`;
797
+ result = urlPath;
798
+ else if (localePrefixMode === "as-needed" && locale === defaultLocale)
799
+ result = urlPath;
800
+ else
801
+ result = `/${locale}${urlPath}`;
802
+ console.log("[WWW] render/pages:createCollectionPageExports:buildLocalePath locale=", locale, "storedSlug=", storedSlug, "->", result);
803
+ return result;
728
804
  };
729
805
  async function fetchDoc(locale, storedSlug, draft = false) {
730
806
  return queryDocBySlug({
@@ -755,13 +831,16 @@ function createCollectionPageExports({
755
831
  for (const [key, url] of Object.entries(languages)) {
756
832
  alternates[key] = url;
757
833
  }
834
+ console.log("[WWW] render/pages:createCollectionPageExports:resolveHreflangAlternates canonical=", canonical, "alts=", JSON.stringify(alternates));
758
835
  return { alternates, canonical };
759
836
  }
760
837
  const default_ = async (props) => {
761
838
  const { slug: rawSlugSegments, locale: incomingLocale } = await props.params ?? {};
762
839
  const slugSegments = Array.isArray(rawSlugSegments) ? rawSlugSegments : [];
763
840
  const locale = typeof incomingLocale === "string" ? incomingLocale : defaultLocale;
841
+ console.log("[WWW] render/pages:createCollectionPageExports:default_ collectionSlug=", slug, "locale=", locale, "segments=", JSON.stringify(slugSegments), "showcase=", showcaseEnabled);
764
842
  if (!locales.includes(locale)) {
843
+ console.error(`[WWW] render/pages:createCollectionPageExports:default_ notFound invalid-locale collection=${slug} locale=${locale} segments=${JSON.stringify(slugSegments)}`);
765
844
  const { notFound } = await import("next/navigation");
766
845
  notFound();
767
846
  }
@@ -769,15 +848,18 @@ function createCollectionPageExports({
769
848
  setRequestLocale(locale);
770
849
  const { draftMode } = await import("next/headers");
771
850
  const { isEnabled: draft } = await draftMode();
851
+ console.log("[WWW] render/pages:createCollectionPageExports:default_ draftMode=", draft);
772
852
  const storedSlug = segmentsToStoredSlug(slugSegments, nested);
773
853
  const doc = await fetchDoc(locale, storedSlug, draft);
774
854
  if (!doc) {
855
+ console.error(`[WWW] render/pages:createCollectionPageExports:default_ notFound no-doc collection=${slug} locale=${locale} storedSlug="${storedSlug}" segments=${JSON.stringify(slugSegments)} draft=${draft}`);
775
856
  const { notFound } = await import("next/navigation");
776
857
  notFound();
777
858
  }
778
859
  const cfg = await configPromise;
779
860
  const collectionCustomPath = cfg.collections.find((c) => c.slug === slug)?.custom?.path;
780
861
  const effectivePath = renderPath ?? collectionCustomPath ?? defaultRenderPath;
862
+ console.log("[WWW] render/pages:createCollectionPageExports:default_ effectivePath=", effectivePath);
781
863
  const render = effectivePath === PAGES_RENDER_PATH ? /* @__PURE__ */ jsx8(PagesPage, {
782
864
  doc,
783
865
  importMap,
@@ -839,15 +921,22 @@ function createCollectionPageExports({
839
921
  const { slug: rawSlugSegments, locale: incomingLocale } = await props.params ?? {};
840
922
  const slugSegments = Array.isArray(rawSlugSegments) ? rawSlugSegments : [];
841
923
  const locale = typeof incomingLocale === "string" ? incomingLocale : defaultLocale;
842
- if (!locales.includes(locale))
924
+ console.log("[WWW] render/pages:createCollectionPageExports:generateMetadata collectionSlug=", slug, "locale=", locale, "segments=", JSON.stringify(slugSegments));
925
+ if (!locales.includes(locale)) {
926
+ console.log("[WWW] render/pages:createCollectionPageExports:generateMetadata invalid locale -> not found meta");
843
927
  return { title: "Not found", robots: { index: false, follow: false } };
928
+ }
844
929
  const storedSlug = segmentsToStoredSlug(slugSegments, nested);
845
930
  const doc = await fetchDoc(locale, storedSlug);
846
- if (!doc)
931
+ if (!doc) {
932
+ console.log("[WWW] render/pages:createCollectionPageExports:generateMetadata no doc -> not found meta");
847
933
  return { title: "Not found", robots: { index: false, follow: false } };
934
+ }
848
935
  const collection = cfg.collections.find((c) => c.slug === slug);
849
- if (!collection)
936
+ if (!collection) {
937
+ console.warn("[WWW] render/pages:createCollectionPageExports:generateMetadata collection not in config slug=", slug);
850
938
  return {};
939
+ }
851
940
  const { canonical, alternates } = await resolveHreflangAlternates(locale, storedSlug);
852
941
  const meta = await generateMeta({
853
942
  doc,
@@ -869,6 +958,7 @@ function createCollectionPageExports({
869
958
  const urlPath = buildLocalePath(locale, storedSlug);
870
959
  const canonical = `${siteUrl}${urlPath}`;
871
960
  const entries = Array.isArray(jsonLdOption) ? jsonLdOption : metadataType === "article" ? [{ type: "article" }] : [{ type: "website" }];
961
+ console.log("[WWW] render/pages:createCollectionPageExports:generateJsonLd collection=", slug, "locale=", locale, "entries=", entries.map((e) => e.type).join(","));
872
962
  const outputs = [];
873
963
  for (const entry of entries) {
874
964
  const id = entry.id ?? `jsonld-${entry.type}-${outputs.length}`;
@@ -929,6 +1019,7 @@ function createCollectionPageExports({
929
1019
  return outputs;
930
1020
  }
931
1021
  async function generateStaticParams() {
1022
+ console.log("[WWW] render/pages:createCollectionPageExports:generateStaticParams collection=", slug, "locales=", JSON.stringify(locales));
932
1023
  const params = [];
933
1024
  for (const locale of locales) {
934
1025
  const docs = await queryAllDocs({ collectionSlug: slug, slugField: "slug", locale, config: configPromise });
@@ -940,9 +1031,11 @@ function createCollectionPageExports({
940
1031
  params.push({ slug: Array.isArray(segments) ? segments : [segments], locale });
941
1032
  }
942
1033
  }
1034
+ console.log("[WWW] render/pages:createCollectionPageExports:generateStaticParams -> count=", params.length);
943
1035
  return params;
944
1036
  }
945
1037
  async function generateSitemap() {
1038
+ console.log("[WWW] render/pages:createCollectionPageExports:generateSitemap collection=", slug, "locales=", JSON.stringify(locales));
946
1039
  const docs = await queryAllDocs({
947
1040
  collectionSlug: slug,
948
1041
  slugField: "slug",
@@ -962,6 +1055,7 @@ function createCollectionPageExports({
962
1055
  urls.push({ url: `${siteUrl}${urlPath}`, lastModified: lastmod, changeFrequency: changefreq, priority });
963
1056
  }
964
1057
  }
1058
+ console.log("[WWW] render/pages:createCollectionPageExports:generateSitemap -> urls=", urls.length);
965
1059
  return urls;
966
1060
  }
967
1061
  return {
@@ -24,6 +24,7 @@ import { jsx } from "react/jsx-runtime";
24
24
  var LivePreviewListener = ({ serverURL }) => {
25
25
  const router = useRouter();
26
26
  const url = serverURL ?? process.env.NEXT_PUBLIC_SERVER_URL ?? (typeof window !== "undefined" ? window.location.origin : "");
27
+ console.log("[WWW] render/components:LivePreviewListener serverURL=", url);
27
28
  return /* @__PURE__ */ jsx(PayloadLivePreview, {
28
29
  refresh: router.refresh,
29
30
  serverURL: url
@@ -44,13 +45,19 @@ var AdminBar = ({ preview, exitPreviewPath = "/next/exit-preview", labels }) =>
44
45
  const router = useRouter2();
45
46
  const [open, setOpen] = useState(false);
46
47
  const merged = { ...defaultLabels, ...labels };
47
- if (!preview)
48
+ if (!preview) {
49
+ console.log("[WWW] render/components:AdminBar preview=false -> null");
48
50
  return null;
51
+ }
52
+ console.log("[WWW] render/components:AdminBar preview=true exitPreviewPath=", exitPreviewPath);
49
53
  return /* @__PURE__ */ jsxs(Fragment, {
50
54
  children: [
51
55
  /* @__PURE__ */ jsx2("button", {
52
56
  type: "button",
53
- onClick: () => setOpen(true),
57
+ onClick: () => {
58
+ console.log("[WWW] render/components:AdminBar trigger clicked");
59
+ setOpen(true);
60
+ },
54
61
  title: merged.triggerHint,
55
62
  style: {
56
63
  position: "fixed",
@@ -115,7 +122,10 @@ var AdminBar = ({ preview, exitPreviewPath = "/next/exit-preview", labels }) =>
115
122
  }),
116
123
  /* @__PURE__ */ jsx2("a", {
117
124
  href: exitPreviewPath,
118
- onClick: () => router.refresh(),
125
+ onClick: () => {
126
+ console.log("[WWW] render/components:AdminBar exit preview -> refresh");
127
+ router.refresh();
128
+ },
119
129
  style: {
120
130
  display: "inline-block",
121
131
  padding: "6px 10px",