Security News
tea.xyz Spam Plagues npm and RubyGems Package Registries
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
sanity-plugin-html-to-portable-text
Advanced tools
Readme
HTML to Portable Text
This plugin is a custom input component which converts HTML
into Portable Text on the fly.
Sanity
is using the Portable Text
-format whenever you use the block
-type.
In Sanity-Studio
there is a WYSIWYG
-Block Content Editor which makes editing very convenient. But if you are just migrating to sanity
and your source is HTML
, this plugin may come in handy.
Your schema
needs to define at least one block
-type field to allow persisting to your schema
.
Install the Sanity Plugin HTML to Portable Text
with the sanity CLI
sanity install sanity-plugin-html-to-portable-text
Just add a field of htmlPortableText
-type to your fields-array.
fields: [
{
name: 'htmlToArticleBody',
title: 'HTML to Article Body',
type: 'htmlToPortableText',
{
name: 'articleBody',
title: 'Article Body',
type: 'array',
of: [ { type: 'block' } ]
}
]
If you have multiple block
-type fields, you may want to have one selected as the default.
options: { defaultrefblock: '<name>' },
Parameter | Type | Description | Default |
---|---|---|---|
defaultrefblock | string | Optional. Name of referenced block | First block -type as defined in your schema |
fields: [
{
name: 'htmlToArticleBody',
title: 'HTML to Article Body',
type: 'htmlToPortableText',
// no need to reference the block
// all block-types get picked up automatically
// but you can specify which one is pre-selected
{
name: 'articleBody',
title: 'Article Body',
type: 'array',
of: [
{
type: 'block',
styles: [
// enable only below styles
{ title: 'Unstyled', value: 'normal' },
{ title: 'H1', value: 'h1' },
{ title: 'H2', value: 'h2' },
]
}
]
}
]
This example show how you may radically limit the available styles in Portable Text
.
fields: [
{
name: 'htmlToArticleBody',
title: 'HTML to Article Body',
type: 'htmlToPortableText',
},
{
name: 'articleBody',
title: 'Article Body',
type: 'array',
of: [
{
type: 'block',
// Disallow all styles
styles: [],
// Disallow all lists
lists: [],
marks: {
// Only allow these decorators
decorators: [
{ title: 'Bold', value: 'strong' },
{
title: 'Superscript',
value: 'sup',
// Define custom icon and renderer for the blockEditor
blockEditor: {
icon: () => <div>⤴</div>,
render: ({ children }) => <span><sup>{children}</sup></span>
}
},
],
// disallow links
annotations: []
}
]
}
]
HTML
into Portable Text on the flyschema
of the parent document and finds all block
-type fieldsHTML
to selected block
-type field of your schema
FAQs
Sanity custom input plugin to convert HTML to Portable Text
The npm package sanity-plugin-html-to-portable-text receives a total of 451 weekly downloads. As such, sanity-plugin-html-to-portable-text popularity was classified as not popular.
We found that sanity-plugin-html-to-portable-text demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.
Security News
UnitedHealth Group disclosed that the ransomware attack on Change Healthcare compromised protected health information for millions in the U.S., with estimated costs to the company expected to reach $1 billion.