@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,10 +1,59 @@
1
- /*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
1
+ import { Kind } from "@sinclair/typebox";
2
2
 
3
- import {
4
- toLLMSchema
5
- } from "../chunk-MO6CRLQA.js";
6
- import "../chunk-ZGQ3AQBG.js";
7
- export {
8
- toLLMSchema
9
- };
3
+ //#region src/shared/utils/llm.ts
4
+ /**
5
+ * Clean all properties from custom metadata recursively. Custom metadata are key that:
6
+ * - Either with the name "metadata"
7
+ * - Or starting with "ui:"
8
+ * Also removes properties that have "ai:hidden" set to true
9
+ */
10
+ function toLLMSchema(schema) {
11
+ return cleanSchemaRecursive(schema);
12
+ }
13
+ /**
14
+ * Recursively removes custom metadata from schema and filters out properties with ai:hidden = true
15
+ */
16
+ function cleanSchemaRecursive(schema) {
17
+ const cleaned = { [Kind]: schema[Kind] };
18
+ for (const [key, value] of Object.entries(schema)) {
19
+ if (key === "metadata" || key.startsWith("ui:")) continue;
20
+ if (value && typeof value === "object") if (Array.isArray(value)) cleaned[key] = value.map((item) => {
21
+ if (item && typeof item === "object" && isSchemaLike(item)) return cleanSchemaRecursive(item);
22
+ return item;
23
+ });
24
+ else if (isSchemaLike(value)) cleaned[key] = cleanSchemaRecursive(value);
25
+ else if (key === "properties" || key === "definitions" || key === "$defs" || key === "patternProperties") {
26
+ const cleanedProps = {};
27
+ for (const [propKey, propValue] of Object.entries(value)) if (propValue && typeof propValue === "object") {
28
+ if (propValue["ai:hidden"] === true) continue;
29
+ cleanedProps[propKey] = cleanSchemaRecursive(propValue);
30
+ } else cleanedProps[propKey] = propValue;
31
+ cleaned[key] = cleanedProps;
32
+ } else cleaned[key] = value;
33
+ else cleaned[key] = value;
34
+ }
35
+ return cleaned;
36
+ }
37
+ /**
38
+ * Helper function to determine if an object looks like a schema
39
+ */
40
+ function isSchemaLike(obj) {
41
+ if (!obj || typeof obj !== "object") return false;
42
+ return [
43
+ "type",
44
+ "$ref",
45
+ "properties",
46
+ "items",
47
+ "anyOf",
48
+ "oneOf",
49
+ "allOf",
50
+ "not",
51
+ "if",
52
+ "then",
53
+ "else"
54
+ ].some((key) => key in obj);
55
+ }
56
+
57
+ //#endregion
58
+ export { toLLMSchema };
10
59
  //# sourceMappingURL=llm.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"file":"llm.js","names":["cleaned: Record<string, unknown>","cleanedProps: Record<string, TSchema>"],"sources":["../../../src/shared/utils/llm.ts"],"sourcesContent":["import { Kind, type TObject, type TSchema } from \"@sinclair/typebox\";\n\n/**\n * Clean all properties from custom metadata recursively. Custom metadata are key that:\n * - Either with the name \"metadata\"\n * - Or starting with \"ui:\"\n * Also removes properties that have \"ai:hidden\" set to true\n */\nexport function toLLMSchema<T extends TSchema = TObject>(schema: T): T {\n return cleanSchemaRecursive(schema) as T;\n}\n\n/**\n * Recursively removes custom metadata from schema and filters out properties with ai:hidden = true\n */\nfunction cleanSchemaRecursive(schema: TSchema): TSchema {\n // Create a new object without custom metadata properties\n const cleaned: Record<string, unknown> = {\n [Kind]: schema[Kind],\n };\n\n for (const [key, value] of Object.entries(schema)) {\n // Skip metadata properties and ui: properties\n if (key === \"metadata\" || key.startsWith(\"ui:\")) {\n continue;\n }\n\n // Handle nested objects and arrays\n if (value && typeof value === \"object\") {\n if (Array.isArray(value)) {\n // Handle arrays - clean each item if it's a schema\n cleaned[key] = value.map((item) => {\n if (item && typeof item === \"object\" && isSchemaLike(item)) {\n return cleanSchemaRecursive(item as TSchema);\n }\n return item;\n });\n } else if (isSchemaLike(value)) {\n // Handle nested schemas\n cleaned[key] = cleanSchemaRecursive(value as TSchema);\n } else if (\n key === \"properties\" ||\n key === \"definitions\" ||\n key === \"$defs\" ||\n key === \"patternProperties\"\n ) {\n // Handle schema property collections - filter out properties with ai:hidden = true\n const cleanedProps: Record<string, TSchema> = {};\n for (const [propKey, propValue] of Object.entries(value)) {\n if (propValue && typeof propValue === \"object\") {\n // Check if this property should be hidden from AI\n const propSchema = propValue as Record<string, unknown>;\n if (propSchema[\"ai:hidden\"] === true) {\n continue; // Skip this property\n }\n cleanedProps[propKey] = cleanSchemaRecursive(propValue as TSchema);\n } else {\n cleanedProps[propKey] = propValue as TSchema;\n }\n }\n cleaned[key] = cleanedProps;\n } else {\n // For other objects, recursively clean if they look like schemas\n cleaned[key] = value;\n }\n } else {\n // Keep primitive values as-is\n cleaned[key] = value;\n }\n }\n\n return cleaned as TSchema;\n}\n\n/**\n * Helper function to determine if an object looks like a schema\n */\nfunction isSchemaLike(obj: unknown): boolean {\n if (!obj || typeof obj !== \"object\") {\n return false;\n }\n\n const schemaKeys = [\n \"type\",\n \"$ref\",\n \"properties\",\n \"items\",\n \"anyOf\",\n \"oneOf\",\n \"allOf\",\n \"not\",\n \"if\",\n \"then\",\n \"else\",\n ];\n return schemaKeys.some((key) => key in obj);\n}\n"],"mappings":";;;;;;;;;AAQA,SAAgB,YAAyC,QAAc;AACrE,QAAO,qBAAqB,OAAO;;;;;AAMrC,SAAS,qBAAqB,QAA0B;CAEtD,MAAMA,UAAmC,GACtC,OAAO,OAAO,OAChB;AAED,MAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,OAAO,EAAE;AAEjD,MAAI,QAAQ,cAAc,IAAI,WAAW,MAAM,CAC7C;AAIF,MAAI,SAAS,OAAO,UAAU,SAC5B,KAAI,MAAM,QAAQ,MAAM,CAEtB,SAAQ,OAAO,MAAM,KAAK,SAAS;AACjC,OAAI,QAAQ,OAAO,SAAS,YAAY,aAAa,KAAK,CACxD,QAAO,qBAAqB,KAAgB;AAE9C,UAAO;IACP;WACO,aAAa,MAAM,CAE5B,SAAQ,OAAO,qBAAqB,MAAiB;WAErD,QAAQ,gBACR,QAAQ,iBACR,QAAQ,WACR,QAAQ,qBACR;GAEA,MAAMC,eAAwC,EAAE;AAChD,QAAK,MAAM,CAAC,SAAS,cAAc,OAAO,QAAQ,MAAM,CACtD,KAAI,aAAa,OAAO,cAAc,UAAU;AAG9C,QADmB,UACJ,iBAAiB,KAC9B;AAEF,iBAAa,WAAW,qBAAqB,UAAqB;SAElE,cAAa,WAAW;AAG5B,WAAQ,OAAO;QAGf,SAAQ,OAAO;MAIjB,SAAQ,OAAO;;AAInB,QAAO;;;;;AAMT,SAAS,aAAa,KAAuB;AAC3C,KAAI,CAAC,OAAO,OAAO,QAAQ,SACzB,QAAO;AAgBT,QAbmB;EACjB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACiB,MAAM,QAAQ,OAAO,IAAI"}
@@ -1,2 +1,5 @@
1
- export declare function mergeIgnoringArrays<T>(target: T, ...sources: T[]): T;
1
+ //#region src/shared/utils/merge.d.ts
2
+ declare function mergeIgnoringArrays<T>(target: T, ...sources: T[]): T;
3
+ //#endregion
4
+ export { mergeIgnoringArrays };
2
5
  //# sourceMappingURL=merge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/merge.ts"],"names":[],"mappings":"AAEA,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,EAAE,GAAG,CAAC,CAEpE"}
1
+ {"version":3,"file":"merge.d.ts","names":[],"sources":["../../../src/shared/utils/merge.ts"],"sourcesContent":[],"mappings":";iBAEgB,+BAA+B,eAAe,MAAM"}
@@ -1,10 +1,13 @@
1
- /*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
1
+ import { isArray, mergeWith } from "lodash-es";
2
2
 
3
- import {
4
- mergeIgnoringArrays
5
- } from "../chunk-3ZDN5BWN.js";
6
- import "../chunk-ZGQ3AQBG.js";
7
- export {
8
- mergeIgnoringArrays
9
- };
3
+ //#region src/shared/utils/merge.ts
4
+ function mergeIgnoringArrays(target, ...sources) {
5
+ return mergeWith(target, ...sources, customizer);
6
+ }
7
+ function customizer(objValue, srcValue) {
8
+ if (isArray(objValue)) return srcValue;
9
+ }
10
+
11
+ //#endregion
12
+ export { mergeIgnoringArrays };
10
13
  //# sourceMappingURL=merge.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"file":"merge.js","names":[],"sources":["../../../src/shared/utils/merge.ts"],"sourcesContent":["import { mergeWith, isArray } from \"lodash-es\";\n\nexport function mergeIgnoringArrays<T>(target: T, ...sources: T[]): T {\n return mergeWith(target, ...sources, customizer);\n}\n\n// biome-ignore lint/suspicious/noExplicitAny: <explanation>\nfunction customizer(objValue: any, srcValue: any) {\n if (isArray(objValue)) {\n return srcValue;\n }\n}\n"],"mappings":";;;AAEA,SAAgB,oBAAuB,QAAW,GAAG,SAAiB;AACpE,QAAO,UAAU,QAAQ,GAAG,SAAS,WAAW;;AAIlD,SAAS,WAAW,UAAe,UAAe;AAChD,KAAI,QAAQ,SAAS,CACnB,QAAO"}
@@ -1,2 +1,5 @@
1
- export declare function getObjectHash(obj: unknown): Promise<string>;
1
+ //#region src/shared/utils/object-hash.d.ts
2
+ declare function getObjectHash(obj: unknown): Promise<string>;
3
+ //#endregion
4
+ export { getObjectHash };
2
5
  //# sourceMappingURL=object-hash.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"object-hash.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/object-hash.ts"],"names":[],"mappings":"AAAA,wBAAsB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAMjE"}
1
+ {"version":3,"file":"object-hash.d.ts","names":[],"sources":["../../../src/shared/utils/object-hash.ts"],"sourcesContent":[],"mappings":";iBAAsB,aAAA,gBAA6B"}
@@ -1,16 +1,11 @@
1
- /*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
2
-
3
- import "../chunk-ZGQ3AQBG.js";
4
-
5
- // src/shared/utils/object-hash.ts
1
+ //#region src/shared/utils/object-hash.ts
6
2
  async function getObjectHash(obj) {
7
- const str = JSON.stringify(obj);
8
- const buffer = new TextEncoder().encode(str);
9
- const hashBuffer = await crypto.subtle.digest("SHA-1", buffer);
10
- const hashArray = Array.from(new Uint8Array(hashBuffer));
11
- return hashArray.map((b) => b.toString(16).padStart(2, "0")).join("");
3
+ const str = JSON.stringify(obj);
4
+ const buffer = new TextEncoder().encode(str);
5
+ const hashBuffer = await crypto.subtle.digest("SHA-1", buffer);
6
+ return Array.from(new Uint8Array(hashBuffer)).map((b) => b.toString(16).padStart(2, "0")).join("");
12
7
  }
13
- export {
14
- getObjectHash
15
- };
8
+
9
+ //#endregion
10
+ export { getObjectHash };
16
11
  //# sourceMappingURL=object-hash.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/shared/utils/object-hash.ts"],"sourcesContent":["export async function getObjectHash(obj: unknown): Promise<string> {\n const str = JSON.stringify(obj);\n const buffer = new TextEncoder().encode(str);\n const hashBuffer = await crypto.subtle.digest(\"SHA-1\", buffer);\n const hashArray = Array.from(new Uint8Array(hashBuffer));\n return hashArray.map((b) => b.toString(16).padStart(2, \"0\")).join(\"\");\n}\n"],"mappings":";;;;;AAAA,eAAsB,cAAc,KAA+B;AACjE,QAAM,MAAM,KAAK,UAAU,GAAG;AAC9B,QAAM,SAAS,IAAI,YAAY,EAAE,OAAO,GAAG;AAC3C,QAAM,aAAa,MAAM,OAAO,OAAO,OAAO,SAAS,MAAM;AAC7D,QAAM,YAAY,MAAM,KAAK,IAAI,WAAW,UAAU,CAAC;AACvD,SAAO,UAAU,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE;AACtE;","names":[]}
1
+ {"version":3,"file":"object-hash.js","names":[],"sources":["../../../src/shared/utils/object-hash.ts"],"sourcesContent":["export async function getObjectHash(obj: unknown): Promise<string> {\n const str = JSON.stringify(obj);\n const buffer = new TextEncoder().encode(str);\n const hashBuffer = await crypto.subtle.digest(\"SHA-1\", buffer);\n const hashArray = Array.from(new Uint8Array(hashBuffer));\n return hashArray.map((b) => b.toString(16).padStart(2, \"0\")).join(\"\");\n}\n"],"mappings":";AAAA,eAAsB,cAAc,KAA+B;CACjE,MAAM,MAAM,KAAK,UAAU,IAAI;CAC/B,MAAM,SAAS,IAAI,aAAa,CAAC,OAAO,IAAI;CAC5C,MAAM,aAAa,MAAM,OAAO,OAAO,OAAO,SAAS,OAAO;AAE9D,QADkB,MAAM,KAAK,IAAI,WAAW,WAAW,CAAC,CACvC,KAAK,MAAM,EAAE,SAAS,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,KAAK,GAAG"}
@@ -1,12 +1,15 @@
1
- import { type TArray, type TObject, type TSchema, type Static } from "@sinclair/typebox";
2
- import type { PageAttributes } from "../attributes";
3
- import "./string-enum";
4
- export declare function normalizeSchemaEnum(schema: TSchema): Array<{
5
- const: string;
6
- title: string;
1
+ import { PageAttributes } from "../attributes.js";
2
+ import { Static, TArray, TObject, TSchema } from "@sinclair/typebox";
3
+
4
+ //#region src/shared/utils/schema.d.ts
5
+ declare function normalizeSchemaEnum(schema: TSchema): Array<{
6
+ const: string;
7
+ title: string;
7
8
  }>;
8
- export declare function getSchemaDefaults<T extends TObject | TArray>(schema: T, mode?: "mobile" | "desktop"): Static<T>;
9
- export type FieldFilter<T extends TSchema = TSchema, P extends Record<string, unknown> = Record<string, unknown>> = (propsSchema: T, formData: P, pageAttributes: PageAttributes) => boolean;
10
- export declare function filterSchemaProperties(schema: TObject, filter: (prop: TSchema) => boolean): Record<string, TSchema>;
11
- export declare function validate<T extends TSchema>(schema: TSchema, data: unknown): Static<T>;
9
+ declare function getSchemaDefaults<T extends TObject | TArray>(schema: T, mode?: "mobile" | "desktop"): Static<T>;
10
+ type FieldFilter<T extends TSchema = TSchema, P extends Record<string, unknown> = Record<string, unknown>> = (propsSchema: T, formData: P, pageAttributes: PageAttributes) => boolean;
11
+ declare function filterSchemaProperties(schema: TObject, filter: (prop: TSchema) => boolean): Record<string, TSchema>;
12
+ declare function validate<T extends TSchema>(schema: TSchema, data: unknown): Static<T>;
13
+ //#endregion
14
+ export { FieldFilter, filterSchemaProperties, getSchemaDefaults, normalizeSchemaEnum, validate };
12
15
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAOpD,OAAO,eAAe,CAAC;AA0CvB,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAe5F;AAED,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,OAAO,GAAG,MAAM,EAC1D,MAAM,EAAE,CAAC,EACT,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,GAC1B,MAAM,CAAC,CAAC,CAAC,CA6CX;AAiDD,MAAM,MAAM,WAAW,CACrB,CAAC,SAAS,OAAO,GAAG,OAAO,EAC3B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACzD,CAAC,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,cAAc,EAAE,cAAc,KAAK,OAAO,CAAC;AAE7E,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,2BAgBzF;AAED,wBAAgB,QAAQ,CAAC,CAAC,SAAS,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAsBrF"}
1
+ {"version":3,"file":"schema.d.ts","names":[],"sources":["../../../src/shared/utils/schema.ts"],"sourcesContent":[],"mappings":";;;;iBAmCgB,mBAAA,SAA4B,UAAU;EAAtC,KAAA,EAAA,MAAA;EAAmB,KAAA,EAAA,MAAA;;AAAmB,iBAiBtC,iBAjBsC,CAAA,UAiBV,OAjBU,GAiBA,MAjBA,CAAA,CAAA,MAAA,EAkB5C,CAlB4C,EAAA,IAAA,CAAA,EAAA,QAAA,GAAA,SAAA,CAAA,EAoBnD,MApBmD,CAoB5C,CApB4C,CAAA;AAAK,KAwG/C,WAxG+C,CAAA,UAyG/C,OAzG+C,GAyGrC,OAzGqC,EAAA,UA0G/C,MA1G+C,CAAA,MAAA,EAAA,OAAA,CAAA,GA0GrB,MA1GqB,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,GAAA,CAAA,WAAA,EA2GzC,CA3GyC,EAAA,QAAA,EA2G5B,CA3G4B,EAAA,cAAA,EA2GT,cA3GS,EAAA,GAAA,OAAA;AAiB3C,iBA4FA,sBAAA,CA5FiB,MAAA,EA4Fc,OA5Fd,EAAA,MAAA,EAAA,CAAA,IAAA,EA4FsC,OA5FtC,EAAA,GAAA,OAAA,CAAA,EA4FyD,MA5FzD,CAAA,MAAA,EA4FyD,OA5FzD,CAAA;AAAA,iBA8GjB,QA9GiB,CAAA,UA8GE,OA9GF,CAAA,CAAA,MAAA,EA8GmB,OA9GnB,EAAA,IAAA,EAAA,OAAA,CAAA,EA8G4C,MA9G5C,CA8GmD,CA9GnD,CAAA"}
@@ -1,17 +1,94 @@
1
- /*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
1
+ import "./string-enum.js";
2
+ import { FormatRegistry } from "@sinclair/typebox";
3
+ import { defaultsDeep } from "lodash-es";
4
+ import { Validator } from "@cfworker/json-schema";
2
5
 
3
- import {
4
- filterSchemaProperties,
5
- getSchemaDefaults,
6
- normalizeSchemaEnum,
7
- validate
8
- } from "../chunk-TZ6X7ZM5.js";
9
- import "../chunk-GDYCCB3B.js";
10
- import "../chunk-ZGQ3AQBG.js";
11
- export {
12
- filterSchemaProperties,
13
- getSchemaDefaults,
14
- normalizeSchemaEnum,
15
- validate
6
+ //#region src/shared/utils/schema.ts
7
+ const urlValidator = (value) => {
8
+ try {
9
+ const url = new URL(value);
10
+ return url.protocol === "http:" || url.protocol === "https:";
11
+ } catch {
12
+ return false;
13
+ }
16
14
  };
15
+ const noCheck = (value) => true;
16
+ FormatRegistry.Set("uuid", (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));
17
+ FormatRegistry.Set("nanoid", (value) => /^[A-Za-z0-9_-]{7,32}$/.test(value));
18
+ FormatRegistry.Set("slug", (value) => /^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(value));
19
+ FormatRegistry.Set("richtext", noCheck);
20
+ FormatRegistry.Set("markdown", noCheck);
21
+ FormatRegistry.Set("multiline", noCheck);
22
+ FormatRegistry.Set("password", noCheck);
23
+ FormatRegistry.Set("image", urlValidator);
24
+ FormatRegistry.Set("file", urlValidator);
25
+ function normalizeSchemaEnum(schema) {
26
+ if (!("enum" in schema)) return schema.anyOf ?? schema.oneOf;
27
+ const { enum: enumValues, enumNames, "ui:icons": icons } = schema;
28
+ return enumValues.map((value, index) => ({
29
+ const: value,
30
+ title: enumNames ? enumNames[index] : value,
31
+ "ui:icon": icons ? icons[index] : void 0
32
+ }));
33
+ }
34
+ function getSchemaDefaults(schema, mode) {
35
+ if (schema.type === "object" && "properties" in schema) {
36
+ const objectSchema = schema;
37
+ const propertiesWithDefaults = {};
38
+ for (const [key, propertySchema] of Object.entries(objectSchema.properties)) {
39
+ const defaultValue = getNestedDefaults(propertySchema, mode);
40
+ if (defaultValue !== void 0) propertiesWithDefaults[key] = defaultValue;
41
+ }
42
+ return propertiesWithDefaults;
43
+ }
44
+ if (schema.type === "array" && "items" in schema) {
45
+ const arraySchema = schema;
46
+ if (mode && typeof arraySchema[`default:${mode}`] !== "undefined") return arraySchema[`default:${mode}`];
47
+ if (arraySchema.default) return arraySchema.default;
48
+ return [];
49
+ }
50
+ throw new Error("Schema must be either TObject or TArray");
51
+ }
52
+ function getNestedDefaults(schema, mode) {
53
+ if (mode && typeof schema[`default:${mode}`] !== "undefined") return schema[`default:${mode}`];
54
+ if ("default" in schema && schema.default !== void 0) return schema.default;
55
+ if (schema.type === "object" && "properties" in schema) {
56
+ const objectSchema = schema;
57
+ const required = objectSchema.required || [];
58
+ const propertiesWithDefaults = {};
59
+ for (const [key, propertySchema] of Object.entries(objectSchema.properties)) {
60
+ const defaultValue = getNestedDefaults(propertySchema, mode);
61
+ if (defaultValue !== void 0) propertiesWithDefaults[key] = defaultValue;
62
+ }
63
+ for (const requiredProp of required) if (!(requiredProp in propertiesWithDefaults)) return;
64
+ return Object.keys(propertiesWithDefaults).length > 0 ? propertiesWithDefaults : void 0;
65
+ }
66
+ if (schema.type === "array" && "items" in schema) return;
67
+ }
68
+ function filterSchemaProperties(schema, filter) {
69
+ function extractProperties(schema$1) {
70
+ const props = {};
71
+ for (const [key, prop] of Object.entries(schema$1.properties)) if (filter(prop)) props[key] = prop;
72
+ else if (prop.type === "object" && prop.properties) {
73
+ const nestedContentProps = extractProperties(prop);
74
+ if (Object.keys(nestedContentProps).length > 0) Object.assign(props, nestedContentProps);
75
+ }
76
+ return props;
77
+ }
78
+ return extractProperties(schema);
79
+ }
80
+ function validate(schema, data) {
81
+ const result = new Validator(schema, "7", false).validate(data);
82
+ if (!result.valid) {
83
+ const errors = [];
84
+ for (const error of result.errors) errors.push(`${error.error} (at ${error.keywordLocation})`);
85
+ const formatedError = `- ${errors.join("\n- ")}`;
86
+ throw new Error(formatedError);
87
+ }
88
+ const defaults = getSchemaDefaults(schema);
89
+ return Array.isArray(data) ? data : defaultsDeep({}, data, defaults);
90
+ }
91
+
92
+ //#endregion
93
+ export { filterSchemaProperties, getSchemaDefaults, normalizeSchemaEnum, validate };
17
94
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"file":"schema.js","names":["propertiesWithDefaults: Record<string, unknown>","props: Record<string, TSchema>","schema","applyDefaultsDeep"],"sources":["../../../src/shared/utils/schema.ts"],"sourcesContent":["import type { TArray, TObject, TSchema, Static } from \"@sinclair/typebox\";\nimport type { PageAttributes } from \"../attributes\";\nimport { defaultsDeep as applyDefaultsDeep } from \"lodash-es\";\nimport { FormatRegistry } from \"@sinclair/typebox\";\nimport { Validator } from \"@cfworker/json-schema\";\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\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\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 // 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\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 const validator = new Validator(schema, \"7\", false);\n const result = validator.validate(data);\n if (!result.valid) {\n const errors = [];\n for (const error of result.errors) {\n errors.push(`${error.error} (at ${error.keywordLocation})`);\n }\n const formatedError = `- ${errors.join(\"\\n- \")}`;\n throw new Error(formatedError);\n }\n\n // Mutate data with defaults\n const defaults = getSchemaDefaults(schema as TObject | TArray);\n const finalObject = Array.isArray(data) ? data : applyDefaultsDeep({}, data, defaults);\n\n return finalObject as Static<T>;\n}\n"],"mappings":";;;;;;AAUA,MAAM,gBAAgB,UAAkB;AACtC,KAAI;EACF,MAAM,MAAM,IAAI,IAAI,MAAM;AAC1B,SAAO,IAAI,aAAa,WAAW,IAAI,aAAa;SAC9C;AACN,SAAO;;;AAIX,MAAM,WAAW,UAAkB;AAEnC,eAAe,IAAI,SAAS,UAC1B,6EAA6E,KAAK,MAAM,CACzF;AAED,eAAe,IAAI,WAAW,UAAU,wBAAwB,KAAK,MAAM,CAAC;AAC5E,eAAe,IAAI,SAAS,UAAU,6BAA6B,KAAK,MAAM,CAAC;AAE/E,eAAe,IAAI,YAAY,QAAQ;AACvC,eAAe,IAAI,YAAY,QAAQ;AACvC,eAAe,IAAI,aAAa,QAAQ;AACxC,eAAe,IAAI,YAAY,QAAQ;AACvC,eAAe,IAAI,SAAS,aAAa;AACzC,eAAe,IAAI,QAAQ,aAAa;AAExC,SAAgB,oBAAoB,QAA0D;AAC5F,KAAI,EAAE,UAAU,QACd,QAAO,OAAO,SAAS,OAAO;CAEhC,MAAM,EACJ,MAAM,YACN,WACA,YAAY,UACV;AAEJ,QAAO,WAAW,KAAK,OAAO,WAAW;EACvC,OAAO;EACP,OAAO,YAAY,UAAU,SAAS;EACtC,WAAW,QAAQ,MAAM,SAAS;EACnC,EAAE;;AAGL,SAAgB,kBACd,QACA,MACW;AAEX,KAAI,OAAO,SAAS,YAAY,gBAAgB,QAAQ;EACtD,MAAM,eAAe;EAGrB,MAAMA,yBAAkD,EAAE;AAC1D,OAAK,MAAM,CAAC,KAAK,mBAAmB,OAAO,QAAQ,aAAa,WAAW,EAAE;GAC3E,MAAM,eAAe,kBAAkB,gBAA2B,KAAK;AACvE,OAAI,iBAAiB,OACnB,wBAAuB,OAAO;;AAKlC,SAAO;;AAIT,KAAI,OAAO,SAAS,WAAW,WAAW,QAAQ;EAChD,MAAM,cAAc;AAEpB,MAAI,QAAQ,OAAO,YAAY,WAAW,YAAY,YACpD,QAAO,YAAY,WAAW;AAIhC,MAAI,YAAY,QACd,QAAO,YAAY;AAIrB,SAAO,EAAE;;AAGX,OAAM,IAAI,MAAM,0CAA0C;;AAI5D,SAAS,kBAAkB,QAAiB,MAAsC;AAChF,KAAI,QAAQ,OAAO,OAAO,WAAW,YAAY,YAC/C,QAAO,OAAO,WAAW;AAG3B,KAAI,aAAa,UAAU,OAAO,YAAY,OAC5C,QAAO,OAAO;AAIhB,KAAI,OAAO,SAAS,YAAY,gBAAgB,QAAQ;EACtD,MAAM,eAAe;EACrB,MAAM,WAAW,aAAa,YAAY,EAAE;EAG5C,MAAMA,yBAAkD,EAAE;AAC1D,OAAK,MAAM,CAAC,KAAK,mBAAmB,OAAO,QAAQ,aAAa,WAAW,EAAE;GAC3E,MAAM,eAAe,kBAAkB,gBAA2B,KAAK;AACvE,OAAI,iBAAiB,OACnB,wBAAuB,OAAO;;AAMlC,OAAK,MAAM,gBAAgB,SACzB,KAAI,EAAE,gBAAgB,wBACpB;AAKJ,SAAO,OAAO,KAAK,uBAAuB,CAAC,SAAS,IAAI,yBAAyB;;AAInF,KAAI,OAAO,SAAS,WAAW,WAAW,OAExC;;AAYJ,SAAgB,uBAAuB,QAAiB,QAAoC;CAC1F,SAAS,kBAAkB,UAA0C;EACnE,MAAMC,QAAiC,EAAE;AACzC,OAAK,MAAM,CAAC,KAAK,SAAS,OAAO,QAAQC,SAAO,WAAW,CACzD,KAAI,OAAO,KAAK,CACd,OAAM,OAAO;WACJ,KAAK,SAAS,YAAY,KAAK,YAAY;GACpD,MAAM,qBAAqB,kBAAkB,KAAgB;AAC7D,OAAI,OAAO,KAAK,mBAAmB,CAAC,SAAS,EAC3C,QAAO,OAAO,OAAO,mBAAmB;;AAI9C,SAAO;;AAET,QAAO,kBAAkB,OAAO;;AAGlC,SAAgB,SAA4B,QAAiB,MAA0B;CAErF,MAAM,SADY,IAAI,UAAU,QAAQ,KAAK,MAAM,CAC1B,SAAS,KAAK;AACvC,KAAI,CAAC,OAAO,OAAO;EACjB,MAAM,SAAS,EAAE;AACjB,OAAK,MAAM,SAAS,OAAO,OACzB,QAAO,KAAK,GAAG,MAAM,MAAM,OAAO,MAAM,gBAAgB,GAAG;EAE7D,MAAM,gBAAgB,KAAK,OAAO,KAAK,OAAO;AAC9C,QAAM,IAAI,MAAM,cAAc;;CAIhC,MAAM,WAAW,kBAAkB,OAA2B;AAG9D,QAFoB,MAAM,QAAQ,KAAK,GAAG,OAAOC,aAAkB,EAAE,EAAE,MAAM,SAAS"}
@@ -1,12 +1,17 @@
1
- import { Kind, type TSchema, type SchemaOptions } from "@sinclair/typebox";
2
- export type StringEnumOptions = Partial<SchemaOptions> & {
3
- enumNames?: string[];
1
+ import * as _sinclair_typebox2206 from "@sinclair/typebox";
2
+ import { Kind, SchemaOptions, TSchema } from "@sinclair/typebox";
3
+
4
+ //#region src/shared/utils/string-enum.d.ts
5
+ type StringEnumOptions = Partial<SchemaOptions> & {
6
+ enumNames?: string[];
4
7
  };
5
- export interface TStringEnum<T extends string[]> extends TSchema {
6
- [Kind]: "StringEnum";
7
- static: T[number];
8
- enum: T;
8
+ interface TStringEnum<T extends string[]> extends TSchema {
9
+ [Kind]: "StringEnum";
10
+ static: T[number];
11
+ enum: T;
9
12
  }
10
13
  /** `[Experimental]` Creates a Union type with a `enum` schema representation */
11
- export declare function StringEnum<T extends string[]>(values: [...T], options?: StringEnumOptions): import("@sinclair/typebox").TUnsafe<T[number]>;
14
+ declare function StringEnum<T extends string[]>(values: [...T], options?: StringEnumOptions): _sinclair_typebox2206.TUnsafe<T[number]>;
15
+ //#endregion
16
+ export { StringEnum, StringEnumOptions, TStringEnum };
12
17
  //# sourceMappingURL=string-enum.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"string-enum.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/string-enum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,IAAI,EAAE,KAAK,OAAO,EAAE,KAAK,aAAa,EAAQ,MAAM,mBAAmB,CAAC;AAE/F,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG;IACvD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAKF,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,CAAE,SAAQ,OAAO;IAC9D,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAClB,IAAI,EAAE,CAAC,CAAC;CACT;AAWD,iFAAiF;AACjF,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAE,iBAAsB,kDAO7F"}
1
+ {"version":3,"file":"string-enum.d.ts","names":[],"sources":["../../../src/shared/utils/string-enum.ts"],"sourcesContent":[],"mappings":";;;;KAEY,iBAAA,GAAoB,QAAQ;;;AAA5B,UAOK,WAPY,CAAA,UAAA,MAAA,EAAA,CAAA,SAO4B,OAP5B,CAAA;EAAA,CAQ1B,IAAA,CAR0B,EAAA,YAAA;QAAW,EAS9B,CAT8B,CAAA,MAAA,CAAA;MAAR,EAUxB,CAVwB;;AAOhC;AAA4B,iBAgBZ,UAhBY,CAAA,UAAA,MAAA,EAAA,CAAA,CAAA,MAAA,EAAA,CAAA,GAgB+B,CAhB/B,CAAA,EAAA,OAAA,CAAA,EAgB4C,iBAhB5C,CAAA,EAgBkE,qBAAA,CAAA,OAhBlE,CAgBkE,CAhBlE,CAAA,MAAA,CAAA,CAAA"}
@@ -1,10 +1,20 @@
1
- /*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
1
+ import { Kind, Type, TypeRegistry } from "@sinclair/typebox";
2
2
 
3
- import {
4
- StringEnum
5
- } from "../chunk-GDYCCB3B.js";
6
- import "../chunk-ZGQ3AQBG.js";
7
- export {
8
- StringEnum
9
- };
3
+ //#region src/shared/utils/string-enum.ts
4
+ function StringEnumCheck(schema, value) {
5
+ return typeof value === "string" && schema.enum.includes(value);
6
+ }
7
+ TypeRegistry.Set("StringEnum", StringEnumCheck);
8
+ /** `[Experimental]` Creates a Union type with a `enum` schema representation */
9
+ function StringEnum(values, options = {}) {
10
+ return Type.Unsafe({
11
+ [Kind]: "StringEnum",
12
+ type: "string",
13
+ enum: values,
14
+ ...options
15
+ });
16
+ }
17
+
18
+ //#endregion
19
+ export { StringEnum };
10
20
  //# sourceMappingURL=string-enum.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"file":"string-enum.js","names":[],"sources":["../../../src/shared/utils/string-enum.ts"],"sourcesContent":["import { TypeRegistry, Kind, type TSchema, type SchemaOptions, Type } from \"@sinclair/typebox\";\n\nexport type StringEnumOptions = Partial<SchemaOptions> & {\n enumNames?: string[];\n};\n\n// -------------------------------------------------------------------------------------\n// TStringEnum\n// -------------------------------------------------------------------------------------\nexport interface TStringEnum<T extends string[]> extends TSchema {\n [Kind]: \"StringEnum\";\n static: T[number];\n enum: T;\n}\n\nfunction StringEnumCheck(schema: TStringEnum<string[]>, value: unknown) {\n return typeof value === \"string\" && schema.enum.includes(value);\n}\n\nTypeRegistry.Set(\"StringEnum\", StringEnumCheck);\n\n// -------------------------------------------------------------------------------------\n// UnionEnum\n// -------------------------------------------------------------------------------------\n/** `[Experimental]` Creates a Union type with a `enum` schema representation */\nexport function StringEnum<T extends string[]>(values: [...T], options: StringEnumOptions = {}) {\n return Type.Unsafe<T[number]>({\n [Kind]: \"StringEnum\",\n type: \"string\",\n enum: values,\n ...options,\n });\n}\n"],"mappings":";;;AAeA,SAAS,gBAAgB,QAA+B,OAAgB;AACtE,QAAO,OAAO,UAAU,YAAY,OAAO,KAAK,SAAS,MAAM;;AAGjE,aAAa,IAAI,cAAc,gBAAgB;;AAM/C,SAAgB,WAA+B,QAAgB,UAA6B,EAAE,EAAE;AAC9F,QAAO,KAAK,OAAkB;GAC3B,OAAO;EACR,MAAM;EACN,MAAM;EACN,GAAG;EACJ,CAAC"}
@@ -1,7 +1,9 @@
1
+ //#region src/shared/utils/try-catch.d.ts
1
2
  type Result<T = unknown, E extends Error = Error> = [null, T] | [E, null];
2
3
  /**
3
4
  * Try catch wrapper for async functions
4
5
  */
5
- export declare function tryCatch<T, E extends Error = Error>(promise: Promise<T>): Promise<Result<T, E>>;
6
- export {};
6
+ declare function tryCatch<T, E extends Error = Error>(promise: Promise<T>): Promise<Result<T, E>>;
7
+ //#endregion
8
+ export { tryCatch };
7
9
  //# sourceMappingURL=try-catch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"try-catch.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/try-catch.ts"],"names":[],"mappings":"AAAA,KAAK,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAE1E;;GAEG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAAE,CAAC,SAAS,KAAK,GAAG,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAMrG"}
1
+ {"version":3,"file":"try-catch.d.ts","names":[],"sources":["../../../src/shared/utils/try-catch.ts"],"sourcesContent":[],"mappings":";KAAK,8BAA8B,QAAQ,gBAAgB,MAAM;;;;AAAtB,iBAKrB,QALqB,CAAA,CAAA,EAAA,UAKC,KALD,GAKS,KALT,CAAA,CAAA,OAAA,EAKyB,OALzB,CAKiC,CALjC,CAAA,CAAA,EAKsC,OALtC,CAK8C,MAL9C,CAKqD,CALrD,EAKwD,CALxD,CAAA,CAAA"}
@@ -1,16 +1,15 @@
1
- /*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
2
-
3
- import "../chunk-ZGQ3AQBG.js";
4
-
5
- // src/shared/utils/try-catch.ts
1
+ //#region src/shared/utils/try-catch.ts
2
+ /**
3
+ * Try catch wrapper for async functions
4
+ */
6
5
  async function tryCatch(promise) {
7
- try {
8
- return [null, await promise];
9
- } catch (e) {
10
- return [e instanceof Error ? e : new Error(`Error in tryCatch: ${e}`), null];
11
- }
6
+ try {
7
+ return [null, await promise];
8
+ } catch (e) {
9
+ return [e instanceof Error ? e : /* @__PURE__ */ new Error(`Error in tryCatch: ${e}`), null];
10
+ }
12
11
  }
13
- export {
14
- tryCatch
15
- };
12
+
13
+ //#endregion
14
+ export { tryCatch };
16
15
  //# sourceMappingURL=try-catch.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/shared/utils/try-catch.ts"],"sourcesContent":["type Result<T = unknown, E extends Error = Error> = [null, T] | [E, null];\n\n/**\n * Try catch wrapper for async functions\n */\nexport async function tryCatch<T, E extends Error = Error>(promise: Promise<T>): Promise<Result<T, E>> {\n try {\n return [null, await promise];\n } catch (e) {\n return [e instanceof Error ? e : new Error(`Error in tryCatch: ${e}`), null] as Result<T, E>;\n }\n}\n"],"mappings":";;;;;AAKA,eAAsB,SAAqC,SAA4C;AACrG,MAAI;AACF,WAAO,CAAC,MAAM,MAAM,OAAO;AAAA,EAC7B,SAAS,GAAG;AACV,WAAO,CAAC,aAAa,QAAQ,IAAI,IAAI,MAAM,sBAAsB,CAAC,EAAE,GAAG,IAAI;AAAA,EAC7E;AACF;","names":[]}
1
+ {"version":3,"file":"try-catch.js","names":[],"sources":["../../../src/shared/utils/try-catch.ts"],"sourcesContent":["type Result<T = unknown, E extends Error = Error> = [null, T] | [E, null];\n\n/**\n * Try catch wrapper for async functions\n */\nexport async function tryCatch<T, E extends Error = Error>(promise: Promise<T>): Promise<Result<T, E>> {\n try {\n return [null, await promise];\n } catch (e) {\n return [e instanceof Error ? e : new Error(`Error in tryCatch: ${e}`), null] as Result<T, E>;\n }\n}\n"],"mappings":";;;;AAKA,eAAsB,SAAqC,SAA4C;AACrG,KAAI;AACF,SAAO,CAAC,MAAM,MAAM,QAAQ;UACrB,GAAG;AACV,SAAO,CAAC,aAAa,QAAQ,oBAAI,IAAI,MAAM,sBAAsB,IAAI,EAAE,KAAK"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@upstart.gg/sdk",
3
- "version": "0.0.138",
3
+ "version": "0.0.139",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
@@ -37,31 +37,25 @@
37
37
  "low-code"
38
38
  ],
39
39
  "dependencies": {
40
- "@apidevtools/json-schema-ref-parser": "14.2.0",
41
- "@date-fns/utc": "1.2.0",
40
+ "@cfworker/json-schema": "4.1.1",
42
41
  "@notionhq/client": "4.0.2",
43
42
  "@radix-ui/themes": "3.2.1",
44
43
  "@rowanmanning/feed-parser": "2.1.0",
45
44
  "chroma-js": "3.1.2",
46
- "date-fns": "3.6.0",
47
- "debug": "4.3.6",
48
- "form-data": "4.0.4",
49
- "get-port": "7.1.0",
50
45
  "http-errors-enhanced": "2.0.8",
51
46
  "immer": "10.1.1",
52
47
  "nanoid": "5.1.5",
53
48
  "react-hotkeys-hook": "4.5.1",
54
- "react-selecto": "1.26.3",
55
49
  "usehooks-ts": "3.1.1",
56
50
  "zundo": "2.3.0",
57
51
  "zustand": "4.5.5",
58
- "@upstart.gg/style-system": "0.0.138"
52
+ "@upstart.gg/style-system": "0.0.139"
59
53
  },
60
54
  "peerDependencies": {
61
55
  "@headlessui/react": "^2.2.1",
56
+ "@sinclair/typebox": "^0.34.41",
62
57
  "ai": "^5.0.0",
63
58
  "lodash-es": "^4.17.21",
64
- "@sinclair/typebox": "^0.34.41",
65
59
  "react": "^19.1.1",
66
60
  "react-dom": "^19.1.1",
67
61
  "react-icons": "^5.5.0"
@@ -69,32 +63,28 @@
69
63
  "devDependencies": {
70
64
  "@cloudflare/workers-types": "4.20240806.0",
71
65
  "@types/chroma-js": "3.1.1",
72
- "@types/cli-progress": "3.11.6",
73
66
  "@types/debug": "4.1.12",
74
67
  "@types/express": "^4.17.21",
75
68
  "@types/lodash-es": "4.17.12",
76
69
  "@types/node": "^24.5.2",
77
70
  "@types/react": "19.1.13",
78
71
  "@types/react-dom": "^19.1.9",
79
- "react": "^19.1.1",
80
- "react-dom": "^19.1.1",
81
72
  "@types/sortablejs": "1.15.8",
82
- "ajv": "^8.17.1",
83
- "ajv-formats": "^3.0.1",
84
- "concurrently": "8.2.2",
85
73
  "express": "^4.21.2",
74
+ "react": "^19.1.1",
75
+ "react-dom": "^19.1.1",
86
76
  "rimraf": "6.0.1",
87
- "tsup": "^8.5.0"
77
+ "tsdown": "^0.15.6"
88
78
  },
89
79
  "author": "Matthias Etienne",
90
80
  "publishConfig": {
91
81
  "access": "public"
92
82
  },
93
83
  "scripts": {
94
- "build": "tsup",
95
- "build:analyze": "tsup --metafile",
84
+ "build": "tsdown",
85
+ "build:analyze": "tsdown --metafile",
96
86
  "build:types": "tsc --emitDeclarationOnly --declaration --declarationMap",
97
- "dev": "tsup --watch",
87
+ "dev": "tsdown --watch",
98
88
  "sizetest": "pnpm build && du -sh dist",
99
89
  "lint": "biome check --write . && tsc --noEmit",
100
90
  "ci:lint": "tsc --noEmit",
@@ -15,11 +15,13 @@ export const askUserChoiceInput = Type.Object({
15
15
  choices: Type.Array(
16
16
  Type.String({
17
17
  title: "Choice. Will appear as a button label to the user. Don't make it too long for a button label.",
18
- minLength: 2,
18
+ minLength: 1,
19
19
  }),
20
20
  {
21
- description: "The list of choices to present to the user. Minimum 2 choices, max 6.",
22
- maxItems: 6,
21
+ description: `The list of choices to present to the user.
22
+ For yes/no questions, use 'Yes' and 'No' as choices. (translated to user language).
23
+ For other multiple choice questions, always include one LAST choice for 'Other' or 'None of these' as a last choice to let the user manually input their own answer if none of the predefined choices fit.`,
24
+ maxItems: 7,
23
25
  minItems: 2,
24
26
  },
25
27
  ),