@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,26 +0,0 @@
1
- import { blankPackageTemplate } from "@/lib/templates/blank-package-template"
2
- import { blankFootprintTemplate } from "@/lib/templates/blank-footprint-template"
3
- import { blankCircuitBoardTemplate } from "@/lib/templates/blank-circuit-board-template"
4
- import { blank3dModelTemplate } from "@/lib/templates/blank-3d-model-template"
5
- import { defaultCodeForBlankPage } from "@/lib/defaultCodeForBlankCode"
6
- import { blinkingLedBoardTemplate } from "@/lib/templates/blinking-led-board-template"
7
- import { usbCLedFlashlightTemplate } from "@/lib/templates/usb-c-led-flashlight-template"
8
-
9
- export const getSnippetTemplate = (template: string | undefined) => {
10
- switch (template) {
11
- case "blank-circuit-module":
12
- return blankPackageTemplate
13
- case "blank-footprint":
14
- return blankFootprintTemplate
15
- case "blank-circuit-board":
16
- return blankCircuitBoardTemplate
17
- case "blank-3d-model":
18
- return blank3dModelTemplate
19
- case "blinking-led-board":
20
- return blinkingLedBoardTemplate
21
- case "usb-c-led-flashlight":
22
- return usbCLedFlashlightTemplate
23
- default:
24
- return { code: defaultCodeForBlankPage, type: "board" }
25
- }
26
- }
@@ -1,67 +0,0 @@
1
- type LicenseType = "MIT" | "Apache-2.0" | "BSD-3-Clause" | "GPL-3.0" | "unset"
2
-
3
- const licenseKeyPhrases = {
4
- MIT: [
5
- "mit license",
6
- "permission is hereby granted, free of charge",
7
- "without restriction",
8
- "furnished to do so",
9
- 'the software is provided "as is"',
10
- "without warranty of any kind",
11
- "copyright (c)",
12
- ],
13
- "Apache-2.0": [
14
- "apache license",
15
- "version 2.0",
16
- "licensed under the apache license",
17
- "http://www.apache.org/licenses/",
18
- "subject to the following conditions",
19
- "unless required by applicable law",
20
- ],
21
- "BSD-3-Clause": [
22
- "redistribution and use in source and binary forms",
23
- "redistributions of source code must retain",
24
- "redistributions in binary form must reproduce",
25
- "neither the name",
26
- "nor the names of its contributors may be used",
27
- ],
28
- "GPL-3.0": [
29
- "gnu general public license",
30
- "version 3",
31
- "free software foundation",
32
- "either version 3 of the license",
33
- "everyone is permitted to copy and distribute",
34
- "gnu general public license for more details",
35
- ],
36
- }
37
-
38
- // Currently using this because latest_license is not fully supported yet
39
- export const getLicenseFromLicenseContent = (
40
- licenseContent: string,
41
- ): LicenseType => {
42
- // Normalize the license content by removing extra whitespace and converting to lowercase
43
- const normalizedContent = licenseContent
44
- .toLowerCase()
45
- .replace(/\s+/g, " ")
46
- .trim()
47
-
48
- let bestMatch: { type: LicenseType; ratio: number } = {
49
- type: "unset",
50
- ratio: 0,
51
- }
52
- const matchThreshold = 0.7
53
-
54
- // Check each license type
55
- for (const [licenseType, phrases] of Object.entries(licenseKeyPhrases)) {
56
- const matchedPhrases = phrases.filter((phrase) =>
57
- normalizedContent.includes(phrase.toLowerCase()),
58
- )
59
- const matchRatio = matchedPhrases.length / phrases.length
60
-
61
- if (matchRatio >= matchThreshold && matchRatio > bestMatch.ratio) {
62
- bestMatch = { type: licenseType as LicenseType, ratio: matchRatio }
63
- }
64
- }
65
-
66
- return bestMatch.type
67
- }
@@ -1,65 +0,0 @@
1
- import { FileName } from "@/components/package-port/CodeEditorHeader"
2
-
3
- export const handleManualEditsImport = (
4
- files: Record<string, string>,
5
- updateFileContent: (filename: FileName, content: string) => void,
6
- toast: (options: {
7
- title: string
8
- description: string
9
- variant?: "default" | "destructive"
10
- }) => void,
11
- ) => {
12
- try {
13
- let currentContent = files["index.tsx"]
14
- const importRegex =
15
- /import\s+(?:\*\s+as\s+)?([a-zA-Z_$][\w$]*)\s+from\s+["']\.\/manual-edits\.json["'];?/
16
- const match = importRegex.exec(currentContent)
17
- const importVariableName = match ? match[1] : "manualEdits"
18
-
19
- if (!match) {
20
- currentContent = `import ${importVariableName} from "./manual-edits.json";\n${currentContent}`
21
- }
22
-
23
- const boardRegex = /<board\b[^>]*>/gi
24
- const groupSubcircuitRegex = /<group\b[^>]*\bsubcircuit\b[^>]*>/gi
25
-
26
- let modifiedContent = currentContent.replace(boardRegex, (match) =>
27
- match.includes(`manualEdits={${importVariableName}}`)
28
- ? match
29
- : match.replace(">", ` manualEdits={${importVariableName}}>`),
30
- )
31
-
32
- modifiedContent = modifiedContent.replace(groupSubcircuitRegex, (match) =>
33
- match.includes(`manualEdits={${importVariableName}}`)
34
- ? match
35
- : match.replace(">", ` manualEdits={${importVariableName}}>`),
36
- )
37
-
38
- if (modifiedContent === currentContent) {
39
- toast({
40
- title: "No Manual Edits Applied",
41
- description:
42
- "No applicable <board> or <group subcircuit> tags were found to apply manual edits.",
43
- variant: "destructive",
44
- })
45
- return
46
- }
47
-
48
- updateFileContent("index.tsx", modifiedContent)
49
-
50
- toast({
51
- title: "Manual Edits Imported",
52
- description: "Successfully imported and applied manual edits.",
53
- variant: "default",
54
- })
55
- } catch (error) {
56
- toast({
57
- title: "Import Error",
58
- description:
59
- error instanceof Error
60
- ? error.message
61
- : "Failed to import manual edits. Please check the file and apply manually.",
62
- variant: "destructive",
63
- })
64
- }
65
- }
@@ -1,67 +0,0 @@
1
- import { FileName } from "@/components/package-port/CodeEditorHeader"
2
-
3
- export const handleManualEditsImportWithSupportForMultipleFiles = (
4
- files: Record<string, string>,
5
- updateFileContent: (filename: FileName, content: string) => void,
6
- entrypointFileName: FileName = "index.tsx",
7
- toast: (options: {
8
- title: string
9
- description: string
10
- variant?: "default" | "destructive"
11
- }) => void,
12
- ) => {
13
- try {
14
- let currentContent = files[entrypointFileName]
15
- const importRegex =
16
- /import\s+(?:\*\s+as\s+)?([a-zA-Z_$][\w$]*)\s+from\s+["']\.\/manual-edits\.json["'];?/
17
- const match = importRegex.exec(currentContent)
18
- const importVariableName = match ? match[1] : "manualEdits"
19
-
20
- if (!match) {
21
- currentContent = `import ${importVariableName} from "./manual-edits.json";\n${currentContent}`
22
- }
23
-
24
- const boardRegex = /<board\b[^>]*>/gi
25
- const groupSubcircuitRegex = /<group\b[^>]*\bsubcircuit\b[^>]*>/gi
26
-
27
- let modifiedContent = currentContent.replace(boardRegex, (match) =>
28
- match.includes(`manualEdits={${importVariableName}}`)
29
- ? match
30
- : match.replace(">", ` manualEdits={${importVariableName}}>`),
31
- )
32
-
33
- modifiedContent = modifiedContent.replace(groupSubcircuitRegex, (match) =>
34
- match.includes(`manualEdits={${importVariableName}}`)
35
- ? match
36
- : match.replace(">", ` manualEdits={${importVariableName}}>`),
37
- )
38
-
39
- if (modifiedContent === currentContent) {
40
- toast({
41
- title: "No Manual Edits Applied",
42
- description:
43
- "No applicable <board> or <group subcircuit> tags were found to apply manual edits.",
44
- variant: "destructive",
45
- })
46
- return
47
- }
48
-
49
- updateFileContent("index.tsx", modifiedContent)
50
-
51
- toast({
52
- title: "Manual Edits Imported",
53
- description: "Successfully imported and applied manual edits.",
54
- variant: "default",
55
- })
56
- } catch (error) {
57
- console.log(error)
58
- toast({
59
- title: "Import Error",
60
- description:
61
- error instanceof Error
62
- ? error.message
63
- : "Failed to import manual edits. Please check the file and apply manually.",
64
- variant: "destructive",
65
- })
66
- }
67
- }
@@ -1,50 +0,0 @@
1
- export function normalizeSvgForSquareTile(svg: string): string {
2
- try {
3
- const openTagMatch = svg.match(/<svg[^>]*>/i)
4
- if (!openTagMatch) return svg
5
-
6
- const openTag = openTagMatch[0]
7
-
8
- const hasViewBox = /viewBox="[^"]+"/i.test(openTag)
9
- const widthMatch = openTag.match(/\swidth="([0-9.]+)"/i)
10
- const heightMatch = openTag.match(/\sheight="([0-9.]+)"/i)
11
-
12
- let newOpenTag = openTag
13
-
14
- // Remove explicit width/height so CSS can control sizing
15
- newOpenTag = newOpenTag.replace(/\swidth="[^"]*"/i, "")
16
- newOpenTag = newOpenTag.replace(/\sheight="[^"]*"/i, "")
17
-
18
- // Ensure viewBox is present for proper scaling
19
- if (!hasViewBox && widthMatch && heightMatch) {
20
- const w = widthMatch[1]
21
- const h = heightMatch[1]
22
- newOpenTag = newOpenTag.replace(/<svg/i, `<svg viewBox="0 0 ${w} ${h}"`)
23
- }
24
-
25
- // Force preserveAspectRatio to fit within square without distortion
26
- if (/preserveAspectRatio="[^"]+"/i.test(newOpenTag)) {
27
- newOpenTag = newOpenTag.replace(
28
- /preserveAspectRatio="[^"]+"/i,
29
- 'preserveAspectRatio="xMidYMid meet"',
30
- )
31
- } else {
32
- newOpenTag = newOpenTag.replace(
33
- /<svg(\s|>)/i,
34
- (_m, p1) => `<svg preserveAspectRatio="xMidYMid meet"${p1}`,
35
- )
36
- }
37
-
38
- return svg.replace(openTag, newOpenTag)
39
- } catch {
40
- return svg
41
- }
42
- }
43
-
44
- export function svgToDataUrl(svg: string): string {
45
- try {
46
- return `data:image/svg+xml,${encodeURIComponent(svg)}`
47
- } catch {
48
- return `data:image/svg+xml,${svg}`
49
- }
50
- }
@@ -1,53 +0,0 @@
1
- import type { QueryClient } from "react-query"
2
-
3
- /**
4
- * Populates React Query cache with SSR data to prevent unnecessary API calls
5
- * on initial page load. Should be called after QueryClient creation.
6
- */
7
- export function populateQueryCacheWithSSRData(queryClient: QueryClient) {
8
- if (typeof window === "undefined") return
9
-
10
- const windowAny = window as any
11
- const ssrPackage = windowAny.SSR_PACKAGE
12
- const ssrPackageRelease = windowAny.SSR_PACKAGE_RELEASE
13
- const ssrPackageFiles = windowAny.SSR_PACKAGE_FILES
14
-
15
- if (!ssrPackage || !ssrPackageRelease) return
16
-
17
- // Cache lookups by package name and id
18
- queryClient.setQueryData(["package", ssrPackage.name], ssrPackage)
19
- queryClient.setQueryData(["package", ssrPackage.package_id], ssrPackage)
20
- queryClient.setQueryData(["packages", ssrPackage.package_id], ssrPackage)
21
-
22
- queryClient.setQueryData(
23
- [
24
- "packageRelease",
25
- {
26
- is_latest: true,
27
- package_name: ssrPackage.name,
28
- include_ai_review: true,
29
- },
30
- ],
31
- ssrPackageRelease,
32
- )
33
-
34
- queryClient.setQueryData(
35
- ["packageRelease", { is_latest: true, package_id: ssrPackage.package_id }],
36
- ssrPackageRelease,
37
- )
38
-
39
- queryClient.setQueryData(
40
- [
41
- "packageRelease",
42
- { package_release_id: ssrPackageRelease.package_release_id },
43
- ],
44
- ssrPackageRelease,
45
- )
46
-
47
- if (ssrPackageFiles && ssrPackageRelease.package_release_id) {
48
- queryClient.setQueryData(
49
- ["packageFiles", ssrPackageRelease.package_release_id],
50
- ssrPackageFiles,
51
- )
52
- }
53
- }
@@ -1,17 +0,0 @@
1
- import posthog from "posthog-js"
2
-
3
- if (typeof window !== "undefined") {
4
- if (
5
- !window.location.hostname.includes("localhost") &&
6
- !window.location.hostname.includes("127.0.0.1")
7
- ) {
8
- if (!posthog.__loaded) {
9
- posthog.init("phc_htd8AQjSfVEsFCLQMAiUooG4Q0DKBCjqYuQglc9V3Wo", {
10
- api_host: "https://postpig.tscircuit.com",
11
- person_profiles: "always",
12
- })
13
- }
14
- }
15
- }
16
-
17
- export { posthog }
@@ -1,148 +0,0 @@
1
- import type { QueryKey } from "react-query"
2
- import { posthog } from "./posthog"
3
-
4
- const TARGET_HOSTNAMES = new Set(["api.tscircuit.com"])
5
-
6
- type FailureContext = {
7
- operationType: "query" | "mutation"
8
- queryKey?: QueryKey
9
- mutationKey?: unknown
10
- }
11
-
12
- type RedaxiosConfig = {
13
- url?: string
14
- baseURL?: string
15
- method?: string
16
- }
17
-
18
- type ResponseLike = {
19
- url?: string
20
- status?: number
21
- statusText?: string
22
- config?: RedaxiosConfig
23
- }
24
-
25
- const isPosthogLoaded = () => Boolean((posthog as any)?.__loaded)
26
-
27
- const toUpperCaseMethod = (method?: string) => method?.toUpperCase() ?? "GET"
28
-
29
- const resolveAbsoluteUrl = (url?: string, baseURL?: string) => {
30
- if (!url) return undefined
31
-
32
- try {
33
- if (baseURL) {
34
- return new URL(url, baseURL).toString()
35
- }
36
-
37
- if (typeof window !== "undefined") {
38
- return new URL(url, window.location.origin).toString()
39
- }
40
-
41
- return new URL(url).toString()
42
- } catch (error) {
43
- console.warn("Failed to resolve API failure URL", error)
44
- return undefined
45
- }
46
- }
47
-
48
- const shouldTrackUrl = (resolvedUrl?: string) => {
49
- if (!resolvedUrl) return false
50
-
51
- try {
52
- const { hostname } = new URL(resolvedUrl)
53
- return TARGET_HOSTNAMES.has(hostname)
54
- } catch (error) {
55
- console.warn("Failed to parse URL for API failure tracking", error)
56
- return false
57
- }
58
- }
59
-
60
- const serializeKey = (key?: unknown) => {
61
- if (!key) return undefined
62
-
63
- try {
64
- return JSON.stringify(key)
65
- } catch {
66
- return String(key)
67
- }
68
- }
69
-
70
- const extractFromResponse = (error: unknown): ResponseLike | null => {
71
- if (!error || typeof error !== "object") return null
72
-
73
- const maybeResponse = error as Partial<ResponseLike>
74
- if (typeof maybeResponse.status !== "number" || !("url" in maybeResponse)) {
75
- return null
76
- }
77
-
78
- return {
79
- url: maybeResponse.url,
80
- status: maybeResponse.status,
81
- statusText: maybeResponse.statusText,
82
- config: maybeResponse.config,
83
- }
84
- }
85
-
86
- const extractFromAxiosError = (error: unknown): ResponseLike | null => {
87
- if (!error || typeof error !== "object") return null
88
-
89
- const maybeAxiosError = error as {
90
- response?: ResponseLike
91
- config?: RedaxiosConfig
92
- message?: string
93
- }
94
-
95
- if (!maybeAxiosError.response && !maybeAxiosError.config) {
96
- return null
97
- }
98
-
99
- return {
100
- url: maybeAxiosError.response?.url,
101
- status: maybeAxiosError.response?.status,
102
- statusText: maybeAxiosError.response?.statusText,
103
- config: maybeAxiosError.response?.config ?? maybeAxiosError.config,
104
- }
105
- }
106
-
107
- const captureApiFailure = (
108
- response: ResponseLike,
109
- error: unknown,
110
- context: FailureContext,
111
- ) => {
112
- if (!isPosthogLoaded()) return
113
-
114
- const resolvedUrl =
115
- resolveAbsoluteUrl(response.url, response.config?.baseURL) ??
116
- resolveAbsoluteUrl(response.config?.url, response.config?.baseURL)
117
- if (!shouldTrackUrl(resolvedUrl)) return
118
-
119
- const errorMessage =
120
- error instanceof Error
121
- ? error.message
122
- : typeof error === "string"
123
- ? error
124
- : undefined
125
-
126
- posthog.capture("api_request_failed", {
127
- url: resolvedUrl,
128
- method: toUpperCaseMethod(response.config?.method),
129
- status: response.status,
130
- statusText: response.statusText,
131
- errorMessage,
132
- operationType: context.operationType,
133
- queryKey: serializeKey(context.queryKey),
134
- mutationKey: serializeKey(context.mutationKey),
135
- environment:
136
- typeof window !== "undefined" ? window.location.hostname : undefined,
137
- })
138
- }
139
-
140
- export const trackReactQueryApiFailure = (
141
- error: unknown,
142
- context: FailureContext,
143
- ) => {
144
- const response = extractFromResponse(error) ?? extractFromAxiosError(error)
145
- if (!response) return
146
-
147
- captureApiFailure(response, error, context)
148
- }
package/src/lib/sentry.ts DELETED
@@ -1,14 +0,0 @@
1
- import * as Sentry from "@sentry/react"
2
-
3
- if (
4
- typeof window !== "undefined" &&
5
- import.meta.env.VITE_SENTRY_DSN &&
6
- !window.location.hostname.includes("localhost") &&
7
- !window.location.hostname.includes("127.0.0.1")
8
- ) {
9
- Sentry.init({
10
- dsn: import.meta.env.VITE_SENTRY_DSN,
11
- })
12
- }
13
-
14
- export { Sentry }
@@ -1,12 +0,0 @@
1
- export const blank3dModelTemplate = {
2
- type: "model",
3
- code: `
4
- // Note: Eventually this should have a <jscad> wrapper
5
- export const MyModel = (props: any) => (
6
- <>
7
- {/* <cuboid size={[5, 10, 5]} /> */}
8
- <cube size={1} />
9
- </>
10
- )
11
- `.trim(),
12
- }
@@ -1,20 +0,0 @@
1
- export const blankCircuitBoardTemplate = {
2
- type: "board",
3
- code: `
4
- export default () => (
5
- <board width="10mm" height="10mm">
6
- <resistor
7
- resistance="1k"
8
- footprint="0402"
9
- name="R1"
10
- />
11
- <capacitor
12
- capacitance="1000pF"
13
- footprint="0402"
14
- name="C1"
15
- />
16
- <trace from=".R1 > .pin1" to=".C1 > .pin1" />
17
- </board>
18
- )
19
- `.trim(),
20
- }
@@ -1,29 +0,0 @@
1
- export const blankFootprintTemplate = {
2
- type: "footprint",
3
- code: `
4
- export const MyFootprint = (props: any) => (
5
- <footprint>
6
- <smtpad
7
- shape="rect"
8
- width="0.5mm"
9
- height="0.5mm"
10
- schX={-1}
11
- schY={0}
12
- pcbX={-1}
13
- pcbY={0}
14
- portHints={["1"]}
15
- />
16
- <smtpad
17
- shape="rect"
18
- width="0.5mm"
19
- height="0.5mm"
20
- schX={1}
21
- schY={0}
22
- pcbX={1}
23
- pcbY={0}
24
- portHints={["2"]}
25
- />
26
- </footprint>
27
- )
28
- `.trim(),
29
- }
@@ -1,21 +0,0 @@
1
- export const blankPackageTemplate = {
2
- type: "package",
3
- code: `
4
- import type { ChipProps } from "@tscircuit/props"
5
-
6
- const pinLabels = {
7
- pin1: [],
8
- pin2: [],
9
- pin3: [],
10
- pin4: [],
11
- pin5: [],
12
- pin6: [],
13
- pin7: [],
14
- pin8: [],
15
- } as const
16
-
17
- export const MyChip = (props: ChipProps<typeof pinLabels>) => (
18
- <chip footprint="soic8" pinLabels={pinLabels} {...props} />
19
- )
20
- `.trim(),
21
- }
@@ -1,64 +0,0 @@
1
- export const blinkingLedBoardTemplate = {
2
- type: "board",
3
- code: `
4
- import { useUsbC } from "@tsci/seveibar.smd-usb-c"
5
- import { useRedLed } from "@tsci/seveibar.red-led"
6
- import { useNE555P } from "@tsci/seveibar.a555timer"
7
-
8
- export const MyBlinkingLedCircuit = () => {
9
- const USBC = useUsbC("USBC")
10
- const Led = useRedLed("LED")
11
- const A555Timer = useNE555P("B1")
12
-
13
- return (
14
- <board width="30mm" height="30mm" schAutoLayoutEnabled>
15
- <USBC GND1="net.GND" VBUS1="net.VBUS" pcbX={-10} pcbY={-10} />
16
- <A555Timer
17
- name="B1"
18
- pin8="net.VBUS"
19
- pin1="net.GND"
20
- pin3="net.OUT"
21
- pin2="net.TRIG"
22
- pin6="net.THRES"
23
- pin7="net.DIS"
24
- />
25
- <resistor name="R1" resistance="1K" footprint="0805" pcbX={-8} pcbY={8} />
26
- <resistor
27
- name="R2"
28
- resistance="470K"
29
- footprint="0805"
30
- pcbX={0}
31
- pcbY={-8}
32
- />
33
- <resistor
34
- name="R3"
35
- resistance="1k"
36
- footprint="0805"
37
- pcbX={2.5}
38
- pcbY={8}
39
- />
40
-
41
- <capacitor
42
- name="C1"
43
- capacitance="1uF"
44
- footprint="0805"
45
- pcbX={-2.5}
46
- pcbY={8}
47
- />
48
-
49
- <Led pos="net.OUT" neg="net.GND" pcbX={5} pcbY={10} />
50
-
51
- <trace from=".USBC > .VBUS1" to=".R1 > .left" />
52
- <trace from=".R1 > .right" to=".R2 > .left" />
53
- <trace from=".R2 > .right" to=".C1 > .left" />
54
- <trace from=".C1 > .right" to=".USBC > .GND1" />
55
- <trace from=".B1 > .pin7" to=".R1 > .right" />
56
- <trace from=".B1 > .pin6" to=".R2 > .right" />
57
- <trace from=".B1 > .pin2" to=".R2 > .right" />
58
- <trace from=".B1 > .pin3" to=".R3 > .left" />
59
- <trace from=".R3 > .right" to=".LED > .pos" />
60
- </board>
61
- )
62
- }
63
- `.trim(),
64
- }
@@ -1,22 +0,0 @@
1
- export const usbCLedFlashlightTemplate = {
2
- type: "board",
3
- code: `
4
- import { useRedLed } from "@tsci/seveibar.red-led"
5
- import { usePushButton } from "@tsci/seveibar.push-button"
6
- import { useUsbC } from "@tsci/seveibar.smd-usb-c"
7
-
8
- export default () => {
9
- const USBC = useUsbC("USBC")
10
- const Button = usePushButton("SW1")
11
- const Led = useRedLed("LED")
12
- return (
13
- <board width="12mm" height="30mm" schAutoLayoutEnabled autorouter="auto-cloud">
14
- <USBC GND1="net.GND" GND2="net.GND" pcbY={-10} VBUS1="net.VBUS" VBUS2="net.VBUS" />
15
- <Led neg="net.GND" pcbY={12} />
16
- <Button pcbY={0} pin2=".R1 > .pos" pin3="net.VBUS" />
17
- <resistor name="R1" footprint="0603" resistance="1k" pcbY={7} />
18
- <trace from=".R1 > .neg" to={Led.pos} />
19
- </board>
20
- )
21
- }`.trim(),
22
- }