@brilo/base-blocks 0.1.21 → 0.1.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/.tsbuildinfo +1 -1
- package/build/blocks/form/form-field/SelectOptionsRepeater.d.ts +10 -0
- package/build/blocks/form/form-field/SelectOptionsRepeater.d.ts.map +1 -0
- package/build/blocks/form/form-field/SelectOptionsRepeater.js +20 -0
- package/build/blocks/form/form-field/constants.d.ts +8 -0
- package/build/blocks/form/form-field/constants.d.ts.map +1 -1
- package/build/blocks/form/form-field/constants.js +5 -0
- package/build/blocks/form/form-field/edit.d.ts.map +1 -1
- package/build/blocks/form/form-field/edit.js +20 -11
- package/build/blocks/form/form-field/factory.d.ts.map +1 -1
- package/build/blocks/form/form-field/factory.js +1 -0
- package/build/blocks/form/form-field/normalizeOptions.d.ts +18 -0
- package/build/blocks/form/form-field/normalizeOptions.d.ts.map +1 -0
- package/build/blocks/form/form-field/normalizeOptions.js +39 -0
- package/build/blocks/form/form-field/types.d.ts +9 -2
- package/build/blocks/form/form-field/types.d.ts.map +1 -1
- package/build/blocks/layout/layout-aside/constants.d.ts +2 -0
- package/build/blocks/layout/layout-aside/constants.d.ts.map +1 -0
- package/build/blocks/layout/layout-aside/constants.js +1 -0
- package/build/blocks/layout/layout-aside/edit.d.ts +4 -0
- package/build/blocks/layout/layout-aside/edit.d.ts.map +1 -0
- package/build/blocks/layout/layout-aside/edit.js +13 -0
- package/build/blocks/layout/layout-aside/factory.d.ts +4 -0
- package/build/blocks/layout/layout-aside/factory.d.ts.map +1 -0
- package/build/blocks/layout/layout-aside/factory.js +20 -0
- package/build/blocks/layout/layout-aside/icon.d.ts +3 -0
- package/build/blocks/layout/layout-aside/icon.d.ts.map +1 -0
- package/build/blocks/layout/layout-aside/icon.js +2 -0
- package/build/blocks/layout/layout-aside/index.d.ts +5 -0
- package/build/blocks/layout/layout-aside/index.d.ts.map +1 -0
- package/build/blocks/layout/layout-aside/index.js +5 -0
- package/build/blocks/layout/layout-aside/types.d.ts +6 -0
- package/build/blocks/layout/layout-aside/types.d.ts.map +1 -0
- package/build/blocks/layout/layout-aside/types.js +1 -0
- package/build/blocks/layout/layout-content/constants.d.ts +2 -0
- package/build/blocks/layout/layout-content/constants.d.ts.map +1 -0
- package/build/blocks/layout/layout-content/constants.js +1 -0
- package/build/blocks/layout/layout-content/edit.d.ts +4 -0
- package/build/blocks/layout/layout-content/edit.d.ts.map +1 -0
- package/build/blocks/layout/layout-content/edit.js +13 -0
- package/build/blocks/layout/layout-content/factory.d.ts +4 -0
- package/build/blocks/layout/layout-content/factory.d.ts.map +1 -0
- package/build/blocks/layout/layout-content/factory.js +20 -0
- package/build/blocks/layout/layout-content/icon.d.ts +3 -0
- package/build/blocks/layout/layout-content/icon.d.ts.map +1 -0
- package/build/blocks/layout/layout-content/icon.js +2 -0
- package/build/blocks/layout/layout-content/index.d.ts +5 -0
- package/build/blocks/layout/layout-content/index.d.ts.map +1 -0
- package/build/blocks/layout/layout-content/index.js +5 -0
- package/build/blocks/layout/layout-content/types.d.ts +6 -0
- package/build/blocks/layout/layout-content/types.d.ts.map +1 -0
- package/build/blocks/layout/layout-content/types.js +1 -0
- package/build/blocks/layout/layout-content-w-aside/constants.d.ts +11 -0
- package/build/blocks/layout/layout-content-w-aside/constants.d.ts.map +1 -0
- package/build/blocks/layout/layout-content-w-aside/constants.js +6 -0
- package/build/blocks/layout/layout-content-w-aside/edit.d.ts +7 -0
- package/build/blocks/layout/layout-content-w-aside/edit.d.ts.map +1 -0
- package/build/blocks/layout/layout-content-w-aside/edit.js +22 -0
- package/build/blocks/layout/layout-content-w-aside/factory.d.ts +6 -0
- package/build/blocks/layout/layout-content-w-aside/factory.d.ts.map +1 -0
- package/build/blocks/layout/layout-content-w-aside/factory.js +26 -0
- package/build/blocks/layout/layout-content-w-aside/icon.d.ts +3 -0
- package/build/blocks/layout/layout-content-w-aside/icon.d.ts.map +1 -0
- package/build/blocks/layout/layout-content-w-aside/icon.js +2 -0
- package/build/blocks/layout/layout-content-w-aside/index.d.ts +5 -0
- package/build/blocks/layout/layout-content-w-aside/index.d.ts.map +1 -0
- package/build/blocks/layout/layout-content-w-aside/index.js +9 -0
- package/build/blocks/layout/layout-content-w-aside/types.d.ts +10 -0
- package/build/blocks/layout/layout-content-w-aside/types.d.ts.map +1 -0
- package/build/blocks/layout/layout-content-w-aside/types.js +1 -0
- package/build/blocks/post/posts-grid/constants.d.ts +4 -0
- package/build/blocks/post/posts-grid/constants.d.ts.map +1 -0
- package/build/blocks/post/posts-grid/constants.js +3 -0
- package/build/blocks/post/posts-grid/edit.d.ts +6 -0
- package/build/blocks/post/posts-grid/edit.d.ts.map +1 -0
- package/build/blocks/post/posts-grid/edit.js +21 -0
- package/build/blocks/post/posts-grid/factory.d.ts +5 -0
- package/build/blocks/post/posts-grid/factory.d.ts.map +1 -0
- package/build/blocks/post/posts-grid/factory.js +59 -0
- package/build/blocks/post/posts-grid/icon.d.ts +2 -0
- package/build/blocks/post/posts-grid/icon.d.ts.map +1 -0
- package/build/blocks/post/posts-grid/icon.js +2 -0
- package/build/blocks/post/posts-grid/index.d.ts +5 -0
- package/build/blocks/post/posts-grid/index.d.ts.map +1 -0
- package/build/blocks/post/posts-grid/index.js +5 -0
- package/build/blocks/post/posts-grid/types.d.ts +22 -0
- package/build/blocks/post/posts-grid/types.d.ts.map +1 -0
- package/build/blocks/post/posts-grid/types.js +1 -0
- package/build/blocks/sections/base-section/attributes.d.ts +4 -0
- package/build/blocks/sections/base-section/attributes.d.ts.map +1 -1
- package/build/blocks/sections/base-section/attributes.js +4 -0
- package/build/blocks/sections/base-section/constants.d.ts +7 -0
- package/build/blocks/sections/base-section/constants.d.ts.map +1 -1
- package/build/blocks/sections/base-section/constants.js +7 -0
- package/build/blocks/sections/base-section/controls.d.ts.map +1 -1
- package/build/blocks/sections/base-section/controls.js +23 -5
- package/build/blocks/sections/base-section/types.d.ts +18 -1
- package/build/blocks/sections/base-section/types.d.ts.map +1 -1
- package/build/blocks/signpost/signpost-group/constants.d.ts +1 -1
- package/build/blocks/signpost/signpost-group/constants.d.ts.map +1 -1
- package/build/blocks/signpost/signpost-group/constants.js +1 -1
- package/build/index.d.ts +8 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +4 -0
- package/package.json +5 -2
- package/src/blocks/form/form-field/SelectOptionsRepeater.tsx +111 -0
- package/src/blocks/form/form-field/constants.ts +7 -0
- package/src/blocks/form/form-field/edit.tsx +42 -16
- package/src/blocks/form/form-field/editor.scss +28 -0
- package/src/blocks/form/form-field/factory.tsx +1 -0
- package/src/blocks/form/form-field/normalizeOptions.ts +58 -0
- package/src/blocks/form/form-field/types.ts +6 -2
- package/src/blocks/layout/layout-aside/constants.ts +1 -0
- package/src/blocks/layout/layout-aside/edit.tsx +20 -0
- package/src/blocks/layout/layout-aside/editor.scss +9 -0
- package/src/blocks/layout/layout-aside/factory.tsx +24 -0
- package/src/blocks/layout/layout-aside/icon.tsx +12 -0
- package/src/blocks/layout/layout-aside/index.ts +9 -0
- package/src/blocks/layout/layout-aside/types.ts +5 -0
- package/src/blocks/layout/layout-content/constants.ts +1 -0
- package/src/blocks/layout/layout-content/edit.tsx +20 -0
- package/src/blocks/layout/layout-content/editor.scss +9 -0
- package/src/blocks/layout/layout-content/factory.tsx +24 -0
- package/src/blocks/layout/layout-content/icon.tsx +12 -0
- package/src/blocks/layout/layout-content/index.ts +9 -0
- package/src/blocks/layout/layout-content/types.ts +5 -0
- package/src/blocks/layout/layout-content-w-aside/constants.ts +7 -0
- package/src/blocks/layout/layout-content-w-aside/edit.tsx +52 -0
- package/src/blocks/layout/layout-content-w-aside/editor.scss +35 -0
- package/src/blocks/layout/layout-content-w-aside/factory.tsx +34 -0
- package/src/blocks/layout/layout-content-w-aside/icon.tsx +12 -0
- package/src/blocks/layout/layout-content-w-aside/index.ts +13 -0
- package/src/blocks/layout/layout-content-w-aside/types.ts +12 -0
- package/src/blocks/post/posts-grid/constants.ts +3 -0
- package/src/blocks/post/posts-grid/edit.tsx +105 -0
- package/src/blocks/post/posts-grid/factory.tsx +63 -0
- package/src/blocks/post/posts-grid/icon.tsx +8 -0
- package/src/blocks/post/posts-grid/index.ts +9 -0
- package/src/blocks/post/posts-grid/types.ts +25 -0
- package/src/blocks/sections/base-section/attributes.ts +4 -0
- package/src/blocks/sections/base-section/constants.ts +10 -0
- package/src/blocks/sections/base-section/controls.tsx +83 -4
- package/src/blocks/sections/base-section/types.ts +20 -1
- package/src/blocks/signpost/signpost-group/constants.ts +1 -1
- package/src/editor.scss +3 -0
- package/src/index.ts +8 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../../src/blocks/layout/layout-content-w-aside/icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,IAAI,mBAShB,CAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
export const icon = (_jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4 4H20V20H4V4ZM6 6H13V18H6V6ZM15 6H18V18H15V6Z", fill: "currentColor" }) }));
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export type { ContentWithAsideAttributes, ContentWithAsideOptions } from './types';
|
|
2
|
+
export { createContentWithAsideBlock } from './factory';
|
|
3
|
+
import type { ContentWithAsideOptions } from './types';
|
|
4
|
+
export declare const contentWithAsideDefaults: ContentWithAsideOptions;
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/layout/layout-content-w-aside/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,0BAA0B,EAAE,uBAAuB,EAAC,MAAM,SAAS,CAAA;AAChF,OAAO,EAAC,2BAA2B,EAAC,MAAM,WAAW,CAAA;AAErD,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,SAAS,CAAA;AAEpD,eAAO,MAAM,wBAAwB,EAAE,uBAOtC,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { createContentWithAsideBlock } from './factory';
|
|
2
|
+
export const contentWithAsideDefaults = {
|
|
3
|
+
name: 'brilo/layout-content-w-aside',
|
|
4
|
+
allowedBlocks: ['brilo/layout-content', 'brilo/layout-aside'],
|
|
5
|
+
template: [
|
|
6
|
+
['brilo/layout-content', {}],
|
|
7
|
+
['brilo/layout-aside', {}],
|
|
8
|
+
],
|
|
9
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { BriloBlockType, OptionArray } from '../../../types';
|
|
2
|
+
import type { ASIDE_SIZES } from './constants';
|
|
3
|
+
export type AsideSize = (typeof ASIDE_SIZES)[number]['value'];
|
|
4
|
+
export interface ContentWithAsideAttributes<TAsideSize extends string = AsideSize> extends Record<string, unknown> {
|
|
5
|
+
asideSize: TAsideSize;
|
|
6
|
+
}
|
|
7
|
+
export interface ContentWithAsideOptions<TAsideSizes extends OptionArray = typeof ASIDE_SIZES> extends BriloBlockType {
|
|
8
|
+
asideSizes?: TAsideSizes;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/layout/layout-content-w-aside/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACxD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,aAAa,CAAA;AAE5C,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAE7D,MAAM,WAAW,0BAA0B,CAAC,UAAU,SAAS,MAAM,GAAG,SAAS,CAAE,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAChH,SAAS,EAAE,UAAU,CAAA;CACtB;AAED,MAAM,WAAW,uBAAuB,CAAC,WAAW,SAAS,WAAW,GAAG,OAAO,WAAW,CAAE,SAAQ,cAAc;IACnH,UAAU,CAAC,EAAE,WAAW,CAAA;CACzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/post/posts-grid/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,IAAI,CAAA;AACnC,eAAO,MAAM,kBAAkB,KAAK,CAAA;AACpC,eAAO,MAAM,sBAAsB,IAAI,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { PostsGridAttributes, PostsGridOptions } from './types';
|
|
2
|
+
export declare function createPostsGridEdit(options: PostsGridOptions): ({ attributes, setAttributes, }: {
|
|
3
|
+
attributes: PostsGridAttributes;
|
|
4
|
+
setAttributes: (a: Partial<PostsGridAttributes>) => void;
|
|
5
|
+
}) => import("react").JSX.Element;
|
|
6
|
+
//# sourceMappingURL=edit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/post/posts-grid/edit.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAElE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,oCAIxD;IACD,UAAU,EAAE,mBAAmB,CAAA;IAC/B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;CACzD,iCAqFF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { InspectorControls, useBlockProps } from '@wordpress/block-editor';
|
|
3
|
+
import { PanelBody, RangeControl, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
|
|
4
|
+
import { __ } from '@wordpress/i18n';
|
|
5
|
+
import { POSTS_PER_PAGE_DEFAULT, POSTS_PER_PAGE_MAX, POSTS_PER_PAGE_MIN } from './constants';
|
|
6
|
+
export function createPostsGridEdit(options) {
|
|
7
|
+
return function Edit({ attributes, setAttributes, }) {
|
|
8
|
+
var _a, _b;
|
|
9
|
+
const { mode, postsPerPage, selectedPosts, selectedCategories, showImage, showCategory, showDate, showExcerpt, showAuthor } = attributes;
|
|
10
|
+
const blockProps = useBlockProps({ className: 'wp-block-section' });
|
|
11
|
+
return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsxs(PanelBody, { title: __('Nastavení výpisu', 'brilo-blocks'), initialOpen: true, children: [_jsxs(ToggleGroupControl, { label: __('Režim výběru', 'brilo-blocks'), value: mode, onChange: (value) => setAttributes({ mode: value }), isBlock: true, children: [_jsx(ToggleGroupControlOption, { value: "manual", label: __('Ruční výběr', 'brilo-blocks') }), _jsx(ToggleGroupControlOption, { value: "category", label: __('Dle kategorie', 'brilo-blocks') }), _jsx(ToggleGroupControlOption, { value: "latest", label: __('Nejnovější', 'brilo-blocks') })] }), mode !== 'manual' && (_jsx(RangeControl, { label: __('Počet příspěvků na stránku', 'brilo-blocks'), value: postsPerPage, onChange: (value) => setAttributes({ postsPerPage: value !== null && value !== void 0 ? value : POSTS_PER_PAGE_DEFAULT }), min: POSTS_PER_PAGE_MIN, max: POSTS_PER_PAGE_MAX }))] }), _jsxs(PanelBody, { title: __('Zobrazené údaje', 'brilo-blocks'), initialOpen: false, children: [_jsx(ToggleControl, { label: __('Zobrazit obrázek', 'brilo-blocks'), checked: showImage, onChange: (value) => setAttributes({ showImage: value }) }), _jsx(ToggleControl, { label: __('Zobrazit kategorii', 'brilo-blocks'), checked: showCategory, onChange: (value) => setAttributes({ showCategory: value }) }), _jsx(ToggleControl, { label: __('Zobrazit datum', 'brilo-blocks'), checked: showDate, onChange: (value) => setAttributes({ showDate: value }) }), _jsx(ToggleControl, { label: __('Zobrazit perex', 'brilo-blocks'), checked: showExcerpt, onChange: (value) => setAttributes({ showExcerpt: value }) }), _jsx(ToggleControl, { label: __('Zobrazit autora', 'brilo-blocks'), checked: showAuthor, onChange: (value) => setAttributes({ showAuthor: value }) })] })] }), _jsxs("div", { ...blockProps, children: [mode === 'category' &&
|
|
12
|
+
((_a = options.renderCategoryControl) === null || _a === void 0 ? void 0 : _a.call(options, {
|
|
13
|
+
selectedItems: selectedCategories,
|
|
14
|
+
onChange: (ids) => setAttributes({ selectedCategories: ids }),
|
|
15
|
+
})), mode === 'manual' &&
|
|
16
|
+
((_b = options.renderPostsControl) === null || _b === void 0 ? void 0 : _b.call(options, {
|
|
17
|
+
selectedItems: selectedPosts,
|
|
18
|
+
onChange: (ids) => setAttributes({ selectedPosts: ids }),
|
|
19
|
+
})), mode === 'latest' && (_jsxs("div", { className: "components-placeholder", children: [_jsx("div", { className: "components-placeholder__label", children: __('Posts Grid', 'brilo-blocks') }), _jsx("div", { className: "components-placeholder__instructions", children: `${__('Zobrazí', 'brilo-blocks')} ${postsPerPage} ${__('nejnovějších příspěvků.', 'brilo-blocks')}` })] }))] })] }));
|
|
20
|
+
};
|
|
21
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { BlockConfiguration } from '@wordpress/blocks';
|
|
2
|
+
import type { PostsGridAttributes, PostsGridOptions } from './types';
|
|
3
|
+
export type { PostsGridAttributes, PostsGridOptions };
|
|
4
|
+
export declare function createPostsGridBlock(options: PostsGridOptions): BlockConfiguration<PostsGridAttributes>;
|
|
5
|
+
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/post/posts-grid/factory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAKzD,OAAO,KAAK,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAElE,YAAY,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,CAAA;AAEnD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,GAAG,kBAAkB,CAAC,mBAAmB,CAAC,CAqDvG"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { __ } from '@wordpress/i18n';
|
|
2
|
+
import { POSTS_PER_PAGE_DEFAULT } from './constants';
|
|
3
|
+
import { createPostsGridEdit } from './edit';
|
|
4
|
+
import { icon as defaultIcon } from './icon';
|
|
5
|
+
export function createPostsGridBlock(options) {
|
|
6
|
+
var _a, _b, _c;
|
|
7
|
+
return {
|
|
8
|
+
name: options.name,
|
|
9
|
+
title: (_a = options.title) !== null && _a !== void 0 ? _a : __('Posts Grid', 'brilo-blocks'),
|
|
10
|
+
description: options.description,
|
|
11
|
+
category: (_b = options.category) !== null && _b !== void 0 ? _b : 'widgets',
|
|
12
|
+
...(options.parent && { parent: options.parent }),
|
|
13
|
+
icon: (_c = options.icon) !== null && _c !== void 0 ? _c : { src: defaultIcon },
|
|
14
|
+
supports: { html: false, customClassName: false },
|
|
15
|
+
attributes: {
|
|
16
|
+
mode: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
default: 'latest',
|
|
19
|
+
enum: ['manual', 'category', 'latest'],
|
|
20
|
+
},
|
|
21
|
+
postsPerPage: {
|
|
22
|
+
type: 'number',
|
|
23
|
+
default: POSTS_PER_PAGE_DEFAULT,
|
|
24
|
+
},
|
|
25
|
+
selectedPosts: {
|
|
26
|
+
type: 'array',
|
|
27
|
+
default: [],
|
|
28
|
+
items: { type: 'number' },
|
|
29
|
+
},
|
|
30
|
+
selectedCategories: {
|
|
31
|
+
type: 'array',
|
|
32
|
+
default: [],
|
|
33
|
+
items: { type: 'number' },
|
|
34
|
+
},
|
|
35
|
+
showImage: {
|
|
36
|
+
type: 'boolean',
|
|
37
|
+
default: true,
|
|
38
|
+
},
|
|
39
|
+
showCategory: {
|
|
40
|
+
type: 'boolean',
|
|
41
|
+
default: true,
|
|
42
|
+
},
|
|
43
|
+
showDate: {
|
|
44
|
+
type: 'boolean',
|
|
45
|
+
default: true,
|
|
46
|
+
},
|
|
47
|
+
showExcerpt: {
|
|
48
|
+
type: 'boolean',
|
|
49
|
+
default: true,
|
|
50
|
+
},
|
|
51
|
+
showAuthor: {
|
|
52
|
+
type: 'boolean',
|
|
53
|
+
default: true,
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
edit: createPostsGridEdit(options),
|
|
57
|
+
save: () => null,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../../src/blocks/post/posts-grid/icon.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI,6BAOhB,CAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
export const icon = (_jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("rect", { x: "1", y: "1", width: "8", height: "8", stroke: "black", fill: "none" }), _jsx("rect", { x: "11", y: "1", width: "8", height: "8", stroke: "black", fill: "none" }), _jsx("rect", { x: "1", y: "11", width: "8", height: "8", stroke: "black", fill: "none" }), _jsx("rect", { x: "11", y: "11", width: "8", height: "8", stroke: "black", fill: "none" })] }));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/post/posts-grid/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAClE,OAAO,EAAC,oBAAoB,EAAC,MAAM,WAAW,CAAA;AAE9C,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAE7C,eAAO,MAAM,iBAAiB,EAAE,gBAG/B,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { BriloBlockType } from '../../../types';
|
|
2
|
+
export type PostsGridMode = 'manual' | 'category' | 'latest';
|
|
3
|
+
export interface PostsGridAttributes extends Record<string, unknown> {
|
|
4
|
+
mode: PostsGridMode;
|
|
5
|
+
postsPerPage: number;
|
|
6
|
+
selectedPosts: number[];
|
|
7
|
+
selectedCategories: number[];
|
|
8
|
+
showImage: boolean;
|
|
9
|
+
showCategory: boolean;
|
|
10
|
+
showDate: boolean;
|
|
11
|
+
showExcerpt: boolean;
|
|
12
|
+
showAuthor: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface SelectControlProps {
|
|
15
|
+
selectedItems: number[];
|
|
16
|
+
onChange: (ids: number[]) => void;
|
|
17
|
+
}
|
|
18
|
+
export interface PostsGridOptions extends BriloBlockType {
|
|
19
|
+
renderCategoryControl?: (props: SelectControlProps) => JSX.Element;
|
|
20
|
+
renderPostsControl?: (props: SelectControlProps) => JSX.Element;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/post/posts-grid/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAE3C,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAA;AAE5D,MAAM,WAAW,mBAAoB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAClE,IAAI,EAAE,aAAa,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,kBAAkB,EAAE,MAAM,EAAE,CAAA;IAC5B,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,OAAO,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAA;IACjB,WAAW,EAAE,OAAO,CAAA;IACpB,UAAU,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;CAClC;AAED,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,qBAAqB,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,GAAG,CAAC,OAAO,CAAA;IAClE,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,GAAG,CAAC,OAAO,CAAA;CAChE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/attributes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;aACzB,EAAE;iBACA,IAAI,EAAE,QAAQ;iBACd,OAAO,EAAE,EAAE;;aAEb,OAAO;iBACL,IAAI,EAAE,QAAQ;iBACd,OAAO;qBACL,QAAQ,EAAE,SAAS;qBACnB,IAAI,EAAE,SAAS;;;aAGnB,UAAU;iBACR,IAAI,EAAE,QAAQ;iBACd,OAAO,EAAE,EAAE;;aAEb,SAAS;iBACP,IAAI,EAAE,QAAQ;iBACd,OAAO,EAAE,EAAE;;
|
|
1
|
+
{"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/attributes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;aACzB,EAAE;iBACA,IAAI,EAAE,QAAQ;iBACd,OAAO,EAAE,EAAE;;aAEb,OAAO;iBACL,IAAI,EAAE,QAAQ;iBACd,OAAO;qBACL,QAAQ,EAAE,SAAS;qBACnB,IAAI,EAAE,SAAS;;;aAGnB,UAAU;iBACR,IAAI,EAAE,QAAQ;iBACd,OAAO,EAAE,EAAE;;aAEb,SAAS;iBACP,IAAI,EAAE,QAAQ;iBACd,OAAO,EAAE,EAAE;;aAEb,WAAW;iBACT,IAAI,EAAE,QAAQ;iBACd,OAAO;;CAED,CAAA"}
|
|
@@ -12,4 +12,11 @@ export declare const SPACING_POSITIONS: readonly [{
|
|
|
12
12
|
readonly label: import("@wordpress/i18n").TransformedText<"Pouze dole">;
|
|
13
13
|
}];
|
|
14
14
|
export declare const SPACING_SIZES: readonly ['default', 'sm', 'xs'];
|
|
15
|
+
export declare const FLUID_DECORATION_HEIGHT_PRESETS: readonly [32, 56, 88, 128];
|
|
16
|
+
export declare const FLUID_DECORATION_DEFAULT_HEIGHT = "56px";
|
|
17
|
+
export declare const FLUID_DECORATION_UNITS: {
|
|
18
|
+
value: string;
|
|
19
|
+
label: string;
|
|
20
|
+
default: number;
|
|
21
|
+
}[];
|
|
15
22
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB;aAC3B,KAAK,EAAE,SAAS;aAAE,KAAK;;aACvB,KAAK,EAAE,MAAM;aAAE,KAAK;;aACpB,KAAK,EAAE,UAAU;aAAE,KAAK;;aACxB,KAAK,EAAE,OAAO;aAAE,KAAK;EACd,CAAA;AAEV,eAAO,MAAM,aAAa,YAAI,SAAS,EAAE,IAAI,EAAE,IAAI,CAAU,CAAA"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB;aAC3B,KAAK,EAAE,SAAS;aAAE,KAAK;;aACvB,KAAK,EAAE,MAAM;aAAE,KAAK;;aACpB,KAAK,EAAE,UAAU;aAAE,KAAK;;aACxB,KAAK,EAAE,OAAO;aAAE,KAAK;EACd,CAAA;AAEV,eAAO,MAAM,aAAa,YAAI,SAAS,EAAE,IAAI,EAAE,IAAI,CAAU,CAAA;AAE7D,eAAO,MAAM,+BAA+B,YAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAU,CAAA;AAEzE,eAAO,MAAM,+BAA+B,SAAS,CAAA;AAErD,eAAO,MAAM,sBAAsB;;;;GAIlC,CAAA"}
|
|
@@ -6,3 +6,10 @@ export const SPACING_POSITIONS = [
|
|
|
6
6
|
{ value: 'top-0', label: __('Pouze dole', 'brilo-blocks') },
|
|
7
7
|
];
|
|
8
8
|
export const SPACING_SIZES = ['default', 'sm', 'xs'];
|
|
9
|
+
export const FLUID_DECORATION_HEIGHT_PRESETS = [32, 56, 88, 128];
|
|
10
|
+
export const FLUID_DECORATION_DEFAULT_HEIGHT = '56px';
|
|
11
|
+
export const FLUID_DECORATION_UNITS = [
|
|
12
|
+
{ value: 'px', label: 'px', default: 56 },
|
|
13
|
+
{ value: 'rem', label: 'rem', default: 3.5 },
|
|
14
|
+
{ value: '%', label: '%', default: 10 },
|
|
15
|
+
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/controls.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/controls.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAC,mBAAmB,EAAE,kBAAkB,EAAwC,MAAM,SAAS,CAAA;AAmE3G,UAAU,iBAAiB;IACzB,UAAU,EAAE,mBAAmB,CAAA;IAC/B,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;IAC5D,OAAO,EAAE,kBAAkB,EAAE,CAAA;CAC9B;AAED,wBAAgB,YAAY,CAAC,EAAC,UAAU,EAAE,aAAa,EAAE,OAAO,EAAC,EAAE,iBAAiB,+BAsEnF"}
|
|
@@ -1,11 +1,29 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ColorPalette, ContrastChecker } from '@wordpress/block-editor';
|
|
3
|
-
import { PanelBody, SelectControl, TextControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
|
|
2
|
+
import { ColorPalette, ContrastChecker, MediaUpload, MediaUploadCheck } from '@wordpress/block-editor';
|
|
3
|
+
import { BaseControl, Button, ButtonGroup, PanelBody, PanelRow, SelectControl, TextControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, __experimentalUnitControl as UnitControl, } from '@wordpress/components';
|
|
4
4
|
import { __ } from '@wordpress/i18n';
|
|
5
5
|
import { useTenantColorPalette } from '../../../hooks/useTenantColorPalette';
|
|
6
|
-
import { SPACING_POSITIONS, SPACING_SIZES } from './constants';
|
|
6
|
+
import { FLUID_DECORATION_DEFAULT_HEIGHT, FLUID_DECORATION_HEIGHT_PRESETS, FLUID_DECORATION_UNITS, SPACING_POSITIONS, SPACING_SIZES } from './constants';
|
|
7
|
+
function FluidDecorationControl({ label, value, onChange }) {
|
|
8
|
+
var _a;
|
|
9
|
+
const img = value === null || value === void 0 ? void 0 : value.img;
|
|
10
|
+
const height = (_a = value === null || value === void 0 ? void 0 : value.height) !== null && _a !== void 0 ? _a : FLUID_DECORATION_DEFAULT_HEIGHT;
|
|
11
|
+
const handleSelect = (media) => {
|
|
12
|
+
var _a;
|
|
13
|
+
const nextImg = { id: media.id, src: media.url, alt: (_a = media.alt) !== null && _a !== void 0 ? _a : '', width: media.width, height: media.height };
|
|
14
|
+
onChange({ img: nextImg, height });
|
|
15
|
+
};
|
|
16
|
+
const handleRemove = () => onChange(undefined);
|
|
17
|
+
return (_jsxs(BaseControl, { label: label, __nextHasNoMarginBottom: true, children: [_jsx(MediaUploadCheck, { children: _jsx(MediaUpload, { onSelect: handleSelect, allowedTypes: ['image'], value: (img === null || img === void 0 ? void 0 : img.id) || 0, render: ({ open }) => (_jsxs(PanelRow, { children: [(img === null || img === void 0 ? void 0 : img.src) && _jsx("img", { src: img.src, alt: img.alt, style: { maxWidth: 48, maxHeight: 48, objectFit: 'contain' } }), _jsx(Button, { onClick: open, variant: "secondary", size: "small", children: (img === null || img === void 0 ? void 0 : img.src) ? __('Změnit', 'brilo-blocks') : __('Vybrat obrázek', 'brilo-blocks') }), !!(img === null || img === void 0 ? void 0 : img.src) && (_jsx(Button, { onClick: handleRemove, variant: "tertiary", size: "small", isDestructive: true, children: __('Odebrat', 'brilo-blocks') }))] })) }) }), !!(img === null || img === void 0 ? void 0 : img.src) && (_jsxs(_Fragment, { children: [_jsx(UnitControl, { label: __('Výška', 'brilo-blocks'), value: height, units: FLUID_DECORATION_UNITS, onChange: (next) => { var _a; return onChange({ img, height: (_a = next) !== null && _a !== void 0 ? _a : FLUID_DECORATION_DEFAULT_HEIGHT }); } }), _jsx(ButtonGroup, { children: FLUID_DECORATION_HEIGHT_PRESETS.map((preset) => (_jsx(Button, { variant: "secondary", size: "small", onClick: () => onChange({ img, height: `${preset}px` }), children: preset }, preset))) })] }))] }));
|
|
18
|
+
}
|
|
7
19
|
export function BaseControls({ attributes, setAttributes, exclude }) {
|
|
8
|
-
|
|
20
|
+
var _a;
|
|
21
|
+
const { id, spacing, background, textColor, decorations } = attributes;
|
|
9
22
|
const { paletteColors, resolveHex } = useTenantColorPalette();
|
|
10
|
-
|
|
23
|
+
const fluid = (_a = decorations === null || decorations === void 0 ? void 0 : decorations.fluid) !== null && _a !== void 0 ? _a : {};
|
|
24
|
+
const setFluid = (position, value) => {
|
|
25
|
+
const nextFluid = { ...fluid, [position]: value };
|
|
26
|
+
setAttributes({ decorations: { ...decorations, fluid: nextFluid } });
|
|
27
|
+
};
|
|
28
|
+
return (_jsxs(_Fragment, { children: [!exclude.includes('spacing') && (_jsxs(PanelBody, { title: __('Rozestupy', 'brilo-blocks'), children: [_jsx(SelectControl, { label: __('Pozice', 'brilo-blocks'), value: spacing.position, options: [...SPACING_POSITIONS], onChange: (value) => setAttributes({ spacing: { ...spacing, position: value } }) }), _jsx(ToggleGroupControl, { label: __('Velikost', 'brilo-blocks'), value: spacing.size, onChange: (value) => setAttributes({ spacing: { ...spacing, size: value } }), isBlock: true, children: SPACING_SIZES.map((s) => (_jsx(ToggleGroupControlOption, { value: s, label: s === 'default' ? __('Výchozí', 'brilo-blocks') : s.toUpperCase() }, s))) })] })), !exclude.includes('background') && (_jsxs(PanelBody, { title: __('Barvy', 'brilo-blocks'), children: [_jsx("p", { children: __('Pozadí', 'brilo-blocks') }), _jsx(ColorPalette, { colors: paletteColors, value: background || undefined, onChange: (value) => setAttributes({ background: value !== null && value !== void 0 ? value : '' }) }), _jsx("p", { children: __('Barva textu', 'brilo-blocks') }), _jsx(ColorPalette, { colors: paletteColors, value: textColor || undefined, onChange: (value) => setAttributes({ textColor: value !== null && value !== void 0 ? value : '' }) }), !!background && !!textColor && _jsx(ContrastChecker, { backgroundColor: resolveHex(background), textColor: resolveHex(textColor) })] })), !exclude.includes('decorations') && (_jsxs(PanelBody, { title: __('Fluidní dekorace', 'brilo-blocks'), initialOpen: false, children: [_jsx(FluidDecorationControl, { label: __('Nahoře', 'brilo-blocks'), value: fluid.top, onChange: (value) => setFluid('top', value) }), _jsx(FluidDecorationControl, { label: __('Dole', 'brilo-blocks'), value: fluid.bottom, onChange: (value) => setFluid('bottom', value) })] })), !exclude.includes('id') && (_jsx(PanelBody, { title: __('Kotva', 'brilo-blocks'), initialOpen: false, children: _jsx(TextControl, { label: __('ID sekce', 'brilo-blocks'), value: id !== null && id !== void 0 ? id : '', onChange: (value) => setAttributes({ id: value }), help: __('Použije se jako HTML atribut id pro kotevní odkaz.', 'brilo-blocks') }) }))] }));
|
|
11
29
|
}
|
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
import type { BlockConfiguration, BlockEditProps } from '@wordpress/blocks';
|
|
2
2
|
import type { ReactNode } from 'react';
|
|
3
3
|
import type { BriloBlockType } from '../../../types';
|
|
4
|
+
export interface FluidDecorationImage {
|
|
5
|
+
id: number;
|
|
6
|
+
src: string;
|
|
7
|
+
alt: string;
|
|
8
|
+
width?: number;
|
|
9
|
+
height?: number;
|
|
10
|
+
}
|
|
11
|
+
export interface FluidDecoration {
|
|
12
|
+
img?: FluidDecorationImage;
|
|
13
|
+
height: string;
|
|
14
|
+
}
|
|
4
15
|
export interface BaseBlockAttributes extends Record<string, unknown> {
|
|
5
16
|
id: string;
|
|
6
17
|
spacing: {
|
|
@@ -9,8 +20,14 @@ export interface BaseBlockAttributes extends Record<string, unknown> {
|
|
|
9
20
|
};
|
|
10
21
|
background: string;
|
|
11
22
|
textColor: string;
|
|
23
|
+
decorations: {
|
|
24
|
+
fluid?: {
|
|
25
|
+
top?: FluidDecoration;
|
|
26
|
+
bottom?: FluidDecoration;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
12
29
|
}
|
|
13
|
-
export type ExcludableBaseAttr = 'spacing' | 'background' | 'id';
|
|
30
|
+
export type ExcludableBaseAttr = 'spacing' | 'background' | 'id' | 'decorations';
|
|
14
31
|
export interface BaseSectionOptions<TExtra extends Record<string, unknown> = Record<string, never>> extends BriloBlockType {
|
|
15
32
|
supports?: BlockConfiguration['supports'];
|
|
16
33
|
extraAttributes?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAE,cAAc,EAAC,MAAM,mBAAmB,CAAA;AACzE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAA;AACpC,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAE3C,MAAM,WAAW,mBAAoB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAClE,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAA;QAChB,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAE,cAAc,EAAC,MAAM,mBAAmB,CAAA;AACzE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAA;AACpC,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAE3C,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,EAAE,oBAAoB,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,mBAAoB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAClE,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAA;QAChB,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE;QACX,KAAK,CAAC,EAAE;YACN,GAAG,CAAC,EAAE,eAAe,CAAA;YACrB,MAAM,CAAC,EAAE,eAAe,CAAA;SACzB,CAAA;KACF,CAAA;CACF;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,YAAY,GAAG,IAAI,GAAG,aAAa,CAAA;AAEhF,MAAM,WAAW,kBAAkB,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAE,SAAQ,cAAc;IACxH,QAAQ,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAA;IACzC,eAAe,CAAC,EAAE;SACf,CAAC,IAAI,MAAM,MAAM,GAAG;YACnB,IAAI,EAAE,MAAM,CAAA;YACZ,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;SACnB;KACF,CAAA;IACD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,mBAAmB,GAAG,MAAM,CAAC,KAAK,SAAS,CAAA;IAClF,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAC/B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const COLUMNS: readonly [
|
|
1
|
+
export declare const COLUMNS: readonly [4, 3, 2];
|
|
2
2
|
export declare const RATIOS: readonly ['4:3', '3:2', '16:9', '1:1', '2:1', '3:4'];
|
|
3
3
|
export declare const HEADING_LEVELS: readonly [2, 3, 4];
|
|
4
4
|
export declare const DEFAULT_SHADOWS: readonly [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/signpost/signpost-group/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,YAAI,CAAC,EAAE,CAAC,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/signpost/signpost-group/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,YAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU,CAAA;AACzC,eAAO,MAAM,MAAM,YAAI,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAU,CAAA;AAC1E,eAAO,MAAM,cAAc,YAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU,CAAA;AAEhD,eAAO,MAAM,eAAe;aACzB,KAAK,EAAE,MAAM;aAAE,KAAK;;aACpB,KAAK,EAAE,IAAI;aAAE,KAAK;;aAClB,KAAK,EAAE,IAAI;aAAE,KAAK;EACX,CAAA;AAEV,eAAO,MAAM,aAAa;aACvB,KAAK,EAAE,CAAC;aAAE,KAAK,EAAE,GAAG;;aACpB,KAAK,EAAE,GAAG;aAAE,KAAK,EAAE,KAAK;;aACxB,KAAK,EAAE,CAAC;aAAE,KAAK,EAAE,GAAG;;aACpB,KAAK,EAAE,GAAG;aAAE,KAAK,EAAE,KAAK;;aACxB,KAAK,EAAE,CAAC;aAAE,KAAK,EAAE,GAAG;EACb,CAAA"}
|
package/build/index.d.ts
CHANGED
|
@@ -92,6 +92,14 @@ export type { ResponsiveGridItemAttributes, ResponsiveGridItemOptions } from './
|
|
|
92
92
|
export { createResponsiveGridItemBlock, responsiveGridItemDefaults } from './blocks/responsive-grid/responsive-grid-item';
|
|
93
93
|
export type { PostSliderGroupAttributes, PostSliderGroupOptions } from './blocks/post/post-slider-group';
|
|
94
94
|
export { createPostSliderGroupBlock, postSliderGroupDefaults } from './blocks/post/post-slider-group';
|
|
95
|
+
export type { PostsGridAttributes, PostsGridOptions } from './blocks/post/posts-grid';
|
|
96
|
+
export { createPostsGridBlock, postsGridDefaults } from './blocks/post/posts-grid';
|
|
95
97
|
export type { LinkItemAttributes, LinkItemIcon, LinkItemOptions } from './blocks/link/link-item';
|
|
96
98
|
export { createLinkItemBlock, linkItemDefaults } from './blocks/link/link-item';
|
|
99
|
+
export type { ContentWithAsideAttributes, ContentWithAsideOptions } from './blocks/layout/layout-content-w-aside';
|
|
100
|
+
export { createContentWithAsideBlock, contentWithAsideDefaults } from './blocks/layout/layout-content-w-aside';
|
|
101
|
+
export type { ContentAttributes, ContentOptions } from './blocks/layout/layout-content';
|
|
102
|
+
export { createContentBlock, contentDefaults } from './blocks/layout/layout-content';
|
|
103
|
+
export type { AsideAttributes, AsideOptions } from './blocks/layout/layout-aside';
|
|
104
|
+
export { createAsideBlock, asideDefaults } from './blocks/layout/layout-aside';
|
|
97
105
|
//# sourceMappingURL=index.d.ts.map
|
package/build/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,cAAc,EACd,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,gCAAgC,CAAA;AACvC,YAAY,EACV,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,+BAA+B,CAAA;AACtC,YAAY,EAAC,iBAAiB,EAAE,cAAc,EAAC,MAAM,uBAAuB,CAAA;AAC5E,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,uBAAuB,CAAA;AACzE,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,wBAAwB,CAAA;AAC/E,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,wBAAwB,CAAA;AAC5E,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,4BAA4B,CAAA;AACzF,OAAO,EAAC,mBAAmB,EAAE,sBAAsB,EAAC,MAAM,4BAA4B,CAAA;AACtF,YAAY,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,6BAA6B,CAAA;AAC5F,OAAO,EAAC,oBAAoB,EAAE,uBAAuB,EAAC,MAAM,6BAA6B,CAAA;AACzF,YAAY,EAAC,uBAAuB,EAAE,oBAAoB,EAAC,MAAM,8BAA8B,CAAA;AAC/F,OAAO,EAAC,qBAAqB,EAAE,wBAAwB,EAAC,MAAM,8BAA8B,CAAA;AAC5F,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,yBAAyB,CAAA;AAChF,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAA;AAC7E,YAAY,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,0BAA0B,CAAA;AACnF,OAAO,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,0BAA0B,CAAA;AAChF,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,wBAAwB,CAAA;AAC/E,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,wBAAwB,CAAA;AAC5E,YAAY,EAAC,0BAA0B,EAAE,uBAAuB,EAAC,MAAM,oCAAoC,CAAA;AAC3G,OAAO,EAAC,wBAAwB,EAAE,2BAA2B,EAAC,MAAM,oCAAoC,CAAA;AACxG,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,8BAA8B,CAAA;AAC3F,OAAO,EAAC,mBAAmB,EAAE,sBAAsB,EAAC,MAAM,8BAA8B,CAAA;AACxF,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,8BAA8B,CAAA;AAC3F,OAAO,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,8BAA8B,CAAA;AACxF,YAAY,EAAC,sBAAsB,EAAE,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,+BAA+B,CAAA;AAChH,OAAO,EAAC,uBAAuB,EAAE,oBAAoB,EAAC,MAAM,+BAA+B,CAAA;AAC3F,YAAY,EAAC,2BAA2B,EAAE,wBAAwB,EAAC,MAAM,sCAAsC,CAAA;AAC/G,OAAO,EAAC,4BAA4B,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAA;AAC5G,YAAY,EAAC,0BAA0B,EAAE,uBAAuB,EAAC,MAAM,4CAA4C,CAAA;AACnH,OAAO,EAAC,2BAA2B,EAAE,wBAAwB,EAAC,MAAM,4CAA4C,CAAA;AAChH,YAAY,EAAC,+BAA+B,EAAE,4BAA4B,EAAC,MAAM,kDAAkD,CAAA;AACnI,OAAO,EAAC,gCAAgC,EAAE,6BAA6B,EAAC,MAAM,kDAAkD,CAAA;AAChI,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,wBAAwB,CAAA;AAC/E,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,wBAAwB,CAAA;AAC5E,YAAY,EAAC,iBAAiB,EAAE,cAAc,EAAC,MAAM,uBAAuB,CAAA;AAC5E,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,uBAAuB,CAAA;AACzE,YAAY,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,gCAAgC,CAAA;AAC/F,OAAO,EAAC,uBAAuB,EAAE,oBAAoB,EAAC,MAAM,gCAAgC,CAAA;AAC5F,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,+BAA+B,CAAA;AAC5F,OAAO,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,+BAA+B,CAAA;AACzF,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,8BAA8B,CAAA;AAC3F,OAAO,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,8BAA8B,CAAA;AACxF,YAAY,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,6BAA6B,CAAA;AACxF,OAAO,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,6BAA6B,CAAA;AACrF,YAAY,EAAC,0BAA0B,EAAC,MAAM,wCAAwC,CAAA;AACtF,OAAO,EAAC,2BAA2B,EAAE,wBAAwB,EAAC,MAAM,wCAAwC,CAAA;AAC5G,YAAY,EAAC,yBAAyB,EAAC,MAAM,uCAAuC,CAAA;AACpF,OAAO,EAAC,0BAA0B,EAAE,uBAAuB,EAAC,MAAM,uCAAuC,CAAA;AACzG,YAAY,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,gCAAgC,CAAA;AAC/F,OAAO,EAAC,uBAAuB,EAAE,oBAAoB,EAAC,MAAM,gCAAgC,CAAA;AAC5F,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,+BAA+B,CAAA;AAC5F,OAAO,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,+BAA+B,CAAA;AACzF,YAAY,EAAC,uBAAuB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAA;AAClG,OAAO,EAAC,wBAAwB,EAAE,qBAAqB,EAAC,MAAM,iCAAiC,CAAA;AAC/F,YAAY,EAAC,uBAAuB,EAAE,oBAAoB,EAAC,MAAM,kCAAkC,CAAA;AACnG,OAAO,EAAC,wBAAwB,EAAE,qBAAqB,EAAC,MAAM,kCAAkC,CAAA;AAChG,YAAY,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,iCAAiC,CAAA;AAChG,OAAO,EAAC,uBAAuB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAA;AAC7F,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,yBAAyB,CAAA;AAChF,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAA;AAC7E,YAAY,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,0BAA0B,CAAA;AACnF,OAAO,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,0BAA0B,CAAA;AAChF,YAAY,EAAC,wBAAwB,EAAE,qBAAqB,EAAC,MAAM,qCAAqC,CAAA;AACxG,OAAO,EAAC,yBAAyB,EAAE,sBAAsB,EAAC,MAAM,qCAAqC,CAAA;AACrG,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,8BAA8B,CAAA;AAC3F,OAAO,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,8BAA8B,CAAA;AACxF,YAAY,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,6BAA6B,CAAA;AACxF,OAAO,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,6BAA6B,CAAA;AACrF,YAAY,EAAC,mBAAmB,EAAE,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AAC/G,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,GACd,MAAM,gCAAgC,CAAA;AACvC,YAAY,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,0BAA0B,CAAA;AACpD,cAAc,8BAA8B,CAAA;AAC5C,YAAY,EAAC,WAAW,EAAE,UAAU,EAAC,MAAM,0BAA0B,CAAA;AACrE,OAAO,EAAC,eAAe,EAAE,kBAAkB,EAAE,WAAW,EAAC,MAAM,0BAA0B,CAAA;AACzF,YAAY,EAAC,IAAI,EAAE,KAAK,EAAC,MAAM,SAAS,CAAA;AACxC,YAAY,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAA;AACnD,YAAY,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAA;AACjE,OAAO,EAAC,cAAc,EAAE,cAAc,EAAE,qBAAqB,EAAC,MAAM,aAAa,CAAA;AACjF,YAAY,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAA;AACnD,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAA;AAC3D,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,GACf,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,0BAA0B,CAAA;AACjC,YAAY,EAAC,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAA;AAClG,OAAO,EAAC,oBAAoB,EAAE,iBAAiB,EAAE,WAAW,EAAE,mBAAmB,EAAE,qBAAqB,EAAC,MAAM,0BAA0B,CAAA;AACzI,YAAY,EAAC,6BAA6B,EAAE,0BAA0B,EAAC,MAAM,gDAAgD,CAAA;AAC7H,OAAO,EAAC,8BAA8B,EAAE,2BAA2B,EAAC,MAAM,gDAAgD,CAAA;AAC1H,YAAY,EAAC,4BAA4B,EAAE,yBAAyB,EAAC,MAAM,+CAA+C,CAAA;AAC1H,OAAO,EAAC,6BAA6B,EAAE,0BAA0B,EAAC,MAAM,+CAA+C,CAAA;AACvH,YAAY,EAAC,yBAAyB,EAAE,sBAAsB,EAAC,MAAM,iCAAiC,CAAA;AACtG,OAAO,EAAC,0BAA0B,EAAE,uBAAuB,EAAC,MAAM,iCAAiC,CAAA;AACnG,YAAY,EAAC,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAC,MAAM,yBAAyB,CAAA;AAC9F,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/build/index.js
CHANGED
|
@@ -45,4 +45,8 @@ export { createFormFieldBlock, formFieldDefaults, FIELD_TYPES, FIELD_COLUMNS_RAN
|
|
|
45
45
|
export { createResponsiveGridGroupBlock, responsiveGridGroupDefaults } from './blocks/responsive-grid/responsive-grid-group';
|
|
46
46
|
export { createResponsiveGridItemBlock, responsiveGridItemDefaults } from './blocks/responsive-grid/responsive-grid-item';
|
|
47
47
|
export { createPostSliderGroupBlock, postSliderGroupDefaults } from './blocks/post/post-slider-group';
|
|
48
|
+
export { createPostsGridBlock, postsGridDefaults } from './blocks/post/posts-grid';
|
|
48
49
|
export { createLinkItemBlock, linkItemDefaults } from './blocks/link/link-item';
|
|
50
|
+
export { createContentWithAsideBlock, contentWithAsideDefaults } from './blocks/layout/layout-content-w-aside';
|
|
51
|
+
export { createContentBlock, contentDefaults } from './blocks/layout/layout-content';
|
|
52
|
+
export { createAsideBlock, asideDefaults } from './blocks/layout/layout-aside';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@brilo/base-blocks",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.23",
|
|
4
4
|
"author": "Brilo",
|
|
5
5
|
"main": "./build/index.js",
|
|
6
6
|
"types": "./build/index.d.ts",
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@biomejs/biome": "2.5.6",
|
|
24
24
|
"@types/react": "^18.3.12",
|
|
25
|
+
"@types/sortablejs": "^1.15.8",
|
|
25
26
|
"@types/wordpress__block-editor": "^15.0.6",
|
|
26
27
|
"@wordpress/block-editor": "^16.1.0",
|
|
27
28
|
"@wordpress/blocks": "^15.25.0",
|
|
@@ -34,7 +35,9 @@
|
|
|
34
35
|
"typescript": "^7.0.2"
|
|
35
36
|
},
|
|
36
37
|
"dependencies": {
|
|
37
|
-
"clsx": "^2.1.1"
|
|
38
|
+
"clsx": "^2.1.1",
|
|
39
|
+
"react-sortablejs": "^6.1.4",
|
|
40
|
+
"sortablejs": "^1.15.7"
|
|
38
41
|
},
|
|
39
42
|
"files": [
|
|
40
43
|
"build",
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import {Button, Card, CardBody, Flex, FlexBlock, FlexItem, TextControl} from '@wordpress/components'
|
|
2
|
+
import {__} from '@wordpress/i18n'
|
|
3
|
+
import {ReactSortable} from 'react-sortablejs'
|
|
4
|
+
import type {OptionRow} from './normalizeOptions'
|
|
5
|
+
|
|
6
|
+
const EMAIL_PATTERN = /^[^\s@]+@[^\s@]+\.[^\s@]+$/
|
|
7
|
+
|
|
8
|
+
type Props = {
|
|
9
|
+
rows: OptionRow[]
|
|
10
|
+
onChange: (rows: OptionRow[]) => void
|
|
11
|
+
showEmail: boolean
|
|
12
|
+
onClose: () => void
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export function SelectOptionsRepeater({rows, onChange, showEmail, onClose}: Props) {
|
|
16
|
+
const updateRow = (id: string, patch: Partial<OptionRow>) => {
|
|
17
|
+
onChange(rows.map((row) => (row.id === id ? {...row, ...patch} : row)))
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const removeRow = (id: string) => {
|
|
21
|
+
onChange(rows.filter((row) => row.id !== id))
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const addRow = () => {
|
|
25
|
+
onChange([...rows, {id: `${Date.now()}-${Math.random()}`, label: '', value: '', email: ''}])
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
return (
|
|
29
|
+
<div className="i-form-field__options-repeater">
|
|
30
|
+
<ReactSortable list={rows} setList={onChange} handle=".i-form-field__option-drag-handle" animation={150}>
|
|
31
|
+
{rows.map((row) => {
|
|
32
|
+
const isEmailInvalid = row.email.trim() !== '' && !EMAIL_PATTERN.test(row.email.trim())
|
|
33
|
+
|
|
34
|
+
return (
|
|
35
|
+
<Card size="small" className="i-form-field__option-row" key={row.id}>
|
|
36
|
+
<CardBody>
|
|
37
|
+
<Flex align="flex-start" gap={3}>
|
|
38
|
+
<FlexItem>
|
|
39
|
+
<span className="i-form-field__option-drag-handle" aria-hidden="true">
|
|
40
|
+
⠿
|
|
41
|
+
</span>
|
|
42
|
+
</FlexItem>
|
|
43
|
+
|
|
44
|
+
<FlexBlock>
|
|
45
|
+
<Flex direction="column" gap={3}>
|
|
46
|
+
<FlexItem>
|
|
47
|
+
<TextControl
|
|
48
|
+
label={__('Popisek', 'brilo-blocks')}
|
|
49
|
+
placeholder={__('Popisek možnosti', 'brilo-blocks')}
|
|
50
|
+
value={row.label}
|
|
51
|
+
onChange={(label) => updateRow(row.id, {label})}
|
|
52
|
+
/>
|
|
53
|
+
</FlexItem>
|
|
54
|
+
|
|
55
|
+
<FlexItem>
|
|
56
|
+
<TextControl
|
|
57
|
+
label={__('Hodnota', 'brilo-blocks')}
|
|
58
|
+
placeholder={__('auto (dle popisku)', 'brilo-blocks')}
|
|
59
|
+
value={row.value}
|
|
60
|
+
onChange={(value) => updateRow(row.id, {value})}
|
|
61
|
+
help={__('Volitelné, jinak se odvodí z popisku.', 'brilo-blocks')}
|
|
62
|
+
/>
|
|
63
|
+
</FlexItem>
|
|
64
|
+
|
|
65
|
+
{showEmail && (
|
|
66
|
+
<FlexItem>
|
|
67
|
+
<TextControl
|
|
68
|
+
label={__('E-mail', 'brilo-blocks')}
|
|
69
|
+
type="email"
|
|
70
|
+
placeholder={__('Email příjemce (volitelné)', 'brilo-blocks')}
|
|
71
|
+
value={row.email}
|
|
72
|
+
onChange={(email) => updateRow(row.id, {email})}
|
|
73
|
+
help={isEmailInvalid ? __('Neplatný formát emailu.', 'brilo-blocks') : undefined}
|
|
74
|
+
/>
|
|
75
|
+
</FlexItem>
|
|
76
|
+
)}
|
|
77
|
+
</Flex>
|
|
78
|
+
</FlexBlock>
|
|
79
|
+
|
|
80
|
+
<FlexItem>
|
|
81
|
+
<Button
|
|
82
|
+
icon="no-alt"
|
|
83
|
+
size="small"
|
|
84
|
+
variant="tertiary"
|
|
85
|
+
isDestructive
|
|
86
|
+
label={__('Odebrat možnost', 'brilo-blocks')}
|
|
87
|
+
onClick={() => removeRow(row.id)}
|
|
88
|
+
/>
|
|
89
|
+
</FlexItem>
|
|
90
|
+
</Flex>
|
|
91
|
+
</CardBody>
|
|
92
|
+
</Card>
|
|
93
|
+
)
|
|
94
|
+
})}
|
|
95
|
+
</ReactSortable>
|
|
96
|
+
|
|
97
|
+
<Flex className="i-form-field__options-footer" justify="flex-start" gap={2}>
|
|
98
|
+
<FlexItem>
|
|
99
|
+
<Button variant="secondary" onClick={addRow}>
|
|
100
|
+
{__('Přidat možnost', 'brilo-blocks')}
|
|
101
|
+
</Button>
|
|
102
|
+
</FlexItem>
|
|
103
|
+
<FlexItem>
|
|
104
|
+
<Button variant="tertiary" onClick={onClose}>
|
|
105
|
+
{__('Zavřít', 'brilo-blocks')}
|
|
106
|
+
</Button>
|
|
107
|
+
</FlexItem>
|
|
108
|
+
</Flex>
|
|
109
|
+
</div>
|
|
110
|
+
)
|
|
111
|
+
}
|