feat(api): enhance customisation with slots
and render
function
#167
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This feature introduces new customisation options for fine-tuning the rendering of Portable Text content.
Changes Made:
Enabled the use of
slots
in thePortableText
component. Users can now use Astro's slot syntax to modify the rendering of specific elements, providing more control over the overall structure and layout. Theslot
name options aretype
,block
,list
,listItem
,mark
,text
andhardBreak
.In the example below,
CustomBlock
is passed in tocomponents.block
option and when usingslots
it will be passed in as theComponent
prop to further enhance the output. If no custom block component is defined,Component
will beastro-portabletext
block component.render
function tousePortableText
. This function allows users to customise the output of child nodes, such as modifying text content, changing how links are rendered, or conditionally rendering elements.Closes #158