@brilo/base-blocks 0.1.23 → 0.1.25

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.
Files changed (57) hide show
  1. package/build/.tsbuildinfo +1 -1
  2. package/build/blocks/anchor/anchor-group/constants.d.ts +24 -0
  3. package/build/blocks/anchor/anchor-group/constants.d.ts.map +1 -0
  4. package/build/blocks/anchor/anchor-group/constants.js +12 -0
  5. package/build/blocks/anchor/anchor-group/edit.d.ts +6 -0
  6. package/build/blocks/anchor/anchor-group/edit.d.ts.map +1 -0
  7. package/build/blocks/anchor/anchor-group/edit.js +28 -0
  8. package/build/blocks/anchor/anchor-group/factory.d.ts +7 -0
  9. package/build/blocks/anchor/anchor-group/factory.d.ts.map +1 -0
  10. package/build/blocks/anchor/anchor-group/factory.js +33 -0
  11. package/build/blocks/anchor/anchor-group/index.d.ts +6 -0
  12. package/build/blocks/anchor/anchor-group/index.d.ts.map +1 -0
  13. package/build/blocks/anchor/anchor-group/index.js +7 -0
  14. package/build/blocks/anchor/anchor-group/types.d.ts +13 -0
  15. package/build/blocks/anchor/anchor-group/types.d.ts.map +1 -0
  16. package/build/blocks/anchor/anchor-group/types.js +1 -0
  17. package/build/blocks/anchor/anchor-item/constants.d.ts +13 -0
  18. package/build/blocks/anchor/anchor-item/constants.d.ts.map +1 -0
  19. package/build/blocks/anchor/anchor-item/constants.js +7 -0
  20. package/build/blocks/anchor/anchor-item/edit.d.ts +6 -0
  21. package/build/blocks/anchor/anchor-item/edit.d.ts.map +1 -0
  22. package/build/blocks/anchor/anchor-item/edit.js +24 -0
  23. package/build/blocks/anchor/anchor-item/factory.d.ts +5 -0
  24. package/build/blocks/anchor/anchor-item/factory.d.ts.map +1 -0
  25. package/build/blocks/anchor/anchor-item/factory.js +25 -0
  26. package/build/blocks/anchor/anchor-item/index.d.ts +7 -0
  27. package/build/blocks/anchor/anchor-item/index.d.ts.map +1 -0
  28. package/build/blocks/anchor/anchor-item/index.js +9 -0
  29. package/build/blocks/anchor/anchor-item/types.d.ts +18 -0
  30. package/build/blocks/anchor/anchor-item/types.d.ts.map +1 -0
  31. package/build/blocks/anchor/anchor-item/types.js +1 -0
  32. package/build/blocks/link/link-item/edit.d.ts.map +1 -1
  33. package/build/blocks/link/link-item/edit.js +1 -1
  34. package/build/blocks/link/link-item/factory.js +1 -1
  35. package/build/blocks/link/link-item/types.d.ts +1 -0
  36. package/build/blocks/link/link-item/types.d.ts.map +1 -1
  37. package/build/index.d.ts +4 -0
  38. package/build/index.d.ts.map +1 -1
  39. package/build/index.js +2 -0
  40. package/package.json +1 -1
  41. package/src/blocks/anchor/anchor-group/constants.ts +14 -0
  42. package/src/blocks/anchor/anchor-group/edit.tsx +70 -0
  43. package/src/blocks/anchor/anchor-group/editor.scss +52 -0
  44. package/src/blocks/anchor/anchor-group/factory.tsx +43 -0
  45. package/src/blocks/anchor/anchor-group/index.ts +11 -0
  46. package/src/blocks/anchor/anchor-group/types.ts +19 -0
  47. package/src/blocks/anchor/anchor-item/constants.ts +10 -0
  48. package/src/blocks/anchor/anchor-item/edit.tsx +96 -0
  49. package/src/blocks/anchor/anchor-item/editor.scss +22 -0
  50. package/src/blocks/anchor/anchor-item/factory.tsx +29 -0
  51. package/src/blocks/anchor/anchor-item/index.ts +13 -0
  52. package/src/blocks/anchor/anchor-item/types.ts +16 -0
  53. package/src/blocks/link/link-item/edit.tsx +6 -0
  54. package/src/blocks/link/link-item/factory.tsx +1 -1
  55. package/src/blocks/link/link-item/types.ts +1 -0
  56. package/src/editor.scss +2 -0
  57. package/src/index.ts +11 -0
@@ -0,0 +1,24 @@
1
+ export declare const ANCHOR_COLUMNS: readonly [{
2
+ readonly value: '2';
3
+ readonly label: '2';
4
+ }, {
5
+ readonly value: '3';
6
+ readonly label: '3';
7
+ }, {
8
+ readonly value: '4';
9
+ readonly label: '4';
10
+ }, {
11
+ readonly value: '6';
12
+ readonly label: '6';
13
+ }, {
14
+ readonly value: 'auto';
15
+ readonly label: import("@wordpress/i18n").TransformedText<"Auto">;
16
+ }];
17
+ export declare const ANCHOR_ALIGNMENTS: readonly [{
18
+ readonly value: 'left';
19
+ readonly label: import("@wordpress/i18n").TransformedText<"Vlevo">;
20
+ }, {
21
+ readonly value: 'center';
22
+ readonly label: import("@wordpress/i18n").TransformedText<"Na střed">;
23
+ }];
24
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/anchor/anchor-group/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc;aACxB,KAAK,EAAE,GAAG;aAAE,KAAK,EAAE,GAAG;;aACtB,KAAK,EAAE,GAAG;aAAE,KAAK,EAAE,GAAG;;aACtB,KAAK,EAAE,GAAG;aAAE,KAAK,EAAE,GAAG;;aACtB,KAAK,EAAE,GAAG;aAAE,KAAK,EAAE,GAAG;;aACtB,KAAK,EAAE,MAAM;aAAE,KAAK;EACb,CAAA;AAEV,eAAO,MAAM,iBAAiB;aAC3B,KAAK,EAAE,MAAM;aAAE,KAAK;;aACpB,KAAK,EAAE,QAAQ;aAAE,KAAK;EACf,CAAA"}
@@ -0,0 +1,12 @@
1
+ import { __ } from '@wordpress/i18n';
2
+ export const ANCHOR_COLUMNS = [
3
+ { value: '2', label: '2' },
4
+ { value: '3', label: '3' },
5
+ { value: '4', label: '4' },
6
+ { value: '6', label: '6' },
7
+ { value: 'auto', label: __('Auto', 'brilo-blocks') },
8
+ ];
9
+ export const ANCHOR_ALIGNMENTS = [
10
+ { value: 'left', label: __('Vlevo', 'brilo-blocks') },
11
+ { value: 'center', label: __('Na střed', 'brilo-blocks') },
12
+ ];
@@ -0,0 +1,6 @@
1
+ import type { AnchorGroupAttributes, AnchorGroupOptions } from './types';
2
+ export declare function createAnchorGroupEdit(options: AnchorGroupOptions): ({ attributes, setAttributes, }: {
3
+ attributes: AnchorGroupAttributes;
4
+ setAttributes: (a: Partial<AnchorGroupAttributes>) => 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/anchor/anchor-group/edit.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAiC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAA;AAEtG,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,oCAO5D;IACD,UAAU,EAAE,qBAAqB,CAAA;IACjC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAA;CAC3D,iCA+CF"}
@@ -0,0 +1,28 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { InspectorControls } from '@wordpress/block-editor';
3
+ import { PanelBody, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
4
+ import { __ } from '@wordpress/i18n';
5
+ import clsx from 'clsx';
6
+ import { useGroupBlock } from '../../../hooks/useGroupBlock';
7
+ import { ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS } from './constants';
8
+ export function createAnchorGroupEdit(options) {
9
+ var _a, _b;
10
+ const columnsOptions = (_a = options.columnsOptions) !== null && _a !== void 0 ? _a : ANCHOR_COLUMNS;
11
+ const alignments = (_b = options.alignments) !== null && _b !== void 0 ? _b : ANCHOR_ALIGNMENTS;
12
+ return function Edit({ attributes, setAttributes, }) {
13
+ var _a, _b;
14
+ const { columns, align } = attributes;
15
+ const { blockProps, innerBlocksProps } = useGroupBlock({
16
+ blockClassName: clsx((_a = options.blockClassName) !== null && _a !== void 0 ? _a : 'g-anchors'),
17
+ containerClassName: [
18
+ (_b = options.containerClassName) !== null && _b !== void 0 ? _b : 'g-anchors__inner',
19
+ columns === 'auto' ? '--auto' : `u-grid-responsive --cols-${columns}`,
20
+ align === 'center' && 'justify-content-center',
21
+ ],
22
+ allowedBlocks: options.allowedBlocks,
23
+ template: options.template,
24
+ layout: { type: 'default' },
25
+ });
26
+ return (_jsxs(_Fragment, { children: [_jsx(InspectorControls, { children: _jsxs(PanelBody, { title: __('Kotvy', 'brilo-blocks'), children: [_jsx(ToggleGroupControl, { isBlock: true, label: __('Počet sloupců', 'brilo-blocks'), value: columns, onChange: (v) => setAttributes({ columns: v }), children: columnsOptions.map((c) => (_jsx(ToggleGroupControlOption, { value: c.value, label: c.label }, c.value))) }), _jsx(ToggleGroupControl, { isBlock: true, label: __('Zarovnání', 'brilo-blocks'), value: align, onChange: (v) => setAttributes({ align: v }), children: alignments.map((a) => (_jsx(ToggleGroupControlOption, { value: a.value, label: a.label }, a.value))) })] }) }), _jsx("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
27
+ };
28
+ }
@@ -0,0 +1,7 @@
1
+ import type { BlockConfiguration } from '@wordpress/blocks';
2
+ import type { OptionArray } from '../../../types';
3
+ import { ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS } from './constants';
4
+ import type { AnchorGroupAttributes, AnchorGroupOptions } from './types';
5
+ export type { AnchorGroupAttributes, AnchorGroupOptions };
6
+ export declare function createAnchorGroupBlock<TColumnsOptions extends OptionArray = typeof ANCHOR_COLUMNS, TAlignments extends OptionArray = typeof ANCHOR_ALIGNMENTS>(options: AnchorGroupOptions<TColumnsOptions, TAlignments>): BlockConfiguration<AnchorGroupAttributes<TColumnsOptions[number]['value'], TAlignments[number]['value']>>;
7
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/anchor/anchor-group/factory.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAEzD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,SAAS,CAAA;AACxC,OAAO,EAAC,iBAAiB,EAAE,cAAc,EAAC,MAAM,aAAa,CAAA;AAE7D,OAAO,KAAK,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAA;AAEtE,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,CAAA;AAEvD,wBAAgB,sBAAsB,CACpC,eAAe,SAAS,WAAW,GAAG,OAAO,cAAc,EAC3D,WAAW,SAAS,WAAW,GAAG,OAAO,iBAAiB,EAE1D,OAAO,EAAE,kBAAkB,CAAC,eAAe,EAAE,WAAW,CAAC,GACxD,kBAAkB,CAAC,qBAAqB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CA2B3G"}
@@ -0,0 +1,33 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { InnerBlocks } from '@wordpress/block-editor';
3
+ import { __ } from '@wordpress/i18n';
4
+ import { ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS } from './constants';
5
+ import { createAnchorGroupEdit } from './edit';
6
+ export function createAnchorGroupBlock(options) {
7
+ var _a, _b, _c, _d, _e;
8
+ const columnsOptions = (_a = options.columnsOptions) !== null && _a !== void 0 ? _a : ANCHOR_COLUMNS;
9
+ const alignments = (_b = options.alignments) !== null && _b !== void 0 ? _b : ANCHOR_ALIGNMENTS;
10
+ return {
11
+ name: options.name,
12
+ title: (_c = options.title) !== null && _c !== void 0 ? _c : __('Kotvy', 'brilo-blocks'),
13
+ description: options.description,
14
+ category: (_d = options.category) !== null && _d !== void 0 ? _d : 'layout',
15
+ ...(options.parent && { parent: options.parent }),
16
+ icon: (_e = options.icon) !== null && _e !== void 0 ? _e : 'anchor',
17
+ supports: { html: false, customClassName: false },
18
+ attributes: {
19
+ columns: {
20
+ type: 'string',
21
+ default: columnsOptions[columnsOptions.length - 1].value,
22
+ enum: columnsOptions.map((c) => c.value),
23
+ },
24
+ align: {
25
+ type: 'string',
26
+ default: alignments[0].value,
27
+ enum: alignments.map((a) => a.value),
28
+ },
29
+ },
30
+ edit: createAnchorGroupEdit(options),
31
+ save: () => _jsx(InnerBlocks.Content, {}),
32
+ };
33
+ }
@@ -0,0 +1,6 @@
1
+ export type { AnchorAlignment, AnchorColumns, AnchorGroupAttributes, AnchorGroupOptions } from './types';
2
+ export { createAnchorGroupBlock } from './factory';
3
+ export { ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS } from './constants';
4
+ import type { AnchorGroupOptions } from './types';
5
+ export declare const anchorGroupDefaults: AnchorGroupOptions;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/anchor/anchor-group/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,eAAe,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAA;AACtG,OAAO,EAAC,sBAAsB,EAAC,MAAM,WAAW,CAAA;AAChD,OAAO,EAAC,iBAAiB,EAAE,cAAc,EAAC,MAAM,aAAa,CAAA;AAE7D,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,SAAS,CAAA;AAE/C,eAAO,MAAM,mBAAmB,EAAE,kBAIjC,CAAA"}
@@ -0,0 +1,7 @@
1
+ export { createAnchorGroupBlock } from './factory';
2
+ export { ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS } from './constants';
3
+ export const anchorGroupDefaults = {
4
+ name: 'brilo/anchor-group',
5
+ allowedBlocks: ['brilo/anchor-item'],
6
+ template: [['brilo/anchor-item', {}]],
7
+ };
@@ -0,0 +1,13 @@
1
+ import type { BriloBlockType, OptionArray } from '../../../types';
2
+ import type { ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS } from './constants';
3
+ export type AnchorColumns = (typeof ANCHOR_COLUMNS)[number]['value'];
4
+ export type AnchorAlignment = (typeof ANCHOR_ALIGNMENTS)[number]['value'];
5
+ export interface AnchorGroupAttributes<TColumns extends string = AnchorColumns, TAlignment extends string = AnchorAlignment> extends Record<string, unknown> {
6
+ columns: TColumns;
7
+ align: TAlignment;
8
+ }
9
+ export interface AnchorGroupOptions<TColumnsOptions extends OptionArray = typeof ANCHOR_COLUMNS, TAlignments extends OptionArray = typeof ANCHOR_ALIGNMENTS> extends BriloBlockType {
10
+ columnsOptions?: TColumnsOptions;
11
+ alignments?: TAlignments;
12
+ }
13
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/anchor/anchor-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACxD,OAAO,KAAK,EAAC,iBAAiB,EAAE,cAAc,EAAC,MAAM,aAAa,CAAA;AAElE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AACpE,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEzE,MAAM,WAAW,qBAAqB,CAAC,QAAQ,SAAS,MAAM,GAAG,aAAa,EAAE,UAAU,SAAS,MAAM,GAAG,eAAe,CACzH,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,QAAQ,CAAA;IACjB,KAAK,EAAE,UAAU,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB,CACjC,eAAe,SAAS,WAAW,GAAG,OAAO,cAAc,EAC3D,WAAW,SAAS,WAAW,GAAG,OAAO,iBAAiB,CAC1D,SAAQ,cAAc;IACtB,cAAc,CAAC,EAAE,eAAe,CAAA;IAChC,UAAU,CAAC,EAAE,WAAW,CAAA;CACzB"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,13 @@
1
+ export declare const ANCHOR_ICON_TYPES: readonly [{
2
+ readonly value: 'preselected';
3
+ readonly label: import("@wordpress/i18n").TransformedText<"Předdefinovaná">;
4
+ }, {
5
+ readonly value: 'media';
6
+ readonly label: import("@wordpress/i18n").TransformedText<"Médium">;
7
+ }];
8
+ export declare const ANCHOR_ICON_SIZE_RANGE: {
9
+ readonly min: 8;
10
+ readonly max: 100;
11
+ };
12
+ export declare const ANCHOR_ICON_SIZE_DEFAULT = 32;
13
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/anchor/anchor-item/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB;aAC3B,KAAK,EAAE,aAAa;aAAE,KAAK;;aAC3B,KAAK,EAAE,OAAO;aAAE,KAAK;EACd,CAAA;AAEV,eAAO,MAAM,sBAAsB;aAAI,GAAG,EAAE,CAAC;aAAE,GAAG,EAAE,GAAG;CAAU,CAAA;AAEjE,eAAO,MAAM,wBAAwB,KAAK,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { __ } from '@wordpress/i18n';
2
+ export const ANCHOR_ICON_TYPES = [
3
+ { value: 'preselected', label: __('Předdefinovaná', 'brilo-blocks') },
4
+ { value: 'media', label: __('Médium', 'brilo-blocks') },
5
+ ];
6
+ export const ANCHOR_ICON_SIZE_RANGE = { min: 8, max: 100 };
7
+ export const ANCHOR_ICON_SIZE_DEFAULT = 32;
@@ -0,0 +1,6 @@
1
+ import type { AnchorItemAttributes, AnchorItemOptions } from './types';
2
+ export declare function createAnchorItemEdit(options: AnchorItemOptions): ({ attributes, setAttributes, }: {
3
+ attributes: AnchorItemAttributes;
4
+ setAttributes: (a: Partial<AnchorItemAttributes>) => 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/anchor/anchor-item/edit.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAA;AAEpE,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,oCAI1D;IACD,UAAU,EAAE,oBAAoB,CAAA;IAChC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAA;CAC1D,iCAsEF"}
@@ -0,0 +1,24 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ColorPalette, InspectorControls, RichText, useBlockProps } from '@wordpress/block-editor';
3
+ import { BaseControl, PanelBody, RangeControl, TextControl, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
4
+ import { __ } from '@wordpress/i18n';
5
+ import clsx from 'clsx';
6
+ import { ItemIconControl, ItemIconPreview } from '../../../components/ItemIconControl';
7
+ import { useTenantColorPalette } from '../../../hooks/useTenantColorPalette';
8
+ import { ANCHOR_ICON_SIZE_RANGE, ANCHOR_ICON_TYPES } from './constants';
9
+ export function createAnchorItemEdit(options) {
10
+ return function Edit({ attributes, setAttributes, }) {
11
+ var _a;
12
+ var _b;
13
+ const { title, url, icon, iconSize, iconColor, iconPosition } = attributes;
14
+ const { paletteColors } = useTenantColorPalette();
15
+ const hasIcon = icon.src || ((_a = icon.media) === null || _a === void 0 ? void 0 : _a.id);
16
+ const blockProps = useBlockProps({ className: clsx((_b = options.blockClassName) !== null && _b !== void 0 ? _b : 'i-anchor') });
17
+ const iconPreviewStyle = {
18
+ maxWidth: iconSize,
19
+ flex: `0 0 ${iconSize}px`,
20
+ '--icon-color': iconColor || undefined,
21
+ };
22
+ return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsxs(PanelBody, { title: __('Odkaz', 'brilo-blocks'), children: [_jsx(TextControl, { label: __('Titulek', 'brilo-blocks'), value: title, onChange: (v) => setAttributes({ title: v }) }), _jsx(TextControl, { label: __('URL', 'brilo-blocks'), value: url.src, onChange: (v) => setAttributes({ url: { ...url, src: v } }) }), _jsx(ToggleControl, { label: __('Otevřít v nové záložce', 'brilo-blocks'), checked: url.blank, onChange: (v) => setAttributes({ url: { ...url, blank: v } }) })] }), _jsxs(PanelBody, { title: __('Ikona', 'brilo-blocks'), children: [_jsx(ItemIconControl, { icon: icon, setAttributes: setAttributes, iconTypes: ANCHOR_ICON_TYPES, options: options }), _jsx(RangeControl, { label: __('Velikost ikony (px)', 'brilo-blocks'), value: iconSize, onChange: (v) => setAttributes({ iconSize: v !== null && v !== void 0 ? v : ANCHOR_ICON_SIZE_RANGE.min }), min: ANCHOR_ICON_SIZE_RANGE.min, max: ANCHOR_ICON_SIZE_RANGE.max }), _jsx(BaseControl, { label: __('Barva ikony', 'brilo-blocks'), id: "anchor-item-icon-color", children: _jsx(ColorPalette, { colors: paletteColors, value: iconColor || undefined, onChange: (v) => setAttributes({ iconColor: v !== null && v !== void 0 ? v : '' }) }) }), _jsxs(ToggleGroupControl, { isBlock: true, label: __('Pozice ikony', 'brilo-blocks'), value: iconPosition, onChange: (v) => setAttributes({ iconPosition: v }), children: [_jsx(ToggleGroupControlOption, { value: "before", label: __('Před textem', 'brilo-blocks') }), _jsx(ToggleGroupControlOption, { value: "after", label: __('Za textem', 'brilo-blocks') })] })] })] }), _jsxs("div", { ...blockProps, children: [hasIcon && iconPosition === 'before' && (_jsx("span", { className: "i-anchor__icon", style: iconPreviewStyle, children: _jsx(ItemIconPreview, { icon: icon, setAttributes: setAttributes, options: options }) })), _jsx(RichText, { tagName: "span", className: "i-anchor__title", value: title, onChange: (v) => setAttributes({ title: v }), placeholder: __('Titulek kotvy...', 'brilo-blocks'), allowedFormats: [] }), hasIcon && iconPosition === 'after' && (_jsx("span", { className: "i-anchor__icon", style: iconPreviewStyle, children: _jsx(ItemIconPreview, { icon: icon, setAttributes: setAttributes, options: options }) }))] })] }));
23
+ };
24
+ }
@@ -0,0 +1,5 @@
1
+ import type { BlockConfiguration } from '@wordpress/blocks';
2
+ import type { AnchorItemAttributes, AnchorItemOptions } from './types';
3
+ export type { AnchorItemAttributes, AnchorItemOptions };
4
+ export declare function createAnchorItemBlock(options: AnchorItemOptions): BlockConfiguration<AnchorItemAttributes>;
5
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/anchor/anchor-item/factory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAIzD,OAAO,KAAK,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAA;AAEpE,YAAY,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,CAAA;AAErD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,iBAAiB,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,CAoB1G"}
@@ -0,0 +1,25 @@
1
+ import { __ } from '@wordpress/i18n';
2
+ import { ANCHOR_ICON_SIZE_DEFAULT } from './constants';
3
+ import { createAnchorItemEdit } from './edit';
4
+ export function createAnchorItemBlock(options) {
5
+ var _a, _b, _c;
6
+ return {
7
+ name: options.name,
8
+ title: (_a = options.title) !== null && _a !== void 0 ? _a : __('Kotva', 'brilo-blocks'),
9
+ description: options.description,
10
+ category: (_b = options.category) !== null && _b !== void 0 ? _b : 'text',
11
+ ...(options.parent && { parent: options.parent }),
12
+ icon: (_c = options.icon) !== null && _c !== void 0 ? _c : 'admin-links',
13
+ supports: { html: false, customClassName: false },
14
+ attributes: {
15
+ title: { type: 'string', default: '' },
16
+ url: { type: 'object', default: { src: '', blank: false } },
17
+ icon: { type: 'object', default: { type: 'preselected', src: '', media: {} } },
18
+ iconSize: { type: 'number', default: ANCHOR_ICON_SIZE_DEFAULT },
19
+ iconColor: { type: 'string', default: '' },
20
+ iconPosition: { type: 'string', default: 'before', enum: ['before', 'after'] },
21
+ },
22
+ edit: createAnchorItemEdit(options),
23
+ save: () => null,
24
+ };
25
+ }
@@ -0,0 +1,7 @@
1
+ export type { AnchorItemAttributes, AnchorItemOptions } from './types';
2
+ export { createAnchorItemBlock } from './factory';
3
+ export { createAnchorItemEdit } from './edit';
4
+ export { ANCHOR_ICON_SIZE_DEFAULT, ANCHOR_ICON_SIZE_RANGE, ANCHOR_ICON_TYPES } from './constants';
5
+ import type { AnchorItemOptions } from './types';
6
+ export declare const anchorItemDefaults: AnchorItemOptions;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/anchor/anchor-item/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,SAAS,CAAA;AACpE,OAAO,EAAC,qBAAqB,EAAC,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAC,oBAAoB,EAAC,MAAM,QAAQ,CAAA;AAC3C,OAAO,EAAC,wBAAwB,EAAE,sBAAsB,EAAE,iBAAiB,EAAC,MAAM,aAAa,CAAA;AAE/F,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,SAAS,CAAA;AAE9C,eAAO,MAAM,kBAAkB,EAAE,iBAKhC,CAAA"}
@@ -0,0 +1,9 @@
1
+ export { createAnchorItemBlock } from './factory';
2
+ export { createAnchorItemEdit } from './edit';
3
+ export { ANCHOR_ICON_SIZE_DEFAULT, ANCHOR_ICON_SIZE_RANGE, ANCHOR_ICON_TYPES } from './constants';
4
+ export const anchorItemDefaults = {
5
+ name: 'brilo/anchor-item',
6
+ parent: ['brilo/anchor-group'],
7
+ icons: [],
8
+ iconsSrc: '',
9
+ };
@@ -0,0 +1,18 @@
1
+ import type { BriloBlockType, Icon } from '../../../types';
2
+ import type { IconType } from '../../../components/IconControl';
3
+ export interface AnchorItemAttributes extends Record<string, unknown> {
4
+ title: string;
5
+ url: {
6
+ src: string;
7
+ blank: boolean;
8
+ };
9
+ icon: Icon;
10
+ iconSize: number;
11
+ iconColor: string;
12
+ iconPosition: 'before' | 'after';
13
+ }
14
+ export interface AnchorItemOptions extends BriloBlockType {
15
+ icons: IconType[];
16
+ iconsSrc: string;
17
+ }
18
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/anchor/anchor-item/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,IAAI,EAAC,MAAM,SAAS,CAAA;AACjD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAA;AAEtD,MAAM,WAAW,oBAAqB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAC,CAAA;IAClC,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,QAAQ,GAAG,OAAO,CAAA;CACjC;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1 +1 @@
1
- {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/link/link-item/edit.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAA;AAEhE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,oCAItD;IACD,UAAU,EAAE,kBAAkB,CAAA;IAC9B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAA;CACxD,iCAoGF"}
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/link/link-item/edit.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAA;AAEhE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,oCAItD;IACD,UAAU,EAAE,kBAAkB,CAAA;IAC9B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAA;CACxD,iCA0GF"}
@@ -20,6 +20,6 @@ export function createLinkItemEdit(options) {
20
20
  style: color ? { color } : undefined,
21
21
  });
22
22
  const iconPreviewStyle = { maxWidth: icon.size, flex: `0 0 ${icon.size}px` };
23
- return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsxs(PanelBody, { title: __('Odkaz', 'brilo-blocks'), children: [_jsx(TextControl, { label: __('URL', 'brilo-blocks'), value: url.src, onChange: (v) => setAttributes({ url: { ...url, src: v } }) }), _jsx(ToggleControl, { label: __('Otevřít v nové záložce', 'brilo-blocks'), checked: url.blank, onChange: (v) => setAttributes({ url: { ...url, blank: v } }) })] }), _jsxs(PanelBody, { title: __('Ikona', 'brilo-blocks'), initialOpen: false, children: [_jsx(ItemIconControl, { icon: icon, setAttributes: setIconBase, iconTypes: ICON_TYPES, options: options }), hasIcon && (_jsxs(_Fragment, { children: [_jsxs(ToggleGroupControl, { isBlock: true, label: __('Pozice', 'brilo-blocks'), value: icon.position, onChange: (v) => setAttributes({ icon: { ...icon, position: String(v) } }), children: [_jsx(ToggleGroupControlOption, { value: "before", label: __('Před', 'brilo-blocks') }), _jsx(ToggleGroupControlOption, { value: "after", label: __('Za', 'brilo-blocks') })] }), _jsx(RangeControl, { label: __('Velikost (px)', 'brilo-blocks'), value: icon.size, onChange: (v) => setAttributes({ icon: { ...icon, size: v !== null && v !== void 0 ? v : 24 } }), min: 8, max: 80, step: 1 })] }))] }), _jsxs(PanelBody, { title: __('Styl', 'brilo-blocks'), initialOpen: false, children: [_jsx("p", { children: __('Barva', 'brilo-blocks') }), _jsx(ColorPalette, { colors: paletteColors, value: color || undefined, onChange: (v) => setAttributes({ color: v !== null && v !== void 0 ? v : '' }) }), _jsx(ToggleControl, { label: __('Podtržení výchozí', 'brilo-blocks'), checked: underline_initial, onChange: (v) => setAttributes({ underline_initial: v }) }), _jsx(RangeControl, { label: __('Velikost textu (px)', 'brilo-blocks'), value: size, onChange: (v) => setAttributes({ size: v !== null && v !== void 0 ? v : 16 }), min: 8, max: 80, step: 1 })] })] }), _jsxs("div", { ...blockProps, children: [hasIcon && icon.position === 'before' && (_jsx("span", { className: "link-item__icon", style: iconPreviewStyle, children: _jsx(ItemIconPreview, { icon: icon, setAttributes: setIconBase, options: options }) })), _jsx(RichText, { tagName: "span", className: "link-item__title", value: title, onChange: (v) => setAttributes({ title: v }), placeholder: __('Text odkazu...', 'brilo-blocks'), allowedFormats: ['core/bold', 'core/italic'] }), hasIcon && icon.position === 'after' && (_jsx("span", { className: "link-item__icon", style: iconPreviewStyle, children: _jsx(ItemIconPreview, { icon: icon, setAttributes: setIconBase, options: options }) }))] })] }));
23
+ return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsxs(PanelBody, { title: __('Odkaz', 'brilo-blocks'), children: [_jsx(TextControl, { label: __('URL', 'brilo-blocks'), value: url.src, onChange: (v) => setAttributes({ url: { ...url, src: v } }) }), _jsx(ToggleControl, { label: __('Otevřít v nové záložce', 'brilo-blocks'), checked: url.blank, onChange: (v) => setAttributes({ url: { ...url, blank: v } }) })] }), _jsxs(PanelBody, { title: __('Ikona', 'brilo-blocks'), initialOpen: false, children: [_jsx(ItemIconControl, { icon: icon, setAttributes: setIconBase, iconTypes: ICON_TYPES, options: options }), hasIcon && (_jsxs(_Fragment, { children: [_jsxs(ToggleGroupControl, { isBlock: true, label: __('Pozice', 'brilo-blocks'), value: icon.position, onChange: (v) => setAttributes({ icon: { ...icon, position: String(v) } }), children: [_jsx(ToggleGroupControlOption, { value: "before", label: __('Před', 'brilo-blocks') }), _jsx(ToggleGroupControlOption, { value: "after", label: __('Za', 'brilo-blocks') })] }), _jsx(RangeControl, { label: __('Velikost (px)', 'brilo-blocks'), value: icon.size, onChange: (v) => setAttributes({ icon: { ...icon, size: v !== null && v !== void 0 ? v : 24 } }), min: 8, max: 80, step: 1 }), _jsx("p", { children: __('Barva ikony', 'brilo-blocks') }), _jsx(ColorPalette, { colors: paletteColors, value: icon.color || undefined, onChange: (v) => setAttributes({ icon: { ...icon, color: v !== null && v !== void 0 ? v : '' } }) })] }))] }), _jsxs(PanelBody, { title: __('Styl', 'brilo-blocks'), initialOpen: false, children: [_jsx("p", { children: __('Barva', 'brilo-blocks') }), _jsx(ColorPalette, { colors: paletteColors, value: color || undefined, onChange: (v) => setAttributes({ color: v !== null && v !== void 0 ? v : '' }) }), _jsx(ToggleControl, { label: __('Podtržení výchozí', 'brilo-blocks'), checked: underline_initial, onChange: (v) => setAttributes({ underline_initial: v }) }), _jsx(RangeControl, { label: __('Velikost textu (px)', 'brilo-blocks'), value: size, onChange: (v) => setAttributes({ size: v !== null && v !== void 0 ? v : 16 }), min: 8, max: 80, step: 1 })] })] }), _jsxs("div", { ...blockProps, children: [hasIcon && icon.position === 'before' && (_jsx("span", { className: "link-item__icon", style: iconPreviewStyle, children: _jsx(ItemIconPreview, { icon: icon, setAttributes: setIconBase, options: options }) })), _jsx(RichText, { tagName: "span", className: "link-item__title", value: title, onChange: (v) => setAttributes({ title: v }), placeholder: __('Text odkazu...', 'brilo-blocks'), allowedFormats: ['core/bold', 'core/italic'] }), hasIcon && icon.position === 'after' && (_jsx("span", { className: "link-item__icon", style: iconPreviewStyle, children: _jsx(ItemIconPreview, { icon: icon, setAttributes: setIconBase, options: options }) }))] })] }));
24
24
  };
25
25
  }
@@ -16,7 +16,7 @@ export function createLinkItemBlock(options) {
16
16
  url: { type: 'object', default: { src: '', blank: false } },
17
17
  icon: {
18
18
  type: 'object',
19
- default: { type: 'none', src: '', media: {}, position: 'after', size: 24 },
19
+ default: { type: 'none', src: '', media: {}, position: 'after', size: 24, color: '' },
20
20
  },
21
21
  color: { type: 'string', default: '' },
22
22
  size: { type: 'number', default: 16 },
@@ -7,6 +7,7 @@ export interface LinkItemIcon {
7
7
  media: Media;
8
8
  position: 'before' | 'after';
9
9
  size: number;
10
+ color: string;
10
11
  }
11
12
  export interface LinkItemAttributes extends Record<string, unknown> {
12
13
  title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/link/link-item/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,SAAS,CAAA;AAClC,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAC3C,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAA;AAEtD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,aAAa,GAAG,OAAO,GAAG,MAAM,CAAA;IACtC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;IACZ,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAA;IAC5B,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,kBAAmB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACjE,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAC,CAAA;IAClC,IAAI,EAAE,YAAY,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,iBAAiB,EAAE,OAAO,CAAA;CAC3B;AAED,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/link/link-item/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,SAAS,CAAA;AAClC,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAC3C,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAA;AAEtD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,aAAa,GAAG,OAAO,GAAG,MAAM,CAAA;IACtC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;IACZ,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAA;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,kBAAmB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACjE,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAC,CAAA;IAClC,IAAI,EAAE,YAAY,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,iBAAiB,EAAE,OAAO,CAAA;CAC3B;AAED,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB"}
package/build/index.d.ts CHANGED
@@ -1,3 +1,7 @@
1
+ export type { AnchorAlignment, AnchorColumns, AnchorGroupAttributes, AnchorGroupOptions } from './blocks/anchor/anchor-group';
2
+ export { ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS, anchorGroupDefaults, createAnchorGroupBlock } from './blocks/anchor/anchor-group';
3
+ export type { AnchorItemAttributes, AnchorItemOptions } from './blocks/anchor/anchor-item';
4
+ export { ANCHOR_ICON_SIZE_DEFAULT, ANCHOR_ICON_SIZE_RANGE, ANCHOR_ICON_TYPES, anchorItemDefaults, createAnchorItemBlock, createAnchorItemEdit, } from './blocks/anchor/anchor-item';
1
5
  export type { ContactColumns, ContactGroupAttributes, ContactGroupOptions, } from './blocks/contact/contact-group';
2
6
  export { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT, contactGroupDefaults, createContactGroupBlock, } from './blocks/contact/contact-group';
3
7
  export type { ContactIconSize, ContactIconSizeVariant, ContactItemAttributes, ContactItemOptions, } from './blocks/contact/contact-item';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/build/index.js CHANGED
@@ -1,3 +1,5 @@
1
+ export { ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS, anchorGroupDefaults, createAnchorGroupBlock } from './blocks/anchor/anchor-group';
2
+ export { ANCHOR_ICON_SIZE_DEFAULT, ANCHOR_ICON_SIZE_RANGE, ANCHOR_ICON_TYPES, anchorItemDefaults, createAnchorItemBlock, createAnchorItemEdit, } from './blocks/anchor/anchor-item';
1
3
  export { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT, contactGroupDefaults, createContactGroupBlock, } from './blocks/contact/contact-group';
2
4
  export { CONTACT_ICON_SIZE_RANGE, CONTACT_ICON_SIZES, CONTACT_ICON_TYPES, contactItemDefaults, createContactItemBlock, createContactItemEdit, } from './blocks/contact/contact-item';
3
5
  export { createFaqItemBlock, faqItemDefaults } from './blocks/faq/faq-item';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brilo/base-blocks",
3
- "version": "0.1.23",
3
+ "version": "0.1.25",
4
4
  "author": "Brilo",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",
@@ -0,0 +1,14 @@
1
+ import {__} from '@wordpress/i18n'
2
+
3
+ export const ANCHOR_COLUMNS = [
4
+ {value: '2', label: '2'},
5
+ {value: '3', label: '3'},
6
+ {value: '4', label: '4'},
7
+ {value: '6', label: '6'},
8
+ {value: 'auto', label: __('Auto', 'brilo-blocks')},
9
+ ] as const
10
+
11
+ export const ANCHOR_ALIGNMENTS = [
12
+ {value: 'left', label: __('Vlevo', 'brilo-blocks')},
13
+ {value: 'center', label: __('Na střed', 'brilo-blocks')},
14
+ ] as const
@@ -0,0 +1,70 @@
1
+ import {InspectorControls} from '@wordpress/block-editor'
2
+ import {
3
+ PanelBody,
4
+ __experimentalToggleGroupControl as ToggleGroupControl,
5
+ __experimentalToggleGroupControlOption as ToggleGroupControlOption,
6
+ } from '@wordpress/components'
7
+ import {__} from '@wordpress/i18n'
8
+ import clsx from 'clsx'
9
+ import {useGroupBlock} from '~/hooks/useGroupBlock'
10
+ import {ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS} from './constants'
11
+ import type {AnchorAlignment, AnchorColumns, AnchorGroupAttributes, AnchorGroupOptions} from './types'
12
+
13
+ export function createAnchorGroupEdit(options: AnchorGroupOptions) {
14
+ const columnsOptions = options.columnsOptions ?? ANCHOR_COLUMNS
15
+ const alignments = options.alignments ?? ANCHOR_ALIGNMENTS
16
+
17
+ return function Edit({
18
+ attributes,
19
+ setAttributes,
20
+ }: {
21
+ attributes: AnchorGroupAttributes
22
+ setAttributes: (a: Partial<AnchorGroupAttributes>) => void
23
+ }) {
24
+ const {columns, align} = attributes
25
+
26
+ const {blockProps, innerBlocksProps} = useGroupBlock({
27
+ blockClassName: clsx(options.blockClassName ?? 'g-anchors'),
28
+ containerClassName: [
29
+ options.containerClassName ?? 'g-anchors__inner',
30
+ columns === 'auto' ? '--auto' : `u-grid-responsive --cols-${columns}`,
31
+ align === 'center' && 'justify-content-center',
32
+ ],
33
+ allowedBlocks: options.allowedBlocks,
34
+ template: options.template,
35
+ layout: {type: 'default'},
36
+ })
37
+
38
+ return (
39
+ <>
40
+ <InspectorControls>
41
+ <PanelBody title={__('Kotvy', 'brilo-blocks')}>
42
+ <ToggleGroupControl
43
+ isBlock
44
+ label={__('Počet sloupců', 'brilo-blocks')}
45
+ value={columns}
46
+ onChange={(v) => setAttributes({columns: v as AnchorColumns})}
47
+ >
48
+ {columnsOptions.map((c) => (
49
+ <ToggleGroupControlOption key={c.value} value={c.value} label={c.label} />
50
+ ))}
51
+ </ToggleGroupControl>
52
+ <ToggleGroupControl
53
+ isBlock
54
+ label={__('Zarovnání', 'brilo-blocks')}
55
+ value={align}
56
+ onChange={(v) => setAttributes({align: v as AnchorAlignment})}
57
+ >
58
+ {alignments.map((a) => (
59
+ <ToggleGroupControlOption key={a.value} value={a.value} label={a.label} />
60
+ ))}
61
+ </ToggleGroupControl>
62
+ </PanelBody>
63
+ </InspectorControls>
64
+ <div {...blockProps}>
65
+ <div {...innerBlocksProps} />
66
+ </div>
67
+ </>
68
+ )
69
+ }
70
+ }
@@ -0,0 +1,52 @@
1
+ @layer base {
2
+ .g-anchors {
3
+ border: 1px solid #eee;
4
+ padding: 16px;
5
+
6
+ .g-anchors__inner {
7
+ &.--auto {
8
+ display: flex;
9
+ flex-wrap: wrap;
10
+ gap: 8px;
11
+ }
12
+
13
+ // .u-grid-responsive itself is a frontoffice utility class, not loaded in the
14
+ // editor bundle — recreate just enough of it here for the admin preview.
15
+ &.u-grid-responsive {
16
+ display: grid;
17
+ grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
18
+ gap: 16px;
19
+
20
+ &.--cols-2 {
21
+ grid-template-columns: repeat(2, minmax(0, 1fr));
22
+ }
23
+
24
+ &.--cols-3 {
25
+ grid-template-columns: repeat(3, minmax(0, 1fr));
26
+ }
27
+
28
+ &.--cols-4 {
29
+ grid-template-columns: repeat(4, minmax(0, 1fr));
30
+ }
31
+
32
+ &.--cols-6 {
33
+ grid-template-columns: repeat(6, minmax(0, 1fr));
34
+ }
35
+ }
36
+
37
+ &.justify-content-center {
38
+ justify-content: center;
39
+ }
40
+ }
41
+ }
42
+ }
43
+
44
+ // WP core sets `margin-left/right: auto` on `.wp-block` children of containers whose
45
+ // layout type isn't flex/grid (ours is `default`). That rule is UNLAYERED, so a
46
+ // layered override can't beat it regardless of specificity — keep this UNLAYERED and
47
+ // bump above WP's (0,2,0) specificity to win. Matches contact-group's editor.scss.
48
+ .editor-styles-wrapper .g-anchors__inner > .wp-block {
49
+ margin-left: 0;
50
+ margin-right: 0;
51
+ max-width: none;
52
+ }