@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,31 +0,0 @@
1
- import type { AiReview } from "fake-snippets-api/lib/db/schema"
2
- import { useQuery } from "react-query"
3
- import { useAxios } from "./use-axios"
4
-
5
- export const useAiReview = (
6
- aiReviewId: string | null,
7
- options?: {
8
- refetchInterval?:
9
- | number
10
- | false
11
- | ((data: AiReview | undefined) => number | false)
12
- },
13
- ) => {
14
- const axios = useAxios()
15
-
16
- return useQuery<AiReview, Error & { status: number }>(
17
- ["aiReview", aiReviewId],
18
- async () => {
19
- if (!aiReviewId) throw new Error("aiReviewId is required")
20
- const { data } = await axios.get("/ai_reviews/get", {
21
- params: { ai_review_id: aiReviewId },
22
- })
23
- return data.ai_review as AiReview
24
- },
25
- {
26
- enabled: Boolean(aiReviewId),
27
- refetchInterval: options?.refetchInterval,
28
- refetchOnWindowFocus: false,
29
- },
30
- )
31
- }
@@ -1,20 +0,0 @@
1
- import axios from "redaxios"
2
- import { useMemo } from "react"
3
- import { useGlobalStore } from "./use-global-store"
4
- import { useApiBaseUrl } from "./use-packages-base-api-url"
5
-
6
- export const useAxios = () => {
7
- const snippetsBaseApiUrl = useApiBaseUrl()
8
- const session = useGlobalStore((s) => s.session)
9
- return useMemo(() => {
10
- const instance = axios.create({
11
- baseURL: snippetsBaseApiUrl,
12
- headers: session
13
- ? {
14
- Authorization: `Bearer ${session?.token}`,
15
- }
16
- : {},
17
- })
18
- return instance
19
- }, [session?.token])
20
- }
@@ -1,11 +0,0 @@
1
- import { useMemo } from "react"
2
-
3
- export const useCodeCompletionApi = () => {
4
- const openrouterApiKey = useMemo(() => {
5
- return {
6
- apiKey: import.meta.env.VITE_OPENROUTER_API_KEY,
7
- }
8
- }, [])
9
-
10
- return openrouterApiKey
11
- }
@@ -1,26 +0,0 @@
1
- import { useToast } from "@/hooks/use-toast"
2
- import { useCallback } from "react"
3
-
4
- export const useCopyToClipboard = () => {
5
- const { toast } = useToast()
6
-
7
- const copyToClipboard = useCallback(
8
- async (text: string) => {
9
- try {
10
- await navigator.clipboard.writeText(text)
11
- toast({
12
- title: "Copied to clipboard!",
13
- description: "The text has been copied successfully.",
14
- })
15
- } catch (error) {
16
- toast({
17
- title: "Failed to copy",
18
- description: "There was an error copying the text.",
19
- })
20
- }
21
- },
22
- [toast],
23
- )
24
-
25
- return { copyToClipboard }
26
- }
@@ -1,30 +0,0 @@
1
- import { useMutation, useQueryClient } from "react-query"
2
- import { useAxios } from "@/hooks/use-axios"
3
- import type { Datasheet } from "fake-snippets-api/lib/db/schema"
4
-
5
- export const useCreateDatasheet = ({
6
- onSuccess,
7
- }: { onSuccess?: (datasheet: Datasheet) => void } = {}) => {
8
- const axios = useAxios()
9
- const queryClient = useQueryClient()
10
-
11
- return useMutation(
12
- ["createDatasheet"],
13
- async ({ chip_name }: { chip_name: string }) => {
14
- const { data } = await axios.post("/datasheets/create", { chip_name })
15
- await axios.get("/_fake/run_async_tasks")
16
- return data.datasheet as Datasheet
17
- },
18
- {
19
- onSuccess: (datasheet, variables) => {
20
- if (variables?.chip_name) {
21
- queryClient.invalidateQueries(["datasheet", variables.chip_name])
22
- }
23
- onSuccess?.(datasheet)
24
- },
25
- onError: (error: any) => {
26
- console.error("Error creating datasheet:", error)
27
- },
28
- },
29
- )
30
- }
@@ -1,38 +0,0 @@
1
- import { useMutation } from "react-query"
2
- import { useAxios } from "./use-axios"
3
- import { useGlobalStore } from "./use-global-store"
4
- import type { PublicOrgSchema } from "fake-snippets-api/lib/db/schema"
5
-
6
- export const useCreateOrgMutation = ({
7
- onSuccess,
8
- }: { onSuccess?: (org: PublicOrgSchema) => void } = {}) => {
9
- const axios = useAxios()
10
- const session = useGlobalStore((s) => s.session)
11
-
12
- return useMutation(
13
- ["createOrg"],
14
- async ({ name }: { name: string }) => {
15
- if (!session) throw new Error("No session")
16
-
17
- const {
18
- data: { org: newOrg },
19
- } = await axios.post("/orgs/create", {
20
- name,
21
- })
22
-
23
- if (!newOrg) {
24
- throw new Error("Failed to create organization")
25
- }
26
-
27
- return newOrg
28
- },
29
- {
30
- onSuccess: (org: PublicOrgSchema) => {
31
- onSuccess?.(org)
32
- },
33
- onError: (error: any) => {
34
- console.error("Error creating organization:", error)
35
- },
36
- },
37
- )
38
- }
@@ -1,76 +0,0 @@
1
- import type { PackageFile } from "fake-snippets-api/lib/db/schema"
2
- import { useMutation } from "react-query"
3
- import { useAxios } from "./use-axios"
4
-
5
- export const useCreatePackageFilesMutation = ({
6
- onSuccess,
7
- }: { onSuccess?: (packageFile: PackageFile) => void } = {}) => {
8
- const axios = useAxios()
9
-
10
- return useMutation(
11
- ["createPackageFiles"],
12
- async ({
13
- file_path,
14
- content_text,
15
- content_base64,
16
- content_mimetype,
17
- package_release_id,
18
- package_name_with_version,
19
- is_release_tarball = false,
20
- npm_pack_output,
21
- }: {
22
- file_path: string
23
- content_text?: string
24
- content_base64?: string
25
- content_mimetype?: string
26
- package_release_id?: string
27
- package_name_with_version?: string
28
- is_release_tarball?: boolean
29
- npm_pack_output?: any
30
- }) => {
31
- // Validate that either content_text or content_base64 is provided, but not both
32
- if (
33
- (!content_text && !content_base64) ||
34
- (content_text && content_base64)
35
- ) {
36
- throw new Error(
37
- "Must provide either content_text or content_base64, but not both",
38
- )
39
- }
40
-
41
- // Validate that either package_release_id or package_name_with_version is provided
42
- if (!package_release_id && !package_name_with_version) {
43
- throw new Error(
44
- "Must provide either package_release_id or package_name_with_version",
45
- )
46
- }
47
-
48
- const {
49
- data: { package_file: newPackageFile },
50
- } = await axios.post("/package_files/create", {
51
- file_path,
52
- content_text,
53
- content_base64,
54
- content_mimetype,
55
- package_release_id,
56
- package_name_with_version,
57
- is_release_tarball,
58
- npm_pack_output,
59
- })
60
-
61
- if (!newPackageFile) {
62
- throw new Error("Failed to create package file")
63
- }
64
-
65
- return newPackageFile
66
- },
67
- {
68
- onSuccess: (packageFile: PackageFile) => {
69
- onSuccess?.(packageFile)
70
- },
71
- onError: (error: any) => {
72
- console.error("Error creating package file:", error)
73
- },
74
- },
75
- )
76
- }
@@ -1,54 +0,0 @@
1
- import type { Package } from "fake-snippets-api/lib/db/schema"
2
- import { useMutation } from "react-query"
3
- import { useAxios } from "./use-axios"
4
- import { useGlobalStore } from "./use-global-store"
5
-
6
- export const useCreatePackageMutation = ({
7
- onSuccess,
8
- }: { onSuccess?: (pkg: Package) => void } = {}) => {
9
- const axios = useAxios()
10
- const session = useGlobalStore((s) => s.session)
11
-
12
- return useMutation(
13
- ["createPackage"],
14
- async ({
15
- name,
16
- description,
17
- is_private,
18
- is_unlisted,
19
- org_id,
20
- }: {
21
- name?: string
22
- description?: string
23
- is_private?: boolean
24
- is_unlisted?: boolean
25
- org_id?: string
26
- }) => {
27
- if (!session) throw new Error("No session")
28
-
29
- const {
30
- data: { package: newPackage },
31
- } = await axios.post("/packages/create", {
32
- name,
33
- description,
34
- is_private,
35
- is_unlisted,
36
- org_id,
37
- })
38
-
39
- if (!newPackage) {
40
- throw new Error("Failed to create package")
41
- }
42
-
43
- return newPackage
44
- },
45
- {
46
- onSuccess: (pkg: Package) => {
47
- onSuccess?.(pkg)
48
- },
49
- onError: (error: any) => {
50
- console.error("Error creating package:", error)
51
- },
52
- },
53
- )
54
- }
@@ -1,107 +0,0 @@
1
- import type { PackageRelease } from "fake-snippets-api/lib/db/schema"
2
- import { useMutation } from "react-query"
3
- import { useAxios } from "./use-axios"
4
-
5
- export const useCreatePackageReleaseMutation = ({
6
- onSuccess,
7
- }: { onSuccess?: (packageRelease: PackageRelease) => void } = {}) => {
8
- const axios = useAxios()
9
-
10
- return useMutation(
11
- ["createPackageRelease"],
12
- async ({
13
- package_id,
14
- version,
15
- is_latest = true,
16
- commit_sha,
17
- package_name_with_version,
18
- }: {
19
- package_id?: string
20
- version?: string
21
- is_latest?: boolean
22
- commit_sha?: string
23
- package_name_with_version?: string
24
- }) => {
25
- // Validate that either package_id + version or package_name_with_version is provided
26
- if (!package_name_with_version && (!package_id || !version)) {
27
- throw new Error(
28
- "Must provide either package_id + version or package_name_with_version",
29
- )
30
- }
31
-
32
- let resolvedVersion = version
33
- let resolvedPkgName = package_name_with_version
34
-
35
- // Parse version from package_name_with_version if needed
36
- if (package_name_with_version && !version) {
37
- const [pkgName, parsedVersion] = package_name_with_version.split("@")
38
- resolvedVersion = parsedVersion
39
- resolvedPkgName = pkgName
40
- } else if (package_name_with_version) {
41
- const [pkgName] = package_name_with_version.split("@")
42
- resolvedPkgName = pkgName
43
- }
44
-
45
- // Default version to 0.0.1 when it contains no digits
46
- if (!resolvedVersion || !/[0-9]/.test(resolvedVersion)) {
47
- resolvedVersion = "0.0.1"
48
- }
49
-
50
- const normalizedPackageNameWithVersion =
51
- resolvedPkgName && `${resolvedPkgName}@${resolvedVersion}`
52
-
53
- try {
54
- const {
55
- data: { package_release: newPackageRelease },
56
- } = await axios.post("/package_releases/create", {
57
- package_id,
58
- version: resolvedVersion,
59
- is_latest,
60
- commit_sha,
61
- package_name_with_version: normalizedPackageNameWithVersion,
62
- })
63
-
64
- if (!newPackageRelease) {
65
- throw new Error("Failed to create package release")
66
- }
67
-
68
- return newPackageRelease
69
- } catch (error: any) {
70
- if (
71
- error.status === 400 &&
72
- error.data?.error?.error_code === "version_already_exists" &&
73
- normalizedPackageNameWithVersion
74
- ) {
75
- // Update the existing release with the provided data
76
- await axios.post("/package_releases/update", {
77
- package_name_with_version: normalizedPackageNameWithVersion,
78
- is_latest,
79
- commit_sha,
80
- })
81
-
82
- const {
83
- data: { package_release },
84
- } = await axios.post("/package_releases/get", {
85
- package_name_with_version: normalizedPackageNameWithVersion,
86
- })
87
-
88
- if (!package_release) {
89
- throw new Error("Failed to update package release")
90
- }
91
-
92
- return package_release as PackageRelease
93
- }
94
-
95
- throw error
96
- }
97
- },
98
- {
99
- onSuccess: (packageRelease: PackageRelease) => {
100
- onSuccess?.(packageRelease)
101
- },
102
- onError: (error: any) => {
103
- console.error("Error creating package release:", error)
104
- },
105
- },
106
- )
107
- }
@@ -1,160 +0,0 @@
1
- import { useState } from "react"
2
- import { useCreatePackageReleaseMutation } from "./use-create-package-release-mutation"
3
- import { useGlobalStore } from "./use-global-store"
4
- import { useUpdatePackageFilesMutation } from "./useUpdatePackageFilesMutation"
5
- import type { PackageFile } from "@/types/package"
6
- import type { Package } from "fake-snippets-api/lib/db/schema"
7
- import { useToast } from "./use-toast"
8
-
9
- interface UseCreateReleaseDialogProps {
10
- packageId?: string
11
- packageName?: string
12
- currentVersion?: string
13
- onSuccess?: (release: any) => void
14
- files?: PackageFile[]
15
- currentPackage?: Package
16
- packageFilesMeta?: {
17
- created_at: string
18
- file_path: string
19
- package_file_id: string
20
- package_release_id: string
21
- }[]
22
- }
23
-
24
- export const useCreateReleaseDialog = ({
25
- packageId,
26
- packageName,
27
- currentVersion,
28
- onSuccess,
29
- files = [],
30
- currentPackage,
31
- packageFilesMeta = [],
32
- }: UseCreateReleaseDialogProps) => {
33
- const { toast } = useToast()
34
- const [isOpen, setIsOpen] = useState(false)
35
- const [version, setVersion] = useState("")
36
- const [isLoading, setIsLoading] = useState(false)
37
- const [error, setError] = useState<string | null>(null)
38
-
39
- const suggestedNextVersion = currentVersion
40
- ? (() => {
41
- const parts = currentVersion.split(".")
42
- if (parts.length === 3) {
43
- const [major, minor, patch] = parts.map(Number)
44
- if (!isNaN(major) && !isNaN(minor) && !isNaN(patch)) {
45
- return `${major}.${minor}.${patch + 1}`
46
- }
47
- }
48
- return undefined
49
- })()
50
- : undefined
51
-
52
- const { mutateAsync: createRelease } = useCreatePackageReleaseMutation({
53
- onSuccess: () => {
54
- toast({
55
- title: "Package release created",
56
- description: "Your package release has been created successfully.",
57
- })
58
- },
59
- })
60
- const session = useGlobalStore((s) => s.session)
61
-
62
- const updatePackageFilesMutation = useUpdatePackageFilesMutation({
63
- currentPackage,
64
- localFiles: files,
65
- initialFiles: [],
66
- packageFilesMeta,
67
- })
68
-
69
- const open = () => {
70
- setIsOpen(true)
71
- setError(null)
72
- // Auto-fill with suggested next version
73
- const nextVersion = suggestedNextVersion || "0.0.1"
74
- setVersion(nextVersion)
75
- }
76
-
77
- const close = () => {
78
- setIsOpen(false)
79
- setError(null)
80
- setVersion("")
81
- }
82
-
83
- const handleCreateRelease = async () => {
84
- if (!version.trim()) {
85
- setError("Version is required")
86
- return
87
- }
88
-
89
- if (!packageId && !packageName) {
90
- setError("Package information is missing")
91
- return
92
- }
93
-
94
- if (!session) {
95
- setError("You must be logged in to create a release")
96
- return
97
- }
98
-
99
- setIsLoading(true)
100
- setError(null)
101
-
102
- try {
103
- const releaseData: any = {
104
- version: version.trim(),
105
- is_latest: true,
106
- }
107
-
108
- if (packageId) {
109
- releaseData.package_id = packageId
110
- } else if (packageName) {
111
- releaseData.package_name = packageName
112
- }
113
-
114
- const result = await createRelease(releaseData)
115
-
116
- if (files.length > 0 && currentPackage) {
117
- try {
118
- await updatePackageFilesMutation.mutateAsync({
119
- package_name_with_version: `${currentPackage.name}@${version.trim()}`,
120
- ...currentPackage,
121
- })
122
- } catch (fileError: any) {
123
- console.error("Error uploading files:", fileError)
124
- toast({
125
- title: "Error",
126
- description: "Failed to upload some files to the release",
127
- })
128
- }
129
- }
130
-
131
- onSuccess?.(result)
132
- close()
133
- } catch (err: any) {
134
- const errorMessage =
135
- err?.response?.data?.error?.message ||
136
- err?.message ||
137
- "Failed to create release"
138
- setError(errorMessage)
139
- toast({
140
- title: "Error",
141
- description: errorMessage,
142
- })
143
- } finally {
144
- setIsLoading(false)
145
- }
146
- }
147
-
148
- return {
149
- isOpen,
150
- openDialog: open,
151
- closeDialog: close,
152
- version,
153
- setVersion,
154
- currentVersion,
155
- suggestedNextVersion,
156
- isLoading: isLoading || updatePackageFilesMutation.isLoading,
157
- error,
158
- handleCreateRelease,
159
- }
160
- }
@@ -1,65 +0,0 @@
1
- import { getSnippetTemplate } from "@/lib/get-snippet-template"
2
- import { Snippet } from "fake-snippets-api/lib/db/schema"
3
- import { useMutation } from "react-query"
4
- import { useAxios } from "./use-axios"
5
- import { useGlobalStore } from "./use-global-store"
6
- import { useUrlParams } from "./use-url-params"
7
-
8
- export const useCreateSnippetMutation = ({
9
- onSuccess,
10
- }: { onSuccess?: (snippet: Snippet) => void } = {}) => {
11
- const urlParams = useUrlParams()
12
- const templateName = urlParams.template
13
- const axios = useAxios()
14
- const session = useGlobalStore((s) => s.session)
15
- return useMutation(
16
- ["createSnippet"],
17
- async ({
18
- code,
19
- circuit_json,
20
- manual_edits_json_content,
21
- is_private,
22
- }: {
23
- code?: string
24
- circuit_json?: any[]
25
- manual_edits_json_content?: string
26
- is_private?: boolean
27
- } = {}) => {
28
- if (!session) throw new Error("No session")
29
- const template =
30
- typeof code === "string"
31
- ? {
32
- code,
33
- type:
34
- urlParams.type ||
35
- (code.includes("<board") ? "board" : "package"),
36
- }
37
- : getSnippetTemplate(templateName)
38
- const {
39
- data: { snippet },
40
- } = await axios.post("/snippets/create", {
41
- code: template.code,
42
- snippet_type: template.type ?? "board",
43
- manual_edits_json_content,
44
- owner_name: session?.github_username,
45
- circuit_json,
46
- is_private,
47
- })
48
- return snippet
49
- },
50
- {
51
- onSuccess: (snippet: any) => {
52
- const url = new URL(window.location.href)
53
- url.searchParams.set("snippet_id", snippet.snippet_id)
54
- url.searchParams.delete("template")
55
- url.searchParams.delete("should_create_snippet")
56
- window.history.pushState({}, "", url.toString())
57
- onSuccess?.(snippet)
58
- window.dispatchEvent(new Event("popstate"))
59
- },
60
- onError: (error: any) => {
61
- console.error("Error creating snippet:", error)
62
- },
63
- },
64
- )
65
- }
@@ -1,16 +0,0 @@
1
- import { useCurrentPackageInfo } from "./use-current-package-info"
2
-
3
- export const useCurrentPackageId = (): {
4
- packageId: string | null
5
- isLoading: boolean
6
- error: (Error & { status: number }) | null
7
- } => {
8
- const { packageInfo, isLoading, error } = useCurrentPackageInfo()
9
- const packageId = packageInfo?.package_id ?? null
10
-
11
- return {
12
- packageId,
13
- isLoading,
14
- error,
15
- }
16
- }
@@ -1,32 +0,0 @@
1
- import { useParams } from "wouter"
2
- import { usePackageById } from "./use-package-by-package-id"
3
- import { usePackageByName } from "./use-package-by-package-name"
4
- import { useUrlParams } from "./use-url-params"
5
- import type { Package } from "fake-snippets-api/lib/db/schema"
6
-
7
- export const useCurrentPackageInfo = (): {
8
- packageInfo: Package | undefined
9
- isLoading: boolean
10
- error: (Error & { status: number }) | null
11
- refetch: () => Promise<unknown>
12
- } => {
13
- const urlParams = useUrlParams()
14
- const packageIdFromQuery = urlParams.package_id ?? null
15
-
16
- const { author, packageName } = useParams()
17
- const packageSlug = author && packageName ? `${author}/${packageName}` : null
18
-
19
- const queryById = usePackageById(packageIdFromQuery)
20
- const queryByName = usePackageByName(packageSlug)
21
-
22
- const data = queryById.data ?? queryByName.data
23
- const isLoading = queryById.isLoading || queryByName.isLoading
24
- const error =
25
- (queryById.error as (Error & { status: number }) | null) ??
26
- (queryByName.error as (Error & { status: number }) | null) ??
27
- null
28
-
29
- const refetch = packageIdFromQuery ? queryById.refetch : queryByName.refetch
30
-
31
- return { packageInfo: data, isLoading, error, refetch }
32
- }