diff --git a/packages/banners/src/index.js b/packages/banners/src/index.js index 50705af..4df729f 100644 --- a/packages/banners/src/index.js +++ b/packages/banners/src/index.js @@ -13,6 +13,15 @@ export default async function banner({ layout = 'horizontal', config, }) { + if (layout === 'horizontal') { + title = truncateText(title, 45); + subtitle = truncateText(subtitle, 100); + } + else { + title = truncateText(title, 90); + subtitle = truncateText(subtitle, 200); + } + const dimensions = { width: 1000, height: layout === 'horizontal' ? 180 : 680, @@ -41,3 +50,8 @@ export default async function banner({ toString() { return svg; }, }; } + +/** @type {(string: string, maxChar: number) => string} */ +function truncateText(string, maxChar) { + return string.length > maxChar ? `${string.slice(0, maxChar)}...` : string; +}