UNPKG

@gechiui/block-editor

Version:
69 lines (59 loc) 2.16 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = DefaultStylePicker; var _element = require("@gechiui/element"); var _blocks = require("@gechiui/blocks"); var _i18n = require("@gechiui/i18n"); var _components = require("@gechiui/components"); var _data = require("@gechiui/data"); var _store = require("../../store"); /** * GeChiUI dependencies */ /** * Internal dependencies */ function DefaultStylePicker(_ref) { let { blockName } = _ref; const { preferredStyle, onUpdatePreferredStyleVariations, styles } = (0, _data.useSelect)(select => { var _preferredStyleVariat, _preferredStyleVariat2; const settings = select(_store.store).getSettings(); const preferredStyleVariations = settings.__experimentalPreferredStyleVariations; return { preferredStyle: preferredStyleVariations === null || preferredStyleVariations === void 0 ? void 0 : (_preferredStyleVariat = preferredStyleVariations.value) === null || _preferredStyleVariat === void 0 ? void 0 : _preferredStyleVariat[blockName], onUpdatePreferredStyleVariations: (_preferredStyleVariat2 = preferredStyleVariations === null || preferredStyleVariations === void 0 ? void 0 : preferredStyleVariations.onChange) !== null && _preferredStyleVariat2 !== void 0 ? _preferredStyleVariat2 : null, styles: select(_blocks.store).getBlockStyles(blockName) }; }, [blockName]); const selectOptions = (0, _element.useMemo)(() => [{ label: (0, _i18n.__)('未设置'), value: '' }, ...styles.map(_ref2 => { let { label, name } = _ref2; return { label, value: name }; })], [styles]); const selectOnChange = (0, _element.useCallback)(blockStyle => { onUpdatePreferredStyleVariations(blockName, blockStyle); }, [blockName, onUpdatePreferredStyleVariations]); return onUpdatePreferredStyleVariations && (0, _element.createElement)(_components.SelectControl, { options: selectOptions, value: preferredStyle || '', label: (0, _i18n.__)('默认样式'), onChange: selectOnChange }); } //# sourceMappingURL=index.js.map