@brilo/base-blocks 0.1.44 → 0.1.45

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 (160) hide show
  1. package/build/.tsbuildinfo +1 -1
  2. package/build/blocks/compare/compare-item/index.js +1 -1
  3. package/build/blocks/faq/faq-group/edit.d.ts.map +1 -1
  4. package/build/blocks/faq/faq-group/edit.js +4 -2
  5. package/build/blocks/faq/faq-group/factory.d.ts.map +1 -1
  6. package/build/blocks/faq/faq-group/factory.js +2 -0
  7. package/build/blocks/faq/faq-group/types.d.ts +1 -0
  8. package/build/blocks/faq/faq-group/types.d.ts.map +1 -1
  9. package/build/blocks/gallery/gallery-group/edit.d.ts.map +1 -1
  10. package/build/blocks/gallery/gallery-group/edit.js +4 -2
  11. package/build/blocks/gallery/gallery-group/factory.d.ts.map +1 -1
  12. package/build/blocks/gallery/gallery-group/factory.js +2 -0
  13. package/build/blocks/gallery/gallery-group/types.d.ts +1 -0
  14. package/build/blocks/gallery/gallery-group/types.d.ts.map +1 -1
  15. package/build/blocks/groups/text-and-media-group/index.d.ts.map +1 -1
  16. package/build/blocks/groups/text-and-media-group/index.js +1 -0
  17. package/build/blocks/list/list-group/constants.d.ts +21 -0
  18. package/build/blocks/list/list-group/constants.d.ts.map +1 -0
  19. package/build/blocks/list/list-group/constants.js +12 -0
  20. package/build/blocks/list/list-group/edit.d.ts +6 -0
  21. package/build/blocks/list/list-group/edit.d.ts.map +1 -0
  22. package/build/blocks/list/list-group/edit.js +30 -0
  23. package/build/blocks/list/list-group/factory.d.ts +7 -0
  24. package/build/blocks/list/list-group/factory.d.ts.map +1 -0
  25. package/build/blocks/list/list-group/factory.js +29 -0
  26. package/build/blocks/list/list-group/icon.d.ts +2 -0
  27. package/build/blocks/list/list-group/icon.d.ts.map +1 -0
  28. package/build/blocks/list/list-group/icon.js +2 -0
  29. package/build/blocks/list/list-group/index.d.ts +5 -0
  30. package/build/blocks/list/list-group/index.d.ts.map +1 -0
  31. package/build/blocks/list/list-group/index.js +11 -0
  32. package/build/blocks/list/list-group/types.d.ts +22 -0
  33. package/build/blocks/list/list-group/types.d.ts.map +1 -0
  34. package/build/blocks/list/list-group/types.js +1 -0
  35. package/build/blocks/list/list-item/buildPreviewStyle.d.ts +20 -0
  36. package/build/blocks/list/list-item/buildPreviewStyle.d.ts.map +1 -0
  37. package/build/blocks/list/list-item/buildPreviewStyle.js +18 -0
  38. package/build/blocks/list/list-item/constants.d.ts +36 -0
  39. package/build/blocks/list/list-item/constants.d.ts.map +1 -0
  40. package/build/blocks/list/list-item/constants.js +16 -0
  41. package/build/blocks/list/list-item/edit.d.ts +11 -0
  42. package/build/blocks/list/list-item/edit.d.ts.map +1 -0
  43. package/build/blocks/list/list-item/edit.js +18 -0
  44. package/build/blocks/list/list-item/factory.d.ts +5 -0
  45. package/build/blocks/list/list-item/factory.d.ts.map +1 -0
  46. package/build/blocks/list/list-item/factory.js +29 -0
  47. package/build/blocks/list/list-item/index.d.ts +5 -0
  48. package/build/blocks/list/list-item/index.d.ts.map +1 -0
  49. package/build/blocks/list/list-item/index.js +7 -0
  50. package/build/blocks/list/list-item/types.d.ts +21 -0
  51. package/build/blocks/list/list-item/types.d.ts.map +1 -0
  52. package/build/blocks/list/list-item/types.js +1 -0
  53. package/build/blocks/priceplan/priceplan-group/edit.d.ts +5 -2
  54. package/build/blocks/priceplan/priceplan-group/edit.d.ts.map +1 -1
  55. package/build/blocks/priceplan/priceplan-group/edit.js +7 -3
  56. package/build/blocks/priceplan/priceplan-group/factory.d.ts.map +1 -1
  57. package/build/blocks/priceplan/priceplan-group/factory.js +2 -1
  58. package/build/blocks/priceplan/priceplan-group/types.d.ts +1 -0
  59. package/build/blocks/priceplan/priceplan-group/types.d.ts.map +1 -1
  60. package/build/blocks/review/review-group/edit.d.ts.map +1 -1
  61. package/build/blocks/review/review-group/edit.js +4 -3
  62. package/build/blocks/review/review-group/factory.d.ts.map +1 -1
  63. package/build/blocks/review/review-group/factory.js +2 -0
  64. package/build/blocks/review/review-group/types.d.ts +1 -0
  65. package/build/blocks/review/review-group/types.d.ts.map +1 -1
  66. package/build/blocks/sections/base-section/constants.d.ts +35 -0
  67. package/build/blocks/sections/base-section/constants.d.ts.map +1 -1
  68. package/build/blocks/sections/base-section/constants.js +10 -0
  69. package/build/blocks/sections/base-section/controls.d.ts.map +1 -1
  70. package/build/blocks/sections/base-section/controls.js +26 -12
  71. package/build/blocks/sections/base-section/edit.d.ts.map +1 -1
  72. package/build/blocks/sections/base-section/edit.js +12 -4
  73. package/build/blocks/sections/base-section/types.d.ts +9 -1
  74. package/build/blocks/sections/base-section/types.d.ts.map +1 -1
  75. package/build/blocks/signpost/signpost-group/edit.d.ts.map +1 -1
  76. package/build/blocks/signpost/signpost-group/edit.js +4 -2
  77. package/build/blocks/signpost/signpost-group/factory.d.ts.map +1 -1
  78. package/build/blocks/signpost/signpost-group/factory.js +2 -0
  79. package/build/blocks/signpost/signpost-group/types.d.ts +1 -0
  80. package/build/blocks/signpost/signpost-group/types.d.ts.map +1 -1
  81. package/build/blocks/step/step-group/edit.d.ts.map +1 -1
  82. package/build/blocks/step/step-group/edit.js +4 -3
  83. package/build/blocks/step/step-group/factory.d.ts.map +1 -1
  84. package/build/blocks/step/step-group/factory.js +2 -0
  85. package/build/blocks/step/step-group/types.d.ts +1 -0
  86. package/build/blocks/step/step-group/types.d.ts.map +1 -1
  87. package/build/blocks/text-and-form/text-and-form-text-column/index.d.ts.map +1 -1
  88. package/build/blocks/text-and-form/text-and-form-text-column/index.js +1 -0
  89. package/build/blocks/usp/usp-group/edit.d.ts.map +1 -1
  90. package/build/blocks/usp/usp-group/edit.js +4 -3
  91. package/build/blocks/usp/usp-group/factory.d.ts.map +1 -1
  92. package/build/blocks/usp/usp-group/factory.js +2 -0
  93. package/build/blocks/usp/usp-group/types.d.ts +1 -0
  94. package/build/blocks/usp/usp-group/types.d.ts.map +1 -1
  95. package/build/blocks/video/video-group/constants.d.ts +1 -0
  96. package/build/blocks/video/video-group/constants.d.ts.map +1 -1
  97. package/build/blocks/video/video-group/constants.js +1 -0
  98. package/build/blocks/video/video-group/edit.d.ts.map +1 -1
  99. package/build/blocks/video/video-group/edit.js +7 -5
  100. package/build/blocks/video/video-group/factory.d.ts.map +1 -1
  101. package/build/blocks/video/video-group/factory.js +5 -1
  102. package/build/blocks/video/video-group/types.d.ts +1 -0
  103. package/build/blocks/video/video-group/types.d.ts.map +1 -1
  104. package/build/components/ItemSpacingControl/index.d.ts +23 -0
  105. package/build/components/ItemSpacingControl/index.d.ts.map +1 -0
  106. package/build/components/ItemSpacingControl/index.js +32 -0
  107. package/build/index.d.ts +4 -0
  108. package/build/index.d.ts.map +1 -1
  109. package/build/index.js +2 -0
  110. package/package.json +1 -1
  111. package/src/blocks/compare/compare-item/index.ts +1 -1
  112. package/src/blocks/faq/faq-group/edit.tsx +4 -1
  113. package/src/blocks/faq/faq-group/factory.tsx +2 -0
  114. package/src/blocks/faq/faq-group/types.ts +1 -0
  115. package/src/blocks/gallery/gallery-group/edit.tsx +4 -1
  116. package/src/blocks/gallery/gallery-group/factory.tsx +2 -0
  117. package/src/blocks/gallery/gallery-group/types.ts +1 -0
  118. package/src/blocks/groups/text-and-media-group/index.ts +1 -0
  119. package/src/blocks/list/list-group/constants.ts +15 -0
  120. package/src/blocks/list/list-group/edit.tsx +102 -0
  121. package/src/blocks/list/list-group/editor.scss +14 -0
  122. package/src/blocks/list/list-group/factory.tsx +35 -0
  123. package/src/blocks/list/list-group/icon.tsx +11 -0
  124. package/src/blocks/list/list-group/index.ts +15 -0
  125. package/src/blocks/list/list-group/types.ts +21 -0
  126. package/src/blocks/list/list-item/buildPreviewStyle.ts +52 -0
  127. package/src/blocks/list/list-item/constants.ts +18 -0
  128. package/src/blocks/list/list-item/edit.tsx +108 -0
  129. package/src/blocks/list/list-item/editor.scss +108 -0
  130. package/src/blocks/list/list-item/factory.tsx +33 -0
  131. package/src/blocks/list/list-item/index.ts +11 -0
  132. package/src/blocks/list/list-item/types.ts +23 -0
  133. package/src/blocks/priceplan/priceplan-group/edit.tsx +21 -5
  134. package/src/blocks/priceplan/priceplan-group/factory.tsx +2 -1
  135. package/src/blocks/priceplan/priceplan-group/types.ts +3 -1
  136. package/src/blocks/review/review-group/edit.tsx +4 -2
  137. package/src/blocks/review/review-group/factory.tsx +2 -0
  138. package/src/blocks/review/review-group/types.ts +1 -0
  139. package/src/blocks/sections/base-section/constants.ts +14 -0
  140. package/src/blocks/sections/base-section/controls.tsx +93 -9
  141. package/src/blocks/sections/base-section/edit.tsx +10 -2
  142. package/src/blocks/sections/base-section/types.ts +14 -1
  143. package/src/blocks/signpost/signpost-group/edit.tsx +4 -1
  144. package/src/blocks/signpost/signpost-group/factory.tsx +2 -0
  145. package/src/blocks/signpost/signpost-group/types.ts +1 -0
  146. package/src/blocks/step/step-group/edit.tsx +4 -2
  147. package/src/blocks/step/step-group/factory.tsx +2 -0
  148. package/src/blocks/step/step-group/types.ts +1 -0
  149. package/src/blocks/text-and-form/text-and-form-text-column/index.ts +1 -0
  150. package/src/blocks/usp/usp-group/edit.tsx +4 -2
  151. package/src/blocks/usp/usp-group/factory.tsx +2 -0
  152. package/src/blocks/usp/usp-group/types.ts +1 -0
  153. package/src/blocks/video/video-group/constants.ts +2 -0
  154. package/src/blocks/video/video-group/edit.tsx +26 -2
  155. package/src/blocks/video/video-group/editor.scss +6 -1
  156. package/src/blocks/video/video-group/factory.tsx +5 -1
  157. package/src/blocks/video/video-group/types.ts +1 -0
  158. package/src/components/ItemSpacingControl/index.tsx +59 -0
  159. package/src/editor.scss +2 -0
  160. package/src/index.ts +4 -0
@@ -2,7 +2,7 @@ export { createCompareItemBlock } from './factory';
2
2
  export const compareItemDefaults = {
3
3
  name: 'brilo/compare-item',
4
4
  parent: ['brilo/compare-group'],
5
- allowedBlocks: ['brilo/compare-option'],
5
+ allowedBlocks: ['brilo/compare-option', 'brilo/list-group'],
6
6
  template: [
7
7
  ['brilo/compare-option', { variant: 'plus' }],
8
8
  ['brilo/compare-option', { variant: 'minus' }],
@@ -1 +1 @@
1
- {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/faq/faq-group/edit.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAC,kBAAkB,EAAE,eAAe,EAA4D,MAAM,SAAS,CAAA;AA+B3H,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,oCAQtD;IACD,UAAU,EAAE,kBAAkB,CAAA;IAC9B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAA;CACxD,iCAwGF"}
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/faq/faq-group/edit.tsx"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAC,kBAAkB,EAAE,eAAe,EAA4D,MAAM,SAAS,CAAA;AA+B3H,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,oCAQtD;IACD,UAAU,EAAE,kBAAkB,CAAA;IAC9B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAA;CACxD,iCA0GF"}
@@ -2,6 +2,7 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
2
2
  import { InspectorControls } from '@wordpress/block-editor';
3
3
  import { BaseControl, Button, ColorPalette, PanelBody, RangeControl, SelectControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
4
4
  import { __ } from '@wordpress/i18n';
5
+ import { ItemSpacingPanel, itemSpacingStyle } from '../../../components/ItemSpacingControl';
5
6
  import { useGroupBlock } from '../../../hooks/useGroupBlock';
6
7
  import { useTenantColorPalette } from '../../../hooks/useTenantColorPalette';
7
8
  import { DEFAULT_ICON_SIZE_PRESETS, DEFAULT_ICON_VARIANTS, DEFAULT_SHADOWS, FAQ_HEADING_LEVELS, ICON_SIZE_MAX, ICON_SIZE_MIN, } from './constants';
@@ -15,16 +16,17 @@ export function createFaqGroupEdit(options) {
15
16
  const exclude = (_c = options.exclude) !== null && _c !== void 0 ? _c : [];
16
17
  return function Edit({ attributes, setAttributes, }) {
17
18
  var _a, _b;
18
- const { headingLevel, iconVariant, style } = attributes;
19
+ const { headingLevel, iconVariant, style, spacing } = attributes;
19
20
  const { paletteColors } = useTenantColorPalette();
20
21
  const { blockProps, innerBlocksProps } = useGroupBlock({
21
22
  blockClassName: (_a = options.blockClassName) !== null && _a !== void 0 ? _a : 'g-faq wp-block-section',
22
23
  containerClassName: (_b = options.containerClassName) !== null && _b !== void 0 ? _b : 'g-faq__items',
24
+ containerStyle: itemSpacingStyle(spacing),
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: __('Nadpis', 'brilo-blocks'), children: _jsx(SelectControl, { label: __('Level nadpisu FAQ', 'brilo-blocks'), value: headingLevel, options: FAQ_HEADING_LEVELS.map((level) => ({ value: level, label: `H${level}` })), onChange: (value) => setAttributes({ headingLevel: value }) }) }), _jsxs(PanelBody, { title: __('Ikona', 'brilo-blocks'), children: [_jsx(SelectControl, { label: __('Typ ikonky', 'brilo-blocks'), value: iconVariant, options: ICON_VARIANTS.map((v) => ({ value: v.value, label: v.label })), onChange: (value) => setAttributes({ iconVariant: value }) }), !exclude.includes('colors') && style && (_jsxs(_Fragment, { 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: "faq-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: "faq-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 : '' } } }) }) })] }))] }), !exclude.includes('colors') && 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: "faq-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: "faq-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: "faq-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("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
30
+ return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsx(PanelBody, { title: __('Nadpis', 'brilo-blocks'), children: _jsx(SelectControl, { label: __('Level nadpisu FAQ', 'brilo-blocks'), value: headingLevel, options: FAQ_HEADING_LEVELS.map((level) => ({ value: level, label: `H${level}` })), onChange: (value) => setAttributes({ headingLevel: value }) }) }), _jsxs(PanelBody, { title: __('Ikona', 'brilo-blocks'), children: [_jsx(SelectControl, { label: __('Typ ikonky', 'brilo-blocks'), value: iconVariant, options: ICON_VARIANTS.map((v) => ({ value: v.value, label: v.label })), onChange: (value) => setAttributes({ iconVariant: value }) }), !exclude.includes('colors') && style && (_jsxs(_Fragment, { 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: "faq-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: "faq-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 : '' } } }) }) })] }))] }), !exclude.includes('colors') && 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: "faq-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: "faq-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: "faq-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(ItemSpacingPanel, { spacing: spacing, onChange: (v) => setAttributes({ spacing: v }) })] }), _jsx("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
29
31
  };
30
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/faq/faq-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,EAAoB,qBAAqB,EAAsC,MAAM,aAAa,CAAA;AAEzG,OAAO,KAAK,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAA;AAEhE,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,CAAA;AAEjD,wBAAgB,mBAAmB,CAAC,aAAa,SAAS,WAAW,GAAG,OAAO,qBAAqB,EAClG,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,GACtC,kBAAkB,CAAC,kBAAkB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CA8CxE"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/faq/faq-group/factory.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAGzD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,SAAS,CAAA;AACxC,OAAO,EAAoB,qBAAqB,EAAsC,MAAM,aAAa,CAAA;AAEzG,OAAO,KAAK,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAA;AAEhE,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,CAAA;AAEjD,wBAAgB,mBAAmB,CAAC,aAAa,SAAS,WAAW,GAAG,OAAO,qBAAqB,EAClG,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,GACtC,kBAAkB,CAAC,kBAAkB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CA+CxE"}
@@ -1,6 +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 { ITEM_SPACING_ATTRIBUTE } from '../../../components/ItemSpacingControl';
4
5
  import { DEFAULT_ICON_SIZE, DEFAULT_ICON_VARIANTS, DEFAULT_SHADOWS, FAQ_HEADING_LEVELS } from './constants';
5
6
  import { createFaqGroupEdit } from './edit';
6
7
  export function createFaqGroupBlock(options) {
@@ -19,6 +20,7 @@ export function createFaqGroupBlock(options) {
19
20
  default: (_d = (_a = iconVariants[1]) === null || _a === void 0 ? void 0 : _a.value) !== null && _d !== void 0 ? _d : iconVariants[0].value,
20
21
  enum: iconVariants.map((v) => v.value),
21
22
  },
23
+ ...ITEM_SPACING_ATTRIBUTE,
22
24
  };
23
25
  if (!exclude.includes('colors')) {
24
26
  attributes.style = {
@@ -22,6 +22,7 @@ export interface FaqGroupAttributes<TIconVariant extends string = FaqIconVariant
22
22
  size: number;
23
23
  };
24
24
  };
25
+ spacing?: number;
25
26
  }
26
27
  export interface FaqGroupOptions<TIconVariants extends OptionArray = typeof DEFAULT_ICON_VARIANTS> extends BriloBlockType {
27
28
  iconVariants?: TIconVariants;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/faq/faq-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACxD,OAAO,KAAK,EAAC,qBAAqB,EAAE,eAAe,EAAE,kBAAkB,EAAC,MAAM,aAAa,CAAA;AAE3F,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAA;AACjE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAC5E,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEjE,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAA;AAExC,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,kBAAkB,CAAC,YAAY,SAAS,MAAM,GAAG,cAAc,CAAE,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/G,YAAY,EAAE,eAAe,CAAA;IAC7B,WAAW,EAAE,YAAY,CAAA;IACzB,KAAK,EAAE;QACL,MAAM,EAAE,SAAS,CAAA;QACjB,WAAW,EAAE,MAAM,CAAA;QACnB,eAAe,EAAE,MAAM,CAAA;QACvB,SAAS,EAAE,MAAM,CAAA;QACjB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAA;YACb,UAAU,EAAE,MAAM,CAAA;YAClB,IAAI,EAAE,MAAM,CAAA;SACb,CAAA;KACF,CAAA;CACF;AAED,MAAM,WAAW,eAAe,CAAC,aAAa,SAAS,WAAW,GAAG,OAAO,qBAAqB,CAAE,SAAQ,cAAc;IACvH,YAAY,CAAC,EAAE,aAAa,CAAA;IAC5B,eAAe,CAAC,EAAE,SAAS,aAAa,EAAE,CAAA;IAC1C,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAA;CAC9B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/faq/faq-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACxD,OAAO,KAAK,EAAC,qBAAqB,EAAE,eAAe,EAAE,kBAAkB,EAAC,MAAM,aAAa,CAAA;AAE3F,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAA;AACjE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAC5E,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEjE,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAA;AAExC,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,kBAAkB,CAAC,YAAY,SAAS,MAAM,GAAG,cAAc,CAAE,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/G,YAAY,EAAE,eAAe,CAAA;IAC7B,WAAW,EAAE,YAAY,CAAA;IACzB,KAAK,EAAE;QACL,MAAM,EAAE,SAAS,CAAA;QACjB,WAAW,EAAE,MAAM,CAAA;QACnB,eAAe,EAAE,MAAM,CAAA;QACvB,SAAS,EAAE,MAAM,CAAA;QACjB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAA;YACb,UAAU,EAAE,MAAM,CAAA;YAClB,IAAI,EAAE,MAAM,CAAA;SACb,CAAA;KACF,CAAA;IACD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,eAAe,CAAC,aAAa,SAAS,WAAW,GAAG,OAAO,qBAAqB,CAAE,SAAQ,cAAc;IACvH,YAAY,CAAC,EAAE,aAAa,CAAA;IAC5B,eAAe,CAAC,EAAE,SAAS,aAAa,EAAE,CAAA;IAC1C,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAA;CAC9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/gallery/gallery-group/edit.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAC,sBAAsB,EAAE,mBAAmB,EAAe,MAAM,SAAS,CAAA;AAOtF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,mBAAmB,8CAQ9D;IACD,UAAU,EAAE,sBAAsB,CAAA;IAClC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,KAAK,IAAI,CAAA;IAC3D,QAAQ,EAAE,MAAM,CAAA;CACjB,iCAoFF"}
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/gallery/gallery-group/edit.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAC,sBAAsB,EAAE,mBAAmB,EAAe,MAAM,SAAS,CAAA;AAOtF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,mBAAmB,8CAQ9D;IACD,UAAU,EAAE,sBAAsB,CAAA;IAClC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,KAAK,IAAI,CAAA;IAC3D,QAAQ,EAAE,MAAM,CAAA;CACjB,iCAsFF"}
@@ -5,6 +5,7 @@ import { __ } from '@wordpress/i18n';
5
5
  import { useDispatch } from '@wordpress/data';
6
6
  import { createBlock } from '@wordpress/blocks';
7
7
  import clsx from 'clsx';
8
+ import { ItemSpacingPanel, itemSpacingStyle } from '../../../components/ItemSpacingControl';
8
9
  import { useGroupBlock } from '../../../hooks/useGroupBlock';
9
10
  import { DEFAULT_COLUMNS, DEFAULT_RATIOS } from './constants';
10
11
  export function createGalleryGroupEdit(options) {
@@ -13,7 +14,7 @@ export function createGalleryGroupEdit(options) {
13
14
  const RATIOS = (_b = options.ratios) !== null && _b !== void 0 ? _b : DEFAULT_RATIOS;
14
15
  return function Edit({ attributes, setAttributes, clientId, }) {
15
16
  var _a, _b;
16
- const { columns, ratio, galleryId } = attributes;
17
+ const { columns, ratio, galleryId, spacing } = attributes;
17
18
  const { insertBlock } = useDispatch('core/block-editor');
18
19
  const addNewBlock = (imageId) => {
19
20
  const newBlock = createBlock(options.allowedBlocks[0], {
@@ -35,12 +36,13 @@ export function createGalleryGroupEdit(options) {
35
36
  containerStyle: {
36
37
  '--grid-max-col-count': columns,
37
38
  '--gallery-aspect-ratio': ratio.replace(':', '/'),
39
+ ...itemSpacingStyle(spacing),
38
40
  },
39
41
  allowedBlocks: options.allowedBlocks,
40
42
  renderAppender: CustomAppender,
41
43
  template: options.template,
42
44
  layout: { type: 'default' },
43
45
  });
44
- 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: __('Poměr stran', 'brilo-blocks'), value: ratio, onChange: (v) => setAttributes({ ratio: v }), children: RATIOS.map((r) => (_jsx(ToggleGroupControlOption, { value: r.value, label: r.label }, r.value))) }), _jsx(TextControl, { label: __('Gallery ID', 'brilo-blocks'), value: galleryId, onChange: (v) => setAttributes({ galleryId: v }), help: __('ID pro oddělení/spojení galerií', 'brilo-blocks') })] }) }), _jsx("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
46
+ 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: __('Poměr stran', 'brilo-blocks'), value: ratio, onChange: (v) => setAttributes({ ratio: v }), children: RATIOS.map((r) => (_jsx(ToggleGroupControlOption, { value: r.value, label: r.label }, r.value))) }), _jsx(TextControl, { label: __('Gallery ID', 'brilo-blocks'), value: galleryId, onChange: (v) => setAttributes({ galleryId: v }), help: __('ID pro oddělení/spojení galerií', 'brilo-blocks') })] }), _jsx(ItemSpacingPanel, { spacing: spacing, onChange: (v) => setAttributes({ spacing: v }) })] }), _jsx("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
45
47
  };
46
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/gallery/gallery-group/factory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAIzD,OAAO,KAAK,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,SAAS,CAAA;AAGxE,YAAY,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,CAAA;AAEzD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,mBAAmB,GAAG,kBAAkB,CAAC,sBAAsB,CAAC,CA0BhH"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/gallery/gallery-group/factory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAKzD,OAAO,KAAK,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,SAAS,CAAA;AAGxE,YAAY,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,CAAA;AAEzD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,mBAAmB,GAAG,kBAAkB,CAAC,sBAAsB,CAAC,CA2BhH"}
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { __ } from '@wordpress/i18n';
3
+ import { ITEM_SPACING_ATTRIBUTE } from '../../../components/ItemSpacingControl';
3
4
  import { createGalleryGroupEdit } from './edit';
4
5
  import { DEFAULT_COLUMNS, DEFAULT_RATIOS } from './constants';
5
6
  import { InnerBlocks } from '@wordpress/block-editor';
@@ -26,6 +27,7 @@ export function createGalleryGroupBlock(options) {
26
27
  type: 'string',
27
28
  default: 'gallery',
28
29
  },
30
+ ...ITEM_SPACING_ATTRIBUTE,
29
31
  },
30
32
  edit: createGalleryGroupEdit(options),
31
33
  save: () => _jsx(InnerBlocks.Content, {}),
@@ -6,6 +6,7 @@ export interface GalleryGroupAttributes<TColumn extends number = GalleryColumns,
6
6
  columns: TColumn;
7
7
  ratio: TRatio;
8
8
  galleryId: string;
9
+ spacing?: number;
9
10
  }
10
11
  export interface GalleryGroupOptions<TColumns extends NumberArray = typeof DEFAULT_COLUMNS, TRatios extends OptionArray = typeof DEFAULT_RATIOS> extends BriloBlockType {
11
12
  allowedBlocks: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/gallery/gallery-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACrE,OAAO,KAAK,EAAC,eAAe,EAAE,cAAc,EAAC,MAAM,aAAa,CAAA;AAEhE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAC7D,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEnE,MAAM,WAAW,sBAAsB,CAAC,OAAO,SAAS,MAAM,GAAG,cAAc,EAAE,MAAM,SAAS,MAAM,GAAG,YAAY,CACnH,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,mBAAmB,CAClC,QAAQ,SAAS,WAAW,GAAG,OAAO,eAAe,EACrD,OAAO,SAAS,WAAW,GAAG,OAAO,cAAc,CACnD,SAAQ,cAAc;IACtB,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/gallery/gallery-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACrE,OAAO,KAAK,EAAC,eAAe,EAAE,cAAc,EAAC,MAAM,aAAa,CAAA;AAEhE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAC7D,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAEnE,MAAM,WAAW,sBAAsB,CAAC,OAAO,SAAS,MAAM,GAAG,cAAc,EAAE,MAAM,SAAS,MAAM,GAAG,YAAY,CACnH,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,mBAAmB,CAClC,QAAQ,SAAS,WAAW,GAAG,OAAO,eAAe,EACrD,OAAO,SAAS,WAAW,GAAG,OAAO,cAAc,CACnD,SAAQ,cAAc;IACtB,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/groups/text-and-media-group/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,2BAA2B,EAAE,wBAAwB,EAAC,MAAM,SAAS,CAAA;AAClF,OAAO,EAAC,4BAA4B,EAAC,MAAM,WAAW,CAAA;AAEtD,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,SAAS,CAAA;AAErD,eAAO,MAAM,yBAAyB,EAAE,wBAYvC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/groups/text-and-media-group/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,2BAA2B,EAAE,wBAAwB,EAAC,MAAM,SAAS,CAAA;AAClF,OAAO,EAAC,4BAA4B,EAAC,MAAM,WAAW,CAAA;AAEtD,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,SAAS,CAAA;AAErD,eAAO,MAAM,yBAAyB,EAAE,wBAavC,CAAA"}
@@ -7,6 +7,7 @@ export const textAndMediaGroupDefaults = {
7
7
  'brilo/basic-heading',
8
8
  'brilo/basic-overline',
9
9
  'brilo/button-group',
10
+ 'brilo/list-group',
10
11
  'core/heading',
11
12
  'core/list',
12
13
  'core/paragraph',
@@ -0,0 +1,21 @@
1
+ export { CONTENT_SIZES as DEFAULT_CONTENT_SIZES } from '../../../constants';
2
+ export declare const DEFAULT_BULLET_SIZE = 24;
3
+ export declare const BULLET_SIZE_MIN = 8;
4
+ export declare const BULLET_SIZE_MAX = 96;
5
+ export declare const DEFAULT_BULLET_SIZE_PRESETS: readonly [{
6
+ readonly value: 16;
7
+ readonly label: import("@wordpress/i18n").TransformedText<"XS">;
8
+ }, {
9
+ readonly value: 20;
10
+ readonly label: import("@wordpress/i18n").TransformedText<"SM">;
11
+ }, {
12
+ readonly value: 24;
13
+ readonly label: import("@wordpress/i18n").TransformedText<"MD">;
14
+ }, {
15
+ readonly value: 32;
16
+ readonly label: import("@wordpress/i18n").TransformedText<"LG">;
17
+ }, {
18
+ readonly value: 48;
19
+ readonly label: import("@wordpress/i18n").TransformedText<"XL">;
20
+ }];
21
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-group/constants.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,aAAa,IAAI,qBAAqB,EAAC,MAAM,aAAa,CAAA;AAElE,eAAO,MAAM,mBAAmB,KAAK,CAAA;AACrC,eAAO,MAAM,eAAe,IAAI,CAAA;AAChC,eAAO,MAAM,eAAe,KAAK,CAAA;AAEjC,eAAO,MAAM,2BAA2B;aACrC,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"}
@@ -0,0 +1,12 @@
1
+ import { __ } from '@wordpress/i18n';
2
+ export { CONTENT_SIZES as DEFAULT_CONTENT_SIZES } from '../../../constants';
3
+ export const DEFAULT_BULLET_SIZE = 24;
4
+ export const BULLET_SIZE_MIN = 8;
5
+ export const BULLET_SIZE_MAX = 96;
6
+ export const DEFAULT_BULLET_SIZE_PRESETS = [
7
+ { value: 16, label: __('XS', 'brilo-blocks') },
8
+ { value: 20, label: __('SM', 'brilo-blocks') },
9
+ { value: 24, label: __('MD', 'brilo-blocks') },
10
+ { value: 32, label: __('LG', 'brilo-blocks') },
11
+ { value: 48, label: __('XL', 'brilo-blocks') },
12
+ ];
@@ -0,0 +1,6 @@
1
+ import type { ListGroupAttributes, ListGroupOptions } from './types';
2
+ export declare function createListGroupEdit(options: ListGroupOptions): ({ attributes, setAttributes, }: {
3
+ attributes: ListGroupAttributes;
4
+ setAttributes: (a: Partial<ListGroupAttributes>) => void;
5
+ }) => import("react").JSX.Element;
6
+ //# sourceMappingURL=edit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-group/edit.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAwC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAA;AA+BzG,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,oCAOxD;IACD,UAAU,EAAE,mBAAmB,CAAA;IAC/B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;CACzD,iCA8CF"}
@@ -0,0 +1,30 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { InspectorControls } from '@wordpress/block-editor';
3
+ import { PanelBody, Button, RangeControl, BaseControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, } from '@wordpress/components';
4
+ import { __ } from '@wordpress/i18n';
5
+ import clsx from 'clsx';
6
+ import { ItemSpacingPanel, itemSpacingStyle } from '../../../components/ItemSpacingControl';
7
+ import { useGroupBlock } from '../../../hooks/useGroupBlock';
8
+ import { BULLET_SIZE_MAX, BULLET_SIZE_MIN, DEFAULT_BULLET_SIZE_PRESETS, DEFAULT_CONTENT_SIZES } from './constants';
9
+ function PresetSizeControl({ label, value, presets, min, max, onChange, }) {
10
+ return (_jsxs(BaseControl, { label: label, id: `list-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 })] }));
11
+ }
12
+ export function createListGroupEdit(options) {
13
+ var _a, _b;
14
+ const CONTENT_SIZES = (_a = options.contentSizes) !== null && _a !== void 0 ? _a : DEFAULT_CONTENT_SIZES;
15
+ const BULLET_SIZE_PRESETS = (_b = options.bulletSizePresets) !== null && _b !== void 0 ? _b : DEFAULT_BULLET_SIZE_PRESETS;
16
+ return function Edit({ attributes, setAttributes, }) {
17
+ var _a, _b;
18
+ const { content, bullet, spacing } = attributes;
19
+ const { blockProps, innerBlocksProps } = useGroupBlock({
20
+ blockClassName: clsx((_a = options.blockClassName) !== null && _a !== void 0 ? _a : 'g-list wp-block-section'),
21
+ containerClassName: (_b = options.containerClassName) !== null && _b !== void 0 ? _b : 'g-list__items',
22
+ containerStyle: { '--bullet-size': `${bullet.size}px`, ...itemSpacingStyle(spacing) },
23
+ allowedBlocks: options.allowedBlocks,
24
+ orientation: 'vertical',
25
+ template: options.template,
26
+ layout: { type: 'default' },
27
+ });
28
+ return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsx(PanelBody, { title: __('Rozložení', 'brilo-blocks'), children: _jsx(ToggleGroupControl, { isBlock: true, label: __('Velikost textu', 'brilo-blocks'), value: content.size, onChange: (v) => setAttributes({ content: { size: v } }), children: CONTENT_SIZES.map((s) => (_jsx(ToggleGroupControlOption, { value: s.value, label: s.label }, s.value))) }) }), _jsx(PanelBody, { title: __('Velikost odrážek', 'brilo-blocks'), children: _jsx(PresetSizeControl, { label: __('Velikost', 'brilo-blocks'), value: bullet.size, presets: BULLET_SIZE_PRESETS, min: BULLET_SIZE_MIN, max: BULLET_SIZE_MAX, onChange: (v) => setAttributes({ bullet: { ...bullet, size: v } }) }) }), _jsx(ItemSpacingPanel, { spacing: spacing, onChange: (v) => setAttributes({ spacing: v }) })] }), _jsx("div", { ...blockProps, children: _jsx("div", { ...innerBlocksProps }) })] }));
29
+ };
30
+ }
@@ -0,0 +1,7 @@
1
+ import type { BlockConfiguration } from '@wordpress/blocks';
2
+ import type { OptionArray } from '../../../types';
3
+ import { DEFAULT_CONTENT_SIZES } from './constants';
4
+ import type { ListGroupAttributes, ListGroupOptions } from './types';
5
+ export type { ListGroupAttributes, ListGroupOptions };
6
+ export declare function createListGroupBlock<TContentSizes extends OptionArray = typeof DEFAULT_CONTENT_SIZES>(options: ListGroupOptions<TContentSizes>): BlockConfiguration<ListGroupAttributes<TContentSizes[number]['value']>>;
7
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-group/factory.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAGzD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,SAAS,CAAA;AACxC,OAAO,EAAsB,qBAAqB,EAAC,MAAM,aAAa,CAAA;AAGtE,OAAO,KAAK,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAElE,YAAY,EAAC,mBAAmB,EAAE,gBAAgB,EAAC,CAAA;AAEnD,wBAAgB,oBAAoB,CAAC,aAAa,SAAS,WAAW,GAAG,OAAO,qBAAqB,EACnG,OAAO,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACvC,kBAAkB,CAAC,mBAAmB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAoBzE"}
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { InnerBlocks } from '@wordpress/block-editor';
3
+ import { __ } from '@wordpress/i18n';
4
+ import { ITEM_SPACING_ATTRIBUTE } from '../../../components/ItemSpacingControl';
5
+ import { DEFAULT_BULLET_SIZE, DEFAULT_CONTENT_SIZES } from './constants';
6
+ import { createListGroupEdit } from './edit';
7
+ import { icon as defaultIcon } from './icon';
8
+ export function createListGroupBlock(options) {
9
+ var _a;
10
+ var _b, _c, _d, _e, _f;
11
+ const contentSizes = (_b = options.contentSizes) !== null && _b !== void 0 ? _b : DEFAULT_CONTENT_SIZES;
12
+ return {
13
+ name: options.name,
14
+ title: (_c = options.title) !== null && _c !== void 0 ? _c : __('Seznam s odrážkami', 'brilo-blocks'),
15
+ description: options.description,
16
+ category: (_d = options.category) !== null && _d !== void 0 ? _d : 'layout',
17
+ ...(options.parent && { parent: options.parent }),
18
+ icon: (_e = options.icon) !== null && _e !== void 0 ? _e : { src: defaultIcon },
19
+ supports: { html: false, customClassName: false },
20
+ providesContext: { 'brilo/list-bullet': 'bullet', 'brilo/list-content': 'content' },
21
+ attributes: {
22
+ content: { type: 'object', default: { size: (_f = (_a = contentSizes[1]) === null || _a === void 0 ? void 0 : _a.value) !== null && _f !== void 0 ? _f : contentSizes[0].value } },
23
+ bullet: { type: 'object', default: { size: DEFAULT_BULLET_SIZE } },
24
+ ...ITEM_SPACING_ATTRIBUTE,
25
+ },
26
+ edit: createListGroupEdit(options),
27
+ save: () => _jsx(InnerBlocks.Content, {}),
28
+ };
29
+ }
@@ -0,0 +1,2 @@
1
+ export declare const icon: import("react").JSX.Element;
2
+ //# sourceMappingURL=icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-group/icon.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI,6BAUhB,CAAA"}
@@ -0,0 +1,2 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ export const icon = (_jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("title", { children: "List Group" }), _jsx("circle", { cx: "3.5", cy: "5", r: "1.5", fill: "black" }), _jsx("circle", { cx: "3.5", cy: "10", r: "1.5", fill: "black" }), _jsx("circle", { cx: "3.5", cy: "15", r: "1.5", fill: "black" }), _jsx("path", { d: "M7 4H17V6H7V4Z", fill: "black" }), _jsx("path", { d: "M7 9H17V11H7V9Z", fill: "black" }), _jsx("path", { d: "M7 14H17V16H7V14Z", fill: "black" })] }));
@@ -0,0 +1,5 @@
1
+ export type { ListContentSize, ListGroupAttributes, ListGroupOptions } from './types';
2
+ export { createListGroupBlock } from './factory';
3
+ import type { ListGroupOptions } from './types';
4
+ export declare const listGroupDefaults: ListGroupOptions;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-group/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,SAAS,CAAA;AACnF,OAAO,EAAC,oBAAoB,EAAC,MAAM,WAAW,CAAA;AAE9C,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAE7C,eAAO,MAAM,iBAAiB,EAAE,gBAS/B,CAAA"}
@@ -0,0 +1,11 @@
1
+ export { createListGroupBlock } from './factory';
2
+ export const listGroupDefaults = {
3
+ name: 'brilo/list-group',
4
+ parent: ['brilo/base-section', 'brilo/text-and-media-group', 'brilo/compare-item'],
5
+ allowedBlocks: ['brilo/list-item'],
6
+ template: [
7
+ ['brilo/list-item', {}],
8
+ ['brilo/list-item', {}],
9
+ ['brilo/list-item', {}],
10
+ ],
11
+ };
@@ -0,0 +1,22 @@
1
+ import type { BriloBlockType, OptionArray } from '../../../types';
2
+ import type { DEFAULT_CONTENT_SIZES } from './constants';
3
+ export type ListContentSize = (typeof DEFAULT_CONTENT_SIZES)[number]['value'];
4
+ export interface ListBulletSizePreset {
5
+ value: number;
6
+ label: string;
7
+ }
8
+ export interface ListGroupAttributes<TContentSize extends string = ListContentSize> extends Record<string, unknown> {
9
+ content: {
10
+ size: TContentSize;
11
+ };
12
+ bullet: {
13
+ size: number;
14
+ };
15
+ spacing?: number;
16
+ }
17
+ export interface ListGroupOptions<TContentSizes extends OptionArray = typeof DEFAULT_CONTENT_SIZES> extends BriloBlockType {
18
+ allowedBlocks: string[];
19
+ contentSizes?: TContentSizes;
20
+ bulletSizePresets?: readonly ListBulletSizePreset[];
21
+ }
22
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-group/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACxD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,aAAa,CAAA;AAEtD,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAA;AAE7E,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,mBAAmB,CAAC,YAAY,SAAS,MAAM,GAAG,eAAe,CAAE,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACjH,OAAO,EAAE;QAAC,IAAI,EAAE,YAAY,CAAA;KAAC,CAAA;IAC7B,MAAM,EAAE;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,gBAAgB,CAAC,aAAa,SAAS,WAAW,GAAG,OAAO,qBAAqB,CAAE,SAAQ,cAAc;IACxH,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,YAAY,CAAC,EAAE,aAAa,CAAA;IAC5B,iBAAiB,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAA;CACpD"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,20 @@
1
+ export interface ListSharedBullet {
2
+ size?: number;
3
+ }
4
+ export interface ListSharedContent {
5
+ size?: string;
6
+ }
7
+ export interface ListBulletStyle {
8
+ color?: string;
9
+ background?: string;
10
+ backgroundShape?: string;
11
+ borderColor?: string;
12
+ borderWidth?: number;
13
+ }
14
+ export interface ListPreviewStyle {
15
+ rootClassName: string;
16
+ bulletClassName: string;
17
+ cssVars: Record<string, string>;
18
+ }
19
+ export declare function buildListPreviewStyle(sharedBullet: ListSharedBullet | undefined, bulletStyle: ListBulletStyle | undefined, sharedContent: ListSharedContent | undefined, resolveHex?: (value: string) => string): ListPreviewStyle;
20
+ //# sourceMappingURL=buildPreviewStyle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildPreviewStyle.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-item/buildPreviewStyle.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,gBAAgB,GAAG,SAAS,EAC1C,WAAW,EAAE,eAAe,GAAG,SAAS,EACxC,aAAa,EAAE,iBAAiB,GAAG,SAAS,EAC5C,UAAU,GAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAyB,GACvD,gBAAgB,CAsBlB"}
@@ -0,0 +1,18 @@
1
+ import clsx from 'clsx';
2
+ export function buildListPreviewStyle(sharedBullet, bulletStyle, sharedContent, resolveHex = (value) => value) {
3
+ const bullet = bulletStyle !== null && bulletStyle !== void 0 ? bulletStyle : {};
4
+ const rootClassName = clsx((sharedContent === null || sharedContent === void 0 ? void 0 : sharedContent.size) && `--text-${sharedContent.size}`, bullet.background && bullet.background !== 'none' && '--has-bg', bullet.color && bullet.color !== 'none' && '--has-color', bullet.borderColor && '--bordered');
5
+ const bulletClassName = clsx(bullet.backgroundShape && bullet.backgroundShape !== 'none' && `--shape --shape-${bullet.backgroundShape}`);
6
+ const cssVars = {};
7
+ if (sharedBullet === null || sharedBullet === void 0 ? void 0 : sharedBullet.size)
8
+ cssVars['--bullet-size'] = `${sharedBullet.size}px`;
9
+ if (bullet.color && bullet.color !== 'none')
10
+ cssVars['--bullet-color'] = resolveHex(bullet.color);
11
+ if (bullet.background && bullet.background !== 'none')
12
+ cssVars['--bullet-bg'] = resolveHex(bullet.background);
13
+ if (bullet.borderColor) {
14
+ cssVars['--bullet-outline-color'] = resolveHex(bullet.borderColor);
15
+ cssVars['--bullet-outline-width'] = `${bullet.borderWidth || 1}px`;
16
+ }
17
+ return { rootClassName, bulletClassName, cssVars };
18
+ }
@@ -0,0 +1,36 @@
1
+ export declare const ICON_TYPES: readonly [{
2
+ readonly value: 'preselected';
3
+ readonly label: import("@wordpress/i18n").TransformedText<"Předvolená">;
4
+ }, {
5
+ readonly value: 'media';
6
+ readonly label: import("@wordpress/i18n").TransformedText<"Obrázek">;
7
+ }, {
8
+ readonly value: 'number';
9
+ readonly label: import("@wordpress/i18n").TransformedText<"Číslo">;
10
+ }];
11
+ export declare const DEFAULT_BULLET_SHAPES: readonly [{
12
+ readonly value: 'none';
13
+ readonly label: import("@wordpress/i18n").TransformedText<"Žádný">;
14
+ }, {
15
+ readonly value: 'circle';
16
+ readonly label: import("@wordpress/i18n").TransformedText<"Kruh">;
17
+ }, {
18
+ readonly value: 'triangle';
19
+ readonly label: import("@wordpress/i18n").TransformedText<"Trojúhelník">;
20
+ }, {
21
+ readonly value: 'rhombus';
22
+ readonly label: import("@wordpress/i18n").TransformedText<"Kosočtverec">;
23
+ }, {
24
+ readonly value: 'octagon';
25
+ readonly label: import("@wordpress/i18n").TransformedText<"Osmiúhelník">;
26
+ }, {
27
+ readonly value: 'bevel';
28
+ readonly label: import("@wordpress/i18n").TransformedText<"Zkosený">;
29
+ }, {
30
+ readonly value: 'rabbet';
31
+ readonly label: import("@wordpress/i18n").TransformedText<"Drážkovaný">;
32
+ }, {
33
+ readonly value: 'parallelogram';
34
+ readonly label: import("@wordpress/i18n").TransformedText<"Rovnoběžník">;
35
+ }];
36
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-item/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU;aACpB,KAAK,EAAE,aAAa;aAAE,KAAK;;aAC3B,KAAK,EAAE,OAAO;aAAE,KAAK;;aACrB,KAAK,EAAE,QAAQ;aAAE,KAAK;EACf,CAAA;AAEV,eAAO,MAAM,qBAAqB;aAC/B,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"}
@@ -0,0 +1,16 @@
1
+ import { __ } from '@wordpress/i18n';
2
+ export const ICON_TYPES = [
3
+ { value: 'preselected', label: __('Předvolená', 'brilo-blocks') },
4
+ { value: 'media', label: __('Obrázek', 'brilo-blocks') },
5
+ { value: 'number', label: __('Číslo', 'brilo-blocks') },
6
+ ];
7
+ export const DEFAULT_BULLET_SHAPES = [
8
+ { value: 'none', label: __('Žádný', 'brilo-blocks') },
9
+ { value: 'circle', label: __('Kruh', 'brilo-blocks') },
10
+ { value: 'triangle', label: __('Trojúhelník', 'brilo-blocks') },
11
+ { value: 'rhombus', label: __('Kosočtverec', 'brilo-blocks') },
12
+ { value: 'octagon', label: __('Osmiúhelník', 'brilo-blocks') },
13
+ { value: 'bevel', label: __('Zkosený', 'brilo-blocks') },
14
+ { value: 'rabbet', label: __('Drážkovaný', 'brilo-blocks') },
15
+ { value: 'parallelogram', label: __('Rovnoběžník', 'brilo-blocks') },
16
+ ];
@@ -0,0 +1,11 @@
1
+ import { type ListSharedBullet, type ListSharedContent } from './buildPreviewStyle';
2
+ import type { ListItemAttributes, ListItemOptions } from './types';
3
+ export declare function createListItemEdit(options: ListItemOptions): ({ attributes, setAttributes, context, }: {
4
+ attributes: ListItemAttributes;
5
+ setAttributes: (a: Partial<ListItemAttributes>) => void;
6
+ context?: {
7
+ 'brilo/list-bullet'?: ListSharedBullet;
8
+ 'brilo/list-content'?: ListSharedContent;
9
+ };
10
+ }) => import("react").JSX.Element;
11
+ //# sourceMappingURL=edit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-item/edit.tsx"],"names":[],"mappings":"AAMA,OAAO,EAA8C,KAAK,gBAAgB,EAAE,KAAK,iBAAiB,EAAC,MAAM,qBAAqB,CAAA;AAE9H,OAAO,KAAK,EAAkB,kBAAkB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAA;AAEjF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,6CAKtD;IACD,UAAU,EAAE,kBAAkB,CAAA;IAC9B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAA;IACvD,OAAO,CAAC,EAAE;QAAC,mBAAmB,CAAC,EAAE,gBAAgB,CAAC;QAAC,oBAAoB,CAAC,EAAE,iBAAiB,CAAA;KAAC,CAAA;CAC7F,iCAwFF"}
@@ -0,0 +1,18 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { InspectorControls, RichText, useBlockProps } from '@wordpress/block-editor';
3
+ import { PanelBody, RangeControl, BaseControl, ColorPalette, SelectControl } from '@wordpress/components';
4
+ import { __ } from '@wordpress/i18n';
5
+ import clsx from 'clsx';
6
+ import { ItemIconControl, ItemIconPreview } from '../../../components/ItemIconControl';
7
+ import { useTenantColorPalette } from '../../../hooks/useTenantColorPalette';
8
+ import { buildListPreviewStyle } from './buildPreviewStyle';
9
+ import { DEFAULT_BULLET_SHAPES, ICON_TYPES } from './constants';
10
+ export function createListItemEdit(options) {
11
+ return function Edit({ attributes, setAttributes, context, }) {
12
+ const { text, icon, bulletStyle } = attributes;
13
+ const { paletteColors, resolveHex } = useTenantColorPalette();
14
+ const { rootClassName, bulletClassName, cssVars } = buildListPreviewStyle(context === null || context === void 0 ? void 0 : context['brilo/list-bullet'], bulletStyle, context === null || context === void 0 ? void 0 : context['brilo/list-content'], resolveHex);
15
+ const blockProps = useBlockProps({ className: clsx('i-list', rootClassName), style: cssVars });
16
+ return (_jsxs(_Fragment, { children: [_jsxs(InspectorControls, { children: [_jsx(PanelBody, { title: __('Ikona', 'brilo-blocks'), children: _jsx(ItemIconControl, { icon: icon, setAttributes: setAttributes, iconTypes: ICON_TYPES, options: options }) }), _jsxs(PanelBody, { title: __('Vzhled odrážky', 'brilo-blocks'), children: [_jsx(BaseControl, { label: __('Barva', 'brilo-blocks'), id: "list-item-bullet-color", children: _jsx(ColorPalette, { colors: paletteColors, value: bulletStyle.color || undefined, onChange: (value) => setAttributes({ bulletStyle: { ...bulletStyle, color: value !== null && value !== void 0 ? value : '' } }) }) }), _jsx(BaseControl, { label: __('Pozadí', 'brilo-blocks'), id: "list-item-bullet-background", children: _jsx(ColorPalette, { colors: paletteColors, value: bulletStyle.background || undefined, onChange: (value) => setAttributes({ bulletStyle: { ...bulletStyle, background: value !== null && value !== void 0 ? value : '' } }) }) }), (bulletStyle.background || bulletStyle.borderColor) && (_jsx(SelectControl, { label: __('Tvar odrážky', 'brilo-blocks'), value: bulletStyle.backgroundShape, options: [...DEFAULT_BULLET_SHAPES], onChange: (v) => setAttributes({ bulletStyle: { ...bulletStyle, backgroundShape: v } }) })), _jsx(BaseControl, { label: __('Barva ohraničení', 'brilo-blocks'), help: __('Bez vybrané barvy se okraj nevykreslí.', 'brilo-blocks'), id: "list-item-bullet-border-color", children: _jsx(ColorPalette, { colors: paletteColors, value: bulletStyle.borderColor || undefined, onChange: (value) => setAttributes({ bulletStyle: { ...bulletStyle, borderColor: value !== null && value !== void 0 ? value : '' } }) }) }), bulletStyle.borderColor && (_jsx(RangeControl, { label: __('Šířka ohraničení (px)', 'brilo-blocks'), value: bulletStyle.borderWidth, onChange: (v) => setAttributes({ bulletStyle: { ...bulletStyle, borderWidth: v !== null && v !== void 0 ? v : 0 } }), min: 0, max: 10, step: 1 }))] })] }), _jsx("div", { ...blockProps, children: _jsxs("div", { className: "i-list__inner wp-block-inner", children: [_jsx(ItemIconPreview, { icon: icon, className: "i-list__bullet", modifierClassName: bulletClassName, style: cssVars, setAttributes: setAttributes, options: options }), _jsx(RichText, { tagName: "p", className: "i-list__text u-text-editable", value: text, onChange: (v) => setAttributes({ text: v }), placeholder: __('Text položky…', 'brilo-blocks'), allowedFormats: ['core/bold', 'core/italic'] })] }) })] }));
17
+ };
18
+ }
@@ -0,0 +1,5 @@
1
+ import type { BlockConfiguration } from '@wordpress/blocks';
2
+ import type { ListItemAttributes, ListItemOptions } from './types';
3
+ export type { ListItemAttributes, ListItemOptions };
4
+ export declare function createListItemBlock(options: ListItemOptions): BlockConfiguration<ListItemAttributes>;
5
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-item/factory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAA;AAIzD,OAAO,KAAK,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAA;AAEhE,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,CAAA;AAEjD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,eAAe,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,CAwBpG"}
@@ -0,0 +1,29 @@
1
+ import { __ } from '@wordpress/i18n';
2
+ import { ICON_TYPES } from './constants';
3
+ import { createListItemEdit } from './edit';
4
+ export function createListItemBlock(options) {
5
+ var _a, _b, _c;
6
+ return {
7
+ name: options.name,
8
+ title: (_a = options.title) !== null && _a !== void 0 ? _a : __('Položka seznamu', 'brilo-blocks'),
9
+ description: options.description,
10
+ category: (_b = options.category) !== null && _b !== void 0 ? _b : 'layout',
11
+ ...(options.parent && { parent: options.parent }),
12
+ icon: (_c = options.icon) !== null && _c !== void 0 ? _c : 'editor-ul',
13
+ supports: { html: false, customClassName: false },
14
+ usesContext: ['brilo/list-bullet', 'brilo/list-content'],
15
+ attributes: {
16
+ text: { type: 'string', default: '' },
17
+ icon: {
18
+ type: 'object',
19
+ default: { type: ICON_TYPES[0].value, src: '', media: { id: 0, alt: '' } },
20
+ },
21
+ bulletStyle: {
22
+ type: 'object',
23
+ default: { color: '', background: '', backgroundShape: 'none', borderColor: '', borderWidth: 1 },
24
+ },
25
+ },
26
+ edit: createListItemEdit(options),
27
+ save: () => null,
28
+ };
29
+ }
@@ -0,0 +1,5 @@
1
+ export type { ListBulletShape, ListItemAttributes, ListItemOptions } from './types';
2
+ export { createListItemBlock } from './factory';
3
+ import type { ListItemOptions } from './types';
4
+ export declare const listItemDefaults: ListItemOptions;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/list/list-item/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAA;AACjF,OAAO,EAAC,mBAAmB,EAAC,MAAM,WAAW,CAAA;AAE7C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,SAAS,CAAA;AAE5C,eAAO,MAAM,gBAAgB,EAAE,eAK9B,CAAA"}
@@ -0,0 +1,7 @@
1
+ export { createListItemBlock } from './factory';
2
+ export const listItemDefaults = {
3
+ name: 'brilo/list-item',
4
+ parent: ['brilo/list-group'],
5
+ icons: [],
6
+ iconsSrc: '',
7
+ };