@brilo/base-blocks 0.1.58 → 0.1.61

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 (255) hide show
  1. package/build/.tsbuildinfo +1 -1
  2. package/build/blocks/anchor/anchor-group/icon.js +1 -1
  3. package/build/blocks/career/career-benefits/icon.js +1 -1
  4. package/build/blocks/career/career-header/icon.js +1 -1
  5. package/build/blocks/career/job-position-group/icon.js +1 -1
  6. package/build/blocks/column/column-item/edit.d.ts.map +1 -1
  7. package/build/blocks/column/column-item/index.d.ts.map +1 -1
  8. package/build/blocks/column/column-item/index.js +1 -0
  9. package/build/blocks/compare/compare-option/edit.d.ts +1 -1
  10. package/build/blocks/compare/compare-option/edit.d.ts.map +1 -1
  11. package/build/blocks/compare/compare-option/edit.js +1 -1
  12. package/build/blocks/contact/contact-item/factory.d.ts.map +1 -1
  13. package/build/blocks/document/documents-grid/icon.js +1 -1
  14. package/build/blocks/event/event-detail-content/icon.js +1 -1
  15. package/build/blocks/event/event-detail-header/icon.js +1 -1
  16. package/build/blocks/event/event-list-group/icon.js +1 -1
  17. package/build/blocks/faq/faq-item/edit.d.ts.map +1 -1
  18. package/build/blocks/faq/faq-item/edit.js +2 -2
  19. package/build/blocks/food-menu/food-menu-group/FoodMenuPreview.d.ts.map +1 -1
  20. package/build/blocks/food-menu/food-menu-group/FoodMenuPreview.js +36 -6
  21. package/build/blocks/food-menu/food-menu-group/constants.d.ts +51 -3
  22. package/build/blocks/food-menu/food-menu-group/constants.d.ts.map +1 -1
  23. package/build/blocks/food-menu/food-menu-group/constants.js +32 -6
  24. package/build/blocks/food-menu/food-menu-group/edit.d.ts.map +1 -1
  25. package/build/blocks/food-menu/food-menu-group/edit.js +61 -2
  26. package/build/blocks/food-menu/food-menu-group/factory.d.ts.map +1 -1
  27. package/build/blocks/food-menu/food-menu-group/factory.js +77 -45
  28. package/build/blocks/food-menu/food-menu-group/index.d.ts +1 -1
  29. package/build/blocks/food-menu/food-menu-group/index.d.ts.map +1 -1
  30. package/build/blocks/food-menu/food-menu-group/types.d.ts +12 -5
  31. package/build/blocks/food-menu/food-menu-group/types.d.ts.map +1 -1
  32. package/build/blocks/food-menu/food-reservation/edit.d.ts +7 -0
  33. package/build/blocks/food-menu/food-reservation/edit.d.ts.map +1 -0
  34. package/build/blocks/food-menu/food-reservation/edit.js +69 -0
  35. package/build/blocks/food-menu/food-reservation/factory.d.ts +4 -0
  36. package/build/blocks/food-menu/food-reservation/factory.d.ts.map +1 -0
  37. package/build/blocks/food-menu/food-reservation/factory.js +24 -0
  38. package/build/blocks/food-menu/food-reservation/icon.d.ts +2 -0
  39. package/build/blocks/food-menu/food-reservation/icon.d.ts.map +1 -0
  40. package/build/blocks/food-menu/food-reservation/icon.js +2 -0
  41. package/build/blocks/food-menu/food-reservation/index.d.ts +5 -0
  42. package/build/blocks/food-menu/food-reservation/index.d.ts.map +1 -0
  43. package/build/blocks/food-menu/food-reservation/index.js +6 -0
  44. package/build/blocks/food-menu/food-reservation/types.d.ts +7 -0
  45. package/build/blocks/food-menu/food-reservation/types.d.ts.map +1 -0
  46. package/build/blocks/food-menu/food-reservation/types.js +1 -0
  47. package/build/blocks/form/form-field/types.d.ts +1 -1
  48. package/build/blocks/form/form-field/types.d.ts.map +1 -1
  49. package/build/blocks/form/form-group/index.js +1 -1
  50. package/build/blocks/gallery/gallery-group/constants.d.ts +1 -19
  51. package/build/blocks/gallery/gallery-group/constants.d.ts.map +1 -1
  52. package/build/blocks/gallery/gallery-group/constants.js +1 -8
  53. package/build/blocks/gallery/gallery-group/edit.d.ts.map +1 -1
  54. package/build/blocks/gallery/gallery-group/edit.js +3 -19
  55. package/build/blocks/gallery/gallery-item/index.js +1 -1
  56. package/build/blocks/gallery/gallery-strip-group/constants.d.ts +34 -0
  57. package/build/blocks/gallery/gallery-strip-group/constants.d.ts.map +1 -0
  58. package/build/blocks/gallery/gallery-strip-group/constants.js +17 -0
  59. package/build/blocks/gallery/gallery-strip-group/edit.d.ts +7 -0
  60. package/build/blocks/gallery/gallery-strip-group/edit.d.ts.map +1 -0
  61. package/build/blocks/gallery/gallery-strip-group/edit.js +34 -0
  62. package/build/blocks/gallery/gallery-strip-group/factory.d.ts +5 -0
  63. package/build/blocks/gallery/gallery-strip-group/factory.d.ts.map +1 -0
  64. package/build/blocks/gallery/gallery-strip-group/factory.js +28 -0
  65. package/build/blocks/gallery/gallery-strip-group/index.d.ts +5 -0
  66. package/build/blocks/gallery/gallery-strip-group/index.d.ts.map +1 -0
  67. package/build/blocks/gallery/gallery-strip-group/index.js +7 -0
  68. package/build/blocks/gallery/gallery-strip-group/types.d.ts +18 -0
  69. package/build/blocks/gallery/gallery-strip-group/types.d.ts.map +1 -0
  70. package/build/blocks/gallery/gallery-strip-group/types.js +1 -0
  71. package/build/blocks/groups/banner-group/icon.js +1 -1
  72. package/build/blocks/groups/content-group/icon.js +1 -1
  73. package/build/blocks/groups/text-and-media-group/index.d.ts.map +1 -1
  74. package/build/blocks/groups/text-and-media-group/index.js +2 -0
  75. package/build/blocks/hero/hero-group/edit.js +1 -1
  76. package/build/blocks/hero/hero-group/icon.js +1 -1
  77. package/build/blocks/hero/hero-group/types.d.ts +1 -1
  78. package/build/blocks/hero/hero-group/types.d.ts.map +1 -1
  79. package/build/blocks/hero/hero-item/edit.js +1 -1
  80. package/build/blocks/hero/hero-item/index.js +1 -1
  81. package/build/blocks/layout/box/icon.js +1 -1
  82. package/build/blocks/layout/layout-aside/edit.d.ts +1 -2
  83. package/build/blocks/layout/layout-aside/edit.d.ts.map +1 -1
  84. package/build/blocks/layout/layout-aside/edit.js +1 -1
  85. package/build/blocks/layout/layout-aside/factory.d.ts.map +1 -1
  86. package/build/blocks/layout/layout-aside/icon.d.ts +1 -2
  87. package/build/blocks/layout/layout-aside/icon.d.ts.map +1 -1
  88. package/build/blocks/layout/layout-aside/icon.js +1 -1
  89. package/build/blocks/layout/layout-content/edit.d.ts +1 -2
  90. package/build/blocks/layout/layout-content/edit.d.ts.map +1 -1
  91. package/build/blocks/layout/layout-content/edit.js +1 -1
  92. package/build/blocks/layout/layout-content/factory.d.ts.map +1 -1
  93. package/build/blocks/layout/layout-content/icon.d.ts +1 -2
  94. package/build/blocks/layout/layout-content/icon.d.ts.map +1 -1
  95. package/build/blocks/layout/layout-content/icon.js +1 -1
  96. package/build/blocks/layout/layout-content-w-aside/edit.d.ts +1 -2
  97. package/build/blocks/layout/layout-content-w-aside/edit.d.ts.map +1 -1
  98. package/build/blocks/layout/layout-content-w-aside/factory.d.ts.map +1 -1
  99. package/build/blocks/layout/layout-content-w-aside/icon.d.ts +1 -2
  100. package/build/blocks/layout/layout-content-w-aside/icon.d.ts.map +1 -1
  101. package/build/blocks/layout/layout-content-w-aside/icon.js +1 -1
  102. package/build/blocks/link/link-item/icon.js +1 -1
  103. package/build/blocks/map/map-group/edit.d.ts.map +1 -1
  104. package/build/blocks/map/map-group/edit.js +1 -1
  105. package/build/blocks/map/map-group/factory.d.ts.map +1 -1
  106. package/build/blocks/map/map-group/types.d.ts.map +1 -1
  107. package/build/blocks/newsletter/newsletter-form/edit.d.ts.map +1 -1
  108. package/build/blocks/newsletter/newsletter-form/edit.js +2 -1
  109. package/build/blocks/person/person-group/icon.js +1 -1
  110. package/build/blocks/person/person-item/constants.d.ts.map +1 -1
  111. package/build/blocks/post/post-content/icon.js +1 -1
  112. package/build/blocks/post/post-content/types.d.ts.map +1 -1
  113. package/build/blocks/post/post-slider-group/icon.js +1 -1
  114. package/build/blocks/post/posts-grid/icon.js +1 -1
  115. package/build/blocks/review/review-summary-item/constants.d.ts +3 -0
  116. package/build/blocks/review/review-summary-item/constants.d.ts.map +1 -0
  117. package/build/blocks/review/review-summary-item/constants.js +2 -0
  118. package/build/blocks/review/review-summary-item/edit.d.ts +6 -0
  119. package/build/blocks/review/review-summary-item/edit.d.ts.map +1 -0
  120. package/build/blocks/review/review-summary-item/edit.js +17 -0
  121. package/build/blocks/review/review-summary-item/factory.d.ts +5 -0
  122. package/build/blocks/review/review-summary-item/factory.d.ts.map +1 -0
  123. package/build/blocks/review/review-summary-item/factory.js +23 -0
  124. package/build/blocks/review/review-summary-item/index.d.ts +5 -0
  125. package/build/blocks/review/review-summary-item/index.d.ts.map +1 -0
  126. package/build/blocks/review/review-summary-item/index.js +5 -0
  127. package/build/blocks/review/review-summary-item/types.d.ts +11 -0
  128. package/build/blocks/review/review-summary-item/types.d.ts.map +1 -0
  129. package/build/blocks/review/review-summary-item/types.js +1 -0
  130. package/build/blocks/share/share/icon.js +1 -1
  131. package/build/blocks/signpost/signpost-group/icon.js +1 -1
  132. package/build/blocks/step/step-group/factory.d.ts.map +1 -1
  133. package/build/blocks/step/step-group/icon.js +1 -1
  134. package/build/blocks/testimonial/testimonial-group/icon.js +1 -1
  135. package/build/blocks/urgency/urgency-item/constants.d.ts +56 -0
  136. package/build/blocks/urgency/urgency-item/constants.d.ts.map +1 -0
  137. package/build/blocks/urgency/urgency-item/constants.js +32 -0
  138. package/build/blocks/urgency/urgency-item/edit.d.ts +7 -0
  139. package/build/blocks/urgency/urgency-item/edit.d.ts.map +1 -0
  140. package/build/blocks/urgency/urgency-item/edit.js +83 -0
  141. package/build/blocks/urgency/urgency-item/factory.d.ts +5 -0
  142. package/build/blocks/urgency/urgency-item/factory.d.ts.map +1 -0
  143. package/build/blocks/urgency/urgency-item/factory.js +31 -0
  144. package/build/blocks/urgency/urgency-item/index.d.ts +5 -0
  145. package/build/blocks/urgency/urgency-item/index.d.ts.map +1 -0
  146. package/build/blocks/urgency/urgency-item/index.js +5 -0
  147. package/build/blocks/urgency/urgency-item/types.d.ts +22 -0
  148. package/build/blocks/urgency/urgency-item/types.d.ts.map +1 -0
  149. package/build/blocks/urgency/urgency-item/types.js +1 -0
  150. package/build/components/GalleryImagesAppender/index.d.ts +5 -0
  151. package/build/components/GalleryImagesAppender/index.d.ts.map +1 -0
  152. package/build/components/GalleryImagesAppender/index.js +12 -0
  153. package/build/components/ImagePicker/ImagePicker.d.ts.map +1 -1
  154. package/build/components/ImagePicker/ImagePicker.js +1 -5
  155. package/build/constants.d.ts +19 -0
  156. package/build/constants.d.ts.map +1 -1
  157. package/build/constants.js +8 -0
  158. package/build/hooks/useGroupBlock.d.ts.map +1 -1
  159. package/build/hooks/useGroupBlock.js +10 -3
  160. package/build/index.d.ts +8 -0
  161. package/build/index.d.ts.map +1 -1
  162. package/build/index.js +4 -0
  163. package/package.json +4 -3
  164. package/src/blocks/anchor/anchor-group/icon.tsx +1 -1
  165. package/src/blocks/career/career-benefits/icon.tsx +1 -1
  166. package/src/blocks/career/career-header/icon.tsx +1 -1
  167. package/src/blocks/career/job-position-group/icon.tsx +1 -1
  168. package/src/blocks/column/column-item/edit.tsx +0 -1
  169. package/src/blocks/column/column-item/index.ts +1 -0
  170. package/src/blocks/compare/compare-option/edit.tsx +1 -1
  171. package/src/blocks/contact/contact-item/factory.tsx +1 -2
  172. package/src/blocks/document/documents-grid/icon.tsx +1 -1
  173. package/src/blocks/event/event-detail-content/icon.tsx +1 -1
  174. package/src/blocks/event/event-detail-header/icon.tsx +1 -1
  175. package/src/blocks/event/event-list-group/icon.tsx +1 -1
  176. package/src/blocks/faq/faq-item/edit.tsx +23 -25
  177. package/src/blocks/food-menu/food-menu-group/FoodMenuPreview.tsx +58 -9
  178. package/src/blocks/food-menu/food-menu-group/constants.ts +37 -6
  179. package/src/blocks/food-menu/food-menu-group/edit.tsx +116 -20
  180. package/src/blocks/food-menu/food-menu-group/editor.scss +35 -6
  181. package/src/blocks/food-menu/food-menu-group/factory.tsx +77 -39
  182. package/src/blocks/food-menu/food-menu-group/index.ts +2 -0
  183. package/src/blocks/food-menu/food-menu-group/types.ts +18 -5
  184. package/src/blocks/food-menu/food-reservation/edit.tsx +179 -0
  185. package/src/blocks/food-menu/food-reservation/factory.tsx +28 -0
  186. package/src/blocks/food-menu/food-reservation/icon.tsx +9 -0
  187. package/src/blocks/food-menu/food-reservation/index.ts +10 -0
  188. package/src/blocks/food-menu/food-reservation/types.ts +8 -0
  189. package/src/blocks/form/form-field/types.ts +1 -7
  190. package/src/blocks/form/form-group/index.ts +1 -1
  191. package/src/blocks/gallery/gallery-group/constants.ts +1 -8
  192. package/src/blocks/gallery/gallery-group/edit.tsx +3 -39
  193. package/src/blocks/gallery/gallery-group/editor.scss +0 -12
  194. package/src/blocks/gallery/gallery-item/index.ts +1 -1
  195. package/src/blocks/gallery/gallery-strip-group/constants.ts +22 -0
  196. package/src/blocks/gallery/gallery-strip-group/edit.tsx +112 -0
  197. package/src/blocks/gallery/gallery-strip-group/editor.scss +36 -0
  198. package/src/blocks/gallery/gallery-strip-group/factory.tsx +32 -0
  199. package/src/blocks/gallery/gallery-strip-group/index.ts +11 -0
  200. package/src/blocks/gallery/gallery-strip-group/types.ts +20 -0
  201. package/src/blocks/groups/banner-group/edit.tsx +1 -1
  202. package/src/blocks/groups/banner-group/icon.tsx +1 -1
  203. package/src/blocks/groups/content-group/icon.tsx +1 -1
  204. package/src/blocks/groups/text-and-media-group/index.ts +2 -0
  205. package/src/blocks/hero/hero-group/edit.tsx +3 -3
  206. package/src/blocks/hero/hero-group/icon.tsx +1 -1
  207. package/src/blocks/hero/hero-group/types.ts +1 -1
  208. package/src/blocks/hero/hero-item/edit.tsx +5 -5
  209. package/src/blocks/hero/hero-item/index.ts +1 -1
  210. package/src/blocks/layout/box/icon.tsx +1 -1
  211. package/src/blocks/layout/layout-aside/edit.tsx +2 -3
  212. package/src/blocks/layout/layout-aside/factory.tsx +0 -1
  213. package/src/blocks/layout/layout-aside/icon.tsx +1 -3
  214. package/src/blocks/layout/layout-content/edit.tsx +2 -3
  215. package/src/blocks/layout/layout-content/factory.tsx +0 -1
  216. package/src/blocks/layout/layout-content/icon.tsx +1 -3
  217. package/src/blocks/layout/layout-content-w-aside/edit.tsx +0 -1
  218. package/src/blocks/layout/layout-content-w-aside/factory.tsx +0 -1
  219. package/src/blocks/layout/layout-content-w-aside/icon.tsx +1 -3
  220. package/src/blocks/link/link-item/icon.tsx +1 -1
  221. package/src/blocks/map/map-group/edit.tsx +8 -3
  222. package/src/blocks/map/map-group/factory.tsx +1 -1
  223. package/src/blocks/map/map-group/types.ts +1 -1
  224. package/src/blocks/newsletter/newsletter-form/edit.tsx +5 -2
  225. package/src/blocks/person/person-group/icon.tsx +1 -1
  226. package/src/blocks/person/person-item/constants.ts +1 -1
  227. package/src/blocks/post/post-content/icon.tsx +1 -1
  228. package/src/blocks/post/post-content/types.ts +0 -1
  229. package/src/blocks/post/post-slider-group/icon.tsx +1 -1
  230. package/src/blocks/post/posts-grid/icon.tsx +1 -1
  231. package/src/blocks/review/review-summary-item/constants.ts +2 -0
  232. package/src/blocks/review/review-summary-item/edit.tsx +86 -0
  233. package/src/blocks/review/review-summary-item/editor.scss +44 -0
  234. package/src/blocks/review/review-summary-item/factory.tsx +27 -0
  235. package/src/blocks/review/review-summary-item/index.ts +9 -0
  236. package/src/blocks/review/review-summary-item/types.ts +11 -0
  237. package/src/blocks/share/share/icon.tsx +1 -1
  238. package/src/blocks/signpost/signpost-group/icon.tsx +1 -1
  239. package/src/blocks/step/step-group/factory.tsx +1 -1
  240. package/src/blocks/step/step-group/icon.tsx +1 -1
  241. package/src/blocks/testimonial/testimonial-group/icon.tsx +1 -1
  242. package/src/blocks/urgency/urgency-item/constants.ts +39 -0
  243. package/src/blocks/urgency/urgency-item/edit.tsx +319 -0
  244. package/src/blocks/urgency/urgency-item/editor.scss +99 -0
  245. package/src/blocks/urgency/urgency-item/factory.tsx +36 -0
  246. package/src/blocks/urgency/urgency-item/index.ts +9 -0
  247. package/src/blocks/urgency/urgency-item/types.ts +23 -0
  248. package/src/components/GalleryImagesAppender/editor.scss +15 -0
  249. package/src/components/GalleryImagesAppender/index.tsx +29 -0
  250. package/src/components/ImagePicker/ImagePicker.tsx +6 -6
  251. package/src/components/ItemIconControl/types.d.ts +0 -1
  252. package/src/constants.ts +9 -0
  253. package/src/editor.scss +4 -0
  254. package/src/hooks/useGroupBlock.ts +10 -2
  255. package/src/index.ts +8 -0
@@ -0,0 +1,36 @@
1
+ import type {BlockConfiguration} from '@wordpress/blocks'
2
+ import {__} from '@wordpress/i18n'
3
+ import {DEADLINE_DISPLAYS, TEXTS, TEXT_SIZES, TYPES} from './constants'
4
+ import {createUrgencyItemEdit} from './edit'
5
+ import type {UrgencyItemAttributes, UrgencyItemOptions} from './types'
6
+
7
+ export type {UrgencyItemAttributes, UrgencyItemOptions}
8
+
9
+ export function createUrgencyItemBlock(options: UrgencyItemOptions): BlockConfiguration<UrgencyItemAttributes> {
10
+ return {
11
+ name: options.name,
12
+ title: options.title ?? __('Naléhavost', 'brilo-blocks'),
13
+ description:
14
+ options.description ?? __('Skutečný termín, počet volných míst nebo sezóna. Po vypršení termínu se na webu skryje.', 'brilo-blocks'),
15
+ category: options.category ?? 'layout',
16
+ ...(options.parent && {parent: options.parent}),
17
+ icon: options.icon ?? 'clock',
18
+ supports: {html: false, customClassName: false},
19
+ attributes: {
20
+ type: {type: 'string', default: TYPES[0].value, enum: TYPES.map((t) => t.value)},
21
+ text: {type: 'string', default: TEXTS.countdown},
22
+ deadline: {type: 'string', default: ''},
23
+ display: {type: 'string', default: DEADLINE_DISPLAYS[0].value, enum: DEADLINE_DISPLAYS.map((d) => d.value)},
24
+ remaining: {type: 'number'},
25
+ total: {type: 'number'},
26
+ endDate: {type: 'string', default: ''},
27
+ textSize: {type: 'string', default: TEXT_SIZES[1].value, enum: TEXT_SIZES.map((s) => s.value)},
28
+ numberSize: {type: 'number'},
29
+ backgroundColor: {type: 'string', default: ''},
30
+ numberBackgroundColor: {type: 'string', default: ''},
31
+ textColor: {type: 'string', default: ''},
32
+ },
33
+ edit: createUrgencyItemEdit(options),
34
+ save: () => null,
35
+ } as unknown as BlockConfiguration<UrgencyItemAttributes>
36
+ }
@@ -0,0 +1,9 @@
1
+ export type {UrgencyItemAttributes, UrgencyItemOptions} from './types'
2
+ export {createUrgencyItemBlock} from './factory'
3
+
4
+ import type {UrgencyItemOptions} from './types'
5
+
6
+ export const urgencyItemDefaults: UrgencyItemOptions = {
7
+ name: 'brilo/urgency-item',
8
+ parent: ['brilo/base-section', 'brilo/text-and-media-group', 'brilo/text-and-form-text-column', 'brilo/column-item'],
9
+ }
@@ -0,0 +1,23 @@
1
+ import type {BriloBlockType} from '~/types'
2
+ import type {DEADLINE_DISPLAYS, TEXT_SIZES, TYPES} from './constants'
3
+
4
+ export type UrgencyType = (typeof TYPES)[number]['value']
5
+ export type UrgencyDeadlineDisplay = (typeof DEADLINE_DISPLAYS)[number]['value']
6
+ export type UrgencyTextSize = (typeof TEXT_SIZES)[number]['value']
7
+
8
+ export interface UrgencyItemAttributes extends Record<string, unknown> {
9
+ type: UrgencyType
10
+ text: string
11
+ deadline: string
12
+ display: UrgencyDeadlineDisplay
13
+ remaining?: number
14
+ total?: number
15
+ endDate: string
16
+ textSize: UrgencyTextSize
17
+ numberSize?: number
18
+ backgroundColor: string
19
+ numberBackgroundColor: string
20
+ textColor: string
21
+ }
22
+
23
+ export interface UrgencyItemOptions extends BriloBlockType {}
@@ -0,0 +1,15 @@
1
+ .g-gallery__appender {
2
+ padding: 16px;
3
+ display: flex;
4
+ align-items: center;
5
+ justify-content: center;
6
+ border: 2px dashed lightblue;
7
+ height: 100%;
8
+ cursor: pointer;
9
+ box-sizing: border-box;
10
+ min-height: 256px;
11
+ width: 100%;
12
+ background: none;
13
+ font: inherit;
14
+ color: inherit;
15
+ }
@@ -0,0 +1,29 @@
1
+ import {MediaUpload} from '@wordpress/block-editor'
2
+ import {createBlock} from '@wordpress/blocks'
3
+ import {useDispatch} from '@wordpress/data'
4
+ import {__} from '@wordpress/i18n'
5
+
6
+ export function GalleryImagesAppender({clientId, itemBlock}: {clientId: string; itemBlock: string}) {
7
+ const {insertBlocks} = useDispatch('core/block-editor')
8
+
9
+ const onSelectImages = (media: {id: number}[]) => {
10
+ insertBlocks(
11
+ media.map((item) => createBlock(itemBlock, {img: {id: item.id}})),
12
+ undefined,
13
+ clientId,
14
+ )
15
+ }
16
+
17
+ return (
18
+ <MediaUpload
19
+ onSelect={onSelectImages}
20
+ multiple="add"
21
+ allowedTypes={['image']}
22
+ render={({open}) => (
23
+ <button type="button" onClick={open} className="g-gallery__appender">
24
+ {__('Přidat obrázky', 'brilo-blocks')}
25
+ </button>
26
+ )}
27
+ />
28
+ )
29
+ }
@@ -25,16 +25,16 @@ interface ImagePickerProps {
25
25
  size?: [number, number]
26
26
  }
27
27
 
28
+ type CoreSelectors = {
29
+ getEntityRecord: (kind: 'postType', name: 'attachment', id: number) => {source_url?: string; mime_type?: string} | undefined
30
+ }
31
+
28
32
  export function useMediaData(id: number): {url?: string; mimeType?: string} {
29
33
  return useSelect(
30
34
  (select) => {
31
35
  if (!id) return {}
32
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
33
- const media = (select('core') as any).getEntityRecord('postType', 'attachment', id)
34
- return {
35
- url: media?.source_url as string | undefined,
36
- mimeType: media?.mime_type as string | undefined,
37
- }
36
+ const media = (select('core') as CoreSelectors).getEntityRecord('postType', 'attachment', id)
37
+ return {url: media?.source_url, mimeType: media?.mime_type}
38
38
  },
39
39
  [id],
40
40
  )
@@ -1,6 +1,5 @@
1
1
  import type {Icon, SelectOption} from '~/types'
2
2
  import type {IconType} from '../IconControl/IconControl'
3
- import {UspIconType} from '~/blocks/usp/usp-item/types'
4
3
 
5
4
  export interface ItemIconOptions {
6
5
  icons: IconType[]
package/src/constants.ts CHANGED
@@ -18,3 +18,12 @@ export const CONTENT_SIZES = [
18
18
  {value: 'default', label: __('Výchozí', 'brilo-blocks')},
19
19
  {value: 'lg', label: __('Velká', 'brilo-blocks')},
20
20
  ] as const
21
+
22
+ export const GALLERY_RATIOS = [
23
+ {value: '4:3', label: '4:3'},
24
+ {value: '16:9', label: '16:9'},
25
+ {value: '3:2', label: '3:2'},
26
+ {value: '1:1', label: '1:1'},
27
+ {value: '2:1', label: '2:1'},
28
+ {value: '3:4', label: '3:4'},
29
+ ] as const
package/src/editor.scss CHANGED
@@ -47,6 +47,7 @@
47
47
  @forward "./blocks/layout/layout-content/editor";
48
48
  @forward "./blocks/layout/layout-content-w-aside/editor";
49
49
  @forward "./components/IconControl/editor";
50
+ @forward "./components/GalleryImagesAppender/editor";
50
51
  @forward "./components/ImagePicker/editor";
51
52
  @forward "./components/ItemIconControl/editor";
52
53
  @forward "./blocks/priceplan/priceplan-group/editor";
@@ -55,3 +56,6 @@
55
56
  @forward "./blocks/video/video-group/editor";
56
57
  @forward "./blocks/review/review-group/editor";
57
58
  @forward "./blocks/review/review-item/editor";
59
+ @forward "./blocks/review/review-summary-item/editor";
60
+ @forward "./blocks/gallery/gallery-strip-group/editor";
61
+ @forward "./blocks/urgency/urgency-item/editor";
@@ -37,13 +37,21 @@ export function useGroupBlock({
37
37
  }: GroupBlockConfig): GroupBlockResult {
38
38
  const blockProps = useBlockProps({className: clsx(blockClassName)})
39
39
 
40
+ // `layout` works at runtime but is missing from the @wordpress/block-editor types
41
+ const innerBlocksOptions: Parameters<typeof useInnerBlocksProps>[1] & {layout?: GroupBlockConfig['layout']} = {
42
+ allowedBlocks,
43
+ template,
44
+ templateLock,
45
+ orientation,
46
+ layout,
47
+ renderAppender,
48
+ }
40
49
  const innerBlocksProps = useInnerBlocksProps(
41
50
  {
42
51
  className: clsx(containerClassName),
43
52
  ...(containerStyle && {style: containerStyle}),
44
53
  },
45
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
46
- {allowedBlocks, template, templateLock, orientation, layout, renderAppender} as any,
54
+ innerBlocksOptions,
47
55
  )
48
56
 
49
57
  return {
package/src/index.ts CHANGED
@@ -196,6 +196,8 @@ export type {
196
196
  FoodMenuGroupOptions,
197
197
  } from './blocks/food-menu/food-menu-group'
198
198
  export {createFoodMenuGroupBlock, foodMenuGroupDefaults, FoodMenuSelectModal} from './blocks/food-menu/food-menu-group'
199
+ export type {FoodReservationAttributes, FoodReservationOptions} from './blocks/food-menu/food-reservation'
200
+ export {createFoodReservationBlock, foodReservationDefaults} from './blocks/food-menu/food-reservation'
199
201
  export type {LinkItemAttributes, LinkItemIcon, LinkItemOptions} from './blocks/link/link-item'
200
202
  export {createLinkItemBlock, linkItemDefaults} from './blocks/link/link-item'
201
203
  export type {ContentWithAsideAttributes, ContentWithAsideOptions} from './blocks/layout/layout-content-w-aside'
@@ -270,3 +272,9 @@ export type {ReviewGroupAttributes, ReviewGroupOptions} from './blocks/review/re
270
272
  export {createReviewGroupBlock, reviewGroupDefaults} from './blocks/review/review-group'
271
273
  export type {ReviewAuthor, ReviewItemAttributes, ReviewItemOptions, ReviewRating} from './blocks/review/review-item'
272
274
  export {createReviewItemBlock, reviewItemDefaults} from './blocks/review/review-item'
275
+ export type {ReviewSummaryItemAttributes, ReviewSummaryItemOptions} from './blocks/review/review-summary-item'
276
+ export {createReviewSummaryItemBlock, reviewSummaryItemDefaults} from './blocks/review/review-summary-item'
277
+ export type {GalleryStripGroupAttributes, GalleryStripGroupOptions} from './blocks/gallery/gallery-strip-group'
278
+ export {createGalleryStripGroupBlock, galleryStripGroupDefaults} from './blocks/gallery/gallery-strip-group'
279
+ export type {UrgencyItemAttributes, UrgencyItemOptions} from './blocks/urgency/urgency-item'
280
+ export {createUrgencyItemBlock, urgencyItemDefaults} from './blocks/urgency/urgency-item'