@tscircuit/fake-snippets 0.0.118 → 0.0.120
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.
- package/bun-tests/fake-snippets-api/routes/bug_reports/create.test.ts +37 -0
- package/bun-tests/fake-snippets-api/routes/bug_reports/upload_file.test.ts +89 -0
- package/bun-tests/fake-snippets-api/routes/packages/get.test.ts +3 -0
- package/bun.lock +2 -2
- package/dist/bundle.js +778 -508
- package/dist/index.d.ts +161 -6
- package/dist/index.js +102 -3
- package/dist/schema.d.ts +225 -7
- package/dist/schema.js +38 -3
- package/fake-snippets-api/lib/db/db-client.ts +98 -0
- package/fake-snippets-api/lib/db/schema.ts +37 -0
- package/fake-snippets-api/lib/public-mapping/public-map-package-release.ts +6 -0
- package/fake-snippets-api/lib/public-mapping/public-map-package.ts +9 -0
- package/fake-snippets-api/routes/api/bug_reports/create.ts +43 -0
- package/fake-snippets-api/routes/api/bug_reports/upload_file.ts +113 -0
- package/package.json +2 -2
- package/src/components/Header.tsx +16 -0
- package/src/components/PackageCard.tsx +7 -4
- package/src/components/PackageSearchResults.tsx +1 -7
- package/src/components/SearchComponent.tsx +64 -53
- package/src/components/TrendingPackagesCarousel.tsx +16 -23
- package/src/components/ViewPackagePage/components/mobile-sidebar.tsx +3 -2
- package/src/components/ViewPackagePage/components/preview-image-squares.tsx +6 -3
- package/src/hooks/use-preview-images.ts +22 -17
- package/src/hooks/useUpdatePackageFilesMutation.ts +8 -0
- package/src/lib/utils/getPackagePreviewImageUrl.ts +15 -0
- package/src/pages/dashboard.tsx +0 -1
- package/src/pages/editor.tsx +12 -9
- package/src/pages/organization-profile.tsx +0 -1
- package/src/pages/package-editor.tsx +13 -9
- package/src/pages/user-profile.tsx +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -270,6 +270,61 @@ declare const orderFileSchema: z.ZodObject<{
|
|
|
270
270
|
content_bytes: Uint8Array<ArrayBuffer> | null;
|
|
271
271
|
}>;
|
|
272
272
|
type OrderFile = z.infer<typeof orderFileSchema>;
|
|
273
|
+
declare const bugReportSchema: z.ZodObject<{
|
|
274
|
+
bug_report_id: z.ZodString;
|
|
275
|
+
reporter_account_id: z.ZodString;
|
|
276
|
+
text: z.ZodNullable<z.ZodString>;
|
|
277
|
+
is_auto_deleted: z.ZodDefault<z.ZodBoolean>;
|
|
278
|
+
delete_at: z.ZodNullable<z.ZodString>;
|
|
279
|
+
created_at: z.ZodString;
|
|
280
|
+
file_count: z.ZodNumber;
|
|
281
|
+
}, "strip", z.ZodTypeAny, {
|
|
282
|
+
created_at: string;
|
|
283
|
+
bug_report_id: string;
|
|
284
|
+
reporter_account_id: string;
|
|
285
|
+
text: string | null;
|
|
286
|
+
is_auto_deleted: boolean;
|
|
287
|
+
delete_at: string | null;
|
|
288
|
+
file_count: number;
|
|
289
|
+
}, {
|
|
290
|
+
created_at: string;
|
|
291
|
+
bug_report_id: string;
|
|
292
|
+
reporter_account_id: string;
|
|
293
|
+
text: string | null;
|
|
294
|
+
delete_at: string | null;
|
|
295
|
+
file_count: number;
|
|
296
|
+
is_auto_deleted?: boolean | undefined;
|
|
297
|
+
}>;
|
|
298
|
+
type BugReport = z.infer<typeof bugReportSchema>;
|
|
299
|
+
declare const bugReportFileSchema: z.ZodObject<{
|
|
300
|
+
bug_report_file_id: z.ZodString;
|
|
301
|
+
bug_report_id: z.ZodString;
|
|
302
|
+
file_path: z.ZodString;
|
|
303
|
+
content_mimetype: z.ZodString;
|
|
304
|
+
is_text: z.ZodBoolean;
|
|
305
|
+
created_at: z.ZodString;
|
|
306
|
+
content_text: z.ZodNullable<z.ZodString>;
|
|
307
|
+
content_bytes: z.ZodNullable<z.ZodType<Uint8Array<ArrayBuffer>, z.ZodTypeDef, Uint8Array<ArrayBuffer>>>;
|
|
308
|
+
}, "strip", z.ZodTypeAny, {
|
|
309
|
+
created_at: string;
|
|
310
|
+
content_text: string | null;
|
|
311
|
+
content_bytes: Uint8Array<ArrayBuffer> | null;
|
|
312
|
+
bug_report_id: string;
|
|
313
|
+
bug_report_file_id: string;
|
|
314
|
+
file_path: string;
|
|
315
|
+
content_mimetype: string;
|
|
316
|
+
is_text: boolean;
|
|
317
|
+
}, {
|
|
318
|
+
created_at: string;
|
|
319
|
+
content_text: string | null;
|
|
320
|
+
content_bytes: Uint8Array<ArrayBuffer> | null;
|
|
321
|
+
bug_report_id: string;
|
|
322
|
+
bug_report_file_id: string;
|
|
323
|
+
file_path: string;
|
|
324
|
+
content_mimetype: string;
|
|
325
|
+
is_text: boolean;
|
|
326
|
+
}>;
|
|
327
|
+
type BugReportFile = z.infer<typeof bugReportFileSchema>;
|
|
273
328
|
declare const orderQuoteSchema: z.ZodObject<{
|
|
274
329
|
order_quote_id: z.ZodString;
|
|
275
330
|
account_id: z.ZodNullable<z.ZodString>;
|
|
@@ -538,6 +593,9 @@ declare const packageReleaseSchema: z.ZodObject<{
|
|
|
538
593
|
branch_name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
539
594
|
commit_message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
540
595
|
commit_author: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
596
|
+
pcb_preview_image_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
597
|
+
sch_preview_image_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
598
|
+
cad_preview_image_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
541
599
|
}, "strip", z.ZodTypeAny, {
|
|
542
600
|
package_release_id: string;
|
|
543
601
|
created_at: string;
|
|
@@ -561,6 +619,9 @@ declare const packageReleaseSchema: z.ZodObject<{
|
|
|
561
619
|
image_generation_is_stale: boolean;
|
|
562
620
|
ai_review_requested: boolean;
|
|
563
621
|
is_pr_preview: boolean;
|
|
622
|
+
pcb_preview_image_url: string | null;
|
|
623
|
+
sch_preview_image_url: string | null;
|
|
624
|
+
cad_preview_image_url: string | null;
|
|
564
625
|
ai_review_text?: string | null | undefined;
|
|
565
626
|
commit_sha?: string | null | undefined;
|
|
566
627
|
license?: string | null | undefined;
|
|
@@ -634,6 +695,9 @@ declare const packageReleaseSchema: z.ZodObject<{
|
|
|
634
695
|
branch_name?: string | null | undefined;
|
|
635
696
|
commit_message?: string | null | undefined;
|
|
636
697
|
commit_author?: string | null | undefined;
|
|
698
|
+
pcb_preview_image_url?: string | null | undefined;
|
|
699
|
+
sch_preview_image_url?: string | null | undefined;
|
|
700
|
+
cad_preview_image_url?: string | null | undefined;
|
|
637
701
|
}>;
|
|
638
702
|
type PackageRelease = z.infer<typeof packageReleaseSchema>;
|
|
639
703
|
declare const packageFileSchema: z.ZodObject<{
|
|
@@ -648,8 +712,8 @@ declare const packageFileSchema: z.ZodObject<{
|
|
|
648
712
|
}, "strip", z.ZodTypeAny, {
|
|
649
713
|
package_release_id: string;
|
|
650
714
|
created_at: string;
|
|
651
|
-
package_file_id: string;
|
|
652
715
|
file_path: string;
|
|
716
|
+
package_file_id: string;
|
|
653
717
|
content_text?: string | null | undefined;
|
|
654
718
|
content_mimetype?: string | null | undefined;
|
|
655
719
|
is_release_tarball?: boolean | undefined;
|
|
@@ -657,8 +721,8 @@ declare const packageFileSchema: z.ZodObject<{
|
|
|
657
721
|
}, {
|
|
658
722
|
package_release_id: string;
|
|
659
723
|
created_at: string;
|
|
660
|
-
package_file_id: string;
|
|
661
724
|
file_path: string;
|
|
725
|
+
package_file_id: string;
|
|
662
726
|
content_text?: string | null | undefined;
|
|
663
727
|
content_mimetype?: string | null | undefined;
|
|
664
728
|
is_release_tarball?: boolean | undefined;
|
|
@@ -698,6 +762,9 @@ declare const packageSchema: z.ZodObject<{
|
|
|
698
762
|
default_view: z.ZodOptional<z.ZodDefault<z.ZodEnum<["files", "3d", "pcb", "schematic"]>>>;
|
|
699
763
|
allow_pr_previews: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
700
764
|
is_starred: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
765
|
+
latest_pcb_preview_image_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
766
|
+
latest_sch_preview_image_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
767
|
+
latest_cad_preview_image_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
701
768
|
}, "strip", z.ZodTypeAny, {
|
|
702
769
|
name: string;
|
|
703
770
|
unscoped_name: string;
|
|
@@ -731,6 +798,9 @@ declare const packageSchema: z.ZodObject<{
|
|
|
731
798
|
latest_license?: string | null | undefined;
|
|
732
799
|
default_view?: "files" | "3d" | "pcb" | "schematic" | undefined;
|
|
733
800
|
allow_pr_previews?: boolean | undefined;
|
|
801
|
+
latest_pcb_preview_image_url?: string | null | undefined;
|
|
802
|
+
latest_sch_preview_image_url?: string | null | undefined;
|
|
803
|
+
latest_cad_preview_image_url?: string | null | undefined;
|
|
734
804
|
}, {
|
|
735
805
|
name: string;
|
|
736
806
|
unscoped_name: string;
|
|
@@ -764,6 +834,9 @@ declare const packageSchema: z.ZodObject<{
|
|
|
764
834
|
latest_package_release_fs_sha?: string | null | undefined;
|
|
765
835
|
default_view?: "files" | "3d" | "pcb" | "schematic" | undefined;
|
|
766
836
|
allow_pr_previews?: boolean | undefined;
|
|
837
|
+
latest_pcb_preview_image_url?: string | null | undefined;
|
|
838
|
+
latest_sch_preview_image_url?: string | null | undefined;
|
|
839
|
+
latest_cad_preview_image_url?: string | null | undefined;
|
|
767
840
|
}>;
|
|
768
841
|
type Package = z.infer<typeof packageSchema>;
|
|
769
842
|
declare const jlcpcbOrderStateSchema: z.ZodObject<{
|
|
@@ -1044,6 +1117,9 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1044
1117
|
image_generation_is_stale: boolean;
|
|
1045
1118
|
ai_review_requested: boolean;
|
|
1046
1119
|
is_pr_preview: boolean;
|
|
1120
|
+
pcb_preview_image_url: string | null;
|
|
1121
|
+
sch_preview_image_url: string | null;
|
|
1122
|
+
cad_preview_image_url: string | null;
|
|
1047
1123
|
ai_review_text?: string | null | undefined;
|
|
1048
1124
|
commit_sha?: string | null | undefined;
|
|
1049
1125
|
license?: string | null | undefined;
|
|
@@ -1073,8 +1149,8 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1073
1149
|
packageFiles: {
|
|
1074
1150
|
package_release_id: string;
|
|
1075
1151
|
created_at: string;
|
|
1076
|
-
package_file_id: string;
|
|
1077
1152
|
file_path: string;
|
|
1153
|
+
package_file_id: string;
|
|
1078
1154
|
content_text?: string | null | undefined;
|
|
1079
1155
|
content_mimetype?: string | null | undefined;
|
|
1080
1156
|
is_release_tarball?: boolean | undefined;
|
|
@@ -1145,6 +1221,9 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1145
1221
|
latest_license?: string | null | undefined;
|
|
1146
1222
|
default_view?: "files" | "3d" | "pcb" | "schematic" | undefined;
|
|
1147
1223
|
allow_pr_previews?: boolean | undefined;
|
|
1224
|
+
latest_pcb_preview_image_url?: string | null | undefined;
|
|
1225
|
+
latest_sch_preview_image_url?: string | null | undefined;
|
|
1226
|
+
latest_cad_preview_image_url?: string | null | undefined;
|
|
1148
1227
|
}[];
|
|
1149
1228
|
orders: {
|
|
1150
1229
|
error: z.objectOutputType<{
|
|
@@ -1329,7 +1408,26 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1329
1408
|
preview_url?: string | null | undefined;
|
|
1330
1409
|
build_logs?: string | null | undefined;
|
|
1331
1410
|
}[];
|
|
1332
|
-
|
|
1411
|
+
bugReports: {
|
|
1412
|
+
created_at: string;
|
|
1413
|
+
bug_report_id: string;
|
|
1414
|
+
reporter_account_id: string;
|
|
1415
|
+
text: string | null;
|
|
1416
|
+
is_auto_deleted: boolean;
|
|
1417
|
+
delete_at: string | null;
|
|
1418
|
+
file_count: number;
|
|
1419
|
+
}[];
|
|
1420
|
+
bugReportFiles: {
|
|
1421
|
+
created_at: string;
|
|
1422
|
+
content_text: string | null;
|
|
1423
|
+
content_bytes: Uint8Array<ArrayBuffer> | null;
|
|
1424
|
+
bug_report_id: string;
|
|
1425
|
+
bug_report_file_id: string;
|
|
1426
|
+
file_path: string;
|
|
1427
|
+
content_mimetype: string;
|
|
1428
|
+
is_text: boolean;
|
|
1429
|
+
}[];
|
|
1430
|
+
}, "addOrder" | "getOrderById" | "getOrderFilesByOrderId" | "addOrderQuote" | "getOrderQuoteById" | "getJlcpcbOrderStatesByOrderId" | "getJlcpcbOrderStepRunsByJlcpcbOrderStateId" | "updateOrder" | "addJlcpcbOrderState" | "updateJlcpcbOrderState" | "addOrderFile" | "getOrderFileById" | "addBugReport" | "getBugReportById" | "addBugReportFile" | "getBugReportFilesByBugReportId" | "addAccount" | "addAccountPackage" | "getAccountPackageById" | "updateAccountPackage" | "deleteAccountPackage" | "addSnippet" | "getLatestSnippets" | "getTrendingSnippets" | "getPackagesByAuthor" | "getSnippetByAuthorAndName" | "updateSnippet" | "getSnippetById" | "searchSnippets" | "searchPackages" | "searchAccounts" | "deleteSnippet" | "addSession" | "getSessions" | "createLoginPage" | "getLoginPage" | "updateLoginPage" | "getAccount" | "updateAccount" | "createSession" | "addStar" | "removeStar" | "hasStarred" | "addPackage" | "updatePackage" | "getPackageById" | "getPackageReleaseById" | "addPackageRelease" | "updatePackageRelease" | "deletePackageFile" | "addPackageFile" | "updatePackageFile" | "getStarCount" | "getPackageFilesByReleaseId" | "updatePackageReleaseFsSha" | "addAiReview" | "updateAiReview" | "getAiReviewById" | "listAiReviews" | "addDatasheet" | "getDatasheetById" | "getDatasheetByChipName" | "listDatasheets" | "updateDatasheet" | "addPackageBuild" | "getPackageBuildById" | "getPackageBuildsByReleaseId" | "updatePackageBuild" | "addOrganization" | "getOrgs" | "getOrg" | "addOrganizationAccount" | "getOrganizationAccount" | "getOrganizationAccounts" | "removeOrganizationAccount" | "updateOrganization"> & {
|
|
1333
1431
|
addOrder: (order: Omit<Order, "order_id">) => Order;
|
|
1334
1432
|
getOrderById: (orderId: string) => Order | undefined;
|
|
1335
1433
|
getOrderFilesByOrderId: (orderId: string) => OrderFile[];
|
|
@@ -1346,6 +1444,22 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1346
1444
|
updateJlcpcbOrderState: (orderId: string, updates: Partial<JlcpcbOrderState>) => void;
|
|
1347
1445
|
addOrderFile: (orderFile: Omit<OrderFile, "order_file_id">) => OrderFile;
|
|
1348
1446
|
getOrderFileById: (orderFileId: string) => OrderFile | undefined;
|
|
1447
|
+
addBugReport: ({ reporter_account_id, text, is_auto_deleted, delete_at, }: {
|
|
1448
|
+
reporter_account_id: string;
|
|
1449
|
+
text?: string | null;
|
|
1450
|
+
is_auto_deleted?: boolean;
|
|
1451
|
+
delete_at?: string | null;
|
|
1452
|
+
}) => BugReport;
|
|
1453
|
+
getBugReportById: (bugReportId: string) => BugReport | undefined;
|
|
1454
|
+
addBugReportFile: ({ bug_report_id, file_path, content_mimetype, is_text, content_text, content_bytes, }: {
|
|
1455
|
+
bug_report_id: string;
|
|
1456
|
+
file_path: string;
|
|
1457
|
+
content_mimetype: string;
|
|
1458
|
+
is_text: boolean;
|
|
1459
|
+
content_text: string | null;
|
|
1460
|
+
content_bytes: Uint8Array | null;
|
|
1461
|
+
}) => BugReportFile;
|
|
1462
|
+
getBugReportFilesByBugReportId: (bugReportId: string) => BugReportFile[];
|
|
1349
1463
|
addAccount: (account: Omit<Account, "account_id" | "is_tscircuit_staff"> & Partial<Pick<Account, "account_id" | "is_tscircuit_staff">>) => {
|
|
1350
1464
|
is_tscircuit_staff: boolean;
|
|
1351
1465
|
github_username: string;
|
|
@@ -1558,6 +1672,9 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1558
1672
|
image_generation_is_stale: boolean;
|
|
1559
1673
|
ai_review_requested: boolean;
|
|
1560
1674
|
is_pr_preview: boolean;
|
|
1675
|
+
pcb_preview_image_url: string | null;
|
|
1676
|
+
sch_preview_image_url: string | null;
|
|
1677
|
+
cad_preview_image_url: string | null;
|
|
1561
1678
|
ai_review_text?: string | null | undefined;
|
|
1562
1679
|
commit_sha?: string | null | undefined;
|
|
1563
1680
|
license?: string | null | undefined;
|
|
@@ -1587,8 +1704,8 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1587
1704
|
packageFiles: {
|
|
1588
1705
|
package_release_id: string;
|
|
1589
1706
|
created_at: string;
|
|
1590
|
-
package_file_id: string;
|
|
1591
1707
|
file_path: string;
|
|
1708
|
+
package_file_id: string;
|
|
1592
1709
|
content_text?: string | null | undefined;
|
|
1593
1710
|
content_mimetype?: string | null | undefined;
|
|
1594
1711
|
is_release_tarball?: boolean | undefined;
|
|
@@ -1659,6 +1776,9 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1659
1776
|
latest_license?: string | null | undefined;
|
|
1660
1777
|
default_view?: "files" | "3d" | "pcb" | "schematic" | undefined;
|
|
1661
1778
|
allow_pr_previews?: boolean | undefined;
|
|
1779
|
+
latest_pcb_preview_image_url?: string | null | undefined;
|
|
1780
|
+
latest_sch_preview_image_url?: string | null | undefined;
|
|
1781
|
+
latest_cad_preview_image_url?: string | null | undefined;
|
|
1662
1782
|
}[];
|
|
1663
1783
|
orders: {
|
|
1664
1784
|
error: z.objectOutputType<{
|
|
@@ -1843,7 +1963,26 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1843
1963
|
preview_url?: string | null | undefined;
|
|
1844
1964
|
build_logs?: string | null | undefined;
|
|
1845
1965
|
}[];
|
|
1846
|
-
|
|
1966
|
+
bugReports: {
|
|
1967
|
+
created_at: string;
|
|
1968
|
+
bug_report_id: string;
|
|
1969
|
+
reporter_account_id: string;
|
|
1970
|
+
text: string | null;
|
|
1971
|
+
is_auto_deleted: boolean;
|
|
1972
|
+
delete_at: string | null;
|
|
1973
|
+
file_count: number;
|
|
1974
|
+
}[];
|
|
1975
|
+
bugReportFiles: {
|
|
1976
|
+
created_at: string;
|
|
1977
|
+
content_text: string | null;
|
|
1978
|
+
content_bytes: Uint8Array<ArrayBuffer> | null;
|
|
1979
|
+
bug_report_id: string;
|
|
1980
|
+
bug_report_file_id: string;
|
|
1981
|
+
file_path: string;
|
|
1982
|
+
content_mimetype: string;
|
|
1983
|
+
is_text: boolean;
|
|
1984
|
+
}[];
|
|
1985
|
+
}, "addOrder" | "getOrderById" | "getOrderFilesByOrderId" | "addOrderQuote" | "getOrderQuoteById" | "getJlcpcbOrderStatesByOrderId" | "getJlcpcbOrderStepRunsByJlcpcbOrderStateId" | "updateOrder" | "addJlcpcbOrderState" | "updateJlcpcbOrderState" | "addOrderFile" | "getOrderFileById" | "addBugReport" | "getBugReportById" | "addBugReportFile" | "getBugReportFilesByBugReportId" | "addAccount" | "addAccountPackage" | "getAccountPackageById" | "updateAccountPackage" | "deleteAccountPackage" | "addSnippet" | "getLatestSnippets" | "getTrendingSnippets" | "getPackagesByAuthor" | "getSnippetByAuthorAndName" | "updateSnippet" | "getSnippetById" | "searchSnippets" | "searchPackages" | "searchAccounts" | "deleteSnippet" | "addSession" | "getSessions" | "createLoginPage" | "getLoginPage" | "updateLoginPage" | "getAccount" | "updateAccount" | "createSession" | "addStar" | "removeStar" | "hasStarred" | "addPackage" | "updatePackage" | "getPackageById" | "getPackageReleaseById" | "addPackageRelease" | "updatePackageRelease" | "deletePackageFile" | "addPackageFile" | "updatePackageFile" | "getStarCount" | "getPackageFilesByReleaseId" | "updatePackageReleaseFsSha" | "addAiReview" | "updateAiReview" | "getAiReviewById" | "listAiReviews" | "addDatasheet" | "getDatasheetById" | "getDatasheetByChipName" | "listDatasheets" | "updateDatasheet" | "addPackageBuild" | "getPackageBuildById" | "getPackageBuildsByReleaseId" | "updatePackageBuild" | "addOrganization" | "getOrgs" | "getOrg" | "addOrganizationAccount" | "getOrganizationAccount" | "getOrganizationAccounts" | "removeOrganizationAccount" | "updateOrganization"> & {
|
|
1847
1986
|
addOrder: (order: Omit<Order, "order_id">) => Order;
|
|
1848
1987
|
getOrderById: (orderId: string) => Order | undefined;
|
|
1849
1988
|
getOrderFilesByOrderId: (orderId: string) => OrderFile[];
|
|
@@ -1860,6 +1999,22 @@ declare const createDatabase: ({ seed }?: {
|
|
|
1860
1999
|
updateJlcpcbOrderState: (orderId: string, updates: Partial<JlcpcbOrderState>) => void;
|
|
1861
2000
|
addOrderFile: (orderFile: Omit<OrderFile, "order_file_id">) => OrderFile;
|
|
1862
2001
|
getOrderFileById: (orderFileId: string) => OrderFile | undefined;
|
|
2002
|
+
addBugReport: ({ reporter_account_id, text, is_auto_deleted, delete_at, }: {
|
|
2003
|
+
reporter_account_id: string;
|
|
2004
|
+
text?: string | null;
|
|
2005
|
+
is_auto_deleted?: boolean;
|
|
2006
|
+
delete_at?: string | null;
|
|
2007
|
+
}) => BugReport;
|
|
2008
|
+
getBugReportById: (bugReportId: string) => BugReport | undefined;
|
|
2009
|
+
addBugReportFile: ({ bug_report_id, file_path, content_mimetype, is_text, content_text, content_bytes, }: {
|
|
2010
|
+
bug_report_id: string;
|
|
2011
|
+
file_path: string;
|
|
2012
|
+
content_mimetype: string;
|
|
2013
|
+
is_text: boolean;
|
|
2014
|
+
content_text: string | null;
|
|
2015
|
+
content_bytes: Uint8Array | null;
|
|
2016
|
+
}) => BugReportFile;
|
|
2017
|
+
getBugReportFilesByBugReportId: (bugReportId: string) => BugReportFile[];
|
|
1863
2018
|
addAccount: (account: Omit<Account, "account_id" | "is_tscircuit_staff"> & Partial<Pick<Account, "account_id" | "is_tscircuit_staff">>) => {
|
|
1864
2019
|
is_tscircuit_staff: boolean;
|
|
1865
2020
|
github_username: string;
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
// fake-snippets-api/lib/db/db-client.ts
|
|
2
|
+
import { randomUUID } from "crypto";
|
|
2
3
|
import { hoist } from "zustand-hoist";
|
|
3
4
|
import { createStore } from "zustand/vanilla";
|
|
4
5
|
import { combine } from "zustand/middleware";
|
|
@@ -92,6 +93,29 @@ var orderFileSchema = z.object({
|
|
|
92
93
|
content_text: z.string().nullable(),
|
|
93
94
|
content_bytes: z.instanceof(Uint8Array).nullable()
|
|
94
95
|
});
|
|
96
|
+
var bugReportSchema = z.object({
|
|
97
|
+
bug_report_id: z.string().uuid(),
|
|
98
|
+
reporter_account_id: z.string(),
|
|
99
|
+
text: z.string().nullable(),
|
|
100
|
+
is_auto_deleted: z.boolean().default(false),
|
|
101
|
+
delete_at: z.string().datetime().nullable(),
|
|
102
|
+
created_at: z.string().datetime(),
|
|
103
|
+
file_count: z.number().int()
|
|
104
|
+
});
|
|
105
|
+
var bugReportFileSchema = z.object({
|
|
106
|
+
bug_report_file_id: z.string().uuid(),
|
|
107
|
+
bug_report_id: z.string().uuid(),
|
|
108
|
+
file_path: z.string(),
|
|
109
|
+
content_mimetype: z.string(),
|
|
110
|
+
is_text: z.boolean(),
|
|
111
|
+
created_at: z.string().datetime(),
|
|
112
|
+
content_text: z.string().nullable(),
|
|
113
|
+
content_bytes: z.instanceof(Uint8Array).nullable()
|
|
114
|
+
});
|
|
115
|
+
var bugReportFileResponseSchema = bugReportFileSchema.omit({
|
|
116
|
+
content_text: true,
|
|
117
|
+
content_bytes: true
|
|
118
|
+
});
|
|
95
119
|
var shippingOptionSchema = z.object({
|
|
96
120
|
carrier: z.string(),
|
|
97
121
|
service: z.string(),
|
|
@@ -228,7 +252,11 @@ var packageReleaseSchema = z.object({
|
|
|
228
252
|
latest_package_build_id: z.string().nullable().optional(),
|
|
229
253
|
branch_name: z.string().nullable().optional(),
|
|
230
254
|
commit_message: z.string().nullable().optional(),
|
|
231
|
-
commit_author: z.string().nullable().optional()
|
|
255
|
+
commit_author: z.string().nullable().optional(),
|
|
256
|
+
// Preview images url
|
|
257
|
+
pcb_preview_image_url: z.string().nullable().default(null),
|
|
258
|
+
sch_preview_image_url: z.string().nullable().default(null),
|
|
259
|
+
cad_preview_image_url: z.string().nullable().default(null)
|
|
232
260
|
});
|
|
233
261
|
var packageFileSchema = z.object({
|
|
234
262
|
package_file_id: z.string(),
|
|
@@ -272,7 +300,10 @@ var packageSchema = z.object({
|
|
|
272
300
|
latest_package_release_fs_sha: z.string().nullable().default(null),
|
|
273
301
|
default_view: z.enum(["files", "3d", "pcb", "schematic"]).default("files").optional(),
|
|
274
302
|
allow_pr_previews: z.boolean().default(false).optional(),
|
|
275
|
-
is_starred: z.boolean().default(false).optional()
|
|
303
|
+
is_starred: z.boolean().default(false).optional(),
|
|
304
|
+
latest_pcb_preview_image_url: z.string().nullable().optional(),
|
|
305
|
+
latest_sch_preview_image_url: z.string().nullable().optional(),
|
|
306
|
+
latest_cad_preview_image_url: z.string().nullable().optional()
|
|
276
307
|
});
|
|
277
308
|
var jlcpcbOrderStateSchema = z.object({
|
|
278
309
|
jlcpcb_order_state_id: z.string(),
|
|
@@ -390,7 +421,9 @@ var databaseSchema = z.object({
|
|
|
390
421
|
aiReviews: z.array(aiReviewSchema).default([]),
|
|
391
422
|
datasheets: z.array(datasheetSchema).default([]),
|
|
392
423
|
githubInstallations: z.array(githubInstallationSchema).default([]),
|
|
393
|
-
packageBuilds: z.array(packageBuildSchema).default([])
|
|
424
|
+
packageBuilds: z.array(packageBuildSchema).default([]),
|
|
425
|
+
bugReports: z.array(bugReportSchema).default([]),
|
|
426
|
+
bugReportFiles: z.array(bugReportFileSchema).default([])
|
|
394
427
|
});
|
|
395
428
|
|
|
396
429
|
// fake-snippets-api/lib/db/autoload-dev-packages.ts
|
|
@@ -2510,6 +2543,69 @@ var initializer = combine(databaseSchema.parse({}), (set, get) => ({
|
|
|
2510
2543
|
const state = get();
|
|
2511
2544
|
return state.orderFiles.find((file) => file.order_file_id === orderFileId);
|
|
2512
2545
|
},
|
|
2546
|
+
addBugReport: ({
|
|
2547
|
+
reporter_account_id,
|
|
2548
|
+
text,
|
|
2549
|
+
is_auto_deleted,
|
|
2550
|
+
delete_at
|
|
2551
|
+
}) => {
|
|
2552
|
+
const normalizedIsAutoDeleted = Boolean(is_auto_deleted);
|
|
2553
|
+
if (normalizedIsAutoDeleted && !delete_at) {
|
|
2554
|
+
throw new Error("delete_at is required when is_auto_deleted is true");
|
|
2555
|
+
}
|
|
2556
|
+
const normalizedDeleteAt = normalizedIsAutoDeleted ? delete_at ?? null : null;
|
|
2557
|
+
const bugReport = bugReportSchema.parse({
|
|
2558
|
+
bug_report_id: randomUUID(),
|
|
2559
|
+
reporter_account_id,
|
|
2560
|
+
text: text ?? null,
|
|
2561
|
+
is_auto_deleted: normalizedIsAutoDeleted,
|
|
2562
|
+
delete_at: normalizedDeleteAt,
|
|
2563
|
+
created_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
2564
|
+
file_count: 0
|
|
2565
|
+
});
|
|
2566
|
+
set((state) => ({
|
|
2567
|
+
bugReports: [...state.bugReports, bugReport]
|
|
2568
|
+
}));
|
|
2569
|
+
return bugReport;
|
|
2570
|
+
},
|
|
2571
|
+
getBugReportById: (bugReportId) => {
|
|
2572
|
+
const state = get();
|
|
2573
|
+
return state.bugReports.find(
|
|
2574
|
+
(bugReport) => bugReport.bug_report_id === bugReportId
|
|
2575
|
+
);
|
|
2576
|
+
},
|
|
2577
|
+
addBugReportFile: ({
|
|
2578
|
+
bug_report_id,
|
|
2579
|
+
file_path,
|
|
2580
|
+
content_mimetype,
|
|
2581
|
+
is_text,
|
|
2582
|
+
content_text,
|
|
2583
|
+
content_bytes
|
|
2584
|
+
}) => {
|
|
2585
|
+
const bugReportFile = bugReportFileSchema.parse({
|
|
2586
|
+
bug_report_file_id: randomUUID(),
|
|
2587
|
+
bug_report_id,
|
|
2588
|
+
file_path,
|
|
2589
|
+
content_mimetype,
|
|
2590
|
+
is_text,
|
|
2591
|
+
created_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
2592
|
+
content_text,
|
|
2593
|
+
content_bytes
|
|
2594
|
+
});
|
|
2595
|
+
set((state) => ({
|
|
2596
|
+
bugReportFiles: [...state.bugReportFiles, bugReportFile],
|
|
2597
|
+
bugReports: state.bugReports.map(
|
|
2598
|
+
(bugReport) => bugReport.bug_report_id === bug_report_id ? { ...bugReport, file_count: bugReport.file_count + 1 } : bugReport
|
|
2599
|
+
)
|
|
2600
|
+
}));
|
|
2601
|
+
return bugReportFile;
|
|
2602
|
+
},
|
|
2603
|
+
getBugReportFilesByBugReportId: (bugReportId) => {
|
|
2604
|
+
const state = get();
|
|
2605
|
+
return state.bugReportFiles.filter(
|
|
2606
|
+
(file) => file.bug_report_id === bugReportId
|
|
2607
|
+
);
|
|
2608
|
+
},
|
|
2513
2609
|
addAccount: (account) => {
|
|
2514
2610
|
const newAccount = {
|
|
2515
2611
|
account_id: account.account_id || `account_${get().idCounter + 1}`,
|
|
@@ -3309,6 +3405,9 @@ var initializer = combine(databaseSchema.parse({}), (set, get) => ({
|
|
|
3309
3405
|
const newPackage = {
|
|
3310
3406
|
package_id: `package_${timestamp}`,
|
|
3311
3407
|
github_repo_full_name: null,
|
|
3408
|
+
latest_pcb_preview_image_url: _package.latest_pcb_preview_image_url ?? `/api/packages/images/${_package.name}`,
|
|
3409
|
+
latest_cad_preview_image_url: _package.latest_cad_preview_image_url ?? `/api/packages/images/${_package.name}`,
|
|
3410
|
+
latest_sch_preview_image_url: _package.latest_sch_preview_image_url ?? `/api/packages/images/${_package.name}`,
|
|
3312
3411
|
..._package
|
|
3313
3412
|
};
|
|
3314
3413
|
set((state) => ({
|