@brilo/base-blocks 0.1.47 → 0.1.49

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 (35) hide show
  1. package/build/.tsbuildinfo +1 -1
  2. package/build/blocks/contact/contact-group/constants.d.ts +71 -0
  3. package/build/blocks/contact/contact-group/constants.d.ts.map +1 -1
  4. package/build/blocks/contact/contact-group/constants.js +35 -0
  5. package/build/blocks/contact/contact-group/edit.d.ts.map +1 -1
  6. package/build/blocks/contact/contact-group/edit.js +40 -8
  7. package/build/blocks/contact/contact-group/factory.d.ts +3 -3
  8. package/build/blocks/contact/contact-group/factory.d.ts.map +1 -1
  9. package/build/blocks/contact/contact-group/factory.js +33 -8
  10. package/build/blocks/contact/contact-group/index.d.ts +2 -2
  11. package/build/blocks/contact/contact-group/index.d.ts.map +1 -1
  12. package/build/blocks/contact/contact-group/index.js +1 -1
  13. package/build/blocks/contact/contact-group/types.d.ts +29 -6
  14. package/build/blocks/contact/contact-group/types.d.ts.map +1 -1
  15. package/build/blocks/contact/contact-item/buildPreviewStyle.d.ts +24 -0
  16. package/build/blocks/contact/contact-item/buildPreviewStyle.d.ts.map +1 -0
  17. package/build/blocks/contact/contact-item/buildPreviewStyle.js +31 -0
  18. package/build/blocks/contact/contact-item/edit.d.ts.map +1 -1
  19. package/build/blocks/contact/contact-item/edit.js +10 -8
  20. package/build/blocks/contact/contact-item/factory.js +2 -2
  21. package/build/index.d.ts +2 -2
  22. package/build/index.d.ts.map +1 -1
  23. package/build/index.js +1 -1
  24. package/package.json +1 -1
  25. package/src/blocks/contact/contact-group/constants.ts +42 -0
  26. package/src/blocks/contact/contact-group/edit.tsx +200 -20
  27. package/src/blocks/contact/contact-group/editor.scss +19 -0
  28. package/src/blocks/contact/contact-group/factory.tsx +61 -8
  29. package/src/blocks/contact/contact-group/index.ts +10 -2
  30. package/src/blocks/contact/contact-group/types.ts +48 -6
  31. package/src/blocks/contact/contact-item/buildPreviewStyle.ts +69 -0
  32. package/src/blocks/contact/contact-item/edit.tsx +17 -30
  33. package/src/blocks/contact/contact-item/editor.scss +136 -7
  34. package/src/blocks/contact/contact-item/factory.tsx +2 -2
  35. package/src/index.ts +5 -0
@@ -1,5 +1,6 @@
1
1
  export declare const CONTACT_COLUMNS: readonly [2, 3];
2
2
  export declare const CONTACT_COLUMNS_CONTEXT = "brilo/contact-columns";
3
+ export declare const CONTACT_STYLE_CONTEXT = "brilo/contact-style";
3
4
  export declare const DEFAULT_SHADOWS: readonly [{
4
5
  readonly value: 'none';
5
6
  readonly label: import("@wordpress/i18n").TransformedText<"Žádný">;
@@ -10,6 +11,13 @@ export declare const DEFAULT_SHADOWS: readonly [{
10
11
  readonly value: 'md';
11
12
  readonly label: import("@wordpress/i18n").TransformedText<"Střední">;
12
13
  }];
14
+ export declare const DEFAULT_DIRECTIONS: readonly [{
15
+ readonly value: 'vertical';
16
+ readonly label: import("@wordpress/i18n").TransformedText<"Vertikální">;
17
+ }, {
18
+ readonly value: 'horizontal';
19
+ readonly label: import("@wordpress/i18n").TransformedText<"Horizontální">;
20
+ }];
13
21
  export declare const TEXT_ALIGNS: readonly [{
14
22
  readonly value: 'left';
15
23
  readonly label: import("@wordpress/i18n").TransformedText<"Vlevo">;
@@ -17,4 +25,67 @@ export declare const TEXT_ALIGNS: readonly [{
17
25
  readonly value: 'center';
18
26
  readonly label: import("@wordpress/i18n").TransformedText<"Na střed">;
19
27
  }];
28
+ export declare const DEFAULT_ICON_SIZE = 88;
29
+ export declare const ICON_SIZE_MIN = 4;
30
+ export declare const ICON_SIZE_MAX = 128;
31
+ export declare const DEFAULT_ICON_SIZE_PRESETS: readonly [{
32
+ readonly value: 8;
33
+ readonly label: import("@wordpress/i18n").TransformedText<"XS">;
34
+ }, {
35
+ readonly value: 16;
36
+ readonly label: import("@wordpress/i18n").TransformedText<"SM">;
37
+ }, {
38
+ readonly value: 24;
39
+ readonly label: import("@wordpress/i18n").TransformedText<"MD">;
40
+ }, {
41
+ readonly value: 32;
42
+ readonly label: import("@wordpress/i18n").TransformedText<"LG">;
43
+ }, {
44
+ readonly value: 48;
45
+ readonly label: import("@wordpress/i18n").TransformedText<"XL">;
46
+ }];
47
+ export declare const DEFAULT_ICON_BACKGROUND_SIZE = 88;
48
+ export declare const ICON_BACKGROUND_SIZE_MIN = 16;
49
+ export declare const ICON_BACKGROUND_SIZE_MAX = 240;
50
+ export declare const DEFAULT_ICON_BACKGROUND_SIZE_PRESETS: readonly [{
51
+ readonly value: 48;
52
+ readonly label: import("@wordpress/i18n").TransformedText<"XS">;
53
+ }, {
54
+ readonly value: 64;
55
+ readonly label: import("@wordpress/i18n").TransformedText<"SM">;
56
+ }, {
57
+ readonly value: 88;
58
+ readonly label: import("@wordpress/i18n").TransformedText<"Výchozí">;
59
+ }, {
60
+ readonly value: 104;
61
+ readonly label: import("@wordpress/i18n").TransformedText<"LG">;
62
+ }, {
63
+ readonly value: 128;
64
+ readonly label: import("@wordpress/i18n").TransformedText<"XL">;
65
+ }];
66
+ export declare const DEFAULT_ICON_BACKGROUND_SHAPES: readonly [{
67
+ readonly value: 'none';
68
+ readonly label: import("@wordpress/i18n").TransformedText<"Žádný">;
69
+ }, {
70
+ readonly value: 'circle';
71
+ readonly label: import("@wordpress/i18n").TransformedText<"Kruh">;
72
+ }, {
73
+ readonly value: 'triangle';
74
+ readonly label: import("@wordpress/i18n").TransformedText<"Trojúhelník">;
75
+ }, {
76
+ readonly value: 'rhombus';
77
+ readonly label: import("@wordpress/i18n").TransformedText<"Kosočtverec">;
78
+ }, {
79
+ readonly value: 'octagon';
80
+ readonly label: import("@wordpress/i18n").TransformedText<"Osmiúhelník">;
81
+ }, {
82
+ readonly value: 'bevel';
83
+ readonly label: import("@wordpress/i18n").TransformedText<"Zkosený">;
84
+ }, {
85
+ readonly value: 'rabbet';
86
+ readonly label: import("@wordpress/i18n").TransformedText<"Drážkovaný">;
87
+ }, {
88
+ readonly value: 'parallelogram';
89
+ readonly label: import("@wordpress/i18n").TransformedText<"Rovnoběžník">;
90
+ }];
20
91
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-group/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,YAAI,CAAC,EAAE,CAAC,CAAU,CAAA;AAE9C,eAAO,MAAM,uBAAuB,0BAA0B,CAAA;AAE9D,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,WAAW;aACrB,KAAK,EAAE,MAAM;aAAE,KAAK;;aACpB,KAAK,EAAE,QAAQ;aAAE,KAAK;EACf,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-group/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,YAAI,CAAC,EAAE,CAAC,CAAU,CAAA;AAE9C,eAAO,MAAM,uBAAuB,0BAA0B,CAAA;AAE9D,eAAO,MAAM,qBAAqB,wBAAwB,CAAA;AAE1D,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,kBAAkB;aAC5B,KAAK,EAAE,UAAU;aAAE,KAAK;;aACxB,KAAK,EAAE,YAAY;aAAE,KAAK;EACnB,CAAA;AAEV,eAAO,MAAM,WAAW;aACrB,KAAK,EAAE,MAAM;aAAE,KAAK;;aACpB,KAAK,EAAE,QAAQ;aAAE,KAAK;EACf,CAAA;AAEV,eAAO,MAAM,iBAAiB,KAAK,CAAA;AACnC,eAAO,MAAM,aAAa,IAAI,CAAA;AAC9B,eAAO,MAAM,aAAa,MAAM,CAAA;AAEhC,eAAO,MAAM,yBAAyB;aACnC,KAAK,EAAE,CAAC;aAAE,KAAK;;aACf,KAAK,EAAE,EAAE;aAAE,KAAK;;aAChB,KAAK,EAAE,EAAE;aAAE,KAAK;;aAChB,KAAK,EAAE,EAAE;aAAE,KAAK;;aAChB,KAAK,EAAE,EAAE;aAAE,KAAK;EACT,CAAA;AAEV,eAAO,MAAM,4BAA4B,KAAK,CAAA;AAC9C,eAAO,MAAM,wBAAwB,KAAK,CAAA;AAC1C,eAAO,MAAM,wBAAwB,MAAM,CAAA;AAE3C,eAAO,MAAM,oCAAoC;aAC9C,KAAK,EAAE,EAAE;aAAE,KAAK;;aAChB,KAAK,EAAE,EAAE;aAAE,KAAK;;aAChB,KAAK,EAAE,EAAE;aAAE,KAAK;;aAChB,KAAK,EAAE,GAAG;aAAE,KAAK;;aACjB,KAAK,EAAE,GAAG;aAAE,KAAK;EACV,CAAA;AAEV,eAAO,MAAM,8BAA8B;aACxC,KAAK,EAAE,MAAM;aAAE,KAAK;;aACpB,KAAK,EAAE,QAAQ;aAAE,KAAK;;aACtB,KAAK,EAAE,UAAU;aAAE,KAAK;;aACxB,KAAK,EAAE,SAAS;aAAE,KAAK;;aACvB,KAAK,EAAE,SAAS;aAAE,KAAK;;aACvB,KAAK,EAAE,OAAO;aAAE,KAAK;;aACrB,KAAK,EAAE,QAAQ;aAAE,KAAK;;aACtB,KAAK,EAAE,eAAe;aAAE,KAAK;EACtB,CAAA"}
@@ -1,12 +1,47 @@
1
1
  import { __ } from '@wordpress/i18n';
2
2
  export const CONTACT_COLUMNS = [2, 3];
3
3
  export const CONTACT_COLUMNS_CONTEXT = 'brilo/contact-columns';
4
+ export const CONTACT_STYLE_CONTEXT = 'brilo/contact-style';
4
5
  export const DEFAULT_SHADOWS = [
5
6
  { value: 'none', label: __('Žádný', 'brilo-blocks') },
6
7
  { value: 'sm', label: __('Malý', 'brilo-blocks') },
7
8
  { value: 'md', label: __('Střední', 'brilo-blocks') },
8
9
  ];
10
+ export const DEFAULT_DIRECTIONS = [
11
+ { value: 'vertical', label: __('Vertikální', 'brilo-blocks') },
12
+ { value: 'horizontal', label: __('Horizontální', 'brilo-blocks') },
13
+ ];
9
14
  export const TEXT_ALIGNS = [
10
15
  { value: 'left', label: __('Vlevo', 'brilo-blocks') },
11
16
  { value: 'center', label: __('Na střed', 'brilo-blocks') },
12
17
  ];
18
+ export const DEFAULT_ICON_SIZE = 88;
19
+ export const ICON_SIZE_MIN = 4;
20
+ export const ICON_SIZE_MAX = 128;
21
+ export const DEFAULT_ICON_SIZE_PRESETS = [
22
+ { value: 8, label: __('XS', 'brilo-blocks') },
23
+ { value: 16, label: __('SM', 'brilo-blocks') },
24
+ { value: 24, label: __('MD', 'brilo-blocks') },
25
+ { value: 32, label: __('LG', 'brilo-blocks') },
26
+ { value: 48, label: __('XL', 'brilo-blocks') },
27
+ ];
28
+ export const DEFAULT_ICON_BACKGROUND_SIZE = 88;
29
+ export const ICON_BACKGROUND_SIZE_MIN = 16;
30
+ export const ICON_BACKGROUND_SIZE_MAX = 240;
31
+ export const DEFAULT_ICON_BACKGROUND_SIZE_PRESETS = [
32
+ { value: 48, label: __('XS', 'brilo-blocks') },
33
+ { value: 64, label: __('SM', 'brilo-blocks') },
34
+ { value: 88, label: __('Výchozí', 'brilo-blocks') },
35
+ { value: 104, label: __('LG', 'brilo-blocks') },
36
+ { value: 128, label: __('XL', 'brilo-blocks') },
37
+ ];
38
+ export const DEFAULT_ICON_BACKGROUND_SHAPES = [
39
+ { value: 'none', label: __('Žádný', 'brilo-blocks') },
40
+ { value: 'circle', label: __('Kruh', 'brilo-blocks') },
41
+ { value: 'triangle', label: __('Trojúhelník', 'brilo-blocks') },
42
+ { value: 'rhombus', label: __('Kosočtverec', 'brilo-blocks') },
43
+ { value: 'octagon', label: __('Osmiúhelník', 'brilo-blocks') },
44
+ { value: 'bevel', label: __('Zkosený', 'brilo-blocks') },
45
+ { value: 'rabbet', label: __('Drážkovaný', 'brilo-blocks') },
46
+ { value: 'parallelogram', label: __('Rovnoběžník', 'brilo-blocks') },
47
+ ];
@@ -1 +1 @@
1
- {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-group/edit.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAiB,sBAAsB,EAAE,mBAAmB,EAAkC,MAAM,SAAS,CAAA;AAEzH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,mBAAmB,oCAM9D;IACD,UAAU,EAAE,sBAAsB,CAAA;IAClC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,KAAK,IAAI,CAAA;CAC5D,iCAmFF"}
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-group/edit.tsx"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAGV,sBAAsB,EACtB,mBAAmB,EAKpB,MAAM,SAAS,CAAA;AA+BhB,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,mBAAmB,oCAW9D;IACD,UAAU,EAAE,sBAAsB,CAAA;IAClC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,KAAK,IAAI,CAAA;CAC5D,iCAyMF"}
@@ -1,27 +1,59 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { InspectorControls } from '@wordpress/block-editor';
3
- import { BaseControl, ColorPalette, PanelBody, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
3
+ import { BaseControl, Button, ColorPalette, PanelBody, RangeControl, SelectControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
4
4
  import { __ } from '@wordpress/i18n';
5
5
  import clsx from 'clsx';
6
+ import { ItemSpacingPanel, itemSpacingStyle } from '../../../components/ItemSpacingControl';
6
7
  import { useGroupBlock } from '../../../hooks/useGroupBlock';
7
8
  import { useTenantColorPalette } from '../../../hooks/useTenantColorPalette';
8
- import { CONTACT_COLUMNS, DEFAULT_SHADOWS, TEXT_ALIGNS } from './constants';
9
+ import { CONTACT_COLUMNS, DEFAULT_DIRECTIONS, DEFAULT_ICON_BACKGROUND_SHAPES, DEFAULT_ICON_BACKGROUND_SIZE, DEFAULT_ICON_BACKGROUND_SIZE_PRESETS, DEFAULT_ICON_SIZE, DEFAULT_ICON_SIZE_PRESETS, DEFAULT_SHADOWS, ICON_BACKGROUND_SIZE_MAX, ICON_BACKGROUND_SIZE_MIN, ICON_SIZE_MAX, ICON_SIZE_MIN, TEXT_ALIGNS, } from './constants';
10
+ function PresetSizeControl({ label, value, presets, min, max, onChange, }) {
11
+ return (_jsxs(BaseControl, { label: label, id: `contact-group-size-${label}`, children: [_jsx("div", { style: { display: 'flex', gap: 4, marginBottom: 8, flexWrap: 'wrap' }, children: presets.map((p) => (_jsx(Button, { variant: value === p.value ? 'primary' : 'secondary', size: "small", onClick: () => onChange(p.value), children: p.label }, p.label))) }), _jsx(RangeControl, { value: value, onChange: (v) => onChange(v !== null && v !== void 0 ? v : min), min: min, max: max, step: 1, withInputField: true })] }));
12
+ }
9
13
  export function createContactGroupEdit(options) {
10
- var _a;
14
+ var _a, _b, _c, _d, _e, _f;
11
15
  const COLUMNS = (_a = options.columns) !== null && _a !== void 0 ? _a : CONTACT_COLUMNS;
16
+ const DIRECTIONS = (_b = options.directions) !== null && _b !== void 0 ? _b : DEFAULT_DIRECTIONS;
17
+ const SHADOWS = (_c = options.shadows) !== null && _c !== void 0 ? _c : DEFAULT_SHADOWS;
18
+ const ICON_SIZE_PRESETS = (_d = options.iconSizePresets) !== null && _d !== void 0 ? _d : DEFAULT_ICON_SIZE_PRESETS;
19
+ const ICON_BACKGROUND_SIZE_PRESETS = (_e = options.iconBackgroundSizePresets) !== null && _e !== void 0 ? _e : DEFAULT_ICON_BACKGROUND_SIZE_PRESETS;
20
+ const ICON_BACKGROUND_SHAPES = (_f = options.iconBackgroundShapes) !== null && _f !== void 0 ? _f : DEFAULT_ICON_BACKGROUND_SHAPES;
12
21
  return function Edit({ attributes, setAttributes, }) {
13
22
  var _a, _b;
14
- const { columns, style } = attributes;
15
- const { paletteColors } = useTenantColorPalette();
23
+ const { columns, groupBackgroundColor, spacing } = attributes;
24
+ const { paletteColors, resolveHex } = useTenantColorPalette();
25
+ const savedStyle = attributes.style;
26
+ const style = {
27
+ shadow: SHADOWS[0].value,
28
+ direction: DIRECTIONS[0].value,
29
+ textAlign: 'left',
30
+ borderColor: '',
31
+ backgroundColor: '',
32
+ textColor: '',
33
+ ...savedStyle,
34
+ icon: {
35
+ size: DEFAULT_ICON_SIZE,
36
+ color: '',
37
+ background: '',
38
+ backgroundSize: DEFAULT_ICON_BACKGROUND_SIZE,
39
+ backgroundShape: ICON_BACKGROUND_SHAPES[0].value,
40
+ borderColor: '',
41
+ borderWidth: 1,
42
+ ...savedStyle === null || savedStyle === void 0 ? void 0 : savedStyle.icon,
43
+ },
44
+ };
16
45
  const { blockProps, innerBlocksProps } = useGroupBlock({
17
- blockClassName: clsx((_a = options.blockClassName) !== null && _a !== void 0 ? _a : 'g-contact wp-block-section'),
46
+ blockClassName: clsx((_a = options.blockClassName) !== null && _a !== void 0 ? _a : 'g-contact wp-block-section', `--direction-${style.direction}`, groupBackgroundColor && '--group-background', spacing === 0 && '--connected'),
18
47
  containerClassName: [(_b = options.containerClassName) !== null && _b !== void 0 ? _b : 'g-contact__items', `--cols-${columns}`],
19
- containerStyle: { '--grid-max-col-count': columns },
48
+ containerStyle: { '--grid-max-col-count': columns, ...itemSpacingStyle(spacing) },
20
49
  allowedBlocks: options.allowedBlocks,
21
50
  orientation: 'horizontal',
22
51
  template: options.template,
23
52
  layout: { type: 'default' },
24
53
  });
25
- return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsx(PanelBody, { title: __('Rozložení', 'brilo-blocks'), children: _jsx(ToggleGroupControl, { isBlock: true, label: __('Počet sloupců', 'brilo-blocks'), value: String(columns), onChange: (v) => setAttributes({ columns: Number(v) }), children: COLUMNS.map((c) => (_jsx(ToggleGroupControlOption, { value: String(c), label: String(c) }, c))) }) }), _jsxs(PanelBody, { title: __('Styl', 'brilo-blocks'), children: [_jsx(ToggleGroupControl, { isBlock: true, label: __('Stín', 'brilo-blocks'), value: style.shadow, onChange: (v) => setAttributes({ style: { ...style, shadow: v } }), children: DEFAULT_SHADOWS.map((s) => (_jsx(ToggleGroupControlOption, { value: s.value, label: s.label }, s.value))) }), _jsx(BaseControl, { label: __('Barva okraje', 'brilo-blocks'), help: __('Bez vybrané barvy se okraj nevykreslí.', 'brilo-blocks'), id: "contact-group-border-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.borderColor || undefined, onChange: (value) => setAttributes({ style: { ...style, borderColor: value !== null && value !== void 0 ? value : '' } }) }) }), _jsx(BaseControl, { label: __('Barva pozadí', 'brilo-blocks'), id: "contact-group-background-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.backgroundColor || undefined, onChange: (value) => setAttributes({ style: { ...style, backgroundColor: value !== null && value !== void 0 ? value : '' } }) }) }), _jsx(BaseControl, { label: __('Barva textu', 'brilo-blocks'), id: "contact-group-text-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.textColor || undefined, onChange: (value) => setAttributes({ style: { ...style, textColor: value !== null && value !== void 0 ? value : '' } }) }) }), _jsx(ToggleGroupControl, { isBlock: true, label: __('Zarovnání textu', 'brilo-blocks'), value: style.textAlign, onChange: (v) => setAttributes({ style: { ...style, textAlign: v } }), children: TEXT_ALIGNS.map((a) => (_jsx(ToggleGroupControlOption, { value: a.value, label: a.label }, a.value))) })] })] }), _jsx("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
54
+ const groupStyle = (groupBackgroundColor
55
+ ? { ...blockProps.style, '--group-background-color': resolveHex(groupBackgroundColor) }
56
+ : blockProps.style);
57
+ return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsxs(PanelBody, { title: __('Rozložení', 'brilo-blocks'), children: [_jsx(ToggleGroupControl, { isBlock: true, label: __('Počet sloupců', 'brilo-blocks'), value: String(columns), onChange: (v) => setAttributes({ columns: Number(v) }), children: COLUMNS.map((c) => (_jsx(ToggleGroupControlOption, { value: String(c), label: String(c) }, c))) }), _jsx(ToggleGroupControl, { isBlock: true, label: __('Směr', 'brilo-blocks'), value: style.direction, onChange: (v) => setAttributes({ style: { ...style, direction: v } }), children: DIRECTIONS.map((d) => (_jsx(ToggleGroupControlOption, { value: d.value, label: d.label }, d.value))) }), _jsx(ToggleGroupControl, { isBlock: true, label: __('Zarovnání', 'brilo-blocks'), help: __('Zarovná text i ikonu položky.', 'brilo-blocks'), value: style.textAlign, onChange: (v) => setAttributes({ style: { ...style, textAlign: v } }), children: TEXT_ALIGNS.map((a) => (_jsx(ToggleGroupControlOption, { value: a.value, label: a.label }, a.value))) })] }), _jsxs(PanelBody, { title: __('Styl', 'brilo-blocks'), children: [_jsx(BaseControl, { label: __('Barva pozadí skupiny', 'brilo-blocks'), help: __('Souvislé pozadí za všemi položkami. Vhodné s nulovou mezerou.', 'brilo-blocks'), id: "contact-group-group-background-color", children: _jsx(ColorPalette, { colors: paletteColors, value: groupBackgroundColor || undefined, onChange: (value) => setAttributes({ groupBackgroundColor: value !== null && value !== void 0 ? value : '' }) }) }), _jsx(ToggleGroupControl, { isBlock: true, label: __('Stín položek', 'brilo-blocks'), value: style.shadow, onChange: (v) => setAttributes({ style: { ...style, shadow: v } }), children: SHADOWS.map((s) => (_jsx(ToggleGroupControlOption, { value: s.value, label: s.label }, s.value))) }), _jsx(BaseControl, { label: __('Barva okraje položek', 'brilo-blocks'), help: __('Bez vybrané barvy se okraj nevykreslí.', 'brilo-blocks'), id: "contact-group-border-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.borderColor || undefined, onChange: (value) => setAttributes({ style: { ...style, borderColor: value !== null && value !== void 0 ? value : '' } }) }) }), _jsx(BaseControl, { label: __('Barva pozadí položek', 'brilo-blocks'), id: "contact-group-background-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.backgroundColor || undefined, onChange: (value) => setAttributes({ style: { ...style, backgroundColor: value !== null && value !== void 0 ? value : '' } }) }) }), _jsx(BaseControl, { label: __('Barva textu', 'brilo-blocks'), id: "contact-group-text-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.textColor || undefined, onChange: (value) => setAttributes({ style: { ...style, textColor: value !== null && value !== void 0 ? value : '' } }) }) })] }), _jsxs(PanelBody, { title: __('Ikona', 'brilo-blocks'), initialOpen: false, children: [_jsx(PresetSizeControl, { label: __('Velikost', 'brilo-blocks'), value: style.icon.size, presets: ICON_SIZE_PRESETS, min: ICON_SIZE_MIN, max: ICON_SIZE_MAX, onChange: (v) => setAttributes({ style: { ...style, icon: { ...style.icon, size: v } } }) }), _jsx(BaseControl, { label: __('Barva', 'brilo-blocks'), id: "contact-group-icon-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.icon.color || undefined, onChange: (value) => setAttributes({ style: { ...style, icon: { ...style.icon, color: value !== null && value !== void 0 ? value : '' } } }) }) }), _jsx(BaseControl, { label: __('Pozadí', 'brilo-blocks'), id: "contact-group-icon-background-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.icon.background || undefined, onChange: (value) => setAttributes({ style: { ...style, icon: { ...style.icon, background: value !== null && value !== void 0 ? value : '' } } }) }) }), _jsx(PresetSizeControl, { label: __('Velikost pozadí', 'brilo-blocks'), value: style.icon.backgroundSize, presets: ICON_BACKGROUND_SIZE_PRESETS, min: ICON_BACKGROUND_SIZE_MIN, max: ICON_BACKGROUND_SIZE_MAX, onChange: (v) => setAttributes({ style: { ...style, icon: { ...style.icon, backgroundSize: v } } }) }), style.icon.background && (_jsx(SelectControl, { label: __('Tvar pozadí', 'brilo-blocks'), value: style.icon.backgroundShape, options: [...ICON_BACKGROUND_SHAPES], onChange: (v) => setAttributes({ style: { ...style, icon: { ...style.icon, backgroundShape: v } } }) })), _jsx(BaseControl, { label: __('Barva ohraničení', 'brilo-blocks'), help: __('Bez vybrané barvy se okraj nevykreslí.', 'brilo-blocks'), id: "contact-group-icon-border-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.icon.borderColor || undefined, onChange: (value) => setAttributes({ style: { ...style, icon: { ...style.icon, borderColor: value !== null && value !== void 0 ? value : '' } } }) }) }), style.icon.borderColor && (_jsx(RangeControl, { label: __('Šířka ohraničení (px)', 'brilo-blocks'), value: style.icon.borderWidth, onChange: (v) => setAttributes({ style: { ...style, icon: { ...style.icon, borderWidth: v !== null && v !== void 0 ? v : 0 } } }), min: 0, max: 10, step: 1 }))] }), _jsx(ItemSpacingPanel, { spacing: spacing, onChange: (v) => setAttributes({ spacing: v }) })] }), _jsx("div", { ...blockProps, style: groupStyle, children: _jsx("div", { ...innerBlocksProps }) })] }));
26
58
  };
27
59
  }
@@ -1,7 +1,7 @@
1
1
  import type { BlockConfiguration } from '@wordpress/blocks';
2
- import type { NumberArray } from '../../../types';
3
- import { CONTACT_COLUMNS } from './constants';
2
+ import type { NumberArray, OptionArray } from '../../../types';
3
+ import { CONTACT_COLUMNS, DEFAULT_DIRECTIONS, DEFAULT_ICON_BACKGROUND_SHAPES, DEFAULT_SHADOWS } from './constants';
4
4
  import type { ContactGroupAttributes, ContactGroupOptions } from './types';
5
5
  export type { ContactGroupAttributes, ContactGroupOptions };
6
- export declare function createContactGroupBlock<TColumns extends NumberArray = typeof CONTACT_COLUMNS>(options: ContactGroupOptions<TColumns>): BlockConfiguration<ContactGroupAttributes<TColumns[number]>>;
6
+ export declare function createContactGroupBlock<TColumns extends NumberArray = typeof CONTACT_COLUMNS, TDirections extends OptionArray = typeof DEFAULT_DIRECTIONS, TShadows extends OptionArray = typeof DEFAULT_SHADOWS, TIconBackgroundShapes extends OptionArray = typeof DEFAULT_ICON_BACKGROUND_SHAPES>(options: ContactGroupOptions<TColumns, TDirections, TShadows, TIconBackgroundShapes>): BlockConfiguration<ContactGroupAttributes<TColumns[number], TDirections[number]['value'], TShadows[number]['value'], TIconBackgroundShapes[number]['value']>>;
7
7
  //# sourceMappingURL=factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-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,eAAe,EAA2C,MAAM,aAAa,CAAA;AAErF,OAAO,KAAK,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,SAAS,CAAA;AAExE,YAAY,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,CAAA;AAEzD,wBAAgB,uBAAuB,CAAC,QAAQ,SAAS,WAAW,GAAG,OAAO,eAAe,EAC3F,OAAO,EAAE,mBAAmB,CAAC,QAAQ,CAAC,GACrC,kBAAkB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CA0B9D"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-group/factory.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAGzD,OAAO,KAAK,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACrD,OAAO,EACL,eAAe,EAGf,kBAAkB,EAClB,8BAA8B,EAG9B,eAAe,EAChB,MAAM,aAAa,CAAA;AAEpB,OAAO,KAAK,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,SAAS,CAAA;AAExE,YAAY,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,CAAA;AAEzD,wBAAgB,uBAAuB,CACrC,QAAQ,SAAS,WAAW,GAAG,OAAO,eAAe,EACrD,WAAW,SAAS,WAAW,GAAG,OAAO,kBAAkB,EAC3D,QAAQ,SAAS,WAAW,GAAG,OAAO,eAAe,EACrD,qBAAqB,SAAS,WAAW,GAAG,OAAO,8BAA8B,EAEjF,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,qBAAqB,CAAC,GACnF,kBAAkB,CACnB,sBAAsB,CACpB,QAAQ,CAAC,MAAM,CAAC,EAChB,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAC5B,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EACzB,qBAAqB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CACvC,CACF,CAyDA"}
@@ -1,30 +1,55 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { InnerBlocks } from '@wordpress/block-editor';
3
3
  import { __ } from '@wordpress/i18n';
4
- import { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT, DEFAULT_SHADOWS } from './constants';
4
+ import { ITEM_SPACING_ATTRIBUTE } from '../../../components/ItemSpacingControl';
5
+ import { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT, CONTACT_STYLE_CONTEXT, DEFAULT_DIRECTIONS, DEFAULT_ICON_BACKGROUND_SHAPES, DEFAULT_ICON_BACKGROUND_SIZE, DEFAULT_ICON_SIZE, DEFAULT_SHADOWS, } from './constants';
5
6
  import { createContactGroupEdit } from './edit';
6
7
  export function createContactGroupBlock(options) {
7
- var _a, _b, _c, _d, _e;
8
+ var _a, _b, _c, _d, _e, _f, _g, _h;
8
9
  const columns = (_a = options.columns) !== null && _a !== void 0 ? _a : CONTACT_COLUMNS;
10
+ const directions = (_b = options.directions) !== null && _b !== void 0 ? _b : DEFAULT_DIRECTIONS;
11
+ const shadows = (_c = options.shadows) !== null && _c !== void 0 ? _c : DEFAULT_SHADOWS;
12
+ const iconBackgroundShapes = (_d = options.iconBackgroundShapes) !== null && _d !== void 0 ? _d : DEFAULT_ICON_BACKGROUND_SHAPES;
9
13
  return {
10
14
  name: options.name,
11
- title: (_b = options.title) !== null && _b !== void 0 ? _b : __('Kontakty', 'brilo-blocks'),
15
+ title: (_e = options.title) !== null && _e !== void 0 ? _e : __('Kontakty', 'brilo-blocks'),
12
16
  description: options.description,
13
- category: (_c = options.category) !== null && _c !== void 0 ? _c : 'layout',
17
+ category: (_f = options.category) !== null && _f !== void 0 ? _f : 'layout',
14
18
  ...(options.parent && { parent: options.parent }),
15
- icon: (_d = options.icon) !== null && _d !== void 0 ? _d : 'id-alt',
19
+ icon: (_g = options.icon) !== null && _g !== void 0 ? _g : 'id-alt',
16
20
  supports: { html: false, customClassName: false },
17
- providesContext: { [CONTACT_COLUMNS_CONTEXT]: 'columns' },
21
+ providesContext: {
22
+ [CONTACT_COLUMNS_CONTEXT]: 'columns',
23
+ [CONTACT_STYLE_CONTEXT]: 'style',
24
+ },
18
25
  attributes: {
19
26
  columns: {
20
27
  type: 'number',
21
- default: (_e = columns[1]) !== null && _e !== void 0 ? _e : columns[0],
28
+ default: (_h = columns[1]) !== null && _h !== void 0 ? _h : columns[0],
22
29
  enum: [...columns],
23
30
  },
31
+ groupBackgroundColor: { type: 'string', default: '' },
24
32
  style: {
25
33
  type: 'object',
26
- default: { shadow: DEFAULT_SHADOWS[0].value, borderColor: '', backgroundColor: '', textColor: '', textAlign: 'left' },
34
+ default: {
35
+ shadow: shadows[0].value,
36
+ direction: directions[0].value,
37
+ textAlign: 'left',
38
+ borderColor: '',
39
+ backgroundColor: '',
40
+ textColor: '',
41
+ icon: {
42
+ size: DEFAULT_ICON_SIZE,
43
+ color: '',
44
+ background: '',
45
+ backgroundSize: DEFAULT_ICON_BACKGROUND_SIZE,
46
+ backgroundShape: iconBackgroundShapes[0].value,
47
+ borderColor: '',
48
+ borderWidth: 1,
49
+ },
50
+ },
27
51
  },
52
+ ...ITEM_SPACING_ATTRIBUTE,
28
53
  },
29
54
  edit: createContactGroupEdit(options),
30
55
  save: () => _jsx(InnerBlocks.Content, {}),
@@ -1,6 +1,6 @@
1
- export type { ContactColumns, ContactGroupAttributes, ContactGroupOptions } from './types';
1
+ export type { ContactColumns, ContactDirection, ContactGroupAttributes, ContactGroupOptions, ContactIconBackgroundShape, ContactShadow, ContactTextAlign, } from './types';
2
2
  export { createContactGroupBlock } from './factory';
3
- export { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT } from './constants';
3
+ export { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT, CONTACT_STYLE_CONTEXT } from './constants';
4
4
  import type { ContactGroupOptions } from './types';
5
5
  export declare const contactGroupDefaults: ContactGroupOptions;
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-group/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,cAAc,EAAE,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,SAAS,CAAA;AACxF,OAAO,EAAC,uBAAuB,EAAC,MAAM,WAAW,CAAA;AACjD,OAAO,EAAC,eAAe,EAAE,uBAAuB,EAAC,MAAM,aAAa,CAAA;AAEpE,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,SAAS,CAAA;AAEhD,eAAO,MAAM,oBAAoB,EAAE,mBAKlC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-group/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,0BAA0B,EAC1B,aAAa,EACb,gBAAgB,GACjB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAC,uBAAuB,EAAC,MAAM,WAAW,CAAA;AACjD,OAAO,EAAC,eAAe,EAAE,uBAAuB,EAAE,qBAAqB,EAAC,MAAM,aAAa,CAAA;AAE3F,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,SAAS,CAAA;AAEhD,eAAO,MAAM,oBAAoB,EAAE,mBAKlC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  export { createContactGroupBlock } from './factory';
2
- export { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT } from './constants';
2
+ export { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT, CONTACT_STYLE_CONTEXT } from './constants';
3
3
  export const contactGroupDefaults = {
4
4
  name: 'brilo/contact-group',
5
5
  parent: ['brilo/base-section'],
@@ -1,19 +1,42 @@
1
- import type { BriloBlockType, NumberArray } from '../../../types';
2
- import type { CONTACT_COLUMNS, DEFAULT_SHADOWS, TEXT_ALIGNS } from './constants';
1
+ import type { BriloBlockType, NumberArray, OptionArray } from '../../../types';
2
+ import type { CONTACT_COLUMNS, DEFAULT_DIRECTIONS, DEFAULT_ICON_BACKGROUND_SHAPES, DEFAULT_SHADOWS, TEXT_ALIGNS } from './constants';
3
3
  export type ContactColumns = (typeof CONTACT_COLUMNS)[number];
4
4
  export type ContactShadow = (typeof DEFAULT_SHADOWS)[number]['value'];
5
+ export type ContactDirection = (typeof DEFAULT_DIRECTIONS)[number]['value'];
5
6
  export type ContactTextAlign = (typeof TEXT_ALIGNS)[number]['value'];
6
- export interface ContactGroupAttributes<TColumns extends number = ContactColumns> extends Record<string, unknown> {
7
+ export type ContactIconBackgroundShape = (typeof DEFAULT_ICON_BACKGROUND_SHAPES)[number]['value'];
8
+ export interface ContactSizePreset {
9
+ value: number;
10
+ label: string;
11
+ }
12
+ export interface ContactGroupAttributes<TColumns extends number = ContactColumns, TDirection extends string = ContactDirection, TShadow extends string = ContactShadow, TIconBackgroundShape extends string = ContactIconBackgroundShape> extends Record<string, unknown> {
7
13
  columns: TColumns;
14
+ groupBackgroundColor: string;
8
15
  style: {
9
- shadow: ContactShadow;
16
+ shadow: TShadow;
17
+ direction: TDirection;
18
+ textAlign: ContactTextAlign;
10
19
  borderColor: string;
11
20
  backgroundColor: string;
12
21
  textColor: string;
13
- textAlign: ContactTextAlign;
22
+ icon: {
23
+ size: number;
24
+ color: string;
25
+ background: string;
26
+ backgroundSize: number;
27
+ backgroundShape: TIconBackgroundShape;
28
+ borderColor: string;
29
+ borderWidth: number;
30
+ };
14
31
  };
32
+ spacing?: number;
15
33
  }
16
- export interface ContactGroupOptions<TColumns extends NumberArray = typeof CONTACT_COLUMNS> extends BriloBlockType {
34
+ export interface ContactGroupOptions<TColumns extends NumberArray = typeof CONTACT_COLUMNS, TDirections extends OptionArray = typeof DEFAULT_DIRECTIONS, TShadows extends OptionArray = typeof DEFAULT_SHADOWS, TIconBackgroundShapes extends OptionArray = typeof DEFAULT_ICON_BACKGROUND_SHAPES> extends BriloBlockType {
17
35
  columns?: TColumns;
36
+ directions?: TDirections;
37
+ shadows?: TShadows;
38
+ iconSizePresets?: readonly ContactSizePreset[];
39
+ iconBackgroundSizePresets?: readonly ContactSizePreset[];
40
+ iconBackgroundShapes?: TIconBackgroundShapes;
18
41
  }
19
42
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACxD,OAAO,KAAK,EAAC,eAAe,EAAE,eAAe,EAAE,WAAW,EAAC,MAAM,aAAa,CAAA;AAE9E,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAErE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEpE,MAAM,WAAW,sBAAsB,CAAC,QAAQ,SAAS,MAAM,GAAG,cAAc,CAAE,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/G,OAAO,EAAE,QAAQ,CAAA;IACjB,KAAK,EAAE;QACL,MAAM,EAAE,aAAa,CAAA;QACrB,WAAW,EAAE,MAAM,CAAA;QACnB,eAAe,EAAE,MAAM,CAAA;QACvB,SAAS,EAAE,MAAM,CAAA;QACjB,SAAS,EAAE,gBAAgB,CAAA;KAC5B,CAAA;CACF;AAED,MAAM,WAAW,mBAAmB,CAAC,QAAQ,SAAS,WAAW,GAAG,OAAO,eAAe,CAAE,SAAQ,cAAc;IAChH,OAAO,CAAC,EAAE,QAAQ,CAAA;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACrE,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,8BAA8B,EAC9B,eAAe,EACf,WAAW,EACZ,MAAM,aAAa,CAAA;AAEpB,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAErE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAE3E,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEpE,MAAM,MAAM,0BAA0B,GAAG,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEjG,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,sBAAsB,CACrC,QAAQ,SAAS,MAAM,GAAG,cAAc,EACxC,UAAU,SAAS,MAAM,GAAG,gBAAgB,EAC5C,OAAO,SAAS,MAAM,GAAG,aAAa,EACtC,oBAAoB,SAAS,MAAM,GAAG,0BAA0B,CAChE,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,QAAQ,CAAA;IACjB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,KAAK,EAAE;QACL,MAAM,EAAE,OAAO,CAAA;QACf,SAAS,EAAE,UAAU,CAAA;QACrB,SAAS,EAAE,gBAAgB,CAAA;QAC3B,WAAW,EAAE,MAAM,CAAA;QACnB,eAAe,EAAE,MAAM,CAAA;QACvB,SAAS,EAAE,MAAM,CAAA;QACjB,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM,CAAA;YACZ,KAAK,EAAE,MAAM,CAAA;YACb,UAAU,EAAE,MAAM,CAAA;YAClB,cAAc,EAAE,MAAM,CAAA;YACtB,eAAe,EAAE,oBAAoB,CAAA;YACrC,WAAW,EAAE,MAAM,CAAA;YACnB,WAAW,EAAE,MAAM,CAAA;SACpB,CAAA;KACF,CAAA;IACD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,mBAAmB,CAClC,QAAQ,SAAS,WAAW,GAAG,OAAO,eAAe,EACrD,WAAW,SAAS,WAAW,GAAG,OAAO,kBAAkB,EAC3D,QAAQ,SAAS,WAAW,GAAG,OAAO,eAAe,EACrD,qBAAqB,SAAS,WAAW,GAAG,OAAO,8BAA8B,CACjF,SAAQ,cAAc;IACtB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,UAAU,CAAC,EAAE,WAAW,CAAA;IACxB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,eAAe,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAA;IAC9C,yBAAyB,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAA;IACxD,oBAAoB,CAAC,EAAE,qBAAqB,CAAA;CAC7C"}
@@ -0,0 +1,24 @@
1
+ export interface ContactSharedStyle {
2
+ direction?: string;
3
+ textAlign?: string;
4
+ shadow?: string;
5
+ borderColor?: string;
6
+ backgroundColor?: string;
7
+ textColor?: string;
8
+ icon?: {
9
+ size?: number;
10
+ color?: string;
11
+ background?: string;
12
+ backgroundSize?: number;
13
+ backgroundShape?: string;
14
+ borderColor?: string;
15
+ borderWidth?: number;
16
+ };
17
+ }
18
+ export interface ContactPreviewStyle {
19
+ rootClassName: string;
20
+ iconClassName: string;
21
+ cssVars: Record<string, string>;
22
+ }
23
+ export declare function buildContactPreviewStyle(shared?: ContactSharedStyle, resolveHex?: (value: string) => string): ContactPreviewStyle;
24
+ //# sourceMappingURL=buildPreviewStyle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildPreviewStyle.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-item/buildPreviewStyle.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,CAAA;CACF;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED,wBAAgB,wBAAwB,CACtC,MAAM,CAAC,EAAE,kBAAkB,EAC3B,UAAU,GAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAyB,GACvD,mBAAmB,CAuCrB"}
@@ -0,0 +1,31 @@
1
+ import clsx from 'clsx';
2
+ export function buildContactPreviewStyle(shared, resolveHex = (value) => value) {
3
+ var _a;
4
+ if (!shared) {
5
+ return { rootClassName: '', iconClassName: '', cssVars: {} };
6
+ }
7
+ const icon = (_a = shared.icon) !== null && _a !== void 0 ? _a : {};
8
+ const rootClassName = clsx(shared.direction && `--direction-${shared.direction}`, shared.textAlign && `--align-${shared.textAlign}`, shared.shadow && shared.shadow !== 'none' && `--shadow --shadow-${shared.shadow}`, icon.background && icon.background !== 'none' && '--icon-background', icon.color && icon.color !== 'none' && '--icon-color', icon.borderColor && '--icon-bordered', shared.backgroundColor && '--background-color', shared.borderColor && '--border', shared.textColor && '--text-color');
9
+ const iconClassName = clsx(icon.backgroundShape && icon.backgroundShape !== 'none' && `--background-shape --background-shape-${icon.backgroundShape}`);
10
+ const cssVars = {};
11
+ if (shared.borderColor)
12
+ cssVars['--border-color'] = resolveHex(shared.borderColor);
13
+ if (shared.backgroundColor)
14
+ cssVars['--background-color'] = resolveHex(shared.backgroundColor);
15
+ if (shared.textColor)
16
+ cssVars['--text-color'] = resolveHex(shared.textColor);
17
+ if (icon.background && icon.background !== 'none')
18
+ cssVars['--icon-background-color'] = resolveHex(icon.background);
19
+ if (icon.color && icon.color !== 'none')
20
+ cssVars['--icon-color'] = resolveHex(icon.color);
21
+ if (icon.size)
22
+ cssVars['--icon-size'] = `${icon.size}px`;
23
+ if (icon.background && icon.background !== 'none' && icon.backgroundSize) {
24
+ cssVars['--icon-background-size'] = `${icon.backgroundSize}px`;
25
+ }
26
+ if (icon.borderColor) {
27
+ cssVars['--icon-outline-color'] = resolveHex(icon.borderColor);
28
+ cssVars['--icon-outline-width'] = `${icon.borderWidth || 1}px`;
29
+ }
30
+ return { rootClassName, iconClassName, cssVars };
31
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-item/edit.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAyB,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAA;AAE9F,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,6CAO5D;IACD,UAAU,EAAE,qBAAqB,CAAA;IACjC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAA;IAC1D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC,iCAiEF"}
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/contact/contact-item/edit.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAA;AAEtE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,6CAO5D;IACD,UAAU,EAAE,qBAAqB,CAAA;IACjC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAA;IAC1D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC,iCAmDF"}
@@ -1,30 +1,32 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { InspectorControls } from '@wordpress/block-editor';
3
- import { PanelBody, RangeControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
3
+ import { PanelBody, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
4
4
  import { __ } from '@wordpress/i18n';
5
5
  import clsx from 'clsx';
6
6
  import { ItemIconControl, ItemIconPreview } from '../../../components/ItemIconControl';
7
7
  import { useGroupBlock } from '../../../hooks/useGroupBlock';
8
- import { CONTACT_COLUMNS_CONTEXT } from '../contact-group/constants';
9
- import { CONTACT_ICON_SIZE_DEFAULT, CONTACT_ICON_SIZE_RANGE, CONTACT_ICON_SIZES, CONTACT_ICON_TYPES } from './constants';
8
+ import { useTenantColorPalette } from '../../../hooks/useTenantColorPalette';
9
+ import { CONTACT_COLUMNS_CONTEXT, CONTACT_STYLE_CONTEXT } from '../contact-group/constants';
10
+ import { buildContactPreviewStyle } from './buildPreviewStyle';
11
+ import { CONTACT_ICON_TYPES } from './constants';
10
12
  export function createContactItemEdit(options) {
11
13
  var _a, _b;
12
14
  const iconOptions = { icons: (_a = options.icons) !== null && _a !== void 0 ? _a : [], iconsSrc: (_b = options.iconsSrc) !== null && _b !== void 0 ? _b : '' };
13
15
  return function Edit({ attributes, setAttributes, context, }) {
14
16
  var _a, _b, _c;
15
- const { colSpan, icon, iconSize } = attributes;
17
+ const { colSpan, icon } = attributes;
16
18
  const columns = Number((_a = context[CONTACT_COLUMNS_CONTEXT]) !== null && _a !== void 0 ? _a : 3);
17
19
  const span = Math.min(colSpan, columns);
18
- const sizePreset = CONTACT_ICON_SIZES.find((s) => s.value === iconSize.variant);
19
- const iconPx = iconSize.variant === 'custom' ? iconSize.custom : sizePreset && 'size' in sizePreset ? sizePreset.size : CONTACT_ICON_SIZE_DEFAULT;
20
+ const { resolveHex } = useTenantColorPalette();
21
+ const { rootClassName, iconClassName, cssVars } = buildContactPreviewStyle(context[CONTACT_STYLE_CONTEXT], resolveHex);
20
22
  const { blockProps, innerBlocksProps } = useGroupBlock({
21
- blockClassName: clsx((_b = options.blockClassName) !== null && _b !== void 0 ? _b : 'i-contact'),
23
+ blockClassName: clsx((_b = options.blockClassName) !== null && _b !== void 0 ? _b : 'i-contact', rootClassName),
22
24
  containerClassName: [(_c = options.containerClassName) !== null && _c !== void 0 ? _c : 'i-contact__inner'],
23
25
  allowedBlocks: options.allowedBlocks,
24
26
  template: options.template,
25
27
  orientation: 'vertical',
26
28
  layout: { type: 'default' },
27
29
  });
28
- return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsx(PanelBody, { title: __('Šířka', 'brilo-blocks'), children: _jsx(ToggleGroupControl, { isBlock: true, label: __('Počet sloupců', 'brilo-blocks'), value: String(span), onChange: (v) => setAttributes({ colSpan: Number(v) }), children: Array.from({ length: columns }, (_, i) => i + 1).map((c) => (_jsx(ToggleGroupControlOption, { value: String(c), label: String(c) }, c))) }) }), _jsxs(PanelBody, { title: __('Ikona', 'brilo-blocks'), children: [_jsx(ItemIconControl, { icon: icon, setAttributes: setAttributes, iconTypes: CONTACT_ICON_TYPES, options: iconOptions }), _jsx(ToggleGroupControl, { isBlock: true, label: __('Velikost ikony', 'brilo-blocks'), value: iconSize.variant, onChange: (v) => setAttributes({ iconSize: { ...iconSize, variant: v } }), children: CONTACT_ICON_SIZES.map((s) => (_jsx(ToggleGroupControlOption, { value: s.value, label: s.label }, s.value))) }), iconSize.variant === 'custom' && (_jsx(RangeControl, { label: __('Vlastní velikost (px)', 'brilo-blocks'), value: iconSize.custom, min: CONTACT_ICON_SIZE_RANGE.min, max: CONTACT_ICON_SIZE_RANGE.max, onChange: (v) => setAttributes({ iconSize: { ...iconSize, custom: v !== null && v !== void 0 ? v : CONTACT_ICON_SIZE_RANGE.min } }) }))] })] }), _jsxs("div", { ...blockProps, style: { ...blockProps.style, '--col-span': span }, children: [_jsx("div", { className: "i-contact__icon-wrap", style: { '--icon-size': `${iconPx}px` }, children: _jsx(ItemIconPreview, { icon: icon, className: "i-contact__icon", setAttributes: setAttributes, options: iconOptions }) }), _jsx("div", { ...innerBlocksProps })] })] }));
30
+ return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsx(PanelBody, { title: __('Šířka', 'brilo-blocks'), children: _jsx(ToggleGroupControl, { isBlock: true, label: __('Počet sloupců', 'brilo-blocks'), value: String(span), onChange: (v) => setAttributes({ colSpan: Number(v) }), children: Array.from({ length: columns }, (_, i) => i + 1).map((c) => (_jsx(ToggleGroupControlOption, { value: String(c), label: String(c) }, c))) }) }), _jsx(PanelBody, { title: __('Ikona', 'brilo-blocks'), children: _jsx(ItemIconControl, { icon: icon, setAttributes: setAttributes, iconTypes: CONTACT_ICON_TYPES, options: iconOptions }) })] }), _jsxs("div", { ...blockProps, style: { ...blockProps.style, ...cssVars, '--col-span': span }, children: [_jsx("div", { className: clsx('i-contact__icon-wrap', iconClassName), children: _jsx(ItemIconPreview, { icon: icon, className: "i-contact__icon", setAttributes: setAttributes, options: iconOptions }) }), _jsx("div", { ...innerBlocksProps })] })] }));
29
31
  };
30
32
  }
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { InnerBlocks } from '@wordpress/block-editor';
3
3
  import { __ } from '@wordpress/i18n';
4
- import { CONTACT_COLUMNS_CONTEXT } from '../contact-group/constants';
4
+ import { CONTACT_COLUMNS_CONTEXT, CONTACT_STYLE_CONTEXT } from '../contact-group/constants';
5
5
  import { CONTACT_ICON_SIZE_DEFAULT, CONTACT_ICON_TYPES } from './constants';
6
6
  export function createContactItemBlock(options) {
7
7
  var _a, _b, _c;
@@ -13,7 +13,7 @@ export function createContactItemBlock(options) {
13
13
  ...(options.parent && { parent: options.parent }),
14
14
  icon: (_c = options.icon) !== null && _c !== void 0 ? _c : 'id-alt',
15
15
  supports: { html: false, customClassName: false },
16
- usesContext: [CONTACT_COLUMNS_CONTEXT],
16
+ usesContext: [CONTACT_COLUMNS_CONTEXT, CONTACT_STYLE_CONTEXT],
17
17
  attributes: {
18
18
  ...options.attributes,
19
19
  colSpan: { type: 'number', default: 1 },
package/build/index.d.ts CHANGED
@@ -2,8 +2,8 @@ export type { AnchorAlignment, AnchorColumns, AnchorGroupAttributes, AnchorGroup
2
2
  export { ANCHOR_ALIGNMENTS, ANCHOR_COLUMNS, anchorGroupDefaults, createAnchorGroupBlock } from './blocks/anchor/anchor-group';
3
3
  export type { AnchorItemAttributes, AnchorItemOptions } from './blocks/anchor/anchor-item';
4
4
  export { ANCHOR_ICON_SIZE_DEFAULT, ANCHOR_ICON_SIZE_RANGE, ANCHOR_ICON_TYPES, anchorItemDefaults, createAnchorItemBlock, createAnchorItemEdit, } from './blocks/anchor/anchor-item';
5
- export type { ContactColumns, ContactGroupAttributes, ContactGroupOptions, } from './blocks/contact/contact-group';
6
- export { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT, contactGroupDefaults, createContactGroupBlock, } from './blocks/contact/contact-group';
5
+ export type { ContactColumns, ContactDirection, ContactGroupAttributes, ContactGroupOptions, ContactIconBackgroundShape, ContactShadow, ContactTextAlign, } from './blocks/contact/contact-group';
6
+ export { CONTACT_COLUMNS, CONTACT_COLUMNS_CONTEXT, CONTACT_STYLE_CONTEXT, contactGroupDefaults, createContactGroupBlock, } from './blocks/contact/contact-group';
7
7
  export type { ContactIconSize, ContactIconSizeVariant, ContactItemAttributes, ContactItemOptions, } from './blocks/contact/contact-item';
8
8
  export { CONTACT_ICON_SIZE_RANGE, CONTACT_ICON_SIZES, CONTACT_ICON_TYPES, contactItemDefaults, createContactItemBlock, createContactItemEdit, } from './blocks/contact/contact-item';
9
9
  export type { AccordionItemAttributes, AccordionItemOptions } from './blocks/accordion/accordion-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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"}