@trycompai/db 1.1.0 → 1.1.2

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 (244) hide show
  1. package/dist/chunk-Y7OSPXHC.mjs +7199 -0
  2. package/dist/index.js +7188 -3
  3. package/dist/index.mjs +13 -2
  4. package/dist/prisma/schema.prisma +811 -0
  5. package/dist/types.js +7175 -5
  6. package/dist/types.mjs +8 -1
  7. package/package.json +29 -32
  8. package/README.md +0 -79
  9. package/dist/index.d.mts +0 -2
  10. package/dist/index.d.ts +0 -2
  11. package/dist/prisma/migrations/20250403163138_init/migration.sql +0 -611
  12. package/dist/prisma/migrations/20250403165218_archived_on_its_own/migration.sql +0 -29
  13. package/dist/prisma/migrations/20250403194504_risk_assignee/migration.sql +0 -18
  14. package/dist/prisma/migrations/20250403201319_tasks_use_asignee/migration.sql +0 -16
  15. package/dist/prisma/migrations/20250403205655_vendor_assignee/migration.sql +0 -22
  16. package/dist/prisma/migrations/20250403205840_oops_optional/migration.sql +0 -2
  17. package/dist/prisma/migrations/20250403210049_task_assignee_optional_too/migration.sql +0 -8
  18. package/dist/prisma/migrations/20250404004853_stripecustomerid/migration.sql +0 -2
  19. package/dist/prisma/migrations/20250406004306_added_common_comment_table/migration.sql +0 -20
  20. package/dist/prisma/migrations/20250410193847_add_unique_constraint_to_artifact_t_table/migration.sql +0 -30
  21. package/dist/prisma/migrations/20250410193857_remove_published_field_from_evidence/migration.sql +0 -12
  22. package/dist/prisma/migrations/20250414191353_onboarding_experience/migration.sql +0 -25
  23. package/dist/prisma/migrations/20250414203443_added_evidence_to_onboarding/migration.sql +0 -2
  24. package/dist/prisma/migrations/20250417205622_add_global_vendors/migration.sql +0 -26
  25. package/dist/prisma/migrations/20250417205625_update_task_table_and_comments_and_attachments/migration.sql +0 -86
  26. package/dist/prisma/migrations/20250417205627_remove_evidence_table/migration.sql +0 -109
  27. package/dist/prisma/migrations/20250417205629_frequency_task_is_optional/migration.sql +0 -2
  28. package/dist/prisma/migrations/20250418151856_add_comment_relationship_to_attachment_and_vice_versa/migration.sql +0 -8
  29. package/dist/prisma/migrations/20250423154259_make_role_string/migration.sql +0 -9
  30. package/dist/prisma/migrations/20250424165055_update_onboarding_to_use_tasks/migration.sql +0 -9
  31. package/dist/prisma/migrations/20250424170518_remove_evidence_artifact_type/migration.sql +0 -14
  32. package/dist/prisma/migrations/20250428202144_add_website_to_organization/migration.sql +0 -2
  33. package/dist/prisma/migrations/20250429155419_add_company_details_to_onboarding/migration.sql +0 -2
  34. package/dist/prisma/migrations/20250509160401_added_framework_editor/migration.sql +0 -8
  35. package/dist/prisma/migrations/20250509162708_init_framework_editor_tables/migration.sql +0 -122
  36. package/dist/prisma/migrations/20250509172401_drop_slug/migration.sql +0 -11
  37. package/dist/prisma/migrations/20250509232122_trust_portal/migration.sql +0 -24
  38. package/dist/prisma/migrations/20250511040043_add_custom_domain_to_trust_portal/migration.sql +0 -2
  39. package/dist/prisma/migrations/20250511042943_trust_portal_domain_verified/migration.sql +0 -2
  40. package/dist/prisma/migrations/20250512004633_added_identifier/migration.sql +0 -5
  41. package/dist/prisma/migrations/20250512115717_added_framework_status/migration.sql +0 -7
  42. package/dist/prisma/migrations/20250512163351_add_contact_details_trust_portal/migration.sql +0 -2
  43. package/dist/prisma/migrations/20250514143147_remove_unique_constraint_on_integration_name/migration.sql +0 -2
  44. package/dist/prisma/migrations/20250514144228_add_vercel_check/migration.sql +0 -2
  45. package/dist/prisma/migrations/20250514150021_add_vercel_verification/migration.sql +0 -2
  46. package/dist/prisma/migrations/20250514161440_add_dates_to_framework_editor_tables/migration.sql +0 -23
  47. package/dist/prisma/migrations/20250515123635_trust_portal_friendly_url/migration.sql +0 -21
  48. package/dist/prisma/migrations/20250515124040_fix_trust_constraints/migration.sql +0 -11
  49. package/dist/prisma/migrations/20250516125758_patch_framework_id_in_editor/migration.sql +0 -6
  50. package/dist/prisma/migrations/20250516132431_add_many_to_many_support_to_tasks/migration.sql +0 -69
  51. package/dist/prisma/migrations/20250516142234_make_entity_optional/migration.sql +0 -3
  52. package/dist/prisma/migrations/20250516145149_drop_entity_and_entity_type/migration.sql +0 -16
  53. package/dist/prisma/migrations/20250516150558_drop_task_type/migration.sql +0 -2
  54. package/dist/prisma/migrations/20250516160714_insert_hardcoded_framework_to_db/migration.sql +0 -37
  55. package/dist/prisma/migrations/20250516161852_cast_framework_id_and_requirement_id_to_string/migration.sql +0 -5
  56. package/dist/prisma/migrations/20250516162324_convert_ids_to_new_format/migration.sql +0 -31
  57. package/dist/prisma/migrations/20250516162730_convert_framework_id/migration.sql +0 -5
  58. package/dist/prisma/migrations/20250516163156_added_relation_to_framework_and_requirement_maps/migration.sql +0 -5
  59. package/dist/prisma/migrations/20250516164307_drop_enums/migration.sql +0 -5
  60. package/dist/prisma/migrations/20250516194123_add_cal_option/migration.sql +0 -2
  61. package/dist/prisma/migrations/20250518133218_add_booking_details/migration.sql +0 -2
  62. package/dist/prisma/migrations/20250519141733_change_framework_id_to_string/migration.sql +0 -3
  63. package/dist/prisma/migrations/20250519141735_drop_enum_on_requirements_map/migration.sql +0 -2
  64. package/dist/prisma/migrations/20250519142913_add_template_references_to_instances/migration.sql +0 -17
  65. package/dist/prisma/migrations/20250519172353_drop_artifacts/migration.sql +0 -56
  66. package/dist/prisma/migrations/20250519204449_drop_relation_between_controls_and_framewrok_instance/migration.sql +0 -14
  67. package/dist/prisma/migrations/20250519212347_add_visibility_toggle_to_framework_editor/migration.sql +0 -2
  68. package/dist/prisma/migrations/20250520152548_add_approver_to_policy/migration.sql +0 -5
  69. package/dist/prisma/migrations/20250520175109_add_description_to_audit_log_for_convenience/migration.sql +0 -2
  70. package/dist/prisma/migrations/20250520175523_add_member_id_to_log_table/migration.sql +0 -8
  71. package/dist/prisma/migrations/20250521140239_add_entity_type_and_id_for_audit_logs_for_easy_filtering/migration.sql +0 -9
  72. package/dist/prisma/migrations/20250603135046_add_v2_onboarding_requirements/migration.sql +0 -36
  73. package/dist/prisma/migrations/20250604155610_add_job_id_column_to_onboarding/migration.sql +0 -2
  74. package/dist/prisma/migrations/20250605151521_make_framework_visibility_false/migration.sql +0 -2
  75. package/dist/prisma/migrations/20250605184738_add_cascade_to_entities_owned_by_org/migration.sql +0 -29
  76. package/dist/prisma/migrations/20250605184740_add_device_agent_details_to_org/migration.sql +0 -18
  77. package/dist/prisma/migrations/20250609130129_add_not_relevant/migration.sql +0 -2
  78. package/dist/prisma/migrations/20250610215328_add_fleet_label_to_employees/migration.sql +0 -2
  79. package/dist/prisma/migrations/20250611144654_add_is_fleet_setup_flag/migration.sql +0 -2
  80. package/dist/prisma/migrations/20250612160731_remove_unused_cols/migration.sql +0 -10
  81. package/dist/prisma/migrations/20250618001304_add_default_slug/migration.sql +0 -3
  82. package/dist/prisma/migrations/20250623184529_add_subscription_type/migration.sql +0 -12
  83. package/dist/prisma/migrations/20250626021946_add_starter_subscription_type/migration.sql +0 -27
  84. package/dist/prisma/migrations/20250626030206_added_new_subscription_type/migration.sql +0 -2
  85. package/dist/prisma/migrations/20250627180331_add_onboaridng_field/migration.sql +0 -5
  86. package/dist/prisma/migrations/20250627180828_rename_completed_col/migration.sql +0 -15
  87. package/dist/prisma/migrations/20250708152414_add_had_call_col/migration.sql +0 -2
  88. package/dist/prisma/migrations/20250711201749_update_retool_role_to_edit_had_call_column_in_organization_table/migration.sql +0 -7
  89. package/dist/prisma/migrations/20250711204234_add_read_permission_for_where_clause_on_retool_role/migration.sql +0 -8
  90. package/dist/prisma/migrations/20250714153009_remove_stripe_and_add_has_access/migration.sql +0 -31
  91. package/dist/prisma/migrations/20250715200054_add_perms_for_has_access_for_retool/migration.sql +0 -7
  92. package/dist/prisma/migrations/migration_lock.toml +0 -3
  93. package/dist/prisma/schema/attachments.prisma +0 -35
  94. package/dist/prisma/schema/auth.prisma +0 -122
  95. package/dist/prisma/schema/comment.prisma +0 -27
  96. package/dist/prisma/schema/context.prisma +0 -18
  97. package/dist/prisma/schema/control.prisma +0 -21
  98. package/dist/prisma/schema/framework-editor.prisma +0 -96
  99. package/dist/prisma/schema/framework.prisma +0 -14
  100. package/dist/prisma/schema/integration.prisma +0 -32
  101. package/dist/prisma/schema/onboarding.prisma +0 -18
  102. package/dist/prisma/schema/organization.prisma +0 -34
  103. package/dist/prisma/schema/policy.prisma +0 -32
  104. package/dist/prisma/schema/requirement.prisma +0 -15
  105. package/dist/prisma/schema/risk.prisma +0 -57
  106. package/dist/prisma/schema/shared.prisma +0 -104
  107. package/dist/prisma/schema/task.prisma +0 -41
  108. package/dist/prisma/schema/trust.prisma +0 -37
  109. package/dist/prisma/schema/vendor.prisma +0 -56
  110. package/dist/prisma/seed/frameworkEditorSchemas.js +0 -136
  111. package/dist/prisma/seed/frameworkEditorSchemas.ts +0 -178
  112. package/dist/prisma/seed/primitives/FrameworkEditorControlTemplate.json +0 -296
  113. package/dist/prisma/seed/primitives/FrameworkEditorFramework.json +0 -101
  114. package/dist/prisma/seed/primitives/FrameworkEditorPolicyTemplate.json +0 -6057
  115. package/dist/prisma/seed/primitives/FrameworkEditorRequirement.json +0 -7841
  116. package/dist/prisma/seed/primitives/FrameworkEditorTaskTemplate.json +0 -308
  117. package/dist/prisma/seed/primitives/FrameworkEditorVideo.json +0 -47
  118. package/dist/prisma/seed/relations/_FrameworkEditorControlTemplateToFrameworkEditorPolicyTemplate.json +0 -178
  119. package/dist/prisma/seed/relations/_FrameworkEditorControlTemplateToFrameworkEditorRequirement.json +0 -470
  120. package/dist/prisma/seed/relations/_FrameworkEditorControlTemplateToFrameworkEditorTaskTemplate.json +0 -142
  121. package/dist/prisma/seed/seed.js +0 -160
  122. package/dist/prisma/seed/seed.ts +0 -192
  123. package/dist/setup.d.mts +0 -7
  124. package/dist/setup.d.ts +0 -7
  125. package/dist/setup.js +0 -35
  126. package/dist/setup.mjs +0 -10
  127. package/dist/types.d.mts +0 -1
  128. package/dist/types.d.ts +0 -1
  129. package/prisma/functionDefinition.sql +0 -18
  130. package/prisma/migrations/20250403163138_init/migration.sql +0 -611
  131. package/prisma/migrations/20250403165218_archived_on_its_own/migration.sql +0 -29
  132. package/prisma/migrations/20250403194504_risk_assignee/migration.sql +0 -18
  133. package/prisma/migrations/20250403201319_tasks_use_asignee/migration.sql +0 -16
  134. package/prisma/migrations/20250403205655_vendor_assignee/migration.sql +0 -22
  135. package/prisma/migrations/20250403205840_oops_optional/migration.sql +0 -2
  136. package/prisma/migrations/20250403210049_task_assignee_optional_too/migration.sql +0 -8
  137. package/prisma/migrations/20250404004853_stripecustomerid/migration.sql +0 -2
  138. package/prisma/migrations/20250406004306_added_common_comment_table/migration.sql +0 -20
  139. package/prisma/migrations/20250410193847_add_unique_constraint_to_artifact_t_table/migration.sql +0 -30
  140. package/prisma/migrations/20250410193857_remove_published_field_from_evidence/migration.sql +0 -12
  141. package/prisma/migrations/20250414191353_onboarding_experience/migration.sql +0 -25
  142. package/prisma/migrations/20250414203443_added_evidence_to_onboarding/migration.sql +0 -2
  143. package/prisma/migrations/20250417205622_add_global_vendors/migration.sql +0 -26
  144. package/prisma/migrations/20250417205625_update_task_table_and_comments_and_attachments/migration.sql +0 -86
  145. package/prisma/migrations/20250417205627_remove_evidence_table/migration.sql +0 -109
  146. package/prisma/migrations/20250417205629_frequency_task_is_optional/migration.sql +0 -2
  147. package/prisma/migrations/20250418151856_add_comment_relationship_to_attachment_and_vice_versa/migration.sql +0 -8
  148. package/prisma/migrations/20250423154259_make_role_string/migration.sql +0 -9
  149. package/prisma/migrations/20250424165055_update_onboarding_to_use_tasks/migration.sql +0 -9
  150. package/prisma/migrations/20250424170518_remove_evidence_artifact_type/migration.sql +0 -14
  151. package/prisma/migrations/20250428202144_add_website_to_organization/migration.sql +0 -2
  152. package/prisma/migrations/20250429155419_add_company_details_to_onboarding/migration.sql +0 -2
  153. package/prisma/migrations/20250509160401_added_framework_editor/migration.sql +0 -8
  154. package/prisma/migrations/20250509162708_init_framework_editor_tables/migration.sql +0 -122
  155. package/prisma/migrations/20250509172401_drop_slug/migration.sql +0 -11
  156. package/prisma/migrations/20250509232122_trust_portal/migration.sql +0 -24
  157. package/prisma/migrations/20250511040043_add_custom_domain_to_trust_portal/migration.sql +0 -2
  158. package/prisma/migrations/20250511042943_trust_portal_domain_verified/migration.sql +0 -2
  159. package/prisma/migrations/20250512004633_added_identifier/migration.sql +0 -5
  160. package/prisma/migrations/20250512115717_added_framework_status/migration.sql +0 -7
  161. package/prisma/migrations/20250512163351_add_contact_details_trust_portal/migration.sql +0 -2
  162. package/prisma/migrations/20250514143147_remove_unique_constraint_on_integration_name/migration.sql +0 -2
  163. package/prisma/migrations/20250514144228_add_vercel_check/migration.sql +0 -2
  164. package/prisma/migrations/20250514150021_add_vercel_verification/migration.sql +0 -2
  165. package/prisma/migrations/20250514161440_add_dates_to_framework_editor_tables/migration.sql +0 -23
  166. package/prisma/migrations/20250515123635_trust_portal_friendly_url/migration.sql +0 -21
  167. package/prisma/migrations/20250515124040_fix_trust_constraints/migration.sql +0 -11
  168. package/prisma/migrations/20250516125758_patch_framework_id_in_editor/migration.sql +0 -6
  169. package/prisma/migrations/20250516132431_add_many_to_many_support_to_tasks/migration.sql +0 -69
  170. package/prisma/migrations/20250516142234_make_entity_optional/migration.sql +0 -3
  171. package/prisma/migrations/20250516145149_drop_entity_and_entity_type/migration.sql +0 -16
  172. package/prisma/migrations/20250516150558_drop_task_type/migration.sql +0 -2
  173. package/prisma/migrations/20250516160714_insert_hardcoded_framework_to_db/migration.sql +0 -37
  174. package/prisma/migrations/20250516161852_cast_framework_id_and_requirement_id_to_string/migration.sql +0 -5
  175. package/prisma/migrations/20250516162324_convert_ids_to_new_format/migration.sql +0 -31
  176. package/prisma/migrations/20250516162730_convert_framework_id/migration.sql +0 -5
  177. package/prisma/migrations/20250516163156_added_relation_to_framework_and_requirement_maps/migration.sql +0 -5
  178. package/prisma/migrations/20250516164307_drop_enums/migration.sql +0 -5
  179. package/prisma/migrations/20250516194123_add_cal_option/migration.sql +0 -2
  180. package/prisma/migrations/20250518133218_add_booking_details/migration.sql +0 -2
  181. package/prisma/migrations/20250519141733_change_framework_id_to_string/migration.sql +0 -3
  182. package/prisma/migrations/20250519141735_drop_enum_on_requirements_map/migration.sql +0 -2
  183. package/prisma/migrations/20250519142913_add_template_references_to_instances/migration.sql +0 -17
  184. package/prisma/migrations/20250519172353_drop_artifacts/migration.sql +0 -56
  185. package/prisma/migrations/20250519204449_drop_relation_between_controls_and_framewrok_instance/migration.sql +0 -14
  186. package/prisma/migrations/20250519212347_add_visibility_toggle_to_framework_editor/migration.sql +0 -2
  187. package/prisma/migrations/20250520152548_add_approver_to_policy/migration.sql +0 -5
  188. package/prisma/migrations/20250520175109_add_description_to_audit_log_for_convenience/migration.sql +0 -2
  189. package/prisma/migrations/20250520175523_add_member_id_to_log_table/migration.sql +0 -8
  190. package/prisma/migrations/20250521140239_add_entity_type_and_id_for_audit_logs_for_easy_filtering/migration.sql +0 -9
  191. package/prisma/migrations/20250603135046_add_v2_onboarding_requirements/migration.sql +0 -36
  192. package/prisma/migrations/20250604155610_add_job_id_column_to_onboarding/migration.sql +0 -2
  193. package/prisma/migrations/20250605151521_make_framework_visibility_false/migration.sql +0 -2
  194. package/prisma/migrations/20250605184738_add_cascade_to_entities_owned_by_org/migration.sql +0 -29
  195. package/prisma/migrations/20250605184740_add_device_agent_details_to_org/migration.sql +0 -18
  196. package/prisma/migrations/20250609130129_add_not_relevant/migration.sql +0 -2
  197. package/prisma/migrations/20250610215328_add_fleet_label_to_employees/migration.sql +0 -2
  198. package/prisma/migrations/20250611144654_add_is_fleet_setup_flag/migration.sql +0 -2
  199. package/prisma/migrations/20250612160731_remove_unused_cols/migration.sql +0 -10
  200. package/prisma/migrations/20250618001304_add_default_slug/migration.sql +0 -3
  201. package/prisma/migrations/20250623184529_add_subscription_type/migration.sql +0 -12
  202. package/prisma/migrations/20250626021946_add_starter_subscription_type/migration.sql +0 -27
  203. package/prisma/migrations/20250626030206_added_new_subscription_type/migration.sql +0 -2
  204. package/prisma/migrations/20250627180331_add_onboaridng_field/migration.sql +0 -5
  205. package/prisma/migrations/20250627180828_rename_completed_col/migration.sql +0 -15
  206. package/prisma/migrations/20250708152414_add_had_call_col/migration.sql +0 -2
  207. package/prisma/migrations/20250711201749_update_retool_role_to_edit_had_call_column_in_organization_table/migration.sql +0 -7
  208. package/prisma/migrations/20250711204234_add_read_permission_for_where_clause_on_retool_role/migration.sql +0 -8
  209. package/prisma/migrations/20250714153009_remove_stripe_and_add_has_access/migration.sql +0 -31
  210. package/prisma/migrations/20250715200054_add_perms_for_has_access_for_retool/migration.sql +0 -7
  211. package/prisma/migrations/migration_lock.toml +0 -3
  212. package/prisma/randomSecret.sql +0 -12
  213. package/prisma/schema/attachments.prisma +0 -35
  214. package/prisma/schema/auth.prisma +0 -122
  215. package/prisma/schema/comment.prisma +0 -27
  216. package/prisma/schema/context.prisma +0 -18
  217. package/prisma/schema/control.prisma +0 -21
  218. package/prisma/schema/framework-editor.prisma +0 -96
  219. package/prisma/schema/framework.prisma +0 -14
  220. package/prisma/schema/integration.prisma +0 -32
  221. package/prisma/schema/onboarding.prisma +0 -18
  222. package/prisma/schema/organization.prisma +0 -34
  223. package/prisma/schema/policy.prisma +0 -32
  224. package/prisma/schema/requirement.prisma +0 -15
  225. package/prisma/schema/risk.prisma +0 -57
  226. package/prisma/schema/shared.prisma +0 -104
  227. package/prisma/schema/task.prisma +0 -41
  228. package/prisma/schema/trust.prisma +0 -37
  229. package/prisma/schema/vendor.prisma +0 -56
  230. package/prisma/schema.prisma +0 -12
  231. package/prisma/seed/frameworkEditorSchemas.js +0 -136
  232. package/prisma/seed/frameworkEditorSchemas.ts +0 -178
  233. package/prisma/seed/primitives/FrameworkEditorControlTemplate.json +0 -296
  234. package/prisma/seed/primitives/FrameworkEditorFramework.json +0 -101
  235. package/prisma/seed/primitives/FrameworkEditorPolicyTemplate.json +0 -6057
  236. package/prisma/seed/primitives/FrameworkEditorRequirement.json +0 -7841
  237. package/prisma/seed/primitives/FrameworkEditorTaskTemplate.json +0 -308
  238. package/prisma/seed/primitives/FrameworkEditorVideo.json +0 -47
  239. package/prisma/seed/relations/_FrameworkEditorControlTemplateToFrameworkEditorPolicyTemplate.json +0 -178
  240. package/prisma/seed/relations/_FrameworkEditorControlTemplateToFrameworkEditorRequirement.json +0 -470
  241. package/prisma/seed/relations/_FrameworkEditorControlTemplateToFrameworkEditorTaskTemplate.json +0 -142
  242. package/prisma/seed/seed.js +0 -160
  243. package/prisma/seed/seed.ts +0 -192
  244. package/scripts/setup-consumer.sh +0 -67
@@ -1,31 +0,0 @@
1
- /*
2
- Warnings:
3
-
4
- - You are about to drop the column `hadCall` on the `Organization` table. All the data in the column will be lost.
5
- - You are about to drop the column `stripeCustomerId` on the `Organization` table. All the data in the column will be lost.
6
- - You are about to drop the column `stripeSubscriptionData` on the `Organization` table. All the data in the column will be lost.
7
- - You are about to drop the column `subscriptionType` on the `Organization` table. All the data in the column will be lost.
8
-
9
- */
10
- -- DropIndex
11
- DROP INDEX "Organization_stripeCustomerId_idx";
12
-
13
- -- DropIndex
14
- DROP INDEX "Organization_subscriptionType_idx";
15
-
16
- -- Add hasAccess column
17
- ALTER TABLE "Organization" ADD COLUMN "hasAccess" BOOLEAN NOT NULL DEFAULT false;
18
-
19
- -- Update all organizations to have access depending on subscription type
20
- UPDATE "Organization" SET "hasAccess" = true WHERE "subscriptionType" = 'FREE';
21
- UPDATE "Organization" SET "hasAccess" = true WHERE "subscriptionType" = 'STARTER';
22
- UPDATE "Organization" SET "hasAccess" = true WHERE "subscriptionType" = 'MANAGED';
23
-
24
- -- Drop columns
25
- ALTER TABLE "Organization" DROP COLUMN "hadCall";
26
- ALTER TABLE "Organization" DROP COLUMN "stripeCustomerId";
27
- ALTER TABLE "Organization" DROP COLUMN "stripeSubscriptionData";
28
- ALTER TABLE "Organization" DROP COLUMN "subscriptionType";
29
-
30
- -- Drop subscription type enum
31
- DROP TYPE "SubscriptionType";
@@ -1,7 +0,0 @@
1
- DO $$
2
- BEGIN
3
- IF EXISTS (SELECT 1 FROM pg_roles WHERE rolname = 'retool_write') THEN
4
- GRANT UPDATE ("hasAccess") ON "Organization" TO retool_write;
5
- END IF;
6
- END
7
- $$;
@@ -1,3 +0,0 @@
1
- # Please do not edit this file manually
2
- # It should be added in your version-control system (e.g., Git)
3
- provider = "postgresql"
@@ -1,35 +0,0 @@
1
- model Attachment {
2
- id String @id @default(dbgenerated("generate_prefixed_cuid('att'::text)"))
3
- name String
4
- url String
5
- type AttachmentType
6
- entityId String
7
- entityType AttachmentEntityType
8
-
9
- // Dates
10
- createdAt DateTime @default(now())
11
- updatedAt DateTime @updatedAt
12
-
13
- // Relationships
14
- organizationId String
15
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
16
- comment Comment? @relation(fields: [commentId], references: [id])
17
- commentId String?
18
-
19
- @@index([entityId, entityType])
20
- }
21
-
22
- enum AttachmentEntityType {
23
- task
24
- vendor
25
- risk
26
- comment
27
- }
28
-
29
- enum AttachmentType {
30
- image
31
- video
32
- audio
33
- document
34
- other
35
- }
@@ -1,122 +0,0 @@
1
- model User {
2
- id String @id @default(dbgenerated("generate_prefixed_cuid('usr'::text)"))
3
- name String
4
- email String
5
- emailVerified Boolean
6
- image String?
7
- createdAt DateTime @default(now())
8
- updatedAt DateTime @updatedAt
9
- lastLogin DateTime?
10
-
11
- accounts Account[]
12
- auditLog AuditLog[]
13
- integrationResults IntegrationResult[]
14
- invitations Invitation[]
15
- members Member[]
16
- sessions Session[]
17
-
18
- @@unique([email])
19
- }
20
-
21
- model EmployeeTrainingVideoCompletion {
22
- id String @id @default(dbgenerated("generate_prefixed_cuid('evc'::text)"))
23
- completedAt DateTime?
24
- videoId String
25
-
26
- memberId String
27
- member Member @relation(fields: [memberId], references: [id], onDelete: Cascade)
28
-
29
- @@unique([memberId, videoId])
30
- @@index([memberId])
31
- }
32
-
33
- model Session {
34
- id String @id @default(dbgenerated("generate_prefixed_cuid('ses'::text)"))
35
- expiresAt DateTime
36
- token String
37
- createdAt DateTime @default(now())
38
- updatedAt DateTime @updatedAt
39
- ipAddress String?
40
- userAgent String?
41
- userId String
42
- activeOrganizationId String?
43
- user User @relation(fields: [userId], references: [id], onDelete: Cascade)
44
-
45
- @@unique([token])
46
- }
47
-
48
- model Account {
49
- id String @id @default(dbgenerated("generate_prefixed_cuid('acc'::text)"))
50
- accountId String
51
- providerId String
52
- userId String
53
- user User @relation(fields: [userId], references: [id], onDelete: Cascade)
54
- accessToken String?
55
- refreshToken String?
56
- idToken String?
57
- accessTokenExpiresAt DateTime?
58
- refreshTokenExpiresAt DateTime?
59
- scope String?
60
- password String?
61
- createdAt DateTime
62
- updatedAt DateTime
63
- }
64
-
65
- model Verification {
66
- id String @id @default(dbgenerated("generate_prefixed_cuid('ver'::text)"))
67
- identifier String
68
- value String
69
- expiresAt DateTime
70
- createdAt DateTime @default(now())
71
- updatedAt DateTime @updatedAt
72
- }
73
-
74
- model Member {
75
- id String @id @default(dbgenerated("generate_prefixed_cuid('mem'::text)"))
76
- organizationId String
77
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
78
- userId String
79
- user User @relation(fields: [userId], references: [id], onDelete: Cascade)
80
- role String // Purposefully a string, since BetterAuth doesn't support enums this way
81
- createdAt DateTime @default(now())
82
-
83
- department Departments @default(none)
84
- isActive Boolean @default(true)
85
- employeeTrainingVideoCompletion EmployeeTrainingVideoCompletion[]
86
- fleetDmLabelId Int?
87
-
88
- assignedPolicies Policy[] @relation("PolicyAssignee") // Policies where this member is an assignee
89
- approvedPolicies Policy[] @relation("PolicyApprover") // Policies where this member is an approver
90
- risks Risk[]
91
- tasks Task[]
92
- vendors Vendor[]
93
- comments Comment[]
94
- auditLogs AuditLog[]
95
- }
96
-
97
- model Invitation {
98
- id String @id @default(dbgenerated("generate_prefixed_cuid('inv'::text)"))
99
- organizationId String
100
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
101
- email String
102
- role String // Purposefully a string, since BetterAuth doesn't support enums this way
103
- status String
104
- expiresAt DateTime
105
- inviterId String
106
- user User @relation(fields: [inviterId], references: [id], onDelete: Cascade)
107
- }
108
-
109
- // This is only for the app to consume, shouldn't be enforced by DB
110
- // Otherwise it won't work with Better Auth, as per https://www.better-auth.com/docs/plugins/organization#access-control
111
- enum Role {
112
- owner
113
- admin
114
- auditor
115
- employee
116
- }
117
-
118
- enum PolicyStatus {
119
- draft
120
- published
121
- needs_review
122
- }
@@ -1,27 +0,0 @@
1
- model Comment {
2
- id String @id @default(dbgenerated("generate_prefixed_cuid('cmt'::text)"))
3
- content String
4
- entityId String
5
- entityType CommentEntityType
6
-
7
- // Dates
8
- createdAt DateTime @default(now())
9
-
10
- // Relationships
11
- authorId String
12
- author Member @relation(fields: [authorId], references: [id])
13
- organizationId String
14
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
15
-
16
- // Relation to Attachments
17
- attachments Attachment[]
18
-
19
- @@index([entityId])
20
- }
21
-
22
- enum CommentEntityType {
23
- task
24
- vendor
25
- risk
26
- policy
27
- }
@@ -1,18 +0,0 @@
1
- model Context {
2
- id String @id @default(dbgenerated("generate_prefixed_cuid('ctx'::text)"))
3
- organizationId String
4
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
5
-
6
- question String
7
- answer String
8
-
9
- tags String[]
10
-
11
- createdAt DateTime @default(now())
12
- updatedAt DateTime @updatedAt
13
-
14
- @@index([organizationId])
15
- @@index([question])
16
- @@index([answer])
17
- @@index([tags])
18
- }
@@ -1,21 +0,0 @@
1
- model Control {
2
- // Metadata
3
- id String @id @default(dbgenerated("generate_prefixed_cuid('ctl'::text)"))
4
- name String
5
- description String
6
-
7
- // Review dates
8
- lastReviewDate DateTime?
9
- nextReviewDate DateTime?
10
-
11
- // Relationships
12
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
13
- organizationId String
14
- requirementsMapped RequirementMap[]
15
- tasks Task[]
16
- policies Policy[]
17
- controlTemplateId String?
18
- controlTemplate FrameworkEditorControlTemplate? @relation(fields: [controlTemplateId], references: [id])
19
-
20
- @@index([organizationId])
21
- }
@@ -1,96 +0,0 @@
1
- // --- Data for Framework Editor ---
2
- model FrameworkEditorVideo {
3
- id String @id @default(dbgenerated("generate_prefixed_cuid('frk_vi'::text)"))
4
- title String
5
- description String
6
- youtubeId String
7
- url String
8
-
9
- // Dates
10
- createdAt DateTime @default(now())
11
- updatedAt DateTime @default(now()) @updatedAt
12
- }
13
-
14
- model FrameworkEditorFramework {
15
- id String @id @default(dbgenerated("generate_prefixed_cuid('frk'::text)"))
16
- name String // e.g., "soc2", "iso27001"
17
- version String
18
- description String
19
- visible Boolean @default(false)
20
-
21
- requirements FrameworkEditorRequirement[]
22
- frameworkInstances FrameworkInstance[]
23
-
24
- // Dates
25
- createdAt DateTime @default(now())
26
- updatedAt DateTime @default(now()) @updatedAt
27
- }
28
-
29
- model FrameworkEditorRequirement {
30
- id String @id @default(dbgenerated("generate_prefixed_cuid('frk_rq'::text)"))
31
- frameworkId String
32
- framework FrameworkEditorFramework @relation(fields: [frameworkId], references: [id])
33
-
34
- name String // Original requirement ID within that framework, e.g., "Privacy"
35
- identifier String @default("") // Unique identifier for the requirement, e.g., "cc1-1"
36
- description String
37
-
38
- controlTemplates FrameworkEditorControlTemplate[]
39
- requirementMaps RequirementMap[]
40
-
41
- // Dates
42
- createdAt DateTime @default(now())
43
- updatedAt DateTime @default(now()) @updatedAt
44
- }
45
-
46
- model FrameworkEditorPolicyTemplate {
47
- id String @id @default(dbgenerated("generate_prefixed_cuid('frk_pt'::text)"))
48
- name String
49
- description String
50
- frequency Frequency // Using the enum from shared.prisma
51
- department Departments // Using the enum from shared.prisma
52
- content Json
53
-
54
- controlTemplates FrameworkEditorControlTemplate[]
55
-
56
- // Dates
57
- createdAt DateTime @default(now())
58
- updatedAt DateTime @default(now()) @updatedAt
59
-
60
- // Instances
61
- policies Policy[]
62
- }
63
-
64
- model FrameworkEditorTaskTemplate {
65
- id String @id @default(dbgenerated("generate_prefixed_cuid('frk_tt'::text)"))
66
- name String
67
- description String
68
- frequency Frequency // Using the enum from shared.prisma
69
- department Departments // Using the enum from shared.prisma
70
-
71
- controlTemplates FrameworkEditorControlTemplate[]
72
-
73
- // Dates
74
- createdAt DateTime @default(now())
75
- updatedAt DateTime @default(now()) @updatedAt
76
-
77
- // Instances
78
- tasks Task[]
79
- }
80
-
81
- model FrameworkEditorControlTemplate {
82
- id String @id @default(dbgenerated("generate_prefixed_cuid('frk_ct'::text)"))
83
- name String
84
- description String
85
-
86
- policyTemplates FrameworkEditorPolicyTemplate[]
87
- requirements FrameworkEditorRequirement[]
88
- taskTemplates FrameworkEditorTaskTemplate[]
89
-
90
- // Dates
91
- createdAt DateTime @default(now())
92
- updatedAt DateTime @default(now()) @updatedAt
93
-
94
- // Instances
95
- controls Control[]
96
- }
@@ -1,14 +0,0 @@
1
- model FrameworkInstance {
2
- // Metadata
3
- id String @id @default(dbgenerated("generate_prefixed_cuid('frm'::text)"))
4
- organizationId String
5
-
6
- frameworkId String
7
- framework FrameworkEditorFramework @relation(fields: [frameworkId], references: [id], onDelete: Cascade)
8
-
9
- // Relationships
10
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
11
- requirementsMapped RequirementMap[]
12
-
13
- @@unique([organizationId, frameworkId])
14
- }
@@ -1,32 +0,0 @@
1
- model Integration {
2
- id String @id @default(dbgenerated("generate_prefixed_cuid('int'::text)"))
3
- name String
4
- integrationId String
5
- settings Json
6
- userSettings Json
7
- organizationId String
8
- lastRunAt DateTime?
9
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
10
- results IntegrationResult[]
11
-
12
- @@index([organizationId])
13
- }
14
-
15
- model IntegrationResult {
16
- id String @id @default(dbgenerated("generate_prefixed_cuid('itr'::text)"))
17
- title String?
18
- description String?
19
- remediation String?
20
- status String?
21
- severity String?
22
- resultDetails Json?
23
- completedAt DateTime? @default(now())
24
- integrationId String
25
- organizationId String
26
- assignedUserId String?
27
-
28
- assignedUser User? @relation(fields: [assignedUserId], references: [id], onDelete: Cascade)
29
- integration Integration @relation(fields: [integrationId], references: [id], onDelete: Cascade)
30
-
31
- @@index([integrationId])
32
- }
@@ -1,18 +0,0 @@
1
- model Onboarding {
2
- organizationId String @id
3
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
4
- policies Boolean @default(false)
5
- employees Boolean @default(false)
6
- vendors Boolean @default(false)
7
- integrations Boolean @default(false)
8
- risk Boolean @default(false)
9
- team Boolean @default(false)
10
- tasks Boolean @default(false)
11
- callBooked Boolean @default(false)
12
- companyBookingDetails Json?
13
- companyDetails Json?
14
- triggerJobId String?
15
- triggerJobCompleted Boolean @default(false)
16
-
17
- @@index([organizationId])
18
- }
@@ -1,34 +0,0 @@
1
- model Organization {
2
- id String @id @default(dbgenerated("generate_prefixed_cuid('org'::text)"))
3
- name String
4
- slug String @unique @default(dbgenerated("generate_prefixed_cuid('slug'::text)"))
5
- logo String?
6
- createdAt DateTime @default(now())
7
- metadata String?
8
- onboarding Onboarding?
9
- website String?
10
- onboardingCompleted Boolean @default(false)
11
- hasAccess Boolean @default(false)
12
-
13
- // FleetDM
14
- fleetDmLabelId Int?
15
- isFleetSetupCompleted Boolean @default(false)
16
-
17
- apiKeys ApiKey[]
18
- auditLog AuditLog[]
19
- controls Control[]
20
- frameworkInstances FrameworkInstance[]
21
- integrations Integration[]
22
- invitations Invitation[]
23
- members Member[]
24
- policy Policy[]
25
- risk Risk[]
26
- vendors Vendor[]
27
- tasks Task[]
28
- comments Comment[]
29
- attachments Attachment[]
30
- trust Trust[]
31
- context Context[]
32
-
33
- @@index([slug])
34
- }
@@ -1,32 +0,0 @@
1
- model Policy {
2
- id String @id @default(dbgenerated("generate_prefixed_cuid('pol'::text)"))
3
- name String
4
- description String?
5
- status PolicyStatus @default(draft)
6
- content Json[]
7
- frequency Frequency?
8
- department Departments?
9
- isRequiredToSign Boolean @default(false)
10
- signedBy String[] @default([])
11
- reviewDate DateTime?
12
- isArchived Boolean @default(false)
13
-
14
- // Dates
15
- createdAt DateTime @default(now())
16
- updatedAt DateTime @updatedAt
17
- lastArchivedAt DateTime?
18
- lastPublishedAt DateTime?
19
-
20
- // Relationships
21
- organizationId String
22
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
23
- assigneeId String?
24
- assignee Member? @relation("PolicyAssignee", fields: [assigneeId], references: [id], onDelete: SetNull, onUpdate: Cascade)
25
- approverId String?
26
- approver Member? @relation("PolicyApprover", fields: [approverId], references: [id], onDelete: SetNull, onUpdate: Cascade)
27
- policyTemplateId String?
28
- policyTemplate FrameworkEditorPolicyTemplate? @relation(fields: [policyTemplateId], references: [id])
29
- controls Control[]
30
-
31
- @@index([organizationId])
32
- }
@@ -1,15 +0,0 @@
1
- model RequirementMap {
2
- id String @id @default(dbgenerated("generate_prefixed_cuid('req'::text)"))
3
-
4
- requirementId String
5
- requirement FrameworkEditorRequirement @relation(fields: [requirementId], references: [id], onDelete: Cascade)
6
-
7
- controlId String
8
- control Control @relation(fields: [controlId], references: [id], onDelete: Cascade)
9
-
10
- frameworkInstanceId String
11
- frameworkInstance FrameworkInstance @relation(fields: [frameworkInstanceId], references: [id], onDelete: Cascade)
12
-
13
- @@unique([controlId, frameworkInstanceId, requirementId])
14
- @@index([requirementId, frameworkInstanceId])
15
- }
@@ -1,57 +0,0 @@
1
- model Risk {
2
- // Metadata
3
- id String @id @default(dbgenerated("generate_prefixed_cuid('rsk'::text)"))
4
- title String
5
- description String
6
- category RiskCategory
7
- department Departments?
8
- status RiskStatus @default(open)
9
- likelihood Likelihood @default(very_unlikely)
10
- impact Impact @default(insignificant)
11
- residualLikelihood Likelihood @default(very_unlikely)
12
- residualImpact Impact @default(insignificant)
13
- treatmentStrategyDescription String?
14
- treatmentStrategy RiskTreatmentType @default(accept)
15
-
16
- // Dates
17
- createdAt DateTime @default(now())
18
- updatedAt DateTime @updatedAt
19
-
20
- // Relationships
21
- organizationId String
22
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
23
- assigneeId String?
24
- assignee Member? @relation(fields: [assigneeId], references: [id])
25
- tasks Task[]
26
-
27
- @@index([organizationId])
28
- @@index([category])
29
- @@index([status])
30
- }
31
-
32
- enum RiskTreatmentType {
33
- accept
34
- avoid
35
- mitigate
36
- transfer
37
- }
38
-
39
- enum RiskCategory {
40
- customer
41
- governance
42
- operations
43
- other
44
- people
45
- regulatory
46
- reporting
47
- resilience
48
- technology
49
- vendor_management
50
- }
51
-
52
- enum RiskStatus {
53
- open
54
- pending
55
- closed
56
- archived
57
- }
@@ -1,104 +0,0 @@
1
- model ApiKey {
2
- id String @id @default(dbgenerated("generate_prefixed_cuid('apk'::text)"))
3
- name String
4
- key String @unique
5
- salt String?
6
- createdAt DateTime @default(now())
7
- expiresAt DateTime?
8
- lastUsedAt DateTime?
9
- isActive Boolean @default(true)
10
-
11
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
12
- organizationId String
13
-
14
- @@index([organizationId])
15
- @@index([key])
16
- }
17
-
18
- model AuditLog {
19
- id String @id @default(dbgenerated("generate_prefixed_cuid('aud'::text)"))
20
- timestamp DateTime @default(now())
21
- organizationId String
22
- userId String
23
- memberId String?
24
- data Json
25
- description String?
26
- entityId String?
27
- entityType AuditLogEntityType?
28
-
29
- organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
30
- user User @relation(fields: [userId], references: [id], onDelete: Cascade)
31
- member Member? @relation(fields: [memberId], references: [id], onDelete: Cascade)
32
-
33
- @@index([userId])
34
- @@index([organizationId])
35
- @@index([memberId])
36
- @@index([entityType])
37
- }
38
-
39
- enum AuditLogEntityType {
40
- organization
41
- framework
42
- requirement
43
- control
44
- policy
45
- task
46
- people
47
- risk
48
- vendor
49
- tests
50
- integration
51
- }
52
-
53
- model GlobalVendors {
54
- website String @id @unique
55
- company_name String?
56
- legal_name String?
57
- company_description String?
58
- company_hq_address String?
59
- privacy_policy_url String?
60
- terms_of_service_url String?
61
- service_level_agreement_url String?
62
- security_page_url String?
63
- trust_page_url String?
64
- security_certifications String[]
65
- subprocessors String[]
66
- type_of_company String?
67
-
68
- approved Boolean @default(false)
69
- createdAt DateTime @default(now())
70
-
71
- @@index([website])
72
- }
73
-
74
- enum Departments {
75
- none
76
- admin
77
- gov
78
- hr
79
- it
80
- itsm
81
- qms
82
- }
83
-
84
- enum Frequency {
85
- monthly
86
- quarterly
87
- yearly
88
- }
89
-
90
- enum Likelihood {
91
- very_unlikely
92
- unlikely
93
- possible
94
- likely
95
- very_likely
96
- }
97
-
98
- enum Impact {
99
- insignificant
100
- minor
101
- moderate
102
- major
103
- severe
104
- }