@wordpress/editor
Version:
Enhanced block editor for WordPress posts.
57 lines (47 loc) • 1.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _element = require("@wordpress/element");
var _i18n = require("@wordpress/i18n");
var _data = require("@wordpress/data");
var _htmlEntities = require("@wordpress/html-entities");
var _components = require("@wordpress/components");
/**
* WordPress dependencies
*/
function PostAuthorSelect() {
const {
editPost
} = (0, _data.useDispatch)('core/editor');
const {
postAuthor,
authors
} = (0, _data.useSelect)(select => {
const authorsFromAPI = select('core').getAuthors();
return {
postAuthor: select('core/editor').getEditedPostAttribute('author'),
authors: authorsFromAPI.map(author => ({
label: (0, _htmlEntities.decodeEntities)(author.name),
value: author.id
}))
};
}, []);
const setAuthorId = value => {
const author = Number(value);
editPost({
author
});
};
return (0, _element.createElement)(_components.SelectControl, {
className: "post-author-selector",
label: (0, _i18n.__)('Author'),
options: authors,
onChange: setAuthorId,
value: postAuthor
});
}
var _default = PostAuthorSelect;
exports.default = _default;
//# sourceMappingURL=select.js.map