@upstart.gg/sdk 0.0.135 → 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 (473) hide show
  1. package/dist/shared/ai/schemas.d.ts +11 -2
  2. package/dist/shared/ai/schemas.d.ts.map +1 -1
  3. package/dist/shared/ai/schemas.js +38 -8
  4. package/dist/shared/ai/schemas.js.map +1 -1
  5. package/dist/shared/ai/types.d.ts +93 -81
  6. package/dist/shared/ai/types.d.ts.map +1 -1
  7. package/dist/shared/ajv.js +33 -32
  8. package/dist/shared/ajv.js.map +1 -1
  9. package/dist/shared/attributes.d.ts +86 -86
  10. package/dist/shared/attributes.d.ts.map +1 -1
  11. package/dist/shared/attributes.js +22 -25
  12. package/dist/shared/brick-manifest.d.ts +8 -5
  13. package/dist/shared/brick-manifest.d.ts.map +1 -1
  14. package/dist/shared/brick-manifest.js +3 -18
  15. package/dist/shared/bricks/manifests/_types.d.ts +9 -0
  16. package/dist/shared/bricks/manifests/_types.d.ts.map +1 -0
  17. package/dist/shared/bricks/manifests/_types.js +3 -0
  18. package/dist/shared/bricks/manifests/accordion.manifest.d.ts +4 -8
  19. package/dist/shared/bricks/manifests/accordion.manifest.d.ts.map +1 -1
  20. package/dist/shared/bricks/manifests/accordion.manifest.js +13 -20
  21. package/dist/shared/bricks/manifests/all-manifests.d.ts.map +1 -1
  22. package/dist/shared/bricks/manifests/all-manifests.js +44 -43
  23. package/dist/shared/bricks/manifests/all-props.d.ts +1501 -0
  24. package/dist/shared/bricks/manifests/all-props.d.ts.map +1 -0
  25. package/dist/shared/bricks/manifests/all-props.js +243 -0
  26. package/dist/shared/bricks/manifests/all-props.js.map +1 -0
  27. package/dist/shared/bricks/manifests/box.manifest.d.ts +4 -8
  28. package/dist/shared/bricks/manifests/box.manifest.d.ts.map +1 -1
  29. package/dist/shared/bricks/manifests/box.manifest.js +16 -20
  30. package/dist/shared/bricks/manifests/button.manifest.d.ts +5 -12
  31. package/dist/shared/bricks/manifests/button.manifest.d.ts.map +1 -1
  32. package/dist/shared/bricks/manifests/button.manifest.js +13 -20
  33. package/dist/shared/bricks/manifests/card.manifest.d.ts +10 -9
  34. package/dist/shared/bricks/manifests/card.manifest.d.ts.map +1 -1
  35. package/dist/shared/bricks/manifests/card.manifest.js +18 -20
  36. package/dist/shared/bricks/manifests/carousel.manifest.d.ts +4 -8
  37. package/dist/shared/bricks/manifests/carousel.manifest.d.ts.map +1 -1
  38. package/dist/shared/bricks/manifests/carousel.manifest.js +15 -20
  39. package/dist/shared/bricks/manifests/footer.manifest.d.ts +5 -9
  40. package/dist/shared/bricks/manifests/footer.manifest.d.ts.map +1 -1
  41. package/dist/shared/bricks/manifests/footer.manifest.js +13 -20
  42. package/dist/shared/bricks/manifests/form.manifest.d.ts +5 -9
  43. package/dist/shared/bricks/manifests/form.manifest.d.ts.map +1 -1
  44. package/dist/shared/bricks/manifests/form.manifest.js +13 -20
  45. package/dist/shared/bricks/manifests/hero.manifest.d.ts +4 -8
  46. package/dist/shared/bricks/manifests/hero.manifest.d.ts.map +1 -1
  47. package/dist/shared/bricks/manifests/hero.manifest.js +13 -20
  48. package/dist/shared/bricks/manifests/html.manifest.d.ts +3 -7
  49. package/dist/shared/bricks/manifests/html.manifest.d.ts.map +1 -1
  50. package/dist/shared/bricks/manifests/html.manifest.js +8 -20
  51. package/dist/shared/bricks/manifests/icon.manifest.d.ts +3 -7
  52. package/dist/shared/bricks/manifests/icon.manifest.d.ts.map +1 -1
  53. package/dist/shared/bricks/manifests/icon.manifest.js +13 -20
  54. package/dist/shared/bricks/manifests/image.manifest.d.ts +3 -2
  55. package/dist/shared/bricks/manifests/image.manifest.d.ts.map +1 -1
  56. package/dist/shared/bricks/manifests/image.manifest.js +16 -20
  57. package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts +4 -8
  58. package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts.map +1 -1
  59. package/dist/shared/bricks/manifests/images-gallery.manifest.js +15 -20
  60. package/dist/shared/bricks/manifests/map.manifest.d.ts +3 -7
  61. package/dist/shared/bricks/manifests/map.manifest.d.ts.map +1 -1
  62. package/dist/shared/bricks/manifests/map.manifest.js +11 -20
  63. package/dist/shared/bricks/manifests/navbar.manifest.d.ts +7 -11
  64. package/dist/shared/bricks/manifests/navbar.manifest.d.ts.map +1 -1
  65. package/dist/shared/bricks/manifests/navbar.manifest.js +15 -20
  66. package/dist/shared/bricks/manifests/sidebar.manifest.d.ts +3 -7
  67. package/dist/shared/bricks/manifests/sidebar.manifest.d.ts.map +1 -1
  68. package/dist/shared/bricks/manifests/sidebar.manifest.js +13 -20
  69. package/dist/shared/bricks/manifests/social-links.manifest.d.ts +4 -8
  70. package/dist/shared/bricks/manifests/social-links.manifest.d.ts.map +1 -1
  71. package/dist/shared/bricks/manifests/social-links.manifest.js +14 -20
  72. package/dist/shared/bricks/manifests/spacer.manifest.d.ts +3 -7
  73. package/dist/shared/bricks/manifests/spacer.manifest.d.ts.map +1 -1
  74. package/dist/shared/bricks/manifests/spacer.manifest.js +8 -20
  75. package/dist/shared/bricks/manifests/table.manifest.d.ts +6 -10
  76. package/dist/shared/bricks/manifests/table.manifest.d.ts.map +1 -1
  77. package/dist/shared/bricks/manifests/table.manifest.js +15 -20
  78. package/dist/shared/bricks/manifests/tabs.manifest.d.ts +6 -10
  79. package/dist/shared/bricks/manifests/tabs.manifest.d.ts.map +1 -1
  80. package/dist/shared/bricks/manifests/tabs.manifest.js +15 -20
  81. package/dist/shared/bricks/manifests/testimonials.manifest.d.ts +4 -8
  82. package/dist/shared/bricks/manifests/testimonials.manifest.d.ts.map +1 -1
  83. package/dist/shared/bricks/manifests/testimonials.manifest.js +18 -20
  84. package/dist/shared/bricks/manifests/text.manifest.d.ts +4 -12
  85. package/dist/shared/bricks/manifests/text.manifest.d.ts.map +1 -1
  86. package/dist/shared/bricks/manifests/text.manifest.js +13 -20
  87. package/dist/shared/bricks/manifests/timeline.manifest.d.ts +9 -13
  88. package/dist/shared/bricks/manifests/timeline.manifest.d.ts.map +1 -1
  89. package/dist/shared/bricks/manifests/timeline.manifest.js +15 -20
  90. package/dist/shared/bricks/manifests/video.manifest.d.ts +3 -7
  91. package/dist/shared/bricks/manifests/video.manifest.d.ts.map +1 -1
  92. package/dist/shared/bricks/manifests/video.manifest.js +11 -20
  93. package/dist/shared/bricks/props/align.d.ts +0 -3
  94. package/dist/shared/bricks/props/align.d.ts.map +1 -1
  95. package/dist/shared/bricks/props/align.js +4 -11
  96. package/dist/shared/bricks/props/background.d.ts +2 -8
  97. package/dist/shared/bricks/props/background.d.ts.map +1 -1
  98. package/dist/shared/bricks/props/background.js +4 -9
  99. package/dist/shared/bricks/props/border.d.ts +0 -7
  100. package/dist/shared/bricks/props/border.d.ts.map +1 -1
  101. package/dist/shared/bricks/props/border.js +5 -10
  102. package/dist/shared/bricks/props/color-preset.d.ts +316 -6
  103. package/dist/shared/bricks/props/color-preset.d.ts.map +1 -1
  104. package/dist/shared/bricks/props/color-preset.js +2 -5
  105. package/dist/shared/bricks/props/color.d.ts +3 -5
  106. package/dist/shared/bricks/props/color.d.ts.map +1 -1
  107. package/dist/shared/bricks/props/color.js +3 -8
  108. package/dist/shared/bricks/props/common.d.ts.map +1 -1
  109. package/dist/shared/bricks/props/common.js +4 -5
  110. package/dist/shared/bricks/props/css-length.d.ts +0 -1
  111. package/dist/shared/bricks/props/css-length.d.ts.map +1 -1
  112. package/dist/shared/bricks/props/css-length.js +1 -4
  113. package/dist/shared/bricks/props/datasource.d.ts +3 -3
  114. package/dist/shared/bricks/props/datasource.d.ts.map +1 -1
  115. package/dist/shared/bricks/props/datasource.js +74 -76
  116. package/dist/shared/bricks/props/datasource.js.map +1 -1
  117. package/dist/shared/bricks/props/date.js +21 -4
  118. package/dist/shared/bricks/props/date.js.map +1 -1
  119. package/dist/shared/bricks/props/direction.d.ts +1 -2
  120. package/dist/shared/bricks/props/direction.d.ts.map +1 -1
  121. package/dist/shared/bricks/props/direction.js +4 -7
  122. package/dist/shared/bricks/props/dynamic.d.ts +5 -67
  123. package/dist/shared/bricks/props/dynamic.d.ts.map +1 -1
  124. package/dist/shared/bricks/props/dynamic.js +6 -24
  125. package/dist/shared/bricks/props/effects.d.ts +1 -3
  126. package/dist/shared/bricks/props/effects.d.ts.map +1 -1
  127. package/dist/shared/bricks/props/effects.js +4 -9
  128. package/dist/shared/bricks/props/geolocation.d.ts.map +1 -1
  129. package/dist/shared/bricks/props/geolocation.js +3 -6
  130. package/dist/shared/bricks/props/geolocation.js.map +1 -1
  131. package/dist/shared/bricks/props/helpers.js +5 -6
  132. package/dist/shared/bricks/props/image.d.ts +2 -8
  133. package/dist/shared/bricks/props/image.d.ts.map +1 -1
  134. package/dist/shared/bricks/props/image.js +4 -7
  135. package/dist/shared/bricks/props/string.d.ts +2 -5
  136. package/dist/shared/bricks/props/string.d.ts.map +1 -1
  137. package/dist/shared/bricks/props/string.js +3 -10
  138. package/dist/shared/bricks/props/tags.d.ts +0 -1
  139. package/dist/shared/bricks/props/tags.d.ts.map +1 -1
  140. package/dist/shared/bricks/props/tags.js +3 -6
  141. package/dist/shared/bricks/props/text.d.ts +0 -3
  142. package/dist/shared/bricks/props/text.d.ts.map +1 -1
  143. package/dist/shared/bricks/props/text.js +4 -11
  144. package/dist/shared/bricks/props/types.d.ts +2 -2
  145. package/dist/shared/bricks/props/types.d.ts.map +1 -1
  146. package/dist/shared/bricks.d.ts +64 -152
  147. package/dist/shared/bricks.d.ts.map +1 -1
  148. package/dist/shared/bricks.js +49 -52
  149. package/dist/shared/chunk-2O5HVPID.js +41 -0
  150. package/dist/shared/chunk-2O5HVPID.js.map +1 -0
  151. package/dist/shared/{chunk-F22LDHEO.js → chunk-2U5U3CCJ.js} +3 -18
  152. package/dist/shared/chunk-2U5U3CCJ.js.map +1 -0
  153. package/dist/shared/{chunk-LXAO3JA6.js → chunk-4KY7OZWD.js} +35 -35
  154. package/dist/shared/chunk-4KY7OZWD.js.map +1 -0
  155. package/dist/shared/{chunk-TNMNMYOB.js → chunk-5RCC2STG.js} +2 -13
  156. package/dist/shared/chunk-5RCC2STG.js.map +1 -0
  157. package/dist/shared/{chunk-V3UA3LRK.js → chunk-6AE7UD73.js} +56 -37
  158. package/dist/shared/chunk-6AE7UD73.js.map +1 -0
  159. package/dist/shared/chunk-7U5WPHXB.js +346 -0
  160. package/dist/shared/chunk-7U5WPHXB.js.map +1 -0
  161. package/dist/shared/{chunk-Q4NPPLEU.js → chunk-BHARJBEK.js} +2 -9
  162. package/dist/shared/chunk-BHARJBEK.js.map +1 -0
  163. package/dist/shared/chunk-BZTWZC77.js +530 -0
  164. package/dist/shared/chunk-BZTWZC77.js.map +1 -0
  165. package/dist/shared/{chunk-QSND5IWT.js → chunk-DCM4732T.js} +24 -43
  166. package/dist/shared/chunk-DCM4732T.js.map +1 -0
  167. package/dist/shared/{chunk-W6MRYRGJ.js → chunk-DRQKKPTX.js} +6 -20
  168. package/dist/shared/chunk-DRQKKPTX.js.map +1 -0
  169. package/dist/shared/{chunk-CSF2WQX2.js → chunk-EID5HPF3.js} +15 -12
  170. package/dist/shared/chunk-EID5HPF3.js.map +1 -0
  171. package/dist/shared/chunk-EMF5TCPX.js +389 -0
  172. package/dist/shared/chunk-EMF5TCPX.js.map +1 -0
  173. package/dist/shared/chunk-FD7YYFRI.js +225 -0
  174. package/dist/shared/chunk-FD7YYFRI.js.map +1 -0
  175. package/dist/shared/{chunk-MLZT7MRQ.js → chunk-FHA4DFIM.js} +26 -27
  176. package/dist/shared/chunk-FHA4DFIM.js.map +1 -0
  177. package/dist/shared/{chunk-GRMY35BU.js → chunk-FUUSAMN3.js} +165 -40
  178. package/dist/shared/chunk-FUUSAMN3.js.map +1 -0
  179. package/dist/shared/chunk-GDYCCB3B.js +22 -0
  180. package/dist/shared/chunk-GDYCCB3B.js.map +1 -0
  181. package/dist/shared/chunk-GLV6QIIM.js +41 -0
  182. package/dist/shared/chunk-GLV6QIIM.js.map +1 -0
  183. package/dist/shared/chunk-H6TMBELF.js +374 -0
  184. package/dist/shared/chunk-H6TMBELF.js.map +1 -0
  185. package/dist/shared/{chunk-BMWRR4DI.js → chunk-HUWMIXNN.js} +26 -28
  186. package/dist/shared/chunk-HUWMIXNN.js.map +1 -0
  187. package/dist/shared/chunk-HY7JOP3J.js +150 -0
  188. package/dist/shared/chunk-HY7JOP3J.js.map +1 -0
  189. package/dist/shared/{chunk-TFGGYU6Y.js → chunk-IEMCCHM4.js} +7 -12
  190. package/dist/shared/chunk-IEMCCHM4.js.map +1 -0
  191. package/dist/shared/{chunk-TB3X4LRQ.js → chunk-J45LSQT6.js} +2 -2
  192. package/dist/shared/chunk-J45LSQT6.js.map +1 -0
  193. package/dist/shared/{chunk-WGDUJSSS.js → chunk-JF52BBFD.js} +27 -28
  194. package/dist/shared/chunk-JF52BBFD.js.map +1 -0
  195. package/dist/shared/{chunk-GPCI2N2A.js → chunk-JLDAS3VE.js} +136 -33
  196. package/dist/shared/chunk-JLDAS3VE.js.map +1 -0
  197. package/dist/shared/{chunk-SE6O65HC.js → chunk-JSDKK5QN.js} +10 -23
  198. package/dist/shared/chunk-JSDKK5QN.js.map +1 -0
  199. package/dist/shared/chunk-JW7MQAU4.js +354 -0
  200. package/dist/shared/chunk-JW7MQAU4.js.map +1 -0
  201. package/dist/shared/{chunk-RV7AYVFV.js → chunk-KKWT3OXF.js} +4 -19
  202. package/dist/shared/chunk-KKWT3OXF.js.map +1 -0
  203. package/dist/shared/{chunk-TEO6TJOM.js → chunk-KQH6V22E.js} +36 -35
  204. package/dist/shared/{chunk-TEO6TJOM.js.map → chunk-KQH6V22E.js.map} +1 -1
  205. package/dist/shared/{chunk-3KLRW4I2.js → chunk-LGDDJJHK.js} +212 -156
  206. package/dist/shared/chunk-LGDDJJHK.js.map +1 -0
  207. package/dist/shared/{chunk-QL3T5HJQ.js → chunk-LGGPCCCY.js} +3 -3
  208. package/dist/shared/chunk-LGGPCCCY.js.map +1 -0
  209. package/dist/shared/{chunk-2HO4FHLM.js → chunk-LPAQ47C6.js} +137 -171
  210. package/dist/shared/chunk-LPAQ47C6.js.map +1 -0
  211. package/dist/shared/chunk-MO6CRLQA.js +73 -0
  212. package/dist/shared/chunk-MO6CRLQA.js.map +1 -0
  213. package/dist/shared/{chunk-SHUGHJ7V.js → chunk-MYOLWTB2.js} +29 -32
  214. package/dist/shared/chunk-MYOLWTB2.js.map +1 -0
  215. package/dist/shared/{chunk-Z2NTDFB4.js → chunk-O24RDXZS.js} +34 -34
  216. package/dist/shared/chunk-O24RDXZS.js.map +1 -0
  217. package/dist/shared/{chunk-BPBKHEQ5.js → chunk-OJ6KL7FU.js} +1 -8
  218. package/dist/shared/chunk-OJ6KL7FU.js.map +1 -0
  219. package/dist/shared/{chunk-GCQURRVB.js → chunk-PF75LW33.js} +24 -27
  220. package/dist/shared/chunk-PF75LW33.js.map +1 -0
  221. package/dist/shared/{chunk-EWSPTRDL.js → chunk-QEJGPYTB.js} +132 -48
  222. package/dist/shared/chunk-QEJGPYTB.js.map +1 -0
  223. package/dist/shared/{chunk-P3RH5URN.js → chunk-SK2O7GFC.js} +17 -18
  224. package/dist/shared/chunk-SK2O7GFC.js.map +1 -0
  225. package/dist/shared/{chunk-UQF52PWK.js → chunk-SQXZNGQF.js} +8 -23
  226. package/dist/shared/chunk-SQXZNGQF.js.map +1 -0
  227. package/dist/shared/{chunk-NTLAKMMQ.js → chunk-SRYBJ6NQ.js} +6 -17
  228. package/dist/shared/chunk-SRYBJ6NQ.js.map +1 -0
  229. package/dist/shared/{chunk-O5PLB3YB.js → chunk-T6C3NG2L.js} +68 -59
  230. package/dist/shared/chunk-T6C3NG2L.js.map +1 -0
  231. package/dist/shared/{chunk-U7TVEPKA.js → chunk-TBT2PTGB.js} +41 -33
  232. package/dist/shared/chunk-TBT2PTGB.js.map +1 -0
  233. package/dist/shared/{chunk-CKFRSHR2.js → chunk-U4KZUX37.js} +18 -19
  234. package/dist/shared/chunk-U4KZUX37.js.map +1 -0
  235. package/dist/shared/{chunk-4WI23M7W.js → chunk-VSLRTXLF.js} +11 -4
  236. package/dist/shared/chunk-VSLRTXLF.js.map +1 -0
  237. package/dist/shared/{chunk-BHC2A43S.js → chunk-VTCHJT4O.js} +3 -3
  238. package/dist/shared/{chunk-BHC2A43S.js.map → chunk-VTCHJT4O.js.map} +1 -1
  239. package/dist/shared/{chunk-DRTGM2UJ.js → chunk-W2RFDII5.js} +3 -3
  240. package/dist/shared/chunk-W2RFDII5.js.map +1 -0
  241. package/dist/shared/{chunk-Y74LZNND.js → chunk-WPZV3LYL.js} +4 -10
  242. package/dist/shared/chunk-WPZV3LYL.js.map +1 -0
  243. package/dist/shared/chunk-XFZQGRRL.js +101 -0
  244. package/dist/shared/chunk-XFZQGRRL.js.map +1 -0
  245. package/dist/shared/{chunk-QQQ3FYPG.js → chunk-XK2CERPB.js} +147 -31
  246. package/dist/shared/chunk-XK2CERPB.js.map +1 -0
  247. package/dist/shared/chunk-XNRSL6FL.js +78 -0
  248. package/dist/shared/chunk-XNRSL6FL.js.map +1 -0
  249. package/dist/shared/{chunk-2RK3CPYJ.js → chunk-XXPSM6UA.js} +9 -12
  250. package/dist/shared/chunk-XXPSM6UA.js.map +1 -0
  251. package/dist/shared/{chunk-ZLYIRH2B.js → chunk-ZRBTAC3G.js} +3 -18
  252. package/dist/shared/chunk-ZRBTAC3G.js.map +1 -0
  253. package/dist/shared/{chunk-Z35I5JM5.js → chunk-ZVJNRKT4.js} +18 -20
  254. package/dist/shared/chunk-ZVJNRKT4.js.map +1 -0
  255. package/dist/shared/context.d.ts +402 -22
  256. package/dist/shared/context.d.ts.map +1 -1
  257. package/dist/shared/context.js +93 -0
  258. package/dist/shared/context.js.map +1 -1
  259. package/dist/shared/datarecords/external/airtable/types.d.ts +1 -1
  260. package/dist/shared/datarecords/external/airtable/types.d.ts.map +1 -1
  261. package/dist/shared/datarecords/external/airtable/types.js +2 -1
  262. package/dist/shared/datarecords/types.d.ts +10 -63
  263. package/dist/shared/datarecords/types.d.ts.map +1 -1
  264. package/dist/shared/datarecords/types.js +5 -6
  265. package/dist/shared/datasources/external/instagram/feed/schema.d.ts +1 -1
  266. package/dist/shared/datasources/external/instagram/feed/schema.d.ts.map +1 -1
  267. package/dist/shared/datasources/external/instagram/feed/schema.js +4 -1
  268. package/dist/shared/datasources/external/instagram/feed/schema.js.map +1 -1
  269. package/dist/shared/datasources/external/mastodon/status/schema.d.ts +6 -6
  270. package/dist/shared/datasources/external/mastodon/status/schema.d.ts.map +1 -1
  271. package/dist/shared/datasources/external/mastodon/status/schema.js +6 -19
  272. package/dist/shared/datasources/external/mastodon/status/schema.js.map +1 -1
  273. package/dist/shared/datasources/external/meta/oauth/config.d.ts +2 -2
  274. package/dist/shared/datasources/external/meta/oauth/config.d.ts.map +1 -1
  275. package/dist/shared/datasources/external/meta/oauth/config.js +4 -1
  276. package/dist/shared/datasources/external/meta/oauth/config.js.map +1 -1
  277. package/dist/shared/datasources/external/threads/media/fetcher.js +3 -3
  278. package/dist/shared/datasources/external/threads/media/schema.d.ts +1 -1
  279. package/dist/shared/datasources/external/threads/media/schema.d.ts.map +1 -1
  280. package/dist/shared/datasources/external/threads/media/schema.js +4 -8
  281. package/dist/shared/datasources/external/threads/media/schema.js.map +1 -1
  282. package/dist/shared/datasources/internal/blog/schema.d.ts +1 -1
  283. package/dist/shared/datasources/internal/blog/schema.d.ts.map +1 -1
  284. package/dist/shared/datasources/internal/blog/schema.js +4 -1
  285. package/dist/shared/datasources/internal/blog/schema.js.map +1 -1
  286. package/dist/shared/datasources/types.d.ts +25 -25
  287. package/dist/shared/datasources/types.d.ts.map +1 -1
  288. package/dist/shared/datasources/types.js +3 -16
  289. package/dist/shared/datasources.d.ts +1 -1
  290. package/dist/shared/datasources.d.ts.map +1 -1
  291. package/dist/shared/datasources.js +1 -3
  292. package/dist/shared/datasources.js.map +1 -1
  293. package/dist/shared/images.d.ts +1 -1
  294. package/dist/shared/images.d.ts.map +1 -1
  295. package/dist/shared/images.js +4 -38
  296. package/dist/shared/images.js.map +1 -1
  297. package/dist/shared/page.d.ts +139 -22
  298. package/dist/shared/page.d.ts.map +1 -1
  299. package/dist/shared/page.js +51 -49
  300. package/dist/shared/responsive.js +1 -1
  301. package/dist/shared/site.d.ts +80 -197
  302. package/dist/shared/site.d.ts.map +1 -1
  303. package/dist/shared/site.js +55 -114
  304. package/dist/shared/site.js.map +1 -1
  305. package/dist/shared/sitemap.d.ts +6 -327
  306. package/dist/shared/sitemap.d.ts.map +1 -1
  307. package/dist/shared/sitemap.js +50 -58
  308. package/dist/shared/theme.d.ts +0 -37
  309. package/dist/shared/theme.d.ts.map +1 -1
  310. package/dist/shared/theme.js +4 -21
  311. package/dist/shared/utils/llm.d.ts +1 -10
  312. package/dist/shared/utils/llm.d.ts.map +1 -1
  313. package/dist/shared/utils/llm.js +1 -18
  314. package/dist/shared/utils/schema.d.ts +3 -2
  315. package/dist/shared/utils/schema.d.ts.map +1 -1
  316. package/dist/shared/utils/schema.js +2 -17
  317. package/dist/shared/utils/string-enum.d.ts +9 -3
  318. package/dist/shared/utils/string-enum.d.ts.map +1 -1
  319. package/dist/shared/utils/string-enum.js +1 -1
  320. package/package.json +21 -5
  321. package/src/shared/ai/schemas.ts +41 -10
  322. package/src/shared/ai/types.ts +78 -76
  323. package/src/shared/attributes.ts +56 -46
  324. package/src/shared/brick-manifest.ts +5 -6
  325. package/src/shared/bricks/manifests/_types.ts +9 -0
  326. package/src/shared/bricks/manifests/accordion.manifest.ts +138 -171
  327. package/src/shared/bricks/manifests/all-manifests.ts +1 -0
  328. package/src/shared/bricks/manifests/all-props.ts +165 -0
  329. package/src/shared/bricks/manifests/box.manifest.ts +214 -150
  330. package/src/shared/bricks/manifests/button.manifest.ts +204 -79
  331. package/src/shared/bricks/manifests/card.manifest.ts +229 -43
  332. package/src/shared/bricks/manifests/carousel.manifest.ts +165 -35
  333. package/src/shared/bricks/manifests/footer.manifest.ts +18 -20
  334. package/src/shared/bricks/manifests/form.manifest.ts +136 -22
  335. package/src/shared/bricks/manifests/hero.manifest.ts +121 -38
  336. package/src/shared/bricks/manifests/html.manifest.ts +2 -5
  337. package/src/shared/bricks/manifests/icon.manifest.ts +225 -46
  338. package/src/shared/bricks/manifests/image.manifest.ts +125 -21
  339. package/src/shared/bricks/manifests/images-gallery.manifest.ts +15 -20
  340. package/src/shared/bricks/manifests/map.manifest.ts +12 -15
  341. package/src/shared/bricks/manifests/navbar.manifest.ts +22 -26
  342. package/src/shared/bricks/manifests/sidebar.manifest.ts +11 -14
  343. package/src/shared/bricks/manifests/social-links.manifest.ts +19 -24
  344. package/src/shared/bricks/manifests/spacer.manifest.ts +2 -5
  345. package/src/shared/bricks/manifests/table.manifest.ts +17 -20
  346. package/src/shared/bricks/manifests/tabs.manifest.ts +16 -21
  347. package/src/shared/bricks/manifests/testimonials.manifest.ts +23 -25
  348. package/src/shared/bricks/manifests/text.manifest.ts +47 -29
  349. package/src/shared/bricks/manifests/timeline.manifest.ts +31 -29
  350. package/src/shared/bricks/manifests/video.manifest.ts +11 -15
  351. package/src/shared/bricks/props/align.ts +0 -13
  352. package/src/shared/bricks/props/background.ts +1 -14
  353. package/src/shared/bricks/props/border.ts +2 -13
  354. package/src/shared/bricks/props/color-preset.ts +9 -10
  355. package/src/shared/bricks/props/color.ts +7 -18
  356. package/src/shared/bricks/props/common.ts +6 -7
  357. package/src/shared/bricks/props/css-length.ts +0 -5
  358. package/src/shared/bricks/props/datasource.ts +72 -74
  359. package/src/shared/bricks/props/direction.ts +1 -5
  360. package/src/shared/bricks/props/dynamic.ts +0 -11
  361. package/src/shared/bricks/props/effects.ts +0 -9
  362. package/src/shared/bricks/props/geolocation.ts +3 -3
  363. package/src/shared/bricks/props/helpers.ts +1 -1
  364. package/src/shared/bricks/props/image.ts +4 -16
  365. package/src/shared/bricks/props/string.ts +6 -19
  366. package/src/shared/bricks/props/tags.ts +0 -5
  367. package/src/shared/bricks/props/tests/background.test.ts +1 -15
  368. package/src/shared/bricks/props/tests/image.test.ts +3 -9
  369. package/src/shared/bricks/props/tests/string.test.ts +2 -26
  370. package/src/shared/bricks/props/text.ts +0 -12
  371. package/src/shared/bricks/props/types.ts +4 -3
  372. package/src/shared/bricks.ts +164 -1025
  373. package/src/shared/context.ts +24 -23
  374. package/src/shared/datarecords/external/airtable/types.ts +12 -11
  375. package/src/shared/datarecords/types.ts +22 -44
  376. package/src/shared/datasources/external/instagram/feed/schema.ts +2 -1
  377. package/src/shared/datasources/external/mastodon/status/schema.ts +4 -19
  378. package/src/shared/datasources/external/meta/oauth/config.ts +2 -1
  379. package/src/shared/datasources/external/threads/media/schema.ts +2 -8
  380. package/src/shared/datasources/internal/blog/schema.ts +2 -1
  381. package/src/shared/datasources/types.ts +64 -79
  382. package/src/shared/datasources.ts +2 -4
  383. package/src/shared/images.ts +12 -18
  384. package/src/shared/page.ts +9 -2
  385. package/src/shared/site.ts +3 -3
  386. package/src/shared/sitemap.ts +3 -68
  387. package/src/shared/tests/attributes.test.ts +2 -0
  388. package/src/shared/theme.ts +81 -96
  389. package/src/shared/utils/llm.ts +5 -191
  390. package/src/shared/utils/schema.ts +71 -244
  391. package/src/shared/utils/string-enum.ts +25 -4
  392. package/src/shared/utils/tests/schema.test.ts +112 -314
  393. package/dist/shared/chunk-2HO4FHLM.js.map +0 -1
  394. package/dist/shared/chunk-2RK3CPYJ.js.map +0 -1
  395. package/dist/shared/chunk-3KLRW4I2.js.map +0 -1
  396. package/dist/shared/chunk-4WI23M7W.js.map +0 -1
  397. package/dist/shared/chunk-6E42XWFH.js +0 -103
  398. package/dist/shared/chunk-6E42XWFH.js.map +0 -1
  399. package/dist/shared/chunk-A2QPY54H.js +0 -13
  400. package/dist/shared/chunk-A2QPY54H.js.map +0 -1
  401. package/dist/shared/chunk-BMWRR4DI.js.map +0 -1
  402. package/dist/shared/chunk-BPBKHEQ5.js.map +0 -1
  403. package/dist/shared/chunk-BW6EFRSF.js +0 -794
  404. package/dist/shared/chunk-BW6EFRSF.js.map +0 -1
  405. package/dist/shared/chunk-CKFRSHR2.js.map +0 -1
  406. package/dist/shared/chunk-CSF2WQX2.js.map +0 -1
  407. package/dist/shared/chunk-D4YQ6ABM.js +0 -338
  408. package/dist/shared/chunk-D4YQ6ABM.js.map +0 -1
  409. package/dist/shared/chunk-DRTGM2UJ.js.map +0 -1
  410. package/dist/shared/chunk-EQMU6NIU.js +0 -1222
  411. package/dist/shared/chunk-EQMU6NIU.js.map +0 -1
  412. package/dist/shared/chunk-EWSPTRDL.js.map +0 -1
  413. package/dist/shared/chunk-F22LDHEO.js.map +0 -1
  414. package/dist/shared/chunk-FVU5PXRC.js +0 -244
  415. package/dist/shared/chunk-FVU5PXRC.js.map +0 -1
  416. package/dist/shared/chunk-GCQURRVB.js.map +0 -1
  417. package/dist/shared/chunk-GPCI2N2A.js.map +0 -1
  418. package/dist/shared/chunk-GRMY35BU.js.map +0 -1
  419. package/dist/shared/chunk-JK2FWFJU.js +0 -15
  420. package/dist/shared/chunk-JK2FWFJU.js.map +0 -1
  421. package/dist/shared/chunk-LXAO3JA6.js.map +0 -1
  422. package/dist/shared/chunk-MLZT7MRQ.js.map +0 -1
  423. package/dist/shared/chunk-NT3IW52F.js +0 -260
  424. package/dist/shared/chunk-NT3IW52F.js.map +0 -1
  425. package/dist/shared/chunk-NTLAKMMQ.js.map +0 -1
  426. package/dist/shared/chunk-O5PLB3YB.js.map +0 -1
  427. package/dist/shared/chunk-P3RH5URN.js.map +0 -1
  428. package/dist/shared/chunk-Q4NPPLEU.js.map +0 -1
  429. package/dist/shared/chunk-QL3T5HJQ.js.map +0 -1
  430. package/dist/shared/chunk-QQQ3FYPG.js.map +0 -1
  431. package/dist/shared/chunk-QSND5IWT.js.map +0 -1
  432. package/dist/shared/chunk-RV7AYVFV.js.map +0 -1
  433. package/dist/shared/chunk-SE6O65HC.js.map +0 -1
  434. package/dist/shared/chunk-SHUGHJ7V.js.map +0 -1
  435. package/dist/shared/chunk-TB3X4LRQ.js.map +0 -1
  436. package/dist/shared/chunk-TFGGYU6Y.js.map +0 -1
  437. package/dist/shared/chunk-TNMNMYOB.js.map +0 -1
  438. package/dist/shared/chunk-U7TVEPKA.js.map +0 -1
  439. package/dist/shared/chunk-UQF52PWK.js.map +0 -1
  440. package/dist/shared/chunk-V3UA3LRK.js.map +0 -1
  441. package/dist/shared/chunk-W6MRYRGJ.js.map +0 -1
  442. package/dist/shared/chunk-WGDUJSSS.js.map +0 -1
  443. package/dist/shared/chunk-WKN566LN.js +0 -29
  444. package/dist/shared/chunk-WKN566LN.js.map +0 -1
  445. package/dist/shared/chunk-X6N463D4.js +0 -222
  446. package/dist/shared/chunk-X6N463D4.js.map +0 -1
  447. package/dist/shared/chunk-X75YV73Q.js +0 -178
  448. package/dist/shared/chunk-X75YV73Q.js.map +0 -1
  449. package/dist/shared/chunk-Y74LZNND.js.map +0 -1
  450. package/dist/shared/chunk-Z2NTDFB4.js.map +0 -1
  451. package/dist/shared/chunk-Z35I5JM5.js.map +0 -1
  452. package/dist/shared/chunk-ZLYIRH2B.js.map +0 -1
  453. package/dist/shared/schema-registry.d.ts +0 -5
  454. package/dist/shared/schema-registry.d.ts.map +0 -1
  455. package/dist/shared/schema-registry.js +0 -119
  456. package/dist/shared/schema-registry.js.map +0 -1
  457. package/dist/shared/tests/schema-registry.test.d.ts +0 -2
  458. package/dist/shared/tests/schema-registry.test.d.ts.map +0 -1
  459. package/dist/shared/utils/schema-registry.d.ts +0 -5
  460. package/dist/shared/utils/schema-registry.d.ts.map +0 -1
  461. package/dist/shared/utils/schema-registry.js +0 -29
  462. package/dist/shared/utils/tests/schema-registry.test.d.ts +0 -2
  463. package/dist/shared/utils/tests/schema-registry.test.d.ts.map +0 -1
  464. package/dist/shared/utils/typed-ref.d.ts +0 -43
  465. package/dist/shared/utils/typed-ref.d.ts.map +0 -1
  466. package/dist/shared/utils/typed-ref.js +0 -10
  467. package/dist/shared/utils/typed-ref.js.map +0 -1
  468. package/src/shared/schema-registry.ts +0 -82
  469. package/src/shared/tests/schema-registry.test.ts +0 -14
  470. package/src/shared/utils/schema-registry.ts +0 -82
  471. package/src/shared/utils/tests/schema-registry.test.ts +0 -13
  472. package/src/shared/utils/typed-ref.ts +0 -53
  473. /package/dist/shared/{utils/schema-registry.js.map → bricks/manifests/_types.js.map} +0 -0
@@ -2,151 +2,153 @@
2
2
  import type { UIMessage } from "ai";
3
3
  import type { Theme } from "../theme";
4
4
  import type { Sitemap } from "../sitemap";
5
- import type { VersionedPage } from "../page";
5
+ import type { Page, VersionedPage } from "../page";
6
6
  import type { PageAttributes, SiteAttributes } from "../attributes";
7
- import type { Brick, Section } from "../bricks";
8
- import type { AskUserChoiceInput, WaitingMessageSchema } from "./schemas";
9
- import type { Datarecord, InternalDatarecord } from "../datarecords/types";
7
+ import type { Brick, Section, SectionSchemaNoBricks } from "../bricks";
8
+ import type { AskUserChoiceInput, ToolInputWaitingMessageType, ToolInputInstructionsType } from "./schemas";
9
+ import type { Datarecord } from "../datarecords/types";
10
10
  import type { InternalDatasource } from "../datasources/types";
11
11
  import type { ImageSearchResultsType } from "../images";
12
- import type { NavbarProps } from "../bricks/manifests/navbar.manifest";
13
- import type { FooterProps } from "../bricks/manifests/footer.manifest";
14
- // ... import your tool and data part types
12
+ import type { Site } from "../site";
15
13
 
16
14
  export type Tools = {
15
+ setSitePrompt: {
16
+ input: { prompt: string };
17
+ output: string;
18
+ };
19
+ getBrickDocs: {
20
+ input: { type: string };
21
+ output: string; // The schema documentation in markdown format
22
+ };
17
23
  askUserChoice: {
18
24
  input: AskUserChoiceInput;
19
25
  output: string | string[] | null; // The user's choice(s
20
26
  };
27
+ editSiteAttributes: {
28
+ input: ToolInputWaitingMessageType & ToolInputInstructionsType;
29
+ output: SiteAttributes;
30
+ };
21
31
  generateImages: {
22
- input: { prompt: string; count: number; aspectRatio: string };
32
+ input: ToolInputWaitingMessageType & { prompt: string; count: number; aspectRatio: string };
23
33
  output: ImageSearchResultsType;
24
34
  };
25
35
  listThemes: {
26
- input: null; // Just type the waiting message for now
36
+ input: unknown;
27
37
  output: Theme[];
28
38
  };
29
39
  createSection: {
30
- input: WaitingMessageSchema; // Just type the waiting message for now
40
+ input: SectionSchemaNoBricks;
31
41
  output: Section;
32
42
  };
33
43
  editSection: {
34
- input: { id: string } & WaitingMessageSchema; // Just type the waiting message for now
44
+ input: { id: string; data: Partial<SectionSchemaNoBricks> };
35
45
  output: Section;
36
46
  };
37
- getSection: {
38
- input: { id: string }; // Just type the waiting message for now
39
- output: Section | string; // Error string if not found
47
+ deleteSection: {
48
+ input: { id: string };
49
+ output: { sections: Section[]; deleted: Section }; // Updated sections or error string if failed
40
50
  };
41
- listSections: {
42
- input: null; // Just type the waiting message for now
43
- output: Section[];
51
+ getSection: {
52
+ input: { id: string };
53
+ output: Section; // Error string if not found
44
54
  };
45
55
  createThemes: {
46
- input: WaitingMessageSchema; // Just type the waiting message for now
56
+ input: ToolInputWaitingMessageType & ToolInputInstructionsType & { count: number };
47
57
  output: Theme[];
48
58
  };
49
59
  getCurrentTheme: {
50
- input: null; // Just type the waiting message for now
60
+ input: unknown;
51
61
  output: Theme; // Theme or message if no theme applied yet
52
62
  };
53
- createSitemap: {
54
- input: WaitingMessageSchema; // Just type the waiting message for now
55
- output: Sitemap;
56
- };
57
- getSitemap: {
58
- input: null; // Just type the waiting message for now
59
- output: Sitemap;
60
- };
63
+ // createSitemap: {
64
+ // input: ToolInputWaitingMessageType & ToolInputInstructionsType;
65
+ // output: Sitemap;
66
+ // };
61
67
  createPage: {
62
- input: WaitingMessageSchema; // Just type the waiting message for now
68
+ input: Pick<Page, "id" | "label"> &
69
+ Pick<PageAttributes, "path"> &
70
+ ToolInputWaitingMessageType &
71
+ ToolInputInstructionsType;
63
72
  output: VersionedPage;
64
73
  };
65
74
  editPage: {
66
- input: WaitingMessageSchema; // Just type the waiting message for now
75
+ input: ToolInputWaitingMessageType & ToolInputInstructionsType & Pick<Page, "id">;
67
76
  output: VersionedPage;
68
77
  };
78
+ undo: {
79
+ input: {
80
+ steps?: number;
81
+ };
82
+ output: boolean;
83
+ };
84
+ setSiteLabel: {
85
+ input: { label: string };
86
+ output: string;
87
+ };
69
88
  getCurrentPage: {
70
- input: null; // Just type the waiting message for now
89
+ input: unknown;
71
90
  output: VersionedPage;
72
91
  };
73
- createNavbar: {
74
- input: WaitingMessageSchema; // Just type the waiting message for now
75
- output: NavbarProps;
76
- };
77
- createFooter: {
78
- input: WaitingMessageSchema; // Just type the waiting message for now
79
- output: FooterProps;
92
+ analyzeUrl: {
93
+ input: {
94
+ url: string;
95
+ prompt: string;
96
+ };
97
+ output: string;
80
98
  };
81
99
  createBrick: {
82
- input: WaitingMessageSchema & { sectionId: string; index: number }; // Just type the waiting message for now
100
+ input: {
101
+ instructions: string;
102
+ otherBrickTypes: string[];
103
+ sectionId: string;
104
+ id: string;
105
+ type: string;
106
+ insertAt: { type: "section"; index: number } | { type: "brick"; id: string; index: number };
107
+ };
83
108
  output: Brick;
84
109
  };
85
110
  editBrick: {
86
- input: WaitingMessageSchema & { id: string }; // Just type the waiting message for now
111
+ input: { id: string; instructions: string; otherBrickTypes: string[] };
87
112
  output: Brick;
88
113
  };
89
114
  listImages: {
90
- input: null; // Just type the waiting message for now
115
+ input: unknown;
91
116
  output: ImageSearchResultsType;
92
117
  };
93
- listSiteQueries: {
94
- input: null; // Just type the waiting message for now
95
- output: NonNullable<SiteAttributes["queries"]>;
96
- };
97
- createSiteQueries: {
98
- input: WaitingMessageSchema & { instructions: string }; // Just type the waiting message for now
99
- output: NonNullable<SiteAttributes["queries"]>;
100
- };
101
- editSiteQueries: {
102
- input: WaitingMessageSchema & { instructions: string }; // Just type the waiting message for now
103
- output: NonNullable<SiteAttributes["queries"]>;
104
- };
105
- createPageQueries: {
106
- input: WaitingMessageSchema & { instructions: string }; // Just type the waiting message for now
107
- output: NonNullable<PageAttributes["queries"]>;
108
- };
109
- editPageQueries: {
110
- input: WaitingMessageSchema & { instructions: string }; // Just type the waiting message for now
111
- output: NonNullable<PageAttributes["queries"]>;
112
- };
113
- createSiteAttributes: {
114
- input: WaitingMessageSchema; // Just type the waiting message for now
115
- output: SiteAttributes;
116
- };
117
- getSiteAttributes: {
118
- input: null; // Just type the waiting message for now
119
- output: SiteAttributes;
118
+ setTheme: {
119
+ input: { id: string };
120
+ output: Theme;
120
121
  };
121
122
  createDatasource: {
122
- input: WaitingMessageSchema; // Just type the waiting message for now
123
+ input: ToolInputWaitingMessageType & ToolInputInstructionsType & { id: string };
123
124
  output: InternalDatasource;
124
125
  };
125
126
  listDatasources: {
126
- input: null; // Just type the waiting message for now
127
+ input: unknown;
127
128
  output: InternalDatasource[];
128
129
  };
129
130
  createDatarecord: {
130
- input: WaitingMessageSchema; // Just type the waiting message for now
131
+ input: ToolInputWaitingMessageType & ToolInputInstructionsType & { id: string };
131
132
  output: Datarecord;
132
133
  };
133
134
  listDatarecords: {
134
- input: null; // Just type the waiting message for now
135
+ input: unknown;
135
136
  output: Datarecord[];
136
137
  };
137
138
  searchImages: {
138
- input: WaitingMessageSchema & { query: string }; // Just type the waiting message for now
139
+ input: ToolInputWaitingMessageType & { query: string };
139
140
  output: ImageSearchResultsType;
140
141
  };
141
142
  deleteBrick: {
142
- input: { id: string; waitingMessage: string }; // Just type the waiting message for now
143
- output: boolean | string; // true if deleted, error message if failed
143
+ input: { id: string };
144
+ output: Brick;
144
145
  };
145
146
  };
146
147
 
147
148
  type Metadata = {
148
- creditsUsed: number;
149
- userLanguage: string; // ISO code of the user's language, e.g. "en", "fr", "es"
149
+ init?: boolean;
150
+ creditsUsed?: number;
151
+ userLanguage?: string; // ISO code of the user's language, e.g. "en", "fr", "es"
150
152
  };
151
153
 
152
154
  // For now, let's keep it simple
@@ -3,15 +3,14 @@ import type { JSONSchemaType } from "ajv";
3
3
  import { getSchemaDefaults } from "../shared/utils/schema";
4
4
  import { manifest as navbarManifest } from "./bricks/manifests/navbar.manifest";
5
5
  import { manifest as footerManifest } from "./bricks/manifests/footer.manifest";
6
- import { string } from "./bricks/props/string";
7
6
  import { boolean } from "./bricks/props/boolean";
8
7
  import { datetime } from "./bricks/props/date";
9
- import { imageRef } from "./bricks/props/image";
10
- import { colorPresetRef } from "./bricks/props/color-preset";
11
- import { queryUseRef, type QueryUseSettings } from "./bricks/props/dynamic";
8
+ import { image } from "./bricks/props/image";
9
+ import { colorPreset } from "./bricks/props/color-preset";
10
+ import { queryUse, type QueryUseSettings } from "./bricks/props/dynamic";
12
11
  import { querySchema } from "./datasources/types";
13
12
  import { StringEnum } from "./utils/string-enum";
14
- import { backgroundRef } from "./bricks/props/background";
13
+ import { background } from "./bricks/props/background";
15
14
  import { toLLMSchema } from "./utils/llm";
16
15
 
17
16
  export type { JSONSchemaType };
@@ -19,9 +18,9 @@ export type { JSONSchemaType };
19
18
  // Default attributes
20
19
  export const pageAttributesSchema = Type.Object(
21
20
  {
22
- backgroundImage: Type.Optional(backgroundRef()),
21
+ backgroundImage: Type.Optional(background()),
23
22
  colorPreset: Type.Optional(
24
- colorPresetRef({
23
+ colorPreset({
25
24
  examples: [
26
25
  { color: "base-100" },
27
26
  { color: "primary-500" },
@@ -29,16 +28,17 @@ export const pageAttributesSchema = Type.Object(
29
28
  ],
30
29
  }),
31
30
  ),
32
- tags: Type.Optional(
33
- Type.Array(string("Tag"), {
34
- title: "Tags",
35
- description:
36
- "Use tags to organize, group and filter pages in navigation elements and in the dashboard. By default, the navbar element display pages having the 'navbar' tag, while the sidebar displays the pages with the tag 'sidebar'.",
37
- "ui:field": "tags",
38
- examples: [["navbar", "navbar"], ["navbar", "sidebar"], ["sidebar"]],
39
- }),
40
- ),
41
- path: string("URL path", {
31
+ tags: Type.Array(Type.String({ description: "A tag for the page. Should be url-safe." }), {
32
+ title: "Tags",
33
+ description:
34
+ "Use tags to organize, group and filter pages in navigation elements and in the dashboard. By default, the navbar element display pages having the 'navbar' tag, while the sidebar displays the pages with the tag 'sidebar'.",
35
+ "ui:field": "tags",
36
+ examples: [["navbar", "important"], ["navbar", "sidebar"], ["sidebar"], ["campaign-landing-20250610"]],
37
+ maxItems: 8,
38
+ default: [],
39
+ }),
40
+ path: Type.String({
41
+ title: "URL path",
42
42
  default: "/",
43
43
  description: "The URL path of the page. Use placeholders like :id or :slug for dynamic paths.",
44
44
  "ai:instructions": "Never put language codes in the path.",
@@ -46,24 +46,25 @@ export const pageAttributesSchema = Type.Object(
46
46
  pattern: "^/[a-z0-9-:/]*$",
47
47
  examples: ["/", "/about", "/products/:id"],
48
48
  }),
49
- queries: Type.Optional(
50
- Type.Array(queryUseRef(), {
51
- title: "Page Queries",
52
- description:
53
- "List of queries to use in this page. All listed queries will be executed when the page loads.",
54
- "ai:instructions": "Reference Query IDs to use at the page level.",
55
- "ui:field": "page-queries",
56
- maxItems: 5,
57
- }),
58
- ),
59
- title: string("Title", {
49
+ queries: Type.Array(queryUse(), {
50
+ title: "Page Queries",
51
+ description:
52
+ "List of queries to use in this page. All listed queries will be executed when the page loads.",
53
+ "ai:instructions": "Reference Query IDs to use at the page level.",
54
+ "ui:field": "page-queries",
55
+ maxItems: 8,
56
+ default: [],
57
+ }),
58
+ title: Type.String({
59
+ title: "Title",
60
60
  default: "Untitled",
61
61
  "ui:group": "meta",
62
62
  "ui:group:title": "Meta tags",
63
63
  description: "The title of the page. Appears in the browser tab and search results",
64
64
  "ui:placeholder": "Page title",
65
65
  }),
66
- description: string("Description", {
66
+ description: Type.String({
67
+ title: "Description",
67
68
  "ui:widget": "textarea",
68
69
  "ui:group": "meta",
69
70
  "ui:group:title": "Meta tags",
@@ -73,7 +74,8 @@ export const pageAttributesSchema = Type.Object(
73
74
  default: "",
74
75
  "ui:placeholder": "A brief description of the page",
75
76
  }),
76
- keywords: string("Keywords", {
77
+ keywords: Type.String({
78
+ title: "Keywords",
77
79
  "ui:group": "meta",
78
80
  "ui:group:title": "Meta tags",
79
81
  description: "Keywords related to the page. Used by search engines",
@@ -81,9 +83,8 @@ export const pageAttributesSchema = Type.Object(
81
83
  default: "",
82
84
  "ui:placeholder": "keyword1, keyword2, keyword3",
83
85
  }),
84
-
85
86
  ogImage: Type.Optional(
86
- imageRef({
87
+ image({
87
88
  title: "Social share image",
88
89
  description: "Image shown when this page is shared on social media",
89
90
  "ui:group": "meta",
@@ -96,7 +97,9 @@ export const pageAttributesSchema = Type.Object(
96
97
  }),
97
98
  ),
98
99
  robotsIndexing: Type.Optional(
99
- boolean("Allow search engines to index this page", true, {
100
+ Type.Boolean({
101
+ title: "Allow search engines to index this page",
102
+ default: true,
100
103
  description: "Disabling this will prevent search engines from indexing this page",
101
104
  "ai:hidden": true,
102
105
  "ui:group": "meta",
@@ -187,16 +190,21 @@ export const pageAttributesSchema = Type.Object(
187
190
  }),
188
191
  ),
189
192
  },
190
- { "ui:group": "meta" },
193
+ { "ui:group": "meta", "ai:hidden": true },
191
194
  ),
192
195
  ),
193
-
194
- noNavbar: Type.Optional(boolean("Hide navbar", false, { "ui:group": "layout" })),
195
- noFooter: Type.Optional(boolean("Hide footer", false, { "ui:group": "layout" })),
196
- lastUpdated: Type.Optional(
197
- datetime("Last updated", {
198
- "ui:hidden": true,
199
- "ai:hidden": true,
196
+ noNavbar: Type.Optional(
197
+ Type.Boolean({
198
+ title: "Hide navbar",
199
+ default: false,
200
+ "ui:group": "layout",
201
+ }),
202
+ ),
203
+ noFooter: Type.Optional(
204
+ Type.Boolean({
205
+ title: "Hide footer",
206
+ default: false,
207
+ "ui:group": "layout",
200
208
  }),
201
209
  ),
202
210
  },
@@ -208,7 +216,7 @@ export const pageAttributesSchema = Type.Object(
208
216
  },
209
217
  );
210
218
 
211
- export const pageQueriesSchema = Type.Array(queryUseRef(), {
219
+ export const pageQueriesSchema = Type.Array(queryUse(), {
212
220
  title: "Page Queries",
213
221
  description: `List of page queries in use in this page. All listed queries will be executed when the page loads. Aliases must be unique and camelCase'd.
214
222
  The queryId must reference an existing site query ID.`,
@@ -283,9 +291,9 @@ export const siteAttributesSchema = Type.Object(
283
291
  "Choose a value based on the site description. If the site is in multiple languages, use 'en'.",
284
292
  },
285
293
  ),
286
- backgroundImage: Type.Optional(backgroundRef()),
294
+ backgroundImage: Type.Optional(background()),
287
295
  colorPreset: Type.Optional(
288
- colorPresetRef({
296
+ colorPreset({
289
297
  examples: [
290
298
  { color: "base-100" },
291
299
  { color: "primary-500" },
@@ -319,7 +327,7 @@ export const siteAttributesSchema = Type.Object(
319
327
  }),
320
328
  ),
321
329
  ogImage: Type.Optional(
322
- imageRef({
330
+ image({
323
331
  title: "Social share image",
324
332
  description: "Image shown when this site is shared on social media",
325
333
  "ai:hidden": true,
@@ -379,13 +387,15 @@ export const siteAttributesSchema = Type.Object(
379
387
  },
380
388
  );
381
389
 
382
- export const siteAttributesNowQueriesSchema = Type.Omit(siteAttributesSchema, ["queries"]);
390
+ export const siteAttributesNoQueriesSchema = Type.Omit(siteAttributesSchema, ["queries"]);
383
391
  export const pageAttributesNoQueriesSchema = Type.Omit(pageAttributesSchema, ["queries"]);
384
392
  export const siteQueriesSchema = Type.Array(querySchema);
385
393
  export const siteQueriesSchemaLLM = toLLMSchema(siteQueriesSchema);
386
394
 
387
395
  export type PageAttributes = Static<typeof pageAttributesSchema>;
388
396
  export type SiteAttributes = Static<typeof siteAttributesSchema>;
397
+ export type SiteAttributesNoQueries = Static<typeof siteAttributesNoQueriesSchema>;
398
+ export type PageAttributesNoQueries = Static<typeof pageAttributesNoQueriesSchema>;
389
399
 
390
400
  export function resolvePageAttributes(data: Partial<PageAttributes> = {}) {
391
401
  const defaultAttrValues = getSchemaDefaults(pageAttributesSchema);
@@ -1,11 +1,10 @@
1
- import type { TObject, TProperties, TArray } from "@sinclair/typebox";
2
- import type { IconBase, IconType } from "react-icons/lib";
1
+ import type { TObject, TProperties } from "@sinclair/typebox";
2
+ import type { IconType } from "react-icons/lib";
3
3
  import { getSchemaDefaults } from "./utils/schema";
4
- import type { ReactNode } from "react";
5
4
 
6
5
  export type BrickCategory = "layout" | "basic" | "media" | "widgets" | "container";
7
6
 
8
- type BrickManifestProps<BProps extends TProperties, DSSchema extends TObject | TArray<TObject>> = {
7
+ type BrickManifestProps<BProps extends TProperties> = {
9
8
  type: string;
10
9
  category?: BrickCategory;
11
10
  name: string;
@@ -64,7 +63,7 @@ type BrickManifestProps<BProps extends TProperties, DSSchema extends TObject | T
64
63
  aiInstructions?: string;
65
64
  };
66
65
 
67
- export function defineBrickManifest<BProps extends TProperties, DSSchema extends TObject | TArray<TObject>>({
66
+ export function defineBrickManifest<BProps extends TProperties>({
68
67
  props,
69
68
  defaultHeight,
70
69
  defaultWidth,
@@ -79,7 +78,7 @@ export function defineBrickManifest<BProps extends TProperties, DSSchema extends
79
78
  defaultInspectorTab = "preset",
80
79
  icon,
81
80
  ...rest
82
- }: BrickManifestProps<BProps, DSSchema>) {
81
+ }: BrickManifestProps<BProps>) {
83
82
  return {
84
83
  ...rest,
85
84
  icon,
@@ -0,0 +1,9 @@
1
+ import type { BrickManifest } from "~/shared/brick-manifest";
2
+ import type { BrickProps } from "../props/types";
3
+
4
+ export type BrickExample<Manifest extends BrickManifest> = {
5
+ description: string;
6
+ type: string;
7
+ props: BrickProps<Manifest>["brick"]["props"];
8
+ mobileProps?: Partial<BrickProps<Manifest>["brick"]["props"]>;
9
+ };