@upstart.gg/sdk 0.0.134 → 0.0.136

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 (589) hide show
  1. package/dist/shared/ai/schemas.d.ts +11 -3
  2. package/dist/shared/ai/schemas.d.ts.map +1 -1
  3. package/dist/shared/ai/schemas.js +63 -1
  4. package/dist/shared/ai/schemas.js.map +1 -1
  5. package/dist/shared/ai/types.d.ts +138 -64
  6. package/dist/shared/ai/types.d.ts.map +1 -1
  7. package/dist/shared/ajv.js +6861 -1
  8. package/dist/shared/ajv.js.map +1 -1
  9. package/dist/shared/analytics/init.js +20 -1
  10. package/dist/shared/analytics/init.js.map +1 -1
  11. package/dist/shared/analytics/track.js +24 -1
  12. package/dist/shared/analytics/track.js.map +1 -1
  13. package/dist/shared/attributes.d.ts +99 -30
  14. package/dist/shared/attributes.d.ts.map +1 -1
  15. package/dist/shared/attributes.js +46 -1
  16. package/dist/shared/brick-manifest.d.ts +1 -1
  17. package/dist/shared/brick-manifest.js +26 -1
  18. package/dist/shared/bricks/manifests/_types.d.ts +9 -0
  19. package/dist/shared/bricks/manifests/_types.d.ts.map +1 -0
  20. package/dist/shared/bricks/{props/enum.js → manifests/_types.js} +1 -2
  21. package/dist/shared/bricks/manifests/accordion.manifest.d.ts +4 -8
  22. package/dist/shared/bricks/manifests/accordion.manifest.d.ts.map +1 -1
  23. package/dist/shared/bricks/manifests/accordion.manifest.js +29 -1
  24. package/dist/shared/bricks/manifests/all-manifests.d.ts.map +1 -1
  25. package/dist/shared/bricks/manifests/all-manifests.js +59 -1
  26. package/dist/shared/bricks/manifests/box.manifest.d.ts +4 -8
  27. package/dist/shared/bricks/manifests/box.manifest.d.ts.map +1 -1
  28. package/dist/shared/bricks/manifests/box.manifest.js +28 -1
  29. package/dist/shared/bricks/manifests/button.manifest.d.ts +4 -8
  30. package/dist/shared/bricks/manifests/button.manifest.d.ts.map +1 -1
  31. package/dist/shared/bricks/manifests/button.manifest.js +28 -1
  32. package/dist/shared/bricks/manifests/card.manifest.d.ts +10 -9
  33. package/dist/shared/bricks/manifests/card.manifest.d.ts.map +1 -1
  34. package/dist/shared/bricks/manifests/card.manifest.js +28 -1
  35. package/dist/shared/bricks/manifests/carousel.manifest.d.ts +4 -8
  36. package/dist/shared/bricks/manifests/carousel.manifest.d.ts.map +1 -1
  37. package/dist/shared/bricks/manifests/carousel.manifest.js +28 -1
  38. package/dist/shared/bricks/manifests/footer.manifest.d.ts +6 -10
  39. package/dist/shared/bricks/manifests/footer.manifest.d.ts.map +1 -1
  40. package/dist/shared/bricks/manifests/footer.manifest.js +30 -1
  41. package/dist/shared/bricks/manifests/form.manifest.d.ts +5 -9
  42. package/dist/shared/bricks/manifests/form.manifest.d.ts.map +1 -1
  43. package/dist/shared/bricks/manifests/form.manifest.js +29 -1
  44. package/dist/shared/bricks/manifests/hero.manifest.d.ts +4 -8
  45. package/dist/shared/bricks/manifests/hero.manifest.d.ts.map +1 -1
  46. package/dist/shared/bricks/manifests/hero.manifest.js +28 -1
  47. package/dist/shared/bricks/manifests/html.manifest.d.ts +4 -8
  48. package/dist/shared/bricks/manifests/html.manifest.d.ts.map +1 -1
  49. package/dist/shared/bricks/manifests/html.manifest.js +28 -1
  50. package/dist/shared/bricks/manifests/icon.manifest.d.ts +4 -8
  51. package/dist/shared/bricks/manifests/icon.manifest.d.ts.map +1 -1
  52. package/dist/shared/bricks/manifests/icon.manifest.js +28 -1
  53. package/dist/shared/bricks/manifests/image.manifest.d.ts +3 -2
  54. package/dist/shared/bricks/manifests/image.manifest.d.ts.map +1 -1
  55. package/dist/shared/bricks/manifests/image.manifest.js +28 -1
  56. package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts +4 -8
  57. package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts.map +1 -1
  58. package/dist/shared/bricks/manifests/images-gallery.manifest.js +28 -1
  59. package/dist/shared/bricks/manifests/map.manifest.d.ts +4 -8
  60. package/dist/shared/bricks/manifests/map.manifest.d.ts.map +1 -1
  61. package/dist/shared/bricks/manifests/map.manifest.js +31 -1
  62. package/dist/shared/bricks/manifests/navbar.manifest.d.ts +6 -10
  63. package/dist/shared/bricks/manifests/navbar.manifest.d.ts.map +1 -1
  64. package/dist/shared/bricks/manifests/navbar.manifest.js +31 -1
  65. package/dist/shared/bricks/manifests/sidebar.manifest.d.ts +4 -8
  66. package/dist/shared/bricks/manifests/sidebar.manifest.d.ts.map +1 -1
  67. package/dist/shared/bricks/manifests/sidebar.manifest.js +29 -1
  68. package/dist/shared/bricks/manifests/social-links.manifest.d.ts +4 -8
  69. package/dist/shared/bricks/manifests/social-links.manifest.d.ts.map +1 -1
  70. package/dist/shared/bricks/manifests/social-links.manifest.js +28 -1
  71. package/dist/shared/bricks/manifests/spacer.manifest.d.ts +4 -8
  72. package/dist/shared/bricks/manifests/spacer.manifest.d.ts.map +1 -1
  73. package/dist/shared/bricks/manifests/spacer.manifest.js +28 -1
  74. package/dist/shared/bricks/manifests/table.manifest.d.ts +87 -0
  75. package/dist/shared/bricks/manifests/table.manifest.d.ts.map +1 -0
  76. package/dist/shared/bricks/manifests/table.manifest.js +31 -0
  77. package/dist/shared/bricks/manifests/table.manifest.js.map +1 -0
  78. package/dist/shared/bricks/manifests/tabs.manifest.d.ts +86 -0
  79. package/dist/shared/bricks/manifests/tabs.manifest.d.ts.map +1 -0
  80. package/dist/shared/bricks/manifests/tabs.manifest.js +31 -0
  81. package/dist/shared/bricks/manifests/tabs.manifest.js.map +1 -0
  82. package/dist/shared/bricks/manifests/testimonials.manifest.d.ts +4 -8
  83. package/dist/shared/bricks/manifests/testimonials.manifest.d.ts.map +1 -1
  84. package/dist/shared/bricks/manifests/testimonials.manifest.js +28 -1
  85. package/dist/shared/bricks/manifests/text.manifest.d.ts +4 -8
  86. package/dist/shared/bricks/manifests/text.manifest.d.ts.map +1 -1
  87. package/dist/shared/bricks/manifests/text.manifest.js +28 -1
  88. package/dist/shared/bricks/manifests/timeline.manifest.d.ts +97 -0
  89. package/dist/shared/bricks/manifests/timeline.manifest.d.ts.map +1 -0
  90. package/dist/shared/bricks/manifests/timeline.manifest.js +31 -0
  91. package/dist/shared/bricks/manifests/timeline.manifest.js.map +1 -0
  92. package/dist/shared/bricks/manifests/video.manifest.d.ts +4 -8
  93. package/dist/shared/bricks/manifests/video.manifest.d.ts.map +1 -1
  94. package/dist/shared/bricks/manifests/video.manifest.js +28 -1
  95. package/dist/shared/bricks/props/align.d.ts +2 -2
  96. package/dist/shared/bricks/props/align.js +19 -1
  97. package/dist/shared/bricks/props/background.d.ts +4 -4
  98. package/dist/shared/bricks/props/background.js +15 -1
  99. package/dist/shared/bricks/props/boolean.js +7 -1
  100. package/dist/shared/bricks/props/border.js +16 -1
  101. package/dist/shared/bricks/props/color-preset.d.ts.map +1 -1
  102. package/dist/shared/bricks/props/color-preset.js +13 -1
  103. package/dist/shared/bricks/props/color.js +14 -1
  104. package/dist/shared/bricks/props/common.d.ts +2 -2
  105. package/dist/shared/bricks/props/common.js +13 -1
  106. package/dist/shared/bricks/props/css-length.js +14 -1
  107. package/dist/shared/bricks/props/datarecord.js +7 -1
  108. package/dist/shared/bricks/props/datasource.d.ts +1 -1
  109. package/dist/shared/bricks/props/datasource.js +86 -1
  110. package/dist/shared/bricks/props/datasource.js.map +1 -1
  111. package/dist/shared/bricks/props/date.js +9 -1
  112. package/dist/shared/bricks/props/direction.js +11 -1
  113. package/dist/shared/bricks/props/dynamic.d.ts.map +1 -1
  114. package/dist/shared/bricks/props/dynamic.js +30 -1
  115. package/dist/shared/bricks/props/effects.js +17 -1
  116. package/dist/shared/bricks/props/file.js +15 -1
  117. package/dist/shared/bricks/props/file.js.map +1 -1
  118. package/dist/shared/bricks/props/geolocation.js +44 -1
  119. package/dist/shared/bricks/props/geolocation.js.map +1 -1
  120. package/dist/shared/bricks/props/helpers.d.ts +1 -1
  121. package/dist/shared/bricks/props/helpers.js +18 -1
  122. package/dist/shared/bricks/props/image.js +11 -1
  123. package/dist/shared/bricks/props/number.js +7 -1
  124. package/dist/shared/bricks/props/position.js +7 -1
  125. package/dist/shared/bricks/props/string.js +18 -1
  126. package/dist/shared/bricks/props/tags.js +10 -1
  127. package/dist/shared/bricks/props/text.js +19 -1
  128. package/dist/shared/bricks.d.ts +59 -45
  129. package/dist/shared/bricks.d.ts.map +1 -1
  130. package/dist/shared/bricks.js +81 -1
  131. package/dist/shared/chunk-2BPYOTKA.js +21 -0
  132. package/dist/shared/{chunk-WHTPGWUV.js.map → chunk-2BPYOTKA.js.map} +1 -1
  133. package/dist/shared/chunk-2IHKVMKW.js +105 -0
  134. package/dist/shared/chunk-2IHKVMKW.js.map +1 -0
  135. package/dist/shared/chunk-2RK3CPYJ.js +74 -0
  136. package/dist/shared/{chunk-W33JMRRN.js.map → chunk-2RK3CPYJ.js.map} +1 -1
  137. package/dist/shared/chunk-2VDR4ZYY.js +230 -0
  138. package/dist/shared/chunk-2VDR4ZYY.js.map +1 -0
  139. package/dist/shared/chunk-36PLZKMW.js +538 -0
  140. package/dist/shared/chunk-36PLZKMW.js.map +1 -0
  141. package/dist/shared/chunk-3ZDN5BWN.js +18 -0
  142. package/dist/shared/{chunk-OIY3EPHO.js.map → chunk-3ZDN5BWN.js.map} +1 -1
  143. package/dist/shared/chunk-42OUNI7C.js +366 -0
  144. package/dist/shared/chunk-42OUNI7C.js.map +1 -0
  145. package/dist/shared/chunk-4MNWMEMM.js +422 -0
  146. package/dist/shared/chunk-4MNWMEMM.js.map +1 -0
  147. package/dist/shared/chunk-55C6MTX2.js +21 -0
  148. package/dist/shared/{chunk-KBHDY425.js.map → chunk-55C6MTX2.js.map} +1 -1
  149. package/dist/shared/chunk-6TVVKUWM.js +15 -0
  150. package/dist/shared/{chunk-4WDWJA3N.js.map → chunk-6TVVKUWM.js.map} +1 -1
  151. package/dist/shared/chunk-6WIMWLCJ.js +17 -0
  152. package/dist/shared/{chunk-KYY3PHP7.js.map → chunk-6WIMWLCJ.js.map} +1 -1
  153. package/dist/shared/chunk-7LAWWRU7.js +21 -0
  154. package/dist/shared/{chunk-IUXCWWGO.js.map → chunk-7LAWWRU7.js.map} +1 -1
  155. package/dist/shared/chunk-A2QPY54H.js +13 -0
  156. package/dist/shared/{chunk-KFM6KXSE.js.map → chunk-A2QPY54H.js.map} +1 -1
  157. package/dist/shared/chunk-BHC2A43S.js +67 -0
  158. package/dist/shared/{chunk-3YVJ2ELD.js.map → chunk-BHC2A43S.js.map} +1 -1
  159. package/dist/shared/chunk-BPBKHEQ5.js +39 -0
  160. package/dist/shared/{chunk-OHNYCXPX.js.map → chunk-BPBKHEQ5.js.map} +1 -1
  161. package/dist/shared/chunk-CRS7QCPZ.js +308 -0
  162. package/dist/shared/chunk-CRS7QCPZ.js.map +1 -0
  163. package/dist/shared/chunk-CSF2WQX2.js +60 -0
  164. package/dist/shared/{chunk-GLS7HPIZ.js.map → chunk-CSF2WQX2.js.map} +1 -1
  165. package/dist/shared/chunk-DFAFDBYZ.js +462 -0
  166. package/dist/shared/chunk-DFAFDBYZ.js.map +1 -0
  167. package/dist/shared/chunk-DV3G7X34.js +244 -0
  168. package/dist/shared/chunk-DV3G7X34.js.map +1 -0
  169. package/dist/shared/chunk-EVLRH6VG.js +56 -0
  170. package/dist/shared/{chunk-RJYZ5FAR.js.map → chunk-EVLRH6VG.js.map} +1 -1
  171. package/dist/shared/chunk-F22LDHEO.js +105 -0
  172. package/dist/shared/{chunk-5YRC3IT3.js.map → chunk-F22LDHEO.js.map} +1 -1
  173. package/dist/shared/chunk-F247VKAE.js +131 -0
  174. package/dist/shared/chunk-F247VKAE.js.map +1 -0
  175. package/dist/shared/chunk-FOGAVJC2.js +59 -0
  176. package/dist/shared/chunk-FOGAVJC2.js.map +1 -0
  177. package/dist/shared/chunk-FQDR2BBZ.js +30 -0
  178. package/dist/shared/chunk-FQDR2BBZ.js.map +1 -0
  179. package/dist/shared/chunk-GFAQWQER.js +618 -0
  180. package/dist/shared/chunk-GFAQWQER.js.map +1 -0
  181. package/dist/shared/chunk-GIGFNQBO.js +129 -0
  182. package/dist/shared/chunk-GIGFNQBO.js.map +1 -0
  183. package/dist/shared/chunk-GQTZPN5D.js +519 -0
  184. package/dist/shared/chunk-GQTZPN5D.js.map +1 -0
  185. package/dist/shared/chunk-H5JM2M2T.js +515 -0
  186. package/dist/shared/chunk-H5JM2M2T.js.map +1 -0
  187. package/dist/shared/chunk-HPCCD6V5.js +17 -0
  188. package/dist/shared/{chunk-6I3ONVU6.js.map → chunk-HPCCD6V5.js.map} +1 -1
  189. package/dist/shared/chunk-HTUSL2U7.js +260 -0
  190. package/dist/shared/chunk-HTUSL2U7.js.map +1 -0
  191. package/dist/shared/chunk-IQIISR22.js +794 -0
  192. package/dist/shared/chunk-IQIISR22.js.map +1 -0
  193. package/dist/shared/chunk-JK2FWFJU.js +15 -0
  194. package/dist/shared/{chunk-JMN3HTZU.js.map → chunk-JK2FWFJU.js.map} +1 -1
  195. package/dist/shared/chunk-KEM5N6GJ.js +505 -0
  196. package/dist/shared/chunk-KEM5N6GJ.js.map +1 -0
  197. package/dist/shared/chunk-KIDICX3Y.js +278 -0
  198. package/dist/shared/chunk-KIDICX3Y.js.map +1 -0
  199. package/dist/shared/chunk-KILJYJFE.js +354 -0
  200. package/dist/shared/chunk-KILJYJFE.js.map +1 -0
  201. package/dist/shared/chunk-KNREHAPN.js +13 -0
  202. package/dist/shared/{chunk-KSEURRVZ.js.map → chunk-KNREHAPN.js.map} +1 -1
  203. package/dist/shared/chunk-KT7SSWMM.js +24 -0
  204. package/dist/shared/{chunk-KO5FPOWZ.js.map → chunk-KT7SSWMM.js.map} +1 -1
  205. package/dist/shared/chunk-L6C7HUSA.js +850 -0
  206. package/dist/shared/chunk-L6C7HUSA.js.map +1 -0
  207. package/dist/shared/chunk-LCJ2VFPM.js +837 -0
  208. package/dist/shared/chunk-LCJ2VFPM.js.map +1 -0
  209. package/dist/shared/chunk-LLNPH3XR.js +148 -0
  210. package/dist/shared/chunk-LLNPH3XR.js.map +1 -0
  211. package/dist/shared/chunk-LTIJI7Y3.js +368 -0
  212. package/dist/shared/chunk-LTIJI7Y3.js.map +1 -0
  213. package/dist/shared/chunk-MFNHFN2B.js +103 -0
  214. package/dist/shared/{chunk-ZA3GAB4H.js.map → chunk-MFNHFN2B.js.map} +1 -1
  215. package/dist/shared/chunk-N3BEBLWF.js +213 -0
  216. package/dist/shared/chunk-N3BEBLWF.js.map +1 -0
  217. package/dist/shared/chunk-N3ZTQD5I.js +70 -0
  218. package/dist/shared/chunk-N3ZTQD5I.js.map +1 -0
  219. package/dist/shared/chunk-NTLAKMMQ.js +94 -0
  220. package/dist/shared/{chunk-ZTZJHY4E.js.map → chunk-NTLAKMMQ.js.map} +1 -1
  221. package/dist/shared/chunk-O5PQISX4.js +51 -0
  222. package/dist/shared/{chunk-VEDQV5XO.js.map → chunk-O5PQISX4.js.map} +1 -1
  223. package/dist/shared/chunk-OJP4HMJT.js +22 -0
  224. package/dist/shared/{chunk-6HLU4UI2.js.map → chunk-OJP4HMJT.js.map} +1 -1
  225. package/dist/shared/chunk-OSJ6KGPX.js +16 -0
  226. package/dist/shared/{chunk-GPEMPZXK.js.map → chunk-OSJ6KGPX.js.map} +1 -1
  227. package/dist/shared/chunk-OXYXZHP2.js +48 -0
  228. package/dist/shared/{chunk-5O4Z3YQY.js.map → chunk-OXYXZHP2.js.map} +1 -1
  229. package/dist/shared/chunk-Q4NPPLEU.js +34 -0
  230. package/dist/shared/{chunk-QWGUMKZC.js.map → chunk-Q4NPPLEU.js.map} +1 -1
  231. package/dist/shared/chunk-QLQVDZIL.js +11 -0
  232. package/dist/shared/{chunk-KLD3P5XH.js.map → chunk-QLQVDZIL.js.map} +1 -1
  233. package/dist/shared/chunk-RV7AYVFV.js +75 -0
  234. package/dist/shared/{chunk-DHI3IBOD.js.map → chunk-RV7AYVFV.js.map} +1 -1
  235. package/dist/shared/chunk-SE6O65HC.js +44 -0
  236. package/dist/shared/{chunk-NM5MMPCF.js.map → chunk-SE6O65HC.js.map} +1 -1
  237. package/dist/shared/chunk-TFGGYU6Y.js +394 -0
  238. package/dist/shared/{chunk-CZRCW5EN.js.map → chunk-TFGGYU6Y.js.map} +1 -1
  239. package/dist/shared/chunk-TKMWY2VN.js +18 -0
  240. package/dist/shared/{chunk-RDZK73KV.js.map → chunk-TKMWY2VN.js.map} +1 -1
  241. package/dist/shared/chunk-TNMNMYOB.js +69 -0
  242. package/dist/shared/{chunk-4BTB3MU2.js.map → chunk-TNMNMYOB.js.map} +1 -1
  243. package/dist/shared/chunk-TNTFKLCR.js +1225 -0
  244. package/dist/shared/chunk-TNTFKLCR.js.map +1 -0
  245. package/dist/shared/chunk-U5ZECCJM.js +464 -0
  246. package/dist/shared/chunk-U5ZECCJM.js.map +1 -0
  247. package/dist/shared/chunk-UXTASZ23.js +419 -0
  248. package/dist/shared/chunk-UXTASZ23.js.map +1 -0
  249. package/dist/shared/chunk-W6MRYRGJ.js +100 -0
  250. package/dist/shared/{chunk-CCI4C3TM.js.map → chunk-W6MRYRGJ.js.map} +1 -1
  251. package/dist/shared/chunk-WKN566LN.js +29 -0
  252. package/dist/shared/{chunk-Q4H4QEMB.js.map → chunk-WKN566LN.js.map} +1 -1
  253. package/dist/shared/chunk-XCWMZVF5.js +89 -0
  254. package/dist/shared/{chunk-ZFCUSWMT.js.map → chunk-XCWMZVF5.js.map} +1 -1
  255. package/dist/shared/chunk-XCZVD5H6.js +13 -0
  256. package/dist/shared/{chunk-HAGKVQOW.js.map → chunk-XCZVD5H6.js.map} +1 -1
  257. package/dist/shared/chunk-XZ6WJZHN.js +10 -0
  258. package/dist/shared/{chunk-DCH4ZKWT.js.map → chunk-XZ6WJZHN.js.map} +1 -1
  259. package/dist/shared/chunk-Y74LZNND.js +30 -0
  260. package/dist/shared/{chunk-GACHLACT.js.map → chunk-Y74LZNND.js.map} +1 -1
  261. package/dist/shared/chunk-YWOTQWIQ.js +572 -0
  262. package/dist/shared/chunk-YWOTQWIQ.js.map +1 -0
  263. package/dist/shared/chunk-ZEFOWKYP.js +44 -0
  264. package/dist/shared/{chunk-DQ7PRWTG.js.map → chunk-ZEFOWKYP.js.map} +1 -1
  265. package/dist/shared/chunk-ZGQ3AQBG.js +33 -0
  266. package/dist/shared/chunk-ZGQ3AQBG.js.map +1 -0
  267. package/dist/shared/chunk-ZLYIRH2B.js +68 -0
  268. package/dist/shared/{chunk-SWLUQVK7.js.map → chunk-ZLYIRH2B.js.map} +1 -1
  269. package/dist/shared/chunk-ZR6R6Z6O.js +496 -0
  270. package/dist/shared/chunk-ZR6R6Z6O.js.map +1 -0
  271. package/dist/shared/chunk-ZRRAK5NS.js +432 -0
  272. package/dist/shared/chunk-ZRRAK5NS.js.map +1 -0
  273. package/dist/shared/context.d.ts +1 -0
  274. package/dist/shared/context.d.ts.map +1 -1
  275. package/dist/shared/datarecords/external/airtable/handler.js +377 -1
  276. package/dist/shared/datarecords/external/airtable/handler.js.map +1 -1
  277. package/dist/shared/datarecords/external/airtable/oauth/config.js +15 -1
  278. package/dist/shared/datarecords/external/airtable/oauth/config.js.map +1 -1
  279. package/dist/shared/datarecords/external/airtable/types.js +11 -1
  280. package/dist/shared/datarecords/external/generic-webhook/handler.js +14 -1
  281. package/dist/shared/datarecords/external/generic-webhook/handler.js.map +1 -1
  282. package/dist/shared/datarecords/external/generic-webhook/options.js +16 -1
  283. package/dist/shared/datarecords/external/generic-webhook/options.js.map +1 -1
  284. package/dist/shared/datarecords/external/google/oauth/config.js +35 -1
  285. package/dist/shared/datarecords/external/google/oauth/config.js.map +1 -1
  286. package/dist/shared/datarecords/external/google/sheets/client.js +7 -1
  287. package/dist/shared/datarecords/external/google/sheets/handler.js +184 -5
  288. package/dist/shared/datarecords/external/google/sheets/handler.js.map +1 -1
  289. package/dist/shared/datarecords/external/google/sheets/types.js +7 -1
  290. package/dist/shared/datarecords/external/notion/handler.js +397 -1
  291. package/dist/shared/datarecords/external/notion/handler.js.map +1 -1
  292. package/dist/shared/datarecords/external/notion/oauth/config.js +11 -1
  293. package/dist/shared/datarecords/external/notion/oauth/config.js.map +1 -1
  294. package/dist/shared/datarecords/external/notion/types.js +7 -1
  295. package/dist/shared/datarecords/types.d.ts +6 -59
  296. package/dist/shared/datarecords/types.d.ts.map +1 -1
  297. package/dist/shared/datarecords/types.js +14 -1
  298. package/dist/shared/datarecords.js +9 -1
  299. package/dist/shared/datarecords.js.map +1 -1
  300. package/dist/shared/datasources/external/facebook/posts/fetcher.js +49 -1
  301. package/dist/shared/datasources/external/facebook/posts/fetcher.js.map +1 -1
  302. package/dist/shared/datasources/external/facebook/posts/schema.js +36 -1
  303. package/dist/shared/datasources/external/facebook/posts/schema.js.map +1 -1
  304. package/dist/shared/datasources/external/http-json/fetcher.js +29 -1
  305. package/dist/shared/datasources/external/http-json/fetcher.js.map +1 -1
  306. package/dist/shared/datasources/external/http-json/options.js +11 -1
  307. package/dist/shared/datasources/external/http-json/options.js.map +1 -1
  308. package/dist/shared/datasources/external/http-json/schema.js +10 -1
  309. package/dist/shared/datasources/external/http-json/schema.js.map +1 -1
  310. package/dist/shared/datasources/external/instagram/feed/fetcher.js +29 -1
  311. package/dist/shared/datasources/external/instagram/feed/fetcher.js.map +1 -1
  312. package/dist/shared/datasources/external/instagram/feed/schema.js +26 -1
  313. package/dist/shared/datasources/external/instagram/feed/schema.js.map +1 -1
  314. package/dist/shared/datasources/external/mastodon/account/fetcher.js +7 -1
  315. package/dist/shared/datasources/external/mastodon/account/schema.js +7 -1
  316. package/dist/shared/datasources/external/mastodon/options.js +10 -1
  317. package/dist/shared/datasources/external/mastodon/options.js.map +1 -1
  318. package/dist/shared/datasources/external/mastodon/status/fetcher.js +31 -1
  319. package/dist/shared/datasources/external/mastodon/status/fetcher.js.map +1 -1
  320. package/dist/shared/datasources/external/mastodon/status/sample.array.js +61 -1
  321. package/dist/shared/datasources/external/mastodon/status/sample.array.js.map +1 -1
  322. package/dist/shared/datasources/external/mastodon/status/sample.single.js +59 -1
  323. package/dist/shared/datasources/external/mastodon/status/sample.single.js.map +1 -1
  324. package/dist/shared/datasources/external/mastodon/status/schema.js +125 -1
  325. package/dist/shared/datasources/external/mastodon/status/schema.js.map +1 -1
  326. package/dist/shared/datasources/external/meta/oauth/config.js +17 -1
  327. package/dist/shared/datasources/external/meta/oauth/config.js.map +1 -1
  328. package/dist/shared/datasources/external/meta/options.js +10 -1
  329. package/dist/shared/datasources/external/meta/options.js.map +1 -1
  330. package/dist/shared/datasources/external/rss/fetcher.js +26 -1
  331. package/dist/shared/datasources/external/rss/fetcher.js.map +1 -1
  332. package/dist/shared/datasources/external/rss/options.js +10 -1
  333. package/dist/shared/datasources/external/rss/options.js.map +1 -1
  334. package/dist/shared/datasources/external/rss/schema.js +7 -1
  335. package/dist/shared/datasources/external/threads/media/fetcher.js +47 -1
  336. package/dist/shared/datasources/external/threads/media/fetcher.js.map +1 -1
  337. package/dist/shared/datasources/external/threads/media/schema.js +40 -1
  338. package/dist/shared/datasources/external/threads/media/schema.js.map +1 -1
  339. package/dist/shared/datasources/external/tiktok/oauth/config.js +18 -1
  340. package/dist/shared/datasources/external/tiktok/oauth/config.js.map +1 -1
  341. package/dist/shared/datasources/external/tiktok/video/fetcher.js +34 -1
  342. package/dist/shared/datasources/external/tiktok/video/fetcher.js.map +1 -1
  343. package/dist/shared/datasources/external/tiktok/video/options.js +11 -1
  344. package/dist/shared/datasources/external/tiktok/video/options.js.map +1 -1
  345. package/dist/shared/datasources/external/tiktok/video/schema.js +30 -1
  346. package/dist/shared/datasources/external/tiktok/video/schema.js.map +1 -1
  347. package/dist/shared/datasources/external/youtube/list/fetcher.js +32 -1
  348. package/dist/shared/datasources/external/youtube/list/fetcher.js.map +1 -1
  349. package/dist/shared/datasources/external/youtube/list/options.js +14 -1
  350. package/dist/shared/datasources/external/youtube/list/options.js.map +1 -1
  351. package/dist/shared/datasources/external/youtube/list/schema.js +7 -1
  352. package/dist/shared/datasources/external/youtube/oauth/config.js +18 -1
  353. package/dist/shared/datasources/external/youtube/oauth/config.js.map +1 -1
  354. package/dist/shared/datasources/internal/blog/schema.js +72 -1
  355. package/dist/shared/datasources/internal/blog/schema.js.map +1 -1
  356. package/dist/shared/datasources/internal/changelog/schema.js +51 -1
  357. package/dist/shared/datasources/internal/changelog/schema.js.map +1 -1
  358. package/dist/shared/datasources/internal/contact-info/schema.js +25 -1
  359. package/dist/shared/datasources/internal/contact-info/schema.js.map +1 -1
  360. package/dist/shared/datasources/internal/cv/schema.js +222 -1
  361. package/dist/shared/datasources/internal/cv/schema.js.map +1 -1
  362. package/dist/shared/datasources/internal/faq/schema.js +30 -1
  363. package/dist/shared/datasources/internal/faq/schema.js.map +1 -1
  364. package/dist/shared/datasources/internal/job-board/schema.js +224 -1
  365. package/dist/shared/datasources/internal/job-board/schema.js.map +1 -1
  366. package/dist/shared/datasources/internal/links/schema.js +7 -1
  367. package/dist/shared/datasources/internal/recipes/schema.js +45 -1
  368. package/dist/shared/datasources/internal/recipes/schema.js.map +1 -1
  369. package/dist/shared/datasources/internal/restaurant/schema.js +226 -1
  370. package/dist/shared/datasources/internal/restaurant/schema.js.map +1 -1
  371. package/dist/shared/datasources/samples.js +69 -1
  372. package/dist/shared/datasources/samples.js.map +1 -1
  373. package/dist/shared/datasources/schemas.js +34 -1
  374. package/dist/shared/datasources/schemas.js.map +1 -1
  375. package/dist/shared/datasources/types.d.ts +1 -1
  376. package/dist/shared/datasources/types.d.ts.map +1 -1
  377. package/dist/shared/datasources/types.js +32 -1
  378. package/dist/shared/datasources/utils.js +11 -1
  379. package/dist/shared/datasources.d.ts +1 -1
  380. package/dist/shared/datasources.d.ts.map +1 -1
  381. package/dist/shared/datasources.js +49 -1
  382. package/dist/shared/datasources.js.map +1 -1
  383. package/dist/shared/errors.js +7 -1
  384. package/dist/shared/images.d.ts +4 -4
  385. package/dist/shared/images.d.ts.map +1 -1
  386. package/dist/shared/images.js +44 -1
  387. package/dist/shared/images.js.map +1 -1
  388. package/dist/shared/index.js +9 -1
  389. package/dist/shared/index.js.map +1 -1
  390. package/dist/shared/layout-constants.js +14 -1
  391. package/dist/shared/layout-constants.js.map +1 -1
  392. package/dist/shared/manifest.js +52 -1
  393. package/dist/shared/manifest.js.map +1 -1
  394. package/dist/shared/oauth.js +8 -1
  395. package/dist/shared/page.d.ts +12 -126
  396. package/dist/shared/page.d.ts.map +1 -1
  397. package/dist/shared/page.js +58 -1
  398. package/dist/shared/prompt.js +7 -1
  399. package/dist/shared/responsive.js +10 -1
  400. package/dist/shared/responsive.js.map +1 -1
  401. package/dist/shared/site.d.ts +34 -31
  402. package/dist/shared/site.d.ts.map +1 -1
  403. package/dist/shared/site.js +127 -1
  404. package/dist/shared/site.js.map +1 -1
  405. package/dist/shared/sitemap.d.ts +13 -12
  406. package/dist/shared/sitemap.d.ts.map +1 -1
  407. package/dist/shared/sitemap.js +69 -1
  408. package/dist/shared/social-icons.js +312 -1
  409. package/dist/shared/social-icons.js.map +1 -1
  410. package/dist/shared/tests/schema-registry.test.d.ts +2 -0
  411. package/dist/shared/tests/schema-registry.test.d.ts.map +1 -0
  412. package/dist/shared/theme.d.ts +1 -1
  413. package/dist/shared/theme.d.ts.map +1 -1
  414. package/dist/shared/theme.js +35 -1
  415. package/dist/shared/themes/color-system.js +103 -1
  416. package/dist/shared/themes/color-system.js.map +1 -1
  417. package/dist/shared/utils/canvas-data-uri.js +7 -1
  418. package/dist/shared/utils/canvas-data-uri.js.map +1 -1
  419. package/dist/shared/utils/invariant.js +7 -1
  420. package/dist/shared/utils/json-date.js +7 -1
  421. package/dist/shared/utils/llm.d.ts +2 -3
  422. package/dist/shared/utils/llm.d.ts.map +1 -1
  423. package/dist/shared/utils/llm.js +24 -1
  424. package/dist/shared/utils/merge.js +7 -1
  425. package/dist/shared/utils/object-hash.js +13 -1
  426. package/dist/shared/utils/object-hash.js.map +1 -1
  427. package/dist/shared/utils/schema-registry.d.ts +5 -0
  428. package/dist/shared/utils/schema-registry.d.ts.map +1 -0
  429. package/dist/shared/utils/schema-registry.js +29 -0
  430. package/dist/shared/utils/schema-registry.js.map +1 -0
  431. package/dist/shared/utils/schema.d.ts +2 -1
  432. package/dist/shared/utils/schema.d.ts.map +1 -1
  433. package/dist/shared/utils/schema.js +31 -1
  434. package/dist/shared/utils/string-enum.js +7 -1
  435. package/dist/shared/utils/tests/schema-registry.test.d.ts +2 -0
  436. package/dist/shared/utils/tests/schema-registry.test.d.ts.map +1 -0
  437. package/dist/shared/utils/try-catch.js +13 -1
  438. package/dist/shared/utils/try-catch.js.map +1 -1
  439. package/dist/shared/utils/typed-ref.js +7 -1
  440. package/package.json +9 -10
  441. package/src/shared/ai/schemas.ts +44 -12
  442. package/src/shared/ai/types.ts +135 -59
  443. package/src/shared/attributes.ts +37 -27
  444. package/src/shared/bricks/manifests/_types.ts +9 -0
  445. package/src/shared/bricks/manifests/accordion.manifest.ts +128 -161
  446. package/src/shared/bricks/manifests/all-manifests.ts +16 -0
  447. package/src/shared/bricks/manifests/box.manifest.ts +195 -129
  448. package/src/shared/bricks/manifests/button.manifest.ts +158 -71
  449. package/src/shared/bricks/manifests/card.manifest.ts +200 -28
  450. package/src/shared/bricks/manifests/carousel.manifest.ts +154 -22
  451. package/src/shared/bricks/manifests/footer.manifest.ts +38 -32
  452. package/src/shared/bricks/manifests/form.manifest.ts +122 -7
  453. package/src/shared/bricks/manifests/hero.manifest.ts +103 -18
  454. package/src/shared/bricks/manifests/html.manifest.ts +2 -5
  455. package/src/shared/bricks/manifests/icon.manifest.ts +216 -36
  456. package/src/shared/bricks/manifests/image.manifest.ts +103 -2
  457. package/src/shared/bricks/manifests/images-gallery.manifest.ts +2 -5
  458. package/src/shared/bricks/manifests/map.manifest.ts +2 -5
  459. package/src/shared/bricks/manifests/navbar.manifest.ts +3 -8
  460. package/src/shared/bricks/manifests/sidebar.manifest.ts +2 -5
  461. package/src/shared/bricks/manifests/social-links.manifest.ts +2 -5
  462. package/src/shared/bricks/manifests/spacer.manifest.ts +2 -5
  463. package/src/shared/bricks/manifests/table.manifest.ts +440 -0
  464. package/src/shared/bricks/manifests/tabs.manifest.ts +573 -0
  465. package/src/shared/bricks/manifests/testimonials.manifest.ts +2 -5
  466. package/src/shared/bricks/manifests/text.manifest.ts +31 -10
  467. package/src/shared/bricks/manifests/timeline.manifest.ts +438 -0
  468. package/src/shared/bricks/manifests/video.manifest.ts +2 -5
  469. package/src/shared/bricks/props/color-preset.ts +3 -1
  470. package/src/shared/bricks/props/dynamic.ts +0 -1
  471. package/src/shared/bricks/props/string.ts +1 -1
  472. package/src/shared/bricks.ts +61 -49
  473. package/src/shared/context.ts +1 -0
  474. package/src/shared/datarecords/types.ts +47 -37
  475. package/src/shared/datasources/types.ts +1 -5
  476. package/src/shared/datasources.ts +2 -4
  477. package/src/shared/images.ts +10 -8
  478. package/src/shared/page.ts +0 -5
  479. package/src/shared/site.ts +3 -3
  480. package/src/shared/sitemap.ts +14 -16
  481. package/src/shared/tests/schema-registry.test.ts +12 -0
  482. package/src/shared/theme.ts +1 -4
  483. package/src/shared/utils/llm.ts +13 -12
  484. package/src/shared/utils/schema-registry.ts +82 -0
  485. package/src/shared/utils/schema.ts +18 -3
  486. package/src/shared/utils/tests/schema-registry.test.ts +13 -0
  487. package/src/shared/utils/tests/schema.test.ts +124 -56
  488. package/dist/shared/bricks/props/enum.d.ts +0 -13
  489. package/dist/shared/bricks/props/enum.d.ts.map +0 -1
  490. package/dist/shared/chunk-3YVJ2ELD.js +0 -4
  491. package/dist/shared/chunk-4BTB3MU2.js +0 -4
  492. package/dist/shared/chunk-4WDWJA3N.js +0 -4
  493. package/dist/shared/chunk-5O4Z3YQY.js +0 -4
  494. package/dist/shared/chunk-5YRC3IT3.js +0 -4
  495. package/dist/shared/chunk-6HLU4UI2.js +0 -4
  496. package/dist/shared/chunk-6I3ONVU6.js +0 -4
  497. package/dist/shared/chunk-7A2JNQX3.js +0 -4
  498. package/dist/shared/chunk-7A2JNQX3.js.map +0 -1
  499. package/dist/shared/chunk-A3GF4PYW.js +0 -4
  500. package/dist/shared/chunk-A3GF4PYW.js.map +0 -1
  501. package/dist/shared/chunk-A3K4NUVP.js +0 -4
  502. package/dist/shared/chunk-A3K4NUVP.js.map +0 -1
  503. package/dist/shared/chunk-AFVJZPLS.js +0 -4
  504. package/dist/shared/chunk-AFVJZPLS.js.map +0 -1
  505. package/dist/shared/chunk-AI4GHU7R.js +0 -4
  506. package/dist/shared/chunk-AI4GHU7R.js.map +0 -1
  507. package/dist/shared/chunk-B3EATRFX.js +0 -4
  508. package/dist/shared/chunk-B3EATRFX.js.map +0 -1
  509. package/dist/shared/chunk-CCI4C3TM.js +0 -4
  510. package/dist/shared/chunk-CFF6Q7O7.js +0 -7
  511. package/dist/shared/chunk-CFF6Q7O7.js.map +0 -1
  512. package/dist/shared/chunk-CZRCW5EN.js +0 -4
  513. package/dist/shared/chunk-DCH4ZKWT.js +0 -4
  514. package/dist/shared/chunk-DHI3IBOD.js +0 -4
  515. package/dist/shared/chunk-DQ7PRWTG.js +0 -4
  516. package/dist/shared/chunk-E6XEI7IK.js +0 -4
  517. package/dist/shared/chunk-E6XEI7IK.js.map +0 -1
  518. package/dist/shared/chunk-FLOMNC6J.js +0 -4
  519. package/dist/shared/chunk-FLOMNC6J.js.map +0 -1
  520. package/dist/shared/chunk-G5CJU6RD.js +0 -7
  521. package/dist/shared/chunk-G5CJU6RD.js.map +0 -1
  522. package/dist/shared/chunk-GACHLACT.js +0 -4
  523. package/dist/shared/chunk-GLS7HPIZ.js +0 -4
  524. package/dist/shared/chunk-GOMXZC4B.js +0 -35
  525. package/dist/shared/chunk-GOMXZC4B.js.map +0 -1
  526. package/dist/shared/chunk-GPEMPZXK.js +0 -4
  527. package/dist/shared/chunk-HAGKVQOW.js +0 -4
  528. package/dist/shared/chunk-I3VL6SRH.js +0 -9
  529. package/dist/shared/chunk-I3VL6SRH.js.map +0 -1
  530. package/dist/shared/chunk-IKC3FK7L.js +0 -4
  531. package/dist/shared/chunk-IKC3FK7L.js.map +0 -1
  532. package/dist/shared/chunk-IKHZD2JH.js +0 -4
  533. package/dist/shared/chunk-IKHZD2JH.js.map +0 -1
  534. package/dist/shared/chunk-IUXCWWGO.js +0 -4
  535. package/dist/shared/chunk-JMN3HTZU.js +0 -4
  536. package/dist/shared/chunk-KBHDY425.js +0 -4
  537. package/dist/shared/chunk-KFM6KXSE.js +0 -4
  538. package/dist/shared/chunk-KLD3P5XH.js +0 -4
  539. package/dist/shared/chunk-KO5FPOWZ.js +0 -4
  540. package/dist/shared/chunk-KSEURRVZ.js +0 -4
  541. package/dist/shared/chunk-KYY3PHP7.js +0 -4
  542. package/dist/shared/chunk-NJGXC7D6.js +0 -4
  543. package/dist/shared/chunk-NJGXC7D6.js.map +0 -1
  544. package/dist/shared/chunk-NM5MMPCF.js +0 -4
  545. package/dist/shared/chunk-OGBMYMZD.js +0 -4
  546. package/dist/shared/chunk-OGBMYMZD.js.map +0 -1
  547. package/dist/shared/chunk-OHNYCXPX.js +0 -4
  548. package/dist/shared/chunk-OIY3EPHO.js +0 -4
  549. package/dist/shared/chunk-PIG623TZ.js +0 -4
  550. package/dist/shared/chunk-PIG623TZ.js.map +0 -1
  551. package/dist/shared/chunk-PLSV746R.js +0 -4
  552. package/dist/shared/chunk-PLSV746R.js.map +0 -1
  553. package/dist/shared/chunk-PSCN3VVA.js +0 -4
  554. package/dist/shared/chunk-PSCN3VVA.js.map +0 -1
  555. package/dist/shared/chunk-PSTFJ5IJ.js +0 -4
  556. package/dist/shared/chunk-PSTFJ5IJ.js.map +0 -1
  557. package/dist/shared/chunk-PXI7AHWS.js +0 -4
  558. package/dist/shared/chunk-PXI7AHWS.js.map +0 -1
  559. package/dist/shared/chunk-Q4H4QEMB.js +0 -4
  560. package/dist/shared/chunk-QGYZ7CG5.js +0 -4
  561. package/dist/shared/chunk-QGYZ7CG5.js.map +0 -1
  562. package/dist/shared/chunk-QWGUMKZC.js +0 -4
  563. package/dist/shared/chunk-QX6OGRRT.js +0 -5
  564. package/dist/shared/chunk-QX6OGRRT.js.map +0 -1
  565. package/dist/shared/chunk-R6ATC4TC.js +0 -4
  566. package/dist/shared/chunk-R6ATC4TC.js.map +0 -1
  567. package/dist/shared/chunk-RDZK73KV.js +0 -4
  568. package/dist/shared/chunk-RJYZ5FAR.js +0 -4
  569. package/dist/shared/chunk-SQ5T4AT5.js +0 -6
  570. package/dist/shared/chunk-SQ5T4AT5.js.map +0 -1
  571. package/dist/shared/chunk-SWLUQVK7.js +0 -4
  572. package/dist/shared/chunk-SXHDQ64Z.js +0 -5
  573. package/dist/shared/chunk-SXHDQ64Z.js.map +0 -1
  574. package/dist/shared/chunk-SY6DZLTC.js +0 -4
  575. package/dist/shared/chunk-SY6DZLTC.js.map +0 -1
  576. package/dist/shared/chunk-VEDQV5XO.js +0 -4
  577. package/dist/shared/chunk-W33JMRRN.js +0 -4
  578. package/dist/shared/chunk-WBZW5LVH.js +0 -4
  579. package/dist/shared/chunk-WBZW5LVH.js.map +0 -1
  580. package/dist/shared/chunk-WHTPGWUV.js +0 -4
  581. package/dist/shared/chunk-WYVJE6J5.js +0 -4
  582. package/dist/shared/chunk-WYVJE6J5.js.map +0 -1
  583. package/dist/shared/chunk-ZA3GAB4H.js +0 -9
  584. package/dist/shared/chunk-ZFCUSWMT.js +0 -4
  585. package/dist/shared/chunk-ZQPXQCY2.js +0 -4
  586. package/dist/shared/chunk-ZQPXQCY2.js.map +0 -1
  587. package/dist/shared/chunk-ZTZJHY4E.js +0 -4
  588. package/src/shared/bricks/props/enum.ts +0 -38
  589. /package/dist/shared/bricks/{props/enum.js.map → manifests/_types.js.map} +0 -0
@@ -3,13 +3,13 @@ import { defineProps } from "../props/helpers";
3
3
  import { Type } from "@sinclair/typebox";
4
4
  import { borderRef, roundingRef } from "../props/border";
5
5
  import { shadowRef } from "../props/effects";
6
- import type { BrickProps } from "../props/types";
7
6
  import { cssLengthRef } from "../props/css-length";
8
7
  import { directionRef } from "../props/direction";
9
8
  import { RxBox } from "react-icons/rx";
10
9
  import { alignItemsRef, justifyContentRef } from "../props/align";
11
10
  import { colorPresetRef } from "../props/color-preset";
12
11
  import { loopRef } from "../props/dynamic";
12
+ import type { BrickExample } from "./_types";
13
13
 
14
14
  // Generic container can hold any type of array data source
15
15
  export const manifest = defineBrickManifest({
@@ -17,8 +17,45 @@ export const manifest = defineBrickManifest({
17
17
  category: "container",
18
18
  name: "Box",
19
19
  description: "A container for stacking bricks horizontally or vertically.",
20
- aiInstructions:
21
- "A box is a container for other bricks. A box cannot contain other boxes as children. A box should contain at least 2 bricks to be useful, otherwise use a simple brick instead.",
20
+ aiInstructions: `Use the box component as a flexible container for organizing and arranging multiple bricks in horizontal or vertical layouts.
21
+
22
+ WHEN TO USE:
23
+ - Grouping related content elements (text + image + button)
24
+ - Creating card-like layouts with multiple components
25
+ - Building responsive grid systems with wrapping
26
+ - Organizing form elements or input groups
27
+ - Displaying repeated data from queries (products, team members, blog posts)
28
+ - Creating structured layouts with consistent spacing
29
+
30
+ LAYOUT GUIDELINES:
31
+ - direction: "flex-col" for vertical stacking, "flex-row" for horizontal arrangement
32
+ - gap: "0.5rem" for tight spacing, "1rem" for standard, "2rem" for spacious layouts
33
+ - padding: "1rem" for standard padding, "2rem" for generous spacing, "0" for edge-to-edge
34
+ - wrap: true for responsive grids that wrap on smaller screens, false for fixed layouts
35
+ - justifyContent: "justify-start" for left-align, "justify-center" for center, "justify-between" for space-between
36
+ - alignItems: "items-stretch" for equal heights, "items-center" for center-align, "items-start" for top-align
37
+
38
+ STYLING OPTIONS:
39
+ - colorPreset: Use light backgrounds like "primary-50", "neutral-100", "secondary-100" for content containers
40
+ - rounding: "rounded-md" for standard, "rounded-lg" for friendly, "rounded-xl"/"rounded-2xl" for modern
41
+ - border: Add subtle borders with "border" width and colors like "border-gray-200", "border-primary-300"
42
+ - shadow: "shadow-sm" for subtle depth, "shadow-md" for cards, "shadow-lg" for prominence
43
+
44
+ CONTENT RULES:
45
+ - Must contain at least 2 child bricks to be useful
46
+ - Cannot contain other box components as direct children
47
+ - Commonly contains: text, image, button, icon combinations
48
+ - Perfect for repeating patterns using loop data
49
+
50
+ DYNAMIC CONTENT:
51
+ - Use loop property to repeat the box itself over data queries
52
+ - Template variables work in all child components: "{{ product.name}}", "{{user.email}}"
53
+ - Great for: product catalogs, team directories, blog listings
54
+
55
+ AVOID:
56
+ - Single child elements (use individual brick instead)
57
+ - Nesting boxes inside boxes (use single box with proper layout)
58
+ - Complex nested structures (break into separate boxes)`,
22
59
  isContainer: true,
23
60
  defaultWidth: {
24
61
  desktop: "auto",
@@ -113,130 +150,141 @@ export const manifest = defineBrickManifest({
113
150
 
114
151
  export type Manifest = typeof manifest;
115
152
 
116
- export const examples: {
117
- description: string;
118
- type: string;
119
- props: BrickProps<Manifest>["brick"]["props"];
120
- }[] = [
153
+ export const examples: BrickExample<Manifest>[] = [
154
+ // BASIC LAYOUTS
121
155
  {
122
- description: "A simple box with 2 text bricks aligned vertically",
156
+ description: "Simple vertical layout - Basic text and image combination",
123
157
  type: "box",
124
158
  props: {
125
159
  direction: "flex-col",
126
160
  gap: "1rem",
161
+ padding: "1.5rem",
127
162
  $children: [
128
163
  {
129
164
  type: "text",
130
165
  props: {
131
- $children: [
132
- {
133
- type: "text",
134
- props: {
135
- content: "Hello World",
136
- },
137
- },
138
- {
139
- type: "text",
140
- props: {
141
- content: "Hello World",
142
- },
143
- },
144
- ],
166
+ content:
167
+ "<h3>Welcome to Our Service</h3><p>We provide innovative solutions for modern businesses.</p>",
168
+ },
169
+ },
170
+ {
171
+ type: "image",
172
+ props: {
173
+ src: "https://via.placeholder.com/300x200",
174
+ alt: "Service showcase",
175
+ },
176
+ },
177
+ {
178
+ type: "button",
179
+ props: {
180
+ label: "Learn More",
181
+ link: "/services",
145
182
  },
146
183
  },
147
184
  ],
148
185
  },
149
186
  },
187
+
150
188
  {
151
- description: "A horizontal box with wrapping enabled - images will wrap to new rows if they overflow",
189
+ description: "Horizontal layout with wrapping - Perfect for responsive image galleries",
152
190
  type: "box",
153
191
  props: {
154
192
  direction: "flex-row",
155
193
  gap: "1rem",
156
194
  wrap: true,
195
+ justifyContent: "justify-center",
196
+ padding: "1rem",
157
197
  $children: [
158
198
  {
159
199
  type: "image",
160
200
  props: {
161
201
  src: "https://via.placeholder.com/150",
162
- alt: "Placeholder Image",
163
- },
164
- },
165
- {
166
- type: "image",
167
- props: {
168
- src: "https://via.placeholder.com/150",
169
- alt: "Placeholder Image",
202
+ alt: "Gallery image 1",
170
203
  },
171
204
  },
172
205
  {
173
206
  type: "image",
174
207
  props: {
175
208
  src: "https://via.placeholder.com/150",
176
- alt: "Placeholder Image",
209
+ alt: "Gallery image 2",
177
210
  },
178
211
  },
179
212
  {
180
213
  type: "image",
181
214
  props: {
182
215
  src: "https://via.placeholder.com/150",
183
- alt: "Placeholder Image",
216
+ alt: "Gallery image 3",
184
217
  },
185
218
  },
186
219
  {
187
220
  type: "image",
188
221
  props: {
189
222
  src: "https://via.placeholder.com/150",
190
- alt: "Placeholder Image",
223
+ alt: "Gallery image 4",
191
224
  },
192
225
  },
193
226
  ],
194
227
  },
195
228
  },
229
+
230
+ // STYLED CONTAINERS
196
231
  {
197
- description: "A vertical box with 2 text bricks and 1 image",
232
+ description: "Content card with background and border - Professional presentation style",
198
233
  type: "box",
199
234
  props: {
200
235
  direction: "flex-col",
201
236
  gap: "1rem",
237
+ padding: "2rem",
238
+ colorPreset: { color: "primary-50" },
239
+ border: { width: "border", color: "border-primary-200" },
240
+ rounding: "rounded-lg",
241
+ shadow: "shadow-md",
202
242
  $children: [
203
243
  {
204
244
  type: "text",
205
245
  props: {
206
- content: "Hello World",
246
+ content:
247
+ "<h3>Featured Article</h3><p>Discover the latest trends in technology and innovation that are shaping our future.</p>",
207
248
  },
208
249
  },
209
250
  {
210
251
  type: "image",
211
252
  props: {
212
- src: "https://via.placeholder.com/150",
213
- alt: "Placeholder Image",
253
+ src: "https://via.placeholder.com/400x250",
254
+ alt: "Technology trends",
214
255
  },
215
256
  },
216
257
  {
217
- type: "text",
258
+ type: "button",
218
259
  props: {
219
- content: "Hello World",
260
+ label: "Read Full Article",
261
+ link: "/articles/tech-trends",
220
262
  },
221
263
  },
222
264
  ],
223
265
  },
224
266
  },
267
+
268
+ // DYNAMIC CONTENT EXAMPLES
225
269
  {
226
- description: "Employee directory using allEmployees query with vertical layout",
270
+ description: "Employee directory using dynamic data - Shows team member profiles",
227
271
  type: "box",
228
272
  props: {
229
273
  direction: "flex-col",
230
274
  gap: "1.5rem",
231
275
  padding: "2rem",
232
- colorPreset: {
233
- color: "neutral-100",
234
- },
276
+ colorPreset: { color: "neutral-100" },
235
277
  rounding: "rounded-lg",
236
- loop: {
237
- over: "allEmployees",
238
- },
278
+ border: { width: "border", color: "border-neutral-300" },
279
+ loop: { over: "allEmployees" },
239
280
  $children: [
281
+ {
282
+ type: "image",
283
+ props: {
284
+ src: "{{allEmployees.photo}}",
285
+ alt: "Photo of {{allEmployees.name}}",
286
+ },
287
+ },
240
288
  {
241
289
  type: "text",
242
290
  props: {
@@ -245,27 +293,29 @@ export const examples: {
245
293
  },
246
294
  },
247
295
  {
248
- type: "image",
296
+ type: "button",
249
297
  props: {
250
- src: "{{allEmployees.photo}}",
251
- alt: "Photo of {{allEmployees.name}}",
298
+ label: "Contact {{allEmployees.name}}",
299
+ link: "mailto:{{allEmployees.email}}",
252
300
  },
253
301
  },
254
302
  ],
255
303
  },
256
304
  },
305
+
257
306
  {
258
- description: "Blog posts grid using blogPosts query with horizontal cards",
307
+ description: "Blog post cards with horizontal layout - Great for article previews",
259
308
  type: "box",
260
309
  props: {
261
310
  direction: "flex-row",
262
311
  gap: "2rem",
263
- padding: "1rem",
312
+ padding: "1.5rem",
264
313
  justifyContent: "justify-start",
265
314
  alignItems: "items-stretch",
266
- loop: {
267
- over: "blogPosts",
268
- },
315
+ colorPreset: { color: "secondary-50" },
316
+ rounding: "rounded-lg",
317
+ shadow: "shadow-sm",
318
+ loop: { over: "blogPosts" },
269
319
  $children: [
270
320
  {
271
321
  type: "image",
@@ -281,28 +331,31 @@ export const examples: {
281
331
  "<h4>{{blogPosts.title}}</h4><p>{{blogPosts.excerpt}}</p><p><em>By {{blogPosts.author}} • {{blogPosts.publishDate}}</em></p>",
282
332
  },
283
333
  },
334
+ {
335
+ type: "button",
336
+ props: {
337
+ label: "Read More",
338
+ link: "/blog/{{blogPosts.slug}}",
339
+ },
340
+ },
284
341
  ],
285
342
  },
286
343
  },
344
+
287
345
  {
288
- description: "Featured products showcase using featuredProducts query",
346
+ description: "Product showcase cards with pricing - Perfect for e-commerce displays",
289
347
  type: "box",
290
348
  props: {
291
349
  direction: "flex-col",
292
350
  gap: "1rem",
293
351
  padding: "1.5rem",
294
- colorPreset: {
295
- color: "primary-50",
296
- },
297
- border: {
298
- width: "border",
299
- color: "border-primary-200",
300
- },
352
+ justifyContent: "justify-center",
353
+ alignItems: "items-center",
354
+ colorPreset: { color: "accent-50" },
355
+ border: { width: "border-2", color: "border-accent-200" },
301
356
  rounding: "rounded-xl",
302
357
  shadow: "shadow-md",
303
- loop: {
304
- over: "featuredProducts",
305
- },
358
+ loop: { over: "featuredProducts" },
306
359
  $children: [
307
360
  {
308
361
  type: "image",
@@ -321,16 +374,17 @@ export const examples: {
321
374
  {
322
375
  type: "button",
323
376
  props: {
324
- text: "Add to Cart",
377
+ label: "Add to Cart",
325
378
  link: "/cart/add/{{featuredProducts.id}}",
326
379
  },
327
380
  },
328
381
  ],
329
382
  },
330
383
  },
384
+
385
+ // RESPONSIVE GRID LAYOUTS
331
386
  {
332
- description:
333
- "Team members horizontal layout with wrapping - members will wrap to multiple rows on smaller screens",
387
+ description: "Team members with wrapping - Responsive grid that adapts to screen size",
334
388
  type: "box",
335
389
  props: {
336
390
  direction: "flex-row",
@@ -338,13 +392,10 @@ export const examples: {
338
392
  padding: "2rem",
339
393
  wrap: true,
340
394
  justifyContent: "justify-center",
341
- alignItems: "items-center",
342
- colorPreset: {
343
- color: "secondary-100",
344
- },
345
- loop: {
346
- over: "teamMembers",
347
- },
395
+ alignItems: "items-start",
396
+ colorPreset: { color: "secondary-100" },
397
+ rounding: "rounded-lg",
398
+ loop: { over: "teamMembers" },
348
399
  $children: [
349
400
  {
350
401
  type: "image",
@@ -356,31 +407,43 @@ export const examples: {
356
407
  {
357
408
  type: "text",
358
409
  props: {
359
- content: "<h4>{{teamMembers.fullName}}</h4><p>{{teamMembers.role}}</p><p>{{teamMembers.bio}}</p>",
410
+ content:
411
+ "<h4>{{teamMembers.fullName}}</h4><p><strong>{{teamMembers.role}}</strong></p><p>{{teamMembers.bio}}</p>",
412
+ },
413
+ },
414
+ {
415
+ type: "button",
416
+ props: {
417
+ label: "View Profile",
418
+ link: "/team/{{teamMembers.slug}}",
360
419
  },
361
420
  },
362
421
  ],
363
422
  },
364
423
  },
424
+
365
425
  {
366
- description: "Event listings using upcomingEvents query with accent styling",
426
+ description: "Event listings with accent styling - Prominent call-to-action design",
367
427
  type: "box",
368
428
  props: {
369
429
  direction: "flex-col",
370
430
  gap: "1.25rem",
371
431
  padding: "2.5rem",
372
- colorPreset: {
373
- color: "accent-100",
374
- },
375
- border: {
376
- width: "border-2",
377
- color: "border-accent-300",
378
- },
432
+ alignItems: "items-center",
433
+ colorPreset: { color: "accent-100" },
434
+ border: { width: "border-2", color: "border-accent-300" },
379
435
  rounding: "rounded-lg",
380
- loop: {
381
- over: "upcomingEvents",
382
- },
436
+ shadow: "shadow-lg",
437
+ loop: { over: "upcomingEvents" },
383
438
  $children: [
439
+ {
440
+ type: "icon",
441
+ props: {
442
+ icon: "mdi:calendar-event",
443
+ size: "2rem",
444
+ color: "#f59e0b",
445
+ },
446
+ },
384
447
  {
385
448
  type: "text",
386
449
  props: {
@@ -391,15 +454,17 @@ export const examples: {
391
454
  {
392
455
  type: "button",
393
456
  props: {
394
- text: "Register Now",
457
+ label: "Register Now",
395
458
  link: "/events/{{upcomingEvents.slug}}/register",
396
459
  },
397
460
  },
398
461
  ],
399
462
  },
400
463
  },
464
+
465
+ // TESTIMONIALS & REVIEWS
401
466
  {
402
- description: "Testimonials carousel using customerTestimonials query",
467
+ description: "Customer testimonials with star ratings - Social proof presentation",
403
468
  type: "box",
404
469
  props: {
405
470
  direction: "flex-col",
@@ -407,20 +472,24 @@ export const examples: {
407
472
  padding: "3rem",
408
473
  justifyContent: "justify-center",
409
474
  alignItems: "items-center",
410
- colorPreset: {
411
- color: "neutral-50",
412
- },
475
+ colorPreset: { color: "neutral-50" },
413
476
  shadow: "shadow-lg",
414
477
  rounding: "rounded-2xl",
415
- loop: {
416
- over: "customerTestimonials",
417
- },
478
+ loop: { over: "customerTestimonials" },
418
479
  $children: [
480
+ {
481
+ type: "icon",
482
+ props: {
483
+ icon: "mdi:format-quote-open",
484
+ size: "2rem",
485
+ color: "#6b7280",
486
+ },
487
+ },
419
488
  {
420
489
  type: "text",
421
490
  props: {
422
491
  content:
423
- '<blockquote>"{{customerTestimonials.quote}}"</blockquote><p><strong>{{customerTestimonials.customerName}}</strong></p><p>{{customerTestimonials.company}} • {{customerTestimonials.position}}</p>',
492
+ '<p style="text-align: center"><em>"{{customerTestimonials.quote}}"</em></p><p style="text-align: center"><strong>{{customerTestimonials.customerName}}</strong></p><p style="text-align: center">{{customerTestimonials.company}} • {{customerTestimonials.position}}</p>',
424
493
  },
425
494
  },
426
495
  {
@@ -434,18 +503,20 @@ export const examples: {
434
503
  ],
435
504
  },
436
505
  },
506
+
437
507
  {
438
- description: "Portfolio projects using portfolioProjects query with horizontal layout",
508
+ description: "Portfolio project showcase - Creative work presentation with client details",
439
509
  type: "box",
440
510
  props: {
441
511
  direction: "flex-row",
442
512
  gap: "1.5rem",
443
- padding: "1rem",
513
+ padding: "2rem",
444
514
  alignItems: "items-start",
445
515
  justifyContent: "justify-start",
446
- loop: {
447
- over: "portfolioProjects",
448
- },
516
+ colorPreset: { color: "primary-50" },
517
+ border: { width: "border", color: "border-primary-200" },
518
+ rounding: "rounded-lg",
519
+ loop: { over: "portfolioProjects" },
449
520
  $children: [
450
521
  {
451
522
  type: "image",
@@ -458,36 +529,32 @@ export const examples: {
458
529
  type: "text",
459
530
  props: {
460
531
  content:
461
- "<h4>{{portfolioProjects.projectName}}</h4><p>{{portfolioProjects.client}}</p><p>{{portfolioProjects.category}} • {{portfolioProjects.year}}</p><p>{{portfolioProjects.shortDescription}}</p>",
532
+ "<h4>{{portfolioProjects.projectName}}</h4><p><strong>{{portfolioProjects.client}}</strong></p><p>{{portfolioProjects.category}} • {{portfolioProjects.year}}</p><p>{{portfolioProjects.shortDescription}}</p>",
462
533
  },
463
534
  },
464
535
  {
465
536
  type: "button",
466
537
  props: {
467
- text: "View Project",
538
+ label: "View Project",
468
539
  link: "/portfolio/{{portfolioProjects.slug}}",
469
540
  },
470
541
  },
471
542
  ],
472
543
  },
473
544
  },
545
+
546
+ // NEWS & ARTICLES
474
547
  {
475
- description: "News articles using latestNews query with vertical stacking",
548
+ description: "News article previews with categories - Clean editorial layout",
476
549
  type: "box",
477
550
  props: {
478
551
  direction: "flex-col",
479
- gap: "2rem",
552
+ gap: "1.5rem",
480
553
  padding: "2rem",
481
- colorPreset: {
482
- color: "primary-100",
483
- },
484
- border: {
485
- width: "border",
486
- color: "border-primary-300",
487
- },
488
- loop: {
489
- over: "latestNews",
490
- },
554
+ colorPreset: { color: "neutral-100" },
555
+ border: { width: "border", color: "border-neutral-300" },
556
+ rounding: "rounded-md",
557
+ loop: { over: "latestNews" },
491
558
  $children: [
492
559
  {
493
560
  type: "text",
@@ -497,16 +564,19 @@ export const examples: {
497
564
  },
498
565
  },
499
566
  {
500
- type: "text",
567
+ type: "button",
501
568
  props: {
502
- content: "<a href='/news/{{latestNews.slug}}'>Read full article →</a>",
569
+ label: "Read Full Article",
570
+ link: "/news/{{latestNews.slug}}",
503
571
  },
504
572
  },
505
573
  ],
506
574
  },
507
575
  },
576
+
577
+ // SERVICE OFFERINGS
508
578
  {
509
- description: "Service offerings using companyServices query with centered layout",
579
+ description: "Service packages with icons and pricing - Professional service presentation",
510
580
  type: "box",
511
581
  props: {
512
582
  direction: "flex-col",
@@ -514,20 +584,16 @@ export const examples: {
514
584
  padding: "2rem",
515
585
  justifyContent: "justify-center",
516
586
  alignItems: "items-center",
517
- colorPreset: {
518
- color: "secondary-200",
519
- },
587
+ colorPreset: { color: "secondary-200" },
520
588
  rounding: "rounded-xl",
521
589
  shadow: "shadow-md",
522
- loop: {
523
- over: "companyServices",
524
- },
590
+ loop: { over: "companyServices" },
525
591
  $children: [
526
592
  {
527
593
  type: "icon",
528
594
  props: {
529
595
  icon: "{{companyServices.iconName}}",
530
- size: "2rem",
596
+ size: "2.5rem",
531
597
  color: "{{companyServices.iconColor}}",
532
598
  },
533
599
  },
@@ -535,13 +601,13 @@ export const examples: {
535
601
  type: "text",
536
602
  props: {
537
603
  content:
538
- "<h4>{{companyServices.serviceName}}</h4><p>{{companyServices.description}}</p><p><strong>Starting at ${{companyServices.price}}</strong></p>",
604
+ "<h4 style='text-align: center'>{{companyServices.serviceName}}</h4><p style='text-align: center'>{{companyServices.description}}</p><p style='text-align: center'><strong>Starting at ${{companyServices.price}}</strong></p>",
539
605
  },
540
606
  },
541
607
  {
542
608
  type: "button",
543
609
  props: {
544
- text: "Learn More",
610
+ label: "Learn More",
545
611
  link: "/services/{{companyServices.serviceSlug}}",
546
612
  },
547
613
  },