@wordpress/block-library
Version:
Block library for the WordPress editor.
137 lines • 2.81 kB
JavaScript
/**
* Internal dependencies
*/
const metadata = {
$schema: "https://schemas.wp.org/trunk/block.json",
apiVersion: 2,
name: "core/latest-posts",
title: "Latest Posts",
category: "widgets",
description: "Display a list of your most recent posts.",
keywords: ["recent posts"],
textdomain: "default",
attributes: {
categories: {
type: "array",
items: {
type: "object"
}
},
selectedAuthor: {
type: "number"
},
postsToShow: {
type: "number",
"default": 5
},
displayPostContent: {
type: "boolean",
"default": false
},
displayPostContentRadio: {
type: "string",
"default": "excerpt"
},
excerptLength: {
type: "number",
"default": 55
},
displayAuthor: {
type: "boolean",
"default": false
},
displayPostDate: {
type: "boolean",
"default": false
},
postLayout: {
type: "string",
"default": "list"
},
columns: {
type: "number",
"default": 3
},
order: {
type: "string",
"default": "desc"
},
orderBy: {
type: "string",
"default": "date"
},
displayFeaturedImage: {
type: "boolean",
"default": false
},
featuredImageAlign: {
type: "string",
"enum": ["left", "center", "right"]
},
featuredImageSizeSlug: {
type: "string",
"default": "thumbnail"
},
featuredImageSizeWidth: {
type: "number",
"default": null
},
featuredImageSizeHeight: {
type: "number",
"default": null
},
addLinkToFeaturedImage: {
type: "boolean",
"default": false
}
},
supports: {
align: true,
html: false,
typography: {
fontSize: true,
lineHeight: true,
__experimentalFontFamily: true,
__experimentalFontWeight: true,
__experimentalFontStyle: true,
__experimentalTextTransform: true,
__experimentalTextDecoration: true,
__experimentalLetterSpacing: true,
__experimentalDefaultControls: {
fontSize: true
}
}
},
editorStyle: "wp-block-latest-posts-editor",
style: "wp-block-latest-posts"
};
const {
attributes
} = metadata;
export default [{
attributes: { ...attributes,
categories: {
type: 'string'
}
},
supports: {
align: true,
html: false
},
migrate: oldAttributes => {
// This needs the full category object, not just the ID.
return { ...oldAttributes,
categories: [{
id: Number(oldAttributes.categories)
}]
};
},
isEligible: _ref => {
let {
categories
} = _ref;
return categories && 'string' === typeof categories;
},
save: () => null
}];
//# sourceMappingURL=deprecated.js.map