source: database/migrations/meta/0000_snapshot.json@ e03e6fb

main
Last change on this file since e03e6fb was e03e6fb, checked in by Tome <gjorgievtome@…>, 5 months ago

Fix missing attribute in buildComponents relation

  • Property mode set to 100644
File size: 39.4 KB
Line 
1{
2 "id": "d1ab4ce8-e387-4d74-8d5b-511fdbe0a032",
3 "prevId": "00000000-0000-0000-0000-000000000000",
4 "version": "7",
5 "dialect": "postgresql",
6 "tables": {
7 "public.build_component": {
8 "name": "build_component",
9 "schema": "",
10 "columns": {
11 "build_id": {
12 "name": "build_id",
13 "type": "integer",
14 "primaryKey": false,
15 "notNull": true
16 },
17 "component_id": {
18 "name": "component_id",
19 "type": "integer",
20 "primaryKey": false,
21 "notNull": true
22 },
23 "num_components": {
24 "name": "num_components",
25 "type": "integer",
26 "primaryKey": false,
27 "notNull": true,
28 "default": 1
29 }
30 },
31 "indexes": {},
32 "foreignKeys": {
33 "build_component_build_id_build_id_fk": {
34 "name": "build_component_build_id_build_id_fk",
35 "tableFrom": "build_component",
36 "tableTo": "build",
37 "columnsFrom": [
38 "build_id"
39 ],
40 "columnsTo": [
41 "id"
42 ],
43 "onDelete": "cascade",
44 "onUpdate": "cascade"
45 },
46 "build_component_component_id_components_id_fk": {
47 "name": "build_component_component_id_components_id_fk",
48 "tableFrom": "build_component",
49 "tableTo": "components",
50 "columnsFrom": [
51 "component_id"
52 ],
53 "columnsTo": [
54 "id"
55 ],
56 "onDelete": "cascade",
57 "onUpdate": "cascade"
58 }
59 },
60 "compositePrimaryKeys": {
61 "build_component_build_id_component_id_pk": {
62 "name": "build_component_build_id_component_id_pk",
63 "columns": [
64 "build_id",
65 "component_id"
66 ]
67 }
68 },
69 "uniqueConstraints": {},
70 "policies": {},
71 "checkConstraints": {},
72 "isRLSEnabled": false
73 },
74 "public.build": {
75 "name": "build",
76 "schema": "",
77 "columns": {
78 "id": {
79 "name": "id",
80 "type": "serial",
81 "primaryKey": true,
82 "notNull": true
83 },
84 "user_id": {
85 "name": "user_id",
86 "type": "integer",
87 "primaryKey": false,
88 "notNull": true
89 },
90 "name": {
91 "name": "name",
92 "type": "text",
93 "primaryKey": false,
94 "notNull": true
95 },
96 "created_at": {
97 "name": "created_at",
98 "type": "date",
99 "primaryKey": false,
100 "notNull": true
101 },
102 "description": {
103 "name": "description",
104 "type": "text",
105 "primaryKey": false,
106 "notNull": false
107 },
108 "total_price": {
109 "name": "total_price",
110 "type": "numeric",
111 "primaryKey": false,
112 "notNull": true
113 },
114 "is_approved": {
115 "name": "is_approved",
116 "type": "boolean",
117 "primaryKey": false,
118 "notNull": true
119 }
120 },
121 "indexes": {},
122 "foreignKeys": {
123 "build_user_id_users_id_fk": {
124 "name": "build_user_id_users_id_fk",
125 "tableFrom": "build",
126 "tableTo": "users",
127 "columnsFrom": [
128 "user_id"
129 ],
130 "columnsTo": [
131 "id"
132 ],
133 "onDelete": "cascade",
134 "onUpdate": "cascade"
135 }
136 },
137 "compositePrimaryKeys": {},
138 "uniqueConstraints": {},
139 "policies": {},
140 "checkConstraints": {},
141 "isRLSEnabled": false
142 },
143 "public.favorite_build": {
144 "name": "favorite_build",
145 "schema": "",
146 "columns": {
147 "build_id": {
148 "name": "build_id",
149 "type": "integer",
150 "primaryKey": false,
151 "notNull": true
152 },
153 "user_id": {
154 "name": "user_id",
155 "type": "integer",
156 "primaryKey": false,
157 "notNull": true
158 }
159 },
160 "indexes": {},
161 "foreignKeys": {
162 "favorite_build_build_id_build_id_fk": {
163 "name": "favorite_build_build_id_build_id_fk",
164 "tableFrom": "favorite_build",
165 "tableTo": "build",
166 "columnsFrom": [
167 "build_id"
168 ],
169 "columnsTo": [
170 "id"
171 ],
172 "onDelete": "cascade",
173 "onUpdate": "cascade"
174 },
175 "favorite_build_user_id_users_id_fk": {
176 "name": "favorite_build_user_id_users_id_fk",
177 "tableFrom": "favorite_build",
178 "tableTo": "users",
179 "columnsFrom": [
180 "user_id"
181 ],
182 "columnsTo": [
183 "id"
184 ],
185 "onDelete": "cascade",
186 "onUpdate": "cascade"
187 }
188 },
189 "compositePrimaryKeys": {
190 "favorite_build_build_id_user_id_pk": {
191 "name": "favorite_build_build_id_user_id_pk",
192 "columns": [
193 "build_id",
194 "user_id"
195 ]
196 }
197 },
198 "uniqueConstraints": {},
199 "policies": {},
200 "checkConstraints": {},
201 "isRLSEnabled": false
202 },
203 "public.rating_build": {
204 "name": "rating_build",
205 "schema": "",
206 "columns": {
207 "build_id": {
208 "name": "build_id",
209 "type": "integer",
210 "primaryKey": false,
211 "notNull": true
212 },
213 "user_id": {
214 "name": "user_id",
215 "type": "integer",
216 "primaryKey": false,
217 "notNull": true
218 },
219 "value": {
220 "name": "value",
221 "type": "numeric",
222 "primaryKey": false,
223 "notNull": true
224 }
225 },
226 "indexes": {},
227 "foreignKeys": {
228 "rating_build_build_id_build_id_fk": {
229 "name": "rating_build_build_id_build_id_fk",
230 "tableFrom": "rating_build",
231 "tableTo": "build",
232 "columnsFrom": [
233 "build_id"
234 ],
235 "columnsTo": [
236 "id"
237 ],
238 "onDelete": "cascade",
239 "onUpdate": "cascade"
240 },
241 "rating_build_user_id_users_id_fk": {
242 "name": "rating_build_user_id_users_id_fk",
243 "tableFrom": "rating_build",
244 "tableTo": "users",
245 "columnsFrom": [
246 "user_id"
247 ],
248 "columnsTo": [
249 "id"
250 ],
251 "onDelete": "cascade",
252 "onUpdate": "cascade"
253 }
254 },
255 "compositePrimaryKeys": {
256 "rating_build_build_id_user_id_pk": {
257 "name": "rating_build_build_id_user_id_pk",
258 "columns": [
259 "build_id",
260 "user_id"
261 ]
262 }
263 },
264 "uniqueConstraints": {},
265 "policies": {},
266 "checkConstraints": {
267 "check_value": {
268 "name": "check_value",
269 "value": "\"rating_build\".\"value\" BETWEEN 1 AND 5"
270 }
271 },
272 "isRLSEnabled": false
273 },
274 "public.review": {
275 "name": "review",
276 "schema": "",
277 "columns": {
278 "id": {
279 "name": "id",
280 "type": "serial",
281 "primaryKey": true,
282 "notNull": true
283 },
284 "build_id": {
285 "name": "build_id",
286 "type": "integer",
287 "primaryKey": false,
288 "notNull": true
289 },
290 "user_id": {
291 "name": "user_id",
292 "type": "integer",
293 "primaryKey": false,
294 "notNull": true
295 },
296 "content": {
297 "name": "content",
298 "type": "text",
299 "primaryKey": false,
300 "notNull": true
301 },
302 "created_at": {
303 "name": "created_at",
304 "type": "date",
305 "primaryKey": false,
306 "notNull": true
307 }
308 },
309 "indexes": {},
310 "foreignKeys": {
311 "review_build_id_build_id_fk": {
312 "name": "review_build_id_build_id_fk",
313 "tableFrom": "review",
314 "tableTo": "build",
315 "columnsFrom": [
316 "build_id"
317 ],
318 "columnsTo": [
319 "id"
320 ],
321 "onDelete": "cascade",
322 "onUpdate": "cascade"
323 },
324 "review_user_id_users_id_fk": {
325 "name": "review_user_id_users_id_fk",
326 "tableFrom": "review",
327 "tableTo": "users",
328 "columnsFrom": [
329 "user_id"
330 ],
331 "columnsTo": [
332 "id"
333 ],
334 "onDelete": "cascade",
335 "onUpdate": "cascade"
336 }
337 },
338 "compositePrimaryKeys": {},
339 "uniqueConstraints": {
340 "review_build_id_user_id_unique": {
341 "name": "review_build_id_user_id_unique",
342 "nullsNotDistinct": false,
343 "columns": [
344 "build_id",
345 "user_id"
346 ]
347 }
348 },
349 "policies": {},
350 "checkConstraints": {},
351 "isRLSEnabled": false
352 },
353 "public.cpu": {
354 "name": "cpu",
355 "schema": "",
356 "columns": {
357 "component_id": {
358 "name": "component_id",
359 "type": "integer",
360 "primaryKey": true,
361 "notNull": true
362 },
363 "socket": {
364 "name": "socket",
365 "type": "text",
366 "primaryKey": false,
367 "notNull": true
368 },
369 "cores": {
370 "name": "cores",
371 "type": "integer",
372 "primaryKey": false,
373 "notNull": true
374 },
375 "threads": {
376 "name": "threads",
377 "type": "integer",
378 "primaryKey": false,
379 "notNull": true
380 },
381 "base_clock": {
382 "name": "base_clock",
383 "type": "numeric",
384 "primaryKey": false,
385 "notNull": true
386 },
387 "boost_clock": {
388 "name": "boost_clock",
389 "type": "numeric",
390 "primaryKey": false,
391 "notNull": false
392 },
393 "tdp": {
394 "name": "tdp",
395 "type": "numeric",
396 "primaryKey": false,
397 "notNull": true
398 }
399 },
400 "indexes": {},
401 "foreignKeys": {
402 "cpu_component_id_components_id_fk": {
403 "name": "cpu_component_id_components_id_fk",
404 "tableFrom": "cpu",
405 "tableTo": "components",
406 "columnsFrom": [
407 "component_id"
408 ],
409 "columnsTo": [
410 "id"
411 ],
412 "onDelete": "cascade",
413 "onUpdate": "cascade"
414 }
415 },
416 "compositePrimaryKeys": {},
417 "uniqueConstraints": {},
418 "policies": {},
419 "checkConstraints": {},
420 "isRLSEnabled": false
421 },
422 "public.gpu": {
423 "name": "gpu",
424 "schema": "",
425 "columns": {
426 "component_id": {
427 "name": "component_id",
428 "type": "integer",
429 "primaryKey": true,
430 "notNull": true
431 },
432 "vram": {
433 "name": "vram",
434 "type": "numeric",
435 "primaryKey": false,
436 "notNull": true
437 },
438 "tdp": {
439 "name": "tdp",
440 "type": "numeric",
441 "primaryKey": false,
442 "notNull": true
443 },
444 "base_clock": {
445 "name": "base_clock",
446 "type": "numeric",
447 "primaryKey": false,
448 "notNull": false
449 },
450 "boost_clock": {
451 "name": "boost_clock",
452 "type": "numeric",
453 "primaryKey": false,
454 "notNull": false
455 },
456 "chipset": {
457 "name": "chipset",
458 "type": "text",
459 "primaryKey": false,
460 "notNull": true
461 },
462 "length": {
463 "name": "length",
464 "type": "numeric",
465 "primaryKey": false,
466 "notNull": true
467 }
468 },
469 "indexes": {},
470 "foreignKeys": {
471 "gpu_component_id_components_id_fk": {
472 "name": "gpu_component_id_components_id_fk",
473 "tableFrom": "gpu",
474 "tableTo": "components",
475 "columnsFrom": [
476 "component_id"
477 ],
478 "columnsTo": [
479 "id"
480 ],
481 "onDelete": "cascade",
482 "onUpdate": "cascade"
483 }
484 },
485 "compositePrimaryKeys": {},
486 "uniqueConstraints": {},
487 "policies": {},
488 "checkConstraints": {},
489 "isRLSEnabled": false
490 },
491 "public.cables": {
492 "name": "cables",
493 "schema": "",
494 "columns": {
495 "component_id": {
496 "name": "component_id",
497 "type": "integer",
498 "primaryKey": true,
499 "notNull": true
500 },
501 "length_cm": {
502 "name": "length_cm",
503 "type": "numeric",
504 "primaryKey": false,
505 "notNull": true
506 },
507 "type": {
508 "name": "type",
509 "type": "text",
510 "primaryKey": false,
511 "notNull": true
512 }
513 },
514 "indexes": {},
515 "foreignKeys": {
516 "cables_component_id_components_id_fk": {
517 "name": "cables_component_id_components_id_fk",
518 "tableFrom": "cables",
519 "tableTo": "components",
520 "columnsFrom": [
521 "component_id"
522 ],
523 "columnsTo": [
524 "id"
525 ],
526 "onDelete": "cascade",
527 "onUpdate": "cascade"
528 }
529 },
530 "compositePrimaryKeys": {},
531 "uniqueConstraints": {},
532 "policies": {},
533 "checkConstraints": {},
534 "isRLSEnabled": false
535 },
536 "public.case_mobo_form_factors": {
537 "name": "case_mobo_form_factors",
538 "schema": "",
539 "columns": {
540 "case_id": {
541 "name": "case_id",
542 "type": "integer",
543 "primaryKey": false,
544 "notNull": true
545 },
546 "form_factor": {
547 "name": "form_factor",
548 "type": "text",
549 "primaryKey": false,
550 "notNull": true
551 }
552 },
553 "indexes": {},
554 "foreignKeys": {
555 "case_mobo_form_factors_case_id_pc_case_component_id_fk": {
556 "name": "case_mobo_form_factors_case_id_pc_case_component_id_fk",
557 "tableFrom": "case_mobo_form_factors",
558 "tableTo": "pc_case",
559 "columnsFrom": [
560 "case_id"
561 ],
562 "columnsTo": [
563 "component_id"
564 ],
565 "onDelete": "cascade",
566 "onUpdate": "cascade"
567 }
568 },
569 "compositePrimaryKeys": {
570 "case_mobo_form_factors_case_id_form_factor_pk": {
571 "name": "case_mobo_form_factors_case_id_form_factor_pk",
572 "columns": [
573 "case_id",
574 "form_factor"
575 ]
576 }
577 },
578 "uniqueConstraints": {},
579 "policies": {},
580 "checkConstraints": {},
581 "isRLSEnabled": false
582 },
583 "public.case_ps_form_factors": {
584 "name": "case_ps_form_factors",
585 "schema": "",
586 "columns": {
587 "case_id": {
588 "name": "case_id",
589 "type": "integer",
590 "primaryKey": false,
591 "notNull": true
592 },
593 "form_factor": {
594 "name": "form_factor",
595 "type": "text",
596 "primaryKey": false,
597 "notNull": true
598 }
599 },
600 "indexes": {},
601 "foreignKeys": {
602 "case_ps_form_factors_case_id_pc_case_component_id_fk": {
603 "name": "case_ps_form_factors_case_id_pc_case_component_id_fk",
604 "tableFrom": "case_ps_form_factors",
605 "tableTo": "pc_case",
606 "columnsFrom": [
607 "case_id"
608 ],
609 "columnsTo": [
610 "component_id"
611 ],
612 "onDelete": "cascade",
613 "onUpdate": "cascade"
614 }
615 },
616 "compositePrimaryKeys": {
617 "case_ps_form_factors_case_id_form_factor_pk": {
618 "name": "case_ps_form_factors_case_id_form_factor_pk",
619 "columns": [
620 "case_id",
621 "form_factor"
622 ]
623 }
624 },
625 "uniqueConstraints": {},
626 "policies": {},
627 "checkConstraints": {},
628 "isRLSEnabled": false
629 },
630 "public.case_storage_form_factors": {
631 "name": "case_storage_form_factors",
632 "schema": "",
633 "columns": {
634 "case_id": {
635 "name": "case_id",
636 "type": "integer",
637 "primaryKey": false,
638 "notNull": true
639 },
640 "form_factor": {
641 "name": "form_factor",
642 "type": "text",
643 "primaryKey": false,
644 "notNull": true
645 },
646 "num_slots": {
647 "name": "num_slots",
648 "type": "integer",
649 "primaryKey": false,
650 "notNull": true
651 }
652 },
653 "indexes": {},
654 "foreignKeys": {
655 "case_storage_form_factors_case_id_pc_case_component_id_fk": {
656 "name": "case_storage_form_factors_case_id_pc_case_component_id_fk",
657 "tableFrom": "case_storage_form_factors",
658 "tableTo": "pc_case",
659 "columnsFrom": [
660 "case_id"
661 ],
662 "columnsTo": [
663 "component_id"
664 ],
665 "onDelete": "cascade",
666 "onUpdate": "cascade"
667 }
668 },
669 "compositePrimaryKeys": {
670 "case_storage_form_factors_case_id_form_factor_pk": {
671 "name": "case_storage_form_factors_case_id_form_factor_pk",
672 "columns": [
673 "case_id",
674 "form_factor"
675 ]
676 }
677 },
678 "uniqueConstraints": {},
679 "policies": {},
680 "checkConstraints": {},
681 "isRLSEnabled": false
682 },
683 "public.components": {
684 "name": "components",
685 "schema": "",
686 "columns": {
687 "id": {
688 "name": "id",
689 "type": "serial",
690 "primaryKey": true,
691 "notNull": true
692 },
693 "name": {
694 "name": "name",
695 "type": "text",
696 "primaryKey": false,
697 "notNull": true
698 },
699 "brand": {
700 "name": "brand",
701 "type": "text",
702 "primaryKey": false,
703 "notNull": true
704 },
705 "price": {
706 "name": "price",
707 "type": "numeric",
708 "primaryKey": false,
709 "notNull": true
710 },
711 "img_url": {
712 "name": "img_url",
713 "type": "text",
714 "primaryKey": false,
715 "notNull": false
716 },
717 "type": {
718 "name": "type",
719 "type": "text",
720 "primaryKey": false,
721 "notNull": true
722 }
723 },
724 "indexes": {},
725 "foreignKeys": {},
726 "compositePrimaryKeys": {},
727 "uniqueConstraints": {},
728 "policies": {},
729 "checkConstraints": {
730 "check_type": {
731 "name": "check_type",
732 "value": "\"components\".\"type\" in \n ('cpu', 'gpu', 'memory', 'storage', 'power_supply', 'motherboard', 'case', 'cooler', 'memory_card', 'optical_drive', 'sound_card', 'cables', 'network_adapter', 'network_card')"
733 }
734 },
735 "isRLSEnabled": false
736 },
737 "public.cooler_cpu_sockets": {
738 "name": "cooler_cpu_sockets",
739 "schema": "",
740 "columns": {
741 "cooler_id": {
742 "name": "cooler_id",
743 "type": "integer",
744 "primaryKey": false,
745 "notNull": true
746 },
747 "socket": {
748 "name": "socket",
749 "type": "text",
750 "primaryKey": false,
751 "notNull": true
752 }
753 },
754 "indexes": {},
755 "foreignKeys": {
756 "cooler_cpu_sockets_cooler_id_cooler_component_id_fk": {
757 "name": "cooler_cpu_sockets_cooler_id_cooler_component_id_fk",
758 "tableFrom": "cooler_cpu_sockets",
759 "tableTo": "cooler",
760 "columnsFrom": [
761 "cooler_id"
762 ],
763 "columnsTo": [
764 "component_id"
765 ],
766 "onDelete": "cascade",
767 "onUpdate": "cascade"
768 }
769 },
770 "compositePrimaryKeys": {
771 "cooler_cpu_sockets_cooler_id_socket_pk": {
772 "name": "cooler_cpu_sockets_cooler_id_socket_pk",
773 "columns": [
774 "cooler_id",
775 "socket"
776 ]
777 }
778 },
779 "uniqueConstraints": {},
780 "policies": {},
781 "checkConstraints": {},
782 "isRLSEnabled": false
783 },
784 "public.cooler": {
785 "name": "cooler",
786 "schema": "",
787 "columns": {
788 "component_id": {
789 "name": "component_id",
790 "type": "integer",
791 "primaryKey": true,
792 "notNull": true
793 },
794 "type": {
795 "name": "type",
796 "type": "text",
797 "primaryKey": false,
798 "notNull": true
799 },
800 "height": {
801 "name": "height",
802 "type": "numeric",
803 "primaryKey": false,
804 "notNull": true
805 },
806 "max_tdp_supported": {
807 "name": "max_tdp_supported",
808 "type": "numeric",
809 "primaryKey": false,
810 "notNull": true
811 }
812 },
813 "indexes": {},
814 "foreignKeys": {
815 "cooler_component_id_components_id_fk": {
816 "name": "cooler_component_id_components_id_fk",
817 "tableFrom": "cooler",
818 "tableTo": "components",
819 "columnsFrom": [
820 "component_id"
821 ],
822 "columnsTo": [
823 "id"
824 ],
825 "onDelete": "cascade",
826 "onUpdate": "cascade"
827 }
828 },
829 "compositePrimaryKeys": {},
830 "uniqueConstraints": {},
831 "policies": {},
832 "checkConstraints": {},
833 "isRLSEnabled": false
834 },
835 "public.memory_card": {
836 "name": "memory_card",
837 "schema": "",
838 "columns": {
839 "component_id": {
840 "name": "component_id",
841 "type": "integer",
842 "primaryKey": true,
843 "notNull": true
844 },
845 "num_slots": {
846 "name": "num_slots",
847 "type": "integer",
848 "primaryKey": false,
849 "notNull": true
850 },
851 "interface": {
852 "name": "interface",
853 "type": "text",
854 "primaryKey": false,
855 "notNull": true
856 }
857 },
858 "indexes": {},
859 "foreignKeys": {
860 "memory_card_component_id_components_id_fk": {
861 "name": "memory_card_component_id_components_id_fk",
862 "tableFrom": "memory_card",
863 "tableTo": "components",
864 "columnsFrom": [
865 "component_id"
866 ],
867 "columnsTo": [
868 "id"
869 ],
870 "onDelete": "cascade",
871 "onUpdate": "cascade"
872 }
873 },
874 "compositePrimaryKeys": {},
875 "uniqueConstraints": {},
876 "policies": {},
877 "checkConstraints": {},
878 "isRLSEnabled": false
879 },
880 "public.memory": {
881 "name": "memory",
882 "schema": "",
883 "columns": {
884 "component_id": {
885 "name": "component_id",
886 "type": "integer",
887 "primaryKey": true,
888 "notNull": true
889 },
890 "type": {
891 "name": "type",
892 "type": "text",
893 "primaryKey": false,
894 "notNull": true
895 },
896 "speed": {
897 "name": "speed",
898 "type": "numeric",
899 "primaryKey": false,
900 "notNull": true
901 },
902 "capacity": {
903 "name": "capacity",
904 "type": "numeric",
905 "primaryKey": false,
906 "notNull": true
907 },
908 "modules": {
909 "name": "modules",
910 "type": "integer",
911 "primaryKey": false,
912 "notNull": true
913 }
914 },
915 "indexes": {},
916 "foreignKeys": {
917 "memory_component_id_components_id_fk": {
918 "name": "memory_component_id_components_id_fk",
919 "tableFrom": "memory",
920 "tableTo": "components",
921 "columnsFrom": [
922 "component_id"
923 ],
924 "columnsTo": [
925 "id"
926 ],
927 "onDelete": "cascade",
928 "onUpdate": "cascade"
929 }
930 },
931 "compositePrimaryKeys": {},
932 "uniqueConstraints": {},
933 "policies": {},
934 "checkConstraints": {},
935 "isRLSEnabled": false
936 },
937 "public.motherboard": {
938 "name": "motherboard",
939 "schema": "",
940 "columns": {
941 "component_id": {
942 "name": "component_id",
943 "type": "integer",
944 "primaryKey": true,
945 "notNull": true
946 },
947 "socket": {
948 "name": "socket",
949 "type": "text",
950 "primaryKey": false,
951 "notNull": true
952 },
953 "chipset": {
954 "name": "chipset",
955 "type": "text",
956 "primaryKey": false,
957 "notNull": true
958 },
959 "form_factor": {
960 "name": "form_factor",
961 "type": "text",
962 "primaryKey": false,
963 "notNull": true
964 },
965 "ram_type": {
966 "name": "ram_type",
967 "type": "text",
968 "primaryKey": false,
969 "notNull": true
970 },
971 "num_ram_slots": {
972 "name": "num_ram_slots",
973 "type": "integer",
974 "primaryKey": false,
975 "notNull": true
976 },
977 "max_ram_capacity": {
978 "name": "max_ram_capacity",
979 "type": "numeric",
980 "primaryKey": false,
981 "notNull": true
982 },
983 "pci_express_slots": {
984 "name": "pci_express_slots",
985 "type": "numeric",
986 "primaryKey": false,
987 "notNull": true
988 }
989 },
990 "indexes": {},
991 "foreignKeys": {
992 "motherboard_component_id_components_id_fk": {
993 "name": "motherboard_component_id_components_id_fk",
994 "tableFrom": "motherboard",
995 "tableTo": "components",
996 "columnsFrom": [
997 "component_id"
998 ],
999 "columnsTo": [
1000 "id"
1001 ],
1002 "onDelete": "cascade",
1003 "onUpdate": "cascade"
1004 }
1005 },
1006 "compositePrimaryKeys": {},
1007 "uniqueConstraints": {},
1008 "policies": {},
1009 "checkConstraints": {},
1010 "isRLSEnabled": false
1011 },
1012 "public.network_adapter": {
1013 "name": "network_adapter",
1014 "schema": "",
1015 "columns": {
1016 "component_id": {
1017 "name": "component_id",
1018 "type": "integer",
1019 "primaryKey": true,
1020 "notNull": true
1021 },
1022 "wifi_version": {
1023 "name": "wifi_version",
1024 "type": "text",
1025 "primaryKey": false,
1026 "notNull": true
1027 },
1028 "interface": {
1029 "name": "interface",
1030 "type": "text",
1031 "primaryKey": false,
1032 "notNull": true
1033 },
1034 "num_antennas": {
1035 "name": "num_antennas",
1036 "type": "integer",
1037 "primaryKey": false,
1038 "notNull": true
1039 }
1040 },
1041 "indexes": {},
1042 "foreignKeys": {
1043 "network_adapter_component_id_components_id_fk": {
1044 "name": "network_adapter_component_id_components_id_fk",
1045 "tableFrom": "network_adapter",
1046 "tableTo": "components",
1047 "columnsFrom": [
1048 "component_id"
1049 ],
1050 "columnsTo": [
1051 "id"
1052 ],
1053 "onDelete": "cascade",
1054 "onUpdate": "cascade"
1055 }
1056 },
1057 "compositePrimaryKeys": {},
1058 "uniqueConstraints": {},
1059 "policies": {},
1060 "checkConstraints": {},
1061 "isRLSEnabled": false
1062 },
1063 "public.network_card": {
1064 "name": "network_card",
1065 "schema": "",
1066 "columns": {
1067 "component_id": {
1068 "name": "component_id",
1069 "type": "integer",
1070 "primaryKey": true,
1071 "notNull": true
1072 },
1073 "num_ports": {
1074 "name": "num_ports",
1075 "type": "integer",
1076 "primaryKey": false,
1077 "notNull": true
1078 },
1079 "speed": {
1080 "name": "speed",
1081 "type": "numeric",
1082 "primaryKey": false,
1083 "notNull": true
1084 },
1085 "interface": {
1086 "name": "interface",
1087 "type": "text",
1088 "primaryKey": false,
1089 "notNull": true
1090 }
1091 },
1092 "indexes": {},
1093 "foreignKeys": {
1094 "network_card_component_id_components_id_fk": {
1095 "name": "network_card_component_id_components_id_fk",
1096 "tableFrom": "network_card",
1097 "tableTo": "components",
1098 "columnsFrom": [
1099 "component_id"
1100 ],
1101 "columnsTo": [
1102 "id"
1103 ],
1104 "onDelete": "cascade",
1105 "onUpdate": "cascade"
1106 }
1107 },
1108 "compositePrimaryKeys": {},
1109 "uniqueConstraints": {},
1110 "policies": {},
1111 "checkConstraints": {},
1112 "isRLSEnabled": false
1113 },
1114 "public.optical_drive": {
1115 "name": "optical_drive",
1116 "schema": "",
1117 "columns": {
1118 "component_id": {
1119 "name": "component_id",
1120 "type": "integer",
1121 "primaryKey": true,
1122 "notNull": true
1123 },
1124 "form_factor": {
1125 "name": "form_factor",
1126 "type": "text",
1127 "primaryKey": false,
1128 "notNull": true
1129 },
1130 "type": {
1131 "name": "type",
1132 "type": "text",
1133 "primaryKey": false,
1134 "notNull": true
1135 },
1136 "interface": {
1137 "name": "interface",
1138 "type": "text",
1139 "primaryKey": false,
1140 "notNull": true
1141 },
1142 "write_speed": {
1143 "name": "write_speed",
1144 "type": "numeric",
1145 "primaryKey": false,
1146 "notNull": true
1147 },
1148 "read_speed": {
1149 "name": "read_speed",
1150 "type": "numeric",
1151 "primaryKey": false,
1152 "notNull": true
1153 }
1154 },
1155 "indexes": {},
1156 "foreignKeys": {
1157 "optical_drive_component_id_components_id_fk": {
1158 "name": "optical_drive_component_id_components_id_fk",
1159 "tableFrom": "optical_drive",
1160 "tableTo": "components",
1161 "columnsFrom": [
1162 "component_id"
1163 ],
1164 "columnsTo": [
1165 "id"
1166 ],
1167 "onDelete": "cascade",
1168 "onUpdate": "cascade"
1169 }
1170 },
1171 "compositePrimaryKeys": {},
1172 "uniqueConstraints": {},
1173 "policies": {},
1174 "checkConstraints": {},
1175 "isRLSEnabled": false
1176 },
1177 "public.pc_case": {
1178 "name": "pc_case",
1179 "schema": "",
1180 "columns": {
1181 "component_id": {
1182 "name": "component_id",
1183 "type": "integer",
1184 "primaryKey": true,
1185 "notNull": true
1186 },
1187 "cooler_max_height": {
1188 "name": "cooler_max_height",
1189 "type": "numeric",
1190 "primaryKey": false,
1191 "notNull": true
1192 },
1193 "gpu_max_length": {
1194 "name": "gpu_max_length",
1195 "type": "numeric",
1196 "primaryKey": false,
1197 "notNull": true
1198 }
1199 },
1200 "indexes": {},
1201 "foreignKeys": {
1202 "pc_case_component_id_components_id_fk": {
1203 "name": "pc_case_component_id_components_id_fk",
1204 "tableFrom": "pc_case",
1205 "tableTo": "components",
1206 "columnsFrom": [
1207 "component_id"
1208 ],
1209 "columnsTo": [
1210 "id"
1211 ],
1212 "onDelete": "cascade",
1213 "onUpdate": "cascade"
1214 }
1215 },
1216 "compositePrimaryKeys": {},
1217 "uniqueConstraints": {},
1218 "policies": {},
1219 "checkConstraints": {},
1220 "isRLSEnabled": false
1221 },
1222 "public.power_supply": {
1223 "name": "power_supply",
1224 "schema": "",
1225 "columns": {
1226 "component_id": {
1227 "name": "component_id",
1228 "type": "integer",
1229 "primaryKey": true,
1230 "notNull": true
1231 },
1232 "type": {
1233 "name": "type",
1234 "type": "text",
1235 "primaryKey": false,
1236 "notNull": true
1237 },
1238 "wattage": {
1239 "name": "wattage",
1240 "type": "numeric",
1241 "primaryKey": false,
1242 "notNull": true
1243 },
1244 "form_factor": {
1245 "name": "form_factor",
1246 "type": "text",
1247 "primaryKey": false,
1248 "notNull": true
1249 }
1250 },
1251 "indexes": {},
1252 "foreignKeys": {
1253 "power_supply_component_id_components_id_fk": {
1254 "name": "power_supply_component_id_components_id_fk",
1255 "tableFrom": "power_supply",
1256 "tableTo": "components",
1257 "columnsFrom": [
1258 "component_id"
1259 ],
1260 "columnsTo": [
1261 "id"
1262 ],
1263 "onDelete": "cascade",
1264 "onUpdate": "cascade"
1265 }
1266 },
1267 "compositePrimaryKeys": {},
1268 "uniqueConstraints": {},
1269 "policies": {},
1270 "checkConstraints": {},
1271 "isRLSEnabled": false
1272 },
1273 "public.sound_card": {
1274 "name": "sound_card",
1275 "schema": "",
1276 "columns": {
1277 "component_id": {
1278 "name": "component_id",
1279 "type": "integer",
1280 "primaryKey": true,
1281 "notNull": true
1282 },
1283 "sample_rate": {
1284 "name": "sample_rate",
1285 "type": "numeric",
1286 "primaryKey": false,
1287 "notNull": true
1288 },
1289 "bit_depth": {
1290 "name": "bit_depth",
1291 "type": "numeric",
1292 "primaryKey": false,
1293 "notNull": true
1294 },
1295 "chipset": {
1296 "name": "chipset",
1297 "type": "text",
1298 "primaryKey": false,
1299 "notNull": true
1300 },
1301 "interface": {
1302 "name": "interface",
1303 "type": "text",
1304 "primaryKey": false,
1305 "notNull": true
1306 },
1307 "channel": {
1308 "name": "channel",
1309 "type": "text",
1310 "primaryKey": false,
1311 "notNull": true
1312 }
1313 },
1314 "indexes": {},
1315 "foreignKeys": {
1316 "sound_card_component_id_components_id_fk": {
1317 "name": "sound_card_component_id_components_id_fk",
1318 "tableFrom": "sound_card",
1319 "tableTo": "components",
1320 "columnsFrom": [
1321 "component_id"
1322 ],
1323 "columnsTo": [
1324 "id"
1325 ],
1326 "onDelete": "cascade",
1327 "onUpdate": "cascade"
1328 }
1329 },
1330 "compositePrimaryKeys": {},
1331 "uniqueConstraints": {},
1332 "policies": {},
1333 "checkConstraints": {},
1334 "isRLSEnabled": false
1335 },
1336 "public.storage": {
1337 "name": "storage",
1338 "schema": "",
1339 "columns": {
1340 "component_id": {
1341 "name": "component_id",
1342 "type": "integer",
1343 "primaryKey": true,
1344 "notNull": true
1345 },
1346 "type": {
1347 "name": "type",
1348 "type": "text",
1349 "primaryKey": false,
1350 "notNull": true
1351 },
1352 "capacity": {
1353 "name": "capacity",
1354 "type": "numeric",
1355 "primaryKey": false,
1356 "notNull": true
1357 },
1358 "form_factor": {
1359 "name": "form_factor",
1360 "type": "text",
1361 "primaryKey": false,
1362 "notNull": true
1363 }
1364 },
1365 "indexes": {},
1366 "foreignKeys": {
1367 "storage_component_id_components_id_fk": {
1368 "name": "storage_component_id_components_id_fk",
1369 "tableFrom": "storage",
1370 "tableTo": "components",
1371 "columnsFrom": [
1372 "component_id"
1373 ],
1374 "columnsTo": [
1375 "id"
1376 ],
1377 "onDelete": "cascade",
1378 "onUpdate": "cascade"
1379 }
1380 },
1381 "compositePrimaryKeys": {},
1382 "uniqueConstraints": {},
1383 "policies": {},
1384 "checkConstraints": {},
1385 "isRLSEnabled": false
1386 },
1387 "public.admins": {
1388 "name": "admins",
1389 "schema": "",
1390 "columns": {
1391 "user_id": {
1392 "name": "user_id",
1393 "type": "integer",
1394 "primaryKey": true,
1395 "notNull": true
1396 }
1397 },
1398 "indexes": {},
1399 "foreignKeys": {
1400 "admins_user_id_users_id_fk": {
1401 "name": "admins_user_id_users_id_fk",
1402 "tableFrom": "admins",
1403 "tableTo": "users",
1404 "columnsFrom": [
1405 "user_id"
1406 ],
1407 "columnsTo": [
1408 "id"
1409 ],
1410 "onDelete": "cascade",
1411 "onUpdate": "cascade"
1412 }
1413 },
1414 "compositePrimaryKeys": {},
1415 "uniqueConstraints": {},
1416 "policies": {},
1417 "checkConstraints": {},
1418 "isRLSEnabled": false
1419 },
1420 "public.suggestions": {
1421 "name": "suggestions",
1422 "schema": "",
1423 "columns": {
1424 "id": {
1425 "name": "id",
1426 "type": "serial",
1427 "primaryKey": true,
1428 "notNull": true
1429 },
1430 "user_id": {
1431 "name": "user_id",
1432 "type": "integer",
1433 "primaryKey": false,
1434 "notNull": true
1435 },
1436 "admin_id": {
1437 "name": "admin_id",
1438 "type": "integer",
1439 "primaryKey": false,
1440 "notNull": false
1441 },
1442 "link": {
1443 "name": "link",
1444 "type": "text",
1445 "primaryKey": false,
1446 "notNull": true
1447 },
1448 "admin_comment": {
1449 "name": "admin_comment",
1450 "type": "text",
1451 "primaryKey": false,
1452 "notNull": false
1453 },
1454 "description": {
1455 "name": "description",
1456 "type": "text",
1457 "primaryKey": false,
1458 "notNull": false
1459 },
1460 "status": {
1461 "name": "status",
1462 "type": "text",
1463 "primaryKey": false,
1464 "notNull": true,
1465 "default": "'pending'"
1466 },
1467 "component_type": {
1468 "name": "component_type",
1469 "type": "text",
1470 "primaryKey": false,
1471 "notNull": true
1472 }
1473 },
1474 "indexes": {},
1475 "foreignKeys": {
1476 "suggestions_user_id_users_id_fk": {
1477 "name": "suggestions_user_id_users_id_fk",
1478 "tableFrom": "suggestions",
1479 "tableTo": "users",
1480 "columnsFrom": [
1481 "user_id"
1482 ],
1483 "columnsTo": [
1484 "id"
1485 ],
1486 "onDelete": "cascade",
1487 "onUpdate": "cascade"
1488 },
1489 "suggestions_admin_id_admins_user_id_fk": {
1490 "name": "suggestions_admin_id_admins_user_id_fk",
1491 "tableFrom": "suggestions",
1492 "tableTo": "admins",
1493 "columnsFrom": [
1494 "admin_id"
1495 ],
1496 "columnsTo": [
1497 "user_id"
1498 ],
1499 "onDelete": "set null",
1500 "onUpdate": "cascade"
1501 }
1502 },
1503 "compositePrimaryKeys": {},
1504 "uniqueConstraints": {},
1505 "policies": {},
1506 "checkConstraints": {
1507 "check_status": {
1508 "name": "check_status",
1509 "value": "\"suggestions\".\"status\" in ('pending', 'approved', 'rejected')"
1510 },
1511 "check_type": {
1512 "name": "check_type",
1513 "value": "\"suggestions\".\"component_type\" in \n ('cpu', 'gpu', 'memory', 'storage', 'power_supply', 'motherboard', 'case', 'cooler', 'memory_card', 'optical_drive', 'sound_card', 'cables', 'network_adapter', 'network_card')"
1514 }
1515 },
1516 "isRLSEnabled": false
1517 },
1518 "public.users": {
1519 "name": "users",
1520 "schema": "",
1521 "columns": {
1522 "id": {
1523 "name": "id",
1524 "type": "serial",
1525 "primaryKey": true,
1526 "notNull": true
1527 },
1528 "username": {
1529 "name": "username",
1530 "type": "text",
1531 "primaryKey": false,
1532 "notNull": true
1533 },
1534 "password": {
1535 "name": "password",
1536 "type": "text",
1537 "primaryKey": false,
1538 "notNull": true
1539 },
1540 "email": {
1541 "name": "email",
1542 "type": "text",
1543 "primaryKey": false,
1544 "notNull": true
1545 }
1546 },
1547 "indexes": {},
1548 "foreignKeys": {},
1549 "compositePrimaryKeys": {},
1550 "uniqueConstraints": {
1551 "users_username_unique": {
1552 "name": "users_username_unique",
1553 "nullsNotDistinct": false,
1554 "columns": [
1555 "username"
1556 ]
1557 },
1558 "users_email_unique": {
1559 "name": "users_email_unique",
1560 "nullsNotDistinct": false,
1561 "columns": [
1562 "email"
1563 ]
1564 }
1565 },
1566 "policies": {},
1567 "checkConstraints": {},
1568 "isRLSEnabled": false
1569 }
1570 },
1571 "enums": {},
1572 "schemas": {},
1573 "sequences": {},
1574 "roles": {},
1575 "policies": {},
1576 "views": {},
1577 "_meta": {
1578 "columns": {},
1579 "schemas": {},
1580 "tables": {}
1581 }
1582}
Note: See TracBrowser for help on using the repository browser.