@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
@@ -1,6 +1,14 @@
1
- import type { ImageSearchResultsType } from "./images";
2
- import type { VersionedPage } from "./page";
3
- import type { Site } from "./site";
1
+ import { type Static, Type } from "@sinclair/typebox";
2
+ import { imageResultsSchema } from "./images";
3
+ import { versionedPageSchema } from "./page";
4
+ import { siteSchema } from "./site";
5
+
6
+ export const generationStateSchema = Type.Object({
7
+ isReady: Type.Boolean(),
8
+ isSetup: Type.Boolean(),
9
+ hasSitemap: Type.Boolean(),
10
+ hasThemesGenerated: Type.Boolean(),
11
+ });
4
12
 
5
13
  export type GenerationState = {
6
14
  isReady: boolean;
@@ -9,25 +17,17 @@ export type GenerationState = {
9
17
  hasThemesGenerated: boolean;
10
18
  };
11
19
 
12
- export type CallContextProps = {
13
- userId: string;
14
- /**
15
- * The site object
16
- */
17
- site: Site;
18
- /**
19
- * Current page. Undefined if flow is "setup" and no page has been created yet.
20
- */
21
- page: VersionedPage;
22
-
23
- /**
24
- * The current generation state of the site. Only used when flow is "setup".
25
- */
26
- generationState?: GenerationState;
27
- /**
28
- * The user language guessed from the sitePrompt, if available.
29
- */
30
- userLanguage?: string;
20
+ export const callContextSchema = Type.Object({
21
+ site: siteSchema,
22
+ page: versionedPageSchema,
23
+ generationState: Type.Optional(generationStateSchema),
24
+ userLanguage: Type.Optional(
25
+ Type.String({
26
+ minLength: 2,
27
+ maxLength: 2,
28
+ }),
29
+ ),
30
+ assets: imageResultsSchema,
31
+ });
31
32
 
32
- assets: ImageSearchResultsType;
33
- };
33
+ export type CallContextProps = Static<typeof callContextSchema>;
@@ -1,4 +1,5 @@
1
1
  import { Type, type Static } from "@sinclair/typebox";
2
+ import { StringEnum } from "~/shared/utils/string-enum";
2
3
 
3
4
  export const airtableFields = Type.Array(
4
5
  Type.Object({
@@ -48,16 +49,16 @@ export type AirtableBases = {
48
49
  name: string;
49
50
  }[];
50
51
 
51
- export const AirtableFieldTypes = Type.Union([
52
- Type.Literal("number"),
53
- Type.Literal("checkbox"),
54
- Type.Literal("date"),
55
- Type.Literal("dateTime"),
56
- Type.Literal("email"),
57
- Type.Literal("url"),
58
- Type.Literal("singleLineText"),
59
- Type.Literal("multilineText"),
60
- Type.Literal("singleSelect"),
61
- Type.Literal("multipleSelects"),
52
+ export const AirtableFieldTypes = StringEnum([
53
+ "number",
54
+ "checkbox",
55
+ "date",
56
+ "dateTime",
57
+ "email",
58
+ "url",
59
+ "singleLineText",
60
+ "multilineText",
61
+ "singleSelect",
62
+ "multipleSelects",
62
63
  ]);
63
64
  export type AirtableFieldType = Static<typeof AirtableFieldTypes>;
@@ -2,13 +2,9 @@ import { Type, type Static } from "@sinclair/typebox";
2
2
  import { airtableOptions } from "./external/airtable/types";
3
3
  import { googleSheetsOptions } from "./external/google/sheets/types";
4
4
  import { notionOptions } from "./external/notion/types";
5
+ import { StringEnum } from "../utils/string-enum";
5
6
 
6
- export const connectorSchema = Type.Union([
7
- Type.Literal("airtable"),
8
- Type.Literal("google-sheets"),
9
- Type.Literal("notion"),
10
- Type.Literal("internal"),
11
- ]);
7
+ export const connectorSchema = StringEnum(["airtable", "google-sheets", "notion", "internal"]);
12
8
 
13
9
  export type DatarecordConnector = Static<typeof connectorSchema>;
14
10
 
@@ -140,34 +136,6 @@ export const genericDatarecord = Type.Composite([
140
136
  commonDatarecordSchema,
141
137
  ]);
142
138
 
143
- // export const genericDatarecord = Type.Union([
144
- // Type.Composite([
145
- // Type.Object({
146
- // provider: Type.Literal("airtable"),
147
- // options: airtableOptions,
148
- // }),
149
- // commonDatarecordMetadata,
150
- // commonDatarecordSchema,
151
- // ]),
152
- // Type.Composite([
153
- // Type.Object({
154
- // provider: Type.Literal("google-sheets"),
155
- // options: googleSheetsOptions,
156
- // }),
157
- // commonDatarecordMetadata,
158
- // commonDatarecordSchema,
159
- // ]),
160
- // Type.Composite([
161
- // Type.Object({
162
- // provider: Type.Literal("notion"),
163
- // options: notionOptions,
164
- // }),
165
- // commonDatarecordMetadata,
166
- // commonDatarecordSchema,
167
- // ]),
168
- // Type.Composite([internalDatarecord, commonDatarecordMetadata, commonDatarecordSchema]),
169
- // ]);
170
-
171
139
  export type Datarecord = Static<typeof genericDatarecord>;
172
140
  export type InternalDatarecord = Extract<Datarecord, { provider: "internal" }>;
173
141
 
@@ -1,4 +1,5 @@
1
1
  import { Type, type Static } from "@sinclair/typebox";
2
+ import { StringEnum } from "../../../../utils/string-enum";
2
3
 
3
4
  export const instagramFeedSchema = Type.Object({
4
5
  data: Type.Array(
@@ -8,7 +9,7 @@ export const instagramFeedSchema = Type.Object({
8
9
  timestamp: Type.String(),
9
10
  media_url: Type.String(),
10
11
  permalink: Type.String(),
11
- media_type: Type.Union([Type.Literal("IMAGE"), Type.Literal("VIDEO"), Type.Literal("CAROUSEL_ALBUM")]),
12
+ media_type: StringEnum(["IMAGE", "VIDEO", "CAROUSEL_ALBUM"]),
12
13
  }),
13
14
  ),
14
15
  paging: Type.Object({
@@ -1,15 +1,10 @@
1
1
  import { Type, type Static } from "@sinclair/typebox";
2
+ import { StringEnum } from "../../../../utils/string-enum";
2
3
  import { mastodonAccountSchema } from "../account/schema";
3
4
 
4
5
  const mastodonMediaAttachmentSchema = Type.Object({
5
6
  id: Type.String(),
6
- type: Type.Union([
7
- Type.Literal("audio"),
8
- Type.Literal("image"),
9
- Type.Literal("video"),
10
- Type.Literal("gifv"),
11
- Type.Literal("unknown"),
12
- ]),
7
+ type: StringEnum(["audio", "image", "video", "gifv", "unknown"]),
13
8
  url: Type.String(),
14
9
  preview_url: Type.Optional(Type.String()),
15
10
  remote_url: Type.Optional(Type.String()),
@@ -30,12 +25,7 @@ const mastodonPreviewCardSchema = Type.Object({
30
25
  url: Type.String(),
31
26
  title: Type.String(),
32
27
  description: Type.String(),
33
- type: Type.Union([
34
- Type.Literal("link"),
35
- Type.Literal("photo"),
36
- Type.Literal("video"),
37
- Type.Literal("rich"),
38
- ]),
28
+ type: StringEnum(["link", "photo", "video", "rich"]),
39
29
  author_name: Type.String(),
40
30
  author_url: Type.String(),
41
31
  provider_name: Type.String(),
@@ -71,12 +61,7 @@ export const mastodonStatusSchema = Type.Object({
71
61
  created_at: Type.String(),
72
62
  account: mastodonAccountSchema,
73
63
  content: Type.String(),
74
- visibility: Type.Union([
75
- Type.Literal("public"),
76
- Type.Literal("unlisted"),
77
- Type.Literal("private"),
78
- Type.Literal("direct"),
79
- ]),
64
+ visibility: StringEnum(["public", "unlisted", "private", "direct"]),
80
65
  sensitive: Type.Boolean(),
81
66
  media_attachments: Type.Array(mastodonMediaAttachmentSchema),
82
67
  application: Type.Optional(
@@ -1,8 +1,9 @@
1
1
  import { Type, type Static, type StaticDecode } from "@sinclair/typebox";
2
+ import { StringEnum } from "../../../../utils/string-enum";
2
3
  import { buildOAuthConfigSchema } from "~/shared/oauth";
3
4
 
4
5
  const metaOAuthConfig = Type.Object({
5
- type: Type.Union([Type.Literal("short-lived"), Type.Literal("long-lived")]),
6
+ type: StringEnum(["short-lived", "long-lived"]),
6
7
  accessToken: Type.String(),
7
8
  userId: Type.String(),
8
9
  permissions: Type.Array(Type.String()),
@@ -1,18 +1,12 @@
1
1
  import { Type, type Static } from "@sinclair/typebox";
2
+ import { StringEnum } from "../../../../utils/string-enum";
2
3
 
3
4
  export const threadsMediaSchema = Type.Object({
4
5
  data: Type.Array(
5
6
  Type.Object({
6
7
  id: Type.String(),
7
8
  media_product_type: Type.Literal("THREADS"),
8
- media_type: Type.Union([
9
- Type.Literal("TEXT_POST"),
10
- Type.Literal("IMAGE"),
11
- Type.Literal("VIDEO"),
12
- Type.Literal("CAROUSEL_ALBUM"),
13
- Type.Literal("AUDIO"),
14
- Type.Literal("REPOST_FACADE"),
15
- ]),
9
+ media_type: StringEnum(["TEXT_POST", "IMAGE", "VIDEO", "CAROUSEL_ALBUM", "AUDIO", "REPOST_FACADE"]),
16
10
  media_url: Type.String(),
17
11
  permalink: Type.String(),
18
12
  owner: Type.Object({
@@ -1,4 +1,5 @@
1
1
  import { Type, type Static } from "@sinclair/typebox";
2
+ import { StringEnum } from "../../../utils/string-enum";
2
3
 
3
4
  export const blogSchema = Type.Array(
4
5
  Type.Object({
@@ -39,7 +40,7 @@ export const blogSchema = Type.Array(
39
40
  pattern: "^[a-z0-9]+(?:-[a-z0-9]+)*$",
40
41
  description: "URL-friendly version of the title",
41
42
  }),
42
- status: Type.Union([Type.Literal("draft"), Type.Literal("published"), Type.Literal("archived")], {
43
+ status: StringEnum(["draft", "published", "archived"], {
43
44
  title: "Status",
44
45
  description: "Publication status of the blog post",
45
46
  }),
@@ -2,26 +2,26 @@ import { Type, type Static } from "@sinclair/typebox";
2
2
  import { StringEnum } from "../utils/string-enum";
3
3
  import { toLLMSchema } from "../utils/llm";
4
4
 
5
- export const providersSchema = Type.Union([
6
- // Type.Literal("facebook-posts"),
7
- // Type.Literal("instagram-feed"),
8
- // Type.Literal("mastodon-account"),
9
- // Type.Literal("mastodon-status"),
10
- // Type.Literal("mastodon-status-list"),
11
- Type.Literal("internal"),
12
- // Type.Literal("rss"),
13
- // // Type.Literal("threads-media"),
14
- // // Type.Literal("tiktok-video"),
15
- // Type.Literal("youtube-list"),
16
- // Type.Literal("http-json"),
17
- // Type.Literal("internal-blog"),
18
- // Type.Literal("internal-changelog"),
19
- // // Type.Literal("internal-contact-info"),
20
- // Type.Literal("internal-faq"),
21
- // Type.Literal("internal-links"),
22
- // Type.Literal("internal-recipes"),
23
- // Type.Literal("internal-restaurant"),
24
- // Type.Literal("internal-cv"),
5
+ export const providersSchema = StringEnum([
6
+ // "facebook-posts",
7
+ // "instagram-feed",
8
+ // "mastodon-account",
9
+ // "mastodon-status",
10
+ // "mastodon-status-list",
11
+ "internal",
12
+ // "rss",
13
+ // // "threads-media",
14
+ // // "tiktok-video",
15
+ // "youtube-list",
16
+ // "http-json",
17
+ // "internal-blog",
18
+ // "internal-changelog",
19
+ // // "internal-contact-info",
20
+ // "internal-faq",
21
+ // "internal-links",
22
+ // "internal-recipes",
23
+ // "internal-restaurant",
24
+ // "internal-cv",
25
25
  ]);
26
26
 
27
27
  export type DatasourceProvider = Static<typeof providersSchema>;
@@ -77,19 +77,17 @@ const datasourceInternalManifest = Type.Object(
77
77
  title: "Schema",
78
78
  description: "JSON Schema of datasource. MUST Always an array of objects.",
79
79
  }),
80
- indexes: Type.Optional(
81
- Type.Array(
82
- Type.Object({
83
- name: Type.String({ title: "Index name" }),
84
- fields: Type.Array(Type.String(), { title: "Fields to index" }),
85
- unique: Type.Optional(Type.Boolean({ title: "Unique index", default: false })),
86
- }),
87
- {
88
- title: "Indexes",
89
- description:
90
- "IMPORTANT: Indexes to create on the datasource. use it to enforce uniqueness or improve query performance.",
91
- },
92
- ),
80
+ indexes: Type.Array(
81
+ Type.Object({
82
+ name: Type.String({ title: "Index name" }),
83
+ fields: Type.Array(Type.String(), { title: "Fields to index" }),
84
+ unique: Type.Optional(Type.Boolean({ title: "Unique index", default: false })),
85
+ }),
86
+ {
87
+ title: "Indexes",
88
+ description:
89
+ "IMPORTANT: Indexes to create on the datasource. use it to enforce uniqueness or improve query performance.",
90
+ },
93
91
  ),
94
92
  },
95
93
  {
@@ -243,53 +241,40 @@ export type DatasourcesList = Static<typeof datasourcesList>;
243
241
 
244
242
  const stringFilter = Type.Object({
245
243
  field: Type.String(),
246
- op: Type.Union([
247
- Type.Literal("eq"),
248
- Type.Literal("ne"),
249
- Type.Literal("contains"),
250
- Type.Literal("notContains"),
251
- Type.Literal("startsWith"),
252
- Type.Literal("notStartsWith"),
253
- Type.Literal("endsWith"),
254
- Type.Literal("notEndsWith"),
244
+ op: StringEnum([
245
+ "eq",
246
+ "ne",
247
+ "contains",
248
+ "notContains",
249
+ "startsWith",
250
+ "notStartsWith",
251
+ "endsWith",
252
+ "notEndsWith",
255
253
  ]),
256
254
  value: Type.String(),
257
255
  });
258
256
 
259
257
  const numberFilter = Type.Object({
260
258
  field: Type.String(),
261
- op: Type.Union([
262
- Type.Literal("eq"),
263
- Type.Literal("ne"),
264
- Type.Literal("lt"),
265
- Type.Literal("lte"),
266
- Type.Literal("gt"),
267
- Type.Literal("gte"),
268
- ]),
259
+ op: StringEnum(["eq", "ne", "lt", "lte", "gt", "gte"]),
269
260
  value: Type.Number(),
270
261
  });
271
262
 
272
263
  const dateFilterAbsolute = Type.Object({
273
264
  field: Type.String(),
274
- op: Type.Union([Type.Literal("before"), Type.Literal("after")]),
265
+ op: StringEnum(["before", "after"]),
275
266
  value: Type.String(),
276
267
  });
277
268
 
278
269
  const dateFilterRelative = Type.Object({
279
270
  field: Type.String(),
280
- op: Type.Union([Type.Literal("beforeNow"), Type.Literal("afterNow")]),
271
+ op: StringEnum(["beforeNow", "afterNow"]),
281
272
  value: Type.Null(),
282
273
  });
283
274
 
284
275
  const arrayFilter = Type.Object({
285
276
  field: Type.String(),
286
- op: Type.Union([
287
- Type.Literal("contains"),
288
- Type.Literal("notContains"),
289
- Type.Literal("containsAll"),
290
- Type.Literal("containsAny"),
291
- Type.Literal("notContainsAny"),
292
- ]),
277
+ op: StringEnum(["contains", "notContains", "containsAll", "containsAny", "notContainsAny"]),
293
278
  value: Type.Array(Type.String()),
294
279
  });
295
280
 
@@ -392,27 +377,27 @@ export const querySchema = Type.Object(
392
377
  Type.Array(
393
378
  Type.Object({
394
379
  field: Type.String({ title: "Field", description: "Field name to use as parameter" }),
395
- op: Type.Union(
380
+ op: StringEnum(
396
381
  [
397
- Type.Literal("eq"),
398
- Type.Literal("ne"),
399
- Type.Literal("contains"),
400
- Type.Literal("notContains"),
401
- Type.Literal("startsWith"),
402
- Type.Literal("notStartsWith"),
403
- Type.Literal("endsWith"),
404
- Type.Literal("notEndsWith"),
405
- Type.Literal("lt"),
406
- Type.Literal("lte"),
407
- Type.Literal("gt"),
408
- Type.Literal("gte"),
409
- Type.Literal("before"),
410
- Type.Literal("after"),
411
- Type.Literal("beforeNow"),
412
- Type.Literal("afterNow"),
413
- Type.Literal("containsAll"),
414
- Type.Literal("containsAny"),
415
- Type.Literal("notContainsAny"),
382
+ "eq",
383
+ "ne",
384
+ "contains",
385
+ "notContains",
386
+ "startsWith",
387
+ "notStartsWith",
388
+ "endsWith",
389
+ "notEndsWith",
390
+ "lt",
391
+ "lte",
392
+ "gt",
393
+ "gte",
394
+ "before",
395
+ "after",
396
+ "beforeNow",
397
+ "afterNow",
398
+ "containsAll",
399
+ "containsAny",
400
+ "notContainsAny",
416
401
  ],
417
402
  { title: "Operator", description: "Operator to use for the parameter" },
418
403
  ),
@@ -16,24 +16,18 @@ export const imageSearchSchema = Type.Object({
16
16
  export type ImageSearchParams = Static<typeof imageSearchSchema>;
17
17
 
18
18
  export const imageResultsSchema = Type.Array(
19
- Type.Object(
20
- {
21
- provider: Type.String({ description: "The image provider (e.g. unsplash, pexels)" }),
22
- description: Type.String({ description: "A brief description of the image" }),
23
- url: Type.String({ description: "The URL of the image" }),
24
- blurHash: Type.Optional(Type.String({ description: "The blur hash of the image" })),
25
- author: Type.Optional(
26
- Type.Object(
27
- {
28
- name: Type.String({ description: "The name of the user who uploaded the image" }),
29
- profile_url: Type.String({ description: "The profile URL of the user who uploaded the image" }),
30
- },
31
- { additionalProperties: false },
32
- ),
33
- ),
34
- },
35
- { additionalProperties: false },
36
- ),
19
+ Type.Object({
20
+ provider: Type.String({ description: "The image provider (e.g. unsplash, pexels)" }),
21
+ description: Type.String({ description: "A brief description of the image" }),
22
+ url: Type.String({ description: "The URL of the image" }),
23
+ blurHash: Type.Optional(Type.String({ description: "The blur hash of the image" })),
24
+ author: Type.Optional(
25
+ Type.Object({
26
+ name: Type.String({ description: "The name of the user who uploaded the image" }),
27
+ profileUrl: Type.String({ description: "The profile URL of the user who uploaded the image" }),
28
+ }),
29
+ ),
30
+ }),
37
31
  {
38
32
  title: "Array of image search results",
39
33
  },
@@ -18,7 +18,15 @@ export const pageSchema = Type.Object({
18
18
  });
19
19
 
20
20
  export type Page = Static<typeof pageSchema>;
21
- export type VersionedPage = Page & { version: string };
21
+
22
+ export const versionedPageSchema = Type.Composite([
23
+ pageSchema,
24
+ Type.Object({
25
+ version: Type.String(),
26
+ }),
27
+ ]);
28
+
29
+ export type VersionedPage = Static<typeof versionedPageSchema>;
22
30
 
23
31
  /**
24
32
  * Page context represents the page config PLUS:
@@ -1,61 +1,12 @@
1
1
  import { Type, type Static } from "@sinclair/typebox";
2
2
  import { StringEnum } from "./utils/string-enum";
3
3
  import { pageSchema } from "./page";
4
- import { toLLMSchema } from "./utils/llm";
5
-
6
- export const sitemapPageEntry = Type.Pick(pageSchema, ["id", "label", "path", "attributes"]);
7
- export type SitemapPageEntry = Static<typeof sitemapPageEntry>;
8
-
9
- export const sectionsPlanSchema = Type.Array(
10
- Type.Object(
11
- {
12
- id: Type.String({
13
- title: "Section ID",
14
- examples: ["header-section", "hero-section", "features-section"],
15
- format: "slug",
16
- }),
17
- name: Type.String({ title: "Section name", examples: ["Header", "Hero", "Features"] }),
18
- description: Type.String({
19
- title: "A long description of the section",
20
- description: `You must elaborate a clear and detailled plan that describes:
21
- - The section purpose in the page, in detail.
22
- - The section structure, look & feel, and structural/design organization, in detail
23
- - the types of bricks (e.g. "container", "text", "video", "carousel", etc) that will be used and their purpose, in detail
24
-
25
- IMPORTANT: be very descriptive and precise in your plan. The more details you provide, the better the generated page will be.`,
26
-
27
- examples: [
28
- "This section contains a `hero` and a call-to-action `button`. All of theme aligned horizontally. The section should market a coffee shop.",
29
- "This section should contain a `hero` text and an `image`.",
30
- ],
31
- }),
32
- },
33
- { additionalProperties: false },
34
- ),
35
- {
36
- title: "Sections plan",
37
- description: "A plan for the sections of the page. Used to generate the page content.",
38
- examples: [
39
- [
40
- {
41
- id: "header-section",
42
- name: "Header",
43
- description: "This section only contains a header brick",
44
- },
45
- {
46
- id: "hero-section",
47
- name: "Hero",
48
- description:
49
- "This is the hero section of the page. It should display a marketing message using a hero brick, as well as a button (CTA). The section should center bricks horizontally.",
50
- },
51
- ],
52
- ],
53
- },
54
- );
4
+ import { pageAttributesSchema } from "./attributes";
55
5
 
56
6
  export const sitemapEntry = Type.Composite(
57
7
  [
58
- sitemapPageEntry,
8
+ Type.Pick(pageSchema, ["id", "label"]),
9
+ Type.Pick(pageAttributesSchema, ["path", "tags"]),
59
10
  Type.Object({
60
11
  status: Type.Optional(
61
12
  StringEnum(["draft", "published"], {
@@ -65,32 +16,14 @@ export const sitemapEntry = Type.Composite(
65
16
  "ai:hidden": true,
66
17
  description:
67
18
  "The status of the page. Can be draft or published. [AI instructions: Dont generate this.]",
68
- "ai:instructions": "Upsie: Never generate this optional field.",
69
19
  }),
70
20
  ),
71
21
  }),
72
22
  ],
73
23
  {
74
24
  description: "Pages map. The complete list of site pages & their metadata",
75
- additionalProperties: false,
76
25
  },
77
26
  );
78
27
 
79
28
  export const sitemapSchema = Type.Array(sitemapEntry);
80
29
  export type Sitemap = Static<typeof sitemapSchema>;
81
-
82
- export const sitemapSchemaLLM = toLLMSchema(
83
- Type.Array(
84
- Type.Composite([
85
- sitemapEntry,
86
- Type.Object({
87
- // Sections plan helps agents to the structure and content of the page
88
- sectionsPlan: sectionsPlanSchema,
89
- }),
90
- ]),
91
- ),
92
- );
93
-
94
- export type SitemapWithPlans = Static<typeof sitemapSchemaLLM>;
95
-
96
- export const sitemapSchemaNoPlansLLM = toLLMSchema(sitemapSchema);
@@ -16,6 +16,8 @@ describe("Attributes test suite", () => {
16
16
  title: "Untitled",
17
17
  description: "",
18
18
  keywords: "",
19
+ queries: [],
20
+ tags: [],
19
21
  });
20
22
  });
21
23
  });