All files / src/generators/shared index.ts

0% Statements 0/0
0% Branches 0/0
0% Functions 0/0
0% Lines 0/0

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41                                                                                 
// SPDX-FileCopyrightText: 2024-2026 Hack23 AB
// SPDX-License-Identifier: Apache-2.0
 
/**
 * @module Generators/Shared
 * @description Public re-exports for the shared generators bounded context.
 * Provides branded types, escape utilities, and template helpers used by
 * all HTML/XML/RSS generation sub-contexts.
 *
 * Consumers should import from this barrel:
 * ```ts
 * import { toSafeHtml, toSafeXml, cacheBustUrl } from '../shared/index.js';
 * import type { SafeHtmlString, PageMeta, CacheBustConfig } from '../shared/index.js';
 * ```
 */
 
// Branded types and shared interfaces
export type {
  SafeHtmlString,
  SafeXmlString,
  AbsoluteUrl,
  RelativeFilePath,
  CacheBustConfig,
  PageMeta,
  BaseJsonLd,
  MultiLanguageGeneratorOptions,
} from './types.js';
 
// Escape utilities (branded-type producers)
export { toSafeHtml, toSafeXml, toAbsoluteUrl, toRelativeFilePath } from './html-escape.js';
 
// Template helpers
export {
  cacheBustUrl,
  buildHtmlOpenTag,
  buildMetaTag,
  buildOgMetaTag,
  getDirection,
  buildHreflangLink,
} from './template-helpers.js';