@tscircuit/fake-snippets 0.0.120 → 0.0.122

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 (612) hide show
  1. package/dist/bundle.js +1 -2
  2. package/package.json +4 -1
  3. package/.github/CODEOWNERS +0 -1
  4. package/.github/workflows/bun-formatcheck.yml +0 -26
  5. package/.github/workflows/bun-pver-release.yml +0 -28
  6. package/.github/workflows/bun-test.yml +0 -28
  7. package/.github/workflows/bun-typecheck.yml +0 -26
  8. package/.github/workflows/bundle-size-analysis.yml +0 -79
  9. package/.github/workflows/stale.yml +0 -40
  10. package/.github/workflows/update-package.yml +0 -58
  11. package/.github/workflows/update-snapshots.yml +0 -49
  12. package/CLAUDE.md +0 -92
  13. package/CONTRIBUTING.md +0 -59
  14. package/api/generated-index.js +0 -456
  15. package/biome.json +0 -67
  16. package/bun-tests/fake-snippets-api/fixtures/get-test-server.ts +0 -141
  17. package/bun-tests/fake-snippets-api/fixtures/preload.ts +0 -18
  18. package/bun-tests/fake-snippets-api/fixtures/start-server.ts +0 -48
  19. package/bun-tests/fake-snippets-api/routes/accounts/get.test.ts +0 -64
  20. package/bun-tests/fake-snippets-api/routes/accounts/get_account_balance.test.ts +0 -14
  21. package/bun-tests/fake-snippets-api/routes/ai_reviews/create.test.ts +0 -21
  22. package/bun-tests/fake-snippets-api/routes/ai_reviews/get.test.ts +0 -16
  23. package/bun-tests/fake-snippets-api/routes/ai_reviews/list.test.ts +0 -14
  24. package/bun-tests/fake-snippets-api/routes/ai_reviews/process_review.test.ts +0 -16
  25. package/bun-tests/fake-snippets-api/routes/bug_reports/create.test.ts +0 -37
  26. package/bun-tests/fake-snippets-api/routes/bug_reports/upload_file.test.ts +0 -89
  27. package/bun-tests/fake-snippets-api/routes/datasheets/create.test.ts +0 -16
  28. package/bun-tests/fake-snippets-api/routes/datasheets/get.test.ts +0 -54
  29. package/bun-tests/fake-snippets-api/routes/datasheets/list.test.ts +0 -49
  30. package/bun-tests/fake-snippets-api/routes/datasheets/process_all_datasheets.test.ts +0 -22
  31. package/bun-tests/fake-snippets-api/routes/datasheets/run_async_tasks.test.ts +0 -19
  32. package/bun-tests/fake-snippets-api/routes/health.test.ts +0 -9
  33. package/bun-tests/fake-snippets-api/routes/order_files/get.test.ts +0 -48
  34. package/bun-tests/fake-snippets-api/routes/order_files/upload.test.ts +0 -77
  35. package/bun-tests/fake-snippets-api/routes/order_quotes/create.test.ts +0 -33
  36. package/bun-tests/fake-snippets-api/routes/orders/create.test.ts +0 -17
  37. package/bun-tests/fake-snippets-api/routes/orders/get.test.ts +0 -199
  38. package/bun-tests/fake-snippets-api/routes/orders/list.test.ts +0 -30
  39. package/bun-tests/fake-snippets-api/routes/orgs/add_member.test.ts +0 -26
  40. package/bun-tests/fake-snippets-api/routes/orgs/create.test.ts +0 -37
  41. package/bun-tests/fake-snippets-api/routes/orgs/get.test.ts +0 -53
  42. package/bun-tests/fake-snippets-api/routes/orgs/get_member.test.ts +0 -110
  43. package/bun-tests/fake-snippets-api/routes/orgs/list.test.ts +0 -17
  44. package/bun-tests/fake-snippets-api/routes/orgs/list_members.test.ts +0 -24
  45. package/bun-tests/fake-snippets-api/routes/orgs/remove_member.test.ts +0 -81
  46. package/bun-tests/fake-snippets-api/routes/orgs/update.test.ts +0 -151
  47. package/bun-tests/fake-snippets-api/routes/package_builds/get.test.ts +0 -279
  48. package/bun-tests/fake-snippets-api/routes/package_builds/list.test.ts +0 -292
  49. package/bun-tests/fake-snippets-api/routes/package_files/create.test.ts +0 -320
  50. package/bun-tests/fake-snippets-api/routes/package_files/create_or_update.test.ts +0 -603
  51. package/bun-tests/fake-snippets-api/routes/package_files/delete.test.ts +0 -233
  52. package/bun-tests/fake-snippets-api/routes/package_files/download.test.ts +0 -248
  53. package/bun-tests/fake-snippets-api/routes/package_files/get.test.ts +0 -230
  54. package/bun-tests/fake-snippets-api/routes/package_files/list.test.ts +0 -212
  55. package/bun-tests/fake-snippets-api/routes/package_releases/create.test.ts +0 -171
  56. package/bun-tests/fake-snippets-api/routes/package_releases/get.test.ts +0 -181
  57. package/bun-tests/fake-snippets-api/routes/package_releases/get_image_generation_fields.test.ts +0 -38
  58. package/bun-tests/fake-snippets-api/routes/package_releases/list.test.ts +0 -149
  59. package/bun-tests/fake-snippets-api/routes/package_releases/update.test.ts +0 -160
  60. package/bun-tests/fake-snippets-api/routes/packages/add_star.test.ts +0 -129
  61. package/bun-tests/fake-snippets-api/routes/packages/create.test.ts +0 -67
  62. package/bun-tests/fake-snippets-api/routes/packages/delete.test.ts +0 -74
  63. package/bun-tests/fake-snippets-api/routes/packages/fork.test.ts +0 -132
  64. package/bun-tests/fake-snippets-api/routes/packages/get.test.ts +0 -112
  65. package/bun-tests/fake-snippets-api/routes/packages/images.test.ts +0 -72
  66. package/bun-tests/fake-snippets-api/routes/packages/list-1.test.ts +0 -145
  67. package/bun-tests/fake-snippets-api/routes/packages/list-2.test.ts +0 -48
  68. package/bun-tests/fake-snippets-api/routes/packages/list_latest.test.ts +0 -110
  69. package/bun-tests/fake-snippets-api/routes/packages/list_trending.test.ts +0 -103
  70. package/bun-tests/fake-snippets-api/routes/packages/remove_star.test.ts +0 -131
  71. package/bun-tests/fake-snippets-api/routes/packages/update.test.ts +0 -217
  72. package/bun-tests/fake-snippets-api/routes/proxy.test.ts +0 -42
  73. package/bun.lock +0 -2724
  74. package/bunfig.toml +0 -3
  75. package/components.json +0 -20
  76. package/docs/CIRCUIT_JSON_SOURCE_COMPONENT_OVERVIEW.md +0 -151
  77. package/fake-snippets-api/README.md +0 -6
  78. package/fake-snippets-api/biome.json +0 -47
  79. package/fake-snippets-api/bun.lockb +0 -0
  80. package/fake-snippets-api/lib/db/autoload-dev-packages.ts +0 -222
  81. package/fake-snippets-api/lib/db/autoload-packages.json +0 -8
  82. package/fake-snippets-api/lib/db/db-client.ts +0 -1857
  83. package/fake-snippets-api/lib/db/schema.ts +0 -502
  84. package/fake-snippets-api/lib/db/seed.ts +0 -1843
  85. package/fake-snippets-api/lib/index.ts +0 -3
  86. package/fake-snippets-api/lib/middleware/with-ctx-error.ts +0 -26
  87. package/fake-snippets-api/lib/middleware/with-db.ts +0 -15
  88. package/fake-snippets-api/lib/middleware/with-error-handling.ts +0 -24
  89. package/fake-snippets-api/lib/middleware/with-optional-session-auth.ts +0 -53
  90. package/fake-snippets-api/lib/middleware/with-request-logging.ts +0 -54
  91. package/fake-snippets-api/lib/middleware/with-session-auth.ts +0 -102
  92. package/fake-snippets-api/lib/middleware/with-winter-spec.ts +0 -24
  93. package/fake-snippets-api/lib/package_file/generate-fs-sha.ts +0 -20
  94. package/fake-snippets-api/lib/package_file/get-package-file-id-from-file-descriptor.ts +0 -173
  95. package/fake-snippets-api/lib/package_release/find-package-release-id.ts +0 -120
  96. package/fake-snippets-api/lib/public-mapping/public-map-org.ts +0 -34
  97. package/fake-snippets-api/lib/public-mapping/public-map-package-build.ts +0 -48
  98. package/fake-snippets-api/lib/public-mapping/public-map-package-release.ts +0 -88
  99. package/fake-snippets-api/lib/public-mapping/public-map-package.ts +0 -60
  100. package/fake-snippets-api/lib/with-winter-spec.ts +0 -1
  101. package/fake-snippets-api/next-env.d.ts +0 -5
  102. package/fake-snippets-api/routes/api/_fake/ai_reviews/process_review.ts +0 -31
  103. package/fake-snippets-api/routes/api/_fake/datasheets/process_all_datasheets.ts +0 -38
  104. package/fake-snippets-api/routes/api/_fake/db.ts +0 -11
  105. package/fake-snippets-api/routes/api/_fake/move_orders_forward.ts +0 -65
  106. package/fake-snippets-api/routes/api/_fake/received_quotes.ts +0 -112
  107. package/fake-snippets-api/routes/api/_fake/run_async_tasks.ts +0 -12
  108. package/fake-snippets-api/routes/api/_fake/seed.ts +0 -13
  109. package/fake-snippets-api/routes/api/accounts/get.ts +0 -35
  110. package/fake-snippets-api/routes/api/accounts/get_account_balance.ts +0 -22
  111. package/fake-snippets-api/routes/api/accounts/search.ts +0 -20
  112. package/fake-snippets-api/routes/api/accounts/update.ts +0 -32
  113. package/fake-snippets-api/routes/api/ai/[...anyroute].ts +0 -31
  114. package/fake-snippets-api/routes/api/ai.ts +0 -2
  115. package/fake-snippets-api/routes/api/ai_reviews/create.ts +0 -44
  116. package/fake-snippets-api/routes/api/ai_reviews/get.ts +0 -24
  117. package/fake-snippets-api/routes/api/ai_reviews/list.ts +0 -14
  118. package/fake-snippets-api/routes/api/aistream/[...anyroute].ts +0 -65
  119. package/fake-snippets-api/routes/api/autocomplete/create_autocomplete.ts +0 -16
  120. package/fake-snippets-api/routes/api/bug_reports/create.ts +0 -43
  121. package/fake-snippets-api/routes/api/bug_reports/upload_file.ts +0 -113
  122. package/fake-snippets-api/routes/api/datasheets/create.ts +0 -18
  123. package/fake-snippets-api/routes/api/datasheets/get.ts +0 -35
  124. package/fake-snippets-api/routes/api/datasheets/list.ts +0 -29
  125. package/fake-snippets-api/routes/api/github/installations/create_new_installation_redirect.ts +0 -75
  126. package/fake-snippets-api/routes/api/github/repos/list_available.ts +0 -91
  127. package/fake-snippets-api/routes/api/github/repos/refresh.ts +0 -44
  128. package/fake-snippets-api/routes/api/health.ts +0 -9
  129. package/fake-snippets-api/routes/api/internal/sessions/create_without_auth.ts +0 -63
  130. package/fake-snippets-api/routes/api/order_files/get.ts +0 -28
  131. package/fake-snippets-api/routes/api/order_files/upload.ts +0 -46
  132. package/fake-snippets-api/routes/api/order_quotes/create.ts +0 -60
  133. package/fake-snippets-api/routes/api/order_quotes/create_all_vendor_quotes.ts +0 -30
  134. package/fake-snippets-api/routes/api/order_quotes/get.ts +0 -29
  135. package/fake-snippets-api/routes/api/orders/create.ts +0 -70
  136. package/fake-snippets-api/routes/api/orders/get.ts +0 -168
  137. package/fake-snippets-api/routes/api/orders/list.ts +0 -15
  138. package/fake-snippets-api/routes/api/orgs/add_member.ts +0 -52
  139. package/fake-snippets-api/routes/api/orgs/create.ts +0 -48
  140. package/fake-snippets-api/routes/api/orgs/get.ts +0 -39
  141. package/fake-snippets-api/routes/api/orgs/get_member.ts +0 -67
  142. package/fake-snippets-api/routes/api/orgs/list.ts +0 -31
  143. package/fake-snippets-api/routes/api/orgs/list_members.ts +0 -106
  144. package/fake-snippets-api/routes/api/orgs/remove_member.ts +0 -46
  145. package/fake-snippets-api/routes/api/orgs/update.ts +0 -118
  146. package/fake-snippets-api/routes/api/package_builds/get.ts +0 -70
  147. package/fake-snippets-api/routes/api/package_builds/list.ts +0 -97
  148. package/fake-snippets-api/routes/api/package_files/create.ts +0 -135
  149. package/fake-snippets-api/routes/api/package_files/create_or_update.ts +0 -194
  150. package/fake-snippets-api/routes/api/package_files/delete.ts +0 -109
  151. package/fake-snippets-api/routes/api/package_files/download.ts +0 -87
  152. package/fake-snippets-api/routes/api/package_files/get.ts +0 -68
  153. package/fake-snippets-api/routes/api/package_files/list.ts +0 -54
  154. package/fake-snippets-api/routes/api/package_releases/create.ts +0 -109
  155. package/fake-snippets-api/routes/api/package_releases/get.ts +0 -137
  156. package/fake-snippets-api/routes/api/package_releases/list.ts +0 -85
  157. package/fake-snippets-api/routes/api/package_releases/rebuild.ts +0 -66
  158. package/fake-snippets-api/routes/api/package_releases/update.ts +0 -122
  159. package/fake-snippets-api/routes/api/packages/add_star.ts +0 -84
  160. package/fake-snippets-api/routes/api/packages/create.ts +0 -136
  161. package/fake-snippets-api/routes/api/packages/delete.ts +0 -41
  162. package/fake-snippets-api/routes/api/packages/fork.ts +0 -165
  163. package/fake-snippets-api/routes/api/packages/generate_from_jlcpcb.ts +0 -111
  164. package/fake-snippets-api/routes/api/packages/get.ts +0 -81
  165. package/fake-snippets-api/routes/api/packages/images/[owner_github_username]/[unscoped_name]/[view_format].ts +0 -119
  166. package/fake-snippets-api/routes/api/packages/list.ts +0 -105
  167. package/fake-snippets-api/routes/api/packages/list_latest.ts +0 -29
  168. package/fake-snippets-api/routes/api/packages/list_trending.ts +0 -43
  169. package/fake-snippets-api/routes/api/packages/remove_star.ts +0 -70
  170. package/fake-snippets-api/routes/api/packages/search.ts +0 -19
  171. package/fake-snippets-api/routes/api/packages/update.ts +0 -112
  172. package/fake-snippets-api/routes/api/packages/update_ai_description.ts +0 -37
  173. package/fake-snippets-api/routes/api/proxy.ts +0 -128
  174. package/fake-snippets-api/routes/api/snippets/add_star.ts +0 -62
  175. package/fake-snippets-api/routes/api/snippets/create.ts +0 -184
  176. package/fake-snippets-api/routes/api/snippets/delete.ts +0 -41
  177. package/fake-snippets-api/routes/api/snippets/download.ts +0 -162
  178. package/fake-snippets-api/routes/api/snippets/generate_from_jlcpcb.ts +0 -48
  179. package/fake-snippets-api/routes/api/snippets/get.ts +0 -83
  180. package/fake-snippets-api/routes/api/snippets/get_image.ts +0 -65
  181. package/fake-snippets-api/routes/api/snippets/images/[author]/[snippet_name]/[typeFormat].ts +0 -80
  182. package/fake-snippets-api/routes/api/snippets/list.ts +0 -151
  183. package/fake-snippets-api/routes/api/snippets/list_latest.ts +0 -13
  184. package/fake-snippets-api/routes/api/snippets/list_trending.ts +0 -38
  185. package/fake-snippets-api/routes/api/snippets/remove_star.ts +0 -42
  186. package/fake-snippets-api/routes/api/snippets/search.ts +0 -18
  187. package/fake-snippets-api/routes/api/snippets/update.ts +0 -114
  188. package/fake-snippets-api/utils/normalizeProjectFilePath.ts +0 -60
  189. package/fake-snippets-api/utils/order-steps.ts +0 -20
  190. package/favicon.ico +0 -0
  191. package/index.html +0 -125
  192. package/landing.html +0 -23
  193. package/playwright-tests/ai-page.spec.ts +0 -19
  194. package/playwright-tests/circuit-json-import.spec.ts +0 -133
  195. package/playwright-tests/cmd-click.spec.ts +0 -43
  196. package/playwright-tests/dashboard-page.spec.ts +0 -10
  197. package/playwright-tests/editor-page.spec.ts +0 -15
  198. package/playwright-tests/exampleCircuitJson.ts +0 -498
  199. package/playwright-tests/files-dialog.spec.ts +0 -19
  200. package/playwright-tests/footprint-dialog/footprint-dialog.spec.ts +0 -27
  201. package/playwright-tests/footprint-dialog/footprint-insertion.spec.ts +0 -38
  202. package/playwright-tests/footprint-dialog/footprint-preview.spec.ts +0 -34
  203. package/playwright-tests/footprint-dialog/footprint-selection.spec.ts +0 -29
  204. package/playwright-tests/handle-manual-edits.spec.ts +0 -55
  205. package/playwright-tests/home-page.spec.ts +0 -10
  206. package/playwright-tests/images.spec.ts +0 -17
  207. package/playwright-tests/manual-edits.spec.ts +0 -89
  208. package/playwright-tests/preview-page.spec.ts +0 -7
  209. package/playwright-tests/profile-page.spec.ts +0 -108
  210. package/playwright-tests/quickstart-page.spec.ts +0 -10
  211. package/playwright-tests/search-links.spec.ts +0 -21
  212. package/playwright-tests/search.spec.ts +0 -27
  213. package/playwright-tests/snapshots/ai-page.spec.ts-AI-Page-lg.png +0 -0
  214. package/playwright-tests/snapshots/ai-page.spec.ts-AI-Page-md.png +0 -0
  215. package/playwright-tests/snapshots/ai-page.spec.ts-AI-Page-xs.png +0 -0
  216. package/playwright-tests/snapshots/cmd-click.spec.ts-underlined-imports.png +0 -0
  217. package/playwright-tests/snapshots/dashboard-page.spec.ts-Dashboard-page-lg.png +0 -0
  218. package/playwright-tests/snapshots/dashboard-page.spec.ts-Dashboard-page-md.png +0 -0
  219. package/playwright-tests/snapshots/dashboard-page.spec.ts-Dashboard-page-xs.png +0 -0
  220. package/playwright-tests/snapshots/editor-page.spec.ts-editor-with-snippet.png +0 -0
  221. package/playwright-tests/snapshots/error-fallback.spec.ts-error-fallback-lg.png +0 -0
  222. package/playwright-tests/snapshots/error-fallback.spec.ts-error-fallback-md.png +0 -0
  223. package/playwright-tests/snapshots/error-fallback.spec.ts-error-fallback-xs.png +0 -0
  224. package/playwright-tests/snapshots/files-dialog.spec.ts-view-snippet-files.png +0 -0
  225. package/playwright-tests/snapshots/footprint-dialog/footprint-dialog.spec.ts-footprint-preview-lg.png +0 -0
  226. package/playwright-tests/snapshots/footprint-dialog/footprint-dialog.spec.ts-footprint-preview-md.png +0 -0
  227. package/playwright-tests/snapshots/footprint-dialog/footprint-dialog.spec.ts-footprint-preview-xs.png +0 -0
  228. package/playwright-tests/snapshots/footprint-dialog/footprint-insertion.spec.ts-footprint-insertion-lg.png +0 -0
  229. package/playwright-tests/snapshots/footprint-dialog/footprint-insertion.spec.ts-footprint-insertion-md.png +0 -0
  230. package/playwright-tests/snapshots/footprint-dialog/footprint-insertion.spec.ts-footprint-insertion-xs.png +0 -0
  231. package/playwright-tests/snapshots/footprint-dialog/footprint-preview.spec.ts-footprint-preview-lg.png +0 -0
  232. package/playwright-tests/snapshots/footprint-dialog/footprint-preview.spec.ts-footprint-preview-md.png +0 -0
  233. package/playwright-tests/snapshots/footprint-dialog/footprint-preview.spec.ts-footprint-preview-xs.png +0 -0
  234. package/playwright-tests/snapshots/footprint-dialog/footprint-selection.spec.ts-footprint-preview-lg.png +0 -0
  235. package/playwright-tests/snapshots/footprint-dialog/footprint-selection.spec.ts-footprint-preview-md.png +0 -0
  236. package/playwright-tests/snapshots/footprint-dialog/footprint-selection.spec.ts-footprint-preview-xs.png +0 -0
  237. package/playwright-tests/snapshots/handle-manual-edits.spec.ts-handle-manual-edits.png +0 -0
  238. package/playwright-tests/snapshots/home-page.spec.ts-Home-page-lg.png +0 -0
  239. package/playwright-tests/snapshots/home-page.spec.ts-Home-page-md.png +0 -0
  240. package/playwright-tests/snapshots/home-page.spec.ts-Home-page-xs.png +0 -0
  241. package/playwright-tests/snapshots/images.spec.ts-pcb-image.png +0 -0
  242. package/playwright-tests/snapshots/images.spec.ts-schematic-image.png +0 -0
  243. package/playwright-tests/snapshots/manual-edits.spec.ts-editor-manual-edits.png +0 -0
  244. package/playwright-tests/snapshots/manual-edits.spec.ts-manual-edits-view.png +0 -0
  245. package/playwright-tests/snapshots/preview-page.spec.ts-preview-snippet-pcb.png +0 -0
  246. package/playwright-tests/snapshots/profile-page.spec.ts-profile-page-before-delete.png +0 -0
  247. package/playwright-tests/snapshots/profile-page.spec.ts-profile-page-delete-dialog.png +0 -0
  248. package/playwright-tests/snapshots/profile-page.spec.ts-profile-page-dropdown-open.png +0 -0
  249. package/playwright-tests/snapshots/profile-page.spec.ts-profile-page-snippets-tab.png +0 -0
  250. package/playwright-tests/snapshots/profile-page.spec.ts-profile-page-starred-tab.png +0 -0
  251. package/playwright-tests/snapshots/profile-page.spec.ts-snippet-page-open-after-star-click.png +0 -0
  252. package/playwright-tests/snapshots/quickstart-page.spec.ts-Quickstart-Pagelg.png +0 -0
  253. package/playwright-tests/snapshots/quickstart-page.spec.ts-Quickstart-Pagemd.png +0 -0
  254. package/playwright-tests/snapshots/quickstart-page.spec.ts-Quickstart-Pagexs.png +0 -0
  255. package/playwright-tests/snapshots/search-links.spec.ts-search-links.png +0 -0
  256. package/playwright-tests/snapshots/search.spec.ts-search-lg.png +0 -0
  257. package/playwright-tests/snapshots/search.spec.ts-search-md.png +0 -0
  258. package/playwright-tests/snapshots/search.spec.ts-search-xs.png +0 -0
  259. package/playwright-tests/snapshots/star.spec.ts-remove-star-button.png +0 -0
  260. package/playwright-tests/snapshots/star.spec.ts-star-button.png +0 -0
  261. package/playwright-tests/snapshots/update-description.spec.ts-update-description.png +0 -0
  262. package/playwright-tests/snapshots/view-snippet.spec.ts-view-snippet-after-lg.png +0 -0
  263. package/playwright-tests/snapshots/view-snippet.spec.ts-view-snippet-after-md.png +0 -0
  264. package/playwright-tests/snapshots/view-snippet.spec.ts-view-snippet-after-xs.png +0 -0
  265. package/playwright-tests/snapshots/view-snippet.spec.ts-view-snippet-before-lg.png +0 -0
  266. package/playwright-tests/snapshots/view-snippet.spec.ts-view-snippet-before-md.png +0 -0
  267. package/playwright-tests/snapshots/view-snippet.spec.ts-view-snippet-before-xs.png +0 -0
  268. package/playwright-tests/snapshots/view-snippet.spec.ts-view-snippet-files.png +0 -0
  269. package/playwright-tests/star.spec.ts +0 -40
  270. package/playwright-tests/update-description.spec.ts +0 -18
  271. package/playwright-tests/view-snippet.spec.ts +0 -35
  272. package/playwright-tests/viewports.ts +0 -5
  273. package/playwright.config.ts +0 -27
  274. package/postcss.config.js +0 -6
  275. package/public/robots.txt +0 -9
  276. package/renovate.json +0 -25
  277. package/scripts/generate-image-sizes.ts +0 -57
  278. package/scripts/generate-sitemap.ts +0 -103
  279. package/scripts/generate_bundle_stats.js +0 -208
  280. package/scripts/snapshot.ts +0 -35
  281. package/src/App.tsx +0 -314
  282. package/src/ContextProviders.tsx +0 -94
  283. package/src/assets/originals/editor_example_1.webp +0 -0
  284. package/src/assets/originals/editor_example_1_more_square.webp +0 -0
  285. package/src/assets/originals/editor_example_2.webp +0 -0
  286. package/src/assets/originals/example_schematic.webp +0 -0
  287. package/src/components/AiChatMessage.tsx +0 -86
  288. package/src/components/Analytics.tsx +0 -23
  289. package/src/components/BomTable.tsx +0 -69
  290. package/src/components/ChatInput.tsx +0 -53
  291. package/src/components/CircuitJsonImportDialog.tsx +0 -269
  292. package/src/components/CircuitToSvgWithMouseControl.tsx +0 -78
  293. package/src/components/CmdKMenu.tsx +0 -809
  294. package/src/components/CreateNewSnippetWithAiHero.tsx +0 -81
  295. package/src/components/CreateReleaseDialog.tsx +0 -124
  296. package/src/components/DownloadButtonAndMenu.tsx +0 -443
  297. package/src/components/ErrorFallback.tsx +0 -25
  298. package/src/components/ErrorOutline.tsx +0 -35
  299. package/src/components/ErrorTabContent.tsx +0 -122
  300. package/src/components/ExpandableText.tsx +0 -29
  301. package/src/components/FAQ.tsx +0 -189
  302. package/src/components/FileSidebar.tsx +0 -271
  303. package/src/components/Footer.tsx +0 -144
  304. package/src/components/GithubAvatarWithFallback.tsx +0 -35
  305. package/src/components/Header.tsx +0 -202
  306. package/src/components/Header2.tsx +0 -202
  307. package/src/components/HeaderDropdown.tsx +0 -88
  308. package/src/components/HeaderLogin.tsx +0 -105
  309. package/src/components/HiddenFilesDropdown.tsx +0 -42
  310. package/src/components/ImageWithFallback.tsx +0 -37
  311. package/src/components/LatestSnippets.tsx +0 -39
  312. package/src/components/NotFound.tsx +0 -37
  313. package/src/components/OptimizedImage.tsx +0 -100
  314. package/src/components/PackageBreadcrumb.tsx +0 -105
  315. package/src/components/PackageBuildsPage/ErrorObject.ts +0 -12
  316. package/src/components/PackageBuildsPage/capitalCase.ts +0 -4
  317. package/src/components/PackageBuildsPage/getColorForDisplayStatus.ts +0 -17
  318. package/src/components/PackageCard.tsx +0 -191
  319. package/src/components/PackageCardSkeleton.tsx +0 -17
  320. package/src/components/PackageLink.tsx +0 -29
  321. package/src/components/PackageSearchResults.tsx +0 -81
  322. package/src/components/PackagesList.tsx +0 -71
  323. package/src/components/PcbViewerWithContainerHeight.tsx +0 -47
  324. package/src/components/PrefetchPageLink.tsx +0 -114
  325. package/src/components/PreviewEmptyState.tsx +0 -16
  326. package/src/components/ProfileRouter.tsx +0 -30
  327. package/src/components/RunButton.tsx +0 -27
  328. package/src/components/SearchComponent.tsx +0 -282
  329. package/src/components/SentryNotFoundReporter.tsx +0 -44
  330. package/src/components/SnippetTypeIcon.tsx +0 -60
  331. package/src/components/StaticPreviewContent.tsx +0 -89
  332. package/src/components/StaticViewSnippetSidebar.tsx +0 -100
  333. package/src/components/SuspenseRunFrame.tsx +0 -28
  334. package/src/components/TableViewer/CircuitJsonTableViewer.tsx +0 -316
  335. package/src/components/TableViewer/ClickableText.tsx +0 -21
  336. package/src/components/TableViewer/HeaderCell.tsx +0 -27
  337. package/src/components/TableViewer/Modal.tsx +0 -39
  338. package/src/components/TrendingPackagesCarousel.tsx +0 -79
  339. package/src/components/TypeBadge.tsx +0 -31
  340. package/src/components/UserCard.tsx +0 -80
  341. package/src/components/ViewPackagePage/components/ShikiCodeViewer.tsx +0 -49
  342. package/src/components/ViewPackagePage/components/build-status.tsx +0 -38
  343. package/src/components/ViewPackagePage/components/important-files-view.tsx +0 -611
  344. package/src/components/ViewPackagePage/components/main-content-header.tsx +0 -181
  345. package/src/components/ViewPackagePage/components/main-content-view-selector.tsx +0 -167
  346. package/src/components/ViewPackagePage/components/markdown-viewer.tsx +0 -88
  347. package/src/components/ViewPackagePage/components/mobile-sidebar.tsx +0 -301
  348. package/src/components/ViewPackagePage/components/package-header.tsx +0 -264
  349. package/src/components/ViewPackagePage/components/preview-image-squares.tsx +0 -47
  350. package/src/components/ViewPackagePage/components/repo-page-content.tsx +0 -266
  351. package/src/components/ViewPackagePage/components/sidebar-about-section.tsx +0 -223
  352. package/src/components/ViewPackagePage/components/sidebar-packages-section.tsx +0 -16
  353. package/src/components/ViewPackagePage/components/sidebar-releases-section.tsx +0 -126
  354. package/src/components/ViewPackagePage/components/sidebar.tsx +0 -29
  355. package/src/components/ViewPackagePage/components/tab-views/3d-view.tsx +0 -43
  356. package/src/components/ViewPackagePage/components/tab-views/bom-view.tsx +0 -30
  357. package/src/components/ViewPackagePage/components/tab-views/files-view.tsx +0 -295
  358. package/src/components/ViewPackagePage/components/tab-views/pcb-view.tsx +0 -35
  359. package/src/components/ViewPackagePage/components/tab-views/schematic-view.tsx +0 -38
  360. package/src/components/ViewPackagePage/components/theme-toggle.tsx +0 -40
  361. package/src/components/ViewPackagePage/hooks/use-current-package-circuit-json.ts +0 -46
  362. package/src/components/ViewPackagePage/hooks/use-mobile.tsx +0 -19
  363. package/src/components/ViewPackagePage/hooks/use-toast.tsx +0 -69
  364. package/src/components/ViewPackagePage/utils/fuzz-search.ts +0 -121
  365. package/src/components/ViewPackagePage/utils/get-license-content.ts +0 -119
  366. package/src/components/ViewPackagePage/utils/is-hidden-file.ts +0 -55
  367. package/src/components/ViewPackagePage/utils/is-package-file-important.ts +0 -35
  368. package/src/components/ViewPackagePage/utils/is-within-directory.ts +0 -32
  369. package/src/components/dialogs/GitHubRepositorySelector.tsx +0 -300
  370. package/src/components/dialogs/confirm-delete-package-dialog.tsx +0 -74
  371. package/src/components/dialogs/confirm-discard-changes-dialog.tsx +0 -73
  372. package/src/components/dialogs/create-use-dialog.tsx +0 -40
  373. package/src/components/dialogs/edit-description-dialog.tsx +0 -96
  374. package/src/components/dialogs/edit-package-details-dialog.tsx +0 -474
  375. package/src/components/dialogs/files-dialog.tsx +0 -70
  376. package/src/components/dialogs/import-component-dialog.tsx +0 -32
  377. package/src/components/dialogs/import-package-dialog.tsx +0 -90
  378. package/src/components/dialogs/new-package-save-prompt-dialog.tsx +0 -199
  379. package/src/components/dialogs/package-visibility-settings-dialog.tsx +0 -93
  380. package/src/components/dialogs/pcb-download-dialog.tsx +0 -113
  381. package/src/components/dialogs/rename-package-dialog.tsx +0 -86
  382. package/src/components/dialogs/rename-snippet-dialog.tsx +0 -81
  383. package/src/components/dialogs/update-package-description-dialog.tsx +0 -96
  384. package/src/components/dialogs/view-ts-files-dialog.tsx +0 -664
  385. package/src/components/organization/OrganizationCard.tsx +0 -202
  386. package/src/components/organization/OrganizationCardSkeleton.tsx +0 -55
  387. package/src/components/organization/OrganizationHeader.tsx +0 -140
  388. package/src/components/organization/OrganizationMembers.tsx +0 -117
  389. package/src/components/package-port/CodeAndPreview.tsx +0 -253
  390. package/src/components/package-port/CodeEditor.tsx +0 -866
  391. package/src/components/package-port/CodeEditorHeader.tsx +0 -427
  392. package/src/components/package-port/EditorNav.tsx +0 -606
  393. package/src/components/package-port/GlobalFindReplace.tsx +0 -681
  394. package/src/components/package-port/QuickOpen.tsx +0 -241
  395. package/src/components/preview/BuildsList.tsx +0 -237
  396. package/src/components/preview/ConnectedPackagesList.tsx +0 -229
  397. package/src/components/preview/ConnectedRepoOverview.tsx +0 -588
  398. package/src/components/preview/PackageReleasesDashboard.tsx +0 -228
  399. package/src/components/preview/index.tsx +0 -54
  400. package/src/components/ui/accordion.tsx +0 -55
  401. package/src/components/ui/alert-dialog.tsx +0 -139
  402. package/src/components/ui/alert.tsx +0 -59
  403. package/src/components/ui/aspect-ratio.tsx +0 -5
  404. package/src/components/ui/avatar.tsx +0 -48
  405. package/src/components/ui/badge.tsx +0 -36
  406. package/src/components/ui/breadcrumb.tsx +0 -118
  407. package/src/components/ui/button.tsx +0 -58
  408. package/src/components/ui/calendar.tsx +0 -73
  409. package/src/components/ui/card.tsx +0 -76
  410. package/src/components/ui/carousel.tsx +0 -260
  411. package/src/components/ui/chart.tsx +0 -363
  412. package/src/components/ui/checkbox.tsx +0 -28
  413. package/src/components/ui/collapsible.tsx +0 -9
  414. package/src/components/ui/combobox.tsx +0 -178
  415. package/src/components/ui/command.tsx +0 -151
  416. package/src/components/ui/context-menu.tsx +0 -202
  417. package/src/components/ui/dialog.tsx +0 -120
  418. package/src/components/ui/drawer.tsx +0 -116
  419. package/src/components/ui/dropdown-menu.tsx +0 -203
  420. package/src/components/ui/form.tsx +0 -182
  421. package/src/components/ui/hover-card.tsx +0 -27
  422. package/src/components/ui/input.tsx +0 -25
  423. package/src/components/ui/label.tsx +0 -24
  424. package/src/components/ui/menubar.tsx +0 -238
  425. package/src/components/ui/navigation-menu.tsx +0 -129
  426. package/src/components/ui/pagination.tsx +0 -121
  427. package/src/components/ui/popover.tsx +0 -31
  428. package/src/components/ui/progress.tsx +0 -26
  429. package/src/components/ui/radio-group.tsx +0 -42
  430. package/src/components/ui/resizable.tsx +0 -43
  431. package/src/components/ui/role-badge.tsx +0 -27
  432. package/src/components/ui/scroll-area.tsx +0 -46
  433. package/src/components/ui/searchable-select.tsx +0 -94
  434. package/src/components/ui/select.tsx +0 -162
  435. package/src/components/ui/separator.tsx +0 -29
  436. package/src/components/ui/sheet.tsx +0 -141
  437. package/src/components/ui/skeleton.tsx +0 -18
  438. package/src/components/ui/slider.tsx +0 -26
  439. package/src/components/ui/sonner.tsx +0 -30
  440. package/src/components/ui/switch.tsx +0 -27
  441. package/src/components/ui/table.tsx +0 -120
  442. package/src/components/ui/tabs.tsx +0 -53
  443. package/src/components/ui/textarea.tsx +0 -24
  444. package/src/components/ui/toast.tsx +0 -128
  445. package/src/components/ui/toaster.tsx +0 -1
  446. package/src/components/ui/toggle-group.tsx +0 -59
  447. package/src/components/ui/toggle.tsx +0 -43
  448. package/src/components/ui/tooltip.tsx +0 -28
  449. package/src/components/ui/tree-view.tsx +0 -563
  450. package/src/entry-server.tsx +0 -12
  451. package/src/hooks/use-account-balance.ts +0 -25
  452. package/src/hooks/use-add-org-member-mutation.ts +0 -51
  453. package/src/hooks/use-ai-api.ts +0 -35
  454. package/src/hooks/use-ai-review.ts +0 -31
  455. package/src/hooks/use-axios.ts +0 -20
  456. package/src/hooks/use-code-completion-ai-api.ts +0 -11
  457. package/src/hooks/use-copy-to-clipboard.ts +0 -26
  458. package/src/hooks/use-create-datasheet.ts +0 -30
  459. package/src/hooks/use-create-org-mutation.ts +0 -38
  460. package/src/hooks/use-create-package-files-mutation.ts +0 -76
  461. package/src/hooks/use-create-package-mutation.ts +0 -54
  462. package/src/hooks/use-create-package-release-mutation.ts +0 -107
  463. package/src/hooks/use-create-release-dialog.ts +0 -160
  464. package/src/hooks/use-create-snippet-mutation.ts +0 -65
  465. package/src/hooks/use-current-package-id.ts +0 -16
  466. package/src/hooks/use-current-package-info.ts +0 -32
  467. package/src/hooks/use-current-package-release.ts +0 -48
  468. package/src/hooks/use-current-snippet-id.ts +0 -78
  469. package/src/hooks/use-current-snippet.ts +0 -24
  470. package/src/hooks/use-datasheet.ts +0 -18
  471. package/src/hooks/use-debounce.ts +0 -17
  472. package/src/hooks/use-delete-package.ts +0 -45
  473. package/src/hooks/use-download-zip.ts +0 -50
  474. package/src/hooks/use-fork-package-mutation.ts +0 -61
  475. package/src/hooks/use-global-store.ts +0 -36
  476. package/src/hooks/use-hotkey.ts +0 -116
  477. package/src/hooks/use-hydration.ts +0 -30
  478. package/src/hooks/use-is-using-fake-api.ts +0 -3
  479. package/src/hooks/use-jlcpcb-component-import.tsx +0 -164
  480. package/src/hooks/use-list-org-members.ts +0 -32
  481. package/src/hooks/use-list-user-orgs.ts +0 -25
  482. package/src/hooks/use-now.ts +0 -12
  483. package/src/hooks/use-org-by-github-handle.ts +0 -24
  484. package/src/hooks/use-org.ts +0 -24
  485. package/src/hooks/use-organization.ts +0 -42
  486. package/src/hooks/use-package-as-snippet.ts +0 -81
  487. package/src/hooks/use-package-builds.ts +0 -91
  488. package/src/hooks/use-package-by-package-id.ts +0 -24
  489. package/src/hooks/use-package-by-package-name.ts +0 -29
  490. package/src/hooks/use-package-details-form.ts +0 -146
  491. package/src/hooks/use-package-files.ts +0 -122
  492. package/src/hooks/use-package-release-by-id-or-version.ts +0 -45
  493. package/src/hooks/use-package-release-images.ts +0 -105
  494. package/src/hooks/use-package-release.ts +0 -124
  495. package/src/hooks/use-package-stars.ts +0 -163
  496. package/src/hooks/use-package.ts +0 -24
  497. package/src/hooks/use-packages-base-api-url.ts +0 -3
  498. package/src/hooks/use-preview-images.ts +0 -78
  499. package/src/hooks/use-rebuild-package-release-mutation.ts +0 -41
  500. package/src/hooks/use-remove-org-member-mutation.ts +0 -32
  501. package/src/hooks/use-request-ai-review-mutation.ts +0 -54
  502. package/src/hooks/use-run-tsx/eval-compiled-js.ts +0 -9
  503. package/src/hooks/use-shiki-highlighter.ts +0 -33
  504. package/src/hooks/use-sign-in.ts +0 -24
  505. package/src/hooks/use-snippet-by-name.ts +0 -25
  506. package/src/hooks/use-snippet.ts +0 -24
  507. package/src/hooks/use-toast.tsx +0 -90
  508. package/src/hooks/use-update-ai-description-mutation.ts +0 -42
  509. package/src/hooks/use-update-org-mutation.ts +0 -41
  510. package/src/hooks/use-url-params.ts +0 -31
  511. package/src/hooks/use-warn-user-on-page-change.ts +0 -90
  512. package/src/hooks/useFileManagement.ts +0 -602
  513. package/src/hooks/useForkPackageMutation.ts +0 -50
  514. package/src/hooks/useForkSnippetMutation.ts +0 -53
  515. package/src/hooks/useOptimizedPackageFilesLoader.ts +0 -136
  516. package/src/hooks/usePackageFilesLoader.ts +0 -58
  517. package/src/hooks/useUpdatePackageFilesMutation.ts +0 -131
  518. package/src/hooks/useUpdatePackageMutation.ts +0 -63
  519. package/src/index.css +0 -108
  520. package/src/lib/__tests__/constants.test.ts +0 -66
  521. package/src/lib/base64ToBytes.ts +0 -5
  522. package/src/lib/bytesToBase64.ts +0 -4
  523. package/src/lib/codemirror/basic-setup.ts +0 -67
  524. package/src/lib/constants.ts +0 -23
  525. package/src/lib/decodeUrlHashToFsMap.ts +0 -17
  526. package/src/lib/decodeUrlHashToText.ts +0 -15
  527. package/src/lib/defaultCodeForBlankCode.tsx +0 -7
  528. package/src/lib/download-fns/createBlobURL.ts +0 -4
  529. package/src/lib/download-fns/download-assembly-svg.ts +0 -12
  530. package/src/lib/download-fns/download-circuit-json-fn.ts +0 -12
  531. package/src/lib/download-fns/download-circuit-png.ts +0 -96
  532. package/src/lib/download-fns/download-dsn-file-fn.ts +0 -12
  533. package/src/lib/download-fns/download-fabrication-files.ts +0 -233
  534. package/src/lib/download-fns/download-gltf-from-circuit-json.ts +0 -44
  535. package/src/lib/download-fns/download-gltf.ts +0 -43
  536. package/src/lib/download-fns/download-kicad-files.ts +0 -38
  537. package/src/lib/download-fns/download-pcb-svg.ts +0 -35
  538. package/src/lib/download-fns/download-png-utils.ts +0 -31
  539. package/src/lib/download-fns/download-readable-netlist.ts +0 -12
  540. package/src/lib/download-fns/download-schematic-svg.ts +0 -12
  541. package/src/lib/download-fns/download-simple-route-json.ts +0 -17
  542. package/src/lib/download-fns/download-spice-file.ts +0 -13
  543. package/src/lib/download-fns/download-step.ts +0 -12
  544. package/src/lib/encodeFsMapToUrlHash.ts +0 -13
  545. package/src/lib/encodeTextToUrlHash.ts +0 -17
  546. package/src/lib/get-snippet-template.ts +0 -26
  547. package/src/lib/getLicenseFromLicenseContent.ts +0 -67
  548. package/src/lib/handleManualEditsImport.tsx +0 -65
  549. package/src/lib/handleManualEditsImportWithSupportForMultipleFiles.ts +0 -67
  550. package/src/lib/normalize-svg-for-tile.ts +0 -50
  551. package/src/lib/populate-query-cache-with-ssr-data.ts +0 -53
  552. package/src/lib/posthog.ts +0 -17
  553. package/src/lib/react-query-api-failure-tracking.ts +0 -148
  554. package/src/lib/sentry.ts +0 -14
  555. package/src/lib/templates/blank-3d-model-template.ts +0 -12
  556. package/src/lib/templates/blank-circuit-board-template.ts +0 -20
  557. package/src/lib/templates/blank-footprint-template.ts +0 -29
  558. package/src/lib/templates/blank-package-template.ts +0 -21
  559. package/src/lib/templates/blinking-led-board-template.ts +0 -64
  560. package/src/lib/templates/usb-c-led-flashlight-template.ts +0 -22
  561. package/src/lib/ts-lib-cache.ts +0 -162
  562. package/src/lib/types.ts +0 -31
  563. package/src/lib/utils/checkIfManualEditsImported.ts +0 -20
  564. package/src/lib/utils/findTargetFile.ts +0 -97
  565. package/src/lib/utils/formatTimeAgo.ts +0 -10
  566. package/src/lib/utils/getPackagePreviewImageUrl.ts +0 -15
  567. package/src/lib/utils/index.ts +0 -6
  568. package/src/lib/utils/isComponentExported.ts +0 -10
  569. package/src/lib/utils/isUuid.ts +0 -5
  570. package/src/lib/utils/isValidFileName.ts +0 -17
  571. package/src/lib/utils/load-prettier.ts +0 -23
  572. package/src/lib/utils/member-role.tsx +0 -61
  573. package/src/lib/utils/package-utils.ts +0 -7
  574. package/src/lib/utils/parseJsonOrNull.ts +0 -8
  575. package/src/lib/utils/pcbManualEditEventHandler.ts +0 -156
  576. package/src/lib/utils/resolveRelativePath.ts +0 -40
  577. package/src/lib/utils/timeAgo.ts +0 -20
  578. package/src/lib/utils/toastManualEditConflicts.tsx +0 -39
  579. package/src/lib/utils/transformFilesToTreeData.tsx +0 -195
  580. package/src/main.tsx +0 -15
  581. package/src/pages/404.tsx +0 -23
  582. package/src/pages/authorize.tsx +0 -208
  583. package/src/pages/create-organization.tsx +0 -169
  584. package/src/pages/dashboard.tsx +0 -254
  585. package/src/pages/datasheet.tsx +0 -198
  586. package/src/pages/datasheets.tsx +0 -148
  587. package/src/pages/dev-login.tsx +0 -68
  588. package/src/pages/editor.tsx +0 -54
  589. package/src/pages/landing.tsx +0 -237
  590. package/src/pages/latest.tsx +0 -145
  591. package/src/pages/my-orders.tsx +0 -54
  592. package/src/pages/organization-profile.tsx +0 -197
  593. package/src/pages/organization-settings.tsx +0 -571
  594. package/src/pages/package-editor.tsx +0 -60
  595. package/src/pages/preview-release.tsx +0 -209
  596. package/src/pages/quickstart.tsx +0 -258
  597. package/src/pages/release-builds.tsx +0 -99
  598. package/src/pages/release-detail.tsx +0 -211
  599. package/src/pages/releases.tsx +0 -55
  600. package/src/pages/search.tsx +0 -288
  601. package/src/pages/settings-redirect.tsx +0 -44
  602. package/src/pages/trending.tsx +0 -201
  603. package/src/pages/user-profile.tsx +0 -330
  604. package/src/pages/user-settings.tsx +0 -161
  605. package/src/pages/view-package.tsx +0 -90
  606. package/src/types/package.ts +0 -4
  607. package/src/vite-env.d.ts +0 -1
  608. package/tailwind.config.js +0 -47
  609. package/tsconfig.json +0 -30
  610. package/vercel.json +0 -50
  611. package/vite.config.ts +0 -236
  612. package/winterspec.config.ts +0 -6
@@ -1,292 +0,0 @@
1
- import { getTestServer } from "bun-tests/fake-snippets-api/fixtures/get-test-server"
2
- import { test, expect } from "bun:test"
3
- import defaultAxios from "redaxios"
4
-
5
- export const createTestPackage = async (axios: typeof defaultAxios) => {
6
- const packageRes = await axios.post("/api/packages/create", {
7
- json: {
8
- name: "test-package",
9
- description: "Test package for builds",
10
- },
11
- })
12
- return packageRes.data
13
- }
14
-
15
- export const createTestPackageRelease = async (
16
- axios: typeof defaultAxios,
17
- packageId: string,
18
- ) => {
19
- const releaseRes = await axios.post("/api/package_releases/create", {
20
- package_id: packageId,
21
- version: "1.0.0",
22
- is_latest: true,
23
- })
24
- return releaseRes.data
25
- }
26
-
27
- test("GET /api/package_builds/list - requires package_id or package_release_id", async () => {
28
- const { jane_axios } = await getTestServer()
29
- const res = await jane_axios.get("/api/package_builds/list", {
30
- validateStatus: () => true,
31
- })
32
- expect(res.status).toBe(400)
33
- })
34
-
35
- test("GET /api/package_builds/list - filters by package_id", async () => {
36
- const { jane_axios } = await getTestServer()
37
- const packageRes = await createTestPackage(jane_axios)
38
- await createTestPackageRelease(jane_axios, packageRes.package.package_id)
39
- const res = await jane_axios.get(
40
- `/api/package_builds/list?package_id=${packageRes.package.package_id}`,
41
- )
42
- expect(res.status).toBe(200)
43
- expect(Array.isArray(res.data.package_builds)).toBe(true)
44
- })
45
-
46
- test("GET /api/package_builds/list - filters by package_release_id", async () => {
47
- const { jane_axios } = await getTestServer()
48
- const packageRes = await createTestPackage(jane_axios)
49
- const { package_release } = await createTestPackageRelease(
50
- jane_axios,
51
- packageRes.package.package_id,
52
- )
53
- const res = await jane_axios.get(
54
- `/api/package_builds/list?package_release_id=${package_release.package_release_id}`,
55
- )
56
- expect(res.status).toBe(200)
57
- expect(Array.isArray(res.data.package_builds)).toBe(true)
58
- })
59
-
60
- test("GET /api/package_builds/list - returns 404 for non-existent package", async () => {
61
- const { jane_axios } = await getTestServer()
62
- const res = await jane_axios.get(
63
- "/api/package_builds/list?package_id=non-existent-package",
64
- { validateStatus: () => true },
65
- )
66
- expect(res.status).toBe(404)
67
- expect(res.data.error.error_code).toBe("package_not_found")
68
- })
69
-
70
- test("GET /api/package_builds/list - returns 404 for non-existent package release", async () => {
71
- const { jane_axios } = await getTestServer()
72
- const res = await jane_axios.get(
73
- "/api/package_builds/list?package_release_id=non-existent-package",
74
- { validateStatus: () => true },
75
- )
76
- expect(res.status).toBe(404)
77
- expect(res.data.error.error_code).toBe("package_release_not_found")
78
- })
79
-
80
- test("GET /api/package_builds/list - returns 403 for unauthorized package access", async () => {
81
- const { jane_axios, axios } = await getTestServer()
82
- const packageData = await createTestPackage(jane_axios)
83
- const res = await axios.get(
84
- `/api/package_builds/list?package_id=${packageData.package.package_id}`,
85
- { validateStatus: () => true },
86
- )
87
- expect(res.status).toBe(403)
88
- })
89
-
90
- test("GET /api/package_builds/list - returns created builds", async () => {
91
- const { axios, db } = await getTestServer()
92
- const { package: pkg } = await createTestPackage(axios)
93
- const { package_release } = await createTestPackageRelease(
94
- axios,
95
- pkg.package_id,
96
- )
97
-
98
- db.addPackageBuild({
99
- package_release_id: package_release.package_release_id,
100
- created_at: new Date(Date.now() - 1000 * 60 * 30).toISOString(),
101
- transpilation_in_progress: false,
102
- transpilation_started_at: new Date(
103
- Date.now() - 1000 * 60 * 35,
104
- ).toISOString(),
105
- transpilation_completed_at: new Date(
106
- Date.now() - 1000 * 60 * 32,
107
- ).toISOString(),
108
- transpilation_logs: [],
109
- transpilation_error: null,
110
- circuit_json_build_in_progress: false,
111
- circuit_json_build_started_at: new Date(
112
- Date.now() - 1000 * 60 * 32,
113
- ).toISOString(),
114
- circuit_json_build_completed_at: new Date(
115
- Date.now() - 1000 * 60 * 30,
116
- ).toISOString(),
117
- circuit_json_build_logs: [],
118
- circuit_json_build_error: null,
119
- build_in_progress: false,
120
- build_started_at: new Date(Date.now() - 1000 * 60 * 30).toISOString(),
121
- build_completed_at: new Date(Date.now() - 1000 * 60 * 25).toISOString(),
122
- build_error: null,
123
- build_error_last_updated_at: new Date(
124
- Date.now() - 1000 * 60 * 25,
125
- ).toISOString(),
126
- build_logs: null,
127
- preview_url: "https://preview.tscircuit.com/pb_1a2b3c4d",
128
- })
129
-
130
- const res = await axios.get(
131
- `/api/package_builds/list?package_id=${pkg.package_id}`,
132
- )
133
- expect(res.status).toBe(200)
134
- expect(res.data.package_builds.length).toBe(1)
135
- })
136
-
137
- test("GET /api/package_builds/list - sorts builds by created_at descending", async () => {
138
- const { axios, db } = await getTestServer()
139
- const { package: pkg } = await createTestPackage(axios)
140
- const { package_release } = await createTestPackageRelease(
141
- axios,
142
- pkg.package_id,
143
- )
144
-
145
- db.addPackageBuild({
146
- package_release_id: package_release.package_release_id,
147
- created_at: new Date(Date.now() - 1000 * 60 * 30).toISOString(),
148
- transpilation_in_progress: false,
149
- transpilation_started_at: new Date(
150
- Date.now() - 1000 * 60 * 35,
151
- ).toISOString(),
152
- transpilation_completed_at: new Date(
153
- Date.now() - 1000 * 60 * 32,
154
- ).toISOString(),
155
- transpilation_logs: [],
156
- transpilation_error: null,
157
- circuit_json_build_in_progress: false,
158
- circuit_json_build_started_at: new Date(
159
- Date.now() - 1000 * 60 * 32,
160
- ).toISOString(),
161
- circuit_json_build_completed_at: new Date(
162
- Date.now() - 1000 * 60 * 30,
163
- ).toISOString(),
164
- circuit_json_build_logs: [],
165
- circuit_json_build_error: null,
166
- build_in_progress: false,
167
- build_started_at: new Date(Date.now() - 1000 * 60 * 30).toISOString(),
168
- build_completed_at: new Date(Date.now() - 1000 * 60 * 25).toISOString(),
169
- build_error: null,
170
- build_error_last_updated_at: new Date(
171
- Date.now() - 1000 * 60 * 25,
172
- ).toISOString(),
173
- build_logs: null,
174
- preview_url: "https://preview.tscircuit.com/pb_1",
175
- })
176
-
177
- db.addPackageBuild({
178
- package_release_id: package_release.package_release_id,
179
- created_at: new Date(Date.now() - 1000 * 60 * 15).toISOString(),
180
- transpilation_in_progress: false,
181
- transpilation_started_at: new Date(
182
- Date.now() - 1000 * 60 * 20,
183
- ).toISOString(),
184
- transpilation_completed_at: new Date(
185
- Date.now() - 1000 * 60 * 17,
186
- ).toISOString(),
187
- transpilation_logs: [],
188
- transpilation_error: null,
189
- circuit_json_build_in_progress: false,
190
- circuit_json_build_started_at: new Date(
191
- Date.now() - 1000 * 60 * 17,
192
- ).toISOString(),
193
- circuit_json_build_completed_at: new Date(
194
- Date.now() - 1000 * 60 * 15,
195
- ).toISOString(),
196
- circuit_json_build_logs: [],
197
- circuit_json_build_error: null,
198
- build_in_progress: false,
199
- build_started_at: new Date(Date.now() - 1000 * 60 * 15).toISOString(),
200
- build_completed_at: new Date(Date.now() - 1000 * 60 * 10).toISOString(),
201
- build_error: null,
202
- build_error_last_updated_at: new Date(
203
- Date.now() - 1000 * 60 * 10,
204
- ).toISOString(),
205
- build_logs: null,
206
- preview_url: "https://preview.tscircuit.com/pb_2",
207
- })
208
-
209
- const res = await axios.get(
210
- `/api/package_builds/list?package_id=${pkg.package_id}`,
211
- )
212
- expect(res.status).toBe(200)
213
- expect(Array.isArray(res.data.package_builds)).toBe(true)
214
- expect(res.data.package_builds.length).toBe(2)
215
-
216
- const builds = res.data.package_builds
217
- for (let i = 1; i < builds.length; i++) {
218
- const prevBuild = new Date(builds[i - 1].created_at)
219
- const currentBuild = new Date(builds[i].created_at)
220
- expect(prevBuild.getTime()).toBeGreaterThanOrEqual(currentBuild.getTime())
221
- }
222
- })
223
-
224
- test("GET /api/package_builds/list - handles both package_id and package_release_id (package_release_id takes precedence)", async () => {
225
- const { jane_axios } = await getTestServer()
226
- const packageRes = await createTestPackage(jane_axios)
227
- const { package_release } = await createTestPackageRelease(
228
- jane_axios,
229
- packageRes.package.package_id,
230
- )
231
- const res = await jane_axios.get(
232
- `/api/package_builds/list?package_id=${packageRes.package.package_id}&package_release_id=${package_release.package_release_id}`,
233
- )
234
- expect(res.status).toBe(200)
235
- expect(Array.isArray(res.data.package_builds)).toBe(true)
236
- })
237
-
238
- test("GET /api/package_builds/list - returns created builds with logs or not", async () => {
239
- const { axios, db } = await getTestServer()
240
- const { package: pkg } = await createTestPackage(axios)
241
- const { package_release } = await createTestPackageRelease(
242
- axios,
243
- pkg.package_id,
244
- )
245
-
246
- const buildLogs = ["Started build", "Building components", "Build completed"]
247
- const transpilationLogs = ["Transpiling files", "Transpilation done"]
248
- const circuitJsonBuildLogs = ["Generating circuit JSON", "Circuit JSON ready"]
249
-
250
- await db.addPackageBuild({
251
- package_release_id: package_release.package_release_id,
252
- created_at: new Date(Date.now() - 1000 * 60 * 30).toISOString(),
253
- transpilation_in_progress: false,
254
- transpilation_started_at: new Date(
255
- Date.now() - 1000 * 60 * 35,
256
- ).toISOString(),
257
- transpilation_completed_at: new Date(
258
- Date.now() - 1000 * 60 * 32,
259
- ).toISOString(),
260
- transpilation_logs: transpilationLogs,
261
- transpilation_error: null,
262
- circuit_json_build_in_progress: false,
263
- circuit_json_build_started_at: new Date(
264
- Date.now() - 1000 * 60 * 32,
265
- ).toISOString(),
266
- circuit_json_build_completed_at: new Date(
267
- Date.now() - 1000 * 60 * 30,
268
- ).toISOString(),
269
- circuit_json_build_logs: circuitJsonBuildLogs,
270
- circuit_json_build_error: null,
271
- build_in_progress: false,
272
- build_started_at: new Date(Date.now() - 1000 * 60 * 30).toISOString(),
273
- build_completed_at: new Date(Date.now() - 1000 * 60 * 25).toISOString(),
274
- build_error: null,
275
- build_error_last_updated_at: new Date(
276
- Date.now() - 1000 * 60 * 25,
277
- ).toISOString(),
278
- build_logs: buildLogs.join(" "),
279
- preview_url: "https://preview.tscircuit.com/pb_1a2b3c4d",
280
- })
281
-
282
- const resWithoutLogs = await axios.get(
283
- `/api/package_builds/list?package_id=${pkg.package_id}`,
284
- )
285
- expect(resWithoutLogs.status).toBe(200)
286
- expect(resWithoutLogs.data.package_builds.length).toBe(1)
287
- expect(resWithoutLogs.data.package_builds[0].build_logs).toBeNull()
288
- expect(resWithoutLogs.data.package_builds[0].transpilation_logs).toEqual([])
289
- expect(resWithoutLogs.data.package_builds[0].circuit_json_build_logs).toEqual(
290
- [],
291
- )
292
- })
@@ -1,320 +0,0 @@
1
- import { getTestServer } from "bun-tests/fake-snippets-api/fixtures/get-test-server"
2
- import { expect, test } from "bun:test"
3
-
4
- test("create package file with content_text", async () => {
5
- const { axios } = await getTestServer()
6
-
7
- // First create a package
8
- const packageResponse = await axios.post("/api/packages/create", {
9
- name: "testuser/package-files-create",
10
- description: "A test package for creating files",
11
- })
12
- expect(packageResponse.status).toBe(200)
13
- const createdPackage = packageResponse.data.package
14
-
15
- // Create a package release
16
- const releaseResponse = await axios.post("/api/package_releases/create", {
17
- package_id: createdPackage.package_id,
18
- version: "1.0.0",
19
- is_latest: true,
20
- })
21
- expect(releaseResponse.status).toBe(200)
22
- const createdRelease = releaseResponse.data.package_release
23
-
24
- // Create a package file
25
- const fileContent = "console.log('Hello, world!');"
26
- const filePath = "/index.js"
27
- const createResponse = await axios.post("/api/package_files/create", {
28
- package_release_id: createdRelease.package_release_id,
29
- file_path: filePath,
30
- content_text: fileContent,
31
- })
32
-
33
- expect(createResponse.status).toBe(200)
34
- const responseBody = createResponse.data
35
- expect(responseBody.ok).toBe(true)
36
- expect(responseBody.package_file).toBeDefined()
37
- expect(responseBody.package_file.package_release_id).toBe(
38
- createdRelease.package_release_id,
39
- )
40
- expect(responseBody.package_file.file_path).toBe(filePath)
41
-
42
- // Verify the file can be retrieved using the get endpoint
43
- const getResponse = await axios.get("/api/package_files/get", {
44
- params: { package_file_id: responseBody.package_file.package_file_id },
45
- })
46
- expect(getResponse.status).toBe(200)
47
- expect(getResponse.data.package_file.file_path).toBe(filePath)
48
- // content_text is no longer returned by the get endpoint
49
- })
50
-
51
- test("create package file with content_base64", async () => {
52
- const { axios } = await getTestServer()
53
-
54
- // First create a package
55
- const packageResponse = await axios.post("/api/packages/create", {
56
- name: "testuser/package-files-create-base64",
57
- description: "A test package for creating files with base64",
58
- })
59
- expect(packageResponse.status).toBe(200)
60
- const createdPackage = packageResponse.data.package
61
-
62
- // Create a package release
63
- const releaseResponse = await axios.post("/api/package_releases/create", {
64
- package_id: createdPackage.package_id,
65
- version: "1.0.0",
66
- is_latest: true,
67
- })
68
- expect(releaseResponse.status).toBe(200)
69
- const createdRelease = releaseResponse.data.package_release
70
-
71
- // Create a package file with base64 content
72
- const fileContent = "export const sum = (a, b) => a + b;"
73
- const base64Content = Buffer.from(fileContent).toString("base64")
74
- const filePath = "/utils.js"
75
- const createResponse = await axios.post("/api/package_files/create", {
76
- package_release_id: createdRelease.package_release_id,
77
- file_path: filePath,
78
- content_base64: base64Content,
79
- })
80
-
81
- expect(createResponse.status).toBe(200)
82
- const responseBody = createResponse.data
83
- expect(responseBody.ok).toBe(true)
84
- expect(responseBody.package_file).toBeDefined()
85
- expect(responseBody.package_file.file_path).toBe(filePath)
86
- // Content is no longer returned from the create endpoint
87
-
88
- // Verify the file can be retrieved using the get endpoint with package_name_with_version
89
- const getResponse = await axios.get("/api/package_files/get", {
90
- params: { package_file_id: responseBody.package_file.package_file_id },
91
- })
92
- expect(getResponse.status).toBe(200)
93
- // content_text is no longer returned by the get endpoint
94
- })
95
-
96
- test("create package file using package_name_with_version", async () => {
97
- const { axios } = await getTestServer()
98
-
99
- // First create a package
100
- const packageName = "testuser/package-files-create-by-name"
101
- const version = "2.0.0"
102
- const packageResponse = await axios.post("/api/packages/create", {
103
- name: packageName,
104
- description: "A test package for creating files by name",
105
- })
106
- expect(packageResponse.status).toBe(200)
107
- const createdPackage = packageResponse.data.package
108
-
109
- // Create a package release
110
- const releaseResponse = await axios.post("/api/package_releases/create", {
111
- package_id: createdPackage.package_id,
112
- version,
113
- is_latest: true,
114
- })
115
- expect(releaseResponse.status).toBe(200)
116
-
117
- // Create a package file using package_name_with_version
118
- const fileContent = "# README\nThis is a test package."
119
- const filePath = "/README.md"
120
- const createResponse = await axios.post("/api/package_files/create", {
121
- package_name_with_version: `${packageName}@${version}`,
122
- file_path: filePath,
123
- content_text: fileContent,
124
- })
125
-
126
- expect(createResponse.status).toBe(200)
127
- const responseBody = createResponse.data
128
- expect(responseBody.ok).toBe(true)
129
- expect(responseBody.package_file).toBeDefined()
130
- expect(responseBody.package_file.file_path).toBe(filePath)
131
- // Content is no longer returned from the create endpoint
132
-
133
- // Verify the file can be retrieved using the list endpoint
134
- const listResponse = await axios.get("/api/package_files/list", {
135
- params: {
136
- package_name_with_version: `${packageName}@${version}`,
137
- },
138
- })
139
- expect(listResponse.status).toBe(200)
140
- expect(listResponse.data.ok).toBe(true)
141
- expect(listResponse.data.package_files.length).toBeGreaterThan(0)
142
- const foundFile = listResponse.data.package_files.find(
143
- (file: any) => file.file_path === filePath,
144
- )
145
- expect(foundFile).toBeDefined()
146
- // content_text is no longer returned in the response
147
- })
148
-
149
- test("create package file - 404 for non-existent package release", async () => {
150
- const { axios } = await getTestServer()
151
-
152
- try {
153
- await axios.post("/api/package_files/create", {
154
- package_release_id: "non-existent-id",
155
- file_path: "/test.js",
156
- content_text: "console.log('test');",
157
- })
158
- throw new Error("Expected request to fail")
159
- } catch (error: any) {
160
- expect(error.status).toBe(404)
161
- expect(error.data.error.error_code).toBe("package_release_not_found")
162
- expect(error.data.error.message).toBe("Package release not found")
163
- }
164
- })
165
-
166
- test("create package file - 404 for non-existent package", async () => {
167
- const { axios } = await getTestServer()
168
-
169
- try {
170
- await axios.post("/api/package_files/create", {
171
- package_name_with_version: "non-existent-package@1.0.0",
172
- file_path: "/test.js",
173
- content_text: "console.log('test');",
174
- })
175
- throw new Error("Expected request to fail")
176
- } catch (error: any) {
177
- expect(error.status).toBe(404)
178
- expect(error.data.error.error_code).toBe("package_release_not_found")
179
- expect(error.data.error.message).toBe("Package release not found")
180
- }
181
- })
182
-
183
- test("create package file - 400 for missing content", async () => {
184
- const { axios } = await getTestServer()
185
-
186
- // First create a package and release
187
- const packageResponse = await axios.post("/api/packages/create", {
188
- name: "testuser/package-files-create-error",
189
- description: "A test package for error cases",
190
- })
191
- const createdPackage = packageResponse.data.package
192
-
193
- const releaseResponse = await axios.post("/api/package_releases/create", {
194
- package_id: createdPackage.package_id,
195
- version: "1.0.0",
196
- })
197
- const createdRelease = releaseResponse.data.package_release
198
-
199
- try {
200
- await axios.post("/api/package_files/create", {
201
- package_release_id: createdRelease.package_release_id,
202
- file_path: "/test.js",
203
- // Missing both content_text and content_base64
204
- })
205
- throw new Error("Expected request to fail")
206
- } catch (error: any) {
207
- expect(error.status).toBe(400)
208
- expect(error.data.message).toContain("content")
209
- }
210
- })
211
-
212
- test("create package file - 400 for both content_text and content_base64", async () => {
213
- const { axios } = await getTestServer()
214
-
215
- // First create a package and release
216
- const packageResponse = await axios.post("/api/packages/create", {
217
- name: "testuser/package-files-create-error-2",
218
- description: "Another test package for error cases",
219
- })
220
- const createdPackage = packageResponse.data.package
221
-
222
- const releaseResponse = await axios.post("/api/package_releases/create", {
223
- package_id: createdPackage.package_id,
224
- version: "1.0.0",
225
- })
226
- const createdRelease = releaseResponse.data.package_release
227
-
228
- try {
229
- await axios.post("/api/package_files/create", {
230
- package_release_id: createdRelease.package_release_id,
231
- file_path: "/test.js",
232
- content_text: "console.log('test');",
233
- content_base64: "Y29uc29sZS5sb2coJ3Rlc3QnKTs=", // Both content_text and content_base64
234
- })
235
- throw new Error("Expected request to fail")
236
- } catch (error: any) {
237
- expect(error.status).toBe(400)
238
- expect(error.data.message).toContain("content")
239
- }
240
- })
241
-
242
- test("create release tarball package file", async () => {
243
- const { axios } = await getTestServer()
244
-
245
- // First create a package
246
- const packageResponse = await axios.post("/api/packages/create", {
247
- name: "testuser/package-files-create-tarball",
248
- description: "A test package for creating tarball files",
249
- })
250
- expect(packageResponse.status).toBe(200)
251
- const createdPackage = packageResponse.data.package
252
-
253
- // Create a package release
254
- const releaseResponse = await axios.post("/api/package_releases/create", {
255
- package_id: createdPackage.package_id,
256
- version: "1.0.0",
257
- is_latest: true,
258
- })
259
- expect(releaseResponse.status).toBe(200)
260
- const createdRelease = releaseResponse.data.package_release
261
-
262
- // Create a release tarball package file
263
- const npmPackOutput = { filename: "test-1.0.0.tgz", size: 1024 }
264
- const createResponse = await axios.post("/api/package_files/create", {
265
- package_release_id: createdRelease.package_release_id,
266
- file_path: "/test-1.0.0.tgz",
267
- content_text: "tarball content",
268
- is_release_tarball: true,
269
- npm_pack_output: npmPackOutput,
270
- })
271
-
272
- expect(createResponse.status).toBe(200)
273
- const responseBody = createResponse.data
274
- expect(responseBody.ok).toBe(true)
275
- expect(responseBody.package_file).toBeDefined()
276
- expect(responseBody.package_file.package_release_id).toBe(
277
- createdRelease.package_release_id,
278
- )
279
- expect(responseBody.package_file.file_path).toBe("/test-1.0.0.tgz")
280
- expect(responseBody.package_file.content_text).toBe("tarball content")
281
-
282
- // Note: The fake API implementation might not return these fields in the response
283
- // so we're not asserting them
284
- // expect(responseBody.package_file.is_release_tarball).toBe(true)
285
- // expect(responseBody.package_file.npm_pack_output).toEqual(npmPackOutput)
286
- })
287
-
288
- test("create package file - 400 for release tarball without npm_pack_output", async () => {
289
- const { axios } = await getTestServer()
290
-
291
- // First create a package and release
292
- const packageResponse = await axios.post("/api/packages/create", {
293
- name: "testuser/package-files-create-tarball-error",
294
- description: "Test package for tarball error cases",
295
- })
296
- const createdPackage = packageResponse.data.package
297
-
298
- const releaseResponse = await axios.post("/api/package_releases/create", {
299
- package_id: createdPackage.package_id,
300
- version: "1.0.0",
301
- })
302
- const createdRelease = releaseResponse.data.package_release
303
-
304
- try {
305
- await axios.post("/api/package_files/create", {
306
- package_release_id: createdRelease.package_release_id,
307
- file_path: "/test-1.0.0.tgz",
308
- content_text: "tarball content",
309
- is_release_tarball: true,
310
- // Missing npm_pack_output
311
- })
312
- throw new Error("Expected request to fail")
313
- } catch (error: any) {
314
- expect(error.status).toBe(400)
315
- expect(error.data.error.error_code).toBe("missing_options")
316
- expect(error.data.error.message).toBe(
317
- "npm_pack_output is required for release tarballs",
318
- )
319
- }
320
- })