create-mithaq 0.0.0-stage → 0.1.1

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 (357) hide show
  1. package/LICENSE +22 -0
  2. package/LICENSES/payload.txt +22 -0
  3. package/LICENSES/ponytail.txt +21 -0
  4. package/index.js +127 -0
  5. package/package.json +19 -4
  6. package/template/apps/asas-platform/components.json +25 -0
  7. package/template/apps/asas-platform/gitignore +3 -0
  8. package/template/apps/asas-platform/package.json +55 -0
  9. package/template/apps/asas-platform/public/favicon.svg +1 -0
  10. package/template/apps/asas-platform/src/api.ts +147 -0
  11. package/template/apps/asas-platform/src/auth-frame.tsx +150 -0
  12. package/template/apps/asas-platform/src/components/mithaq/cells.tsx +112 -0
  13. package/template/apps/asas-platform/src/components/mithaq/controls.tsx +650 -0
  14. package/template/apps/asas-platform/src/components/mithaq/field-shell.tsx +53 -0
  15. package/template/apps/asas-platform/src/components/mithaq/filter-operators.ts +108 -0
  16. package/template/apps/asas-platform/src/components/mithaq/form.tsx +1467 -0
  17. package/template/apps/asas-platform/src/components/mithaq/list-columns.tsx +108 -0
  18. package/template/apps/asas-platform/src/components/mithaq/list-filters.tsx +368 -0
  19. package/template/apps/asas-platform/src/components/mithaq/list-pagination.tsx +153 -0
  20. package/template/apps/asas-platform/src/components/mithaq/list-query.ts +432 -0
  21. package/template/apps/asas-platform/src/components/mithaq/list-selection.tsx +74 -0
  22. package/template/apps/asas-platform/src/components/mithaq/list.tsx +865 -0
  23. package/template/apps/asas-platform/src/components/mithaq/nav.tsx +871 -0
  24. package/template/apps/asas-platform/src/components/mithaq/nodes.tsx +1024 -0
  25. package/template/apps/asas-platform/src/components/mithaq/relationship-cell.tsx +127 -0
  26. package/template/apps/asas-platform/src/components/mithaq/relationship-control.tsx +400 -0
  27. package/template/apps/asas-platform/src/components/mithaq/rich-text-nodes.ts +6 -0
  28. package/template/apps/asas-platform/src/components/mithaq/rich-text.tsx +1083 -0
  29. package/template/apps/asas-platform/src/components/mithaq/upload.tsx +686 -0
  30. package/template/apps/asas-platform/src/components/ui/accordion.tsx +74 -0
  31. package/template/apps/asas-platform/src/components/ui/alert-dialog.tsx +185 -0
  32. package/template/apps/asas-platform/src/components/ui/avatar.tsx +106 -0
  33. package/template/apps/asas-platform/src/components/ui/badge.tsx +48 -0
  34. package/template/apps/asas-platform/src/components/ui/breadcrumb.tsx +124 -0
  35. package/template/apps/asas-platform/src/components/ui/button-group.tsx +87 -0
  36. package/template/apps/asas-platform/src/components/ui/button.tsx +55 -0
  37. package/template/apps/asas-platform/src/components/ui/calendar.tsx +223 -0
  38. package/template/apps/asas-platform/src/components/ui/card.tsx +102 -0
  39. package/template/apps/asas-platform/src/components/ui/chart.tsx +371 -0
  40. package/template/apps/asas-platform/src/components/ui/checkbox.tsx +28 -0
  41. package/template/apps/asas-platform/src/components/ui/collapsible.tsx +19 -0
  42. package/template/apps/asas-platform/src/components/ui/combobox.tsx +308 -0
  43. package/template/apps/asas-platform/src/components/ui/dialog.tsx +158 -0
  44. package/template/apps/asas-platform/src/components/ui/direction.tsx +6 -0
  45. package/template/apps/asas-platform/src/components/ui/directional-icon.tsx +20 -0
  46. package/template/apps/asas-platform/src/components/ui/drawer.tsx +216 -0
  47. package/template/apps/asas-platform/src/components/ui/dropdown-menu.tsx +267 -0
  48. package/template/apps/asas-platform/src/components/ui/field.tsx +236 -0
  49. package/template/apps/asas-platform/src/components/ui/input-group.tsx +155 -0
  50. package/template/apps/asas-platform/src/components/ui/input-otp.tsx +84 -0
  51. package/template/apps/asas-platform/src/components/ui/input.tsx +19 -0
  52. package/template/apps/asas-platform/src/components/ui/label.tsx +19 -0
  53. package/template/apps/asas-platform/src/components/ui/popover.tsx +90 -0
  54. package/template/apps/asas-platform/src/components/ui/radio-group.tsx +37 -0
  55. package/template/apps/asas-platform/src/components/ui/resizable.tsx +47 -0
  56. package/template/apps/asas-platform/src/components/ui/scroll-area.tsx +54 -0
  57. package/template/apps/asas-platform/src/components/ui/select.tsx +204 -0
  58. package/template/apps/asas-platform/src/components/ui/separator.tsx +24 -0
  59. package/template/apps/asas-platform/src/components/ui/sheet.tsx +139 -0
  60. package/template/apps/asas-platform/src/components/ui/sidebar.tsx +714 -0
  61. package/template/apps/asas-platform/src/components/ui/skeleton.tsx +13 -0
  62. package/template/apps/asas-platform/src/components/ui/slider.tsx +55 -0
  63. package/template/apps/asas-platform/src/components/ui/spinner.tsx +10 -0
  64. package/template/apps/asas-platform/src/components/ui/switch.tsx +29 -0
  65. package/template/apps/asas-platform/src/components/ui/table.tsx +115 -0
  66. package/template/apps/asas-platform/src/components/ui/tabs.tsx +79 -0
  67. package/template/apps/asas-platform/src/components/ui/textarea.tsx +17 -0
  68. package/template/apps/asas-platform/src/components/ui/toggle-group.tsx +89 -0
  69. package/template/apps/asas-platform/src/components/ui/toggle.tsx +44 -0
  70. package/template/apps/asas-platform/src/components/ui/tooltip.tsx +63 -0
  71. package/template/apps/asas-platform/src/copy.ts +1 -0
  72. package/template/apps/asas-platform/src/hooks/use-mobile.ts +19 -0
  73. package/template/apps/asas-platform/src/lib/utils.ts +1 -0
  74. package/template/apps/asas-platform/src/links.ts +38 -0
  75. package/template/apps/asas-platform/src/locale-switch.tsx +26 -0
  76. package/template/apps/asas-platform/src/redirect.ts +1 -0
  77. package/template/apps/asas-platform/src/request-headers.ts +11 -0
  78. package/template/apps/asas-platform/src/routeTree.gen.ts +181 -0
  79. package/template/apps/asas-platform/src/router.tsx +7 -0
  80. package/template/apps/asas-platform/src/routes/(screens)/platform/files.ts +4 -0
  81. package/template/apps/asas-platform/src/routes/(screens)/platform/screen.json +3609 -0
  82. package/template/apps/asas-platform/src/routes/(screens)/platform/types.ts +145 -0
  83. package/template/apps/asas-platform/src/routes/(screens)/platform.$.tsx +17 -0
  84. package/template/apps/asas-platform/src/routes/(screens)/platform.index.tsx +10 -0
  85. package/template/apps/asas-platform/src/routes/(screens)/platform.tsx +13 -0
  86. package/template/apps/asas-platform/src/routes/__root.tsx +95 -0
  87. package/template/apps/asas-platform/src/routes/api/$.ts +30 -0
  88. package/template/apps/asas-platform/src/routes/auth.sign-in.tsx +72 -0
  89. package/template/apps/asas-platform/src/routes/unauthorized.tsx +122 -0
  90. package/template/apps/asas-platform/src/screen-form.tsx +34 -0
  91. package/template/apps/asas-platform/src/screen-list.tsx +139 -0
  92. package/template/apps/asas-platform/src/screen-names.ts +10 -0
  93. package/template/apps/asas-platform/src/screens.tsx +868 -0
  94. package/template/apps/asas-platform/src/server.ts +20 -0
  95. package/template/apps/asas-platform/src/slide.ts +22 -0
  96. package/template/apps/asas-platform/src/start.ts +42 -0
  97. package/template/apps/asas-platform/src/styles.css +200 -0
  98. package/template/apps/asas-platform/src/theme.ts +2 -0
  99. package/template/apps/asas-platform/tsconfig.json +19 -0
  100. package/template/apps/asas-platform/vite.config.ts +26 -0
  101. package/template/apps/asas-tanstack/components.json +25 -0
  102. package/template/apps/asas-tanstack/gitignore +3 -0
  103. package/template/apps/asas-tanstack/package.json +56 -0
  104. package/template/apps/asas-tanstack/public/favicon.svg +1 -0
  105. package/template/apps/asas-tanstack/src/api.ts +147 -0
  106. package/template/apps/asas-tanstack/src/auth-frame.tsx +150 -0
  107. package/template/apps/asas-tanstack/src/components/mithaq/cells.tsx +112 -0
  108. package/template/apps/asas-tanstack/src/components/mithaq/controls.tsx +650 -0
  109. package/template/apps/asas-tanstack/src/components/mithaq/field-shell.tsx +53 -0
  110. package/template/apps/asas-tanstack/src/components/mithaq/filter-operators.ts +108 -0
  111. package/template/apps/asas-tanstack/src/components/mithaq/form.tsx +1467 -0
  112. package/template/apps/asas-tanstack/src/components/mithaq/list-columns.tsx +108 -0
  113. package/template/apps/asas-tanstack/src/components/mithaq/list-filters.tsx +368 -0
  114. package/template/apps/asas-tanstack/src/components/mithaq/list-pagination.tsx +153 -0
  115. package/template/apps/asas-tanstack/src/components/mithaq/list-query.ts +432 -0
  116. package/template/apps/asas-tanstack/src/components/mithaq/list-selection.tsx +74 -0
  117. package/template/apps/asas-tanstack/src/components/mithaq/list.tsx +865 -0
  118. package/template/apps/asas-tanstack/src/components/mithaq/nav.tsx +871 -0
  119. package/template/apps/asas-tanstack/src/components/mithaq/nodes.tsx +1024 -0
  120. package/template/apps/asas-tanstack/src/components/mithaq/relationship-cell.tsx +127 -0
  121. package/template/apps/asas-tanstack/src/components/mithaq/relationship-control.tsx +400 -0
  122. package/template/apps/asas-tanstack/src/components/mithaq/rich-text-nodes.ts +6 -0
  123. package/template/apps/asas-tanstack/src/components/mithaq/rich-text.tsx +1083 -0
  124. package/template/apps/asas-tanstack/src/components/mithaq/upload.tsx +686 -0
  125. package/template/apps/asas-tanstack/src/components/ui/accordion.tsx +10 -0
  126. package/template/apps/asas-tanstack/src/components/ui/alert-dialog.tsx +173 -0
  127. package/template/apps/asas-tanstack/src/components/ui/avatar.tsx +104 -0
  128. package/template/apps/asas-tanstack/src/components/ui/badge.tsx +48 -0
  129. package/template/apps/asas-tanstack/src/components/ui/breadcrumb.tsx +125 -0
  130. package/template/apps/asas-tanstack/src/components/ui/button-group.tsx +87 -0
  131. package/template/apps/asas-tanstack/src/components/ui/button.tsx +56 -0
  132. package/template/apps/asas-tanstack/src/components/ui/calendar.tsx +223 -0
  133. package/template/apps/asas-tanstack/src/components/ui/card.tsx +94 -0
  134. package/template/apps/asas-tanstack/src/components/ui/chart.tsx +369 -0
  135. package/template/apps/asas-tanstack/src/components/ui/checkbox.tsx +27 -0
  136. package/template/apps/asas-tanstack/src/components/ui/collapsible.tsx +19 -0
  137. package/template/apps/asas-tanstack/src/components/ui/combobox.tsx +300 -0
  138. package/template/apps/asas-tanstack/src/components/ui/dialog.tsx +149 -0
  139. package/template/apps/asas-tanstack/src/components/ui/direction.tsx +5 -0
  140. package/template/apps/asas-tanstack/src/components/ui/directional-icon.tsx +20 -0
  141. package/template/apps/asas-tanstack/src/components/ui/drawer.tsx +215 -0
  142. package/template/apps/asas-tanstack/src/components/ui/dropdown-menu.tsx +267 -0
  143. package/template/apps/asas-tanstack/src/components/ui/field.tsx +225 -0
  144. package/template/apps/asas-tanstack/src/components/ui/input-group.tsx +147 -0
  145. package/template/apps/asas-tanstack/src/components/ui/input-otp.tsx +20 -0
  146. package/template/apps/asas-tanstack/src/components/ui/input.tsx +20 -0
  147. package/template/apps/asas-tanstack/src/components/ui/label.tsx +18 -0
  148. package/template/apps/asas-tanstack/src/components/ui/popover.tsx +50 -0
  149. package/template/apps/asas-tanstack/src/components/ui/radio-group.tsx +10 -0
  150. package/template/apps/asas-tanstack/src/components/ui/resizable.tsx +47 -0
  151. package/template/apps/asas-tanstack/src/components/ui/scroll-area.tsx +52 -0
  152. package/template/apps/asas-tanstack/src/components/ui/select.tsx +190 -0
  153. package/template/apps/asas-tanstack/src/components/ui/separator.tsx +23 -0
  154. package/template/apps/asas-tanstack/src/components/ui/sheet.tsx +127 -0
  155. package/template/apps/asas-tanstack/src/components/ui/sidebar.tsx +716 -0
  156. package/template/apps/asas-tanstack/src/components/ui/skeleton.tsx +13 -0
  157. package/template/apps/asas-tanstack/src/components/ui/slider.tsx +13 -0
  158. package/template/apps/asas-tanstack/src/components/ui/spinner.tsx +11 -0
  159. package/template/apps/asas-tanstack/src/components/ui/switch.tsx +8 -0
  160. package/template/apps/asas-tanstack/src/components/ui/table.tsx +119 -0
  161. package/template/apps/asas-tanstack/src/components/ui/tabs.tsx +80 -0
  162. package/template/apps/asas-tanstack/src/components/ui/textarea.tsx +18 -0
  163. package/template/apps/asas-tanstack/src/components/ui/toggle-group.tsx +8 -0
  164. package/template/apps/asas-tanstack/src/components/ui/toggle.tsx +44 -0
  165. package/template/apps/asas-tanstack/src/components/ui/tooltip.tsx +68 -0
  166. package/template/apps/asas-tanstack/src/copy.ts +870 -0
  167. package/template/apps/asas-tanstack/src/hooks/use-mobile.ts +19 -0
  168. package/template/apps/asas-tanstack/src/lib/utils.ts +6 -0
  169. package/template/apps/asas-tanstack/src/links.ts +38 -0
  170. package/template/apps/asas-tanstack/src/locale-switch.tsx +26 -0
  171. package/template/apps/asas-tanstack/src/quiet-abort.ts +25 -0
  172. package/template/apps/asas-tanstack/src/redirect.ts +20 -0
  173. package/template/apps/asas-tanstack/src/request-headers.ts +11 -0
  174. package/template/apps/asas-tanstack/src/routeTree.gen.ts +382 -0
  175. package/template/apps/asas-tanstack/src/router.tsx +7 -0
  176. package/template/apps/asas-tanstack/src/routes/(screens)/dashboard/files.ts +4 -0
  177. package/template/apps/asas-tanstack/src/routes/(screens)/dashboard/screen.json +3883 -0
  178. package/template/apps/asas-tanstack/src/routes/(screens)/dashboard/types.ts +158 -0
  179. package/template/apps/asas-tanstack/src/routes/(screens)/dashboard.$.tsx +17 -0
  180. package/template/apps/asas-tanstack/src/routes/(screens)/dashboard.index.tsx +10 -0
  181. package/template/apps/asas-tanstack/src/routes/(screens)/dashboard.tsx +13 -0
  182. package/template/apps/asas-tanstack/src/routes/(screens)/portal/files.ts +4 -0
  183. package/template/apps/asas-tanstack/src/routes/(screens)/portal/screen.json +1800 -0
  184. package/template/apps/asas-tanstack/src/routes/(screens)/portal/types.ts +92 -0
  185. package/template/apps/asas-tanstack/src/routes/(screens)/portal.$.tsx +17 -0
  186. package/template/apps/asas-tanstack/src/routes/(screens)/portal.index.tsx +10 -0
  187. package/template/apps/asas-tanstack/src/routes/(screens)/portal.tsx +13 -0
  188. package/template/apps/asas-tanstack/src/routes/__root.tsx +99 -0
  189. package/template/apps/asas-tanstack/src/routes/api/$.ts +11 -0
  190. package/template/apps/asas-tanstack/src/routes/auth.accept-invitation.tsx +101 -0
  191. package/template/apps/asas-tanstack/src/routes/auth.forgot-password.tsx +94 -0
  192. package/template/apps/asas-tanstack/src/routes/auth.handoff.ts +39 -0
  193. package/template/apps/asas-tanstack/src/routes/auth.reset-password.tsx +109 -0
  194. package/template/apps/asas-tanstack/src/routes/auth.sign-in.tsx +86 -0
  195. package/template/apps/asas-tanstack/src/routes/auth.sign-up.tsx +122 -0
  196. package/template/apps/asas-tanstack/src/routes/index.tsx +142 -0
  197. package/template/apps/asas-tanstack/src/routes/unauthorized.tsx +122 -0
  198. package/template/apps/asas-tanstack/src/screen-form.tsx +34 -0
  199. package/template/apps/asas-tanstack/src/screen-list.tsx +139 -0
  200. package/template/apps/asas-tanstack/src/screen-names.ts +10 -0
  201. package/template/apps/asas-tanstack/src/screens.tsx +868 -0
  202. package/template/apps/asas-tanstack/src/server.ts +16 -0
  203. package/template/apps/asas-tanstack/src/slide.ts +22 -0
  204. package/template/apps/asas-tanstack/src/start.ts +57 -0
  205. package/template/apps/asas-tanstack/src/styles.css +159 -0
  206. package/template/apps/asas-tanstack/src/theme.ts +5 -0
  207. package/template/apps/asas-tanstack/tsconfig.json +19 -0
  208. package/template/apps/asas-tanstack/vite.config.ts +28 -0
  209. package/template/package.json +16 -0
  210. package/template/templates/asas/.env.example +16 -0
  211. package/template/templates/asas/components.json +22 -0
  212. package/template/templates/asas/mithaq.hints.json +25 -0
  213. package/template/templates/asas/package.json +38 -0
  214. package/template/templates/asas/src/asas.ts +93 -0
  215. package/template/templates/asas/src/audit-log/audit-log.ts +187 -0
  216. package/template/templates/asas/src/audit-log/sink.ts +89 -0
  217. package/template/templates/asas/src/audit-log/ui/activity.tsx +243 -0
  218. package/template/templates/asas/src/courses/courses.ts +612 -0
  219. package/template/templates/asas/src/courses/ui/archive-button.tsx +25 -0
  220. package/template/templates/asas/src/courses/ui/fee-cell.tsx +19 -0
  221. package/template/templates/asas/src/courses/ui/no-courses-on-offer.tsx +11 -0
  222. package/template/templates/asas/src/courses/ui/no-courses.tsx +13 -0
  223. package/template/templates/asas/src/courses/ui/on-offer.ts +6 -0
  224. package/template/templates/asas/src/courses/ui/status-cell.tsx +31 -0
  225. package/template/templates/asas/src/enrollments/enrollments.ts +137 -0
  226. package/template/templates/asas/src/enrollments/ui/session-cell.tsx +65 -0
  227. package/template/templates/asas/src/kayan/auth/user/account.access.ts +8 -0
  228. package/template/templates/asas/src/kayan/auth/user/account.ts +31 -0
  229. package/template/templates/asas/src/kayan/auth/user/index.ts +18 -0
  230. package/template/templates/asas/src/kayan/auth/user/invitation.access.ts +4 -0
  231. package/template/templates/asas/src/kayan/auth/user/invitation.ts +27 -0
  232. package/template/templates/asas/src/kayan/auth/user/member.access.ts +10 -0
  233. package/template/templates/asas/src/kayan/auth/user/member.screens.ts +37 -0
  234. package/template/templates/asas/src/kayan/auth/user/member.ts +25 -0
  235. package/template/templates/asas/src/kayan/auth/user/organization.access.ts +20 -0
  236. package/template/templates/asas/src/kayan/auth/user/organization.screens.ts +37 -0
  237. package/template/templates/asas/src/kayan/auth/user/organization.ts +24 -0
  238. package/template/templates/asas/src/kayan/auth/user/organizationRole.access.ts +8 -0
  239. package/template/templates/asas/src/kayan/auth/user/organizationRole.ts +25 -0
  240. package/template/templates/asas/src/kayan/auth/user/session.access.ts +8 -0
  241. package/template/templates/asas/src/kayan/auth/user/session.ts +28 -0
  242. package/template/templates/asas/src/kayan/auth/user/user.access.ts +29 -0
  243. package/template/templates/asas/src/kayan/auth/user/user.screens.ts +45 -0
  244. package/template/templates/asas/src/kayan/auth/user/user.ts +31 -0
  245. package/template/templates/asas/src/kayan/auth/user/verification.access.ts +8 -0
  246. package/template/templates/asas/src/kayan/auth/user/verification.ts +23 -0
  247. package/template/templates/asas/src/local-users/local-users.ts +143 -0
  248. package/template/templates/asas/src/media/media.ts +137 -0
  249. package/template/templates/asas/src/media/ui/preview.tsx +143 -0
  250. package/template/templates/asas/src/member-roles/member-roles.ts +207 -0
  251. package/template/templates/asas/src/messages/account.json +106 -0
  252. package/template/templates/asas/src/messages/auditLog.json +186 -0
  253. package/template/templates/asas/src/messages/courses.json +270 -0
  254. package/template/templates/asas/src/messages/enrollments.json +42 -0
  255. package/template/templates/asas/src/messages/invitation.json +66 -0
  256. package/template/templates/asas/src/messages/localUsers.json +42 -0
  257. package/template/templates/asas/src/messages/media.json +66 -0
  258. package/template/templates/asas/src/messages/member.json +42 -0
  259. package/template/templates/asas/src/messages/memberRoles.json +42 -0
  260. package/template/templates/asas/src/messages/mithaq.json +170 -0
  261. package/template/templates/asas/src/messages/organization.json +50 -0
  262. package/template/templates/asas/src/messages/organizationRole.json +50 -0
  263. package/template/templates/asas/src/messages/roles.json +58 -0
  264. package/template/templates/asas/src/messages/session.json +82 -0
  265. package/template/templates/asas/src/messages/sessions.json +106 -0
  266. package/template/templates/asas/src/messages/settings.json +66 -0
  267. package/template/templates/asas/src/messages/tags.json +38 -0
  268. package/template/templates/asas/src/messages/user.json +90 -0
  269. package/template/templates/asas/src/messages/verification.json +50 -0
  270. package/template/templates/asas/src/migrations/20260920080701_parched_tombstone/migration.sql +177 -0
  271. package/template/templates/asas/src/migrations/20260920080701_parched_tombstone/snapshot.json +2169 -0
  272. package/template/templates/asas/src/migrations/20260920230505_zippy_ben_urich/migration.sql +1 -0
  273. package/template/templates/asas/src/migrations/20260920230505_zippy_ben_urich/snapshot.json +2182 -0
  274. package/template/templates/asas/src/migrations/20260920231219_slim_retro_girl/migration.sql +20 -0
  275. package/template/templates/asas/src/migrations/20260920231219_slim_retro_girl/snapshot.json +2409 -0
  276. package/template/templates/asas/src/migrations/20260922082945_military_ironclad/migration.sql +15 -0
  277. package/template/templates/asas/src/migrations/20260922082945_military_ironclad/snapshot.json +2627 -0
  278. package/template/templates/asas/src/migrations/20260922112630_bitter_chat/migration.sql +5 -0
  279. package/template/templates/asas/src/migrations/20260922112630_bitter_chat/snapshot.json +2691 -0
  280. package/template/templates/asas/src/migrations/20260923235915_foamy_rachel_grey/migration.sql +8 -0
  281. package/template/templates/asas/src/migrations/20260923235915_foamy_rachel_grey/snapshot.json +2795 -0
  282. package/template/templates/asas/src/migrations/20260926145709_clean_the_initiative/migration.sql +3 -0
  283. package/template/templates/asas/src/migrations/20260926145709_clean_the_initiative/snapshot.json +2834 -0
  284. package/template/templates/asas/src/migrations/20260927212525_bent_prowler/migration.sql +9 -0
  285. package/template/templates/asas/src/migrations/20260927212525_bent_prowler/snapshot.json +2870 -0
  286. package/template/templates/asas/src/migrations/20260927223441_tranquil_bromley/migration.sql +1 -0
  287. package/template/templates/asas/src/migrations/20260927223441_tranquil_bromley/snapshot.json +2881 -0
  288. package/template/templates/asas/src/migrations/20260928030047_outgoing_wraith/migration.sql +15 -0
  289. package/template/templates/asas/src/migrations/20260928030047_outgoing_wraith/snapshot.json +3073 -0
  290. package/template/templates/asas/src/migrations/20260929024407_grey_morlun/migration.sql +21 -0
  291. package/template/templates/asas/src/migrations/20260929024407_grey_morlun/snapshot.json +3098 -0
  292. package/template/templates/asas/src/migrations/20260929130530_bored_jackal/migration.sql +21 -0
  293. package/template/templates/asas/src/migrations/20260929130530_bored_jackal/snapshot.json +3124 -0
  294. package/template/templates/asas/src/migrations/20260930102924_material_newton_destine/migration.sql +32 -0
  295. package/template/templates/asas/src/migrations/20260930102924_material_newton_destine/snapshot.json +3324 -0
  296. package/template/templates/asas/src/migrations/20261003022353_clumsy_taskmaster/migration.sql +2 -0
  297. package/template/templates/asas/src/migrations/20261003022353_clumsy_taskmaster/snapshot.json +3350 -0
  298. package/template/templates/asas/src/migrations/20261003143249_premium_red_shift/migration.sql +21 -0
  299. package/template/templates/asas/src/migrations/20261003143249_premium_red_shift/snapshot.json +3635 -0
  300. package/template/templates/asas/src/migrations/20261008215349_square_norrin_radd/migration.sql +8 -0
  301. package/template/templates/asas/src/migrations/20261008215349_square_norrin_radd/snapshot.json +3635 -0
  302. package/template/templates/asas/src/migrations/20261008230204_many_scarecrow/migration.sql +18 -0
  303. package/template/templates/asas/src/migrations/20261008230204_many_scarecrow/snapshot.json +3635 -0
  304. package/template/templates/asas/src/migrations/20261010005521_elite_giant_girl/migration.sql +18 -0
  305. package/template/templates/asas/src/migrations/20261010005521_elite_giant_girl/snapshot.json +3635 -0
  306. package/template/templates/asas/src/migrations/20261010120822_needy_thunderbolt/migration.sql +11 -0
  307. package/template/templates/asas/src/migrations/20261010120822_needy_thunderbolt/snapshot.json +3667 -0
  308. package/template/templates/asas/src/migrations/20261012000752_organization_ownership/migration.sql +48 -0
  309. package/template/templates/asas/src/migrations/20261012000752_organization_ownership/snapshot.json +3891 -0
  310. package/template/templates/asas/src/migrations/drizzle.config.ts +11 -0
  311. package/template/templates/asas/src/migrations/schema.ts +29 -0
  312. package/template/templates/asas/src/mithaq.ts +406 -0
  313. package/template/templates/asas/src/pages.ts +74 -0
  314. package/template/templates/asas/src/platform-http.ts +96 -0
  315. package/template/templates/asas/src/rich-text-nodes.ts +11 -0
  316. package/template/templates/asas/src/roles/grants.ts +47 -0
  317. package/template/templates/asas/src/roles/roles.ts +184 -0
  318. package/template/templates/asas/src/roles/ui/role-form.tsx +226 -0
  319. package/template/templates/asas/src/roles/ui/roles.tsx +166 -0
  320. package/template/templates/asas/src/roles.ts +16 -0
  321. package/template/templates/asas/src/seed.ts +325 -0
  322. package/template/templates/asas/src/sessions/sessions.ts +155 -0
  323. package/template/templates/asas/src/settings/settings.ts +69 -0
  324. package/template/templates/asas/src/statements.ts +11 -0
  325. package/template/templates/asas/src/steps/expected-updated-at.ts +41 -0
  326. package/template/templates/asas/src/storage/defaults.ts +156 -0
  327. package/template/templates/asas/src/storage/index.ts +95 -0
  328. package/template/templates/asas/src/storage/local.ts +143 -0
  329. package/template/templates/asas/src/storage/r2.ts +5 -0
  330. package/template/templates/asas/src/storage/s3.ts +91 -0
  331. package/template/templates/asas/src/storage/uploadthing.ts +59 -0
  332. package/template/templates/asas/src/tags/tags.ts +80 -0
  333. package/template/templates/asas/src/tenant-access.ts +221 -0
  334. package/template/templates/asas/src/tenant-roles.ts +262 -0
  335. package/template/templates/asas/src/ui/app-shell.tsx +260 -0
  336. package/template/templates/asas/src/ui/kpi-card.tsx +25 -0
  337. package/template/templates/asas/src/ui/record-page.tsx +50 -0
  338. package/template/templates/asas/src/ui/rich-text-nodes.tsx +15 -0
  339. package/template/templates/asas/src/ui/screen-nav.tsx +28 -0
  340. package/template/templates/asas/src/ui/session-labels.tsx +36 -0
  341. package/template/templates/asas/src/ui/table-page.tsx +9 -0
  342. package/template/templates/asas/src/ui/top-shell.tsx +60 -0
  343. package/template/templates/asas/src/ui-dashboard/dashboard.tsx +294 -0
  344. package/template/templates/asas/src/ui-dashboard/members.tsx +630 -0
  345. package/template/templates/asas/src/ui-dashboard/theme-provider.tsx +10 -0
  346. package/template/templates/asas/src/ui-dashboard/versions.tsx +432 -0
  347. package/template/templates/asas/src/ui-platform/home.tsx +63 -0
  348. package/template/templates/asas/src/ui-platform/organization-actions.tsx +114 -0
  349. package/template/templates/asas/src/ui-platform/record-page.tsx +30 -0
  350. package/template/templates/asas/src/ui-platform/role-cells.tsx +52 -0
  351. package/template/templates/asas/src/ui-platform/user-actions.tsx +251 -0
  352. package/template/templates/asas/src/ui-portal/home.tsx +77 -0
  353. package/template/templates/asas/src/ui-portal/page.tsx +11 -0
  354. package/template/templates/auth/package.json +14 -0
  355. package/template/templates/auth/src/index.ts +690 -0
  356. package/template/templates/auth/src/platform-roles.ts +87 -0
  357. package/README.md +0 -3
@@ -0,0 +1,2627 @@
1
+ {
2
+ "version": "8",
3
+ "dialect": "postgres",
4
+ "id": "33e07ade-963e-4962-81e5-2cf645b11f89",
5
+ "prevIds": [
6
+ "077c7988-639b-4a88-8fc6-20aca521e621",
7
+ "8c5368e0-fd63-49eb-8bf8-086ac19fa218"
8
+ ],
9
+ "ddl": [
10
+ {
11
+ "isRlsEnabled": false,
12
+ "name": "account",
13
+ "entityType": "tables",
14
+ "schema": "public"
15
+ },
16
+ {
17
+ "isRlsEnabled": false,
18
+ "name": "courses",
19
+ "entityType": "tables",
20
+ "schema": "public"
21
+ },
22
+ {
23
+ "isRlsEnabled": false,
24
+ "name": "courses_tags",
25
+ "entityType": "tables",
26
+ "schema": "public"
27
+ },
28
+ {
29
+ "isRlsEnabled": false,
30
+ "name": "enrollments",
31
+ "entityType": "tables",
32
+ "schema": "public"
33
+ },
34
+ {
35
+ "isRlsEnabled": false,
36
+ "name": "invitation",
37
+ "entityType": "tables",
38
+ "schema": "public"
39
+ },
40
+ {
41
+ "isRlsEnabled": false,
42
+ "name": "local_users",
43
+ "entityType": "tables",
44
+ "schema": "public"
45
+ },
46
+ {
47
+ "isRlsEnabled": false,
48
+ "name": "member",
49
+ "entityType": "tables",
50
+ "schema": "public"
51
+ },
52
+ {
53
+ "isRlsEnabled": false,
54
+ "name": "member_roles",
55
+ "entityType": "tables",
56
+ "schema": "public"
57
+ },
58
+ {
59
+ "isRlsEnabled": false,
60
+ "name": "organization",
61
+ "entityType": "tables",
62
+ "schema": "public"
63
+ },
64
+ {
65
+ "isRlsEnabled": false,
66
+ "name": "organization_role",
67
+ "entityType": "tables",
68
+ "schema": "public"
69
+ },
70
+ {
71
+ "isRlsEnabled": false,
72
+ "name": "roles",
73
+ "entityType": "tables",
74
+ "schema": "public"
75
+ },
76
+ {
77
+ "isRlsEnabled": false,
78
+ "name": "session",
79
+ "entityType": "tables",
80
+ "schema": "public"
81
+ },
82
+ {
83
+ "isRlsEnabled": false,
84
+ "name": "course_sessions",
85
+ "entityType": "tables",
86
+ "schema": "public"
87
+ },
88
+ {
89
+ "isRlsEnabled": false,
90
+ "name": "settings",
91
+ "entityType": "tables",
92
+ "schema": "public"
93
+ },
94
+ {
95
+ "isRlsEnabled": false,
96
+ "name": "tags",
97
+ "entityType": "tables",
98
+ "schema": "public"
99
+ },
100
+ {
101
+ "isRlsEnabled": false,
102
+ "name": "user",
103
+ "entityType": "tables",
104
+ "schema": "public"
105
+ },
106
+ {
107
+ "isRlsEnabled": false,
108
+ "name": "verification",
109
+ "entityType": "tables",
110
+ "schema": "public"
111
+ },
112
+ {
113
+ "type": "text",
114
+ "typeSchema": null,
115
+ "notNull": true,
116
+ "dimensions": 0,
117
+ "default": null,
118
+ "generated": null,
119
+ "identity": null,
120
+ "name": "id",
121
+ "entityType": "columns",
122
+ "schema": "public",
123
+ "table": "account"
124
+ },
125
+ {
126
+ "type": "timestamp(3) with time zone",
127
+ "typeSchema": null,
128
+ "notNull": true,
129
+ "dimensions": 0,
130
+ "default": null,
131
+ "generated": null,
132
+ "identity": null,
133
+ "name": "updated_at",
134
+ "entityType": "columns",
135
+ "schema": "public",
136
+ "table": "account"
137
+ },
138
+ {
139
+ "type": "timestamp(3) with time zone",
140
+ "typeSchema": null,
141
+ "notNull": true,
142
+ "dimensions": 0,
143
+ "default": null,
144
+ "generated": null,
145
+ "identity": null,
146
+ "name": "created_at",
147
+ "entityType": "columns",
148
+ "schema": "public",
149
+ "table": "account"
150
+ },
151
+ {
152
+ "type": "text",
153
+ "typeSchema": null,
154
+ "notNull": true,
155
+ "dimensions": 0,
156
+ "default": null,
157
+ "generated": null,
158
+ "identity": null,
159
+ "name": "account_id",
160
+ "entityType": "columns",
161
+ "schema": "public",
162
+ "table": "account"
163
+ },
164
+ {
165
+ "type": "text",
166
+ "typeSchema": null,
167
+ "notNull": true,
168
+ "dimensions": 0,
169
+ "default": null,
170
+ "generated": null,
171
+ "identity": null,
172
+ "name": "provider_id",
173
+ "entityType": "columns",
174
+ "schema": "public",
175
+ "table": "account"
176
+ },
177
+ {
178
+ "type": "text",
179
+ "typeSchema": null,
180
+ "notNull": true,
181
+ "dimensions": 0,
182
+ "default": null,
183
+ "generated": null,
184
+ "identity": null,
185
+ "name": "user_id",
186
+ "entityType": "columns",
187
+ "schema": "public",
188
+ "table": "account"
189
+ },
190
+ {
191
+ "type": "text",
192
+ "typeSchema": null,
193
+ "notNull": false,
194
+ "dimensions": 0,
195
+ "default": null,
196
+ "generated": null,
197
+ "identity": null,
198
+ "name": "access_token",
199
+ "entityType": "columns",
200
+ "schema": "public",
201
+ "table": "account"
202
+ },
203
+ {
204
+ "type": "text",
205
+ "typeSchema": null,
206
+ "notNull": false,
207
+ "dimensions": 0,
208
+ "default": null,
209
+ "generated": null,
210
+ "identity": null,
211
+ "name": "refresh_token",
212
+ "entityType": "columns",
213
+ "schema": "public",
214
+ "table": "account"
215
+ },
216
+ {
217
+ "type": "text",
218
+ "typeSchema": null,
219
+ "notNull": false,
220
+ "dimensions": 0,
221
+ "default": null,
222
+ "generated": null,
223
+ "identity": null,
224
+ "name": "id_token",
225
+ "entityType": "columns",
226
+ "schema": "public",
227
+ "table": "account"
228
+ },
229
+ {
230
+ "type": "timestamp(3) with time zone",
231
+ "typeSchema": null,
232
+ "notNull": false,
233
+ "dimensions": 0,
234
+ "default": null,
235
+ "generated": null,
236
+ "identity": null,
237
+ "name": "access_token_expires_at",
238
+ "entityType": "columns",
239
+ "schema": "public",
240
+ "table": "account"
241
+ },
242
+ {
243
+ "type": "timestamp(3) with time zone",
244
+ "typeSchema": null,
245
+ "notNull": false,
246
+ "dimensions": 0,
247
+ "default": null,
248
+ "generated": null,
249
+ "identity": null,
250
+ "name": "refresh_token_expires_at",
251
+ "entityType": "columns",
252
+ "schema": "public",
253
+ "table": "account"
254
+ },
255
+ {
256
+ "type": "text",
257
+ "typeSchema": null,
258
+ "notNull": false,
259
+ "dimensions": 0,
260
+ "default": null,
261
+ "generated": null,
262
+ "identity": null,
263
+ "name": "scope",
264
+ "entityType": "columns",
265
+ "schema": "public",
266
+ "table": "account"
267
+ },
268
+ {
269
+ "type": "text",
270
+ "typeSchema": null,
271
+ "notNull": false,
272
+ "dimensions": 0,
273
+ "default": null,
274
+ "generated": null,
275
+ "identity": null,
276
+ "name": "password",
277
+ "entityType": "columns",
278
+ "schema": "public",
279
+ "table": "account"
280
+ },
281
+ {
282
+ "type": "uuid",
283
+ "typeSchema": null,
284
+ "notNull": true,
285
+ "dimensions": 0,
286
+ "default": "gen_random_uuid()",
287
+ "generated": null,
288
+ "identity": null,
289
+ "name": "id",
290
+ "entityType": "columns",
291
+ "schema": "public",
292
+ "table": "courses"
293
+ },
294
+ {
295
+ "type": "timestamp(3) with time zone",
296
+ "typeSchema": null,
297
+ "notNull": true,
298
+ "dimensions": 0,
299
+ "default": "now()",
300
+ "generated": null,
301
+ "identity": null,
302
+ "name": "updated_at",
303
+ "entityType": "columns",
304
+ "schema": "public",
305
+ "table": "courses"
306
+ },
307
+ {
308
+ "type": "timestamp(3) with time zone",
309
+ "typeSchema": null,
310
+ "notNull": true,
311
+ "dimensions": 0,
312
+ "default": "now()",
313
+ "generated": null,
314
+ "identity": null,
315
+ "name": "created_at",
316
+ "entityType": "columns",
317
+ "schema": "public",
318
+ "table": "courses"
319
+ },
320
+ {
321
+ "type": "text",
322
+ "typeSchema": null,
323
+ "notNull": false,
324
+ "dimensions": 0,
325
+ "default": null,
326
+ "generated": null,
327
+ "identity": null,
328
+ "name": "tenant_id",
329
+ "entityType": "columns",
330
+ "schema": "public",
331
+ "table": "courses"
332
+ },
333
+ {
334
+ "type": "varchar(120)",
335
+ "typeSchema": null,
336
+ "notNull": true,
337
+ "dimensions": 0,
338
+ "default": null,
339
+ "generated": null,
340
+ "identity": null,
341
+ "name": "title",
342
+ "entityType": "columns",
343
+ "schema": "public",
344
+ "table": "courses"
345
+ },
346
+ {
347
+ "type": "varchar(200)",
348
+ "typeSchema": null,
349
+ "notNull": false,
350
+ "dimensions": 0,
351
+ "default": null,
352
+ "generated": null,
353
+ "identity": null,
354
+ "name": "summary",
355
+ "entityType": "columns",
356
+ "schema": "public",
357
+ "table": "courses"
358
+ },
359
+ {
360
+ "type": "numeric",
361
+ "typeSchema": null,
362
+ "notNull": false,
363
+ "dimensions": 0,
364
+ "default": null,
365
+ "generated": null,
366
+ "identity": null,
367
+ "name": "fee",
368
+ "entityType": "columns",
369
+ "schema": "public",
370
+ "table": "courses"
371
+ },
372
+ {
373
+ "type": "boolean",
374
+ "typeSchema": null,
375
+ "notNull": false,
376
+ "dimensions": 0,
377
+ "default": null,
378
+ "generated": null,
379
+ "identity": null,
380
+ "name": "archived",
381
+ "entityType": "columns",
382
+ "schema": "public",
383
+ "table": "courses"
384
+ },
385
+ {
386
+ "type": "varchar(200)",
387
+ "typeSchema": null,
388
+ "notNull": false,
389
+ "dimensions": 0,
390
+ "default": null,
391
+ "generated": null,
392
+ "identity": null,
393
+ "name": "archive_reason",
394
+ "entityType": "columns",
395
+ "schema": "public",
396
+ "table": "courses"
397
+ },
398
+ {
399
+ "type": "uuid",
400
+ "typeSchema": null,
401
+ "notNull": true,
402
+ "dimensions": 0,
403
+ "default": null,
404
+ "generated": null,
405
+ "identity": null,
406
+ "name": "parent_id",
407
+ "entityType": "columns",
408
+ "schema": "public",
409
+ "table": "courses_tags"
410
+ },
411
+ {
412
+ "type": "uuid",
413
+ "typeSchema": null,
414
+ "notNull": true,
415
+ "dimensions": 0,
416
+ "default": null,
417
+ "generated": null,
418
+ "identity": null,
419
+ "name": "target_id",
420
+ "entityType": "columns",
421
+ "schema": "public",
422
+ "table": "courses_tags"
423
+ },
424
+ {
425
+ "type": "integer",
426
+ "typeSchema": null,
427
+ "notNull": true,
428
+ "dimensions": 0,
429
+ "default": null,
430
+ "generated": null,
431
+ "identity": null,
432
+ "name": "order",
433
+ "entityType": "columns",
434
+ "schema": "public",
435
+ "table": "courses_tags"
436
+ },
437
+ {
438
+ "type": "uuid",
439
+ "typeSchema": null,
440
+ "notNull": true,
441
+ "dimensions": 0,
442
+ "default": "gen_random_uuid()",
443
+ "generated": null,
444
+ "identity": null,
445
+ "name": "id",
446
+ "entityType": "columns",
447
+ "schema": "public",
448
+ "table": "enrollments"
449
+ },
450
+ {
451
+ "type": "timestamp(3) with time zone",
452
+ "typeSchema": null,
453
+ "notNull": true,
454
+ "dimensions": 0,
455
+ "default": "now()",
456
+ "generated": null,
457
+ "identity": null,
458
+ "name": "updated_at",
459
+ "entityType": "columns",
460
+ "schema": "public",
461
+ "table": "enrollments"
462
+ },
463
+ {
464
+ "type": "timestamp(3) with time zone",
465
+ "typeSchema": null,
466
+ "notNull": true,
467
+ "dimensions": 0,
468
+ "default": "now()",
469
+ "generated": null,
470
+ "identity": null,
471
+ "name": "created_at",
472
+ "entityType": "columns",
473
+ "schema": "public",
474
+ "table": "enrollments"
475
+ },
476
+ {
477
+ "type": "text",
478
+ "typeSchema": null,
479
+ "notNull": false,
480
+ "dimensions": 0,
481
+ "default": null,
482
+ "generated": null,
483
+ "identity": null,
484
+ "name": "tenant_id",
485
+ "entityType": "columns",
486
+ "schema": "public",
487
+ "table": "enrollments"
488
+ },
489
+ {
490
+ "type": "uuid",
491
+ "typeSchema": null,
492
+ "notNull": false,
493
+ "dimensions": 0,
494
+ "default": null,
495
+ "generated": null,
496
+ "identity": null,
497
+ "name": "session_id",
498
+ "entityType": "columns",
499
+ "schema": "public",
500
+ "table": "enrollments"
501
+ },
502
+ {
503
+ "type": "text",
504
+ "typeSchema": null,
505
+ "notNull": false,
506
+ "dimensions": 0,
507
+ "default": null,
508
+ "generated": null,
509
+ "identity": null,
510
+ "name": "student_id",
511
+ "entityType": "columns",
512
+ "schema": "public",
513
+ "table": "enrollments"
514
+ },
515
+ {
516
+ "type": "timestamp(3) with time zone",
517
+ "typeSchema": null,
518
+ "notNull": false,
519
+ "dimensions": 0,
520
+ "default": null,
521
+ "generated": null,
522
+ "identity": null,
523
+ "name": "deleted_at",
524
+ "entityType": "columns",
525
+ "schema": "public",
526
+ "table": "enrollments"
527
+ },
528
+ {
529
+ "type": "text",
530
+ "typeSchema": null,
531
+ "notNull": true,
532
+ "dimensions": 0,
533
+ "default": null,
534
+ "generated": null,
535
+ "identity": null,
536
+ "name": "id",
537
+ "entityType": "columns",
538
+ "schema": "public",
539
+ "table": "invitation"
540
+ },
541
+ {
542
+ "type": "timestamp(3) with time zone",
543
+ "typeSchema": null,
544
+ "notNull": true,
545
+ "dimensions": 0,
546
+ "default": "now()",
547
+ "generated": null,
548
+ "identity": null,
549
+ "name": "updated_at",
550
+ "entityType": "columns",
551
+ "schema": "public",
552
+ "table": "invitation"
553
+ },
554
+ {
555
+ "type": "timestamp(3) with time zone",
556
+ "typeSchema": null,
557
+ "notNull": true,
558
+ "dimensions": 0,
559
+ "default": null,
560
+ "generated": null,
561
+ "identity": null,
562
+ "name": "created_at",
563
+ "entityType": "columns",
564
+ "schema": "public",
565
+ "table": "invitation"
566
+ },
567
+ {
568
+ "type": "text",
569
+ "typeSchema": null,
570
+ "notNull": true,
571
+ "dimensions": 0,
572
+ "default": null,
573
+ "generated": null,
574
+ "identity": null,
575
+ "name": "organization_id",
576
+ "entityType": "columns",
577
+ "schema": "public",
578
+ "table": "invitation"
579
+ },
580
+ {
581
+ "type": "text",
582
+ "typeSchema": null,
583
+ "notNull": true,
584
+ "dimensions": 0,
585
+ "default": null,
586
+ "generated": null,
587
+ "identity": null,
588
+ "name": "email",
589
+ "entityType": "columns",
590
+ "schema": "public",
591
+ "table": "invitation"
592
+ },
593
+ {
594
+ "type": "text",
595
+ "typeSchema": null,
596
+ "notNull": false,
597
+ "dimensions": 0,
598
+ "default": null,
599
+ "generated": null,
600
+ "identity": null,
601
+ "name": "role",
602
+ "entityType": "columns",
603
+ "schema": "public",
604
+ "table": "invitation"
605
+ },
606
+ {
607
+ "type": "text",
608
+ "typeSchema": null,
609
+ "notNull": true,
610
+ "dimensions": 0,
611
+ "default": null,
612
+ "generated": null,
613
+ "identity": null,
614
+ "name": "status",
615
+ "entityType": "columns",
616
+ "schema": "public",
617
+ "table": "invitation"
618
+ },
619
+ {
620
+ "type": "timestamp(3) with time zone",
621
+ "typeSchema": null,
622
+ "notNull": true,
623
+ "dimensions": 0,
624
+ "default": null,
625
+ "generated": null,
626
+ "identity": null,
627
+ "name": "expires_at",
628
+ "entityType": "columns",
629
+ "schema": "public",
630
+ "table": "invitation"
631
+ },
632
+ {
633
+ "type": "text",
634
+ "typeSchema": null,
635
+ "notNull": true,
636
+ "dimensions": 0,
637
+ "default": null,
638
+ "generated": null,
639
+ "identity": null,
640
+ "name": "inviter_id",
641
+ "entityType": "columns",
642
+ "schema": "public",
643
+ "table": "invitation"
644
+ },
645
+ {
646
+ "type": "uuid",
647
+ "typeSchema": null,
648
+ "notNull": true,
649
+ "dimensions": 0,
650
+ "default": "gen_random_uuid()",
651
+ "generated": null,
652
+ "identity": null,
653
+ "name": "id",
654
+ "entityType": "columns",
655
+ "schema": "public",
656
+ "table": "local_users"
657
+ },
658
+ {
659
+ "type": "timestamp(3) with time zone",
660
+ "typeSchema": null,
661
+ "notNull": true,
662
+ "dimensions": 0,
663
+ "default": "now()",
664
+ "generated": null,
665
+ "identity": null,
666
+ "name": "updated_at",
667
+ "entityType": "columns",
668
+ "schema": "public",
669
+ "table": "local_users"
670
+ },
671
+ {
672
+ "type": "timestamp(3) with time zone",
673
+ "typeSchema": null,
674
+ "notNull": true,
675
+ "dimensions": 0,
676
+ "default": "now()",
677
+ "generated": null,
678
+ "identity": null,
679
+ "name": "created_at",
680
+ "entityType": "columns",
681
+ "schema": "public",
682
+ "table": "local_users"
683
+ },
684
+ {
685
+ "type": "text",
686
+ "typeSchema": null,
687
+ "notNull": true,
688
+ "dimensions": 0,
689
+ "default": null,
690
+ "generated": null,
691
+ "identity": null,
692
+ "name": "email",
693
+ "entityType": "columns",
694
+ "schema": "public",
695
+ "table": "local_users"
696
+ },
697
+ {
698
+ "type": "text",
699
+ "typeSchema": null,
700
+ "notNull": true,
701
+ "dimensions": 0,
702
+ "default": null,
703
+ "generated": null,
704
+ "identity": null,
705
+ "name": "hash",
706
+ "entityType": "columns",
707
+ "schema": "public",
708
+ "table": "local_users"
709
+ },
710
+ {
711
+ "type": "text",
712
+ "typeSchema": null,
713
+ "notNull": true,
714
+ "dimensions": 0,
715
+ "default": null,
716
+ "generated": null,
717
+ "identity": null,
718
+ "name": "salt",
719
+ "entityType": "columns",
720
+ "schema": "public",
721
+ "table": "local_users"
722
+ },
723
+ {
724
+ "type": "text",
725
+ "typeSchema": null,
726
+ "notNull": false,
727
+ "dimensions": 0,
728
+ "default": null,
729
+ "generated": null,
730
+ "identity": null,
731
+ "name": "sessions",
732
+ "entityType": "columns",
733
+ "schema": "public",
734
+ "table": "local_users"
735
+ },
736
+ {
737
+ "type": "numeric",
738
+ "typeSchema": null,
739
+ "notNull": false,
740
+ "dimensions": 0,
741
+ "default": "'0'",
742
+ "generated": null,
743
+ "identity": null,
744
+ "name": "login_attempts",
745
+ "entityType": "columns",
746
+ "schema": "public",
747
+ "table": "local_users"
748
+ },
749
+ {
750
+ "type": "timestamp(3) with time zone",
751
+ "typeSchema": null,
752
+ "notNull": false,
753
+ "dimensions": 0,
754
+ "default": null,
755
+ "generated": null,
756
+ "identity": null,
757
+ "name": "lock_until",
758
+ "entityType": "columns",
759
+ "schema": "public",
760
+ "table": "local_users"
761
+ },
762
+ {
763
+ "type": "text",
764
+ "typeSchema": null,
765
+ "notNull": false,
766
+ "dimensions": 0,
767
+ "default": null,
768
+ "generated": null,
769
+ "identity": null,
770
+ "name": "reset_password_token",
771
+ "entityType": "columns",
772
+ "schema": "public",
773
+ "table": "local_users"
774
+ },
775
+ {
776
+ "type": "numeric",
777
+ "typeSchema": null,
778
+ "notNull": false,
779
+ "dimensions": 0,
780
+ "default": "'0'",
781
+ "generated": null,
782
+ "identity": null,
783
+ "name": "reset_password_attempts",
784
+ "entityType": "columns",
785
+ "schema": "public",
786
+ "table": "local_users"
787
+ },
788
+ {
789
+ "type": "timestamp(3) with time zone",
790
+ "typeSchema": null,
791
+ "notNull": false,
792
+ "dimensions": 0,
793
+ "default": null,
794
+ "generated": null,
795
+ "identity": null,
796
+ "name": "reset_password_expiration",
797
+ "entityType": "columns",
798
+ "schema": "public",
799
+ "table": "local_users"
800
+ },
801
+ {
802
+ "type": "boolean",
803
+ "typeSchema": null,
804
+ "notNull": false,
805
+ "dimensions": 0,
806
+ "default": "false",
807
+ "generated": null,
808
+ "identity": null,
809
+ "name": "_verified",
810
+ "entityType": "columns",
811
+ "schema": "public",
812
+ "table": "local_users"
813
+ },
814
+ {
815
+ "type": "text",
816
+ "typeSchema": null,
817
+ "notNull": false,
818
+ "dimensions": 0,
819
+ "default": null,
820
+ "generated": null,
821
+ "identity": null,
822
+ "name": "_verification_token",
823
+ "entityType": "columns",
824
+ "schema": "public",
825
+ "table": "local_users"
826
+ },
827
+ {
828
+ "type": "text",
829
+ "typeSchema": null,
830
+ "notNull": true,
831
+ "dimensions": 0,
832
+ "default": null,
833
+ "generated": null,
834
+ "identity": null,
835
+ "name": "id",
836
+ "entityType": "columns",
837
+ "schema": "public",
838
+ "table": "member"
839
+ },
840
+ {
841
+ "type": "timestamp(3) with time zone",
842
+ "typeSchema": null,
843
+ "notNull": true,
844
+ "dimensions": 0,
845
+ "default": "now()",
846
+ "generated": null,
847
+ "identity": null,
848
+ "name": "updated_at",
849
+ "entityType": "columns",
850
+ "schema": "public",
851
+ "table": "member"
852
+ },
853
+ {
854
+ "type": "timestamp(3) with time zone",
855
+ "typeSchema": null,
856
+ "notNull": true,
857
+ "dimensions": 0,
858
+ "default": null,
859
+ "generated": null,
860
+ "identity": null,
861
+ "name": "created_at",
862
+ "entityType": "columns",
863
+ "schema": "public",
864
+ "table": "member"
865
+ },
866
+ {
867
+ "type": "text",
868
+ "typeSchema": null,
869
+ "notNull": true,
870
+ "dimensions": 0,
871
+ "default": null,
872
+ "generated": null,
873
+ "identity": null,
874
+ "name": "organization_id",
875
+ "entityType": "columns",
876
+ "schema": "public",
877
+ "table": "member"
878
+ },
879
+ {
880
+ "type": "text",
881
+ "typeSchema": null,
882
+ "notNull": true,
883
+ "dimensions": 0,
884
+ "default": null,
885
+ "generated": null,
886
+ "identity": null,
887
+ "name": "user_id",
888
+ "entityType": "columns",
889
+ "schema": "public",
890
+ "table": "member"
891
+ },
892
+ {
893
+ "type": "text",
894
+ "typeSchema": null,
895
+ "notNull": true,
896
+ "dimensions": 0,
897
+ "default": null,
898
+ "generated": null,
899
+ "identity": null,
900
+ "name": "role",
901
+ "entityType": "columns",
902
+ "schema": "public",
903
+ "table": "member"
904
+ },
905
+ {
906
+ "type": "uuid",
907
+ "typeSchema": null,
908
+ "notNull": true,
909
+ "dimensions": 0,
910
+ "default": "gen_random_uuid()",
911
+ "generated": null,
912
+ "identity": null,
913
+ "name": "id",
914
+ "entityType": "columns",
915
+ "schema": "public",
916
+ "table": "member_roles"
917
+ },
918
+ {
919
+ "type": "timestamp(3) with time zone",
920
+ "typeSchema": null,
921
+ "notNull": true,
922
+ "dimensions": 0,
923
+ "default": "now()",
924
+ "generated": null,
925
+ "identity": null,
926
+ "name": "updated_at",
927
+ "entityType": "columns",
928
+ "schema": "public",
929
+ "table": "member_roles"
930
+ },
931
+ {
932
+ "type": "timestamp(3) with time zone",
933
+ "typeSchema": null,
934
+ "notNull": true,
935
+ "dimensions": 0,
936
+ "default": "now()",
937
+ "generated": null,
938
+ "identity": null,
939
+ "name": "created_at",
940
+ "entityType": "columns",
941
+ "schema": "public",
942
+ "table": "member_roles"
943
+ },
944
+ {
945
+ "type": "text",
946
+ "typeSchema": null,
947
+ "notNull": false,
948
+ "dimensions": 0,
949
+ "default": null,
950
+ "generated": null,
951
+ "identity": null,
952
+ "name": "tenant_id",
953
+ "entityType": "columns",
954
+ "schema": "public",
955
+ "table": "member_roles"
956
+ },
957
+ {
958
+ "type": "text",
959
+ "typeSchema": null,
960
+ "notNull": true,
961
+ "dimensions": 0,
962
+ "default": null,
963
+ "generated": null,
964
+ "identity": null,
965
+ "name": "user_id",
966
+ "entityType": "columns",
967
+ "schema": "public",
968
+ "table": "member_roles"
969
+ },
970
+ {
971
+ "type": "varchar(60)",
972
+ "typeSchema": null,
973
+ "notNull": true,
974
+ "dimensions": 0,
975
+ "default": null,
976
+ "generated": null,
977
+ "identity": null,
978
+ "name": "role",
979
+ "entityType": "columns",
980
+ "schema": "public",
981
+ "table": "member_roles"
982
+ },
983
+ {
984
+ "type": "text",
985
+ "typeSchema": null,
986
+ "notNull": true,
987
+ "dimensions": 0,
988
+ "default": null,
989
+ "generated": null,
990
+ "identity": null,
991
+ "name": "id",
992
+ "entityType": "columns",
993
+ "schema": "public",
994
+ "table": "organization"
995
+ },
996
+ {
997
+ "type": "timestamp(3) with time zone",
998
+ "typeSchema": null,
999
+ "notNull": true,
1000
+ "dimensions": 0,
1001
+ "default": "now()",
1002
+ "generated": null,
1003
+ "identity": null,
1004
+ "name": "updated_at",
1005
+ "entityType": "columns",
1006
+ "schema": "public",
1007
+ "table": "organization"
1008
+ },
1009
+ {
1010
+ "type": "timestamp(3) with time zone",
1011
+ "typeSchema": null,
1012
+ "notNull": true,
1013
+ "dimensions": 0,
1014
+ "default": null,
1015
+ "generated": null,
1016
+ "identity": null,
1017
+ "name": "created_at",
1018
+ "entityType": "columns",
1019
+ "schema": "public",
1020
+ "table": "organization"
1021
+ },
1022
+ {
1023
+ "type": "text",
1024
+ "typeSchema": null,
1025
+ "notNull": true,
1026
+ "dimensions": 0,
1027
+ "default": null,
1028
+ "generated": null,
1029
+ "identity": null,
1030
+ "name": "name",
1031
+ "entityType": "columns",
1032
+ "schema": "public",
1033
+ "table": "organization"
1034
+ },
1035
+ {
1036
+ "type": "text",
1037
+ "typeSchema": null,
1038
+ "notNull": true,
1039
+ "dimensions": 0,
1040
+ "default": null,
1041
+ "generated": null,
1042
+ "identity": null,
1043
+ "name": "slug",
1044
+ "entityType": "columns",
1045
+ "schema": "public",
1046
+ "table": "organization"
1047
+ },
1048
+ {
1049
+ "type": "text",
1050
+ "typeSchema": null,
1051
+ "notNull": false,
1052
+ "dimensions": 0,
1053
+ "default": null,
1054
+ "generated": null,
1055
+ "identity": null,
1056
+ "name": "logo",
1057
+ "entityType": "columns",
1058
+ "schema": "public",
1059
+ "table": "organization"
1060
+ },
1061
+ {
1062
+ "type": "text",
1063
+ "typeSchema": null,
1064
+ "notNull": false,
1065
+ "dimensions": 0,
1066
+ "default": null,
1067
+ "generated": null,
1068
+ "identity": null,
1069
+ "name": "metadata",
1070
+ "entityType": "columns",
1071
+ "schema": "public",
1072
+ "table": "organization"
1073
+ },
1074
+ {
1075
+ "type": "text",
1076
+ "typeSchema": null,
1077
+ "notNull": true,
1078
+ "dimensions": 0,
1079
+ "default": null,
1080
+ "generated": null,
1081
+ "identity": null,
1082
+ "name": "id",
1083
+ "entityType": "columns",
1084
+ "schema": "public",
1085
+ "table": "organization_role"
1086
+ },
1087
+ {
1088
+ "type": "timestamp(3) with time zone",
1089
+ "typeSchema": null,
1090
+ "notNull": false,
1091
+ "dimensions": 0,
1092
+ "default": null,
1093
+ "generated": null,
1094
+ "identity": null,
1095
+ "name": "updated_at",
1096
+ "entityType": "columns",
1097
+ "schema": "public",
1098
+ "table": "organization_role"
1099
+ },
1100
+ {
1101
+ "type": "timestamp(3) with time zone",
1102
+ "typeSchema": null,
1103
+ "notNull": true,
1104
+ "dimensions": 0,
1105
+ "default": null,
1106
+ "generated": null,
1107
+ "identity": null,
1108
+ "name": "created_at",
1109
+ "entityType": "columns",
1110
+ "schema": "public",
1111
+ "table": "organization_role"
1112
+ },
1113
+ {
1114
+ "type": "text",
1115
+ "typeSchema": null,
1116
+ "notNull": true,
1117
+ "dimensions": 0,
1118
+ "default": null,
1119
+ "generated": null,
1120
+ "identity": null,
1121
+ "name": "organization_id",
1122
+ "entityType": "columns",
1123
+ "schema": "public",
1124
+ "table": "organization_role"
1125
+ },
1126
+ {
1127
+ "type": "text",
1128
+ "typeSchema": null,
1129
+ "notNull": true,
1130
+ "dimensions": 0,
1131
+ "default": null,
1132
+ "generated": null,
1133
+ "identity": null,
1134
+ "name": "role",
1135
+ "entityType": "columns",
1136
+ "schema": "public",
1137
+ "table": "organization_role"
1138
+ },
1139
+ {
1140
+ "type": "text",
1141
+ "typeSchema": null,
1142
+ "notNull": true,
1143
+ "dimensions": 0,
1144
+ "default": null,
1145
+ "generated": null,
1146
+ "identity": null,
1147
+ "name": "permission",
1148
+ "entityType": "columns",
1149
+ "schema": "public",
1150
+ "table": "organization_role"
1151
+ },
1152
+ {
1153
+ "type": "uuid",
1154
+ "typeSchema": null,
1155
+ "notNull": true,
1156
+ "dimensions": 0,
1157
+ "default": "gen_random_uuid()",
1158
+ "generated": null,
1159
+ "identity": null,
1160
+ "name": "id",
1161
+ "entityType": "columns",
1162
+ "schema": "public",
1163
+ "table": "roles"
1164
+ },
1165
+ {
1166
+ "type": "timestamp(3) with time zone",
1167
+ "typeSchema": null,
1168
+ "notNull": true,
1169
+ "dimensions": 0,
1170
+ "default": "now()",
1171
+ "generated": null,
1172
+ "identity": null,
1173
+ "name": "updated_at",
1174
+ "entityType": "columns",
1175
+ "schema": "public",
1176
+ "table": "roles"
1177
+ },
1178
+ {
1179
+ "type": "timestamp(3) with time zone",
1180
+ "typeSchema": null,
1181
+ "notNull": true,
1182
+ "dimensions": 0,
1183
+ "default": "now()",
1184
+ "generated": null,
1185
+ "identity": null,
1186
+ "name": "created_at",
1187
+ "entityType": "columns",
1188
+ "schema": "public",
1189
+ "table": "roles"
1190
+ },
1191
+ {
1192
+ "type": "text",
1193
+ "typeSchema": null,
1194
+ "notNull": false,
1195
+ "dimensions": 0,
1196
+ "default": null,
1197
+ "generated": null,
1198
+ "identity": null,
1199
+ "name": "tenant_id",
1200
+ "entityType": "columns",
1201
+ "schema": "public",
1202
+ "table": "roles"
1203
+ },
1204
+ {
1205
+ "type": "varchar(60)",
1206
+ "typeSchema": null,
1207
+ "notNull": true,
1208
+ "dimensions": 0,
1209
+ "default": null,
1210
+ "generated": null,
1211
+ "identity": null,
1212
+ "name": "name",
1213
+ "entityType": "columns",
1214
+ "schema": "public",
1215
+ "table": "roles"
1216
+ },
1217
+ {
1218
+ "type": "boolean",
1219
+ "typeSchema": null,
1220
+ "notNull": false,
1221
+ "dimensions": 0,
1222
+ "default": "false",
1223
+ "generated": null,
1224
+ "identity": null,
1225
+ "name": "is_system",
1226
+ "entityType": "columns",
1227
+ "schema": "public",
1228
+ "table": "roles"
1229
+ },
1230
+ {
1231
+ "type": "text",
1232
+ "typeSchema": null,
1233
+ "notNull": true,
1234
+ "dimensions": 1,
1235
+ "default": null,
1236
+ "generated": null,
1237
+ "identity": null,
1238
+ "name": "permissions",
1239
+ "entityType": "columns",
1240
+ "schema": "public",
1241
+ "table": "roles"
1242
+ },
1243
+ {
1244
+ "type": "text",
1245
+ "typeSchema": null,
1246
+ "notNull": true,
1247
+ "dimensions": 0,
1248
+ "default": null,
1249
+ "generated": null,
1250
+ "identity": null,
1251
+ "name": "id",
1252
+ "entityType": "columns",
1253
+ "schema": "public",
1254
+ "table": "session"
1255
+ },
1256
+ {
1257
+ "type": "timestamp(3) with time zone",
1258
+ "typeSchema": null,
1259
+ "notNull": true,
1260
+ "dimensions": 0,
1261
+ "default": null,
1262
+ "generated": null,
1263
+ "identity": null,
1264
+ "name": "updated_at",
1265
+ "entityType": "columns",
1266
+ "schema": "public",
1267
+ "table": "session"
1268
+ },
1269
+ {
1270
+ "type": "timestamp(3) with time zone",
1271
+ "typeSchema": null,
1272
+ "notNull": true,
1273
+ "dimensions": 0,
1274
+ "default": null,
1275
+ "generated": null,
1276
+ "identity": null,
1277
+ "name": "created_at",
1278
+ "entityType": "columns",
1279
+ "schema": "public",
1280
+ "table": "session"
1281
+ },
1282
+ {
1283
+ "type": "timestamp(3) with time zone",
1284
+ "typeSchema": null,
1285
+ "notNull": true,
1286
+ "dimensions": 0,
1287
+ "default": null,
1288
+ "generated": null,
1289
+ "identity": null,
1290
+ "name": "expires_at",
1291
+ "entityType": "columns",
1292
+ "schema": "public",
1293
+ "table": "session"
1294
+ },
1295
+ {
1296
+ "type": "text",
1297
+ "typeSchema": null,
1298
+ "notNull": true,
1299
+ "dimensions": 0,
1300
+ "default": null,
1301
+ "generated": null,
1302
+ "identity": null,
1303
+ "name": "token",
1304
+ "entityType": "columns",
1305
+ "schema": "public",
1306
+ "table": "session"
1307
+ },
1308
+ {
1309
+ "type": "text",
1310
+ "typeSchema": null,
1311
+ "notNull": false,
1312
+ "dimensions": 0,
1313
+ "default": null,
1314
+ "generated": null,
1315
+ "identity": null,
1316
+ "name": "ip_address",
1317
+ "entityType": "columns",
1318
+ "schema": "public",
1319
+ "table": "session"
1320
+ },
1321
+ {
1322
+ "type": "text",
1323
+ "typeSchema": null,
1324
+ "notNull": false,
1325
+ "dimensions": 0,
1326
+ "default": null,
1327
+ "generated": null,
1328
+ "identity": null,
1329
+ "name": "user_agent",
1330
+ "entityType": "columns",
1331
+ "schema": "public",
1332
+ "table": "session"
1333
+ },
1334
+ {
1335
+ "type": "text",
1336
+ "typeSchema": null,
1337
+ "notNull": true,
1338
+ "dimensions": 0,
1339
+ "default": null,
1340
+ "generated": null,
1341
+ "identity": null,
1342
+ "name": "user_id",
1343
+ "entityType": "columns",
1344
+ "schema": "public",
1345
+ "table": "session"
1346
+ },
1347
+ {
1348
+ "type": "text",
1349
+ "typeSchema": null,
1350
+ "notNull": false,
1351
+ "dimensions": 0,
1352
+ "default": null,
1353
+ "generated": null,
1354
+ "identity": null,
1355
+ "name": "active_organization_id",
1356
+ "entityType": "columns",
1357
+ "schema": "public",
1358
+ "table": "session"
1359
+ },
1360
+ {
1361
+ "type": "uuid",
1362
+ "typeSchema": null,
1363
+ "notNull": true,
1364
+ "dimensions": 0,
1365
+ "default": "gen_random_uuid()",
1366
+ "generated": null,
1367
+ "identity": null,
1368
+ "name": "id",
1369
+ "entityType": "columns",
1370
+ "schema": "public",
1371
+ "table": "course_sessions"
1372
+ },
1373
+ {
1374
+ "type": "timestamp(3) with time zone",
1375
+ "typeSchema": null,
1376
+ "notNull": true,
1377
+ "dimensions": 0,
1378
+ "default": "now()",
1379
+ "generated": null,
1380
+ "identity": null,
1381
+ "name": "updated_at",
1382
+ "entityType": "columns",
1383
+ "schema": "public",
1384
+ "table": "course_sessions"
1385
+ },
1386
+ {
1387
+ "type": "timestamp(3) with time zone",
1388
+ "typeSchema": null,
1389
+ "notNull": true,
1390
+ "dimensions": 0,
1391
+ "default": "now()",
1392
+ "generated": null,
1393
+ "identity": null,
1394
+ "name": "created_at",
1395
+ "entityType": "columns",
1396
+ "schema": "public",
1397
+ "table": "course_sessions"
1398
+ },
1399
+ {
1400
+ "type": "text",
1401
+ "typeSchema": null,
1402
+ "notNull": false,
1403
+ "dimensions": 0,
1404
+ "default": null,
1405
+ "generated": null,
1406
+ "identity": null,
1407
+ "name": "tenant_id",
1408
+ "entityType": "columns",
1409
+ "schema": "public",
1410
+ "table": "course_sessions"
1411
+ },
1412
+ {
1413
+ "type": "uuid",
1414
+ "typeSchema": null,
1415
+ "notNull": true,
1416
+ "dimensions": 0,
1417
+ "default": null,
1418
+ "generated": null,
1419
+ "identity": null,
1420
+ "name": "course_id",
1421
+ "entityType": "columns",
1422
+ "schema": "public",
1423
+ "table": "course_sessions"
1424
+ },
1425
+ {
1426
+ "type": "timestamp(3) with time zone",
1427
+ "typeSchema": null,
1428
+ "notNull": true,
1429
+ "dimensions": 0,
1430
+ "default": null,
1431
+ "generated": null,
1432
+ "identity": null,
1433
+ "name": "starts_at",
1434
+ "entityType": "columns",
1435
+ "schema": "public",
1436
+ "table": "course_sessions"
1437
+ },
1438
+ {
1439
+ "type": "numeric",
1440
+ "typeSchema": null,
1441
+ "notNull": false,
1442
+ "dimensions": 0,
1443
+ "default": null,
1444
+ "generated": null,
1445
+ "identity": null,
1446
+ "name": "capacity",
1447
+ "entityType": "columns",
1448
+ "schema": "public",
1449
+ "table": "course_sessions"
1450
+ },
1451
+ {
1452
+ "type": "uuid",
1453
+ "typeSchema": null,
1454
+ "notNull": true,
1455
+ "dimensions": 0,
1456
+ "default": "gen_random_uuid()",
1457
+ "generated": null,
1458
+ "identity": null,
1459
+ "name": "id",
1460
+ "entityType": "columns",
1461
+ "schema": "public",
1462
+ "table": "settings"
1463
+ },
1464
+ {
1465
+ "type": "timestamp(3) with time zone",
1466
+ "typeSchema": null,
1467
+ "notNull": true,
1468
+ "dimensions": 0,
1469
+ "default": "now()",
1470
+ "generated": null,
1471
+ "identity": null,
1472
+ "name": "updated_at",
1473
+ "entityType": "columns",
1474
+ "schema": "public",
1475
+ "table": "settings"
1476
+ },
1477
+ {
1478
+ "type": "timestamp(3) with time zone",
1479
+ "typeSchema": null,
1480
+ "notNull": true,
1481
+ "dimensions": 0,
1482
+ "default": "now()",
1483
+ "generated": null,
1484
+ "identity": null,
1485
+ "name": "created_at",
1486
+ "entityType": "columns",
1487
+ "schema": "public",
1488
+ "table": "settings"
1489
+ },
1490
+ {
1491
+ "type": "text",
1492
+ "typeSchema": null,
1493
+ "notNull": true,
1494
+ "dimensions": 0,
1495
+ "default": null,
1496
+ "generated": null,
1497
+ "identity": null,
1498
+ "name": "tenant_id",
1499
+ "entityType": "columns",
1500
+ "schema": "public",
1501
+ "table": "settings"
1502
+ },
1503
+ {
1504
+ "type": "varchar(120)",
1505
+ "typeSchema": null,
1506
+ "notNull": true,
1507
+ "dimensions": 0,
1508
+ "default": null,
1509
+ "generated": null,
1510
+ "identity": null,
1511
+ "name": "site_title",
1512
+ "entityType": "columns",
1513
+ "schema": "public",
1514
+ "table": "settings"
1515
+ },
1516
+ {
1517
+ "type": "boolean",
1518
+ "typeSchema": null,
1519
+ "notNull": false,
1520
+ "dimensions": 0,
1521
+ "default": null,
1522
+ "generated": null,
1523
+ "identity": null,
1524
+ "name": "maintenance",
1525
+ "entityType": "columns",
1526
+ "schema": "public",
1527
+ "table": "settings"
1528
+ },
1529
+ {
1530
+ "type": "text",
1531
+ "typeSchema": null,
1532
+ "notNull": true,
1533
+ "dimensions": 0,
1534
+ "default": "'settings'",
1535
+ "generated": null,
1536
+ "identity": null,
1537
+ "name": "global_type",
1538
+ "entityType": "columns",
1539
+ "schema": "public",
1540
+ "table": "settings"
1541
+ },
1542
+ {
1543
+ "type": "uuid",
1544
+ "typeSchema": null,
1545
+ "notNull": true,
1546
+ "dimensions": 0,
1547
+ "default": "gen_random_uuid()",
1548
+ "generated": null,
1549
+ "identity": null,
1550
+ "name": "id",
1551
+ "entityType": "columns",
1552
+ "schema": "public",
1553
+ "table": "tags"
1554
+ },
1555
+ {
1556
+ "type": "timestamp(3) with time zone",
1557
+ "typeSchema": null,
1558
+ "notNull": true,
1559
+ "dimensions": 0,
1560
+ "default": "now()",
1561
+ "generated": null,
1562
+ "identity": null,
1563
+ "name": "updated_at",
1564
+ "entityType": "columns",
1565
+ "schema": "public",
1566
+ "table": "tags"
1567
+ },
1568
+ {
1569
+ "type": "timestamp(3) with time zone",
1570
+ "typeSchema": null,
1571
+ "notNull": true,
1572
+ "dimensions": 0,
1573
+ "default": "now()",
1574
+ "generated": null,
1575
+ "identity": null,
1576
+ "name": "created_at",
1577
+ "entityType": "columns",
1578
+ "schema": "public",
1579
+ "table": "tags"
1580
+ },
1581
+ {
1582
+ "type": "text",
1583
+ "typeSchema": null,
1584
+ "notNull": false,
1585
+ "dimensions": 0,
1586
+ "default": null,
1587
+ "generated": null,
1588
+ "identity": null,
1589
+ "name": "tenant_id",
1590
+ "entityType": "columns",
1591
+ "schema": "public",
1592
+ "table": "tags"
1593
+ },
1594
+ {
1595
+ "type": "varchar(60)",
1596
+ "typeSchema": null,
1597
+ "notNull": true,
1598
+ "dimensions": 0,
1599
+ "default": null,
1600
+ "generated": null,
1601
+ "identity": null,
1602
+ "name": "name",
1603
+ "entityType": "columns",
1604
+ "schema": "public",
1605
+ "table": "tags"
1606
+ },
1607
+ {
1608
+ "type": "text",
1609
+ "typeSchema": null,
1610
+ "notNull": true,
1611
+ "dimensions": 0,
1612
+ "default": null,
1613
+ "generated": null,
1614
+ "identity": null,
1615
+ "name": "id",
1616
+ "entityType": "columns",
1617
+ "schema": "public",
1618
+ "table": "user"
1619
+ },
1620
+ {
1621
+ "type": "timestamp(3) with time zone",
1622
+ "typeSchema": null,
1623
+ "notNull": true,
1624
+ "dimensions": 0,
1625
+ "default": null,
1626
+ "generated": null,
1627
+ "identity": null,
1628
+ "name": "updated_at",
1629
+ "entityType": "columns",
1630
+ "schema": "public",
1631
+ "table": "user"
1632
+ },
1633
+ {
1634
+ "type": "timestamp(3) with time zone",
1635
+ "typeSchema": null,
1636
+ "notNull": true,
1637
+ "dimensions": 0,
1638
+ "default": null,
1639
+ "generated": null,
1640
+ "identity": null,
1641
+ "name": "created_at",
1642
+ "entityType": "columns",
1643
+ "schema": "public",
1644
+ "table": "user"
1645
+ },
1646
+ {
1647
+ "type": "text",
1648
+ "typeSchema": null,
1649
+ "notNull": true,
1650
+ "dimensions": 0,
1651
+ "default": null,
1652
+ "generated": null,
1653
+ "identity": null,
1654
+ "name": "name",
1655
+ "entityType": "columns",
1656
+ "schema": "public",
1657
+ "table": "user"
1658
+ },
1659
+ {
1660
+ "type": "text",
1661
+ "typeSchema": null,
1662
+ "notNull": true,
1663
+ "dimensions": 0,
1664
+ "default": null,
1665
+ "generated": null,
1666
+ "identity": null,
1667
+ "name": "email",
1668
+ "entityType": "columns",
1669
+ "schema": "public",
1670
+ "table": "user"
1671
+ },
1672
+ {
1673
+ "type": "boolean",
1674
+ "typeSchema": null,
1675
+ "notNull": true,
1676
+ "dimensions": 0,
1677
+ "default": null,
1678
+ "generated": null,
1679
+ "identity": null,
1680
+ "name": "email_verified",
1681
+ "entityType": "columns",
1682
+ "schema": "public",
1683
+ "table": "user"
1684
+ },
1685
+ {
1686
+ "type": "text",
1687
+ "typeSchema": null,
1688
+ "notNull": false,
1689
+ "dimensions": 0,
1690
+ "default": null,
1691
+ "generated": null,
1692
+ "identity": null,
1693
+ "name": "image",
1694
+ "entityType": "columns",
1695
+ "schema": "public",
1696
+ "table": "user"
1697
+ },
1698
+ {
1699
+ "type": "text",
1700
+ "typeSchema": null,
1701
+ "notNull": true,
1702
+ "dimensions": 0,
1703
+ "default": null,
1704
+ "generated": null,
1705
+ "identity": null,
1706
+ "name": "id",
1707
+ "entityType": "columns",
1708
+ "schema": "public",
1709
+ "table": "verification"
1710
+ },
1711
+ {
1712
+ "type": "timestamp(3) with time zone",
1713
+ "typeSchema": null,
1714
+ "notNull": true,
1715
+ "dimensions": 0,
1716
+ "default": null,
1717
+ "generated": null,
1718
+ "identity": null,
1719
+ "name": "updated_at",
1720
+ "entityType": "columns",
1721
+ "schema": "public",
1722
+ "table": "verification"
1723
+ },
1724
+ {
1725
+ "type": "timestamp(3) with time zone",
1726
+ "typeSchema": null,
1727
+ "notNull": true,
1728
+ "dimensions": 0,
1729
+ "default": null,
1730
+ "generated": null,
1731
+ "identity": null,
1732
+ "name": "created_at",
1733
+ "entityType": "columns",
1734
+ "schema": "public",
1735
+ "table": "verification"
1736
+ },
1737
+ {
1738
+ "type": "text",
1739
+ "typeSchema": null,
1740
+ "notNull": true,
1741
+ "dimensions": 0,
1742
+ "default": null,
1743
+ "generated": null,
1744
+ "identity": null,
1745
+ "name": "identifier",
1746
+ "entityType": "columns",
1747
+ "schema": "public",
1748
+ "table": "verification"
1749
+ },
1750
+ {
1751
+ "type": "text",
1752
+ "typeSchema": null,
1753
+ "notNull": true,
1754
+ "dimensions": 0,
1755
+ "default": null,
1756
+ "generated": null,
1757
+ "identity": null,
1758
+ "name": "value",
1759
+ "entityType": "columns",
1760
+ "schema": "public",
1761
+ "table": "verification"
1762
+ },
1763
+ {
1764
+ "type": "timestamp(3) with time zone",
1765
+ "typeSchema": null,
1766
+ "notNull": true,
1767
+ "dimensions": 0,
1768
+ "default": null,
1769
+ "generated": null,
1770
+ "identity": null,
1771
+ "name": "expires_at",
1772
+ "entityType": "columns",
1773
+ "schema": "public",
1774
+ "table": "verification"
1775
+ },
1776
+ {
1777
+ "nameExplicit": false,
1778
+ "columns": [
1779
+ {
1780
+ "value": "created_at",
1781
+ "isExpression": false,
1782
+ "asc": true,
1783
+ "nullsFirst": false,
1784
+ "opclass": null
1785
+ }
1786
+ ],
1787
+ "isUnique": false,
1788
+ "where": null,
1789
+ "with": "",
1790
+ "method": "btree",
1791
+ "concurrently": false,
1792
+ "name": "courses_created_at_index",
1793
+ "entityType": "indexes",
1794
+ "schema": "public",
1795
+ "table": "courses"
1796
+ },
1797
+ {
1798
+ "nameExplicit": false,
1799
+ "columns": [
1800
+ {
1801
+ "value": "title",
1802
+ "isExpression": false,
1803
+ "asc": true,
1804
+ "nullsFirst": false,
1805
+ "opclass": null
1806
+ }
1807
+ ],
1808
+ "isUnique": false,
1809
+ "where": null,
1810
+ "with": "",
1811
+ "method": "btree",
1812
+ "concurrently": false,
1813
+ "name": "courses_title_index",
1814
+ "entityType": "indexes",
1815
+ "schema": "public",
1816
+ "table": "courses"
1817
+ },
1818
+ {
1819
+ "nameExplicit": false,
1820
+ "columns": [
1821
+ {
1822
+ "value": "parent_id",
1823
+ "isExpression": false,
1824
+ "asc": true,
1825
+ "nullsFirst": false,
1826
+ "opclass": null
1827
+ }
1828
+ ],
1829
+ "isUnique": false,
1830
+ "where": null,
1831
+ "with": "",
1832
+ "method": "btree",
1833
+ "concurrently": false,
1834
+ "name": "courses_tags_parent_id_index",
1835
+ "entityType": "indexes",
1836
+ "schema": "public",
1837
+ "table": "courses_tags"
1838
+ },
1839
+ {
1840
+ "nameExplicit": false,
1841
+ "columns": [
1842
+ {
1843
+ "value": "created_at",
1844
+ "isExpression": false,
1845
+ "asc": true,
1846
+ "nullsFirst": false,
1847
+ "opclass": null
1848
+ }
1849
+ ],
1850
+ "isUnique": false,
1851
+ "where": null,
1852
+ "with": "",
1853
+ "method": "btree",
1854
+ "concurrently": false,
1855
+ "name": "enrollments_created_at_index",
1856
+ "entityType": "indexes",
1857
+ "schema": "public",
1858
+ "table": "enrollments"
1859
+ },
1860
+ {
1861
+ "nameExplicit": false,
1862
+ "columns": [
1863
+ {
1864
+ "value": "created_at",
1865
+ "isExpression": false,
1866
+ "asc": true,
1867
+ "nullsFirst": false,
1868
+ "opclass": null
1869
+ }
1870
+ ],
1871
+ "isUnique": false,
1872
+ "where": null,
1873
+ "with": "",
1874
+ "method": "btree",
1875
+ "concurrently": false,
1876
+ "name": "local_users_created_at_index",
1877
+ "entityType": "indexes",
1878
+ "schema": "public",
1879
+ "table": "local_users"
1880
+ },
1881
+ {
1882
+ "nameExplicit": false,
1883
+ "columns": [
1884
+ {
1885
+ "value": "created_at",
1886
+ "isExpression": false,
1887
+ "asc": true,
1888
+ "nullsFirst": false,
1889
+ "opclass": null
1890
+ }
1891
+ ],
1892
+ "isUnique": false,
1893
+ "where": null,
1894
+ "with": "",
1895
+ "method": "btree",
1896
+ "concurrently": false,
1897
+ "name": "member_roles_created_at_index",
1898
+ "entityType": "indexes",
1899
+ "schema": "public",
1900
+ "table": "member_roles"
1901
+ },
1902
+ {
1903
+ "nameExplicit": false,
1904
+ "columns": [
1905
+ {
1906
+ "value": "user_id",
1907
+ "isExpression": false,
1908
+ "asc": true,
1909
+ "nullsFirst": false,
1910
+ "opclass": null
1911
+ }
1912
+ ],
1913
+ "isUnique": false,
1914
+ "where": null,
1915
+ "with": "",
1916
+ "method": "btree",
1917
+ "concurrently": false,
1918
+ "name": "member_roles_user_id_index",
1919
+ "entityType": "indexes",
1920
+ "schema": "public",
1921
+ "table": "member_roles"
1922
+ },
1923
+ {
1924
+ "nameExplicit": false,
1925
+ "columns": [
1926
+ {
1927
+ "value": "role",
1928
+ "isExpression": false,
1929
+ "asc": true,
1930
+ "nullsFirst": false,
1931
+ "opclass": null
1932
+ }
1933
+ ],
1934
+ "isUnique": false,
1935
+ "where": null,
1936
+ "with": "",
1937
+ "method": "btree",
1938
+ "concurrently": false,
1939
+ "name": "member_roles_role_index",
1940
+ "entityType": "indexes",
1941
+ "schema": "public",
1942
+ "table": "member_roles"
1943
+ },
1944
+ {
1945
+ "nameExplicit": false,
1946
+ "columns": [
1947
+ {
1948
+ "value": "created_at",
1949
+ "isExpression": false,
1950
+ "asc": true,
1951
+ "nullsFirst": false,
1952
+ "opclass": null
1953
+ }
1954
+ ],
1955
+ "isUnique": false,
1956
+ "where": null,
1957
+ "with": "",
1958
+ "method": "btree",
1959
+ "concurrently": false,
1960
+ "name": "roles_created_at_index",
1961
+ "entityType": "indexes",
1962
+ "schema": "public",
1963
+ "table": "roles"
1964
+ },
1965
+ {
1966
+ "nameExplicit": false,
1967
+ "columns": [
1968
+ {
1969
+ "value": "name",
1970
+ "isExpression": false,
1971
+ "asc": true,
1972
+ "nullsFirst": false,
1973
+ "opclass": null
1974
+ }
1975
+ ],
1976
+ "isUnique": false,
1977
+ "where": null,
1978
+ "with": "",
1979
+ "method": "btree",
1980
+ "concurrently": false,
1981
+ "name": "roles_name_index",
1982
+ "entityType": "indexes",
1983
+ "schema": "public",
1984
+ "table": "roles"
1985
+ },
1986
+ {
1987
+ "nameExplicit": false,
1988
+ "columns": [
1989
+ {
1990
+ "value": "created_at",
1991
+ "isExpression": false,
1992
+ "asc": true,
1993
+ "nullsFirst": false,
1994
+ "opclass": null
1995
+ }
1996
+ ],
1997
+ "isUnique": false,
1998
+ "where": null,
1999
+ "with": "",
2000
+ "method": "btree",
2001
+ "concurrently": false,
2002
+ "name": "course_sessions_created_at_index",
2003
+ "entityType": "indexes",
2004
+ "schema": "public",
2005
+ "table": "course_sessions"
2006
+ },
2007
+ {
2008
+ "nameExplicit": false,
2009
+ "columns": [
2010
+ {
2011
+ "value": "created_at",
2012
+ "isExpression": false,
2013
+ "asc": true,
2014
+ "nullsFirst": false,
2015
+ "opclass": null
2016
+ }
2017
+ ],
2018
+ "isUnique": false,
2019
+ "where": null,
2020
+ "with": "",
2021
+ "method": "btree",
2022
+ "concurrently": false,
2023
+ "name": "settings_created_at_index",
2024
+ "entityType": "indexes",
2025
+ "schema": "public",
2026
+ "table": "settings"
2027
+ },
2028
+ {
2029
+ "nameExplicit": false,
2030
+ "columns": [
2031
+ {
2032
+ "value": "created_at",
2033
+ "isExpression": false,
2034
+ "asc": true,
2035
+ "nullsFirst": false,
2036
+ "opclass": null
2037
+ }
2038
+ ],
2039
+ "isUnique": false,
2040
+ "where": null,
2041
+ "with": "",
2042
+ "method": "btree",
2043
+ "concurrently": false,
2044
+ "name": "tags_created_at_index",
2045
+ "entityType": "indexes",
2046
+ "schema": "public",
2047
+ "table": "tags"
2048
+ },
2049
+ {
2050
+ "nameExplicit": false,
2051
+ "columns": [
2052
+ {
2053
+ "value": "name",
2054
+ "isExpression": false,
2055
+ "asc": true,
2056
+ "nullsFirst": false,
2057
+ "opclass": null
2058
+ }
2059
+ ],
2060
+ "isUnique": false,
2061
+ "where": null,
2062
+ "with": "",
2063
+ "method": "btree",
2064
+ "concurrently": false,
2065
+ "name": "tags_name_index",
2066
+ "entityType": "indexes",
2067
+ "schema": "public",
2068
+ "table": "tags"
2069
+ },
2070
+ {
2071
+ "nameExplicit": false,
2072
+ "columns": [
2073
+ "user_id"
2074
+ ],
2075
+ "schemaTo": "public",
2076
+ "tableTo": "user",
2077
+ "columnsTo": [
2078
+ "id"
2079
+ ],
2080
+ "onUpdate": "NO ACTION",
2081
+ "onDelete": "CASCADE",
2082
+ "name": "account_user_id_user_id_fkey",
2083
+ "entityType": "fks",
2084
+ "schema": "public",
2085
+ "table": "account"
2086
+ },
2087
+ {
2088
+ "nameExplicit": false,
2089
+ "columns": [
2090
+ "tenant_id"
2091
+ ],
2092
+ "schemaTo": "public",
2093
+ "tableTo": "organization",
2094
+ "columnsTo": [
2095
+ "id"
2096
+ ],
2097
+ "onUpdate": "NO ACTION",
2098
+ "onDelete": "SET NULL",
2099
+ "name": "courses_tenant_id_organization_id_fkey",
2100
+ "entityType": "fks",
2101
+ "schema": "public",
2102
+ "table": "courses"
2103
+ },
2104
+ {
2105
+ "nameExplicit": false,
2106
+ "columns": [
2107
+ "parent_id"
2108
+ ],
2109
+ "schemaTo": "public",
2110
+ "tableTo": "courses",
2111
+ "columnsTo": [
2112
+ "id"
2113
+ ],
2114
+ "onUpdate": "NO ACTION",
2115
+ "onDelete": "CASCADE",
2116
+ "name": "courses_tags_parent_id_courses_id_fkey",
2117
+ "entityType": "fks",
2118
+ "schema": "public",
2119
+ "table": "courses_tags"
2120
+ },
2121
+ {
2122
+ "nameExplicit": false,
2123
+ "columns": [
2124
+ "target_id"
2125
+ ],
2126
+ "schemaTo": "public",
2127
+ "tableTo": "tags",
2128
+ "columnsTo": [
2129
+ "id"
2130
+ ],
2131
+ "onUpdate": "NO ACTION",
2132
+ "onDelete": "CASCADE",
2133
+ "name": "courses_tags_target_id_tags_id_fkey",
2134
+ "entityType": "fks",
2135
+ "schema": "public",
2136
+ "table": "courses_tags"
2137
+ },
2138
+ {
2139
+ "nameExplicit": false,
2140
+ "columns": [
2141
+ "tenant_id"
2142
+ ],
2143
+ "schemaTo": "public",
2144
+ "tableTo": "organization",
2145
+ "columnsTo": [
2146
+ "id"
2147
+ ],
2148
+ "onUpdate": "NO ACTION",
2149
+ "onDelete": "SET NULL",
2150
+ "name": "enrollments_tenant_id_organization_id_fkey",
2151
+ "entityType": "fks",
2152
+ "schema": "public",
2153
+ "table": "enrollments"
2154
+ },
2155
+ {
2156
+ "nameExplicit": false,
2157
+ "columns": [
2158
+ "session_id"
2159
+ ],
2160
+ "schemaTo": "public",
2161
+ "tableTo": "course_sessions",
2162
+ "columnsTo": [
2163
+ "id"
2164
+ ],
2165
+ "onUpdate": "NO ACTION",
2166
+ "onDelete": "SET NULL",
2167
+ "name": "enrollments_session_id_course_sessions_id_fkey",
2168
+ "entityType": "fks",
2169
+ "schema": "public",
2170
+ "table": "enrollments"
2171
+ },
2172
+ {
2173
+ "nameExplicit": false,
2174
+ "columns": [
2175
+ "student_id"
2176
+ ],
2177
+ "schemaTo": "public",
2178
+ "tableTo": "user",
2179
+ "columnsTo": [
2180
+ "id"
2181
+ ],
2182
+ "onUpdate": "NO ACTION",
2183
+ "onDelete": "SET NULL",
2184
+ "name": "enrollments_student_id_user_id_fkey",
2185
+ "entityType": "fks",
2186
+ "schema": "public",
2187
+ "table": "enrollments"
2188
+ },
2189
+ {
2190
+ "nameExplicit": false,
2191
+ "columns": [
2192
+ "organization_id"
2193
+ ],
2194
+ "schemaTo": "public",
2195
+ "tableTo": "organization",
2196
+ "columnsTo": [
2197
+ "id"
2198
+ ],
2199
+ "onUpdate": "NO ACTION",
2200
+ "onDelete": "CASCADE",
2201
+ "name": "invitation_organization_id_organization_id_fkey",
2202
+ "entityType": "fks",
2203
+ "schema": "public",
2204
+ "table": "invitation"
2205
+ },
2206
+ {
2207
+ "nameExplicit": false,
2208
+ "columns": [
2209
+ "inviter_id"
2210
+ ],
2211
+ "schemaTo": "public",
2212
+ "tableTo": "user",
2213
+ "columnsTo": [
2214
+ "id"
2215
+ ],
2216
+ "onUpdate": "NO ACTION",
2217
+ "onDelete": "CASCADE",
2218
+ "name": "invitation_inviter_id_user_id_fkey",
2219
+ "entityType": "fks",
2220
+ "schema": "public",
2221
+ "table": "invitation"
2222
+ },
2223
+ {
2224
+ "nameExplicit": false,
2225
+ "columns": [
2226
+ "organization_id"
2227
+ ],
2228
+ "schemaTo": "public",
2229
+ "tableTo": "organization",
2230
+ "columnsTo": [
2231
+ "id"
2232
+ ],
2233
+ "onUpdate": "NO ACTION",
2234
+ "onDelete": "CASCADE",
2235
+ "name": "member_organization_id_organization_id_fkey",
2236
+ "entityType": "fks",
2237
+ "schema": "public",
2238
+ "table": "member"
2239
+ },
2240
+ {
2241
+ "nameExplicit": false,
2242
+ "columns": [
2243
+ "user_id"
2244
+ ],
2245
+ "schemaTo": "public",
2246
+ "tableTo": "user",
2247
+ "columnsTo": [
2248
+ "id"
2249
+ ],
2250
+ "onUpdate": "NO ACTION",
2251
+ "onDelete": "CASCADE",
2252
+ "name": "member_user_id_user_id_fkey",
2253
+ "entityType": "fks",
2254
+ "schema": "public",
2255
+ "table": "member"
2256
+ },
2257
+ {
2258
+ "nameExplicit": false,
2259
+ "columns": [
2260
+ "tenant_id"
2261
+ ],
2262
+ "schemaTo": "public",
2263
+ "tableTo": "organization",
2264
+ "columnsTo": [
2265
+ "id"
2266
+ ],
2267
+ "onUpdate": "NO ACTION",
2268
+ "onDelete": "SET NULL",
2269
+ "name": "member_roles_tenant_id_organization_id_fkey",
2270
+ "entityType": "fks",
2271
+ "schema": "public",
2272
+ "table": "member_roles"
2273
+ },
2274
+ {
2275
+ "nameExplicit": false,
2276
+ "columns": [
2277
+ "user_id"
2278
+ ],
2279
+ "schemaTo": "public",
2280
+ "tableTo": "user",
2281
+ "columnsTo": [
2282
+ "id"
2283
+ ],
2284
+ "onUpdate": "NO ACTION",
2285
+ "onDelete": "CASCADE",
2286
+ "name": "member_roles_user_id_user_id_fkey",
2287
+ "entityType": "fks",
2288
+ "schema": "public",
2289
+ "table": "member_roles"
2290
+ },
2291
+ {
2292
+ "nameExplicit": false,
2293
+ "columns": [
2294
+ "organization_id"
2295
+ ],
2296
+ "schemaTo": "public",
2297
+ "tableTo": "organization",
2298
+ "columnsTo": [
2299
+ "id"
2300
+ ],
2301
+ "onUpdate": "NO ACTION",
2302
+ "onDelete": "CASCADE",
2303
+ "name": "organization_role_organization_id_organization_id_fkey",
2304
+ "entityType": "fks",
2305
+ "schema": "public",
2306
+ "table": "organization_role"
2307
+ },
2308
+ {
2309
+ "nameExplicit": false,
2310
+ "columns": [
2311
+ "tenant_id"
2312
+ ],
2313
+ "schemaTo": "public",
2314
+ "tableTo": "organization",
2315
+ "columnsTo": [
2316
+ "id"
2317
+ ],
2318
+ "onUpdate": "NO ACTION",
2319
+ "onDelete": "SET NULL",
2320
+ "name": "roles_tenant_id_organization_id_fkey",
2321
+ "entityType": "fks",
2322
+ "schema": "public",
2323
+ "table": "roles"
2324
+ },
2325
+ {
2326
+ "nameExplicit": false,
2327
+ "columns": [
2328
+ "user_id"
2329
+ ],
2330
+ "schemaTo": "public",
2331
+ "tableTo": "user",
2332
+ "columnsTo": [
2333
+ "id"
2334
+ ],
2335
+ "onUpdate": "NO ACTION",
2336
+ "onDelete": "CASCADE",
2337
+ "name": "session_user_id_user_id_fkey",
2338
+ "entityType": "fks",
2339
+ "schema": "public",
2340
+ "table": "session"
2341
+ },
2342
+ {
2343
+ "nameExplicit": false,
2344
+ "columns": [
2345
+ "tenant_id"
2346
+ ],
2347
+ "schemaTo": "public",
2348
+ "tableTo": "organization",
2349
+ "columnsTo": [
2350
+ "id"
2351
+ ],
2352
+ "onUpdate": "NO ACTION",
2353
+ "onDelete": "SET NULL",
2354
+ "name": "course_sessions_tenant_id_organization_id_fkey",
2355
+ "entityType": "fks",
2356
+ "schema": "public",
2357
+ "table": "course_sessions"
2358
+ },
2359
+ {
2360
+ "nameExplicit": false,
2361
+ "columns": [
2362
+ "course_id"
2363
+ ],
2364
+ "schemaTo": "public",
2365
+ "tableTo": "courses",
2366
+ "columnsTo": [
2367
+ "id"
2368
+ ],
2369
+ "onUpdate": "NO ACTION",
2370
+ "onDelete": "RESTRICT",
2371
+ "name": "course_sessions_course_id_courses_id_fkey",
2372
+ "entityType": "fks",
2373
+ "schema": "public",
2374
+ "table": "course_sessions"
2375
+ },
2376
+ {
2377
+ "nameExplicit": false,
2378
+ "columns": [
2379
+ "tenant_id"
2380
+ ],
2381
+ "schemaTo": "public",
2382
+ "tableTo": "organization",
2383
+ "columnsTo": [
2384
+ "id"
2385
+ ],
2386
+ "onUpdate": "NO ACTION",
2387
+ "onDelete": "RESTRICT",
2388
+ "name": "settings_tenant_id_organization_id_fkey",
2389
+ "entityType": "fks",
2390
+ "schema": "public",
2391
+ "table": "settings"
2392
+ },
2393
+ {
2394
+ "nameExplicit": false,
2395
+ "columns": [
2396
+ "tenant_id"
2397
+ ],
2398
+ "schemaTo": "public",
2399
+ "tableTo": "organization",
2400
+ "columnsTo": [
2401
+ "id"
2402
+ ],
2403
+ "onUpdate": "NO ACTION",
2404
+ "onDelete": "SET NULL",
2405
+ "name": "tags_tenant_id_organization_id_fkey",
2406
+ "entityType": "fks",
2407
+ "schema": "public",
2408
+ "table": "tags"
2409
+ },
2410
+ {
2411
+ "columns": [
2412
+ "id"
2413
+ ],
2414
+ "nameExplicit": false,
2415
+ "name": "account_pkey",
2416
+ "schema": "public",
2417
+ "table": "account",
2418
+ "entityType": "pks"
2419
+ },
2420
+ {
2421
+ "columns": [
2422
+ "id"
2423
+ ],
2424
+ "nameExplicit": false,
2425
+ "name": "courses_pkey",
2426
+ "schema": "public",
2427
+ "table": "courses",
2428
+ "entityType": "pks"
2429
+ },
2430
+ {
2431
+ "columns": [
2432
+ "id"
2433
+ ],
2434
+ "nameExplicit": false,
2435
+ "name": "enrollments_pkey",
2436
+ "schema": "public",
2437
+ "table": "enrollments",
2438
+ "entityType": "pks"
2439
+ },
2440
+ {
2441
+ "columns": [
2442
+ "id"
2443
+ ],
2444
+ "nameExplicit": false,
2445
+ "name": "invitation_pkey",
2446
+ "schema": "public",
2447
+ "table": "invitation",
2448
+ "entityType": "pks"
2449
+ },
2450
+ {
2451
+ "columns": [
2452
+ "id"
2453
+ ],
2454
+ "nameExplicit": false,
2455
+ "name": "local_users_pkey",
2456
+ "schema": "public",
2457
+ "table": "local_users",
2458
+ "entityType": "pks"
2459
+ },
2460
+ {
2461
+ "columns": [
2462
+ "id"
2463
+ ],
2464
+ "nameExplicit": false,
2465
+ "name": "member_pkey",
2466
+ "schema": "public",
2467
+ "table": "member",
2468
+ "entityType": "pks"
2469
+ },
2470
+ {
2471
+ "columns": [
2472
+ "id"
2473
+ ],
2474
+ "nameExplicit": false,
2475
+ "name": "member_roles_pkey",
2476
+ "schema": "public",
2477
+ "table": "member_roles",
2478
+ "entityType": "pks"
2479
+ },
2480
+ {
2481
+ "columns": [
2482
+ "id"
2483
+ ],
2484
+ "nameExplicit": false,
2485
+ "name": "organization_pkey",
2486
+ "schema": "public",
2487
+ "table": "organization",
2488
+ "entityType": "pks"
2489
+ },
2490
+ {
2491
+ "columns": [
2492
+ "id"
2493
+ ],
2494
+ "nameExplicit": false,
2495
+ "name": "organization_role_pkey",
2496
+ "schema": "public",
2497
+ "table": "organization_role",
2498
+ "entityType": "pks"
2499
+ },
2500
+ {
2501
+ "columns": [
2502
+ "id"
2503
+ ],
2504
+ "nameExplicit": false,
2505
+ "name": "roles_pkey",
2506
+ "schema": "public",
2507
+ "table": "roles",
2508
+ "entityType": "pks"
2509
+ },
2510
+ {
2511
+ "columns": [
2512
+ "id"
2513
+ ],
2514
+ "nameExplicit": false,
2515
+ "name": "session_pkey",
2516
+ "schema": "public",
2517
+ "table": "session",
2518
+ "entityType": "pks"
2519
+ },
2520
+ {
2521
+ "columns": [
2522
+ "id"
2523
+ ],
2524
+ "nameExplicit": false,
2525
+ "name": "course_sessions_pkey",
2526
+ "schema": "public",
2527
+ "table": "course_sessions",
2528
+ "entityType": "pks"
2529
+ },
2530
+ {
2531
+ "columns": [
2532
+ "id"
2533
+ ],
2534
+ "nameExplicit": false,
2535
+ "name": "settings_pkey",
2536
+ "schema": "public",
2537
+ "table": "settings",
2538
+ "entityType": "pks"
2539
+ },
2540
+ {
2541
+ "columns": [
2542
+ "id"
2543
+ ],
2544
+ "nameExplicit": false,
2545
+ "name": "tags_pkey",
2546
+ "schema": "public",
2547
+ "table": "tags",
2548
+ "entityType": "pks"
2549
+ },
2550
+ {
2551
+ "columns": [
2552
+ "id"
2553
+ ],
2554
+ "nameExplicit": false,
2555
+ "name": "user_pkey",
2556
+ "schema": "public",
2557
+ "table": "user",
2558
+ "entityType": "pks"
2559
+ },
2560
+ {
2561
+ "columns": [
2562
+ "id"
2563
+ ],
2564
+ "nameExplicit": false,
2565
+ "name": "verification_pkey",
2566
+ "schema": "public",
2567
+ "table": "verification",
2568
+ "entityType": "pks"
2569
+ },
2570
+ {
2571
+ "nameExplicit": false,
2572
+ "columns": [
2573
+ "email"
2574
+ ],
2575
+ "nullsNotDistinct": false,
2576
+ "name": "local_users_email_key",
2577
+ "schema": "public",
2578
+ "table": "local_users",
2579
+ "entityType": "uniques"
2580
+ },
2581
+ {
2582
+ "nameExplicit": false,
2583
+ "columns": [
2584
+ "slug"
2585
+ ],
2586
+ "nullsNotDistinct": false,
2587
+ "name": "organization_slug_key",
2588
+ "schema": "public",
2589
+ "table": "organization",
2590
+ "entityType": "uniques"
2591
+ },
2592
+ {
2593
+ "nameExplicit": false,
2594
+ "columns": [
2595
+ "token"
2596
+ ],
2597
+ "nullsNotDistinct": false,
2598
+ "name": "session_token_key",
2599
+ "schema": "public",
2600
+ "table": "session",
2601
+ "entityType": "uniques"
2602
+ },
2603
+ {
2604
+ "nameExplicit": false,
2605
+ "columns": [
2606
+ "tenant_id"
2607
+ ],
2608
+ "nullsNotDistinct": false,
2609
+ "name": "settings_tenant_id_key",
2610
+ "schema": "public",
2611
+ "table": "settings",
2612
+ "entityType": "uniques"
2613
+ },
2614
+ {
2615
+ "nameExplicit": false,
2616
+ "columns": [
2617
+ "email"
2618
+ ],
2619
+ "nullsNotDistinct": false,
2620
+ "name": "user_email_key",
2621
+ "schema": "public",
2622
+ "table": "user",
2623
+ "entityType": "uniques"
2624
+ }
2625
+ ],
2626
+ "renames": []
2627
+ }