[ci] format

This commit is contained in:
matthewp 2023-04-07 15:07:17 +00:00 committed by fredkbot
parent fa84f1a7d2
commit 8a0336c362
5 changed files with 14 additions and 8 deletions

View file

@ -9,7 +9,11 @@ import type {
SSRLoadedRenderer, SSRLoadedRenderer,
SSRResult, SSRResult,
} from '../../@types/astro'; } from '../../@types/astro';
import { renderSlotToString, stringifyChunk, type ComponentSlots } from '../../runtime/server/index.js'; import {
renderSlotToString,
stringifyChunk,
type ComponentSlots,
} from '../../runtime/server/index.js';
import { renderJSX } from '../../runtime/server/jsx.js'; import { renderJSX } from '../../runtime/server/jsx.js';
import { AstroCookies } from '../cookies/index.js'; import { AstroCookies } from '../cookies/index.js';
import { AstroError, AstroErrorData } from '../errors/index.js'; import { AstroError, AstroErrorData } from '../errors/index.js';
@ -105,7 +109,9 @@ class Slots {
const expression = getFunctionExpression(component); const expression = getFunctionExpression(component);
if (expression) { if (expression) {
const slot = () => expression(...args); const slot = () => expression(...args);
return await renderSlotToString(result, slot).then((res) => (res != null ? String(res) : res)); return await renderSlotToString(result, slot).then((res) =>
res != null ? String(res) : res
);
} }
// JSX // JSX
if (typeof component === 'function') { if (typeof component === 'function') {

View file

@ -17,8 +17,8 @@ export {
renderHTMLElement, renderHTMLElement,
renderPage, renderPage,
renderScriptElement, renderScriptElement,
renderSlotToString,
renderSlot, renderSlot,
renderSlotToString,
renderStyleElement, renderStyleElement,
renderTemplate as render, renderTemplate as render,
renderTemplate, renderTemplate,

View file

@ -17,7 +17,7 @@ import {
} from './astro/index.js'; } from './astro/index.js';
import { Fragment, Renderer, stringifyChunk } from './common.js'; import { Fragment, Renderer, stringifyChunk } from './common.js';
import { componentIsHTMLElement, renderHTMLElement } from './dom.js'; import { componentIsHTMLElement, renderHTMLElement } from './dom.js';
import { renderSlotToString, renderSlots, type ComponentSlots } from './slot.js'; import { renderSlots, renderSlotToString, type ComponentSlots } from './slot.js';
import { formatList, internalSpreadAttributes, renderElement, voidElementNames } from './util.js'; import { formatList, internalSpreadAttributes, renderElement, voidElementNames } from './util.js';
const rendererAliases = new Map([['solid', 'solid-js']]); const rendererAliases = new Map([['solid', 'solid-js']]);

View file

@ -10,7 +10,7 @@ export { renderComponent, renderComponentToIterable } from './component.js';
export { renderHTMLElement } from './dom.js'; export { renderHTMLElement } from './dom.js';
export { maybeRenderHead, renderHead } from './head.js'; export { maybeRenderHead, renderHead } from './head.js';
export { renderPage } from './page.js'; export { renderPage } from './page.js';
export { renderSlotToString, renderSlot, type ComponentSlots } from './slot.js'; export { renderSlot, renderSlotToString, type ComponentSlots } from './slot.js';
export { renderScriptElement, renderStyleElement, renderUniqueStylesheet } from './tags.js'; export { renderScriptElement, renderStyleElement, renderUniqueStylesheet } from './tags.js';
export type { RenderInstruction } from './types'; export type { RenderInstruction } from './types';
export { addAttribute, defineScriptVars, voidElementNames } from './util.js'; export { addAttribute, defineScriptVars, voidElementNames } from './util.js';

View file

@ -25,18 +25,18 @@ export function isSlotString(str: string): str is any {
return !!(str as any)[slotString]; return !!(str as any)[slotString];
} }
export async function * renderSlot( export async function* renderSlot(
result: SSRResult, result: SSRResult,
slotted: ComponentSlotValue | RenderTemplateResult, slotted: ComponentSlotValue | RenderTemplateResult,
fallback?: ComponentSlotValue | RenderTemplateResult fallback?: ComponentSlotValue | RenderTemplateResult
): AsyncGenerator<any, void, undefined> { ): AsyncGenerator<any, void, undefined> {
if (slotted) { if (slotted) {
let iterator = renderChild(typeof slotted === 'function' ? slotted(result) : slotted); let iterator = renderChild(typeof slotted === 'function' ? slotted(result) : slotted);
yield * iterator; yield* iterator;
} }
if (fallback) { if (fallback) {
yield * renderSlot(result, fallback); yield* renderSlot(result, fallback);
} }
} }