@gechiui/block-editor
Version:
91 lines (85 loc) • 2.44 kB
JavaScript
import { createElement } from "@gechiui/element";
/**
* GeChiUI dependencies
*/
import { __ } from '@gechiui/i18n';
import { Button } from '@gechiui/components';
import { chevronRight, chevronLeft, grid, stretchFullWidth } from '@gechiui/icons';
/**
* Internal dependencies
*/
import { VIEWMODES } from './constants';
const Actions = _ref => {
let {
onStartBlank,
onBlockPatternSelect
} = _ref;
return createElement("div", {
className: "block-editor-block-pattern-setup__actions"
}, createElement(Button, {
onClick: onStartBlank
}, __('开始空白')), createElement(Button, {
variant: "primary",
onClick: onBlockPatternSelect
}, __('选择')));
};
const CarouselNavigation = _ref2 => {
let {
handlePrevious,
handleNext,
activeSlide,
totalSlides
} = _ref2;
return createElement("div", {
className: "block-editor-block-pattern-setup__navigation"
}, createElement(Button, {
icon: chevronLeft,
label: __('上一样板'),
onClick: handlePrevious,
disabled: activeSlide === 0
}), createElement(Button, {
icon: chevronRight,
label: __('下一样板'),
onClick: handleNext,
disabled: activeSlide === totalSlides - 1
}));
};
const SetupToolbar = _ref3 => {
let {
viewMode,
setViewMode,
handlePrevious,
handleNext,
activeSlide,
totalSlides,
onBlockPatternSelect,
onStartBlank
} = _ref3;
const isCarouselView = viewMode === VIEWMODES.carousel;
const displayControls = createElement("div", {
className: "block-editor-block-pattern-setup__display-controls"
}, createElement(Button, {
icon: stretchFullWidth,
label: __('轮播视图'),
onClick: () => setViewMode(VIEWMODES.carousel),
isPressed: isCarouselView
}), createElement(Button, {
icon: grid,
label: __('网格视图'),
onClick: () => setViewMode(VIEWMODES.grid),
isPressed: viewMode === VIEWMODES.grid
}));
return createElement("div", {
className: "block-editor-block-pattern-setup__toolbar"
}, isCarouselView && createElement(CarouselNavigation, {
handlePrevious: handlePrevious,
handleNext: handleNext,
activeSlide: activeSlide,
totalSlides: totalSlides
}), displayControls, isCarouselView && createElement(Actions, {
onBlockPatternSelect: onBlockPatternSelect,
onStartBlank: onStartBlank
}));
};
export default SetupToolbar;
//# sourceMappingURL=setup-toolbar.js.map