@wordpress/block-editor
Version:
57 lines (54 loc) • 1.5 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _data = require("@wordpress/data");
var _i18n = require("@wordpress/i18n");
var _element = require("@wordpress/element");
var _blockTypesList = _interopRequireDefault(require("../block-types-list"));
var _store = require("../../store");
var _utils = require("./utils");
var _jsxRuntime = require("react/jsx-runtime");
/**
* WordPress dependencies
*/
/**
* Internal dependencies
*/
function ReusableBlocksTab({
onSelect,
rootClientId,
listProps
}) {
const {
inserterItems
} = (0, _data.useSelect)(select => {
const {
getInserterItems
} = select(_store.store);
const allItems = getInserterItems(rootClientId);
return {
inserterItems: allItems
};
}, [rootClientId]);
const items = (0, _element.useMemo)(() => {
return (0, _utils.filterInserterItems)(inserterItems, {
onlyReusable: true
});
}, [inserterItems]);
const sections = [(0, _utils.createInserterSection)({
key: 'reusable',
items
})];
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockTypesList.default, {
name: "SyncedPatterns",
sections: sections,
onSelect: onSelect,
listProps: listProps,
label: (0, _i18n.__)('Synced patterns')
});
}
var _default = exports.default = ReusableBlocksTab;
//# sourceMappingURL=reusable-blocks-tab.native.js.map