@vitnode/core 1.2.0-canary.60 → 1.2.0-canary.61

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 (274) hide show
  1. package/dist/scripts/get-config.js +15 -0
  2. package/dist/scripts/plugin.js +188 -0
  3. package/dist/scripts/prepare-database.js +177 -0
  4. package/dist/scripts/prepare-plugins-files.js +134 -0
  5. package/dist/scripts/run-interactive-shell-command.js +21 -0
  6. package/dist/scripts/scripts.js +39 -13
  7. package/dist/scripts/shared/file-utils.js +203 -0
  8. package/dist/src/api/adapters/sso/discord.js +1 -77
  9. package/dist/src/api/adapters/sso/facebook.js +1 -76
  10. package/dist/src/api/adapters/sso/google.js +1 -87
  11. package/dist/src/api/config.js +1 -67
  12. package/dist/src/api/lib/check-plugin-id.js +1 -43
  13. package/dist/src/api/lib/cron.js +1 -22
  14. package/dist/src/api/lib/logger-middleware.js +1 -35
  15. package/dist/src/api/lib/module.js +1 -22
  16. package/dist/src/api/lib/plugin.js +1 -22
  17. package/dist/src/api/lib/route.js +1 -27
  18. package/dist/src/api/lib/with-pagination.js +1 -83
  19. package/dist/src/api/middlewares/captcha.middleware.js +1 -63
  20. package/dist/src/api/middlewares/cron-auth.middleware.js +1 -19
  21. package/dist/src/api/middlewares/global.middleware.js +1 -93
  22. package/dist/src/api/middlewares/rate-limiter.middleware.js +1 -32
  23. package/dist/src/api/models/device.js +1 -61
  24. package/dist/src/api/models/email.js +1 -76
  25. package/dist/src/api/models/password.js +1 -36
  26. package/dist/src/api/models/session-admin.js +1 -106
  27. package/dist/src/api/models/session.js +1 -85
  28. package/dist/src/api/models/sso.js +1 -120
  29. package/dist/src/api/models/user/get-user-by-id.js +1 -19
  30. package/dist/src/api/models/user/sign-in-with-passwords.js +1 -22
  31. package/dist/src/api/models/user/sign-up.js +1 -73
  32. package/dist/src/api/models/user.js +1 -8
  33. package/dist/src/api/modules/admin/admin.module.js +1 -19
  34. package/dist/src/api/modules/admin/advanced/advanced.admin.module.js +1 -11
  35. package/dist/src/api/modules/admin/advanced/cron/cron.admin.module.js +1 -12
  36. package/dist/src/api/modules/admin/advanced/cron/routes/get.route.js +1 -66
  37. package/dist/src/api/modules/admin/advanced/cron/routes/run.route.js +1 -95
  38. package/dist/src/api/modules/admin/debug/debug.admin.module.js +1 -10
  39. package/dist/src/api/modules/admin/debug/routes/logs.route.js +1 -94
  40. package/dist/src/api/modules/admin/routes/session.route.js +1 -47
  41. package/dist/src/api/modules/admin/users/routes/list.route.js +1 -79
  42. package/dist/src/api/modules/admin/users/routes/users.route.js +1 -84
  43. package/dist/src/api/modules/admin/users/users.admin.module.js +1 -10
  44. package/dist/src/api/modules/cron/cron/clean.cron.js +1 -24
  45. package/dist/src/api/modules/cron/cron.module.js +1 -14
  46. package/dist/src/api/modules/cron/helpers/process-cron-jobs.d.ts.map +1 -1
  47. package/dist/src/api/modules/cron/helpers/process-cron-jobs.js +1 -76
  48. package/dist/src/api/modules/cron/routes/cron.route.js +1 -101
  49. package/dist/src/api/modules/middleware/middleware.module.js +1 -10
  50. package/dist/src/api/modules/middleware/route.js +1 -49
  51. package/dist/src/api/modules/users/avatar-color.js +1 -43
  52. package/dist/src/api/modules/users/routes/change-password.route.js +1 -58
  53. package/dist/src/api/modules/users/routes/reset-passowrd.route.js +1 -91
  54. package/dist/src/api/modules/users/routes/session.route.js +1 -46
  55. package/dist/src/api/modules/users/routes/sign-in.route.js +1 -71
  56. package/dist/src/api/modules/users/routes/sign-out.route.js +1 -43
  57. package/dist/src/api/modules/users/routes/sign-up.route.js +1 -77
  58. package/dist/src/api/modules/users/routes/test.route.js +1 -33
  59. package/dist/src/api/modules/users/sso/routes/callback.route.js +1 -52
  60. package/dist/src/api/modules/users/sso/routes/create-url.route.js +1 -36
  61. package/dist/src/api/modules/users/sso/sso.module.js +1 -12
  62. package/dist/src/api/modules/users/users.module.js +1 -26
  63. package/dist/src/api/plugin.js +1 -15
  64. package/dist/src/app/login/page.js +1 -16
  65. package/dist/src/app/login/reset-password/page.js +1 -18
  66. package/dist/src/app/login/sso/[providerId]/page.js +1 -10
  67. package/dist/src/app/register/page.js +1 -16
  68. package/dist/src/app_admin/core/advanced/cron/page.js +1 -42
  69. package/dist/src/app_admin/core/debug/page.js +1 -45
  70. package/dist/src/app_admin/core/page.js +1 -5
  71. package/dist/src/app_admin/core/test/page.js +1 -5
  72. package/dist/src/app_admin/core/users/page.js +1 -38
  73. package/dist/src/components/avatar.js +1 -14
  74. package/dist/src/components/confirm-action/confirm-action-alert-dialog.js +1 -42
  75. package/dist/src/components/confirm-action/content.js +1 -31
  76. package/dist/src/components/date-format.js +1 -41
  77. package/dist/src/components/form/auto-form.js +1 -103
  78. package/dist/src/components/form/common/desc.js +1 -9
  79. package/dist/src/components/form/common/label.js +1 -18
  80. package/dist/src/components/form/fields/checkbox.js +1 -37
  81. package/dist/src/components/form/fields/combobox-async.js +1 -123
  82. package/dist/src/components/form/fields/combobox.js +1 -87
  83. package/dist/src/components/form/fields/input.js +1 -39
  84. package/dist/src/components/form/fields/radio-group.js +1 -50
  85. package/dist/src/components/form/fields/select.js +1 -58
  86. package/dist/src/components/form/fields/switch.js +1 -36
  87. package/dist/src/components/form/fields/textarea.js +1 -36
  88. package/dist/src/components/i18n-provider.js +1 -43
  89. package/dist/src/components/logo-vitnode.js +1 -119
  90. package/dist/src/components/switchers/langs/language-switcher.js +1 -47
  91. package/dist/src/components/switchers/themes/theme-switcher.js +1 -28
  92. package/dist/src/components/table/content.js +1 -81
  93. package/dist/src/components/table/data-table.js +1 -68
  94. package/dist/src/components/table/order-table-head.js +1 -50
  95. package/dist/src/components/table/pagination.js +1 -122
  96. package/dist/src/components/tiptap/extension.js +1 -33
  97. package/dist/src/components/tiptap/toolbar/actions/alignment-action.js +1 -91
  98. package/dist/src/components/tiptap/toolbar/actions/bold-action.js +1 -39
  99. package/dist/src/components/tiptap/toolbar/actions/headings-action.js +1 -93
  100. package/dist/src/components/tiptap/toolbar/actions/italic-action.js +1 -38
  101. package/dist/src/components/tiptap/toolbar/actions/list-action.js +1 -61
  102. package/dist/src/components/tiptap/toolbar/actions/text-format-more/text-format-more.js +1 -59
  103. package/dist/src/components/tiptap/toolbar/actions/underline-action.js +1 -38
  104. package/dist/src/components/tiptap/toolbar/actions/undo-redo-actions.js +1 -63
  105. package/dist/src/components/tiptap/toolbar/actions/utils/tooltip-shortcut.js +1 -11
  106. package/dist/src/components/tiptap/toolbar/tiptap-toolbar.js +1 -55
  107. package/dist/src/components/tiptap/toolbar/use-toolbar-editor.js +1 -5
  108. package/dist/src/components/ui/accordion.js +1 -46
  109. package/dist/src/components/ui/alert-dialog.js +1 -123
  110. package/dist/src/components/ui/alert.js +1 -39
  111. package/dist/src/components/ui/badge.js +1 -28
  112. package/dist/src/components/ui/button-client.js +1 -57
  113. package/dist/src/components/ui/button.js +1 -32
  114. package/dist/src/components/ui/card.js +1 -52
  115. package/dist/src/components/ui/checkbox.js +1 -20
  116. package/dist/src/components/ui/collapsible.js +1 -22
  117. package/dist/src/components/ui/command.js +1 -98
  118. package/dist/src/components/ui/context-menu.js +1 -140
  119. package/dist/src/components/ui/dialog.js +1 -189
  120. package/dist/src/components/ui/drawer.js +1 -83
  121. package/dist/src/components/ui/dropdown-menu.js +1 -141
  122. package/dist/src/components/ui/editor-content.js +1 -10
  123. package/dist/src/components/ui/editor.js +1 -35
  124. package/dist/src/components/ui/form.js +1 -148
  125. package/dist/src/components/ui/header-content.js +1 -30
  126. package/dist/src/components/ui/hover-card.js +1 -29
  127. package/dist/src/components/ui/input-otp.js +1 -48
  128. package/dist/src/components/ui/input.js +1 -11
  129. package/dist/src/components/ui/label.js +1 -12
  130. package/dist/src/components/ui/loader.js +1 -16
  131. package/dist/src/components/ui/menubar.js +1 -151
  132. package/dist/src/components/ui/navigation-menu.js +1 -82
  133. package/dist/src/components/ui/popover.js +1 -35
  134. package/dist/src/components/ui/progress.js +1 -19
  135. package/dist/src/components/ui/radio-group.js +1 -27
  136. package/dist/src/components/ui/scroll-area.js +1 -33
  137. package/dist/src/components/ui/select.js +1 -113
  138. package/dist/src/components/ui/separator.js +1 -14
  139. package/dist/src/components/ui/sheet.js +1 -92
  140. package/dist/src/components/ui/sidebar.js +1 -433
  141. package/dist/src/components/ui/skeleton.js +1 -10
  142. package/dist/src/components/ui/slider.js +1 -50
  143. package/dist/src/components/ui/sonner.js +1 -26
  144. package/dist/src/components/ui/switch.js +1 -16
  145. package/dist/src/components/ui/table.js +1 -63
  146. package/dist/src/components/ui/tabs.js +1 -33
  147. package/dist/src/components/ui/textarea.js +1 -10
  148. package/dist/src/components/ui/toggle-group.js +1 -45
  149. package/dist/src/components/ui/toggle.js +1 -34
  150. package/dist/src/components/ui/tooltip.js +1 -57
  151. package/dist/src/config.js +1 -4
  152. package/dist/src/database/admins.js +1 -74
  153. package/dist/src/database/cron.js +1 -22
  154. package/dist/src/database/languages.js +1 -52
  155. package/dist/src/database/logs.js +1 -34
  156. package/dist/src/database/moderators.js +1 -37
  157. package/dist/src/database/roles.js +1 -13
  158. package/dist/src/database/sessions.js +1 -60
  159. package/dist/src/database/users.js +1 -145
  160. package/dist/src/drizzle.config.js +1 -67
  161. package/dist/src/emails/default-template.js +1 -99
  162. package/dist/src/emails/reset-password.js +1 -132
  163. package/dist/src/emails/ui/button.js +1 -36
  164. package/dist/src/emails/ui/card.js +1 -39
  165. package/dist/src/hooks/use-before-unload.js +1 -30
  166. package/dist/src/hooks/use-captcha.js +1 -122
  167. package/dist/src/hooks/use-mobile.js +1 -16
  168. package/dist/src/lib/api/get-middleware-api.js +1 -13
  169. package/dist/src/lib/api/get-next-cron-run-date.js +1 -14
  170. package/dist/src/lib/api/get-next-cron-run-date.test.js +1 -55
  171. package/dist/src/lib/api/get-session-admin-api.js +1 -19
  172. package/dist/src/lib/api/get-session-api.js +1 -14
  173. package/dist/src/lib/api/should-cron-job-run.js +1 -16
  174. package/dist/src/lib/api/should-cron-job-run.test.js +1 -213
  175. package/dist/src/lib/api/validate-cron-schedule.d.ts +2 -0
  176. package/dist/src/lib/api/validate-cron-schedule.d.ts.map +1 -0
  177. package/dist/src/lib/api/validate-cron-schedule.js +1 -0
  178. package/dist/src/lib/api/validate-cron-schedule.test.d.ts +2 -0
  179. package/dist/src/lib/api/validate-cron-schedule.test.d.ts.map +1 -0
  180. package/dist/src/lib/api/validate-cron-schedule.test.js +1 -0
  181. package/dist/src/lib/colors.js +1 -140
  182. package/dist/src/lib/colors.test.js +1 -173
  183. package/dist/src/lib/config.js +1 -14
  184. package/dist/src/lib/ctrl-or-command-character.js +1 -5
  185. package/dist/src/lib/fetcher/cookie-from-string-to-object.js +1 -12
  186. package/dist/src/lib/fetcher/cookie-from-string-to-object.test.js +1 -78
  187. package/dist/src/lib/fetcher/core.js +3 -48
  188. package/dist/src/lib/fetcher/helpers-server.js +1 -18
  189. package/dist/src/lib/fetcher/helpers.js +1 -16
  190. package/dist/src/lib/fetcher/helpers.test.js +1 -37
  191. package/dist/src/lib/fetcher/types.js +1 -1
  192. package/dist/src/lib/fetcher-client.js +1 -17
  193. package/dist/src/lib/fetcher.js +1 -33
  194. package/dist/src/lib/helpers/auto-form.js +1 -98
  195. package/dist/src/lib/helpers/auto-form.test.js +1 -336
  196. package/dist/src/lib/navigation.js +1 -11
  197. package/dist/src/lib/plugin.js +1 -3
  198. package/dist/src/lib/special-characters.js +1 -4
  199. package/dist/src/lib/special-characters.test.js +1 -56
  200. package/dist/src/lib/utils.js +1 -5
  201. package/dist/src/locales/en.json +308 -0
  202. package/dist/src/tests/setup.js +1 -6
  203. package/dist/src/views/admin/layouts/admin-layout.js +1 -73
  204. package/dist/src/views/admin/layouts/sidebar/nav/item.js +1 -98
  205. package/dist/src/views/admin/layouts/sidebar/nav/nav.js +1 -60
  206. package/dist/src/views/admin/layouts/sidebar/sidebar.js +1 -28
  207. package/dist/src/views/admin/layouts/sidebar/sign-out.js +1 -14
  208. package/dist/src/views/admin/layouts/user-bar/client.js +1 -69
  209. package/dist/src/views/admin/layouts/user-bar/user-bar.js +1 -32
  210. package/dist/src/views/admin/sign-in/sign-in-admin-view.js +1 -27
  211. package/dist/src/views/admin/views/core/advanced/cron/cron-table-view.js +1 -97
  212. package/dist/src/views/admin/views/core/advanced/cron/run-action/mutation-api.js +1 -23
  213. package/dist/src/views/admin/views/core/advanced/cron/run-action/run-action.js +1 -38
  214. package/dist/src/views/admin/views/core/dashboard/dashboard-admin-view.js +1 -44
  215. package/dist/src/views/admin/views/core/debug/actions/clear-cache/clear-cache.js +1 -35
  216. package/dist/src/views/admin/views/core/debug/actions/clear-cache/mutation-api.js +1 -5
  217. package/dist/src/views/admin/views/core/debug/system-logs/actions/more/content.js +1 -281
  218. package/dist/src/views/admin/views/core/debug/system-logs/actions/more/more.js +1 -67
  219. package/dist/src/views/admin/views/core/debug/system-logs/badges/badge-status.js +1 -14
  220. package/dist/src/views/admin/views/core/debug/system-logs/badges/badge-type-log.js +1 -30
  221. package/dist/src/views/admin/views/core/debug/system-logs/system-logs-view.js +1 -96
  222. package/dist/src/views/admin/views/core/test.js +1 -161
  223. package/dist/src/views/admin/views/core/users/users-admin-view.js +1 -89
  224. package/dist/src/views/auth/password-reset/change-password-form/form.js +1 -48
  225. package/dist/src/views/auth/password-reset/change-password-form/mutation-api.js +1 -22
  226. package/dist/src/views/auth/password-reset/change-password-form/use-form.js +1 -36
  227. package/dist/src/views/auth/password-reset/form/form.js +1 -104
  228. package/dist/src/views/auth/password-reset/form/mutation-api.js +1 -21
  229. package/dist/src/views/auth/password-reset/form/use-form.js +1 -33
  230. package/dist/src/views/auth/password-reset/password-reset-view.js +1 -37
  231. package/dist/src/views/auth/sign-in/form/form.js +1 -64
  232. package/dist/src/views/auth/sign-in/form/mutation-api.js +1 -33
  233. package/dist/src/views/auth/sign-in/form/use-form.js +1 -38
  234. package/dist/src/views/auth/sign-in/sign-in-view.js +1 -61
  235. package/dist/src/views/auth/sign-up/components/password-input.js +1 -96
  236. package/dist/src/views/auth/sign-up/email-confirmation-view.js +1 -55
  237. package/dist/src/views/auth/sign-up/form/form.js +1 -89
  238. package/dist/src/views/auth/sign-up/form/mutation-api.js +1 -30
  239. package/dist/src/views/auth/sign-up/form/use-form.js +1 -70
  240. package/dist/src/views/auth/sign-up/sign-up-view.js +1 -65
  241. package/dist/src/views/auth/sign-up/wrapper.js +1 -22
  242. package/dist/src/views/auth/sso/buttons/client.js +1 -22
  243. package/dist/src/views/auth/sso/buttons/mutation-api.js +1 -24
  244. package/dist/src/views/auth/sso/buttons/sso-buttons.js +1 -56
  245. package/dist/src/views/auth/sso/callback/callback-sso-view.js +1 -32
  246. package/dist/src/views/auth/sso/callback/client/client.js +1 -68
  247. package/dist/src/views/auth/sso/callback/client/mutation-api.js +1 -32
  248. package/dist/src/views/error/back-button.js +1 -14
  249. package/dist/src/views/error/error-view.js +1 -58
  250. package/dist/src/views/error/global-error-view.js +1 -50
  251. package/dist/src/views/layouts/provider.js +1 -44
  252. package/dist/src/views/layouts/root-layout.js +1 -25
  253. package/dist/src/views/layouts/theme/header/header.js +1 -38
  254. package/dist/src/views/layouts/theme/header/user/auth/auth.js +1 -33
  255. package/dist/src/views/layouts/theme/header/user/auth/client.js +1 -47
  256. package/dist/src/views/layouts/theme/header/user/auth/log-out-mutation-api.js +1 -27
  257. package/dist/src/views/layouts/theme/header/user/user.js +1 -32
  258. package/dist/src/views/layouts/theme/layout.js +1 -16
  259. package/dist/src/vitnode.config.js +1 -42
  260. package/dist/tsconfig.tsbuildinfo +1 -1
  261. package/dist/tsup.config.js +18 -0
  262. package/dist/vitest.config.d.ts.map +1 -1
  263. package/dist/vitest.config.js +49 -0
  264. package/eslint.config.mjs +2 -0
  265. package/package.json +6 -10
  266. package/dist/src/api/adapters/cron/node-cron.adapter.d.ts +0 -3
  267. package/dist/src/api/adapters/cron/node-cron.adapter.d.ts.map +0 -1
  268. package/dist/src/api/adapters/cron/node-cron.adapter.js +0 -11
  269. package/dist/src/api/adapters/email/nodemailer.d.ts +0 -10
  270. package/dist/src/api/adapters/email/nodemailer.d.ts.map +0 -1
  271. package/dist/src/api/adapters/email/nodemailer.js +0 -30
  272. package/dist/src/api/adapters/email/resend.d.ts +0 -6
  273. package/dist/src/api/adapters/email/resend.d.ts.map +0 -1
  274. package/dist/src/api/adapters/email/resend.js +0 -21
@@ -1,63 +1 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { cn } from "../../lib/utils.js";
3
- function Table({ className, ...props }) {
4
- return /*#__PURE__*/ _jsx("div", {
5
- className: "relative w-full overflow-x-auto",
6
- "data-slot": "table-container",
7
- children: /*#__PURE__*/ _jsx("table", {
8
- className: cn("w-full caption-bottom text-sm", className),
9
- "data-slot": "table",
10
- ...props
11
- })
12
- });
13
- }
14
- function TableHeader({ className, ...props }) {
15
- return /*#__PURE__*/ _jsx("thead", {
16
- className: cn("[&_tr]:border-b", className),
17
- "data-slot": "table-header",
18
- ...props
19
- });
20
- }
21
- function TableBody({ className, ...props }) {
22
- return /*#__PURE__*/ _jsx("tbody", {
23
- className: cn("bg-card [&_tr:last-child]:border-0", className),
24
- "data-slot": "table-body",
25
- ...props
26
- });
27
- }
28
- function TableFooter({ className, ...props }) {
29
- return /*#__PURE__*/ _jsx("tfoot", {
30
- className: cn("bg-muted/50 border-t font-medium [&>tr]:last:border-b-0", className),
31
- "data-slot": "table-footer",
32
- ...props
33
- });
34
- }
35
- function TableRow({ className, ...props }) {
36
- return /*#__PURE__*/ _jsx("tr", {
37
- className: cn("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors", className),
38
- "data-slot": "table-row",
39
- ...props
40
- });
41
- }
42
- function TableHead({ className, ...props }) {
43
- return /*#__PURE__*/ _jsx("th", {
44
- className: cn("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
45
- "data-slot": "table-head",
46
- ...props
47
- });
48
- }
49
- function TableCell({ className, ...props }) {
50
- return /*#__PURE__*/ _jsx("td", {
51
- className: cn("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
52
- "data-slot": "table-cell",
53
- ...props
54
- });
55
- }
56
- function TableCaption({ className, ...props }) {
57
- return /*#__PURE__*/ _jsx("caption", {
58
- className: cn("text-muted-foreground mt-4 text-sm", className),
59
- "data-slot": "table-caption",
60
- ...props
61
- });
62
- }
63
- export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow };
1
+ import{jsx as _jsx}from"react/jsx-runtime";import{cn}from"../../lib/utils.js";function Table({className,...props}){return _jsx("div",{className:"relative w-full overflow-x-auto","data-slot":"table-container",children:_jsx("table",{className:cn("w-full caption-bottom text-sm",className),"data-slot":"table",...props})})}function TableHeader({className,...props}){return _jsx("thead",{className:cn("[&_tr]:border-b",className),"data-slot":"table-header",...props})}function TableBody({className,...props}){return _jsx("tbody",{className:cn("bg-card [&_tr:last-child]:border-0",className),"data-slot":"table-body",...props})}function TableFooter({className,...props}){return _jsx("tfoot",{className:cn("bg-muted/50 border-t font-medium [&>tr]:last:border-b-0",className),"data-slot":"table-footer",...props})}function TableRow({className,...props}){return _jsx("tr",{className:cn("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",className),"data-slot":"table-row",...props})}function TableHead({className,...props}){return _jsx("th",{className:cn("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",className),"data-slot":"table-head",...props})}function TableCell({className,...props}){return _jsx("td",{className:cn("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",className),"data-slot":"table-cell",...props})}function TableCaption({className,...props}){return _jsx("caption",{className:cn("text-muted-foreground mt-4 text-sm",className),"data-slot":"table-caption",...props})}export{Table,TableBody,TableCaption,TableCell,TableFooter,TableHead,TableHeader,TableRow};
@@ -1,33 +1 @@
1
- "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { Tabs as TabsPrimitive } from "radix-ui";
4
- import { cn } from "../../lib/utils.js";
5
- function Tabs({ className, ...props }) {
6
- return /*#__PURE__*/ _jsx(TabsPrimitive.Root, {
7
- className: cn("flex flex-col gap-2", className),
8
- "data-slot": "tabs",
9
- ...props
10
- });
11
- }
12
- function TabsList({ className, ...props }) {
13
- return /*#__PURE__*/ _jsx(TabsPrimitive.List, {
14
- className: cn("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]", className),
15
- "data-slot": "tabs-list",
16
- ...props
17
- });
18
- }
19
- function TabsTrigger({ className, ...props }) {
20
- return /*#__PURE__*/ _jsx(TabsPrimitive.Trigger, {
21
- className: cn("data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", className),
22
- "data-slot": "tabs-trigger",
23
- ...props
24
- });
25
- }
26
- function TabsContent({ className, ...props }) {
27
- return /*#__PURE__*/ _jsx(TabsPrimitive.Content, {
28
- className: cn("flex-1 outline-none", className),
29
- "data-slot": "tabs-content",
30
- ...props
31
- });
32
- }
33
- export { Tabs, TabsContent, TabsList, TabsTrigger };
1
+ "use client";import{jsx as _jsx}from"react/jsx-runtime";import{Tabs as TabsPrimitive}from"radix-ui";import{cn}from"../../lib/utils.js";function Tabs({className,...props}){return _jsx(TabsPrimitive.Root,{className:cn("flex flex-col gap-2",className),"data-slot":"tabs",...props})}function TabsList({className,...props}){return _jsx(TabsPrimitive.List,{className:cn("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",className),"data-slot":"tabs-list",...props})}function TabsTrigger({className,...props}){return _jsx(TabsPrimitive.Trigger,{className:cn("data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",className),"data-slot":"tabs-trigger",...props})}function TabsContent({className,...props}){return _jsx(TabsPrimitive.Content,{className:cn("flex-1 outline-none",className),"data-slot":"tabs-content",...props})}export{Tabs,TabsContent,TabsList,TabsTrigger};
@@ -1,10 +1 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { cn } from "../../lib/utils.js";
3
- function Textarea({ className, ...props }) {
4
- return /*#__PURE__*/ _jsx("textarea", {
5
- className: cn("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", className),
6
- "data-slot": "textarea",
7
- ...props
8
- });
9
- }
10
- export { Textarea };
1
+ import{jsx as _jsx}from"react/jsx-runtime";import{cn}from"../../lib/utils.js";function Textarea({className,...props}){return _jsx("textarea",{className:cn("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",className),"data-slot":"textarea",...props})}export{Textarea};
@@ -1,45 +1 @@
1
- "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { ToggleGroup as ToggleGroupPrimitive } from "radix-ui";
4
- import React from "react";
5
- import { toggleVariants } from "./toggle.js";
6
- import { cn } from "../../lib/utils.js";
7
- const ToggleGroupContext = /*#__PURE__*/ React.createContext({
8
- size: "default",
9
- variant: "default"
10
- });
11
- function ToggleGroup({ className, variant, size, children, ...props }) {
12
- const contextValue = React.useMemo(()=>({
13
- variant,
14
- size
15
- }), [
16
- variant,
17
- size
18
- ]);
19
- return /*#__PURE__*/ _jsx(ToggleGroupPrimitive.Root, {
20
- className: cn("group/toggle-group flex w-fit items-center rounded-md data-[variant=outline]:shadow-xs", className),
21
- "data-size": size,
22
- "data-slot": "toggle-group",
23
- "data-variant": variant,
24
- ...props,
25
- children: /*#__PURE__*/ _jsx(ToggleGroupContext, {
26
- value: contextValue,
27
- children: children
28
- })
29
- });
30
- }
31
- function ToggleGroupItem({ className, children, variant, size, ...props }) {
32
- const context = React.use(ToggleGroupContext);
33
- return /*#__PURE__*/ _jsx(ToggleGroupPrimitive.Item, {
34
- className: cn(toggleVariants({
35
- variant: context.variant ?? variant,
36
- size: context.size ?? size
37
- }), "min-w-0 flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l", className),
38
- "data-size": context.size ?? size,
39
- "data-slot": "toggle-group-item",
40
- "data-variant": context.variant ?? variant,
41
- ...props,
42
- children: children
43
- });
44
- }
45
- export { ToggleGroup, ToggleGroupItem };
1
+ "use client";import{jsx as _jsx}from"react/jsx-runtime";import{ToggleGroup as ToggleGroupPrimitive}from"radix-ui";import React from"react";import{toggleVariants}from"./toggle.js";import{cn}from"../../lib/utils.js";const ToggleGroupContext=React.createContext({size:"default",variant:"default"});function ToggleGroup({className,variant,size,children,...props}){const contextValue=React.useMemo(()=>({variant,size}),[variant,size]);return _jsx(ToggleGroupPrimitive.Root,{className:cn("group/toggle-group flex w-fit items-center rounded-md data-[variant=outline]:shadow-xs",className),"data-size":size,"data-slot":"toggle-group","data-variant":variant,...props,children:_jsx(ToggleGroupContext,{value:contextValue,children:children})})}function ToggleGroupItem({className,children,variant,size,...props}){const context=React.use(ToggleGroupContext);return _jsx(ToggleGroupPrimitive.Item,{className:cn(toggleVariants({variant:context.variant??variant,size:context.size??size}),"min-w-0 flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l",className),"data-size":context.size??size,"data-slot":"toggle-group-item","data-variant":context.variant??variant,...props,children:children})}export{ToggleGroup,ToggleGroupItem};
@@ -1,34 +1 @@
1
- "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { cva } from "class-variance-authority";
4
- import { Toggle as TogglePrimitive } from "radix-ui";
5
- import { cn } from "../../lib/utils.js";
6
- const toggleVariants = cva("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap cursor-pointer", {
7
- variants: {
8
- variant: {
9
- default: "bg-transparent",
10
- outline: "border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground"
11
- },
12
- size: {
13
- default: "h-9 px-2 min-w-9",
14
- sm: "h-8 px-1.5 min-w-8",
15
- lg: "h-10 px-2.5 min-w-10"
16
- }
17
- },
18
- defaultVariants: {
19
- variant: "default",
20
- size: "default"
21
- }
22
- });
23
- function Toggle({ className, variant, size, ...props }) {
24
- return /*#__PURE__*/ _jsx(TogglePrimitive.Root, {
25
- className: cn(toggleVariants({
26
- variant,
27
- size,
28
- className
29
- })),
30
- "data-slot": "toggle",
31
- ...props
32
- });
33
- }
34
- export { Toggle, toggleVariants };
1
+ "use client";import{jsx as _jsx}from"react/jsx-runtime";import{cva}from"class-variance-authority";import{Toggle as TogglePrimitive}from"radix-ui";import{cn}from"../../lib/utils.js";const toggleVariants=cva("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap cursor-pointer",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground"},size:{default:"h-9 px-2 min-w-9",sm:"h-8 px-1.5 min-w-8",lg:"h-10 px-2.5 min-w-10"}},defaultVariants:{variant:"default",size:"default"}});function Toggle({className,variant,size,...props}){return _jsx(TogglePrimitive.Root,{className:cn(toggleVariants({variant,size,className})),"data-slot":"toggle",...props})}export{Toggle,toggleVariants};
@@ -1,57 +1 @@
1
- "use client";
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { Tooltip as TooltipPrimitive } from "radix-ui";
4
- import { cn } from "../../lib/utils.js";
5
- function TooltipProvider({ delayDuration = 200, ...props }) {
6
- return /*#__PURE__*/ _jsx(TooltipPrimitive.Provider, {
7
- "data-slot": "tooltip-provider",
8
- delayDuration: delayDuration,
9
- ...props
10
- });
11
- }
12
- function Tooltip({ ...props }) {
13
- return /*#__PURE__*/ _jsx(TooltipPrimitive.Root, {
14
- "data-slot": "tooltip",
15
- ...props
16
- });
17
- }
18
- function TooltipTrigger({ ...props }) {
19
- return /*#__PURE__*/ _jsx(TooltipPrimitive.Trigger, {
20
- "data-slot": "tooltip-trigger",
21
- ...props
22
- });
23
- }
24
- function TooltipContent({ className, sideOffset = 0, collisionPadding = 8, children, ...props }) {
25
- return /*#__PURE__*/ _jsx(TooltipPrimitive.Portal, {
26
- children: /*#__PURE__*/ _jsxs(TooltipPrimitive.Content, {
27
- className: cn("bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance", className),
28
- collisionPadding: collisionPadding,
29
- "data-slot": "tooltip-content",
30
- sideOffset: sideOffset,
31
- ...props,
32
- children: [
33
- children,
34
- /*#__PURE__*/ _jsx(TooltipPrimitive.Arrow, {
35
- className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"
36
- })
37
- ]
38
- })
39
- });
40
- }
41
- function TooltipWithContent({ children, text, ...props }) {
42
- return /*#__PURE__*/ _jsx(TooltipProvider, {
43
- children: /*#__PURE__*/ _jsxs(Tooltip, {
44
- children: [
45
- /*#__PURE__*/ _jsx(TooltipTrigger, {
46
- asChild: true,
47
- children: children
48
- }),
49
- /*#__PURE__*/ _jsx(TooltipContent, {
50
- ...props,
51
- children: text
52
- })
53
- ]
54
- })
55
- });
56
- }
57
- export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TooltipWithContent };
1
+ "use client";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{Tooltip as TooltipPrimitive}from"radix-ui";import{cn}from"../../lib/utils.js";function TooltipProvider({delayDuration=200,...props}){return _jsx(TooltipPrimitive.Provider,{"data-slot":"tooltip-provider",delayDuration:delayDuration,...props})}function Tooltip({...props}){return _jsx(TooltipPrimitive.Root,{"data-slot":"tooltip",...props})}function TooltipTrigger({...props}){return _jsx(TooltipPrimitive.Trigger,{"data-slot":"tooltip-trigger",...props})}function TooltipContent({className,sideOffset=0,collisionPadding=8,children,...props}){return _jsx(TooltipPrimitive.Portal,{children:_jsxs(TooltipPrimitive.Content,{className:cn("bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",className),collisionPadding:collisionPadding,"data-slot":"tooltip-content",sideOffset:sideOffset,...props,children:[children,_jsx(TooltipPrimitive.Arrow,{className:"bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}function TooltipWithContent({children,text,...props}){return _jsx(TooltipProvider,{children:_jsxs(Tooltip,{children:[_jsx(TooltipTrigger,{asChild:true,children:children}),_jsx(TooltipContent,{...props,children:text})]})})}export{Tooltip,TooltipContent,TooltipProvider,TooltipTrigger,TooltipWithContent};
@@ -1,4 +1 @@
1
- export const CONFIG_PLUGIN = {
2
- pluginId: "@vitnode/core",
3
- version: "2.0.0-canary.0"
4
- };
1
+ export const CONFIG_PLUGIN={pluginId:"@vitnode/core",version:"2.0.0-canary.0"};
@@ -1,74 +1 @@
1
- import { relations } from "drizzle-orm";
2
- import { index, pgTable } from "drizzle-orm/pg-core";
3
- import { core_roles } from "./roles.js";
4
- import { core_sessions_known_devices } from "./sessions.js";
5
- import { core_users } from "./users.js";
6
- export const core_admin_permissions = pgTable("core_admin_permissions", (t)=>({
7
- id: t.serial().primaryKey(),
8
- roleId: t.integer().references(()=>core_roles.id, {
9
- onDelete: "cascade"
10
- }),
11
- userId: t.integer().references(()=>core_users.id, {
12
- onDelete: "cascade"
13
- }),
14
- createdAt: t.timestamp().notNull().defaultNow(),
15
- updatedAt: t.timestamp().notNull().$onUpdate(()=>new Date()),
16
- protected: t.boolean().notNull().default(false)
17
- }), (t)=>[
18
- index("core_admin_permissions_role_id_idx").on(t.roleId),
19
- index("core_admin_permissions_user_id_idx").on(t.userId)
20
- ]).enableRLS();
21
- export const core_admin_permissions_relations = relations(core_admin_permissions, ({ one })=>({
22
- group: one(core_roles, {
23
- fields: [
24
- core_admin_permissions.roleId
25
- ],
26
- references: [
27
- core_roles.id
28
- ]
29
- }),
30
- user: one(core_users, {
31
- fields: [
32
- core_admin_permissions.userId
33
- ],
34
- references: [
35
- core_users.id
36
- ]
37
- })
38
- }));
39
- export const core_admin_sessions = pgTable("core_admin_sessions", (t)=>({
40
- id: t.serial().primaryKey(),
41
- token: t.varchar({
42
- length: 255
43
- }).notNull().unique(),
44
- userId: t.integer().notNull().references(()=>core_users.id, {
45
- onDelete: "cascade"
46
- }),
47
- createdAt: t.timestamp().notNull().defaultNow(),
48
- lastSeen: t.timestamp().notNull().defaultNow(),
49
- expiresAt: t.timestamp().notNull(),
50
- deviceId: t.integer().references(()=>core_sessions_known_devices.id, {
51
- onDelete: "cascade"
52
- }).notNull()
53
- }), (t)=>[
54
- index("core_admin_sessions_token_idx").on(t.token),
55
- index("core_admin_sessions_user_id_idx").on(t.userId)
56
- ]).enableRLS();
57
- export const core_admin_sessions_relations = relations(core_admin_sessions, ({ one })=>({
58
- user: one(core_users, {
59
- fields: [
60
- core_admin_sessions.userId
61
- ],
62
- references: [
63
- core_users.id
64
- ]
65
- }),
66
- device: one(core_sessions_known_devices, {
67
- fields: [
68
- core_admin_sessions.deviceId
69
- ],
70
- references: [
71
- core_sessions_known_devices.id
72
- ]
73
- })
74
- }));
1
+ import{relations}from"drizzle-orm";import{index,pgTable}from"drizzle-orm/pg-core";import{core_roles}from"./roles.js";import{core_sessions_known_devices}from"./sessions.js";import{core_users}from"./users.js";export const core_admin_permissions=pgTable("core_admin_permissions",t=>({id:t.serial().primaryKey(),roleId:t.integer().references(()=>core_roles.id,{onDelete:"cascade"}),userId:t.integer().references(()=>core_users.id,{onDelete:"cascade"}),createdAt:t.timestamp().notNull().defaultNow(),updatedAt:t.timestamp().notNull().$onUpdate(()=>new Date),protected:t.boolean().notNull().default(false)}),t=>[index("core_admin_permissions_role_id_idx").on(t.roleId),index("core_admin_permissions_user_id_idx").on(t.userId)]).enableRLS();export const core_admin_permissions_relations=relations(core_admin_permissions,({one})=>({group:one(core_roles,{fields:[core_admin_permissions.roleId],references:[core_roles.id]}),user:one(core_users,{fields:[core_admin_permissions.userId],references:[core_users.id]})}));export const core_admin_sessions=pgTable("core_admin_sessions",t=>({id:t.serial().primaryKey(),token:t.varchar({length:255}).notNull().unique(),userId:t.integer().notNull().references(()=>core_users.id,{onDelete:"cascade"}),createdAt:t.timestamp().notNull().defaultNow(),lastSeen:t.timestamp().notNull().defaultNow(),expiresAt:t.timestamp().notNull(),deviceId:t.integer().references(()=>core_sessions_known_devices.id,{onDelete:"cascade"}).notNull()}),t=>[index("core_admin_sessions_token_idx").on(t.token),index("core_admin_sessions_user_id_idx").on(t.userId)]).enableRLS();export const core_admin_sessions_relations=relations(core_admin_sessions,({one})=>({user:one(core_users,{fields:[core_admin_sessions.userId],references:[core_users.id]}),device:one(core_sessions_known_devices,{fields:[core_admin_sessions.deviceId],references:[core_sessions_known_devices.id]})}));
@@ -1,22 +1 @@
1
- import { pgTable } from "drizzle-orm/pg-core";
2
- export const core_cron = pgTable("core_cron", (t)=>({
3
- id: t.serial().primaryKey(),
4
- name: t.varchar({
5
- length: 255
6
- }).notNull(),
7
- description: t.varchar({
8
- length: 255
9
- }),
10
- lastRun: t.timestamp(),
11
- createdAt: t.timestamp().notNull().defaultNow(),
12
- pluginId: t.varchar({
13
- length: 100
14
- }).notNull(),
15
- module: t.varchar({
16
- length: 100
17
- }).notNull(),
18
- nextRun: t.timestamp(),
19
- schedule: t.varchar({
20
- length: 100
21
- }).notNull()
22
- })).enableRLS();
1
+ import{pgTable}from"drizzle-orm/pg-core";export const core_cron=pgTable("core_cron",t=>({id:t.serial().primaryKey(),name:t.varchar({length:255}).notNull(),description:t.varchar({length:255}),lastRun:t.timestamp(),createdAt:t.timestamp().notNull().defaultNow(),pluginId:t.varchar({length:100}).notNull(),module:t.varchar({length:100}).notNull(),nextRun:t.timestamp(),schedule:t.varchar({length:100}).notNull()})).enableRLS();
@@ -1,52 +1 @@
1
- import { relations } from "drizzle-orm";
2
- import { index, pgTable } from "drizzle-orm/pg-core";
3
- export const core_languages = pgTable("core_languages", (t)=>({
4
- id: t.serial().primaryKey(),
5
- code: t.varchar({
6
- length: 32
7
- }).notNull().unique(),
8
- name: t.varchar({
9
- length: 255
10
- }).notNull(),
11
- timezone: t.varchar({
12
- length: 255
13
- }).notNull().default("UTC"),
14
- protected: t.boolean().notNull().default(false),
15
- default: t.boolean().notNull().default(false),
16
- enabled: t.boolean().notNull().default(true),
17
- createdAt: t.timestamp().notNull().defaultNow(),
18
- updatedAt: t.timestamp().notNull().$onUpdate(()=>new Date()),
19
- time24: t.boolean().notNull().default(false)
20
- }), (t)=>[
21
- index("core_languages_code_idx").on(t.code),
22
- index("core_languages_name_idx").on(t.name)
23
- ]).enableRLS();
24
- export const core_languages_words = pgTable("core_languages_words", (t)=>({
25
- id: t.serial().primaryKey(),
26
- languageCode: t.varchar().notNull().references(()=>core_languages.code, {
27
- onDelete: "cascade"
28
- }),
29
- pluginCode: t.varchar({
30
- length: 50
31
- }).notNull(),
32
- itemId: t.integer().notNull(),
33
- value: t.text().notNull(),
34
- tableName: t.varchar({
35
- length: 255
36
- }).notNull(),
37
- variable: t.varchar({
38
- length: 255
39
- }).notNull()
40
- }), (t)=>[
41
- index("core_languages_words_lang_code_idx").on(t.languageCode)
42
- ]).enableRLS();
43
- export const core_languages_words_relations = relations(core_languages_words, ({ one })=>({
44
- language: one(core_languages, {
45
- fields: [
46
- core_languages_words.languageCode
47
- ],
48
- references: [
49
- core_languages.code
50
- ]
51
- })
52
- }));
1
+ import{relations}from"drizzle-orm";import{index,pgTable}from"drizzle-orm/pg-core";export const core_languages=pgTable("core_languages",t=>({id:t.serial().primaryKey(),code:t.varchar({length:32}).notNull().unique(),name:t.varchar({length:255}).notNull(),timezone:t.varchar({length:255}).notNull().default("UTC"),protected:t.boolean().notNull().default(false),default:t.boolean().notNull().default(false),enabled:t.boolean().notNull().default(true),createdAt:t.timestamp().notNull().defaultNow(),updatedAt:t.timestamp().notNull().$onUpdate(()=>new Date),time24:t.boolean().notNull().default(false)}),t=>[index("core_languages_code_idx").on(t.code),index("core_languages_name_idx").on(t.name)]).enableRLS();export const core_languages_words=pgTable("core_languages_words",t=>({id:t.serial().primaryKey(),languageCode:t.varchar().notNull().references(()=>core_languages.code,{onDelete:"cascade"}),pluginCode:t.varchar({length:50}).notNull(),itemId:t.integer().notNull(),value:t.text().notNull(),tableName:t.varchar({length:255}).notNull(),variable:t.varchar({length:255}).notNull()}),t=>[index("core_languages_words_lang_code_idx").on(t.languageCode)]).enableRLS();export const core_languages_words_relations=relations(core_languages_words,({one})=>({language:one(core_languages,{fields:[core_languages_words.languageCode],references:[core_languages.code]})}));
@@ -1,34 +1 @@
1
- import { pgTable } from "drizzle-orm/pg-core";
2
- import { core_users } from "./users.js";
3
- export const core_logs = pgTable("core_logs", (t)=>({
4
- id: t.serial().primaryKey(),
5
- pluginId: t.varchar({
6
- length: 255
7
- }).notNull(),
8
- type: t.varchar({
9
- enum: [
10
- "warn",
11
- "error",
12
- "debug"
13
- ],
14
- length: 10
15
- }).notNull(),
16
- content: t.text().notNull(),
17
- createdAt: t.timestamp().notNull().defaultNow(),
18
- ipAddress: t.varchar({
19
- length: 45
20
- }).notNull(),
21
- method: t.varchar({
22
- length: 10
23
- }).notNull().default("GET"),
24
- path: t.text().notNull().default("localhost"),
25
- userAgent: t.text(),
26
- statusCode: t.integer().notNull().default(500),
27
- userId: t.bigint({
28
- mode: "number"
29
- }).references(()=>core_users.id, {
30
- onDelete: "set null",
31
- onUpdate: "cascade"
32
- }),
33
- test123: t.boolean().notNull().default(false)
34
- })).enableRLS();
1
+ import{pgTable}from"drizzle-orm/pg-core";import{core_users}from"./users.js";export const core_logs=pgTable("core_logs",t=>({id:t.serial().primaryKey(),pluginId:t.varchar({length:255}).notNull(),type:t.varchar({enum:["warn","error","debug"],length:10}).notNull(),content:t.text().notNull(),createdAt:t.timestamp().notNull().defaultNow(),ipAddress:t.varchar({length:45}).notNull(),method:t.varchar({length:10}).notNull().default("GET"),path:t.text().notNull().default("localhost"),userAgent:t.text(),statusCode:t.integer().notNull().default(500),userId:t.bigint({mode:"number"}).references(()=>core_users.id,{onDelete:"set null",onUpdate:"cascade"}),test123:t.boolean().notNull().default(false)})).enableRLS();
@@ -1,37 +1 @@
1
- import { relations } from "drizzle-orm";
2
- import { index, pgTable } from "drizzle-orm/pg-core";
3
- import { core_roles } from "./roles.js";
4
- import { core_users } from "./users.js";
5
- export const core_moderators_permissions = pgTable("core_moderators_permissions", (t)=>({
6
- id: t.serial().primaryKey(),
7
- roleId: t.integer().references(()=>core_roles.id, {
8
- onDelete: "cascade"
9
- }),
10
- userId: t.integer().references(()=>core_users.id, {
11
- onDelete: "cascade"
12
- }),
13
- createdAt: t.timestamp().notNull().defaultNow(),
14
- updatedAt: t.timestamp().notNull().$onUpdate(()=>new Date()),
15
- protected: t.boolean().notNull().default(false)
16
- }), (t)=>[
17
- index("core_moderators_permissions_role_id_idx").on(t.roleId),
18
- index("core_moderators_permissions_user_id_idx").on(t.userId)
19
- ]).enableRLS();
20
- export const core_moderators_permissions_relations = relations(core_moderators_permissions, ({ one })=>({
21
- group: one(core_roles, {
22
- fields: [
23
- core_moderators_permissions.roleId
24
- ],
25
- references: [
26
- core_roles.id
27
- ]
28
- }),
29
- user: one(core_users, {
30
- fields: [
31
- core_moderators_permissions.userId
32
- ],
33
- references: [
34
- core_users.id
35
- ]
36
- })
37
- }));
1
+ import{relations}from"drizzle-orm";import{index,pgTable}from"drizzle-orm/pg-core";import{core_roles}from"./roles.js";import{core_users}from"./users.js";export const core_moderators_permissions=pgTable("core_moderators_permissions",t=>({id:t.serial().primaryKey(),roleId:t.integer().references(()=>core_roles.id,{onDelete:"cascade"}),userId:t.integer().references(()=>core_users.id,{onDelete:"cascade"}),createdAt:t.timestamp().notNull().defaultNow(),updatedAt:t.timestamp().notNull().$onUpdate(()=>new Date),protected:t.boolean().notNull().default(false)}),t=>[index("core_moderators_permissions_role_id_idx").on(t.roleId),index("core_moderators_permissions_user_id_idx").on(t.userId)]).enableRLS();export const core_moderators_permissions_relations=relations(core_moderators_permissions,({one})=>({group:one(core_roles,{fields:[core_moderators_permissions.roleId],references:[core_roles.id]}),user:one(core_users,{fields:[core_moderators_permissions.userId],references:[core_users.id]})}));
@@ -1,13 +1 @@
1
- import { pgTable } from "drizzle-orm/pg-core";
2
- export const core_roles = pgTable("core_roles", (t)=>({
3
- id: t.serial().primaryKey(),
4
- createdAt: t.timestamp().notNull().defaultNow(),
5
- updatedAt: t.timestamp().notNull().$onUpdate(()=>new Date()),
6
- protected: t.boolean().notNull().default(false),
7
- default: t.boolean().notNull().default(false),
8
- root: t.boolean().notNull().default(false),
9
- guest: t.boolean().notNull().default(false),
10
- color: t.varchar({
11
- length: 19
12
- })
13
- })).enableRLS();
1
+ import{pgTable}from"drizzle-orm/pg-core";export const core_roles=pgTable("core_roles",t=>({id:t.serial().primaryKey(),createdAt:t.timestamp().notNull().defaultNow(),updatedAt:t.timestamp().notNull().$onUpdate(()=>new Date),protected:t.boolean().notNull().default(false),default:t.boolean().notNull().default(false),root:t.boolean().notNull().default(false),guest:t.boolean().notNull().default(false),color:t.varchar({length:19})})).enableRLS();
@@ -1,60 +1 @@
1
- import { relations } from "drizzle-orm";
2
- import { index, pgTable } from "drizzle-orm/pg-core";
3
- import { core_users } from "./users.js";
4
- export const core_sessions = pgTable("core_sessions", (t)=>({
5
- id: t.serial().primaryKey(),
6
- token: t.varchar({
7
- length: 255
8
- }).notNull().unique(),
9
- userId: t.integer().notNull().references(()=>core_users.id, {
10
- onDelete: "cascade"
11
- }),
12
- createdAt: t.timestamp().notNull().defaultNow(),
13
- expiresAt: t.timestamp().notNull(),
14
- deviceId: t.integer().references(()=>core_sessions_known_devices.id, {
15
- onDelete: "cascade"
16
- }).notNull()
17
- }), (t)=>[
18
- index("core_sessions_user_id_idx").on(t.userId)
19
- ]).enableRLS();
20
- export const core_sessions_relations = relations(core_sessions, ({ one })=>({
21
- user: one(core_users, {
22
- fields: [
23
- core_sessions.userId
24
- ],
25
- references: [
26
- core_users.id
27
- ]
28
- }),
29
- device: one(core_sessions_known_devices, {
30
- fields: [
31
- core_sessions.deviceId
32
- ],
33
- references: [
34
- core_sessions_known_devices.id
35
- ]
36
- })
37
- }));
38
- export const core_sessions_known_devices = pgTable("core_sessions_known_devices", (t)=>({
39
- id: t.serial().primaryKey(),
40
- publicId: t.varchar({
41
- length: 32
42
- }).notNull().unique(),
43
- ipAddress: t.varchar({
44
- length: 40
45
- }).notNull(),
46
- userAgent: t.text().notNull(),
47
- lastSeen: t.timestamp().notNull().defaultNow()
48
- }), (t)=>[
49
- index("core_sessions_known_devices_ip_address_idx").on(t.ipAddress)
50
- ]).enableRLS();
51
- export const core_sessions_known_devices_relations = relations(core_sessions_known_devices, ({ one })=>({
52
- session: one(core_sessions, {
53
- fields: [
54
- core_sessions_known_devices.id
55
- ],
56
- references: [
57
- core_sessions.deviceId
58
- ]
59
- })
60
- }));
1
+ import{relations}from"drizzle-orm";import{index,pgTable}from"drizzle-orm/pg-core";import{core_users}from"./users.js";export const core_sessions=pgTable("core_sessions",t=>({id:t.serial().primaryKey(),token:t.varchar({length:255}).notNull().unique(),userId:t.integer().notNull().references(()=>core_users.id,{onDelete:"cascade"}),createdAt:t.timestamp().notNull().defaultNow(),expiresAt:t.timestamp().notNull(),deviceId:t.integer().references(()=>core_sessions_known_devices.id,{onDelete:"cascade"}).notNull()}),t=>[index("core_sessions_user_id_idx").on(t.userId)]).enableRLS();export const core_sessions_relations=relations(core_sessions,({one})=>({user:one(core_users,{fields:[core_sessions.userId],references:[core_users.id]}),device:one(core_sessions_known_devices,{fields:[core_sessions.deviceId],references:[core_sessions_known_devices.id]})}));export const core_sessions_known_devices=pgTable("core_sessions_known_devices",t=>({id:t.serial().primaryKey(),publicId:t.varchar({length:32}).notNull().unique(),ipAddress:t.varchar({length:40}).notNull(),userAgent:t.text().notNull(),lastSeen:t.timestamp().notNull().defaultNow()}),t=>[index("core_sessions_known_devices_ip_address_idx").on(t.ipAddress)]).enableRLS();export const core_sessions_known_devices_relations=relations(core_sessions_known_devices,({one})=>({session:one(core_sessions,{fields:[core_sessions_known_devices.id],references:[core_sessions.deviceId]})}));