@upstart.gg/sdk 0.0.136 → 0.0.137

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 (447) hide show
  1. package/dist/shared/ai/schemas.d.ts.map +1 -1
  2. package/dist/shared/ai/schemas.js +24 -29
  3. package/dist/shared/ai/schemas.js.map +1 -1
  4. package/dist/shared/ai/types.d.ts +13 -61
  5. package/dist/shared/ai/types.d.ts.map +1 -1
  6. package/dist/shared/ajv.js +33 -32
  7. package/dist/shared/ajv.js.map +1 -1
  8. package/dist/shared/attributes.d.ts +83 -85
  9. package/dist/shared/attributes.d.ts.map +1 -1
  10. package/dist/shared/attributes.js +20 -23
  11. package/dist/shared/brick-manifest.d.ts +8 -5
  12. package/dist/shared/brick-manifest.d.ts.map +1 -1
  13. package/dist/shared/brick-manifest.js +3 -18
  14. package/dist/shared/bricks/manifests/accordion.manifest.d.ts +2 -2
  15. package/dist/shared/bricks/manifests/accordion.manifest.d.ts.map +1 -1
  16. package/dist/shared/bricks/manifests/accordion.manifest.js +13 -20
  17. package/dist/shared/bricks/manifests/all-manifests.js +44 -43
  18. package/dist/shared/bricks/manifests/all-props.d.ts +1501 -0
  19. package/dist/shared/bricks/manifests/all-props.d.ts.map +1 -0
  20. package/dist/shared/bricks/manifests/all-props.js +243 -0
  21. package/dist/shared/bricks/manifests/all-props.js.map +1 -0
  22. package/dist/shared/bricks/manifests/box.manifest.d.ts +2 -2
  23. package/dist/shared/bricks/manifests/box.manifest.d.ts.map +1 -1
  24. package/dist/shared/bricks/manifests/box.manifest.js +16 -20
  25. package/dist/shared/bricks/manifests/button.manifest.d.ts +3 -6
  26. package/dist/shared/bricks/manifests/button.manifest.d.ts.map +1 -1
  27. package/dist/shared/bricks/manifests/button.manifest.js +13 -20
  28. package/dist/shared/bricks/manifests/card.manifest.d.ts +3 -3
  29. package/dist/shared/bricks/manifests/card.manifest.d.ts.map +1 -1
  30. package/dist/shared/bricks/manifests/card.manifest.js +18 -20
  31. package/dist/shared/bricks/manifests/carousel.manifest.d.ts +2 -2
  32. package/dist/shared/bricks/manifests/carousel.manifest.d.ts.map +1 -1
  33. package/dist/shared/bricks/manifests/carousel.manifest.js +15 -20
  34. package/dist/shared/bricks/manifests/footer.manifest.d.ts +3 -3
  35. package/dist/shared/bricks/manifests/footer.manifest.d.ts.map +1 -1
  36. package/dist/shared/bricks/manifests/footer.manifest.js +13 -20
  37. package/dist/shared/bricks/manifests/form.manifest.d.ts +3 -3
  38. package/dist/shared/bricks/manifests/form.manifest.d.ts.map +1 -1
  39. package/dist/shared/bricks/manifests/form.manifest.js +13 -20
  40. package/dist/shared/bricks/manifests/hero.manifest.d.ts +2 -2
  41. package/dist/shared/bricks/manifests/hero.manifest.d.ts.map +1 -1
  42. package/dist/shared/bricks/manifests/hero.manifest.js +13 -20
  43. package/dist/shared/bricks/manifests/html.manifest.d.ts +1 -1
  44. package/dist/shared/bricks/manifests/html.manifest.d.ts.map +1 -1
  45. package/dist/shared/bricks/manifests/html.manifest.js +8 -20
  46. package/dist/shared/bricks/manifests/icon.manifest.d.ts +1 -1
  47. package/dist/shared/bricks/manifests/icon.manifest.d.ts.map +1 -1
  48. package/dist/shared/bricks/manifests/icon.manifest.js +13 -20
  49. package/dist/shared/bricks/manifests/image.manifest.d.ts +2 -2
  50. package/dist/shared/bricks/manifests/image.manifest.d.ts.map +1 -1
  51. package/dist/shared/bricks/manifests/image.manifest.js +16 -20
  52. package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts +2 -2
  53. package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts.map +1 -1
  54. package/dist/shared/bricks/manifests/images-gallery.manifest.js +15 -20
  55. package/dist/shared/bricks/manifests/map.manifest.d.ts +1 -1
  56. package/dist/shared/bricks/manifests/map.manifest.d.ts.map +1 -1
  57. package/dist/shared/bricks/manifests/map.manifest.js +11 -20
  58. package/dist/shared/bricks/manifests/navbar.manifest.d.ts +5 -5
  59. package/dist/shared/bricks/manifests/navbar.manifest.d.ts.map +1 -1
  60. package/dist/shared/bricks/manifests/navbar.manifest.js +15 -20
  61. package/dist/shared/bricks/manifests/sidebar.manifest.d.ts +1 -1
  62. package/dist/shared/bricks/manifests/sidebar.manifest.d.ts.map +1 -1
  63. package/dist/shared/bricks/manifests/sidebar.manifest.js +13 -20
  64. package/dist/shared/bricks/manifests/social-links.manifest.d.ts +2 -2
  65. package/dist/shared/bricks/manifests/social-links.manifest.d.ts.map +1 -1
  66. package/dist/shared/bricks/manifests/social-links.manifest.js +14 -20
  67. package/dist/shared/bricks/manifests/spacer.manifest.d.ts +1 -1
  68. package/dist/shared/bricks/manifests/spacer.manifest.d.ts.map +1 -1
  69. package/dist/shared/bricks/manifests/spacer.manifest.js +8 -20
  70. package/dist/shared/bricks/manifests/table.manifest.d.ts +4 -4
  71. package/dist/shared/bricks/manifests/table.manifest.d.ts.map +1 -1
  72. package/dist/shared/bricks/manifests/table.manifest.js +15 -20
  73. package/dist/shared/bricks/manifests/tabs.manifest.d.ts +4 -4
  74. package/dist/shared/bricks/manifests/tabs.manifest.d.ts.map +1 -1
  75. package/dist/shared/bricks/manifests/tabs.manifest.js +15 -20
  76. package/dist/shared/bricks/manifests/testimonials.manifest.d.ts +2 -2
  77. package/dist/shared/bricks/manifests/testimonials.manifest.d.ts.map +1 -1
  78. package/dist/shared/bricks/manifests/testimonials.manifest.js +18 -20
  79. package/dist/shared/bricks/manifests/text.manifest.d.ts +2 -6
  80. package/dist/shared/bricks/manifests/text.manifest.d.ts.map +1 -1
  81. package/dist/shared/bricks/manifests/text.manifest.js +13 -20
  82. package/dist/shared/bricks/manifests/timeline.manifest.d.ts +7 -7
  83. package/dist/shared/bricks/manifests/timeline.manifest.d.ts.map +1 -1
  84. package/dist/shared/bricks/manifests/timeline.manifest.js +15 -20
  85. package/dist/shared/bricks/manifests/video.manifest.d.ts +1 -1
  86. package/dist/shared/bricks/manifests/video.manifest.d.ts.map +1 -1
  87. package/dist/shared/bricks/manifests/video.manifest.js +11 -20
  88. package/dist/shared/bricks/props/align.d.ts +0 -3
  89. package/dist/shared/bricks/props/align.d.ts.map +1 -1
  90. package/dist/shared/bricks/props/align.js +4 -11
  91. package/dist/shared/bricks/props/background.d.ts +2 -8
  92. package/dist/shared/bricks/props/background.d.ts.map +1 -1
  93. package/dist/shared/bricks/props/background.js +4 -9
  94. package/dist/shared/bricks/props/border.d.ts +0 -7
  95. package/dist/shared/bricks/props/border.d.ts.map +1 -1
  96. package/dist/shared/bricks/props/border.js +5 -10
  97. package/dist/shared/bricks/props/color-preset.d.ts +316 -6
  98. package/dist/shared/bricks/props/color-preset.d.ts.map +1 -1
  99. package/dist/shared/bricks/props/color-preset.js +2 -5
  100. package/dist/shared/bricks/props/color.d.ts +3 -5
  101. package/dist/shared/bricks/props/color.d.ts.map +1 -1
  102. package/dist/shared/bricks/props/color.js +3 -8
  103. package/dist/shared/bricks/props/common.d.ts.map +1 -1
  104. package/dist/shared/bricks/props/common.js +4 -5
  105. package/dist/shared/bricks/props/css-length.d.ts +0 -1
  106. package/dist/shared/bricks/props/css-length.d.ts.map +1 -1
  107. package/dist/shared/bricks/props/css-length.js +1 -4
  108. package/dist/shared/bricks/props/datasource.d.ts +3 -3
  109. package/dist/shared/bricks/props/datasource.d.ts.map +1 -1
  110. package/dist/shared/bricks/props/datasource.js +74 -76
  111. package/dist/shared/bricks/props/datasource.js.map +1 -1
  112. package/dist/shared/bricks/props/date.js +21 -4
  113. package/dist/shared/bricks/props/date.js.map +1 -1
  114. package/dist/shared/bricks/props/direction.d.ts +1 -2
  115. package/dist/shared/bricks/props/direction.d.ts.map +1 -1
  116. package/dist/shared/bricks/props/direction.js +4 -7
  117. package/dist/shared/bricks/props/dynamic.d.ts +5 -67
  118. package/dist/shared/bricks/props/dynamic.d.ts.map +1 -1
  119. package/dist/shared/bricks/props/dynamic.js +6 -24
  120. package/dist/shared/bricks/props/effects.d.ts +1 -3
  121. package/dist/shared/bricks/props/effects.d.ts.map +1 -1
  122. package/dist/shared/bricks/props/effects.js +4 -9
  123. package/dist/shared/bricks/props/geolocation.d.ts.map +1 -1
  124. package/dist/shared/bricks/props/geolocation.js +3 -6
  125. package/dist/shared/bricks/props/geolocation.js.map +1 -1
  126. package/dist/shared/bricks/props/helpers.js +5 -6
  127. package/dist/shared/bricks/props/image.d.ts +2 -8
  128. package/dist/shared/bricks/props/image.d.ts.map +1 -1
  129. package/dist/shared/bricks/props/image.js +4 -7
  130. package/dist/shared/bricks/props/string.d.ts +2 -5
  131. package/dist/shared/bricks/props/string.d.ts.map +1 -1
  132. package/dist/shared/bricks/props/string.js +3 -10
  133. package/dist/shared/bricks/props/tags.d.ts +0 -1
  134. package/dist/shared/bricks/props/tags.d.ts.map +1 -1
  135. package/dist/shared/bricks/props/tags.js +3 -6
  136. package/dist/shared/bricks/props/text.d.ts +0 -3
  137. package/dist/shared/bricks/props/text.d.ts.map +1 -1
  138. package/dist/shared/bricks/props/text.js +4 -11
  139. package/dist/shared/bricks/props/types.d.ts +2 -2
  140. package/dist/shared/bricks/props/types.d.ts.map +1 -1
  141. package/dist/shared/bricks.d.ts +64 -154
  142. package/dist/shared/bricks.d.ts.map +1 -1
  143. package/dist/shared/bricks.js +47 -52
  144. package/dist/shared/chunk-2O5HVPID.js +41 -0
  145. package/dist/shared/chunk-2O5HVPID.js.map +1 -0
  146. package/dist/shared/{chunk-F22LDHEO.js → chunk-2U5U3CCJ.js} +3 -18
  147. package/dist/shared/chunk-2U5U3CCJ.js.map +1 -0
  148. package/dist/shared/{chunk-LTIJI7Y3.js → chunk-4KY7OZWD.js} +35 -35
  149. package/dist/shared/chunk-4KY7OZWD.js.map +1 -0
  150. package/dist/shared/{chunk-TNMNMYOB.js → chunk-5RCC2STG.js} +2 -13
  151. package/dist/shared/chunk-5RCC2STG.js.map +1 -0
  152. package/dist/shared/{chunk-KIDICX3Y.js → chunk-6AE7UD73.js} +27 -33
  153. package/dist/shared/chunk-6AE7UD73.js.map +1 -0
  154. package/dist/shared/{chunk-CRS7QCPZ.js → chunk-7U5WPHXB.js} +65 -27
  155. package/dist/shared/chunk-7U5WPHXB.js.map +1 -0
  156. package/dist/shared/{chunk-Q4NPPLEU.js → chunk-BHARJBEK.js} +2 -9
  157. package/dist/shared/chunk-BHARJBEK.js.map +1 -0
  158. package/dist/shared/{chunk-H5JM2M2T.js → chunk-BZTWZC77.js} +46 -31
  159. package/dist/shared/chunk-BZTWZC77.js.map +1 -0
  160. package/dist/shared/{chunk-LLNPH3XR.js → chunk-DCM4732T.js} +6 -8
  161. package/dist/shared/chunk-DCM4732T.js.map +1 -0
  162. package/dist/shared/{chunk-W6MRYRGJ.js → chunk-DRQKKPTX.js} +6 -20
  163. package/dist/shared/chunk-DRQKKPTX.js.map +1 -0
  164. package/dist/shared/{chunk-CSF2WQX2.js → chunk-EID5HPF3.js} +15 -12
  165. package/dist/shared/chunk-EID5HPF3.js.map +1 -0
  166. package/dist/shared/chunk-EMF5TCPX.js +389 -0
  167. package/dist/shared/chunk-EMF5TCPX.js.map +1 -0
  168. package/dist/shared/chunk-FD7YYFRI.js +225 -0
  169. package/dist/shared/chunk-FD7YYFRI.js.map +1 -0
  170. package/dist/shared/{chunk-36PLZKMW.js → chunk-FHA4DFIM.js} +26 -27
  171. package/dist/shared/chunk-FHA4DFIM.js.map +1 -0
  172. package/dist/shared/{chunk-L6C7HUSA.js → chunk-FUUSAMN3.js} +21 -24
  173. package/dist/shared/chunk-FUUSAMN3.js.map +1 -0
  174. package/dist/shared/chunk-GDYCCB3B.js +22 -0
  175. package/dist/shared/chunk-GDYCCB3B.js.map +1 -0
  176. package/dist/shared/chunk-GLV6QIIM.js +41 -0
  177. package/dist/shared/chunk-GLV6QIIM.js.map +1 -0
  178. package/dist/shared/chunk-H6TMBELF.js +374 -0
  179. package/dist/shared/chunk-H6TMBELF.js.map +1 -0
  180. package/dist/shared/{chunk-YWOTQWIQ.js → chunk-HUWMIXNN.js} +26 -28
  181. package/dist/shared/chunk-HUWMIXNN.js.map +1 -0
  182. package/dist/shared/chunk-HY7JOP3J.js +150 -0
  183. package/dist/shared/chunk-HY7JOP3J.js.map +1 -0
  184. package/dist/shared/{chunk-TFGGYU6Y.js → chunk-IEMCCHM4.js} +7 -12
  185. package/dist/shared/chunk-IEMCCHM4.js.map +1 -0
  186. package/dist/shared/{chunk-EVLRH6VG.js → chunk-J45LSQT6.js} +2 -2
  187. package/dist/shared/chunk-J45LSQT6.js.map +1 -0
  188. package/dist/shared/{chunk-DFAFDBYZ.js → chunk-JF52BBFD.js} +27 -28
  189. package/dist/shared/chunk-JF52BBFD.js.map +1 -0
  190. package/dist/shared/{chunk-ZR6R6Z6O.js → chunk-JLDAS3VE.js} +34 -32
  191. package/dist/shared/chunk-JLDAS3VE.js.map +1 -0
  192. package/dist/shared/{chunk-SE6O65HC.js → chunk-JSDKK5QN.js} +10 -23
  193. package/dist/shared/chunk-JSDKK5QN.js.map +1 -0
  194. package/dist/shared/{chunk-KILJYJFE.js → chunk-JW7MQAU4.js} +19 -19
  195. package/dist/shared/chunk-JW7MQAU4.js.map +1 -0
  196. package/dist/shared/{chunk-RV7AYVFV.js → chunk-KKWT3OXF.js} +4 -19
  197. package/dist/shared/chunk-KKWT3OXF.js.map +1 -0
  198. package/dist/shared/{chunk-N3BEBLWF.js → chunk-KQH6V22E.js} +34 -34
  199. package/dist/shared/{chunk-GFAQWQER.js → chunk-LGDDJJHK.js} +33 -35
  200. package/dist/shared/chunk-LGDDJJHK.js.map +1 -0
  201. package/dist/shared/{chunk-FOGAVJC2.js → chunk-LGGPCCCY.js} +3 -3
  202. package/dist/shared/{chunk-4MNWMEMM.js → chunk-LPAQ47C6.js} +23 -23
  203. package/dist/shared/chunk-LPAQ47C6.js.map +1 -0
  204. package/dist/shared/chunk-MO6CRLQA.js +73 -0
  205. package/dist/shared/chunk-MO6CRLQA.js.map +1 -0
  206. package/dist/shared/{chunk-GQTZPN5D.js → chunk-MYOLWTB2.js} +29 -32
  207. package/dist/shared/chunk-MYOLWTB2.js.map +1 -0
  208. package/dist/shared/{chunk-KEM5N6GJ.js → chunk-O24RDXZS.js} +34 -34
  209. package/dist/shared/chunk-O24RDXZS.js.map +1 -0
  210. package/dist/shared/{chunk-BPBKHEQ5.js → chunk-OJ6KL7FU.js} +1 -8
  211. package/dist/shared/chunk-OJ6KL7FU.js.map +1 -0
  212. package/dist/shared/{chunk-LCJ2VFPM.js → chunk-PF75LW33.js} +24 -27
  213. package/dist/shared/chunk-PF75LW33.js.map +1 -0
  214. package/dist/shared/{chunk-U5ZECCJM.js → chunk-QEJGPYTB.js} +32 -34
  215. package/dist/shared/chunk-QEJGPYTB.js.map +1 -0
  216. package/dist/shared/{chunk-2VDR4ZYY.js → chunk-SK2O7GFC.js} +17 -18
  217. package/dist/shared/chunk-SK2O7GFC.js.map +1 -0
  218. package/dist/shared/{chunk-N3ZTQD5I.js → chunk-SQXZNGQF.js} +8 -23
  219. package/dist/shared/chunk-SQXZNGQF.js.map +1 -0
  220. package/dist/shared/{chunk-NTLAKMMQ.js → chunk-SRYBJ6NQ.js} +6 -17
  221. package/dist/shared/chunk-SRYBJ6NQ.js.map +1 -0
  222. package/dist/shared/{chunk-UXTASZ23.js → chunk-T6C3NG2L.js} +66 -63
  223. package/dist/shared/chunk-T6C3NG2L.js.map +1 -0
  224. package/dist/shared/{chunk-ZRRAK5NS.js → chunk-TBT2PTGB.js} +41 -33
  225. package/dist/shared/chunk-TBT2PTGB.js.map +1 -0
  226. package/dist/shared/{chunk-2IHKVMKW.js → chunk-U4KZUX37.js} +18 -19
  227. package/dist/shared/chunk-U4KZUX37.js.map +1 -0
  228. package/dist/shared/{chunk-FQDR2BBZ.js → chunk-VSLRTXLF.js} +11 -4
  229. package/dist/shared/chunk-VSLRTXLF.js.map +1 -0
  230. package/dist/shared/{chunk-BHC2A43S.js → chunk-VTCHJT4O.js} +3 -3
  231. package/dist/shared/{chunk-BHC2A43S.js.map → chunk-VTCHJT4O.js.map} +1 -1
  232. package/dist/shared/{chunk-GIGFNQBO.js → chunk-W2RFDII5.js} +3 -3
  233. package/dist/shared/{chunk-Y74LZNND.js → chunk-WPZV3LYL.js} +4 -10
  234. package/dist/shared/chunk-WPZV3LYL.js.map +1 -0
  235. package/dist/shared/chunk-XFZQGRRL.js +101 -0
  236. package/dist/shared/chunk-XFZQGRRL.js.map +1 -0
  237. package/dist/shared/{chunk-42OUNI7C.js → chunk-XK2CERPB.js} +27 -29
  238. package/dist/shared/chunk-XK2CERPB.js.map +1 -0
  239. package/dist/shared/chunk-XNRSL6FL.js +78 -0
  240. package/dist/shared/chunk-XNRSL6FL.js.map +1 -0
  241. package/dist/shared/{chunk-2RK3CPYJ.js → chunk-XXPSM6UA.js} +9 -12
  242. package/dist/shared/chunk-XXPSM6UA.js.map +1 -0
  243. package/dist/shared/{chunk-ZLYIRH2B.js → chunk-ZRBTAC3G.js} +3 -18
  244. package/dist/shared/chunk-ZRBTAC3G.js.map +1 -0
  245. package/dist/shared/{chunk-F247VKAE.js → chunk-ZVJNRKT4.js} +18 -20
  246. package/dist/shared/chunk-ZVJNRKT4.js.map +1 -0
  247. package/dist/shared/context.d.ts +402 -23
  248. package/dist/shared/context.d.ts.map +1 -1
  249. package/dist/shared/context.js +93 -0
  250. package/dist/shared/context.js.map +1 -1
  251. package/dist/shared/datarecords/external/airtable/types.d.ts +1 -1
  252. package/dist/shared/datarecords/external/airtable/types.d.ts.map +1 -1
  253. package/dist/shared/datarecords/external/airtable/types.js +2 -1
  254. package/dist/shared/datarecords/types.d.ts +3 -3
  255. package/dist/shared/datarecords/types.d.ts.map +1 -1
  256. package/dist/shared/datarecords/types.js +3 -2
  257. package/dist/shared/datasources/external/instagram/feed/schema.d.ts +1 -1
  258. package/dist/shared/datasources/external/instagram/feed/schema.d.ts.map +1 -1
  259. package/dist/shared/datasources/external/instagram/feed/schema.js +4 -1
  260. package/dist/shared/datasources/external/instagram/feed/schema.js.map +1 -1
  261. package/dist/shared/datasources/external/mastodon/status/schema.d.ts +6 -6
  262. package/dist/shared/datasources/external/mastodon/status/schema.d.ts.map +1 -1
  263. package/dist/shared/datasources/external/mastodon/status/schema.js +6 -19
  264. package/dist/shared/datasources/external/mastodon/status/schema.js.map +1 -1
  265. package/dist/shared/datasources/external/meta/oauth/config.d.ts +2 -2
  266. package/dist/shared/datasources/external/meta/oauth/config.d.ts.map +1 -1
  267. package/dist/shared/datasources/external/meta/oauth/config.js +4 -1
  268. package/dist/shared/datasources/external/meta/oauth/config.js.map +1 -1
  269. package/dist/shared/datasources/external/threads/media/schema.d.ts +1 -1
  270. package/dist/shared/datasources/external/threads/media/schema.d.ts.map +1 -1
  271. package/dist/shared/datasources/external/threads/media/schema.js +4 -8
  272. package/dist/shared/datasources/external/threads/media/schema.js.map +1 -1
  273. package/dist/shared/datasources/internal/blog/schema.d.ts +1 -1
  274. package/dist/shared/datasources/internal/blog/schema.d.ts.map +1 -1
  275. package/dist/shared/datasources/internal/blog/schema.js +4 -1
  276. package/dist/shared/datasources/internal/blog/schema.js.map +1 -1
  277. package/dist/shared/datasources/types.d.ts +25 -25
  278. package/dist/shared/datasources/types.d.ts.map +1 -1
  279. package/dist/shared/datasources/types.js +3 -16
  280. package/dist/shared/images.d.ts +1 -1
  281. package/dist/shared/images.d.ts.map +1 -1
  282. package/dist/shared/images.js +4 -38
  283. package/dist/shared/images.js.map +1 -1
  284. package/dist/shared/page.d.ts +139 -22
  285. package/dist/shared/page.d.ts.map +1 -1
  286. package/dist/shared/page.js +51 -49
  287. package/dist/shared/responsive.js +1 -1
  288. package/dist/shared/site.d.ts +74 -191
  289. package/dist/shared/site.d.ts.map +1 -1
  290. package/dist/shared/site.js +55 -114
  291. package/dist/shared/site.js.map +1 -1
  292. package/dist/shared/sitemap.d.ts +4 -326
  293. package/dist/shared/sitemap.d.ts.map +1 -1
  294. package/dist/shared/sitemap.js +50 -58
  295. package/dist/shared/theme.d.ts +0 -37
  296. package/dist/shared/theme.d.ts.map +1 -1
  297. package/dist/shared/theme.js +4 -21
  298. package/dist/shared/utils/llm.d.ts +1 -10
  299. package/dist/shared/utils/llm.d.ts.map +1 -1
  300. package/dist/shared/utils/llm.js +1 -18
  301. package/dist/shared/utils/schema.d.ts +3 -2
  302. package/dist/shared/utils/schema.d.ts.map +1 -1
  303. package/dist/shared/utils/schema.js +2 -17
  304. package/dist/shared/utils/string-enum.d.ts +9 -3
  305. package/dist/shared/utils/string-enum.d.ts.map +1 -1
  306. package/dist/shared/utils/string-enum.js +1 -1
  307. package/package.json +21 -5
  308. package/src/shared/ai/schemas.ts +24 -29
  309. package/src/shared/ai/types.ts +22 -88
  310. package/src/shared/attributes.ts +53 -51
  311. package/src/shared/brick-manifest.ts +5 -6
  312. package/src/shared/bricks/manifests/accordion.manifest.ts +11 -11
  313. package/src/shared/bricks/manifests/all-props.ts +165 -0
  314. package/src/shared/bricks/manifests/box.manifest.ts +19 -21
  315. package/src/shared/bricks/manifests/button.manifest.ts +54 -16
  316. package/src/shared/bricks/manifests/card.manifest.ts +32 -18
  317. package/src/shared/bricks/manifests/carousel.manifest.ts +11 -13
  318. package/src/shared/bricks/manifests/footer.manifest.ts +16 -15
  319. package/src/shared/bricks/manifests/form.manifest.ts +14 -15
  320. package/src/shared/bricks/manifests/hero.manifest.ts +18 -20
  321. package/src/shared/bricks/manifests/icon.manifest.ts +9 -10
  322. package/src/shared/bricks/manifests/image.manifest.ts +22 -19
  323. package/src/shared/bricks/manifests/images-gallery.manifest.ts +13 -15
  324. package/src/shared/bricks/manifests/map.manifest.ts +10 -10
  325. package/src/shared/bricks/manifests/navbar.manifest.ts +20 -21
  326. package/src/shared/bricks/manifests/sidebar.manifest.ts +9 -9
  327. package/src/shared/bricks/manifests/social-links.manifest.ts +17 -19
  328. package/src/shared/bricks/manifests/table.manifest.ts +15 -15
  329. package/src/shared/bricks/manifests/tabs.manifest.ts +14 -16
  330. package/src/shared/bricks/manifests/testimonials.manifest.ts +21 -20
  331. package/src/shared/bricks/manifests/text.manifest.ts +16 -19
  332. package/src/shared/bricks/manifests/timeline.manifest.ts +29 -24
  333. package/src/shared/bricks/manifests/video.manifest.ts +9 -10
  334. package/src/shared/bricks/props/align.ts +0 -13
  335. package/src/shared/bricks/props/background.ts +1 -14
  336. package/src/shared/bricks/props/border.ts +2 -13
  337. package/src/shared/bricks/props/color-preset.ts +9 -10
  338. package/src/shared/bricks/props/color.ts +7 -18
  339. package/src/shared/bricks/props/common.ts +6 -7
  340. package/src/shared/bricks/props/css-length.ts +0 -5
  341. package/src/shared/bricks/props/datasource.ts +72 -74
  342. package/src/shared/bricks/props/direction.ts +1 -5
  343. package/src/shared/bricks/props/dynamic.ts +0 -11
  344. package/src/shared/bricks/props/effects.ts +0 -9
  345. package/src/shared/bricks/props/geolocation.ts +3 -3
  346. package/src/shared/bricks/props/helpers.ts +1 -1
  347. package/src/shared/bricks/props/image.ts +4 -16
  348. package/src/shared/bricks/props/string.ts +5 -18
  349. package/src/shared/bricks/props/tags.ts +0 -5
  350. package/src/shared/bricks/props/tests/background.test.ts +1 -15
  351. package/src/shared/bricks/props/tests/image.test.ts +3 -9
  352. package/src/shared/bricks/props/tests/string.test.ts +2 -26
  353. package/src/shared/bricks/props/text.ts +0 -12
  354. package/src/shared/bricks/props/types.ts +4 -3
  355. package/src/shared/bricks.ts +156 -1020
  356. package/src/shared/context.ts +24 -24
  357. package/src/shared/datarecords/external/airtable/types.ts +12 -11
  358. package/src/shared/datarecords/types.ts +2 -34
  359. package/src/shared/datasources/external/instagram/feed/schema.ts +2 -1
  360. package/src/shared/datasources/external/mastodon/status/schema.ts +4 -19
  361. package/src/shared/datasources/external/meta/oauth/config.ts +2 -1
  362. package/src/shared/datasources/external/threads/media/schema.ts +2 -8
  363. package/src/shared/datasources/internal/blog/schema.ts +2 -1
  364. package/src/shared/datasources/types.ts +64 -79
  365. package/src/shared/images.ts +12 -18
  366. package/src/shared/page.ts +9 -1
  367. package/src/shared/sitemap.ts +3 -70
  368. package/src/shared/tests/attributes.test.ts +2 -0
  369. package/src/shared/theme.ts +81 -96
  370. package/src/shared/utils/llm.ts +5 -191
  371. package/src/shared/utils/schema.ts +71 -244
  372. package/src/shared/utils/string-enum.ts +25 -4
  373. package/src/shared/utils/tests/schema.test.ts +70 -313
  374. package/dist/shared/chunk-2IHKVMKW.js.map +0 -1
  375. package/dist/shared/chunk-2RK3CPYJ.js.map +0 -1
  376. package/dist/shared/chunk-2VDR4ZYY.js.map +0 -1
  377. package/dist/shared/chunk-36PLZKMW.js.map +0 -1
  378. package/dist/shared/chunk-42OUNI7C.js.map +0 -1
  379. package/dist/shared/chunk-4MNWMEMM.js.map +0 -1
  380. package/dist/shared/chunk-A2QPY54H.js +0 -13
  381. package/dist/shared/chunk-A2QPY54H.js.map +0 -1
  382. package/dist/shared/chunk-BPBKHEQ5.js.map +0 -1
  383. package/dist/shared/chunk-CRS7QCPZ.js.map +0 -1
  384. package/dist/shared/chunk-CSF2WQX2.js.map +0 -1
  385. package/dist/shared/chunk-DFAFDBYZ.js.map +0 -1
  386. package/dist/shared/chunk-DV3G7X34.js +0 -244
  387. package/dist/shared/chunk-DV3G7X34.js.map +0 -1
  388. package/dist/shared/chunk-EVLRH6VG.js.map +0 -1
  389. package/dist/shared/chunk-F22LDHEO.js.map +0 -1
  390. package/dist/shared/chunk-F247VKAE.js.map +0 -1
  391. package/dist/shared/chunk-FQDR2BBZ.js.map +0 -1
  392. package/dist/shared/chunk-GFAQWQER.js.map +0 -1
  393. package/dist/shared/chunk-GQTZPN5D.js.map +0 -1
  394. package/dist/shared/chunk-H5JM2M2T.js.map +0 -1
  395. package/dist/shared/chunk-HTUSL2U7.js +0 -260
  396. package/dist/shared/chunk-HTUSL2U7.js.map +0 -1
  397. package/dist/shared/chunk-IQIISR22.js +0 -794
  398. package/dist/shared/chunk-IQIISR22.js.map +0 -1
  399. package/dist/shared/chunk-JK2FWFJU.js +0 -15
  400. package/dist/shared/chunk-JK2FWFJU.js.map +0 -1
  401. package/dist/shared/chunk-KEM5N6GJ.js.map +0 -1
  402. package/dist/shared/chunk-KIDICX3Y.js.map +0 -1
  403. package/dist/shared/chunk-KILJYJFE.js.map +0 -1
  404. package/dist/shared/chunk-L6C7HUSA.js.map +0 -1
  405. package/dist/shared/chunk-LCJ2VFPM.js.map +0 -1
  406. package/dist/shared/chunk-LLNPH3XR.js.map +0 -1
  407. package/dist/shared/chunk-LTIJI7Y3.js.map +0 -1
  408. package/dist/shared/chunk-MFNHFN2B.js +0 -103
  409. package/dist/shared/chunk-MFNHFN2B.js.map +0 -1
  410. package/dist/shared/chunk-N3ZTQD5I.js.map +0 -1
  411. package/dist/shared/chunk-NTLAKMMQ.js.map +0 -1
  412. package/dist/shared/chunk-Q4NPPLEU.js.map +0 -1
  413. package/dist/shared/chunk-RV7AYVFV.js.map +0 -1
  414. package/dist/shared/chunk-SE6O65HC.js.map +0 -1
  415. package/dist/shared/chunk-TFGGYU6Y.js.map +0 -1
  416. package/dist/shared/chunk-TNMNMYOB.js.map +0 -1
  417. package/dist/shared/chunk-TNTFKLCR.js +0 -1225
  418. package/dist/shared/chunk-TNTFKLCR.js.map +0 -1
  419. package/dist/shared/chunk-U5ZECCJM.js.map +0 -1
  420. package/dist/shared/chunk-UXTASZ23.js.map +0 -1
  421. package/dist/shared/chunk-W6MRYRGJ.js.map +0 -1
  422. package/dist/shared/chunk-WKN566LN.js +0 -29
  423. package/dist/shared/chunk-WKN566LN.js.map +0 -1
  424. package/dist/shared/chunk-Y74LZNND.js.map +0 -1
  425. package/dist/shared/chunk-YWOTQWIQ.js.map +0 -1
  426. package/dist/shared/chunk-ZLYIRH2B.js.map +0 -1
  427. package/dist/shared/chunk-ZR6R6Z6O.js.map +0 -1
  428. package/dist/shared/chunk-ZRRAK5NS.js.map +0 -1
  429. package/dist/shared/tests/schema-registry.test.d.ts +0 -2
  430. package/dist/shared/tests/schema-registry.test.d.ts.map +0 -1
  431. package/dist/shared/utils/schema-registry.d.ts +0 -5
  432. package/dist/shared/utils/schema-registry.d.ts.map +0 -1
  433. package/dist/shared/utils/schema-registry.js +0 -29
  434. package/dist/shared/utils/schema-registry.js.map +0 -1
  435. package/dist/shared/utils/tests/schema-registry.test.d.ts +0 -2
  436. package/dist/shared/utils/tests/schema-registry.test.d.ts.map +0 -1
  437. package/dist/shared/utils/typed-ref.d.ts +0 -43
  438. package/dist/shared/utils/typed-ref.d.ts.map +0 -1
  439. package/dist/shared/utils/typed-ref.js +0 -10
  440. package/dist/shared/utils/typed-ref.js.map +0 -1
  441. package/src/shared/tests/schema-registry.test.ts +0 -12
  442. package/src/shared/utils/schema-registry.ts +0 -82
  443. package/src/shared/utils/tests/schema-registry.test.ts +0 -13
  444. package/src/shared/utils/typed-ref.ts +0 -53
  445. /package/dist/shared/{chunk-N3BEBLWF.js.map → chunk-KQH6V22E.js.map} +0 -0
  446. /package/dist/shared/{chunk-FOGAVJC2.js.map → chunk-LGGPCCCY.js.map} +0 -0
  447. /package/dist/shared/{chunk-GIGFNQBO.js.map → chunk-W2RFDII5.js.map} +0 -0
@@ -2,11 +2,11 @@ import { Type } from "@sinclair/typebox";
2
2
  import { RxButton } from "react-icons/rx";
3
3
  import { defineBrickManifest } from "~/shared/brick-manifest";
4
4
  import { defineProps } from "../props/helpers";
5
- import { string, urlOrPageIdRef } from "../props/string";
6
- import type { BrickProps } from "../props/types";
7
- import { borderRef, roundingRef } from "../props/border";
8
- import { fontSizeRef } from "../props/text";
9
- import { colorPresetRef } from "../props/color-preset";
5
+ import { urlOrPageId } from "../props/string";
6
+ import { rounding } from "../props/border";
7
+ import { StringEnum } from "~/shared/utils/string-enum";
8
+ import { fontSize } from "../props/text";
9
+ import { colorPreset } from "../props/color-preset";
10
10
  import type { BrickExample } from "./_types";
11
11
 
12
12
  export const manifest = defineBrickManifest({
@@ -26,6 +26,7 @@ STYLING GUIDELINES:
26
26
  - colorPreset: Use "primary-500" for main CTAs, "secondary-500" for secondary actions, "neutral-500" for low-priority actions, "accent-500" for highlight actions
27
27
  - fontSize: "text-sm" for compact buttons, "text-base" for standard, "text-lg" for emphasis, "text-xl" for hero buttons
28
28
  - rounding: "rounded-none" for sharp/modern, "rounded-md" for standard, "rounded-lg" for friendly, "rounded-full" for pills
29
+ - fill: Use "solid" for primary actions with background color, "outline" for secondary actions with transparent background and border
29
30
  - link: Use full URLs for external (https://example.com), relative paths for internal (/about), or page IDs for site pages (about-us)
30
31
 
31
32
  DYNAMIC CONTENT:
@@ -48,15 +49,15 @@ AVOID:
48
49
  props: defineProps(
49
50
  {
50
51
  colorPreset: Type.Optional(
51
- colorPresetRef({
52
+ colorPreset({
52
53
  default: { color: "primary-500" },
53
54
  title: "Color",
54
55
  "ui:default-gradient-direction": "bg-gradient-to-b",
55
56
  }),
56
57
  ),
57
- label: string("Label", { default: "My button", metadata: { category: "content" } }),
58
+ label: Type.String({ title: "Label", default: "My button", metadata: { category: "content" } }),
58
59
  fontSize: Type.Optional(
59
- fontSizeRef({
60
+ fontSize({
60
61
  title: "Font size",
61
62
  description: "The font size of the button text.",
62
63
  default: "text-base",
@@ -65,12 +66,21 @@ AVOID:
65
66
  }),
66
67
  ),
67
68
  rounding: Type.Optional(
68
- roundingRef({
69
+ rounding({
69
70
  default: "rounded-md",
70
71
  }),
71
72
  ),
72
- border: Type.Optional(borderRef({ default: { width: "border-0" }, "ui:responsive": "desktop" })),
73
- link: urlOrPageIdRef({
73
+ fill: Type.Optional(
74
+ StringEnum(["solid", "outline"], {
75
+ title: "Fill",
76
+ description: "Button appearance style - solid background or outlined.",
77
+ default: "solid",
78
+ enumNames: ["Solid", "Outline"],
79
+ "ui:field": "enum",
80
+ "ui:display": "select",
81
+ }),
82
+ ),
83
+ link: urlOrPageId({
74
84
  title: "Link",
75
85
  "ui:placeholder": "https://example.com",
76
86
  metadata: { category: "content" },
@@ -93,6 +103,7 @@ export const examples: BrickExample<Manifest>[] = [
93
103
  colorPreset: { color: "primary-500" },
94
104
  fontSize: "text-base",
95
105
  rounding: "rounded-md",
106
+ fill: "solid",
96
107
  },
97
108
  },
98
109
  {
@@ -104,6 +115,7 @@ export const examples: BrickExample<Manifest>[] = [
104
115
  colorPreset: { color: "secondary-500" },
105
116
  fontSize: "text-base",
106
117
  rounding: "rounded-md",
118
+ fill: "outline",
107
119
  },
108
120
  },
109
121
  {
@@ -150,7 +162,7 @@ export const examples: BrickExample<Manifest>[] = [
150
162
  colorPreset: { color: "secondary-600" },
151
163
  fontSize: "text-base",
152
164
  rounding: "rounded-lg",
153
- border: { width: "border", color: "border-secondary-800" },
165
+ fill: "outline",
154
166
  },
155
167
  },
156
168
 
@@ -188,7 +200,7 @@ export const examples: BrickExample<Manifest>[] = [
188
200
  colorPreset: { color: "primary-600" },
189
201
  fontSize: "text-base",
190
202
  rounding: "rounded-md",
191
- border: { width: "border", color: "border-primary-800" },
203
+ fill: "outline",
192
204
  },
193
205
  },
194
206
  {
@@ -235,7 +247,7 @@ export const examples: BrickExample<Manifest>[] = [
235
247
  colorPreset: { color: "primary-600" },
236
248
  fontSize: "text-xl",
237
249
  rounding: "rounded-xl",
238
- border: { width: "border-2", color: "border-primary-800" },
250
+ fill: "outline",
239
251
  },
240
252
  },
241
253
  {
@@ -258,7 +270,7 @@ export const examples: BrickExample<Manifest>[] = [
258
270
  colorPreset: { color: "primary-500" },
259
271
  fontSize: "text-base",
260
272
  rounding: "rounded-none",
261
- border: { width: "border-2", color: "border-primary-700" },
273
+ fill: "outline",
262
274
  },
263
275
  },
264
276
 
@@ -289,7 +301,33 @@ export const examples: BrickExample<Manifest>[] = [
289
301
  },
290
302
  fontSize: "text-base",
291
303
  rounding: "rounded-md",
292
- border: { width: "border", color: "border-accent-800" },
304
+ fill: "outline",
305
+ },
306
+ },
307
+
308
+ // FILL STYLE COMPARISON EXAMPLES
309
+ {
310
+ description: "Solid fill button - Traditional filled background style",
311
+ type: "button",
312
+ props: {
313
+ label: "Solid Button",
314
+ link: "/solid",
315
+ colorPreset: { color: "primary-500" },
316
+ fontSize: "text-base",
317
+ rounding: "rounded-md",
318
+ fill: "solid",
319
+ },
320
+ },
321
+ {
322
+ description: "Outline fill button - Transparent background with border",
323
+ type: "button",
324
+ props: {
325
+ label: "Outline Button",
326
+ link: "/outline",
327
+ colorPreset: { color: "primary-500" },
328
+ fontSize: "text-base",
329
+ rounding: "rounded-md",
330
+ fill: "outline",
293
331
  },
294
332
  },
295
333
  ];
@@ -1,24 +1,38 @@
1
1
  import { defineBrickManifest } from "~/shared/brick-manifest";
2
2
  import { defineProps } from "../props/helpers";
3
- import { textContentRef } from "../props/text";
3
+ import { textContent } from "../props/text";
4
4
  import { BsCardText } from "react-icons/bs";
5
- import { imageRef } from "../props/image";
5
+ import { image } from "../props/image";
6
6
  import { type Static, Type } from "@sinclair/typebox";
7
7
  import type { BrickProps } from "../props/types";
8
- import { shadowRef } from "../props/effects";
9
- import { borderRef, roundingRef } from "../props/border";
10
- import { colorPresetRef } from "../props/color-preset";
11
- import { loopRef } from "../props/dynamic";
8
+ import { shadow } from "../props/effects";
9
+ import { border, rounding } from "../props/border";
10
+ import { colorPreset } from "../props/color-preset";
11
+ import { loop } from "../props/dynamic";
12
12
  import { StringEnum } from "~/shared/utils/string-enum";
13
- import { urlOrPageIdRef } from "../props/string";
13
+ import { urlOrPageId } from "../props/string";
14
14
  import type { BrickExample } from "./_types";
15
15
 
16
16
  export const manifest = defineBrickManifest({
17
17
  type: "card",
18
18
  name: "Card",
19
19
  description: "A card that can have a title, image, and content.",
20
- aiInstructions:
21
- "Use this brick to create visually distinct content blocks (product, feature, testimonial, event, article, CTA, etc.).\n\nGuidelines:\n- Button is REQUIRED. Always provide a short action label (1–3 words) and pick a color matching semantic weight (primary/accent for primary actions, neutral/secondary for low emphasis).\n- Image is OPTIONAL. If present you may set imagePosition to top | middle | bottom. Default is top. Pick middle for vertically centered feature highlights, bottom for caption-first layouts.\n- Set noTitle: true when the card is intentionally title-less (e.g. a quote card or pure media focus). Do NOT include an empty title string alongside noTitle.\n- Use dynamic tokens (e.g. {{products.price}}) instead of duplicating literal values.\n- Prefer gradient presets for more visual emphasis (e.g. primary-gradient-400 with gradientDirection).\n- border + rounding + shadow should be cohesive: stronger borders pair well with larger rounding + moderate shadow; minimal / flat cards may use border-0 + no shadow.\n- For internal navigation you can supply a page ID (e.g. 'about') OR a relative/absolute URL (e.g. '/pricing', 'https://example.com').\n- Keep HTML inside text minimal (<strong>, <em>, <br>) — for richer structure consider multiple bricks instead.\n- Avoid mixing noTitle with large heading text embedded inside the text field — in that case keep a proper title.\n\nReturn ONLY valid properties defined in the schema; do not invent new ones.",
20
+ aiInstructions: `Use this brick to create visually distinct content blocks (product, feature, testimonial, event, article, CTA, etc.).
21
+
22
+ Guidelines:
23
+ - Button is REQUIRED.
24
+ - Always provide a short action label (1-3 words) and pick a color matching semantic weight (primary/accent for primary actions, neutral/secondary for low emphasis).
25
+ - Image is OPTIONAL. If present you may set imagePosition to top | middle | bottom. Default is top.
26
+ - Pick middle for vertically centered feature highlights, bottom for caption-first layouts.
27
+ - Set noTitle: true when the card is intentionally title-less (e.g. a quote card or pure media focus).
28
+ - Do NOT include an empty title string alongside noTitle.
29
+ - Use dynamic tokens (e.g. {{products.price}}) instead of duplicating literal values.
30
+ - Prefer gradient presets for more visual emphasis (e.g. primary-gradient-400 with gradientDirection).
31
+ - border + rounding + shadow should be cohesive: stronger borders pair well with larger rounding + moderate shadow; minimal / flat cards may use border-0 + no shadow.
32
+ - For internal navigation you can supply a page ID (e.g. 'about') OR a relative/absolute URL (e.g. '/pricing', 'https://example.com').
33
+ - Keep HTML inside text minimal (<strong>, <em>, <br>) — for richer structure consider multiple bricks instead.
34
+ - Avoid mixing noTitle with large heading text embedded inside the text field — in that case keep a proper title.
35
+ - Return ONLY valid properties defined in the schema; do not invent new ones.`,
22
36
  icon: BsCardText,
23
37
  defaultWidth: { desktop: "400px", mobile: "100%" },
24
38
  minWidth: { desktop: 300 },
@@ -26,14 +40,14 @@ export const manifest = defineBrickManifest({
26
40
  maxWidth: { desktop: 650 },
27
41
  props: defineProps({
28
42
  colorPreset: Type.Optional(
29
- colorPresetRef({
43
+ colorPreset({
30
44
  title: "Color preset",
31
45
  default: { color: "base-100" },
32
46
  }),
33
47
  ),
34
48
 
35
49
  cardImage: Type.Optional(
36
- imageRef({
50
+ image({
37
51
  "ui:responsive": "desktop",
38
52
  metadata: {
39
53
  category: "content",
@@ -63,24 +77,24 @@ export const manifest = defineBrickManifest({
63
77
  "ui:responsive": "desktop",
64
78
  }),
65
79
  ),
66
- title: Type.Optional(textContentRef({ title: "Title" })),
67
- text: Type.Optional(textContentRef({ title: "Text" })),
80
+ title: Type.Optional(textContent({ title: "Title" })),
81
+ text: Type.Optional(textContent({ title: "Text" })),
68
82
  rounding: Type.Optional(
69
- roundingRef({
83
+ rounding({
70
84
  default: "rounded-md",
71
85
  }),
72
86
  ),
73
87
  border: Type.Optional(
74
- borderRef({
88
+ border({
75
89
  // default: { width: "border", color: "border-base-300" },
76
90
  }),
77
91
  ),
78
92
  shadow: Type.Optional(
79
- shadowRef({
93
+ shadow({
80
94
  default: "shadow-sm",
81
95
  }),
82
96
  ),
83
- loop: Type.Optional(loopRef()),
97
+ loop: Type.Optional(loop()),
84
98
  button: Type.Object(
85
99
  {
86
100
  label: Type.String({
@@ -91,7 +105,7 @@ export const manifest = defineBrickManifest({
91
105
  category: "content",
92
106
  },
93
107
  }),
94
- url: urlOrPageIdRef({
108
+ url: urlOrPageId({
95
109
  title: "Button URL",
96
110
  description: "The URL the button should link to.",
97
111
  metadata: {
@@ -2,13 +2,11 @@ import { Type } from "@sinclair/typebox";
2
2
  import { TbCarouselHorizontal } from "react-icons/tb";
3
3
  import { defineBrickManifest } from "~/shared/brick-manifest";
4
4
  import { defineProps } from "../props/helpers";
5
- import { imageRef } from "../props/image";
6
- import { string } from "../props/string";
7
- import type { BrickProps } from "../props/types";
8
- import { roundingRef } from "../props/border";
9
- import { colorPresetRef } from "../props/color-preset";
10
- import { loopRef } from "../props/dynamic";
11
- import { cssLengthRef } from "../props/css-length";
5
+ import { image } from "../props/image";
6
+ import { rounding } from "../props/border";
7
+ import { colorPreset } from "../props/color-preset";
8
+ import { loop } from "../props/dynamic";
9
+ import { cssLength } from "../props/css-length";
12
10
  import type { BrickExample } from "./_types";
13
11
 
14
12
  export const manifest = defineBrickManifest({
@@ -69,12 +67,12 @@ AVOID:
69
67
  icon: TbCarouselHorizontal,
70
68
  props: defineProps({
71
69
  colorPreset: Type.Optional(
72
- colorPresetRef({
70
+ colorPreset({
73
71
  title: "Color",
74
72
  }),
75
73
  ),
76
74
  padding: Type.Optional(
77
- cssLengthRef({
75
+ cssLength({
78
76
  default: "1rem",
79
77
  description: "Padding inside the carousel.",
80
78
  "ai:instructions": "Use only a single value like '1rem' or '10px'",
@@ -87,12 +85,12 @@ AVOID:
87
85
  images: Type.Optional(
88
86
  Type.Array(
89
87
  Type.Object({
90
- src: imageRef({
88
+ src: image({
91
89
  "ui:responsive": "desktop",
92
90
  "ui:no-alt-text": true,
93
91
  "ui:no-object-options": true,
94
92
  }),
95
- legend: string("Legend"),
93
+ legend: Type.String({ title: "Legend" }),
96
94
  }),
97
95
  {
98
96
  title: "Images",
@@ -105,11 +103,11 @@ AVOID:
105
103
  ),
106
104
  ),
107
105
  borderRadius: Type.Optional(
108
- roundingRef({
106
+ rounding({
109
107
  default: "rounded-md",
110
108
  }),
111
109
  ),
112
- loop: Type.Optional(loopRef()),
110
+ loop: Type.Optional(loop()),
113
111
  }),
114
112
  });
115
113
 
@@ -1,14 +1,14 @@
1
1
  import { type Static, Type } from "@sinclair/typebox";
2
2
  import { VscLayoutPanelOff } from "react-icons/vsc";
3
3
  import { defineBrickManifest } from "~/shared/brick-manifest";
4
- import { array, defineProps } from "../props/helpers";
5
- import { imageRef } from "../props/image";
6
- import { colorPresetRef } from "../props/color-preset";
7
- import { string, urlOrPageIdRef } from "../props/string";
8
- import { fontSizeRef } from "../props/text";
4
+ import { defineProps } from "../props/helpers";
5
+ import { image } from "../props/image";
6
+ import { colorPreset } from "../props/color-preset";
7
+ import { urlOrPageId } from "../props/string";
8
+ import { fontSize } from "../props/text";
9
9
  import type { BrickProps } from "../props/types";
10
10
  import { toLLMSchema } from "~/shared/utils/llm";
11
- import { cssLengthRef } from "../props/css-length";
11
+ import { cssLength } from "../props/css-length";
12
12
  import type { BrickExample } from "./_types";
13
13
 
14
14
  export const manifest = defineBrickManifest({
@@ -30,13 +30,13 @@ export const manifest = defineBrickManifest({
30
30
  props: defineProps(
31
31
  {
32
32
  colorPreset: Type.Optional(
33
- colorPresetRef({
33
+ colorPreset({
34
34
  title: "Color preset",
35
35
  default: { color: "neutral-600" },
36
36
  }),
37
37
  ),
38
38
  padding: Type.Optional(
39
- cssLengthRef({
39
+ cssLength({
40
40
  default: "4rem",
41
41
  description: "Padding inside the footer.",
42
42
  title: "Padding",
@@ -45,17 +45,17 @@ export const manifest = defineBrickManifest({
45
45
  "ui:styleId": "styles:padding",
46
46
  }),
47
47
  ),
48
- logo: Type.Optional(imageRef({ title: "Logo", "ui:no-object-options": true, "ui:no-alt-text": true })),
49
- fontSize: Type.Optional(fontSizeRef({ default: "text-sm", "ui:no-extra-large-sizes": true })),
48
+ logo: Type.Optional(image({ title: "Logo", "ui:no-object-options": true, "ui:no-alt-text": true })),
49
+ fontSize: Type.Optional(fontSize({ default: "text-sm", "ui:no-extra-large-sizes": true })),
50
50
  // rows:Type.Optional(number("Rows", { default: 1, "ui:field": "slider", minimum: 1, maximum: 5 })),
51
- linksSections: array(
51
+ linksSections: Type.Array(
52
52
  Type.Object(
53
53
  {
54
- sectionTitle: string("Title"),
55
- links: array(
54
+ sectionTitle: Type.String({ title: "Title" }),
55
+ links: Type.Array(
56
56
  Type.Object({
57
- title: string("Title"),
58
- url: urlOrPageIdRef(),
57
+ title: Type.String({ title: "Title" }),
58
+ url: urlOrPageId(),
59
59
  }),
60
60
  {
61
61
  title: "Links",
@@ -91,6 +91,7 @@ export const manifest = defineBrickManifest({
91
91
  removable: true, // Enable delete button
92
92
  addable: true, // Enable add button
93
93
  },
94
+ default: [],
94
95
  description: "List of Links Sections. Each section contains a title and a list of links.",
95
96
  metadata: {
96
97
  category: "content",
@@ -2,15 +2,13 @@ import { type Static, Type } from "@sinclair/typebox";
2
2
  import { FaWpforms } from "react-icons/fa6";
3
3
  import { defineBrickManifest } from "~/shared/brick-manifest";
4
4
  import { StringEnum } from "~/shared/utils/string-enum";
5
- import { borderRef, roundingRef } from "../props/border";
5
+ import { border, rounding } from "../props/border";
6
6
  import { datarecord } from "../props/datarecord";
7
7
  import { defineProps, group } from "../props/helpers";
8
- import { string } from "../props/string";
9
- import type { BrickProps } from "../props/types";
10
- import { fontSizeRef } from "../props/text";
11
- import { colorPresetRef } from "../props/color-preset";
12
- import { directionRef } from "../props/direction";
13
- import { cssLengthRef } from "../props/css-length";
8
+ import { fontSize } from "../props/text";
9
+ import { colorPreset } from "../props/color-preset";
10
+ import { direction } from "../props/direction";
11
+ import { cssLength } from "../props/css-length";
14
12
  import type { BrickExample } from "./_types";
15
13
 
16
14
  export const manifest = defineBrickManifest({
@@ -65,13 +63,13 @@ DO
65
63
  "ui:responsive": "desktop",
66
64
  }),
67
65
  colorPreset: Type.Optional(
68
- colorPresetRef({
66
+ colorPreset({
69
67
  title: "Color",
70
68
  default: "base-200",
71
69
  }),
72
70
  ),
73
71
  direction: Type.Optional(
74
- directionRef({
72
+ direction({
75
73
  title: "Direction",
76
74
  description: "The direction of the form fields",
77
75
  default: "flex-col",
@@ -80,7 +78,7 @@ DO
80
78
  }),
81
79
  ),
82
80
  padding: Type.Optional(
83
- cssLengthRef({
81
+ cssLength({
84
82
  default: "2rem",
85
83
  description: "Padding inside the form.",
86
84
  title: "Padding",
@@ -90,12 +88,12 @@ DO
90
88
  }),
91
89
  ),
92
90
  rounding: Type.Optional(
93
- roundingRef({
91
+ rounding({
94
92
  default: "rounded-md",
95
93
  }),
96
94
  ),
97
- border: Type.Optional(borderRef({})),
98
- fontSize: Type.Optional(fontSizeRef({ default: "inherit", "ui:no-extra-large-sizes": true })),
95
+ border: Type.Optional(border({})),
96
+ fontSize: Type.Optional(fontSize({ default: "inherit", "ui:no-extra-large-sizes": true })),
99
97
  button: group({
100
98
  title: "Button",
101
99
  children: {
@@ -129,7 +127,7 @@ DO
129
127
  },
130
128
  }),
131
129
  ),
132
- rounding: Type.Optional(roundingRef({ default: "rounded-md" })),
130
+ rounding: rounding({ default: "rounded-md" }),
133
131
  },
134
132
  }),
135
133
 
@@ -153,7 +151,8 @@ DO
153
151
  }),
154
152
  ),
155
153
  buttonLabel: Type.Optional(
156
- string("Button Label", {
154
+ Type.String({
155
+ title: "Button label",
157
156
  default: "Submit",
158
157
  metadata: { category: "content" },
159
158
  }),
@@ -1,14 +1,14 @@
1
1
  import { defineBrickManifest } from "~/shared/brick-manifest";
2
2
  import { defineProps } from "../props/helpers";
3
- import { textContentRef } from "../props/text";
3
+ import { textContent } from "../props/text";
4
4
  import { BsAlphabetUppercase } from "react-icons/bs";
5
5
  import type { BrickProps } from "../props/types";
6
6
  import { Type } from "@sinclair/typebox";
7
- import { shadowRef, textShadowRef } from "../props/effects";
8
- import { borderRef, roundingRef } from "../props/border";
9
- import { colorPresetRef } from "../props/color-preset";
10
- import { alignItemsRef, justifyContentRef } from "../props/align";
11
- import { cssLengthRef } from "../props/css-length";
7
+ import { shadow, textShadow } from "../props/effects";
8
+ import { border, rounding } from "../props/border";
9
+ import { colorPreset } from "../props/color-preset";
10
+ import { alignItems, justifyContent } from "../props/align";
11
+ import { cssLength } from "../props/css-length";
12
12
  import type { BrickExample } from "./_types";
13
13
 
14
14
  export const manifest = defineBrickManifest({
@@ -64,29 +64,29 @@ DO
64
64
  staticClasses: "flex-col",
65
65
 
66
66
  props: defineProps({
67
- content: textContentRef({
67
+ content: textContent({
68
68
  title: "Hero title",
69
69
  default: "<h1 style='text-align:center'>Lorem Ipsum<br />dolor sit amet</h1>",
70
70
  }),
71
71
  tagline: Type.Optional(
72
- textContentRef({
72
+ textContent({
73
73
  title: "Hero tagline",
74
74
  // default: "<p style='text-align:center'>Use our platform to build your business with confidence.</p>",
75
75
  }),
76
76
  ),
77
77
  colorPreset: Type.Optional(
78
- colorPresetRef({
78
+ colorPreset({
79
79
  title: "Color",
80
80
  }),
81
81
  ),
82
82
 
83
83
  textShadow: Type.Optional(
84
- textShadowRef({
84
+ textShadow({
85
85
  default: "text-shadow-sm",
86
86
  }),
87
87
  ),
88
88
  padding: Type.Optional(
89
- cssLengthRef({
89
+ cssLength({
90
90
  default: "6rem",
91
91
  description: "Padding inside the hero.",
92
92
  "ai:instructions": "Use only a single value like '1rem' or '10px'",
@@ -96,20 +96,18 @@ DO
96
96
  "ui:styleId": "styles:padding",
97
97
  }),
98
98
  ),
99
- rounding: Type.Optional(
100
- roundingRef({
101
- default: "rounded-md",
102
- }),
103
- ),
104
- border: Type.Optional(borderRef()),
105
- shadow: Type.Optional(shadowRef()),
99
+ rounding: rounding({
100
+ default: "rounded-md",
101
+ }),
102
+ border: Type.Optional(border()),
103
+ shadow: Type.Optional(shadow()),
106
104
  justifyContent: Type.Optional(
107
- justifyContentRef({
105
+ justifyContent({
108
106
  default: "justify-center",
109
107
  }),
110
108
  ),
111
109
  alignItems: Type.Optional(
112
- alignItemsRef({
110
+ alignItems({
113
111
  default: "items-center",
114
112
  }),
115
113
  ),
@@ -1,12 +1,11 @@
1
1
  import { defineBrickManifest } from "~/shared/brick-manifest";
2
2
  import { defineProps } from "../props/helpers";
3
3
  import { PiConfetti } from "react-icons/pi";
4
- import { iconRef, urlOrPageIdRef } from "../props/string";
5
- import type { BrickProps } from "../props/types";
4
+ import { icon, urlOrPageId } from "../props/string";
6
5
  import { Type } from "@sinclair/typebox";
7
- import { cssLengthRef } from "../props/css-length";
8
- import { colorRef } from "../props/color";
9
- import { loopRef } from "../props/dynamic";
6
+ import { cssLength } from "../props/css-length";
7
+ import { color } from "../props/color";
8
+ import { loop } from "../props/dynamic";
10
9
  import type { BrickExample } from "./_types";
11
10
 
12
11
  export const manifest = defineBrickManifest({
@@ -63,11 +62,11 @@ AVOID:
63
62
  icon: PiConfetti,
64
63
  props: defineProps(
65
64
  {
66
- icon: iconRef({
65
+ icon: icon({
67
66
  default: "mdi:heart",
68
67
  }),
69
68
  size: Type.Optional(
70
- cssLengthRef({
69
+ cssLength({
71
70
  title: "Size",
72
71
  description: "The size of the icon. Can be a CSS length value (e.g. '2em', '24px')",
73
72
  default: "1em",
@@ -76,14 +75,14 @@ AVOID:
76
75
  }),
77
76
  ),
78
77
  color: Type.Optional(
79
- colorRef({
78
+ color({
80
79
  title: "Color",
81
80
  default: "currentColor",
82
81
  "ui:hide-color-label": true,
83
82
  }),
84
83
  ),
85
- link: Type.Optional(urlOrPageIdRef({ title: "Link" })),
86
- loop: Type.Optional(loopRef()),
84
+ link: Type.Optional(urlOrPageId({ title: "Link" })),
85
+ loop: Type.Optional(loop()),
87
86
  },
88
87
  { noGrow: true },
89
88
  ),