@brandlab-digital/site-core 1.0.8 → 1.0.10
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/analytics.js.map +1 -1
- package/dist/blog.js.map +1 -1
- package/dist/breadcrumbs.js.map +1 -1
- package/dist/business.js.map +1 -1
- package/dist/contact.d.ts.map +1 -1
- package/dist/contact.js +9 -3
- package/dist/contact.js.map +1 -1
- package/dist/entity-id.js.map +1 -1
- package/dist/geography.js.map +1 -1
- package/dist/google-reviews.js.map +1 -1
- package/dist/locations.js.map +1 -1
- package/dist/metadata.js.map +1 -1
- package/dist/project.js.map +1 -1
- package/dist/reviews.js.map +1 -1
- package/dist/rich-text.js.map +1 -1
- package/dist/routes.d.ts +14 -6
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +12 -9
- package/dist/routes.js.map +1 -1
- package/dist/schema.js.map +1 -1
- package/dist/seo-page.js.map +1 -1
- package/dist/sitemaps.js.map +1 -1
- package/package.json +1 -1
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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","sourcesContent":["import type { BrandlabDerivedBusinessFacts } from './business.js'\nimport type { BreadcrumbItem as SemanticBreadcrumbItem } from './breadcrumbs.js'\nimport { getAbsoluteUrl } from './metadata.js'\n\nexport type Schema<T> = {\n '@context': 'https://schema.org'\n} & T\n\nexport type BreadcrumbItem = SemanticBreadcrumbItem\n\nexport function sanitizeJsonLd(data: unknown): string {\n return JSON.stringify(data)\n .replace(/</g, '\\\\u003c')\n .replace(/>/g, '\\\\u003e')\n .replace(/&/g, '\\\\u0026')\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029')\n}\n\nexport function createSchema<T extends Record<string, unknown>>(data: T): Schema<T> {\n if (Object.hasOwn(data, '@context')) {\n throw new Error('Schema builders own @context; pass only schema node fields.')\n }\n return {\n '@context': 'https://schema.org',\n ...data,\n }\n}\n\nexport function createSchemaGraph(...nodes: unknown[]): Schema<{ '@graph': unknown[] }> {\n const filtered = nodes.filter(Boolean)\n const ids = filtered\n .map((node) =>\n node && typeof node === 'object'\n ? (node as { '@id'?: unknown })['@id']\n : undefined,\n )\n .filter((id): id is string => typeof id === 'string')\n const duplicates = ids.filter((id, index) => ids.indexOf(id) !== index)\n\n if (duplicates.length > 0) {\n throw new Error(\n `Duplicate @id values in one schema graph: ${[...new Set(duplicates)].join(', ')}.`,\n )\n }\n\n return {\n '@context': 'https://schema.org',\n '@graph': filtered,\n }\n}\n\nexport function appendSchemaAnchor(url: string, anchor: string) {\n const cleanAnchor = anchor.replace(/^#+/, '')\n assertNonEmpty(cleanAnchor, 'anchor')\n assertAbsoluteUrl(url, 'url')\n const parsed = new URL(url)\n parsed.search = ''\n parsed.hash = ''\n const normalizedUrl = parsed.pathname === '/' ? parsed.origin + '/' : parsed.href.replace(/\\/$/, '')\n\n return `${normalizedUrl}#${cleanAnchor}`\n}\n\nexport interface SchemaIdRoutes {\n service: (slug: string) => string\n blogPost: (slug: string) => string\n}\n\nexport interface SchemaIdOptions {\n siteUrl: string\n anchors?: {\n business?: string\n website?: string\n service?: string\n article?: string\n }\n routes: SchemaIdRoutes\n}\n\nfunction normalizeSiteUrl(siteUrl: string) {\n assertAbsoluteUrl(siteUrl, 'siteUrl')\n const parsed = new URL(siteUrl)\n if (parsed.pathname !== '/' || parsed.search || parsed.hash) {\n throw new Error('siteUrl must be an absolute HTTPS origin.')\n }\n return parsed.origin\n}\n\nfunction absoluteUrl(siteUrl: string, pathOrUrl: string) {\n if (/^https?:/i.test(pathOrUrl)) {\n assertAbsoluteUrl(pathOrUrl, 'schema URL')\n return pathOrUrl\n }\n return getAbsoluteUrl(normalizeSiteUrl(siteUrl), pathOrUrl.startsWith('/') ? pathOrUrl : `/${pathOrUrl}`)\n}\n\nexport function createSchemaIdHelpers(options: SchemaIdOptions) {\n const siteUrl = normalizeSiteUrl(options.siteUrl)\n const anchors = {\n business: '/#business',\n website: '/#website',\n service: '#service',\n article: '#article',\n ...options.anchors,\n }\n\n return {\n businessId: () => `${siteUrl}${anchors.business}`,\n websiteId: () => `${siteUrl}${anchors.website}`,\n serviceIdForSlug: (slug: string) =>\n `${absoluteUrl(siteUrl, options.routes.service(slug))}${anchors.service}`,\n serviceIdForPath: (pathOrUrl: string) =>\n `${absoluteUrl(siteUrl, pathOrUrl)}${anchors.service}`,\n blogPostId: (slug: string) =>\n `${absoluteUrl(siteUrl, options.routes.blogPost(slug))}${anchors.article}`,\n blogPostPageId: (slug: string) => absoluteUrl(siteUrl, options.routes.blogPost(slug)),\n }\n}\n\nexport function buildBreadcrumbListSchema(\n breadcrumbs: BreadcrumbItem[],\n options: { absoluteUrl: (path: string) => string },\n) {\n return {\n '@type': 'BreadcrumbList',\n itemListElement: breadcrumbs.map((crumb, index) => {\n assertNonEmpty(crumb.name, `breadcrumbs[${index}].name`)\n const url = crumb.href ? options.absoluteUrl(crumb.href) : undefined\n if (url) assertAbsoluteUrl(url, `breadcrumbs[${index}].url`)\n return {\n '@type': 'ListItem',\n position: index + 1,\n name: crumb.name,\n item: url\n ? {\n '@type': 'WebPage',\n '@id': url,\n url,\n name: crumb.name,\n }\n : undefined,\n }\n }),\n }\n}\n\nexport type BrandlabSchemaNode = Record<string, unknown> & {\n '@type': string\n '@id'?: string\n}\n\nexport interface BrandlabSchemaExtension {\n node: BrandlabSchemaNode\n rationale: string\n visibleEvidence: string\n}\n\nconst PROHIBITED_SCHEMA_TYPES = new Set([\n 'AggregateRating',\n 'AggregateOffer',\n 'FAQPage',\n 'HowTo',\n 'Offer',\n 'OfferCatalog',\n 'Product',\n 'Review',\n])\nconst PROHIBITED_SCHEMA_PROPERTIES = new Set([\n 'aggregaterating',\n 'hasoffercatalog',\n 'itemoffered',\n 'offer',\n 'offers',\n 'review',\n 'reviews',\n])\n\nfunction compactSchemaTerm(value: string) {\n const direct = /^(?:https?:\\/\\/)?schema\\.org[/#]([^/#]+)$/i.exec(value)\n if (direct) return direct[1]!\n return value.toLowerCase().startsWith('schema:') ? value.slice('schema:'.length) : value\n}\n\nfunction assertNonEmpty(value: string, field: string) {\n if (!value.trim()) throw new Error(`${field} cannot be empty.`)\n}\n\nfunction assertAbsoluteUrl(value: string, field: string) {\n let url: URL\n try {\n url = new URL(value)\n } catch {\n throw new Error(`${field} must be an absolute HTTPS URL.`)\n }\n if (url.protocol !== 'https:' || url.username || url.password) {\n throw new Error(`${field} must be an absolute HTTPS URL.`)\n }\n}\n\nfunction assertSafeSchemaValue(\n value: unknown,\n path: string,\n ancestors = new WeakSet<object>(),\n) {\n if (!value || typeof value !== 'object') return\n\n if (ancestors.has(value)) {\n throw new Error(`Schema payload contains a cyclic value at ${path}.`)\n }\n ancestors.add(value)\n\n try {\n if (Array.isArray(value)) {\n value.forEach((item, index) =>\n assertSafeSchemaValue(item, `${path}[${index}]`, ancestors),\n )\n return\n }\n\n const object = value as Record<string, unknown>\n if (Object.hasOwn(object, '@context')) {\n if (path !== 'schema' || object['@context'] !== 'https://schema.org') {\n throw new Error(\n `Schema @context at ${path} must be the single top-level literal \"https://schema.org\"; custom, local, array and nested contexts are unsupported.`,\n )\n }\n }\n Object.entries(object).forEach(([key, child]) => {\n if (key === '@context') return\n\n if (key.startsWith('@') && !['@graph', '@id', '@type'].includes(key)) {\n throw new Error(`JSON-LD keyword \"${key}\" is unsupported at ${path}.`)\n }\n\n if (key === '@id' && typeof child === 'string') {\n assertAbsoluteUrl(child, `${path}.@id`)\n }\n\n if (key === '@type') {\n const types = Array.isArray(child) ? child : [child]\n types.forEach((type) => {\n const compactType = typeof type === 'string' ? compactSchemaTerm(type) : ''\n if (PROHIBITED_SCHEMA_TYPES.has(compactType)) {\n throw new Error(`Schema type \"${type}\" is prohibited at ${path}.`)\n }\n })\n }\n\n const compactProperty = compactSchemaTerm(key).toLowerCase()\n if (PROHIBITED_SCHEMA_PROPERTIES.has(compactProperty)) {\n throw new Error(`Schema property \"${key}\" is prohibited at ${path}.`)\n }\n\n assertSafeSchemaValue(child, `${path}.${key}`, ancestors)\n })\n } finally {\n ancestors.delete(value)\n }\n}\n\n/** Validates a complete JSON-LD payload before a rendering adapter serializes it. */\nexport function assertProofSafeSchema<T>(schema: T): T {\n if (\n !schema ||\n typeof schema !== 'object' ||\n Array.isArray(schema) ||\n (schema as Record<string, unknown>)['@context'] !== 'https://schema.org'\n ) {\n throw new Error(\n 'A rendered schema payload must use the literal \"https://schema.org\" @context.',\n )\n }\n assertSafeSchemaValue(schema, 'schema')\n return schema\n}\n\nexport function assertSafeSchemaNode(node: BrandlabSchemaNode) {\n assertNonEmpty(node['@type'], '@type')\n if (node['@id']) assertAbsoluteUrl(node['@id'], '@id')\n assertSafeSchemaValue(node, 'schema')\n return node\n}\n\n/** Builds a proof-safe graph from shared builders and reviewed extensions. */\nexport function buildSchemaGraph(options: {\n nodes: readonly (BrandlabSchemaNode | null | false | undefined)[]\n extensions?: readonly BrandlabSchemaExtension[]\n}) {\n const nodes = options.nodes.filter((node): node is BrandlabSchemaNode => Boolean(node))\n nodes.forEach(assertSafeSchemaNode)\n\n const extensionNodes = (options.extensions ?? []).map((extension, index) => {\n assertNonEmpty(extension.rationale, `extensions[${index}].rationale`)\n assertNonEmpty(extension.visibleEvidence, `extensions[${index}].visibleEvidence`)\n return assertSafeSchemaNode(extension.node)\n })\n\n const allNodes = [...nodes, ...extensionNodes]\n const ids = allNodes\n .map((node) => node['@id'])\n .filter((id): id is string => typeof id === 'string')\n const duplicateId = ids.find((id, index) => ids.indexOf(id) !== index)\n if (duplicateId) throw new Error(`Schema graph contains duplicate @id \"${duplicateId}\".`)\n\n return createSchemaGraph(...allNodes) as Schema<{\n '@graph': BrandlabSchemaNode[]\n }>\n}\n\nfunction compact<T extends Record<string, unknown>>(value: T): T {\n return Object.fromEntries(\n Object.entries(value).filter(([, entry]) => entry !== undefined),\n ) as T\n}\n\nexport function buildWebSiteSchema(input: {\n id: string\n url: string\n name: string\n publisherId?: string\n inLanguage?: string\n}) {\n assertNonEmpty(input.name, 'name')\n assertAbsoluteUrl(input.id, 'id')\n assertAbsoluteUrl(input.url, 'url')\n\n return assertSafeSchemaNode(\n compact({\n '@type': 'WebSite',\n '@id': input.id,\n url: input.url,\n name: input.name,\n publisher: input.publisherId ? { '@id': input.publisherId } : undefined,\n inLanguage: input.inLanguage,\n }),\n )\n}\n\nexport function buildWebPageSchema(input: {\n id: string\n url: string\n name: string\n description: string\n websiteId: string\n breadcrumbId?: string\n mainEntityId?: string\n inLanguage?: string\n}) {\n assertNonEmpty(input.name, 'name')\n assertNonEmpty(input.description, 'description')\n assertAbsoluteUrl(input.id, 'id')\n assertAbsoluteUrl(input.url, 'url')\n\n return assertSafeSchemaNode(\n compact({\n '@type': 'WebPage',\n '@id': input.id,\n url: input.url,\n name: input.name,\n description: input.description,\n isPartOf: { '@id': input.websiteId },\n breadcrumb: input.breadcrumbId ? { '@id': input.breadcrumbId } : undefined,\n mainEntity: input.mainEntityId ? { '@id': input.mainEntityId } : undefined,\n inLanguage: input.inLanguage,\n }),\n )\n}\n\nexport type BrandlabLocalBusinessSchemaType =\n | 'LocalBusiness'\n | 'ProfessionalService'\n | 'HomeAndConstructionBusiness'\n | 'Electrician'\n | 'GeneralContractor'\n | 'Plumber'\n | 'RoofingContractor'\n\nexport function buildLocalBusinessSchema(input: {\n id: string\n schemaType: BrandlabLocalBusinessSchemaType\n business: BrandlabDerivedBusinessFacts\n description?: string\n logoUrl?: string\n imageUrls?: readonly string[]\n}) {\n assertAbsoluteUrl(input.id, 'id')\n if (input.description !== undefined) assertNonEmpty(input.description, 'description')\n if (input.logoUrl) assertAbsoluteUrl(input.logoUrl, 'logoUrl')\n input.imageUrls?.forEach((url, index) => assertAbsoluteUrl(url, `imageUrls[${index}]`))\n\n return assertSafeSchemaNode(\n compact({\n '@type': input.schemaType,\n '@id': input.id,\n name: input.business.tradingName,\n legalName: input.business.legalName,\n url: input.business.canonicalUrl,\n telephone: input.business.phone?.e164,\n email: input.business.email,\n description: input.description,\n logo: input.logoUrl,\n image: input.imageUrls && input.imageUrls.length > 0 ? input.imageUrls : undefined,\n address: input.business.publicAddress\n ? {\n '@type': 'PostalAddress',\n ...input.business.publicAddress,\n }\n : undefined,\n areaServed:\n input.business.serviceAreas.length > 0\n ? input.business.serviceAreas.map((area) => ({\n '@type':\n area.kind === 'city'\n ? 'City'\n : area.kind === 'state'\n ? 'State'\n : area.kind === 'country'\n ? 'Country'\n : 'Place',\n name: area.name,\n }))\n : undefined,\n openingHoursSpecification:\n input.business.openingHours.length > 0\n ? input.business.openingHours.map((period) => ({\n '@type': 'OpeningHoursSpecification',\n dayOfWeek: period.days,\n opens: period.opens,\n closes: period.closes,\n }))\n : undefined,\n taxID: input.business.abn,\n sameAs: input.business.sameAs.length > 0 ? input.business.sameAs : undefined,\n }),\n )\n}\n\nexport function buildServiceSchema(input: {\n id: string\n url: string\n name: string\n description: string\n serviceType: string\n providerId: string\n areaServed?: readonly string[]\n}) {\n assertAbsoluteUrl(input.id, 'id')\n assertAbsoluteUrl(input.url, 'url')\n assertNonEmpty(input.name, 'name')\n assertNonEmpty(input.description, 'description')\n assertNonEmpty(input.serviceType, 'serviceType')\n input.areaServed?.forEach((area, index) => assertNonEmpty(area, `areaServed[${index}]`))\n\n return assertSafeSchemaNode(\n compact({\n '@type': 'Service',\n '@id': input.id,\n url: input.url,\n name: input.name,\n description: input.description,\n serviceType: input.serviceType,\n provider: { '@id': input.providerId },\n areaServed:\n input.areaServed && input.areaServed.length > 0\n ? input.areaServed.map((name) => ({ '@type': 'Place', name }))\n : undefined,\n }),\n )\n}\n\nexport function buildLocationSchema(input: {\n id: string\n url: string\n name: string\n description: string\n websiteId: string\n place: {\n name: string\n containedInPlace?: string\n }\n businessId?: string\n}) {\n assertAbsoluteUrl(input.id, 'id')\n assertAbsoluteUrl(input.url, 'url')\n assertNonEmpty(input.name, 'name')\n assertNonEmpty(input.description, 'description')\n assertNonEmpty(input.place.name, 'place.name')\n\n return assertSafeSchemaNode(\n compact({\n '@type': 'WebPage',\n '@id': input.id,\n url: input.url,\n name: input.name,\n description: input.description,\n isPartOf: { '@id': input.websiteId },\n about: compact({\n '@type': 'Place',\n name: input.place.name,\n containedInPlace: input.place.containedInPlace\n ? { '@type': 'Place', name: input.place.containedInPlace }\n : undefined,\n }),\n mainEntity: input.businessId ? { '@id': input.businessId } : undefined,\n }),\n )\n}\n\nexport function buildBlogPostingSchema(input: {\n id: string\n url: string\n headline: string\n description: string\n datePublished: string\n dateModified?: string\n authorNames: readonly string[]\n publisherId: string\n imageUrls?: readonly string[]\n mainEntityOfPageId?: string\n}) {\n assertAbsoluteUrl(input.id, 'id')\n assertAbsoluteUrl(input.url, 'url')\n assertNonEmpty(input.headline, 'headline')\n assertNonEmpty(input.description, 'description')\n if (Number.isNaN(Date.parse(input.datePublished))) throw new Error('datePublished must be valid.')\n if (input.dateModified && Number.isNaN(Date.parse(input.dateModified))) {\n throw new Error('dateModified must be valid.')\n }\n if (\n input.dateModified &&\n Date.parse(input.dateModified) < Date.parse(input.datePublished)\n ) {\n throw new Error('dateModified cannot be earlier than datePublished.')\n }\n if (input.authorNames.length === 0) throw new Error('authorNames cannot be empty.')\n input.authorNames.forEach((name, index) => assertNonEmpty(name, `authorNames[${index}]`))\n input.imageUrls?.forEach((url, index) => assertAbsoluteUrl(url, `imageUrls[${index}]`))\n\n return assertSafeSchemaNode(\n compact({\n '@type': 'BlogPosting',\n '@id': input.id,\n url: input.url,\n headline: input.headline,\n description: input.description,\n datePublished: input.datePublished,\n dateModified: input.dateModified ?? input.datePublished,\n author: input.authorNames.map((name) => ({ '@type': 'Person', name })),\n publisher: { '@id': input.publisherId },\n image: input.imageUrls,\n mainEntityOfPage: input.mainEntityOfPageId\n ? { '@id': input.mainEntityOfPageId }\n : { '@id': input.url },\n }),\n )\n}\n"]}
|
package/dist/seo-page.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seo-page.js","sourceRoot":"","sources":["../src/seo-page.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seo-page.js","sourceRoot":"","sources":["../src/seo-page.ts"],"names":[],"mappings":"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","sourcesContent":["import type { BrandlabMetadataTitleMode, BrandlabSocialImage } from './metadata.js'\n\nexport interface BrandlabSeoPage {\n routeId: string\n title: string\n description: string\n titleMode?: BrandlabMetadataTitleMode\n keywords?: readonly string[]\n socialImage?: BrandlabSocialImage\n article?: {\n publishedTime: string\n modifiedTime?: string\n authors: readonly string[]\n }\n}\n\nfunction assertText(value: unknown, field: string, maximum: number) {\n if (\n typeof value !== 'string' ||\n !value.trim() ||\n value.trim() !== value ||\n value.length > maximum ||\n /[\\u0000-\\u001f\\u007f]/.test(value)\n ) {\n throw new Error(`${field} must be bounded, trimmed, single-line text.`)\n }\n}\n\nfunction assertDate(value: string, field: string) {\n if (\n !/^\\d{4}-\\d{2}-\\d{2}(?:T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d{3})?Z)?$/.test(value) ||\n Number.isNaN(Date.parse(value))\n ) {\n throw new Error(`${field} must be an ISO date or UTC timestamp.`)\n }\n}\n\nexport function defineSeoPage<const T extends BrandlabSeoPage>(page: T): T {\n assertText(page.routeId, 'routeId', 100)\n if (!/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(page.routeId)) {\n throw new Error('routeId must be lowercase kebab-case.')\n }\n assertText(page.title, 'title', 160)\n assertText(page.description, 'description', 320)\n if (page.keywords && page.keywords.length > 20) {\n throw new Error('keywords must contain no more than 20 reviewed values.')\n }\n page.keywords?.forEach((keyword, index) =>\n assertText(keyword, `keywords[${index}]`, 100),\n )\n if (\n page.keywords &&\n new Set(page.keywords.map((keyword) => keyword.toLowerCase())).size !==\n page.keywords.length\n ) {\n throw new Error('keywords must not contain duplicate values.')\n }\n\n if (page.article) {\n assertDate(page.article.publishedTime, 'article.publishedTime')\n if (page.article.modifiedTime) assertDate(page.article.modifiedTime, 'article.modifiedTime')\n if (\n page.article.modifiedTime &&\n Date.parse(page.article.modifiedTime) < Date.parse(page.article.publishedTime)\n ) {\n throw new Error('article.modifiedTime cannot be earlier than article.publishedTime.')\n }\n if (page.article.authors.length === 0) {\n throw new Error('article.authors requires at least one reviewed author.')\n }\n page.article.authors.forEach((author, index) =>\n assertText(author, `article.authors[${index}]`, 160),\n )\n }\n\n return page\n}\n"]}
|
package/dist/sitemaps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sitemaps.js","sourceRoot":"","sources":["../src/sitemaps.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sitemaps.js","sourceRoot":"","sources":["../src/sitemaps.ts"],"names":[],"mappings":"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","sourcesContent":["export interface SitemapEntry {\n url: string\n lastModified?: string | Date\n}\n\nexport interface SitemapChunk {\n path: string\n entries: readonly SitemapEntry[]\n}\n\nexport function escapeXml(value: string): string {\n return value\n .replace(/&/g, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''')\n}\n\nfunction formatLastModified(value: SitemapEntry['lastModified']) {\n if (!value) return null\n const parsed = value instanceof Date ? value : new Date(value)\n if (Number.isNaN(parsed.getTime())) throw new Error('Sitemap lastModified must be a valid date.')\n return parsed.toISOString()\n}\n\nfunction assertSitemapUrl(value: string, field: string) {\n let url: URL\n try {\n url = new URL(value)\n } catch {\n throw new Error(`${field} must be an absolute HTTPS URL.`)\n }\n if (url.protocol !== 'https:' || url.username || url.password || url.hash) {\n throw new Error(`${field} must be an absolute HTTPS URL without credentials or a hash.`)\n }\n}\n\nexport function getSitemapXmlHeaders() {\n return {\n 'content-type': 'application/xml; charset=utf-8',\n 'cache-control': 'public, max-age=3600, s-maxage=3600',\n }\n}\n\nexport function serializeSitemap(entries: readonly SitemapEntry[]): string {\n entries.forEach((entry, index) => assertSitemapUrl(entry.url, `entries[${index}].url`))\n const duplicate = entries.find((entry, index) =>\n entries.slice(0, index).some((candidate) => candidate.url === entry.url),\n )\n if (duplicate) throw new Error(`Sitemap contains duplicate URL \"${duplicate.url}\".`)\n const urls = entries\n .map((entry) => {\n const lastModified = formatLastModified(entry.lastModified)\n\n return [\n ' <url>',\n ` <loc>${escapeXml(entry.url)}</loc>`,\n lastModified ? ` <lastmod>${lastModified}</lastmod>` : null,\n ' </url>',\n ]\n .filter(Boolean)\n .join('\\n')\n })\n .join('\\n')\n\n return [\n '<?xml version=\"1.0\" encoding=\"UTF-8\"?>',\n '<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">',\n urls,\n '</urlset>',\n ].join('\\n')\n}\n\nexport function serializeSitemapIndex(\n paths: readonly string[],\n options: { absoluteUrl: (path: string) => string },\n): string {\n const entries = paths\n .map((path, index) => {\n const url = options.absoluteUrl(path)\n assertSitemapUrl(url, `paths[${index}]`)\n return [\n ' <sitemap>',\n ` <loc>${escapeXml(url)}</loc>`,\n ' </sitemap>',\n ].join('\\n')\n })\n .join('\\n')\n\n return [\n '<?xml version=\"1.0\" encoding=\"UTF-8\"?>',\n '<sitemapindex xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">',\n entries,\n '</sitemapindex>',\n ].join('\\n')\n}\n\nexport function createSitemapChunks(\n entries: readonly SitemapEntry[],\n options: {\n pathPrefix: string\n maxUrlsPerSitemap?: number\n },\n): SitemapChunk[] {\n const maxUrlsPerSitemap = options.maxUrlsPerSitemap ?? 500\n\n if (!Number.isInteger(maxUrlsPerSitemap) || maxUrlsPerSitemap < 1 || maxUrlsPerSitemap > 50_000) {\n throw new Error('maxUrlsPerSitemap must be an integer between 1 and 50000.')\n }\n\n const pathPrefix = options.pathPrefix.startsWith('/')\n ? options.pathPrefix\n : `/${options.pathPrefix}`\n const normalizedPrefix = pathPrefix.replace(/\\.xml$/, '')\n const chunks: SitemapChunk[] = []\n\n for (let index = 0; index < entries.length; index += maxUrlsPerSitemap) {\n chunks.push({\n path: `${normalizedPrefix}-${chunks.length + 1}.xml`,\n entries: entries.slice(index, index + maxUrlsPerSitemap),\n })\n }\n\n return chunks\n}\n\nexport function filterSitemapIndexPaths(\n groups: readonly { path: string; entryCount: number; includeWhenEmpty?: boolean }[],\n) {\n return groups\n .filter((group) => group.includeWhenEmpty || group.entryCount > 0)\n .map((group) => group.path)\n}\n\nexport function shouldIndexSite(options: {\n nodeEnv?: string\n vercelEnv?: string\n allowIndexing?: string\n}) {\n // A Vercel environment declaration is authoritative: preview and\n // development deployments cannot be made indexable by a drifting override.\n if (options.vercelEnv) return options.vercelEnv === 'production'\n return options.nodeEnv === 'production' || options.allowIndexing === '1'\n}\n\n/**\n * Builds canonical sitemap entries from the route catalog. It deliberately\n * omits priority and changeFrequency because search engines do not use those\n * values as reliable crawl signals.\n */\nexport function buildSitemapEntries(\n routes: BrandlabRouteCatalog,\n options: { siteUrl: string },\n): SitemapEntry[] {\n const siteUrl = new URL(options.siteUrl)\n if (\n siteUrl.protocol !== 'https:' ||\n siteUrl.username ||\n siteUrl.password ||\n siteUrl.pathname !== '/' ||\n siteUrl.search ||\n siteUrl.hash\n ) {\n throw new Error('siteUrl must be an absolute HTTPS origin.')\n }\n\n const entries = routes\n .filter((route) => resolveBrandlabRouteIndexing(route) === 'index')\n .map((route) => {\n const path = normalizeBrandlabRoutePath(route.canonicalPath ?? route.path)\n const lastModified = route.lastSignificantChange\n\n if (lastModified && Number.isNaN(Date.parse(lastModified))) {\n throw new Error(`Route \"${route.id}\" has an invalid lastSignificantChange date.`)\n }\n\n return {\n url: getAbsoluteUrl(siteUrl.origin, path),\n ...(lastModified ? { lastModified } : {}),\n }\n })\n\n const duplicate = entries.find((entry, index) =>\n entries.slice(0, index).some((candidate) => candidate.url === entry.url),\n )\n if (duplicate) throw new Error(`Sitemap contains duplicate canonical URL \"${duplicate.url}\".`)\n\n return entries\n}\nimport { getAbsoluteUrl } from './metadata.js'\nimport type { BrandlabRouteCatalog } from './routes.js'\nimport { normalizeBrandlabRoutePath, resolveBrandlabRouteIndexing } from './routes.js'\n"]}
|