@upstart.gg/sdk 0.0.138 → 0.0.139

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 (786) hide show
  1. package/dist/shared/ai/schemas.d.ts +20 -15
  2. package/dist/shared/ai/schemas.d.ts.map +1 -1
  3. package/dist/shared/ai/schemas.js +31 -57
  4. package/dist/shared/ai/schemas.js.map +1 -1
  5. package/dist/shared/ai/types.d.ts +193 -190
  6. package/dist/shared/ai/types.d.ts.map +1 -1
  7. package/dist/shared/ai/types.js +1 -3
  8. package/dist/shared/analytics/init.d.ts +4 -1
  9. package/dist/shared/analytics/init.d.ts.map +1 -1
  10. package/dist/shared/analytics/init.js +14 -20
  11. package/dist/shared/analytics/init.js.map +1 -1
  12. package/dist/shared/analytics/track.d.ts +6 -2
  13. package/dist/shared/analytics/track.d.ts.map +1 -1
  14. package/dist/shared/analytics/track.js +14 -24
  15. package/dist/shared/analytics/track.js.map +1 -1
  16. package/dist/shared/analytics/types.d.ts +10 -8
  17. package/dist/shared/analytics/types.d.ts.map +1 -1
  18. package/dist/shared/analytics/types.js +1 -3
  19. package/dist/shared/attributes.d.ts +488 -483
  20. package/dist/shared/attributes.d.ts.map +1 -1
  21. package/dist/shared/attributes.js +369 -45
  22. package/dist/shared/attributes.js.map +1 -1
  23. package/dist/shared/brick-manifest.d.ts +126 -108
  24. package/dist/shared/brick-manifest.d.ts.map +1 -1
  25. package/dist/shared/brick-manifest.js +36 -12
  26. package/dist/shared/brick-manifest.js.map +1 -1
  27. package/dist/shared/bricks/manifests/_types.d.ts +11 -7
  28. package/dist/shared/bricks/manifests/_types.d.ts.map +1 -1
  29. package/dist/shared/bricks/manifests/_types.js +1 -3
  30. package/dist/shared/bricks/manifests/accordion.manifest.d.ts +83 -76
  31. package/dist/shared/bricks/manifests/accordion.manifest.d.ts.map +1 -1
  32. package/dist/shared/bricks/manifests/accordion.manifest.js +389 -24
  33. package/dist/shared/bricks/manifests/accordion.manifest.js.map +1 -1
  34. package/dist/shared/bricks/manifests/all-manifests.d.ts +15 -10
  35. package/dist/shared/bricks/manifests/all-manifests.d.ts.map +1 -1
  36. package/dist/shared/bricks/manifests/all-manifests.js +128 -61
  37. package/dist/shared/bricks/manifests/all-manifests.js.map +1 -1
  38. package/dist/shared/bricks/manifests/all-props.d.ts +1510 -1505
  39. package/dist/shared/bricks/manifests/all-props.d.ts.map +1 -1
  40. package/dist/shared/bricks/manifests/all-props.js +167 -241
  41. package/dist/shared/bricks/manifests/all-props.js.map +1 -1
  42. package/dist/shared/bricks/manifests/box.manifest.d.ts +87 -80
  43. package/dist/shared/bricks/manifests/box.manifest.d.ts.map +1 -1
  44. package/dist/shared/bricks/manifests/box.manifest.js +548 -27
  45. package/dist/shared/bricks/manifests/box.manifest.js.map +1 -1
  46. package/dist/shared/bricks/manifests/button.manifest.d.ts +75 -68
  47. package/dist/shared/bricks/manifests/button.manifest.d.ts.map +1 -1
  48. package/dist/shared/bricks/manifests/button.manifest.js +308 -23
  49. package/dist/shared/bricks/manifests/button.manifest.js.map +1 -1
  50. package/dist/shared/bricks/manifests/card.manifest.d.ts +96 -89
  51. package/dist/shared/bricks/manifests/card.manifest.d.ts.map +1 -1
  52. package/dist/shared/bricks/manifests/card.manifest.js +392 -28
  53. package/dist/shared/bricks/manifests/card.manifest.js.map +1 -1
  54. package/dist/shared/bricks/manifests/carousel.manifest.d.ts +86 -79
  55. package/dist/shared/bricks/manifests/carousel.manifest.d.ts.map +1 -1
  56. package/dist/shared/bricks/manifests/carousel.manifest.js +775 -26
  57. package/dist/shared/bricks/manifests/carousel.manifest.js.map +1 -1
  58. package/dist/shared/bricks/manifests/footer.manifest.d.ts +117 -110
  59. package/dist/shared/bricks/manifests/footer.manifest.d.ts.map +1 -1
  60. package/dist/shared/bricks/manifests/footer.manifest.js +864 -25
  61. package/dist/shared/bricks/manifests/footer.manifest.js.map +1 -1
  62. package/dist/shared/bricks/manifests/form.manifest.d.ts +94 -87
  63. package/dist/shared/bricks/manifests/form.manifest.d.ts.map +1 -1
  64. package/dist/shared/bricks/manifests/form.manifest.js +324 -25
  65. package/dist/shared/bricks/manifests/form.manifest.js.map +1 -1
  66. package/dist/shared/bricks/manifests/hero.manifest.d.ts +80 -73
  67. package/dist/shared/bricks/manifests/hero.manifest.d.ts.map +1 -1
  68. package/dist/shared/bricks/manifests/hero.manifest.js +202 -24
  69. package/dist/shared/bricks/manifests/hero.manifest.js.map +1 -1
  70. package/dist/shared/bricks/manifests/html.manifest.d.ts +68 -61
  71. package/dist/shared/bricks/manifests/html.manifest.d.ts.map +1 -1
  72. package/dist/shared/bricks/manifests/html.manifest.js +95 -18
  73. package/dist/shared/bricks/manifests/html.manifest.js.map +1 -1
  74. package/dist/shared/bricks/manifests/icon.manifest.d.ts +74 -67
  75. package/dist/shared/bricks/manifests/icon.manifest.d.ts.map +1 -1
  76. package/dist/shared/bricks/manifests/icon.manifest.js +239 -24
  77. package/dist/shared/bricks/manifests/icon.manifest.js.map +1 -1
  78. package/dist/shared/bricks/manifests/image.manifest.d.ts +97 -90
  79. package/dist/shared/bricks/manifests/image.manifest.d.ts.map +1 -1
  80. package/dist/shared/bricks/manifests/image.manifest.js +456 -27
  81. package/dist/shared/bricks/manifests/image.manifest.js.map +1 -1
  82. package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts +93 -86
  83. package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts.map +1 -1
  84. package/dist/shared/bricks/manifests/images-gallery.manifest.js +598 -25
  85. package/dist/shared/bricks/manifests/images-gallery.manifest.js.map +1 -1
  86. package/dist/shared/bricks/manifests/map.manifest.d.ts +78 -71
  87. package/dist/shared/bricks/manifests/map.manifest.d.ts.map +1 -1
  88. package/dist/shared/bricks/manifests/map.manifest.js +138 -23
  89. package/dist/shared/bricks/manifests/map.manifest.js.map +1 -1
  90. package/dist/shared/bricks/manifests/navbar.manifest.d.ts +117 -110
  91. package/dist/shared/bricks/manifests/navbar.manifest.d.ts.map +1 -1
  92. package/dist/shared/bricks/manifests/navbar.manifest.js +370 -28
  93. package/dist/shared/bricks/manifests/navbar.manifest.js.map +1 -1
  94. package/dist/shared/bricks/manifests/sidebar.manifest.d.ts +94 -87
  95. package/dist/shared/bricks/manifests/sidebar.manifest.d.ts.map +1 -1
  96. package/dist/shared/bricks/manifests/sidebar.manifest.js +69 -24
  97. package/dist/shared/bricks/manifests/sidebar.manifest.js.map +1 -1
  98. package/dist/shared/bricks/manifests/social-links.manifest.d.ts +84 -77
  99. package/dist/shared/bricks/manifests/social-links.manifest.d.ts.map +1 -1
  100. package/dist/shared/bricks/manifests/social-links.manifest.js +465 -24
  101. package/dist/shared/bricks/manifests/social-links.manifest.js.map +1 -1
  102. package/dist/shared/bricks/manifests/spacer.manifest.d.ts +65 -58
  103. package/dist/shared/bricks/manifests/spacer.manifest.d.ts.map +1 -1
  104. package/dist/shared/bricks/manifests/spacer.manifest.js +39 -18
  105. package/dist/shared/bricks/manifests/spacer.manifest.js.map +1 -1
  106. package/dist/shared/bricks/manifests/table.manifest.d.ts +93 -86
  107. package/dist/shared/bricks/manifests/table.manifest.d.ts.map +1 -1
  108. package/dist/shared/bricks/manifests/table.manifest.js +771 -25
  109. package/dist/shared/bricks/manifests/table.manifest.js.map +1 -1
  110. package/dist/shared/bricks/manifests/tabs.manifest.d.ts +91 -84
  111. package/dist/shared/bricks/manifests/tabs.manifest.d.ts.map +1 -1
  112. package/dist/shared/bricks/manifests/tabs.manifest.js +119 -25
  113. package/dist/shared/bricks/manifests/tabs.manifest.js.map +1 -1
  114. package/dist/shared/bricks/manifests/testimonials.manifest.d.ts +97 -90
  115. package/dist/shared/bricks/manifests/testimonials.manifest.d.ts.map +1 -1
  116. package/dist/shared/bricks/manifests/testimonials.manifest.js +223 -28
  117. package/dist/shared/bricks/manifests/testimonials.manifest.js.map +1 -1
  118. package/dist/shared/bricks/manifests/text.manifest.d.ts +76 -69
  119. package/dist/shared/bricks/manifests/text.manifest.d.ts.map +1 -1
  120. package/dist/shared/bricks/manifests/text.manifest.js +199 -23
  121. package/dist/shared/bricks/manifests/text.manifest.js.map +1 -1
  122. package/dist/shared/bricks/manifests/timeline.manifest.d.ts +102 -95
  123. package/dist/shared/bricks/manifests/timeline.manifest.d.ts.map +1 -1
  124. package/dist/shared/bricks/manifests/timeline.manifest.js +401 -25
  125. package/dist/shared/bricks/manifests/timeline.manifest.js.map +1 -1
  126. package/dist/shared/bricks/manifests/video.manifest.d.ts +74 -67
  127. package/dist/shared/bricks/manifests/video.manifest.d.ts.map +1 -1
  128. package/dist/shared/bricks/manifests/video.manifest.js +97 -21
  129. package/dist/shared/bricks/manifests/video.manifest.js.map +1 -1
  130. package/dist/shared/bricks/props/align.d.ts +12 -7
  131. package/dist/shared/bricks/props/align.d.ts.map +1 -1
  132. package/dist/shared/bricks/props/align.js +74 -13
  133. package/dist/shared/bricks/props/align.js.map +1 -1
  134. package/dist/shared/bricks/props/background.d.ts +21 -17
  135. package/dist/shared/bricks/props/background.d.ts.map +1 -1
  136. package/dist/shared/bricks/props/background.js +63 -11
  137. package/dist/shared/bricks/props/background.js.map +1 -1
  138. package/dist/shared/bricks/props/boolean.d.ts +6 -2
  139. package/dist/shared/bricks/props/boolean.d.ts.map +1 -1
  140. package/dist/shared/bricks/props/boolean.js +12 -8
  141. package/dist/shared/bricks/props/boolean.js.map +1 -1
  142. package/dist/shared/bricks/props/border.d.ts +12 -7
  143. package/dist/shared/bricks/props/border.d.ts.map +1 -1
  144. package/dist/shared/bricks/props/border.js +85 -12
  145. package/dist/shared/bricks/props/border.js.map +1 -1
  146. package/dist/shared/bricks/props/color-preset.d.ts +331 -327
  147. package/dist/shared/bricks/props/color-preset.d.ts.map +1 -1
  148. package/dist/shared/bricks/props/color-preset.js +378 -10
  149. package/dist/shared/bricks/props/color-preset.js.map +1 -1
  150. package/dist/shared/bricks/props/color.d.ts +10 -5
  151. package/dist/shared/bricks/props/color.d.ts.map +1 -1
  152. package/dist/shared/bricks/props/color.js +27 -10
  153. package/dist/shared/bricks/props/color.js.map +1 -1
  154. package/dist/shared/bricks/props/common.d.ts +32 -28
  155. package/dist/shared/bricks/props/common.d.ts.map +1 -1
  156. package/dist/shared/bricks/props/common.js +42 -13
  157. package/dist/shared/bricks/props/common.js.map +1 -1
  158. package/dist/shared/bricks/props/css-length.d.ts +10 -5
  159. package/dist/shared/bricks/props/css-length.d.ts.map +1 -1
  160. package/dist/shared/bricks/props/css-length.js +39 -12
  161. package/dist/shared/bricks/props/css-length.js.map +1 -1
  162. package/dist/shared/bricks/props/datarecord.d.ts +8 -3
  163. package/dist/shared/bricks/props/datarecord.d.ts.map +1 -1
  164. package/dist/shared/bricks/props/datarecord.js +12 -8
  165. package/dist/shared/bricks/props/datarecord.js.map +1 -1
  166. package/dist/shared/bricks/props/datasource.d.ts +18 -13
  167. package/dist/shared/bricks/props/datasource.d.ts.map +1 -1
  168. package/dist/shared/bricks/props/datasource.js +61 -84
  169. package/dist/shared/bricks/props/datasource.js.map +1 -1
  170. package/dist/shared/bricks/props/date.d.ts +8 -3
  171. package/dist/shared/bricks/props/date.d.ts.map +1 -1
  172. package/dist/shared/bricks/props/date.js +19 -23
  173. package/dist/shared/bricks/props/date.js.map +1 -1
  174. package/dist/shared/bricks/props/direction.d.ts +8 -3
  175. package/dist/shared/bricks/props/direction.d.ts.map +1 -1
  176. package/dist/shared/bricks/props/direction.js +16 -9
  177. package/dist/shared/bricks/props/direction.js.map +1 -1
  178. package/dist/shared/bricks/props/dynamic.d.ts +39 -34
  179. package/dist/shared/bricks/props/dynamic.d.ts.map +1 -1
  180. package/dist/shared/bricks/props/dynamic.js +92 -13
  181. package/dist/shared/bricks/props/dynamic.js.map +1 -1
  182. package/dist/shared/bricks/props/effects.d.ts +18 -11
  183. package/dist/shared/bricks/props/effects.d.ts.map +1 -1
  184. package/dist/shared/bricks/props/effects.js +81 -13
  185. package/dist/shared/bricks/props/effects.js.map +1 -1
  186. package/dist/shared/bricks/props/file.d.ts +6 -1
  187. package/dist/shared/bricks/props/file.d.ts.map +1 -1
  188. package/dist/shared/bricks/props/file.js +11 -14
  189. package/dist/shared/bricks/props/file.js.map +1 -1
  190. package/dist/shared/bricks/props/geolocation.d.ts +15 -10
  191. package/dist/shared/bricks/props/geolocation.d.ts.map +1 -1
  192. package/dist/shared/bricks/props/geolocation.js +28 -40
  193. package/dist/shared/bricks/props/geolocation.js.map +1 -1
  194. package/dist/shared/bricks/props/grow.d.ts +7 -2
  195. package/dist/shared/bricks/props/grow.d.ts.map +1 -1
  196. package/dist/shared/bricks/props/grow.js +14 -8
  197. package/dist/shared/bricks/props/grow.js.map +1 -1
  198. package/dist/shared/bricks/props/helpers.d.ts +32 -24
  199. package/dist/shared/bricks/props/helpers.d.ts.map +1 -1
  200. package/dist/shared/bricks/props/helpers.js +50 -19
  201. package/dist/shared/bricks/props/helpers.js.map +1 -1
  202. package/dist/shared/bricks/props/image.d.ts +15 -12
  203. package/dist/shared/bricks/props/image.d.ts.map +1 -1
  204. package/dist/shared/bricks/props/image.js +109 -9
  205. package/dist/shared/bricks/props/image.js.map +1 -1
  206. package/dist/shared/bricks/props/number.d.ts +8 -4
  207. package/dist/shared/bricks/props/number.d.ts.map +1 -1
  208. package/dist/shared/bricks/props/number.js +11 -8
  209. package/dist/shared/bricks/props/number.js.map +1 -1
  210. package/dist/shared/bricks/props/position.d.ts +8 -3
  211. package/dist/shared/bricks/props/position.d.ts.map +1 -1
  212. package/dist/shared/bricks/props/position.js +12 -8
  213. package/dist/shared/bricks/props/position.js.map +1 -1
  214. package/dist/shared/bricks/props/string.d.ts +13 -9
  215. package/dist/shared/bricks/props/string.d.ts.map +1 -1
  216. package/dist/shared/bricks/props/string.js +34 -12
  217. package/dist/shared/bricks/props/string.js.map +1 -1
  218. package/dist/shared/bricks/props/tags.d.ts +8 -3
  219. package/dist/shared/bricks/props/tags.d.ts.map +1 -1
  220. package/dist/shared/bricks/props/tags.js +16 -8
  221. package/dist/shared/bricks/props/tags.js.map +1 -1
  222. package/dist/shared/bricks/props/text.d.ts +22 -11
  223. package/dist/shared/bricks/props/text.d.ts.map +1 -1
  224. package/dist/shared/bricks/props/text.js +79 -13
  225. package/dist/shared/bricks/props/text.js.map +1 -1
  226. package/dist/shared/bricks/props/types.d.ts +52 -49
  227. package/dist/shared/bricks/props/types.d.ts.map +1 -1
  228. package/dist/shared/bricks/props/types.js +1 -3
  229. package/dist/shared/bricks.d.ts +183 -179
  230. package/dist/shared/bricks.d.ts.map +1 -1
  231. package/dist/shared/bricks.js +271 -78
  232. package/dist/shared/bricks.js.map +1 -1
  233. package/dist/shared/context.d.ts +405 -398
  234. package/dist/shared/context.d.ts.map +1 -1
  235. package/dist/shared/context.js +22 -93
  236. package/dist/shared/context.js.map +1 -1
  237. package/dist/shared/datarecords/external/airtable/handler.d.ts +40 -20
  238. package/dist/shared/datarecords/external/airtable/handler.d.ts.map +1 -1
  239. package/dist/shared/datarecords/external/airtable/handler.js +242 -366
  240. package/dist/shared/datarecords/external/airtable/handler.js.map +1 -1
  241. package/dist/shared/datarecords/external/airtable/oauth/config.d.ts +14 -9
  242. package/dist/shared/datarecords/external/airtable/oauth/config.d.ts.map +1 -1
  243. package/dist/shared/datarecords/external/airtable/oauth/config.js +12 -15
  244. package/dist/shared/datarecords/external/airtable/oauth/config.js.map +1 -1
  245. package/dist/shared/datarecords/external/airtable/types.d.ts +39 -35
  246. package/dist/shared/datarecords/external/airtable/types.d.ts.map +1 -1
  247. package/dist/shared/datarecords/external/airtable/types.js +44 -13
  248. package/dist/shared/datarecords/external/airtable/types.js.map +1 -1
  249. package/dist/shared/datarecords/external/generic-webhook/handler.d.ts +6 -2
  250. package/dist/shared/datarecords/external/generic-webhook/handler.d.ts.map +1 -1
  251. package/dist/shared/datarecords/external/generic-webhook/handler.js +9 -14
  252. package/dist/shared/datarecords/external/generic-webhook/handler.js.map +1 -1
  253. package/dist/shared/datarecords/external/generic-webhook/options.d.ts +10 -5
  254. package/dist/shared/datarecords/external/generic-webhook/options.d.ts.map +1 -1
  255. package/dist/shared/datarecords/external/generic-webhook/options.js +14 -16
  256. package/dist/shared/datarecords/external/generic-webhook/options.js.map +1 -1
  257. package/dist/shared/datarecords/external/google/oauth/config.d.ts +28 -24
  258. package/dist/shared/datarecords/external/google/oauth/config.d.ts.map +1 -1
  259. package/dist/shared/datarecords/external/google/oauth/config.js +25 -34
  260. package/dist/shared/datarecords/external/google/oauth/config.js.map +1 -1
  261. package/dist/shared/datarecords/external/google/sheets/client.d.ts +11 -9
  262. package/dist/shared/datarecords/external/google/sheets/client.d.ts.map +1 -1
  263. package/dist/shared/datarecords/external/google/sheets/client.js +75 -8
  264. package/dist/shared/datarecords/external/google/sheets/client.js.map +1 -1
  265. package/dist/shared/datarecords/external/google/sheets/handler.d.ts +36 -18
  266. package/dist/shared/datarecords/external/google/sheets/handler.d.ts.map +1 -1
  267. package/dist/shared/datarecords/external/google/sheets/handler.js +103 -176
  268. package/dist/shared/datarecords/external/google/sheets/handler.js.map +1 -1
  269. package/dist/shared/datarecords/external/google/sheets/types.d.ts +12 -7
  270. package/dist/shared/datarecords/external/google/sheets/types.d.ts.map +1 -1
  271. package/dist/shared/datarecords/external/google/sheets/types.js +11 -8
  272. package/dist/shared/datarecords/external/google/sheets/types.js.map +1 -1
  273. package/dist/shared/datarecords/external/notion/handler.d.ts +48 -26
  274. package/dist/shared/datarecords/external/notion/handler.d.ts.map +1 -1
  275. package/dist/shared/datarecords/external/notion/handler.js +233 -386
  276. package/dist/shared/datarecords/external/notion/handler.js.map +1 -1
  277. package/dist/shared/datarecords/external/notion/oauth/config.d.ts +10 -5
  278. package/dist/shared/datarecords/external/notion/oauth/config.d.ts.map +1 -1
  279. package/dist/shared/datarecords/external/notion/oauth/config.js +8 -11
  280. package/dist/shared/datarecords/external/notion/oauth/config.js.map +1 -1
  281. package/dist/shared/datarecords/external/notion/types.d.ts +20 -15
  282. package/dist/shared/datarecords/external/notion/types.d.ts.map +1 -1
  283. package/dist/shared/datarecords/external/notion/types.js +14 -8
  284. package/dist/shared/datarecords/external/notion/types.js.map +1 -1
  285. package/dist/shared/datarecords/types.d.ts +24 -19
  286. package/dist/shared/datarecords/types.d.ts.map +1 -1
  287. package/dist/shared/datarecords/types.js +144 -16
  288. package/dist/shared/datarecords/types.js.map +1 -1
  289. package/dist/shared/datarecords.d.ts +6 -2
  290. package/dist/shared/datarecords.d.ts.map +1 -1
  291. package/dist/shared/datarecords.js +5 -9
  292. package/dist/shared/datarecords.js.map +1 -1
  293. package/dist/shared/datasources/external/facebook/posts/fetcher.d.ts +8 -5
  294. package/dist/shared/datasources/external/facebook/posts/fetcher.d.ts.map +1 -1
  295. package/dist/shared/datasources/external/facebook/posts/fetcher.js +38 -48
  296. package/dist/shared/datasources/external/facebook/posts/fetcher.js.map +1 -1
  297. package/dist/shared/datasources/external/facebook/posts/schema.d.ts +30 -25
  298. package/dist/shared/datasources/external/facebook/posts/schema.d.ts.map +1 -1
  299. package/dist/shared/datasources/external/facebook/posts/schema.js +29 -36
  300. package/dist/shared/datasources/external/facebook/posts/schema.js.map +1 -1
  301. package/dist/shared/datasources/external/http-json/fetcher.d.ts +7 -3
  302. package/dist/shared/datasources/external/http-json/fetcher.d.ts.map +1 -1
  303. package/dist/shared/datasources/external/http-json/fetcher.js +16 -28
  304. package/dist/shared/datasources/external/http-json/fetcher.js.map +1 -1
  305. package/dist/shared/datasources/external/http-json/options.d.ts +10 -5
  306. package/dist/shared/datasources/external/http-json/options.d.ts.map +1 -1
  307. package/dist/shared/datasources/external/http-json/options.js +8 -11
  308. package/dist/shared/datasources/external/http-json/options.js.map +1 -1
  309. package/dist/shared/datasources/external/http-json/schema.d.ts +9 -4
  310. package/dist/shared/datasources/external/http-json/schema.d.ts.map +1 -1
  311. package/dist/shared/datasources/external/http-json/schema.js +6 -10
  312. package/dist/shared/datasources/external/http-json/schema.js.map +1 -1
  313. package/dist/shared/datasources/external/instagram/feed/fetcher.d.ts +8 -5
  314. package/dist/shared/datasources/external/instagram/feed/fetcher.d.ts.map +1 -1
  315. package/dist/shared/datasources/external/instagram/feed/fetcher.js +26 -28
  316. package/dist/shared/datasources/external/instagram/feed/fetcher.js.map +1 -1
  317. package/dist/shared/datasources/external/instagram/feed/schema.d.ts +22 -17
  318. package/dist/shared/datasources/external/instagram/feed/schema.d.ts.map +1 -1
  319. package/dist/shared/datasources/external/instagram/feed/schema.js +26 -29
  320. package/dist/shared/datasources/external/instagram/feed/schema.js.map +1 -1
  321. package/dist/shared/datasources/external/mastodon/account/fetcher.d.ts +7 -4
  322. package/dist/shared/datasources/external/mastodon/account/fetcher.d.ts.map +1 -1
  323. package/dist/shared/datasources/external/mastodon/account/fetcher.js +10 -8
  324. package/dist/shared/datasources/external/mastodon/account/fetcher.js.map +1 -1
  325. package/dist/shared/datasources/external/mastodon/account/schema.d.ts +43 -38
  326. package/dist/shared/datasources/external/mastodon/account/schema.d.ts.map +1 -1
  327. package/dist/shared/datasources/external/mastodon/account/schema.js +42 -8
  328. package/dist/shared/datasources/external/mastodon/account/schema.js.map +1 -1
  329. package/dist/shared/datasources/external/mastodon/options.d.ts +9 -4
  330. package/dist/shared/datasources/external/mastodon/options.d.ts.map +1 -1
  331. package/dist/shared/datasources/external/mastodon/options.js +5 -10
  332. package/dist/shared/datasources/external/mastodon/options.js.map +1 -1
  333. package/dist/shared/datasources/external/mastodon/status/fetcher.d.ts +7 -4
  334. package/dist/shared/datasources/external/mastodon/status/fetcher.d.ts.map +1 -1
  335. package/dist/shared/datasources/external/mastodon/status/fetcher.js +20 -31
  336. package/dist/shared/datasources/external/mastodon/status/fetcher.js.map +1 -1
  337. package/dist/shared/datasources/external/mastodon/status/sample.array.d.ts +50 -47
  338. package/dist/shared/datasources/external/mastodon/status/sample.array.d.ts.map +1 -1
  339. package/dist/shared/datasources/external/mastodon/status/sample.array.js +54 -62
  340. package/dist/shared/datasources/external/mastodon/status/sample.array.js.map +1 -1
  341. package/dist/shared/datasources/external/mastodon/status/sample.single.d.ts +50 -47
  342. package/dist/shared/datasources/external/mastodon/status/sample.single.d.ts.map +1 -1
  343. package/dist/shared/datasources/external/mastodon/status/sample.single.js +54 -60
  344. package/dist/shared/datasources/external/mastodon/status/sample.single.js.map +1 -1
  345. package/dist/shared/datasources/external/mastodon/status/schema.d.ts +252 -247
  346. package/dist/shared/datasources/external/mastodon/status/schema.d.ts.map +1 -1
  347. package/dist/shared/datasources/external/mastodon/status/schema.js +108 -108
  348. package/dist/shared/datasources/external/mastodon/status/schema.js.map +1 -1
  349. package/dist/shared/datasources/external/meta/oauth/config.d.ts +29 -25
  350. package/dist/shared/datasources/external/meta/oauth/config.d.ts.map +1 -1
  351. package/dist/shared/datasources/external/meta/oauth/config.js +15 -20
  352. package/dist/shared/datasources/external/meta/oauth/config.js.map +1 -1
  353. package/dist/shared/datasources/external/meta/options.d.ts +9 -4
  354. package/dist/shared/datasources/external/meta/options.d.ts.map +1 -1
  355. package/dist/shared/datasources/external/meta/options.js +5 -10
  356. package/dist/shared/datasources/external/meta/options.js.map +1 -1
  357. package/dist/shared/datasources/external/rss/fetcher.d.ts +7 -4
  358. package/dist/shared/datasources/external/rss/fetcher.d.ts.map +1 -1
  359. package/dist/shared/datasources/external/rss/fetcher.js +14 -25
  360. package/dist/shared/datasources/external/rss/fetcher.js.map +1 -1
  361. package/dist/shared/datasources/external/rss/options.d.ts +9 -4
  362. package/dist/shared/datasources/external/rss/options.d.ts.map +1 -1
  363. package/dist/shared/datasources/external/rss/options.js +5 -10
  364. package/dist/shared/datasources/external/rss/options.js.map +1 -1
  365. package/dist/shared/datasources/external/rss/sample.js +25 -0
  366. package/dist/shared/datasources/external/rss/sample.js.map +1 -0
  367. package/dist/shared/datasources/external/rss/schema.d.ts +13 -8
  368. package/dist/shared/datasources/external/rss/schema.d.ts.map +1 -1
  369. package/dist/shared/datasources/external/rss/schema.js +30 -8
  370. package/dist/shared/datasources/external/rss/schema.js.map +1 -1
  371. package/dist/shared/datasources/external/threads/media/fetcher.d.ts +9 -5
  372. package/dist/shared/datasources/external/threads/media/fetcher.d.ts.map +1 -1
  373. package/dist/shared/datasources/external/threads/media/fetcher.js +37 -46
  374. package/dist/shared/datasources/external/threads/media/fetcher.js.map +1 -1
  375. package/dist/shared/datasources/external/threads/media/schema.d.ts +29 -24
  376. package/dist/shared/datasources/external/threads/media/schema.d.ts.map +1 -1
  377. package/dist/shared/datasources/external/threads/media/schema.js +32 -36
  378. package/dist/shared/datasources/external/threads/media/schema.js.map +1 -1
  379. package/dist/shared/datasources/external/tiktok/oauth/config.d.ts +31 -27
  380. package/dist/shared/datasources/external/tiktok/oauth/config.d.ts.map +1 -1
  381. package/dist/shared/datasources/external/tiktok/oauth/config.js +15 -18
  382. package/dist/shared/datasources/external/tiktok/oauth/config.js.map +1 -1
  383. package/dist/shared/datasources/external/tiktok/video/fetcher.d.ts +8 -5
  384. package/dist/shared/datasources/external/tiktok/video/fetcher.d.ts.map +1 -1
  385. package/dist/shared/datasources/external/tiktok/video/fetcher.js +31 -33
  386. package/dist/shared/datasources/external/tiktok/video/fetcher.js.map +1 -1
  387. package/dist/shared/datasources/external/tiktok/video/options.d.ts +10 -5
  388. package/dist/shared/datasources/external/tiktok/video/options.d.ts.map +1 -1
  389. package/dist/shared/datasources/external/tiktok/video/options.js +8 -11
  390. package/dist/shared/datasources/external/tiktok/video/options.js.map +1 -1
  391. package/dist/shared/datasources/external/tiktok/video/schema.d.ts +24 -19
  392. package/dist/shared/datasources/external/tiktok/video/schema.d.ts.map +1 -1
  393. package/dist/shared/datasources/external/tiktok/video/schema.js +23 -30
  394. package/dist/shared/datasources/external/tiktok/video/schema.js.map +1 -1
  395. package/dist/shared/datasources/external/youtube/list/fetcher.d.ts +8 -5
  396. package/dist/shared/datasources/external/youtube/list/fetcher.d.ts.map +1 -1
  397. package/dist/shared/datasources/external/youtube/list/fetcher.js +20 -31
  398. package/dist/shared/datasources/external/youtube/list/fetcher.js.map +1 -1
  399. package/dist/shared/datasources/external/youtube/list/options.d.ts +13 -8
  400. package/dist/shared/datasources/external/youtube/list/options.d.ts.map +1 -1
  401. package/dist/shared/datasources/external/youtube/list/options.js +11 -14
  402. package/dist/shared/datasources/external/youtube/list/options.js.map +1 -1
  403. package/dist/shared/datasources/external/youtube/list/sample.js +33 -0
  404. package/dist/shared/datasources/external/youtube/list/sample.js.map +1 -0
  405. package/dist/shared/datasources/external/youtube/list/schema.d.ts +33 -28
  406. package/dist/shared/datasources/external/youtube/list/schema.d.ts.map +1 -1
  407. package/dist/shared/datasources/external/youtube/list/schema.js +36 -8
  408. package/dist/shared/datasources/external/youtube/list/schema.js.map +1 -1
  409. package/dist/shared/datasources/external/youtube/oauth/config.d.ts +22 -18
  410. package/dist/shared/datasources/external/youtube/oauth/config.d.ts.map +1 -1
  411. package/dist/shared/datasources/external/youtube/oauth/config.js +15 -18
  412. package/dist/shared/datasources/external/youtube/oauth/config.js.map +1 -1
  413. package/dist/shared/datasources/fetcher.d.ts +10 -6
  414. package/dist/shared/datasources/fetcher.d.ts.map +1 -1
  415. package/dist/shared/datasources/fetcher.js +1 -3
  416. package/dist/shared/datasources/internal/blog/schema.d.ts +20 -15
  417. package/dist/shared/datasources/internal/blog/schema.d.ts.map +1 -1
  418. package/dist/shared/datasources/internal/blog/schema.js +59 -75
  419. package/dist/shared/datasources/internal/blog/schema.js.map +1 -1
  420. package/dist/shared/datasources/internal/changelog/schema.d.ts +15 -10
  421. package/dist/shared/datasources/internal/changelog/schema.d.ts.map +1 -1
  422. package/dist/shared/datasources/internal/changelog/schema.js +36 -51
  423. package/dist/shared/datasources/internal/changelog/schema.js.map +1 -1
  424. package/dist/shared/datasources/internal/contact-info/schema.d.ts +21 -16
  425. package/dist/shared/datasources/internal/contact-info/schema.d.ts.map +1 -1
  426. package/dist/shared/datasources/internal/contact-info/schema.js +21 -25
  427. package/dist/shared/datasources/internal/contact-info/schema.js.map +1 -1
  428. package/dist/shared/datasources/internal/cv/schema.d.ts +71 -66
  429. package/dist/shared/datasources/internal/cv/schema.d.ts.map +1 -1
  430. package/dist/shared/datasources/internal/cv/schema.js +155 -222
  431. package/dist/shared/datasources/internal/cv/schema.js.map +1 -1
  432. package/dist/shared/datasources/internal/faq/schema.d.ts +13 -8
  433. package/dist/shared/datasources/internal/faq/schema.d.ts.map +1 -1
  434. package/dist/shared/datasources/internal/faq/schema.js +20 -30
  435. package/dist/shared/datasources/internal/faq/schema.js.map +1 -1
  436. package/dist/shared/datasources/internal/job-board/schema.d.ts +86 -81
  437. package/dist/shared/datasources/internal/job-board/schema.d.ts.map +1 -1
  438. package/dist/shared/datasources/internal/job-board/schema.js +194 -224
  439. package/dist/shared/datasources/internal/job-board/schema.js.map +1 -1
  440. package/dist/shared/datasources/internal/links/schema.d.ts +12 -7
  441. package/dist/shared/datasources/internal/links/schema.d.ts.map +1 -1
  442. package/dist/shared/datasources/internal/links/schema.js +20 -8
  443. package/dist/shared/datasources/internal/links/schema.js.map +1 -1
  444. package/dist/shared/datasources/internal/recipes/schema.d.ts +19 -14
  445. package/dist/shared/datasources/internal/recipes/schema.d.ts.map +1 -1
  446. package/dist/shared/datasources/internal/recipes/schema.js +23 -45
  447. package/dist/shared/datasources/internal/recipes/schema.js.map +1 -1
  448. package/dist/shared/datasources/internal/restaurant/schema.d.ts +82 -77
  449. package/dist/shared/datasources/internal/restaurant/schema.d.ts.map +1 -1
  450. package/dist/shared/datasources/internal/restaurant/schema.js +154 -226
  451. package/dist/shared/datasources/internal/restaurant/schema.js.map +1 -1
  452. package/dist/shared/datasources/samples.d.ts +7 -3
  453. package/dist/shared/datasources/samples.d.ts.map +1 -1
  454. package/dist/shared/datasources/samples.js +9 -69
  455. package/dist/shared/datasources/samples.js.map +1 -1
  456. package/dist/shared/datasources/schemas.d.ts +43 -38
  457. package/dist/shared/datasources/schemas.d.ts.map +1 -1
  458. package/dist/shared/datasources/schemas.js +10 -34
  459. package/dist/shared/datasources/schemas.js.map +1 -1
  460. package/dist/shared/datasources/types.d.ts +142 -138
  461. package/dist/shared/datasources/types.d.ts.map +1 -1
  462. package/dist/shared/datasources/types.js +384 -20
  463. package/dist/shared/datasources/types.js.map +1 -1
  464. package/dist/shared/datasources/utils.d.ts +8 -4
  465. package/dist/shared/datasources/utils.d.ts.map +1 -1
  466. package/dist/shared/datasources/utils.js +15 -12
  467. package/dist/shared/datasources/utils.js.map +1 -1
  468. package/dist/shared/datasources.d.ts +22 -9
  469. package/dist/shared/datasources.d.ts.map +1 -1
  470. package/dist/shared/datasources.js +65 -44
  471. package/dist/shared/datasources.js.map +1 -1
  472. package/dist/shared/env.d.ts +25 -21
  473. package/dist/shared/env.d.ts.map +1 -1
  474. package/dist/shared/env.js +1 -3
  475. package/dist/shared/errors.d.ts +2 -2
  476. package/dist/shared/errors.js +2 -9
  477. package/dist/shared/images.d.ts +21 -16
  478. package/dist/shared/images.d.ts.map +1 -1
  479. package/dist/shared/images.js +24 -11
  480. package/dist/shared/images.js.map +1 -1
  481. package/dist/shared/index.d.ts +4 -2
  482. package/dist/shared/index.d.ts.map +1 -1
  483. package/dist/shared/index.js +4 -10
  484. package/dist/shared/index.js.map +1 -1
  485. package/dist/shared/layout-constants.d.ts +8 -5
  486. package/dist/shared/layout-constants.d.ts.map +1 -1
  487. package/dist/shared/layout-constants.js +15 -15
  488. package/dist/shared/layout-constants.js.map +1 -1
  489. package/dist/shared/manifest.d.ts +17 -12
  490. package/dist/shared/manifest.d.ts.map +1 -1
  491. package/dist/shared/manifest.js +26 -52
  492. package/dist/shared/manifest.js.map +1 -1
  493. package/dist/shared/oauth.d.ts +14 -9
  494. package/dist/shared/oauth.d.ts.map +1 -1
  495. package/dist/shared/oauth.js +14 -9
  496. package/dist/shared/oauth.js.map +1 -1
  497. package/dist/shared/page.d.ts +250 -243
  498. package/dist/shared/page.d.ts.map +1 -1
  499. package/dist/shared/page.js +29 -62
  500. package/dist/shared/page.js.map +1 -1
  501. package/dist/shared/prompt.d.ts +8 -3
  502. package/dist/shared/prompt.d.ts.map +1 -1
  503. package/dist/shared/prompt.js +10 -8
  504. package/dist/shared/prompt.js.map +1 -1
  505. package/dist/shared/responsive.d.ts +8 -3
  506. package/dist/shared/responsive.d.ts.map +1 -1
  507. package/dist/shared/responsive.js +5 -10
  508. package/dist/shared/responsive.js.map +1 -1
  509. package/dist/shared/site.d.ts +629 -622
  510. package/dist/shared/site.d.ts.map +1 -1
  511. package/dist/shared/site.js +56 -70
  512. package/dist/shared/site.js.map +1 -1
  513. package/dist/shared/sitemap.d.ts +21 -14
  514. package/dist/shared/sitemap.d.ts.map +1 -1
  515. package/dist/shared/sitemap.js +29 -63
  516. package/dist/shared/sitemap.js.map +1 -1
  517. package/dist/shared/social-icons.d.ts +6 -3
  518. package/dist/shared/social-icons.d.ts.map +1 -1
  519. package/dist/shared/social-icons.js +309 -313
  520. package/dist/shared/social-icons.js.map +1 -1
  521. package/dist/shared/theme.d.ts +83 -78
  522. package/dist/shared/theme.d.ts.map +1 -1
  523. package/dist/shared/theme.js +261 -18
  524. package/dist/shared/theme.js.map +1 -1
  525. package/dist/shared/themes/color-system.d.ts +16 -12
  526. package/dist/shared/themes/color-system.d.ts.map +1 -1
  527. package/dist/shared/themes/color-system.js +81 -89
  528. package/dist/shared/themes/color-system.js.map +1 -1
  529. package/dist/shared/utils/canvas-data-uri.d.ts +4 -1
  530. package/dist/shared/utils/canvas-data-uri.d.ts.map +1 -1
  531. package/dist/shared/utils/canvas-data-uri.js +4 -8
  532. package/dist/shared/utils/canvas-data-uri.js.map +1 -1
  533. package/dist/shared/utils/invariant.d.ts +4 -1
  534. package/dist/shared/utils/invariant.d.ts.map +1 -1
  535. package/dist/shared/utils/invariant.js +10 -8
  536. package/dist/shared/utils/invariant.js.map +1 -1
  537. package/dist/shared/utils/json-date.d.ts +9 -4
  538. package/dist/shared/utils/json-date.d.ts.map +1 -1
  539. package/dist/shared/utils/json-date.js +6 -8
  540. package/dist/shared/utils/json-date.js.map +1 -1
  541. package/dist/shared/utils/llm.d.ts +7 -2
  542. package/dist/shared/utils/llm.d.ts.map +1 -1
  543. package/dist/shared/utils/llm.js +57 -8
  544. package/dist/shared/utils/llm.js.map +1 -1
  545. package/dist/shared/utils/merge.d.ts +4 -1
  546. package/dist/shared/utils/merge.d.ts.map +1 -1
  547. package/dist/shared/utils/merge.js +11 -8
  548. package/dist/shared/utils/merge.js.map +1 -1
  549. package/dist/shared/utils/object-hash.d.ts +4 -1
  550. package/dist/shared/utils/object-hash.d.ts.map +1 -1
  551. package/dist/shared/utils/object-hash.js +8 -13
  552. package/dist/shared/utils/object-hash.js.map +1 -1
  553. package/dist/shared/utils/schema.d.ts +13 -10
  554. package/dist/shared/utils/schema.d.ts.map +1 -1
  555. package/dist/shared/utils/schema.js +91 -14
  556. package/dist/shared/utils/schema.js.map +1 -1
  557. package/dist/shared/utils/string-enum.d.ts +13 -8
  558. package/dist/shared/utils/string-enum.d.ts.map +1 -1
  559. package/dist/shared/utils/string-enum.js +18 -8
  560. package/dist/shared/utils/string-enum.js.map +1 -1
  561. package/dist/shared/utils/try-catch.d.ts +4 -2
  562. package/dist/shared/utils/try-catch.d.ts.map +1 -1
  563. package/dist/shared/utils/try-catch.js +12 -13
  564. package/dist/shared/utils/try-catch.js.map +1 -1
  565. package/package.json +10 -20
  566. package/src/shared/ai/schemas.ts +5 -3
  567. package/src/shared/attributes.ts +10 -6
  568. package/src/shared/bricks/manifests/card.manifest.ts +2 -5
  569. package/src/shared/bricks/manifests/image.manifest.ts +1 -5
  570. package/src/shared/bricks/props/color.ts +3 -2
  571. package/src/shared/bricks/props/dynamic.ts +4 -1
  572. package/src/shared/bricks/props/image.ts +2 -3
  573. package/src/shared/bricks.ts +3 -2
  574. package/src/shared/datarecords/types.ts +41 -33
  575. package/src/shared/datasources/external/rss/fetcher.ts +0 -6
  576. package/src/shared/datasources.ts +13 -5
  577. package/src/shared/prompt.ts +1 -1
  578. package/src/shared/site.ts +2 -1
  579. package/src/shared/sitemap.ts +7 -0
  580. package/src/shared/utils/schema.ts +12 -43
  581. package/src/shared/utils/tests/schema.test.ts +53 -28
  582. package/dist/shared/ai/types.js.map +0 -1
  583. package/dist/shared/ajv.d.ts +0 -7
  584. package/dist/shared/ajv.d.ts.map +0 -1
  585. package/dist/shared/ajv.js +0 -6866
  586. package/dist/shared/ajv.js.map +0 -1
  587. package/dist/shared/analytics/types.js.map +0 -1
  588. package/dist/shared/bricks/manifests/_types.js.map +0 -1
  589. package/dist/shared/bricks/manifests/tests/header.manifest.test.d.ts +0 -2
  590. package/dist/shared/bricks/manifests/tests/header.manifest.test.d.ts.map +0 -1
  591. package/dist/shared/bricks/props/tests/background.test.d.ts +0 -2
  592. package/dist/shared/bricks/props/tests/background.test.d.ts.map +0 -1
  593. package/dist/shared/bricks/props/tests/border.test.d.ts +0 -2
  594. package/dist/shared/bricks/props/tests/border.test.d.ts.map +0 -1
  595. package/dist/shared/bricks/props/tests/effects.test.d.ts +0 -2
  596. package/dist/shared/bricks/props/tests/effects.test.d.ts.map +0 -1
  597. package/dist/shared/bricks/props/tests/helpers.test.d.ts +0 -2
  598. package/dist/shared/bricks/props/tests/helpers.test.d.ts.map +0 -1
  599. package/dist/shared/bricks/props/tests/image.test.d.ts +0 -2
  600. package/dist/shared/bricks/props/tests/image.test.d.ts.map +0 -1
  601. package/dist/shared/bricks/props/tests/string.test.d.ts +0 -2
  602. package/dist/shared/bricks/props/tests/string.test.d.ts.map +0 -1
  603. package/dist/shared/bricks/props/types.js.map +0 -1
  604. package/dist/shared/chunk-2BPYOTKA.js +0 -21
  605. package/dist/shared/chunk-2BPYOTKA.js.map +0 -1
  606. package/dist/shared/chunk-2EOCK66Z.js +0 -19
  607. package/dist/shared/chunk-2EOCK66Z.js.map +0 -1
  608. package/dist/shared/chunk-2U5U3CCJ.js +0 -90
  609. package/dist/shared/chunk-2U5U3CCJ.js.map +0 -1
  610. package/dist/shared/chunk-2UEPTT5J.js +0 -67
  611. package/dist/shared/chunk-2UEPTT5J.js.map +0 -1
  612. package/dist/shared/chunk-2Z5WOCFS.js +0 -126
  613. package/dist/shared/chunk-2Z5WOCFS.js.map +0 -1
  614. package/dist/shared/chunk-34IUWNRX.js +0 -346
  615. package/dist/shared/chunk-34IUWNRX.js.map +0 -1
  616. package/dist/shared/chunk-3ZDN5BWN.js +0 -18
  617. package/dist/shared/chunk-3ZDN5BWN.js.map +0 -1
  618. package/dist/shared/chunk-55C6MTX2.js +0 -21
  619. package/dist/shared/chunk-55C6MTX2.js.map +0 -1
  620. package/dist/shared/chunk-57NRTXRA.js +0 -309
  621. package/dist/shared/chunk-57NRTXRA.js.map +0 -1
  622. package/dist/shared/chunk-5HJT5NJ3.js +0 -422
  623. package/dist/shared/chunk-5HJT5NJ3.js.map +0 -1
  624. package/dist/shared/chunk-5J4Y43RM.js +0 -388
  625. package/dist/shared/chunk-5J4Y43RM.js.map +0 -1
  626. package/dist/shared/chunk-5OVOXUFX.js +0 -61
  627. package/dist/shared/chunk-5OVOXUFX.js.map +0 -1
  628. package/dist/shared/chunk-5RCC2STG.js +0 -58
  629. package/dist/shared/chunk-5RCC2STG.js.map +0 -1
  630. package/dist/shared/chunk-5SNSUC6Q.js +0 -364
  631. package/dist/shared/chunk-5SNSUC6Q.js.map +0 -1
  632. package/dist/shared/chunk-6TVVKUWM.js +0 -15
  633. package/dist/shared/chunk-6TVVKUWM.js.map +0 -1
  634. package/dist/shared/chunk-6WIMWLCJ.js +0 -17
  635. package/dist/shared/chunk-6WIMWLCJ.js.map +0 -1
  636. package/dist/shared/chunk-7LAWWRU7.js +0 -21
  637. package/dist/shared/chunk-7LAWWRU7.js.map +0 -1
  638. package/dist/shared/chunk-B5T2LFV2.js +0 -494
  639. package/dist/shared/chunk-B5T2LFV2.js.map +0 -1
  640. package/dist/shared/chunk-BHARJBEK.js +0 -27
  641. package/dist/shared/chunk-BHARJBEK.js.map +0 -1
  642. package/dist/shared/chunk-DCM4732T.js +0 -146
  643. package/dist/shared/chunk-DCM4732T.js.map +0 -1
  644. package/dist/shared/chunk-E3ZW57HF.js +0 -843
  645. package/dist/shared/chunk-E3ZW57HF.js.map +0 -1
  646. package/dist/shared/chunk-EID5HPF3.js +0 -63
  647. package/dist/shared/chunk-EID5HPF3.js.map +0 -1
  648. package/dist/shared/chunk-EMF5TCPX.js +0 -389
  649. package/dist/shared/chunk-EMF5TCPX.js.map +0 -1
  650. package/dist/shared/chunk-EUFVTHAG.js +0 -33
  651. package/dist/shared/chunk-EUFVTHAG.js.map +0 -1
  652. package/dist/shared/chunk-FC52EHCC.js +0 -104
  653. package/dist/shared/chunk-FC52EHCC.js.map +0 -1
  654. package/dist/shared/chunk-FD7YYFRI.js +0 -225
  655. package/dist/shared/chunk-FD7YYFRI.js.map +0 -1
  656. package/dist/shared/chunk-FVV27R73.js +0 -269
  657. package/dist/shared/chunk-FVV27R73.js.map +0 -1
  658. package/dist/shared/chunk-FYGFB5U5.js +0 -57
  659. package/dist/shared/chunk-FYGFB5U5.js.map +0 -1
  660. package/dist/shared/chunk-GDYCCB3B.js +0 -22
  661. package/dist/shared/chunk-GDYCCB3B.js.map +0 -1
  662. package/dist/shared/chunk-GLV6QIIM.js +0 -41
  663. package/dist/shared/chunk-GLV6QIIM.js.map +0 -1
  664. package/dist/shared/chunk-GNTJT7MR.js +0 -56
  665. package/dist/shared/chunk-GNTJT7MR.js.map +0 -1
  666. package/dist/shared/chunk-HHUFGV7J.js +0 -259
  667. package/dist/shared/chunk-HHUFGV7J.js.map +0 -1
  668. package/dist/shared/chunk-HPCCD6V5.js +0 -17
  669. package/dist/shared/chunk-HPCCD6V5.js.map +0 -1
  670. package/dist/shared/chunk-IEMCCHM4.js +0 -389
  671. package/dist/shared/chunk-IEMCCHM4.js.map +0 -1
  672. package/dist/shared/chunk-IMDOF55E.js +0 -137
  673. package/dist/shared/chunk-IMDOF55E.js.map +0 -1
  674. package/dist/shared/chunk-IPWYNE6Y.js +0 -213
  675. package/dist/shared/chunk-IPWYNE6Y.js.map +0 -1
  676. package/dist/shared/chunk-J6R3GSKS.js +0 -386
  677. package/dist/shared/chunk-J6R3GSKS.js.map +0 -1
  678. package/dist/shared/chunk-KNREHAPN.js +0 -13
  679. package/dist/shared/chunk-KNREHAPN.js.map +0 -1
  680. package/dist/shared/chunk-KRODRZNS.js +0 -440
  681. package/dist/shared/chunk-KRODRZNS.js.map +0 -1
  682. package/dist/shared/chunk-KT7SSWMM.js +0 -24
  683. package/dist/shared/chunk-KT7SSWMM.js.map +0 -1
  684. package/dist/shared/chunk-KTA7XES3.js +0 -168
  685. package/dist/shared/chunk-KTA7XES3.js.map +0 -1
  686. package/dist/shared/chunk-L4W4B2RQ.js +0 -174
  687. package/dist/shared/chunk-L4W4B2RQ.js.map +0 -1
  688. package/dist/shared/chunk-MO6CRLQA.js +0 -73
  689. package/dist/shared/chunk-MO6CRLQA.js.map +0 -1
  690. package/dist/shared/chunk-NTP6BKRU.js +0 -516
  691. package/dist/shared/chunk-NTP6BKRU.js.map +0 -1
  692. package/dist/shared/chunk-O53V22BK.js +0 -469
  693. package/dist/shared/chunk-O53V22BK.js.map +0 -1
  694. package/dist/shared/chunk-O5PQISX4.js +0 -51
  695. package/dist/shared/chunk-O5PQISX4.js.map +0 -1
  696. package/dist/shared/chunk-OJ6KL7FU.js +0 -32
  697. package/dist/shared/chunk-OJ6KL7FU.js.map +0 -1
  698. package/dist/shared/chunk-OJP4HMJT.js +0 -22
  699. package/dist/shared/chunk-OJP4HMJT.js.map +0 -1
  700. package/dist/shared/chunk-ORIUCOED.js +0 -129
  701. package/dist/shared/chunk-ORIUCOED.js.map +0 -1
  702. package/dist/shared/chunk-OSJ6KGPX.js +0 -16
  703. package/dist/shared/chunk-OSJ6KGPX.js.map +0 -1
  704. package/dist/shared/chunk-OXYXZHP2.js +0 -48
  705. package/dist/shared/chunk-OXYXZHP2.js.map +0 -1
  706. package/dist/shared/chunk-PFZMRSHJ.js +0 -616
  707. package/dist/shared/chunk-PFZMRSHJ.js.map +0 -1
  708. package/dist/shared/chunk-QHKOAIOK.js +0 -243
  709. package/dist/shared/chunk-QHKOAIOK.js.map +0 -1
  710. package/dist/shared/chunk-QLQVDZIL.js +0 -11
  711. package/dist/shared/chunk-QLQVDZIL.js.map +0 -1
  712. package/dist/shared/chunk-RDOCVLCF.js +0 -422
  713. package/dist/shared/chunk-RDOCVLCF.js.map +0 -1
  714. package/dist/shared/chunk-RFH7PEVS.js +0 -38
  715. package/dist/shared/chunk-RFH7PEVS.js.map +0 -1
  716. package/dist/shared/chunk-T3UPW5OW.js +0 -79
  717. package/dist/shared/chunk-T3UPW5OW.js.map +0 -1
  718. package/dist/shared/chunk-TGKNA2JS.js +0 -847
  719. package/dist/shared/chunk-TGKNA2JS.js.map +0 -1
  720. package/dist/shared/chunk-TKMWY2VN.js +0 -18
  721. package/dist/shared/chunk-TKMWY2VN.js.map +0 -1
  722. package/dist/shared/chunk-TZ6X7ZM5.js +0 -158
  723. package/dist/shared/chunk-TZ6X7ZM5.js.map +0 -1
  724. package/dist/shared/chunk-UC75KRLX.js +0 -67
  725. package/dist/shared/chunk-UC75KRLX.js.map +0 -1
  726. package/dist/shared/chunk-VMIJ6MG5.js +0 -368
  727. package/dist/shared/chunk-VMIJ6MG5.js.map +0 -1
  728. package/dist/shared/chunk-VYA2FCTY.js +0 -83
  729. package/dist/shared/chunk-VYA2FCTY.js.map +0 -1
  730. package/dist/shared/chunk-WPZV3LYL.js +0 -24
  731. package/dist/shared/chunk-WPZV3LYL.js.map +0 -1
  732. package/dist/shared/chunk-XCWMZVF5.js +0 -89
  733. package/dist/shared/chunk-XCWMZVF5.js.map +0 -1
  734. package/dist/shared/chunk-XCZVD5H6.js +0 -13
  735. package/dist/shared/chunk-XCZVD5H6.js.map +0 -1
  736. package/dist/shared/chunk-XFZQGRRL.js +0 -101
  737. package/dist/shared/chunk-XFZQGRRL.js.map +0 -1
  738. package/dist/shared/chunk-XYWSIMZ6.js +0 -59
  739. package/dist/shared/chunk-XYWSIMZ6.js.map +0 -1
  740. package/dist/shared/chunk-XZ6WJZHN.js +0 -10
  741. package/dist/shared/chunk-XZ6WJZHN.js.map +0 -1
  742. package/dist/shared/chunk-ZEFOWKYP.js +0 -44
  743. package/dist/shared/chunk-ZEFOWKYP.js.map +0 -1
  744. package/dist/shared/chunk-ZGQ3AQBG.js +0 -33
  745. package/dist/shared/chunk-ZGQ3AQBG.js.map +0 -1
  746. package/dist/shared/chunk-ZRBTAC3G.js +0 -53
  747. package/dist/shared/chunk-ZRBTAC3G.js.map +0 -1
  748. package/dist/shared/chunk-ZYQZUWF7.js +0 -537
  749. package/dist/shared/chunk-ZYQZUWF7.js.map +0 -1
  750. package/dist/shared/chunk-ZZVYD4BG.js +0 -41
  751. package/dist/shared/chunk-ZZVYD4BG.js.map +0 -1
  752. package/dist/shared/datasources/external/facebook/posts/sample.d.ts +0 -26
  753. package/dist/shared/datasources/external/facebook/posts/sample.d.ts.map +0 -1
  754. package/dist/shared/datasources/external/facebook/posts/tests/fetcher.test.d.ts +0 -2
  755. package/dist/shared/datasources/external/facebook/posts/tests/fetcher.test.d.ts.map +0 -1
  756. package/dist/shared/datasources/external/http-json/tests/fetcher.test.d.ts +0 -2
  757. package/dist/shared/datasources/external/http-json/tests/fetcher.test.d.ts.map +0 -1
  758. package/dist/shared/datasources/external/instagram/feed/sample.d.ts +0 -3
  759. package/dist/shared/datasources/external/instagram/feed/sample.d.ts.map +0 -1
  760. package/dist/shared/datasources/external/instagram/feed/tests/fetcher.test.d.ts +0 -2
  761. package/dist/shared/datasources/external/instagram/feed/tests/fetcher.test.d.ts.map +0 -1
  762. package/dist/shared/datasources/external/mastodon/account/sample.d.ts +0 -30
  763. package/dist/shared/datasources/external/mastodon/account/sample.d.ts.map +0 -1
  764. package/dist/shared/datasources/external/mastodon/account/tests/fetcher.test.d.ts +0 -2
  765. package/dist/shared/datasources/external/mastodon/account/tests/fetcher.test.d.ts.map +0 -1
  766. package/dist/shared/datasources/external/mastodon/status/tests/fetcher.test.d.ts +0 -2
  767. package/dist/shared/datasources/external/mastodon/status/tests/fetcher.test.d.ts.map +0 -1
  768. package/dist/shared/datasources/external/rss/sample.d.ts +0 -3
  769. package/dist/shared/datasources/external/rss/sample.d.ts.map +0 -1
  770. package/dist/shared/datasources/external/threads/media/sample.d.ts +0 -40
  771. package/dist/shared/datasources/external/threads/media/sample.d.ts.map +0 -1
  772. package/dist/shared/datasources/external/tiktok/video/sample.d.ts +0 -15
  773. package/dist/shared/datasources/external/tiktok/video/sample.d.ts.map +0 -1
  774. package/dist/shared/datasources/external/youtube/list/sample.d.ts +0 -29
  775. package/dist/shared/datasources/external/youtube/list/sample.d.ts.map +0 -1
  776. package/dist/shared/datasources/fetcher.js.map +0 -1
  777. package/dist/shared/env.js.map +0 -1
  778. package/dist/shared/errors.d.ts.map +0 -1
  779. package/dist/shared/errors.js.map +0 -1
  780. package/dist/shared/tests/attributes.test.d.ts +0 -2
  781. package/dist/shared/tests/attributes.test.d.ts.map +0 -1
  782. package/dist/shared/themes/tests/color-system.test.d.ts +0 -2
  783. package/dist/shared/themes/tests/color-system.test.d.ts.map +0 -1
  784. package/dist/shared/utils/tests/schema.test.d.ts +0 -2
  785. package/dist/shared/utils/tests/schema.test.d.ts.map +0 -1
  786. package/src/shared/ajv.ts +0 -123
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/shared/bricks/manifests/carousel.manifest.ts"],"sourcesContent":["import { Type } from \"@sinclair/typebox\";\nimport { TbCarouselHorizontal } from \"react-icons/tb\";\nimport { defineBrickManifest } from \"~/shared/brick-manifest\";\nimport { defineProps } from \"../props/helpers\";\nimport { image } from \"../props/image\";\nimport { rounding } from \"../props/border\";\nimport { colorPreset } from \"../props/color-preset\";\nimport { loop } from \"../props/dynamic\";\nimport { cssLength } from \"../props/css-length\";\nimport type { BrickExample } from \"./_types\";\n\nexport const manifest = defineBrickManifest({\n type: \"carousel\",\n name: \"Carousel\",\n description: \"An image carousel with navigation arrows and dots or numbers indicator\",\n aiInstructions: `Use the carousel component for showcasing sequential visual content with smooth navigation between images.\n\nWHEN TO USE:\n- Product galleries with multiple angles or variations\n- Portfolio showcases with project images\n- Step-by-step tutorials or processes (recipes, instructions)\n- Before/after comparisons or transformations\n- Team member profiles with photos\n- Event photo galleries or highlights\n- Feature demonstrations or software screenshots\n- Travel destinations or location showcases\n\nCONTENT GUIDELINES:\n- Optimal range: 2-8 images for best user engagement (max 12 supported)\n- Single image allowed only as placeholder for future expansion\n- Each image needs: { src: { src, alt }, legend }\n- Alt text MUST be descriptive and never empty\n- Legend text should be concise (≤90 characters) and informative\n- Use empty string (\"\") for legend only when no caption is intentionally desired\n\nIMAGE CONSISTENCY:\n- Keep aspect ratios similar across slides to prevent layout jumps\n- Avoid mixing very tall portrait with very wide landscape images\n- Use consistent image quality and style throughout carousel\n- Consider loading performance with image optimization\n\nSTYLING OPTIONS:\n- padding: \"0\" for edge-to-edge, \"1rem\" for standard, \"2rem+\" for generous spacing\n- borderRadius: \"rounded-none\" for sharp/modern, \"rounded-md\" for standard, \"rounded-xl\" for friendly, \"rounded-full\" for circular (avatars)\n- colorPreset: Use sparingly - \"neutral-50\"/\"primary-50\" for subtle framing, gradients for premium feel\n\nDYNAMIC CONTENT:\n- Use loop property with single template object for data-driven carousels\n- Template variables in src and legend: \"{{product.image}}\", \"{{team.name}} - {{team.role}}\"\n- Perfect for: product catalogs, team directories, portfolio projects, event galleries\n\nAVOID:\n- Including unrelated properties (buttons, titles outside legend)\n- Heavy background colors that distract from images\n- Inconsistent aspect ratios that cause jarring transitions\n- More than 12 images (reduces focus and performance)\n- Empty or placeholder alt text (accessibility requirement)`,\n category: \"media\",\n defaultInspectorTab: \"content\",\n consumesMultipleQueryRows: true,\n minHeight: {\n desktop: 200,\n },\n minWidth: {\n desktop: 300,\n },\n icon: TbCarouselHorizontal,\n props: defineProps({\n colorPreset: Type.Optional(\n colorPreset({\n title: \"Color\",\n }),\n ),\n padding: Type.Optional(\n cssLength({\n default: \"1rem\",\n description: \"Padding inside the carousel.\",\n \"ai:instructions\": \"Use only a single value like '1rem' or '10px'\",\n title: \"Padding\",\n \"ui:responsive\": true,\n \"ui:placeholder\": \"Not specified\",\n \"ui:styleId\": \"styles:padding\",\n }),\n ),\n images: Type.Optional(\n Type.Array(\n Type.Object({\n src: image({\n \"ui:responsive\": \"desktop\",\n \"ui:no-alt-text\": true,\n \"ui:no-object-options\": true,\n }),\n legend: Type.String({ title: \"Legend\" }),\n }),\n {\n title: \"Images\",\n default: [],\n maxItems: 12,\n metadata: {\n category: \"content\",\n },\n },\n ),\n ),\n borderRadius: Type.Optional(\n rounding({\n default: \"rounded-md\",\n }),\n ),\n loop: Type.Optional(loop()),\n }),\n});\n\nexport type Manifest = typeof manifest;\n\nexport const examples: BrickExample<Manifest>[] = [\n // BASIC CAROUSEL EXAMPLES\n {\n description: \"Basic image carousel with legends - Simple content showcase\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/800x400.png?text=Slide+1\",\n alt: \"First slide\",\n },\n legend: \"Beautiful landscape\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x400.png?text=Slide+2\",\n alt: \"Second slide\",\n },\n legend: \"Amazing architecture\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x400.png?text=Slide+3\",\n alt: \"Third slide\",\n },\n legend: \"Stunning nature\",\n },\n ],\n },\n },\n\n // PRODUCT & COMMERCIAL\n {\n description: \"Product showcase carousel with rounded corners and padding - E-commerce gallery style\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/600x400.png?text=Product+1\",\n alt: \"Product 1\",\n },\n legend: \"Premium Headphones - $199\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/600x400.png?text=Product+2\",\n alt: \"Product 2\",\n },\n legend: \"Wireless Speaker - $149\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/600x400.png?text=Product+3\",\n alt: \"Product 3\",\n },\n legend: \"Smart Watch - $299\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/600x400.png?text=Product+4\",\n alt: \"Product 4\",\n },\n legend: \"Laptop Stand - $79\",\n },\n ],\n borderRadius: \"rounded-xl\",\n padding: \"2rem\",\n colorPreset: { color: \"neutral-50\" },\n },\n },\n\n // PORTFOLIO & CREATIVE\n {\n description: \"Portfolio carousel with minimal styling - Clean professional presentation\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/900x600.png?text=Portfolio+1\",\n alt: \"Portfolio piece 1\",\n },\n legend: \"Web Design Project\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/900x600.png?text=Portfolio+2\",\n alt: \"Portfolio piece 2\",\n },\n legend: \"Brand Identity Design\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/900x600.png?text=Portfolio+3\",\n alt: \"Portfolio piece 3\",\n },\n legend: \"Mobile App Interface\",\n },\n ],\n borderRadius: \"rounded-none\",\n padding: \"0\",\n },\n },\n\n // EVENTS & EXPERIENCES\n {\n description: \"Event photos carousel with primary color theme - Conference or gathering highlights\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/800x500.png?text=Event+Photo+1\",\n alt: \"Event photo 1\",\n },\n legend: \"Opening Ceremony\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x500.png?text=Event+Photo+2\",\n alt: \"Event photo 2\",\n },\n legend: \"Keynote Speaker\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x500.png?text=Event+Photo+3\",\n alt: \"Event photo 3\",\n },\n legend: \"Networking Session\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x500.png?text=Event+Photo+4\",\n alt: \"Event photo 4\",\n },\n legend: \"Award Ceremony\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x500.png?text=Event+Photo+5\",\n alt: \"Event photo 5\",\n },\n legend: \"Closing Remarks\",\n },\n ],\n colorPreset: { color: \"primary-100\" },\n borderRadius: \"rounded-lg\",\n padding: \"1.5rem\",\n },\n },\n {\n description: \"Travel destinations carousel without legends\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/700x450.png?text=Paris\",\n alt: \"Paris cityscape\",\n },\n legend: \"\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/700x450.png?text=Tokyo\",\n alt: \"Tokyo skyline\",\n },\n legend: \"\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/700x450.png?text=New+York\",\n alt: \"New York streets\",\n },\n legend: \"\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/700x450.png?text=London\",\n alt: \"London landmarks\",\n },\n legend: \"\",\n },\n ],\n borderRadius: \"rounded-2xl\",\n padding: \"1rem\",\n },\n },\n\n // TEAM & PEOPLE\n {\n description: \"Team members carousel with circular images - Professional team showcase\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/400x400.png?text=Team+1\",\n alt: \"Team member 1\",\n },\n legend: \"John Smith - CEO\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/400x400.png?text=Team+2\",\n alt: \"Team member 2\",\n },\n legend: \"Sarah Johnson - CTO\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/400x400.png?text=Team+3\",\n alt: \"Team member 3\",\n },\n legend: \"Mike Davis - Design Lead\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/400x400.png?text=Team+4\",\n alt: \"Team member 4\",\n },\n legend: \"Emily Chen - Marketing Director\",\n },\n ],\n colorPreset: { color: \"primary-50\" },\n borderRadius: \"rounded-full\",\n padding: \"2rem\",\n },\n },\n\n // TUTORIALS & PROCESSES\n {\n description: \"Recipe steps carousel with detailed descriptions - Step-by-step instructional content\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/600x400.png?text=Step+1\",\n alt: \"Recipe step 1\",\n },\n legend: \"Step 1: Prepare all ingredients\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/600x400.png?text=Step+2\",\n alt: \"Recipe step 2\",\n },\n legend: \"Step 2: Heat oil in a large pan\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/600x400.png?text=Step+3\",\n alt: \"Recipe step 3\",\n },\n legend: \"Step 3: Add vegetables and sauté\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/600x400.png?text=Step+4\",\n alt: \"Recipe step 4\",\n },\n legend: \"Step 4: Season and serve hot\",\n },\n ],\n colorPreset: { color: \"accent-50\" },\n borderRadius: \"rounded-md\",\n padding: \"1.5rem\",\n },\n },\n {\n description: \"Before and after comparison carousel\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/800x400.png?text=Before+1\",\n alt: \"Before renovation 1\",\n },\n legend: \"Kitchen - Before Renovation\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x400.png?text=After+1\",\n alt: \"After renovation 1\",\n },\n legend: \"Kitchen - After Renovation\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x400.png?text=Before+2\",\n alt: \"Before renovation 2\",\n },\n legend: \"Living Room - Before\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x400.png?text=After+2\",\n alt: \"After renovation 2\",\n },\n legend: \"Living Room - After\",\n },\n ],\n colorPreset: { color: \"accent-100\" },\n borderRadius: \"rounded-lg\",\n padding: \"1rem\",\n },\n },\n {\n description: \"Art gallery carousel with dramatic styling\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/600x800.png?text=Artwork+1\",\n alt: \"Abstract painting 1\",\n },\n legend: \"Abstract Composition #1 - 2023\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/600x800.png?text=Artwork+2\",\n alt: \"Abstract painting 2\",\n },\n legend: \"Urban Landscape - 2023\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/600x800.png?text=Artwork+3\",\n alt: \"Abstract painting 3\",\n },\n legend: \"Color Study #7 - 2024\",\n },\n ],\n colorPreset: { color: \"neutral-900\" },\n borderRadius: \"rounded-sm\",\n padding: \"3rem\",\n },\n },\n {\n description: \"Fashion lookbook carousel with purple theme\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/500x700.png?text=Look+1\",\n alt: \"Fashion look 1\",\n },\n legend: \"Spring Collection - Casual Chic\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/500x700.png?text=Look+2\",\n alt: \"Fashion look 2\",\n },\n legend: \"Summer Vibes - Beach Ready\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/500x700.png?text=Look+3\",\n alt: \"Fashion look 3\",\n },\n legend: \"Autumn Elegance - Business\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/500x700.png?text=Look+4\",\n alt: \"Fashion look 4\",\n },\n legend: \"Winter Style - Cozy Comfort\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/500x700.png?text=Look+5\",\n alt: \"Fashion look 5\",\n },\n legend: \"Evening Wear - Formal Event\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/500x700.png?text=Look+6\",\n alt: \"Fashion look 6\",\n },\n legend: \"Weekend Casual - Relaxed Fit\",\n },\n ],\n colorPreset: { color: \"secondary-100\" },\n borderRadius: \"rounded-xl\",\n padding: \"2rem\",\n },\n },\n {\n description: \"Car showcase carousel with compact design\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/800x450.png?text=Car+1\",\n alt: \"Sports car 1\",\n },\n legend: \"2024 Sports Coupe\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x450.png?text=Car+2\",\n alt: \"SUV model\",\n },\n legend: \"Family SUV\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/800x450.png?text=Car+3\",\n alt: \"Electric vehicle\",\n },\n legend: \"Electric Sedan\",\n },\n ],\n colorPreset: { color: \"accent-50\" },\n borderRadius: \"rounded-lg\",\n padding: \"0.5rem\",\n },\n },\n {\n description: \"Software features carousel with large padding\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"https://via.placeholder.com/900x500.png?text=Feature+1\",\n alt: \"Software feature 1\",\n },\n legend: \"Dashboard Analytics - Real-time insights\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/900x500.png?text=Feature+2\",\n alt: \"Software feature 2\",\n },\n legend: \"Team Collaboration - Work together seamlessly\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/900x500.png?text=Feature+3\",\n alt: \"Software feature 3\",\n },\n legend: \"Mobile App - Access anywhere, anytime\",\n },\n {\n src: {\n src: \"https://via.placeholder.com/900x500.png?text=Feature+4\",\n alt: \"Software feature 4\",\n },\n legend: \"Security - Enterprise-grade protection\",\n },\n ],\n colorPreset: { color: \"primary-50\" },\n borderRadius: \"rounded-2xl\",\n padding: \"4rem\",\n },\n },\n {\n description: \"Dynamic product gallery using products query - Data-driven product showcase\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"{{products.image}}\",\n alt: \"{{products.name}}\",\n },\n legend: \"{{products.name}} - ${{products.price}}\",\n },\n ],\n colorPreset: { color: \"primary-50\" },\n borderRadius: \"rounded-lg\",\n padding: \"1.5rem\",\n loop: {\n over: \"products\",\n },\n },\n },\n\n // DYNAMIC CONTENT EXAMPLES\n {\n description: \"Loop template for portfolioProjects query (one object will repeat per row)\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"{{portfolioProjects.featuredImage}}\",\n alt: \"{{portfolioProjects.projectName}} featured image\",\n },\n legend:\n \"{{portfolioProjects.projectName}} – {{portfolioProjects.clientName}} ({{portfolioProjects.year}})\",\n },\n ],\n colorPreset: { color: \"neutral-50\" },\n borderRadius: \"rounded-md\",\n padding: \"1rem\",\n loop: {\n over: \"portfolioProjects\",\n },\n },\n },\n\n // SPECIAL STYLING VARIATIONS\n {\n description: \"Showcase carousel with subtle gradient background frame\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: { src: \"https://via.placeholder.com/900x500.png?text=Showcase+1\", alt: \"Showcase slide 1\" },\n legend: \"Launch Dashboard\",\n },\n {\n src: { src: \"https://via.placeholder.com/900x500.png?text=Showcase+2\", alt: \"Showcase slide 2\" },\n legend: \"Collaboration Tools\",\n },\n {\n src: { src: \"https://via.placeholder.com/900x500.png?text=Showcase+3\", alt: \"Showcase slide 3\" },\n legend: \"Usage Analytics\",\n },\n ],\n colorPreset: { color: \"primary-gradient-300\", gradientDirection: \"bg-gradient-to-br\" },\n borderRadius: \"rounded-xl\",\n padding: \"2rem\",\n },\n },\n // MINIMAL EDGE (no padding, square corners)\n {\n description: \"Minimal edge-to-edge carousel (no padding, no rounding)\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: { src: \"https://via.placeholder.com/800x400.png?text=Edge+1\", alt: \"Edge slide 1\" },\n legend: \"\",\n },\n {\n src: { src: \"https://via.placeholder.com/800x400.png?text=Edge+2\", alt: \"Edge slide 2\" },\n legend: \"\",\n },\n ],\n borderRadius: \"rounded-none\",\n padding: \"0\",\n },\n },\n // SINGLE IMAGE (acts as prepared placeholder carousel)\n {\n description: \"Single-image carousel (placeholder for future expansion)\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: { src: \"https://via.placeholder.com/1000x420.png?text=Banner\", alt: \"Promotional banner\" },\n legend: \"Early Access Program\",\n },\n ],\n colorPreset: { color: \"secondary-50\" },\n borderRadius: \"rounded-lg\",\n padding: \"1.25rem\",\n },\n },\n {\n description: \"Team member carousel using teamMembers query with roles and departments\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"{{teamMembers.photo}}\",\n alt: \"{{teamMembers.fullName}}\",\n },\n legend: \"{{teamMembers.fullName}} - {{teamMembers.position}}, {{teamMembers.department}}\",\n },\n ],\n colorPreset: { color: \"secondary-100\" },\n borderRadius: \"rounded-xl\",\n padding: \"2rem\",\n loop: {\n over: \"teamMembers\",\n },\n },\n },\n {\n description: \"Portfolio showcase using portfolioProjects query with client information\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"{{portfolioProjects.featuredImage}}\",\n alt: \"{{portfolioProjects.projectName}}\",\n },\n legend:\n \"{{portfolioProjects.projectName}} - {{portfolioProjects.clientName}} ({{portfolioProjects.year}})\",\n },\n ],\n colorPreset: { color: \"neutral-100\" },\n borderRadius: \"rounded-md\",\n padding: \"1rem\",\n loop: {\n over: \"portfolioProjects\",\n },\n },\n },\n {\n description: \"Event photo gallery using eventPhotos query with captions and dates\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"{{eventPhotos.imageUrl}}\",\n alt: \"{{eventPhotos.caption}}\",\n },\n legend: \"{{eventPhotos.caption}} - {{eventPhotos.eventDate}}\",\n },\n ],\n colorPreset: { color: \"accent-50\" },\n borderRadius: \"rounded-lg\",\n padding: \"2rem\",\n loop: {\n over: \"eventPhotos\",\n },\n },\n },\n {\n description: \"Property listings carousel using realEstateProperties query with pricing\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"{{realEstateProperties.mainPhoto}}\",\n alt: \"{{realEstateProperties.address}}\",\n },\n legend:\n \"{{realEstateProperties.address}} - ${{realEstateProperties.price}} • {{realEstateProperties.bedrooms}}BR/{{realEstateProperties.bathrooms}}BA\",\n },\n ],\n colorPreset: { color: \"primary-100\" },\n borderRadius: \"rounded-xl\",\n padding: \"1.5rem\",\n loop: {\n over: \"realEstateProperties\",\n },\n },\n },\n {\n description: \"Restaurant menu carousel using menuItems query with categories and prices\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"{{menuItems.photo}}\",\n alt: \"{{menuItems.dishName}}\",\n },\n legend: \"{{menuItems.dishName}} - {{menuItems.category}} • ${{menuItems.price}}\",\n },\n ],\n colorPreset: { color: \"neutral-50\" },\n borderRadius: \"rounded-lg\",\n padding: \"1rem\",\n loop: {\n over: \"menuItems\",\n },\n },\n },\n {\n description: \"Travel destinations carousel using destinations query with country information\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"{{destinations.heroImage}}\",\n alt: \"{{destinations.cityName}}\",\n },\n legend: \"{{destinations.cityName}}, {{destinations.country}} - {{destinations.bestTimeToVisit}}\",\n },\n ],\n colorPreset: { color: \"secondary-50\" },\n borderRadius: \"rounded-2xl\",\n padding: \"2.5rem\",\n loop: {\n over: \"destinations\",\n },\n },\n },\n {\n description: \"Art collection carousel using artworks query with artist and year information\",\n type: \"carousel\",\n props: {\n images: [\n {\n src: {\n src: \"{{artworks.imageUrl}}\",\n alt: \"{{artworks.title}}\",\n },\n legend: \"{{artworks.title}} by {{artworks.artist}} ({{artworks.year}}) - {{artworks.medium}}\",\n },\n ],\n colorPreset: { color: \"accent-100\" },\n borderRadius: \"rounded-sm\",\n padding: \"3rem\",\n loop: {\n over: \"artworks\",\n },\n },\n },\n];\n"],"mappings":"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","names":[]}
@@ -1,18 +0,0 @@
1
- /*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
2
-
3
-
4
- // src/shared/utils/invariant.ts
5
- var prefix = "Invariant failed";
6
- function invariant(condition, message) {
7
- if (condition) {
8
- return;
9
- }
10
- const provided = typeof message === "function" ? message() : message;
11
- const value = provided ? `${prefix}: ${provided}` : prefix;
12
- throw new Error(value);
13
- }
14
-
15
- export {
16
- invariant
17
- };
18
- //# sourceMappingURL=chunk-TKMWY2VN.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/shared/utils/invariant.ts"],"sourcesContent":["const prefix: string = \"Invariant failed\";\n\nexport default function invariant(\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n condition: any,\n // Not providing an inline default argument for message as the result is smaller\n /**\n * Can provide a string, or a function that returns a string for cases where\n * the message takes a fair amount of effort to compute\n */\n message?: string | (() => string),\n): asserts condition {\n if (condition) {\n return;\n }\n\n // When not in production we allow the message to pass through\n const provided: string | undefined = typeof message === \"function\" ? message() : message;\n\n // Options:\n // 1. message provided: `${prefix}: ${provided}`\n // 2. message not provided: prefix\n const value: string = provided ? `${prefix}: ${provided}` : prefix;\n throw new Error(value);\n}\n"],"mappings":";;;;AAAA,IAAM,SAAiB;AAER,SAAR,UAEL,WAMA,SACmB;AACnB,MAAI,WAAW;AACb;AAAA,EACF;AAGA,QAAM,WAA+B,OAAO,YAAY,aAAa,QAAQ,IAAI;AAKjF,QAAM,QAAgB,WAAW,GAAG,MAAM,KAAK,QAAQ,KAAK;AAC5D,QAAM,IAAI,MAAM,KAAK;AACvB;","names":[]}
@@ -1,158 +0,0 @@
1
- /*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
2
-
3
-
4
- // src/shared/utils/schema.ts
5
- import { Value } from "@sinclair/typebox/value";
6
- import { defaultsDeep as applyDefaultsDeep } from "lodash-es";
7
- import { FormatRegistry } from "@sinclair/typebox";
8
- import { DefaultErrorFunction, SetErrorFunction, ValueErrorType } from "@sinclair/typebox/errors";
9
- var urlValidator = (value) => {
10
- try {
11
- const url = new URL(value);
12
- return url.protocol === "http:" || url.protocol === "https:";
13
- } catch {
14
- return false;
15
- }
16
- };
17
- var noCheck = (value) => true;
18
- FormatRegistry.Set(
19
- "uuid",
20
- (value) => /^[0-9a-f]{8}-[0-9a-f]{4}-[1-7][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value)
21
- );
22
- FormatRegistry.Set("nanoid", (value) => /^[A-Za-z0-9_-]{7,32}$/.test(value));
23
- FormatRegistry.Set("slug", (value) => /^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(value));
24
- FormatRegistry.Set("richtext", noCheck);
25
- FormatRegistry.Set("markdown", noCheck);
26
- FormatRegistry.Set("multiline", noCheck);
27
- FormatRegistry.Set("password", noCheck);
28
- FormatRegistry.Set("image", urlValidator);
29
- FormatRegistry.Set("file", urlValidator);
30
- SetErrorFunction((error) => {
31
- if (error.errorType === ValueErrorType.Kind) {
32
- if (error.schema.type === "string" && typeof error.value === "string" && error.schema.enum && !error.schema.enum.includes(error.value)) {
33
- return `Must include valid value: [${error.schema.enum.join(", ")}]`;
34
- }
35
- }
36
- return DefaultErrorFunction(error);
37
- });
38
- function normalizeSchemaEnum(schema) {
39
- if (!("enum" in schema)) {
40
- return schema.anyOf ?? schema.oneOf;
41
- }
42
- const {
43
- enum: enumValues,
44
- enumNames,
45
- "ui:icons": icons
46
- } = schema;
47
- return enumValues.map((value, index) => ({
48
- const: value,
49
- title: enumNames ? enumNames[index] : value,
50
- "ui:icon": icons ? icons[index] : void 0
51
- }));
52
- }
53
- function getSchemaDefaults(schema, mode) {
54
- if (schema.type === "object" && "properties" in schema) {
55
- const objectSchema = schema;
56
- const required = objectSchema.required || [];
57
- const propertiesWithDefaults = {};
58
- for (const [key, propertySchema] of Object.entries(objectSchema.properties)) {
59
- const defaultValue = getNestedDefaults(propertySchema, mode);
60
- if (defaultValue !== void 0) {
61
- propertiesWithDefaults[key] = defaultValue;
62
- }
63
- }
64
- for (const requiredProp of required) {
65
- if (!(requiredProp in propertiesWithDefaults)) {
66
- return {};
67
- }
68
- }
69
- return propertiesWithDefaults;
70
- }
71
- if (schema.type === "array" && "items" in schema) {
72
- const arraySchema = schema;
73
- if (mode && typeof arraySchema[`default:${mode}`] !== "undefined") {
74
- return arraySchema[`default:${mode}`];
75
- }
76
- if (arraySchema.default) {
77
- return arraySchema.default;
78
- }
79
- return [];
80
- }
81
- throw new Error("Schema must be either TObject or TArray");
82
- }
83
- function getNestedDefaults(schema, mode) {
84
- if (mode && typeof schema[`default:${mode}`] !== "undefined") {
85
- return schema[`default:${mode}`];
86
- }
87
- if ("default" in schema && schema.default !== void 0) {
88
- return schema.default;
89
- }
90
- if (schema.type === "object" && "properties" in schema) {
91
- const objectSchema = schema;
92
- const required = objectSchema.required || [];
93
- const defaults = {};
94
- const propertiesWithDefaults = {};
95
- for (const [key, propertySchema] of Object.entries(objectSchema.properties)) {
96
- const defaultValue = getNestedDefaults(propertySchema, mode);
97
- if (defaultValue !== void 0) {
98
- propertiesWithDefaults[key] = defaultValue;
99
- }
100
- }
101
- for (const requiredProp of required) {
102
- if (!(requiredProp in propertiesWithDefaults)) {
103
- return void 0;
104
- }
105
- }
106
- return Object.keys(propertiesWithDefaults).length > 0 ? propertiesWithDefaults : void 0;
107
- }
108
- if (schema.type === "array" && "items" in schema) {
109
- return void 0;
110
- }
111
- return void 0;
112
- }
113
- function filterSchemaProperties(schema, filter) {
114
- function extractProperties(schema2) {
115
- const props = {};
116
- for (const [key, prop] of Object.entries(schema2.properties)) {
117
- if (filter(prop)) {
118
- props[key] = prop;
119
- } else if (prop.type === "object" && prop.properties) {
120
- const nestedContentProps = extractProperties(prop);
121
- if (Object.keys(nestedContentProps).length > 0) {
122
- Object.assign(props, nestedContentProps);
123
- }
124
- }
125
- }
126
- return props;
127
- }
128
- return extractProperties(schema);
129
- }
130
- function validate(schema, data) {
131
- try {
132
- const valid = Value.Check(schema, data);
133
- if (!valid) {
134
- let finalError = "";
135
- for (const error of Value.Errors(schema, data)) {
136
- finalError += `Error at ${error.path} with value ${error.value}: ${error.message}
137
- `;
138
- }
139
- console.error("Validation errors:\n", finalError);
140
- throw new Error(finalError);
141
- }
142
- } catch (e) {
143
- console.error("Validation exception:", e);
144
- console.dir(e, { depth: null });
145
- throw e;
146
- }
147
- const defaults = getSchemaDefaults(schema);
148
- const finalObject = applyDefaultsDeep({}, data, defaults);
149
- return finalObject;
150
- }
151
-
152
- export {
153
- normalizeSchemaEnum,
154
- getSchemaDefaults,
155
- filterSchemaProperties,
156
- validate
157
- };
158
- //# sourceMappingURL=chunk-TZ6X7ZM5.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/shared/utils/schema.ts"],"sourcesContent":["import { type TArray, type TObject, type TSchema, Kind, type Static } from \"@sinclair/typebox\";\nimport { Value } from \"@sinclair/typebox/value\";\nimport type { PageAttributes } from \"../attributes\";\nimport { defaultsDeep as applyDefaultsDeep, merge } from \"lodash-es\";\nimport { FormatRegistry } from \"@sinclair/typebox\";\nimport { DefaultErrorFunction, SetErrorFunction, ValueErrorType } from \"@sinclair/typebox/errors\";\n// export const jsonStringsSupportedFormats = [\"date-time\", \"date\", \"email\", \"url\"] as const;\n\n// import string enum for its side effects\nimport \"./string-enum\";\n\nconst urlValidator = (value: string) => {\n try {\n const url = new URL(value);\n return url.protocol === \"http:\" || url.protocol === \"https:\";\n } catch {\n return false;\n }\n};\n\nconst noCheck = (value: string) => true;\n\nFormatRegistry.Set(\"uuid\", (value) =>\n /^[0-9a-f]{8}-[0-9a-f]{4}-[1-7][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value),\n);\n// Allow different lengths for nanoid\nFormatRegistry.Set(\"nanoid\", (value) => /^[A-Za-z0-9_-]{7,32}$/.test(value));\nFormatRegistry.Set(\"slug\", (value) => /^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(value));\n// Simple format checks for richtext, markdown, multiline, password, image, file\nFormatRegistry.Set(\"richtext\", noCheck);\nFormatRegistry.Set(\"markdown\", noCheck);\nFormatRegistry.Set(\"multiline\", noCheck);\nFormatRegistry.Set(\"password\", noCheck);\nFormatRegistry.Set(\"image\", urlValidator);\nFormatRegistry.Set(\"file\", urlValidator);\n\nSetErrorFunction((error) => {\n if (error.errorType === ValueErrorType.Kind) {\n if (\n error.schema.type === \"string\" &&\n typeof error.value === \"string\" &&\n error.schema.enum &&\n !error.schema.enum.includes(error.value)\n ) {\n return `Must include valid value: [${error.schema.enum.join(\", \")}]`;\n }\n }\n\n return DefaultErrorFunction(error);\n});\n\nexport function normalizeSchemaEnum(schema: TSchema): Array<{ const: string; title: string }> {\n if (!(\"enum\" in schema)) {\n return schema.anyOf ?? schema.oneOf;\n }\n const {\n enum: enumValues,\n enumNames,\n \"ui:icons\": icons,\n } = schema as unknown as { enum: string[]; enumNames?: string[]; \"ui:icons\"?: string[] };\n // combine to key-value pairs\n return enumValues.map((value, index) => ({\n const: value,\n title: enumNames ? enumNames[index] : value,\n \"ui:icon\": icons ? icons[index] : undefined,\n }));\n}\n\nexport function getSchemaDefaults<T extends TObject | TArray>(\n schema: T,\n mode?: \"mobile\" | \"desktop\",\n): Static<T> {\n // Handle object schemas\n if (schema.type === \"object\" && \"properties\" in schema) {\n const objectSchema = schema as TObject;\n const required = objectSchema.required || [];\n\n // First pass: collect all properties that have defaults\n const propertiesWithDefaults: Record<string, unknown> = {};\n for (const [key, propertySchema] of Object.entries(objectSchema.properties)) {\n const defaultValue = getNestedDefaults(propertySchema as TSchema, mode);\n if (defaultValue !== undefined) {\n propertiesWithDefaults[key] = defaultValue;\n }\n }\n\n // Second pass: validate that all required properties have defaults\n // If any required property lacks a default, return empty object\n for (const requiredProp of required) {\n if (!(requiredProp in propertiesWithDefaults)) {\n return {} as Static<T>;\n }\n }\n\n // If we get here, all required properties have defaults, so we can include all properties\n return propertiesWithDefaults as Static<T>;\n }\n\n // Handle array schemas\n if (schema.type === \"array\" && \"items\" in schema) {\n const arraySchema = schema as TArray;\n\n if (mode && typeof arraySchema[`default:${mode}`] !== \"undefined\") {\n return arraySchema[`default:${mode}`];\n }\n\n // If the array itself has an explicit default, return it\n if (arraySchema.default) {\n return arraySchema.default;\n }\n\n // Otherwise return empty array\n return [];\n }\n\n throw new Error(\"Schema must be either TObject or TArray\");\n}\n\n// Helper function for nested schema processing\nfunction getNestedDefaults(schema: TSchema, mode?: \"mobile\" | \"desktop\"): unknown {\n if (mode && typeof schema[`default:${mode}`] !== \"undefined\") {\n return schema[`default:${mode}`];\n }\n // Handle schemas with explicit default values\n if (\"default\" in schema && schema.default !== undefined) {\n return schema.default;\n }\n\n // Handle nested object schemas\n if (schema.type === \"object\" && \"properties\" in schema) {\n const objectSchema = schema as TObject;\n const required = objectSchema.required || [];\n const defaults: Record<string, unknown> = {};\n\n // First pass: collect all properties that have defaults\n const propertiesWithDefaults: Record<string, unknown> = {};\n for (const [key, propertySchema] of Object.entries(objectSchema.properties)) {\n const defaultValue = getNestedDefaults(propertySchema as TSchema, mode);\n if (defaultValue !== undefined) {\n propertiesWithDefaults[key] = defaultValue;\n }\n }\n\n // Second pass: validate that all required properties have defaults\n // If any required property lacks a default, this nested object cannot be included\n for (const requiredProp of required) {\n if (!(requiredProp in propertiesWithDefaults)) {\n return undefined;\n }\n }\n\n // If we get here, all required properties have defaults\n return Object.keys(propertiesWithDefaults).length > 0 ? propertiesWithDefaults : undefined;\n }\n\n // Handle nested array schemas\n if (schema.type === \"array\" && \"items\" in schema) {\n // Arrays only contribute defaults if explicitly set\n return undefined;\n }\n\n // No implicit defaults for any type\n return undefined;\n}\n\nexport type FieldFilter<\n T extends TSchema = TSchema,\n P extends Record<string, unknown> = Record<string, unknown>,\n> = (propsSchema: T, formData: P, pageAttributes: PageAttributes) => boolean;\n\nexport function filterSchemaProperties(schema: TObject, filter: (prop: TSchema) => boolean) {\n function extractProperties(schema: TObject): Record<string, TSchema> {\n const props: Record<string, TSchema> = {};\n for (const [key, prop] of Object.entries(schema.properties)) {\n if (filter(prop)) {\n props[key] = prop;\n } else if (prop.type === \"object\" && prop.properties) {\n const nestedContentProps = extractProperties(prop as TObject);\n if (Object.keys(nestedContentProps).length > 0) {\n Object.assign(props, nestedContentProps);\n }\n }\n }\n return props;\n }\n return extractProperties(schema);\n}\n\nexport function validate<T extends TSchema>(schema: TSchema, data: unknown): Static<T> {\n try {\n const valid = Value.Check(schema, data);\n if (!valid) {\n let finalError = \"\";\n for (const error of Value.Errors(schema, data)) {\n finalError += `Error at ${error.path} with value ${error.value}: ${error.message}\\n`;\n }\n console.error(\"Validation errors:\\n\", finalError);\n throw new Error(finalError);\n }\n } catch (e) {\n console.error(\"Validation exception:\", e);\n console.dir(e, { depth: null });\n throw e;\n }\n\n // Mutate data with defaults\n const defaults = getSchemaDefaults(schema as TObject | TArray);\n const finalObject = applyDefaultsDeep({}, data, defaults);\n\n return finalObject as Static<T>;\n}\n"],"mappings":"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","names":["schema"]}
@@ -1,67 +0,0 @@
1
- /*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
2
-
3
- import {
4
- commonProps
5
- } from "./chunk-2UEPTT5J.js";
6
-
7
- // src/shared/bricks/props/helpers.ts
8
- import { Type } from "@sinclair/typebox";
9
- function isTObject(schema) {
10
- return schema.type === "object";
11
- }
12
- function group({
13
- title,
14
- children,
15
- category = "settings",
16
- metadata,
17
- options
18
- }) {
19
- if (isTObject(children)) {
20
- const generated = Type.Composite([Type.Object({}), children], {
21
- title,
22
- metadata: {
23
- category,
24
- group: true,
25
- ...metadata
26
- },
27
- ...options
28
- });
29
- return generated;
30
- }
31
- return Type.Object(children, {
32
- title,
33
- ...options,
34
- metadata: {
35
- category,
36
- group: true,
37
- ...metadata
38
- }
39
- });
40
- }
41
- function getGroupInfo(schema) {
42
- const meta = schema.metadata;
43
- return {
44
- title: schema.title ?? schema.metadata?.title,
45
- meta,
46
- tab: meta.groupTab || "common"
47
- };
48
- }
49
- function defineProps(props, options) {
50
- const allProps = { ...commonProps, ...props };
51
- const { alignSelf, grow, ...rest } = allProps;
52
- const finalProps = {
53
- ...rest,
54
- ...options?.noAlignSelf ? {} : { alignSelf },
55
- ...options?.noGrow ? {} : { grow }
56
- };
57
- return Type.Object(finalProps, options);
58
- }
59
- var array = Type.Array;
60
-
61
- export {
62
- group,
63
- getGroupInfo,
64
- defineProps,
65
- array
66
- };
67
- //# sourceMappingURL=chunk-UC75KRLX.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/shared/bricks/props/helpers.ts"],"sourcesContent":["/**\n * Helper functions for defining and working with props and groups of props\n */\nimport { type TProperties, Type, type TSchema, type TObject, type ObjectOptions } from \"@sinclair/typebox\";\nimport { commonProps } from \"./common\";\nimport type { PartialBy, PropGroup, GroupMetadata } from \"./types\";\n\nfunction isTObject(schema: TSchema | TProperties): schema is TObject {\n return schema.type === \"object\";\n}\n\nexport function group<T extends TProperties>({\n title,\n children,\n category = \"settings\",\n metadata,\n options,\n}: PartialBy<PropGroup<T>, \"category\">) {\n // check if children is already a TObject\n if (isTObject(children)) {\n const generated = Type.Composite([Type.Object({}), children], {\n title,\n metadata: {\n category,\n group: true,\n ...metadata,\n },\n ...options,\n });\n return generated;\n }\n\n // Create the TypeBox schema with title as a standard property and group-specific info in metadata\n return Type.Object(children, {\n title,\n ...options,\n metadata: {\n category,\n group: true,\n ...metadata,\n },\n });\n}\n\n// Functions to extract metadata from schemas\nexport function getGroupInfo(schema: TSchema) {\n const meta = schema.metadata as GroupMetadata;\n return {\n title: (schema.title ?? schema.metadata?.title) as string | undefined,\n meta,\n tab: meta.groupTab || \"common\",\n };\n}\n\nexport function defineProps<P extends TProperties>(\n props: P,\n options?: ObjectOptions & {\n noGrow?: boolean;\n noAlignSelf?: boolean;\n },\n) {\n const allProps = { ...commonProps, ...props };\n const { alignSelf, grow, ...rest } = allProps;\n const finalProps = {\n ...rest,\n ...(options?.noAlignSelf ? {} : { alignSelf }),\n ...(options?.noGrow ? {} : { grow }),\n } as typeof allProps;\n return Type.Object(finalProps, options);\n}\n\n// export const optional = Type.Optional;\nexport const array = Type.Array;\n"],"mappings":";;;;;;;AAGA,SAA2B,YAA4D;AAIvF,SAAS,UAAU,QAAkD;AACnE,SAAO,OAAO,SAAS;AACzB;AAEO,SAAS,MAA6B;AAAA,EAC3C;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AAAA,EACA;AACF,GAAwC;AAEtC,MAAI,UAAU,QAAQ,GAAG;AACvB,UAAM,YAAY,KAAK,UAAU,CAAC,KAAK,OAAO,CAAC,CAAC,GAAG,QAAQ,GAAG;AAAA,MAC5D;AAAA,MACA,UAAU;AAAA,QACR;AAAA,QACA,OAAO;AAAA,QACP,GAAG;AAAA,MACL;AAAA,MACA,GAAG;AAAA,IACL,CAAC;AACD,WAAO;AAAA,EACT;AAGA,SAAO,KAAK,OAAO,UAAU;AAAA,IAC3B;AAAA,IACA,GAAG;AAAA,IACH,UAAU;AAAA,MACR;AAAA,MACA,OAAO;AAAA,MACP,GAAG;AAAA,IACL;AAAA,EACF,CAAC;AACH;AAGO,SAAS,aAAa,QAAiB;AAC5C,QAAM,OAAO,OAAO;AACpB,SAAO;AAAA,IACL,OAAQ,OAAO,SAAS,OAAO,UAAU;AAAA,IACzC;AAAA,IACA,KAAK,KAAK,YAAY;AAAA,EACxB;AACF;AAEO,SAAS,YACd,OACA,SAIA;AACA,QAAM,WAAW,EAAE,GAAG,aAAa,GAAG,MAAM;AAC5C,QAAM,EAAE,WAAW,MAAM,GAAG,KAAK,IAAI;AACrC,QAAM,aAAa;AAAA,IACjB,GAAG;AAAA,IACH,GAAI,SAAS,cAAc,CAAC,IAAI,EAAE,UAAU;AAAA,IAC5C,GAAI,SAAS,SAAS,CAAC,IAAI,EAAE,KAAK;AAAA,EACpC;AACA,SAAO,KAAK,OAAO,YAAY,OAAO;AACxC;AAGO,IAAM,QAAQ,KAAK;","names":[]}