@brilo/base-blocks 0.1.0 → 0.1.2

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 (619) hide show
  1. package/build/blocks/column/column-group/edit.d.ts +6 -0
  2. package/build/blocks/column/column-group/edit.d.ts.map +1 -0
  3. package/build/blocks/column/column-group/edit.js +23 -0
  4. package/build/blocks/column/column-group/factory.d.ts +4 -0
  5. package/build/blocks/column/column-group/factory.d.ts.map +1 -0
  6. package/build/blocks/column/column-group/factory.js +28 -0
  7. package/build/blocks/column/column-group/index.d.ts +5 -0
  8. package/build/blocks/column/column-group/index.d.ts.map +1 -0
  9. package/build/blocks/column/column-group/index.js +10 -0
  10. package/build/blocks/column/column-group/types.d.ts +8 -0
  11. package/build/blocks/column/column-group/types.d.ts.map +1 -0
  12. package/build/blocks/column/column-group/types.js +1 -0
  13. package/build/blocks/column/column-item/constants.d.ts +2 -0
  14. package/build/blocks/column/column-item/constants.d.ts.map +1 -0
  15. package/build/blocks/column/column-item/constants.js +1 -0
  16. package/build/blocks/column/column-item/edit.d.ts +6 -0
  17. package/build/blocks/column/column-item/edit.d.ts.map +1 -0
  18. package/build/blocks/column/column-item/edit.js +21 -0
  19. package/build/blocks/column/column-item/factory.d.ts +4 -0
  20. package/build/blocks/column/column-item/factory.d.ts.map +1 -0
  21. package/build/blocks/column/column-item/factory.js +24 -0
  22. package/build/blocks/column/column-item/index.d.ts +5 -0
  23. package/build/blocks/column/column-item/index.d.ts.map +1 -0
  24. package/build/blocks/column/column-item/index.js +6 -0
  25. package/build/blocks/column/column-item/types.d.ts +7 -0
  26. package/build/blocks/column/column-item/types.d.ts.map +1 -0
  27. package/build/blocks/column/column-item/types.js +1 -0
  28. package/build/blocks/compare/compare-group/constants.d.ts +2 -0
  29. package/build/blocks/compare/compare-group/constants.d.ts.map +1 -0
  30. package/build/blocks/compare/compare-group/constants.js +1 -0
  31. package/build/blocks/compare/compare-group/edit.d.ts +6 -0
  32. package/build/blocks/compare/compare-group/edit.d.ts.map +1 -0
  33. package/build/blocks/compare/compare-group/edit.js +21 -0
  34. package/build/blocks/compare/compare-group/factory.d.ts +5 -0
  35. package/build/blocks/compare/compare-group/factory.d.ts.map +1 -0
  36. package/build/blocks/compare/compare-group/factory.js +26 -0
  37. package/build/blocks/compare/compare-group/icon.d.ts +2 -0
  38. package/build/blocks/compare/compare-group/icon.d.ts.map +1 -0
  39. package/build/blocks/compare/compare-group/icon.js +2 -0
  40. package/build/blocks/compare/compare-group/index.d.ts +5 -0
  41. package/build/blocks/compare/compare-group/index.d.ts.map +1 -0
  42. package/build/blocks/compare/compare-group/index.js +10 -0
  43. package/build/blocks/compare/compare-group/types.d.ts +10 -0
  44. package/build/blocks/compare/compare-group/types.d.ts.map +1 -0
  45. package/build/blocks/compare/compare-group/types.js +1 -0
  46. package/build/blocks/compare/compare-item/edit.d.ts +6 -0
  47. package/build/blocks/compare/compare-item/edit.d.ts.map +1 -0
  48. package/build/blocks/compare/compare-item/edit.js +14 -0
  49. package/build/blocks/compare/compare-item/factory.d.ts +5 -0
  50. package/build/blocks/compare/compare-item/factory.d.ts.map +1 -0
  51. package/build/blocks/compare/compare-item/factory.js +25 -0
  52. package/build/blocks/compare/compare-item/icon.d.ts +2 -0
  53. package/build/blocks/compare/compare-item/icon.d.ts.map +1 -0
  54. package/build/blocks/compare/compare-item/icon.js +2 -0
  55. package/build/blocks/compare/compare-item/index.d.ts +5 -0
  56. package/build/blocks/compare/compare-item/index.d.ts.map +1 -0
  57. package/build/blocks/compare/compare-item/index.js +10 -0
  58. package/build/blocks/compare/compare-item/types.d.ts +8 -0
  59. package/build/blocks/compare/compare-item/types.d.ts.map +1 -0
  60. package/build/blocks/compare/compare-item/types.js +1 -0
  61. package/build/blocks/compare/compare-option/constants.d.ts +11 -0
  62. package/build/blocks/compare/compare-option/constants.d.ts.map +1 -0
  63. package/build/blocks/compare/compare-option/constants.js +6 -0
  64. package/build/blocks/compare/compare-option/edit.d.ts +6 -0
  65. package/build/blocks/compare/compare-option/edit.d.ts.map +1 -0
  66. package/build/blocks/compare/compare-option/edit.js +12 -0
  67. package/build/blocks/compare/compare-option/factory.d.ts +5 -0
  68. package/build/blocks/compare/compare-option/factory.d.ts.map +1 -0
  69. package/build/blocks/compare/compare-option/factory.js +31 -0
  70. package/build/blocks/compare/compare-option/icon.d.ts +2 -0
  71. package/build/blocks/compare/compare-option/icon.d.ts.map +1 -0
  72. package/build/blocks/compare/compare-option/icon.js +2 -0
  73. package/build/blocks/compare/compare-option/index.d.ts +5 -0
  74. package/build/blocks/compare/compare-option/index.d.ts.map +1 -0
  75. package/build/blocks/compare/compare-option/index.js +5 -0
  76. package/build/blocks/compare/compare-option/types.d.ts +11 -0
  77. package/build/blocks/compare/compare-option/types.d.ts.map +1 -0
  78. package/build/blocks/compare/compare-option/types.js +1 -0
  79. package/build/blocks/contact/contact-group/constants.d.ts +3 -0
  80. package/build/blocks/contact/contact-group/constants.d.ts.map +1 -0
  81. package/build/blocks/contact/contact-group/constants.js +2 -0
  82. package/build/blocks/contact/contact-group/edit.d.ts +6 -0
  83. package/build/blocks/contact/contact-group/edit.d.ts.map +1 -0
  84. package/build/blocks/contact/contact-group/edit.js +25 -0
  85. package/build/blocks/contact/contact-group/factory.d.ts +7 -0
  86. package/build/blocks/contact/contact-group/factory.d.ts.map +1 -0
  87. package/build/blocks/contact/contact-group/factory.js +28 -0
  88. package/build/blocks/contact/contact-group/index.d.ts +6 -0
  89. package/build/blocks/contact/contact-group/index.d.ts.map +1 -0
  90. package/build/blocks/contact/contact-group/index.js +8 -0
  91. package/build/blocks/contact/contact-group/types.d.ts +10 -0
  92. package/build/blocks/contact/contact-group/types.d.ts.map +1 -0
  93. package/build/blocks/contact/contact-group/types.js +1 -0
  94. package/build/blocks/contact/contact-item/constants.d.ts +29 -0
  95. package/build/blocks/contact/contact-item/constants.d.ts.map +1 -0
  96. package/build/blocks/contact/contact-item/constants.js +13 -0
  97. package/build/blocks/contact/contact-item/edit.d.ts +7 -0
  98. package/build/blocks/contact/contact-item/edit.d.ts.map +1 -0
  99. package/build/blocks/contact/contact-item/edit.js +30 -0
  100. package/build/blocks/contact/contact-item/factory.d.ts +5 -0
  101. package/build/blocks/contact/contact-item/factory.d.ts.map +1 -0
  102. package/build/blocks/contact/contact-item/factory.js +32 -0
  103. package/build/blocks/contact/contact-item/index.d.ts +6 -0
  104. package/build/blocks/contact/contact-item/index.d.ts.map +1 -0
  105. package/build/blocks/contact/contact-item/index.js +19 -0
  106. package/build/blocks/contact/contact-item/types.d.ts +18 -0
  107. package/build/blocks/contact/contact-item/types.d.ts.map +1 -0
  108. package/build/blocks/contact/contact-item/types.js +1 -0
  109. package/build/blocks/core/basic-button/constants.d.ts +25 -0
  110. package/build/blocks/core/basic-button/constants.d.ts.map +1 -0
  111. package/build/blocks/core/basic-button/constants.js +14 -0
  112. package/build/blocks/core/basic-button/edit.d.ts +6 -0
  113. package/build/blocks/core/basic-button/edit.d.ts.map +1 -0
  114. package/build/blocks/core/basic-button/edit.js +20 -0
  115. package/build/blocks/core/basic-button/factory.d.ts +7 -0
  116. package/build/blocks/core/basic-button/factory.d.ts.map +1 -0
  117. package/build/blocks/core/basic-button/factory.js +40 -0
  118. package/build/blocks/core/basic-button/index.d.ts +5 -0
  119. package/build/blocks/core/basic-button/index.d.ts.map +1 -0
  120. package/build/blocks/core/basic-button/index.js +4 -0
  121. package/build/blocks/core/basic-button/types.d.ts +22 -0
  122. package/build/blocks/core/basic-button/types.d.ts.map +1 -0
  123. package/build/blocks/core/basic-button/types.js +1 -0
  124. package/build/blocks/core/basic-heading/constants.d.ts +2 -0
  125. package/build/blocks/core/basic-heading/constants.d.ts.map +1 -0
  126. package/build/blocks/core/basic-heading/constants.js +1 -0
  127. package/build/blocks/core/basic-heading/edit.d.ts +6 -0
  128. package/build/blocks/core/basic-heading/edit.d.ts.map +1 -0
  129. package/build/blocks/core/basic-heading/edit.js +19 -0
  130. package/build/blocks/core/basic-heading/factory.d.ts +7 -0
  131. package/build/blocks/core/basic-heading/factory.d.ts.map +1 -0
  132. package/build/blocks/core/basic-heading/factory.js +31 -0
  133. package/build/blocks/core/basic-heading/index.d.ts +5 -0
  134. package/build/blocks/core/basic-heading/index.d.ts.map +1 -0
  135. package/build/blocks/core/basic-heading/index.js +4 -0
  136. package/build/blocks/core/basic-heading/types.d.ts +14 -0
  137. package/build/blocks/core/basic-heading/types.d.ts.map +1 -0
  138. package/build/blocks/core/basic-heading/types.js +1 -0
  139. package/build/blocks/core/basic-overline/edit.d.ts +6 -0
  140. package/build/blocks/core/basic-overline/edit.d.ts.map +1 -0
  141. package/build/blocks/core/basic-overline/edit.js +10 -0
  142. package/build/blocks/core/basic-overline/factory.d.ts +5 -0
  143. package/build/blocks/core/basic-overline/factory.d.ts.map +1 -0
  144. package/build/blocks/core/basic-overline/factory.js +18 -0
  145. package/build/blocks/core/basic-overline/index.d.ts +5 -0
  146. package/build/blocks/core/basic-overline/index.d.ts.map +1 -0
  147. package/build/blocks/core/basic-overline/index.js +4 -0
  148. package/build/blocks/core/basic-overline/types.d.ts +7 -0
  149. package/build/blocks/core/basic-overline/types.d.ts.map +1 -0
  150. package/build/blocks/core/basic-overline/types.js +1 -0
  151. package/build/blocks/faq/faq-group/constants.d.ts +18 -0
  152. package/build/blocks/faq/faq-group/constants.d.ts.map +1 -0
  153. package/build/blocks/faq/faq-group/constants.js +9 -0
  154. package/build/blocks/faq/faq-group/edit.d.ts +6 -0
  155. package/build/blocks/faq/faq-group/edit.d.ts.map +1 -0
  156. package/build/blocks/faq/faq-group/edit.js +23 -0
  157. package/build/blocks/faq/faq-group/factory.d.ts +7 -0
  158. package/build/blocks/faq/faq-group/factory.d.ts.map +1 -0
  159. package/build/blocks/faq/faq-group/factory.js +32 -0
  160. package/build/blocks/faq/faq-group/index.d.ts +5 -0
  161. package/build/blocks/faq/faq-group/index.d.ts.map +1 -0
  162. package/build/blocks/faq/faq-group/index.js +7 -0
  163. package/build/blocks/faq/faq-group/types.d.ts +12 -0
  164. package/build/blocks/faq/faq-group/types.d.ts.map +1 -0
  165. package/build/blocks/faq/faq-group/types.js +1 -0
  166. package/build/blocks/faq/faq-item/edit.d.ts +6 -0
  167. package/build/blocks/faq/faq-item/edit.d.ts.map +1 -0
  168. package/build/blocks/faq/faq-item/edit.js +14 -0
  169. package/build/blocks/faq/faq-item/factory.d.ts +5 -0
  170. package/build/blocks/faq/faq-item/factory.d.ts.map +1 -0
  171. package/build/blocks/faq/faq-item/factory.js +21 -0
  172. package/build/blocks/faq/faq-item/index.d.ts +5 -0
  173. package/build/blocks/faq/faq-item/index.d.ts.map +1 -0
  174. package/build/blocks/faq/faq-item/index.js +5 -0
  175. package/build/blocks/faq/faq-item/types.d.ts +7 -0
  176. package/build/blocks/faq/faq-item/types.d.ts.map +1 -0
  177. package/build/blocks/faq/faq-item/types.js +1 -0
  178. package/build/blocks/form/form-field/constants.d.ts +20 -0
  179. package/build/blocks/form/form-field/constants.d.ts.map +1 -0
  180. package/build/blocks/form/form-field/constants.js +10 -0
  181. package/build/blocks/form/form-field/edit.d.ts +6 -0
  182. package/build/blocks/form/form-field/edit.d.ts.map +1 -0
  183. package/build/blocks/form/form-field/edit.js +33 -0
  184. package/build/blocks/form/form-field/factory.d.ts +5 -0
  185. package/build/blocks/form/form-field/factory.d.ts.map +1 -0
  186. package/build/blocks/form/form-field/factory.js +28 -0
  187. package/build/blocks/form/form-field/index.d.ts +6 -0
  188. package/build/blocks/form/form-field/index.d.ts.map +1 -0
  189. package/build/blocks/form/form-field/index.js +6 -0
  190. package/build/blocks/form/form-field/types.d.ts +17 -0
  191. package/build/blocks/form/form-field/types.d.ts.map +1 -0
  192. package/build/blocks/form/form-field/types.js +1 -0
  193. package/build/blocks/form/form-group/constants.d.ts +22 -0
  194. package/build/blocks/form/form-group/constants.d.ts.map +1 -0
  195. package/build/blocks/form/form-group/constants.js +13 -0
  196. package/build/blocks/form/form-group/edit.d.ts +7 -0
  197. package/build/blocks/form/form-group/edit.d.ts.map +1 -0
  198. package/build/blocks/form/form-group/edit.js +45 -0
  199. package/build/blocks/form/form-group/factory.d.ts +5 -0
  200. package/build/blocks/form/form-group/factory.d.ts.map +1 -0
  201. package/build/blocks/form/form-group/factory.js +32 -0
  202. package/build/blocks/form/form-group/index.d.ts +6 -0
  203. package/build/blocks/form/form-group/index.d.ts.map +1 -0
  204. package/build/blocks/form/form-group/index.js +8 -0
  205. package/build/blocks/form/form-group/types.d.ts +26 -0
  206. package/build/blocks/form/form-group/types.d.ts.map +1 -0
  207. package/build/blocks/form/form-group/types.js +1 -0
  208. package/build/blocks/groups/banner-group/constants.d.ts +9 -0
  209. package/build/blocks/groups/banner-group/constants.d.ts.map +1 -0
  210. package/build/blocks/groups/banner-group/constants.js +13 -0
  211. package/build/blocks/groups/banner-group/edit.d.ts +6 -0
  212. package/build/blocks/groups/banner-group/edit.d.ts.map +1 -0
  213. package/build/blocks/groups/banner-group/edit.js +25 -0
  214. package/build/blocks/groups/banner-group/factory.d.ts +7 -0
  215. package/build/blocks/groups/banner-group/factory.d.ts.map +1 -0
  216. package/build/blocks/groups/banner-group/factory.js +54 -0
  217. package/build/blocks/groups/banner-group/icon.d.ts +2 -0
  218. package/build/blocks/groups/banner-group/icon.d.ts.map +1 -0
  219. package/build/blocks/groups/banner-group/icon.js +2 -0
  220. package/build/blocks/groups/banner-group/index.d.ts +5 -0
  221. package/build/blocks/groups/banner-group/index.d.ts.map +1 -0
  222. package/build/blocks/groups/banner-group/index.js +7 -0
  223. package/build/blocks/groups/banner-group/types.d.ts +28 -0
  224. package/build/blocks/groups/banner-group/types.d.ts.map +1 -0
  225. package/build/blocks/groups/banner-group/types.js +1 -0
  226. package/build/blocks/groups/basic-header-group/constants.d.ts +12 -0
  227. package/build/blocks/groups/basic-header-group/constants.d.ts.map +1 -0
  228. package/build/blocks/groups/basic-header-group/constants.js +7 -0
  229. package/build/blocks/groups/basic-header-group/edit.d.ts +6 -0
  230. package/build/blocks/groups/basic-header-group/edit.d.ts.map +1 -0
  231. package/build/blocks/groups/basic-header-group/edit.js +22 -0
  232. package/build/blocks/groups/basic-header-group/factory.d.ts +7 -0
  233. package/build/blocks/groups/basic-header-group/factory.d.ts.map +1 -0
  234. package/build/blocks/groups/basic-header-group/factory.js +34 -0
  235. package/build/blocks/groups/basic-header-group/icon.d.ts +2 -0
  236. package/build/blocks/groups/basic-header-group/icon.d.ts.map +1 -0
  237. package/build/blocks/groups/basic-header-group/icon.js +2 -0
  238. package/build/blocks/groups/basic-header-group/index.d.ts +5 -0
  239. package/build/blocks/groups/basic-header-group/index.d.ts.map +1 -0
  240. package/build/blocks/groups/basic-header-group/index.js +5 -0
  241. package/build/blocks/groups/basic-header-group/types.d.ts +23 -0
  242. package/build/blocks/groups/basic-header-group/types.d.ts.map +1 -0
  243. package/build/blocks/groups/basic-header-group/types.js +1 -0
  244. package/build/blocks/groups/button-group/constants.d.ts +14 -0
  245. package/build/blocks/groups/button-group/constants.d.ts.map +1 -0
  246. package/build/blocks/groups/button-group/constants.js +6 -0
  247. package/build/blocks/groups/button-group/edit.d.ts +6 -0
  248. package/build/blocks/groups/button-group/edit.d.ts.map +1 -0
  249. package/build/blocks/groups/button-group/edit.js +21 -0
  250. package/build/blocks/groups/button-group/factory.d.ts +7 -0
  251. package/build/blocks/groups/button-group/factory.d.ts.map +1 -0
  252. package/build/blocks/groups/button-group/factory.js +27 -0
  253. package/build/blocks/groups/button-group/index.d.ts +5 -0
  254. package/build/blocks/groups/button-group/index.d.ts.map +1 -0
  255. package/build/blocks/groups/button-group/index.js +7 -0
  256. package/build/blocks/groups/button-group/types.d.ts +10 -0
  257. package/build/blocks/groups/button-group/types.d.ts.map +1 -0
  258. package/build/blocks/groups/button-group/types.js +1 -0
  259. package/build/blocks/groups/text-and-media-group/constants.d.ts +74 -0
  260. package/build/blocks/groups/text-and-media-group/constants.d.ts.map +1 -0
  261. package/build/blocks/groups/text-and-media-group/constants.js +36 -0
  262. package/build/blocks/groups/text-and-media-group/edit.d.ts +6 -0
  263. package/build/blocks/groups/text-and-media-group/edit.d.ts.map +1 -0
  264. package/build/blocks/groups/text-and-media-group/edit.js +36 -0
  265. package/build/blocks/groups/text-and-media-group/factory.d.ts +7 -0
  266. package/build/blocks/groups/text-and-media-group/factory.d.ts.map +1 -0
  267. package/build/blocks/groups/text-and-media-group/factory.js +60 -0
  268. package/build/blocks/groups/text-and-media-group/icon.d.ts +2 -0
  269. package/build/blocks/groups/text-and-media-group/icon.d.ts.map +1 -0
  270. package/build/blocks/groups/text-and-media-group/icon.js +2 -0
  271. package/build/blocks/groups/text-and-media-group/index.d.ts +5 -0
  272. package/build/blocks/groups/text-and-media-group/index.d.ts.map +1 -0
  273. package/build/blocks/groups/text-and-media-group/index.js +14 -0
  274. package/build/blocks/groups/text-and-media-group/types.d.ts +49 -0
  275. package/build/blocks/groups/text-and-media-group/types.d.ts.map +1 -0
  276. package/build/blocks/groups/text-and-media-group/types.js +1 -0
  277. package/build/blocks/hero/hero-group/constants.d.ts +15 -0
  278. package/build/blocks/hero/hero-group/constants.d.ts.map +1 -0
  279. package/build/blocks/hero/hero-group/constants.js +21 -0
  280. package/build/blocks/hero/hero-group/edit.d.ts +6 -0
  281. package/build/blocks/hero/hero-group/edit.d.ts.map +1 -0
  282. package/build/blocks/hero/hero-group/edit.js +25 -0
  283. package/build/blocks/hero/hero-group/factory.d.ts +7 -0
  284. package/build/blocks/hero/hero-group/factory.d.ts.map +1 -0
  285. package/build/blocks/hero/hero-group/factory.js +38 -0
  286. package/build/blocks/hero/hero-group/icon.d.ts +2 -0
  287. package/build/blocks/hero/hero-group/icon.d.ts.map +1 -0
  288. package/build/blocks/hero/hero-group/icon.js +2 -0
  289. package/build/blocks/hero/hero-group/index.d.ts +5 -0
  290. package/build/blocks/hero/hero-group/index.d.ts.map +1 -0
  291. package/build/blocks/hero/hero-group/index.js +7 -0
  292. package/build/blocks/hero/hero-group/types.d.ts +19 -0
  293. package/build/blocks/hero/hero-group/types.d.ts.map +1 -0
  294. package/build/blocks/hero/hero-group/types.js +1 -0
  295. package/build/blocks/hero/hero-item/constants.d.ts +30 -0
  296. package/build/blocks/hero/hero-item/constants.d.ts.map +1 -0
  297. package/build/blocks/hero/hero-item/constants.js +13 -0
  298. package/build/blocks/hero/hero-item/edit.d.ts +6 -0
  299. package/build/blocks/hero/hero-item/edit.d.ts.map +1 -0
  300. package/build/blocks/hero/hero-item/edit.js +23 -0
  301. package/build/blocks/hero/hero-item/factory.d.ts +5 -0
  302. package/build/blocks/hero/hero-item/factory.d.ts.map +1 -0
  303. package/build/blocks/hero/hero-item/factory.js +45 -0
  304. package/build/blocks/hero/hero-item/index.d.ts +5 -0
  305. package/build/blocks/hero/hero-item/index.d.ts.map +1 -0
  306. package/build/blocks/hero/hero-item/index.js +6 -0
  307. package/build/blocks/hero/hero-item/types.d.ts +33 -0
  308. package/build/blocks/hero/hero-item/types.d.ts.map +1 -0
  309. package/build/blocks/hero/hero-item/types.js +1 -0
  310. package/build/blocks/map/map-group/constants.d.ts +14 -0
  311. package/build/blocks/map/map-group/constants.d.ts.map +1 -0
  312. package/build/blocks/map/map-group/constants.js +19 -0
  313. package/build/blocks/map/map-group/edit.d.ts +6 -0
  314. package/build/blocks/map/map-group/edit.d.ts.map +1 -0
  315. package/build/blocks/map/map-group/edit.js +21 -0
  316. package/build/blocks/map/map-group/factory.d.ts +5 -0
  317. package/build/blocks/map/map-group/factory.d.ts.map +1 -0
  318. package/build/blocks/map/map-group/factory.js +47 -0
  319. package/build/blocks/map/map-group/index.d.ts +5 -0
  320. package/build/blocks/map/map-group/index.d.ts.map +1 -0
  321. package/build/blocks/map/map-group/index.js +5 -0
  322. package/build/blocks/map/map-group/types.d.ts +15 -0
  323. package/build/blocks/map/map-group/types.d.ts.map +1 -0
  324. package/build/blocks/map/map-group/types.js +1 -0
  325. package/build/blocks/newsletter/newsletter-form/constants.d.ts +3 -0
  326. package/build/blocks/newsletter/newsletter-form/constants.d.ts.map +1 -0
  327. package/build/blocks/newsletter/newsletter-form/constants.js +3 -0
  328. package/build/blocks/newsletter/newsletter-form/edit.d.ts +6 -0
  329. package/build/blocks/newsletter/newsletter-form/edit.d.ts.map +1 -0
  330. package/build/blocks/newsletter/newsletter-form/edit.js +23 -0
  331. package/build/blocks/newsletter/newsletter-form/factory.d.ts +5 -0
  332. package/build/blocks/newsletter/newsletter-form/factory.d.ts.map +1 -0
  333. package/build/blocks/newsletter/newsletter-form/factory.js +54 -0
  334. package/build/blocks/newsletter/newsletter-form/index.d.ts +5 -0
  335. package/build/blocks/newsletter/newsletter-form/index.d.ts.map +1 -0
  336. package/build/blocks/newsletter/newsletter-form/index.js +7 -0
  337. package/build/blocks/newsletter/newsletter-form/types.d.ts +46 -0
  338. package/build/blocks/newsletter/newsletter-form/types.d.ts.map +1 -0
  339. package/build/blocks/newsletter/newsletter-form/types.js +1 -0
  340. package/build/blocks/post/post-slider-group/constants.d.ts +4 -0
  341. package/build/blocks/post/post-slider-group/constants.d.ts.map +1 -0
  342. package/build/blocks/post/post-slider-group/constants.js +3 -0
  343. package/build/blocks/post/post-slider-group/edit.d.ts +6 -0
  344. package/build/blocks/post/post-slider-group/edit.d.ts.map +1 -0
  345. package/build/blocks/post/post-slider-group/edit.js +21 -0
  346. package/build/blocks/post/post-slider-group/factory.d.ts +5 -0
  347. package/build/blocks/post/post-slider-group/factory.d.ts.map +1 -0
  348. package/build/blocks/post/post-slider-group/factory.js +39 -0
  349. package/build/blocks/post/post-slider-group/icon.d.ts +2 -0
  350. package/build/blocks/post/post-slider-group/icon.d.ts.map +1 -0
  351. package/build/blocks/post/post-slider-group/icon.js +2 -0
  352. package/build/blocks/post/post-slider-group/index.d.ts +5 -0
  353. package/build/blocks/post/post-slider-group/index.d.ts.map +1 -0
  354. package/build/blocks/post/post-slider-group/index.js +5 -0
  355. package/build/blocks/post/post-slider-group/types.d.ts +17 -0
  356. package/build/blocks/post/post-slider-group/types.d.ts.map +1 -0
  357. package/build/blocks/post/post-slider-group/types.js +1 -0
  358. package/build/blocks/responsive-grid/responsive-grid-group/edit.d.ts +6 -0
  359. package/build/blocks/responsive-grid/responsive-grid-group/edit.d.ts.map +1 -0
  360. package/build/blocks/responsive-grid/responsive-grid-group/edit.js +27 -0
  361. package/build/blocks/responsive-grid/responsive-grid-group/factory.d.ts +4 -0
  362. package/build/blocks/responsive-grid/responsive-grid-group/factory.d.ts.map +1 -0
  363. package/build/blocks/responsive-grid/responsive-grid-group/factory.js +32 -0
  364. package/build/blocks/responsive-grid/responsive-grid-group/index.d.ts +5 -0
  365. package/build/blocks/responsive-grid/responsive-grid-group/index.d.ts.map +1 -0
  366. package/build/blocks/responsive-grid/responsive-grid-group/index.js +9 -0
  367. package/build/blocks/responsive-grid/responsive-grid-group/types.d.ts +9 -0
  368. package/build/blocks/responsive-grid/responsive-grid-group/types.d.ts.map +1 -0
  369. package/build/blocks/responsive-grid/responsive-grid-group/types.js +1 -0
  370. package/build/blocks/responsive-grid/responsive-grid-item/edit.d.ts +6 -0
  371. package/build/blocks/responsive-grid/responsive-grid-item/edit.d.ts.map +1 -0
  372. package/build/blocks/responsive-grid/responsive-grid-item/edit.js +14 -0
  373. package/build/blocks/responsive-grid/responsive-grid-item/factory.d.ts +4 -0
  374. package/build/blocks/responsive-grid/responsive-grid-item/factory.d.ts.map +1 -0
  375. package/build/blocks/responsive-grid/responsive-grid-item/factory.js +19 -0
  376. package/build/blocks/responsive-grid/responsive-grid-item/index.d.ts +5 -0
  377. package/build/blocks/responsive-grid/responsive-grid-item/index.d.ts.map +1 -0
  378. package/build/blocks/responsive-grid/responsive-grid-item/index.js +5 -0
  379. package/build/blocks/responsive-grid/responsive-grid-item/types.d.ts +6 -0
  380. package/build/blocks/responsive-grid/responsive-grid-item/types.d.ts.map +1 -0
  381. package/build/blocks/responsive-grid/responsive-grid-item/types.js +1 -0
  382. package/build/blocks/sections/base-section/attributes.d.ts +18 -0
  383. package/build/blocks/sections/base-section/attributes.d.ts.map +1 -0
  384. package/build/blocks/sections/base-section/attributes.js +17 -0
  385. package/build/blocks/sections/base-section/constants.d.ts +31 -0
  386. package/build/blocks/sections/base-section/constants.d.ts.map +1 -0
  387. package/build/blocks/sections/base-section/constants.js +15 -0
  388. package/build/blocks/sections/base-section/controls.d.ts +9 -0
  389. package/build/blocks/sections/base-section/controls.d.ts.map +1 -0
  390. package/build/blocks/sections/base-section/controls.js +8 -0
  391. package/build/blocks/sections/base-section/edit.d.ts +4 -0
  392. package/build/blocks/sections/base-section/edit.d.ts.map +1 -0
  393. package/build/blocks/sections/base-section/edit.js +18 -0
  394. package/build/blocks/sections/base-section/factory.d.ts +5 -0
  395. package/build/blocks/sections/base-section/factory.d.ts.map +1 -0
  396. package/build/blocks/sections/base-section/factory.js +40 -0
  397. package/build/blocks/sections/base-section/icon.d.ts +2 -0
  398. package/build/blocks/sections/base-section/icon.d.ts.map +1 -0
  399. package/build/blocks/sections/base-section/icon.js +2 -0
  400. package/build/blocks/sections/base-section/index.d.ts +8 -0
  401. package/build/blocks/sections/base-section/index.d.ts.map +1 -0
  402. package/build/blocks/sections/base-section/index.js +10 -0
  403. package/build/blocks/sections/base-section/types.d.ts +24 -0
  404. package/build/blocks/sections/base-section/types.d.ts.map +1 -0
  405. package/build/blocks/sections/base-section/types.js +1 -0
  406. package/build/blocks/signpost/signpost-group/constants.d.ts +4 -0
  407. package/build/blocks/signpost/signpost-group/constants.d.ts.map +1 -0
  408. package/build/blocks/signpost/signpost-group/constants.js +3 -0
  409. package/build/blocks/signpost/signpost-group/edit.d.ts +6 -0
  410. package/build/blocks/signpost/signpost-group/edit.d.ts.map +1 -0
  411. package/build/blocks/signpost/signpost-group/edit.js +23 -0
  412. package/build/blocks/signpost/signpost-group/factory.d.ts +5 -0
  413. package/build/blocks/signpost/signpost-group/factory.d.ts.map +1 -0
  414. package/build/blocks/signpost/signpost-group/factory.js +37 -0
  415. package/build/blocks/signpost/signpost-group/icon.d.ts +2 -0
  416. package/build/blocks/signpost/signpost-group/icon.d.ts.map +1 -0
  417. package/build/blocks/signpost/signpost-group/icon.js +2 -0
  418. package/build/blocks/signpost/signpost-group/index.d.ts +5 -0
  419. package/build/blocks/signpost/signpost-group/index.d.ts.map +1 -0
  420. package/build/blocks/signpost/signpost-group/index.js +11 -0
  421. package/build/blocks/signpost/signpost-group/types.d.ts +9 -0
  422. package/build/blocks/signpost/signpost-group/types.d.ts.map +1 -0
  423. package/build/blocks/signpost/signpost-group/types.js +1 -0
  424. package/build/blocks/signpost/signpost-item/constants.d.ts +2 -0
  425. package/build/blocks/signpost/signpost-item/constants.d.ts.map +1 -0
  426. package/build/blocks/signpost/signpost-item/constants.js +1 -0
  427. package/build/blocks/signpost/signpost-item/edit.d.ts +6 -0
  428. package/build/blocks/signpost/signpost-item/edit.d.ts.map +1 -0
  429. package/build/blocks/signpost/signpost-item/edit.js +22 -0
  430. package/build/blocks/signpost/signpost-item/factory.d.ts +5 -0
  431. package/build/blocks/signpost/signpost-item/factory.d.ts.map +1 -0
  432. package/build/blocks/signpost/signpost-item/factory.js +26 -0
  433. package/build/blocks/signpost/signpost-item/icon.d.ts +2 -0
  434. package/build/blocks/signpost/signpost-item/icon.d.ts.map +1 -0
  435. package/build/blocks/signpost/signpost-item/icon.js +3 -0
  436. package/build/blocks/signpost/signpost-item/index.d.ts +5 -0
  437. package/build/blocks/signpost/signpost-item/index.d.ts.map +1 -0
  438. package/build/blocks/signpost/signpost-item/index.js +6 -0
  439. package/build/blocks/signpost/signpost-item/types.d.ts +17 -0
  440. package/build/blocks/signpost/signpost-item/types.d.ts.map +1 -0
  441. package/build/blocks/signpost/signpost-item/types.js +1 -0
  442. package/build/blocks/step/step-group/constants.d.ts +8 -0
  443. package/build/blocks/step/step-group/constants.d.ts.map +1 -0
  444. package/build/blocks/step/step-group/constants.js +5 -0
  445. package/build/blocks/step/step-group/edit.d.ts +8 -0
  446. package/build/blocks/step/step-group/edit.d.ts.map +1 -0
  447. package/build/blocks/step/step-group/edit.js +25 -0
  448. package/build/blocks/step/step-group/factory.d.ts +6 -0
  449. package/build/blocks/step/step-group/factory.d.ts.map +1 -0
  450. package/build/blocks/step/step-group/factory.js +31 -0
  451. package/build/blocks/step/step-group/icon.d.ts +2 -0
  452. package/build/blocks/step/step-group/icon.d.ts.map +1 -0
  453. package/build/blocks/step/step-group/icon.js +2 -0
  454. package/build/blocks/step/step-group/index.d.ts +5 -0
  455. package/build/blocks/step/step-group/index.d.ts.map +1 -0
  456. package/build/blocks/step/step-group/index.js +11 -0
  457. package/build/blocks/step/step-group/types.d.ts +11 -0
  458. package/build/blocks/step/step-group/types.d.ts.map +1 -0
  459. package/build/blocks/step/step-group/types.js +1 -0
  460. package/build/blocks/step/step-item/constants.d.ts +8 -0
  461. package/build/blocks/step/step-item/constants.d.ts.map +1 -0
  462. package/build/blocks/step/step-item/constants.js +5 -0
  463. package/build/blocks/step/step-item/edit.d.ts +6 -0
  464. package/build/blocks/step/step-item/edit.d.ts.map +1 -0
  465. package/build/blocks/step/step-item/edit.js +23 -0
  466. package/build/blocks/step/step-item/factory.d.ts +4 -0
  467. package/build/blocks/step/step-item/factory.d.ts.map +1 -0
  468. package/build/blocks/step/step-item/factory.js +26 -0
  469. package/build/blocks/step/step-item/index.d.ts +5 -0
  470. package/build/blocks/step/step-item/index.d.ts.map +1 -0
  471. package/build/blocks/step/step-item/index.js +7 -0
  472. package/build/blocks/step/step-item/types.d.ts +11 -0
  473. package/build/blocks/step/step-item/types.d.ts.map +1 -0
  474. package/build/blocks/step/step-item/types.js +1 -0
  475. package/build/blocks/testimonial/testimonial-group/constants.d.ts +18 -0
  476. package/build/blocks/testimonial/testimonial-group/constants.d.ts.map +1 -0
  477. package/build/blocks/testimonial/testimonial-group/constants.js +25 -0
  478. package/build/blocks/testimonial/testimonial-group/edit.d.ts +6 -0
  479. package/build/blocks/testimonial/testimonial-group/edit.d.ts.map +1 -0
  480. package/build/blocks/testimonial/testimonial-group/edit.js +21 -0
  481. package/build/blocks/testimonial/testimonial-group/factory.d.ts +7 -0
  482. package/build/blocks/testimonial/testimonial-group/factory.d.ts.map +1 -0
  483. package/build/blocks/testimonial/testimonial-group/factory.js +37 -0
  484. package/build/blocks/testimonial/testimonial-group/icon.d.ts +2 -0
  485. package/build/blocks/testimonial/testimonial-group/icon.d.ts.map +1 -0
  486. package/build/blocks/testimonial/testimonial-group/icon.js +2 -0
  487. package/build/blocks/testimonial/testimonial-group/index.d.ts +5 -0
  488. package/build/blocks/testimonial/testimonial-group/index.d.ts.map +1 -0
  489. package/build/blocks/testimonial/testimonial-group/index.js +11 -0
  490. package/build/blocks/testimonial/testimonial-group/types.d.ts +15 -0
  491. package/build/blocks/testimonial/testimonial-group/types.d.ts.map +1 -0
  492. package/build/blocks/testimonial/testimonial-group/types.js +1 -0
  493. package/build/blocks/testimonial/testimonial-item/edit.d.ts +6 -0
  494. package/build/blocks/testimonial/testimonial-item/edit.d.ts.map +1 -0
  495. package/build/blocks/testimonial/testimonial-item/edit.js +15 -0
  496. package/build/blocks/testimonial/testimonial-item/factory.d.ts +6 -0
  497. package/build/blocks/testimonial/testimonial-item/factory.d.ts.map +1 -0
  498. package/build/blocks/testimonial/testimonial-item/factory.js +31 -0
  499. package/build/blocks/testimonial/testimonial-item/index.d.ts +5 -0
  500. package/build/blocks/testimonial/testimonial-item/index.d.ts.map +1 -0
  501. package/build/blocks/testimonial/testimonial-item/index.js +5 -0
  502. package/build/blocks/testimonial/testimonial-item/types.d.ts +9 -0
  503. package/build/blocks/testimonial/testimonial-item/types.d.ts.map +1 -0
  504. package/build/blocks/testimonial/testimonial-item/types.js +1 -0
  505. package/build/blocks/text-and-form/text-and-form-group/constants.d.ts +8 -0
  506. package/build/blocks/text-and-form/text-and-form-group/constants.d.ts.map +1 -0
  507. package/build/blocks/text-and-form/text-and-form-group/constants.js +5 -0
  508. package/build/blocks/text-and-form/text-and-form-group/edit.d.ts +4 -0
  509. package/build/blocks/text-and-form/text-and-form-group/edit.d.ts.map +1 -0
  510. package/build/blocks/text-and-form/text-and-form-group/edit.js +31 -0
  511. package/build/blocks/text-and-form/text-and-form-group/factory.d.ts +5 -0
  512. package/build/blocks/text-and-form/text-and-form-group/factory.d.ts.map +1 -0
  513. package/build/blocks/text-and-form/text-and-form-group/factory.js +31 -0
  514. package/build/blocks/text-and-form/text-and-form-group/icon.d.ts +2 -0
  515. package/build/blocks/text-and-form/text-and-form-group/icon.d.ts.map +1 -0
  516. package/build/blocks/text-and-form/text-and-form-group/icon.js +2 -0
  517. package/build/blocks/text-and-form/text-and-form-group/index.d.ts +5 -0
  518. package/build/blocks/text-and-form/text-and-form-group/index.d.ts.map +1 -0
  519. package/build/blocks/text-and-form/text-and-form-group/index.js +5 -0
  520. package/build/blocks/text-and-form/text-and-form-group/types.d.ts +21 -0
  521. package/build/blocks/text-and-form/text-and-form-group/types.d.ts.map +1 -0
  522. package/build/blocks/text-and-form/text-and-form-group/types.js +1 -0
  523. package/build/blocks/text-and-form/text-and-form-text-column/constants.d.ts +15 -0
  524. package/build/blocks/text-and-form/text-and-form-text-column/constants.d.ts.map +1 -0
  525. package/build/blocks/text-and-form/text-and-form-text-column/constants.js +8 -0
  526. package/build/blocks/text-and-form/text-and-form-text-column/edit.d.ts +6 -0
  527. package/build/blocks/text-and-form/text-and-form-text-column/edit.d.ts.map +1 -0
  528. package/build/blocks/text-and-form/text-and-form-text-column/edit.js +22 -0
  529. package/build/blocks/text-and-form/text-and-form-text-column/factory.d.ts +7 -0
  530. package/build/blocks/text-and-form/text-and-form-text-column/factory.d.ts.map +1 -0
  531. package/build/blocks/text-and-form/text-and-form-text-column/factory.js +31 -0
  532. package/build/blocks/text-and-form/text-and-form-text-column/index.d.ts +5 -0
  533. package/build/blocks/text-and-form/text-and-form-text-column/index.d.ts.map +1 -0
  534. package/build/blocks/text-and-form/text-and-form-text-column/index.js +14 -0
  535. package/build/blocks/text-and-form/text-and-form-text-column/types.d.ts +25 -0
  536. package/build/blocks/text-and-form/text-and-form-text-column/types.d.ts.map +1 -0
  537. package/build/blocks/text-and-form/text-and-form-text-column/types.js +1 -0
  538. package/build/blocks/usp/usp-group/constants.d.ts +99 -0
  539. package/build/blocks/usp/usp-group/constants.d.ts.map +1 -0
  540. package/build/blocks/usp/usp-group/constants.js +44 -0
  541. package/build/blocks/usp/usp-group/edit.d.ts +6 -0
  542. package/build/blocks/usp/usp-group/edit.d.ts.map +1 -0
  543. package/build/blocks/usp/usp-group/edit.js +33 -0
  544. package/build/blocks/usp/usp-group/factory.d.ts +7 -0
  545. package/build/blocks/usp/usp-group/factory.d.ts.map +1 -0
  546. package/build/blocks/usp/usp-group/factory.js +51 -0
  547. package/build/blocks/usp/usp-group/icon.d.ts +2 -0
  548. package/build/blocks/usp/usp-group/icon.d.ts.map +1 -0
  549. package/build/blocks/usp/usp-group/icon.js +2 -0
  550. package/build/blocks/usp/usp-group/index.d.ts +5 -0
  551. package/build/blocks/usp/usp-group/index.d.ts.map +1 -0
  552. package/build/blocks/usp/usp-group/index.js +11 -0
  553. package/build/blocks/usp/usp-group/types.d.ts +47 -0
  554. package/build/blocks/usp/usp-group/types.d.ts.map +1 -0
  555. package/build/blocks/usp/usp-group/types.js +1 -0
  556. package/build/blocks/usp/usp-item/constants.d.ts +11 -0
  557. package/build/blocks/usp/usp-item/constants.d.ts.map +1 -0
  558. package/build/blocks/usp/usp-item/constants.js +6 -0
  559. package/build/blocks/usp/usp-item/edit.d.ts +6 -0
  560. package/build/blocks/usp/usp-item/edit.d.ts.map +1 -0
  561. package/build/blocks/usp/usp-item/edit.js +14 -0
  562. package/build/blocks/usp/usp-item/factory.d.ts +5 -0
  563. package/build/blocks/usp/usp-item/factory.d.ts.map +1 -0
  564. package/build/blocks/usp/usp-item/factory.js +26 -0
  565. package/build/blocks/usp/usp-item/index.d.ts +5 -0
  566. package/build/blocks/usp/usp-item/index.d.ts.map +1 -0
  567. package/build/blocks/usp/usp-item/index.js +7 -0
  568. package/build/blocks/usp/usp-item/types.d.ts +18 -0
  569. package/build/blocks/usp/usp-item/types.d.ts.map +1 -0
  570. package/build/blocks/usp/usp-item/types.js +1 -0
  571. package/build/components/IconControl/IconControl.d.ts +14 -0
  572. package/build/components/IconControl/IconControl.d.ts.map +1 -0
  573. package/build/components/IconControl/IconControl.js +17 -0
  574. package/build/components/IconControl/index.d.ts +3 -0
  575. package/build/components/IconControl/index.d.ts.map +1 -0
  576. package/build/components/IconControl/index.js +1 -0
  577. package/build/components/ImagePicker/ImagePicker.d.ts +22 -0
  578. package/build/components/ImagePicker/ImagePicker.d.ts.map +1 -0
  579. package/build/components/ImagePicker/ImagePicker.js +35 -0
  580. package/build/components/ImagePicker/index.d.ts +3 -0
  581. package/build/components/ImagePicker/index.d.ts.map +1 -0
  582. package/build/components/ImagePicker/index.js +1 -0
  583. package/build/components/ItemIconControl/ItemIconControl.d.ts +3 -0
  584. package/build/components/ItemIconControl/ItemIconControl.d.ts.map +1 -0
  585. package/build/components/ItemIconControl/ItemIconControl.js +18 -0
  586. package/build/components/ItemIconControl/ItemIconModal.d.ts +3 -0
  587. package/build/components/ItemIconControl/ItemIconModal.d.ts.map +1 -0
  588. package/build/components/ItemIconControl/ItemIconModal.js +7 -0
  589. package/build/components/ItemIconControl/ItemIconPreview.d.ts +3 -0
  590. package/build/components/ItemIconControl/ItemIconPreview.d.ts.map +1 -0
  591. package/build/components/ItemIconControl/ItemIconPreview.js +35 -0
  592. package/build/components/ItemIconControl/index.d.ts +3 -0
  593. package/build/components/ItemIconControl/index.d.ts.map +1 -0
  594. package/build/components/ItemIconControl/index.js +2 -0
  595. package/build/constants.d.ts +27 -0
  596. package/build/constants.d.ts.map +1 -0
  597. package/build/constants.js +14 -0
  598. package/build/hooks/useGroupBlock.d.ts +29 -0
  599. package/build/hooks/useGroupBlock.d.ts.map +1 -0
  600. package/build/hooks/useGroupBlock.js +15 -0
  601. package/build/index.d.ts +83 -0
  602. package/build/index.d.ts.map +1 -0
  603. package/build/index.js +41 -0
  604. package/build/types.d.ts +33 -0
  605. package/build/types.d.ts.map +1 -0
  606. package/build/types.js +1 -0
  607. package/build/utils/createEditAdapter.d.ts +4 -0
  608. package/build/utils/createEditAdapter.d.ts.map +1 -0
  609. package/build/utils/createEditAdapter.js +5 -0
  610. package/package.json +5 -1
  611. package/.editorconfig +0 -12
  612. package/.prettierrc +0 -8
  613. package/USAGE.md +0 -263
  614. package/biome.json +0 -38
  615. package/bun.lock +0 -1392
  616. package/docs/block-anatomy.md +0 -73
  617. package/docs/conventions.md +0 -204
  618. package/docs/new-block.md +0 -179
  619. package/tsconfig.json +0 -21
@@ -1,73 +0,0 @@
1
- # Block anatomy
2
-
3
- Every block in `@brilo/base-blocks` consists of exactly these files:
4
-
5
- ```
6
- blocks/<category>/<block-name>/
7
- ├── factory.tsx — block config, attributes, options interface
8
- ├── edit.tsx — editor component (createXxxEdit)
9
- ├── constants.ts — option arrays and defaults used in edit.tsx
10
- ├── index.ts — barrel export
11
- └── editor.scss — editor-only styles
12
- ```
13
-
14
- ## Categories
15
-
16
- | Category | Purpose | Example |
17
- |------------|------------------------------------------------|--------------------|
18
- | `core/` | Atomic blocks — no inner blocks | `basic-button` |
19
- | `groups/` | Container blocks — wrap inner blocks | `usp-group` |
20
- | `items/` | Item blocks — live inside a group | `usp-item` |
21
- | `sections/`| Top-level page sections — wrap groups | `base-section` |
22
-
23
- Use `core/` for anything that renders a single element (text, button, image).
24
- Use `groups/` when the block contains `InnerBlocks`.
25
- Use `items/` when the block is designed to be a child of a specific group (`parent` restriction).
26
- Use `sections/` for full-width page sections.
27
-
28
- ## factory.tsx
29
-
30
- Exports:
31
- - `XxxAttributes` — attribute interface extending `Record<string, unknown>`
32
- - `XxxOptions` — options passed to the factory at tenant registration time
33
- - `createXxxBlock(options)` — returns `BlockConfiguration<XxxAttributes>`
34
- - `xxxDefaults` — sensible default options object
35
-
36
- The factory sets: `name`, `title`, `category`, `supports`, `attributes`, `edit`, `save`.
37
- Tenant-customisable values live in `XxxOptions`. Hardcoded values never need to change across tenants.
38
-
39
- ## edit.tsx
40
-
41
- Exports a single function `createXxxEdit(options: XxxOptions)` that returns a React component.
42
-
43
- Rules:
44
- - No inline constant arrays — all arrays live in `constants.ts`
45
- - No `__` calls on module level — only inside the returned component or in `constants.ts`
46
- - Imports only from `./constants`, `./factory`, and `@wordpress/*`
47
-
48
- ## constants.ts
49
-
50
- Contains all option arrays (`SelectOption[]`, `readonly number[]`, `readonly string[]`) used by `edit.tsx`.
51
-
52
- Rules:
53
- - Block-specific constants defined locally
54
- - Constants shared with other blocks imported from `../../../constants` (or `../../constants` for items)
55
- - Naming conflict resolved with import alias: `import { HEADING_LEVELS as SHARED_HEADING_LEVELS } from '../../../constants'`
56
-
57
- See [conventions.md](./conventions.md) for naming rules.
58
-
59
- ## index.ts
60
-
61
- Re-exports everything needed by `src/index.ts`:
62
-
63
- ```ts
64
- export type {XxxAttributes, XxxOptions} from './factory'
65
- export {createXxxBlock, xxxDefaults} from './factory'
66
- ```
67
-
68
- `edit.tsx` and `constants.ts` are never exported from `index.ts`.
69
-
70
- ## editor.scss
71
-
72
- Editor-only styles scoped to the block. Do not put frontend styles here.
73
- Compiled output is imported via `src/editor.scss` barrel.
@@ -1,204 +0,0 @@
1
- # Conventions
2
-
3
- ## Naming
4
-
5
- ### Files
6
- ```
7
- factory.tsx — always this exact name
8
- edit.tsx — always this exact name
9
- constants.ts — always this exact name
10
- index.ts — always this exact name
11
- editor.scss — always this exact name
12
- ```
13
-
14
- ### Functions and types
15
-
16
- | Thing | Pattern | Example |
17
- |-------------------|--------------------------|----------------------------|
18
- | Factory function | `createXxxBlock` | `createBasicButtonBlock` |
19
- | Edit factory | `createXxxEdit` | `createBasicButtonEdit` |
20
- | Attributes type | `XxxAttributes` | `BasicButtonAttributes` |
21
- | Options type | `XxxOptions` | `BasicButtonOptions` |
22
- | Defaults object | `xxxDefaults` | `basicButtonDefaults` |
23
-
24
- ### Constants
25
-
26
- All-caps snake case. No `DEFAULT_` prefix unless the constant is a fallback for an overridable option.
27
-
28
- ```ts
29
- // Overridable option default → DEFAULT_ prefix
30
- export const DEFAULT_VARIANTS = [...] as const
31
-
32
- // Fixed set, not exposed in options → no prefix
33
- export const HEADING_LEVELS = [1, 2, 3, 4] as const
34
- ```
35
-
36
- Shared constants in `src/constants.ts`: `HEADING_LEVELS`, `HEADING_STYLES`, `CONTENT_SIZES`.
37
- Import directly from `../../../constants` in block `constants.ts` files. Use alias on name conflict.
38
-
39
- ## Types
40
-
41
- `SelectOption` — use for any `{value, label}` pair. Import from `src/types.ts`:
42
- ```ts
43
- import type {SelectOption} from '../../../types'
44
- ```
45
-
46
- `readonly number[]` / `readonly string[]` — use `as const` for level/style arrays that must match TS literal types.
47
-
48
- ### Derived union types from constants
49
-
50
- Allowed values for block attributes are derived directly from `as const` arrays in `constants.ts`. Never write union types by hand.
51
-
52
- ```
53
- constants.ts (as const arrays)
54
- → derived union types in types.ts
55
- → XxxAttributes interface
56
- → consumed by edit.tsx (attributes + setAttributes)
57
- ```
58
-
59
- Pattern:
60
- ```ts
61
- // constants.ts
62
- export const MEDIA_POSITIONS = [
63
- {value: 'left', label: ...},
64
- {value: 'right', label: ...},
65
- ] as const
66
-
67
- // types.ts
68
- export type MediaPositions = (typeof MEDIA_POSITIONS)[number]['value']
69
- // → 'left' | 'right'
70
- ```
71
-
72
- For plain number/string arrays without `value` key (e.g. `HEADING_LEVELS = [1, 2, 3, 4] as const`):
73
- ```ts
74
- export type HeadingLevels = (typeof HEADING_LEVELS)[number]
75
- // → 1 | 2 | 3 | 4
76
- ```
77
-
78
- To add or remove an allowed value, edit the source constant — the type updates automatically.
79
-
80
- ## Options pattern
81
-
82
- Every factory accepts an `XxxOptions` object. Options that can be overridden by tenants have defaults defined in `constants.ts` and applied with `??`:
83
-
84
- ```ts
85
- export function createXxxEdit(options: XxxOptions) {
86
- const variants = options.variants ?? DEFAULT_VARIANTS
87
- // ...
88
- }
89
- ```
90
-
91
- The same resolved array is used for both the WordPress `attributes.enum` definition and the edit UI — never hardcode `DEFAULT_*` directly in the factory `attributes` object:
92
-
93
- ```ts
94
- // ✓ correct — uses resolved value, reflects tenant override
95
- const variants = options.variants ?? DEFAULT_VARIANTS
96
- attributes: { variant: { enum: variants.map((v) => v.value) } }
97
-
98
- // ✗ wrong — ignores tenant override
99
- attributes: { variant: { enum: DEFAULT_VARIANTS.map((v) => v.value) } }
100
- ```
101
-
102
- Options that are mandatory (like `name`) have no default and are required in the interface.
103
-
104
- ## Generic factories
105
-
106
- Every factory whose options contain overridable enum arrays is generic. This lets TypeScript narrow attribute value types to the exact set a tenant provides.
107
-
108
- ```ts
109
- // factory.tsx
110
- export function createBasicButtonBlock<
111
- TVariants extends OptionArray = typeof DEFAULT_VARIANTS,
112
- TSizes extends OptionArray = typeof DEFAULT_SIZES,
113
- >(
114
- options: BasicButtonOptions<TVariants, TSizes>,
115
- ): BlockConfiguration<BasicButtonAttributes<TVariants[number]['value'], TSizes[number]['value']>>
116
- ```
117
-
118
- ```ts
119
- // types.ts — Options and Attributes are also generic with matching defaults
120
- export interface BasicButtonAttributes<
121
- TVariant extends string = ButtonVariant,
122
- TSize extends string = ButtonSize,
123
- > extends Record<string, unknown> {
124
- variant: TVariant
125
- size: TSize
126
- }
127
-
128
- export interface BasicButtonOptions<
129
- TVariants extends OptionArray = typeof DEFAULT_VARIANTS,
130
- TSizes extends OptionArray = typeof DEFAULT_SIZES,
131
- > {
132
- variants?: TVariants
133
- sizes?: TSizes
134
- }
135
- ```
136
-
137
- Use the shared constraint types from `src/types.ts`:
138
-
139
- | Constraint | Use for |
140
- |---|---|
141
- | `OptionArray` | `ReadonlyArray<{value: string; label: string}>` — SelectOption arrays |
142
- | `NumberArray` | `ReadonlyArray<number>` — level arrays |
143
- | `StringArray` | `ReadonlyArray<string>` — style/class arrays |
144
-
145
- **Tenant usage** — base (no generics needed, defaults inferred):
146
- ```ts
147
- createBasicButtonBlock({...basicButtonDefaults})
148
- // variant: 'primary' | 'secondary'
149
- ```
150
-
151
- **Tenant usage** — custom enum:
152
- ```ts
153
- const MY_VARIANTS = [
154
- {value: 'primary', label: 'Primární'},
155
- {value: 'brand', label: 'Brand'},
156
- ] as const // as const is required for literal inference
157
-
158
- createBasicButtonBlock({...basicButtonDefaults, variants: MY_VARIANTS})
159
- // variant: 'primary' | 'brand'
160
- ```
161
-
162
- `edit.tsx` stays non-generic — `createXxxEdit` takes the non-generic `XxxOptions` type. The factory casts options when calling it:
163
- ```ts
164
- edit: createBasicButtonEdit(options as unknown as BasicButtonOptions),
165
- ```
166
-
167
- Fixed arrays that are not exposed in options (e.g. `HEADING_LEVELS`, `CHIP_POSITIONS`) are not type params — they remain hardcoded in `attributes` and render.
168
-
169
- ## Exports
170
-
171
- Only `factory.tsx` exports from a block. `edit.tsx` and `constants.ts` are internal.
172
-
173
- `src/index.ts` re-exports:
174
- - Types: `XxxAttributes`, `XxxOptions`
175
- - Values: `createXxxBlock`, `xxxDefaults`
176
-
177
- Do not export `SelectOption` from individual factory files — it lives in `src/types.ts` and is exported from there.
178
-
179
- ## CSS class composition
180
-
181
- Use `clsx` to compose `className` in `useBlockProps`. Each modifier class reflects a piece of component state — readable and styleable per state:
182
-
183
- ```tsx
184
- const blockProps = useBlockProps({
185
- className: clsx(
186
- options.blockClassName ?? 'i-button',
187
- `--variant-${variant}`,
188
- `--size-${size}`,
189
- outline && '--outline',
190
- fullWidth !== 'false' && `--full-width-${fullWidth}`,
191
- ),
192
- })
193
- ```
194
-
195
- Rules:
196
- - Base class first (from `options.blockClassName` or block default)
197
- - BEM modifier classes (`--variant-x`, `--size-x`) as template literals
198
- - Boolean modifiers as `condition && '--class'` — falsy values dropped by `clsx`
199
- - No manual string concatenation or ternaries for class toggling
200
-
201
- ## i18n
202
-
203
- All user-visible strings use `__('string', 'brilo-blocks')`.
204
- Constants with translated labels live in `constants.ts`, not in `edit.tsx`.
package/docs/new-block.md DELETED
@@ -1,179 +0,0 @@
1
- # Adding a new block
2
-
3
- ## 1. Choose a category
4
-
5
- See [block-anatomy.md](./block-anatomy.md#categories) for when to use `core/`, `groups/`, `items/`, or `sections/`.
6
-
7
- ## 2. Create the directory
8
-
9
- ```
10
- src/blocks/<category>/<block-name>/
11
- ```
12
-
13
- ## 3. Create the files
14
-
15
- Copy the templates below into the directory. Replace every `Xxx` / `xxx` / `block-name` with your block name.
16
-
17
- ---
18
-
19
- ### `factory.tsx`
20
-
21
- ```tsx
22
- import type {BlockConfiguration} from '@wordpress/blocks'
23
- import {createXxxEdit} from './edit'
24
-
25
- export interface XxxAttributes extends Record<string, unknown> {
26
- // TODO: define attributes
27
- }
28
-
29
- export interface XxxOptions {
30
- name: string
31
- title?: string
32
- description?: string
33
- category?: string
34
- blockClassName?: string
35
- // TODO: add overridable options
36
- }
37
-
38
- export const xxxDefaults: XxxOptions = {
39
- name: 'brilo/xxx',
40
- title: 'TODO: Block title',
41
- // TODO: fill defaults
42
- }
43
-
44
- export function createXxxBlock(options: XxxOptions): BlockConfiguration<XxxAttributes> {
45
- return {
46
- name: options.name,
47
- title: options.title ?? 'TODO',
48
- description: options.description,
49
- category: options.category ?? 'common',
50
- supports: {html: false, customClassName: false},
51
- attributes: {
52
- // TODO: mirror XxxAttributes shape
53
- },
54
- edit: createXxxEdit(options),
55
- save: () => null,
56
- } as unknown as BlockConfiguration<XxxAttributes>
57
- }
58
- ```
59
-
60
- ---
61
-
62
- ### `constants.ts`
63
-
64
- ```ts
65
- import {__} from '@wordpress/i18n'
66
- import type {SelectOption} from '../../../types'
67
-
68
- // Import shared constants if needed:
69
- // export {HEADING_LEVELS, HEADING_STYLES, CONTENT_SIZES} from '../../../constants'
70
-
71
- // TODO: define block-specific constants
72
- // export const MY_OPTIONS: SelectOption[] = [
73
- // {value: 'foo', label: __('Foo', 'brilo-blocks')},
74
- // ]
75
- ```
76
-
77
- ---
78
-
79
- ### `edit.tsx`
80
-
81
- ```tsx
82
- import {InspectorControls, useBlockProps} from '@wordpress/block-editor'
83
- import {PanelBody} from '@wordpress/components'
84
- import {__} from '@wordpress/i18n'
85
- import type {XxxAttributes, XxxOptions} from './factory'
86
- // import {MY_OPTIONS} from './constants'
87
-
88
- export function createXxxEdit(options: XxxOptions) {
89
- return function Edit({
90
- attributes,
91
- setAttributes,
92
- }: {
93
- attributes: XxxAttributes
94
- setAttributes: (a: Partial<XxxAttributes>) => void
95
- }) {
96
- const blockProps = useBlockProps({className: options.blockClassName ?? 'TODO'})
97
-
98
- return (
99
- <>
100
- <InspectorControls>
101
- <PanelBody title={__('TODO', 'brilo-blocks')}>
102
- {/* TODO: add controls */}
103
- </PanelBody>
104
- </InspectorControls>
105
- <div {...blockProps}>
106
- {/* TODO: render block */}
107
- </div>
108
- </>
109
- )
110
- }
111
- }
112
- ```
113
-
114
- For group blocks (with inner blocks), use `useGroupBlock` instead of `useBlockProps`:
115
-
116
- ```tsx
117
- import {useGroupBlock} from '../../../hooks/useGroupBlock'
118
-
119
- const {blockProps, innerBlocksProps} = useGroupBlock({
120
- blockClassName: options.blockClassName ?? 'g-xxx wp-block-section',
121
- allowedBlocks: options.allowedBlocks,
122
- template: options.template,
123
- })
124
- ```
125
-
126
- ---
127
-
128
- ### `index.ts`
129
-
130
- ```ts
131
- export type {XxxAttributes, XxxOptions} from './factory'
132
- export {createXxxBlock, xxxDefaults} from './factory'
133
- ```
134
-
135
- ---
136
-
137
- ### `editor.scss`
138
-
139
- ```scss
140
- .TODO-block-class {
141
- // editor-only styles
142
- }
143
- ```
144
-
145
- ---
146
-
147
- ## 4. Register in src/index.ts
148
-
149
- ```ts
150
- export type {XxxAttributes, XxxOptions} from './blocks/<category>/xxx'
151
- export {createXxxBlock, xxxDefaults} from './blocks/<category>/xxx'
152
- ```
153
-
154
- ## 5. Import in src/editor.scss
155
-
156
- ```scss
157
- @import './blocks/<category>/<block-name>/editor';
158
- ```
159
-
160
- ## 6. Build
161
-
162
- ```bash
163
- bun run build
164
- ```
165
-
166
- ## 7. Register in tenant
167
-
168
- ```ts
169
- import {createXxxBlock, xxxDefaults} from '@brilo/base-blocks'
170
- import {registerBlockType} from '@wordpress/blocks'
171
-
172
- const config = createXxxBlock({
173
- ...xxxDefaults,
174
- // override what the tenant needs
175
- })
176
- registerBlockType(config.name as string, config)
177
- ```
178
-
179
- Add `block.json` in the tenant with only build metadata (`$schema`, `apiVersion`, `name`, `editorScript`, `editorStyle`).
package/tsconfig.json DELETED
@@ -1,21 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2019",
4
- "module": "ESNext",
5
- "moduleResolution": "Bundler",
6
- "jsx": "react-jsx",
7
- "outDir": "./build",
8
- "rootDir": "./src",
9
- "declaration": true,
10
- "declarationMap": true,
11
- "strict": true,
12
- "esModuleInterop": true,
13
- "skipLibCheck": true,
14
- "baseUrl": ".",
15
- "paths": {
16
- "~/*": ["./src/*"]
17
- }
18
- },
19
- "include": ["src"],
20
- "exclude": ["node_modules", "build"]
21
- }