@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,67 +0,0 @@
1
- import { getTestServer } from "bun-tests/fake-snippets-api/fixtures/get-test-server"
2
- import { test, expect } from "bun:test"
3
-
4
- test("create package", async () => {
5
- const { axios } = await getTestServer()
6
-
7
- const response = await axios.post("/api/packages/create", {
8
- name: "testuser/TestPackage",
9
- description: "Test Description",
10
- })
11
-
12
- expect(response.status).toBe(200)
13
- expect(response.data.package.name).toBe("testuser/TestPackage")
14
- expect(response.data.package.unscoped_name).toBe("TestPackage")
15
- expect(response.data.package.description).toBe("Test Description")
16
- expect(response.data.package.owner_github_username).toBe("testuser")
17
- expect(response.data.package.description).toBe("Test Description")
18
- expect(response.data.package.latest_package_release_id).toBeDefined()
19
- expect(response.data.package.is_private).toBe(false)
20
- expect(response.data.package.is_public).toBe(true)
21
- expect(response.data.package.is_unlisted).toBe(false)
22
- })
23
-
24
- test("create package with private flag", async () => {
25
- const { axios } = await getTestServer()
26
-
27
- const response = await axios.post("/api/packages/create", {
28
- name: "testuser/TestPackage",
29
- description: "Test Description",
30
- is_private: true,
31
- })
32
-
33
- expect(response.status).toBe(200)
34
- expect(response.data.package.is_private).toBe(true)
35
- })
36
-
37
- test("create package under org", async () => {
38
- const { jane_axios, seed } = await getTestServer()
39
-
40
- const response = await jane_axios.post("/api/packages/create", {
41
- is_private: true,
42
- org_id: seed.organization.org_id,
43
- description: "Test Description",
44
- })
45
-
46
- expect(response.status).toBe(200)
47
- expect(response.data.package.owner_org_id).toBe(seed.organization.org_id)
48
- expect(response.data.package.owner_github_username).toBe("jane")
49
- expect(response.data.package.is_private).toBe(true)
50
- expect(response.data.package.description).toBe("Test Description")
51
- })
52
-
53
- test("create package under non-existent org", async () => {
54
- const { jane_axios, seed } = await getTestServer()
55
-
56
- const response = await jane_axios.post(
57
- "/api/packages/create",
58
- {
59
- org_id: "not-existent-org-id",
60
- },
61
- {
62
- validateStatus: () => true,
63
- },
64
- )
65
- expect(response.status).toBe(404)
66
- expect(response.data.error.error_code).toBe("org_not_found")
67
- })
@@ -1,74 +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("delete package", async () => {
5
- const { axios, db } = await getTestServer()
6
-
7
- // Add a test package
8
- const createdPackage = await axios.post("/api/packages/create", {
9
- name: "testuser/test-package",
10
- description: "Test Description",
11
- })
12
-
13
- // Delete the package
14
- const response = await axios.post("/api/packages/delete", {
15
- package_id: createdPackage.data.package.package_id,
16
- })
17
-
18
- expect(response.status).toBe(200)
19
- expect(response.data.ok).toBe(true)
20
-
21
- // Verify the package was deleted from the database
22
- const deletedPackage = db.getPackageById(
23
- createdPackage.data.package.package_id,
24
- )
25
- expect(deletedPackage).toBeUndefined()
26
-
27
- // List all the packages and verify the deleted package is not in the list
28
- const listResponse = await axios.get("/api/packages/list")
29
-
30
- expect(listResponse.status).toBe(200)
31
- expect(listResponse.data.packages).toHaveLength(0)
32
- })
33
-
34
- test("delete non-existent package", async () => {
35
- const { axios } = await getTestServer()
36
-
37
- try {
38
- await axios.post("/api/packages/delete", {
39
- package_id: "non-existent-id",
40
- })
41
- // If the request doesn't throw an error, fail the test
42
- expect(true).toBe(false)
43
- } catch (error: any) {
44
- expect(error.status).toBe(404)
45
- expect(error.data.error.message).toBe("Package not found")
46
- }
47
- })
48
-
49
- test("delete package without permission", async () => {
50
- const { axios, db } = await getTestServer()
51
-
52
- // Add a test package with a different owner org
53
- const pkg = {
54
- name: "test-package",
55
- owner_org_id: "different-org", // Different from the personal_org_id in auth
56
- created_at: "2023-01-01T00:00:00Z",
57
- updated_at: "2023-01-01T00:00:00Z",
58
- description: "Test Description",
59
- }
60
- const addedPackage: any = db.addPackage(pkg as any)
61
-
62
- try {
63
- await axios.post("/api/packages/delete", {
64
- package_id: addedPackage.package_id,
65
- })
66
- // If the request doesn't throw an error, fail the test
67
- expect(true).toBe(false)
68
- } catch (error: any) {
69
- expect(error.status).toBe(403)
70
- expect(error.data.error.message).toBe(
71
- "You don't have permission to delete this package",
72
- )
73
- }
74
- })
@@ -1,132 +0,0 @@
1
- import { getTestServer } from "bun-tests/fake-snippets-api/fixtures/get-test-server"
2
- import { test, expect } from "bun:test"
3
-
4
- test("POST /packages/fork - successful fork using package_id", async () => {
5
- const { axios, jane_axios } = await getTestServer()
6
-
7
- // user creates a package with files
8
- const sourcePackage = await axios
9
- .post("/api/packages/create", {
10
- name: "testuser/test-package-for-fork",
11
- description: "A package to be forked",
12
- })
13
- .then((r: any) => r.data.package)
14
-
15
- // user creates a release
16
- const sourceRelease = await axios
17
- .post("/api/package_releases/create", {
18
- package_id: sourcePackage.package_id,
19
- version: "1.0.0",
20
- })
21
- .then((r: any) => r.data.package_release)
22
-
23
- // user creates a file
24
- await axios.post("/api/package_files/create", {
25
- package_release_id: sourceRelease.package_release_id,
26
- file_path: "index.tsx",
27
- content_text: "console.log('Hello from original package');",
28
- })
29
-
30
- // Jane forks the package
31
- const forkedPackageResponse = await jane_axios.post("/api/packages/fork", {
32
- package_id: sourcePackage.package_id,
33
- is_private: false,
34
- })
35
-
36
- const forkedPackage = forkedPackageResponse.data.package
37
-
38
- // Verify fork was created successfully
39
- expect(forkedPackage.name).toBe(`jane/${sourcePackage.unscoped_name}`)
40
- expect(forkedPackage.description).toBe(sourcePackage.description)
41
- expect(forkedPackage.is_private).toBe(false)
42
-
43
- // List files from the forked package
44
- const packageFilesResponse = await jane_axios.get("/api/package_files/list", {
45
- params: {
46
- package_name: forkedPackage.name,
47
- use_latest_version: true,
48
- },
49
- })
50
-
51
- const package_files = packageFilesResponse.data.package_files
52
-
53
- expect(package_files.length).toBe(1)
54
- expect(package_files[0].file_path).toBe("index.tsx")
55
- })
56
-
57
- test("POST /packages/fork - successful fork using package_name", async () => {
58
- const { axios, jane_axios } = await getTestServer()
59
-
60
- // Jane creates a package with files
61
- const sourcePackage = await jane_axios
62
- .post("/api/packages/create", {
63
- name: "jane/test-package-for-name-fork",
64
- description: "A package to be forked by name",
65
- })
66
- .then((r: any) => r.data.package)
67
-
68
- // Create a release
69
- const sourceRelease = await jane_axios
70
- .post("/api/package_releases/create", {
71
- package_id: sourcePackage.package_id,
72
- version: "1.0.0",
73
- })
74
- .then((r: any) => r.data.package_release)
75
-
76
- // Create a file
77
- await jane_axios.post("/api/package_files/create", {
78
- package_release_id: sourceRelease.package_release_id,
79
- file_path: "index.tsx",
80
- content_text: "console.log('Hello from name package');",
81
- })
82
-
83
- // user forks Jane's package using package_name
84
- const forkedPackage = await axios
85
- .post("/api/packages/fork", {
86
- package_name: "jane/test-package-for-name-fork",
87
- is_private: true,
88
- })
89
- .then((r: any) => r.data.package)
90
-
91
- // Verify fork was created successfully with privacy settings
92
- expect(forkedPackage.name).toBe(`testuser/${sourcePackage.unscoped_name}`)
93
- expect(forkedPackage.is_private).toBe(true)
94
- expect(forkedPackage.is_unlisted).toBe(true) // Should be unlisted since it's private
95
- })
96
-
97
- test("POST /packages/fork - error when package not found", async () => {
98
- const { axios } = await getTestServer()
99
-
100
- try {
101
- await axios.post("/api/packages/fork", {
102
- package_id: "00000000-0000-0000-0000-000000000000", // Non-existent ID
103
- })
104
- // If it doesn't throw, fail the test
105
- expect(true).toBe(false)
106
- } catch (error: any) {
107
- expect(error.status).toBe(404)
108
- expect(error.data.error.error_code).toBe("package_not_found")
109
- }
110
- })
111
-
112
- test("POST /packages/fork - error when trying to fork own package", async () => {
113
- const { jane_axios } = await getTestServer()
114
-
115
- const sourcePackage = await jane_axios
116
- .post("/api/packages/create", {
117
- name: "jane/test-package-for-fork",
118
- description: "A package to be forked",
119
- })
120
- .then((r: any) => r.data.package)
121
-
122
- try {
123
- await jane_axios.post("/api/packages/fork", {
124
- package_id: sourcePackage.package_id,
125
- })
126
- // If it doesn't throw, fail the test
127
- expect(true).toBe(false)
128
- } catch (error: any) {
129
- expect(error.status).toBe(400)
130
- expect(error.data.error.error_code).toBe("cannot_fork_own_package")
131
- }
132
- })
@@ -1,112 +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("GET /api/packages/get - should return package by package_id", async () => {
5
- const { axios } = await getTestServer()
6
-
7
- // Create a new package using the /create endpoint
8
- const newPackageData = {
9
- name: "testuser/test-package",
10
- description: "A test package",
11
- creator_account_id: "test_account_id",
12
- owner_org_id: "test_org_id",
13
- owner_github_username: "test_github_username",
14
- latest_package_release_id: null,
15
- latest_version: null,
16
- license: null,
17
- is_source_from_github: false,
18
- created_at: new Date().toISOString(),
19
- updated_at: new Date().toISOString(),
20
- unscoped_name: "test-package",
21
- star_count: 0,
22
- ai_description: "test-package",
23
- }
24
-
25
- const createResponse = await axios.post(
26
- "/api/packages/create",
27
- newPackageData,
28
- )
29
- expect(createResponse.status).toBe(200)
30
- const createdPackage = createResponse.data.package
31
-
32
- // Get the created package using the /get endpoint
33
- const getResponse = await axios.get("/api/packages/get", {
34
- params: { package_id: createdPackage.package_id },
35
- })
36
-
37
- expect(getResponse.status).toBe(200)
38
- const responseBody = getResponse.data
39
- expect(responseBody.ok).toBe(true)
40
- expect(responseBody.package).toBeDefined()
41
- expect(responseBody.package.latest_pcb_preview_image_url).toBeDefined()
42
- expect(responseBody.package.latest_sch_preview_image_url).toBeDefined()
43
- expect(responseBody.package.latest_cad_preview_image_url).toBeDefined()
44
- })
45
-
46
- test("GET /api/packages/get - should return 404 if package not found", async () => {
47
- const { axios } = await getTestServer()
48
-
49
- try {
50
- await axios.get("/api/packages/get", {
51
- params: { package_id: "non_existent_package_id" },
52
- })
53
- throw new Error("Expected request to fail")
54
- } catch (error: any) {
55
- expect(error.status).toBe(404)
56
- expect(error.data.error.error_code).toBe("package_not_found")
57
- expect(error.data.error.message).toBe(
58
- 'Package not found (searched using {"package_id":"non_existent_package_id"})',
59
- )
60
- }
61
- })
62
-
63
- test("GET /api/packages/get - should return package by name", async () => {
64
- const { axios } = await getTestServer()
65
-
66
- await axios.post("/api/packages/create", {
67
- name: "testuser/test-package",
68
- description: "A test package",
69
- creator_account_id: "test_account_id",
70
- owner_org_id: "test_org_id",
71
- owner_github_username: "test_github_username",
72
- })
73
-
74
- const getResponse = await axios.get("/api/packages/get", {
75
- params: { name: "testuser/test-package" },
76
- })
77
-
78
- expect(getResponse.status).toBe(200)
79
- const responseBody = getResponse.data
80
- expect(responseBody.ok).toBe(true)
81
- expect(responseBody.package).toBeDefined()
82
- })
83
-
84
- test("GET /api/packages/get - returns user_permissions when authenticated", async () => {
85
- const { axios, jane_axios, unauthenticatedAxios } = await getTestServer()
86
-
87
- const createResponse = await axios.post("/api/packages/create", {
88
- name: "testuser/auth-package",
89
- description: "desc",
90
- })
91
-
92
- const pkg = createResponse.data.package
93
-
94
- const ownerResponse = await axios.get("/api/packages/get", {
95
- params: { package_id: pkg.package_id },
96
- })
97
- expect(ownerResponse.data.package.user_permissions).toEqual({
98
- can_manage_packages: true,
99
- })
100
-
101
- const otherResponse = await jane_axios.get("/api/packages/get", {
102
- params: { package_id: pkg.package_id },
103
- })
104
- expect(otherResponse.data.package.user_permissions).toEqual({
105
- can_manage_packages: false,
106
- })
107
-
108
- const unauthResponse = await unauthenticatedAxios.get("/api/packages/get", {
109
- params: { package_id: pkg.package_id },
110
- })
111
- expect(unauthResponse.data.package.user_permissions).toBeUndefined()
112
- })
@@ -1,72 +0,0 @@
1
- import { getTestServer } from "bun-tests/fake-snippets-api/fixtures/get-test-server"
2
- import { expect, test } from "bun:test"
3
- import md5 from "md5"
4
- test("get schematic svg of a package", async () => {
5
- const { axios, db } = await getTestServer()
6
-
7
- // create a package
8
- const pkg = await axios.post("/api/packages/create", {
9
- name: "testuser/TestPackage",
10
- description: "Test Description",
11
- })
12
-
13
- // create a package release
14
- const pkg_release = await axios.post("/api/package_releases/create", {
15
- package_id: pkg.data.package.package_id,
16
- version: "1.0.0",
17
- is_latest: true,
18
- })
19
-
20
- const circuit_json = [
21
- {
22
- type: "pcb_board",
23
- pcb_board_id: "pcb_board_0",
24
- center: {
25
- x: 0,
26
- y: 0,
27
- },
28
- thickness: 1.4,
29
- num_layers: 4,
30
- width: 30,
31
- height: 30,
32
- },
33
- ]
34
- // create a package file
35
- const pkg_file = await axios.post("/api/package_files/create", {
36
- package_release_id: pkg_release.data.package_release.package_release_id,
37
- file_path: "circuit.json",
38
- content_text: JSON.stringify(circuit_json),
39
- })
40
-
41
- // create fsMap by getting all the files in the package with the file_path and content_text
42
- const fsMap = new Map<string, string>()
43
- // list all the files in the package
44
- const files = await axios.get("/api/package_files/list", {
45
- params: {
46
- package_release_id: pkg_release.data.package_release.package_release_id,
47
- },
48
- })
49
- for (const file of files.data.package_files) {
50
- fsMap.set(file.file_path, file.content_text)
51
- }
52
-
53
- const fsMapHash = md5(JSON.stringify(fsMap))
54
-
55
- // update the package release with the fsMapHash
56
- await axios.post("/api/package_releases/update", {
57
- package_release_id: pkg_release.data.package_release.package_release_id,
58
- fs_sha: `md5-${fsMapHash}`,
59
- })
60
-
61
- const response = await axios.get(
62
- `/api/packages/images/${pkg.data.package.owner_github_username}/${pkg.data.package.unscoped_name}/schematic.svg`,
63
- {
64
- params: {
65
- fs_sha: `md5-${fsMapHash}`,
66
- },
67
- },
68
- )
69
-
70
- expect(response.status).toBe(200)
71
- expect(response.data).toContain("<svg")
72
- })
@@ -1,145 +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("list packages", async () => {
5
- const { axios, db } = await getTestServer()
6
-
7
- // Add some test packages
8
- const packages = [
9
- {
10
- name: "Package1",
11
- unscoped_name: "Package1",
12
- owner_github_username: "user1",
13
- creator_account_id: "creator1",
14
- created_at: "2023-01-01T00:00:00Z",
15
- updated_at: "2023-01-01T00:00:00Z",
16
- description: "Description 1",
17
- ai_description: "AI Description 1",
18
- ai_usage_instructions: "Usage instructions 1",
19
- owner_org_id: "org1",
20
- latest_version: "1.0.0",
21
- license: "MIT",
22
- is_source_from_github: true,
23
- star_count: 0,
24
- },
25
- {
26
- name: "Package2",
27
- unscoped_name: "Package2",
28
- owner_github_username: "user2",
29
- creator_account_id: "creator2",
30
- created_at: "2023-01-02T00:00:00Z",
31
- updated_at: "2023-01-02T00:00:00Z",
32
- description: "Description 2",
33
- ai_description: "AI Description 2",
34
- ai_usage_instructions: "Usage instructions 2",
35
- owner_org_id: "org2",
36
- latest_version: "1.0.0",
37
- license: "MIT",
38
- is_source_from_github: true,
39
- star_count: 0,
40
- },
41
- {
42
- name: "Package3",
43
- unscoped_name: "Package3",
44
- owner_github_username: "user1",
45
- creator_account_id: "creator1",
46
- created_at: "2023-01-03T00:00:00Z",
47
- updated_at: "2023-01-03T00:00:00Z",
48
- description: "Description 3",
49
- ai_description: "AI Description 3",
50
- ai_usage_instructions: "Usage instructions 3",
51
- owner_org_id: "org1",
52
- latest_version: "1.0.0",
53
- license: "MIT",
54
- is_source_from_github: true,
55
- star_count: 0,
56
- },
57
- ]
58
-
59
- for (const pkg of packages) {
60
- db.addPackage(pkg as any)
61
- }
62
-
63
- // Test with no parameters (should return all packages)
64
- const { data: allData } = await axios.get("/api/packages/list")
65
- expect(allData.ok).toBe(true)
66
- expect(allData.packages).toHaveLength(3)
67
-
68
- // Test with owner_github_username parameter
69
- const { data: user1Data } = await axios.get("/api/packages/list", {
70
- params: { owner_github_username: "user1" },
71
- })
72
- expect(user1Data.packages).toHaveLength(2)
73
- expect(
74
- user1Data.packages.every(
75
- (pkg: { owner_github_username: string }) =>
76
- pkg.owner_github_username === "user1",
77
- ),
78
- ).toBe(true)
79
-
80
- // Test with creator_account_id parameter
81
- const { data: creator1Data } = await axios.get("/api/packages/list", {
82
- params: { creator_account_id: "creator1" },
83
- })
84
- expect(creator1Data.packages).toHaveLength(2)
85
- expect(
86
- creator1Data.packages.every(
87
- (pkg: { creator_account_id: string }) =>
88
- pkg.creator_account_id === "creator1",
89
- ),
90
- ).toBe(true)
91
-
92
- // Test with name parameter (must include another filter parameter)
93
- const { data: nameData } = await axios.get("/api/packages/list", {
94
- params: {
95
- name: "Package1",
96
- owner_github_username: "user1",
97
- },
98
- })
99
- expect(nameData.packages).toHaveLength(1)
100
- expect(nameData.packages[0].name).toBe("Package1")
101
-
102
- // Test with non-existent owner
103
- const { data: nonExistentData } = await axios.get("/api/packages/list", {
104
- params: { owner_github_username: "nonexistentuser" },
105
- })
106
- expect(nonExistentData.packages).toHaveLength(0)
107
-
108
- // Test with authenticated request
109
- const { data: authData } = await axios.get("/api/packages/list")
110
- expect(authData.packages).toHaveLength(3) // Should return all packages when authenticated
111
- })
112
-
113
- test("list packages includes user_permissions when session provided", async () => {
114
- const { axios, jane_axios, unauthenticatedAxios } = await getTestServer()
115
-
116
- const pkg1 = (
117
- await axios.post("/api/packages/create", {
118
- name: "testuser/ownerpkg",
119
- description: "", // minimal
120
- })
121
- ).data.package
122
-
123
- const pkg2 = (
124
- await jane_axios.post("/api/packages/create", {
125
- name: "jane/otherpkg",
126
- description: "",
127
- })
128
- ).data.package
129
-
130
- const { data: listData } = await axios.get("/api/packages/list")
131
- const ownerPkg = listData.packages.find(
132
- (p: any) => p.package_id === pkg1.package_id,
133
- )
134
- const otherPkg = listData.packages.find(
135
- (p: any) => p.package_id === pkg2.package_id,
136
- )
137
- expect(ownerPkg.user_permissions).toEqual({ can_manage_packages: true })
138
- expect(otherPkg.user_permissions).toEqual({ can_manage_packages: false })
139
-
140
- const { data: unauthData } = await unauthenticatedAxios.get(
141
- "/api/packages/list",
142
- { params: { owner_github_username: "testuser" } },
143
- )
144
- expect(unauthData.packages[0].user_permissions).toBeUndefined()
145
- })
@@ -1,48 +0,0 @@
1
- import { getTestServer } from "bun-tests/fake-snippets-api/fixtures/get-test-server"
2
- import { expect, test } from "bun:test"
3
- test("list packages with is_writable filter", async () => {
4
- const { axios, db } = await getTestServer()
5
-
6
- // Add test packages
7
- const packages = [
8
- {
9
- package_id: "pkg1",
10
- name: "testuser/testPackage1",
11
- unscoped_name: "testPackage1",
12
- created_at: "2023-01-01T00:00:00Z",
13
- updated_at: "2023-01-01T00:00:00Z",
14
- description: "Description 1",
15
- ai_description: "AI Description 1",
16
- ai_usage_instructions: "Usage instructions 1",
17
- latest_version: "1.0.0",
18
- license: "MIT",
19
- is_source_from_github: true,
20
- star_count: 0,
21
- },
22
- {
23
- package_id: "pkg2",
24
- name: "testuser/testPackage2",
25
- unscoped_name: "testPackage2",
26
- created_at: "2023-01-02T00:00:00Z",
27
- updated_at: "2023-01-02T00:00:00Z",
28
- description: "Description 2",
29
- ai_description: "AI Description 2",
30
- ai_usage_instructions: "Usage instructions 2",
31
- latest_version: "1.0.0",
32
- license: "MIT",
33
- is_source_from_github: true,
34
- star_count: 0,
35
- },
36
- ]
37
-
38
- // Add only these test packages
39
- for (const pkg of packages) {
40
- await axios.post("/api/packages/create", pkg)
41
- }
42
-
43
- // Test with is_writable filter (requires auth)
44
- const { data: writableData } = await axios.get("/api/packages/list", {
45
- params: { is_writable: true },
46
- })
47
- expect(writableData.packages).toHaveLength(2)
48
- })