@brilo/base-blocks 0.1.49 → 0.1.51

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 (40) hide show
  1. package/build/.tsbuildinfo +1 -1
  2. package/build/blocks/contact/contact-group/factory.d.ts.map +1 -1
  3. package/build/blocks/contact/contact-group/types.d.ts.map +1 -1
  4. package/build/blocks/contact/contact-item/edit.d.ts.map +1 -1
  5. package/build/blocks/person/person-group/constants.d.ts +17 -0
  6. package/build/blocks/person/person-group/constants.d.ts.map +1 -1
  7. package/build/blocks/person/person-group/constants.js +10 -0
  8. package/build/blocks/person/person-group/edit.d.ts.map +1 -1
  9. package/build/blocks/person/person-group/edit.js +6 -4
  10. package/build/blocks/person/person-group/factory.d.ts.map +1 -1
  11. package/build/blocks/person/person-group/factory.js +12 -1
  12. package/build/blocks/person/person-group/types.d.ts +11 -0
  13. package/build/blocks/person/person-group/types.d.ts.map +1 -1
  14. package/build/blocks/sections/base-section/controls.d.ts.map +1 -1
  15. package/build/blocks/sections/base-section/controls.js +4 -3
  16. package/build/blocks/sections/base-section/types.d.ts +1 -0
  17. package/build/blocks/sections/base-section/types.d.ts.map +1 -1
  18. package/build/blocks/step/step-group/constants.d.ts +55 -0
  19. package/build/blocks/step/step-group/constants.d.ts.map +1 -1
  20. package/build/blocks/step/step-group/constants.js +29 -0
  21. package/build/blocks/step/step-group/edit.d.ts.map +1 -1
  22. package/build/blocks/step/step-group/edit.js +28 -3
  23. package/build/blocks/step/step-group/factory.d.ts.map +1 -1
  24. package/build/blocks/step/step-group/factory.js +16 -1
  25. package/build/blocks/step/step-group/types.d.ts +17 -1
  26. package/build/blocks/step/step-group/types.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/src/blocks/contact/contact-group/factory.tsx +1 -6
  29. package/src/blocks/contact/contact-group/types.ts +1 -7
  30. package/src/blocks/contact/contact-item/edit.tsx +1 -4
  31. package/src/blocks/person/person-group/constants.ts +13 -0
  32. package/src/blocks/person/person-group/edit.tsx +63 -3
  33. package/src/blocks/person/person-group/factory.tsx +12 -1
  34. package/src/blocks/person/person-group/types.ts +13 -0
  35. package/src/blocks/sections/base-section/controls.tsx +10 -1
  36. package/src/blocks/sections/base-section/types.ts +1 -0
  37. package/src/blocks/step/step-group/constants.ts +35 -0
  38. package/src/blocks/step/step-group/edit.tsx +160 -2
  39. package/src/blocks/step/step-group/factory.tsx +16 -1
  40. package/src/blocks/step/step-group/types.ts +20 -1
@@ -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;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
+ {"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,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAC1I,CAyDA"}
@@ -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,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"}
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,EAAC,eAAe,EAAE,kBAAkB,EAAE,8BAA8B,EAAE,eAAe,EAAE,WAAW,EAAC,MAAM,aAAa,CAAA;AAElI,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"}
@@ -1 +1 @@
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
+ {"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,iCAgDF"}
@@ -1,3 +1,20 @@
1
1
  export declare const COLUMNS: readonly [4, 3, 2];
2
2
  export declare const HEADING_LEVELS: readonly [2, 3, 4];
3
+ export declare const DEFAULT_SHADOWS: readonly [{
4
+ readonly value: 'none';
5
+ readonly label: import("@wordpress/i18n").TransformedText<"Žádný">;
6
+ }, {
7
+ readonly value: 'sm';
8
+ readonly label: import("@wordpress/i18n").TransformedText<"Malý">;
9
+ }, {
10
+ readonly value: 'md';
11
+ readonly label: import("@wordpress/i18n").TransformedText<"Střední">;
12
+ }];
13
+ export declare const TEXT_ALIGNS: readonly [{
14
+ readonly value: 'left';
15
+ readonly label: import("@wordpress/i18n").TransformedText<"Vlevo">;
16
+ }, {
17
+ readonly value: 'center';
18
+ readonly label: import("@wordpress/i18n").TransformedText<"Na střed">;
19
+ }];
3
20
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/person/person-group/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,YAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU,CAAA;AACzC,eAAO,MAAM,cAAc,YAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/person/person-group/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,YAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU,CAAA;AACzC,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,WAAW;aACrB,KAAK,EAAE,MAAM;aAAE,KAAK;;aACpB,KAAK,EAAE,QAAQ;aAAE,KAAK;EACf,CAAA"}
@@ -1,2 +1,12 @@
1
+ import { __ } from '@wordpress/i18n';
1
2
  export const COLUMNS = [4, 3, 2];
2
3
  export const HEADING_LEVELS = [2, 3, 4];
4
+ export const DEFAULT_SHADOWS = [
5
+ { value: 'none', label: __('Žádný', 'brilo-blocks') },
6
+ { value: 'sm', label: __('Malý', 'brilo-blocks') },
7
+ { value: 'md', label: __('Střední', 'brilo-blocks') },
8
+ ];
9
+ export const TEXT_ALIGNS = [
10
+ { value: 'left', label: __('Vlevo', 'brilo-blocks') },
11
+ { value: 'center', label: __('Na střed', 'brilo-blocks') },
12
+ ];
@@ -1 +1 @@
1
- {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/person/person-group/edit.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAA;AAEtE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,oCAI5D;IACD,UAAU,EAAE,qBAAqB,CAAA;IACjC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAA;CAC3D,iCA6CF"}
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/person/person-group/edit.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAC,qBAAqB,EAAE,kBAAkB,EAAgC,MAAM,SAAS,CAAA;AAErG,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,oCAI5D;IACD,UAAU,EAAE,qBAAqB,CAAA;IACjC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAA;CAC3D,iCAsGF"}
@@ -1,14 +1,16 @@
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, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
3
+ import { BaseControl, ColorPalette, 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 { useGroupBlock } from '../../../hooks/useGroupBlock';
7
- import { COLUMNS, HEADING_LEVELS } from './constants';
7
+ import { useTenantColorPalette } from '../../../hooks/useTenantColorPalette';
8
+ import { COLUMNS, DEFAULT_SHADOWS, HEADING_LEVELS, TEXT_ALIGNS } from './constants';
8
9
  export function createPersonGroupEdit(options) {
9
10
  return function Edit({ attributes, setAttributes, }) {
10
11
  var _a, _b;
11
- const { columns, headingLevel } = attributes;
12
+ const { columns, headingLevel, style } = attributes;
13
+ const { paletteColors } = useTenantColorPalette();
12
14
  const { blockProps, innerBlocksProps } = useGroupBlock({
13
15
  blockClassName: clsx((_a = options.blockClassName) !== null && _a !== void 0 ? _a : 'g-person wp-block-section'),
14
16
  containerClassName: [(_b = options.containerClassName) !== null && _b !== void 0 ? _b : 'u-grid-responsive', `--cols-${columns}`],
@@ -18,6 +20,6 @@ export function createPersonGroupEdit(options) {
18
20
  template: options.template,
19
21
  layout: { type: 'default' },
20
22
  });
21
- return (_jsxs(_Fragment, { children: [_jsx(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: __('Úroveň nadpisu položek', 'brilo-blocks'), value: String(headingLevel), onChange: (v) => setAttributes({ headingLevel: Number(v) }), children: HEADING_LEVELS.map((l) => (_jsx(ToggleGroupControlOption, { value: String(l), label: `H${l}` }, l))) })] }) }), _jsx("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
23
+ 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: __('Úroveň nadpisu položek', 'brilo-blocks'), value: String(headingLevel), onChange: (v) => setAttributes({ headingLevel: Number(v) }), children: HEADING_LEVELS.map((l) => (_jsx(ToggleGroupControlOption, { value: String(l), label: `H${l}` }, l))) })] }), style && (_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: "person-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: "person-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: "person-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(BaseControl, { label: __('Barva nadpisu', 'brilo-blocks'), id: "person-group-heading-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.headingColor || undefined, onChange: (value) => setAttributes({ style: { ...style, headingColor: 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 }) })] }));
22
24
  };
23
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/person/person-group/factory.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAKzD,OAAO,KAAK,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAA;AAEtE,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,CAAA;AAEvD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAAC,qBAAqB,CAAC,CAwB7G"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/person/person-group/factory.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAKzD,OAAO,KAAK,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAA;AAEtE,YAAY,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,CAAA;AAEvD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAAC,qBAAqB,CAAC,CAmC7G"}
@@ -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 { COLUMNS, HEADING_LEVELS } from './constants';
4
+ import { COLUMNS, DEFAULT_SHADOWS, HEADING_LEVELS } from './constants';
5
5
  import { createPersonGroupEdit } from './edit';
6
6
  import { icon as defaultIcon } from './icon';
7
7
  export function createPersonGroupBlock(options) {
@@ -25,6 +25,17 @@ export function createPersonGroupBlock(options) {
25
25
  default: HEADING_LEVELS[0],
26
26
  enum: [...HEADING_LEVELS],
27
27
  },
28
+ style: {
29
+ type: 'object',
30
+ default: {
31
+ shadow: DEFAULT_SHADOWS[0].value,
32
+ borderColor: '',
33
+ backgroundColor: '',
34
+ textColor: '',
35
+ headingColor: '',
36
+ textAlign: 'center',
37
+ },
38
+ },
28
39
  },
29
40
  edit: createPersonGroupEdit(options),
30
41
  save: () => _jsx(InnerBlocks.Content, {}),
@@ -1,7 +1,18 @@
1
1
  import type { BriloBlockType } from '../../../types';
2
+ import type { DEFAULT_SHADOWS, TEXT_ALIGNS } from './constants';
3
+ export type PersonShadow = (typeof DEFAULT_SHADOWS)[number]['value'];
4
+ export type PersonTextAlign = (typeof TEXT_ALIGNS)[number]['value'];
2
5
  export interface PersonGroupAttributes extends Record<string, unknown> {
3
6
  columns: number;
4
7
  headingLevel: number;
8
+ style: {
9
+ shadow: PersonShadow;
10
+ borderColor: string;
11
+ backgroundColor: string;
12
+ textColor: string;
13
+ headingColor: string;
14
+ textAlign: PersonTextAlign;
15
+ };
5
16
  }
6
17
  export interface PersonGroupOptions extends BriloBlockType {
7
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/person/person-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAE3C,MAAM,WAAW,qBAAsB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACpE,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;CAAG"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/person/person-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAC3C,OAAO,KAAK,EAAC,eAAe,EAAE,WAAW,EAAC,MAAM,aAAa,CAAA;AAE7D,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEpE,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEnE,MAAM,WAAW,qBAAsB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACpE,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE;QACL,MAAM,EAAE,YAAY,CAAA;QACpB,WAAW,EAAE,MAAM,CAAA;QACnB,eAAe,EAAE,MAAM,CAAA;QACvB,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,eAAe,CAAA;KAC3B,CAAA;CACF;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;CAAG"}
@@ -1 +1 @@
1
- {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/controls.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAKV,mBAAmB,EAOnB,kBAAkB,EAInB,MAAM,SAAS,CAAA;AA8bhB,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,+BAkHnF"}
1
+ {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/controls.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAKV,mBAAmB,EAOnB,kBAAkB,EAInB,MAAM,SAAS,CAAA;AAuchB,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,+BAkHnF"}
@@ -10,7 +10,7 @@ function mergeUpdate(defaults, value, patch) {
10
10
  return { ...defaults, ...value, ...patch };
11
11
  }
12
12
  function FluidDecorationControl({ label, placement, value, onChange }) {
13
- var _a, _b, _c, _d, _e;
13
+ var _a, _b, _c, _d, _e, _f;
14
14
  const img = value === null || value === void 0 ? void 0 : value.img;
15
15
  const height = (_a = value === null || value === void 0 ? void 0 : value.height) !== null && _a !== void 0 ? _a : FLUID_DECORATION_DEFAULT_HEIGHT;
16
16
  const fit = (_b = value === null || value === void 0 ? void 0 : value.fit) !== null && _b !== void 0 ? _b : 'auto';
@@ -19,14 +19,15 @@ function FluidDecorationControl({ label, placement, value, onChange }) {
19
19
  // overriding the frontend once the editor actually writes an explicit value.
20
20
  const bgPosition = (_d = value === null || value === void 0 ? void 0 : value.bgPosition) !== null && _d !== void 0 ? _d : (placement === 'bottom' ? 'left bottom' : 'left top');
21
21
  const repeat = (_e = value === null || value === void 0 ? void 0 : value.repeat) !== null && _e !== void 0 ? _e : 'repeat-x';
22
- const update = (patch) => onChange(mergeUpdate({ img, height, fit, bgPosition, repeat }, value, patch));
22
+ const opacity = (_f = value === null || value === void 0 ? void 0 : value.opacity) !== null && _f !== void 0 ? _f : BACKGROUND_IMAGE_OPACITY_DEFAULT;
23
+ const update = (patch) => onChange(mergeUpdate({ img, height, fit, bgPosition, repeat, opacity }, value, patch));
23
24
  const handleSelect = (media) => {
24
25
  var _a;
25
26
  const nextImg = { id: media.id, src: media.url, alt: (_a = media.alt) !== null && _a !== void 0 ? _a : '', width: media.width, height: media.height };
26
27
  update({ img: nextImg });
27
28
  };
28
29
  const handleRemove = () => onChange(undefined);
29
- 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 update({ 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: () => update({ height: `${preset}px` }), children: preset }, preset))) }), _jsx(ToggleGroupControl, { label: __('Přizpůsobení', 'brilo-blocks'), value: fit, onChange: (next) => update({ fit: next }), isBlock: true, children: FLUID_DECORATION_FITS.map((f) => (_jsx(ToggleGroupControlOption, { value: f.value, label: f.label }, f.value))) }), fit === 'custom' && (_jsx(UnitControl, { label: __('Velikost', 'brilo-blocks'), value: sizeValue, units: BACKGROUND_IMAGE_SIZE_UNITS, onChange: (next) => { var _a; return update({ sizeValue: (_a = next) !== null && _a !== void 0 ? _a : BACKGROUND_IMAGE_SIZE_VALUE_DEFAULT }); } })), _jsx(SelectControl, { label: __('Pozice obrázku', 'brilo-blocks'), value: bgPosition, options: [...BACKGROUND_IMAGE_POSITIONS], onChange: (next) => update({ bgPosition: next }) }), _jsx(SelectControl, { label: __('Opakování', 'brilo-blocks'), value: repeat, options: [...BACKGROUND_IMAGE_REPEATS], onChange: (next) => update({ repeat: next }) })] }))] }));
30
+ 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 update({ 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: () => update({ height: `${preset}px` }), children: preset }, preset))) }), _jsx(ToggleGroupControl, { label: __('Přizpůsobení', 'brilo-blocks'), value: fit, onChange: (next) => update({ fit: next }), isBlock: true, children: FLUID_DECORATION_FITS.map((f) => (_jsx(ToggleGroupControlOption, { value: f.value, label: f.label }, f.value))) }), fit === 'custom' && (_jsx(UnitControl, { label: __('Velikost', 'brilo-blocks'), value: sizeValue, units: BACKGROUND_IMAGE_SIZE_UNITS, onChange: (next) => { var _a; return update({ sizeValue: (_a = next) !== null && _a !== void 0 ? _a : BACKGROUND_IMAGE_SIZE_VALUE_DEFAULT }); } })), _jsx(SelectControl, { label: __('Pozice obrázku', 'brilo-blocks'), value: bgPosition, options: [...BACKGROUND_IMAGE_POSITIONS], onChange: (next) => update({ bgPosition: next }) }), _jsx(SelectControl, { label: __('Opakování', 'brilo-blocks'), value: repeat, options: [...BACKGROUND_IMAGE_REPEATS], onChange: (next) => update({ repeat: next }) }), _jsx(RangeControl, { label: __('Průhlednost obrázku', 'brilo-blocks'), value: opacity, min: 0, max: 100, onChange: (next) => update({ opacity: next !== null && next !== void 0 ? next : BACKGROUND_IMAGE_OPACITY_DEFAULT }) })] }))] }));
30
31
  }
31
32
  function DecorationControl({ value, onChange }) {
32
33
  var _a, _b, _c, _d, _e, _f;
@@ -15,6 +15,7 @@ export interface FluidDecoration {
15
15
  sizeValue?: string;
16
16
  bgPosition?: BackgroundImagePosition;
17
17
  repeat?: BackgroundImageRepeat;
18
+ opacity?: number;
18
19
  }
19
20
  export type DecorationImage = FluidDecorationImage;
20
21
  export type DecorationPosition = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'center-left' | 'center-right';
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/sections/base-section/types.ts"],"names":[],"mappings":"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"}
@@ -5,4 +5,59 @@ export declare const DEFAULT_VARIANTS: readonly [{
5
5
  readonly value: 'vertical';
6
6
  readonly label: import("@wordpress/i18n").TransformedText<"Vertikální">;
7
7
  }];
8
+ export declare const DEFAULT_SHADOWS: readonly [{
9
+ readonly value: 'none';
10
+ readonly label: import("@wordpress/i18n").TransformedText<"Žádný">;
11
+ }, {
12
+ readonly value: 'sm';
13
+ readonly label: import("@wordpress/i18n").TransformedText<"Malý">;
14
+ }, {
15
+ readonly value: 'md';
16
+ readonly label: import("@wordpress/i18n").TransformedText<"Střední">;
17
+ }];
18
+ export declare const TEXT_ALIGNS: readonly [{
19
+ readonly value: 'left';
20
+ readonly label: import("@wordpress/i18n").TransformedText<"Vlevo">;
21
+ }, {
22
+ readonly value: 'center';
23
+ readonly label: import("@wordpress/i18n").TransformedText<"Na střed">;
24
+ }];
25
+ export declare const DEFAULT_ICON_SIZE = 48;
26
+ export declare const ICON_SIZE_MIN = 16;
27
+ export declare const ICON_SIZE_MAX = 96;
28
+ export declare const DEFAULT_ICON_SIZE_PRESETS: readonly [{
29
+ readonly value: 24;
30
+ readonly label: import("@wordpress/i18n").TransformedText<"SM">;
31
+ }, {
32
+ readonly value: 32;
33
+ readonly label: import("@wordpress/i18n").TransformedText<"MD">;
34
+ }, {
35
+ readonly value: 48;
36
+ readonly label: import("@wordpress/i18n").TransformedText<"Výchozí">;
37
+ }, {
38
+ readonly value: 64;
39
+ readonly label: import("@wordpress/i18n").TransformedText<"LG">;
40
+ }, {
41
+ readonly value: 80;
42
+ readonly label: import("@wordpress/i18n").TransformedText<"XL">;
43
+ }];
44
+ export declare const DEFAULT_ICON_BACKGROUND_SIZE = 144;
45
+ export declare const ICON_BACKGROUND_SIZE_MIN = 56;
46
+ export declare const ICON_BACKGROUND_SIZE_MAX = 200;
47
+ export declare const DEFAULT_ICON_BACKGROUND_SIZE_PRESETS: readonly [{
48
+ readonly value: 88;
49
+ readonly label: import("@wordpress/i18n").TransformedText<"SM">;
50
+ }, {
51
+ readonly value: 112;
52
+ readonly label: import("@wordpress/i18n").TransformedText<"MD">;
53
+ }, {
54
+ readonly value: 144;
55
+ readonly label: import("@wordpress/i18n").TransformedText<"Výchozí">;
56
+ }, {
57
+ readonly value: 168;
58
+ readonly label: import("@wordpress/i18n").TransformedText<"LG">;
59
+ }, {
60
+ readonly value: 200;
61
+ readonly label: import("@wordpress/i18n").TransformedText<"XL">;
62
+ }];
8
63
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/step/step-group/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB;aAC1B,KAAK,EAAE,YAAY;aAAE,KAAK;;aAC1B,KAAK,EAAE,UAAU;aAAE,KAAK;EACjB,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/step/step-group/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB;aAC1B,KAAK,EAAE,YAAY;aAAE,KAAK;;aAC1B,KAAK,EAAE,UAAU;aAAE,KAAK;EACjB,CAAA;AAEV,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;AAEV,eAAO,MAAM,iBAAiB,KAAK,CAAA;AACnC,eAAO,MAAM,aAAa,KAAK,CAAA;AAC/B,eAAO,MAAM,aAAa,KAAK,CAAA;AAE/B,eAAO,MAAM,yBAAyB;aACnC,KAAK,EAAE,EAAE;aAAE,KAAK;;aAChB,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,MAAM,CAAA;AAC/C,eAAO,MAAM,wBAAwB,KAAK,CAAA;AAC1C,eAAO,MAAM,wBAAwB,MAAM,CAAA;AAE3C,eAAO,MAAM,oCAAoC;aAC9C,KAAK,EAAE,EAAE;aAAE,KAAK;;aAChB,KAAK,EAAE,GAAG;aAAE,KAAK;;aACjB,KAAK,EAAE,GAAG;aAAE,KAAK;;aACjB,KAAK,EAAE,GAAG;aAAE,KAAK;;aACjB,KAAK,EAAE,GAAG;aAAE,KAAK;EACV,CAAA"}
@@ -3,3 +3,32 @@ export const DEFAULT_VARIANTS = [
3
3
  { value: 'horizontal', label: __('Horizontální', 'brilo-blocks') },
4
4
  { value: 'vertical', label: __('Vertikální', 'brilo-blocks') },
5
5
  ];
6
+ export const DEFAULT_SHADOWS = [
7
+ { value: 'none', label: __('Žádný', 'brilo-blocks') },
8
+ { value: 'sm', label: __('Malý', 'brilo-blocks') },
9
+ { value: 'md', label: __('Střední', 'brilo-blocks') },
10
+ ];
11
+ export const TEXT_ALIGNS = [
12
+ { value: 'left', label: __('Vlevo', 'brilo-blocks') },
13
+ { value: 'center', label: __('Na střed', 'brilo-blocks') },
14
+ ];
15
+ export const DEFAULT_ICON_SIZE = 48;
16
+ export const ICON_SIZE_MIN = 16;
17
+ export const ICON_SIZE_MAX = 96;
18
+ export const DEFAULT_ICON_SIZE_PRESETS = [
19
+ { value: 24, label: __('SM', 'brilo-blocks') },
20
+ { value: 32, label: __('MD', 'brilo-blocks') },
21
+ { value: 48, label: __('Výchozí', 'brilo-blocks') },
22
+ { value: 64, label: __('LG', 'brilo-blocks') },
23
+ { value: 80, label: __('XL', 'brilo-blocks') },
24
+ ];
25
+ export const DEFAULT_ICON_BACKGROUND_SIZE = 144;
26
+ export const ICON_BACKGROUND_SIZE_MIN = 56;
27
+ export const ICON_BACKGROUND_SIZE_MAX = 200;
28
+ export const DEFAULT_ICON_BACKGROUND_SIZE_PRESETS = [
29
+ { value: 88, label: __('SM', 'brilo-blocks') },
30
+ { value: 112, label: __('MD', 'brilo-blocks') },
31
+ { value: 144, label: __('Výchozí', 'brilo-blocks') },
32
+ { value: 168, label: __('LG', 'brilo-blocks') },
33
+ { value: 200, label: __('XL', 'brilo-blocks') },
34
+ ];
@@ -1 +1 @@
1
- {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/step/step-group/edit.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,SAAS,CAAA;AACxC,OAAO,KAAK,EAAC,mBAAmB,EAAE,gBAAgB,EAAc,MAAM,SAAS,CAAA;AAC/E,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAA;AAE5C,wBAAgB,mBAAmB,CAAC,SAAS,SAAS,WAAW,GAAG,OAAO,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,oCAM5H;IACD,UAAU,EAAE,mBAAmB,CAAA;IAC/B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;CACzD,iCAyCF"}
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/step/step-group/edit.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,SAAS,CAAA;AACxC,OAAO,KAAK,EAAC,mBAAmB,EAAE,gBAAgB,EAA4B,MAAM,SAAS,CAAA;AAC7F,OAAO,EAML,gBAAgB,EAMjB,MAAM,aAAa,CAAA;AAqDpB,wBAAgB,mBAAmB,CAAC,SAAS,SAAS,WAAW,GAAG,OAAO,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,oCAM5H;IACD,UAAU,EAAE,mBAAmB,CAAA;IAC/B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;CACzD,iCAmIF"}
@@ -1,17 +1,42 @@
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, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
3
+ import { BaseControl, Button, ColorPalette, PanelBody, RangeControl, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
4
4
  import { __ } from '@wordpress/i18n';
5
5
  import clsx from 'clsx';
6
6
  import { ItemSpacingPanel, itemSpacingStyle } from '../../../components/ItemSpacingControl';
7
7
  import { useGroupBlock } from '../../../hooks/useGroupBlock';
8
- import { DEFAULT_VARIANTS } from './constants';
8
+ import { useTenantColorPalette } from '../../../hooks/useTenantColorPalette';
9
+ import { DEFAULT_ICON_BACKGROUND_SIZE, DEFAULT_ICON_BACKGROUND_SIZE_PRESETS, DEFAULT_ICON_SIZE, DEFAULT_ICON_SIZE_PRESETS, DEFAULT_SHADOWS, DEFAULT_VARIANTS, ICON_BACKGROUND_SIZE_MAX, ICON_BACKGROUND_SIZE_MIN, ICON_SIZE_MAX, ICON_SIZE_MIN, TEXT_ALIGNS, } from './constants';
10
+ // Older step-group blocks were saved before `style` / `style.icon` existed. WordPress does
11
+ // not deep-merge object-attribute defaults, so normalise here to stay backward compatible.
12
+ function normaliseStyle(saved) {
13
+ return {
14
+ shadow: 'none',
15
+ borderColor: '',
16
+ backgroundColor: '',
17
+ textColor: '',
18
+ headingColor: '',
19
+ textAlign: 'left',
20
+ ...saved,
21
+ icon: {
22
+ size: DEFAULT_ICON_SIZE,
23
+ background: '',
24
+ backgroundSize: DEFAULT_ICON_BACKGROUND_SIZE,
25
+ ...saved === null || saved === void 0 ? void 0 : saved.icon,
26
+ },
27
+ };
28
+ }
29
+ function PresetSizeControl({ label, id, value, presets, min, max, onChange, }) {
30
+ return (_jsxs(BaseControl, { label: label, id: id, 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 })] }));
31
+ }
9
32
  export function createStepGroupEdit(options) {
10
33
  var _a;
11
34
  const VARIANTS = (_a = options.variants) !== null && _a !== void 0 ? _a : DEFAULT_VARIANTS;
12
35
  return function Edit({ attributes, setAttributes, }) {
13
36
  var _a, _b;
14
37
  const { variant, disableIcon, spacing } = attributes;
38
+ const style = normaliseStyle(attributes.style);
39
+ const { paletteColors } = useTenantColorPalette();
15
40
  const { blockProps, innerBlocksProps } = useGroupBlock({
16
41
  blockClassName: clsx((_a = options.blockClassName) !== null && _a !== void 0 ? _a : 'g-step wp-block-section', `--variant-${variant}`, disableIcon && '--disable-icon'),
17
42
  containerClassName: [(_b = options.containerClassName) !== null && _b !== void 0 ? _b : 'g-step__container', 'u-grid-responsive', '--cols-3'],
@@ -21,6 +46,6 @@ export function createStepGroupEdit(options) {
21
46
  template: options.template,
22
47
  layout: { type: 'default' },
23
48
  });
24
- return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsxs(PanelBody, { title: __('Nastavení', 'brilo-blocks'), children: [_jsx(ToggleGroupControl, { isBlock: true, label: __('Varianta', 'brilo-blocks'), value: variant, onChange: (v) => setAttributes({ variant: v }), children: VARIANTS.map((v) => (_jsx(ToggleGroupControlOption, { value: v.value, label: v.label }, v.value))) }), _jsx(ToggleControl, { label: __('Vypnout ikonu', 'brilo-blocks'), checked: disableIcon, onChange: (v) => setAttributes({ disableIcon: v }) })] }), _jsx(ItemSpacingPanel, { spacing: spacing, onChange: (v) => setAttributes({ spacing: v }) })] }), _jsx("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
49
+ return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsxs(PanelBody, { title: __('Nastavení', 'brilo-blocks'), children: [_jsx(ToggleGroupControl, { isBlock: true, label: __('Varianta', 'brilo-blocks'), value: variant, onChange: (v) => setAttributes({ variant: v }), children: VARIANTS.map((v) => (_jsx(ToggleGroupControlOption, { value: v.value, label: v.label }, v.value))) }), _jsx(ToggleControl, { label: __('Vypnout ikonu', 'brilo-blocks'), checked: disableIcon, onChange: (v) => setAttributes({ disableIcon: v }) })] }), style && (_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: "step-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: "step-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: "step-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(BaseControl, { label: __('Barva nadpisu', 'brilo-blocks'), id: "step-group-heading-color", children: _jsx(ColorPalette, { colors: paletteColors, value: style.headingColor || undefined, onChange: (value) => setAttributes({ style: { ...style, headingColor: 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))) })] })), _jsxs(PanelBody, { title: __('Ikona', 'brilo-blocks'), initialOpen: false, children: [_jsx(PresetSizeControl, { label: __('Velikost', 'brilo-blocks'), id: "step-group-icon-size", value: style.icon.size, presets: DEFAULT_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 pozadí', 'brilo-blocks'), help: __('Ovládá i barvu spojnice mezi kroky.', 'brilo-blocks'), id: "step-group-icon-background", 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'), id: "step-group-icon-background-size", value: style.icon.backgroundSize, presets: DEFAULT_ICON_BACKGROUND_SIZE_PRESETS, min: ICON_BACKGROUND_SIZE_MIN, max: ICON_BACKGROUND_SIZE_MAX, onChange: (v) => setAttributes({ style: { ...style, icon: { ...style.icon, backgroundSize: v } } }) })] }), _jsx(ItemSpacingPanel, { spacing: spacing, onChange: (v) => setAttributes({ spacing: v }) })] }), _jsx("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
25
50
  };
26
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/step/step-group/factory.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAEzD,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAA;AAE5C,OAAO,KAAK,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAGlE,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,SAAS,CAAA;AAExC,wBAAgB,oBAAoB,CAAC,SAAS,SAAS,WAAW,GAAG,OAAO,gBAAgB,EAC1F,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,GACnC,kBAAkB,CAAC,mBAAmB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAyBrE"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/step/step-group/factory.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAEzD,OAAO,EAAmE,gBAAgB,EAAc,MAAM,aAAa,CAAA;AAE3H,OAAO,KAAK,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAGlE,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,SAAS,CAAA;AAExC,wBAAgB,oBAAoB,CAAC,SAAS,SAAS,WAAW,GAAG,OAAO,gBAAgB,EAC1F,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,GACnC,kBAAkB,CAAC,mBAAmB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAwCrE"}
@@ -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 { DEFAULT_VARIANTS } from './constants';
4
+ import { DEFAULT_ICON_BACKGROUND_SIZE, DEFAULT_SHADOWS, DEFAULT_VARIANTS, TEXT_ALIGNS } from './constants';
5
5
  import { createStepGroupEdit } from './edit';
6
6
  import { icon } from '../../../blocks/step/step-group/icon';
7
7
  import { ITEM_SPACING_ATTRIBUTE } from '../../../components/ItemSpacingControl';
@@ -25,6 +25,21 @@ export function createStepGroupBlock(options) {
25
25
  type: 'boolean',
26
26
  default: false,
27
27
  },
28
+ style: {
29
+ type: 'object',
30
+ default: {
31
+ shadow: DEFAULT_SHADOWS[0].value,
32
+ borderColor: '',
33
+ backgroundColor: '',
34
+ textColor: '',
35
+ headingColor: '',
36
+ textAlign: TEXT_ALIGNS[0].value,
37
+ icon: {
38
+ background: '',
39
+ backgroundSize: DEFAULT_ICON_BACKGROUND_SIZE,
40
+ },
41
+ },
42
+ },
28
43
  ...ITEM_SPACING_ATTRIBUTE,
29
44
  },
30
45
  edit: createStepGroupEdit(options),
@@ -1,9 +1,25 @@
1
1
  import type { BriloBlockType, OptionArray } from '../../../types';
2
- import type { DEFAULT_VARIANTS } from './constants';
2
+ import type { DEFAULT_SHADOWS, DEFAULT_VARIANTS, TEXT_ALIGNS } from './constants';
3
3
  export type StepVariant = (typeof DEFAULT_VARIANTS)[number]['value'];
4
+ export type StepShadow = (typeof DEFAULT_SHADOWS)[number]['value'];
5
+ export type StepTextAlign = (typeof TEXT_ALIGNS)[number]['value'];
6
+ export interface StepIconStyle {
7
+ size: number;
8
+ background: string;
9
+ backgroundSize: number;
10
+ }
4
11
  export interface StepGroupAttributes<TVariant extends string = StepVariant> extends Record<string, unknown> {
5
12
  variant: TVariant;
6
13
  disableIcon: boolean;
14
+ style: {
15
+ shadow: StepShadow;
16
+ borderColor: string;
17
+ backgroundColor: string;
18
+ textColor: string;
19
+ headingColor: string;
20
+ textAlign: StepTextAlign;
21
+ icon: StepIconStyle;
22
+ };
7
23
  spacing?: number;
8
24
  }
9
25
  export interface StepGroupOptions<TVariants extends OptionArray = typeof DEFAULT_VARIANTS> extends BriloBlockType {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/step/step-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACxD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAA;AAEjD,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEpE,MAAM,WAAW,mBAAmB,CAAC,QAAQ,SAAS,MAAM,GAAG,WAAW,CAAE,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACzG,OAAO,EAAE,QAAQ,CAAA;IACjB,WAAW,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,gBAAgB,CAAC,SAAS,SAAS,WAAW,GAAG,OAAO,gBAAgB,CAAE,SAAQ,cAAc;IAC/G,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/step/step-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACxD,OAAO,KAAK,EAAC,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAC,MAAM,aAAa,CAAA;AAE/E,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEpE,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAElE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEjE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,mBAAmB,CAAC,QAAQ,SAAS,MAAM,GAAG,WAAW,CAAE,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACzG,OAAO,EAAE,QAAQ,CAAA;IACjB,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,EAAE;QACL,MAAM,EAAE,UAAU,CAAA;QAClB,WAAW,EAAE,MAAM,CAAA;QACnB,eAAe,EAAE,MAAM,CAAA;QACvB,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,aAAa,CAAA;QACxB,IAAI,EAAE,aAAa,CAAA;KACpB,CAAA;IACD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,gBAAgB,CAAC,SAAS,SAAS,WAAW,GAAG,OAAO,gBAAgB,CAAE,SAAQ,cAAc;IAC/G,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brilo/base-blocks",
3
- "version": "0.1.49",
3
+ "version": "0.1.51",
4
4
  "author": "Brilo",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",
@@ -26,12 +26,7 @@ export function createContactGroupBlock<
26
26
  >(
27
27
  options: ContactGroupOptions<TColumns, TDirections, TShadows, TIconBackgroundShapes>,
28
28
  ): BlockConfiguration<
29
- ContactGroupAttributes<
30
- TColumns[number],
31
- TDirections[number]['value'],
32
- TShadows[number]['value'],
33
- TIconBackgroundShapes[number]['value']
34
- >
29
+ ContactGroupAttributes<TColumns[number], TDirections[number]['value'], TShadows[number]['value'], TIconBackgroundShapes[number]['value']>
35
30
  > {
36
31
  const columns = options.columns ?? CONTACT_COLUMNS
37
32
  const directions = options.directions ?? DEFAULT_DIRECTIONS
@@ -1,11 +1,5 @@
1
1
  import type {BriloBlockType, NumberArray, OptionArray} from '~/types'
2
- import type {
3
- CONTACT_COLUMNS,
4
- DEFAULT_DIRECTIONS,
5
- DEFAULT_ICON_BACKGROUND_SHAPES,
6
- DEFAULT_SHADOWS,
7
- TEXT_ALIGNS,
8
- } from './constants'
2
+ import type {CONTACT_COLUMNS, DEFAULT_DIRECTIONS, DEFAULT_ICON_BACKGROUND_SHAPES, DEFAULT_SHADOWS, TEXT_ALIGNS} from './constants'
9
3
 
10
4
  export type ContactColumns = (typeof CONTACT_COLUMNS)[number]
11
5
 
@@ -65,10 +65,7 @@ export function createContactItemEdit(options: ContactItemOptions) {
65
65
  <ItemIconControl icon={icon} setAttributes={setAttributes} iconTypes={CONTACT_ICON_TYPES} options={iconOptions} />
66
66
  </PanelBody>
67
67
  </InspectorControls>
68
- <div
69
- {...blockProps}
70
- style={{...(blockProps.style as CSSProperties), ...cssVars, '--col-span': span} as CSSProperties}
71
- >
68
+ <div {...blockProps} style={{...(blockProps.style as CSSProperties), ...cssVars, '--col-span': span} as CSSProperties}>
72
69
  <div className={clsx('i-contact__icon-wrap', iconClassName)}>
73
70
  <ItemIconPreview icon={icon} className="i-contact__icon" setAttributes={setAttributes} options={iconOptions} />
74
71
  </div>
@@ -1,2 +1,15 @@
1
+ import {__} from '@wordpress/i18n'
2
+
1
3
  export const COLUMNS = [4, 3, 2] as const
2
4
  export const HEADING_LEVELS = [2, 3, 4] as const
5
+
6
+ export const DEFAULT_SHADOWS = [
7
+ {value: 'none', label: __('Žádný', 'brilo-blocks')},
8
+ {value: 'sm', label: __('Malý', 'brilo-blocks')},
9
+ {value: 'md', label: __('Střední', 'brilo-blocks')},
10
+ ] as const
11
+
12
+ export const TEXT_ALIGNS = [
13
+ {value: 'left', label: __('Vlevo', 'brilo-blocks')},
14
+ {value: 'center', label: __('Na střed', 'brilo-blocks')},
15
+ ] as const