@gechiui/components
Version:
UI components for GeChiUI.
74 lines (57 loc) • 2 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _element = require("@gechiui/element");
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _classnames = _interopRequireDefault(require("classnames"));
var _deprecated = _interopRequireDefault(require("@gechiui/deprecated"));
var _toolbarGroup = _interopRequireDefault(require("../toolbar-group"));
var _toolbarContainer = _interopRequireDefault(require("./toolbar-container"));
/**
* External dependencies
*/
/**
* GeChiUI dependencies
*/
/**
* Internal dependencies
*/
/**
* Renders a toolbar.
*
* To add controls, simply pass `ToolbarButton` components as children.
*
* @param {Object} props Component props.
* @param {string} [props.className] Class to set on the container div.
* @param {string} [props.label] ARIA label for toolbar container.
* @param {Object} ref React Element ref.
*/
function Toolbar(_ref, ref) {
let {
className,
label,
...props
} = _ref;
if (!label) {
(0, _deprecated.default)('Using Toolbar without label prop', {
since: '5.6',
alternative: 'ToolbarGroup component',
link: 'https://developer.gechiui.com/block-editor/components/toolbar/'
});
return (0, _element.createElement)(_toolbarGroup.default, (0, _extends2.default)({}, props, {
className: className
}));
} // `ToolbarGroup` already uses components-toolbar for compatibility reasons
const finalClassName = (0, _classnames.default)('components-accessible-toolbar', className);
return (0, _element.createElement)(_toolbarContainer.default, (0, _extends2.default)({
className: finalClassName,
label: label,
ref: ref
}, props));
}
var _default = (0, _element.forwardRef)(Toolbar);
exports.default = _default;
//# sourceMappingURL=index.js.map