Add first business article and article layout

This commit is contained in:
2026-05-21 12:14:46 -05:00
parent 200e14e2e9
commit 4735704c6f
9617 changed files with 988627 additions and 0 deletions

View File

@@ -0,0 +1,53 @@
import { collectPropagatedHeadParts } from "../../../../core/head-propagation/buffer.js";
import {
getPropagationHint as getHint,
isPropagatingHint
} from "../../../../core/head-propagation/resolver.js";
import {
shouldRenderInstruction as shouldRenderInstructionByPolicy
} from "../../../../core/head-propagation/policy.js";
import { isHeadAndContent } from "../astro/head-and-content.js";
function getPropagationHint(result, factory) {
return getHint(result, factory);
}
function registerIfPropagating(result, factory, instance) {
if (factory.propagation === "self" || factory.propagation === "in-tree") {
result._metadata.propagators.add(
instance
);
return;
}
if (factory.moduleId) {
const hint = result.componentMetadata.get(factory.moduleId)?.propagation;
if (isPropagatingHint(hint ?? "none")) {
result._metadata.propagators.add(
instance
);
}
}
}
async function bufferPropagatedHead(result) {
const collected = await collectPropagatedHeadParts({
propagators: result._metadata.propagators,
result,
isHeadAndContent
});
result._metadata.extraHead.push(...collected);
}
function shouldRenderInstruction(type, state) {
return shouldRenderInstructionByPolicy(type, state);
}
function getInstructionRenderState(result) {
return {
hasRenderedHead: result._metadata.hasRenderedHead,
headInTree: result._metadata.headInTree,
partial: result.partial
};
}
export {
bufferPropagatedHead,
getInstructionRenderState,
getPropagationHint,
registerIfPropagating,
shouldRenderInstruction
};